一种配置体感动作与虚拟操作间映射关系的方法及装置与流程

文档序号:15684634发布日期:2018-10-16 20:55阅读:136来源:国知局

本发明涉及人机交互技术领域,更具体地,涉及一种配置体感动作与虚拟操作间映射关系的方法及装置。



背景技术:

目前人与计算机的交互方式依旧局限于鼠标与键盘,这种交互方式在很长一段时间内制约了人机交互的进一步发展。随着科学技术的高速发展,更高层次的人机交互理念对交互方式提出了巨大的需求,众多科研人员开始对新的交互技术的多通道界面展开研究。kinect的出现开启了新一代人机交互方式的新篇章,这种基于计算机视觉的体感交互因其相比穿戴式交互更具直观性、自然性而成为最有前景的一种方法。

由于体感交互方式更加自然,尤其适合玩运动类的游戏,体感交互方式目前在游戏领域得到了广泛的应用。但体感交互游戏的开发需要大量的专业知识,导致体感交互游戏制作成本高,制作周期长,开发效率低。除此之外还有很多适合用体感方式进行交互的传统应用,如何使这些传统应用快速地实现高契合度的体感交互方式是当前研究热点。目前,faast(flexibleactionandarticulatedskeletontoolkit)是介于kinect软件开发工具包和应用程序之间的体感操作中间件,主要采用事件触发方式对角度、距离、速度等事件进行识别,开发人员利用faast进行二次开发能够实现应用由传统交互方式向体感交互方式的转换。

但基于faast进行二次开发本身具有局限性,对连续动作的识别较困难,同时不能实现体感动作的自定义和使用,另外,faast的使用门槛较高,开发人员需要花费大量时间了解身体25个可识别关节点的位置和各种复杂的动作描述限制后,才能够使用它进行开发。



技术实现要素:

为了解决将应用从传统交互方式转换为体感交互方式的开发过程中存在的开发门槛较高、开发周期长且对连续体感动作识别较困难,不能实现体感动作的自定义和使用的问题,本发明提供一种配置体感动作与虚拟操作间映射关系的方法及装置。

根据本发明的一个方面,提供一种配置体感动作与虚拟操作间映射关系的方法,包括:

s1,利用kinect设备采集目标应用所需的各样本体感动作数据,并生成相应的动作数据文件;

s2,对所述动作数据文件进行训练,获得动作识别文件,并加载所述动作识别文件所对应的体感动作,生成动作库;

s3,根据目标应用的体感交互需求,构建所述动作库中的每个体感动作与虚拟操作消息之间的映射关系,生成体感动作与虚拟操作映射集。

其中,在所述步骤s3之后,还包括:

s4,实时采集用户的目标体感动作并与所述动作库中的体感动作进行匹配以获取所述用户的目标体感动作所属的动作类别,根据所述体感动作与虚拟操作映射集,获取并激发所述动作类别所对应的虚拟操作消息。

其中,所述步骤s1进一步包括:

s11,连接kinect设备,选择需要录制的数据源;

s12,采集开始计时后,等待所述kinect设备所录制的图像显示出人体骨架后开始采集目标应用所需的各样本体感动作数据;

s13,对所采集的各样本体感动作数据进行是否完整显示人体骨骼和完整采集的检查,若检查结果为是,则对所述体感动作数据进行命名并保存,获得各xef格式的动作数据文件。

其中,所述步骤s2进一步包括:

s21,创建动作工程,选择离散姿势或连续动作训练算法,并对训练过程进行设置;

s22,载入所生成的多个动作数据文件,分别对各个动作数据文件进行是否符合目标应用需求的标记;

s23,根据所选择的训练算法对标记后的动作数据文件进行训练,在预设时间后生成gba格式的动作识别文件;

s24,对训练好的动作识别文件进行实时预览并对训练的效果进行分析,若达到目标应用的使用标准则训练成功,否则重新进行标记后再训练;

s25,加载训练成功的动作识别文件所对应的体感动作,生成动作库。

其中,所述步骤s3进一步包括:

s31,从动作库中选择一个体感动作作为输入,从虚拟操作消息中选择一个事件作为输出,对所建立的映射关系进行命名;

s32,重复步骤s31直至所获得的映射关系符合目标应用的体感交互需求,获得体感动作与虚拟操作映射集,并将所述体感动作与虚拟操作映射集存储为xml文件。

根据本发明的另一个方面,提供一种配置体感动作与虚拟操作间映射关系的装置,包括:

体感动作采集单元,用于利用kinect设备采集目标应用所需的各样本体感动作数据,并生成相应的动作数据文件;

动作库生成单元,用于对所述动作数据文件进行训练,获得动作识别文件,并加载所述动作识别文件所对应的体感动作,生成动作库;

映射构建单元,用于根据目标应用的体感交互需求,构建所述动作库中的每个体感动作与虚拟操作消息之间的映射关系,生成体感动作与虚拟操作映射集。

其中,还包括:

动作匹配单元,用于实时采集用户的目标体感动作并与所述动作库中的体感动作进行匹配以获取所述用户的目标体感动作所属的动作类别,根据所述体感动作与虚拟操作映射集,获取并激发所述动作类别所对应的虚拟操作消息。

其中,所述体感动作采集单元具体用于:

连接kinect设备,选择需要录制的数据源;

采集开始计时后,等待所述kinect设备所录制的图像显示出人体骨架后开始采集目标应用所需的各样本体感动作数据;

对所采集的各样本体感动作数据进行是否完整显示人体骨骼和完整采集的检查,若检查结果为是,则对所述体感动作数据进行命名并保存,获得各xef格式的动作数据文件。

其中,所述动作库生成单元具体用于:

创建动作工程,选择离散姿势或连续动作训练算法,并对训练过程进行设置;

载入所生成的多个动作数据文件,分别对各个动作数据文件进行是否符合目标应用需求的标记;

根据所选择的训练算法对标记后的动作数据文件进行训练,在预设时间后生成gba格式的动作识别文件;

对训练好的动作识别文件进行实时预览并对训练的效果进行分析,若达到目标应用的使用标准则训练成功,否则重新进行标记后再训练;

加载训练成功的动作识别文件所对应的体感动作,生成动作库。

其中,所述映射构建单元具体用于:

从动作库中选择一个体感动作作为输入,从虚拟操作消息中选择一个事件作为输出,对所建立的映射关系进行命名;

重复映射关系的建立直至所获得的映射关系符合目标应用的体感交互需求,获得体感动作与虚拟操作映射集,并将所述体感动作与虚拟操作映射集存储为xml文件。

本发明提出的一种配置体感动作与虚拟操作间映射关系的方法及装置,开发人员可以自定义设计体感动作,快速有效地构建体感动作与虚拟操作之间的映射关系集,实现了用户体感动作行为与传统键盘和鼠标事件的实时映射,并且支持对连续动作的识别,可方便地实现传统交互方式应用的体感化操作,提高开发效率。

附图说明

图1为根据本发明一实施例提供的一种配置体感动作与虚拟操作间映射关系的方法的流程示意图;

图2为根据本发明一实施例提供的描述图1中各步骤具体实现过程的简要说明图;

图3为根据本发明一实施例提供的人体骨架三维模型的示意图;

图4为根据本发明另一实施例提供的一种配置体感动作与虚拟操作间映射关系的装置的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他的实施例,都属于本发明保护的范围。

如图1所示,为本发明一实施例提供的一种配置体感动作与虚拟操作间映射关系的方法的流程示意图,包括:

s1,利用kinect设备采集目标应用所需的各样本体感动作数据,并生成相应的动作数据文件;

s2,对所述动作数据文件进行训练,获得动作识别文件,并加载所述动作识别文件所对应的体感动作,生成动作库;

s3,根据目标应用的体感交互需求,构建所述动作库中的每个体感动作与虚拟操作消息之间的映射关系,生成体感动作与虚拟操作映射集。

具体地,本发明实施例提供一种配置体感动作与虚拟操作间映射关系的方法,用户可以自定义设计体感动作,并将其与虚拟操作建立相应的映射关系,可方便地实现传统交互的应用向体感交互方式的转换。

s1中,首先利用kinect设备采集目标应用所需的各样本体感动作数据,当所采集的各样本体感动作数据能够显示人体骨骼关节且完整描述动作时,生成多个动作数据文件,每个动作数据文件能够完整的描述一个体感动作。

s2,对所采集的多个动作数据文件进行离散姿势或连续动作的训练,所选的训练算法是已有的技术,例如,首先对动作数据文件进行特征提取,然后基于分类器训练模块对输入的多个动作数据文件进行训练,在训练结束后生成动作识别文件。支持开发人员自定义体感动作,或者选择已经训练好的常用的体感动作,例如包括:身体左倾、身体右倾、左手举起、右手举起等,然后将所生成的多个动作识别文件进行加载,形成动作库,动作库中的每个体感动作都是训练好的,可用于识别目标应用的最终用户的体感动作。

s3,从动作库中选择满足目标应用体感交互需求的体感动作与虚拟操作消息进行映射,每次选择一个体感动作作为输入,从虚拟操作消息中选择一个事件作为输出,每个虚拟操作消息对应一个鼠标事件或键盘事件,并对所建立的映射关系进行命名,重复进行映射关系的构建,直至满足目标应用的体感交互需求,在这个过程中所构建的每一条映射关系最终形成了体感动作与虚拟操作映射集。

本发明提出的一种配置体感动作与虚拟操作间映射关系的方法,开发人员可以自定义设计体感动作,快速有效地构建体感动作与虚拟操作之间的映射关系集,实现了用户体感动作行为与传统键盘和鼠标事件的实时映射,并且支持对连续动作的识别,可方便地实现传统交互方式应用的体感化操作,提高开发效率。

本发明另一实施例,在上述实施例的基础上,还包括:

s4,实时采集用户的目标体感动作并与所述动作库中的体感动作进行匹配以获取所述用户的目标体感动作所属的动作类别,根据所述体感动作与虚拟操作映射集,获取并激发所述动作类别所对应的虚拟操作消息。

在上述实施例所提供的步骤s1至s3的基础上,目标应用的开发人员或目标应用的最终用户可以利用kinect设备实时采集自身的人体动作,并与所述动作库中的体感动作进行匹配以获取该体感动作所属的动作类别,根据步骤s3中获得的体感动作与虚拟操作映射集中的映射关系,获取所述动作类别所对应的虚拟操作消息,通过消息响应机制激发所述动作类别对应的虚拟操作消息,完成体感交互。目标应用的开发人员采用步骤s4进行体感交互的模拟测试,而目标应用的最终用户则采用步骤s4实现体感交互。

以开发人员进行模拟测试为例来说明步骤s4的具体实现过程:

s41,载入所述体感动作与虚拟操作映射集;

模拟测试阶段,首先需要载入所述体感动作与虚拟操作映射集xml文件,以供开发人员清楚地看到所述体感动作与虚拟操作映射集中全部的映射关系。

s42,在点击“开始模拟”后,kinect设备实时采集目标体感动作并与所述动作库中的体感动作进行匹配,识别出目标体感动作所属的动作类别;

动作库是由训练好的各个体感动作的动作数据文件组成,每个动作数据文件对应一个符合目标应用需求的体感动作,将kinect设备实时采集的目标体感动作与所述动作库中的各体感动作数据进行对比匹配,可以识别出当前目标体感动作所属的动作类别。

s43,根据所述体感动作与虚拟操作映射集,通过消息响应机制激发所述动作类别所对应的虚拟操作消息,并显示所述虚拟操作消息;

根据所识别出的目标体感动作的动作类别,查询所述体感动作与虚拟操作映射集,则可获知该动作类别所对应的虚拟操作消息,并将对应的虚拟操作消息均显示在用户界面上的识别输出实时列表上。

s44,向开发人员显示所采集的体感动作所对应的kinect数据源图像,以供开发人员根据所述kinect数据源图像来观察自身的姿势与动作是否符合规范。

向开发人员提供了kinect的五种数据源图像,包括:bodybasics、bodyindexbasics、colorbasics、depthbasics、infraredbasics。

如图2所示,为本发明实施例所提供的步骤s1至s4具体实现过程的简要说明图。

基于上述实施例,所述步骤s1进一步包括:

s11,连接kinect设备,选择需要录制的数据源;

kinect作为一个输入设备其具有稳定的输出数据源,从数据源的类型上看,kinect主要可以捕获5种数据源:colorbasics(彩色数据),彩色图像采集分辨率1920*1080,可以设置30帧/秒或者是15帧/秒;infrarebasics(红外数据),分辨率512*424,30fps,每个像素16bit;depthbasics(深度数据),测量范围0.5-4.5米,每个像素16bit;bodyindexbasics(身体索引数据),kinect用一个字节表示当前深度坐标下该像素的人体编号;bodybasics(身体骨架数据):测量范围0.5米-4.5米,帧数据是一个人体25关节点的集合,每个帧都包含关节的3d位置和方向。为了识别目标应用所需的体感动作,需要选择的数据源为:infrared、depth、bodyframe和bodyindex,尽量不要选择color,因为它的数据量太大,并且对于骨架关节点识别和动作分析识别没有任何作用。

s12,采集开始计时后,等待所述kinect设备所录制的图像显示出人体骨架后开始采集目标应用所需的各样本体感动作数据;

录制体感动作的工具采用微软提供的kinectstudiov2.0,用户可以用其采集人体动作数据或导入包含人体动作数据的文件进行查看,其生成的动作数据文件格式为xef。在采集开始计时后,等待kinect设备所录制的图像显示出人体骨架后才开始对目标应用所需的体感动作数据进行采集,目的是为了使所采集到的体感动作数据能够直接被使用。

s13,对所采集的各样本体感动作数据进行是否完整显示人体骨骼和完整采集的检查,若检查结果为是,则对所述体感动作数据进行命名并保存,获得各xef格式的动作数据文件。

只有对所采集的体感动作数据进行了检查,符合了能够被使用的规范,才将所采集到的体感动作数据进行保存,检查的内容包括是否能够完整显示人体骨骼以及是否是完整采集,即若检查结果为是,则对所采集的体感动作数据进行命名并保存为xef格式的动作数据文件。

基于上述各实施例,所述步骤s2进一步包括:

s21,创建动作工程,选择离散姿势或连续动作训练算法,并对训练过程进行设置;

创建动作工程包括新建一个动作工程,对动作工程进行命名,选择人体方向(即动作的方向),然后选择训练算法,分为离散姿势和连续动作两种训练算法,并对训练过程的做一些设置,包括:是否对手势进行识别,以及选择忽视对该动作无关的一些关节点等,如图3所示为人体骨架三维模型的示意图,25个圆点表示25个关节点,圆点连线表示骨骼段。

s22,载入所生成的多个动作数据文件,分别对各个动作数据文件进行是否符合目标应用需求的标记;

载入步骤s1所生成的多个动作数据文件,分别对各个动作数据文件进行是否符合目标应用需求的标记,即对数据流打标签,对于离散姿势,开发人员可以通过输入“enter”则标记为1,代表该动作数据文件所对应的动作符合目标应用需要识别的姿势,若输入“空格”则标记为0,代表该该动作数据文件所对应的动作不符合目标应用需要识别的姿势;同样地,对于连续动作,输入“enter”则标记为1,输入“空格”则标记为0,还可使用1~9将连续动作标记为0.1~0.9,代表这个连续动作的每个动作片段,即动作进程。

s23,根据所选择的训练算法对标记后的动作数据文件进行训练,在预设时间后生成gba格式的动作识别文件;

s24,对训练好的动作识别文件进行实时预览并对训练的效果进行分析,若达到目标应用的使用标准则训练成功,否则重新进行标记后再训练,训练体感动作数据的工具采用的是微软提供的visualgesturebulider;

s25,加载训练成功的动作识别文件所对应的体感动作,生成动作库。

基于通用的骨架模型,利用步骤s1和步骤s21-s24获得训练好的动作识别文件加入到动作库中,包括:左手向右挥动、右手向左挥动、身体左倾、身体右倾、左手举起、右手举起、跳跃、弯腰、双手向前伸展、双手交叉于胸前和右臂抬起45度,开发人员可以从中选择需要的动作,若上述11个动作均不符合目标应用需求的动作,用户可以利用上述步骤自定义体感动作进行录制并训练生成新的动作识别文件。

基于上述各实施例,所述步骤s3进一步包括:

s31,从动作库中选择一个体感动作作为输入,从虚拟操作消息中选择一个事件作为输出,对所建立的映射关系进行命名;

一个映射关系的构建包含一个动作输入以及一个事件输出,动作输入需要从动作库中选择出一个体感动作,事件输出即虚拟操作中的键盘事件和鼠标事件,对于每一个所建立的映射关系都要进行命名。

s32,重复步骤s31直至所获得的映射关系符合目标应用的体感交互需求,获得体感动作与虚拟操作映射集,并将所述体感动作与虚拟操作映射集存储为xml文件。

重复构建映射关系,直至目标应用所需的所有体感动作都建立了映射关系后,所获得的所有映射关系就会符合目标应用的体感交互需求,而所有这些映射关系就构成了所述体感动作与虚拟操作映射集。开发人员可以根据目标应用的需要随时增加、删除或修改映射关系,包括删除不需要的映射、修改不符合需求的映射等,待检查无误后将所述体感动作与虚拟操作映射集存储为xml文件,以便下次查看、修改以及载入到模拟测试模块中进行实时模拟。

本发明另一实施例,如图4所示,为本发明另一实施例提供的一种配置体感动作与虚拟操作间映射关系的装置的结构示意图,包括:体感动作采集单元41、动作库生成单元42和映射构建单元43,其中:体感动作采集单元41,用于利用kinect设备采集目标应用所需的各样本体感动作数据,并生成相应的动作数据文件;

动作库生成单元42,用于对所述动作数据文件进行训练,获得动作识别文件,并加载所述动作识别文件所对应的体感动作,生成动作库;

映射构建单元43,用于根据目标应用的体感交互需求,构建所述动作库中的每个体感动作与虚拟操作消息之间的映射关系,生成体感动作与虚拟操作映射集。

具体地,本发明实施例提供一种配置体感动作与虚拟操作间映射关系的装置,用户可以自定义设计体感动作,并将其与虚拟操作建立相应的映射关系,可方便地实现传统交互的应用向体感交互方式的转换。

体感动作采集单元41利用kinect设备采集目标应用所需的各样本体感动作数据,当所采集的各样本体感动作数据能够显示人体骨骼关节且完整描述动作时,生成多个动作数据文件,每个动作数据文件能够完整的描述一个体感动作。

动作库生成单元42对所采集的多个动作数据文件进行离散姿势或连续动作的训练,所选的训练算法是已有的技术,例如,首先对动作数据文件进行特征提取,然后基于分类器训练模块对输入的多个动作数据文件进行训练,在训练结束后生成动作识别文件。支持开发人员自定义体感动作,或者选择已经训练好的常用的体感动作,例如包括:身体左倾、身体右倾、左手举起、右手举起等,然后将所生成的多个动作识别文件进行加载,形成动作库,动作库中的每个体感动作都是训练好的,可用于识别目标应用的最终用户的体感动作。

映射构建单元43从动作库中选择满足目标应用体感交互需求的体感动作与虚拟操作消息进行映射,每次选择一个体感动作作为输入,从虚拟操作消息中选择一个事件作为输出,每个虚拟操作消息对应一个鼠标事件或键盘事件,并对所建立的映射关系进行命名,重复进行映射关系的构建,直至满足目标应用的体感交互需求,在这个过程中所构建的每一条映射关系最终形成了体感动作与虚拟操作映射集。

本发明提出的一种配置体感动作与虚拟操作间映射关系的装置,开发人员可以自定义设计体感动作,快速有效地构建体感动作与虚拟操作之间的映射关系集,实现了用户体感动作行为与传统键盘和鼠标事件的实时映射,并且支持对连续动作的识别,可方便地实现传统交互方式应用的体感化操作,提高开发效率。

本发明另一实施例,在上述实施例的基础上,还包括:

动作匹配单元,用于实时采集用户的目标体感动作并与所述动作库中的体感动作进行匹配以获取所述用户的目标体感动作所属的动作类别,根据所述体感动作与虚拟操作映射集,获取并激发所述动作类别所对应的虚拟操作消息。

具体地,目标应用的开发人员利用动作匹配单元进行模拟测试,而目标应用的最终用户则利用动作匹配单元实现体感交互。动作匹配单元利用kinect设备实时采集自身的人体动作,并与所述动作库中的体感动作进行匹配以获取该体感动作所属的动作类别,根据映射构建单元43获得的体感动作与虚拟操作映射集中的映射关系,获取所述动作类别所对应的虚拟操作消息,通过消息响应机制激发所述动作类别对应的虚拟操作消息,完成体感交互。

以开发人员进行模拟测试为例来说明所述动作匹配单元的功能实现过程,动作匹配单元具体用于:

载入所述体感动作与虚拟操作映射集。在模拟测试阶段,即首先需要载入所述体感动作与虚拟操作映射集xml文件,以供开发人员清楚地看到所述体感动作与虚拟操作映射集中全部的映射关系。

在点击“开始模拟”后,kinect设备实时采集目标体感动作并与所述动作库中的体感动作进行匹配,识别出目标体感动作所属的动作类别。动作库是由训练好的各个体感动作的动作数据文件组成,每个动作数据文件对应一个符合目标应用需求的体感动作,将kinect设备实时采集的目标体感动作与所述动作库中的体感动作数据进行对比匹配,可以识别出当前目标体感动作所属的动作类别。

根据所述体感动作与虚拟操作映射集,通过消息响应机制激发所述动作类别所对应的虚拟操作消息,并显示所述虚拟操作消息。即根据所识别出的目标体感动作的动作类别,查询所述体感动作与虚拟操作映射集,则可获知该动作类别所对应的虚拟操作消息,并将对应的虚拟操作消息均显示在用户界面上的识别输出实时列表上。

向开发人员显示所采集的体感动作所对应的kinect数据源图像,包括:bodybasics、bodyindexbasics、colorbasics、depthbasics、infraredbasics,以供开发人员根据所述kinect数据源图像来观察自身的姿势与动作是否符合规范。

基于上述实施例,所述体感动作采集单元41具体用于:

连接kinect设备,选择需要录制的数据源;

采集开始计时后,等待所述kinect设备所录制的图像显示出人体骨架后开始采集目标应用所需的体感动作数据;

对所采集的各样本体感动作数据进行是否完整显示人体骨骼和完整采集的检查,若检查结果为是,则对所述体感动作数据进行命名并保存,获得各xef格式的动作数据文件。

具体地,kinect作为一个输入设备其具有稳定的输出数据源,从数据源的类型上看,kinect主要可以捕获5种数据源:colorbasics(彩色数据),infrarebasics(红外数据),depthbasics(深度数据),bodyindexbasics(身体索引数据),bodybasics(身体骨架数据)。为了识别目标应用所需的体感动作,需要选择的数据源为:infrared、depth、bodyframe和bodyindex,尽量不要选择color,因为它的数据量太大,并且对于骨架关节点识别和动作分析识别没有任何作用。

录制体感动作的工具采用微软提供的kinectstudiov2.0,用户可以用其采集人体动作数据或导入包含人体动作数据的文件进行查看,其生成的动作数据文件格式为xef。在采集开始计时后,等待kinect设备所录制的图像显示出人体骨架后才开始对目标应用所需的体感动作数据进行采集,目的是为了使所采集到的体感动作数据能够直接被使用。

只有对所采集的体感动作数据进行了检查,符合了能够被使用的规范,才将所采集到的体感动作数据进行保存,检查的内容包括是否是完整采集以及是否能够完整显示人体骨骼,即若检查结果为是,则对所采集的体感动作数据进行命名并保存为xef格式的动作数据文件。

基于上述实施例,所述动作库生成单元42具体用于:

创建动作工程,选择离散姿势或连续动作训练算法,并对训练过程进行设置;

载入所生成的多个动作数据文件,分别对各个动作数据文件进行是否符合目标应用需求的标记;

根据所选择的训练算法对标记后的动作数据文件进行训练,在预设时间后生成gba格式的动作识别文件;

对训练好的动作识别文件进行实时预览并对训练的效果进行分析,若达到目标应用的使用标准则训练成功,否则重新进行标记后再训练;

加载训练成功的动作识别文件所对应的体感动作,生成动作库。

具体地,创建动作工程包括新建一个动作工程,对动作工程进行命名,选择人体方向(即动作的方向),然后选择训练算法,分为离散姿势和连续动作两种训练算法,并对训练过程的做一些设置,包括:是否对手势进行识别,以及选择忽视对该动作无关的一些关节点等。载入所生成的多个动作数据文件,分别对各个动作数据文件进行是否符合目标应用需求的标记,即对数据流打标签,对于离散姿势,开发人员可以通过输入“enter”则标记为1,代表该动作数据文件所对应的动作符合目标应用需要识别的姿势,若输入“空格”则标记为0,代表该该动作数据文件所对应的动作不符合目标应用需要识别的姿势;同样地,对于连续动作,输入“enter”则标记为1,输入“空格”则标记为0,还可使用1~9将连续动作标记为0.1~0.9,代表这个连续动作的每个动作片段,即动作进程。

根据所选择的训练算法对标记后的动作数据文件进行训练,在一定时间后生成gba格式的动作识别文件;

对训练好的动作识别文件进行实时预览并对训练的效果进行分析,若达到目标应用的使用标准则训练成功,否则重新进行标记后再训练,训练体感动作数据的工具采用的是微软提供的visualgesturebulider;

基于通用的骨架模型,获得训练好的动作识别文件加入到动作库中,包括:左手向右挥动、右手向左挥动、身体左倾、身体右倾、左手举起、右手举起、跳跃、弯腰、双手向前伸展、双手交叉于胸前和右臂抬起45度,开发人员可以从中选择需要的动作,若上述11个动作均不符合目标应用需求的动作,用户可以自定义体感动作进行录制并训练生成新的动作识别文件。

基于上述实施例,所述映射构建单元43具体用于:

从动作库中选择一个体感动作作为输入,从虚拟操作消息中选择一个事件作为输出,对所建立的映射关系进行命名;

重复映射关系的建立直至所获得的映射关系符合目标应用的体感交互需求,获得体感动作与虚拟操作映射集,并将所述体感动作与虚拟操作映射集存储为xml文件。

具体地,一个映射关系的构建包含一个动作输入以及一个事件输出,动作输入需要从动作库中选择出一个体感动作,事件输出即虚拟操作中的键盘事件和鼠标事件,对于每一个所建立的映射关系都要进行命名。

重复构建映射关系,直至目标应用所需的所有体感动作都建立了映射关系后,所获得的所有映射关系就会符合目标应用的体感交互需求,而所有这些映射关系就构成了所述体感动作与虚拟操作映射集。开发人员可以根据目标应用的需要随时增加、删除或修改映射关系,包括删除不需要的映射、修改不符合需求的映射等,待检查无误后将所述体感动作与虚拟操作映射集存储为xml文件,以便下次查看、修改以及载入到模拟测试模块中进行实时模拟。

最后,本发明的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1