Skip to main content

Helper function for analysis of Varian ETHOS data

Project description

Installation

The package can be installed via pip:

pip install ethoPyRT

In addition, dcm2niix must be installed (see https://github.com/rordenlab/dcm2niix) and the executable must be visible from the python environment.

The pyradiomics (https://pyradiomics.readthedocs.io/en/latest/installation.html) executable must also be visible.

General remarks

This package helps analyze DICOM data exported from the Varian ETHOS system. The Ethos treatment interface allows per-session export of data, i.e.

<dcmpath>/<patname>/Session Export/<PID>/<TreatmentIntent>/Session_<n>

where dcmpath is manually selected, <patname> is manually created and the subfolders are automatically created during export.

Usage

General

Load the package with

import ethoPyRT

The ethoPyRT package provides the RTMetrics class, which is instantiated per patient using its ID pid (correspoding to above):

rtm = RTMetrics(dcmpath, basepath, pid, analysisDir)

dcmpath is the path where the exported data from Ethos is stored. basepath is a folder to store transformed intermediate data generated with ethoPyRT (i.e. nifti files, see below) and can be freely selected, as well as as <analysisDir>, where results are stored.

QC & Preprocessing

First, completeness of data is checked via

rtm.checkFiles() 

File conversions to help manual inspection of data is performed with

rtm.createNifti()

and RT structures are extracted with

rtm.extractRTStruct()

Data is stored in

`<basepath>/<TreatmentIntent>/<PID>/Session_<n>/`

in the nifti/ and RTSTRUCT/ subfolders.

Data loading

RT doses are loaded with

rtm.loadDoses()

and plans are assigned (scheduled / adapted) with

rtm.assignPlanType()

RTStructures are loaded with

rtm.loadMasks()

Data analysis

DVHs are calculated with

rtm.calcDVH()

Scheduled vs adapted vs treated plans are compared using

rtm.compare()

Difference DVHs are computed with

rtm.diffDVH()

and plotted with

rtm.plotDVH()

Dose metrics are calculated with

rtm.calcMetrics()

Radiomics features are computed with

rtm.calcRadiomics()

The number of adapted / scheduled plans.

rtm.countAdpSched()

Registration of CBCTs (currently only tested for prostate)

rtm.registerCBCT()

and application:

rtm.applyTransform(type="CBCT", ref="CBCT")

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ethopyrt-0.1.7.tar.gz (3.2 kB view details)

Uploaded Source

Built Distribution

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

ethopyrt-0.1.7-py3-none-any.whl (3.2 kB view details)

Uploaded Python 3

File details

Details for the file ethopyrt-0.1.7.tar.gz.

File metadata

  • Download URL: ethopyrt-0.1.7.tar.gz
  • Upload date:
  • Size: 3.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for ethopyrt-0.1.7.tar.gz
Algorithm Hash digest
SHA256 ec6834745cf56654d02ff6578b6c90f46a0dccd0665f1b0e8afaf67e2d5c26f8
MD5 d14c4f89cb42f76d92cb5fc9276c8fa5
BLAKE2b-256 772a6b2bee193a833c520a6f5f06c8741d1496711b3087101f887b119d9971ed

See more details on using hashes here.

File details

Details for the file ethopyrt-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: ethopyrt-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 3.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for ethopyrt-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 e303eb6769fa874379d0f9934323c1e38c77da6e8b78e471e75b2d0ea0c980a3
MD5 35108dda994aaca8903234b454ab3590
BLAKE2b-256 be973058fa44fd85b2eefa0fd93b8b89fbd0afa0d50c5265ec91a1e55b825204

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