This is a consolidation of work from NAMIC efforts primarily at the University of Iowa.
Project description
Introduction
In this work, we developed a robust, easily extensible classification framework that extracts key features from well-characterized DICOM header fields to identify image modality and acquisition plane. Utilizing classical machine learning paradigms and a heterogeneous dataset of 9121 scans collected at 12 sites, using 23 scanners from 6 manufacturers, we achieved 99.4% accuracy during the K-Fold Cross-Validation for classifying 11 image modalities and 99.96% accuracy on image acquisition plane classification. Furthermore, we demonstrated model generalizability by achieving 98.6% accuracy on out-of-sample animal data. Our proposed framework can be crucial in eliminating error-prone human interaction, allowing automatization, and increasing imaging applications' reliability and efficiency.
This work was submitted for publication at the 2024 SPIE Medical Imaging conference.
This project was supported by Botimageai.
Instructions
Below are useful commands to start using the tool.
Clone git repo
$ git clone https://research-git.uiowa.edu/SINAPSE/dicomimageclassification.git
Navigate to the cloned repo
$ cd <repo path>
Setup virtual environment
$ python3 -m venv <venv_path> && source <venv_path>/bin/activate
Install required packages
$ pip install -r REQUIREMENTS.txt
Run the script!
python3 classify_study.py -m models/rf_classifier.onnx -d <path_to_dicom_session>
Testing
pytest
Coverage Analysis
coverage run --concurrency=multiprocessing --parallel-mode -m pytest tests --junitxml=tests/pytest.xml
coverage combine
coverage report --format=text -m |tee tests/pytest-coverage.txt
coverage xml -o tests/coverage.xml
coverage xml -o tests/coverage.xml
Authors
-
Michal Brzus
github: mbrzus, email: michal-brzus@uiowa.edu
-
github: BRAINSia, email: hans-johnson@uiowa.edu
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
File details
Details for the file dcm_classifier-0.4.4.tar.gz
.
File metadata
- Download URL: dcm_classifier-0.4.4.tar.gz
- Upload date:
- Size: 1.9 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 65b6f0e20284d461be102dad92f2c34cc09b72a469457dc76c9bede2d29a0824 |
|
MD5 | 6448f8406cf510fa8fc2ea09d262d554 |
|
BLAKE2b-256 | 5e468996f2529656b05f7d2363544db4867a0587316f34d6404aeef81ffe1f35 |
File details
Details for the file dcm_classifier-0.4.4-py3-none-any.whl
.
File metadata
- Download URL: dcm_classifier-0.4.4-py3-none-any.whl
- Upload date:
- Size: 32.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69a39de4744c658780a9710fe9d6ffc84ba77486a50ca7c4902c564d7a4dd001 |
|
MD5 | 38ec7821a032b180e65b124c5f4e48c8 |
|
BLAKE2b-256 | c0b5900c6f40c0852addf3f0017dac5961b8743afdd4ae3d07d33f2e1c20e6a6 |