bbregister is a program to perform within-subject, cross-modal registration using a boundary-based cost function. The registration is constrained to be 6 DOF (rigid). It is required that you have an anatomical scan of the subject that has been analyzed in freesurfer. Those using bbregister should site: Greve, D. N., and Fischl, B. (2009). "Accurate and robust brain image alignment using boundary-basedregistration." Neuroimage, 48, 63-72.
REQUIRED FLAGGED ARGUMENTS
- --s subject
FreeSurfer subject name as found in $SUBJECTS_DIR.
- "Moveable" volume. This is the template for the cross-modal volume. Eg, for fMRI, it is the volume used for motion correction.
Output FreeSurfer registration file (tkregister-style or LTA format).
--vsm VoxelShiftMap
- Include B0 distortion correction while performing registration. A voxel shift map can be created from a B0 map
with the epidewarp.fsl script (in FreeSurfer)
Initialization Arguments
--init-coreg (Default)Initialize the FreeSurfer mri_coreg program.
- Do NOT use aparc+aseg.mgz as a reference mask. It will not attempt to use aparc+aseg if it is not there.
- Assume that the geometry information in the cross-modal and anatomical are sufficient to get a close voxel-to-voxel registration. This usually is only the case if they were acquired in the same session.
- Supply an initial registration matrix; can be LTA.
- Assume t1 contrast, ie, White Matter brighter than Grey Matter
- Assume t2 contrast, ie, Gray Matter brighter than White Matter
- Same as --t2
- Same as --t2
OPTIONAL FLAGGED ARGUMENTS
- --int intvol
- Supply a volume to use an an intermediate volume when performing registration. This is useful for when the cross-modal is volume is a partial field-of-view (FoV). If you acquire in the same session a whole-head FoV, then pass the whole-head as the intermediate and the partial as the moveable.
- reg to middle frame (not with --frame)
- reg to frameno (default 0=1st)
- save template (good with --frame)
- resample mov and save as outvol
- get subject name from regfile
- RMS change in cortical surface position
- output an FSL FLIRT matrix
- output an LTA registration matrix (This flag can be used along with or instead of --reg!)
- only use left hemi
- only use right hemi
- cost slope for 1st stage (default is 0.5)
- cost slope for 2nd stage (default is 0.5)
- cost offset for 2nd stage (default is 0)
- 2nd stage 1D tolerance
- 2nd stage loop tolerance (same as --tolf)
- 2nd stage loop tolerance (same as --tol)
and NaNs.
--nmax nPowellMax- set max number of iterations (default 36)
- randomly change input to 1st stage reg
- default is 0.5
- use absolute instead of relative
- 2nd stage, default is 2mm
- use wm and gm proj abs in 2nd stage
- 2nd stage vertex subsampling, default is 1
- 2nd stage, use nearest neighbor interp (defalt is trilinear)
- mask out brain edge and B0 regions (1st and 2nd stages)
- Do not use ?h.cortex.label to mask.
- Use label to mask. Only vertices in the label are used.
- pass 1 search -max to +max (default 4)
- pass 1 search -max to +max step delta (default 4)
- pass 1 vertex subsampling (default 1)
- turn off pass 1
- turn off brute force search on pass 2
- change surface to surfname from ?h.white
- saves final cost as basename.?h.mgh
- saves final contrast as basename.?h.mgh
- saves initial cost as basename.?h.mgh
- save initial reg
- save initial cost
- exit with error if the final cost exceeds costvalue
- Use 12 or 9 or 6 DOF (6 is default)
- Set dof to use for mri_coreg
- Use NIFTI format as input to SPM when using --init-spm (spmregister). Ordinarily, it uses ANALYZE images to be compatible with older versions of SPM, but this has caused some left-right reversals in SPM8.
- FSL FEAT directory. Sets mov to featdir/example_func, uses --init-fsl, --bold, sets reg to featdir/reg/freesurfer/ anat2exf.register.dat. This replaces reg-feat2anat.
- When using FSL, apply BET to mov volume (turned by default).
- Initialize using NMI as implemented in mri_robust_register.
- Initialize using FSL FLIRT (requires that FSL be installed).
- Initialize using SPM spm_coreg (requires that SPM and matlab be installed).
- temporary dir (implies --nocleanup)
- do not delete temporary files
- print version and exit
- print help and exit
EXAMPLE 1
- Intialize with FLIRT, view result with tkregister2: bbregister --s bert --mov func.nii --init-fsl --reg register.dat tkregister2 --mov func.nii --reg register.dat --surf
EXAMPLE 2
- Intialize with SPM, view result with tkregister2: bbregister --s bert --mov func.nii --init-spm --reg register.dat tkregister2 --mov func.nii --reg register.dat --surf
EXAMPLE 3
- Register a partial FoV using whole FoV as intermdediate: bbregister --s bert --mov partial.nii --init-fsl --int whole.nii --reg register.partial.dat tkregister2 --mov partial.nii --reg register.partial.dat --surf
REPORTING
Report bugs to <freesurfer@nmr.mgh.harvard.edu>