建设网站公司哪个好,宁夏住房和城乡建设局网站,河南外贸网站制作,有没有便宜的网站制作 图像金字塔是由一幅图像的多个不同分辨率的子图构成的图像集合。是通过一个图像不断的降低采样率产生的#xff0c;最小的图像可能仅仅有一个像素点。下图是一个图像金子塔的示例。从图中可以看到#xff0c;图像金字塔是一系列以金字塔形状排列的、自底向上分辨率逐渐降低…
图像金字塔是由一幅图像的多个不同分辨率的子图构成的图像集合。是通过一个图像不断的降低采样率产生的最小的图像可能仅仅有一个像素点。下图是一个图像金子塔的示例。从图中可以看到图像金字塔是一系列以金字塔形状排列的、自底向上分辨率逐渐降低的图像集合。 通常情况下图像金字塔的底部是待处理的高分辨率图像原始图像而顶部则为其低分辨率的近似图像。向金字塔顶部移动时图像的尺寸和分辨率都不断地降低。通常情况下每向上移动一级图像的宽和高都降低为原来的二分之一。
一、理论基础 图像金字塔是同一图像不同分辨率的子图集合是通过原图像不断地向下降低采样而产生的即由高分辨率的图像大尺寸产生低分辨率的近似图像小尺寸。
1. 向下采样 最简单的图像金字塔可以通过不断的删除图像的偶数行和偶数列得到的。例如有一幅图像其大小是N*N删除其偶数行和偶数列后得到一幅(N/2)*(N/2)大小的图像。经过上述处理后图像的大小变为原来的四分之一不断重复该过程就可以得到该图像的图像金字塔。
也可以通过先对原始图像滤波得到原始图像的近似图像然后将近似图像的偶数行和偶数列删除以获取向下采样的结果。有多种滤波器可以选择。
领域滤波器采用邻域平均值计算求原始图像的近似图像。该滤波器能够产生平均金字塔。
高斯滤波器采用高斯滤波器对原始图像进行滤波得到高斯金字塔。这是OpenCV函数cv2.pyrDown()所采用的的方式。
高斯金字塔是通过不断地使用高斯金字塔滤波、采样所产生的其过程如下 经过上述处理后原始图像与各次向下采样所得到的结果图像共同构成了高斯金字塔。例如可以将原始图像称为第0层第1次向下采样的结果图像称为第一层、第2次向下采样的结果图像称为第2层以此类推。上述图像所构成的高斯金字塔如图所示。 下面为了表述统一我们一律将图像金字塔中底层称为第0层底层上面一层称为第1层并以此类推。
2. 向上采样 在向上采样的过程中通常将图像的宽度和高度都变为原来的2倍。这意味着向上采样的结果图像的大小是原始图像的4倍。因此要在结果图像中补充大量的像素点。对新生成的像素点进行赋值的行为称为 插值。该过程可以通过多种方式实现例如最邻近插值就是使用最邻近的像素点给当前还没有值的像素点赋值。
还有一种常见的向上采样对像素点以补零的方式完成插值。通常是在每列像素点的右侧插入值为零的列在每行像素点的下方插入值为零的行。如图左侧是要进行向上采样的4个像素点右侧是向上采样时进行补零后处理结果。
接下来使用向下采样时所使用的的高斯滤波器对补零后的图像进行滤波处理以获取向上采样的结果图像。 但是需要注意此时图像中有四分之三的像素点的值都是零。所以要将高斯滤波器系数乘以4以保证得到的像素值在其原有像素值的范围内。
例如针对上图右侧的像素点其对应的是8位图像像素值的范围是[0, 255]。由于其中四分之三的像素点的值都是为零如果直接使用高斯滤波器对其进行卷积计算会导致像素值的范围变为[0, 255*1/4]。所以要将所使用的高斯滤波器系数乘以4以保证得到像素值的范围仍旧在[0, 255]内。
或者从另一个角度理解在原始图像内每个像素点的右侧列插入零值列在每个像素点的下一行插入零值行将图像变为原来的两倍宽、两倍高。接下来将补零后的图像用高斯滤波器进行卷积运算。最后将图像内每个像素点的值乘以4以保证像素值的范围与原始图像一致。
通过以上分析可知向上采样和向下采样是相反的两种操作。但是由于上下采样会丢失像素值所以两种操作并不是可逆的。 也就是说对一幅图像先向上采样、再向下采样是无法恢复期原始状态的同样对一幅图像先向下采样、再向上采样也是无法恢复到原始状态的。
值得注意的是为什么先高斯滤波才降采样直接使用降采样会有过多噪音平滑能减少噪音对整体影像的影响。