I think there is another way to get around this problem. We encountered this issue when working on the TORTOISE pipeline (developed by Carlo Pierpaoli's group and publicly available). In order to avoid interpolation affecting the histogram, we upsampled
all the images, going from a 2x2 mm matrix to a 1x1, then applied all our warps and then downsampled again back to 2x2 mm at the end of the procedure. This will preserve your FA histogram.
I believe there is an option to do this also in some FSL programs (e.g. applywarp has a -s which is described as an intermediary supersampling of output), but I don't think that it is used as default (Mark, please correct me if I am wrong)
Stefano Marenco, MD
NIMH/CBDB
10 Center Drive, Bldg 10 room 3C103
Bethesda MD 20892
Tel 301 435-8964
Fax 301 480-7795
Email:
[log in to unmask]
-----Original Message-----
From: Mark Jenkinson [mailto:[log in to unmask]]
Sent: Tuesday, October 23, 2012 6:33 PM
To:
[log in to unmask]
Subject: Re: [FSL] co-registraton of FA maps: FA values change: why and what to do?
Dear Aga,
It is quite likely that interpolation is causing extra smoothing, which will affect the histogram. It is just as prominent in rigid body as in other transformations. We would definitely recommend using the halfway-transforms to reduce bias.
All the best,
Mark
On 23 Oct 2012, at 17:09, "Burzynska, Aga" <
[log in to unmask]> wrote:
Hi,
I would like to follow up on the post from 2007 (https://www.jiscmail.ac.uk/cgi-bin/webadmin?A2=FSL;7353d2f3.0705, pasted below) on co-registration
of FA maps of the same subject.
I used FLIRT 6 DOF rigid body to register time2 nodif (b=0) image to the time1 nodif image and applied this transformation to the FA map.
Subtracting time2 from time1 maps resulted in small, but whole-brain differences in FA. I found it suspicious and examined the histograms of the FA maps before and after the transformation. I found out that the registration indeed changed the histogram
of the data.
Can the smoothing mentioned in the previous post be the reason for this?
Is smoothing so prominent even in the rigid body 6 DOF transformation?
Would you still recommend the method of forward and backward half-transforms to bring time 1 and time 2 to the same space with least bias? I wonder if there have been any updates on the best procedures in this case.
Thank you a lot for your advice,
Best,
Aga
-----old posts----
Dear FSL-folks,
I have (again) a question concerning the realignment of two FA-maps.
My first approach using FLIRT for rigid body (6 param) realignment
went well, I used the transformation matrix and ran FLIRT again for
both FA maps with the forward half transform and with the backward
half transform data. The reason for this second step (realigning both
maps to
"halfways") was that there is an inherent step of smoothing when using
FLIRT and it seems plausible to smooth both FA maps in a similar way
to prevent bias.
The actual problem is as follows: I have two FA-maps with different
scalings (the slice thickness is different) and I want to coregister
both FA-maps which works quite fine using the 12 param affine model of
FLIRT. Again, I want to do the halfway transform step using the
command (flirt -in in.img.nii.gz -ref ref.nii.gz -out out.nii.gz
-applyxfm -init
halfway_forward.mat) but I have the impression that the information
concerning the scaling is lost, since FSL view prohibits the
overlaying of the new created halfway-image on the reference image. I
guess that I have to consider the scaling factors, but I do not know
how. Following I copied the rotation and translation matrix. Up to
now, I only used the forward (backward) half transform data.
Thanks in advance for your help!
Yours, Oliver Singer
$ avscale --allparams dti_FA_zwei_affine12.nii.mat Rotation &
Translation Matrix:
0.987698 0.105347 -0.115563 -19.034700
-0.124221 0.977473 -0.170632 23.948400
0.094985 0.182889 0.978534 -37.706000
0.000000 0.000000 0.000000 1.000000
Rotation Angles (x,y,z) [rads] = -0.172640 0.115822 0.106258
Translations (x,y,z) [mm] = -19.034700 23.948400 -37.706000
Scales (x,y,z) = 1.001994 1.022542 1.025332
Skews (xy,xz,yz) = 0.013557 0.009088 0.030568
Average scaling = 1.01662
Determinant = 1.05054
Left-Right orientation: preserved
Forward half transform =
0.997907 0.062887 -0.050848 -10.348140
-0.060228 1.005081 -0.073460 10.938658
0.050480 0.091907 1.008767 -18.999305
0.000000 0.000000 0.000000 1.000000
Backward half transform =
0.995672 -0.066540 0.044557 11.877758
0.055957 0.986308 0.075207 -8.780949
-0.054172 -0.086402 0.980708 19.017314
0.000000 0.000000 0.000000 1.000000
Christian Beckmann schrieb:
Hi
you just run flirt with the -applyxfm -init options:
flirt -in in.img.nii.gz -ref ref.nii.gz -out out.nii.gz -applyxfm
-init halfway_forward.mat
That should do the trick
cheers
christian
On 4 Apr 2007, at 11:22, Oliver Singer wrote:
Dear Mark,
thanks for your help concerning the realignment of the FA-maps using
the half-transformation matrices. Seems the best option to me.
However, I have some "technical" questions concerning the way to do
this:
I ran FLIRT on the two FA-images. Using avscale I get the matrices
for forward and backward half transform as follows:
Forward half transform =
0.999691 -0.024777 -0.002129 4.972743
0.024866 0.997103 0.071886 0.730804
0.000342 -0.071916 0.997410 3.274879
0.000000 0.000000 0.000000 1.000000
Backward half transform =
0.999691 0.024866 0.000342 -4.990497
-0.024777 0.997103 -0.071916 -0.369960
-0.002129 0.071885 0.997411 -3.308346
0.000000 0.000000 0.000000 1.000000
My question now is how to apply these matrices to receive the
halfway-FA-images? Is it using the convert_xfm option or the
img2imgcoord option?
Sorry for this probably basic question.....
Yours Oliver
Mark Jenkinson schrieb:
Hi,
There are other interpolation schemes such as nearest neighbour or
sinc, but they each have some disadvantages too, and will make one
image qualitatively different from the other. The smoothing is
inherent in trilinear interpolation, some rather ugly
discontinuities occur with nearest neighbour and some ringing
and/or variable smoothing can occur with sinc.
An alternative is to transform both images to a half-way point,
this equalising the interpolation effects. This is what is done in
SIENA, and you can do the same by extracting the forward and
backward half-transformation matrices from the output of "avscale"
as run on your original transformation matrices.
That's what I would recommend.
All the best,
Mark
Hi,
You can change the interpolation scheme to nearest neighbour.
(Advanced options in the gui)
Saad.
On 2 Apr 2007, at 14:28, Oliver Singer wrote:
Hi,
I am trying to realign FA-maps of one subject, who was scanned at
two different time points. After running BET I am using FLIRT for
realigning (rigid body transform, 6D OF) the B0 images (extracted
from the DTI data set) of the second measurement to the B0
images of
the first measurement and as secondary images to apply the
transform to I take the FA maps of the second measurement.
The realignment works fine, but the FA-map of the second
measuresment (the realigned one) was "smoothed" during the process.
Since the first FA-map was not processed, the two maps differ in
terms of their "resolution / smootheness".
Is there a way either to turn off the "smoothing" during the
realignment or to smoothe the first FA-map (which was not
transformed) in a similar way? (I do not want to realign all
images to a "standard brain" due to gross pathology) Any help is
appreciated,
Yours , Oliver
------------------------------------------------------------------
------