宋金秀 譚弘武 王 成 張洪雷 楊大兵
(北京煜邦電力技術(shù)股份有限公司,北京100089)
1.1 簡(jiǎn)介。傾斜攝影技術(shù)是國(guó)際遙感與測(cè)繪領(lǐng)域近十幾年發(fā)展起來(lái)的一項(xiàng)高新技術(shù),該技術(shù)通過(guò)從五個(gè)不同視角(一個(gè)垂直、四個(gè)傾斜)同步采集影像,獲取到豐富的建筑物頂面及側(cè)視的高分辨率紋理。它不僅能夠真實(shí)地反映地物情況,高精度地獲取物方紋理信息,還可通過(guò)先進(jìn)的定位、融合、建模等技術(shù),生成真實(shí)的三維模型。該技術(shù)已經(jīng)廣泛應(yīng)用于測(cè)繪、GIS、環(huán)境應(yīng)用、城市和土地管理、災(zāi)害與應(yīng)急、政府和公眾數(shù)據(jù)信息、國(guó)土安全與國(guó)防、旅游、娛樂(lè)、科學(xué)分析、三維地圖服務(wù)和三維導(dǎo)航等行業(yè)[1]。
傾斜攝影系統(tǒng)集成POS空間定位系統(tǒng),輔助空間量測(cè)。傾斜攝影技術(shù)可同步獲取同一地物的東、西、南、北、頂部方向的空間可量測(cè)影像,傾斜攝影快速三維建模數(shù)據(jù)形成多尺度、多類型、多內(nèi)容的三維地理空間數(shù)據(jù),該數(shù)據(jù)不僅擁有準(zhǔn)確地物地理位置坐標(biāo)信息,并且可精細(xì)的表達(dá)地物的細(xì)節(jié)特征,包括突出的外墻和屋頂、建筑物的觀賞性功能,以及地形地貌等精細(xì)特征[2]。
圖1 傾斜攝影影像獲取示意圖
1.2 技術(shù)流程。采用傾斜攝影技術(shù)進(jìn)行三維建模的后處理軟件以法國(guó)ASTRIUM公司的StreetFactory和Acute3D公司的Smart3DCapture軟件為典型代表[2]。利用地物的垂直與傾斜影像以及少量的地面控制點(diǎn),構(gòu)建基于真實(shí)影像紋理的高分辨率真三維模型[3]。
傾斜攝影測(cè)量技術(shù)通常包括影像預(yù)處理、區(qū)域網(wǎng)聯(lián)合平差、多視影像匹配、DSM生成、真正射糾正、三維建模等關(guān)鍵內(nèi)容其基本原理如圖2所示。
圖2 傾斜攝影模型技術(shù)流程
但進(jìn)行影像數(shù)據(jù)采集時(shí),對(duì)桿塔、電力線、絕緣子串等模型部件,所采集到的影像數(shù)據(jù)較少,因此對(duì)此類模型進(jìn)行建模時(shí),并不能保證模型的完整性。為了提高輸電線路通道傾斜攝影三維模型成果展示效果以及后續(xù)與激光點(diǎn)云數(shù)據(jù)、其它三維模型疊加展示效果的提升,利用桿塔坐標(biāo)構(gòu)建出桿塔模型的外包圍盒從而實(shí)現(xiàn)對(duì)不完整桿塔模型的裁剪。
本文對(duì)數(shù)據(jù)進(jìn)行裁剪的類型為3D Tiles格式,是用于流式傳輸大規(guī)模異構(gòu)3D地理空間數(shù)據(jù)集的開(kāi)放規(guī)范。在3D Tiles中,瓦片集是用樹(shù)形空間數(shù)據(jù)結(jié)構(gòu)組織的瓦片集合。每個(gè)瓦片都有一個(gè)包圍體完全包圍它的內(nèi)容。樹(shù)具有空間相干性,子瓦片的內(nèi)容完全包含在父瓦片的包圍體內(nèi)。為了滿足靈活性的需求,樹(shù)可以是任何具有空間相干性的空間數(shù)據(jù)結(jié)構(gòu),包括k-d樹(shù)、四叉樹(shù)、八叉樹(shù)、格網(wǎng)。數(shù)據(jù)組織結(jié)構(gòu)如圖3、4所示。
圖3 3DTiles
圖4 Tileset.json
tileset.json稱為瓦片集數(shù)據(jù),是對(duì)整個(gè)瓦片集的說(shuō)明以及瓦片的空間組織結(jié)構(gòu)的存儲(chǔ),瓦片數(shù)據(jù)負(fù)責(zé)存儲(chǔ)單個(gè)瓦片內(nèi)的所有三維地理信息數(shù)據(jù)。root對(duì)象即這個(gè)數(shù)據(jù)集的根瓦片,每個(gè)3dTiles數(shù)據(jù)集必須有一個(gè)root對(duì)象,root瓦片及其children空間組織結(jié)構(gòu)允許數(shù)據(jù)集使用如下幾種樹(shù)結(jié)構(gòu):四叉樹(shù)、八叉樹(shù)、KD樹(shù)、格網(wǎng)結(jié)構(gòu)。本文所采用的空間數(shù)據(jù)組織結(jié)構(gòu)為八叉樹(shù),如圖5所示。
圖5 八叉樹(shù)組織結(jié)構(gòu)
在對(duì)瓦片進(jìn)行裁剪時(shí),以tileset.json數(shù)據(jù)文件為入口,利用tileset.json文件樹(shù)結(jié)構(gòu)和桿塔包圍盒、瓦片的包圍盒進(jìn)行相交判斷出需要裁剪的瓦片。為了提高空間相交判斷的準(zhǔn)確性,其中桿塔與瓦片的包圍盒均采用OOBB包圍盒。
圖6 瓦片樹(shù)結(jié)構(gòu)
本文設(shè)計(jì)的數(shù)據(jù)結(jié)構(gòu)如下:
表1 相交類型
此結(jié)構(gòu)體主要為了判定OOBB包圍盒空間位置拓?fù)漕愋汀?/p>
表2 OOBB包圍盒
OOBB包圍盒結(jié)構(gòu)體,篩選出需要裁剪的瓦片,數(shù)據(jù)來(lái)源為桿塔包圍盒與瓦片的包圍盒。
表3 Pla n平面
平面結(jié)構(gòu)體,以平面為單位對(duì)模型數(shù)據(jù)進(jìn)行裁剪,數(shù)據(jù)來(lái)源為桿塔包圍盒的6個(gè)面。
算法流程圖如下:
圖7 算法流程圖
首先利用tileset.json和需要裁剪的桿塔坐標(biāo),構(gòu)建出瓦片和桿塔的OOBB包圍盒,相交判斷由瓦片的6個(gè)面依次與桿塔有向包圍盒進(jìn)行相交判斷,如果6個(gè)面都與OOBB相離則為相離,6個(gè)面都與OOBB是包含關(guān)系則為包含,否則為相交。進(jìn)行相交判斷時(shí),利用tileset.json組織的樹(shù)結(jié)構(gòu),如果父節(jié)點(diǎn)與桿塔的包圍盒相交,則遍歷子節(jié)點(diǎn),否則終止遍歷,此過(guò)程為迭代過(guò)程。
相交判斷過(guò)程完畢后,利用桿塔包圍盒的最大、最小點(diǎn)構(gòu)建出包圍盒的6個(gè)面,依次對(duì)需要裁剪的瓦片進(jìn)行裁剪,保留面外部的瓦片數(shù)據(jù),遍歷完需要修改的瓦片集合后,瓦片裁剪過(guò)程完畢。