Android - OpenCV模板匹配

时间:2015-02-19 14:46:43

标签: java android opencv java-native-interface android-4.4-kitkat

所以我试图效仿这个例子:OpenCV Template Matching example in Android

我试图将它与我工作过的更新的OpenCV示例一起使用。我在更新的示例中意识到的差异是如何添加OpenCV库。这些例子让你引入一个库项目而不是jar。

我得到的错误就是这个。

02-19 09:19:19.340: E/AndroidRuntime(390): FATAL EXCEPTION: main
02-19 09:19:19.340: E/AndroidRuntime(390): Process: com.example.opencv_templatematching, PID: 390
02-19 09:19:19.340: E/AndroidRuntime(390): java.lang.UnsatisfiedLinkError: No implementation found for long org.opencv.highgui.Highgui.imread_1(java.lang.String) (tried Java_org_opencv_highgui_Highgui_imread_11 and Java_org_opencv_highgui_Highgui_imread_11__Ljava_lang_String_2)
02-19 09:19:19.340: E/AndroidRuntime(390):  at org.opencv.highgui.Highgui.imread_1(Native Method)
02-19 09:19:19.340: E/AndroidRuntime(390):  at org.opencv.highgui.Highgui.imread(Highgui.java:362)
02-19 09:19:19.340: E/AndroidRuntime(390):  at com.example.opencv_templatematching.MatchingDemo.run(TemplateMatching.java:18)
02-19 09:19:19.340: E/AndroidRuntime(390):  at com.example.opencv_templatematching.TemplateMatching.main(TemplateMatching.java:58)

完整代码:
主要 - http://pastebin.com/UwYRN6gN
匹配模板类 - http://pastebin.com/ankDA9MJ
控制台错误 - http://pastebin.com/MmbnntSD

提前致谢。

1 个答案:

答案 0 :(得分:1)

谷歌搜索了一下,你会发现你在加载OpenCV库之前调用了模板匹配,在openCV forum中看到了同样的错误:

  

你只能在BaseLoaderCallback之后调用opencv函数   完成(opencv dlls已加载)。所以,如果你把那些代码放入   你的onCreate函数,你会得到那个错误。

您可以在openCV doc

中找到完整的BaseLoaderCallback文档

希望这可以帮到你^^