Opencv学习笔记(六):cv2.resize函数的介绍

简介: 这篇文章介绍了OpenCV库中cv2.resize函数的使用方法,包括其参数、插值方式选择以及实际代码示例。

1.函数介绍

cv2.resize(InputArray src, OutputArray dst, Size, fx, fy, interpolation)

2.参数意思

  • InputArray src : 输入图片
  • OutputArray dst :输出图片
  • Size : 输出图片尺寸
  • fx, fy:沿x轴,y轴的缩放系数(也就是宽和高)
  • interpolation : 插入方式

3.插入方式选择

  • INTER_NEAREST :最近邻插值
    最近邻插值法的优点:计算量很小,算法也简单,因此运算速度较快。没考虑其他相邻像素点的影响。缺点:图像质量损失较大,会产生明显的马赛克和锯齿现象。
  • INTER_LINEAR:双线性插值(默认设置)
    细节比最近邻插值更好,但是速度没有它快,复杂度更高,因此具有低通滤波器的性质, 从而导致缩放后图像的高频分量受到损失, 图像边缘在一定程度上变得较为模糊。产生图像质量受损与计算精度不高的问题。
  • INTER_AREA:使用像素区域关系进行重采样。
  • INTER_CUBIC:4x4像素邻域的双三次插值
    细节上比双线性插值法更好,是商业图像中的标准方法。双三次插值考虑的是周围16个像素的像素值,其权重因子的计算比较复杂。
  • INTER_LANCZOS4:8x8像素邻域的Lanczos插值

4.实际代码

import cv2
inputpath='D:/pycharm/4kinds_detectface_module/1.jpg'
img=cv2.imread(inputpath)
h, w = img.shape[:2]
img1 = cv2.resize(img, None,None,fx=0.25, fy=0.25, interpolation=cv2.INTER_CUBIC) #
img2=cv2.resize(img,(200,300),interpolation=cv2.INTER_CUBIC)
print(img.shape)
print(img1.shape)
print(img2.shape)

cv2.imshow('image',img)
cv2.imshow('image1',img1)
cv2.imshow('image2',img2)
cv2.waitKey(0)
cv2.destroyAllWindows()

运行结果
在这里插入图片描述

目录
相关文章
|
2月前
|
计算机视觉 索引
OpenCV4学习笔记(2):显示相机视频流的帧率
这篇文章是OpenCV4学习笔记的第二部分,介绍了如何通过OpenCV4在显示相机视频流时计算并显示其帧率,使用`getTickCount`和`getTickFrequency`函数来测量帧时间,并用`putText`在图像上绘制帧率信息。
OpenCV4学习笔记(2):显示相机视频流的帧率
|
1天前
|
编解码 数据安全/隐私保护 计算机视觉
Opencv学习笔记(十):同步和异步(多线程)操作打开海康摄像头
如何使用OpenCV进行同步和异步操作来打开海康摄像头,并提供了相关的代码示例。
11 1
Opencv学习笔记(十):同步和异步(多线程)操作打开海康摄像头
|
1天前
|
计算机视觉
Opencv学习笔记(八):如何通过cv2读取视频和摄像头来进行人脸检测(jetson nano)
如何使用OpenCV库通过cv2模块读取视频和摄像头进行人脸检测,并提供了相应的代码示例。
14 1
|
2天前
|
计算机视觉 Python
Opencv学习笔记(七):如何根据opencv将BGR转换为HSV
使用OpenCV库在Python中将BGR图像转换为HSV颜色空间的两种方法:一种是直接使用cv2.cvtColor函数,另一种是手动实现RGB到HSV的转换。
6 0
Opencv学习笔记(七):如何根据opencv将BGR转换为HSV
|
2天前
|
计算机视觉
Opencv学习笔记(五):cv2.putText()和cv2.rectangle()详细理解
这篇文章详细介绍了OpenCV库中的`cv2.putText()`和`cv2.rectangle()`函数的使用方法,并通过一个实战例子展示了如何使用这些函数在图像上绘制文字和矩形框。
17 0
Opencv学习笔记(五):cv2.putText()和cv2.rectangle()详细理解
|
2天前
|
计算机视觉 Python
Opencv学习笔记(四):如何通过cv2或者通过matplotlib来将多张图拼接成一张图输出
这篇文章介绍了如何使用OpenCV和matplotlib将多张图像拼接成一张图进行输出,并比较了两者的效果和使用注意事项。
10 0
Opencv学习笔记(四):如何通过cv2或者通过matplotlib来将多张图拼接成一张图输出
|
2天前
|
计算机视觉
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
这篇文章详细介绍了OpenCV库中的图像二值化函数`cv2.threshold`,包括二值化的概念、常见的阈值类型、函数的参数说明以及通过代码实例展示了如何应用该函数进行图像二值化处理,并展示了运行结果。
23 0
Opencv学习笔记(三):图像二值化函数cv2.threshold函数详解
|
2天前
|
计算机视觉 Python
Opencv学习笔记(二):如何将整个文件下的彩色图片全部转换为灰度图
使用OpenCV库将一个文件夹内的所有彩色图片批量转换为灰度图,并提供了相应的Python代码示例。
11 0
Opencv学习笔记(二):如何将整个文件下的彩色图片全部转换为灰度图
|
2天前
|
计算机视觉 Python
Opencv学习笔记(一):如何将得到的图片保存在指定目录以及如何将文件夹里所有图片以数组形式输出
这篇博客介绍了如何使用OpenCV库在Python中将图片保存到指定目录,以及如何将文件夹中的所有图片读取并以数组形式输出。
16 0
Opencv学习笔记(一):如何将得到的图片保存在指定目录以及如何将文件夹里所有图片以数组形式输出
|
1天前
|
计算机视觉 Python
Opencv学习笔记(十):opencv和base64之间的转换
本文介绍了如何使用Python和OpenCV库将图像在Base64编码和OpenCV可读格式之间进行转换。
6 0