我想训练一个神经网络来对不同类别的灰度图像进行分类。
作为该网络的输入,我想使用 SURF-128 算法提取的特征。以下代码(EmguCV library 提供的示例的简化)显示了我如何使用 API:
SURFDetector surfCPU = new SURFDetector(500, true);
VectorOfKeyPoint observedKeyPoints;
BriefDescriptorExtractor descriptor = new BriefDescriptorExtractor();
observedKeyPoints = surfCPU.DetectKeyPointsRaw(img, null);
Matrix<Byte> observedDescriptors = descriptor.ComputeDescriptorsRaw(img, null, observedKeyPoints);
通过使用以下代码:
observedDescriptors.Save(@"SURF.bmp");
我可以保存一些结果。下图显示了上面的代码提取了不同大小的特征(右边是上一行代码保存的结果):
我想要的是获得一个固定大小的向量。
如何使用 EmguCV 库为 C# 提供的 API 转换 128 维数组中的通用灰度图像?