我无法让这个功能工作。基本上我正在做特征检测并与参考图像匹配。我想在我的输入图像上覆盖匹配的特征。这是我的代码:
public Mat startProcessing(Mat inputImage) {
Imgproc.cvtColor(inputImage, rgb, Imgproc.COLOR_GRAY2RGB);
myFeatures.detect(rgb, keypoints);
descriptorExtractor.compute(inputImage, keypoints, imageDescriptors);
descriptorMatcher.match(templateDescriptors, imageDescriptors, matches);
Features2d.drawMatches(rgb, keypoints, templateImage, templateKeypoints, matches, rgb);
Imgproc.cvtColor(rgb, outputImage, Imgproc.COLOR_RGB2RGBA);
return outputImage;
}
问题出在 Features2d.drawMatches 上。根据我得到的 Android 错误,某些尺寸没有对齐。说实话,我什至不确定drawMatches
应该如何在 Android 上工作,因为任何地方都没有文档。
我想要做的是在 inputImage 上绘制匹配。我已经Feature2d.drawKeypoints
开始工作了,但我不确定如何转换MatOfDMatch matches
为MatOfKeypoint
对象。此外,我什至不确定 MatOfDMatch 是否是这样工作的——它内部是否有一些与描述符相对应的关联性?
很抱歉到处都是,我很难将 OpenCV 与 Android 一起使用。那里的 C++ 文档很好,但是 Android 材料的方式很少。谢谢你的帮助!