ome / bioformats

Bio-Formats is a Java library for reading and writing data in life sciences image file formats. It is developed by the Open Microscopy Environment. Bio-Formats is released under the GNU General Public License (GPL); commercial licenses are available from Glencoe Software.
https://www.openmicroscopy.org/bio-formats
GNU General Public License v2.0
381 stars 241 forks source link

CZI: Blank planes in multi scene #3785

Open dgault opened 2 years ago

dgault commented 2 years ago

This issue was raised on the forum thread https://forum.image.sc/t/czi-multiscene-file-the-second-scene-is-black/63782 A sample file has been provided which reproduces the issue with Bio-Formats 6.9.0

The provided sample file has 2 scenes each with 2 resolutions, so 4 series (when flattened) in Bio-Formats. Both resolutions of the second scene produce blank planes with all pixels being zero.

So far from my initial investigation I believe this is due to the row and col values for the second scene. At line https://github.com/ome/bioformats/blob/develop/components/formats-gpl/src/loci/formats/in/ZeissCZIReader.java#L390 the tiles are initialised with the below values for the top level resolution (image size is 512x973 , so 2 tiles): Tile 1: x=1751, y=169, w=512, h=512 Tile 2: x=1751, y=630, w=512, h=512

This then means that the conditional statement at https://github.com/ome/bioformats/blob/develop/components/formats-gpl/src/loci/formats/in/ZeissCZIReader.java#L407 fails.

Modifying the X and Y values of the plane manually to deduct the start position of x:1751,y:169 seems to produce valid and correct planes. I have not yet have a fix for doing so programatically.

imagesc-bot commented 2 years ago

This issue has been mentioned on Image.sc Forum. There might be relevant details there:

https://forum.image.sc/t/czi-multiscene-file-the-second-scene-is-black/63782/7