13 #ifndef mitkLabeledImageVolumeCalculator_h
14 #define mitkLabeledImageVolumeCalculator_h
17 #include <itkObject.h>
47 itkFactorylessNewMacro(Self);
96 template <
typename TPixel,
unsigned int VImageDimension>
#define MITKDATATYPESEXT_EXPORT
Abstract base class describing the geometry of a data object.
Image class for storing multi-dimensional medical image data.
Calculates the volume and centroid for each label in a labeled image.
LabeledImageVolumeCalculator()
const VolumeVector & GetVolumes() const
Get the vector of volumes for all labels.
~LabeledImageVolumeCalculator() override
std::vector< Point3D > PointVector
Vector of per-label centroid points.
const Point3D & GetCentroid(unsigned int label) const
Get the centroid (center of mass) for a specific label.
mitkClassMacroItkParent(LabeledImageVolumeCalculator, itk::Object)
std::vector< double > VolumeVector
Vector of per-label volume values.
const PointVector & GetCentroids() const
Get the vector of centroids for all labels.
void _InternalCalculateVolumes(itk::Image< TPixel, VImageDimension > *image, LabeledImageVolumeCalculator *volumeCalculator, BaseGeometry *geometry)
ImageTimeSelector::Pointer m_InputTimeSelector
virtual void Calculate()
Perform the volume and centroid calculation.
Image::ConstPointer m_Image
VolumeVector m_VolumeVector
double GetVolume(unsigned int label) const
Get the volume for a specific label.
PointVector m_CentroidVector
Find image slices visible on a given plane.