首页 > 其他分享 >图像处理学习——1

图像处理学习——1

时间:2022-12-29 09:59:07浏览次数:43  
标签:fx fy 学习 插值 dsize 图像处理 图像 INTER

1.插值:interpolation

在离散数据的基础上补插连续函数,使得这条连续曲线通过全部给定的离散数据点。

插值是离散函数逼近的重要方法,利用它可通过函数在有限个点处的取值状况,估算出函数在其他点处的近似值。 插值:用来填充图像变换时像素之间的空隙。 img = cv2.resize(img, (self.img_size_width, self.img_size_height), interpolation = cv2.INTER_LINEAR)

2. resize函数说明
    OpenCV提供了resize函数来改变图像的大小,函数原型如下:

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

src:输入,原图像,即待改变大小的图像;
dst:输出,改变大小之后的图像,这个图像和原图像具有相同的内容,只是大小和原图像不一样而已;
dsize:输出图像的大小。如果这个参数不为0,那么就代表将原图像缩放到这个Size(width,height)指定的大小;如果这个参数为0,那么原图像缩放之后的大小就要通过下面的公式来计算:
       dsize = Size(round(fx*src.cols), round(fy*src.rows))

       其中,fx和fy就是下面要说的两个参数,是图像width方向和height方向的缩放比例。

fx:width方向的缩放比例,如果它是0,那么它就会按照(double)dsize.width/src.cols来计算;
fy:height方向的缩放比例,如果它是0,那么它就会按照(double)dsize.height/src.rows来计算;


interpolation:这个是指定插值的方式,图像缩放之后,肯定像素要进行重新计算的,就靠这个参数来指定重新计算像素的方式,有以下几种:
      INTER_NEAREST - 最邻近插值
      INTER_LINEAR - 双线性插值,如果最后一个参数你不指定,默认使用这种方法
      INTER_AREA -区域插值 resampling using pixel area relation. It may be a preferred method for image decimation, as it gives moire’-free results. But when the image is zoomed, it is similar to the INTER_NEAREST method.
      INTER_CUBIC - 4x4像素邻域内的双立方插值
      INTER_LANCZOS4 - 8x8像素邻域内的Lanczos插值

使用注意事项:

   dsize和fx/fy不能同时为0

要么你就指定好dsize的值,让fx和fy空置直接使用默认值,就像

resize(img, imgDst, Size(30,30));
要么你就让dsize为0,指定好fx和fy的值,比如fx=fy=0.5,那么就相当于把原图两个方向缩小一倍!

标签:fx,fy,学习,插值,dsize,图像处理,图像,INTER
From: https://www.cnblogs.com/yuxiyuxi/p/17011761.html

相关文章

  • Python学习笔记--高阶技巧(二)
    Socket服务端开发基本步骤如下:socket客户端开发基本步骤如下:1、创建socket对象2、连接到服务器3、发送消息4、接收返回消息5、关闭连接正则表达式基础方法......
  • docker学习随笔
    总结自https://zhuanlan.zhihu.com/p/187505981Linux内核提供了Namespace技术来隔离PID/IPC/网络资源等,还提供了ControlGroup(cgroup)技术限制应用程序对内存/CPU/硬盘/网......
  • ACM初学者指南学习心得
    2022年快过完了,上学期有点摆烂,最近刚刚阳过,在家颓废了好几天。昨天看了一部电影《大学》,非常励志。看完电影,深感自己大学以来这一年半过得有点小糟糕,昨天被刺激了一下,今天......
  • 机器学习:Transformer
    目录简介SelfAttention(自注意力机制)Multi-HeadSelfAttention位置编码TransformerBERT简介Transformer由Google在2017提出,是基于注意力机制的模型https://ar......
  • excel的学习1
    excel的学习1注:使用的是win11版本的excel单元格是什么单元格就是excel表格中的一个小格子,是其中最基本的单位。于此相关的有很多的操作Tab,enter的使用这两个是excel......
  • Rust的所有权、借用、可变引用 -- 学习随笔
    Rust所有权规则:1.Rust中每一个变量都是自己值的所有者;2.每一个值在任一时刻只有一个所有者;3.所有者(变量)离开所属作用域后,这个值被丢弃;fnmain(){lets1=St......
  • MINIGPA103 USBHID评估板入门学习手册基于STM32HAL库
    序由于作者水平有限,文档和视频中难免有出错和讲得不好的地方,欢迎各位读者和观众善意地提出意见和建议,谢谢!第一部分、硬件概述1.1实物概图图1.1Gamepad实物概图如图1......
  • opencv-python学习之旅
    opencv-python操作*注:在此笔记中只记录下各种函数的使用,规则详细讲解见https://opencv.apachecn.org/#/docs/4.0.0/2.1-tutorial_py_image_display创建,读取,显示,保存图......
  • 《李沐实用机器学习之5.2 Bagging》
    slides:https://c.d2l.ai/stanford-cs329p/_static/pdfs/cs329p_slides_7_2.pdf视频:https://www.bilibili.com/video/BV13g411N7xy/?spm_id_from=333.999.0.0&vd_source=......
  • 干货 | 林轩田机器学习「基石+技法」历史文章汇总
    AI有道一个有情怀的公众号台湾大学林轩田机器学习经典课程:「机器学习基石」和「机器学习技法」。课程由浅入深、内容全面,基本涵盖了机器学习领域的很多方面,还包括......