httomo-backends 0.7.2__tar.gz → 0.9.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/PKG-INFO +1 -1
  2. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolib/httomolib.yaml +8 -0
  3. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolib/httomolib_modules.yaml +1 -0
  4. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu.yaml +30 -2
  5. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu_modules.yaml +1 -0
  6. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/normalize.py +2 -2
  7. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/phase.py +16 -5
  8. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py +66 -33
  9. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/FBP2d_astra_directive.yaml +4 -2
  10. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/FBP3d_tomobar_denoising_directive.yaml +5 -3
  11. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/FBP3d_tomobar_directive.yaml +5 -3
  12. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/FBP3d_tomobar_noimagesaving_directive.yaml +5 -3
  13. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/FISTA3d_tomobar_directive.yaml +4 -2
  14. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/LPRec3d_tomobar_directive.yaml +5 -3
  15. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/deg360_distortion_FBP3d_tomobar_directive.yaml +5 -3
  16. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/deg360_paganin_FBP3d_tomobar_directive.yaml +4 -4
  17. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/sweep_center_FBP3d_tomobar_directive.yaml +3 -1
  18. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/sweep_paganin_FBP3d_tomobar_directive.yaml +6 -6
  19. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/titaren_center_pc_FBP3d_resample_directive.yaml +4 -2
  20. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/scripts/yaml_pipelines_generator.py +31 -15
  21. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/scripts/yaml_templates_generator.py +4 -0
  22. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomo/httomo.data.hdf.loaders/standard_tomo.yaml +1 -0
  23. httomo_backends-0.9.0/httomo_backends/yaml_templates/httomolib/httomolib.misc.utils/data_checker.yaml +7 -0
  24. httomo_backends-0.9.0/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.utils/data_checker.yaml +7 -0
  25. httomo_backends-0.7.2/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.normalize/normalize.yaml → httomo_backends-0.9.0/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.normalize/dark_flat_field_correction.yaml +1 -4
  26. httomo_backends-0.9.0/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.normalize/minus_log.yaml +3 -0
  27. httomo_backends-0.9.0/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/paganin_filter.yaml +7 -0
  28. httomo_backends-0.9.0/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/paganin_filter_savu_legacy.yaml +7 -0
  29. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/CGLS3d_tomobar.yaml +0 -1
  30. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FBP2d_astra.yaml +0 -1
  31. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FBP3d_tomobar.yaml +0 -1
  32. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FISTA3d_tomobar.yaml +0 -1
  33. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/LPRec3d_tomobar.yaml +0 -5
  34. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/SIRT3d_tomobar.yaml +0 -1
  35. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends.egg-info/PKG-INFO +1 -1
  36. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends.egg-info/SOURCES.txt +6 -2
  37. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/pyproject.toml +1 -1
  38. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/tests/test_httomolibgpu.py +66 -19
  39. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/tests/test_method_query.py +18 -6
  40. httomo_backends-0.7.2/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/paganin_filter_tomopy.yaml +0 -7
  41. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/LICENSE +0 -0
  42. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/README.rst +0 -0
  43. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/__init__.py +0 -0
  44. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/cufft.py +0 -0
  45. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/__init__.py +0 -0
  46. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/__init__.py +0 -0
  47. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/__init__.py +0 -0
  48. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/__init__.py +0 -0
  49. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/__init__.py +0 -0
  50. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/corr.py +0 -0
  51. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/denoise.py +0 -0
  52. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/morph.py +0 -0
  53. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/rescale.py +0 -0
  54. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/__init__.py +0 -0
  55. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/stripe.py +0 -0
  56. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/__init__.py +0 -0
  57. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/peak_memory_line_profile_hook.py +0 -0
  58. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/__init__.py +0 -0
  59. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/__init__.py +0 -0
  60. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/misc/__init__.py +0 -0
  61. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/misc/corr.py +0 -0
  62. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/prep/__init__.py +0 -0
  63. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/prep/stripe.py +0 -0
  64. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/recon/__init__.py +0 -0
  65. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/recon/algorithm.py +0 -0
  66. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/tomopy.yaml +0 -0
  67. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/backends/tomopy/tomopy_modules.yaml +0 -0
  68. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/packages/httomo.yaml +0 -0
  69. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/methods_database/query.py +0 -0
  70. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/__init__.py +0 -0
  71. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/pipelines_full/tomopy_gridrec_directive.yaml +0 -0
  72. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/scripts/__init__.py +0 -0
  73. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/scripts/json_pipelines_generator.py +0 -0
  74. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/scripts/yaml_unsupported_tomopy_remove.py +0 -0
  75. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomo/__init__.py +0 -0
  76. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomo/httomo.methods/calculate_stats.yaml +0 -0
  77. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomo/httomo.methods/save_intermediate_data.yaml +0 -0
  78. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolib/__init__.py +0 -0
  79. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolib/httomolib.misc.images/save_to_images.yaml +0 -0
  80. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolib/httomolib.misc.morph/data_reducer.yaml +0 -0
  81. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolib/httomolib.misc.rescale/rescale_to_int.yaml +0 -0
  82. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolib/httomolib.misc.segm/binary_thresholding.yaml +0 -0
  83. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolib/httomolib.prep.phase/paganin_filter.yaml +0 -0
  84. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/__init__.py +0 -0
  85. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.corr/median_filter.yaml +0 -0
  86. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.corr/remove_outlier.yaml +0 -0
  87. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.denoise/total_variation_PD.yaml +0 -0
  88. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.denoise/total_variation_ROF.yaml +0 -0
  89. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.morph/data_resampler.yaml +0 -0
  90. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.morph/sino_360_to_180.yaml +0 -0
  91. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.rescale/rescale_to_int.yaml +0 -0
  92. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.alignment/distortion_correction_proj_discorpy.yaml +0 -0
  93. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/raven_filter.yaml +0 -0
  94. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_all_stripe.yaml +0 -0
  95. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_stripe_based_sorting.yaml +0 -0
  96. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_stripe_ti.yaml +0 -0
  97. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.rotation/find_center_360.yaml +0 -0
  98. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.rotation/find_center_pc.yaml +0 -0
  99. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.rotation/find_center_vo.yaml +0 -0
  100. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/__init__.py +0 -0
  101. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/adjust_range.yaml +0 -0
  102. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/circ_mask.yaml +0 -0
  103. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/gaussian_filter.yaml +0 -0
  104. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/median_filter.yaml +0 -0
  105. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/median_filter3d.yaml +0 -0
  106. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/median_filter_nonfinite.yaml +0 -0
  107. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_nan.yaml +0 -0
  108. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_neg.yaml +0 -0
  109. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_outlier.yaml +0 -0
  110. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_outlier1d.yaml +0 -0
  111. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_outlier3d.yaml +0 -0
  112. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_ring.yaml +0 -0
  113. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/sobel_filter.yaml +0 -0
  114. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/downsample.yaml +0 -0
  115. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/pad.yaml +0 -0
  116. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/sino_360_to_180.yaml +0 -0
  117. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/trim_sinogram.yaml +0 -0
  118. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/upsample.yaml +0 -0
  119. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/add_jitter.yaml +0 -0
  120. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/add_noise.yaml +0 -0
  121. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/align_joint.yaml +0 -0
  122. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/align_seq.yaml +0 -0
  123. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/blur_edges.yaml +0 -0
  124. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/distortion_correction_proj.yaml +0 -0
  125. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/distortion_correction_sino.yaml +0 -0
  126. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/scale.yaml +0 -0
  127. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/shift_images.yaml +0 -0
  128. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/minus_log.yaml +0 -0
  129. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/normalize.yaml +0 -0
  130. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/normalize_bg.yaml +0 -0
  131. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/normalize_nf.yaml +0 -0
  132. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/normalize_roi.yaml +0 -0
  133. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.phase/retrieve_phase.yaml +0 -0
  134. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_all_stripe.yaml +0 -0
  135. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_dead_stripe.yaml +0 -0
  136. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_large_stripe.yaml +0 -0
  137. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_based_filtering.yaml +0 -0
  138. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_based_fitting.yaml +0 -0
  139. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_based_interpolation.yaml +0 -0
  140. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_based_sorting.yaml +0 -0
  141. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_fw.yaml +0 -0
  142. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_sf.yaml +0 -0
  143. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_ti.yaml +0 -0
  144. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/stripes_detect3d.yaml +0 -0
  145. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/stripes_mask3d.yaml +0 -0
  146. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.recon.algorithm/recon.yaml +0 -0
  147. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.recon.rotation/find_center.yaml +0 -0
  148. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.recon.rotation/find_center_pc.yaml +0 -0
  149. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.recon.rotation/find_center_vo.yaml +0 -0
  150. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_drift.yaml +0 -0
  151. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_focal_spot_blur.yaml +0 -0
  152. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_gaussian.yaml +0 -0
  153. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_poisson.yaml +0 -0
  154. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_rings.yaml +0 -0
  155. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_salt_pepper.yaml +0 -0
  156. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_zingers.yaml +0 -0
  157. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project.yaml +0 -0
  158. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project2.yaml +0 -0
  159. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project3.yaml +0 -0
  160. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends.egg-info/dependency_links.txt +0 -0
  161. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends.egg-info/requires.txt +0 -0
  162. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/httomo_backends.egg-info/top_level.txt +0 -0
  163. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/setup.cfg +0 -0
  164. {httomo_backends-0.7.2 → httomo_backends-0.9.0}/tests/test_tomopy.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: httomo-backends
3
- Version: 0.7.2
3
+ Version: 0.9.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,4 +1,12 @@
1
1
  misc:
2
+ utils:
3
+ data_checker:
4
+ pattern: all
5
+ output_dims_change: False
6
+ implementation: cpu
7
+ memory_gpu: None
8
+ save_result_default: False
9
+ padding: False
2
10
  rescale:
3
11
  rescale_to_int:
4
12
  pattern: all
@@ -1,3 +1,4 @@
1
+ - httomolib.misc.utils
1
2
  - httomolib.misc.rescale
2
3
  - httomolib.misc.morph
3
4
  - httomolib.misc.images
@@ -1,4 +1,14 @@
1
1
  misc:
2
+ utils:
3
+ data_checker:
4
+ pattern: all
5
+ output_dims_change: False
6
+ implementation: gpu_cupy
7
+ save_result_default: False
8
+ padding: False
9
+ memory_gpu:
10
+ multiplier: 1.0
11
+ method: direct
2
12
  corr:
3
13
  median_filter:
4
14
  pattern: all
@@ -68,7 +78,7 @@ misc:
68
78
  method: module
69
79
  prep:
70
80
  normalize:
71
- normalize:
81
+ dark_flat_field_correction:
72
82
  pattern: projection
73
83
  output_dims_change: False
74
84
  implementation: gpu_cupy
@@ -77,8 +87,17 @@ prep:
77
87
  memory_gpu:
78
88
  multiplier: None
79
89
  method: module
90
+ minus_log:
91
+ pattern: all
92
+ output_dims_change: False
93
+ implementation: gpu_cupy
94
+ save_result_default: False
95
+ padding: False
96
+ memory_gpu:
97
+ multiplier: 3.0
98
+ method: direct
80
99
  phase:
81
- paganin_filter_tomopy:
100
+ paganin_filter:
82
101
  pattern: projection
83
102
  output_dims_change: False
84
103
  implementation: gpu_cupy
@@ -87,6 +106,15 @@ prep:
87
106
  memory_gpu:
88
107
  multiplier: None
89
108
  method: module
109
+ paganin_filter_savu_legacy:
110
+ pattern: projection
111
+ output_dims_change: False
112
+ implementation: gpu_cupy
113
+ save_result_default: False
114
+ padding: False
115
+ memory_gpu:
116
+ multiplier: None
117
+ method: module
90
118
  alignment:
91
119
  distortion_correction_proj_discorpy:
92
120
  pattern: projection
@@ -1,3 +1,4 @@
1
+ - httomolibgpu.misc.utils
1
2
  - httomolibgpu.misc.corr
2
3
  - httomolibgpu.misc.denoise
3
4
  - httomolibgpu.misc.morph
@@ -3,11 +3,11 @@ import numpy as np
3
3
 
4
4
 
5
5
  __all__ = [
6
- "_calc_memory_bytes_normalize",
6
+ "_calc_memory_bytes_dark_flat_field_correction",
7
7
  ]
8
8
 
9
9
 
10
- def _calc_memory_bytes_normalize(
10
+ def _calc_memory_bytes_dark_flat_field_correction(
11
11
  non_slice_dims_shape: Tuple[int, int],
12
12
  dtype: np.dtype,
13
13
  **kwargs,
@@ -20,23 +20,30 @@
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
- "_calc_memory_bytes_paganin_filter_tomopy",
29
+ "_calc_memory_bytes_paganin_filter",
30
+ "_calc_memory_bytes_paganin_filter_savu_legacy",
31
31
  ]
32
32
 
33
33
 
34
- def _calc_memory_bytes_paganin_filter_tomopy(
34
+ def _calc_memory_bytes_paganin_filter_savu_legacy(
35
+ non_slice_dims_shape: Tuple[int, int],
36
+ dtype: np.dtype,
37
+ **kwargs,
38
+ ) -> Tuple[int, int]:
39
+ return _calc_memory_bytes_paganin_filter(non_slice_dims_shape, dtype, **kwargs)
40
+
41
+
42
+ def _calc_memory_bytes_paganin_filter(
35
43
  non_slice_dims_shape: Tuple[int, int],
36
44
  dtype: np.dtype,
37
45
  **kwargs,
38
46
  ) -> Tuple[int, int]:
39
- from httomolibgpu.prep.phase import _shift_bit_length
40
47
 
41
48
  # Input (unpadded)
42
49
  unpadded_in_slice_size = np.prod(non_slice_dims_shape) * dtype.itemsize
@@ -44,7 +51,7 @@ def _calc_memory_bytes_paganin_filter_tomopy(
44
51
  # estimate padding size here based on non_slice dimensions
45
52
  pad_tup = []
46
53
  for dim_len in non_slice_dims_shape:
47
- diff = _shift_bit_length(dim_len + 1) - dim_len
54
+ diff = __shift_bit_length(dim_len + 1) - dim_len
48
55
  if dim_len % 2 == 0:
49
56
  pad_width = diff // 2
50
57
  pad_width = (pad_width, pad_width)
@@ -107,3 +114,7 @@ def _calc_memory_bytes_paganin_filter_tomopy(
107
114
  subtract_bytes = int(filter_size + grid_size)
108
115
 
109
116
  return (tot_memory_bytes, subtract_bytes)
117
+
118
+
119
+ def __shift_bit_length(x: int) -> int:
120
+ return 1 << (x - 1).bit_length()
@@ -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:
@@ -208,9 +208,9 @@ def _calc_memory_bytes_LPRec3d_tomobar(
208
208
  _CENTER_SIZE_MIN = 192 # must be divisible by 8
209
209
 
210
210
  n = DetectorsLengthH
211
- if(power_of_2_cropping):
211
+ if power_of_2_cropping:
212
212
  n_pow2 = 2 ** math.ceil(math.log2(n))
213
- if( 0.9 < n / n_pow2 ):
213
+ if 0.9 < n / n_pow2:
214
214
  n = n_pow2
215
215
 
216
216
  odd_horiz = False
@@ -309,10 +309,7 @@ def _calc_memory_bytes_LPRec3d_tomobar(
309
309
  DetectorsLengthH_prepad * DetectorsLengthH_prepad * np.float32().itemsize
310
310
  )
311
311
  ifft2_plan_slice_size = (
312
- cufft_estimate_2d(
313
- nx=2 * n, ny=2 * n, fft_type=CufftType.CUFFT_C2C
314
- )
315
- / 2
312
+ cufft_estimate_2d(nx=2 * n, ny=2 * n, fft_type=CufftType.CUFFT_C2C) / 2
316
313
  )
317
314
  circular_mask_size = np.prod(output_dims) / 2 * np.int64().itemsize * 4
318
315
  after_recon_swapaxis_slice = recon_output_size
@@ -351,38 +348,74 @@ def _calc_memory_bytes_LPRec3d_tomobar(
351
348
  add_to_memory_counters(tmp_p_input_slice, True)
352
349
  if min_mem_usage_filter:
353
350
  add_to_memory_counters(rfft_plan_slice_size / 4 / projection_chunk_count, False)
354
- add_to_memory_counters(irfft_plan_slice_size / 4 / projection_chunk_count, False)
351
+ add_to_memory_counters(
352
+ irfft_plan_slice_size / 4 / projection_chunk_count, False
353
+ )
355
354
  add_to_memory_counters(padded_tmp_p_input_slice / projection_chunk_count, False)
356
355
 
357
356
  add_to_memory_counters(rfft_result_size / projection_chunk_count, False)
358
- add_to_memory_counters(filtered_rfft_result_size / projection_chunk_count, False)
357
+ add_to_memory_counters(
358
+ filtered_rfft_result_size / projection_chunk_count, False
359
+ )
359
360
  add_to_memory_counters(-rfft_result_size / projection_chunk_count, False)
360
- add_to_memory_counters(-padded_tmp_p_input_slice / projection_chunk_count, False)
361
+ add_to_memory_counters(
362
+ -padded_tmp_p_input_slice / projection_chunk_count, False
363
+ )
361
364
 
362
- add_to_memory_counters(irfft_scratch_memory_size / projection_chunk_count, False)
363
- add_to_memory_counters(-irfft_scratch_memory_size / projection_chunk_count, False)
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
+ )
364
371
  add_to_memory_counters(irfft_result_size / projection_chunk_count, False)
365
- add_to_memory_counters(-filtered_rfft_result_size / projection_chunk_count, False)
372
+ add_to_memory_counters(
373
+ -filtered_rfft_result_size / projection_chunk_count, False
374
+ )
366
375
 
367
376
  add_to_memory_counters(-irfft_result_size / projection_chunk_count, False)
368
377
  else:
369
- add_to_memory_counters(rfft_plan_slice_size / chunk_count / projection_chunk_count * 2, True)
370
- add_to_memory_counters(irfft_plan_slice_size / chunk_count / projection_chunk_count * 2, True)
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
+ )
371
384
  # add_to_memory_counters(irfft_scratch_memory_size / chunk_count / projection_chunk_count, True)
372
385
  for _ in range(0, chunk_count):
373
- add_to_memory_counters(padded_tmp_p_input_slice / chunk_count / projection_chunk_count, True)
374
-
375
- add_to_memory_counters(rfft_result_size / chunk_count / projection_chunk_count, True)
376
- add_to_memory_counters(filtered_rfft_result_size / chunk_count / projection_chunk_count, True)
377
- add_to_memory_counters(-rfft_result_size / chunk_count / projection_chunk_count, True)
378
- add_to_memory_counters(-padded_tmp_p_input_slice / chunk_count / projection_chunk_count, True)
379
-
380
- add_to_memory_counters(irfft_scratch_memory_size / chunk_count / projection_chunk_count, True)
381
- add_to_memory_counters(-irfft_scratch_memory_size / chunk_count / projection_chunk_count, True)
382
- add_to_memory_counters(irfft_result_size / chunk_count / projection_chunk_count, True)
383
- add_to_memory_counters(-filtered_rfft_result_size / chunk_count / projection_chunk_count, True)
384
-
385
- add_to_memory_counters(-irfft_result_size / chunk_count / projection_chunk_count, True)
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
+ )
386
419
 
387
420
  add_to_memory_counters(-padded_in_slice_size, True)
388
421
  add_to_memory_counters(-filter_size, False)
@@ -433,7 +466,7 @@ def _calc_memory_bytes_SIRT3d_tomobar(
433
466
  if detector_pad is True:
434
467
  detector_pad = __estimate_detectorHoriz_padding(non_slice_dims_shape[1])
435
468
  elif detector_pad is False:
436
- detector_pad = 0
469
+ detector_pad = 0
437
470
 
438
471
  anglesnum = non_slice_dims_shape[0]
439
472
  DetectorsLengthH_padded = non_slice_dims_shape[1] + 2 * detector_pad
@@ -456,7 +489,7 @@ def _calc_memory_bytes_SIRT3d_tomobar(
456
489
  Res_times_R = Res
457
490
  C_times_res = out_data_size
458
491
 
459
- astra_projection = (in_data_size + out_data_size)
492
+ astra_projection = in_data_size + out_data_size
460
493
 
461
494
  tot_memory_bytes = int(
462
495
  recon_data_size_original
@@ -483,7 +516,7 @@ def _calc_memory_bytes_CGLS3d_tomobar(
483
516
  if detector_pad is True:
484
517
  detector_pad = __estimate_detectorHoriz_padding(non_slice_dims_shape[1])
485
518
  elif detector_pad is False:
486
- detector_pad = 0
519
+ detector_pad = 0
487
520
 
488
521
  anglesnum = non_slice_dims_shape[0]
489
522
  DetectorsLengthH_padded = non_slice_dims_shape[1] + 2 * detector_pad
@@ -535,7 +568,7 @@ def _calc_memory_bytes_FISTA3d_tomobar(
535
568
  if detector_pad is True:
536
569
  detector_pad = __estimate_detectorHoriz_padding(non_slice_dims_shape[1])
537
570
  elif detector_pad is False:
538
- detector_pad = 0
571
+ detector_pad = 0
539
572
 
540
573
  anglesnum = non_slice_dims_shape[0]
541
574
  DetectorsLengthH_padded = non_slice_dims_shape[1] + 2 * detector_pad
@@ -574,5 +607,5 @@ def _calc_memory_bytes_FISTA3d_tomobar(
574
607
  def __estimate_detectorHoriz_padding(detX_size) -> int:
575
608
  det_half = detX_size // 2
576
609
  padded_value_exact = int(np.sqrt(2 * (det_half**2))) - det_half
577
- padded_add_margin = int(0.1 * padded_value_exact)
610
+ padded_add_margin = padded_value_exact // 2
578
611
  return padded_value_exact + padded_add_margin
@@ -1,9 +1,11 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
+ - method: dark_flat_field_correction
4
+ module_path: httomolibgpu.prep.normalize
3
5
  - method: find_center_vo
4
6
  module_path: httomolibgpu.recon.rotation
5
- - method: normalize
6
- module_path: httomolibgpu.prep.normalize
7
+ - method: minus_log
8
+ module_path: httomolibgpu.prep.normalize
7
9
  - method: FBP2d_astra
8
10
  module_path: httomolibgpu.recon.algorithm
9
11
 
@@ -1,13 +1,15 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
- - method: find_center_vo
4
- module_path: httomolibgpu.recon.rotation
5
3
  - method: remove_outlier
6
4
  module_path: httomolibgpu.misc.corr
7
- - method: normalize
5
+ - method: dark_flat_field_correction
8
6
  module_path: httomolibgpu.prep.normalize
7
+ - method: find_center_vo
8
+ module_path: httomolibgpu.recon.rotation
9
9
  - method: remove_all_stripe
10
10
  module_path: httomolibgpu.prep.stripe
11
+ - method: minus_log
12
+ module_path: httomolibgpu.prep.normalize
11
13
  - method: FBP3d_tomobar
12
14
  module_path: httomolibgpu.recon.algorithm
13
15
  - method: total_variation_PD
@@ -1,13 +1,15 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
- - method: find_center_vo
4
- module_path: httomolibgpu.recon.rotation
5
3
  - method: remove_outlier
6
4
  module_path: httomolibgpu.misc.corr
7
- - method: normalize
5
+ - method: dark_flat_field_correction
8
6
  module_path: httomolibgpu.prep.normalize
7
+ - method: find_center_vo
8
+ module_path: httomolibgpu.recon.rotation
9
9
  - method: remove_all_stripe
10
10
  module_path: httomolibgpu.prep.stripe
11
+ - method: minus_log
12
+ module_path: httomolibgpu.prep.normalize
11
13
  - method: FBP3d_tomobar
12
14
  module_path: httomolibgpu.recon.algorithm
13
15
  - method: calculate_stats
@@ -1,12 +1,14 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
- - method: find_center_vo
4
- module_path: httomolibgpu.recon.rotation
5
3
  - method: remove_outlier
6
4
  module_path: httomolibgpu.misc.corr
7
- - method: normalize
5
+ - method: dark_flat_field_correction
8
6
  module_path: httomolibgpu.prep.normalize
7
+ - method: find_center_vo
8
+ module_path: httomolibgpu.recon.rotation
9
9
  - method: remove_stripe_based_sorting
10
10
  module_path: httomolibgpu.prep.stripe
11
+ - method: minus_log
12
+ module_path: httomolibgpu.prep.normalize
11
13
  - method: FBP3d_tomobar
12
14
  module_path: httomolibgpu.recon.algorithm
@@ -1,9 +1,11 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
+ - method: dark_flat_field_correction
4
+ module_path: httomolibgpu.prep.normalize
3
5
  - method: find_center_vo
4
6
  module_path: httomolibgpu.recon.rotation
5
- - method: normalize
6
- module_path: httomolibgpu.prep.normalize
7
+ - method: minus_log
8
+ module_path: httomolibgpu.prep.normalize
7
9
  - method: FISTA3d_tomobar
8
10
  module_path: httomolibgpu.recon.algorithm
9
11
  - method: calculate_stats
@@ -1,13 +1,15 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
- - method: find_center_vo
4
- module_path: httomolibgpu.recon.rotation
5
3
  - method: remove_outlier
6
4
  module_path: httomolibgpu.misc.corr
7
- - method: normalize
5
+ - method: dark_flat_field_correction
8
6
  module_path: httomolibgpu.prep.normalize
7
+ - method: find_center_vo
8
+ module_path: httomolibgpu.recon.rotation
9
9
  - method: remove_all_stripe
10
10
  module_path: httomolibgpu.prep.stripe
11
+ - method: minus_log
12
+ module_path: httomolibgpu.prep.normalize
11
13
  - method: LPRec3d_tomobar
12
14
  module_path: httomolibgpu.recon.algorithm
13
15
  - method: calculate_stats
@@ -1,15 +1,17 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
- - method: find_center_360
4
- module_path: httomolibgpu.recon.rotation
5
- - method: normalize
3
+ - method: dark_flat_field_correction
6
4
  module_path: httomolibgpu.prep.normalize
7
5
  - method: distortion_correction_proj_discorpy
8
6
  module_path: httomolibgpu.prep.alignment
7
+ - method: find_center_360
8
+ module_path: httomolibgpu.recon.rotation
9
9
  - method: sino_360_to_180
10
10
  module_path: httomolibgpu.misc.morph
11
11
  - method: remove_stripe_based_sorting
12
12
  module_path: httomolibgpu.prep.stripe
13
+ - method: minus_log
14
+ module_path: httomolibgpu.prep.normalize
13
15
  - method: FBP3d_tomobar
14
16
  module_path: httomolibgpu.recon.algorithm
15
17
  - method: calculate_stats
@@ -1,14 +1,14 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
+ - method: dark_flat_field_correction
4
+ module_path: httomolibgpu.prep.normalize
3
5
  - method: find_center_360
4
- module_path: httomolibgpu.recon.rotation
5
- - method: normalize
6
- module_path: httomolibgpu.prep.normalize
6
+ module_path: httomolibgpu.recon.rotation
7
7
  - method: sino_360_to_180
8
8
  module_path: httomolibgpu.misc.morph
9
9
  - method: remove_stripe_based_sorting
10
10
  module_path: httomolibgpu.prep.stripe
11
- - method: paganin_filter_tomopy
11
+ - method: paganin_filter
12
12
  module_path: httomolibgpu.prep.phase
13
13
  - method: FBP3d_tomobar
14
14
  module_path: httomolibgpu.recon.algorithm
@@ -1,7 +1,9 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
- - method: normalize
3
+ - method: dark_flat_field_correction
4
4
  module_path: httomolibgpu.prep.normalize
5
+ - method: minus_log
6
+ module_path: httomolibgpu.prep.normalize
5
7
  - method: FBP3d_tomobar
6
8
  module_path: httomolibgpu.recon.algorithm
7
9
  sweep_parameter: center
@@ -1,12 +1,12 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
+ - method: dark_flat_field_correction
4
+ module_path: httomolibgpu.prep.normalize
3
5
  - method: find_center_vo
4
6
  module_path: httomolibgpu.recon.rotation
5
- - method: normalize
6
- module_path: httomolibgpu.prep.normalize
7
- - method: paganin_filter_tomopy
7
+ - method: paganin_filter
8
8
  module_path: httomolibgpu.prep.phase
9
- sweep_parameter: alpha
10
- sweep_values: [0.01, 0.001, 0.0001]
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
@@ -1,11 +1,13 @@
1
1
  - method: standard_tomo
2
2
  module_path: httomo.data.hdf.loaders
3
+ - method: dark_flat_field_correction
4
+ module_path: httomolibgpu.prep.normalize
3
5
  - method: find_center_pc
4
6
  module_path: httomolibgpu.recon.rotation
5
- - method: normalize
6
- module_path: httomolibgpu.prep.normalize
7
7
  - method: remove_stripe_ti
8
8
  module_path: httomolibgpu.prep.stripe
9
+ - method: minus_log
10
+ module_path: httomolibgpu.prep.normalize
9
11
  - method: FBP3d_tomobar
10
12
  module_path: httomolibgpu.recon.algorithm
11
13
  - method: data_resampler
@@ -94,6 +94,7 @@ def yaml_pipelines_generator(
94
94
  with open(path_to_pipelines, "r") as file:
95
95
  try:
96
96
  pipeline_file_content = yaml.load(file)
97
+ # print(f"Loading pipeline: {file.name}") # useful for debugging
97
98
  except OSError as e:
98
99
  print("loading yaml file with methods failed", e)
99
100
 
@@ -138,7 +139,7 @@ def yaml_pipelines_generator(
138
139
 
139
140
  pipeline_full.yaml_set_start_comment(
140
141
  "This pipeline should be supported by the latest developments of HTTomo. Use module load httomo/latest module at Diamond."
141
- )
142
+ )
142
143
 
143
144
  if "loaders" in module_name:
144
145
  # should be the first method in the list
@@ -157,7 +158,7 @@ def yaml_pipelines_generator(
157
158
  pipeline_full += yaml_template_method
158
159
  pipeline_full[i]["parameters"].yaml_add_eol_comment(
159
160
  key="ind",
160
- comment="A vertical slice (sinogram) index to calculate CoR, `mid` can be used for middle",
161
+ comment="A vertical slice (sinogram) index to calculate CoR, 'mid' can be used for middle",
161
162
  )
162
163
  pipeline_full[i]["parameters"].yaml_add_eol_comment(
163
164
  key="cor_initialisation_value",
@@ -169,7 +170,7 @@ def yaml_pipelines_generator(
169
170
  )
170
171
  pipeline_full[i]["parameters"].yaml_add_eol_comment(
171
172
  key="side",
172
- comment="'None' corresponds to fully automated determination, '0' to the left side, '1' to the right side.",
173
+ comment="'None' corresponds to fully automated determination, 'left' to the left side, 'right' to the right side.",
173
174
  )
174
175
  pipeline_full[i]["side_outputs"].yaml_add_eol_comment(
175
176
  key="cor",
@@ -182,7 +183,7 @@ def yaml_pipelines_generator(
182
183
  elif "corr" in module_name and "remove_outlier" in method_name:
183
184
  pipeline_full.yaml_set_comment_before_after_key(
184
185
  i,
185
- "--- Removing unresponsive pixels in the data, aka zingers. Use if sharp streaks are present in the reconstruction. To be applied before normalisation. ---",
186
+ "--- Removing unresponsive/dead pixels in the data, aka zingers. Use if sharp streaks are present in the reconstruction. To be applied before normalisation. ---",
186
187
  indent=0,
187
188
  )
188
189
  pipeline_full += yaml_template_method
@@ -223,21 +224,24 @@ def yaml_pipelines_generator(
223
224
  elif "sino_360_to_180" in method_name:
224
225
  pipeline_full.yaml_set_comment_before_after_key(
225
226
  i,
226
- "--- Using the overlap provided, converting 360 degrees scan to 180 degrees scan. --- ",
227
+ "--- Using the overlap and side provided, converting 360 degrees scan to 180 degrees scan. --- ",
227
228
  indent=0,
228
229
  )
229
230
  pipeline_full += yaml_template_method
230
- elif "normalize" in module_name:
231
+ elif "dark_flat_field_correction" in method_name:
231
232
  pipeline_full.yaml_set_comment_before_after_key(
232
233
  i,
233
- "--- Normalisation of projection data using collected flats/darks images. --- ",
234
+ "--- Flat-field and dark-field projection correction. --- ",
234
235
  indent=0,
235
236
  )
236
237
  pipeline_full += yaml_template_method
237
- pipeline_full[i]["parameters"].yaml_add_eol_comment(
238
- key="minus_log",
239
- comment="If Paganin method is used bellow, set it to false.",
238
+ elif "minus_log" in method_name:
239
+ pipeline_full.yaml_set_comment_before_after_key(
240
+ i,
241
+ "--- Negative log is required for reconstruction to convert raw intensity measurements into the line integrals of attenuation. --- ",
242
+ indent=0,
240
243
  )
244
+ pipeline_full += yaml_template_method
241
245
  elif "phase" in module_name:
242
246
  pipeline_full.yaml_set_comment_before_after_key(
243
247
  i,
@@ -246,8 +250,20 @@ def yaml_pipelines_generator(
246
250
  )
247
251
  pipeline_full += yaml_template_method
248
252
  pipeline_full[i]["parameters"].yaml_add_eol_comment(
249
- key="alpha",
250
- comment="Controls the balance between the strength of the filter and the amount of noise reduction. Smaller values lead to less noise and more blur.",
253
+ key="ratio_delta_beta",
254
+ comment="The ratio of delta/beta for filter strength control. Larger values lead to more smoothing.",
255
+ )
256
+ pipeline_full[i]["parameters"].yaml_add_eol_comment(
257
+ key="pixel_size",
258
+ comment="Detector pixel size (resolution) in MICRON units.",
259
+ )
260
+ pipeline_full[i]["parameters"].yaml_add_eol_comment(
261
+ key="distance",
262
+ comment="Propagation distance of the wavefront from sample to detector in METRE units.",
263
+ )
264
+ pipeline_full[i]["parameters"].yaml_add_eol_comment(
265
+ key="energy",
266
+ comment="Beam energy in keV.",
251
267
  )
252
268
  elif "stripe" in module_name:
253
269
  pipeline_full.yaml_set_comment_before_after_key(
@@ -269,11 +285,11 @@ def yaml_pipelines_generator(
269
285
  )
270
286
  pipeline_full[i]["parameters"].yaml_add_eol_comment(
271
287
  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",
288
+ comment="Horizontal detector padding to minimise circle/arc-type artifacts in the reconstruction. Set to 'true' to enable automatic padding or an integer",
273
289
  )
274
290
  pipeline_full[i]["parameters"].yaml_add_eol_comment(
275
291
  key="recon_mask_radius",
276
- comment="Zero pixels outside the mask-circle radius.",
292
+ comment="Zero pixels outside the mask-circle radius. Make radius equal to 2.0 to remove the mask effect.",
277
293
  )
278
294
  pipeline_full[i]["parameters"].yaml_add_eol_comment(
279
295
  key="neglog",
@@ -284,7 +300,7 @@ def yaml_pipelines_generator(
284
300
  pipeline_full[i]["parameters"]["algorithm"] = "gridrec"
285
301
  pipeline_full[i]["parameters"].yaml_add_eol_comment(
286
302
  key="algorithm",
287
- comment="Select the required algorithm, e.g. `gridrec`",
303
+ comment="Select the required algorithm, e.g. 'gridrec'",
288
304
  )
289
305
  elif "denoise" in module_name:
290
306
  pipeline_full.yaml_set_comment_before_after_key(
@@ -221,6 +221,10 @@ def _get_discard_keys() -> List[str]:
221
221
  "step_xy",
222
222
  "jpeg_quality",
223
223
  "watermark_vals",
224
+ "power_of_2_oversampling",
225
+ "power_of_2_cropping",
226
+ "min_mem_usage_filter",
227
+ "min_mem_usage_ifft2",
224
228
  ]
225
229
  return discard_keys
226
230