我在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();
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的正确途径是什么
答案 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();
}
希望这有帮助!