ITK  4.0.0
Insight Segmentation and Registration Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
itk::IntermodesThresholdCalculator< THistogram, TOutput > Class Template Reference

Computes the Intermodes's threshold for an image. More...

#include <itkIntermodesThresholdCalculator.h>

Inheritance diagram for itk::IntermodesThresholdCalculator< THistogram, TOutput >:
Collaboration diagram for itk::IntermodesThresholdCalculator< THistogram, TOutput >:

List of all members.

Public Types

typedef SmartPointer< const SelfConstPointer
typedef THistogram HistogramType
typedef TOutput OutputType
typedef SmartPointer< SelfPointer
typedef
IntermodesThresholdCalculator 
Self
typedef Object Superclass

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
virtual unsigned long GetMaximumSmoothingIterations () const
virtual const char * GetNameOfClass () const
virtual void SetMaximumSmoothingIterations (unsigned long _arg)
virtual void SetUseInterMode (bool _arg)
virtual bool GetUseInterMode () const

Static Public Member Functions

static Pointer New ()

Protected Member Functions

void GenerateData (void)
 IntermodesThresholdCalculator ()
void PrintSelf (std::ostream &os, Indent indent) const
virtual ~IntermodesThresholdCalculator ()

Private Member Functions

bool BimodalTest (const std::vector< double > &h)
 IntermodesThresholdCalculator (const Self &)
void operator= (const Self &)

Private Attributes

unsigned m_MaximumSmoothingIterations
bool m_UseInterMode

Detailed Description

template<class THistogram, class TOutput = double>
class itk::IntermodesThresholdCalculator< THistogram, TOutput >

Computes the Intermodes's threshold for an image.

J. M. S. Prewitt and M. L. Mendelsohn, "The analysis of cell images," in Annals of the New York Academy of Sciences, vol. 128, pp. 1035-1053, 1966. * Assumes a bimodal histogram. The histogram needs is smoothed (using a running average of size 3, iteratively) until there are only two local maxima. j and k Threshold t is (j+k)/2. Images with histograms having extremely unequal peaks or a broad and flat valley are unsuitable for this method.

This class is templated over the input histogram type.

Warning:
This calculator assumes that the input histogram has only one dimension.
Author:
Richard Beare. Department of Medicine, Monash University, Melbourne, Australia.
Gaetan Lehmann. Biologie du Developpement et de la Reproduction, INRA de Jouy-en-Josas, France.

This implementation was taken from the Insight Journal paper: http://hdl.handle.net/10380/3279 or http://www.insight-journal.org/browse/publication/811

Definition at line 56 of file itkIntermodesThresholdCalculator.h.


Member Typedef Documentation

template<class THistogram , class TOutput = double>
typedef SmartPointer<const Self> itk::IntermodesThresholdCalculator< THistogram, TOutput >::ConstPointer
template<class THistogram , class TOutput = double>
typedef THistogram itk::IntermodesThresholdCalculator< THistogram, TOutput >::HistogramType

Type definition for the input image.

Reimplemented from itk::HistogramThresholdCalculator< THistogram, TOutput >.

Definition at line 69 of file itkIntermodesThresholdCalculator.h.

template<class THistogram , class TOutput = double>
typedef TOutput itk::IntermodesThresholdCalculator< THistogram, TOutput >::OutputType

output object type

Reimplemented from itk::HistogramThresholdCalculator< THistogram, TOutput >.

Definition at line 73 of file itkIntermodesThresholdCalculator.h.

template<class THistogram , class TOutput = double>
typedef SmartPointer<Self> itk::IntermodesThresholdCalculator< THistogram, TOutput >::Pointer
template<class THistogram , class TOutput = double>
typedef IntermodesThresholdCalculator itk::IntermodesThresholdCalculator< THistogram, TOutput >::Self

Standard class typedefs.

Reimplemented from itk::HistogramThresholdCalculator< THistogram, TOutput >.

Definition at line 60 of file itkIntermodesThresholdCalculator.h.

template<class THistogram , class TOutput = double>
typedef Object itk::IntermodesThresholdCalculator< THistogram, TOutput >::Superclass

Constructor & Destructor Documentation

template<class THistogram , class TOutput = double>
itk::IntermodesThresholdCalculator< THistogram, TOutput >::IntermodesThresholdCalculator ( ) [inline, protected]

Definition at line 85 of file itkIntermodesThresholdCalculator.h.

template<class THistogram , class TOutput = double>
virtual itk::IntermodesThresholdCalculator< THistogram, TOutput >::~IntermodesThresholdCalculator ( ) [inline, protected, virtual]

Definition at line 90 of file itkIntermodesThresholdCalculator.h.

template<class THistogram , class TOutput = double>
itk::IntermodesThresholdCalculator< THistogram, TOutput >::IntermodesThresholdCalculator ( const Self ) [private]

Member Function Documentation

template<class THistogram , class TOutput = double>
bool itk::IntermodesThresholdCalculator< THistogram, TOutput >::BimodalTest ( const std::vector< double > &  h) [private]
template<class THistogram , class TOutput = double>
virtual::itk::LightObject::Pointer itk::IntermodesThresholdCalculator< THistogram, TOutput >::CreateAnother ( void  ) const [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::HistogramThresholdCalculator< THistogram, TOutput >.

template<class THistogram , class TOutput = double>
void itk::IntermodesThresholdCalculator< THistogram, TOutput >::GenerateData ( void  ) [protected, virtual]

This method causes the filter to generate its output.

Reimplemented from itk::ProcessObject.

template<class THistogram , class TOutput = double>
virtual unsigned long itk::IntermodesThresholdCalculator< THistogram, TOutput >::GetMaximumSmoothingIterations ( ) const [virtual]
template<class THistogram , class TOutput = double>
virtual const char* itk::IntermodesThresholdCalculator< THistogram, TOutput >::GetNameOfClass ( ) const [virtual]

Run-time type information (and related methods).

Reimplemented from itk::HistogramThresholdCalculator< THistogram, TOutput >.

template<class THistogram , class TOutput = double>
virtual bool itk::IntermodesThresholdCalculator< THistogram, TOutput >::GetUseInterMode ( ) const [virtual]

select whether midpoint (intermode=true) or minimum between peaks is used

template<class THistogram , class TOutput = double>
static Pointer itk::IntermodesThresholdCalculator< THistogram, TOutput >::New ( ) [static]

Method for creation through the object factory.

Reimplemented from itk::HistogramThresholdCalculator< THistogram, TOutput >.

template<class THistogram , class TOutput = double>
void itk::IntermodesThresholdCalculator< THistogram, TOutput >::operator= ( const Self ) [private]

Time when GenerateOutputInformation was last called.

Reimplemented from itk::HistogramThresholdCalculator< THistogram, TOutput >.

template<class THistogram , class TOutput = double>
void itk::IntermodesThresholdCalculator< THistogram, TOutput >::PrintSelf ( std::ostream &  os,
Indent  indent 
) const [protected, virtual]

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.

template<class THistogram , class TOutput = double>
virtual void itk::IntermodesThresholdCalculator< THistogram, TOutput >::SetMaximumSmoothingIterations ( unsigned long  _arg) [virtual]
template<class THistogram , class TOutput = double>
virtual void itk::IntermodesThresholdCalculator< THistogram, TOutput >::SetUseInterMode ( bool  _arg) [virtual]

select whether midpoint (intermode=true) or minimum between peaks is used


Member Data Documentation

template<class THistogram , class TOutput = double>
unsigned itk::IntermodesThresholdCalculator< THistogram, TOutput >::m_MaximumSmoothingIterations [private]

Definition at line 99 of file itkIntermodesThresholdCalculator.h.

template<class THistogram , class TOutput = double>
bool itk::IntermodesThresholdCalculator< THistogram, TOutput >::m_UseInterMode [private]

Definition at line 100 of file itkIntermodesThresholdCalculator.h.


The documentation for this class was generated from the following file: