OpenCV图像滤波(4)构建图像金字塔函数buildPyramid()的使用

news2025/1/12 9:05:20
  • 操作系统:ubuntu22.04
  • OpenCV版本:OpenCV4.9
  • IDE:Visual Studio Code
  • 编程语言:C++11

算法描述

在计算机视觉和图像处理中,构建图像金字塔(Image Pyramid)是一种常用的技术,它生成一系列分辨率逐渐降低的图像副本。图像金字塔在很多应用中都非常有用,比如目标检测、特征匹配、尺度不变特征提取等。

图像金字塔的类型

  • 高斯金字塔(Gaussian Pyramid):
    • 通常用于生成不同尺度下的图像副本。
    • 每一层金字塔都是前一层的低通滤波版本。
  • 拉普拉斯金字塔(Laplacian Pyramid):
    • 通常用于图像融合、图像压缩等。
    • 每一层是相邻两层高斯金字塔之间的差异。

函数原型

函数构建图像的高斯金字塔。
该函数构造一个图像向量,并通过递归地应用 pyrDown 到之前构建的金字塔层来构建高斯金字塔,从 dst[0] == src 开始。

void cv::buildPyramid	
(
	InputArray 	src,
	OutputArrayOfArrays 	dst,
	int 	maxlevel,
	int 	borderType = BORDER_DEFAULT 
)	

参数

  • 参数src: 源图像。请参阅 pyrDown 的文档以获取支持的图像类型列表。
  • 参数dst: 目的地向量,包含 maxlevel + 1 个与 src 同类型的图像。dst[0] 将与 src 相同。dst[1] 是金字塔的下一层,它是 src 的平滑和缩小版,依此类推。
  • 参数maxlevel:最后一层(最小的一层)金字塔的 0 基索引。必须是非负数。
  • 参数borderType:像素外推方法,参见 BorderTypes(不支持 BORDER_CONSTANT)

示例代码

#include <opencv2/opencv.hpp>
#include <iostream>
#include <vector>

int main(int argc, char** argv)
{
    // 加载图像
    cv::Mat src = cv::imread("/media/dingxin/data/study/OpenCV/sources/images/fruit_small.jpg", cv::IMREAD_COLOR);
    if (!src.data)
    {
        std::cerr << "错误: 无法打开或找到图像。" << std::endl;
        return -1;
    }

    // 创建金字塔
    int maxlevel = 3; // 金字塔层数
    std::vector<cv::Mat> pyramid(maxlevel + 1);

    // 构建高斯金字塔
    pyramid[0] = src; // 第一层为原始图像
    for (int i = 1; i <= maxlevel; ++i)
    {
        cv::pyrDown(pyramid[i - 1], pyramid[i]); // 使用pyrDown构建下一层
    }

    // 显示原始图像和金字塔中的每一层
    cv::namedWindow("原始图像", cv::WINDOW_NORMAL);
    cv::imshow("原始图像", src);

    for (int i = 0; i <= maxlevel; ++i)
    {
        std::stringstream windowNameStream;
        windowNameStream << "金字塔第 " << (i + 1) << " 层";
        std::string windowName = windowNameStream.str();
        cv::namedWindow(windowName, cv::WINDOW_NORMAL);
        cv::imshow(windowName, pyramid[i]);
    }

    cv::waitKey(0);

    return 0;
}

运行结果

原始图像:
在这里插入图片描述
金字塔第一层:
在这里插入图片描述
金字塔第二层:
在这里插入图片描述
金字塔第三层:

在这里插入图片描述
金字塔第四层:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1959567.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

怎么保护电脑文件夹?文件夹保护方法大盘点

文件夹是管理电脑数据的重要工具&#xff0c;可以有效避免数据混乱。而为了避免文件夹数据泄露&#xff0c;我们需要严格保护文件夹。下面我们就来盘点一下文件夹的保护方法。 文件夹隐藏 隐藏文件夹是一种简单有效的保护方式&#xff0c;通过隐藏文件夹来避免其他人发现&…

【算法】道格拉斯

一、引言 道格拉斯算法是一种用于曲线拟合的数学方法&#xff0c;特别是在处理曲线插值问题时非常有用。道格拉斯-普克算法&#xff08;Douglas-Peucker Algorithm&#xff09;&#xff0c;简称D-P算法&#xff0c;是一种用于简化多边形或折线的高效算法&#xff0c;由David Do…

如何优化PyTorch以加快模型训练速度?

PyTorch是当今生产环境中最流行的深度学习框架之一。随着模型变得日益复杂、数据集日益庞大&#xff0c;优化模型训练性能对于缩短训练时间和提高生产力变得至关重要。 本文将分享几个最新的性能调优技巧&#xff0c;以加速跨领域的机器学习模型的训练。这些技巧对任何想要使用…

【ROS 最简单教程 002/300】ROS 集成开发环境安装 (虚拟机版): Noetic

&#x1f497; 有遇到安装问题可以留言呀 ~ 当时踩了挺多坑&#xff0c;能帮忙解决的我会尽力 &#xff01; 1. 安装操作系统环境 Linux ❄️ VM / VirtualBox Ubuntu20.04 &#x1f449; 保姆级图文安装教程指路&#xff0c;有经验的话 可以用如下资源自行安装 ITEMREFERENCE…

遥感领域新方向!Mamba+RS论文汇总!

本文总结了将Mamba应用至遥感领域的相关论文&#xff08;14篇&#xff09;&#xff0c;涉及到的论文见文末链接&#xff0c;具体如下&#xff1a; 文章目录 1. 遥感图像处理2. 多/高光谱图像分类3. 变化检测/语义分割4. 遥感图像融合/超分辨率 1. 遥感图像处理 论文题目&#…

AWD神器—watchbird后台rce挖掘

简介 在传统的AWD攻防中&#xff0c;Waf扮演着重要的角色&#xff0c;Watchbird作为一款专门为AWD而生的PHP防火墙&#xff0c;具有部署简单&#xff0c;功能强大等特点&#xff0c;一出世便受到了广大CTFer的喜爱&#xff0c;目前在GitHub上已有600多star。本篇则详细介绍如果…

传输层UDP协议

传输层UDP协议 1. 再谈端口号2. UDP协议1.1 UDP协议字段1.2 将报头和数据进行分离 3. UDP的特点 1. 再谈端口号 端口号(Port)标识了一个主机上进行通信的不同的应用程序; 在 TCP/IP 协议中, 用 “源 IP”, “源端口号”, “目的 IP”, “目的端口号”, “协议号” 这样一个五元…

AI大模型评测方法总结!

大语言模型评测对应用和后续发展至关重要&#xff0c;其评测范式包括经典和新型两种。经典评测范式涵盖自然语言理解和生成任务&#xff0c;本文介绍了流行的经典评测基准及新型评测范式下的代表性基准和实例&#xff0c;并总结了现有评测的不足。随后&#xff0c;文章提出了全…

不入耳耳机和入耳耳机哪个好?四款不入耳蓝牙耳机推荐指南

那当然是不入耳耳机好啦&#xff0c;那先讲讲入耳和不入耳的区别&#xff1a; 佩戴舒适度&#xff1a; 入耳蓝牙耳机是直接插入耳道&#xff0c;所以同时也会堵塞耳道长期积攒耳垢、造成耳道不适。 不入耳蓝牙耳机则通常设计为耳挂式或耳廓式&#xff0c;挂在耳朵外部能保持…

antd pro实现后台管理系统的建立(一)

一、初始化项目 1、全局安装pro-cli初始化脚手架 # 使用 npm或者cnpm或tyarn npm i ant-design/pro-cli -g这里建议使用npm或者tyarn&#xff0c;cnpm和npm部分不兼容&#xff0c;创建项目时会报部分依赖缺失的问题 2、创建项目pro create myapp pro create myappsimple 是基…

本地部署 Llama 3.1:Ollama、OpenWeb UI 和 Spring AI 的综合指南

、 本文介绍如何使用 Ollama 在本地部署 Llama 3.1:8B 模型&#xff0c;并通过 OpenWeb UI 和 Spring AI 来增强模型交互体验和简化 API 的调用过程。 Ollama Ollama 是一个开源的大语言模型服务工具&#xff0c;旨在简化大模型的本地部署和运行过程。用户只需要输入一行命令&…

学习008-02-04-03 Group List View Data(组列表查看数据)

Group List View Data&#xff08;组列表查看数据&#xff09; This lesson explains how to group the Employee List View data by department and position. 本课介绍如何按部门和职位对员工列表视图数据进行分组。 Note Before you proceed, take a moment to review the …

从零开始使用YOLOv8——环境配置与极简指令(CLI)操作:1篇文章解决—直接使用:模型部署 and 自建数据集:训练微调

目录 一、Yolov8源码下载 二、虚拟环境创建与必要包的安装 1.虚拟环境 2.Pytorch安装 3.Ultralytics安装 3.环境测试 三、简单命令行指令&#xff08;CLI&#xff09;使用 1.模型配置&#xff08;关键指令&#xff09;——cfg &#xff08;1&#xff09;选择任务场景——ta…

收藏丨企业官网一般选择什么类型的SSL证书比较好?

企业官网在选择SSL证书时&#xff0c;应综合考虑网站的安全性需求、用户信任度、成本效益以及管理便捷性等因素。一般来说&#xff0c;企业官网比较适合选择以下几种类型的SSL证书&#xff1a; 1. 企业型SSL证书&#xff08;Organization Validated, OV&#xff09; 特点&…

初识MyBati s

J D B C 编 程 和 O R M 模 型 加 载 驱 动 导 入 J D B C 连 接 数 据 库 的 j a r 包 &#xff0c; 利 用 C L A S S . f o r N a m e 加 载 驱 动 &#xff1b; 获 取 连 接 利 用 D r i v e r M a n a g e r 获 取 C o n n e c t i o n &#xff0c; 然 后 创 建 S t a t e…

生成式人工智能的第一课,揭开她那神奇的面纱

一、人工智能&#xff08;Artificial Intelligence&#xff09; 从1940年代开始&#xff0c;科学家们在数学推理的基础上发明了可编程数字计算机&#xff0c;这一突破激发了他们对创建“电子大脑”的探索热情&#xff0c;为后续的人工智能发展奠定了坚实的基础。1956年&#x…

2024西安铁一中集训DAY23 ---- 模拟赛(类括号匹配dp + baka‘s trick 优化双指针 + 组合数学/高斯消元 + 图上性质题)

文章目录 前言时间安排及成绩题解A. 稻田灌溉&#xff08;类括号匹配dp&#xff09;B. 最长模区间&#xff08;bakas trick 优化双指针&#xff09;C. 三只小猪和狼&#xff08;组合数学&#xff0c;高斯消元&#xff09;D. 黑色连通块 前言 感觉是开始集训以来最难的一场了&a…

睿考网:中级会计师和注册会计师哪个难?

中级会计师和注册会计师两个资格证书对比下来&#xff0c;后者具有更高的挑战性&#xff0c;主要原因有以下几点&#xff1a; 1. 考试科目和内容&#xff1a; 注册会计师考试包含专业阶段与综合阶段&#xff0c;共涉及六个科目&#xff0c;考察的内容覆盖范围更广泛&#xff…

最新Yiso智云搜索引擎系统源码/开源PHP源码/修复版

源码简介&#xff1a; 最新Yiso智云搜索引擎系统源码/开源PHP源码/修复版。Yiso 是一个性能非常好的搜索引擎&#xff0c;不仅免费开源&#xff0c;还能当作收录网址的平台来用呢&#xff01;只需要输入关键词&#xff0c;就能轻松找到相关的搜索结果内容。 1、Yiso 用的是自…

脚本: 监控Oracle数据库中正在运行的SQL(Oracle DBA的工作利器)

英文原文网址&#xff1a;[Script: Monitoring Running SQL in Oracle Database in Real Time] (https://byte-way.com/2024/07/24/script-monitoring-running-sql-in-oracle-database-in-real-time/) 以下SQL查询活动会话及其正在执行的SQL语句的信息&#xff0c;并提供有关其…