国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向移動(dòng)端的三維漫游及交互系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

2018-03-07 08:49吳慶波梁勤歐
關(guān)鍵詞:漫游攝像機(jī)材質(zhì)

吳慶波, 梁勤歐

(浙江師范大學(xué) 地理與環(huán)境科學(xué)學(xué)院,浙江 金華 321004)

0 前 言

目前,與場(chǎng)館類似的大型室內(nèi)地圖大都采用2D紙質(zhì)地圖,它對(duì)于室內(nèi)環(huán)境的監(jiān)控和人員定位功能的實(shí)現(xiàn)主要用2種方法:攝像頭監(jiān)控系統(tǒng)和二維室內(nèi)地圖系統(tǒng)[1-3].然而這2種系統(tǒng)都存在著部分缺陷.攝像頭監(jiān)控系統(tǒng)的成本雖然越來越低,并且現(xiàn)在很多案件的線索都是通過攝像監(jiān)控系統(tǒng)圖像的調(diào)取而獲得的,但對(duì)視野的完整性具有一定的依賴性;二維室內(nèi)地圖系統(tǒng)能彌補(bǔ)攝像頭系統(tǒng)的視野問題,卻會(huì)丟失部分圖像信息且無法很好地表達(dá)高程信息,即樓層信息.

三維建模技術(shù)的誕生,使得人們可以用計(jì)算機(jī)來模擬現(xiàn)實(shí)世界的環(huán)境和物體,并隨著各種交互技術(shù)的成熟,人們可以有仿佛置身于虛擬現(xiàn)實(shí)世界的機(jī)會(huì).通過對(duì)光照、環(huán)境進(jìn)行設(shè)置,以及對(duì)建筑物材質(zhì)紋理的采集并授予模型,真實(shí)世界在計(jì)算機(jī)中以三維模型的方式呈現(xiàn)出來.室內(nèi)建筑的結(jié)構(gòu)非常適合三維模型來展示.可以說,三維建模技術(shù)符合人們的視覺習(xí)慣和思維習(xí)慣[4-5],相比二維圖形的單調(diào)難懂,三維模型是人們更愿意接受和使用的.

隨著智能手機(jī)的普及,移動(dòng)端對(duì)于人們的生活已不可或缺.移動(dòng)端自帶GPS功能,當(dāng)人們置身于真實(shí)室內(nèi)環(huán)境時(shí),手機(jī)端就得到了當(dāng)前的位置,它與三維模型結(jié)合進(jìn)行地圖坐標(biāo)轉(zhuǎn)化,可以得出自己在地圖上的位置,從而能快速進(jìn)行方向選擇并了解周圍環(huán)境.此外,手機(jī)移動(dòng)端具有3G、4G的上網(wǎng)功能,可以隨時(shí)獲取所需的室內(nèi)模型資源,隨時(shí)接收新的信息,比起電腦端更加靈活.因此,在移動(dòng)端開發(fā)室內(nèi)模型交互系統(tǒng)非常具有優(yōu)勢(shì)[6-7].本文正是基于以上兩點(diǎn)開發(fā)了一個(gè)室內(nèi)的三維漫游交互系統(tǒng).

1 系統(tǒng)總體設(shè)計(jì)

本系統(tǒng)的開發(fā)以Unity 3D為核心,以3ds Max為主要建模手段,對(duì)浙江師范大學(xué)校園內(nèi)某幢建筑的1層、5層及內(nèi)部的房間進(jìn)行了建模,通過Unity 3D自帶的mono進(jìn)行功能編寫,最后發(fā)布移動(dòng)端的可執(zhí)行程序,并進(jìn)行漫游及交互體驗(yàn)、測(cè)試,系統(tǒng)的總體框架如圖1所示.

圖1 系統(tǒng)總體框架

具體步驟如下:

1)數(shù)據(jù)采集.三維建模所需數(shù)據(jù)主要包括:該建筑外部圖、側(cè)面圖(由人工拍攝),頂樓圖(由無人機(jī)航拍);該建筑1層室內(nèi)平面CAD圖;建筑材料及室內(nèi)物品材質(zhì)紋理;建筑各碎布點(diǎn)的坐標(biāo)信息.

2)數(shù)據(jù)處理.將坐標(biāo)信息賦予CAD圖,并對(duì)CAD圖進(jìn)行必要的語(yǔ)義信息賦予,建立一定的拓?fù)浣Y(jié)構(gòu).攝像機(jī)拍攝的圖用來繪制、對(duì)模型挖洞、填補(bǔ)等工作.收集的材質(zhì)紋理信息可以直接植入3ds Max和Unity 3D中進(jìn)行使用.

3)數(shù)據(jù)組織.這里主要是進(jìn)行必要的拓?fù)潢P(guān)系構(gòu)建,在建成三維模型之后,由于體積龐大,實(shí)體繁多,需要對(duì)這些實(shí)體進(jìn)行分層合并、命名等一系列操作,便于后續(xù)的修改和查閱.最后導(dǎo)出FBX格式的模型文件,方便Unity 3D的調(diào)用.

4)腳本管理.在進(jìn)行具體的系統(tǒng)功能設(shè)計(jì)時(shí),Unity 3D需要調(diào)用各種各樣的腳本來掛載到場(chǎng)景和場(chǎng)景中的物體上,故腳本的管理也必須有條理地進(jìn)行,保證不丟失腳本,不添加多余腳本.

2 系統(tǒng)模型構(gòu)建

2.1 建模流程

室內(nèi)模型的構(gòu)建是一個(gè)從平面圖借助三維幾何造型與表面材質(zhì)、紋理、燈光等來設(shè)置模擬真實(shí)世界模型的過程,有很多因素都需要考慮,從而達(dá)到真正的逼真效果.筆者把模型的構(gòu)建過程大概分為3個(gè)步驟:數(shù)據(jù)準(zhǔn)備、模型構(gòu)建、后期優(yōu)化.具體如圖2所示.

圖2 建模流程

2.2 獲取數(shù)據(jù)源

2.2.1 平面圖數(shù)據(jù)源

本文的平面圖數(shù)據(jù)源采用的是該建筑的電力平面布置施工圖.由于此施工圖中的很多信息是用來處理電路照明等方面的,與此次建筑室內(nèi)建模沒有直接的關(guān)系,所以本文在圖片處理之后留下了建模所需要的輪廓圖,簡(jiǎn)化后的模型圖如圖3和圖4所示.

圖3 樓層電力平面圖

圖4 簡(jiǎn)化后的平面圖

2.2.2 樓體所需數(shù)據(jù)源

在本次1層樓的建模過程中,為形成一個(gè)整體模型,樓體所需的數(shù)據(jù)源除了俯視平面圖外,還需要各個(gè)方向的側(cè)視圖,包括窗戶、門等信息.通過拍照不僅可以獲取這些面的輪廓,還能獲取材質(zhì).因此,拍攝的照片質(zhì)量非常重要.本文都進(jìn)行了實(shí)地拍照,如圖5所示.

這些照片的輪廓會(huì)因?yàn)榻裹c(diǎn)相機(jī)本身的特點(diǎn)失真而會(huì)有所變化,而紋理色彩等也會(huì)因?yàn)楣庹窄h(huán)境、攝像機(jī)色調(diào)等和真實(shí)有所差距.因此,在拍攝完成之后,本文又用Photoshop進(jìn)行了相關(guān)的修正.

圖5 側(cè)面圖的拍攝照片

2.2.3 各類物體及材質(zhì)

這些拍攝到的圖片需要真實(shí)的顏色及形狀大小等信息,因此,在拍攝時(shí)做一個(gè)記錄,確保建模的材質(zhì)和真實(shí)環(huán)境的材質(zhì)相差不會(huì)太大.

2.3 墻體模型構(gòu)建

在建立墻體模型之前,樓層的線條輪廓圖應(yīng)當(dāng)先進(jìn)行繪制.按圖6的輪廓線圖進(jìn)行墻體的建模,然后進(jìn)行室內(nèi)物體的建模.

圖6 樓層輪廓圖

樓層線條輪廓圖繪制好之后,接下來的工作就是填充三維幾何體.由于這些圖形都是不規(guī)則的,并包含許多空洞,因此,必須要用更多的小圖形來進(jìn)行填充合并,并且還要設(shè)置這些幾何體的厚度與墻體一致等.根據(jù)CAD圖上各個(gè)點(diǎn)的坐標(biāo),在3ds Max中對(duì)這些小幾何體進(jìn)行設(shè)置時(shí)輸入對(duì)應(yīng)的坐標(biāo),方便這些幾何體的對(duì)齊.最后,將它們合并之后,便可得到模型.圖7為對(duì)地板填充后建立的墻體模型:

圖7 墻體模型

2.4 燈光設(shè)置

燈光可以直接使用Unity 3D中的燈光組件.光照和模型建立好之后,為了得到更真實(shí)的模型,需要對(duì)天空進(jìn)行模擬.在Unity 3D中,有一個(gè)“Skybox”資源組件,每個(gè)天空盒資源分為6張圖片:前、后、左、右、上、下.這種方法是半球天空模擬法,是用數(shù)學(xué)方法實(shí)現(xiàn)對(duì)天空的模擬,公式如下[8]:

f(P)=X2+Y2+Z2-R2.

(1)

式(1)中:P是球面上某一點(diǎn);R為球體的半徑.利用球面坐標(biāo)系時(shí)方程(1)變換為

(2)

盒子法模擬天空的基本思路是:建立一個(gè)正方體,在其上下左右前后6個(gè)面上分別貼上模擬天空的貼圖,貼圖的質(zhì)量直接影響最后模擬出天空的畫面質(zhì)量,因此,貼圖必須選擇“位圖”文件,并且做到6個(gè)貼圖首尾相連,這樣才能更加真實(shí).

2.5 模型優(yōu)化

模型基本建立完畢,考慮到實(shí)時(shí)加載場(chǎng)景的速度和文件的復(fù)雜程度,還需要對(duì)整個(gè)場(chǎng)景中的模型進(jìn)行優(yōu)化[9-10].在工作界面的“Hierarchy”面板中可以看到建模時(shí)用了大大小小很多的模型,小到桌子腿和書柜上的書,所以為了提高速度,必須進(jìn)行優(yōu)化:

1)減少多面體的面.例如曲面物體或者不規(guī)則物體,表面非常復(fù)雜,不僅影響加載速度,還會(huì)占用系統(tǒng)空間.3ds MAX中的插件“減面工具”可以實(shí)現(xiàn)這個(gè)操作,簡(jiǎn)化物體的面數(shù).

2)紋理代替模型.對(duì)于那些非常薄的物體,諸如窗戶、樓體等可以用二維圖形代替三維模型,從而節(jié)約空間.

3)提高模型和材質(zhì)的重用性.對(duì)于那些特別材質(zhì)或者組件的物體,可以重復(fù)利用,減少數(shù)據(jù)量.

經(jīng)過以上3種方法的優(yōu)化,大大提高了模型的加載渲染速度,使用軟件時(shí)變得更加順暢.最終模型如圖8所示.

圖8 模型效果圖

3 部分功能設(shè)計(jì)與實(shí)現(xiàn)

系統(tǒng)主界面如圖9所示.

圖9 系統(tǒng)主界面

3.1 漫游功能

現(xiàn)今流行的移動(dòng)手機(jī)大都是依靠屏幕手勢(shì)進(jìn)行操作,包括單點(diǎn)觸控、多點(diǎn)觸控、手勢(shì)滑行等方式.相對(duì)PC端來說,移動(dòng)端的操作實(shí)現(xiàn)有一定困難.將攝像機(jī)在攝像機(jī)與屏幕中心連成的直線上平移,達(dá)到縮放目的;把攝像頭繞虛擬世界中的縱軸進(jìn)行旋轉(zhuǎn)實(shí)現(xiàn)旋轉(zhuǎn)功能;通過改變攝像機(jī)在虛擬世界中的水平面橫豎坐標(biāo)實(shí)現(xiàn)移動(dòng)功能[11].

實(shí)現(xiàn)縮放、旋轉(zhuǎn)、平移這些操作,實(shí)際上是對(duì)虛擬世界中的攝像機(jī)實(shí)現(xiàn)平移和旋轉(zhuǎn)的操作,可以由4×4的矩陣表示.首先集合變換矩陣為C1,其中矩陣的3×3部分即矩陣C2,代表實(shí)體比例和旋轉(zhuǎn),矩陣[a41,a42,a43]T 代表實(shí)體平移,矩陣[a14,a24,a34]T代表實(shí)體投影[12].

1)實(shí)體平移:實(shí)體位置為(x,y,z),平移變換時(shí)3個(gè)坐標(biāo)都要發(fā)生改變,設(shè)平移量為Cx,Cy,Cz,平移之后坐標(biāo)為(x′,y′,z′),則:

2)實(shí)體旋轉(zhuǎn):在Unity 3D中的旋轉(zhuǎn)是繞著該點(diǎn)為中心的坐標(biāo)系的X,Y,Z軸進(jìn)行的旋轉(zhuǎn).設(shè)旋轉(zhuǎn)角度為δ,則繞Z軸旋轉(zhuǎn)的矩陣變換為

漫游功能是用來對(duì)模型進(jìn)行放大縮小旋轉(zhuǎn)的操作,需實(shí)現(xiàn)其靈活性和易操作性.在系統(tǒng)主界面點(diǎn)擊進(jìn)入漫游系統(tǒng),攝像機(jī)距離模型較遠(yuǎn),可以通過雙手多點(diǎn)觸控,兩個(gè)手指分開的手勢(shì)進(jìn)行放大,攝像機(jī)位置移動(dòng)至模型中心,便可以繼續(xù)上下左右滑動(dòng)手指來進(jìn)行模型的旋轉(zhuǎn).圖10為旋轉(zhuǎn)功能測(cè)試效果圖.

圖10 旋轉(zhuǎn)功能測(cè)試

圖11 交互界面

3.2 交互功能

當(dāng)以第一人稱視角在模型中移動(dòng)時(shí),如果不設(shè)置碰撞檢測(cè),就會(huì)出現(xiàn)穿墻的情況[12],違反自然規(guī)律,而且無法模擬出真實(shí)的視野.因此,必須對(duì)客體和第一人稱主體設(shè)置碰撞檢測(cè).Unity 3D引擎自帶物理組建功能,可以給模型添加一系列現(xiàn)實(shí)世界中的物理屬性.在“project”面板里選中模型,在“inspector”面板里勾選“generate colliders”“apply”即可生成模型的“mesh collider”.將物體設(shè)置為剛體之后,物體就不會(huì)存在穿墻的情況.交互界面如圖11所示.

本文中的交互功能以手指操作虛擬搖桿實(shí)現(xiàn)位移,左邊的虛擬搖桿控制的是視角的旋轉(zhuǎn),右邊的虛擬搖桿控制的是物體前后左右的移動(dòng).

3.3 定位功能

在Unity 3D中的“Game Object”中新建“攝像機(jī)”組件,并將其屬性設(shè)置為“Othographic”,調(diào)整大小使其覆蓋在模型之上,這樣就可以顯示模型的俯視效果.為了在俯視圖中展現(xiàn)主攝像機(jī)所在位置,創(chuàng)建一個(gè)新的幾何體,并置于“攝像機(jī)”模塊的層級(jí)之下.這樣幾何體就會(huì)隨著攝像機(jī)的移動(dòng)而移動(dòng),從而顯示出漫游者在小地圖上的實(shí)時(shí)位置.

鷹眼照相機(jī)的界面在各個(gè)模型界面的右上角顯示.黑色小方塊為此時(shí)攝像機(jī)所在的位置,隨著攝像機(jī)的移動(dòng),在小地圖中顯示出實(shí)時(shí)位置.當(dāng)不需要此功能時(shí),點(diǎn)擊收起可以將小地圖隱藏.需要時(shí)點(diǎn)擊鷹眼可以打開小地圖.如圖12所示.

圖12 定位效果圖

4 結(jié) 語(yǔ)

本文面向移動(dòng)端初步構(gòu)建了建筑模型的三維漫游及交互系統(tǒng),并通過運(yùn)行實(shí)例,驗(yàn)證了該系統(tǒng)的可行性和有效性.本系統(tǒng)在移動(dòng)終端的基礎(chǔ)上,利用了三維建模技術(shù)實(shí)現(xiàn)了定位、漫游與交互功能,能使用戶在以三維場(chǎng)景方式展示所處的環(huán)境中進(jìn)行沉浸式體驗(yàn),為用戶快速、準(zhǔn)確地選擇路徑提供了方便,對(duì)解決當(dāng)前室內(nèi)復(fù)雜環(huán)境的導(dǎo)航問題具有一定的參考意義.三維模型的逼真程度與內(nèi)存消耗成正比,如何進(jìn)行空間數(shù)據(jù)的輕量化建模并能顧及到物體間的拓?fù)潢P(guān)系及空間索引方面值得思考,也是值得設(shè)計(jì)者進(jìn)一步改善的方向.只有解決好這些問題,才能為其他潛在的場(chǎng)所提供可能的應(yīng)用,為用戶提供更好的漫游、交互體驗(yàn)與服務(wù).

[1]周忠,周頤,肖江劍.虛擬現(xiàn)實(shí)增強(qiáng)技術(shù)綜述[J].中國(guó)科學(xué):E輯 信息科學(xué),2015,45(2):157-180.

[2]葉子.博物館移動(dòng)導(dǎo)覽中的綜合性室內(nèi)定位方法研究及系統(tǒng)實(shí)現(xiàn)[D].杭州:浙江大學(xué),2015.

[3]Xu Z,Pan T,Zhang R,et al.Research on design of virtual museum of submerged traditional architectures in Three Gorges Reservoir Area[G]//World Automation Congress (WAC).Washington:IEEE,2016:1-4.

[4]王勝利.城市三維場(chǎng)景快速構(gòu)建方法研究[D].鄭州:鄭州大學(xué),2016.

[5]王曉雨.沉浸式虛擬3D敦煌莫高窟場(chǎng)景重現(xiàn)技術(shù)研究[D].西安:西安工程大學(xué),2016.

[6]宋歡.基于Android的室內(nèi)定位系統(tǒng)研究與實(shí)現(xiàn)[D].哈爾濱:哈爾濱工業(yè)大學(xué),2016.

[7]耿強(qiáng).基于Unity 3D的多平臺(tái)虛擬仿真關(guān)鍵技術(shù)研究[D].天津:天津工業(yè)大學(xué),2016.

[8]黃濤.基于Unity 3D的虛擬校園漫游系統(tǒng)的研究和實(shí)現(xiàn)[D].桂林:廣西師范大學(xué),2014.

[9]黃楊,王洋,張姝娟,等.基于Unity 3D的數(shù)字站區(qū)管理應(yīng)用系統(tǒng)虛擬現(xiàn)實(shí)場(chǎng)景制作研究[J].測(cè)繪與空間地理信息,2013,36(4):50-51.

[10]孫恒宇,尤超,王洋.基于Unity 3D的數(shù)字站區(qū)管理應(yīng)用系統(tǒng)優(yōu)化研究[J].地理信息世界,2013,20(1):103-106.

[11]Kim D,Ryu W,Lee S,et al.A Unity 3D-based mobile fashion coordination system[J].International Journal of Advanced Media and Communication,2016,6(1):86-92.

[12]Hu H,Lu L.Automatic functional testing of Unity 3D game on android Platform[C]//International Conference on Materials Engineering.Weihai:Manufacturing Technology and Control,2016.

猜你喜歡
漫游攝像機(jī)材質(zhì)
衣服材質(zhì)大揭秘
霹靂漫游堂
攝像機(jī)低照成像的前世今生
新安訊士Q6155-E PTZ攝像機(jī)
NASA漫游記
材質(zhì)放大鏡電光閃耀亮片
外套之材質(zhì)對(duì)比戰(zhàn)
針織衫之材質(zhì)對(duì)比戰(zhàn)
如何消除和緩解“攝像機(jī)恐懼癥”
邊走邊看:漫游海底 夢(mèng)想成真
武汉市| 突泉县| 新巴尔虎左旗| 章丘市| 运城市| 夏邑县| 迁安市| 潮安县| 太仆寺旗| 昌宁县| 海伦市| 万安县| 连江县| 孟州市| 嘉鱼县| 安阳县| 无棣县| 重庆市| 宿州市| 正镶白旗| 木里| 岳普湖县| 儋州市| 梨树县| 平顺县| 汕尾市| 河间市| 宁明县| 开原市| 聂拉木县| 明光市| 邛崃市| 曲麻莱县| 商城县| 勃利县| 灵山县| 和静县| 阿勒泰市| 通河县| 兰溪市| 土默特左旗|