在官网下载了最新版本,但是在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); //
2021.4.23