diff --git a/src/aliby/io/image.py b/src/aliby/io/image.py index fca64f5dfa3e9cb16100b73e43d17d724f9885c2..816c9e13d6de8f525f5bd3ca58ef1cc1d48ab426 100644 --- a/src/aliby/io/image.py +++ b/src/aliby/io/image.py @@ -224,16 +224,28 @@ class ImageDir(BaseLocalImage): # If extra channels, pick the first stack of the last dimensions - pixels = img while len(img.shape) > 3: img = img[..., 0] + if self._meta: self._meta["size_x"], self._meta["size_y"] = img.shape[-2:] - img = da.reshape(img, (*self._dim_values(), *img.shape[1:])) + # img = da.reshape(img, (*self._meta, *img.shape[1:])) + img = da.reshape(img, self._meta.values()) pixels = self.format_data(img) return pixels + @property + def name(self): + return self.path.stem + + @property + def dimorder(self): + # Assumes only dimensions start with "size" + return [ + k.split("_")[-1] for k in self._meta.keys() if k.startswith("size") + ] + class Image(BridgeOmero): """