引言
最近开始研究图像识别技术,网上查找资料后,OpenCV属于开源,其他的收费,并且OpenCV支持java,非常适合。
1.下载说明
1.1 OpenCV官网地址
1.2 OpenCV发布地址
Releases - OpenCVhttps://opencv.org/releases/
1.3 文档地址
OpenCV: OpenCV moduleshttps://docs.opencv.org/4.7.0/index.html
1.4 GitHub下载地址
GitHub - opencv/opencv at 4.7.0Open Source Computer Vision Library. Contribute to opencv/opencv development by creating an account on GitHub.https://github.com/opencv/opencv/tree/4.7.0Release OpenCV 4.7.0 · opencv/opencv · GitHubOpen Source Computer Vision Library. Contribute to opencv/opencv development by creating an account on GitHub.
https://github.com/opencv/opencv/releases/tag/4.7.0
1.5 GitHub国内镜像加速地址
2.安装
双击安装,目录不要包含中文,安装完成打开目录,
目录位置:${你的存放位置}\opencv\build\java
3. java项目
使用SpringBoot项目,有2中引用方式
3.1 本地引用
3.2 仓库引用(推荐)
<dependency>
<groupId>org.openpnp</groupId>
<artifactId>opencv</artifactId>
<version>4.7.0-0</version>
</dependency>
3.3 缺失xfeatures2d补全
将${你的存放位置}\opencv\sources\samples\java\tutorial_code下面的示例代码导入到SpringBoot工程中,发现项目标红,找不到 org.opencv.xfeatures2d.*下面的包。
经过查阅资料,该org.opencv.xfeatures2d.*被申请专利,已经从opencv的默认jar包去除。
经过网上反复查阅资料,在opencv_contrib中存在引用,下载后发现全是cpp和py格式不能使用。
又通过maven仓库查找,找到opencv_contrib的arr包,总算找到,具体的代码包已经放在附件中,不需要重复查找。
引入项目后,报红消失。
3.3 缺失FONT_HERSHELY_SIMPLEX
另外在样例文件中BackgroundSubstraction.java文件中,报红,提示Core.FONT_HERSHEY_SIMPLEX找不到引用,
经过研究,改为Imgproc.FONT_HERSHEY_SIMPLEX即可。
4. 启动实验
这里使用的是maven引用的仓库引用,主要是可以查看源码,另外封装了对dll文件的读取,不需要额外配置。本文推荐使用这种方式,启动非常简单如下:
public static void main(String[] args){
//加载dll文件
OpenCV.loadLocally();
//打印版本信息
System.out.println(Core.getVersionString());
//创建一个2x2的矩阵
Mat mat = Mat.zeros(2, 2, CvType.CV_8UC1);
System.out.println(mat.dump());
}
打印结果如下:
以上就是OpenCV的初上手体验,附件我看看怎么弄,随后传上来(已传)。