httomo-backends 1.0.1__py3-none-any.whl → 1.1.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.
Files changed (18) hide show
  1. httomo_backends/cufft.py +0 -1
  2. httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu.yaml +9 -0
  3. httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/corr.py +10 -0
  4. httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/denoise.py +0 -1
  5. httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/morph.py +13 -2
  6. httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/rescale.py +6 -0
  7. httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/normalize.py +0 -1
  8. httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/stripe.py +9 -2
  9. httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py +65 -1
  10. httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/recon/algorithm.py +0 -1
  11. httomo_backends/scripts/yaml_pipelines_generator.py +1 -1
  12. httomo_backends/scripts/yaml_templates_generator.py +1 -0
  13. httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/ADMM3d_tomobar.yaml +17 -0
  14. {httomo_backends-1.0.1.dist-info → httomo_backends-1.1.0.dist-info}/METADATA +1 -1
  15. {httomo_backends-1.0.1.dist-info → httomo_backends-1.1.0.dist-info}/RECORD +18 -17
  16. {httomo_backends-1.0.1.dist-info → httomo_backends-1.1.0.dist-info}/WHEEL +1 -1
  17. {httomo_backends-1.0.1.dist-info → httomo_backends-1.1.0.dist-info}/licenses/LICENSE +0 -0
  18. {httomo_backends-1.0.1.dist-info → httomo_backends-1.1.0.dist-info}/top_level.txt +0 -0
httomo_backends/cufft.py CHANGED
@@ -2,7 +2,6 @@ import ctypes
2
2
  import sys
3
3
  from enum import Enum
4
4
 
5
-
6
5
  if "linux" not in sys.platform:
7
6
  raise RuntimeError("Linux is currently the only supported platform")
8
7
 
@@ -227,6 +227,15 @@ recon:
227
227
  memory_gpu:
228
228
  multiplier: None
229
229
  method: module
230
+ ADMM3d_tomobar:
231
+ pattern: sinogram
232
+ output_dims_change: True
233
+ implementation: gpu_cupy
234
+ save_result_default: True
235
+ padding: True
236
+ memory_gpu:
237
+ multiplier: None
238
+ method: module
230
239
  rotation:
231
240
  find_center_vo:
232
241
  pattern: projection
@@ -1,5 +1,7 @@
1
+ import inspect
1
2
  from typing import Tuple
2
3
 
4
+ from httomolibgpu.misc.corr import median_filter, remove_outlier
3
5
 
4
6
  __all__ = [
5
7
  "_calc_padding_remove_outlier",
@@ -8,10 +10,18 @@ __all__ = [
8
10
 
9
11
 
10
12
  def _calc_padding_remove_outlier(**kwargs) -> Tuple[int, int]:
13
+ if "kernel_size" not in kwargs:
14
+ params = inspect.signature(remove_outlier).parameters
15
+ kwargs["kernel_size"] = params["kernel_size"].default
16
+
11
17
  kernel_size = kwargs["kernel_size"]
12
18
  return (kernel_size // 2, kernel_size // 2)
13
19
 
14
20
 
15
21
  def _calc_padding_median_filter(**kwargs) -> Tuple[int, int]:
22
+ if "kernel_size" not in kwargs:
23
+ params = inspect.signature(median_filter).parameters
24
+ kwargs["kernel_size"] = params["kernel_size"].default
25
+
16
26
  kernel_size = kwargs["kernel_size"]
17
27
  return (kernel_size // 2, kernel_size // 2)
@@ -1,6 +1,5 @@
1
1
  from typing import Tuple
2
2
 
3
-
4
3
  __all__ = [
5
4
  "_calc_padding_total_variation_ROF",
6
5
  "_calc_padding_total_variation_PD",
@@ -20,10 +20,13 @@
20
20
  # ---------------------------------------------------------------------------
21
21
  """Modules for memory estimation for morph functions"""
22
22
 
23
+ import inspect
23
24
  import math
24
25
  from typing import Tuple
25
26
  import numpy as np
26
27
 
28
+ from httomolibgpu.misc.morph import data_resampler, sino_360_to_180
29
+
27
30
  __all__ = [
28
31
  "_calc_memory_bytes_data_resampler",
29
32
  "_calc_output_dim_data_resampler",
@@ -42,6 +45,10 @@ def _calc_memory_bytes_data_resampler(
42
45
  **kwargs,
43
46
  ) -> Tuple[int, int]:
44
47
  newshape = kwargs["newshape"]
48
+
49
+ if "interpolation" not in kwargs:
50
+ params = inspect.signature(data_resampler).parameters
51
+ kwargs["interpolation"] = params["interpolation"].default
45
52
  interpolation = kwargs["interpolation"]
46
53
 
47
54
  input_size = np.prod(non_slice_dims_shape) * dtype.itemsize
@@ -62,7 +69,9 @@ def _calc_output_dim_sino_360_to_180(
62
69
  non_slice_dims_shape: Tuple[int, int],
63
70
  **kwargs,
64
71
  ) -> Tuple[int, int]:
65
- assert "overlap" in kwargs, "Expected overlap in method parameters"
72
+ if "overlap" not in kwargs:
73
+ params = inspect.signature(sino_360_to_180).parameters
74
+ kwargs["overlap"] = params["overlap"].default
66
75
  overlap: float = kwargs["overlap"]
67
76
 
68
77
  original_sino_width = non_slice_dims_shape[1]
@@ -75,7 +84,9 @@ def _calc_memory_bytes_sino_360_to_180(
75
84
  dtype: np.dtype,
76
85
  **kwargs,
77
86
  ) -> Tuple[int, int]:
78
- assert "overlap" in kwargs, "Expected overlap in method parameters"
87
+ if "overlap" not in kwargs:
88
+ params = inspect.signature(sino_360_to_180).parameters
89
+ kwargs["overlap"] = params["overlap"].default
79
90
  overlap: float = kwargs["overlap"]
80
91
 
81
92
  original_sino_width = non_slice_dims_shape[1]
@@ -1,6 +1,9 @@
1
+ import inspect
1
2
  from typing import Tuple
2
3
  import numpy as np
3
4
 
5
+ from httomolibgpu.misc.rescale import rescale_to_int
6
+
4
7
  __all__ = [
5
8
  "_calc_memory_bytes_rescale_to_int",
6
9
  ]
@@ -11,6 +14,9 @@ def _calc_memory_bytes_rescale_to_int(
11
14
  dtype: np.dtype,
12
15
  **kwargs,
13
16
  ) -> Tuple[int, int]:
17
+ if "bits" not in kwargs:
18
+ params = inspect.signature(rescale_to_int).parameters
19
+ kwargs["bits"] = params["bits"].default
14
20
  bits: int = kwargs["bits"]
15
21
  if bits == 8:
16
22
  itemsize = 1
@@ -1,7 +1,6 @@
1
1
  from typing import Tuple
2
2
  import numpy as np
3
3
 
4
-
5
4
  __all__ = [
6
5
  "_calc_memory_bytes_dark_flat_field_correction",
7
6
  ]
@@ -20,13 +20,13 @@
20
20
  # ---------------------------------------------------------------------------
21
21
  """Modules for memory estimation for stripe removal methods"""
22
22
 
23
+ import inspect
23
24
  import math
24
25
  from typing import Tuple
25
26
  import numpy as np
26
27
 
27
28
  from httomo_backends.cufft import CufftType, cufft_estimate_1d
28
- from httomolibgpu.prep.stripe import remove_stripe_fw
29
-
29
+ from httomolibgpu.prep.stripe import raven_filter, remove_stripe_fw
30
30
 
31
31
  __all__ = [
32
32
  "_calc_memory_bytes_for_slices_remove_stripe_fw",
@@ -87,7 +87,14 @@ def _calc_memory_bytes_raven_filter(
87
87
  **kwargs,
88
88
  ) -> Tuple[int, int]:
89
89
 
90
+ if "pad_x" not in kwargs:
91
+ params = inspect.signature(raven_filter).parameters
92
+ kwargs["pad_x"] = params["pad_x"].default
90
93
  pad_x = kwargs["pad_x"]
94
+
95
+ if "pad_y" not in kwargs:
96
+ params = inspect.signature(raven_filter).parameters
97
+ kwargs["pad_y"] = params["pad_y"].default
91
98
  pad_y = kwargs["pad_y"]
92
99
 
93
100
  # Unpadded input
@@ -24,6 +24,7 @@ import math
24
24
  from typing import Tuple
25
25
  import numpy as np
26
26
  from httomo_backends.cufft import CufftType, cufft_estimate_1d, cufft_estimate_2d
27
+ from httomolibgpu.recon.algorithm import ADMM3d_tomobar
27
28
 
28
29
  __all__ = [
29
30
  "_calc_memory_bytes_FBP3d_tomobar",
@@ -31,13 +32,16 @@ __all__ = [
31
32
  "_calc_memory_bytes_SIRT3d_tomobar",
32
33
  "_calc_memory_bytes_CGLS3d_tomobar",
33
34
  "_calc_memory_bytes_FISTA3d_tomobar",
35
+ "_calc_memory_bytes_ADMM3d_tomobar",
34
36
  "_calc_output_dim_FBP2d_astra",
35
37
  "_calc_output_dim_FBP3d_tomobar",
36
38
  "_calc_output_dim_LPRec3d_tomobar",
37
39
  "_calc_output_dim_SIRT3d_tomobar",
38
40
  "_calc_output_dim_CGLS3d_tomobar",
39
41
  "_calc_output_dim_FISTA3d_tomobar",
42
+ "_calc_output_dim_ADMM3d_tomobar",
40
43
  "_calc_padding_FISTA3d_tomobar",
44
+ "_calc_padding_ADMM3d_tomobar",
41
45
  ]
42
46
 
43
47
 
@@ -45,6 +49,10 @@ def _calc_padding_FISTA3d_tomobar(**kwargs) -> Tuple[int, int]:
45
49
  return (5, 5)
46
50
 
47
51
 
52
+ def _calc_padding_ADMM3d_tomobar(**kwargs) -> Tuple[int, int]:
53
+ return (5, 5)
54
+
55
+
48
56
  def __calc_output_dim_recon(non_slice_dims_shape, **kwargs):
49
57
  """Function to calculate output dimensions for all reconstructors.
50
58
  The change of the dimension depends either on the user-provided "recon_size"
@@ -52,7 +60,7 @@ def __calc_output_dim_recon(non_slice_dims_shape, **kwargs):
52
60
 
53
61
  """
54
62
  DetectorsLengthH = non_slice_dims_shape[1]
55
- recon_size = kwargs["recon_size"]
63
+ recon_size = kwargs.get("recon_size", None)
56
64
  if recon_size is None:
57
65
  recon_size = DetectorsLengthH
58
66
  output_dims = (recon_size, recon_size)
@@ -83,6 +91,10 @@ def _calc_output_dim_FISTA3d_tomobar(non_slice_dims_shape, **kwargs):
83
91
  return __calc_output_dim_recon(non_slice_dims_shape, **kwargs)
84
92
 
85
93
 
94
+ def _calc_output_dim_ADMM3d_tomobar(non_slice_dims_shape, **kwargs):
95
+ return __calc_output_dim_recon(non_slice_dims_shape, **kwargs)
96
+
97
+
86
98
  def _calc_memory_bytes_FBP3d_tomobar(
87
99
  non_slice_dims_shape: Tuple[int, int],
88
100
  dtype: np.dtype,
@@ -604,6 +616,58 @@ def _calc_memory_bytes_FISTA3d_tomobar(
604
616
  return (tot_memory_bytes, 0)
605
617
 
606
618
 
619
+ def _calc_memory_bytes_ADMM3d_tomobar(
620
+ non_slice_dims_shape: Tuple[int, int],
621
+ dtype: np.dtype,
622
+ **kwargs,
623
+ ) -> Tuple[int, int]:
624
+ detector_pad = 0
625
+ if "detector_pad" in kwargs:
626
+ detector_pad = kwargs["detector_pad"]
627
+ if detector_pad is True:
628
+ detector_pad = __estimate_detectorHoriz_padding(non_slice_dims_shape[1])
629
+ elif detector_pad is False:
630
+ detector_pad = 0
631
+
632
+ anglesnum = non_slice_dims_shape[0]
633
+ DetectorsLengthH_padded = non_slice_dims_shape[1] + 2 * detector_pad
634
+
635
+ # calculate the output shape
636
+ output_dims = _calc_output_dim_FISTA3d_tomobar(non_slice_dims_shape, **kwargs)
637
+ recon_data_size_original = (
638
+ np.prod(output_dims) * dtype.itemsize
639
+ ) # recon user-defined size
640
+
641
+ in_data_siz_pad = (anglesnum * DetectorsLengthH_padded) * dtype.itemsize
642
+ output_dims_larger_grid = (DetectorsLengthH_padded, DetectorsLengthH_padded)
643
+
644
+ out_data_size = np.prod(output_dims_larger_grid) * dtype.itemsize
645
+ x0 = out_data_size
646
+ x = out_data_size
647
+ z = out_data_size
648
+ u = out_data_size
649
+ grad_data = out_data_size
650
+ grad_admm = out_data_size
651
+ arithmetic = 3 * out_data_size
652
+
653
+ admm_part = (
654
+ recon_data_size_original
655
+ + in_data_siz_pad
656
+ + x0
657
+ + x
658
+ + z
659
+ + u
660
+ + grad_data
661
+ + grad_admm
662
+ + out_data_size
663
+ + arithmetic
664
+ )
665
+ regul_part = 8 * np.prod(output_dims_larger_grid) * dtype.itemsize
666
+
667
+ tot_memory_bytes = int(admm_part + regul_part)
668
+ return (tot_memory_bytes, 0)
669
+
670
+
607
671
  def __estimate_detectorHoriz_padding(detX_size) -> int:
608
672
  det_half = detX_size // 2
609
673
  padded_value_exact = int(np.sqrt(2 * (det_half**2))) - det_half
@@ -23,7 +23,6 @@
23
23
  from typing import Tuple
24
24
  import numpy as np
25
25
 
26
-
27
26
  __all__ = [
28
27
  "_calc_output_dim_recon",
29
28
  ]
@@ -25,13 +25,13 @@
25
25
  Please run the generator as:
26
26
  python -m yaml_pipelines_generator -i /path/to/pipelines.yml -o /path/to/output/
27
27
  """
28
+
28
29
  import argparse
29
30
  import os
30
31
  import ruamel.yaml
31
32
  import httomo_backends
32
33
  import yaml
33
34
 
34
-
35
35
  CS = ruamel.yaml.comments.CommentedSeq # defaults to block style
36
36
 
37
37
 
@@ -24,6 +24,7 @@
24
24
  Please run the generator as:
25
25
  python -m yaml_templates_generator -i /path/to/modules.yml -o /path/to/output/
26
26
  """
27
+
27
28
  import argparse
28
29
  import importlib
29
30
  import inspect
@@ -0,0 +1,17 @@
1
+ - method: ADMM3d_tomobar
2
+ module_path: httomolibgpu.recon.algorithm
3
+ parameters:
4
+ center: ${{centering.side_outputs.centre_of_rotation}}
5
+ detector_pad: false
6
+ recon_size: null
7
+ recon_mask_radius: 0.95
8
+ iterations: 3
9
+ subsets_number: 24
10
+ initialisation: FBP
11
+ ADMM_rho_const: 1.0
12
+ ADMM_relax_par: 1.7
13
+ regularisation_type: PD_TV
14
+ regularisation_parameter: 0.0025
15
+ regularisation_iterations: 40
16
+ regularisation_half_precision: true
17
+ nonnegativity: false
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: httomo-backends
3
- Version: 1.0.1
3
+ Version: 1.1.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
@@ -1,5 +1,5 @@
1
1
  httomo_backends/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- httomo_backends/cufft.py,sha256=mhxI6NeaEdX6-bFEHdQ2RZmf9Iu7LzVQZsJP6OLCjwQ,3283
2
+ httomo_backends/cufft.py,sha256=AlO_cBID-wbkt5JrvZhnx6eWyW02Or1veS4490RUBSo,3282
3
3
  httomo_backends/methods_database/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  httomo_backends/methods_database/query.py,sha256=kjWuhkGhs7Sdqm4yUpHutVHxjWTq0abGVi-FEXesFzA,6298
5
5
  httomo_backends/methods_database/packages/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -7,20 +7,20 @@ httomo_backends/methods_database/packages/httomo.yaml,sha256=tI3D-7IJcdu4EbKwjsj
7
7
  httomo_backends/methods_database/packages/backends/httomolib/httomolib.yaml,sha256=JMi2qB1HAYN9yjoS9M_qjcVERIGN6Ok7oVsERfY7syE,1119
8
8
  httomo_backends/methods_database/packages/backends/httomolib/httomolib_modules.yaml,sha256=LnjKM2EnAhmC7L_yXi_Mg5hhSWc35sGFhlH1PP1FI-8,140
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=p090iNoIQQo9VEyVe4b8u3kTtd9e0DHIR6ekoH5aRAA,6293
10
+ httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu.yaml,sha256=kFHjh8Y5uWYHwbUTXT7_5bwY8yIyw00RvujLDgoWnzs,6517
11
11
  httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu_modules.yaml,sha256=i58Fb01apGyJQxc3_xxDtvHuzcQAB7AdXkHPs_0q85E,308
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
14
- httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/corr.py,sha256=rwO9JEyefb4_6cgqn3MkFtoiDloO9N2cYqTNgVTU_A0,417
15
- httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/denoise.py,sha256=RqQB9LKq33S9XgDQ4cwDQh62xLymKtgTwF_TOWRV01Q,297
16
- httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/morph.py,sha256=FVqYI5iCmHJyLfHmgltIh7PPWr-cMK3Tpcs4EnCrqjc,4323
17
- httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/rescale.py,sha256=iFE8X-GR9zjuFLbBE_glQL8wMoXOjkzcaleflm8VVzA,574
14
+ httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/corr.py,sha256=u6O7uSDGbIhbCeiSlAaFb_xW_bON9LMdUDlU2kGyGHk,818
15
+ httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/denoise.py,sha256=5gVCTNZzmQwU115wYGzGui95em4iQ7WaTryMbR7ZddE,296
16
+ httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/morph.py,sha256=CGkh9HXChfe5X-iqGveIByC22f8nn_btT-OMNWBCJNs,4728
17
+ httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/rescale.py,sha256=mn3ARPMIU9TegWoJLtw2HkmdVBtmuXeRS62zuTdPECA,782
18
18
  httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
- httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/normalize.py,sha256=EdUrUZ1TWKUzKAFwoml_A7v6nchrRbAnElUGbA5xwHQ,679
19
+ httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/normalize.py,sha256=qKTqEeh8ga7WpT6EaLzqqI-bUKFar6f7rQVZXOwZn4g,678
20
20
  httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/phase.py,sha256=LCj4iNuZjtrDwvL21ilfWGem4uXm2bUPEk30cZEyuN4,1759
21
- httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/stripe.py,sha256=cVISJkAkC3eLteUS7AtRUot5mWWoeGIjCfcJXyZ3RI8,4942
21
+ httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/stripe.py,sha256=ANPUeYxlHIV36zRacqxelgDAQvycsrMpUZaLsOX0yj8,5251
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=76Fl19BNMm2mo1gciAe_08QWSe5xmU5R2cpTFjelha0,21931
23
+ httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py,sha256=_EthyTUysjs2eKHPzY2l-766nvgECdtIJoL7QhNHBh8,23873
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
@@ -31,7 +31,7 @@ httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/misc/
31
31
  httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/prep/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
32
  httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/prep/stripe.py,sha256=SzQRDvKrWKMIyQtF4PHhtk0t6GCX3nltZSkepKQhvV8,1725
33
33
  httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/recon/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
- httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/recon/algorithm.py,sha256=0v_zIq46Tm55Rm46s3GZhXZ-V07sf_YgbA-qv3AVT-c,1385
34
+ httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/recon/algorithm.py,sha256=RLdtOp3m99OXQmzBVL414bF1pLqhUOggJVzTBhY7Sgk,1384
35
35
  httomo_backends/pipelines_full/FBP2d_astra_directive.yaml,sha256=jIsGyQiqBzNawY0pVVpfjNjdtHFAEiMoYW_UfjXfgBM,344
36
36
  httomo_backends/pipelines_full/FBP3d_tomobar_denoising_directive.yaml,sha256=Uh_2cZenybVwBqs7yTSAwse491buCrRnN7ch40ARSig,726
37
37
  httomo_backends/pipelines_full/FBP3d_tomobar_directive.yaml,sha256=avc7Sfy6rf3ejvJnTq5we2UDVG41xgOoto6r7iX2U50,657
@@ -47,8 +47,8 @@ httomo_backends/pipelines_full/titaren_center_pc_FBP3d_resample_directive.yaml,s
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=Tsmb_J5hSZGzveJsITECCzAOcmDtRLJTd_Bhr7OSJNc,17788
51
- httomo_backends/scripts/yaml_templates_generator.py,sha256=Bb6qOPYRGiSZujMk65A59zCzuLZqSPkbZL3B-ypxX4k,8690
50
+ httomo_backends/scripts/yaml_pipelines_generator.py,sha256=_l2AOD-ztMSd0_5wdqvkrFYRqb_tf99Y5HLXqP0KcLU,17788
51
+ httomo_backends/scripts/yaml_templates_generator.py,sha256=4ZwkCeHYepTKKQj9Z0ZprH7Cy18Lo-u00C0PVXpFEf8,8691
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
54
54
  httomo_backends/yaml_templates/httomo/httomo.data.hdf.loaders/standard_tomo.yaml,sha256=mFGaYZZrE_dft7FE9Ngm-vXsd3dTftgwwjmLUCUkEZM,568
@@ -80,6 +80,7 @@ httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_all_
80
80
  httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_stripe_based_sorting.yaml,sha256=xyv_XKqFhs801VcsMUfWPHiKvek0qh8RhkbnInWR5i8,116
81
81
  httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_stripe_fw.yaml,sha256=9E0w7T2O0WQI_n-eGH5GIK8Hk6E42BmxfC3KI0Tqit8,125
82
82
  httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_stripe_ti.yaml,sha256=5Ed2YbB0Kf-08_nNP5dzTukNDZopRTOo1I6ODJVRrlM,95
83
+ httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/ADMM3d_tomobar.yaml,sha256=z2iYlhYgeN18XnEWWcSovO3uubLS4xhWdVyeR6Scddk,495
83
84
  httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/CGLS3d_tomobar.yaml,sha256=Hv1hPa0Q_9Ck_gEDqhcOC06zygIunsvcRPQKy-z2Ia8,258
84
85
  httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FBP2d_astra.yaml,sha256=QTtdZkiDpbPODWanCtVRMEwn_q7qJmbDS5Pis8OzlzE,283
85
86
  httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FBP3d_tomobar.yaml,sha256=vMc5nKi5kCv4b0uEc8L-rX7vY78uG6aWBAxvaHnmrQs,243
@@ -149,8 +150,8 @@ httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_zingers.yaml,sha256
149
150
  httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project.yaml,sha256=XBVhW5ZxT9C89tHcwDG7OOgcWNdNtQq97mqlBEoiMnU,202
150
151
  httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project2.yaml,sha256=5raeQ-w9nS9mbAzn2ZqhPjdcyfLOkkJflKNStdEnYRA,238
151
152
  httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project3.yaml,sha256=oyofKSMi-_dSpfjrKVMNDqoBhBCCSYbEVRz2Lsc8uTI,257
152
- httomo_backends-1.0.1.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
153
- httomo_backends-1.0.1.dist-info/METADATA,sha256=Gnv8VDTY7cQJ8R_0d-GI_3ZqKw-XBE1cs-dnJBXkg8c,2272
154
- httomo_backends-1.0.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
155
- httomo_backends-1.0.1.dist-info/top_level.txt,sha256=v4x8d4CeEyMwo8QoqIvL_p-WoXAVD1bVnASPIrLjSTg,16
156
- httomo_backends-1.0.1.dist-info/RECORD,,
153
+ httomo_backends-1.1.0.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
154
+ httomo_backends-1.1.0.dist-info/METADATA,sha256=O7JN4b8Ukha9HI2kAYEgO28FWaAY3UEIgBb7rOMqrMI,2272
155
+ httomo_backends-1.1.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
156
+ httomo_backends-1.1.0.dist-info/top_level.txt,sha256=v4x8d4CeEyMwo8QoqIvL_p-WoXAVD1bVnASPIrLjSTg,16
157
+ httomo_backends-1.1.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.9.0)
2
+ Generator: setuptools (80.10.2)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5