ngio 0.3.4__tar.gz → 0.4.0a1__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.
Files changed (262) hide show
  1. {ngio-0.3.4 → ngio-0.4.0a1}/.github/workflows/build_docs.yml +1 -1
  2. {ngio-0.3.4 → ngio-0.4.0a1}/.github/workflows/ci.yml +3 -3
  3. {ngio-0.3.4 → ngio-0.4.0a1}/.pre-commit-config.yaml +4 -4
  4. ngio-0.4.0a1/CHANGELOG.md +55 -0
  5. {ngio-0.3.4 → ngio-0.4.0a1}/PKG-INFO +12 -10
  6. {ngio-0.3.4 → ngio-0.4.0a1}/README.md +6 -6
  7. ngio-0.4.0a1/docs/api/hcs.md +17 -0
  8. ngio-0.4.0a1/docs/api/images.md +17 -0
  9. ngio-0.4.0a1/docs/api/ngio/common.md +3 -0
  10. ngio-0.4.0a1/docs/api/ngio/hcs.md +3 -0
  11. ngio-0.4.0a1/docs/api/ngio/images.md +3 -0
  12. ngio-0.4.0a1/docs/api/ngio/ngio.md +3 -0
  13. ngio-0.4.0a1/docs/api/ngio/tables.md +3 -0
  14. ngio-0.4.0a1/docs/api/ngio/utils.md +3 -0
  15. ngio-0.4.0a1/docs/api/ome_zarr_container.md +14 -0
  16. ngio-0.4.0a1/docs/api/tables.md +1 -0
  17. {ngio-0.3.4 → ngio-0.4.0a1}/docs/getting_started/1_ome_zarr_containers.md +2 -2
  18. {ngio-0.3.4 → ngio-0.4.0a1}/docs/getting_started/2_images.md +11 -9
  19. {ngio-0.3.4 → ngio-0.4.0a1}/docs/getting_started/3_tables.md +5 -5
  20. {ngio-0.3.4 → ngio-0.4.0a1}/docs/index.md +3 -3
  21. {ngio-0.3.4 → ngio-0.4.0a1}/docs/table_specs/backend.md +1 -1
  22. {ngio-0.3.4 → ngio-0.4.0a1}/docs/table_specs/table_types/masking_roi_table.md +2 -0
  23. {ngio-0.3.4 → ngio-0.4.0a1}/docs/table_specs/table_types/roi_table.md +1 -0
  24. ngio-0.4.0a1/docs/tutorials/create_ome_zarr.ipynb +101 -0
  25. ngio-0.4.0a1/docs/tutorials/feature_extraction.ipynb +118 -0
  26. ngio-0.4.0a1/docs/tutorials/hcs_exploration.ipynb +138 -0
  27. ngio-0.4.0a1/docs/tutorials/image_processing.ipynb +218 -0
  28. {ngio-0.3.4 → ngio-0.4.0a1}/docs/tutorials/image_segmentation.ipynb +15 -8
  29. {ngio-0.3.4 → ngio-0.4.0a1}/mkdocs.yml +36 -11
  30. {ngio-0.3.4 → ngio-0.4.0a1}/pyproject.toml +5 -3
  31. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/__init__.py +6 -0
  32. ngio-0.4.0a1/src/ngio/common/__init__.py +72 -0
  33. ngio-0.4.0a1/src/ngio/common/_array_io_pipes.py +549 -0
  34. ngio-0.4.0a1/src/ngio/common/_array_io_utils.py +508 -0
  35. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/common/_dimensions.py +63 -27
  36. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/common/_masking_roi.py +38 -10
  37. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/common/_pyramid.py +9 -7
  38. ngio-0.4.0a1/src/ngio/common/_roi.py +666 -0
  39. ngio-0.4.0a1/src/ngio/common/_synt_images_utils.py +101 -0
  40. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/common/_zoom.py +17 -12
  41. ngio-0.4.0a1/src/ngio/common/transforms/__init__.py +5 -0
  42. ngio-0.4.0a1/src/ngio/common/transforms/_label.py +12 -0
  43. ngio-0.4.0a1/src/ngio/common/transforms/_zoom.py +109 -0
  44. ngio-0.4.0a1/src/ngio/experimental/__init__.py +5 -0
  45. ngio-0.4.0a1/src/ngio/experimental/iterators/__init__.py +17 -0
  46. ngio-0.4.0a1/src/ngio/experimental/iterators/_abstract_iterator.py +170 -0
  47. ngio-0.4.0a1/src/ngio/experimental/iterators/_feature.py +151 -0
  48. ngio-0.4.0a1/src/ngio/experimental/iterators/_image_processing.py +169 -0
  49. ngio-0.4.0a1/src/ngio/experimental/iterators/_rois_utils.py +127 -0
  50. ngio-0.4.0a1/src/ngio/experimental/iterators/_segmentation.py +278 -0
  51. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/hcs/_plate.py +41 -36
  52. ngio-0.4.0a1/src/ngio/images/__init__.py +44 -0
  53. ngio-0.4.0a1/src/ngio/images/_abstract_image.py +490 -0
  54. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/images/_create.py +15 -15
  55. ngio-0.4.0a1/src/ngio/images/_create_synt_container.py +128 -0
  56. ngio-0.4.0a1/src/ngio/images/_image.py +895 -0
  57. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/images/_label.py +33 -30
  58. ngio-0.4.0a1/src/ngio/images/_masked_image.py +547 -0
  59. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/images/_ome_zarr_container.py +203 -66
  60. {ngio-0.3.4/src/ngio/common → ngio-0.4.0a1/src/ngio/images}/_table_ops.py +41 -41
  61. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/ngio_specs/__init__.py +2 -8
  62. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/ngio_specs/_axes.py +151 -128
  63. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/ngio_specs/_channels.py +55 -18
  64. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/ngio_specs/_dataset.py +7 -7
  65. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_hcs.py +6 -15
  66. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/ngio_specs/_ngio_image.py +11 -68
  67. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/v04/_v04_spec_utils.py +1 -1
  68. ngio-0.4.0a1/src/ngio/resources/20200812-CardiomyocyteDifferentiation14-Cycle1_B03/mask.png +0 -0
  69. ngio-0.4.0a1/src/ngio/resources/20200812-CardiomyocyteDifferentiation14-Cycle1_B03/nuclei.png +0 -0
  70. ngio-0.4.0a1/src/ngio/resources/20200812-CardiomyocyteDifferentiation14-Cycle1_B03/raw.jpg +0 -0
  71. ngio-0.4.0a1/src/ngio/resources/__init__.py +54 -0
  72. ngio-0.4.0a1/src/ngio/resources/resource_model.py +35 -0
  73. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_abstract_backend.py +5 -6
  74. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_anndata.py +1 -2
  75. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_anndata_utils.py +3 -3
  76. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_non_zarr_backends.py +1 -1
  77. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_table_backends.py +0 -1
  78. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_utils.py +3 -3
  79. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/v1/_roi_table.py +156 -69
  80. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/utils/__init__.py +2 -3
  81. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/utils/_logger.py +19 -0
  82. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/utils/_zarr_utils.py +1 -5
  83. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/common/test_dimensions.py +7 -11
  84. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/common/test_roi.py +4 -3
  85. ngio-0.4.0a1/tests/unit/common/test_transforms.py +59 -0
  86. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/hcs/test_plate.py +3 -3
  87. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/images/test_create.py +13 -1
  88. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/images/test_masked_images.py +42 -2
  89. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/images/test_omezarr_container.py +136 -9
  90. {ngio-0.3.4/tests/unit/common → ngio-0.4.0a1/tests/unit/images}/test_table_ops.py +7 -7
  91. ngio-0.4.0a1/tests/unit/iterators/test_iterators.py +168 -0
  92. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/ome_zarr_meta/test_unit_ngio_specs.py +32 -32
  93. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/ome_zarr_meta/test_unit_v04_utils.py +1 -1
  94. ngio-0.3.4/CHANGELOG.md +0 -22
  95. ngio-0.3.4/docs/api/common.md +0 -6
  96. ngio-0.3.4/docs/api/hcs.md +0 -6
  97. ngio-0.3.4/docs/api/images.md +0 -6
  98. ngio-0.3.4/docs/api/ngio.md +0 -6
  99. ngio-0.3.4/docs/api/tables.md +0 -6
  100. ngio-0.3.4/docs/api/utils.md +0 -6
  101. ngio-0.3.4/docs/tutorials/feature_extraction.ipynb +0 -35
  102. ngio-0.3.4/docs/tutorials/hcs_processing.ipynb +0 -21
  103. ngio-0.3.4/docs/tutorials/image_processing.ipynb +0 -21
  104. ngio-0.3.4/src/ngio/common/__init__.py +0 -70
  105. ngio-0.3.4/src/ngio/common/_array_pipe.py +0 -288
  106. ngio-0.3.4/src/ngio/common/_axes_transforms.py +0 -64
  107. ngio-0.3.4/src/ngio/common/_common_types.py +0 -5
  108. ngio-0.3.4/src/ngio/common/_roi.py +0 -167
  109. ngio-0.3.4/src/ngio/common/_slicer.py +0 -96
  110. ngio-0.3.4/src/ngio/images/__init__.py +0 -23
  111. ngio-0.3.4/src/ngio/images/_abstract_image.py +0 -360
  112. ngio-0.3.4/src/ngio/images/_image.py +0 -532
  113. ngio-0.3.4/src/ngio/images/_masked_image.py +0 -273
  114. {ngio-0.3.4 → ngio-0.4.0a1}/.copier-answers.yml +0 -0
  115. {ngio-0.3.4 → ngio-0.4.0a1}/.gitattributes +0 -0
  116. {ngio-0.3.4 → ngio-0.4.0a1}/.github/ISSUE_TEMPLATE.md +0 -0
  117. {ngio-0.3.4 → ngio-0.4.0a1}/.github/TEST_FAIL_TEMPLATE.md +0 -0
  118. {ngio-0.3.4 → ngio-0.4.0a1}/.github/dependabot.yml +0 -0
  119. {ngio-0.3.4 → ngio-0.4.0a1}/.github/pull_request_template.md +0 -0
  120. {ngio-0.3.4 → ngio-0.4.0a1}/.gitignore +0 -0
  121. {ngio-0.3.4 → ngio-0.4.0a1}/LICENSE +0 -0
  122. {ngio-0.3.4 → ngio-0.4.0a1}/_typos.toml +0 -0
  123. {ngio-0.3.4 → ngio-0.4.0a1}/docs/changelog.md +0 -0
  124. {ngio-0.3.4 → ngio-0.4.0a1}/docs/code_of_conduct.md +0 -0
  125. {ngio-0.3.4 → ngio-0.4.0a1}/docs/contributing.md +0 -0
  126. {ngio-0.3.4 → ngio-0.4.0a1}/docs/getting_started/0_quickstart.md +0 -0
  127. {ngio-0.3.4 → ngio-0.4.0a1}/docs/getting_started/4_masked_images.md +0 -0
  128. {ngio-0.3.4 → ngio-0.4.0a1}/docs/getting_started/5_hcs.md +0 -0
  129. {ngio-0.3.4 → ngio-0.4.0a1}/docs/table_specs/overview.md +0 -0
  130. {ngio-0.3.4 → ngio-0.4.0a1}/docs/table_specs/table_types/condition_table.md +0 -0
  131. {ngio-0.3.4 → ngio-0.4.0a1}/docs/table_specs/table_types/custom_table.md +0 -0
  132. {ngio-0.3.4 → ngio-0.4.0a1}/docs/table_specs/table_types/feature_table.md +0 -0
  133. {ngio-0.3.4 → ngio-0.4.0a1}/docs/table_specs/table_types/generic_table.md +0 -0
  134. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/hcs/__init__.py +0 -0
  135. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/__init__.py +0 -0
  136. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/_meta_handlers.py +0 -0
  137. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/ngio_specs/_pixel_size.py +0 -0
  138. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/v04/__init__.py +0 -0
  139. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/ome_zarr_meta/v04/_custom_models.py +0 -0
  140. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/__init__.py +0 -0
  141. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/_abstract_table.py +0 -0
  142. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/_tables_container.py +0 -0
  143. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/__init__.py +0 -0
  144. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_csv.py +0 -0
  145. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_json.py +0 -0
  146. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/backends/_parquet.py +0 -0
  147. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/v1/__init__.py +0 -0
  148. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/v1/_condition_table.py +0 -0
  149. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/v1/_feature_table.py +0 -0
  150. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/tables/v1/_generic_table.py +0 -0
  151. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/utils/_datasets.py +0 -0
  152. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/utils/_errors.py +0 -0
  153. {ngio-0.3.4 → ngio-0.4.0a1}/src/ngio/utils/_fractal_fsspec_store.py +0 -0
  154. {ngio-0.3.4 → ngio-0.4.0a1}/tests/conftest.py +0 -0
  155. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/.zattrs +0 -0
  156. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/.zgroup +0 -0
  157. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/0/.zarray +0 -0
  158. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/1/.zarray +0 -0
  159. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zattrs +0 -0
  160. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/labels/.zgroup +0 -0
  161. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zattrs +0 -0
  162. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/.zgroup +0 -0
  163. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/0/.zarray +0 -0
  164. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_c1yx.zarr/labels/label/1/.zarray +0 -0
  165. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/.zattrs +0 -0
  166. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/.zgroup +0 -0
  167. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/0/.zarray +0 -0
  168. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/1/.zarray +0 -0
  169. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/labels/.zattrs +0 -0
  170. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/labels/.zgroup +0 -0
  171. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zattrs +0 -0
  172. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/labels/label/.zgroup +0 -0
  173. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/labels/label/0/.zarray +0 -0
  174. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_cyx.zarr/labels/label/1/.zarray +0 -0
  175. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/.zattrs +0 -0
  176. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/.zgroup +0 -0
  177. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/0/.zarray +0 -0
  178. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/1/.zarray +0 -0
  179. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/labels/.zattrs +0 -0
  180. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/labels/.zgroup +0 -0
  181. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zattrs +0 -0
  182. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/labels/label/.zgroup +0 -0
  183. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/labels/label/0/.zarray +0 -0
  184. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_czyx.zarr/labels/label/1/.zarray +0 -0
  185. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/.zattrs +0 -0
  186. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/.zgroup +0 -0
  187. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/0/.zarray +0 -0
  188. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/1/.zarray +0 -0
  189. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zattrs +0 -0
  190. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/labels/.zgroup +0 -0
  191. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zattrs +0 -0
  192. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/.zgroup +0 -0
  193. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/0/.zarray +0 -0
  194. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tcyx.zarr/labels/label/1/.zarray +0 -0
  195. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/.zattrs +0 -0
  196. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/.zgroup +0 -0
  197. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/0/.zarray +0 -0
  198. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/1/.zarray +0 -0
  199. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zattrs +0 -0
  200. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/labels/.zgroup +0 -0
  201. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zattrs +0 -0
  202. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/.zgroup +0 -0
  203. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/0/.zarray +0 -0
  204. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tczyx.zarr/labels/label/1/.zarray +0 -0
  205. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/.zattrs +0 -0
  206. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/.zgroup +0 -0
  207. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/0/.zarray +0 -0
  208. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/1/.zarray +0 -0
  209. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/labels/.zattrs +0 -0
  210. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/labels/.zgroup +0 -0
  211. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zattrs +0 -0
  212. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/labels/label/.zgroup +0 -0
  213. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/labels/label/0/.zarray +0 -0
  214. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tyx.zarr/labels/label/1/.zarray +0 -0
  215. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/.zattrs +0 -0
  216. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/.zgroup +0 -0
  217. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/0/.zarray +0 -0
  218. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/1/.zarray +0 -0
  219. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zattrs +0 -0
  220. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/labels/.zgroup +0 -0
  221. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zattrs +0 -0
  222. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/.zgroup +0 -0
  223. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/0/.zarray +0 -0
  224. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_tzyx.zarr/labels/label/1/.zarray +0 -0
  225. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/.zattrs +0 -0
  226. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/.zgroup +0 -0
  227. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/0/.zarray +0 -0
  228. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/1/.zarray +0 -0
  229. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/labels/.zattrs +0 -0
  230. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/labels/.zgroup +0 -0
  231. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zattrs +0 -0
  232. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/labels/label/.zgroup +0 -0
  233. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/labels/label/0/.zarray +0 -0
  234. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_yx.zarr/labels/label/1/.zarray +0 -0
  235. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/.zattrs +0 -0
  236. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/.zgroup +0 -0
  237. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/0/.zarray +0 -0
  238. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/1/.zarray +0 -0
  239. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/labels/.zattrs +0 -0
  240. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/labels/.zgroup +0 -0
  241. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zattrs +0 -0
  242. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/labels/label/.zgroup +0 -0
  243. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/labels/label/0/.zarray +0 -0
  244. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/images/test_image_zyx.zarr/labels/label/1/.zarray +0 -0
  245. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/meta/base_ome_zarr_image_meta.json +0 -0
  246. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/meta/base_ome_zarr_image_meta_wrong_axis_order.json +0 -0
  247. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/meta/base_ome_zarr_label_meta.json +0 -0
  248. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/meta/base_ome_zarr_well_meta.json +0 -0
  249. {ngio-0.3.4 → ngio-0.4.0a1}/tests/data/v04/meta/ome_zarr_well_path_normalization_meta.json +0 -0
  250. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/common/test_pyramid.py +0 -0
  251. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/hcs/test_well.py +0 -0
  252. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/images/test_images.py +0 -0
  253. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/ome_zarr_meta/test_image_handler.py +0 -0
  254. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/tables/test_backends.py +0 -0
  255. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/tables/test_backends_utils.py +0 -0
  256. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/tables/test_feature_table.py +0 -0
  257. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/tables/test_generic_table.py +0 -0
  258. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/tables/test_masking_roi_table_v1.py +0 -0
  259. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/tables/test_roi_table_v1.py +0 -0
  260. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/tables/test_table_group.py +0 -0
  261. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/utils/test_download_datasets.py +0 -0
  262. {ngio-0.3.4 → ngio-0.4.0a1}/tests/unit/utils/test_zarr_utils.py +0 -0
@@ -18,7 +18,7 @@ jobs:
18
18
  runs-on: ubuntu-latest
19
19
 
20
20
  steps:
21
- - uses: actions/checkout@v4
21
+ - uses: actions/checkout@v5
22
22
  with:
23
23
  fetch-depth: 0
24
24
  - name: 🐍 Set up Python
@@ -24,7 +24,7 @@ jobs:
24
24
  # included in the sdist (unless explicitly excluded)
25
25
  runs-on: ubuntu-latest
26
26
  steps:
27
- - uses: actions/checkout@v4
27
+ - uses: actions/checkout@v5
28
28
  - run: pipx run check-manifest
29
29
 
30
30
  test:
@@ -37,7 +37,7 @@ jobs:
37
37
  platform: [ubuntu-latest, macos-latest, windows-latest]
38
38
 
39
39
  steps:
40
- - uses: actions/checkout@v4
40
+ - uses: actions/checkout@v5
41
41
 
42
42
  - name: 🐍 Set up Python ${{ matrix.python-version }}
43
43
  uses: actions/setup-python@v5
@@ -98,7 +98,7 @@ jobs:
98
98
  contents: write
99
99
 
100
100
  steps:
101
- - uses: actions/checkout@v4
101
+ - uses: actions/checkout@v5
102
102
  with:
103
103
  fetch-depth: 0
104
104
 
@@ -9,19 +9,19 @@ ci:
9
9
 
10
10
  repos:
11
11
  - repo: https://github.com/abravalheri/validate-pyproject
12
- rev: v0.18
12
+ rev: v0.24.1
13
13
  hooks:
14
14
  - id: validate-pyproject
15
15
 
16
16
  - repo: https://github.com/crate-ci/typos
17
- rev: typos-dict-v0.11.20
17
+ rev: v1.36.2
18
18
  hooks:
19
19
  - id: typos
20
20
  #args: [--force-exclude] # omitting --write-changes
21
21
  args: [--force-exclude, --write-changes]
22
22
 
23
23
  - repo: https://github.com/charliermarsh/ruff-pre-commit
24
- rev: v0.9.6
24
+ rev: v0.12.12
25
25
  hooks:
26
26
  - id: ruff
27
27
  args: [--fix] # may also add '--unsafe-fixes'
@@ -37,7 +37,7 @@ repos:
37
37
  # # - numpy
38
38
 
39
39
  - repo: https://github.com/kynan/nbstripout
40
- rev: 0.7.1
40
+ rev: 0.8.1
41
41
  hooks:
42
42
  - id: nbstripout
43
43
 
@@ -0,0 +1,55 @@
1
+ # Changelog
2
+
3
+ ## [v0.4.0a1]
4
+
5
+ ### Features
6
+
7
+ - add support for time in rois and roi-tables
8
+ - Building masking roi tables expanded to time series data
9
+ - add experimental support for Iterators
10
+ - add support for rescaling on-the-fly masks for masked images
11
+
12
+ ### API Changes
13
+
14
+ - The image-like `get_*` api have been slightly changed. Now if a single int is passed as slice_kwargs, it is interpreted as a single index. So the dimension is automatically squeezed.
15
+ - Remove the `get_*_delayed` methods, now data cam only be loaded as numpy or dask array.Use the `get_as_dask` method instead, which returns a dask array that can be used with dask delayed.
16
+ - A new model for channel selection is available. Now channels can be selected by name, index or with `ChannelSelectionModel` object.
17
+ - Change `table_name` keyword argument to `name` for consistency in all table concatenation functions, e.g. `concatenate_image_tables`, `concatenate_image_tables_as`, etc.
18
+ - Change to `Dimension` class. `get_shape` and `get_canonical_shape` have been removed, `get` uses new keyword arguments `default` instead of `strict`.
19
+ - Image like objects now have a more clean API to load data. Instead of `get_array` and `set_array`, they now use `get_as_numpy`, and `get_as_dask` for delayed arrays.
20
+ - Also for `get_roi` now specific methods are available. For ROI objects, the `get_roi_as_numpy`, and `get_roi_as_dask` methods.
21
+ - Table ops moved to `ngio.images`
22
+ - Make `label` an explicit attribute in `Roi` objects.
23
+
24
+ ### Table specs
25
+
26
+ - add `t_second` and `len_t_second` to ROI tables and masking ROI tables
27
+
28
+ ### Bug Fixes
29
+
30
+ - improve type consistency and remove non-necessary "type: ignore"
31
+
32
+ ## [v0.3.5]
33
+
34
+ - Remove path normalization for images in wells. While the spec requires paths to be alphanumeric, this patch removes the normalization to allow for arbitrary image paths.
35
+
36
+ ## [v0.3.4]
37
+
38
+ - allow to write as `anndata_v1` for backward compatibility with older ngio versions.
39
+
40
+ ## [v0.3.3]
41
+
42
+ ### Chores
43
+
44
+ - improve dataset download process and streamline the CI workflows
45
+
46
+ ## [v0.3.2]
47
+
48
+ ### API Changes
49
+
50
+ - change table backend default to `anndata_v1` for backward compatibility. This will be chaanged again when ngio `v0.2.x` is no longer supported.
51
+
52
+ ### Bug Fixes
53
+
54
+ - fix [#13](https://github.com/BioVisionCenter/fractal-converters-tools/issues/13) (converters tools)
55
+ - fix [#88](https://github.com/BioVisionCenter/ngio/issues/88)
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ngio
3
- Version: 0.3.4
3
+ Version: 0.4.0a1
4
4
  Summary: Next Generation file format IO
5
- Project-URL: homepage, https://github.com/fractal-analytics-platform/ngio
6
- Project-URL: repository, https://github.com/fractal-analytics-platform/ngio
5
+ Project-URL: homepage, https://github.com/BioVisionCenter/ngio
6
+ Project-URL: repository, https://github.com/BioVisionCenter/ngio
7
7
  Author-email: Lorenzo Cerrone <lorenzo.cerrone@uzh.ch>
8
8
  License: BSD-3-Clause
9
9
  License-File: LICENSE
@@ -16,7 +16,7 @@ Classifier: Programming Language :: Python :: 3.13
16
16
  Classifier: Typing :: Typed
17
17
  Requires-Python: <3.14,>=3.11
18
18
  Requires-Dist: aiohttp
19
- Requires-Dist: anndata>=0.8.0
19
+ Requires-Dist: anndata<0.11.4,>=0.8.0
20
20
  Requires-Dist: dask[array]
21
21
  Requires-Dist: dask[distributed]
22
22
  Requires-Dist: filelock
@@ -38,11 +38,13 @@ Requires-Dist: napari; extra == 'dev'
38
38
  Requires-Dist: notebook; extra == 'dev'
39
39
  Requires-Dist: pdbpp; extra == 'dev'
40
40
  Requires-Dist: pre-commit; extra == 'dev'
41
+ Requires-Dist: pympler; extra == 'dev'
41
42
  Requires-Dist: pyqt5; extra == 'dev'
42
43
  Requires-Dist: rich; extra == 'dev'
43
44
  Requires-Dist: ruff; extra == 'dev'
44
45
  Requires-Dist: scikit-image; extra == 'dev'
45
46
  Provides-Extra: docs
47
+ Requires-Dist: griffe-typingdoc; extra == 'docs'
46
48
  Requires-Dist: markdown-exec[ansi]; extra == 'docs'
47
49
  Requires-Dist: matplotlib; extra == 'docs'
48
50
  Requires-Dist: mike; extra == 'docs'
@@ -65,11 +67,11 @@ Description-Content-Type: text/markdown
65
67
 
66
68
  # Ngio - Next Generation file format IO
67
69
 
68
- [![License](https://img.shields.io/pypi/l/ngio.svg?color=green)](https://github.com/lorenzocerrone/ngio/raw/main/LICENSE)
70
+ [![License](https://img.shields.io/pypi/l/ngio.svg?color=green)](https://github.com/BioVisionCenter/ngio/raw/main/LICENSE)
69
71
  [![PyPI](https://img.shields.io/pypi/v/ngio.svg?color=green)](https://pypi.org/project/ngio)
70
72
  [![Python Version](https://img.shields.io/pypi/pyversions/ngio.svg?color=green)](https://python.org)
71
- [![CI](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml)
72
- [![codecov](https://codecov.io/gh/fractal-analytics-platform/ngio/graph/badge.svg?token=FkmF26FZki)](https://codecov.io/gh/fractal-analytics-platform/ngio)
73
+ [![CI](https://github.com/BioVisionCenter/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/BioVisionCenter/ngio/actions/workflows/ci.yml)
74
+ [![codecov](https://codecov.io/gh/BioVisionCenter/ngio/graph/badge.svg?token=FkmF26FZki)](https://codecov.io/gh/BioVisionCenter/ngio)
73
75
 
74
76
  ngio is a Python library designed to simplify bioimage analysis workflows, offering an intuitive interface for working with OME-Zarr files.
75
77
 
@@ -89,7 +91,7 @@ Ngio's mission is to streamline working with OME-Zarr files by providing a simpl
89
91
  ### 🔍 Rich Tables and Regions of Interest (ROI) Support
90
92
 
91
93
  - Extract and analyze specific regions of interest
92
- - Tight integration with [Tabular Data](https://fractal-analytics-platform.github.io/ngio/stable/table_specs/overview/)
94
+ - Tight integration with [Tabular Data](https://BioVisionCenter.github.io/ngio/stable/table_specs/overview/)
93
95
 
94
96
  ### 🔄 Scalable Data Processing (Coming Soon)
95
97
 
@@ -104,7 +106,7 @@ You can install ngio via pip:
104
106
  pip install ngio
105
107
  ```
106
108
 
107
- To get started check out the [Quickstart Guide](https://fractal-analytics-platform.github.io/ngio/stable/getting_started/0_quickstart/).
109
+ To get started check out the [Quickstart Guide](https://BioVisionCenter.github.io/ngio/stable/getting_started/0_quickstart/).
108
110
 
109
111
  ## Supported OME-Zarr versions
110
112
 
@@ -136,4 +138,4 @@ Ngio is developed at the [BioVisionCenter](https://www.biovisioncenter.uzh.ch/en
136
138
 
137
139
  ## License
138
140
 
139
- Ngio is released under the BSD-3-Clause License. See [LICENSE](https://github.com/fractal-analytics-platform/ngio/blob/main/LICENSE) for details.
141
+ Ngio is released under the BSD-3-Clause License. See [LICENSE](https://github.com/BioVisionCenter/ngio/blob/main/LICENSE) for details.
@@ -1,10 +1,10 @@
1
1
  # Ngio - Next Generation file format IO
2
2
 
3
- [![License](https://img.shields.io/pypi/l/ngio.svg?color=green)](https://github.com/lorenzocerrone/ngio/raw/main/LICENSE)
3
+ [![License](https://img.shields.io/pypi/l/ngio.svg?color=green)](https://github.com/BioVisionCenter/ngio/raw/main/LICENSE)
4
4
  [![PyPI](https://img.shields.io/pypi/v/ngio.svg?color=green)](https://pypi.org/project/ngio)
5
5
  [![Python Version](https://img.shields.io/pypi/pyversions/ngio.svg?color=green)](https://python.org)
6
- [![CI](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/fractal-analytics-platform/ngio/actions/workflows/ci.yml)
7
- [![codecov](https://codecov.io/gh/fractal-analytics-platform/ngio/graph/badge.svg?token=FkmF26FZki)](https://codecov.io/gh/fractal-analytics-platform/ngio)
6
+ [![CI](https://github.com/BioVisionCenter/ngio/actions/workflows/ci.yml/badge.svg)](https://github.com/BioVisionCenter/ngio/actions/workflows/ci.yml)
7
+ [![codecov](https://codecov.io/gh/BioVisionCenter/ngio/graph/badge.svg?token=FkmF26FZki)](https://codecov.io/gh/BioVisionCenter/ngio)
8
8
 
9
9
  ngio is a Python library designed to simplify bioimage analysis workflows, offering an intuitive interface for working with OME-Zarr files.
10
10
 
@@ -24,7 +24,7 @@ Ngio's mission is to streamline working with OME-Zarr files by providing a simpl
24
24
  ### 🔍 Rich Tables and Regions of Interest (ROI) Support
25
25
 
26
26
  - Extract and analyze specific regions of interest
27
- - Tight integration with [Tabular Data](https://fractal-analytics-platform.github.io/ngio/stable/table_specs/overview/)
27
+ - Tight integration with [Tabular Data](https://BioVisionCenter.github.io/ngio/stable/table_specs/overview/)
28
28
 
29
29
  ### 🔄 Scalable Data Processing (Coming Soon)
30
30
 
@@ -39,7 +39,7 @@ You can install ngio via pip:
39
39
  pip install ngio
40
40
  ```
41
41
 
42
- To get started check out the [Quickstart Guide](https://fractal-analytics-platform.github.io/ngio/stable/getting_started/0_quickstart/).
42
+ To get started check out the [Quickstart Guide](https://BioVisionCenter.github.io/ngio/stable/getting_started/0_quickstart/).
43
43
 
44
44
  ## Supported OME-Zarr versions
45
45
 
@@ -71,4 +71,4 @@ Ngio is developed at the [BioVisionCenter](https://www.biovisioncenter.uzh.ch/en
71
71
 
72
72
  ## License
73
73
 
74
- Ngio is released under the BSD-3-Clause License. See [LICENSE](https://github.com/fractal-analytics-platform/ngio/blob/main/LICENSE) for details.
74
+ Ngio is released under the BSD-3-Clause License. See [LICENSE](https://github.com/BioVisionCenter/ngio/blob/main/LICENSE) for details.
@@ -0,0 +1,17 @@
1
+ # HCS API Documentation
2
+
3
+ ## Open a Plate
4
+
5
+ ::: ngio.open_ome_zarr_plate
6
+
7
+ ## ngio.OmeZarrPlate Class Reference
8
+
9
+ ::: ngio.OmeZarrPlate
10
+
11
+ ## Open a Well
12
+
13
+ ::: ngio.open_ome_zarr_well
14
+
15
+ ## ngio.OmeZarrWell Class Reference
16
+
17
+ ::: ngio.OmeZarrWell
@@ -0,0 +1,17 @@
1
+ # Images Like: API Documentation
2
+
3
+ ## Open an Image
4
+
5
+ ::: ngio.open_image
6
+
7
+ ## ngio.Image Class Reference
8
+
9
+ ::: ngio.Image
10
+
11
+ ## Open a Label
12
+
13
+ ::: ngio.open_label
14
+
15
+ ## ngio.Label Class Reference
16
+
17
+ ::: ngio.Label
@@ -0,0 +1,3 @@
1
+ # ngio.common API documentation
2
+
3
+ ::: ngio.common
@@ -0,0 +1,3 @@
1
+ # ngio.hcs API documentation
2
+
3
+ ::: ngio.hcs
@@ -0,0 +1,3 @@
1
+ # ngio.images API documentation
2
+
3
+ ::: ngio.images
@@ -0,0 +1,3 @@
1
+ # ngio API documentation
2
+
3
+ ::: ngio
@@ -0,0 +1,3 @@
1
+ # ngio.tables API documentation
2
+
3
+ ::: ngio.tables
@@ -0,0 +1,3 @@
1
+ # ngio.utils
2
+
3
+ ::: ngio.utils
@@ -0,0 +1,14 @@
1
+ # OmeZarrContainer: API Documentation
2
+
3
+ ## Open an OME-Zarr Container
4
+
5
+ ::: ngio.open_ome_zarr_container
6
+
7
+ ## Create an OME-Zarr Container
8
+
9
+ ::: ngio.create_empty_ome_zarr
10
+ ::: ngio.create_ome_zarr_from_array
11
+
12
+ ## OmeZarrContainer Class
13
+
14
+ ::: ngio.OmeZarrContainer
@@ -0,0 +1 @@
1
+ # Ngio Tables API Documentation
@@ -81,8 +81,8 @@ Examples of the OME-Zarr metadata access:
81
81
  ```
82
82
  The metadata object contains all the information about the image, for example, the channel labels:
83
83
  ```pycon exec="true" source="console" session="get_started"
84
- >>> metadata.channel_labels
85
- >>> print(metadata.channel_labels) # markdown-exec: hide
84
+ >>> metadata.channels_meta.channel_labels
85
+ >>> print(metadata.channels_meta.channel_labels) # markdown-exec: hide
86
86
  ```
87
87
 
88
88
  ## Accessing images / labels / tables
@@ -72,29 +72,31 @@ Once you have the `Image` object, you can access the image data as a:
72
72
 
73
73
  === "Numpy Array"
74
74
  ```pycon exec="true" source="console" session="get_started"
75
- >>> data = image.get_array() # Get the image as a numpy array
75
+ >>> data = image.get_as_numpy() # Get the image as a numpy array
76
76
  >>> data.shape, data.dtype
77
77
  >>> print(data.shape, data.dtype) # markdown-exec: hide
78
78
  ```
79
79
 
80
80
  === "Dask Array"
81
81
  ```pycon exec="true" source="console" session="get_started"
82
- >>> dask_array = image.get_array(mode="dask") # Get the image as a dask array
82
+ >>> dask_array = image.get_as_dask() # Get the image as a dask array
83
83
  >>> dask_array
84
84
  >>> print(dask_array) # markdown-exec: hide
85
85
  ```
86
86
 
87
- === "Dask Delayed"
87
+ === "Legacy"
88
+ A generic `get_array` method is still available for backwards compatibility.
89
+
88
90
  ```pycon exec="true" source="console" session="get_started"
89
- >>> dask_delayed = image.get_array(mode="delayed") # Get the image as a dask delayed object
90
- >>> dask_delayed
91
- >>> print(dask_delayed) # markdown-exec: hide
91
+ >>> data = image.get_array(mode="numpy") # Get the image as a numpy or dask or delayed object
92
+ >>> data.shape, data.dtype
93
+ >>> print(data.shape, data.dtype) # markdown-exec: hide
92
94
  ```
93
95
 
94
- The `get_array` can also be used to slice the image data, and query specific axes in specific orders:
96
+ The `get_as_*` can also be used to slice the image data, and query specific axes in specific orders:
95
97
 
96
98
  ```pycon exec="true" source="console" session="get_started"
97
- >>> image_slice = image.get_array(c=0, x=slice(0, 128), axes_order=["t", "z", "y", "x", "c"]) # Get a specific channel and axes order
99
+ >>> image_slice = image.get_as_numpy(c=0, x=slice(0, 128), axes_order=["t", "z", "y", "x", "c"]) # Get a specific channel and axes order
98
100
  >>> image_slice.shape
99
101
  >>> print(image_slice.shape) # markdown-exec: hide
100
102
  ```
@@ -111,7 +113,7 @@ A minimal example of how to use the `get_array` and `set_array` methods:
111
113
 
112
114
  ```python exec="true" source="material-block" session="get_started"
113
115
  # Get the image data as a numpy array
114
- data = image.get_array(c=0, x=slice(0, 128), y=slice(0, 128), axes_order=["z", "y", "x", "c"])
116
+ data = image.get_as_numpy(c=0, x=slice(0, 128), y=slice(0, 128), axes_order=["z", "y", "x", "c"])
115
117
 
116
118
  # Modify the image data
117
119
  some_function = lambda x: x # markdown-exec: hide
@@ -38,7 +38,7 @@ Ngio supports three types of tables: `roi_table`, `feature_table`, and `masking_
38
38
  image_data = image_3.get_array(c=0)
39
39
  image_data = np.squeeze(image_data)
40
40
  roi = roi_table.get("FOV_1")
41
- roi = roi.to_pixel_roi(pixel_size=image_3.pixel_size, dimensions=image_3.dimensions)
41
+ roi = roi.to_roi_pixels(pixel_size=image_3.pixel_size, dimensions=image_3.dimensions)
42
42
  #label_3 = ome_zarr_container.get_label("nuclei", pixel_size=image_3.pixel_size)
43
43
  #label_data = label_3.get_array()
44
44
  #label_data = np.squeeze(label_data)
@@ -98,12 +98,12 @@ Ngio supports three types of tables: `roi_table`, `feature_table`, and `masking_
98
98
  The `nuclei_ROI_table` contains the masks for the `nuclei` label in the image, and is indexed by the label id.
99
99
  ```pycon exec="true" source="console" session="get_started"
100
100
  >>> masking_table = ome_zarr_container.get_table("nuclei_ROI_table") # Get a mask table
101
- >>> masking_table.get(1)
102
- >>> print(masking_table.get(100)) # markdown-exec: hide
101
+ >>> masking_table.get_label(1)
102
+ >>> print(masking_table.get_label(100)) # markdown-exec: hide
103
103
  ```
104
104
  ROIs can be used to slice the image data:
105
105
  ```pycon exec="true" source="console" session="get_started"
106
- >>> roi = masking_table.get(100)
106
+ >>> roi = masking_table.get_label(100)
107
107
  >>> roi_data = image.get_roi(roi)
108
108
  >>> roi_data.shape
109
109
  >>> print(roi_data.shape) # markdown-exec: hide
@@ -120,7 +120,7 @@ Ngio supports three types of tables: `roi_table`, `feature_table`, and `masking_
120
120
  cmap_array = np.random.rand(1000, 3)
121
121
  cmap_array[0] = 0
122
122
  cmap = ListedColormap(cmap_array)
123
- roi = masking_table.get(100)
123
+ roi = masking_table.get_label(100)
124
124
  image_3 = ome_zarr_container.get_image(path="2")
125
125
  image_data = image_3.get_roi(roi, c=0)
126
126
  image_data = np.squeeze(image_data)
@@ -16,7 +16,7 @@ Ngio's mission is to streamline working with OME-Zarr files by providing a simpl
16
16
  ### 🔍 Rich Tables and Regions of Interest (ROI) Support
17
17
 
18
18
  - Extract and analyze specific regions of interest
19
- - Tight integration with [Fractal's table framework](https://fractal-analytics-platform.github.io/fractal-tasks-core/tables/)
19
+ - Tight integration with [Fractal's table framework](https://BioVisionCenter.github.io/fractal-tasks-core/tables/)
20
20
 
21
21
  ### 🔄 Scalable Data Processing (Coming Soon)
22
22
 
@@ -58,8 +58,8 @@ Ngio is developed at the [BioVisionCenter](https://www.biovisioncenter.uzh.ch/en
58
58
 
59
59
  ## License
60
60
 
61
- Ngio is released under the BSD-3-Clause License. See [LICENSE](https://github.com/fractal-analytics-platform/ngio/blob/main/LICENSE) for details.
61
+ Ngio is released under the BSD-3-Clause License. See [LICENSE](https://github.com/BioVisionCenter/ngio/blob/main/LICENSE) for details.
62
62
 
63
63
  ## Repository
64
64
 
65
- Visit our [GitHub repository](https://github.com/fractal-analytics-platform/ngio) for the latest code, issues, and contributions.
65
+ Visit our [GitHub repository](https://github.com/BioVisionCenter/ngio) for the latest code, issues, and contributions.
@@ -66,7 +66,7 @@ table.zarr # Zarr group for the table
66
66
 
67
67
  The CSV backend is a plain text format that is widely used for tabular data. It is easy to read and write, and can be used across many different tools.
68
68
 
69
- The CSV backen in ngio follows closely the same specifications as the Parquet backend, with the following metadata:
69
+ The CSV backend in ngio follows closely the same specifications as the Parquet backend, with the following metadata:
70
70
 
71
71
  ```json
72
72
  {
@@ -31,5 +31,7 @@ Moreover the ROI table must include the following columns:
31
31
 
32
32
  - `x_micrometer`, `y_micrometer`, `z_micrometer`: the top-left corner coordinates of the ROI in micrometers.
33
33
  - `len_x_micrometer`, `len_y_micrometer`, `len_z_micrometer`: the size of the ROI in micrometers along each axis.
34
+ - `label`: An integer column label associated with the ROI, which corresponds to a specific label in the label image. This can also be the table index key.
35
+ - (Optional) `t_second` and `len_t_second`: the time coordinate of the ROI in seconds, and the length of the time coordinate in seconds. This is useful for multiplexing acquisitions.
34
36
 
35
37
  Additionally, each ROI can include the following optional columns: see [ROI Table](./roi_table.md).
@@ -33,6 +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
+ - `t_second` and `len_t_second`: the time coordinate of the ROI in seconds, and the length of the time coordinate in seconds. This is useful for multiplexing acquisitions.
36
37
  - `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
38
  - `translation_x`, `translation_y` and `translation_z`, which are used during registration of multiplexing acquisitions.
38
39
 
@@ -0,0 +1,101 @@
1
+ {
2
+ "cells": [
3
+ {
4
+ "cell_type": "markdown",
5
+ "id": "0",
6
+ "metadata": {},
7
+ "source": [
8
+ "# OME-Zarr Creation\n",
9
+ "\n",
10
+ "This is a minimal example of how to create an OME-Zarr image using `ngio`.\n",
11
+ "\n",
12
+ "This example is just a simple demonstration but for more complex conversion tasks please refer \n",
13
+ "to the converter tooling library [ome-zarr-converters-tools](https://github.com/BioVisionCenter/ome-zarr-converters-tools).\n",
14
+ "\n",
15
+ "Let's start by converting a sample image from `skimage` to OME-Zarr format."
16
+ ]
17
+ },
18
+ {
19
+ "cell_type": "code",
20
+ "execution_count": null,
21
+ "id": "1",
22
+ "metadata": {},
23
+ "outputs": [],
24
+ "source": [
25
+ "import skimage\n",
26
+ "from matplotlib import pyplot as plt\n",
27
+ "\n",
28
+ "plt.imshow(skimage.data.human_mitosis(), cmap=\"gray\")\n",
29
+ "plt.axis(\"off\")\n",
30
+ "plt.show()"
31
+ ]
32
+ },
33
+ {
34
+ "cell_type": "code",
35
+ "execution_count": null,
36
+ "id": "2",
37
+ "metadata": {},
38
+ "outputs": [],
39
+ "source": [
40
+ "from ngio import create_ome_zarr_from_array\n",
41
+ "\n",
42
+ "ome_zarr = create_ome_zarr_from_array(\n",
43
+ " store=\"./data/human_mitosis.zarr\",\n",
44
+ " array=skimage.data.human_mitosis(),\n",
45
+ " xy_pixelsize=0.1, # Just a guess\n",
46
+ ")\n",
47
+ "ome_zarr"
48
+ ]
49
+ },
50
+ {
51
+ "cell_type": "markdown",
52
+ "id": "3",
53
+ "metadata": {},
54
+ "source": [
55
+ "## Adding Rois to OME-Zarr\n",
56
+ "\n",
57
+ "Often, is useful to add ROIs to OME-Zarr images to be able to retrieve them later. \n",
58
+ "This can be done using the `ngio` library as follows."
59
+ ]
60
+ },
61
+ {
62
+ "cell_type": "code",
63
+ "execution_count": null,
64
+ "id": "4",
65
+ "metadata": {},
66
+ "outputs": [],
67
+ "source": [
68
+ "# create a roi for the whole image\n",
69
+ "roi_table = ome_zarr.build_image_roi_table(name=\"image_roi\")\n",
70
+ "ome_zarr.add_table(\"image_roi_table\", roi_table)"
71
+ ]
72
+ },
73
+ {
74
+ "cell_type": "markdown",
75
+ "id": "5",
76
+ "metadata": {},
77
+ "source": []
78
+ }
79
+ ],
80
+ "metadata": {
81
+ "kernelspec": {
82
+ "display_name": "dev",
83
+ "language": "python",
84
+ "name": "python3"
85
+ },
86
+ "language_info": {
87
+ "codemirror_mode": {
88
+ "name": "ipython",
89
+ "version": 3
90
+ },
91
+ "file_extension": ".py",
92
+ "mimetype": "text/x-python",
93
+ "name": "python",
94
+ "nbconvert_exporter": "python",
95
+ "pygments_lexer": "ipython3",
96
+ "version": "3.11.13"
97
+ }
98
+ },
99
+ "nbformat": 4,
100
+ "nbformat_minor": 5
101
+ }