opencvsharp 中OutputArray oarr初始化
时间: 2024-02-28 18:52:00 浏览: 22
在 OpenCvSharp 中,OutputArray 类型表示一个N维数组的输出参数,通常用于接收函数返回的图像、矩阵等数据。
要初始化 OutputArray 类型的变量,可以使用以下方法:
1. 使用 Mat 变量初始化
OutputArray 类型的变量可以使用 Mat 类型的变量进行初始化,示例如下:
```
Mat src = new Mat("input.jpg", ImreadModes.Color);
OutputArray dst = new Mat();
```
在上述代码中,先创建了一个 Mat 对象 src,然后使用该对象初始化了一个 OutputArray 对象 dst。
2. 使用 Mat 的构造函数
OutputArray 类型的变量也可以使用 Mat 的构造函数进行初始化,示例如下:
```
OutputArray dst = new Mat(new Size(640, 480), MatType.CV_8UC3);
```
在上述代码中,通过 Mat 的构造函数创建了一个大小为 640x480,类型为 CV_8UC3 的 Mat 对象,并将其用于初始化了一个 OutputArray 对象 dst。
需要注意的是,OutputArray 类型的变量只是一个输出参数,不是数据本身,因此不能直接访问其数据。如果需要访问数据,需要将其转换为 Mat 类型的变量。可以使用 Mat() 或者 GetMat() 方法将 OutputArray 转换为 Mat 类型的变量,示例如下:
```
Mat dstMat = dst.GetMat();
```
在上述代码中,通过调用 GetMat() 方法将 OutputArray 对象 dst 转换为 Mat 类型的对象 dstMat,从而可以访问其数据。