Reconstruction¶
Dispatched from unimri.reconstruct(data, method=...); see
Architecture → Reconstruction.
Per-coil, single-pass images: Aᴴ(w·y) per coil (no combination).
Cartesian: centered inverse FFT. Non-Cartesian: density-compensated
gridding via the adjoint NUFFT. Building block for :func:adjoint and for
:func:unimri.calibration.estimate_sensitivity.
Single-pass reconstruction: gridding (non-Cartesian) or plain iFFT (Cartesian).
Coils are combined by coil_combine ("rss", "sum", or "none"). Returns an
array of shape recon_matrix in (z, y, x) order for 3-D / (y, x) for
2-D — with a leading coil axis when coil_combine="none".
CG-SENSE: iterative reconstruction with coil sensitivities, y = A x = F S x.
Solves (Aᴴ A + l2·I) x = Aᴴ y by conjugate gradient (Pruessmann et al.,
MRM 2001), where A is :class:~unimri.operators.FourierOperator for
Cartesian data or :class:~unimri.operators.NUFFTOperator for non-Cartesian
data, composed with :class:~unimri.operators.SensitivityOperator. The same
solver code handles both, because only A changes with the trajectory.
sensitivity ((n_coils, *image_shape)) is estimated automatically via
:func:unimri.calibration.estimate_sensitivity if not supplied.