bids-standard/bids-matlab

MATLAB / Octave tools for BIDS datasets

MATLABShellOthermatlabmegeegmrioctavepetneuroimagingbidsieegclosember
This is stars and forks stats for /bids-standard/bids-matlab repository. As of 30 Apr, 2024 this repository has 44 stars and 28 forks.

BIDS for MATLAB / Octave This repository aims at centralising MATLAB/Octave tools to interact with BIDS (Brain Imaging Data Structure) datasets. For more information about BIDS, visit https://bids.neuroimaging.io/. Join our chat on the BIDS-MATLAB channel on the brainhack mattermost and our google group. See also PyBIDS for Python and the BIDS Starter Kit. Installation Download, unzip this repository and add its content to the MATLAB/Octave path. unzip('https://github.com/bids-standard/bids-matlab/archive/master.zip'); addpath('bids-matlab-master'); Or clone it with git: git clone https://github.com/bids-standard/bids-matlab.git and then add it to your MATLAB/Octave path. addpath('bids-matlab'); Get the latest features The latest features of bids-matlab that are in development are in our dev branch. To access them you can either download the dev branch from there: https://github.com/bids-standard/bids-matlab/tree/dev Or clone it: git clone --branch dev https://github.com/bids-standard/bids-matlab.git Or you can check it out the dev branch after the adding this official bids-matlab repository as a remote. git add remote upstream https://github.com/bids-standard/bids-matlab.git git checkout upstream/dev Features What this toolbox can do read the layout of a BIDS dataset (see bids.layout), perform queries on that layout to get information about the subjects, sessions, runs, modalities, metadata... contained within that dataset (see bids.query), parse the layout of "BIDS-derivative compatible" datasets (like those generated by fMRIprep), create BIDS compatible filenames or folder structures for raw or derivatives datasets (bids.File, bids.util.mkdir, bids.dataset_description), do basic copying of files to help initialize a derivative dataset to start a new analysis (bids.copy_to_derivative), generate a human readable report of the content of BIDS data set containing anatomical MRI, functional MRI, diffusion weighted imaging, field map data (see bids.report) create summary figures listing the number of files for each subject / session and and imaging modality (see bids.diagnostic) read and write JSON files (see bids.util.jsondecode and bids.util.jsonwrite) provided that the right dependencies are installed, read and write TSV files (see bids.util.tsvread and bids.util.tsvwrite) access and query the BIDS schema (bids.schema) access, query and create basic transformations for the BIDS statistical model (bids.Model and bids.transformers) The behavior of this toolbox assumes that it is interacting with a valid BIDS dataset that should have been validated using BIDS-validator. If the Node.js version of the validator is installed on your computer, you can call it from the matlab prompt using bids.validate. Just be aware that any unvalidated components may produce undefined behavior. Although, if you're BIDS-y enough, the behavior may be predictable. What this toolbox cannot do... yet generate human readable reports of the content of BIDS data with EEG, MEG, iEEG, physio and events data, What will this toolbox most likely never do act as a Matlab / Octave based BIDS-validator act as a BIDS converter implement reading / writing capabilities for the different modality-specific data format that exist in BIDS (.nii, .eeg, .ds, .fif...) Usage BIDS matlab is structured as package, so you can easily access functions in subfolders that start with +. To use the +bids/layout.m function: BIDS = bids.layout('/home/data/ds000117'); bids.query(BIDS, 'subjects') To use the +bids/+util/jsondecode.m function: content = bids.util.jsondecode('/home/data/some_json_file.json'); A tutorial is available as a Jupyter Notebook and can be run interactively via Binder. Requirements BIDS-MATLAB works with: Octave 5.2.0 or newer MATLAB R2014a or newer We aim for compatibility with the latest stable release of Octave at any time. Compatibility can sometimes also be achieved with older versions of Octave but this is not guaranteed. Reading and writing JSON files If you are using MATLAB R2016b or newer, nothing else needs to be installed. If you are using MATLAB R2016a or older, or using Octave, you need to install a supported JSON library for your MATLAB or Octave. This can be any of: JSONio for MATLAB or Octave SPM12 Implementation Starting point was spm_BIDS.m from SPM12 (documentation) reformatted in a +bids package with dependencies to other SPM functions removed. Other tools (MATLAB only) dicm2nii: A DICOM to BIDS converter imtool3D_BIDS: A 3D viewer for BIDS directory Brainstorm: Comprehensive brain analysis toolbox (includes BIDS import and export and different examples dealing with BIDS datasets (e.g. group analysis from a MEG visual dataset, resting state analysis from OMEGA datasets ) Contributors ✨ Thanks goes to these wonderful people (emoji key): Guillaume💻 🎨 📖 💡 🤔 🚇 🚧 💬 👀 ⚠️ Remi Gau💻 🎨 📖 💡 🤔 🚧 💬 👀 ⚠️ Andrew Janke💻 🎨 📖 🤔 👀 🚇 tanguyduval💻 📖 🤔 Robert Oostenveld💻 📖 🤔 👀 Christopher Madan🖋 Julia Guiomar Niso Galán👀 Michał Szczepanik🚇 🤔 💻 Henk Mutsaerts💻 🤔 Nikita Beliy💻 🤔 👀 Martin Norgaard🐛 🤔 Cyril Pernet💻 🤔 Christophe Phillips🤔 CerenB👀 marcobarilari👀 Michèle MacLean🐛 Jeanne Caron-Guyon🤔 Rotem Botvinik-Nezer🤔 Iqra Shahzad👀 DanielaMariaPinzon🐛 JeanLucAnton🐛 avanaudenhaege🐛 coxroy🐛 🤔 📓 This project follows the all-contributors specification. Contributions of any kind welcome!
Read on GithubGithub Stats Page
repotechsstarsweeklyforksweekly
odis-labs/helixOCamlReasonHTML42000
deepmind/mctxPythonShell2k01580
cure-lab/LTSF-LinearPythonShell1.3k02670
Privoce/vocechat-server-rustRustHTMLShell222+246+1
paritytech/cumulusRustShellHTML62503980
Vectorized/multicallerSolidityShell160080
byrd-polar/fluid-earthJavaScriptSvelteGLSL930160
cfortuner/promptableTypeScriptJavaScriptCSS1.8k01190
moutard/configsVim ScriptLuaPython2010
sdemers/home_configVim ScriptPerlRuby0000