Python-OpenCV之图片缩放(cv.resize)

 

函数原型:

resize(InputArray src, OutputArray dst, Size dsize, double fx, double fy, int interpolation)

InputArray src:输入图片

OutputArray dst:输出图片

Size dsize:输出图片尺寸

double fx, double fy:沿x轴y轴的缩放系数

interpolation:插入方式

interpolation 选项 所用的插值方法:

INTER_NEAREST

最近邻插值

INTER_LINEAR

双线性插值(默认设置)

INTER_AREA

使用像素区域关系进行重采样。

INTER_CUBIC

4x4像素邻域的双三次插值

INTER_LANCZOS4

8x8像素邻域的Lanczos插值

注意:

1.输出尺寸格式为(宽,高)

2.默认的插值方法为:双线性插值

代码演示:

import cv2 as cv

img = cv.imread('test.jpg')
# 打印出图片尺寸
print(img.shape)
# 将图片高和宽分别赋值给x,y
x, y = img.shape[0:2]

# 显示原图
cv.imshow('OriginalPicture', img)

# 缩放到原来的二分之一,输出尺寸格式为(宽,高)
img_test1 = cv.resize(img, (int(y / 2), int(x / 2)))
cv.imshow('resize0', img_test1)
cv.waitKey()

# 最近邻插值法缩放
# 缩放到原来的四分之一
img_test2 = cv.resize(img, (0, 0), fx=0.25, fy=0.25, interpolation=cv.INTER_NEAREST)
cv.imshow('resize1', img_test2)
cv.waitKey()
cv.destroyAllWindows()

猜你喜欢

转载自blog.csdn.net/li_l_il/article/details/83218838