FreeSurfer Tutorial: Useful recon-all flags.
The following flags can be used in conjunction with individual steps or the entire process:
recon-all flag |
Used with step |
Input |
Command Line |
Output |
Description |
-usecontrolpoints |
-normalization |
nu.mgz |
["mri_normalize"] -f $SUBJECTS_DIR/subjid/tmp/control.dat nu.mgz T1.mgz |
T1.mgz |
uses control points, saved to tmp/control.dat to modify the normalization |
-keepwmedits |
-segmentation |
brain.mgz |
["mri_segment"] -keep brain.mgz wm.mgz |
wm.mgz |
preserves any previous edits to wm volume |
-cc-xyz <X Y Z> |
-fill |
wm.mgz |
["mri_fill"] -a ../scripts/ponscc.cut.log -C X Y Z -xform transforms/talairach.xfm wm.mgz filled.mgz |
filled.mgz |
manually sets the corpus callosum seed point |
-pons-xyz <X Y Z> |
-fill |
wm.mgz |
["mri_fill"] -a ../scripts/ponscc.cut.log -P X Y Z -xform transforms/talairach.xfm wm.mgz filled.mgz |
filled.mgz |
manually sets the pons seed point |
-rh-xyz <X Y Z> |
-fill |
wm.mgz |
["mri_fill"] -a ../scripts/ponscc.cut.log -rh X Y Z -xform transforms/talairach.xfm wm.mgz filled.mgz |
filled.mgz |
manually sets the right hemisphere seed point |
-lh-xyz <X Y Z> |
-fill |
wm.mgz |
["mri_fill"] -a ../scripts/ponscc.cut.log -lh X Y Z -xform transforms/talairach.xfm wm.mgz filled.mgz |
filled.mgz |
manually sets the left hemisphere seed point |
-old-atlas |
|||||
-rerun |
The following flags can be used after certain manual intervention to regenerate accurate volumes and surfaces:
recon-all step |
Individual Flag |
Input |
Command Line |
Output |
["recon-all"] -autorecon2-cp -subjid subj (use this after setting control points. This flag will preserve your wm.mgz edits and remake all necessary volumes and surfaces) |
||||
-normalization2 |
brain.mgz |
["mri_normalize"] -f $SUBJECTS_DIR/subjid/tmp/control.dat -mask brain.mgz nu.mgz T1.mgz |
T1.mgz |
|
nu.mgz |
||||
T1.mgz |
["mri_mask"] T1.mgz brain.mgz brain.mgz |
brain.mgz |
||
brain.mgz |
||||
-segmentation |
brain.mgz |
["mri_segment"] -keep brain.mgz wm.mgz |
wm.mgz |
|
-edit_wm_with_aseg |
wm.mgz |
["mri_edit_wm_with_aseg"] wm.mgz aseg.mgz wm.mgz |
wm.mgz |
|
aseg.mgz |
||||
-fill |
wm.mgz |
["mri_fill"] -a ../scripts/ponscc.cut.log -xform transforms/talairach.xfm -segmentation aseg.mgz wm.mgz filled.mgz |
filled.mgz |
|
aseg.mgz |
../scripts/ponscc.cut.log |
|||
-tessellate |
filled.mgz |
["mri_tessellate"] filled.mgz 255 ../surf/lh.orig |
lh.orig |
|
["mri_tessellate"] filled.mgz 128 ../surf/rh.orig |
rh.orig |
|||
-smooth1 |
?h.orig |
["mris_smooth"] ?h.orig ?h.smoothwm |
?h.smoothwm |
|
-inflate1 |
?h.smoothwm |
["mris_inflate"] ?h.smoothwm ?h.inflated |
?h.inflated |
|
-qsphere |
?h.inflated |
["mris_sphere"] -w 0 -inflate -in 200 -q ?h.inflated ?h.qsphere |
?h.qsphere |
|
-fix |
?h.qsphere |
["mris_fix_topology"] subj ?h |
?h.orig |
|
-euler |
?h.orig |
["mris_euler_number"] ?h.orig |
?h.orig.euler |
|
-smooth2 |
?h.orig |
["mris_smooth"] ?h.orig ?h.smoothwm |
?h.smoothwm |
|
-inflate2 |
?h.smoothwm |
["mris_inflate"] ?h.smoothwm ?h.inflated |
?h.inflated |
|
-finalsurfs |
brain.mgz |
["mris_make_surfaces"] -w 0 subj ?h |
?h.white |
|
?h.orig |
?h.pial |
|||
?h.thickness |
||||
-cortribbon |
orig.mgz |
["mri_surf2vol"] --mkmask --hemi ?h --fillribbon --template orig.mgz --volregidentity subj --outvol ?h.ribbon.mgz |
?h.ribbon.mgz |
|
?h.white |
||||
?h.pial |
recon-all step |
Individual Flag |
Input |
Command Line |
Output |
["recon-all"] -autorecon2-wm -subjid subj (use this after doing manual wm edits. This flag will regenerate all necessary volumes and surfaces) |
||||
-fill |
wm.mgz |
["mri_fill"] -a ../scripts/ponscc.cut.log -xform transforms/talairach.xfm -segmentation aseg.mgz wm.mgz filled.mgz |
filled.mgz |
|
aseg.mgz |
../scripts/ponscc.cut.log |
|||
-tessellate |
filled.mgz |
["mri_tessellate"] filled.mgz 255 ../surf/lh.orig |
lh.orig |
|
["mri_tessellate"] filled.mgz 128 ../surf/rh.orig |
rh.orig |
|||
-smooth1 |
?h.orig |
["mris_smooth"] ?h.orig ?h.smoothwm |
?h.smoothwm |
|
-inflate1 |
?h.smoothwm |
["mris_inflate"] ?h.smoothwm ?h.inflated |
?h.inflated |
|
-qsphere |
?h.inflated |
["mris_sphere"] -w 0 -inflate -in 200 -q ?h.inflated ?h.qsphere |
?h.qsphere |
|
-fix |
?h.qsphere |
["mris_fix_topology"] subj ?h |
?h.orig |
|
-euler |
?h.orig |
["mris_euler_number"] ?h.orig |
?h.orig.euler |
|
-smooth2 |
?h.orig |
["mris_smooth"] ?h.orig ?h.smoothwm |
?h.smoothwm |
|
-inflate2 |
?h.smoothwm |
["mris_inflate"] ?h.smoothwm ?h.inflated |
?h.inflated |
|
-finalsurfs |
brain.mgz |
["mris_make_surfaces"] -w 0 subj ?h |
?h.white |
|
?h.orig |
?h.pial |
|||
?h.thickness |
||||
-cortribbon |
orig.mgz |
["mri_surf2vol"] --mkmask --hemi ?h --fillribbon --template orig.mgz --volregidentity subj --outvol ?h.ribbon.mgz |
?h.ribbon.mgz |
|
?h.white |
||||
?h.pial |
recon-all step |
Individual Flag |
Input |
Command Line |
Output |
["recon-all"] -autorecon2-pial -subjid subj (use this after editing brain.mgz to alter pial surface. This flag will regenerate all final surfaces) |
||||
-finalsurfs |
brain.mgz |
["mris_make_surfaces"] -w 0 subj ?h |
?h.white |
|
?h.orig |
?h.pial |
|||
?h.thickness |
||||
-cortribbon |
orig.mgz |
["mri_surf2vol"] --mkmask --hemi ?h --fillribbon --template orig.mgz --volregidentity subj --outvol ?h.ribbon.mgz |
?h.ribbon.mgz |
|
?h.white |
||||
?h.pial |
