c# emgu.cv 试图复制 mat.Data returnl null

c# emgu.cv trying to copy mat.Data returnl null

我已经在 Emgu.cv C# 中编写了这样的对象检测代码:

Image<Bgr, byte> image1 = new Image<Bgr, byte>("testing.png");
        int interception = 0;

        Net netcfg = DnnInvoke.ReadNetFromTensorflow(Directory.GetCurrentDirectory() + @"pbs\t1.pb", Directory.GetCurrentDirectory() + @"pbs\graph.pbtxt");

        netcfg.SetInput(DnnInvoke.BlobFromImage(image1.Mat, 1, new System.Drawing.Size(300, 300), default(MCvScalar), true, false));

        Mat mat = netcfg.Forward();
        var arr = mat.Data;

然而,当我在 Visual Studio 2019 调试我的代码时,我看到 mat.Data 是 System.Array float[],但是当我分配this 值赋给一个变量,它始终为 null。所以,在这段代码中,我可以在调试模式下看到 mat.Data 中的一个巨大的 float[] 数组,但在那之后,变量 arr 始终为 null ....请帮助我,我怎么能将该数组从 mat.Data 复制到另一个变量?

抱歉,这真是个愚蠢的问题... 从 mat.Data 得到一个 float[] 数组,我不应该这样使用它:

var arr = mat.Data;

正确的方法是使用:

var arr = mat.GetData();