java首次加载opencv报错

GA666666 2021-04-23 AM 31℃ 1条

在官网下载了最新版本,但是在eclipse中配置环境后发生以下错误 Exception in thread “main” java.lang.UnsatisfiedLinkError: org.opencv.core.Mat.n_eye(III)J at org.opencv.core.Mat.n_eye(Native Method) at org.opencv.core.Mat.eye(Mat.java:402) at HelloCV.main(HelloCV.java:8) 首次运行代码如下 这个错误主要由于没有加载openCV的java类库,因为在代码中:System.out.println(Core.NATIVE_LIBRARY_NAME); 没有被首先执行,导致没有加载好类库就运行结束了 解决方法如下:

import org.opencv.core.Core;

import org.opencv.core.CvType;

import org.opencv.core.Mat;

public class HelloCV { static

{ System.loadLibrary(Core.NATIVE_LIBRARY_NAME); // 得保证先执行该语句,用于加载库,才能调用其他操作库的语句,

} public static void main(String[] args) {

//System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

Mat mat = Mat.eye(3, 3,CvType.CV_8UC1);

System.out.println("mat = "+mat.dump()); } }

 将这条语句放在类里,在这个类里加载程序,首先会加载库,这样加载过一次,再把代码改回再开始的代码也可以完美运行了:

static { System.loadLibrary(Core.NATIVE_LIBRARY_NAME); //
标签: none

非特殊说明,本博所有文章均为博主原创。

评论啦~



唉呀 ~ 仅有一条评论


  1. gaoxu
    gaoxu

    2021.4.23

    回复 2021-04-23 01:21