【python-opencv入门笔记】3 - 修改图片尺寸缩放 cv2.resize()用法

在opencv中对图片的缩放,通常用到最多的就是resize()方法

函数原型:
cv2.resize(src, dsize[, dst[, fx[, fy[, interpolation]]]])

参数描述

参数 说明
src 【必需】原图像
fx 【可选】沿水平轴的比例因子
fy 【可选】沿垂直轴的比例因子
interpolation 【可选】插值方式
插值方式可以理解为图片放大或缩小后,改变区域的补偿方式
插值方式有多种,如下:
  • cv2.INTER_NEAREST 最近邻插值
  • cv2.INTER_LINEAR 双线性插值
  • cv2.INTER_CUBIC 双线性插值
  • cv2.INTER_AREA 使用像素区域关系重新采样。它可能是图像抽取的首选方法,因为它可以提供无莫尔条纹的结果。但是当图像被缩放时,它类似于INTER_NEAREST方法。

通常的,缩小使用cv2.INTER_AREA,放大使用cv2.INTER_CUBIC(较慢)和cv2.INTER_LINEAR(较快效果也不错)。

默认情况下,所有的放缩都使用cv2.INTER_LINEAR。

示例如下

# -*- coding: utf-8 -*-
import cv2

#加载图片1
img1 = cv2.imread("./nba.png")#原尺寸566*362
#显示图片1
cv2.imshow("img1",img1)


#修改图片1尺寸为600*600 得到图片2
img2=cv2.resize(img1,(600,600),interpolation=cv2.INTER_NEAREST)
#显示 图片2
cv2.imshow("img2",img2)


#按任意键退出程序
cv2.waitKey(0)

#释放窗口占用的内存资源
cv2.destroyAllWindows()

这里用的插值是:cv2.INTER_NEAREST

这里用的插值是:cv2.INTER_LINEAR

这里用的插值是:cv2.INTER_CUBIC

这里用的插值是:cv2.INTER_AREA

具体细微区别,大家自己使用中体会

你可能感兴趣的:(opencv,opencv,python,计算机视觉)