首页 > 解决方案 > EmguCV 将特定值设置为 Mat C#

问题描述

我正在用 C# 中的 EmguCV 创建深度神经网络,为了训练所述神经网络,我需要将标签放入Mat格式中。我已经像这样创建了我的垫子:

Mat responses = Mat.Zeros(trainData.Rows, distinctLabelCount.Count, Emgu.CV.CvEnum.DepthType.Cv32F, 1);

如果我理解正确,它会创建Mat大小为零 (400,10) 作为类型float和灰度值。

现在我有 400 行输入数据和 10 个标签,我需要替换0某些位置的值以将正确的标签编码到垫子中。就像在位置 (0,1) 的值 1 ,,, 位置 (3,5) 为第 4 行设置标签 5 等。

到目前为止,我在谷歌搜索中看到的只是 method responses.at<float>(...);,但这可能是在 C++ 中,我似乎无法在 C# 中访问该方法。所以我不知道如何在 Mat 中编辑值。

任何帮助将不胜感激,感谢您的阅读并感谢您的时间。

标签: c#emgucvmat

解决方案


与 C# 中的 c++ opencv at() 等价的是索引运算符:

像素 = 图像 [x, y]

图像[x, y] = 像素;


推荐阅读