opencv-高斯金字塔与拉普拉斯金字塔

本文详细介绍了高斯金字塔和拉普拉斯金字塔在图像处理中的应用,包括通过高斯模糊进行上下采样的过程,以及如何从原图像中提取高频信号。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

高斯金字塔

高斯金字塔其实原理很简单,就是通过高斯模糊(高斯滤波)后进行上采样和下采样,其中Down表示下采样函数,下采样可以通过抛去图像中的偶数行和偶数列来实现,这样图像长宽各减少二分之一,面积减少四分之一。opencv提供了pyrDown()函数用于下采样,效果如下:

import cv2

img = cv2.imread('7.jpg')

for i in range(3):
    cv2.imshow(f'img{i}',img)
    img = cv2.pyrDown(img)
    # img = cv2.pyrUp(img)

cv2.waitKey(0)

下采样
上采样与下采样相反,通过高斯模糊后高和宽放大到原来的一杯

import cv2

img = cv2.imread('7.jpg')

for i in range(3):
    cv2.imshow(f'img{i}',img)
    # img = cv2.pyrDown(img)
    img = cv2.pyrUp(img)

cv2.waitKey(0)

上采样
综上可以看出,高斯金字塔无论是上采样还是下采样每次采样后图像都要进行一次高斯模糊,所以图像会越来越模糊。

拉普拉斯金字塔

拉普拉斯金字塔是由高斯金字塔而来,公式如下,经过高斯金字塔上或下采样后图片滤掉了一下高频信号,用原图片与采样后的图片相减就可以得到高频信号:
拉普拉斯

import cv2

img = cv2.imread('7.jpg')
img_down = cv2.pyrDown(img)
img_up = cv2.pyrUp(img_down)
img_new = cv2.subtract(img,img_up)
img_new = cv2.convertScaleAbs(img_new,alpha=5,beta=0)
cv2.imshow('img_lap',img_new)
cv2.waitKey(0)

拉普拉斯

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值