Utils for gathering, aggregation and handling metadata from DICOM files.
Project description
Utils for gathering, aggregation and handling metadata from DICOM files.
Installation
From pip
pip install dicom-csv
or from GitHub
git clone https://github.com/neuro-ml/dicom-csv
cd dicom-csv
pip install -e .
Example join_tree
>>> from dicom_csv import join_tree
>>> folder = '/path/to/folder/'
>>> meta = join_tree(folder, verbose=2)
>>> meta.head(3)
AccessionNumber | AcquisitionDate | ... | WindowCenter | WindowWidth |
---|---|---|---|---|
000002621237 | 20200922 | ... | -500.0 | 1500.0 |
000002621237 | 20200922 | ... | -40.0 | 400.0 |
000002621237 | 20200922 | ... | -500.0 | 1500.0 |
3 rows x 155 columns |
Example load 3D image
from a series of dicom files (each containing 2D image)
>>> from dicom_csv import join_tree, order_series, stack_images
>>> from pydicom import dcmread
>>> from pathlib import Path
>>>
>>> # 1. Collect metadata from all dicom files
>>> folder = Path('/path/to/folder/')
>>> meta = join_tree(folder, verbose=2)
>>>
>>> # 2. Select series to load
>>> uid = '...' # unique identifier of a series you want to load,
>>> # you could list them by `meta.SeriesInstanceUID.unique()`
>>> series = meta.query("SeriesInstanceUID==@uid")
>>>
>>> # 3. Read files & combine them into a single volume
>>> images2d = [dcmread(folder / row[1].PathToFolder / row[1].FileName) for row in series.iterrows()]
>>> image3d = stack_images(order_series(images2d))
Documentation
You can find the documentation here.
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
dicom_csv-0.2.2.tar.gz
(17.1 kB
view hashes)