【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(二)——人脸识别(face recongnition))

    首先表明目的,本款机器人希望它具有辨别使用者的功能,网上能够人脸识别的文章也不少,主要是识别到人脸而不是辨别是谁的脸,本文希望能够辨别人脸。

一,参考资料

1,wiki.ros.org/face_recognition

2,其他资料

https://blog.****.net/weixin_40522162/article/details/79982386

这篇文章写的很棒,但是由于需要用到pip工具,限于版本等诸多问题,很遗憾,笔者没有实现,也不便评论

https://blog.****.net/hanshuning/article/details/50205701

blog.sina.com.cn/s/blog_a5c4a86f01011zgz.html

上面两篇都是基于roswiki的翻译和简化,建议直接访问 wiki.ros.org/face_recognition

二,修改代码注意事项

1,首先根据自己用到的摄像头修改订阅的图像话题(在face_recongition.cpp),千万别打错字了,笔者因为/usb_cam错写成/usb_can,没有任何错误提示,浪费了好久时间,这里自嘲以下。

【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(二)——人脸识别(face recongnition))

2,图像尺寸不必修改,笔者因为摄像头是640*480,而代码中(在face_recongition_lib.cpp)用到的是120*90,这是程序自动裁剪的,不用修改,修改后有问题。

3,另外像可信度,样本数量,自己捣鼓吧。

三,使用方法

1,使用方法参考链接就ok了,笔者用到的是笔记本前置摄像头,图像质量较低,避免光线不足。

2,别人文章中没有提到识别效果,我这里补充一下

样本输入:

【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(二)——人脸识别(face recongnition))

识别到人脸:

【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(二)——人脸识别(face recongnition))

可信度不足:

【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(二)——人脸识别(face recongnition))

默认的可信度为0.88,样本数量25,当屏幕中两个或多人时,只能处理一个人。

【实战+源码】基于RGB-D(深度视觉)的具有机械臂抓取功能的自主规划移动服务机器人的设计与实现(二)——人脸识别(face recongnition))

皮一下~