OpenCV-尺寸调整cv::resize
作者:翟天保Steven
版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处
函数原型
void resize( InputArray src, OutputArray dst,Size dsize, double fx = 0, double fy = 0,int interpolation = INTER_LINEAR );
参数说明
- InputArray类型的src,输入图像,如Mat类型。
- OutputArray类型的dst,输出图像,其尺寸由第三个参数dsize决定。
- Size类型的dsize,输出图像的大小。如果它等于,则大小等于Size(round(fx*src.cols),round(fy*src.rows))。
- double类型的fx,沿水平轴的缩放系数,默认值为0,当其等于0时,其数值由该式计算:(double)dsize.width/src.cols;
- double类型的fy,沿垂直轴的缩放系数,默认值为0,当其等于0时,其数值由该式计算:(double)dsize.height/src.rows;
- int类型的interpolation,表示不同的插值方式,默认为INTER_LINEAR(线性插值)。
其中,可选的插值方式有:
- INTER_NEAREST,最邻近插值。
- INTER_LINEAR,线性插值。
- INTER_CUBIC,三次样条插值,适合放大图像用。
- INTER_AREA,区域插值,适合缩小图像用。
- INTER_LANCZOS4,Lancazos插值。
- INTER_LINEAR_EXACT ,位精确双线性插值。
- INTER_MAX,内插码掩模。
- WARP_FILL_OUTLIERS,官方解释:flag, fills all of the destination image pixels. If some of them correspond to outliers in the source image, they are set to zero 。
- WARP_INVERSE_MAP,官方解释:flag, inverse transf4ormation。
测试代码
#include<opencv2/opencv.hpp>
#include<ctime>
using namespace std;
using namespace cv;int main(void)
{cv::Mat test = imread("long.jpg");cv::Mat result;result = cv::Mat::zeros(test.size(), test.type());cv::resize(test, result, cv::Size(0, 0), 4, 4, 2);imshow("original", test);imshow("resize", result);cv::imwrite("long2.png", result);waitKey(0);system("pause");return 0;
}
测试效果
图像扩大后难免有模糊、失真之类的情况发生,还需要进行进一步的优化处理~可以关注我后续的文章,会提供一些简单的处理方法~
如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!
OpenCV-尺寸调整cv::resize相关推荐
- OpenCV尺寸调整函数resize
2019独角兽企业重金招聘Python工程师标准>>> void resize(InputArray src, OutputArray dst, Size dsize, double ...
- python opencv resize函数_OpenCV尺寸调整函数resize
void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation ...
- 图像尺寸调整 image resize C/C++
最近邻插值 这种是最基础最简单的方法. void xresize(Mat &src, Mat &des, Size size) {des.create(size, CV_8UC3);i ...
- 成功解决OpenCV Error: Assertion failed (ssize.width 0 ssize.height 0) in cv::resize, file C:\proj
成功解决OpenCV Error: Assertion failed (ssize.width > 0 && ssize.height > 0) in cv::resize ...
- OpenCV-Python学习(19)—— OpenCV 图像几何变换之图像缩放(cv.warpAffine、cv.resize)
1. 学习目标 学习图像的缩放矩阵: 学习 OpenCV 图像缩放函数 cv.resize 和 cv.warpAffine. 2. 图像的缩放矩阵 缩放是物体在 x 轴和 y 轴的缩放比例. fx 是 ...
- OpenCV 图像缩放:cv.resize() 函数详解
目录 系列前言 API 函数详解 参数列表 缩放方式其一 缩放方式其二 两种方式的优先级 关于插值方式 扩展 -- 相关函数 系列前言 这个系列是我第一个想要更下去的系列.每篇会全面介绍一个 Open ...
- OpenCV代码提取:resize函数的实现
之前在http://blog.csdn.net/fengbingchun/article/details/17335477 中有过对cv::resize函数五种插值算法的介绍.这里将OpenCV3.1 ...
- 【Python】cv2.error: ... (-215:Assertion failed) ssize.empty() in function ‘cv::resize’ 的解决方法
遇到了奇怪的错误: cv2.error: OpenCV(4.2.0) C:\projects\opencv-python\opencv\modules\imgproc\src\resize.cpp:4 ...
- OpenCV入门系列 —— cv::erode、cv::dilate 图像腐蚀和膨胀
OpenCV入门系列 -- cv::erode.cv::dilate 图像腐蚀和膨胀 前言 程序说明 输出结果 代码示例 前言 随着工业自动化.智能化的不断推进,机器视觉(2D/3D)在工业领域的应用 ...
最新文章
- Foreman安装配置
- shiro+php,一套基于SpringBoot+Vue+Shiro 前后端分离 开发的代码生成器
- Qt修炼手册1_溢美之词和Designer设计
- 设计模式之Facade(外观)模式
- java本地可以发到linux不行,java 使用 ftp 在windows环境下可以正常下载文件,在linux环境下不行...
- java运算符 —(5)
- 【渝粤教育】国家开放大学2018年秋季 2726T畜禽生产概论 参考试题
- 几万条数据的excel导入到mysql_【记录】2万多条数据的Excel表格数据导入mysql数据库...
- Zabbix二次开发_03api列表
- Codeforces 906B. Seating of Students(构造+DFS)
- 迷宫 DFS (模拟和DFS)
- endnote文献使用简明教程+遇到问题
- 『码上行动-编程擂台』学员作品展(附源码)
- 【新年礼物】分享十个珍藏学习编程的网站,助大家2022如虎添翼
- [DirectShow] 033 - Using Windowed Mode
- python 文件批量改名
- java 俄罗斯 id_Java ZoneId systemDefault()用法及代码示例
- php的strtoupper,关于PHP的strtoupper函数
- navicat premium 15 下载安装详细教程
- 一个P2P未跑路平台老板的自白
热门文章
- python第三天学习总结
- 最长上升子序列模板 hdu 1087 Super Jumping! Jumping! Jumping!
- 怎么使用Eclipse默认的keystore签名打包成Apk
- git多系统协作时换行符问题
- posix 线程(一)
- centos7 cuda测试_CentOS 7 安装cuda环境
- 【论文写作】SpringMVC学籍管理系统如何画用例图(2)
- 删除悬镜linux安装教程,Linux安全运维之如何活用history命令
- mysql id用什么类型_mysql 证明为什么用limit时,offset很大会影响性能
- line划线计算机图像学,【计算机图形学】根本图形元素:直线的生成算法