王廣楠 劉健辰 張子浩
(山東科技大學 測繪與空間信息學院 山東 青島 266590)
近些年來全國各地掀起開發房地產的狂潮,眾多古老的文化遺產淪為工地和樓盤,各種古建筑和文化古跡都遭到不同程度的破壞。傳統的古建筑保護方法流程復雜,需進行大量實地考察作業,效率較低,導致基層文物保護部門任務繁重,條件艱苦。無人機傾斜攝影測量作為獲取地表三維模型的重要途徑具有便捷和高效的優勢,并且其技術和方法是快速發展的,于麗麗研究了基于無人機傾斜攝影測量技術的城市三維實景建模方法;丁波主要分析了基于無人機傾斜攝影三維重建技術中的精度問題;項志勇等人提出了基于傾斜攝影的快速三維重建方法;周杰研究了三維重建模型二級評價的方法并結合圖像快速建模系統(DP-Modeler)軟件進行模型精修,得到了精細的三維模型;李策將地面三維激光掃描結果與傾斜攝影相結合進行三維重建;何原榮等人研究了基于三維激光掃描與傾斜攝影技術相結合的古建筑三維重建方法,并將構建的模型以不同比例尺進行三維(three-dimensional,3D)打印與室內外展示。本文研究了利用成本低廉的消費級無人機影像建立古建筑三維模型以及模型展示與發布的方法,一定程度上解決了傳統古建筑保護方法時間和人力成本高的問題,可為文物保護部門制定古建筑保護方案提供參考。
三維重建算法的核心流程,如圖1所示。

圖1 三維重建的流程
受各種因素影響,測區航空影像色調存在差異,直接進行三維重建可能影響模型效果。批量處理航空影像,對航空影像進行勻色處理-對比度增強是尤為必要的。
基于限制對比度自適應直方圖均衡化(contrast limited adaptive histogram equalizatio,CLAHE)解決了傳統的直方圖均衡化(histogram equalization,HE)算法局部失真和噪聲過大的問題,在圖像增強領域具有廣泛應用,其基本步驟如下:
(1)劃分圖像為連續大小相等且不重疊小塊,劃分子塊的數目與圖像增強程度正相關。
(2)對每個小塊建立直方圖。
(3)直方圖裁剪,將設置的超出閾值的像素切掉。

(1)
其中,T
為設置的初始閾值;w
和h
分別是一小塊的像素寬度和高度;N
為小塊內像素總值;T
為最終閾值。(4)將切掉的像素點重分配。

h
(x
)為直方圖;E
表示超出閾值的像素個數;B
表示每個灰度級增加的像素個數的平均值;K
為灰度級的個數。(5)每個小塊直方圖均衡化。
(6)線性插值運算,一般是雙線性插值。
實驗發現,將航空影像勻化處理之后,模型色彩更加真實且細節更清晰。
稀疏重建使用運動恢復結構(structure from motion,SFM)算法,其流程如圖2所示。

圖2 SFM算法流程
基于尺度不變特征變換(scale-invariant feature transform,SIFT)提取特征點后進行特征點匹配,那么之后任意兩張航空影像上若干點有式(4)的對應關系,表示任意兩張影像的點的匹配關系。

(4)
通過上述的數據可求解相機內參K
,相機外參R
、T
,進而求解地物的齊次地理坐標X
,這便是SFM算法的核心。求解公式如下,這里N
為影像數x
為影像的齊次像素坐標。i
是影像對的編號,是投影矩陣,和X
的計算公式如下:
為更好地消除特征點匹配錯誤以及誤差的影響,可進行非線性最小二乘優化

(7)
其中,={P
,P
,…,P
};X
={X
,X
,…,X
},這里D
是特征點的數目。這里區域網平差方法選擇多核光束法平差(multicore bundle adjustment)算法。多視角聚簇(cluster multi-view stereo,CMVS)算法對SFM算法輸出的大量重疊點云進行聚簇分類,為后續操作減小了數據冗余,降低了時間成本,如圖3所示。

圖3 CMVS算法流程
基于面片模型的密集匹配算法(patch based multi-view stereo,PMVS)處理聚簇分類后的點云,建立面片模型迭代進行擴展和過濾操作,最后輸出稠密點云,如圖4所示。

圖4 PMVS算法流程
網格優化的核心在于建立以最小化匹配為代價的能量函數,其構建的基本過程如下:
α
為參考影像;β
為鄰域影像;影像αβ
上(r
,c
)處的亮度值為I
(r
,c
);影像α
上(r
,c
)處的亮度值為I
(r
,c
);影像β
上(r
,c
)處的亮度值為I
(r
,c
)。設X
為物方點;x
為像點;S
為物方表面。參照文獻中的公式,可依次計算:像點梯度變化值;像方頂點梯度變化值;物方頂點梯度變化值,以上信息可組成能量函數的數據項E
(x
)=h
(I
,I
)(x
)=1-N
(8)
這里的N
是影像間的相關系數,能量函數形式如下:
(9)
另外還有平滑項E
,具有確保三角形狀和表面平滑的功能:
(10)


(11)

將紋理影像構成的紋理空間與表面參數構成的三維模型空間作一一對應的映射叫做紋理映射,也就是將指定的紋理圖像映射到三維模型表面,其基本流程如圖5所示。

圖5 紋理映射基本流程
紋理映射的核心在于構建映射關系,文獻[12]提出了基于深度值的影像可見算法,此算法的核心是求出航空圖像中每一個像素點對應的三角面,建立一張三角面標號圖記錄與本張航空影像最近的面然后確定影像那些像素點不存在遮擋。然后通過構建影像與三角面的圖表關系,將每一個三角面作為節點,每一個備選影像作為標簽。將問題轉化成一個基于置信傳播理論的求解數據場穩態問題,構建數據場的能量函數求解。
F
是三角面片;l
是對應的備選航空影像;數據項E
(F
,l
)衡量二者之間的相似程度,確定單個三角面片的紋理映射質量。F
是與F
相鄰的三角面片;l
是F
對應的備選航空影像;平滑項E
(F
,F
,l
,L
)衡量紋理的連續性,使得相鄰三角面片紋理盡可能對應同一張備選航空影像。設l為待選紋理影像的編號,能量函數的表達如下:
(12)
求解三角面的能量方程全局最小值,即可得到最佳映射效果。
網格模型(Mesh)構建完畢之后,進行各項實驗,通過建模軟件再建模可以生成3D打印產品,全景圖和虛擬現實(virtual reality,VR)產品等,實驗的流程如圖6所示。

圖6 實驗的基本流程
2.2.1
調查測區概況光岳樓是四重檐十字脊過街式樓閣,由墩臺和四層主樓組成,有多處飛檐,欄桿石柱雕刻精美,結構較為復雜,三維重建有一定的難度。
2.2.2
航線規劃使用無人機航測航線規劃軟件Altizure進行航線規劃,為保證相鄰航片重疊度,每一層環繞一周拍攝50張左右五層共計250張傾斜影像。頂部按照之字形飛行并拍攝,共計飛行3個之字形航線,拍攝照片100張從而保證建筑物頂部,屋檐等細節的建模質量。選取連續晴朗的三天,前兩天使用無人機進行拍攝,最后一天對細節進行補拍尤其是屋檐下等遮擋的部位等。
圖像快速建模系統(DP-Modeler)是一款可對三維模型精修的單體化軟件,與3D建模專業軟件3Ds Max可以通過聯動插件方便的聯動:通過DPModeler采集模型的輪廓實時同步到3Ds Max中進行模型精細化。由于古建筑存在較多細小而復雜的結構,DPModeler自動紋理映射效果較差,需要大量的修改貼圖。Mesh模型使用密集的三角網較真實地反映了建筑物實際的幾何外觀,但占用存儲空間較大,不夠輕量化,從而不利于后期宣傳與發布。在3Ds Max中進行模型單體化,操作較為簡單且效率高,將Mesh模型導入3Ds Max中并凍結,參照Mesh模型在新圖層進行重建,見圖7。
單體模型可在DPModeler軟件中進行瓦塊壓平。將重建的模型還原到原來的場景中,在這里需要進行刪除閃面,補洞和紋理修改。

圖7 場景中的Mesh模型和單體化模型
2.4.1
3D
打印使用3D模型修補軟件Magics軟件對單體化模型進行進一步的完善便可生產3D打印產品(圖8):①縮放模型至合適的打印尺寸。②修復模型的錯誤:修復縫隙、孔洞和干擾殼體;修復模型的三角面片錯誤;修復模型壁厚錯誤消除打印中斷裂的風險。

圖8 3D打印結果展示
2.4.2
生成全景圖和VR
展示單體化模型導入草圖大師(Sketchup)軟件,基于Sketchup開發的Dsketchup插件可自動生成全景圖和VR場景且自動生成分享二維碼便于在移動端自由查看。模型全景展示界面有評論界面和文字介紹欄,可對古建筑進行詳盡的文字介紹,便于宣傳與推廣。
本文主要研究了基于消費級無人機航空影像進行古建筑三維重建的方法,探索了一種低成本、高效率的數字化古建筑保護方法;總結了模型重建方面的改進思路,即增強航片對比度,提高空三質量和優化三角網格模型;總結了基于消費級無人機航空影像快速建模,模型修飾和發布與宣傳的基本流程。通過較低的成本和較短的時間,可以完成對古建筑的逆向重建,生產3D打印實物、全景圖和VR展示等產品。相比地面測繪和三維激光掃描,操作流程更簡易時間成本更低;相比直接在3D建模軟件手工建模,效率更高且對模型各處比例有很好的把控,更加接近真實。技術通常以一個超乎想象的速度更新迭代,在古建筑三維建模領域,也不斷涌現新的技術方案,如通過激光雷達構建三維點云與傾斜影像結合等。真心希望能夠不斷涌現更多的、更先進的技術方案用于解決古建筑的保護與維護問題。