cvIntegral用于确定4X4块的总和

时间:2011-11-08 11:56:36

标签: visual-c++ opencv

我想总结一下我的4X4块。假设我有一个图像并将其分成4X4块。然后我想用cvIntegral确定每个块的总和。我怎么能应付这个?

这是我的基本程序,用于计算整个图像的整数图像值:

float s = 0.0f;
//Read in the image
IplImage* hImage = cvLoadImage("bayer-image.jpg",0);
UINT width = hImage->width; UINT height = hImage->height;

CvMat* sum = cvCreateMat(height + 1, width + 1, CV_32SC1);
CvMat* sqsum = cvCreateMat(height + 1, width + 1, CV_64FC1);

cvIntegral(hImage, sum, sqsum);

cvReleaseImage(&hImage);
cvReleaseMat(&sum);
cvReleaseMat(&sqsum);

接下来我该怎么做?

提前非常感谢。

1 个答案:

答案 0 :(得分:0)

检查一下 http://en.wikipedia.org/wiki/Summed_area_table

例如,由角(1,1)和(4,4)定义的块具有区域

a1 =积分(0,0)+积分(4,4) - 积分(4,0) - 积分(0,4);