careamics 0.0.2__tar.gz → 0.0.4__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 (276) hide show
  1. {careamics-0.0.2 → careamics-0.0.4}/.github/workflows/ci.yml +1 -6
  2. careamics-0.0.4/.github/workflows/codecov.yml +49 -0
  3. careamics-0.0.4/.github/workflows/lvae.yml +62 -0
  4. {careamics-0.0.2 → careamics-0.0.4}/.pre-commit-config.yaml +7 -6
  5. {careamics-0.0.2 → careamics-0.0.4}/PKG-INFO +5 -4
  6. careamics-0.0.4/codecov.yml +5 -0
  7. careamics-0.0.4/mypy.ini +17 -0
  8. {careamics-0.0.2 → careamics-0.0.4}/pyproject.toml +16 -3
  9. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/careamist.py +39 -28
  10. careamics-0.0.4/src/careamics/cli/__init__.py +5 -0
  11. careamics-0.0.4/src/careamics/cli/conf.py +391 -0
  12. careamics-0.0.4/src/careamics/cli/main.py +134 -0
  13. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/__init__.py +7 -3
  14. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/architectures/__init__.py +2 -2
  15. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/architectures/architecture_model.py +1 -1
  16. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/architectures/custom_model.py +11 -8
  17. careamics-0.0.4/src/careamics/config/architectures/lvae_model.py +170 -0
  18. careamics-0.0.4/src/careamics/config/configuration_factory.py +886 -0
  19. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/configuration_model.py +6 -3
  20. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/data_model.py +31 -20
  21. careamics-0.0.2/src/careamics/config/algorithm_model.py → careamics-0.0.4/src/careamics/config/fcn_algorithm_model.py +35 -45
  22. careamics-0.0.4/src/careamics/config/likelihood_model.py +60 -0
  23. careamics-0.0.4/src/careamics/config/nm_model.py +127 -0
  24. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/optimizer_models.py +3 -1
  25. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/supported_activations.py +1 -0
  26. careamics-0.0.4/src/careamics/config/support/supported_algorithms.py +33 -0
  27. careamics-0.0.4/src/careamics/config/support/supported_architectures.py +17 -0
  28. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/supported_losses.py +3 -1
  29. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/supported_optimizers.py +1 -1
  30. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/supported_transforms.py +1 -0
  31. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/training_model.py +35 -6
  32. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/transformations/__init__.py +4 -1
  33. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/transformations/n2v_manipulate_model.py +1 -1
  34. careamics-0.0.4/src/careamics/config/transformations/transform_union.py +20 -0
  35. careamics-0.0.4/src/careamics/config/vae_algorithm_model.py +137 -0
  36. careamics-0.0.4/src/careamics/dataset/tiling/lvae_tiled_patching.py +364 -0
  37. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/file_io/read/tiff.py +1 -1
  38. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/__init__.py +3 -2
  39. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/callbacks/hyperparameters_callback.py +1 -1
  40. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/callbacks/prediction_writer_callback/write_strategy_factory.py +1 -1
  41. careamics-0.0.4/src/careamics/lightning/lightning_module.py +634 -0
  42. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/predict_data_module.py +2 -2
  43. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/train_data_module.py +4 -4
  44. careamics-0.0.4/src/careamics/losses/__init__.py +15 -0
  45. careamics-0.0.4/src/careamics/losses/fcn/__init__.py +1 -0
  46. {careamics-0.0.2/src/careamics/losses → careamics-0.0.4/src/careamics/losses/fcn}/losses.py +1 -1
  47. careamics-0.0.4/src/careamics/losses/loss_factory.py +155 -0
  48. careamics-0.0.4/src/careamics/losses/lvae/__init__.py +1 -0
  49. careamics-0.0.4/src/careamics/losses/lvae/loss_utils.py +83 -0
  50. careamics-0.0.4/src/careamics/losses/lvae/losses.py +445 -0
  51. careamics-0.0.4/src/careamics/lvae_training/dataset/__init__.py +15 -0
  52. careamics-0.0.4/src/careamics/lvae_training/dataset/config.py +123 -0
  53. careamics-0.0.4/src/careamics/lvae_training/dataset/lc_dataset.py +267 -0
  54. careamics-0.0.2/src/careamics/lvae_training/data_modules.py → careamics-0.0.4/src/careamics/lvae_training/dataset/multich_dataset.py +375 -501
  55. careamics-0.0.4/src/careamics/lvae_training/dataset/multifile_dataset.py +334 -0
  56. careamics-0.0.4/src/careamics/lvae_training/dataset/types.py +43 -0
  57. careamics-0.0.4/src/careamics/lvae_training/dataset/utils/data_utils.py +114 -0
  58. careamics-0.0.4/src/careamics/lvae_training/dataset/utils/empty_patch_fetcher.py +65 -0
  59. careamics-0.0.4/src/careamics/lvae_training/dataset/utils/index_manager.py +232 -0
  60. careamics-0.0.4/src/careamics/lvae_training/dataset/utils/index_switcher.py +165 -0
  61. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lvae_training/eval_utils.py +109 -64
  62. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lvae_training/get_config.py +1 -1
  63. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lvae_training/train_lvae.py +6 -3
  64. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/model_io/bioimage/bioimage_utils.py +1 -1
  65. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/model_io/bioimage/model_description.py +2 -2
  66. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/model_io/bmz_io.py +20 -7
  67. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/model_io/model_io_utils.py +16 -4
  68. careamics-0.0.4/src/careamics/models/__init__.py +5 -0
  69. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/models/activation.py +2 -0
  70. careamics-0.0.4/src/careamics/models/lvae/__init__.py +3 -0
  71. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/models/lvae/layers.py +21 -21
  72. careamics-0.0.4/src/careamics/models/lvae/likelihoods.py +373 -0
  73. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/models/lvae/lvae.py +60 -148
  74. careamics-0.0.4/src/careamics/models/lvae/noise_models.py +541 -0
  75. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/models/lvae/utils.py +2 -2
  76. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/models/model_factory.py +22 -7
  77. careamics-0.0.4/src/careamics/prediction_utils/lvae_prediction.py +158 -0
  78. careamics-0.0.4/src/careamics/prediction_utils/lvae_tiling_manager.py +362 -0
  79. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/prediction_utils/stitch_prediction.py +16 -2
  80. careamics-0.0.4/src/careamics/transforms/compose.py +182 -0
  81. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/n2v_manipulate.py +6 -2
  82. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/normalize.py +14 -3
  83. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/pixel_manipulation.py +1 -1
  84. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/xy_flip.py +16 -6
  85. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/xy_random_rotate90.py +16 -7
  86. careamics-0.0.4/src/careamics/utils/metrics.py +368 -0
  87. careamics-0.0.4/src/careamics/utils/serializers.py +60 -0
  88. careamics-0.0.4/tests/cli/__init__.py +1 -0
  89. careamics-0.0.4/tests/cli/test_conf.py +37 -0
  90. careamics-0.0.4/tests/cli/test_main.py +49 -0
  91. {careamics-0.0.2 → careamics-0.0.4}/tests/config/architectures/test_custom_model.py +14 -32
  92. careamics-0.0.4/tests/config/architectures/test_lvae_model.py +136 -0
  93. {careamics-0.0.2 → careamics-0.0.4}/tests/config/architectures/test_register_model.py +1 -0
  94. {careamics-0.0.2 → careamics-0.0.4}/tests/config/architectures/test_unet_model.py +6 -5
  95. careamics-0.0.4/tests/config/test_configuration_factory.py +402 -0
  96. {careamics-0.0.2 → careamics-0.0.4}/tests/config/test_data_model.py +22 -0
  97. careamics-0.0.2/tests/config/test_algorithm_model.py → careamics-0.0.4/tests/config/test_fcn_algorithm_model.py +31 -15
  98. {careamics-0.0.2 → careamics-0.0.4}/tests/config/test_training_model.py +8 -0
  99. careamics-0.0.4/tests/config/test_vae_algorithm_model.py +67 -0
  100. {careamics-0.0.2 → careamics-0.0.4}/tests/conftest.py +102 -11
  101. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/test_iterable_dataset.py +2 -2
  102. careamics-0.0.4/tests/dataset/tiling/test_lvae_tiled_patching.py +252 -0
  103. careamics-0.0.4/tests/lightning/test_LVAE_lightning_module.py +578 -0
  104. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/test_lightning_module.py +39 -34
  105. careamics-0.0.4/tests/likelihood_modules/test_likelihoods.py +99 -0
  106. careamics-0.0.4/tests/losses/test_lvae_losses.py +337 -0
  107. careamics-0.0.4/tests/models/lvae/test_multich_dataset.py +164 -0
  108. careamics-0.0.4/tests/models/lvae/test_multifile_dataset.py +86 -0
  109. careamics-0.0.4/tests/models/lvae/test_noise_model.py +143 -0
  110. {careamics-0.0.2 → careamics-0.0.4}/tests/models/test_model_factory.py +2 -13
  111. careamics-0.0.4/tests/prediction_utils/test_lvae_prediction.py +181 -0
  112. {careamics-0.0.2 → careamics-0.0.4}/tests/test_careamist.py +31 -0
  113. {careamics-0.0.2 → careamics-0.0.4}/tests/test_conftest.py +2 -2
  114. {careamics-0.0.2 → careamics-0.0.4}/tests/transforms/test_compose.py +29 -4
  115. {careamics-0.0.2 → careamics-0.0.4}/tests/transforms/test_normalize.py +22 -1
  116. {careamics-0.0.2 → careamics-0.0.4}/tests/transforms/test_pixel_manipulation.py +1 -1
  117. {careamics-0.0.2 → careamics-0.0.4}/tests/transforms/test_tta.py +2 -2
  118. {careamics-0.0.2 → careamics-0.0.4}/tests/transforms/test_xy_flip.py +42 -5
  119. {careamics-0.0.2 → careamics-0.0.4}/tests/transforms/test_xy_random_rotate90.py +41 -4
  120. careamics-0.0.4/tests/utils/test_metrics.py +72 -0
  121. careamics-0.0.4/tests/utils/test_serializers.py +65 -0
  122. careamics-0.0.2/examples/3D/example_flywing_3D.ipynb +0 -346
  123. careamics-0.0.2/examples/3D/n2v_flywing_3D.yml +0 -73
  124. careamics-0.0.2/examples/evaluate_LVAE.ipynb +0 -1356
  125. careamics-0.0.2/src/careamics/config/architectures/vae_model.py +0 -42
  126. careamics-0.0.2/src/careamics/config/configuration_factory.py +0 -575
  127. careamics-0.0.2/src/careamics/config/support/supported_algorithms.py +0 -20
  128. careamics-0.0.2/src/careamics/config/support/supported_architectures.py +0 -20
  129. careamics-0.0.2/src/careamics/lightning/lightning_module.py +0 -276
  130. careamics-0.0.2/src/careamics/losses/__init__.py +0 -5
  131. careamics-0.0.2/src/careamics/losses/loss_factory.py +0 -49
  132. careamics-0.0.2/src/careamics/lvae_training/data_utils.py +0 -618
  133. careamics-0.0.2/src/careamics/models/__init__.py +0 -7
  134. careamics-0.0.2/src/careamics/models/lvae/likelihoods.py +0 -312
  135. careamics-0.0.2/src/careamics/models/lvae/noise_models.py +0 -409
  136. careamics-0.0.2/src/careamics/transforms/compose.py +0 -107
  137. careamics-0.0.2/src/careamics/utils/metrics.py +0 -115
  138. careamics-0.0.2/tests/config/test_configuration_factory.py +0 -523
  139. careamics-0.0.2/tests/utils/test_metrics.py +0 -30
  140. {careamics-0.0.2 → careamics-0.0.4}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  141. {careamics-0.0.2 → careamics-0.0.4}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  142. {careamics-0.0.2 → careamics-0.0.4}/.github/TEST_FAIL_TEMPLATE.md +0 -0
  143. {careamics-0.0.2 → careamics-0.0.4}/.github/pull_request_template.md +0 -0
  144. {careamics-0.0.2 → careamics-0.0.4}/.gitignore +0 -0
  145. {careamics-0.0.2 → careamics-0.0.4}/LICENSE +0 -0
  146. {careamics-0.0.2 → careamics-0.0.4}/README.md +0 -0
  147. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/__init__.py +0 -0
  148. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/architectures/register_model.py +0 -0
  149. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/architectures/unet_model.py +0 -0
  150. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/callback_model.py +0 -0
  151. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/inference_model.py +0 -0
  152. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/references/__init__.py +0 -0
  153. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/references/algorithm_descriptions.py +0 -0
  154. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/references/references.py +0 -0
  155. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/__init__.py +0 -0
  156. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/supported_data.py +0 -0
  157. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/supported_loggers.py +0 -0
  158. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/supported_pixel_manipulations.py +0 -0
  159. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/support/supported_struct_axis.py +0 -0
  160. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/tile_information.py +0 -0
  161. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/transformations/normalize_model.py +0 -0
  162. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/transformations/transform_model.py +0 -0
  163. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/transformations/xy_flip_model.py +0 -0
  164. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/transformations/xy_random_rotate90_model.py +0 -0
  165. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/validators/__init__.py +0 -0
  166. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/config/validators/validator_utils.py +0 -0
  167. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/conftest.py +0 -0
  168. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/__init__.py +0 -0
  169. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/dataset_utils/__init__.py +0 -0
  170. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/dataset_utils/dataset_utils.py +0 -0
  171. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/dataset_utils/file_utils.py +0 -0
  172. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/dataset_utils/iterate_over_files.py +0 -0
  173. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/dataset_utils/running_stats.py +0 -0
  174. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/in_memory_dataset.py +0 -0
  175. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/in_memory_pred_dataset.py +0 -0
  176. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/in_memory_tiled_pred_dataset.py +0 -0
  177. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/iterable_dataset.py +0 -0
  178. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/iterable_pred_dataset.py +0 -0
  179. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/iterable_tiled_pred_dataset.py +0 -0
  180. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/patching/__init__.py +0 -0
  181. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/patching/patching.py +0 -0
  182. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/patching/random_patching.py +0 -0
  183. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/patching/sequential_patching.py +0 -0
  184. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/patching/validate_patch_dimension.py +0 -0
  185. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/tiling/__init__.py +0 -0
  186. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/tiling/collate_tiles.py +0 -0
  187. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/tiling/tiled_patching.py +0 -0
  188. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/dataset/zarr_dataset.py +0 -0
  189. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/file_io/__init__.py +0 -0
  190. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/file_io/read/__init__.py +0 -0
  191. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/file_io/read/get_func.py +0 -0
  192. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/file_io/read/zarr.py +0 -0
  193. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/file_io/write/__init__.py +0 -0
  194. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/file_io/write/get_func.py +0 -0
  195. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/file_io/write/tiff.py +0 -0
  196. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/callbacks/__init__.py +0 -0
  197. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/callbacks/prediction_writer_callback/__init__.py +0 -0
  198. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/callbacks/prediction_writer_callback/file_path_utils.py +0 -0
  199. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/callbacks/prediction_writer_callback/prediction_writer_callback.py +0 -0
  200. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/callbacks/prediction_writer_callback/write_strategy.py +0 -0
  201. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lightning/callbacks/progress_bar_callback.py +0 -0
  202. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lvae_training/__init__.py +0 -0
  203. {careamics-0.0.2/src/careamics/models/lvae → careamics-0.0.4/src/careamics/lvae_training/dataset/utils}/__init__.py +0 -0
  204. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lvae_training/lightning_module.py +0 -0
  205. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lvae_training/metrics.py +0 -0
  206. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/lvae_training/train_utils.py +0 -0
  207. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/model_io/__init__.py +0 -0
  208. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/model_io/bioimage/__init__.py +0 -0
  209. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/model_io/bioimage/_readme_factory.py +0 -0
  210. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/models/layers.py +0 -0
  211. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/models/unet.py +0 -0
  212. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/prediction_utils/__init__.py +0 -0
  213. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/prediction_utils/prediction_outputs.py +0 -0
  214. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/py.typed +0 -0
  215. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/__init__.py +0 -0
  216. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/struct_mask_parameters.py +0 -0
  217. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/transform.py +0 -0
  218. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/transforms/tta.py +0 -0
  219. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/__init__.py +0 -0
  220. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/autocorrelation.py +0 -0
  221. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/base_enum.py +0 -0
  222. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/context.py +0 -0
  223. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/logging.py +0 -0
  224. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/path_utils.py +0 -0
  225. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/ram.py +0 -0
  226. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/receptive_field.py +0 -0
  227. {careamics-0.0.2 → careamics-0.0.4}/src/careamics/utils/torch_utils.py +0 -0
  228. {careamics-0.0.2 → careamics-0.0.4}/tests/config/architectures/test_architecture_model.py +0 -0
  229. {careamics-0.0.2 → careamics-0.0.4}/tests/config/support/test_supported_data.py +0 -0
  230. {careamics-0.0.2 → careamics-0.0.4}/tests/config/support/test_supported_optimizers.py +0 -0
  231. {careamics-0.0.2 → careamics-0.0.4}/tests/config/test_callback_models.py +0 -0
  232. {careamics-0.0.2 → careamics-0.0.4}/tests/config/test_configuration_model.py +0 -0
  233. {careamics-0.0.2 → careamics-0.0.4}/tests/config/test_inference_model.py +0 -0
  234. {careamics-0.0.2 → careamics-0.0.4}/tests/config/test_optimizers_model.py +0 -0
  235. {careamics-0.0.2 → careamics-0.0.4}/tests/config/test_tile_information.py +0 -0
  236. {careamics-0.0.2 → careamics-0.0.4}/tests/config/transformations/test_n2v_manipulate_model.py +0 -0
  237. {careamics-0.0.2 → careamics-0.0.4}/tests/config/transformations/test_normalize_model.py +0 -0
  238. {careamics-0.0.2 → careamics-0.0.4}/tests/config/transformations/test_xy_flip_model.py +0 -0
  239. {careamics-0.0.2 → careamics-0.0.4}/tests/config/transformations/test_xy_random_rotate90_model.py +0 -0
  240. {careamics-0.0.2 → careamics-0.0.4}/tests/config/validators/test_validator_utils.py +0 -0
  241. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/dataset_utils/test_compute_normalization_stats.py +0 -0
  242. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/dataset_utils/test_list_files.py +0 -0
  243. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/patching/test_patching_utils.py +0 -0
  244. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/patching/test_random_patching.py +0 -0
  245. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/patching/test_sequential_patching.py +0 -0
  246. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/test_in_memory_dataset.py +0 -0
  247. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/test_in_memory_pred_dataset.py +0 -0
  248. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/test_in_memory_tiled_pred_dataset.py +0 -0
  249. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/test_iterable_pred_dataset.py +0 -0
  250. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/test_iterable_tiled_pred_dataset.py +0 -0
  251. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/tiling/test_collate_tiles.py +0 -0
  252. {careamics-0.0.2 → careamics-0.0.4}/tests/dataset/tiling/test_tiled_patching.py +0 -0
  253. {careamics-0.0.2 → careamics-0.0.4}/tests/file_io/read/test_get_read_func.py +0 -0
  254. {careamics-0.0.2 → careamics-0.0.4}/tests/file_io/read/test_read_tiff.py +0 -0
  255. {careamics-0.0.2 → careamics-0.0.4}/tests/file_io/write/test_get_write_func.py +0 -0
  256. {careamics-0.0.2 → careamics-0.0.4}/tests/file_io/write/test_write_tiff.py +0 -0
  257. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/callbacks/prediction_writer_callback/test_cache_tiles_write_strategy.py +0 -0
  258. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/callbacks/prediction_writer_callback/test_file_path_utils.py +0 -0
  259. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/callbacks/prediction_writer_callback/test_prediction_writer_callback.py +0 -0
  260. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/callbacks/prediction_writer_callback/test_write_image_write_strategy.py +0 -0
  261. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/callbacks/prediction_writer_callback/test_write_strategy_factory.py +0 -0
  262. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/test_lightning_api.py +0 -0
  263. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/test_predict_data_module.py +0 -0
  264. {careamics-0.0.2 → careamics-0.0.4}/tests/lightning/test_train_data_module.py +0 -0
  265. {careamics-0.0.2 → careamics-0.0.4}/tests/model_io/test_bmz_io.py +0 -0
  266. {careamics-0.0.2 → careamics-0.0.4}/tests/models/test_unet.py +0 -0
  267. {careamics-0.0.2 → careamics-0.0.4}/tests/prediction_utils/test_prediction_outputs.py +0 -0
  268. {careamics-0.0.2 → careamics-0.0.4}/tests/prediction_utils/test_stitch_prediction.py +0 -0
  269. {careamics-0.0.2 → careamics-0.0.4}/tests/transforms/test_manipulate_n2v.py +0 -0
  270. {careamics-0.0.2 → careamics-0.0.4}/tests/transforms/test_supported_transforms.py +0 -0
  271. {careamics-0.0.2 → careamics-0.0.4}/tests/utils/test_autocorrelation.py +0 -0
  272. {careamics-0.0.2 → careamics-0.0.4}/tests/utils/test_base_enum.py +0 -0
  273. {careamics-0.0.2 → careamics-0.0.4}/tests/utils/test_context.py +0 -0
  274. {careamics-0.0.2 → careamics-0.0.4}/tests/utils/test_logging.py +0 -0
  275. {careamics-0.0.2 → careamics-0.0.4}/tests/utils/test_torch_utils.py +0 -0
  276. {careamics-0.0.2 → careamics-0.0.4}/tests/utils/test_wandb.py +0 -0
@@ -53,7 +53,7 @@ jobs:
53
53
  python -m pip install .[dev] ${{ github.event_name == 'schedule' && '--pre' || '' }}
54
54
 
55
55
  - name: 🧪 Run Tests
56
- run: pytest --color=yes --cov --cov-config=pyproject.toml --cov-report=xml --cov-report=term-missing
56
+ run: pytest --color=yes -m "not lvae"
57
57
 
58
58
  # If something goes wrong with --pre tests, we can open an issue in the repo
59
59
  - name: 📝 Report --pre Failures
@@ -69,11 +69,6 @@ jobs:
69
69
  filename: .github/TEST_FAIL_TEMPLATE.md
70
70
  update_existing: true
71
71
 
72
- - name: Coverage
73
- uses: codecov/codecov-action@v3
74
- with:
75
- version: v0.7.3
76
-
77
72
  deploy:
78
73
  name: Release
79
74
  needs: test
@@ -0,0 +1,49 @@
1
+ name: codecov
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ tags:
8
+ - "v*"
9
+ pull_request:
10
+ workflow_dispatch:
11
+
12
+ jobs:
13
+ test:
14
+ name: ${{ matrix.platform }} (${{ matrix.python-version }})
15
+ runs-on: ${{ matrix.platform }}
16
+ strategy:
17
+ fail-fast: false
18
+ matrix:
19
+ python-version: ["3.9"]
20
+ platform: [ubuntu-latest]
21
+
22
+ steps:
23
+ - name: 🛑 Cancel Previous Runs
24
+ uses: styfle/cancel-workflow-action@0.11.0
25
+ with:
26
+ access_token: ${{ github.token }}
27
+
28
+ - uses: actions/checkout@v3
29
+
30
+ - name: 🐍 Set up Python ${{ matrix.python-version }}
31
+ uses: actions/setup-python@v4
32
+ with:
33
+ python-version: ${{ matrix.python-version }}
34
+ cache-dependency-path: "pyproject.toml"
35
+ cache: "pip"
36
+
37
+ - name: Install Dependencies
38
+ run: |
39
+ python -m pip install -U pip
40
+ # 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' || '' }}
42
+
43
+ - name: 🧪 Run Tests
44
+ run: pytest --color=yes --cov --cov-config=pyproject.toml --cov-report=xml --cov-report=term-missing
45
+
46
+ - name: Coverage
47
+ uses: codecov/codecov-action@v3
48
+ with:
49
+ version: v0.7.3
@@ -0,0 +1,62 @@
1
+ name: lvae
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ tags:
8
+ - "v*"
9
+ pull_request:
10
+ workflow_dispatch:
11
+ schedule:
12
+ # run every week (for --pre release tests)
13
+ - cron: "0 0 * * 0"
14
+
15
+ jobs:
16
+ test:
17
+ name: ${{ matrix.platform }} (${{ matrix.python-version }})
18
+ runs-on: ${{ matrix.platform }}
19
+ strategy:
20
+ fail-fast: false
21
+ matrix:
22
+ python-version: ["3.9"]
23
+ platform: [ubuntu-latest, windows-latest]
24
+
25
+ steps:
26
+ - name: 🛑 Cancel Previous Runs
27
+ uses: styfle/cancel-workflow-action@0.11.0
28
+ with:
29
+ access_token: ${{ github.token }}
30
+
31
+ - uses: actions/checkout@v3
32
+
33
+ - name: 🐍 Set up Python ${{ matrix.python-version }}
34
+ uses: actions/setup-python@v4
35
+ with:
36
+ python-version: ${{ matrix.python-version }}
37
+ cache-dependency-path: "pyproject.toml"
38
+ cache: "pip"
39
+
40
+ - name: Install Dependencies
41
+ run: |
42
+ python -m pip install -U pip
43
+ # if running a cron job, we add the --pre flag to test against pre-releases
44
+ python -m pip install .[dev] ${{ github.event_name == 'schedule' && '--pre' || '' }}
45
+
46
+ - name: 🧪 Run Tests
47
+ run: pytest --color=yes -m lvae
48
+
49
+ # If something goes wrong with --pre tests, we can open an issue in the repo
50
+ - name: 📝 Report --pre Failures
51
+ if: failure() && github.event_name == 'schedule'
52
+ uses: JasonEtco/create-an-issue@v2
53
+ env:
54
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
55
+ PLATFORM: ${{ matrix.platform }}
56
+ PYTHON: ${{ matrix.python-version }}
57
+ RUN_ID: ${{ github.run_id }}
58
+ TITLE: "[test-bot] pip install --pre is failing"
59
+ with:
60
+ filename: .github/TEST_FAIL_TEMPLATE.md
61
+ update_existing: true
62
+
@@ -9,12 +9,12 @@ ci:
9
9
 
10
10
  repos:
11
11
  - repo: https://github.com/abravalheri/validate-pyproject
12
- rev: v0.18
12
+ rev: v0.19
13
13
  hooks:
14
14
  - id: validate-pyproject
15
15
 
16
16
  - repo: https://github.com/astral-sh/ruff-pre-commit
17
- rev: v0.5.6
17
+ rev: v0.6.3
18
18
  hooks:
19
19
  - id: ruff
20
20
  exclude: "^src/careamics/lvae_training/.*|^src/careamics/models/lvae/.*"
@@ -26,11 +26,12 @@ repos:
26
26
  - id: black
27
27
 
28
28
  - repo: https://github.com/pre-commit/mirrors-mypy
29
- rev: v1.11.1
29
+ rev: v1.11.2
30
30
  hooks:
31
31
  - id: mypy
32
32
  files: "^src/"
33
- exclude: "^src/careamics/lvae_training/.*|^src/careamics/models/lvae/.*"
33
+ exclude: "^src/careamics/lvae_training/.*|^src/careamics/models/lvae/.*|^src/careamics/config/likelihood_model.py|^src/careamics/losses/loss_factory.py|^src/careamics/losses/lvae/losses.py"
34
+ args: ['--config-file', 'mypy.ini']
34
35
  additional_dependencies:
35
36
  - numpy
36
37
  - types-PyYAML
@@ -38,10 +39,10 @@ repos:
38
39
 
39
40
  # check docstrings
40
41
  - repo: https://github.com/numpy/numpydoc
41
- rev: v1.8.0rc2
42
+ rev: v1.8.0
42
43
  hooks:
43
44
  - id: numpydoc-validation
44
- exclude: "^src/careamics/lvae_training/.*|^src/careamics/models/lvae/.*"
45
+ exclude: "^src/careamics/lvae_training/.*|^src/careamics/models/lvae/.*|^src/careamics/losses/lvae/.*"
45
46
 
46
47
  # # jupyter linting and formatting
47
48
  # - repo: https://github.com/nbQA-dev/nbQA
@@ -1,10 +1,10 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: careamics
3
- Version: 0.0.2
3
+ Version: 0.0.4
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
7
- Author-email: Melisande Croft <melisande.croft@fht.org>, Joran Deschamps <joran.deschamps@fht.org>, Igor Zubarev <igor.zubarev@fht.org>
7
+ Author-email: CAREamics team <rse@fht.org>, Ashesh <ashesh.ashesh@fht.org>, Federico Carrara <federico.carrara@fht.org>, Melisande Croft <melisande.croft@fht.org>, Joran Deschamps <joran.deschamps@fht.org>, Vera Galinova <vera.galinova@fht.org>, Igor Zubarev <igor.zubarev@fht.org>
8
8
  License: BSD-3-Clause
9
9
  License-File: LICENSE
10
10
  Classifier: Development Status :: 3 - Alpha
@@ -16,16 +16,17 @@ Classifier: Programming Language :: Python :: 3.11
16
16
  Classifier: Programming Language :: Python :: 3.12
17
17
  Classifier: Typing :: Typed
18
18
  Requires-Python: >=3.9
19
- Requires-Dist: bioimageio-core>=0.6.0
19
+ Requires-Dist: bioimageio-core>=0.6.9
20
20
  Requires-Dist: numpy<2.0.0
21
21
  Requires-Dist: psutil
22
- Requires-Dist: pydantic>=2.5
22
+ Requires-Dist: pydantic<2.9,>=2.5
23
23
  Requires-Dist: pytorch-lightning>=2.2.0
24
24
  Requires-Dist: pyyaml
25
25
  Requires-Dist: scikit-image<=0.23.2
26
26
  Requires-Dist: tifffile
27
27
  Requires-Dist: torch>=2.0.0
28
28
  Requires-Dist: torchvision
29
+ Requires-Dist: typer==0.12.3
29
30
  Requires-Dist: zarr<3.0.0
30
31
  Provides-Extra: dev
31
32
  Requires-Dist: pre-commit; extra == 'dev'
@@ -0,0 +1,5 @@
1
+ coverage:
2
+ status:
3
+ project:
4
+ default:
5
+ threshold: 2%
@@ -0,0 +1,17 @@
1
+ [mypy]
2
+ ignore_missing_imports = True
3
+
4
+ [mypy-careamics.lvae_training.*]
5
+ follow_imports = skip
6
+
7
+ [mypy-careamics.models.lvae.*]
8
+ follow_imports = skip
9
+
10
+ [mypy-careamics.losses.loss_factory]
11
+ follow_imports = skip
12
+
13
+ [mypy-careamics.losses.lvae.losses]
14
+ follow_imports = skip
15
+
16
+ [mypy-careamics.config.likelihood_model]
17
+ follow_imports = skip
@@ -23,8 +23,12 @@ readme = "README.md"
23
23
  requires-python = ">=3.9"
24
24
  license = { text = "BSD-3-Clause" }
25
25
  authors = [
26
+ { name = 'CAREamics team', email = 'rse@fht.org' },
27
+ { name = 'Ashesh', email = 'ashesh.ashesh@fht.org' },
28
+ { name = 'Federico Carrara', email = 'federico.carrara@fht.org' },
26
29
  { name = 'Melisande Croft', email = 'melisande.croft@fht.org' },
27
30
  { name = 'Joran Deschamps', email = 'joran.deschamps@fht.org' },
31
+ { name = 'Vera Galinova', email = 'vera.galinova@fht.org' },
28
32
  { name = 'Igor Zubarev', email = 'igor.zubarev@fht.org' },
29
33
  ]
30
34
  classifiers = [
@@ -41,12 +45,13 @@ dependencies = [
41
45
  'numpy<2.0.0',
42
46
  'torch>=2.0.0',
43
47
  'torchvision',
44
- 'bioimageio.core>=0.6.0',
48
+ 'bioimageio.core>=0.6.9',
45
49
  'tifffile',
46
50
  'psutil',
47
- 'pydantic>=2.5',
51
+ 'pydantic>=2.5,<2.9',
48
52
  'pytorch_lightning>=2.2.0',
49
53
  'pyyaml',
54
+ 'typer==0.12.3',
50
55
  'scikit-image<=0.23.2',
51
56
  'zarr<3.0.0',
52
57
  ]
@@ -71,6 +76,10 @@ tensorboard = ["tensorboard", "protobuf==3.20.3"]
71
76
  homepage = "https://careamics.github.io/"
72
77
  repository = "https://github.com/CAREamics/careamics"
73
78
 
79
+ # cli
80
+ [project.scripts]
81
+ careamics = "careamics.cli.main:run"
82
+
74
83
  # https://beta.ruff.rs/docs
75
84
  [tool.ruff]
76
85
  line-length = 88
@@ -137,7 +146,10 @@ filterwarnings = [
137
146
  ]
138
147
  addopts = "-p no:doctest"
139
148
 
140
- #markers = ["gpu: marks tests as requiring gpu"]
149
+ markers = [
150
+ # "gpu: marks tests as requiring gpu",
151
+ "lvae: marks tests as testing lvae",
152
+ ]
141
153
 
142
154
  # https://coverage.readthedocs.io/en/6.4/config.html
143
155
  [tool.coverage.report]
@@ -181,3 +193,4 @@ exclude = [ # don't report on objects that match any of these regex
181
193
  "test_*",
182
194
  "src/careamics/lvae_training/*",
183
195
  ]
196
+
@@ -13,10 +13,7 @@ from pytorch_lightning.callbacks import (
13
13
  )
14
14
  from pytorch_lightning.loggers import TensorBoardLogger, WandbLogger
15
15
 
16
- from careamics.config import (
17
- Configuration,
18
- load_configuration,
19
- )
16
+ from careamics.config import Configuration, FCNAlgorithmConfig, load_configuration
20
17
  from careamics.config.support import (
21
18
  SupportedAlgorithm,
22
19
  SupportedArchitecture,
@@ -25,7 +22,7 @@ from careamics.config.support import (
25
22
  )
26
23
  from careamics.dataset.dataset_utils import reshape_array
27
24
  from careamics.lightning import (
28
- CAREamicsModule,
25
+ FCNModule,
29
26
  HyperParametersCallback,
30
27
  PredictDataModule,
31
28
  ProgressBarCallback,
@@ -51,8 +48,6 @@ class CAREamist:
51
48
  work_dir : str, optional
52
49
  Path to working directory in which to save checkpoints and logs,
53
50
  by default None.
54
- experiment_name : str, by default "CAREamics"
55
- Experiment name used for checkpoints.
56
51
  callbacks : list of Callback, optional
57
52
  List of callbacks to use during training and prediction, by default None.
58
53
 
@@ -78,8 +73,7 @@ class CAREamist:
78
73
  def __init__( # numpydoc ignore=GL08
79
74
  self,
80
75
  source: Union[Path, str],
81
- work_dir: Optional[str] = None,
82
- experiment_name: str = "CAREamics",
76
+ work_dir: Optional[Union[Path, str]] = None,
83
77
  callbacks: Optional[list[Callback]] = None,
84
78
  ) -> None: ...
85
79
 
@@ -87,8 +81,7 @@ class CAREamist:
87
81
  def __init__( # numpydoc ignore=GL08
88
82
  self,
89
83
  source: Configuration,
90
- work_dir: Optional[str] = None,
91
- experiment_name: str = "CAREamics",
84
+ work_dir: Optional[Union[Path, str]] = None,
92
85
  callbacks: Optional[list[Callback]] = None,
93
86
  ) -> None: ...
94
87
 
@@ -96,7 +89,6 @@ class CAREamist:
96
89
  self,
97
90
  source: Union[Path, str, Configuration],
98
91
  work_dir: Optional[Union[Path, str]] = None,
99
- experiment_name: str = "CAREamics",
100
92
  callbacks: Optional[list[Callback]] = None,
101
93
  ) -> None:
102
94
  """
@@ -109,18 +101,13 @@ class CAREamist:
109
101
 
110
102
  If no working directory is provided, the current working directory is used.
111
103
 
112
- If `source` is a checkpoint, then `experiment_name` is used to name the
113
- checkpoint, and is recorded in the configuration.
114
-
115
104
  Parameters
116
105
  ----------
117
106
  source : pathlib.Path or str or CAREamics Configuration
118
107
  Path to a configuration file or a trained model.
119
- work_dir : str, optional
108
+ work_dir : str or pathlib.Path, optional
120
109
  Path to working directory in which to save checkpoints and logs,
121
110
  by default None.
122
- experiment_name : str, optional
123
- Experiment name used for checkpoints, by default "CAREamics".
124
111
  callbacks : list of Callback, optional
125
112
  List of callbacks to use during training and prediction, by default None.
126
113
 
@@ -148,9 +135,12 @@ class CAREamist:
148
135
  self.cfg = source
149
136
 
150
137
  # instantiate model
151
- self.model = CAREamicsModule(
152
- algorithm_config=self.cfg.algorithm_config,
153
- )
138
+ if isinstance(self.cfg.algorithm_config, FCNAlgorithmConfig):
139
+ self.model = FCNModule(
140
+ algorithm_config=self.cfg.algorithm_config,
141
+ )
142
+ else:
143
+ raise NotImplementedError("Architecture not supported.")
154
144
 
155
145
  # path to configuration file or model
156
146
  else:
@@ -164,9 +154,12 @@ class CAREamist:
164
154
  self.cfg = load_configuration(source)
165
155
 
166
156
  # instantiate model
167
- self.model = CAREamicsModule(
168
- algorithm_config=self.cfg.algorithm_config,
169
- )
157
+ if isinstance(self.cfg.algorithm_config, FCNAlgorithmConfig):
158
+ self.model = FCNModule(
159
+ algorithm_config=self.cfg.algorithm_config,
160
+ ) # type: ignore
161
+ else:
162
+ raise NotImplementedError("Architecture not supported.")
170
163
 
171
164
  # attempt loading a pre-trained model
172
165
  else:
@@ -192,6 +185,13 @@ class CAREamist:
192
185
  # instantiate trainer
193
186
  self.trainer = Trainer(
194
187
  max_epochs=self.cfg.training_config.num_epochs,
188
+ precision=self.cfg.training_config.precision,
189
+ max_steps=self.cfg.training_config.max_steps,
190
+ check_val_every_n_epoch=self.cfg.training_config.check_val_every_n_epoch,
191
+ enable_progress_bar=self.cfg.training_config.enable_progress_bar,
192
+ accumulate_grad_batches=self.cfg.training_config.accumulate_grad_batches,
193
+ gradient_clip_val=self.cfg.training_config.gradient_clip_val,
194
+ gradient_clip_algorithm=self.cfg.training_config.gradient_clip_algorithm,
195
195
  callbacks=self.callbacks,
196
196
  default_root_dir=self.work_dir,
197
197
  logger=self.experiment_logger,
@@ -247,6 +247,12 @@ class CAREamist:
247
247
  EarlyStopping(self.cfg.training_config.early_stopping_callback)
248
248
  )
249
249
 
250
+ def stop_training(self) -> None:
251
+ """Stop the training loop."""
252
+ # raise stop training flag
253
+ self.trainer.should_stop = True
254
+ self.trainer.limit_val_batches = 0 # skip validation
255
+
250
256
  # TODO: is there are more elegant way than calling train again after _train_on_paths
251
257
  def train(
252
258
  self,
@@ -393,9 +399,14 @@ class CAREamist:
393
399
  datamodule : TrainDataModule
394
400
  Datamodule to train on.
395
401
  """
396
- # record datamodule
402
+ # register datamodule
397
403
  self.train_datamodule = datamodule
398
404
 
405
+ # set defaults (in case `stop_training` was called before)
406
+ self.trainer.should_stop = False
407
+ self.trainer.limit_val_batches = 1.0 # 100%
408
+
409
+ # train
399
410
  self.trainer.fit(self.model, datamodule=datamodule)
400
411
 
401
412
  def _train_on_array(
@@ -511,7 +522,7 @@ class CAREamist:
511
522
  tile_overlap: tuple[int, ...] = (48, 48),
512
523
  axes: Optional[str] = None,
513
524
  data_type: Optional[Literal["tiff", "custom"]] = None,
514
- tta_transforms: bool = True,
525
+ tta_transforms: bool = False,
515
526
  dataloader_params: Optional[dict] = None,
516
527
  read_source_func: Optional[Callable] = None,
517
528
  extension_filter: str = "",
@@ -527,7 +538,7 @@ class CAREamist:
527
538
  tile_overlap: tuple[int, ...] = (48, 48),
528
539
  axes: Optional[str] = None,
529
540
  data_type: Optional[Literal["array"]] = None,
530
- tta_transforms: bool = True,
541
+ tta_transforms: bool = False,
531
542
  dataloader_params: Optional[dict] = None,
532
543
  ) -> Union[list[NDArray], NDArray]: ...
533
544
 
@@ -540,7 +551,7 @@ class CAREamist:
540
551
  tile_overlap: Optional[tuple[int, ...]] = (48, 48),
541
552
  axes: Optional[str] = None,
542
553
  data_type: Optional[Literal["array", "tiff", "custom"]] = None,
543
- tta_transforms: bool = True,
554
+ tta_transforms: bool = False,
544
555
  dataloader_params: Optional[dict] = None,
545
556
  read_source_func: Optional[Callable] = None,
546
557
  extension_filter: str = "",
@@ -0,0 +1,5 @@
1
+ """
2
+ Package containing functions called by the careamics cli.
3
+
4
+ Built using third party package Typer.
5
+ """