图像 resize函数
时间: 2023-09-19 10:11:45 浏览: 120
picture resize
图像 resize 函数是指将一张图片按照指定的大小进行缩放的函数。在 OpenCV 库中,可以使用 resize 函数来实现图像的缩放。
其函数原型为:
```c++
void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0, int interpolation=INTER_LINEAR);
```
其中:
- `src`:输入图像,可以是 `Mat` 类型或者 `UMat` 类型。
- `dst`:输出图像,与输入图像有相同的类型和通道数。
- `dsize`:输出图像的大小,可以指定为 `(width, height)` 的形式,也可以指定为 `Size(width, height)` 的形式。
- `fx`:水平方向的缩放比例,如果设置为 0,则根据 `dsize` 来计算。
- `fy`:垂直方向的缩放比例,如果设置为 0,则根据 `dsize` 来计算。
- `interpolation`:插值方法,有以下几种可选。默认为 `INTER_LINEAR`。
- `INTER_NEAREST`:最近邻插值
- `INTER_LINEAR`:双线性插值
- `INTER_AREA`:区域插值
- `INTER_CUBIC`:双三次插值
- `INTER_LANCZOS4`:Lanczos 插值
例如,以下代码演示了如何将一张图片缩放到指定的大小:
```c++
#include <opencv2/opencv.hpp>
using namespace cv;
int main() {
Mat img = imread("test.jpg");
Mat dst;
resize(img, dst, Size(640, 480));
imshow("original", img);
imshow("resized", dst);
waitKey(0);
return 0;
}
```
其中,`imread` 函数用于读取一张图片,`imshow` 函数用于显示图片,`waitKey` 函数用于等待用户按键。
阅读全文