Services for reading dicom files, RT structures, and dose files, as well as tools for converting numpy prediction masks back to an RT structure
Project description
We're published! Please check out the Technical Note here: https://www.sciencedirect.com/science/article/abs/pii/S1879850021000485 and reference this work if you find it useful
DOI:https://doi.org/10.1016/j.prro.2021.02.003
This code provides functionality for turning dicom images and RT structures into nifti files as well as turning prediction masks back into RT structures
Installation guide
pip install DicomRTTool
Highly recommend to go through the jupyter notebook in the Examples folder and to read the Wiki
Quick use guide
from DicomRTTool.ReaderWriter import DicomReaderWriter, ROIAssociationClass
Dicom_path = r'.some_path_to_dicom'
Dicom_reader = DicomReaderWriter(description='Examples', arg_max=True)
Dicom_reader.walk_through_folders(Dicom_path) # This will parse through all DICOM present in the folder and subfolders
all_rois = Dicom_reader.return_rois(print_rois=True) # Return a list of all rois present
Contour_names = ['tumor'] # Define what rois you want
associations = [ROIAssociationClass('tumor', ['tumor_mr', 'tumor_ct'])] # Any list of roi associations
Dicom_reader.set_contour_names_and_assocations(contour_names=Contour_names, associations=associations)
Dicom_reader.get_images_and_mask()
image_numpy = Dicom_reader.ArrayDicom
mask_numpy = Dicom_reader.mask
image_sitk_handle = Dicom_reader.dicom_handle
mask_sitk_handle = Dicom_reader.annotation_handle
Other interesting additions
Adding information to the Dicom_reader.series_instances_dictionary
from DicomRTTool.ReaderWriter import Tag
plan_pydicom_string_keys = {"MyNamedRTPlan": Tag((0x300a, 0x002))}
image_sitk_string_keys = {"MyPatientName": "0010|0010"}
Dicom_reader = DicomReaderWriter(description='Examples', arg_max=True, plan_pydicom_string_keys=plan_pydicom_string_keys, image_sitk_string_keys=image_sitk_string_keys)
If you find this code useful, please provide a reference to my github page for others www.github.com/brianmanderson , thank you!
Ring update allows for multiple rings to be represented correctly
Works on oblique images for masks and predictions*
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
dicomrttool-2.1.9.tar.gz
(628.8 kB
view details)
Built Distribution
File details
Details for the file dicomrttool-2.1.9.tar.gz
.
File metadata
- Download URL: dicomrttool-2.1.9.tar.gz
- Upload date:
- Size: 628.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5aa6fa152fd76cded09448ba1c7321337c04b1317338f8e87be9a070685402bc |
|
MD5 | b6f4dcd97258fa726b6b3dd26233d81e |
|
BLAKE2b-256 | 61c2a51539c875f5d1549dd00d43bc3121d7367ba4f870bf5606bb8e867dc8b5 |
File details
Details for the file DicomRTTool-2.1.9-py3-none-any.whl
.
File metadata
- Download URL: DicomRTTool-2.1.9-py3-none-any.whl
- Upload date:
- Size: 39.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 94e535b3acdb428fac9c8557bfad460e148ccc2ab84ed470e29bbea5aa22e1b2 |
|
MD5 | 0e0401b68f25626d750f97c3576972b0 |
|
BLAKE2b-256 | 316657a5cdfc0ed07710da5dea07040bd1d7e8a80b4c114512c41633d2004915 |