王艋, 張小宇, 劉松, 姚秀光
(1.楊凌職業技術學院,交通與測繪工程學院,陜西,楊凌 712100;2.中國長江三峽集團有限公司,湖北,武漢,430000;3.貴州省第一測繪院,貴州,貴陽 550025)
城市三維建模是描摹城市地表景觀的三維模型,用來表達城市空間信息[1]。以往大多采用人工測量的方式創建城市三維模型[2-3]。此類方式雖可在一定程度上控制所創建三維模型的精度,但人工成本較高,且過程煩瑣,無法有效保證三維模型的效果[4]。為此,很多學者展開了相關研究。杜金蓮等[5]提出了基于二維數字地圖的城市三維建模方法,以二維地圖顏色為依據,劃分地物種類并提取邊緣信息,結合距離測量算法生成城市三維模型。該方法雖可實現三維建模,但不能保障建模的精度。呂希奎等[6]研究了城市道路三維建模方法,運用CAD路網數據創建城市道路相關規則,實現大區域城市道路三維建模。此方法建模效率高,但所生成三維模型逼真性不夠理想。
傾斜攝影技術能夠從多個角度獲得正攝與傾斜2種影像,為人們帶來更貼近人眼視覺感的逼真空間[7-10]。為此,本文提出了基于無人機遙感技術的城市三維建模方法,利用無人機傾斜攝影遙感技術采集城市各角度影像,結合預處理與紋理映射等方法,構建高質量城市三維模型。
本文設計的城市三維建模方法主要由數據采集、數據預處理、空中三角量測及紋理映射等部分構成。其原理是以所設計航線為依據,通過無人機采集具備旁向與航向重疊度的有序城市影像數據,恢復城市影像之間的立體關系,構建實景城市三維模型。建模過程如圖1所示。

圖1 城市三維建模過程圖
據圖1,整體建模過程描述如下。
1) 確定所需三維建模的目標城市以及格式、精度等任務需求,同時申請目標城市所屬空域。
2) 依據目標城市區域高差、高程、面積等數據,選取恰當的無人機與相機,并以攝影基線的數量與長度為依據確定布設間距、像控點;以航行最低點分辨率與最高點重疊率都可達到測量需求為前提,設計無人機航線[11-12]。
3) 選取恰當的天氣實施無人機作業,得到目標城市的正射與傾斜影像數據。
4) 對數據實施勻光勻色與畸變校正預處理后,獲得高質量目標城市影像數據。
5) 通過3DS Max自動三維建模軟件實施空中三角量測與紋理映射,生成目標城市的三維模型。
為了避免遙感技術所采集的影像數據存在色調與飽和度不均、畸變偏差等問題,選取Wallis濾波法勻光勻色,提高低反差區間的反差值,對勻光勻色處理后的影像進行畸變校正。經過以上兩種預處理方式,獲得了高清晰度、飽和度,色相及色度等更加均勻的高質量影像數據。將之用于三維建模中,可以讓三角量測與紋理映射的精度更高,使最終構建的實驗區域三維模型質量更高。
1.2.1 目標城市影像的勻光勻色處理
本文選用Wallis濾波法實施勻光勻色處理,統一目標城市影像的灰度均值與灰度方差,降低高反差區間的反差值,提高低反差區間的反差值,實現勻光勻色。該方法的濾波表達式為
(1)
式中,目標城市影像的亮度系數與反差擴展系數分別以d和a表示,無人機所采集到目標城市初始影像的灰度值以h(x,y)表示,經濾波之后的目標城市影像灰度值以hx(x,y)表示,參考影像與特定鄰域內某像素的灰度均值分別以we與wh表示,二者的方差分別以ue與uh表示。
1.2.2 目標城市影像畸變的校正處理
對勻光勻色處理后的影像實施畸變校正處理。畸變包括切向畸變與徑向畸變2種。徑向畸變是在成像儀周邊相機透鏡所出現的彎曲,越接近成像儀周邊,畸變越高,可通過l=0的泰勒級數實施定量描述,l代表像素與影像光學中心之間的間距。徑向畸變的表達式為

(2)
式中,徑向畸變參數以c1、c2、c3表示,成像平面上畸變點的初始位置以(x,y)表示,校正之后畸變點的位置以(xq,yq)表示。
切向畸變是影像平面同相機透鏡之間無法平行而形成的彎曲,描述參數為q1和q2,表達式為

(3)
式中,影像中畸變像素點的初始位置與經過校正的位置分別以(x,y)和(xq,yq)表示。

(4)
通過式(4)得出像素點的實際位置,完成影像畸變的校正處理。
將預處理后的影像輸入3DS Max自動三維建模軟件,構建目標城市三維模型包含空中三角量測與紋理映射兩部分。空中三角量測借助PixelGrid系統得出精準外方位元素;通過3DS Max插件運用外方位元素結合共線方程生成基礎三維模型,紋理映射通過共線方程得出紋理坐標,獲得最終的城市三維模型。
1.3.1 空中三角量測的目標城市影像外方位元素確定
PixelGrid系統屬于數字攝影量測系統,硬件的運算節點兼容性強、運算性能高且并行處理性優越。在空中三角量測處理之前,需準備預處理后的傾斜與正攝影像數據、無人機航線結合表(無人機型號、航行方向及航行線路索引圖)、相機校驗參數(像元、焦距、像主點坐標)。基于空中三角量測的影像外方位元素確定具體過程如圖2所示。

圖2 空中三角量測的影像外方位元素確定過程
據圖2,影像外方位元素確定的具體過程描述如下。
1) 通過PixelGrid系統對影像實施空三加密,得出外方位元素。
2) 在不更改經度、緯度及高程3個線元素的前提下,依據外方位元素與各個相機位置關系,降低或增加旁向與航向角度,預估外方位元素。
3) 以外方位元素為原始POS數據,導入PixelGrid系統內實施聯合空中三角量測,得出全部影像的精準外方位元素。
1.3.2 基于紋理映射的目標城市三維建模
紋理映射具體過程如下。
1) 目標城市基礎三維模型生成:結合外方位元素和共線方程,通過3DS Max插件和傾斜測量技術進行目標城市的多片立體測量,生成基礎三維模型。共線方程是根據相機中心投影原理分析拍攝時的地面點、相機的像點以及投影中心之間的共線關系,得出共線方程表示為

(5)
式中,攝像站點的物方空間坐標以Xv、Yv、Zv表示,目標城市影像的內方位元素以x0、y0、g表示,相機像點的平面坐標以x、y表示,目標城市影像的外方位元素以θ、η、σ表示,三者依次代表航向角、旁向傾角以及影像傾角,三者方向余弦以fi、ki、pi表示。
2) 紋理映射:創建二維紋理空間點與三維空間城市表面點之間的關系,向三維空間城市表面映射二維紋理空間點的灰度值等,獲取逼真的城市三維模型,提升模型的質量。在3DS Max插件中,采用網格對象形式管理三維目標城市的幾何坐標。城市的各個面均對應一個紋理面,通過若干組索引向各個紋理面儲存對應的紋理坐標;在三維目標城市的面頂點個數等于紋理頂點個數的情況下,各個面的紋理頂點依次對應坐標頂點。紋理映射的具體過程如下。
(1) 根據式(5),塑造物方坐標變換至目標城市影像坐標的關系,實現三維點坐標反向紋理映射。
(2) 設紋理坐標為(s,t),紋理空間是矩形域,其中0≤s≤1,0≤t≤1,各個點紋理坐標為

(6)
(3) 依據外方位元素,得出空間坐標系內影像空間點f(x,y),并構造該點同模型空間點C(X,Y,Z)的關系。
(4) 依據紋理坐標,得出其與C(X,Y,Z)的關系。
(5) 依據以上2種關系,將f(x,y)像素值作為紋理空間點(s,t),實現紋理映射,輸出三維模型。
以某城市的部分區域作為實驗對象,創建該區域三維模型,檢驗本文方法的實際應用效果。實驗中選取多旋翼無人機,并為其搭載5個采集各個方向影像數據的尼康D850數碼相機。位于正中的相機對垂直方向的實驗區域影像實施采集,周圍4個相機設置不同方向45°傾角,采集傾斜方向的實驗區域影像;并將1臺GPS/IMU設備搭載于此無人機上,對正中位置相機曝光時的姿態與位置信息實施采集。
搭載后的無人機在飛行作業時設定其航行高度為110 m,旁向與航向重疊度分別為45%和68%,航攝影像分辨率設為0.04 m,傾斜與正攝相機的焦距分別為52 mm和36 mm。實驗中共設計10條航行線路,共采集到實驗區域正攝與傾斜影像700張,以其中1張正攝影像與2張傾斜影像(a、b)為例,呈現所采集的實驗區域正攝、傾斜影像效果,如圖3所示。

(a) 實驗區域正攝影像
通過本文方法對圖3中初始采集的3張實驗區域影像實施勻光勻色處理,處理后的3張實驗區域影像見圖4。通過對比圖4與圖3可以看出,經由本文方法對初始采集的實驗區域正攝、傾斜影像實施勻光勻色處理之后,顯著提升了實驗區域影像的清晰度,影像的飽和度、色相及色度等更加均勻,影像的整體質量更高。

(a) 實驗區域正攝影像
在以上實驗的基礎上,運用本文方法生成實驗區域基礎三維模型,并對基礎模型實施紋理映射后,所獲得的最終實驗區域三維模型如圖5所示。通過圖5可以看出,本文方法可實現實驗區域的三維建模,且最終構建的實驗區域三維模型質量高,具有較高的逼真度,本文方法的實際應用效果較為理想。這是因為本文選取Wallis濾波法勻光勻色,提高低反差區間的反差值,對勻光勻色處理后的影像進行畸變校正,獲得了高清晰度的高質量影像數據,將之用于三維建模中,可以讓三角量測與紋理映射的精度更高,從而提高了三維模型的質量。

圖5 本文方法構建的實驗區域三維模型效果圖
本文設計了基于無人機遙感技術的城市三維建模方法,通過無人機傾斜攝影遙感技術獲得城市影像,對影像實施勻光勻色與畸變校正處理,輸入3DS Max三維建模軟件對影像實施空中三角量測與紋理映射,獲得城市三維模型輸出。實驗結果表明,本文方法能夠實現對所采集的實驗區域全部影像的勻光勻色與畸變校正處理,處理后的影像清晰度更高,具有更均勻自然的飽和度、色相及色度等,影像內各個像素點的位置與實際位置相符,提升了影像的整體質量,運用處理后影像所構建的實驗區域三維模型逼真自然,實際應用性強。