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. --mov volid "Moveable" volume. This is the template for the cross-modal volume. Eg, for fMRI, it is the volume used for motion correction. --reg register.{dat,lta} 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. --no-coreg-ref-mask Do NOT use aparc+aseg.mgz as a reference mask. It will not attempt to use aparc+aseg if it is not there. --init-header 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. --init-reg initregfile Supply an initial registration matrix; can be LTA. Contrast Arguments (one required) --t1 Assume t1 contrast, ie, White Matter brighter than Grey Matter --t2 Assume t2 contrast, ie, Gray Matter brighter than White Matter --bold Same as --t2 --dti 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. --mid-frame reg to middle frame (not with --frame) --frame frameno reg to frameno (default 0=1st) --template-out template save template (good with --frame) --o outvol resample mov and save as outvol --s-from-reg reg get subject name from regfile --rms rmsfile RMS change in cortical surface position --fslmat flirt.mtx output an FSL FLIRT matrix --lta output.lta output an LTA registration matrix (This flag can be used along with or instead of --reg!) --lh-only only use left hemi --rh-only only use right hemi --slope1 slope1 cost slope for 1st stage (default is 0.5) --slope2 slope2 cost slope for 2nd stage (default is 0.5) --offset2 offset2 cost offset for 2nd stage (default is 0) --tol1d tol1d 2nd stage 1D tolerance --tol tol 2nd stage loop tolerance (same as --tolf) --tolf tolf 2nd stage loop tolerance (same as --tol) Be careful making these more stringent as they can cause underflows and NaNs.<
> --nmax nPowellMax set max number of iterations (default 36) --rand-init randmax randomly change input to 1st stage reg --gm-proj-frac frac default is 0.5 --gm-proj-abs abs use absolute instead of relative --wm-proj-abs dist 2nd stage, default is 2mm --proj-abs dist use wm and gm proj abs in 2nd stage --subsamp nsub 2nd stage vertex subsampling, default is 1 --nearest 2nd stage, use nearest neighbor interp (defalt is trilinear) --epi-mask mask out brain edge and B0 regions (1st and 2nd stages) --no-cortex-label Do not use ?h.cortex.label to mask. --label labelfile Use label to mask. Only vertices in the label are used. --brute1max max pass 1 search -max to +max (default 4) --brute1delta delta pass 1 search -max to +max step delta (default 4) --subsamp1 nsubsamp pass 1 vertex subsampling (default 1) --no-pass1 turn off pass 1 --no-brute2 turn off brute force search on pass 2 --surf surfname change surface to surfname from ?h.white --surf-cost basename saves final cost as basename.?h.mgh --surf-con basename saves final contrast as basename.?h.mgh --init-surf-cost basename saves initial cost as basename.?h.mgh --init-reg-out outinitreg save initial reg --initcost initcostfile save initial cost --cost-fail costvalue exit with error if the final cost exceeds costvalue --12, --9, --6 Use 12 or 9 or 6 DOF (6 is default) --coreg-dof coregDOF Set dof to use for mri_coreg --spm-nii 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. --feat featdir 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. --fsl-bet-mov When using FSL, apply BET to mov volume (turned by default). --init-rr Initialize using NMI as implemented in mri_robust_register. --init-fsl Initialize using FSL FLIRT (requires that FSL be installed). --init-spm Initialize using SPM spm_coreg (requires that SPM and matlab be installed). --tmp tmpdir temporary dir (implies --nocleanup) --nocleanup do not delete temporary files --version print version and exit --help 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