加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入

模仿人脸表情的高逼真机器人,附模仿表情的APP+Arduino源码

2017/06/30
169
服务支持:
技术交流群

完成交易后在“购买成功”页面扫码入群,即可与技术大咖们分享疑惑和经验、收获成长和认同、领取优惠和红包等。

虚拟商品不可退

当前内容为数字版权作品,购买后不支持退换且无法转移使用。

加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论
放大
方块图
  • 方案介绍
  • 相关文件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

模仿人脸表情的高逼真机器人概述:

和之前的迹APP一样,我给颜艺Boy也提供了Arduino的库函数支持,可以让Arduino通过蓝牙读取人脸的表情、姿态、位置信息,库的使用非常简单,看示例代码就知道了。支持通过蓝牙输出人脸数据,开发板通过蓝牙串口读取,可以结合Arduino实现一些有趣的作品。见“相关文件”下载。

制作的手机APP截图:

模仿人脸表情的高逼真机器人程序功能模块:

  • OpenCV人脸识别
  • 基于多级回归树的人脸关键点回归
  • 基于SVM的人脸训练集表情分类识别
  • 3D GUI显示
  • 蓝牙通信用于连接硬件

模仿人脸表情的高逼真机器人视频演示:

模仿人脸表情的高逼真机器人总结:

其中关键点的检测效果还不错,而表情分类由于样本量的原因稍有些许不稳定(各种表情只用了25个训练样本)

由于训练样本运算量较大,所以先通过手机采集图像数据,然后加好标签在PC端读取数据进行训练,APP中则直接加载训练好的XML文件。值得一提的是,在表情分类模块中,对人脸关键点数据的归一化操作十分重要,在网上看到一些案例是直接将点的像素坐标归一化,然而这样无法保证对所有头部姿态都进行正确分类。所以程序里我使用了一个坐标转换,将点的像素坐标转换为以人眉心为原点的坐标系,这样再归一化之后泛化效果就好了很多。

蓝牙模块连接,连接线如图:

注意的是只需要接蓝牙的Tx,不需要接Rx,这样是为了让Arduino的print函数依然可以往控制台打印数据,另外下载程序的时候不要连接蓝牙不然会数据冲突无法下载。还需要注意初始化的波特率必须跟蓝牙模块移植。
其实用软串口的话就没有这些问题了,但是我好懒。。没时间完善库😥,要是有同学加上了软串口功能可以找我把代码整合进去。

APP兼容性
由于市面上手机型号繁多,对于不同架构的CPU不一定全部都能支持,有安装问题的可以在下载页面留言反馈我有空的话会尽量适配的。安装好了之后如果打开应用卡住或者闪退可能是手机上的安全软件限制了APP的权限,这时候需要去手机设置里开启APP使用摄像头和蓝牙的权限,以原生系统为例操作步骤如下:设置-应用-已安装-i颜艺Boy-权限管理。

  • FaceAPP-Arduino-master.zip
    描述:这款APP的Arduino库,可以实时获取人脸信息
  • i颜艺Boy.apk
    描述:模仿表情的APP
  • 原文出处.txt
    描述:原文出处

相关推荐

电子产业图谱