计算机视觉学习OpenCV Java 调用

OpenCV

什么是OpenCV

OpenCV是一个基于Apache2.0许可(开源)发行的跨平台计算机视觉机器学习软件库,可以运行在LinuxWindowsAndroid和[Mac OS](https://baike.baidu.com/item/Mac OS/2840867)操作系统上。 [1] 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

OpenCV用C++语言编写,它具有C ++,PythonJavaMATLAB接口,并支持Windows,Linux,Android和Mac OS,OpenCV主要倾向于实时视觉应用,并在可用时利用MMX和SSE指令, 如今也提供对于C#、Ch、Ruby,GO的支持。

简而言之,OpenCV是一个计算机视觉库。

安装OpenCV

Releases - OpenCV

  1. 去官网下载对应系统的openCV版本

  1. 双击解压放在自己磁盘目录

  2. 配置opencv环境变量,目录为opencv/build/bin/

Java 调用OpenCV API

  1. 将java的dll库放到对应的%JAVA_HOME%/bin 目录里面

    dll 文件目录 opencv/build/java/x64

  2. 引入jar 到工程里面

  3. 编写测试代码

    这里以spring boot 举例

@RunWith(SpringRunner.class)
@SpringBootTest
public class OpencvApplicationTests {

    @Test
    public void contextLoads() {
        //	加载系统类库
        System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
        //	Mat 可以理解为是矩阵,图片均是矩阵计算
        Mat mat = Mat.eye( 3, 3, CvType.CV_8UC1 );
        System.out.println( "mat = " + mat.dump());
    }

}

写在最后

在使用OpenCV之前,推荐大家去复习下矩阵的知识,因为图像可以被看成一个矩阵进行操作。
小编在这也粗略的做了一个矩阵知识点的总结,详细参考下面这篇文章:
另外,Java 在调用OpenCV的时候都是调用的底层原生C++ 代码。
https://www.cnblogs.com/bananafish/p/15789277.html

原文地址:https://www.cnblogs.com/bananafish/p/15786499.html