Let's go with this for now, and continue integrating the prototype implementation, however, I think we should change the return type to be an interface that can be implemented in pure Python. Internally we can use itk.ImageFileReader for some implementations. Most likely an OME-Zarr based interface. This way, alternative implementations can easily be created. And we have something that can be used in Pyodide.
We should define a virtual Python interface such as StreamableImageSource that defines operations to get the image 1) with only metadata and/or 2) with a streamed voxel subregion.
@thewtex wrote in https://github.com/InsightSoftwareConsortium/itk-dreg/pull/2/files#r1354873358 :
We should define a virtual Python interface such as
StreamableImageSource
that defines operations to get the image 1) with only metadata and/or 2) with a streamed voxel subregion.