You must be logged in to post Login Register


Lost Your Password?

Search Forums:


 






Wildcard Usage:
*    matches any number of characters
%    matches exactly one character

DSI tractography and orientation problems

UserPost

7:19 am
January 23, 2012


Laura

Member

posts 3

 

Hi,

I'm trying to extract a tractography based on DSI_MRI.

I have some questions about how to obtain the tractography:

 

1. OUTPUT orientation from "diff_unpack".

I have DICOM images, and I want to convert them to NIFTI using "diff_unpack".

 

If the DICOM orientation is LPS, the NIFTI-1 output is also in LPS orientation or in LAS or RAS ¿?

The standard orientation for NIFTI-1 is LAS or RAS.

If "diff_unpack" doesn't change the orientation, the ImageOrientationPatient (which, in my case is Sagittal referenced to LPS) saved in the header doesn't change, right?

 

If there is a change into LAS or RAS, this change also affects to the ImageOrientationPatient reference.

In that case, does "diff_unpack" modify this reference or just keep the same as in DICOM header?

 

——

2. Gradient Vectors

My acquisition is different from the requirements of your software. I have 157 gradient vectors, and only 124 are needed. I interpolate this 157 gradient vectors to obtain just the 124 (with Matlab and load/save_untouch_nii, which keeps the orientation in the header).

My 157 gradients vectors are obtained from DICOM header, specifically from:

hdr=spm_dicom_headers(ind_file);

hdr.CSAImageHeaderInfo(ind_DiffusionGradientDirection).item(1:3).val

 

In order to do the interpolation, I would like to know the default reference system of these "124raw.txt" (also LPS ¿?). I guess DTK reorient the gradient vectors if there is a orientation information in the header, but I have to interpolate the gradient vectors before using DTK.

My 157 gradient vectors are in LPS. Do I also have to apply the sagittal conversion, or just LPS in the default orientation (axial)?.
I need to unify these SRIs.

 

3. Is the "default" reference system for both "124raw.txt" and "181vec.txt" (used for calculating the resulting odf) the same? In that case, which one?

 

4. Tractography

Finally, when I do the tractography, the _odf.nii and _max.nii are correct, but the tractography doesn't look correct.

It looks like, when computing the tractography with the resulting reconstruction parameters ("_odf.nii","_max.nii","_dwi.nii","_b0.nii") the dimensions for "_odf.nii" and "_max.nii" are [181 x y z], and the header transformation is not applied correctly.

 

It may be because of the reference rotation? I mean, if in the original MRI images the rotation reference is:

[3 1 2], with the _odf.nii it should be [4 2 3], and the order of the 1st dimension (181) should change too (because we need to keep the same SRI between the image and the odf vectors sampling).

 

I tried to obtain the DTI and DSI tractography with exactly the same parameters (auto-orientation and same gradient vectors) and, while in DTI it seems to work, in DSI it looks like the tractography orientation is not right.

(See snapshots: input MRI data with NIFTI-1 interpolated (bvec = 124raw.txt and without applying the header reorientation matrix (using load_untouch_nii in Matlab for the interploation))

 

DSI snapshotDTI snapshot

(I couldn't upload images with higher resolution)

 

I guess the best option is to change the orientation at first, and work with the default reference system (this way I'll avoid the _odf.nii reorientation problem).

 

The main problem is about how DTK deals with different SRIs (LPS,RAS,LAS,…).

I hope you can help me with some of these questions.

Thanks,

 

Laura

12:34 pm
January 25, 2012


Ruopeng

Admin

posts 406

Hi Laura,

"diff_unpack" does not change the orientation of the original dicom images. So whatever coordinate information in the dicom header, it is in the nifti file.

I'm not quite sure what you are trying to do in your 2nd question. DTK requires DSI scan to use the pre-set gradient tables it provides. Is your 157 directions a superset of the raw124 fixed directions? If not, I don't you can use DTK to process it by just interpolating.

I believe the default reference is LPS as we use on Siemens scanners.

The tractography result from DSI is depending on whether your gradient directions match the ones in raw124 table. If not, the result will be wrong.

Best,

Ruopeng