在图像处理中有两个常用的相关算法,这就是积分图像(Integral
Image)和积分直方图(Integral Histogram),本文来讲解这两个算法的基本原理。 在本文中主要以灰度图像来讲解。一个图像内矩形区域的积分是指这个矩形区域内所有灰度值的和,如图所示: 如图以3x6图像为例,左侧是原始图像,右侧是其积分图像,其中(2,4)位置的积分为16: 如果每个像素点都公式计算其积分,其运算量就太大了,为了减少计算量,专家经过推导给出了如下计算方法:如图所示: 区域1 : = sum(A); 区域2 : = sum(A + B); 区域3 : = sum(A + C); 区域4 : = sum(A + B + C + D); 所以,如果需要计算D区域中的灰度和,则 sum(D) = 区域4 - 区域2 - 区域3 + 区域1 (都是灰度值)。 很明显,这里仅仅只需要通过查表得到 1、2、3、4点的积分图像的值即可得到。由此计算任意点积分方法可以化为: 下面再说,积分直方图(Integral Histogram)。一个图像内矩形区域的积分积分直方图是指这个矩形区域内所有灰度值的频数。普通的灰度直方图是指一个图像各灰度级出现的频数,如图所示: 本图是一个灰度级为[0,9]的图像,H(4,5)表示的是(0,0)到(4,5)所有像素所有灰度级出现的频数,即后面的数字[2 1 4
3 2 2 2 1 2 1]表示灰度级[0 1 2 3 4 5 6 7 8
9]在区域里出現的频数。如同积分图的计算方法,积分直方图也可以用类似的方法进行。 |
|