Skip to content

Releases: nipreps/nibabies

24.1.0

03 Oct 13:47
Compare
Choose a tag to compare

Release Notes

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.

Changelog

Enhancements

  • ENH: Add boilerplate, errors to report (#403)
  • ENH: Add age to session report (#402)
  • ENH: Improvements to age parsing (#395, #398)

Fixes

  • FIX: MCRIBS auto surface reconstruction logic (#399)
  • FIX: Do not force masking of anatomicals when using --derivatives (#400)

Internals / Maintenance

  • MAINT: Revisit warnings filter (#396)
  • MAINT: Automate testing with tox (#404)
  • MAINT: Port over parser arguments and tests from fmriprep (#401)

24.0.1

31 Aug 20:46
Compare
Choose a tag to compare

Release Notes

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.

Changelog

  • FIX: Add missing me-t2s-fit-method option (#385)
  • DOC: Reformat abbreviations (#386)

24.0.0

30 Aug 13:13
Compare
Choose a tag to compare

Release Notes

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.

Changelog

Fixes

  • 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)

Enhancements

  • 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)

Refactors

  • RF: Move to fit/apply workflow (#360)
  • RF: Replace resource_filename with load_data (#345)

Maintenance

  • 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)

Documentation

  • DOC: Use correct argument flag (#338)
  • DOC: Move to new theme, add outputs description (#383)

24.0.0 Second Release Candidate

27 Aug 18:53
Compare
Choose a tag to compare
Pre-release

Release Notes

The second RC of the 24.0.x series. This releases fixes a few issues, adds support for parsing age from scans.tsv files, and will convert years and weeks units into months.

Changelog

  • ENH: Require units when age parsing, ingest scans.tsv (#376)
  • FIX: Ensure 2mm template is added when running CIFTI (#381)
  • CI: Fix smoke tests (#379)
  • FIX: Do not require mniinfant xfm if no cifti (#377)

24.0.0 Release Candidate 0

01 Aug 14:12
Compare
Choose a tag to compare
Pre-release

Release Notes

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.

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.

Changes

  • RF: Move to fit/apply workflow (#360)
  • FIX: nest pathlib import in fix_multi_source_name (#365)
  • FIX: Avoid retrieving multiple templates from latest TF (#353)
  • ENH: better repr for Derivatives class (#351)
  • FIX: Raise informative error if no t1w or t2w found (#347)
  • Replace resource_filename with load_data (#345)
  • FIX: Easier pyenv usage (#342)
  • Build(deps): Bump urllib3 from 2.0.3 to 2.0.7 (#319)
  • Build(deps): Bump pillow from 9.5.0 to 10.0.1 (#317)
  • DOC: Use correct argument flag (#338)
  • MAINT: Raise minimum to 3.10, bump actions (#337)
  • FIX: Catch nonexistent derivatives, clean up subworkflow logic (#336)
  • Use fsLR reg sphere for MCRIBS morphometrics resampling (#334)
  • FIX: Multiple T2ws, coerce reference to string (#333)

24.0.0 - alpha 1

20 Dec 23:18
Compare
Choose a tag to compare
24.0.0 - alpha 1 Pre-release
Pre-release

This preliminary release alters some outputs when using MCRIBS surface reconstruction, as well as updates reports.

  • MAINT: Update to latest migas API (#326)
  • 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)

23.1.0

22 Nov 20:54
3dabd57
Compare
Choose a tag to compare

Release Notes

The next minor release of NiBabies, this release includes a number of new goodies, including:

New Surface Reconstruction

M-CRIB-S (Adamson et al.), 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.

*Currently, a T2w image and pre-computed segmentation derivative must be provided to run mcribs.

Improved batch processing

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.

Goodvoxels projection

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.

Single anatomical processing

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.

Anat-specific derivatives inputs

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

Changelog

  • 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 outputing CIFTIs (#279)
  • ENH: Add MCRIBReconAll as alternative surface reconstruction method (#283)
  • ENH: Reorder anatomical processsing, 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)

23.1.0 release candidate 1

10 Nov 16:09
Compare
Choose a tag to compare
Pre-release

The next minor release of NiBabies, this release includes a number of new goodies, including:

New surface reconstruction option

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.

Improved batch processing

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.

Goodvoxels projection

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.

Single anatomical processing

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.

Full Changelog

  • 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 outputing CIFTIs (#279)
  • ENH: Add MCRIBReconAll as alternative surface reconstruction method (#283)
  • ENH: Reorder anatomical processsing, 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)
  • MAINT: Drop TemplateFlowSelect patches (#290)

23.1.0 release candidate 0

13 Jul 19:31
Compare
Choose a tag to compare
Pre-release

Release Notes

A release candidate of the next minor release of NiBabies, this release includes a number of new goodies, including:

New surface reconstruction option

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 pre-computed segmentation derivative must be provided to run mcribs.

Improved batch processing

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.

Augmented surface projection

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.

  • 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 outputing CIFTIs (#279)
  • ENH: Add MCRIBReconAll as alternative surface reconstruction method (#283)
  • ENH: Reorder anatomical processsing, 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)
  • 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)
  • MAINT: Drop TemplateFlowSelect patches (#290)

23.0.0

23 Jan 19:59
f8ca1ae
Compare
Choose a tag to compare

Release Notes

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.

Changes

  • 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)