dive
dive copied to clipboard
[BUG] Large Tif Issue
Describe the bug This was another issue in Matt's email which was attributed to a dataset containing a single large .TIFF image. On load it won't display. I will be updating this issue as I figure out more about what went wrong and what possible remedies there are.
Update: ffmpeg conversion gives back some key info
[tiff @ 0x564a20eaac60] [IMGUTILS @ 0x7fb55df99470] Picture size 35180x9932 is invalid
May have something to do with the fact that this image is quite large and can't be converted to a PNG of that size.
To Reproduce Steps to reproduce the behavior:
- Load a very large Tiff into the system
- Wait for the conversion to be complete. It doesn't properly error out on large formats if a png wasn't created
Related data
Expected behavior I think the only way this will work is if we either segment out large images into different frames or if we have some sort of tileserver for serving large images (much like the girder large image plugin) but then we have to support that.
I downloaded the source dataset and even other conversion tools outside of ffmpeg were having issues displaying any data from it. Imagemagick was able to chop it up into manageable pieces but they were all just black/empty images.
We need to fix the image conversion and video conversion to not provide the annotator tag if the data isn't properly converted because of some other issue which doesn't cause the program to exit with an error code.
A tileserver seems like it would be the classical way to solve this issue. How would that affect the rest of the annotator functionality? i.e., would GeoJS using a tileserver be transparent enough not to affect the implementation of that functionality?
Another way to solve this issue would be to detect the problem and display a suitable error message; in that case, we should file a new feature request issue around supporting those files instead of erroring out.
@BryonLewis, thoughts?
We have talked about implementing a tileserver for other data as well. It can be done within girder3 fairly easily using the large_image plugin. With the annotator referencing the large_image endpoints for tileserver images instead of the traditional item/download endpoints for the images/video. The discussion then moves to if we should support that in the desktop version and how that is done.
This was just one instance of a user trying to upload a tif image that was not a flat tif image. I think supporting large_image or a tileserver is a new feature and should be filed as an feature issue.
I think the resolution of this is to error out on a tif that happens to be more than one image (contains the multiple sub images for use in something like a tileserver)