A patch release with bugfixes and enhancements.
- FIX: Pin latest NiReports release (24.0.2) addressing
fMRIPlot
issues by @oesteban (#1342) - FIX: Edge artifacts in first and last slices due to interpolation by @oesteban (#1338)
- FIX: Normalize bids-filters' modality keys to be lowercase by @oesteban (#1332)
- ENH: Add license NOTICE to start banner by @oesteban (#1343)
- ENH: Enable writing crashfiles in compressed-pickle format by @oesteban (#1339)
- ENH: Use
orjson
to serialize JSON, addressing Numpy serialization issues by @oesteban (#1337) - ENH: Handle WebAPI timeouts more gently by @oesteban (#1336)
A patch release with a large number of bugfixes (mostly focusing on memory issues), maintenance activities, and metadata crawling before Nipype kicks in as a major optimization.
With thanks to @jhlegarreta for his first contribution in #1293 <https://github.com/nipreps/mriqc/pull/1293>__.
Author list for papers based on MRIQC 24.0 series
As described in the Contributor Guidelines, anyone listed as a developer or contributor may write and submit manuscripts about MRIQC. To do so, please move the author(s) name(s) to the front of the following list:
Christopher J. Markiewicz 1; Zvi Baratz 2; Eilidh MacNicol 3; Céline Provins 4; Teresa Gomez 5; Dylan Nielson 6; Ross W. Blair 1; Jan Varada 7; Dimitri Papadopoulos Orfanos 8; William Triplett 9; Mathias Goncalves 1; Nikita Beliy 10; John A. Lee 11; Yibei Chen 12; Ursula A. Tooley 13; Patrick Sadil 14; Yaroslav O. Halchenko 15; James D. Kent 16; Taylor Salo 17; Bennet Fauber 18; Thomas Nichols 19; Pablo Velasco 20; Michael Krause 21; Jon Haitz Legarreta Gorroño 22; Satrajit S. Ghosh 23; Joke Durnez 1; Johannes Achtzehn 24; Elodie Savary 4; Adam Huffman 25; Rafael Garcia-Dias 26; Michael G. Clark 27; Michael Dayan 28; McKenzie P. Hagen 29; Daniel Birman 1; Benjamin Kay 30; Asier Erramuzpe 31; Adam C. Raikes 32; Adam G. Thomas 33; Russell A. Poldrack 1; Ariel Rokem 5; Oscar Esteban 4.
Affiliations:
- Department of Psychology, Stanford University, CA, USA
- Quantivly Inc., Somerville, MA, USA
- Department of Neuroimaging, Institute of Psychiatry, Psychology and Neuroscience, King's College London, London, UK
- Department of Radiology, Lausanne University Hospital and University of Lausanne, Switzerland
- The University of Washington eScience Institute, WA, USA
- Section on Clinical and Computational Psychiatry, National Institute of Mental Health, Bethesda, MD, USA
- Functional MRI Facility, National Institute of Mental Health, Bethesda, MD, USA
- NeuroSpin, CEA, Université Paris-Saclay, NeuroSpin, Gif-sur-Yvette, France
- University of Florida: Gainesville, Florida, US
- CRC ULiege, Liege, Belgium
- Quansight, Dublin, Ireland
- McGovern Institute for Brain Research, Massachusetts Institute of Technology, Cambridge, USA
- Department of Neuroscience, University of Pennsylvania, PA, USA
- Johns Hopkins Bloomberg School of Public Health, MD, USA
- Psychological and Brain Sciences Department, Dartmouth College, NH, USA
- Department of Psychology, University of Texas at Austin, TX, USA
- Department of Psychology, Florida International University, FL, USA
- University of Michigan, Ann Arbor, USA
- Oxford Big Data Institute, University of Oxford, Oxford, GB
- Center for Brain Imaging, New York University, NY, USA
- Max Planck Institute for Human Development, Berlin, Germany
- Brigham and Women's Hospital, Mass General Brigham, Harvard Medical School, MA, USA
- McGovern Institute for Brain Research, MIT, MA, USA; and Department of Otolaryngology, Harvard Medical School, MA, USA
- Charité Berlin, Berlin, Germany
- Department of Physics, Imperial College London, London, UK
- Institute of Psychiatry, Psychology & Neuroscience, King's College London, London, UK
- National Institutes of Health, USA
- International Committee of the Red Cross - ICRC, Geneva, Switzerland
- Psychology Department, University of Washington, Seattle, WA, USA
- Washington University School of Medicine, St.Louis, MO, USA
- Computational Neuroimaging Lab, BioCruces Health Research Institute
- Center for Innovation in Brain Science, University of Arizona, Tucson, AZ, USA
- Data Science and Sharing Team, National Institute of Mental Health, Bethesda, MD, USA
- FIX: Multiecho fMRI crashing with 'unhashable type' errors by @oesteban in nipreps#1295
- FIX: Set
n_procs
instead ofnum_threads
on nodeapply_hmc
by @oesteban in nipreps#1309 - FIX: Address memory issues by limiting
BigPlot
's parallelization. by @oesteban in nipreps#1320 - FIX: Address memory issues in the DWI pipeline by @oesteban in nipreps#1323
- FIX: Limit IQMs' node number of processes and, therefore, memory by @oesteban in nipreps#1325
- FIX: Resolve numeric overflow in drift estimation node by @oesteban in nipreps#1324
- FIX: Revise bugfix #1324 by @oesteban in nipreps#1327
- FIX: Remove unreachable code within DWI pipeline by @oesteban in nipreps#1328
- ENH: Allow moving the cache folder with an environment variable by @oesteban in nipreps#1285
- ENH: Flatten multi-echo lists in circumstances that they fail by @oesteban in nipreps#1286
- ENH: Added type hints to config module by @zvi-quantivly in nipreps#1288
- ENH: Add test for the CLI parser by @jhlegarreta in nipreps#1293
- ENH: Add CLI entry point test by @jhlegarreta in nipreps#1294
- ENH: Add a development Dockerfile for testing local changes to the repo. by @rwblair in nipreps#1299
- ENH: Crawl dataset's metadata only once and before Nipype's workflow by @oesteban in nipreps#1317
- ENH(dMRI): Deal gracefully with small CC masks by @oesteban in nipreps#1311
- ENH: Leverage new spun-off apply interface by @oesteban in nipreps#1313
- MAINT: Removed personal information from maintainers and updated in contributors by @zvi-quantivly in nipreps#1289
- MAINT: Add JHLegarreta to the contributors list by @jhlegarreta in nipreps#1301
- MAINT: Flexibilize pandas pinned version by @oesteban in nipreps#1310
- MAINT: Remove Pandas's
FutureWarning
by @oesteban in nipreps#1326 - DOC: Add description of
summary_fg
to the documentation by @celprov in nipreps#1306 - STY: Apply ruff/flake8-implicit-str-concat rule ISC001 by @DimitriPapadopoulos in nipreps#1296
- STY: Format Jupyter notebooks by @oesteban in nipreps#1321
Full Changelog: https://github.com/nipreps/mriqc/compare/24.0.0...24.0.1
Initial major release of 2024, featuring the extraction of IQMs from DWI data for the first time in MRIQC's timeline.
- FIX: Bug in toml loader crashing with mixed arrays in config (#1281)
- FIX: Remove DataLad as a node (#1278)
- FIX: Calculation of trivial shells (#1276)
- FIX: Finalized naming and connection of DWI IQMs (#1272)
- FIX: Enable group reports for DWI (#1266)
- FIX: Address issues that had broken the group reports (#1262)
- FIX: Select filters if modalities are selected (#1261)
- FIX: Make sure new logs and config file output are compatible with parallel processes (#1259)
- FIX: Skip short BOLD runs that break outlier detection (#1120)
- FIX: Revise config save/load and update inputs after dropping (#1245)
- FIX: Drift should not be estimated when less than three low-b volumes present (#1242, #1243)
- FIX: Handle
NUMEXPR_MAX_THREADS
likeOMP_NUM_THREADS
(#1241) - FIX: Exclude DWI runs with insufficient orientations or missing bvals (#1240)
- FIX: Avert costly
BIDSLayout.__repr__
calls when saving config (#1239) - FIX: Duplicate node in anatomical workflow (#1234)
- FIX: Typo in
sorted(..., reverse=True)
call (#1211) - ENH: Fail for non-formatted code (#1274)
- ENH: Annotate nodes with
n_procs
to allow safe parallelization (#1277) - ENH: Mechanism to protect config's fields and write out config (#1258)
- ENH: Improve documentation and logging of SynthStrip's model (#1254)
- ENH: Improve logging of runtime (#1253)
- ENH: Expose a command-line option for minimum DWI volumes (#1249)
- ENH: Improve error handling and logging (#1238)
- ENH: Add b-vector angular deviations as IQMs (#1233)
- ENH: Move from DTI to DKI with multishell data (#1230)
- ENH: Noise floor estimated with PCA (
dwidenoise
) as an IQM (#1229) - ENH: Integrate PIESNO noise mask and sigma estimation (#1227)
- ENH: Use MAD for robust estimation of sigma in the CC mask (#1228)
- ENH: Add new IQM for DWI → NDC (#1226)
- ENH: Add FA-based IQMs (nans percentage and degenerate percentage) (#1225)
- ENH: Add computation of spiking voxels mask and percent IQMs (#1224)
- ENH: Adds diffusion-related IQMs. (#1131)
- ENH: Revise summary stats extraction and include controlled roundings (#1219)
- DOC: Add changelog to documentation (#1217)
- MAINT: Added ruff to development dependencies (#1271)
- MAINT: Removed pre-commit from development dependencies (#1269)
- MAINT: Clean up more
FutureWarning
issued by Pandas (#1257) - MAINT: Prevent pandas-originating deprecation warning (#1251)
- MAINT: Move GitHub Actions and config files from flake8 → ruff (#1212)
- MAINT: Update contributor affiliation in
CONTRIBUTORS.md
(#1214) - STY: Reformat diffusion workflows module (#1279)
- STY: Applied ruff formatting (#1273)
A long-overdue hotfix release addressing many bugs generated during the development of the new dMRI workflows, and some relating to improvements of the handling of multi-echo fMRI. The release also include one year-worth of maintenance actions and a general code cleanup with Ruff.
- FIX: Missing connection to head-motion estimation node in DWI workflow by @oesteban in #1207
- FIX: Revise porting to
Loader
by @oesteban in #1201 - FIX: Revise the last two sloppy merges by @oesteban in #1200
- FIX: Move from
pkg_resources
toniworkflows.data.Loader
by @oesteban in #1199 - FIX: DIPY not listed as a dependency by @oesteban in #1197
- FIX: Include
dwidenoise
within Docker image by @oesteban in #1196 - FIX: Copy name attribute of
dataset_description.json
from input dataset by @celprov in #1187 - FIX: Remove FD as an
iterfield
inMapNode
causing crash with ME-BOLD by @celprov in #1179 - FIX: Incorrect plugin metadata passed to Report Assembler by @oesteban in #1188
- FIX: Temporary fix of the missing
"dwi"
key by @celprov in #1174 - FIX: Rearrange multi-echo report by @celprov in #1164
- FIX: Typo in
inputnode
field in dMRI masking workflow by @celprov in #1165 - FIX: Bug in group level workflow by @celprov in #1148
- FIX: Bugs in DWI workflow by @celprov in #1147
- FIX: Use simpler DWI reference workflow by @yibeichan in #1145
- FIX: Drop deprecated Networkx's API by @celprov in #1137
- FIX: Replace
np.float
bynp.float64
by @celprov in #1140 - ENH: Improved logging and optimize early checkpoint on subjects by @oesteban in #1198
- ENH: Store confound timeseries data by @psadil in #1166
- ENH: Large overhaul of the functional workflow w/focus on ME-EPI by @oesteban in #1155
- ENH: Implement BIDS filters file and drop legacy BIDS querying by @oesteban in #1154
- ENH: Swap background and zoomed-in visualizations in anatomical reports by @oesteban in #1151
- MAINT: Test on Python 3.12 by @DimitriPapadopoulos in #1156
- MAINT: Disable flaky T1w test on CircleCI by @oesteban in #1202
- MAINT: Overhaul of the
Dockerfile
by @oesteban in #1195 - MAINT: Revise package's extra dependencies by @oesteban in #1194
- MAINT: Clean up some
setuptools_scm
remnants by @oesteban in #1193 - MAINT: Load
FMRISummary
from NiReports rather than NiWorkflows by @celprov in #1167 - MAINT: Update to latest migas' API by @mgxd in #1160
- MAINT: Update bold to large resource class in
config.yml
by @oesteban in #1158 - MAINT: Refresh cached intermediate results by @oesteban in #1143
- MAINT: Simplify GitHub actions checks and update action versions by @effigies in #1141
- MAINT: Python 3.11 is supported by @DimitriPapadopoulos in #1123
- MAINT: Apply suggestions from pyupgrade by @DimitriPapadopoulos in #1124
- DOC: Update Sphinx pinned version to 5 by @oesteban in #1192
- DOC: http:// → https:// by @DimitriPapadopoulos in #1126
- DOC: Add info on the FreeSurfer requirement for bare install to address #1034 by @neurorepro in #1130
- STY: Add Ruff config and fix all warnings and errors by @oesteban in #1203
- STY: Remove extraneous parentheses by @DimitriPapadopoulos in #1186
- STY: Apply a few refurb suggestions by @DimitriPapadopoulos in #1162
- STY: Fix typo found by codespell by @DimitriPapadopoulos in #1161
A new minor release featuring the new individual reports built with the new NiReports VRS (visual reports system). This means MRIQC now uses the same package fMRIPrep uses for generating its reports. In addition to that, this new release also features Beta support for diffusion MRI (dMRI).
- FIX: Better handling of BIDS cached indexation (#1121)
- FIX: Make doctest of
NumberOfShells
more reliable (#1122) - FIX: Add protection for NaNs and INFs when calculating QI2 (#1112)
- FIX:
PlotMosaic
expects lists, not tuples (#1111) - FIX: BIDS database directory handling (#1110)
- FIX: Remove unused dipy import in the functional interfaces (#1109)
- FIX: Refine the head mask after removal of FSL BET (#1107)
- FIX: Inform SynthStrip about the desired intraop threads (#1101)
- FIX: Test broken by #1098 (#1100)
- FIX: Separate report bootstrap files (anat vs. func) (#1098)
- FIX: Propagate logging level to subprocesses (#1030)
- ENH: Incorporate new NiReports' DWI heatmaps (#1119)
- ENH: More compact of shell-wise summary statistic maps (avg/std) (#1116)
- ENH: Add a basic DTI fitting into the diffusion workflow (#1115)
- ENH: MRIQC for DWI (#1113)
- ENH: Culminate dropping FSL as a dependency (#1108)
- ENH: Replace FSL FAST with ANTs Atropos for brain tissue segmentation (#1099)
- ENH: Drop FSL MELODIC (without alternative) (#1106)
- ENH: Drop FSL BET to estimate the "outskin" (head) mask (#1105)
- ENH: Drop utilization of "head" mask from template (#1104)
- ENH: Move templates' probsegs into individual at normalization (#1103)
- ENH: Improving the resource monitor -- infer PID from process name (#1049) (#1049)
- ENH: Refactor reports system to use NiReports and the general VRS (#1085)
- MAINT: Move codespell configuration to
pyproject.toml
(#1097) - MAINT: Update deprecated
nibabel.spatialimage.get_data()
calls (#1096)
Author list for papers based on MRIQC 23.0 series
As described in the Contributor Guidelines, anyone listed as developer or contributor may write and submit manuscripts about MRIQC. To do so, please move the author(s) name(s) to the front of the following list:
Zvi Baratz 1; Christopher J. Markiewicz 2; Eilidh MacNicol 3; Dylan Nielson 4; Jan Varada 5; Ross W. Blair 2; Céline Provins 6; William Triplett 7; Mathias Goncalves 2; Nikita Beliy 8; John A. Lee 9; Ursula A. Tooley 10; James D. Kent 11; Yaroslav O. Halchenko 12; Bennet Fauber 13; Taylor Salo 14; Michael Krause 15; Pablo Velasco 16; Thomas Nichols 17; Adam Huffman 18; Elodie Savary 6; Johannes Achtzehn 19; Joke Durnez 2; Satrajit S. Ghosh 20; Asier Erramuzpe 21; Benjamin Kay 22; Daniel Birman 2; McKenzie P. Hagen 23; Michael G. Clark 24; Patrick Sadil 25; Rafael Garcia-Dias 26; Adam G. Thomas 27; Russell A. Poldrack 2; Ariel Rokem 28; Oscar Esteban 6.
Affiliations:
- Sagol School of Neuroscience, Tel Aviv University, Tel Aviv, Israel
- Department of Psychology, Stanford University, CA, USA
- Department of Neuroimaging, Institute of Psychiatry, Psychology and Neuroscience, King's College London, London, UK
- Section on Clinical and Computational Psychiatry, National Institute of Mental Health, Bethesda, MD, USA
- Functional MRI Facility, National Institute of Mental Health, Bethesda, MD, USA
- Department of Radiology, Lausanne University Hospital and University of Lausanne, Switzerland
- University of Florida: Gainesville, Florida, US
- CRC ULiege, Liege, Belgium
- Quansight, Dublin, Ireland
- Department of Neuroscience, University of Pennsylvania, PA, USA
- Department of Psychology, University of Texas at Austin, TX, USA
- Psychological and Brain Sciences Department, Dartmouth College, NH, USA
- University of Michigan, Ann Arbor, USA
- Department of Psychology, Florida International University, FL, USA
- Max Planck Institute for Human Development, Berlin, Germany
- Center for Brain Imaging, New York University, NY, USA
- Oxford Big Data Institute, University of Oxford, Oxford, GB
- Department of Physics, Imperial College London, London, UK
- Charité Berlin, Berlin, Germany
- McGovern Institute for Brain Research, MIT, MA, USA; and Department of Otolaryngology, Harvard Medical School, MA, USA
- Computational Neuroimaging Lab, BioCruces Health Research Institute
- Washington University School of Medicine, St.Louis, MO, USA
- Psychology Department, University of Washington, Seattle, WA, USA
- National Institutes of Health, USA
- Johns Hopkins Bloomberg School of Public Health, MD, USA
- Institute of Psychiatry, Psychology & Neuroscience, King's College London, London, UK
- Data Science and Sharing Team, National Institute of Mental Health, Bethesda, MD, USA
- The University of Washington eScience Institute, WA, USA
A hotfix release resolving a reggression introduced with the new optimized indexing.
- FIX: Underspecified regex sets
BIDSLayout
to ignore data with sessions (#1094) - FIX: Input data has incompatible dimensionality (plotting ICA) (#1082)
- ENH: Optimize metadata gathering reusing
BIDSLayout
db (#1084) - DOC : update anatomical example report in documentation (#1088)
- MAINT: Drop old
mriqc_plot
script (#1091)
The new 23.0.x series include several prominent changes. Visualization has been migrated from MRIQC and niworkflows over to the new NiReports project. This series include a major bugfix with the optimization of the indexing of the input BIDS folder, which was taking large times with sizeable datasets. Telemetry has also been incorporated with migas. These new series also involve maintenance housekeeping, and includes some relevant bugfixes.
- @arokem made their first contribution in #1040
- @yarikoptic made their first contribution in #1057
- @esavary made their first contribution in #1047
Full Changelog: https://github.com/nipreps/mriqc/compare/22.0.6...23.0.0
- FIX: Send metadata extraction to workers (functional workflow) (#1081)
- FIX: Plot coronal as main plain for mosaic of rodent images (#1027)
- FIX: Address non-empty take from empty axes (anatomical IQMs) (#1077)
- FIX: Uniformize building workflow message (anat vs. func) (#1072)
- FIX: Move telemetry atexit into entrypoint func (#1067)
- FIX: Preempt PyBIDS to spend time indexing non-BIDS folders (#1050)
- FIX: Update T1w metrics (#1063)
- FIX: Resource monitor would not ever start tracking (#1051)
- ENH: Add DataLad getter to inputs of functional workflows (#1071)
- ENH: Add migas telemetry (#1036)
- ENH: Add codespell automation: config, action, and typos fixed (#1057)
- MAINT: Update NiReports calls to upcoming interfaces API (#1078)
- MAINT: Pacify codespell (#1080)
- MAINT: Conclude porting of reportlets into NiReports (#1068)
- MAINT: Migrate to hatchling (#1070)
- MAINT: Pin PyBIDS 0.15.6 (culminating #1050) (#1069)
- MAINT: Update niworkflows pin to support newer ANTs releases (#1047)
- MAINT: Fix minor aspects of WebAPI deployment on CircleCI (#1064)
- MAINT: Update CircleCI executor and use built-in docker-compose (#1061)
- MAINT: Rotate CircleCI secrets and setup up org-level context (#1046)
- DOC: Update documentation with the new carpet plot (#1045)
- DOC: Complete the documentation of
summary_stats()
(#1044) - DOC: Fixes a couple of broken links to the nipype documentation (#1040)
Author list for papers based on MRIQC 23.0 series
As described in the Contributor Guidelines, anyone listed as developer or contributor may write and submit manuscripts about MRIQC. To do so, please move the author(s) name(s) to the front of the following list:
Zvi Baratz 1; Christopher J. Markiewicz 2; Eilidh MacNicol 3; Dylan Nielson 4; Jan Varada 5; Ross W. Blair 2; Céline Provins 6; William Triplett 7; Mathias Goncalves 2; Nikita Beliy 8; John A. Lee 9; Ursula A. Tooley 10; James D. Kent 11; Yaroslav O. Halchenko 12; Bennet Fauber 13; Taylor Salo 14; Michael Krause 15; Pablo Velasco 16; Thomas Nichols 17; Adam Huffman 18; Johannes Achtzehn 19; Joke Durnez 2; Satrajit S. Ghosh 20; Asier Erramuzpe 21; Benjamin Kay 22; Daniel Birman 2; Elodie Savary 23; McKenzie P. Hagen 24; Michael G. Clark 25; Patrick Sadil 26; Rafael Garcia-Dias 27; Adam G. Thomas 28; Russell A. Poldrack 2; Ariel Rokem 29; Oscar Esteban 30.
Affiliations:
- Sagol School of Neuroscience, Tel Aviv University, Tel Aviv, Israel
- Department of Psychology, Stanford University, CA, USA
- Department of Neuroimaging, Institute of Psychiatry, Psychology and Neuroscience, King's College London, London, UK
- Section on Clinical and Computational Psychiatry, National Institute of Mental Health, Bethesda, MD, USA
- Functional MRI Facility, National Institute of Mental Health, Bethesda, MD, USA
- Lausanne University Hospital and University of Lausanne, Lausanne, Switzerland
- University of Florida: Gainesville, Florida, US
- CRC ULiege, Liege, Belgium
- Quansight, Dublin, Ireland
- Department of Neuroscience, University of Pennsylvania, PA, USA
- Department of Psychology, University of Texas at Austin, TX, USA
- Psychological and Brain Sciences Department, Dartmouth College, NH, USA
- University of Michigan, Ann Arbor, USA
- Department of Psychology, Florida International University, FL, USA
- Max Planck Institute for Human Development, Berlin, Germany
- Center for Brain Imaging, New York University, NY, USA
- Oxford Big Data Institute, University of Oxford, Oxford, GB
- Department of Physics, Imperial College London, London, UK
- Charité Berlin, Berlin, Germany
- McGovern Institute for Brain Research, MIT, MA, USA; and Department of Otolaryngology, Harvard Medical School, MA, USA
- Computational Neuroimaging Lab, BioCruces Health Research Institute
- Washington University School of Medicine, St.Louis, MO, USA
- Department of Radiology, Lausanne University Hospital and University of Lausanne, Switzerland
- Psychology Department, University of Washington, Seattle, WA, USA
- National Institutes of Health, USA
- Johns Hopkins Bloomberg School of Public Health, MD, USA
- Institute of Psychiatry, Psychology & Neuroscience, King's College London, London, UK
- Data Science and Sharing Team, National Institute of Mental Health, Bethesda, MD, USA
- The University of Washington eScience Institute, WA, USA
- Department of Radiology, Lausanne University Hospital and University of Lausanne
A hotfix release partially rolling-back the previous fix #1025. Thanks everyone for your patience with the excessively rushed release of 22.0.5.
- FIX: Better fix to the multi-argument
--participant-label
issue (#1026)
A hotfix release addressing a problem with the argument parser.
- FIX: Multiple valued
--participant-label
wrongly parsed (#1025)
A hotfix release to ensure smooth operation of datalad within Docker.
- FIX: Major improvements to new datalad-based interface & perform within containers (#1024)
- ENH: Bump Docker base to latest release (#1022)
A patch release containing a bugfix to the SynthStrip preprocessing.
- FIX: SynthStrip preprocessing miscalculating new shape after reorientation (#1021)
- ENH: Remove slice-timing correction (#1019)
- ENH: Add a new
DataladIdentityInterface
(#1020) - ENH: Set rat-specific defaults for FD calculations (#1005)
- ENH: New version of the rating widget (#1012)
- DOC: Move readthedocs to use the config v2 file (YAML) (#1018)
- MAINT: Fix statsmodels dependency, it is not optional (#1017)
- MAINT: Several critical updates to CircleCI and Docker images (#1016)
- MAINT: Update the T1w IQMs to the new reference after #997 (#1014)
- MAINT: Fix failing tests as
python setup.py
is deprecated (#1013)
A patch release including the new ratings widget.
- ENH: New version of the rating widget (#1012)
- DOC: Move readthedocs to use the config v2 file (YAML) (#1018)
- MAINT: Fix
statsmodels
dependency, it is not optional (#1017) - MAINT: Several critical updates to CircleCI and Docker images (#1016)
- MAINT: Update the T1w IQMs to the new reference after #997 (#1014)
- MAINT: Fix failing tests as
python setup.py
is deprecated (#1013)
A patch release addressing a new minor bug.
- FIX: More lenient handling of skull-stripped datasets (#997)
First official release after migrating the repository into the NiPreps' organization. A major new feature is the rodent pipeline by Eilidh MacNicol (@eilidhmacnicol). A second major feature is the adoption of the updated carpet plots for BOLD fMRI, contributed by Céline Provins (@celprov). Virtual memory allocation has been ten-fold cut down, and a complementary resource monitor instrumentation is now available with MRIQC. This release updates the Docker image with up-to-date dependencies, updates MRIQC's codebase to the latest NiTransforms and includes some minor bugfixes. The code, modules and data related to the MRIQC classifier have been extracted into an isolated package called [MRIQC-learn](https://github.com/nipreps/mriqc-learn). Finally, this release also contains a major code style overhaul by Zvi Baratz.
The contributor/author crediting system has been adapted to the current draft of the NiPreps Community Governance documents.
With thanks to @ZviBaratz, @nbeliy, @octomike, @benkay86, @verdurin, @leej3, @utooley, and @jAchtzehn for their contributions.
- FIX: Inconsistent API in anatomical CNR computation (#995)
- FIX: Check sanity of input data before extracting IQMs (#994)
- FIX: Plot segmentations after dropping off-diagonal (#989)
- FIX: Replace all deprecated
nibabel.get_data()
in anatomical module (#988) - FIX: Resource profiler was broken with config file (#981)
- FIX: preserve WM segments in rodents (#979)
- FIX: Pin
jinja2 < 3.1
(#978) - FIX: Make toml config unique, works around #912 (#960)
- FIX: Nipype multiproc plugin expects
n_procs
and notnprocs
(#961) - FIX: Set TR when generating carpetplots (enables time for X axis) (#971)
- FIX:
template_resolution
deprecation warning (#941) - FIX: Set entity
datatype
inBIDSLayout
queries (#942) - FIX: T2w image of MNI template unavailable in Singularity (#940)
- FIX: Release process -- Docker deployment not working + Python package lacks WebAPI token (#938)
- FIX: Revise building documentation at RTD after migration (#935)
- FIX: Final touch-ups in the maintenance of Docker image + CI (#928)
- FIX: Update unit tests (#927)
- FIX: Update dependencies and repair BOLD workflow accordingly (#926)
- FIX: Update dependencies and repair T1w workflow accordingly (#925)
- FIX: Set
matplotlib
onAgg
output mode (#892) - ENH: Deprecate
--start-idx
/--stop-idx
(#993) - ENH: Add SynthStrip base module (#987)
- ENH: Improve building workflow message feedback (#990)
- ENH: Add instrumentation to monitor resources (#984)
- ENH: Standalone, lightweight version of MultiProc plugin (#985)
- ENH: Revise plugin and workflow initialization (#983)
- ENH: Base generalization of the pipeline for rodents (#969)
- ENH: Update to new NiWorkflows' API, which adds the crown to the carpetplot (#968)
- ENH: Optimize PyBIDS' layout initialization (#939)
- ENH: Refactored long strings to a :mod:`mriqc.messages` module (#901)
- ENH: Refactored :mod:`mriqc.interfaces.common` module (#901)
- DOC: Improve documentation of
--nprocs
and--omp-nthreads
(#986) - DOC: Add
sbatch
file example for SLURM execution (#963) - DOC: Various fixes to "Running mriqc" section (#897)
- MAINT: Refactor
Dockerfile
using new miniconda image (#974) - MAINT: Outsource the classifier into nipreps/mriqc-learn (#973)
- MAINT: Update
CONTRIBUTORS.md
(#953) - MAINT: Update contributor location (#952)
- MAINT: Updates to
CONTRIBUTORS.md
file - MAINT: Revise Docker image settings & CircleCI (#937)
- MAINT: Finalize transfer to
nipreps
organization (#936) - MAINT: Relicensing to Apache-2.0, for compliance with NiPreps and prior transfer to the org (#930)
- MAINT: New Docker layer caching system of other NiPreps (#929)
- MAINT: Code style overhaul (#901)
- MAINT: Update
Dockerfile
and catch-up with fMRIPrep's (#924) - STY: Run
black
at the top of the repo (#932)
Full Changelog: https://github.com/nipreps/mriqc/compare/0.16.1...22.0.0
Author list for papers based on MRIQC 22.0.x
As described in the Contributor Guidelines, anyone listed as developer or contributor may write and submit manuscripts about MRIQC. To do so, please move the author(s) name(s) to the front of the following list:
Zvi Baratz 1; Christopher J. Markiewicz 2; Eilidh MacNicol 3; Dylan Nielson 4; Jan Varada 5; Ross W. Blair 2; William Triplett 6; Nikita Beliy 7; Céline Provins 8; John A. Lee 9; Ursula A. Tooley 10; James D. Kent 11; Bennet Fauber 12; Taylor Salo 13; Mathias Goncalves 2; Michael Krause 14; Pablo Velasco 15; Thomas Nichols 16; Adam Huffman 17; Johannes Achtzehn 18; Joke Durnez 2; Satrajit S. Ghosh 19; Asier Erramuzpe 20; Benjamin Kay 21; Daniel Birman 2; Michael G. Clark 22; Rafael Garcia-Dias 23; Sean Marret 5; Adam G. Thomas 24; Russell A. Poldrack 2; Krzysztof J. Gorgolewski 25; Oscar Esteban 26.
Affiliations:
- Sagol School of Neuroscience, Tel-Aviv University
- Department of Psychology, Stanford University, CA, USA
- Department of Neuroimaging, Institute of Psychiatry, Psychology and Neuroscience, King's College London, London, UK
- Section on Clinical and Computational Psychiatry, National Institute of Mental Health, Bethesda, MD, USA
- Functional MRI Facility, National Institute of Mental Health, Bethesda, MD, USA
- University of Florida: Gainesville, Florida, US
- CRC ULiege, Liege, Belgium
- Lausanne University Hospital and University of Lausanne, Lausanne, Switzerland
- Quansight, Dublin, Ireland
- Department of Neuroscience, University of Pennsylvania, PA, USA
- Department of Psychology, University of Texas at Austin, TX, USA
- University of Michigan, Ann Arbor, USA
- Department of Psychology, Florida International University, FL, USA
- Max Planck Institute for Human Development, Berlin, Germany
- Center for Brain Imaging, New York University, NY, USA
- Oxford Big Data Institute, University of Oxford, Oxford, GB
- Department of Physics, Imperial College London, London, UK
- Charité Berlin, Berlin, Germany
- McGovern Institute for Brain Research, MIT, MA, USA; and Department of Otolaryngology, Harvard Medical School, MA, USA
- Computational Neuroimaging Lab, BioCruces Health Research Institute
- Washington University School of Medicine, St.Louis, MO, USA
- National Institutes of Health, USA
- Institute of Psychiatry, Psychology & Neuroscience, King's College London, London, UK
- Data Science and Sharing Team, National Institute of Mental Health, Bethesda, MD, USA
- Google LLC
- Department of Radiology, Lausanne University Hospital and University of Lausanne
Bug-fix release in 0.16.x series.
This PR improves BIDS Derivatives compliance, fixes an issue with reading datasets with
subjects of the form sub-sXYZ
, and improves compatibility with more recent matplotlib.
- FIX: Participant labels starting with
[sub]
cannot be used (#890) - FIX: Change deprecated
normed
todensity
in parameters tohist()
(#888) - ENH: Write derivatives metadata (#885)
- ENH: Add
--pdb
option to make debugging easier (#884)
New feature release in 0.16.x series.
This version removes the FSL dependency from the fMRI workflow.
- FIX: Skip version cache on read-only filesystems (#862)
- FIX: Honor
$OMP_NUM_THREADS
environment variable (#848) - RF: Simplify comprehensions, using easy-to-read var names (#875)
- RF: Free the fMRI workflow from FSL (#842)
- CI: Fix up Circle builds (#876)
- CI: Update machine images on Circle (#874)
A bugfix release to re-enable setting of --omp-nthreads/--ants-nthreads
.
- FIX:
omp_nthreads
typo (#846)
A bugfix release containing mostly maintenance actions and documentation improvements. This version drops Python 3.5. The core of MRIQC has adopted the config-module pattern from fMRIPrep. With thanks to A. Erramuzpe, @justbennet, U. Tooley, and A. Huffman for contributions.
- MAINT: revise style of all files (except for workflows) (#839)
- MAINT: Clear the clutter of warnings (#838)
- RF: Adopt config module pattern from fMRIPrep (#837)
- MAINT: Clear the clutter of warnings (#838)
- MAINT: Drop Python 3.5, simplify linting (#833)
- MAINT: Update to latest Ubuntu Xenial tag (#814)
- MAINT: Centralize all requirements and versions on
setup.cfg
(#819) - MAINT: Use recent Python image to build packages in CircleCI (#808)
- DOC: Improve AQI (and other IQMs) and boxplot whiskers descriptions (#816)
- DOC: Refactor how documentation is built on CircleCI (#818)
- DOC: Corrected a couple of typos in
--help
text (#809)
A maintenance patch release updating PyBIDS.
- FIX:
FileNotFoundError
when MELODIC (--ica
) does not converge (#800) @oesteban - MAINT: Migrate MRIQC to a
setup.cfg
style of installation (#799) @oesteban - MAINT: Use PyBIDS 0.9.2+ via niworkflows PR (#796) @effigies
A long overdue update, pinning updated versions of TemplateFlow and Niworkflows. With thanks to @garciadias for contributions.
- ENH: Revision of QI2 (#606) @oesteban
- FIX: Set matplotlib backend early (#759) @oesteban
- FIX: Niworkflows pin <0.5 (#766) @oesteban
- DOC: Update BIDS validation link. (#764) @garciadias
- DOC: Add data sharing agreement (#765) @oesteban
- FIX: Catch uncaught exception in WebAPI upload. (#774) @rwblair
- FIX/DOC: Append new line after dashes in
mriqc_run
help text (#777) @rwblair - ENH: Use TemplateFlow and niworkflows-0.8.x (#782) @oesteban
- FIX: Correctly set WebAPI rating endpoint in BOLD reports. (#785) @oesteban
- FIX: Correctly process values of rating widget (#787) @oesteban
- FIX: Calculate relative path with sessions (#742) @oesteban
- ENH: Add a toggle button to rating widget (#743) @oesteban
- ENH: New feedback widget (#740) @oesteban
- [ENH,FIX] Updates to individual reports, fix table after rating (#739) @oesteban
- MAINT: Overdue refactor (#736) @oesteban
* FIX: Reorganize outputs (closes #396)
* ENH: Memory usage - lessons learned with FMRIPREP (#703)
* FIX: Cannot allocate memory (v 0.9.4) (closes #536)
* FIX: Drop inoperative
--report-dir
flag (#550) * FIX: Drop misleading WARNING of the group-level execution (#714) * FIX: Expand usernames on input paths (#721) * MAINT: More robust naming of derivatives (related to #661) - FIX: Do not fail with spurious 4th dimension on T1w (#738) @oesteban
- ENH: Move on to .tsv files (#737) @oesteban
- FIX:
BIDSLayout
queries (#735)
- FIX: Reduce tSNR memory requirements (#712)
- DOC: Fix typos in IQM documentation (#725)
- PIN: Update MRIQC WebAPI version (#734)
- BUG: Fix missing library in singularity images (#733)
- PIN: nipype 1.1.0, niworkflows (#726)
- RF: Resume external nipype dependency (#715)
- HOTFIX: Bug #659
- ENH: Report feedback (#659)
- ENH: Various improvements to reports (#708)
- MAINT: Style revision (#704)
- PIN: pybids 0.5 (#700)
- ENH: Increase FAST memory limits (#702)
- ENH: Enable T2w metrics uploads (#696)
- PIN: Updating niworkflows (#698)
- DOC: Option
-o
is outdated for classifier (#697)
- ENH: Add warning about mounting relative paths (#690)
- FIX: Sanitize inputs (#687)
- DOC: Fix documentation to use
--version
instead of-v
(#688)
- FIX: Fixed a bug in reading outputs of
3dFWHMx
(#678)
- FIX: Updated AFNI to 17.3.03. Resolves errors regarding opening display by
3dSkullStrip
(#669)
- ENH: Update nipype to fix
$DISPLAY
problem of AFNI's3dSkullStrip
With thanks to Jan Varada (@jvarada) for the session/run filtering.
- ENH: Report recall in cross-validation (requested by reviewer) (#633)
- ENH: Hotfixes to 0.9.7 (#635)
- FIX: Implement filters for session, run and task of BIDS input (#612)
- ENH: Clip outliers in FD and SPIKES group plots (#593)
- ENH: Second revision of the classifier (#555): * Set matplotlib plugin to agg in docker image * Migrate scalings to sklearn pipelining system * Add Satra's feature selection for RFC (with thanks to S. Ghosh for his suggestion) * Make model selection compatible with sklearn Pipeline * Multiclass classification * Add feature selection filter based on Sites prediction (requires pinning to development sklearn-0.19) * Add RobustLeavePGroupsOut, replace RobustGridSearchCV with the standard GridSearchCV of sklearn. * Choice between RepeatedStratifiedKFold and RobustLeavePGroupsOut in mriqc_clf * Write cross-validation results to an .npz file.
- ENH: First revision of the classifier (#553): * Add the possibility of changing the scorer function. * Unifize labels for raters in data tables (to rater_1) * Add the possibility of setting a custom decision threshold * Write the probabilities in the prediction file * Revised mriqc_clf processing flow * Revised labels file for ds030. * Add IQMs for ABIDE and DS030 calculated with MRIQC 0.9.6.
- ANNOUNCEMENT: Dropped support for Python<-3.4
- WARNING (#596): We have changed the default number of threads for ANTs. Using parallelism with ANTs causes numerical instability on the calculated measures. The most sensitive metrics to this problem are the kurtosis calculations on the intensities of regions and qi_2.
- ENH: Finished setting up MRIQC Web API
- ENH: Better error message when --participant_label is set (#542)
- FIX: Allow --load-classifier option to be empty in mriqc_clf (#544)
- FIX: Borked bias estimation derived from Conform (#541)
- ENH: Test against web API 0.3.2 (#540)
- ENH: Change the default Web API address (#539)
- ENH: MRIQCWebAPI: hash fields that may have PI (#538)
- ENH: Added token authorization to MRIQCWebAPI client (#535)
- FIX: Do not mask and antsAffineInitializer twice (#534)
- FIX: Datasets where air (hat) mask is empty (#533)
- ENH: Integration testing for MRIQCWebAPI (#520)
- ENH: Use AFNI to calculate gcor (#531)
- ENH: Refactor derivatives (#530)
- ENH: New bold-IQM: dummy_trs (non-stady state volumes) (#524)
- FIX: Order of BIDS components in IQMs CSV table (#525)
- ENH: Improved logging of mriqc_run (#526)
- ENH: Refactored structural metrics calculation (#513)
- ENH: Calculate rotation mask (#515)
- ENH: Intensity harmonization in the anatomical workflow (#510)
- ENH: Set N4BiasFieldCorrection number of threads (#506)
- ENH: Convert FWHM in pixel units (#503)
- ENH: Add MRIQC client for feature crowdsourcing (#464)
- DOC: Fix functional feature labels in documentation (docs_only) (#507)
- FIX: New implementation for the rPVE feature (normalization, left-tail values) (#505)
- ENH: Parse BIDS selectors (run, task, etc.), improve CLI (#504)
- ANNOUNCEMENT: Dropped Python 2 support
- ENH: Use versioneer to handle versions (#500)
- ENH: Speed up spatial normalization (#495)
- ENH: Resampling of hat mask and TPMs with linear interp (#498)
- TST: Build documentation in CircleCI (#484)
- ENH: Use full-resolution T1w images from ABIDE (#486)
- TST: Parallelize tests (#493)
- TST: Binding /etc/localtime stopped working in docker 1.9.1 (#492)
- TST: Downgrade docker to 1.9.1 in circle (build_only) (#491)
- TST: Check for changes in intermediate nifti files (#485)
- FIX: Erroneous flag --n_proc in CircleCI (#490)
- ENH: Add build_only tag to circle builds (#488)
- ENH: Update Dockerfile (#482)
- FIX: Ignore --profile flag with Linear plugin (#483)
- DOC: Deep revision of the documentation (#479)
- ENH: Minor improvements: SpatialNormalization and segmentation (#472)
- ENH: Fixed typo for neurodebian install via apt-get (#478)
- ENH: Updating fs2gif script (#465)
- ENH: RF: Use niworkflows.interface.SimpleInterface (#468)
- ENH: Add reproducibility of metrics tracking (#466)
- ENH: Reafactor of the Dockerfile to improve transparency, reduce size, and enable injecting code in Singularity (#457)
- ENH: Make more the memory consumption estimates of each processing step more conservative to improve robustness (#456)
- FIX: Minor documentation cleanups (#461)
- ENH: Optional ICA reports for identifying spatiotemporal artifacts (#412)
- ENH: Add --profile flag (#435)
- ENH: Crashfiles are saved in plain text to improve portability (#434)
- FIX: Fixes EPI mask erosion (#442)
- ENH: Make FSL and AFNI motion correction more comparable by using the same scheme for defining the reference image (#444)
- FIX: Temporarily disabling T1w quality classifier until it can be retrained on new measures (#447)
- ENH: Add mriqc version and input image hash to IQMs json file (#432)
- FIX: Affine and warp transforms are now applied in the correct order (#431)
- ENH: Revise Docker paths (#429)
- FIX: Greedy participant selection (#426)
- FIX: Pin pybids to new version 0.1.0 (#427)
- FIX: Amends sloppy PR #425 (#428)
- FIX: BOLD reports clipped IQMs after spikes_num (#425)
- FIX: Unicode error writing group reports (#424)
- FIX: Respect Nifi header in fMRI conform node (#415)
- DOC: Deep revision of documentation (#411, #416)
- ENH: Added sphinx extension to plot workflow graphs (#411)
- FIX: Removed repeated bias correction on anatomical workflows (#410)
- FIX: Race condition in bold workflow when using shared workdir (#409)
- FIX: Tests (#408, #407, #405)
- FIX: Remove CDN for group level reports (#406)
- FIX: Unused connection, matplotlib segfault (#403, #402)
- ENH: Skip SpikeFFT detector by default (#400)
- ENH: Use float32 (#399)
- ENH: Spike finder performance improvoments (#398)
- ENH: Basic T2w workflow (#394)
- ENH: Re-enable 3dvolreg (#390)
- ENH: Add T1w classifier (#389)
- FIX: Remove non-repeatable step from pipeline (#369)
- ENH: Improve group level command line, with more informative output when no IQMs are found for a modality (#372)
- ENH: Make group reports self-contained (#333)
- FIX: New mosaics, based on old ones (#361, #360, #334)
- FIX: Require numpy>=1.12 to avoid casting problems (#356)
- FIX: Add support for acq and rec tags of BIDS (#346)
- DOC: Documentation updates (#350)
- FIX: pybids compatibility "No scans were found" (#340, #347, #342)
- ENH: Rewrite PYTHONPATH in docker/singularity images (#345)
- ENH: Move metadata onto the bottom of the individual reports (#332)
- ENH: Don't include MNI registration report unlesS --verbose-reports is used (#362)
- ENH: Added registration svg panel to reports (#297)
- FIX: Bug translating int16 to uint8 in conform image.
- FIX: Error in ConformImage interface (#297)
- ENH: Replace BBR by ANTs (#295, #296)
- FIX: Singularity: user-environment leaking into container (#293)
- ENH: Report failed cases in group report (#291)
- FIX: Brighter anatomical --verbose-reports (#290)
- FIX: X-flip in the mosaics (#289)
- ENH: Show metadata in the individual report (#288)
- ENH: Label in the cutoff threshold - fmriplot (#287)
- ENH: PyBIDS (#286)
- ENH: Simplify tests (#284)
- FIX: MRIQC crashed generating csv files (#283)
- FIX: Bug in setup.py (#281)
- ENH: Makefile (#280)
- FIX: Revision of IQMs (#266, #272, #279)
- ENH: Deprecation of --nthreads, new flags (#260)
- ENH: Improvements on plots rendering (#254, #257, #258, #267, #268, #269, #270)
- ENH: FFT detection of spikes (#253, #272)
- FIX: Labels and links of samples in group plots (#249)
- ENH: Units in group plots (#242)
- FIX: More reliable group level (#238)
- ENH: Add --verbose-reports for fMRI (#236)
- ENH: Migrate functional reports to html (#232)
- ENH: Add 0.2 FD cutoff line (#231)
- ENH: Add AFNI's outlier count to carpet plot confound charts (#230)
- ENH: Anatomical Group reports in html (#227)
- ENH: Add kurtosis to summary statistics (#224)
- ENH: New report layout for fMRI, added carpetplot (#198)
- ENH: Anatomical workflow refactor (#219).
- [FIX, CRITICAL] Do not chmod in Docker internal scripts
- FIX: Error creating derivatives folder
- ENH: Moved MNI spatial normalization to NIworkflows, and made robust.
- ENH: De-coupled participant and group (reports) levels
- ENH: Use new FD and DVARs calculations from nipype (#172)
- ENH: Started with python3 compatibility
- ENH: Added new M2WM measure #158
- FIX: QI2 is skipped if background intensity is not appropriate (#147)
- FIX: Error inverting the T1w-to-MNI warping (#146)
- FIX: TypeError computing DVARS (#145)
- ENH: Plot figure of fitted background chi for QI2 (#143)
- ENH: Move skull-stripping and reorient to NIworkflows (#142)
- FIX: mriqc crashes if no anatomical scans are found (#141)
- DOC: Added acknowledgments to CPAC team members (#134)
- ENH: Use absolute imports (#133)
- FIX: VisibleDeprecationWarning (#132)
- ENH: Provide full FD/DVARS files (#128)
- ENH: Use MCFLIRT to compute motion parameters. AFNI's 3dvolreg now is optional (#121)
- FIX: BIDS trees with anatomical images with different acquisition tokens (#116)
- FIX: BIDS trees with anatomical images with several runs (#112)
- ENH: Options for ANTs normalization: reduced test times (#124), and updated options (#115)
- ENH: PDF reports now use RST templates and jinja2 (#109)
- FIX: Single-session-multiple-run anatomical files were not correctly located (#112)
- DOC: Added examples of the PDF reports (#107)
- FIX: Fixed problems with Python 3 when generating reports.
- ENH: Python 3 compatibility (#99)
- ENH: Add JSON settings file for ANTS (#95)
- ENH: Generate reports automatically if mriqc is run without the -S flag (#93)
- FIX: Revised implementation of QI2 measure (#90)
- AGAVE: Fixed docker image for agave (#89)
- FIX: Problem when generating the air mask with dipy installed (#88)
- ENH: One-session-one-run execution mode (#85)
- AGAVE: Added an agave app description generator (#84)
- ENH: Updated CircleCI and Docker to use the version 2.1.0 of ANTs compiled by their developers.
- ENH: New anatomical workflows to compute the air mask (#56)
- FIX: #55
- ENH: Added rotation of output csv files if they exist
- ENH: Completed migration from QAP
- ENH: Integration with ReadTheDocs
- ENH: Submission to PyPi
- Basic mriqc functionality