ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkLabelOverlapMeasuresImageFilter.h>
Computes overlap measures between the set same set of labels of pixels of two images. Background is assumed to be 0.
This code was contributed in the Insight Journal paper: "Introducing Dice, Jaccard, and Other Label Overlap Measures To ITK" by Nicholas J. Tustison, James C. Gee https://hdl.handle.net/10380/3141 http://www.insight-journal.org/browse/publication/707
Definition at line 45 of file itkLabelOverlapMeasuresImageFilter.h.
Classes | |
class | LabelSetMeasures |
Public Types | |
using | ConstPointer = SmartPointer< const Self > |
using | IndexType = typename TLabelImage::IndexType |
using | LabelImageConstPointer = typename TLabelImage::ConstPointer |
using | LabelImagePointer = typename TLabelImage::Pointer |
using | LabelImageType = TLabelImage |
using | LabelType = typename TLabelImage::PixelType |
using | MapConstIterator = typename MapType::const_iterator |
using | MapIterator = typename MapType::iterator |
using | MapType = itksys::hash_map< LabelType, LabelSetMeasures > |
using | Pointer = SmartPointer< Self > |
using | RealType = typename NumericTraits< LabelType >::RealType |
using | RegionType = typename TLabelImage::RegionType |
using | Self = LabelOverlapMeasuresImageFilter |
using | SizeType = typename TLabelImage::SizeType |
using | Superclass = ImageToImageFilter< TLabelImage, TLabelImage > |
Public Types inherited from itk::ImageToImageFilter< TLabelImage, TLabelImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | InputImageConstPointer = typename InputImageType::ConstPointer |
using | InputImagePixelType = typename InputImageType::PixelType |
using | InputImagePointer = typename InputImageType::Pointer |
using | InputImageRegionType = typename InputImageType::RegionType |
using | InputImageType = TLabelImage |
using | OutputImagePixelType = typename Superclass::OutputImagePixelType |
using | OutputImageRegionType = typename Superclass::OutputImageRegionType |
using | Pointer = SmartPointer< Self > |
using | Self = ImageToImageFilter |
using | Superclass = ImageSource< TLabelImage > |
Public Types inherited from itk::ImageSource< TLabelImage > | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = Superclass::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArraySizeType = Superclass::DataObjectPointerArraySizeType |
using | OutputImagePixelType = typename OutputImageType::PixelType |
using | OutputImagePointer = typename OutputImageType::Pointer |
using | OutputImageRegionType = typename OutputImageType::RegionType |
using | OutputImageType = TLabelImage |
using | Pointer = SmartPointer< Self > |
using | Self = ImageSource |
using | Superclass = ProcessObject |
Public Types inherited from itk::ProcessObject | |
using | ConstPointer = SmartPointer< const Self > |
using | DataObjectIdentifierType = DataObject::DataObjectIdentifierType |
using | DataObjectPointer = DataObject::Pointer |
using | DataObjectPointerArray = std::vector< DataObjectPointer > |
using | DataObjectPointerArraySizeType = DataObjectPointerArray::size_type |
using | MultiThreaderType = MultiThreaderBase |
using | NameArray = std::vector< DataObjectIdentifierType > |
using | Pointer = SmartPointer< Self > |
using | Self = ProcessObject |
using | Superclass = Object |
Public Types inherited from itk::Object | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = Object |
using | Superclass = LightObject |
Public Types inherited from itk::LightObject | |
using | ConstPointer = SmartPointer< const Self > |
using | Pointer = SmartPointer< Self > |
using | Self = LightObject |
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = TLabelImage::ImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TLabelImage, TLabelImage > | |
static constexpr unsigned int | InputImageDimension |
static constexpr unsigned int | OutputImageDimension |
Static Public Attributes inherited from itk::ImageSource< TLabelImage > | |
static constexpr unsigned int | OutputImageDimension |
Private Attributes | |
MapType | m_LabelSetMeasures |
std::vector< MapType > | m_LabelSetMeasuresPerThread |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TLabelImage, TLabelImage > | |
using | InputToOutputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::OutputImageDimension, Self::InputImageDimension > |
using | OutputToInputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::InputImageDimension, Self::OutputImageDimension > |
Static Protected Member Functions inherited from itk::ImageSource< TLabelImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ImageSource< TLabelImage > | |
bool | m_DynamicMultiThreading |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::ConstPointer = SmartPointer<const Self> |
Definition at line 55 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::IndexType = typename TLabelImage::IndexType |
Definition at line 70 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::LabelImageConstPointer = typename TLabelImage::ConstPointer |
Definition at line 66 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::LabelImagePointer = typename TLabelImage::Pointer |
Definition at line 65 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::LabelImageType = TLabelImage |
Image related type alias.
Definition at line 64 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::LabelType = typename TLabelImage::PixelType |
Definition at line 72 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::MapConstIterator = typename MapType::const_iterator |
Definition at line 121 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::MapIterator = typename MapType::iterator |
Definition at line 120 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::MapType = itksys::hash_map<LabelType, LabelSetMeasures> |
Type of the map used to store data per label
Definition at line 119 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::Pointer = SmartPointer<Self> |
Definition at line 54 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::RealType = typename NumericTraits<LabelType>::RealType |
Type to use for computations.
Definition at line 75 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::RegionType = typename TLabelImage::RegionType |
Definition at line 68 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::Self = LabelOverlapMeasuresImageFilter |
Standard Self type alias
Definition at line 52 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::SizeType = typename TLabelImage::SizeType |
Definition at line 69 of file itkLabelOverlapMeasuresImageFilter.h.
using itk::LabelOverlapMeasuresImageFilter< TLabelImage >::Superclass = ImageToImageFilter<TLabelImage,TLabelImage> |
Definition at line 53 of file itkLabelOverlapMeasuresImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
overrideprotectedvirtual |
If an imaging filter needs to perform processing after all processing threads have completed, the filter can can provide an implementation for AfterThreadedGenerateData(). The execution flow in the default GenerateData() method will be: 1) Allocate the output buffer 2) Call BeforeThreadedGenerateData() 3) Spawn threads, calling ThreadedGenerateData() in each thread. 4) Call AfterThreadedGenerateData() Note that this flow of control is only available if a filter provides a ThreadedGenerateData() method and NOT a GenerateData() method.
Reimplemented from itk::ImageSource< TLabelImage >.
|
overrideprotectedvirtual |
Pass the input through unmodified. Do this by setting the output to the source this by setting the output to the source image in the AllocateOutputs() method.
Reimplemented from itk::ImageSource< TLabelImage >.
|
overrideprotectedvirtual |
If an imaging filter needs to perform processing after the buffer has been allocated but before threads are spawned, the filter can can provide an implementation for BeforeThreadedGenerateData(). The execution flow in the default GenerateData() method will be: 1) Allocate the output buffer 2) Call BeforeThreadedGenerateData() 3) Spawn threads, calling ThreadedGenerateData() in each thread. 4) Call AfterThreadedGenerateData() Note that this flow of control is only available if a filter provides a ThreadedGenerateData() method and NOT a GenerateData() method.
Reimplemented from itk::ImageSource< TLabelImage >.
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
|
inlineoverrideprotected |
Definition at line 226 of file itkLabelOverlapMeasuresImageFilter.h.
|
overrideprotectedvirtual |
Give the process object a chance to indictate that it will produce more output than it was requested to produce. For example, many imaging filters must compute the entire output at once or can only produce output in complete slices. Such filters cannot handle smaller requested regions. These filters must provide an implementation of this method, setting the output requested region to the size they will produce. By default, a process object does not modify the size of the output requested region.
Reimplemented from itk::ProcessObject.
|
inline |
Get the mean overlap (Dice coefficient) over all labels.
Definition at line 169 of file itkLabelOverlapMeasuresImageFilter.h.
|
inline |
Get the mean overlap (Dice coefficient) for the specified individual label.
Definition at line 176 of file itkLabelOverlapMeasuresImageFilter.h.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetFalseNegativeError | ( | ) | const |
Get the false negative error over all labels.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetFalseNegativeError | ( | LabelType | ) | const |
Get the false negative error for the specified individual label.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetFalsePositiveError | ( | ) | const |
Get the false positive error over all labels.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetFalsePositiveError | ( | LabelType | ) | const |
Get the false positive error for the specified individual label.
|
inline |
Get the union overlap (Jaccard coefficient) over all labels.
Definition at line 156 of file itkLabelOverlapMeasuresImageFilter.h.
|
inline |
Get the union overlap (Jaccard coefficient) for the specified individual label.
Definition at line 163 of file itkLabelOverlapMeasuresImageFilter.h.
|
inline |
Get the label set measures.
Definition at line 143 of file itkLabelOverlapMeasuresImageFilter.h.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetMeanOverlap | ( | ) | const |
Get the mean overlap (Dice coefficient) over all labels.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetMeanOverlap | ( | LabelType | ) | const |
Get the mean overlap (Dice coefficient) for the specified individual label.
|
virtual |
Runtime information support.
Reimplemented from itk::ImageToImageFilter< TLabelImage, TLabelImage >.
|
inline |
Get the source image.
Definition at line 135 of file itkLabelOverlapMeasuresImageFilter.h.
|
inline |
Get the target image.
Definition at line 139 of file itkLabelOverlapMeasuresImageFilter.h.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetTargetOverlap | ( | LabelType | ) | const |
Get the target overlap for the specified individual label.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetTotalOverlap | ( | ) | const |
Get the total overlap over all labels.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetUnionOverlap | ( | ) | const |
Get the union overlap (Jaccard coefficient) over all labels.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetUnionOverlap | ( | LabelType | ) | const |
Get the union overlap (Jaccard coefficient) for the specified individual label.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetVolumeSimilarity | ( | ) | const |
Get the volume similarity over all labels.
RealType itk::LabelOverlapMeasuresImageFilter< TLabelImage >::GetVolumeSimilarity | ( | LabelType | ) | const |
Get the volume similarity for the specified individual label.
|
static |
Method for creation through the object factory.
|
overrideprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::ProcessObject.
|
inline |
Set the source image.
Definition at line 127 of file itkLabelOverlapMeasuresImageFilter.h.
|
inline |
Set the target image.
Definition at line 131 of file itkLabelOverlapMeasuresImageFilter.h.
|
overrideprotected |
Multi-thread version GenerateData.
|
static |
Image related type alias.
Definition at line 124 of file itkLabelOverlapMeasuresImageFilter.h.
|
private |
Definition at line 236 of file itkLabelOverlapMeasuresImageFilter.h.
|
private |
Definition at line 235 of file itkLabelOverlapMeasuresImageFilter.h.