pub fn ilsqr(
field: &[f64],
mask: &[u8],
grid: &Grid,
bdir: (f64, f64, f64),
params: &IlsqrParams,
progress: impl FnMut(usize, usize),
) -> (Vec<f64>, Vec<f64>, Vec<f64>, Vec<f64>)Expand description
iLSQR: A method for estimating and removing streaking artifacts in QSM
§Arguments
field- Unwrapped local field/tissue phase (nx * ny * nz)mask- Binary mask of region of interestgrid- Volume grid (dimensions and voxel sizes)bdir- B0 field direction (bx, by, bz)params- iLSQR parameters (tol, max_iter)progress- Progress callback(step, total_steps)
§Returns
Tuple of (susceptibility, streaking_artifacts, fast_qsm, initial_lsqr)