- mac1
- openjdk17
官网上没有编译好的mac m1上二进制库.需要自己下载源代码编译.
- https://opencv.org/releases/从这里下载源代码.如opencv-4.7.0.zip解压
- 把 opencv-4.7.0文件夹重命名为opencv
- 在opencv同级目录下建一个文件夹build_opencv
- cd到build_opencv,然后执行
注意确认OpenCV modules里面有javacmake -DBUILD_SHARED_LIBS=OFF ../opencv
- 执行
会在build_opencv里编出来Opencv的jar包和链接库.make -j8
新建一个文件SimpleSample.java内容为import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.core.CvType; import org.opencv.core.Scalar; public class SimpleSample { static{ System.loadLibrary(Core.NATIVE_LIBRARY_NAME); } public static void main(String[] args) { System.out.println("Welcome to OpenCV " + Core.VERSION); Mat m = new Mat(5, 10, CvType.CV_8UC1, new Scalar(0)); System.out.println("OpenCV Mat: " + m); Mat mr1 = m.row(1); mr1.setTo(new Scalar(1)); Mat mc5 = m.col(5); mc5.setTo(new Scalar(5)); System.out.println("OpenCV Mat data:\n" + m.dump()); } }
- 执行
javac -cp /Users/zhouyang/Documents/code/cpp/build_opencv/java_test/bin/opencv-470.jar SimpleSample.java java -Djava.library.path=/Users/zhouyang/Documents/code/cpp/build_opencv/lib -cp /Users/zhouyang/Documents/code/cpp/build_opencv/java_test/bin/opencv-470.jar:./ SimpleSample