19#ifndef __stir_evaluation_compute_ROI_values__H__
20#define __stir_evaluation_compute_ROI_values__H__
27template <
typename coordT>
28class CartesianCoordinate2D;
29template <
typename coordT>
30class CartesianCoordinate3D;
31template <
typename elemT>
32class VectorWithOffset;
33template <
int num_dimensions,
typename elemT>
34class DiscretisedDensity;
49void compute_ROI_values_per_plane(VectorWithOffset<ROIValues>& values,
50 const DiscretisedDensity<3, float>& image,
52 const CartesianCoordinate3D<int>& num_samples);
54void compute_ROI_values_per_plane(VectorWithOffset<ROIValues>& values,
55 const DiscretisedDensity<3, float>& image,
56 const DiscretisedDensity<3, float>& discretised_shape);
58ROIValues compute_total_ROI_values(
const VectorWithOffset<ROIValues>& values);
60ROIValues compute_total_ROI_values(
const DiscretisedDensity<3, float>& image,
62 const CartesianCoordinate3D<int>& num_samples);
64ROIValues compute_total_ROI_values(
const DiscretisedDensity<3, float>& image,
65 const DiscretisedDensity<3, float>& discretised_shape);
68void compute_plane_range_ROI_values_per_plane(VectorWithOffset<ROIValues>& values,
69 const DiscretisedDensity<3, float>& image,
70 const CartesianCoordinate2D<int>& plane_range,
72 const CartesianCoordinate3D<int>& num_samples);
74float compute_CR_hot(ROIValues& val1, ROIValues& val2);
75float compute_CR_cold(ROIValues& val1, ROIValues& val2);
76float compute_uniformity(ROIValues& val);
78VectorWithOffset<float> compute_CR_hot_per_plane(VectorWithOffset<ROIValues>& val1, VectorWithOffset<ROIValues>& val2);
80VectorWithOffset<float> compute_CR_cold_per_plane(VectorWithOffset<ROIValues>& val1, VectorWithOffset<ROIValues>& val2);
82VectorWithOffset<float> compute_uniformity_per_plane(VectorWithOffset<ROIValues>& val);
Definition of class stir::ROIValues.
defines the stir::VoxelsOnCartesianGrid class