OpenCV中的图像金字塔
程序员文章站
2022-07-14 11:34:32
...
躺在床上,辗转反侧,难以入眠,既然这样,何不如开启自己的csdn的blog之旅,也不知道从哪里开始,想了一下,就从比较简单的金字塔结构(包含了图像的和特征提取两方面)开始说起吧。
高斯金字塔(Gaussianpyramid)
个人理解主要是将一张图片通过OpenCV中的下采样操作进行不同尺度的下采样(pyrDown函数),直到达到某一阈值(例如MTCNN中将原始的人脸数据一直下采样到min_w/min_h>=12)为止,其中的若干个图片即构成了高斯金字塔
# -*-coding:utf-8 -*-
import cv2 as cv
# 高斯金字塔
def pyramid_image(image):
cv.imshow("yuan_tu", image)
level = 3 # 金字塔的层数
temp = image.copy() # 拷贝图像
pyramid_images = []
for i in range(level):
dst = cv.pyrDown(temp) # 下采样
pyramid_images.append(dst)
cv.imshow("pyramid" + str(i), dst)
temp = dst.copy()
return pyramid_images
img = cv.imread("apple.jpg")
pyramid_image(img)
cv.waitKey(0)
cv.destroyAllWindows()