基于面拓扑关联约束的三维实体模型检索方法

文档序号:6472049阅读:170来源:国知局
专利名称:基于面拓扑关联约束的三维实体模型检索方法
技术领域
本发明涉及一种基于面拓扑关联约束的三维实体模型检索方法,且特别涉及一种通过六类面拓扑关系及在此基础上作平行面对归并后的归并面拓扑关联约束集比较的三维实体模型快速检索方法。
背景技术
在过去十年中,随着3D图形硬件成本的降低和技术的成熟,三维CAD设计技术在机械、制造、建筑、电子、化工、服装乃至广告等众多领域中得到快速发展和应用。据统计,近年来模具制造工业中3DCAD建模已占80。/。左右。
三维CAD实体模型在数量及复杂性上迅速增加的同时,三维产品数据的复用问题逐步出现。 一般而言,设计者平均花费60%的工作时间用于产品信息的检索。Gunn则进一步指出,进行新产品设计时,仅约20%来自真正的创新,40%可从现有设计获取,另外40%则可在修改现有设计的基础上获得。Ullman认为,超过75%的新设计包含着对以往设计知识的复用。产品复用已成为CAD领域中的关键问题。三维形状检索(3D shape searching)是解决三维产品复用的有效途径。根据Kendall的定义,三维形状检索是指"在大型三维模型数据库中计算三维形状之间的相似度"。深入研究三维实体模型的检索机制,必然有助于促进三维CAD技术深化应用、提高三维CAD设计的自动化水平、加快产品创新开发,具有重要的理论意义和实际应用价值。

发明内容
发明目的本发明针对现有技术的不足,提供了一种基于面拓扑关联约束的三维实体模型检索方法。
技术方案本发明公开了一种基于面拓扑关联约束的三维实体模型检索方法,该方法包括以下步骤
步骤l,给定三维实体模型的产品数据库,输入待检索的三维实体模型;
步骤2,判断是否已从输入的待检索实体模型生成其对应的面拓扑关联约束的描述文件,若判断结果为是则转步骤12;
步骤3,若步骤2的结果为否,则读取实体模型的顶点、边、面、环等几何数
据;
步骤4,生成该实体模型的面包含关系图Rw,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面有包含关系;
步骤5,生成该实体模型的共面关系图R,,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面共面、但无包含关系;步骤6,生成该实体模型的面平行关系图Rp,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面互相平行、但不共面且无包含关系;
步骤7,生成该实体模型的模型面L型垂直或相交关系图RL,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面为L型垂直或相交关系;
步骤8,生成该实体模型的模型面T型垂直或相交关系图RT,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面为T型垂直或相交关系;
步骤9,生成该实体模型的模型面X型垂直或相交关系图Rx,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面为X型垂直或相交关系;将模型面拓扑关联约束集GT。P。 = m^,Rz,Rp,I^,RT,Rj写入相应的描述文件;
步骤IO,遍历Rp中各节点,将相互重叠比例最大且距离最小的两个平行面合并为一个新的面对节点;
步骤ll,若面包含关系图R,共面关系图&、模型面L型垂直或相交关系图Rl、模型面T型垂直或相交关系图RT、模型面X型垂直或相交关系图Rx中包含步骤
io中被合并的两个平行面对,则从该关系图中以步骤io所生成的面对节点替换掉
这两个面,并重建该面对节点与其它节点间的包含关系、共面关系、L型垂直或相交关系、T型垂直或相交关系、X型垂直或相交关系,得到归并后的归并面拓扑关联约束集G'T。ro = {R'IN , R ,R;, R'l , R't , R'j ,并写入相应的描述文件;
步骤12,逐一取产品数据库中的三维实体模型及其对应的归并面拓扑关联约束集描述文件;
步骤13,比较待检索模型及产品数据库中模型的归并面拓扑关联约束集,并计算其相似度;
步骤14,按归并后面拓扑关联约束集相似度比较结果,比较其模型面拓扑关联约束集,以作进一步的几何细节的局部比较,提高三维检索的精确度;步骤15,判断模型数据库是否遍历结束,若结果为否,则转步骤12;步骤16,若步骤15的判断结果为是,则将各近似度从大到小排序后输出;步骤17,返回本次检索结果;
步骤18,根据近似度比较结果是否为"1"判断所输入的待检索模型是否已加入产品模型数据库,若判断结果为是,则返回步骤l;
步骤19,若步骤18结果为否,则将所输入的实体模型、对应的模型面拓扑关联约束集及归并面拓扑关联约束集描述文件加入到产品数据库,并返回步骤1。
6本发明中,待检索的三维实体模型及产品数据库中的三维实体模型应符合STEP
标准,但对其坐标系定义、实体模型大小、旋转方向无特别要求。
本发明中,面拓扑关联约束分为两个层次通过初始模型面拓扑关系分析生成的模型面拓扑关联约束集GT。P。 = {RIN, R, , Rp , Rl , RT , Rx},及节点归并后生成的归并面拓扑关联约束集G't。p。 = {R'IN , R ,R'p , R; , R't , R'x};
本发明中,组成模型面拓扑关联约束集的六类面关系图Rw、 Rp、 Rl、 Rt、Rx中,节j、对应于某模型面、边对应于某种拓扑关系;模型面的几何特征(如法向量、面积、形状等)则作为面关系图中节点的属性列出,以作三维检索时的几何细节比较或局部检索。
本发明中,组成归并面拓扑关联约束集的六类归并面关系图R'IN 、 & 、 R'p 、 R:、R'T、 R'x中,节点对应于一个符合相互投影面重叠比例最大、同时距离最小的平行面对,边对应于六类拓扑关系中的一种。
本发明中,某三维实体模型所对应的归并面拓扑关联约束集描述文件由XML定义。
本发明中,某三维实体模型所对应的模型面拓扑关联约束集描述文件由XML定义。
本发明中,根据归并面拓扑关联约束计算两个实体模型相似度的方法是Similarity(M, N) = Similar(R,P(M), R,P(N)/6 + Similar(R,L(M), R,l(N))/6
+ Similar(R,iN(M), R,in(N》/6 + Similar(R,j(M), R,i(N))/6+ Similar(R,t(M), R,T(N))/6+ Similar(R,xM), R,xN))/6其中,M、 N表示两个实体模型,Similar(Ri, R2)为计算两个图最大匹配度的现存函数;Similarity()函数的取值范围为[O, 100%]。
本发明中,进一步的几何细节的局部比较方法是取六类模型面关系图中的面几何属性作比较;其中面几何属性包括面的类型、面的法向量、面的周长与面积、面内边的数量。
本发明中,判断待检索模型是否巳加入产品数据库的方法是检査是否有与待检索模型相似度为100%的模型存在,若判断结果为是,则产品数据库中已加入,否则未加入。
有益效果本发明方法从CAD数据表达及产品交换相关ISO标准STEP(Standard for the Exchange of Product Information) /IGES (Initial Graphics ExchangeStandard)出发,在兼容绝大多数主流CAD模型描述方式基础上,提取、分析三维实体模型几何形状描述,分别生成由包含、平行、共面、L型垂直或相交、T型垂直或相交、X型垂直或相交共六类面关系组成的模型面拓扑关联约束集;在此基础上对符合投影重叠比例及距离约束的平行面对作归并,生成归并面拓扑关联
7约束集。在检索三维实体模型时,以归并面拓扑关联约束集比较为出发点,快速计算模型间相似度;并可根据全局拓扑约束的不同,进一步比较面类型、法向量、边数等属性,作进一步的几何细节区分。
由于目前在三维设计领域,超过75%的新设计包含着对以往设计知识的复用,而设计者平均需花费60%的工作时间用于以往产品的检索。因此,通过面拓扑关联约束的快速比较,可从全局拓扑关系及局部拓扑/几何细节两个层次,在大规模三维产品数据库中.快速定位相似的三维实体模型,从而提高三维产品设计的复用水平、加快产品创新开发能力,并有助于促进三维CAD技术深化应用。


下面结合附图和具体实施方式
对本发明做更进一步的具体说明。图l表示本发明的工作流程图。图2为一个三维实体模型的实例。图3为从该三维实体模型生成的模型面平行关系图Rp。图4为从该三维实体模型生成的模型面L型垂直或相交关系图&。图5为从该三维实体模型生成的模型面包含关系图RIN。图6为Rp中节点归并的例子。图7为节点归并后生成归并面平行关系图Rp。图8为节点归并后生成归并面L型垂直或相交关系图R'l。
具体实施例方式
如图1所示,本发明公开了一种基于面拓扑关联约束的三维实体模型检索方法,该方法包括以下步骤-
步骤l,给定三维实体模型的产品数据库,输入待检索的三维实体模型;
步骤2,判断是否已从输入的待检索实体模型生成其对应的面拓扑关联约束的描述文件,若判断结果为是则转步骤12;步骤3,若步骤2的结果为否,则读取实体模型的顶点、边、面、环等几何数
据;
步骤4,生成该实体模型的面包含关系图RIN,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面有包含关系;
步骤5,生成该实体模型的共面关系图&,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面共面、但无包含关系;
步骤6,生成该实体模型的面平行关系图Rp,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面互相平行、但不共面且无包含关系;
步骤7,生成该实体模型的模型面L型垂直或相交关系图RL,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面为L型垂直或相交关系;
步骤8,生成该实体模型的模型面T型垂直或相交关系图RT,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面为T型垂直或相交关系;
步骤9,生成该实体模型的模型面X型垂直或相交关系图Rx,该图中的一个节点对应于一个实体模型的面, 一条边表示其所连接的两个模型面为X型垂直或相交关系;将模型面拓扑关联约束集G鹏z (Rw,R"Rp,^,RT,Rj写入相应的描述文件;
步骤IO,遍历Rp中各节点,将相互重叠比例最大且距离最小的两个平行面合并为一个新的面对节点;
步骤ll,若面包含关系图R,共面关系图R^模型面L型垂直或相交关系图Rl、模型面T型垂直或相交关系图RT、模型面X型垂直或相交关系图Rx中包含步骤10中被合并的两个平行面对,则从该关系图中以步骤IO所生成的面对节点替换掉这两个面,并重建该面对节点与其它节点间的包含关系、共面关系、L型垂直或相交关系、T型垂直或相交关系、X型垂直或相交关系,得到归并后的归并面拓扑关联约束集^謂={R'IN ,, R'p , R'l , R't , R'x},并写入相应的描述文件;
步骤12,逐一取产品数据库中的三维实体模型及其对应的归并面拓扑关联约束集描述文件;
步骤13,比较待检索模型及产品数据库中模型的归并面拓扑关联约束集,并计算其相似度;
步骤14,按归并后面拓扑关联约束集相似度比较结果,比较其模型面拓扑关联约束集,以作进一步的几何细节的局部比较,提高三维检索的精确度;步骤15,判断模型数据库是否遍历结束,若结果为否,则转步骤12;步骤16,若步骤15的判断结果为是,则将各近似度从大到小排序后输出;步骤17,返回本次检索结果;
步骤18,根据近似度比较结果是否为"1"判断所输入的待检索模型是否已加入产品模型数据库,若判断结果为是,则返回步骤l;
步骤19,若步骤18结果为否,则将所输入的实体模型、对应的模型面拓扑关联约束集及归并面拓扑关联约束集描述文件加入到产品数据库,并返回步骤1。
更具体地说,图1中的步骤1初始所输入的实体模型由STEP格式定义,且对实体模型大小、方向、角度无特殊要求。
步骤4-步骤9在读取模型几何数据后,生成六类面关系图Rin 、 & 、 Rp 、 Rl 、Rt及Rx,具体步骤是l)遍历各模型面A,取实体模型中其它任一模型面B,若符合以下六类面拓扑约束关系,则将模型A及模型面B作为节点加入对应的面
关系图,并连以一条边
"RIN(A, B) ,ae如e5);
"Rp(A, B) = {(VaeJ,flg5)A04||5)};
"R!(A, B) = {04 0 5 = /—) a (J II5)};
RL(A, B) = {(x n 5 = a (/ e 5owk/(j) a卩e
r (A B) = {(爿05 =卩)A((/e5oww/04)A卩g5o柳i/CS))v
6) Rx(A, B) = {04n5 =〖)A(〖-5oM"i/(J)A〖g5oM"d(5))}
在图2给出的CAD实体模型示例中,若定义R!n(A^(B:rin(A,B》,则图1 的模型面拓扑关联约束集可描述如下
Rp(F!MF3),Rp(F2HF4》,
Rp(F3XF^Rp(F4XF^,
Rl(F一Rl(F3MF2, F4, F5, F6},
RL(F2"RL(F4):(Fi, F3, F5, F6},
Rin(F5)={F7, F9}, RP(F5)={F6, F8, F10},
RL(F5)-RL(F6)叫Fi,F2, F3,F4},
Rin(F6)={F8, F10}, RP(F6)={F5, F7, F9},
Rp(F7)={F8, F9, F10}, RP(F8)={F7, F9, F10},
Rp(F9)={F7, F8, F10}, RP(F10)={F7, F8, F9}
图3为对应于图2所示三维实体模型的模型面平行关系图Rp,图4为从该三 维实体模型生成的模型面L型垂直或相交关系图Rl,而图5为从该三维实体模型 生成的模型面包含关系图RIN。该实体模型中无满足共面、T型垂直或相交、X型 垂直或相交关系的模型面,因此Rz、 RT及Rx均为空。
步骤10对符合投影重叠比例及距离的平行面对进行归并,生成归并后的面平 行关系图R'p。 R'p生成步骤如下(1) 遍历Rp图各边。设当前边为ei,取ei连接的两个节点fh及fi2,令
d(fii, fi2)=area(overlap(fii, fi2))/min(area(fii), area(fi2))
计算d(fu, fi2)并将其按由小到大次序分别加入节点fii及fi2的面距离集(其
中area(fO为面积,overlap(fi, fj)为重叠面);
(2) 遍历Rp图各节点。设当前节点为fi。取fi面距离集中最大值所对应的节点 集S(fi),按如下优先次序选择其中某节点fj生成候选面对〈fi, fj>;
a) ) = ama(力);
b) V厶e S(/,),V人e S(/,),山、(/,,/》S d"(/,,厶)
其中ofo(y;.,/;.)为面距离;
(3) 遍历(2)生成的候选面对集,按如下方法对Rp图归并,得到对应的面拓
朴关联图R,P (R,P初始为空)
a) 复制Rp图中的所有节点到R'Pb) 遍历Rp中所有边,若其所连接节点fi及fk属于候选面对集,则合并fl及 &得到新节点PF(fi, fk),将PF(fi, fk)加入R'pC)遍历R,P图中各节点,设已存在某节点PFj(fjL,fj2),若fj" fi、 fp与fi之间
在原Rp图中有边连接,则在R'p图中在节点PFj(fjh fp)及PF(fj, fk)之间添加 一条边;
(4) 遍历R,P中各节点,计算其最大连通子图R,Pmax,以R,Pmax法向作为模型主 方向。
其中,(1)、 (2)生成候选面对集,(3)以候选面对集对Rp归并,得到R'p; (4) 计算最大连通子图以确定模型主方向。图6给出了对应于图3所示Rp中节点归并 的过程,其归并结果R'p在图7中显示。
步骤11在R'p生成后,结合该过程中所涉及的归并节点,分别重新计算Rl, Rin,
Rh RT, Rx,以生成R,l, R,in, R、, R,t, R,x。其中R,L生成算法如下
(1) R'l置空;
(2) 遍历RL各节点。设当前节点为fi。遍历节点fi各边,若在Ri^中存在两条边
(fi,fj)及(fi,fk) (j沐),且fj及fk己在R,P中合并,贝U:
a) 在R'l中添加新节点VF(fj, fk);
b) 若fj不在R'L图中
i若fi无法和任何已有节点合并,则添加新节点VF(fi,";
ii否则若fj可与R'L图中节点VF(fm, a)合并(即可构成R'p中合并节点),合并成新节点VF(fm, fi);
c) 否则fi已存在于RY图中,返回;
d) 在R、图中上述两个对应节点间添加连接边;
图8给出了对应于图4的归并后的R,L图。R,in, R、 R,t, R,x可按类似方法生成。 步骤16-18比较实体模型并按近似度排序后输出。设Similar(A,B)为用于计算
两个图A与B的相似度的现存函数,则三维实体模型近似度计算方法为 Similarity(M, N) = Similar(R,P(M), R,P(N)/6 + Similar(R,L(M), R,l(N))/6
+ Similar(R,iN(M), R,in(N》/6 + Similar(R,!(M), R,i(N》/6
+ Similar(R,t(M), R,T(N》/6+ Similar(R,xM), R,xN))/6
其中M、 N为任意两个实体模型。将所输入的实体模型和产品数据库中各模型逐 一比较并计算近似度后,按近似度值从大到小逐一排序,将对应模型输出。
本发明提供了一种基于面拓扑关联约束的三维实体模型检索方法,具体实现 该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出, 对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做 出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未 明确的各组成部份均可用现有技术加以实现。
权利要求
1、一种基于面拓扑关联约束的三维实体模型检索方法,其特征在于,该方法包括以下步骤(1)给定三维实体模型的产品数据库,输入待检索的三维实体模型;(2)判断是否已从输入的待检索实体模型生成其对应的面拓扑关联约束的描述文件,若判断结果为是则跳至步骤(12),否则进行下一步;(3)读取实体模型几何数据;(4)生成该实体模型的面包含关系图RIN,该图中的一个节点对应于一个实体模型的面,一条边表示其所连接的两个模型面有包含关系;(5)生成该实体模型的共面关系图RI,该图中的一个节点对应于一个实体模型的面,一条边表示其所连接的两个模型面共面、但无包含关系;(6)生成该实体模型的面平行关系图RP,该图中的一个节点对应于一个实体模型的面,一条边表示其所连接的两个模型面互相平行、但不共面且无包含关系;(7)生成该实体模型的模型面L型垂直或相交关系图RL,该图中的一个节点对应于一个实体模型的面,一条边表示其所连接的两个模型面为L型垂直或相交关系;(8)生成该实体模型的模型面T型垂直或相交关系图RT,该图中的一个节点对应于一个实体模型的面,一条边表示其所连接的两个模型面为T型垂直或相交关系;(9)生成该实体模型的模型面X型垂直或相交关系图RK,该图中的一个节点对应于一个实体模型的面,一条边表示其所连接的两个模型面为X型垂直或相交关系;将模型面拓扑关联约束集GTOPO={RIN,RI,RP,RL,RT,RX}写入相应的描述文件;(10)遍历RP中各节点,将相互重叠比例最大且距离最小的两个平行面合并为一个新的面对节点;(11)若面包含关系图RIN、共面关系图R1、模型面L型垂直或相交关系图RL、模型面T型垂直或相交关系图RT、模型面X型垂直或相交关系图RX中包含步骤(10)中被合并的两个平行面对,则从该关系图中以步骤(10)所生成的面对节点替换掉这两个面,并重建该面对节点与其它节点间的包含关系、共面关系、L型垂直或相交关系、T型垂直或相交关系、X型垂直或相交关系,得到归并后的归并面拓扑关联约束集G’TOPO={R’IN,R’I,R’P,R’L,R’T,R’X},并写入相应的描述文件;(12)逐一取产品数据库中的三维实体模型及其对应的归并面拓扑关联约束集描述文件;(13)比较待检索模型及产品数据库中模型的归并面拓扑关联约束集,并计算其相似度;(14)按归并后面拓扑关联约束集相似度比较结果,比较其模型面拓扑关联约束集;(15)判断模型数据库是否遍历结束,若结果为否,则转步骤(12),否则进行下一步;(16)将各近似度从大到小排序后输出;(17)返回本次检索结果;(18)根据近似度比较结果是否为“1”判断所输入的待检索模型是否已加入产品模型数据库,若判断结果为是,则返回步骤(1),否则进行下一步;(19)将所输入的实体模型、对应的模型面拓扑关联约束集及归并面拓扑关联约束集描述文件加入到产品数据库,并返回步骤(1)。
2、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,步骤 (3)中几何数据包括实体模型的顶点、边、面、环。
3、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,其中 面拓扑关联约束分为两个层次通过初始模型面拓扑关系分析生成的模型面拓扑 关联约束集gtch^ 0^,RhRp,R"RT,R)j,及节点归并后生成的归并面拓扑关联约 束集G topo = {R in , R i , R p, R l , R t , R x}。
4、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,其中 组成模型面拓扑关联约束集的六类面关系图I^、 R:、 Rp、 R" Rt、 Rx中,节点对应 于一种模型面、边对应于一种拓扑关系;模型面的几何特征作为面关系图中节点的属性列出。
5、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,其中 组成归并面拓扑关联约束集的六类归并面关系图Rw、 R、、 R'p、 R:、 R't、 R'x中, 节点对应于一个符合相互投影面重叠比例最大、同时距离最小的平行面对,边对 应于六类拓扑关系中的一种。
6、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,其中三维实体模型所对应的归并面拓扑关联约束集描述文件由XML定义。
7、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,其中 三维实体模型所对应的模型面拓扑关联约束集描述文件由XML定义。
8、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,其中 根据归并面拓扑关联约束计算两个实体模型相似度的方法是Similarity(M, N) = Similar(R,P(M), R,P(N)/6 + Similar(R,L(M), R,L(N))/6+ Simil^(R,iN(M), R,in(N))/6 + Similar(R、(M), R,i(N))/6 + Similar(R,t(M), R,T(N))/6+ Similar(R,xM), R,xN))/6其中,M、 N表示两个实体模型,Similar(Ri,R2)为计算两个图最大匹配度的函数;Similarity()函数的取值范围为

9、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,其中 进一步的几何细节的局部比较方法是取六类模型面关系图中的面几何属性作比较;其中面几何属性包括面的类型、面的法向量、面的周长与面积、面内边的数且 里。
10、 如权利要求1所述的基于面拓扑关联约束的三维实体模型检索方法,其中判断待检索模型是否已加入产品数据库的方法是检査是否有与待检索模型相 似度为100%的模型存在,若判断结果为是,则产品数据库中已加入,否则未加入。
全文摘要
本发明公开了一种基于面拓扑关联约束的三维实体模型检索方法。该方法首先生成实体模型的平行、包含、共面及L型、T型、X型垂直或相交共六类面关系组成的模型面拓扑关联约束集,之后对实体模型中最常见的平行面对进行合并,以简化面拓扑关联约束集、并生成对应的六类归并面拓扑关联约束集。在检索三维实体模型时,以面拓扑关联约束集近似度计算来比较其拓扑及几何细节。本发明的有益之处在于,通过面拓扑关联约束的快速比较,可从全局拓扑关系及局部拓扑/几何细节两个层次,在大规模三维产品数据库中快速定位相似的三维实体模型,从而提高三维产品设计的复用水平。
文档编号G06F17/30GK101488142SQ20081024387
公开日2009年7月22日 申请日期2008年12月9日 优先权日2008年12月9日
发明者通 路 申请人:南京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1