biigle/maia

Sliding window processing of large images

Opened this issue · 1 comments

mzur commented

MAIA disallows processing of images that are too large to fit into GPU memory. We could implement processing in a sliding window fashion (on smaller image crops, e.g. 4096x4096) if the image is too large. This could allow processing of tiled images or otherwise too large images and make #91 unnecessary.

Ideally, the sliding window should have an overlap so objects are not cut in half and missed. How to merge the detections in the overlap regions? Maybe a greedy method where any two detections with more than 25% (50%?) overlap are merged. In case of many overlapping annotations, those with the largest overlap are preferred.

This could be implemented entirely in Python, using pyvips to cut the images.

mzur commented

Could novelty detection be performed in a sliding window fashion, too? Otherwise, disable novelty detection if the volume contains too large images (see #91).