Skip to main content

Module separation

Module separation 

Source
Expand description

Susceptibility source-separation stage.

Config-driven dispatcher over the χ-separation methods (χ+ / χ−). Unlike the main phase→field→BFR→inversion pipeline, separation is a downstream stage that needs extra inputs (a conventional QSM plus a relaxometry map / multi-echo magnitude), so it is invoked explicitly with a SeparationInputs bundle rather than folded into the top-level runner.

Units follow the library convention: local field & QSM in ppm, R2’/R2* in Hz, echo times in seconds. Output is (chi_pos ≥ 0, chi_neg ≤ 0, chi_total) in ppm.

Structs§

SeparationInputs
Inputs for run_separation. Provide whatever the chosen algorithm needs; the dispatcher errors if a required input is missing.
SeparationResult
Result of run_separation: paramagnetic / diamagnetic / total maps in ppm.

Constants§

GAMMA_HZ_PER_T 🔒
Proton gyromagnetic ratio in Hz/T (for the central frequency cf = γ·B0).

Functions§

need 🔒
Require an optional input, or return an InvalidInput error naming it.
run_chi_sepnet 🔒
Source the χ-sepnet weights and run inference (requires the onnx feature).
run_separation
Run the configured χ-separation algorithm.
run_susep_net 🔒
Source the SUSEP-Net weights and run inference (requires the onnx feature).