【CSDN传疯了】史上最强Opencv神技——带你体会AI魅力,揭秘人脸检测识别与猫脸检测技术哦~

前言

🚀 作者 :“程序员梨子”

🚀 **文章简介 **:本篇文章主要是写了opencv的人脸检测、猫脸检测小程序。

🚀 **文章源码免费获取 : 为了感谢每一个关注我的小可爱💓每篇文章的项目源码都是无

偿分享滴💓👇



点这里蓝色这行字体自取,需要什么源码记得说标题名字哈!私信我也可!

🚀 欢迎小伙伴们 点赞👍、收藏⭐、留言💬

正文

OpenCV是时下最流行的基于C++的开源计算机视觉库,它功能丰富,函数众多,从最基本的读写

图片,到简单的图像处理(比如降噪滤波、边缘检测、图像变换、特征提取等),再到更加高级的

行人检测、人脸识别、文本识别等,尽皆包含。在OpenCV提供的函数的基础上,我们可以很方便

地开发自己的应用,实现自己的算法。总的来说,就是OpenCV非常强大。具体有多强大

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抱歉,我无法为您提供代码解决方案,因为我是一个语言模型AI,没有编写、运行代码的能力。但是,我可以给您提供一些参考,希望能对您有所帮助。 运用OpenCV实现人识别需要以下几个步骤: 1. 安装OpenCV库 在Java中使用OpenCV库需要通过Java调用C++的dll文件。要想使用Java调用OpenCV库需要先安装OpenCV库并配置环境变量。 2. 采集人信息 使用OpenCV进行人采集,通过摄像头进行拍摄和采集人信息。 ``` // 加载OpenCV库 System.loadLibrary(Core.NATIVE_LIBRARY_NAME); // 打开摄像头 VideoCapture videoCapture = new VideoCapture(0); if (!videoCapture.isOpened()) { return "打开摄像头失败!"; } // 循环读取摄像头数据 Mat frame = new Mat(); while (videoCapture.read(frame)) { // 检测 detectFace(frame); // 显示图像 HighGui.imshow("人采集", frame); // 等待100毫秒 int key = HighGui.waitKey(100); // 按下ESC键退出 if (key == 27) { break; } } // 关闭摄像头 videoCapture.release(); // 销毁窗口 HighGui.destroyAllWindows(); ``` 其中,detectFace函数是使用OpenCV检测的方法。 3. 人识别 使用OpenCV进行人识别识别出人信息并和之前采集的人信息进行比对。 ``` // 加载OpenCV库 System.loadLibrary(Core.NATIVE_LIBRARY_NAME); // 读取人库中的数据 List<Mat> images = readImages(); // 读取测试图片 Mat image = Imgcodecs.imread("test.png"); // 检测 Mat face = detectFace(image); // 转化为灰度图像 Mat gray = new Mat(); Imgproc.cvtColor(face, gray, Imgproc.COLOR_BGR2GRAY); // 图像尺寸缩放 Mat resized = new Mat(); Imgproc.resize(gray, resized, new Size(92, 112)); // 将Mat转化为一维数组 MatVector vector = new MatVector(1); vector.put(0, resized); // 测试图片编码 Mat test = new Mat(); FaceRecognizer.createLBPHFaceRecognizer(1, 8, 8, 8, 123).predict(vector, test, -1); // 用人库中的数据和测试数据进行比对 for (int i = 0; i < images.size(); i++) { Mat train = new Mat(); FaceRecognizer.createLBPHFaceRecognizer(1, 8, 8, 8, 123).predict(vector, train, -1); // 比对结果 int result = OpenCVUtil.compareHist(test, train); if (result == 1) { System.out.println("识别成功!"); break; } } ``` 其中,readImages函数是读取人库中的数据的方法,detectFace函数是使用OpenCV检测的方法,compareHist函数是比对人数据的方法。 4. 上传人数据到数据库 将采集到的人信息和人物信息存储到数据库中。使用springboot作为后端框架,通过vue前端界面输入人物信息,并将采集到的人信息上传到数据库中。 具体实现方法可以参考:https://blog.csdn.net/sinat_40593751/article/details/108753393 希望这些详解能帮助到您。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值