13

我尝试将所有库都放在我的项目中(它被描述为这个问题的解决方案),但仍然存在同样的问题。

Mat m = Highgui.imread("Koala.jpg");

Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.highgui.Highgui.imread_1(Ljava/lang/String;)J
    at org.opencv.highgui.Highgui.imread_1(Native Method)
    at org.opencv.highgui.Highgui.imread(Highgui.java:352)
    at Open.main(Open.java:26)
4

3 回答 3

22

我得到了同样的错误,下面的行对我有用。

System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

于 2014-01-21T16:53:40.597 回答
1

Java 目前看不到 OpenCV,因此出现链接错误。

我在 Mac 上,所以我链接到它在我的驱动器上的位置:

System.load( "/opt/local/share/OpenCV/java/libopencv_java246.dylib" )

您也可以将 JAR 直接包含在项目的 lib 文件夹中,但我通过指向 dylib 取得了成功。

于 2013-11-13T16:16:08.267 回答
-1

在项目属性中将路径设置为 C:\opencv\build\java\x64。在 Netbeans 中它是 project-properties-run-vmoptions=-Djava.library.path="C:\opencv\build\java\x64"

在 Eclipse 中,添加库 Window-prreference-java-buildpath-userlibraries-new-opencv,,, 添加外部 jars(添加 opencv-300 jar) 将 opencv 内部的本地库设置为 C:\opencv\build\java\x64。并将库添加到我们的项目中。

并读取图像使用 Imgcodecs.imread, Mat img=Imgcodecs.imread("C:\Users\softroniics\Documents\NetBeansProjects\SceneRecogintion\src\com\SR\view\burj.png");

于 2015-12-24T08:46:56.857 回答