httomo-backends 0.7.1__py3-none-any.whl → 0.8.0__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.
- httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu.yaml +1 -1
- httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/phase.py +7 -5
- httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py +71 -31
- httomo_backends/pipelines_full/deg360_paganin_FBP3d_tomobar_directive.yaml +1 -1
- httomo_backends/pipelines_full/sweep_paganin_FBP3d_tomobar_directive.yaml +4 -4
- httomo_backends/scripts/yaml_pipelines_generator.py +23 -11
- httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/paganin_filter.yaml +7 -0
- httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/LPRec3d_tomobar.yaml +3 -2
- {httomo_backends-0.7.1.dist-info → httomo_backends-0.8.0.dist-info}/METADATA +1 -2
- {httomo_backends-0.7.1.dist-info → httomo_backends-0.8.0.dist-info}/RECORD +13 -13
- httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/paganin_filter_tomopy.yaml +0 -7
- {httomo_backends-0.7.1.dist-info → httomo_backends-0.8.0.dist-info}/WHEEL +0 -0
- {httomo_backends-0.7.1.dist-info → httomo_backends-0.8.0.dist-info}/licenses/LICENSE +0 -0
- {httomo_backends-0.7.1.dist-info → httomo_backends-0.8.0.dist-info}/top_level.txt +0 -0
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/phase.py
CHANGED
|
@@ -20,23 +20,21 @@
|
|
|
20
20
|
# ---------------------------------------------------------------------------
|
|
21
21
|
"""Modules for memory estimation for phase retrieval and phase-contrast enhancement"""
|
|
22
22
|
|
|
23
|
-
import math
|
|
24
23
|
from typing import Tuple
|
|
25
24
|
import numpy as np
|
|
26
25
|
|
|
27
26
|
from httomo_backends.cufft import CufftType, cufft_estimate_2d
|
|
28
27
|
|
|
29
28
|
__all__ = [
|
|
30
|
-
"
|
|
29
|
+
"_calc_memory_bytes_paganin_filter",
|
|
31
30
|
]
|
|
32
31
|
|
|
33
32
|
|
|
34
|
-
def
|
|
33
|
+
def _calc_memory_bytes_paganin_filter(
|
|
35
34
|
non_slice_dims_shape: Tuple[int, int],
|
|
36
35
|
dtype: np.dtype,
|
|
37
36
|
**kwargs,
|
|
38
37
|
) -> Tuple[int, int]:
|
|
39
|
-
from httomolibgpu.prep.phase import _shift_bit_length
|
|
40
38
|
|
|
41
39
|
# Input (unpadded)
|
|
42
40
|
unpadded_in_slice_size = np.prod(non_slice_dims_shape) * dtype.itemsize
|
|
@@ -44,7 +42,7 @@ def _calc_memory_bytes_paganin_filter_tomopy(
|
|
|
44
42
|
# estimate padding size here based on non_slice dimensions
|
|
45
43
|
pad_tup = []
|
|
46
44
|
for dim_len in non_slice_dims_shape:
|
|
47
|
-
diff =
|
|
45
|
+
diff = __shift_bit_length(dim_len + 1) - dim_len
|
|
48
46
|
if dim_len % 2 == 0:
|
|
49
47
|
pad_width = diff // 2
|
|
50
48
|
pad_width = (pad_width, pad_width)
|
|
@@ -107,3 +105,7 @@ def _calc_memory_bytes_paganin_filter_tomopy(
|
|
|
107
105
|
subtract_bytes = int(filter_size + grid_size)
|
|
108
106
|
|
|
109
107
|
return (tot_memory_bytes, subtract_bytes)
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
def __shift_bit_length(x: int) -> int:
|
|
111
|
+
return 1 << (x - 1).bit_length()
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py
CHANGED
|
@@ -189,7 +189,7 @@ def _calc_memory_bytes_LPRec3d_tomobar(
|
|
|
189
189
|
if detector_pad is True:
|
|
190
190
|
detector_pad = __estimate_detectorHoriz_padding(non_slice_dims_shape[1])
|
|
191
191
|
elif detector_pad is False:
|
|
192
|
-
detector_pad = 0
|
|
192
|
+
detector_pad = 0
|
|
193
193
|
|
|
194
194
|
min_mem_usage_filter = False
|
|
195
195
|
if "min_mem_usage_filter" in kwargs:
|
|
@@ -197,6 +197,9 @@ def _calc_memory_bytes_LPRec3d_tomobar(
|
|
|
197
197
|
min_mem_usage_ifft2 = False
|
|
198
198
|
if "min_mem_usage_ifft2" in kwargs:
|
|
199
199
|
min_mem_usage_ifft2 = kwargs["min_mem_usage_ifft2"]
|
|
200
|
+
power_of_2_cropping = False
|
|
201
|
+
if "power_of_2_cropping" in kwargs:
|
|
202
|
+
power_of_2_cropping = kwargs["power_of_2_cropping"]
|
|
200
203
|
|
|
201
204
|
angles_tot = non_slice_dims_shape[0]
|
|
202
205
|
DetectorsLengthH_prepad = non_slice_dims_shape[1]
|
|
@@ -205,6 +208,10 @@ def _calc_memory_bytes_LPRec3d_tomobar(
|
|
|
205
208
|
_CENTER_SIZE_MIN = 192 # must be divisible by 8
|
|
206
209
|
|
|
207
210
|
n = DetectorsLengthH
|
|
211
|
+
if power_of_2_cropping:
|
|
212
|
+
n_pow2 = 2 ** math.ceil(math.log2(n))
|
|
213
|
+
if 0.9 < n / n_pow2:
|
|
214
|
+
n = n_pow2
|
|
208
215
|
|
|
209
216
|
odd_horiz = False
|
|
210
217
|
if (n % 2) != 0:
|
|
@@ -302,10 +309,7 @@ def _calc_memory_bytes_LPRec3d_tomobar(
|
|
|
302
309
|
DetectorsLengthH_prepad * DetectorsLengthH_prepad * np.float32().itemsize
|
|
303
310
|
)
|
|
304
311
|
ifft2_plan_slice_size = (
|
|
305
|
-
cufft_estimate_2d(
|
|
306
|
-
nx=2 * n, ny=2 * n, fft_type=CufftType.CUFFT_C2C
|
|
307
|
-
)
|
|
308
|
-
/ 2
|
|
312
|
+
cufft_estimate_2d(nx=2 * n, ny=2 * n, fft_type=CufftType.CUFFT_C2C) / 2
|
|
309
313
|
)
|
|
310
314
|
circular_mask_size = np.prod(output_dims) / 2 * np.int64().itemsize * 4
|
|
311
315
|
after_recon_swapaxis_slice = recon_output_size
|
|
@@ -344,38 +348,74 @@ def _calc_memory_bytes_LPRec3d_tomobar(
|
|
|
344
348
|
add_to_memory_counters(tmp_p_input_slice, True)
|
|
345
349
|
if min_mem_usage_filter:
|
|
346
350
|
add_to_memory_counters(rfft_plan_slice_size / 4 / projection_chunk_count, False)
|
|
347
|
-
add_to_memory_counters(
|
|
351
|
+
add_to_memory_counters(
|
|
352
|
+
irfft_plan_slice_size / 4 / projection_chunk_count, False
|
|
353
|
+
)
|
|
348
354
|
add_to_memory_counters(padded_tmp_p_input_slice / projection_chunk_count, False)
|
|
349
355
|
|
|
350
356
|
add_to_memory_counters(rfft_result_size / projection_chunk_count, False)
|
|
351
|
-
add_to_memory_counters(
|
|
357
|
+
add_to_memory_counters(
|
|
358
|
+
filtered_rfft_result_size / projection_chunk_count, False
|
|
359
|
+
)
|
|
352
360
|
add_to_memory_counters(-rfft_result_size / projection_chunk_count, False)
|
|
353
|
-
add_to_memory_counters(
|
|
361
|
+
add_to_memory_counters(
|
|
362
|
+
-padded_tmp_p_input_slice / projection_chunk_count, False
|
|
363
|
+
)
|
|
354
364
|
|
|
355
|
-
add_to_memory_counters(
|
|
356
|
-
|
|
365
|
+
add_to_memory_counters(
|
|
366
|
+
irfft_scratch_memory_size / projection_chunk_count, False
|
|
367
|
+
)
|
|
368
|
+
add_to_memory_counters(
|
|
369
|
+
-irfft_scratch_memory_size / projection_chunk_count, False
|
|
370
|
+
)
|
|
357
371
|
add_to_memory_counters(irfft_result_size / projection_chunk_count, False)
|
|
358
|
-
add_to_memory_counters(
|
|
372
|
+
add_to_memory_counters(
|
|
373
|
+
-filtered_rfft_result_size / projection_chunk_count, False
|
|
374
|
+
)
|
|
359
375
|
|
|
360
376
|
add_to_memory_counters(-irfft_result_size / projection_chunk_count, False)
|
|
361
377
|
else:
|
|
362
|
-
add_to_memory_counters(
|
|
363
|
-
|
|
378
|
+
add_to_memory_counters(
|
|
379
|
+
rfft_plan_slice_size / chunk_count / projection_chunk_count * 2, True
|
|
380
|
+
)
|
|
381
|
+
add_to_memory_counters(
|
|
382
|
+
irfft_plan_slice_size / chunk_count / projection_chunk_count * 2, True
|
|
383
|
+
)
|
|
364
384
|
# add_to_memory_counters(irfft_scratch_memory_size / chunk_count / projection_chunk_count, True)
|
|
365
385
|
for _ in range(0, chunk_count):
|
|
366
|
-
add_to_memory_counters(
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
add_to_memory_counters(
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
add_to_memory_counters(
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
add_to_memory_counters(
|
|
377
|
-
|
|
378
|
-
|
|
386
|
+
add_to_memory_counters(
|
|
387
|
+
padded_tmp_p_input_slice / chunk_count / projection_chunk_count, True
|
|
388
|
+
)
|
|
389
|
+
|
|
390
|
+
add_to_memory_counters(
|
|
391
|
+
rfft_result_size / chunk_count / projection_chunk_count, True
|
|
392
|
+
)
|
|
393
|
+
add_to_memory_counters(
|
|
394
|
+
filtered_rfft_result_size / chunk_count / projection_chunk_count, True
|
|
395
|
+
)
|
|
396
|
+
add_to_memory_counters(
|
|
397
|
+
-rfft_result_size / chunk_count / projection_chunk_count, True
|
|
398
|
+
)
|
|
399
|
+
add_to_memory_counters(
|
|
400
|
+
-padded_tmp_p_input_slice / chunk_count / projection_chunk_count, True
|
|
401
|
+
)
|
|
402
|
+
|
|
403
|
+
add_to_memory_counters(
|
|
404
|
+
irfft_scratch_memory_size / chunk_count / projection_chunk_count, True
|
|
405
|
+
)
|
|
406
|
+
add_to_memory_counters(
|
|
407
|
+
-irfft_scratch_memory_size / chunk_count / projection_chunk_count, True
|
|
408
|
+
)
|
|
409
|
+
add_to_memory_counters(
|
|
410
|
+
irfft_result_size / chunk_count / projection_chunk_count, True
|
|
411
|
+
)
|
|
412
|
+
add_to_memory_counters(
|
|
413
|
+
-filtered_rfft_result_size / chunk_count / projection_chunk_count, True
|
|
414
|
+
)
|
|
415
|
+
|
|
416
|
+
add_to_memory_counters(
|
|
417
|
+
-irfft_result_size / chunk_count / projection_chunk_count, True
|
|
418
|
+
)
|
|
379
419
|
|
|
380
420
|
add_to_memory_counters(-padded_in_slice_size, True)
|
|
381
421
|
add_to_memory_counters(-filter_size, False)
|
|
@@ -426,7 +466,7 @@ def _calc_memory_bytes_SIRT3d_tomobar(
|
|
|
426
466
|
if detector_pad is True:
|
|
427
467
|
detector_pad = __estimate_detectorHoriz_padding(non_slice_dims_shape[1])
|
|
428
468
|
elif detector_pad is False:
|
|
429
|
-
detector_pad = 0
|
|
469
|
+
detector_pad = 0
|
|
430
470
|
|
|
431
471
|
anglesnum = non_slice_dims_shape[0]
|
|
432
472
|
DetectorsLengthH_padded = non_slice_dims_shape[1] + 2 * detector_pad
|
|
@@ -449,7 +489,7 @@ def _calc_memory_bytes_SIRT3d_tomobar(
|
|
|
449
489
|
Res_times_R = Res
|
|
450
490
|
C_times_res = out_data_size
|
|
451
491
|
|
|
452
|
-
astra_projection =
|
|
492
|
+
astra_projection = in_data_size + out_data_size
|
|
453
493
|
|
|
454
494
|
tot_memory_bytes = int(
|
|
455
495
|
recon_data_size_original
|
|
@@ -476,7 +516,7 @@ def _calc_memory_bytes_CGLS3d_tomobar(
|
|
|
476
516
|
if detector_pad is True:
|
|
477
517
|
detector_pad = __estimate_detectorHoriz_padding(non_slice_dims_shape[1])
|
|
478
518
|
elif detector_pad is False:
|
|
479
|
-
detector_pad = 0
|
|
519
|
+
detector_pad = 0
|
|
480
520
|
|
|
481
521
|
anglesnum = non_slice_dims_shape[0]
|
|
482
522
|
DetectorsLengthH_padded = non_slice_dims_shape[1] + 2 * detector_pad
|
|
@@ -528,7 +568,7 @@ def _calc_memory_bytes_FISTA3d_tomobar(
|
|
|
528
568
|
if detector_pad is True:
|
|
529
569
|
detector_pad = __estimate_detectorHoriz_padding(non_slice_dims_shape[1])
|
|
530
570
|
elif detector_pad is False:
|
|
531
|
-
detector_pad = 0
|
|
571
|
+
detector_pad = 0
|
|
532
572
|
|
|
533
573
|
anglesnum = non_slice_dims_shape[0]
|
|
534
574
|
DetectorsLengthH_padded = non_slice_dims_shape[1] + 2 * detector_pad
|
|
@@ -567,5 +607,5 @@ def _calc_memory_bytes_FISTA3d_tomobar(
|
|
|
567
607
|
def __estimate_detectorHoriz_padding(detX_size) -> int:
|
|
568
608
|
det_half = detX_size // 2
|
|
569
609
|
padded_value_exact = int(np.sqrt(2 * (det_half**2))) - det_half
|
|
570
|
-
padded_add_margin =
|
|
610
|
+
padded_add_margin = padded_value_exact // 2
|
|
571
611
|
return padded_value_exact + padded_add_margin
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
module_path: httomolibgpu.misc.morph
|
|
9
9
|
- method: remove_stripe_based_sorting
|
|
10
10
|
module_path: httomolibgpu.prep.stripe
|
|
11
|
-
- method:
|
|
11
|
+
- method: paganin_filter
|
|
12
12
|
module_path: httomolibgpu.prep.phase
|
|
13
13
|
- method: FBP3d_tomobar
|
|
14
14
|
module_path: httomolibgpu.recon.algorithm
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
module_path: httomolibgpu.recon.rotation
|
|
5
5
|
- method: normalize
|
|
6
6
|
module_path: httomolibgpu.prep.normalize
|
|
7
|
-
- method:
|
|
7
|
+
- method: paganin_filter
|
|
8
8
|
module_path: httomolibgpu.prep.phase
|
|
9
|
-
sweep_parameter:
|
|
10
|
-
sweep_values: [
|
|
9
|
+
sweep_parameter: ratio_delta_beta
|
|
10
|
+
sweep_values: [10, 150, 350]
|
|
11
11
|
- method: FBP3d_tomobar
|
|
12
|
-
module_path: httomolibgpu.recon.algorithm
|
|
12
|
+
module_path: httomolibgpu.recon.algorithm
|
|
@@ -138,7 +138,7 @@ def yaml_pipelines_generator(
|
|
|
138
138
|
|
|
139
139
|
pipeline_full.yaml_set_start_comment(
|
|
140
140
|
"This pipeline should be supported by the latest developments of HTTomo. Use module load httomo/latest module at Diamond."
|
|
141
|
-
)
|
|
141
|
+
)
|
|
142
142
|
|
|
143
143
|
if "loaders" in module_name:
|
|
144
144
|
# should be the first method in the list
|
|
@@ -157,7 +157,7 @@ def yaml_pipelines_generator(
|
|
|
157
157
|
pipeline_full += yaml_template_method
|
|
158
158
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
159
159
|
key="ind",
|
|
160
|
-
comment="A vertical slice (sinogram) index to calculate CoR,
|
|
160
|
+
comment="A vertical slice (sinogram) index to calculate CoR, 'mid' can be used for middle",
|
|
161
161
|
)
|
|
162
162
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
163
163
|
key="cor_initialisation_value",
|
|
@@ -169,7 +169,7 @@ def yaml_pipelines_generator(
|
|
|
169
169
|
)
|
|
170
170
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
171
171
|
key="side",
|
|
172
|
-
comment="'None' corresponds to fully automated determination, '
|
|
172
|
+
comment="'None' corresponds to fully automated determination, 'left' to the left side, 'right' to the right side.",
|
|
173
173
|
)
|
|
174
174
|
pipeline_full[i]["side_outputs"].yaml_add_eol_comment(
|
|
175
175
|
key="cor",
|
|
@@ -182,7 +182,7 @@ def yaml_pipelines_generator(
|
|
|
182
182
|
elif "corr" in module_name and "remove_outlier" in method_name:
|
|
183
183
|
pipeline_full.yaml_set_comment_before_after_key(
|
|
184
184
|
i,
|
|
185
|
-
"--- Removing unresponsive pixels in the data, aka zingers. Use if sharp streaks are present in the reconstruction. To be applied before normalisation. ---",
|
|
185
|
+
"--- Removing unresponsive/dead pixels in the data, aka zingers. Use if sharp streaks are present in the reconstruction. To be applied before normalisation. ---",
|
|
186
186
|
indent=0,
|
|
187
187
|
)
|
|
188
188
|
pipeline_full += yaml_template_method
|
|
@@ -223,7 +223,7 @@ def yaml_pipelines_generator(
|
|
|
223
223
|
elif "sino_360_to_180" in method_name:
|
|
224
224
|
pipeline_full.yaml_set_comment_before_after_key(
|
|
225
225
|
i,
|
|
226
|
-
"--- Using the overlap provided, converting 360 degrees scan to 180 degrees scan. --- ",
|
|
226
|
+
"--- Using the overlap and side provided, converting 360 degrees scan to 180 degrees scan. --- ",
|
|
227
227
|
indent=0,
|
|
228
228
|
)
|
|
229
229
|
pipeline_full += yaml_template_method
|
|
@@ -236,7 +236,7 @@ def yaml_pipelines_generator(
|
|
|
236
236
|
pipeline_full += yaml_template_method
|
|
237
237
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
238
238
|
key="minus_log",
|
|
239
|
-
comment="If Paganin method is used bellow, set it to false.",
|
|
239
|
+
comment="If Paganin method is used bellow, set it to 'false'.",
|
|
240
240
|
)
|
|
241
241
|
elif "phase" in module_name:
|
|
242
242
|
pipeline_full.yaml_set_comment_before_after_key(
|
|
@@ -246,8 +246,20 @@ def yaml_pipelines_generator(
|
|
|
246
246
|
)
|
|
247
247
|
pipeline_full += yaml_template_method
|
|
248
248
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
249
|
-
key="
|
|
250
|
-
comment="
|
|
249
|
+
key="ratio_delta_beta",
|
|
250
|
+
comment="The ratio of delta/beta for filter strength control. Larger values lead to more smoothing.",
|
|
251
|
+
)
|
|
252
|
+
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
253
|
+
key="pixel_size",
|
|
254
|
+
comment="Detector pixel size (resolution) in MICRON units.",
|
|
255
|
+
)
|
|
256
|
+
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
257
|
+
key="distance",
|
|
258
|
+
comment="Propagation distance of the wavefront from sample to detector in METRE units.",
|
|
259
|
+
)
|
|
260
|
+
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
261
|
+
key="energy",
|
|
262
|
+
comment="Beam energy in keV.",
|
|
251
263
|
)
|
|
252
264
|
elif "stripe" in module_name:
|
|
253
265
|
pipeline_full.yaml_set_comment_before_after_key(
|
|
@@ -269,11 +281,11 @@ def yaml_pipelines_generator(
|
|
|
269
281
|
)
|
|
270
282
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
271
283
|
key="detector_pad",
|
|
272
|
-
comment="Horizontal detector padding to minimise circle/arc-type artifacts in the reconstruction. Set to true to enable automatic padding or an integer",
|
|
284
|
+
comment="Horizontal detector padding to minimise circle/arc-type artifacts in the reconstruction. Set to 'true' to enable automatic padding or an integer",
|
|
273
285
|
)
|
|
274
286
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
275
287
|
key="recon_mask_radius",
|
|
276
|
-
comment="Zero pixels outside the mask-circle radius.",
|
|
288
|
+
comment="Zero pixels outside the mask-circle radius. Make radius equal to 2.0 to remove the mask effect.",
|
|
277
289
|
)
|
|
278
290
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
279
291
|
key="neglog",
|
|
@@ -284,7 +296,7 @@ def yaml_pipelines_generator(
|
|
|
284
296
|
pipeline_full[i]["parameters"]["algorithm"] = "gridrec"
|
|
285
297
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
286
298
|
key="algorithm",
|
|
287
|
-
comment="Select the required algorithm, e.g.
|
|
299
|
+
comment="Select the required algorithm, e.g. 'gridrec'",
|
|
288
300
|
)
|
|
289
301
|
elif "denoise" in module_name:
|
|
290
302
|
pipeline_full.yaml_set_comment_before_after_key(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: httomo-backends
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.8.0
|
|
4
4
|
Summary: Supplementary files for HTTomo backends.
|
|
5
5
|
Author: Garry ODonnell, Jacob Williamson
|
|
6
6
|
Author-email: Daniil Kazantsev <daniil.kazantsev@diamond.ac.uk>, Yousef Moazzam <yousef.moazzam@diamond.ac.uk>, Jessica Verschoyle <jessica.verschoyle@diamond.ac.uk>, Naman Gera <naman.gera@diamond.ac.uk>, scientificsoftware@diamond.ac.uk
|
|
@@ -22,7 +22,6 @@ Requires-Dist: h5py
|
|
|
22
22
|
Requires-Dist: astra-toolbox
|
|
23
23
|
Requires-Dist: tomobar
|
|
24
24
|
Requires-Dist: scikit-image
|
|
25
|
-
Requires-Dist: ccpi-regularisation-cupy
|
|
26
25
|
Provides-Extra: dev
|
|
27
26
|
Requires-Dist: pytest; extra == "dev"
|
|
28
27
|
Requires-Dist: pytest-mock; extra == "dev"
|
|
@@ -7,7 +7,7 @@ httomo_backends/methods_database/packages/httomo.yaml,sha256=tI3D-7IJcdu4EbKwjsj
|
|
|
7
7
|
httomo_backends/methods_database/packages/backends/httomolib/httomolib.yaml,sha256=8l2Z6GGlXIIe2vcX85GK4wis5zxhgmg7EmlwLMV_rtI,938
|
|
8
8
|
httomo_backends/methods_database/packages/backends/httomolib/httomolib_modules.yaml,sha256=tbvivxcAc90Wu36v1yFnGN-WqBIA1NHGWrg_D28UXi8,117
|
|
9
9
|
httomo_backends/methods_database/packages/backends/httomolibgpu/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
-
httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu.yaml,sha256=
|
|
10
|
+
httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu.yaml,sha256=OCAjJSM5PlfkN3kkXKW9QWhr1WGWfFIToNUQFrj_dFQ,5340
|
|
11
11
|
httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu_modules.yaml,sha256=HZWQ74Ygi25hjNg7wR9muPDdmN8STtOMY-LXWaTfspc,282
|
|
12
12
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
13
13
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -17,10 +17,10 @@ httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs
|
|
|
17
17
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/rescale.py,sha256=iFE8X-GR9zjuFLbBE_glQL8wMoXOjkzcaleflm8VVzA,574
|
|
18
18
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
19
19
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/normalize.py,sha256=Ekxyp3j5bpg2-4iZmXI49VEBFFYUV6rfYBEqGdaqV6M,645
|
|
20
|
-
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/phase.py,sha256=
|
|
20
|
+
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/phase.py,sha256=gzrQJ-T2iBqhlWq3LmXKn_sLK5K__u1LtxoZYZjBDsQ,4070
|
|
21
21
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/stripe.py,sha256=KnS8IpcXaLeiIWr4qAKwOrcK1vS9zrU6u5gOITZ159k,4623
|
|
22
22
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
23
|
-
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py,sha256=
|
|
23
|
+
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py,sha256=76Fl19BNMm2mo1gciAe_08QWSe5xmU5R2cpTFjelha0,21931
|
|
24
24
|
httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/peak_memory_line_profile_hook.py,sha256=hb-CyqD5TKxDg6Rg5fvFeXIO2nvjbp_XMTeRdJZ8ONo,6347
|
|
25
25
|
httomo_backends/methods_database/packages/backends/tomopy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
26
26
|
httomo_backends/methods_database/packages/backends/tomopy/tomopy.yaml,sha256=URe18BAV1EbGLil53t88T42BuKSiUHz6r3uzs_wo8Ug,11215
|
|
@@ -40,14 +40,14 @@ httomo_backends/pipelines_full/FISTA3d_tomobar_directive.yaml,sha256=xuBtnN3vT2t
|
|
|
40
40
|
httomo_backends/pipelines_full/LPRec3d_tomobar_directive.yaml,sha256=c6c-cXCstUgLVqprfMFVdxzcTCeE8H-Dnhq7kmSIhYc,577
|
|
41
41
|
httomo_backends/pipelines_full/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
42
42
|
httomo_backends/pipelines_full/deg360_distortion_FBP3d_tomobar_directive.yaml,sha256=3Ht3yAzi97VW29OfvDE9j_p3NYbZfHDlfZMuRivsdKo,676
|
|
43
|
-
httomo_backends/pipelines_full/deg360_paganin_FBP3d_tomobar_directive.yaml,sha256=
|
|
43
|
+
httomo_backends/pipelines_full/deg360_paganin_FBP3d_tomobar_directive.yaml,sha256=q15zplcnr4i5EFw4F0pi2-dhqxvOkhLyAjqnVQMnoi0,653
|
|
44
44
|
httomo_backends/pipelines_full/sweep_center_FBP3d_tomobar_directive.yaml,sha256=ERai5NvyAQz9-1EAdMUw3XkjlMvZhh6LCtXQpRh7mv4,277
|
|
45
|
-
httomo_backends/pipelines_full/sweep_paganin_FBP3d_tomobar_directive.yaml,sha256=
|
|
45
|
+
httomo_backends/pipelines_full/sweep_paganin_FBP3d_tomobar_directive.yaml,sha256=Y1K7Dl_Bs_6nU_oBGEEchn3l8TL0VSKq023IDQU4ZPo,395
|
|
46
46
|
httomo_backends/pipelines_full/titaren_center_pc_FBP3d_resample_directive.yaml,sha256=lhT-jE2karklr_-cgEyvPRYLVwNGJgpf8XBI1r1TMLc,574
|
|
47
47
|
httomo_backends/pipelines_full/tomopy_gridrec_directive.yaml,sha256=NlrX-mqyzjJvwGotTLwosBnC4d9pPRNB1JWFA7YXHuM,533
|
|
48
48
|
httomo_backends/scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
49
49
|
httomo_backends/scripts/json_pipelines_generator.py,sha256=iWTsYr1i0Ei77Imaml5HXWvZUUeX-tkU1WRIdxskV3M,8322
|
|
50
|
-
httomo_backends/scripts/yaml_pipelines_generator.py,sha256=
|
|
50
|
+
httomo_backends/scripts/yaml_pipelines_generator.py,sha256=nY66CcAc2HK8ViUyOEk1ezQsEEVylD3HfhfWkaA6e3k,17030
|
|
51
51
|
httomo_backends/scripts/yaml_templates_generator.py,sha256=NjE5q8YXxkXjA-9WTg4YB8ccawNA0veeJE1C8yyWqlI,8532
|
|
52
52
|
httomo_backends/scripts/yaml_unsupported_tomopy_remove.py,sha256=R3ZAfFgpVsBWS7zBjLlU83-66nawo7EBegFsIAHBWmQ,3715
|
|
53
53
|
httomo_backends/yaml_templates/httomo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -70,7 +70,7 @@ httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.morph/sino_360_to_
|
|
|
70
70
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.rescale/rescale_to_int.yaml,sha256=WR_exoyowYnXgDOUH5JYGPQ17-MfUayuVkNwMQTHzac,198
|
|
71
71
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.alignment/distortion_correction_proj_discorpy.yaml,sha256=KxWTzuZOoHUymFt4OJZVT7jhPs6oAuUmSQskQJqKwZk,163
|
|
72
72
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.normalize/normalize.yaml,sha256=PIfA4jwCmnWtz7V5n0Zng8lPvD4h1YyIriBSL39CtVM,214
|
|
73
|
-
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/
|
|
73
|
+
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/paganin_filter.yaml,sha256=7UVaKZD9JpVguIZONF3Q1wieqHAsE323tzCTEIW7WdA,160
|
|
74
74
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/raven_filter.yaml,sha256=SDqgP_RLq7jjnL9Fz7hfrKko4F7-yahCsabBIJ0XMC8,169
|
|
75
75
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_all_stripe.yaml,sha256=MfoMeF_C2zRE7-W5cknhmG9-a5QYb5lpSdz9dwOndJQ,138
|
|
76
76
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_stripe_based_sorting.yaml,sha256=xyv_XKqFhs801VcsMUfWPHiKvek0qh8RhkbnInWR5i8,116
|
|
@@ -79,7 +79,7 @@ httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/CGLS3d_
|
|
|
79
79
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FBP2d_astra.yaml,sha256=MxUbW-dMxMrI4Exn5mgh2ovie4Ldv1Eb-zS68ETsNCU,301
|
|
80
80
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FBP3d_tomobar.yaml,sha256=H9-PTd8qW2qXqgHYw-NfZGgy2yut7ReKsbsR3x0_OOA,261
|
|
81
81
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FISTA3d_tomobar.yaml,sha256=i2K7Yc19VY6uZZR8bVjb85jpWIShlM_yCGD-Z5Eb-5E,442
|
|
82
|
-
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/LPRec3d_tomobar.yaml,sha256=
|
|
82
|
+
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/LPRec3d_tomobar.yaml,sha256=qqHNsYxW4D3QggXkJQGFSLKZ0mR4h_LIxR379g51HVc,411
|
|
83
83
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/SIRT3d_tomobar.yaml,sha256=oom622LQ8xAZbZiHm4t0PSKKsMkX5G743vVBqRbMQek,277
|
|
84
84
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.rotation/find_center_360.yaml,sha256=nXjbgTBDQcIlBWvXwMd8FoNimtq-8QabgNWAI-fiFU8,322
|
|
85
85
|
httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.rotation/find_center_pc.yaml,sha256=g3CNIaLhhBI6igluIMwytFqVXzrDlv8A1EU1C7ey4FE,208
|
|
@@ -144,8 +144,8 @@ httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_zingers.yaml,sha256
|
|
|
144
144
|
httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project.yaml,sha256=XBVhW5ZxT9C89tHcwDG7OOgcWNdNtQq97mqlBEoiMnU,202
|
|
145
145
|
httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project2.yaml,sha256=5raeQ-w9nS9mbAzn2ZqhPjdcyfLOkkJflKNStdEnYRA,238
|
|
146
146
|
httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project3.yaml,sha256=oyofKSMi-_dSpfjrKVMNDqoBhBCCSYbEVRz2Lsc8uTI,257
|
|
147
|
-
httomo_backends-0.
|
|
148
|
-
httomo_backends-0.
|
|
149
|
-
httomo_backends-0.
|
|
150
|
-
httomo_backends-0.
|
|
151
|
-
httomo_backends-0.
|
|
147
|
+
httomo_backends-0.8.0.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
148
|
+
httomo_backends-0.8.0.dist-info/METADATA,sha256=G9IVCwxGSE39qlVAwr1LCubkFrjMeJHUXDuOuqnjqYU,2272
|
|
149
|
+
httomo_backends-0.8.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
150
|
+
httomo_backends-0.8.0.dist-info/top_level.txt,sha256=v4x8d4CeEyMwo8QoqIvL_p-WoXAVD1bVnASPIrLjSTg,16
|
|
151
|
+
httomo_backends-0.8.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|