API Reference#
The functionality of PyRaDiSe is split into the following packages:
- Data PackageThe data package provides a lightweight, reproducible, and extensible RT-oriented data model.First, lightweight because working with medical image data requires large amounts of memory;thus, the introduced functionality should consume a minimum of additional memory. Second,reproducible because the data model should not bias or influence the evaluation of differentauto-segmentation models on the same data. Third, extensible so that additional data entities(e.g., DICOM RT Dose) can be added in the future to extend the functionality and scope of PyRaDiSe.
- FileIO PackageThe fileio package provides highly automated, versatile, and easy-to-use functionality for dataimport, export, and DICOM-RTSS conversion. First, automated because importing and converting medicalimage data, particularly DICOM data, can be complex, confusing, and time-consuming if, for instance,referenced DICOM registrations need to be applied to DICOM images during import. Second, versatilebecause loading, converting, and serializing medical image data requires many computational resources,and thus a streamlined import and export process featuring low computational complexity is important.Furthermore, versatile because the fileio package can handle input and output data of various formsand structures. Third, easy-to-use because data ingestion, conversion, and serialization should beas simple as possible for developers, reducing development time and overall improved code readability.
- Process PackageThe process package offers a selection of pre-processing and post-processing procedures. Theseprocedures are either implemented by the package authors, or via wrapped versions of procedures foundin other popular frameworks such as SimpleITK and ITK packages. For deep learning model inference,PyRaDiSe incorporates prototypes and examples exclusively to stay deep learning framework agnostic suchthat the user can use the framework of his choice. Furthermore, the optional use of a deep learningframework drastically reduces the memory footprint of PyRaDiSe itself, which is beneficial if PyRaDiSeis used for conversion purposes only.