我正在尝试使用OpenCV 3.0.0设置Eclipse(Neon版本),但我遇到了一个问题。 当我加载图片时,代码如下:
Mat m = Imgcodecs.imread("newimage.jpg");
抛出以下错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.imgcodecs.Imgcodecs.imread_1(Ljava/lang/String;)J
at org.opencv.imgcodecs.Imgcodecs.imread_1(Native Method)
at org.opencv.imgcodecs.Imgcodecs.imread(Imgcodecs.java:82)
at TestOpenCVFeats.main(TestOpenCVFeats.java:39)
根据此网站设置一切 Set up OpenCV for Java in Eclipse
还添加了java.library.path的路径:
export LD_LIBRARY_PATH = $LD_LIBRARY_PATH:/usr/local/share/OpenCV/java
确认它与:
java -XshowSettings:properties
和$ PATH变量。
还将此命令添加到JVM运行配置:
-Djava.library.path= "/usr/local/share/OpenCV/java"
还试过这行代码,没有它:
System.loadLibrary("libopencv_java300");
路径/ usr / local / share / OpenCV / java上文件的权限是:
-rwxr-xr-x 1 root root 831809 Srp 1 2015 libopencv_java300.so
-rwxr-xr-x 1 root root 300815 Srp 1 2015 opencv-300.jar
我已经尝试了所有可能的组合,仍然会得到相同的错误。 我不知道还有什么可以尝试使这项工作。 当我执行c ++(Eclipse Luna)或python代码时,OpenCV正常工作。 我的操作系统是Ubuntu 14.04。
非常感谢任何帮助。
答案 0 :(得分:1)
好的,好吧,找到了解决方案。 这行代码需要在main中添加:
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
答案 1 :(得分:0)
如果要在Windows中使用Eclipse配置OpenCV,请按照以下步骤操作:
添加OpenCV jar。
您可以通过以下方式使用OpenCv本机库:
将本机库添加到您的opencv jar
指向Java类中的本机库