CN101276370B - 基于关键帧的三维人体运动数据检索方法 - Google Patents

基于关键帧的三维人体运动数据检索方法 Download PDF

Info

Publication number
CN101276370B
CN101276370B CN200810059128XA CN200810059128A CN101276370B CN 101276370 B CN101276370 B CN 101276370B CN 200810059128X A CN200810059128X A CN 200810059128XA CN 200810059128 A CN200810059128 A CN 200810059128A CN 101276370 B CN101276370 B CN 101276370B
Authority
CN
China
Prior art keywords
centerdot
frame
key frame
distance matrix
searched
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN200810059128XA
Other languages
English (en)
Other versions
CN101276370A (zh
Inventor
肖俊
庄越挺
吴飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CN200810059128XA priority Critical patent/CN101276370B/zh
Publication of CN101276370A publication Critical patent/CN101276370A/zh
Application granted granted Critical
Publication of CN101276370B publication Critical patent/CN101276370B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种基于关键帧的三维人体运动数据检索方法。包括以下步骤:(1)基于检索样例与待检索三维人体运动数据关键帧序列建立距离矩阵;(2)在距离矩阵中检测局部极小值并标记为待搜索区域;(3)在距离矩阵待检索区域中采用优化方法搜索一条对应路径计算两段运动数据之间的相似度。本发明不需要依赖于对数据库中的已有运动数据预先计算索引结构,同时也不需要用户手工指定任何参数,这对于大型三维人体运动数据库或者是增量式运动数据库非常适用。

Description

基于关键帧的三维人体运动数据检索方法
技术领域
本发明涉及计算机三维动画技术及多媒体数据处理领域,尤其涉及一种基于关键帧的三维人体运动数据检索方法。
背景技术
近年来随着运动捕获设备的广泛使用,生成大量具有真实感的三维人体运动数据,这些数据被广泛应用于计算机游戏、动画生成及医学仿真等多个领域并已经出现了大型三维人体运动数据库,因此为了便于动画师能够快速获取所需的三维人体运动数据片断,对运动数据库进行基于样例的检索是非常有用的。
在ACM图形学汇刊2005年第三期中(2005,24(3):677-685)公布的方法采用一组量化特征用于描述人体关节点之间的几何关系,并以此特征为基础对三维人体运动数据流进行时间轴上的切分。通过引入时空无关的特征表示方法及自适应的运动序列切分技术,实现了大规模运动数据库中灵活高效的基于内容的运动片断索引与检索技术。该方法定义的特征能够对人体姿态的几何特点进行明确的描述,但是所需要的特征数量太大,并且根据这些特征所生成的索引结构需要随着数据库的变化而更新。
在期刊《Visual Communication and Image Representation》2004年第三期中(2004,15(3):446-466)公布了一种方法,采用仿射变量姿态特征(affine variantposture feature)并且基于自组织图(Self-Organizing Map,SOM)聚类算法为运动数据片断建立索引。在进行相似度匹配时,提交样例的首尾帧用于从索引图中选择候选运动片断,进而采用动态时间变形算法对相似度进行计算。该方法基于聚类算法构建索引,在检索时提高了效率,但是对于增量式的运动数据库,索引更新比较频繁且耗时。
在ACM计算机动画论坛2004年论文集中(Proceedings of ACMSIGGRAPH/Eurographics Symposium on Computer Animation 2004,pp.259-266)公布了一种采用基于图像的用户界面进行运动数据检索,把具有代表性的运动帧生成缩略图映射到自组织图上并以此为线索进行相似姿态的运动数据检索。通过这种方式,用户可以通过在自组织图上选择运动片断的首尾帧从而获得想要的运动数据片断。该方法的主要贡献在于提供了一种友好的基于图像的用户操作界面用户运动数据检索,但是对于用户而言需要花一定的时间来选择合适的姿态缩略图作为检索样例,因此在操作上需要较多的时间。
从目前公布的用于运动数据检索的方法来看,可以分为以下几类:
1)直接计算两个运动数据片断之间的欧拉距离:在这类方法中,DTW算法用于将不同运动数据片断的时间轴进行对齐。但是DTW算法较为耗时,而且根据一些学者的观点,DTW仅能解决数据的局部缩放对齐问题;
2)基于聚类的方法:这类方法将数据库中的所有运动数据帧聚类成若干子集,然后用这些子集对其中的运动序列进行索引,但是在这类方法中,聚类子集或者是索引需要随着数据库中数据的变化而得到更新,这是一个耗时的过程;
3)基于特征的方法:这类方法定义几何特征用于对人体关节点的相对位置关系进行描述,特征能够对人体姿态的几何特点进行明确的描述,但是所需要的特征数量太大,并且根据这些特征所生成的索引结构需要随着数据库的变化而更新。
发明内容
本发明为克服上述现有方法的不足,提供了一种高效、准确的三维人体运动数据检索方法。
基于关键帧的三维人体运动数据检索方法包括以下步骤:
(1)基于检索样例与待检索三维人体运动数据关键帧序列建立距离矩阵;
(2)在距离矩阵中检测局部极小值并标记为待搜索区域;
(3)在距离矩阵待检索区域中采用优化方法搜索一条对应路径计算两段运动数据之间的相似度。
所述的基于检索样例与待检索三维人体运动数据关键帧序列建立距离矩阵:给定两个关键帧集合,采用如下计算帧间距离并构建帧间距离矩阵M:
M = d 11 d 12 · · · d 1 j · · · d 1 n d 21 d 22 · · · d 2 j · · · d 2 n · · · · · · · · · · · · · · · · · · d i 1 d j 2 · · · d ij · · · d in · · · · · · · · · · · · · · · · · · d m 1 d m 2 · · · d mj · · · d mn
其中dij表示第一个关键帧集合中的第i帧与第二个关键帧集合中的第j帧的帧间距离,帧间距离采用如下公式计算:
D ( F , Q ) ≡ Σ i m m i w i ( f i - q i ) 2
其中F,Q是两段待匹配的运动片断,fi和qi分别是帧F和Q中第i个关节点的位置向量,m是人体骨架模型上的关节数,mi是对应于关节点i的蒙板值,这是一个布尔变量,如果mi的值为0,则相应的关节点i就不参与姿态的相似度计算。
所述的检测关键帧距离矩阵中的局部极小值构成待搜索区域:在构建好的距离矩阵中,当一个元素在垂直或者水平方向上是局部最小值且小于某个阈值ε时,就被标注为局部相似关键帧对,局部相似帧对构成了距离矩阵中的待搜索区域,其中ε定义如下:
ϵ = MAX ( d ij ) - MIN ( d ij ) 2
其中MAX(dij)和MIN(dij)分别是该距离矩阵所有元素中的最大、最小值。
所述的在距离矩阵待检索区域中采用优化方法搜索一条对应路径计算两段运动数据之间的相似度:基于距离矩阵及检测到的局部相似帧对,就可以确定关键帧集合之间的时间对应关系,直观上来看就是在矩阵的待搜索区域内寻找一条从左上角到右下角的路径,使得路径上的每个点都是事先检测到的局部相似帧对,且要使这条路径上所有点的和最小。
本发明不需要依赖于对数据库中的已有运动数据预先计算索引结构,同时也不需要用户手工指定任何参数,这对于大型三维人体运动数据库或者是增量式运动数据库非常适用。
附图说明
图1是基于关键帧距离矩阵的运动序列相似度匹配示意图;
图2是对“走路”运动序列进行检索的结果图;
图3是对“跳跃”运动序列进行检索的结果图。
具体实施方式
基于关键帧的三维人体运动数据检索方法包括以下步骤:
(1)基于检索样例与待检索三维人体运动数据关键帧序列建立距离矩阵;
(2)在距离矩阵中检测局部极小值并标记为待搜索区域;
(3)在距离矩阵待检索区域中采用优化方法搜索一条对应路径计算两段运动数据之间的相似度。
所述的基于检索样例与待检索三维人体运动数据关键帧序列建立距离矩阵:给定两个关键帧集合,采用如下计算帧间距离并构建帧间距离矩阵M:
M = d 11 d 12 · · · d 1 j · · · d 1 n d 21 d 22 · · · d 2 j · · · d 2 n · · · · · · · · · · · · · · · · · · d i 1 d j 2 · · · d ij · · · d in · · · · · · · · · · · · · · · · · · d m 1 d m 2 · · · d mj · · · d mn
其中dij表示第一个关键帧集合中的第i帧与第二个关键帧集合中的第j帧的帧间距离,帧间距离采用如下公式计算:
D ( F , Q ) ≡ Σ i m m i w i ( f i - q i ) 2
其中F,Q是两段待匹配的运动片断,fi和qi分别是帧F和Q中第i个关节点的位置向量,m是人体骨架模型上的关节数,mi是对应于关节点i的蒙板值,这是一个布尔变量,如果mi的值为0,则相应的关节点i就不参与姿态的相似度计算。
所述的检测关键帧距离矩阵中的局部极小值构成待搜索区域:在构建好的距离矩阵中,当一个元素在垂直或者水平方向上是局部最小值且小于某个阈值ε时,就被标注为局部相似关键帧对,局部相似帧对构成了距离矩阵中的待搜索区域,其中ε定义如下:
ϵ = MAX ( d ij ) - MIN ( d ij ) 2
其中MAX(dij)和MIN(dij)分别是该距离矩阵所有元素中的最大、最小值。
所述的在距离矩阵待检索区域中采用优化方法搜索一条对应路径计算两段运动数据之间的相似度:基于距离矩阵及检测到的局部相似帧对,就可以确定关键帧集合之间的时间对应关系,直观上来看就是在矩阵的待搜索区域内寻找一条从左上角到右下角的路径,使得路径上的每个点都是事先检测到的局部相似帧对,且要使这条路径上所有点的和最小。
详细讲解实施方法如下:
第一步:构建距离矩阵
采用关键帧提取算法为用户提交的“走路”运动样例提取关键帧序列,得到9个关键帧,对应于图1中横轴所示的Motion 1。
对于数据库中待检索的某段运动数据,提取关键帧序列,得到8个关键帧,对应于图1中纵轴所示的Motion 2。
分别计算两段运动数据两两关键帧之间的距离并构建距离矩阵M,见图1中颜色深浅不一的小方格所构成的矩阵,颜色越深表示对应两帧之间的相似度越高。距离矩阵M的计算方法如下:
M = d 11 d 12 · · · d 1 j · · · d 1 n d 21 d 22 · · · d 2 j · · · d 2 n · · · · · · · · · · · · · · · · · · d i 1 d j 2 · · · d ij · · · d in · · · · · · · · · · · · · · · · · · d m 1 d m 2 · · · d mj · · · d mn
其中dij表示第一个关键帧集合中的第i帧与第二个关键帧集合中的第j帧的帧间距离,帧间距离采用如下公式计算:
3 D ( F , Q ) ≡ Σ i m m i w i ( f i - q i ) 2
其中F,Q是两段待匹配的运动片断,fi和qi分别是帧F和Q中第i个关节点的位置向量,m是人体骨架模型上的关节数,mi是对应于关节点i的蒙板值,这是一个布尔变量,如果mi的值为0,则相应的关节点i就不参与姿态的相似度计算。
第二步:确定相似帧匹配路径搜索区域
当一个元素在垂直或者水平方向上是局部最小值且小于某个阈值ε时,就被标注为局部相似关键帧对,局部相似帧对构成了距离矩阵中的待搜索区域,其中ε定义如下:
ϵ = MAX ( d ij ) - MIN ( d ij ) 2
其中MAX(dij)和MIN(dij)分别是该距离矩阵所有元素中的最大、最小值。对于图1中所示的距离矩阵,得到的搜索区域标记为浅黄色。
第三步:相似帧匹配对应路径搜索
基于距离矩阵及检测到的局部相似帧对实际上就是确定关键帧集合之间的时间对应关系,直观上来看就是在矩阵的待搜索区域内寻找一条从左上角到右下角的路径,使得路径上的每个点都是事先检测到的局部相似帧对,且要使这条路径上所有点的和最小。对于图1中检测得到的搜索区域,可以搜索得到一条从左上角到右下角贯穿整个矩阵的对应路径,如图1中的实现所示。
如果存在这样一条对应路径,说明两段运动数据具有一定相似性,则以对应路径上的所有元素的平均值作为其相似度并返回给用户。如果对应路径不存在,则说明两段运动序列不相似。
对于一个完整的人体运动数据库,如下伪代码可以清楚的描述整个运动检索过程:
Input:Q:query example   //Q是用户数据的检索样例
     S:keyframe sets extractedfrom motion database  //S是对数据库中所有已有运动数据分别提取关键
                                                     //帧之后的数据集合
M:motion database                                   //M表示整个运动数据库
KF=ExtractKF(Q);       //为用户输入的检索样例提取关键帧序列KF
k=1;
for each keyframe set KSet(i)in S        //对数据库中每一段运动数据的关键帧集合,进行如下
                                         //操作
    DM=DistMat(KF,KSet(i))             //在检索样例关键帧序列与当前待检索运动数据的关键
                                         //帧序列之间构建距离矩阵
    LMC=LocalMinCell(DM);              //检测局部相似帧对
                                           4
    ValidRegion=ExtendVR(LMC)           //以局部相似帧对为种子适当扩展待搜索区域
    Path=PathFind(DM,ValidRegion);    //搜索对应路径
    if(Path is not NULL)                 //如果路径存在,进行如下操作
      Candidate(k).motion=M(i);        //将当前运动数据加入到命中列表中
      Candidate(k).similarity=CalSimilarity(Path);//计算相似度
      k++;                                         //转到下一个运动数据片断
    end;
  end;
Sort(Candidate);//对检索结果进行排序并返回给用户

Claims (3)

1.一种基于关键帧的三维人体运动数据检索方法,其特征在于包括以下步骤:
(1)基于检索样例与待检索三维人体运动数据关键帧集合建立距离矩阵;
(2)在距离矩阵中检测局部最小值并标记为待搜索区域;
(3)在距离矩阵待搜索区域中采用优化方法搜索一条对应路径计算两段运动数据之间的相似度;
所述的在距离矩阵中检测局部最小值并标记为待搜索区域的步骤,包括在构建好的距离矩阵中,当一个元素在垂直或者水平方向上是局部最小值且小于某个阈值ε时,就被标注为局部相似帧对,局部相似帧对构成了待搜索区域,其中ε定义如下:
ϵ = MAX ( d ij ) - MIN ( d ij ) 2
其中MAX(dij)和MIN(dij)分别是该距离矩阵所有元素中的最大、最小值,dij表示第一个关键帧集合中的第i帧与第二个关键帧集合中的第j帧的帧间距离。
2.根据权利要求1所述的一种基于关键帧的三维人体运动数据检索方法,其特征在于所述的基于检索样例与待检索三维人体运动数据关键帧集合建立距离矩阵的步骤,包括给定两个关键帧集合,采用如下计算帧间距离并构建帧间距离矩阵M:
M = d 11 d 12 · · · d 1 j · · · d 1 n d 21 d 22 · · · d 2 j · · · d 2 n · · · · · · · · · · · · · · · · · · d i 1 d j 2 · · · d ij · · · d in · · · · · · · · · · · · · · · · · · d m 1 d m 2 · · · d mj · · · d mn
其中dij表示第一个关键帧集合中的第i帧与第二个关键帧集合中的第j帧的帧间距离,帧间距离采用如下公式计算:
D ( F , Q ) ≡ Σ i m m i w i ( f i - q i ) 2
其中F,Q是两段待匹配的运动片断,fi和qi分别是帧F和Q中第i个关节点的位置向量,m是人体骨架模型上的关节数,mi是对应于关节点i的蒙板值,mi是一个布尔变量,如果mi的值为0,则相应的关节点i就不参与姿态的相似度计算。
3.根据权利要求1所述的一种基于关键帧的三维人体运动数据检索方法,其特征在于所述的在距离矩阵待搜索区域中采用优化方法搜索一条对应路径计算两段运动数据之间的相似度的步骤,包括基于距离矩阵及检测到的局部相似帧对,就可以确定关键帧集合之间的时间对应关系,就是在矩阵的待搜索区域内寻找一条从左上角到右下角的路径,使得路径上的每个点都是事先检测到的局部相似帧对,且要使这条路径上所有距离矩阵元素的和最小。
CN200810059128XA 2008-01-14 2008-01-14 基于关键帧的三维人体运动数据检索方法 Expired - Fee Related CN101276370B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810059128XA CN101276370B (zh) 2008-01-14 2008-01-14 基于关键帧的三维人体运动数据检索方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810059128XA CN101276370B (zh) 2008-01-14 2008-01-14 基于关键帧的三维人体运动数据检索方法

Publications (2)

Publication Number Publication Date
CN101276370A CN101276370A (zh) 2008-10-01
CN101276370B true CN101276370B (zh) 2010-10-13

Family

ID=39995816

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810059128XA Expired - Fee Related CN101276370B (zh) 2008-01-14 2008-01-14 基于关键帧的三维人体运动数据检索方法

Country Status (1)

Country Link
CN (1) CN101276370B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102184541B (zh) * 2011-05-04 2012-09-05 西安电子科技大学 多目标优化人体运动跟踪方法
CN102508867B (zh) * 2011-10-09 2013-04-24 南京大学 一种人体运动的运动图检索方法
CN104899248A (zh) * 2015-04-24 2015-09-09 济南大学 一种通用的运动捕获数据检索方法
CN105224669B (zh) * 2015-10-10 2018-11-30 浙江大学 一种基于gmm语义特征的运动检索方法
CN105653638A (zh) * 2015-12-28 2016-06-08 北京像素软件科技股份有限公司 一种运动检索方法和装置
CN110232727A (zh) * 2019-04-22 2019-09-13 浙江工商大学 一种连续姿态动作评估智能算法
CN113408455B (zh) * 2021-06-29 2022-11-29 山东大学 一种基于多流信息增强图卷积网络的动作识别方法、系统及存储介质
CN114393575B (zh) * 2021-12-17 2024-04-02 重庆特斯联智慧科技股份有限公司 基于用户姿势高效能识别的机器人控制方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5909218A (en) * 1996-04-25 1999-06-01 Matsushita Electric Industrial Co., Ltd. Transmitter-receiver of three-dimensional skeleton structure motions and method thereof
CN1710614A (zh) * 2005-06-16 2005-12-21 上海交通大学 基于模型的人肢体三维运动参数估计方法
CN1747559A (zh) * 2005-07-29 2006-03-15 北京大学 三维几何建模系统和方法
CN1975779A (zh) * 2006-09-14 2007-06-06 浙江大学 三维人体运动数据分割方法
US7257237B1 (en) * 2003-03-07 2007-08-14 Sandia Corporation Real time markerless motion tracking using linked kinematic chains

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5909218A (en) * 1996-04-25 1999-06-01 Matsushita Electric Industrial Co., Ltd. Transmitter-receiver of three-dimensional skeleton structure motions and method thereof
US7257237B1 (en) * 2003-03-07 2007-08-14 Sandia Corporation Real time markerless motion tracking using linked kinematic chains
CN1710614A (zh) * 2005-06-16 2005-12-21 上海交通大学 基于模型的人肢体三维运动参数估计方法
CN1747559A (zh) * 2005-07-29 2006-03-15 北京大学 三维几何建模系统和方法
CN1975779A (zh) * 2006-09-14 2007-06-06 浙江大学 三维人体运动数据分割方法

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
Chih-Yi Chiu等.Content-based retrieval for human motion data.Visual Communicaion and Image Representation15 3.2004,15(3),446~466.
Chih-Yi Chiu等.Content-based retrieval for human motion data.Visual Communicaion and Image Representation15 3.2004,15(3),446~466. *
刘丰 等.基于例子的三维运动检索.计算机辅助设计与图形学学报15 10.2003,15(10),1275~1280.
刘丰等.基于例子的三维运动检索.计算机辅助设计与图形学学报15 10.2003,15(10),1275~1280. *
查成东 等.基于改进K-均值聚类算法的背景提取方法.计算机工程与设计28 21.2007,28(21),5141~5143.
查成东等.基于改进K-均值聚类算法的背景提取方法.计算机工程与设计28 21.2007,28(21),5141~5143. *

Also Published As

Publication number Publication date
CN101276370A (zh) 2008-10-01

Similar Documents

Publication Publication Date Title
CN101276370B (zh) 基于关键帧的三维人体运动数据检索方法
CN104899253B (zh) 面向社会图像的跨模态图像-标签相关度学习方法
CN110276316A (zh) 一种基于深度学习的人体关键点检测方法
CN103268635B (zh) 一种几何网格场景模型的分割及语义标注方法
CN104899561A (zh) 一种并行化的人体行为识别方法
CN105427293A (zh) 室内场景扫描重建的方法及装置
CN104616028B (zh) 基于空间分割学习的人体肢体姿势动作识别方法
CN105574510A (zh) 一种步态识别方法及装置
CN101477529B (zh) 一种三维对象的检索方法和装置
CN103440274B (zh) 一种基于细节描述的视频事件概要图构造和匹配方法
KR20200075114A (ko) 이미지와 텍스트간 유사도 매칭 시스템 및 방법
CN109376610B (zh) 视频监控中基于图像概念网络的行人不安全行为检测方法
CN103778227A (zh) 从检索图像中筛选有用图像的方法
CN103810299A (zh) 基于多特征融合的图像检索方法
CN110119144A (zh) 基于子地图特征匹配的多机器人slam算法
CN102324041B (zh) 像素归类方法、关节体姿态识别方法及鼠标指令生成方法
CN111274909B (zh) 一种基于深度学习的人体点云骨架提取方法
CN105849720A (zh) 视觉语义复合网络以及用于形成该网络的方法
CN103390063A (zh) 一种基于蚁群算法和概率超图的相关反馈图像检索方法
CN108170823B (zh) 一种基于高层语义属性理解的手绘交互式三维模型检索方法
CN102622225A (zh) 一种支持用户自定义手势的多点触控应用程序开发方法
Barnachon et al. A real-time system for motion retrieval and interpretation
CN105976395A (zh) 一种基于稀疏表示的视频目标跟踪方法
Xiao et al. Sketch-based human motion retrieval via selected 2D geometric posture descriptor
CN109583294A (zh) 一种基于运动生物力学的多模式人体行为识别方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20101013

Termination date: 20140114