專利名稱:基于拓撲鄰接逼近的cad模型檢索方法
技術(shù)領域:
本發(fā)明一種基于拓撲鄰接逼近的CAD模型檢索方法屬于三維CAD模型檢索方法,特別涉及CAD模型結(jié)構(gòu)外形相似性的可視化檢索方法。
背景技術(shù):
三維CAD軟件是機械產(chǎn)品設計的主流工具,CAD模型已成為表達產(chǎn)品設計、制造信息的重要媒介。隨著CAD模型數(shù)量的不斷增加,其重用問題成為CG&CAD領域亟待解決的重要課題。作為解決CAD模型重用問題的關(guān)鍵技術(shù),CAD模型檢索逐漸成為學術(shù)界和工業(yè)界的研究熱點。但傳統(tǒng)的基于關(guān)鍵字或目錄樹的模型檢索已不能滿足設計者的需求。設計者希望檢索過程更加直觀、智能,檢索結(jié)果更能夠反映其設計意圖。為此,國內(nèi)外學者提出了一些解決方案方法,如中國專利號200410067152.X,專利名稱為“三維CAD模型基于形狀的相似度評估方法”,該專利自述為“將三維CAD模型的STEP AP203 Part21數(shù)據(jù)轉(zhuǎn)換為屬性圖數(shù)據(jù);從屬性圖數(shù)據(jù)提取三維CAD模型的特征不變量并以此構(gòu)造其特征不變矢量;基于構(gòu)造的特征不變矢量應用自組織神經(jīng)網(wǎng)絡對CAD模型進行相似度評估。依據(jù)本方法可進行基于相似性的CAD模型檢索。”西北工業(yè)大學王洪申在《計算機集成制造系統(tǒng)》2007年13卷10期第1921-1927頁上發(fā)表題為“基于最優(yōu)匹配的三維CAD模型相似性評價算法”的論文,該論文的自述為“根據(jù)三維計算機輔助設計模型的邊界表示,將相比較的兩個計算機輔助設計模型拆分成面,并分別對面進行分類。將兩模型中同種類型的面兩兩匹配,運用相應的準則計算出每對面的相似性系數(shù)δij,從而使同種類型的面形成了一個二分圖。利用圖論中二分圖的最優(yōu)匹配算法,計算出兩個模型同類型面中各面的最優(yōu)匹配方案,并計算出加權(quán)最優(yōu)匹配值,最后將各種類型面的最優(yōu)匹配值相加得到模型的相似系數(shù),以此作為評價模型相似性的依據(jù)。依據(jù)本方法可進行基于相似性的CAD模型檢索。”上述專利及論文所闡述的CAD模型檢索方法不足在于時間復雜度均為O(n3)以上,時間效率很低;均通過一次性邊界匹配獲得最終邊界匹配結(jié)果,得到的檢索對象與檢索條件之間的相似度精度低;不能對不同類型邊界面進行相似性度量。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)難題是克服現(xiàn)有技術(shù)的缺欠,采用拓撲鄰接逼近方法確定檢索對象與檢索條件之間的邊界匹配關(guān)系,進而確定檢索對象與檢索條件之間的相似性,并以相似性為依據(jù)實現(xiàn)CAD模型的可視化檢索。通過本發(fā)明,可以快速、高準確性地從大量CAD模型中檢索出結(jié)構(gòu)形狀與作為檢索條件的CAD模型相似的模型。
本發(fā)明采用的技術(shù)方案給出了一種基于拓撲鄰接逼近的CAD模型檢索方法,可直觀、智能地從大量CAD模型中檢索出結(jié)構(gòu)外形與作為檢索條件的CAD模型相似的模型,該方法按一下幾步進行 (1)提取CAD模型的邊界信息,并建立CAD模型的邊界幾何與拓撲信息表達模型; (2)根據(jù)CAD模型的邊界幾何與拓撲信息表達模型,建立可用于計算任意不同類型邊界面之間相似性的統(tǒng)一度量方法; (3)應用圖的廣度優(yōu)先搜索方法,尋找給定檢索條件與檢索對象之間的初始邊界匹配; (4)以檢索條件與檢索對象之間的初始邊界匹配作為輸入,給出并利用拓撲鄰接逼近算法對檢索對象與檢索條件之間的邊界匹配關(guān)系進行逼近運算,直到獲得滿足絕對誤差限的相似度。
如上述的一種基于拓撲鄰接逼近的CAD模型檢索方法中,提取CAD模型的邊界信息,并建立CAD模型的邊界幾何與拓撲信息表達模型,具體采用邊界面的凹凸性描述方法、有向邊的凹凸性判別方法以及二進制空間形位編碼方法進行 (1)邊界面的凹凸性描述方法為對CAD模型上任意邊界面f,其f質(zhì)心記為Wf,f上距Wf最近點記為P,f在點P處的法向量為
曲率表示為k,f在P點處最大曲率方向的曲率記為|k|max,f在P點處最小曲率方向的曲率記為|k|min,P到Wf的向量
記為
具體如圖1所示。f在最大曲率方向和最小曲率方向上的凹凸性描述子Cmax和Cmin。Cmax和Cmin如下 (2)有向邊的凹凸性判別方法,步驟如下 步驟1通過有向邊e的參數(shù)方程獲得其上任意非端點O,其坐標向量記為
并求得有向邊e在O點處的單位切向量
和邊界面f在O點處的單位外法向量
步驟2通過
和
的點乘獲得邊界面f在O點處的單位切向量
步驟3利用向量加法求CAD模型空間一點Q,其坐標向量為μ為足夠小的常數(shù); 步驟4若Q點在CAD模型體內(nèi),則可知有向邊e為凹邊;若Q點在CAD模型體外,則有向邊e為凸邊;若Q點在CAD模型的邊界上,則求點Q',并進行下一步判定; 步驟5若Q'點在CAD模型體內(nèi),則有向邊e為凹邊,否則有向邊e為凸邊; 具體方法如圖2所示。
(3)邊界面的二進制空間形位編碼方法為對CAD模型上任意邊界面f,其外環(huán)可記為有向邊序列LExt(f)={e1,e2,e3,…,en},f的形位編碼表示為SP(f),SP(f)的計算公式如下 SP(f)=2n-1BIN(e1)+2n-2BIN(e2)+…+20BIN(en) 其中函數(shù)BIN為有向邊的二進制空間形位編碼函數(shù)。對任意的有向邊e,若e為凸邊,則其形位編碼BIN(e)=1;若e為凹邊,則其形位編碼BIN(e)=0。
如上所述的一種基于拓撲鄰接逼近的CAD模型檢索方法中,根據(jù)CAD模型的邊界幾何與拓撲信息表達模型,建立可用于計算任意不同類型邊界面之間相似性的統(tǒng)一度量方法,具體包括邊界面之間凹凸相似性度量方法及計算公式、邊界面之間空間形位相似性度量方法及計算公式、邊界面之間相似形的統(tǒng)一度量方法及計算公式、邊界面之間拓撲相似性度量方法及計算公式,主要包括以下各項 (1)邊界面之間凹凸相似性度量方法及計算公式為對于檢索條件與檢索對象上任意一對f和f'的凹凸相似度Sc(f,f')可根據(jù)以下公式計算。
Sc(f,f')=Sm(f,f')·Sa(f,f') 式中,Sm(f,f')和Sa(f,f')分別表示f和f'在最大曲率和最小曲率方向上的凹凸相似度。Sm(f,f')和Sa(f,f')可分別用以下公式計算 式中,Cmax、Cmin、
分別為f和f'在最大曲率或最小曲率方向上的凹凸性描述子。η為預設的閥值,η的取值在(0-2)范圍內(nèi),若f和f'在最大曲率或最小曲率方向上的相對彎曲程度超出閥值η,則f和f'的凹凸相似性為“0”; (2)邊界面之間的形位相似性度量方法及計算公式為邊界面的外環(huán)被劃分為若干相間分布的同向區(qū)域,同向區(qū)域內(nèi)的有向邊均為凸邊或均為凹邊。設檢索對象和檢索條件上任意一對邊界面f和f',其外環(huán)上有向邊的數(shù)量分別為m和n。若f和f'的外環(huán)上分別有t和t'個同向區(qū)域,則有 式中,mi和ni分別是f和f'外環(huán)上第i同向區(qū)域上的有向邊數(shù)量。若t>t',則f和f'的空間形位相似性SP(f,f')可通過以下公式計算 SP(f,f')=max(SP,0(f,f'),SP,2(f,f'),…,SP,j(f,f'),…,SP,t-1(f,f')) 上式將f'的形位編碼與f的形位編碼沿著外環(huán)方向進行循環(huán)比較,取其最大值作為SP(f,f')。SP,j(f,f')為f'的形位編碼與f的形位編碼進行第j次比較所得的相似度,SP,j(f,f')可通過下面公式計算獲得。
式中,λ是二值變量。當f和f'外環(huán)上相應的同向區(qū)域類型相同,則λ=1,否則λ=0; (3)間相似性的統(tǒng)一度量方法及計算公式為 SG(f,f')=SC(f,f')·SP(f,f') 式中,SC(f,f')、SP(f,f')和SG(f,f')分別為檢索對象和檢索條件上任意一對匹配面f和f'之間的凹凸相似度、形位相似度和幾何相似度; (4)邊界面之間拓撲相似性度量方法及計算公式為若CAD模型結(jié)構(gòu)M為檢索條件,CAD模型M'為檢索對象。M的邊界面集合FS={f1,f2,...,fn},n為M上的邊界面數(shù)量。對M上任意邊界面fi(1≤i≤n),在M'上存在與fi相應的幾何相似邊界面
其中fi有hi個鄰接面,
有
個鄰接面。fi的hi個鄰接面分別為fi,1,fi,2,...,fi,hi,fi,1,fi,2,...,fi,hi在M'上的幾何相似邊界面分別為
圖3為檢索條件到檢索對象的鄰接面映射。若將
到
的最短路徑距離分別定義為
則其平均路徑距離可表示為di,di可用下述公式計算 設fi與
之間的拓撲相似性為
,則
的計算公式如下 上式中,ζ為拓撲因子,其取值范圍為(0,1)。
如上所述的一種基于拓撲鄰接逼近的CAD模型檢索方法中,應用圖的廣度優(yōu)先搜索方法,尋找給定檢索條件與檢索對象之間的初始邊界匹配,具體按如下方法進行 設檢索條件和檢索對象分別為M1和M2,M1和M2的邊界面集合分別為FS1={f1,1,f1,2,...,f1,n-1}和FS2={f21,f2,2,...,f2,m-1},其中n和m(n≤m)分別為M1和M2上的邊界面數(shù)量。以下是初始邊界匹配方法的步驟 步驟1計算幾何相似度矩陣.計算M1上任意邊界面f1,i(1≤i≤n)與M2上任意邊界面f2,j(1≤j≤m)之間的幾何相似度SG(f1,i,f2,j),F(xiàn)S1和FS2之間的邊界面幾何相似度矩陣An×m表示如下
步驟2求生成樹的根結(jié)點.查找矩陣An×m中第i(1≤i≤n)行上的矩陣元素使得若f1,i的鄰接面為f1,i,k(1≤k≤hi,f1,i,k∈FS1),則在矩陣An×m中求矩陣元素使得計算
到
的最短路徑距離
并求其平均值di。從集合FS1中求出一個邊界面f1,r(f1,r∈FS1)及其匹配面
使得dr≤di(1≤i≤n,i≠r),f1,r即為生成樹的根結(jié)點; 步驟3圖生成樹及邊界匹配過程.從根節(jié)點f1,r出發(fā),利用廣度優(yōu)先搜索算法在M1的拓撲鄰接圖上生成樹,并搜索第i(1≤i≤n,i≠r)個樹結(jié)點f1,i在M2上的匹配面
使得f1,i(1≤i≤n)的匹配面
形成集合 步驟4計算初始相似度.通過拓撲相似性計算公式依次計算f1,i(1≤i≤n)與其匹配面
之間的拓撲相似度
將M1與M2之間的相似度記為S(M1,M2),其值可通過下面公式計算。
上式中,wi為M1中邊界面f1,i的拓撲相似度在模型相似度中的權(quán)重,wi用下式表示 式中,hi為邊界面f1,i的鄰接面數(shù)量。
如上所述的一種基于拓撲鄰接逼近的CAD模型檢索方法中,以檢索條件與檢索對象之間的初始邊界匹配作為輸入,給出并利用拓撲鄰接逼近算法對檢索對象與檢索條件之間的邊界匹配關(guān)系進行逼近運算,直到獲得滿足絕對誤差限的相似度,其中拓撲鄰接逼近算法按如下步驟進行 設檢索對象與檢索條件之間的初始相似度為S0; 步驟1定義模型相似度的絕對誤差限ε及迭代誤差δ,令δ=|1.0—S0|; 步驟2如果δ≤ε,則轉(zhuǎn)至步驟9;否則令i=0,并進入步驟3; 步驟3計算任意邊界面f2,j(f2,j∈FS2—FS1')與f1,i之間的幾何相似度SG(f1,i,f2,j)和拓撲相似度ST(f1,i,f2,j);若令FS1′←FS1′∪{f2,j},使f2,j與f1,i匹配; 步驟4對FS1中任意邊界面f1,k(1≤k≤n,k≠i),令若ΔS'>ΔS,則令
與f1,i匹配,
與f1,k匹配; 步驟5若i<n,則令i=i+1,并轉(zhuǎn)至步驟3;否則轉(zhuǎn)至步驟6; 步驟6根據(jù)FS1及其匹配面集合FS1',計算M1和M2之間的相似度S(M1,M2); 步驟7計算S(M1,M2)與S0之間的迭代誤差δ,δ=|S(M1,M2)—S0|; 步驟8令S0=S(M1,M2),并轉(zhuǎn)至步驟2; 步驟9返回模型相似度S0,結(jié)束; 將拓撲鄰接逼近算法計算獲得的相似度S0為依據(jù),可達到CAD模型檢索的目的。
本發(fā)明具有以下明顯效果本發(fā)明的時間復雜度為O(n2),而其它方法的時間復雜度O(n3),因此本發(fā)明的時間效率較高;如圖10所示,本發(fā)明具有較高的精度;可對任意不同類型、不同形狀的邊界面進行相似性度量;國內(nèi)外其它方法多處于實驗室研究階段,而本發(fā)明則可直接應用于當前主流CAD系統(tǒng),具有較強的實用性。
圖1,邊界面的凹凸性描述方法簡圖,圖中f為任意邊界面,Wf為f的質(zhì)心,f上距P為f上距離Wf最近點,
為f在點P處的法向量、
為P到Wf的向量; 圖2,有向邊的凹凸性判定方法簡圖,圖中e為有向邊,f是e所在的邊界面,O為e上一個非端點,
為O點處的e的單位切向量,
為邊界面f在O點處的單位外法向量,
為邊界面f在O點處的單位切向量,μ為足夠小的常數(shù); 圖3,檢索條件到檢索對象的鄰接面映射關(guān)系示例,圖中fi(1≤i≤n)為檢索條件上的任意一個邊界面,
為fi在M'上的幾何相似邊界面,fi,1,fi,2,...,fi,hi為fi的hi個鄰接面,
為fi,1,fi,2,...,fi,hi在M'上的幾何相似邊界面,
為
到
的最短路徑距離; 圖4,檢索條件模型; 圖5,檢索對象模型; 圖6,檢索結(jié)果圖,以圖4中的模型為檢索條件,對模型庫進行檢索,返回的前10個檢索結(jié)果; 圖7,查準率-查全率曲線,橫坐標為查全率,縱坐標為查準率,曲線I為中國專利號200410067152.X,專利“三維CAD模型基于形狀的相似度評估方法”的“查準率-查全率”曲線,曲線II為西北工業(yè)大學王洪申在《計算機集成制造系統(tǒng)》2007年13卷10期1921-1927頁上發(fā)表題為“基于最優(yōu)匹配的三維CAD模型相似性評價算法”的論文的“查準率-查全率”曲線,曲線III為本發(fā)明的“查準率-查全率”曲線。
具體實施例方式 結(jié)合附圖和技術(shù)方案詳細說明本發(fā)明的實施方式。發(fā)明人利用編程工具VC++6.0對CAD軟件系統(tǒng)UG NX 3.0的應用程序接口進行二次開發(fā),開發(fā)了檢索UG NX3.0輸出的“*.prt”模型的CAD模型檢索系統(tǒng),用于驗證本發(fā)明。
為了檢測本發(fā)明的檢索性能,以美國普度大學發(fā)布的ESB模型庫中的標準模型為形狀參考,利用UG對庫中所有標準模型進行重新建模,建立了“*.prt”格式的模型庫。以該模型庫中“*.prt”格式的模型為檢索樣本,進行檢索實驗。以圖4和圖5為例說明本發(fā)明的檢索過程,圖4中的模型為檢索條件,圖5中的模型為檢索對象。檢索實驗的硬件條件為DELLOPTIPLEX 210L微機,該微機的內(nèi)存為512M,CPU主頻為3.0GHz;檢索實驗的軟件條件為操作系統(tǒng)為Windows XP,編程工具VC++6.0,CAD軟件系統(tǒng)為UG NX3.0;檢索參數(shù)設定為凹凸相似性閥值η=0.2,拓撲因子ζ=0.5,絕對誤差限ε=0.0001;應返回如下結(jié)果檢索對象與檢索條件之間的初始邊界匹配結(jié)果以及相似度,每次逼近運算獲得的檢索對象與檢索條件之間的邊界匹配結(jié)果及相似度,檢索所消耗總的檢索時間(秒)。
根據(jù)上述條件進行CAD模型檢索,獲得檢索對象與檢索條件之間的初始邊界匹配。根據(jù)初始邊界匹配,計算得到檢索對象與檢索條件之間的初始相似度S0=0.533642。相對誤差為δ=1.0-0.533642,即δ=0.466358。由于δ>ε,所以應進行第1次逼近運算。
根據(jù)第1次逼近運算的邊界匹配結(jié)果,計算得到檢索對象與檢索條件之間的相似度S=0.574309。此時的相對誤差δ=|0.533642-0.574309|,即δ=0.040667。由于δ>ε,所以應進行第2次逼近運算。
第2次逼近運算的邊界匹配結(jié)果,與第1次逼近運算的邊界匹配結(jié)果相同,得到的檢索對象與檢索條件之間的相似度為S=0.574309。此時的相對誤差δ=|0.574309-0.574309|,即δ=0.000000。由于δ<ε,所以逼近運算過程終止。最后得到檢索對象與檢索條件之間的相似度S=0.574309。
上述檢索過程共消耗時間不足0.001秒。
同時,以圖4中的模型為檢索條件,對模型庫進行檢索,返回的前10個檢索結(jié)果如圖6所示。圖6中的檢索結(jié)果表明本發(fā)明能夠很好的實現(xiàn)CAD模型檢索。
發(fā)明人還做了大量的檢索實驗,結(jié)果表明本發(fā)明的最大逼近運算次數(shù)為不超過5次,因此本發(fā)明的時間復雜度為O(n2),時間效率較高。通過統(tǒng)計實驗結(jié)果,繪制出本發(fā)明的“查準率-查全率”曲線,本發(fā)明的“查準率-查全率”曲線如圖7所示。圖7中,曲線I為中國專利號200410067152.X,專利“三維CAD模型基于形狀的相似度評估方法”的“查準率-查全率”曲線,曲線II為西北工業(yè)大學王洪申在《計算機集成制造系統(tǒng)》2007年13卷10期1921-1927頁上發(fā)表題為“基于最優(yōu)匹配的三維CAD模型相似性評價算法”的論文的“查準率-查全率”曲線,曲線III為本發(fā)明的“查準率-查全率”曲線。圖7表明本發(fā)明比前兩項研究的“查準率-查準率”高,這說明本發(fā)明具有更高的檢索精度。
權(quán)利要求
1.本發(fā)明一種基于拓撲鄰接逼近的三維CAD模型檢索方法,其特征是,采用拓撲鄰接逼近方法確定檢索對象與檢索條件之間的邊界匹配關(guān)系,自適應地從大量CAD模型中檢索出結(jié)構(gòu)形狀與作為檢索條件的CAD模型相似的模型,按以下步驟進行
1)提取CAD模型的邊界信息,并建立CAD模型的邊界幾何與拓撲信息表達模型;
2)根據(jù)CAD模型的邊界幾何與拓撲信息表達模型,建立可用于計算任意不同類型邊界面之間相似性的統(tǒng)一度量方法;
3)應用圖的廣度優(yōu)先搜索方法,尋找給定檢索條件與檢索對象之間的初始邊界匹配;
4)以檢索條件與檢索對象之間的初始邊界匹配作為輸入,給出并利用拓撲鄰接逼近算法對檢索對象與檢索條件之間的邊界匹配關(guān)系進行逼近運算,直到獲得滿足絕對誤差限的相似度。
2.如權(quán)利要求1所述一種基于拓撲鄰接逼近的CAD模型檢索方法中,提取CAD模型的邊界信息,并建立CAD模型的邊界幾何與拓撲信息表達模型,其特征是,具體采用邊界面的凹凸性描述方法、有向邊的凹凸性判別方法以及二進制空間形位編碼方法進行
1)邊界面凹凸性描述方法為
對CAD模型上任意邊界面f,其f質(zhì)心記為Wf,f上距Wf最近點記為P,f在點P處的法向量為
曲率表示為k,f在P點處最大曲率方向的曲率記為|k|max,f在P點處最小曲率方向的曲率記為|k|min,P到Wf的向量
記為
f在最大曲率方向和最小曲率方向上的凹凸性描述子Cmax和Cmin;Cmax和Cmin如下
2)有向邊的凹凸性判別方法,步驟如下
步驟1通過有向邊e的參數(shù)方程獲得其上任意非端點O,其坐標向量記為
并求得有向邊e在O點處的單位切向量
和邊界面f在O點處的單位外法向量
步驟2通過
和
的點乘獲得邊界面f在O點處的單位切向量
步驟3利用向量加法求CAD模型空間一點Q,其坐標向量為μ為足夠小的常數(shù);
步驟4若Q點在CAD模型體內(nèi),則可知有向邊e為凹邊;若Q點在CAD模型體外,則有向邊e為凸邊;若Q點在CAD模型的邊界上,則求點Q′,并進行下一步判定;
步驟5若Q′點在CAD模型體內(nèi),則有向邊e為凹邊,否則有向邊e為凸邊;
3)邊界面的二進制空間形位編碼方法為
對CAD模型上任意邊界面f,其外環(huán)可記為有向邊序列LExt(f)={e1,e2,e3,…,en},f的形位編碼表示為SP(f),SP(f)的計算公式如下
SP(f)=2n-1BIN(e1)+2n-2BIN(e2)+…+20BIN(en)
其中函數(shù)BIN為有向邊的二進制空間形位編碼函數(shù);對任意的有向邊e,若e為凸邊,則其形位編碼BIN(e)=1;若e為凹邊,則其形位編碼BIN(e)=0;其中函數(shù)BIN為有向邊的二進制空間形位編碼函數(shù);對任意的有向邊e,若e為凸邊,則其形位編碼BIN(e)=1;若e為凹邊,則其形位編碼BIN(e)=0。
3.如權(quán)利要求2所述的一種基于拓撲鄰接逼近的CAD模型檢索方法中,根據(jù)CAD模型的邊界幾何與拓撲信息表達模型,建立可用于計算任意不同類型邊界面之間相似性的統(tǒng)一度量方法,其特征是,具體包括邊界面之間凹凸相似性度量方法及計算公式、邊界面之間空間形位相似性度量方法及計算公式、邊界面之間相似形的統(tǒng)一度量方法及計算公式、邊界面之間拓撲相似性度量方法及計算公式,主要包括以下各項
1)邊界面之間凹凸相似性度量方法及計算公式為
對于檢索條件與檢索對象上任意一對f和f′的凹凸相似度Sc(f,f′)可根據(jù)以下公式計算
Sc(f,f′)=Sm(f,f′)·Sa(f,f′)
式中,Sm(f,f′)和Sa(f,f′)分別表示f和f′在最大曲率和最小曲率方向上的凹凸相似度;Sm(f,f′)和Sa(f,f′)可分別用以下公式計算
式中,Cmax、Cmin、
分別為f和f′在最大曲率或最小曲率方向上的凹凸性描述子;η為預設的閥值,η的取值在(0-2)范圍內(nèi),若f和f′在最大曲率或最小曲率方向上的相對彎曲程度超出閥值η,則f和f′的凹凸相似性為“0”;
2)邊界面之間的形位相似性度量方法及計算公式為
邊界面的外環(huán)被劃分為若干相間分布的同向區(qū)域,同向區(qū)域內(nèi)的有向邊均為凸邊或均為凹邊;設檢索對象和檢索條件上任意一對邊界面f和f′,其外環(huán)上有向邊的數(shù)量分別為m和n;若f和f′的外環(huán)上分別有t和t′個同向區(qū)域,則有
式中,mi和ni分別是f和f′外環(huán)上第i同向區(qū)域上的有向邊數(shù)量;若t>t′,則f和f′的空間形位相似性SP(f,f′)可通過以下公式計算
SP(f,f′)=max(SP,0(f,f′),SP,2(f,f′),…,SP,j(f,f′),…,SP,t-1(f,f′))
上式將f′的形位編碼與f的形位編碼沿著外環(huán)方向進行循環(huán)比較的過程,取其最大值作為SP(f,f′);SP,j(f,f′)為f′的形位編碼與f的形位編碼進行第j次比較所得的相似度,SP,j(f,f′)可通過下面公式計算獲得
式中,λ是二值變量;當f和f′外環(huán)上相應的同向區(qū)域類型相同,則λ=1,否則λ=0;
3)邊界面之間相似性的統(tǒng)一度量方法及計算公式為
SG(f,f′)=SC(f,f′)·SP(f,f′)
式中,SC(f,f′)、SP(f,f′)和SG(f,f′)分別為檢索對象和檢索條件上任意一對匹配面f和f′之間的凹凸相似度、形位相似度和幾何相似度
4)邊界面之間拓撲相似性度量方法及計算公式為
若CAD模型M為檢索條件,CAD模型M′為檢索對象;M的邊界面集合FS={f1,f2,...,fn},n為M上的邊界面數(shù)量;對M上任意邊界面fi(1≤i≤n),在M′上存在與fi相應的幾何相似邊界面fi′,其中fi有hi個鄰接面,fi′有hi′個鄰接面;fi的hi個鄰接面分別為fi,1,fi,2,...,fi,hi,fi,1,fi,2,...,fi,hi在M′上的幾何相似邊界面分別為
若將
到
的最短路徑距離分別定義為
(1≤j≤hi),則其平均路徑距離可表示為
,
可用下述公式計算
設fi與fi′之間的拓撲相似性為ST(fi,fi′),則ST(fi,fi′)的計算公式如下
上式中,ζ為拓撲因子,其取值范圍為(0,1)。
4.如權(quán)利要求3所述的一種基于拓撲鄰接逼近的CAD模型檢索方法中,其特征是,應用圖的廣度優(yōu)先搜索方法,尋找給定檢索條件與檢索對象之間的初始邊界匹配,具體按如下方法進行
步驟1計算幾何相似度矩陣.計算M1上任意邊界面f1,i(1≤i≤n)與M2上任意邊界面f2,j(1≤j≤m)之間的幾何相似度SG(f1,i,f2,j),F(xiàn)S1和FS2之間的邊界面幾何相似度矩陣An×m表示如下
步驟2求生成樹的根結(jié)點.查找矩陣An×m中第i(1≤i≤n)行上的矩陣元素使得若f1,i的鄰接面為f1,i,k(1≤k≤hi,f1,i,k∈FS1),則在矩陣An×m中求矩陣元素使得計算
到
的最短路徑距離并求其平均值
;從集合FS1中求出一個邊界面f1,r(f1,r∈FS1)及其匹配面使得dr≤di(1≤i≤n,i≠r),f1,r即為生成樹的根結(jié)點;
步驟3圖生成樹及邊界匹配過程.從根節(jié)點f1,r出發(fā),利用廣度優(yōu)先搜索算法在M1的拓撲鄰接圖上生成樹,并搜索第i(1≤i≤n,i≠r)個樹結(jié)點f1,i在M2上的匹配面使得f1,i(1≤i≤n)的匹配面
形成集合
步驟4計算初始相似度.通過拓撲相似性計算公式依次計算f1,i(1≤i≤n)與其匹配面
之間的拓撲相似度
將M1與M2之間的相似度記為S(M1,M2),其值可通過下面公式計算
上式中,wi為M1中邊界面f1,i的拓撲相似度在模型相似度中的權(quán)重,wi用下式表示
式中,hi為邊界面f1,i的鄰接面數(shù)量。
5.如權(quán)利要求4所述的一種基于拓撲鄰接逼近的CAD模型檢索方法中,以檢索條件與檢索對象之間的初始邊界匹配作為輸入,給出并利用拓撲鄰接逼近算法對檢索對象與檢索條件之間的邊界匹配關(guān)系進行逼近運算,直到獲得滿足絕對誤差限的相似度,其中拓撲鄰接逼近算法按如下步驟進行
設由初始邊界匹配過程獲得的相似度為S0;
步驟1定義模型相似度的絕對誤差限ε及迭代誤差δ,令δ=|1.0—S0|;
步驟2如果δ≤ε,則轉(zhuǎn)至步驟9;否則令i=0,并進入步驟3;
步驟3計算任意邊界面f2,j(f2,j∈FS2—FS1′)與f1,i之間的幾何相似度SG(f1,i,f2,j)和拓撲相似度ST(f1,i,f2,j);若令FS1′←FS1′∪{f2,j},使f2,j與f1,i匹配;
步驟4對FS1中任意邊界面f1,k(1≤k≤n,k≠i),令若ΔS′>ΔS,則令
與f1,i匹配,
與f1,k匹配;
步驟5若i<n,則令i=i+1,并轉(zhuǎn)至步驟3;否則轉(zhuǎn)至步驟6;
步驟6根據(jù)FS1及其匹配面集合FS1′,計算M1和M2之間的相似度S(M1,M2);
步驟7計算S(M1,M2)與S0之間的迭代誤差δ,δ=|S(M1,M2)—S0|;
步驟8令S0=S(M1,M2),并轉(zhuǎn)至步驟2;
步驟9返回模型相似度S0,結(jié)束。
全文摘要
本發(fā)明一種基于拓撲鄰接逼近的CAD模型檢索方法屬于三維CAD模型檢索方法,特別涉及CAD模型結(jié)構(gòu)外形相似性的可視化檢索方法。采用拓撲鄰接逼近方法確定檢索對象與檢索條件之間的邊界匹配,自適應地從大量CAD模型中檢索結(jié)構(gòu)形狀與作為檢索條件的CAD模型相似的模型。首先提取CAD模型的邊界信息,并建立CAD模型的邊界幾何與拓撲信息模型;建立用于計算任意不同類型邊界面之間相似性的統(tǒng)一度量方法;以檢索條件與檢索對象之間的初始邊界匹配作為輸入,給出并利用拓撲鄰接逼近算法進行逼近運算,獲得滿足絕對誤差限的相似度。本發(fā)明可快速、高準確性地從大量CAD模型中檢索出結(jié)構(gòu)形狀與作為檢索條件的CAD模型相似的模型。
文檔編號G06F17/30GK101446958SQ20081018719
公開日2009年6月3日 申請日期2008年12月12日 優(yōu)先權(quán)日2008年12月12日
發(fā)明者偉 孫, 馬鐵強 申請人:大連理工大學