论文部分内容阅读
机器人模仿是目前人机交互领域研究热点之一,在探寻如何提高机器人人工智能水平,让机器人自主适应周边环境等方面具有重要价值。随着社会的发展和社会分工的细化,通过编程控制机器人在不同环境下完成精度高、内容复杂的工作愈发困难。而通过模仿的交互方式则为这种问题提供了潜在的解决方案。本文主要对基于NAO机器人的模仿动作进行了研究。本文首先基于Kinect传感器,以NAO机器人为实验平台,实现了NAO机器人对于人类动作的模仿。针对模仿过程中的平滑性,时空一致性等问题对模仿动作进行了优化。将人脸识别算法与模仿相结合,利用Kinect对人体骨骼检测的准确性准确定位人脸位置,实现了针对指定人的模仿内容。最后采用BP神经网络对模仿动作的稳定状态进行预判,避免了实验过程中机器人由于不稳定而摔倒的问题。具体研究内容如下:首先,通过Kinect和NAO机器人SDK与计算机的连接,构建实验平台。应用改进的逆运动学算法实现了机器人对于人体手臂动作的模仿。其次,在手臂模仿基础上,对模仿动作进行优化:采用滑动平均滤波和限幅滤波,增加机器人动作平滑性,减少角度突变对关节电机造成的伤害;采用按比例调节的方法,让机器人的运动速度实时变化,保证模仿动作的时空一致性;通过计算机存储人体一系列骨骼点数据,使机器人能够在任何时候复现人体动作;将动作模仿与人脸识别相结合,实现了针对指定的某个人的模仿。最后,在手臂模仿基础上加入对腿部关节的控制。由于人体关节和机器人结构的不同,对人体正常站立情况下机器人对应的关节角度进行设定,作为实验初始姿态。考虑到在加入腿部关节控制后,机器人会存在由于重心不稳而摔倒的问题,本文提出采用BP神经网络对将要执行的动作进行稳定状态辨识的方法,避免机器人由于动作不稳定而摔倒。实验证明,通过滤波和速度控制,对于结构差异和噪声造成的角度突变有良好的抑制作用,同时保证了模仿动作的时空一致性;通过Kinect对人体骨骼框架的判断定位人脸,有效的避开了旋转、光照等影响,实现了针对指定人的模仿;在全身模仿基础上加入神经网络辨识,可以对不稳定动作做出有效的规避。