999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

VRML協同虛擬現實系統的研究與應用

2016-02-27 03:41:20許愛軍
計算機技術與發展 2016年6期
關鍵詞:用戶模型系統

許愛軍

(廣州鐵路職業技術學院,廣東 廣州 510430)

VRML協同虛擬現實系統的研究與應用

許愛軍

(廣州鐵路職業技術學院,廣東 廣州 510430)

協同虛擬現實系統是在分布式虛擬環境基礎上發展起來的一種智慧環境,在情景創設、協同工作、高交互性和實時性等方面具有明顯優勢。在梳理協同虛擬現實的定義與功能、模型與分類的基礎上,研究了協同虛擬現實的建模技術和模型優化技術,重點探討了協同感知的實現、用戶替身的實現和協同通訊環境的實現方法。為解決多用戶操作沖突,研究了采用對象鎖和優先級控制法的并發控制技術。結合“協同搬凳”虛擬現實實例,闡述了協同虛擬現實的設計流程和關鍵技術。測試表明,基于VRML的協同虛擬現實系統能滿足低帶寬、實時性要求,提出的定時采集和發送數據的方法,滿足多用戶協同虛擬現實的需要。

虛擬現實;VRML;協同工作;協同并行控制

0 引 言

虛擬現實系統(Virtual Reality System,VRS)是由虛擬世界(環境)和與之發生交互的操作者(人)組成。與VRS相比,協同虛擬現實系統(Collaborative Virtual Reality System,CVRS)更加突出多用戶間的“協同”,強調多用戶間的“相互感知”,在情景創設、協同工作、高交互性和實時性等方面,具有明顯優勢。

對CVRS的研究,最初是在分布式虛擬環境的基礎上開始的,經歷了從概念梳理逐步向應用縱深推進的過程,研究的重點涉及用戶替身描述、行為并發控制、多用戶感知,以及協同工作的表現形式等方面。目前,CVRS已經廣泛應用于生產和生活的諸多領域,如軍事、醫療、娛樂、教育等,典型代表有NPSNET-IV系統[1]、DIVE系統[2]等。

VRML是基于Internet的三維虛擬場景描述標準。探討基于VRML的協同虛擬現實系統的相關概念、實現技術,研究一套具有參考價值的實現方案是非常必要的。

1 協同虛擬現實概述

1.1 定義與功能

CVRS是將協同工作(Computer Supported Collaborative Work,CSCW)技術、虛擬現實技術、人工智能技術、多媒體技術和計算機網絡技術等結合在一起,用戶在一組互聯的虛擬空間中以替身的方式相互協作,實現協同工作。與CSCW結合后,CVRS提供共享的極具真實感的虛擬空間,使人們能夠更加自然、協調地與他人進行交互和協同,能打破時空限制,安全可靠,豐富了計算機作為交互和通信工具的職能和作用,已成為一種新型的數字智慧環境[3]。

1.2 模型與分類

由于VRML本身不支持多用戶環境所必須的共享行為和環境狀態的連續性,無法滿足Internet上多用戶環境的要求,但它提供了與外部程序(如Java)的接口,使得協同虛擬現實的實現成為可能[4]。基于VRML的協同虛擬現實系統模型如圖1所示。

圖1 基于VRML的CVRS模型

一般而言,CVRS又可以分為遠程協同虛擬現實系統(Remote Collaborative Virtual Reality System,RCVRS)和面向本地的協同虛擬現實系統(Local Collaborative Virtual Reality System,LCVRS)[5]。其中,RCVRS主要面向遠程(廣域網)實現協同工作,研究的重點涉及DIS(Distributed Interactive Simulation)協議、體系結構、虛擬場景生成算法等,盡可能在降低網絡傳輸數據的前提下實現協同工作。LCVRS主要面向本地(局域網)范圍實現協同工作,研究的重點是如何把軟硬件裝置與CSCW技術相結合,提高協同虛擬環境的真實性和協同工作的高效性。

2 協同虛擬現實的實現技術

2.1 協同虛擬場景設計

虛擬場景設計是實現協同虛擬現實系統的基礎。虛擬場景設計的好壞直接關系到協同虛擬現實的逼真度和性能。協同虛擬場景設計的關鍵問題是如何在保證場景逼真度的前提下盡可能降低模型的復雜度、模型傳輸過程中的數據量。在實際設計過程中,模型越復雜,逼真度就越高,但模型數據量也越大。所以,協同虛擬環境的設計,往往要在模型的復雜度和系統能夠承受的數據量之間取得平衡。

2.1.1 利用VRML原型節點建模

VRML提供了基本幾何節點、復雜群節點、場景效果節點、動畫節點、動態感知節點等基本節點。但光靠這些基本節點很難滿足協同虛擬場景設計的需要。為此,VRML允許設計者自定義節點功能,來擴展建模能力。

VRML為用戶提供的自定義節點的功能,就是原型。設計者可以根據需要,利用原型創建一種新的節點類型,通過對節點類型實例化建立新節點。如果想要修改新節點的屬性,則可以添加各種域(通過域修改新節點的屬性)和事件(包括EventOut和EventIn),用路由(ROUTE)將事件連接起來,實現協同虛擬環境與外界環境的動態交互。利用VRML原型節點建模的優點是建模簡單、快捷,但建立的模型較為粗糙,并且只適合建立規則物體的模型,能提供的交互操作比較有限。

2.1.2 利用可視化軟件建模

協同虛擬環境是由若干個三維虛擬物體構成的。三維虛擬物體的建立一般包含三維模型結構設計和表面屬性配置兩個步驟[6]。

對室外樓宇建筑,可以先用VRML可視化工具(如VRMLPad)建立簡單的幾何模型,然后對各個面拼接紋理來建立模型。對室內物體,可以先用復雜建模工具(如3DS Max)建立物體外圍輪廓,然后采用外擴、擠出、拉伸及布爾運算等操作生成簡單幾何形體的組合,貼圖后生成.WRL文件完成模型的建立。對地形和地表物體合成區域的場景模型,可以先將三維地形模型和復雜物體模型導入實時三維數據庫生成系統(如Multigen Creator),利用強大的大型地形和三維場景產生器、道路產生器等功能,建立場景層次模型數據庫。對有特殊要求的物體(如文物),模型非常復雜且真實度要求很高,也可以采取三維掃描技術獲取物體的三維數據信息模型[7]。

2.1.3 三維模型優化技術

VRML是虛擬場境的三維描述格式規范,物體模型最終都以VRML文件形式存儲。因此針對VRML的語法特性進行優化是十分必要的。主要優化方法有:重復物體的代碼重用、相似物體的原型封裝、VRML文件壓縮等。

重復物體的代碼重用(DEF/USE):在大型虛擬場景中,往往存在大量重復出現的物體,如樹木、路燈、垃圾箱、石桌、長凳等。可以先用DEF語句對其節點命名,再通過USE節點引用來獲得物體的完整復制,有時需要配合Transform節點對引用的物體進行平移、旋轉或縮放等。DEF/USE實例引用技術能大大減少重復代碼[8]。

近似物體的原型(Proto)封裝:利用原型(Proto)封裝機制可以在已定義節點類型的基礎上重新定義出新的節點。因此,可以對結構相同但位置和屬性(如顏色、紋理、長度等)各異的近似物體,先進行原型定義,然后利用原型構造技術(Proto和Externproto)創建擴展節點,快速構建近似物體,同時減少文件量。

VRML文件壓縮:用3DS Max開發的物體模型保存為.WRL文件時會產生大量冗余數據,可以采用VRML Pad提供的壓縮功能或專門的壓縮工具gzip進行壓縮,壓縮過的VRML文件(*.wrz格式)體積只有原來的1/3[9],同時也不再是文本文件,在一定程度上增強了場景模型數據的保密性。當然,為了獲得更大的壓縮潛力,在壓縮前需要將必要的注釋和空格保留外,其他不必要的空白間隔都予以消除。

2.2 協同感知技術

感知是一切行為的開始。虛擬環境也不例外,實現多用戶之間的協同感知,是協同虛擬現實系統的基礎。對于協同感知的定義,M.Rounding和S.Greenber將其定義為:取得目前環境之信息,以便其他成員得知其所處的狀態,并且據此決定如何進行接下來的工作[10]。

2.2.1 協同感知的實現方法

在協同虛擬環境中,形成感知信息需要經過三個步驟。首先是收集相關信息;然后是把收集到的信息分發給其他客戶端;最后是將分發的信息在各個客戶端呈現,并更新客戶端的狀態。當然,在收集、分發和呈現信息時,還涉及信息的選擇與過濾問題。因為在協同虛擬現實系統中,不可能也不需要把感知到的信息全部分發,否則會造成信息風暴,嚴重降低系統性能。

遠程指針(Telepointer)是協同虛擬環境中常用的感知方法之一,其基本思想是:利用指針的多光標形式,把協同感知的粒度劃分到事件層,把鍵盤和鼠標事件都發送到其他客戶端,從而被他人感知。這樣,協同用戶就可以知道彼此的位置、移動以及注意力焦點等。通過遠程指針技術還可以實現在共享視圖中的手勢(gesture)效果。除遠程指針技術外,其他常用的感知方法還有顏色標識、直觀交互、WYSIWIS方法和感知部件等。

2.2.2 用戶替身的實現方法

用戶替身(Avatar)是協同虛擬環境不可分割的組成部分,用戶替身的生成主要有四種方式:

第一種由系統默認。系統為用戶設置默認替身模型,當用戶第一次進入系統時,直接采用系統提供的默認替身進入系統。

第二種由用戶自行選擇。用戶第一次進入系統時,可以根據個人喜好,選擇自己喜歡的用戶替身后進入系統。

第三種是自適應推理。用戶進入系統時采用缺省替身,通過不斷與系統交互,系統收集用戶的習慣、興趣等參數信息,根據自適應推理機制形成符合用戶個性的替身和功能界面。經過不斷收集用戶參數信息,反復推理,逐步形成適合用戶特征的替身模型。

第四種由用戶手動修改。用戶進入系統后,可以根據需要,自行修改界面參數信息和交互方式,系統根據用戶需求生成相應的用戶替身,以便有效地支持協同感知交互活動。

替身之間的交互通過行為機制來實現,實現的基本方法是:首先,為替身設定一套容易被人辨識的動作(如用戶間的打招呼問候、揮手告別、拿起電話進行協商等),這些動作能對動作節點設置不同的位置插補器(PositionInterpolator)、朝向插補器(OrientationInterpolator)和一個共同的時間傳感器(Time Sensor)來實現;其次,當用戶之間有交互請求時,啟動行為機制,通過EAI調用Java Applet分別控制用戶來實現替身之間的交互行為。

2.2.3 協同通訊環境的實現方法

為了實現協同感知,需要在協同者之間傳遞用戶狀態信息和各種交互信息。VRML的網絡通訊和分布式控制需要與Java語言結合來實現。一般有EAI(External Authoring Interface)和SAI(Script Authoring Interface)兩種結合方式[11]。通過EAI可以調用Java Applet來改變場景內容,控制較為靈活,但比較復雜的協同交互通常采用SAI方式。通過調用Java腳本語言,將復雜的網絡控制和文件訪問功能引入協同場景,從而建立起協同虛擬通訊環境,如圖2所示。

圖2 協同虛擬現實的通訊環境

在圖2所示的通訊環境中,利用VRML的臨近檢測器節點(ProximitySensor)感知用戶的操作并輸出位置(position_changed域)和方向(orientation_changed域)的變化值,利用視點節點(Viewpoint)接收到其他用戶的操作信息來調整虛擬物體的空間位置和方向[12]。通過SAI接口啟動輸出線程,向服務器發送信息,調用其他客戶端的接收線程,更新其他客戶端的Viewpoint節點,從而實現系統的協同感知。

2.3 協同并發控制技術

協同并發控制的目的是防止參與協同的多個用戶對同一個虛擬物體同時操作而引發操作沖突。解決這個問題的基本方法有對象鎖方法和優先級控制法。

對象鎖方法的基本思想是[13]:當用戶需要對某個虛擬物體進行操作時,先向服務器申請操作這個物體的控制權。服務器檢測到這個物體不被其他用戶操作時,將權限分配給該用戶。用戶在對這個物體進行操作時,虛擬物體的操作控制權限設置為鎖定。這種方法的優點是實現簡單,每個用戶按照先來先分配的原則平等申請,但要考慮由于網絡中斷或其他問題引起死鎖現象的發生。

優先級控制法的基本思想是:為每個用戶設置不同的優先級控制權限。在同一時刻,權限越高者,優先使用對某個虛擬物體的控制權限。這種方法的優點是能滿足高級別用戶的權限控制需求,但要考慮低級別用戶長時間不能獲得對某個物體控制權限的問題。

基于這兩種常用的控制方法,也出現了“操作令牌”控制法[14]、基于客戶端的并發控制法等。

3 協同虛擬現實的應用實例

3.1 實例開發

文中實現了一個“協同搬凳”虛擬現實測試用例。實例中的協同虛擬環境相對簡單,包含一條長凳和兩個用戶替身。長凳直接采用VRML原型節點建模來實現,替身模型采用Metacreations公司推出的人體造型軟件Poser建模,系統采用默認的方式為用戶提供替身模型。

當兩個用戶登錄系統后,系統為用戶分配默認的替身模型,利用ProximitySensor節點跟蹤用戶的移動和轉動操作,在position_changed和orientation_changed域獲得用戶的位置和方向值。然后將這些信息通過協同通訊環境輸出給另一個用戶,并改變這個用戶端的替身狀態信息。

控制用戶替身位置變化信息的Java程序段為:

Nodebandengman=(Node)browser.getNode("Bandengman");

EventInSFVec3fbandengmanPos=(EVeritInSFVeC3f Obandengman.getEventIn("settranslation");

floatposition[]=newfloat[3];

position[0]=2.145 8;

position[l]=0;

position[2]=5.643 9;

bandengmanPos.setValue(position);

獲取用戶替身當前位置的基本方法是:

Nodebandengman=browser.getNode("andengman");

floatnewPosition[]=newfloat[3];

NewPosition=((EventOutSFVec3O(bandengman.getEventOut("translationchanged"))).getValue();

當bandengman節點定義的替身translation域發生變化(即位移發生變化)時,協同虛擬現實系統自動調用callback()方法來執行相應的處理,主要Java代碼是:

Public class Observer implements EventOut Observer{

{Public void callback(EventOut value,double timestamp,Object data)

//對取得的EventOut的值進行相應處理

}

Observer observer=new Observer();

bandengman.getEventOut("translation changed").

advise(observer,null);

}

3.2 實例測試

在校園網絡環境中,兩個學生分別在不同客戶端登錄系統,系統默認分配用戶替身后,兩個學生先后走向待搬動的長凳,到達適當位置時,用戶替身的右手自動與長凳吸附,并隨著替身一起向前移動,如圖3所示。

圖3 協同搬凳實現效果

用戶替身在運動過程中,位移信息在不斷發生變化。如果將位移變化信息實時發送,容易使系統性能下降,甚至出現廣播風暴。

為解決這個問題,系統采用定時采集和發送數據的方法,每隔一個時間間隔再獲取虛擬物體的方位值,并啟動發送機制。時間間隔的設置采用VRML中節點的時間戳。當Script節點收到EventIn后,從Event對象的Name、Value和Timestamp域中,用getsStamp()方法得到時間戳。這個方法大大降低了數據的傳輸頻率,并能較好地保證虛擬物體協同感知的連續性。

4 結束語

作為一種新型智慧環境,協同虛擬現實一經提出就受到廣泛關注。相比2D(或者2.5D)協同虛擬現實,基于VRML的3D協同虛擬現實系統更加具有挑戰性。

文中通過探討協同虛擬現實的定義和功能、模型與分類,重點研究了協同虛擬現實的場景設計、協同感知和并發控制技術,并實現了“協同搬凳”實例。測試表明,基于VRML的協同虛擬現實系統能滿足低帶寬、實時性要求,文中提出的定時采集和發送數據的方法,滿足了多用戶協同虛擬現實的需要。

[1] 何正偉,吳華意,陳 靜.基于Internet的大規模城市建筑三維場景可視化研究[J].系統仿真學報,2009,21(10):2965-2970.

[2] 周博飛,李緒華,張學之.3維城市模型建模方法分類與建模流程探討[J].測繪與空間地理信息,2012,35(6):138-139.

[3] 許愛軍,張文金,黃正午.多用戶共享虛擬環境中VRML系統模型[J].計算機系統應用,2010,19(1):27-30.

[4] 唐新明,張 過,祝小勇,等.資源三號測繪衛星三線陣成像幾何模型構建與精度初步驗證[J].測繪學報,2012,41(2):191-198.

[5] 林建明.CSCW環境下基于信息驅動的群體感知建模及實現方法研究[D].杭州:浙江工業大學,2001.

[6]FunkhotlserTA,SequinCH,TellerSJ.Managementoflargeamountsofdataininteractivebuildingwalkthroughs[C]//Proceedingsofthe1992symposiumoninteractive3dgraphics.NewYork,NY,USA:ACM,1992:11-20.

[7] 張瑞菊.SketchUp結合GoogleEarth在虛擬校園中的應用[J].計算機應用,2013,33(S1):271-272.

[8] 畢碩本,曾曉文,潘秋羽,等.基于粒子系統的衛星云圖三維仿真與簡化算法[J].系統仿真學報,2014,26(11):2630-2635.

[9] 龐存岐,丘 均,蔡聲鎮.大規模室外場景中漫游實時渲染技術研究[J].福建師范大學學報:自然科學版,2013,29(3):37-41.

[10] 許愛軍,張文金,易 丹.基于虛擬現實技術的遠程教育平臺研究與實現[J].計算機系統應用,2007,16(8):23-26.

[11] 馬延周.虛擬場景中協同感知技術研究[D].鄭州:解放軍信息工程大學,2008.

[12] 許愛軍,張文金,易 丹.基于VRML的虛擬現實技術及應用[J].計算機與數字工程,2009,37(4):186-189.

[13] 行開新,田 凌.支持異地協同設計的異構CAD虛擬裝配系統[J].清華大學學報:自然科學版,2009,49(2):226-231.

[14]WangJiaojiao,WangLei,CaoWenmin,etal.A'drift'algorithmforintegratingvectorpolylineandDEMbasedonthesphericalDQG[C]//ProcofIOPconferenceseries:earthandenvironmentalscience.UK:IOPPublishing,2014.

Research and Application of VRML Virtual Reality System

XU Ai-jun

(Guangzhou Railway Polytechnic,Guangzhou 510430,China)

Collaborative virtual reality system is a kind of intelligent environment based on distributed virtual environment,which has obvious advantages in scene creation,cooperative work,high interactive and real-time,etc.In this paper,it gets research on collaborative virtual reality modeling technology and model optimization technology based on the definition and function,and model and category of virtual reality,and focuses on the realization of collaborative perception,user’s avatar and collaborative communication environment.To solve multi user operation conflict,the concurrency control technology is studied using object lock and priority control method,elaborating design process and key technology of collaborative virtual reality combined with the “cooperative move stool” example of virtualreality.Tests show that the VRML-based collaborative virtual reality system has low bandwidth and real-time,which can meet the requirements of multi user virtual reality.

virtual reality;VRML;cooperative work;cooperative parallel control

2015-08-03

2015-11-05

時間:2016-05-05

廣東省科技計劃項目(2015A030401005);廣東省教育科學“十二五”規劃2014年度教育信息技術研究項目(14JXN018)

許愛軍(1978-),男,研究生,副教授,CCF會員,研究方向為數據管理系統與智能算法、虛擬現實技術。

http://www.cnki.net/kcms/detail/61.1450.TP.20160505.0828.062.html

TP391.9

A

1673-629X(2016)06-0115-04

10.3969/j.issn.1673-629X.2016.06.025

猜你喜歡
用戶模型系統
一半模型
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
3D打印中的模型分割與打包
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
主站蜘蛛池模板: 国产精品久久久久鬼色| 国产成人调教在线视频| 91色综合综合热五月激情| 国产精品亚洲精品爽爽| 在线精品欧美日韩| 亚洲一区二区三区中文字幕5566| 白浆视频在线观看| 亚洲午夜片| 亚洲永久色| 成人综合网址| 国产成人精品高清不卡在线| 久久青草免费91线频观看不卡| 色视频久久| 国产又黄又硬又粗| 国产成人91精品| 亚洲品质国产精品无码| 伊人国产无码高清视频| 在线观看无码a∨| 国内精品久久人妻无码大片高| 午夜视频日本| 欧美中文字幕一区二区三区| 内射人妻无码色AV天堂| 欧美国产日产一区二区| 中文字幕乱码中文乱码51精品| 久久99国产乱子伦精品免| 亚洲综合色婷婷| 日韩毛片视频| 成人福利在线视频| 亚洲无码视频图片| 日本人妻丰满熟妇区| 欧美α片免费观看| 人妻一区二区三区无码精品一区| 四虎影视8848永久精品| 欧美黄网在线| 国产成人精品18| 高清亚洲欧美在线看| 欧美日韩亚洲国产主播第一区| 亚洲男女在线| 国产美女自慰在线观看| 亚洲伊人天堂| 亚洲国产精品日韩欧美一区| 婷婷六月天激情| 九九免费观看全部免费视频| 欧美亚洲中文精品三区| 国产精品va免费视频| 在线播放真实国产乱子伦| 精品人妻AV区| 亚洲天堂日韩av电影| 国产97视频在线观看| 伊人丁香五月天久久综合 | 日韩a级片视频| 国产一级做美女做受视频| 亚洲日韩国产精品综合在线观看| 国产人前露出系列视频| 黄色网在线| 日韩精品一区二区三区视频免费看| 嫩草国产在线| 青青草原偷拍视频| 国产精品亚洲欧美日韩久久| 国产精品美人久久久久久AV| 国产一级妓女av网站| 亚洲色图欧美视频| 久久www视频| 久久黄色免费电影| 日韩欧美中文亚洲高清在线| 无码粉嫩虎白一线天在线观看| 日本免费高清一区| 999精品免费视频| 亚洲精品大秀视频| 国产最爽的乱婬视频国语对白 | 国产日韩久久久久无码精品| 国产香蕉在线| 老熟妇喷水一区二区三区| 曰韩免费无码AV一区二区| 亚洲精品国产首次亮相| 国产黑丝视频在线观看| 国产成人欧美| 国产成人AV综合久久| 欧美成人午夜影院| 精品一区国产精品| 国产91无毒不卡在线观看| 99999久久久久久亚洲|