M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置

电脑系统M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第1张图片

基于最近学习opencv总结一下网上查找的资料和遇到的坑

首先安装opencv按照官方给出的配置在自己的电脑要安装python和cmake

这两个的安装度娘就行一步一步来

如果用需要生成java环境需要安装jdk

我用的zulu jdk 1.8

个人建议上述所有都安装最新版本

终端输入

brew edit opencv

https://github.com/Homebrew/homebrew-core/blob/master/Formula/opencv.rb 这是使用brew安装时执行的命令,我们可以看到它下载了opencv和opencv_contrib两个包
所以,homebrew默认安装opencv_contrib,不需要考虑重新编译opencv+opencv_contrib,这也就是为什么说brew安装是最简单的方法。

查看这些信息安装的是4.5.5

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第2张图片

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第3张图片

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第4张图片 因为要安装opencv_contrib 这个通过brew就可以直接安装,我们需要修改的地方

-DBUILD_opencv_java=OFF 改成 -DBUILD_opencv_java=ON

这个目的是生成对应的jar包

同时将以下信息自己拷进去就行

1.8对应的是jdk的版本 其他的是对应的安装的jdk的位置

-DOPENCV_JAVA_TARGET_VERSION=1.8
      -DJAVA_INCLUDE_PATH=/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/include
      -DJAVA_AWT_LIBRARY=/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/jre/lib/libawt.dylib
      -DJAVA_JVM_LIBRARY=/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/jre/lib/libjvm.dylib

网上查找m1的需要在每个cmake 前加 "arch" ,"-arm64"

找到对应 mkdir "build" do下的信息

这是修改后的

mkdir "build" do
      system "arch" ,"-arm64","cmake", "..", *args
      inreplace "modules/core/version_string.inc", Superenv.shims_path, ""

      system "arch" ,"-arm64","make"
      system "arch" ,"-arm64","make", "install"

      system "arch" ,"-arm64","make", "clean"
      system "arch" ,"-arm64","cmake", "..", "-DBUILD_SHARED_LIBS=OFF", *args
      inreplace "modules/core/version_string.inc", Superenv.shims_path, ""

      system "arch","-arm64","make"
      lib.install Dir["lib/*.a"]
      lib.install Dir["3rdparty/**/*.a"]
    end

至此opencv的文件配置完毕 保存退出既可

安装前再此确认python3 cmake jdk 

如果电脑之前安装过opencv 请先卸载

brew uninstall opencv

如果没装过直接运行

brew install --build-from-source opencv

意思是通过刚才的配置文件进行安装 安装过程等着就行,个人建议把占用cpu的应用关掉 

安装完成之后找到对应目录

 一般安装完都有显示安装目录

cd /opt/homebrew/Cellar/opencv/4.5.5_2/share/java/opencv4/

进入后可发现生成的对应文件libopencv_java455.dylib*  opencv-455.jar

有这两个文件证明安装成功,然后就是开始用了

打开idea创建好自己的项目

配置自己的jdk 注意这里划重点⚠️:项目的jdk一定要和opencv刚才安装用的jdk是一个否则用的时候可能报错版本不对应

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第5张图片

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第6张图片 M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第7张图片

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第8张图片 然后添加jar包

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第9张图片

 找到刚才生成的opencv的jar包添加

添加好后点加号再次选择jar包目录下的另一个文件

 M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第10张图片

 M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第11张图片

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第12张图片

点击应用并确认

idea java编辑器版本一定要对应

M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第13张图片

 M1芯片opencv+opencv_contrib安装JAVA开发IDEA配置_第14张图片

 添加好了这就没问题了

public static void main(String[] args) {

    System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
    Mat src = Imgcodecs.imread(文件地址);
    new ImageViewer(src, "第一幅图片").imshow();
}

这个时候弹出打开的文件就没问题了

因为是从git上下载文件 安装的时候可能会比较慢,请科学上网

安装如果有问题卸载后重装 

不要去下载别人安装好的包,opencv一直更新建议还是自己去安装

你可能感兴趣的:(java,opencv,opencv,java,神经网络,计算机视觉,机器学习)