我最近将我的 Android 项目从 OpenCV 2.4.10 移到了OpenCV 3.0。
我使用以下代码静态初始化 OpenCV:
OpenCVLoader.initDebug();
当我运行我的应用程序时,我得到了这个异常:
java.lang.UnsatisfiedLinkError: Native method not found: org.opencv.imgcodecs.Imgcodecs.imread_1:(Ljava/lang/String;)J
Imgcodecs 是 OpenCV 3.0 中的一个新模块,它取代了 OpenCV 2.4.* 中的 Highgui,如果我是对的。
初始化时,我可以在 OpenCV 的日志中看到以下输出:
Version control: 2.4.10
...
To be built: core androidcamera flann imgproc highgui features2d calib3d ml objdetect video contrib photo java legacy ocl stitching superres ts videostab
根据以上信息,我猜 OpenCV 3.0 的 OpenCVLoader 仅初始化 2.4.10 中的旧模块。您可以看到它加载了不再需要的 highgui 模块。
这是新 OpenCV 的错误还是我遗漏了什么?是否有一些解决方法如何加载新模块?谢谢。