httomo-backends 0.6__tar.gz → 0.6.2__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.
- {httomo_backends-0.6 → httomo_backends-0.6.2}/PKG-INFO +1 -1
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu.yaml +3 -12
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/phase.py +0 -60
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/algorithm.py +1 -0
- httomo_backends-0.6.2/httomo_backends/pipelines_full/sweep_paganin_FBP3d_tomobar_directive.yaml +12 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/scripts/yaml_pipelines_generator.py +59 -12
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends.egg-info/PKG-INFO +1 -1
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends.egg-info/SOURCES.txt +1 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/pyproject.toml +1 -1
- {httomo_backends-0.6 → httomo_backends-0.6.2}/tests/test_httomolibgpu.py +5 -54
- {httomo_backends-0.6 → httomo_backends-0.6.2}/LICENSE +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/README.rst +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/cufft.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolib/httomolib.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolib/httomolib_modules.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/httomolibgpu_modules.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/corr.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/denoise.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/morph.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/misc/rescale.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/normalize.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/prep/stripe.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/httomolibgpu/supporting_funcs/recon/peak_memory_line_profile_hook.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/misc/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/misc/corr.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/prep/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/prep/stripe.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/recon/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/supporting_funcs/recon/algorithm.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/tomopy.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/backends/tomopy/tomopy_modules.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/httomo.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/query.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/FBP2d_astra_directive.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/FBP3d_tomobar_denoising_directive.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/FBP3d_tomobar_directive.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/FBP3d_tomobar_noimagesaving_directive.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/LPRec3d_tomobar_directive.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/deg360_distortion_FBP3d_tomobar_directive.yaml +2 -2
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/deg360_paganin_FBP3d_tomobar_directive.yaml +2 -2
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/sweep_center_FBP3d_tomobar_directive.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/pipelines_full/tomopy_gridrec_directive.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/scripts/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/scripts/json_pipelines_generator.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/scripts/yaml_templates_generator.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/scripts/yaml_unsupported_tomopy_remove.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomo/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomo/httomo.data.hdf.loaders/standard_tomo.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomo/httomo.methods/calculate_stats.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomo/httomo.methods/save_intermediate_data.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolib/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolib/httomolib.misc.images/save_to_images.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolib/httomolib.misc.morph/data_reducer.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolib/httomolib.misc.rescale/rescale_to_int.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolib/httomolib.misc.segm/binary_thresholding.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolib/httomolib.prep.phase/paganin_filter.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.corr/median_filter.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.corr/remove_outlier.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.denoise/total_variation_PD.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.denoise/total_variation_ROF.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.morph/data_resampler.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.morph/sino_360_to_180.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.misc.rescale/rescale_to_int.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.alignment/distortion_correction_proj_discorpy.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.normalize/normalize.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/paganin_filter_savu.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.phase/paganin_filter_tomopy.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/raven_filter.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_all_stripe.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_stripe_based_sorting.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.prep.stripe/remove_stripe_ti.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/CGLS3d_tomobar.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FBP2d_astra.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/FBP3d_tomobar.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/LPRec3d_tomobar.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.algorithm/SIRT3d_tomobar.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.rotation/find_center_360.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.rotation/find_center_pc.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolibgpu/httomolibgpu.recon.rotation/find_center_vo.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/__init__.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/adjust_range.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/circ_mask.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/gaussian_filter.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/median_filter.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/median_filter3d.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/median_filter_nonfinite.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_nan.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_neg.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_outlier.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_outlier1d.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_outlier3d.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/remove_ring.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.corr/sobel_filter.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/downsample.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/pad.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/sino_360_to_180.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/trim_sinogram.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.misc.morph/upsample.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/add_jitter.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/add_noise.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/align_joint.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/align_seq.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/blur_edges.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/distortion_correction_proj.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/distortion_correction_sino.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/scale.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.alignment/shift_images.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/minus_log.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/normalize.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/normalize_bg.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/normalize_nf.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.normalize/normalize_roi.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.phase/retrieve_phase.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_all_stripe.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_dead_stripe.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_large_stripe.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_based_filtering.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_based_fitting.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_based_interpolation.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_based_sorting.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_fw.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_sf.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/remove_stripe_ti.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/stripes_detect3d.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.prep.stripe/stripes_mask3d.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.recon.algorithm/recon.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.recon.rotation/find_center.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.recon.rotation/find_center_pc.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.recon.rotation/find_center_vo.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_drift.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_focal_spot_blur.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_gaussian.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_poisson.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_rings.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_salt_pepper.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/add_zingers.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project2.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/tomopy.sim.project/project3.yaml +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends.egg-info/dependency_links.txt +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends.egg-info/requires.txt +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends.egg-info/top_level.txt +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/setup.cfg +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/tests/test_method_query.py +0 -0
- {httomo_backends-0.6 → httomo_backends-0.6.2}/tests/test_tomopy.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: httomo-backends
|
|
3
|
-
Version: 0.6
|
|
3
|
+
Version: 0.6.2
|
|
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
|
|
@@ -7,7 +7,7 @@ misc:
|
|
|
7
7
|
save_result_default: False
|
|
8
8
|
padding: True
|
|
9
9
|
memory_gpu:
|
|
10
|
-
multiplier: 2.
|
|
10
|
+
multiplier: 2.5
|
|
11
11
|
method: direct
|
|
12
12
|
remove_outlier:
|
|
13
13
|
pattern: all
|
|
@@ -16,7 +16,7 @@ misc:
|
|
|
16
16
|
save_result_default: False
|
|
17
17
|
padding: True
|
|
18
18
|
memory_gpu:
|
|
19
|
-
multiplier: 2.
|
|
19
|
+
multiplier: 2.5
|
|
20
20
|
method: direct
|
|
21
21
|
denoise:
|
|
22
22
|
total_variation_ROF:
|
|
@@ -87,15 +87,6 @@ prep:
|
|
|
87
87
|
memory_gpu:
|
|
88
88
|
multiplier: None
|
|
89
89
|
method: module
|
|
90
|
-
paganin_filter_savu:
|
|
91
|
-
pattern: projection
|
|
92
|
-
output_dims_change: False
|
|
93
|
-
implementation: gpu_cupy
|
|
94
|
-
save_result_default: False
|
|
95
|
-
padding: False
|
|
96
|
-
memory_gpu:
|
|
97
|
-
multiplier: None
|
|
98
|
-
method: module
|
|
99
90
|
alignment:
|
|
100
91
|
distortion_correction_proj_discorpy:
|
|
101
92
|
pattern: projection
|
|
@@ -207,7 +198,7 @@ recon:
|
|
|
207
198
|
save_result_default: False
|
|
208
199
|
padding: False
|
|
209
200
|
memory_gpu:
|
|
210
|
-
multiplier:
|
|
201
|
+
multiplier: 2
|
|
211
202
|
method: direct
|
|
212
203
|
find_center_pc:
|
|
213
204
|
pattern: projection
|
|
@@ -27,70 +27,10 @@ import numpy as np
|
|
|
27
27
|
from httomo_backends.cufft import CufftType, cufft_estimate_2d
|
|
28
28
|
|
|
29
29
|
__all__ = [
|
|
30
|
-
"_calc_memory_bytes_paganin_filter_savu",
|
|
31
30
|
"_calc_memory_bytes_paganin_filter_tomopy",
|
|
32
31
|
]
|
|
33
32
|
|
|
34
33
|
|
|
35
|
-
def _calc_memory_bytes_paganin_filter_savu(
|
|
36
|
-
non_slice_dims_shape: Tuple[int, int],
|
|
37
|
-
dtype: np.dtype,
|
|
38
|
-
**kwargs,
|
|
39
|
-
) -> Tuple[int, int]:
|
|
40
|
-
pad_x = kwargs["pad_x"]
|
|
41
|
-
pad_y = kwargs["pad_y"]
|
|
42
|
-
|
|
43
|
-
# Input (unpadded)
|
|
44
|
-
unpadded_in_slice_size = np.prod(non_slice_dims_shape) * dtype.itemsize
|
|
45
|
-
|
|
46
|
-
# Padded input
|
|
47
|
-
padded_non_slice_dims_shape = (
|
|
48
|
-
non_slice_dims_shape[0] + 2 * pad_y,
|
|
49
|
-
non_slice_dims_shape[1] + 2 * pad_x,
|
|
50
|
-
)
|
|
51
|
-
padded_in_slice_size = (
|
|
52
|
-
padded_non_slice_dims_shape[0] * padded_non_slice_dims_shape[1] * dtype.itemsize
|
|
53
|
-
)
|
|
54
|
-
|
|
55
|
-
# Padded input cast to `complex64`
|
|
56
|
-
complex_slice = padded_in_slice_size / dtype.itemsize * np.complex64().nbytes
|
|
57
|
-
|
|
58
|
-
# Plan size for 2D FFT
|
|
59
|
-
fftplan_slice_size = cufft_estimate_2d(
|
|
60
|
-
nx=padded_non_slice_dims_shape[1],
|
|
61
|
-
ny=padded_non_slice_dims_shape[0],
|
|
62
|
-
fft_type=CufftType.CUFFT_C2C,
|
|
63
|
-
)
|
|
64
|
-
|
|
65
|
-
# Shape of 2D filter is the same as the padded `complex64` slice shape, so the size will be
|
|
66
|
-
# the same
|
|
67
|
-
filter_size = complex_slice
|
|
68
|
-
|
|
69
|
-
# Size of cropped/unpadded + cast to float32 result of 2D IFFT
|
|
70
|
-
cropped_float32_res_slice = np.prod(non_slice_dims_shape) * np.float32().nbytes
|
|
71
|
-
|
|
72
|
-
# If the FFT plan size is negligible for some reason, this changes where the peak GPU
|
|
73
|
-
# memory usage occurs. Hence, the if/else branching below for calculating the total bytes.
|
|
74
|
-
NEGLIGIBLE_FFT_PLAN_SIZE = 16
|
|
75
|
-
if fftplan_slice_size < NEGLIGIBLE_FFT_PLAN_SIZE:
|
|
76
|
-
tot_memory_bytes = int(
|
|
77
|
-
unpadded_in_slice_size + padded_in_slice_size + complex_slice
|
|
78
|
-
)
|
|
79
|
-
else:
|
|
80
|
-
tot_memory_bytes = int(
|
|
81
|
-
unpadded_in_slice_size
|
|
82
|
-
+ padded_in_slice_size
|
|
83
|
-
+ complex_slice
|
|
84
|
-
# The padded float32 array is deallocated when a copy is made when casting to complex64
|
|
85
|
-
# and the variable `padded_tomo` is reassigned to the complex64 version
|
|
86
|
-
- padded_in_slice_size
|
|
87
|
-
+ fftplan_slice_size
|
|
88
|
-
+ cropped_float32_res_slice
|
|
89
|
-
)
|
|
90
|
-
|
|
91
|
-
return (tot_memory_bytes, filter_size)
|
|
92
|
-
|
|
93
|
-
|
|
94
34
|
def _calc_memory_bytes_paganin_filter_tomopy(
|
|
95
35
|
non_slice_dims_shape: Tuple[int, int],
|
|
96
36
|
dtype: np.dtype,
|
httomo_backends-0.6.2/httomo_backends/pipelines_full/sweep_paganin_FBP3d_tomobar_directive.yaml
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
- method: standard_tomo
|
|
2
|
+
module_path: httomo.data.hdf.loaders
|
|
3
|
+
- method: find_center_vo
|
|
4
|
+
module_path: httomolibgpu.recon.rotation
|
|
5
|
+
- method: normalize
|
|
6
|
+
module_path: httomolibgpu.prep.normalize
|
|
7
|
+
- method: paganin_filter_tomopy
|
|
8
|
+
module_path: httomolibgpu.prep.phase
|
|
9
|
+
sweep_parameter: alpha
|
|
10
|
+
sweep_values: [0.01, 0.001, 0.0001]
|
|
11
|
+
- method: FBP3d_tomobar
|
|
12
|
+
module_path: httomolibgpu.recon.algorithm
|
{httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/scripts/yaml_pipelines_generator.py
RENAMED
|
@@ -31,8 +31,13 @@ import ruamel.yaml
|
|
|
31
31
|
import httomo_backends
|
|
32
32
|
import yaml
|
|
33
33
|
|
|
34
|
-
|
|
34
|
+
try:
|
|
35
|
+
from httomo import __version__ as httomo_version
|
|
36
|
+
except:
|
|
37
|
+
httomo_version = "2.5" # temporary version fix for sphinx build
|
|
38
|
+
pass
|
|
35
39
|
|
|
40
|
+
CS = ruamel.yaml.comments.CommentedSeq # defaults to block style
|
|
36
41
|
|
|
37
42
|
class SweepRange:
|
|
38
43
|
"""SweepRange class."""
|
|
@@ -55,6 +60,20 @@ def __sweeprange_representer(
|
|
|
55
60
|
)
|
|
56
61
|
|
|
57
62
|
|
|
63
|
+
class SweepManual:
|
|
64
|
+
"""SweepManual class."""
|
|
65
|
+
|
|
66
|
+
def __init__(self, lst):
|
|
67
|
+
self._lst = lst
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
def __sweepmanual_representer(
|
|
71
|
+
dumper: yaml.SafeDumper, swp: SweepManual
|
|
72
|
+
) -> yaml.nodes.SequenceNode:
|
|
73
|
+
"""Represent a sweepmanual as a YAML sequence node."""
|
|
74
|
+
return dumper.represent_sequence("!Sweep", swp._lst)
|
|
75
|
+
|
|
76
|
+
|
|
58
77
|
def __represent_none(self, data):
|
|
59
78
|
return self.represent_scalar("tag:yaml.org,2002:null", "null")
|
|
60
79
|
|
|
@@ -86,17 +105,22 @@ def yaml_pipelines_generator(
|
|
|
86
105
|
# a loop over methods in the high-level pipeline file (directive)
|
|
87
106
|
methods_no = len(pipeline_file_content)
|
|
88
107
|
pipeline_full = CS()
|
|
89
|
-
|
|
108
|
+
sweep_enabled_range = False
|
|
109
|
+
sweep_enabled_value = False
|
|
90
110
|
for i in range(methods_no):
|
|
91
111
|
method_content = pipeline_file_content[i]
|
|
92
112
|
method_name = method_content["method"]
|
|
93
113
|
module_name = method_content["module_path"]
|
|
94
114
|
if "sweep_parameter" in method_content:
|
|
95
115
|
sweep_parameter = method_content["sweep_parameter"]
|
|
96
|
-
sweep_start
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
116
|
+
if "sweep_start" in method_content:
|
|
117
|
+
sweep_start = method_content["sweep_start"]
|
|
118
|
+
sweep_stop = method_content["sweep_stop"]
|
|
119
|
+
sweep_step = method_content["sweep_step"]
|
|
120
|
+
sweep_enabled_range = True
|
|
121
|
+
else:
|
|
122
|
+
sweep_values = method_content["sweep_values"]
|
|
123
|
+
sweep_enabled_value = True
|
|
100
124
|
|
|
101
125
|
# get the corresponding yaml template from httomo-backends
|
|
102
126
|
backend_name = module_name[0 : module_name.find(".")]
|
|
@@ -116,6 +140,13 @@ def yaml_pipelines_generator(
|
|
|
116
140
|
except OSError as e:
|
|
117
141
|
print("loading yaml template failed", e)
|
|
118
142
|
|
|
143
|
+
version_split = httomo_version.split(".")
|
|
144
|
+
major = version_split[0]
|
|
145
|
+
minor = version_split[1]
|
|
146
|
+
pipeline_full.yaml_set_start_comment(
|
|
147
|
+
f"This pipeline is supported by HTTomo ver. {major}.{minor}"
|
|
148
|
+
)
|
|
149
|
+
|
|
119
150
|
if "loaders" in module_name:
|
|
120
151
|
# should be the first method in the list
|
|
121
152
|
pipeline_full.yaml_set_comment_before_after_key(
|
|
@@ -149,7 +180,7 @@ def yaml_pipelines_generator(
|
|
|
149
180
|
)
|
|
150
181
|
pipeline_full[i]["side_outputs"].yaml_add_eol_comment(
|
|
151
182
|
key="cor",
|
|
152
|
-
comment="
|
|
183
|
+
comment="An estimated CoR value provided as a side output",
|
|
153
184
|
)
|
|
154
185
|
pipeline_full[i]["side_outputs"].yaml_add_eol_comment(
|
|
155
186
|
key="overlap",
|
|
@@ -158,17 +189,22 @@ def yaml_pipelines_generator(
|
|
|
158
189
|
elif "corr" in module_name and "remove_outlier" in method_name:
|
|
159
190
|
pipeline_full.yaml_set_comment_before_after_key(
|
|
160
191
|
i,
|
|
161
|
-
"--- Removing
|
|
192
|
+
"--- Removing unresponsive pixels in the data, aka zingers. Use if sharp streaks are present in the reconstruction. To be applied before normalisation. ---",
|
|
162
193
|
indent=0,
|
|
163
194
|
)
|
|
164
195
|
pipeline_full += yaml_template_method
|
|
165
196
|
if pipeline_full[i]["parameters"]["dif"] == "REQUIRED":
|
|
166
197
|
# fix for the absent parameter in TomoPy's algorithm
|
|
167
198
|
pipeline_full[i]["parameters"]["dif"] = 0.1
|
|
199
|
+
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
200
|
+
key="kernel_size",
|
|
201
|
+
comment="The size of the 3D neighbourhood surrounding the voxel. Odd integer.",
|
|
202
|
+
)
|
|
168
203
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
169
204
|
key="dif",
|
|
170
|
-
comment="A difference between the outlier value and the median value of
|
|
205
|
+
comment="A difference between the outlier value and the median value of neighbouring pixels.",
|
|
171
206
|
)
|
|
207
|
+
|
|
172
208
|
elif "distortion" in method_name:
|
|
173
209
|
pipeline_full.yaml_set_comment_before_after_key(
|
|
174
210
|
i,
|
|
@@ -225,7 +261,11 @@ def yaml_pipelines_generator(
|
|
|
225
261
|
pipeline_full += yaml_template_method
|
|
226
262
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
227
263
|
key="center",
|
|
228
|
-
comment="Reference to center of rotation side output OR
|
|
264
|
+
comment="Reference to center of rotation side output above OR a float number.",
|
|
265
|
+
)
|
|
266
|
+
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
267
|
+
key="detector_pad",
|
|
268
|
+
comment="Horizontal detector padding to minimise circle/arc-type artifacts in the reconstruction",
|
|
229
269
|
)
|
|
230
270
|
pipeline_full[i]["parameters"].yaml_add_eol_comment(
|
|
231
271
|
key="recon_mask_radius",
|
|
@@ -282,13 +322,20 @@ def yaml_pipelines_generator(
|
|
|
282
322
|
)
|
|
283
323
|
pipeline_full += yaml_template_method
|
|
284
324
|
|
|
285
|
-
if
|
|
325
|
+
if sweep_enabled_range:
|
|
286
326
|
pipeline_full[i]["parameters"][sweep_parameter] = SweepRange(
|
|
287
327
|
start=sweep_start, stop=sweep_stop, step=sweep_step
|
|
288
328
|
)
|
|
329
|
+
yaml.representer.add_representer(SweepRange, __sweeprange_representer)
|
|
330
|
+
sweep_enabled_range = False
|
|
331
|
+
if sweep_enabled_value:
|
|
332
|
+
pipeline_full[i]["parameters"][sweep_parameter] = SweepManual(
|
|
333
|
+
list(sweep_values)
|
|
334
|
+
)
|
|
335
|
+
yaml.representer.add_representer(SweepManual, __sweepmanual_representer)
|
|
336
|
+
sweep_enabled_value = False
|
|
289
337
|
|
|
290
338
|
yaml.representer.add_representer(type(None), __represent_none)
|
|
291
|
-
yaml.representer.add_representer(SweepRange, __sweeprange_representer)
|
|
292
339
|
yaml.dump(pipeline_full, f)
|
|
293
340
|
|
|
294
341
|
return 0
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: httomo-backends
|
|
3
|
-
Version: 0.6
|
|
3
|
+
Version: 0.6.2
|
|
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
|
|
@@ -49,6 +49,7 @@ httomo_backends/pipelines_full/__init__.py
|
|
|
49
49
|
httomo_backends/pipelines_full/deg360_distortion_FBP3d_tomobar_directive.yaml
|
|
50
50
|
httomo_backends/pipelines_full/deg360_paganin_FBP3d_tomobar_directive.yaml
|
|
51
51
|
httomo_backends/pipelines_full/sweep_center_FBP3d_tomobar_directive.yaml
|
|
52
|
+
httomo_backends/pipelines_full/sweep_paganin_FBP3d_tomobar_directive.yaml
|
|
52
53
|
httomo_backends/pipelines_full/tomopy_gridrec_directive.yaml
|
|
53
54
|
httomo_backends/scripts/__init__.py
|
|
54
55
|
httomo_backends/scripts/json_pipelines_generator.py
|
|
@@ -15,7 +15,7 @@ from httomo_backends.methods_database.query import MethodsDatabaseQuery
|
|
|
15
15
|
|
|
16
16
|
from httomolibgpu.misc.morph import data_resampler, sino_360_to_180
|
|
17
17
|
from httomolibgpu.prep.normalize import normalize
|
|
18
|
-
from httomolibgpu.prep.phase import paganin_filter_tomopy
|
|
18
|
+
from httomolibgpu.prep.phase import paganin_filter_tomopy
|
|
19
19
|
from httomolibgpu.prep.alignment import distortion_correction_proj_discorpy
|
|
20
20
|
from httomolibgpu.prep.stripe import (
|
|
21
21
|
remove_stripe_based_sorting,
|
|
@@ -113,13 +113,11 @@ def test_normalize_memoryhook(flats, darks, ensure_clean_memory, dtype, slices):
|
|
|
113
113
|
|
|
114
114
|
|
|
115
115
|
@pytest.mark.parametrize("dtype", ["uint16"])
|
|
116
|
-
@pytest.mark.parametrize("slices", [
|
|
116
|
+
@pytest.mark.parametrize("slices", [10, 20])
|
|
117
117
|
@pytest.mark.cupy
|
|
118
118
|
def test_remove_outlier_memoryhook(flats, ensure_clean_memory, dtype, slices):
|
|
119
119
|
hook = MaxMemoryHook()
|
|
120
|
-
data = cp.random.random_sample(
|
|
121
|
-
(slices, flats.shape[1], flats.shape[2]), dtype=np.float32
|
|
122
|
-
)
|
|
120
|
+
data = cp.random.random_sample((slices, 2560, 2560), dtype=np.float32)
|
|
123
121
|
if dtype == "uint16":
|
|
124
122
|
data = data.astype(np.uint16)
|
|
125
123
|
with hook:
|
|
@@ -148,7 +146,7 @@ def test_remove_outlier_memoryhook(flats, ensure_clean_memory, dtype, slices):
|
|
|
148
146
|
# the estimated_memory_mb should be LARGER or EQUAL to max_mem_mb
|
|
149
147
|
# the resulting percent value should not deviate from max_mem on more than 20%
|
|
150
148
|
assert estimated_memory_mb >= max_mem_mb
|
|
151
|
-
assert percents_relative_maxmem <=
|
|
149
|
+
assert percents_relative_maxmem <= 25
|
|
152
150
|
|
|
153
151
|
|
|
154
152
|
@pytest.mark.parametrize("slices", [3, 10, 20])
|
|
@@ -257,48 +255,6 @@ def test_paganin_filter_tomopy_memoryhook(slices, dim_x, dim_y, ensure_clean_mem
|
|
|
257
255
|
assert percents_relative_maxmem <= 20
|
|
258
256
|
|
|
259
257
|
|
|
260
|
-
@pytest.mark.cupy
|
|
261
|
-
@pytest.mark.parametrize("slices", [64, 128])
|
|
262
|
-
@pytest.mark.parametrize("dim_x", [81, 260, 320])
|
|
263
|
-
@pytest.mark.parametrize("dim_y", [340, 135, 96])
|
|
264
|
-
def test_paganin_filter_savu_memoryhook(slices, dim_x, dim_y, ensure_clean_memory):
|
|
265
|
-
data = cp.random.random_sample((slices, dim_x, dim_y), dtype=np.float32)
|
|
266
|
-
kwargs = {}
|
|
267
|
-
kwargs["ratio"] = 250.0
|
|
268
|
-
kwargs["energy"] = 53.0
|
|
269
|
-
kwargs["distance"] = 1.0
|
|
270
|
-
kwargs["resolution"] = 1.28
|
|
271
|
-
kwargs["pad_x"] = 20
|
|
272
|
-
kwargs["pad_y"] = 20
|
|
273
|
-
kwargs["pad_method"] = "edge"
|
|
274
|
-
kwargs["increment"] = 0.0
|
|
275
|
-
hook = MaxMemoryHook()
|
|
276
|
-
with hook:
|
|
277
|
-
data_filtered = paganin_filter_savu(data, **kwargs).get()
|
|
278
|
-
|
|
279
|
-
# The amount of bytes used by the method's processing according to the memory hook, plus
|
|
280
|
-
# the amount of bytes needed to hold the method's input in GPU memory
|
|
281
|
-
max_mem = hook.max_mem + data.nbytes
|
|
282
|
-
|
|
283
|
-
# now we estimate how much of the total memory required for this data
|
|
284
|
-
(estimated_memory_bytes, subtract_bytes) = _calc_memory_bytes_paganin_filter_savu(
|
|
285
|
-
(dim_x, dim_y), np.float32(), **kwargs
|
|
286
|
-
)
|
|
287
|
-
estimated_memory_mb = round(slices * estimated_memory_bytes / (1024**2), 2)
|
|
288
|
-
max_mem -= subtract_bytes
|
|
289
|
-
max_mem_mb = round(max_mem / (1024**2), 2)
|
|
290
|
-
|
|
291
|
-
# now we compare both memory estimations
|
|
292
|
-
#
|
|
293
|
-
# make sure estimator function is within range (80% min, 100% max)
|
|
294
|
-
difference_mb = abs(estimated_memory_mb - max_mem_mb)
|
|
295
|
-
percents_relative_maxmem = round((difference_mb / max_mem_mb) * 100)
|
|
296
|
-
# the estimated_memory_mb should be LARGER or EQUAL to max_mem_mb
|
|
297
|
-
# the resulting percent value should not deviate from max_mem on more than 20%
|
|
298
|
-
assert estimated_memory_mb >= max_mem_mb
|
|
299
|
-
assert percents_relative_maxmem <= 20
|
|
300
|
-
|
|
301
|
-
|
|
302
258
|
@pytest.mark.cupy
|
|
303
259
|
@pytest.mark.parametrize("slices", [128, 190, 256])
|
|
304
260
|
def test_distortion_correction_memoryhook(
|
|
@@ -719,12 +675,7 @@ def __test_recon_LPRec3d_tomobar_memoryhook_common(
|
|
|
719
675
|
# the estimated_memory_mb should be LARGER or EQUAL to max_mem_mb
|
|
720
676
|
# the resulting percent value should not deviate from max_mem on more than 20%
|
|
721
677
|
assert estimated_memory_mb >= max_mem_mb
|
|
722
|
-
|
|
723
|
-
assert percents_relative_maxmem <= 75
|
|
724
|
-
elif slices <= 5:
|
|
725
|
-
assert percents_relative_maxmem <= 63
|
|
726
|
-
else:
|
|
727
|
-
assert percents_relative_maxmem <= 50
|
|
678
|
+
assert percents_relative_maxmem <= 80
|
|
728
679
|
|
|
729
680
|
|
|
730
681
|
@pytest.mark.cupy
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/methods_database/packages/httomo.yaml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
- method: standard_tomo
|
|
2
2
|
module_path: httomo.data.hdf.loaders
|
|
3
|
+
- method: find_center_360
|
|
4
|
+
module_path: httomolibgpu.recon.rotation
|
|
3
5
|
- method: normalize
|
|
4
6
|
module_path: httomolibgpu.prep.normalize
|
|
5
7
|
- method: distortion_correction_proj_discorpy
|
|
6
8
|
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
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
- method: standard_tomo
|
|
2
2
|
module_path: httomo.data.hdf.loaders
|
|
3
|
-
- method: normalize
|
|
4
|
-
module_path: httomolibgpu.prep.normalize
|
|
5
3
|
- method: find_center_360
|
|
6
4
|
module_path: httomolibgpu.recon.rotation
|
|
5
|
+
- method: normalize
|
|
6
|
+
module_path: httomolibgpu.prep.normalize
|
|
7
7
|
- method: sino_360_to_180
|
|
8
8
|
module_path: httomolibgpu.misc.morph
|
|
9
9
|
- method: remove_stripe_based_sorting
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/scripts/json_pipelines_generator.py
RENAMED
|
File without changes
|
{httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/scripts/yaml_templates_generator.py
RENAMED
|
File without changes
|
|
File without changes
|
{httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomo/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/httomolib/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{httomo_backends-0.6 → httomo_backends-0.6.2}/httomo_backends/yaml_templates/tomopy/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|