Correction of signal intensity fluctuations in DWI multi-protocol acquisitions #99
Labels
CHECK_LABEL
Labels needs to be checked by a human
diffusion
documentation
Improvements or additions to documentation
DWI
Hackathon Project
Project suggestion
MRI
MRtrix
project_tools_skills:familiar
project_type:documentation
Python
Correction of signal intensity fluctuations in DWI multi-protocol acquisitions
(Note: Submitting project after completion rather than before; but felt it appropriate to document for prosperity)
Project Description
Many modern Diffusion-Weighted Imaging (DWI) models rely on what is known as a "multi-shell" acquisition: this refers to the acquisition of image volumes where not only the direction of diffusion sensitisation is varied, but also the magnitude of that sensitisation, with groups of volumes where the sensitisation magnitude is equivalent but the direction differs referred to as "shells".
On some scanner platforms, acquisition of such data relies on executing multiple acquisition protocols, each with selection of a unique "b-value" (strength of diffusion sensitisation), rather than the ideal scenario where all image volumes are acquired in a single acquisition.
This presents a potential issue in the amalgamation of such data. It is possible for scanner frequency recalibration / ADC gain / FFT multiplication factor / other factors to be adjusted in between protocols. If this occurs, then the quantitative relationships between the different image volumes may be violated.
This project is a proposed retrospective fix to this problem. Each DWI acquisition will additionally contain so-called "b=0" volumes: these are image volumes where no diffusion sensitisation is applied. If there are undesirable differences in signal amplitudes between the different acquisition protocols, this should be evident as differences in the signal amplitudes between the b=0 volumes of the various acquisitions. We can therefore use the differences between these images to estimate an appropriate intensity multiplicative factor to then apply to all of the volumes in each acquisition, in order to attempt to correct for any such inter-protocol scaling that may have occurred.
Skills required to participate
At least some experience with Python is required.
Some familiarity with performing basic operations on MRI image data.
Knowledge of MRtrix3 commands would be ideal, but not necessary.
Integration
Contributors to the proposed script will have the opportunity to inherit attribution of the developed code, via
git
contribution history & statistics, authorship of the developed script (which is reported in online & integrated command documentation), and avatar appearance on the main MRtrix3 website as a contributor to the project.Anyone possessing image data that suffers from the described issue who could assist in testing the proposed solution would also be thanked for their contribution in the relevant Pull Request.
Preparation material
MRtrix3 preprint: https://www.biorxiv.org/content/10.1101/551739v1
(provides basic example usage of Python API)
Original issue submission on MRtrix3 repository: New script: dwicat MRtrix3/mrtrix3#1428
Link to your GitHub repo
MRtrix3 repository: https://github.com/MRtrix3/mrtrix3
Communication
Project can be discussed directly on the relevant GitHub issue.
Ongoing private communications regarding the project can be made via private messages on the MRtrix3 community forum (link to my account)
The text was updated successfully, but these errors were encountered: