摘要:利用數(shù)字地球平臺GoogleEarth的基礎地理框架和高分辨率衛(wèi)星照片底圖,使用建模工具進行三維建筑群模型建立,通過KML語法實現(xiàn)地理數(shù)據(jù)顯示,實現(xiàn)了虛擬城市的建設和實施。實驗證明,數(shù)字地球平臺憑借其在地理資源、三維顯示、網(wǎng)絡傳輸?shù)确矫娴膬?yōu)勢,是實現(xiàn)數(shù)字城市建設的有效工具。
關鍵詞:數(shù)字地球;數(shù)字城市;三維建模;GoogleEarth;KML
中圖分類號:TP391文獻標識碼:A文章編號:1009-3044(2009)36-10313-03
Based on Digital Earth Platform, Three-dimensional Virtual Digital City Construction
XIANG Jia-lei
(Zhejiang Frontier Corps, Beilun Frontier Inspection Station, Ningbo 315800, China)
Abstract: The use of digital earth platform, GoogleEarth the basic geographic framework and high-resolution satellite photo base map, use the modeling tools for complex three-dimensional model building, through the KML syntax to achieve geographic data, to enable a virtual city construction and implementation. Experiments show that digital terrestrial platform, by virtue of its geographical resources, three-dimensional display, network transmission, and other areas is to achieve an effective tool for the construction of digital cities.
Key words: digital earth; digital city; three-dimensional modeling; GoogleEarth; KML
1 數(shù)字地球概述
“數(shù)字地球”(Digital Earth)作為一個名詞,由前美國副總統(tǒng)戈爾于1998年1月31日在美國加利福尼亞科學中心發(fā)表的題為“數(shù)字地球:認識21世紀的人類星球”的講演中正式提出。隨后,“數(shù)字地球”受到人們的普遍關注,種種跡象表明:“數(shù)字地球”時代到來了?!皵?shù)字地球”,即把整個地球作為研究對象,以地理坐標為依據(jù)的、具有多分辨率和多維特征的、由海量數(shù)據(jù)組成的虛擬地球。其技術體系結構共包括五部分:1) 據(jù)獲取與更新子系統(tǒng)。2) 數(shù)據(jù)處理與存儲子系統(tǒng)。3) 數(shù)據(jù)與信息傳播子系統(tǒng)。4) 應用子系統(tǒng)。5) 標準化和其他子系統(tǒng)。其中,數(shù)據(jù)獲取與更新子系統(tǒng)主要以全球定位系統(tǒng)(GPS)和遙感(RS)技術為依托來實現(xiàn);數(shù)據(jù)處理與存儲子系統(tǒng)主要以地理信息系統(tǒng)(GIS)的方式來實現(xiàn)。
2 數(shù)字城市概述
隨著“數(shù)字地球” 概念的提出,引起了近年來一系列數(shù)字化建設理念。數(shù)字城市的概念是從“數(shù)字地球”發(fā)展而來的,是數(shù)字地球在城市管理中的應用。關于數(shù)字城市的概念,目前正處在一個發(fā)展和演變的過程。以下幾個數(shù)字城市的定義,就是從不同的著眼點和側重點概括闡述了對數(shù)字城市的不同認識和理解。
2.1 數(shù)字城市是城市建設和管理數(shù)字化的終極目標
數(shù)字城市是一個三維的、可視化的城市;是綜合運用地理信息系統(tǒng)、遙感、遙測、網(wǎng)絡、多媒體及虛擬仿真等技術,對城市的基礎設施、功能機制進行自動采集、動態(tài)監(jiān)測管理和輔助決策服務的技術系統(tǒng)。通俗一點說,數(shù)字城市就是指在城市規(guī)劃建設與運營管理以及城市生產(chǎn)與生活中,充分利用數(shù)字化信息處理技術和網(wǎng)絡通信技術,將城市的各種信息資源加以整合并充分利用。城市規(guī)劃者和管理者可以在有準確坐標、時間和對象屬性的三維虛擬城市環(huán)境中進行規(guī)劃、決策和管理。
2.2 數(shù)字城市,是廣義上的城市信息化
數(shù)字城市工程將通過建設寬帶多媒體信息網(wǎng)絡、地理信息系統(tǒng)等基礎設施平臺,整合城市信息資源、建立電子政務、電子商務、社會勞動保障等信息化社區(qū),逐步實現(xiàn)全市國民經(jīng)濟和社會信息化,使城市在信息化時代的競爭中立于不敗之地。
2.3 數(shù)字城市是“虛擬城市”,強調(diào)城市管理的技術系統(tǒng)
從城市規(guī)劃、建設和管理的狹義角度看,數(shù)字城市可概括為“43VR”。即“地理數(shù)據(jù)4D化;地圖數(shù)據(jù)三維化;規(guī)劃設計VR化”。地理數(shù)據(jù)4D包括數(shù)字線劃圖(Digital Line Graph,DLG)、數(shù)字柵格地圖(Digital Raster Graph,DRG)、數(shù)字高程模型(Digital Elevation Modal, DEM)、數(shù)字正射影像圖(Digital Orthophoto Map,DOM)。地圖數(shù)據(jù)三維化是指地圖數(shù)據(jù)由現(xiàn)在的二維結構轉(zhuǎn)換為三維結構。規(guī)劃設計VR(Virtual Reality)化是指規(guī)劃設計和規(guī)劃管理在4D數(shù)據(jù)、三維地圖數(shù)據(jù)支撐下,將現(xiàn)有的二維作業(yè)對象和手段升級為三維和VR結合作業(yè)對象和手段。
2.4 數(shù)字城市,是一種新的社會經(jīng)濟系統(tǒng)
從信息社會發(fā)展的角度來認識數(shù)字城市,數(shù)字城市是指一種新的社會經(jīng)濟系統(tǒng),通過它人們能夠?qū)崿F(xiàn)自由創(chuàng)造、共享文化、工業(yè)、經(jīng)濟、自然、環(huán)境、信息和知識,享受和諧的日常生活。它是相對目前的大規(guī)模生產(chǎn)和消費系統(tǒng)而言的,可稱之為數(shù)字革命。實際意義上的數(shù)字城市建設,是指將有關城市的信息,包括城市自然資源、社會資源、基礎設施、人文、經(jīng)濟等各個方面,以數(shù)字的形式進行獲取、存儲、管理和再現(xiàn),通過對城市信息的綜合分析和有效利用,為提高城市管理效率、節(jié)約資源、保護環(huán)境和城市可持續(xù)發(fā)展提供決策支持。
在實踐的過程中,數(shù)字城市的理念得到了逐步完善和擴充。數(shù)字城市在現(xiàn)實城市的基礎上構建可視化的虛擬城市,它是一種基于地球地理坐標系建立的關于城市的空間信息模型,通過信息網(wǎng)絡將現(xiàn)實城市的各種信息的收集、整理、歸納、存儲、分析和優(yōu)化,進而對城市的各種資源、生態(tài)環(huán)境、社會環(huán)境等方面的實體和現(xiàn)象進行模擬、仿真、表現(xiàn)、分析和深入認識。利用不同技術和方法建立的虛擬城市在我國已經(jīng)出現(xiàn)很多, 多數(shù)是從底層建立地理框架,或者直接用平面模型粗略代替地形建模.其費時、費力,建設成本高。以GoogleEarth為代表的數(shù)字地球平臺的出現(xiàn),給此類數(shù)字工程建設提供了一條科學、高效的建設方案。
3 GoogleEarth數(shù)字地球平臺
GoogleEarth數(shù)字地球平臺是以高分辨率空間影像數(shù)據(jù)為基礎(Quick Bird數(shù)據(jù)),以統(tǒng)一的坐標投影系統(tǒng)為框架,以開放的XML為數(shù)據(jù)交換標準,以空間數(shù)據(jù)基礎設施為支撐,以三維可視化技術為手段,以分布式網(wǎng)絡為紐帶,集地球空間數(shù)據(jù)采集、存儲、傳輸、轉(zhuǎn)換、處理、分析、檢索、表達、輸出為一體的開放、共享的計算機輔助決策系統(tǒng)。GoogleEarth作為能夠體現(xiàn)數(shù)字地球平的產(chǎn)物,是空間信息技術發(fā)展的重要成果。數(shù)字城市技術是虛擬現(xiàn)實技術的具體實用。虛擬現(xiàn)實的基礎框架是基于空間位置的地理坐標框架。所以,利用數(shù)字地球平臺來展示空間三維虛擬模型,搭建空間虛擬環(huán)境是新興虛擬現(xiàn)實技術與空間信息技術的有力結合?;跀?shù)字地球平臺開展虛擬城市的建設,有利于城市形象的展示,并對城市的進一步建設和遠景規(guī)劃提供了逼真的可視化平臺。以數(shù)字地球平臺(GoogleEarth、World Wind等)為三維展示平臺,將三維模型按照標準導入到該平臺上進行顯示,更好地解決空間關聯(lián)問題,實現(xiàn)了空間信息的共享。并且可以利用其強大的空間分析功能進行統(tǒng)計和建模分析,如面積計算、緩存區(qū)分析、最短路徑分析等,也能為更科學地實現(xiàn)數(shù)字區(qū)域、數(shù)字旅游線路產(chǎn)品等研究工作提供基礎和保障,具有重要的理論和現(xiàn)實意義。
4 虛擬城市建設
4.1 基礎地理信息的獲取
基礎地理信息的獲取是建立數(shù)字城市的前提和基礎。本課題虛擬城市建設所建立的基礎地理信息和建筑物等地面設施主要以數(shù)字地球平臺的基礎地理信息為主要內(nèi)容,具體是以GoogleEarth上免費獲取的高分辨率空間影像數(shù)據(jù)(Quick Bird數(shù)據(jù))為底圖(見圖1),采用直接面向設計過程的,并與Google Earth有很好關聯(lián)協(xié)作性的專業(yè)設計建模軟件Google SketchUp進行三維數(shù)字化虛擬城市的建設。此軟件可以直接獲取GoogleEarth當前窗口遙感圖像,并自動設置空間地理坐標,無需截圖、方便快捷、定位準確。利用GoogleSketchUp即可直接獲取當前查看。當然,也可以先建立好模型,再獲取底圖進行位置調(diào)節(jié)。此外,軟件提供了常用建模工具的模型格式接口,可以導入多種文件類型,如dwg、dxf、3ds、dem、ddf、jPg、png、tif、bmp、tga等格式。
4.2 基于KML的地理數(shù)據(jù)表示
4.2.1 KML實現(xiàn)的功能
1) 使用圖標和標注來區(qū)分每一個地點;
2) 為每一視圖創(chuàng)建不同的視點;
3) 使用屏幕或地理位置的貼圖;
4) 在具體地理位置使用具有特定結構的三維模型;
5) 為特定種類的要素(Feature)定義顯示樣式;
6) 為要素(Feature)指定基于簡單HTML語法的描述,支持超級鏈接和圖片嵌入;
7) 使用層疊夾(Folder)對要素進行層次性的分組管理;
8) 動態(tài)加載本地或遠程網(wǎng)絡地址的KML文件;
9) 當GoogleEarth客戶端視圖變化時,自動將視圖信息發(fā)送給指定的源服務器并從服務器獲取相關的信息。
4.2.2 KML提供的常用的地理元素
1) Coordinates元素,即坐標序列元素,一個地理坐標對定義為:經(jīng)度,緯度,高度。坐標序列的坐標對之間用以空格為分隔符。
2) Point元素,即點元素,用來編碼幾何點類,每一個Point元素包括一個coordinates元素,包括一個而且僅僅一個坐標對。
3) LineString元素,即折線元素,是由一序列的坐標對所組成的直線段連接起來的折線。
4) LinearRing元素,即環(huán)元素,是一個簡單的線形閉合環(huán),是由起點坐標與終點坐標相同的一序列的坐標對所組成的直線段連接起來的折線環(huán)。
5) Polygon元素,即多邊形元素,是一個連接的平面,按面域之間的包含關系可分為無島面域、有島面域,其外邊界由outerBoundaryIs定義,內(nèi)邊界由innerBoundaryls定義。
6) MultiGeometry元素,即復合對象元素,作為包含任意幾何元素(點、線、面等幾何圖形)的容器。一個MultiGeometry元素可以包含基本的幾何元素如:Point、LineString、Polygon等,甚至包括其它MultiGeometry元素。
4.3 三維模型建立
建筑物三維模型的建立是三維可視化的重要組成部分。為了更好地展示城市內(nèi)不同建筑物的外形特征,采用了直接面向設計過程并與Google Earth高分辨率Quick Bird數(shù)據(jù)影像圖和具有良好交互性的軟件Google SketchUp進行每個建筑物的獨立建模(見圖2)。
三維建模由幾何建模與紋理建模兩部分組成,首先對某一建筑進行分析,包括搜集目標建筑物建筑數(shù)據(jù)資料、實地考察并對其進行數(shù)碼拍攝等(用作貼圖材質(zhì));對圖片進行處理,使其成為符合要求的貼圖材質(zhì),根據(jù)得到的建筑資料對建筑物進行三維建模,然后進行建筑物表面的貼圖,簡單建模的過程大致分為如下步驟:
1) 繪圖單位選取與設置。通常的建筑單位都設定為十進制,精度設為1mm。
2) 建立基準坐標系和基準面。三維空間的建模是基于二維平面基礎圖的拉伸。
3) 簡單幾何體的構造。根據(jù)尺寸材料按比例進行幾何建模,建立的幾何模型為多邊形建模類型。對于復雜的一些幾何形體還采用了拆分以及合并的方法進行建模。
4) 紋理貼圖與場景渲染。為模型表面賦予材質(zhì)、貼圖。目前已經(jīng)有許多自動化的建模方法,如通過生成數(shù)字影像產(chǎn)品并在其基礎上建模,或者通過激光掃描資料進行建模,但是如何與影像配合,如何從密集的高程信息中提取規(guī)則幾何要素及其他信息等方面還存在許多待解決的問題。Google SketchUp具備了3DSMax、Maya、SoftImage等多款軟件建模能力及渲染能力,是直接面向設計過程的建模(見圖3)。
4.4 三維模型層次細化
3D圖形生成速度是虛擬現(xiàn)實場景,實現(xiàn)實時交互時能否流暢的重要影響因素之一,人機交互延遲會使訪問者產(chǎn)生不連續(xù)和跳動感,嚴重影響虛擬現(xiàn)實的效果。本課題主要采用了細節(jié)層次LOD(Level of Detail)技術來平衡瀏覽速度與模型真實性兩者之間的關系。所謂細節(jié)層次LOD技術就是在實時顯示系統(tǒng)中采取的細節(jié)省略(DetailElision)技術。它的基本原理是:在不影響畫面視覺效果的條件下,通過逐次簡化景物的表面細節(jié)來減少場景的幾何復雜性,從而提高繪制算法的效率。該技術通常對每一原始多面體模型建立幾個不同逼近精度的幾何模型,與原模型相比,每個模型均保留了一定層次的細節(jié)。當從近處觀察物體時,采用精細模型;從遠處觀察物體時則采用較為粗糙的模型。模型越真實,相應的文件就越大,就要影響瀏覽器的瀏覽速度,耗費大量的CPU資源從而直接影響到視景的實時運行速度。而LOD技術能夠解決這一問題,可以對不同的景物做出不同細致程度的刻畫,比較近的景物用比較精細的描述,比較遠的景物用比較粗糙的描述,分級程度完全根據(jù)瀏覽者與景物的相對距離而定,從而提高瀏覽速度。制作過程中,針對一個全細節(jié)的模型,通過頂點刪除、邊壓縮、面片收縮等一系列技術以簡化操作,生成低級LOD模型。LOD(Level of Detail)技術,根據(jù)多分辨率模型生成的時機可分為離散LOD技術和連續(xù)LOD技術。連續(xù)LOD能提供不同分辨率模型之間的平滑過渡,而且對于每個區(qū)域分辨率層次的選取是實時動態(tài)生成的,不需要象離散LOD那樣需要預先生成多個多分辨率模型。因此,實時繪制時,離散LOD浪費內(nèi)存資源而節(jié)省CPU資源;與此相反,連續(xù)LOD浪費CPU資源而節(jié)省內(nèi)存資源。前者適用于視點跳躍性變化的應用環(huán)境下,后者適用于視點平滑變化的應用中。通過這樣的處理,大大降低了場景中多邊形數(shù)量,達到了大規(guī)模場景模型的實時交互漫游效果。
5 結束語
在數(shù)字城市的建設中我們以衛(wèi)星影像作為數(shù)字城市的基礎地理信息和建筑物三維建模的主要數(shù)據(jù)源,直接導入建模軟件中進行三維建模,高效、低成本地實現(xiàn)了數(shù)字城市的三維虛擬建設;運用細節(jié)層次LOD技術解決了大規(guī)模場景模型的實時交互傳輸?shù)乃俣葐栴};又以數(shù)字地球平臺GoogleEarth作為三維可視化平臺將三維模型按照交換標準導入到該平臺上進行漫游顯示,憑借平臺上豐富的行業(yè)數(shù)據(jù),低費用性、開放性、共享性、應用性等特征,強大的空間分析和表達功能,實現(xiàn)了新一代三維虛擬數(shù)字化城市的建設。進行三維虛擬建模的目的不僅僅是為了瀏覽,還必須與GIS系統(tǒng)相連接,賦予查詢、分析等功能,使數(shù)字城市的功能得到進一步的擴充。
參考文獻:
[1] 胡小強.虛擬現(xiàn)實技術[M].北京:北京郵電大學出版社,2005.
[2] 胡鑄鑫,黃國興.三維虛擬數(shù)字校園系統(tǒng)的研究與實現(xiàn)[J].微型電腦應用,2007,23(5):26-29.
[3] 姜真杰,方陸明,吳達勝.數(shù)字校園理念及應用[J],吉林師范大學學報,2003(2):26-29.
[4] 李魯群,林宗堅,李成名.基于Java vVeb Start技術的WebGIS體系結構的設計[J].設計和科學,2002,29(8):139-14l.
[5] 苗放,周宇鵬,葉成名,等.基于G0ogle Earth的GIS開發(fā)和應用模式探討[C]//中國地球物理年會第22屆年會論文集.四川:四川科學技術出版社,2006:756.
[6] 曾濤,楊武年,余代俊,等.利用高分辨率影像建立三維虛擬校園[J].物探化探計算技術,2006,28(3):250—254.
[7] KML2.2Reference(beta)[EB/OL].http://code.google.com/apis/kml/documentation/kml-tags-beta1.htm1.
[8] KML2.2chema[EB/OL].http://code.google.com/apis/kml/schema/km122beta.xsd.