如何在Emgu CV中声明Matrix数组?

时间:2012-11-28 17:31:38

标签: emgucv

我是Emgu CV的新人。我需要一个矩阵数组来存储灰度图像的像素值。是否可以声明矩阵数组。

我这样编码矩阵数组但是给出了“错误”

public Matrix<Double>[] Myimgmatrix = new Matrix<Double>[5](100,80);    

错误:“预期的方法名称” 任何一个请帮助。

2 个答案:

答案 0 :(得分:2)

这样做:

private Matrix<Double>[] Myimgmatrix = new Matrix<Double>[5];  

然后,在类构造函数中,单独初始化数组上的每个矩阵:

for(int i = 0; i < Myimgmatrix.Length; i++)
    Myimgmatrix[i] = new Matrix<Double>(100,80);

据我所知,你无法同时实例化数组及其元素。

如果您不希望灵活处理数组的大小,也可以创建矩阵列表:

private List<Matrix<Double>> matrixList = new List<Matrix<Double>>();

然后,当您需要一个新矩阵时,只需将其添加到您的列表中,代码为:

matrixList.Add(new Matrix<Double>(100,80));

答案 1 :(得分:0)

实际上,您可以直接从emgucv中的图像数据访问灰度像素值。您可以通过此链接work with matrix

检查emgu cv中的实现