cv::size怎么构造
时间: 2023-01-11 20:55:36 浏览: 132
cv::Size 是一个结构体,可以用来存储图像的尺寸信息(宽度和高度)。你可以使用以下两种方法来构造 cv::Size:
1. 使用两个参数的构造函数:
```
cv::Size size(width, height);
```
2. 使用数组或列表构造函数:
```
cv::Size size = {width, height};
```
其中,width 和 height 是你想要设置的图像的宽度和高度。
你也可以通过设置 cv::Size 的成员变量来构造 cv::Size,例如:
```
cv::Size size;
size.width = width;
size.height = height;
```
相关问题
Mat img(channels, cv::Size(width, height), CV_32F, data); 这行报错 error: no matching function for call to ‘cv::Mat::Mat(const int&, cv::Size, int, float [460800])’
这个错误的原因是 `cv::Size` 的构造函数需要传入两个 `int` 类型的参数,而你传入的第一个参数是 `channels`,它的类型是 `int`,所以编译器认为你正在调用一个不存在的构造函数。你可以尝试将 `channels` 和 `cv::Size` 的参数分别传入构造函数,如下所示:
```
Mat img(cv::Size(width, height), CV_32F);
img = Mat::zeros(height, width, CV_32F);
```
然后再将 `data` 中的数据赋值给 `img` 即可。
cv::Size
cv::Size 是 OpenCV 库中的一个类,用于表示二维图像或矩阵的大小。它由两个成员变量组成,即 width(宽度)和 height(高度),可以通过构造函数或直接赋值来初始化。
例如,以下代码创建一个大小为 640x480 的 cv::Size 对象:
```
cv::Size size(640, 480);
```
cv::Size 对象可以用于指定图像或矩阵的大小,以及计算图像或矩阵的面积。它也可以与其他 cv::Size 对象进行比较,例如判断两个图像的大小是否相同。
阅读全文