kaiko-eva 0.2.0__tar.gz → 0.2.2__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 kaiko-eva might be problematic. Click here for more details.

Files changed (656) hide show
  1. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/PKG-INFO +16 -12
  2. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/README.md +13 -11
  3. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/pyproject.toml +3 -1
  4. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datasets/base.py +7 -2
  5. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/head.py +4 -2
  6. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/typings.py +2 -2
  7. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/transforms/__init__.py +2 -1
  8. kaiko_eva-0.2.2/src/eva/core/models/transforms/as_discrete.py +57 -0
  9. kaiko_eva-0.2.2/src/eva/core/models/wrappers/_utils.py +145 -0
  10. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/trainers/_recorder.py +4 -1
  11. kaiko_eva-0.2.2/src/eva/core/utils/suppress_logs.py +28 -0
  12. kaiko_eva-0.2.2/src/eva/vision/data/__init__.py +5 -0
  13. kaiko_eva-0.2.2/src/eva/vision/data/dataloaders/__init__.py +5 -0
  14. kaiko_eva-0.2.2/src/eva/vision/data/dataloaders/collate_fn/__init__.py +5 -0
  15. kaiko_eva-0.2.2/src/eva/vision/data/dataloaders/collate_fn/collection.py +22 -0
  16. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/__init__.py +2 -2
  17. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/bach.py +3 -4
  18. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/bracs.py +3 -4
  19. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/breakhis.py +3 -4
  20. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/camelyon16.py +4 -5
  21. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/crc.py +3 -4
  22. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/gleason_arvaniti.py +3 -4
  23. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/mhist.py +3 -4
  24. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/panda.py +4 -5
  25. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/patch_camelyon.py +3 -4
  26. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/unitopatho.py +3 -4
  27. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/wsi.py +6 -5
  28. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/__init__.py +2 -2
  29. kaiko_eva-0.2.2/src/eva/vision/data/datasets/segmentation/_utils.py +85 -0
  30. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/bcss.py +7 -8
  31. kaiko_eva-0.2.2/src/eva/vision/data/datasets/segmentation/btcv.py +236 -0
  32. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/consep.py +6 -7
  33. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/lits.py +9 -8
  34. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/lits_balanced.py +2 -1
  35. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/monusac.py +4 -5
  36. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/total_segmentator_2d.py +12 -10
  37. kaiko_eva-0.2.0/src/eva/vision/data/datasets/classification/base.py → kaiko_eva-0.2.2/src/eva/vision/data/datasets/vision.py +46 -25
  38. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/wsi.py +5 -5
  39. kaiko_eva-0.2.2/src/eva/vision/data/transforms/__init__.py +25 -0
  40. kaiko_eva-0.2.2/src/eva/vision/data/transforms/common/__init__.py +5 -0
  41. kaiko_eva-0.2.2/src/eva/vision/data/transforms/croppad/__init__.py +11 -0
  42. kaiko_eva-0.2.2/src/eva/vision/data/transforms/croppad/crop_foreground.py +110 -0
  43. kaiko_eva-0.2.2/src/eva/vision/data/transforms/croppad/rand_crop_by_pos_neg_label.py +109 -0
  44. kaiko_eva-0.2.2/src/eva/vision/data/transforms/croppad/spatial_pad.py +67 -0
  45. kaiko_eva-0.2.2/src/eva/vision/data/transforms/intensity/__init__.py +11 -0
  46. kaiko_eva-0.2.2/src/eva/vision/data/transforms/intensity/rand_scale_intensity.py +59 -0
  47. kaiko_eva-0.2.2/src/eva/vision/data/transforms/intensity/rand_shift_intensity.py +55 -0
  48. kaiko_eva-0.2.2/src/eva/vision/data/transforms/intensity/scale_intensity_ranged.py +56 -0
  49. kaiko_eva-0.2.2/src/eva/vision/data/transforms/spatial/__init__.py +7 -0
  50. kaiko_eva-0.2.2/src/eva/vision/data/transforms/spatial/flip.py +72 -0
  51. kaiko_eva-0.2.2/src/eva/vision/data/transforms/spatial/rotate.py +53 -0
  52. kaiko_eva-0.2.2/src/eva/vision/data/transforms/spatial/spacing.py +69 -0
  53. kaiko_eva-0.2.2/src/eva/vision/data/transforms/utility/__init__.py +5 -0
  54. kaiko_eva-0.2.2/src/eva/vision/data/transforms/utility/ensure_channel_first.py +51 -0
  55. kaiko_eva-0.2.2/src/eva/vision/data/tv_tensors/__init__.py +5 -0
  56. kaiko_eva-0.2.2/src/eva/vision/data/tv_tensors/volume.py +61 -0
  57. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/segmentation/monai_dice.py +9 -2
  58. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/modules/semantic_segmentation.py +32 -19
  59. kaiko_eva-0.2.2/src/eva/vision/models/networks/backbones/__init__.py +13 -0
  60. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/pathology/__init__.py +11 -2
  61. kaiko_eva-0.2.2/src/eva/vision/models/networks/backbones/pathology/bioptimus.py +80 -0
  62. kaiko_eva-0.2.2/src/eva/vision/models/networks/backbones/pathology/hkust.py +69 -0
  63. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/pathology/kaiko.py +18 -0
  64. kaiko_eva-0.2.2/src/eva/vision/models/networks/backbones/radiology/__init__.py +11 -0
  65. kaiko_eva-0.2.2/src/eva/vision/models/networks/backbones/radiology/swin_unetr.py +231 -0
  66. kaiko_eva-0.2.2/src/eva/vision/models/networks/backbones/radiology/voco.py +75 -0
  67. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/segmentation/__init__.py +6 -2
  68. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/segmentation/linear.py +5 -10
  69. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/segmentation/semantic/__init__.py +8 -1
  70. kaiko_eva-0.2.2/src/eva/vision/models/networks/decoders/segmentation/semantic/swin_unetr.py +104 -0
  71. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/utils/io/__init__.py +2 -0
  72. kaiko_eva-0.2.2/src/eva/vision/utils/io/nifti.py +169 -0
  73. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/btcv/imagesTr/img0001.nii.gz +3 -0
  74. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/btcv/imagesTr/img0002.nii.gz +3 -0
  75. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/btcv/labelsTr/label0001.nii.gz +3 -0
  76. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/btcv/labelsTr/label0002.nii.gz +3 -0
  77. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/lits/Training_Batch2/segmentation-31.nii +3 -0
  78. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/lits/Training_Batch2/segmentation-45.nii +3 -0
  79. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/lits/Training_Batch2/volume-31.nii +3 -0
  80. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/lits/Training_Batch2/volume-45.nii +3 -0
  81. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/ct.nii.gz +3 -0
  82. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/segmentations/aorta_small.nii.gz +3 -0
  83. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/segmentations/brain_small.nii.gz +3 -0
  84. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/segmentations/colon_small.nii.gz +3 -0
  85. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/segmentations/semantic_labels/masks.nii.gz +3 -0
  86. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/ct.nii.gz +3 -0
  87. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/segmentations/aorta_small.nii.gz +3 -0
  88. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/segmentations/brain_small.nii.gz +3 -0
  89. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/segmentations/colon_small.nii.gz +3 -0
  90. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/segmentations/semantic_labels/masks.nii.gz +3 -0
  91. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/ct.nii.gz +3 -0
  92. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/segmentations/aorta_small.nii.gz +3 -0
  93. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/segmentations/brain_small.nii.gz +3 -0
  94. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/segmentations/colon_small.nii.gz +3 -0
  95. kaiko_eva-0.2.2/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/segmentations/semantic_labels/masks.nii.gz +3 -0
  96. kaiko_eva-0.2.2/tests/eva/vision/data/datasets/segmentation/test_btcv.py +62 -0
  97. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/segmentation/test_lits.py +2 -2
  98. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/segmentation/test_lits_balanced.py +2 -2
  99. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/segmentation/test_total_segmentator.py +2 -2
  100. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/wsi/patching/samplers/test_foreground_grid.py +1 -0
  101. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/wsi/patching/samplers/test_random.py +1 -0
  102. kaiko_eva-0.2.2/tests/eva/vision/models/modules/test_semantic_segmentation.py +99 -0
  103. kaiko_eva-0.2.2/tests/eva/vision/models/networks/backbones/radiology/test_swin_unetr.py +55 -0
  104. kaiko_eva-0.2.0/tests/eva/vision/models/networks/decoders/segmentation/conv.py → kaiko_eva-0.2.2/tests/eva/vision/models/networks/decoders/segmentation/test_conv.py +5 -3
  105. kaiko_eva-0.2.0/tests/eva/vision/models/networks/decoders/segmentation/linear.py → kaiko_eva-0.2.2/tests/eva/vision/models/networks/decoders/segmentation/test_linear.py +5 -3
  106. kaiko_eva-0.2.2/tests/eva/vision/models/networks/decoders/segmentation/test_swin_unetr.py +32 -0
  107. kaiko_eva-0.2.0/src/eva/core/models/wrappers/_utils.py +0 -25
  108. kaiko_eva-0.2.0/src/eva/vision/data/__init__.py +0 -5
  109. kaiko_eva-0.2.0/src/eva/vision/data/datasets/segmentation/_utils.py +0 -38
  110. kaiko_eva-0.2.0/src/eva/vision/data/datasets/segmentation/base.py +0 -96
  111. kaiko_eva-0.2.0/src/eva/vision/data/datasets/vision.py +0 -26
  112. kaiko_eva-0.2.0/src/eva/vision/data/transforms/__init__.py +0 -6
  113. kaiko_eva-0.2.0/src/eva/vision/data/transforms/common/__init__.py +0 -6
  114. kaiko_eva-0.2.0/src/eva/vision/data/transforms/common/resize_and_clamp.py +0 -51
  115. kaiko_eva-0.2.0/src/eva/vision/data/transforms/normalization/__init__.py +0 -6
  116. kaiko_eva-0.2.0/src/eva/vision/data/transforms/normalization/clamp.py +0 -43
  117. kaiko_eva-0.2.0/src/eva/vision/data/transforms/normalization/functional/__init__.py +0 -5
  118. kaiko_eva-0.2.0/src/eva/vision/data/transforms/normalization/functional/rescale_intensity.py +0 -28
  119. kaiko_eva-0.2.0/src/eva/vision/data/transforms/normalization/rescale_intensity.py +0 -53
  120. kaiko_eva-0.2.0/src/eva/vision/metrics/segmentation/BUILD +0 -1
  121. kaiko_eva-0.2.0/src/eva/vision/models/networks/backbones/__init__.py +0 -6
  122. kaiko_eva-0.2.0/src/eva/vision/models/networks/backbones/pathology/bioptimus.py +0 -34
  123. kaiko_eva-0.2.0/src/eva/vision/models/networks/backbones/torchhub/__init__.py +0 -5
  124. kaiko_eva-0.2.0/src/eva/vision/models/networks/backbones/torchhub/backbones.py +0 -61
  125. kaiko_eva-0.2.0/src/eva/vision/utils/io/nifti.py +0 -89
  126. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/lits/Training_Batch2/segmentation-31.nii +0 -3
  127. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/lits/Training_Batch2/segmentation-45.nii +0 -3
  128. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/lits/Training_Batch2/volume-31.nii +0 -3
  129. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/lits/Training_Batch2/volume-45.nii +0 -3
  130. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/ct.nii.gz +0 -0
  131. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/segmentations/aorta_small.nii.gz +0 -0
  132. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/segmentations/brain_small.nii.gz +0 -0
  133. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/segmentations/colon_small.nii.gz +0 -0
  134. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0011/segmentations/semantic_labels/masks.nii.gz +0 -0
  135. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/ct.nii.gz +0 -0
  136. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/segmentations/aorta_small.nii.gz +0 -0
  137. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/segmentations/brain_small.nii.gz +0 -0
  138. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/segmentations/colon_small.nii.gz +0 -0
  139. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0461/segmentations/semantic_labels/masks.nii.gz +0 -0
  140. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/ct.nii.gz +0 -0
  141. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/segmentations/aorta_small.nii.gz +0 -0
  142. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/segmentations/brain_small.nii.gz +0 -0
  143. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/segmentations/colon_small.nii.gz +0 -0
  144. kaiko_eva-0.2.0/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/s0762/segmentations/semantic_labels/masks.nii.gz +0 -0
  145. kaiko_eva-0.2.0/tests/eva/vision/data/transforms/common/test_resize_and_clamp.py +0 -47
  146. kaiko_eva-0.2.0/tests/eva/vision/data/transforms/normalization/__init__.py +0 -1
  147. kaiko_eva-0.2.0/tests/eva/vision/data/transforms/normalization/functional/__init__.py +0 -1
  148. kaiko_eva-0.2.0/tests/eva/vision/data/transforms/normalization/functional/test_rescale_intensity.py +0 -37
  149. kaiko_eva-0.2.0/tests/eva/vision/models/modules/test_semantic_segmentation.py +0 -58
  150. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/LICENSE +0 -0
  151. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/__init__.py +0 -0
  152. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/__main__.py +0 -0
  153. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/__version__.py +0 -0
  154. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/__init__.py +0 -0
  155. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/__init__.py +0 -0
  156. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/config.py +0 -0
  157. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/writers/__init__.py +0 -0
  158. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/writers/embeddings/__init__.py +0 -0
  159. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/writers/embeddings/_manifest.py +0 -0
  160. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/writers/embeddings/base.py +0 -0
  161. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/writers/embeddings/classification.py +0 -0
  162. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/writers/embeddings/segmentation.py +0 -0
  163. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/callbacks/writers/embeddings/typings.py +0 -0
  164. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/cli/__init__.py +0 -0
  165. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/cli/cli.py +0 -0
  166. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/cli/logo.py +0 -0
  167. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/cli/setup.py +0 -0
  168. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/__init__.py +0 -0
  169. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/dataloaders/__init__.py +0 -0
  170. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/dataloaders/dataloader.py +0 -0
  171. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datamodules/__init__.py +0 -0
  172. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datamodules/call.py +0 -0
  173. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datamodules/datamodule.py +0 -0
  174. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datamodules/schemas.py +0 -0
  175. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datasets/__init__.py +0 -0
  176. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datasets/classification/__init__.py +0 -0
  177. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datasets/classification/embeddings.py +0 -0
  178. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datasets/classification/multi_embeddings.py +0 -0
  179. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datasets/dataset.py +0 -0
  180. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datasets/embeddings.py +0 -0
  181. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/datasets/typings.py +0 -0
  182. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/samplers/__init__.py +0 -0
  183. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/samplers/classification/__init__.py +0 -0
  184. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/samplers/classification/balanced.py +0 -0
  185. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/samplers/random.py +0 -0
  186. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/samplers/sampler.py +0 -0
  187. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/splitting/__init__.py +0 -0
  188. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/splitting/random.py +0 -0
  189. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/splitting/stratified.py +0 -0
  190. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/transforms/__init__.py +0 -0
  191. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/transforms/dtype/__init__.py +0 -0
  192. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/transforms/dtype/array.py +0 -0
  193. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/transforms/padding/__init__.py +0 -0
  194. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/transforms/padding/pad_2d_tensor.py +0 -0
  195. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/transforms/sampling/__init__.py +0 -0
  196. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/data/transforms/sampling/sample_from_axis.py +0 -0
  197. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/interface/__init__.py +0 -0
  198. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/interface/interface.py +0 -0
  199. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/__init__.py +0 -0
  200. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/dummy.py +0 -0
  201. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/experimental_loggers.py +0 -0
  202. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/log/__init__.py +0 -0
  203. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/log/image.py +0 -0
  204. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/log/parameters.py +0 -0
  205. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/log/utils.py +0 -0
  206. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/loggers.py +0 -0
  207. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/loggers/utils/wandb.py +0 -0
  208. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/losses/__init__.py +0 -0
  209. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/losses/cross_entropy.py +0 -0
  210. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/__init__.py +0 -0
  211. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/average_loss.py +0 -0
  212. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/binary_balanced_accuracy.py +0 -0
  213. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/defaults/__init__.py +0 -0
  214. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/defaults/classification/__init__.py +0 -0
  215. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/defaults/classification/binary.py +0 -0
  216. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/defaults/classification/multiclass.py +0 -0
  217. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/structs/__init__.py +0 -0
  218. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/structs/collection.py +0 -0
  219. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/structs/metric.py +0 -0
  220. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/structs/module.py +0 -0
  221. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/structs/schemas.py +0 -0
  222. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/metrics/structs/typings.py +0 -0
  223. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/__init__.py +0 -0
  224. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/__init__.py +0 -0
  225. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/inference.py +0 -0
  226. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/module.py +0 -0
  227. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/utils/__init__.py +0 -0
  228. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/utils/batch_postprocess.py +0 -0
  229. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/utils/checkpoint.py +0 -0
  230. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/modules/utils/grad.py +0 -0
  231. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/networks/__init__.py +0 -0
  232. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/networks/mlp.py +0 -0
  233. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/transforms/extract_cls_features.py +0 -0
  234. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/transforms/extract_patch_features.py +0 -0
  235. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/wrappers/__init__.py +0 -0
  236. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/wrappers/base.py +0 -0
  237. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/wrappers/from_function.py +0 -0
  238. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/wrappers/from_torchhub.py +0 -0
  239. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/wrappers/huggingface.py +0 -0
  240. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/models/wrappers/onnx.py +0 -0
  241. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/trainers/__init__.py +0 -0
  242. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/trainers/_logging.py +0 -0
  243. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/trainers/_utils.py +0 -0
  244. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/trainers/functional.py +0 -0
  245. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/trainers/trainer.py +0 -0
  246. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/__init__.py +0 -0
  247. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/clone.py +0 -0
  248. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/io/__init__.py +0 -0
  249. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/io/dataframe.py +0 -0
  250. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/io/gz.py +0 -0
  251. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/memory.py +0 -0
  252. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/multiprocessing.py +0 -0
  253. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/operations.py +0 -0
  254. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/parser.py +0 -0
  255. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/progress_bar.py +0 -0
  256. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/core/utils/workers.py +0 -0
  257. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/__init__.py +0 -0
  258. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/callbacks/__init__.py +0 -0
  259. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/callbacks/loggers/__init__.py +0 -0
  260. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/callbacks/loggers/batch/__init__.py +0 -0
  261. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/callbacks/loggers/batch/base.py +0 -0
  262. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/callbacks/loggers/batch/segmentation.py +0 -0
  263. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/_utils.py +0 -0
  264. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/_validators.py +0 -0
  265. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/classification/__init__.py +0 -0
  266. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/_total_segmentator.py +0 -0
  267. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/segmentation/embeddings.py +0 -0
  268. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/datasets/structs.py +0 -0
  269. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/transforms/common/resize_and_crop.py +0 -0
  270. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/__init__.py +0 -0
  271. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/backends/__init__.py +0 -0
  272. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/backends/base.py +0 -0
  273. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/backends/openslide.py +0 -0
  274. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/backends/pil.py +0 -0
  275. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/backends/tiffslide.py +0 -0
  276. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/__init__.py +0 -0
  277. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/coordinates.py +0 -0
  278. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/mask.py +0 -0
  279. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/samplers/__init__.py +0 -0
  280. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/samplers/_utils.py +0 -0
  281. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/samplers/base.py +0 -0
  282. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/samplers/foreground_grid.py +0 -0
  283. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/samplers/grid.py +0 -0
  284. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/data/wsi/patching/samplers/random.py +0 -0
  285. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/losses/__init__.py +0 -0
  286. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/losses/dice.py +0 -0
  287. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/__init__.py +0 -0
  288. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/defaults/__init__.py +0 -0
  289. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/defaults/segmentation/__init__.py +0 -0
  290. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/defaults/segmentation/multiclass.py +0 -0
  291. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/segmentation/__init__.py +0 -0
  292. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/segmentation/_utils.py +0 -0
  293. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/segmentation/dice.py +0 -0
  294. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/segmentation/generalized_dice.py +0 -0
  295. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/segmentation/mean_iou.py +0 -0
  296. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/wrappers/__init__.py +0 -0
  297. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/metrics/wrappers/monai.py +0 -0
  298. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/__init__.py +0 -0
  299. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/modules/__init__.py +0 -0
  300. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/__init__.py +0 -0
  301. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/abmil.py +0 -0
  302. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/_utils.py +0 -0
  303. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/pathology/gigapath.py +0 -0
  304. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/pathology/histai.py +0 -0
  305. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/pathology/lunit.py +0 -0
  306. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/pathology/mahmood.py +0 -0
  307. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/pathology/owkin.py +0 -0
  308. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/pathology/paige.py +0 -0
  309. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/registry.py +0 -0
  310. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/timm/__init__.py +0 -0
  311. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/timm/backbones.py +0 -0
  312. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/universal/__init__.py +0 -0
  313. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/backbones/universal/vit.py +0 -0
  314. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/__init__.py +0 -0
  315. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/segmentation/base.py +0 -0
  316. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/segmentation/decoder2d.py +0 -0
  317. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/segmentation/semantic/common.py +0 -0
  318. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/segmentation/semantic/with_image.py +0 -0
  319. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/networks/decoders/segmentation/typings.py +0 -0
  320. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/wrappers/__init__.py +0 -0
  321. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/wrappers/from_registry.py +0 -0
  322. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/models/wrappers/from_timm.py +0 -0
  323. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/utils/__init__.py +0 -0
  324. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/utils/colormap.py +0 -0
  325. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/utils/convert.py +0 -0
  326. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/utils/io/_utils.py +0 -0
  327. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/utils/io/image.py +0 -0
  328. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/utils/io/mat.py +0 -0
  329. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/src/eva/vision/utils/io/text.py +0 -0
  330. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/__init__.py +0 -0
  331. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/__init__.py +0 -0
  332. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/_cli.py +0 -0
  333. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/archives/test.txt.gz +0 -0
  334. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_0_shape_8.pt +0 -0
  335. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_1_shape_8.pt +0 -0
  336. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_2_shape_8_list.pt +0 -0
  337. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_3_shape_8_list.pt +0 -0
  338. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_4_shape_1x8.pt +0 -0
  339. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_5_shape_1x8.pt +0 -0
  340. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_6_shape_1x8_list.pt +0 -0
  341. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/embeddings/tensor_7_shape_1x8_list.pt +0 -0
  342. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/embeddings/manifest.csv +0 -0
  343. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_0_shape_6x8.pt +0 -0
  344. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_1_shape_3x8.pt +0 -0
  345. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_2_shape_1x8.pt +0 -0
  346. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_3_shape_2x8.pt +0 -0
  347. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_4_shape_5x8.pt +0 -0
  348. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_5_shape_3x8.pt +0 -0
  349. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_6_shape_1x8_list.pt +0 -0
  350. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_7_shape_6x8_list.pt +0 -0
  351. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_8_shape_2x8_list.pt +0 -0
  352. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/embeddings/tensor_9_shape_5x8_list.pt +0 -0
  353. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/core/datasets/multi-embeddings/manifest.csv +0 -0
  354. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/images/random_bgr_32x32.png +0 -0
  355. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/images/random_grayscale_32x32.png +0 -0
  356. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/arvaniti_gleason_patches/test_patches_750/patho_1/ZT80_38_A_1_2/ZT80_38_A_1_2_patch_18_class_1.jpg +0 -0
  357. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/arvaniti_gleason_patches/train_validation_patches_750/ZT111_4_B_4_6/ZT111_4_B_4_6_patch_12_class_1.jpg +0 -0
  358. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/arvaniti_gleason_patches/train_validation_patches_750/ZT204_6_B_7_8/ZT204_6_B_7_8_patch_3_class_2.jpg +0 -0
  359. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/arvaniti_gleason_patches/train_validation_patches_750/ZT76_39_A_1_2/ZT76_39_A_1_2_patch_00_class_0.jpg +0 -0
  360. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b001.tif +0 -0
  361. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b002.tif +0 -0
  362. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b003.tif +0 -0
  363. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b004.tif +0 -0
  364. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b005.tif +0 -0
  365. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Benign/b006.tif +0 -0
  366. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is001.tif +0 -0
  367. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is002.tif +0 -0
  368. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is003.tif +0 -0
  369. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is004.tif +0 -0
  370. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is005.tif +0 -0
  371. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/InSitu/is006.tif +0 -0
  372. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv001.tif +0 -0
  373. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv002.tif +0 -0
  374. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv003.tif +0 -0
  375. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv004.tif +0 -0
  376. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv005.tif +0 -0
  377. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Invasive/iv006.tif +0 -0
  378. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n001.tif +0 -0
  379. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n002.tif +0 -0
  380. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n003.tif +0 -0
  381. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n004.tif +0 -0
  382. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n005.tif +0 -0
  383. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bach/ICIAR2018_BACH_Challenge/Photos/Normal/n006.tif +0 -0
  384. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-A2-A0CM-DX1_xmin18562_ymin56852_MPP-0.2500.png +0 -0
  385. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-A7-A4SD-DX1_xmin53807_ymin11871_MPP-0.2500.png +0 -0
  386. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-AR-A0TS-DX1_xmin118843_ymin22812_MPP-0.2500.png +0 -0
  387. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-AR-A1AQ-DX1_xmin18171_ymin38296_MPP-0.2500.png +0 -0
  388. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-C8-A3XY-DX1_xmin76297_ymin35510_MPP-0.2500.png +0 -0
  389. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-D8-A1XQ-DX1_xmin61261_ymin33317_MPP-0.2500.png +0 -0
  390. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-EW-A1P4-DX1_xmin17256_ymin35430_MPP-0.2500.png +0 -0
  391. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-GI-A2C9-DX1_xmin20882_ymin11843_MPP-0.2500.png +0 -0
  392. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-OL-A5D6-DX1_xmin115108_ymin40554_MPP-0.2500.png +0 -0
  393. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/masks/TCGA-OL-A5D7-DX1_xmin114443_ymin22490_MPP-0.2500.png +0 -0
  394. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-A2-A0CM-DX1_xmin18562_ymin56852_MPP-0.2500.png +0 -0
  395. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-A7-A4SD-DX1_xmin53807_ymin11871_MPP-0.2500.png +0 -0
  396. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-AR-A0TS-DX1_xmin118843_ymin22812_MPP-0.2500.png +0 -0
  397. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-AR-A1AQ-DX1_xmin18171_ymin38296_MPP-0.2500.png +0 -0
  398. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-C8-A3XY-DX1_xmin76297_ymin35510_MPP-0.2500.png +0 -0
  399. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-D8-A1XQ-DX1_xmin61261_ymin33317_MPP-0.2500.png +0 -0
  400. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-EW-A1P4-DX1_xmin17256_ymin35430_MPP-0.2500.png +0 -0
  401. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-GI-A2C9-DX1_xmin20882_ymin11843_MPP-0.2500.png +0 -0
  402. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-OL-A5D6-DX1_xmin115108_ymin40554_MPP-0.2500.png +0 -0
  403. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bcss/rgbs_colorNormalized/TCGA-OL-A5D7-DX1_xmin114443_ymin22490_MPP-0.2500.png +0 -0
  404. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/test/0_N/BRACS_264_N_1.png +0 -0
  405. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/test/1_PB/BRACS_264_PB_18.png +0 -0
  406. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/train/0_N/BRACS_280_N_2.png +0 -0
  407. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/train/1_PB/BRACS_281_PB_2.png +0 -0
  408. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/val/0_N/BRACS_265_N_5.png +0 -0
  409. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/bracs/BRACS_RoI/latest_version/val/1_PB/BRACS_265_PB_7.png +0 -0
  410. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/breakhis/BreaKHis_v1/histology_slides/breast/benign/SOB/fibroadenoma/SOB_B_F_14-9133/40X/SOB_B_F-14-9133-40-001.png +0 -0
  411. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/breakhis/BreaKHis_v1/histology_slides/breast/benign/SOB/tubular_adenoma/SOB_B_A_14-21978AB/SOB_B_TA_14-3411F/40X/SOB_B_TA-14-3411F-40-001.png +0 -0
  412. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/breakhis/BreaKHis_v1/histology_slides/breast/benign/SOB/tubular_adenoma/SOB_B_A_14-22549AB/SOB_B_TA_14-13200/40X/SOB_B_TA-14-13200-40-001.png +0 -0
  413. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/breakhis/BreaKHis_v1/histology_slides/breast/malignant/SOB/mucinous_carcinoma/SOB_M_MC_14-19979/40X/SOB_M_MC-14-19979-40-001.png +0 -0
  414. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/camelyon16/testing/images/test_001.tif +0 -0
  415. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/camelyon16/testing/images/test_002.tif +0 -0
  416. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/camelyon16/testing/reference.csv +0 -0
  417. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/camelyon16/training/normal/normal_001.tif +0 -0
  418. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/camelyon16/training/normal/normal_002.tif +0 -0
  419. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/camelyon16/training/tumor/tumor_001.tif +0 -0
  420. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/camelyon16/training/tumor/tumor_002.tif +0 -0
  421. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Test/Images/test_1.png +0 -0
  422. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Test/Images/test_2.png +0 -0
  423. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Test/Images/test_3.png +0 -0
  424. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Test/Labels/test_1.mat +0 -0
  425. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Test/Labels/test_2.mat +0 -0
  426. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Test/Labels/test_3.mat +0 -0
  427. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Train/Images/train_1.png +0 -0
  428. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Train/Images/train_2.png +0 -0
  429. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Train/Images/train_3.png +0 -0
  430. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Train/Images/train_4.png +0 -0
  431. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Train/Labels/train_1.mat +0 -0
  432. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Train/Labels/train_2.mat +0 -0
  433. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Train/Labels/train_3.mat +0 -0
  434. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/consep/Train/Labels/train_4.mat +0 -0
  435. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/ADI/ADI-SIHVHHPH.tif +0 -0
  436. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/ADI/ADI-SIHWWQMY.tif +0 -0
  437. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/BACK/BACK-YYYHKNMK.tif +0 -0
  438. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/BACK/BACK-YYYMDTNW.tif +0 -0
  439. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/DEB/DEB-YYYRSHLP.tif +0 -0
  440. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/DEB/DEB-YYYTCTDR.tif +0 -0
  441. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/LYM/LYM-YYWRPGDD.tif +0 -0
  442. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/LYM/LYM-YYYTKMWW.tif +0 -0
  443. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/MUC/MUC-YYYNWSAM.tif +0 -0
  444. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/MUC/MUC-YYYRQDLW.tif +0 -0
  445. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/MUS/MUS-YYYNVQVQ.tif +0 -0
  446. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/MUS/MUS-YYYRWWNH.tif +0 -0
  447. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/NORM/NORM-YYTTIRVD.tif +0 -0
  448. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/NORM/NORM-YYVAFTKA.tif +0 -0
  449. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/STR/STR-YYYHNSSM.tif +0 -0
  450. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/STR/STR-YYYWVWFG.tif +0 -0
  451. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/TUM/TUM-YYYSGWYW.tif +0 -0
  452. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/CRC-VAL-HE-7K/TUM/TUM-YYYYQFVN.tif +0 -0
  453. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/ADI/ADI-SIHVHHPH.tif +0 -0
  454. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/ADI/ADI-SIHWWQMY.tif +0 -0
  455. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/BACK/BACK-YYYHKNMK.tif +0 -0
  456. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/BACK/BACK-YYYMDTNW.tif +0 -0
  457. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/DEB/DEB-YYYRSHLP.tif +0 -0
  458. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/DEB/DEB-YYYTCTDR.tif +0 -0
  459. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/LYM/LYM-YYWRPGDD.tif +0 -0
  460. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/LYM/LYM-YYYTKMWW.tif +0 -0
  461. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/MUC/MUC-YYYNWSAM.tif +0 -0
  462. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/MUC/MUC-YYYRQDLW.tif +0 -0
  463. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/MUS/MUS-YYYNVQVQ.tif +0 -0
  464. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/MUS/MUS-YYYRWWNH.tif +0 -0
  465. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/NORM/NORM-YYTTIRVD.tif +0 -0
  466. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/NORM/NORM-YYVAFTKA.tif +0 -0
  467. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/STR/STR-YYYHNSSM.tif +0 -0
  468. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/STR/STR-YYYWVWFG.tif +0 -0
  469. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/TUM/TUM-YYYSGWYW.tif +0 -0
  470. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K/TUM/TUM-YYYYQFVN.tif +0 -0
  471. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/ADI/ADI-SIHVHHPH.tif +0 -0
  472. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/ADI/ADI-SIHWWQMY.tif +0 -0
  473. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/BACK/BACK-YYYHKNMK.tif +0 -0
  474. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/BACK/BACK-YYYMDTNW.tif +0 -0
  475. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/DEB/DEB-YYYRSHLP.tif +0 -0
  476. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/DEB/DEB-YYYTCTDR.tif +0 -0
  477. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/LYM/LYM-YYWRPGDD.tif +0 -0
  478. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/LYM/LYM-YYYTKMWW.tif +0 -0
  479. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/MUC/MUC-YYYNWSAM.tif +0 -0
  480. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/MUC/MUC-YYYRQDLW.tif +0 -0
  481. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/MUS/MUS-YYYNVQVQ.tif +0 -0
  482. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/MUS/MUS-YYYRWWNH.tif +0 -0
  483. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/NORM/NORM-YYTTIRVD.tif +0 -0
  484. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/NORM/NORM-YYVAFTKA.tif +0 -0
  485. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/STR/STR-YYYHNSSM.tif +0 -0
  486. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/STR/STR-YYYWVWFG.tif +0 -0
  487. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/TUM/TUM-YYYSGWYW.tif +0 -0
  488. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/crc/NCT-CRC-HE-100K-NONORM/TUM/TUM-YYYYQFVN.tif +0 -0
  489. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/mhist/annotations.csv +0 -0
  490. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aaa.png +0 -0
  491. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aab.png +0 -0
  492. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aac.png +0 -0
  493. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aae.png +0 -0
  494. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aaf.png +0 -0
  495. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aag.png +0 -0
  496. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/mhist/images/MHIST_aah.png +0 -0
  497. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_1.tif +0 -0
  498. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_1.xml +0 -0
  499. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_2.tif +0 -0
  500. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_2.xml +0 -0
  501. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_3.tif +0 -0
  502. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JG-01Z-00-DX1/TCGA-2Z-A9JG-01Z-00-DX1_3.xml +0 -0
  503. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JN-01Z-00-DX1/TCGA-2Z-A9JN-01Z-00-DX1_1.tif +0 -0
  504. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC Testing Data and Annotations/TCGA-2Z-A9JN-01Z-00-DX1/TCGA-2Z-A9JN-01Z-00-DX1_1.xml +0 -0
  505. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-55-1594-01Z-00-DX1/TCGA-55-1594-01Z-00-DX1_003.tif +0 -0
  506. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-55-1594-01Z-00-DX1/TCGA-55-1594-01Z-00-DX1_003.xml +0 -0
  507. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-5P-A9K0-01Z-00-DX1/TCGA-5P-A9K0-01Z-00-DX1_3.tif +0 -0
  508. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-5P-A9K0-01Z-00-DX1/TCGA-5P-A9K0-01Z-00-DX1_3.xml +0 -0
  509. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-7760-01Z-00-DX1/TCGA-69-7760-01Z-00-DX1_001.tif +0 -0
  510. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-7760-01Z-00-DX1/TCGA-69-7760-01Z-00-DX1_001.xml +0 -0
  511. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-A59K-01Z-00-DX1/TCGA-69-A59K-01Z-00-DX1_001.tif +0 -0
  512. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-A59K-01Z-00-DX1/TCGA-69-A59K-01Z-00-DX1_001.xml +0 -0
  513. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-A59K-01Z-00-DX1/TCGA-69-A59K-01Z-00-DX1_002.tif +0 -0
  514. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/monusac/MoNuSAC_images_and_annotations/TCGA-69-A59K-01Z-00-DX1/TCGA-69-A59K-01Z-00-DX1_002.xml +0 -0
  515. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/0214df71ae527e2144021178c453d204.tiff +0 -0
  516. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/02d302a8d723fa00331f373091b29135.tiff +0 -0
  517. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/157565e23ba28d5a42f63f34f3dd4425.tiff +0 -0
  518. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/682a1fd346b6fff340afbdb80c2f7caf.tiff +0 -0
  519. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/8582b59b41635fa38401d1bddad66707.tiff +0 -0
  520. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/8c357871e57c5c60277230412f2d9028.tiff +0 -0
  521. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/979cf5a2fa4079eaf74343d6ff5e1b51.tiff +0 -0
  522. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/9dd40c0127d217bc4917e4db40e06e94.tiff +0 -0
  523. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/9ed8ec7bf90653bc4ca86b3ca53cbb96.tiff +0 -0
  524. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/a04310d441e8d2c7a5066627baeec9b6.tiff +0 -0
  525. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_images/fb8886059879eaac70139336cb525838.tiff +0 -0
  526. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/panda/train_with_noisy_labels.csv +0 -0
  527. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_test_x.h5 +0 -0
  528. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_test_y.h5 +0 -0
  529. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_train_x.h5 +0 -0
  530. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_train_y.h5 +0 -0
  531. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_valid_x.h5 +0 -0
  532. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/patch_camelyon/camelyonpatch_level_2_split_valid_y.h5 +0 -0
  533. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/total_segmentator/Totalsegmentator_dataset_v201/meta.csv +0 -0
  534. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/unitopatho/800/HP/149-B3-HP.ndpi_ROI__mpp0.44_reg000_crop_sk00003_(12824,33871,1812,1812).png +0 -0
  535. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/unitopatho/800/NORM/188-B4-NORM.ndpi_ROI__mpp0.44_reg001_crop_sk00026_(15904,10751,1812,1812).png +0 -0
  536. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/unitopatho/800/TVA.LG/243-B5-TVALG.ndpi_ROI__mpp0.44_reg002_crop_sk00033_(7688,23775,1812,1812).png +0 -0
  537. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/unitopatho/800/TVA.LG/TVA.LG CASO 2 - 2018-12-04 13.19.16.ndpi_ROI__mpp0.44_reg000_crop_sk00021_(9060,9947,1812,1812).png +0 -0
  538. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/unitopatho/800/test.csv +0 -0
  539. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/unitopatho/800/train.csv +0 -0
  540. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/wsi/0/a.tiff +0 -0
  541. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/wsi/0/b.tiff +0 -0
  542. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/wsi/1/a.tiff +0 -0
  543. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/assets/vision/datasets/wsi/manifest.csv +0 -0
  544. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/conftest.py +0 -0
  545. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/callbacks/__init__.py +0 -0
  546. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/callbacks/conftest.py +0 -0
  547. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/callbacks/writers/__init__.py +0 -0
  548. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/callbacks/writers/embeddings/__init__.py +0 -0
  549. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/callbacks/writers/embeddings/test_classification.py +0 -0
  550. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/__init__.py +0 -0
  551. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/dataloaders/__init__.py +0 -0
  552. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/dataloaders/test_dataloader.py +0 -0
  553. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/datamodules/__init__.py +0 -0
  554. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/datamodules/_utils.py +0 -0
  555. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/datamodules/test_datamodule.py +0 -0
  556. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/datamodules/test_schemas.py +0 -0
  557. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/datasets/__init__.py +0 -0
  558. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/datasets/classification/__init__.py +0 -0
  559. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/datasets/classification/test_embeddings.py +0 -0
  560. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/datasets/classification/test_multi_embeddings.py +0 -0
  561. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/samplers/__init__.py +0 -0
  562. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/samplers/_utils.py +0 -0
  563. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/samplers/classification/__init__.py +0 -0
  564. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/samplers/classification/test_balanced.py +0 -0
  565. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/splitting/__init__.py +0 -0
  566. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/splitting/test_random.py +0 -0
  567. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/splitting/test_stratified.py +0 -0
  568. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/transforms/__init__.py +0 -0
  569. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/transforms/padding/__init__.py +0 -0
  570. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/transforms/padding/test_pad_2d_tensor.py +0 -0
  571. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/transforms/sampling/__init__.py +0 -0
  572. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/data/transforms/sampling/test_sample_from_axis.py +0 -0
  573. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/__init__.py +0 -0
  574. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/core/__init__.py +0 -0
  575. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/core/test_metric_module.py +0 -0
  576. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/core/test_schemas.py +0 -0
  577. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/defaults/__init__.py +0 -0
  578. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/defaults/classification/__init__.py +0 -0
  579. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/defaults/classification/test_binary.py +0 -0
  580. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/defaults/classification/test_multiclass.py +0 -0
  581. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/test_average_loss.py +0 -0
  582. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/metrics/test_binary_balanced_accuracy.py +0 -0
  583. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/__init__.py +0 -0
  584. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/modules/__init__.py +0 -0
  585. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/modules/conftest.py +0 -0
  586. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/modules/test_head.py +0 -0
  587. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/modules/test_inference.py +0 -0
  588. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/modules/utils/__init__.py +0 -0
  589. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/modules/utils/test_batch_postproces.py +0 -0
  590. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/networks/__init__.py +0 -0
  591. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/networks/test_mlp.py +0 -0
  592. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/wrappers/__init__.py +0 -0
  593. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/wrappers/test_from_function.py +0 -0
  594. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/wrappers/test_from_torchub.py +0 -0
  595. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/wrappers/test_huggingface.py +0 -0
  596. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/models/wrappers/test_onnx.py +0 -0
  597. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/test_cli.py +0 -0
  598. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/trainers/__init__.py +0 -0
  599. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/trainers/test_recorder.py +0 -0
  600. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/utils/__init__.py +0 -0
  601. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/utils/io/__init__.py +0 -0
  602. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/utils/io/test_gz.py +0 -0
  603. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/core/utils/test_operations.py +0 -0
  604. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/__init__.py +0 -0
  605. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/__init__.py +0 -0
  606. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/__init__.py +0 -0
  607. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/__init__.py +0 -0
  608. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_bach.py +0 -0
  609. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_bracs.py +0 -0
  610. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_breakhis.py +0 -0
  611. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_camelyon16.py +0 -0
  612. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_crc.py +0 -0
  613. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_gleason_arvaniti.py +0 -0
  614. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_mhist.py +0 -0
  615. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_panda.py +0 -0
  616. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_patch_camelyon.py +0 -0
  617. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_unitopatho.py +0 -0
  618. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/classification/test_wsi.py +0 -0
  619. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/segmentation/__init__.py +0 -0
  620. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/segmentation/test_bcss.py +0 -0
  621. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/segmentation/test_consep.py +0 -0
  622. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/segmentation/test_monusac.py +0 -0
  623. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/datasets/test_wsi.py +0 -0
  624. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/transforms/__init__.py +0 -0
  625. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/transforms/common/__init__.py +0 -0
  626. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/transforms/common/test_resize_and_crop.py +0 -0
  627. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/wsi/__init__.py +0 -0
  628. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/wsi/patching/__init__.py +0 -0
  629. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/wsi/patching/samplers/__init__.py +0 -0
  630. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/wsi/patching/samplers/test_grid.py +0 -0
  631. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/data/wsi/patching/test_mask.py +0 -0
  632. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/metrics/defaults/__init__.py +0 -0
  633. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/metrics/defaults/segmentation/__init__.py +0 -0
  634. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/metrics/defaults/segmentation/test_multiclass.py +0 -0
  635. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/metrics/segmentation/__init__.py +0 -0
  636. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/metrics/segmentation/_utils.py +0 -0
  637. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/metrics/segmentation/test_dice.py +0 -0
  638. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/metrics/segmentation/test_generalized_dice.py +0 -0
  639. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/metrics/segmentation/test_mean_iou.py +0 -0
  640. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/__init__.py +0 -0
  641. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/modules/__init__.py +0 -0
  642. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/modules/conftest.py +0 -0
  643. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/networks/__init__.py +0 -0
  644. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/networks/backbones/__init__.py +0 -0
  645. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/networks/backbones/test_registry.py +0 -0
  646. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/networks/decoders/__init__.py +0 -0
  647. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/networks/decoders/segmentation/__init__.py +0 -0
  648. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/networks/test_abmil.py +0 -0
  649. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/wrappers/__init__.py +0 -0
  650. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/wrappers/test_backbone.py +0 -0
  651. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/models/wrappers/test_from_timm.py +0 -0
  652. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/test_vision_cli.py +0 -0
  653. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/utils/__init__.py +0 -0
  654. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/utils/io/__init__.py +0 -0
  655. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/utils/io/test_image.py +0 -0
  656. {kaiko_eva-0.2.0 → kaiko_eva-0.2.2}/tests/eva/vision/utils/test_convert.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kaiko-eva
3
- Version: 0.2.0
3
+ Version: 0.2.2
4
4
  Summary: Evaluation Framework for oncology foundation models.
5
5
  Keywords: machine-learning,evaluation-framework,oncology,foundation-models
6
6
  Author-Email: Ioannis Gatopoulos <ioannis@kaiko.ai>, =?utf-8?q?Nicolas_K=C3=A4nzig?= <nicolas@kaiko.ai>, Roman Moser <roman@kaiko.ai>
@@ -241,6 +241,7 @@ Requires-Dist: scikit-image>=0.24.0; extra == "vision"
241
241
  Requires-Dist: imagesize>=1.4.1; extra == "vision"
242
242
  Requires-Dist: scipy>=1.14.0; extra == "vision"
243
243
  Requires-Dist: monai>=1.3.2; extra == "vision"
244
+ Requires-Dist: einops>=0.8.1; extra == "vision"
244
245
  Provides-Extra: all
245
246
  Requires-Dist: h5py>=3.10.0; extra == "all"
246
247
  Requires-Dist: nibabel>=4.0.1; extra == "all"
@@ -253,6 +254,7 @@ Requires-Dist: scikit-image>=0.24.0; extra == "all"
253
254
  Requires-Dist: imagesize>=1.4.1; extra == "all"
254
255
  Requires-Dist: scipy>=1.14.0; extra == "all"
255
256
  Requires-Dist: monai>=1.3.2; extra == "all"
257
+ Requires-Dist: einops>=0.8.1; extra == "all"
256
258
  Description-Content-Type: text/markdown
257
259
 
258
260
  <div align="center">
@@ -291,7 +293,7 @@ Check out the [documentation](https://kaiko-ai.github.io/eva/) for more informat
291
293
 
292
294
  ### Highlights:
293
295
  - Easy and reliable benchmark of Oncology FMs
294
- - Supports path-level classification, slide-level classification and semantic segmentation downstream tasks
296
+ - Supports patch-level classification, slide-level classification and semantic segmentation downstream tasks
295
297
  - Automatic embedding inference and evaluation of a downstream task
296
298
  - Native support of popular medical [datasets](https://kaiko-ai.github.io/eva/dev/datasets/) and models
297
299
  - Produce statistics over multiple evaluation fits and multiple metrics
@@ -446,26 +448,28 @@ input, resulting in a faster evaluation.
446
448
  Here are some examples to get you started:
447
449
 
448
450
  - Perform a downstream offline **classification** evaluation of `DINO ViT-S/16`
449
- on the `BACH` dataset with linear probing by first inferring the embeddings
450
- and then performing 5 sequential fits:
451
+ on the `BACH` dataset with linear probing by first pre-calculating the embeddings:
451
452
  ```sh
452
- export DOWNLOAD_DATA=true
453
- eva predict_fit --config https://raw.githubusercontent.com/kaiko-ai/eva/main/configs/vision/dino_vit/offline/bach.yaml
453
+ DOWNLOAD_DATA=true \
454
+ MODEL_NAME=universal/vit_small_patch16_224_dino \
455
+ eva predict_fit --config https://raw.githubusercontent.com/kaiko-ai/eva/main/configs/vision/pathology/offline/classification/bach.yaml
454
456
  ```
455
457
 
456
- - Perform a downstream online **segmentation** evaluation of `DINO ViT-S/16` on the
457
- `MoNuSAC` dataset with the `ConvDecoderMS` decoder:
458
+ - Perform a downstream online **segmentation** evaluation of `DINO ViT-S/16` on the `MoNuSAC` dataset with the `ConvDecoderWithImage` decoder:
458
459
  ```sh
459
- export DOWNLOAD_DATA=true
460
- eva fit --config https://raw.githubusercontent.com/kaiko-ai/eva/main/configs/vision/dino_vit/online/monusac.yaml
460
+ DOWNLOAD_DATA=true \
461
+ MODEL_NAME=universal/vit_small_patch16_224_dino \
462
+ eva fit --config https://raw.githubusercontent.com/kaiko-ai/eva/main/configs/vision/pathology/online/segmentation/monusac.yaml
461
463
  ```
462
464
 
465
+ By default `eva` will perform 5 evaluation runs using different seeds, however, you can control the number of runs through the `N_RUNS` environment variable or in the configuration file. The results will be saved to `./logs` by default, or to `OUTPUT_ROOT` if specified.
466
+
463
467
  For more examples, take a look at the [configs](https://github.com/kaiko-ai/eva/tree/main/configs)
464
- and [tutorials](https://kaiko-ai.github.io/eva/dev/user-guide/advanced/replicate_evaluations/).
468
+ and [tutorials](https://kaiko-ai.github.io/eva/main/user-guide/advanced/replicate_evaluations/).
465
469
 
466
470
  > [!NOTE]
467
471
  > All the datasets that support automatic download in the repo have by default the option to automatically download set to false.
468
- > For automatic download you have to manually set the environmental variable `DOWNLOAD_DATA=true` or in the configuration file `download=true`.
472
+ > For automatic download you have to manually set the environment variable `DOWNLOAD_DATA=true` or in the configuration file `download=true`.
469
473
 
470
474
  ## Leaderboards
471
475
 
@@ -34,7 +34,7 @@ Check out the [documentation](https://kaiko-ai.github.io/eva/) for more informat
34
34
 
35
35
  ### Highlights:
36
36
  - Easy and reliable benchmark of Oncology FMs
37
- - Supports path-level classification, slide-level classification and semantic segmentation downstream tasks
37
+ - Supports patch-level classification, slide-level classification and semantic segmentation downstream tasks
38
38
  - Automatic embedding inference and evaluation of a downstream task
39
39
  - Native support of popular medical [datasets](https://kaiko-ai.github.io/eva/dev/datasets/) and models
40
40
  - Produce statistics over multiple evaluation fits and multiple metrics
@@ -189,26 +189,28 @@ input, resulting in a faster evaluation.
189
189
  Here are some examples to get you started:
190
190
 
191
191
  - Perform a downstream offline **classification** evaluation of `DINO ViT-S/16`
192
- on the `BACH` dataset with linear probing by first inferring the embeddings
193
- and then performing 5 sequential fits:
192
+ on the `BACH` dataset with linear probing by first pre-calculating the embeddings:
194
193
  ```sh
195
- export DOWNLOAD_DATA=true
196
- eva predict_fit --config https://raw.githubusercontent.com/kaiko-ai/eva/main/configs/vision/dino_vit/offline/bach.yaml
194
+ DOWNLOAD_DATA=true \
195
+ MODEL_NAME=universal/vit_small_patch16_224_dino \
196
+ eva predict_fit --config https://raw.githubusercontent.com/kaiko-ai/eva/main/configs/vision/pathology/offline/classification/bach.yaml
197
197
  ```
198
198
 
199
- - Perform a downstream online **segmentation** evaluation of `DINO ViT-S/16` on the
200
- `MoNuSAC` dataset with the `ConvDecoderMS` decoder:
199
+ - Perform a downstream online **segmentation** evaluation of `DINO ViT-S/16` on the `MoNuSAC` dataset with the `ConvDecoderWithImage` decoder:
201
200
  ```sh
202
- export DOWNLOAD_DATA=true
203
- eva fit --config https://raw.githubusercontent.com/kaiko-ai/eva/main/configs/vision/dino_vit/online/monusac.yaml
201
+ DOWNLOAD_DATA=true \
202
+ MODEL_NAME=universal/vit_small_patch16_224_dino \
203
+ eva fit --config https://raw.githubusercontent.com/kaiko-ai/eva/main/configs/vision/pathology/online/segmentation/monusac.yaml
204
204
  ```
205
205
 
206
+ By default `eva` will perform 5 evaluation runs using different seeds, however, you can control the number of runs through the `N_RUNS` environment variable or in the configuration file. The results will be saved to `./logs` by default, or to `OUTPUT_ROOT` if specified.
207
+
206
208
  For more examples, take a look at the [configs](https://github.com/kaiko-ai/eva/tree/main/configs)
207
- and [tutorials](https://kaiko-ai.github.io/eva/dev/user-guide/advanced/replicate_evaluations/).
209
+ and [tutorials](https://kaiko-ai.github.io/eva/main/user-guide/advanced/replicate_evaluations/).
208
210
 
209
211
  > [!NOTE]
210
212
  > All the datasets that support automatic download in the repo have by default the option to automatically download set to false.
211
- > For automatic download you have to manually set the environmental variable `DOWNLOAD_DATA=true` or in the configuration file `download=true`.
213
+ > For automatic download you have to manually set the environment variable `DOWNLOAD_DATA=true` or in the configuration file `download=true`.
212
214
 
213
215
  ## Leaderboards
214
216
 
@@ -6,7 +6,7 @@ build-backend = "pdm.backend"
6
6
 
7
7
  [project]
8
8
  name = "kaiko-eva"
9
- version = "0.2.0"
9
+ version = "0.2.2"
10
10
  description = "Evaluation Framework for oncology foundation models."
11
11
  keywords = [
12
12
  "machine-learning",
@@ -70,6 +70,7 @@ vision = [
70
70
  "imagesize>=1.4.1",
71
71
  "scipy>=1.14.0",
72
72
  "monai>=1.3.2",
73
+ "einops>=0.8.1",
73
74
  ]
74
75
  all = [
75
76
  "h5py>=3.10.0",
@@ -83,6 +84,7 @@ all = [
83
84
  "imagesize>=1.4.1",
84
85
  "scipy>=1.14.0",
85
86
  "monai>=1.3.2",
87
+ "einops>=0.8.1",
86
88
  ]
87
89
 
88
90
  [project.scripts]
@@ -1,6 +1,7 @@
1
1
  """Base dataset class."""
2
2
 
3
3
  import abc
4
+ from typing import Generic, TypeVar
4
5
 
5
6
  from eva.core.data.datasets import dataset
6
7
 
@@ -55,11 +56,15 @@ class Dataset(dataset.TorchDataset):
55
56
  """
56
57
 
57
58
 
58
- class MapDataset(Dataset):
59
+ DataSample = TypeVar("DataSample")
60
+ """The data sample type."""
61
+
62
+
63
+ class MapDataset(Dataset, abc.ABC, Generic[DataSample]):
59
64
  """Abstract base class for all map-style datasets."""
60
65
 
61
66
  @abc.abstractmethod
62
- def __getitem__(self, index: int):
67
+ def __getitem__(self, index: int) -> DataSample:
63
68
  """Retrieves the item at the given index.
64
69
 
65
70
  Args:
@@ -1,6 +1,6 @@
1
1
  """Neural Network Head Module."""
2
2
 
3
- from typing import Any, Callable, Dict
3
+ from typing import Any, Callable, Dict, List
4
4
 
5
5
  import torch
6
6
  from lightning.pytorch.cli import LRSchedulerCallable, OptimizerCallable
@@ -108,7 +108,9 @@ class HeadModule(module.ModelModule):
108
108
  return self._batch_step(batch)
109
109
 
110
110
  @override
111
- def predict_step(self, batch: INPUT_BATCH, *args: Any, **kwargs: Any) -> torch.Tensor:
111
+ def predict_step(
112
+ self, batch: INPUT_BATCH, *args: Any, **kwargs: Any
113
+ ) -> torch.Tensor | List[torch.Tensor]:
112
114
  tensor = INPUT_BATCH(*batch).data
113
115
  return tensor if self.backbone is None else self.backbone(tensor)
114
116
 
@@ -1,6 +1,6 @@
1
1
  """Type annotations for model modules."""
2
2
 
3
- from typing import Any, Dict, NamedTuple
3
+ from typing import Any, Dict, List, NamedTuple
4
4
 
5
5
  import lightning.pytorch as pl
6
6
  import torch
@@ -13,7 +13,7 @@ MODEL_TYPE = nn.Module | pl.LightningModule
13
13
  class INPUT_BATCH(NamedTuple):
14
14
  """The default input batch data scheme."""
15
15
 
16
- data: torch.Tensor
16
+ data: torch.Tensor | List[torch.Tensor]
17
17
  """The data batch."""
18
18
 
19
19
  targets: torch.Tensor | None = None
@@ -1,6 +1,7 @@
1
1
  """Model outputs transforms API."""
2
2
 
3
+ from eva.core.models.transforms.as_discrete import AsDiscrete
3
4
  from eva.core.models.transforms.extract_cls_features import ExtractCLSFeatures
4
5
  from eva.core.models.transforms.extract_patch_features import ExtractPatchFeatures
5
6
 
6
- __all__ = ["ExtractCLSFeatures", "ExtractPatchFeatures"]
7
+ __all__ = ["AsDiscrete", "ExtractCLSFeatures", "ExtractPatchFeatures"]
@@ -0,0 +1,57 @@
1
+ """Defines the AsDiscrete transformation."""
2
+
3
+ import torch
4
+
5
+
6
+ class AsDiscrete:
7
+ """Convert the logits tensor to discrete values."""
8
+
9
+ def __init__(
10
+ self,
11
+ argmax: bool = False,
12
+ to_onehot: int | bool | None = None,
13
+ threshold: float | None = None,
14
+ ) -> None:
15
+ """Convert the input tensor/array into discrete values.
16
+
17
+ Args:
18
+ argmax: Whether to execute argmax function on input data before transform.
19
+ to_onehot: if not None, convert input data into the one-hot format with
20
+ specified number of classes. If bool, it will try to infer the number
21
+ of classes.
22
+ threshold: If not None, threshold the float values to int number 0 or 1
23
+ with specified threshold.
24
+ """
25
+ super().__init__()
26
+
27
+ self._argmax = argmax
28
+ self._to_onehot = to_onehot
29
+ self._threshold = threshold
30
+
31
+ def __call__(self, tensor: torch.Tensor) -> torch.Tensor:
32
+ """Call method for the transformation."""
33
+ if self._argmax:
34
+ tensor = torch.argmax(tensor, dim=1, keepdim=True)
35
+
36
+ if self._to_onehot is not None:
37
+ tensor = _one_hot(tensor, num_classes=self._to_onehot, dim=1, dtype=torch.long)
38
+
39
+ if self._threshold is not None:
40
+ tensor = tensor >= self._threshold
41
+
42
+ return tensor
43
+
44
+
45
+ def _one_hot(
46
+ tensor: torch.Tensor, num_classes: int, dtype: torch.dtype = torch.float, dim: int = 1
47
+ ) -> torch.Tensor:
48
+ """Convert input tensor into one-hot format (implementation taken from MONAI)."""
49
+ shape = list(tensor.shape)
50
+ if shape[dim] != 1:
51
+ raise AssertionError(f"Input tensor must have 1 channel at dim {dim}.")
52
+
53
+ shape[dim] = num_classes
54
+ o = torch.zeros(size=shape, dtype=dtype, device=tensor.device)
55
+ tensor = o.scatter_(dim=dim, index=tensor.long(), value=1)
56
+
57
+ return tensor
@@ -0,0 +1,145 @@
1
+ """Utilities and helper functions for models."""
2
+
3
+ import hashlib
4
+ import os
5
+ import sys
6
+ from typing import Any, Dict
7
+
8
+ import torch
9
+ from fsspec.core import url_to_fs
10
+ from lightning_fabric.utilities import cloud_io
11
+ from loguru import logger
12
+ from torch import hub, nn
13
+
14
+ from eva.core.utils.progress_bar import tqdm
15
+
16
+
17
+ def load_model_weights(model: nn.Module, checkpoint_path: str) -> None:
18
+ """Loads (local or remote) weights to the model in-place.
19
+
20
+ Args:
21
+ model: The model to load the weights to.
22
+ checkpoint_path: The path to the model weights/checkpoint.
23
+ """
24
+ logger.info(f"Loading '{model.__class__.__name__}' model from checkpoint '{checkpoint_path}'")
25
+
26
+ fs = cloud_io.get_filesystem(checkpoint_path)
27
+ with fs.open(checkpoint_path, "rb") as file:
28
+ checkpoint = cloud_io._load(file, map_location="cpu") # type: ignore
29
+ if isinstance(checkpoint, dict) and "state_dict" in checkpoint:
30
+ checkpoint = checkpoint["state_dict"]
31
+
32
+ model.load_state_dict(checkpoint, strict=True)
33
+
34
+ logger.info(f"Loading weights from '{checkpoint_path}' completed successfully.")
35
+
36
+
37
+ def load_state_dict_from_url(
38
+ url: str,
39
+ *,
40
+ model_dir: str | None = None,
41
+ filename: str | None = None,
42
+ progress: bool = True,
43
+ md5: str | None = None,
44
+ force: bool = False,
45
+ ) -> Dict[str, Any]:
46
+ """Loads the Torch serialized object at the given URL.
47
+
48
+ If the object is already present and valid in `model_dir`, it's
49
+ deserialized and returned.
50
+
51
+ The default value of ``model_dir`` is ``<hub_dir>/checkpoints`` where
52
+ ``hub_dir`` is the directory returned by :func:`~torch.hub.get_dir`.
53
+
54
+ Args:
55
+ url: URL of the object to download.
56
+ model_dir: Directory in which to save the object.
57
+ filename: Name for the downloaded file. Filename from ``url`` will be used if not set.
58
+ progress: Whether or not to display a progress bar to stderr.
59
+ md5: MD5 file code to check whether the file is valid. If not, it will re-download it.
60
+ force: Whether to download the file regardless if it exists.
61
+ """
62
+ model_dir = model_dir or os.path.join(hub.get_dir(), "checkpoints")
63
+ os.makedirs(model_dir, exist_ok=True)
64
+
65
+ cached_file = os.path.join(model_dir, filename or os.path.basename(url))
66
+ if force or not os.path.exists(cached_file) or not _check_integrity(cached_file, md5):
67
+ sys.stderr.write(f"Downloading: '{url}' to {cached_file}\n")
68
+ _download_url_to_file(url, cached_file, progress=progress)
69
+ if md5 is None or not _check_integrity(cached_file, md5):
70
+ sys.stderr.write(f"File MD5: {_calculate_md5(cached_file)}\n")
71
+
72
+ return torch.load(cached_file, map_location="cpu")
73
+
74
+
75
+ def _download_url_to_file(
76
+ url: str,
77
+ dst: str,
78
+ *,
79
+ progress: bool = True,
80
+ ) -> None:
81
+ """Download object at the given URL to a local path.
82
+
83
+ Args:
84
+ url: URL of the object to download.
85
+ dst: Full path where object will be saved.
86
+ chunk_size: The size of each chunk to read in bytes.
87
+ progress: Whether or not to display a progress bar to stderr.
88
+ """
89
+ try:
90
+ _download_with_fsspec(url=url, dst=dst, progress=progress)
91
+ except Exception:
92
+ try:
93
+ hub.download_url_to_file(url=url, dst=dst, progress=progress)
94
+ except Exception as hub_e:
95
+ raise RuntimeError(
96
+ f"Failed to download file from {url} using both fsspec and hub."
97
+ ) from hub_e
98
+
99
+
100
+ def _download_with_fsspec(
101
+ url: str,
102
+ dst: str,
103
+ *,
104
+ chunk_size: int = 1024 * 1024,
105
+ progress: bool = True,
106
+ ) -> None:
107
+ """Download object at the given URL to a local path using fsspec.
108
+
109
+ Args:
110
+ url: URL of the object to download.
111
+ dst: Full path where object will be saved.
112
+ chunk_size: The size of each chunk to read in bytes.
113
+ progress: Whether or not to display a progress bar to stderr.
114
+ """
115
+ filesystem, _ = url_to_fs(url, anon=False)
116
+ total_size_bytes = filesystem.size(url)
117
+ with (
118
+ filesystem.open(url, "rb") as remote_file,
119
+ tqdm(
120
+ total=total_size_bytes,
121
+ unit="iB",
122
+ unit_scale=True,
123
+ unit_divisor=1024,
124
+ disable=not progress,
125
+ ) as pbar,
126
+ ):
127
+ with open(dst, "wb") as local_file:
128
+ while True:
129
+ data = remote_file.read(chunk_size)
130
+ if not data:
131
+ break
132
+
133
+ local_file.write(data)
134
+ pbar.update(chunk_size)
135
+
136
+
137
+ def _calculate_md5(path: str) -> str:
138
+ """Calculate the md5 hash of a file."""
139
+ with open(path, "rb") as file:
140
+ return hashlib.md5(file.read(), usedforsecurity=False).hexdigest()
141
+
142
+
143
+ def _check_integrity(path: str, md5: str | None) -> bool:
144
+ """Check if the file matches the specified md5 hash."""
145
+ return (md5 is None) or (md5 == _calculate_md5(path))
@@ -129,7 +129,10 @@ class SessionRecorder:
129
129
  def _save_config(self) -> None:
130
130
  """Saves the config yaml with resolved env placeholders to the output directory."""
131
131
  if self.config_path:
132
- config = OmegaConf.load(self.config_path)
132
+ config_fs = cloud_io.get_filesystem(self.config_path)
133
+ with config_fs.open(self.config_path, "r") as config_file:
134
+ config = OmegaConf.load(config_file) # type: ignore
135
+
133
136
  fs = cloud_io.get_filesystem(self._output_dir, anon=False)
134
137
  with fs.open(os.path.join(self._output_dir, self._config_file), "w") as file:
135
138
  config_yaml = OmegaConf.to_yaml(config, resolve=True)
@@ -0,0 +1,28 @@
1
+ """Context manager to temporarily suppress all logging outputs."""
2
+
3
+ import logging
4
+ import sys
5
+ from types import TracebackType
6
+ from typing import Type
7
+
8
+
9
+ class SuppressLogs:
10
+ """Context manager to suppress all logs but print exceptions if they occur."""
11
+
12
+ def __enter__(self) -> None:
13
+ """Temporarily increase log level to suppress all logs."""
14
+ self._logger = logging.getLogger()
15
+ self._previous_level = self._logger.level
16
+ self._logger.setLevel(logging.CRITICAL + 1)
17
+
18
+ def __exit__(
19
+ self,
20
+ exc_type: Type[BaseException] | None,
21
+ exc_value: BaseException | None,
22
+ traceback: TracebackType | None,
23
+ ) -> bool:
24
+ """Restores the previous logging level and print exceptions."""
25
+ self._logger.setLevel(self._previous_level)
26
+ if exc_value:
27
+ print(f"Error: {exc_value}", file=sys.stderr)
28
+ return False
@@ -0,0 +1,5 @@
1
+ """Vision data API."""
2
+
3
+ from eva.vision.data import datasets, transforms, tv_tensors
4
+
5
+ __all__ = ["datasets", "transforms", "tv_tensors"]
@@ -0,0 +1,5 @@
1
+ """Dataloader related utilities and functions."""
2
+
3
+ from eva.vision.data.dataloaders import collate_fn
4
+
5
+ __all__ = ["collate_fn"]
@@ -0,0 +1,5 @@
1
+ """Dataloader collate API."""
2
+
3
+ from eva.vision.data.dataloaders.collate_fn.collection import collection_collate
4
+
5
+ __all__ = ["collection_collate"]
@@ -0,0 +1,22 @@
1
+ """Data only collate filter function."""
2
+
3
+ from typing import Any, List
4
+
5
+ import torch
6
+
7
+ from eva.core.models.modules.typings import INPUT_BATCH
8
+
9
+
10
+ def collection_collate(batch: List[List[INPUT_BATCH]]) -> Any:
11
+ """Collate function for stacking a collection of data samples.
12
+
13
+ Args:
14
+ batch: The batch to be collated.
15
+
16
+ Returns:
17
+ The collated batch.
18
+ """
19
+ tensors, targets, metadata = zip(*batch, strict=False)
20
+ batch_tensors = torch.cat(list(map(torch.stack, tensors)))
21
+ batch_targets = torch.cat(list(map(torch.stack, targets)))
22
+ return batch_tensors, batch_targets, metadata
@@ -16,9 +16,9 @@ from eva.vision.data.datasets.classification import (
16
16
  )
17
17
  from eva.vision.data.datasets.segmentation import (
18
18
  BCSS,
19
+ BTCV,
19
20
  CoNSeP,
20
21
  EmbeddingsSegmentationDataset,
21
- ImageSegmentation,
22
22
  LiTS,
23
23
  LiTSBalanced,
24
24
  MoNuSAC,
@@ -29,6 +29,7 @@ from eva.vision.data.datasets.wsi import MultiWsiDataset, WsiDataset
29
29
 
30
30
  __all__ = [
31
31
  "BACH",
32
+ "BTCV",
32
33
  "BCSS",
33
34
  "BreaKHis",
34
35
  "BRACS",
@@ -43,7 +44,6 @@ __all__ = [
43
44
  "WsiClassificationDataset",
44
45
  "CoNSeP",
45
46
  "EmbeddingsSegmentationDataset",
46
- "ImageSegmentation",
47
47
  "LiTS",
48
48
  "LiTSBalanced",
49
49
  "MoNuSAC",
@@ -8,12 +8,11 @@ from torchvision import tv_tensors
8
8
  from torchvision.datasets import folder, utils
9
9
  from typing_extensions import override
10
10
 
11
- from eva.vision.data.datasets import _utils, _validators, structs
12
- from eva.vision.data.datasets.classification import base
11
+ from eva.vision.data.datasets import _utils, _validators, structs, vision
13
12
  from eva.vision.utils import io
14
13
 
15
14
 
16
- class BACH(base.ImageClassification):
15
+ class BACH(vision.VisionDataset[tv_tensors.Image, torch.Tensor]):
17
16
  """Dataset class for BACH images and corresponding targets."""
18
17
 
19
18
  _train_index_ranges: List[Tuple[int, int]] = [
@@ -125,7 +124,7 @@ class BACH(base.ImageClassification):
125
124
  )
126
125
 
127
126
  @override
128
- def load_image(self, index: int) -> tv_tensors.Image:
127
+ def load_data(self, index: int) -> tv_tensors.Image:
129
128
  image_path, _ = self._samples[self._indices[index]]
130
129
  return io.read_image_as_tensor(image_path)
131
130
 
@@ -8,12 +8,11 @@ from torchvision import tv_tensors
8
8
  from torchvision.datasets import folder
9
9
  from typing_extensions import override
10
10
 
11
- from eva.vision.data.datasets import _validators
12
- from eva.vision.data.datasets.classification import base
11
+ from eva.vision.data.datasets import _validators, vision
13
12
  from eva.vision.utils import io
14
13
 
15
14
 
16
- class BRACS(base.ImageClassification):
15
+ class BRACS(vision.VisionDataset[tv_tensors.Image, torch.Tensor]):
17
16
  """Dataset class for BRACS images and corresponding targets."""
18
17
 
19
18
  _expected_dataset_lengths: Dict[str, int] = {
@@ -80,7 +79,7 @@ class BRACS(base.ImageClassification):
80
79
  )
81
80
 
82
81
  @override
83
- def load_image(self, index: int) -> tv_tensors.Image:
82
+ def load_data(self, index: int) -> tv_tensors.Image:
84
83
  image_path, _ = self._samples[index]
85
84
  return io.read_image_as_tensor(image_path)
86
85
 
@@ -10,12 +10,11 @@ from torchvision import tv_tensors
10
10
  from torchvision.datasets import utils
11
11
  from typing_extensions import override
12
12
 
13
- from eva.vision.data.datasets import _validators, structs
14
- from eva.vision.data.datasets.classification import base
13
+ from eva.vision.data.datasets import _validators, structs, vision
15
14
  from eva.vision.utils import io
16
15
 
17
16
 
18
- class BreaKHis(base.ImageClassification):
17
+ class BreaKHis(vision.VisionDataset[tv_tensors.Image, torch.Tensor]):
19
18
  """Dataset class for BreaKHis images and corresponding targets."""
20
19
 
21
20
  _resources: List[structs.DownloadResource] = [
@@ -145,7 +144,7 @@ class BreaKHis(base.ImageClassification):
145
144
  )
146
145
 
147
146
  @override
148
- def load_image(self, index: int) -> tv_tensors.Image:
147
+ def load_data(self, index: int) -> tv_tensors.Image:
149
148
  image_path = self._image_files[self._indices[index]]
150
149
  return io.read_image_as_tensor(image_path)
151
150
 
@@ -11,12 +11,11 @@ from torchvision import tv_tensors
11
11
  from torchvision.transforms.v2 import functional
12
12
  from typing_extensions import override
13
13
 
14
- from eva.vision.data.datasets import _validators, wsi
15
- from eva.vision.data.datasets.classification import base
14
+ from eva.vision.data.datasets import _validators, vision, wsi
16
15
  from eva.vision.data.wsi.patching import samplers
17
16
 
18
17
 
19
- class Camelyon16(wsi.MultiWsiDataset, base.ImageClassification):
18
+ class Camelyon16(wsi.MultiWsiDataset, vision.VisionDataset[tv_tensors.Image, torch.Tensor]):
20
19
  """Dataset class for Camelyon16 images and corresponding targets."""
21
20
 
22
21
  _val_slides = [
@@ -195,10 +194,10 @@ class Camelyon16(wsi.MultiWsiDataset, base.ImageClassification):
195
194
 
196
195
  @override
197
196
  def __getitem__(self, index: int) -> Tuple[tv_tensors.Image, torch.Tensor, Dict[str, Any]]:
198
- return base.ImageClassification.__getitem__(self, index)
197
+ return vision.VisionDataset.__getitem__(self, index)
199
198
 
200
199
  @override
201
- def load_image(self, index: int) -> tv_tensors.Image:
200
+ def load_data(self, index: int) -> tv_tensors.Image:
202
201
  image_array = wsi.MultiWsiDataset.__getitem__(self, index)
203
202
  return functional.to_image(image_array)
204
203
 
@@ -8,12 +8,11 @@ from torchvision import tv_tensors
8
8
  from torchvision.datasets import folder, utils
9
9
  from typing_extensions import override
10
10
 
11
- from eva.vision.data.datasets import _validators, structs
12
- from eva.vision.data.datasets.classification import base
11
+ from eva.vision.data.datasets import _validators, structs, vision
13
12
  from eva.vision.utils import io
14
13
 
15
14
 
16
- class CRC(base.ImageClassification):
15
+ class CRC(vision.VisionDataset[tv_tensors.Image, torch.Tensor]):
17
16
  """Dataset class for CRC images and corresponding targets."""
18
17
 
19
18
  _train_resource: structs.DownloadResource = structs.DownloadResource(
@@ -117,7 +116,7 @@ class CRC(base.ImageClassification):
117
116
  )
118
117
 
119
118
  @override
120
- def load_image(self, index: int) -> tv_tensors.Image:
119
+ def load_data(self, index: int) -> tv_tensors.Image:
121
120
  image_path, _ = self._samples[index]
122
121
  return io.read_image_as_tensor(image_path)
123
122