opencv图像放缩与插值-resize函数

在OpenCV中,resize函数用于对图像进行尺寸调整(放大或缩小),这个过程中通常需要用到插值方法来计算新尺寸下图像像素的值。插值方法对于放缩的质量有着直接影响。

void resize(InputArray src, OutputArray dst, Size dsize, double fx = 0, double fy = 0, int interpolation = INTER_LINEAR);

src:输入图像。
dst:输出图像。尺寸由dsize指定,或者通过fx和fy与源图像的相对关系确定。
dsize:输出图像的尺寸。如果为零,则通过fx和fy计算得出。
fx和fy:沿x轴和y轴的比例因子。如果dsize非零,则这两个参数被忽略。
interpolation:插值方法。OpenCV提供了多种插值方法,常用的包括INTER_LINEARINTER_NEARESTINTER_AREA等。

插值方法

INTER_NEAREST:最近邻插值,速度最快,但质量最低,适用于图像缩小。
INTER_LINEAR:双线性插值,速度和质量之间的折中选择,适用于图像放大和缩小,是默认方法。
INTER_AREA:区域插值,适用于图像缩小,优于INTER_NEAREST,在缩小图像时推荐使用。
INTER_CUBIC:三次插值,质量比INTER_LINEAR更好,但速度更慢,适用于图像放大。
INTER_LANCZOS4:Lanczos插值,使用4x4邻域,提供高质量的结果,适用于图像放大和缩小,但速度最慢。

注:在实际应用中,应该根据具体需求选择合适的插值方法。例如,对于图像缩小,INTER_AREA提供了较好的结果;而对于图像放大,INTER_CUBIC或INTER_LANCZOS4可能更适合。

例子

void QuickDemo::resize_demo(Mat &image) {
	Mat zoomin, zoomout;
	int h = image.rows;
	int  w = image.cols;
	resize(image, zoomin, Size(w / 2, h / 2), 0, 0, INTER_LINEAR);//图像放缩与插值
	imshow("zoomin", zoomin);
	resize(image, zoomout, Size(w*1.5, h *1.5), 0, 0, INTER_LINEAR);//图像放缩与插值
	imshow("zoomout", zoomout);
}

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Linux 性能分析工具汇总

Linux 性能分析工具汇总 出于对Linux操作系统的兴趣,以及对底层知识的强烈欲望,因此整理了这篇文章。本文也可以作为检验基础知识的指标,另外文章涵盖了一个系统的方方面面。如果没有完善的计算机系统知识,网络知识和操作系统知识…

k-邻近算法(kNN)

目录 k-近邻算法概述 k-近邻算法的一般流程 kNN算法伪代码 k-近邻算法概述 优点:精度高、对异常值不敏感、无数据输入假定 缺点:计算复杂度高、空间复杂度高 适用数据范围:数值型和标称型 k-近邻算法的一般流程 (1&#x…

2024年最新1000个Java毕业设计选题参考

文章目录 2024年最新Java毕业设计选题参考一、Java毕业设计选题参考二、javaweb毕业设计选题三、springboot/ssm毕业设计选题参考 源码获取: 博主介绍:✌全网粉丝7W,CSDN博客专家、Java大数据领域优质创作者,博客之星、掘金/华为云/阿里云/In…

强化学习(SAC)

SAC—— soft actor-critic SAC算法是一种现代的深度强化学习算法,它结合了基于策略的和基于价值的方法。SAC的核心思想是最大化期望回报的同时保持策略的随机性,这有助于提高探索环境的效率,并且通常可以赵高更好的策略。 发展史&#xff…

C++从入门到精通 第十四章(STL容器)【上】

写在前面: 本系列专栏主要介绍C的相关知识,思路以下面的参考链接教程为主,大部分笔记也出自该教程,笔者的原创部分主要在示例代码的注释部分。除了参考下面的链接教程以外,笔者还参考了其它的一些C教材(比…

接口自动化测试利器,使用Rest Assured进行REST API测试

我们在做接口测试时,一般在代码中会使用HttpClient,但是HttpClient相对来讲还是比较麻烦的,代码量也相对较多,对于新手而言上手会比较难一点,今天我们来看下另一个接口测试工具包REST Assured REST Assured是一个流行…

Qt 基础之进度条 - QProgressDialog和QProgressBar

Qt 基础之进度条 - QProgressDialog和QProgressBar 引言一、QProgressDialog例程1.1 效果展示1.2 源码 二、QProgressBar例程2.1 效果展示2.2 源码 三、QProgressBar进阶 引言 进度条的作用是用于显示任务或操作的进度,以便用户了解当前任务的完成情况。它可以提供…

如何删除PS最近使用项

ps删除最近文件列表 点击菜单栏中文件->最近打开文件->清除最近的文件列表

【python】windowslinux系统python的安装

一、python官网及下载路径 官网地址:Welcome to Python.org 下载路径:Download Python | Python.org ​​​​​​​ linux源码安装包下载: windows二进制安装包下载: 二、Linux如何安装python 2.1 单版本安装 以安装python…

Python实现线性逻辑回归和非线性逻辑回归

线性逻辑回归 # -*- coding: utf-8 -*- """ Created on 2024.2.20author: rubyw """import matplotlib.pyplot as plt import numpy as np from sklearn.metrics import classification_report from sklearn import preprocessing from sklearn…

Java+SpringBoot+Vue的大学生就业信息管理系统

一、项目介绍 基于Java (spring-boot)的大学生就业信息管理系统分为三个角色:管理员、企业、求职者。 功能:登录、注册功能、学生信息管理、企业信息管理、岗位分类管理、学历信息管理、应聘信息管理、求职者信息管理、招聘信息管理。 二、作品包含 三、项目技术 后…

BERT架构简介

一、BERT模型架构 BERT沿用原始Transformer模型中的编码器层,具有编码器的堆叠。但BERT没有使用解码器层,因此没有掩码多头注意力子层。(BERT的设计者认为,对序列后续部分进行掩码会阻碍注意力过程)。于是,…

Day 30 标准IO

文章目录 1.什么是标准IO1.1 概念1.2 特点1.3 操作 2.缓存区3.函数接口3.1 打开文件fopen3.2 关闭文件 fclose3.3 读写文件操作3.3.1 每次读写一个字符:fgetc()、fputc()每次读一个字符fgetc()每次写一个字符fputc()(1)针对文件(2)针对终端feof和ferror 3.3.2 每次一…

笔试题详解(C语言进阶)

前言 欢迎阅读本篇文章!本篇文章通过一个笔试题来加强我们对C语言的理解,希望对你有帮助。后续我会写一个栏目,集合我见到的C语言题目,进行分析讲解。 1、题目一 判断下面程序的输出结果:(下面说的地址4/8字节是因为对…

【GameFramework框架内置模块】2、数据节点(Data Node)

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 【GameFramework框架】系列教程目录: https://blog.csdn.net/q7…

机器学习 day38(有放回抽样、随机森林算法、XGBoost)

有放回抽样 有放回抽样和无放回抽样的区别:有放回可以确保每轮抽取的结果不一定相同,无放回则每轮抽取的结果都相同 在猫狗的例子中,我们使用”有放回抽样“来抽取10个样本,并组合为一个与原始数据集不同的新数据集,虽…

ORM中常用的字段和参数,正反向概念

django表查询测试环境搭建 首先,在此之前我们先来回顾一下之前学习的orm内容 1. django自带一个小型的sqlite3的小型数据库 但是这个数据库的功能非常有限,并且针对日期类型的数据兼容性很差 2. 切换数据库数据(MySQL) 2.1 在django1.x版本中你需要在_…

盲水印、暗水印(Blind Watermark)算法简明教程:算法原理、流程以及基于C/C++ 的代码实现

前言 由于工作需要,最近学习了盲水印相关的知识,本文对学习过程中做一个整理和总结。主要内容包括: 对盲水印相关概念做基本介绍对开源的 python 算法 blind_watermark 进行解析,给出算法流程基于 blind_watermark,给…

qt - 19种精美软件样式

qt - 19种精美软件样式 一、效果演示二、核心程序三、下载链接 一、效果演示 二、核心程序 #include "mainwindow.h"#include <QtAdvancedStylesheet.h> #include <QmlStyleUrlInterceptor.h>#include "ui_mainwindow.h" #include <QDir&g…

提高工作效率,体验ONLYOFFICE办公软件

ONLYOFFICE办公软件 一、前言二、特点完整办公套件协作过程更容易 三、访问地址 一、前言 随着数字化办公的普及&#xff0c;办公软件在我们的工作中扮演着越来越重要的角色。为了提高工作效率&#xff0c;我们需要一个功能强大、易于使用的办公软件。ONLYOFFICE作为一款全功能…