OpenCV--图像金字塔

图像金字塔

图像金字塔

python 复制代码
import cv2

"""
图像金字塔:同一图像不同分辨率的子图合集
主要用于图像分割
"""

高斯金字塔

python 复制代码
"""
高斯金字塔:通过高斯平滑和亚采样(采样后图像变小了)获得一系列下采样图像
它通过不断降采样(缩小)原始图像来构建,处理后结果图像是原图像的四分之一。
高斯金字塔主要用于图像的分割、特征提取、图像匹配等任务。

原理:用高斯核对图像进行卷积,然后进行下采样(去除所有偶数行和列)
"""
img = cv2.imread('./img/cat.jpeg')

# 分辨率减小的操作,下采样(会丢失图像信息)
dst = cv2.pyrDown(img)
# 与之对应的上采样(将图像在每个方向上扩大两倍,新增的行和列用0填充),用高斯核(乘以四)与放大的图像卷积
dst1 = cv2.pyrUp(img)

拉普拉斯金字塔

python 复制代码
"""
拉普拉斯金字塔:通过在高斯金字塔(下采样)的基础上,对每一层图像进行上采样,并使用原高斯金字塔的相应层减去上采样后的结果,从而得到的一系列残差图像。
"""
# 先缩小后放大
dst2_1 = cv2.pyrDown(img)
dst2_2 = cv2.pyrUp(dst2_1)
# 然后原图和高斯金字塔的差 即:拉普拉斯金字塔
# 第一层拉普拉斯金字塔
lap_0 = img - dst2_2

cv2.waitKey(0)
cv2.destroyAllWindows()
相关推荐
IT_陈寒1 小时前
JavaScript的默认参数挖坑实录,我掉进去了
前端·人工智能·后端
米小虾1 小时前
多Agent系统编排详解:从架构设计到代码实现
人工智能·agent
米小虾1 小时前
多Agent系统的编排:架构、协议与企业级应用
人工智能·agent
To_OC10 小时前
搞懂 Token 和 Embedding 后,我终于明白大模型是怎么 "读" 文字的
人工智能·llm·agent
冬奇Lab13 小时前
每日一个开源项目(第139篇):Voicebox - 本地运行的开源 ElevenLabs 替代品
人工智能·开源·资讯
冬奇Lab13 小时前
Skill 系列(03):Skill 设计范式——5 个模式让输出从混沌到可预测
人工智能·开源·agent
IT_陈寒15 小时前
Python搞不定字符串编码?这破玩意坑我两小时!
前端·人工智能·后端
大模型真好玩16 小时前
什么是Loop Engineering?最通俗易懂的Loop Engineering核心概念
人工智能·agent·deepseek
叁两16 小时前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js