Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
mitkSUVCalculationHelper.h File Reference
#include <limits>
#include <map>
#include <string>
#include <vector>
#include <mitkException.h>
#include <mitkExceptionMacro.h>
#include <mitkSlicedData.h>
#include <MitkPETExports.h>

Go to the source code of this file.

Classes

class  mitk::SUVHelperException
 Base class for failures originating from the SUV calculation helpers. More...
 
class  mitk::MissingDICOMPropertyException
 A required DICOM property is missing on the input data. More...
 
class  mitk::InvalidDICOMPropertyValueException
 A DICOM property is present but holds a value the helper does not understand. More...
 
class  mitk::MultiItemRadiopharmaceuticalSequenceException
 A multi-item Radiopharmaceutical Information Sequence (0054,0016) was supplied without an explicit tracer selection. More...
 
class  mitk::BenchmarkAdaptationRequiredException
 Base class for failures triggered by a benchmark-recommended adaptation that the active policy refuses to perform. More...
 
class  mitk::ImplausibleRadionuclideDoseException
 Radionuclide Total Dose (0018,1074) is implausible as Bq and would have been reinterpreted as MBq, but the active policy is Strict. More...
 
class  mitk::VendorEmpiricalDecayFallbackRefusedException
 Strategy DC=START would have been resolved via a vendor-specific empirical fallback (Steps 3 / 4), but the active policy is Strict. More...
 
class  mitk::UnsupportedPETUnitsException
 Tag (0054,1001) Units holds a value the SUV pipeline cannot interpret. More...
 
class  mitk::MissingPhilipsPETScaleException
 (0054,1001) Units == "CNTS" and the manufacturer is Philips, but neither of the two Philips private scale factors is present. More...
 
class  mitk::AmbiguousPatientSexAdaptationRefusedException
 Ambiguous patient sex would have been resolved as the IBSI mean of the male- and female-specific normalization, but the active policy is Strict. More...
 
class  mitk::AmbiguousDecayTimingException
 Acquisition / radiopharmaceutical-injection timing cannot be reconciled. More...
 
class  mitk::InvalidDecayTimeMapException
 A user-supplied per-(timestep, slice) decay-time override map is not a complete and well-formed match for the input image geometry. More...
 
class  mitk::InvalidDecayTimeOverrideException
 A uniform decay-time override value is not a usable decay duration. More...
 
class  mitk::ConflictingDecayTimeOverrideException
 Raised when a uniform decay-time override and a per-(timestep, slice) decay-time override map are set simultaneously. More...
 
struct  mitk::DecayCorrectionInfo
 Result of DeduceDecayCorrection(). More...
 
struct  mitk::RadiopharmaceuticalInfo
 Per-item radiopharmaceutical metadata pulled from the Radiopharmaceutical Information Sequence (0054,0016). More...
 

Namespaces

 mitk
 Find image slices visible on a given plane.
 

Typedefs

typedef std::map< mitk::SlicedData::IndexValueType, double > mitk::DecayTimeSliceMapType
 Map storing the residual decay time in seconds per slice. More...
 
typedef std::map< mitk::TimeStepType, DecayTimeSliceMapType > mitk::DecayTimeMapType
 Map storing per-time-step decay time slice maps. More...
 

Enumerations

enum class  mitk::Sex { mitk::Male , mitk::Female , mitk::Other }
 Patient sex modeled as a closed set. More...
 
enum class  mitk::DICOMReadPolicy { mitk::Lenient , mitk::Strict }
 Policy controlling whether benchmark-recommended adaptations of borderline / non-spec DICOM input are applied. More...
 
enum class  mitk::ManufacturerFamily { mitk::Siemens , mitk::GE , mitk::Philips , mitk::Other }
 Manufacturer family inferred from DICOM tag (0008,0070) Manufacturer. More...
 
enum class  mitk::DecayCorrectionStrategy { mitk::Admin , mitk::Start , mitk::None , mitk::Manual }
 Strategy describing how (or whether) the input pixel data has been decay-corrected by the scanner. More...
 

Functions

ManufacturerFamily MITKPET_EXPORT mitk::GetManufacturerFamily (const mitk::IPropertyProvider *provider)
 Classify the input's (0008,0070) Manufacturer into a family. More...
 
std::vector< RadiopharmaceuticalInfo > MITKPET_EXPORT mitk::GetRadiopharmaceuticalInfos (const mitk::IPropertyProvider *provider, DICOMReadPolicy policy=DICOMReadPolicy::Lenient)
 Read the Radiopharmaceutical Information Sequence as paired-by-item info. More...
 
double MITKPET_EXPORT mitk::GetPatientsWeight (const mitk::IPropertyProvider *provider)
 Get the patient's weight from DICOM properties. More...
 
double MITKPET_EXPORT mitk::GetPatientsHeight (const mitk::IPropertyProvider *provider)
 Get the patient's height (size) from DICOM properties. More...
 
Sex MITKPET_EXPORT mitk::GetPatientsSex (const mitk::IPropertyProvider *provider)
 Get the patient's sex from DICOM properties as a typed enum. More...
 
DecayCorrectionStrategy MITKPET_EXPORT mitk::GetDecayCorrectionStrategy (const mitk::IPropertyProvider *provider)
 Detect the DICOM Decay Correction strategy of the input data. More...
 
DecayCorrectionInfo MITKPET_EXPORT mitk::DeduceDecayCorrection (const mitk::SlicedData *data, double halfLifeSeconds=std::numeric_limits< double >::quiet_NaN(), DICOMReadPolicy policy=DICOMReadPolicy::Lenient)
 Deduce the residual decay correction needed to compute SUV. More...