careamics 0.0.13__tar.gz → 0.0.15__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.

Potentially problematic release.


This version of careamics might be problematic. Click here for more details.

Files changed (337) hide show
  1. {careamics-0.0.13 → careamics-0.0.15}/.github/workflows/codecov.yml +3 -6
  2. {careamics-0.0.13 → careamics-0.0.15}/.pre-commit-config.yaml +3 -3
  3. {careamics-0.0.13 → careamics-0.0.15}/PKG-INFO +2 -3
  4. {careamics-0.0.13 → careamics-0.0.15}/pyproject.toml +1 -2
  5. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/careamist.py +49 -49
  6. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/cli/conf.py +6 -6
  7. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/cli/main.py +8 -8
  8. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/cli/utils.py +2 -4
  9. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/algorithms/vae_algorithm_model.py +4 -4
  10. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/callback_model.py +8 -8
  11. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/configuration_factories.py +49 -49
  12. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/data_model.py +7 -13
  13. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/ng_data_model.py +8 -14
  14. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/patching_strategies/_overlapping_patched_model.py +4 -5
  15. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/inference_model.py +6 -10
  16. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/likelihood_model.py +2 -2
  17. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/nm_model.py +5 -7
  18. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/training_model.py +4 -4
  19. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/transformations/normalize_model.py +3 -3
  20. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/transformations/xy_flip_model.py +2 -2
  21. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/transformations/xy_random_rotate90_model.py +2 -2
  22. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/validators/validator_utils.py +1 -2
  23. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/dataset_utils/iterate_over_files.py +3 -3
  24. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/in_memory_dataset.py +2 -2
  25. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/iterable_dataset.py +1 -2
  26. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/patching/random_patching.py +6 -6
  27. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/patching/sequential_patching.py +4 -4
  28. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/tiling/lvae_tiled_patching.py +2 -2
  29. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/dataset.py +3 -3
  30. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/factory.py +19 -19
  31. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patching_strategies/random_patching.py +3 -4
  32. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patching_strategies/sequential_patching.py +1 -2
  33. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/callbacks/prediction_writer_callback/prediction_writer_callback.py +5 -5
  34. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/callbacks/prediction_writer_callback/write_strategy.py +5 -5
  35. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/callbacks/prediction_writer_callback/write_strategy_factory.py +8 -8
  36. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/dataset_ng/data_module.py +43 -43
  37. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/lightning_module.py +12 -14
  38. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/predict_data_module.py +8 -8
  39. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/train_data_module.py +11 -11
  40. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/losses/lvae/losses.py +9 -9
  41. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/model_io/bioimage/model_description.py +12 -11
  42. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/model_io/bmz_io.py +4 -4
  43. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/layers.py +5 -5
  44. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/unet.py +16 -10
  45. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/prediction_utils/lvae_prediction.py +5 -5
  46. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/compose.py +9 -9
  47. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/n2v_manipulate.py +3 -3
  48. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/n2v_manipulate_torch.py +4 -4
  49. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/normalize.py +4 -6
  50. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/pixel_manipulation.py +6 -8
  51. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/pixel_manipulation_torch.py +5 -7
  52. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/xy_flip.py +3 -5
  53. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/xy_random_rotate90.py +3 -5
  54. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/logging.py +8 -8
  55. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/metrics.py +2 -2
  56. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/plotting.py +1 -3
  57. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset_ng/patch_extractor/image_stack/test_czi_image_stack.py +3 -3
  58. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset_ng/patching_strategies/test_random_patching_ng.py +4 -1
  59. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/test_LVAE_lightning_module.py +2 -2
  60. {careamics-0.0.13 → careamics-0.0.15}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  61. {careamics-0.0.13 → careamics-0.0.15}/.github/ISSUE_TEMPLATE/example_report.md +0 -0
  62. {careamics-0.0.13 → careamics-0.0.15}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  63. {careamics-0.0.13 → careamics-0.0.15}/.github/ISSUE_TEMPLATE/interoperability_request.md +0 -0
  64. {careamics-0.0.13 → careamics-0.0.15}/.github/ISSUE_TEMPLATE/question.md +0 -0
  65. {careamics-0.0.13 → careamics-0.0.15}/.github/ISSUE_TEMPLATE/refactoring_suggestion.md +0 -0
  66. {careamics-0.0.13 → careamics-0.0.15}/.github/TEST_FAIL_TEMPLATE.md +0 -0
  67. {careamics-0.0.13 → careamics-0.0.15}/.github/dependabot.yml +0 -0
  68. {careamics-0.0.13 → careamics-0.0.15}/.github/pull_request_template.md +0 -0
  69. {careamics-0.0.13 → careamics-0.0.15}/.github/workflows/ci.yml +0 -0
  70. {careamics-0.0.13 → careamics-0.0.15}/.github/workflows/ci_macos.yml +0 -0
  71. {careamics-0.0.13 → careamics-0.0.15}/.github/workflows/lvae.yml +0 -0
  72. {careamics-0.0.13 → careamics-0.0.15}/.gitignore +0 -0
  73. {careamics-0.0.13 → careamics-0.0.15}/CODE_OF_CONDUCT.md +0 -0
  74. {careamics-0.0.13 → careamics-0.0.15}/LICENSE +0 -0
  75. {careamics-0.0.13 → careamics-0.0.15}/README.md +0 -0
  76. {careamics-0.0.13 → careamics-0.0.15}/codecov.yml +0 -0
  77. {careamics-0.0.13 → careamics-0.0.15}/mypy.ini +0 -0
  78. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/__init__.py +0 -0
  79. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/cli/__init__.py +0 -0
  80. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/__init__.py +0 -0
  81. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/algorithms/__init__.py +0 -0
  82. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/algorithms/care_algorithm_model.py +0 -0
  83. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/algorithms/n2n_algorithm_model.py +0 -0
  84. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/algorithms/n2v_algorithm_model.py +0 -0
  85. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/algorithms/unet_algorithm_model.py +0 -0
  86. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/architectures/__init__.py +0 -0
  87. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/architectures/architecture_model.py +0 -0
  88. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/architectures/lvae_model.py +0 -0
  89. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/architectures/unet_model.py +0 -0
  90. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/configuration.py +0 -0
  91. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/configuration_io.py +0 -0
  92. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/__init__.py +0 -0
  93. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/patching_strategies/__init__.py +0 -0
  94. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/patching_strategies/_patched_model.py +0 -0
  95. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/patching_strategies/random_patching_model.py +0 -0
  96. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/patching_strategies/sequential_patching_model.py +0 -0
  97. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/patching_strategies/tiled_patching_model.py +0 -0
  98. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/data/patching_strategies/whole_patching_model.py +0 -0
  99. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/loss_model.py +0 -0
  100. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/optimizer_models.py +0 -0
  101. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/__init__.py +0 -0
  102. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_activations.py +0 -0
  103. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_algorithms.py +0 -0
  104. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_architectures.py +0 -0
  105. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_data.py +0 -0
  106. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_loggers.py +0 -0
  107. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_losses.py +0 -0
  108. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_optimizers.py +0 -0
  109. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_patching_strategies.py +0 -0
  110. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_pixel_manipulations.py +0 -0
  111. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_struct_axis.py +0 -0
  112. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/support/supported_transforms.py +0 -0
  113. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/tile_information.py +0 -0
  114. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/transformations/__init__.py +0 -0
  115. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/transformations/n2v_manipulate_model.py +0 -0
  116. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/transformations/transform_model.py +0 -0
  117. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/transformations/transform_unions.py +0 -0
  118. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/validators/__init__.py +0 -0
  119. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/config/validators/model_validators.py +0 -0
  120. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/conftest.py +0 -0
  121. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/__init__.py +0 -0
  122. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/dataset_utils/__init__.py +0 -0
  123. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/dataset_utils/dataset_utils.py +0 -0
  124. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/dataset_utils/file_utils.py +0 -0
  125. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/dataset_utils/running_stats.py +0 -0
  126. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/in_memory_pred_dataset.py +0 -0
  127. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/in_memory_tiled_pred_dataset.py +0 -0
  128. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/iterable_pred_dataset.py +0 -0
  129. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/iterable_tiled_pred_dataset.py +0 -0
  130. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/patching/__init__.py +0 -0
  131. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/patching/patching.py +0 -0
  132. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/patching/validate_patch_dimension.py +0 -0
  133. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/tiling/__init__.py +0 -0
  134. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/tiling/collate_tiles.py +0 -0
  135. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/tiling/tiled_patching.py +0 -0
  136. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset/zarr_dataset.py +0 -0
  137. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/README.md +0 -0
  138. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/demos/bsd68_demo.ipynb +0 -0
  139. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/demos/care_U2OS_demo.ipynb +0 -0
  140. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/demos/demo_custom_image_stack.ipynb +0 -0
  141. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/demos/demo_datamodule.ipynb +0 -0
  142. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/demos/demo_dataset.ipynb +0 -0
  143. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/demos/demo_patch_extractor.py +0 -0
  144. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/demos/mouse_nuclei_demo.ipynb +0 -0
  145. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/legacy_interoperability.py +0 -0
  146. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/__init__.py +0 -0
  147. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/demo_custom_image_stack_loader.py +0 -0
  148. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/image_stack/__init__.py +0 -0
  149. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/image_stack/czi_image_stack.py +0 -0
  150. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/image_stack/image_stack_protocol.py +0 -0
  151. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/image_stack/in_memory_image_stack.py +0 -0
  152. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/image_stack/zarr_image_stack.py +0 -0
  153. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/image_stack_loader.py +0 -0
  154. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/patch_extractor.py +0 -0
  155. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patch_extractor/patch_extractor_factory.py +0 -0
  156. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patching_strategies/__init__.py +0 -0
  157. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patching_strategies/patching_strategy_protocol.py +0 -0
  158. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patching_strategies/tiling_strategy.py +0 -0
  159. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/dataset_ng/patching_strategies/whole_sample.py +0 -0
  160. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/file_io/__init__.py +0 -0
  161. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/file_io/read/__init__.py +0 -0
  162. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/file_io/read/get_func.py +0 -0
  163. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/file_io/read/tiff.py +0 -0
  164. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/file_io/read/zarr.py +0 -0
  165. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/file_io/write/__init__.py +0 -0
  166. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/file_io/write/get_func.py +0 -0
  167. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/file_io/write/tiff.py +0 -0
  168. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/__init__.py +0 -0
  169. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/callbacks/__init__.py +0 -0
  170. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/callbacks/hyperparameters_callback.py +0 -0
  171. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/callbacks/prediction_writer_callback/__init__.py +0 -0
  172. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/callbacks/prediction_writer_callback/file_path_utils.py +0 -0
  173. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/callbacks/progress_bar_callback.py +0 -0
  174. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/dataset_ng/__init__.py +0 -0
  175. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/dataset_ng/lightning_modules/__init__.py +0 -0
  176. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/dataset_ng/lightning_modules/care_module.py +0 -0
  177. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/dataset_ng/lightning_modules/n2v_module.py +0 -0
  178. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lightning/dataset_ng/lightning_modules/unet_module.py +0 -0
  179. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/losses/__init__.py +0 -0
  180. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/losses/fcn/__init__.py +0 -0
  181. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/losses/fcn/losses.py +0 -0
  182. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/losses/loss_factory.py +0 -0
  183. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/losses/lvae/__init__.py +0 -0
  184. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/losses/lvae/loss_utils.py +0 -0
  185. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/__init__.py +0 -0
  186. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/calibration.py +0 -0
  187. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/__init__.py +0 -0
  188. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/config.py +0 -0
  189. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/lc_dataset.py +0 -0
  190. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/ms_dataset_ref.py +0 -0
  191. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/multich_dataset.py +0 -0
  192. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/multicrop_dset.py +0 -0
  193. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/multifile_dataset.py +0 -0
  194. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/types.py +0 -0
  195. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/utils/__init__.py +0 -0
  196. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/utils/data_utils.py +0 -0
  197. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/utils/empty_patch_fetcher.py +0 -0
  198. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/utils/index_manager.py +0 -0
  199. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/dataset/utils/index_switcher.py +0 -0
  200. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/eval_utils.py +0 -0
  201. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/get_config.py +0 -0
  202. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/lightning_module.py +0 -0
  203. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/metrics.py +0 -0
  204. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/train_lvae.py +0 -0
  205. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/lvae_training/train_utils.py +0 -0
  206. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/model_io/__init__.py +0 -0
  207. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/model_io/bioimage/__init__.py +0 -0
  208. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/model_io/bioimage/_readme_factory.py +0 -0
  209. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/model_io/bioimage/bioimage_utils.py +0 -0
  210. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/model_io/bioimage/cover_factory.py +0 -0
  211. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/model_io/model_io_utils.py +0 -0
  212. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/__init__.py +0 -0
  213. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/activation.py +0 -0
  214. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/lvae/__init__.py +0 -0
  215. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/lvae/layers.py +0 -0
  216. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/lvae/likelihoods.py +0 -0
  217. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/lvae/lvae.py +0 -0
  218. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/lvae/noise_models.py +0 -0
  219. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/lvae/stochastic.py +0 -0
  220. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/lvae/utils.py +0 -0
  221. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/models/model_factory.py +0 -0
  222. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/prediction_utils/__init__.py +0 -0
  223. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/prediction_utils/lvae_tiling_manager.py +0 -0
  224. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/prediction_utils/prediction_outputs.py +0 -0
  225. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/prediction_utils/stitch_prediction.py +0 -0
  226. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/py.typed +0 -0
  227. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/__init__.py +0 -0
  228. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/struct_mask_parameters.py +0 -0
  229. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/transform.py +0 -0
  230. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/transforms/tta.py +0 -0
  231. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/__init__.py +0 -0
  232. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/autocorrelation.py +0 -0
  233. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/base_enum.py +0 -0
  234. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/context.py +0 -0
  235. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/lightning_utils.py +0 -0
  236. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/path_utils.py +0 -0
  237. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/ram.py +0 -0
  238. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/receptive_field.py +0 -0
  239. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/serializers.py +0 -0
  240. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/torch_utils.py +0 -0
  241. {careamics-0.0.13 → careamics-0.0.15}/src/careamics/utils/version.py +0 -0
  242. {careamics-0.0.13 → careamics-0.0.15}/tests/cli/__init__.py +0 -0
  243. {careamics-0.0.13 → careamics-0.0.15}/tests/cli/test_conf.py +0 -0
  244. {careamics-0.0.13 → careamics-0.0.15}/tests/cli/test_main.py +0 -0
  245. {careamics-0.0.13 → careamics-0.0.15}/tests/config/algorithms/test_care_algorithm_model.py +0 -0
  246. {careamics-0.0.13 → careamics-0.0.15}/tests/config/algorithms/test_n2n_algorithm_model.py +0 -0
  247. {careamics-0.0.13 → careamics-0.0.15}/tests/config/algorithms/test_n2v_algorithm_model.py +0 -0
  248. {careamics-0.0.13 → careamics-0.0.15}/tests/config/architectures/test_architecture_model.py +0 -0
  249. {careamics-0.0.13 → careamics-0.0.15}/tests/config/architectures/test_lvae_model.py +0 -0
  250. {careamics-0.0.13 → careamics-0.0.15}/tests/config/architectures/test_unet_model.py +0 -0
  251. {careamics-0.0.13 → careamics-0.0.15}/tests/config/data/patching_strategies/test_strategies.py +0 -0
  252. {careamics-0.0.13 → careamics-0.0.15}/tests/config/data/test_data_model.py +0 -0
  253. {careamics-0.0.13 → careamics-0.0.15}/tests/config/data/test_ng_data_model.py +0 -0
  254. {careamics-0.0.13 → careamics-0.0.15}/tests/config/support/test_supported_data.py +0 -0
  255. {careamics-0.0.13 → careamics-0.0.15}/tests/config/support/test_supported_optimizers.py +0 -0
  256. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_callback_models.py +0 -0
  257. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_configuration.py +0 -0
  258. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_configuration_factories.py +0 -0
  259. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_configuration_io.py +0 -0
  260. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_inference_model.py +0 -0
  261. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_n2v_preprocessing.py +0 -0
  262. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_optimizers_model.py +0 -0
  263. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_tile_information.py +0 -0
  264. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_training_model.py +0 -0
  265. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_unet_algorithm_model.py +0 -0
  266. {careamics-0.0.13 → careamics-0.0.15}/tests/config/test_vae_algorithm_model.py +0 -0
  267. {careamics-0.0.13 → careamics-0.0.15}/tests/config/transformations/test_n2v_manipulate_model.py +0 -0
  268. {careamics-0.0.13 → careamics-0.0.15}/tests/config/transformations/test_normalize_model.py +0 -0
  269. {careamics-0.0.13 → careamics-0.0.15}/tests/config/transformations/test_xy_flip_model.py +0 -0
  270. {careamics-0.0.13 → careamics-0.0.15}/tests/config/transformations/test_xy_random_rotate90_model.py +0 -0
  271. {careamics-0.0.13 → careamics-0.0.15}/tests/config/validators/test_model_validators.py +0 -0
  272. {careamics-0.0.13 → careamics-0.0.15}/tests/config/validators/test_validator_utils.py +0 -0
  273. {careamics-0.0.13 → careamics-0.0.15}/tests/conftest.py +0 -0
  274. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/dataset_utils/test_compute_normalization_stats.py +0 -0
  275. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/dataset_utils/test_list_files.py +0 -0
  276. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/patching/test_patching_utils.py +0 -0
  277. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/patching/test_random_patching.py +0 -0
  278. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/patching/test_sequential_patching.py +0 -0
  279. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/test_in_memory_dataset.py +0 -0
  280. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/test_in_memory_pred_dataset.py +0 -0
  281. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/test_in_memory_tiled_pred_dataset.py +0 -0
  282. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/test_iterable_dataset.py +0 -0
  283. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/test_iterable_pred_dataset.py +0 -0
  284. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/test_iterable_tiled_pred_dataset.py +0 -0
  285. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/tiling/test_collate_tiles.py +0 -0
  286. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/tiling/test_lvae_tiled_patching.py +0 -0
  287. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset/tiling/test_tiled_patching.py +0 -0
  288. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset_ng/dataset/test_dataset.py +0 -0
  289. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset_ng/patch_extractor/image_stack/test_import_czi_image_stack.py +0 -0
  290. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset_ng/patch_extractor/image_stack/test_zarr_image_stack.py +0 -0
  291. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset_ng/patching_strategies/test_all_strategies.py +0 -0
  292. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset_ng/patching_strategies/test_sequential_patching_ng.py +0 -0
  293. {careamics-0.0.13 → careamics-0.0.15}/tests/dataset_ng/patching_strategies/test_tiling_strategy.py +0 -0
  294. {careamics-0.0.13 → careamics-0.0.15}/tests/file_io/read/test_get_read_func.py +0 -0
  295. {careamics-0.0.13 → careamics-0.0.15}/tests/file_io/read/test_read_tiff.py +0 -0
  296. {careamics-0.0.13 → careamics-0.0.15}/tests/file_io/write/test_get_write_func.py +0 -0
  297. {careamics-0.0.13 → careamics-0.0.15}/tests/file_io/write/test_write_tiff.py +0 -0
  298. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/callbacks/prediction_writer_callback/test_cache_tiles_write_strategy.py +0 -0
  299. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/callbacks/prediction_writer_callback/test_file_path_utils.py +0 -0
  300. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/callbacks/prediction_writer_callback/test_prediction_writer_callback.py +0 -0
  301. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/callbacks/prediction_writer_callback/test_write_image_write_strategy.py +0 -0
  302. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/callbacks/prediction_writer_callback/test_write_strategy_factory.py +0 -0
  303. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/test_lightning_api.py +0 -0
  304. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/test_lightning_module.py +0 -0
  305. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/test_lightning_module_onnx_exportability.py +0 -0
  306. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/test_predict_data_module.py +0 -0
  307. {careamics-0.0.13 → careamics-0.0.15}/tests/lightning/test_train_data_module.py +0 -0
  308. {careamics-0.0.13 → careamics-0.0.15}/tests/likelihood_modules/test_likelihoods.py +0 -0
  309. {careamics-0.0.13 → careamics-0.0.15}/tests/losses/test_lvae_losses.py +0 -0
  310. {careamics-0.0.13 → careamics-0.0.15}/tests/model_io/test_bmz_io.py +0 -0
  311. {careamics-0.0.13 → careamics-0.0.15}/tests/models/lvae/test_lvae_architecture.py +0 -0
  312. {careamics-0.0.13 → careamics-0.0.15}/tests/models/lvae/test_noise_model.py +0 -0
  313. {careamics-0.0.13 → careamics-0.0.15}/tests/models/lvae/test_utils.py +0 -0
  314. {careamics-0.0.13 → careamics-0.0.15}/tests/models/test_model_factory.py +0 -0
  315. {careamics-0.0.13 → careamics-0.0.15}/tests/models/test_unet.py +0 -0
  316. {careamics-0.0.13 → careamics-0.0.15}/tests/prediction_utils/test_lvae_prediction.py +0 -0
  317. {careamics-0.0.13 → careamics-0.0.15}/tests/prediction_utils/test_prediction_outputs.py +0 -0
  318. {careamics-0.0.13 → careamics-0.0.15}/tests/prediction_utils/test_stitch_prediction.py +0 -0
  319. {careamics-0.0.13 → careamics-0.0.15}/tests/test_careamist.py +0 -0
  320. {careamics-0.0.13 → careamics-0.0.15}/tests/test_conftest.py +0 -0
  321. {careamics-0.0.13 → careamics-0.0.15}/tests/transforms/test_compose.py +0 -0
  322. {careamics-0.0.13 → careamics-0.0.15}/tests/transforms/test_manipulate_n2v.py +0 -0
  323. {careamics-0.0.13 → careamics-0.0.15}/tests/transforms/test_normalize.py +0 -0
  324. {careamics-0.0.13 → careamics-0.0.15}/tests/transforms/test_pixel_manipulation.py +0 -0
  325. {careamics-0.0.13 → careamics-0.0.15}/tests/transforms/test_tta.py +0 -0
  326. {careamics-0.0.13 → careamics-0.0.15}/tests/transforms/test_xy_flip.py +0 -0
  327. {careamics-0.0.13 → careamics-0.0.15}/tests/transforms/test_xy_random_rotate90.py +0 -0
  328. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_autocorrelation.py +0 -0
  329. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_base_enum.py +0 -0
  330. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_context.py +0 -0
  331. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_lightning_utils.py +0 -0
  332. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_logging.py +0 -0
  333. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_metrics.py +0 -0
  334. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_serializers.py +0 -0
  335. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_torch_utils.py +0 -0
  336. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_version.py +0 -0
  337. {careamics-0.0.13 → careamics-0.0.15}/tests/utils/test_wandb.py +0 -0
@@ -2,17 +2,14 @@ name: codecov
2
2
 
3
3
  on:
4
4
  push:
5
- branches:
6
- - main
7
5
  tags:
8
6
  - "v*"
9
- pull_request:
10
- workflow_dispatch:
11
7
 
12
8
  jobs:
13
- test:
9
+ codecov:
14
10
  name: ${{ matrix.platform }} (${{ matrix.python-version }})
15
11
  runs-on: ${{ matrix.platform }}
12
+ if: startsWith(github.ref, 'refs/tags/') && github.event_name != 'schedule'
16
13
  strategy:
17
14
  fail-fast: false
18
15
  matrix:
@@ -38,7 +35,7 @@ jobs:
38
35
  run: |
39
36
  python -m pip install -U pip
40
37
  # if running a cron job, we add the --pre flag to test against pre-releases
41
- python -m pip install .[dev] ${{ github.event_name == 'schedule' && '--pre' || '' }}
38
+ python -m pip install .[dev,czi] ${{ github.event_name == 'schedule' && '--pre' || '' }}
42
39
 
43
40
  - name: 🧪 Run Tests
44
41
  run: pytest --color=yes --cov --cov-config=pyproject.toml --cov-report=xml --cov-report=term-missing
@@ -14,7 +14,7 @@ repos:
14
14
  - id: validate-pyproject
15
15
 
16
16
  - repo: https://github.com/astral-sh/ruff-pre-commit
17
- rev: v0.11.12
17
+ rev: v0.12.2
18
18
  hooks:
19
19
  - id: ruff
20
20
  exclude: "^src/careamics/lvae_training/.*|^src/careamics/models/lvae/.*|^scripts/.*"
@@ -26,7 +26,7 @@ repos:
26
26
  - id: black
27
27
 
28
28
  - repo: https://github.com/pre-commit/mirrors-mypy
29
- rev: v1.16.0
29
+ rev: v1.16.1
30
30
  hooks:
31
31
  - id: mypy
32
32
  files: "^src/"
@@ -40,7 +40,7 @@ repos:
40
40
 
41
41
  # check docstrings
42
42
  - repo: https://github.com/numpy/numpydoc
43
- rev: v1.8.0
43
+ rev: v1.9.0
44
44
  hooks:
45
45
  - id: numpydoc-validation
46
46
  exclude: "^src/careamics/dataset_ng/.*|^src/careamics/lvae_training/.*|^src/careamics/models/lvae/.*|^src/careamics/losses/lvae/.*|^src/careamics/lightning/dataset_ng/data_module.py|^scripts/.*"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: careamics
3
- Version: 0.0.13
3
+ Version: 0.0.15
4
4
  Summary: Toolbox for running N2V and friends.
5
5
  Project-URL: homepage, https://careamics.github.io/
6
6
  Project-URL: repository, https://github.com/CAREamics/careamics
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 3.11
15
15
  Classifier: Programming Language :: Python :: 3.12
16
16
  Classifier: Typing :: Typed
17
17
  Requires-Python: >=3.10
18
- Requires-Dist: bioimageio-core==0.7
18
+ Requires-Dist: bioimageio-core==0.9.0
19
19
  Requires-Dist: matplotlib<=3.10.3
20
20
  Requires-Dist: numpy<2.0.0
21
21
  Requires-Dist: pillow<=11.2.1
@@ -28,7 +28,6 @@ Requires-Dist: tifffile<=2025.5.10
28
28
  Requires-Dist: torch<=2.7.1,>=2.0
29
29
  Requires-Dist: torchvision<=0.22.1
30
30
  Requires-Dist: typer<=0.16.0,>=0.12.3
31
- Requires-Dist: xarray<2025.3.0
32
31
  Requires-Dist: zarr<3.0.0
33
32
  Provides-Extra: czi
34
33
  Requires-Dist: pylibczirw<6.0.0,>=4.1.2; extra == 'czi'
@@ -44,7 +44,7 @@ dependencies = [
44
44
  'numpy<2.0.0',
45
45
  'torch>=2.0,<=2.7.1',
46
46
  'torchvision<=0.22.1',
47
- 'bioimageio.core==0.7',
47
+ 'bioimageio.core==0.9.0',
48
48
  'tifffile<=2025.5.10',
49
49
  'psutil<=7.0.0',
50
50
  'pydantic>=2.11,<=2.12',
@@ -55,7 +55,6 @@ dependencies = [
55
55
  'zarr<3.0.0',
56
56
  'pillow<=11.2.1',
57
57
  'matplotlib<=3.10.3',
58
- 'xarray<2025.3.0',
59
58
  ]
60
59
 
61
60
  [project.optional-dependencies]
@@ -2,7 +2,7 @@
2
2
 
3
3
  from collections.abc import Callable
4
4
  from pathlib import Path
5
- from typing import Any, Literal, Optional, Union, overload
5
+ from typing import Any, Literal, Union, overload
6
6
 
7
7
  import numpy as np
8
8
  from numpy.typing import NDArray
@@ -79,8 +79,8 @@ class CAREamist:
79
79
  def __init__( # numpydoc ignore=GL08
80
80
  self,
81
81
  source: Union[Path, str],
82
- work_dir: Optional[Union[Path, str]] = None,
83
- callbacks: Optional[list[Callback]] = None,
82
+ work_dir: Union[Path, str] | None = None,
83
+ callbacks: list[Callback] | None = None,
84
84
  enable_progress_bar: bool = True,
85
85
  ) -> None: ...
86
86
 
@@ -88,16 +88,16 @@ class CAREamist:
88
88
  def __init__( # numpydoc ignore=GL08
89
89
  self,
90
90
  source: Configuration,
91
- work_dir: Optional[Union[Path, str]] = None,
92
- callbacks: Optional[list[Callback]] = None,
91
+ work_dir: Union[Path, str] | None = None,
92
+ callbacks: list[Callback] | None = None,
93
93
  enable_progress_bar: bool = True,
94
94
  ) -> None: ...
95
95
 
96
96
  def __init__(
97
97
  self,
98
98
  source: Union[Path, str, Configuration],
99
- work_dir: Optional[Union[Path, str]] = None,
100
- callbacks: Optional[list[Callback]] = None,
99
+ work_dir: Union[Path, str] | None = None,
100
+ callbacks: list[Callback] | None = None,
101
101
  enable_progress_bar: bool = True,
102
102
  ) -> None:
103
103
  """
@@ -222,11 +222,11 @@ class CAREamist:
222
222
  )
223
223
 
224
224
  # place holder for the datamodules
225
- self.train_datamodule: Optional[TrainDataModule] = None
226
- self.pred_datamodule: Optional[PredictDataModule] = None
225
+ self.train_datamodule: TrainDataModule | None = None
226
+ self.pred_datamodule: PredictDataModule | None = None
227
227
 
228
228
  def _define_callbacks(
229
- self, callbacks: Optional[list[Callback]], enable_progress_bar: bool
229
+ self, callbacks: list[Callback] | None, enable_progress_bar: bool
230
230
  ) -> None:
231
231
  """Define the callbacks for the training loop.
232
232
 
@@ -288,11 +288,11 @@ class CAREamist:
288
288
  def train(
289
289
  self,
290
290
  *,
291
- datamodule: Optional[TrainDataModule] = None,
292
- train_source: Optional[Union[Path, str, NDArray]] = None,
293
- val_source: Optional[Union[Path, str, NDArray]] = None,
294
- train_target: Optional[Union[Path, str, NDArray]] = None,
295
- val_target: Optional[Union[Path, str, NDArray]] = None,
291
+ datamodule: TrainDataModule | None = None,
292
+ train_source: Union[Path, str, NDArray] | None = None,
293
+ val_source: Union[Path, str, NDArray] | None = None,
294
+ train_target: Union[Path, str, NDArray] | None = None,
295
+ val_target: Union[Path, str, NDArray] | None = None,
296
296
  use_in_memory: bool = True,
297
297
  val_percentage: float = 0.1,
298
298
  val_minimum_split: int = 1,
@@ -443,9 +443,9 @@ class CAREamist:
443
443
  def _train_on_array(
444
444
  self,
445
445
  train_data: NDArray,
446
- val_data: Optional[NDArray] = None,
447
- train_target: Optional[NDArray] = None,
448
- val_target: Optional[NDArray] = None,
446
+ val_data: NDArray | None = None,
447
+ train_target: NDArray | None = None,
448
+ val_target: NDArray | None = None,
449
449
  val_percentage: float = 0.1,
450
450
  val_minimum_split: int = 5,
451
451
  ) -> None:
@@ -484,9 +484,9 @@ class CAREamist:
484
484
  def _train_on_path(
485
485
  self,
486
486
  path_to_train_data: Union[Path, str],
487
- path_to_val_data: Optional[Union[Path, str]] = None,
488
- path_to_train_target: Optional[Union[Path, str]] = None,
489
- path_to_val_target: Optional[Union[Path, str]] = None,
487
+ path_to_val_data: Union[Path, str] | None = None,
488
+ path_to_train_target: Union[Path, str] | None = None,
489
+ path_to_val_target: Union[Path, str] | None = None,
490
490
  use_in_memory: bool = True,
491
491
  val_percentage: float = 0.1,
492
492
  val_minimum_split: int = 1,
@@ -549,13 +549,13 @@ class CAREamist:
549
549
  source: Union[Path, str],
550
550
  *,
551
551
  batch_size: int = 1,
552
- tile_size: Optional[tuple[int, ...]] = None,
553
- tile_overlap: Optional[tuple[int, ...]] = (48, 48),
554
- axes: Optional[str] = None,
555
- data_type: Optional[Literal["tiff", "custom"]] = None,
552
+ tile_size: tuple[int, ...] | None = None,
553
+ tile_overlap: tuple[int, ...] | None = (48, 48),
554
+ axes: str | None = None,
555
+ data_type: Literal["tiff", "custom"] | None = None,
556
556
  tta_transforms: bool = False,
557
- dataloader_params: Optional[dict] = None,
558
- read_source_func: Optional[Callable] = None,
557
+ dataloader_params: dict | None = None,
558
+ read_source_func: Callable | None = None,
559
559
  extension_filter: str = "",
560
560
  ) -> Union[list[NDArray], NDArray]: ...
561
561
 
@@ -565,12 +565,12 @@ class CAREamist:
565
565
  source: NDArray,
566
566
  *,
567
567
  batch_size: int = 1,
568
- tile_size: Optional[tuple[int, ...]] = None,
569
- tile_overlap: Optional[tuple[int, ...]] = (48, 48),
570
- axes: Optional[str] = None,
571
- data_type: Optional[Literal["array"]] = None,
568
+ tile_size: tuple[int, ...] | None = None,
569
+ tile_overlap: tuple[int, ...] | None = (48, 48),
570
+ axes: str | None = None,
571
+ data_type: Literal["array"] | None = None,
572
572
  tta_transforms: bool = False,
573
- dataloader_params: Optional[dict] = None,
573
+ dataloader_params: dict | None = None,
574
574
  ) -> Union[list[NDArray], NDArray]: ...
575
575
 
576
576
  def predict(
@@ -578,13 +578,13 @@ class CAREamist:
578
578
  source: Union[PredictDataModule, Path, str, NDArray],
579
579
  *,
580
580
  batch_size: int = 1,
581
- tile_size: Optional[tuple[int, ...]] = None,
582
- tile_overlap: Optional[tuple[int, ...]] = (48, 48),
583
- axes: Optional[str] = None,
584
- data_type: Optional[Literal["array", "tiff", "custom"]] = None,
581
+ tile_size: tuple[int, ...] | None = None,
582
+ tile_overlap: tuple[int, ...] | None = (48, 48),
583
+ axes: str | None = None,
584
+ data_type: Literal["array", "tiff", "custom"] | None = None,
585
585
  tta_transforms: bool = False,
586
- dataloader_params: Optional[dict] = None,
587
- read_source_func: Optional[Callable] = None,
586
+ dataloader_params: dict | None = None,
587
+ read_source_func: Callable | None = None,
588
588
  extension_filter: str = "",
589
589
  **kwargs: Any,
590
590
  ) -> Union[list[NDArray], NDArray]:
@@ -704,18 +704,18 @@ class CAREamist:
704
704
  source: Union[PredictDataModule, Path, str],
705
705
  *,
706
706
  batch_size: int = 1,
707
- tile_size: Optional[tuple[int, ...]] = None,
708
- tile_overlap: Optional[tuple[int, ...]] = (48, 48),
709
- axes: Optional[str] = None,
710
- data_type: Optional[Literal["tiff", "custom"]] = None,
707
+ tile_size: tuple[int, ...] | None = None,
708
+ tile_overlap: tuple[int, ...] | None = (48, 48),
709
+ axes: str | None = None,
710
+ data_type: Literal["tiff", "custom"] | None = None,
711
711
  tta_transforms: bool = False,
712
- dataloader_params: Optional[dict] = None,
713
- read_source_func: Optional[Callable] = None,
712
+ dataloader_params: dict | None = None,
713
+ read_source_func: Callable | None = None,
714
714
  extension_filter: str = "",
715
715
  write_type: Literal["tiff", "custom"] = "tiff",
716
- write_extension: Optional[str] = None,
717
- write_func: Optional[WriteFunc] = None,
718
- write_func_kwargs: Optional[dict[str, Any]] = None,
716
+ write_extension: str | None = None,
717
+ write_func: WriteFunc | None = None,
718
+ write_func_kwargs: dict[str, Any] | None = None,
719
719
  prediction_dir: Union[Path, str] = "predictions",
720
720
  **kwargs,
721
721
  ) -> None:
@@ -885,8 +885,8 @@ class CAREamist:
885
885
  authors: list[dict],
886
886
  general_description: str,
887
887
  data_description: str,
888
- covers: Optional[list[Union[Path, str]]] = None,
889
- channel_names: Optional[list[str]] = None,
888
+ covers: list[Union[Path, str]] | None = None,
889
+ channel_names: list[str] | None = None,
890
890
  model_version: str = "0.1.0",
891
891
  ) -> None:
892
892
  """Export the model to the BioImage Model Zoo format.
@@ -3,7 +3,7 @@
3
3
  import sys
4
4
  from dataclasses import dataclass
5
5
  from pathlib import Path
6
- from typing import Annotated, Optional
6
+ from typing import Annotated
7
7
 
8
8
  import click
9
9
  import typer
@@ -135,10 +135,10 @@ def care( # numpydoc ignore=PR01
135
135
  ),
136
136
  ] = "mae",
137
137
  n_channels_in: Annotated[
138
- Optional[int], typer.Option(help="Number of channels in")
138
+ int | None, typer.Option(help="Number of channels in")
139
139
  ] = None,
140
140
  n_channels_out: Annotated[
141
- Optional[int], typer.Option(help="Number of channels out")
141
+ int | None, typer.Option(help="Number of channels out")
142
142
  ] = None,
143
143
  logger: Annotated[
144
144
  click.Choice,
@@ -222,10 +222,10 @@ def n2n( # numpydoc ignore=PR01
222
222
  ),
223
223
  ] = "mae",
224
224
  n_channels_in: Annotated[
225
- Optional[int], typer.Option(help="Number of channels in")
225
+ int | None, typer.Option(help="Number of channels in")
226
226
  ] = None,
227
227
  n_channels_out: Annotated[
228
- Optional[int], typer.Option(help="Number of channels out")
228
+ int | None, typer.Option(help="Number of channels out")
229
229
  ] = None,
230
230
  logger: Annotated[
231
231
  click.Choice,
@@ -300,7 +300,7 @@ def n2v( # numpydoc ignore=PR01
300
300
  ] = True,
301
301
  use_n2v2: Annotated[bool, typer.Option(help="Whether to use N2V2")] = False,
302
302
  n_channels: Annotated[
303
- Optional[int], typer.Option(help="Number of channels (in and out)")
303
+ int | None, typer.Option(help="Number of channels (in and out)")
304
304
  ] = None,
305
305
  roi_size: Annotated[int, typer.Option(help="N2V pixel manipulation area.")] = 11,
306
306
  masked_pixel_percentage: Annotated[
@@ -7,7 +7,7 @@ its implementation is contained in the conf.py file.
7
7
  """
8
8
 
9
9
  from pathlib import Path
10
- from typing import Annotated, Optional
10
+ from typing import Annotated
11
11
 
12
12
  import click
13
13
  import typer
@@ -47,7 +47,7 @@ def train( # numpydoc ignore=PR01
47
47
  ),
48
48
  ],
49
49
  train_target: Annotated[
50
- Optional[Path],
50
+ Path | None,
51
51
  typer.Option(
52
52
  "--train-target",
53
53
  "-tt",
@@ -58,7 +58,7 @@ def train( # numpydoc ignore=PR01
58
58
  ),
59
59
  ] = None,
60
60
  val_source: Annotated[
61
- Optional[Path],
61
+ Path | None,
62
62
  typer.Option(
63
63
  "--val-source",
64
64
  "-vs",
@@ -69,7 +69,7 @@ def train( # numpydoc ignore=PR01
69
69
  ),
70
70
  ] = None,
71
71
  val_target: Annotated[
72
- Optional[Path],
72
+ Path | None,
73
73
  typer.Option(
74
74
  "--val-target",
75
75
  "-vt",
@@ -96,7 +96,7 @@ def train( # numpydoc ignore=PR01
96
96
  typer.Option(help="Minimum number of files to use for validation,"),
97
97
  ] = 1,
98
98
  work_dir: Annotated[
99
- Optional[Path],
99
+ Path | None,
100
100
  typer.Option(
101
101
  "--work-dir",
102
102
  "-wd",
@@ -142,7 +142,7 @@ def predict( # numpydoc ignore=PR01
142
142
  ],
143
143
  batch_size: Annotated[int, typer.Option(help="Batch size.")] = 1,
144
144
  tile_size: Annotated[
145
- Optional[click.Tuple],
145
+ click.Tuple | None,
146
146
  typer.Option(
147
147
  help=(
148
148
  "Size of the tiles to use for prediction, (if the data "
@@ -164,7 +164,7 @@ def predict( # numpydoc ignore=PR01
164
164
  ),
165
165
  ] = (48, 48, -1),
166
166
  axes: Annotated[
167
- Optional[str],
167
+ str | None,
168
168
  typer.Option(
169
169
  help="Axes of the input data. If unused the data is assumed to have the "
170
170
  "same axes as the original training data."
@@ -190,7 +190,7 @@ def predict( # numpydoc ignore=PR01
190
190
  ] = "tiff",
191
191
  # TODO: could make dataloader_params as json, necessary?
192
192
  work_dir: Annotated[
193
- Optional[Path],
193
+ Path | None,
194
194
  typer.Option(
195
195
  "--work-dir",
196
196
  "-wd",
@@ -1,11 +1,9 @@
1
1
  """Utility functions for the CAREamics CLI."""
2
2
 
3
- from typing import Optional
4
-
5
3
 
6
4
  def handle_2D_3D_callback(
7
- value: Optional[tuple[int, int, int]],
8
- ) -> Optional[tuple[int, ...]]:
5
+ value: tuple[int, int, int] | None,
6
+ ) -> tuple[int, ...] | None:
9
7
  """
10
8
  Callback for options that require 2D or 3D inputs.
11
9
 
@@ -3,7 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from pprint import pformat
6
- from typing import Literal, Optional
6
+ from typing import Literal
7
7
 
8
8
  from pydantic import BaseModel, ConfigDict, model_validator
9
9
  from typing_extensions import Self
@@ -45,9 +45,9 @@ class VAEBasedAlgorithm(BaseModel):
45
45
  # NOTE: these are all configs (pydantic models)
46
46
  loss: LVAELossConfig
47
47
  model: LVAEModel
48
- noise_model: Optional[MultiChannelNMConfig] = None
49
- noise_model_likelihood: Optional[NMLikelihoodConfig] = None
50
- gaussian_likelihood: Optional[GaussianLikelihoodConfig] = None
48
+ noise_model: MultiChannelNMConfig | None = None
49
+ noise_model_likelihood: NMLikelihoodConfig | None = None
50
+ gaussian_likelihood: GaussianLikelihoodConfig | None = None
51
51
 
52
52
  # Optional fields
53
53
  optimizer: OptimizerModel = OptimizerModel()
@@ -3,7 +3,7 @@
3
3
  from __future__ import annotations
4
4
 
5
5
  from datetime import timedelta
6
- from typing import Literal, Optional
6
+ from typing import Literal
7
7
 
8
8
  from pydantic import (
9
9
  BaseModel,
@@ -33,7 +33,7 @@ class CheckpointModel(BaseModel):
33
33
  save_weights_only: bool = Field(default=False)
34
34
  """When `True`, only the model's weights will be saved (model.save_weights)."""
35
35
 
36
- save_last: Optional[Literal[True, False, "link"]] = Field(default=True)
36
+ save_last: Literal[True, False, "link"] | None = Field(default=True)
37
37
  """When `True`, saves a last.ckpt copy whenever a checkpoint file gets saved."""
38
38
 
39
39
  save_top_k: int = Field(default=3, ge=-1, le=100)
@@ -51,13 +51,13 @@ class CheckpointModel(BaseModel):
51
51
  auto_insert_metric_name: bool = Field(default=False)
52
52
  """When `True`, the checkpoints filenames will contain the metric name."""
53
53
 
54
- every_n_train_steps: Optional[int] = Field(default=None, ge=1, le=1000)
54
+ every_n_train_steps: int | None = Field(default=None, ge=1, le=1000)
55
55
  """Number of training steps between checkpoints."""
56
56
 
57
- train_time_interval: Optional[timedelta] = Field(default=None)
57
+ train_time_interval: timedelta | None = Field(default=None)
58
58
  """Checkpoints are monitored at the specified time interval."""
59
59
 
60
- every_n_epochs: Optional[int] = Field(default=None, ge=1, le=100)
60
+ every_n_epochs: int | None = Field(default=None, ge=1, le=100)
61
61
  """Number of epochs between checkpoints."""
62
62
 
63
63
 
@@ -96,14 +96,14 @@ class EarlyStoppingModel(BaseModel):
96
96
  """When `True`, stops training when the monitored quantity becomes `NaN` or
97
97
  `inf`."""
98
98
 
99
- stopping_threshold: Optional[float] = Field(default=None)
99
+ stopping_threshold: float | None = Field(default=None)
100
100
  """Stop training immediately once the monitored quantity reaches this threshold."""
101
101
 
102
- divergence_threshold: Optional[float] = Field(default=None)
102
+ divergence_threshold: float | None = Field(default=None)
103
103
  """Stop training as soon as the monitored quantity becomes worse than this
104
104
  threshold."""
105
105
 
106
- check_on_train_epoch_end: Optional[bool] = Field(default=False)
106
+ check_on_train_epoch_end: bool | None = Field(default=False)
107
107
  """Whether to run early stopping at the end of the training epoch. If this is
108
108
  `False`, then the check runs at the end of the validation."""
109
109