macos 上使用 java+opencv记录

自编译

失败很多次之后终于跑起来一个 java+opencv 的demo。

过程

主要步骤如下:

编译需要 Apache Ant

复制代码
brew install ant

需要告诉 opencv 需要 javabuild -DBUILD_opencv_java=ON

复制代码
brew edit opencv

编辑这个我错了很多次 直接编辑完了它会默认下载未修改的opencv 配置

opencv.rb所以自己搞一个 下载的时候带上配置

复制代码
brew install --build-from-source opencv yourpath/opencv.rb

下载后会看到 jar和 dylib 文件目录如下

代码执行的时候配置 java.library.path

执行加载 opencv库

复制代码
    static {


        System.out.println(System.getProperty("java.library.path"));

        System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

    }

我执行了识别答题卡的代码示例 ,效果如下

后记

  1. java.library.path 配置的时候 一定直接到 dylib 和 jar
  2. 一定注意 jdk 版本 4.8.1只能用 java21了 之前用 java8编译一直报错

maven依赖

直接 maven依赖,可以用。省去了复杂的编译过程。

stackoverflow 参考地址 https://stackoverflow.com/a/65784365/14246311

java 复制代码
<dependencies>
    <!-- https://mvnrepository.com/artifact/org.openpnp/opencv -->
    <dependency>
        <groupId>org.openpnp</groupId>
        <artifactId>opencv</artifactId>
        <version>4.3.0-3</version>
    </dependency>
</dependencies>

看了他的源码,判断系统后自动从 jar 里面引入动态链接库。确实太省心了。

参考 stackoverflow 参考地址 https://stackoverflow.com/a/65784365/14246311

相关推荐
超级大只老咪6 小时前
数组相邻元素比较的循环条件(Java竞赛考点)
java
小浣熊熊熊熊熊熊熊丶6 小时前
《Effective Java》第25条:限制源文件为单个顶级类
java·开发语言·effective java
毕设源码-钟学长6 小时前
【开题答辩全过程】以 公交管理系统为例,包含答辩的问题和答案
java·eclipse
啃火龙果的兔子6 小时前
JDK 安装配置
java·开发语言
星哥说事6 小时前
应用程序监控:Java 与 Web 应用的实践
java·开发语言
派大鑫wink6 小时前
【JAVA学习日志】SpringBoot 参数配置:从基础到实战,解锁灵活配置新姿势
java·spring boot·后端
xUxIAOrUIII7 小时前
【Spring Boot】控制器Controller方法
java·spring boot·后端
Dolphin_Home7 小时前
从理论到实战:图结构在仓库关联业务中的落地(小白→中级,附完整代码)
java·spring boot·后端·spring cloud·database·广度优先·图搜索算法
醇氧7 小时前
org.jetbrains.annotations的@Nullable 学习
java·开发语言·学习·intellij-idea
Java&Develop7 小时前
Aes加密 GCM java
java·开发语言·python