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

?

基于CityEngine的2.5維地圖生成方法與應(yīng)用

2015-07-04 10:40李鋒重慶市勘測院重慶400020
城市勘測 2015年4期
關(guān)鍵詞:相片建筑物像素

李鋒(重慶市勘測院,重慶 400020)

Li Feng(Chongqing Survey Institute,Chongqing 400020,China)

基于CityEngine的2.5維地圖生成方法與應(yīng)用

李鋒?
(重慶市勘測院,重慶 400020)

摘 要:針對2.5維城市地圖需求,本文設(shè)計并實現(xiàn)了基于CityEngine的三維體塊模型和精細(xì)模型生成及平行投影自動出圖方法,主要特點是支持矢量數(shù)據(jù)基于規(guī)則的建模以及坐標(biāo)自動配準(zhǔn)。與基于GIS軟件生成投影面實現(xiàn)2.5維效果相比,本方法實現(xiàn)了真實三維體塊模型和精細(xì)模型以及真實光照效果,通過規(guī)則將二維GIS數(shù)據(jù)和三維GIS模型進行掛接,有利于GIS數(shù)據(jù)可視化的廣泛應(yīng)用。

關(guān)鍵詞:CityEngine;2.5維地圖;基于規(guī)則的建模

1 引 言

隨著三維數(shù)字城市的不斷發(fā)展,三維GIS和Web-GIS成為主要發(fā)展方向之一。由于成本、技術(shù)、終端等因素限制,2.5維地圖仍然具有一定優(yōu)勢。以“E都市”、“都市圈”等地圖網(wǎng)站為代表,2.5維地圖解決了網(wǎng)絡(luò)發(fā)布和效率的問題,也提供了三維仿真的真實感。同時,2.5維地圖可以作為柵格底圖,可以疊加道路、管線等矢量圖層,提供直觀的地圖效果。

2.5維地圖研究方面,2010年,宋珉等研究了2.5維地圖的在制作算法[1],主要思路是基于GIS軟件生成投影面,并處理遮擋關(guān)系和明暗度,實現(xiàn)2.5維效果以及瓦片發(fā)布;2012年.阮明等提出了2.5維地圖的坐標(biāo)轉(zhuǎn)換算法[2],并以南寧市2.5維地圖進行了驗證;2013 年,李鋒等提出了移動終端的離線電子地圖框架[3],支持2.5維地圖的瓦片生成、加密打包、移動終端應(yīng)用等; CityEngine平臺研究方面,2013年,呂永來等研究了基于CityEngine的高速鐵路建模方法[4];2014年,張暉等探索了基于CityEngine的建筑物CGA規(guī)則建模方法[5]。

針對城市2.5維地圖需求,結(jié)合CityEngine建模平臺支持二維GIS數(shù)據(jù)基于規(guī)則快速構(gòu)建三維場景的優(yōu)勢,本文設(shè)計并實現(xiàn)了三維體塊模型和精細(xì)模型生成及平行投影2.5維地圖自動生成方法,實現(xiàn)了真實三維體塊模型和精細(xì)模型以及真實光照效果,通過規(guī)則將二維GIS數(shù)據(jù)和三維GIS模型進行掛接,有利于GIS數(shù)據(jù)可視化的廣泛應(yīng)用。

2 技術(shù)路線

本文采用的技術(shù)路線包括4個步驟:建筑體塊模型生成、建筑精細(xì)模型生成、平行投影自動配準(zhǔn)出圖、圖片緩存生成及發(fā)布。

2.1建筑體塊模型生成

根據(jù)建筑物帶屬性的shp文件,按照一定的規(guī)則,自動生成建筑體塊模型。規(guī)則應(yīng)用到的建筑物shp文件的相關(guān)屬性如表1所示:

建筑體塊屬性 表1

建筑體塊模型生成的規(guī)則如表2所示:

建筑體塊生成規(guī)則 表2

在CityEngine中導(dǎo)入建筑物shp文件,選中所有面對象,應(yīng)用建筑物體塊模型生成的CGA規(guī)則文件,即可完成體塊建模。之后對體塊模型設(shè)置半透明材質(zhì)(透明度為50%),設(shè)置場景光源為地圖左上角(315°),光源高度角為42°,即可完成建筑物體塊模型場景生成。

2.2建筑精細(xì)模型生成

體塊模型對應(yīng)于普查結(jié)果和普通建筑,對于具有標(biāo)志意義的建筑,需要在體塊模型基礎(chǔ)上進一步生成精細(xì)模型。CityEngine支持基于建筑規(guī)則語義的初步形態(tài)、風(fēng)格設(shè)計,完成建筑物外立面整體效果,實現(xiàn)建筑在三維地理環(huán)境中的形態(tài)表達(dá)。通過從建筑物構(gòu)造領(lǐng)域知識抽取規(guī)則語義實現(xiàn)建筑形式化描述,主要流程包括3個階段:體塊建模、主體建模、表面紋理貼圖。如表3所示:

建筑精細(xì)建模階段 表3

通過建立不同風(fēng)格的建筑物規(guī)則,基于“逐步迭代”的體型和紋理構(gòu)建方式,針對不同風(fēng)格建筑物的特點,制訂不同的城市建筑物規(guī)則。發(fā)揮規(guī)則的復(fù)用性和移植性的優(yōu)勢,這些城市建筑物規(guī)則建立好后,可以形成規(guī)則庫,實現(xiàn)重復(fù)利用。

2.3平行投影自動配準(zhǔn)出圖

三維透視投影會由于同一個視點而產(chǎn)生視錐體透視效果,生成的圖片處處分辨率不同,不適合大比例尺快速拼接和發(fā)布展示,平行投影,即正交投影,由于每個像元對應(yīng)一個視點,生成的圖片每個像元的分辨率相同,適合快速無糾正拼接。

本文基于CityEngine實現(xiàn)了平行投影自動配準(zhǔn)出圖算法,主要特點是根據(jù)不同的鏡頭姿態(tài)、出圖相片尺寸、和成圖比例尺作為已知參數(shù),計算鏡頭參數(shù),并進一步計算各個相片的鏡頭位置、相片tfw坐標(biāo)信息,具有參數(shù)可調(diào)節(jié)、支持多比例尺、支持坐標(biāo)信息文件自動配準(zhǔn)等優(yōu)勢,生成的tif和tfw文件可以直接作為柵格圖層導(dǎo)入到GIS軟件中。

2.4圖片緩存生成及發(fā)布

在2.5維地圖生成以后,為了便于地圖發(fā)布和不同分辨率的地圖快速調(diào)用,需要生成不同比例尺的地圖瓦片緩存。地圖瓦片緩存包含了不同等級集合的緩存地圖圖片以及描述其Cache的配置文件(Conf.xml)。瓦片按比例尺、行、列三級存放,可以使用Arc-GIS Server的地圖緩存功能構(gòu)建。主要步驟有:①使用ArcMap編輯地圖文檔;②使用ArcGIS Server發(fā)布地圖服務(wù);③使用ArcCatalog訪問地圖服務(wù)并生成瓦片緩存。瓦片緩存生成后,便可發(fā)布地圖服務(wù),加速客戶端和移動端的地圖訪問效率。

3 多比例尺平行投影地圖生成算法

該算法主要步驟有:①計算相機參數(shù)fov、投影距離d;②計算各張圖片的相機位置及對應(yīng)的tfw影像坐標(biāo)信息文件;③基于CityEngine實現(xiàn)Python腳本自動出圖;④變換參數(shù),實現(xiàn)多種比例尺和不同角度θ下的批量出圖。具體描述如下:

已知計算參數(shù):

相機高度camera_h = 2000,方向正北,向下45°俯視,θ=45°;

形成圖片大小為512像素×512像素,即視圖窗口大小;

形成圖片比例尺為scale=1000(即1∶1 000比例尺,可調(diào)節(jié))。

(1)計算相機參數(shù)fov、相機到投影中心的距離d。

按135相機,36 mm×24 mm底片,50 mm標(biāo)準(zhǔn)鏡頭,計算相機視野角度fov為:

按視圖窗口512像素×512像素,形成圖片分辨率為72 dpi,代表實際坐標(biāo)從第一列像素中心到最后一列像素中心,相當(dāng)于511個像素寬,并根據(jù)投影關(guān)系,計算511個像素寬的相片對應(yīng)的實際寬度width_pic、地面實際寬度width和相機到投影中心的距離d:

(2)計算各張圖片的相機位置及對應(yīng)的tfw影像坐標(biāo)信息文件。

①根據(jù)投影關(guān)系,計算511個像素高的相片對應(yīng)的實際高度height_pic、地面實際高度height:

②計算θ傾斜角下,相機位置到相片中心的偏移offset_x,offset_y:

offset_x=0

③計算(minx,miny)-(maxx,maxy)場景范圍內(nèi)第(i,j)張相片對應(yīng)的相機位置:

camera_x=minx+(i+0.5)×width(m)

camera_y=miny+(j+0.5)×height-offset_y(m)

④計算(minx,miny)-(maxx,maxy)場景范圍內(nèi)第(i,j)張相片對應(yīng)的tfw參數(shù):

X方向上的像素分辨率:resolution_x = 0. 0254?scale/72

X方向的旋轉(zhuǎn)系數(shù):0. 00

Y方向的旋轉(zhuǎn)系數(shù):0. 00

Y方向上的像素分辨率:

resolution_y=-0. 0254?scale/ (72?sinθ)

柵格地圖左上角像素中心X坐標(biāo):

leftupper_x=minx+i?width

柵格地圖左上角像素中心Y坐標(biāo):

leftupper_y=miny+(j+1)?height

(3)基于CityEngine實現(xiàn)Python腳本自動出圖。

基于以上計算結(jié)果,通過Python腳本編程,實現(xiàn)平行投影相機設(shè)置、對每幅相片進行鏡頭姿態(tài)調(diào)整、圖片生成、計算相片坐標(biāo)信息文件,從而實現(xiàn)批量自動出圖,Python腳本代碼如下:得,

ce=CE() #獲取CityEngine環(huán)境

views=ce.getObjectsFrom(ce.get3DViews(),ce.isViewport) views[0].setCameraPerspective(False)#設(shè)置為平行投影

views[0].setCameraAngleOfView(fov)

views[0].setCameraRotation(-θ,0,0)

views[0].setPoIDistance(d)

foreach(i,j)image in scene(minx,miny)-(maxx,maxy)

views[0].setCameraPosition(camera_x,camera_h,-camera_ y) #設(shè)置相機位置views[0].snapshot(ce.toFSPath('images') +" / "+str(i)+"_"+str(i)+".tif") #抓圖

tfwPath=ce.toFSPath('images') +" / " +str(i) +" _" +str(j) +".tfw"

tfwOutput=open(tfwPath," w") #自動輸出對應(yīng)的tfw坐標(biāo)信息文件

tfwOutput.write(str(resolution_x)+" ") tfwOutput.write("0.00 ") tfwOutput.write("0.00 ") tfwOutput.write(str(resolution_y)+" ") tfwOutput.write(str(leftupper_x)+" ") tfwOutput.write(str(leftupper_y)+" ")

tfwOutput.close()

(4)變換參數(shù),實現(xiàn)多種比例尺和不同角度θ下的批量出圖。

如果是非正北方向出圖,可以計算旋轉(zhuǎn)后的場景范圍,然后重復(fù)步驟(2)~(3)獲得相應(yīng)的圖片序列。對于其他參數(shù),通過變換scale和不同傾斜角度θ,然后重復(fù)步驟(1)~(3),獲得相應(yīng)的圖片序列。

4 地圖應(yīng)用實例

以重慶市某區(qū)域建筑物GIS數(shù)據(jù)為例,數(shù)據(jù)集共包含37 879個建筑物底面要素,如圖1所示,經(jīng)過本算法生成2.5維地圖如圖2所示。生成的2.5維地圖能夠和GIS面要素精確套合,如圖3所示。生成的2.5維地圖可以進一步疊加道路、管線等矢量數(shù)據(jù),能夠更直觀展示相對位置關(guān)系,如圖4所示。

圖1 GIS房屋底面數(shù)據(jù)

圖2 2.5維體塊模型數(shù)據(jù)

圖3 2.5維地圖和GIS面套合結(jié)果(帶陰影)

圖4 2.5維地圖疊加管線矢量

5 結(jié) 語

結(jié)合CityEngine建模平臺支持二維GIS數(shù)據(jù)基于規(guī)則快速構(gòu)建三維場景的優(yōu)勢以及平行投影無縫拼接的特點,本文設(shè)計并實現(xiàn)了三維體塊模型和精細(xì)模型生成及平行投影2.5維地圖自動生成方法。該方法實現(xiàn)了真實三維體塊模型和精細(xì)模型以及真實光照效果,通過規(guī)則將二維GIS數(shù)據(jù)和三維GIS模型進行掛接,有利于GIS數(shù)據(jù)可視化的廣泛應(yīng)用。進一步的研究工作是基于CityEngine,支持地質(zhì)、建筑、地面、道路、植物、附屬設(shè)施等城市三維模型的規(guī)則化建模和分析,構(gòu)建豐富的建模規(guī)則庫,實現(xiàn)豐富地圖應(yīng)用。

參考文獻

[1] 宋珉,劉鵬超,趙維等.2.5維地圖制作算法研究與實現(xiàn)[J].城市勘測,2010(5):104~106.

[2] 阮明,譚慶濤,王文瑞.2.5維地圖坐標(biāo)轉(zhuǎn)換的算法及實現(xiàn)[J].城市勘測,2012(2):78~80.

[3] 李鋒,明鏡,王昌翰.移動終端離線電子地圖應(yīng)用框架研究[J].測繪科學(xué),2013,38(6):129~130.

[4] 呂永來,李曉莉.基于CityEngine平臺的高速鐵路建模方法的研究與實現(xiàn)[J].測繪,2013,36(1):19~22.

[5] 張暉,劉超,李妍等.基于CityEngine的建筑物三維建模技術(shù)研究[J].測繪通報,2014(11):108~112.

Li Feng
(Chongqing Survey Institute,Chongqing 400020,China)

Generataion Method and Application of 2.5-Dimensional Map Based on CityEngine

Abstract:Aiming at the requirements of the 2.5-dimensional city map,this paper designes and implements a generation method of 2.5-dimensional map based on CityEngine,with 3d block models and fine models generation and automatic map producing using parallel projection.The main features of the method are rule-based modeling of vector data and coordinate automatic registration.Compared with the method of 2.5-dimensional projection surface generation using GIS software,the method supports real 3d block models and fine models and real light effects and will help to GIS data visualization applications by rule-based connecting 2d-GIS data and 3d-GIS models.

Key words:CityEngine;2.5-dimensional;rule based modeling

文章編號:1672-8262(2015)04-20-04中圖分類號:P208.2

文獻標(biāo)識碼:A

收稿日期:?2015—04—22

作者簡介:李鋒(1983—),男,工程師,主要研究方向為GIS應(yīng)用和城市三維GIS。

基金項目:國家測繪地理信息局青年學(xué)術(shù)和技術(shù)帶頭人科研計劃項目(201405);重慶市應(yīng)用開發(fā)計劃項目(cstc2014yykfB40004)。

猜你喜歡
相片建筑物像素
像素前線之“幻影”2000
鄰近既有建筑物全套管回轉(zhuǎn)鉆機拔樁技術(shù)
現(xiàn)代中小河流常用有壩壅水建筑物型式探討
我沒有爸爸了
描寫建筑物的詞語
“像素”仙人掌
éVOLUTIONDIGAE Style de vie tactile
黑白相片
高像素不是全部
火柴游戲