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

?

移動(dòng)端AR技術(shù)在海洋地貌可視化中的應(yīng)用

2021-03-26 12:16:36李雙宇吳芳華徐道柱楊春成吳國(guó)佳
地理空間信息 2021年3期
關(guān)鍵詞:重置紋理坐標(biāo)系

李雙宇,吳芳華,徐道柱,楊春成,吳國(guó)佳

(1.中國(guó)地質(zhì)大學(xué)(武漢),湖北 武漢 430078;2.西安測(cè)繪研究所,陜西 西安 710000)

增強(qiáng)現(xiàn)實(shí)(AR)技術(shù)是一種將現(xiàn)實(shí)世界信息與虛擬世界信息無(wú)縫集成的技術(shù),通過(guò)系統(tǒng)處理來(lái)提高使用者對(duì)現(xiàn)實(shí)世界的感知度,將計(jì)算機(jī)生成的虛擬場(chǎng)景或物體等元素與現(xiàn)實(shí)場(chǎng)景進(jìn)行疊加,以此達(dá)到增強(qiáng)現(xiàn)實(shí)的效果[1]。與傳統(tǒng)AR技術(shù)需要依托專(zhuān)業(yè)視覺(jué)設(shè)備不同,移動(dòng)端AR(MAR)應(yīng)用系統(tǒng)具有開(kāi)發(fā)成本低、便攜性強(qiáng)、集成度高、推廣普及容易等優(yōu)勢(shì)[2]。因此,在移動(dòng)GIS應(yīng)用中引入AR技術(shù),能使地理要素的識(shí)別更具直觀性[3]。

國(guó)外關(guān)于MAR系統(tǒng)的研究起步較早,1999年日本廣島城市大學(xué)和美國(guó)華盛頓大學(xué)共同研發(fā)了ARToolKit軟件開(kāi)發(fā)工具包;2010年Wagner D[4]等首次在手機(jī)設(shè)備上采用了基于自然特征的跟蹤注冊(cè)方式;2012年高通公司發(fā)布了AR開(kāi)發(fā)工具包Vuforia[5],由于其具有多元化的平臺(tái)支持,很快成為國(guó)內(nèi)應(yīng)用最廣泛的AR引擎之一。國(guó)內(nèi)對(duì)于MAR系統(tǒng)的研究起步相對(duì)較晚,北京理工大學(xué)在設(shè)計(jì)三維注冊(cè)和光學(xué)透視設(shè)備[6]方面成果頗豐;上海交通大學(xué)提出了空間AR流水線概念[7];華中科技大學(xué)提出了標(biāo)示角點(diǎn)與全局單應(yīng)性矩陣相結(jié)合的三維注冊(cè)手段[8]。同時(shí),我國(guó)的一些高科技企業(yè)也對(duì)AR技術(shù)進(jìn)行了大量研究和應(yīng)用,如高德和百度均推出過(guò)車(chē)載AR導(dǎo)航相關(guān)產(chǎn)品;視辰信息科技自主研發(fā)了AR引擎Easy AR,本文采用該引擎將AR技術(shù)應(yīng)用到海洋地貌可視化中。

海洋地貌作為海洋環(huán)境的基礎(chǔ)地理信息要素,對(duì)其進(jìn)行逼真的模擬和再現(xiàn),是人們對(duì)海底環(huán)境進(jìn)行了解的基本手段和方法[9]。將AR技術(shù)與海洋地貌可視化相結(jié)合,有助于更加準(zhǔn)確地掌握海洋地貌特征,對(duì)于開(kāi)發(fā)海洋資源、實(shí)施海洋工程以及發(fā)展海洋經(jīng)濟(jì)等方面都具有很重要的應(yīng)用價(jià)值;再將二者融合到移動(dòng)端,能為用戶提供更好的體驗(yàn),更加有助于大眾了解海底地形地貌、普及海洋知識(shí)。

1 海洋地貌可視化特點(diǎn)與AR技術(shù)流程

海洋地貌是覆蓋于海水之下地球固體表面的形態(tài),其復(fù)雜程度并不亞于陸地地形,也存在山脈、平原、盆地等不同種類(lèi)的地貌。傳統(tǒng)的二維海圖采用水深線或水深點(diǎn)來(lái)表達(dá)海洋地貌,往往不夠直觀,包含的信息量也較少;而三維海洋地貌可視化表達(dá)則往往脫離了海洋洋體,無(wú)法體現(xiàn)海洋環(huán)境。海洋地貌的可視化表達(dá)不僅需要考慮海洋洋體的可視化,而且需要考慮海底地貌的可視化。對(duì)于海洋洋體部分,需充分考慮海水的顏色、波長(zhǎng)、波速、反射等基本視覺(jué)屬性;對(duì)于海底地貌部分,需充分考慮地形特征、分層設(shè)色規(guī)律、紋理設(shè)置、垂直夸張度設(shè)置等。MAR海洋地貌可視化的實(shí)現(xiàn)主要包括模型建立、AR功能實(shí)現(xiàn)和移動(dòng)端交互設(shè)計(jì)3個(gè)部分。其主要技術(shù)流程如圖1所示。

圖1 技術(shù)流程圖

2 三維海底地形模型的建立

由于海底地形與陸地地形十分相似,因此海底地形三維建模方法主要借鑒陸地地形的三維建模方法。作為海洋地貌可視化系統(tǒng)的核心組成部分,三維海底地形模型的快速構(gòu)建決定了系統(tǒng)的質(zhì)量基礎(chǔ)。

2.1 數(shù)據(jù)預(yù)處理

建立真實(shí)的三維海底地形,需獲取目標(biāo)區(qū)域的高精度高程圖,本文采用World Machine提取目標(biāo)地區(qū)的高度貼圖[10]。World Machine是一款優(yōu)秀的地形編輯工具,可通過(guò)內(nèi)置的Generators(生成器)和Effects(效果器)創(chuàng)建一個(gè)精細(xì)的世界外貌,并提供廣泛的地形信息輸出格式支持。

首先,在地理空間數(shù)據(jù)云網(wǎng)站(http://www.gscloud.cn/)下載目標(biāo)區(qū)域的DEM數(shù)據(jù),并將其轉(zhuǎn)換為HF2或其余可被World Machine識(shí)別的文件類(lèi)型[11]。在World Machine中會(huì)自動(dòng)打開(kāi)一個(gè)Device Workview (設(shè)備工作視圖,World Machine中每個(gè)操作都被稱(chēng)為一個(gè)設(shè)備),在Device Workview中輸入地形屬性后,導(dǎo)出png格式的圖片數(shù)據(jù),如圖2所示。

圖2 World Machine導(dǎo)出的高程圖

2.2 地形模型生成

本文利用Blender軟件建立海洋地貌三維模型。Blender是一款跨平臺(tái)的三維應(yīng)用工具,與其他3D建模工具相比,其對(duì)內(nèi)存和驅(qū)動(dòng)的需求更低。Blender的軟件交互界面基于OpenGL構(gòu)建,在所有支持的硬件與平臺(tái)上均能提供一致的用戶體驗(yàn)。將高程灰度圖導(dǎo)入Blender中,利用平面細(xì)分工具和材質(zhì)紋理工具制作真實(shí)海底三維模型。

2.2.1 細(xì)分方式建模與調(diào)節(jié)

為了盡可能還原真實(shí)的海底地貌細(xì)節(jié),需將海洋地貌模型表面進(jìn)行多級(jí)細(xì)分,增大表面面片數(shù),以適應(yīng)不同地形下模型表面的細(xì)微變化。簡(jiǎn)單來(lái)說(shuō),即假定一個(gè)單獨(dú)多邊形的一級(jí)細(xì)分為2×2個(gè)網(wǎng)格,那么在其二級(jí)細(xì)分上將為4×4個(gè)網(wǎng)格,三級(jí)細(xì)分為8×8個(gè)網(wǎng)格。

對(duì)于復(fù)雜的海底地貌模型,格網(wǎng)劃分得越細(xì),表面呈現(xiàn)得越光滑。利用該特性可使三維模型中不同形狀間的融合過(guò)渡風(fēng)格在柔和平滑和銳利參差之間調(diào)整,只要有一個(gè)規(guī)則的拓?fù)渚W(wǎng)格,就能輕松調(diào)整形狀之間的組合及其表現(xiàn)樣式[12]。Blender內(nèi)置的細(xì)分修改器在進(jìn)行操作時(shí)沒(méi)有破壞性,任何時(shí)候都能返回并進(jìn)行修改。三維海底地形模型如圖3所示。

圖3 三維海底地形模型

2.2.2 表面色彩渲染

在計(jì)算機(jī)數(shù)字圖像處理中常用的顏色模型包括HSL模型和RGB模型[13]。HSL模型通過(guò)色相(H)、飽和度(S)和亮度(L)3個(gè)顏色通道的變化及其相互之間的疊加得到各式各樣的顏色。HSL模型中的H分量代表人眼所能感知的顏色范圍,在Blender中H的取值范圍為[0,1];S分量代表色彩的飽和度,取值范圍為[0,1],用于描述相同色相、亮度下色彩純度的變化,數(shù)值越大顏色越鮮艷;L分量代表色彩的亮度,取值范圍為[0,1],用于描述色彩的明暗變化,數(shù)值越大色彩越亮越接近白色,數(shù)值越小色彩越暗越接近黑色[14]。

HSL模型的多色漸變渲染方法[15]在實(shí)際應(yīng)用中,為了使顏色更加純正,通常S取值為1.0;L取值過(guò)大顏色接近白色,取值過(guò)小又接近黑色,因此通常L取值為0.5;鑒于海底地形的色譜通常為紅、黃、綠、青、藍(lán),H的取值范圍為[0,1],海水越深,H值越大。當(dāng)海底最大水深為Zmax,最小水深為Zmin(若存在類(lèi)似海島高于水面的情形,Z和Zmin均取水面以上高度的負(fù)值)時(shí),H的取值范圍為[Hmin,Hmax],則水深為Z時(shí)的H值為:

在Blender中,為了實(shí)現(xiàn)更好的人機(jī)交互,將HSL模型修改為HSV模型[16],其中V分量代表明度,即所有光的亮度。一般而言,V值為L(zhǎng)值的兩倍(小于等于1)。在Blender 2.80版中,提供了紋理節(jié)點(diǎn)編輯器對(duì)模型的材質(zhì)進(jìn)行編輯。該系統(tǒng)通過(guò)將顏色、圖案和其他紋理組合在一起來(lái)實(shí)現(xiàn)流水線式的紋理創(chuàng)建。流水線上每個(gè)節(jié)點(diǎn)的數(shù)據(jù)通過(guò)曲線鏈接并傳遞到下一個(gè)節(jié)點(diǎn),直到最后的輸出節(jié)點(diǎn)。Diffuse BSDF是一個(gè)彌散型表面類(lèi)型的著色器,材質(zhì)輸出欄表示最后輸出到模型上的結(jié)果,向其添加幾何節(jié)點(diǎn)、顏色漸變節(jié)點(diǎn)等,給整個(gè)模型上色。根據(jù)需要,還可在不同高度段落內(nèi)設(shè)置不同的基礎(chǔ)色相。將多個(gè)節(jié)點(diǎn)進(jìn)行組合后,再混合到同一輸出,得到的分層設(shè)色模型(圖4)。

圖4 分層設(shè)色模型

3 AR功能的實(shí)現(xiàn)

3.1 技術(shù)流程

目前,Unity提供的AR插件包括ARkit、ARcore、Vuforia以及EasyAR等。本文通過(guò)Unity3D+EasyAR搭建MAR海洋地貌可視化系統(tǒng)?;鹃_(kāi)發(fā)環(huán)節(jié)為:

1)開(kāi)發(fā)環(huán)境搭建,安裝Unity3D。在EasyAR官網(wǎng)下載EasyAR_SDK,并將其導(dǎo)入U(xiǎn)nity3D,構(gòu)建基本開(kāi)發(fā)環(huán)境。

2)在EasyAR官網(wǎng)注冊(cè)賬號(hào),添加SDK License Key,獲取項(xiàng)目中EasyAR插件使用權(quán)限。

3)在Unity中利用EasyAR插件相關(guān)功能進(jìn)行AR場(chǎng)景的搭建,刪除主相機(jī),添加EasyAR中自帶的AR相機(jī)。工程中通過(guò)添加ImageTarget識(shí)別圖以及圖所對(duì)應(yīng)模型進(jìn)行編輯與設(shè)計(jì)工作。

3.2 交互設(shè)計(jì)

本文設(shè)計(jì)開(kāi)發(fā)的MAR海洋地貌可視化系統(tǒng)包括基礎(chǔ)功能、拓展功能和重置功能3個(gè)基本模塊,如圖5所示。

圖5 功能模塊框架圖

3.3 功能模塊與實(shí)現(xiàn)

3.3.1 功能模塊

1)基礎(chǔ)功能模塊。該模塊主要包括模型平移、旋轉(zhuǎn)和縮放功能,負(fù)責(zé)對(duì)模型空間位置和大小進(jìn)行基本控制。系統(tǒng)采用單指觸控的方式進(jìn)行模型平移與旋轉(zhuǎn)操作,為解決平移、旋轉(zhuǎn)沖突問(wèn)題,添加了按鈕切換平移與旋轉(zhuǎn)模式。縮放功能通過(guò)雙指實(shí)現(xiàn),雙指向內(nèi)時(shí)縮小,向外時(shí)放大。

2)拓展功能模塊。該模塊包括對(duì)海底地貌模型操作和水體模型操作兩部分,通過(guò)界面右下角紋理切換按鈕可實(shí)現(xiàn)海底地貌模型紋理切換,還可通過(guò)相應(yīng)的滑動(dòng)條對(duì)模型垂直夸張度、水體顏色、波速、波長(zhǎng)、反射進(jìn)行設(shè)置,以滿足同一海洋模型在不同情況、不同需求下的可視化顯示。

3)重置功能模塊。模型顯示后,由于用戶操作會(huì)出現(xiàn)位置、形狀、屬性等變化,重新識(shí)別時(shí)模型仍為改變后的狀態(tài),只有重新打開(kāi)應(yīng)用才可恢復(fù)初始狀態(tài)。為了方便用戶使用,系統(tǒng)設(shè)計(jì)了重置功能并將其細(xì)分為水體模型重置、海底地貌模型重置和水體屬性重置功能。

3.3.2 基礎(chǔ)功能的實(shí)現(xiàn)

系統(tǒng)包括平移、旋轉(zhuǎn)、縮放3種手勢(shì)操作,通過(guò)添加相應(yīng)腳本實(shí)現(xiàn)。

1)模型平移。系統(tǒng)采用單指觸摸移動(dòng)模型的方式,利用Input.touchCount判斷觸摸點(diǎn)數(shù)量,當(dāng)數(shù)量為1時(shí)執(zhí)行平移功能。模型平移涉及模型的屏幕坐標(biāo)、世界坐標(biāo)以及移動(dòng)端觸摸點(diǎn)的屏幕坐標(biāo)。首先將模型的世界坐標(biāo)通過(guò)矩陣轉(zhuǎn)換為自身的屏幕坐標(biāo),并進(jìn)行存儲(chǔ);再將觸摸點(diǎn)的屏幕坐標(biāo)轉(zhuǎn)換為世界坐標(biāo),由于屏幕只有X、Y方向上的值,因此Z值需使用模型的屏幕坐標(biāo)。利用模型與觸摸點(diǎn)的世界坐標(biāo)計(jì)算模型與觸摸點(diǎn)在世界空間中的偏移量,再將觸摸點(diǎn)的屏幕坐標(biāo)實(shí)時(shí)轉(zhuǎn)化為觸摸點(diǎn)的世界坐標(biāo),并加上偏移量即可得到模型的世界坐標(biāo)。由于該功能需要選取模型,因此需添加Box Colider(碰撞器),并設(shè)置碰撞范圍。

2)模型旋轉(zhuǎn)。旋轉(zhuǎn)功能采用單指觸摸的方式實(shí)現(xiàn),為與平移相區(qū)別,利用控制按鈕切換平移與旋轉(zhuǎn)模式。通過(guò)定義一個(gè)二維向量Vector2記錄屏幕中水平和豎直方向上的偏移量,將Vector2的分向量與世界空間的三維向量Vector3在水平與豎直方向的分向量進(jìn)行運(yùn)算,再通過(guò)Transform.Rotate對(duì)世界空間三維坐標(biāo)系進(jìn)行旋轉(zhuǎn),達(dá)到模型旋轉(zhuǎn)的目的。

3)模型縮放??s放功能采用雙指觸摸的方式實(shí)現(xiàn),記錄兩個(gè)觸摸點(diǎn)新舊位置的距離差,若為正則表示放大手勢(shì), 若為負(fù)則表示縮小手勢(shì)。根據(jù)實(shí)際情況,對(duì)距離進(jìn)行處理,轉(zhuǎn)換成縮放因子。利用模型的Transform組件,根據(jù)模型自身比例大小進(jìn)行運(yùn)算,實(shí)現(xiàn)縮放功能。

3.3.3 拓展功能的實(shí)現(xiàn)

拓展功能主要包括海底地貌模型與水體模型的垂直夸張度改變功能、海底地貌模型紋理改變功能以及水體屬性改變功能(顏色、波長(zhǎng)、波速、反射),用于根據(jù)用戶需求實(shí)現(xiàn)個(gè)性化設(shè)置。為使高度和屬性改變得更平滑,系統(tǒng)利用Unity中UI的Slider控件進(jìn)行滑動(dòng)調(diào)節(jié)。

1)垂直夸張度改變功能。海底地貌模型與水體模型均采用相同原理實(shí)現(xiàn)垂直夸張度改變,將Slider控件的值實(shí)時(shí)賦予模型Transform組件中垂直方向上的比例值,以此實(shí)現(xiàn)對(duì)垂直夸張度的改變。此外,需將水體模型設(shè)置為海底地貌模型的子對(duì)象,以避免海底地貌模型垂直夸張度改變時(shí)水體模型垂直夸張度上限過(guò)高或過(guò)低。

2)海底地貌模型紋理改變功能。模型的材質(zhì)球中的Albedo選項(xiàng)用于放置紋理圖片,更換不同圖片將改變紋理效果。新建Resources文件夾,將要替換的紋理文件存入該文件夾,替換Albedo中的紋理圖片,并利用Button控件切換紋理圖片。

3)水體屬性改變功能。系統(tǒng)中的動(dòng)態(tài)水體模型是基于Unity3D中的Mobile Ocean & Water插件構(gòu)建而成的。水體模型的屬性可通過(guò)代碼直接訪問(wèn)修改。該功能與UI控件Slider相結(jié)合,將Slider的值賦予著色器屬性,以達(dá)到改變屬性的目的,且Slider控件自帶上下限,有效避免了超限問(wèn)題。

3.3.4 重置功能的實(shí)現(xiàn)

1)模型重置功能。水體模型重置與海底地貌模型重置采用相同的方法,在模型加載期間分別記錄水體與海底地貌模型在Transform組件中的位置、旋轉(zhuǎn)、縮放參數(shù)。當(dāng)需要重置時(shí),通過(guò)點(diǎn)擊重置按鈕,將記錄的相關(guān)參數(shù)重新賦予模型,實(shí)現(xiàn)重置效果。

2)水體屬性重置功能。水體屬性重置除了相關(guān)顏色、波長(zhǎng)、波速、反射的參數(shù)重置外,還要重置與之關(guān)聯(lián)的Slider控件。因此,該功能代碼需要同時(shí)將值賦予著色器屬性與對(duì)應(yīng)的Slider控件。

3.4 關(guān)鍵技術(shù)

3.4.1 目標(biāo)識(shí)別技術(shù)

在AR的識(shí)別技術(shù)中,圖像指紋和漢明距離是兩個(gè)關(guān)鍵要素[17]。圖像指紋可通過(guò)“感知哈希算法”得到,通過(guò)將識(shí)別圖與相機(jī)實(shí)時(shí)圖像進(jìn)行對(duì)比得到漢明距離,即可實(shí)現(xiàn)目標(biāo)識(shí)別。

“感知哈希算法”首先將圖像縮小為8×8個(gè)像素,去除圖像細(xì)節(jié),同時(shí)將灰度值也分為64級(jí)灰度,計(jì)算灰度值的平均值;再將所有像素的灰度值與平均值進(jìn)行比較,當(dāng)像素灰度值大于或等于平均值時(shí)記為1,小于平均值時(shí)記為0;最后將所有比較結(jié)果組合在一起,組合產(chǎn)生的64位整數(shù)即為該圖像的“指紋”。

漢明距離是對(duì)長(zhǎng)度相同的字符串進(jìn)行對(duì)比,字符串中對(duì)應(yīng)位字符不同的數(shù)量就是漢明距離。將識(shí)別圖與相機(jī)實(shí)時(shí)圖像的圖像指紋進(jìn)行對(duì)比,根據(jù)漢明距離識(shí)別圖像,當(dāng)漢明距離小于5時(shí),說(shuō)明圖像很相似;當(dāng)漢明距離大于10時(shí),說(shuō)明是不同的圖像。本文采用“感知哈希算法”通過(guò)漢明距離進(jìn)行目標(biāo)識(shí)別。

3.4.2 跟蹤注冊(cè)技術(shù)

跟蹤注冊(cè)技術(shù)是AR的核心技術(shù),可實(shí)時(shí)高效地將真實(shí)世界與虛擬世界精準(zhǔn)對(duì)齊,將真實(shí)世界坐標(biāo)系與虛擬世界坐標(biāo)系統(tǒng)一起來(lái),統(tǒng)一的過(guò)程即為注冊(cè)。由于AR在使用過(guò)程中,用戶會(huì)不斷移動(dòng),導(dǎo)致自身與目標(biāo)坐標(biāo)系以及相對(duì)位置均在實(shí)時(shí)改變。為了實(shí)現(xiàn)AR,需實(shí)時(shí)注冊(cè),不斷修改相關(guān)參數(shù),該過(guò)程稱(chēng)為跟蹤。目前的跟蹤注冊(cè)主要分為3種:基于傳感器、基于機(jī)器視覺(jué)和基于混合的跟蹤注冊(cè)[18]。

基于傳感器的跟蹤注冊(cè)技術(shù)利用移動(dòng)設(shè)備自帶的傳感器(如方向傳感器、GPS傳感器等)獲取當(dāng)前位置和方向信息,并通過(guò)攝像頭實(shí)現(xiàn)虛擬信息與真實(shí)世界的疊加,完成跟蹤注冊(cè)。由于傳感器為移動(dòng)設(shè)備內(nèi)置設(shè)備,因此易受外界因素影響,傳感器的抖動(dòng)將影響跟蹤注冊(cè),使虛擬信息跟隨抖動(dòng)疊加?;跈C(jī)器視覺(jué)的跟蹤注冊(cè)技術(shù)是通過(guò)攝像頭對(duì)視頻圖像進(jìn)行處理,得到跟蹤信息,再根據(jù)這些信息得到真實(shí)世界中虛擬信息的位置信息[19]?;诨旌系母欁?cè)技術(shù)是結(jié)合上述兩種方法,先利用傳感器粗略確定用戶位置姿態(tài),再利用機(jī)器視覺(jué)跟蹤注冊(cè)技術(shù)進(jìn)行精確處理。本文采用基于混合的跟蹤注冊(cè)技術(shù),在提高注冊(cè)速度的同時(shí),增加了注冊(cè)穩(wěn)定性,提高了用戶體驗(yàn)。

3.4.3 屏幕坐標(biāo)與世界坐標(biāo)的轉(zhuǎn)換

屏幕坐標(biāo)與世界坐標(biāo)的轉(zhuǎn)換是實(shí)現(xiàn)AR模型識(shí)別和基于移動(dòng)端屏幕操作的關(guān)鍵技術(shù)。AR實(shí)現(xiàn)過(guò)程中涉及屏幕坐標(biāo)系、攝像機(jī)坐標(biāo)系、世界坐標(biāo)系3個(gè)坐標(biāo)系。世界坐標(biāo)系下的點(diǎn)與理想屏幕中投影點(diǎn)的像素坐標(biāo)關(guān)系為:

式中,(X,Y,Z)為某點(diǎn)在世界坐標(biāo)系中的坐標(biāo);(x,y)為屏幕中投影點(diǎn)的位置;f1、f2、p、q和m為攝像機(jī)內(nèi)參,可由攝像機(jī)標(biāo)定求解;R、T為攝像機(jī)外參,即攝像機(jī)在世界坐標(biāo)系中的位置和姿態(tài)。

在Unity中,屏幕坐標(biāo)系是指電腦或手機(jī)等設(shè)備屏幕的坐標(biāo)系,屏幕坐標(biāo)系通過(guò)像素進(jìn)行定義,屏幕左下角為坐標(biāo)原點(diǎn)(0,0),右上角為(width,height),對(duì)應(yīng)于屏幕的寬與高。攝像機(jī)坐標(biāo)系與屏幕坐標(biāo)系相似,區(qū)別在于攝像機(jī)坐標(biāo)系位于三維空間,而屏幕坐標(biāo)系位于二維平面。攝像機(jī)位于攝像機(jī)坐標(biāo)系原點(diǎn),X軸向右,Y軸位于攝像機(jī)正上方,Z軸方向?yàn)閿z像機(jī)朝向。

Unity提供了一系列封裝好的方法,通過(guò)這些方法可快速實(shí)現(xiàn)不同坐標(biāo)系的轉(zhuǎn)換。

1)Camera.WorldToScreenPoint方法可將世界坐標(biāo)轉(zhuǎn)換為屏幕坐標(biāo),其中Camera為場(chǎng)景中的Camera對(duì)象。

2)Camera.ScreenToWorldPoint方法可將屏幕坐標(biāo)轉(zhuǎn)換為世界坐標(biāo)。

3.5 實(shí)驗(yàn)效果

在安卓手機(jī)上運(yùn)行MAR海洋地貌可視化App,系統(tǒng)自動(dòng)識(shí)別筆記本電腦上展示的目標(biāo)區(qū)域,顯示海洋洋體模型和海洋地貌模型,移動(dòng)模型、修改水體模型顏色、旋轉(zhuǎn)模型、改變模型垂直夸張度、改變模型紋理和改變模型波長(zhǎng)與反射屬性等功能效果如圖6所示。

圖6 MAR海洋地貌可視化系統(tǒng)實(shí)現(xiàn)效果

4 結(jié) 語(yǔ)

本文在移動(dòng)端將AR技術(shù)應(yīng)用于海洋地貌可視化與多層次展示中,取得了較好的表達(dá)效果。本文中海洋被假定為靜態(tài)水體,但真實(shí)的海洋洋體是一個(gè)復(fù)雜的動(dòng)態(tài)系統(tǒng),在將來(lái)的實(shí)驗(yàn)中還有待進(jìn)一步完善。

猜你喜歡
重置紋理坐標(biāo)系
基于BM3D的復(fù)雜紋理區(qū)域圖像去噪
軟件(2020年3期)2020-04-20 01:45:18
系統(tǒng)重置中途出錯(cuò)的解決辦法
重置人生 ①
使用紋理疊加添加藝術(shù)畫(huà)特效
解密坐標(biāo)系中的平移變換
2018年山西省對(duì)口升學(xué)考試考生重置密碼申請(qǐng)表
坐標(biāo)系背后的故事
TEXTURE ON TEXTURE質(zhì)地上的紋理
Coco薇(2017年8期)2017-08-03 15:23:38
基于重心坐標(biāo)系的平面幾何證明的探討
消除凹凸紋理有妙招!
Coco薇(2015年5期)2016-03-29 23:22:15
天峻县| 长宁区| 漯河市| 耒阳市| 长顺县| 金华市| 白河县| 嘉祥县| 明光市| 波密县| 灵石县| 广宁县| 云林县| 天台县| 溆浦县| 衡阳市| 定陶县| 天峨县| 阳山县| 桐梓县| 大关县| 西吉县| 白银市| 金昌市| 谷城县| 西乌珠穆沁旗| 安远县| 盐山县| 蒙山县| 民和| 凭祥市| 涿州市| 贵定县| 梅河口市| 阜平县| 金湖县| 秦安县| 礼泉县| 福贡县| 青海省| 东宁县|