一、*resize()*函数实现图像的缩放
-
语法格式:
d s t = c v 2. r e s i z e ( s r c , d s i z e , f x , f y ) dst = cv2.resize(src,dsize,fx,fy) dst=cv2.resize(src,dsize,fx,fy)
dsize是目标尺寸,先列后行;
fx,fy分别代表水平方向与垂直方向放大的倍数
dsize和 fx、fy设置一方即可,否则会出错,如:
cv2.resize(src,(200,100))
# 或者
cv2.resize(src,None,fx=0.5,fy=0.8)
二、Python实现
#Author:MuMengSunny
#Filename:图像缩放
import cv2
img = cv2.imread(r'F:\image\lenacolor.png',cv2.IMREAD_UNCHANGED) # 读取彩色图像
rows,cols,chn = img.shape # 获取行数、列数与通道数
dsize_pic1 = cv2.resize(img,(200,100))
dsize_pic2 = cv2.resize(img,(round(cols*0.5),round(rows*0.8))) # 利用round函数保证相乘后的数为整数
fxfy_pic = cv2.resize(img,None,fx=0.5,fy=1.2)
cv2.imshow('original',img)
cv2.imshow('dsize_pic1',dsize_pic1)
cv2.imshow('dsize_pic2',dsize_pic2)
cv2.imshow('fxfy_pic',fxfy_pic)
cv2.waitKey(0)
cv2.destroyAllWindows()