我这里有道的问题是用openCV做人脸识别的时候我用的是java, 实际写代码的时候 发现下载下来的jar包里面没有org.opencv.face.LBPHFaceRecognizer;后面百度才看到 LBPHFaceRecognizer 文件在opencv_contrib里面,但是导出百度都找不到已经编译好的jar包,就只能自己编译了。
给个百度网盘的下载链接:
链接: https://pan.baidu.com/s/153YEQV2QWpVflV4PqbrDHg 提取码: xc23
这里先说具体步骤和结:
编译主要分两步:
一个是先编译openCV,
二把opencv_contrib内容加进去。
网上面找了好多编译opencv_contrib 的方法都没有成功,要么没有成功编译出来jar包要么根本就没有编译成功。我这边经过各种尝试。最终的结论是:1先只编译openCV确保编译成功,能编译出来jar包这个别人讲的比我详细,给几个我参考的链接:
Windows环境下OpenCV及OpenCV-contrib通过CMake的源码编译安装_cmake安装opencv_堕落的黑光的博客-CSDN博客
cmake 编译opencv源码 生成jar包_opencv 编译jar-CSDN博客
open cv中cmake编译出现Download: opencv_ffmpeg.dll、ippicv等失败的解决方法_opencv 编译 下载dll报错ippicv_2021.8_win_intel64_2023033-CSDN博客
这里面坑太多了,遇到 opencv_contrib编译的部分可以跳过不看,我这里有一个更简单的编译方法。
编译成功之后jar包在build文件夹下的 \install\java 里面。
然后把 opencv_contrib-4.8.0\opencv_contrib-4.8.0\modules 下面的文件夹复制到opencv-4.8.0\modules 下面重新编译一次,就可以了。
这样jar包里面就有face模块了,我这里上传一个编译好的jar包可以自行下载。
OpenCV 介绍(不感兴趣可以跳过看重点):
OpenCV(Open Source Computer Vision Library)是一个跨平台计算机视觉库,支持多种编程语言,包括C++、Python、Java等。OpenCV提供了大量的计算机视觉算法,包括图像处理、特征检测、目标识别、视频分析等。OpenCV被广泛应用于机器视觉、图像处理、生物识别、医疗诊断、安防监控等领域。 OpenCV的特点包括:
* 跨平台:OpenCV支持多种操作系统,包括Windows、Linux、Mac OS X等。
* 开源:OpenCV是开源软件,可以免费使用。
* 丰富的算法:OpenCV提供了大量的计算机视觉算法,包括图像处理、特征检测、目标识别、视频分析等。
* 易用性:OpenCV的API简单易用,可以快速上手。 OpenCV是计算机视觉领域最流行的开源库之一,被广泛应用于各行各业。如果您对计算机视觉感兴趣,建议您学习OpenCV。 以下是一些使用OpenCV的项目:
* 人脸识别:OpenCV可以用于人脸识别,识别出人脸的关键点,并对人脸进行身份识别。
* 目标检测:OpenCV可以用于目标检测,检测出图像中的目标,并对目标进行分类。
* 视频分析:OpenCV可以用于视频分析,分析视频中的行为,并对视频进行分类。
* 机器视觉:OpenCV可以用于机器视觉,控制机器人,并对机器人进行导航。 OpenCV是一个非常强大的计算机视觉库,可以用于很多不同的应用场景。如果您对计算机视觉感兴趣,建议您学习OpenCV。
编译过程也是参考网上的步骤,自己也遇到过一些问题:
OpenCV:https://github.com/opencv/opencv
OpenCV_contrib:https://github.com/opencv/opencv_contrib OpenCV的拓展库,版本一定要和OpenCV对应,选装
CMake:https://cmake.org
Visual Studio(VS):https://visualstudio.microsoft.com/zh-hans
VS安装时勾选上使用C++的桌面开发,建议把通用Windows平台开发一并勾上(曾经出现过安装完后缺少C&C++的头文件)
1,先下载OpenCV 和 OpenCV_contrib 源码
2,安装CMake 编译工具(之前安装好可以直接用)。
3,安装Visual Studio (之前安装好可以直接用)
4,编译OpenCV
打开CMake,设置好路径
3然后点ConFigure,
编译出错问题解决:
解决方案-CMake error: error in configuration process, project files may be invalid(Windows&VS可参考)-CSDN博客
编译之后对编译选项做一些修改, 我把python相关的选项去掉了,因为我这里会报错。
在 search 对话框中输入OPENCV_EXTRA_MODULES_PATH,找到OPENCV_EXTRA_MODULES_PATH后在value中填入编译opencv_contrib解压目录中的modules路径
在search 中输入OPENCV_ENABLE_NONFREE ,在value值中点击选中。如果没有选中,那么类似SIFT已经被申请专利的方法无法使用。
4,点Genreate编译
编译的过程中还会遇到包下载不下来的情况,这里需要换一下包的路径。
cmake解决opencv编译下载失败的方法-CSDN博客
编译过程中看一下日志里面有没有error.有的话就需要查看了,主要是红色部分的日志,一般都是资源下载不下来。
第三步和第四步是最痛苦的,不过需要解决一下,都能百度到解决方法。
出现这两行也需要看一下上面的日志有没有error的。
Configuring done (93.9s)
Generating done (3.0s)
5,编译成功之后点open project 用Visual Studio编译。
找到CMakeTargets下面的INSTALL右键点生成,然后等待就可以了。
选instal,然后生成
10)最后在E:/openCV/build/install/java 路径下面就是我们的生成的jar包了
这三部解决了就已经完成90%了。文章来源:https://www.toymoban.com/news/detail-826169.html
然后再把 opencv_contrib-4.8.0\opencv_contrib-4.8.0\modules 下面的文件夹复制到opencv-4.8.0\modules 下面重新编译一次,就可以了。文章来源地址https://www.toymoban.com/news/detail-826169.html
到了这里,关于cmake 编译opencv_contrib源码 生成jar包解决org.opencv.face.LBPHFaceRecognizer不存在问题。的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!