DCEMapper’s functionality spans desktop GUI rendering, neuroimaging file I/O, signal denoising, statistical modelling, and scientific visualisation. Each layer of this stack is covered by a dedicated set of Python packages, all pinned to exact versions inDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/Rubick65/dcemapper/llms.txt
Use this file to discover all available pages before exploring further.
environment.yml to guarantee a reproducible environment. The sections below catalogue every core dependency, explain what it does inside DCEMapper, and map packages to the features they enable.
Core Dependencies
| Package | Version | Role |
|---|---|---|
| PyQt6 | 6.10.2 | Desktop GUI framework |
| PyQt6-Qt6 | 6.10.2 | Qt6 runtime bindings |
| nibabel | 5.4.0 | NIfTI file loading and writing |
| numpy | 2.4.3 | N-dimensional array operations |
| scipy | 1.17.1 | Gaussian filtering for ROI smoothing |
| matplotlib | 3.10.8 | Image canvas and intensity graphs |
| dipy | 1.11.0 | Denoising filters and Gibbs removal |
| scikit-image | 0.26.0 | Non-local means, polygon drawing |
| brkraw | 0.3.8 | Bruker raw data reading and conversion |
| pandas | 2.3.3 | Data table operations |
| pillow | 12.1.1 | Image processing |
| tifffile | 2026.3.3 | TIFF file support |
Dependency Roles by Feature
NIfTI I/O
nibabel loads and saves
.nii.gz files throughout the application — from opening a study to exporting processed parametric maps. numpy provides the underlying N-dimensional array representation that all image data is stored and manipulated as in memory.Denoising
dipy supplies four of the five available denoising filters: ASCM (Adaptive Soft Coefficient Matching), NLM-dipy (Non-Local Means via dipy), MP-PCA (Marchenko-Pastur PCA), and Local PCA. scikit-image supplies the fifth: NLM-skimage (Non-Local Means via scikit-image). See Preprocessing for usage details.
Gibbs Removal
dipy’s
gibbs_removal function is used to suppress Gibbs ringing artefacts that appear at sharp intensity boundaries in MRI data. This preprocessing step is applied before denoising or quantitative analysis to improve signal fidelity.GUI
PyQt6 powers every element of the user interface — main windows, dialogs, menus, sliders, toolbars, and the main application event loop. PyQt6-Qt6 provides the underlying Qt6 C++ runtime bindings that PyQt6 wraps, and must be installed at the matching version.
Visualization
matplotlib
FigureCanvas widgets are embedded directly inside the PyQt6 layout to render the main image viewport and the temporal intensity graphs. This approach lets DCEMapper display interactive, publication-quality plots without leaving the desktop application.Bruker Conversion
brkraw reads Bruker
PvDataset raw data directories — the native output format of Bruker preclinical MRI scanners — and converts them into NIfTI arrays. nibabel then writes those arrays to .nii.gz files on disk for downstream processing.DCEMapper is not published on PyPI and cannot be installed with
pip install dcemapper. Install it from source by following the Environment Setup guide, which uses the bundled environment.yml to configure the full dependency stack in a single command.