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);
}

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

谷粒商城篇章9 ---- P248-P261/P292-P294 ---- 消息队列【分布式高级篇六】

目录 1 消息队列(Message Queue)简介 1.1 概述 1.2 消息服务中两个重要概念 1.3 消息队列主要有两种形式的目的地 1.4 JMS和AMQP对比 1.5 应用场景 1.6 Spring支持 1.7 SpringBoot自动配置 1.7 市面上的MQ产品 2 RabbitMQ 2.1 RabbitMQ简介 2.1.1 RabbitMQ简介 2…

软件测试之测试用例超详细总结

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 一、通用测试用例八要素   1、用例编号;    2、测试项目;   3、测…

应对电脑重新分区文件消失:预防措施、常见成因与恢复关键要点

电脑重新分区文件不见了是一个常见的问题,通常发生在用户对硬盘进行重新分区、格式化或操作系统重装过程中,可能导致已存在的文件和数据暂时不可见或永久丢失。 **预防文件丢失的方法:** 1. **提前备份**: 在进行任何重大磁盘操作前&#xff…

求职面试经验分享,提高求职成功率【文章底部添加可得内推码汇总表】

目录 求职经验分享 底部内推码汇总表 求职经验分享 在如今激烈的职场竞争中,一场成功的求职面试往往是决定未来职业生涯的关键一步。随着招聘流程的不断演进,求职者需要更多地准备,展现自己的优势。本文将分享一些求职面试经验,…

css知识:盒模型盒子塌陷BFC

1. css盒模型 标准盒子模型,content-box 设置宽度即content的宽度 width content 总宽度content(width设定值) padding border IE/怪异盒子模型,border-box width content border padding 总宽度 width设定值 2. 如何…

2000-2022年各省城乡收入差距泰尔指数数据(原始数据+计算过程+结果)

2000-2022年各省城乡收入差距泰尔指数数据(原始数据计算过程结果) 1、时间:2000-2022年 2、指标:地区、居民可支配收入(元)、农村家庭可支配(元)、城市家庭可支配(元&a…

使用RingAttention处理百万长度视频和语言的世界模型

摘要 2402.08268v1.pdf (arxiv.org) 当前的语言模型在理解不容易用语言描述的世界方面存在不足,并且在处理复杂、长篇的任务时也存在困难。视频序列提供了语言中不存在的有价值的时间信息,使其与语言联合建模变得具有吸引力。这样的模型可以发展出对人…

【ctfshow—web】——信息搜集篇1(web1~20详解)

ctfshow—web题解 web1web2web3web4web5web6web7web8web9web10web11web12web13web14web15web16web17web18web19web20 web1 题目提示 开发注释未及时删除 那就找开发注释咯,可以用F12来查看,也可以CtrlU直接查看源代码呢 就拿到flag了 web2 题目提示 j…

智能搬运机器人|海格里斯将如何持续推进工业和物流的智能化升级与发展?

存取、搬运、分拣是物流行业中的通用功能,但具体到每个行业又十分不同,例如:新能源电池领域,它所搬运的东西是电池,50KG~200KG;快递行业领域,所要处理的物料是那种扁平件和信封等等,…

从单线程到多线程——Thread模块-代码实例详解——上一篇博客,有详解。这个就是对上一篇的一个小练习。

这是个单线程:获得图片 import osimport requests from lxml import etree from lxml import html from html.parser import HTMLParser import re count 0 wenjian input("你的照片将要储存到......文件夹:") img_path f"./{wenjian…

minium-小程序自动化测试框架

提起 UI 自动化测试,web 端常用 Selenium,手机端常用 Appium,那么很火的微信小程序可以用什么工具来进行自动化测试?本篇将介绍一款专门用于微信小程序的自动化测试工具 - minium。 简介 minium 是为小程序专门开发的自动化框架…

开源分子对接程序rDock的安装及使用流程

前言 本文介绍开源分子对接程序rDock在Linux Ubuntu 22.04系统上的conda安装、编译安装过程及程序使用流程。 一、rDock是什么? rDock来源 rDock是一个快速、多功能的开源对接程序,可用于将小分子与蛋白质和核酸对接。它专为高通量虚拟筛选&#xff08…