> > I am using a sample data file provided by openjpeg data folder named > p1_04.j2k. How is the data retrieved from opj_decode_tile_data() is being > stored in the buffer? To access pixel 0, is it just buffer[0] or is there > another way? > For some reason, my request for Tile (0,0) of length 128x128 returns an image > that looks masked. The image is mostly black and white with no depth of > shading (i.e. missing information). > This image also uses 12 bits-per-pixel which I do not see where GDAL > truncates the image data down to 8 bits-per-pixel. Does GDAL return the raw > 12 bits-per-pixel forcing the user to truncate the data properly for every > pixel or is it handled by GDAL (If so, where)?
Depending on the precision information given by the JPEG2000 metadata, the buffer will contain data of type 8 bit (GDT_Byte), 16 bits (GDT_Int16 or GDT_UInt16) or 32 bits (GDT_Int32 or GDT_UInt32). For 12 bits per pixels, the immediate upper type will be selected to store the data, thus GDT_Int16. There's at least one regression test for the OpenJpeg driver that testes 16 bit images. _______________________________________________ gdal-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/gdal-dev
