diff --git a/src/aliby/io/image.py b/src/aliby/io/image.py index d1b0f926bd5ace907dd6142450d4fdb2da62020c..cff8997744c02d8559e19c3926ea12852ee8cf30 100644 --- a/src/aliby/io/image.py +++ b/src/aliby/io/image.py @@ -235,7 +235,7 @@ class ImageDir(BaseLocalImage): super().__init__(path) self.image_id = str(self.path.stem) - self._meta = dir_to_meta(self.path) + self._meta = dir_to_meta(self.path, **kwargs) def get_data_lazy(self) -> da.Array: """Return 5D dask array. For lazy-loading local multidimensional tiff files""" @@ -290,12 +290,14 @@ class ImageZarr(BaseLocalImage): def __init__(self, path: t.Union[str, PosixPath], **kwargs): super().__init__(path) self.set_meta() + try: + self._img = zarr.open(self.path) + self.add_size_to_meta() + except Exception as e: + print(f"Could not add size info to metadata: {e}") def get_data_lazy(self) -> da.Array: """Return 5D dask array. For lazy-loading local multidimensional zarr files""" - self._img = zarr.open(self.path) - self.add_size_to_meta() - return self._img def add_size_to_meta(self): @@ -312,10 +314,12 @@ class ImageZarr(BaseLocalImage): @property def dimorder(self): + # FIXME hardcoded order based on zarr compression/cloning script + return "TCZYX" # Assumes only dimensions start with "size" - return [ - k.split("_")[-1] for k in self._meta.keys() if k.startswith("size") - ] + # return [ + # k.split("_")[-1] for k in self._meta.keys() if k.startswith("size") + # ] class ImageDummy(BaseLocalImage):