- [1] 实现环境使用python3.6.5+Opencv3
- [2]使用resize图像重构函数实现图片的缩放
resize函数在python中API的原型如下:
Python: cv2.resize(src, dsize[, dst[, fx[, fy[, interpolation]]]])
(1) src:原图片
(2)dsize:缩放图片尺寸,如果dsize=0,默认计算方式如下dsize=Size(round(fx∗src.cols),round(fy∗src.rows))
(3)fx fy和dsize不能同时为0 fx,fy分别是在x,y轴上的缩放系数,默认取0时,fx=(double)dsize.width/src.cols ,fy=(double)dsize.height/src.cols,默认参数为0可以不写如里面
(4)interpolation :差值方式使用默认即可 默认的是INTER_LINEAR - a bilinear interpolation (used by default)现行差值
- 以下是源代码
- 具体步骤1 图片导入 2 读取图片的维度信息(宽高)3 图片重构 4 显示重构后的图片
import cv2 #导入opencv
#1src 2 为‘1’时彩色 0时读入的是灰度(黑白)
img = cv2.imread('image,jpg',1) #读入图片的路径需要根据自己更改
info = image.shape #获取图片的宽 高 颜色通道信息
height = info[0] #高
width = info[1] #宽
#定义想要缩放后的图片大小
dstheight = int(height*0.5) #缩小为原来的0.5倍 可根据自己的要求定义
dstwidth = int(width*0.5)
dst = cv2.resize(img,(dstwidth,dstheight),0,0) #注意width在前 height在后
cv2.imshow('dst',dst) #显示缩放后的图片
cv2.imshow('img',img) #显示原始图片
cv2.waitKey(0) #一直等待有输入 结束程序
END!