omarocegueda / registration

Algorithms for 2D/3D image registration
29 stars 15 forks source link

FFD shell script #2

Open omarocegueda opened 10 years ago

omarocegueda commented 10 years ago

Add shell script to run the full IBSR18 experiment using FFD on the cluster

omarocegueda commented 10 years ago

These are the parameters from Rohlfing's mail: For ANTS - based on recommendation by Brian Avants and/or Nick Tustison:

ANTS 3 -t SyN[0.25] -r Gauss[3,0] -m CC[${ref_hdr},${flt_hdr},1,4] -o ${out_xfm}

where "ref_hdr" is path of the fixed (reference) image Analyze .hdr file, "flt_hdr" is the header file for the moving (floating) image, and "out_xfm" is the output transformation file name.

For CMTK/FFD - based on my own experience:

cmtk registration --auto-multi-levels 4 --nmi --dofs 6,9 -o ${affine} ${ref_hdr} ${flt_hdr} cmtk warp --force-outside-value 0 --grid-spacing 40 --coarsest 4 --relax-to-unfold --refine 3 --jacobian-weight 1e-4 --ncc -e 16 -a 0.125 -o ${out_xfm} ${affine}

ref_hdr, flt_hdr, and out_xfm as before. Here, the affine registration is decoupled from the nonrigid (ANTS does it in one tool), so there is an intermediate transformation, file system path defined by shell variable "affine", which comes out of "registration" and goes initializes "warp"

The registration and warp tools are part of my toolkit, CMTK, which yu can get at http://nitrc.org/projects/cmtk

omarocegueda commented 10 years ago

I had some difficulties compiling Rohlfing's code on the cluster: undefined reference to `fftw_cleanup_threads' which is solved by building fftw3 with the --enable-threads flag For some reason disabling Dicom, then building, then enabling and rebuilding was necessary for the code to compile correctly, I need to further investigate.