Changelog¶
All notable changes to qmri will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[0.1.0] - Unreleased¶
Initial release of qmri, providing pure MRI signal models and fitting algorithms for quantitative MRI analysis.
Added¶
Core (qmri)¶
-
Diffusion imaging
- ADC (Apparent Diffusion Coefficient) fitting with multiple methods:
- LLS (Linear Least Squares)
- WLLS (Weighted Linear Least Squares)
- IWLLS (Iterative Weighted Linear Least Squares)
- DWI signal generation from ADC values
- Support for single voxel and volumetric data
- ADC (Apparent Diffusion Coefficient) fitting with multiple methods:
-
Relaxometry
- T1 mapping with multiple acquisition methods:
- IR (Inversion Recovery with finite TR correction)
- IR Classical (Inversion Recovery assuming TR >> T1)
- VTR (Variable TR for spoiled gradient echo)
- T2 mapping from multi-echo spin echo data:
- Full model (with offset term)
- Reduced model (pure mono-exponential)
- Signal generation functions for both T1 and T2
- T1 mapping with multiple acquisition methods:
-
Perfusion
- ASL (Arterial Spin Labelling) quantification
- GKM (General Kinetic Model) for DCE-MRI
-
Thermometry
- PRF (Proton Resonance Frequency) shift method for MR thermometry
-
Fitting utilities
- Least squares algorithms
- Bootstrap uncertainty estimation
-
Error metrics
- R-squared (coefficient of determination)
- RMSE (Root Mean Square Error)
- Uncertainty propagation
-
Constants
- Physical constants for MRI calculations
I/O (qmri-io)¶
- NIfTI file reading and writing via nibabel
- Affine and header preservation
- BIDS-compatible file handling utilities
CLI (qmri-cli)¶
qmri diffusion adccommand for ADC fittingqmri relaxometry t1command for T1 mappingqmri relaxometry t2command for T2 mappingqmri infocommand for version information- Global options for verbosity and output directory
- Rich console output with progress indicators
Visualisation (qmri-viz)¶
- Parameter map plotting utilities
- Diagnostic visualisation tools
- Custom colourmaps for quantitative MRI
Dependencies¶
- Core package (
qmri): NumPy, SciPy only - I/O package (
qmri-io): + nibabel - CLI package (
qmri-cli): + Click, Rich - Visualisation package (
qmri-viz): + Matplotlib
Notes¶
- Python 3.10+ required
- Full type annotations throughout
- NumPy-style docstrings
- UK English spelling used throughout