- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
?
【图像处理】快速计算积分图
分类:?【算法分析】?【机器视觉】?【图像处理】2014-01-06 21:39?4398人阅读?评论(14)?收藏?举报
目录(?)[+]
积分图是图像中十分常用的方法,最初是在Haar特征的快速计算中学到(参考博文:利用积分图像法快速计算Haar特征),后来发现在均值滤波,二值化等图像处理方法中也十分常见。
积分图的简要介绍可以参考博文:利用积分图像法快速计算Haar特征,这里不再重复了。本篇主要是小记一下积分图的计算方法。
由于积分图中每个单元存储的信息是原图中此位置左上角所有像素之和,所以对一张W*H的图像直接求取积分图,需要:
(1+2+...+W-1)*H+(1+2+...+W)*(H=1) = (w-2)*H/(W-1)+2(W+1)*(H-1)/W?
次加法。一种简单的快速计算方法
最直接的快速计算方法是利用以计算积分求当前位置的积分,其思想正如快速计算Haar特征的方法。
即,Integral(i,j) = Integral(i,j-1) +?Integral(i-1,j) - Integral(i-1,j-1) + Image(i,j);
于是,对一张W*H的图像直接求取积分图,需要:
(W-1)+(H-1)+3*(W-1)*(H-1)
次加法。代码如下:
[cpp]?view plaincopy
void?integral(unsigned?char*?inputMatrix,?unsigned?long*?outputMatrix,?int?width,?int?height){??
????//?calculate?integral?of?the?first?line??
????for(int?i=0;iwidth;i++){??
????????outputMatrix[i]?=?inputMatrix[i];??
????????if(i0){??
????????????outputMatrix[i]?+=?outputMatrix[i-1];
????????}??
????}??
????for?(int?i=1;iheight;i++){??
????????int?offset?=?i*width;??
????????//?first?column?of?each?line??
????????outputMatrix[offset]?=?outputMatrix[offset-width]+inputMatrix[offset];??
????????//?other?columns???
????????????outputMatrix[offset+j]?=?outputMatrix[offset+j-1]?+?outputMatrix[offset-width]?+?outputMatrix[offset-width-1]?+?inputMatrix[offset];???
????????}??
????}??
????return?;??
}?
改进的快速计算方法
通过观察上一种方法,发现积分Integral(i,j) 并不需要由三个位置的积分计算出来,只需要左边Integral(i,j-1)加上当前列的和即可。
即,Integral(i,j) =?Integral(i,j-1) + ColumnSum(j);
因此,对一张W*H的图像直接求取积分图,只需要:
(W-1)+(H-1)+2*(W-1)*(H-1)
次加法。代码如下:
[cpp]?view plaincopy
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;iwidth;i++){??
????????columnSum[i]=inputMatrix[i];??
????????outputMatrix[i]?=?inputMatrix[i];??
????????if(i0){??
????????????outputMatrix[i]?+=?outputMatrix[i-1];??
????????}??
????}??
????for?(int?i=1;iheight;i++){??
????????int?offset?=?i*w
您可能关注的文档
- 【2014二轮参考】2013版学海导航高考生物二轮专题总复习 专题7 小专题19 生物技术实践.ppt
- 【2014备考】2013高考地理真题+模拟新题分类汇编—D单元陆地和海洋.doc
- 【2014二轮参考】2013版学海导航高考地理二轮专题总复习第18课时 旅游地理.ppt
- 【2014二轮参考】2013版学海导航高考生物二轮专题总复习专题2 小专题5 光合作用.ppt
- 【2014复习备考】2014届高考化学《红对勾》系列一轮复习课时作业1物质的量 气体摩尔体积.doc
- 【2013珠海二模】广东省珠海市2013届高三5月综合试题(二)语文试题.doc
- 【2014复习备考】2014届高考化学《红对勾》系列一轮复习第5章物质结构 元素周期律.ppt
- 【2014复习备考】2014届高考化学《红对勾》系列一轮复习第10章 第3讲盐类的水解.ppt
- 【2014教师用书】2014高考政治总复习【配套课件】必修3第1单元第一课 文化与社会.ppt
- 【2014教师用书】2014高考政治总复习【配套课件】必修4第4单元第十一课 寻觅社会的真谛.ppt
- 【国际金融学】第18讲:欧洲货币体系.ppt
- 【地理】2010高三一轮复习专题巩固卷二:自然地理事物运动规律(含解析).doc
- 【地理】2011年高考试题分类汇编专题20 旅游地理.doc
- 【地理】2011届高考复习最新6年高考4年模拟分类汇编:自然灾害与防治.doc
- 【地理】2013年高考真题图象图表分类之世界区域图.doc
- 【地理】2013高考试题分类地理环境与区域发展.doc
- 【地理复习课件.典型例题】八年级上册读图题.ppt
- 【城阳办事处】12月微课程《职场礼仪培训》PPT.ppt
- 【备战2014】2013年全国中考政治真题分类汇编人教版八年级政治上册.doc
- 【备战2014】2013年全国中考政治真题分类汇编人教版八年级政治下册:第二单元 我们的人身权利.doc
文档评论(0)