调整图片大小、不变形
通常对于指定大小的图片,有两种调整方法 , 一种是直接暴力调整,是根据指定的高和宽进行缩放调整 , 另一种是根据指定的高、宽进行padding 。
上面这一张图片,高明显要大于宽(高480, 宽320),如何调整为 高宽都是320 像素呢?我们可以利用 opencv resize实现图片的缩放 。
- resize用法:
首先我们需要了解 opencv resize的用法:resize 参数:
dst = cv2.resize(src, dsize[, dst[, fx[, fy[, interpolation]]]])
类型
是否必须指定
具体含义
src
numpy.ndarray
【怎么调整图片不变形-怎么调整图片不变形模式】是
原图像
dsize
tuple
是
缩放后的图像大小
dst
无所谓
否
目标图像 , 但是在 Python 里面没有任何意义 。一般不传参或者设成
fx, fy
数值类型
否
x 和 y 方向上的缩放比例
interpolation
int
否
插值方式表示代码,本质是一个 int 数值,一般用 OpenCV 内置的参数代号以提高可读性 。默认:双线性插值
2.具体方法:
方法1: 直接resize:
方法1 结果: 直接把320 * 480 的图片调整为 320 * 320 的图片会变形 。
方法2: padding: 具体原理方法 , 请参考 paperClub, 网站: http://www.infersite.com
另外,我们还可以扩展出其他几种方法: