图像金字塔之向下采样

2021-11-03  本文已影响0人  大龙10

《OpenCV轻松入门:面向Python》读书笔记
作者:李立宗
出版社:电子工业出版社
出版时间:2019-05

第11章 图像金字塔

11.2 pyrDown函数及使用

1) pyrDown函数

  OpenCV提供了函数cv2.pyrDown(),用于实现图像高斯金字塔操作中的向下采样,其语法形式为:

dst = cv2.pyrDown( src[, dstsize[, borderType]] )

其中:

默认情况下,输出图像的大小为Size((src.cols+1)/2, (src.rows+1)/2)。在任何情况下,图像尺寸必须满足如下条件:

|dst. width∗2-src. cols|≤2
|dst. height∗2-src. rows|≤2

cv2.pyrDown()函数首先对原始图像进行高斯滤波变换,以获取原始图像的近似图像。比如,高斯滤波变换所使用的核(高斯滤波器)为:



在获取近似图像后,该函数通过抛弃偶数行和偶数列来实现向下采样。

2) 示例

【例11.1】使用函数cv2.pyrDown()对一幅图像进行向下采样

import cv2
o=cv2.imread("lena.bmp",cv2.IMREAD_GRAYSCALE)
r1=cv2.pyrDown(o)
r2=cv2.pyrDown(r1)
r3=cv2.pyrDown(r2)
print("o.shape=",o.shape)
print("r1.shape=",r1.shape)
print("r2.shape=",r2.shape)
print("r3.shape=",r3.shape)
cv2.imshow("original",o)
cv2.imshow("r1",r1)
cv2.imshow("r2",r2)
cv2.imshow("r3",r3)
cv2.waitKey()
cv2.destroyAllWindows()

3) 结果

图11-5 【例11.1】程序的运行结果

可以看到,经过向下采样后,图像的分辨率会变低。

上一篇下一篇

猜你喜欢

热点阅读