基于静态帧的部件运动性预测方法与流程

文档序号:13283880阅读:184来源:国知局
基于静态帧的部件运动性预测方法与流程

本发明是关于三维物体功能性预测技术,特别是关于一种基于静态帧的部件运动性预测方法。



背景技术:

目前,在形状分析研究领域,研究从三维物体的几何和交互中获得其功能性的理解不断增多。在这一背景下,一个物体的功能性是通过分析人类或虚拟主体是如何与该物体进行可能的交互,以及邻近物体是如何从几何上与该物体相关得到的。通常,这类知识是从物体及其周围环境的静态帧中获得,例如:一个人坐在一张椅子上或桌子上摆放着几个物体。在最初的尝试中,pirk等人[1]通过捕获和分析动态物体的轨迹,如运动主体尝试坐在椅子上的动作轨迹,来描述了物体的功能性。然而,先前所有的这些工作,其中心物体仍维保持其刚性。

为了解决上述问题,现有技术采用了来自静态帧中的物体功能性分析方法,具体包括如下几种:基于功能可见性的方法模拟了人预测物体的功能性[2][3],或者识别场景中能让人执行特定动作的区域[4][5]。利用交互上下文描述子[6]和为不同类别物体学习出的功能性模型[7]进行分析,这两种方法考虑了更一般的物体与物体之间的交互。

虽然上述的部分方法([2][3][4][5])中包含了人类的动态交互,但并没有扩展到更一般的物体功能可见性类型中。而上述部分方法([6][7])中,物体到物体的交互本质上都是静态的。

为了解决上述问题,现有技术还采用了来自动态交互的物体功能性分析方法。其中,pirk等人[1]实现了从动态交互数据中预测功能性,通过分析动态交互来描述一个静态物体的功能性,例如:在喝咖啡时,一个杯子是如何被使用的。该方法中被分析的物体自身并不是动态的,因而他们的分析实现在物体层次,也不是本发明中的部件层次。另外,也有一系列工作的目标在于捕获动态交互,如kry和dinesh[8]提出了捕获手部交互的细节的方法。该方法专注于使用特殊的硬件来捕获交互,而并没有利用动作信息来表达功能性。在这,还有一些关于捕获工具的功能性工作[9]或者表达一般人类交互的工作[10]。然而这些工作的关注点在于识别,所以导出的功能性表达的目的并不是为了分类和转译部件的运动性。

为了解决上述问题,现有技术还进行室内场景中的部件运动性分析。sharf等人[11]建立了一个运动树结构来概括室内场景中物体或部件的支持关系以及它们之间相对的运动性。该方法中,首先,输入的场景分析用于搜索重复的物体或部件。然后,对给定的一个模型以独特的设置进行检测,该方法检测出模型可能包含的运动。

该方法中的一个局限是依赖于输入场景中重复模型的出现,并以不同的运动状态出现,例如:处于打开或闭合状态的抽屉。因此,检测出的运动性不能被简单地转移到场景中没有出现过的物体,因为运动都是对于每个实例被单独地检测出来的。

参考文献(如专利/论文/标准)

[1]pirks,krsv,huk,etal.understandingandexploitingobjectinteractionlandscapes[j].arxivpreprintarxiv:1609.08685,2016.

[2]grabnerh,gallj,vangooll.whatmakesachairachair?[c]//computervisionandpatternrecognition(cvpr),2011ieeeconferenceon.ieee,2011:1529-1536.

[3]kimvg,chaudhuris,guibasl,etal.shape2pose:human-centricshapeanalysis[j].acmtransactionsongraphics(tog),2014,33(4):120.

[4]savvam,changax,hanrahanp,etal.scenegrok:inferringactionmapsin3denvironments[j].acmtransactionsongraphics(tog),2014,33(6):212.

[5]savvam,changax,hanrahanp,etal.pigraphs:learninginteractionsnapshotsfromobservations[j].acmtransactionsongraphics(tog),2016,35(4):139.

[6]hur,zhuc,vankaicko,etal.interactioncontext(icon):towardsageometricfunctionalitydescriptor[j].acmtransactionsongraphics(tog),2015,34(4):83.

[7]hur,vankaicko,wub,etal.learninghowobjectsfunctionviaco-analysisofinteractions[j].acmtransactionsongraphics(tog),2016,35(4):47.

[8]krypg,paidk.interactioncaptureandsynthesis[c]//acmtransactionsongraphics(tog).acm,2006,25(3):872-880.

[9]zhuy,zhaoy,chunzhus.understandingtools:task-orientedobjectmodeling,learningandrecognition[c]//proceedingsoftheieeeconferenceoncomputervisionandpatternrecognition.2015:2855-2864.

[10]weip,zhaoy,zhengn,etal.modeling4dhuman-objectinteractionsforjointeventsegmentation,recognition,andobjectlocalization[j].ieeetransactionsonpatternanalysisandmachineintelligence,2016.

[11]sharfa,huangh,liangc,etal.mobility‐treesforindoorscenesmanipulation[c]//computergraphicsforum.2014,33(1):2-14.

[12]schultzm,joachimst.learningadistancemetricfromrelativecomparisons[c]//nips.2003,1:2.

[13]fishn,averkioum,vankaicko,etal.meta-representationofshapefamilies[j].acmtransactionsongraphics(tog),2014,33(4):34.



技术实现要素:

本发明实施例提供了一种基于静态帧的部件运动性预测方法,以通过少数运动单元的静态帧学习出运动性模型,预测出现在物体静态帧上静态部件的运动。

为了实现上述目的,本发明实施例提供了一种基于静态帧的部件运动性预测方法,包括:

根据物体的运动方式在一组分割为多个独立几何部件的三维形状中的每一三维形状中构建出多个运动单元,并根据运动类型对所有运动单元进行划分,所述运动单元中包括多个静态帧,所述运动类型的划分基于运动参数;所述运动参数包括:运动类型、候选轴的方向参数、候选轴的位置参数及范围参数;

计算每一运动单元中静态帧的帧描述子,所述帧描述子以多个多维的几何特征表示,描述了静态帧中的运动部件与参考部件的交互及所述运动部件与参考部件的位置关系;

根据运动单元的每一运动类型,利用度量学习方法,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数;

根据待查询的静态帧,利用所述距离函数选择与所述待查询的静态帧距离值最小的运动单元,得到该运动单元及其运动类型;

根据所述待查询的静态帧及得到的运动单元及其运动类型生成多组候选的运动,对所述候选的运动进行采样,得到可应用于所述待查询的静态帧的最佳运动参数。

一实施例中,所述运动单元中的多个静态帧中包括初始静态帧及末尾静态帧。

一实施例中,还包括:根据运动部件的运动时间对所述运动单元中的多个静态帧进行排序。

一实施例中,所述运动参数包括:运动类型、平移轴或旋转轴的主方向、平移轴或旋转轴所处的位置、运动范围。

一实施例中,计算每一运动单元中静态帧的静态帧描述子,包括:

利用交互二分面捕获运动部件与参考部件的交互及部件表面与所述交互二分面相关联的交互区域;

利用关系增强图像描述子表示运动部件与参考部件间的相对位置关系。

一实施例中,利用关系增强图像描述子表示运动部件与参考部件间的相对位置关系,包括:

将关系增强图像描述子在二维中的像素替换成三维中的体素,并将二维中的圆替扩展为三维中的球体;

使用三维空间中三个相互正交的平面对球体的空间进行分割,并按球体的半径将球踢划分为内部球体和外部球体,得到16个空间划分。

一实施例中,根据运动单元的每一运动类型,利用度量学习方法,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数,包括:

采用度量学习方法,在两种类型约束条件下,根据运动单元中静态帧的几何特征,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数;所述约束条件包括:

静态帧与相同运动类型的运动单元之间的距离应更近于到其它不同运动类型的运动单元之间的距离;

静态帧与相同运动类型的运动单元之间的距离应该小于静态帧与不同运动类型的运动单元之间的距离。

一实施例中,还包括:根据运动单元的运动类型将相似的运动单元进行分组。

一实施例中,还包括:构建静态帧到运动单元的距离模型:

其中,分别是运动单元uj的初始静态帧和末尾静态帧,m表示每一个运动单元中静态帧的数量,为运动单元中任一静态帧,是每一个运动单元中两个静态帧之间的距离。

一实施例中,根据待查询的静态帧,利用所述距离函数选择与所述待查询的静态帧距离值最小的运动单元,得到该运动单元及其运动类型,包括:

利用所述距离模型比较所述待查询的静态帧到构建出的运动单元的距离,选择与所述待查询的静态帧距离值最小的运动单元。

一实施例中,根据所述待查询的静态帧及得到的运动单元及其运动类型生成多组候选的运动,对所述候选的运动进行采样,得到可应用于所述待查询的静态帧的最佳运动参数,包括:

根据所述待查询的静态帧生成初始候选的运动参数;

根据所述初始候选的运动参数,生成出多个候选的运动,采样出每个运动的一组静态帧;

计算每一组静态帧中静态帧到预测出的运动单元之间的距离之和,通过距离最小的一组静态帧确定最佳运动参数;

利用所述最佳运动参数定义所述待查询的静态帧的运动。

一实施例中,所述最佳运动参数的运动类型与所预测的运动单元的运动类型一致。

一实施例中,根据所述初始候选的运动参数,生成出多个候选的运动,采样出每个运动的一组静态帧,包括:

利用不同的候选轴,为所述待查询的静态帧生成额外的静态帧;

将所述额外的静态帧基于运动轴和变换类型在所述待查询的静态帧的两侧进行扩展;

对扩展之后的静态帧进行有效性判断;

将扩展之后得到的有效的静态帧组合为每个运动的一组静态帧。

一实施例中,将所述额外的静态帧基于运动轴和变换类型在所述待查询的静态帧的两侧进行扩展,包括:

对于平移运动,从所述待查询的静态帧开始将运动部件沿着平移轴的两个可能方向进行平移运动;

对于旋转运动,围绕所述待查询的静态帧上的旋转轴让部件按着两个旋转方向进行旋转。

一实施例中,对扩展之后的静态帧进行有效性判断,包括:

对于运动部件与参考部件碰撞的情况,判断大部分的交互局限是否在参考部件的交互区域上,如果是,则静态帧有效;

对于运动部件与参考部件没有碰撞的情况,判断运动部件和参考部件之间最近距离是否小于设定阈值的两倍,如果是,则该静态帧有效。

为了实现上述目的,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

根据物体的运动方式在一组分割为多个独立几何部件的三维形状中的每一三维形状中构建出多个运动单元,并根据运动类型对所有运动单元进行划分,所述运动单元中包括多个静态帧,所述运动类型的划分基于运动参数;所述运动参数包括:运动类型、候选轴的方向参数、候选轴的位置参数及范围参数;

计算每一运动单元中静态帧的帧描述子,所述帧描述子以多个多维的几何特征表示,描述了静态帧中的运动部件与参考部件的交互及所述运动部件与参考部件的位置关系;

根据运动单元的每一运动类型,利用度量学习方法,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数;

根据待查询的静态帧,利用所述距离函数选择与所述待查询的静态帧距离值最小的运动单元,得到该运动单元及其运动类型;

根据所述待查询的静态帧及得到的运动单元及其运动类型生成多组候选的运动,对所述候选的运动进行采样,得到可应用于所述待查询的静态帧的最佳运动参数。

为了实现上述目的,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

根据物体的运动方式对一组三维形状中的每一个三维形状中构建出多个运动单元,并根据运动类型对所有运动单元进行划分,每一三维形状分割已为多个独立几何部件,所述运动单元中包括多个静态帧,所述运动类型的划分基于运动参数,所述运动参数包括:运动类型、候选轴的方向参数、候选轴的位置参数及范围参数;

计算每一运动单元中静态帧的帧描述子,所述帧描述子以多个多维的几何特征表示,描述了静态帧中的运动部件与参考部件的交互及所述运动部件与参考部件的位置关系;

根据运动单元的每一运动类型,利用度量学习方法,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数;

根据待查询的静态帧,利用所述距离函数选择与所述待查询的静态帧距离值最小的运动单元,得到该运动单元及其运动类型;

根据所述待查询的静态帧及得到的运动单元及其运动类型生成多组候选的运动,对所述候选的运动进行采样,得到可应用于所述待查询的静态帧的最佳运动参数。

利用本发明,可以通过少数运动单元的静态帧学习出运动性模型,预测出现在物体静态帧上静态部件的运动。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例的静态帧的部件运动性预测总体流程图;

图2为本发明实施例基于静态帧的部件运动性预测方法流程图;

图3为本发明实施例训练数据的设置示意图;

图4为本发明实施例将训练运动单元数据根据运动类型的分类示意图;

图5a至图5c为本发明实施例学习和预测部件运动性的过程示意图;

图6a为本发明实施例一个静态帧和两个运动单元之间的类型1约束示意图;

图6b为本发明实施例一个静态帧和两个运动单元之间的类型2约束示意图;

图7为本发明实施例挑选出的聚类样例示意图;

图8为本发明实施例利用运动类型的聚类来下采样约束的示意图;

图9为本发明实施例利用本发明中的动态部件运动性模型对静态帧进行运动预测的结果示意图;

图10为本发明实施例的运动转移方法流程图;

图11为本发明实施例采样运动的静态帧的方法流程图;

图12为本发明实施例的候选轴选择示意图;

图13通过为本发明实施例为每一个静态帧预测出正确的运动类型的示例图。

具体实施方式

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

本发明实施例的目的之一是学习出一个三维动态部件运动性模型。当仅给定一个部件的静态构型,该模型能被用于预测未知部件的运动性。为此,本发明要寻找一个关于静态帧到动态运动类型的直接映射,称之为s-d映射。计算该s-d映射的困难在于需要考虑部件运动的多样性和部件各种可能的几何差异。即使是相同的运动类型,也会有不同的几何显示和不同的部件结构。简单的通过静态帧寻找几何上的相似性将意味着需要存储所有可能的几何外形类型及其空间和当前的结构,这是不可行的。

为了降低难度,并观察到日常许多部件的运动性在不同空间中展现出某种形式的线性变化,例如:抽屉在空间域中是线性的平移,铰链处的旋转则在角度空间中呈线性关系。这样的线性关系使得从一些静态帧中描述并学习部件的运动性成为可能。对于一个部件的运动,通常只需要起始和末尾的静态帧就足以定义。因此,依赖于这样的线性关系,运动中间状态的特性可被简化为运动过程中的某个状态到始末动作状态的距离之和是接近不变的。

通过学习三维动态部件运动性模型,可以使得能对动态的功能性进行理解,其中,动态的功能性是由三维物体中一个或多个部件的运动所描述。具体地,学习出的动态部件的运动性模型,能从三维空间中相关部件空间构型的单一静态帧预测出部件的运动性。本发明的训练数据包含一组运动单元,每个运动单元包含一对三维物体的部件,连同用例包含通常2到4个静态帧以捕获运动单元在空间中的不同状态。这里的关键是学习出一个从静态帧到动态单元的映射。利用日常生活大多数物体部件运动的线性变化特性,本发明定义了一个具有意义的静态帧到运动单元的距离,运动单元中的多个静态帧中包括初始静态帧及末尾静态帧,该距离是静态帧到运动单元初始和末尾两帧的距离之和。此外,静态帧到静态帧的距离被定义为一组几何描述子,这些描述子的权重可以基于运动且通过度量学习得到。

本发明学习出的动态部件运动性模型,可以从静态帧中预测到部件的运动性。训练数据包含一组运动单元,每个运动单元包含一对三维物体的部件(一个运动部件,一个作为运动参照的参考部件),连同用例包含通常2到4个静态帧以捕获运动单元在空间中的不同状态。对于运动预测的关键是学习出s-d映射,且不仅仅依赖于几何上的相似性。该映射需要度量出某个物体的一个查询静态帧到某个物体上的运动单元的距离。本发明将静态帧到运动单元的距离定义为一个查询静态帧到目标单元的初始和末尾静态帧的距离。在运动性在某个空间中呈线性变化的假定下,对于相似的运动类型应该会有相似的距离和。因此,定义一个静态帧到运动单元的距离问题将转换为定义一个具有意义的静态帧之间的距离。

本发明中将使用一组几何描述子去定义静态帧到到静态帧之间的距离,例如:用于编码部件在空间中的相对位置关系。然而,线性关系假定中每一种运动类型会在不同的运动空间。若对所有的运动单元类型使用相同距离度量和让描述子使用统一的权重,会得到不理想的预测结果。在本发明的方法中,对几何描述子使用了不同的权重,能定义出一个接近于真实运动空间的距离。为此,以监督的方式使用度量学习(metriclearning)的方法为每一种运动类型定义了根据运动的描述子权重。在预测的过程中,本发明将根据学习出的静态帧与静态帧之间的距离度量,以及线性关系假定下导出的静态帧到运动单元的距离度量,将给定的一个静态帧映射到训练数据集中的一个运动单元。图1是本发明实施例的部件运动性预测总体流程图。

本发明部件运动性预测方法分为模型的训练阶段,以及使用模型来推导出部件运动性的预测阶段,下面具体说明。

图2为本发明实施例基于静态帧的部件运动性预测方法流程图,如图2所示,该部件运动性预测方法包括:

s201:根据物体的运动方式在一组分割为多个独立几何部件的三维形状中的每一三维形状中构建出多个运动单元,并根据运动类型对所有运动单元进行划分,所述运动单元中包括多个静态帧,所述运动类型的划分基于运动参数;所述运动参数包括:运动类型、候选轴的方向参数、候选轴的位置参数及范围参数。

s202:计算每一运动单元中静态帧的帧描述子,所述帧描述子以多个多维的几何特征表示,描述了静态帧中的运动部件与参考部件的交互及所述运动部件与参考部件的位置关系;

s203:根据运动单元的每一运动类型,利用度量学习方法,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数;

s204:根据待查询的静态帧,利用所述距离函数选择与所述待查询的静态帧距离值最小的运动单元,得到该运动单元及其运动类型;

s205:根据所述待查询的静态帧及得到的运动单元及其运动类型生成多组候选的运动,对所述候选的运动进行采样,得到可应用于所述待查询的静态帧的最佳运动参数。

通过图2所述的方法,可以通过少数运动单元的静态帧学习出运动性模型,预测出现在物体静态帧上静态部件的运动。

s201属于模型的训练阶段,训练阶段的输入是一组分割为多个独立几何部件的三维形状。所有的部件分组到运动单元之中,且每个运动单元由一个运动部件和一个参考部件组成,例如:一个抽屉在移动的过程中,家具框架部分将作为该运动的参考。完整的输入包含了一系列运动单元的静态构型,即在此称之为静态帧。静态帧由不同的运动状态得到,例如:完全打开的抽屉,半开的抽屉等等。输入中的一个例子如图3所示,给定一个分割过的形状,如图3左上方桌子所示,随后可通过将部件配对(运动部件与参考部件配对)定义出一些运动单元(如图3第一行所示),在图3所示的第二行中展示了某个运动单元的几个静态帧。这里需要确保运动单元中包含了初始和末尾静态帧,并假设已知每一个静态帧对应的原始运动单元,且运动单元中的静态帧根据部件的运动按时间排序。在本发明实施例中,也将输入的运动单元进行了一个大致的运动类型分类,例如:转轮,滑盖,旋盖等等,以建立出基于用户指引的模型。对于运动单元的任何分类方式都可适应本发明中的流程框架,然而具体到本发明中的数据集,分类方式将基于运动的参数。这些包含了运动单元标签的参数将能帮助到随后将运动转移的过程。这些参数包括:运动类型(平移“t”,旋转“r”,或平移结合旋转“tr”)、平移或旋转轴的主方向(水平“h”,垂直“v”)、轴所处的位置(接近于中心“c”或靠近其中一条边“s”)、运动范围。本发明中用到的数据集涵盖了日常生活中大量不同的运动,并利用了上述参数将运动单元分为8类。在图4中为每一种运动类型展示了一个运动单元的例子。该分类方式将作为本发明的部件运动性预测方法的初始的分类。参考图4中文本标签,每一个运动类型都展示了一个运动单元例子。

下面描述三维动态部件运动性模型及本发明的部件运动性预测过程。

三维动态部件运动性模型由训练集中的运动单元表达和能将静态帧映射到动态单元的s-d映(指的是关于静态帧到动态运动类型的直接映射)射构成。每种运动类型的s-d映射是通过度量学习的方式从训练数据中得到。然后,给定一个包含一对部件的静态帧,利用s-d映射来预测运动部件所能支持的运动。具体地,本发明按照最近邻的分类方法,计算出静态帧到训练数据中不同运动单元的距离,并利用为每种运动类型所学习出的静态帧到运动单元距离度量,挑选出距离值最小的运动单元。随后,将运动单元上的运动转移到静态帧上。

图5a至图5c是本发明实施例学习和预测部件运动性的过程示意图。给定由多个静态帧组成的不同运动类型的运动单元(图5a),本发明学习出了一个由每个运动单元始末静态帧和s-d映射功能组成的部件运动性模型,如图5b所示。给定一个查询形状,如图5b的底部所示,首先通过s-d映射在训练数据中找到最相似的运动单元,然后将该运动单元上的运动转移到查询形状上,如图5c中的第一列所示。图5c中也展示了运动转移的例子。

一实施例中,s202包括如下步骤:

利用交互二分面捕获运动部件与参考部件的交互及部件表面与所述交互二分面相关联的交互区域;

利用关系增强图像描述子表示运动部件与参考部件间的相对位置关系。具体实施时,包括:

将关系增强图像描述子在二维中的像素替换成三维中的体素,并将二维中的圆替扩展为三维中的球体;

使用三维空间中三个相互正交的平面对球体的空间进行分割,并按球体的半径将球踢划分为内部球体和外部球体,得到16个空间划分。

s202为s-d映射步骤,具体地,定义s-d映射的关键是运动呈线性变化的概念。一个运动的线性关系使得能确定出每个运动单元的初始静态帧和末尾静态帧。而且,依据运动的线性关系,中间任一静态帧到始末两个静态帧的距离之和大致保持不变。因此,计算一个查询静态帧到一个运动单元的初始静态帧和末尾静态帧的距离之和提供了一个具有意义的静态帧到运动单元距离,例如:所有来自于同一个运动单元的静态帧到自身运动单元的距离都维持不变。利用该假定,定义静态帧到运动单元的问题将简化为找到静态帧之间一个合适的距离度量。

获得s-d映射的第一步是学习出两个静态帧之间的距离度量。为了确保对未知的静态帧能作出准确的运动预测,本发明为每种运动类型学习了一个独立的局度量。下面,将给出更多用于方法中不同距离度量的细节。

静态帧描述子

本发明中使用了一系列描述子来表达一个静态帧中运动部件和参考部件的结构外形。首先,利用交互二分面(interactionbisectorsurfaceibs)捕获两个部件间的交互。该交互二分面是两个物体之间计算得出维诺图(voronoidiagram)的子集,捕获到的是物体相互交互的空间区域。此外,部件外形的几何外形也与它们的运动有关,因此也捕获了物体表面上与交互二分面相关联的区域,称之为交互区域(interactionregionsir)。

同时,本发明中也使用了关系增强图像描述子(relation-augmentedimagedescriptorraid)来表示部件间的相对位置关系。但为了让关系增强图像描述子能适应到本发明方法中的设定,这里将其从二维扩展到了三维。具体是在构建过程中将二维中的像素替换成三维中的体素,将二维中的圆替扩展为三维中的球体。对于每个球体的空间分割,使用了三个正规平面对三维空间进行划分,得到8个空间的划分。按球体的半径又划分为内部球体和外部球体,最终一共得到16个空间划分。与原工作相比,本发明处在一个更高的维度,所以在直方图的计算时,采样点数从10000改为40000,并将对比描述子的方式从l1矩阵(l1metric)改为地动距离(earth-mover’sdistance)。

距离的度量

本发明将在使用运动性模型的过程中定义三个距离度量。

(1)静态帧到静态帧的距离。两个静态帧之间的距离是n个独立描述子的权重组合的距离:

其中,是两个静态帧si和sj之间关于第f个描述子的距离,该距离归一化到范围[0,1]之间,wf∈w是描述子f的权重,处于范围[0,1]之间,且∑fwf=1。因为权重之和为1,也因此在范围[0,1]之间。注意到该距离取决于所选择的权重w,若选择不同的权重,将会得到不同的距离度量。

(2)静态帧到运动单元的距离。该距离结合了上述所定义的静态帧之间的距离和线性关系假定,度量的是一个静态帧到一个运动单元的距离:

其中,是运动单元uj的初始和末尾静态帧,m是用来表示每一个运动单元中静态帧的数量。静态帧到运动单元的距离是用于s-d映射中的主要工具,而s-d映射会用于计算一个静态帧到训练数据中的运动单元的距离以及选择距离静态帧最近的运动单元。注意到,在计算静态帧到静态帧之间的距离ds时,将对运动单元uj使用学习出的权重wj。

(3)运动单元到运动单元的距离。在本发明中也同时定义了两个运动单元之间的距离,该距离被用于将相似类型的运动单元进行聚类(聚类将在下述描述):

需要注意的是,运动单元到运动单元的距离是非对称的,因为当计算dsu时,考虑的是运动单元ui的静态帧和为运动单元uj学习出的权重wj。

一实施例中,s203具体实施时,需要采用度量学习方法,在两种类型约束条件下,根据运动单元中静态帧的几何特征,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数。

为了对每个运动类型学习出一个准确的距离函数,在本发明中将对输入的运动单元按多个运动类型进行分类,并为每种运动类型学习出了特定的距离函数。本发明将静态帧之间的距离定义为几何描述子权重组合的距离,再根据运动单元的类型学习出几何描述子的最佳组合。运动性模型因此会成为每种运动类型的静态帧距离度量的组合,并包括运动单元中由一组几何描述子表示的初始静态帧和末尾静态帧。

s203的目的是为每个运动类型学习出不同的权重集,因为对于不同的运动类型,用不同的描述子能更好地进行描述。静态帧之间距离ds的权重w,是从训练数据中的静态帧的一组约束和静态帧的具体类型中学习得到。在学习权重的过程中,也考虑了权重在比较静态帧与运动单元之间距离dsu时的影响。因此,学习过程中的约束确保了相同类型的静态帧和运动单元之间的距离会比其它运动类型的静态帧和运动单元的距离更近。在本发明的方法中将通过两种类型的约束来实现此目的。

假设有三个静态帧{si,sj,sk},它们每一个来自于不同的运动单元ui,uj和uk。假设ui和uj属于同一种运动类别,uk属于其它的运动类别。类型1约束(如图6a所示)表达的是静态帧(如sj)与相同运动类型的运动单元(如ui)之间的距离应更近于到其它不同运动类型的运动单元(如uk)之间的距离。因此,可以导出比较静态帧到两个不同运动单元的一个约束:

dsu(sj,ui)<dsu(sj,uk)

类型2约束(如图6b所示)表达了与运动单元相同类型的静态帧之间的距离应该小于与运动单元不同类型的静态帧之间的距离。因此,可以导出比较两个静态帧到同一个运动单元的一个约束:

dsu(sj,ui)<dsu(sk,ui)

运动单元的聚类

若训练数据庞大,约束的数量可能会在实际距离学习的过程中变得过高。因此,本发明将系统的下采样约束到一个易处理的数量。为了实施下采样,首先,根据输入的运动类型将相似的运动单元进行分组,如图7所示,根据运动单元距离度量进行相似传播聚类后得到的结果,每一行代表着一个聚类。注意到一个聚类中的运动单元能有着相似的运动类型和部件交互,而最后一行的聚类只有运动部件的运动和几何外形是相似的。这使得能通过对类别定义约束从而减少约束的数量,其中聚类的数量会远小于运动单元的数量。

聚类的实现在本发明中将使用相似传播(affinitypropagation)聚类方法,该方法的优势在于它不依赖于一个理想的初始预测值来产生合理的聚类结果,且该方法可自动地基于运动单元间的距离和每一个单元成为聚类中心的估计得到聚类的数量。这里将该运动单元的估计设置为一个运动单元到训练集中所有其它运动单元的距离的中值。聚类过程的最终输出是为每一个运动类型对运动单元的聚类,并选择其中一个运动单元作为聚类中心,该聚类中心将随后被用于定义约束。

约束的下采样

为了在数据库中定义任一运动单元uj中的静态帧sj的约束,这里选择ui作为与uj同一个聚类的中心,并用uk表示不同运动类型的其中一个聚类中心,如图8所示,每一个运动类型用一个方框表示,运动类型中的运动单元的聚类用着色的圆形表示,其中聚类的中心用十字标记。对于给定一个运动单元uj中的静态帧,用到的唯一的约束限于和运动单元的聚类中心ui和其它运动类型的聚类中心(如uk)。因为本发明中使用了最近邻分类方法来定义s-d映射,该最近邻分类方法已足够确保任一静态帧与其聚类中心保持最近。因此,本发明中并不对静态帧和其它相同运动类型的聚类中心之间使用额外的约束。该下采样的过程大幅度减少了约束的总数。

优化

本发明使用了上述定义的约束,并用schultz和joachims提出的相似方法[12]来学习出距离度量,其中主要的区别在于本发明中约束了关于每一个运动类型的权重总和为1。

s204具体实施时,可以利用所述距离模型比较所述待查询的静态帧到构建出的运动单元的距离,选择与所述待查询的静态帧距离值最小的运动单元,对于给定一个来自于未知运动单元的查询静态帧,为了对其实现运动预测,在本发明中使用了上述定义的静态帧到运动单元的距离公式来比较查询帧q到训练数据中运动单元的距离,并选出与查询静态帧q最为相似的运动单元u,如图9所示,可以观察到动态部件运动性模型不仅考虑了模型的几何外形,还考虑了部件可拥有的正确运动。

随后,才能将运动单元u中的运动转移到查询静态帧q的部件上。

s205为运动转移步骤,运动转移的目标是找到一系列查询静态帧q的运动参数,使得与运动单元u的运动参数一致,且适应于q中部件的几何外形。

运动转移过程的大致思路是:为查询静态帧q生成一些候选运动参数,并从中挑选出最匹配于运动单元u的候选参数。具体是根据u的运动参数对q采样候选参数。为了验证匹配程度,本发明根据候选参数所定义出来的运动将为q生成额外的静态帧,并根据静态帧到运动单元的距离计算方式,计算这些静态帧到运动单元u的距离。最终,挑选出得到距离最小的参数,再用其定义静态帧q的运动。

一实施例中,如图10所示,s205具体实施时,包括如下步骤:

s1001:根据所述待查询的静态帧生成初始候选的运动参数;

为了生成q的运动参数候选集,本发明会依次决定四个运动参数中的每一个。首先,所有候选的变换类型应该与u的变换类型一致。

对于候选轴,在本发明中首先利用了fish等人的方法[13]计算出q中运动部件的均匀对称有向包围盒(orientedboundingboxobb)。随后,基于u的轴方向“水平”或“垂直”标签,obb的每条边将提供一个对于平移或旋转运动的候选方向。假设所有的输入模型的朝向都是垂直向上,所以通过计算边的方向与垂直向上之间的角度,边的方向可被简单地分类为垂直或水平两类。

对于每一个候选轴方向,本发明基于u的轴位置标签,进一步对多个候选位置进行采样。对于“侧方”的轴,将取所有obb平行于候选方向的边和边的中心来决定轴的位置。对于“中心”的轴,具体是从两个点用来生成两个经过这两个点的候选轴挑选。其中一个点是obb的中心,另外一个点是在运动部件上交互区域的权重中心,该权重中心根据形状上可能属于交互区域的点的权重计算得到。候选轴的选择过程如图12所示,图中展示了对于运动轴,如何分别采样出基于静态帧中运动部件的有向包围盒和交互区域的不同候选轴,并选择出对于查询形状的最佳候选轴作为运动轴。

而对于变换的范围,由于形状都是非对齐的,便无法直接将u的运动范围转移到q上。对于旋转运动,旋转角度的范围用起始和末尾之间角度的不同来定义。对于平移运动,范围是通过运动的起始和结束位置所构成的平移向量的长度来定义的。其中,会计算出范围与运动部件沿着u的运动方向投影长度的比例。然后q的最终范围应为运动部件沿候选轴的投影长度,并以上述比例缩放。

s1002:根据所述初始候选的运动参数,生成出多个候选的运动,采样出每个运动的一组静态帧;

s1003:计算每一组静态帧中静态帧到预测出的运动单元之间的距离之和,通过距离最小的一组静态帧确定最佳运动参数;

s1004:利用所述最佳运动参数定义所述待查询的静态帧的运动。

一实施例中,所述最佳运动参数的运动类型与所预测的运动单元的运动类型一致。

一实施例中,如图11所示,s1002包括:

s1101:利用不同的候选轴,为所述待查询的静态帧生成额外的静态帧;

s1102:将所述额外的静态帧基于运动轴和变换类型在所述待查询的静态帧的两侧进行扩展;

s1103:对扩展之后的静态帧进行有效性判断;

s1104:将扩展之后得到的有效的静态帧组合为每个运动的一组静态帧。

s1102具体实施时,可以根据旋转运动及平移运动分别进行。

对于平移运动,从所述待查询的静态帧开始将运动部件沿着平移轴的两个可能方向进行平移运动;

对于旋转运动,围绕所述待查询的静态帧上的旋转轴让部件按着两个旋转方向进行旋转。

具体地,为了对一个候选轴为q生成额外的静态帧,本发明将q作为运动的中间状态,并基于运动轴和变换类型在q的“两侧”进行扩展。也就是要么从q开始将运动部件沿着平移轴的两个可能方向进行平移运动,要么围绕q上的旋转轴让部件按着两个旋转方向进行旋转。

利用不同的候选轴,为所述待查询的静态帧生成额外的静态帧,所述额外的静态帧基于运动轴和变换类型在所述待查询的静态帧的“两侧”进行扩展。所述扩展方式,对于平移运动,从所述待查询的静态帧开始将运动部件沿着平移轴的两个可能方向进行平移运动。对于旋转运动,围绕所述待查询的静态帧上的旋转轴让部件按着两个旋转方向进行旋转。

在对所述待查询的静态帧扩展的过程中,对几何外形会创建出额外的静态帧以检验新采样的静态帧是否正确有效。具体地,先从采样间隔l开始,并创建出沿所述待查询的静态帧的每一侧方向且与所述待查询的静态帧距离为l的静态帧。该静态帧的创建对于平移运动是将运动部件沿平移轴和采样方向平移距离l,对于旋转运动是将运动部件绕旋转轴旋转l度。随后,当一个静态帧是正确有效时,则尝试沿着其方向继续扩展,直到不能执行更多的扩展为止。

s1103具体实施时,对扩展之后的静态帧进行有效性判断可以从碰撞及没有碰撞两种情况进行区分:

对于运动部件与参考部件碰撞的情况,判断大部分的交互局限是否在参考部件的交互区域上,如果是,则静态帧有效;

对于运动部件与参考部件没有碰撞的情况,判断运动部件和参考部件之间最近距离是否小于设定阈值的两倍,如果是,则该静态帧有效。

在运动过程中,运动部件依然与参考部件保持连接且部件之间没有大量相交,则认为该静态帧是有效的。更详细来说,静态帧在以下两种情况下视为有效:

(1)若两个部件碰撞,大部分的交互局限在参考部件的交互区域上。

(2)若两个部件没有碰撞,运动部件和参考部件应该尽可能地接近。查询静态帧中运动部件与参考部件之间最近的距离,可为相近的约束给出一个合理的阈值。在本发明中,若新生成静态帧中运动部件和参考部件的距离没有超过该阈值的两倍,则该静态帧被认为是正确有效的。若阈值为0,则部件在运动过程中应该保持连接。

本发明提出了一个部件运动性模型和基于度量学习的一种监督方法来学习该模型。这里展示了能通过少数运动单元的静态帧学习出该模运动性模型,而不是利用密集的静态帧序列来捕获运动单元的运动。另外,通过详细的分析可为模型的部件创建出有意义的运动性。这使得产生许多应用,包括运动预测,运动驱动的物体检测,以及运动层级建立。该模型的关键部分是将静态帧映射到动态运动单元的s-d映射,它能被用于预测出现在一个物体静态帧上的静态部件对的运动。

通过本发明中的技术方法,能从单一的静态帧中准确地预测出部件的运动性。关于运动性预测的一个直接应用便是运动性转移,也就是给定一个静态帧,每一个检索出来的运动单元都能将其部件的运动转移到输入静态帧中合适的部件上,如图13所示,在图中,旋转和平移的变换轴由虚线表示,运动方向用箭头标出。本发明中的预测模型也能产生一些其它应用,例如:三维场景中运动驱动的物体检测。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

根据物体的运动方式在一组分割为多个独立几何部件的三维形状中的每一三维形状中构建出多个运动单元,并根据运动类型对所有运动单元进行划分,所述运动单元中包括多个静态帧,所述运动类型的划分基于运动参数;所述运动参数包括:运动类型、候选轴的方向参数、候选轴的位置参数及范围参数;

计算每一运动单元中静态帧的帧描述子,所述帧描述子以多个多维的几何特征表示,描述了静态帧中的运动部件与参考部件的交互及所述运动部件与参考部件的位置关系;

根据运动单元的每一运动类型,利用度量学习方法,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数;

根据待查询的静态帧,利用所述距离函数选择与所述待查询的静态帧距离值最小的运动单元,得到该运动单元及其运动类型;

根据所述待查询的静态帧及得到的运动单元及其运动类型生成多组候选的运动,对所述候选的运动进行采样,得到可应用于所述待查询的静态帧的最佳运动参数。

本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

根据物体的运动方式对一组三维形状中的每一个三维形状中构建出多个运动单元,并根据运动类型对所有运动单元进行划分,每一三维形状分割已为多个独立几何部件,所述运动单元中包括多个静态帧,所述运动类型的划分基于运动参数,所述运动参数包括:运动类型、候选轴的方向参数、候选轴的位置参数及范围参数;

计算每一运动单元中静态帧的帧描述子,所述帧描述子以多个多维的几何特征表示,描述了静态帧中的运动部件与参考部件的交互及所述运动部件与参考部件的位置关系;

根据运动单元的每一运动类型,利用度量学习方法,学习出每一运动类型的运动单元中的静态帧到不同运动单元的距离函数;

根据待查询的静态帧,利用所述距离函数选择与所述待查询的静态帧距离值最小的运动单元,得到该运动单元及其运动类型;

根据所述待查询的静态帧及得到的运动单元及其运动类型生成多组候选的运动,对所述候选的运动进行采样,得到可应用于所述待查询的静态帧的最佳运动参数。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

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