Hi,
I am trying to understand the role of reference volume and the
transformation matrix in 'flirt', and I am confused.
The input file is head_t1 (256x256x150) from the test data suite. It has a
sto_xyx matrix of
sto_xyz:1 -0.976562 0.000000 0.000000 122.070251
sto_xyz:2 0.000000 0.976562 0.000000 -116.210884
sto_xyz:3 0.000000 0.000000 1.000000 -71.000000
sto_xyz:4 0.000000 0.000000 0.000000 1.000000
I have made a zero2.nii file with avwcreatehd with dimension 128x128x75
and the corresponding pixel size 1.95x1.95x1.5.
The transformation matrix rs2.mat is
1.0 0.0 0.0 0.0
0.0 1.0 0.0 0.0
0.0 0.0 0.5 0.0
0 0 0 1
The R(3,3) = 0.5
I then apply:
flirt -in head_t1 -ref zero2 -out utest2 -applyxfm -init rs2.mat
The output has the dimensions of the ref-volume zero2. This is correct.
The pixdim(z) is 1.5 - which corresponds to ref-volume. The sto_xyz matrix
is:
sto_xyz:1 -1.950000 0.000000 0.000000 122.070251
sto_xyz:2 0.000000 1.950000 0.000000 -116.210884
sto_xyz:3 0.000000 0.000000 3.000000 -71.000000
sto_xyz:4 0.000000 0.000000 0.000000 1.000000
Now although the pixeldim(z) is 1.5, the sto_xyz indicates it is 3.0. If
you look at the image in fslview, the z-values changes by 3 mm for a unit
change in k-index.
I am thinking that the pixdim(z) should be 3 mm - then everything would be
consistent.
Thanks,
Arvind
New Mexico Resonance
|