当前位置: 首页 > news >正文

MAC设备(M1)环境下编译安装openCV for Java

最近发现一个需求,可以用openCV来实现,碰巧又新买了mac笔记本,就打算利用业余时间安装下openCV。这里将主要步骤记录下,希望能帮助有需要的人。

1、准备编译环境

#查询编译opencv相关依赖
brew info opencv

查询结果如下图所示:
在这里插入图片描述对于没有打✅的,通过如下命令进行安装:

#例如eigen,具体视情况而定
brew install eigen

2、在线下载opencv源码

#安装wget
brew install wget
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.8.0.zip
#解压缩
unzip opencv.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.8.0.zip
unzip opencv_contrib.zip

如果文件已存在,通过如下命令删除:

rm -r -f /XXX/*

3、准备编译安装

#进入opencv-4.8.0目录下
cd opencv-4.8.0
#创建build文件夹
mkdir build && cd build
#创建run.sh脚本
vim run.sh

复制黏贴以下指令至run.sh中,这里要特别说明一下,我安装的jdk是:zulu8.62.0.19-ca-jdk8.0.332-macosx_aarch64.dmg,对应jdk路径需要根据实际情况进行调整,直接复制可能执行报错

arch -arm64 cmake \
-DCMAKE_SYSTEM_PROCESSOR=arm64 \
-DCMAKE_OSX_ARCHITECTURES=arm64 \
-DOPENCV_JAVA_TARGET_VERSION=1.8 \
-DWITH_OPENJPEG=OFF \
-DWITH_IPP=OFF \
-DCMAKE_BUILD_TYPE=RELEASE \
-DCMAKE_INSTALL_PREFIX=/usr/local/opencv \
-DJAVA_INCLUDE_PATH=/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/include \
-DJAVA_AWT_INCLUDE_PATH=/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/include \
-DJAVA_INCLUDE_PATH2=/Library/Java/JavaVirtualMachines/zulu-8.jdk/Contents/Home/include/darwin \
-DBUILD_opencv_python2=OFF \
-DBUILD_opencv_java=ON \
-DINSTALL_PYTHON_EXAMPLES=OFF \
-DINSTALL_C_EXAMPLES=OFF \
-DBUILD_ZLIB=OFF \
-DOPENCV_ENABLE_NONFREE=ON \
-DOPENCV_EXTRA_MODULES_PATH=/Users/matt/opencv_contrib-4.8.0/modules \
-DBUILD_EXAMPLES=ON ..

4、编译安装

#执行run.sh
bash run.sh
#开始编译
sudo arch -arm64  make -j8
#开始安装
sudo arch -arm64 make install

完成之后,会在以下两个路径下出现编译结果,两个地方生成的结果都可以使用:

#前面在run..sh中设置的build路径
opencv-4.8.0/build/bin/opencv-480.jar
opencv-4.8.0/build/lib/libopencv_java480.dylib
#安装路径
/usr/local/opencv/share/java/opencv4/libopencv_java480.dylib
/usr/local/opencv/share/java/opencv4/opencv-480.jar 

5、开始使用openCV

首先将上一步生成的动态库放到如下路径中

/Library/Java/Extensions/

如下图所示:
在这里插入图片描述然后将生成的jar包引入到项目中,我这里是直接加载到项目下的,然后引入到工程中,如下图所示:
在这里插入图片描述

6、应用结果

启动下图所示测试类:
在这里插入图片描述查看应用效果(去除照片阴影背景,方便直接打印),如下图所示:
在这里插入图片描述

http://www.lryc.cn/news/222388.html

相关文章:

  • pytest中的pytest.ini
  • C#通过TCP发送List<string>
  • Mactracker for mac(硬件信息查询工具)免费下载
  • MES管理系统中常规的生产建模有哪些
  • 电商API:淘宝京东拼多多1688多电商平台的商品销量库存信息获取
  • EPLAN软件中的术语-主数据‘’技术分享
  • web应用程序、Django框架的学习
  • 【c++之设计模式】组合使用:抽象工厂模式与单例模式
  • Adobe Photoshop Elements 2024 v24.0 简体中文版 | 中文直装版
  • seata事务回滚引起的skywalking数据库存储空间剧增的问题排查
  • 数据库SQL
  • C语言实现给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
  • 101 对称二叉树
  • 安全测试,接口返回内容遍历~
  • 【GIS】地理坐标系与投影坐标系的区别
  • 太细了:美团一面连环夺命20问,搞定就60W起
  • 休眠和睡眠有哪些区别?如何让电脑一键休眠?
  • Kibana使用Timelion根据时间序列展示数据
  • 基础:JavaScript的怪癖之一:提升(Hoisting)
  • 前端特殊字符转码
  • Python开发运维:Python3.7安装Django3.2
  • B站双11,联手天猫暴涨2亿消费新势力
  • 如何选择SVM中最佳的【核函数】
  • RT-Thread的构建与配置系统
  • 合肥中科深谷嵌入式项目实战——基于ARM语音识别的智能家居系统(一)
  • Git的简介以及基本使用
  • django安装数据库
  • springboot--外部环境配置
  • 『MySQL快速上手』-④-表的操作
  • 2023年10月Web3行业月度发展报告区块链篇 |陀螺研究院