自定义直方图平滑函数cvSmoothHist
CvHistogram* cvSmoothHist(CvHistogram* Histogram_src, CvHistogram* Histogram_dst, int step)
{
int start = step - step/2;
int end = 256 - step/2 ;
double temp = 0;
int res[256];
memset(res,0,256*sizeof(int));
for (int i = start; i < end; i++)
{
temp = 0;
for (int j = 0-step/2; j < step/2; j++)
{
temp +=((CvMatND *) Histogram_src->bins)->data.fl[i + j];
}
temp /= step;
res[i] = (int)temp;
}
for (int i = 0; i <= 255; i++)
{
((CvMatND *) Histogram_dst->bins)->data.fl[i] = res[i];
}
return Histogram_dst;
}
参考资料:http://www.cnblogs.com/elaron/archive/2012/06/11/2545119.html