ngio 0.5.0__py3-none-any.whl → 0.5.0a2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ngio/__init__.py +2 -5
- ngio/common/__init__.py +6 -11
- ngio/common/_masking_roi.py +54 -34
- ngio/common/_pyramid.py +85 -309
- ngio/common/_roi.py +330 -258
- ngio/experimental/iterators/_feature.py +3 -3
- ngio/experimental/iterators/_rois_utils.py +11 -10
- ngio/hcs/_plate.py +60 -132
- ngio/images/_abstract_image.py +35 -539
- ngio/images/_create.py +287 -0
- ngio/images/_create_synt_container.py +42 -39
- ngio/images/_image.py +250 -516
- ngio/images/_label.py +172 -249
- ngio/images/_masked_image.py +2 -2
- ngio/images/_ome_zarr_container.py +241 -644
- ngio/io_pipes/_io_pipes.py +9 -9
- ngio/io_pipes/_io_pipes_masked.py +7 -7
- ngio/io_pipes/_io_pipes_roi.py +6 -6
- ngio/io_pipes/_io_pipes_types.py +3 -3
- ngio/io_pipes/_match_shape.py +8 -6
- ngio/io_pipes/_ops_slices_utils.py +5 -8
- ngio/ome_zarr_meta/__init__.py +18 -29
- ngio/ome_zarr_meta/_meta_handlers.py +708 -392
- ngio/ome_zarr_meta/ngio_specs/__init__.py +0 -4
- ngio/ome_zarr_meta/ngio_specs/_axes.py +51 -152
- ngio/ome_zarr_meta/ngio_specs/_dataset.py +22 -13
- ngio/ome_zarr_meta/ngio_specs/_ngio_hcs.py +91 -129
- ngio/ome_zarr_meta/ngio_specs/_ngio_image.py +68 -57
- ngio/ome_zarr_meta/v04/__init__.py +1 -5
- ngio/ome_zarr_meta/v04/{_v04_spec.py → _v04_spec_utils.py} +85 -54
- ngio/ome_zarr_meta/v05/__init__.py +1 -5
- ngio/ome_zarr_meta/v05/{_v05_spec.py → _v05_spec_utils.py} +87 -64
- ngio/resources/__init__.py +1 -1
- ngio/resources/resource_model.py +1 -1
- ngio/tables/_tables_container.py +11 -62
- ngio/tables/backends/_anndata.py +8 -58
- ngio/tables/backends/_anndata_utils.py +6 -1
- ngio/tables/backends/_csv.py +19 -3
- ngio/tables/backends/_json.py +13 -10
- ngio/tables/backends/_non_zarr_backends.py +196 -0
- ngio/tables/backends/_parquet.py +31 -3
- ngio/tables/v1/_roi_table.py +24 -41
- ngio/utils/__init__.py +12 -6
- ngio/utils/_datasets.py +0 -6
- ngio/utils/_logger.py +50 -0
- ngio/utils/_zarr_utils.py +58 -167
- {ngio-0.5.0.dist-info → ngio-0.5.0a2.dist-info}/METADATA +4 -11
- ngio-0.5.0a2.dist-info/RECORD +89 -0
- {ngio-0.5.0.dist-info → ngio-0.5.0a2.dist-info}/WHEEL +1 -1
- ngio/images/_create_utils.py +0 -406
- ngio/tables/backends/_py_arrow_backends.py +0 -222
- ngio-0.5.0.dist-info/RECORD +0 -88
- {ngio-0.5.0.dist-info → ngio-0.5.0a2.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from ngio import Roi
|
|
1
|
+
from ngio import Roi, RoiPixels
|
|
2
2
|
from ngio.images._abstract_image import AbstractImage
|
|
3
3
|
|
|
4
4
|
|
|
@@ -48,17 +48,18 @@ def grid(
|
|
|
48
48
|
for z in range(0, z_dim, stride_z):
|
|
49
49
|
for y in range(0, y_dim, stride_y):
|
|
50
50
|
for x in range(0, x_dim, stride_x):
|
|
51
|
-
roi =
|
|
51
|
+
roi = RoiPixels(
|
|
52
52
|
name=base_name,
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
53
|
+
x=x,
|
|
54
|
+
y=y,
|
|
55
|
+
z=z,
|
|
56
|
+
t=t,
|
|
57
|
+
x_length=size_x,
|
|
58
|
+
y_length=size_y,
|
|
59
|
+
z_length=size_z,
|
|
60
|
+
t_length=size_t,
|
|
60
61
|
)
|
|
61
|
-
new_rois.append(roi.
|
|
62
|
+
new_rois.append(roi.to_roi(pixel_size=ref_image.pixel_size))
|
|
62
63
|
|
|
63
64
|
return rois_product(rois, new_rois)
|
|
64
65
|
|
ngio/hcs/_plate.py
CHANGED
|
@@ -15,16 +15,15 @@ from ngio.images import (
|
|
|
15
15
|
list_image_tables_async,
|
|
16
16
|
)
|
|
17
17
|
from ngio.ome_zarr_meta import (
|
|
18
|
-
DefaultNgffVersion,
|
|
19
18
|
ImageInWellPath,
|
|
20
19
|
NgffVersions,
|
|
21
20
|
NgioPlateMeta,
|
|
22
21
|
NgioWellMeta,
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
find_plate_meta_handler,
|
|
23
|
+
find_well_meta_handler,
|
|
24
|
+
get_plate_meta_handler,
|
|
25
|
+
get_well_meta_handler,
|
|
25
26
|
path_in_well_validation,
|
|
26
|
-
update_ngio_plate_meta,
|
|
27
|
-
update_ngio_well_meta,
|
|
28
27
|
)
|
|
29
28
|
from ngio.tables import (
|
|
30
29
|
ConditionTable,
|
|
@@ -42,22 +41,17 @@ from ngio.tables import (
|
|
|
42
41
|
from ngio.utils import (
|
|
43
42
|
AccessModeLiteral,
|
|
44
43
|
NgioCache,
|
|
45
|
-
NgioError,
|
|
46
44
|
NgioValueError,
|
|
47
45
|
StoreOrGroup,
|
|
48
46
|
ZarrGroupHandler,
|
|
49
47
|
)
|
|
50
48
|
|
|
51
49
|
|
|
52
|
-
def
|
|
53
|
-
handler: ZarrGroupHandler, create_mode: bool = True
|
|
54
|
-
) -> TablesContainer | None:
|
|
50
|
+
def _default_table_container(handler: ZarrGroupHandler) -> TablesContainer | None:
|
|
55
51
|
"""Return a default table container."""
|
|
56
|
-
|
|
57
|
-
|
|
52
|
+
success, table_handler = handler.safe_derive_handler("tables")
|
|
53
|
+
if success and isinstance(table_handler, ZarrGroupHandler):
|
|
58
54
|
return TablesContainer(table_handler)
|
|
59
|
-
except NgioError:
|
|
60
|
-
return None
|
|
61
55
|
|
|
62
56
|
|
|
63
57
|
# Mock lock class that does nothing
|
|
@@ -83,7 +77,7 @@ class OmeZarrWell:
|
|
|
83
77
|
group_handler: The Zarr group handler that contains the Well.
|
|
84
78
|
"""
|
|
85
79
|
self._group_handler = group_handler
|
|
86
|
-
self._meta_handler =
|
|
80
|
+
self._meta_handler = find_well_meta_handler(group_handler)
|
|
87
81
|
|
|
88
82
|
def __repr__(self) -> str:
|
|
89
83
|
"""Return a string representation of the well."""
|
|
@@ -97,7 +91,7 @@ class OmeZarrWell:
|
|
|
97
91
|
@property
|
|
98
92
|
def meta(self):
|
|
99
93
|
"""Return the metadata."""
|
|
100
|
-
return self._meta_handler.
|
|
94
|
+
return self._meta_handler.meta
|
|
101
95
|
|
|
102
96
|
@property
|
|
103
97
|
def acquisition_ids(self) -> list[int]:
|
|
@@ -143,7 +137,7 @@ class OmeZarrWell:
|
|
|
143
137
|
Returns:
|
|
144
138
|
OmeZarrContainer: The image.
|
|
145
139
|
"""
|
|
146
|
-
handler = self._group_handler.
|
|
140
|
+
handler = self._group_handler.derive_handler(image_path)
|
|
147
141
|
return OmeZarrContainer(handler)
|
|
148
142
|
|
|
149
143
|
def _add_image(
|
|
@@ -165,7 +159,7 @@ class OmeZarrWell:
|
|
|
165
159
|
meta = self.meta.add_image(
|
|
166
160
|
path=image_path, acquisition=acquisition_id, strict=strict
|
|
167
161
|
)
|
|
168
|
-
self.meta_handler.
|
|
162
|
+
self.meta_handler.write_meta(meta)
|
|
169
163
|
self.meta_handler._group_handler.clean_cache()
|
|
170
164
|
|
|
171
165
|
return self._group_handler.get_group(image_path, create_mode=True)
|
|
@@ -244,7 +238,7 @@ class OmeZarrPlate:
|
|
|
244
238
|
table_container: The tables container that contains plate level tables.
|
|
245
239
|
"""
|
|
246
240
|
self._group_handler = group_handler
|
|
247
|
-
self._meta_handler =
|
|
241
|
+
self._meta_handler = find_plate_meta_handler(group_handler)
|
|
248
242
|
self._tables_container = table_container
|
|
249
243
|
self._wells_cache: NgioCache[OmeZarrWell] = NgioCache(
|
|
250
244
|
use_cache=self._group_handler.use_cache
|
|
@@ -265,7 +259,7 @@ class OmeZarrPlate:
|
|
|
265
259
|
@property
|
|
266
260
|
def meta(self):
|
|
267
261
|
"""Return the metadata."""
|
|
268
|
-
return self._meta_handler.
|
|
262
|
+
return self._meta_handler.meta
|
|
269
263
|
|
|
270
264
|
@property
|
|
271
265
|
def columns(self) -> list[str]:
|
|
@@ -383,7 +377,7 @@ class OmeZarrPlate:
|
|
|
383
377
|
if cached_well is not None:
|
|
384
378
|
return cached_well
|
|
385
379
|
|
|
386
|
-
group_handler = self._group_handler.
|
|
380
|
+
group_handler = self._group_handler.derive_handler(well_path)
|
|
387
381
|
self._wells_cache.set(well_path, OmeZarrWell(group_handler))
|
|
388
382
|
return OmeZarrWell(group_handler)
|
|
389
383
|
|
|
@@ -444,7 +438,7 @@ class OmeZarrPlate:
|
|
|
444
438
|
cached_image = self._images_cache.get(image_path)
|
|
445
439
|
if cached_image is not None:
|
|
446
440
|
return cached_image
|
|
447
|
-
img_group_handler = self._group_handler.
|
|
441
|
+
img_group_handler = self._group_handler.derive_handler(image_path)
|
|
448
442
|
image = OmeZarrContainer(img_group_handler)
|
|
449
443
|
self._images_cache.set(image_path, image)
|
|
450
444
|
return image
|
|
@@ -535,7 +529,7 @@ class OmeZarrPlate:
|
|
|
535
529
|
for image_paths in self.well_images_paths(
|
|
536
530
|
row=row, column=column, acquisition=acquisition
|
|
537
531
|
):
|
|
538
|
-
group_handler = self._group_handler.
|
|
532
|
+
group_handler = self._group_handler.derive_handler(image_paths)
|
|
539
533
|
images[image_paths] = OmeZarrContainer(group_handler)
|
|
540
534
|
return images
|
|
541
535
|
|
|
@@ -564,11 +558,11 @@ class OmeZarrPlate:
|
|
|
564
558
|
meta = meta.add_acquisition(
|
|
565
559
|
acquisition_id=acquisition_id, acquisition_name=acquisition_name
|
|
566
560
|
)
|
|
567
|
-
self.meta_handler.
|
|
561
|
+
self.meta_handler.write_meta(meta)
|
|
568
562
|
self.meta_handler._group_handler.clean_cache()
|
|
569
563
|
|
|
570
564
|
well_path = self.meta.get_well_path(row=row, column=column)
|
|
571
|
-
group_handler = self._group_handler.
|
|
565
|
+
group_handler = self._group_handler.derive_handler(well_path)
|
|
572
566
|
|
|
573
567
|
if atomic:
|
|
574
568
|
well_lock = group_handler.lock
|
|
@@ -583,19 +577,18 @@ class OmeZarrPlate:
|
|
|
583
577
|
well_meta = NgioWellMeta.default_init()
|
|
584
578
|
version = self.meta.plate.version
|
|
585
579
|
version = version if version is not None else "0.4"
|
|
586
|
-
|
|
587
|
-
meta_handler = WellMetaHandler(group_handler=group_handler)
|
|
580
|
+
meta_handler = get_well_meta_handler(group_handler, version=version)
|
|
588
581
|
else:
|
|
589
|
-
meta_handler =
|
|
590
|
-
well_meta = meta_handler.
|
|
582
|
+
meta_handler = find_well_meta_handler(group_handler)
|
|
583
|
+
well_meta = meta_handler.meta
|
|
591
584
|
|
|
592
|
-
group_handler = self._group_handler.
|
|
585
|
+
group_handler = self._group_handler.derive_handler(well_path)
|
|
593
586
|
|
|
594
587
|
if image_path is not None:
|
|
595
588
|
well_meta = well_meta.add_image(
|
|
596
589
|
path=image_path, acquisition=acquisition_id, strict=False
|
|
597
590
|
)
|
|
598
|
-
meta_handler.
|
|
591
|
+
meta_handler.write_meta(well_meta)
|
|
599
592
|
meta_handler._group_handler.clean_cache()
|
|
600
593
|
|
|
601
594
|
if image_path is not None:
|
|
@@ -672,7 +665,7 @@ class OmeZarrPlate:
|
|
|
672
665
|
) -> "OmeZarrPlate":
|
|
673
666
|
"""Add a column to an ome-zarr plate."""
|
|
674
667
|
meta, _ = self.meta.add_column(column)
|
|
675
|
-
self.meta_handler.
|
|
668
|
+
self.meta_handler.write_meta(meta)
|
|
676
669
|
self.meta_handler._group_handler.clean_cache()
|
|
677
670
|
return self
|
|
678
671
|
|
|
@@ -682,7 +675,7 @@ class OmeZarrPlate:
|
|
|
682
675
|
) -> "OmeZarrPlate":
|
|
683
676
|
"""Add a row to an ome-zarr plate."""
|
|
684
677
|
meta, _ = self.meta.add_row(row)
|
|
685
|
-
self.meta_handler.
|
|
678
|
+
self.meta_handler.write_meta(meta)
|
|
686
679
|
self.meta_handler._group_handler.clean_cache()
|
|
687
680
|
return self
|
|
688
681
|
|
|
@@ -702,7 +695,7 @@ class OmeZarrPlate:
|
|
|
702
695
|
meta = self.meta.add_acquisition(
|
|
703
696
|
acquisition_id=acquisition_id, acquisition_name=acquisition_name
|
|
704
697
|
)
|
|
705
|
-
self.meta_handler.
|
|
698
|
+
self.meta_handler.write_meta(meta)
|
|
706
699
|
self.meta_handler._group_handler.clean_cache()
|
|
707
700
|
return self
|
|
708
701
|
|
|
@@ -721,7 +714,7 @@ class OmeZarrPlate:
|
|
|
721
714
|
with plate_lock:
|
|
722
715
|
meta = self.meta
|
|
723
716
|
meta = meta.remove_well(row, column)
|
|
724
|
-
self.meta_handler.
|
|
717
|
+
self.meta_handler.write_meta(meta)
|
|
725
718
|
self.meta_handler._group_handler.clean_cache()
|
|
726
719
|
|
|
727
720
|
def _remove_image(
|
|
@@ -742,7 +735,7 @@ class OmeZarrPlate:
|
|
|
742
735
|
with well_lock:
|
|
743
736
|
well_meta = well.meta
|
|
744
737
|
well_meta = well_meta.remove_image(path=image_path)
|
|
745
|
-
well.meta_handler.
|
|
738
|
+
well.meta_handler.write_meta(well_meta)
|
|
746
739
|
well.meta_handler._group_handler.clean_cache()
|
|
747
740
|
if len(well_meta.paths()) == 0:
|
|
748
741
|
self._remove_well(row, column, atomic=atomic)
|
|
@@ -779,8 +772,7 @@ class OmeZarrPlate:
|
|
|
779
772
|
self,
|
|
780
773
|
store: StoreOrGroup,
|
|
781
774
|
plate_name: str | None = None,
|
|
782
|
-
version: NgffVersions
|
|
783
|
-
ngff_version: NgffVersions = DefaultNgffVersion,
|
|
775
|
+
version: NgffVersions = "0.4",
|
|
784
776
|
keep_acquisitions: bool = False,
|
|
785
777
|
cache: bool = False,
|
|
786
778
|
overwrite: bool = False,
|
|
@@ -790,8 +782,7 @@ class OmeZarrPlate:
|
|
|
790
782
|
Args:
|
|
791
783
|
store (StoreOrGroup): The Zarr store or group that stores the plate.
|
|
792
784
|
plate_name (str | None): The name of the new plate.
|
|
793
|
-
version (NgffVersion
|
|
794
|
-
ngff_version (NgffVersion): The NGFF version to use for the new plate.
|
|
785
|
+
version (NgffVersion): The version of the new plate.
|
|
795
786
|
keep_acquisitions (bool): Whether to keep the acquisitions in the new plate.
|
|
796
787
|
cache (bool): Whether to use a cache for the zarr group metadata.
|
|
797
788
|
overwrite (bool): Whether to overwrite the existing plate.
|
|
@@ -800,21 +791,19 @@ class OmeZarrPlate:
|
|
|
800
791
|
ome_zarr_plate=self,
|
|
801
792
|
store=store,
|
|
802
793
|
plate_name=plate_name,
|
|
803
|
-
ngff_version=ngff_version,
|
|
804
794
|
version=version,
|
|
805
795
|
keep_acquisitions=keep_acquisitions,
|
|
806
796
|
cache=cache,
|
|
807
797
|
overwrite=overwrite,
|
|
808
798
|
)
|
|
809
799
|
|
|
810
|
-
def _get_tables_container(self
|
|
800
|
+
def _get_tables_container(self) -> TablesContainer | None:
|
|
811
801
|
"""Return the tables container."""
|
|
812
|
-
if self._tables_container is
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
self._tables_container = _tables_container
|
|
802
|
+
if self._tables_container is None:
|
|
803
|
+
_tables_container = _default_table_container(self._group_handler)
|
|
804
|
+
if _tables_container is None:
|
|
805
|
+
return None
|
|
806
|
+
self._tables_container = _tables_container
|
|
818
807
|
return self._tables_container
|
|
819
808
|
|
|
820
809
|
@property
|
|
@@ -829,20 +818,17 @@ class OmeZarrPlate:
|
|
|
829
818
|
|
|
830
819
|
def list_tables(self, filter_types: TypedTable | str | None = None) -> list[str]:
|
|
831
820
|
"""List all tables in the image."""
|
|
832
|
-
_tables_container = self._get_tables_container(create_mode=False)
|
|
833
|
-
if _tables_container is None:
|
|
834
|
-
return []
|
|
835
821
|
return self.tables_container.list(filter_types=filter_types)
|
|
836
822
|
|
|
837
823
|
def list_roi_tables(self) -> list[str]:
|
|
838
824
|
"""List all ROI tables in the image."""
|
|
839
|
-
roi = self.tables_container.list(
|
|
840
|
-
filter_types="roi_table",
|
|
841
|
-
)
|
|
842
825
|
masking_roi = self.tables_container.list(
|
|
843
826
|
filter_types="masking_roi_table",
|
|
844
827
|
)
|
|
845
|
-
|
|
828
|
+
roi = self.tables_container.list(
|
|
829
|
+
filter_types="roi_table",
|
|
830
|
+
)
|
|
831
|
+
return masking_roi + roi
|
|
846
832
|
|
|
847
833
|
def get_roi_table(self, name: str) -> RoiTable:
|
|
848
834
|
"""Get a ROI table from the image.
|
|
@@ -919,8 +905,8 @@ class OmeZarrPlate:
|
|
|
919
905
|
"""
|
|
920
906
|
if check_type is not None:
|
|
921
907
|
warnings.warn(
|
|
922
|
-
"The 'check_type' argument is deprecated and will be removed in "
|
|
923
|
-
"ngio=0.
|
|
908
|
+
"The 'check_type' argument is deprecated, and will be removed in "
|
|
909
|
+
"ngio=0.3. Use 'get_table_as' instead or one of the "
|
|
924
910
|
"type specific get_*table() methods.",
|
|
925
911
|
DeprecationWarning,
|
|
926
912
|
stacklevel=2,
|
|
@@ -959,25 +945,6 @@ class OmeZarrPlate:
|
|
|
959
945
|
name=name, table=table, backend=backend, overwrite=overwrite
|
|
960
946
|
)
|
|
961
947
|
|
|
962
|
-
def delete_table(self, name: str, missing_ok: bool = False) -> None:
|
|
963
|
-
"""Delete a table from the group.
|
|
964
|
-
|
|
965
|
-
Args:
|
|
966
|
-
name (str): The name of the table to delete.
|
|
967
|
-
missing_ok (bool): If True, do not raise an error if the table does not
|
|
968
|
-
exist.
|
|
969
|
-
|
|
970
|
-
"""
|
|
971
|
-
table_container = self._get_tables_container(create_mode=False)
|
|
972
|
-
if table_container is None and missing_ok:
|
|
973
|
-
return
|
|
974
|
-
if table_container is None:
|
|
975
|
-
raise NgioValueError(
|
|
976
|
-
f"No tables found in the image, cannot delete {name}. "
|
|
977
|
-
"Set missing_ok=True to ignore this error."
|
|
978
|
-
)
|
|
979
|
-
table_container.delete(name=name, missing_ok=missing_ok)
|
|
980
|
-
|
|
981
948
|
def list_image_tables(
|
|
982
949
|
self,
|
|
983
950
|
acquisition: int | None = None,
|
|
@@ -1180,24 +1147,14 @@ def open_ome_zarr_plate(
|
|
|
1180
1147
|
def _create_empty_plate_from_meta(
|
|
1181
1148
|
store: StoreOrGroup,
|
|
1182
1149
|
meta: NgioPlateMeta,
|
|
1150
|
+
version: NgffVersions = "0.4",
|
|
1183
1151
|
overwrite: bool = False,
|
|
1184
1152
|
) -> ZarrGroupHandler:
|
|
1185
|
-
"""Create an empty OME-Zarr plate from metadata.
|
|
1186
|
-
|
|
1187
|
-
Args:
|
|
1188
|
-
store: The Zarr store or group to create the plate in.
|
|
1189
|
-
meta: The plate metadata to use.
|
|
1190
|
-
overwrite: Whether to overwrite an existing plate.
|
|
1191
|
-
|
|
1192
|
-
Returns:
|
|
1193
|
-
The ZarrGroupHandler for the created plate.
|
|
1194
|
-
"""
|
|
1153
|
+
"""Create an empty OME-Zarr plate from metadata."""
|
|
1195
1154
|
mode = "w" if overwrite else "w-"
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
|
|
1199
|
-
)
|
|
1200
|
-
update_ngio_plate_meta(group_handler, meta)
|
|
1155
|
+
group_handler = ZarrGroupHandler(store=store, cache=True, mode=mode)
|
|
1156
|
+
meta_handler = get_plate_meta_handler(group_handler, version=version)
|
|
1157
|
+
meta_handler.write_meta(meta)
|
|
1201
1158
|
return group_handler
|
|
1202
1159
|
|
|
1203
1160
|
|
|
@@ -1205,8 +1162,7 @@ def create_empty_plate(
|
|
|
1205
1162
|
store: StoreOrGroup,
|
|
1206
1163
|
name: str,
|
|
1207
1164
|
images: list[ImageInWellPath] | None = None,
|
|
1208
|
-
version: NgffVersions
|
|
1209
|
-
ngff_version: NgffVersions = DefaultNgffVersion,
|
|
1165
|
+
version: NgffVersions = "0.4",
|
|
1210
1166
|
cache: bool = False,
|
|
1211
1167
|
overwrite: bool = False,
|
|
1212
1168
|
) -> OmeZarrPlate:
|
|
@@ -1217,26 +1173,18 @@ def create_empty_plate(
|
|
|
1217
1173
|
name (str): The name of the plate.
|
|
1218
1174
|
images (list[ImageInWellPath] | None): A list of images to add to the plate.
|
|
1219
1175
|
If None, no images are added. Defaults to None.
|
|
1220
|
-
version (NgffVersion
|
|
1221
|
-
ngff_version (NgffVersion): The NGFF version to use for the new plate.
|
|
1176
|
+
version (NgffVersion): The version of the new plate.
|
|
1222
1177
|
cache (bool): Whether to use a cache for the zarr group metadata.
|
|
1223
1178
|
overwrite (bool): Whether to overwrite the existing plate.
|
|
1224
1179
|
"""
|
|
1225
|
-
if version is not None:
|
|
1226
|
-
warnings.warn(
|
|
1227
|
-
"The 'version' argument is deprecated and will be removed in ngio=0.6. "
|
|
1228
|
-
"Please use 'ngff_version' instead.",
|
|
1229
|
-
DeprecationWarning,
|
|
1230
|
-
stacklevel=2,
|
|
1231
|
-
)
|
|
1232
|
-
ngff_version = version
|
|
1233
1180
|
plate_meta = NgioPlateMeta.default_init(
|
|
1234
1181
|
name=name,
|
|
1235
|
-
|
|
1182
|
+
version=version,
|
|
1236
1183
|
)
|
|
1237
1184
|
group_handler = _create_empty_plate_from_meta(
|
|
1238
1185
|
store=store,
|
|
1239
1186
|
meta=plate_meta,
|
|
1187
|
+
version=version,
|
|
1240
1188
|
overwrite=overwrite,
|
|
1241
1189
|
)
|
|
1242
1190
|
|
|
@@ -1261,8 +1209,7 @@ def derive_ome_zarr_plate(
|
|
|
1261
1209
|
ome_zarr_plate: OmeZarrPlate,
|
|
1262
1210
|
store: StoreOrGroup,
|
|
1263
1211
|
plate_name: str | None = None,
|
|
1264
|
-
version: NgffVersions
|
|
1265
|
-
ngff_version: NgffVersions = DefaultNgffVersion,
|
|
1212
|
+
version: NgffVersions = "0.4",
|
|
1266
1213
|
keep_acquisitions: bool = False,
|
|
1267
1214
|
cache: bool = False,
|
|
1268
1215
|
overwrite: bool = False,
|
|
@@ -1273,33 +1220,24 @@ def derive_ome_zarr_plate(
|
|
|
1273
1220
|
ome_zarr_plate (OmeZarrPlate): The existing OME-Zarr plate.
|
|
1274
1221
|
store (StoreOrGroup): The Zarr store or group that stores the plate.
|
|
1275
1222
|
plate_name (str | None): The name of the new plate.
|
|
1276
|
-
version (NgffVersion
|
|
1277
|
-
ngff_version (NgffVersion): The NGFF version to use for the new plate.
|
|
1223
|
+
version (NgffVersion): The version of the new plate.
|
|
1278
1224
|
keep_acquisitions (bool): Whether to keep the acquisitions in the new plate.
|
|
1279
1225
|
cache (bool): Whether to use a cache for the zarr group metadata.
|
|
1280
1226
|
overwrite (bool): Whether to overwrite the existing plate.
|
|
1281
1227
|
"""
|
|
1282
|
-
if version is not None:
|
|
1283
|
-
warnings.warn(
|
|
1284
|
-
"The 'version' argument is deprecated and will be removed in ngio=0.6. "
|
|
1285
|
-
"Please use 'ngff_version' instead.",
|
|
1286
|
-
DeprecationWarning,
|
|
1287
|
-
stacklevel=2,
|
|
1288
|
-
)
|
|
1289
|
-
ngff_version = version
|
|
1290
|
-
|
|
1291
1228
|
if plate_name is None:
|
|
1292
1229
|
plate_name = ome_zarr_plate.meta.plate.name
|
|
1293
1230
|
|
|
1294
1231
|
new_meta = ome_zarr_plate.meta.derive(
|
|
1295
1232
|
name=plate_name,
|
|
1296
|
-
|
|
1233
|
+
version=version,
|
|
1297
1234
|
keep_acquisitions=keep_acquisitions,
|
|
1298
1235
|
)
|
|
1299
1236
|
_ = _create_empty_plate_from_meta(
|
|
1300
1237
|
store=store,
|
|
1301
1238
|
meta=new_meta,
|
|
1302
1239
|
overwrite=overwrite,
|
|
1240
|
+
version=version,
|
|
1303
1241
|
)
|
|
1304
1242
|
return open_ome_zarr_plate(
|
|
1305
1243
|
store=store,
|
|
@@ -1330,8 +1268,7 @@ def open_ome_zarr_well(
|
|
|
1330
1268
|
|
|
1331
1269
|
def create_empty_well(
|
|
1332
1270
|
store: StoreOrGroup,
|
|
1333
|
-
version: NgffVersions
|
|
1334
|
-
ngff_version: NgffVersions = DefaultNgffVersion,
|
|
1271
|
+
version: NgffVersions = "0.4",
|
|
1335
1272
|
cache: bool = False,
|
|
1336
1273
|
overwrite: bool = False,
|
|
1337
1274
|
) -> OmeZarrWell:
|
|
@@ -1339,25 +1276,16 @@ def create_empty_well(
|
|
|
1339
1276
|
|
|
1340
1277
|
Args:
|
|
1341
1278
|
store (StoreOrGroup): The Zarr store or group that stores the well.
|
|
1342
|
-
version (NgffVersion
|
|
1343
|
-
ngff_version (NgffVersion): The version of the new well.
|
|
1279
|
+
version (NgffVersion): The version of the new well.
|
|
1344
1280
|
cache (bool): Whether to use a cache for the zarr group metadata.
|
|
1345
1281
|
overwrite (bool): Whether to overwrite the existing well.
|
|
1346
1282
|
"""
|
|
1347
|
-
if version is not None:
|
|
1348
|
-
warnings.warn(
|
|
1349
|
-
"The 'version' argument is deprecated and will be removed in ngio=0.6. "
|
|
1350
|
-
"Please use 'ngff_version' instead.",
|
|
1351
|
-
DeprecationWarning,
|
|
1352
|
-
stacklevel=2,
|
|
1353
|
-
)
|
|
1354
|
-
ngff_version = version
|
|
1355
1283
|
group_handler = ZarrGroupHandler(
|
|
1356
1284
|
store=store, cache=True, mode="w" if overwrite else "w-"
|
|
1357
1285
|
)
|
|
1358
|
-
|
|
1359
|
-
|
|
1360
|
-
)
|
|
1286
|
+
meta_handler = get_well_meta_handler(group_handler, version=version)
|
|
1287
|
+
meta = NgioWellMeta.default_init()
|
|
1288
|
+
meta_handler.write_meta(meta)
|
|
1361
1289
|
|
|
1362
1290
|
return open_ome_zarr_well(
|
|
1363
1291
|
store=store,
|