OpenCV4 积分图像
这周是考试周,再加上有挺多课外知识需要输入,就去繁从简,写一写
OpenCV4积分图像吧。
一、编程环境:
| 操作系统 | Windows 10 x64 家庭中文版 |
| IDE | Visual Studio 2019 |
| OpenCV | 4.5.2 |
二、原理介绍:
在没有积分图像之前,计算一幅图像中多个区域的像素平均灰度值,需要遍历各个区域的像素点,分别对像素灰度值进行累加并求平均,这样的操作给人一种数学上的舒适感,但是当所求的多个区域互相重叠时,就会出现重复计算重叠区域数值的情况,当区域数量很多时,就会带来时间上的复杂度。因此,积分图像应运而生,它的出现使得重复区域的像素灰度值只需要计算一次。
积分图像的尺寸比原图像大1,因此,将积分图像中每个像素点所在的位置向左、向上各移动一个单位,就对应其在原图像中的位置。要求解积分图像中每个像素的像素值,需要由原图像对应位置向 x、y 轴分别作垂线,两垂线与 x、y 轴所围成的矩形中所有像素值的和即为积分图像中对应像素的像素值。
为什么说“积分图像的出现可以使重复区域的像素灰度值只需计算一次呢”?
设想一下:现在图像处理要求先计算图像中前5行和前5列相交区域的像素平均灰度值,再计算图像中前7行和前7列相交区域的像素平均灰度值。如果不使用积分图像,那么我们需要分别对像素灰度值进行累加并求平均,但在该计算过程中,前5行和前5列相交区域的像素灰度值重复计算;而如果我们使用积分图像且用 P(5,5) 表示前5行和前5列相交区域的像素灰度值之和,那么我们仅需要先用 P(5,5

本文介绍了OpenCV4中积分图像的概念,强调了其在减少重复计算和提高效率方面的作用。文章阐述了积分图像的原理,说明如何通过积分图像快速求解区域像素平均灰度值,并提到了积分图像的三种类型:标准求和、平方求和和倾斜求和积分图像。作者分享了自己的学习过程,并提供了函数实现的简要说明。
最低0.47元/天 解锁文章
987

被折叠的 条评论
为什么被折叠?



