首页 / 动作识别方法及装置

动作识别方法及装置实质审查 发明

技术领域

[0001] 本说明书涉及计算机技术领域,特别涉及一种动作识别方法。本说明书同时涉及一种动作识别装置,一种计算设备,以及一种计算机可读存储介质。

相关背景技术

[0002] 随着社会的发展,人们生活水平的不断提高,越来越多的人开始接触到体感游戏。体感游戏作为一种新兴的游戏形式,相比于传统的依靠显示屏的游戏来说,能给用户更加真实的沉浸式体验,增加游戏的趣味性,同时也将运动和游戏相结合,实现了真正的健康游戏。目前可通过为用户配置可穿戴的硬件设备,来采集用户的游戏动作信息,但是随着游戏设计的形式越来越复杂,所识别的游戏动作信息往往不够全面,也无法准确地完成游戏动作的用户评分,进而也影响了用户对游戏动作的体验。

具体实施方式

[0025] 在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
[0026] 在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0027] 应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
[0028] IMU:(Inertial Measurement Unit,惯性测量单元),主要用来检测和测量加速度与旋转运动的传感器,包括加速度计和角速度计(陀螺仪),其中,加速度计能获得各个轴方向的加速度,陀螺仪可以得到各个轴的角速度,从而确定角度信息。有的惯性测量单元还包括磁力计,可以获得周围的磁场信息。
[0029] 加速度信息:通过牛顿第二定律来测量各个轴的加速度信息。
[0030] 角度信息:陀螺仪直接测量的是角速度,需要通过一次对角速度的积分处理,获得角度信息。
[0031] 偏航角:是实际航向与计划航向之间的夹角。
[0032] 俯仰角:机体轴(沿机头方向)与地平面(水平面)之间的夹角。
[0033] 滚动角:物体绕前后轴线转动的角度为横滚角。
[0034] 六轴传感器:一种信息采集传感器,通常指的是三轴加速度计+三轴加速度计,三轴加速器是检测横向加速的,三轴陀螺仪是检测角度旋转和平衡的,可以用在体感游戏上。
[0035] 体感游戏,是通过玩家身体的运动来交互的游戏,是游戏玩家用身体去感受的电子游戏。体感游戏场景一般为玩家佩戴穿戴式硬件设备,来采集玩家的游戏动作数据,并对游戏动作数据进行分析,与体感游戏预存的动作数据进行比对,来识别玩家的游戏动作是否标准,常规的动作有跳跃、下蹲、移动、出拳等。但是,随着游戏设计的越来越复杂,仅通过硬件设备采集相应的动作数据,也只能采集到用户手部或者脚部的具体具体动作,比如出拳、抬腿等;对于玩家短距离的位移移动,硬件采集设备将无法完成对位移的精准识别。
[0036] 目前也有通过摄像头捕捉玩家所在场景的画面,与体感游戏预存的画面相比较,以此来识别用户体感动作的识别,但是仅通过摄像头来完成复杂的游戏动作的识别,不仅需要较高质量的摄像头,还要依赖于强大的算法,从一段连续的图像中既要识别出玩家的手部和/或脚部的动作,还要识别出玩家短距离的位移,这就为底层算法技术带来巨大的挑战。
[0037] 基于此,本说明书实施例提供的动作识别方法,通过硬件采集设备采集到玩家的手部或者脚部的动作数据,再通过图像采集设备采集玩家短距离的位移数据,这样通过两种方式分别采集体感游戏中复杂的连续动作,不仅能够对这两种方式采集到的数据准确地进行动作识别,还能够减少底层数据处理的复杂度,进而,再将动作数据与位移数据识别出的动作结果进行融合,综合反馈玩家的动作识别结果,为玩家进行动作打分。
[0038] 在本说明书中,提供了一种动作识别方法,本说明书同时涉及一种动作识别装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
[0039] 图1示出了根据本说明书一实施例提供的一种动作识别方法的应用场景示意图。
[0040] 图1中左侧的人物为体感游戏的玩家A,右侧为动作识别方法对应的动作识别系统100。
[0041] 实际应用中,动作识别系统100通过获取玩家A在一段预设时间区间内的体感游戏动作;通过穿戴式硬件设备采集玩家A的动作数据,动作识别系统100获取该动作数据中的待识别动作信息,如图1中的待识别动作信息1、待识别动作信息2....待识别动作信息6;通过图像采集设备采集玩家A的位移数据,动作识别系统100获取该位移数据中的待识别位移信息,如图1中的待识别位移信息1、待识别位移信息2.....待识别位移信息6;动作识别系统100基于待识别动作信息确定对应的动作特征信息,以及基于待识别位移信息确定对应的位移特征信息,进而,再基于动作特征信息以及位移特征信息,确定玩家A所做的所有动作集合对应的动作集合识别信息,最后,动作识别系统100再基于动作集合识别信息确定玩家A的目标识别结果,并将该目标识别结果返回至前端展示界面,为玩家A展示相应的识别结果。
[0042] 本说明书实施例提供的动作识别方法,通过两个设备分别采集玩家的动作数据和位移数据,分别识别动作数据和位移数据,以综合确定玩家所有动作的动作集合识别信息,实现准确地对玩家体感游戏动作的识别。
[0043] 图2示出了本说明书一实施例提供的一种动作识别方法的流程图,具体包括以下步骤:
[0044] 需要说明的是,本说明书实施例提供的动作识别方法可应用于多种体感动作识别场景,包括但不限于为体感游戏,本实施例中以体感游戏中的拳击游戏为例进行详细说明。
[0045] 步骤202:获取第一待识别动作的待识别动作信息,基于所述待识别动作信息确定所述第一待识别动作的动作特征信息。
[0046] 其中,第一待识别动作可以理解为用户跟随体感游戏中所展示的标准动作做的待识别动作,具体是指需要进行动作识别操作的动作,例如某个挥臂动作、举手动作、出拳动作、举重动作等等;待识别动作信息可以理解为用户所做的第一待识别动作对应的相关动作信息,在后续的处理过程中,需要通过待识别动作信息来对第一待识别动作进行分析,从而确定第一待识别动作的动作类型;动作特征信息可以理解为针对第一待识别动作对应的动作信息提取的待识别动作的特征信息。
[0047] 需要说明的是,本实施例提及的体感游戏的拳击游戏,是指显示屏幕中已经展示了玩家应该跟随做的拳击动作或者是移动动作,玩家只需要与显示屏幕中显示的动作做的相一致,即可得分,完成拳击游戏。
[0048] 进一步地,获取第一待识别动作的待识别动作信息,包括:
[0049] 获取硬件信息采集设备发送的第一待识别动作的待识别动作信息。
[0050] 其中,硬件信息采集设备可以理解为与玩家具有关联关系的硬件设备,能够采集到玩家所作出动作的信息,比如,玩家的穿戴式硬件设备(智能手表、智能手环、或配置有智能芯片的服装配饰等)、玩家的动作操作设备(智能哑铃、跳绳等)。
[0051] 实际应用中,硬件信息采集设备可采集到玩家所做的第一待识别动作对应的待识别动作信息,其中,第一待识别动作可以为玩家的出拳动作,待识别动作信息则为玩家出拳动作相应的动作信息;服务器可从硬件信息采集设备中获取到玩家第一待识别动作的待识别动作信息,即出拳动作的动作信息;再根据该出拳动作的动作信息确定出该出拳动作的动作特征信息,以便于后续确定玩家的出拳动作的出拳种类,比如直拳、勾拳或者是摆拳。
[0052] 需要说明的是,可穿戴智能设备中通常会设置有动作信息采集器,例如IMU(Inertial Measurement Unit,惯性测量单元),IMU通常包括加速度计和角速度计(陀螺仪),被称为六轴传感器(六轴运动传感器),IMU采集用户在做出待识别动作时的待识别动作信息,该待识别动作信息通常为加速度信息和角速度信息,更进一步的,可以是三轴加速度信息和三轴角速度信息。有的IMU还包括磁力计,用于获得周围的磁场信息,将磁场信息作为待识别动作信息。
[0053] 更进一步地,基于所述待识别动作信息确定所述第一待识别动作的动作特征信息,包括:
[0054] 基于所述待识别动作信息计算所述第一待识别动作的姿态信息;
[0055] 从所述待识别动作信息和所述姿态信息中提取所述第一待识别动作的动作特征信息。
[0056] 其中,姿态信息具体是指待识别动作的姿势状态信息,姿态信息通常包括偏航角、俯仰角、翻滚角等参数。即在获得待识别动作信息之后,通过待识别动作信息来计算待识别动作的偏航角、俯仰角、翻滚角。
[0057] 具体的,待识别动作信息包括加速度信息和角速度信息;
[0058] 基于所述待识别动作信息计算所述第一待识别动作的姿态信息,包括:
[0059] 根据所述加速度信息计算所述第一待识别动作的第一子姿态信息;
[0060] 根据所述角速度信息计算所述第一待识别动作的第二子姿态信息;
[0061] 融合所述第一子姿态信息和所述第二子姿态信息获得所述第一待识别动作的姿态信息。
[0062] 实际应用中,待识别动作信息包括加速度信息和角速度信息,更具体的,待识别动作信息为三轴加速度信息和三轴角速度信息。因此,可以通过加速度信息和角速度信息来计算待识别动作的姿态信息。
[0063] 具体实施时,IMU数据只是采集到的原始数据,还需要通过欧拉角与旋转矩阵来对IMU原始数据进行姿态求解,并进行数据融合,最终得到待识别动作的姿态信息。
[0064] 为了便于理解,在本申请中,选用的旋转顺序为ZYX,即IMU数据坐标系初始时刻与大地坐标系重合,然后依次绕自己的Z、Y、X轴旋转。绕IMU的Z轴旋转,称为偏航角(yaw);绕IMU的Y轴旋转,称为俯仰角(pitch);绕IMU的X轴旋转,称为横滚角(row)。
[0065] 具体的,加速度计测量的是加速度信息,在静止的时候,其本身是没有加速运动的,但出现相应动作时,在加速度计中可以读取到3个轴的加速度值,再通过相应的旋转矩阵,将3个轴的加速度值转换为对应的第一偏航角信息、第一俯仰角信息、第一横滚角信息。陀螺仪测量的是绕3个轴转动的角速度,在获得角速度后,还需要对三个角速度进行基于时间的积分,可以得到角度信息。姿态角度的变化量可以动过角速度与采用的时间周期积分集合。通过对陀螺仪测量的角速度信息计算到的角度信息,并通过角度信息和旋转矩阵结合,可以获得待识别动作的第二偏航角信息、第二俯仰角信息和第二横滚角信息。通过上述的操作,可以通过加速度信息计算获得第一偏航角信息、第一俯仰角信息、第一横滚角信息,通过角速度信息计算获得待识别动作的第二偏航角信息、第二俯仰角信息和第二横滚角信息。而实际上,加速度仅在静止时刻可以得到较为准确的姿态,陀螺仪仅对转动时的姿态变化敏感,且陀螺仪本身存在误差,又经过连续的时间积分,误差会不断增大,因此,需要结合两者计算待识别动作的最终姿态,进行互补融合。具体的融合算法包括但不限于互补滤波、madgwick算法等。
[0066] 通过对第一子姿态信息和第二子姿态信息的融合可以获得较为准确的第一待识别动作的姿态信息。
[0067] 更进一步地,从所述待识别动作信息和所述姿态信息中提取所述第一待识别动作的动作特征信息,包括:
[0068] 拼接所述待识别动作信息和所述姿态信息,获得待处理特征信息集合;
[0069] 根据预设的特征提取规则从所述待处理特征信息集合中确定至少一个待处理特征信息;
[0070] 提取所述至少一个待处理特征信息,获得所述第一待识别动作的动作特征信息。
[0071] 在获得待识别动作信息和姿态信息之后,为了更好从两者之间提取待识别动作的动作特征信息,可以将两者进行拼接,从而获得多个维度的待处理特征信息集合。通过待处理特征集合可以在后续的特征提取步骤中,使得各个特征之间的关系更加清晰。
[0072] 在获得待处理特征信息集合后,即可根据预设的特征提取规则确定待处理特征信息,预设的特征提取规则具体是由技术人员确定的,技术人员通过过往的研究,确定了该特征提取规则,通过该特征提取规则,在待处理特征信息集合中确定待处理特征信息。
[0073] 例如,特征提取规则中包括提取加速度信息中每个轴的最大幅度、最大变化率等等。根据该特征提取规则,确定加速度信息中每个轴的最大幅度、最大变化率。
[0074] 在确定至少一个待处理特征信息之后,即提取待处理特征信息,再进行特征信息的拼接,获得待识别动作的动作特征信息。例如,通过特征提取规则确定了加速度信息中每个轴的最大幅度值、最大变化率等,提取x轴的最大幅度值为10、最大变化率为8,提取y轴的最大幅度值为11、最大变化率为9,提取z轴的最大幅度值为18、最大变化率为7……,将待处理特征信息进行拼接获得待识别动作的动作特征信息(10,8,11,9,18,7……)。
[0075] 在本申请提供的一具体实施方式中,以待识别动作为举重动作为例,将三轴加速度信息、三轴角速度信息和姿态信息Q进行拼接,获得待处理特征信息集合A,并根据预设的特征提取规则,从待处理特征信息集合中提取举重动作的动作特征信息(A1、A2、……An)。
[0076] 在本申请提供的另一具体实施方式中,以待识别动作为拳击动作为例,将三轴加速度信息、三轴角速度信息和姿态信息K进行拼接,获得待处理特征信息集合B,并根据预设的特征提取规则,从待处理特征信息集合中提取出拳动作的动作特征信息(B1、B2、……Bn)。
[0077] 步骤204:获取第二待识别动作的待识别位移信息,基于所述待识别位移信息确定所述第二待识别动作的位移特征信息。
[0078] 其中,第二待识别动作可以理解为用户跟随体感游戏中所展示的标准动作做的待识别动作,但与上述实施例中提及的第一待识别动作有所不同,第二待识别动作具体可指用户短距离的位移动作,比如向右移动、向左移动,向前前进、向后退步等动作;待识别位移信息可以理解为用户所做的第二待识别动作对应的相关位移信息,在后续的处理过程中好,需要通过待识别位移信息来对第二待识别动作进行分析,从而确定第二待识别动作的动作位移类型;位移特征性信息可以理解为针对第二待识别动作对应的动作信息提取的位移特征信息。
[0079] 相应地,获取第二待识别动作的待识别位移信息,包括:
[0080] 获取图像采集设备发送的第二待识别动作的待识别位移信息。
[0081] 其中,图像采集设备可以理解为与体感游戏相匹配应用的,能够采集用户图像信息的硬件设备信息,比如终端屏幕摄像头、外设摄像头等。
[0082] 实际应用中,图像采集设备可采集到玩家所做的第二待识别动作对应的待识别位移信息,其中,第二待识别动作可以为玩家的短距离身位移动的动作,待识别动作信息则为玩家身位移动动作相应的位移信息;服务器可从图像采集设备中获取到玩家第二待识别动作的待识别位移信息,即向左移动动作的位移信息;再根据该向左移动动作的位移信息确定出该向左移动动作的位移特征信息,以便于后续确定玩家的位移动作的位移类型,比如左移动闪躲、又移动闪躲。
[0083] 通过摄像头采集用户短距离的移动信息,即位移信息,便于后续识别用户位移信息,获得位移信息相应的位移类型。
[0084] 进一步地,基于所述待识别位移信息确定所述第二待识别动作的位移特征信息,包括:
[0085] 基于所述待识别位移信息确定所述第二待识别动作的关键点信息;
[0086] 将所述待识别位移信息和所述关键点信息输入至关键点识别模型,获得所述关键点识别模型输出的所述第二待识别动作的关键点特征信息;
[0087] 基于所述关键点特征信息计算所述第二待识别动作的位移特征信息。
[0088] 其中,关键点信息可以理解为用户第二待识别动作中动作关键点的向量信息,比如,向左移动的动作,动作关键点可以为头部关键点、脚部关键点以及胸部关键点,那么即可根据待识别位移信息获取到各个动作关键点对应的向量信息。
[0089] 关键点识别模型为预先训练的,可以通过输入的待识别位移信息和关键点信息进行分析,从而输出第二待识别动作的关键点特征信息;关键点识别模型应用了关键点识别算法,关键点识别算法包括但不限于支持向量集、决策树等。
[0090] 位移特征信息可以理解为根据第二待识别动作的各个关键点特征信息所计算的特征向量信息。
[0091] 实际应用中,服务器在获取到待识别位移信息之后,可确定出第二待识别动作对应的关键点信息,比如第二待识别动作为玩家A从D1点向左移动至D2点的动作,那么识别出这个向左移动动作的关键点信息为[a1,a2,a3,a4,a5,a6,b1,b2,b3,b4,b5,b6],其中,a1至a6分别为玩家A在D1点的关键点信息,b1至b6分别为玩家A在D2点的关键点信息;进而,再将待识别位移信息中携带的所有位移信息以及确定的关键点信息,均输入至关键点识别模型中,以获得关键点识别模型输出的向左移动这个动作的关键点特征信息,其中,该关键点特征信息即可包含位移方向,以表示第二待识别动作的移动方向,最后,服务器再根据获得的关键点特征信息计算出第二待识别动作的位移特征信息。
[0092] 需要说明的是,关键点识别模型可通过预先训练获得,通过大量学习图像采集模块获取的用户移动的关键点信息,进而计算该用户的位移特征信息,以不断地学习用户移动的位移特征信息,直至模型训练的准确率满足预设次数阈值或者是时间阈值,本实施例对关键点识别模型的具体训练方式不作任何限定。
[0093] 步骤206:基于所述动作特征信息以及所述位移特征信息确定目标动作集合的动作集合识别信息,其中,所述目标动作集合包括所述第一待识别动作和所述第二待识别动作。
[0094] 其中,目标动作集合可以理解为用户在预设的时间区间内所做的所有动作的集合,包括第一待识别动作和第二待识别动作,且第一待识别动作和第二待识别动作的数量不作任何限定;例如,目标动作集合中包含10个动作,其中,包含5个第一待识别动作、5个第二待识别动作,即5个出拳动作、5个移动动作。
[0095] 动作集合识别信息可以理解为对目标动作集合中用户所做的所有动作对应的识别信息,该识别信息可以理解为对各个动作向量进行拼接操作后的总向量信息。
[0096] 实际应用中,服务器在确定了第一待识别动作的动作特征信息,以及确定了第二待识别动作的位移特征信息之后,即可通过动作特征信息以及位移特征信息确定用户所做的所有的动作集合的识别信息,
[0097] 具体实施时,基于所述动作特征信息以及所述位移特征信息确定目标动作集合的动作集合识别信息,包括:
[0098] 将所述动作特征信息输入至动作识别模型,获得所述动作识别模型输出的所述第一待识别动作对应的动作类型;
[0099] 将所述位移特征信息输入至位移识别模型,获得所述位移识别模型输出的所述第二待识别动作对应的位移类型;
[0100] 基于所述动作类型以及所述位移类型,确定目标动作集合的动作集合识别信息。
[0101] 将动作特征信息输入至预先训练好的动作识别模型进行动作识别,动作识别模型可以通过输入的动作特征信息进行分析,从而输出待识别动作的动作类型。动作识别模型应用了动作识别算法,动作识别算法包括但不限于支持向量机、决策树、多层感知机等等。
[0102] 进一步地,将位移特征信息输入至预先训练好的位移识别模型进行位移识别,位移识别模型可以通过输入的位移特征信息进行分析,从而输出待识别动作的位移类型。进而,在服务器通过动作特征信息以及位移特征信息确定了动作类型以及位移类型之后,即可确定用户所做的整个目标动作集合中各个动作的动作集合识别信息。
[0103] 步骤208:基于所述动作集合识别信息确定所述目标动作集合的目标识别结果。
[0104] 其中,目标识别结果可以理解为用户所做的目标动作集合的所有动作的动作评分总和,比如,目标动作集合中具有10个动作,那么目标识别结果则可以为这10个动作的动作评分,即9分(10分为上限)。
[0105] 实际应用中,服务器在确定了目标动作集合中的动作集合识别信息之后,可以对动作集合识别信息进行处理,以确定用户所做的目标动作集合的动作评分,以完成对体感游戏的动作打分。
[0106] 进一步地,服务器为了能够准确地确定用户所做的目标动作集合中各个动作的标准度,还需要与预先存储的目标动作集合对应的标准动作进行比对,以确定最后目标动作集合的识别结果;具体的,基于所述动作集合识别信息确定所述目标动作集合的目标识别结果,包括:
[0107] 确定预设动作集合的预设动作集合识别信息,其中,所述预设动作集合包括第一预设动作和第二预设动作;
[0108] 将所述动作集合识别信息与所述预设动作集合识别信息进行比对,获得动作集合比对结果;
[0109] 基于所述动作集合比对结果确定所述目标动作集合的目标识别结果。
[0110] 其中,预设动作集合可以理解为服务器预先存储的动作集合,或者是体感游戏中预先展示在显示屏幕中的一组动作集合,而用户所做的目标动作集合是以预设动作集合为标准的,是跟随着预设动作集合中的各个游戏动作所做的动作集合。
[0111] 预设动作集合识别信息可以理解为预设动作集合中各个动作对应的识别信息,该预设动作结合识别信息是与上述实施例中提及的动作集合识别信息是相对应的。
[0112] 为了进一步地确定用户所做的目标动作集合中各个动作的标准度,服务器需要预先确定一组预设动作集合的预设动作集合识别信息,并且预设动作集合是体感游戏中玩家所要做的标准动作集合;在获取到玩家做的目标动作集合对应的动作集合识别信息之后,即可将该动作集合识别信息与预设动作集合识别信息进行比对,进而确定出动作集合比对结果,其中,该动作集合比对结果可以理解为两组集合识别信息之间的向量相似度比对结果,最后根据动作集合比对结果确定目标动作集合的目标识别结果。
[0113] 进一步地,将所述动作集合识别信息与所述预设动作集合识别信息进行比对,获得动作集合比对结果,包括:
[0114] 确定所述目标动作集合中待识别动作序列,以及确定所述预设动作集合中预设动作序列;
[0115] 基于所述待识别动作序列计算所述目标动作集合中动作集合识别信息的待识别动作向量;
[0116] 基于所述预设动作序列计算所述预设动作集合中预设动作集合识别信息的预设动作向量;
[0117] 计算所述待识别动作向量以及所述预设动作向量之间的动作相似度,确定动作集合比对结果。
[0118] 其中,待识别动作序列可以理解为用户所做的各个动作组成的动作序列,即目标动作集合中各个动作之间是具有顺序关系的,比如,待识别动作序列中的第一个动作是左直拳动作、第二个动作是向左移动、第三个动作是右勾拳动作等等;预设动作序列与待识别动作序列的含义相同,可以理解为预存的标准动作集合中各个动作组成的动作序列。
[0119] 其中,待识别动作向量可以理解为针对目标动作集合中所有动作对应的待识别动作信息对应的总向量信息;预设动作向量可以理解为针对预设动作集合中所有动作对应的待识别动作信息对应的总向量信息。
[0120] 为了能够快速地将动作集合识别信息与预设动作集合识别信息进行比对,服务器在确定各个动作集合中的动作向量时,需要按照各个动作集合中每个动作的序列,将每个动作的识别信息拼接起来,生成动作向量,进而再计算两个动作向量之间的动作相似度,以确定动作集合比对结果。
[0121] 更进一步地,基于所述待识别动作序列计算所述目标动作集合中动作集合识别信息的待识别动作向量,包括:
[0122] 将所述待识别动作序列中每个待识别动作转换为对应的待识别动作子向量;
[0123] 根据所述待识别动作序列拼接每个待识别动作子向量,获得所述待识别动作序列对应的待识别动作向量。
[0124] 其中,待识别动作子向量可以理解为目标动作集合中每个动作对应的动作子向量。
[0125] 具体的,服务器可按照待识别动作序列,将每个待识别动作对应的动作识别信息都转换为对应的待识别动作子向量;进而,再将每个待识别动作子向量根据待识别动作序列进行拼接,以获得目标动作集合中待识别动作序列对应的待识别动作向量。
[0126] 同样地,基于所述预设动作序列计算所述预设动作集合中预设动作集合识别信息的预设动作向量,包括:
[0127] 将所述预设动作序列中每个预设动作转换为对应的预设动作子向量;
[0128] 根据所述预设动作序列拼接每个预设动作子向量,获得所述预设动作序列对应的预设动作向量。
[0129] 其中,预设动作子向量可以理解为预设动作集合中每个动作对应的子向量。
[0130] 具体实施时,服务器可按照预设动作序列,将每个待识别动作对应的动作识别信息都转换为对应的预设动作子向量;进而,再将每个预设动作子向量按照预设动作序列进行拼接,以获得预设动作集合中预设动作序列对应的预设动作向量。
[0131] 通过上述对两组动作识别信息,按照动作序列进行转换与拼接,以获得动作集合对应的动作向量。
[0132] 此外,基于所述动作集合比对结果确定所述目标动作集合的目标识别结果,包括:
[0133] 基于所述动作集合比对结果确定所述目标动作集合的动作评分,并将所述动作评分作为目标识别结果。
[0134] 实际应用中,服务器根据动作集合比对结果,确定用户所做的目标动作集合最后的综合动作评分,并将该综合动作评分作为目标识别结果。
[0135] 基于此,本说明书实施例提供的动作识别方法,通过上述计算各个动作集合对应的向量信息之间的相似度,以实现将目标动作集合与预设动作集合对应的识别信息进行比对,进而,确定动作集合比对结果,便于计算用户的目标动作集合的目标识别结果。
[0136] 本说明书另一实施例提供的动作识别方法,还可以通过比对目标动作集合与预设动作集合之间,每个动作的相似度,以确定用户所做的每个动作的准确率或者是说命中率;具体的,将所述动作集合识别信息与所述预设动作集合识别信息进行比对,获得动作集合比对结果,包括:
[0137] 在所述预设动作集合中确定目标预设动作,在所述目标动作集合中确定所述目标预设动作对应的目标待识别动作;
[0138] 在所述动作集合识别信息中,确定所述目标待识别动作对应的目标待识别信息,以及在所述预设动作集合识别信息中,确定所述目标预设动作对应的目标预设信息;
[0139] 计算所述目标待识别信息与所述目标预设信息的目标相似度;
[0140] 基于每个目标相似度确定所述目标动作集合与所述预设动作集合之间的动作集合比对结果。
[0141] 其中,目标预设动作可以理解为预设动作集合中的某一动作,即服务器需要进行动作比较的标准动作;目标待识别动作可以理解为目标动作集合中的任一动作,即玩家以目标预设动作为标准所实际做的动作;需要说明的是,本实施例提供的方法,就是为了比对目标待识别动作是否与目标预设动作相一致,以确定玩家做的动作是否标准,进而为玩家的动作进行打分。
[0142] 比如,在拳击游戏中,为了确定用户所做的动作的命中率,需要将用户所做的每一个动作都与预设的标准动作进行比对,以确定每个动作是否在游戏过程中按照预设的时间区间完成。
[0143] 实际应用中,服务器在比对某一目标预设动作与目标待识别动作时,可以通过确定目标预设动作对应的目标预设信息、以及确定目标待识别动作对应的目标待识别信息,通过计算目标预设信息与目标待识别信息之间的相似度,确定最后的比对结果;需要说明的是,预设动作集合与目标动作集合中具有多个动作,那么,即可计算出每一对动作之间的目标相似度,比如预设动作集合中有10个动作,目标动作集合中有10个动作,那么即可计算出10个目标相似度,进而,根据这10个目标相似度确定目标动作集合与预设动作集合之间的动作集合比对结果。
[0144] 通过对每一组动作进行一一比对,即可快速地获知玩家每一个动作是否标准,便于后续计算玩家的动作命中率。
[0145] 进一步地,基于所述动作集合比对结果确定所述目标动作集合的目标识别结果,包括:
[0146] 基于所述动作集合比对结果确定满足预设相似度阈值的目标相似度数量;
[0147] 基于所述目标相似度数量,确定所述目标动作集合的动作命中权重,并将所述动作命中权重作为目标识别结果。
[0148] 其中,动作命中权重可以理解为用户所做的目标动作集合中每个动作是否与预设动作集合中对应的动作相一致的权重,比如预设动作集合中的第一个动作为左直拳动作,在确定目标动作集合中的第一个动作为左直拳动作时,即可确定该第一个动作已经命中,进而便于后续计算目标动作集合中所有的动作的命中权重。
[0149] 实际应用中,服务器可根据上述确定的动作集合比对结果,确定满足预设相似度阈值的目标相似度数量,其中,预设相似度阈值可以根据游戏难度确定,还可以根据众多玩家的多次动作记录确定,本实施例中对此不作具体限定;比如,预设相似度阈值为90%,那么即可理解为目标相似度大于等于90%的动作,即可算作动作命中,进而统计目标相似度大于等于90%的相似度数量,根据相似度数量确定用户所做的目标动作集合对应的动作命中权重,并将该动作命中权重作为最后的目标识别结果,既可以理解为将该命中权重转换为分值的形式,作为目标识别结果展示给玩家。
[0150] 综上,本说明书实施例提供的动作识别方法,通过两种数据采集设备分别获取对应的动作数据以及位移数据,以识别对应的动作特征信息以及位移特征信息,后续对于这两种类型的特征信息分别为预设标准动作对应的特征信息进行比对,确定比对动作之间的相似度,进而,能够对每组动作进行综合评分,准确地识别出玩家动作的准确度;同时,还可以对每一个动作进行比对,确定所有游戏动作的命中率,以激励玩家更精准地完成游戏动作,也能够达到纠正动作,提高游戏体验的技术效果。
[0151] 下述结合附图3,以本说明书提供的动作识别方法在拳击体感游戏的应用为例,对所述动作识别方法进行进一步说明。其中,图3示出了本说明书一实施例提供的一种应用于拳击体感游戏的动作识别方法的动作评分示意图。
[0152] 图3示出了拳击体感游戏动作评分展示界面,图3中的左侧为“标准动作集合”的展示示意图,包括10个动作,分别为1右直拳、2右闪躲、3左勾拳、4左闪躲、5左摆拳、6左闪躲、7右闪躲、8右勾拳、9右摆拳、10左闪躲,其中,每个动作名称后还具有用户是否命中的标识,用“√”和“×”来表示;图3中的右侧为针对“标准动作集合”对应的总评分以及动作命中次数的展示示意图,其中,总评分为9分,动作命中次数为9/10(10个动作中命中9个)。
[0153] 实际应用中,服务器可先获取用户做的目标动作集合对应的动作识别信息;在确定与该目标动作集合对应的标准动作集合之后,即可将目标动作集合对应的动作识别信息与标准动作集合对应的动作识别信息进行比对,在各个动作进行比对的过程中,若计算两个动作的比对结果满足预设条件时,即可确定用户做的目标动作与标准动作相一致,确定该目标动作已命中,如图3中的10个动作后展现的命中标识,“√”表示用户已命中该动作,“×”表示用户未命中该动作,后续服务器可通过统计命中标识,将动作命中次数在展示界面中进行展现;另外,对于目标动作集合的总评分,可以通过将目标动作集合的识别信息与标准动作集合的识别信息进行综合比对,以确定玩家玩拳击体感游戏动作的总评分。
[0154] 需要说明的是,本实施例仅提供了拳击体感游戏动作评分的展示示意图,但并不限定与此种展示方式,还可根据不同的应用需求添加各种展示功能,在此不做具体限定;其中,对于评分的计算过程、动作命中次数的计算过程可参考书上述实施例描述的方式,在本实施例中则不做过多赘述。
[0155] 与上述方法实施例相对应,本说明书还提供了动作识别装置实施例,图4示出了本说明书一实施例提供的一种动作识别装置的结构示意图。如图4所示,该装置包括:
[0156] 动作信息确定模块402,被配置为获取第一待识别动作的待识别动作信息,基于所述待识别动作信息确定所述第一待识别动作的动作特征信息;
[0157] 位移信息确定模块404,被配置为获取第二待识别动作的待识别位移信息,基于所述待识别位移信息确定所述第二待识别动作的位移特征信息;
[0158] 动作识别信息确定模块406,被配置为基于所述动作特征信息以及所述位移特征信息确定目标动作集合的动作集合识别信息,其中,所述目标动作集合包括所述第一待识别动作和所述第二待识别动作;
[0159] 识别结果确定模块408,被配置为基于所述动作集合识别信息确定所述目标动作集合的目标识别结果。
[0160] 可选地,所述识别结果确定模块408,进一步被配置为:
[0161] 确定预设动作集合的预设动作集合识别信息,其中,所述预设动作集合包括第一预设动作和第二预设动作;
[0162] 将所述动作集合识别信息与所述预设动作集合识别信息进行比对,获得动作集合比对结果;
[0163] 基于所述动作集合比对结果确定所述目标动作集合的目标识别结果。
[0164] 可选地,所述识别结果确定模块408,进一步被配置为:
[0165] 确定所述目标动作集合中待识别动作序列,以及确定所述预设动作集合中预设动作序列;
[0166] 基于所述待识别动作序列计算所述目标动作集合中动作集合识别信息的待识别动作向量;
[0167] 基于所述预设动作序列计算所述预设动作集合中预设动作集合识别信息的预设动作向量;
[0168] 计算所述待识别动作向量以及所述预设动作向量之间的动作相似度,确定动作集合比对结果。
[0169] 可选地,所述识别结果确定模块408,进一步被配置为:
[0170] 将所述待识别动作序列中每个待识别动作转换为对应的待识别动作子向量;
[0171] 根据所述待识别动作序列拼接每个待识别动作子向量,获得所述待识别动作序列对应的待识别动作向量。
[0172] 可选地,所述识别结果确定模块408,进一步被配置为:
[0173] 将所述预设动作序列中每个预设动作转换为对应的预设动作子向量;
[0174] 根据所述预设动作序列拼接每个预设动作子向量,获得所述预设动作序列对应的预设动作向量。
[0175] 可选地,所述识别结果确定模块408,进一步被配置为:
[0176] 基于所述动作集合比对结果确定所述目标动作集合的动作评分,并将所述动作评分作为目标识别结果。
[0177] 可选地,所述识别结果确定模块408,进一步被配置为:
[0178] 在所述预设动作集合中确定目标预设动作,在所述目标动作集合中确定所述目标预设动作对应的目标待识别动作;
[0179] 在所述动作集合识别信息中,确定所述目标待识别动作对应的目标待识别信息,以及在所述预设动作集合识别信息中,确定所述目标预设动作对应的目标预设信息;
[0180] 计算所述目标待识别信息与所述目标预设信息的目标相似度;
[0181] 基于每个目标相似度确定所述目标动作集合与所述预设动作集合之间的动作集合比对结果。
[0182] 可选地,所述识别结果确定模块408,进一步被配置为:
[0183] 基于所述动作集合比对结果确定满足预设相似度阈值的目标相似度数量;
[0184] 基于所述目标相似度数量,确定所述目标动作集合的动作命中权重,并将所述动作命中权重作为目标识别结果。
[0185] 可选地,所述动作识别信息确定模块406,进一步被配置为:
[0186] 将所述动作特征信息输入至动作识别模型,获得所述动作识别模型输出的所述第一待识别动作对应的动作类型;
[0187] 将所述位移特征信息输入至位移识别模型,获得所述位移识别模型输出的所述第二待识别动作对应的位移类型;
[0188] 基于所述动作类型以及所述位移类型,确定目标动作集合的动作集合识别信息。
[0189] 可选地,所述动作信息确定模块402,进一步被配置为:
[0190] 基于所述待识别动作信息计算所述第一待识别动作的姿态信息;
[0191] 从所述待识别动作信息和所述姿态信息中提取所述第一待识别动作的动作特征信息。
[0192] 可选地,待识别动作信息包括加速度信息和角速度信息;
[0193] 可选地,所述动作信息确定模块402,进一步被配置为:
[0194] 根据所述加速度信息计算所述第一待识别动作的第一子姿态信息;
[0195] 根据所述角速度信息计算所述第一待识别动作的第二子姿态信息;
[0196] 融合所述第一子姿态信息和所述第二子姿态信息获得所述第一待识别动作的姿态信息。
[0197] 可选地,所述动作信息确定模块402,进一步被配置为:
[0198] 拼接所述待识别动作信息和所述姿态信息,获得待处理特征信息集合;
[0199] 根据预设的特征提取规则从所述待处理特征信息集合中确定至少一个待处理特征信息;
[0200] 提取所述至少一个待处理特征信息,获得所述第一待识别动作的动作特征信息。
[0201] 可选地,所述位移信息确定模块404,进一步被配置为:
[0202] 基于所述待识别位移信息确定所述第二待识别动作的关键点信息;
[0203] 将所述待识别位移信息和所述关键点信息输入至关键点识别模型,获得所述关键点识别模型输出的所述第二待识别动作的关键点特征信息;
[0204] 基于所述关键点特征信息计算所述第二待识别动作的位移特征信息。
[0205] 可选地,所述动作信息确定模块402,进一步被配置为:
[0206] 获取硬件信息采集设备发送的第一待识别动作的待识别动作信息。
[0207] 可选地,所述位移信息确定模块404,进一步被配置为:
[0208] 获取图像采集设备发送的第二待识别动作的待识别位移信息。
[0209] 本申请实施例提供的动作识别装置,通过分别获取第一待识别动作和第二待识别动作,进而确定第一待识别动作对应的动作特征信息,以及确定第二待识别动作对应的位移特征信息,并通过动作特征信息以及位移特征信息综合确定目标动作集合中的动作集合识别信息,以确定目标动作集合的目标识别结果,通过将目标动作集合分为两种类型的待识别动作,并分别确定这两种类型的待识别动作相应的特征信息,以确定目标动作集合中的这两类待识别动作的识别信息,进而,能够准确地识别出体感游戏中较为复杂的动作的识别信息,便于后续根据识别信息准确地完成对游戏动作的用户评分,提高用户对体感游戏的动作体验。
[0210] 上述为本实施例的一种动作识别装置的示意性方案。需要说明的是,该动作识别装置的技术方案与上述的动作识别方法的技术方案属于同一构思,动作识别装置的技术方案未详细描述的细节内容,均可以参见上述动作识别方法的技术方案的描述。
[0211] 图5示出了根据本说明书一实施例提供的一种计算设备500的结构框图。该计算设备500的部件包括但不限于存储器510和处理器520。处理器520与存储器510通过总线530相连接,数据库550用于保存数据。
[0212] 计算设备500还包括接入设备540,接入设备540使得计算设备500能够经由一个或多个网络560通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备540可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi‑MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
[0213] 在本说明书的一个实施例中,计算设备500的上述部件以及图5中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图5所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
[0214] 计算设备500可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备500还可以是移动式或静止式的服务器。
[0215] 其中,处理器520执行所述计算机指令时实现所述的动作识别方法的步骤。
[0216] 上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的动作识别方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述动作识别方法的技术方案的描述。
[0217] 本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现如前所述动作识别方法的步骤。
[0218] 上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的动作识别方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述动作识别方法的技术方案的描述。
[0219] 上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0220] 所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0221] 需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
[0222] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0223] 以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。

当前第1页 第1页 第2页 第3页
相关技术
方法装置相关技术
识别方法相关技术
王博朋发明人的其他相关专利技术