趙德勝,張 雪,李麗萍,鄭 鵬,卜 康
(西安郵電大學(xué) 理學(xué)院,陜西 西安710121)
二維視圖圖紙原是工程技術(shù)人員進(jìn)行技術(shù)交流的重要方式,但隨著科學(xué)技術(shù)的發(fā)展,非專業(yè)技術(shù)人員與專業(yè)技術(shù)人員進(jìn)行技術(shù)交流越來越普遍,而且,隨著計算機(jī)技術(shù)和數(shù)控機(jī)床技術(shù)的發(fā)展,機(jī)械加工人員可以直接利用三維工程圖進(jìn)行機(jī)械零件加工,因此,二維圖紙的發(fā)展受到一定的制約。與二維視圖圖紙不同,三維模型具有直觀性強(qiáng)、交流便捷、以及可進(jìn)行產(chǎn)品裝配干涉檢查等優(yōu)點,因此,三維設(shè)計越來越受到人們的重視[1-3],所以,把二維工程圖轉(zhuǎn)化為三維圖就很有必要。
把二維工程圖轉(zhuǎn)化為三維效果圖算法的快速性、可靠性對于后續(xù)的三維重建具有決定性作用[4],而把二維工程圖劃分為主視圖、俯視圖、左視圖以及輔助視圖等各個視圖區(qū)是其關(guān)鍵性的一步。
在視圖劃分時,由于三視圖各個視圖之間存在不連續(xù)特征,即在主視圖與左視圖、主視圖與俯視圖之間的空檔中不存在任何圖元,因此,可以利用這種特征找出主視圖與左視圖、主視圖與俯視圖之間的間隔區(qū)域,并在間隔區(qū)域各自畫出一條直線作為二者分界線,從而把三個視圖區(qū)別開[5-9]。
由于在實際工作中,工程圖復(fù)雜程度不一。大部分工程圖只有三個視圖區(qū)(主視圖、俯視圖、左視圖)組成,稱為標(biāo)準(zhǔn)三視圖。也有部分工程圖有兩個或多于三個視圖組成。文[2,7]在視圖識別時只考慮了標(biāo)準(zhǔn)三視圖的情況,對于含有兩個或多于三個視圖的工程圖則沒有討論。本文擬基于黃金分割優(yōu)化算法給出一種視圖識別方法,該算法不僅適用于標(biāo)準(zhǔn)三視圖,而且適用于非標(biāo)準(zhǔn)三視圖的情況。
黃金分割法是一種常用的一維搜索試探方法,又稱0.618法。黃金分割法適用于搜索區(qū)間[a,b]上的任何單谷函數(shù)求極大(?。┲祮栴},對函數(shù)沒有連續(xù)性要求。其基本原理是:在搜索區(qū)間[a,b]內(nèi)適當(dāng)插入兩點α1和α2,并計算其函數(shù)值。α1和α2將搜索區(qū)間分成三段。利用區(qū)間消去法原理,刪去其中一段,使得搜索區(qū)間縮短。然后,在保留下來的區(qū)間上做同樣的處理,如此迭代下去使區(qū)間無限縮小,從而得到目標(biāo)值fmax(x)(或fmin(x))。黃金分割法要求插入點α1和α2相對于區(qū)間[a,b]的兩端點具有對稱性[10],即
其中λ為待定常數(shù),通常取λ=0.618。
黃金分割法通常用于對單谷連續(xù)函數(shù)f(x)求極大(或極?。┲?。其目標(biāo)函數(shù)fmax(x)(或fmin(x))為未知量,通過不斷縮小所搜區(qū)間[a,b],來求取一個x,使得
視圖分界線的求取采用逐步試探的方式,即先作出一條直線,若不合格,則重作一條原直線的平行線進(jìn)行再次判斷,因此不同直線上的元素特征是不連續(xù)的。由于黃金分割法具有適用于離散函數(shù)的優(yōu)點,故可用于視圖識別。
由于視圖分界線與工程圖中的圖元沒有交點,而非視圖分界線與圖元存在交點,因此,把直線與圖元交點的數(shù)量作為目標(biāo)函數(shù)。由于視圖分界線與圖元無交點,取目標(biāo)函數(shù)
把目標(biāo)函數(shù)的直線作為視圖分界線。
由于在工程圖中,視圖區(qū)分別按照橫軸和縱軸方向分布,因此在視圖識別時應(yīng)分別按照橫軸和縱軸方向進(jìn)行識別。
在確定初始搜索區(qū)間時,也需要分別確定橫軸和縱軸方向上的搜索區(qū)間。在縱軸方向上初始搜索區(qū)間應(yīng)以縱軸方向上分布圖元坐標(biāo)的最大值和最小值作為初始搜索區(qū)間。在橫軸方向與此相同。
首先讀取工程圖中所有粗實線圖元端點或頂點的坐標(biāo)值。然后求出縱軸坐標(biāo)值最大的點M1和最小的點M2。把M1的縱坐標(biāo)值b作為區(qū)間上限,把M2的縱坐標(biāo)值a作為區(qū)間下限,由此可得搜索區(qū)間[a,b]。
取λ=0.618,將M1和M2的縱坐標(biāo)值b和a帶入式(1)即可求得插入點α1和α2。
以(0,α1)為起點,作一條平行于橫軸的直線l1。以(0,α2)為起點,作一條平行于橫軸的直線l2。
判斷l(xiāng)1、l2與圖形中圖元是否有交點,如果都無交點,則把直線l1和l2作為視圖分界線。
若只有一條直線(假設(shè)為l1)沒有交點,則把該直線l1作為視圖分界線之一。取[α1,b]為新的搜索區(qū)間,開始新的搜索過程。如果在限定循環(huán)次數(shù)內(nèi)仍不能確定分界線,則程序搜索終止。此時,程序認(rèn)定不再有新的視圖區(qū)。
如果l1、l2與圖形中圖元都有交點,則分別取l1和l2上所有交點中橫坐標(biāo)值最大點A1和A2,其橫坐標(biāo)值分別記為x1和x2,縱坐標(biāo)值分別為y1和y2。再按以下步驟確定視圖分界線。
設(shè)定ε的值,取點M2的橫坐標(biāo)值xM。如果
則?。踶1,y2]和[y2,b]為新的搜索區(qū)間。如果
則?。踑,y1]和[y1,b]為兩個新的搜索區(qū)間。如果
則?。踶1,y2]為新的搜索區(qū)間。
確定新的搜索區(qū)間后,循環(huán)執(zhí)行前述步驟即可得到視圖分界線。如果經(jīng)過有限次循環(huán),仍不能確定視圖分界線,且對于搜索區(qū)間[ymin,ymax]有
則程序自動終止。
利用已經(jīng)讀取的圖形文件中所有圖元端點或頂點的坐標(biāo)值,求出橫坐標(biāo)值最大的點M1和最小的點M2。把M1的橫坐標(biāo)值by作為區(qū)間上限,把M2的橫坐標(biāo)值ay作為區(qū)間下限,由此可得搜索區(qū)間[ay,by]。
與縱軸方向上視圖的識別過程相類似,可把主視圖和左視圖識別出來,并可判斷是否存在右視圖和后視圖。
例1(標(biāo)準(zhǔn)三視圖的識別) 如圖1所示三視圖,L1為主視圖和俯視圖的分界線,L2為主視圖與左視圖的分界線。程序只需循環(huán)6次即可得到正確結(jié)果。
圖1 標(biāo)準(zhǔn)三視圖
例2(只含兩個視圖的工程圖) 如圖2所示的工程圖只有兩個基本視圖,細(xì)實線為分界線。雖然主視圖長度和左視圖長度差別較大,循環(huán)次數(shù)較多,但程序只需循環(huán)10次即可得到正確結(jié)果。
圖2 少視圖工程圖
例3(具有多個基本視圖的工程圖) 如圖3所示,圖中細(xì)實線為各基本視圖分界線。圖中含有多個基本視圖,程序循環(huán)次數(shù)較多,但仍能夠把基本視圖分開。
圖3 多視圖工程圖
利用黃金分割法適用于離散函數(shù)的特點,根據(jù)工程三視圖的自身特性,建立了適用于黃金分割法的數(shù)學(xué)模型。該算法不僅可以識別標(biāo)準(zhǔn)三視圖,而且可以識別非標(biāo)準(zhǔn)工程圖。與其他算法相比,該算法具有運行速度快、效率高、應(yīng)用范圍廣的特點。特別是對匹配精度高,幾何和拓?fù)湫畔⑼暾娜晥D尤其有效。該方法可廣泛應(yīng)用于基于工程圖的自動重建和識別系統(tǒng)當(dāng)中,對計算機(jī)視覺、工業(yè)自動化檢測、數(shù)控加工、逆向工程及其它計算機(jī)輔助設(shè)計與制造領(lǐng)域也有一定的參考作用。
在整個三維重建系統(tǒng)中,把視圖分割開只是工程圖三維重建中的關(guān)鍵一步,基本圖元的特征匹配和準(zhǔn)確的零部件三維重建才是研究的難點和重點。
[1]傅自鋼.基于工程圖的三維形體重建方法研究[D].長沙:中南大學(xué),2011:3-5.
[2]張東昌.基于工程三視圖的三維智能重建技術(shù)的研究[D].大連:大連理工大學(xué),2008:1-3.
[3]史利民,郭復(fù)勝,高偉,等.基于語義交互的三維重建[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué) 報,2011,23(5):839-848.
[4]董玉德,趙韓.CAD二次開發(fā)理論與技術(shù)[M].合肥:合肥工業(yè)大學(xué)出版社,2009:10-30.
[5]Yan Qingwen,Chen C L P,Tang Zesheng.Efficient algorithm for the reconstruction of 3Dobjects from orthographic projections[J].CAD,1994,26(9):699-717.
[6]張怡文,龔潔暉,張慧.由三視圖重建包含圓環(huán)面的形體[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2008,20(2):186-192.
[7]陸國棟,段鵬,彭群生.基于基元組合關(guān)系的形體重建技術(shù)研究[J].工程圖學(xué)學(xué)報,2007,28(1):48-54.
[8]鄭鵬飛,林大鈞,劉小羊,等.基于三視圖的實體重建技術(shù)研究[J].工程圖學(xué)學(xué)報,2011.32(2):49-54.
[9]Furukawa Y,Curless B,Seitz S M,et al.Towardsint internet-scale multi-view stereo[C]//Proceedings of IEEE International Conference on Computer Vision and Pattern Recognition.USA San Francisco:IEEE,2010:1434-1441.
[10]孫靖民,梁迎春.機(jī)械優(yōu)化設(shè)計[M].4版.北京:機(jī)械工業(yè)出版社,2006:9-52.