一种面向人机交互的快速人体动作识别方法技术

技术编号:17704351 阅读:110 留言:0更新日期:2018-04-14 17:30
一种面向人机交互的快速人体动作识别方法,(1)骨骼点坐标信息的采集。(2)关键点的选取。(3)动作特征的提取。(4)动作识别。(5)机器人;本发明专利技术提供一种面向人机交互的快速人体动作识别方法,整个系统由终端计算机、Kinect人体动作输入设备、蓝牙通信模块和机器人组成。首先利用Kinect对人体进行捕捉,从20个关节点中提取能代表全身动作的有效节点,计算成动作特征形成动作模板并保存为TXT文本。在识别阶段,待测试动作序列与标准模板通过快速动态时间规整(Fast Dynamic Time Warping,F‑DTW)算法进行快速匹配,并给出识别结果。根据动作识别的结果,机器人会做出不同的响应。本发明专利技术的快速算法大大提高了动作识别速度,优化了对机器人的快速控制。

【技术实现步骤摘要】
一种面向人机交互的快速人体动作识别方法
本专利技术属于计算机虚拟现实,人机交互领域,具体涉及一种面向人机交互的快速人体动作识别方法,利用人体动作控制机器人,实现人机交互。
技术介绍
随着机器人控制技术的发展,人与机器人之间的交互变得愈加普遍,人机交互技术也在迅猛发展起来,而利用人体动作来控制机器人成为当前人机交互领域研究的热点。传统的手势动作识别为接触式识别,穿戴数据手套,或者在身体上安装陀螺仪等传感器用来感知动作,从而达到动作识别的目的。这种方法准确率高,但是需要在动作执行者身上穿戴传感器,给动作的执行带来了诸多不便,而且可穿戴式传感器造价也很高。取代传统的接触式动作识别,以机器视觉为主的非接触式识别成为主流。普通相机往往受环境影响(背景、光照、遮挡等)较严重,这样动作识别需在较为理想的环境下进行,鲁棒性不强。Kinect体感摄像头的出现,给动作识别带来了新的契机,Kinect能对空间三维场景进行捕捉,形成深度图像,不受自然光线和环境背景的干扰。Kinect最大的贡献就是骨骼跟踪技术,形成30fps的骨骼数据流,利用骨骼数据流就可以实现人体动作的识别,但是随着动作种类的增加,动作识别的时效性以及能否快速实时控制机器人是一个值得考虑的关键问题,因此有必要研究一种快速的人体动作识别方法。
技术实现思路
专利技术目的:本专利技术提供一种面向人机交互的快速人体动作识别方法,其目的是解决基于视频的动作识别速度慢的问题。技术方案:本专利技术是通过以下技术方案实现的:一种面向人机交互的快速人体动作识别方法,包括以下顺序步骤:(1)骨骼点坐标信息的采集利用Kinect的骨骼跟踪技术,对人体20个关节点的空间三维坐标进行跟踪采集。(2)关键点的选取面向人机交互的人体动作大多数可以用肢体动作进行描述,实际应用中并不需要20个关节点全部参与。人在做动作的时候主要是肢体动作,四肢关节点坐标变化很大,对动作的描述贡献成程度大。相对而言,头部和肩部以及躯干部位等关节点的位置比较稳定,变化不大,对动作的贡献度很微弱。例如做右手挥动和右腿右摆动作,动作示意图如图1所示。右手,右脚关节以及其它所有关节点的Y坐标平均变化趋势如图2所示。从图2可以看出,右手,右脚节点坐标波动很大,其它节点坐标变化相对平缓。肘部关节、手腕关节、手部关节可以描述上肢动作,膝关节、踝关节、脚部关节可以描述下肢动作。考虑到腕关节与手关节之间,踝关节与脚关节之间距离很近,二者之间舍弃一点不影响动作的描述,而且还降低了计算量,有利于动作的快速识别。根据关节点对动作描述贡献度原则,提取左右肘、左右手、左右膝关节、左右脚关节这8个节点作为肢体动作描述的关键点。(3)动作特征的提取Kinect骨骼数据流会提供人体全身20个关节点的三维坐标,人处在Kinect有效视场中这些关节点的三维坐标也会随着人的运动而时刻改变,不同动作的坐标数据是不一样的,因此坐标数据可以用来描述动作。但是这些原生的坐标数据不能直接用做描述动作的模型,必须转化成特征。关节点数据转化为动作特征时,要考虑到特征的差异性,即每一个特征只能唯一描述一种动作。测试者每次站在Kinect前方的位置并没有要求,具有随机性,因此特征要满足位置的不变性。利用人体动作来控制机器人实现人机交互对动作执行者的身高、体型尺寸并没有限制,因此特征还要满足测试者体型大小的不变性。本专利技术提出了一种向量坐标集合的动作描述特征,选取脊柱节点作为向量的共同起始点,8个关键点为特征向量的终点,8个特征向量的三维坐标在时间轴上的排列用来描述动作。(4)动作识别动作识别和人脸识别、指纹识别、虹膜识别等都属于生物特征识别,模式识别领域范畴。模式识别与机器学习手段是离不开的,本专利技术动作识别方法为快速动态时间规整(FastDynamicTimeWarping,F-DTW)的模板匹配方法,大大提高了识别速度,解决了利用动作控制机器人的时延问题。(5)机器人机器人的上肢使用数字舵机进行驱动,数字舵机通过级联的方式进行连接,每个舵机都有自己专属ID,全部舵机通过串行总线与机器人的主控器进行连接,机器人的行走部位为轮式结构,通过直流电机配有驱动器进行驱动。上位机与机器人的控制指令通过蓝牙传输。首先,Kinect传感器正确与电脑连接,测试者站在Kinect前距离Kinect摄像头1-2m左右,通过KinectforwindowsSDK获取人体骨骼20个节点的空间三维坐标;选取左右手、左右肘部、左右脚以及左右膝关节8个关节点作为动作描述的关键点,这8个点要描述成空间向量,选取脊柱节点作为8个特征向量的共同起始点,选取向量作为动作描述的特征,消除人处在Kinect前方不同位置带来的影响,每个向量都有(x,y,z)三维坐标,因此一帧骨骼数流包含8个向量共24维向量坐标,如公式(1)所示:F={X1,Y1,Z1,X2,Y2,Z2,…,X8,Y8,Z8}(1)其中F为一帧骨骼数据流的向量坐标集合;为了消除不同人体型的差异,坐标向量要按照体型比例进行归一化,如公式(2)所示:式中,F'为归一化后的特征向量集合,d为脊柱节点到臀部中央节点的归一化欧式距离;Kinect一秒能提供30帧骨骼数据流,这样一个连贯动作就能描述为若干帧向量集合的组合,如公式(3)所示:M={F1',F2',F3',Fi',…,Fλ'}(3)式中,F'i为第i帧骨骼数据的向量坐标集合,λ为一个动作包含的骨骼帧数,一个动作M的维数为24*λ。“(2)”步骤中通过分析各个关节点对动作描述的贡献程度,从中选取左手、右手、左肘关节、右肘关节、左脚、右脚、左膝关节、右膝关节这8个关节点作为特征向量的终点,位置相对稳定的脊柱节点作为8个特征向量的共同起始点,由于向量具有平移不变性,能消除人处在Kinect视场中不同位置对动作识别带来的影响;对特征向量按照人体比例进行归一化处理,消除不同人体型身高不同带来的影响;标准动作模板只需保存为TXT文本,方便后续识别。在步骤“(3)”中,待测试序列和模板序列进行模板匹配,本专利技术的匹配算法为F-DTW算法;DTW算法通过计算两序列的DTW距离来判断两序列的相似度,距离越小,则两序列相似度越高;但是随着动作种类数量的增加,待测试序列和模板序列逐一匹配会大大增加计算量,导致识别速度下降;实际应用中,先计算两动作序列的加速函数数值,小于相似度阈值则继续计算DTW距离,否则终止计算,加速函数如下式所示:其中Acc为两动作序列的加速函数值,X1和Y1分别为两序列的首节点,Xn和Ym分别两序列的尾节点,max(Xi)和max(Yj)分别为两序列的最大值节点,min(Xi)和min(Yj)分别为两序列的最小值节点。全局相似度阈值τ如下式所示:τ=max(ε1,ε2,…,εi,…,εω)式中:τ为全局相似度阈值,εi为第i种类别动作的相似度阈值,在实际测试时候,对每次成功匹配的规整距离的均值作为该种动作的相似度阈值,ω为要识别的动作类别总数。步骤“(4)”中,将动作识别结果进行编码,机器人的主控器接收到动作指令后,做出响应,实现通过动作来控制机器人前进或后退的人机交互。优点效果:本专利技术提供一种面向人机交互的快速人体动作识别方法,整个系统由终端计算机、Kinect人体动作输入设备、蓝牙通信模块和机本文档来自技高网...
一种面向人机交互的快速人体动作识别方法

【技术保护点】
一种面向人机交互的快速人体动作识别方法,其特征在于:所述方法具体步骤如下:(1)动作描述特征点的获取:利用Kinect的骨骼跟踪技术获取人体全身20个关节点的空间三维坐标,提出用于动作识别的8个关键特征点的选取原则;(2)动作的描述:用向量集合来描述特征,使描述不同动作的特征具有很大的差异性,并且特征要消除位置差异和体型差异的影响;(3)动作识别:动作识别方法为模板匹配方法,并且不受动作执行快慢的影响;待测试序列和模板中每一个序列匹配时,先要经过加速函数的筛选,若能通过筛选,则两序列进行匹配计算,给出识别结果,否则终止计算;(4)对识别结果进行编码区分,然后通过蓝牙通信方式将控制指令传给机器人,机器人按照人的意愿完成一件事情,实现人机交互。

【技术特征摘要】
1.一种面向人机交互的快速人体动作识别方法,其特征在于:所述方法具体步骤如下:(1)动作描述特征点的获取:利用Kinect的骨骼跟踪技术获取人体全身20个关节点的空间三维坐标,提出用于动作识别的8个关键特征点的选取原则;(2)动作的描述:用向量集合来描述特征,使描述不同动作的特征具有很大的差异性,并且特征要消除位置差异和体型差异的影响;(3)动作识别:动作识别方法为模板匹配方法,并且不受动作执行快慢的影响;待测试序列和模板中每一个序列匹配时,先要经过加速函数的筛选,若能通过筛选,则两序列进行匹配计算,给出识别结果,否则终止计算;(4)对识别结果进行编码区分,然后通过蓝牙通信方式将控制指令传给机器人,机器人按照人的意愿完成一件事情,实现人机交互。2.根据权利要求1所述的一种面向人机交互的快速人体动作识别方法,其特征在于:“(1)”步骤中所述获取的20个骨骼关节点具体为:头部、左肩、双肩中央、右肩、左肘关节、右肘关节、左腕关节、右腕关节、左手、右手、脊柱关节、臀部中央、左臀部、右臀部、左膝盖、右膝盖、左踝关节、右踝关节、左脚、右脚;用于人机交互的动作主要是肢体动作,四肢关节点坐标变化很大,对动作的描述贡献程度大;相对而言,头部和肩部以及躯干部位关节点的位置比较稳定,变化不大,对动作的贡献度很微弱;肘部关节、手腕关节、手部关节能描述上肢动作,膝关节、踝关节、脚部关节能描述下肢动作;根据关节点对动作描述贡献度原则,提取左右肘、左右手、左右膝关节、左右脚关节这8个节点作为肢体动作描述的关键点。3.根据权利要求2所述的一种面向人机交互的快速人体动作识别方法,其特征在于:首先,Kinect传感器正确与电脑连接,测试者站在Kinect前距离Kinect摄像头1-2m左右,通过KinectforwindowsSDK获取人体骨骼20个节点的空间三维坐标;选取左右手、左右肘部、左右脚以及左右膝关节8个关节点作为动作描述的关键点,这8个点要描述成空间向量,选取脊柱节点作为8个特征向量的共同起始点,选取向量作为动作描述的特征,消除人处在Kinect前方不同位置带来的影响,每个向量都有(x,y,z)三维坐标,因此一帧骨骼数流包含8个向量共24维向量坐标,如公式(1)所示:F={X1,Y1,Z1,X2,Y2,Z2,…,X8,Y8,Z8}(1)其中F为一帧骨骼数据流的向量坐标集合;为了消除不同人体型的差异,坐标向量要按照体型比例进行归一化,如公式(2)所示:式中,F'为归...

【专利技术属性】
技术研发人员:桑海峰田秋洋
申请(专利权)人:沈阳工业大学
类型:发明
国别省市:辽宁,21

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1