Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Model fit leading to viso 1, NDI zero and ODI 1 in all brain voxels #191

Open
praveen-honhar opened this issue Jul 5, 2024 · 4 comments
Assignees

Comments

@praveen-honhar
Copy link

Hi,

I have some noddi data acquired at bvalues of 700 and 2000. They were acquired in separate sequences one after another - they have been processed identically for distortion and eddy corrections and then merged together (so has the bvals and bvec).
The AMICO model does not produce any errors and results are saved. However, the fit_FWF is universally 1, fit_NDI is zero and fit_ODI is 1 in all brain voxels - they (FWF/ODI) basically look identical to the brain mask. Any ideas on why this is happening. Here is the screen output:

-> Precomputing rotation matrices:
[ DONE ]

-> Writing scheme file to [ 20180502_mr485_NODDI.scheme ]

-> Loading data:
* DWI signal
- dim = 141 x 141 x 80 x 106
- pixdim = 1.700 x 1.700 x 1.700
* Acquisition scheme
- 106 samples, 2 shells
- 12 @ b=0 , 30 @ b=700.0 , 64 @ b=2000.0
* Binary mask
- dim = 141 x 141 x 80
- pixdim = 1.700 x 1.700 x 1.700
- voxels = 348542
[ 7.6 seconds ]

-> Preprocessing:
* Normalizing to b0... [ min=-0.00, mean=0.08, max=2.22 ]
* Keeping all b0 volume(s)
[ 1.5 seconds ]

-> Creating LUT for "NODDI" model:
[ 11.2 seconds ]

-> Resampling LUT for subject ".":
[ 1.3 seconds ]

-> Estimating principal directions (OLS):
[ 00h 00m 01s ]

-> Fitting 'NODDI' model to 348542 voxels (using 16 threads):
[ 00h 00m 09s ]

-> Saving output to "AMICO/NODDI/*":
- configuration [OK]
- fit_dir.nii.gz [OK]
- fit_NDI.nii.gz [OK]
- fit_ODI.nii.gz [OK]
- fit_FWF.nii.gz [OK]
[ DONE ]

@daducci
Copy link
Owner

daducci commented Jul 5, 2024

Dear @praveen-honhar ,

When this happens, it is typically due to the diffusivities set for the fit not being compatible with the actual ones in the specimen; what data are you working on, i.e. humans, rodents, monkeys, etc? Is in vivo or ex vivo data?

Also, the two shells were acquired as two different acquisitions; did you check whether there was a drift or a mismatch between the two?

@daducci daducci self-assigned this Jul 5, 2024
@praveen-honhar
Copy link
Author

praveen-honhar commented Jul 5, 2024

Hi @daducci ,

This is an in vivo human (adult ~ age 60 y, Parkinson's) scan, acquired on Siemens Prisma. The two sequences (NODDI32, NODDI64) have the same acquisition parameters (TR = 4100 ms, TE = 88 ms), field of view, thickness etc. - the only difference is the b-value. There is also no motion mismatch in the two images.

I only downloaded/installed the code yesterday using PyPI (pip install dmri-amico) and I have not changed any parameter - everything is on default setting. I also fit one of these shells (b=2000) to diffusion tensor using dtifit in FSL (the diffusion tensor fitted images look good). Based on that, for this subject the mean MD, AD and RD values in the corpus callosum are 9.48x10^(-4), 0.0011 and 8.62x10^(-4), respectively. Can you let me know which parameters (diffusivities) would you advise me to change and to what values?
I am also happy to privately send you datafiles for this scan if that can help us remedy the issue.

@daducci
Copy link
Owner

daducci commented Jul 8, 2024

Hi @praveen-honhar ,

Yes, if you could share the data privately to my email account (alessandrodaducciunivrit) I could have a look at it.

@praveen-honhar
Copy link
Author

praveen-honhar commented Jul 8, 2024

Hi @daducci ,

Actually I think I was able to make this work. Based on your suggestion and my data, I noticed that the mean axial diffusivity from tensorfit in corpus callosum was 1.0x10^(-3) m2/s for the entire cohort, and exactly the same (till 2 decimals) for Parkinson's and controls separately. I set the dPar to this value and the code worked - I am attaching two screenshots of FWF and modulated NDI (note that my brain mask was a bit liberal).

If these look good to you, I have a couple more questions:

  1. What exactly is the modulated NDI: For example, if I want to calculate regional values of tissue-fraction weighted NDI (Eqns 2 or 3 of this paper: https://www.sciencedirect.com/science/article/pii/S1053811921010211?via%3Dihub) and I have (1) modulated NDI image and (2) the region's mask in diffusion space - what do I need to do next.

  2. I am aware that the intrinsic/parallel diffusivity also changes based on GM and WM regions. My current strategy of defining it based on corpus callosum may be sub-optimal for GM - would you suggest using mean(Axial or Mean Diff) in a GM rich region to set the dPar and create separate output files that can then be used for GM regions.

  3. I am planning on a multimodal DAT-PET and NODDI analysis in Parkinson's. My DAT PET outcome measure is gray matter masked and partial volume corrected (to better account for degeneration related atrophy affects on PET output). Therefore, I had initially decided that I shall use the same GM mask (CAT segmentations) when computing regional NDI/ODI measures in GM regions. However, isn't the tissue-mean basically doing something similar already - should I still apply the GM mask to the tissue-mean?

  4. In this case, I think I got lucky as there was no difference between the mean Axial diff in control and patient cohort. If there was a difference however, should I have selected different values for the controls/patients or the overall cohort average - is there a consensus on this?

Screenshot 2024-07-08 at 3 01 10 PM Screenshot 2024-07-08 at 3 10 00 PM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants