一种三维模型表征方法、检索方法及检索系统的制作方法

文档序号:6539726阅读:219来源:国知局
一种三维模型表征方法、检索方法及检索系统的制作方法
【专利摘要】本发明提供一种三维模型表征方法、检索方法及检索系统,该表征方法包括利用云计算,MapReduce的集群计算能力,根据三维模型的体素之间的热量传递快速计算每个内部体素的热核特征值。该表征方法还包括选择热核特征值小于预定阈值的内部体素作为骨架体素;骨架体素、骨架体素的热核特征值以及骨架体素之间的热量传递构成该三维模型的热核骨架特征描述符。本发明适用于检索非刚性三维模型并且能够高效地提取三维模型的特征。
【专利说明】一种三维模型表征方法、检索方法及检索系统

【技术领域】
[0001] 本发明涉及信息检索及可视化【技术领域】,尤其涉及一种三维模型表征方法、检索 方法及检索系统。

【背景技术】
[0002] 早在上个世纪90年代,三维模型就已作为一种有效的表现形式广泛应用于工业 设计、三维动画、历史文物保护等多种领域。随着三维模型数据库规模的逐渐扩大,对三 维模型检索的需求也愈加急迫,高精度高效率的三维模型检索已经成为当前研究的一个热 点。通常,三维模型检索采用三维模型特征提取算法,提取出三维模型的形状特征描述符, 通过比较三维模型间的形状特征描述符来检索出形状相似的三维模型。在计算机动画、虚 拟现实、三维游戏等领域的实践应用中,三维模型,尤其是具备铰链、关节等结构、变化性较 强的三维模型,易受到刚性变换(rigid or iso metric transformations),从而发生形变, 这类三维模型被定义为非刚性三维模型,参见图1。现有的大部分三维模型特征提取技术都 不适用于非刚性三维模型,这是因为当前特征提取算法大多基于三维模型的点集信息和视 图信息,而点集信息和视图信息均不能承受刚性变换。当三维模型发生形变后,其点集和视 图信息都将发生改变,导致在刚性变换前后所提取出的特征存在很大差异,形状特征描述 符相去甚远,不能保证非刚性模型检索的准确性。因此,针对非刚性三维模型检索的研究意 义重大。
[0003] 现有的非刚性三维模型检索技术包括一种基于热核特征的非刚性三维模型检索 技术,该方法通过使用热核特征提取算法(Heat Kernel Signa ture,简称HKS)来提取 三维模型的热核特征。热核特征提取算法源自于热核(Heat Kernel)-热扩散(heat diffusion)的基本解。热核具备很多优质特性:能够通过多尺度的方式将模型几何特征组 织起来、极具稳定性,并且热核特征能够承受刚性变换。因此,将热核作为三维模型的特征 可用于检索非刚性三维模型。
[0004] 然而,现有的热核特征提取算法在表示三维模型的结构特征时具有一定的局限 性。现有技术中都是在点集的基础上运用热核特征提取算法,所得到的热核特征仅限于体 现三维模型的表面信息,而对于那些具有孔、洞等结构的三维模型来说,则很难体现其内部 特征。此外,由于热核需要计算三维模型的拉普拉斯-贝特拉密算子,其计算量大且复杂度 高,而现有的单机环境通常限制了计算速度,使得热核特征提取算法实施起来效率较低。


【发明内容】

[0005] 为解决上述问题,根据本发明的一个实施例,提供一种三维模型表征方法,该方法 包括:
[0006] 步骤1)、根据三维模型的体素之间的热量传递计算每个内部体素的热核特征值;
[0007] 步骤2)、选择热核特征值小于预定阈值的内部体素作为骨架体素;由骨架体素、 骨架体素的热核特征值以及骨架体素之间的热量传递构成该三维模型的热核骨架特征描 述符。
[0008] 在一个实施例中,所述三维模型表征方法还包括:
[0009] 步骤0)、将三维模型体素化,得到该三维模型的内部体素。
[0010] 在一个实施例中,在步骤1)中,使用MapReduce计算每个内部体素的热核特征值。
[0011] 在进一步的实施例中,步骤1)包括:
[0012] 步骤11)、在Map阶段,并行地计算在一定时间内三维模型的每个体素传递至该三 维模型所有体素的热量;
[0013] 步骤12)、对Map的输出进行排序并将结果输入Reduce ;以及
[0014] 步骤13)、在Reduce阶段,将每个内部体素从其他体素传递得到的热量汇总,得到 内部体素的热核特征值。
[0015] 根据本发明的一个实施例,还提供一种三维模型检索方法,包括:
[0016] 步骤A)、根据权利要求1-4中任何一个所述的三维模型表征方法得到待检索三维 模型的热核骨架特征描述符;
[0017] 步骤B)、基于所述待检索三维模型的热核骨架特征描述符,将所述待检索三维模 型与数据库中的每个三维模型的热核骨架特征描述符进行匹配,检索出与所述待检索三维 模型相似的三维模型。
[0018] 在一个实施例中,在步骤B)中,将待检索三维模型与数据库中的一个三维模型进 行匹配包括:
[0019] 步骤a)、根据骨架体素分别构建所述待检索三维模型和该数据库中的三维模型的 骨架图G 1和G2 ;
[0020] 步骤b)、根据骨架体素的热核特征值以及骨架体素之间的热量传递构建骨架图G1 和G2的关联图Hv,检测关联图Hv的最大团得到骨架图G1和G 2的最大公共子图;
[0021] 步骤c)、根据下式计算所匹配的两个三维模型的相似性:
[0022] L = Nm/max(N1, N2)
[0023] 其中,Nm表示骨架图G1和G2的最大公共子图的节点个数,N 1和N2分别表示骨架图 G1和G2的节点个数。
[0024] 在一个实施例中,在步骤b)中,构建关联图Hv包括:
[0025] 步骤i)、对于骨架图G1中每个节点遍历骨架图G2中的每个节点,组成节点对,如 果组成节点对的两个节点的热核特征值之差的绝对值小于阈值S 1,则将该节点对加入关 联图Hv作为其节点;
[0026] 步骤ii)、对于关联图Hv中的每两个节点uH = (U1, U2)和vH = (V1, V2),如果骨架 图G1中的边ei= (Ul,V1)与骨架图G2中的边e2= (u2, V2)的属性值之差的绝对值小于阈值 S 2,则构造一条连通边eH = <uH,vH>加入关联图Hv ;如果骨架图G1中的节点U1和V1、骨架 图G2中的节点U 2和V2各不相邻,则构造一条非连通边eH = <uH, vH>加入关联图Hv ;其中, 边的属性值是两个端点间在一定时间内传递的热量值。
[0027] 在一个实施例中,步骤a)包括:
[0028] 步骤al)、将骨架体素分为节点体素、一般体素和终端体素;其中,节点体素至少 有三个邻接体素,一般体素有两个邻接体素,终端体素有一个邻接体素;
[0029] 步骤a2)、寻找靠近三维模型重心的节点体素作为种子节点;
[0030] 步骤a3)、从该种子节点开始连接与其直接相连的节点体素,且依次向外连接直到 没有节点体素为止,并且将终端体素作为各连接分支的结束点;其中直接相连指两个节点 体素之间包含一般体素且不包含节点体素和终端体素。
[0031] 在一个实施例中,步骤B)之前还包括:根据权利要求1-4中任何一个所述的三维 模型表征方法得到数据库中每个三维模型的热核骨架特征描述符。
[0032] 在一个实施例中,所述三维模型检索方法还包括:构建三维模型索引数据库,该三 维模型索引数据库包括数据库中每个三维模型的热核骨架特征描述符与该三维模型的存 储位置之间的对应关系。
[0033] 根据本发明的一个实施例,还提供一种模型表征设备,该设备包括:
[0034]用于根据三维模型的体素之间的热量传递计算每个内部体素的热核特征值的装 置;以及用于选择热核特征值小于预定阈值的内部体素作为骨架体素的装置;其中,由骨 架体素、骨架体素的热核特征值以及骨架体素之间的热量传递构成该三维模型的热核骨架 特征描述符。
[0035] 在一个实施例中,所述模型表征设备还包括:
[0036] 数据预处理装置,用于将三维模型体素化,得到该三维模型的内部体素。
[0037] 根据本发明的一个实施例,还提供一种三维模型检索系统,包括:
[0038] 上述模型表征设备,用于得到待检索三维模型的热核骨架特征描述符;以及模型 匹配设备,基于所述待检索三维模型的热核骨架特征描述符,将所述待检索三维模型与数 据库中的每个三维模型的热核骨架特征描述符进行匹配,检索出与所述待检索三维模型相 似的三维模型。
[0039] 在一个实施例中,所述系统还包括:
[0040] 索引设备,用于构建三维模型索引数据库,该三维模型索引数据库包括数据库中 每个三维模型的热核骨架特征描述符与该三维模型的存储位置之间的对应关系。
[0041] 本发明将针对连续点集的热核计算扩展到三维模型的体素,得到每个内部体素的 热核特征值,再根据该热核特征值选取三维模型的骨架体素,将骨架特征与热核特征结合 起来,作为三维模型的热核骨架特征描述符来表征三维模型,进而进行三维模型的检索。此 夕卜,加入了云计算技术和M apReduce的应用,利用云的计算能力解决复杂的特征提取算法 在计算速度方面的限制,从而可以达到如下的有益效果:
[0042] 本发明所提取的三维模型特征既满足刚性形变的不变性,又具有骨架的拓扑特 性,能够体现有孔、洞等结构的三维模型的内部特征,并且拥有普遍性,适用于检索任意三 维模型。此外,本发明能够高效地提取三维模型的特征。

【专利附图】

【附图说明】
[0043] 图1是根据本发明一个实施例的非刚性三维模型的示意图;
[0044] 图2是根据本发明一个实施例的三维模型表征方法的流程图;
[0045] 图3是根据本发明一个实施例的三角面片体素化的示意图;
[0046] 图4是根据本发明一个实施例的用MapReduce实现HKS算法的流程图;
[0047] 图5是根据本发明一个实施例的三维模型检索方法的流程图;
[0048] 图6是根据本发明一个实施例的构建三维模型的热核骨架特征描述索引的流程 图;以及
[0049] 图7a_7c是根据本发明一个实施例的关联图构造示意图,其中图7a是骨架图G1, 图7b是骨架图G2,图7c是关联图。

【具体实施方式】
[0050] 下面结合附图和【具体实施方式】对本发明加以说明。应当理解,此处所描述的具体 实施例仅用以解释本发明,并不用于限定本发明。
[0051] 根据本发明的一个实施例,提供一种三维模型表征方法。参考图2且简要概括,该 方法包括:三维模型的预处理以及提取三维模型的热核骨架特征描述符。
[0052] 步骤一、三维模型的预处理
[0053] 概括而言,预处理过程可以包括:解析所获取的三维模型文件,并且将该三维模型 的原始数据体素化,得到该三维模型的体素结构。
[0054] 对获取到的三维模型文件进行解析,从而获得由三角面片组成的三维模型,其数 据由顶点集和面片集构成,接着进行体素化处理。体素化是指在保证精度的前提下,将由三 角面片或者其他边界表示的几何模型转化为由离散的体素集合表示的过程。如本领域技术 人员所公知的,体素是指分布在正交网格中的单位立方体。在三维离散空间中,体素有三种 邻接关系:26_邻接、18-邻接和6-邻接。如果两个体素之间存在一个公共顶点、或者一条 公共边,或者一个公共面,则称这两个体素是26-邻接的;如果两个体素之间存在一条公共 边或者一个公共面,则称这两个体素是18-邻接的;如果两个体素之间仅存在一个公共面, 则称这两个体素是6-邻接的。
[0055] 在三维欧几里德空间中,任意一点都存在唯一的一个体素与之对应,即通过坐标 变换可找到三维空间中的点所对应的体素。可以根据公式(1)对三维模型中的点P (X,y,z) 进行体素化,公式(2)给出了点p (X,y,z)所对应的体素编号:
[0056]

【权利要求】
1. 一种H维模型表征方法,包括: 步骤1)、根据一段时间内H维模型的体素之间的热量传递计算每个内部体素的热核特 征值; 步骤2)、选择热核特征值小于预定阔值的内部体素作为骨架体素;由骨架体素、骨架 体素的热核特征值W及骨架体素之间的热量传递构成该H维模型的热核骨架特征描述符。
2. 根据权利要求1所述的方法,其中,还包括: 步骤0)、将H维模型体素化,得到该H维模型的内部体素。
3. 根据权利要求1或2所述的方法,在步骤1)中,使用MapRe化ce计算每个内部体素 的热核特征值。
4. 根据权利要求3所述的方法,其中,步骤1)包括: 步骤11)、在Map阶段,并行地计算在一定时间内H维模型的每个体素传递至该H维模 型所有体素的热量; 步骤12)、对Map的输出进行排序并将结果输入Re化ce 及 步骤13)、在Re化ce阶段,将每个内部体素从其他体素传递得到的热量汇总,得到内部 体素的热核特征值。
5. -种H维模型检索方法,包括: 步骤A)、根据权利要求1-4中任何一个所述的H维模型表征方法得到待检索H维模型 的热核骨架特征描述符; 步骤B)、基于所述待检索H维模型的热核骨架特征描述符,将所述待检索H维模型与 数据库中的每个H维模型的热核骨架特征描述符进行匹配,检索出与所述待检索H维模型 相似的H维模型。
6. 根据权利要求5所述的方法,在步骤B)中,将待检索H维模型与数据库中的一个H 维模型进行匹配包括: 步骤a)、根据骨架体素分别构建所述待检索H维模型和该数据库中的H维模型的骨架 图Gi和G2; 步骤b)、根据骨架体素的热核特征值W及骨架体素之间的热量传递构建骨架图Gi和G, 的关联图Hv,检测关联图Hv的最大团得到骨架图Gi和G2的最大公共子图; 步骤C)、根据下式计算所匹配的两个H维模型的相似性: L=Nm/max化,馬) 其中,Nm表示骨架图Gi和G,的最大公共子图的节点个数,Ni和N,分别表示骨架图Gi和G2的节点个数。
7. 根据权利要求6所述的方法,在步骤b)中,构建关联图馬包括: 步骤i)、对于骨架图Gi中每个节点遍历骨架图G2中的每个节点,组成节点对,如果组 成节点对的两个节点的热核特征值之差的绝对值小于阔值51,则将该节点对加入关联图 Hv作为其节点; 步骤ii)、对于关联图Hv中的每两个节点%= (Ui,U2)和Vh= (Vi,V2),如果骨架图Gi中的边ei= (Ui,vi)与骨架图G2中的边62= (U2,V2)的属性值之差的绝对值小于阔值52, 则构造一条连通边eg= <Uh,Vh>加入关联图Hv;如果骨架图Gi中的节点Ui和Vi、骨架图Gg 中的节点1?和V2各不相邻,则构造一条非连通边eg= <Uh,Vh>加入关联图Hy;其中,边的属 性值是两个端点间在一定时间内传递的热量值。
8. 根据权利要求6所述的方法,其中,步骤a)包括: 步骤al)、将骨架体素分为节点体素、一般体素和终端体素;其中,节点体素至少有H 个邻接体素,一般体素有两个邻接体素,终端体素有一个邻接体素; 步骤a2)、寻找靠近H维模型重也的节点体素作为种子节点; 步骤a3)、从该种子节点开始连接与其直接相连的节点体素,且依次向外连接直到没有 节点体素为止,并且将终端体素作为各连接分支的结束点;其中直接相连指两个节点体素 之间包含一般体素且不包含节点体素和终端体素。
9. 根据权利要求5-8所述的方法,其中,步骤B)之前还包括: 根据权利要求1-4中任何一个所述的H维模型表征方法得到数据库中每个H维模型 的热核骨架特征描述符。
10. 根据权利要求9所述的方法,其中,所述方法还包括: 构建H维模型索引数据库,该H维模型索引数据库包括数据库中每个H维模型的热核 骨架特征描述符与该H维模型的存储位置之间的对应关系。
11. 一种模型表征设备,包括: 用于根据一段时间内H维模型的体素之间的热量传递计算每个内部体素的热核特征 值的装置;W及用于选择热核特征值小于预定阔值的内部体素作为骨架体素的装置;其 中,由骨架体素、骨架体素的热核特征值W及骨架体素之间的热量传递构成该H维模型的 热核骨架特征描述符。
12. 根据权利要求11所述的设备,还包括: 数据预处理装置,用于将H维模型体素化,得到该H维模型的内部体素。
13. -种H维模型检索系统,包括: 如权利要求11或12所述的模型表征设备,用于得到待检索H维模型的热核骨架特征 描述符;W及 模型匹配设备,基于所述待检索H维模型的热核骨架特征描述符,将所述待检索H维 模型与数据库中的每个H维模型的热核骨架特征描述符进行匹配,检索出与所述待检索H 维模型相似的H维模型。
14. 根据权利要求13所述的系统,还包括: 索引设备,用于构建H维模型索引数据库,该H维模型索引数据库包括数据库中每个 H维模型的热核骨架特征描述符与该H维模型的存储位置之间的对应关系。
【文档编号】G06F17/30GK104462163SQ201410080954
【公开日】2015年3月25日 申请日期:2014年3月6日 优先权日:2014年3月6日
【发明者】李海生, 万雅娟, 祝晓斌, 刘成, 赖龙, 曹健 申请人:北京工商大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1