monai-weekly 1.4.dev2428__py3-none-any.whl → 1.4.dev2430__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. monai/__init__.py +1 -1
  2. monai/_version.py +3 -3
  3. monai/apps/auto3dseg/hpo_gen.py +1 -1
  4. monai/apps/detection/utils/anchor_utils.py +2 -2
  5. monai/apps/pathology/transforms/post/array.py +7 -4
  6. monai/auto3dseg/analyzer.py +1 -1
  7. monai/bundle/scripts.py +204 -22
  8. monai/bundle/utils.py +1 -0
  9. monai/data/dataset_summary.py +1 -0
  10. monai/data/meta_tensor.py +2 -2
  11. monai/data/test_time_augmentation.py +2 -0
  12. monai/data/utils.py +9 -6
  13. monai/data/wsi_reader.py +2 -2
  14. monai/engines/__init__.py +3 -1
  15. monai/engines/trainer.py +281 -2
  16. monai/engines/utils.py +76 -1
  17. monai/handlers/mlflow_handler.py +21 -4
  18. monai/inferers/__init__.py +5 -0
  19. monai/inferers/inferer.py +1279 -1
  20. monai/metrics/cumulative_average.py +2 -0
  21. monai/metrics/panoptic_quality.py +1 -1
  22. monai/metrics/rocauc.py +2 -2
  23. monai/networks/blocks/__init__.py +3 -0
  24. monai/networks/blocks/attention_utils.py +128 -0
  25. monai/networks/blocks/crossattention.py +168 -0
  26. monai/networks/blocks/rel_pos_embedding.py +56 -0
  27. monai/networks/blocks/selfattention.py +74 -5
  28. monai/networks/blocks/spade_norm.py +95 -0
  29. monai/networks/blocks/spatialattention.py +82 -0
  30. monai/networks/blocks/transformerblock.py +25 -4
  31. monai/networks/blocks/upsample.py +22 -10
  32. monai/networks/layers/__init__.py +2 -1
  33. monai/networks/layers/factories.py +12 -1
  34. monai/networks/layers/simplelayers.py +1 -1
  35. monai/networks/layers/utils.py +14 -1
  36. monai/networks/layers/vector_quantizer.py +233 -0
  37. monai/networks/nets/__init__.py +9 -0
  38. monai/networks/nets/autoencoderkl.py +702 -0
  39. monai/networks/nets/controlnet.py +465 -0
  40. monai/networks/nets/diffusion_model_unet.py +1913 -0
  41. monai/networks/nets/patchgan_discriminator.py +230 -0
  42. monai/networks/nets/quicknat.py +8 -6
  43. monai/networks/nets/resnet.py +3 -4
  44. monai/networks/nets/spade_autoencoderkl.py +480 -0
  45. monai/networks/nets/spade_diffusion_model_unet.py +934 -0
  46. monai/networks/nets/spade_network.py +435 -0
  47. monai/networks/nets/swin_unetr.py +4 -3
  48. monai/networks/nets/transformer.py +157 -0
  49. monai/networks/nets/vqvae.py +472 -0
  50. monai/networks/schedulers/__init__.py +17 -0
  51. monai/networks/schedulers/ddim.py +294 -0
  52. monai/networks/schedulers/ddpm.py +250 -0
  53. monai/networks/schedulers/pndm.py +316 -0
  54. monai/networks/schedulers/scheduler.py +205 -0
  55. monai/networks/utils.py +22 -0
  56. monai/transforms/croppad/array.py +8 -8
  57. monai/transforms/croppad/dictionary.py +4 -4
  58. monai/transforms/croppad/functional.py +1 -1
  59. monai/transforms/regularization/array.py +4 -0
  60. monai/transforms/spatial/array.py +1 -1
  61. monai/transforms/utils_create_transform_ims.py +2 -4
  62. monai/utils/__init__.py +1 -0
  63. monai/utils/misc.py +5 -4
  64. monai/utils/ordering.py +207 -0
  65. monai/visualize/class_activation_maps.py +5 -5
  66. monai/visualize/img2tensorboard.py +3 -1
  67. {monai_weekly-1.4.dev2428.dist-info → monai_weekly-1.4.dev2430.dist-info}/METADATA +1 -1
  68. {monai_weekly-1.4.dev2428.dist-info → monai_weekly-1.4.dev2430.dist-info}/RECORD +71 -50
  69. {monai_weekly-1.4.dev2428.dist-info → monai_weekly-1.4.dev2430.dist-info}/WHEEL +1 -1
  70. {monai_weekly-1.4.dev2428.dist-info → monai_weekly-1.4.dev2430.dist-info}/LICENSE +0 -0
  71. {monai_weekly-1.4.dev2428.dist-info → monai_weekly-1.4.dev2430.dist-info}/top_level.txt +0 -0
monai/utils/misc.py CHANGED
@@ -118,6 +118,7 @@ def star_zip_with(op, *vals):
118
118
 
119
119
 
120
120
  T = TypeVar("T")
121
+ NT = TypeVar("NT", np.ndarray, torch.Tensor)
121
122
 
122
123
 
123
124
  @overload
@@ -814,7 +815,7 @@ class ConvertUnits:
814
815
  "Both input and target units should be from the same quantity. "
815
816
  f"Input quantity is {input_base} while target quantity is {target_base}"
816
817
  )
817
- self._calculate_conversion_factor()
818
+ self.conversion_factor = self._calculate_conversion_factor()
818
819
 
819
820
  def _get_valid_unit_and_base(self, unit):
820
821
  unit = str(unit).lower()
@@ -841,7 +842,7 @@ class ConvertUnits:
841
842
  return 1.0
842
843
  input_power = self._get_unit_power(self.input_unit)
843
844
  target_power = self._get_unit_power(self.target_unit)
844
- self.conversion_factor = 10 ** (input_power - target_power)
845
+ return 10 ** (input_power - target_power)
845
846
 
846
847
  def __call__(self, value: int | float) -> Any:
847
848
  return float(value) * self.conversion_factor
@@ -907,11 +908,11 @@ def is_sqrt(num: Sequence[int] | int) -> bool:
907
908
  return ensure_tuple(ret) == num
908
909
 
909
910
 
910
- def unsqueeze_right(arr: NdarrayOrTensor, ndim: int) -> NdarrayOrTensor:
911
+ def unsqueeze_right(arr: NT, ndim: int) -> NT:
911
912
  """Append 1-sized dimensions to `arr` to create a result with `ndim` dimensions."""
912
913
  return arr[(...,) + (None,) * (ndim - arr.ndim)]
913
914
 
914
915
 
915
- def unsqueeze_left(arr: NdarrayOrTensor, ndim: int) -> NdarrayOrTensor:
916
+ def unsqueeze_left(arr: NT, ndim: int) -> NT:
916
917
  """Prepend 1-sized dimensions to `arr` to create a result with `ndim` dimensions."""
917
918
  return arr[(None,) * (ndim - arr.ndim)]
@@ -0,0 +1,207 @@
1
+ # Copyright (c) MONAI Consortium
2
+ # Licensed under the Apache License, Version 2.0 (the "License");
3
+ # you may not use this file except in compliance with the License.
4
+ # You may obtain a copy of the License at
5
+ # http://www.apache.org/licenses/LICENSE-2.0
6
+ # Unless required by applicable law or agreed to in writing, software
7
+ # distributed under the License is distributed on an "AS IS" BASIS,
8
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9
+ # See the License for the specific language governing permissions and
10
+ # limitations under the License.
11
+
12
+ from __future__ import annotations
13
+
14
+ import numpy as np
15
+
16
+ from monai.utils.enums import OrderingTransformations, OrderingType
17
+
18
+
19
+ class Ordering:
20
+ """
21
+ Ordering class that projects a 2D or 3D image into a 1D sequence. It also allows the image to be transformed with
22
+ one of the following transformations:
23
+ Reflection (see np.flip for more details).
24
+ Transposition (see np.transpose for more details).
25
+ 90-degree rotation (see np.rot90 for more details).
26
+
27
+ The transformations are applied in the order specified by the transformation_order parameter.
28
+
29
+ Args:
30
+ ordering_type: The ordering type. One of the following:
31
+ - 'raster_scan': The image is projected into a 1D sequence by scanning the image from left to right and from
32
+ top to bottom. Also called a row major ordering.
33
+ - 's_curve': The image is projected into a 1D sequence by scanning the image in a circular snake like
34
+ pattern from top left towards right gowing in a spiral towards the center.
35
+ - random': The image is projected into a 1D sequence by randomly shuffling the image.
36
+ spatial_dims: The number of spatial dimensions of the image.
37
+ dimensions: The dimensions of the image.
38
+ reflected_spatial_dims: A tuple of booleans indicating whether to reflect the image along each spatial dimension.
39
+ transpositions_axes: A tuple of tuples indicating the axes to transpose the image along.
40
+ rot90_axes: A tuple of tuples indicating the axes to rotate the image along.
41
+ transformation_order: The order in which to apply the transformations.
42
+ """
43
+
44
+ def __init__(
45
+ self,
46
+ ordering_type: str,
47
+ spatial_dims: int,
48
+ dimensions: tuple[int, int, int] | tuple[int, int, int, int],
49
+ reflected_spatial_dims: tuple[bool, bool] | None = None,
50
+ transpositions_axes: tuple[tuple[int, int], ...] | tuple[tuple[int, int, int], ...] | None = None,
51
+ rot90_axes: tuple[tuple[int, int], ...] | None = None,
52
+ transformation_order: tuple[str, ...] = (
53
+ OrderingTransformations.TRANSPOSE.value,
54
+ OrderingTransformations.ROTATE_90.value,
55
+ OrderingTransformations.REFLECT.value,
56
+ ),
57
+ ) -> None:
58
+ super().__init__()
59
+ self.ordering_type = ordering_type
60
+
61
+ if self.ordering_type not in list(OrderingType):
62
+ raise ValueError(
63
+ f"ordering_type must be one of the following {list(OrderingType)}, but got {self.ordering_type}."
64
+ )
65
+
66
+ self.spatial_dims = spatial_dims
67
+ self.dimensions = dimensions
68
+
69
+ if len(dimensions) != self.spatial_dims + 1:
70
+ raise ValueError(f"dimensions must be of length {self.spatial_dims + 1}, but got {len(dimensions)}.")
71
+
72
+ self.reflected_spatial_dims = reflected_spatial_dims
73
+ self.transpositions_axes = transpositions_axes
74
+ self.rot90_axes = rot90_axes
75
+ if len(set(transformation_order)) != len(transformation_order):
76
+ raise ValueError(f"No duplicates are allowed. Received {transformation_order}.")
77
+
78
+ for transformation in transformation_order:
79
+ if transformation not in list(OrderingTransformations):
80
+ raise ValueError(
81
+ f"Valid transformations are {list(OrderingTransformations)} but received {transformation}."
82
+ )
83
+ self.transformation_order = transformation_order
84
+
85
+ self.template = self._create_template()
86
+ self._sequence_ordering = self._create_ordering()
87
+ self._revert_sequence_ordering = np.argsort(self._sequence_ordering)
88
+
89
+ def __call__(self, x: np.ndarray) -> np.ndarray:
90
+ x = x[self._sequence_ordering]
91
+
92
+ return x
93
+
94
+ def get_sequence_ordering(self) -> np.ndarray:
95
+ return self._sequence_ordering
96
+
97
+ def get_revert_sequence_ordering(self) -> np.ndarray:
98
+ return self._revert_sequence_ordering
99
+
100
+ def _create_ordering(self) -> np.ndarray:
101
+ self.template = self._transform_template()
102
+ order = self._order_template(template=self.template)
103
+
104
+ return order
105
+
106
+ def _create_template(self) -> np.ndarray:
107
+ spatial_dimensions = self.dimensions[1:]
108
+ template = np.arange(np.prod(spatial_dimensions)).reshape(*spatial_dimensions)
109
+
110
+ return template
111
+
112
+ def _transform_template(self) -> np.ndarray:
113
+ for transformation in self.transformation_order:
114
+ if transformation == OrderingTransformations.TRANSPOSE.value:
115
+ self.template = self._transpose_template(template=self.template)
116
+ elif transformation == OrderingTransformations.ROTATE_90.value:
117
+ self.template = self._rot90_template(template=self.template)
118
+ elif transformation == OrderingTransformations.REFLECT.value:
119
+ self.template = self._flip_template(template=self.template)
120
+
121
+ return self.template
122
+
123
+ def _transpose_template(self, template: np.ndarray) -> np.ndarray:
124
+ if self.transpositions_axes is not None:
125
+ for axes in self.transpositions_axes:
126
+ template = np.transpose(template, axes=axes)
127
+
128
+ return template
129
+
130
+ def _flip_template(self, template: np.ndarray) -> np.ndarray:
131
+ if self.reflected_spatial_dims is not None:
132
+ for axis, to_reflect in enumerate(self.reflected_spatial_dims):
133
+ template = np.flip(template, axis=axis) if to_reflect else template
134
+
135
+ return template
136
+
137
+ def _rot90_template(self, template: np.ndarray) -> np.ndarray:
138
+ if self.rot90_axes is not None:
139
+ for axes in self.rot90_axes:
140
+ template = np.rot90(template, axes=axes)
141
+
142
+ return template
143
+
144
+ def _order_template(self, template: np.ndarray) -> np.ndarray:
145
+ depths = None
146
+ if self.spatial_dims == 2:
147
+ rows, columns = template.shape[0], template.shape[1]
148
+ else:
149
+ rows, columns, depths = (template.shape[0], template.shape[1], template.shape[2])
150
+
151
+ sequence = eval(f"self.{self.ordering_type}_idx")(rows, columns, depths)
152
+
153
+ ordering = np.array([template[tuple(e)] for e in sequence])
154
+
155
+ return ordering
156
+
157
+ @staticmethod
158
+ def raster_scan_idx(rows: int, cols: int, depths: int | None = None) -> np.ndarray:
159
+ idx: list[tuple] = []
160
+
161
+ for r in range(rows):
162
+ for c in range(cols):
163
+ if depths is not None:
164
+ for d in range(depths):
165
+ idx.append((r, c, d))
166
+ else:
167
+ idx.append((r, c))
168
+
169
+ idx_np = np.array(idx)
170
+
171
+ return idx_np
172
+
173
+ @staticmethod
174
+ def s_curve_idx(rows: int, cols: int, depths: int | None = None) -> np.ndarray:
175
+ idx: list[tuple] = []
176
+
177
+ for r in range(rows):
178
+ col_idx = range(cols) if r % 2 == 0 else range(cols - 1, -1, -1)
179
+ for c in col_idx:
180
+ if depths:
181
+ depth_idx = range(depths) if c % 2 == 0 else range(depths - 1, -1, -1)
182
+
183
+ for d in depth_idx:
184
+ idx.append((r, c, d))
185
+ else:
186
+ idx.append((r, c))
187
+
188
+ idx_np = np.array(idx)
189
+
190
+ return idx_np
191
+
192
+ @staticmethod
193
+ def random_idx(rows: int, cols: int, depths: int | None = None) -> np.ndarray:
194
+ idx: list[tuple] = []
195
+
196
+ for r in range(rows):
197
+ for c in range(cols):
198
+ if depths:
199
+ for d in range(depths):
200
+ idx.append((r, c, d))
201
+ else:
202
+ idx.append((r, c))
203
+
204
+ idx_np = np.array(idx)
205
+ np.random.shuffle(idx_np)
206
+
207
+ return idx_np
@@ -290,7 +290,7 @@ class CAM(CAMBase):
290
290
  )
291
291
  self.fc_layers = fc_layers
292
292
 
293
- def compute_map(self, x, class_idx=None, layer_idx=-1, **kwargs):
293
+ def compute_map(self, x, class_idx=None, layer_idx=-1, **kwargs): # type: ignore[override]
294
294
  logits, acti, _ = self.nn_module(x, **kwargs)
295
295
  acti = acti[layer_idx]
296
296
  if class_idx is None:
@@ -302,7 +302,7 @@ class CAM(CAMBase):
302
302
  output = torch.stack([output[i, b : b + 1] for i, b in enumerate(class_idx)], dim=0)
303
303
  return output.reshape(b, 1, *spatial) # resume the spatial dims on the selected class
304
304
 
305
- def __call__(self, x, class_idx=None, layer_idx=-1, **kwargs):
305
+ def __call__(self, x, class_idx=None, layer_idx=-1, **kwargs): # type: ignore[override]
306
306
  """
307
307
  Compute the activation map with upsampling and postprocessing.
308
308
 
@@ -361,7 +361,7 @@ class GradCAM(CAMBase):
361
361
 
362
362
  """
363
363
 
364
- def compute_map(self, x, class_idx=None, retain_graph=False, layer_idx=-1, **kwargs):
364
+ def compute_map(self, x, class_idx=None, retain_graph=False, layer_idx=-1, **kwargs): # type: ignore[override]
365
365
  _, acti, grad = self.nn_module(x, class_idx=class_idx, retain_graph=retain_graph, **kwargs)
366
366
  acti, grad = acti[layer_idx], grad[layer_idx]
367
367
  b, c, *spatial = grad.shape
@@ -369,7 +369,7 @@ class GradCAM(CAMBase):
369
369
  acti_map = (weights * acti).sum(1, keepdim=True)
370
370
  return F.relu(acti_map)
371
371
 
372
- def __call__(self, x, class_idx=None, layer_idx=-1, retain_graph=False, **kwargs):
372
+ def __call__(self, x, class_idx=None, layer_idx=-1, retain_graph=False, **kwargs): # type: ignore[override]
373
373
  """
374
374
  Compute the activation map with upsampling and postprocessing.
375
375
 
@@ -401,7 +401,7 @@ class GradCAMpp(GradCAM):
401
401
 
402
402
  """
403
403
 
404
- def compute_map(self, x, class_idx=None, retain_graph=False, layer_idx=-1, **kwargs):
404
+ def compute_map(self, x, class_idx=None, retain_graph=False, layer_idx=-1, **kwargs): # type: ignore[override]
405
405
  _, acti, grad = self.nn_module(x, class_idx=class_idx, retain_graph=retain_graph, **kwargs)
406
406
  acti, grad = acti[layer_idx], grad[layer_idx]
407
407
  b, c, *spatial = grad.shape
@@ -176,7 +176,9 @@ def plot_2d_or_3d_image(
176
176
  # as the `d` data has no batch dim, reduce the spatial dim index if positive
177
177
  frame_dim = frame_dim - 1 if frame_dim > 0 else frame_dim
178
178
 
179
- d: np.ndarray = data_index.detach().cpu().numpy() if isinstance(data_index, torch.Tensor) else data_index
179
+ d: np.ndarray = (
180
+ data_index.detach().cpu().numpy() if isinstance(data_index, torch.Tensor) else np.asarray(data_index)
181
+ )
180
182
 
181
183
  if d.ndim == 2:
182
184
  d = rescale_array(d, 0, 1) # type: ignore
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: monai-weekly
3
- Version: 1.4.dev2428
3
+ Version: 1.4.dev2430
4
4
  Summary: AI Toolkit for Healthcare Imaging
5
5
  Home-page: https://monai.io/
6
6
  Author: MONAI Consortium
@@ -1,5 +1,5 @@
1
- monai/__init__.py,sha256=GMN5bu8HXSrLOv8JrCwUEKIVD183yWjRRzNTpu74kuU,2722
2
- monai/_version.py,sha256=y4EFYM-nXr2YPC15t-uLLjvkpi1fvukHoIo4zV9isJI,503
1
+ monai/__init__.py,sha256=_QozTiwyy6qpqJ5oX2PSxYbqUoXKRgnQnkEAk33lkjA,2722
2
+ monai/_version.py,sha256=N95fYvfNA1LI8sPj8gCsJWWoY4Vuyz0MBqeedb7l354,503
3
3
  monai/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  monai/_extensions/__init__.py,sha256=NEBPreRhQ8H9gVvgrLr_y52_TmqB96u_u4VQmeNT93I,642
5
5
  monai/_extensions/loader.py,sha256=7SiKw36q-nOzH8CRbBurFrz7GM40GCu7rc93Tm8XpnI,3643
@@ -17,7 +17,7 @@ monai/apps/auto3dseg/auto_runner.py,sha256=a4Ry93TkK0aTb68bwle8HoG4SzUbUf0IbDrY3
17
17
  monai/apps/auto3dseg/bundle_gen.py,sha256=y_9lbw0xk1em0TsIn7mTJHmD3OQNcNZVsjgkhdYg0Lw,28994
18
18
  monai/apps/auto3dseg/data_analyzer.py,sha256=XJuQ-bSE3G_6r2i6S75jjo-klWTUGpy5aY3WqijSWqk,18628
19
19
  monai/apps/auto3dseg/ensemble_builder.py,sha256=GaLpeAIW5X9oC921cevE86coOsmXW2C136FHuo6UyMo,27277
20
- monai/apps/auto3dseg/hpo_gen.py,sha256=15u6SYIFfdwb-McQzb9Fcq3-jZjbi3idD8_XQX0veZU,16674
20
+ monai/apps/auto3dseg/hpo_gen.py,sha256=VMfN0M5Z8Mq3Epu4fgOD5N6X-BY2PARIC69wW2t5EQU,16691
21
21
  monai/apps/auto3dseg/transforms.py,sha256=iO4v9-dwQzvupJglX-H2HYuwUhmFdVgLbyh4BuDy7DY,3991
22
22
  monai/apps/auto3dseg/utils.py,sha256=7DPJbsL9YbhRdMZ6dEvCA_t_uLSSz7-WZSU2pMY4_qo,3138
23
23
  monai/apps/deepedit/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
@@ -40,7 +40,7 @@ monai/apps/detection/transforms/box_ops.py,sha256=3RFK8zNH8ufpHT_aB5xFR2wXrQauBQ
40
40
  monai/apps/detection/transforms/dictionary.py,sha256=OGEYrq2F8gFjYRYv7ZdlWFM6yYRs_24yYn7J2GYlgJc,69282
41
41
  monai/apps/detection/utils/ATSS_matcher.py,sha256=aajY2UJ-Ot9L5KDwORFOCuMsTQEU02BZ9-tNMfIYH98,13532
42
42
  monai/apps/detection/utils/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
43
- monai/apps/detection/utils/anchor_utils.py,sha256=A5JzCasQP_eW-amUMTw3PrGiFoeRyNEPVAdEenZsetw,18732
43
+ monai/apps/detection/utils/anchor_utils.py,sha256=coSzVq5ictzWL4XqwtlLTKlzdel6cfHFLbvM6zOiq8M,18718
44
44
  monai/apps/detection/utils/box_coder.py,sha256=81Qe8wf6IRb4kJgcS957yWdOpY_G8nUdyIFPXxpMQvk,11120
45
45
  monai/apps/detection/utils/box_selector.py,sha256=uXI0YrhugYR68xYshRs5JpPTT1nL3QMMS1nJ_RpddVo,9031
46
46
  monai/apps/detection/utils/detector_utils.py,sha256=pU7bOzH-ay9Lnzu1aHCrIwlaGVf5xj13E7Somx_vFnk,10306
@@ -77,7 +77,7 @@ monai/apps/pathology/metrics/__init__.py,sha256=c7xRUzhQesEWRIUFF6vM-Qs9v0Lv8QzC
77
77
  monai/apps/pathology/metrics/lesion_froc.py,sha256=LNwcuatNEppyWMehnpBOn1474jH0hOJCq3gdq5mNw8k,7331
78
78
  monai/apps/pathology/transforms/__init__.py,sha256=c3YkornqjX-fHRnwkpn_PxmnMje6pif1qxPdFNyQUWU,2243
79
79
  monai/apps/pathology/transforms/post/__init__.py,sha256=WUZbaM2bg13mpbnNhol0D0A328XgUspTWtPvli1Uqpk,1995
80
- monai/apps/pathology/transforms/post/array.py,sha256=pjoTpdOzIHlT9L3GomVUcnVGHcPINrro5wtedIgyx-E,37245
80
+ monai/apps/pathology/transforms/post/array.py,sha256=gYIuHMPhGcomPE4RKfS9Zv-7IytCUUBCpl-r9w4rGHA,37417
81
81
  monai/apps/pathology/transforms/post/dictionary.py,sha256=ZReeFqcZRkltwhRaKsedeptprB1B89lKWFimAzkk0Vg,25928
82
82
  monai/apps/pathology/transforms/stain/__init__.py,sha256=i9HfrXiQHG5XHfqMtz2g7yBX7p1uN0xcGAPCYyXSmV8,836
83
83
  monai/apps/pathology/transforms/stain/array.py,sha256=Dr1fCmkQzc8n40XbLAHpq1EG5wkMqTjWgYN2FGJfMGk,8366
@@ -102,7 +102,7 @@ monai/apps/tcia/label_desc.py,sha256=B8l9mVmRzLysLmEIIYVeenly_68okCt461qeLQSxCJ8
102
102
  monai/apps/tcia/utils.py,sha256=iyLXr5_51rolbRUZFN_Fwc6TIhAbeSl6XZ2m5RYpzTw,6303
103
103
  monai/auto3dseg/__init__.py,sha256=DbZC7wqx4zBNcguLQGu8bGmAiKnk9LvjtQDtwdwG19I,1164
104
104
  monai/auto3dseg/algo_gen.py,sha256=_BscoAnUzQKRqz5jHvdsuCe3tTxq7PUQYPMLX0WuxCc,4286
105
- monai/auto3dseg/analyzer.py,sha256=-2CTCFhufE6oqGvNRcNF7NQ8ovzL_U5nouxqB14koEI,41323
105
+ monai/auto3dseg/analyzer.py,sha256=7l8QT36lG68b8rK23CC2omz6PO1fxmDwOljxXMn5clQ,41351
106
106
  monai/auto3dseg/operations.py,sha256=1sNDWnz5Zs2-scpb1wotxar7yGYQ-VPI-_b2KnZqW9g,5110
107
107
  monai/auto3dseg/seg_summarizer.py,sha256=T5Kwvc6eKet-vlzvBQgCLHbxHto-P5tiN_7uIk5uVfs,8717
108
108
  monai/auto3dseg/utils.py,sha256=zEicEO_--6-1kzT5HlmhAAd575gnl2AFmW8O3FnIznE,18674
@@ -112,8 +112,8 @@ monai/bundle/config_item.py,sha256=rMjXSGkjJZdi04BwSHwCcIwzIb_TflmC3xDhC3SVJRs,1
112
112
  monai/bundle/config_parser.py,sha256=IewIX0HnjzL5nZYdcSdWGzc7Z4xqUaOTb9wa6wjZ4Y8,22895
113
113
  monai/bundle/properties.py,sha256=iN3K4FVmN9ny1Hw9p5j7_ULcCdSD8PmrR7qXxbNz49k,11582
114
114
  monai/bundle/reference_resolver.py,sha256=1qdz732zl1dwSWyKaW6JOs1YqoCrXu7NBi5jz3zjqxA,15747
115
- monai/bundle/scripts.py,sha256=ZsNpbMl0KjT9UX4ll-Hobe06rB7srhW-Mj8zxQ5hpeg,80520
116
- monai/bundle/utils.py,sha256=hGRiEYeP8YekbNmSm_xFr31-SEHx4O5lpKAB24RjdYQ,8927
115
+ monai/bundle/scripts.py,sha256=ipS7CDKx01ySmAQlrHBhpmgqksAOzYxK1ARbgHo9fxg,88619
116
+ monai/bundle/utils.py,sha256=Heob15Gf_dVpt-Gcts4sycoUny0nr7RvevNVSKe6sqc,8950
117
117
  monai/bundle/workflows.py,sha256=VMuBTkk6DGsnGRLFzNfVUzgy8UqUReluUlIPUaxODPQ,24765
118
118
  monai/config/__init__.py,sha256=CN28CfTdsp301gv8YXfVvkbztCfbAqrLKrJi_C8oP9s,1048
119
119
  monai/config/deviceconfig.py,sha256=3EU1Zi6yD_bxEAeHfzjbslEjq6vOvxNG6o9dxKUiEvc,10315
@@ -123,7 +123,7 @@ monai/data/box_utils.py,sha256=YbG6lOoYwUGmwcNmoKzq2xnNTbYA4LMkHmfsqteopCg,50102
123
123
  monai/data/csv_saver.py,sha256=fcZF4kBNQnDFwQjV9TS4zjq_zqsv_u3QldxRprMC7zI,4952
124
124
  monai/data/dataloader.py,sha256=GC1x8aZJaidXN8zaA-Vl6iEHlTP4ocjIvRhCv74elkQ,4459
125
125
  monai/data/dataset.py,sha256=U6NoF8JgbhNzJDQ3h57BOcIelx4j3IjRKZJID266Eks,78691
126
- monai/data/dataset_summary.py,sha256=P16hTM71E85H-Cku8FS1ypJzopD76Itla3QQGk_Z0dM,10216
126
+ monai/data/dataset_summary.py,sha256=5DkrzlNb3lw58j6lMR7aAGZH1YIw6b1UFQjkbourxt0,10243
127
127
  monai/data/decathlon_datalist.py,sha256=3z7p-PqEdj41MlkRFmc-Q1HNxI0D6Tgi4fmD3p1oq_E,10310
128
128
  monai/data/fft_utils.py,sha256=in9Zu8hC4oSVzuA-Zl236X6EkvgFka0RXdOxgvdGkv0,4448
129
129
  monai/data/folder_layout.py,sha256=IsHW1-Bkupn_T8r6MgFTIJQh5HwCg0xQwOKmgBtl0gE,6344
@@ -134,21 +134,21 @@ monai/data/image_writer.py,sha256=rH6vboPFkX4ziN3lnrmK6AzAOQYI9tEiOJb7Al2tj-8,39
134
134
  monai/data/iterable_dataset.py,sha256=A0L5jaxwnfgProBj96tlT160esI21yutnTf3a4c29Ms,13100
135
135
  monai/data/itk_torch_bridge.py,sha256=3th-B3tJuJE22JFfOUgGeTMOPh1czJEiSccFyn_Ob0w,14461
136
136
  monai/data/meta_obj.py,sha256=OxfcCSBFuN0fUpyIa9ey9HuqrqimARNnEZPuqRRXjLo,8800
137
- monai/data/meta_tensor.py,sha256=JfXsW6qSLGHacZMQyeW3Y1cRtxH7sIRPknnTTNcxwpk,27478
137
+ monai/data/meta_tensor.py,sha256=GG8CPjRZhPCShryY3cnyA5G2Crl_Q7Sym2pw5cVxBL0,27530
138
138
  monai/data/samplers.py,sha256=LUCAHy38ddGm67oJJp3W6ITBsDRqyGCrKtYn-pjrWc4,5102
139
139
  monai/data/synthetic.py,sha256=H0MaQq2nnYxXEMlvOW1-XoWJWY_VKsgZ75tWLO1aCXg,7375
140
- monai/data/test_time_augmentation.py,sha256=H1yUph4SkJ-bmKRXS-SRZfNKtWkihR7o4PTUWKuHxOw,9780
140
+ monai/data/test_time_augmentation.py,sha256=KgIcPDwF_KelBCX118J5gx13sefGaDgQFUDgGWCZujA,9871
141
141
  monai/data/thread_buffer.py,sha256=FtJlRwLHQzU9sf3XJk4G7b_-uKXaRQHAOMauc-zWN2Q,8840
142
142
  monai/data/torchscript_utils.py,sha256=KoJinpJiNepP6i-1DDy3-8m1Qg1bPfAZTScmXr0LT6g,5502
143
143
  monai/data/ultrasound_confidence_map.py,sha256=pEAp4lr-s00_T9d4IEYSJ5B9VQwf_T7BS9GBx8jw_Sg,14464
144
- monai/data/utils.py,sha256=WeIcBk7SUy-IOZiPuAp6dFZl9tktJvViDG3wMHaa9dU,66686
144
+ monai/data/utils.py,sha256=rqJQlthvhmZcemtnDZFcJzQqw9lwzKrAx_pJYhfRhpk,66665
145
145
  monai/data/video_dataset.py,sha256=mMTZCkgAx_BBoF4HHWcmEuT9zoNoUVPFtPeYYt76t-A,9075
146
146
  monai/data/wsi_datasets.py,sha256=Ga5VnOdOXU_tlhdub0ueD4VtWhkQG4IrueXX-abE3bA,18619
147
- monai/data/wsi_reader.py,sha256=P3S_ccTxF5ae2PGbb90kq-NIWs7lP2znh92vYYvUDFk,49478
148
- monai/engines/__init__.py,sha256=8z0G56REeXU78Ffr9T_Pz222G_GaqKp073LE-CI26yc,1018
147
+ monai/data/wsi_reader.py,sha256=yVbgl44bS9xF0wsr_ZeLwaljMlTOrtjVTpYKykydEMU,49508
148
+ monai/engines/__init__.py,sha256=oV0zH5n8qPdCCNZCqLqN4Z7iqADouDtZmtswWQoZWOk,1094
149
149
  monai/engines/evaluator.py,sha256=me4ay5X_17TGXrFBb9td2i38Vam7n7RofJNyqo_aB7E,26934
150
- monai/engines/trainer.py,sha256=HEmAiFYjz702Dqar5st-z13KfPkX1rPEafZgAmWTrfI,23793
151
- monai/engines/utils.py,sha256=gmDzkD4SIL9DeFBgWdjbf2e6yTQp_e3lA9aAJRwZmDQ,11631
150
+ monai/engines/trainer.py,sha256=Dnv_jI7uzgMvZzKzvWUS4WJ7brotD2TnI3GF2vhrcfo,38445
151
+ monai/engines/utils.py,sha256=1OoDZbsIL6R_j5cz4c3ZCQ90Z1QUh8XMgh8guzf5CmQ,15656
152
152
  monai/engines/workflow.py,sha256=EAWMehQz28o-fX8MKSVBjhI1YAM7-Gt-w1HfzcMl4gI,15250
153
153
  monai/fl/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
154
154
  monai/fl/client/__init__.py,sha256=Wnkcf-Guhi-d29eAH0p51jz1Tn9WSVM4UUGbbb9SAqQ,725
@@ -176,7 +176,7 @@ monai/handlers/mean_iou.py,sha256=-4vDqYx-Zd77PcR2-Wg6X-M35n13sMV5VysGiDCvjbQ,28
176
176
  monai/handlers/metric_logger.py,sha256=IEXGngnGh75Mxt1w6Nd4Tau8qHQjyZFLGzoePteH1jM,5477
177
177
  monai/handlers/metrics_reloaded_handler.py,sha256=9JtfWeDvjrdKNMKpRJQBu0k6XGxg8hfOm6224sB4A6E,6195
178
178
  monai/handlers/metrics_saver.py,sha256=GPTaIeXi0noRyW2BQYQtazFfGyezmqSBAYWeAF-C5t0,8560
179
- monai/handlers/mlflow_handler.py,sha256=Fm3p5mT2Gz3pV5v3WlBCERA3y14VcBUCEZGHHm8u8xM,22501
179
+ monai/handlers/mlflow_handler.py,sha256=8feCVc7oyhV24jPftHpBs5BMt_E-22efcmZ0C-QC-LA,23233
180
180
  monai/handlers/nvtx_handlers.py,sha256=dBITb2hboynktwZNkRrlqM7STu7n3qXrdoC1-IogWc4,6819
181
181
  monai/handlers/panoptic_quality.py,sha256=Dr_cMANJne1Cvc_pnI33QAUMAVKbkO4NBfTFjedGZOE,3651
182
182
  monai/handlers/parameter_scheduler.py,sha256=UE0Lww8ZYyXcHq9N4TXoWmJWSQaYTwpLlLHDeq2p_UY,7119
@@ -190,8 +190,8 @@ monai/handlers/surface_distance.py,sha256=HKQrRGy08uWNr9X-mJ1IhMwV_ndZOijEJS7TYL
190
190
  monai/handlers/tensorboard_handlers.py,sha256=FvuK2Ymc9oBoGJQYUcUxBKVNU6a_I5agUXUUgNfIvYM,22615
191
191
  monai/handlers/utils.py,sha256=IXdBBGlQ0rwBeTlFKE1br4Mq42zcAvFgSF7RPg-yAiU,10239
192
192
  monai/handlers/validation_handler.py,sha256=8UicJSkRhJZh7RuK07isiLii_6WpN3AclrbqtV4ny6M,3698
193
- monai/inferers/__init__.py,sha256=QieP6rXQkH3kd4gEi3GiqedEPcbfmOv6dubReOohA-M,958
194
- monai/inferers/inferer.py,sha256=RW8HP_X017ZWtrG58y2_0BH9uF87HhuNl7KWMqREQU0,34219
193
+ monai/inferers/__init__.py,sha256=K74t_RCeUPdEZvHzIPzVAwZ9DtmouLqhb3qDEmFBWs4,1107
194
+ monai/inferers/inferer.py,sha256=aZwCmM6WGj49SHi_jIkQeGDstMz45frvM1Lomoeqzm4,92669
195
195
  monai/inferers/merger.py,sha256=Ch-qoGUVTTDWN9z_LXBRxElvyuZxOmuqAcecpg1xxAg,15566
196
196
  monai/inferers/splitter.py,sha256=_hTnFdvDNRckkA7ZGQehVsNZw83oXoGFWyk5VXNqgJg,21149
197
197
  monai/inferers/utils.py,sha256=dloXtQY_zI_h-_ppoJ2P-0ij9j2vCVEiq5VyL1k-Bs0,20386
@@ -218,7 +218,7 @@ monai/losses/unified_focal_loss.py,sha256=rCj8IpueYH_UMrOUXU0tjbXIN4Uix3bGnRZQtR
218
218
  monai/metrics/__init__.py,sha256=DUjK3_qfGZbw0zCv6OJgMSL3AfiYN47aYqLsxn69-HU,2174
219
219
  monai/metrics/active_learning_metrics.py,sha256=uKID2O4mnY-9P2ZzyT4sqJd2NfgzjSpNKpAwulWCozU,8211
220
220
  monai/metrics/confusion_matrix.py,sha256=Spb20jYPnbgGZfPKDQI36ePznPf1xujxhboNnW8HxdQ,15064
221
- monai/metrics/cumulative_average.py,sha256=UINnp__332Kb4gDdIu6WAror11kQ0GxCeLydlsFx6tc,5578
221
+ monai/metrics/cumulative_average.py,sha256=8GGjHmiBboBikprg1380SsNn7RgzFIrHGWBYDBv6ebE,5636
222
222
  monai/metrics/f_beta_score.py,sha256=urI0J_tvl0qQ5-l2fgWV_jChbgpzLmgpRq125B3yxpw,3984
223
223
  monai/metrics/fid.py,sha256=P9wBKnumEdCgKlVUuEt9XzY5umPK1fXnnyXmljDl5N4,4794
224
224
  monai/metrics/froc.py,sha256=q7MAFsHHIp5EHBHwa5UbF5PRApjUonw-hUXax9k1WxQ,7981
@@ -229,22 +229,24 @@ monai/metrics/meandice.py,sha256=bFiDcK-af4cqV-JHAO2Qh2ixwj6fLjaBCaCO6jBAmxQ,134
229
229
  monai/metrics/meaniou.py,sha256=cGoW1re7v4hxXJfjyEVEFNsuzEupgJaIe6ZK_qrbIjw,7004
230
230
  monai/metrics/metric.py,sha256=VtIMNudwFkEhGAX1n0aYMaj18yKtmENKpo0JuWoVFvQ,15203
231
231
  monai/metrics/mmd.py,sha256=a_O0WlUPrtegG16eBnEaf1HngPN4s4nAH1WtvGo-8BU,3299
232
- monai/metrics/panoptic_quality.py,sha256=2CfSB1B0mwVOfTCuRNuYAn7XI8G4NPFRPc7NTbv5JNc,13679
232
+ monai/metrics/panoptic_quality.py,sha256=hsOr9kac9LLVOI2tvFuY80sfTk9w9HOG6zaBxtjFBvI,13707
233
233
  monai/metrics/regression.py,sha256=JV7x8ibD04hZeWz83Ac26jjyufsCanvAmohD-eWKtbY,26218
234
- monai/metrics/rocauc.py,sha256=CJOAzDamB8TcFP1bEg-I1m5V1-Pq5RMaLFdM6MtNa_E,8038
234
+ monai/metrics/rocauc.py,sha256=xOopgYaahaH1-PmD4yG3B3f25kA95yK56BbXIykra60,8094
235
235
  monai/metrics/surface_dice.py,sha256=aNERsTuJkPMfxatPaAzoW1KtvZvUAv4qe_7Kl_dOROI,15149
236
236
  monai/metrics/surface_distance.py,sha256=bKDTm7ulhjfiphHLrDJoA3OKI3npwQy2Z5wY-JkXtXg,9727
237
237
  monai/metrics/utils.py,sha256=jJiIFGGa-iwvz1otHAKqPKTNmfZqd2dI7_Hsfblgxqk,46914
238
238
  monai/metrics/wrapper.py,sha256=c1zg-xcypQyZ840TEuhhLgr4sClYMWTxlv1OieJTtvE,11781
239
239
  monai/networks/__init__.py,sha256=X-z-kmVt9kwoNPgfYITGycnvG_9HC3_RSRKD2YC35Ag,1020
240
- monai/networks/utils.py,sha256=GRtep2gGG1xxiviaQx1BNXP0tT-Tu4tyMgfKp4kLdMc,49645
241
- monai/networks/blocks/__init__.py,sha256=umyJFI-rDAMuseC0gD1vwCE3EowQpWjVfuCLKGFoL1g,2134
240
+ monai/networks/utils.py,sha256=-ayrjlK_VSCqjSuGnl4shFiM6KazV68gZVu16mJPxIQ,50306
241
+ monai/networks/blocks/__init__.py,sha256=-LMGPMN-eHzwsjkb88H66kImpr4v2hYATZ2y-mRm_K0,2264
242
242
  monai/networks/blocks/acti_norm.py,sha256=bVGXbTZ_ssRvmED5R7LOQ7jj4V6WbVFl8JMO-4iZ2Dk,4275
243
243
  monai/networks/blocks/activation.py,sha256=S5k3zcP2PsHBkeIxgWgNg8ppW80tTResVP2j9ZsvTFw,5839
244
244
  monai/networks/blocks/aspp.py,sha256=GGGE7NfWj77RkaWHbcLuUP4Aff-WeiDrtgtFuSoekQk,4380
245
+ monai/networks/blocks/attention_utils.py,sha256=UAlttLpn8vJCIiYyWXEUF-NzVTQBOK-aTieGtR5WrXk,4951
245
246
  monai/networks/blocks/backbone_fpn_utils.py,sha256=mdXFwtnRgwuaisTlY-c7OkY1ZZBY3I82dAjpXFAZFbg,7488
246
247
  monai/networks/blocks/convolutions.py,sha256=gRmbYfy3IR4taiXuxeH5KGOFjP55FoVWfP4e1L6ai0s,11686
247
248
  monai/networks/blocks/crf.py,sha256=gHyRgBWD9DmmbCJnXwsMa6WN7N9fDLuT_SwH8MnHhXE,5009
249
+ monai/networks/blocks/crossattention.py,sha256=ofE4BBMnOYilwujR_RVuCafFCdvKeeRIJgMd-y0qEVk,7452
248
250
  monai/networks/blocks/denseblock.py,sha256=hs1rcBp95euZT5ULjgefPApZH75-hqSaVKKNtHdGt10,4747
249
251
  monai/networks/blocks/dints_block.py,sha256=-JWz4-nnAjrOxU2oJ86-qN8Krb8FayKS8Zpbp1wLXzc,9255
250
252
  monai/networks/blocks/downsample.py,sha256=18cwYXL5H3DC5Yq12cdqTIijDJfMCE2YNHlPetFB6UY,2413
@@ -258,34 +260,41 @@ monai/networks/blocks/mlp.py,sha256=88Ytls8BUmdTIs7y-YiapLA7WoxLEkXTGBmH5EtaCB0,
258
260
  monai/networks/blocks/patchembedding.py,sha256=yjbZg4WIuUpyQSD_r_ZBrZqs60lGZMXVK18oHVhR9Tw,9248
259
261
  monai/networks/blocks/pos_embed_utils.py,sha256=vFEQqxZ6UAmjcy_icFDL9EwjRHYXuIbWr1chWUJqO7g,4070
260
262
  monai/networks/blocks/regunet_block.py,sha256=1FLIwVBtk66II6xQ7Q4LMY8DP0rMmeftN7HuaEgnf3A,8825
263
+ monai/networks/blocks/rel_pos_embedding.py,sha256=wuTJsk_NHSDX-3V0X9ctF99WIh2-SHLDbQxzrG7tz_4,2208
261
264
  monai/networks/blocks/segresnet_block.py,sha256=dREFa0CWuSWlSOm53fT7vZz6UC2J_7JAEaeHB9rYjAk,3339
262
- monai/networks/blocks/selfattention.py,sha256=hHgizL6GP8Tr9V7Tgkc6uF_PesbjPZFKYuwQ00op2Go,3329
265
+ monai/networks/blocks/selfattention.py,sha256=RlCE9x_YIC4EeNKajJbhmFnA_Zftz8gyHu62kV3uxHA,6388
266
+ monai/networks/blocks/spade_norm.py,sha256=Kq2ImmCQBaFURMnOTj08aphgGkF3ghDm19kXpPRq91c,3654
267
+ monai/networks/blocks/spatialattention.py,sha256=DIHg9hGM5m1Rn0Bt6aP5Y2Fqqvc5D0I4PmbbLovb5m8,3308
263
268
  monai/networks/blocks/squeeze_and_excitation.py,sha256=y2kXgoSFxywu-KCGYbI_d-NCCAEbuKAIY5gSqO_T7TI,12752
264
269
  monai/networks/blocks/text_embedding.py,sha256=HIlCTQCSyOEXnqo1l9TOC05duCoeWd9Kb4Oc0gvLZKw,3814
265
- monai/networks/blocks/transformerblock.py,sha256=tqGAsciNkHZvvzbExS6fAfcx3OWQcztKnG40MHOKTCQ,2323
270
+ monai/networks/blocks/transformerblock.py,sha256=CTN_UBsD0dVfGZYCUDukOX1jWTFzp2nnSJMMh8iL9vE,3090
266
271
  monai/networks/blocks/unetr_block.py,sha256=d_rqE76OFfd3QRcHuor5Zei2pOrupoleBWu3eYUup0c,9049
267
- monai/networks/blocks/upsample.py,sha256=If8gyKSt6oLVBabNPdPdIa-vhLPd041NdzGEE5xiC-E,13312
272
+ monai/networks/blocks/upsample.py,sha256=CeqqKx31gNw1CT3xz6UpU0fOjgW-7ZWxCRAOH4qAcxs,14024
268
273
  monai/networks/blocks/warp.py,sha256=XVFZKZR0kBhEtU5-xQsaqL06a-pAI7JJVupQCD2X4e8,7255
269
- monai/networks/layers/__init__.py,sha256=CYg428MBq1xYeTtfMn-a08YrbK9pwgMmmdypUvEzyBk,1612
274
+ monai/networks/layers/__init__.py,sha256=eSiNtHu0EZ1A8fw_lPTi_4szdRMsgZlZhtL6TR7fUnc,1689
270
275
  monai/networks/layers/conjugate_gradient.py,sha256=kCAwjtX_j5wrgR8x52WdGl4yCwZmcnUFONnM00G1sWU,3717
271
276
  monai/networks/layers/convutils.py,sha256=zwbYK4WJO1Tj2KASnOfxwYnb3p4pizXxdZRm6I1P3j4,8288
272
277
  monai/networks/layers/drop_path.py,sha256=SZtRNa1bDwk1rXWbUe70YDaw6H_NKeplm_Wk5Ye1L4Y,1802
273
- monai/networks/layers/factories.py,sha256=L4_JJSsdE02ovM2zgwN-JnUjQQCK2xPyf961O7n7SeU,15380
278
+ monai/networks/layers/factories.py,sha256=dMj-y3LRV5P_FmqMCZuf_A8P8l_fge3TVAXWzNhONuo,15795
274
279
  monai/networks/layers/filtering.py,sha256=7ru9Yt3yOM-ko-UqzYp-2tMpb8VHt5d767F-KkzrqYY,17992
275
280
  monai/networks/layers/gmm.py,sha256=Aq-YCHgUalgOZQ0x5mwYKJe1G7aiCiJybdkPTiiT120,3325
276
- monai/networks/layers/simplelayers.py,sha256=MhJ0h-Tf4_ZXMMB1gGwc8Plheja6X5PToTJ0tMHjjuE,28472
281
+ monai/networks/layers/simplelayers.py,sha256=ciUdKrj_DpEdT3AKs70aPySh73UMsyhoOCTiR2qk8Js,28478
277
282
  monai/networks/layers/spatial_transforms.py,sha256=fz2t7-ibijNLqTYpAn4ZgdXtzBSIyWlaF35mQtqWRY4,25581
278
- monai/networks/layers/utils.py,sha256=_387-Au76QG5wwGs7ESg0ocGTcBzw4DJz19H7vrPKjM,4296
283
+ monai/networks/layers/utils.py,sha256=k_2xVO8BTEMMVJtemUyKBWw4_5xtqd6OOTOG8qld8To,4916
284
+ monai/networks/layers/vector_quantizer.py,sha256=0PCcaH5_uaxFORHgEetQKazq74jgOVmvQJ3h4Ywat6Y,10058
279
285
  monai/networks/layers/weight_init.py,sha256=ehwI5F7jm_lmDkK4qVL7ocIzCEPx5UPgLaURcsfMNwk,2253
280
- monai/networks/nets/__init__.py,sha256=gAwfy-nj2hgClPBB3JdePgcBcLAvE3pfHR6Gp4opGwQ,3368
286
+ monai/networks/nets/__init__.py,sha256=F6jnwrFljIP6f5BjR4SeKzi7mr6WU4OgjRvr3ySEvIQ,3807
281
287
  monai/networks/nets/ahnet.py,sha256=RT-loCa5Z_3I2DWB8lmRkhxGXSsnMVBCEDpwo68-YB4,21570
282
288
  monai/networks/nets/attentionunet.py,sha256=lqsrzpy0sRuuFjAtKUUJ0hT3lGF9skpepWXLG0JBo-k,9427
283
289
  monai/networks/nets/autoencoder.py,sha256=QuLdDfDwhefIqA2n8XfmFyi5T8enP6O4PETdBKmFMKc,12586
290
+ monai/networks/nets/autoencoderkl.py,sha256=gSu8KF8bxM3SRRdvJcAwz5HVDzzXjG9synVvbPcLfHw,25801
284
291
  monai/networks/nets/basic_unet.py,sha256=K76Q-WXuCPGNf8X9qa1wwtiv1gzwlERrL6BKqKcpzlQ,10951
285
292
  monai/networks/nets/basic_unetplusplus.py,sha256=M2sSCgWvqgpiRq1tpR164udnbN1WkO1a81PmgCfV5lU,7961
286
293
  monai/networks/nets/classifier.py,sha256=U94OM91_pNT74wQV-_LOxAnbLvjuJvnorMK-xcE7HJE,6293
294
+ monai/networks/nets/controlnet.py,sha256=qf6coiiZjA9_Xtd4RyPqSLB2RTAETTjcXxoHrJo3iMU,18565
287
295
  monai/networks/nets/daf3d.py,sha256=mjQiaCreKR8isE1pMWfPMWP55Uq9jcELcldu2CZo5PE,23963
288
296
  monai/networks/nets/densenet.py,sha256=0LZqWU3HNfnEkNKBPwVg2GFoeIHQB5aBfP2_U54bv8g,15823
297
+ monai/networks/nets/diffusion_model_unet.py,sha256=c6PGGYEiitswWr9C4yJfIGOVtwxTQSDQhc1PmIYIxLs,72850
289
298
  monai/networks/nets/dints.py,sha256=GAL2cmWOk_mhsRaIdZ3pr-mMLqncWINdJCWj26IukL0,44775
290
299
  monai/networks/nets/dynunet.py,sha256=S2DX_tby7e5iCHL7q6X6f-vT6HwP6tbb2lRq9gHVJ24,18210
291
300
  monai/networks/nets/efficientnet.py,sha256=RcEM7ZTLCp9PzE06sCJDUbStzMZpItSiZjDlbRUaz-4,40671
@@ -296,16 +305,21 @@ monai/networks/nets/highresnet.py,sha256=1Mx8lR5K4sRXGWjspDAHaKq0WrX9Q7qz8CcBCKZ
296
305
  monai/networks/nets/hovernet.py,sha256=E831rgNN8SP1lui8-ffV7IUscDWvyTr-YTqXcpof878,28684
297
306
  monai/networks/nets/milmodel.py,sha256=aUDgYJG0kS3p4nBW_dF7b4cWwuC31w3KIzmUzXA08HE,9813
298
307
  monai/networks/nets/netadapter.py,sha256=JtcME9pcg8ud4jHKZKM9fE-8leP2PQXgUIfKBdB0wcA,6102
299
- monai/networks/nets/quicknat.py,sha256=IisYwI-xtsf_Gfma_flkBQWc-o2m8wS0NaPWbbcYNko,20220
308
+ monai/networks/nets/patchgan_discriminator.py,sha256=yTT0on0lzlDwSu4B9McMqdxqu5xD7Ws9wCwEkxvJEu0,8620
309
+ monai/networks/nets/quicknat.py,sha256=ko1BO9l4i4BVYG5V4ohkwUEyoRrPPPzmqNqnFhLTZ0k,20463
300
310
  monai/networks/nets/regressor.py,sha256=6Nz5yJuQDJJOr5R0rhot_mHu7_MDCA4ybV48wS1HS1M,6482
301
311
  monai/networks/nets/regunet.py,sha256=-A6ygR7lVyAflFyqWkVVOsY94uMXWol1f2xr_HmsU1c,18664
302
- monai/networks/nets/resnet.py,sha256=knEc21aXJ6iV0TpAcw_YzF6UGoPemweFCuQio1Fmj5c,28290
312
+ monai/networks/nets/resnet.py,sha256=oo1MCA9hccBVwDcMrZNpVmbDSRn3dOEkrn3DbKW2WZk,28141
303
313
  monai/networks/nets/segresnet.py,sha256=xNkSIvdk7kAyc3eVn-U_gGj8MoGVc5nklFKc_fkgOUs,13994
304
314
  monai/networks/nets/segresnet_ds.py,sha256=01R-t-cIvAoVEsqTRPC2sHVYGyiVfcvy8hng53X-6yQ,15703
305
315
  monai/networks/nets/senet.py,sha256=gulqPMYmSABbMbN39NElGzSU1TKGviJas7EPTBaZ60A,19289
306
- monai/networks/nets/swin_unetr.py,sha256=eDVGAGPaq5pL2E-dCyZTT4SmdUdRKU7iodunRnkWk1U,44811
316
+ monai/networks/nets/spade_autoencoderkl.py,sha256=4PVlLjKEMHYEmmsGcRhsDBNy9I0gXOTTowmTpeZYylw,18243
317
+ monai/networks/nets/spade_diffusion_model_unet.py,sha256=JQJRMX96jLHPPUmetpCpy5ZPm4qjoO-NoI4dfnWNaPI,36785
318
+ monai/networks/nets/spade_network.py,sha256=GguYucjIRyT_rZa9DrvUmv00FtqXHZtY1VfJM9Rygns,16479
319
+ monai/networks/nets/swin_unetr.py,sha256=H7cjCHZJmZoXDcVFYXJM5iPfQbHZGt1AES2-UoNsGo4,44849
307
320
  monai/networks/nets/torchvision_fc.py,sha256=3g5PD7C1MSkQ8xndhnVd0b3aN8zfshT8uiFS0OHyQaY,6309
308
321
  monai/networks/nets/transchex.py,sha256=uA_RfTDfPhwA1ecAPZ9EDnMyJKn2tUMLEWdyB_rU2v0,15726
322
+ monai/networks/nets/transformer.py,sha256=ki5lBRjOIAX376OfoP0Ln6wI-olOqiRTnXODyv3v6Q0,6043
309
323
  monai/networks/nets/unet.py,sha256=riKWB8iEEgO4CIiVTOo532726HWWBfuBcIHeoLvvN0w,13627
310
324
  monai/networks/nets/unetr.py,sha256=wQC3mpn_jEcZb0RXef0ueTe4WGjmnZqQVKKdnemFjnc,8545
311
325
  monai/networks/nets/varautoencoder.py,sha256=Pd9BdXW1iVjmAVCZIc2ElGtSDAWRBaLwEKxLDicyxZI,6282
@@ -313,6 +327,12 @@ monai/networks/nets/vit.py,sha256=SJ5MCJcVAQ2iTqkc1-AFF7oBgCkE7xcNr_ziGc8n_t8,62
313
327
  monai/networks/nets/vitautoenc.py,sha256=tTX-JHNl2H4y9e5Wk9rrtR6i_ebJHq90O61DnbBFhek,6033
314
328
  monai/networks/nets/vnet.py,sha256=zaJi5kSiTLAuFHThSZfhJvHP6zKh3oBWsTWG-328O_g,10820
315
329
  monai/networks/nets/voxelmorph.py,sha256=M6jzGn09wmTd54NeacHLWElug-Iu0ajPS_HtUaLyzDY,20811
330
+ monai/networks/nets/vqvae.py,sha256=Zf9fTL_rluhuJhH6gTNB6iiKRfwBxfuuyhCdU9TLmAk,18417
331
+ monai/networks/schedulers/__init__.py,sha256=rPmrNvnt8Bh9D2omPMgDiGVuT1XVJlgtlWIlqA_sjb4,755
332
+ monai/networks/schedulers/ddim.py,sha256=a01QajgWksTYsPxs4DuBzy59mE_PcyTJedd6VqJv5g0,14376
333
+ monai/networks/schedulers/ddpm.py,sha256=DkUwyI_TdorGtV9a33aJ8FrPU7CbpYOXYvgYP7uDxds,11318
334
+ monai/networks/schedulers/pndm.py,sha256=9Qe8NOw_tvlpCBK7yvkmyriyGfIO5RRDV8ZKPh85cQY,14472
335
+ monai/networks/schedulers/scheduler.py,sha256=X5eu5AmtNiads9cgaFy5r7BdlKYASSICyGSyF-fk6x8,9206
316
336
  monai/optimizers/__init__.py,sha256=XUL7o9vSL7bZImpxVZqcc1c8MwUMrOZL4nJ-mjAA7yM,796
317
337
  monai/optimizers/lr_finder.py,sha256=tbVi6qd-LLI6pENM9cDUv-Hh1HqziO3Wb9aI6JoaPng,21992
318
338
  monai/optimizers/lr_scheduler.py,sha256=YPY5MWgCTmExuIOBsVJrgfErkCT1ELBekcH0XeRP6Kk,4082
@@ -327,13 +347,13 @@ monai/transforms/nvtx.py,sha256=1EKEXZIhTUFKoIrJmd_fevwrHwo731dVFUFJQFiOk3w,3386
327
347
  monai/transforms/traits.py,sha256=F8kmhnekTyaAdo8wIFjO3-uqpVtmFym3mNxbYbyvkFI,3563
328
348
  monai/transforms/transform.py,sha256=XYunJKTgm99TPBAw4Ikams-wCpgGnKZYZTPN2042m7U,21532
329
349
  monai/transforms/utils.py,sha256=-5AoltSz1qqIZ1jhYAWtis8gJd781Tj9g-coyYvBTZU,94942
330
- monai/transforms/utils_create_transform_ims.py,sha256=20FdSIgkTqYY_yFX8MrrGznTTPCT6OtlmG-nL2vJCcI,31121
350
+ monai/transforms/utils_create_transform_ims.py,sha256=QEJVHsCZX7ZxsBArk6NjgCzSZuuokf8l1uFqiUZBBys,31155
331
351
  monai/transforms/utils_pytorch_numpy_unification.py,sha256=9Exl8id6kPbFvdZLcgfpj0FCUSjrwIlB7qiSQ4OdTZM,18779
332
352
  monai/transforms/croppad/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
333
- monai/transforms/croppad/array.py,sha256=5W7ydnsaMxJ3vLSnfNyta6tHvJND1lmdqXEXasoSKBg,74745
353
+ monai/transforms/croppad/array.py,sha256=mSzd1XdNK4vZB98fll-gREQM1EWuPOfNdUNTpmiy-QA,74793
334
354
  monai/transforms/croppad/batch.py,sha256=5ukcYk3VCDpk62AL5Q_jTqpXmSNTlw0UCUhDeAB4aV0,6138
335
- monai/transforms/croppad/dictionary.py,sha256=2pf_k3gvDi7ruzj6bx2gVNIae7SatiLEWLg7EKJZDbg,60722
336
- monai/transforms/croppad/functional.py,sha256=_agF3ustEVXVuKSF8qGNhXCrb3E6mc5Qypy37_MQU-8,12628
355
+ monai/transforms/croppad/dictionary.py,sha256=WOzj_PjmoB3zLEmtQlafb9-PWgXd-s5K7Z5Doc8Adns,60746
356
+ monai/transforms/croppad/functional.py,sha256=iroD0XBaMG1Mox6-EotIh2nAUxJPrpIyUrHopc83Sug,12640
337
357
  monai/transforms/intensity/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
338
358
  monai/transforms/intensity/array.py,sha256=bhKIAMgJu-QMQA8df9QdyancMJMShOIOGHjE__4XdXo,121574
339
359
  monai/transforms/intensity/dictionary.py,sha256=RXZeQG9dPvdvjoiWWlNkYec4NDWBxYXjfct4fywv1Ic,85059
@@ -351,7 +371,7 @@ monai/transforms/post/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJ
351
371
  monai/transforms/post/array.py,sha256=Btv9zElhzHpGAJSGp6N49mXZCI_DeVlB3gXY0Ue00_k,44998
352
372
  monai/transforms/post/dictionary.py,sha256=pq4Oh3GoDcS6sjUkLvHzYmySxuxzVW7grjogFuRsUsA,43042
353
373
  monai/transforms/regularization/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
354
- monai/transforms/regularization/array.py,sha256=tQPJy1QZEy-0N_-LQTeSGK-arUOaNsLOfQG_6tNnDOQ,7918
374
+ monai/transforms/regularization/array.py,sha256=yJbvs0-ElS7uK8jEZzYOL-nW2wizXvwni77s1pR7qvk,8036
355
375
  monai/transforms/regularization/dictionary.py,sha256=b2hw8nElkQeyu3LZSnWvz7pQMcK9tCuNHpLueAGTQr8,4800
356
376
  monai/transforms/signal/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
357
377
  monai/transforms/signal/array.py,sha256=eTlvqOIUQixh-voTNJcl532RvG4ZlQBNeHhg3TT3Cto,16325
@@ -360,13 +380,13 @@ monai/transforms/smooth_field/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6F
360
380
  monai/transforms/smooth_field/array.py,sha256=Pz4ErmcfVTRZpBe4_IAXTWHlGSmRfExegNKYyrSVwsE,17856
361
381
  monai/transforms/smooth_field/dictionary.py,sha256=iU4V2VjSy2H1K03KgumMUr3cyZVWEJS0W-tgc6SZtP4,11194
362
382
  monai/transforms/spatial/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
363
- monai/transforms/spatial/array.py,sha256=8HRXz4zyJq11uPiGUzq39QLsN0fD3JNJF1Q4Xjyd8k0,183231
383
+ monai/transforms/spatial/array.py,sha256=alooVNRtqxNFycF1G31J23sgz3EJnddzJImQUajNWBY,183254
364
384
  monai/transforms/spatial/dictionary.py,sha256=mvP_skSEI1sMl9y-AS3PZqNHhTLK6iOVOfbdezpNiNs,131672
365
385
  monai/transforms/spatial/functional.py,sha256=DCeJg2s3pPGd87cpryMsUMObTePhnDf4QX_dKtRpFTo,31249
366
386
  monai/transforms/utility/__init__.py,sha256=s9djSd6kvViPnFvMR11Dgd30Lv4oY6FaPJr4ZZJZLq0,573
367
387
  monai/transforms/utility/array.py,sha256=Pcg0nJEAHR60jydZTyueTSss9kaOiM4v6UFF1Fnj0PY,70600
368
388
  monai/transforms/utility/dictionary.py,sha256=hF90-R2wAMLjYZiGz8xjTVhz4z4hmmrNDXZ5DEC7zLs,73114
369
- monai/utils/__init__.py,sha256=yRGBiF4UEDHR8MAbQU50tqXswE0Ptd-3F8CDQ9g9Yzc,3726
389
+ monai/utils/__init__.py,sha256=QbMAngvOTgxcwIUpo-LRRBF8PtgG3bzgqXLGVlcUGnc,3757
370
390
  monai/utils/aliases.py,sha256=uBxkLudRfy3Rts9RZo4NDPGoq4e3Ymcaihk6lT92GFo,4096
371
391
  monai/utils/component_store.py,sha256=VMF7CtPu5Wi_eX_qFtm9iWo5kvoWFuCUIxdRzk90zZo,4498
372
392
  monai/utils/decorators.py,sha256=YRK5iEMdbc2INrWnBNDSMTaHge_0ezRf2b9yJGL-opg,3129
@@ -374,22 +394,23 @@ monai/utils/deprecate_utils.py,sha256=gKeEV4MsI51qeQ5gci2me_C-0e-tDwa3VZzd3XPQqL
374
394
  monai/utils/dist.py,sha256=mVaKlBTQJdWAG910sh5pGLEbb_KhRAXV5cPz7amH88Y,8639
375
395
  monai/utils/enums.py,sha256=Gdo9WBrFODIYz5zt6c00hGz0bqjUQbhCWsfGSgKlnAU,19674
376
396
  monai/utils/jupyter_utils.py,sha256=QqcKhJxzEf6YwM8Ik_HvfVDr7gNfrfzCXdzd2urEH8M,15651
377
- monai/utils/misc.py,sha256=o1eYmYIFRPB71PNvFM4f-3ZhoEmpL2qhl7xneKcDhbY,31380
397
+ monai/utils/misc.py,sha256=GJIDxr42juFjnzUTvLtYndcpBQ-EDz6EVXIc7anBoNo,31380
378
398
  monai/utils/module.py,sha256=Uu45ec-NHtccrA1Kv_QL-uxESLcgHLavCg9XelIa6lE,25148
379
399
  monai/utils/nvtx.py,sha256=i9JBxR1uhW1ZCgLPLlTx8b907QlXkFzJyTBLMlFjhtU,6876
400
+ monai/utils/ordering.py,sha256=0nlA5b5QpVCHbtiCbTC-YsqjTmjm0bub0IeJhGFBOes,8270
380
401
  monai/utils/profiling.py,sha256=V2_cSHgrcmVF48_G3nUi2-O6fnXsS89nSlb8jj58YLo,15937
381
402
  monai/utils/state_cacher.py,sha256=ERBE-mnnf47MwKSq-pNbfu1D2C4ZqKH-mORyLaBa3EE,5955
382
403
  monai/utils/tf32.py,sha256=4bqpPxoTAMmQDNRbbrd4qHG27e1RrxeAmfDf3vP8tQc,3141
383
404
  monai/utils/type_conversion.py,sha256=CwmAfcFNgNOQdMaNdrDcIuj7_esJls4-BymtMD03ZuM,21520
384
405
  monai/visualize/__init__.py,sha256=p7dv9-hRa9vAhlpHyk86yap9HgeDeJRO3pXmFhDx8Mc,1038
385
- monai/visualize/class_activation_maps.py,sha256=jBej0DVDzXJlSpwGjHw4k84R-jFfux4Rvpdg-nuzzZ8,16158
406
+ monai/visualize/class_activation_maps.py,sha256=5eEQkmpcE3QpivadjlsRZBLcUc7NpJHDfWkKCLOAnUM,16288
386
407
  monai/visualize/gradient_based.py,sha256=oXqMxqIClVlrgloZwgdTUl4pWllsoS0ysbjuvAbu-Kg,6278
387
- monai/visualize/img2tensorboard.py,sha256=_p5olAefUs6t-y17z0TK32fKxNnUNXVkb0Op1SkfLMM,9200
408
+ monai/visualize/img2tensorboard.py,sha256=NnMcyfIFqX-jD7TBO3Rn02zt5uug79d_7pIIaVD5c-I,9228
388
409
  monai/visualize/occlusion_sensitivity.py,sha256=OQHEJLyIhB8zWqQsfKaX-1kvCjWFVYtLfS4dFC0nKFI,18160
389
410
  monai/visualize/utils.py,sha256=B-MhTVs7sQbIqYS3yPnpBwPw2K82rE2PBtGIfpwZtWM,9894
390
411
  monai/visualize/visualizer.py,sha256=qckyaMZCbezYUwE20k5yc-Pb7UozVavMDbrmyQwfYHY,1377
391
- monai_weekly-1.4.dev2428.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
392
- monai_weekly-1.4.dev2428.dist-info/METADATA,sha256=uP6ltDnzhLuj76agsCDBsAsYRoX-8NvDkBiI0I8ZwSI,10953
393
- monai_weekly-1.4.dev2428.dist-info/WHEEL,sha256=Z4pYXqR_rTB7OWNDYFOm1qRk0RX6GFP2o8LgvP453Hk,91
394
- monai_weekly-1.4.dev2428.dist-info/top_level.txt,sha256=UaNwRzLGORdus41Ip446s3bBfViLkdkDsXDo34J2P44,6
395
- monai_weekly-1.4.dev2428.dist-info/RECORD,,
412
+ monai_weekly-1.4.dev2430.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
413
+ monai_weekly-1.4.dev2430.dist-info/METADATA,sha256=NGO426YBM0t6l0tAR8nzoxySiy59z7D8s9J8LYc_ZQ8,10953
414
+ monai_weekly-1.4.dev2430.dist-info/WHEEL,sha256=Wyh-_nZ0DJYolHNn1_hMa4lM7uDedD_RGVwbmTjyItk,91
415
+ monai_weekly-1.4.dev2430.dist-info/top_level.txt,sha256=UaNwRzLGORdus41Ip446s3bBfViLkdkDsXDo34J2P44,6
416
+ monai_weekly-1.4.dev2430.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (70.3.0)
2
+ Generator: setuptools (71.1.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5