虛擬現實建模技術_第1頁
虛擬現實建模技術_第2頁
虛擬現實建模技術_第3頁
虛擬現實建模技術_第4頁
虛擬現實建模技術_第5頁
已閱讀5頁,還剩8頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、目錄一、 虛擬現實建模技術概述1二、 幾何建模技術12.1 形狀建模12.2 外觀建模32.2.1 紋理映射32.2.2 光照4三、 運動建模技術63.2 對象位置63.3 碰撞檢測7四、 物理建模技術84.1 分形技術84.2 粒子系統9五、 模型管理技術95.1 細節水平分割95.2 單元分割10六、 虛擬現實建模技術的最新發展方向10參考文獻11虛擬現實的建模技術及其最新研究方向史龍飛(電子信息學院 物理電子學)一、 虛擬現實建模技術概述虛擬現實技術是在虛擬的數字空間中模擬真實世界中的事物,這就需要一個逼真的數字模型,于是虛擬現實建模技術就產生了。虛擬現實與現實到底像不像, 是與建模技術

2、緊密相關的,所以建模技術的研究具有非常重要的意義。按照建模方式的不同, 現有的建模技術主要可以分為:幾何造型、掃描、基于圖象等幾種方法。基于幾何造型的建模技術需要專業的設計人員掌握相關三維軟件創建出物體的三維模型, 對設計人員要求高, 而且效率不高。三掃描儀以其高精度的優勢而得到應用,但由于測量設備本身所占空間比較大,容易受到空間、地點等因素的限制, 從而限制其在某些特定情況下的使用范圍,再者還需要進行一些后期的專業處理。基于數碼照片的三維建模技術則可以根據物體的不同方位運用不同的視角來拍攝的數碼照片, 只要依據確定的數碼相機的內外部參數來確定物體的特征點的空間方位。開發一個應用的第一步就是要

3、從數學上定義基本過程,并配備已有的硬件資源。第二步就是開發對象數據庫和優化模型,即建立對象的形狀、外表、行為、限制模型并將對應的I/0 工具映射到仿真的世界。建立一個虛擬對象模型所要考慮的一些基本問題有以下幾個方面:幾何建模,運動建模,對象特征,模型分割等。二、 幾何建模技術幾何建模描述虛擬對象的形狀(多邊形)三角形和頂點、以及它們的外表(紋理、表面反射系數、顏色) 。2.1 形狀建模要表現三維物體,最基本的是繪制出三維物體的輪廓,利用點和線來構建整個三維物體的外邊界,即僅使用邊界來表示三維物體。三維圖形物體中運用邊界表示的最普遍方式是使用一組包圍物體內部的表面多邊形來存儲物體的描述,多面體的

4、多邊形表示精確的定義了物體的表面特征,但對其它物體,則可以通過把表面嵌入到物體中來生成一個多邊形網格逼近,曲面上采用多邊形網格逼近可以通過將曲面分成更小的多邊形加以改進。由于線框輪廓能快速顯示以概要的說明表面結構,因此,這種表示在設計和實體模型應用中普遍采用。通過沿多邊形表面進行明暗處理來消除或減少多邊形邊界,以實現真實性繪制。對于對象的形狀建模常常可以利用現有的圖形庫來創建,常用的圖形庫有:圖形核心系統GKS(Graphical Kerna1 System )、程序員級分層結構交互圖形系統PHIGS、開放式圖形庫OpenGL(Open Graphics Library)等。下圖是使用Open

5、GL創建的幾個幾何形體:static void display(void) const double t = glutGet(GLUT_ELAPSED_TIME) / 1000.0; const double a = t*90.0; glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glColor3d(1,0,0); glPushMatrix(); glTranslated(-2.4,1.2,-6); glRotated(60,1,0,0); glRotated(a,0,0,1); glutSolidSphere(1,slices,stac

6、ks); glPopMatrix(); glPushMatrix(); glTranslated(0,1.2,-6); glRotated(60,1,0,0); glRotated(a,0,0,1); glutSolidCone(1,1,slices,stacks); glPopMatrix(); glutSwapBuffers();由上面代碼可以看出,要創建出一個三維模型來需要提供詳細的坐標信息,并且在創建過程中需要完全依靠想象力來進行布局,這對技術人員的要求比較高。為了避免直接用多邊形或三角形拼構某個對象形狀時繁瑣的過程,可以直接購買商品化幾何圖形庫。目前比較著名的是美國Viewpoint

7、 Datalabs 公司的View Point Catalog圖形庫。然而,規則三維立體可以用上述方法進行建模,那么對于某些特殊的幾何對象,現有的圖形庫不能滿足要求時,需通過對三維物體表面的測試得到離散的三維數據,然后將這些數據用多邊形描述出來從而構造出對象的形狀。近年來三維掃描技術得到了迅速發展。三維掃描儀,又稱為三維數字化儀,是一種將真實世界的立體彩色圖形轉換為計算機能直接處理的數字信號的裝置。它在V R技術、影視特技制作、高級游戲、文物保護等方面有著廣泛的應用。事實上,在V R 系統中,靠人工構造大量的三維彩色模型費時費力,且真實感差。利用三維掃描技術可為V R 系統提供大量的、與現實世

8、界完全一致的三維彩色模型數據。2.2 外觀建模對象的外表是一種物體區別于其它物體的質地特征,V R 系統中虛擬對象的外表真實感主要取決于它的表面反射和紋理。一般來講,只要時間足夠寬裕,用增加物體多邊形的方法可以繪制出十分逼真的圖形表面。但是VR 系統是典型的限時計算與顯示系統,對實時性要求很高。因此,省時的紋理映射(Texture Mapping )技術在VR 系統幾何建模中得到廣泛應用。用紋理映射技術處理對象的外表,一是增加了細節層次以及景物的真實感;二是提供了更好的三維空間線索;三是減少了視景多邊形的數目,因而提高了幀刷新率,增強了復雜場景的實時動態顯示效果。2.2.1 紋理映射所謂紋理映

9、射,就是把給定的紋理圖像映射到物體表面上,并不是特定的幾何模型,使用紋理映射可以避免對場景的每個細節都使用多邊形性來表示,進而可以大大減少環境模型的多邊形數目,提高圖形的顯示速度。從物體表面的質地特征來看,紋理映射分為顏色紋理映射和凹凸紋理映射。前者是通過顏色色彩或明暗度的變化來表現物體的表面細節;后者則是通過對景物表面各采樣點法向量的擾動來表現物體幾何形狀凹凸不平的粗糙質感。從具體算法來看,紋理映射可分為標準紋理映射和逆向紋理映射。標準紋理映射是對紋理表面均勻掃描,并直接映射到屏幕空間。逆向紋理映射是對屏幕上的每一像素,通過逆映射尋找到物體空間上的對應點,再在紋理空間找到相應的像素點,取得紋

10、理值經濾波后顯示該像素。紋理映射的過程如下圖所示:代表眼點,代表物體上的點,代表紋理上的像素點。所以,紋理映射實際上是屏幕空間、物體空間和紋理空間之間的一系列的變換過程。虛擬對象的紋理可通過拍攝對應物體的照片、然后將照片掃描進計算機的方法得到,也可用圖像繪制軟件建立。物體空間與紋理空間之間映射關系的確定是實現紋理映射的關鍵。這種映射關系可以描述為對于比較簡單的二次曲面,其紋理映射函數可解析地表達出來。例如圓柱面,可以用參數方程表示為給定,可以根據上式確定。而給定圓柱上的,也可以根據其逆映射求出:。但對于復雜的高次參數曲面來說,求解析表達式往往是不可能的,這是應采用數值求解方法來離散求的。下圖是

11、使用OpenGL做出的紋理貼圖示例:2.2.2 光照當光照射到物體表面是,可能被吸收、反射或者折射。被物體吸收的部分抓華為熱,而那些被反射、投射的光傳到我們的視覺系統,使我們能看見物體。為了模擬這一物理現象,我們使用一些數學公式來近似計算物體表面按照什么樣的規律,什么樣的比例來反射或者折射光線。這種公式稱作明暗效應模型。假設物體不透明,那么物體表面呈現的顏色僅僅由其反射光決定。通常,反射光由三個分量表示,分別是:環境反射光,漫反射光,鏡面反射光。1)環境反射光:環境反射光在任何方向上的分布相同。環境反射光用于模擬從環境中周圍物體散射到物體表面再反射出來的光。環境反射光可以用下面的公式表示:。其

12、中,是環境反射常數,與物體表面的性質有關;是入社的環境光光強,與環境的明暗有關。2) 漫反射光:漫反射光的空間分布也是均勻的,但是反射光的光強與入射光的入射角的余弦成正比。通常可以用下面的公式表示:。其中是漫反射常數,與物體表面的性質有關。是入射光的光強,是入射角。法向量N反射方向R光源L視點E 入射方向、反射方向以及實現方向示意圖3) 鏡面反射光:鏡面反射光為朝一定方向的反射光,他遵循光的反射定律。反射光和入射光對稱的位于表面法向量的兩側。對于純鏡面,入射到表面面元的光嚴格地遵守光的反射定律單向反射出去。然而真正的純鏡面是不存在的,一般光滑表面,實際上是由許多朝向不同的微小平面組成的,其鏡面

13、反射光存在于鏡面反射方向的周圍。實際常常使用余弦函數的某次冪來模擬一般光滑表面反射光的空間分布。如下式:光照處理算法在計算機圖形學中,光滑的曲面常用多邊形進行逼近表示,因為處理平面比處理曲面容易得多。但是,這樣就會是去緣由曲面的光滑度,呈現多邊形。這種現象是因為不同平面的法向量不同,形成不同平面之間的不連續的光強跳躍。Gouraud明暗處理技術可以簡單的進行平面的明暗處理。Gouraud明暗處理的思想是對離散光亮度進行采樣做雙線性插值以獲得一連續的光亮度函數。其基本算法是:如下圖所示,先計算多邊形定點出(A,B,C.D)的光亮度值,吧他們作為曲面光亮度的才樣點,然后再對多邊形定點的光亮度值機型

14、插值計算出多邊形內任一點的光亮度。若采用顯性掃描線繪制,可沿當前掃描線進行雙線性插值,這是一種簡單的插值算法。即先用多邊形定線的亮度值計算出掃描線與多邊形邊框焦點處的亮度值,在對掃描線內的每一個像素點計算光亮度值。Gouraud算法多邊形明暗度的線性插值這種算法有點是算法簡單,計算量小。但是這種算法在某下環境下存在缺陷。當他處于動態觀察物體的時候,物體表面的敏感度將以不規則的方式變化。下圖是光照示例,圖中白色小球是一個點光源,光線在BOX和SPHERE兩個對象上發生反射,產生明暗效果,環境的AMBIENT設置為0.2。光照示意圖三、 運動建模技術幾何建模只是反映了虛擬對象的靜態特性,而VR中還

15、要表現虛擬對象在虛擬世界中的動態特性,而有關對象位置變化、旋轉、碰撞、伸縮、手抓握、表面變形等方面的屬性就屬于運動建模問題。對象位置通常涉及對象的移動、伸縮和旋轉。因此往往需要用各種坐標系統來反映三維場景中對象之間的相互位置關系。例如,假如我們開著一輛汽車圍繞樹駕駛,從汽車內看該樹,該樹的視景就與汽車的運動模型非常相關,生成該樹視景的計算機就應不斷對該樹移動、旋轉和縮放。碰撞檢測經常用來檢測對象甲是否與對象乙相互作用。例如,兩輛汽車碰撞之前的外形模型與發生碰撞后的模型是很不一樣的。碰撞檢測需要計算對象間的相對位置。在虛擬現實應用中,碰撞檢測計算非常費時,研究者從省時和精確的角度發明了許多碰撞檢

16、測算法。3.2 對象位置在3D空間中移動對象公郵3個平移參數和沿他們做旋轉的3個旋轉參數。這些參數的測量結果組成一個6維的數據集,一般用的其次變換矩陣來描述:這里描述坐標系B的方向相對于坐標系A的旋轉子矩陣,是描述坐標系B的原點對于坐標系A的變化矢量。齊次變換矩陣節省了一定的計算量,由于旋轉和平移是按照同一規則進行的,故求其反置可用下面的式子:在虛擬現實中,一般給每個對象捆綁一個坐標系,該坐標系成為對象坐標系,捆綁的坐標系和對象一起移動,因此,在對象坐標系中對象頂點的位置和方向保持不變. 下圖顯示了捆綁坐標系(X1、Y1、Z1) 和(X2、Y2、Z2) 的兩個對象。虛擬對象坐標系對象的絕對為止

17、是相對一個固定的坐標系而言,這個坐標系成為世界坐標系(Xw,Yx,Zw),在對象1坐標系與世界坐標系的變換公式如下:這里的是描述世界坐標系中分量的向量;P是從到的位置向量。如果對象1在移動,那么變換便成為時間的函數。在系統中定線改變之后的位置可以按照方法計算。3.3 碰撞檢測碰撞檢測目前有很多方法, 一種最基本的的方法是通過計算兩個對象之間的的相對位置來實現。對于對象1和對象2, 要檢測它們是否發生碰撞, 可由上述變換公式計算對象1上的頂點V1相對于對象2的位置,即如果P(2)落在對象2之內, 碰撞便會發生. 如果P(2)(t) 沒有落在對象2之內, 還需要計算對象1的其他頂點, 直到所有頂點

18、完成上述計算并且得知對象1的所有頂點均未落在對象2之內, 才能得出對象1與對象2沒有發生碰撞的結論。如果對對象1與對象2上的每一個頂點均執行上述計算, 則效率太低。一種簡化的計算方法是應用矩形邊界箱。那么碰撞檢測發生在對象1與對象2的邊界箱之間。事實上, 現在很多VRML開發工具都采用此種方法來實現。但其不足的是位置上的精確度有些降低。邊界箱示意圖常用的邊界箱不僅僅是矩形,還可以是圓球,圓柱等。邊界箱的選擇跟需要碰撞檢測的虛擬對象有關,盡量做到算法簡單,檢測精度較高。如上圖所示的邊界向選擇并不是很好,邊界箱和虛擬對象之間的空間非常大,甚至超過了對象本身的體積,這樣檢測的碰撞將會非常不準確。四、

19、 物理建模技術在幾何建模和運動建模之后,虛擬世界建模的下一步是綜合體現對象的物理特性,包括重力、慣性、表面硬度、柔軟度和變形模式等,這些特征與幾何建模和行為法則相融合,形成更具有真實感的虛擬環境。例如,用戶用虛擬手握住一個球,如果建立了該球的物理模型,用戶就能夠真實地感覺到該球的重量、硬軟程度等。物理建模是虛擬現實中比較高層次的建模,它需要物理學和計算機圖形學的配合,設計到力學反饋問題,樹妖是重量建模、表面變形和軟硬度的個物理屬性的體現。分行技術和例子系統就是典型的物理建模方法。4.1 分形技術分型技術可以描述具有自相似特征的數據集。自相似特征的典型例子是樹。若不考慮樹葉的區別,當我們靠近樹梢

20、時,數的細稍看起來也像一棵大樹。有相關的一組樹梢構成的一根樹枝,從一定距離觀察時也像一棵大樹。這種結構上的自相似成為統計意義上的自相似。自相似結構可用于復雜的不規則外形物體的建模。該技術首先用于水流和山體的地理特征建模。例如,我們可以利用三角形來生成一個隨機搞成的地理模型,去三角形三邊的中點并按吮吸連接起來,將三角形分割成4個三角形,同時,我們給每個中隨機地賦值一個高程值,然后遞歸上述過程,我們就可以產生相當真實的山體。分型技術的優點是簡單的操作就可以完成復雜的不規則物體的建模,缺點是計算量太大,不利于時候死刑。因此,在虛擬現實宏一般僅僅用于靜態遠景的建模。4.2 粒子系統粒子系統是一種典型的

21、物理建模系統,例子系統是用簡單的元素來完成復雜的運動的建模。粒子系統有大量的成為例子的簡單元素構成,每個例子具有位置、速度。顏色和生命期等屬性,這些屬性可以根據動力學計算和隨機過程得到。在虛擬顯示中,例子系統常用與描述火焰、水流、雨雪、旋風、噴泉等現象。在虛擬顯示中例子系統用于動態的、運動的物體建模。五、 模型管理技術對一個復雜的虛擬世界,其包含許多的對象,每個對象又包含各種模型,這樣由此帶來的巨大計算負載使VR引擎(VR實現的軟件和硬件環境)幾乎不可能做到信息的實時處理和吞吐。這就需要模型管理技術來幫助VR引擎以交互速度繪制復雜虛擬現實,同時對仿真質量不會產生重大影響。常用的模型管理技術有:

22、細節等級(LOD)管理技術和單元分割技術。5.1 細節水平分割細節水平(Level of Detail)分割是在各種細節水平存數對象,當遠距離觀察時,物體表面顯示非常簡單,隨著距離的拉近,不斷增加物體的復雜性。這樣可以大大減少多邊形的數量,渲染速度也有很大的提高。他可以利用LOD圖形數據庫來實現。人的視覺通常有如下限制:(1)視覺精度。虛擬顯示顯示設備的分辨率通常都元元小于人眼的分辨率。所以,顯示設備的分辨率將最終決定處于虛擬顯示系統中的用戶的視覺精度;(2)邊緣視覺效果。人眼對于細節的敏感度是在整個視域中不均勻分布的,事實上人的視覺在視域中央的越6度的范圍內最敏感,并向外沿只想邊緣的方向逐漸

23、下降;(3)運動敏感度。對于運動的物體,人的視覺系統能分辨出的細節要少于物體處于靜止狀態下能分辨出的細節。基于以上的分析,產生可3中對應的LOD切換選擇標準:1) 尺寸/距離標準。當復雜的對象離視點較遠時,它在圖像平面上的同應非常小,對象的許多細節常常投影到一個像素點上,此時這些冗余多邊形可以從景物表面中刪去而不會影響景物的顯示精度。當景物距離視點較近時,這些多邊形則需要一一繪制才能保證繪制精度。所以,可以定義一個距離門限值,如果視點距離尸體對象的距離超過這個門限值就選擇低級的LOD模型。2) 偏心距離標準。人的視覺系統只在一個很小的范圍內保持很高的分辨率。虛擬顯示的一個重要顯示設備就是頭盔,

24、而頭盔的時域一般是在30到120度。因此,尸體很可能會超過視覺精度較高的范圍,進去邊緣區域。在這種情況下,如果使用精度高的模型就會造成浪費,因為人眼不能區分這一區域內的所有細節。因此可以根據實體偏離視域中心的程度來選擇使用那一級別的LOD模型。3) 運動標準。基于人眼對運動物體不敏感這一特性,產生了運動標準,即根據對象相對于視點的移動速度來選擇相應的LOD模型。運動速度快就援用低級的LOD模型,速度慢就選擇高級的LOD模型。LOD的目的就是盡量按照細節程度減少多邊形的個數。至少有四種方法來減少多邊形的數量:(1)刪除隱藏的面;(2)多使用2D模型而少用3D模型,隨著距離的增加,很難區分深度,因

25、此使用2D模型即可。(3)使用簡單的輪廓來代替復雜的形狀;(4)使用紋理代替細節描述,首先創建模型的復雜版本,然后生成圖形文件。它一般遵循60%規則,即對于每個LOD將多邊形數目減少到原來的60%。5.2 單元分割單元分割是將虛擬環境分割成較小的單元,只有在當前模型中的物體才會被渲染。因此極大的減少了處理模型的復雜度。這種分割法對于大型的建筑物是非常實用的,因為人在視野中縮減的物體只是整個虛擬環境中的很小的一部分,值處理當前所見的物體大大提高了系統的處理速度。六、 虛擬現實建模技術的最新發展方向虛擬現實技術是許多相關學科領域交叉、集成的產物。它的研究內容涉及到人工智能、計算機科學、電子學、傳感器、計算機圖形學、智能控制、心理學等。雖然這個領域的技術潛力是巨大的,應用前景也是很廣闊的,但仍存在著許多尚未解決的理論問題和尚未克服的技術障礙。客觀而論,目前

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論