resize函数的形式
void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR)
参数说明:
src - 原图
dst - 目标图像。当参数dsize不为0时,dst的大小为size;否则,它的大小需要根据src的大小,参数fx和fy决定。dst的类型(type)和src图像相同
dsize - 目标图像大小
所以,参数dsize和参数(fx, fy)不能够同时为0
fx - 水平轴上的比例因子。
fy - 垂直轴上的比例因子。
最后一个参数插值方法,是默认值,放大时最好选 INTER_LINEAR ,缩小时最好选 INTER_AREA。
下面列出几种形式:
// 显示指定
resize(src, dst, dst.size(), 0, 0, INTER_CUBIC)
// 缩小图像,比例为(0.3, 0.5)
Size dsize = Size(round(0.3 * img.cols), round(0.5 * img.rows));
Mat shrink;
resize(img, shrink, dsize, 0, 0, INTER_AREA);
``
// 缩小图像,比例为(0.3, 0.5)
Size dsize = Size(round(0.3 * width), round(0.5 * height));
Mat shrink;
resize(img, shrink, dsize, 0, 0, INTER_AREA); `
缩小时用desize,放大时用fx,fy放大
resize(tmp_image, dst_image4, Size(), 2, 2);