nabu 2024.1.0rc3__py3-none-any.whl → 2024.1.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/conf.py +137 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +38 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +34 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +17 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap.py +88 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +69 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +272 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +626 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +94 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +144 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +153 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +358 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +449 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +143 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +261 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +197 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +90 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +125 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +151 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +120 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +116 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +181 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +162 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +85 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +33 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +110 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/convolution.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +97 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +331 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +12 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +578 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +1621 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +183 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +112 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +362 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_alignment.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +472 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +105 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +41 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +214 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +193 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +39 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +2 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +371 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +305 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +628 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +114 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_cast_volume.py +339 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +178 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +187 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +99 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +263 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +892 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/binning.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +24 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +152 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +83 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +48 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +117 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/fft.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +135 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +35 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +62 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/utils.py +292 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config.py +265 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +589 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +164 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +211 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +20 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +1012 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +149 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +849 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +152 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +260 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +590 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +825 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +851 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/dataset_validator.py +19 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +147 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +246 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +575 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +1670 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +119 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +598 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +42 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +175 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +62 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +483 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_accumulator.py +157 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +355 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +61 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +51 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +101 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +210 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +149 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +116 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +193 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/__init__.py +7 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +11 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +161 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +169 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +361 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +142 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +92 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +212 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +68 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +448 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +144 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +79 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +425 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +143 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +95 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +102 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +59 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +250 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +86 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +626 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +67 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +73 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/convolution_cuda.py +375 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +256 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +54 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +134 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +286 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +126 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +159 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +29 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +68 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +71 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +77 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +123 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +64 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +66 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fft.py +268 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +71 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +55 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +77 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +54 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +247 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +83 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +72 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +106 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +126 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +79 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +53 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +3 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +241 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +124 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +391 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +220 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +111 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +240 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +44 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +248 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +322 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +467 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +250 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +40 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +308 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +220 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +252 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +133 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +100 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +164 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +93 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +85 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/cor.py +5 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +469 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +169 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +130 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +217 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/templates/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_nxflatfield.py +104 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +47 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/alignment.py +184 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +1286 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +155 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +373 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +60 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +204 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_alignment.py +99 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +226 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +180 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +49 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +146 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +21 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +1183 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +563 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +2279 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/tests.py +51 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +375 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +276 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +108 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +586 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +239 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +162 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/utils.py +836 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/conf.py +137 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +38 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +34 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +17 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap.py +88 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +69 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +272 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +626 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +94 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +144 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +153 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +358 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +449 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +143 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +261 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +197 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +90 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +125 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +151 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +120 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +116 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +181 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +162 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +85 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +33 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +110 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/convolution.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +97 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +331 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +12 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +578 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +1621 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +183 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +112 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +362 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_alignment.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +472 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +105 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +41 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +214 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +193 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +39 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +2 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +371 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +305 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +628 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +114 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_cast_volume.py +339 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +178 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +187 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +99 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +263 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +892 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/binning.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +24 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +152 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +83 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +48 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +117 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/fft.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +135 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +35 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +62 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/utils.py +292 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config.py +265 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +589 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +164 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +211 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +20 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +1012 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +149 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +849 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +152 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +260 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +590 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +825 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +851 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/dataset_validator.py +19 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +147 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +246 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +575 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +1670 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +119 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +598 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +42 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +175 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +62 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +483 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_accumulator.py +157 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +355 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +61 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +51 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +101 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +210 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +149 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +116 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +193 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/__init__.py +7 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +11 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +161 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +169 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +361 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +142 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +92 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +212 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +68 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +448 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +144 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +79 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +425 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +143 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +95 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +102 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +59 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +250 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +86 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +626 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +67 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +73 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/convolution_cuda.py +375 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +256 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +54 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +134 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +286 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +126 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +159 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +29 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +68 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +71 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +77 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +123 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +64 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +66 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fft.py +268 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +71 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +55 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +77 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +54 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +247 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +83 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +72 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +106 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +126 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +79 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +53 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +3 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +241 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +124 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +391 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +220 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +111 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +240 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +44 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +248 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +322 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +467 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +250 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +40 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +308 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +220 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +252 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +133 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +100 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +164 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +93 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +85 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/cor.py +5 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +469 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +169 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +130 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +217 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/templates/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_nxflatfield.py +104 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +47 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/alignment.py +184 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +1286 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +155 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +373 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +60 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +204 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_alignment.py +99 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +226 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +180 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +49 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +146 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +21 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +1183 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +563 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +2279 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/tests.py +51 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +375 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +276 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +108 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +586 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +239 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +162 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/utils.py +836 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/conf.py +137 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +38 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +34 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +17 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap.py +88 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +69 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +272 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +626 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +94 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +144 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +153 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +358 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +449 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +143 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +261 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +197 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +90 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +125 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +151 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +120 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +116 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +181 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +162 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +85 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +33 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +110 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/convolution.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +97 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +331 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +12 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +578 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +1621 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +183 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +112 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +362 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_alignment.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +472 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +105 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +41 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +214 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +193 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +39 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +2 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +371 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +305 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +628 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +114 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_cast_volume.py +339 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +178 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +187 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +99 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +263 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +892 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/binning.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +24 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +152 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +83 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +48 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +117 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/fft.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +135 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +35 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +62 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/utils.py +292 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config.py +265 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +589 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +164 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +211 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +20 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +1012 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +149 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +849 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +152 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +260 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +590 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +825 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +851 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/dataset_validator.py +19 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +147 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +246 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +575 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +1670 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +119 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +598 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +42 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +175 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +62 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +483 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_accumulator.py +157 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +355 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +61 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +51 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +101 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +210 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +149 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +116 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +193 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/__init__.py +7 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +11 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +161 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +169 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +361 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +142 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +92 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +212 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +68 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +448 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +144 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +79 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +425 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +143 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +95 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +102 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +59 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +250 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +86 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +626 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +67 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +73 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/convolution_cuda.py +375 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +256 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +54 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +134 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +286 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +126 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +159 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +29 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +68 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +71 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +77 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +123 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +64 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +66 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fft.py +268 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +71 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +55 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +77 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +54 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +247 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +83 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +72 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +106 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +126 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +79 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +53 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +3 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +241 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +124 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +391 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +220 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +111 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +240 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +44 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +248 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +322 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +467 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +250 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +40 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +308 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +220 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +252 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +133 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +100 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +164 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +93 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +85 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/cor.py +5 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +469 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +169 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +130 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +217 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/templates/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_nxflatfield.py +104 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +47 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/alignment.py +184 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +1286 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +155 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +373 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +60 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +204 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_alignment.py +99 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +226 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +180 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +49 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +146 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +21 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +1183 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +563 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +2279 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/tests.py +51 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +375 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +276 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +108 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +586 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +239 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +162 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/utils.py +836 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/doc/conf.py +137 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +38 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +34 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +17 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap.py +88 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +69 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +272 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +626 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +94 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +144 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +153 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +358 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +449 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +143 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +261 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +197 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +90 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +125 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +151 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +120 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +116 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +181 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +162 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +85 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +33 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +110 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/convolution.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +97 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +331 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +12 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +578 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +1621 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +183 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +112 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +362 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_alignment.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +472 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +105 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +41 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +214 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +193 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +39 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +2 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +371 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +305 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +628 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +114 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_cast_volume.py +339 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +178 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +187 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +99 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +263 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +892 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/binning.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +24 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +152 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +83 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +48 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +70 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +4 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +8 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +117 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/fft.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +135 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +35 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +62 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/utils.py +292 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config.py +265 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +589 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +164 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +211 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +20 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +1012 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +149 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +849 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +152 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +260 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +590 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +825 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +851 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/dataset_validator.py +19 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +147 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +246 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +575 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +1670 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +119 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +598 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +42 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +175 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +62 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +483 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_accumulator.py +157 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +355 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +61 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +51 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +101 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +210 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +149 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +116 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +193 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/__init__.py +7 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +11 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +161 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +169 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +361 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +142 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +92 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +212 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +68 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +448 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +144 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +79 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +425 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +143 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +95 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +102 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +59 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +250 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +86 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +626 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +67 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +73 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/convolution_cuda.py +375 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +163 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +256 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +54 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +134 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +286 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +126 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +159 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +29 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +68 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +71 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +77 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +123 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +64 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +66 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fft.py +268 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +71 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +55 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +77 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +54 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +247 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +63 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +83 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +72 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +106 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +126 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +79 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +53 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +75 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +3 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +241 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +124 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +391 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +78 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +220 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +111 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +240 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +44 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +248 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +322 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +467 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +250 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +40 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +308 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +220 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +252 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +133 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +100 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +164 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +93 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +85 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/cor.py +5 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +469 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +169 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +130 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +217 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/templates/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_nxflatfield.py +104 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +47 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +174 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/alignment.py +184 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +1286 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +6 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +155 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +373 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +60 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +204 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_alignment.py +99 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +226 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +180 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +98 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +49 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +146 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +21 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +1183 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +563 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +2279 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/tests.py +51 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +375 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +276 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +108 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +586 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +239 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +162 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/utils.py +836 -0
- build/lib/build/lib/build/lib/build/lib/doc/conf.py +137 -0
- build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +38 -0
- build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +34 -0
- build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +17 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap.py +88 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +69 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +272 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +626 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +94 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +144 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +70 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +153 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +358 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +449 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +143 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +261 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +197 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +90 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +125 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +151 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +163 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +120 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +116 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +181 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +162 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +98 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +85 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +78 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +33 -0
- build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +110 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/convolution.py +8 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +4 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +97 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +75 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +331 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +12 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +578 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +1621 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +183 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +112 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +362 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_alignment.py +70 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +472 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +105 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +41 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +78 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +214 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +193 -0
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +39 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +2 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +371 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +305 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +628 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +114 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_cast_volume.py +339 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +178 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +187 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +99 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +263 -0
- build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +892 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/binning.py +98 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +24 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +152 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +8 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +83 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +4 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +48 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +70 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +4 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +8 -0
- build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +117 -0
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/fft.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +135 -0
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +35 -0
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +62 -0
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/utils.py +292 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config.py +265 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +589 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +164 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +211 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +20 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +1012 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +149 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +849 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +152 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +260 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +63 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +590 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +825 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +851 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/dataset_validator.py +19 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +147 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +246 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +575 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +1670 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +119 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +598 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +42 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +175 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +62 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +483 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_accumulator.py +157 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +355 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +61 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +51 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +101 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +163 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +210 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +78 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +149 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +116 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +193 -0
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/__init__.py +7 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +11 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +161 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +169 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +361 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +142 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +92 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +212 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +174 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +68 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +448 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +144 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +79 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +425 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +143 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +95 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +102 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +59 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +250 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +86 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +626 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +67 -0
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +73 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/convolution_cuda.py +375 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +163 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +256 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +54 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +134 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +286 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +126 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +159 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +29 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +68 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +71 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +75 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +77 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +123 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +64 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +63 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +66 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fft.py +268 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +71 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +55 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +77 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +54 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +247 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +63 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +83 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +72 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +106 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +126 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +79 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +53 -0
- build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +75 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +3 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +241 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +124 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +391 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +78 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +220 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +103 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +111 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +240 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +174 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +44 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +248 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +322 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +467 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +250 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +40 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +308 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +220 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +252 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +133 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +100 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +164 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +93 -0
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +85 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/cor.py +5 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +469 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +169 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +130 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +217 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/templates/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_nxflatfield.py +104 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +47 -0
- build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +174 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/alignment.py +184 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +1286 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +6 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +155 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +373 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +60 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +204 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_alignment.py +99 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +226 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +180 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +98 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +49 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +146 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +21 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +1183 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +563 -0
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +2279 -0
- build/lib/build/lib/build/lib/build/lib/nabu/tests.py +51 -0
- build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +375 -0
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +276 -0
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +108 -0
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +586 -0
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +239 -0
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +162 -0
- build/lib/build/lib/build/lib/build/lib/nabu/utils.py +836 -0
- build/lib/build/lib/build/lib/doc/conf.py +137 -0
- build/lib/build/lib/build/lib/doc/create_conf_doc.py +38 -0
- build/lib/build/lib/build/lib/doc/get_mathjax.py +34 -0
- build/lib/build/lib/build/lib/nabu/__init__.py +17 -0
- build/lib/build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/app/bootstrap.py +88 -0
- build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +69 -0
- build/lib/build/lib/build/lib/nabu/app/cast_volume.py +272 -0
- build/lib/build/lib/build/lib/nabu/app/cli_configs.py +626 -0
- build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +94 -0
- build/lib/build/lib/build/lib/nabu/app/composite_cor.py +144 -0
- build/lib/build/lib/build/lib/nabu/app/correct_rot.py +70 -0
- build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +153 -0
- build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +358 -0
- build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +449 -0
- build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +143 -0
- build/lib/build/lib/build/lib/nabu/app/generate_header.py +261 -0
- build/lib/build/lib/build/lib/nabu/app/histogram.py +197 -0
- build/lib/build/lib/build/lib/nabu/app/multicor.py +90 -0
- build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +125 -0
- build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +151 -0
- build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +163 -0
- build/lib/build/lib/build/lib/nabu/app/reconstruct.py +120 -0
- build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +116 -0
- build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +181 -0
- build/lib/build/lib/build/lib/nabu/app/rotate.py +162 -0
- build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +98 -0
- build/lib/build/lib/build/lib/nabu/app/stitching.py +85 -0
- build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +78 -0
- build/lib/build/lib/build/lib/nabu/app/utils.py +33 -0
- build/lib/build/lib/build/lib/nabu/app/validator.py +110 -0
- build/lib/build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/cuda/convolution.py +8 -0
- build/lib/build/lib/build/lib/nabu/cuda/fft.py +4 -0
- build/lib/build/lib/build/lib/nabu/cuda/kernel.py +97 -0
- build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +6 -0
- build/lib/build/lib/build/lib/nabu/cuda/padding.py +6 -0
- build/lib/build/lib/build/lib/nabu/cuda/processing.py +75 -0
- build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/nabu/cuda/utils.py +331 -0
- build/lib/build/lib/build/lib/nabu/estimation/__init__.py +12 -0
- build/lib/build/lib/build/lib/nabu/estimation/alignment.py +578 -0
- build/lib/build/lib/build/lib/nabu/estimation/cor.py +1621 -0
- build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +183 -0
- build/lib/build/lib/build/lib/nabu/estimation/distortion.py +112 -0
- build/lib/build/lib/build/lib/nabu/estimation/focus.py +362 -0
- build/lib/build/lib/build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_alignment.py +70 -0
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +472 -0
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +105 -0
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +41 -0
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +78 -0
- build/lib/build/lib/build/lib/nabu/estimation/tilt.py +214 -0
- build/lib/build/lib/build/lib/nabu/estimation/translation.py +193 -0
- build/lib/build/lib/build/lib/nabu/estimation/utils.py +39 -0
- build/lib/build/lib/build/lib/nabu/io/__init__.py +2 -0
- build/lib/build/lib/build/lib/nabu/io/cast_volume.py +371 -0
- build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +305 -0
- build/lib/build/lib/build/lib/nabu/io/reader.py +628 -0
- build/lib/build/lib/build/lib/nabu/io/reader_helical.py +114 -0
- build/lib/build/lib/build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/io/tests/test_cast_volume.py +339 -0
- build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +178 -0
- build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +187 -0
- build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +99 -0
- build/lib/build/lib/build/lib/nabu/io/utils.py +263 -0
- build/lib/build/lib/build/lib/nabu/io/writer.py +892 -0
- build/lib/build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/misc/binning.py +98 -0
- build/lib/build/lib/build/lib/nabu/misc/fftshift.py +6 -0
- build/lib/build/lib/build/lib/nabu/misc/filters.py +24 -0
- build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +152 -0
- build/lib/build/lib/build/lib/nabu/misc/histogram.py +6 -0
- build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +8 -0
- build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +4 -0
- build/lib/build/lib/build/lib/nabu/misc/padding.py +83 -0
- build/lib/build/lib/build/lib/nabu/misc/padding_base.py +6 -0
- build/lib/build/lib/build/lib/nabu/misc/processing_base.py +4 -0
- build/lib/build/lib/build/lib/nabu/misc/rotation.py +6 -0
- build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +6 -0
- build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +48 -0
- build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +70 -0
- build/lib/build/lib/build/lib/nabu/misc/transpose.py +6 -0
- build/lib/build/lib/build/lib/nabu/misc/unsharp.py +4 -0
- build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +6 -0
- build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +8 -0
- build/lib/build/lib/build/lib/nabu/misc/utils.py +117 -0
- build/lib/build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/opencl/fft.py +6 -0
- build/lib/build/lib/build/lib/nabu/opencl/kernel.py +135 -0
- build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +35 -0
- build/lib/build/lib/build/lib/nabu/opencl/padding.py +6 -0
- build/lib/build/lib/build/lib/nabu/opencl/processing.py +62 -0
- build/lib/build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/opencl/utils.py +292 -0
- build/lib/build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/pipeline/config.py +265 -0
- build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +589 -0
- build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +164 -0
- build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +211 -0
- build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +20 -0
- build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +1012 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +149 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +849 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +152 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +260 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +63 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +590 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +825 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +851 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/dataset_validator.py +19 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +147 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +246 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +575 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +1670 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +119 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +598 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +42 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +175 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +62 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +483 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_accumulator.py +157 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +355 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +61 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +51 -0
- build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +101 -0
- build/lib/build/lib/build/lib/nabu/pipeline/params.py +163 -0
- build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +210 -0
- build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +78 -0
- build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +149 -0
- build/lib/build/lib/build/lib/nabu/pipeline/utils.py +116 -0
- build/lib/build/lib/build/lib/nabu/pipeline/writer.py +193 -0
- build/lib/build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/preproc/__init__.py +7 -0
- build/lib/build/lib/build/lib/nabu/preproc/alignment.py +11 -0
- build/lib/build/lib/build/lib/nabu/preproc/ccd.py +161 -0
- build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +169 -0
- build/lib/build/lib/build/lib/nabu/preproc/ctf.py +361 -0
- build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +142 -0
- build/lib/build/lib/build/lib/nabu/preproc/distortion.py +92 -0
- build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +212 -0
- build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +174 -0
- build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +68 -0
- build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +448 -0
- build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +144 -0
- build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +79 -0
- build/lib/build/lib/build/lib/nabu/preproc/phase.py +425 -0
- build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +143 -0
- build/lib/build/lib/build/lib/nabu/preproc/shift.py +95 -0
- build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +102 -0
- build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +59 -0
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +250 -0
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +86 -0
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +626 -0
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +67 -0
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +73 -0
- build/lib/build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/processing/convolution_cuda.py +375 -0
- build/lib/build/lib/build/lib/nabu/processing/fft_base.py +163 -0
- build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +256 -0
- build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +54 -0
- build/lib/build/lib/build/lib/nabu/processing/fftshift.py +134 -0
- build/lib/build/lib/build/lib/nabu/processing/histogram.py +286 -0
- build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +103 -0
- build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +126 -0
- build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +159 -0
- build/lib/build/lib/build/lib/nabu/processing/muladd.py +29 -0
- build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +68 -0
- build/lib/build/lib/build/lib/nabu/processing/padding_base.py +71 -0
- build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +75 -0
- build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +77 -0
- build/lib/build/lib/build/lib/nabu/processing/processing_base.py +123 -0
- build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +64 -0
- build/lib/build/lib/build/lib/nabu/processing/rotation.py +63 -0
- build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +66 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_fft.py +268 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +71 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +55 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +77 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +54 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +247 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +63 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +83 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +72 -0
- build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +106 -0
- build/lib/build/lib/build/lib/nabu/processing/transpose.py +126 -0
- build/lib/build/lib/build/lib/nabu/processing/unsharp.py +79 -0
- build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +53 -0
- build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +75 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +3 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +241 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +124 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +391 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +78 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +220 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +103 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +111 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +240 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +174 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +44 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +248 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +322 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +467 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +250 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +40 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +1 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +308 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +220 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +252 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +133 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +100 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +164 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +93 -0
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +85 -0
- build/lib/build/lib/build/lib/nabu/resources/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/resources/cor.py +5 -0
- build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +469 -0
- build/lib/build/lib/build/lib/nabu/resources/gpu.py +169 -0
- build/lib/build/lib/build/lib/nabu/resources/logger.py +130 -0
- build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +217 -0
- build/lib/build/lib/build/lib/nabu/resources/templates/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/resources/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/resources/tests/test_nxflatfield.py +104 -0
- build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +47 -0
- build/lib/build/lib/build/lib/nabu/resources/utils.py +174 -0
- build/lib/build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/stitching/alignment.py +184 -0
- build/lib/build/lib/build/lib/nabu/stitching/config.py +1286 -0
- build/lib/build/lib/build/lib/nabu/stitching/definitions.py +6 -0
- build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +155 -0
- build/lib/build/lib/build/lib/nabu/stitching/overlap.py +373 -0
- build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +60 -0
- build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +204 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_alignment.py +99 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +226 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +180 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +98 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +49 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +146 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +21 -0
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +1183 -0
- build/lib/build/lib/build/lib/nabu/stitching/utils.py +563 -0
- build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +2279 -0
- build/lib/build/lib/build/lib/nabu/tests.py +51 -0
- build/lib/build/lib/build/lib/nabu/testutils.py +375 -0
- build/lib/build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +276 -0
- build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +108 -0
- build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +586 -0
- build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +239 -0
- build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +162 -0
- build/lib/build/lib/build/lib/nabu/utils.py +836 -0
- build/lib/build/lib/doc/conf.py +137 -0
- build/lib/build/lib/doc/create_conf_doc.py +38 -0
- build/lib/build/lib/doc/get_mathjax.py +34 -0
- build/lib/build/lib/nabu/__init__.py +17 -0
- build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/nabu/app/bootstrap.py +88 -0
- build/lib/build/lib/nabu/app/bootstrap_stitching.py +69 -0
- build/lib/build/lib/nabu/app/cast_volume.py +272 -0
- build/lib/build/lib/nabu/app/cli_configs.py +626 -0
- build/lib/build/lib/nabu/app/compare_volumes.py +94 -0
- build/lib/build/lib/nabu/app/composite_cor.py +144 -0
- build/lib/build/lib/nabu/app/correct_rot.py +70 -0
- build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +153 -0
- build/lib/build/lib/nabu/app/diag_to_pix.py +358 -0
- build/lib/build/lib/nabu/app/diag_to_rot.py +449 -0
- build/lib/build/lib/nabu/app/double_flatfield.py +143 -0
- build/lib/build/lib/nabu/app/generate_header.py +261 -0
- build/lib/build/lib/nabu/app/histogram.py +197 -0
- build/lib/build/lib/nabu/app/multicor.py +90 -0
- build/lib/build/lib/nabu/app/nx_z_splitter.py +125 -0
- build/lib/build/lib/nabu/app/parse_reconstruction_log.py +151 -0
- build/lib/build/lib/nabu/app/prepare_weights_double.py +163 -0
- build/lib/build/lib/nabu/app/reconstruct.py +120 -0
- build/lib/build/lib/nabu/app/reconstruct_helical.py +116 -0
- build/lib/build/lib/nabu/app/reduce_dark_flat.py +181 -0
- build/lib/build/lib/nabu/app/rotate.py +162 -0
- build/lib/build/lib/nabu/app/shrink_dataset.py +98 -0
- build/lib/build/lib/nabu/app/stitching.py +85 -0
- build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +78 -0
- build/lib/build/lib/nabu/app/utils.py +33 -0
- build/lib/build/lib/nabu/app/validator.py +110 -0
- build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/nabu/cuda/convolution.py +8 -0
- build/lib/build/lib/nabu/cuda/fft.py +4 -0
- build/lib/build/lib/nabu/cuda/kernel.py +97 -0
- build/lib/build/lib/nabu/cuda/medfilt.py +6 -0
- build/lib/build/lib/nabu/cuda/padding.py +6 -0
- build/lib/build/lib/nabu/cuda/processing.py +75 -0
- build/lib/build/lib/nabu/cuda/tests/__init__.py +1 -0
- build/lib/build/lib/nabu/cuda/utils.py +331 -0
- build/lib/build/lib/nabu/estimation/__init__.py +12 -0
- build/lib/build/lib/nabu/estimation/alignment.py +578 -0
- build/lib/build/lib/nabu/estimation/cor.py +1621 -0
- build/lib/build/lib/nabu/estimation/cor_sino.py +183 -0
- build/lib/build/lib/nabu/estimation/distortion.py +112 -0
- build/lib/build/lib/nabu/estimation/focus.py +362 -0
- build/lib/build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/estimation/tests/test_alignment.py +70 -0
- build/lib/build/lib/nabu/estimation/tests/test_cor.py +472 -0
- build/lib/build/lib/nabu/estimation/tests/test_focus.py +105 -0
- build/lib/build/lib/nabu/estimation/tests/test_tilt.py +41 -0
- build/lib/build/lib/nabu/estimation/tests/test_translation.py +78 -0
- build/lib/build/lib/nabu/estimation/tilt.py +214 -0
- build/lib/build/lib/nabu/estimation/translation.py +193 -0
- build/lib/build/lib/nabu/estimation/utils.py +39 -0
- build/lib/build/lib/nabu/io/__init__.py +2 -0
- build/lib/build/lib/nabu/io/cast_volume.py +371 -0
- build/lib/build/lib/nabu/io/detector_distortion.py +305 -0
- build/lib/build/lib/nabu/io/reader.py +628 -0
- build/lib/build/lib/nabu/io/reader_helical.py +114 -0
- build/lib/build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/io/tests/test_cast_volume.py +339 -0
- build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +178 -0
- build/lib/build/lib/nabu/io/tests/test_writers.py +187 -0
- build/lib/build/lib/nabu/io/tiffwriter_zmm.py +99 -0
- build/lib/build/lib/nabu/io/utils.py +263 -0
- build/lib/build/lib/nabu/io/writer.py +892 -0
- build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/nabu/misc/binning.py +98 -0
- build/lib/build/lib/nabu/misc/fftshift.py +6 -0
- build/lib/build/lib/nabu/misc/filters.py +24 -0
- build/lib/build/lib/nabu/misc/fourier_filters.py +152 -0
- build/lib/build/lib/nabu/misc/histogram.py +6 -0
- build/lib/build/lib/nabu/misc/histogram_cuda.py +8 -0
- build/lib/build/lib/nabu/misc/kernel_base.py +4 -0
- build/lib/build/lib/nabu/misc/padding.py +83 -0
- build/lib/build/lib/nabu/misc/padding_base.py +6 -0
- build/lib/build/lib/nabu/misc/processing_base.py +4 -0
- build/lib/build/lib/nabu/misc/rotation.py +6 -0
- build/lib/build/lib/nabu/misc/rotation_cuda.py +6 -0
- build/lib/build/lib/nabu/misc/tests/__init__.py +1 -0
- build/lib/build/lib/nabu/misc/tests/test_binning.py +48 -0
- build/lib/build/lib/nabu/misc/tests/test_interpolation.py +70 -0
- build/lib/build/lib/nabu/misc/transpose.py +6 -0
- build/lib/build/lib/nabu/misc/unsharp.py +4 -0
- build/lib/build/lib/nabu/misc/unsharp_cuda.py +6 -0
- build/lib/build/lib/nabu/misc/unsharp_opencl.py +8 -0
- build/lib/build/lib/nabu/misc/utils.py +117 -0
- build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/nabu/opencl/fft.py +6 -0
- build/lib/build/lib/nabu/opencl/kernel.py +135 -0
- build/lib/build/lib/nabu/opencl/memcpy.py +35 -0
- build/lib/build/lib/nabu/opencl/padding.py +6 -0
- build/lib/build/lib/nabu/opencl/processing.py +62 -0
- build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/opencl/utils.py +292 -0
- build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/nabu/pipeline/config.py +265 -0
- build/lib/build/lib/nabu/pipeline/config_validators.py +589 -0
- build/lib/build/lib/nabu/pipeline/datadump.py +164 -0
- build/lib/build/lib/nabu/pipeline/dataset_validator.py +211 -0
- build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +20 -0
- build/lib/build/lib/nabu/pipeline/estimators.py +1012 -0
- build/lib/build/lib/nabu/pipeline/fallback_utils.py +149 -0
- build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +849 -0
- build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +152 -0
- build/lib/build/lib/nabu/pipeline/fullfield/computations.py +260 -0
- build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +63 -0
- build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +590 -0
- build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +825 -0
- build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +851 -0
- build/lib/build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/build/lib/nabu/pipeline/helical/dataset_validator.py +19 -0
- build/lib/build/lib/nabu/pipeline/helical/fbp.py +147 -0
- build/lib/build/lib/nabu/pipeline/helical/filtering.py +246 -0
- build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +575 -0
- build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +1670 -0
- build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +119 -0
- build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +598 -0
- build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +42 -0
- build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +175 -0
- build/lib/build/lib/nabu/pipeline/helical/processconfig.py +62 -0
- build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +483 -0
- build/lib/build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/pipeline/helical/tests/test_accumulator.py +157 -0
- build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +355 -0
- build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +61 -0
- build/lib/build/lib/nabu/pipeline/helical/utils.py +51 -0
- build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +101 -0
- build/lib/build/lib/nabu/pipeline/params.py +163 -0
- build/lib/build/lib/nabu/pipeline/processconfig.py +210 -0
- build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +78 -0
- build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +149 -0
- build/lib/build/lib/nabu/pipeline/utils.py +116 -0
- build/lib/build/lib/nabu/pipeline/writer.py +193 -0
- build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/nabu/preproc/__init__.py +7 -0
- build/lib/build/lib/nabu/preproc/alignment.py +11 -0
- build/lib/build/lib/nabu/preproc/ccd.py +161 -0
- build/lib/build/lib/nabu/preproc/ccd_cuda.py +169 -0
- build/lib/build/lib/nabu/preproc/ctf.py +361 -0
- build/lib/build/lib/nabu/preproc/ctf_cuda.py +142 -0
- build/lib/build/lib/nabu/preproc/distortion.py +92 -0
- build/lib/build/lib/nabu/preproc/double_flatfield.py +212 -0
- build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +174 -0
- build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +68 -0
- build/lib/build/lib/nabu/preproc/flatfield.py +448 -0
- build/lib/build/lib/nabu/preproc/flatfield_cuda.py +144 -0
- build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +79 -0
- build/lib/build/lib/nabu/preproc/phase.py +425 -0
- build/lib/build/lib/nabu/preproc/phase_cuda.py +143 -0
- build/lib/build/lib/nabu/preproc/shift.py +95 -0
- build/lib/build/lib/nabu/preproc/shift_cuda.py +102 -0
- build/lib/build/lib/nabu/preproc/tests/__init__.py +1 -0
- build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +59 -0
- build/lib/build/lib/nabu/preproc/tests/test_ctf.py +250 -0
- build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +86 -0
- build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +626 -0
- build/lib/build/lib/nabu/preproc/tests/test_paganin.py +67 -0
- build/lib/build/lib/nabu/preproc/tests/test_vshift.py +73 -0
- build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/nabu/processing/convolution_cuda.py +375 -0
- build/lib/build/lib/nabu/processing/fft_base.py +163 -0
- build/lib/build/lib/nabu/processing/fft_cuda.py +256 -0
- build/lib/build/lib/nabu/processing/fft_opencl.py +54 -0
- build/lib/build/lib/nabu/processing/fftshift.py +134 -0
- build/lib/build/lib/nabu/processing/histogram.py +286 -0
- build/lib/build/lib/nabu/processing/histogram_cuda.py +103 -0
- build/lib/build/lib/nabu/processing/kernel_base.py +126 -0
- build/lib/build/lib/nabu/processing/medfilt_cuda.py +159 -0
- build/lib/build/lib/nabu/processing/muladd.py +29 -0
- build/lib/build/lib/nabu/processing/muladd_cuda.py +68 -0
- build/lib/build/lib/nabu/processing/padding_base.py +71 -0
- build/lib/build/lib/nabu/processing/padding_cuda.py +75 -0
- build/lib/build/lib/nabu/processing/padding_opencl.py +77 -0
- build/lib/build/lib/nabu/processing/processing_base.py +123 -0
- build/lib/build/lib/nabu/processing/roll_opencl.py +64 -0
- build/lib/build/lib/nabu/processing/rotation.py +63 -0
- build/lib/build/lib/nabu/processing/rotation_cuda.py +66 -0
- build/lib/build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/processing/tests/test_fft.py +268 -0
- build/lib/build/lib/nabu/processing/tests/test_fftshift.py +71 -0
- build/lib/build/lib/nabu/processing/tests/test_histogram.py +55 -0
- build/lib/build/lib/nabu/processing/tests/test_medfilt.py +77 -0
- build/lib/build/lib/nabu/processing/tests/test_muladd.py +54 -0
- build/lib/build/lib/nabu/processing/tests/test_padding.py +247 -0
- build/lib/build/lib/nabu/processing/tests/test_roll.py +63 -0
- build/lib/build/lib/nabu/processing/tests/test_rotation.py +83 -0
- build/lib/build/lib/nabu/processing/tests/test_transpose.py +72 -0
- build/lib/build/lib/nabu/processing/tests/test_unsharp.py +106 -0
- build/lib/build/lib/nabu/processing/transpose.py +126 -0
- build/lib/build/lib/nabu/processing/unsharp.py +79 -0
- build/lib/build/lib/nabu/processing/unsharp_cuda.py +53 -0
- build/lib/build/lib/nabu/processing/unsharp_opencl.py +75 -0
- build/lib/build/lib/nabu/reconstruction/__init__.py +3 -0
- build/lib/build/lib/nabu/reconstruction/cone.py +241 -0
- build/lib/build/lib/nabu/reconstruction/fbp.py +124 -0
- build/lib/build/lib/nabu/reconstruction/fbp_base.py +391 -0
- build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +78 -0
- build/lib/build/lib/nabu/reconstruction/filtering.py +220 -0
- build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +103 -0
- build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +111 -0
- build/lib/build/lib/nabu/reconstruction/projection.py +240 -0
- build/lib/build/lib/nabu/reconstruction/reconstructor.py +174 -0
- build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +44 -0
- build/lib/build/lib/nabu/reconstruction/rings.py +248 -0
- build/lib/build/lib/nabu/reconstruction/rings_cuda.py +322 -0
- build/lib/build/lib/nabu/reconstruction/sinogram.py +467 -0
- build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +250 -0
- build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +40 -0
- build/lib/build/lib/nabu/reconstruction/tests/__init__.py +1 -0
- build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +308 -0
- build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +220 -0
- build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +252 -0
- build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +133 -0
- build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +100 -0
- build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +164 -0
- build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +93 -0
- build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +85 -0
- build/lib/build/lib/nabu/resources/__init__.py +0 -0
- build/lib/build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/build/lib/nabu/resources/cor.py +5 -0
- build/lib/build/lib/nabu/resources/dataset_analyzer.py +469 -0
- build/lib/build/lib/nabu/resources/gpu.py +169 -0
- build/lib/build/lib/nabu/resources/logger.py +130 -0
- build/lib/build/lib/nabu/resources/nxflatfield.py +217 -0
- build/lib/build/lib/nabu/resources/templates/__init__.py +0 -0
- build/lib/build/lib/nabu/resources/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/resources/tests/test_nxflatfield.py +104 -0
- build/lib/build/lib/nabu/resources/tests/test_units.py +47 -0
- build/lib/build/lib/nabu/resources/utils.py +174 -0
- build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/nabu/stitching/alignment.py +184 -0
- build/lib/build/lib/nabu/stitching/config.py +1286 -0
- build/lib/build/lib/nabu/stitching/definitions.py +6 -0
- build/lib/build/lib/nabu/stitching/frame_composition.py +155 -0
- build/lib/build/lib/nabu/stitching/overlap.py +373 -0
- build/lib/build/lib/nabu/stitching/sample_normalization.py +60 -0
- build/lib/build/lib/nabu/stitching/slurm_utils.py +204 -0
- build/lib/build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/stitching/tests/test_alignment.py +99 -0
- build/lib/build/lib/nabu/stitching/tests/test_config.py +226 -0
- build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +180 -0
- build/lib/build/lib/nabu/stitching/tests/test_overlap.py +98 -0
- build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +49 -0
- build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +146 -0
- build/lib/build/lib/nabu/stitching/tests/test_utils.py +21 -0
- build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +1183 -0
- build/lib/build/lib/nabu/stitching/utils.py +563 -0
- build/lib/build/lib/nabu/stitching/z_stitching.py +2279 -0
- build/lib/build/lib/nabu/tests.py +51 -0
- build/lib/build/lib/nabu/testutils.py +375 -0
- build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +276 -0
- build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +108 -0
- build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +586 -0
- build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +239 -0
- build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +162 -0
- build/lib/build/lib/nabu/utils.py +836 -0
- build/lib/doc/conf.py +137 -0
- build/lib/doc/create_conf_doc.py +38 -0
- build/lib/doc/get_mathjax.py +34 -0
- build/lib/nabu/__init__.py +17 -0
- build/lib/nabu/app/__init__.py +0 -0
- build/lib/nabu/app/bootstrap.py +88 -0
- build/lib/nabu/app/bootstrap_stitching.py +69 -0
- build/lib/nabu/app/cast_volume.py +272 -0
- build/lib/nabu/app/cli_configs.py +626 -0
- build/lib/nabu/app/compare_volumes.py +94 -0
- build/lib/nabu/app/composite_cor.py +144 -0
- build/lib/nabu/app/correct_rot.py +70 -0
- build/lib/nabu/app/create_distortion_map_from_poly.py +153 -0
- build/lib/nabu/app/diag_to_pix.py +358 -0
- build/lib/nabu/app/diag_to_rot.py +449 -0
- build/lib/nabu/app/double_flatfield.py +143 -0
- build/lib/nabu/app/generate_header.py +261 -0
- build/lib/nabu/app/histogram.py +197 -0
- build/lib/nabu/app/multicor.py +90 -0
- build/lib/nabu/app/nx_z_splitter.py +125 -0
- build/lib/nabu/app/parse_reconstruction_log.py +151 -0
- build/lib/nabu/app/prepare_weights_double.py +163 -0
- build/lib/nabu/app/reconstruct.py +120 -0
- build/lib/nabu/app/reconstruct_helical.py +116 -0
- build/lib/nabu/app/reduce_dark_flat.py +181 -0
- build/lib/nabu/app/rotate.py +162 -0
- build/lib/nabu/app/shrink_dataset.py +98 -0
- build/lib/nabu/app/stitching.py +85 -0
- build/lib/nabu/app/tests/test_reduce_dark_flat.py +78 -0
- build/lib/nabu/app/utils.py +33 -0
- build/lib/nabu/app/validator.py +110 -0
- build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/nabu/cuda/convolution.py +8 -0
- build/lib/nabu/cuda/fft.py +4 -0
- build/lib/nabu/cuda/kernel.py +97 -0
- build/lib/nabu/cuda/medfilt.py +6 -0
- build/lib/nabu/cuda/padding.py +6 -0
- build/lib/nabu/cuda/processing.py +75 -0
- build/lib/nabu/cuda/tests/__init__.py +1 -0
- build/lib/nabu/cuda/utils.py +331 -0
- build/lib/nabu/estimation/__init__.py +12 -0
- build/lib/nabu/estimation/alignment.py +578 -0
- build/lib/nabu/estimation/cor.py +1621 -0
- build/lib/nabu/estimation/cor_sino.py +183 -0
- build/lib/nabu/estimation/distortion.py +112 -0
- build/lib/nabu/estimation/focus.py +362 -0
- build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/nabu/estimation/tests/test_alignment.py +70 -0
- build/lib/nabu/estimation/tests/test_cor.py +472 -0
- build/lib/nabu/estimation/tests/test_focus.py +105 -0
- build/lib/nabu/estimation/tests/test_tilt.py +41 -0
- build/lib/nabu/estimation/tests/test_translation.py +78 -0
- build/lib/nabu/estimation/tilt.py +214 -0
- build/lib/nabu/estimation/translation.py +193 -0
- build/lib/nabu/estimation/utils.py +39 -0
- build/lib/nabu/io/__init__.py +2 -0
- build/lib/nabu/io/cast_volume.py +371 -0
- build/lib/nabu/io/detector_distortion.py +305 -0
- build/lib/nabu/io/reader.py +628 -0
- build/lib/nabu/io/reader_helical.py +114 -0
- build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/nabu/io/tests/test_cast_volume.py +339 -0
- build/lib/nabu/io/tests/test_detector_distortion.py +178 -0
- build/lib/nabu/io/tests/test_writers.py +187 -0
- build/lib/nabu/io/tiffwriter_zmm.py +99 -0
- build/lib/nabu/io/utils.py +263 -0
- build/lib/nabu/io/writer.py +892 -0
- build/lib/nabu/misc/__init__.py +0 -0
- build/lib/nabu/misc/binning.py +98 -0
- build/lib/nabu/misc/fftshift.py +6 -0
- build/lib/nabu/misc/filters.py +24 -0
- build/lib/nabu/misc/fourier_filters.py +152 -0
- build/lib/nabu/misc/histogram.py +6 -0
- build/lib/nabu/misc/histogram_cuda.py +8 -0
- build/lib/nabu/misc/kernel_base.py +4 -0
- build/lib/nabu/misc/padding.py +83 -0
- build/lib/nabu/misc/padding_base.py +6 -0
- build/lib/nabu/misc/processing_base.py +4 -0
- build/lib/nabu/misc/rotation.py +6 -0
- build/lib/nabu/misc/rotation_cuda.py +6 -0
- build/lib/nabu/misc/tests/__init__.py +1 -0
- build/lib/nabu/misc/tests/test_binning.py +48 -0
- build/lib/nabu/misc/tests/test_interpolation.py +70 -0
- build/lib/nabu/misc/transpose.py +6 -0
- build/lib/nabu/misc/unsharp.py +4 -0
- build/lib/nabu/misc/unsharp_cuda.py +6 -0
- build/lib/nabu/misc/unsharp_opencl.py +8 -0
- build/lib/nabu/misc/utils.py +117 -0
- build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/nabu/opencl/fft.py +6 -0
- build/lib/nabu/opencl/kernel.py +135 -0
- build/lib/nabu/opencl/memcpy.py +35 -0
- build/lib/nabu/opencl/padding.py +6 -0
- build/lib/nabu/opencl/processing.py +62 -0
- build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/nabu/opencl/utils.py +292 -0
- build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/nabu/pipeline/config.py +265 -0
- build/lib/nabu/pipeline/config_validators.py +589 -0
- build/lib/nabu/pipeline/datadump.py +164 -0
- build/lib/nabu/pipeline/dataset_validator.py +211 -0
- build/lib/nabu/pipeline/detector_distortion_provider.py +20 -0
- build/lib/nabu/pipeline/estimators.py +1012 -0
- build/lib/nabu/pipeline/fallback_utils.py +149 -0
- build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/nabu/pipeline/fullfield/chunked.py +849 -0
- build/lib/nabu/pipeline/fullfield/chunked_cuda.py +152 -0
- build/lib/nabu/pipeline/fullfield/computations.py +260 -0
- build/lib/nabu/pipeline/fullfield/dataset_validator.py +63 -0
- build/lib/nabu/pipeline/fullfield/nabu_config.py +590 -0
- build/lib/nabu/pipeline/fullfield/processconfig.py +825 -0
- build/lib/nabu/pipeline/fullfield/reconstruction.py +851 -0
- build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/nabu/pipeline/helical/dataset_validator.py +19 -0
- build/lib/nabu/pipeline/helical/fbp.py +147 -0
- build/lib/nabu/pipeline/helical/filtering.py +246 -0
- build/lib/nabu/pipeline/helical/gridded_accumulator.py +575 -0
- build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +1670 -0
- build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +119 -0
- build/lib/nabu/pipeline/helical/helical_reconstruction.py +598 -0
- build/lib/nabu/pipeline/helical/helical_utils.py +42 -0
- build/lib/nabu/pipeline/helical/nabu_config.py +175 -0
- build/lib/nabu/pipeline/helical/processconfig.py +62 -0
- build/lib/nabu/pipeline/helical/span_strategy.py +483 -0
- build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/nabu/pipeline/helical/tests/test_accumulator.py +157 -0
- build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +355 -0
- build/lib/nabu/pipeline/helical/tests/test_strategy.py +61 -0
- build/lib/nabu/pipeline/helical/utils.py +51 -0
- build/lib/nabu/pipeline/helical/weight_balancer.py +101 -0
- build/lib/nabu/pipeline/params.py +163 -0
- build/lib/nabu/pipeline/processconfig.py +210 -0
- build/lib/nabu/pipeline/tests/test_chunk_reader.py +78 -0
- build/lib/nabu/pipeline/tests/test_estimators.py +149 -0
- build/lib/nabu/pipeline/utils.py +116 -0
- build/lib/nabu/pipeline/writer.py +193 -0
- build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/nabu/preproc/__init__.py +7 -0
- build/lib/nabu/preproc/alignment.py +11 -0
- build/lib/nabu/preproc/ccd.py +161 -0
- build/lib/nabu/preproc/ccd_cuda.py +169 -0
- build/lib/nabu/preproc/ctf.py +361 -0
- build/lib/nabu/preproc/ctf_cuda.py +142 -0
- build/lib/nabu/preproc/distortion.py +92 -0
- build/lib/nabu/preproc/double_flatfield.py +212 -0
- build/lib/nabu/preproc/double_flatfield_cuda.py +174 -0
- build/lib/nabu/preproc/double_flatfield_variable_region.py +68 -0
- build/lib/nabu/preproc/flatfield.py +448 -0
- build/lib/nabu/preproc/flatfield_cuda.py +144 -0
- build/lib/nabu/preproc/flatfield_variable_region.py +79 -0
- build/lib/nabu/preproc/phase.py +425 -0
- build/lib/nabu/preproc/phase_cuda.py +143 -0
- build/lib/nabu/preproc/shift.py +95 -0
- build/lib/nabu/preproc/shift_cuda.py +102 -0
- build/lib/nabu/preproc/tests/__init__.py +1 -0
- build/lib/nabu/preproc/tests/test_ccd_corr.py +59 -0
- build/lib/nabu/preproc/tests/test_ctf.py +250 -0
- build/lib/nabu/preproc/tests/test_double_flatfield.py +86 -0
- build/lib/nabu/preproc/tests/test_flatfield.py +626 -0
- build/lib/nabu/preproc/tests/test_paganin.py +67 -0
- build/lib/nabu/preproc/tests/test_vshift.py +73 -0
- build/lib/nabu/processing/__init__.py +0 -0
- build/lib/nabu/processing/convolution_cuda.py +375 -0
- build/lib/nabu/processing/fft_base.py +163 -0
- build/lib/nabu/processing/fft_cuda.py +256 -0
- build/lib/nabu/processing/fft_opencl.py +54 -0
- build/lib/nabu/processing/fftshift.py +134 -0
- build/lib/nabu/processing/histogram.py +286 -0
- build/lib/nabu/processing/histogram_cuda.py +103 -0
- build/lib/nabu/processing/kernel_base.py +126 -0
- build/lib/nabu/processing/medfilt_cuda.py +159 -0
- build/lib/nabu/processing/muladd.py +29 -0
- build/lib/nabu/processing/muladd_cuda.py +68 -0
- build/lib/nabu/processing/padding_base.py +71 -0
- build/lib/nabu/processing/padding_cuda.py +75 -0
- build/lib/nabu/processing/padding_opencl.py +77 -0
- build/lib/nabu/processing/processing_base.py +123 -0
- build/lib/nabu/processing/roll_opencl.py +64 -0
- build/lib/nabu/processing/rotation.py +63 -0
- build/lib/nabu/processing/rotation_cuda.py +66 -0
- build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/nabu/processing/tests/test_fft.py +268 -0
- build/lib/nabu/processing/tests/test_fftshift.py +71 -0
- build/lib/nabu/processing/tests/test_histogram.py +55 -0
- build/lib/nabu/processing/tests/test_medfilt.py +77 -0
- build/lib/nabu/processing/tests/test_muladd.py +54 -0
- build/lib/nabu/processing/tests/test_padding.py +247 -0
- build/lib/nabu/processing/tests/test_roll.py +63 -0
- build/lib/nabu/processing/tests/test_rotation.py +83 -0
- build/lib/nabu/processing/tests/test_transpose.py +72 -0
- build/lib/nabu/processing/tests/test_unsharp.py +106 -0
- build/lib/nabu/processing/transpose.py +126 -0
- build/lib/nabu/processing/unsharp.py +79 -0
- build/lib/nabu/processing/unsharp_cuda.py +53 -0
- build/lib/nabu/processing/unsharp_opencl.py +75 -0
- build/lib/nabu/reconstruction/__init__.py +3 -0
- build/lib/nabu/reconstruction/cone.py +241 -0
- build/lib/nabu/reconstruction/fbp.py +124 -0
- build/lib/nabu/reconstruction/fbp_base.py +391 -0
- build/lib/nabu/reconstruction/fbp_opencl.py +78 -0
- build/lib/nabu/reconstruction/filtering.py +220 -0
- build/lib/nabu/reconstruction/filtering_cuda.py +103 -0
- build/lib/nabu/reconstruction/filtering_opencl.py +111 -0
- build/lib/nabu/reconstruction/projection.py +240 -0
- build/lib/nabu/reconstruction/reconstructor.py +174 -0
- build/lib/nabu/reconstruction/reconstructor_cuda.py +44 -0
- build/lib/nabu/reconstruction/rings.py +248 -0
- build/lib/nabu/reconstruction/rings_cuda.py +322 -0
- build/lib/nabu/reconstruction/sinogram.py +467 -0
- build/lib/nabu/reconstruction/sinogram_cuda.py +250 -0
- build/lib/nabu/reconstruction/sinogram_opencl.py +40 -0
- build/lib/nabu/reconstruction/tests/__init__.py +1 -0
- build/lib/nabu/reconstruction/tests/test_cone.py +308 -0
- build/lib/nabu/reconstruction/tests/test_deringer.py +220 -0
- build/lib/nabu/reconstruction/tests/test_fbp.py +252 -0
- build/lib/nabu/reconstruction/tests/test_filtering.py +133 -0
- build/lib/nabu/reconstruction/tests/test_halftomo.py +100 -0
- build/lib/nabu/reconstruction/tests/test_projector.py +164 -0
- build/lib/nabu/reconstruction/tests/test_reconstructor.py +93 -0
- build/lib/nabu/reconstruction/tests/test_sino_normalization.py +85 -0
- build/lib/nabu/resources/__init__.py +0 -0
- build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/nabu/resources/cor.py +5 -0
- build/lib/nabu/resources/dataset_analyzer.py +469 -0
- build/lib/nabu/resources/gpu.py +169 -0
- build/lib/nabu/resources/logger.py +130 -0
- build/lib/nabu/resources/nxflatfield.py +217 -0
- build/lib/nabu/resources/templates/__init__.py +0 -0
- build/lib/nabu/resources/tests/__init__.py +0 -0
- build/lib/nabu/resources/tests/test_nxflatfield.py +104 -0
- build/lib/nabu/resources/tests/test_units.py +47 -0
- build/lib/nabu/resources/utils.py +174 -0
- build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/nabu/stitching/alignment.py +184 -0
- build/lib/nabu/stitching/config.py +1286 -0
- build/lib/nabu/stitching/definitions.py +6 -0
- build/lib/nabu/stitching/frame_composition.py +155 -0
- build/lib/nabu/stitching/overlap.py +373 -0
- build/lib/nabu/stitching/sample_normalization.py +60 -0
- build/lib/nabu/stitching/slurm_utils.py +204 -0
- build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/nabu/stitching/tests/test_alignment.py +99 -0
- build/lib/nabu/stitching/tests/test_config.py +226 -0
- build/lib/nabu/stitching/tests/test_frame_composition.py +180 -0
- build/lib/nabu/stitching/tests/test_overlap.py +98 -0
- build/lib/nabu/stitching/tests/test_sample_normalization.py +49 -0
- build/lib/nabu/stitching/tests/test_slurm_utils.py +146 -0
- build/lib/nabu/stitching/tests/test_utils.py +21 -0
- build/lib/nabu/stitching/tests/test_z_stitching.py +1183 -0
- build/lib/nabu/stitching/utils.py +563 -0
- build/lib/nabu/stitching/z_stitching.py +2279 -0
- build/lib/nabu/tests.py +51 -0
- build/lib/nabu/testutils.py +375 -0
- build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/nabu/thirdparty/algotom_convert_sino.py +276 -0
- build/lib/nabu/thirdparty/pore3d_deringer_munch.py +108 -0
- build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +586 -0
- build/lib/nabu/thirdparty/tomopy_phase.py +239 -0
- build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +162 -0
- build/lib/nabu/utils.py +836 -0
- nabu/__init__.py +1 -1
- nabu/estimation/cor.py +2 -2
- nabu/io/cast_volume.py +10 -2
- nabu/pipeline/estimators.py +13 -7
- nabu/resources/dataset_analyzer.py +15 -6
- nabu/stitching/config.py +2 -2
- nabu/stitching/z_stitching.py +3 -1
- {nabu-2024.1.0rc3.dist-info → nabu-2024.1.1.dist-info}/METADATA +1 -1
- nabu-2024.1.1.dist-info/RECORD +2375 -0
- nabu-2024.1.1.dist-info/top_level.txt +4 -0
- doc/doc_config.py +0 -32
- nabu-2024.1.0rc3.dist-info/RECORD +0 -296
- nabu-2024.1.0rc3.dist-info/top_level.txt +0 -2
- {nabu-2024.1.0rc3.dist-info → nabu-2024.1.1.dist-info}/LICENSE +0 -0
- {nabu-2024.1.0rc3.dist-info → nabu-2024.1.1.dist-info}/WHEEL +0 -0
- {nabu-2024.1.0rc3.dist-info → nabu-2024.1.1.dist-info}/entry_points.txt +0 -0
build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked.py
ADDED
@@ -0,0 +1,849 @@
|
|
1
|
+
from os import path
|
2
|
+
from time import time
|
3
|
+
from math import ceil
|
4
|
+
import numpy as np
|
5
|
+
from silx.io.url import DataUrl
|
6
|
+
from ...utils import remove_items_from_list
|
7
|
+
from ...resources.logger import LoggerOrPrint
|
8
|
+
from ...resources.utils import extract_parameters
|
9
|
+
from ...io.reader import ChunkReader, HDF5Loader
|
10
|
+
from ...preproc.ccd import Log, CCDFilter
|
11
|
+
from ...preproc.flatfield import FlatFieldDataUrls
|
12
|
+
from ...preproc.distortion import DistortionCorrection
|
13
|
+
from ...preproc.shift import VerticalShift
|
14
|
+
from ...preproc.double_flatfield import DoubleFlatField
|
15
|
+
from ...preproc.phase import PaganinPhaseRetrieval
|
16
|
+
from ...preproc.ctf import CTFPhaseRetrieval, GeoPars
|
17
|
+
from ...reconstruction.sinogram import SinoNormalization
|
18
|
+
from ...reconstruction.filtering import SinoFilter
|
19
|
+
from ...processing.rotation import Rotation
|
20
|
+
from ...reconstruction.rings import MunchDeringer, SinoMeanDeringer, VoDeringer
|
21
|
+
from ...processing.unsharp import UnsharpMask
|
22
|
+
from ...processing.histogram import PartialHistogram, hist_as_2Darray
|
23
|
+
from ..utils import use_options, pipeline_step, get_subregion
|
24
|
+
from ..datadump import DataDumpManager
|
25
|
+
from ..writer import WriterManager
|
26
|
+
from ..detector_distortion_provider import DetectorDistortionProvider
|
27
|
+
|
28
|
+
# For now we don't have a plain python/numpy backend for reconstruction
|
29
|
+
try:
|
30
|
+
from ...reconstruction.fbp_opencl import OpenCLBackprojector as Backprojector
|
31
|
+
except:
|
32
|
+
Backprojector = None
|
33
|
+
|
34
|
+
|
35
|
+
class ChunkedPipeline:
|
36
|
+
"""
|
37
|
+
Pipeline for "regular" full-field tomography.
|
38
|
+
Data is processed by chunks. A chunk consists in K contiguous lines of all the radios.
|
39
|
+
In parallel geometry, a chunk of K radios lines gives K sinograms,
|
40
|
+
and equivalently K reconstructed slices.
|
41
|
+
"""
|
42
|
+
|
43
|
+
backend = "numpy"
|
44
|
+
FlatFieldClass = FlatFieldDataUrls
|
45
|
+
DoubleFlatFieldClass = DoubleFlatField
|
46
|
+
CCDCorrectionClass = CCDFilter
|
47
|
+
PaganinPhaseRetrievalClass = PaganinPhaseRetrieval
|
48
|
+
CTFPhaseRetrievalClass = CTFPhaseRetrieval
|
49
|
+
UnsharpMaskClass = UnsharpMask
|
50
|
+
ImageRotationClass = Rotation
|
51
|
+
VerticalShiftClass = VerticalShift
|
52
|
+
MunchDeringerClass = MunchDeringer
|
53
|
+
SinoMeanDeringerClass = SinoMeanDeringer
|
54
|
+
VoDeringerClass = VoDeringer
|
55
|
+
MLogClass = Log
|
56
|
+
SinoNormalizationClass = SinoNormalization
|
57
|
+
SinoFilterClass = SinoFilter
|
58
|
+
FBPClass = Backprojector
|
59
|
+
ConebeamClass = None # unsupported on CPU
|
60
|
+
HistogramClass = PartialHistogram
|
61
|
+
|
62
|
+
_default_extra_options = {}
|
63
|
+
|
64
|
+
# These steps are skipped if the reconstruction is done in two stages.
|
65
|
+
# The first stage will skip these steps, and the second stage will do these stages after merging sinograms.
|
66
|
+
_reconstruction_steps = ["sino_rings_correction", "reconstruction", "save", "histogram"]
|
67
|
+
|
68
|
+
def __init__(
|
69
|
+
self, process_config, chunk_shape, margin=None, logger=None, use_grouped_mode=False, extra_options=None
|
70
|
+
):
|
71
|
+
"""
|
72
|
+
Initialize a "Chunked" pipeline.
|
73
|
+
|
74
|
+
Parameters
|
75
|
+
----------
|
76
|
+
processing_config: `ProcessConfig`
|
77
|
+
Process configuration.
|
78
|
+
chunk_shape: tuple
|
79
|
+
Shape of the chunk of data to process, in the form (n_angles, n_z, n_x).
|
80
|
+
It has to account for possible cropping of the data, eg. [:, start_z:end_z, start_x:end_x]
|
81
|
+
where start_xz and/or end_xz can be other than None.
|
82
|
+
margin: tuple, optional
|
83
|
+
Margin to use, in the form ((up, down), (left, right)).
|
84
|
+
It is used for example when performing phase retrieval or a convolution-like operation:
|
85
|
+
some extra data is kept to avoid boundaries issues.
|
86
|
+
These boundaries are then discarded: the data volume is eventually cropped as
|
87
|
+
`data[U:D, L:R]` where `((U, D), (L, R)) = margin`
|
88
|
+
If not provided, no margin is applied.
|
89
|
+
logger: `nabu.app.logger.Logger`, optional
|
90
|
+
Logger class
|
91
|
+
extra_options: dict, optional
|
92
|
+
Advanced extra options.
|
93
|
+
|
94
|
+
|
95
|
+
Notes
|
96
|
+
------
|
97
|
+
|
98
|
+
Using `margin` results in a lesser number of reconstructed slices.
|
99
|
+
More specifically, if `margin = (V, H)`, then there will be `delta_z - 2*V`
|
100
|
+
reconstructed slices (if the sub-region is in the middle of the volume)
|
101
|
+
or `delta_z - V` reconstructed slices (if the sub-region is on top or bottom
|
102
|
+
of the volume).
|
103
|
+
"""
|
104
|
+
self.logger = LoggerOrPrint(logger)
|
105
|
+
self._set_params(process_config, chunk_shape, extra_options, margin, use_grouped_mode)
|
106
|
+
self._init_pipeline()
|
107
|
+
|
108
|
+
def _set_params(self, process_config, chunk_shape, extra_options, margin, use_grouped_mode):
|
109
|
+
self.process_config = process_config
|
110
|
+
self.dataset_info = self.process_config.dataset_info
|
111
|
+
self.processing_steps = self.process_config.processing_steps.copy()
|
112
|
+
self.processing_options = self.process_config.processing_options
|
113
|
+
self._set_chunk_shape(chunk_shape, use_grouped_mode)
|
114
|
+
self.set_subregion(None)
|
115
|
+
self._set_margin(margin)
|
116
|
+
self._set_extra_options(extra_options)
|
117
|
+
self._callbacks = {}
|
118
|
+
self._steps_name2component = {}
|
119
|
+
self._steps_component2name = {}
|
120
|
+
|
121
|
+
def _set_chunk_shape(self, chunk_shape, use_grouped_mode):
|
122
|
+
if len(chunk_shape) != 3:
|
123
|
+
raise ValueError("Expected chunk_shape to be a tuple of length 3 in the form (n_z, n_y, n_x)")
|
124
|
+
self.chunk_shape = tuple(int(c) for c in chunk_shape) # cast to int, as numpy.int64 can make pycuda crash
|
125
|
+
# TODO: sanity check (eg. compare to size of radios in dataset_info) ?
|
126
|
+
# (n_a, n_z, n_x)
|
127
|
+
self.radios_shape = (
|
128
|
+
ceil(self.chunk_shape[0] / self.process_config.subsampling_factor),
|
129
|
+
self.chunk_shape[1] // self.process_config.binning[1],
|
130
|
+
self.chunk_shape[2] // self.process_config.binning[0],
|
131
|
+
)
|
132
|
+
self.n_angles = self.radios_shape[0]
|
133
|
+
self.n_slices = self.radios_shape[1]
|
134
|
+
self._grouped_processing = False
|
135
|
+
if use_grouped_mode or self.chunk_shape[0] < len(self.process_config.rotation_angles(subsampling=False)):
|
136
|
+
# TODO allow a certain tolerance in this case ?
|
137
|
+
# Reconstruction is still possible (albeit less accurate) if delta is small
|
138
|
+
self._grouped_processing = True
|
139
|
+
self.logger.debug("Only a subset of angles is processed - Reconstruction will be skipped")
|
140
|
+
self.processing_steps, _ = remove_items_from_list(self.processing_steps, self._reconstruction_steps)
|
141
|
+
|
142
|
+
def _set_margin(self, margin):
|
143
|
+
if margin is None:
|
144
|
+
U, D, L, R = None, None, None, None
|
145
|
+
else:
|
146
|
+
((U, D), (L, R)) = get_subregion(margin, ndim=2)
|
147
|
+
|
148
|
+
# Replace "None" with zeros
|
149
|
+
U, D, L, R = U or 0, D or 0, L or 0, R or 0
|
150
|
+
|
151
|
+
self.margin = ((U, D), (L, R))
|
152
|
+
self._margin_up = U
|
153
|
+
self._margin_down = D
|
154
|
+
self._margin_left = L
|
155
|
+
self._margin_right = R
|
156
|
+
self.use_margin = (U + D + L + R) > 0
|
157
|
+
self.n_recs = self.chunk_shape[1] - sum(self.margin[0])
|
158
|
+
self.radios_cropped_shape = (self.radios_shape[0], self.radios_shape[1] - U - D, self.radios_shape[2] - L - R)
|
159
|
+
if self.use_margin:
|
160
|
+
self.n_slices -= sum(self.margin[0])
|
161
|
+
|
162
|
+
def set_subregion(self, sub_region):
|
163
|
+
"""
|
164
|
+
Set the data volume sub-region to process.
|
165
|
+
Note that processing margin, if any, is contained within the sub-region.
|
166
|
+
|
167
|
+
Parameters
|
168
|
+
-----------
|
169
|
+
sub_region: tuple
|
170
|
+
Data volume sub-region, in the form ((start_a, end_a), (start_z, end_z), (start_x, end_x))
|
171
|
+
where the data volume has a layout (angles, Z, X)
|
172
|
+
"""
|
173
|
+
n_angles = self.dataset_info.n_angles
|
174
|
+
n_x, n_z = self.dataset_info.radio_dims
|
175
|
+
c_a, c_z, c_x = self.chunk_shape
|
176
|
+
if sub_region is None:
|
177
|
+
# By default, take the sub-region around central slice
|
178
|
+
sub_region = (
|
179
|
+
(0, c_a),
|
180
|
+
(n_z // 2 - c_z // 2, n_z // 2 - c_z // 2 + c_z),
|
181
|
+
(n_x // 2 - c_x // 2, n_x // 2 - c_x // 2 + c_x),
|
182
|
+
)
|
183
|
+
else:
|
184
|
+
sub_region = get_subregion(sub_region, ndim=3)
|
185
|
+
# check sub-region
|
186
|
+
for i, start_end in enumerate(sub_region):
|
187
|
+
start, end = start_end
|
188
|
+
if start is not None and end is not None:
|
189
|
+
if end - start != self.chunk_shape[i]:
|
190
|
+
raise ValueError(
|
191
|
+
"Invalid (start, end)=(%d, %d) for sub-region (dimension %d): chunk shape is %s, but %d-%d=%d != %d"
|
192
|
+
% (start, end, i, str(self.chunk_shape), end, start, end - start, self.chunk_shape[i])
|
193
|
+
)
|
194
|
+
#
|
195
|
+
self.logger.debug("Set sub-region to %s" % (str(sub_region)))
|
196
|
+
self.sub_region = sub_region
|
197
|
+
self._sub_region_xz = sub_region[2] + sub_region[1]
|
198
|
+
|
199
|
+
def _set_extra_options(self, extra_options):
|
200
|
+
self.extra_options = self._default_extra_options.copy()
|
201
|
+
self.extra_options.update(extra_options or {})
|
202
|
+
|
203
|
+
#
|
204
|
+
# Callbacks
|
205
|
+
#
|
206
|
+
|
207
|
+
def register_callback(self, step_name, callback):
|
208
|
+
"""
|
209
|
+
Register a callback for a pipeline processing step.
|
210
|
+
|
211
|
+
Parameters
|
212
|
+
----------
|
213
|
+
step_name: str
|
214
|
+
processing step name
|
215
|
+
callback: callable
|
216
|
+
A function. It will be executed once the processing step `step_name`
|
217
|
+
is finished. The function takes only one argument: the class instance.
|
218
|
+
"""
|
219
|
+
if step_name not in self.processing_steps:
|
220
|
+
raise ValueError("'%s' is not in processing steps %s" % (step_name, self.processing_steps))
|
221
|
+
if step_name in self._callbacks:
|
222
|
+
self._callbacks[step_name].append(callback)
|
223
|
+
else:
|
224
|
+
self._callbacks[step_name] = [callback]
|
225
|
+
|
226
|
+
#
|
227
|
+
# Memory management
|
228
|
+
#
|
229
|
+
|
230
|
+
def _allocate_array(self, shape, dtype, name=None):
|
231
|
+
return np.zeros(shape, dtype=dtype)
|
232
|
+
|
233
|
+
def _allocate_recs(self, ny, nx, n_slices=None):
|
234
|
+
n_slices = n_slices or self.n_slices
|
235
|
+
self.recs = self._allocate_array((n_slices, ny, nx), "f", name="recs")
|
236
|
+
|
237
|
+
#
|
238
|
+
# Runtime attributes
|
239
|
+
#
|
240
|
+
|
241
|
+
@property
|
242
|
+
def sub_region_xz(self):
|
243
|
+
"""
|
244
|
+
Return the currently processed sub-region in the form
|
245
|
+
(start_x, end_x, start_z, end_z)
|
246
|
+
"""
|
247
|
+
return self._sub_region_xz
|
248
|
+
|
249
|
+
@property
|
250
|
+
def z_min(self):
|
251
|
+
return self._sub_region_xz[2]
|
252
|
+
|
253
|
+
@property
|
254
|
+
def sino_shape(self):
|
255
|
+
return self.process_config.sino_shape(binning=True, subsampling=True)
|
256
|
+
|
257
|
+
@property
|
258
|
+
def sinos_shape(self):
|
259
|
+
return (self.n_slices,) + self.sino_shape
|
260
|
+
|
261
|
+
def get_slice_start_index(self):
|
262
|
+
return self.z_min + self._margin_up
|
263
|
+
|
264
|
+
#
|
265
|
+
# Pipeline initialization
|
266
|
+
#
|
267
|
+
|
268
|
+
def _init_pipeline(self):
|
269
|
+
self._allocate_radios()
|
270
|
+
self._init_data_dump()
|
271
|
+
self._init_reader()
|
272
|
+
self._init_flatfield()
|
273
|
+
self._init_double_flatfield()
|
274
|
+
self._init_ccd_corrections()
|
275
|
+
self._init_radios_rotation()
|
276
|
+
self._init_phase()
|
277
|
+
self._init_unsharp()
|
278
|
+
self._init_radios_movements()
|
279
|
+
self._init_mlog()
|
280
|
+
self._init_sino_normalization()
|
281
|
+
self._init_sino_rings_correction()
|
282
|
+
self._init_reconstruction()
|
283
|
+
self._init_histogram()
|
284
|
+
self._init_writer()
|
285
|
+
|
286
|
+
def _allocate_radios(self):
|
287
|
+
self.radios = np.zeros(self.radios_shape, dtype=np.float32)
|
288
|
+
self.data = self.radios # alias
|
289
|
+
|
290
|
+
def _init_data_dump(self):
|
291
|
+
self._resume_from_step = self.processing_options["read_chunk"].get("step_name", None)
|
292
|
+
self.datadump_manager = DataDumpManager(
|
293
|
+
self.process_config, self.sub_region, margin=self.margin, logger=self.logger
|
294
|
+
)
|
295
|
+
# When using "grouped processing", sinogram has to be dumped.
|
296
|
+
# If it was not specified by user, force sinogram dump
|
297
|
+
# Perhaps these lines should be moved directly to DataDumpManager.
|
298
|
+
if self._grouped_processing and not self.process_config.dump_sinogram:
|
299
|
+
sino_dump_fname = self.process_config.get_save_steps_file("sinogram")
|
300
|
+
self.datadump_manager._configure_dump("sinogram", force_dump_to_fname=sino_dump_fname)
|
301
|
+
self.logger.debug("Will dump sinogram to %s" % self.datadump_manager.data_dump["sinogram"].fname)
|
302
|
+
|
303
|
+
@use_options("read_chunk", "chunk_reader")
|
304
|
+
def _init_reader(self):
|
305
|
+
options = self.processing_options["read_chunk"]
|
306
|
+
self._update_reader_configuration()
|
307
|
+
|
308
|
+
process_file = options.get("process_file", None)
|
309
|
+
if process_file is None:
|
310
|
+
# Standard case - start pipeline from raw data
|
311
|
+
if self.process_config.nabu_config["preproc"]["detector_distortion_correction"] is None:
|
312
|
+
self.detector_corrector = None
|
313
|
+
else:
|
314
|
+
self.detector_corrector = DetectorDistortionProvider(
|
315
|
+
detector_full_shape_vh=self.process_config.dataset_info.radio_dims[::-1],
|
316
|
+
correction_type=self.process_config.nabu_config["preproc"]["detector_distortion_correction"],
|
317
|
+
options=self.process_config.nabu_config["preproc"]["detector_distortion_correction_options"],
|
318
|
+
)
|
319
|
+
# ChunkReader always take a non-subsampled dictionary "files".
|
320
|
+
self.chunk_reader = ChunkReader(
|
321
|
+
self._read_options["files"],
|
322
|
+
sub_region=self.sub_region_xz,
|
323
|
+
data_buffer=self.radios,
|
324
|
+
pre_allocate=False,
|
325
|
+
detector_corrector=self.detector_corrector,
|
326
|
+
convert_float=True,
|
327
|
+
binning=options["binning"],
|
328
|
+
dataset_subsampling=options["dataset_subsampling"],
|
329
|
+
)
|
330
|
+
else:
|
331
|
+
# Resume pipeline from dumped intermediate step
|
332
|
+
self.chunk_reader = HDF5Loader(
|
333
|
+
process_file,
|
334
|
+
options["process_h5_path"],
|
335
|
+
sub_region=self.datadump_manager.get_read_dump_subregion(),
|
336
|
+
data_buffer=self.radios,
|
337
|
+
pre_allocate=False,
|
338
|
+
)
|
339
|
+
self._resume_from_step = options["step_name"]
|
340
|
+
self.logger.debug(
|
341
|
+
"Load subregion %s from file %s" % (str(self.chunk_reader.sub_region), self.chunk_reader.fname)
|
342
|
+
)
|
343
|
+
|
344
|
+
def _update_reader_configuration(self):
|
345
|
+
"""
|
346
|
+
Modify self.processing_options["read_chunk"] to select a subset of the files, if needed
|
347
|
+
(i.e when processing only a subset of the images stack)
|
348
|
+
"""
|
349
|
+
self._read_options = self.processing_options["read_chunk"].copy()
|
350
|
+
if self.n_angles == self.process_config.n_angles(subsampling=True):
|
351
|
+
# Nothing to do if the full angular range is processed in one shot
|
352
|
+
return
|
353
|
+
if self._resume_from_step is not None:
|
354
|
+
if self._resume_from_step == "sinogram":
|
355
|
+
msg = "It makes no sense to use 'grouped processing' when resuming from sinogram"
|
356
|
+
self.logger.fatal(msg)
|
357
|
+
raise ValueError(msg)
|
358
|
+
# Nothing to do if we resume the processing from a given step
|
359
|
+
return
|
360
|
+
input_data_files = {}
|
361
|
+
files_indices = sorted(self._read_options["files"].keys())
|
362
|
+
angle_idx_start, angle_idx_end = self.sub_region[0]
|
363
|
+
for i in range(angle_idx_start, angle_idx_end):
|
364
|
+
idx = files_indices[i]
|
365
|
+
input_data_files[idx] = self._read_options["files"][idx]
|
366
|
+
self._read_options["files"] = input_data_files
|
367
|
+
|
368
|
+
@use_options("flatfield", "flatfield")
|
369
|
+
def _init_flatfield(self):
|
370
|
+
self._ff_options = self.processing_options["flatfield"].copy()
|
371
|
+
# Use chunk_reader.files instead of process_config.projs_indices(subsampling=True), because
|
372
|
+
# chunk_reader might read only a subset of the files (in "grouped mode")
|
373
|
+
self._ff_options["projs_indices"] = list(self.chunk_reader.files_subsampled.keys())
|
374
|
+
if self._ff_options.get("normalize_srcurrent", False):
|
375
|
+
a_start_idx, a_end_idx = self.sub_region[0]
|
376
|
+
subs = self.process_config.subsampling_factor
|
377
|
+
self._ff_options["radios_srcurrent"] = self._ff_options["radios_srcurrent"][a_start_idx:a_end_idx:subs]
|
378
|
+
|
379
|
+
distortion_correction = None
|
380
|
+
if self._ff_options["do_flat_distortion"]:
|
381
|
+
self.logger.info("Flats distortion correction will be applied")
|
382
|
+
self.FlatFieldClass = FlatFieldDataUrls # no GPU implementation available, force this backend
|
383
|
+
estimation_kwargs = {}
|
384
|
+
estimation_kwargs.update(self._ff_options["flat_distortion_params"])
|
385
|
+
estimation_kwargs["logger"] = self.logger
|
386
|
+
distortion_correction = DistortionCorrection(
|
387
|
+
estimation_method="fft-correlation", estimation_kwargs=estimation_kwargs, correction_method="interpn"
|
388
|
+
)
|
389
|
+
|
390
|
+
# FlatField parameter "radios_indices" must account for subsampling
|
391
|
+
self.flatfield = self.FlatFieldClass(
|
392
|
+
self.radios_shape,
|
393
|
+
flats=self.dataset_info.flats,
|
394
|
+
darks=self.dataset_info.darks,
|
395
|
+
radios_indices=self._ff_options["projs_indices"],
|
396
|
+
interpolation="linear",
|
397
|
+
distortion_correction=distortion_correction,
|
398
|
+
sub_region=self.sub_region_xz,
|
399
|
+
detector_corrector=self.detector_corrector,
|
400
|
+
binning=self._ff_options["binning"],
|
401
|
+
radios_srcurrent=self._ff_options["radios_srcurrent"],
|
402
|
+
flats_srcurrent=self._ff_options["flats_srcurrent"],
|
403
|
+
convert_float=True,
|
404
|
+
)
|
405
|
+
|
406
|
+
@use_options("double_flatfield", "double_flatfield")
|
407
|
+
def _init_double_flatfield(self):
|
408
|
+
options = self.processing_options["double_flatfield"]
|
409
|
+
avg_is_on_log = options["sigma"] is not None
|
410
|
+
result_url = None
|
411
|
+
if options["processes_file"] not in (None, ""):
|
412
|
+
result_url = DataUrl(
|
413
|
+
file_path=options["processes_file"],
|
414
|
+
data_path=(self.dataset_info.hdf5_entry or "entry") + "/double_flatfield/results/data",
|
415
|
+
)
|
416
|
+
self.logger.info("Loading double flatfield from %s" % result_url.file_path())
|
417
|
+
if (self.n_angles < self.process_config.n_angles(subsampling=True)) and result_url is None:
|
418
|
+
raise ValueError(
|
419
|
+
"Cannot use double-flatfield when processing subset of radios. Please use the 'nabu-double-flatfield' command"
|
420
|
+
)
|
421
|
+
self.double_flatfield = self.DoubleFlatFieldClass(
|
422
|
+
self.radios_shape,
|
423
|
+
result_url=result_url,
|
424
|
+
sub_region=self.sub_region_xz,
|
425
|
+
detector_corrector=self.detector_corrector,
|
426
|
+
input_is_mlog=False,
|
427
|
+
output_is_mlog=False,
|
428
|
+
average_is_on_log=avg_is_on_log,
|
429
|
+
sigma_filter=options["sigma"],
|
430
|
+
log_clip_min=options["log_min_clip"],
|
431
|
+
log_clip_max=options["log_max_clip"],
|
432
|
+
)
|
433
|
+
|
434
|
+
@use_options("ccd_correction", "ccd_correction")
|
435
|
+
def _init_ccd_corrections(self):
|
436
|
+
options = self.processing_options["ccd_correction"]
|
437
|
+
self.ccd_correction = self.CCDCorrectionClass(
|
438
|
+
self.radios_shape[1:], median_clip_thresh=options["median_clip_thresh"]
|
439
|
+
)
|
440
|
+
|
441
|
+
@use_options("rotate_projections", "projs_rot")
|
442
|
+
def _init_radios_rotation(self):
|
443
|
+
options = self.processing_options["rotate_projections"]
|
444
|
+
center = options["center"]
|
445
|
+
if center is None:
|
446
|
+
nx, ny = self.radios_shape[1:][::-1] # after binning
|
447
|
+
center = (nx / 2 - 0.5, ny / 2 - 0.5)
|
448
|
+
center = (center[0], center[1] - self.z_min)
|
449
|
+
self.projs_rot = self.ImageRotationClass(
|
450
|
+
self.radios_shape[1:], options["angle"], center=center, mode="edge", reshape=False
|
451
|
+
)
|
452
|
+
self._tmp_rotated_radio = self._allocate_array(self.radios_shape[1:], "f", name="tmp_rotated_radio")
|
453
|
+
|
454
|
+
@use_options("radios_movements", "radios_movements")
|
455
|
+
def _init_radios_movements(self):
|
456
|
+
options = self.processing_options["radios_movements"]
|
457
|
+
self._vertical_shifts = options["translation_movements"][:, 1]
|
458
|
+
self.radios_movements = self.VerticalShiftClass(self.radios.shape, self._vertical_shifts)
|
459
|
+
|
460
|
+
@use_options("phase", "phase_retrieval")
|
461
|
+
def _init_phase(self):
|
462
|
+
options = self.processing_options["phase"]
|
463
|
+
if options["method"] == "CTF":
|
464
|
+
translations_vh = getattr(self.dataset_info, "ctf_translations", None)
|
465
|
+
geo_pars_params = options["ctf_geo_pars"].copy()
|
466
|
+
geo_pars_params["logger"] = self.logger
|
467
|
+
geo_pars = GeoPars(**geo_pars_params)
|
468
|
+
self.phase_retrieval = self.CTFPhaseRetrievalClass(
|
469
|
+
self.radios_shape[1:],
|
470
|
+
geo_pars,
|
471
|
+
options["delta_beta"],
|
472
|
+
lim1=options["ctf_lim1"],
|
473
|
+
lim2=options["ctf_lim2"],
|
474
|
+
logger=self.logger,
|
475
|
+
fft_num_threads=None, # TODO tune in advanced params of nabu config file
|
476
|
+
use_rfft=True,
|
477
|
+
normalize_by_mean=options["ctf_normalize_by_mean"],
|
478
|
+
translation_vh=translations_vh,
|
479
|
+
)
|
480
|
+
else:
|
481
|
+
self.phase_retrieval = self.PaganinPhaseRetrievalClass(
|
482
|
+
self.radios_shape[1:],
|
483
|
+
distance=options["distance_m"],
|
484
|
+
energy=options["energy_kev"],
|
485
|
+
delta_beta=options["delta_beta"],
|
486
|
+
pixel_size=options["pixel_size_m"],
|
487
|
+
padding=options["padding_type"],
|
488
|
+
# TODO tune in advanced params of nabu config file
|
489
|
+
fft_num_threads=None,
|
490
|
+
)
|
491
|
+
|
492
|
+
@use_options("unsharp_mask", "unsharp_mask")
|
493
|
+
def _init_unsharp(self):
|
494
|
+
options = self.processing_options["unsharp_mask"]
|
495
|
+
self.unsharp_mask = self.UnsharpMaskClass(
|
496
|
+
self.radios_shape[1:],
|
497
|
+
options["unsharp_sigma"],
|
498
|
+
options["unsharp_coeff"],
|
499
|
+
mode="reflect",
|
500
|
+
method=options["unsharp_method"],
|
501
|
+
)
|
502
|
+
|
503
|
+
@use_options("take_log", "mlog")
|
504
|
+
def _init_mlog(self):
|
505
|
+
options = self.processing_options["take_log"]
|
506
|
+
self.mlog = self.MLogClass(
|
507
|
+
self.radios_shape, clip_min=options["log_min_clip"], clip_max=options["log_max_clip"]
|
508
|
+
)
|
509
|
+
|
510
|
+
@use_options("sino_normalization", "sino_normalization")
|
511
|
+
def _init_sino_normalization(self):
|
512
|
+
options = self.processing_options["sino_normalization"]
|
513
|
+
self.sino_normalization = self.SinoNormalizationClass(
|
514
|
+
kind=options["method"],
|
515
|
+
radios_shape=self.radios_cropped_shape,
|
516
|
+
normalization_array=options["normalization_array"],
|
517
|
+
)
|
518
|
+
|
519
|
+
@use_options("sino_rings_correction", "sino_deringer")
|
520
|
+
def _init_sino_rings_correction(self):
|
521
|
+
n_a, n_z, n_x = self.radios_cropped_shape
|
522
|
+
sinos_shape = (n_z, n_a, n_x)
|
523
|
+
options = self.processing_options["sino_rings_correction"]
|
524
|
+
|
525
|
+
destriper_params = extract_parameters(options["user_options"])
|
526
|
+
if options["method"] == "munch":
|
527
|
+
# TODO MunchDeringer does not have an API consistent with the other deringers
|
528
|
+
fw_sigma = destriper_params.pop("sigma", 1.0)
|
529
|
+
self.sino_deringer = self.MunchDeringerClass(fw_sigma, sinos_shape, **destriper_params)
|
530
|
+
elif options["method"] == "vo":
|
531
|
+
self.sino_deringer = self.VoDeringerClass(sinos_shape, **destriper_params)
|
532
|
+
elif options["method"] == "mean-subtraction":
|
533
|
+
self.sino_deringer = self.SinoMeanDeringerClass(
|
534
|
+
sinos_shape, mode="subtract", fft_num_threads=None, **destriper_params
|
535
|
+
)
|
536
|
+
elif options["method"] == "mean-division":
|
537
|
+
self.sino_deringer = self.SinoMeanDeringerClass(
|
538
|
+
sinos_shape, mode="divide", fft_num_threads=None, **destriper_params
|
539
|
+
)
|
540
|
+
|
541
|
+
@use_options("reconstruction", "reconstruction")
|
542
|
+
def _init_reconstruction(self):
|
543
|
+
options = self.processing_options["reconstruction"]
|
544
|
+
if options["method"] == "FBP" and self.FBPClass is None:
|
545
|
+
raise ValueError("No usable FBP module was found")
|
546
|
+
if options["method"] == "cone" and self.ConebeamClass is None:
|
547
|
+
raise ValueError("No usable cone-beam module was found")
|
548
|
+
|
549
|
+
if options["method"] == "FBP":
|
550
|
+
n_slices = self.n_slices
|
551
|
+
radios_shape_for_sino_builder = self.radios_cropped_shape
|
552
|
+
self.reconstruction = self.FBPClass(
|
553
|
+
self.sinos_shape[1:],
|
554
|
+
angles=options["angles"],
|
555
|
+
rot_center=options["rotation_axis_position"],
|
556
|
+
filter_name=options["fbp_filter_type"] or "none",
|
557
|
+
halftomo=options["enable_halftomo"],
|
558
|
+
slice_roi=self.process_config.rec_roi,
|
559
|
+
padding_mode=options["padding_type"],
|
560
|
+
extra_options={
|
561
|
+
"scale_factor": 1.0 / options["voxel_size_cm"][0],
|
562
|
+
"axis_correction": options["axis_correction"],
|
563
|
+
"centered_axis": options["centered_axis"],
|
564
|
+
"clip_outer_circle": options["clip_outer_circle"],
|
565
|
+
"filter_cutoff": options["fbp_filter_cutoff"],
|
566
|
+
},
|
567
|
+
)
|
568
|
+
|
569
|
+
if options["method"] == "cone":
|
570
|
+
radios_shape_for_sino_builder = self.radios_shape
|
571
|
+
n_slices = self.n_slices + sum(self.margin[0])
|
572
|
+
# For numerical stability, normalize all lengths with respect to detector pixel size
|
573
|
+
pixel_size_m = self.dataset_info.pixel_size * 1e-6
|
574
|
+
source_sample_dist = options["source_sample_dist"] / pixel_size_m
|
575
|
+
sample_detector_dist = options["sample_detector_dist"] / pixel_size_m
|
576
|
+
self.reconstruction = self.ConebeamClass( # pylint: disable=E1102
|
577
|
+
(self.radios_shape[1],) + self.sino_shape,
|
578
|
+
source_sample_dist,
|
579
|
+
sample_detector_dist,
|
580
|
+
angles=options["angles"],
|
581
|
+
# TODO one center for each angle to handle "x translations"
|
582
|
+
rot_center=options["rotation_axis_position"],
|
583
|
+
pixel_size=1,
|
584
|
+
)
|
585
|
+
|
586
|
+
self._allocate_recs(*self.process_config.rec_shape, n_slices=n_slices)
|
587
|
+
n_a, _, n_x = self.radios_cropped_shape
|
588
|
+
self._tmp_sino = self._allocate_array((n_a, n_x), "f", name="tmp_sino")
|
589
|
+
if options["method"] == "cone":
|
590
|
+
self.sinos = self._allocate_array(self.sino_builder.output_shape, "f", name="sinos")
|
591
|
+
|
592
|
+
@use_options("histogram", "histogram")
|
593
|
+
def _init_histogram(self):
|
594
|
+
options = self.processing_options["histogram"]
|
595
|
+
self.histogram = self.HistogramClass(method="fixed_bins_number", num_bins=options["histogram_bins"])
|
596
|
+
|
597
|
+
@use_options("save", "writer")
|
598
|
+
def _init_writer(self, **extra_options):
|
599
|
+
options = self.processing_options["save"]
|
600
|
+
metadata = {
|
601
|
+
"process_name": "reconstruction",
|
602
|
+
"processing_index": 0,
|
603
|
+
# TODO this one takes too much time to write, not useful for partial files
|
604
|
+
# "processing_options": self.processing_options,
|
605
|
+
#
|
606
|
+
"nabu_config": self.process_config.nabu_config,
|
607
|
+
"entry": getattr(self.dataset_info.dataset_scanner, "entry", "entry"),
|
608
|
+
}
|
609
|
+
writer_extra_options = {
|
610
|
+
"jpeg2000_compression_ratio": options["jpeg2000_compression_ratio"],
|
611
|
+
"float_clip_values": options["float_clip_values"],
|
612
|
+
"tiff_single_file": options.get("tiff_single_file", False),
|
613
|
+
"single_output_file_initialized": getattr(self.process_config, "single_output_file_initialized", False),
|
614
|
+
"raw_vol_metadata": {"voxelSize": self.dataset_info.pixel_size}, # legacy...
|
615
|
+
}
|
616
|
+
writer_extra_options.update(extra_options)
|
617
|
+
self.writer = WriterManager(
|
618
|
+
options["location"],
|
619
|
+
options["file_prefix"],
|
620
|
+
file_format=options["file_format"],
|
621
|
+
overwrite=options["overwrite"],
|
622
|
+
start_index=self.get_slice_start_index(),
|
623
|
+
logger=self.logger,
|
624
|
+
metadata=metadata,
|
625
|
+
histogram=("histogram" in self.processing_steps),
|
626
|
+
extra_options=writer_extra_options,
|
627
|
+
)
|
628
|
+
|
629
|
+
#
|
630
|
+
# Pipeline execution
|
631
|
+
#
|
632
|
+
|
633
|
+
@pipeline_step("chunk_reader", "Reading data")
|
634
|
+
def _read_data(self):
|
635
|
+
self.logger.debug("Region = %s" % str(self.sub_region))
|
636
|
+
t0 = time()
|
637
|
+
self.chunk_reader.load_data()
|
638
|
+
el = time() - t0
|
639
|
+
shp = self.chunk_reader.data.shape
|
640
|
+
self.logger.info("Read subvolume %s in %.2f s" % (str(shp), el))
|
641
|
+
|
642
|
+
@pipeline_step("flatfield", "Applying flat-field")
|
643
|
+
def _flatfield(self):
|
644
|
+
self.flatfield.normalize_radios(self.radios)
|
645
|
+
|
646
|
+
@pipeline_step("double_flatfield", "Applying double flat-field")
|
647
|
+
def _double_flatfield(self, radios=None):
|
648
|
+
if radios is None:
|
649
|
+
radios = self.radios
|
650
|
+
self.double_flatfield.apply_double_flatfield(radios)
|
651
|
+
|
652
|
+
@pipeline_step("ccd_correction", "Applying CCD corrections")
|
653
|
+
def _ccd_corrections(self, radios=None):
|
654
|
+
if radios is None:
|
655
|
+
radios = self.radios
|
656
|
+
_tmp_radio = self._allocate_array(radios.shape[1:], "f", name="tmp_ccdcorr_radio")
|
657
|
+
for i in range(radios.shape[0]):
|
658
|
+
self.ccd_correction.median_clip_correction(radios[i], output=_tmp_radio)
|
659
|
+
radios[i][:] = _tmp_radio[:]
|
660
|
+
|
661
|
+
@pipeline_step("projs_rot", "Rotating projections")
|
662
|
+
def _rotate_projections(self, radios=None):
|
663
|
+
if radios is None:
|
664
|
+
radios = self.radios
|
665
|
+
tmp_radio = self._tmp_rotated_radio
|
666
|
+
for i in range(radios.shape[0]):
|
667
|
+
self.projs_rot.rotate(radios[i], output=tmp_radio)
|
668
|
+
radios[i][:] = tmp_radio[:]
|
669
|
+
|
670
|
+
@pipeline_step("phase_retrieval", "Performing phase retrieval")
|
671
|
+
def _retrieve_phase(self):
|
672
|
+
for i in range(self.radios.shape[0]):
|
673
|
+
self.phase_retrieval.retrieve_phase(self.radios[i], output=self.radios[i])
|
674
|
+
|
675
|
+
@pipeline_step("unsharp_mask", "Performing unsharp mask")
|
676
|
+
def _apply_unsharp(self):
|
677
|
+
for i in range(self.radios.shape[0]):
|
678
|
+
self.radios[i] = self.unsharp_mask.unsharp(self.radios[i])
|
679
|
+
|
680
|
+
@pipeline_step("mlog", "Taking logarithm")
|
681
|
+
def _take_log(self):
|
682
|
+
self.mlog.take_logarithm(self.radios)
|
683
|
+
|
684
|
+
@pipeline_step("radios_movements", "Applying radios movements")
|
685
|
+
def _radios_movements(self, radios=None):
|
686
|
+
if radios is None:
|
687
|
+
radios = self.radios
|
688
|
+
self.radios_movements.apply_vertical_shifts(radios, list(range(radios.shape[0])))
|
689
|
+
|
690
|
+
def _crop_radios(self):
|
691
|
+
if self.use_margin:
|
692
|
+
self._orig_radios = self.radios
|
693
|
+
if self.processing_options.get("reconstruction", {}).get("method", None) == "cone":
|
694
|
+
return
|
695
|
+
((U, D), (L, R)) = self.margin
|
696
|
+
self.logger.debug(
|
697
|
+
"Cropping radios from %s to %s" % (str(self.radios_shape), str(self.radios_cropped_shape))
|
698
|
+
)
|
699
|
+
U, D, L, R = U or None, -D or None, L or None, -R or None
|
700
|
+
self.radios = self.radios[:, U:D, L:R] # view
|
701
|
+
|
702
|
+
@pipeline_step("sino_normalization", "Normalizing sinograms")
|
703
|
+
def _normalize_sinos(self, radios=None):
|
704
|
+
if radios is None:
|
705
|
+
radios = self.radios
|
706
|
+
sinos = radios.transpose((1, 0, 2))
|
707
|
+
self.sino_normalization.normalize(sinos)
|
708
|
+
|
709
|
+
def _dump_sinogram(self):
|
710
|
+
if self.datadump_manager is not None:
|
711
|
+
self.datadump_manager.dump_data_to_file("sinogram", self.radios)
|
712
|
+
|
713
|
+
@pipeline_step("sino_deringer", "Removing rings on sinograms")
|
714
|
+
def _destripe_sinos(self):
|
715
|
+
sinos = np.rollaxis(self.radios, 1, 0) # view
|
716
|
+
self.sino_deringer.remove_rings(sinos) # TODO check it works with non-contiguous view
|
717
|
+
|
718
|
+
@pipeline_step("reconstruction", "Reconstruction")
|
719
|
+
def _reconstruct(self):
|
720
|
+
"""
|
721
|
+
Reconstruction for parallel geometry.
|
722
|
+
For each target slice: get the corresponding sinogram, apply some processing, then reconstruct
|
723
|
+
"""
|
724
|
+
options = self.processing_options["reconstruction"]
|
725
|
+
if options["method"] == "cone":
|
726
|
+
self._reconstruct_cone()
|
727
|
+
return
|
728
|
+
|
729
|
+
for i in range(self.n_slices):
|
730
|
+
self._tmp_sino[:] = self.radios[:, i, :] # copy into contiguous array
|
731
|
+
self.reconstruction.fbp(self._tmp_sino, output=self.recs[i])
|
732
|
+
|
733
|
+
def _reconstruct_cone(self):
|
734
|
+
"""
|
735
|
+
This reconstructs the entire sinograms stack at once
|
736
|
+
"""
|
737
|
+
self.sino_builder.get_sinos(self.radios, output=self.sinos)
|
738
|
+
z_min, z_max = self.sub_region_xz[2:]
|
739
|
+
n_z = self.process_config.radio_shape(binning=True)[0]
|
740
|
+
|
741
|
+
self.reconstruction.reconstruct( # pylint: disable=E1101
|
742
|
+
self.sinos,
|
743
|
+
output=self.recs,
|
744
|
+
relative_z_position=((z_min + z_max) / self.process_config.binning_z / 2) - n_z / 2,
|
745
|
+
)
|
746
|
+
|
747
|
+
@pipeline_step("histogram", "Computing histogram")
|
748
|
+
def _compute_histogram(self, data=None):
|
749
|
+
if data is None:
|
750
|
+
data = self.recs
|
751
|
+
self.recs_histogram = self.histogram.compute_histogram(data)
|
752
|
+
|
753
|
+
@pipeline_step("writer", "Saving data")
|
754
|
+
def _write_data(self, data=None):
|
755
|
+
if data is None and self.reconstruction is not None:
|
756
|
+
data = self.recs
|
757
|
+
if data is None:
|
758
|
+
self.logger.info("No data to write")
|
759
|
+
return
|
760
|
+
self.writer.write_data(data)
|
761
|
+
self.logger.info("Wrote %s" % self.writer.fname)
|
762
|
+
self._write_histogram()
|
763
|
+
self.process_config.single_output_file_initialized = True
|
764
|
+
|
765
|
+
def _write_histogram(self):
|
766
|
+
if "histogram" not in self.processing_steps:
|
767
|
+
return
|
768
|
+
self.logger.info("Saving histogram")
|
769
|
+
self.writer.write_histogram(
|
770
|
+
hist_as_2Darray(self.recs_histogram),
|
771
|
+
processing_index=1,
|
772
|
+
config={
|
773
|
+
"file": path.basename(self.writer.fname),
|
774
|
+
"bins": self.processing_options["histogram"]["histogram_bins"],
|
775
|
+
},
|
776
|
+
)
|
777
|
+
|
778
|
+
def _process_finalize(self):
|
779
|
+
if self.use_margin:
|
780
|
+
self.radios = self._orig_radios
|
781
|
+
|
782
|
+
def __repr__(self):
|
783
|
+
res = "%s(%s, margin=%s)" % (self.__class__.__name__, str(self.chunk_shape), str(self.margin))
|
784
|
+
binning = self.process_config.binning
|
785
|
+
subsampling = self.process_config.subsampling_factor
|
786
|
+
|
787
|
+
if binning != (1, 1) or subsampling > 1:
|
788
|
+
if binning != (1, 1):
|
789
|
+
res += "\nImages binning: %s" % (str(binning))
|
790
|
+
if subsampling:
|
791
|
+
res += "\nAngles subsampling: %d" % subsampling
|
792
|
+
res += "\nRadios chunk: %s ---> %s" % (self.chunk_shape, self.radios_shape)
|
793
|
+
|
794
|
+
if self.use_margin:
|
795
|
+
res += "\nMargin: %s" % (str(self.margin))
|
796
|
+
res += "\nRadios chunk: %s ---> %s" % (str(self.radios_shape), str(self.radios_cropped_shape))
|
797
|
+
|
798
|
+
res += "\nCurrent subregion: %s" % (str(self.sub_region))
|
799
|
+
for step_name in self.processing_steps:
|
800
|
+
res += "\n- %s" % (step_name)
|
801
|
+
return res
|
802
|
+
|
803
|
+
def _process_chunk(self):
|
804
|
+
self._flatfield()
|
805
|
+
self._double_flatfield()
|
806
|
+
self._ccd_corrections()
|
807
|
+
self._rotate_projections()
|
808
|
+
self._retrieve_phase()
|
809
|
+
self._apply_unsharp()
|
810
|
+
self._take_log()
|
811
|
+
self._radios_movements()
|
812
|
+
self._crop_radios()
|
813
|
+
self._normalize_sinos()
|
814
|
+
self._destripe_sinos()
|
815
|
+
self._dump_sinogram()
|
816
|
+
self._reconstruct()
|
817
|
+
self._compute_histogram()
|
818
|
+
self._write_data()
|
819
|
+
self._process_finalize()
|
820
|
+
|
821
|
+
def _reset_reader_subregion(self):
|
822
|
+
if self._resume_from_step is None:
|
823
|
+
# Normal mode - read data from raw radios
|
824
|
+
self.chunk_reader._set_subregion(self.sub_region_xz)
|
825
|
+
self.chunk_reader._init_reader()
|
826
|
+
self.chunk_reader._loaded = False
|
827
|
+
else:
|
828
|
+
# Resume from a checkpoint. In this case, we have to re-initialize "datadump manager"
|
829
|
+
# sooner to configure start_xyz, end_xyz
|
830
|
+
self._init_data_dump()
|
831
|
+
self.chunk_reader._set_subregion(self.datadump_manager.get_read_dump_subregion())
|
832
|
+
self.chunk_reader._loaded = False
|
833
|
+
if self._grouped_processing:
|
834
|
+
self._update_reader_configuration()
|
835
|
+
self.chunk_reader._set_files(self._read_options["files"])
|
836
|
+
|
837
|
+
def _reset_sub_region(self, sub_region):
|
838
|
+
self.set_subregion(sub_region)
|
839
|
+
# When sub_region is changed, all components involving files reading have to be updated
|
840
|
+
self._reset_reader_subregion()
|
841
|
+
self._init_flatfield() # reset flatfield
|
842
|
+
self._init_writer()
|
843
|
+
self._init_double_flatfield()
|
844
|
+
self._init_data_dump()
|
845
|
+
|
846
|
+
def process_chunk(self, sub_region):
|
847
|
+
self._reset_sub_region(sub_region)
|
848
|
+
self._read_data()
|
849
|
+
self._process_chunk()
|