ngio 0.3.1__tar.gz → 0.3.3__tar.gz
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-0.3.3/.github/pull_request_template.md +3 -0
- {ngio-0.3.1 → ngio-0.3.3}/.github/workflows/build_docs.yml +18 -13
- {ngio-0.3.1 → ngio-0.3.3}/.github/workflows/ci.yml +9 -32
- ngio-0.3.3/CHANGELOG.md +18 -0
- {ngio-0.3.1 → ngio-0.3.3}/PKG-INFO +1 -1
- {ngio-0.3.1 → ngio-0.3.3}/docs/getting_started/0_quickstart.md +1 -1
- {ngio-0.3.1 → ngio-0.3.3}/docs/getting_started/1_ome_zarr_containers.md +1 -1
- {ngio-0.3.1 → ngio-0.3.3}/docs/getting_started/4_masked_images.md +1 -1
- {ngio-0.3.1 → ngio-0.3.3}/docs/getting_started/5_hcs.md +4 -2
- {ngio-0.3.1 → ngio-0.3.3}/docs/table_specs/table_types/roi_table.md +1 -1
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_roi.py +2 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/hcs/_plate.py +7 -6
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/images/_ome_zarr_container.py +3 -2
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/__init__.py +2 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/_abstract_table.py +2 -1
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/_tables_container.py +5 -4
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/__init__.py +2 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_abstract_backend.py +1 -1
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_table_backends.py +1 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/v1/_condition_table.py +1 -1
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/v1/_roi_table.py +12 -2
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/utils/__init__.py +7 -3
- ngio-0.3.3/src/ngio/utils/_datasets.py +154 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/common/test_roi.py +1 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/tables/test_masking_roi_table_v1.py +2 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/utils/test_download_datasets.py +6 -1
- ngio-0.3.1/.github/scripts/download_data.sh +0 -97
- ngio-0.3.1/CHANGELOG.md +0 -7
- ngio-0.3.1/src/ngio/utils/_datasets.py +0 -53
- {ngio-0.3.1 → ngio-0.3.3}/.copier-answers.yml +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/.gitattributes +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/.github/ISSUE_TEMPLATE.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/.github/TEST_FAIL_TEMPLATE.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/.github/dependabot.yml +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/.gitignore +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/.pre-commit-config.yaml +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/LICENSE +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/README.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/_typos.toml +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/api/common.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/api/hcs.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/api/images.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/api/ngio.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/api/tables.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/api/utils.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/changelog.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/code_of_conduct.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/contributing.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/getting_started/2_images.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/getting_started/3_tables.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/index.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/table_specs/backend.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/table_specs/overview.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/table_specs/table_types/condition_table.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/table_specs/table_types/custom_table.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/table_specs/table_types/feature_table.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/table_specs/table_types/generic_table.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/table_specs/table_types/masking_roi_table.md +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/tutorials/feature_extraction.ipynb +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/tutorials/hcs_processing.ipynb +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/tutorials/image_processing.ipynb +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/docs/tutorials/image_segmentation.ipynb +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/mkdocs.yml +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/pyproject.toml +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/__init__.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/__init__.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_array_pipe.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_axes_transforms.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_common_types.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_dimensions.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_masking_roi.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_pyramid.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_slicer.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_table_ops.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/common/_zoom.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/hcs/__init__.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/images/__init__.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/images/_abstract_image.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/images/_create.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/images/_image.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/images/_label.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/images/_masked_image.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/__init__.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/_meta_handlers.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/ngio_specs/__init__.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/ngio_specs/_axes.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/ngio_specs/_channels.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/ngio_specs/_dataset.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_hcs.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_image.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/ngio_specs/_pixel_size.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/v04/__init__.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/v04/_custom_models.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/ome_zarr_meta/v04/_v04_spec_utils.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_anndata.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_anndata_utils.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_csv.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_json.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_non_zarr_backends.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_parquet.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/backends/_utils.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/v1/__init__.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/v1/_feature_table.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/tables/v1/_generic_table.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/utils/_errors.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/utils/_fractal_fsspec_store.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/utils/_logger.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/src/ngio/utils/_zarr_utils.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/conftest.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_cyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_czyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_yx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/labels/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/labels/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zattrs +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zgroup +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/labels/label/0/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/images/test_image_zyx.zarr/labels/label/1/.zarray +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/meta/base_ome_zarr_image_meta.json +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/meta/base_ome_zarr_image_meta_wrong_axis_order.json +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/meta/base_ome_zarr_label_meta.json +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/meta/base_ome_zarr_well_meta.json +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/data/v04/meta/ome_zarr_well_path_normalization_meta.json +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/common/test_dimensions.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/common/test_pyramid.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/common/test_table_ops.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/hcs/test_plate.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/hcs/test_well.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/images/test_create.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/images/test_images.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/images/test_masked_images.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/images/test_omezarr_container.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/ome_zarr_meta/test_image_handler.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/ome_zarr_meta/test_unit_ngio_specs.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/ome_zarr_meta/test_unit_v04_utils.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/tables/test_backends.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/tables/test_backends_utils.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/tables/test_feature_table.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/tables/test_generic_table.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/tables/test_roi_table_v1.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/tables/test_table_group.py +0 -0
- {ngio-0.3.1 → ngio-0.3.3}/tests/unit/utils/test_zarr_utils.py +0 -0
|
@@ -4,28 +4,23 @@ on:
|
|
|
4
4
|
push:
|
|
5
5
|
branches:
|
|
6
6
|
- dev
|
|
7
|
+
- main
|
|
7
8
|
tags:
|
|
8
9
|
- "v*"
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
steps:
|
|
14
|
-
- uses: actions/checkout@v4
|
|
15
|
-
- name: Check and Download Artifacts
|
|
16
|
-
run: |
|
|
17
|
-
bash .github/scripts/download_data.sh
|
|
11
|
+
concurrency:
|
|
12
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
13
|
+
cancel-in-progress: true
|
|
18
14
|
|
|
15
|
+
jobs:
|
|
19
16
|
deploy:
|
|
20
17
|
name: Deploy Docs
|
|
21
|
-
needs: download-test-ome-zarr
|
|
22
18
|
runs-on: ubuntu-latest
|
|
23
19
|
|
|
24
20
|
steps:
|
|
25
21
|
- uses: actions/checkout@v4
|
|
26
22
|
with:
|
|
27
23
|
fetch-depth: 0
|
|
28
|
-
|
|
29
24
|
- name: 🐍 Set up Python
|
|
30
25
|
uses: actions/setup-python@v5
|
|
31
26
|
with:
|
|
@@ -44,6 +39,15 @@ jobs:
|
|
|
44
39
|
git config --local user.email "github-actions[bot]@users.noreply.github.com"
|
|
45
40
|
git config --local user.name "github-actions[bot]"
|
|
46
41
|
|
|
42
|
+
- name: Restore shared data cache
|
|
43
|
+
id: cache-data
|
|
44
|
+
uses: actions/cache@v4
|
|
45
|
+
with:
|
|
46
|
+
path: data/
|
|
47
|
+
key: "${{ runner.os }}-data-${{ hashFiles('tests/conftest.py') }}"
|
|
48
|
+
restore-keys: |
|
|
49
|
+
"${{ runner.os }}-data-"
|
|
50
|
+
|
|
47
51
|
- name: Deploy docs
|
|
48
52
|
run: |
|
|
49
53
|
VERSION=$(echo $GITHUB_REF | sed 's/refs\/tags\///' | sed 's/refs\/heads\///')
|
|
@@ -53,9 +57,10 @@ jobs:
|
|
|
53
57
|
if [[ $GITHUB_REF == refs/tags/* ]] && [[ $VERSION =~ ^v[0-9.]+$ ]]; then
|
|
54
58
|
mike deploy --push --update-aliases $VERSION stable
|
|
55
59
|
mike set-default --push stable
|
|
56
|
-
echo "Deployed stable version"
|
|
57
|
-
|
|
60
|
+
echo "Deployed stable version $VERSION (stable)"
|
|
61
|
+
|
|
62
|
+
elif [[ $GITHUB_REF == refs/heads/dev ]]; then
|
|
58
63
|
mike deploy --push dev
|
|
59
64
|
mike set-default --push dev
|
|
60
|
-
echo "Deployed development version"
|
|
65
|
+
echo "Deployed development version (dev)"
|
|
61
66
|
fi
|
|
@@ -27,49 +27,18 @@ jobs:
|
|
|
27
27
|
- uses: actions/checkout@v4
|
|
28
28
|
- run: pipx run check-manifest
|
|
29
29
|
|
|
30
|
-
|
|
31
|
-
download-test-ome-zarr:
|
|
32
|
-
runs-on: ubuntu-latest
|
|
33
|
-
steps:
|
|
34
|
-
- uses: actions/checkout@v4
|
|
35
|
-
- name: Check and Download Artifacts
|
|
36
|
-
run: |
|
|
37
|
-
bash .github/scripts/download_data.sh
|
|
38
|
-
- name: Upload Artifacts
|
|
39
|
-
uses: actions/upload-artifact@v4
|
|
40
|
-
with:
|
|
41
|
-
name: data
|
|
42
|
-
path: data
|
|
43
|
-
|
|
44
|
-
|
|
45
30
|
test:
|
|
46
31
|
name: ${{ matrix.platform }} (${{ matrix.python-version }})
|
|
47
|
-
needs: download-test-ome-zarr
|
|
48
32
|
runs-on: ${{ matrix.platform }}
|
|
49
33
|
strategy:
|
|
50
34
|
fail-fast: false
|
|
51
35
|
matrix:
|
|
52
36
|
python-version: ["3.11", "3.12", "3.13"]
|
|
53
37
|
platform: [ubuntu-latest, macos-latest, windows-latest]
|
|
54
|
-
# platform: [ubuntu-latest, macos-latest]
|
|
55
|
-
exclude:
|
|
56
|
-
- python-version: "3.11"
|
|
57
|
-
platform: windows-latest
|
|
58
|
-
- python-version: "3.12"
|
|
59
|
-
platform: windows-latest
|
|
60
38
|
|
|
61
39
|
steps:
|
|
62
40
|
- uses: actions/checkout@v4
|
|
63
41
|
|
|
64
|
-
- uses: actions/download-artifact@v4
|
|
65
|
-
with:
|
|
66
|
-
name: data
|
|
67
|
-
path: data
|
|
68
|
-
|
|
69
|
-
- name: Check Artifacts
|
|
70
|
-
run: |
|
|
71
|
-
ls -l data
|
|
72
|
-
|
|
73
42
|
- name: 🐍 Set up Python ${{ matrix.python-version }}
|
|
74
43
|
uses: actions/setup-python@v5
|
|
75
44
|
with:
|
|
@@ -82,6 +51,15 @@ jobs:
|
|
|
82
51
|
python -m pip install -U pip
|
|
83
52
|
# if running a cron job, we add the --pre flag to test against pre-releases
|
|
84
53
|
python -m pip install .[test] ${{ github.event_name == 'schedule' && '--pre' || '' }}
|
|
54
|
+
|
|
55
|
+
- name: Restore shared data cache
|
|
56
|
+
id: cache-data
|
|
57
|
+
uses: actions/cache@v4
|
|
58
|
+
with:
|
|
59
|
+
path: data/
|
|
60
|
+
key: "${{ runner.os }}-data-${{ hashFiles('tests/conftest.py') }}"
|
|
61
|
+
restore-keys: |
|
|
62
|
+
"${{ runner.os }}-data-"
|
|
85
63
|
|
|
86
64
|
- name: 🧪 Run Tests
|
|
87
65
|
run: pytest
|
|
@@ -101,7 +79,6 @@ jobs:
|
|
|
101
79
|
update_existing: true
|
|
102
80
|
|
|
103
81
|
- name: Coverage
|
|
104
|
-
if: ${{ matrix.python-version == '3.10' }} && ${{ matrix.platform == 'ubuntu-latest' }}
|
|
105
82
|
uses: codecov/codecov-action@v5
|
|
106
83
|
with:
|
|
107
84
|
token: ${{ secrets.CODECOV_TOKEN }}
|
ngio-0.3.3/CHANGELOG.md
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## [v0.3.3]
|
|
4
|
+
|
|
5
|
+
### Chores
|
|
6
|
+
|
|
7
|
+
- improve dataset download process and streamline the CI workflows
|
|
8
|
+
|
|
9
|
+
## [v0.3.2]
|
|
10
|
+
|
|
11
|
+
### API Changes
|
|
12
|
+
|
|
13
|
+
- change table backend default to `anndata_v1` for backward compatibility. This will be chaanged again when ngio `v0.2.x` is no longer supported.
|
|
14
|
+
|
|
15
|
+
### Bug Fixes
|
|
16
|
+
|
|
17
|
+
- fix [#13](https://github.com/fractal-analytics-platform/fractal-converters-tools/issues/13) (converters tools)
|
|
18
|
+
- fix [#88](https://github.com/fractal-analytics-platform/ngio/issues/88)
|
|
@@ -57,7 +57,7 @@ from ngio.utils import download_ome_zarr_dataset
|
|
|
57
57
|
|
|
58
58
|
# Download a sample dataset
|
|
59
59
|
download_dir = Path("./data")
|
|
60
|
-
download_dir = Path(".").absolute()
|
|
60
|
+
download_dir = Path(".").absolute() / "data" # markdown-exec: hide
|
|
61
61
|
hcs_path = download_ome_zarr_dataset("CardiomyocyteSmallMip", download_dir=download_dir)
|
|
62
62
|
image_path = hcs_path / "B" / "03" / "0"
|
|
63
63
|
```
|
|
@@ -9,7 +9,7 @@ from ngio.utils import download_ome_zarr_dataset
|
|
|
9
9
|
|
|
10
10
|
# Download a sample dataset
|
|
11
11
|
download_dir = Path("./data")
|
|
12
|
-
download_dir = Path(".").absolute()
|
|
12
|
+
download_dir = Path(".").absolute() / "data" # markdown-exec: hide
|
|
13
13
|
hcs_path = download_ome_zarr_dataset("CardiomyocyteSmallMip", download_dir=download_dir)
|
|
14
14
|
image_path = hcs_path / "B" / "03" / "0"
|
|
15
15
|
|
|
@@ -10,7 +10,7 @@ from ngio import open_ome_zarr_container
|
|
|
10
10
|
from ngio.utils import download_ome_zarr_dataset
|
|
11
11
|
|
|
12
12
|
# Download a sample dataset
|
|
13
|
-
download_dir = Path(".").absolute()
|
|
13
|
+
download_dir = Path(".").absolute() / "data"
|
|
14
14
|
hcs_path = download_ome_zarr_dataset("CardiomyocyteSmallMip", download_dir=download_dir)
|
|
15
15
|
image_path = hcs_path / "B" / "03" / "0"
|
|
16
16
|
|
|
@@ -10,7 +10,7 @@ Let's open an `OmeZarrPlate` object.
|
|
|
10
10
|
>>> from pathlib import Path # markdown-exec: hide
|
|
11
11
|
>>> from ngio.utils import download_ome_zarr_dataset
|
|
12
12
|
>>> from ngio import open_ome_zarr_plate
|
|
13
|
-
>>> download_dir = Path(".").absolute()
|
|
13
|
+
>>> download_dir = Path(".").absolute() / "data" # markdown-exec: hide
|
|
14
14
|
>>> hcs_path = download_ome_zarr_dataset("CardiomyocyteSmallMip", download_dir=download_dir)
|
|
15
15
|
>>> ome_zarr_plate = open_ome_zarr_plate(hcs_path)
|
|
16
16
|
>>> ome_zarr_plate
|
|
@@ -111,6 +111,7 @@ The `OmeZarrPlate` object provides a method to get the image objects in a well.
|
|
|
111
111
|
Ngio provides a utility function to create a plate.
|
|
112
112
|
|
|
113
113
|
The first step is to create a list of `ImageInWellPath` objects. Each `ImageInWellPath` object contains the path to the image and the corresponding well.
|
|
114
|
+
|
|
114
115
|
```python exec="true" source="console" session="hcs_plate"
|
|
115
116
|
from ngio import ImageInWellPath
|
|
116
117
|
list_of_images = [ImageInWellPath(path="0", row="A", column=0),
|
|
@@ -124,6 +125,7 @@ list_of_images = [ImageInWellPath(path="0", row="A", column=0),
|
|
|
124
125
|
The order in which the images are added is not important. The `rows` and `columns` attributes of the plate will be sorted in alphabetical/numerical order.
|
|
125
126
|
|
|
126
127
|
Then, you can create the plate using the `create_empty_plate` function.
|
|
128
|
+
|
|
127
129
|
```pycon exec="true" source="console" session="hcs_plate"
|
|
128
130
|
>>> from ngio import create_empty_plate
|
|
129
131
|
>>> plate = create_empty_plate(store="new_plate.zarr", name="test_plate", images=list_of_images, overwrite=True)
|
|
@@ -131,7 +133,7 @@ Then, you can create the plate using the `create_empty_plate` function.
|
|
|
131
133
|
>>> print(plate) # markdown-exec: hide
|
|
132
134
|
```
|
|
133
135
|
|
|
134
|
-
This has created a new empty plate with the metadata correctly set. But no images have been added yet.
|
|
136
|
+
This has created a new empty plate with the metadata correctly set. But no images have been added yet.
|
|
135
137
|
|
|
136
138
|
### Modifying the plate
|
|
137
139
|
|
|
@@ -33,7 +33,7 @@ Moreover the ROI table must include the following columns:
|
|
|
33
33
|
|
|
34
34
|
Additionally, each ROI can include the following optional columns:
|
|
35
35
|
|
|
36
|
-
- `x_micrometer_original` and `
|
|
36
|
+
- `x_micrometer_original`, `y_micrometer_original` and `z_micrometer_original` which are the original coordinates of the ROI in micrometers. These are typically used when the data is saved in different coordinates during conversion, e.g. to avoid overwriting data from overlapping ROIs.
|
|
37
37
|
- `translation_x`, `translation_y` and `translation_z`, which are used during registration of multiplexing acquisitions.
|
|
38
38
|
|
|
39
39
|
The user can also add additional columns to the ROI table, but these columns will not be exposed in the ROI table API.
|
|
@@ -57,6 +57,7 @@ class Roi(BaseModel):
|
|
|
57
57
|
x_length=_to_raster(self.x_length, pixel_size.x, dim_x),
|
|
58
58
|
y_length=_to_raster(self.y_length, pixel_size.y, dim_y),
|
|
59
59
|
z_length=_to_raster(self.z_length, pixel_size.z, dim_z),
|
|
60
|
+
**self.model_extra,
|
|
60
61
|
)
|
|
61
62
|
|
|
62
63
|
def zoom(self, zoom_factor: float = 1) -> "Roi":
|
|
@@ -94,6 +95,7 @@ class RoiPixels(BaseModel):
|
|
|
94
95
|
y_length=_to_world(self.y_length, pixel_size.y),
|
|
95
96
|
z_length=_to_world(self.z_length, pixel_size.z),
|
|
96
97
|
unit=pixel_size.space_unit,
|
|
98
|
+
**self.model_extra,
|
|
97
99
|
)
|
|
98
100
|
|
|
99
101
|
def to_slices(self) -> dict[str, slice]:
|
|
@@ -27,6 +27,7 @@ from ngio.ome_zarr_meta import (
|
|
|
27
27
|
)
|
|
28
28
|
from ngio.tables import (
|
|
29
29
|
ConditionTable,
|
|
30
|
+
DefaultTableBackend,
|
|
30
31
|
FeatureTable,
|
|
31
32
|
GenericRoiTable,
|
|
32
33
|
MaskingRoiTable,
|
|
@@ -199,7 +200,7 @@ class OmeZarrWell:
|
|
|
199
200
|
)
|
|
200
201
|
|
|
201
202
|
|
|
202
|
-
def
|
|
203
|
+
def _build_extras(paths: Collection[str]) -> list[dict[str, str]]:
|
|
203
204
|
"""Build the extras for the images.
|
|
204
205
|
|
|
205
206
|
Args:
|
|
@@ -944,7 +945,7 @@ class OmeZarrPlate:
|
|
|
944
945
|
self,
|
|
945
946
|
name: str,
|
|
946
947
|
table: Table,
|
|
947
|
-
backend: TableBackend =
|
|
948
|
+
backend: TableBackend = DefaultTableBackend,
|
|
948
949
|
overwrite: bool = False,
|
|
949
950
|
) -> None:
|
|
950
951
|
"""Add a table to the image."""
|
|
@@ -1020,7 +1021,7 @@ class OmeZarrPlate:
|
|
|
1020
1021
|
if 'lazy', the table will be loaded as a lazy frame.
|
|
1021
1022
|
"""
|
|
1022
1023
|
images = self.get_images(acquisition=acquisition)
|
|
1023
|
-
extras =
|
|
1024
|
+
extras = _build_extras(images.keys())
|
|
1024
1025
|
return concatenate_image_tables(
|
|
1025
1026
|
images=images.values(),
|
|
1026
1027
|
extras=extras,
|
|
@@ -1054,7 +1055,7 @@ class OmeZarrPlate:
|
|
|
1054
1055
|
if 'lazy', the table will be loaded as a lazy frame.
|
|
1055
1056
|
"""
|
|
1056
1057
|
images = self.get_images(acquisition=acquisition)
|
|
1057
|
-
extras =
|
|
1058
|
+
extras = _build_extras(images.keys())
|
|
1058
1059
|
return concatenate_image_tables_as(
|
|
1059
1060
|
images=images.values(),
|
|
1060
1061
|
extras=extras,
|
|
@@ -1087,7 +1088,7 @@ class OmeZarrPlate:
|
|
|
1087
1088
|
if 'lazy', the table will be loaded as a lazy frame.
|
|
1088
1089
|
"""
|
|
1089
1090
|
images = await self.get_images_async(acquisition=acquisition)
|
|
1090
|
-
extras =
|
|
1091
|
+
extras = _build_extras(images.keys())
|
|
1091
1092
|
return await concatenate_image_tables_async(
|
|
1092
1093
|
images=images.values(),
|
|
1093
1094
|
extras=extras,
|
|
@@ -1121,7 +1122,7 @@ class OmeZarrPlate:
|
|
|
1121
1122
|
if 'lazy', the table will be loaded as a lazy frame.
|
|
1122
1123
|
"""
|
|
1123
1124
|
images = await self.get_images_async(acquisition=acquisition)
|
|
1124
|
-
extras =
|
|
1125
|
+
extras = _build_extras(images.keys())
|
|
1125
1126
|
return await concatenate_image_tables_as_async(
|
|
1126
1127
|
images=images.values(),
|
|
1127
1128
|
extras=extras,
|
|
@@ -23,6 +23,7 @@ from ngio.ome_zarr_meta.ngio_specs import (
|
|
|
23
23
|
)
|
|
24
24
|
from ngio.tables import (
|
|
25
25
|
ConditionTable,
|
|
26
|
+
DefaultTableBackend,
|
|
26
27
|
FeatureTable,
|
|
27
28
|
GenericRoiTable,
|
|
28
29
|
MaskingRoiTable,
|
|
@@ -501,7 +502,7 @@ class OmeZarrContainer:
|
|
|
501
502
|
self,
|
|
502
503
|
name: str,
|
|
503
504
|
table: Table,
|
|
504
|
-
backend: TableBackend =
|
|
505
|
+
backend: TableBackend = DefaultTableBackend,
|
|
505
506
|
overwrite: bool = False,
|
|
506
507
|
) -> None:
|
|
507
508
|
"""Add a table to the image."""
|
|
@@ -831,7 +832,7 @@ def create_ome_zarr_from_array(
|
|
|
831
832
|
axes_names=axes_names,
|
|
832
833
|
name=name,
|
|
833
834
|
chunks=chunks,
|
|
834
|
-
dtype=array.dtype,
|
|
835
|
+
dtype=str(array.dtype),
|
|
835
836
|
overwrite=overwrite,
|
|
836
837
|
version=version,
|
|
837
838
|
)
|
|
@@ -15,6 +15,7 @@ from ngio.tables._tables_container import (
|
|
|
15
15
|
open_tables_container,
|
|
16
16
|
)
|
|
17
17
|
from ngio.tables.backends import (
|
|
18
|
+
DefaultTableBackend,
|
|
18
19
|
ImplementedTableBackends,
|
|
19
20
|
TableBackend,
|
|
20
21
|
TableBackendProtocol,
|
|
@@ -23,6 +24,7 @@ from ngio.tables.v1._generic_table import GenericTable
|
|
|
23
24
|
|
|
24
25
|
__all__ = [
|
|
25
26
|
"ConditionTable",
|
|
27
|
+
"DefaultTableBackend",
|
|
26
28
|
"FeatureTable",
|
|
27
29
|
"GenericRoiTable",
|
|
28
30
|
"GenericTable",
|
|
@@ -10,6 +10,7 @@ from anndata import AnnData
|
|
|
10
10
|
|
|
11
11
|
from ngio.tables.backends import (
|
|
12
12
|
BackendMeta,
|
|
13
|
+
DefaultTableBackend,
|
|
13
14
|
ImplementedTableBackends,
|
|
14
15
|
TableBackend,
|
|
15
16
|
TableBackendProtocol,
|
|
@@ -203,7 +204,7 @@ class AbstractBaseTable(ABC):
|
|
|
203
204
|
def set_backend(
|
|
204
205
|
self,
|
|
205
206
|
handler: ZarrGroupHandler | None = None,
|
|
206
|
-
backend: TableBackend =
|
|
207
|
+
backend: TableBackend = DefaultTableBackend,
|
|
207
208
|
) -> None:
|
|
208
209
|
"""Set the backend of the table."""
|
|
209
210
|
if handler is None:
|
|
@@ -8,6 +8,7 @@ import polars as pl
|
|
|
8
8
|
|
|
9
9
|
from ngio.tables.backends import (
|
|
10
10
|
BackendMeta,
|
|
11
|
+
DefaultTableBackend,
|
|
11
12
|
TableBackend,
|
|
12
13
|
TabularData,
|
|
13
14
|
)
|
|
@@ -90,13 +91,13 @@ class Table(Protocol):
|
|
|
90
91
|
def set_backend(
|
|
91
92
|
self,
|
|
92
93
|
handler: ZarrGroupHandler | None = None,
|
|
93
|
-
backend: TableBackend =
|
|
94
|
+
backend: TableBackend = DefaultTableBackend,
|
|
94
95
|
) -> None:
|
|
95
96
|
"""Set the backend store and path for the table.
|
|
96
97
|
|
|
97
98
|
Either a handler or a backend must be provided.
|
|
98
99
|
|
|
99
|
-
If the
|
|
100
|
+
If the handler in none it will be inferred from the backend.
|
|
100
101
|
If the backend is none, it will be inferred from the group attrs
|
|
101
102
|
"""
|
|
102
103
|
...
|
|
@@ -314,7 +315,7 @@ class TablesContainer:
|
|
|
314
315
|
self,
|
|
315
316
|
name: str,
|
|
316
317
|
table: Table,
|
|
317
|
-
backend: TableBackend =
|
|
318
|
+
backend: TableBackend = DefaultTableBackend,
|
|
318
319
|
overwrite: bool = False,
|
|
319
320
|
) -> None:
|
|
320
321
|
"""Add a table to the group."""
|
|
@@ -406,7 +407,7 @@ def open_table_as(
|
|
|
406
407
|
def write_table(
|
|
407
408
|
store: StoreOrGroup,
|
|
408
409
|
table: Table,
|
|
409
|
-
backend: TableBackend =
|
|
410
|
+
backend: TableBackend = DefaultTableBackend,
|
|
410
411
|
cache: bool = False,
|
|
411
412
|
mode: AccessModeLiteral = "a",
|
|
412
413
|
parallel_safe: bool = False,
|
|
@@ -6,6 +6,7 @@ from ngio.tables.backends._csv import CsvTableBackend
|
|
|
6
6
|
from ngio.tables.backends._json import JsonTableBackend
|
|
7
7
|
from ngio.tables.backends._parquet import ParquetTableBackend
|
|
8
8
|
from ngio.tables.backends._table_backends import (
|
|
9
|
+
DefaultTableBackend,
|
|
9
10
|
ImplementedTableBackends,
|
|
10
11
|
TableBackend,
|
|
11
12
|
TableBackendProtocol,
|
|
@@ -32,6 +33,7 @@ __all__ = [
|
|
|
32
33
|
"AnnDataBackend",
|
|
33
34
|
"BackendMeta",
|
|
34
35
|
"CsvTableBackend",
|
|
36
|
+
"DefaultTableBackend",
|
|
35
37
|
"ImplementedTableBackends",
|
|
36
38
|
"JsonTableBackend",
|
|
37
39
|
"ParquetTableBackend",
|
|
@@ -19,7 +19,7 @@ from ngio.utils import NgioValueError, ZarrGroupHandler
|
|
|
19
19
|
class BackendMeta(BaseModel):
|
|
20
20
|
"""Metadata for the backend."""
|
|
21
21
|
|
|
22
|
-
backend: str = "
|
|
22
|
+
backend: str = "anndata_v1"
|
|
23
23
|
index_key: str | None = None
|
|
24
24
|
index_type: Literal["int", "str"] | None = None
|
|
25
25
|
|
|
@@ -23,7 +23,7 @@ class ConditionTableV1(AbstractBaseTable):
|
|
|
23
23
|
The condition table is a generic table that does not
|
|
24
24
|
have a specific definition.
|
|
25
25
|
|
|
26
|
-
It is used to store
|
|
26
|
+
It is used to store information about the particular conditions
|
|
27
27
|
used to generate the data.
|
|
28
28
|
- How much drug was used in the experiment
|
|
29
29
|
- What treatment was used
|
|
@@ -47,11 +47,20 @@ REQUIRED_COLUMNS = [
|
|
|
47
47
|
ORIGIN_COLUMNS = [
|
|
48
48
|
"x_micrometer_original",
|
|
49
49
|
"y_micrometer_original",
|
|
50
|
+
"z_micrometer_original",
|
|
50
51
|
]
|
|
51
52
|
|
|
52
53
|
TRANSLATION_COLUMNS = ["translation_x", "translation_y", "translation_z"]
|
|
53
54
|
|
|
54
|
-
PLATE_COLUMNS = [
|
|
55
|
+
PLATE_COLUMNS = [
|
|
56
|
+
"plate_name",
|
|
57
|
+
"row",
|
|
58
|
+
"column",
|
|
59
|
+
"path_in_well",
|
|
60
|
+
"path_in_plate",
|
|
61
|
+
"acquisition_id",
|
|
62
|
+
"acquisition_name",
|
|
63
|
+
]
|
|
55
64
|
|
|
56
65
|
INDEX_COLUMNS = [
|
|
57
66
|
"FieldIndex",
|
|
@@ -390,7 +399,8 @@ class MaskingRoiTableV1(GenericRoiTableV1):
|
|
|
390
399
|
meta = MaskingRoiTableV1Meta()
|
|
391
400
|
|
|
392
401
|
if reference_label is not None:
|
|
393
|
-
|
|
402
|
+
path = f"../labels/{reference_label}"
|
|
403
|
+
meta.region = RegionMeta(path=path)
|
|
394
404
|
|
|
395
405
|
if meta.index_key is None:
|
|
396
406
|
meta.index_key = "label"
|
|
@@ -3,7 +3,11 @@
|
|
|
3
3
|
import os
|
|
4
4
|
|
|
5
5
|
from ngio.common._common_types import ArrayLike
|
|
6
|
-
from ngio.utils._datasets import
|
|
6
|
+
from ngio.utils._datasets import (
|
|
7
|
+
download_ome_zarr_dataset,
|
|
8
|
+
list_ome_zarr_datasets,
|
|
9
|
+
print_datasets_infos,
|
|
10
|
+
)
|
|
7
11
|
from ngio.utils._errors import (
|
|
8
12
|
NgioFileExistsError,
|
|
9
13
|
NgioFileNotFoundError,
|
|
@@ -34,13 +38,13 @@ __all__ = [
|
|
|
34
38
|
"NgioValueError",
|
|
35
39
|
"StoreOrGroup",
|
|
36
40
|
"ZarrGroupHandler",
|
|
37
|
-
#
|
|
41
|
+
# Other
|
|
38
42
|
"download_ome_zarr_dataset",
|
|
39
|
-
# Fractal
|
|
40
43
|
"fractal_fsspec_store",
|
|
41
44
|
"list_ome_zarr_datasets",
|
|
42
45
|
# Logger
|
|
43
46
|
"ngio_logger",
|
|
44
47
|
"open_group_wrapper",
|
|
48
|
+
"print_datasets_infos",
|
|
45
49
|
"set_logger_level",
|
|
46
50
|
]
|