Skip to main content

Module pipeline

Module pipeline 

Source
Expand description

QSM pipeline stages and utilities

Shared stage functions that both qsmxt.rs and qsmbly call to ensure identical processing. Each consumer calls the stages individually with its own I/O and caching layer on top.

§Pipeline stages (typical order)

  1. run_field_mapping — multi-echo phase → B0 field map (ppm)
  2. run_bg_removal — total field → local field (ppm)
  3. run_dipole_inversion — local field → susceptibility (ppm)
  4. apply_reference — mean subtraction

For TGV, use run_tgv which combines steps 1-4 internally.

§Combined algorithms

  • HARPERELLA: SMV-based exterior Laplacian estimation (Li et al., 2014)
  • iHARPERELLA: Phase-domain exterior estimation with improved low-freq suppression (Li et al., 2015)

Re-exports§

pub use phase_utils::scale_phase_to_pi;
pub use phase_utils::hz_to_ppm;
pub use phase_utils::rads_to_ppm;
pub use phase_utils::rss_combine;
pub use phase_utils::erode_mask;
pub use phase_utils::dilate_mask;
pub use referencing::apply_reference;
pub use masking::apply_mask_ops;
pub use masking::build_mask_section;
pub use masking::run_masking;
pub use field_mapping::run_field_mapping;
pub use bg_removal::run_bg_removal;
pub use inversion::run_dipole_inversion;
pub use inversion::run_tgv;
pub use inversion::run_nextqsm;
pub use inversion::run_iqsm;
pub use inversion::run_iqsm_plus;
pub use inversion::run_iqfm;
pub use separation::run_separation;
pub use separation::SeparationInputs;
pub use separation::SeparationResult;
pub use qsmart::run_qsmart;
pub use config::*;

Modules§

bg_removal
Background field removal stage
config
Pipeline configuration types
field_mapping
Field mapping stage
inversion
Dipole inversion stage
masking
Masking stage
phase_utils
Phase and field conversion utilities
qsmart
QSMART two-stage reconstruction
referencing
QSM referencing
separation
Susceptibility source-separation stage.