diff --git a/data/tools/MEEG_converters.yml b/data/tools/MEEG_converters.yml deleted file mode 100644 index e7191f58..00000000 --- a/data/tools/MEEG_converters.yml +++ /dev/null @@ -1,133 +0,0 @@ ---- -# template -# - name: -# url: URL to repo -# data_types: -# - EEG, MEG, iEEG, events -# expected_input: -# - DICOM, PAR/REC, tsv -# distribution: -# - name: pypi -# url: https://pypi.org/project/??? -# - name: dockerhub -# url: https://hub.docker.com/??? -# language: -# - Python, MATLAB -# documentation: URL to documentation -# comment: -# GUI: false - -- group: - name: EEG, MEG, iEEG converters - members: - - name: BIDSme - url: https://github.com/nbeliy/bidsme - data_types: - - MRI - - EEG - expected_input: - - DICOM - - Nifti - - Brain Vision - language: - - Python - documentation: https://gitlab.uliege.be/CyclotronResearchCentre/Public/bidstools/bidsme/bidsme_example/-/tree/master/example1 - comment: - license: GPL-2.0 - - - name: MNE-BIDS - url: https://github.com/mne-tools/mne-bids - data_types: - - MEG - - EEG - - iEEG - - NIRS - expected_input: - - raw MEG for BIDS conversion - - raw EEG for BIDS conversion - - raw iEEG for BIDS conversion - - raw NIRS for BIDS conversion - - BIDS dataset for reading - language: - - Python - documentation: https://mne.tools/mne-bids - distribution: - - name: pypi - url: https://pypi.org/project/mne-bids - - name: conda-forge - url: https://anaconda.org/conda-forge/mne-bids/ - comment: MNE-BIDS is a Python package that allows you to read and write BIDS-compatible datasets with the help of MNE-Python. - GUI: false - license: BSD-3-Clause - - - name: EEGLAB - url: https://github.com/sccn/eeglab - data_types: - - MEG - - EEG - expected_input: - - EDF - - BDF - - Brain Vision Exchange Format - - EEGLAB .set files - language: - - MATLAB - documentation: https://eeglab.org/tutorials/04_Import/BIDS.html - comment: See plugins - - - - name: FieldTrip - data2bids - url: https://github.com/fieldtrip/fieldtrip - data_types: - - EEG - - MEG - - iEEG - - behavioral - - MRI (anat and func) - expected_input: - - any EEG or MEG file format - - NBS Presentation logfiles - - DICOM - - nifti - language: - - MATLAB - documentation: https://www.fieldtriptoolbox.org/example/bids/ - license: GPL-3.0 - - - name: Biscuit - url: https://github.com/Macquarie-MEG-Research/Biscuit - data_types: - - MEG - expected_input: - - ??? - language: - - Python - documentation: https://macquarie-meg-research.github.io/Biscuit/ - comment: GUI for easy MEG to BIDS conversion - GUI: true - license: MIT - - - name: sovabids - url: https://github.com/yjmantilla/sovabids - data_types: - - EEG - expected_input: - - ??? - language: - - Python - documentation: https://sovabids.readthedocs.io/en/latest/ - comment: A Python package for the automatic conversion of EEG datasets to the BIDS standard, with a focus on making the most out of metadata. - - - - name: EEG2BIDS - url: https://github.com/aces/EEG2BIDS - data_types: - - EEG - expected_input: - - ??? - language: - - Javascript - - Python - documentation: - comment: A tool for converting raw EEG and iEEG data into the BIDS standard data structure, prepared for LORIS (Longitudinal Online Research and - Imaging System). diff --git a/data/tools/all_converters.yml b/data/tools/all_converters.yml new file mode 100644 index 00000000..fee3a712 --- /dev/null +++ b/data/tools/all_converters.yml @@ -0,0 +1,675 @@ +--- +# template +# - name: +# url: URL to repo +# data_types: +# - MRI, EEG, MEG, iEEG, events, physio +# expected_input: +# - DICOM, PAR/REC, tsv +# distribution: +# - name: pypi +# url: https://pypi.org/project/??? +# - name: dockerhub +# url: https://hub.docker.com/r/?? +# language: +# - Python, MATLAB +# documentation: URL to documentation +# comment: +# GUI: false + +- group: + name: MRI and PET converters # <--- get rid of the groups and names. Names will be manually entered in the markdown anyway. + members: + - name: bidsify + url: https://github.com/NILAB-UvA/bidsify + data_types: + - MRI + expected_input: + - DICOM + - PAR/REC + language: + - Python + comment: Tool to convert source MRI datasets to BIDS-compatible datasets. + distribution: + - name: pypi + url: https://pypi.org/project/bidsify + - name: dockerhub + url: https://hub.docker.com/r/lukassnoek/bidsify + + - name: bidskit + url: https://github.com/jmtyszka/bidskit + data_types: + - MRI + expected_input: + - DICOM + language: + - Python + comment: Utility functions for working with DICOM and BIDS neuroimaging data. + documentation: https://github.com/jmtyszka/bidskit/blob/master/docs/QuickStart.md + distribution: + - name: pypi + url: https://pypi.org/project/bidskit + - name: dockerhub + url: https://hub.docker.com/r/jmtyszka/bidskit + license: MIT + + - name: BMAT + url: https://github.com/ColinVDB/BMAT + data_types: + - MRI + expected_input: + - DICOM + distribution: + - name: dockerhub + url: https://hub.docker.com/r/colinvdb/bmat-dcm2niix + language: + - Python + GUI: true + license: GPL-3.0 + + - name: Data2Bids + url: https://github.com/SIMEXP/Data2Bids + data_types: + - MRI + expected_input: + - not DICOM + language: + - Python + comment: | + Converts MRI files from extension supported by nibabel into NIfTI and + convert them to BIDS + distribution: + - name: pypi + url: https://pypi.org/project/data2bids + license: MIT + + - name: Dcm2Bids + url: https://github.com/cbedetti/Dcm2Bids + data_types: + - MRI + expected_input: + - DICOM + language: + - Python + comment: converts DICOM files using dcm2niix into BIDS + documentation: https://unfmontreal.github.io/Dcm2Bids/ + distribution: + - name: pypi + url: https://pypi.org/project/Dcm2Bids + - name: dockerhub + url: https://hub.docker.com/r/unfmontreal/dcm2bids + license: GPL-3.0 + + - name: HeuDiConv + url: https://github.com/nipy/heudiconv + data_types: + - MRI + expected_input: + - DICOM + language: + - Python + distribution: + - name: pypi + url: https://pypi.org/project/heudiconv + - name: dockerhub + url: https://hub.docker.com/r/nipy/heudiconv + documentation: https://heudiconv.readthedocs.io/ + comment: | + A flexible DICOM converter for organizing brain imaging data into + structured directory layouts + license: Apache 2.0 + + - name: OpenfMRI2BIDS + url: https://github.com/bids-standard/openfmri2bids + data_types: + - MRI + expected_input: + - openfMRI datasets + language: + - ??? + comment: Convert OpenfMRI dataset to BIDS + + - name: ReproIn + url: https://github.com/ReproNim/reproin + data_types: + - MRI + expected_input: + - DICOM + language: + - Python + comment: 'HeuDiConv-based turnkey solution: a setup for automatic generation of shareable, version-controlled BIDS datasets from MR scanners.' + distribution: + - name: dockerhub + url: https://hub.docker.com/r/repronim/reproin + license: MIT + + - name: XNAT2BIDS + url: https://github.com/kamillipi/2bids + data_types: + - MRI + expected_input: + - DICOM + language: + - shell + comment: | + Simple xnat pipeline to convert DICOM scans to BIDS-compatible output + (nii+json). + + - name: Horos (Osirix) export plugin + url: https://github.com/mslw/horos-bids-output + data_types: + - MRI + expected_input: + - ??? + language: + - objective C + comment: Horos plugin for BIDS output. + GUI: yes + license: GPL-3.0 + + - name: BIDScoin + url: https://github.com/Donders-Institute/bidscoin + data_types: + - MRI + - physiological + - PET + expected_input: + - DICOM + - PAR/REC + - physiological + - PET + - Nifti + language: + - Python + distribution: + - name: pypi + url: https://pypi.org/project/bidscoin + documentation: https://bidscoin.readthedocs.io/en/stable/ + comment: | + BIDScoin is a flexible tool to convert (“coin”) source-level (raw) neuroimaging + data sets to BIDS without needing to code anything. It features automatic + data discovery based on header as well as filesystem information, and comes with + a user-friendly GUI to add missing information and tweak the results. BIDScoin + supports multiple source data formats with plugins (e.g. employing dcm2niix, + spec2nii or nibabel) and allows customization of the prior knowledge about your + data (allowing for fully automatic CLI data conversion if you like). + GUI: yes + license: GPL-3.0 + + - name: BIDSme + url: https://github.com/nbeliy/bidsme + data_types: + - MRI + - EEG + expected_input: + - DICOM + - Nifti + - Brain Vision + documentation: https://gitlab.uliege.be/CyclotronResearchCentre/Public/bidstools/bidsme/bidsme_example/-/tree/master/example1 + language: + - Python + comment: + license: GPL-2.0 + + - name: BrkRaw + url: https://github.com/BrkRaw/brkraw + data_types: + - MRI + expected_input: + - Bruker MRI scanner data + language: + - Python + GUI: yes + comment: For a preclinical Bruker MRI scanner + license: GPL-3.0 + + - name: Clinica + url: https://github.com/aramis-lab/clinica + data_types: + - MRI + expected_input: + - ADNI + - AIBL + - NIFD + - OASIS + - OASIS-3 + language: + - Python + comment: + documentation: https://aramislab.paris.inria.fr/clinica/docs/public/latest/ + license: MIT + + - name: niix2bids + url: https://github.com/benoitberanger/niix2bids + data_types: + - MRI + expected_input: + - Nifti converted from DICOM using dcm2niix + language: + - Python + comment: Use this package as a command line to organize your Nifti dataset into BIDS. + license: GPL-3.0 + + - name: dac2bids + url: https://github.com/dangom/dac2bids + data_types: + - MRI + expected_input: + - DICOM + language: + - Python + comment: Create a BIDS structure for a DICOM folder. + + - name: Autobids + url: https://github.com/khanlab/autobids + data_types: + - MRI + expected_input: + - DICOM + language: + - ??? + comment: | + Automated Dicom to BIDS and pipelines using compute canada. From the + Center for Functional and Metabolic Mapping (CFMM) at Western’s Robarts + Research Institute. + + - name: PET2BIDS + url: https://github.com/openneuropet/PET2BIDS + comment: | + Helps you convert your PET data! raw PET scanner files (for example ecat, dicom) + and additional side file like excel sheets. + data_types: + - PET + expected_input: + - DICOM + - ECAT + language: + - MATLAB + - Python + GUI: false + license: MIT + + - name: Explore ASL + url: https://github.com/ExploreASL/ExploreASL + comment: | + Convert DICOM and NIFTI data to the ASL-BIDS format. + data_types: + - MRI + - ASL + expected_input: + - DICOM + - Nifti + documentation: https://exploreasl.github.io/Documentation/1.8.0/Tutorials-ASL-BIDS/ + language: + - MATLAB + + - name: SAMRI + url: https://github.com/IBT-FMI/SAMRI + comment: | + Full stack Small Animal MRI data analysis package, including the `bru2bids` + repositing pipeline, which can convert Bruker archives to the BIDS format. + From the ETH and University of Zurich, with collaboration from MIT and + Dartmouth College. + data_types: + - MRI + expected_input: + - Bruker ParaVision + - NIfTI + language: + - Python + - shell + documentation: https://doi.org/10.3389/fninf.2020.00005 + GUI: false + + - name: BIDSconvertR + url: https://github.com/bidsconvertr/bidsconvertr + comment: | + The BIDSconvertR R package provides a user-friendly workflow with graphical user interfaces. + It consists of the following steps: + (i) convert DICOM data to NIfTI data using dcm2niix + (ii) structure this data according to the BIDS specification + (iii) provide the papayaWidget viewer for inspecting the images + data_types: + - MRI + expected_input: + - DICOM + language: + - R + documentation: https://bidsconvertr.github.io/ + GUI: true + license: GPL-3.0 + + - name: ezBIDS + url: https://github.com/brainlife/ezbids + data_types: + - MRI + - ASL + - events + expected_input: + - DICOM + - NIfTI/JSON + - events (tsv, csv, txt, out, xlsx) + language: + - Vue + - TypeScript + - Javascript + - Python + - shell + documentation: https://brainlife.io/docs/using_ezBIDS/ + comment: | + A web-based BIDS conversion tool with four unique features: + (1) No installation or programming requirements. + (2) Handling of both imaging and task events data and metadata. + (3) Semi-automated inference and guidance for adherence to BIDS. + (4) Multiple data management options, including download BIDS data + to local system, or transfer to OpenNeuro.org or to brainlife.io. + GUI: true + license: MIT + + - name: mercure-dcm2bids + url: https://github.com/mercure-imaging/mercure-dcm2bids + data_types: + - MRI + expected_input: + - DICOM + language: + - Python + documentation: https://github.com/mercure-imaging/mercure-dcm2bids + comment: | + A containerized app that can be used to perform BIDS conversion of + DICOM studies sent directly to mercure from a scanner or PACS. mercure + is an open-source DICOM orchestration platform that can integrate + containerized apps into clinical workflows. It has a graphical user + interface making it easy to setup and manage BIDS configurations for + multiple protocols. The Dcm2Bids tool is used for conversion. + distribution: + - name: dockerhub + url: https://hub.docker.com/r/mercureimaging/mercure-dcm2bids + GUI: true + license: GPL-3.0 + + +- group: + name: EEG, MEG, iEEG converters + members: + - name: BIDSme + url: https://github.com/nbeliy/bidsme + data_types: + - MRI + - EEG + expected_input: + - DICOM + - Nifti + - Brain Vision + language: + - Python + documentation: https://gitlab.uliege.be/CyclotronResearchCentre/Public/bidstools/bidsme/bidsme_example/-/tree/master/example1 + comment: + license: GPL-2.0 + + - name: MNE-BIDS + url: https://github.com/mne-tools/mne-bids + data_types: + - MEG + - EEG + - iEEG + - NIRS + expected_input: + - raw MEG for BIDS conversion + - raw EEG for BIDS conversion + - raw iEEG for BIDS conversion + - raw NIRS for BIDS conversion + - BIDS dataset for reading + language: + - Python + documentation: https://mne.tools/mne-bids + distribution: + - name: pypi + url: https://pypi.org/project/mne-bids + - name: conda-forge + url: https://anaconda.org/conda-forge/mne-bids/ + comment: MNE-BIDS is a Python package that allows you to read and write BIDS-compatible datasets with the help of MNE-Python. + GUI: false + license: BSD-3-Clause + + - name: EEGLAB + url: https://github.com/sccn/eeglab + data_types: + - MEG + - EEG + expected_input: + - EDF + - BDF + - Brain Vision Exchange Format + - EEGLAB .set files + language: + - MATLAB + documentation: https://eeglab.org/tutorials/04_Import/BIDS.html + comment: See plugins + + - name: FieldTrip - data2bids + url: https://github.com/fieldtrip/fieldtrip + data_types: + - EEG + - MEG + - iEEG + - behavioral + - MRI (anat and func) + expected_input: + - any EEG or MEG file format + - NBS Presentation logfiles + - DICOM + - nifti + language: + - MATLAB + documentation: https://www.fieldtriptoolbox.org/example/bids/ + license: GPL-3.0 + + - name: Biscuit + url: https://github.com/Macquarie-MEG-Research/Biscuit + data_types: + - MEG + expected_input: + - ??? + language: + - Python + documentation: https://macquarie-meg-research.github.io/Biscuit/ + comment: GUI for easy MEG to BIDS conversion + GUI: true + license: MIT + + - name: sovabids + url: https://github.com/yjmantilla/sovabids + data_types: + - EEG + expected_input: + - ??? + language: + - Python + documentation: https://sovabids.readthedocs.io/en/latest/ + comment: A Python package for the automatic conversion of EEG datasets to the BIDS standard, with a focus on making the most out of metadata. + + - name: EEG2BIDS + url: https://github.com/aces/EEG2BIDS + data_types: + - EEG + expected_input: + - ??? + language: + - Javascript + - Python + documentation: + comment: A tool for converting raw EEG and iEEG data into the BIDS standard data structure, prepared for LORIS (Longitudinal Online Research and + Imaging System). + + +- group: + name: Physiological data converters + comment: + members: + - name: phys2bids + url: https://github.com/physiopy/phys2bids + data_types: + - phsyiological + expected_input: + - Acqknowledge + - Labchart + - GE physiological files + language: + - Python + distribution: + - name: pypi + url: https://pypi.org/project/phys2bids + documentation: https://phys2bids.readthedocs.io/en/latest/ + comment: Python3 library to format physiological files in BIDS. + license: Apache-2.0 + + - name: bidsphysio + url: https://github.com/cbinyu/bidsphysio + data_types: + - physiological + expected_input: + - CMRR + - AcqKnowledge + - Siemens PMU + distribution: + - name: pypi + url: https://pypi.org/project/bidsphysio/ + - name: dockerhub + url: https://hub.docker.com/r/cbinyu/bidsphysio/ + language: + - Python + documentation: + comment: Converts physio data to BIDS physiological recording + GUI: false + + +- group: + name: "'From BIDS' converters" + comment: Converters that take a BIDS dataset as input to convert it into something else. Not mentioned here are the many software that can import a + BIDS data as data structure they are more familiar with. + members: + - name: BIDS2ISATab + url: https://github.com/bids-standard/BIDS2ISATab + data_types: + - From BIDS + expected_input: + - BIDS + language: + - Python + comment: Extract ISA-Tab compatible metadata from BIDS + license: Apache-2.0 + + - name: BIDSto3col + url: https://github.com/bids-standard/bidsutils/tree/master/BIDSto3col + data_types: + - From BIDS + - TSV + expected_input: + - BIDS + language: + - shell + - Python + comment: Reads BidsTSV and then creates 3 column event files, one per event type if a "trial_type" column is found. + + - name: BIDS2NDA + url: https://github.com/bids-standard/BIDS2NDA + data_types: + - From BIDS + expected_input: + - BIDS + language: + - Python + comment: Extract NIHM Data Archive compatible metadata from BIDS + license: Apache-2.0 + + - name: bids2xar - for XNAT import + url: https://github.com/lwallace23/bids2xar + data_types: + - From BIDS + - MRI # not sure + expected_input: + - BIDS + language: + - Python + comment: Convert BIDS data set into XNAT XAR bundles + + - name: BIDS2NIDM + url: https://github.com/incf-nidash/PyNIDM/blob/master/nidm/experiment/tools/nidm2bids.py + data_types: + - From BIDS + expected_input: + - BIDS + language: + - Python + comment: | + This program will convert a NIDM-Experiment RDF document to a BIDS + dataset. + + - name: AFNI BIDS-tools + url: https://github.com/nih-fmrif/BIDS-tools + data_types: + - From BIDS + - MRI + expected_input: + - BIDS # not sure about that one + language: + - shell + - Python + comment: ARCHIVED - Scripts, tools, and documents on creating, parsing, and working with BIDS-structured data sets. + + +- group: + name: Miscellaneous + comment: Not exactly BIDS converters but are common tools that can used by other BIDS converters. + members: + - name: convert-eprime + url: https://github.com/tsalo/convert-eprime + data_types: + - other converters + - behavioral + expected_input: + - E-Prime log files + language: + - Python + comment: Python functions to convert E-Prime files to CSVs. Not currently being developed. + license: MIT + + - name: DCM2NIIx + url: https://github.com/neurolabusc/dcm2niix + data_types: + - other converters + - DICOM + - PAR/REC + expected_input: + - ??? + language: + - C++ (compiled versions available from NITRC) + comment: dcm2nii DICOM to NIfTI converter + + - name: DICM2NII + url: https://github.com/xiangruili/dicm2nii + data_types: + - other converters + - DICOM + expected_input: + - DICOM + language: + - MATLAB + comment: dcm2nii DICOM to NIfTI converter + license: BSD-2 + + - name: sim2bids + url: https://github.com/dissagaliyeva/sim2bids + data_types: + - computational model + expected_input: + - CSV/TSV/DAT/Numpy + - arrays/HDF5 + - zip folders + - code files in MATLAB/Python/R + language: + - Python + comment: GUI to easily convert simulation results to BIDS format, according to BEP + 34 . + license: MIT diff --git a/data/tools/converters.yml b/data/tools/converters.yml index 09d9811c..100d1a66 100644 --- a/data/tools/converters.yml +++ b/data/tools/converters.yml @@ -2,7 +2,6 @@ # template # - name: # url: URL to repo -# # data_types: # - MRI, EEG, MEG, iEEG, events, physio # expected_input: @@ -18,9 +17,9 @@ # comment: # GUI: false -- group: - name: MRI and PET converters - members: + +# MRI and PET converters +- members: - name: bidsify url: https://github.com/NILAB-UvA/bidsify data_types: @@ -159,6 +158,7 @@ - name: Horos (Osirix) export plugin url: https://github.com/mslw/horos-bids-output data_types: + - MRI # not sure expected_input: - ??? language: @@ -226,6 +226,7 @@ - name: Clinica url: https://github.com/aramis-lab/clinica data_types: + - MRI # not sure expected_input: - ADNI - AIBL @@ -241,6 +242,7 @@ - name: niix2bids url: https://github.com/benoitberanger/niix2bids data_types: + - MRI # not sure expected_input: - Nifti converted from DICOM using dcm2niix language: @@ -292,6 +294,7 @@ comment: | Convert DICOM and NIFTI data to the ASL-BIDS format. data_types: + - MRI - ASL expected_input: - DICOM @@ -309,6 +312,7 @@ Dartmouth College. data_types: - small-animal MRI + - MRI expected_input: - Bruker ParaVision - NIfTI @@ -384,3 +388,279 @@ url: https://hub.docker.com/r/mercureimaging/mercure-dcm2bids GUI: true license: GPL-3.0 + + +# EEG, MEG, iEEG converters + - name: BIDSme + url: https://github.com/nbeliy/bidsme + data_types: + - MRI + - EEG + expected_input: + - DICOM + - Nifti + - Brain Vision + language: + - Python + documentation: https://gitlab.uliege.be/CyclotronResearchCentre/Public/bidstools/bidsme/bidsme_example/-/tree/master/example1 + comment: + license: GPL-2.0 + + - name: MNE-BIDS + url: https://github.com/mne-tools/mne-bids + data_types: + - MEG + - EEG + - iEEG + - NIRS + expected_input: + - raw MEG for BIDS conversion + - raw EEG for BIDS conversion + - raw iEEG for BIDS conversion + - raw NIRS for BIDS conversion + - BIDS dataset for reading + language: + - Python + documentation: https://mne.tools/mne-bids + distribution: + - name: pypi + url: https://pypi.org/project/mne-bids + - name: conda-forge + url: https://anaconda.org/conda-forge/mne-bids/ + comment: MNE-BIDS is a Python package that allows you to read and write BIDS-compatible datasets with the help of MNE-Python. + GUI: false + license: BSD-3-Clause + + - name: EEGLAB + url: https://github.com/sccn/eeglab + data_types: + - MEG + - EEG + expected_input: + - EDF + - BDF + - Brain Vision Exchange Format + - EEGLAB .set files + language: + - MATLAB + documentation: https://eeglab.org/tutorials/04_Import/BIDS.html + comment: See plugins + + - name: FieldTrip - data2bids + url: https://github.com/fieldtrip/fieldtrip + data_types: + - EEG + - MEG + - iEEG + - behavioral + - MRI (anat and func) + expected_input: + - any EEG or MEG file format + - NBS Presentation logfiles + - DICOM + - nifti + language: + - MATLAB + documentation: https://www.fieldtriptoolbox.org/example/bids/ + license: GPL-3.0 + + - name: Biscuit + url: https://github.com/Macquarie-MEG-Research/Biscuit + data_types: + - MEG + expected_input: + - ??? + language: + - Python + documentation: https://macquarie-meg-research.github.io/Biscuit/ + comment: GUI for easy MEG to BIDS conversion + GUI: true + license: MIT + + - name: sovabids + url: https://github.com/yjmantilla/sovabids + data_types: + - EEG + expected_input: + - ??? + language: + - Python + documentation: https://sovabids.readthedocs.io/en/latest/ + comment: A Python package for the automatic conversion of EEG datasets to the BIDS standard, with a focus on making the most out of metadata. + + - name: EEG2BIDS + url: https://github.com/aces/EEG2BIDS + data_types: + - EEG + expected_input: + - EDF, Set: EEG or sEEG + language: + - Javascript + - Python + documentation: https://github.com/aces/EEG2BIDS + comment: A tool for converting raw EEG and iEEG data into the BIDS standard data structure, prepared for LORIS (Longitudinal Online Research and + Imaging System). + + +# Physiological data converters + - name: phys2bids + url: https://github.com/physiopy/phys2bids + data_types: + - phsyiological + expected_input: + - Acqknowledge + - Labchart + - GE physiological files + language: + - Python + distribution: + - name: pypi + url: https://pypi.org/project/phys2bids + documentation: https://phys2bids.readthedocs.io/en/latest/ + comment: Python3 library to format physiological files in BIDS. + license: Apache-2.0 + + - name: bidsphysio + url: https://github.com/cbinyu/bidsphysio + data_types: + - physiological + expected_input: + - CMRR + - AcqKnowledge + - Siemens PMU + distribution: + - name: pypi + url: https://pypi.org/project/bidsphysio/ + - name: dockerhub + url: https://hub.docker.com/r/cbinyu/bidsphysio/ + language: + - Python + documentation: + comment: Converts physio data to BIDS physiological recording + GUI: false + + +# 'From BIDS' converters +# Comment: Converters that take a BIDS dataset as input to convert it into something else. +# Not mentioned here are the many software that can import a BIDS data as data structure +# they are more familiar with. + - name: BIDS2ISATab + url: https://github.com/bids-standard/BIDS2ISATab + data_types: + - BIDS + expected_input: + - BIDS + language: + - Python + comment: Extract ISA-Tab compatible metadata from BIDS + license: Apache-2.0 + + - name: BIDSto3col + url: https://github.com/bids-standard/bidsutils/tree/master/BIDSto3col + data_types: + - TSV + expected_input: + - BIDS + language: + - shell + - Python + comment: Reads BidsTSV and then creates 3 column event files, one per event type if a "trial_type" column is found. + + - name: BIDS2NDA + url: https://github.com/bids-standard/BIDS2NDA + data_types: + - BIDS + expected_input: + - BIDS + language: + - Python + comment: Extract NIHM Data Archive compatible metadata from BIDS + license: Apache-2.0 + + - name: bids2xar - for XNAT import + url: https://github.com/lwallace23/bids2xar + data_types: + - MRI # not sure + expected_input: + - BIDS + language: + - Python + comment: Convert BIDS data set into XNAT XAR bundles + + - name: BIDS2NIDM + url: https://github.com/incf-nidash/PyNIDM/blob/master/nidm/experiment/tools/nidm2bids.py + data_types: + - BIDS + expected_input: + - BIDS + language: + - Python + comment: | + This program will convert a NIDM-Experiment RDF document to a BIDS + dataset. + + - name: AFNI BIDS-tools + url: https://github.com/nih-fmrif/BIDS-tools + data_types: + - MRI + expected_input: + - BIDS # not sure about that one + language: + - shell + - Python + comment: ARCHIVED - Scripts, tools, and documents on creating, parsing, and working with BIDS-structured data sets. + + +# Miscellaneous +# Comment: Not exactly BIDS converters but are common tools that can used by other BIDS converters. + - name: convert-eprime + url: https://github.com/tsalo/convert-eprime + data_types: + - MISC + - behavioral + expected_input: + - E-Prime log files + language: + - Python + comment: Python functions to convert E-Prime files to CSVs. Not currently being developed. + license: MIT + + - name: DCM2NIIx + url: https://github.com/neurolabusc/dcm2niix + data_types: + - MISC + - DICOM + - PAR/REC + expected_input: + - ??? + language: + - C++ (compiled versions available from NITRC) + comment: dcm2nii DICOM to NIfTI converter + + - name: DICM2NII + url: https://github.com/xiangruili/dicm2nii + data_types: + - MISC + - DICOM + expected_input: + - DICOM + language: + - MATLAB + comment: dcm2nii DICOM to NIfTI converter + license: BSD-2 + + - name: sim2bids + url: https://github.com/dissagaliyeva/sim2bids + data_types: + - MISC + - computational model + expected_input: + - CSV/TSV/DAT/Numpy + - arrays/HDF5 + - zip folders + - code files in MATLAB/Python/R + language: + - Python + comment: GUI to easily convert simulation results to BIDS format, according to BEP + 34 . + license: MIT diff --git a/data/tools/from_BIDS_converters.yml b/data/tools/from_BIDS_converters.yml deleted file mode 100644 index 997064bf..00000000 --- a/data/tools/from_BIDS_converters.yml +++ /dev/null @@ -1,90 +0,0 @@ ---- -# template -# - name: -# url: URL to repo -# data_types: -# - MRI, EEG, MEG, iEEG, events -# expected_input: -# - DICOM, PAR/REC, tsv -# distribution: -# - name: pypi -# url: https://pypi.org/project/??? -# - name: dockerhub -# url: https://hub.docker.com/??? -# language: -# - Python, MATLAB -# documentation: URL to documentation -# comment: -# GUI: false - - -- group: - name: "'From BIDS' converters" - comment: Converters that take a BIDS dataset as input to convert it into something else. Not mentioned here are the many software that can import a - BIDS data as data structure they are more familiar with. - members: - - name: BIDS2ISATab - url: https://github.com/bids-standard/BIDS2ISATab - data_types: - expected_input: - - BIDS - language: - - Python - comment: Extract ISA-Tab compatible metadata from BIDS - license: Apache-2.0 - - - name: BIDSto3col - url: https://github.com/bids-standard/bidsutils/tree/master/BIDSto3col - data_types: - - TSV - expected_input: - - BIDS - language: - - shell - - Python - comment: Reads BidsTSV and then creates 3 column event files, one per event type if a "trial_type" column is found. - - - - name: BIDS2NDA - url: https://github.com/bids-standard/BIDS2NDA - data_types: - expected_input: - - BIDS - language: - - Python - comment: Extract NIHM Data Archive compatible metadata from BIDS - license: Apache-2.0 - - - name: bids2xar - for XNAT import - url: https://github.com/lwallace23/bids2xar - data_types: - - MRI # not sure - expected_input: - - BIDS - language: - - Python - comment: Convert BIDS data set into XNAT XAR bundles - - - - name: BIDS2NIDM - url: https://github.com/incf-nidash/PyNIDM/blob/master/nidm/experiment/tools/nidm2bids.py - data_types: - expected_input: - - BIDS - language: - - Python - comment: | - This program will convert a NIDM-Experiment RDF document to a BIDS - dataset. - - - - name: AFNI BIDS-tools - url: https://github.com/nih-fmrif/BIDS-tools - data_types: - - MRI - expected_input: - - BIDS # not sure about that one - language: - - shell - - Python - comment: ARCHIVED - Scripts, tools, and documents on creating, parsing, and working with BIDS-structured data sets. diff --git a/data/tools/other_converters.yml b/data/tools/other_converters.yml deleted file mode 100644 index 55de7288..00000000 --- a/data/tools/other_converters.yml +++ /dev/null @@ -1,71 +0,0 @@ ---- -# template -# - name: -# url: URL to repo -# data_types: -# - MRI, EEG, MEG, iEEG, events -# expected_input: -# - DICOM, PAR/REC, tsv -# distribution: -# - name: pypi -# url: https://pypi.org/project/??? -# - name: dockerhub -# url: https://hub.docker.com/??? -# language: -# - Python, MATLAB -# documentation: URL to documentation -# comment: -# GUI: false - -- group: - name: Miscellaneous - comment: Not exactly BIDS converters but are common tools that can used by other BIDS converters. - members: - - name: convert-eprime - url: https://github.com/tsalo/convert-eprime - data_types: - - behavioral - expected_input: - - E-Prime log files - language: - - Python - comment: Python functions to convert E-Prime files to CSVs. Not currently being developed. - license: MIT - - - name: DCM2NIIx - url: https://github.com/neurolabusc/dcm2niix - data_types: - - DICOM - - PAR/REC - expected_input: - - ??? - language: - - C++ (compiled versions available from NITRC) - comment: dcm2nii DICOM to NIfTI converter - - - - name: DICM2NII - url: https://github.com/xiangruili/dicm2nii - data_types: - - DICOM - expected_input: - - DICOM - language: - - MATLAB - comment: dcm2nii DICOM to NIfTI converter - license: BSD-2 - - - name: sim2bids - url: https://github.com/dissagaliyeva/sim2bids - data_types: - - computational model - expected_input: - - CSV/TSV/DAT/Numpy - - arrays/HDF5 - - zip folders - - code files in MATLAB/Python/R - language: - - Python - comment: GUI to easily convert simulation results to BIDS format, according to BEP - 34 . - license: MIT diff --git a/data/tools/physio_converters.yml b/data/tools/physio_converters.yml deleted file mode 100644 index 8935314b..00000000 --- a/data/tools/physio_converters.yml +++ /dev/null @@ -1,58 +0,0 @@ ---- -# template -# - name: -# url: URL to repo -# data_types: -# - physio -# expected_input: -# - DICOM, PAR/REC, tsv -# distribution: -# - name: pypi -# url: https://pypi.org/project/??? -# - name: dockerhub -# url: https://hub.docker.com/??? -# language: -# - Python, MATLAB -# documentation: URL to documentation -# comment: -# GUI: false - -- group: - name: Physiological data converters - comment: - members: - - name: phys2bids - url: https://github.com/physiopy/phys2bids - data_types: - - phsyiological - expected_input: - - Acqknowledge - - Labchart - - GE physiological files - language: - - Python - distribution: - - name: pypi - url: https://pypi.org/project/phys2bids - documentation: https://phys2bids.readthedocs.io/en/latest/ - comment: Python3 library to format physiological files in BIDS. - license: Apache-2.0 - - - name: bidsphysio - url: https://github.com/cbinyu/bidsphysio - data_types: - - physiological - expected_input: - - CMRR - - AcqKnowledge - - Siemens PMU - distribution: - - name: pypi - url: https://pypi.org/project/bidsphysio/ - - name: dockerhub - url: https://hub.docker.com/r/cbinyu/bidsphysio/ - language: - - Python - documentation: - comment: Converts physio data to BIDS physiological recording - GUI: false diff --git a/docs/faq/general.md b/docs/faq/general.md index 6564637c..a056ac87 100644 --- a/docs/faq/general.md +++ b/docs/faq/general.md @@ -28,7 +28,7 @@ BIDS references are centralized in a [zotero group](https://www.zotero.org/group We strongly recommend you pick a BIDS converter to help you convert your data. -A list of converters can be found [on the BIDS website](../tools/converters/index.md) +A list of converters can be found [on the BIDS website](../tools/converters.md) Also look at [the list of tutorials and information about conversions](../getting_started/tutorials/conversion/index.md). diff --git a/docs/faq/mri.md b/docs/faq/mri.md index ba9185a1..7d3b4a20 100644 --- a/docs/faq/mri.md +++ b/docs/faq/mri.md @@ -9,7 +9,7 @@ A couple of BIDS converters can work with nifti files: - explore asl - data2bids -See the list of converters [here](../tools/converters/index.md). +See the list of converters [here](../tools/converters.md). **However**... diff --git a/docs/getting_started/resources/links.md b/docs/getting_started/resources/links.md index 1c07bde6..83cd4e38 100644 --- a/docs/getting_started/resources/links.md +++ b/docs/getting_started/resources/links.md @@ -1,7 +1,7 @@ ## Converters If you are looking for tools to convert your data into BIDS, please see the -[list of converters on the BIDS website](../../tools/converters/index.md) +[list of converters on the BIDS website](../../tools/converters.md) ## Python tools diff --git a/docs/getting_started/tutorials/conversion/mri.md b/docs/getting_started/tutorials/conversion/mri.md index 935f48b9..8e10a7c2 100644 --- a/docs/getting_started/tutorials/conversion/mri.md +++ b/docs/getting_started/tutorials/conversion/mri.md @@ -2,7 +2,7 @@ We strongly recommend you pick a BIDS converter to help you convert your data. -A list of converters can be found [on this website](../../../tools/converters/index.md) +A list of converters can be found [on this website](../../../tools/converters.md) Below is a link to a tutorial for converting data using heudiconv. diff --git a/docs/tools/converters.md b/docs/tools/converters.md new file mode 100644 index 00000000..6bcf7659 --- /dev/null +++ b/docs/tools/converters.md @@ -0,0 +1,40 @@ +# Converters + +The following list of converters is provided to help you convert your raw data into a BIDS compliant dataset. + +## MRI Converters + +Converters for processing MRI data. + +{{ MACROS___generate_converter_table(file="converters.yml", data_type="MRI") }} + +## PET Converters + +Converters for processing PET data. + +{{ MACROS___generate_converter_table(file="converters.yml", data_type="PET") }} + +## EEG/MEEG/iEEG Converters + +Converters for processing EEG, MEEG, and/or iEEG data. + +{{ MACROS___generate_converter_table(file="converters.yml", data_type="EEG") }} + +## Physio Converters + +Physiological data converters. + +{{ MACROS___generate_converter_table(file="converters.yml", data_type="phsyiological") }} + +## BIDS Converters + +Converters that take a BIDS dataset as input to convert it into something else. +Not mentioned here are the many software that can import a BIDS data as data structure they are more familiar with. + +{{ MACROS___generate_converter_table(file="converters.yml", data_type="BIDS") }} + +## Miscellaneous Converters + +Not exactly BIDS converters but are common tools that can used by other BIDS converters. + +{{ MACROS___generate_converter_table(file="converters.yml", data_type="MISC") }} diff --git a/docs/tools/converters/index.md b/docs/tools/converters/index.md deleted file mode 100644 index 3af420a2..00000000 --- a/docs/tools/converters/index.md +++ /dev/null @@ -1,3 +0,0 @@ -# Converters - -The following list of converters is provided to help you convert your raw data into a BIDS compliant dataset. diff --git a/docs/tools/converters/meeg.md b/docs/tools/converters/meeg.md deleted file mode 100644 index 3e127804..00000000 --- a/docs/tools/converters/meeg.md +++ /dev/null @@ -1,5 +0,0 @@ -#MEEG -The following list of converters can help you convert EEG, MEG, and iEEG data into BIDS compliant datasets. - - -{{ MACROS___generate_converter_table(file="MEEG_converters.yml") }} diff --git a/docs/tools/converters/mri-pet.md b/docs/tools/converters/mri-pet.md deleted file mode 100644 index 5cf5a180..00000000 --- a/docs/tools/converters/mri-pet.md +++ /dev/null @@ -1,4 +0,0 @@ -#MRI and PET -The following list of converters can help you convert MRI and PET data into BIDS compliant datasets. - -{{ MACROS___generate_converter_table(file="converters.yml") }} diff --git a/docs/tools/converters/others.md b/docs/tools/converters/others.md deleted file mode 100644 index df5d1edc..00000000 --- a/docs/tools/converters/others.md +++ /dev/null @@ -1,7 +0,0 @@ -# Other converters - -The following tools can help you with miscellaneous tasks that may require you to convert to and from BIDS to work with certain, specific tools. These tools are very workflow specific and may not apply to the majority of projects. - -{{ MACROS___generate_converter_table(file="from_BIDS_converters.yml") }} - -{{ MACROS___generate_converter_table(file="other_converters.yml") }} diff --git a/docs/tools/converters/physio.md b/docs/tools/converters/physio.md deleted file mode 100644 index b76f84fc..00000000 --- a/docs/tools/converters/physio.md +++ /dev/null @@ -1,4 +0,0 @@ -#Physio Data -The following list of converters can help you convert physiological data into BIDS compliant datasets. - -{{ MACROS___generate_converter_table(file="physio_converters.yml") }} diff --git a/docs/tools/index.md b/docs/tools/index.md index 31cb38a8..ac8683cd 100644 --- a/docs/tools/index.md +++ b/docs/tools/index.md @@ -2,12 +2,18 @@ There is a rich ecosystem of tools to help you work with BIDS datasets. -- Converters: There are many [converters](./converters/index.md) -to help you go from your sourcedata to have a BIDS dataset. -- BIDS Validator: The [BIDS validator](./validator.md) is there to ensure that your BIDS dataset is valid and will work with BIDS Apps without any obvious issues. -- BIDS Apps: You can use [BIDS apps](./bids-apps.md) -(automated pipelines that can be used as Docker or Apptainer images) -to process your BIDS datasets. -- Misc: There are many other [tools](./others.md) to help you work with, edit, or curate BIDS datasets. +- Converters: There are many [converters](./converters.md) + to help you go from your sourcedata to have a BIDS dataset. + +- BIDS Validator: The [BIDS validator](./validator.md) is there + to ensure that your BIDS dataset is valid and will work with BIDS Apps + without any obvious issues. + +- BIDS Apps: You can use [BIDS apps](./bids-apps.md) + (automated pipelines that can be used as Docker or Apptainer images) + to process your BIDS datasets. + +- Misc: There are many other [tools](./others.md) + to help you work with, edit, or curate BIDS datasets. diff --git a/macros/macros.py b/macros/macros.py index d577db20..467fed9f 100644 --- a/macros/macros.py +++ b/macros/macros.py @@ -22,12 +22,12 @@ def return_jinja_env() -> Environment: ) -def generate_converter_table(file: str) -> str: +def generate_converter_table(file: str, data_type: str) -> str: input_file = WEBSITE_DATA_DIR / "tools" / file content = yaml.load(input_file) env = return_jinja_env() template = env.get_template("converters_table_md.jinja") - return template.render(include=content[0]) + return template.render(include=content[0], data_type=data_type) def generate_tools_table(file: str, category=None) -> str: diff --git a/mkdocs.yml b/mkdocs.yml index be20e93b..30213370 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -165,12 +165,7 @@ nav: - tools/validator.md - tools/bids-apps.md - tools/others.md - - Converters: - - tools/converters/index.md - - tools/converters/mri-pet.md - - tools/converters/meeg.md - - tools/converters/physio.md - - tools/converters/others.md + - tools/converters.md - Datasets: - datasets/index.md - FAQ: diff --git a/templates/converters_table_md.jinja b/templates/converters_table_md.jinja index d437df02..d3e26a27 100644 --- a/templates/converters_table_md.jinja +++ b/templates/converters_table_md.jinja @@ -1,13 +1,14 @@ -# {{ include.name }} +{# # {{ data_type }} Converters Table #} -{{ include.comment }} | Name | Expected input | Language | Distribution | Updated | | :---: | :------------ | :------ | :---------- | :-----: | +{% set accepted_data_type = data_type %} {# Set accepted data type to include in table #} {% for converter in include.members %} -{% set converter_url = converter.url %} -{% if converter.documentation %} - {% set converter_url = converter.documentation %} -{% endif %} -| [{{ converter.name }}]( {{ converter_url }} "{{ converter.comment | replace("\n", " ") }}" ) | {% for input in converter.expected_input %} {{ input }}
{% endfor %} | {% for lang in converter.language %} {{ lang }}
{% endfor %} | {% for entry in converter.distribution %} {% if entry.name == "pypi" %} [![PyPI version](https://badge.fury.io/py/{{ entry.url | replace("https://pypi.org/project/", "") }}.svg)]({{ entry.url }})
{% elif entry.name == "dockerhub" %} [![dockerhub pulls](https://img.shields.io/docker/pulls/{{ entry.url | replace("https://hub.docker.com/r/", "")}}.svg)]({{ entry.url }})
{% elif entry.name == "conda-forge" %} [![conda forge]({{ entry.url }}badges/version.svg)]({{ entry.url }})
{% else %} [entry.name](entry.url)
{% endif %} {% endfor %} | !["GitHub last commit"](https://img.shields.io/github/last-commit/{{ converter.url | replace("https://github.com/", "") }}?style=plastic) | + {% if converter.data_types is defined %} + {% if data_type in converter.data_types %} + {% set converter_url = converter.documentation if converter.documentation else converter.url %} + | [{{ converter.name }}]( {{ converter_url }} "{{ converter.comment | replace("\n", " ") }}" ) | {% for input in converter.expected_input or ["N/A"] %} {{ input }}
{% endfor %} | {% for lang in converter.language or ["N/A"] %} {{ lang }}
{% endfor %} | {% for entry in converter.distribution or [] %} {% if entry.name == "pypi" %} [![PyPI version](https://badge.fury.io/py/{{ entry.url | replace("https://pypi.org/project/", "") }}.svg)]({{ entry.url }})
{% elif entry.name == "dockerhub" %} [![dockerhub pulls](https://img.shields.io/docker/pulls/{{ entry.url | replace("https://hub.docker.com/r/", "")}}.svg)]({{ entry.url }})
{% elif entry.name == "conda-forge" %} [![conda forge]({{ entry.url }}badges/version.svg)]({{ entry.url }})
{% else %} [entry.name](entry.url)
{% endif %} {% endfor %} | !["GitHub last commit"](https://img.shields.io/github/last-commit/{{ converter.url | replace("https://github.com/", "") }}?style=plastic) | + {% endif %} + {% endif %} {% endfor %}