careamics 0.0.3__py3-none-any.whl → 0.0.4.1__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.
Potentially problematic release.
This version of careamics might be problematic. Click here for more details.
- careamics/careamist.py +25 -17
- careamics/cli/__init__.py +5 -0
- careamics/cli/conf.py +391 -0
- careamics/cli/main.py +134 -0
- careamics/config/architectures/lvae_model.py +0 -4
- careamics/config/configuration_factory.py +480 -177
- careamics/config/configuration_model.py +1 -2
- careamics/config/data_model.py +1 -15
- careamics/config/fcn_algorithm_model.py +14 -9
- careamics/config/likelihood_model.py +21 -4
- careamics/config/nm_model.py +31 -5
- careamics/config/optimizer_models.py +3 -1
- careamics/config/support/supported_optimizers.py +1 -1
- careamics/config/support/supported_transforms.py +1 -0
- careamics/config/training_model.py +35 -6
- careamics/config/transformations/__init__.py +4 -1
- careamics/config/transformations/transform_union.py +20 -0
- careamics/config/vae_algorithm_model.py +2 -36
- careamics/dataset/tiling/lvae_tiled_patching.py +90 -8
- careamics/lightning/lightning_module.py +10 -8
- careamics/lightning/train_data_module.py +2 -2
- careamics/losses/loss_factory.py +3 -3
- careamics/losses/lvae/losses.py +2 -2
- careamics/lvae_training/dataset/__init__.py +15 -0
- careamics/lvae_training/dataset/{vae_data_config.py → config.py} +25 -81
- careamics/lvae_training/dataset/lc_dataset.py +28 -20
- careamics/lvae_training/dataset/{vae_dataset.py → multich_dataset.py} +91 -51
- careamics/lvae_training/dataset/multifile_dataset.py +334 -0
- careamics/lvae_training/dataset/types.py +43 -0
- careamics/lvae_training/dataset/utils/__init__.py +0 -0
- careamics/lvae_training/dataset/utils/data_utils.py +114 -0
- careamics/lvae_training/dataset/utils/empty_patch_fetcher.py +65 -0
- careamics/lvae_training/dataset/utils/index_manager.py +232 -0
- careamics/lvae_training/dataset/utils/index_switcher.py +165 -0
- careamics/lvae_training/eval_utils.py +109 -64
- careamics/lvae_training/get_config.py +1 -1
- careamics/lvae_training/train_lvae.py +1 -1
- careamics/model_io/bioimage/bioimage_utils.py +4 -2
- careamics/model_io/bmz_io.py +6 -5
- careamics/models/lvae/likelihoods.py +18 -9
- careamics/models/lvae/lvae.py +12 -16
- careamics/models/lvae/noise_models.py +1 -1
- careamics/transforms/compose.py +90 -15
- careamics/transforms/n2v_manipulate.py +6 -2
- careamics/transforms/normalize.py +14 -3
- careamics/transforms/xy_flip.py +16 -6
- careamics/transforms/xy_random_rotate90.py +16 -7
- careamics/utils/metrics.py +204 -24
- careamics/utils/serializers.py +60 -0
- {careamics-0.0.3.dist-info → careamics-0.0.4.1.dist-info}/METADATA +4 -3
- {careamics-0.0.3.dist-info → careamics-0.0.4.1.dist-info}/RECORD +54 -43
- careamics-0.0.4.1.dist-info/entry_points.txt +2 -0
- careamics/lvae_training/dataset/data_utils.py +0 -701
- careamics/lvae_training/dataset/lc_dataset_config.py +0 -13
- {careamics-0.0.3.dist-info → careamics-0.0.4.1.dist-info}/WHEEL +0 -0
- {careamics-0.0.3.dist-info → careamics-0.0.4.1.dist-info}/licenses/LICENSE +0 -0
careamics/utils/metrics.py
CHANGED
|
@@ -4,88 +4,98 @@ Metrics submodule.
|
|
|
4
4
|
This module contains various metrics and a metrics tracking class.
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from typing import Optional, Union
|
|
7
|
+
from typing import Callable, Optional, Union
|
|
8
8
|
|
|
9
9
|
import numpy as np
|
|
10
10
|
import torch
|
|
11
|
-
from skimage.metrics import peak_signal_noise_ratio
|
|
11
|
+
from skimage.metrics import peak_signal_noise_ratio, structural_similarity
|
|
12
|
+
from torchmetrics.image import MultiScaleStructuralSimilarityIndexMeasure
|
|
12
13
|
|
|
14
|
+
# TODO: does this add additional dependency?
|
|
13
15
|
|
|
14
|
-
|
|
16
|
+
|
|
17
|
+
def psnr(gt: np.ndarray, pred: np.ndarray, data_range: float) -> float:
|
|
15
18
|
"""
|
|
16
19
|
Peak Signal to Noise Ratio.
|
|
17
20
|
|
|
18
21
|
This method calls skimage.metrics.peak_signal_noise_ratio. See:
|
|
19
22
|
https://scikit-image.org/docs/dev/api/skimage.metrics.html.
|
|
20
23
|
|
|
24
|
+
NOTE: to avoid unwanted behaviors (e.g., data_range inferred from array dtype),
|
|
25
|
+
the data_range parameter is mandatory.
|
|
26
|
+
|
|
21
27
|
Parameters
|
|
22
28
|
----------
|
|
23
|
-
gt :
|
|
24
|
-
Ground truth
|
|
25
|
-
pred :
|
|
26
|
-
Predicted
|
|
27
|
-
|
|
28
|
-
The images pixel range
|
|
29
|
+
gt : np.ndarray
|
|
30
|
+
Ground truth array.
|
|
31
|
+
pred : np.ndarray
|
|
32
|
+
Predicted array.
|
|
33
|
+
data_range : float
|
|
34
|
+
The images pixel range.
|
|
29
35
|
|
|
30
36
|
Returns
|
|
31
37
|
-------
|
|
32
38
|
float
|
|
33
39
|
PSNR value.
|
|
34
40
|
"""
|
|
35
|
-
return peak_signal_noise_ratio(gt, pred, data_range=
|
|
41
|
+
return peak_signal_noise_ratio(gt, pred, data_range=data_range)
|
|
36
42
|
|
|
37
43
|
|
|
38
|
-
def _zero_mean(x: np.ndarray) -> np.ndarray:
|
|
44
|
+
def _zero_mean(x: Union[np.ndarray, torch.Tensor]) -> Union[np.ndarray, torch.Tensor]:
|
|
39
45
|
"""
|
|
40
46
|
Zero the mean of an array.
|
|
41
47
|
|
|
42
48
|
Parameters
|
|
43
49
|
----------
|
|
44
|
-
x :
|
|
50
|
+
x : numpy.ndarray or torch.Tensor
|
|
45
51
|
Input array.
|
|
46
52
|
|
|
47
53
|
Returns
|
|
48
54
|
-------
|
|
49
|
-
|
|
55
|
+
numpy.ndarray or torch.Tensor
|
|
50
56
|
Zero-mean array.
|
|
51
57
|
"""
|
|
52
|
-
return x -
|
|
58
|
+
return x - x.mean()
|
|
53
59
|
|
|
54
60
|
|
|
55
|
-
def _fix_range(
|
|
61
|
+
def _fix_range(
|
|
62
|
+
gt: Union[np.ndarray, torch.Tensor], x: Union[np.ndarray, torch.Tensor]
|
|
63
|
+
) -> Union[np.ndarray, torch.Tensor]:
|
|
56
64
|
"""
|
|
57
65
|
Adjust the range of an array based on a reference ground-truth array.
|
|
58
66
|
|
|
59
67
|
Parameters
|
|
60
68
|
----------
|
|
61
|
-
gt : np.ndarray
|
|
62
|
-
Ground truth
|
|
63
|
-
x : np.ndarray
|
|
69
|
+
gt : Union[np.ndarray, torch.Tensor]
|
|
70
|
+
Ground truth array.
|
|
71
|
+
x : Union[np.ndarray, torch.Tensor]
|
|
64
72
|
Input array.
|
|
65
73
|
|
|
66
74
|
Returns
|
|
67
75
|
-------
|
|
68
|
-
np.ndarray
|
|
76
|
+
Union[np.ndarray, torch.Tensor]
|
|
69
77
|
Range-adjusted array.
|
|
70
78
|
"""
|
|
71
|
-
a =
|
|
79
|
+
a = (gt * x).sum() / (x * x).sum()
|
|
72
80
|
return x * a
|
|
73
81
|
|
|
74
82
|
|
|
75
|
-
def _fix(
|
|
83
|
+
def _fix(
|
|
84
|
+
gt: Union[np.ndarray, torch.Tensor], x: Union[np.ndarray, torch.Tensor]
|
|
85
|
+
) -> Union[np.ndarray, torch.Tensor]:
|
|
76
86
|
"""
|
|
77
87
|
Zero mean a groud truth array and adjust the range of the array.
|
|
78
88
|
|
|
79
89
|
Parameters
|
|
80
90
|
----------
|
|
81
|
-
gt : np.ndarray
|
|
91
|
+
gt : Union[np.ndarray, torch.Tensor]
|
|
82
92
|
Ground truth image.
|
|
83
|
-
x : np.ndarray
|
|
93
|
+
x : Union[np.ndarray, torch.Tensor]
|
|
84
94
|
Input array.
|
|
85
95
|
|
|
86
96
|
Returns
|
|
87
97
|
-------
|
|
88
|
-
np.ndarray
|
|
98
|
+
Union[np.ndarray, torch.Tensor]
|
|
89
99
|
Zero-mean and range-adjusted array.
|
|
90
100
|
"""
|
|
91
101
|
gt_ = _zero_mean(gt)
|
|
@@ -186,3 +196,173 @@ class RunningPSNR:
|
|
|
186
196
|
return None
|
|
187
197
|
rmse = torch.sqrt(self.mse_sum / self.N)
|
|
188
198
|
return 20 * torch.log10((self.max - self.min) / rmse)
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
def _range_invariant_multiscale_ssim(
|
|
202
|
+
gt_: Union[np.ndarray, torch.Tensor], pred_: Union[np.ndarray, torch.Tensor]
|
|
203
|
+
) -> float:
|
|
204
|
+
"""Compute range invariant multiscale SSIM for a single channel.
|
|
205
|
+
|
|
206
|
+
The advantage of this metric in comparison to commonly used SSIM is that
|
|
207
|
+
it is invariant to scalar multiplications in the prediction.
|
|
208
|
+
# TODO: Add reference to the paper.
|
|
209
|
+
|
|
210
|
+
NOTE: images fed to this function should have channels dimension as the last one.
|
|
211
|
+
|
|
212
|
+
Parameters
|
|
213
|
+
----------
|
|
214
|
+
gt_ : Union[np.ndarray, torch.Tensor]
|
|
215
|
+
Ground truth image with shape (N, H, W).
|
|
216
|
+
pred_ : Union[np.ndarray, torch.Tensor]
|
|
217
|
+
Predicted image with shape (N, H, W).
|
|
218
|
+
|
|
219
|
+
Returns
|
|
220
|
+
-------
|
|
221
|
+
float
|
|
222
|
+
Range invariant multiscale SSIM value.
|
|
223
|
+
"""
|
|
224
|
+
shape = gt_.shape
|
|
225
|
+
gt_ = torch.Tensor(gt_.reshape((shape[0], -1)))
|
|
226
|
+
pred_ = torch.Tensor(pred_.reshape((shape[0], -1)))
|
|
227
|
+
gt_ = _zero_mean(gt_)
|
|
228
|
+
pred_ = _zero_mean(pred_)
|
|
229
|
+
pred_ = _fix(gt_, pred_)
|
|
230
|
+
pred_ = pred_.reshape(shape)
|
|
231
|
+
gt_ = gt_.reshape(shape)
|
|
232
|
+
|
|
233
|
+
ms_ssim = MultiScaleStructuralSimilarityIndexMeasure(
|
|
234
|
+
data_range=gt_.max() - gt_.min()
|
|
235
|
+
)
|
|
236
|
+
return ms_ssim(torch.Tensor(pred_[:, None]), torch.Tensor(gt_[:, None])).item()
|
|
237
|
+
|
|
238
|
+
|
|
239
|
+
def multiscale_ssim(
|
|
240
|
+
gt_: Union[np.ndarray, torch.Tensor],
|
|
241
|
+
pred_: Union[np.ndarray, torch.Tensor],
|
|
242
|
+
range_invariant: bool = True,
|
|
243
|
+
) -> list[Union[float, None]]:
|
|
244
|
+
"""Compute channel-wise multiscale SSIM for each channel.
|
|
245
|
+
|
|
246
|
+
It allows to use either standard multiscale SSIM or its range-invariant version.
|
|
247
|
+
|
|
248
|
+
NOTE: images fed to this function should have channels dimension as the last one.
|
|
249
|
+
# TODO: do we want to allow this behavior? or we want the usual (N, C, H, W)?
|
|
250
|
+
|
|
251
|
+
Parameters
|
|
252
|
+
----------
|
|
253
|
+
gt_ : Union[np.ndarray, torch.Tensor]
|
|
254
|
+
Ground truth image with shape (N, H, W, C).
|
|
255
|
+
pred_ : Union[np.ndarray, torch.Tensor]
|
|
256
|
+
Predicted image with shape (N, H, W, C).
|
|
257
|
+
range_invariant : bool
|
|
258
|
+
Whether to use standard or range invariant multiscale SSIM.
|
|
259
|
+
|
|
260
|
+
Returns
|
|
261
|
+
-------
|
|
262
|
+
list[float]
|
|
263
|
+
List of SSIM values for each channel.
|
|
264
|
+
"""
|
|
265
|
+
ms_ssim_values = {}
|
|
266
|
+
for ch_idx in range(gt_.shape[-1]):
|
|
267
|
+
tar_tmp = gt_[..., ch_idx]
|
|
268
|
+
pred_tmp = pred_[..., ch_idx]
|
|
269
|
+
if range_invariant:
|
|
270
|
+
ms_ssim_values[ch_idx] = _range_invariant_multiscale_ssim(
|
|
271
|
+
gt_=tar_tmp, pred_=pred_tmp
|
|
272
|
+
)
|
|
273
|
+
else:
|
|
274
|
+
ms_ssim = MultiScaleStructuralSimilarityIndexMeasure(
|
|
275
|
+
data_range=tar_tmp.max() - tar_tmp.min()
|
|
276
|
+
)
|
|
277
|
+
ms_ssim_values[ch_idx] = ms_ssim(
|
|
278
|
+
torch.Tensor(pred_tmp[:, None]), torch.Tensor(tar_tmp[:, None])
|
|
279
|
+
).item()
|
|
280
|
+
|
|
281
|
+
return [ms_ssim_values[i] for i in range(gt_.shape[-1])] # type: ignore
|
|
282
|
+
|
|
283
|
+
|
|
284
|
+
def _avg_psnr(target: np.ndarray, prediction: np.ndarray, psnr_fn: Callable) -> float:
|
|
285
|
+
"""Compute the average PSNR over a batch of images.
|
|
286
|
+
|
|
287
|
+
Parameters
|
|
288
|
+
----------
|
|
289
|
+
target : np.ndarray
|
|
290
|
+
Array of ground truth images, shape is (N, C, H, W).
|
|
291
|
+
prediction : np.ndarray
|
|
292
|
+
Array of predicted images, shape is (N, C, H, W).
|
|
293
|
+
psnr_fn : Callable
|
|
294
|
+
PSNR function to use.
|
|
295
|
+
|
|
296
|
+
Returns
|
|
297
|
+
-------
|
|
298
|
+
float
|
|
299
|
+
Average PSNR value over the batch.
|
|
300
|
+
"""
|
|
301
|
+
return np.mean(
|
|
302
|
+
[
|
|
303
|
+
psnr_fn(target[i : i + 1], prediction[i : i + 1]).item()
|
|
304
|
+
for i in range(len(prediction))
|
|
305
|
+
]
|
|
306
|
+
)
|
|
307
|
+
|
|
308
|
+
|
|
309
|
+
def avg_range_inv_psnr(target: np.ndarray, prediction: np.ndarray) -> float:
|
|
310
|
+
"""Compute the average range-invariant PSNR over a batch of images.
|
|
311
|
+
|
|
312
|
+
Parameters
|
|
313
|
+
----------
|
|
314
|
+
target : np.ndarray
|
|
315
|
+
Array of ground truth images, shape is (N, C, H, W).
|
|
316
|
+
prediction : np.ndarray
|
|
317
|
+
Array of predicted images, shape is (N, C, H, W).
|
|
318
|
+
|
|
319
|
+
Returns
|
|
320
|
+
-------
|
|
321
|
+
float
|
|
322
|
+
Average range-invariant PSNR value over the batch.
|
|
323
|
+
"""
|
|
324
|
+
return _avg_psnr(target, prediction, scale_invariant_psnr)
|
|
325
|
+
|
|
326
|
+
|
|
327
|
+
def avg_psnr(target: np.ndarray, prediction: np.ndarray) -> float:
|
|
328
|
+
"""Compute the average PSNR over a batch of images.
|
|
329
|
+
|
|
330
|
+
Parameters
|
|
331
|
+
----------
|
|
332
|
+
target : np.ndarray
|
|
333
|
+
Array of ground truth images, shape is (N, C, H, W).
|
|
334
|
+
prediction : np.ndarray
|
|
335
|
+
Array of predicted images, shape is (N, C, H, W).
|
|
336
|
+
|
|
337
|
+
Returns
|
|
338
|
+
-------
|
|
339
|
+
float
|
|
340
|
+
Average PSNR value over the batch.
|
|
341
|
+
"""
|
|
342
|
+
return _avg_psnr(target, prediction, psnr)
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
def avg_ssim(
|
|
346
|
+
target: Union[np.ndarray, torch.Tensor], prediction: Union[np.ndarray, torch.Tensor]
|
|
347
|
+
) -> tuple[float, float]:
|
|
348
|
+
"""Compute the average Structural Similarity (SSIM) over a batch of images.
|
|
349
|
+
|
|
350
|
+
Parameters
|
|
351
|
+
----------
|
|
352
|
+
target : np.ndarray
|
|
353
|
+
Array of ground truth images, shape is (N, C, H, W).
|
|
354
|
+
prediction : np.ndarray
|
|
355
|
+
Array of predicted images, shape is (N, C, H, W).
|
|
356
|
+
|
|
357
|
+
Returns
|
|
358
|
+
-------
|
|
359
|
+
tuple[float, float]
|
|
360
|
+
Mean and standard deviation of SSIM values over the batch.
|
|
361
|
+
"""
|
|
362
|
+
ssim = [
|
|
363
|
+
structural_similarity(
|
|
364
|
+
target[i], prediction[i], data_range=(target[i].max() - target[i].min())
|
|
365
|
+
)
|
|
366
|
+
for i in range(len(target))
|
|
367
|
+
]
|
|
368
|
+
return np.mean(ssim), np.std(ssim)
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"""A script for serializers in the careamics package."""
|
|
2
|
+
|
|
3
|
+
import ast
|
|
4
|
+
import json
|
|
5
|
+
from typing import Union
|
|
6
|
+
|
|
7
|
+
import numpy as np
|
|
8
|
+
import torch
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
def _array_to_json(arr: Union[np.ndarray, torch.Tensor]) -> str:
|
|
12
|
+
"""Convert an array to a list and then to a JSON string.
|
|
13
|
+
|
|
14
|
+
Parameters
|
|
15
|
+
----------
|
|
16
|
+
arr : Union[np.ndarray, torch.Tensor]
|
|
17
|
+
Array to be serialized.
|
|
18
|
+
|
|
19
|
+
Returns
|
|
20
|
+
-------
|
|
21
|
+
str
|
|
22
|
+
JSON string representing the array.
|
|
23
|
+
"""
|
|
24
|
+
return json.dumps(arr.tolist())
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
def _to_numpy(lst: Union[str, list]) -> np.ndarray:
|
|
28
|
+
"""Deserialize a list or string representing a list into `np.ndarray`.
|
|
29
|
+
|
|
30
|
+
Parameters
|
|
31
|
+
----------
|
|
32
|
+
lst : list
|
|
33
|
+
List or string representing a list with the array content to be deserialized.
|
|
34
|
+
|
|
35
|
+
Returns
|
|
36
|
+
-------
|
|
37
|
+
np.ndarray
|
|
38
|
+
The deserialized array.
|
|
39
|
+
"""
|
|
40
|
+
if isinstance(lst, str):
|
|
41
|
+
lst = ast.literal_eval(lst)
|
|
42
|
+
return np.asarray(lst)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
def _to_torch(lst: Union[str, list]) -> torch.Tensor:
|
|
46
|
+
"""Deserialize list or string representing a list into `torch.Tensor`.
|
|
47
|
+
|
|
48
|
+
Parameters
|
|
49
|
+
----------
|
|
50
|
+
lst : Union[str, list]
|
|
51
|
+
List or string representing a list swith the array content to be deserialized.
|
|
52
|
+
|
|
53
|
+
Returns
|
|
54
|
+
-------
|
|
55
|
+
torch.Tensor
|
|
56
|
+
The deserialized tensor.
|
|
57
|
+
"""
|
|
58
|
+
if isinstance(lst, str):
|
|
59
|
+
lst = ast.literal_eval(lst)
|
|
60
|
+
return torch.tensor(lst)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: careamics
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.4.1
|
|
4
4
|
Summary: Toolbox for running N2V and friends.
|
|
5
5
|
Project-URL: homepage, https://careamics.github.io/
|
|
6
6
|
Project-URL: repository, https://github.com/CAREamics/careamics
|
|
@@ -16,16 +16,17 @@ Classifier: Programming Language :: Python :: 3.11
|
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.12
|
|
17
17
|
Classifier: Typing :: Typed
|
|
18
18
|
Requires-Python: >=3.9
|
|
19
|
-
Requires-Dist: bioimageio-core>=0.6.
|
|
19
|
+
Requires-Dist: bioimageio-core>=0.6.9
|
|
20
20
|
Requires-Dist: numpy<2.0.0
|
|
21
21
|
Requires-Dist: psutil
|
|
22
|
-
Requires-Dist: pydantic
|
|
22
|
+
Requires-Dist: pydantic<2.9,>=2.5
|
|
23
23
|
Requires-Dist: pytorch-lightning>=2.2.0
|
|
24
24
|
Requires-Dist: pyyaml
|
|
25
25
|
Requires-Dist: scikit-image<=0.23.2
|
|
26
26
|
Requires-Dist: tifffile
|
|
27
27
|
Requires-Dist: torch>=2.0.0
|
|
28
28
|
Requires-Dist: torchvision
|
|
29
|
+
Requires-Dist: typer==0.12.3
|
|
29
30
|
Requires-Dist: zarr<3.0.0
|
|
30
31
|
Provides-Extra: dev
|
|
31
32
|
Requires-Dist: pre-commit; extra == 'dev'
|
|
@@ -1,24 +1,27 @@
|
|
|
1
1
|
careamics/__init__.py,sha256=xBCerWN66hv3T7dRGiUYLflmbJtJt1HqbSg9JCWp8pY,391
|
|
2
|
-
careamics/careamist.py,sha256=
|
|
2
|
+
careamics/careamist.py,sha256=eZttleBmhu649kkVj7spfBw7DLUuGjx58S2fTPem7g4,28351
|
|
3
3
|
careamics/conftest.py,sha256=Od4WcaaP0UP-XUMrFr_oo4e6c2hi_RvNbuaRTopwlmI,911
|
|
4
4
|
careamics/py.typed,sha256=esB4cHc6c07uVkGtqf8at7ttEnprwRxwk8obY8Qumq4,187
|
|
5
|
+
careamics/cli/__init__.py,sha256=LbM9bVtU1dy-khmdiIDXwvKy2v8wPBCEUuWqV_8rosA,106
|
|
6
|
+
careamics/cli/conf.py,sha256=1MRSzKcIL--IbYiNixW2aA58GC0ptQHWbBtp7b5eRwQ,13370
|
|
7
|
+
careamics/cli/main.py,sha256=EAWBQoCxcNv-4t3h8_YLCXNjWWU08cOzFj5DYam5e6g,3441
|
|
5
8
|
careamics/config/__init__.py,sha256=M_Y0sGIVr1lQF4IpDeVkWkspbUNlbdH-iDjapMSGOoc,1127
|
|
6
9
|
careamics/config/callback_model.py,sha256=EeYHqpMIPQwyNxLRzzX32Uncl5mZuB1bJO76RHpNymg,4555
|
|
7
|
-
careamics/config/configuration_factory.py,sha256=
|
|
8
|
-
careamics/config/configuration_model.py,sha256=
|
|
9
|
-
careamics/config/data_model.py,sha256=
|
|
10
|
-
careamics/config/fcn_algorithm_model.py,sha256=
|
|
10
|
+
careamics/config/configuration_factory.py,sha256=vHwRuYasELdZQv0KpX3fxPPUBbJfguBOOtPgqQJ3oks,30193
|
|
11
|
+
careamics/config/configuration_model.py,sha256=pvANQOkWpA-bB60bzI40z_tTnk1zt1l8pfXg7KsDsRs,18843
|
|
12
|
+
careamics/config/data_model.py,sha256=MOXnX6dmI-08b4H_43xOrnSlwdbCtO1UuI9YqOT8djA,15370
|
|
13
|
+
careamics/config/fcn_algorithm_model.py,sha256=eBBjkoyavhvDJFTrjJDkNrWSP_-YaK0cy7qo0lCdBQ0,5105
|
|
11
14
|
careamics/config/inference_model.py,sha256=UE_-ZmCX6LFCbDBOwyGnvuAboF_JNX2m2LcF0WiwgCI,6961
|
|
12
|
-
careamics/config/likelihood_model.py,sha256=
|
|
13
|
-
careamics/config/nm_model.py,sha256=
|
|
14
|
-
careamics/config/optimizer_models.py,sha256=
|
|
15
|
+
careamics/config/likelihood_model.py,sha256=CZtkaMqwGZLW5PWModv-tDDjjLxqGhhTkWpk27V3ERU,2274
|
|
16
|
+
careamics/config/nm_model.py,sha256=lscJb31g3w2H_AY-PL2nL06KuknbaLAftZsVNYNDmxA,4742
|
|
17
|
+
careamics/config/optimizer_models.py,sha256=OWpTydRBBR8wt_af1mZHNNwvL_RtnRFopAOdgjzLo30,5750
|
|
15
18
|
careamics/config/tile_information.py,sha256=c-_xrVPOgcnjiEzQ-9A_GhNPamObkMANbeHaRP29R-4,2059
|
|
16
|
-
careamics/config/training_model.py,sha256=
|
|
17
|
-
careamics/config/vae_algorithm_model.py,sha256=
|
|
19
|
+
careamics/config/training_model.py,sha256=67_ipo_-LxhT4-WqAs40Sg8PjU--my43Qn3BhjvlXxM,3212
|
|
20
|
+
careamics/config/vae_algorithm_model.py,sha256=p4OSLCDokw2ADYKP6LvUy9eAHfapqKpcO5LE2RMkiT4,4678
|
|
18
21
|
careamics/config/architectures/__init__.py,sha256=VyuBIopbqpR0KPq6cAeX3qPCrlbY8ZB_rGXwa2ApNvc,447
|
|
19
22
|
careamics/config/architectures/architecture_model.py,sha256=qqPpmkNLwTBC3nwOmXpl33UAvpDFsAxFRBw9MIsQgws,921
|
|
20
23
|
careamics/config/architectures/custom_model.py,sha256=-ROcKn_Ai7SZqzQLoEUc2BLAalgjyvoOnyDKUiY_cp0,4876
|
|
21
|
-
careamics/config/architectures/lvae_model.py,sha256=
|
|
24
|
+
careamics/config/architectures/lvae_model.py,sha256=erySFyLStHX-jUXPLYAEZ2q9bPhWzsMRdU6VFLZobpE,4585
|
|
22
25
|
careamics/config/architectures/register_model.py,sha256=lHH0aUPmXtI3Bq_76zkhg07_Yb_nOJZkZJLCC_G-rZM,2434
|
|
23
26
|
careamics/config/architectures/unet_model.py,sha256=8F2KosNkrXUP2bxlm-D1mowS9x3GOjyXjsEo1Kf-05k,3497
|
|
24
27
|
careamics/config/references/__init__.py,sha256=rZAQzmrciX5cNICcXaBH6sbE6N6L7_qYQUkasNy9y-c,763
|
|
@@ -31,14 +34,15 @@ careamics/config/support/supported_architectures.py,sha256=f93cRyeBOu5rYzvYrvWPV
|
|
|
31
34
|
careamics/config/support/supported_data.py,sha256=T_mDiWLFMVji_EpjBABUObAJcnv-XBnqp9XUZP37Tdk,2902
|
|
32
35
|
careamics/config/support/supported_loggers.py,sha256=ubSOkGoYabGbm_jmyc1R3eFcvcP-sHmuyiBi_d3_wLg,197
|
|
33
36
|
careamics/config/support/supported_losses.py,sha256=2x5sZuxRbWJzodoL35I1mMYUUDMzk8UFiFdbyPwbJ4E,583
|
|
34
|
-
careamics/config/support/supported_optimizers.py,sha256=
|
|
37
|
+
careamics/config/support/supported_optimizers.py,sha256=_2XmwzYENB6xpTedyWHUdWuGcDzdlfEAJjzm_qI3yRM,1392
|
|
35
38
|
careamics/config/support/supported_pixel_manipulations.py,sha256=rFiktUlvoFU7s1NAKEMqsXOzLw5eaw9GtCKUznvq6xc,432
|
|
36
39
|
careamics/config/support/supported_struct_axis.py,sha256=alZMA5Y-BpDymLPUEd1zqVY0xMkgl9Rv1d4ujED6sco,424
|
|
37
|
-
careamics/config/support/supported_transforms.py,sha256=
|
|
38
|
-
careamics/config/transformations/__init__.py,sha256=
|
|
40
|
+
careamics/config/support/supported_transforms.py,sha256=ODvmoTywvJWG_5-SJJZu-X1FNtKGhkNWQc-t26IFZWI,311
|
|
41
|
+
careamics/config/transformations/__init__.py,sha256=lW9DcsCfemnlcmECyw5Id28nIuwg1YPKWhGgdfzcv5s,493
|
|
39
42
|
careamics/config/transformations/n2v_manipulate_model.py,sha256=Mdxc4J3vxe_dM2CIhmTwwGOIirQvrQXLoa2vRsTzoYI,1855
|
|
40
43
|
careamics/config/transformations/normalize_model.py,sha256=1Rkk6IkF-7ytGU6HSzP-TpOi4RRWiQJ6fOd8zammXcg,1936
|
|
41
44
|
careamics/config/transformations/transform_model.py,sha256=i7KAtSv4nah2H7uyJFKqg7RdKF68OHIPMNNvDo0HxGY,1000
|
|
45
|
+
careamics/config/transformations/transform_union.py,sha256=3PnzsWlD2ymIgRPrUDZzPT9vMOVLVDtUcEorZTYx_-I,574
|
|
42
46
|
careamics/config/transformations/xy_flip_model.py,sha256=zU-uZ1b1zNZWckbho3onN-B7BHKhN7jbgbNZyRQhv2s,1025
|
|
43
47
|
careamics/config/transformations/xy_random_rotate90_model.py,sha256=6sYKmtCLvz0SV1qZgBSHUTH-CUjwvHnohq1HyPntbyE,894
|
|
44
48
|
careamics/config/validators/__init__.py,sha256=iv0nVI0W7j9DxFPwh0DjRCzM9P8oLQn4Gwi5rfuFrrI,180
|
|
@@ -63,7 +67,7 @@ careamics/dataset/patching/sequential_patching.py,sha256=_l3Q2uYIhjMJMaxDdSbHC9_
|
|
|
63
67
|
careamics/dataset/patching/validate_patch_dimension.py,sha256=sQQ0-4b4uu60MNKkoWv95KxQ80J7Ku0CEk0-kAXlKeI,2134
|
|
64
68
|
careamics/dataset/tiling/__init__.py,sha256=XynyAz85hVfkLtrG0lrMr_aBQm_YEwfu5uFcXMGHlOA,190
|
|
65
69
|
careamics/dataset/tiling/collate_tiles.py,sha256=OrPZ-n-V3uGOc_7CcPnyEJqdbEVDlTfJfWmZnyBZ-HA,978
|
|
66
|
-
careamics/dataset/tiling/lvae_tiled_patching.py,sha256=
|
|
70
|
+
careamics/dataset/tiling/lvae_tiled_patching.py,sha256=AOS_1m1q74YhfLgWeUx1xkRNvgw1dq6Vi7yJhmMR-A0,12992
|
|
67
71
|
careamics/dataset/tiling/tiled_patching.py,sha256=ouxUWvttzmTY310CuiR25IGNVWgksVQAXoN4IXSi_G0,5942
|
|
68
72
|
careamics/file_io/__init__.py,sha256=vdIx5JV3JwoyOeWnY_0tY6aekwPFy_8hBqe0Yj-aOH8,334
|
|
69
73
|
careamics/file_io/read/__init__.py,sha256=I2Ios3fOoe_7f1nYT88qt2hcl0107aJCvA8yPfdpVIA,259
|
|
@@ -74,9 +78,9 @@ careamics/file_io/write/__init__.py,sha256=syy-e55OKPqa2Fn7G6szJrAmmJ4JUJyr4Y4ZS
|
|
|
74
78
|
careamics/file_io/write/get_func.py,sha256=hyGHe1RX-lfa9QFAnwRCz_gS0NRiRnXEtg4Bdeh2Esc,1627
|
|
75
79
|
careamics/file_io/write/tiff.py,sha256=tBGIgl-I1sMyBivgx-dOTBykXBODkgwPH8MT3_4KAE8,1050
|
|
76
80
|
careamics/lightning/__init__.py,sha256=iS9dYpYrkjyeZfodcohc25rBTPzxj9l50iTb5Jv0j0o,588
|
|
77
|
-
careamics/lightning/lightning_module.py,sha256=
|
|
81
|
+
careamics/lightning/lightning_module.py,sha256=afQVpEqVeug_hyy28yljPGajtTLLSOZbQB4UkgJQDT8,21846
|
|
78
82
|
careamics/lightning/predict_data_module.py,sha256=JNwujK6QwObSx6P25ghpGl2f2gGT3KVgYMTlonZzH20,12745
|
|
79
|
-
careamics/lightning/train_data_module.py,sha256=
|
|
83
|
+
careamics/lightning/train_data_module.py,sha256=x532RUaB6lN8ojUevE0Kgv-MYCVRwkaLZaq-M6wnA6E,27896
|
|
80
84
|
careamics/lightning/callbacks/__init__.py,sha256=neTWqF6EbBRVf0FqtBkPHeGIR3j1yTk0OASraEVN0Pg,312
|
|
81
85
|
careamics/lightning/callbacks/hyperparameters_callback.py,sha256=u45knOZHwoVHz6yYfrnERQuozT_SfZ1OrKP0QjeU4EM,1495
|
|
82
86
|
careamics/lightning/callbacks/progress_bar_callback.py,sha256=8HvNSWZldixd6pjz0dLDo0apIbzTovv5smKmZ6tZQ8U,2444
|
|
@@ -86,31 +90,36 @@ careamics/lightning/callbacks/prediction_writer_callback/prediction_writer_callb
|
|
|
86
90
|
careamics/lightning/callbacks/prediction_writer_callback/write_strategy.py,sha256=aqc6DDewD4n3tbLfqS4y-FfNKV9zy3-CZ0K2Mu16Mms,12567
|
|
87
91
|
careamics/lightning/callbacks/prediction_writer_callback/write_strategy_factory.py,sha256=F1IpbNNgkv5eK8Xpqp7wqv2lsqEdP1wMRlBL7RBn93U,7114
|
|
88
92
|
careamics/losses/__init__.py,sha256=4s73OlMCGJdNCVfOteJPyaPwflgIiu_fj3zpKLx7j6o,351
|
|
89
|
-
careamics/losses/loss_factory.py,sha256=
|
|
93
|
+
careamics/losses/loss_factory.py,sha256=MlhcU5KI9sXWuYUBBmIZtXj4TLi7r6hgiqZQQ3jg5_E,4378
|
|
90
94
|
careamics/losses/fcn/__init__.py,sha256=kf92MKFGHr6upiztZVgWwtGPf734DZyub92Rn8uEq8o,18
|
|
91
95
|
careamics/losses/fcn/losses.py,sha256=NdOz29hzJ7D26p13q-g0NWoYwNauIWrP2xWww6YPbB8,2360
|
|
92
96
|
careamics/losses/lvae/__init__.py,sha256=0FNtMLHrOMfagtWkaBdz1NTjyf2y0QLgysxJv5jq5uw,19
|
|
93
97
|
careamics/losses/lvae/loss_utils.py,sha256=QxzA2N1TglR4H0X0uyTWWytDagE1lA9IB_TK1lms3ao,2720
|
|
94
|
-
careamics/losses/lvae/losses.py,sha256=
|
|
98
|
+
careamics/losses/lvae/losses.py,sha256=lLwfuxGPqgkKj25jCONx0Mkx6iBrHSFavgCSazmyRUo,16076
|
|
95
99
|
careamics/lvae_training/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
96
|
-
careamics/lvae_training/eval_utils.py,sha256=
|
|
97
|
-
careamics/lvae_training/get_config.py,sha256=
|
|
100
|
+
careamics/lvae_training/eval_utils.py,sha256=_YxERlXdvITFkCa3P6jkzMDGkUaKn95KrAofmwomG9o,34486
|
|
101
|
+
careamics/lvae_training/get_config.py,sha256=dwVfaQS7nzjQss0E1gGLUpQpjPcOWwLgIhbu3Z0I1rg,3068
|
|
98
102
|
careamics/lvae_training/lightning_module.py,sha256=ryr7iHqCMzCl5esi6_gEcnKFDQkMrw0EXK9Zfgv1Nek,27186
|
|
99
103
|
careamics/lvae_training/metrics.py,sha256=KTDAKhe3vh-YxzGibjtkIG2nnUyujbnwqX4xGwaRXwE,6718
|
|
100
|
-
careamics/lvae_training/train_lvae.py,sha256=
|
|
104
|
+
careamics/lvae_training/train_lvae.py,sha256=lJEBlBGdISVkZBcEnPNRYgJ7VbapYzZHRaFOrZ0xYGE,11080
|
|
101
105
|
careamics/lvae_training/train_utils.py,sha256=e-d4QsF-li8MmAPkAmB1daHpkuU16nBTnQFZYqpTjn4,3567
|
|
102
|
-
careamics/lvae_training/dataset/__init__.py,sha256=
|
|
103
|
-
careamics/lvae_training/dataset/
|
|
104
|
-
careamics/lvae_training/dataset/lc_dataset.py,sha256=
|
|
105
|
-
careamics/lvae_training/dataset/
|
|
106
|
-
careamics/lvae_training/dataset/
|
|
107
|
-
careamics/lvae_training/dataset/
|
|
106
|
+
careamics/lvae_training/dataset/__init__.py,sha256=dvdHHaRA9ZfOt_uOnXkYyra2_b0Wsxs8qmrze6zxJAE,377
|
|
107
|
+
careamics/lvae_training/dataset/config.py,sha256=SeCHjyxwqP2Oa9oE1rQxThBs6I4PxY40zXhRp7oPE08,4294
|
|
108
|
+
careamics/lvae_training/dataset/lc_dataset.py,sha256=xErygllUu6Q-PfPZ24sHf5_NP7YGHD2NVyzmDZgDd2U,10697
|
|
109
|
+
careamics/lvae_training/dataset/multich_dataset.py,sha256=iNkCv9ohahhp8A0c5m6auVrvubbAGbyRBC_VxCNyeYM,41707
|
|
110
|
+
careamics/lvae_training/dataset/multifile_dataset.py,sha256=bbEyAZ8_ODDANXsJWn7tTr59VovEnbjGSSUI_PlwrQM,10246
|
|
111
|
+
careamics/lvae_training/dataset/types.py,sha256=ww89Fj9w85CVGxPkLhuWiBV7ZXaVeCb0lanZSJ__PvQ,821
|
|
112
|
+
careamics/lvae_training/dataset/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
113
|
+
careamics/lvae_training/dataset/utils/data_utils.py,sha256=8PvRPqSbYHPCl87cycZHxXIFOT_EoBV-8XCt3ZLh36s,3125
|
|
114
|
+
careamics/lvae_training/dataset/utils/empty_patch_fetcher.py,sha256=OFjeqhZ6vFULJsF5tnoByhEhE8aLHujFToU_yyqMCP4,2266
|
|
115
|
+
careamics/lvae_training/dataset/utils/index_manager.py,sha256=mmj1p-Ez5Qeiu99WdsFq8aCr6WaVUgn_bQ2INqNpuI4,9978
|
|
116
|
+
careamics/lvae_training/dataset/utils/index_switcher.py,sha256=ZoMi8LsaIkm8MFqIFaxN4oQGyzCcwOlCom8SYNus15E,6716
|
|
108
117
|
careamics/model_io/__init__.py,sha256=HITzjiuZQwo-rQ2_Ma3bz9l7PDANv1_S489E-tffV9s,155
|
|
109
|
-
careamics/model_io/bmz_io.py,sha256=
|
|
118
|
+
careamics/model_io/bmz_io.py,sha256=tt21GHO2UD_jV7fGSnKhMSNK6iRRyCON5w9SPcxqW3I,7646
|
|
110
119
|
careamics/model_io/model_io_utils.py,sha256=Dc_0YmcUfS3HuEVgN7KFfbDH8SGywT_eUCIJDVpEUHc,2755
|
|
111
120
|
careamics/model_io/bioimage/__init__.py,sha256=r94nu8WDAvj0Fbu4C-iJXdOhfSQXeZBvN3UKsLG0RNI,298
|
|
112
121
|
careamics/model_io/bioimage/_readme_factory.py,sha256=LZAuEiWNBTPaD8KrLPMq16yJuOPKDZiGQuTMHKLvoT4,3514
|
|
113
|
-
careamics/model_io/bioimage/bioimage_utils.py,sha256=
|
|
122
|
+
careamics/model_io/bioimage/bioimage_utils.py,sha256=YVr75SDfafOiuYGonPbcsO-xVS0wI1WkmWQQZx6DXYQ,1246
|
|
114
123
|
careamics/model_io/bioimage/model_description.py,sha256=au8NtLwYVtjRI0BW2hEAlDen5ZGt25KAcy7_ZnAoQO4,9640
|
|
115
124
|
careamics/models/__init__.py,sha256=Xui2BLJd1I2r_E3Sj24fJALFTi2FGtfNscUWj_0c9Hk,93
|
|
116
125
|
careamics/models/activation.py,sha256=nu3sDgd7Lsyw8rvmUwxNN-7SM09cEMfxZ9DRDzdSKns,1049
|
|
@@ -119,9 +128,9 @@ careamics/models/model_factory.py,sha256=hqhV8sDq1JBLKt_7Vrw4wJSugKmBt2FIWyO7ePn
|
|
|
119
128
|
careamics/models/unet.py,sha256=3pXpiCIw7WUaDV0Jmczkxi99C5-Zu3NpQpWxgRkeGL8,14321
|
|
120
129
|
careamics/models/lvae/__init__.py,sha256=6dT6uqgT__V08EjoTGxXguTbTkySZmByS9J2Bj6WWLM,53
|
|
121
130
|
careamics/models/lvae/layers.py,sha256=zRHlIHaFp4nMZwTKdzhKNKGPdarefaITTqNWO8YrkMM,85022
|
|
122
|
-
careamics/models/lvae/likelihoods.py,sha256=
|
|
123
|
-
careamics/models/lvae/lvae.py,sha256=
|
|
124
|
-
careamics/models/lvae/noise_models.py,sha256=
|
|
131
|
+
careamics/models/lvae/likelihoods.py,sha256=yTlIjhMpGPNJrdgbsvTLEKmtfjboiG_DsUcyBaqDgDs,11940
|
|
132
|
+
careamics/models/lvae/lvae.py,sha256=YCC_te_s-l-GV0iwuYSv8OYb2PJmc-39p6Jop5kp4Zc,36335
|
|
133
|
+
careamics/models/lvae/noise_models.py,sha256=RxIv_QdmBR2cMzGlhNZWY23ZAAeRc3C3-8MHYk2Rh6A,19709
|
|
125
134
|
careamics/models/lvae/utils.py,sha256=4b6VKB8brg3yjv2mMb6I2KnT6HxnD5ZrfGcxGYKauHQ,11542
|
|
126
135
|
careamics/prediction_utils/__init__.py,sha256=uYKzirlF-unFL9GbDPxFnYgOwSjGAtik9fonU7DfuEY,270
|
|
127
136
|
careamics/prediction_utils/lvae_prediction.py,sha256=ZwPFCSeUGsULIMoMQWRYKHfLFaDm7UKyGaUMVfSUqfs,6210
|
|
@@ -129,26 +138,28 @@ careamics/prediction_utils/lvae_tiling_manager.py,sha256=SI-JaJvLrKWBSHdm-FjcqWd
|
|
|
129
138
|
careamics/prediction_utils/prediction_outputs.py,sha256=p3Nbw9wRLU_M5uixPbzj_DmfxcSL7Y8rAQ_aTx70KQI,4082
|
|
130
139
|
careamics/prediction_utils/stitch_prediction.py,sha256=HlfkJDirzbmil6Db-kFzlmhUREmGEZ2Ag8g-URbdIb0,3899
|
|
131
140
|
careamics/transforms/__init__.py,sha256=VIHIsC8sMAh1TCm67ifB816Zp-LRo6rAONPuT2Qs3bs,483
|
|
132
|
-
careamics/transforms/compose.py,sha256=
|
|
133
|
-
careamics/transforms/n2v_manipulate.py,sha256=
|
|
134
|
-
careamics/transforms/normalize.py,sha256=
|
|
141
|
+
careamics/transforms/compose.py,sha256=EOEsga7oGNZZW8zerOz7TgirbLpGyaLf1WEnTXlRjoo,5677
|
|
142
|
+
careamics/transforms/n2v_manipulate.py,sha256=op-BT3LJaHgHULuqRRqTI6e45FtvvUZ0y-Smzbrh2WU,5693
|
|
143
|
+
careamics/transforms/normalize.py,sha256=fxs813ydCWrIzrxFzkbk1gW8OGSr0esQSrNUFSJuGL0,7715
|
|
135
144
|
careamics/transforms/pixel_manipulation.py,sha256=sMR3A1GrgL5AactzZYzvvtz7L13sA34ckVEoNTBmDqM,13362
|
|
136
145
|
careamics/transforms/struct_mask_parameters.py,sha256=jE29Li9sx3olaRnqYfJsSlKi2t0WQzJmCm9aCbIQEsA,421
|
|
137
146
|
careamics/transforms/transform.py,sha256=cEqc4ci8na70i-HIGYC7udRfVa8D_8OjdRVrr3txLvQ,464
|
|
138
147
|
careamics/transforms/tta.py,sha256=78S7Df9rLHmEVSQSI1qDcRrRJGauyG3oaIrXkckCkmw,2335
|
|
139
|
-
careamics/transforms/xy_flip.py,sha256=
|
|
140
|
-
careamics/transforms/xy_random_rotate90.py,sha256=
|
|
148
|
+
careamics/transforms/xy_flip.py,sha256=64BDo8bmAEwO1TNhbIYcUJPzzVmY5ZyNaSNmmGLkn0U,3842
|
|
149
|
+
careamics/transforms/xy_random_rotate90.py,sha256=0SsCTPGlpt-VCJvmr55KRULp3dwFMBN8fTDboJcEbWg,3192
|
|
141
150
|
careamics/utils/__init__.py,sha256=rG_dnqX7rdyNTFWlDkIdNtDwwMQBpg_ym14ZFeYrWfs,402
|
|
142
151
|
careamics/utils/autocorrelation.py,sha256=M_WYzrEOQngc5iSXWar4S3-EOnK6DfYHPC2vVMeu_Bs,945
|
|
143
152
|
careamics/utils/base_enum.py,sha256=bz1D8mDx5V5hdnJ3WAzJXWHJTbgwAky5FprUt9F5cMA,1387
|
|
144
153
|
careamics/utils/context.py,sha256=Ljf70OR1FcYpsVpxb5Sr2fzmPVIZgDS1uZob_3BcELg,1409
|
|
145
154
|
careamics/utils/logging.py,sha256=coIscjkDYpqcsGnsONuYOdIYd6_gHxdnYIZ-e9Y2Ybg,10322
|
|
146
|
-
careamics/utils/metrics.py,sha256=
|
|
155
|
+
careamics/utils/metrics.py,sha256=yAoCvrZ1kQx-kT9xdTBYz-oh0I52ef6uBnw8qgzpwn8,10318
|
|
147
156
|
careamics/utils/path_utils.py,sha256=8AugiG5DOmzgSnTCJI8vypXaPE0XhnR-9pzeiFUZ-0I,554
|
|
148
157
|
careamics/utils/ram.py,sha256=tksyn8dVX_iJXmrDZDGub32hFZWIaNxnMheO5G1p43I,244
|
|
149
158
|
careamics/utils/receptive_field.py,sha256=Y2h4c8S6glX3qcx5KHDmO17Kkuyey9voxfoXyqcAfiM,3296
|
|
159
|
+
careamics/utils/serializers.py,sha256=tovAjYoYjM26FbwjKuMD4xiyiISgqROs7aiCPa_rbVs,1379
|
|
150
160
|
careamics/utils/torch_utils.py,sha256=g1zxdlM7_BA7mMLcCzmrxZX4LmH__KXlJibC95muVaA,3014
|
|
151
|
-
careamics-0.0.
|
|
152
|
-
careamics-0.0.
|
|
153
|
-
careamics-0.0.
|
|
154
|
-
careamics-0.0.
|
|
161
|
+
careamics-0.0.4.1.dist-info/METADATA,sha256=YemNt_kHIk852-I426HXUdc-gMN-18xR9Vs4WaP8NZ0,3662
|
|
162
|
+
careamics-0.0.4.1.dist-info/WHEEL,sha256=1yFddiXMmvYK7QYTqtRNtX66WJ0Mz8PYEiEUoOUUxRY,87
|
|
163
|
+
careamics-0.0.4.1.dist-info/entry_points.txt,sha256=2fSNVXJWDJgFLATVj7MkjFNvpl53amG8tUzC3jf7G1s,53
|
|
164
|
+
careamics-0.0.4.1.dist-info/licenses/LICENSE,sha256=6zdNW-k_xHRKYWUf9tDI_ZplUciFHyj0g16DYuZ2udw,1509
|
|
165
|
+
careamics-0.0.4.1.dist-info/RECORD,,
|