积分图计算方法
2017-04-20 17:25
155 查看
3. 积分图
3.1 积分图的概念
在获取了矩形特征后,要计算矩形特征的值。Viola等人提出了利用积分图求特征值的方法。积分图的概念可用图3表示:坐标A(x,y)的积分图是其左上角的所有像素之和(图中的阴影部分)。定义为:
其中ii(x,y)表示积分图,i(x,y)表示原始图像,对于彩色图像,是此点的颜色值;对于灰度图像,是其灰度值,范围为0~255。
在上图中,A(x,y)表示点(x,y)的积分图;s(x,y)表示点(x,y)的y方向的所有原始图像之和。积分图也可以用公式(2)和公式(3)得出:
3.2 利用积分图计算特征值
3.3 计算特征值
由上一节已经知道,一个区域的像素值,可以由该区域的端点的积分图来计算。由前面特征模板的特征值的定义可以推出,矩形特征的特征值可以由特征端点的积分图计算出来。以“两矩形特征”中的第二个特征为例,如下图,使用积分图计算其特征值:void fastIntegral(unsigned char* inputMatrix, unsigned long* outputMatrix, int width, int height){
unsigned long *columnSum = new unsigned long[width]; // sum of each column
// calculate integral of the first line
for(int i=0;i<width;i++){
columnSum[i]=inputMatrix[i];
outputMatrix[i] = inputMatrix[i];
if(i>0){
outputMatrix[i] += outputMatrix[i-1];
}
}
for (int i=1;i<height;i++){
int offset = i*width;
// first column of each line
columnSum[0] +=inputMatrix[offset];
outputMatrix[offset] = columnSum[0];
// other columns
for(int j=1;j<width;j++){
columnSum[j] += inputMatrix[offset+j];
outputMatrix[offset+j] = outputMatrix[offset+j-1] + columnSum[j];
}
}
return ;
}
相关文章推荐
- 计算方法——积分
- 中国建设银行乐当家理财卡权益积分计算方法
- 【计算方法笔记】数值积分
- R语言由Monte Carlo方法计算积分
- 由相位噪声曲线计算积分相噪和Jitter的方法
- 计算积分的方法 —— 分布积分
- 基于Boost方法的人脸检测(3):特征生成、特征值计算(积分图)
- [占坑] 图像处理中计算积分图使用类似dp的方法而不用树状数组的原因
- CSDN博客的积分计算方法和博客排名规律
- CSDN博客的积分计算方法和博客排名规律
- 图像特征之 Haar-like特征(二)计算方法-积分图
- Q122:PBRT-V3,提高Monte Carlo积分计算效率的方法——Russian Roulette和Splitting(13.7章节)
- CSDN博客的积分计算方法和博客排名规律
- CSDN博客的积分计算方法和博客排名规律
- CSDN博客的积分计算方法和博客排名规律
- 积分计算方法(带过期时间)
- 积分图(用于计算块像素差异的快速方法)
- 4000 复杂积分的计算机模拟数值计算方法
- CSDN博客的积分计算方法和博客排名规律