Skip to content

Sinogram normalization

Pierre Paleo requested to merge sino_normalization into master

This PR brings sinogram normalization (close #118 (closed)).

To do

  • SinoNormalization class
  • Cuda implementation
  • Unit tests
  • Integrate in pipeline: config, process_config
  • Integrate in FullFieldPipeline
  • Integrate in FullFieldPipelineLimitedMemory
  • Test on datasets

Notes

  • Tested on "ha_refill".
  • In the pipeline (FullFieldPipeline), normalization is done before building the sinogram. The reason is that in the case of half-tomo, the build_sino step modifies the sinogram structure, making normalization not work as expected. There is no really alternatives. The drawback is that any "normalization" that might need to happend after build_sino would need another intantiation/step.
  • In the limited memory setting, normalization is done on host. It might be too slow for large chunks of data. Doing the processing on GPU might needs more work: either doing VerticalShifts on GPU, or doing on normalization on GPU only if VerticalShift is disabled.
  • Only Chebyshev normalization is implemented. Splines normalization will have to wait.
Edited by Pierre Paleo

Merge request reports