public float[] GetMean ()
{
float[] ret = new float[Channels];
for (int channel = 0; channel < Channels; ++channel) {
long[] channelHistogram = histogram[channel];
long avg = 0;
long sum = 0;
for (int j = 0; j < channelHistogram.Length; j++) {
avg += j * channelHistogram[j];
sum += channelHistogram[j];
}
if (sum != 0) {
ret[channel] = (float)avg / (float)sum;
} else {
ret[channel] = 0;
}
}
return ret;
}