nabu 2024.1.1__py3-none-any.whl → 2024.1.2__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.
- nabu/__init__.py +1 -1
- nabu/app/cast_volume.py +11 -2
- nabu/app/multicor.py +24 -2
- nabu/io/cast_volume.py +3 -3
- nabu/io/utils.py +2 -2
- nabu/stitching/tests/test_z_stitching.py +0 -1
- nabu/stitching/z_stitching.py +3 -3
- {nabu-2024.1.1.dist-info → nabu-2024.1.2.dist-info}/METADATA +2 -2
- nabu-2024.1.2.dist-info/RECORD +296 -0
- {nabu-2024.1.1.dist-info → nabu-2024.1.2.dist-info}/WHEEL +1 -1
- nabu-2024.1.2.dist-info/top_level.txt +2 -0
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/conf.py +0 -137
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +0 -38
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +0 -34
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +0 -17
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap.py +0 -88
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +0 -69
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +0 -272
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +0 -626
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +0 -94
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +0 -144
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +0 -153
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +0 -358
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +0 -449
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +0 -143
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +0 -261
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +0 -197
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +0 -90
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +0 -125
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +0 -151
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +0 -120
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +0 -116
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +0 -181
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +0 -162
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +0 -85
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +0 -33
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +0 -110
- 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 +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +0 -97
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +0 -331
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +0 -578
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +0 -1621
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +0 -183
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +0 -112
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +0 -362
- 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 +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +0 -472
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +0 -105
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +0 -41
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +0 -214
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +0 -193
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +0 -39
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +0 -2
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +0 -371
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +0 -305
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +0 -628
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +0 -114
- 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 +0 -339
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +0 -178
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +0 -187
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +0 -99
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +0 -263
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +0 -892
- 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 +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +0 -24
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +0 -152
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +0 -83
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +0 -48
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +0 -117
- 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 +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +0 -135
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +0 -35
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +0 -62
- 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 +0 -292
- 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 +0 -265
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +0 -589
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +0 -164
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +0 -211
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +0 -20
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +0 -1012
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +0 -149
- 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 +0 -849
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +0 -152
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +0 -260
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +0 -590
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +0 -825
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +0 -851
- 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 +0 -19
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +0 -147
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +0 -246
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +0 -575
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +0 -1670
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +0 -119
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +0 -598
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +0 -42
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +0 -175
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +0 -62
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +0 -483
- 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 +0 -157
- 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 +0 -355
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +0 -61
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +0 -51
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +0 -101
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +0 -210
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +0 -149
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +0 -116
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +0 -193
- 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 +0 -7
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +0 -11
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +0 -161
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +0 -169
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +0 -361
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +0 -142
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +0 -92
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +0 -212
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +0 -174
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +0 -68
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +0 -448
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +0 -144
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +0 -79
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +0 -425
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +0 -143
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +0 -95
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +0 -102
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +0 -59
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +0 -250
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +0 -86
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +0 -626
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +0 -67
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +0 -73
- 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 +0 -375
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +0 -256
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +0 -54
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +0 -134
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +0 -286
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +0 -126
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +0 -159
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +0 -29
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +0 -68
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +0 -71
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +0 -77
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +0 -123
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +0 -64
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +0 -66
- 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 +0 -268
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +0 -71
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +0 -55
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +0 -77
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +0 -54
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +0 -247
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +0 -83
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +0 -72
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +0 -106
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +0 -126
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +0 -79
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +0 -53
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +0 -3
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +0 -241
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +0 -124
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +0 -391
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +0 -220
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +0 -111
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +0 -240
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +0 -174
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +0 -44
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +0 -248
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +0 -322
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +0 -467
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +0 -250
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +0 -40
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +0 -308
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +0 -220
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +0 -252
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +0 -133
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +0 -100
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +0 -164
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +0 -93
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +0 -85
- 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 +0 -5
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +0 -469
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +0 -169
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +0 -130
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +0 -217
- 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 +0 -104
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +0 -47
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +0 -174
- 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 +0 -184
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +0 -1286
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +0 -155
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +0 -373
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +0 -60
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +0 -204
- 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 +0 -99
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +0 -226
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +0 -180
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +0 -49
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +0 -146
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +0 -21
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +0 -1183
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +0 -563
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +0 -2279
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/tests.py +0 -51
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +0 -375
- 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 +0 -276
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +0 -108
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +0 -586
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +0 -239
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +0 -162
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/utils.py +0 -836
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/conf.py +0 -137
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +0 -38
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +0 -34
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +0 -17
- 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 +0 -88
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +0 -69
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +0 -272
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +0 -626
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +0 -94
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +0 -144
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +0 -153
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +0 -358
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +0 -449
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +0 -143
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +0 -261
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +0 -197
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +0 -90
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +0 -125
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +0 -151
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +0 -120
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +0 -116
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +0 -181
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +0 -162
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +0 -85
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +0 -33
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +0 -110
- 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 +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +0 -97
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +0 -331
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +0 -578
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +0 -1621
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +0 -183
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +0 -112
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +0 -362
- 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 +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +0 -472
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +0 -105
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +0 -41
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +0 -214
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +0 -193
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +0 -39
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +0 -2
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +0 -371
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +0 -305
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +0 -628
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +0 -114
- 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 +0 -339
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +0 -178
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +0 -187
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +0 -99
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +0 -263
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +0 -892
- 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 +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +0 -24
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +0 -152
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +0 -83
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +0 -48
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +0 -117
- 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 +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +0 -135
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +0 -35
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +0 -62
- 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 +0 -292
- 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 +0 -265
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +0 -589
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +0 -164
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +0 -211
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +0 -20
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +0 -1012
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +0 -149
- 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 +0 -849
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +0 -152
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +0 -260
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +0 -590
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +0 -825
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +0 -851
- 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 +0 -19
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +0 -147
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +0 -246
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +0 -575
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +0 -1670
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +0 -119
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +0 -598
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +0 -42
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +0 -175
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +0 -62
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +0 -483
- 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 +0 -157
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +0 -61
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +0 -51
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +0 -101
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +0 -210
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +0 -149
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +0 -116
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +0 -193
- 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 +0 -7
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +0 -11
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +0 -161
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +0 -169
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +0 -361
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +0 -142
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +0 -92
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +0 -212
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +0 -174
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +0 -68
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +0 -448
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +0 -144
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +0 -79
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +0 -425
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +0 -143
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +0 -95
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +0 -102
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +0 -59
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +0 -250
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +0 -86
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +0 -626
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +0 -67
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +0 -73
- 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 +0 -375
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +0 -256
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +0 -54
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +0 -134
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +0 -286
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +0 -126
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +0 -159
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +0 -29
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +0 -68
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +0 -71
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +0 -77
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +0 -123
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +0 -64
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +0 -66
- 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 +0 -268
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +0 -71
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +0 -55
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +0 -77
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +0 -54
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +0 -247
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +0 -83
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +0 -72
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +0 -106
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +0 -126
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +0 -79
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +0 -53
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +0 -3
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +0 -241
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +0 -124
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +0 -391
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +0 -220
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +0 -111
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +0 -240
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +0 -174
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +0 -44
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +0 -248
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +0 -322
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +0 -467
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +0 -250
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +0 -40
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +0 -308
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +0 -220
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +0 -252
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +0 -133
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +0 -100
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +0 -164
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +0 -93
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +0 -85
- 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 +0 -5
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +0 -469
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +0 -169
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +0 -130
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +0 -217
- 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 +0 -104
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +0 -47
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +0 -174
- 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 +0 -184
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +0 -1286
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +0 -155
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +0 -373
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +0 -60
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +0 -204
- 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 +0 -99
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +0 -226
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +0 -180
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +0 -49
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +0 -146
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +0 -21
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +0 -1183
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +0 -563
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +0 -2279
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/tests.py +0 -51
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +0 -375
- 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 +0 -276
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +0 -108
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +0 -586
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +0 -239
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +0 -162
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/utils.py +0 -836
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/conf.py +0 -137
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +0 -38
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +0 -34
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +0 -17
- 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 +0 -88
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +0 -69
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +0 -272
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +0 -626
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +0 -94
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +0 -144
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +0 -153
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +0 -358
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +0 -449
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +0 -143
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +0 -261
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +0 -197
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +0 -90
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +0 -125
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +0 -151
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +0 -120
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +0 -116
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +0 -181
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +0 -162
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +0 -85
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +0 -33
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +0 -110
- 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 +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +0 -97
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +0 -331
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +0 -578
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +0 -1621
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +0 -183
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +0 -112
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +0 -362
- 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 +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +0 -472
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +0 -105
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +0 -41
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +0 -214
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +0 -193
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +0 -39
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +0 -2
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +0 -371
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +0 -305
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +0 -628
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +0 -114
- 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 +0 -339
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +0 -178
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +0 -187
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +0 -99
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +0 -263
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +0 -892
- 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 +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +0 -24
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +0 -152
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +0 -83
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +0 -48
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +0 -117
- 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 +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +0 -135
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +0 -35
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +0 -62
- 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 +0 -292
- 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 +0 -265
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +0 -589
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +0 -164
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +0 -211
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +0 -20
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +0 -1012
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +0 -149
- 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 +0 -849
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +0 -152
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +0 -260
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +0 -590
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +0 -825
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +0 -851
- 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 +0 -19
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +0 -147
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +0 -246
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +0 -575
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +0 -1670
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +0 -119
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +0 -598
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +0 -42
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +0 -175
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +0 -62
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +0 -483
- 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 +0 -157
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +0 -61
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +0 -51
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +0 -101
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +0 -210
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +0 -149
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +0 -116
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +0 -193
- 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 +0 -7
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +0 -11
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +0 -161
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +0 -169
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +0 -361
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +0 -142
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +0 -92
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +0 -212
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +0 -174
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +0 -68
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +0 -448
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +0 -144
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +0 -79
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +0 -425
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +0 -143
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +0 -95
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +0 -102
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +0 -59
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +0 -250
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +0 -86
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +0 -626
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +0 -67
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +0 -73
- 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 +0 -375
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +0 -256
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +0 -54
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +0 -134
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +0 -286
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +0 -126
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +0 -159
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +0 -29
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +0 -68
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +0 -71
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +0 -77
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +0 -123
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +0 -64
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +0 -66
- 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 +0 -268
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +0 -71
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +0 -55
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +0 -77
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +0 -54
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +0 -247
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +0 -83
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +0 -72
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +0 -106
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +0 -126
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +0 -79
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +0 -53
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +0 -3
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +0 -241
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +0 -124
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +0 -391
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +0 -220
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +0 -111
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +0 -240
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +0 -174
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +0 -44
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +0 -248
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +0 -322
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +0 -467
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +0 -250
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +0 -40
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +0 -308
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +0 -220
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +0 -252
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +0 -133
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +0 -100
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +0 -164
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +0 -93
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +0 -85
- 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 +0 -5
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +0 -469
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +0 -169
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +0 -130
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +0 -217
- 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 +0 -104
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +0 -47
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +0 -174
- 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 +0 -184
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +0 -1286
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +0 -155
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +0 -373
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +0 -60
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +0 -204
- 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 +0 -99
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +0 -226
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +0 -180
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +0 -49
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +0 -146
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +0 -21
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +0 -1183
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +0 -563
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +0 -2279
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/tests.py +0 -51
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +0 -375
- 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 +0 -276
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +0 -108
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +0 -586
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +0 -239
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +0 -162
- build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/utils.py +0 -836
- build/lib/build/lib/build/lib/build/lib/build/lib/doc/conf.py +0 -137
- build/lib/build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +0 -38
- build/lib/build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +0 -34
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +0 -17
- 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 +0 -88
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +0 -69
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +0 -272
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +0 -626
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +0 -94
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +0 -144
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +0 -153
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +0 -358
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +0 -449
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +0 -143
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +0 -261
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +0 -197
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +0 -90
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +0 -125
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +0 -151
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +0 -120
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +0 -116
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +0 -181
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +0 -162
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +0 -85
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +0 -33
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +0 -110
- 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 +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +0 -97
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +0 -331
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +0 -578
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +0 -1621
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +0 -183
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +0 -112
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +0 -362
- 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 +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +0 -472
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +0 -105
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +0 -41
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +0 -214
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +0 -193
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +0 -39
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +0 -2
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +0 -371
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +0 -305
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +0 -628
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +0 -114
- 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 +0 -339
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +0 -178
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +0 -187
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +0 -99
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +0 -263
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +0 -892
- 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 +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +0 -24
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +0 -152
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +0 -83
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +0 -48
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +0 -70
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +0 -4
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +0 -8
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +0 -117
- 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 +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +0 -135
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +0 -35
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +0 -62
- 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 +0 -292
- 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 +0 -265
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +0 -589
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +0 -164
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +0 -211
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +0 -20
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +0 -1012
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +0 -149
- 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 +0 -849
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +0 -152
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +0 -260
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +0 -590
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +0 -825
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +0 -851
- 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 +0 -19
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +0 -147
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +0 -246
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +0 -575
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +0 -1670
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +0 -119
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +0 -598
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +0 -42
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +0 -175
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +0 -62
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +0 -483
- 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 +0 -157
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +0 -61
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +0 -51
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +0 -101
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +0 -210
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +0 -149
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +0 -116
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +0 -193
- 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 +0 -7
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +0 -11
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +0 -161
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +0 -169
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +0 -361
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +0 -142
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +0 -92
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +0 -212
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +0 -174
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +0 -68
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +0 -448
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +0 -144
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +0 -79
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +0 -425
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +0 -143
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +0 -95
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +0 -102
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +0 -59
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +0 -250
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +0 -86
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +0 -626
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +0 -67
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +0 -73
- 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 +0 -375
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +0 -163
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +0 -256
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +0 -54
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +0 -134
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +0 -286
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +0 -126
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +0 -159
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +0 -29
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +0 -68
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +0 -71
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +0 -77
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +0 -123
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +0 -64
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +0 -66
- 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 +0 -268
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +0 -71
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +0 -55
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +0 -77
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +0 -54
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +0 -247
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +0 -63
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +0 -83
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +0 -72
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +0 -106
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +0 -126
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +0 -79
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +0 -53
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +0 -75
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +0 -3
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +0 -241
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +0 -124
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +0 -391
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +0 -78
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +0 -220
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +0 -111
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +0 -240
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +0 -174
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +0 -44
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +0 -248
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +0 -322
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +0 -467
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +0 -250
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +0 -40
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +0 -308
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +0 -220
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +0 -252
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +0 -133
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +0 -100
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +0 -164
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +0 -93
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +0 -85
- 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 +0 -5
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +0 -469
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +0 -169
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +0 -130
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +0 -217
- 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 +0 -104
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +0 -47
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +0 -174
- 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 +0 -184
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +0 -1286
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +0 -6
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +0 -155
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +0 -373
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +0 -60
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +0 -204
- 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 +0 -99
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +0 -226
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +0 -180
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +0 -98
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +0 -49
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +0 -146
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +0 -21
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +0 -1183
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +0 -563
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +0 -2279
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/tests.py +0 -51
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +0 -375
- 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 +0 -276
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +0 -108
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +0 -586
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +0 -239
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +0 -162
- build/lib/build/lib/build/lib/build/lib/build/lib/nabu/utils.py +0 -836
- build/lib/build/lib/build/lib/build/lib/doc/conf.py +0 -137
- build/lib/build/lib/build/lib/build/lib/doc/create_conf_doc.py +0 -38
- build/lib/build/lib/build/lib/build/lib/doc/get_mathjax.py +0 -34
- build/lib/build/lib/build/lib/build/lib/nabu/__init__.py +0 -17
- 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 +0 -88
- build/lib/build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +0 -69
- build/lib/build/lib/build/lib/build/lib/nabu/app/cast_volume.py +0 -272
- build/lib/build/lib/build/lib/build/lib/nabu/app/cli_configs.py +0 -626
- build/lib/build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +0 -94
- build/lib/build/lib/build/lib/build/lib/nabu/app/composite_cor.py +0 -144
- build/lib/build/lib/build/lib/build/lib/nabu/app/correct_rot.py +0 -70
- build/lib/build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +0 -153
- build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +0 -358
- build/lib/build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +0 -449
- build/lib/build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +0 -143
- build/lib/build/lib/build/lib/build/lib/nabu/app/generate_header.py +0 -261
- build/lib/build/lib/build/lib/build/lib/nabu/app/histogram.py +0 -197
- build/lib/build/lib/build/lib/build/lib/nabu/app/multicor.py +0 -90
- build/lib/build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +0 -125
- build/lib/build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +0 -151
- build/lib/build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +0 -163
- build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct.py +0 -120
- build/lib/build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +0 -116
- build/lib/build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +0 -181
- build/lib/build/lib/build/lib/build/lib/nabu/app/rotate.py +0 -162
- build/lib/build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +0 -98
- build/lib/build/lib/build/lib/build/lib/nabu/app/stitching.py +0 -85
- build/lib/build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +0 -78
- build/lib/build/lib/build/lib/build/lib/nabu/app/utils.py +0 -33
- build/lib/build/lib/build/lib/build/lib/nabu/app/validator.py +0 -110
- 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 +0 -8
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/fft.py +0 -4
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/kernel.py +0 -97
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/processing.py +0 -75
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/nabu/cuda/utils.py +0 -331
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/__init__.py +0 -12
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/alignment.py +0 -578
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor.py +0 -1621
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +0 -183
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/distortion.py +0 -112
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/focus.py +0 -362
- 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 +0 -70
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +0 -472
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +0 -105
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +0 -41
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +0 -78
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/tilt.py +0 -214
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/translation.py +0 -193
- build/lib/build/lib/build/lib/build/lib/nabu/estimation/utils.py +0 -39
- build/lib/build/lib/build/lib/build/lib/nabu/io/__init__.py +0 -2
- build/lib/build/lib/build/lib/build/lib/nabu/io/cast_volume.py +0 -371
- build/lib/build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +0 -305
- build/lib/build/lib/build/lib/build/lib/nabu/io/reader.py +0 -628
- build/lib/build/lib/build/lib/build/lib/nabu/io/reader_helical.py +0 -114
- 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 +0 -339
- build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +0 -178
- build/lib/build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +0 -187
- build/lib/build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +0 -99
- build/lib/build/lib/build/lib/build/lib/nabu/io/utils.py +0 -263
- build/lib/build/lib/build/lib/build/lib/nabu/io/writer.py +0 -892
- 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 +0 -98
- build/lib/build/lib/build/lib/build/lib/nabu/misc/fftshift.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/misc/filters.py +0 -24
- build/lib/build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +0 -152
- build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +0 -8
- build/lib/build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/nabu/misc/padding.py +0 -83
- build/lib/build/lib/build/lib/build/lib/nabu/misc/padding_base.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/misc/processing_base.py +0 -4
- build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +0 -48
- build/lib/build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +0 -70
- build/lib/build/lib/build/lib/build/lib/nabu/misc/transpose.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp.py +0 -4
- build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +0 -8
- build/lib/build/lib/build/lib/build/lib/nabu/misc/utils.py +0 -117
- 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 +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/kernel.py +0 -135
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +0 -35
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/padding.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/opencl/processing.py +0 -62
- 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 +0 -292
- 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 +0 -265
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +0 -589
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +0 -164
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +0 -211
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +0 -20
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +0 -1012
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +0 -149
- 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 +0 -849
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +0 -152
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +0 -260
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +0 -63
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +0 -590
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +0 -825
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +0 -851
- 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 +0 -19
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +0 -147
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +0 -246
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +0 -575
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +0 -1670
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +0 -119
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +0 -598
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +0 -42
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +0 -175
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +0 -62
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +0 -483
- 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 +0 -157
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +0 -61
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +0 -51
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +0 -101
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/params.py +0 -163
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +0 -210
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +0 -78
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +0 -149
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/utils.py +0 -116
- build/lib/build/lib/build/lib/build/lib/nabu/pipeline/writer.py +0 -193
- 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 +0 -7
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/alignment.py +0 -11
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd.py +0 -161
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +0 -169
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf.py +0 -361
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +0 -142
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/distortion.py +0 -92
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +0 -212
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +0 -174
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +0 -68
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +0 -448
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +0 -144
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +0 -79
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase.py +0 -425
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +0 -143
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift.py +0 -95
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +0 -102
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +0 -59
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +0 -250
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +0 -86
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +0 -626
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +0 -67
- build/lib/build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +0 -73
- 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 +0 -375
- build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_base.py +0 -163
- build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +0 -256
- build/lib/build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +0 -54
- build/lib/build/lib/build/lib/build/lib/nabu/processing/fftshift.py +0 -134
- build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram.py +0 -286
- build/lib/build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +0 -126
- build/lib/build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +0 -159
- build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd.py +0 -29
- build/lib/build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +0 -68
- build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_base.py +0 -71
- build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +0 -75
- build/lib/build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +0 -77
- build/lib/build/lib/build/lib/build/lib/nabu/processing/processing_base.py +0 -123
- build/lib/build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +0 -64
- build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation.py +0 -63
- build/lib/build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +0 -66
- 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 +0 -268
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +0 -71
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +0 -55
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +0 -77
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +0 -54
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +0 -247
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +0 -63
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +0 -83
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +0 -72
- build/lib/build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +0 -106
- build/lib/build/lib/build/lib/build/lib/nabu/processing/transpose.py +0 -126
- build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp.py +0 -79
- build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +0 -53
- build/lib/build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +0 -75
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +0 -3
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +0 -241
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +0 -124
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +0 -391
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +0 -78
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +0 -220
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +0 -103
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +0 -111
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +0 -240
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +0 -174
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +0 -44
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +0 -248
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +0 -322
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +0 -467
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +0 -250
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +0 -40
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +0 -308
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +0 -220
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +0 -252
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +0 -133
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +0 -100
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +0 -164
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +0 -93
- build/lib/build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +0 -85
- 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 +0 -5
- build/lib/build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +0 -469
- build/lib/build/lib/build/lib/build/lib/nabu/resources/gpu.py +0 -169
- build/lib/build/lib/build/lib/build/lib/nabu/resources/logger.py +0 -130
- build/lib/build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +0 -217
- 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 +0 -104
- build/lib/build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +0 -47
- build/lib/build/lib/build/lib/build/lib/nabu/resources/utils.py +0 -174
- 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 +0 -184
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/config.py +0 -1286
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/definitions.py +0 -6
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +0 -155
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/overlap.py +0 -373
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +0 -60
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +0 -204
- 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 +0 -99
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +0 -226
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +0 -180
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +0 -98
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +0 -49
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +0 -146
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +0 -21
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +0 -1183
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/utils.py +0 -563
- build/lib/build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +0 -2279
- build/lib/build/lib/build/lib/build/lib/nabu/tests.py +0 -51
- build/lib/build/lib/build/lib/build/lib/nabu/testutils.py +0 -375
- 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 +0 -276
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +0 -108
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +0 -586
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +0 -239
- build/lib/build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +0 -162
- build/lib/build/lib/build/lib/build/lib/nabu/utils.py +0 -836
- build/lib/build/lib/build/lib/doc/conf.py +0 -137
- build/lib/build/lib/build/lib/doc/create_conf_doc.py +0 -38
- build/lib/build/lib/build/lib/doc/get_mathjax.py +0 -34
- build/lib/build/lib/build/lib/nabu/__init__.py +0 -17
- build/lib/build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/app/bootstrap.py +0 -88
- build/lib/build/lib/build/lib/nabu/app/bootstrap_stitching.py +0 -69
- build/lib/build/lib/build/lib/nabu/app/cast_volume.py +0 -272
- build/lib/build/lib/build/lib/nabu/app/cli_configs.py +0 -626
- build/lib/build/lib/build/lib/nabu/app/compare_volumes.py +0 -94
- build/lib/build/lib/build/lib/nabu/app/composite_cor.py +0 -144
- build/lib/build/lib/build/lib/nabu/app/correct_rot.py +0 -70
- build/lib/build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +0 -153
- build/lib/build/lib/build/lib/nabu/app/diag_to_pix.py +0 -358
- build/lib/build/lib/build/lib/nabu/app/diag_to_rot.py +0 -449
- build/lib/build/lib/build/lib/nabu/app/double_flatfield.py +0 -143
- build/lib/build/lib/build/lib/nabu/app/generate_header.py +0 -261
- build/lib/build/lib/build/lib/nabu/app/histogram.py +0 -197
- build/lib/build/lib/build/lib/nabu/app/multicor.py +0 -90
- build/lib/build/lib/build/lib/nabu/app/nx_z_splitter.py +0 -125
- build/lib/build/lib/build/lib/nabu/app/parse_reconstruction_log.py +0 -151
- build/lib/build/lib/build/lib/nabu/app/prepare_weights_double.py +0 -163
- build/lib/build/lib/build/lib/nabu/app/reconstruct.py +0 -120
- build/lib/build/lib/build/lib/nabu/app/reconstruct_helical.py +0 -116
- build/lib/build/lib/build/lib/nabu/app/reduce_dark_flat.py +0 -181
- build/lib/build/lib/build/lib/nabu/app/rotate.py +0 -162
- build/lib/build/lib/build/lib/nabu/app/shrink_dataset.py +0 -98
- build/lib/build/lib/build/lib/nabu/app/stitching.py +0 -85
- build/lib/build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +0 -78
- build/lib/build/lib/build/lib/nabu/app/utils.py +0 -33
- build/lib/build/lib/build/lib/nabu/app/validator.py +0 -110
- build/lib/build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/cuda/convolution.py +0 -8
- build/lib/build/lib/build/lib/nabu/cuda/fft.py +0 -4
- build/lib/build/lib/build/lib/nabu/cuda/kernel.py +0 -97
- build/lib/build/lib/build/lib/nabu/cuda/medfilt.py +0 -6
- build/lib/build/lib/build/lib/nabu/cuda/padding.py +0 -6
- build/lib/build/lib/build/lib/nabu/cuda/processing.py +0 -75
- build/lib/build/lib/build/lib/nabu/cuda/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/nabu/cuda/utils.py +0 -331
- build/lib/build/lib/build/lib/nabu/estimation/__init__.py +0 -12
- build/lib/build/lib/build/lib/nabu/estimation/alignment.py +0 -578
- build/lib/build/lib/build/lib/nabu/estimation/cor.py +0 -1621
- build/lib/build/lib/build/lib/nabu/estimation/cor_sino.py +0 -183
- build/lib/build/lib/build/lib/nabu/estimation/distortion.py +0 -112
- build/lib/build/lib/build/lib/nabu/estimation/focus.py +0 -362
- 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 +0 -70
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_cor.py +0 -472
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_focus.py +0 -105
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_tilt.py +0 -41
- build/lib/build/lib/build/lib/nabu/estimation/tests/test_translation.py +0 -78
- build/lib/build/lib/build/lib/nabu/estimation/tilt.py +0 -214
- build/lib/build/lib/build/lib/nabu/estimation/translation.py +0 -193
- build/lib/build/lib/build/lib/nabu/estimation/utils.py +0 -39
- build/lib/build/lib/build/lib/nabu/io/__init__.py +0 -2
- build/lib/build/lib/build/lib/nabu/io/cast_volume.py +0 -371
- build/lib/build/lib/build/lib/nabu/io/detector_distortion.py +0 -305
- build/lib/build/lib/build/lib/nabu/io/reader.py +0 -628
- build/lib/build/lib/build/lib/nabu/io/reader_helical.py +0 -114
- 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 +0 -339
- build/lib/build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +0 -178
- build/lib/build/lib/build/lib/nabu/io/tests/test_writers.py +0 -187
- build/lib/build/lib/build/lib/nabu/io/tiffwriter_zmm.py +0 -99
- build/lib/build/lib/build/lib/nabu/io/utils.py +0 -263
- build/lib/build/lib/build/lib/nabu/io/writer.py +0 -892
- build/lib/build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/misc/binning.py +0 -98
- build/lib/build/lib/build/lib/nabu/misc/fftshift.py +0 -6
- build/lib/build/lib/build/lib/nabu/misc/filters.py +0 -24
- build/lib/build/lib/build/lib/nabu/misc/fourier_filters.py +0 -152
- build/lib/build/lib/build/lib/nabu/misc/histogram.py +0 -6
- build/lib/build/lib/build/lib/nabu/misc/histogram_cuda.py +0 -8
- build/lib/build/lib/build/lib/nabu/misc/kernel_base.py +0 -4
- build/lib/build/lib/build/lib/nabu/misc/padding.py +0 -83
- build/lib/build/lib/build/lib/nabu/misc/padding_base.py +0 -6
- build/lib/build/lib/build/lib/nabu/misc/processing_base.py +0 -4
- build/lib/build/lib/build/lib/nabu/misc/rotation.py +0 -6
- build/lib/build/lib/build/lib/nabu/misc/rotation_cuda.py +0 -6
- build/lib/build/lib/build/lib/nabu/misc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/nabu/misc/tests/test_binning.py +0 -48
- build/lib/build/lib/build/lib/nabu/misc/tests/test_interpolation.py +0 -70
- build/lib/build/lib/build/lib/nabu/misc/transpose.py +0 -6
- build/lib/build/lib/build/lib/nabu/misc/unsharp.py +0 -4
- build/lib/build/lib/build/lib/nabu/misc/unsharp_cuda.py +0 -6
- build/lib/build/lib/build/lib/nabu/misc/unsharp_opencl.py +0 -8
- build/lib/build/lib/build/lib/nabu/misc/utils.py +0 -117
- build/lib/build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/opencl/fft.py +0 -6
- build/lib/build/lib/build/lib/nabu/opencl/kernel.py +0 -135
- build/lib/build/lib/build/lib/nabu/opencl/memcpy.py +0 -35
- build/lib/build/lib/build/lib/nabu/opencl/padding.py +0 -6
- build/lib/build/lib/build/lib/nabu/opencl/processing.py +0 -62
- build/lib/build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/opencl/utils.py +0 -292
- build/lib/build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/pipeline/config.py +0 -265
- build/lib/build/lib/build/lib/nabu/pipeline/config_validators.py +0 -589
- build/lib/build/lib/build/lib/nabu/pipeline/datadump.py +0 -164
- build/lib/build/lib/build/lib/nabu/pipeline/dataset_validator.py +0 -211
- build/lib/build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +0 -20
- build/lib/build/lib/build/lib/nabu/pipeline/estimators.py +0 -1012
- build/lib/build/lib/build/lib/nabu/pipeline/fallback_utils.py +0 -149
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +0 -849
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +0 -152
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/computations.py +0 -260
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +0 -63
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +0 -590
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +0 -825
- build/lib/build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +0 -851
- 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 +0 -19
- build/lib/build/lib/build/lib/nabu/pipeline/helical/fbp.py +0 -147
- build/lib/build/lib/build/lib/nabu/pipeline/helical/filtering.py +0 -246
- build/lib/build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +0 -575
- build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +0 -1670
- build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +0 -119
- build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +0 -598
- build/lib/build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +0 -42
- build/lib/build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +0 -175
- build/lib/build/lib/build/lib/nabu/pipeline/helical/processconfig.py +0 -62
- build/lib/build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +0 -483
- 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 +0 -157
- build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
- build/lib/build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +0 -61
- build/lib/build/lib/build/lib/nabu/pipeline/helical/utils.py +0 -51
- build/lib/build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +0 -101
- build/lib/build/lib/build/lib/nabu/pipeline/params.py +0 -163
- build/lib/build/lib/build/lib/nabu/pipeline/processconfig.py +0 -210
- build/lib/build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +0 -78
- build/lib/build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +0 -149
- build/lib/build/lib/build/lib/nabu/pipeline/utils.py +0 -116
- build/lib/build/lib/build/lib/nabu/pipeline/writer.py +0 -193
- build/lib/build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/preproc/__init__.py +0 -7
- build/lib/build/lib/build/lib/nabu/preproc/alignment.py +0 -11
- build/lib/build/lib/build/lib/nabu/preproc/ccd.py +0 -161
- build/lib/build/lib/build/lib/nabu/preproc/ccd_cuda.py +0 -169
- build/lib/build/lib/build/lib/nabu/preproc/ctf.py +0 -361
- build/lib/build/lib/build/lib/nabu/preproc/ctf_cuda.py +0 -142
- build/lib/build/lib/build/lib/nabu/preproc/distortion.py +0 -92
- build/lib/build/lib/build/lib/nabu/preproc/double_flatfield.py +0 -212
- build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +0 -174
- build/lib/build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +0 -68
- build/lib/build/lib/build/lib/nabu/preproc/flatfield.py +0 -448
- build/lib/build/lib/build/lib/nabu/preproc/flatfield_cuda.py +0 -144
- build/lib/build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +0 -79
- build/lib/build/lib/build/lib/nabu/preproc/phase.py +0 -425
- build/lib/build/lib/build/lib/nabu/preproc/phase_cuda.py +0 -143
- build/lib/build/lib/build/lib/nabu/preproc/shift.py +0 -95
- build/lib/build/lib/build/lib/nabu/preproc/shift_cuda.py +0 -102
- build/lib/build/lib/build/lib/nabu/preproc/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +0 -59
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_ctf.py +0 -250
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +0 -86
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +0 -626
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_paganin.py +0 -67
- build/lib/build/lib/build/lib/nabu/preproc/tests/test_vshift.py +0 -73
- build/lib/build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/processing/convolution_cuda.py +0 -375
- build/lib/build/lib/build/lib/nabu/processing/fft_base.py +0 -163
- build/lib/build/lib/build/lib/nabu/processing/fft_cuda.py +0 -256
- build/lib/build/lib/build/lib/nabu/processing/fft_opencl.py +0 -54
- build/lib/build/lib/build/lib/nabu/processing/fftshift.py +0 -134
- build/lib/build/lib/build/lib/nabu/processing/histogram.py +0 -286
- build/lib/build/lib/build/lib/nabu/processing/histogram_cuda.py +0 -103
- build/lib/build/lib/build/lib/nabu/processing/kernel_base.py +0 -126
- build/lib/build/lib/build/lib/nabu/processing/medfilt_cuda.py +0 -159
- build/lib/build/lib/build/lib/nabu/processing/muladd.py +0 -29
- build/lib/build/lib/build/lib/nabu/processing/muladd_cuda.py +0 -68
- build/lib/build/lib/build/lib/nabu/processing/padding_base.py +0 -71
- build/lib/build/lib/build/lib/nabu/processing/padding_cuda.py +0 -75
- build/lib/build/lib/build/lib/nabu/processing/padding_opencl.py +0 -77
- build/lib/build/lib/build/lib/nabu/processing/processing_base.py +0 -123
- build/lib/build/lib/build/lib/nabu/processing/roll_opencl.py +0 -64
- build/lib/build/lib/build/lib/nabu/processing/rotation.py +0 -63
- build/lib/build/lib/build/lib/nabu/processing/rotation_cuda.py +0 -66
- 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 +0 -268
- build/lib/build/lib/build/lib/nabu/processing/tests/test_fftshift.py +0 -71
- build/lib/build/lib/build/lib/nabu/processing/tests/test_histogram.py +0 -55
- build/lib/build/lib/build/lib/nabu/processing/tests/test_medfilt.py +0 -77
- build/lib/build/lib/build/lib/nabu/processing/tests/test_muladd.py +0 -54
- build/lib/build/lib/build/lib/nabu/processing/tests/test_padding.py +0 -247
- build/lib/build/lib/build/lib/nabu/processing/tests/test_roll.py +0 -63
- build/lib/build/lib/build/lib/nabu/processing/tests/test_rotation.py +0 -83
- build/lib/build/lib/build/lib/nabu/processing/tests/test_transpose.py +0 -72
- build/lib/build/lib/build/lib/nabu/processing/tests/test_unsharp.py +0 -106
- build/lib/build/lib/build/lib/nabu/processing/transpose.py +0 -126
- build/lib/build/lib/build/lib/nabu/processing/unsharp.py +0 -79
- build/lib/build/lib/build/lib/nabu/processing/unsharp_cuda.py +0 -53
- build/lib/build/lib/build/lib/nabu/processing/unsharp_opencl.py +0 -75
- build/lib/build/lib/build/lib/nabu/reconstruction/__init__.py +0 -3
- build/lib/build/lib/build/lib/nabu/reconstruction/cone.py +0 -241
- build/lib/build/lib/build/lib/nabu/reconstruction/fbp.py +0 -124
- build/lib/build/lib/build/lib/nabu/reconstruction/fbp_base.py +0 -391
- build/lib/build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +0 -78
- build/lib/build/lib/build/lib/nabu/reconstruction/filtering.py +0 -220
- build/lib/build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +0 -103
- build/lib/build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +0 -111
- build/lib/build/lib/build/lib/nabu/reconstruction/projection.py +0 -240
- build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor.py +0 -174
- build/lib/build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +0 -44
- build/lib/build/lib/build/lib/nabu/reconstruction/rings.py +0 -248
- build/lib/build/lib/build/lib/nabu/reconstruction/rings_cuda.py +0 -322
- build/lib/build/lib/build/lib/nabu/reconstruction/sinogram.py +0 -467
- build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +0 -250
- build/lib/build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +0 -40
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/__init__.py +0 -1
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +0 -308
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +0 -220
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +0 -252
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +0 -133
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +0 -100
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +0 -164
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +0 -93
- build/lib/build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +0 -85
- 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 +0 -5
- build/lib/build/lib/build/lib/nabu/resources/dataset_analyzer.py +0 -469
- build/lib/build/lib/build/lib/nabu/resources/gpu.py +0 -169
- build/lib/build/lib/build/lib/nabu/resources/logger.py +0 -130
- build/lib/build/lib/build/lib/nabu/resources/nxflatfield.py +0 -217
- 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 +0 -104
- build/lib/build/lib/build/lib/nabu/resources/tests/test_units.py +0 -47
- build/lib/build/lib/build/lib/nabu/resources/utils.py +0 -174
- build/lib/build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/stitching/alignment.py +0 -184
- build/lib/build/lib/build/lib/nabu/stitching/config.py +0 -1286
- build/lib/build/lib/build/lib/nabu/stitching/definitions.py +0 -6
- build/lib/build/lib/build/lib/nabu/stitching/frame_composition.py +0 -155
- build/lib/build/lib/build/lib/nabu/stitching/overlap.py +0 -373
- build/lib/build/lib/build/lib/nabu/stitching/sample_normalization.py +0 -60
- build/lib/build/lib/build/lib/nabu/stitching/slurm_utils.py +0 -204
- 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 +0 -99
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_config.py +0 -226
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +0 -180
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_overlap.py +0 -98
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +0 -49
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +0 -146
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_utils.py +0 -21
- build/lib/build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +0 -1183
- build/lib/build/lib/build/lib/nabu/stitching/utils.py +0 -563
- build/lib/build/lib/build/lib/nabu/stitching/z_stitching.py +0 -2279
- build/lib/build/lib/build/lib/nabu/tests.py +0 -51
- build/lib/build/lib/build/lib/nabu/testutils.py +0 -375
- build/lib/build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +0 -276
- build/lib/build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +0 -108
- build/lib/build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +0 -586
- build/lib/build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +0 -239
- build/lib/build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +0 -162
- build/lib/build/lib/build/lib/nabu/utils.py +0 -836
- build/lib/build/lib/doc/conf.py +0 -137
- build/lib/build/lib/doc/create_conf_doc.py +0 -38
- build/lib/build/lib/doc/get_mathjax.py +0 -34
- build/lib/build/lib/nabu/__init__.py +0 -17
- build/lib/build/lib/nabu/app/__init__.py +0 -0
- build/lib/build/lib/nabu/app/bootstrap.py +0 -88
- build/lib/build/lib/nabu/app/bootstrap_stitching.py +0 -69
- build/lib/build/lib/nabu/app/cast_volume.py +0 -272
- build/lib/build/lib/nabu/app/cli_configs.py +0 -626
- build/lib/build/lib/nabu/app/compare_volumes.py +0 -94
- build/lib/build/lib/nabu/app/composite_cor.py +0 -144
- build/lib/build/lib/nabu/app/correct_rot.py +0 -70
- build/lib/build/lib/nabu/app/create_distortion_map_from_poly.py +0 -153
- build/lib/build/lib/nabu/app/diag_to_pix.py +0 -358
- build/lib/build/lib/nabu/app/diag_to_rot.py +0 -449
- build/lib/build/lib/nabu/app/double_flatfield.py +0 -143
- build/lib/build/lib/nabu/app/generate_header.py +0 -261
- build/lib/build/lib/nabu/app/histogram.py +0 -197
- build/lib/build/lib/nabu/app/multicor.py +0 -90
- build/lib/build/lib/nabu/app/nx_z_splitter.py +0 -125
- build/lib/build/lib/nabu/app/parse_reconstruction_log.py +0 -151
- build/lib/build/lib/nabu/app/prepare_weights_double.py +0 -163
- build/lib/build/lib/nabu/app/reconstruct.py +0 -120
- build/lib/build/lib/nabu/app/reconstruct_helical.py +0 -116
- build/lib/build/lib/nabu/app/reduce_dark_flat.py +0 -181
- build/lib/build/lib/nabu/app/rotate.py +0 -162
- build/lib/build/lib/nabu/app/shrink_dataset.py +0 -98
- build/lib/build/lib/nabu/app/stitching.py +0 -85
- build/lib/build/lib/nabu/app/tests/test_reduce_dark_flat.py +0 -78
- build/lib/build/lib/nabu/app/utils.py +0 -33
- build/lib/build/lib/nabu/app/validator.py +0 -110
- build/lib/build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/build/lib/nabu/cuda/convolution.py +0 -8
- build/lib/build/lib/nabu/cuda/fft.py +0 -4
- build/lib/build/lib/nabu/cuda/kernel.py +0 -97
- build/lib/build/lib/nabu/cuda/medfilt.py +0 -6
- build/lib/build/lib/nabu/cuda/padding.py +0 -6
- build/lib/build/lib/nabu/cuda/processing.py +0 -75
- build/lib/build/lib/nabu/cuda/tests/__init__.py +0 -1
- build/lib/build/lib/nabu/cuda/utils.py +0 -331
- build/lib/build/lib/nabu/estimation/__init__.py +0 -12
- build/lib/build/lib/nabu/estimation/alignment.py +0 -578
- build/lib/build/lib/nabu/estimation/cor.py +0 -1621
- build/lib/build/lib/nabu/estimation/cor_sino.py +0 -183
- build/lib/build/lib/nabu/estimation/distortion.py +0 -112
- build/lib/build/lib/nabu/estimation/focus.py +0 -362
- build/lib/build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/estimation/tests/test_alignment.py +0 -70
- build/lib/build/lib/nabu/estimation/tests/test_cor.py +0 -472
- build/lib/build/lib/nabu/estimation/tests/test_focus.py +0 -105
- build/lib/build/lib/nabu/estimation/tests/test_tilt.py +0 -41
- build/lib/build/lib/nabu/estimation/tests/test_translation.py +0 -78
- build/lib/build/lib/nabu/estimation/tilt.py +0 -214
- build/lib/build/lib/nabu/estimation/translation.py +0 -193
- build/lib/build/lib/nabu/estimation/utils.py +0 -39
- build/lib/build/lib/nabu/io/__init__.py +0 -2
- build/lib/build/lib/nabu/io/cast_volume.py +0 -371
- build/lib/build/lib/nabu/io/detector_distortion.py +0 -305
- build/lib/build/lib/nabu/io/reader.py +0 -628
- build/lib/build/lib/nabu/io/reader_helical.py +0 -114
- build/lib/build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/io/tests/test_cast_volume.py +0 -339
- build/lib/build/lib/nabu/io/tests/test_detector_distortion.py +0 -178
- build/lib/build/lib/nabu/io/tests/test_writers.py +0 -187
- build/lib/build/lib/nabu/io/tiffwriter_zmm.py +0 -99
- build/lib/build/lib/nabu/io/utils.py +0 -263
- build/lib/build/lib/nabu/io/writer.py +0 -892
- build/lib/build/lib/nabu/misc/__init__.py +0 -0
- build/lib/build/lib/nabu/misc/binning.py +0 -98
- build/lib/build/lib/nabu/misc/fftshift.py +0 -6
- build/lib/build/lib/nabu/misc/filters.py +0 -24
- build/lib/build/lib/nabu/misc/fourier_filters.py +0 -152
- build/lib/build/lib/nabu/misc/histogram.py +0 -6
- build/lib/build/lib/nabu/misc/histogram_cuda.py +0 -8
- build/lib/build/lib/nabu/misc/kernel_base.py +0 -4
- build/lib/build/lib/nabu/misc/padding.py +0 -83
- build/lib/build/lib/nabu/misc/padding_base.py +0 -6
- build/lib/build/lib/nabu/misc/processing_base.py +0 -4
- build/lib/build/lib/nabu/misc/rotation.py +0 -6
- build/lib/build/lib/nabu/misc/rotation_cuda.py +0 -6
- build/lib/build/lib/nabu/misc/tests/__init__.py +0 -1
- build/lib/build/lib/nabu/misc/tests/test_binning.py +0 -48
- build/lib/build/lib/nabu/misc/tests/test_interpolation.py +0 -70
- build/lib/build/lib/nabu/misc/transpose.py +0 -6
- build/lib/build/lib/nabu/misc/unsharp.py +0 -4
- build/lib/build/lib/nabu/misc/unsharp_cuda.py +0 -6
- build/lib/build/lib/nabu/misc/unsharp_opencl.py +0 -8
- build/lib/build/lib/nabu/misc/utils.py +0 -117
- build/lib/build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/build/lib/nabu/opencl/fft.py +0 -6
- build/lib/build/lib/nabu/opencl/kernel.py +0 -135
- build/lib/build/lib/nabu/opencl/memcpy.py +0 -35
- build/lib/build/lib/nabu/opencl/padding.py +0 -6
- build/lib/build/lib/nabu/opencl/processing.py +0 -62
- build/lib/build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/opencl/utils.py +0 -292
- build/lib/build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/build/lib/nabu/pipeline/config.py +0 -265
- build/lib/build/lib/nabu/pipeline/config_validators.py +0 -589
- build/lib/build/lib/nabu/pipeline/datadump.py +0 -164
- build/lib/build/lib/nabu/pipeline/dataset_validator.py +0 -211
- build/lib/build/lib/nabu/pipeline/detector_distortion_provider.py +0 -20
- build/lib/build/lib/nabu/pipeline/estimators.py +0 -1012
- build/lib/build/lib/nabu/pipeline/fallback_utils.py +0 -149
- build/lib/build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/build/lib/nabu/pipeline/fullfield/chunked.py +0 -849
- build/lib/build/lib/nabu/pipeline/fullfield/chunked_cuda.py +0 -152
- build/lib/build/lib/nabu/pipeline/fullfield/computations.py +0 -260
- build/lib/build/lib/nabu/pipeline/fullfield/dataset_validator.py +0 -63
- build/lib/build/lib/nabu/pipeline/fullfield/nabu_config.py +0 -590
- build/lib/build/lib/nabu/pipeline/fullfield/processconfig.py +0 -825
- build/lib/build/lib/nabu/pipeline/fullfield/reconstruction.py +0 -851
- build/lib/build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/build/lib/nabu/pipeline/helical/dataset_validator.py +0 -19
- build/lib/build/lib/nabu/pipeline/helical/fbp.py +0 -147
- build/lib/build/lib/nabu/pipeline/helical/filtering.py +0 -246
- build/lib/build/lib/nabu/pipeline/helical/gridded_accumulator.py +0 -575
- build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +0 -1670
- build/lib/build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +0 -119
- build/lib/build/lib/nabu/pipeline/helical/helical_reconstruction.py +0 -598
- build/lib/build/lib/nabu/pipeline/helical/helical_utils.py +0 -42
- build/lib/build/lib/nabu/pipeline/helical/nabu_config.py +0 -175
- build/lib/build/lib/nabu/pipeline/helical/processconfig.py +0 -62
- build/lib/build/lib/nabu/pipeline/helical/span_strategy.py +0 -483
- build/lib/build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/pipeline/helical/tests/test_accumulator.py +0 -157
- build/lib/build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
- build/lib/build/lib/nabu/pipeline/helical/tests/test_strategy.py +0 -61
- build/lib/build/lib/nabu/pipeline/helical/utils.py +0 -51
- build/lib/build/lib/nabu/pipeline/helical/weight_balancer.py +0 -101
- build/lib/build/lib/nabu/pipeline/params.py +0 -163
- build/lib/build/lib/nabu/pipeline/processconfig.py +0 -210
- build/lib/build/lib/nabu/pipeline/tests/test_chunk_reader.py +0 -78
- build/lib/build/lib/nabu/pipeline/tests/test_estimators.py +0 -149
- build/lib/build/lib/nabu/pipeline/utils.py +0 -116
- build/lib/build/lib/nabu/pipeline/writer.py +0 -193
- build/lib/build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/build/lib/nabu/preproc/__init__.py +0 -7
- build/lib/build/lib/nabu/preproc/alignment.py +0 -11
- build/lib/build/lib/nabu/preproc/ccd.py +0 -161
- build/lib/build/lib/nabu/preproc/ccd_cuda.py +0 -169
- build/lib/build/lib/nabu/preproc/ctf.py +0 -361
- build/lib/build/lib/nabu/preproc/ctf_cuda.py +0 -142
- build/lib/build/lib/nabu/preproc/distortion.py +0 -92
- build/lib/build/lib/nabu/preproc/double_flatfield.py +0 -212
- build/lib/build/lib/nabu/preproc/double_flatfield_cuda.py +0 -174
- build/lib/build/lib/nabu/preproc/double_flatfield_variable_region.py +0 -68
- build/lib/build/lib/nabu/preproc/flatfield.py +0 -448
- build/lib/build/lib/nabu/preproc/flatfield_cuda.py +0 -144
- build/lib/build/lib/nabu/preproc/flatfield_variable_region.py +0 -79
- build/lib/build/lib/nabu/preproc/phase.py +0 -425
- build/lib/build/lib/nabu/preproc/phase_cuda.py +0 -143
- build/lib/build/lib/nabu/preproc/shift.py +0 -95
- build/lib/build/lib/nabu/preproc/shift_cuda.py +0 -102
- build/lib/build/lib/nabu/preproc/tests/__init__.py +0 -1
- build/lib/build/lib/nabu/preproc/tests/test_ccd_corr.py +0 -59
- build/lib/build/lib/nabu/preproc/tests/test_ctf.py +0 -250
- build/lib/build/lib/nabu/preproc/tests/test_double_flatfield.py +0 -86
- build/lib/build/lib/nabu/preproc/tests/test_flatfield.py +0 -626
- build/lib/build/lib/nabu/preproc/tests/test_paganin.py +0 -67
- build/lib/build/lib/nabu/preproc/tests/test_vshift.py +0 -73
- build/lib/build/lib/nabu/processing/__init__.py +0 -0
- build/lib/build/lib/nabu/processing/convolution_cuda.py +0 -375
- build/lib/build/lib/nabu/processing/fft_base.py +0 -163
- build/lib/build/lib/nabu/processing/fft_cuda.py +0 -256
- build/lib/build/lib/nabu/processing/fft_opencl.py +0 -54
- build/lib/build/lib/nabu/processing/fftshift.py +0 -134
- build/lib/build/lib/nabu/processing/histogram.py +0 -286
- build/lib/build/lib/nabu/processing/histogram_cuda.py +0 -103
- build/lib/build/lib/nabu/processing/kernel_base.py +0 -126
- build/lib/build/lib/nabu/processing/medfilt_cuda.py +0 -159
- build/lib/build/lib/nabu/processing/muladd.py +0 -29
- build/lib/build/lib/nabu/processing/muladd_cuda.py +0 -68
- build/lib/build/lib/nabu/processing/padding_base.py +0 -71
- build/lib/build/lib/nabu/processing/padding_cuda.py +0 -75
- build/lib/build/lib/nabu/processing/padding_opencl.py +0 -77
- build/lib/build/lib/nabu/processing/processing_base.py +0 -123
- build/lib/build/lib/nabu/processing/roll_opencl.py +0 -64
- build/lib/build/lib/nabu/processing/rotation.py +0 -63
- build/lib/build/lib/nabu/processing/rotation_cuda.py +0 -66
- build/lib/build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/processing/tests/test_fft.py +0 -268
- build/lib/build/lib/nabu/processing/tests/test_fftshift.py +0 -71
- build/lib/build/lib/nabu/processing/tests/test_histogram.py +0 -55
- build/lib/build/lib/nabu/processing/tests/test_medfilt.py +0 -77
- build/lib/build/lib/nabu/processing/tests/test_muladd.py +0 -54
- build/lib/build/lib/nabu/processing/tests/test_padding.py +0 -247
- build/lib/build/lib/nabu/processing/tests/test_roll.py +0 -63
- build/lib/build/lib/nabu/processing/tests/test_rotation.py +0 -83
- build/lib/build/lib/nabu/processing/tests/test_transpose.py +0 -72
- build/lib/build/lib/nabu/processing/tests/test_unsharp.py +0 -106
- build/lib/build/lib/nabu/processing/transpose.py +0 -126
- build/lib/build/lib/nabu/processing/unsharp.py +0 -79
- build/lib/build/lib/nabu/processing/unsharp_cuda.py +0 -53
- build/lib/build/lib/nabu/processing/unsharp_opencl.py +0 -75
- build/lib/build/lib/nabu/reconstruction/__init__.py +0 -3
- build/lib/build/lib/nabu/reconstruction/cone.py +0 -241
- build/lib/build/lib/nabu/reconstruction/fbp.py +0 -124
- build/lib/build/lib/nabu/reconstruction/fbp_base.py +0 -391
- build/lib/build/lib/nabu/reconstruction/fbp_opencl.py +0 -78
- build/lib/build/lib/nabu/reconstruction/filtering.py +0 -220
- build/lib/build/lib/nabu/reconstruction/filtering_cuda.py +0 -103
- build/lib/build/lib/nabu/reconstruction/filtering_opencl.py +0 -111
- build/lib/build/lib/nabu/reconstruction/projection.py +0 -240
- build/lib/build/lib/nabu/reconstruction/reconstructor.py +0 -174
- build/lib/build/lib/nabu/reconstruction/reconstructor_cuda.py +0 -44
- build/lib/build/lib/nabu/reconstruction/rings.py +0 -248
- build/lib/build/lib/nabu/reconstruction/rings_cuda.py +0 -322
- build/lib/build/lib/nabu/reconstruction/sinogram.py +0 -467
- build/lib/build/lib/nabu/reconstruction/sinogram_cuda.py +0 -250
- build/lib/build/lib/nabu/reconstruction/sinogram_opencl.py +0 -40
- build/lib/build/lib/nabu/reconstruction/tests/__init__.py +0 -1
- build/lib/build/lib/nabu/reconstruction/tests/test_cone.py +0 -308
- build/lib/build/lib/nabu/reconstruction/tests/test_deringer.py +0 -220
- build/lib/build/lib/nabu/reconstruction/tests/test_fbp.py +0 -252
- build/lib/build/lib/nabu/reconstruction/tests/test_filtering.py +0 -133
- build/lib/build/lib/nabu/reconstruction/tests/test_halftomo.py +0 -100
- build/lib/build/lib/nabu/reconstruction/tests/test_projector.py +0 -164
- build/lib/build/lib/nabu/reconstruction/tests/test_reconstructor.py +0 -93
- build/lib/build/lib/nabu/reconstruction/tests/test_sino_normalization.py +0 -85
- 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 +0 -5
- build/lib/build/lib/nabu/resources/dataset_analyzer.py +0 -469
- build/lib/build/lib/nabu/resources/gpu.py +0 -169
- build/lib/build/lib/nabu/resources/logger.py +0 -130
- build/lib/build/lib/nabu/resources/nxflatfield.py +0 -217
- 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 +0 -104
- build/lib/build/lib/nabu/resources/tests/test_units.py +0 -47
- build/lib/build/lib/nabu/resources/utils.py +0 -174
- build/lib/build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/build/lib/nabu/stitching/alignment.py +0 -184
- build/lib/build/lib/nabu/stitching/config.py +0 -1286
- build/lib/build/lib/nabu/stitching/definitions.py +0 -6
- build/lib/build/lib/nabu/stitching/frame_composition.py +0 -155
- build/lib/build/lib/nabu/stitching/overlap.py +0 -373
- build/lib/build/lib/nabu/stitching/sample_normalization.py +0 -60
- build/lib/build/lib/nabu/stitching/slurm_utils.py +0 -204
- build/lib/build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/build/lib/nabu/stitching/tests/test_alignment.py +0 -99
- build/lib/build/lib/nabu/stitching/tests/test_config.py +0 -226
- build/lib/build/lib/nabu/stitching/tests/test_frame_composition.py +0 -180
- build/lib/build/lib/nabu/stitching/tests/test_overlap.py +0 -98
- build/lib/build/lib/nabu/stitching/tests/test_sample_normalization.py +0 -49
- build/lib/build/lib/nabu/stitching/tests/test_slurm_utils.py +0 -146
- build/lib/build/lib/nabu/stitching/tests/test_utils.py +0 -21
- build/lib/build/lib/nabu/stitching/tests/test_z_stitching.py +0 -1183
- build/lib/build/lib/nabu/stitching/utils.py +0 -563
- build/lib/build/lib/nabu/stitching/z_stitching.py +0 -2279
- build/lib/build/lib/nabu/tests.py +0 -51
- build/lib/build/lib/nabu/testutils.py +0 -375
- build/lib/build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/build/lib/nabu/thirdparty/algotom_convert_sino.py +0 -276
- build/lib/build/lib/nabu/thirdparty/pore3d_deringer_munch.py +0 -108
- build/lib/build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +0 -586
- build/lib/build/lib/nabu/thirdparty/tomopy_phase.py +0 -239
- build/lib/build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +0 -162
- build/lib/build/lib/nabu/utils.py +0 -836
- build/lib/doc/conf.py +0 -137
- build/lib/doc/create_conf_doc.py +0 -38
- build/lib/doc/get_mathjax.py +0 -34
- build/lib/nabu/__init__.py +0 -17
- build/lib/nabu/app/__init__.py +0 -0
- build/lib/nabu/app/bootstrap.py +0 -88
- build/lib/nabu/app/bootstrap_stitching.py +0 -69
- build/lib/nabu/app/cast_volume.py +0 -272
- build/lib/nabu/app/cli_configs.py +0 -626
- build/lib/nabu/app/compare_volumes.py +0 -94
- build/lib/nabu/app/composite_cor.py +0 -144
- build/lib/nabu/app/correct_rot.py +0 -70
- build/lib/nabu/app/create_distortion_map_from_poly.py +0 -153
- build/lib/nabu/app/diag_to_pix.py +0 -358
- build/lib/nabu/app/diag_to_rot.py +0 -449
- build/lib/nabu/app/double_flatfield.py +0 -143
- build/lib/nabu/app/generate_header.py +0 -261
- build/lib/nabu/app/histogram.py +0 -197
- build/lib/nabu/app/multicor.py +0 -90
- build/lib/nabu/app/nx_z_splitter.py +0 -125
- build/lib/nabu/app/parse_reconstruction_log.py +0 -151
- build/lib/nabu/app/prepare_weights_double.py +0 -163
- build/lib/nabu/app/reconstruct.py +0 -120
- build/lib/nabu/app/reconstruct_helical.py +0 -116
- build/lib/nabu/app/reduce_dark_flat.py +0 -181
- build/lib/nabu/app/rotate.py +0 -162
- build/lib/nabu/app/shrink_dataset.py +0 -98
- build/lib/nabu/app/stitching.py +0 -85
- build/lib/nabu/app/tests/test_reduce_dark_flat.py +0 -78
- build/lib/nabu/app/utils.py +0 -33
- build/lib/nabu/app/validator.py +0 -110
- build/lib/nabu/cuda/__init__.py +0 -0
- build/lib/nabu/cuda/convolution.py +0 -8
- build/lib/nabu/cuda/fft.py +0 -4
- build/lib/nabu/cuda/kernel.py +0 -97
- build/lib/nabu/cuda/medfilt.py +0 -6
- build/lib/nabu/cuda/padding.py +0 -6
- build/lib/nabu/cuda/processing.py +0 -75
- build/lib/nabu/cuda/tests/__init__.py +0 -1
- build/lib/nabu/cuda/utils.py +0 -331
- build/lib/nabu/estimation/__init__.py +0 -12
- build/lib/nabu/estimation/alignment.py +0 -578
- build/lib/nabu/estimation/cor.py +0 -1621
- build/lib/nabu/estimation/cor_sino.py +0 -183
- build/lib/nabu/estimation/distortion.py +0 -112
- build/lib/nabu/estimation/focus.py +0 -362
- build/lib/nabu/estimation/tests/__init__.py +0 -0
- build/lib/nabu/estimation/tests/test_alignment.py +0 -70
- build/lib/nabu/estimation/tests/test_cor.py +0 -472
- build/lib/nabu/estimation/tests/test_focus.py +0 -105
- build/lib/nabu/estimation/tests/test_tilt.py +0 -41
- build/lib/nabu/estimation/tests/test_translation.py +0 -78
- build/lib/nabu/estimation/tilt.py +0 -214
- build/lib/nabu/estimation/translation.py +0 -193
- build/lib/nabu/estimation/utils.py +0 -39
- build/lib/nabu/io/__init__.py +0 -2
- build/lib/nabu/io/cast_volume.py +0 -371
- build/lib/nabu/io/detector_distortion.py +0 -305
- build/lib/nabu/io/reader.py +0 -628
- build/lib/nabu/io/reader_helical.py +0 -114
- build/lib/nabu/io/tests/__init__.py +0 -0
- build/lib/nabu/io/tests/test_cast_volume.py +0 -339
- build/lib/nabu/io/tests/test_detector_distortion.py +0 -178
- build/lib/nabu/io/tests/test_writers.py +0 -187
- build/lib/nabu/io/tiffwriter_zmm.py +0 -99
- build/lib/nabu/io/utils.py +0 -263
- build/lib/nabu/io/writer.py +0 -892
- build/lib/nabu/misc/__init__.py +0 -0
- build/lib/nabu/misc/binning.py +0 -98
- build/lib/nabu/misc/fftshift.py +0 -6
- build/lib/nabu/misc/filters.py +0 -24
- build/lib/nabu/misc/fourier_filters.py +0 -152
- build/lib/nabu/misc/histogram.py +0 -6
- build/lib/nabu/misc/histogram_cuda.py +0 -8
- build/lib/nabu/misc/kernel_base.py +0 -4
- build/lib/nabu/misc/padding.py +0 -83
- build/lib/nabu/misc/padding_base.py +0 -6
- build/lib/nabu/misc/processing_base.py +0 -4
- build/lib/nabu/misc/rotation.py +0 -6
- build/lib/nabu/misc/rotation_cuda.py +0 -6
- build/lib/nabu/misc/tests/__init__.py +0 -1
- build/lib/nabu/misc/tests/test_binning.py +0 -48
- build/lib/nabu/misc/tests/test_interpolation.py +0 -70
- build/lib/nabu/misc/transpose.py +0 -6
- build/lib/nabu/misc/unsharp.py +0 -4
- build/lib/nabu/misc/unsharp_cuda.py +0 -6
- build/lib/nabu/misc/unsharp_opencl.py +0 -8
- build/lib/nabu/misc/utils.py +0 -117
- build/lib/nabu/opencl/__init__.py +0 -0
- build/lib/nabu/opencl/fft.py +0 -6
- build/lib/nabu/opencl/kernel.py +0 -135
- build/lib/nabu/opencl/memcpy.py +0 -35
- build/lib/nabu/opencl/padding.py +0 -6
- build/lib/nabu/opencl/processing.py +0 -62
- build/lib/nabu/opencl/tests/__init__.py +0 -0
- build/lib/nabu/opencl/utils.py +0 -292
- build/lib/nabu/pipeline/__init__.py +0 -0
- build/lib/nabu/pipeline/config.py +0 -265
- build/lib/nabu/pipeline/config_validators.py +0 -589
- build/lib/nabu/pipeline/datadump.py +0 -164
- build/lib/nabu/pipeline/dataset_validator.py +0 -211
- build/lib/nabu/pipeline/detector_distortion_provider.py +0 -20
- build/lib/nabu/pipeline/estimators.py +0 -1012
- build/lib/nabu/pipeline/fallback_utils.py +0 -149
- build/lib/nabu/pipeline/fullfield/__init__.py +0 -0
- build/lib/nabu/pipeline/fullfield/chunked.py +0 -849
- build/lib/nabu/pipeline/fullfield/chunked_cuda.py +0 -152
- build/lib/nabu/pipeline/fullfield/computations.py +0 -260
- build/lib/nabu/pipeline/fullfield/dataset_validator.py +0 -63
- build/lib/nabu/pipeline/fullfield/nabu_config.py +0 -590
- build/lib/nabu/pipeline/fullfield/processconfig.py +0 -825
- build/lib/nabu/pipeline/fullfield/reconstruction.py +0 -851
- build/lib/nabu/pipeline/helical/__init__.py +0 -0
- build/lib/nabu/pipeline/helical/dataset_validator.py +0 -19
- build/lib/nabu/pipeline/helical/fbp.py +0 -147
- build/lib/nabu/pipeline/helical/filtering.py +0 -246
- build/lib/nabu/pipeline/helical/gridded_accumulator.py +0 -575
- build/lib/nabu/pipeline/helical/helical_chunked_regridded.py +0 -1670
- build/lib/nabu/pipeline/helical/helical_chunked_regridded_cuda.py +0 -119
- build/lib/nabu/pipeline/helical/helical_reconstruction.py +0 -598
- build/lib/nabu/pipeline/helical/helical_utils.py +0 -42
- build/lib/nabu/pipeline/helical/nabu_config.py +0 -175
- build/lib/nabu/pipeline/helical/processconfig.py +0 -62
- build/lib/nabu/pipeline/helical/span_strategy.py +0 -483
- build/lib/nabu/pipeline/helical/tests/__init__.py +0 -0
- build/lib/nabu/pipeline/helical/tests/test_accumulator.py +0 -157
- build/lib/nabu/pipeline/helical/tests/test_pipeline_elements_full.py +0 -355
- build/lib/nabu/pipeline/helical/tests/test_strategy.py +0 -61
- build/lib/nabu/pipeline/helical/utils.py +0 -51
- build/lib/nabu/pipeline/helical/weight_balancer.py +0 -101
- build/lib/nabu/pipeline/params.py +0 -163
- build/lib/nabu/pipeline/processconfig.py +0 -210
- build/lib/nabu/pipeline/tests/test_chunk_reader.py +0 -78
- build/lib/nabu/pipeline/tests/test_estimators.py +0 -149
- build/lib/nabu/pipeline/utils.py +0 -116
- build/lib/nabu/pipeline/writer.py +0 -193
- build/lib/nabu/pipeline/xrdct/__init__.py +0 -0
- build/lib/nabu/preproc/__init__.py +0 -7
- build/lib/nabu/preproc/alignment.py +0 -11
- build/lib/nabu/preproc/ccd.py +0 -161
- build/lib/nabu/preproc/ccd_cuda.py +0 -169
- build/lib/nabu/preproc/ctf.py +0 -361
- build/lib/nabu/preproc/ctf_cuda.py +0 -142
- build/lib/nabu/preproc/distortion.py +0 -92
- build/lib/nabu/preproc/double_flatfield.py +0 -212
- build/lib/nabu/preproc/double_flatfield_cuda.py +0 -174
- build/lib/nabu/preproc/double_flatfield_variable_region.py +0 -68
- build/lib/nabu/preproc/flatfield.py +0 -448
- build/lib/nabu/preproc/flatfield_cuda.py +0 -144
- build/lib/nabu/preproc/flatfield_variable_region.py +0 -79
- build/lib/nabu/preproc/phase.py +0 -425
- build/lib/nabu/preproc/phase_cuda.py +0 -143
- build/lib/nabu/preproc/shift.py +0 -95
- build/lib/nabu/preproc/shift_cuda.py +0 -102
- build/lib/nabu/preproc/tests/__init__.py +0 -1
- build/lib/nabu/preproc/tests/test_ccd_corr.py +0 -59
- build/lib/nabu/preproc/tests/test_ctf.py +0 -250
- build/lib/nabu/preproc/tests/test_double_flatfield.py +0 -86
- build/lib/nabu/preproc/tests/test_flatfield.py +0 -626
- build/lib/nabu/preproc/tests/test_paganin.py +0 -67
- build/lib/nabu/preproc/tests/test_vshift.py +0 -73
- build/lib/nabu/processing/__init__.py +0 -0
- build/lib/nabu/processing/convolution_cuda.py +0 -375
- build/lib/nabu/processing/fft_base.py +0 -163
- build/lib/nabu/processing/fft_cuda.py +0 -256
- build/lib/nabu/processing/fft_opencl.py +0 -54
- build/lib/nabu/processing/fftshift.py +0 -134
- build/lib/nabu/processing/histogram.py +0 -286
- build/lib/nabu/processing/histogram_cuda.py +0 -103
- build/lib/nabu/processing/kernel_base.py +0 -126
- build/lib/nabu/processing/medfilt_cuda.py +0 -159
- build/lib/nabu/processing/muladd.py +0 -29
- build/lib/nabu/processing/muladd_cuda.py +0 -68
- build/lib/nabu/processing/padding_base.py +0 -71
- build/lib/nabu/processing/padding_cuda.py +0 -75
- build/lib/nabu/processing/padding_opencl.py +0 -77
- build/lib/nabu/processing/processing_base.py +0 -123
- build/lib/nabu/processing/roll_opencl.py +0 -64
- build/lib/nabu/processing/rotation.py +0 -63
- build/lib/nabu/processing/rotation_cuda.py +0 -66
- build/lib/nabu/processing/tests/__init__.py +0 -0
- build/lib/nabu/processing/tests/test_fft.py +0 -268
- build/lib/nabu/processing/tests/test_fftshift.py +0 -71
- build/lib/nabu/processing/tests/test_histogram.py +0 -55
- build/lib/nabu/processing/tests/test_medfilt.py +0 -77
- build/lib/nabu/processing/tests/test_muladd.py +0 -54
- build/lib/nabu/processing/tests/test_padding.py +0 -247
- build/lib/nabu/processing/tests/test_roll.py +0 -63
- build/lib/nabu/processing/tests/test_rotation.py +0 -83
- build/lib/nabu/processing/tests/test_transpose.py +0 -72
- build/lib/nabu/processing/tests/test_unsharp.py +0 -106
- build/lib/nabu/processing/transpose.py +0 -126
- build/lib/nabu/processing/unsharp.py +0 -79
- build/lib/nabu/processing/unsharp_cuda.py +0 -53
- build/lib/nabu/processing/unsharp_opencl.py +0 -75
- build/lib/nabu/reconstruction/__init__.py +0 -3
- build/lib/nabu/reconstruction/cone.py +0 -241
- build/lib/nabu/reconstruction/fbp.py +0 -124
- build/lib/nabu/reconstruction/fbp_base.py +0 -391
- build/lib/nabu/reconstruction/fbp_opencl.py +0 -78
- build/lib/nabu/reconstruction/filtering.py +0 -220
- build/lib/nabu/reconstruction/filtering_cuda.py +0 -103
- build/lib/nabu/reconstruction/filtering_opencl.py +0 -111
- build/lib/nabu/reconstruction/projection.py +0 -240
- build/lib/nabu/reconstruction/reconstructor.py +0 -174
- build/lib/nabu/reconstruction/reconstructor_cuda.py +0 -44
- build/lib/nabu/reconstruction/rings.py +0 -248
- build/lib/nabu/reconstruction/rings_cuda.py +0 -322
- build/lib/nabu/reconstruction/sinogram.py +0 -467
- build/lib/nabu/reconstruction/sinogram_cuda.py +0 -250
- build/lib/nabu/reconstruction/sinogram_opencl.py +0 -40
- build/lib/nabu/reconstruction/tests/__init__.py +0 -1
- build/lib/nabu/reconstruction/tests/test_cone.py +0 -308
- build/lib/nabu/reconstruction/tests/test_deringer.py +0 -220
- build/lib/nabu/reconstruction/tests/test_fbp.py +0 -252
- build/lib/nabu/reconstruction/tests/test_filtering.py +0 -133
- build/lib/nabu/reconstruction/tests/test_halftomo.py +0 -100
- build/lib/nabu/reconstruction/tests/test_projector.py +0 -164
- build/lib/nabu/reconstruction/tests/test_reconstructor.py +0 -93
- build/lib/nabu/reconstruction/tests/test_sino_normalization.py +0 -85
- build/lib/nabu/resources/__init__.py +0 -0
- build/lib/nabu/resources/cli/__init__.py +0 -0
- build/lib/nabu/resources/cor.py +0 -5
- build/lib/nabu/resources/dataset_analyzer.py +0 -469
- build/lib/nabu/resources/gpu.py +0 -169
- build/lib/nabu/resources/logger.py +0 -130
- build/lib/nabu/resources/nxflatfield.py +0 -217
- 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 +0 -104
- build/lib/nabu/resources/tests/test_units.py +0 -47
- build/lib/nabu/resources/utils.py +0 -174
- build/lib/nabu/stitching/__init__.py +0 -0
- build/lib/nabu/stitching/alignment.py +0 -184
- build/lib/nabu/stitching/config.py +0 -1286
- build/lib/nabu/stitching/definitions.py +0 -6
- build/lib/nabu/stitching/frame_composition.py +0 -155
- build/lib/nabu/stitching/overlap.py +0 -373
- build/lib/nabu/stitching/sample_normalization.py +0 -60
- build/lib/nabu/stitching/slurm_utils.py +0 -204
- build/lib/nabu/stitching/tests/__init__.py +0 -0
- build/lib/nabu/stitching/tests/test_alignment.py +0 -99
- build/lib/nabu/stitching/tests/test_config.py +0 -226
- build/lib/nabu/stitching/tests/test_frame_composition.py +0 -180
- build/lib/nabu/stitching/tests/test_overlap.py +0 -98
- build/lib/nabu/stitching/tests/test_sample_normalization.py +0 -49
- build/lib/nabu/stitching/tests/test_slurm_utils.py +0 -146
- build/lib/nabu/stitching/tests/test_utils.py +0 -21
- build/lib/nabu/stitching/tests/test_z_stitching.py +0 -1183
- build/lib/nabu/stitching/utils.py +0 -563
- build/lib/nabu/stitching/z_stitching.py +0 -2279
- build/lib/nabu/tests.py +0 -51
- build/lib/nabu/testutils.py +0 -375
- build/lib/nabu/thirdparty/__init__.py +0 -0
- build/lib/nabu/thirdparty/algotom_convert_sino.py +0 -276
- build/lib/nabu/thirdparty/pore3d_deringer_munch.py +0 -108
- build/lib/nabu/thirdparty/tomocupy_remove_stripe.py +0 -586
- build/lib/nabu/thirdparty/tomopy_phase.py +0 -239
- build/lib/nabu/thirdparty/tomwer_load_flats_darks.py +0 -162
- build/lib/nabu/utils.py +0 -836
- nabu-2024.1.1.dist-info/RECORD +0 -2375
- nabu-2024.1.1.dist-info/top_level.txt +0 -4
- {build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/build/lib/nabu/app → nabu/app/tests}/__init__.py +0 -0
- {nabu-2024.1.1.dist-info → nabu-2024.1.2.dist-info}/LICENSE +0 -0
- {nabu-2024.1.1.dist-info → nabu-2024.1.2.dist-info}/entry_points.txt +0 -0
@@ -1,1012 +0,0 @@
|
|
1
|
-
"""
|
2
|
-
nabu.pipeline.estimators: helper classes/functions to estimate parameters of a dataset
|
3
|
-
(center of rotation, detector tilt, etc).
|
4
|
-
"""
|
5
|
-
import inspect
|
6
|
-
import numpy as np
|
7
|
-
import scipy.fft # pylint: disable=E0611
|
8
|
-
from silx.io import get_data
|
9
|
-
from typing import Union, Optional
|
10
|
-
import math
|
11
|
-
from numbers import Real
|
12
|
-
from scipy import ndimage as nd
|
13
|
-
|
14
|
-
from ..preproc.flatfield import FlatFieldDataUrls
|
15
|
-
from ..estimation.cor import (
|
16
|
-
CenterOfRotation,
|
17
|
-
CenterOfRotationAdaptiveSearch,
|
18
|
-
CenterOfRotationSlidingWindow,
|
19
|
-
CenterOfRotationGrowingWindow,
|
20
|
-
CenterOfRotationFourierAngles,
|
21
|
-
CenterOfRotationOctaveAccurate,
|
22
|
-
)
|
23
|
-
from ..estimation.cor_sino import SinoCorInterface
|
24
|
-
from ..estimation.tilt import CameraTilt
|
25
|
-
from ..estimation.utils import is_fullturn_scan
|
26
|
-
from ..resources.logger import LoggerOrPrint
|
27
|
-
from ..resources.utils import extract_parameters
|
28
|
-
from ..utils import check_supported, is_int
|
29
|
-
from .params import tilt_methods
|
30
|
-
from ..resources.dataset_analyzer import get_radio_pair
|
31
|
-
from ..processing.rotation import Rotation
|
32
|
-
from ..io.reader import ChunkReader
|
33
|
-
from ..preproc.ccd import Log, CCDFilter
|
34
|
-
from ..misc import fourier_filters
|
35
|
-
from .params import cor_methods
|
36
|
-
from ..io.reader import load_images_from_dataurl_dict
|
37
|
-
|
38
|
-
|
39
|
-
def estimate_cor(method, dataset_info, do_flatfield=True, cor_options: Optional[Union[str, dict]] = None, logger=None):
|
40
|
-
logger = LoggerOrPrint(logger)
|
41
|
-
cor_options = cor_options or {}
|
42
|
-
check_supported(method, list(cor_methods.keys()), "COR estimation method")
|
43
|
-
method = cor_methods[method]
|
44
|
-
|
45
|
-
# Extract CoR parameters from configuration file
|
46
|
-
if isinstance(cor_options, str):
|
47
|
-
try:
|
48
|
-
cor_options = extract_parameters(cor_options, sep=";")
|
49
|
-
except Exception as exc:
|
50
|
-
msg = "Could not extract parameters from cor_options: %s" % (str(exc))
|
51
|
-
logger.fatal(msg)
|
52
|
-
raise ValueError(msg)
|
53
|
-
elif isinstance(cor_options, dict):
|
54
|
-
pass
|
55
|
-
else:
|
56
|
-
raise TypeError(f"cor_options_str is expected to be a dict or a str. {type(cor_options)} provided")
|
57
|
-
|
58
|
-
# Dispatch. COR estimation is always expressed in absolute number of pixels (i.e. from the center of the first pixel column)
|
59
|
-
if method in CORFinder.search_methods:
|
60
|
-
cor_finder = CORFinder(
|
61
|
-
method,
|
62
|
-
dataset_info,
|
63
|
-
do_flatfield=do_flatfield,
|
64
|
-
cor_options=cor_options,
|
65
|
-
logger=logger,
|
66
|
-
)
|
67
|
-
estimated_cor = cor_finder.find_cor()
|
68
|
-
elif method in SinoCORFinder.search_methods:
|
69
|
-
cor_finder = SinoCORFinder(
|
70
|
-
method,
|
71
|
-
dataset_info,
|
72
|
-
slice_idx=cor_options.get("slice_idx", "middle"),
|
73
|
-
subsampling=cor_options.get("subsampling", 10),
|
74
|
-
do_flatfield=do_flatfield,
|
75
|
-
cor_options=cor_options,
|
76
|
-
logger=logger,
|
77
|
-
)
|
78
|
-
estimated_cor = cor_finder.find_cor()
|
79
|
-
else:
|
80
|
-
composite_options = update_func_kwargs(CompositeCORFinder, cor_options)
|
81
|
-
for what in ["cor_options", "logger"]:
|
82
|
-
composite_options.pop(what, None)
|
83
|
-
cor_finder = CompositeCORFinder(
|
84
|
-
dataset_info,
|
85
|
-
cor_options=cor_options,
|
86
|
-
logger=logger,
|
87
|
-
**composite_options,
|
88
|
-
)
|
89
|
-
estimated_cor = cor_finder.find_cor()
|
90
|
-
return estimated_cor
|
91
|
-
|
92
|
-
|
93
|
-
class CORFinderBase:
|
94
|
-
"""
|
95
|
-
A base class for CoR estimators.
|
96
|
-
It does common tasks like data reading, flatfield, etc.
|
97
|
-
"""
|
98
|
-
|
99
|
-
search_methods = {}
|
100
|
-
|
101
|
-
def __init__(self, method, dataset_info, do_flatfield=True, cor_options=None, logger=None):
|
102
|
-
"""
|
103
|
-
Initialize a CORFinder object.
|
104
|
-
|
105
|
-
Parameters
|
106
|
-
----------
|
107
|
-
dataset_info: `nabu.resources.dataset_analyzer.DatasetAnalyzer`
|
108
|
-
Dataset information structure
|
109
|
-
"""
|
110
|
-
check_supported(method, self.search_methods, "CoR estimation method")
|
111
|
-
self.logger = LoggerOrPrint(logger)
|
112
|
-
self.dataset_info = dataset_info
|
113
|
-
self.do_flatfield = do_flatfield
|
114
|
-
self.shape = dataset_info.radio_dims[::-1]
|
115
|
-
self._init_cor_finder(method, cor_options)
|
116
|
-
|
117
|
-
def _init_cor_finder(self, method, cor_options):
|
118
|
-
self.method = method
|
119
|
-
if not isinstance(cor_options, (type(None), dict)):
|
120
|
-
raise TypeError(
|
121
|
-
f"cor_options is expected to be an optional instance of dict. Get {cor_options} ({type(cor_options)}) instead"
|
122
|
-
)
|
123
|
-
self.cor_options = {}
|
124
|
-
if isinstance(cor_options, dict):
|
125
|
-
self.cor_options.update(cor_options)
|
126
|
-
|
127
|
-
# tomotools internal meeting 07 feb 2024: Merge of options 'near_pos' and 'side'.
|
128
|
-
# See [minutes](https://gitlab.esrf.fr/tomotools/minutes/-/blob/master/minutes-20240207.md?ref_type=heads)
|
129
|
-
|
130
|
-
detector_width = self.dataset_info.radio_dims[0]
|
131
|
-
default_lookup_side = "right" if self.dataset_info.is_halftomo else "center"
|
132
|
-
near_init = self.cor_options.get("side", None)
|
133
|
-
|
134
|
-
if near_init is None:
|
135
|
-
near_init = default_lookup_side
|
136
|
-
|
137
|
-
if near_init == "from_file":
|
138
|
-
try:
|
139
|
-
near_pos = self.dataset_info.dataset_scanner.estimated_cor_frm_motor # relative pos in pixels
|
140
|
-
if isinstance(near_pos, Real):
|
141
|
-
# near_pos += detector_width // 2 # Field in NX is relative.
|
142
|
-
self.cor_options.update({"near_pos": int(near_pos)})
|
143
|
-
else:
|
144
|
-
near_init = default_lookup_side
|
145
|
-
except:
|
146
|
-
self.logger.warning(
|
147
|
-
"COR estimation from motor position absent from NX file. Global search is performed."
|
148
|
-
)
|
149
|
-
near_init = default_lookup_side
|
150
|
-
elif isinstance(near_init, Real):
|
151
|
-
self.cor_options.update({"near_pos": int(near_init)})
|
152
|
-
near_init = "near" # ???
|
153
|
-
elif near_init == "near": # Legacy
|
154
|
-
if not isinstance(self.cor_options["near_pos"], Real):
|
155
|
-
self.logger.warning("Side option set to 'near' but no 'near_pos' option set.")
|
156
|
-
self.logger.warning("Set side to right if HA, center otherwise.")
|
157
|
-
near_init = default_lookup_side
|
158
|
-
elif near_init in ("left", "right", "center", "all"):
|
159
|
-
pass
|
160
|
-
else:
|
161
|
-
self.logger.warning(
|
162
|
-
f"COR option 'side' received {near_init} and should be either 'from_file' (default), 'left', 'right', 'center', 'near' or a number."
|
163
|
-
)
|
164
|
-
|
165
|
-
if isinstance(self.cor_options.get("near_pos", None), Real):
|
166
|
-
# Check validity of near_pos
|
167
|
-
if np.abs(self.cor_options["near_pos"]) > detector_width / 2:
|
168
|
-
self.logger.warning(
|
169
|
-
f"Relative COR passed is greater than half the size of the detector. Did you enter a absolute COR position?"
|
170
|
-
)
|
171
|
-
self.logger.warning("Instead, the center of the detector is used.")
|
172
|
-
self.cor_options["near_pos"] = 0
|
173
|
-
|
174
|
-
# Set side from near_pos if passed.
|
175
|
-
if self.cor_options["near_pos"] < 0.0:
|
176
|
-
self.cor_options.update({"side": "left"})
|
177
|
-
near_init = "left"
|
178
|
-
else:
|
179
|
-
self.cor_options.update({"side": "right"})
|
180
|
-
near_init = "right"
|
181
|
-
|
182
|
-
self.cor_options.update({"side": near_init})
|
183
|
-
|
184
|
-
# At this stage : side is set to one of left, right, center near.
|
185
|
-
# and near_pos to a numeric value.
|
186
|
-
|
187
|
-
# if isinstance(self.cor_options["near_pos"], Real):
|
188
|
-
# # estimated_cor_frm_motor value is supposed to be relative. Since the config documentation expects the "near_pos" options
|
189
|
-
# # to be given as an absolute COR estimate, a conversion is needed.
|
190
|
-
# self.cor_options["near_pos"] += detector_width // 2 # converted in absolute nb of pixels.
|
191
|
-
# if not (isinstance(self.cor_options["near_pos"], Real) or self.cor_options["near_pos"] == "ignore"):
|
192
|
-
# self.cor_options.update({"near_pos": "ignore"})
|
193
|
-
|
194
|
-
# At this stage, cor_options["near_pos"] is either
|
195
|
-
# - 'ignore':
|
196
|
-
# - an (absolute) integer value (either the user-provided one if present or the NX one).
|
197
|
-
|
198
|
-
cor_class = self.search_methods[method]["class"]
|
199
|
-
self.cor_finder = cor_class(logger=self.logger, cor_options=self.cor_options)
|
200
|
-
|
201
|
-
lookup_side = self.cor_options.get("side", default_lookup_side)
|
202
|
-
|
203
|
-
# OctaveAccurate
|
204
|
-
# if cor_class == CenterOfRotationOctaveAccurate:
|
205
|
-
# lookup_side = "center"
|
206
|
-
angles = self.dataset_info.rotation_angles
|
207
|
-
|
208
|
-
self.cor_exec_args = []
|
209
|
-
self.cor_exec_args.extend(self.search_methods[method].get("default_args", []))
|
210
|
-
|
211
|
-
# CenterOfRotationSlidingWindow is the only class to have a mandatory argument ("side")
|
212
|
-
# TODO - it would be more elegant to have it as a kwarg...
|
213
|
-
if len(self.cor_exec_args) > 0:
|
214
|
-
if cor_class in (CenterOfRotationSlidingWindow, CenterOfRotationOctaveAccurate):
|
215
|
-
self.cor_exec_args[0] = lookup_side
|
216
|
-
elif cor_class in (CenterOfRotationFourierAngles,):
|
217
|
-
self.cor_exec_args[0] = angles
|
218
|
-
self.cor_exec_args[1] = lookup_side
|
219
|
-
#
|
220
|
-
self.cor_exec_kwargs = update_func_kwargs(self.cor_finder.find_shift, self.cor_options)
|
221
|
-
|
222
|
-
|
223
|
-
class CORFinder(CORFinderBase):
|
224
|
-
"""
|
225
|
-
Find the Center of Rotation with methods based on two (180-degrees opposed) radios.
|
226
|
-
"""
|
227
|
-
|
228
|
-
search_methods = {
|
229
|
-
"centered": {
|
230
|
-
"class": CenterOfRotation,
|
231
|
-
},
|
232
|
-
"global": {
|
233
|
-
"class": CenterOfRotationAdaptiveSearch,
|
234
|
-
"default_kwargs": {"low_pass": 1, "high_pass": 20},
|
235
|
-
},
|
236
|
-
"sliding-window": {
|
237
|
-
"class": CenterOfRotationSlidingWindow,
|
238
|
-
"default_args": ["center"],
|
239
|
-
},
|
240
|
-
"growing-window": {
|
241
|
-
"class": CenterOfRotationGrowingWindow,
|
242
|
-
},
|
243
|
-
"octave-accurate": {
|
244
|
-
"class": CenterOfRotationOctaveAccurate,
|
245
|
-
"default_args": ["center"],
|
246
|
-
},
|
247
|
-
}
|
248
|
-
|
249
|
-
def __init__(
|
250
|
-
self, method, dataset_info, do_flatfield=True, cor_options=None, logger=None, radio_angles: tuple = (0.0, np.pi)
|
251
|
-
):
|
252
|
-
"""
|
253
|
-
Initialize a CORFinder object.
|
254
|
-
|
255
|
-
Parameters
|
256
|
-
----------
|
257
|
-
dataset_info: `nabu.resources.dataset_analyzer.DatasetAnalyzer`
|
258
|
-
Dataset information structure
|
259
|
-
radio_angles: angles to use to find the cor
|
260
|
-
"""
|
261
|
-
super().__init__(method, dataset_info, do_flatfield=do_flatfield, cor_options=cor_options, logger=logger)
|
262
|
-
self._radio_angles = radio_angles
|
263
|
-
self._init_radios()
|
264
|
-
self._init_flatfield()
|
265
|
-
self._apply_flatfield()
|
266
|
-
self._apply_tilt()
|
267
|
-
|
268
|
-
def _init_radios(self):
|
269
|
-
self.radios, self._radios_indices = get_radio_pair(
|
270
|
-
self.dataset_info, radio_angles=self._radio_angles, return_indices=True
|
271
|
-
)
|
272
|
-
|
273
|
-
def _init_flatfield(self):
|
274
|
-
if not (self.do_flatfield):
|
275
|
-
return
|
276
|
-
self.flatfield = FlatFieldDataUrls(
|
277
|
-
self.radios.shape,
|
278
|
-
flats=self.dataset_info.flats,
|
279
|
-
darks=self.dataset_info.darks,
|
280
|
-
radios_indices=self._radios_indices,
|
281
|
-
interpolation="linear",
|
282
|
-
convert_float=True,
|
283
|
-
)
|
284
|
-
|
285
|
-
def _apply_flatfield(self):
|
286
|
-
if not (self.do_flatfield):
|
287
|
-
return
|
288
|
-
self.flatfield.normalize_radios(self.radios)
|
289
|
-
|
290
|
-
def _apply_tilt(self):
|
291
|
-
tilt = self.dataset_info.detector_tilt
|
292
|
-
if tilt is None:
|
293
|
-
return
|
294
|
-
self.logger.debug("COREstimator: applying detector tilt correction of %f degrees" % tilt)
|
295
|
-
rot = Rotation(self.shape, tilt)
|
296
|
-
for i in range(self.radios.shape[0]):
|
297
|
-
self.radios[i] = rot.rotate(self.radios[i])
|
298
|
-
|
299
|
-
def find_cor(self):
|
300
|
-
"""
|
301
|
-
Find the center of rotation.
|
302
|
-
|
303
|
-
Returns
|
304
|
-
-------
|
305
|
-
cor: float
|
306
|
-
The estimated center of rotation for the current dataset.
|
307
|
-
"""
|
308
|
-
self.logger.info("Estimating center of rotation")
|
309
|
-
self.logger.debug("%s.find_shift(%s)" % (self.cor_finder.__class__.__name__, str(self.cor_exec_kwargs)))
|
310
|
-
shift = self.cor_finder.find_shift(
|
311
|
-
self.radios[0], np.fliplr(self.radios[1]), *self.cor_exec_args, **self.cor_exec_kwargs
|
312
|
-
)
|
313
|
-
return self.shape[1] / 2 + shift
|
314
|
-
|
315
|
-
|
316
|
-
# alias
|
317
|
-
COREstimator = CORFinder
|
318
|
-
|
319
|
-
|
320
|
-
class SinoCORFinder(CORFinderBase):
|
321
|
-
"""
|
322
|
-
A class for finding Center of Rotation based on 360 degrees sinograms.
|
323
|
-
This class handles the steps of building the sinogram from raw radios.
|
324
|
-
"""
|
325
|
-
|
326
|
-
search_methods = {
|
327
|
-
"sino-coarse-to-fine": {
|
328
|
-
"class": SinoCorInterface,
|
329
|
-
},
|
330
|
-
"sino-sliding-window": {
|
331
|
-
"class": CenterOfRotationSlidingWindow,
|
332
|
-
"default_args": ["right"],
|
333
|
-
},
|
334
|
-
"sino-growing-window": {
|
335
|
-
"class": CenterOfRotationGrowingWindow,
|
336
|
-
},
|
337
|
-
"fourier-angles": {"class": CenterOfRotationFourierAngles, "default_args": [None, "center"]},
|
338
|
-
}
|
339
|
-
|
340
|
-
def __init__(
|
341
|
-
self, method, dataset_info, slice_idx="middle", subsampling=10, do_flatfield=True, cor_options=None, logger=None
|
342
|
-
):
|
343
|
-
"""
|
344
|
-
Initialize a SinoCORFinder object.
|
345
|
-
|
346
|
-
Other parameters
|
347
|
-
----------------
|
348
|
-
The following keys can be set in cor_options.
|
349
|
-
|
350
|
-
slice_idx: int or str
|
351
|
-
Which slice index to take for building the sinogram.
|
352
|
-
For example slice_idx=0 means that we extract the first line of each projection.
|
353
|
-
Value can also be "first", "top", "middle", "last", "bottom".
|
354
|
-
subsampling: int, float
|
355
|
-
subsampling strategy when building sinograms.
|
356
|
-
As building the complete sinogram from raw projections might be tedious, the reading is done with subsampling.
|
357
|
-
A positive integer value means the subsampling step (i.e `projections[::subsampling]`).
|
358
|
-
A negative integer value means we take -subsampling projections in total.
|
359
|
-
A float value indicates the angular step in DEGREES.
|
360
|
-
"""
|
361
|
-
super().__init__(method, dataset_info, do_flatfield=do_flatfield, cor_options=cor_options, logger=logger)
|
362
|
-
self._check_360()
|
363
|
-
self._set_slice_idx(slice_idx)
|
364
|
-
self._set_subsampling(subsampling)
|
365
|
-
self._load_raw_sinogram()
|
366
|
-
self._flatfield(do_flatfield)
|
367
|
-
self._get_sinogram()
|
368
|
-
|
369
|
-
def _check_360(self):
|
370
|
-
if self.dataset_info.dataset_scanner.scan_range == 360:
|
371
|
-
return
|
372
|
-
if not is_fullturn_scan(self.dataset_info.rotation_angles):
|
373
|
-
raise ValueError("Sinogram-based Center of Rotation estimation can only be used for 360 degrees scans")
|
374
|
-
|
375
|
-
def _set_slice_idx(self, slice_idx):
|
376
|
-
n_z = self.dataset_info.radio_dims[1]
|
377
|
-
if isinstance(slice_idx, str):
|
378
|
-
str_to_idx = {"top": 0, "first": 0, "middle": n_z // 2, "bottom": n_z - 1, "last": n_z - 1}
|
379
|
-
check_supported(slice_idx, str_to_idx.keys(), "slice location")
|
380
|
-
slice_idx = str_to_idx[slice_idx]
|
381
|
-
self.slice_idx = slice_idx
|
382
|
-
|
383
|
-
def _set_subsampling(self, subsampling):
|
384
|
-
projs_idx = sorted(self.dataset_info.projections.keys())
|
385
|
-
if is_int(subsampling):
|
386
|
-
if subsampling < 0: # Total number of angles
|
387
|
-
n_angles = -subsampling
|
388
|
-
indices_float = np.linspace(projs_idx[0], projs_idx[-1], n_angles, endpoint=True)
|
389
|
-
self.projs_indices = np.round(indices_float).astype(np.int32).tolist()
|
390
|
-
else: # Subsampling step
|
391
|
-
self.projs_indices = projs_idx[::subsampling]
|
392
|
-
self.angles = self.dataset_info.rotation_angles[::subsampling]
|
393
|
-
else: # Angular step
|
394
|
-
raise NotImplementedError()
|
395
|
-
|
396
|
-
def _load_raw_sinogram(self):
|
397
|
-
if self.slice_idx is None:
|
398
|
-
raise ValueError("Unknow slice index")
|
399
|
-
# Subsample projections
|
400
|
-
files = {}
|
401
|
-
for idx in self.projs_indices:
|
402
|
-
files[idx] = self.dataset_info.projections[idx]
|
403
|
-
self.files = files
|
404
|
-
self.data_reader = ChunkReader(
|
405
|
-
self.files,
|
406
|
-
sub_region=(None, None, self.slice_idx, self.slice_idx + 1),
|
407
|
-
convert_float=True,
|
408
|
-
)
|
409
|
-
self.data_reader.load_files()
|
410
|
-
self._radios = self.data_reader.files_data
|
411
|
-
|
412
|
-
def _flatfield(self, do_flatfield):
|
413
|
-
self.do_flatfield = bool(do_flatfield)
|
414
|
-
if not self.do_flatfield:
|
415
|
-
return
|
416
|
-
flatfield = FlatFieldDataUrls(
|
417
|
-
self._radios.shape,
|
418
|
-
self.dataset_info.flats,
|
419
|
-
self.dataset_info.darks,
|
420
|
-
radios_indices=self.projs_indices,
|
421
|
-
sub_region=(None, None, self.slice_idx, self.slice_idx + 1),
|
422
|
-
)
|
423
|
-
flatfield.normalize_radios(self._radios)
|
424
|
-
|
425
|
-
def _get_sinogram(self):
|
426
|
-
log = Log(self._radios.shape, clip_min=1e-6, clip_max=10.0)
|
427
|
-
sinogram = self._radios[:, 0, :].copy()
|
428
|
-
log.take_logarithm(sinogram)
|
429
|
-
self.sinogram = sinogram
|
430
|
-
|
431
|
-
@staticmethod
|
432
|
-
def _split_sinogram(sinogram):
|
433
|
-
n_a_2 = sinogram.shape[0] // 2
|
434
|
-
img_1, img_2 = sinogram[:n_a_2], sinogram[n_a_2:]
|
435
|
-
# "Handle" odd number of projections
|
436
|
-
if img_2.shape[0] > img_1.shape[0]:
|
437
|
-
img_2 = img_2[:-1, :]
|
438
|
-
#
|
439
|
-
return img_1, img_2
|
440
|
-
|
441
|
-
def find_cor(self):
|
442
|
-
self.logger.info("Estimating center of rotation")
|
443
|
-
self.logger.debug("%s.find_shift(%s)" % (self.cor_finder.__class__.__name__, str(self.cor_exec_kwargs)))
|
444
|
-
img_1, img_2 = self._split_sinogram(self.sinogram)
|
445
|
-
shift = self.cor_finder.find_shift(img_1, np.fliplr(img_2), *self.cor_exec_args, **self.cor_exec_kwargs)
|
446
|
-
return self.shape[1] / 2 + shift
|
447
|
-
|
448
|
-
|
449
|
-
# alias
|
450
|
-
SinoCOREstimator = SinoCORFinder
|
451
|
-
|
452
|
-
|
453
|
-
class CompositeCORFinder(CORFinderBase):
|
454
|
-
"""
|
455
|
-
Class and method to prepare sinogram and calculate COR
|
456
|
-
The pseudo sinogram is built with shrinked radios taken every theta_interval degres
|
457
|
-
|
458
|
-
Compared to first writing by Christian Nemoz:
|
459
|
-
- gives the same result of the original octave script on the dataset sofar tested
|
460
|
-
- The meaning of parameter n_subsampling_y (alias subsampling_y)is now the number of lines which are taken from
|
461
|
-
every radio. This is more meaningful in terms of amout of collected information because it
|
462
|
-
does not depend on the radio size. Moreover this is what was done in the octave script
|
463
|
-
- The spike_threshold has been added with default to 0.04
|
464
|
-
- The angular sampling is every 5 degree by default, as it is now the case also in the octave script
|
465
|
-
- The finding of the optimal overlap is doing by looping over the possible overlap, according to the overlap.
|
466
|
-
After a first testing phase, this part, which is the time consuming part, can be accelerated
|
467
|
-
by several order of magnitude without modifing the final result
|
468
|
-
"""
|
469
|
-
|
470
|
-
search_methods = {
|
471
|
-
"composite-coarse-to-fine": {
|
472
|
-
"class": CenterOfRotation, # Hack. Not used. Everything is done in the find_cor() func.
|
473
|
-
}
|
474
|
-
}
|
475
|
-
_default_cor_options = {"low_pass": 0.4, "high_pass": 10, "side": "center", "near_pos": 0, "near_width": 20}
|
476
|
-
|
477
|
-
def __init__(
|
478
|
-
self,
|
479
|
-
dataset_info,
|
480
|
-
oversampling=4,
|
481
|
-
theta_interval=5,
|
482
|
-
n_subsampling_y=10,
|
483
|
-
take_log=True,
|
484
|
-
cor_options=None,
|
485
|
-
spike_threshold=0.04,
|
486
|
-
logger=None,
|
487
|
-
norm_order=1,
|
488
|
-
):
|
489
|
-
super().__init__(
|
490
|
-
"composite-coarse-to-fine", dataset_info, do_flatfield=True, cor_options=cor_options, logger=logger
|
491
|
-
)
|
492
|
-
if norm_order not in [1, 2]:
|
493
|
-
raise ValueError(
|
494
|
-
f""" the norm order (nom_order parameter) must be either 1 or 2. You passed {norm_order}
|
495
|
-
"""
|
496
|
-
)
|
497
|
-
|
498
|
-
self.norm_order = norm_order
|
499
|
-
|
500
|
-
self.dataset_info = dataset_info
|
501
|
-
self.logger = LoggerOrPrint(logger)
|
502
|
-
|
503
|
-
self.sx, self.sy = self.dataset_info.radio_dims
|
504
|
-
|
505
|
-
default_cor_options = self._default_cor_options.copy()
|
506
|
-
default_cor_options.update(self.cor_options)
|
507
|
-
self.cor_options = default_cor_options
|
508
|
-
|
509
|
-
# the algorithm can work for angular ranges larger than 1.2*pi
|
510
|
-
# up to an arbitrarily number of turns as it is the case in helical scans
|
511
|
-
self.spike_threshold = spike_threshold
|
512
|
-
# the following line is necessary for multi-turns scan because the encoders is always
|
513
|
-
# in the interval 0-360
|
514
|
-
self.unwrapped_rotation_angles = np.unwrap(self.dataset_info.rotation_angles)
|
515
|
-
|
516
|
-
self.angle_min = self.unwrapped_rotation_angles.min()
|
517
|
-
self.angle_max = self.unwrapped_rotation_angles.max()
|
518
|
-
|
519
|
-
if (self.angle_max - self.angle_min) < 1.2 * np.pi:
|
520
|
-
useful_span = None
|
521
|
-
raise ValueError(
|
522
|
-
f"""Sinogram-based Center of Rotation estimation can only be used for scans over more than 180 degrees.
|
523
|
-
Your angular span was barely above 180 degrees, it was in fact {((self.angle_max - self.angle_min)/np.pi):.2f} x 180
|
524
|
-
and it is not considered to be enough by the discriminating condition which requires at least 1.2 half-turns
|
525
|
-
"""
|
526
|
-
)
|
527
|
-
else:
|
528
|
-
useful_span = min(np.pi, (self.angle_max - self.angle_min) - np.pi)
|
529
|
-
# readapt theta_interval accordingly if the span is smaller than pi
|
530
|
-
if useful_span < np.pi:
|
531
|
-
theta_interval = theta_interval * useful_span / np.pi
|
532
|
-
|
533
|
-
# self._get_cor_options(cor_options)
|
534
|
-
|
535
|
-
self.take_log = take_log
|
536
|
-
self.ovs = oversampling
|
537
|
-
self.theta_interval = theta_interval
|
538
|
-
|
539
|
-
target_sampling_y = np.round(np.linspace(0, self.sy - 1, n_subsampling_y + 2)).astype(int)[1:-1]
|
540
|
-
|
541
|
-
if self.spike_threshold is not None:
|
542
|
-
# take also one line below and on above for each line
|
543
|
-
# to provide appropriate margin
|
544
|
-
self.sampling_y = np.zeros([3 * len(target_sampling_y)], "i")
|
545
|
-
self.sampling_y[0::3] = np.maximum(0, target_sampling_y - 1)
|
546
|
-
self.sampling_y[2::3] = np.minimum(self.sy - 1, target_sampling_y + 1)
|
547
|
-
self.sampling_y[1::3] = target_sampling_y
|
548
|
-
|
549
|
-
self.ccd_correction = CCDFilter((len(self.sampling_y), self.sx), median_clip_thresh=self.spike_threshold)
|
550
|
-
else:
|
551
|
-
self.sampling_y = target_sampling_y
|
552
|
-
|
553
|
-
self.nproj = self.dataset_info.n_angles
|
554
|
-
|
555
|
-
my_condition = np.less(self.unwrapped_rotation_angles + np.pi, self.angle_max) * np.less(
|
556
|
-
self.unwrapped_rotation_angles, self.angle_min + useful_span
|
557
|
-
)
|
558
|
-
|
559
|
-
possibly_probed_angles = self.unwrapped_rotation_angles[my_condition]
|
560
|
-
possibly_probed_indices = np.arange(len(self.unwrapped_rotation_angles))[my_condition]
|
561
|
-
|
562
|
-
self.dproj = round(len(possibly_probed_angles) / np.rad2deg(useful_span) * self.theta_interval)
|
563
|
-
|
564
|
-
self.probed_angles = possibly_probed_angles[:: self.dproj]
|
565
|
-
self.probed_indices = possibly_probed_indices[:: self.dproj]
|
566
|
-
|
567
|
-
self.absolute_indices = sorted(self.dataset_info.projections.keys())
|
568
|
-
|
569
|
-
my_flats = load_images_from_dataurl_dict(self.dataset_info.flats)
|
570
|
-
|
571
|
-
if my_flats is not None and len(list(my_flats.keys())):
|
572
|
-
self.use_flat = True
|
573
|
-
self.flatfield = FlatFieldDataUrls(
|
574
|
-
(len(self.absolute_indices), self.sy, self.sx),
|
575
|
-
self.dataset_info.flats,
|
576
|
-
self.dataset_info.darks,
|
577
|
-
radios_indices=self.absolute_indices,
|
578
|
-
dtype=np.float64,
|
579
|
-
)
|
580
|
-
else:
|
581
|
-
self.use_flat = False
|
582
|
-
|
583
|
-
self.sx, self.sy = self.dataset_info.radio_dims
|
584
|
-
self.mlog = Log((1,) + (self.sy, self.sx), clip_min=1e-6, clip_max=10.0)
|
585
|
-
self.rcor_abs = round(self.sx / 2.0)
|
586
|
-
self.cor_acc = round(self.sx / 2.0)
|
587
|
-
|
588
|
-
self.nprobed = len(self.probed_angles)
|
589
|
-
|
590
|
-
# initialize sinograms and radios arrays
|
591
|
-
self.sino = np.zeros([2 * self.nprobed * n_subsampling_y, (self.sx - 1) * self.ovs + 1], "f")
|
592
|
-
self._loaded = False
|
593
|
-
self.high_pass = self.cor_options["high_pass"]
|
594
|
-
img_filter = fourier_filters.get_bandpass_filter(
|
595
|
-
(self.sino.shape[0] // 2, self.sino.shape[1]),
|
596
|
-
cutoff_lowpass=self.cor_options["low_pass"] * self.ovs,
|
597
|
-
cutoff_highpass=self.high_pass * self.ovs,
|
598
|
-
use_rfft=False, # rfft changes the image dimensions lenghts to even if odd
|
599
|
-
data_type=np.float64,
|
600
|
-
)
|
601
|
-
|
602
|
-
# we are interested in filtering only along the x dimension only
|
603
|
-
img_filter[:] = img_filter[0]
|
604
|
-
self.img_filter = img_filter
|
605
|
-
|
606
|
-
def _oversample(self, radio):
|
607
|
-
"""oversampling in the horizontal direction"""
|
608
|
-
if self.ovs == 1:
|
609
|
-
return radio
|
610
|
-
else:
|
611
|
-
ovs_2D = [1, self.ovs]
|
612
|
-
return oversample(radio, ovs_2D)
|
613
|
-
|
614
|
-
def _get_cor_options(self, cor_options):
|
615
|
-
default_dict = self._default_cor_options.copy()
|
616
|
-
if self.dataset_info.is_halftomo:
|
617
|
-
default_dict["side"] = "right"
|
618
|
-
|
619
|
-
if cor_options is None or cor_options == "":
|
620
|
-
cor_options = {}
|
621
|
-
if isinstance(cor_options, str):
|
622
|
-
try:
|
623
|
-
cor_options = extract_parameters(cor_options, sep=";")
|
624
|
-
except Exception as exc:
|
625
|
-
msg = "Could not extract parameters from cor_options: %s" % (str(exc))
|
626
|
-
self.logger.fatal(msg)
|
627
|
-
raise ValueError(msg)
|
628
|
-
default_dict.update(cor_options)
|
629
|
-
cor_options = default_dict
|
630
|
-
|
631
|
-
self.cor_options = cor_options
|
632
|
-
|
633
|
-
def get_radio(self, image_num):
|
634
|
-
# radio_dataset_idx = self.absolute_indices[image_num]
|
635
|
-
radio_dataset_idx = image_num
|
636
|
-
data_url = self.dataset_info.projections[radio_dataset_idx]
|
637
|
-
radio = get_data(data_url).astype(np.float64)
|
638
|
-
if self.use_flat:
|
639
|
-
self.flatfield.normalize_single_radio(radio, radio_dataset_idx, dtype=radio.dtype)
|
640
|
-
if self.take_log:
|
641
|
-
self.mlog.take_logarithm(radio)
|
642
|
-
|
643
|
-
radio = radio[self.sampling_y]
|
644
|
-
if self.spike_threshold is not None:
|
645
|
-
self.ccd_correction.median_clip_correction(radio, output=radio)
|
646
|
-
radio = radio[1::3]
|
647
|
-
return radio
|
648
|
-
|
649
|
-
def get_sino(self, reload=False):
|
650
|
-
"""
|
651
|
-
Build sinogram (composite image) from the radio files
|
652
|
-
"""
|
653
|
-
if self._loaded and not reload:
|
654
|
-
return self.sino
|
655
|
-
|
656
|
-
sorting_indexes = np.argsort(self.unwrapped_rotation_angles)
|
657
|
-
|
658
|
-
sorted_all_angles = self.unwrapped_rotation_angles[sorting_indexes]
|
659
|
-
sorted_angle_indexes = np.arange(len(self.unwrapped_rotation_angles))[sorting_indexes]
|
660
|
-
|
661
|
-
irad = 0
|
662
|
-
for prob_a, prob_i in zip(self.probed_angles, self.probed_indices):
|
663
|
-
radio1 = self.get_radio(self.absolute_indices[prob_i])
|
664
|
-
other_angle = prob_a + np.pi
|
665
|
-
|
666
|
-
insertion_point = np.searchsorted(sorted_all_angles, other_angle)
|
667
|
-
if insertion_point > 0 and insertion_point < len(sorted_all_angles):
|
668
|
-
other_i_l = sorted_angle_indexes[insertion_point - 1]
|
669
|
-
other_i_h = sorted_angle_indexes[insertion_point]
|
670
|
-
radio_l = self.get_radio(self.absolute_indices[other_i_l])
|
671
|
-
radio_h = self.get_radio(self.absolute_indices[other_i_h])
|
672
|
-
f = (other_angle - sorted_all_angles[insertion_point - 1]) / (
|
673
|
-
sorted_all_angles[insertion_point] - sorted_all_angles[insertion_point - 1]
|
674
|
-
)
|
675
|
-
radio2 = (1 - f) * radio_l + f * radio_h
|
676
|
-
else:
|
677
|
-
if insertion_point == 0:
|
678
|
-
other_i = sorted_angle_indexes[0]
|
679
|
-
elif insertion_point == len(sorted_all_angles):
|
680
|
-
other_i = sorted_angle_indexes[insertion_point - 1]
|
681
|
-
radio2 = self.get_radio(self.absolute_indices[other_i])
|
682
|
-
|
683
|
-
self.sino[irad : irad + radio1.shape[0], :] = self._oversample(radio1)
|
684
|
-
self.sino[
|
685
|
-
irad + self.nprobed * radio1.shape[0] : irad + self.nprobed * radio1.shape[0] + radio1.shape[0], :
|
686
|
-
] = self._oversample(radio2)
|
687
|
-
|
688
|
-
irad = irad + radio1.shape[0]
|
689
|
-
|
690
|
-
self.sino[np.isnan(self.sino)] = 0.0001 # ?
|
691
|
-
return self.sino
|
692
|
-
|
693
|
-
def find_cor(self, reload=False):
|
694
|
-
self.logger.info("Estimating center of rotation")
|
695
|
-
self.logger.debug("%s.find_shift(%s)" % (self.__class__.__name__, self.cor_options))
|
696
|
-
self.sinogram = self.get_sino(reload=reload)
|
697
|
-
|
698
|
-
dim_v, dim_h = self.sinogram.shape
|
699
|
-
assert dim_v % 2 == 0, " this should not happen "
|
700
|
-
dim_v = dim_v // 2
|
701
|
-
|
702
|
-
radio1 = self.sinogram[:dim_v]
|
703
|
-
radio2 = self.sinogram[dim_v:]
|
704
|
-
|
705
|
-
orig_sy, orig_ovsd_sx = radio1.shape
|
706
|
-
|
707
|
-
radio1 = scipy.fft.ifftn(
|
708
|
-
scipy.fft.fftn(radio1, axes=(-2, -1)) * self.img_filter, axes=(-2, -1)
|
709
|
-
).real # TODO: convolute only along x
|
710
|
-
radio2 = scipy.fft.ifftn(
|
711
|
-
scipy.fft.fftn(radio2, axes=(-2, -1)) * self.img_filter, axes=(-2, -1)
|
712
|
-
).real # TODO: convolute only along x
|
713
|
-
|
714
|
-
tmp_sy, ovsd_sx = radio1.shape
|
715
|
-
assert orig_sy == tmp_sy and orig_ovsd_sx == ovsd_sx, "this should not happen"
|
716
|
-
|
717
|
-
if self.cor_options["side"] == "center":
|
718
|
-
overlap_min = max(round(ovsd_sx - ovsd_sx / 3), 4)
|
719
|
-
overlap_max = min(round(ovsd_sx + ovsd_sx / 3), 2 * ovsd_sx - 4)
|
720
|
-
elif self.cor_options["side"] == "right":
|
721
|
-
overlap_min = max(4, self.ovs * self.high_pass * 3)
|
722
|
-
overlap_max = ovsd_sx
|
723
|
-
elif self.cor_options["side"] == "left":
|
724
|
-
overlap_min = ovsd_sx
|
725
|
-
overlap_max = min(2 * ovsd_sx - 4, 2 * ovsd_sx - self.ovs * self.ovs * self.high_pass * 3)
|
726
|
-
elif self.cor_options["side"] == "all":
|
727
|
-
overlap_min = max(4, self.ovs * self.high_pass * 3)
|
728
|
-
overlap_max = min(2 * ovsd_sx - 4, 2 * ovsd_sx - self.ovs * self.ovs * self.high_pass * 3)
|
729
|
-
|
730
|
-
elif self.cor_options["side"] == "near":
|
731
|
-
near_pos = self.cor_options["near_pos"]
|
732
|
-
near_width = self.cor_options["near_width"]
|
733
|
-
|
734
|
-
overlap_min = max(4, ovsd_sx - 2 * self.ovs * (near_pos + near_width))
|
735
|
-
overlap_max = min(2 * ovsd_sx - 4, ovsd_sx - 2 * self.ovs * (near_pos - near_width))
|
736
|
-
|
737
|
-
else:
|
738
|
-
message = f""" The cor options "side" can only have one of the three possible values ["","",""].
|
739
|
-
But it has the value "{self.cor_options["side"]}" instead
|
740
|
-
"""
|
741
|
-
raise ValueError(message)
|
742
|
-
|
743
|
-
if overlap_min > overlap_max:
|
744
|
-
message = f""" There is no safe search range in find_cor once the margins corresponding to the high_pass filter are discarded.
|
745
|
-
Try reducing the low_pass parameter in cor_options
|
746
|
-
"""
|
747
|
-
raise ValueError(message)
|
748
|
-
|
749
|
-
self.logger.info(
|
750
|
-
"looking for overlap from min %.2f and max %.2f\n" % (overlap_min / self.ovs, overlap_max / self.ovs)
|
751
|
-
)
|
752
|
-
|
753
|
-
best_overlap = overlap_min
|
754
|
-
best_error = np.inf
|
755
|
-
|
756
|
-
blurred_radio1 = nd.gaussian_filter(abs(radio1), [0, self.high_pass])
|
757
|
-
blurred_radio2 = nd.gaussian_filter(abs(radio2), [0, self.high_pass])
|
758
|
-
|
759
|
-
for z in range(int(overlap_min), int(overlap_max) + 1):
|
760
|
-
if z <= ovsd_sx:
|
761
|
-
my_z = z
|
762
|
-
my_radio1 = radio1
|
763
|
-
my_radio2 = radio2
|
764
|
-
my_blurred_radio1 = blurred_radio1
|
765
|
-
my_blurred_radio2 = blurred_radio2
|
766
|
-
else:
|
767
|
-
my_z = ovsd_sx - (z - ovsd_sx)
|
768
|
-
my_radio1 = np.fliplr(radio1)
|
769
|
-
my_radio2 = np.fliplr(radio2)
|
770
|
-
my_blurred_radio1 = np.fliplr(blurred_radio1)
|
771
|
-
my_blurred_radio2 = np.fliplr(blurred_radio2)
|
772
|
-
|
773
|
-
common_left = np.fliplr(my_radio1[:, ovsd_sx - my_z :])[:, : -int(math.ceil(self.ovs * self.high_pass * 2))]
|
774
|
-
# adopt a 'safe' margin considering high_pass value (possibly float)
|
775
|
-
common_right = my_radio2[:, ovsd_sx - my_z : -int(math.ceil(self.ovs * self.high_pass * 2))]
|
776
|
-
|
777
|
-
common_blurred_left = np.fliplr(my_blurred_radio1[:, ovsd_sx - my_z :])[
|
778
|
-
:, : -int(math.ceil(self.ovs * self.high_pass * 2))
|
779
|
-
]
|
780
|
-
# adopt a 'safe' margin considering high_pass value (possibly float)
|
781
|
-
common_blurred_right = my_blurred_radio2[:, ovsd_sx - my_z : -int(math.ceil(self.ovs * self.high_pass * 2))]
|
782
|
-
|
783
|
-
if common_right.size == 0:
|
784
|
-
continue
|
785
|
-
|
786
|
-
error = self.error_metric(common_right, common_left, common_blurred_right, common_blurred_left)
|
787
|
-
|
788
|
-
min_error = min(best_error, error)
|
789
|
-
|
790
|
-
if min_error == error:
|
791
|
-
best_overlap = z
|
792
|
-
best_error = min_error
|
793
|
-
# self.logger.debug(
|
794
|
-
# "testing an overlap of %.2f pixels, actual best overlap is %.2f pixels over %d\r"
|
795
|
-
# % (z / self.ovs, best_overlap / self.ovs, ovsd_sx / self.ovs),
|
796
|
-
# )
|
797
|
-
|
798
|
-
offset = (ovsd_sx - best_overlap) / self.ovs / 2
|
799
|
-
cor_abs = (self.sx - 1) / 2 + offset
|
800
|
-
|
801
|
-
return cor_abs
|
802
|
-
|
803
|
-
def error_metric(self, common_right, common_left, common_blurred_right, common_blurred_left):
|
804
|
-
if self.norm_order == 2:
|
805
|
-
return self.error_metric_l2(common_right, common_left)
|
806
|
-
elif self.norm_order == 1:
|
807
|
-
return self.error_metric_l1(common_right, common_left, common_blurred_right, common_blurred_left)
|
808
|
-
else:
|
809
|
-
assert False, "this cannot happen"
|
810
|
-
|
811
|
-
def error_metric_l2(self, common_right, common_left):
|
812
|
-
common = common_right - common_left
|
813
|
-
|
814
|
-
tmp = np.linalg.norm(common)
|
815
|
-
norm_diff2 = tmp * tmp
|
816
|
-
|
817
|
-
norm_right = np.linalg.norm(common_right)
|
818
|
-
norm_left = np.linalg.norm(common_left)
|
819
|
-
|
820
|
-
res = norm_diff2 / (norm_right * norm_left)
|
821
|
-
|
822
|
-
return res
|
823
|
-
|
824
|
-
def error_metric_l1(self, common_right, common_left, common_blurred_right, common_blurred_left):
|
825
|
-
common = (common_right - common_left) / (common_blurred_right + common_blurred_left)
|
826
|
-
|
827
|
-
res = abs(common).mean()
|
828
|
-
|
829
|
-
return res
|
830
|
-
|
831
|
-
|
832
|
-
def oversample(radio, ovs_s):
|
833
|
-
"""oversampling an image in arbitrary directions.
|
834
|
-
The first and last point of each axis will still remain as extremal points of the new axis.
|
835
|
-
"""
|
836
|
-
result = np.zeros([(radio.shape[0] - 1) * ovs_s[0] + 1, (radio.shape[1] - 1) * ovs_s[1] + 1], "f")
|
837
|
-
|
838
|
-
# Pre-initialisation: The original data falls exactly on the following strided positions in the new data array.
|
839
|
-
result[:: ovs_s[0], :: ovs_s[1]] = radio
|
840
|
-
|
841
|
-
for k in range(0, ovs_s[0]):
|
842
|
-
# interpolation coefficient for axis 0
|
843
|
-
g = k / ovs_s[0]
|
844
|
-
for i in range(0, ovs_s[1]):
|
845
|
-
if i == 0 and k == 0:
|
846
|
-
# this case subset was already exactly matched from before the present double loop,
|
847
|
-
# in the pre-initialisation line.
|
848
|
-
continue
|
849
|
-
# interpolation coefficent for axis 1
|
850
|
-
f = i / ovs_s[1]
|
851
|
-
|
852
|
-
# stop just a bit before cause we are not extending beyond the limits.
|
853
|
-
# If we are exacly on a vertical or horizontal original line, then no shift will be applied,
|
854
|
-
# and we will exploit the equality f+(1-f)=g+(1-g)=1 adding twice the same contribution with
|
855
|
-
# interpolation factors which become dummies pour le coup.
|
856
|
-
stop0 = -ovs_s[0] if k else None
|
857
|
-
stop1 = -ovs_s[1] if i else None
|
858
|
-
|
859
|
-
# Once again, we exploit the g+(1-g)=1 equality
|
860
|
-
start0 = ovs_s[0] if k else 0
|
861
|
-
start1 = ovs_s[1] if i else 0
|
862
|
-
|
863
|
-
# and what is done below makes clear the corundum above.
|
864
|
-
result[k :: ovs_s[0], i :: ovs_s[1]] = (1 - g) * (
|
865
|
-
(1 - f) * result[0 : stop0 : ovs_s[0], 0 : stop1 : ovs_s[1]]
|
866
|
-
+ f * result[0 : stop0 : ovs_s[0], start1 :: ovs_s[1]]
|
867
|
-
) + g * (
|
868
|
-
(1 - f) * result[start0 :: ovs_s[0], 0 : stop1 : ovs_s[1]]
|
869
|
-
+ f * result[start0 :: ovs_s[0], start1 :: ovs_s[1]]
|
870
|
-
)
|
871
|
-
return result
|
872
|
-
|
873
|
-
|
874
|
-
# alias
|
875
|
-
CompositeCOREstimator = CompositeCORFinder
|
876
|
-
|
877
|
-
|
878
|
-
# Some heavily inelegant things going on here
|
879
|
-
def get_default_kwargs(func):
|
880
|
-
params = inspect.signature(func).parameters
|
881
|
-
res = {}
|
882
|
-
for param_name, param in params.items():
|
883
|
-
if param.default != inspect._empty:
|
884
|
-
res[param_name] = param.default
|
885
|
-
return res
|
886
|
-
|
887
|
-
|
888
|
-
def update_func_kwargs(func, options):
|
889
|
-
res_options = get_default_kwargs(func)
|
890
|
-
for option_name, option_val in options.items():
|
891
|
-
if option_name in res_options:
|
892
|
-
res_options[option_name] = option_val
|
893
|
-
return res_options
|
894
|
-
|
895
|
-
|
896
|
-
def get_class_name(class_object):
|
897
|
-
return str(class_object).split(".")[-1].strip(">").strip("'").strip('"')
|
898
|
-
|
899
|
-
|
900
|
-
class DetectorTiltEstimator:
|
901
|
-
"""
|
902
|
-
Helper class for detector tilt estimation.
|
903
|
-
It automatically chooses the right radios and performs flat-field.
|
904
|
-
"""
|
905
|
-
|
906
|
-
default_tilt_method = "1d-correlation"
|
907
|
-
# Given a tilt angle "a", the maximum deviation caused by the tilt (in pixels) is
|
908
|
-
# N/2 * |sin(a)| where N is the number of pixels
|
909
|
-
# We ignore tilts causing less than 0.25 pixel deviation: N/2*|sin(a)| < tilt_threshold
|
910
|
-
tilt_threshold = 0.25
|
911
|
-
|
912
|
-
def __init__(self, dataset_info, do_flatfield=True, logger=None, autotilt_options=None):
|
913
|
-
"""
|
914
|
-
Initialize a detector tilt estimator helper.
|
915
|
-
|
916
|
-
Parameters
|
917
|
-
----------
|
918
|
-
dataset_info: `dataset_info` object
|
919
|
-
Data structure with the dataset information.
|
920
|
-
do_flatfield: bool, optional
|
921
|
-
Whether to perform flat field on radios.
|
922
|
-
logger: `Logger` object, optional
|
923
|
-
Logger object
|
924
|
-
autotilt_options: dict, optional
|
925
|
-
named arguments to pass to the detector tilt estimator class.
|
926
|
-
"""
|
927
|
-
self._set_params(dataset_info, do_flatfield, logger, autotilt_options)
|
928
|
-
self.radios, self.radios_indices = get_radio_pair(dataset_info, radio_angles=(0.0, np.pi), return_indices=True)
|
929
|
-
self._init_flatfield()
|
930
|
-
self._apply_flatfield()
|
931
|
-
|
932
|
-
def _set_params(self, dataset_info, do_flatfield, logger, autotilt_options):
|
933
|
-
self.dataset_info = dataset_info
|
934
|
-
self.do_flatfield = bool(do_flatfield)
|
935
|
-
self.logger = LoggerOrPrint(logger)
|
936
|
-
self._get_autotilt_options(autotilt_options)
|
937
|
-
|
938
|
-
def _init_flatfield(self):
|
939
|
-
if not (self.do_flatfield):
|
940
|
-
return
|
941
|
-
self.flatfield = FlatFieldDataUrls(
|
942
|
-
self.radios.shape,
|
943
|
-
flats=self.dataset_info.flats,
|
944
|
-
darks=self.dataset_info.darks,
|
945
|
-
radios_indices=self.radios_indices,
|
946
|
-
interpolation="linear",
|
947
|
-
convert_float=True,
|
948
|
-
)
|
949
|
-
|
950
|
-
def _apply_flatfield(self):
|
951
|
-
if not (self.do_flatfield):
|
952
|
-
return
|
953
|
-
self.flatfield.normalize_radios(self.radios)
|
954
|
-
|
955
|
-
def _get_autotilt_options(self, autotilt_options):
|
956
|
-
if autotilt_options is None:
|
957
|
-
self.autotilt_options = None
|
958
|
-
return
|
959
|
-
try:
|
960
|
-
autotilt_options = extract_parameters(autotilt_options)
|
961
|
-
except Exception as exc:
|
962
|
-
msg = "Could not extract parameters from autotilt_options: %s" % (str(exc))
|
963
|
-
self.logger.fatal(msg)
|
964
|
-
raise ValueError(msg)
|
965
|
-
self.autotilt_options = autotilt_options
|
966
|
-
if "threshold" in autotilt_options:
|
967
|
-
self.tilt_threshold = autotilt_options.pop("threshold")
|
968
|
-
|
969
|
-
def find_tilt(self, tilt_method=None):
|
970
|
-
"""
|
971
|
-
Find the detector tilt.
|
972
|
-
|
973
|
-
Parameters
|
974
|
-
----------
|
975
|
-
tilt_method: str, optional
|
976
|
-
Which tilt estimation method to use.
|
977
|
-
"""
|
978
|
-
if tilt_method is None:
|
979
|
-
tilt_method = self.default_tilt_method
|
980
|
-
check_supported(tilt_method, set(tilt_methods.values()), "tilt estimation method")
|
981
|
-
self.logger.info("Estimating detector tilt angle")
|
982
|
-
autotilt_params = {
|
983
|
-
"roi_yxhw": None,
|
984
|
-
"median_filt_shape": None,
|
985
|
-
"padding_mode": None,
|
986
|
-
"peak_fit_radius": 1,
|
987
|
-
"high_pass": None,
|
988
|
-
"low_pass": None,
|
989
|
-
}
|
990
|
-
autotilt_params.update(self.autotilt_options or {})
|
991
|
-
self.logger.debug("%s(%s)" % ("CameraTilt", str(autotilt_params)))
|
992
|
-
|
993
|
-
tilt_calc = CameraTilt()
|
994
|
-
tilt_cor_position, camera_tilt = tilt_calc.compute_angle(
|
995
|
-
self.radios[0], np.fliplr(self.radios[1]), method=tilt_method, **autotilt_params
|
996
|
-
)
|
997
|
-
self.logger.info("Estimated detector tilt angle: %f degrees" % camera_tilt)
|
998
|
-
# Ignore too small tilts
|
999
|
-
max_deviation = np.max(self.dataset_info.radio_dims) * np.abs(np.sin(np.deg2rad(camera_tilt)))
|
1000
|
-
if self.dataset_info.is_halftomo:
|
1001
|
-
max_deviation *= 2
|
1002
|
-
if max_deviation < self.tilt_threshold:
|
1003
|
-
self.logger.info(
|
1004
|
-
"Estimated tilt angle (%.3f degrees) results in %.2f maximum pixels shift, which is below threshold (%.2f pixel). Ignoring the tilt, no correction will be done."
|
1005
|
-
% (camera_tilt, max_deviation, self.tilt_threshold)
|
1006
|
-
)
|
1007
|
-
camera_tilt = None
|
1008
|
-
return camera_tilt
|
1009
|
-
|
1010
|
-
|
1011
|
-
# alias
|
1012
|
-
TiltFinder = DetectorTiltEstimator
|