官术网_书友最值得收藏!

二、建模技術

用戶與虛擬現實系統的交互都是在虛擬場景中進行的,用戶沉浸在虛擬場景之中,所以虛擬場景的建模是虛擬現實技術的核心內容。虛擬現實系統的建模與傳統的圖形建模有相似之處,但虛擬場景是動態的并且能按照自身的規律產生復雜的行為或與用戶交互。因此,除了三維模型建模之外,虛擬現實系統中的建模還包括物理建模和行為建模。三維建模僅僅是對虛擬現實環境中物體模型幾何形狀的表示,而物理建模則涉及物體的物理屬性,行為建模還會涉及三維模型的物理本質及其內在工作機理。

(一)三維建模技術

目前,三維建模技術主要有基于幾何的建模(Geometrical-Based Modeling)和基于圖像的建模(Image-Based Modeling)兩種。

1.基于幾何建模

基于幾何的建模技術通過計算機來表示、控制和輸出幾何模型,主要處理的信息分為幾何信息和拓撲信息兩類。幾何信息指幾何模型在空間中的形狀、大小、位置等,拓撲信息指拓撲元素(頂點、邊、面)的數量及其連接關系。虛擬現實系統要求物體的幾何建模必須快捷和易于顯示,這樣才能保證交互的實時性。

目前,在微觀上,常用的幾何模型方法包括面片表示法和體素表示法(圖2-6)。面片表示法用多邊形面片表示模型的表面形狀,一般采用三角面片。這種方法操作簡單、技術成熟。體素表示法將幾何模型細分為三維空間中的微小顆粒,這些顆粒可以是球體、四面體、立方體等。體素化建模需要保持拓撲的合理性和一致性,既不能出現拓撲自相矛盾,又要確保物體的離散拓撲和物體的連續模型具有相同的拓撲結構。體模型比面模型能夠描述模型的內部信息,便于表達模型在外力作用下的特征(變形、分裂等),但計算時間和空間復雜度較高。

圖2-6 面片表示法和體素表示法幾何建模

在宏觀上,幾何模型的表示方法包括層次表示法和屬主表示法。

層次表示法利用樹形結構來表示物體的各個組成部分。樹形結構不僅提供了一種簡便自然的分割復雜物體的方法,而且對模型的修改也十分有利。以人的手臂模型為例,層次表示法可以將其分割為上臂、下臂、手掌和手指等層次節點。當上臂節點移動時,將會帶動手臂模型的所有子節點(下臂、手掌、手指)一起移動;而當手指節點移動時,只要描述該節點相對于其父節點(手掌)的方位即可。

屬主表示法的思想是,讓同一種對象擁有同一個屬主,屬主包含了該類對象的詳細結構。當要建立某個屬主的一個實例時,只要復制指向屬主的指針即可。以汽車的車輪模型為例,一輛車的所有車輪應該具有相同結構。因此,可以建立一個車輪的屬主模型,以后每當需要制作車輪時,只要創建一個指向該屬主的指針即可。

手動建??梢酝ㄟ^OpenGL, VRML等專業建模語言或AutoCAD,3DS Max, Maya等建模軟件來完成。手動建模的成本較高,時間較長,操作人員必須對相應軟件非常熟悉。利用三維掃描儀等圖形硬件也可實現自動三維建模,需要注意的是,這些軟件和硬件都有自己特定的文件格式,在導入虛擬現實系統時需要做適當的文件格式轉換。

2.基于圖像建模

基于圖像的建模(Image-Based Modeling)目的是研究如何從圖像中恢復出物體或場景的三維幾何信息,并構建其幾何模型。根據計算機視覺理論,圖像是真實物體或場景在一定的光照環境作用下,通過相機鏡頭的光學投射變換得到的結果。圖像中包含了大量的視覺線索信息,如輪廓、亮度、明暗度、紋理、特征點、清晰度等,而基于圖像的幾何建模研究如何通過運用上述視覺線索信息,并結合估計得到的相機鏡頭與光照環境參數,進行光學投射變換的逆變換運算,恢復出物體或場景的三維幾何信息,并得到其三維幾何模型表示的過程,主要方法如下所述。

1)基于立體視覺的方法

此方法利用三維視覺技術從已知的參考圖像中合成相對于新的視點的圖像。它從已經獲得的2D圖像中恢復形體的3D幾何特征和光照、材料特性,由于采樣圖像中已經包含了當時的幾何、光照、材料的綜合效果,所以利用這些信息,可以合成不同視角圖像的信息,在虛擬現實環境中從不同的角度來觀察物體。使用這種方法不存在大量的內存冗余,但是需要建立很多的特征對應(比如特征點的對應),而且處理的數據量過大,實現起來有一定的困難。

2)基于全視函數的方法

基于全視函數的方法也稱為基于全景函數的方法。它把空間任意點、任意時間和覆蓋任意波長范圍的可見光束命名為全景函數,它是基于圖像的具有水平360°及上下空間的圖形組織環境,是一種全新的圖像信息模式,它可以完整地表達周圍環境的信息,相當于人們從一個固定點向四周轉一圈所看到的景象,如圖2-7所示。此方法建模簡單,但是由于現有技術不成熟,對圖像噪聲比較敏感,所以為了保證圖像立體匹配的正確性,不僅需要用戶指定一些對應關系,還要求對輸入圖像密集采樣,使相鄰的兩幅圖像間的差別很小。

圖2-7 360°全景圖

3)基于拼圖和分層的方法

基于拼圖和分層的方法就是對于采樣的圖像(這些圖像通常具有很多的重疊區域),把這些圖像統一投影到某一個曲面上,然后確定兩相鄰圖像間的重疊范圍,最后按照特定的算法將它們拼接在一起,而且拼接時候一般要求是無縫拼接,達到最終得到新視圖的要求。該方法主要用于拼接柱面全景圖,它利用圖像的相關性原理尋找最大相關性來對齊重疊圖案。該方案簡單、有效,但有時因為重疊區域特征不明顯,需人工干預對齊,導致對齊誤差。

4)基于圖形和圖像的混合建模技術

基于圖形與圖像的混合建模技術可以集兩種建模方法的優點于一體,目的是解決人與虛擬場景中物體自然交互的問題,是混合現實實現的基礎?;趫D形圖像的混合建模主要涉及虛擬幾何實體對象與虛擬環境的空間關系與透視匹配、亮度及陰影的光照匹配、融合與動態掩模等技術。受傳感設備和傳感器技術發展水平的制約,該方法在實現上有待于進一步完善,完善后的混合建模技術將是未來的圖像建模技術的主導。

(二)物理建模技術

虛擬現實系統中的模型不是靜止的,而是有一定的運動方式。當與用戶發生交互時,也會有一定的響應方式。這些運動方式和響應方式必須遵循自然界中的物理規律,例如,物體之間的碰撞反彈、物體的自由落體、物體受到用戶外力時朝預期方向移動等。上述這些內容就是物理建模技術需要解決的問題,即如何描述虛擬場景中的物理規律及幾何模型的物理屬性。物理建模技術需要重點解決如下問題。

(1)設計數學模型。數學模型是指描述虛擬對象行為和運動的一組參數方程,包括運動學方程和動力學方程。運動學方法是通過幾何變換,如物體的平移或旋轉等來描述運動。在運動控制中,無須知道物體的物理屬性。在關鍵幀動畫中,運動是通過顯示指定幾何變換來表現的。首先設置幾個關鍵幀,用于區分關鍵的動作,其他動作根據各關鍵幀可通過內插等方法來完成。由于運動學方法產生的運動是基于幾何變換的,復雜場景的建模將顯得比較困難。

動力學仿真法運用物理定律而非幾何變換來描述物體的運動。也就是說,物體的狀態是通過物體的質量和慣性、力和力矩以及其他物理作用計算出來。這種方法更適于物體間交互作用較多的虛擬環境建模。

(2)創建物理效果。對虛擬對象創建物理效果的方法是從幾何模型出發,將時間、長度、質量和力等過程抽象處理后,與圖形學中的元素,如幀、絕對坐標、節點和面等結合起來,搭建出一個表現基本物理量的三維場景。具體來說,首先確定物理過程,即作用在虛擬對象上的物理現象,接著利用軟件仿真算法描述上述物理過程,最后通過計算機程序語言實現上述仿真算法,由此表達出模型質量、密度等物理屬性和力的概念。

(3)實時碰撞檢測。碰撞檢測技術要能隨時檢測虛擬場景中是否有碰撞發生,還要檢測碰撞發生的位置,以及根據數學模型和物理屬性計算出碰撞發生后的反應。虛擬現實系統要求碰撞檢測具有較高的實時性和精確性,所以其技術難度很高。目前,較成熟的碰撞檢測算法有層次包圍盒法和空間分解法等。

層次包圍盒法的基本思想是利用體積略大而幾何特性簡單的包圍盒將復雜幾何對象包裹起來。在進行碰撞檢測時,首先進行包圍盒之間的相交測試,只有包圍盒相交時,才對其所包裹的對象做進一步求交計算。在構造碰撞體的包圍盒時,若引入樹狀層次結構,可快速剔除不發生碰撞的元素,減少大量不必要的相交測試,從而提高碰撞檢測效率。比較典型的包圍盒類型有沿坐標軸的包圍盒、包圍球、力向包圍盒、固定方向凸包等。層次包圍盒方法應用得較為廣泛,適用于復雜環境中的碰撞檢測。圖2-8顯示了基于包圍盒碰撞檢測方法的效果。

空間分解法是將整個虛擬空間劃分成相等體積的小單元格,只對占據同一單元格或相鄰單元格的幾何對象進行相交測試。比較典型的方法有K-D樹、八叉樹、BSP樹、四面體網、規則網等??臻g分解法通常適用于稀疏的環境中分布比較均勻的幾何對象間的碰撞檢測。

圖2-8 基于包圍盒的碰撞檢測方法

(三)行為建模技術

虛擬環境中物體的行為一般可分為物理行為和智能行為。物理行為一般指研究物體運動的處理,通過運動學或動力學描述物體運動軌跡或姿態。智能行為一般指具有生命特征的物體所表現出來的反應、思考和決策等行為,這種物體也被稱為虛擬角色。虛擬角色的行為往往會體現出不確定性。對智能虛擬角色的不確定性行為進行建模,可以增強虛擬現實系統的真實度和可信度。圖2-9是幾個著名VR游戲中的虛擬角色。

圖2-9 虛擬環境中的智能虛擬角色

目前,行為建模技術受到高度重視,發展起了許多不同的建模技術,主要有基于有限狀態機(FSM)的建模方法、基于規則系統(RBS )的建模方法、基于控制論的建模方法和基于智能體(Agent)技術的建模方法。行為建模研究的核心問題是如何生成真實可信的智能行為,由于虛擬環境的復雜性,使得一般建模方法很難適應行為建模的需要。為了滿足虛擬角色能自主或半自主行動,并能夠與環境和其他智能體交換數據且能模擬人的交互行為進行協作和協商的目標,目前越來越多的系統采用基于智能體或多智能體的建模方法。

智能體具有自治性、反應性、面向目標性(主動性)和社會性四個主要特性。與傳統的其他仿真建模方法比較,智能體技術采用“自底向上”的建模方法,系統沒有集中式的控制,智能體通過相互間的協作和競爭,獨立追求實現自己的目標,其結果是一個動態變化的環境,很適宜于對復雜自適應系統的建模與仿真,是虛擬環境中進行行為模擬的理想方法。

為了利用認知智能體和反應式智能體的優勢,同時簡化設計,采用復合智能體體系結構。結合智能體的實現特點,以虛擬戰場環境中計算機生成兵力(Computer Generated Forces, CGF)實體為例,其智能行為框架如圖2-10所示。

圖2-10 智能體框架結構

行為模型分為感知、通信協調和執行三個基本模塊,感知代表對虛擬戰場環境的觀察和認知能力,通信模塊代表與環境內外其他智能體的通信,行動模塊通過一系列的行為模式實現各種動作,表現為一系列的動作序列。人的智能因素通過智能體內部環境狀態和決策規劃模塊實現,內部環境狀態既保存虛擬實體對外部環境認知的符號表示,又表示個性特點和能力。

主站蜘蛛池模板: 博客| 略阳县| 永平县| 黄大仙区| 湘乡市| 大荔县| 江山市| 高邑县| 阳新县| 大邑县| 绍兴县| 富宁县| 泾阳县| 明星| 高青县| 乐昌市| 六枝特区| 喀什市| 同仁县| 潼关县| 团风县| 中山市| 遂平县| 富裕县| 安宁市| 闸北区| 上高县| 逊克县| 图们市| 平陆县| 新晃| 苗栗市| 九龙县| 上饶县| 平安县| 开阳县| 利津县| 富源县| 沅江市| 上高县| 吉水县|