dip::DirectionalStatisticsAccumulator class

DirectionalStatisticsAccumulator computes directional mean and standard deviation by accumulating a unit vector with the input value as angle.


Samples are added one by one, using the Push method. Other members are used to retrieve estimates of the sample statistics based on the samples seen up to that point.

It is possible to accumulate samples in different objects (e.g. when processing with multiple threads), and add the accumulators together using the + operator.


void Reset()
Reset the accumulator, leaving it as if newly allocated.
void Push(dip::dfloat x)
Add a sample to the accumulator
auto Number() const -> dip::uint
Number of samples
auto Mean() const -> dip::dfloat
Unbiased estimator of population mean
auto Variance() const -> dip::dfloat
Unbiased estimator of population variance
auto StandardDeviation() const -> dip::dfloat
Estimator of population standard deviation (it is not possible to derive an unbiased estimator)


auto operator+=(dip::DirectionalStatisticsAccumulator const& b) -> dip::DirectionalStatisticsAccumulator&
Combine two accumulators