Closed chris-allan closed 2 years ago
@kkoz is going to prototype these changes to make sure there are no obvious gotchas or bad assumptions that I have made. This is especially important as updates to at least three repositories need to be made in order to test the fundamental change.
This issue has been mentioned on Image.sc Forum. There might be relevant details there:
https://forum.image.sc/t/loading-and-visualization-of-ome-zarr-into-omero/67389/2
Since ome/openmicroscopy#3368 floating point data bypasses pixels pyramid requirements checks. It would be nice to allow this behaviour to be configurable on a server wide basis. What follows is a series of changes that could be performed in order to enable this:
omero-model
(src/main/resources/omero-model.properties
)omero.pixeldata.max_plane_float_override
defaulting totrue
omero-romio
add an accessor for the property tosrc/main/java/ome/io/nio/TileSizes.java
omero-romio
add property storage, defaulting totrue
, as well as a new constructor tosrc/main/java/ome/io/nio/ConfiguredTileSizes.java
omero-server
update the Spring XML configuration for theconfiguredTileSizes
bean to use the new constructor and populate the providedomero.pixeldata.max_plane_float_override
propertyomero-common
allow for the property to be visible to all clients viaIConfig
(src/main/resources/ome/config.xml
)omero-romio
add a conditional surrounding the floating point pixel type check inPixelsService.requiredPixelsPyramid()
utilizing the aforementioned propertyomero-romio
do not allow floating point pyramid creation to take place inPixelsService.makePyramid()
(7) will require a little bit of testing to ensure that the user experience is not substantially affected if
omero.pixeldata.max_plane_float_override=false
andPixelData-0
is turned on.NOTE: Just for the record, all OMERO Plus installations have
PixelData-0
turned off by default and we recommend that our customers keep it off.