resize函数用法_ubound函数

resize函数用法_ubound函数resize函数原型voidresize(InputArraysrc,OutputArraydst,Sizedsize,doublefx=0,doublefy=0,intinterpolation=INTER_LINEAR)各个参数的意义比较直观,但是需要注意的是dsize与fx和fy必须不能同时为零,也就是说要么dsize不为零而fx与fy同时可

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

resize

函数原型

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

各个参数的意义比较直观,但是需要注意的是dsizefxfy必须不能同时为零,也就是说要么dsize不为零而fxfy同时可以为0,要么dsize0fxfy不同时为0resize函数的目标大小可以是任意的大小,可以不保持长宽比率,删除的像素或者新增的像素值通过interpolation(内插)控制;


update:fx,fy分别指水平和垂直方向的比率;如果dsize 为零,则目标图像的大小是通过这两个参数来计算的:目标图像的宽度为原图像的宽度*fx,同理目标图像的高度为原图像的高度*fy;

如果dsize不为零,fx,fy会自动计算:fx=dsize.width/src.cols;fy=dsize.height/src.rows;

因此dsize和(fx,fy)只需设置其中一个,另外一个置为零就可以了~~

void ResizeDemo()

{

         Mat img1=imread(“person_org.jpg”);

         Mat img2;

//将原图像变为32*32,长宽比被改变了

         resize(img1,img2,Size(32,32),0,0,CV_INTER_LINEAR);

         namedWindow(“WindowOrg”);

         namedWindow(“WindowNew”);

         imshow(“WindowOrg”,img1);

         imshow(“WindowNew”,img2);

 

         waitKey(10000);

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/210354.html原文链接:https://javaforall.net

(0)
上一篇 2025年7月26日 下午1:22
下一篇 2025年7月26日 下午2:01


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号