一种人体运动的运动图检索方法

文档序号:6568262阅读:172来源:国知局
专利名称:一种人体运动的运动图检索方法
技术领域
本发明涉及人体运动数据检索方法,属于计算机三维动画技术及多媒体数据处理领域,具体的说,是一种以自组织映射(Self Organization Mapping,简称S0M)方法训练得到运动图并将运动映射到运动图上生成运动图节点序列并进行序列相似度计算的三维人体运动数据检索方法。
背景技术
计算机动画在游戏设计,电影工业和运动模拟等方面发挥着越来越重要的作用。 运动捕获技术在获取真实的人体运动领域也逐渐成为一种广泛应用的技术。随着需求的增加,运动数据库变得越来越庞大,运动捕获数据通常是由大量高维度的数据组成,而且通常不可能也没必要重新采集数据,因此从已有的数据库中有效的检索出需要的运动数据成为了一种必要。相比于其它多媒体检索,三维人体运动检索的一个显著的特点是检索任务多样化。人体运动是由动作以及动作之间的过渡片段构成,而不管是复杂动作还是简单动作,其都是由连续的姿态构成的,而姿态本身则由具有层次关系的人体骨骼之间的旋转产生的。 姿态、动作、运动构成了层次化的人体运动内容,进而,姿态、动作、运动片段也都成为了可检索的单元,即人们既可以以姿态为检索单元,也可以以动作或者运动片段作为检索单元。以运动片段为特征提取和检索基本单元的人体运动检索方法把人体运动仅作为高维时间序列,检索的目的是从运动库中的运动序列中找出包含查询示例的子序列位置, 由于候选子序列的位置可能位于运动时序文件的任意位置,所以以运动片段为检索单元的运动检索一般不在特征提取前对运动进行语义层分割,而是直接对运动时序文件进行特征提取并建立索引。在以运动片段为检索单元的运动检索中,根据对检索运动片段长度的要求,又分为长度受限的运动片段检索以及任意长度的运动片段检索。在长度受限的运动片段检索中,首先需要设定一个最小的运动片段窗口,然后以该窗口为单位进行特征提取,如文献 Faloutsos C, Ranganathan M, Manolopoulos Y. Fast subsequence matching in time-series databases[C]//In Proceedings of 1994 ACM SIGMOD International Conference on Management of Data,1994,419-429 使用傅里叶变换,文献 Chan K, Fu W. Efficient time series matching by wavelets[C]//In Proceedings of the 15thIEEE International Conference on Data Engineering, 1999,126-133 使用 Harr 小波变换、文献 Keogh Ε. , Chakrabarti K, Pazzani Μ, Mehrotra. Locally adaptive dimensionality reduction for indexing large time series databases[C]//In Proceedings of 2001 ACM SIGMOD International Conference on Management of Data, 2001,151-162 使用相邻窗口均值提取运动片段的低维特征并将其存储到高维索引中(R树,K-D树等),检索时,用户提交的查询示例也使用相同大小的窗口进行切分并进行特征提取,最后在特征层上计算查询示例和运动库中运动子序列的相似性。在以任意长度运动片段为检索单元的运动检索中,用户可以从已有的运动示例中选择任意长度的连续姿态提交给检索系统进行查询,当连续姿态的长度为1时,也就实现了以姿态为检索单元的运动检索。文献IChiu C Y,Chao S P, Wu Ming yang, et al. Content-based retrieval for human motion data[J]. Journal of Visual Communication and Image Representation, 2004,15 (3) :446-466 禾口文献 2Chao S P, Chiu C Y, Chao J H, et al. Motion retrieval and synthesis based on posture features indexing[C]//Proceedings of the 5th International Conference on Computational Intelligence and Multimedia Applications(ICCIMA 2003). Washington,2003, 266-271 对运动库中的所有姿态使用SOM无监督学习方法进行聚类,学习后每个姿态都归属到一个特定的聚类类别中,聚类类别也就成为姿态的特征表示;文献3Liu G D,Zhang J D, Wang W, et al. A system for analyzing and indexing human motion databases[C]// Proceedings of ACM SIGMOD International Conference on Management of Data, Baltimore, 2005,924-926首先通过PFA得到主要标记点,然而使用PCA对库中的所有姿态进行分段线性表示和索引,最终通过每个姿态所在的分段线性标识来表示整个运动。在这些运动表示方法中,由于运动时序文件中的相邻帧往往具有相同的特征值,这就使得运动时序文件被分割为具有相同特征值的运动片段,该分割方法是一种自适应的分割方法, 这样运动检索就可以直接以运动片段为单位进行,从而也就实现了任意长度的运动片段检索° 此夕卜,文献 4Forbes K, Fiume Ε. An efficient search algorithm for motion data using weighted PCA[C]//Proc of Euro graphics/ACM SIGGRAPH Symposium on Computer Animation, 2005,67-76使用weighted PCA数据降维方法,在低维空间上得到了每个姿态的低维表示,检索时首先得到检索示例的特征姿态,然后在低维空间得到候选种子点, 在使用DTW进行相似度匹配时,由于受到种子点以及单调性和非退化性的限制,候选序列的长度也就自适应的匹配了查询示例的长度,从而实现了任意长度的运动片段检索。文献 5Kovar L,Gleicher M,Pighin F. Automated Extraction and Parameterization of Motions in Large Data Sets[J]. ACM Transactions on Graphics (S0730-0301),2004, 23(3) :559-568预先计算运动数据库中的相似匹配网络,检索时,同样使用DTW算法进行相似度匹配,从而实现了逻辑上相似的运动片段检索,但是,使用DTW算法进行运动相似度匹配的时间消耗还是比较大,对于大型运动数据库的检索来说效率不高。
总起来说,对于三维人体运动检索来说,有效的运动表示方法以及有效的相似度计算策略对于整个检索过程来说是非常重要的,它直接影响到整个检索过程的效率。

发明内容
发明目的本发明所要解决的技术问题是针对现有技术的不足,提供一种人体运动的运动图检索方法。技术方案本发明公开了一种人体运动的运动图检索方法,包括以下步骤步骤1,离线运动图描述空间生成根据人体骨骼关节模型,提取运动数据库中的每一帧姿态作为基本单元,组成样本库;所述运动数据库为一组以上由连续的帧姿态表示的运动(可以采用BVH文件格式的数据)构成的数据库;所述人体骨骼关节模型包含人体对个关节点;所述姿态包括所有人体骨骼关节;将人体骨骼关节分别组合成8个部分,包括全身关节点、上半身关节点、下半身关节点、左上肢关节点、右上肢关节点、左下肢关节点、右下肢关节点、躯干关节点;将样本库中所有姿态根据上述8个部分,分别计算每个部分相对于根关节的三维空间坐标,获得8个样本特征向量集;对每个样本特征向量集进行自组织映射(Self Organization Mapping,简称SOM) 迭代学习,得到8个运动图,所述运动图为二维网格结构,每个网格点表示一个姿态;将8个运动图组合为运动图描述空间;步骤2,在线运动数据库检索用户提交查询实例,所述查询实例为由连续的帧姿态表示的一个运动;运动特征提取对查询实例和运动数据库中的运动,分别计算每一帧姿态中各关节相对于根关节的三维空间坐标,提取运动特征,即提取三维空间坐标组成的向量;运动图层次选择从所述运动图描述空间中选择一个运动图作为当前运动图;运动图特征映射根据当前运动图,将查询实例的运动特征和运动数据库中运动的运动特征分别转化为最优匹配单元序列(Best Matching Unit,简称BMU);所述最优匹配单元为当前运动图下的整数坐标值;运动串生成对查询实例的最优匹配单元序列和运动数据库中的运动的最优匹配单元序列分别提取关键最优匹配单元组成关键最优匹配单元序列;所述关键最优匹配单元序列即为运动串;相似度计算在当前运动图下,计算查询实例的运动串和运动数据库中运动的运动串的相似度,获得分量相似度值;对运动图描述空间中的所有8个运动图依次进行运动图层次选择、运动图特征映射、运动串生成以及相似度计算,分别得到8个分量相似度值;将8个分量相似度值进行累加,获得查询实例与运动数据库中一个运动的总量相似度值;步骤3,将查询实例与运动数据库中每一个运动分别进行步骤2,获得一组对应的总量相似度值,按照总量相似度值的大小由高到低排序,输出每个总量相似度值对应的运动数据库中的运动。本发明所述步骤1中,对每个样本特征向量集进行自组织映射迭代学习,包括以下步骤步骤11,选择姿态集设定姿态集初始为空,从样本特征向量集中选择一个样本特征向量,计算选择的样本特征向量与已经加入到姿态集中每个样本特征向量欧氏距离,如果所有的欧氏距离均超过一定阈值(欧式距离的阈值可以设为10 30, 优选为20)或者当前姿态集为空,则将此样本特征向量加入到姿态集中,得到姿态集 Ψ = {φ φ2,...,φ,,...φη},% e沢3";其中,Ψ为姿态集,η为姿态集中样本特征向量的个数, %为姿态集中任意一个样本特征向量,k为姿态集中任意一个样本特征向量的序号,识 为样本特征向量的维度,识为实数,J为人体骨骼关节中8个部分中一个部分的关节总个数;步骤12,迭代学习初始化初始化二维网格构成的运动图Me沢^1…2,运动图中
的每个网格点对应一个权值向量e^3",初始化权值向量为0,总迭代次数T,其中,N1 和N2分别为运动图X轴及Y轴的网格数,i和j分别为运动图X轴及Y轴坐标,Hiiij为运动图(i,j)坐标位置的权值向量;步骤13,重复执行T次步骤13a和步骤13b,获得一个运动图;步骤13a,选择最优匹配单元从姿态集中随机选取一个%,遍历当前运动图寻找最优匹配单元,具体为对运动图中每个网格点计算
mp,q = min{i/(^,wi; 7)},:= -w,,y|,其中,唞%,,7)为%与mi,j的欧氏距离,为的最小值,mi, 」为运动图(i,j)坐标位置的权值向量,P和q分别为运动图中与%具有最小欧式距离的权值向量所在的网格点的X轴及Y轴坐标,HIp,,为运动图(p,q)坐标位置的权值向量;步骤13b,权值向量更新对运动图中的每个网格点坐标(i,j)计算邻域不等式
^(i-pf + U-qf <4^+N22*(\.0-tlT),如果不等式成立,则更新权值向量,更新公式为
( + l) = ⑴+久々)[%- ⑴],其中,t = 1,2. 3, ... , T为当前迭代的次数,IIiij J (t)
和分别为t和t+Ι次迭代的运动图(i,j)坐标位置的权值向量,h^.a)为邻域调整函数,公式如下
权利要求
1.一种人体运动的运动图检索方法,其特征在于,包括以下步骤步骤1,离线运动图描述空间生成根据人体骨骼关节模型,提取运动数据库中的每一帧姿态作为基本单元,组成样本库;所述运动数据库为一组以上由连续的帧姿态表示的运动构成的数据库;所述人体骨骼关节模型包含人体M个关节点;所述姿态包括所有人体骨骼关节;将人体骨骼关节分别组合成8个部分,包括全身关节点、上半身关节点、下半身关节点、左上肢关节点、右上肢关节点、左下肢关节点、右下肢关节点、躯干关节点;将样本库中所有姿态根据上述8个部分,分别计算每个部分相对于根关节的三维空间坐标,获得8个样本特征向量集;对每个样本特征向量集进行自组织映射迭代学习,得到8个运动图,所述运动图为二维网格结构,每个网格点表示一个姿态; 将8个运动图组合为运动图描述空间;步骤2,在线运动数据库检索用户提交查询实例,所述查询实例为由连续的帧姿态表示的一个运动;运动特征提取对查询实例和运动数据库中的运动,分别计算每一帧姿态中各关节相对于根关节的三维空间坐标,提取运动特征,即提取三维空间坐标组成的向量; 运动图层次选择从所述运动图描述空间中选择一个运动图作为当前运动图; 运动图特征映射根据当前运动图,将查询实例的运动特征和运动数据库中运动的运动特征分别转化为最优匹配单元序列;所述最优匹配单元为当前运动图下的整数坐标值;运动串生成对查询实例的最优匹配单元序列和运动数据库中的运动的最优匹配单元序列分别提取关键最优匹配单元组成关键最优匹配单元序列;所述关键最优匹配单元序列即为运动串;相似度计算在当前运动图下,计算查询实例的运动串和运动数据库中运动的运动串的相似度,获得分量相似度值;对运动图描述空间中的所有8个运动图依次进行运动图层次选择、运动图特征映射、 运动串生成以及相似度计算,分别得到8个分量相似度值;将8个分量相似度值进行累加,获得查询实例与运动数据库中一个运动的总量相似度值;步骤3,将查询实例与运动数据库中每一个运动分别进行步骤2,获得一组对应的总量相似度值,按照总量相似度值的大小由高到低排序,输出每个总量相似度值对应的运动数据库中的运动。
2.根据权利要求1所述的一种人体运动的运动图检索方法,其特征在于,所述步骤1中对每个样本特征向量集进行自组织映射迭代学习,包括以下步骤步骤11,选择姿态集设定姿态集初始为空,从样本特征向量集中选择一个样本特征向量,计算选择的样本特征向量与已经加入到姿态集中每个样本特征向量欧氏距离,如果所有的欧氏距离均超过一定阈值或者当前姿态集为空,则将此样本特征向量加入到姿态集中,得到姿态集Ψ =㈣, ,...,Uj,其中,Ψ为姿态集,η为姿态集中样本特征向量的个数,%为姿态集中任意一个样本特征向量,k为姿态集中任意一个样本特征向量的序号,为样本特征向量的维度,91为实数,J为人体骨骼关节中8个部分中一个部分的关节总个数;步骤12,迭代学习初始化初始化二维网格构成的运动图Me,运动图中的每个网格点对应一个权值向量e ,初始化权值向量为0,总迭代次数τ,其中,N1和N2分别为运动图X轴及Y轴的网格数,i和j分别为运动图X轴及Y轴坐标,为运动图(i, j)坐标位置的权值向量;步骤13,重复执行T次步骤13a和步骤13b,获得一个运动图;步骤13a,选择最优匹配单元从姿态集中随机选取一个姿态%,遍历当前运动图寻找最优匹配单元,具体为对运动图中每个网格点计算Wipg =min{t/(%,,,》}"(%,/W,,y):=|%-m,,y|,其中,唞%,,7)为%与HIi, j的欧氏距离,为的最小值,mi j为运动图(i,j)坐标位置的权值向量,P和q分别为运动图中与姿态%具有最小欧式距离的权值向量所在的网格点的X轴及Y轴坐标,Hip,,为运动图(P,q)坐标位置的权值向量;步骤13b,权值向量更新对运动图中的每个网格点坐标(i,j)计算邻域不等式^(i-pf + U-qf <^+N22*(\.0-t!T),如果不等式成立,则更新权值向量,更新公式为 ( + l) = ⑴+久々)[%- ⑴],其中,t = 1,2. 3, ... , T为当前迭代的次数,Hiij J (t)和分别为t和t+Ι次迭代的运动图(i,j)坐标位置的权值向量,h^.a)为邻域调整函数。
3.根据权利要求2所述的一种人体运动的运动图检索方法,其特征在于,所述步骤2中运动图特征映射步骤如下步骤211,对查询实例的运动特征和运动数据库中运动的运动特征分别执行如下步骤步骤211a,将运动特征命名为Motion,Motion = (P1, P2, . . . , P1, . . . , Pj,选择当前运动图对应的人体骨骼关节中8个部分中一个部分的关节的运动特征Motion' =P' 1; P' 2,...,P' !,...,P' J,其中,P1为全部M个关节的三维空间坐标组成的向量,P' χ 为只包含人体骨骼关节中8个部分中一个部分的关节的三维空间坐标组成的向量,1为运动特征中任意一个三维空间坐标组成的向量的序号,L为运动特征中三维空间坐标组成的向量的个数;步骤21 lb JiMotion'中的每个P'工,遍历当前运动图M寻找与P'工具有最小欧式距离的权值向量,计算公式为mPjq = min{d(P' Hii, ρ },d(P' 1; Hiijj) = | |p' ^miijII,其中,d(P' ^miJ为P' 1与叫,」的欧氏距离,P' i在当前运动图下得到的最优匹配单元为 BMUi = (p*N2+q);步骤211c,计算运动特征Motion'中每个P' i的最优匹配单元,将运动表示成最优匹配单元序列;步骤212,将由查询实例的运动特征和运动数据库中运动的运动特征得到的两个最优匹配单元序列分别命名为MBMUL1和MBMUL2。
4.根据权利要求3所述的一种人体运动的运动图检索方法,其特征在于,所述运动串生成步骤如下对查询实例的最优匹配单元序列MBMUL1中的每个最优匹配单元,检查当前最优匹配单元在最优匹配单元序列MBMUL1中相邻的前一个最优匹配单元,如果前一个最优匹配单元与当前最优匹配单元不同,则当前最优匹配单元为最优匹配单元序列MBMUL1中的关键最优匹配单元,提取最优匹配单元序列MBMUL1中所有的关键最优匹配单元组成关键最优匹配单元序列,生成的运动串即为关键最优匹配单元序列,将最优匹配单元序列MBMUL1生成的运动串命名为运动串MSA。对运动数据库中的运动的最优匹配单元序列MBMUL2中的每个最优匹配单元,检查当前最优匹配单元在最优匹配单元序列MBMUL2中相邻的前一个最优匹配单元,如果前一个最优匹配单元与当前最优匹配单元不同,则当前最优匹配单元为最优匹配单元序列MBMUL2中的关键最优匹配单元,提取最优匹配单元序列MBMUL2中所有的关键最优匹配单元组成关键最优匹配单元序列,生成的运动串即为关键最优匹配单元序列,将最优匹配单元序列MBMUL2 生成的运动串命名为运动串MSB。
5.根据权利要求4所述的一种人体运动的运动图检索方法,其特征在于,计算查询实例的运动串和运动数据库中运动的运动串的相似度,获得分量相似度值,包括以下步骤步骤221,建立一个二维相似度矩阵SW ^沢㈦+…㈣+11,矩阵元素值为实数,初始化二维相似度矩阵的第一行和第一列矩阵元素值为0,其中LA为查询实例的运动串MSA长度,LB 为运动数据库中运动的运动串MSB长度;步骤222,设置行下标r从1至LA,列下标c从1至LB,对二维相似度矩阵的行为r列为 c 的矩阵元素,计算 4 个数值 Sim1 (r, c)、sim2(r, c)、sim3(r, c)、sim4(r, c),选择 Sim1Cr, c)、Sim2 (r, c)、Sim3 (r, c)和sim4(r, c)中的最大值作为当前矩阵元素的数值; 步骤223,寻找二维相似度矩阵中最大的矩阵元素值作为分量相似度值。
6.根据权利要求2所述的一种人体运动的运动图检索方法,其特征在于,所述邻域调整函数采用高斯函数,公式如下L 冲)exp(-(卜 H〈i)2),1(0 (t)其中,exp()为指数函数,α (t)为第t次迭代的学习率函数,计算公式为 (0 = 0.8* (1.0--^-),6*Τω (t)为第t次迭代的核宽函数,计算公式为 ⑴= 0.25^^+12)41.0-1^
7.根据权利要求5所述的一种人体运动的运动图检索方法,其特征在于,所述对二维相似度矩阵的每个矩阵元素,计算4个数值,公式如下Sim1 (r, c) = 0,Sim2(r,c) = SM[r -l][c-l] + a(BMUrMSA,BMUcmsb), sim3 (r,c) = SM[r-l] [c]-5. 0, sim4 (r,c) = SM[r] [c_l]-5. 0,其中,Sim1 (r,c)、sim2 (r,c)、sim3(r,c)和 sim4(r,c)为 4 个数值,SM[r-l] [c_l]为二维相似度矩阵第r-1行c-1列的矩阵元素值,SM[r-l] [c]为二维相似度矩阵第r_l行c列的矩阵元素值,SM[r] [c-1]为二维相似度矩阵第r行c-1列的矩阵元素值,SMfZi^ 为查询实例的运动串MSA中第r个最优匹配单元,SMfT^s为运动数据库中运动的运动串MSB中第c个最优匹配单元,SMfZi^5)为计算查询实例的运动串MSA中第r 个最优匹配单元与运动数据库中运动的运动串MSB中第c个最优匹配单元的距离函数, SMfZ^ij)的计算公式为
全文摘要
本发明公开了一种人体运动的运动图检索方法,包括以下步骤步骤1,离线运动图描述空间生成;步骤2,在线运动数据库检索用户提交查询实例,包括运动特征提取,运动图层次选择,运动图特征映射,运动串生成,相似度计算;步骤3,将查询实例与运动数据库中每一个运动分别进行步骤2,获得一组对应的总量相似度值,按照总量相似度值的大小由高到低排序,输出每个总量相似度值对应的运动数据库中的运动。本发明的优点在于1、将运动图引入到运动数据检索中,大大降低了原始高维数据的维度,降低了运动数据中的噪音数据的影响,同时能够较好的保持运动的特性;2、降低了相似度计算的复杂度;3、提出了运动图描述空间。
文档编号G06F17/30GK102508867SQ201110306170
公开日2012年6月20日 申请日期2011年10月9日 优先权日2011年10月9日
发明者周杰, 孙正兴, 陈松乐 申请人:南京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1