|
open_iA 2024.9
|
This filter performs pixelwise voting among an arbitrary number of input images, where each of them represents a segmentation of the same scene (i.e., image). More...
#include <iAParametrizableLabelVotingImageFilter.h>
Public Types | |
| typedef itk::ImageRegionConstIterator< DoubleImg > | ConstDblIt |
| typedef itk::SmartPointer< const Self > | ConstPointer |
| typedef itk::Image< double, 3 > | DoubleImg |
| typedef InputImageType::ConstPointer | InputImagePointer |
| typedef TInputImage | InputImageType |
| Typedefs. | |
| typedef TInputImage::PixelType | InputPixelType |
| typedef unsigned long | LabelCountType |
| typedef OutputImageType::Pointer | OutputImagePointer |
| typedef Superclass::OutputImageRegionType | OutputImageRegionType |
| typedef TOutputImage | OutputImageType |
| typedef TOutputImage::PixelType | OutputPixelType |
| Extract some information from the image types. | |
| typedef itk::SmartPointer< Self > | Pointer |
| typedef iAParametrizableLabelVotingImageFilter | Self |
| Standard class typedefs. | |
| typedef itk::ImageToImageFilter< TInputImage, TOutputImage > | Superclass |
Public Member Functions | |
| OutputPixelType | GetLabelForUndecidedPixels () const |
| Get label value used for undecided pixels. | |
| DoubleImg::Pointer | GetNumbers (int mode) |
| double | GetUndecided () const |
| itkNewMacro (Self) | |
| Method for creation through the object factory. | |
| itkStaticConstMacro (ImageDimension, int, TOutputImage::ImageDimension) | |
| itkStaticConstMacro (InputImageDimension, int, TInputImage::ImageDimension) | |
| Extract some information from the image types. | |
| itkTypeMacro (iAParametrizableLabelVotingImageFilter, ImageToImageFilter) | |
| Run-time type information (and related methods) | |
| void | SetAbsoluteMinimumPercentage (double p) |
| Sets the percentage that has to be achieved as a minimum for the majority vote to be accepted as majority. | |
| void | SetInputLabelVotersSet (std::set< std::pair< int, int > > inputLabelVotersSet) |
| sets the data determining which input is considered for voting on which label At each pixel the label value is checked, and an input is only considered if this input is considered a suitable voter for this label (i.e., if the pair <label, input index> is contained in the set given here) | |
| void | SetInputLabelWeightMap (std::map< std::pair< int, int >, double > inputLabelWeightMap) |
| set a weight for a pair of <label, input index> only used if WeightType LabelBased is used (see WeightType, SetWeightType) | |
| void | SetLabelForUndecidedPixels (const OutputPixelType l) |
| Set label value for undecided pixels. | |
| void | SetMaxPixelEntropy (double e) |
| set a maximum threshold for the pixel entropy | |
| void | SetMinimumDifferencePercentage (double p) |
| set a minimum threshold for the percentage difference between first and second best guess | |
| void | SetMinimumRatio (double r) |
| set a minimum threshold on the ratio between first and second best guess | |
| void | SetProbabilityImages (size_t inputIdx, std::vector< DoubleImg::Pointer > const &probImgs) |
| set probabilities for each label for one input in order for probability-related functionality to work, this method needs to be called once with each input idx | |
| void | SetWeightType (WeightType weightType) |
| determine the type of weight given each input in the voting process see WeightType for more details | |
| void | UnsetLabelForUndecidedPixels () |
| Unset label value for undecided pixels and turn on automatic selection. | |
Protected Member Functions | |
| iAParametrizableLabelVotingImageFilter () | |
| virtual | ~iAParametrizableLabelVotingImageFilter () |
| void | BeforeThreadedGenerateData () override |
| Determine maximum label value in all input images and initialize global data. | |
| InputPixelType | ComputeMaximumInputValue () |
| Determine maximum value among all input images' pixels. | |
| void | PrintSelf (std::ostream &, itk::Indent) const override |
| void | ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, itk::ThreadIdType threadId) override |
This filter performs pixelwise voting among an arbitrary number of input images, where each of them represents a segmentation of the same scene (i.e., image).
Label voting is a simple method of classifier combination applied to image segmentation. Typically, the accuracy of the combined segmentation exceeds the accuracy of any of the input segmentations. Voting is therefore commonly used as a way of boosting segmentation performance.
The use of label voting for combination of multiple segmentations is described in
T. Rohlfing and C. R. Maurer, Jr., "Multi-classifier framework for atlas-based image segmentation," Pattern Recognition Letters, 2005.
Input volumes must all contain the same size RequestedRegions. Not all input images must contain all possible labels, but all label values must have the same meaning in all images.
By default, the label used for undecided pixels is the maximum label value used in the input images plus one. Since it is possible for an image with 8 bit pixel values to use all 256 possible label values, it is permissible to combine 8 bit (i.e., byte) images into a 16 bit (i.e., short) output image.
| itk::ImageRegionConstIterator<DoubleImg> iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::ConstDblIt |
| itk::SmartPointer< const Self > iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::ConstPointer |
| itk::Image<double, 3> iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::DoubleImg |
| InputImageType::ConstPointer iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::InputImagePointer |
| TInputImage iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::InputImageType |
Typedefs.
| TInputImage::PixelType iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::InputPixelType |
| unsigned long iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::LabelCountType |
| OutputImageType::Pointer iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::OutputImagePointer |
| Superclass::OutputImageRegionType iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::OutputImageRegionType |
| TOutputImage iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::OutputImageType |
| TOutputImage::PixelType iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::OutputPixelType |
Extract some information from the image types.
Dimensionality of the two images is assumed to be the same.
| itk::SmartPointer< Self > iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::Pointer |
| iAParametrizableLabelVotingImageFilter iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::Self |
Standard class typedefs.
| itk::ImageToImageFilter< TInputImage, TOutputImage > iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::Superclass |
|
protected |
|
inlineprotectedvirtual |
|
overrideprotected |
Determine maximum label value in all input images and initialize global data.
|
protected |
Determine maximum value among all input images' pixels.
|
inline |
Get label value used for undecided pixels.
After updating the filter, this function returns the actual label value used for undecided pixels in the current output. Note that this value is overwritten when SetLabelForUndecidedPixels is called and the new value only becomes effective upon the next filter update.
|
inline |
|
inline |
| iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::itkNewMacro | ( | Self | ) |
Method for creation through the object factory.
| iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::itkStaticConstMacro | ( | ImageDimension | , |
| int | , | ||
| TOutputImage::ImageDimension | ) |
| iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::itkStaticConstMacro | ( | InputImageDimension | , |
| int | , | ||
| TInputImage::ImageDimension | ) |
Extract some information from the image types.
Dimensionality of the two images is assumed to be the same.
| iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage >::itkTypeMacro | ( | iAParametrizableLabelVotingImageFilter< TInputImage, TOutputImage > | , |
| ImageToImageFilter | ) |
Run-time type information (and related methods)
|
overrideprotected |
|
inline |
Sets the percentage that has to be achieved as a minimum for the majority vote to be accepted as majority.
| p | the percentage (in the interval 0..1); 0 -> no minimum percentage 1 -> all images have to agree on a label |
|
inline |
sets the data determining which input is considered for voting on which label At each pixel the label value is checked, and an input is only considered if this input is considered a suitable voter for this label (i.e., if the pair <label, input index> is contained in the set given here)
|
inline |
set a weight for a pair of <label, input index> only used if WeightType LabelBased is used (see WeightType, SetWeightType)
|
inline |
Set label value for undecided pixels.
|
inline |
set a maximum threshold for the pixel entropy
|
inline |
set a minimum threshold for the percentage difference between first and second best guess
|
inline |
set a minimum threshold on the ratio between first and second best guess
|
inline |
set probabilities for each label for one input in order for probability-related functionality to work, this method needs to be called once with each input idx
|
inline |
determine the type of weight given each input in the voting process see WeightType for more details
|
overrideprotected |
|
inline |
Unset label value for undecided pixels and turn on automatic selection.