OpenCV C++中的FLANN匹配器工作正常,但是从四周看,似乎OpenCV Java中没有FlannBasedMatcher的包装器,但是我发现了两种可能的(?)解决方法,我不太确定该如何使用。

首先是对上一个问题的答案:

http://answers.opencv.org/question/12429/matching-orb-descriptors-with-flann-lsh-on-android/?answer=12460#post-id-12460

但是我不太确定“通过使用通用匹配器工厂创建匹配器并设置参数”是什么意思。

另一个选择是使用JavaCV,它似乎具有flann的实现:

https://github.com/bytedeco/javacpp-presets/blob/master/opencv/src/main/java/org/bytedeco/javacpp/opencv_flann.java

我一直在使用原始的OpenCV Java库在android上开发应用程序,但我想知道是否可以同时使用JavaCV,以便我可以使用JavaCV的FLANN函数,或者同时使用这两个库都无法工作?还是有人知道如何使用第一个答案建议?

任何帮助将不胜感激,谢谢。

最佳答案

  • 对于第一种方法,“使用通用匹配器工厂创建匹配器并设置参数”表示以下代码
  • DescriptorMatcher matcher = DescriptorMatcher.create(DescriptorMatcher.FLANNBASED);
    在Java中设置参数时,您将必须创建一个yaml配置文件,并使用matcher.read()读取参数,因为Java中目前没有用于配置参数的包装器。另一件事要注意的是
  • 至于使用JavaCV,medloh的评论是正确的。它增加了复杂性,但是是可能的。
  • 09-27 06:12
    查看更多