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")
Metadata
Release files for ethoPyRT 0.1.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ethopyrt-0.1.11.tar.gz | 3.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ethopyrt-0.1.11-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 6.5 kB
Release files / ethopyrt-0.1.11.tar.gz
| Download URL | ethopyrt-0.1.11.tar.gz |
|---|---|
| Size | 3.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
239b4581b29d7f6ded272f53a294f2489fe2d87ebc19aa3792268c59dac28619
|
|
BLAKE2b-256 checksum How to use checksums |
d714f37054e3a339d9f1dc19981b25942d1b8744edef1eec036d271accd83faa
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.13
|
Release files / ethopyrt-0.1.11-py3-none-any.whl
| Download URL | ethopyrt-0.1.11-py3-none-any.whl |
|---|---|
| Size | 3.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
01e8e34d4a4456e9d4813263c39537031a2c3476466094bc72b56dc95021347e
|
|
BLAKE2b-256 checksum How to use checksums |
e66dd3bfc1e736fab2f0d74edc22a6e2f0ae0832b882bfa384c82ad4099adf82
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.13
|