OpenCV函数

 

cv2.resize()

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

resize是opencv库中的一个函数,主要起到对图片进行缩放的作用。

InputArray src :输入,原图像,即待改变大小的图像;
OutputArray dst: 输出,改变后的图像。这个图像和原图像具有相同的内容,只是大小和原图像不一样而已;
dsize:输出图像的大小,如上面例子(300,300)。

其中,fx和fy就是下面要说的两个参数,是图像width方向和height方向的缩放比例。
fx:width方向的缩放比例
fy:height方向的缩放比例

interpolation(插值):这个是指定插值的方式,图像缩放之后,肯定像素要进行重新计算的,就靠这个参数来指定重新计算像素的方式,有以下几种:

interpolation 选项插值方式
cv2.INTER_NEAREST 最近邻插值
cv2.INTER_LINEAR 双线性插值(默认)
cv2.INTER_AREA 使用像素区域关系进行重采样。
cv2.INTER_CUBIC 4x4像素邻域的双3次插值
cv2.INTER_LANCZOS4 8x8像素邻域的Lanczos插值

如果要缩小图像,建议选择:cv2.INTER_AREA;如果要放大图像,cv2.INTER_CUBIC效果更好但是速度慢,cv2.INTER_LINEAR效果尚可且速度快。进行缩放时, dsize和fx、fy 二选一即可。

posted @ 2022-05-18 18:53  IllidanStormrage  阅读(99)  评论(0编辑  收藏  举报