Python library and app to extract images from DCM in a JSON-based standard format
Project description
Process DCM
About The Project
Python library and app to extract images from DCM files with metadata in a JSON-based standard format
Installation and Usage
pip install process-dcm
Usage: process-dcm [OPTIONS] INPUT_DIR
Process DICOM files in subfolders, extract images and metadata using parallel processing.
Version: 0.4.2
╭─ Arguments ─────────────────────────────────────────────────────────────────────────────────────────────────╮
│ * input_dir TEXT Input directory containing subfolders with DICOM files. [default: None] │
│ [required] │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Options ───────────────────────────────────────────────────────────────────────────────────────────────────╮
│ --image_format -f TEXT Image format for extracted images (png, jpg, webp). [default: png] │
│ --output_dir -o TEXT Output directory for extracted images and metadata. │
│ [default: exported_data] │
│ --group -g Re-group DICOM files in a given folder by AcquisitionDateTime. │
│ --tol -t INTEGER Tolerance in seconds for grouping DICOM files by │
│ AcquisitionDateTime. │
│ [default: 2] │
│ --relative -r Save extracted data in folders relative to _input_dir_. │
│ --n_jobs -j INTEGER Number of parallel jobs. [default: 1] │
│ --mapping -m TEXT Path to CSV containing patient_id to study_id mapping. If not │
│ provided and patient_id is not anonymised, a 'study_2_patient.csv' │
│ file will be generated │
│ --keep -k TEXT Keep the specified fields (p: patient_key, n: names, d: │
│ date_of_birth, D: year-only DOB, g: gender) │
│ --overwrite -w Overwrite existing images if found. │
│ --quiet -q Silence verbosity. │
│ --version -V Prints app version. │
│ --install-completion Install completion for the current shell. │
│ --show-completion Show completion for the current shell, to copy it or customize the │
│ installation. │
│ --help -h Show this message and exit. │
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
For Developers
To run this project locally, you will need to install the prerequisites and follow the installation section.
Prerequisites
This Project depends on the poetry.
-
Install poetry, via
homebreworpipx:brew install poetry
or
pipx install poetry
-
Don't forget to use the python environment you set before and, if using
VScode, apply it there. -
It's optional, but we strongly recommend
commitizen, which follows Conventional Commits
Installation
-
Clone the repo
git clone https://github.com/pontikos-lab/process-dcm cd process-dcm
Bumping Version
We use commitizen, which follows Conventional Commits. The instructions below are only for exceptional cases.
-
Using poetry-bumpversion. Bump the version number by running
poetry version [part] [--dry-run]where[part]ismajor,minor, orpatch, depending on which part of the version number you want to bump.Use
--dry-runoption to check it in advance. -
Push the tagged commit created above and the tag itself, i.e.:
ver_tag=$(poetry version | cut -d ' ' -f2) git tag -a v"$ver_tag" -m "Tagged version $ver_tag" git push git push --tags
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file process_dcm-0.4.9.tar.gz.
File metadata
- Download URL: process_dcm-0.4.9.tar.gz
- Upload date:
- Size: 17.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.0.1 CPython/3.10.16 Linux/5.15.0-1078-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6ea3fb07964850b19223a170cd2e23b7f7058709d587cb38915c89ca28b76eb4
|
|
| MD5 |
2020ab94f2843cf45d256f20d5a7704a
|
|
| BLAKE2b-256 |
3dc5f75b3ebcaeb2cec24d37deddeb952827b2157d446d2ffbc5349f2ba2e10b
|
File details
Details for the file process_dcm-0.4.9-py3-none-any.whl.
File metadata
- Download URL: process_dcm-0.4.9-py3-none-any.whl
- Upload date:
- Size: 17.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/2.0.1 CPython/3.10.16 Linux/5.15.0-1078-azure
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
16d0f165f651abbaf3b62ae162c3728a7ba46880b89617812c8ed30a28e66995
|
|
| MD5 |
13e986098d5dbda38aca598b92270d26
|
|
| BLAKE2b-256 |
8011d2f065b8abed589a4c7e660b263c7a2094f5b1c7e6eba592fa34de835d14
|