[ VIGRA Homepage | Function Index | Class Index | Namespaces | File List | Main Page ]
FindAverageAndVariance< VALUETYPE > Class Template Reference |
Find the average pixel value and its variance in an image or ROI. More...
#include <vigra/inspectimage.hxx>
Public Types | |
typedef VALUETYPE | argument_type |
typedef VALUETYPE | first_argument_type |
typedef NumericTraits < VALUETYPE >::RealPromote | result_type |
typedef double | second_argument_type |
typedef NumericTraits < VALUETYPE >::RealPromote | value_type |
Public Member Functions | |
result_type | average () const |
unsigned int | count () const |
FindAverageAndVariance () | |
void | operator() (argument_type const &v) |
void | operator() (first_argument_type const &v, second_argument_type weight) |
void | operator() (FindAverageAndVariance const &v) |
result_type | operator() () const |
void | reset () |
result_type | variance (bool unbiased=false) const |
Find the average pixel value and its variance in an image or ROI.
This Functor uses West's algorithm to accumulate highly accurate values for the mean and the sum of squared differences of all values seen so far (the naive incremental algorithm for the computation of the sum of squares produces large round-off errors when the mean is much larger than the standard deviation of the data.) This Functor can also be used in conjunction with ArrayOfRegionStatistics to find the statistics of all regions in a labeled image.
Traits defined:
FunctorTraits::isUnaryAnalyser
and FunctorTraits::isInitializer
are true (VigraTrueType
)
Usage:
#include <vigra/inspectimage.hxx>
Namespace: vigra
Required Interface:
typedef VALUETYPE argument_type |
the functor's argument type
typedef VALUETYPE first_argument_type |
the functor's first argument type (for calls with a weight)
typedef double second_argument_type |
the functor's second argument type (for calls with a weight)
typedef NumericTraits<VALUETYPE>::RealPromote result_type |
the functor's result type
typedef NumericTraits<VALUETYPE>::RealPromote value_type |
init average
void reset | ( | ) |
(re-)init average and variance
void operator() | ( | argument_type const & | v | ) |
update average and variance
void operator() | ( | first_argument_type const & | v, |
second_argument_type | weight | ||
) |
update average and variance, using weighted input. stats(value, 1.0)
is equivalent to the unweighted call stats(value)
, and stats(value, 2.0)
is equivalent to two unweighted calls.
void operator() | ( | FindAverageAndVariance< VALUETYPE > const & | v | ) |
merge two statistics
unsigned int count | ( | ) | const |
return number of values (sum of weights) seen so far
result_type average | ( | ) | const |
return current average
result_type variance | ( | bool | unbiased = false | ) | const |
result_type operator() | ( | ) | const |
return current variance. calls variance()
.
© Ullrich Köthe (ullrich.koethe@iwr.uni-heidelberg.de) |
html generated using doxygen and Python
|