Differences between revisions 1 and 14 (spanning 13 versions)
Revision 1 as of 2010-07-21 12:09:46
Size: 1786
Editor: LillaZollei
Comment:
Revision 14 as of 2015-07-02 13:12:19
Size: 6802
Comment:
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:
'''Index''' <<TableOfContents>>
Line 9: Line 10:
'''Index'''
<<TableOfContents>>
= Name =
mri_cvs_register - registers MRI scans of two subjects (or a subject and the CVS atlas) using the combined volume and surface-based registration method, CVS. Make sure that SUBJECTS_DIR is properly set before calling this script!

= Synopsis =
mri_cvs_register --mov arg1 --template arg2

= Arguments =
== Required Flagged Arguments ==
||--mov subjid ||subjid for subject to be moved / registered ||Subject id of the subject (as found in SUBJECTS_DIR) whose scan is to be moved in registration with that of the template. ||
||--template subjid ||subjid for subject to be kept fixed (template) ||Subject id of the subject (as found in SUBJECTS_DIR) whose scan is to be used and the template / target for the registration. ||
Line 13: Line 22:
= Name =
mri_cvs_register - registers MRI scans of two subjects (or a subject and the CVS atlas) using the combined volume and surface-based registration method, CVS.
== Optional Flagged Arguments ==
||--outdir directory ||output directory where all the results are written ||Output directory where the resulting morphs should be written. NOTE, the morphs require quite a lot of space so make sure that there is enough disk space available before your analysis. The default location for the output is: $SUBJECTS_DIR/$subjid/cvs ||
||--noaseg ||do not use aseg volumes in the registration pipeline (default is 0) || ||
||--nocleanup ||do not delete temporary files (default is 0) || ||
||--nolog ||do not produce a log file (default is 0) || ||
||--step1 ||only do step 1 (spherical registration) || ||
||--step2 ||only do step 2 (elastic registration) || ||
||--step3 ||only do step 3 (volumetric registration) || ||
||--version ||print version and exit || ||
||--help ||print (most up-to-date) help and exit || ||
Line 16: Line 33:
= Synopsis =
mri_cvs_register--mov arg1 --template arg2
Line 19: Line 34:
= Arguments =
== Positional Arguments ==
|| argA || brief description || detailed description (eg, help file information) ||
|| argB || brief description || detailed description (eg, help file information) ||

== Required Flagged Arguments ==
|| -flag1 arg1 || brief description || detailed description (eg, help file information) ||
|| -flag2 arg2 || brief description || detailed description (eg, help file information) ||

== Optional Flagged Arguments ==
|| -flag3 arg3 || brief description ||detailed description (eg, help file information) ||
|| -flag4 arg4 || brief description ||detailed description (eg, help file information) ||
 
Line 33: Line 35:
|| volume1 || description ||
|| volume2 || description ||
See below.
Line 37: Line 38:
description The CVS registration stream consists of 3 steps: (1) surface-based registration, (2) elastic registration and (3) volumetric registration. By default, in the current implementation of the script, step (3) consists of two steps: (i) registration using aseg volumes and (ii) registration using intensity volumes. This combination of the non-linear volumetric registrations proved to be very robust and accurate, but the (i) step could be eliminated if quicker execution time is required by using the "--noaseg" flag.
Line 39: Line 40:
= Examples =
== Example 1 ==
command foo -i f -o out
Relevant files that you should have in your directory (most recent on the top and the oldest in the bottom):
Line 43: Line 42:
description (a) Full CVS (with both (i) and (ii)) nlalign-afteraseg-norm.m3z : the morph resulting from (ii) of step (3) (intensity-based non-linear registration); it is NOT combined with the elastic registration morph nlalign-afteraseg-norm.mgz : the morphed norm.mgz file; it is the final result of CVS and contains contributions from ALL registration steps (combination of the elatic morph and the two m3z files)
Line 45: Line 44:
== Example 2 ==
command foo -i f -o out -f fvalue
nlalign-aseg.m3z : the morph resulting from (i) of step (3) (aseg-based non-linear registration); it is NOT combined with the elastic registration morph nlalign-aseg.mgz : the morphed aseg.mgz file; it is the result of CVS up to (i) of step (3) and contains contributions from registration steps of the elatic morph and the above m3z file
Line 48: Line 46:
description el_reg_toTEMPLATE_aseg.mgz : the elastic morph applied to aseg.mgz el_reg_toTEMPLATE.tm3d : the elastic morph that combines correspondences recovered in steps (1) and (2) el_reg_toTEMPLATE.mgz : the elastic morph applied to norm.mgz

(b) shorter version of CVS (using only (ii) in step (3) of the algorithm):

nlalign-norm.m3z : the morph resulting from step(3) (intensity-based non-linear registration); it is NOT combined with the elastic registration morph nlalign-norm.mgz : the morphed norm.mgz file; it is the final result of CVS and contains contributions from ALL registration steps (combination of the elatic morph and the above m3z file)

el_reg_toTEMPLATE.tm3d : the elastic morph that combines correspondences recovered in steps (1) and (2) el_reg_toTEMPLATE.mgz : the elastic morph applied to norm.mgz

If you ran the mri_cvs_registration script with the "--nocleanup" option then you will see two more files called combined*tm3d. These files take up a lot of memory so by default are deleted. They can be recreated in case the cvs morph needs to be applied to another volume at a later time. The morphs left behind when using the "--nocleanup" option are:

(a) el_reg_toTEMPLATE.tm3d : the elastic morph that combines correspondences recovered in steps (1) and (2) combined_elreg_aseg.tm3d : the morph that combines correspondences recovered in steps (1), (2) and (3) (i) combined_elreg_afteraseg-norm.tm3d : the morph that combines correspondences recovered in steps (1), (2), (3) (i) and (3) (ii) (b) el_reg_toTEMPLATE.tm3d : the elastic morph that combines correspondences recovered in steps (1) and (2) combined_elreg_norm.tm3d : the morph that combines correspondences recovered in steps (1), (2) and (3) (ii)

***********

If you want to reconstruct the resulting warp (as it was deleted to save space after the processing) and apply it to a new volume, you would need to call two functions. If the warp combined*tm3d does not exist run both (1) and (2) , if it already exists, just run (2).

(1) createMorph --out fullCVSmorph.tm3d --template template.mgz \

 . --subject movingvol.mgz --in gcam nlalign-afteraseg-norm.m3z \ morph el_reg_toTEMPLATE.tm3d

(2) applyMorph --template template.mgz --transform fullCVSmorph.tm3d \ vol movingvol.mgz outputvol.mgz linear

************

Note, the longest processing step in the CVS pipeline at the moment is the volumetric registration which might take about 15 hrs. The rest takes about 2 hours.

************

You will not be able to use fsaverage as a template as it does not have a corresponding surface and volumetric atlas. Instead, you can use one of the CVS atlases as a template (cvs or cvs_mni152).
Line 54: Line 80:
[[othercommand1]], [[othercommand2]] [[mris_register]], [[mri_nl_align]], [[mris_resample]], [[mri_cvs_check]], [[mri_cvs_data_copy]]
Line 57: Line 83:
FreeSurfer, FsFast

= Methods Description =
{{{
description
description
}}}
FreeSurfer
Line 66: Line 86:
[[References/Lastname###]] G.M. Postelnicu*, L. Zöllei*, B. Fischl: "Combined Volumetric and Surface Registration", IEEE Transactions on Medical Imaging (TMI), Vol 28 (4), April 2009, p. 508-522

L. Zöllei, A. Stevens, K. Huber, S. Kakunoori, B. Fischl: "Improved Tractography Alignment Using Combined Volumetric and Surface Registration", NeuroImage 51 (2010), 206-213
Line 69: Line 91:
Report bugs to <analysis-bugs@nmr.mgh.harvard.edu> Report bugs to < analysis-bugs@nmr.mgh.harvard.edu >
Line 72: Line 94:
JaneSmith LillaZollei

Index

Name

mri_cvs_register - registers MRI scans of two subjects (or a subject and the CVS atlas) using the combined volume and surface-based registration method, CVS. Make sure that SUBJECTS_DIR is properly set before calling this script!

Synopsis

mri_cvs_register --mov arg1 --template arg2

Arguments

Required Flagged Arguments

--mov subjid

subjid for subject to be moved / registered

Subject id of the subject (as found in SUBJECTS_DIR) whose scan is to be moved in registration with that of the template.

--template subjid

subjid for subject to be kept fixed (template)

Subject id of the subject (as found in SUBJECTS_DIR) whose scan is to be used and the template / target for the registration.

Optional Flagged Arguments

--outdir directory

output directory where all the results are written

Output directory where the resulting morphs should be written. NOTE, the morphs require quite a lot of space so make sure that there is enough disk space available before your analysis. The default location for the output is: $SUBJECTS_DIR/$subjid/cvs

--noaseg

do not use aseg volumes in the registration pipeline (default is 0)

--nocleanup

do not delete temporary files (default is 0)

--nolog

do not produce a log file (default is 0)

--step1

only do step 1 (spherical registration)

--step2

only do step 2 (elastic registration)

--step3

only do step 3 (volumetric registration)

--version

print version and exit

--help

print (most up-to-date) help and exit

Outputs

See below.

Description

The CVS registration stream consists of 3 steps: (1) surface-based registration, (2) elastic registration and (3) volumetric registration. By default, in the current implementation of the script, step (3) consists of two steps: (i) registration using aseg volumes and (ii) registration using intensity volumes. This combination of the non-linear volumetric registrations proved to be very robust and accurate, but the (i) step could be eliminated if quicker execution time is required by using the "--noaseg" flag.

Relevant files that you should have in your directory (most recent on the top and the oldest in the bottom):

(a) Full CVS (with both (i) and (ii)) nlalign-afteraseg-norm.m3z : the morph resulting from (ii) of step (3) (intensity-based non-linear registration); it is NOT combined with the elastic registration morph nlalign-afteraseg-norm.mgz : the morphed norm.mgz file; it is the final result of CVS and contains contributions from ALL registration steps (combination of the elatic morph and the two m3z files)

nlalign-aseg.m3z : the morph resulting from (i) of step (3) (aseg-based non-linear registration); it is NOT combined with the elastic registration morph nlalign-aseg.mgz : the morphed aseg.mgz file; it is the result of CVS up to (i) of step (3) and contains contributions from registration steps of the elatic morph and the above m3z file

el_reg_toTEMPLATE_aseg.mgz : the elastic morph applied to aseg.mgz el_reg_toTEMPLATE.tm3d : the elastic morph that combines correspondences recovered in steps (1) and (2) el_reg_toTEMPLATE.mgz : the elastic morph applied to norm.mgz

(b) shorter version of CVS (using only (ii) in step (3) of the algorithm):

nlalign-norm.m3z : the morph resulting from step(3) (intensity-based non-linear registration); it is NOT combined with the elastic registration morph nlalign-norm.mgz : the morphed norm.mgz file; it is the final result of CVS and contains contributions from ALL registration steps (combination of the elatic morph and the above m3z file)

el_reg_toTEMPLATE.tm3d : the elastic morph that combines correspondences recovered in steps (1) and (2) el_reg_toTEMPLATE.mgz : the elastic morph applied to norm.mgz

If you ran the mri_cvs_registration script with the "--nocleanup" option then you will see two more files called combined*tm3d. These files take up a lot of memory so by default are deleted. They can be recreated in case the cvs morph needs to be applied to another volume at a later time. The morphs left behind when using the "--nocleanup" option are:

(a) el_reg_toTEMPLATE.tm3d : the elastic morph that combines correspondences recovered in steps (1) and (2) combined_elreg_aseg.tm3d : the morph that combines correspondences recovered in steps (1), (2) and (3) (i) combined_elreg_afteraseg-norm.tm3d : the morph that combines correspondences recovered in steps (1), (2), (3) (i) and (3) (ii) (b) el_reg_toTEMPLATE.tm3d : the elastic morph that combines correspondences recovered in steps (1) and (2) combined_elreg_norm.tm3d : the morph that combines correspondences recovered in steps (1), (2) and (3) (ii)

***********

If you want to reconstruct the resulting warp (as it was deleted to save space after the processing) and apply it to a new volume, you would need to call two functions. If the warp combined*tm3d does not exist run both (1) and (2) , if it already exists, just run (2).

(1) createMorph --out fullCVSmorph.tm3d --template template.mgz \

  • --subject movingvol.mgz --in gcam nlalign-afteraseg-norm.m3z \ morph el_reg_toTEMPLATE.tm3d

(2) applyMorph --template template.mgz --transform fullCVSmorph.tm3d \ vol movingvol.mgz outputvol.mgz linear

************

Note, the longest processing step in the CVS pipeline at the moment is the volumetric registration which might take about 15 hrs. The rest takes about 2 hours.

************

You will not be able to use fsaverage as a template as it does not have a corresponding surface and volumetric atlas. Instead, you can use one of the CVS atlases as a template (cvs or cvs_mni152).

Bugs

None

See Also

mris_register, mri_nl_align, mris_resample, mri_cvs_check, mri_cvs_data_copy

Links

FreeSurfer

References

G.M. Postelnicu*, L. Zöllei*, B. Fischl: "Combined Volumetric and Surface Registration", IEEE Transactions on Medical Imaging (TMI), Vol 28 (4), April 2009, p. 508-522

L. Zöllei, A. Stevens, K. Huber, S. Kakunoori, B. Fischl: "Improved Tractography Alignment Using Combined Volumetric and Surface Registration", NeuroImage 51 (2010), 206-213

Reporting Bugs

Report bugs to < analysis-bugs@nmr.mgh.harvard.edu >

Author/s

LillaZollei

mri_cvs_register (last edited 2018-02-05 12:34:44 by MorganFogarty)