仿人表情机器人的研究对于实现和谐的人机交互有着十分重要的意义,是机器人领域的研究热点之一。日本早稻田大学研制的KOBIAN-R[1]和WABIAN-2R[2],除了实现7种基本表情之外,还可以基于心理学模型实现动态情感表达。日本大阪大学研制的女性仿真机器人Geminoid F[3],通过远程遥控实现微笑、皱眉、眨眼、悲伤、撅嘴等60余种不同面部表情。东京理科大学研制的SAYA机器人[4],通过人工肌肉带动面部表情,而且内置强大的语音对话系统,可以与人进行基本语言交流。美国德雷塞尔大学研制的Hubo[5]及台湾大学研制的脸部模拟机器人Luo Head[6],哈尔滨工业大学研制的具有面部表情识别与再现的头部机器人[7, 8],具有人脸识别、表情实现、语音实现等功能。
一些心理学家研究表明,人在进行情感表达时,语言只表达7%的内容,声调也只能表达38%的内容,而55%的内容全部由人的表情与动作来表达。因此,面部表情的实现已成为至关重要的一个环节。
1 机构设计通过参考成年男性标准头型的尺寸,进行了仿人头部机器人机构设计,主要包括眉毛推拉机构、眼部机构、下颚机构和颈部机构,整体大小(包括颈部和底座)为465 mm×180 mm × 168 mm,左右眼中心距离为80 mm,如图 1所示。该机器人共有22DOF,自由度的分配如表 1所示。
部位 | 运动机能 | 单元数 | 自由度 |
眉毛 | 牵引点推拉 | 2 | 4 |
上眼睑 | 上翻、下翻 | 2 | 2 |
下眼睑 | 上翻、下翻 | 2 | 2 |
眼球 | 左右、上下转动 | 2 | 4 |
下颚 | 嘴角牵引、上嘴唇牵 引、咀嚼运动(绕X、 Y轴移动)、下颚张合 | 1 | 7 |
颈部 | 绕X、Y、Z轴旋转 | 1 | 3 |
眉毛推拉机构 每一边的眉毛均包括2DOF,通过2根弹性钢丝分别推拉眉毛固定板上的运动单元实现,而弹性钢丝穿过固定在脸骨架上的尼龙管,如图 2(a)所示。
眼部机构 包括左眼和右眼且相互独立,左右眼均包含眼睑运动机构和眼球转动机构,分别具有2DOF。采用空间RSSR机构[9],通过舵机驱动舵机臂,带动连杆实现眼球的左右方向和上下方向转动,以及眼睑的张开和闭合运动,如图 2(b)所示。
下颚机构 2个平面连杆机构分别带动各自方向上的导轨,实现下颚“x-y”方向的移动,与下颚张合动作相协调,可以实现机器人的咀嚼运动。上嘴唇铜片和嘴角铜片将作为AU点,与皮肤固定,由舵机直接带动皮肤实现该部位的动作。上嘴唇和嘴角的运动相互协调,可以实现机器人元音“O”和“U”的发音,此二元音实现的嘴型相对复杂,其他元音较易实现,如图 2(c)所示。
颈部机构 采用空间RSUSR(R代表转动副,S代表球面副,U代表万向铰)机构,通过2个舵机的联动驱动万向节的2个自由度,实现俯仰和侧摆动作,具有较强的承载能力,如图 2(d)所示。
2 面部表情仿真面部表情的仿真对于机器人表情的实现起着至关重要的作用。将在SolidWorks软件中按男性成年人1:1比例建立的面部几何模型,另存为Parasolid 格式导入到Hypermesh软件[10]中。根据FACS理论得知影响表情的主要器官为眉毛、眼睑和嘴巴,利用分区功能对这些区域进行分区,针对曲面的复杂性,采用以四边形为主的网格划分方式。在特征点区域施加不同的载荷,对8种基本表情进行反复试验,分别得到对应的最佳位移载荷,如表 2所示。利用RADIOSS对模型进行求解,在HyperView中查看仿真结果,得出与最佳载荷匹配的8种基本表情的仿真图,如图 3所示。面部表情的实现除了与面部皮肤的材料、表情特征控制点的施加位置有关,在仿真过程中发现还与施加在面部皮肤上载荷的大小、载荷施加区域的大小和约束位置的不同有关。
表情 | (左)右眉毛内 | (左)右眉毛外 | (左)右 眼睑Y | (左)右嘴角 | 上唇 Y | 下唇 Y | ||||||
X | Y | Z | X | Y | Z | X | Y | Z | ||||
平静 | — | — | — | — | — | — | — | — | — | — | — | — |
高兴 | — | — | — | — | — | — | — | (-)0.3 | 4 | -0.1 | -0.1 | 0.1 |
生气 | (-)0.1 | -1 | 0.2 | (-)0.1 | 0.2 | 0.2 | -0.1 | (-)0.3 | -4 | — | 0.2 | 0.4 |
悲伤 | (-)0.1 | 0.8 | 0.2 | (-)0.1 | 0.3 | 0.2 | 0.1 | (-)0.2 | -3.4 | — | 0.6 | 0.3 |
恐惧 | — | 0.7 | 0.2 | — | 0.1 | 0.2 | 0.2 | — | — | — | 0.1 | 0.2 |
厌恶 | (-)0.1 | 0.5 | 0.2 | (-)0.1 | 0.1 | 0.2 | -0.1 | 0.2 | 3 | — | -0.1 | 0.4 |
惊讶 | — | 1 | 0.2 | — | 0.1 | 0.2 | 0.2 | — | — | — | 0.3 | -0.6 |
感兴趣 | (-)0.1 | 0.3 | 0.2 | (-)0.1 | 0.1 | 0.2 | -0.2 | (-)0.2 | — | — | 0.1 | 0.3 |
在其他条件不变的情况下,分别改变施加载荷的大小、载荷施加区域的大小和约束的位置,观察其变化对基本表情实现的影响。如图 4(a)所示,以高兴表情为例,改变施加载荷的大小,如表 3所示,高兴程度从左到右依次增强,施加02组载荷大小时,表情的逼真程度较好。因此,对表情控制点施加位移载荷的大小对表情的强弱程度起到非常重要的作用。以02组载荷大小和施加区域为标准,适当增加嘴角处载荷施加区域的面积,以原来嘴角载荷区域的1.5倍和2倍为例,得到其面部仿真图,如图 4 (b)所示。由图可知,在1.5倍这个范围内,仿真模拟结果并没有很明显的改变,但在2倍的控制区域时,面部表情形状开始发生扭曲,存在一定的失真[11]。在面部表情仿真的过程中,约束添加的位置一般是不参与表情动作的部位,如脸的轮廓、太阳穴等。由于头部机构的复杂性,在保证表情不失真的情况下,应该适当地减少约束的施加位置。如图 4(c)所示,减少面部轮廓位置处施加约束的密集程度,改成沿着面部轮廓间隔的均匀的施加约束,面部表情的失真程度较小。说明在沿着面部轮廓方向的几个关键位置施加约束,就能很好的保证面部表情的失真。将面部太阳穴位置的约束去掉,观察面部表情的仿真情况,由图可知面部表情的失真程度较大,说明太阳穴位置的约束对面部表情的实现起着至关重要的作用。
高兴 表情 | (左)右眉毛内 | (左)右眉毛外 | (左)右 眼睑Y | (左)右嘴角 | 上唇Y | 下唇 Y | ||||||
X | Y | Z | X | Y | Z | X | Y | Z | ||||
01 | — | — | — | — | — | — | — | (-)0.3 | 3.0 | -0.1 | -0.1 | 0.1 |
02 | — | — | — | — | — | — | — | (-)0.3 | 4.0 | -0.1 | -0.3 | 0.3 |
03 | — | — | — | — | — | — | — | (-)0.3 | 5.0 | -0.1 | -0.5 | 0.5 |
机器人面部表情的实现是面部机构和面部皮肤材料共同作用的结果。通过控制器驱动舵机,舵机通过牵引机构驱动面部器官动作,同时驱动面部皮肤的相应位置,使机器人产生表情,所以控制机器人的表情输出其实就是控制系统中的舵机。
采用FPGA作为舵机控制器[12],使用Altera 公司的 Cyclone IV EP4CE15F17C8N 核心板。通过SOPC Builder构建硬件系统,按照设计需要添加合适的软核,进行相应的设置以实现要求的功能。系统的主程序设计图,如图 5所示,当FPGA复位开始运行后,程序初始化机器人的表情状态为平静,等待模式的选择,模式分为串口模式和按键模式,根据不同模式,可以用不同的方式实现机器人表情。通过按键模式可以简单的实现5种基本表情,如果要实现更多更丰富的表情,可以通过串口模式。软件的编写是在NIOS II IDE集成开发环境[13]进行的,主要任务是实现PWM信号的不同的占空比,通过串口将从上位机接收到数据传到下位机,实现与计算机的通信功能,控制舵机的运动。
采用LabVIEW来绘制面部表情控制系统的控制界面[14]。上位机通过串口通信给控制板发送不同的表情类型信号,FPGA内的程序接收到来自接口的信号后执行程序输出 PWM 信号,实现对下位机的控制。通过VISA与串行接口仪器通信[15],根据需求设置串口的参数,单击不同的按钮就能控制相应的舵机,使得机器人再现不同的表情。
4 实验具有面部表情的仿人头部机器人系统,主要包括仿人头部机器人SHFR-III、控制系统、电源等,如图 6所示。通过计算机发出指令到FPGA,由FPGA的输出口产生PWM脉冲,驱动舵机实现机器人的表情,而舵机的供电需要采用独立的电源模块。
实验前需对舵机的初始位置进行调试以及确定相应舵机的运动范围。对样机头部的各个运动器官进行动作实验,图 7为眉毛推拉机构和眼部机构动作实验,图 8为下颚机构张开、闭合动作实验,图 9为颈部机构动作实验。
结果表明FPGA控制系统运行平稳,各个器官可以很好地运行,达到预期要求。通过上位机操作界面控制机器人的单个面部器官的运动、实现面部表情,也可通过控制箱上的按键实现手动控制。根据面部表情编码理论知识,对机器人一些基本面部表情再现。图 10给出了仿人表情机器人的8种基本表情。不同基本表情各个器官对应的舵机角度如表 4所示。实验结果表明,该机器人能够逼真地再现各种基本面部表情。
表情 | 左眉 毛内 | 左眉 毛外 | 右眉 毛内 | 右眉 毛外 | 左眼 睑上 | 左眼 睑下 | 右眼 睑上 | 右眼 睑下 | 左眼 水平 | 左眼 竖直 | 右眼 水平 | 右眼 竖直 | 下骨架 | 左嘴角 | 右嘴角 |
平静 | 72.0 | 90.0 | 72.0 | 63.0 | 58.5 | 90.0 | 103.5 | 81.0 | 72.0 | 116.5 | 109.4 | 81.3 | 103.5 | 90.0 | 112.5 |
生气 | 90.0 | 90.0 | 63.0 | 63.0 | 58.5 | 90.0 | 103.5 | 81.0 | 72.0 | 116.5 | 109.4 | 81.3 | 105.3 | 90.0 | 112.5 |
厌恶 | 81.0 | 99.0 | 63.0 | 54.0 | 72.0 | 108.0 | 90.0 | 67.5 | 72.0 | 116.5 | 109.4 | 81.3 | 103.5 | 90.0 | 112.5 |
恐惧 | 58.5 | 76.5 | 90.0 | 76.5 | 45.0 | 81.0 | 117.0 | 90.0 | 72.0 | 116.5 | 109.4 | 81.3 | 85.5 | 90.0 | 112.5 |
高兴 | 72.0 | 90.0 | 72.0 | 63.0 | 77.4 | 117.0 | 85.5 | 54.0 | 72.0 | 116.5 | 109.4 | 81.3 | 99.0 | 75.6 | 106.9 |
悲伤 | 63.0 | 90.0 | 86.4 | 63.0 | 72.0 | 108.0 | 94.5 | 63.0 | 72.0 | 116.5 | 109.4 | 81.3 | 103.5 | 81.0 | 121.5 |
惊讶 | 63.0 | 81.0 | 85.5 | 72.0 | 49.5 | 85.5 | 112.5 | 85.5 | 72.0 | 116.5 | 109.4 | 81.3 | 94.5 | 90.0 | 112.5 |
感兴趣 | 81.0 | 99.0 | 63.0 | 54.0 | 67.5 | 99.0 | 94.5 | 72.0 | 72.0 | 116.5 | 109.4 | 81.3 | 105.3 | 81.0 | 121.5 |
研制出了具有面部表情的仿人头部机器人系统,采用FPGA作为舵机控制器,并设计控制界面,完成面部表情控制系统。通过对面部表情进行仿真,得到8种基本表情及对应的最佳位移载荷,在仿真过程中发现面部表情的实现与施加在面部皮肤上载荷的大小、载荷施加区域大小和约束位置的不同有关。实验结果表明控制系统运行平稳,该机器人能够逼真地再现8种基本表情。由于受到具体条件的限制,未能在机器人上添加面部皮肤,牵引机构不能作用在皮肤上,表情不能更好地体现,但为进一步研究仿人表情机器人提供了较好的技术基础。
[1] | KISHI T,KOJIMA T,ENDO N,et al.Impression survey of the emotion expression humanoid robot with mental model based dynamic emotions[C]//2013 IEEE International Conference on Robotics and Automation (ICRA).Karlsruhe,Germany:IEEE,2013:1663-1668. |
[2] | DESTEPHE M,BRANDAOETC M,et al.Emotional gait:Effects on humans'perception of humanoid robots[C]//The 23rd IEEE International Symposium on Robot and Human Interactive Communication.Edinburgh,Scotland,UK:IEEE,2014:261-266. |
[3] | BECKER-ASANO C,ISHIGURO H,Evaluating facial displays of emotion for the android robot Geminoid F[C]//2011 IEEE Workshop on Affective Computational Intelligence (WACI).Paris:IEEE,2011:1-8. |
[4] | HASHIMOTO T,KOBAYASHI H,KATO N.Educational system with the android robot SAYA and field trial[C]//2011 IEEE International Conference on Fuzzy Systems,Taipei,2011:766-771. |
[5] | ZHENG Y F,WANG H,et al.Humanoid robots walking on grass,sands and rocks[C]//2013 IEEE International Conference on Technologies for Practical Robot Applications (TePRA).Woburn,MA:IEEE,2013:1-6. |
[6] | LUO R C,CHANG S R,YANG Y P.Tracking with pointing gesture recognition for human-robot interaction[C]//2011 IEEE/SICE International Symposium on System Integration (SII).Kyoto:IEEE,2011:1220-1225. |
[7] | 李瑞峰,孙中远,王珂,等.具有面部表情识别与再现的机器人头部系统的研制[J].机械设计与制造,2011(7):95-97.LI Ruifeng,SUN Zhongyuan,WANG Ke,et al.Research of the robot head system with facial expression recognition and representation[J].Machinery Design&Manufacture,2011(7):95-97. |
[8] | 孙中远.机器人头部机构与控制系统的研究[D].黑龙江:哈尔滨工业大学,2010:10-44.SUN Zhongyuan.Research on mechanism and control system of robot head[D].Heilongjiang:Harbin Institute of Technology,2010:10-44. |
[9] | 苗鸿宾,乔峰丽.空间RSSR机构运动分析的研究[J].机械设计与制造,2008,02:7-9.MIAO Hongbin,QIAO Fengli.Kinematic characteristics analysis research of spatial RSSR mechanisms[J].Machinery Design&Manufacture,2008,02:7-9. |
[10] | 王钰栋,金磊,洪清泉,等,HyperMesh&HyperView应用技巧与高级实例[M].北京:机械工业出版社,2012:350-475.WANG Yudong,JIN Lei,HONG Qingquan,et al.HyperMesh&HyperView application skills and advanced examples[M],Beijing:Mechanical Industry Press,2012:350-475. |
[11] | 柯显信,尚宇峰,卢孔笔.基于HyperWorks仿人机器人面部表情仿真[J].制造业自动化,2015.37(1):118-121.KE Xianxin,SHANG Yufeng,LU Kongbi.Simulation of humanoid robot facial expression based on HyperWorks[J].Manufacturing Automation,2015.37(1):118-121. |
[12] | 赵慧,张婷婷.一种基于FPGA的舵机伺服系统设计[J].机床与液压,2010,38(6):59-61.ZHAO Hui,ZHANG Tingting.Design of servo motor control board based on FPGA[J].Machine Tool&Hydraulics,2010,38(6):59-61. |
[13] | 李振锋.基于NIOS II的SOPC实验系统设计与开发[D].四川:西南交通大学,2012:23-41.LI Zhenfeng.Study and develop of SOPC test system based on NIOS II[D].Sichuan:Southwest Jiaotong University,2012:23-41. |
[14] | 崔牧凡.基于LabVIEW和FPGA的串口通信系统设计与实现[J].计算机应用,2012,32(S2):82-84.CUI Mufan.Design and implementation of serial communication system based on LabVIEW and FPGA[J].Journal of Computer Applications,2012,32(S2):82-84. |
[15] | 尚宇峰,柯显信,卢孔笔.基于LabVIEW和FPGA的串口通信舵机控制系统[J].制造业自动化,2014.36(11):112-114.SHANG Yufeng,KE Xianxin,LU Kongbi.Serial communication servo Control System based on LabVIEW and FPGA[J].Manufacturing Automation,2014.36(11):112-114. |