Recent Releases of Bidsme
Bidsme - 1.9.5 -- 2025-08-11
Changes since 1.9.0
Fixed:
- hmriNIFTI: Inverted PE direction for
j, based on dcm2niix - bidsmeNIFTI: Fixed custom fields overwrite when loading the file
PET/bidsmeNIFTY: Fixed extensions so compressed files should be taken into account- plugins/General: Extracted
bvecvectors are now reoriented to the image space - Metadata field parcing: bug where a composite fields (like
PhaseEncodingDirection) couldn't retrieved the raw values - Temporary fix for an
<<increment>>tag resetting with every new recording - bidsmap: example field not filled when two different map blocks process same acquisition
participants_table.tsv: Now theN/Aare filled in case of duplicatesplugins/tools/General.py:SaveBvalkept.niiextensions if base name was a compressed image (issue #37)
Added:
hmriNIFTI: Added more shortcuts for retrieving metadata from header, in particular DwellTime
ISSUES.md: keep track of currently known issues with
bidsmeplugins/nibabel: Added TR parameter in
Convert_3D_to_4Dto set the time dimention of 4D images
Changed:
- plugins/dcm2niix: Reimplemented conversion code for dcm2niix, filenames are recovered from parcing stdout, also accepts local instalations of dcm2niix
- plugins/tools/General/CheckPrepared: will accept also subject and session names directly to perform checks; also will mirror the same checks configurations as CheckSeries
- bidsme-gui: the tkinter dependency is now optional,
bidsmecan be used without it, but attempting to launchbidsme-guiwill end up withModuleNotFoundError - bidsme-gui: now launched from CLI with
bidsme-guicommand
Scientific Software - Peer-reviewed
- Python
Published by nbeliy 6 months ago
Bidsme -
Changes since 1.9.0
Fixed:
- plugins/General: Extracted
bvecvectors are now reoriented to the image space - Metadata field parcing: bug where a composite fields (like
PhaseEncodingDirection) couldn't retrieved the raw values - Temporary fix for an
<<increment>>tag resetting with every new recording - bidsmap: example field not filled when two different map blocks process same acquisition
Changed:
- plugins/tools/General/CheckPrepared: will accept also subject and session names directly to perform checks; also will mirror the same checks configurations as CheckSeries
- bidsme-gui: the tkinter dependency is now optional,
bidsmecan be used without it, but attempting to launchbidsme-guiwill end up withModuleNotFoundError - bidsme-gui: now launched from CLI with
bidsme-guicommand
Added:
- ISSUES.md: keep track of currently known issues with
bidsme - plugins/nibabel: Added TR parameter in
Convert_3D_to_4Dto set the time dimention of 4D images
Scientific Software - Peer-reviewed
- Python
Published by nbeliy 9 months ago
Bidsme -
Changes since 1.9.0
Fixed:
- Metadata field parcing: bug where a composite fields (like
PhaseEncodingDirection) couldn't retrieved the raw values - Temporary fix for an
<<increment>>tag resetting with every new recording - bidsmap: example field not filled when two different map blocks process same acquisition
Changed:
- plugins/tools/General/CheckPrepared: will accept also subject and session names directly to perform checks; also will mirror the same checks configurations as CheckSeries
- bidsme-gui: the tkinter dependency is now optional,
bidsmecan be used without it, but attempting to launchbidsme-guiwill end up withModuleNotFoundError - bidsme-gui: now launched from CLI with
bidsme-guicommand
Added:
- ISSUES.md: keep track of currently known issues with
bidsme - plugins/nibabel: Added TR parameter in
Convert_3D_to_4Dto set the time dimention of 4D images
Scientific Software - Peer-reviewed
- Python
Published by nbeliy 10 months ago
Bidsme - 1.9.0 - 2025-02-27
Changes since 1.8.0
Added
<<increment[1-9]:tag>>field that will count how much this field is accessed. Useful forrun-andchunk-entities. The tagless version<<increment[1-9]>>will count number of times the bidsified name is generated.mapper.py: Added cals toSessionEndEPandSubjectEndEPplugin functions for consistency withbidsify.pyGUI: Metadata explorerModule/base: Added possibility to lockseriesNoandseriesIdto avoid the retrieval of No and Id for each loaded filebidsify,map: Series No and Id is retrieved from folder name and not automatically
Changed:
- Reimplemented
getDynamicField, now it parces tags usingregexp, added unittest for metadata retrieval baseModule: During preparation, bidsme will copy not only the image file, but all files sharing the same basenametools/change_ext: will return the basename without extention if argumentnew_extisNone- Added minimal
pyproject.tomlto silence warning tools.change_extwill return basename ifnew_extis NoneModule/base: If unable to recover series number or series id, the default values of 0 and 'unknown' will be usedModule/base: In series id, the space and tabs will be replaced by underscoresModule/base: Retriving an incorrect characteristic (<<>>) will pring an error to logbidsmap_template: Updated to BIDS 1.10.0 and added several new protocols- BIDSschema validation: BIDS-defined fields that are not defined for current data-type now raises an error
- BIDSschema validation: Extra non BIDS fields now show a warning
Scientific Software - Peer-reviewed
- Python
Published by nbeliy 12 months ago
Bidsme -
Changes since 1.8.0
Added:
Module/base: Added possibility to lockseriesNoandseriesIdto avoid the retrieval of No and Id for each loaded filebidsify,map: Series No and Id is retrieved from folder name and not automatically- MRS: support for Magnetic Resonance Spectroscopy
Changed:
tools.change_extwill return basename ifnew_extis NoneModule/base: If unable to recover series number or series id, the default values of 0 and 'unknown' will be usedModule/base: In series id, the space and tabs will be replaced by underscoresModule/base: Retriving an incorrect characteristic (<<>>) will pring an error to log- bidsmap/run: If modality or suffix not defined, default model will be
__unknown__, otherwise<modality>:suffix - bidsmap/bidsmap: For
__unknown__and__ignore__modalities, the model will be fixed to__unknown__ - mapper: If suffix is not defined, an error will be shown, and no further vqalidations will be performed on that file
- BidsTable: Updated
lineterminatorparameter, making it compatible with modern (>1.4) Pandas, and Pythons up to 3.12 - Modules: Base module class selector has been moved into tools, new modalities are no longer decalred in `selector.py
Fixed:
Module/jsonNIFTY: no longer spams warnings if unable to determine series id- bidsmap: Empty modules no longer saved to bidsmap
- bidsmap: In case of BIDS version change, warning shows incorrect version
- hmriNIFTI: Fixed error of corrupted file on Siemens derivated MRI images lacking
CSASeriesHeaderInfosections
Scientific Software - Peer-reviewed
- Python
Published by nbeliy about 1 year ago
Bidsme - 1.8.1 - 2024-09-19
Changes since 1.8.0
Changed:
bidsmap_template: Updated to BIDS 1.10.0 and added several new protocols- BIDSschema validation: BIDS-defined fields that are not defined for current data-type now raises an error
- BIDSschema validation: Extra non BIDS fields now show a warning
Fixed:
- mapper: Error when testing an empty
IntendedForfield - mapper: When retrieving run from template, attributes wasn't adapted to the tested file
- MRI:
perfdata type wasn't in valid data types
Scientific Software - Peer-reviewed
- Python
Published by nbeliy over 1 year ago
Bidsme - 1.8.0 2024-09-12
Changes since 1.7.1
Added
- MRS: support for Magnetic Resonance Spectroscopy
Fixed
- bidsmap: Empty modules no longer saved to bidsmap
- bidsmap: In case of BIDS version change, warning shows incorrect version
- hmriNIFTI: Fixed error of corrupted file on Siemens derivated MRI images lacking
CSASeriesHeaderInfosections
Changed
- bidsmap/run: If modality or suffix not defined, default model will be
__unknown__, otherwise<modality>:suffix - bidsmap/bidsmap: For
__unknown__and__ignore__modalities, the model will be fixed to__unknown__ - mapper: If suffix is not defined, an error will be shown, and no further vqalidations will be performed on that file
- BidsTable: Updated
lineterminatorparameter, making it compatible with modern (>1.4) Pandas, and Pythons up to 3.12 - Modules: Base module class selector has been moved into tools, new modalities are no longer decalred in `selector.py
Scientific Software - Peer-reviewed
- Python
Published by nbeliy over 1 year ago
Bidsme - 1.7.0 - 2024-06-12
Changes since 1.6.6
Added:
- The sidecar and entities are retrieved from official BIDS schema via
bidsschematools - During mapping, the same schema is used to validate the entities and sidecars
- unittests for schema retrieval and validation
- plugin.tools.General: Functions for helping prepared data curation, namely LoadCurationList, CleanupPrepared and CheckPrepared
- unittests for data curation
Changed
- mapping,bidsification: the list of entities and sidecar fields are extracted from current BIDS schema
(based on
bidsschematoolspackage) - Python>=3.8, Python<3.11: Restricted python to >=3.8 to satisfy dependence to
bidsschematools - bidsmap: model parameter is now explicitly saved in bidsmap
- bidsmap: model now takes form of
<data type>:<suffix>and used to retrieve entities and sidecat fields - mapping: template == true will now also expand json and entities sections
- Modules: the metadata fields in modality class definitions are now replaced by shotrcuts, which links sidecar JSON field with corresponding dynamic field in metadata
- bidsmap: required sidecar json fields that BIDSME can retrieve automatically (in custom variables, via shortcuts, or directly in metadata) are now explicetly saved in bidsmap
- unknown map is now created in same folder as bidsmap
- DWI: warning about missing bval/vec files now triggers only for suffix dwi
Scientific Software - Peer-reviewed
- Python
Published by nbeliy over 1 year ago
Bidsme - 1.6.6 - 2024-04-25
Changes since 1.5.0
Added
- Modules/base: The series Id and No can now be changed in plugins via attributes
recording.series_idandrecording.series_no - MRI/jsonNIFTY: All bids metafields are by default completed from the provided json
- Modules/base: If BIDS metadata has the same name as a custom metadata, then the content of custom metadata is used
- plugins/tools: A tool that uses dcm2niix to convert and merge dicoms after preparation
- Plugin/Nibabel: Convert3Dto4D will also remove json files, not only nifti
- Plugin/Nibabel: Convert3Dto4D will conserve the written data scale, if all merged files have the same slope and intercept
- Log entry while loading tables
- NIFTI: added support for compressed files
Changed:
- Limited support for Python <3.11
- Modules/MRI/Nifti, Modules/PET/Nifti: the header dump is now created by default
- MRI/DICOM: Using nibabel and mri_parser to parse Siemens-specific headers CSAHeaderInfo and CSASeriesInfo
- Plugin/Nibabel: Convert3Dto4D will produce an error when trying merging of 2-file nifti (hdr/img)
Fixed
- bidsify: Error when trying bidsify non-BIDS modalities (issue #29)
- logging output redirected to stdout, and forcing colors (fixing red background in jupyther-lab)
- Import issue for MRI/DICOM when installed
pydicomwill raise error with not installeddicom-parcer - Modules/MRI/Nifti, Modules/PET/Nifti: diminfo from header are now retrieved as integer instead of bytes
- Modules/MRI/Nifti, Modules/PET/Nifti: header dump exported as dict, instead of string
- Modules/MRI/bidsmeNifty: Removed error if file was created not from DICOM
- Modules/PET/bidsmeNifty: Removed error if file was created not from DICOM
- Plugins import is explicetely reset in the beginning of preparation/mapping/processing/bidsification
- Plugin/Nibabel: crash in Convert3Dto4D when removing merged files
- jsonNIFTI: fixed retrieval of ParticipantID, based on
dcm2niixentryPatientID - BaseModule:
series_no/series_idbecomes prperties with type check (int/str resp.)
Scientific Software - Peer-reviewed
- Python
Published by nbeliy almost 2 years ago
Bidsme - 1.6.5
Changes since 1.5.1
Added
- Modules/base: The series Id and No can now be changed in plugins via attributes
recording.series_idandrecording.series_no - MRI/jsonNIFTY: All bids metafields are by default completed from the provided json
- Modules/base: If BIDS metadata has the same name as a custom metadata, then the content of custom metadata is used
- plugins/tools: A tool that uses dcm2niix to convert and merge dicoms after preparation
- Plugin/Nibabel: Convert3Dto4D will also remove json files, not only nifti
- Plugin/Nibabel: Convert3Dto4D will conserve the written data scale, if all merged files have the same slope and intercept
- Log entry while loading tables
- NIFTI: added support for compressed files
Changed:
- Limited support for Python <3.11
- Modules/MRI/Nifti, Modules/PET/Nifti: the header dump is now created by default
- MRI/DICOM: Using nibabel and mri_parser to parse Siemens-specific headers CSAHeaderInfo and CSASeriesInfo
- Plugin/Nibabel: Convert3Dto4D will produce an error when trying merging of 2-file nifti (hdr/img)
Fixed
- logging output redirected to stdout, and forcing colors (fixing red background in jupyther-lab)
- Import issue for MRI/DICOM when installed
pydicomwill raise error with not installeddicom-parcer - Modules/MRI/Nifti, Modules/PET/Nifti: diminfo from header are now retrieved as integer instead of bytes
- Modules/MRI/Nifti, Modules/PET/Nifti: header dump exported as dict, instead of string
- Modules/MRI/bidsmeNifty: Removed error if file was created not from DICOM
- Modules/PET/bidsmeNifty: Removed error if file was created not from DICOM
- Plugins import is explicetely reset in the beginning of preparation/mapping/processing/bidsification
- Plugin/Nibabel: crash in Convert3Dto4D when removing merged files
- jsonNIFTI: fixed retrieval of ParticipantID, based on
dcm2niixentryPatientID - BaseModule:
series_no/series_idbecomes prperties with type check (int/str resp.)
Full Changelog: https://github.com/CyclotronResearchCentre/bidsme/compare/1.5.1...1.6.5
Scientific Software - Peer-reviewed
- Python
Published by nbeliy almost 2 years ago
Bidsme - 1.6.4 - 2024-04-11
Changes since 1.5.0
Added
- Modules/base: The series Id and No can now be changed in plugins via attributes
recording.series_idandrecording.series_no - MRI/jsonNIFTY: All bids metafields are by default completed from the provided json
- Modules/base: If BIDS metadata has the same name as a custom metadata, then the content of custom metadata is used
- plugins/tools: A tool that uses dcm2niix to convert and merge dicoms after preparation
- Plugin/Nibabel: Convert3Dto4D will also remove json files, not only nifti
- Plugin/Nibabel: Convert3Dto4D will conserve the written data scale, if all merged files have the same slope and intercept
Changed:
- Limited support for Python <3.11
- Modules/MRI/Nifti, Modules/PET/Nifti: the header dump is now created by default
- MRI/DICOM: Using nibabel and mri_parser to parse Siemens-specific headers CSAHeaderInfo and CSASeriesInfo
- Plugin/Nibabel: Convert3Dto4D will produce an error when trying merging of 2-file nifti (hdr/img)
Fixed
- logging output redirected to stdout, and forcing colors (fixing red background in jupyther-lab)
- Import issue for MRI/DICOM when installed
pydicomwill raise error with not installeddicom-parcer - Modules/MRI/Nifti, Modules/PET/Nifti: diminfo from header are now retrieved as integer instead of bytes
- Modules/MRI/Nifti, Modules/PET/Nifti: header dump exported as dict, instead of string
- Modules/MRI/bidsmeNifty: Removed error if file was created not from DICOM
- Modules/PET/bidsmeNifty: Removed error if file was created not from DICOM
- Plugins import is explicetely reset in the beginning of preparation/mapping/processing/bidsification
- Plugin/Nibabel: crash in Convert3Dto4D when removing merged files
Scientific Software - Peer-reviewed
- Python
Published by nbeliy almost 2 years ago
Bidsme - 1.6.3 - 2024-03-06
Added
- Modules/base: The series Id and No can now be changed in plugins via attributes
recording.series_idandrecording.series_no - MRI/jsonNIFTY: All bids metafields are by default completed from the provided json
- Modules/base: If BIDS metadata has the same name as a custom metadata, then the content of custom metadata is used
- plugins/tools: A tool that uses dcm2niix to convert and merge dicoms after preparation
- Plugin/Nibabel: Convert3Dto4D will also remove json files, not only nifti
- Plugin/Nibabel: Convert3Dto4D will conserve the written data scale, if all merged files have the same slope and intercept
Changed:
- Modules/MRI/Nifti, Modules/PET/Nifti: the header dump is now created by default
- MRI/DICOM: Using nibabel and mri_parser to parse Siemens-specific headers CSAHeaderInfo and CSASeriesInfo
- Plugin/Nibabel: Convert3Dto4D will produce an error when trying merging of 2-file nifti (hdr/img)
Fixed
- Modules/MRI/Nifti, Modules/PET/Nifti: diminfo from header are now retrieved as integer instead of bytes
- Modules/MRI/Nifti, Modules/PET/Nifti: header dump exported as dict, instead of string
- Modules/MRI/bidsmeNifty: Removed error if file was created not from DICOM
- Modules/PET/bidsmeNifty: Removed error if file was created not from DICOM
- Plugins import is explicetely reset in the beginning of preparation/mapping/processing/bidsification
- Plugin/Nibabel: crash in Convert3Dto4D when removing merged files
Scientific Software - Peer-reviewed
- Python
Published by nbeliy almost 2 years ago
Bidsme - 1.6.2 - 2024-03-04
Added
- Modules/base: The series Id and No can now be changed in plugins via attributes
recording.series_idandrecording.series_no - MRI/jsonNIFTY: All bids metafields are by default completed from the provided json
- Modules/base: If BIDS metadata has the same name as a custom metadata, then the content of custom metadata is used
- plugins/tools: A tool that uses dcm2niix to convert and merge dicoms after preparation
Changed:
- Modules/MRI/Nifti, Modules/PET/Nifti: the header dump is now created by default
- MRI/DICOM: Using nibabel and mri_parser to parse Siemens-specific headers CSAHeaderInfo and CSASeriesInfo
Fixed
- Modules/MRI/Nifti, Modules/PET/Nifti: diminfo from header are now retrieved as integer instead of bytes
- Modules/MRI/Nifti, Modules/PET/Nifti: header dump exported as dict, instead of string
- Modules/MRI/bidsmeNifty: Removed error if file was created not from DICOM
- Modules/PET/bidsmeNifty: Removed error if file was created not from DICOM
- Plugins import is explicetely reset in the beginning of preparation/mapping/processing/bidsification
Scientific Software - Peer-reviewed
- Python
Published by nbeliy almost 2 years ago
Bidsme - 1.6.0
Added
- Modules/base: The series Id and No can now be changed in plugins via attributes
recording.series_idandrecording.series_no - MRI/jsonNIFTY: All bids metafields are by default completed from the provided json
- Modules/base: If BIDS metadata has the same name as a custom metadata, then the content of custom metadata is used
- plugins/tools: A tool that uses dcm2niix to convert and merge dicoms after preparation
Changed:
- Modules/MRI/Nifti, Modules/PET/Nifti: the header dump is now created by default
- MRI/DICOM: Using nibabel and mri_parser to parse Siemens-specific headers CSAHeaderInfo and CSASeriesInfo
Fixed
- Modules/MRI/Nifti, Modules/PET/Nifti: diminfo from header are now retrieved as integer instead of bytes
- Modules/MRI/Nifti, Modules/PET/Nifti: header dump exported as dict, instead of string
Full Changelog: https://github.com/CyclotronResearchCentre/bidsme/compare/1.5.1...1.60
Scientific Software - Peer-reviewed
- Python
Published by nbeliy about 2 years ago
Bidsme - 1.5.0
Release for the publication in JOSS
Fixed
- Module/base: Bug when
recIdentity()wasn't called as function
Changed
- Several improvements in documentation and README
- Updated links to the examples and tutorial to point to GitHub
Scientific Software - Peer-reviewed
- Python
Published by nbeliy about 2 years ago
Bidsme - 1.4.3
Fixed:
- Bug in bidsification when working with bare nifty file
- PET: Updated entities list, remobved some nore more required json metadata
- PET/ECAT: Degraded warning of non-decodable bytes string to debug
- plugins/template: Fixed (finally) the import of classes in template
- MRI/jsonNIFTY, PET/jsonNIFTY: fixed crash when trying to load generic json NIFTY file
- MRI/hmriNIFTY: removed requirement of presence of
MrPhoenixProtocol plugins: added__init__.pyto tools so plugin tools will be properly installedbidsMeta: Fixed not reseted bidsSession list ofsubjects.tsvcolumnsplugins.tools: Fixed faulty import ofbaseModule
Added:
- Integrartion test for GitHub
Changed:
- Table sidecars (including participants.json) now supports extra phields, not related to columns names
- bidsmap: Accepting non-bids modality with a warning
- bidsmap: Runs loaded from template are now unchecked
- README.md: liknks points to GitHub repo
- Splitted bloated README
- Version naming schema for post-release fixes
Removed
baseModule: removed spanning messages about testing files in scan folders
Scientific Software - Peer-reviewed
- Python
Published by nbeliy over 2 years ago
Bidsme - 1.4.2
[1.4.2] - 2023-08-08
Added:
- Integrartion test for GitHub
Fixed:
- PET: Updated entities list, remobved some nore more required json metadata
- PET/ECAT: Degraded warning of non-decodable bytes string to debug
- plugins/template: Fixed (finally) the import of classes in template
- MRI/jsonNIFTY, PET/jsonNIFTY: fixed crash when trying to load generic json NIFTY file
- MRI/hmriNIFTY: removed requirement of presence of
MrPhoenixProtocol plugins: added__init__.pyto tools so plugin tools will be properly installedbidsMeta: Fixed not reseted bidsSession list ofsubjects.tsvcolumnsplugins.tools: Fixed faulty import ofbaseModule
Changed:
- Table sidecars (including participants.json) now supports extra phields, not related to columns names
- bidsmap: Accepting non-bids modality with a warning
- bidsmap: Runs loaded from template are now unchecked
- README.md: liknks points to GitHub repo
- Splitted bloated README
- Version naming schema for post-release fixes
Removed
baseModule: removed spanning messages about testing files in scan folders
Scientific Software - Peer-reviewed
- Python
Published by nbeliy over 2 years ago
Bidsme - 1.4.0.post4
Full Changelog: https://github.com/CyclotronResearchCentre/bidsme/commits/1.4.0.post4
Scientific Software - Peer-reviewed
- Python
Published by ChristophePhillips about 3 years ago