nabu 2024.1.0rc4__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/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/io/cast_volume.py +10 -2
- nabu/stitching/config.py +2 -2
- nabu/stitching/z_stitching.py +3 -1
- {nabu-2024.1.0rc4.dist-info → nabu-2024.1.1.dist-info}/METADATA +1 -1
- nabu-2024.1.1.dist-info/RECORD +2375 -0
- {nabu-2024.1.0rc4.dist-info → nabu-2024.1.1.dist-info}/WHEEL +1 -1
- nabu-2024.1.1.dist-info/top_level.txt +4 -0
- nabu-2024.1.0rc4.dist-info/RECORD +0 -296
- nabu-2024.1.0rc4.dist-info/top_level.txt +0 -2
- {nabu/app/tests → build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app}/__init__.py +0 -0
- {nabu-2024.1.0rc4.dist-info → nabu-2024.1.1.dist-info}/LICENSE +0 -0
- {nabu-2024.1.0rc4.dist-info → nabu-2024.1.1.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,626 @@
|
|
1
|
+
from tempfile import mkdtemp
|
2
|
+
import os
|
3
|
+
import numpy as np
|
4
|
+
import pytest
|
5
|
+
from silx.io.url import DataUrl
|
6
|
+
from silx.io import get_data
|
7
|
+
from silx.io.dictdump import dicttoh5
|
8
|
+
from nabu.cuda.utils import get_cuda_context, __has_pycuda__
|
9
|
+
from nabu.preproc.flatfield import FlatField, FlatFieldDataUrls
|
10
|
+
|
11
|
+
if __has_pycuda__:
|
12
|
+
import pycuda.gpuarray as garray
|
13
|
+
from nabu.preproc.flatfield_cuda import CudaFlatFieldDataUrls, CudaFlatField
|
14
|
+
|
15
|
+
|
16
|
+
# Flats values should be O(k) so that linear interpolation between flats gives exact results
|
17
|
+
flatfield_tests_cases = {
|
18
|
+
"simple_nearest_interp": {
|
19
|
+
"image_shape": (100, 512),
|
20
|
+
"radios_values": np.arange(10) + 1,
|
21
|
+
"radios_indices": None,
|
22
|
+
"flats_values": [0.5],
|
23
|
+
"flats_indices": [1],
|
24
|
+
"darks_values": [1],
|
25
|
+
"darks_indices": [0],
|
26
|
+
"expected_result": np.arange(0, -2 * 10, -2),
|
27
|
+
},
|
28
|
+
"two_flats_no_radios_indices": {
|
29
|
+
"image_shape": (100, 512),
|
30
|
+
"radios_values": np.arange(10) + 1,
|
31
|
+
"radios_indices": None,
|
32
|
+
"flats_values": [2, 11],
|
33
|
+
"flats_indices": [0, 9],
|
34
|
+
"darks_values": [1],
|
35
|
+
"darks_indices": [0],
|
36
|
+
"expected_result": np.arange(10) / (np.arange(10) + 1),
|
37
|
+
},
|
38
|
+
"two_flats_with_radios_indices": {
|
39
|
+
# Type D F R R R F
|
40
|
+
# IDX 0 1 2 3 4 5
|
41
|
+
# Value 1 4 9 16 25 8
|
42
|
+
# F_interp 5 6 7
|
43
|
+
"image_shape": (16, 17),
|
44
|
+
# R_k = (k + 1)**2
|
45
|
+
"radios_values": [9, 16, 25],
|
46
|
+
"radios_indices": [2, 3, 4],
|
47
|
+
# F_k = k+3
|
48
|
+
"flats_values": [4, 8],
|
49
|
+
"flats_indices": [1, 5],
|
50
|
+
# D_k = 1
|
51
|
+
"darks_values": [1],
|
52
|
+
"darks_indices": [0],
|
53
|
+
# Expected normalization result: N_k = k
|
54
|
+
"expected_result": [2, 3, 4],
|
55
|
+
},
|
56
|
+
"three_flats_srcurrent": {
|
57
|
+
# Type D F R R | R F R R F
|
58
|
+
# IDX 0 1 2 3 | 4 5 6 7 8
|
59
|
+
# Value 1 4 9 16 | 25 8 46 67 14
|
60
|
+
# F_interp 5 6 | 7 10 12
|
61
|
+
# srCurrent 20 10 10 | 16 32 16 8 16
|
62
|
+
"image_shape": (16, 17),
|
63
|
+
"radios_values": [9, 16, 25, 46, 67],
|
64
|
+
"radios_indices": [2, 3, 4, 6, 7],
|
65
|
+
"flats_values": [4, 8, 14],
|
66
|
+
"flats_indices": [1, 5, 8],
|
67
|
+
"darks_values": [1],
|
68
|
+
"darks_indices": [0],
|
69
|
+
# "expected_result": [2, 3, 4, 5, 6], # without SR normalization
|
70
|
+
"expected_result": [4, 6, 8, 10, 12],
|
71
|
+
# sr_flat/sr_radio = 2
|
72
|
+
"radios_srcurrent": [10, 16, 16, 16, 8],
|
73
|
+
# "flats_srcurrent": [20, 18, 6, 4, 2],
|
74
|
+
"flats_srcurrent": [20, 32, 16],
|
75
|
+
},
|
76
|
+
}
|
77
|
+
|
78
|
+
|
79
|
+
def generate_test_flatfield_generalized(
|
80
|
+
image_shape,
|
81
|
+
radios_indices,
|
82
|
+
radios_values,
|
83
|
+
flats_indices,
|
84
|
+
flats_values,
|
85
|
+
darks_indices,
|
86
|
+
darks_values,
|
87
|
+
h5_fname,
|
88
|
+
dtype=np.uint16,
|
89
|
+
):
|
90
|
+
"""
|
91
|
+
Parameters
|
92
|
+
-----------
|
93
|
+
image_shape: tuple of int
|
94
|
+
shape of each image.
|
95
|
+
radios_indices: array of int
|
96
|
+
Indices where radios are found in the dataset.
|
97
|
+
radios_values: array of scalars
|
98
|
+
Value for each radio image.
|
99
|
+
Length must be equal to `radios_shape[0]`.
|
100
|
+
flats_indices: array of int
|
101
|
+
Indices where flats are found in the dataset.
|
102
|
+
flats_values: array of scalars
|
103
|
+
Values of flat images.
|
104
|
+
Length must be equal to `len(flats_indices)`
|
105
|
+
darks_indices: array of int
|
106
|
+
Indices where darks are found in the dataset.
|
107
|
+
darks_values: array of scalars
|
108
|
+
Values of dark images.
|
109
|
+
Length must be equal to `len(darks_indices)`
|
110
|
+
|
111
|
+
Returns
|
112
|
+
-------
|
113
|
+
radios: numpy.ndarray
|
114
|
+
3D array with raw radios
|
115
|
+
darks: dict of DataUrls
|
116
|
+
Dictionary where each key is the dark indice, and value is a DataUrl
|
117
|
+
flats: dict of DataUrls
|
118
|
+
Dictionary where each key is the flat indice, and value is a DataUrl
|
119
|
+
"""
|
120
|
+
tempdir = mkdtemp(prefix="nabu_")
|
121
|
+
testffname = os.path.join(tempdir, h5_fname)
|
122
|
+
|
123
|
+
# Radios
|
124
|
+
radios = np.zeros((len(radios_values),) + image_shape, dtype="f")
|
125
|
+
n_radios = radios.shape[0]
|
126
|
+
for i in range(n_radios):
|
127
|
+
radios[i].fill(radios_values[i])
|
128
|
+
img_shape = radios.shape[1:]
|
129
|
+
|
130
|
+
# Flats
|
131
|
+
flats = {}
|
132
|
+
flats_urls = {}
|
133
|
+
for i, flat_idx in enumerate(flats_indices):
|
134
|
+
flats["flats_%06d" % flat_idx] = np.zeros(img_shape, dtype=dtype) + flats_values[i]
|
135
|
+
flats_urls[flat_idx] = DataUrl(
|
136
|
+
file_path=testffname, data_path=str("/flats/flats_%06d" % flat_idx), scheme="silx"
|
137
|
+
)
|
138
|
+
|
139
|
+
# Darks
|
140
|
+
darks = {}
|
141
|
+
darks_urls = {}
|
142
|
+
for i, dark_idx in enumerate(darks_indices):
|
143
|
+
darks["darks_%06d" % dark_idx] = np.zeros(img_shape, dtype=dtype) + darks_values[i]
|
144
|
+
darks_urls[dark_idx] = DataUrl(
|
145
|
+
file_path=testffname, data_path=str("/darks/darks_%06d" % dark_idx), scheme="silx"
|
146
|
+
)
|
147
|
+
|
148
|
+
dicttoh5(flats, testffname, h5path="/flats", mode="w")
|
149
|
+
dicttoh5(darks, testffname, h5path="/darks", mode="a")
|
150
|
+
|
151
|
+
return radios, flats_urls, darks_urls
|
152
|
+
|
153
|
+
|
154
|
+
@pytest.fixture(scope="class")
|
155
|
+
def bootstrap(request):
|
156
|
+
cls = request.cls
|
157
|
+
cls.tmp_files = []
|
158
|
+
cls.tmp_dirs = []
|
159
|
+
cls.n_radios = 10
|
160
|
+
cls.n_z = 100
|
161
|
+
cls.n_x = 512
|
162
|
+
if __has_pycuda__:
|
163
|
+
cls.ctx = get_cuda_context()
|
164
|
+
yield
|
165
|
+
# Tear-down
|
166
|
+
for fname in cls.tmp_files:
|
167
|
+
os.remove(fname)
|
168
|
+
for dname in cls.tmp_dirs:
|
169
|
+
os.rmdir(dname)
|
170
|
+
|
171
|
+
|
172
|
+
@pytest.mark.usefixtures("bootstrap")
|
173
|
+
class TestFlatField:
|
174
|
+
def get_test_elements(self, case_name):
|
175
|
+
config = flatfield_tests_cases[case_name]
|
176
|
+
radios_stack, flats_url, darks_url = generate_test_flatfield_generalized(
|
177
|
+
config["image_shape"],
|
178
|
+
config["radios_indices"],
|
179
|
+
config["radios_values"],
|
180
|
+
config["flats_indices"],
|
181
|
+
config["flats_values"],
|
182
|
+
config["darks_indices"],
|
183
|
+
config["darks_values"],
|
184
|
+
"test_ff.h5",
|
185
|
+
)
|
186
|
+
fname = flats_url[list(flats_url.keys())[0]].file_path()
|
187
|
+
self.tmp_files.append(fname)
|
188
|
+
self.tmp_dirs.append(os.path.dirname(fname))
|
189
|
+
return radios_stack, flats_url, darks_url, config
|
190
|
+
|
191
|
+
@staticmethod
|
192
|
+
def check_normalized_radios(radios_corr, expected_values):
|
193
|
+
# must be the same value everywhere in the radio
|
194
|
+
std = np.std(np.std(radios_corr, axis=-1), axis=-1)
|
195
|
+
assert np.max(np.abs(std)) < 1e-7
|
196
|
+
# radios values must be 0, -2, -4, ...
|
197
|
+
assert np.allclose(radios_corr[:, 0, 0], expected_values)
|
198
|
+
|
199
|
+
def test_flatfield_simple(self):
|
200
|
+
"""
|
201
|
+
Test the flat-field normalization on a radios stack with 1 dark and 1 flat.
|
202
|
+
|
203
|
+
(I - D)/(F - D) where I = (1, 2, ...), D = 1, F = 0.5
|
204
|
+
= (0, -2, -4, -6, ...)
|
205
|
+
"""
|
206
|
+
radios_stack, flats_url, darks_url, config = self.get_test_elements("simple_nearest_interp")
|
207
|
+
|
208
|
+
flatfield = FlatFieldDataUrls(radios_stack.shape, flats_url, darks_url)
|
209
|
+
radios_corr = flatfield.normalize_radios(np.copy(radios_stack))
|
210
|
+
self.check_normalized_radios(radios_corr, config["expected_result"])
|
211
|
+
|
212
|
+
def test_flatfield_simple_subregion(self):
|
213
|
+
"""
|
214
|
+
Same as test_flatfield_simple, but in a vertical subregion of the radios.
|
215
|
+
"""
|
216
|
+
radios_stack, flats_url, darks_url, config = self.get_test_elements("simple_nearest_interp")
|
217
|
+
end_z = 51
|
218
|
+
radios_chunk = np.copy(radios_stack[:, :end_z, :])
|
219
|
+
# we only have a chunk in memory. Instantiate the class with the
|
220
|
+
# corresponding subregion to only load the relevant part of dark/flat
|
221
|
+
flatfield = FlatFieldDataUrls(
|
222
|
+
radios_chunk.shape,
|
223
|
+
flats_url,
|
224
|
+
darks_url,
|
225
|
+
sub_region=(None, None, None, end_z), # start_x, end_x, start_z, end_z
|
226
|
+
)
|
227
|
+
radios_corr = flatfield.normalize_radios(radios_chunk)
|
228
|
+
self.check_normalized_radios(radios_corr, config["expected_result"])
|
229
|
+
|
230
|
+
def test_flatfield_linear_interp(self):
|
231
|
+
"""
|
232
|
+
Test flat-field normalization with 1 dark and 2 flats, with linear
|
233
|
+
interpolation between flats.
|
234
|
+
I = 1 2 3 4 5 6 7 8 9 10
|
235
|
+
D = 1 (one dark)
|
236
|
+
F = 2 11 (two flats)
|
237
|
+
F_i = 2 3 4 5 6 7 8 9 10 11 (interpolated flats)
|
238
|
+
R = 0 .5 .66 .75 .8 .83 .86
|
239
|
+
= (I-D)/(F-D)
|
240
|
+
= (I-1)/I
|
241
|
+
"""
|
242
|
+
radios_stack, flats_url, darks_url, config = self.get_test_elements("two_flats_no_radios_indices")
|
243
|
+
flatfield = FlatFieldDataUrls(radios_stack.shape, flats_url, darks_url)
|
244
|
+
radios_corr = flatfield.normalize_radios(np.copy(radios_stack))
|
245
|
+
self.check_normalized_radios(radios_corr, config["expected_result"])
|
246
|
+
|
247
|
+
# Test 2: one of the flats is not at the beginning/end
|
248
|
+
# I = 1 2 3 4 5 6 7 8 9 10
|
249
|
+
# F = 2 11
|
250
|
+
# F_i = 2 3.8 5.6 7.4 9.2 11 11 11 11 11
|
251
|
+
# R = 0 .357 .435 .469 .488 .5 .6 .7 .8 .9
|
252
|
+
flats_url = flats_url.copy()
|
253
|
+
flats_url[5] = flats_url[9]
|
254
|
+
flats_url.pop(9)
|
255
|
+
flatfield = FlatFieldDataUrls(radios_stack.shape, flats_url, darks_url)
|
256
|
+
radios_corr = flatfield.normalize_radios(np.copy(radios_stack))
|
257
|
+
self.check_normalized_radios(
|
258
|
+
radios_corr, [0.0, 0.35714286, 0.43478261, 0.46875, 0.48780488, 0.5, 0.6, 0.7, 0.8, 0.9]
|
259
|
+
)
|
260
|
+
|
261
|
+
@pytest.mark.skipif(not (__has_pycuda__), reason="Need cuda/pycuda for this test")
|
262
|
+
def test_cuda_flatfield(self):
|
263
|
+
"""
|
264
|
+
Test the flat-field with cuda back-end.
|
265
|
+
"""
|
266
|
+
radios_stack, flats_url, darks_url, config = self.get_test_elements("two_flats_no_radios_indices")
|
267
|
+
d_radios = garray.to_gpu(radios_stack.astype("f"))
|
268
|
+
cuda_flatfield = CudaFlatFieldDataUrls(
|
269
|
+
d_radios.shape,
|
270
|
+
flats_url,
|
271
|
+
darks_url,
|
272
|
+
)
|
273
|
+
cuda_flatfield.normalize_radios(d_radios)
|
274
|
+
radios_corr = d_radios.get()
|
275
|
+
self.check_normalized_radios(radios_corr, config["expected_result"])
|
276
|
+
|
277
|
+
# Linear interpolation, two flats, one dark
|
278
|
+
def test_twoflats_simple(self):
|
279
|
+
radios, flats, darks, config = self.get_test_elements("two_flats_with_radios_indices")
|
280
|
+
FF = FlatFieldDataUrls(radios.shape, flats, darks, radios_indices=config["radios_indices"])
|
281
|
+
FF.normalize_radios(radios)
|
282
|
+
self.check_normalized_radios(radios, config["expected_result"])
|
283
|
+
|
284
|
+
def _setup_numerical_issue(self):
|
285
|
+
radios, flats, darks, config = self.get_test_elements("two_flats_with_radios_indices")
|
286
|
+
|
287
|
+
# Retrieve the actual data for radios/darks/flats to use FlatField instead of FlatFieldDataUrl.
|
288
|
+
# Create a setting yielding "0/0": one pixel such that flat==dark and radio==dark
|
289
|
+
for flat_idx, flat_url in flats.items():
|
290
|
+
flats[flat_idx] = get_data(flat_url)
|
291
|
+
flats[flat_idx][0, 0] = 99
|
292
|
+
for dark_idx, dark_url in darks.items():
|
293
|
+
darks[dark_idx] = get_data(dark_url)
|
294
|
+
darks[dark_idx][0, 0] = 99
|
295
|
+
radios[:, 0, 0] = 99
|
296
|
+
return radios, flats, darks, config
|
297
|
+
|
298
|
+
def _check_numerical_issue(self, radios, expected_result, nan_value=None):
|
299
|
+
if nan_value is None:
|
300
|
+
assert np.alltrue(np.logical_not(np.isfinite(radios[:, 0, 0]))), "First pixel should be nan or inf"
|
301
|
+
radios[:, 0, 0] = radios[:, 1, 1]
|
302
|
+
self.check_normalized_radios(radios, expected_result)
|
303
|
+
else:
|
304
|
+
assert np.all(np.isfinite(radios)), "No inf/nan value should be there"
|
305
|
+
assert np.allclose(radios[:, 0, 0], nan_value, atol=1e-7), (
|
306
|
+
"Handled NaN should have nan_value=%f" % nan_value
|
307
|
+
)
|
308
|
+
radios[:, 0, 0] = radios[:, 1, 1]
|
309
|
+
self.check_normalized_radios(radios, expected_result)
|
310
|
+
|
311
|
+
def test_twoflats_numerical_issue(self):
|
312
|
+
"""
|
313
|
+
Same as above, but for the first radio: I==Dark and Flat==Dark
|
314
|
+
For this radio, nan is replaced with 1.
|
315
|
+
"""
|
316
|
+
radios, flats, darks, config = self._setup_numerical_issue()
|
317
|
+
radios0 = radios.copy()
|
318
|
+
|
319
|
+
# FlatField without NaN handling yields NaN and raises RuntimeWarning
|
320
|
+
FF_no_nan_handling = FlatField(
|
321
|
+
radios.shape, flats, darks, radios_indices=config["radios_indices"], nan_value=None
|
322
|
+
)
|
323
|
+
with pytest.warns(RuntimeWarning):
|
324
|
+
FF_no_nan_handling.normalize_radios(radios)
|
325
|
+
self._check_numerical_issue(radios, config["expected_result"], None)
|
326
|
+
|
327
|
+
# FlatField with NaN handling
|
328
|
+
nan_value = 50
|
329
|
+
radios = radios0.copy()
|
330
|
+
FF_with_nan_handling = FlatField(
|
331
|
+
radios.shape, flats, darks, radios_indices=config["radios_indices"], nan_value=nan_value
|
332
|
+
)
|
333
|
+
with pytest.warns(RuntimeWarning):
|
334
|
+
FF_with_nan_handling.normalize_radios(radios)
|
335
|
+
self._check_numerical_issue(radios, config["expected_result"], nan_value)
|
336
|
+
|
337
|
+
@pytest.mark.skipif(not (__has_pycuda__), reason="Need cuda/pycuda for this test")
|
338
|
+
def test_cuda_twoflats_numerical_issue(self):
|
339
|
+
"""
|
340
|
+
Same as above, with the Cuda backend
|
341
|
+
"""
|
342
|
+
radios, flats, darks, config = self._setup_numerical_issue()
|
343
|
+
radios0 = radios.copy()
|
344
|
+
d_radios = garray.to_gpu(radios)
|
345
|
+
FF_no_nan_handling = CudaFlatField(
|
346
|
+
radios.shape, flats, darks, radios_indices=config["radios_indices"], nan_value=None
|
347
|
+
)
|
348
|
+
# In a cuda kernel, no one can hear you scream
|
349
|
+
FF_no_nan_handling.normalize_radios(d_radios)
|
350
|
+
radios = d_radios.get()
|
351
|
+
self._check_numerical_issue(radios, config["expected_result"], None)
|
352
|
+
|
353
|
+
# FlatField with NaN handling
|
354
|
+
nan_value = 50
|
355
|
+
d_radios.set(radios0)
|
356
|
+
FF_with_nan_handling = CudaFlatField(
|
357
|
+
radios.shape, flats, darks, radios_indices=config["radios_indices"], nan_value=nan_value
|
358
|
+
)
|
359
|
+
FF_with_nan_handling.normalize_radios(d_radios)
|
360
|
+
radios = d_radios.get()
|
361
|
+
self._check_numerical_issue(radios, config["expected_result"], nan_value)
|
362
|
+
|
363
|
+
def test_srcurrent(self):
|
364
|
+
radios, flats, darks, config = self.get_test_elements("three_flats_srcurrent")
|
365
|
+
|
366
|
+
FF = FlatFieldDataUrls(
|
367
|
+
radios.shape,
|
368
|
+
flats,
|
369
|
+
darks,
|
370
|
+
radios_indices=config["radios_indices"],
|
371
|
+
radios_srcurrent=config["radios_srcurrent"],
|
372
|
+
flats_srcurrent=config["flats_srcurrent"],
|
373
|
+
)
|
374
|
+
radios_corr = FF.normalize_radios(np.copy(radios))
|
375
|
+
self.check_normalized_radios(radios_corr, config["expected_result"])
|
376
|
+
|
377
|
+
@pytest.mark.skipif(not (__has_pycuda__), reason="Need cuda/pycuda for this test")
|
378
|
+
def test_srcurrent_cuda(self):
|
379
|
+
radios, flats, darks, config = self.get_test_elements("three_flats_srcurrent")
|
380
|
+
d_radios = garray.to_gpu(radios)
|
381
|
+
|
382
|
+
FF = CudaFlatFieldDataUrls(
|
383
|
+
radios.shape,
|
384
|
+
flats,
|
385
|
+
darks,
|
386
|
+
radios_indices=config["radios_indices"],
|
387
|
+
radios_srcurrent=config["radios_srcurrent"],
|
388
|
+
flats_srcurrent=config["flats_srcurrent"],
|
389
|
+
)
|
390
|
+
FF.normalize_radios(d_radios)
|
391
|
+
radios_corr = d_radios.get()
|
392
|
+
self.check_normalized_radios(radios_corr, config["expected_result"])
|
393
|
+
|
394
|
+
|
395
|
+
# This test should be closer to the ESRF standard setting.
|
396
|
+
# There are 2 flats, one dark, 4000 radios.
|
397
|
+
# dark : indice=0 value=10
|
398
|
+
# flat1 : indice=1 value=4202
|
399
|
+
# flat2 : indice=2102 value=2101
|
400
|
+
#
|
401
|
+
# The projections have the following indices:
|
402
|
+
# j: 0 1 1998 1999 2000 2001 3999
|
403
|
+
# idx: [102, 103, ..., 2100, 2101, 2203, 2204, ..., 4200, 4201, 4202]
|
404
|
+
# Notice the gap in the middle.
|
405
|
+
#
|
406
|
+
# The linear interpolation is
|
407
|
+
# flat_i = (n2 - i)/(n2 - n1)*flat_1 + (i - n1)/(n2 - n1)*flat_2
|
408
|
+
# where n1 and n2 are the indices of flat_1 and flat_2 respectively.
|
409
|
+
# With the above values, we have flat_i = 4203 - i.
|
410
|
+
#
|
411
|
+
# The projections values are dark + i*(flat_i - dark),
|
412
|
+
# so that the normalization norm_i = (proj_i - dark)/(flat_i - dark) gives
|
413
|
+
#
|
414
|
+
# idx 102 103 104 ...
|
415
|
+
# flat 4101 4102 4103 ...
|
416
|
+
# norm 102 103 104 ...
|
417
|
+
#
|
418
|
+
|
419
|
+
|
420
|
+
class FlatFieldTestDataset:
|
421
|
+
# Parameters
|
422
|
+
shp = (27, 32)
|
423
|
+
n1 = 1 # flat indice 1
|
424
|
+
n2 = 2102 # flat indice 2
|
425
|
+
dark_val = 10
|
426
|
+
darks = {0: np.zeros(shp, "f") + dark_val}
|
427
|
+
flats = {n1: np.zeros(shp, "f") + (n2 - 1) * 2, n2: np.zeros(shp, "f") + n2 - 1}
|
428
|
+
projs_idx = list(range(102, 2102)) + list(range(2203, 4203)) # gap in the middle
|
429
|
+
|
430
|
+
def __init__(self):
|
431
|
+
self._generate_projections()
|
432
|
+
self._dump_to_h5()
|
433
|
+
self._generate_dataurls()
|
434
|
+
|
435
|
+
def get_flat_idx(self, proj_idx):
|
436
|
+
flats_idx = sorted(list(self.flats.keys()))
|
437
|
+
if proj_idx <= flats_idx[0]:
|
438
|
+
return (flats_idx[0],)
|
439
|
+
elif proj_idx > flats_idx[0] and proj_idx < flats_idx[1]:
|
440
|
+
return flats_idx
|
441
|
+
else:
|
442
|
+
return (flats_idx[1],)
|
443
|
+
|
444
|
+
def get_flat(self, idx):
|
445
|
+
flatidx = self.get_flat_idx(idx)
|
446
|
+
if len(flatidx) == 1:
|
447
|
+
flat = self.flats[flatidx[0]]
|
448
|
+
else:
|
449
|
+
nf1, nf2 = flatidx
|
450
|
+
w1 = (nf2 - idx) / (nf2 - nf1)
|
451
|
+
flat = w1 * self.flats[nf1] + (1 - w1) * self.flats[nf2]
|
452
|
+
return flat
|
453
|
+
|
454
|
+
def _generate_projections(self):
|
455
|
+
self.projs_data = np.zeros((len(self.projs_idx),) + self.shp, "f")
|
456
|
+
self.projs = {}
|
457
|
+
for i, proj_idx in enumerate(self.projs_idx):
|
458
|
+
flat = self.get_flat(proj_idx)
|
459
|
+
|
460
|
+
proj_val = self.dark_val + proj_idx * (flat[0, 0] - self.dark_val)
|
461
|
+
self.projs[str(proj_idx)] = np.zeros(self.shp, "f") + proj_val
|
462
|
+
self.projs_data[i] = self.projs[str(proj_idx)]
|
463
|
+
|
464
|
+
def _dump_to_h5(self):
|
465
|
+
self.tempdir = mkdtemp(prefix="nabu_")
|
466
|
+
self.fname = os.path.join(self.tempdir, "projs_flats.h5")
|
467
|
+
dicttoh5(
|
468
|
+
{
|
469
|
+
"projs": self.projs,
|
470
|
+
"flats": {str(k): v for k, v in self.flats.items()},
|
471
|
+
"darks": {str(k): v for k, v in self.darks.items()},
|
472
|
+
},
|
473
|
+
h5file=self.fname,
|
474
|
+
)
|
475
|
+
|
476
|
+
def _generate_dataurls(self):
|
477
|
+
self.flats_urls = {}
|
478
|
+
for idx in self.flats.keys():
|
479
|
+
self.flats_urls[int(idx)] = DataUrl(file_path=self.fname, data_path="/flats/%d" % idx)
|
480
|
+
self.darks_urls = {}
|
481
|
+
for idx in self.darks.keys():
|
482
|
+
self.darks_urls[int(idx)] = DataUrl(file_path=self.fname, data_path="/darks/0")
|
483
|
+
|
484
|
+
|
485
|
+
@pytest.fixture(scope="class")
|
486
|
+
def bootstraph5(request):
|
487
|
+
cls = request.cls
|
488
|
+
|
489
|
+
cls.dataset = FlatFieldTestDataset()
|
490
|
+
n1, n2 = cls.dataset.n1, cls.dataset.n2
|
491
|
+
|
492
|
+
# Interpolation function
|
493
|
+
cls._weight1 = lambda i: (n2 - i) / (n2 - n1)
|
494
|
+
|
495
|
+
cls.tol = 5e-4
|
496
|
+
cls.tol_std = 1e-3
|
497
|
+
|
498
|
+
yield
|
499
|
+
# tear-down
|
500
|
+
os.remove(cls.dataset.fname)
|
501
|
+
os.rmdir(cls.dataset.tempdir)
|
502
|
+
|
503
|
+
|
504
|
+
@pytest.mark.usefixtures("bootstraph5")
|
505
|
+
class TestFlatFieldH5:
|
506
|
+
def check_normalization(self, projs):
|
507
|
+
# Check that each projection is filled with the same values
|
508
|
+
std_projs = np.std(projs, axis=(-2, -1))
|
509
|
+
assert np.max(np.abs(std_projs)) < self.tol_std
|
510
|
+
# Check that the normalized radios are equal to 102, 103, 104, ...
|
511
|
+
errs = projs[:, 0, 0] - self.dataset.projs_idx
|
512
|
+
assert np.max(np.abs(errs)) < self.tol, "Something wrong with flat-field normalization"
|
513
|
+
|
514
|
+
def test_flatfield(self):
|
515
|
+
flatfield = FlatFieldDataUrls(
|
516
|
+
self.dataset.projs_data.shape,
|
517
|
+
self.dataset.flats_urls,
|
518
|
+
self.dataset.darks_urls,
|
519
|
+
radios_indices=self.dataset.projs_idx,
|
520
|
+
interpolation="linear",
|
521
|
+
)
|
522
|
+
projs = np.copy(self.dataset.projs_data)
|
523
|
+
flatfield.normalize_radios(projs)
|
524
|
+
self.check_normalization(projs)
|
525
|
+
|
526
|
+
@pytest.mark.skipif(not (__has_pycuda__), reason="Need cuda/pycuda for this test")
|
527
|
+
def test_cuda_flatfield(self):
|
528
|
+
d_projs = garray.to_gpu(self.dataset.projs_data)
|
529
|
+
cuda_flatfield = CudaFlatFieldDataUrls(
|
530
|
+
self.dataset.projs_data.shape,
|
531
|
+
self.dataset.flats_urls,
|
532
|
+
self.dataset.darks_urls,
|
533
|
+
radios_indices=self.dataset.projs_idx,
|
534
|
+
)
|
535
|
+
cuda_flatfield.normalize_radios(d_projs)
|
536
|
+
projs = d_projs.get()
|
537
|
+
self.check_normalization(projs)
|
538
|
+
|
539
|
+
|
540
|
+
#
|
541
|
+
# Another test with more than two flats.
|
542
|
+
#
|
543
|
+
# Here we have
|
544
|
+
#
|
545
|
+
# F_i = i + 2
|
546
|
+
# R_i = i*(F_i - 1) + 1
|
547
|
+
# N_i = (R_i - D)/(F_i - D) = i*(F_i - 1)/( F_i - 1) = i
|
548
|
+
#
|
549
|
+
|
550
|
+
|
551
|
+
def generate_test_flatfield(n_radios, radio_shape, flat_interval, h5_fname):
|
552
|
+
radios = np.zeros((n_radios,) + radio_shape, "f")
|
553
|
+
dark_data = np.ones(radios.shape[1:], "f")
|
554
|
+
tempdir = mkdtemp(prefix="nabu_")
|
555
|
+
testffname = os.path.join(tempdir, h5_fname)
|
556
|
+
flats = {}
|
557
|
+
flats_urls = {}
|
558
|
+
# F_i = i + 2
|
559
|
+
# R_i = i*(F_i - 1) + 1
|
560
|
+
# N_i = (R_i - D)/(F_i - D) = i*(F_i - 1)/( F_i - 1) = i
|
561
|
+
for i in range(n_radios):
|
562
|
+
f_i = i + 2
|
563
|
+
if (i % flat_interval) == 0:
|
564
|
+
flats["flats_%06d" % i] = np.zeros(radio_shape, "f") + f_i
|
565
|
+
flats_urls[i] = DataUrl(file_path=testffname, data_path=str("/flats/flats_%06d" % i), scheme="silx")
|
566
|
+
radios[i] = i * (f_i - 1) + 1
|
567
|
+
dark = {"dark_0000": dark_data}
|
568
|
+
dicttoh5(flats, testffname, h5path="/flats", mode="w")
|
569
|
+
dicttoh5(dark, testffname, h5path="/dark", mode="a")
|
570
|
+
dark_url = {0: DataUrl(file_path=testffname, data_path="/dark/dark_0000", scheme="silx")}
|
571
|
+
return radios, flats_urls, dark_url
|
572
|
+
|
573
|
+
|
574
|
+
@pytest.fixture(scope="class")
|
575
|
+
def bootstrap_multiflats(request):
|
576
|
+
cls = request.cls
|
577
|
+
|
578
|
+
n_radios = 50
|
579
|
+
radio_shape = (20, 21)
|
580
|
+
cls.flat_interval = 11
|
581
|
+
h5_fname = "testff.h5"
|
582
|
+
|
583
|
+
radios, flats, dark = generate_test_flatfield(n_radios, radio_shape, cls.flat_interval, h5_fname)
|
584
|
+
cls.radios = radios
|
585
|
+
cls.flats_urls = flats
|
586
|
+
cls.darks_urls = dark
|
587
|
+
cls.expected_results = np.arange(n_radios)
|
588
|
+
|
589
|
+
cls.tol = 5e-4
|
590
|
+
cls.tol_std = 1e-4
|
591
|
+
|
592
|
+
yield
|
593
|
+
# tear down
|
594
|
+
os.remove(dark[0].file_path())
|
595
|
+
os.rmdir(os.path.dirname(dark[0].file_path()))
|
596
|
+
|
597
|
+
|
598
|
+
@pytest.mark.usefixtures("bootstrap_multiflats")
|
599
|
+
class TestFlatFieldMultiFlat:
|
600
|
+
def check_normalization(self, projs):
|
601
|
+
# Check that each projection is filled with the same values
|
602
|
+
std_projs = np.std(projs, axis=(-2, -1))
|
603
|
+
assert np.max(np.abs(std_projs)) < self.tol_std
|
604
|
+
# Check that the normalized radios are equal to 0, 1, 2, ...
|
605
|
+
stop = (projs.shape[0] // self.flat_interval) * self.flat_interval
|
606
|
+
errs = projs[:stop, 0, 0] - self.expected_results[:stop]
|
607
|
+
assert np.max(np.abs(errs)) < self.tol, "Something wrong with flat-field normalization"
|
608
|
+
|
609
|
+
def test_flatfield(self):
|
610
|
+
flatfield = FlatFieldDataUrls(self.radios.shape, self.flats_urls, self.darks_urls, interpolation="linear")
|
611
|
+
projs = np.copy(self.radios)
|
612
|
+
flatfield.normalize_radios(projs)
|
613
|
+
print(projs[:, 0, 0])
|
614
|
+
self.check_normalization(projs)
|
615
|
+
|
616
|
+
@pytest.mark.skipif(not (__has_pycuda__), reason="Need cuda/pycuda for this test")
|
617
|
+
def test_cuda_flatfield(self):
|
618
|
+
d_projs = garray.to_gpu(self.radios)
|
619
|
+
cuda_flatfield = CudaFlatFieldDataUrls(
|
620
|
+
self.radios.shape,
|
621
|
+
self.flats_urls,
|
622
|
+
self.darks_urls,
|
623
|
+
)
|
624
|
+
cuda_flatfield.normalize_radios(d_projs)
|
625
|
+
projs = d_projs.get()
|
626
|
+
self.check_normalization(projs)
|
@@ -0,0 +1,67 @@
|
|
1
|
+
import pytest
|
2
|
+
import numpy as np
|
3
|
+
from nabu.preproc.phase import PaganinPhaseRetrieval
|
4
|
+
from nabu.testutils import get_data
|
5
|
+
from nabu.thirdparty.tomopy_phase import retrieve_phase
|
6
|
+
from nabu.cuda.utils import __has_pycuda__, __has_cufft__
|
7
|
+
|
8
|
+
if __has_pycuda__:
|
9
|
+
from nabu.preproc.phase_cuda import CudaPaganinPhaseRetrieval
|
10
|
+
|
11
|
+
scenarios = [
|
12
|
+
{
|
13
|
+
"distance": 1,
|
14
|
+
"energy": 35,
|
15
|
+
"delta_beta": 1e1,
|
16
|
+
"margin": ((50, 50), (0, 0)),
|
17
|
+
}
|
18
|
+
]
|
19
|
+
|
20
|
+
|
21
|
+
@pytest.fixture(scope="class", params=scenarios)
|
22
|
+
def bootstrap(request):
|
23
|
+
cls = request.cls
|
24
|
+
cls.paganin_config = request.param
|
25
|
+
|
26
|
+
cls.data = get_data("mri_proj_astra.npz")["data"]
|
27
|
+
cls.rtol = 1.1e-6
|
28
|
+
cls.rtol_pag = 5e-3
|
29
|
+
cls.paganin = PaganinPhaseRetrieval(cls.data.shape, **cls.paganin_config)
|
30
|
+
|
31
|
+
|
32
|
+
@pytest.mark.usefixtures("bootstrap")
|
33
|
+
class TestPaganin:
|
34
|
+
"""
|
35
|
+
Test the Paganin phase retrieval.
|
36
|
+
The reference implementation is tomopy.
|
37
|
+
"""
|
38
|
+
|
39
|
+
def crop_to_margin(self, data):
|
40
|
+
s0, s1 = self.paganin.shape_inner
|
41
|
+
((U, _), (L, _)) = self.paganin.margin
|
42
|
+
return data[U : U + s0, L : L + s1]
|
43
|
+
|
44
|
+
def test_paganin(self):
|
45
|
+
data_tomopy = np.atleast_3d(np.copy(self.data)).T
|
46
|
+
|
47
|
+
res_tomopy = retrieve_phase(
|
48
|
+
data_tomopy,
|
49
|
+
pixel_size=self.paganin.pixel_size_micron * 1e-4,
|
50
|
+
dist=self.paganin.distance_cm,
|
51
|
+
energy=self.paganin.energy_kev,
|
52
|
+
alpha=1.0 / (4 * 3.141592**2 * self.paganin.delta_beta),
|
53
|
+
)
|
54
|
+
res_tomopy = self.crop_to_margin(res_tomopy[0].T)
|
55
|
+
|
56
|
+
res = self.paganin.apply_filter(self.data)
|
57
|
+
|
58
|
+
errmax = np.max(np.abs(res - res_tomopy) / np.max(res_tomopy))
|
59
|
+
assert errmax < self.rtol_pag, "Max error is too high"
|
60
|
+
|
61
|
+
@pytest.mark.skipif(not (__has_pycuda__ and __has_cufft__), reason="Need pycuda and scikit-cuda for this test")
|
62
|
+
def test_gpu_paganin(self):
|
63
|
+
gpu_paganin = CudaPaganinPhaseRetrieval(self.data.shape, **self.paganin_config)
|
64
|
+
ref = self.paganin.apply_filter(self.data)
|
65
|
+
res = gpu_paganin.apply_filter(self.data)
|
66
|
+
errmax = np.max(np.abs((res - ref) / np.max(ref)))
|
67
|
+
assert errmax < self.rtol, "Max error is too high"
|