傾斜攝影單體化如何實現(xiàn)?
單體化問題的由來
我們先來說說什么是“單體化”?!皢误w化”其實指的就是每一個我們想要單獨管理的對象,是一個個單獨的、可以被選中的實體(Entity);即用鼠標(biāo)點擊時可以顯示為不同顏色(稱為“高亮”)顯示,可以附加屬性,可以被查詢統(tǒng)計等等。只有具備了“單體化”的能力,數(shù)據(jù)才可以被管理,而不僅僅是被用來查看。
對于人工建模而言,單體化是一個不言而喻的事情。即在人工建模的過程中,自然會把需要單獨管理的對象(如建筑、路燈、樹木等)制作為單獨的模型,也是和其它對象分離開的。(當(dāng)然也有一些時候為了其它方面的一些考慮,人工建模時故意把幾棟樓作為一個對象來制作)

傾斜攝影自動化建模過程和機(jī)制對于傾斜攝影自動化建模而言,其建模機(jī)制的原因可簡單歸納為如上圖所示。即在空三之后,首先對所拍攝的影像像對生成稠密的點云,然后對點云進(jìn)行抽稀,再構(gòu)建三角網(wǎng),最后貼上貼圖。
在這個過程中,是沒有人工干預(yù)的。當(dāng)前的建模算法并不會把建筑、地面、樹木等地物區(qū)分出來,因此構(gòu)建出來的是一個連續(xù)的Tin網(wǎng)。對于這樣的數(shù)據(jù),本身是無法選中單個建筑的,需要進(jìn)行一定的處理才能實現(xiàn)“單體化”。
而對于大多數(shù)應(yīng)用(除了僅僅用來看效果或進(jìn)行量算)而言,是需要能對建筑等地物進(jìn)行單獨的選中、賦予屬性、查詢屬性能最基本的GIS的能力。因此,單體化成為傾斜攝影模型在GIS中應(yīng)用所繞不過的一個坎,是必須要解決的問題。

單體化的三種解決思路
那么,傾斜攝影模型實現(xiàn)單體化的技術(shù)思路,總結(jié)出來有三種,具體包括:
1) ?最直觀的思路,就是用建筑物、道路、樹木等對應(yīng)的矢量面,對傾斜攝影模型進(jìn)行切割,即把連續(xù)的三角面片網(wǎng)從物理上分割開,從而實現(xiàn)單體化。我們可以稱之為“切割單體化”。效果可如下圖所示

2) ?利用三角面片中每個頂點額外的存儲空間,把對應(yīng)的矢量面的ID值存儲起來;即一個建筑所對應(yīng)的三角面片的所有頂點,都存儲了同一個ID值,從而實現(xiàn)在鼠標(biāo)選中這個建筑時,該建筑可以呈現(xiàn)出高亮的效果。這個可以稱之為“ID單體化”,如下圖所示。
ID單體化理解起來相對要難一點,最好能懂一點三維開發(fā)的知識。其實就是讓同一個建筑模型上,都存儲上同一個id值。從而在三維gis中呈現(xiàn)出鼠標(biāo)點擊后,能高亮顯示這個建筑物

3) ?在三維渲染的時候,動態(tài)的把對應(yīng)的矢量面疊加到傾斜攝影模型上,類似于一個保鮮膜從上到下完整的把對應(yīng)建筑等物體的模型包裹起來,從而實現(xiàn)可被單獨選中的效果。這種由于是渲染時動態(tài)呈現(xiàn)的,可以稱之為“動態(tài)單體化”。如下圖所示

動態(tài)單體化效果圖動態(tài)單體化咋一看和ID單體化效果非常像,但它們實現(xiàn)的技術(shù)原理是有很大區(qū)別的。ID單體化是需要預(yù)先處理數(shù)據(jù),把建筑物所對應(yīng)的模型上存儲同一個ID值,而動態(tài)單體化則是在渲染時動態(tài)繪制出來的。
Wish3D·Earth實景三維模型展示發(fā)布平臺 www.tuxingis.com
Wish3D·Earth是一款三維場景在線展示發(fā)布平臺,滿足實景三維模型和人工模型發(fā)布、管理、應(yīng)用的需求,可添加各類二三維數(shù)據(jù)。隨時隨地,無人機(jī)成果輕松共享。
同時能夠支持傾斜攝影自動化建模成果的單體化,使用的就是動態(tài)單體化。采用矢量化的方式,通過疊加的矢量底面,在渲染層面實現(xiàn)建筑物、道路等地物單體化。

動態(tài)單體化的另外一個誤解是:是不是就在用一個半透明的方盒子在傾斜攝影模型外面。其實不是這樣,動態(tài)單體化類似于半透明的皮膚衣,是從上到下貼合模型表面,并把模型完整全部套合在內(nèi)的效果??扇缦聢D所示:

動態(tài)單體化中矢量面與模型的套合效果在軟件操作中,動態(tài)單體化需要把矢量面作為一個圖層添加到三維場景中,然后軟件中的一個開關(guān)設(shè)置為“貼對象”,效果就出來了。
內(nèi)部實現(xiàn)中,可以簡單理解為:矢量面會判斷tin網(wǎng)的哪些部分是在它的范圍內(nèi)的,包括空中漂浮的模型,然后把半透明的顏色覆蓋上去。
還有一類是以天際航的DP-Modeler為代表,在傾斜攝影模型的基礎(chǔ)上,進(jìn)行人工干預(yù),重新構(gòu)建單個的三維模型;這個其實有點類似于人工建模的味道,結(jié)果自然就是單體化的(同時還起到修飾模型效果的作用)。就不在我們后續(xù)討論之列了。
單體化目的回顧及其優(yōu)缺點分析
咋一看,第一種思路即“切割單體化”在單體化的道路上最為徹底,畢竟只有這樣,才是真正把連片的模型單獨切割出來了,之后的選中高亮、賦予屬性等也就都是順理成章的事情了。因此,也有人說:只有“切割單體化”才是真正的單體化,其他都是假的單體化。
但我們繼續(xù)深入研究,就會發(fā)現(xiàn)后面兩種單體化在代價更小的情況下,也能實現(xiàn)對應(yīng)的要求,切效果更佳。也就是說我們需要再審視目的,再綜合利弊來考慮和選擇途徑和方法。 那么,我們再來回顧一下單體化的目的到底是什么。
單體化本質(zhì)上是為了解決傾斜攝影自動化建模軟件輸出的三維模型是連片的、無法單獨選中要管理的地物;為了能進(jìn)行查詢和管理,我們需要能單獨選中某個地物,能查詢它對應(yīng)的業(yè)務(wù)屬性;但并不“必然”要求把這個地物從物理上把它和周邊的模型分離開。
當(dāng)然,“單體化”這個名詞容易給人造成一種誤解,似乎必須物理切割了,才是真正的單體化;要是換做“對象化”或“可管理”等名詞,理解起來就順暢多了。

單體化思維的轉(zhuǎn)變打破了這個心理障礙,那我們就繼續(xù)來分析這三種單體化方法各自存在的優(yōu)缺點。首先我們來看,上述三種單體化的方式,其實都能達(dá)成最基本的目標(biāo),就是能選中該地物,能賦予屬性并進(jìn)行查詢。
我們再看數(shù)據(jù)制作過程,“切割單體化”必須先進(jìn)行模型物理上的切割,由于傾斜攝影數(shù)據(jù)量一般都比較大,因此切割是一件費時費力的事情,再有就是切割后模型的底邊,會帶有非常明顯的鋸齒(三角面片的邊界)。
另外由于三維GIS對模型的空間查詢和分析計算能力遠(yuǎn)沒有二維GIS對面的能力完善,因此所能進(jìn)行的下一步分析計算的能力是非常有限的。而“動態(tài)單體化”則是在三維渲染過程中,動態(tài)的把對應(yīng)矢量底面套合在模型表面之上,因此就無需提前的預(yù)處理,只需要三維GIS軟件和所運行的設(shè)備上支持該渲染能力即可;套合后的模型底邊的平滑度是和顯示器屏幕的分辨率一致的,效果會好的太多。
另外動態(tài)單體化由于是把二維矢量面和三維傾斜攝影模型結(jié)合起來了,因此可以充分利用二維GIS平臺對面數(shù)據(jù)的查詢計算分析等能力,各類GIS能力都能充分發(fā)揮出來,如查詢周邊地物,制作專題圖等等。如下圖所示。

動態(tài)單體化支持豐富的GIS功能“ID單體化”則是介于兩者之間,可以理解為在還不支持“動態(tài)單體化”所需要的三維渲染能力時,一種折中的處理方法。對于以上分析,我們可以歸納總結(jié)為下表:

“切割單體化”還有一個非常致命的問題在于:傾斜攝影模型本身是帶有多層LOD的,切割針對最精細(xì)層進(jìn)行,破壞了數(shù)據(jù)原生的LOD,也就無法直接加載模型,而只能采用導(dǎo)入的方式。再就是切割一般只是把Tin網(wǎng)分來了,而整塊模型所對應(yīng)的紋理并不會切割開,因此會出現(xiàn)多份紋理,而重復(fù)大量的紋理是最耽誤三維渲染性能的。這一切,都會導(dǎo)致數(shù)據(jù)量較大時三維瀏覽的性能急劇下降。這一點,還可以參考對傾斜攝影數(shù)據(jù)加載和性能方面的問題,會有更詳細(xì)的闡述。
分層單體化的實現(xiàn)思路
動態(tài)單體化的一個高級應(yīng)用,就是對不同樓層進(jìn)行單體化,也就是能選中高亮一個建筑的每一層、乃至每一戶,并查詢對應(yīng)的屬性。這么做的目的是為了實現(xiàn)基于傾斜攝影模型的精細(xì)化管理,在公安的“三實”、不動產(chǎn)登記等諸多領(lǐng)域中都具備應(yīng)用價值。實現(xiàn)分層單體化的提前是需要知道每一層樓層高度信息的矢量面數(shù)據(jù)。數(shù)據(jù)準(zhǔn)備過程如下圖所示。一般這類數(shù)據(jù)在房產(chǎn)主管部門會有,自己也能根據(jù)傾斜攝影模型采集制作。

分層單體化所需要的數(shù)據(jù)基礎(chǔ)對于切割單體化而言,是把模型中的每一層樓都單獨切割開,想想運算效率和每一層的鋸齒都是比較恐怖的事情。對于動態(tài)單體化而言,在數(shù)據(jù)準(zhǔn)備妥當(dāng)?shù)那闆r下,也是軟件中的一個開關(guān)打開,即可實現(xiàn)單獨每層每戶的選中和查詢。效果如下圖所示。

從數(shù)據(jù)本質(zhì)角度出發(fā)的再思考其實,我們從科學(xué)原理上分析,傾斜攝影自動建模的結(jié)果,本質(zhì)上就是帶有建筑樹木等一切地物的地形加影像數(shù)據(jù),只不過地形是用三角網(wǎng)來表達(dá)的。
對于這種數(shù)據(jù),我們更多可以參考和借鑒對影像的處理方式。即沒有人會把影像按照一個個建筑來進(jìn)行切割為多個小的影像塊,而是通過疊加一層矢量化的面來實現(xiàn)對建筑的選中和管理。

圖11 單體化方式的再思考

當(dāng)然,“切割單體化”也并非一無是處。曾經(jīng)遇到個別應(yīng)用中,用戶就是想存儲和拷貝其所擁有的建筑模型,而并不關(guān)心周邊的環(huán)境。對于這種情況,竊以為采用模型修補(bǔ)軟件進(jìn)行進(jìn)一步加工處理,除了滿足單獨建筑模型的需要,還能同時修補(bǔ)模型的效果。
配套矢量底面的獲取方法
需要說明的是:由于三種單體化都事先需要準(zhǔn)備好地物所對應(yīng)的矢量底面,因此在數(shù)據(jù)的準(zhǔn)備工作上并沒有差別。不同的是:切割單體化是用完矢量面之后就可以扔了;ID單體化需要留著矢量面做屬性查詢;而動態(tài)單體化得把矢量面帶著走、隨時用。那么,獲取配套的矢量底面就是一個非常重要的工作。方法有三:
1) ?已有DLG數(shù)據(jù)進(jìn)行配準(zhǔn)。這個是最省事的,不過需要有數(shù)據(jù)基礎(chǔ);注意投影的一致性
2) ?用自動化建模軟件輸出正射影像,然后半自動的勾畫矢量面,這個需要投入一定的人工時間。也有不少國內(nèi)公司,直接基于傾斜攝影來進(jìn)行矢量化制圖,據(jù)說效率也非常高。
3) ?自動化的提?。贿@種方式代表著未來的方向,業(yè)界有不同公司正在探索之中,雖然方法各有差別,但總體前景非常看好例如中科遙感(天津)基于模型數(shù)據(jù)直接進(jìn)行提取,但運算性能和效果還需要進(jìn)一步提升。北京超圖則先把傾斜攝影模型轉(zhuǎn)換為Grid格式的地形,然后提取等高線,根據(jù)等高線的特征進(jìn)行分析提取。
具體過程和提取后效果如下圖所示。最后的效果只能說是勉強(qiáng)可用,要是做太精確的計算肯定是達(dá)不到要求的;不過用來做管理,能選中能查詢還是OK的。考慮到不同地區(qū)數(shù)據(jù)特征不同,尚未提供一鍵式功能;但上述功能在桌面中都能進(jìn)行操作(無需編程)

根據(jù)等高線分析來提取矢量面的操作步驟

根據(jù)等高線分析方法提取矢量面之后的效果最值得期待的是街景工廠、ContextCapture(Smart3D)等自動化建模軟件也在研制自動化提取方法。大致思路是通過中間輸出的點云數(shù)據(jù),按照一定規(guī)則進(jìn)行篩選、簡化轉(zhuǎn)化為DLG。這個技術(shù)完成后,對于傾斜攝影的單體化,以及后續(xù)應(yīng)用,都是一個大大的福音。
文章轉(zhuǎn)自于網(wǎng)絡(luò)
版權(quán)歸原作者所有,僅供學(xué)習(xí)參考如有侵權(quán)請聯(lián)系刪除