The viewer currently is programmed to convert zarr data to 8-bit intensity when it is fetched. This 8-bit format is used throughout the viewer for performance reasons. In XY mode for single slices, we can keep the slices in their native format for higher dynamic range and more faithful reproduction when viewing.
Solution
Not sure how easy or hard this is yet:
Let slices stay in their native data type. Load into textures and let the shader do the necessary LUTs and only go to 8-bit when drawing final pixels in fragment shader...
Use Case
The viewer currently is programmed to convert zarr data to 8-bit intensity when it is fetched. This 8-bit format is used throughout the viewer for performance reasons. In XY mode for single slices, we can keep the slices in their native format for higher dynamic range and more faithful reproduction when viewing.
Solution
Not sure how easy or hard this is yet: Let slices stay in their native data type. Load into textures and let the shader do the necessary LUTs and only go to 8-bit when drawing final pixels in fragment shader...