在eclipse-ubuntu

时间:2016-01-29 08:17:38

标签: java eclipse opencv3.0 ubuntu-15.04

我在eclipse-ubuntu.i中使用ubuntu 15.04.installed opencv 3.1.0在此链接http://milq.github.io/install-opencv-ubuntu-debian/之后设置opencv的本机库路径时出现问题 并在eclipse中添加新库(OpenCV)并将其jar路径设置为

/home/user/opencv-3.1.0/build/bin/opencv-310.jar

和本机库路径为

/home/user/opencv-3.1.0/build/lib

lib文件夹包含.so.a个文件。但是当我尝试使用Mat对象时,它会给我一个错误:这里是主要方法

System.out.println("Welcome to OpenCV hhhh " + Core.VERSION);
System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
Mat img=new Mat();

这是我的代码和控制台的截图 enter image description here 它给了我错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: org.opencv.core.Mat.n_Mat()J
        at org.opencv.core.Mat.n_Mat(Native Method)
        at org.opencv.core.Mat.<init>(Mat.java:24)

如果我像这样使用垫子

Mat m1 =Imgcodecs.imread("/home/zed/Desktop/img.png");

然后它给了我差异错误:

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:102)
我正在为本地图书馆提供正确的道路吗?如果没有,那么Native Library在eclipse-ubuntu中使用Opencv3.1.0的正确途径是什么

1 个答案:

答案 0 :(得分:0)

你应该添加

System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

主:

public static void main(String[] args) {

  System.out.println("Welcome to OpenCV hhhh " + Core.VERSION);
  System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
  Mat m1 =Imgcodecs.imread("/home/zed/Desktop/img.png");
  Mat m2=new Mat();
}

希望这有帮助!