何 波, 高滿屯, 王淑俠
(西北工業(yè)大學(xué)機(jī)電學(xué)院,陜西 西安 710072)
基于直線平行垂直關(guān)系美化三維線框模型
何 波, 高滿屯, 王淑俠
(西北工業(yè)大學(xué)機(jī)電學(xué)院,陜西 西安 710072)
針對(duì)計(jì)算機(jī)線圖解釋中直線間幾何關(guān)系可能存在不準(zhǔn)確,從而出現(xiàn)視覺表達(dá)問題的不足,研究了基于直線平行垂直關(guān)系美化三維線框模型方法。首先,計(jì)算正視投影空間中三維線框模型中棱線方向矢量并選擇基準(zhǔn)棱線;然后,采用直線間平行垂直約束對(duì)線框模型中出現(xiàn)幾何錯(cuò)誤的直線進(jìn)行校正,重新選擇已校正棱線為基準(zhǔn)棱線重復(fù)上述操作;最后根據(jù)新的棱線參數(shù)確定三維線框模型頂點(diǎn)新坐標(biāo)。通過算例結(jié)果表明,該方法能夠有效地解決線框模型中出現(xiàn)的平行垂直幾何問題,達(dá)到線框模型視覺上的美化。
線圖解釋;線框圖模型;幾何結(jié)構(gòu);美化
在工程設(shè)計(jì)的概念設(shè)計(jì)階段,設(shè)計(jì)者經(jīng)常畫出立體線圖(草圖),且需要反復(fù)對(duì)設(shè)計(jì)進(jìn)行修改。目前,具有強(qiáng)大功能的CAD系統(tǒng)只能對(duì)設(shè)計(jì)的詳細(xì)設(shè)計(jì)過程提供很大的幫助,而處理草
圖的能力極弱,也不能直接將線圖轉(zhuǎn)換為三維物體結(jié)構(gòu)信息,不便于在工程設(shè)計(jì)的概念設(shè)計(jì)階段使用。
隨著科學(xué)技術(shù)的發(fā)展,人機(jī)之間用圖形進(jìn)行通訊日益受到重視,在許多場合顯示出其重要性。為使計(jì)算機(jī)能“看”懂物體投影線圖,需要研究計(jì)算機(jī)解釋投影線圖的機(jī)理。計(jì)算機(jī)分析、處理和理解線圖的研究成果可用于互聯(lián)網(wǎng)、CAD系統(tǒng)中的人機(jī)通訊接口、逆向工程及計(jì)算機(jī)視覺系統(tǒng)等領(lǐng)域,能縮短圖形輸入時(shí)間,減輕人-機(jī)通訊中“人”的工作量。
線圖解釋[1]是計(jì)算機(jī)視覺和模式識(shí)別的一個(gè)重要研究領(lǐng)域。線圖的解釋就是根據(jù)物體(或場景)的一幅或多幅投影圖像理解三維空間中的景物。對(duì)于高度進(jìn)化的人類視覺而言,理解三維景物是一件比較容易的事情,但要用計(jì)算機(jī)來模擬這一過程,是一項(xiàng)極其困難的工作。
經(jīng)過計(jì)算機(jī)解釋立體線圖后,從二維線圖恢復(fù)的三維物體線框圖模型,即使拓?fù)浣Y(jié)構(gòu)完全正確,恢復(fù)出的三維物體線框模型仍然可能存在幾何結(jié)構(gòu)缺陷(如圖 1所示),而線框模型是構(gòu)造三維物體實(shí)體模型的基礎(chǔ)。只有在保證三維物體線框模型拓?fù)浜蛶缀谓Y(jié)構(gòu)正確的情況下才能得到正確的三維物體實(shí)體模型。
圖1 恢復(fù)的三維線框模型
從二維線圖恢復(fù)的三維線框模型經(jīng)常出現(xiàn)如下一些問題[2-4]:①三維物體中應(yīng)該平行的平面或直線未平行;②三維物體中應(yīng)該垂直的平面或者直線不垂直;③三維物體上共平面的點(diǎn)實(shí)際上不共面;④三維物體的幾何結(jié)構(gòu)中對(duì)稱的部分不完全對(duì)稱;⑤三維物體的幾何結(jié)構(gòu)不符合力學(xué)性能、材料性能的要求,如壁厚不均勻,即面的距離不合適等;⑥三維物體中孔的位置不正確;⑦三維物體中兩個(gè)表面之間的夾角不符合要求。
Lipson和Shpitalni[5]提出了一個(gè)從單幅、不準(zhǔn)確的二維線框草圖恢復(fù)三維物體結(jié)構(gòu)的優(yōu)化算法,線圖中的不準(zhǔn)確包括頂點(diǎn)位置誤差和線圖不完整。但不足之處是初始值不宜選取,而且圖像中各種規(guī)則的提取比較困難。Company等[6]利用模擬退火技術(shù)進(jìn)行優(yōu)化,得到了局部最優(yōu)解,優(yōu)化結(jié)果能得到最可能符合人類視覺心理線圖。但是得到的最優(yōu)解有可能是局部最優(yōu)解而不是全局最優(yōu)解。儲(chǔ)珺等[7]采用優(yōu)化和迭代技術(shù)對(duì)線圖進(jìn)行校正,使校正后的線圖是一個(gè)平面立體的正確投影,恢復(fù)的平面立體與原畫線圖表示的平面立體盡量接近,但這并不是一個(gè)合適的做法,實(shí)際上解釋線圖獲得三維物體是最終目標(biāo),而非三維物體的重投影盡量與原線圖一致。莫白聲[8]依據(jù)線圖空間結(jié)構(gòu)中IE關(guān)系及FV關(guān)系采用了迭代方法對(duì)線圖進(jìn)行了修正。但是其不足之處在于迭代運(yùn)算中存在矩陣的降階問題,而且其所用方法最適用于對(duì)局部存在的誤差進(jìn)行處理。Lee和Fang[9]研究了一種使用圖形上提取的立方體角信息及所標(biāo)識(shí)面信息作為初始信息的線圖恢復(fù)方法,這種方法非常精確而且效率很高,但同時(shí)該方法對(duì)初始值的精確要求很高,如果采用了不準(zhǔn)確的初始信息,則恢復(fù)的三維模型會(huì)出現(xiàn)扭曲變形,達(dá)不到線圖解釋基本目的。
現(xiàn)有線圖解釋優(yōu)化方法雖然能從線圖中恢復(fù)平面立體三維結(jié)構(gòu),但仍會(huì)出現(xiàn)恢復(fù)的平面立體有時(shí)不符合人類視覺感受,不具備美化效果。若線圖解釋中考慮幾何元素之間的相對(duì)位置關(guān)系和度量關(guān)系,則線性系統(tǒng)將轉(zhuǎn)化為非線性系統(tǒng),使問題變得更復(fù)雜。所以本文提出新的觀點(diǎn),將計(jì)算機(jī)線圖解釋分為兩步,首先進(jìn)行傳統(tǒng)意義上的三維恢復(fù),然后采用本文提出的美化方法對(duì)線框圖進(jìn)行后期處理,得到人類視覺感官上可以接受的三維線框模型。
1.1 三維物體線框模型美化算法
本文主要基于棱線之間的平行、垂直、相交關(guān)系美化三維物體的線框模型。基于直線平行、垂直關(guān)系的三維線框模型美化算法流程圖如圖2所示。
1.2 棱線之間的平行性約束判斷及修正
從二維線圖到三維物體線框模型中的過程中,二維線圖上平行的直線,在三維物體線框模型中理論上應(yīng)該是平行或異面,而實(shí)際模型中,棱線都是一些線段,而三維物體上的線段數(shù)量又
在可計(jì)算的范圍之內(nèi),因此異面直線的問題在實(shí)際應(yīng)用上可以不用考慮。三維物體線框模型中棱線之間的平行性約束,由于誤差、誤差傳播以及二維線圖中的誤差等原因,可能沒有滿足或者沒有精確滿足,因此,三維物體線框圖中的棱線平行性約束有些需要修正。
圖2 算法流程圖
式(1)中各個(gè)參數(shù)均為正軸測投影下三維直線法線式表達(dá)式[1]中的參數(shù),其中ρ為空間直線的投影直線的法線長,θ表示為投影直線夾角,aj與 dj為空間直線推導(dǎo)中的參數(shù)。
根據(jù)式(1),棱線平行所滿足的約束條件為:
為簡化形式,令:
根據(jù)三維物體線框模型的數(shù)據(jù)進(jìn)行判斷,驗(yàn)證線框模型中應(yīng)該平行的棱線是否平行,然后根據(jù)平行性約束,對(duì)不滿足平行性的棱線進(jìn)行修正。如圖3所示,該線框模型中一共有12個(gè)頂點(diǎn),18條棱線(其中有平行棱線15對(duì))。先獲得的18條棱線的參數(shù)和12個(gè)頂點(diǎn)的z坐標(biāo)值。
圖3 恢復(fù)的三維物體線框模型
1.3 棱線之間的垂直性約束判斷及修正
由于誤差、誤差傳播以及二維線圖中的誤差等原因,三維物體線框模型中棱線之間的垂直性約束可能沒有滿足或者沒有精確滿足。因此,三維物體線框圖中的棱線垂直性約束有些需要修正。
如圖3所示,以三面頂點(diǎn)1為例來分析,屬于頂點(diǎn)1的三條棱線中,若與不垂直,以棱線為基準(zhǔn)棱線,因此需要調(diào)整 L(1,11)的方向矢量。具體方法如下:
(1)設(shè)L(1,11)的方向矢量為 (sin2α ,-cosαsinα, - a),其中a和α為需要重新確定的未知參數(shù);
(3)求解方程組得便可得 a和α的數(shù)值,即為L(1,11)所需調(diào)整數(shù)值;其他棱線之間垂直性的判別和修正類似。
1.4 棱線相交性判斷與修正
三維物體線框模型中的棱線經(jīng)過利用垂直性和平行性約束進(jìn)行調(diào)整其方向矢量后,有可能就不滿足棱線的相交性約束了,因此,經(jīng)過調(diào)整以后的三維物體線框模型需要進(jìn)一步判斷和修正三維物體線框模型上應(yīng)該相交棱線是否仍然相交。經(jīng)過上面兩步調(diào)整之后,各條棱線的方向矢量已經(jīng)確定,棱線是否相交只與棱線參數(shù)d有關(guān)。因此,如果棱線不滿足相交的約束,只需調(diào)整棱線的參數(shù)d??臻g兩條棱線相交的約束條件為:
其中 ai和 aj為已知,如果兩條棱線不相交,則固定基準(zhǔn)棱線不動(dòng),調(diào)整另外一條棱線的參數(shù)d。
調(diào)整過棱線的方向矢量之后,棱線對(duì)之間滿足了平行性與垂直性約束,但各棱線對(duì)之間可能不再滿足相交的約束條件。因此,需要在不改變棱線方向矢量的條件下調(diào)整棱線的空間位置。由空間直線的方程:
式中,ρ、sinθ、cosθ為從二維線圖中所獲得的已知信息。又由于空間棱線的方向矢量
為已經(jīng)得以確定,參數(shù) a已經(jīng)完全確定。因此,調(diào)整三維物體上棱線的位置只能調(diào)整參數(shù)d。
具體調(diào)整方法:任選一條棱線為基準(zhǔn)棱線,如選擇棱線L(1,2)為基準(zhǔn),即L(1,2)的參數(shù)不變,根據(jù)棱線 L(1,2)與棱線 L(1,4)的相交約束,即根據(jù)式(5),獲得 d1的值。同理,獲得與棱線 L(1,2)相交的所有棱線的d值;再選已經(jīng)確定d值的棱線為基準(zhǔn)棱線,根據(jù)棱線對(duì)之間的相交約束獲得與其相交所有棱線的d值;依次調(diào)整三維物體上的其他所有棱線的位置。
1.5 三維物體上頂點(diǎn)坐標(biāo)的重新確定
對(duì)一個(gè)三維物體線框模型經(jīng)過上述各個(gè)過程的一系列調(diào)整之后,三維物體線框模型上各個(gè)頂點(diǎn)的位置也隨之發(fā)生了改變。因此,需要重新確定三維物體線框模型的所有頂點(diǎn)的位置。
三維物體上棱線的參數(shù)確定以后,確定三維物體上頂點(diǎn)的新位置就很容易了。根據(jù)三維物體最初始的頂點(diǎn)與棱線的拓?fù)潢P(guān)系,利用空間兩條直線相交求交點(diǎn)的方法可獲取頂點(diǎn)的新坐標(biāo)。
算例1圖4是從線圖解釋恢復(fù)的三維物體線框模型。根據(jù)人類視覺習(xí)慣和工程實(shí)際要求,該三維物體線框模型中的棱線有些應(yīng)該滿足垂直性和平行性約束條件,但恢復(fù)出的三維物體線框模型沒有滿足這些條件,如L(1,2), L(1,3), L(1,4)顯然與對(duì)應(yīng)棱線不平行而且相互之間也未垂直。因此需要對(duì)恢復(fù)的三維物體線框模型進(jìn)行美化。采用本文方法美化后的三維物體線框模型,如圖5所示。從圖中可以看出,采用本文美化方法達(dá)到線框模型視覺上的美化。
圖4 原三維物體線框模型
圖5 美化之后的三維物體線框模型
算例2圖6是從線圖解釋恢復(fù)的三維物體線框模型。由于線圖中一個(gè)節(jié)點(diǎn)的位置不正確,導(dǎo)致恢復(fù)的三維物體線框模型中一些棱線不滿足垂直性和平行性約束條件。采用本文方法美化后的三維物體線框模型如圖7所示。從圖中可以看出,采用本文美化方法達(dá)到線框模型視覺上的美化。
圖6 原三維線框模型
圖7 美化之后的三維物體線框模型
提出了基于直線平行約束、垂直約束、相交關(guān)系美化三維物體線框模型的算法。通過大量美化三維物體的實(shí)踐,作者認(rèn)為,在美化三維物體時(shí),利用的關(guān)系順序最佳為:平行→垂直→平行→…→平行→垂直→相交。采用本文美化方法美化有誤差的三維物體線框模型,獲得了符合實(shí)驗(yàn)?zāi)繕?biāo)的三維物體線框模型,達(dá)到線框模型視覺上的美化。
[1] 高滿屯, 儲(chǔ) 珺, 董黎君. 計(jì)算機(jī)解釋立體線圖的方法與實(shí)踐(2009)[M]. 西安: 西北工業(yè)大學(xué)出版社, 2009: 171-184.
[2] Varley P A C, Martin R R, Suzuki H. Can machines interpret line drawings?[C]//Sketch-Based Znterfaces and Modeling 2004: Eurographics Symposium Procedings. Aive-la-Ville, Switzerland: Eurographics, Association, 2004: 107-116.
[3] 高滿屯, 儲(chǔ) 珺, 董黎君. 線圖解釋研究綜述[J].工程圖學(xué)學(xué)報(bào), 2006, 27(5): 1-11.
[4] 儲(chǔ) 珺. 從單幅畫隱線立體線圖恢復(fù)平面立體三維結(jié)構(gòu)的研究[D]. 西安: 西北工業(yè)大學(xué), 2005.
[5] Lipson H, Shpitalni M. A new interface for conceptual design based on object reconstruction from a single freehand sketch [J]. CIRP Annals-Manufacturing Technology, 1995, 44(1):133-136.
[6] Company P, Contero M, Conesa J, Vicent A P. An optimisation-based reconstruction engine for 3D modelling by sketching [J]. Computer Aided Design, 2004, 28(6): 955-979.
[7] 儲(chǔ) 珺, 高滿屯, 陳國定. 基于迭代技術(shù)的有誤差單幅線圖的計(jì)算機(jī)解釋[J]. 模式識(shí)別與人工智能, 2005, 18(5): 615-620.
[8] 莫白聲. 平面立體線圖解釋的誤差分析和誤差修正研究[D]. 南昌: 南昌航空大學(xué), 2007.
[9] Lee Y T, Fang Fen. 3D reconstruction of polyhedral objects from single parallel projections using cubic corner [J]. Computer Aided Design, 2011, 43(8):1025-1034.
Beautification of Wireframe Model of Three-Dimensional Objects Based on Parallel and Vertical Linear Relationship
He Bo, Gao Mantun, Wang Shuxia
(College of Electromechanical, Northwestern Polytechnical University, Xi′an Shaanxi 710072, China)
In order to solve the problem that errors may exist in the geometrical interpretation of the relationship between the lines and thus result in the inadequacy in visual expression,a method is developed on parallel and vertical linear relationship for beautifying the wireframe model of three-dimensional objects. Firstly, the ridge direction vector of the three-dimensional wireframe models in the face projection space is calculated and a benchmark ridge is chosen; then geometric errors appearing in wireframe model are corrected by the parallel and vertical constraint of the linear relationship, the corrected ridge is reselected as the new benchmark and a repeatition of the operation is conducted. Finally, the new coordinates of the vertices of the three-dimensional wireframe models are calculated according to the new ridge parameter. The numerical example shows that the proposed methods can effectively solve the parallel and vertical geometric problems in the wireframe model to beautify the wireframe model.
line drawing interpretation; wireframe model; geometry structure; beautification
TP 391.41
A
2095-302X (2014)03-0325-05
2013-11-08;定稿日期:2014-01-23
國家自然科學(xué)基金資助項(xiàng)目(51105310;513101435)
何 波(1986-),男,陜西寶雞人,碩士。主要研究方向?yàn)橛?jì)算機(jī)圖形學(xué)。E-mail:heyu1743@163.com
高滿屯(1962-),男,山西襄汾人,教授,碩士。主要研究方向?yàn)橥队袄碚摗D形學(xué)、計(jì)算機(jī)視覺、幾何學(xué)。E-mail:gaomant@nwpu.edu.cn