#acl LcnGroup:admin,read,write,delete,revert All:read = FreeSurfer Release Notes = These Release Notes cover what's new in a release, and known issues. See [[DownloadAndInstall|the download and install page]] for the current stable release. See [[PreviousReleaseNotes|previous release notes]] for older versions. == Beta 8.0.0 Release (Nov 5, 2024) == FreeSurfer version 8.0.0-beta can be found [[https://surfer.nmr.mgh.harvard.edu/fswiki/rel7downloads|here]]. This major release with many changes. recon-all will have different output than version 7. In terms of changes to recon-all, here are the highlights: * Now uses SynthSeg, [[https://synthstrip.io|SynthStrip]], and [[https://synthmorph.io|SynthMorph]] (deep learning algorithms). These make recon-all more robust and much faster. Technically, [[https://synthmorph.io|SynthMorph]] is not needed for recon-all to run, but the nonlinear registration can be used in multimodal analysis to map to the MNI152. * There is now DL automatic segmentation of regions that often cause errors in pial surface placement. These include the major sinuses (sagittal and transverse) as well as a spot between frontal and temporal lobes where the middle cerebral artery (MCA) and dura cause bright areas. * Several fixes in entorhinal cortex. First, the WM in EC is segmented using DL. The WM is often only 0.5mm thick and very hard to see; this often resulted in severe white surface areas in this location requiring manual editing to fix. The new surface now represents gyrus ambiens much better. Second, The white surface is extended to the front of amygdala. Third, the binary cortex of label now covers entorhinal cortex and parts of the temporal pole better allowing the pial surface to extend out to its true edge. * Some bugs where found in and around inferior frontal cortex causes the white surface to extend too far into basal ganglia. This has been fixed. This is above and beyond the issue reported in 7.3.2 below. * All the bug fixes described below are now turned on by default. * These changes will work with longitudinal with the caveat that the volumetric segmentation will not be fully longitudinal. The segmentation will be applied to the time point in the base space, but it will not (and cannot) be initialized with the base segmentation. Initial tests indicated that the change in power was minimal and mixed. * recon-all will now run in about 2h vs 8h on a single CPU. It will, however, required about 24GB of memory to run. * The use of [[https://synthstrip.io|SynthStrip]] should make recon-all much more robust as the old skull stripping method often included extra cerebral tissue. * With synthseg, we are now supplying a segmentation-based total intracrainial volume (sTIV) along with the registration-based estimated TIV (eTIV) * We have applied v8 to several studies (aging, AD crossectional, AD longitudinnal, schizophrenia). There were no major changes in the ability to detect effects, and there was no interaction between effect and version. * This is a BETA release, so please run it on your data to find any problems. Known Bugs: * You must set environment variable FS_ALLOW_DEEP to 1, eg, export FS_ALLOW_DEEP=1 (for bash) or setenv FS_ALLOW_DEEP 1 (for csh/tcsh) * There is a bug that causes recon-all to exit with error the second time it is run on a case Further updates and improvements: * New: NextBrain ([[https://github-pages.ucl.ac.uk/NextBrain/#/home|Project page]]; [[https://surfer.nmr.mgh.harvard.edu/fswiki/HistoAtlasSegmentation|FS wiki page]]): Segment a brain scan of any MRI contrast into hundreds of histologically defined volumetric labels. * New: [[https://synthstrip.io|mri_synthstrip]] -- added features. You can now control the number of threads, save the distance transform, and set the mask border threshold to high values. * New: [[https://synthmorph.io|mri_synthmorph]] -- added features. Save transforms in LTA or MGZ/NII format and directly apply them using mri_convert (-at) or mri_synthmorph (apply), without conversion. Transforms are now symmetric and you can save their inverse. Improved warp regularity. Adjustable warp smoothness, number of integration steps. Joint affine-deformable registration in a single shot. Various bug fixes. == Stable v7.4.1 Release (June 20, 2023) == FreeSurfer version 7.4.1 can be found [[https://surfer.nmr.mgh.harvard.edu/fswiki/rel7downloads|here]]. Unless new features are employed, recon-all will give the same exact result as other 7.X releases. This version has some critical fixes to [[https://surfer.nmr.mgh.harvard.edu/fswiki/MiDeFace|MiDeFace]] == Known Issues with 7.4.1 == * In FsFast functional connectivity analysis (this version and all previous versions), the seed waveforms were not rescaled in any way. This can affect the amplitude of the regression coefficient of the rest of the image (which is rescaled). This will not have any effect under several circumstances: (1) it will have no impact on the sig.nii.gz (p-value) or the Pearson correlation (pcc) at the individual level, (2) the seed uses a pca/svd, (3) if the intensity scale in each image/subject is the same (or close to it), or (4) if you are passing up the Pearson correlation (pcc) to the higher level. Note that the typical FSFAST analysis passes up the contrast effect size (ces) to the higher level which will be affected by this bug. The problem will manifest itself as extra variability at the group level due to the variability of the mean intensity at the individual level. This has been fixed in the dev version of FS and will be in the next release. The change will require that you specify the type of rescaling you want. If you run the new fcseed-sess on an old configuration that does not have a scaling method specified, it will exit with a error message (this can be overridden by adding -no-require-rescale-type). == Stable v7.4.0 Release (May 10, 2023) == FreeSurfer version 7.4.0 can be found [[https://surfer.nmr.mgh.harvard.edu/fswiki/rel7downloads|here]]. Unless new features are employed, recon-all will give the same exact result as other 7.X releases. Here are some of the highlights: * New: [[recon-all-clinical]] * New: dti-based thalamic segmentation * New: DICOM conversion now uses dcm2niix. This is "under-the-hood" so you don't even know it is there. This allows conversion of many more DICOM types, including the new extended DICOM format. * New: [[https://surfer.nmr.mgh.harvard.edu/fswiki/EasyReg|mri_easyreg]] -- an easy-to-use deep-learning tool for symmetric affine and deformable registration which is s heavily based on [[https://synthmorph.io|mri_synthmorph]] (see below). * New: [[https://synthmorph.io|mri_synthmorph]], an easy-to-use deep-learning tool for affine and deformable registration * New: mri_synthseg -- new features * New: all versions of SAMSEG now use block coordinate descent (BCD) which speeds it up by about 10-20% * New: better surfaces around entorhinal cortex (EC). Add -fix-ento-wm to the recon-all command line (or in a global xopts file). This will apply a deep learning network to segment the WM around EC and place surfaces around that. It will create a segmentation called entowm.mgz. This is still a little experimental. * New: recon-all options can now go into an expert options file with a recon-all line, eg, "recon-all -fix-ento-wm". If you always want a particular flag to be passed to recon-all, you can add it in this way to $SUBJECTS_DIR/global-expert-options.txt * Bug fixes: Known issues in 7.3.2 below have been fixed (FLAIR pial placement, mri_sclimbic_seg, segment_subregions, mri_synthsr) * Bug fix: mri_glmfit now uses double precision when computing p-values. This practically has no effect except for cases where the p-values where extraordinarily small (eg, when you have 1000 DOF). * Bug fix: slicedelay in FSFAST is now fixed (could have crashed due to a python incompatibility) * Bug fix: samseg-long was running mri_robust_template incorrectly which caused all time points to be aligned to the first time point instead of to the base image. This has been fixed. Note that this does not affect the similarly named run_samseg_long (which is called by samseg-long). == Known Issues with 7.4.0 == * In some cases, mris_fix_topology will give different results when different number of threads are used. The differences are very small, but it can make it appear that recon-all is non-deterministic. To fix this, add "mris_fix_topology -threads 1" to an expert options file (a global one is best to that it is always there) * When running selxavg3-sess or mkcontrast-sess with the -bin option, include -mcr $FREESURFER_HOME/MCRv97 to use the proper matlab library. The -bin option will use a compiled matlab binary, so no matlab license is needed (probably only works on centos). == Stable v7.3.2 Release (Aug 8 2022) == FreeSurfer version 7.3.2 can be found [[https://surfer.nmr.mgh.harvard.edu/fswiki/rel7downloads|here]]. Unless new features are employed, recon-all will give the same exact result as other 7.X releases. Here are some of the highlights: * Bug fix when converting diffusion tensor data with a negative determinant from DICOM. There was a bug in the old code that made the bvecs incorrect in this case. The bvecs will now be correct regardless of whether you use the old code or the new -dcm2niix option (see below) * Bug fix: ability to fill in underlabeled ventricles. This is not done by default yet. To implement, add "-vent-fix -1 7000 1" to the mri_ca_label command line. This can be incorporated into recon-all by an expert options file with the line "mri_ca_label -vent-fix -1 7000 1". * Bug fix: ability to force white matter (WM) between putamen and cortex. This is not done by default yet. To implement, add "-insert-wm-bet-putctx 1" to the mri_ca_label command line. This can be incorporated into recon-all by an expert options file with the line "mri_ca_label -insert-wm-bet-putctx 1". If you want to use both the ventricle fix and the WM insertion, then create a line "mri_ca_label -vent-fix -1 7000 1 -insert-wm-bet-putctx 1" to the expert options files * Bug fix: improve surface placement in inferior frontal area near putamen. There are some cases where the white surface is not placed well in these areas because of the close proximity of putamen to cortex; it is probably the case that the surface is not well-defined in this region anyway, but the placement can be improved by creating an expert options file with the line "!WhitePreAparc --rip-bg-no-annot" * Bug fix/New: ability to automatically edit the filled.mgz to remove voxels from amygdala and parts of hippocampus. These voxels can often cause topological defects that are not fixed properly. This is not done by default yet. To implement, create an expert options file with the line "mri_edit_wm_with_aseg -fix-scm-ha 1". * Bug fix: cross hemisphere analysis ([[https://surfer.nmr.mgh.harvard.edu/fswiki/Xhemi|xhemi]]). In previous versions, the surface registration (surfreg) would use the annotation during the registration procedure which caused some misalignment. Now surfreg will require that you specify either --annot (old behavior) or --no-annot (new recommended). The errors are small, so, if you have an ongoing analysis, you can stick with the old behavior. * Global Expert options file. If you have a file called global-expert-options.txt in your $SUBJECTS_DIR, recon-all will automatically read in this file as an expert options file * Defect labels will now only encompass actual cortical areas. Before, they would also include vertices on the medial wall, which was not very useful * New: Conversion from DICOM can now be done with dcm2niix as a backend using -dcm2niix with either dcmunpack or mri_convert. This should give the same result as when using the old code except it will be much faster and can now handle all cases that dcm2niix can handle, including enhanced dicom. At some point, this will become the default method. Thanks to Chris Rorden and Yujing Huang for getting this working. * New: Gradient unwarping. There is a new program called mri_gradunwarp; you still have to supply the gradient unwarping spherical harmonics tables. * New: Minimally Invasive Defacing tool (MiDeFace). * New: [[https://surfer.nmr.mgh.harvard.edu/fswiki/SubregionSegmentation|segment_subfields]] beta version new software to run subfield segmentation (hippocampus, amygdala, thalamic). The old software required matlab. The new tool is written in python but will not give exactly the same result but will be extremely close. Does not work with T2 yet. * New: [[https://synthstrip.io|SynthStrip]] deep learning tool to strip skulls * New: ScLimbic subcortical limbic deep learning segmentation tool * New: HypothalamicSubunits deep learning segmentation of hypothalamic subunits * New: SynthSeg deep learning contrast-independent whole brain segmentation (including cortical parcellation) * New: [[https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5690540/pdf/nihms916015.pdf|Segmentation-based (SB) cost function]] for multimodal registration in mri_robust_register * New: better version control. You can create a file called fs-allowed-versions.txt in $SUBJECTS_DIR with a list of allowable versions for your analysis. If this file exists, then both the current version of FS and the version listed in $subject/scripts/build-stamp.txt must be in the list for recon-all to proceed. This helps to prevent using different/incompatible versions of FS within the same analysis while allowing the mixture of compatible versions. * New: interface for x virtual frame buffer (fsxvfb). When you run freeview from fsxvfb, no X server is needed. This is good for taking a bunch of pictures when you don't want freeview popping up all the time. Eg, fsxvfb freeview orig.mgz -ss mypic.png --quit === Known Issues === * mri_sclimbic_seg when used with the --conform argument will fail throwing a "TypeError: only size-1 arrays can be converted to Python scalars". For a fix, please refer to the readme.txt at https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/7.3.2-patch/mri_sclimbic * segment_subregions will fails with an "TypeError: resize() got an unexpected keyword argument 'interp'". For a fix, please refer to the readme.txt at https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/7.3.2-patch/segment_subregions * Pial surface placement with FLAIR images has a bug which has existed since the start of version 7. This bug causes the pial surface to not extend nearly far enough. This has been fixed in the development version and so will be present in the next version. You can fix it in previous v7 releases by creating (or adding to) $SUBJECTS_DIR/global-expert-options.txt with this line "PlaceMMPialSurf --mm_min_inside 50 --mm_max_inside 200 --mm_min_outside 10 --mm_max_outside 50" * mri_synthsr fails during preprocessing due to a deprecated method in the nibabel module. For a fix, please refer to the readme.txt at https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/7.3.2-patch/synthsr/ == Stable v7.2 Release (July 19, 2021) == FreeSurfer version 7.2 can be found [[https://surfer.nmr.mgh.harvard.edu/fswiki/rel7downloads|here]]. This new version fixes bugs and adds some new features (Tracula has changed substantially). Unless the new features are employed, recon-all will give the same exact result as 7.1.1 and 7.1.0. The only slight exception is that a T2 masking bug was fixed, but this should not affect the downstream results. Results from subjects analyzed with 7.2 can be mixed with subjects analyzed with 7.1.{0,1}. Here are some of the highlights: * Tracula - substantial changes. See https://surfer.nmr.mgh.harvard.edu/fswiki/Tracula#Updates * Hypothalamus subunit segmentation - new feature https://surfer.nmr.mgh.harvard.edu/fswiki/HypothalamicSubunits * Two new ways to manually edit your analysis:<
> * The filled.mgz can now be edited instead of the wm.mgz. The advantage to this is that filled.mgz is slightly further in the process and it is more intuitive. The filled.mgz is actually a segmentation of the subcortical mass. In Freeview, you can view it in outline mode, meaning that the edges of the segmentations are actually the surface that you are editing. After that, run recon-all with the -autorecon2-wm -autorecon3 options, just as you would if you had edited the wm.mgz. * Landmark-based repositioning of surfaces. Did you ever want to just make the surface move through a certain point? You can do that now by creating point sets in freeview. Create a separate point set for each surface (lh, rh, white, and pial), then save it in subject/surf with a file name repos.$hemi.$surf.json where $hemi is either lh or rh and $surf is either white or pial. Then run recon-all with the -autorecon2-surfonly -autorecon3 options. Note that you can do this interactively inside of FreeView as well; look under Tools->Resposition Surface. If you do it interactively, the surface may be overwritten next time recon-all is re-run, but it gives you a chance to play with the repositioning. * Changes to recon-all:<
> * T2 was not being masked * curv stats moved to autorecon3 (could cause errors when re-running recon-all) * can now run single hemisphere * options -seg-wlo and -seg-ghi now work properly * long stream (rca-long-tp-init) - turned off preservation of permissions when copying as this was causing some permission errors when the base was created by one user but the long time point was being run by another user * mri_glmfit-sim<
> * Added --spatial-sum to compute the sum (instead of average) for the y.ocn file; good when input is area or volume * Added 1D capability (now used by Tracula) * Fixed locale issue to handle cases where decimal points are represented by commas. * freeview - can now load and visualize diffusion orientation distribution function (ODF) data.<
> * PETsurfer/mri_glmfit - added non-invasive Logan for PET kinetic modeling<
> * SAMSEG - now determinist for multithreaded executions (but runs a little slower) <
> * colortable embedding - in many cases (eg, aseg, aparc+aseg), colortables are embedded in the file so they do not need to be explicitly specified in freeview.<
> * mris_place_surface.cpp. Added ability to turn off loading the segmentation when placing the surface. This will be helpful for NHP<
> * Temporary files - this is now handled more in a principled way<
> * Known issues: it was recently discovered there may be some inaccuracies in the talairach registration (subject/mri/talairach.xfm) when a volume has been defaced and the face voxels are replaced with 0s. We have found some problems in the 1000 Functional Connectomes anatomical data where the defacing is very aggressive. No problems were found in the UK BioBank data. Mostly, this is not relevant, but it can affect the estimated intracranial volume (eTIV) which can then affect group results <
> when volume or surface area are being corrected by eTIV. This was discovered by comparing the eTIV from version 5.3 with that of versions 6.0 and 7.X. <
> Points labeled as "frozen" (ie, 247 in aseg.presurf.mgz)will not be included in the ?h.cortex.label, which will exclude them from most other analysis; this renders the freeze functionality nearly useless. == Stable v7.1.1 Release (July 27, 2020) == FreeSurfer version 7.1.1 can be found [[https://surfer.nmr.mgh.harvard.edu/fswiki/rel7downloads|here]]. This new version fixes bugs and adds some new features. Unless the new features are employed, it will give the same result as 7.1.0; consequently, results from subjects analyzed with 7.1.1 can be mixed with subjects analyzed with 7.1.0. Bug Fixes: * Mac-related fixes:<
> freeview/ PETSC error is now fixed<
> fs_time now runs properly<
> mri_cc does not crash when it can't find fornix (usually on mac)<
> "preserve=timestamps" error fixed * Memory leaks fixed (MRIScomputeMetricProperties). The excessive memory usage had caused some jobs to crash New Features: * mris_volmask and mris_place_surface now have parallel implementations making recon-all faster * tkregisterfv can now be run with --fstal (use this instead of tkregister2) * official FS docker container at https://hub.docker.com/r/freesurfer/freesurfer/ == Stable v7.1.0 Release (May 11, 2020) == FreeSurfer version 7.1.0 can be found [[https://surfer.nmr.mgh.harvard.edu/fswiki/rel7downloads|here]]. This new version is being released so quicly after the previous one because we found some small issues with the way that conforming step was being performed. The conforming step takes your input volume and converts it to 256x256x256 1mm and converts the type to UCHAR (8 bit). When converting to UCHAR, it has to do some intensity rescaling. The method for doing this was changed in 7.0.0. In most data sets, this results in small changes to the output. However, we just discovered that it can result in large problems in some data sets, so, for 7.1.0, we are reverting back to the pre-7.0.0 method. Going forward, we recommend that people NOT use 7.0.0 and use 7.1.0 instead. We apologize for any inconvenience this has caused. Note: always analyze all of your subjects using recon-all from a single version, do not mix versions. == Stable v7.0.0 Release (Apr 29, 2020) is being recalled and should not be used. Please use version 7.1.0 above. == * recon-all is 20-25% faster. Eg, one case was 5.2 hours in v6 but only 4.3 hours in v7 (single threaded). Your run times will vary depending upon your computer and load. * Better high resolution surface reconstruction with -hires. * conf2hires. This is an alternative method to do hi-res recon byrunning part of the stream at 1mm, then placing the 1mm surfaces on the hi-res volume. This was originally programmed for the HCP. The now-standard hi-res stream should work just as well, but we kept conf2hires for backwards compatibility. * The white surface is remeshed to improve triangle quality * Placement of pial surface on t2/FLAIR has better memory management * The pial surface in the medial wall is now pinned to the white surface (ie, no more pial surfaces cutting through hippocampus/amygdala). * The optic chiasm will no longer be part of the surface * Ability to freeze the surface at points labeled 247 in the aseg.presurf.mgz * Bias field correction with ANTS N4 instead of MNI N3 (removes dependency on MINC software) * ANTS denoise is used when creating the orig surface (but not thefinal surfaces) * Note: ANTS installation is NOT required * New ex vivo Brodmann Areas (BAs) for the ventral visual stream (see http://vpnl.stanford.edu/vcAtlas) based on cytoarchitectonically defined labels from Juelich.Subfields and Nuclei * Segmentation - hippcampal subfields, amygdalar nuclei, brain stem, thalamic nuclei (with fixed LGN and MGN). These have all be available through add-ons but are now part of the FS bundle. * Combined volume-surface (CVS) nonlinear registration has better memory management. * Correction for multiple comparisons can now be performed with permutation in the cases where there is a continuous covariate * A new interface (fspalm) has been added to make it easy to run the Parametric Analysis of Linear Models (PALM, fsl.fmrib.ox.ac.uk/fsl/fslwiki/PALM) which offers much more permutation capability. * Sequence Adaptive Multimodal Segmentation (SAMSEG). This is a new tool that provides whole-head segmentation (like the aseg in the recon-all stream). It can operate on any modality or combination of modalities. It can run in cross-sectional and longitudinal modes. SAMSEG also has an advanced white matter lesion segmentation (cross-sectional only). The cross-sectional segmentation runs in about 45min single threaded. * FreeView changes: surfce path and label editing, surface annotation editing, automatic segmentation assisted by Geodesic Matting algorithm, displaying two time courses at the same time, better support for mac. * The code base is now fully C++ * We now build with the cmake utilities * Tracula. There will be an upcoming 7.1 release with our diffusiontools. We made the decision not to delay the release of the stable 7.0 recon-all stream while the diffusion tools are being tested against it. * Gone: QDEC, CUDA, -make option to recon-all. == Stable v6.0 == '''''23 January 2017''''' Stable release version 6.0 is a major release containing new features and bug fixes. === What's New === * Brain networks (cognitive components) estimated from 10449 Experiments and 83 tasks in the Brainmap database are released in MNI152 and fsaverage space: * Wikipage: [[BrainmapOntology_Yeo2015]] * There are three sets of data (networks+auxiliary information) that are released: (1) Probability that a task would recruit a component (csv files), (2) Probability that a component would activate a voxel/vertex, (3) quantitative measures of functional specificity and flexibility (i.e., whether a voxel/vertex specializes for a specific cognitive component or supports multiple components). * The volumetric maps + csv files are found in average/Yeo_Brainmap_MNI152/. See Yeo_Brainmap_MNI152_README in directory for more details. * The surface maps are found in the subjects/fsaverage/label directory. See Yeo_Brainmap_fsaverage_README in directory for more details. * Substructure Segmentation: * New hippocampal subfields generation - See HippocampalSubfields * New brainstem substructures generation - See BrainstemSubstructures * Longitudinal: * New dedicated longitudinal pipeline for subfield segmentation - See LongitudinalHippocampalSubfields * Fix for time point addition (see bug in 5.3) * TRACULA: see [[Tracula#Updates|TRACULA release notes]] * Matlab Linear Mixed Effects Tools: * Updated Matlab LME tools to newer Matlab versions * Allow missing Parallel Toolbox (process sequentially) * minor improvements to F-test * [[attachment:28.png|Improved dice scores]] between the aseg and the manual labels of 26 GE and Siemens subjects. Putamen now does not extend so far laterally. * FSFAST now supports B0 distortion correction and Combined-Volume-Surface (CVS) registration * NEW! PETSurfer - integrated PET, Partial Volume Correction, and kinetic modeling analysis * mri_convert can now read gradient tables and b-value tables from the headers of DICOM diffusion data * mri_glmfit computes the partial Pearson correlation coefficient (pcc.mgh) * mri_aparc2aseg now reassigns voxels in the ribbon labeled as cerebellum ctx to cerebral ctx * Added -dura_thresh option to mris_make_surfaces to allow manual setting of the dura threshold instead of automatic estimation * recon-all now produces aseg.mgz (subcortical atlas) with Hi-Res data (<1mm). The -hires flag is still necessary to include with recon-all when hi-res data is input. Changes to mri_normalize, mri_em_register and mri_watershed were made to support this feature. * Improved error handling of talirach registration in recon-all: if tal-check fails, it will retry with an older atlas * Modified T2 registration operations to create a T2raw.auto.lta file which gets copied to T2raw.lta (as well as for FLAIR) * Updated fsaverage to include fixed peri/entorhinal labels * Improved accuracy of ?h.cortex.label * Improved prevention of surfaces from crossing into the contralateral hemisphere * bbregister now uses the FS mri_coreg program by to initialize BBR. FSL or SPM/matlab are no longer needed. mri_coreg is based on spm_coreg and gives very similar results as to when spmregister is run. * mri_fdr -- command line program to compute and apply the false discovery rate algorithm * Fixed the libcrypt issue with OpenSuse linux platforms * Parallelization: a new flag was introduced which enables two forms of compute parallelization that significantly reduces the runtime. As a point of reference, using a new-ish workstation (2015+), the recon-all -all runtime is just under 3 hours. When the {{{-parallel}}} flag is specified at the end of the recon-all command-line, it will enable 'fine-grained' parallelized code, making use of OpenMP, embedded in many of the binaries, namely affecting mri_em_register and mri_ca_register. By default, it instructs the binaries to use 4 processors (cores), meaning, 4 threads will run in parallel in some operations (manifested in 'top' by mri_ca_register, for example, showing 400% CPU utilization). This can be overridden by including the flag {{{-openmp }}} after -parallel, where is the number of processors you'd like to use (ex. 8 if you have an 8 core machine). Note that this parallelization was introduced in v5.3, but many new routines were OpenMP-parallelized in v6. The other form of parallelization, a 'coarse' form, enabled when the -parallel flag is specified, is such that during the stages where left and right hemispheric data is processed, each hemi binary is run separately (and in parallel, manifesting itself in 'top' as two instances of mris_sphere, for example). Note that a couple of the hemi stages (eg. mris_sphere) make use of a tiny amount of OpenMP code, which means that for brief periods, as many as 8 cores are utilized (2 binaries running code that each make use of 4 threads). In general, though, a 4 core machine can easily handle those periods. Be aware that if you enable this -parallel flag on instances of recon-all running through a job scheduler (like a cluster), it may not make your System Administrator happy if you do not pre-allocate a sufficient number of cores for your job, as you will be taking cycles from other cores that may be running jobs belonging to other cluster users. * Bug fix in mri_ca_register that prevented unfolding of lattice and caused many hours of unnecessary unfolding and also stopped warp from evolving. * Added code for Wash. U. HCP to settle white surface near maxima in second directional derivative if -first_wm_peak is specified (off by default). * Improved handling of enlarged ventricles when -bigventricles is specified in recon-all by performing an initial nonlinear registration of just the ventricular system using coupled region-growing in the atlas and input image, and also made the warp more flexible by default (setting l_smoothness = 0.5 instead of the default 2.0) * The fsaverage/surf files are now named ?h.pial instead of ?h.pial_avg. This goes for all files with this naming convention. === Known Issues === * The global morphometry statistics embedded in aseg.stats and other files have an error when the input volume has a voxel resolution different than 1mm^3. See MorphometryStats. See BrainVolStatsFixed for the patch for version 6. * On Ubuntu platforms, you may encounter the error "freeview.bin: error while loading shared libraries: libjpeg.so.62: cannot open shared object file: No such file or directory." Freeview will work fine if you install libjpeg62-dev and run: {{{ sudo apt-get install libjpeg62-dev }}} * In some instances, macOS machines may generate {{{lazy symbol binding}}} errors: {{{ dyld: lazy symbol binding failed: Symbol not found: ___emutls_get_address Referenced from: freesurfer/bin/../lib/gcc/lib/libgomp.1.dylib Expected in: /usr/lib/libSystem.B.dylib dyld: Symbol not found: ___emutls_get_address Referenced from: freesurfer/bin/../lib/gcc/lib/libgomp.1.dylib Expected in: /usr/lib/libSystem.B.dylib }}} To resolve the issue, source freesurfer and then type the following command to update your installation: {{{ sudo -E fs_update }}} If this doesn't fully solve the issue, then it probably has to do with SIP being enabled, which blocks FS access to libraries stored in /usr. You should try disabling SIP: http://osxdaily.com/2015/10/05/disable-rootless-system-integrity-protection-mac-os-x/ * If you have custom freesurfer scripts (that call freesurfer binaries) which you have written yourself, your script will need to include the following line somewhere near the top: {{{ source $FREESURFER_HOME/sources.sh (bash) source $FREESURFER_HOME/sources.csh (csh) }}} * Vertex replication in fsaverage. Vertex 40969 is the same as vertex 0 in both lh and rh for fsaverage. In general, this is not a problem but there are some specific applications where this can create an error (eg, when computing a derivative on the surface). This problem extends to any order 7 average subject created with make_average_subject or make_average_surface. This has been fixed in the development version and will be incorporated into future releases. If you need a new fsaverage, then post to the list. * make_average_subject will fail with an error like "mghRead(mri/norm.mgz, -1): could not open file". To fix this see the README file at ftp://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/6.0.0-patch * mri_convert will not apply dicom offset and scaling parameters from tags (0028,1052) (0028,1053). This is generally not a problem in MRI, but can be an issue in PET. This has been fixed in the development version and will be incorporated into future releases. * FreeSurfer on the GPU only supports CUDA v5. * FreeSurfer often does not perform well on scans with resolutions better than 1mm. A patch for version 6 can be found [[https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/6.0.0-patch/hcp|here]]. Follow the instructions in the README * Ventral Diencephalon (VentralDC) had been categorized as white matter in gtmseg (PETsurfer) and in the 2mm mask of subcortical GM in cvs_avg35_inMNI152 (mri.2mm/subcort.mask.mgz). In the next release, it will be considered gray matter.