一種三維地形建模方法
【專利摘要】本發(fā)明屬于GIS【技術(shù)領(lǐng)域】,尤其涉及一種利用數(shù)字高程模型(Digital?Elevation?Model,DEM)數(shù)據(jù)和衛(wèi)星圖片進(jìn)行三維地形模型構(gòu)建方法。該方法利用原始地形數(shù)據(jù)產(chǎn)生模型、應(yīng)用地圖衛(wèi)星照片作為紋理、使用規(guī)則格網(wǎng)算法(Polymesh)、三角剖分算法(Delaunay)、地形文化特征三角化(Terrain?Culture?Triangulation,TCT)和連續(xù)自適應(yīng)地形(Continuous?Adaptive?Terrain,CAT)等四種算法轉(zhuǎn)換并生成三維地形模型的方法。從而解決紋理制作復(fù)雜、地形轉(zhuǎn)換算法單一導(dǎo)致的地形模型結(jié)構(gòu)和效果單一、三維地形實(shí)時(shí)渲染性差的問題。
【專利說明】一種三維地形建模方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于GIS【技術(shù)領(lǐng)域】,尤其涉及一種利用數(shù)字高程模型(Digital Elevation Model,DEM)數(shù)據(jù)和衛(wèi)星圖片進(jìn)行三維地形模型構(gòu)建方法。
【背景技術(shù)】
[0002] 地理信息系統(tǒng)(Geographic Information System, GIS)可以對(duì)地球上存在的東西 和發(fā)生的事情進(jìn)行成圖和分析。GIS中常使用三維地形建模技術(shù)來對(duì)地形進(jìn)行可視化仿真。 三維地形建模是建立描述某一部分地球表面及其特征的曲面模型。目前三維地形建模過程 主要為:利用數(shù)據(jù)確定地表模型、采用紋理映射將圖像數(shù)據(jù)映射到地形模型實(shí)現(xiàn)地形真實(shí) 感、采用細(xì)節(jié)層次等方法實(shí)現(xiàn)實(shí)時(shí)地形繪制。
[0003] 現(xiàn)有發(fā)明如申請(qǐng)?zhí)枮?00910244296. 0,發(fā)明名稱為《一種三維地形建模方法及系 統(tǒng)》的專利,其所述方法包括:讀取高度數(shù)據(jù);將高度數(shù)據(jù)轉(zhuǎn)換為三維空間坐標(biāo),建立三維模 型;計(jì)算所述三維模型中每個(gè)頂點(diǎn)的顏色信息和法向量;對(duì)所述三維模型進(jìn)行渲染。其缺 陷在于:一是其地形數(shù)據(jù)轉(zhuǎn)換算法單一,不便于應(yīng)用多種算法生成不同結(jié)構(gòu)和效果的地形 模型。二是紋理文件采用shape格式,其數(shù)據(jù)獲得困難且使用需要專業(yè)知識(shí),不便于快速高 效的得到紋理。三是其建立的模型渲染時(shí)對(duì)硬件要求高,尤其不能滿足實(shí)時(shí)渲染的需求。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的在于克服現(xiàn)有技術(shù)的缺陷,提供了一種三維地形建模方法,該方法 利用原始地形數(shù)據(jù)產(chǎn)生模型、應(yīng)用地圖衛(wèi)星照片作為紋理、使用規(guī)則格網(wǎng)算法(Polymesh)、 三角剖分算法(Delaunay)、地形文化特征三角化(Terrain Culture Triangulation,TCT) 和連續(xù)自適應(yīng)地形(Continuous Adaptive Terrain,CAT)等四種算法轉(zhuǎn)換并生成三維地形 模型的方法。從而解決紋理制作復(fù)雜、地形轉(zhuǎn)換算法單一導(dǎo)致的地形模型結(jié)構(gòu)和效果單一、 三維地形實(shí)時(shí)渲染性差的問題。
[0005] -種三維地形建模方法,方法具體如下:
[0006] S1、將原始地形數(shù)據(jù)轉(zhuǎn)換為DED格式的數(shù)據(jù);
[0007] S2、對(duì)S1所述DED數(shù)據(jù)創(chuàng)建細(xì)節(jié)層次;
[0008] S3、根據(jù)S2所述細(xì)節(jié)層次選擇地形轉(zhuǎn)換算法將S1所述DED數(shù)據(jù)轉(zhuǎn)換為地形模型;
[0009] S4、利用衛(wèi)星地圖抓取方法制作地形紋理,將地形紋理映射至地形模型,最終生成 三維地形模型。
[0010] 進(jìn)一步地,使用Creator軟件將原始地形數(shù)據(jù)轉(zhuǎn)換為DED格式的數(shù)據(jù)。
[0011] 進(jìn)一步地,S3所述地形轉(zhuǎn)換算法是creator軟件中提供的Polymesh、Delaunay、 TCT、和CAT四種算法。
[0012] 進(jìn)一步地,S3所述地形模型為層次地形模型(LayerofDetails,L0D),所述L0D模 型是一種表達(dá)不同精度水平的數(shù)字高程模型,可以根據(jù)不同的任務(wù)要求選擇不同精度的地 形模型。
[0013] 進(jìn)一步地,S4所述衛(wèi)星地圖抓取方法制作地形紋理具體如下:
[0014] S41、對(duì)衛(wèi)星地圖按照需求進(jìn)行圖片分塊抓取,記錄每張圖片所代表的地理坐標(biāo)范 圍;
[0015] S42、將S41所述分塊抓取的圖片進(jìn)行拼接,得到一塊大幅的紋理圖片;
[0016] S43、將S42所述紋理圖片利用軟件映射到S3所述地形模型上,生成三維地形模 型。
[0017] 進(jìn)一步地,所述衛(wèi)星地圖抓取方法為屏幕硬拷貝法、使用Getscreen軟件抓取。
[0018] 進(jìn)一步地,S43所述軟件為Creator軟件。
[0019] 進(jìn)一步地,利用軟件Creator映射到S3所述地形模型上,具體方法如下:
[0020] 生成三維地形模型在Creator軟件中的地形窗口 Texture面板中直接指定使用當(dāng) 前紋理調(diào)板中的地形紋理;
[0021] 使用紋理工具箱中的"GeoPut Texture"工具將當(dāng)前地形紋理應(yīng)用到跟其具有相 同地形坐標(biāo)的地形多邊形上;
[0022] 使用"Terrain/Batch GeoPut"菜單命令將一個(gè)或多個(gè)地形紋理映射到指定的 OpenFlight模型文件中。
[0023] 進(jìn)一步地,所述映射過程地形紋理跟地形模型的地形坐標(biāo)完全匹配。
[0024] 本發(fā)明的有益效果是:
[0025] 模型效果逼真,地形結(jié)構(gòu)和效果多樣,提高了仿真精度,實(shí)現(xiàn)了實(shí)時(shí)渲染。
【專利附圖】
【附圖說明】
[0026] 圖1為本發(fā)明流程圖。
【具體實(shí)施方式】
[0027] 下面結(jié)合實(shí)施例和附圖,詳細(xì)說明本發(fā)明的技術(shù)發(fā)明。
[0028] 本實(shí)施例雷達(dá)視景仿真為應(yīng)用場(chǎng)景,針對(duì)在雷達(dá)視景仿真中面臨的待仿真地域面 積廣闊、仿真的視景實(shí)時(shí)變化并對(duì)細(xì)節(jié)要求完善等特點(diǎn),采用本發(fā)明所述的三維地形建模 方法構(gòu)建視景。最終實(shí)現(xiàn)了場(chǎng)景中地形模型的逼真構(gòu)建,保證了該雷達(dá)視景仿真中的模型 的高度逼真和實(shí)時(shí)渲染。
[0029] 雷達(dá)視景仿真時(shí),因雷達(dá)的照射面積廣闊,視景場(chǎng)面通常為幾百平方公里,導(dǎo)致要 仿真的三維地形面積非常大,從而導(dǎo)致地形建模較為困難,在本發(fā)明三維地形建模中,利用 了美國太空總署公開的數(shù)據(jù)源。
[0030] 地形構(gòu)建時(shí),從美國太空總署NASA網(wǎng)站下載預(yù)仿真地域的DEM數(shù)據(jù),利用數(shù)據(jù)轉(zhuǎn) 換工具Creator軟件將下載的格式數(shù)據(jù)轉(zhuǎn)換為DED格式。
[0031] 雷達(dá)視景仿真時(shí),雷達(dá)掃描到某地域并發(fā)現(xiàn)目標(biāo)時(shí),通常會(huì)對(duì)該地域的視景要求 進(jìn)一步詳細(xì)化,即對(duì)三維模型的局部進(jìn)行放大和細(xì)化。利用本發(fā)明中的數(shù)據(jù)創(chuàng)建細(xì)節(jié)層次 技術(shù),避免了剛開始加載過多的冗余數(shù)據(jù)導(dǎo)致系統(tǒng)耗費(fèi)過得的資源。
[0032] 將前述得到的DED數(shù)據(jù)進(jìn)行創(chuàng)建細(xì)節(jié)層次,具體方法為利用Creator軟件中的L0D 設(shè)置功能,在地形窗口的"Set Level of Detail Switch Range"區(qū)域中進(jìn)行。
[0033] 針對(duì)不同的仿真要求,對(duì)地形的重現(xiàn)的要求也不同,其實(shí)質(zhì)是地形轉(zhuǎn)換算法的不 同,在本實(shí)施例中,利用Creator軟件中集成的Polymesh地形轉(zhuǎn)換算法,從而將數(shù)字高程數(shù) 據(jù)轉(zhuǎn)換為地形模型數(shù)據(jù)庫。
[0034] 完成了地形模型的數(shù)據(jù)構(gòu)建,對(duì)于地形表面的處理,為了達(dá)到與實(shí)際場(chǎng)景一致的 效果,采用衛(wèi)星圖片進(jìn)行紋理貼圖。本實(shí)施例中使用Getscreen軟件對(duì)本仿真場(chǎng)景中所在 地域的衛(wèi)星圖片逐一進(jìn)行抓取并拼接,最后即得到相應(yīng)的紋理貼圖。
[0035] 得到了地形模型和紋理圖片后,利用Creator軟件將地形紋理映射至地形模型, 將紋理圖片映射到地形模型上。具體方法為:在Creator軟件中的地形窗口 Texture面 板中直接指定使用當(dāng)前紋理調(diào)板中的地形紋理,使用紋理工具箱中的"GeoPutTexture"工 具將當(dāng)前地形紋理應(yīng)用到跟其具有相同地形坐標(biāo)的地形多邊形上,使用"Terrain/Batch GeoPut"菜單命令將一個(gè)或多個(gè)地形紋理映射到指定的OpenFlight模型文件中。
[0036] 正確完成映射過程的一個(gè)共同前提條件是地形紋理跟地形模型的地形坐標(biāo)應(yīng)該 完全匹配,否則就會(huì)產(chǎn)生錯(cuò)誤的映射結(jié)果。至此,生成了三維地形模型。
[0037] 按照以上步驟生成的三維地形模型,即構(gòu)成了雷達(dá)視景仿真中場(chǎng)景的主要部分, 滿足了雷達(dá)視景中對(duì)大地域地形的仿真要求,同時(shí),采用的細(xì)節(jié)層次技術(shù)很好的解決了雷 達(dá)視景仿真中的實(shí)時(shí)渲染問題。
[0038] 由于該模型的紋理貼圖使用軟件抓取谷歌衛(wèi)星地圖圖片,而Google Earth針對(duì)大 城市、著名風(fēng)景區(qū)、建筑物區(qū)域會(huì)提供分辨率為1米和0. 6米左右的高精度影像,其針對(duì)全 球影像的有效分辨率通常為30米,故模型的紋理和現(xiàn)實(shí)地物地貌一致,從而實(shí)現(xiàn)了逼真的 模型效果。其他建模方法,在紋理處理上通常把對(duì)應(yīng)的遙感圖像、航拍照片經(jīng)過處理后作為 地形紋理,但是通常出現(xiàn)分辨率達(dá)不到要求,圖像數(shù)據(jù)不全以及圖像獲取成本高等問題, 從而在模型的效果上達(dá)不到這種逼真程度。
[0039] 本發(fā)明提供了 Polymesh、Delaunay、Terrain Culture Triangulation (TCT)、和 Continuous Adaptive Terrain (CAT)等四種地形轉(zhuǎn)換算法,其分別在創(chuàng)建地形速度、容錯(cuò) 檢測(cè)、特征數(shù)據(jù)預(yù)映射、支持L0D邊界匹配方面都各有優(yōu)勢(shì),從而對(duì)于不同的地形仿真應(yīng) 用,可以使用不同的轉(zhuǎn)換算法和參數(shù),進(jìn)而得到不同結(jié)構(gòu)和效果的地形模型。相比其他地形 轉(zhuǎn)換方法,本發(fā)明直接利用現(xiàn)有軟件實(shí)現(xiàn)了包含多種算法的地形轉(zhuǎn)換方法,避免了單獨(dú)研 究地形轉(zhuǎn)換算法帶來的繁瑣。
[0040] 在本發(fā)明提供的地形構(gòu)建中,使用了細(xì)節(jié)層次方法,從而可以根據(jù)實(shí)際的需求設(shè) 置相應(yīng)的L0D數(shù)目。即通過降低非重要物體的面數(shù)和細(xì)節(jié)度,從而獲得高效率的渲染運(yùn)算; 通過提高重要物體的面數(shù)和細(xì)節(jié)度,從而提高仿真的精確度。從而實(shí)現(xiàn)了仿真精度和渲染 速度的統(tǒng)一。其他的如3DMAX三維地形的建模,其模型的渲染耗費(fèi)系統(tǒng)資源多,需求的渲染 時(shí)間很長(zhǎng),不能滿足實(shí)時(shí)顯示的要求。
【權(quán)利要求】
1. 一種三維地形建模方法,其特征在于,包括如下步驟: 51、 將原始地形數(shù)據(jù)轉(zhuǎn)換為DED格式的數(shù)據(jù); 52、 對(duì)S1所述DED數(shù)據(jù)創(chuàng)建細(xì)節(jié)層次; 53、 根據(jù)S2所述細(xì)節(jié)層次選擇地形轉(zhuǎn)換算法將S1所述DED數(shù)據(jù)轉(zhuǎn)換為地形模型; 54、 利用衛(wèi)星地圖抓取方法制作地形紋理,將地形紋理映射至地形模型,最終生成三維 地形模型。
2. 根據(jù)權(quán)利要求1所述的一種三維地形建模方法,其特征在于:使用Creator軟件將 原始地形數(shù)據(jù)轉(zhuǎn)換為DED格式的數(shù)據(jù)。
3. 根據(jù)權(quán)利要求1所述的一種三維地形建模方法,其特征在于:S3所述地形轉(zhuǎn)換算法 是creator軟件中提供的Polymesh、Delaunay、TCT、和CAT四種算法。
4. 根據(jù)權(quán)利要求1所述的一種三維地形建模方法,其特征在于:S3所述地形模型為 L0D,所述L0D模型是一種表達(dá)不同精度水平的數(shù)字高程模型,可以根據(jù)不同的任務(wù)要求選 擇不同精度的地形模型。
5. 根據(jù)權(quán)利要求1所述的一種三維地形建模方法,其特征在于:S4所述衛(wèi)星地圖抓取 方法制作地形紋理具體如下: 541、 對(duì)衛(wèi)星地圖按照需求進(jìn)行圖片分塊抓取,記錄每張圖片所代表的地理坐標(biāo)范圍; 542、 將S41所述分塊抓取的圖片進(jìn)行拼接,得到一塊大幅的紋理圖片; 543、 將S42所述紋理圖片利用軟件映射到S3所述地形模型上,生成三維地形模型。
6. 根據(jù)權(quán)利要求5所述的一種三維地形建模方法,其特征在于:所述衛(wèi)星地圖抓取方 法為屏幕硬拷貝法、使用Getscreen軟件抓取。
7. 根據(jù)權(quán)利要求5所述的一種三維地形建模方法,其特征在于:S43所述軟件為 Creator 軟件。
8. 根據(jù)權(quán)利要求7所述的一種三維地形建模方法,其特征在于:利用軟件Creator映 射到S3所述地形模型上,具體方法如下: 生成三維地形模型在Creator軟件中的地形窗口 Texture面板中直接指定使用當(dāng)前紋 理調(diào)板中的地形紋理; 使用紋理工具箱中的"GeoPut Texture"工具將當(dāng)前地形紋理應(yīng)用到跟其具有相同地 形坐標(biāo)的地形多邊形上; 使用"Terrain/Batch GeoPut"菜單命令將一個(gè)或多個(gè)地形紋理映射到指定的 OpenFlight模型文件中。
9. 根據(jù)權(quán)利要求8所述的一種三維地形建模方法,其特征在于:所述映射過程地形紋 理跟地形模型的地形坐標(biāo)完全匹配。
【文檔編號(hào)】G06T17/05GK104157011SQ201410452539
【公開日】2014年11月19日 申請(qǐng)日期:2014年9月5日 優(yōu)先權(quán)日:2014年9月5日
【發(fā)明者】沈曉峰, 邢川, 杜龍飛, 殷文昭, 王軍強(qiáng), 徐敦毅 申請(qǐng)人:電子科技大學(xué)