实验二 ROS结合OpenCV示例——人脸识别

这篇具有很好参考价值的文章主要介绍了实验二 ROS结合OpenCV示例——人脸识别。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、实验原理:

Opencv库是一个基于BSD许可发行的跨平台开源计算机视觉库,基于opencv库,可以很方便的入手机器视觉方面的应用,ros已经集成了opencv库和相关接口功能包;
人脸识别的目的是在输入图像中确定人脸的位置、大小、姿态。利用大量样本的Haar特征进行分类器训练,然后调用训练好的瀑布型级联分类器cascade进行模式匹配。进而获取二维包围框。

二、实验步骤:

<1> 安装opencv 以及串口功能包

$ sudo apt-get install ros-kinetic-vision-opencv libopencv-dev python-opencv

接口功能包的作用就是将ROS中的图像数据转换成opencv格式的图像,并且调用opencv库进行各种图像处理。

<2> 测试opencv串口是否安装成功

(使用usb摄像头示例,作业:使用orbbec实现同样功能)
打开USB摄像头:

$ roslaunch robot_vision usb_cam.launch    (usb摄像头)

启动rqt

$ rosrun rqt_image_view rqt_image_view

此时选择image_raw
实验二 ROS结合OpenCV示例——人脸识别
然后使用test查看效果:

$ rosrun robot_vision cv_bridge_test.py

使用usb摄像头时候test.py中的数据:
实验二 ROS结合OpenCV示例——人脸识别
如果用orbbec时候需要改动此处为:/amera/rgb/image_raw
实验二 ROS结合OpenCV示例——人脸识别
该命令启动另一个视频窗口,如下所示:
实验二 ROS结合OpenCV示例——人脸识别
此窗口显示一个红色圆点,是通过opencv转化之后,画上去的小红点。
<3> 调用usb摄像头驱动

$ roslaunch robot_vision usb_cam.launch    (usb摄像头)
$ roslaunch astra_launch astra.launch    (orbbec摄像头)

<4> 启动人脸功能

$ roslaunch robot_vision face_detector.launch 

<5> 启动rqt显示功能

$ rosrun rqt_image_view rqt_image_view

实验二 ROS结合OpenCV示例——人脸识别

三、程序分析:

face_detector.launch文件里面主要程序是face_detector.py源程序,程序主要内容如下所示
初始化

#创建cv_bridge
#获取haar特征的级联表xml文件,文件路径在launch文件中传入
#使用级联表初始化haar特征检测器
#设置级联表参数,优化人脸识别,
#初始化订阅rgb格式图像数据订阅者
ROS 回调函数
#将ROS中的图像数据转换成opencv格式的图像
#创建灰度图像
#创建平衡直方图
#尝试检测人脸
#在opencv窗口框出人脸
#发布识别后的图像
人脸识别
#首先匹配正面人脸模型
#如果正面人脸模型匹配失败,尝试侧面人脸匹配文章来源地址https://www.toymoban.com/news/detail-488658.html

到了这里,关于实验二 ROS结合OpenCV示例——人脸识别的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于OpenCV提供的人脸识别算法LBPH实现人脸识别

    本文通过学习LBPH人脸识别算法,简要了解人脸识别技术的原理,实现人脸采集、训练人脸模型实现人脸识别。 OpenCV库自带的人脸级联分级器具有很好的人脸检测和人脸追踪效果,它是一个基于Haar特征的Adaboost级联分类器。特别注意,OpenCV库虽然自带人脸级联分级器,但是识

    2024年02月03日
    浏览(36)
  • 头歌--人脸识别系统--OpenCV人脸检测

    目录 第1关:图片基本操作 第2关:色彩空间及其转换 第3关:基于Harr特征的人脸检测分类器 第4关:绘制人脸与人眼区域 第1关:图片基本操作 第2关:色彩空间及其转换 第3关:基于Harr特征的人脸检测分类器 第4关:绘制人脸与人眼区域

    2024年02月05日
    浏览(41)
  • 人脸识别实战:使用Python OpenCV 和深度学习进行人脸识别

    首先简要讨论基于深度学习的面部识别的工作原理,包括“深度度量学习”的概念。 然后,我将帮助您安装实际执行人脸识别所需的库。 最后,我们将为静止图像和视频流实现人脸识别。 安装人脸识别库 ================================================================== 为了使用 Python 和

    2024年04月09日
    浏览(46)
  • 11 OpenCV图像识别之人脸识别

    OpenCV 提供了三种人脸识别方法: Eigenfaces Eigenfaces是一种基于PCA(Principal Component Analysis,主成分分析)的人脸识别方法,属于OpenCV中的特征脸方法之一。该方法将人脸图像转换为低维的特征向量,使用PCA降维的方式提取出训练集中的主成分特征,进而提取出人脸图像的特征向

    2023年04月18日
    浏览(75)
  • Java使用opencv实现人脸识别、人脸比对

    1. opencv概述 OpenCV是一个开源的计算机视觉库,它提供了一系列丰富的图像处理和计算机视觉算法,包括图像读取、显示、滤波、特征检测、目标跟踪等功能。 opencv官网:https://opencv.org/ opencv官网文档:https://docs.opencv.org/4.7.0/index.html 参考教程1:https://www.w3cschool.cn/opencv/ 参考教

    2024年02月08日
    浏览(37)
  • opencv进阶11-LBPH 人脸识别(人脸对比)

    人脸识别的第一步,就是要找到一个模型可以用简洁又具有差异性的方式准确反映出每个人脸的特征。识别人脸时,先将当前人脸采用与前述同样的方式提取特征,再从已有特征集中找出当前特征的最邻近样本,从而得到当前人脸的标签。 OpenCV 提供了三种人脸识别方法,分

    2024年02月11日
    浏览(37)
  • 模式识别实验:基于主成分分析(PCA)的人脸识别

    本文使用Python实现了PCA算法,并使用ORL人脸数据集进行了测试并输出特征脸,简单实现了人脸识别的功能。 ORL人脸数据集共包含40个不同人的400张图像,是在1992年4月至1994年4月期间由英国剑桥的Olivetti研究实验室创建。此数据集包含40个类,每个类含10张图片。所有的图像是以

    2024年02月05日
    浏览(34)
  • 【人脸识别】ssd + opencv Eigenfaces 和 LBPH算法进行人脸监测和识别

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 其实不一定使用ssd,fasterRcnn, yolov 都可以~ 所以假设我们已经实现了这个监测模型。那么我们直接进入识别环境。 OpenCV提供了三种人脸识别的方法,分别是LBPH方法、EigenFishfaces方法、Fisherfaces方法。

    2024年02月05日
    浏览(83)
  • 计算机视觉实验:人脸识别系统设计

    设计 计算机视觉目标识别系统,与实际应用有关(建议:最终展示形式为带界面可运行的系统),以下内容选择其中一个做。 1. 人脸识别系统设计 (1) 人脸识别系统设计(必做):根据课堂上学习的理论知识(包括特征提取、分类器设计),设计一个人脸识别系统,该系统具

    2024年02月14日
    浏览(37)
  • opencv进行人脸识别

    目录 一:准备工作 二:人脸图片识别 三:视频人脸识别 一:准备工作 1:github网站下载开源人脸特征数据 下载链接:

    2024年02月19日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包