opencvsharp points 如何加到 InputArray points
时间: 2024-05-09 08:16:15 浏览: 8
将 C# 中的 `List<Point>` 转换为 OpenCVSharp 中的 `MatOfPoint2f`,然后将其作为 `InputArray` 参数传递。
以下是一个示例代码:
```csharp
using OpenCvSharp;
using System.Collections.Generic;
List<Point> pointsList = new List<Point>();
// 添加点到 List 中
// 将 List 转换为 MatOfPoint2f
MatOfPoint2f pointsMat = new MatOfPoint2f();
pointsMat.FromList(pointsList);
// 将 pointsMat 作为 InputArray 参数传递
someFunction(pointsMat);
```
以上代码假设您已经使用 OpenCVSharp 导入了 `OpenCvSharp` 命名空间。
相关问题
OpenCvSharp4.6 (List<Point2f> points,转换成 InputArray
同样地,要将 List<Point2f> 转换成 InputArray,可以使用 MatOfPoint2f 类。具体的实现代码如下:
```csharp
List<Point2f> points = new List<Point2f>();
// 假设 points 中已经有一些数据
MatOfPoint2f mat = new MatOfPoint2f();
mat.FromList(points);
InputArray inputArray = mat;
```
但需要注意的是,OpenCvSharp4.6 中的 MatOfPoint2f 类已经不再提供 FromList 方法,所以需要使用其构造函数来初始化 MatOfPoint2f 对象。具体实现代码如下:
```csharp
List<Point2f> points = new List<Point2f>();
// 假设 points 中已经有一些数据
MatOfPoint2f mat = new MatOfPoint2f(points.ToArray());
InputArray inputArray = mat;
```
这样就可以将 List<Point2f> 转换成 InputArray 了。
OpenCvSharp (List<Point2f> points,转换成 InputArray
要将 List<Point2f> 转换成 InputArray,可以使用 MatOfPoint2f 类。具体的实现代码如下:
```csharp
List<Point2f> points = new List<Point2f>();
// 假设 points 中已经有一些数据
MatOfPoint2f mat = new MatOfPoint2f();
mat.FromList(points);
InputArray inputArray = mat;
```
这样就可以将 List<Point2f> 转换成 InputArray 了。需要注意的是,MatOfPoint2f 的 FromList 方法可以接受 List<Point2f>、Point2f[] 或 Point[] 等类型的输入。