傾斜單體化模型技術實現

1 概述

爲了改進傾斜攝影模型數據在實際GIS場景應用中諸多的缺點,一個非常熱門的優化方向就是單體化。所謂單體化,是指讓傾斜攝影數據像矢量數據那樣,具備要素特徵,進而可以關聯屬性,進行空間查詢和空間分析。換句話說,我們需要給傾斜攝影數據增加一些語義,能夠正確區分建築物、道路、綠地、水系以及城市部件等地物要素,進而很好的關聯業務,產生實際的應用價值。

2 詳論

以筆者的見識來看,傾斜單體化模型的實現可以有以下四種方式:

2.1 切割單體化

既然傾斜攝影模型數據上的地物要素構建的有好有差,那麼我們可以將比較好的地物要素從傾斜攝影模型上裁剪下來,比如建築物。通過建築物矢量幫助我們進行空間計算,將建築物矢量範圍內的連續的三角面從傾斜攝影模型上截取出來,從而實現單體化。其實反過來想,傾斜攝影數據上很多內容都可以通過地形+影像的方式替換的,而像道路、綠地、水系這些地物要素也是依據地形的,城市部件這些要素傾斜攝影往往又無能爲力。可能真正有價值進行單體化的可能也就是建築物、大型地標或者大型基礎設施了。但說實話,這也算是不錯的技術方案了,至少我們不用看到很多建模錯誤的區域,搭配其他三維模型數據,也能構建出比較出色的三維可視化場景。

2.2 矢量單體化

如果不想通過矢量進行真實的物理切割,那麼也可以考慮通過三維圖形技術來實現單體化。其原理是在進行三維渲染時,將矢量面的幾何數據傳遞到GPU中,判斷每個頂點是否在其範圍內。如果在範圍內,就高亮該區域顯示的顏色;或者,使用類似陰影體(Shadow Volume,三維圖形中一種常見的生成陰影的算法)的技術,來使矢量的單體化區域高亮。在另一方面,由於矢量本身是具有屬性數據的,這個屬性數據也可以作爲這個單體化區域的屬性數據。

矢量單體化可以有另外一種類似的較爲簡單的實現方案:可以繪製包裹住單體化區域的透明帶顏色的幾何體。平時該幾何體隱藏,在選中時就進行顯示。當然,這個幾何體也是基於矢量生成的。這種方案比較適合比較規整的建築物三維物體對象。

不過,無論是哪種實現方案,都離不開與矢量數據的聚合。這種單體化方式實際上是將二維矢量面和三維傾斜攝影模型結合起來了,因此可以充分利用傳統二維GIS矢量數據的查詢、計算與分析等能力,從而實現了與GIS場景業務的關聯。而且這種方案主要是採用了計算機圖形技術的實現,在保證了實時性和效率的前提下實現難度也不是很高,因此也算是一種不錯的解決方案。

2.3 ID單體化

所謂ID單體化,是指給傾斜攝影模型的每個想要單體化的區域的連續網格賦予一個特定的ID,這樣在選中的時候我們獲取到這個ID並對其高亮顯示。具體來說,這需要在數據層面和渲染層面的配合。在數據層面,我們需要知道模型上單體化區域的頂點,並對其增加一個自定義的ID屬性。這樣在進入三維渲染時,通過幀緩存技術我們可以在渲染畫面之外額外再渲染一幀ID紋理圖。拾取選中實質上就是採樣這個ID紋理圖的值,並將頂點ID是這個值的頂點顏色高亮顯示。

在筆者看來,這個單體化方案比較複雜,需要同時從數據和渲染上兩個維度進行改進才能完全實現。但是這個方案對性能影響最小,不用再聚合一個二維矢量數據,是一個完全從三維角度出發提出的解決方案。實際上,Cesium和Cesium開發的3DTiles格式就完全實現了這種思路,在這個數據格式中,每個瓦片數據都定義了一個名爲BATCHID的頂點屬性,並將其關聯上一個屬性表BatchTable。

另外,這種單體化方案用在傾斜攝影數據上最大的缺點就是需要進行預處理,而且處理難度還不低。事實上,這個預處理過程往往就是採用矢量單體化的原理來實現,既然如此還不如直接使用矢量單體化的方案。不過,ID單體化的原理可以用在其他類型的三維模型,因爲很多三維模型是按照一個物體要素爲單位來建立的,它們是天然的單體化模型。

2.4 模型重建單體化

這種單體化的思路是,既然傾斜攝影重建的模型有各種各樣的缺點,那麼幹脆就加入人工干預,重新構建單體化三維模型。不過這種人工干預並不是像在3D Max那種三維建模軟件那樣,根據人工建模師自己的判斷進行建模,而是基於數字攝影測量的雙像立體測圖的原理,在立體模型中採集單體化的三維模型。雙像立體測圖是傳統航空攝影測量生產4D產品的重要階段,可用於採集DLG和DEM。現在有了傾斜攝影測量方法,使得從立體上採集地物要素成爲了可能。

我們應該知道,傾斜攝影模型是使用三維重建技術進行自動化構建的,所以總是會顯得很平滑,對銳利或者突變區域的表現度不夠,或者建模錯誤。使用立體測圖採集單體化的好處是其操作是人工進行的,可以採集出橫平豎直的三維模型,尤其是對於建築物來說。這對於可視化的效果是非常大的提升。另外,由於這個採集的過程是人工操作的,因此天然就將地物要素單體化出來,不僅僅是建築物,一些比較複雜的基礎設施(例如高架、橋樑),或者城市部件(例如路燈、指示牌)等都可以進行採集,這無疑大大擴展了傾斜攝影的技術在GIS場景中應用。

當然,這個單體化方案也是有缺點的。最大的缺點就是專業性太強,即使我們使用專業的軟件普通人也不一定能操作好,還需要專業的採集人員來進行作業。在國內,武漢天際航信息科技股份有限公司的精細化單體建模以及模型修飾軟件DP-Modeler是業內應用比較廣泛的傾斜攝影模型數據編輯軟件,可以支持在單體化並編輯出地表特定要素的三維模型。

3 總結

上述幾種傾斜攝影模型單體化的方案各有優缺點,並沒有最優解,最好是根據實際的需求採用適合的方案。這幾種方案對比如下表所示:

單體化方法 技術思路 預處理過程 模型效果
切割單體化 三維模型物理切割 思路簡單 配合其他三維模型使用
矢量單體化 聚合矢量數據+圖形渲染技術 無需處理 與傾斜模型一致
ID單體化 將ID作爲頂點屬性數據渲染 過程繁瑣 與傾斜模型一致
模型重建單體化 航測立體採集模型 專業性強 配合其他三維模型使用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章