opencv 如何给vector容器赋值
时间: 2023-10-18 13:15:06 浏览: 82
可以使用vector的assign()函数来给容器赋值,示例代码如下:
```c++
#include <iostream>
#include <vector>
#include <opencv2/opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
// 定义一个vector容器
vector<int> myvector;
// 给vector容器赋值
myvector.assign(5, 10);
// 打印vector容器中的值
for (int i = 0; i < myvector.size(); i++)
{
cout << myvector[i] << " ";
}
return 0;
}
```
输出结果为:
```c++
10 10 10 10 10
```
其中,assign()函数的第一个参数表示要赋值的元素数量,第二个参数表示要赋的值。
相关问题
Vector2[] 转换 OpenCvSharp.Point[] 给unity 函数
在 Unity 中,你可以使用以下函数将 `Vector2[]` 转换为 `OpenCvSharp.Point[]`:
```csharp
using UnityEngine;
using OpenCvSharp;
public class Vector2ToPointConverter : MonoBehaviour
{
public Vector2[] vectorPoints;
public Point[] ConvertToOpenCvPoints()
{
Point[] opencvPoints = new Point[vectorPoints.Length];
for (int i = 0; i < vectorPoints.Length; i++)
{
opencvPoints[i] = new Point((int)vectorPoints[i].x, (int)vectorPoints[i].y);
}
return opencvPoints;
}
}
```
在上面的示例中,我们创建了一个名为 `Vector2ToPointConverter` 的 MonoBehaviour 类,并声明了一个 `Vector2[]` 类型的变量 `vectorPoints`。然后,我们定义了一个名为 `ConvertToOpenCvPoints()` 的函数,用于将 `vectorPoints` 数组转换为 `OpenCvSharp.Point[]` 类型。
在 `ConvertToOpenCvPoints()` 函数中,我们创建了一个与 `vectorPoints` 数组相同长度的空的 `Point[]` 数组 `opencvPoints`。然后,通过遍历 `vectorPoints` 数组,并将每个 `Vector2` 对象的 `x` 和 `y` 坐标值转换为整数后赋值给对应的 `Point` 对象,完成了转换。最后,函数返回转换后的 `opencvPoints` 数组。
你可以在 Unity 中使用此脚本,将 `Vector2[]` 转换为 `OpenCvSharp.Point[]`。确保将你的 `Vector2[]` 赋值给 `vectorPoints` 变量,然后调用 `ConvertToOpenCvPoints()` 函数即可获得转换后的 `OpenCvSharp.Point[]` 对象。
阅读全文