在实际开发中,经常需要改变待处理图像的尺寸。OpenCV为我们提供了一个Resize()函数,可以很方便地直接改变图像尺寸,生成尺寸放大或缩小之后的图像。
但除此之外,还有两个函数,也可以实现改变图片尺寸的功能,这就是pyrUp(),和pyrDown()函数,这是与图像金字塔概念相关的两个函数,从字面缩写也可以看出来,这两个函数分别是对图像进行升采样和降采样。下面介绍究竟什么是图像金字塔。
一幅图像的金字塔是一系列以金字塔形状排列的,分辨率逐步降低且来源于同一张原始图的图像集合。通俗点说,就是将一幅图像进行逐级降采样,每次降采样的过程图像的分辨率都降为原图像的1/2,最后形成类似金字塔的形状。
比如,对一幅640x480的图像,其第1层金字塔对应的尺寸为320x240,第二层金字塔对应的尺寸为160x120,第三层金字塔就是80x60,依此类推。
总结:使用pyrUp()函数对图像进行升采样,使用pyrDown()对图像进行降采样。