OpenCV

OpenCV--图像金字塔

2020-11-21  本文已影响0人  Dayon

图像金字塔是一组图像的集合,集合中的所有图像都是通过对某一图像连续降采样得到的一组图像序列。

图像金字塔

向下采样(生成高斯金字塔)的具体操作为: 从大到小
    1. 对图像进行高斯卷积
    2. 删除所有的偶数行和偶数列

向上采样的缺失信息(生成拉普拉斯金字塔)的具体操作为:从小到大
    1. 首先将维数扩大两倍
    2. 将扩大位的值置为0
    3. 对新的图像进行高斯卷积
    4. 用新的层次的高斯金字塔减去 3 中形成的图像

import cv2
import numpy as np
img = cv2.imread('AM.png')
up = cv2.pyrUp(img)     # 上采样
down = cv2.pyrDown(img) # 下采样
cv2.imshow('img',img)
cv2.imshow('up',up)
cv2.imshow('down',down)
cv2.waitKey(0)
cv2.destroyAllWindows()

image.png

先上采样,再下采样,不能恢复原图的清晰度

up=cv2.pyrUp(img)
#先向上取样再向下取样,有损失
up_down=cv2.pyrDown(up)
cv_show(up_down,'up_down')
cv_show(np.hstack((img,up_down)),'up_down')
image.png
cv_show('img-up_down',img-up_down)  # 前面两图的差异(减法),原图片 - 先向上取样再向下取样
上一篇 下一篇

猜你喜欢

热点阅读