用于生成姿势和手势的综合数据库的方法和系统与流程

文档序号:15362114发布日期:2018-09-05 00:56阅读:169来源:国知局

本发明总体上涉及自然用户界面(nui)、并且更具体地涉及综合地生成足以训练nui系统的样本的数据库。



背景技术:

自然用户界面(nui)装置已经变得越来越流行,其中各种技术的手势获取系统被用于识别用户的身体部分的姿势和手势。

一般而言,目前有两种类型的nui装置是可用的。第一类型被配置用于供许多用户一起操作,并且能够将第一类型的nui装置训练成能够使尽可能多的用户一起正确地操作将是有利的。第二类型的nui装置被配置成仅供单个用户操作,但事先不知道哪个用户将最终使用该nui装置。

上述两种类型的nui装置都导致了训练挑战:第一类型带来了全局的挑战,而第二种类型带来了特殊化的挑战。



技术实现要素:

本发明的一些实施方式提供了用于生成适用于训练各种类型的自然用户界面(nui)的样本的大数据库的方法和系统。具体地,该数据库可以存储用于训练手势识别、手部检测、3d手部建模、面部识别、和全身识别的样本。这是通过使用可以渲染人类运动的真实模拟的图像系统来实现的。

因此,本发明的一个方面提供了可能在nui装置的制造商处执行的对nui系统的潜在用户的全局化,使得该模型将能够处理尽可能多的变体。另一方面是nui装置的有待在用户侧执行并尽可能地针对特定用户进行定制的具体化。

根据本发明的一些实施方式,系统架构师确定需要支持哪些手势和或姿势。在那个阶段,架构师还确定自己或自动获得哪些参数变化(通常来自列表)。

然后,系统架构师从数据库中收集或获取所有情景的参数值。架构师随后可以通过在真实生活中捕捉或创建它的模拟来接收至少一个姿势或手势。然后,在馈送所有所需数据之后,根据本发明的实施方式的方法基于所需的参数组合生成数据库。

前述过程可以在制造nui系统时执行,并且为了实现前述过程,可以实施以下阶段:获得一个或多个人的至少一个身体部分的至少一个姿势或手势;获得影响所述姿势和手势的表观的数据集;并且基于所获得的数据集生成这些姿势和手势的综合样本的集合。应注意的是,这些综合样本体现由所获得的数据集中的至少一个数据集引起的虚拟变化。

在不同的实施方式中,并且在操作阶段中,在nui系统可能已经在终端用户的手上时,可以基于每个用户和/或每种环境来渲染和定制数据库。为了实现对nui系统的快速“精调”,可能要求用户提供对他或她的相关身体部分(尤其姿势和手势方面)的获取,并且可以以快速方式针对特定姿势和手势以及针对特定相机和测量照明条件自动生成数据库。

有利地,因为在数据库上的样本全是综合生成的,获取的手势或运动的每一个样本与建模身体部分、纹理(texture,结构)、肤色、照明条件、和实际上影响获取的任何参数的确切几何安排相关联。此外,并且优选地,综合生成的样本将具有施加给它们的典型噪声。在获取系统生成深度映射的情况下,z缓存器用作样本的框架,具有与确切的运动、身体部分的距离、纹理和照明条件相关的参数知识的所有前述优点。

附图说明

在说明书的总结部分中特别指出并明确要求保护被认为是本发明的主题。然而,当结合附图阅读时,可以通过参考以下详细描述而在组织和操作方法上与目标、特征和优点一起最佳地理解本发明,其中:

图1是示出了根据本发明的实施方式的用于生成综合样本的全局数据库的非限制性示例性系统架构的框图;

图2是示出了根据本发明的实施方式的非限制性示例性方法的高级流程图;

图3是示出了根据本发明的实施方式的用于生成综合样本的定制数据库的非限制性示例性系统架构的框图;并且

图4是示出了根据本发明的实施方式的另一个非限制性示例性方法的高级流程图。

应理解的是,为了简化和清楚的说明,附图中所示的元件未必按比例绘制。例如,为了清楚起见,一些元件的尺寸可能相对于其他元件被放大。进一步地,在认为适当的情况下,可以在附图中重复参考数字以指示对应的或类似的元件。

具体实施方式

在下面的描述中,将描述本发明的各个方面。为了解释的目的,阐述了具体的配置和细节,以提供对本发明的透彻理解。然而,对于本领域技术人员来说,还将明显的是可以在没有本文给出的具体细节的情况下实践本发明。此外,为了不使本发明变得模糊,可以省略或简化众所周知的特征。

除非另有指明,如从以下讨论中明显的,应理解的是,贯穿说明书讨论,使用诸如“处理”、“计算”、“运算”、“确定”等术语指的是将表现为物理(诸如电子)量的数据在计算系统的寄存器和/或存储器内操控和/或转换为类似地表现为在计算系统的存储器、寄存器或其他此类信息存储、传输或显示装置内的物理量的其他数据的计算机或计算系统或类似的电子计算装置的动作和/或处理。

在一个实施方式中,在此提供了一种用于生成姿势和手势的综合样本的数据库的系统。所述系统可以包括存储器和计算机处理器,该存储器被配置成用于存储一个或多个人的至少一个身体部分的至少一个姿势或手势,该计算机处理器被配置成用于:确定影响所述姿势和手势的表观的因素的参数的使用情况特定值;并且基于所获得的参数的使用情况特定制生成所述姿势和手势的使用情况特定综合样本,其中,这些综合样本体现由所获得的使用情况特定值中的至少一个值引起的虚拟变化。

图1是示出了根据本发明的一些实施方式的用于生成姿势和手势的综合样本的全局数据库的非限制性示例性系统架构的框图。系统100可以包括连接至存储器140的计算机处理器130,在该存储器上可以加载有待由计算机处理器130执行的多组指令。系统100可以包括若干软件模块,这些软件模块可以由计算机处理器130执行并且可能由可选的图像处理单元(gpu)135执行。此类软件模块可以包括(但不限于)姿势和手势生成器120、照明模块150、纹理模块160、表观模块170、以及运动模块180。

在操作中,存储器140可以被配置成用于获得一个或多个人(在此未示出)的至少一个身体部分的至少一个姿势或手势。存储器140可以进一步被配置成用于获得影响姿势和手势的表观的数据集。

然后,响应于可能通过架构师10并且通过用户界面110对参数的选择,计算机处理器130可以被配置成用于使用姿势和手势生成器120(其依次可以使用照明模块150、纹理模块160、表观模块170和运动模块180)基于有待存储在综合姿势和手势数据库190上的所获得的数据集来生成所述姿势和手势的综合样本的集合。

具体地,存储在综合姿势和手势数据库190上的综合样本可以被配置成体现由所获得的数据集中的至少一个引起的虚拟变化。

根据本发明的一些实施方式,样本的生成是进一步基于(例如,实际的人例如挥动他们的手而获取的)真实生活样本195。替代性地,可以不需要真实生活样本,并且综合样本可以通过全综合的方式生成。

具体地,照明模块150可以被配置成用于提供不同的照明条件,纹理模块160可以被配置成用于提供人类用户和/或衣物物品的不同的纹理,表观模块170可以被配置成用于提供身体部分和/或衣物物品的不同的尺寸、形状和颜色,而运动模块180可以被配置成用于提供诸如用户的身体部分的速度和加速度等不同的运动参数。

根据本发明的一些实施方式,综合数据库190可以获得若干类型的可与彼此不同的有效运动、由于无效(例如,它们没有基于姿势/手势识别系统转化为有意义的动作)而应被忽视的多个类型的运动、以及用作反例的其他无意义“噪声”样本。

根据本发明的其他实施方式,使用不同相机的配置基于限定诸如视场(fov)、分辨率、传感器尺寸等相机特性的各种参数来生成数据库。

图2是示出了根据本发明的实施方式的用于生成姿势和手势的综合样本的数据库的非限制性示例性方法的高级流程图。方法200可以包括以下步骤:获得一个或多个人的至少一个身体部分的至少一个姿势或手势210;获得影响所述姿势或手势的表观的数据集220;并且基于所获得的数据集来生成所述姿势和手势的综合样本的集合230,其中,综合样本体现由所获得的数据集中的至少一个引起的虚拟变化。

图3是示出了根据本发明的一些实施方式的用于渲染姿势和手势的综合样本的使用情况特定数据集的系统的非限制性示例性架构的框图。系统300可以包括数据库390,该数据库被配置成用于存储姿势或手势的至少一个样本,并且可以本地定位或定位在远程位置中并且可以通过网络40进行通信。系统300还可以包括感测装置50(其可以是连接至pc的网络摄像头);以及计算机处理器310。系统300可以包括可以由计算机处理器310执行的若干软件模块。此类软件模块可以包括:照明模块350、纹理模块360、表观模块370以及运动模块380。

在操作中,计算机处理器310可以被配置成用于导出与特定用户有关的参数的值,其中,所导出的参数是在生成数据库390(其可能类似于本文中参照图1描述的数据库190,但是更优选地仅是其足以生成一些综合样本的子集、而非如数据库190的所有可能变体)时预定义的。计算机处理器310可以被进一步配置成用于可能地通过使用照明模块350、纹理模块360、表观模块370和运动模块380基于所导出的值来生成姿势和手势样本的数据集320。

根据本发明的一些实施方式,系统300可以进一步包括用户界面60,该用户界面被配置成用于监测由感测装置50对用户数据的采样处理。

如上所解释的,并且根据本发明的一些实施方式,数据库190可以经由网络40远程地连接至计算机处理器。感测装置50可以是经由用户20的pc操作的网络摄像头。因此,在最小化的实现方式中,接近用户20的实际装置仅包括计算机处理器以及所生成的数据集,该数据集在一些实施方式中也可以远程存储并且经由网络(例如,经由云)访问。在本发明的另一实施方式中,执行与特定装置的适配的计算机处理器可以远程定位(例如,在云上),并且由该计算机处理器远程产生的所得数据库或分类器则转移至本地装置。替代性地,在该处进行其他处理的情况下,其也可以被发送至不同的云。

根据本发明的一些其他的实施方式,数据集可以是基于每个用户和/或每种环境生成的。可以获取用户的手部或另一个身体部分以用于导出参与该姿势或手势的身体部分的纹理。然后,该系统自动地生成姿势和手势的样本并且使用在综合姿势和手势上实施的获取样本。因此,应注意的是,这些纹理与这些姿势或手势自身不相关,而是与执行该姿势的身体相关。

图4是示出了根据本发明的实施方式的渲染特定用户的姿势和手势的综合样本的数据集的方法的高级流程图。方法400可以包括以下步骤:访问包括基于在生成所述数据库时预定义的参数来索引(或可能集群)的多个姿势和手势样本的数据库410;经由感测装置获得用户的样本420;基于这些样本导出与特定用户有关的参数的值430;并且基于所导出的参数生成姿势和手势样本的数据集440。

根据本发明的一些实施方式,用于在工厂处生成的数据库(全局数据库)或随终端用户生成的(在终端用户处情景特定的)数据库的与终端用户有关的一些参数可以是依据于用户的并且可以包括以下各项中的至少一些项:可以涉及肤色、头发、衣物(例如,袖套、手套)的身体部分的纹理。

此外,总体表观可以例如被参数化为:身体部分的形状、尺寸((例如手臂或指头)的长度、及宽度)、运动速度(例如,在姿势为“挥动”的情况下——挥动的速度或频率);运动“弧”(即,特定姿势不一定具有全部路径,而是开始晚和/或结束早,诸如在“你好”姿势中将手臂从左边挥动到右边。在基本姿势中,它从左边45度至右边45度。但是它可以是从-30°至+30°、或-45°至+30°、或-30°至+45°等等)。

此外,还可以使用以下度量中的至少一些度量来将环境条件参数化:包括光色(黄、白等)的照明条件以及光源形状(诸如,单光源、灯泡、荧光灯、环境光、投影仪等等)。环境还包括背景,尤其是静态背景(水平、单色墙、有色墙、家具等)以及移动背景(动态场景、在运动过程中获取、人群)。

此外,传感器条件也可以基于以下度量中的至少一些度量来参数化:传感器类型(相机、深度传感器、其他感测装置),其中对于相机可以使用以下参数:诸如可见光、单色、红外(ir)等传感器波长范围;旋转/球形快门;传感器分辨率;以及视场(fov)。

根据本发明的一些实施方式,在制造该系统的工厂处,架构师可以通过以下处理将数据库配置成涵盖可能数据库的子集:确定该数据库应该包含姿势和/手势的哪个集合(如果用于训练,则确定一组正例和/或反例);(从以上列表中)确定哪些参数影响对手势/姿势的获取;确定对于此类参数的可能的值/值范围(例如,(渲染和/或从实际用户采样的)肤色和/或衣物类型的样本);典型照明条件。

架构师随后可以继续确定采用的参数组合的集合。该集合可以是手动地、随机地、或通过一些决策过程自动或手动地(例如,这意味着确认每个特定参数表示了至少n次,诸如n=3)确定的全集(所有组合)或子集。

架构师随后可以继续为每个手势/姿势确定“基本”集合,其可以是收集自一个或多个个人、或者是一个或多个综合创建(在模拟和/或建模软件中)、或其组合。应注意的是,在一些实施方式中,不需要真实世界样本。

架构师随后可以继续通过调整先前确定的每一个组合来确定使用共同的或专有的或特殊开发的渲染引擎、手势和/或姿势的变化的渲染。

然后,在操作中,上述数据库可以用于离线训练分类器并在线应用它。此外或替代性地,数据库可以用于通过使用各种最近邻分类的种类(诸如通过测量n维空间中的距离)的在线分类。

根据本发明的一些实施方式,在示例性非限制性使用情况中,计算机处理器310可以被进一步配置成基于样本生成形象(化身),这些样本是(可能经由感测单元50)从一个终端用户(例如用户20)通过应用存储在综合数据库190上的从第二终端用户导出的手势和/或姿势的序列(可能是描述指定舞蹈的序列)获得的。因此,所生成的形象例如可以包括具有第二用户的移动特性和第一用户(例如,用户20)的外观的跳舞人物的综合图像。

为了实现根据本发明的一些实施方式的方法200和400,计算机处理器可以从只读存储器或随机存取存储器或两者接收指令和数据。上述步骤中的至少一个步骤是由与计算机相关联的至少一个处理器执行的。计算机的基本元件是用于执行指令的处理器以及用于储存指令和数据的一个或多个存储器。总体上,计算机还将包括(或操作性地耦接以通信)用于存储数据文件的一个或多个大容量存储装置。适合于有形地体现计算机程序指令和数据的存储模块包括所有形式的非易失性存储器,包括例如半导体存储器装置(例如eprom、eeprom和闪存装置)以及磁光存储装置。

如本领域的技术人员将理解的,本发明的一些方面可以体现为系统、方法或计算机程序产品。因此,本发明的一些方面可以采取以下形式:完全硬件实施方式、完全软件实施方式(包括固件、常驻软件、微代码等)、或者结合软件和硬件方面(在本文中其可全部统称为“电路”、“模块”或“系统”)的实施方式。此外,本发明的一些方面可以采取体现在一个或多个计算机可读介质(其具有包含在其上的计算机可读程序代码)中的计算机程序产品的形式。

可以利用一种或多种计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以例如但不限于是电子、磁性、光学、电磁、红外或半导体的系统、设备、或装置、或者前述的任何合适组合。计算机可读存储介质的更具体实例(非详尽列表)将包括以下内容:具有一根或多根线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、光纤、便携式光盘只读存储器(cd-rom)、光学存储装置、磁性存储装置、或前述的任何合适组合。

在本文的上下文中,计算机可读存储介质可以是可含有或存储由指令执行系统、设备或装置使用或与指令执行系统、设备或装置有关的程序的任何有形介质。

计算机可读信号介质可以包括传播数据信号,其具有在其中(例如以基带或作为载波一部分)体现的计算机可读程序代码。此类传播信号可以采取多种形式中的任何一种,包括但不限于电磁、光学或其任何合适组合。计算机可读信号介质可以是非计算机可读存储介质且可传达、传播或传输由指令执行系统、设备或装置使用或与指令执行系统、设备或装置有关的程序的任何计算机可读介质。

在计算机可读介质上体现的程序代码可以使用任何适当的介质传输,包括但不限于无线、有线、光纤电缆、rf等、或者前述的任何合适组合。

用于执行本发明各方面的操作的计算机程序代码可以用一种或多种编程语言的任何组合来编写,包括诸如java、smalltalk、c++等的面向对象的编程语言和诸如“c”编程语言或类似的编程语言的传统过程编程语言。程序代码可以完全在用户的计算机上、部分地在用户的计算机上作为独立软件包、部分地在用户的计算机上以及部分地在远程计算机上或完全在远程计算机或服务器上执行。在后面一种情况下,远程计算机可以通过包括局域网(lan)或广域网(wan)的任何类型的网络与用户的计算机连接,或者可进行至外部计算机的连接(例如,通过利用互联网服务供应商的互联网)。

以上根据本公开的实施方式参照流程图图示和/或方法、设备(系统)以及计算机程序产品的部分图描述了本发明的一些方面。将理解的是,流程图图示和/或部分图的每个部分以及在流程图图示和/或部分图中的部分的组合可以由计算机程序指令实现。

可以将这些计算机程序指令提供给通用计算机、专用计算机或其他可编程的数据处理设备的处理器,以制造机器,使得这些指令经由计算机或其他可编程的数据处理设备的处理器执行时生成用于实现在流程图和/或部分图的一个或多个部分中规定的功能/行为的设备。

这些计算机程序指令还可以被储存在计算机可读介质内,该计算机可读介质可以引导计算机、其他可编程的数据处理设备、或其他装置通过一种特定的方式运行,使得储存在计算机可读介质内的指令生成制品,该制品包括实现在流程图和/或部分图的一个或多个部分中指定的功能/行为的指令。

计算机程序指令还可以被加载至计算机、其他可编程的数据处理设备、或其他装置上,以使得在计算机、其他可编程的设备、或其他装置上执行的一系列操作步骤生成计算机实现过程,使得在计算机或其他可编程的设备上执行的指令提供用于实现流程图和/或部分图中的一个或多个部分中指定的功能/行为。

上述流程图和附图根据本发明的各种实施方式示出了系统、方法以及计算机程序产品的可能实现方式的架构、功能以及操作。就此而言,在流程图或部分图中的每个部分可以表示代码的模块、区段或部分,其包括用于实现指定的一个或多个逻辑功能的一个或多个可执行指令。还应注意的是,在一些替换的实现方式中,在部分中记录的功能可以按照与在图中记录的顺序不同的顺序发生。例如,根据有关功能,实际上可以基本上同时地执行连续显示的两个部分,或者有时可以按照相反的顺序执行这些部分。还将注意的是,部分图和/或流程图图示的每个部分以及在部分图和/或流程图图示中的部分的组合可以由基于专用硬件的系统实现,这些系统执行指定的功能或行为、或专用硬件和计算机指令的组合。

在上述描述中,实施方式是本发明的实例或实现方式。“一个实施方式”、“实施方式”或“一些实施方式”的各种呈现不一定都指相同的实施方式。

尽管可以在单个实施方式的上下文中描述本发明的各种特征,但是也可以单独地或以任何合适的组合提供这些特征。相反,尽管为了清楚起见在本文中可以在单独的实施方式的上下文中描述本发明,但是本发明也可以在单个实施方式中实现。

说明书中对“一些实施方式”、“实施方式”、“一个实施方式”或“其他实施方式”的参考指的是结合实施方式描述的特定特征、结构或特性包括在本发明的至少一些实施方式中,但不一定是所有实施方式。

将理解的是,本文中采用的措辞和术语不应被解释为是限制性的、而仅用于描述目的。

参考所附描述、附图和实例可以更好地理解本发明的教导的原理和用途。

将理解的是,本文中阐述的细节不解释为对本发明的应用的限制。

此外,将理解的是,本发明可以以各种方式执行或实践,并且本发明可以在除上述描述中概述的实施方式之外的实施方式中实现。

将理解的是,术语“包含”、“包括”、“组成”及其语法变体不排除添加一个或多个组件、特征、步骤或整体或其组,并且这些术语将被解释为指定组件、特征、步骤或整体。

如果说明书或权利要求涉及“额外”元件,则不排除存在多于一个的额外元件。

将理解的是,在权利要求或说明书提及“一(a)”或“一个(an)”元件的情况下,这种参考不应被解释为仅存在一个该元件。

将理解的是,说明书声明“可以(may)”、“可能(might)”、“能够(can)”或“可以(could)”包括部件、特征、结构或特性,并不要求包括特定部分、特征、结构或特性。

在适当情况下,尽管可以使用状态图、流程图或这两者来描述实施方式,但是本发明不限于这些图或对应的描述。例如,流程不需要通过每个所示框或状态来进行、或者与所示出和描述的顺序完全相同的顺序来进行。

本发明的方法可以通过手动地、自动地或者其组合执行或完成选定的步骤或任务来实现。

术语“方法”可以指用于完成给定任务的方式、手段、技术和程序,包括但不限于由本发明所属领域的从业者已知的方式、手段、技术和程序、或者通过已知的方式、手段、技术和程序容易地开发的方式、手段、技术和程序。

在权利要求和说明书中呈现的描述、实例、方法和材料不应被解释为限制性的,而是仅作为说明性的。

除非另有定义,本文中所使用的技术和科学术语的含义通常如本发明所属领域的普通技术人员所理解的。

本发明可以在与本文中所描述的方法和材料等效或类似的方法和材料的测试或实践中实现。

在本文中将在本说明书中提及的任何出版物(包括专利、专利申请和文章)以如同每个单独的出版物被特定地和单独地指出被结合在本文中一样的程度来以其全部内容结合至本说明书中。此外,在本发明的一些实施方式的描述中的任何参考的引用或鉴定不应解释为承认此类参考可作为本发明的现有技术。

虽然已经关于有限数量的实施方式描述了本发明,但是这些实施方式不应被解释为对本发明的范围的限制,而是作为一些优选实施方式的示例。

其他可能的变化、修改和应用也在本发明的范围内。因此,本发明的范围不应受到迄今所描述的内容的限制,而是由所附权利要求及其合法等效物限制。

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