18 #ifndef itkLabelOverlapMeasuresImageFilter_h 19 #define itkLabelOverlapMeasuresImageFilter_h 24 #include "itksys/hash_map.hxx" 44 template<
typename TLabelImage>
67 typedef typename TLabelImage::SizeType
SizeType;
117 typedef itksys::hash_map<LabelType, LabelSetMeasures>
MapType;
123 TLabelImage::ImageDimension );
127 { this->
SetNthInput( 0, const_cast<LabelImageType *>( image ) ); }
131 { this->
SetNthInput( 1, const_cast<LabelImageType *>( image ) ); }
177 #ifdef ITK_USE_CONCEPT_CHECKING 208 void operator=(
const Self& ) ITK_DELETE_FUNCTION;
216 #ifndef ITK_MANUAL_INSTANTIATION 217 #include "itkLabelOverlapMeasuresImageFilter.hxx" RealType GetTotalOverlap() const
const LabelImageType * GetTargetImage(void)
TLabelImage LabelImageType
RealType GetFalsePositiveError() const
const LabelImageType * GetSourceImage(void)
RealType GetVolumeSimilarity() const
MapType::const_iterator MapConstIterator
unsigned long m_Intersection
LabelOverlapMeasuresImageFilter Self
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes...
RealType GetDiceCoefficient() const
TLabelImage::IndexType IndexType
unsigned long m_TargetComplement
RealType GetMeanOverlap() const
NumericTraits< LabelType >::RealType RealType
TLabelImage::RegionType RegionType
RealType GetJaccardCoefficient(LabelType label) const
LabelOverlapMeasuresImageFilter()
MapType GetLabelSetMeasures()
TLabelImage::Pointer LabelImagePointer
TLabelImage::SizeType SizeType
void AllocateOutputs() override
RealType GetDiceCoefficient(LabelType label) const
MapType m_LabelSetMeasures
void EnlargeOutputRequestedRegion(DataObject *data) override
itksys::hash_map< LabelType, LabelSetMeasures > MapType
RealType GetTargetOverlap(LabelType) const
RealType GetUnionOverlap() const
std::vector< MapType > m_LabelSetMeasuresPerThread
RealType GetJaccardCoefficient() const
const InputImageType * GetInput() const
TLabelImage::ConstPointer LabelImageConstPointer
void BeforeThreadedGenerateData() override
Computes overlap measures between the set same set of labels of pixels of two images. Background is assumed to be 0.
unsigned int ThreadIdType
void SetTargetImage(const LabelImageType *image)
RealType GetFalseNegativeError() const
Base class for filters that take an image as input and produce an image as output.
void SetSourceImage(const LabelImageType *image)
Control indentation during Print() invocation.
void PrintSelf(std::ostream &os, Indent indent) const override
SmartPointer< const Self > ConstPointer
unsigned long m_SourceComplement
void AfterThreadedGenerateData() override
virtual void SetNthInput(DataObjectPointerArraySizeType num, DataObject *input)
TLabelImage::PixelType LabelType
~LabelOverlapMeasuresImageFilter()
#define itkConceptMacro(name, concept)
static const unsigned int ImageDimension
void ThreadedGenerateData(const RegionType &, ThreadIdType) override
Base class for all data objects in ITK.
Metrics stored per label.
SmartPointer< Self > Pointer
ImageToImageFilter< TLabelImage, TLabelImage > Superclass
MapType::iterator MapIterator
LabelSetMeasures & operator=(const LabelSetMeasures &l)