Skip to main content

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

multiple_rings.png

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.0.9.tar.gz (627.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

DicomRTTool-2.0.9-py3-none-any.whl (38.0 kB view details)

Uploaded Python 3

File details

Details for the file DicomRTTool-2.0.9.tar.gz.

File metadata

  • Download URL: DicomRTTool-2.0.9.tar.gz
  • Upload date:
  • Size: 627.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for DicomRTTool-2.0.9.tar.gz
Algorithm Hash digest
SHA256 2c74cc5e34e8cbabca63cca9babe99b89c54ef8b48b9eff6a5e6b3eece2c1d3b
MD5 dc0f68f73f3d50a604da9406c8018cbe
BLAKE2b-256 6edadd4f05a1c89e0ca5ca8e3194bef9a6525244afb7dcb02233ed5c758e2060

See more details on using hashes here.

File details

Details for the file DicomRTTool-2.0.9-py3-none-any.whl.

File metadata

  • Download URL: DicomRTTool-2.0.9-py3-none-any.whl
  • Upload date:
  • Size: 38.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for DicomRTTool-2.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 585ad67b2ee73d43b0032bdcba611a931c6bcb25ecbcae69611afb1599334cb3
MD5 a6f3cd893852d0c4a1e080d2f66ffac9
BLAKE2b-256 bad7989d66a277acae0c49c25922f9530258b665dacd62c73af1ec6a9a77f15d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page