Print

Print


Thank you Matt.

----- Original Message -----
From: Matt Glasser <[log in to unmask]>
Date: Wednesday, October 29, 2008 1:32 pm
Subject: Re: [FSL] Bad header info of DTI sequence after registered to mprage
To: [log in to unmask]

> You really shouldn't move the DTI data out of native space and then do
> calculations like DTIFIT or BEDPOSTX on it.  Better to create the
> transformation matrices between your diffusion space and structural 
> spaceusing the FA image (from DTIFIT) and your mprage using the 
> FLIRT -omat
> option.  The FA image has more similar contrast to the mprage than 
> the b0,
> so it sometimes provides a better registration.  You can also 
> invert a
> matrix using convert_xfm -inverse option.  Then if you want to 
> specify your
> seeds in mprage space and have your results displayed there for
> tractography, you need only to specify the transformation matrix 
> betweenstructural and diffusion space in your probtrackx 
> commandline using the
> --xfm option.  
> 
> Similarly, you could generate your tissue partial volume map (or 
> tissueprobability map) using FAST in structural space, and then 
> downsample &
> transform that map to diffusion space and threshold it at >35% gray 
> matteras your mask of the cortical regions.  Or you could keep 
> things in
> structural space, draw your ROIs there, and use the method above to
> incorporate the transform into probtrackx.   
> 
> If, for some reason, you do have to move your DTI data into another 
> spacebefore calculating DTIFIT or BEDPOSTx, you will have to rotate 
> the gradient
> table according to any rotations applied when moving from native 
> DTI space
> to other space.
> 
> Peace,
> 
> Matt.
> 
> -----Original Message-----
> From: FSL - FMRIB's Software Library [mailto:[log in to unmask]] On 
> BehalfOf Xin Li
> Sent: Wednesday, October 29, 2008 1:03 PM
> To: [log in to unmask]
> Subject: Re: [FSL] Bad header info of DTI sequence after registered to
> mprage
> 
> Hi Mark,
> 
> Thank you for your explaination. We have averaged across multiple
> acqusitions and done eddy_correct for the diffusion series. I guess 
> we don't
> have to do registration at this stage. We can go ahead to run 
> dtifit and
> bedpostx as suggested in the pipeline. But then it'll come back to
> registration (step 5 in FSL pipleline) after bedpostx.  If I 
> understandcorrectly, "do a separate registration to the structural 
> volume" still
> requires downsampling the mprage structural volume, right?
> 
> Actually, we are trying to follow the method mentioned in Croxson 
> et al's
> paper. We came to this point,
> 
> "We thresholded the results to include only voxels
> estimated at >35% gray matter and used this to mask the cortical 
> regions.We skull stripped the diffusion-weighted and T1-weighted 
> images(Smith, 2002) and performed affine coregistration (Jenkinson and
> Smith, 2001)" ( Croxson et al J. Neurosci., September 28, 2005 .
> 25(39):8854-8866 (full text attached below) )
> 
> That is why I am trying to register the diffusion series to the mprage
> volume. Does it make sense to do registration before bedpostx?
> 
> Again, thank you for your input.
> Rick
> 
> Method:
> "We corrected the human diffusion data for eddy currents and head
> motion using affine registration to a reference volume (Jenkinson and
> Smith, 2001). The data from the three acquisitions were subsequently
> averaged to improve the signal-to-noise ratio.
> We performed tissue-type segmentation, skull stripping, and 
> registrationon the scans, using tools from the Oxford Centre for 
> FunctionalMagnetic Resonance Imaging of the Brain's (FMRIB) 
> Software Library
> (www.fmrib.ox.ac.uk/fsl). We performed probabilistic tissue-type
> segmentation
> and partial volume estimation on the T1-weighted image
> (Zhang et al., 2001). We thresholded the results to include only 
> voxelsestimated at >35% gray matter and used this to mask the 
> cortical regions.
> We skull stripped the diffusion-weighted and T1-weighted images
> (Smith, 2002) and performed affine coregistration (Jenkinson and
> Smith, 2001) between the first nondiffusion-weighted volume and the
> T1-weighted image to derive the transformation matrix between the two
> spaces. We then calculated probability distributions of fiber 
> direction at
> each voxel using previously described methods (Behrens et al., 
> 2003a)."(Croxson et al.)
> 
> 
> ----- Original Message -----
> From: Mark Jenkinson <[log in to unmask]>
> Date: Wednesday, October 29, 2008 1:18 pm
> Subject: Re: [FSL] Bad header info of DTI sequence after registered to
> mprage
> To: [log in to unmask]
> 
> > Hi Rick,
> > 
> > The reference image controls the final output dimensions and 
> voxel 
> > size.The -noresample flag just controls whether the input image 
> is 
> > internallyresampled to regular 8mm, 4mm, 2mm and 1mm grids, or 
> > forced to stay
> > at its native resolution.  However, the final creation of the 
> > output  
> > image
> > will still use whatever is specified by the reference volume.
> > 
> > Now one question is do you need your diffusion images aligned 
> with 
> > yourmprage at this point?  We normally just correct for motion 
> > effects  
> > within
> > the diffusion series using eddy_correct (which aligns them to one 
> > of the
> > unweighted images in your series) and then do a separate 
> registration> to the structural volume later, with the option of 
> displaying your 
> > 
> > diffusion
> > analyses in either native diffusion space or structural space.  
> > Have a  
> > look
> > at the FDT documentation to see what the standard arrangements are.
> > 
> > If you are not happy with the standard pipeline and do need to align
> > your diffusion images directly to your mprage, then you need to  
> > initially
> > make a downsampled version of your mprage, and then use this as the
> > reference volume in all the -applyxfm calls for flirt.  You can 
> do the
> > downsampling with the ApplyXFM tool.
> > 
> > I hope this answers your questions.
> > All the best,
> > 	Mark
> > 
> > 
> > On 29 Oct 2008, at 17:06, Xin Li wrote:
> > 
> > > Hi Mark,
> > >
> > > I tried the "-noresample" option to stop FLIRT from upsampling 
> > the  
> > > input, yet Flirt still outputs the upsampled 160x512x512x1 vol. 
> 
> > > Should I try something else?
> > >
> > > Command:
> > > flirt -noresample -in DTIVol0000.nii.gz -ref mprage.nii.gz -
> > applyxfm  
> > > -init  NodiffusionRegToMprageMat -out DTIRegToMprageVol0000
> > >
> > > DTIVol0000 is 128x128x66x1, mprage is 160x512x512x1 and  
> > > DTIRegToMprageVol0000 is 160x512x512x1 instead of 128x128x66x1.
> > >
> > > Thanks,
> > > Rick
> > > ----- Original Message -----
> > > From: Mark Jenkinson <[log in to unmask]>
> > > Date: Tuesday, October 28, 2008 4:26 pm
> > > Subject: Re: [FSL] Bad header info of DTI sequence after 
> > registered  
> > > to mprage
> > > To: [log in to unmask]
> > >
> > >> Hi,
> > >>
> > >> It sounds like the fslmerge command did not run successfully as
> > >> it probably ran out of memory.  Is there any reason that you want
> > >> you 4D diffusion images upsampled to 0.5x0.5x1mm?  We normally
> > >> recommend doing all diffusion analysis in the native diffusion 
> > space.>>
> > >> The upsampled data, being 512x512x160x65 would take up 5GB
> > >> of memory, plus extra if any temporary copies or partial 
> copies are
> > >> needed inside the code, which is probably why it currently fails.
> > >>
> > >> All the best,
> > >> 	Mark
> > >>
> > >>
> > >>
> > >>
> > >> On 28 Oct 2008, at 20:17, Xin Li wrote:
> > >>
> > >>> Dear FSL Users,
> > >>>
> > >>> I am trying to register the DTI sequence (FLIRT) to a mprage vol
> > >> so
> > >>> that we can utilize the mask created from the mprage.
> > >>>
> > >>> Here is what I did:
> > >>>
> > >>> 1. extract the 3D no-diffusion vol from the DTI sequence(4D).
> > >> (Both
> > >>> are already skull stripped)
> > >>>
> > >>> 2. register the no-diffusion vol to the mprage and save the
> > >>> transformation matrix:
> > >>>
> > >>> flirt -in nodiffusion.nii.gz -ref mprage.nii.gz -out
> > >>> NodiffusionRegToMprage.nii.gz -omat NodiffusionRegToMprageMat
> > >>>
> > >>> 3. Align all DTI volumes to the mprage volume using the saved
> > >> matrix:>
> > >>> flirt -in DTIVol0000.nii.gz -ref mprage.nii.gz -applyxfm -init
> > >>> NodiffusionRegToMprageMat -out
> > >>> DTIRegToMprageVol0000
> > >>>
> > >>> 4. Then create a new 4D DTI sequence from the registered volumes
> > >>> fslmerge -a DTIRegToMprage DTIRegToMprageVol*
> > >>>
> > >>> All steps completed successfully except that the new 4D DTI
> > >> sequence
> > >>> (DTIRegToMprage) has "bad header info". Could anyone tell me
> > >> what
> > >>> causes this?
> > >>>
> > >>> Many Thanks,
> > >>>
> > >>> Rick
> > >>>
> > >>> All header info are attached below FYI:
> > >>> 1.Old DTI sequence (4D)
> > >>> data_type      INT16
> > >>> dim1           128
> > >>> dim2           128
> > >>> dim3           66
> > >>> dim4           65
> > >>> datatype       4
> > >>> pixdim1        2.0000000000
> > >>> pixdim2        2.0000000000
> > >>> pixdim3        2.0000000000
> > >>> pixdim4        1.0000000000
> > >>> cal_max        3915.0000
> > >>> cal_min        0.0000
> > >>> file_type      NIFTI-1+
> > >>>
> > >>> 2. no-diffusion vol(3D)
> > >>> data_type      INT16
> > >>> dim1           128
> > >>> dim2           128
> > >>> dim3           66
> > >>> dim4           1
> > >>> datatype       4
> > >>> pixdim1        2.0000000000
> > >>> pixdim2        2.0000000000
> > >>> pixdim3        2.0000000000
> > >>> pixdim4        1.0000000000
> > >>> cal_max        3915.0000
> > >>> cal_min        0.0000
> > >>> file_type      NIFTI-1+
> > >>>
> > >>> 3.Mprage
> > >>> data_type      FLOAT32
> > >>> dim1           160
> > >>> dim2           512
> > >>> dim3           512
> > >>> dim4           1
> > >>> datatype       16
> > >>> pixdim1        1.0000000000
> > >>> pixdim2        0.5000000000
> > >>> pixdim3        0.5000000000
> > >>> pixdim4        1.0000000000
> > >>> cal_max        0.0000
> > >>> cal_min        0.0000
> > >>> file_type      NIFTI-1+
> > >>>
> > >>> 4.Register no-diffusion vol
> > >>> data_type      INT16
> > >>> dim1           160
> > >>> dim2           512
> > >>> dim3           512
> > >>> dim4           1
> > >>> datatype       4
> > >>> pixdim1        1.0000000000
> > >>> pixdim2        0.5000000000
> > >>> pixdim3        0.5000000000
> > >>> pixdim4        1.0000000000
> > >>> cal_max        3915.0000
> > >>> cal_min        0.0000
> > >>> file_type      NIFTI-1+
> > >>>
> > >>> 5.Registered diffusion vols
> > >>> data_type      INT16
> > >>> dim1           160
> > >>> dim2           512
> > >>> dim3           512
> > >>> dim4           1
> > >>> datatype       4
> > >>> pixdim1        1.0000000000
> > >>> pixdim2        0.5000000000
> > >>> pixdim3        0.5000000000
> > >>> pixdim4        1.0000000000
> > >>> cal_max        3915.0000
> > >>> cal_min        0.0000
> > >>> file_type      NIFTI-1+
> > >>>
> > >>
> > >
> > 
>