亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于World Wind 三維模型加載的視錐裁剪改進算法研究

        2014-04-29 23:21:39劉洋洋盧小平李向陽
        電腦知識與技術(shù) 2014年10期
        關(guān)鍵詞:三維模型

        劉洋洋 盧小平 李向陽

        摘要:為了解決World Wind中三維模型加載速度慢、效率低、占用內(nèi)存高、顯示效果不佳等問題。該文通過研究World Wind運行機制,分析三維模型的顯示原理并對其顯示過程中所采用的視錐裁剪算法進行了改進。實驗結(jié)果表明,該文提出的視錐裁剪改進算法可有效提高三維模型加載速度,減小內(nèi)存占用率,為基于World Wind的后續(xù)研究打下良好基礎(chǔ)。

        關(guān)鍵詞:World Wind;三維模型;視錐裁剪

        中圖分類號:TP311 文獻標(biāo)識碼:A 文章編號:1009-3044(2014)10-2414-04

        Abstract: In order to solve the problem of 3D Model loading in the World Wind, for example low speed, low efficiency, high memory and the display effect is not well and so on. By studying the World Wind running mechanism. This paper analysis of the 3D model which used for the display principle and improved the frustum culling algorithm which be used in the process of showing . the experimental results shows that the 3D model loading becomes faster and the footprint smaller. Now there will be a good basis of the further research based on World Wind.

        Key words: World Wind;3D model;frustum culling

        隨著地理信息技術(shù)的快速發(fā)展,越來越多的科研機構(gòu)和科技公司開始研發(fā)三維地理信息系統(tǒng)。在眾多三維地理信息系統(tǒng)中,美國NASA開發(fā)的World Wind因其開源性而受到了廣大科研人員的青睞。在多數(shù)以World Wind為平臺的科研開發(fā)中,一般需要先將三維模型加載于其中,而后再依照所需進行后續(xù)研究。然而三維模型在加載World Wind的過程中,往往會出現(xiàn)加載速度慢、效率低、占用內(nèi)存高、顯示效果不佳等問題,為后續(xù)科研帶來很大不便。

        針對以上問題,該文基于World Wind的運行機制,對其內(nèi)部的瓦片金字塔結(jié)構(gòu)以及用于三維模型顯示的視錐裁剪算法進行了研究。在對World Wind視錐裁剪算法分析后發(fā)現(xiàn)三維模型加載問題大多與此有關(guān)。通過比較多種視錐裁剪算法后,基于World Wind特性,該文改進了World Wind原有視錐裁剪算法[1]。經(jīng)實驗表明,改進后的視錐裁剪算法有效的解決了World Wind中三維模型加載速度慢等問題。

        1 World Wind

        1.1World Wind概述

        World Wind是美國NASA研發(fā)的開放性三維地理信息系統(tǒng)。在數(shù)據(jù)源方面,World Wind依借NASA龐大的衛(wèi)星資源,可以隨時調(diào)用MODIS、Landsat、GLOBE、SRTM等多顆衛(wèi)星的數(shù)據(jù)信息[2]。同時再將Landsat衛(wèi)星數(shù)據(jù)圖像和雷達遙感數(shù)據(jù)結(jié)合后,通過World Wind界面,用戶可以感受到遨游三維地球的美妙體驗。World Wind不僅提供了地球數(shù)據(jù),還提供了月球數(shù)據(jù)。在瀏覽地球的同時,用戶還可以通過World Wind近距離的觀測月球。 World Wind還能自動更新衛(wèi)星數(shù)據(jù),這使得World Wind可以在全球范圍內(nèi)跟蹤火山爆發(fā)、海嘯、地震以及各種近期事件。而且根據(jù)用戶需要,World Wind還提供了城市、交通、經(jīng)緯線、國界等參考層。同時在World Wind三維地球儀上,還可以接收到來自GPS接收機的數(shù)據(jù)以及各種坐標(biāo)信息。

        此外,用戶還可以對界面中的地球或者其他行星進行放大、縮小、旋轉(zhuǎn)、傾斜等操作。同時World Wind還提供了與軟件功能相對應(yīng)的衛(wèi)星數(shù)據(jù)層次,用戶可按需進行調(diào)整。如圖1所示。

        1.2 World Wind瓦片金字塔體系

        為了解決模型加載問題,該文深入World Wind內(nèi)部研究其運行機制。在具體研究中,該文發(fā)現(xiàn)World Wind采用了瓦片金字塔模型結(jié)構(gòu)體系。把一幅圖像按照一定的比例尺寸分割成若干的小正方形柵格,其中每個柵格就是一張瓦片[3]。在瓦片的基礎(chǔ)上,把一幅圖像由小到大依次分割成多個區(qū)域。分割后,就會按照層級呈現(xiàn)出數(shù)據(jù)量由少至多、圖像比例由小到大的無頂金字塔結(jié)構(gòu)。如圖2所示。

        根據(jù)瓦片金字塔結(jié)構(gòu)[4],我們可以將World Wind分割成以下形態(tài)。如圖3所示。

        構(gòu)建瓦片金子塔時,首先定義其第0層,把原始數(shù)據(jù)作為底層,然后按照需求進行分塊,形成第0層瓦片矩陣。由第0層做基礎(chǔ),按照每2*2個像素合成1個像素的方法構(gòu)建第1層,依照先例對其分塊,形成第1層瓦片矩陣。以此類推,最終構(gòu)成整個瓦片金字塔[5]。瓦片金子塔的優(yōu)勢在于它是一種類似于多分辨率的層次模型,能夠在提高顯示速度的前提下保證顯示精度。在地形繪制時,根據(jù)不同區(qū)域的特征,往往需要不同分辨率的紋理影像數(shù)據(jù)和高程模型數(shù)據(jù)。針對這種情況,影像金字塔和數(shù)字高程模型金字塔無需進行實時重采樣就可為其提供數(shù)據(jù)。

        作為大型三維地理信息系統(tǒng),World Wind需要對海量的數(shù)據(jù)進行處理。在具體的運行中,得益于瓦片金字塔結(jié)構(gòu)體系,World Wind可以在減少完成地形繪制所需總耗時的前提下提高系統(tǒng)的輸出輸入執(zhí)行效率,進而提升系統(tǒng)的整體性能。

        2 三維模型加載

        2.1 KML與KMZ

        由于World Wind不提供房屋建筑等三維模型數(shù)據(jù),所以在進行與三維模型有關(guān)的研究時,首先需要去采集三維模型數(shù)據(jù)。由于制作三維模型費時費力,對科研進度有很大影響。為了省時省力,在對三維模型沒有特定要求的情況下,科研人員一般都會選擇從互聯(lián)網(wǎng)上下載三維模型來進行相關(guān)研究。

        鑒于KML文件具有海量的模型庫,World Wind也提供了KML模型文件的加載接口。因此下載三維模型時,KML文件成為科研人員的首選。KML是一種基于XML文件格式和語法的語言,同XML一樣,KML里面包含了屬性、名稱等標(biāo)簽來顯示模型信息,如點坐標(biāo)、經(jīng)緯度、高度以及超鏈接等[6]。KML文件、dae文件、圖片文件夾,三者共同壓縮后形成可加載的KMZ三維模型文件。

        2.2 KMZ文件批量加載的實現(xiàn)

        由于World Wind提供的KMZ文件加載接口每次只能加載一個三維模型,而針對三維模型的研究往往需要對一定區(qū)域的多個三維模型進行加載。為了解決這個問題,該文改進了World Wind中加載三維模型的KMLViewer類,最終實現(xiàn)了三維模型在World Wind上的批量加載。

        與此同時,問題也隨之出現(xiàn)。在對單個三維模型進行加載時,World Wind三維模型加載速度慢、效率低、占用內(nèi)存高、顯示效果不佳等問題并不明顯。但是在多個三維模型批量加載時,可以明顯的看到World Wind出現(xiàn)了卡滯現(xiàn)象,而且多數(shù)三維模型的紋理加載失敗呈現(xiàn)透明狀態(tài),左邊框架里的選項也消失不見,CPU內(nèi)存使用率急劇升高,電腦瀕臨死機狀態(tài)。如圖4所示。

        World Wind中三維模型批量加載的問題嚴重影響了后續(xù)研究的開展。為了解決這個問題,該文對三維模型批量加載類的代碼進行分析后,最終選擇改進視錐裁剪算法來解決該問題。

        3 視錐裁剪

        視錐體是指采用空間變換矩陣計算出的一個由六個面組成的有效顯示范圍[7]。如圖5所示。

        根據(jù)視錐裁剪算法原理,三維地理信息系統(tǒng)只顯示視錐體范圍內(nèi)的三維模型,對范圍外的模型一律不再顯示,因此視錐裁剪算法能有效地提高三維地理信息系統(tǒng)的顯示效率。通過研究java版World Wind代碼,該文發(fā)現(xiàn)World Wind中的視錐體首先顯示球面數(shù)據(jù),而后顯示新加載的模型區(qū)域。這雖然能顯示球體完整的DEM等數(shù)據(jù),但會影響World Wind中新加載的三維模型顯示效率,造成模型加載速度慢、效率低、內(nèi)存占用高等問題。

        基于以上問題,該文在研究對比了多種視錐裁剪算法后,對World Wind中的視錐裁剪算法進行了改進。劉牧曾提出對模型區(qū)域建立最小包圍球體的想法[8],在針對單個模型或小面積模型區(qū)域時,這種方法還比較有效。但隨著模型區(qū)域面積的擴大,長和寬也會隨之變大,但高度基本不變。所以在對大面積模型區(qū)域進行包裹時,最小包圍球其實只有小半個球體包圍著模型區(qū)域,這就造成了空間上的大量冗余,加重了程序運行負擔(dān)。由于大面積模型區(qū)域類似于一個不規(guī)則的長方體,所以長方體會更加合適包裹三維模型區(qū)域。該文對視錐裁剪算發(fā)改進的基礎(chǔ)思想就是構(gòu)建一個基于三維模型區(qū)域的最小長方體,通過對視錐裁剪算法的改進,讓視錐體優(yōu)先顯示最小長方體中的三維模型區(qū)域,而后顯示球體的DEM等數(shù)據(jù),這樣能有效的解決三維模型加載速度慢、效率低、占用內(nèi)存高等問題。算法步驟如下:

        首先,按照模型區(qū)域的長寬高來定義一個包圍它的最小長方體。其次,通過長方體中兩條對角線的交點找到長方體的中心點L,設(shè)L的坐標(biāo)為(x0,y0,z0),x0,y0,z0可為任意值。長方體的具體構(gòu)建將在World Wind的JOGL中予以實現(xiàn)。然后,分別定義視錐體的六個面為A、B、C、D、E、F,通過World Wind中的frustum類找到與六個面相對應(yīng)的投影矩陣。如圖6所示。

        根據(jù)投影矩陣得出對應(yīng)六個面的個基本平面方程。以左剪切平面為例可得以下方程:

        其中的x.y.z則代表任意一點的坐標(biāo)。將x.y,z代入其中,如果所得值大于0,則說明此點在左切面內(nèi)側(cè)。同理,將此點坐標(biāo)分別代入六個面的方程中,如果都大于0,則此點在視錐體內(nèi)。根據(jù)視錐裁剪算法原理,視錐體只顯示與其相交或者在其內(nèi)部的物體,于是六個方程計算數(shù)值都大于0的此點可顯示,否則不予顯示。最后,將包圍模型區(qū)域的最小長方體中心點L的坐標(biāo)(x0。y0.z0)分別代入六個平面方程中。如果結(jié)果全部大于0,則說明該中心點在視錐體內(nèi),可判定最小長方體與視錐體相交或者在視錐體內(nèi)部,按照視錐體的顯示原理,判定對此最小長方體中的三維模型區(qū)域予以顯示,否則不予顯示。

        4 實驗對比與結(jié)果

        最后,該文通過實驗來驗證該算法的可行性。首先選擇一塊三維模型較多的區(qū)域作為實驗區(qū)。由于美國華盛頓市KMZ模型資源比較豐富,所以本文選擇華盛頓某地作為實驗區(qū)域。

        由于World Wind加載模型后無法讓球體自動顯示加載區(qū)域。為了方便進行實驗,該文對World Wind的KMZ加載類進行改進,在World Wind加載模型后,球體會自動旋轉(zhuǎn)到模型區(qū)域并放大進行顯示。運行World Wind后,按照前文給出的方法對模型區(qū)域的三維模型進行批量加載。打印顯示最小長方體的視錐體六個面坐標(biāo),在與Google Earth中三維模型區(qū)域?qū)嶋H坐標(biāo)對比后,可以看出新建的最小長方體成功鎖定了視錐體,使其精準(zhǔn)的固定在三維模型區(qū)域位置范圍內(nèi)。如圖7所示。

        隨后查看World Wind中三維模型區(qū)域顯示效果。效果如圖8所示。

        通過實驗對比可以看出,改進視錐裁剪算法后的World Wind中三維模型區(qū)域顯示效果較好。右上角360軟件顯示的CPU占有率只有百分之四十一,相比改進前的百分之九十二,節(jié)省了一倍還多。而且在實際加載中,速度也得到明顯提高,沒有出現(xiàn)卡滯現(xiàn)象。

        5 結(jié)論

        鑒于科學(xué)研究對World Wind中多個三維模型加載顯示的需求,該文改進了World Wind中的視錐裁剪算法,經(jīng)過實驗驗證,最終解決了World Wind中三維模型加載顯示速度慢、效率低、內(nèi)存占用率高、顯示效果不佳等問題。

        作為一個開源三維地理信息系統(tǒng),World Wind從發(fā)布以來就一直被開發(fā)者進行完善和提高。該文站在前人的基礎(chǔ)上,對World Wind又進行了一定的改進,希望能為后續(xù)的研究提供便利。

        參考文獻:

        [1] Ulf Assarsson & Tomas Moller.Optimized.View Frustum Culling Algorithms for Bounding Boxes[J].Journal of Graphics Tools,2000(1):9-22.

        [2] Bell D G., Kuehnel, F.NASA World Wind: Opensource GIS for MissionOperations.Aerospace Conference,2007(10):1-9.

        [3] 周波,祝忠明,劉再東.遙感影像的瓦片金字塔切割與邊界填充研究[J].計算機與信息技術(shù),2011(10):29-31.

        [4] 盧小平,田繼輝,張劍偉,等.多尺度DEM數(shù)據(jù)的組織與管理方法研究[J].測繪通報,2010,(6):12-15.

        [5] 戴晨光,張永生,鄧雪清.一種用于實時可視化的海量地形數(shù)據(jù)組織與管理方法[J].系統(tǒng)仿真學(xué)報,2005 (2):406-409.

        [6] 袁琪,閔棟,鄒俊偉.KML文件的信息隱藏技術(shù)[J].北京郵電大學(xué)學(xué)報,2011(1):140-144.

        [7] 張芹,吳北平,孫華等.視景體可視范圍的確定及應(yīng)用[J].測繪科學(xué),2009(4):179-181.

        [8] 劉牧.實時三維漫游系統(tǒng)中關(guān)鍵技術(shù)研究與實現(xiàn)[D].濟南:山東大學(xué),2009:23-24.

        猜你喜歡
        三維模型
        數(shù)字化人體圖像和三維模型在解剖教學(xué)中的應(yīng)用
        礦山虛擬環(huán)境三維模型系統(tǒng)優(yōu)化方法研究
        缸內(nèi)直噴汽油機進氣道流動特性的數(shù)值模擬
        汽車虛擬駕駛培訓(xùn)系統(tǒng)的設(shè)計開發(fā)
        虛擬仿真技術(shù)在家畜解剖教學(xué)中的應(yīng)用
        考試周刊(2016年49期)2016-07-05 09:14:41
        基于現(xiàn)代信息技術(shù)的礦產(chǎn)資源監(jiān)管體系建設(shè)
        科技視界(2016年13期)2016-06-13 08:13:41
        基于WebGL的三維物理模型設(shè)計與開發(fā)
        基于生態(tài)足跡的區(qū)域可持續(xù)發(fā)展研究
        中國市場(2016年7期)2016-03-07 09:18:43
        三維激光掃描在核電維修中的應(yīng)用
        科技視界(2016年4期)2016-02-22 12:45:32
        基于SolidWorks的零件建模參數(shù)化設(shè)計應(yīng)用簡析
        科技資訊(2015年19期)2015-10-09 19:31:12
        国产尤物精品视频| 国产一区二区免费在线观看视频| 日产国产精品亚洲高清| 亚洲国产成人精品无码区在线播放 | 爆爽久久久一区二区又大又黄又嫩| 久久夜色撩人精品国产小说| 黄色网页在线观看一区二区三区| 亚洲女av中文字幕一区二区| 三年的高清电影免费看| 国产美女遭强高潮网站| 女人被躁到高潮嗷嗷叫| 麻豆久久91精品国产| 极品少妇小泬50pthepon| 亚洲AV永久无码制服河南实里| 亚洲天堂无码AV一二三四区| 久久一区二区国产精品| 久久精品亚洲一区二区三区浴池| 欧美性受xxxx黑人xyx性爽| 亚洲av熟女天堂系列| 国产熟女露脸91麻豆| 老司机亚洲精品影院| 综合网五月| 日本成年少妇人妻中文字幕| 久久婷婷五月综合色奶水99啪| 真人与拘做受免费视频| 久久99久久99精品免观看不卡| 性一交一乱一伦| 亚洲中文av一区二区三区| 在线播放偷拍一区二区| 亚洲精品无码久久久久y| 中文字幕亚洲情99在线| 国产精彩刺激对白视频| 国产午夜免费啪视频观看| 亚洲精品国偷拍自产在线观看| 久久国产精品国产精品日韩区| 久久久99精品国产片| 99久久无码一区人妻| 亚洲中文字幕无码专区| 久久成人黄色免费网站| 中文字幕精品一区久久| 国产99视频精品免视看9|