Hi Stefano

Lilla is going to be out of touch for a while I expect. Have you downloaded the FreeSurfer source code? That might be a good place to start. I think you can also load a .m3z warp into freeview and it will display it as a 3-frame volume.

I think the representation is that we keep a target volume coordinate for every atlas node

cheers
Bruce


On Tue, 23 Jan 2018, Stefano Zappalà wrote:


To whom it may concern,

I am Stefano Zappalà, a second year PhD student at Cardiff University. I would 
like to use the CVS
registration tool of the FreeSurfer software for elastic registration. I was 
very impressed by its
accuracy even in aligning fiber tracts.

My project is based on reading the warp field files as output of elastic 
registration for estimating
displacement fields. I wrote to Lilla Zollei few months ago who kindly shared 
with me a Matlab
script for reading .m3z files, output of cvs_register. I played with it for 
several months, without
being able to properly read the deformation field. What I obtain does not 
represent the real warp
(that i can extract and compare with, using another software). By checking the 
output image, I can
tell that the registration was successful, so I am expecting the warp field to 
be consistent with
the real one.

When I use the Matlab function given me by Ms Zollei, I notice a gradient in 
each of the component
(x,y,z) of the vector field, that varies according to the coordinate of each 
voxel (as you can see
in Figure1 attached). I therefore subtracted, for each voxel, its coordinate to 
the corresponding
component of the vector, using the cycle:
 
T=zeros(256,256,256,3);
for k=1:256
    for j=1:256
        for i=1:256
            T(i,j,k,:)=squeeze(vol_orig(i,j,k,:))-[i;j;k];
        end
    end
end
where vol_orig is the output of the function you gave me [vol_orig, vol_dest, 
vol_ind0, spacing,
exp_k] = mris_read_m3z('FILELOC'). The result is compared to vol_orig in 
Figure1.  

By doing so I obtained something acceptable but still distant from the truth 
(which comparison is
reported in Figure2, where the truth is the right vector field). 
In the attachment you can find the function, as well as Figure1 representing a 
slice of vol_orig on
the left and the modified version where the coordinates are subtracted to each 
component of the
vectors. Finally, in Figure2 you can find the warp field estimated with 
cvs_register and the
corresponding truth. The two warp fields seem different, unfortunately.

I was wondering if you have any suggestion on how to properly read it, or if 
you could confirm that
what I have done is correct. 

Thank you for your consideration.

Best regards,
Stefano.



_______________________________________________
Freesurfer mailing list
Freesurfer@nmr.mgh.harvard.edu
https://mail.nmr.mgh.harvard.edu/mailman/listinfo/freesurfer


The information in this e-mail is intended only for the person to whom it is
addressed. If you believe this e-mail was sent to you in error and the e-mail
contains patient information, please contact the Partners Compliance HelpLine at
http://www.partners.org/complianceline . If the e-mail was sent to you in error
but does not contain patient information, please contact the sender and properly
dispose of the e-mail.

Reply via email to