This new minor release includes a few bug fixes, such as excluding MCRIBS from surface reconstruction without a precomputed segmentation and ensuring generated derivatives are not masked, as well as improvements to reporting.
- ENH: Add boilerplate, errors to report (#403)
- ENH: Add age to session report (#402)
- ENH: Improvements to age parsing (#395, #398)
- FIX: MCRIBS auto surface reconstruction logic (#399)
- FIX: Do not force masking of anatomicals when using
--derivatives
(#400)
- MAINT: Revisit warnings filter (#396)
- MAINT: Automate testing with tox (#404)
- MAINT: Port over parser arguments and tests from fmriprep (#401)
A patch release with a fix for the BOLD T2* workflow. The command line argument --me-t2s-fit-method
was added for finer control when processing multi-echo datasets.
- FIX: Add missing me-t2s-fit-method option (#385)
- DOC: Reformat abbreviations (#386)
This major release includes a substantial refactoring of the pipeline.
One key addition is the addition of the --level
flag, which can take the arguments minimal, resampling or full. The default is full, which should produce nearly the same results as previous versions. minimal will produce only the minimum necessary to deterministically generate the remaining derivatives. resampling will produce some additional derivatives, intended to simplify resampling with other tools.
The --derivatives
flag was altered to take arguments in the form name=/path/to/dir
.
For each directory provided, if a derivative is found - it will be used instead of computing it from scratch. If a derivative is not found, NiBabies will compute it and proceed as usual.
Taken together, these features can allow a dataset provider to run a minimal NiBabies run, targeting many output spaces, while a user can then run a --derivatives
run to generate additional derivatives in only the output spaces they need. Another use case is to provide an precomputed derivative to override the default NiBabies behavior, enabling easier workarounds for bugs or experimentation with alternatives.
Another new feature is a dynamic anatomical reference, which is set based on surface reconstruction method or through the --reference-anatomical
flag. Previously, T1w was the default output space. Now, the reference anatomical is determined based on the surface reconstruction method.
Additionally, minor adjustments have been made to MCRIBS surface reconstruction to address failure rates. This is still an on-going investigation, but preliminary results look promising.
This release resolves a number of issues with fieldmaps inducing distortions during correction. Phase difference and direct fieldmaps are now masked correctly, preventing the overestimation of distortions outside the brain. Additionally, we now implement Jacobian weighting during unwarping, which corrects for compression and expansion effects on signal intensity. To disable Jacobian weighting, add fmap-jacobian
to the --ignore
argument.
Finally, a new resampling method has been added, to better account for susceptibility distortion and motion in a single shot resampling to a volumetric target space. We anticipate extending this to surface targets in the future.
-
FIX: nest pathlib import in fix_multi_source_name (#365)
-
FIX: Avoid retrieving multiple templates from latest TF (#353)
-
FIX: Raise informative error if no t1w or t2w found (#347)
-
FIX: Easier pyenv usage (#342)
-
FIX: Catch nonexistent derivatives, clean up subworkflow logic (#336)
-
FIX: Use fsLR reg sphere for MCRIBS morphometrics resampling (#334)
-
FIX: T2star map MNI scaling (#320)
-
ENH: Alter outputs when MCRIBS reconstruction is used (#329)
-
ENH: Use nireports for Report generation + add reportlet per reconstruction (#328)
-
ENH: better repr for Derivatives class (#351)
-
RF: Move to fit/apply workflow (#360)
-
RF: Replace
resource_filename
withload_data
(#345) -
MAINT: Bump urllib3 from 2.0.3 to 2.0.7 (#319)
-
MAINT: Raise minimum to 3.10, bump actions (#337)
-
MAINT: Bump pillow from 9.5.0 to 10.0.1 (#317)
-
MAINT: Update to latest migas API (#326)
-
DOC: Use correct argument flag (#338)
-
DOC: Move to new theme, add outputs description (#383)
The next minor release of NiBabies, this release includes a number of new goodies, including:
M-CRIB-S (Adamson et al., https://www.nature.com/articles/s41598-020-61326-2), has shown to improve performance in participants under 9 months. If you would like to try this method, add the following to your command: --surface-recon-method mcribs
.
Note: Currently, a T2w image and pre-computed segmentation derivative must be provided to run mcribs.
NiBabies now automatically parses the BIDS directory for participant ages, first searching in the
participant's session.tsv
, and falling back to participants.tsv
. This simplifies batch submissions including multiple subjects & sessions. As a result, the --age-months
flag has been deprecated, and will be removed in a later release.
An option to determine and exclude high-variance voxels from being projected to the surface when creating CIFTI files. To enable this, add --project-goodvoxels
to your command.
Running NiBabies is now less restrictive, and will still process data missing either a T1w / T2w image. However, for best results, it is recommended to collect and include both for processing.
Previous, NiBabies expected input from the --derivatives
flag to be in T1w space, using the entity space-orig
. This has now been changed to support derivatives in either T1w or T2w space. For more information, please see https://nibabies.readthedocs.io/en/23.1.0/faqs.html#leveraging-precomputed-results
- CI: Purge codecov python package (#282)
- DKR: Upgrade Docker base, c3d (#275)
- DKR: Add M-CRIB-S to Docker container (#283)
- DKR: Update dependencies, split into multi-stage build
- ENH: Add option to exclude projecting high variance voxels to surface (#278)
- ENH: Resample morphometrics to fsLR CIFTI-2 files when outputting CIFTIs (#279)
- ENH: Add MCRIBReconAll as alternative surface reconstruction method (#283)
- ENH: Reorder anatomical processing, run ANTs DenoiseImage on anatomicals (#286)
- ENH: Extract participant ages from BIDS sources, deprecate
--age-months
(#287) - ENH: Dilate BOLD mask by 2 voxels to prevent over-aggressive masking degrading T2star map estimation (#296)
- ENH: Allow precomputed derivatives in T1w or T2w space (#305)
- ENH: Add separate workflow for single anatomical processing (#316)
- FIX: Improve free memory estimation (#284)
- FIX: Ensure age is extracted from sessions file (#291)
- FIX: Restore CIFTI medial wall masking, subcortical volume LAS reorientation (#298)
- FIX: Recify "goodvoxels" surface projection (#301)
- FIX: Connect derivatives mask to mcribs recon (#323)
- MAINT: Drop TemplateFlowSelect patches (#290)
New year, new NiBabies minor series! Some of the highlights of this release include:
- New run-wise BOLD reference generation, prioritizing single-band references if available, unless avoided with the
--ignore sbrefs
flag. - New output: Preprocessed T2w in T1w space.
A full list of changes can be found below.
- ENH: Runwise bold reference generation (#268)
- ENH: Add preprocessed T2w volume to outputs (#271)
- MAINT: Drop versioneer for hatch backend, fully embrace pyproject.toml (#265)
- MAINT: Rotate CircleCI secrets and setup up org-level context (#266)
- CI: Bump convenience images, limit datalad (#267)
- FIX: Remove legacy CIFTI variant support (#264)
The final NiBabies minor series of 2022! Some highlights of the new additions in this release series includes:
- surface morphometrics outputs, including cortical thickness
- T2star maps for multiecho data, projected to target output spaces
This series will be the last to support Python 3.7.
A full list of changes can be found below.
- FIX: Remove cortex masking during vol2surf sampling (#258)
- ENH: Improve migas telemetry (#257)
- CI: GitHub actions update (#256)
- ENH: Add morphometric outputs (#255)
- ENH: Output T2star maps for multiecho data (#252)
- FIX: Use the binarized output from the brain extraction (#246)
- DOC: Add long description including background/significance (#243)
- CI: Fix docker credential error (#244)
- DOC: Advertise nipreps community pages, add section on contributions (#242)
This patch release includes a vital fix for susceptibility distortion correction on multi-echo data.
- FIX: Field name for multi-echo fieldmap correction (#233)
This patch release includes a fix to FreeSurfer version detection, which was causing recon-all
to use outdated flags.
A bugfix release that includes missing files needed to run infant_recon_all
.
- FIX: Add missing shared object for
infant_recon_all
(#231) - RF:
migas
reporting (#230)
A new minor release! The 22.1.x series of NiBabies includes:
- Improved alignment between FreeSurfer outputs and processed anatomical.
- Decreased memory usage while running across multiple processes (default).
- Fix to multi-echo processing in cases where an optimally combined file of all echoes was missing.
- Fix to the subcortical CIFTI to be in LAS orientation.
- FIX: Correct fsnative <-> anatomical transforms (#223)
- FIX: Vastly improve multi-echo handling (#220)
- ENH: Add migas telemetry to nibabies (#226)
- ENH: Add interface for reorienting images (#229)
- DOCKER: Bump Python to 3.9 (#221)
- RF/ENH: Rework workflow generation (#219)
A bug-fix release in the 22.0.x series.
This release includes a fix to a problem where --cifti-output
was not
producing any outputs.
- CI: Force all git-annex dependencies to be installed (#217)
- CI: Simplify config with anchors (#209)
- FIX: Remedy missing CIFTI outputs (#212)
- MAINT: Set maximum scipy for Python 3.7.x (#216)
A bug-fix release in the 22.0.x series.
This release includes a fix for when using UNCInfant
as an output space,
as well as a few improvements to susceptibility distortion correction (SDC).
These include a new flag (--topup-max-vols
) for controlling the number of
volumes used by TOPUP, and support for SDC in the case where single phase-encoding
fieldmap is used to correct opposite phase-encoding BOLD/EPI runs.
This release includes a new version of PyBIDS, which now preserves any
zero-padding within the run
entity. As a result, NiBabies output naming
may slightly differ from previous versions.
- CI: Migrate to token auth when uploading to pypi (#203)
- ENH: Improve fieldmap support (#205)
- MAINT: Bump niworkflows (#208)
- STY: Bump style dependencies, run isort on repo (#206)
A new NiBabies
minor series!
This release includes a number of new features, as well as various bug fixes. Some of the biggest changes include:
- Ability to pass in anatomical derivatives. Users can now leverage a precomputed brain mask and/or discrete anatomical segmentations.
- A new flag
--me-output-echoes
to output individual corrected echo time series. This is useful when doing additional multi-echo processing.
Thank you for using NiBabies! If you encounter any issues with this release, please let us know by posting an issue on our GitHub page!
A full list of changes can be found below.
- CI: Add workflow smoke tests (#100)
- DOC: Add FAQs page (#164)
- DOCKER: Upgrade to FSL6, use niprep miniconda base layer (#191)
- ENH: Add major/minor version prefix to base workflow name (#202)
- ENH: Add
--me-output-echos
CLI flag (#174) - ENH: Precomputed derivatives (#173)
- ENH: Validate files passed with
--derivatives
(#182) - FIX: Clean up generated boilerplate (#200)
- FIX: Various Configuration module touch-ups (#197)
- FIX: Clean up default output space handling (#196)
- FIX: Pandoc citeproc API incompatibility (#195)
- FIX: Check if segmentation directory exists (#165)
- FIX: Update report spec to reflect
infant_recon_all
(#167) - FIX: ICA Aroma imports (#170)
- FIX: Relabel sub-structures before discarding (#186)
- FIX: Use precomputed aseg within
infant_recon_all
(#184) - FIX: Remove excess arguments on wrapper tests (#181)
- MAINT: Update versioneer, allow static versioning (#190)
- MAINT: Ensure version is written to version file (#189)
- MAINT: Add missing toml dependency
- MAINT: Add pre-commit checks (#178)
- MAINT: Add RTD config (#173)
- MAINT: Freeze
black
version (#185) - RF: Wrapper usage logic (#183)
- STY/TEST: Set global style and doctest options (#162)
A patch release in the 21.0.x series. This release removes the 24 month age cap for infant recon all processing, as well as includes various small maintenance fixes.
- DOC: Use dynamic versioning for examples (#151)
- ENH: Remove infant recon all age cap (#154)
- FIX: Generate boilerplate (#157)
- FIX: Avoid requiring service when checking wrapper version (#159)
- MAINT: Fix dirty version on release (#144)
- MAINT: Only alter pybids config in legacy versions (#152)
- MAINT: Prefetch neonate MNIInfant templates (#159)
- MAINT: Update git-annex version (#159)
- RF: Initialize BIDSLayout with dedicated indexer (#146)
A patch release in the 21.0.x series.
This patch release is for all Docker/Singularity users: infant_recon_all
did not have all the available templates, which would cause failures for certain ages.
Upgrading to this release will ensure you have all the necessary templates.
- DOCKER: Add missing
infant_recon_all
templates (130dcf3)
The first major release series of 2021.
This release includes enhancements, such as:
- Fine-grain subcortical alignment during CIFTI generation
- Improved functional registration to template space
- Greatly minimized container environment
Additionally, a plethora of bug-fixes are included, and documentation has been improved.
As with all minor version increments, working directories from previous versions should not be reused.
If you encounter any issues with this release, please let us know by posting an issue on our GitHub page!
- DOC: Set up external readthedocs documentation (#119) (#126) (#128)
- DOCKER: Reduce container image size (#105) (#133)
- DOCKER: Strip ABI tag from libQt5Core.so.5 (#109)
- DOCKER: Modernize Dockerfile (#85)
- ENH: Port slice timing correction enhancements from fMRIPrep (#137)
- ENH: Change default
--output-layout
to bids (#130) - ENH: Subcortical alignment workflow (#72)
- ENH: Framewise displacement head radius flag (#104)
- ENH: Incorporate subcortical CIFTI alignment to functional processing (#102)
- ENH: Do not run infant_recon_all if already completed (#101)
- FIX: Handle sessions when grouping BOLDs (#139)
- FIX: Ensure MNIInfant is added if no
--output-spaces
are used (#136) - FIX: Ensure
nibabies-wrapper
patches are correctly bound (#113) - FIX: BOLD to template normalization (#99)
- FIX: SDC fieldwarp application (#98)
- FIX: Avoid running BBReg under certain conditions (#95)
- FIX: Standard output spaces (#92)
- FIX: Small Docker environment fixes (#86)
- FIX: Feed NiTransforms with LTAs of type RAS2RAS (#84)
- MAINT: Rename default
infant_recon_all
output directory (#129) - MAINT: Bump SDCFlows to latest bugfix version (d799fee)
- MAINT: Attempt to pull most recent dev version (#94)
- MAINT: Initial CircleCI workflow (#93)
- STY:
black
nibabies module (#118)
- FIX: BOLD file duplication error
- FIX: BIDS validation error
- ENH: Additional wrapper script (
nibabies-wrapper
) to facilitate running through Docker/Singularity - DOC: Updates anatomical processing figure, adds functional processing figure
- DOC: Fixes typo in README usage
- Implements susceptibility distortion correction for BOLDs
- Improved documentation
- Adds estimated fieldmap report
- Removed unused commandline arguments
- Adds functional processing to the workflow
- minus SDC and fine-grain subcortical CIFTI generation
- Revision of T1w/T2w templates when multiple runs are detected
- Modularization of T1w-T2w coregistration, with increased robustness
- Removed of UNCInfant for a default output space
- Improved robustness of structural coregistration
- Removed fMRIPrep dependency
- Bumped Infant FreeSurfer version to latest developmental release
- Added figure overviewing structural workflow
- Initial implementation of anatomical pipeline