Library for standardized data input/output for musculoskeletal imaging, based on BIDS
Project description
ormir-mids
I/O of Medical Image Data Structure (MIDS) for Open and Reproducible Musculoskeletal Imaging Research (ORMIR). Based on the BIDS data structure.
[!NOTE]
This package is a fork of muscle-bids for muscle MR imaging data.
Tutorial
Main contributors
- Francesco Santini
- Donnie Cameron
- Leonardo Barzaghi
- Judith Cueto Fernandez
- Jilmen Quintiens
- Lee Youngjun
- Jukka Hirvasniemi
- Gianluca Iori
- Serena Bonaretti
Installation
Dependencies
To install ormir-mids
, run the code below, noting this list of dependencies.
It is recommended to install ormir-mids
in a separate virtual environment:
conda env create -n ormir-mids
conda activate ormir-mids
Clone the git repository:
git clone https://github.com/ormir-mids/ormir-mids.git
Now we can install the package using pip
. This will also install the required dependencies.
cd ormir-mids
pip install .
pip install --upgrade nibabel # the default nibabel has bugs
Usage
ormir-mids
can be used in two ways:
- Running
dcm2omids
as an executable to convert DICOM data to the MIDS format. - Importing
ormir-mids
as a Python module to find, load, and interrogate ORMIR-MIDS-format data.
1. Converting DICOMs to the ORMIR-MIDS structure
The commandline script is called dcm2omids.exe
. To view the commandline script help type
dcm2omids -h
To use ormir-mids
within Python, import the following modules
from ormir_mids.utils.io import find_bids, load_bids
import nibabel as nib
For a detailed description of how to use ormir-mids
see the following notebook
ormir-mids usage: dcm2mbids
2. Exploring medical volumes with ORMIR-MIDS
ormir-mids
can be used within Python to load, manipulate, and visualize medical volume datasets, without having to convert them to the ORMIR-MIDS structure.
- Load a DICOM file to a MedicalVolume object
from ormir_mids.utils.io import load_dicom
mv = load_dicom('<Path-to-DICOM-file>')
- Slice the volume. This will create a separate subvolume. Metadata will be sliced appropriately.
mv_subvolume = mv[50:90, 50:90, 30:70]
- Convert volume to ITK image with SimpleITK
mv_itk = mv.to_sitk()
Examples of how to use ormir-mids
for common data handling, image manipulation and processing tasks within Python can be found in this notebook
ormir-mids usage: MedicalVolume class
Acknowledgement
The development of ORMIR-MIDS specification and package started during the 2nd ORMIR workshop Sharing and Curating Open Data in Musculoskeletal Imaging Research and is currently ongoing. ORMIR-MIDS is an extension of muscle-BIDS, which was partly developed during the 1st ORMIR workshop Building the Jupyter Community in Musculoskeletal Imaging Research.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for ormir_mids-0.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cf8b21a3b9a19ad39242ba0e0b521abef989de446c817bab49830fc8570ba313 |
|
MD5 | c541a0f75fff7f29c2e06765b5f714e0 |
|
BLAKE2b-256 | 0e043adeba30f0ffaaa1be67d2ffa086a5935c43115b73074d486f249f14c494 |