Skip to content
QSMxT v9 is a ground-up rewrite in Rust. Coming from the Python version (8.x)? See what changed →

Algorithms

Every stage of the pipeline is configurable. The numerical methods are provided by QSM.rs; QSMxT orchestrates them over your BIDS data. Below are the valid values for each algorithm option.

Set with --masking-algorithm, and choose what it operates on with --masking-input.

Value Method
threshold Intensity thresholding (default)
bet Brain Extraction Tool

Masking input (--masking-input): magnitude-first, magnitude, magnitude-last, phase-quality.

Set with --unwrapping-algorithm.

Value Method
romeo Rapid Opensource Minimum-spanning-tree Echo Optimisation (default)
laplacian Laplacian-based unwrapping

Set with --bf-algorithm.

Value Method
vsharp Variable-kernel SHARP (default)
pdf Projection onto Dipole Fields
lbv Laplacian Boundary Value
ismv Iterative Spherical Mean Value
sharp Sophisticated Harmonic Artifact Reduction
resharp Regularization-enabled SHARP
harperella HARPERELLA
iharperella Iterative HARPERELLA

Set with --qsm-algorithm. Ten methods are available, spanning fast direct methods through to regularised iterative reconstructions.

Value Method
rts Regularized Total Strength (default)
tv Total Variation (ADMM)
tkd Truncated K-space Division
tsvd Truncated Singular Value Decomposition
tgv Total Generalized Variation
tikhonov Tikhonov regularization
nltv Nonlocal Total Variation
medi Morphology-Enabled Dipole Inversion
ilsqr Iterative Least-Squares QR
qsmart QSMART two-stage reconstruction

Each algorithm exposes its own parameters (regularisation weights, kernel sizes, iteration counts, …). The easiest way to discover them — and to build a run command — is the TUI: it exposes every option with sensible defaults and shows the equivalent qsmxt run command live as you change them. You can also set them in a configuration file, or run the matching standalone tool (e.g. qsmxt invert tgv --help) to experiment directly.