【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制

1.RIKIBOT WEB远程视频实时监控及摄影功能

1.1 打开终端,启动摄像头
$roslaunch rikibot camera.launch
1.2 重新打开一个终端,启动web服务
$roslaunch rikibot rikibot_web.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
1.3 然后我们可以用windows打开浏览器输入http://192.168.199.148:8080/,其中192.168.199.148的IP是ROS系统主控的IP 电脑跟小车的主控要接在同一个局域网内
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
1.4 上面会出现相关话题供我们选择,这里只有一个选项我点击上面的“image_raw”,
系统此时会跳转到图像功能,如果我们点击“Snapshot”,这里是拍照功能
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
**

2.RIKIBOT 人脸识别、特定身份识别、色球追踪

**
2.1相关包说明
目标检测包功能核心包rikibot_object_detect,这里识别提供两种人脸检测、一个是基于Opencv haar的人脸检测、一个是基于face_recongnition的人脸检测,身份检测是也基于face_recongnition实现,色球追踪是基于Opencv HSV算法实现。
2.2 相关功能使用
2.2.1 人脸识别
第一种:基于Opencv Haar因子的人脸识别
打开一个终端启动camera
roslaunch rikibot camera.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制重新打开一个终端,启动人脸识别
roslaunch rikibot_object_detect rikibot_facehaar_object.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
然后重新打开一个终端,查看相关图像,选择“object_image”话题
rosrun rqt_image_view rqt_image_view
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
第二种:基于face_recongnition的人脸识别
打开终端启动camera
roslaunch rikibot camera.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
重新打开一个终端,启动人脸识别
roslaunch rikibot_object_detect rikibot_face_object.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
然后重新打开一个终端,查看相关图像,选择“object_image”话题
rosrun rqt_image_view rqt_image_view
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
2.2.2基于身份识别(特定人脸识别)
基于身份识别需要先上传一张你要识别该人身份的图片,放置到
“/home/rikibot/catkin_ws/src/rikibot_project/rikibot_object_detect/image”路径下面,
图片格式为jpg格式,并记下图片的名称。
下图所示,预先放了要识别的 1.jpg 2.jpg 3.jpg 三张照片
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
然后进入到
/home/rikibot/catkin_ws/src/rikibot_project/rikibot_object_detect/node目录下面,
打开rikibot_facename_detect.py,更改相关代码
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
代码实际修改处: 修改了要记得保存
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
打开终端启动camera
roslaunch rikibot camera.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
重新打开一个终端,启动人脸识别
roslaunch rikibot_object_detect rikibot_facename_object.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
然后重新打开一个终端,运行rosrun rqt_image_view rqt_image_view
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
查看相关图像,选择“object_image”话题,当检测到上传图片的人后,系统识别相关人的名字,如果没有上传图片,系统就不能识别(些片还需要贴个图片)
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
2.2.3色块追踪
打开终端启动camera
roslaunch rikibot camera.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
重新打开一个终端,启动人脸识别
roslaunch rikibot_object_detect rikibot_ball_object.launch【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
然后重新打开一个终端,查看相关图像,选择“object_image”话题,
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
目前是识别红色,用户用手移动相关的色球,系统会追踪相关的色球,如果需要识别其它颜色,进入rikibot_object_detect/node,打开rikibot_ball_detect.py文件,改变相关的色值就可以
修改该路径下的rikibot_ball_detect.py文件
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
颜色相关代码修改:
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
修改成识别绿色后 再次启动
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制

3.RIKIBOT Tensorflow 目标检测、目标分类

3.1相关包说明
rikibot_tensorflow检测包提供,目标检测、目标分类、与数字识别,由于树莓派系统使用CPU计算检测,使用性能比较差,这里建议用更好的专用平台。
3.2相关使用操作说明
3.2.1目标检测
打开终端,启动tenforflow摄像头启动文件,这里的图像大小设置为320x240以减小系统运行负载
roslaunch rikibot_tensorflow camera.launch【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
在打开终端,启动目标检测,由于加载tensorflow比较久,需要耐心等待一下
roslaunch rikibot_tensorflow rikibot_tensorflow_detect.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
打开终端,查看图像”result_ripe”
rosrun rqt_image_view rqt_image_view
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
3.2.2分类检测
打开终端,启动tenforflow摄像头启动文件,这里的图像大小设置为320x240以减小系统运行负载
roslaunch rikibot_tensorflow camera.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
在打开终端,启动检测,由于加载tensorflow比较久,需要耐心等待一下
roslaunch rikibot_tensorflow rikibot_tensorflow_classify.launch
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
启动完成后,把需要检测的物品放置到摄像头前,此时会输出检测相关名称与置信度,score分越高,检测目标就越可靠
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制

4.RIKIBOT 未知区域探索全自动SLAM构建地图

4.1 把小车平放在地板上,用远程软件登录到小车系统上,打开一个终端启动
roslaunch rikibot bringup.launch。
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
4.2 再打开一个终端,进入到保存地图的路径下,准备建好地图的时候 执行保存地图脚本
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
24.3 再打开一个终端,执行自动建地图命令
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制此时机器人会自动探索未知区域,完成地图构建。
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
当观察地图建得差不多,就可以执行保存地图脚本了。
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
保存成功
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制

5.RIKIBOT PS2手柄控制

5.1 把机器人放在地板上,然后远程软件登录到系统上启动:
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
启动完成后 如果LX:255 LY:255 RX:255 RY:255
此时需要手动按下PS2手柄的ANALOG键
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
切换成 LX:128 LY:127 RX:128 RY:127【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
按下左侧的2键
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
此时会切换成 PS2手柄控制模式:
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
此时按手柄右侧的 四个圆形按钮,依次切换四挡速度
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
然后再拨动左侧摇杆,即可实现前后左右转动,麦轮车型可同时向左右拨动两个摇杆,分别控制左右横移。
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
当不用手柄的时候 要记得按下左侧的1键 切换成 正常模式,否则键盘控制会失效
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
最后Rikirobot提供两驱动、四驱动、麦克纳姆轮、Omni全向三轮、Omni全向四轮、履带、阿克曼(舵机转向)、大型负载的各种ROS车,有配套指导、及完善售后。
QQ交流群:130486387
RIKIROBOT店铺连接
下面是店铺的二维码与Rikirobot的交流群,有兴趣的可以扫一扫。
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制
【ROS RIKIBOT 基础--使用系列 第九章节】远程视频实时监控及摄影功能、人脸识别、特定身份识别、色球追踪、目标检测、分类、未知区域探索全自动SLAM构建地图、PS2手柄控制