For inverse normalisation I have amended line around 471 of spm_write_sn.m
of = bb(1,:)-vox;
and comment out lines around 453
% bb(:,1) = round(bb(:,1)/vox(1))*vox(1);
% bb(:,2) = round(bb(:,2)/vox(2))*vox(2);
% bb(:,3) = round(bb(:,3)/vox(3))*vox(3);
which seem to produce results without the shifting effect.
From: SPM (Statistical Parametric Mapping) [mailto:[log in to unmask]] On
Behalf Of Joao Pereira
Sent: 27 August 2008 23:46
To: [log in to unmask]
Subject: [SPM] Normalising individual voxels
I was successful in implementing the voxel normalisation procedure (As
described in this mailing list, using Utils -> Deformations ->
Composition -> Inverse), in order to find the position of a voxel in
stereotactic space given it's location in native space.
The issue is that, in some volumes, when I visualise the results,
there seems to be a systematic shift (~4 voxels) on the y axis from
where I would expect to find the normalised voxel.
I'm extracting the coordinates from native space ([x y z] in voxel
position), and using the N.dat from the y_* deformation file
(N.dat(x,y,z,:,:) = [x' y' z'] - point in standard space in mm). In
order to convert the result to voxel positions, I'm using:
M = inv(spm_get_space("mwc file"))
output = [x' y' z']*M(1:3,1:3) + M(1:3,4)
Any ideas as to what is wrong, or is it just a display issue?
Thank you for your help!