?

基于勻光處理的傾斜環繞攝影實景三維建模

2023-09-20 10:36劉佳嘉鄧志祥
計算機仿真 2023年8期
關鍵詞:紋理長方體光照

劉佳嘉,魏 琪,鄧志祥

(中國民用航空飛行學院航空電子電氣學院,四川 廣漢 618307)

1 引言

數字化城市技術發展迅速,已經成為現代城市發展的一個重要支撐[1]。而城市建筑物的三維建模正是數字化城市發展的有效途徑,通過三維建??梢钥焖佾@取建筑物的數據信息、模型等。傳統三維建模方法通過3DMAX、AutoCAD、激光掃描儀獲取建筑物的三維點云數據等,但自動化程度低,建模周期長,紋理真實度低,很難滿足實景三維建模的時效性和精度要求。隨著傾斜攝影技術的進步和發展,無人機搭載傾斜相機已發展成為三維建模技術中的主流趨勢[2],具有高時效、高分辨率、低成本、低風險等優點和較強的真實感,彌補傳統建模仿真精度低的不足。無人機傾斜攝影已被廣泛應用于不同類型建筑物的三維建模,如:文獻[3]對塔式建筑物進行建模;文獻[4]對陜西省高新區進行建模;文獻[5]對化工園進行建模;文獻[6]對桂林理工大學進行建模。在目前的應用中,多是采用較為固定的五次航線[7],或是環繞上升[8]兩種模式,但是實際的建筑往往呈現出不同的外形,應根據外形特征設計更符合實際拍攝的航線規劃,但目前有關其研究較少,因此研究針對建筑物的外形特征構建不同航線規劃[9]對無人機三維建模精度具有積極影響。

而當今由于規模、功能和地段條件等的影響,越來越多的復雜體型建筑物[10]涌現,比如中國第一高樓上海中心大廈高度約為632米,比其相鄰的上海金茂大廈足足高出約211米;北京鳥巢、上海世博會中國館等建筑均呈現出復雜的體型。這些建筑物外形結構復雜,紋理細節豐富,傳統無人機傾斜攝影方法存在兩個問題,一是拍攝過程中由于無人機攝影角度固定,或高建筑對低建筑的遮擋等存在較多攝影盲區,二是復雜體型建筑物紋理細節區域較復雜,往往需要采用多個角度及不同距離多次重復飛行采集數據,如針對凹凸面、陰影面,洞類等細節部分,需進出拍攝和低空拍攝;高度落差大的建筑,由于難以實現分辨率和重疊率的統一,還需分層多次飛行,而無人機往往受到電池容量限制,飛行次數受限,所以傳統方法耗時長,成本高,效率低。因此,目前仍然缺乏合理的針對復雜體型建筑的無人機實景影像獲取方法。

復雜建筑物往往由于高度差遮擋,近處綠植遮掩,地形起伏,天氣變化等原因,所獲取影像常常存在光照不均的問題。為了避免干擾在后續建模過程中累積傳播,所以在實景三維建模之前,必須對影像進行勻光預處理。常見經典勻光算法有Mask勻光法、直方圖均衡化法和自適應校正算法等。Mask勻光法由理想狀態下光照均勻分布的影像和背景影像共同構成光照不勻圖像,因此可從原始圖像中減去理想背景,從而消除圖像的色彩不勻[11]。該方法適應性強,應用廣泛,但運算效率低且易出現光暈效應。直方圖均衡化可使圖像色階分布更加均勻,但實際上很難達到格式所允許的最大灰度變化范圍[12],易導致過增強、圖像失真的現象。自適應伽馬函數校正算法是一種適應性及效果都較好的勻光算法[13]。其本質是先提取圖像光照分量,而后調整伽馬函數中的伽馬參數進行增強,具有較好的校正效果??紤]到算法復雜度及建模時效性等問題,因此本文采用低運算復雜度且勻光效果較好的自適應伽馬函數進行勻光處理,并在文獻[13]基礎上進一步準確快速提取光照分量,且在有效范圍內動態調整伽馬參數避免圖像失真。

本文針對目前無人機傾斜攝影面向復雜建筑物建模三維實景建模存在的難題,提出基于勻光處理的無人機傾斜環繞攝影實景三維建模方法。設計一種多角度、多高度的傾斜環繞航線采集影像航線,解決拍攝盲區,數據冗余,多次重復飛行的問題,再對影像采用自適應伽馬函數進行勻光處理,消除光照不均,改善圖像視覺效果,最后通過Context Capture軟件實現自動化的三維立體建模。本文選擇一個真實場景下某公園內兩個相鄰的復雜體型建筑物進行場景建模實驗,并從建模效率、建模精度、紋理細節部分等與傳統的無人機傾斜拍攝方法進行對比。

2 實景三維建??傮w方案

本文基于勻光處理的無人機傾斜環繞攝影建筑物實景三維建模的過程包括影像獲取、勻光處理和數據處理,如圖1所示。

2.1 影像獲取

對于建筑物的實景三維建模,需要盡可能地獲取建筑物側面紋理信息[14],但不少復雜體型建筑物相鄰建筑物間距較小,同時,城市綠化增多易導致遮擋,使得三維建模更為困難。傳統無人機傾斜攝影建模從5個視角獲取影像,其中,1個垂直視角,4個傾斜視角(45°),由于攝像機視角是固定的,容易存在拍攝盲區,如圖2所示。同樣,當建筑物周圍被其它建筑物或植被遮擋時[15,16],無人機的最低飛行高度受到限制,導致無法充分采集數據,影響建模效果[17]。因此,本文提出采用傾斜環繞建模航線規劃。

圖2 無人機傾斜攝影的拍攝盲區

2.1.1 傾斜環繞建模航線規劃

在三維建模流程中,數據采集首先需要進行航線規劃。航線規劃直接影響數據采集的完整度和建模效果。本文使用建筑物的外接長方體和外接半球面的思想,首先進行實地勘測,并建立建筑物的外接長方體,再以其底面中心為圓心建立最小外接半球面,其中以最高建筑物的高度作為外接長方體的高度,以可以覆蓋兩建筑物的最小寬度作為外接長方體的寬,以兩建筑物的長度以及間距相加之和作為外接長方體的長;其次計算攝影物距,在外接半球面外部建立一個同心的航路半球面,作為無人機拍攝的航線線路,讓無人機通過某高度、某半徑圍繞建筑物進行航拍[18];最后確定相機拍攝的角度,調節無人機的云臺,使無人機的云臺始終對準建筑物進行環繞航拍,得到全方位的拍攝;不同航高、不同拍攝半徑和不同航拍角度,都能夠減少拍攝死角,得到多角度的拍攝,如圖3所示。由于不同建筑物形狀各不相同,但大體上呈現為長方體形狀,因此在建模過程中,可以將建筑物近似看成規則長方體。

圖3 傾斜式環繞建模拍攝航線路徑及影像重疊區

2.1.2 航線參數計算

首先使用地形圖以及衛星圖等參考數據對建筑物進行詳細分析,并進行實地勘測,全方位地了解建筑物的長l1,寬w1,高h1,其次,以該數據為基礎,建立建筑物的外接長方體,設置外接長方體的長l2,寬w2,高h2,最后,以外接長方體為基礎,計算外接半球面的半徑r,計算公式如式(1)所示。

(1)

以外接半球面和外接長方體為攝影基準面,根據衡量影像分辨率的重要指標地面分辨率(GSD),來計算攝影物距D,如式(2)所示。

(2)

式中,Nl:相機感光元件參數;FOV:鏡頭固定參數。

傾斜環繞攝影的航線半徑Rcr可以根據攝影物距和外接半球面的半徑計算得到,計算公式如式(3)所示。

Rcr=r+D

(3)

根據外接長方體的長寬高、外接半球半徑、攝影物距以及航路半徑,可計算初始俯仰角、航高、各層環繞半徑、攝影基線長度、各層拍攝數量、拍攝間隔時間和間隔角。

初始俯仰角α1,可根據建筑物的實際情況,需要拍攝到完整的建筑物底部與地面連接處進行設置[19]。

初始航高公式如式(4)所示。

H1=Rcr×sinα1

(4)

初始環繞半徑公式為如式(5)所示。

R1=Rcr×cosα1

(5)

根據無人機在飛行方向上的航向重疊率px,用來計算每張照片去掉航線重疊率新增影像航向的長度B1,公式如式(6)所示。

B1=(1-px)×GSD×Nx

(6)

式中,Nx:航向像元數量,即相機像素與航線平行方向的像元數量。

由航向像元數量,航向重疊率、地面分辨率(GSD)、外接球半徑來計算無人機拍攝一圈的照片數量Q,如式(7)所示。

(7)

根據拍攝一圈的相片數量以及飛行速度、飛行半徑計算拍攝間隔時間t,如式(8)所示。

(8)

式中:V為無人機的最大飛行速度。

根據每一圈拍攝得到的照片數量,推斷得到攝影間隔角β1,如式(9)所示。

(9)

根據上一條環繞航線的高度和旁向重疊率計算下一條環繞航線的相機俯仰角αn,計算方法如式(10)所示。

αn=αn-1+α1(1-py)

(10)

式中:αn-1為上一條航線的相機俯仰角;py為旁向重疊率。

根據當前相機拍攝的俯仰角,計算當前的拍攝航高與拍攝半徑,計算公式分別如式(11)、(12)所示。

Hn=Rcr×sinαn

(11)

Rn=Rcr×cosαn

(12)

當前攝像機拍攝一圈的照片數量、拍攝間隔時間、拍攝的間隔時間角根據式(7)、式(8)、式(9)進行循環計算。判斷當前航高和環繞半徑的相機拍攝范圍是否覆蓋建筑物頂部,若計算的下一條航線的環繞半徑過小,對建筑物的側面拍攝不全面,則終止計算。

2.2 勻光處理

2.2.1 快速導向濾波提取光照分量

根據光照-反射成像模型,光照分量和物體的反射分量兩個因素是決定圖像的關鍵,其中人眼對圖像亮度更敏感[20],因此,為了減少光照不均對影像的影響,如何準確提取圖像中的光照信息是解決光照不均問題的關鍵。文獻[21]提出了導向濾波算法,通過引導圖像和輸入圖像之間的線性關系,在濾波窗口內重新計算每個像素值,可在較低運算復雜度的背景下,較好保持原圖像顯著邊緣,具備良好平滑特性,獲得圖像低頻信息。而文獻[22]在此算法基礎上提出了快速導向濾波算法,進一步降低算法復雜度。鑒于該方法是一種快速邊緣保持濾波算法,且不帶梯度反轉效應,所提取光照分量與原圖亮度圖像最逼近,因此本文采用快速導向濾波算法準確快速提取光照分量。

引導濾波的基本思路為輸入圖像p,引導圖像I,濾波輸出圖像q,在當前像素點k上,都存在以k點為中心,r為半徑的濾波窗口wk,使得有如下線性變換關系

qi=akIi+bk,?i∈wk

(13)

其中ak、bk為線性變換因子,為窗口內的常數。引導濾波的中心思想為:在窗口內計算ak、bk的最優值使得輸入圖像p與濾波輸出圖像q的差值最小。ak、bk的最優值的求解如下

(14)

(15)

式中|w|為窗口內的像素數目,σ、μ為引導圖像I的均值與方差,ε為防止數值過大的規則化參數值。將(14)、(15)式代入(13)式有如下公式

(16)

導向濾波能最大限度保留輸入圖像特征,有效獲取引導圖像的細節變化,具有良好邊緣保持特性。而快速導向濾波是在此基礎上用輸入圖像與引導圖像的s倍的下采樣來求解ak、bk,進一步減少時間成本,可以快速、準確、高效提取光照分量強度(濾波半徑r=16,調整參數ε=0.01,下采樣倍率s=3)。

2.2.2 自適應伽馬函數校正亮度

在準確提取光照分量后,下一步需自適應校正每個像素點的亮度分量,降低過亮區域亮度值,提高過暗區域亮度值,消除光照不均的視覺影響。文獻[23]提出一種自適應的二維伽馬校正,其表達式為:

(17)

式中O(x,y)為輸出的圖像,I(x,y)為光強度分量,γ為伽馬校正參數,m為整幅圖的光照分量的均值,ε參數的取值范圍為0~1,當ε趨近于零則圖像會得到極大的光照增強,當ε趨近于1基本不改變圖像光照強度。采用自適應伽馬校正可很好提高圖像亮度,豐富暗區域細節,抑制亮區增強,從而提升了影像視覺效果。

2.2.3 勻光處理流程

圖4 勻光處理步驟

2.3 數據處理

處理后的影像需要進行處理生成建筑物的實景三維模型,Context Capture軟件自動化程度高,無需人工干預,能夠高精度高效率地完成建模工作。因此,使用該軟件進行三維模型構建,處理過程如下所示:

2.3.1 導入影像

首先,項目的存儲路徑及名稱不能帶有中文符號,否則軟件無法識別[18]。其次,導入外部作業獲取的影像信息和控制點信息,軟件自動讀取焦距、相機參數和位置信息等。最后,在照片添加完成后檢查圖片能否完整打開。

2.3.2 空中三角測量

影像間的相對位置關系可通過空中三角計算來確定。Context Capture利用所采集到的POS數據可求解出精確地外方位元素和地面坐標,同時多視影像聯合平差能最大限度減少信息盲區,影像處理的關鍵是解決影像之間變形和遮擋問題,影響三角測量精度。為提高此精度,采用光束法區域網平差來優化平差結果[24,25]。

2.3.3 刺點

為提高空中三角測量質量,可人工選取控制點所在影像進行刺點,對比外部作業實測控制點[26],以得到其所在影像中的準確位置。

控制點的作用:1)控制加密空中三角測量成果;2)優化加密中影像的匹配速度與精度;3)對建模成果進行坐標轉換[4]。

控制點添加完成后,再次運行空三,查看是否成功。若失敗,檢查刺點或POS數據是否有誤,直至加密成功。

葉酸:為預防胎兒神經管畸形,應從孕前3個月開始每天補充葉酸,持續整個孕期。孕婦攝入葉酸應達到每天600微克,除常吃含葉酸豐富的食物外,還應補充葉酸每天400微克,以滿足其需要。

2.3.4 密集匹配與三維模型構建

通過空中三角測量獲取到影像的精確外方位元素,得到其空間位置,構成立體像對,利用多視影像密集匹配技術,在多幅影像之間識別特征點,生成密集點云。由匹配到的密集點云生成三角網模型。

2.3.5 紋理貼合

首先根據三維網模型中的三角面將無人機影像切割成與之對應的紋理三角面;然后建立三維網格模型與紋理三角面之間的對應關系,將二維平面紋理三角面映射到三維網格模型,完成紋理映射,進而得到具有真實視覺效果的可視化實景三維模型。

3 建模實例

3.1 建模對象

選擇真實場景下某公園內兩棟緊鄰建筑物為采集實驗區,兩建筑間隔較近,且結構及紋理細節復雜,符合復雜體型建筑特征。選用大疆精靈phantom 4 Pro V2.0無人機設備采集數據,該設備具有方便靈活、成本低、可控性好等特點。其相機可通過云臺調節傾斜角和方位角,飛行高度不低于30米,可對常見復雜建筑提供多角度、多高度的拍攝。

建模實驗對象實景圖如圖5所示。長寬高分別為長4.8 m,寬4.8 m,高11.5 m;長16.5 m,寬16 m,高21.08 m的兩棟高矮落差較大的房屋。其中,較高的一棟呈現為較為細長的立柱狀,其四面均為玻璃,較矮的一棟為立方體狀,其兩面為玻璃,另外兩面為紅色磚和混凝土搭建的墻面組成,且兩建筑物之間相鄰很近,中間僅有一條寬約為3.46 m的縫隙,依據建筑物的外接長方體和外接半球面的思想,將兩棟房子近似看作一個長方體整體,其長為24.28 m,寬為16.46 m,高為21.08 m。

圖5 建模實驗對象實景圖

3.2 數據采集

根據傳統無人機傾斜攝影的拍攝方法,將無人機定高為25 m,無人機航向和旁向重疊率為85%,無人機從5個角度對建筑物進行拍攝,如圖6所示。其中黑色方框代表建筑物所在位置。

圖6 無人機傾斜攝影航線

根據本文無人機傾斜環繞拍攝的三維建模方法,環繞航線的計算參數為:建筑物的長24.28 m,寬16.46 m,高21.08 m;外接長方體長25 m,寬17 m,高22 m;px為85%,py為85%;FOV為94°;GSD為0.003 m;Nl為5472,Nx為3648。同時,在拍攝區域內設置8個控制點并測量其坐標。

經計算,環繞航線的輸出參數如表1所示。

表1 環繞航路的飛行參數

4 結果分析

4.1 勻光處理結果分析

將獲取的影像用Python的Opencv庫處理,將直方圖均衡化處理結果與本文采用的勻光處理結果對比,如圖7、圖8所示:

圖7 兩種處理效果對比圖

圖8 兩種處理效果局部對比圖

可以看出兩種方法都改善了原圖亮度不均的現象,但從圖8(b)可以看出直方圖均衡化的結果出現了過增強,屋頂出現深淺不一的色塊。而圖8(c)在圖像亮度增強的同時較好保持了原圖質量,屋檐與房頂的過渡自然,整體色彩均勻、清晰,與原圖實物較為貼切。

為了客觀評價兩圖效果,引用峰值信噪比(PSNR)、結構相似性(SSIM)、均方誤差(MSE)、信息熵(Entropy)四個評價指標,其結果如表2所示。

表2 兩種勻光處理效果參數對比

峰值信噪比衡量圖像抗噪聲性,數值越大表明圖像抗噪聲性能越好;結構相似性表征兩張圖像相似度,是衡量圖像結構是否失真的重要指標,其測量增強后的圖像與真實圖像之間的差異,取值范圍為[0,1],其值越大表示輸出圖像和原圖像越相似,能與原圖擬合;均方誤差是處理后圖像與原圖之間差值平方和的均值,可以看出直方圖均衡化處理結果誤差過大;信息熵表征圖像信息量的多少,原圖信息熵為7.17,直方圖均衡結果為7.96,其值遠高于原圖屬于過增強,本文勻光處理結果為7.18。綜上可知本文方法在消除光照不均影響的同時,保證了原圖的完整性,優于直方圖均衡化方法。

4.2 三維建模效率分析

建模效率從圖像數量和數據處理時間兩個方面進行分析,數據處理的計算機環境CPU(AMD Ryzen 5 3600X)、 GPU(2080Super)、內存(16G)。

由表3可知,無人機傾斜環繞攝影相對于無人機傾斜攝影需要較少數量的圖像,相應數據處理時間也更短。

表3 兩種建模方法效率

4.3 三維模型成果

數據由無人機傾斜攝影與無人機傾斜環繞攝影獲取,再經數據處理,獲得完整的建筑物三維模型,圖9(a)(b)(c)分別為傾斜攝影采集的影像被處理后生成相應的三維TIN白模模型圖、三維TIN網構建圖、三維建模的成果圖,圖10(a)(b)(c)分別為傾斜環繞攝影采集的影像被處理后生成相應的三維TIN白模模型圖、三維TIN網構建圖、三維建模的成果圖,圖11(a)(b)(c)分別為對傾斜環繞攝影采集的影像進行勻光處理之后的生成的相應的三維TIN白模模型圖、三維TIN網構建圖、三維建模成果圖。

圖9 傾斜攝影方法效果圖

圖10 傾斜環繞攝影方法效果圖

圖11 勻光后的傾斜環繞攝影方法效果圖

對比圖9和圖10可知,傾斜環繞攝影方法效果圖的紋理細節比傾斜攝影方法更加豐富;對比圖10和圖11可知,本文方法效果圖的亮度更加均衡。

4.4 三維模型質量分析

4.4.1 模型精度分析

本文對比控制點的實測值與模型量測值進行精度分析。將外業實測的8個控制點量測值與內業在三維模型上的實測值的距離差和高度差進行對比,分別如圖12(a)(b)所示。由圖可知,傾斜環繞式攝影與實測值的距離差和高度差總體上比傾斜式攝影小。由表4可知,在距離量測上,傾斜環繞法與傾斜法的模型量測值和實測值的差值范圍分別是(0.003±0.025)m、(0.009±0.028)m;在高差量測上,兩方法的模型量測值和實測值的差值范圍分別是(-0.026±0.038)m、(-0.026±0.059)m。以上結果表明,傾斜環繞攝影建模方法與傾斜攝影建模方法量測精度總體上相當,但傾斜環繞攝影建模方法量測精度要高于傾斜攝影建模方法。

表4 兩種建模方法的距離、高度差值

圖12 兩種建模方法的距離、高度差值折線圖

4.4.2 紋理細節比對

由圖13(a)(b)(c)可知,傾斜攝影因存在盲區較多的問題,導致建模具有較多的紋理缺失,其中圖13(a)為兩建筑物存在遮擋,玻璃部分出現鏤空;圖13(b)為白色玻璃邊框線條部分輪廓不清晰;圖13(c)由于鏡頭角度固定,屋檐處紋理不清晰。從圖13(a),13(d)對比可見,建筑物的玻璃部分缺失較多細節,由于是玻璃面,反光較強,且兩棟房屋間隔過近,較高的房屋遮擋住了矮房屋的細節,而傾斜環繞攝影建模能夠較完整地展示玻璃結構;對比圖13(b),13(e)可見,傾斜攝影建模方法相較于傾斜環繞建模方法效果較差,主要體現為線條連貫性較差,有錯落現象;對比圖13(c)和13(f),由于傾斜攝影建模方法攝像頭角度固定,會存在拍攝盲區,存在較多紋理缺失,而傾斜環繞建模方法由于能夠多角度、多高度地拍攝,能夠有效減少拍攝盲區,故能展示較多地紋理細節。故比較2種建模方法后可知,傾斜環繞攝影建模方法在建模完整性上優于傾斜攝影建模方法。

圖13 三種建模方法的局部對比圖

因使用傾斜環繞方法拍攝時光線較暗,故所獲取的原始影像較暗,導致三維模型的紋理亮度較低。從圖13(d),13(g)對比可見,后者色彩更貼近實物,具有更優視覺效果;從圖13(e)13(h)對比可見,后者紋理細節更加清晰,玻璃與窗框的過渡分明,整體色彩均勻豐富;對比圖13(f),13(i)可見,前者色調過暗,視覺質量差,后者暗處和亮處的細節都得到增加,色彩自然、清晰,模型質量得到了很好的提升。

5 結束語

本文針對復雜體型建筑物的實景三維建模存在的難題,提出一種選用單鏡頭小型多旋翼無人機,對建筑物進行傾斜環繞式拍攝獲取影像,取代傳統傾斜攝影,實現對復雜體型建筑物多高度、多角度的三維立體觀測;再將影像通過快速導向濾波提取光照分量,自適應伽馬函數校正亮度,消除光照不均的影響;最后通過Context Capture軟件實現三維立體建模。相對于傳統無人傾斜攝影建模的方法,本文方法具有以下優點:①能夠采用較少的影像構建精確、完整的三維模型,提高了建模的效率;②構建的模型精度高,能保證模型的完整性。解決了對復雜體型建筑物三維建模時存在攝影盲區和對其紋理細節區域建模效果差的問題。有效地提高了無人機針對建筑物實景三維建模的效率和質量;③勻光處理有效校正了光照不均的影像,豐富了圖像細節,對于暗區域和亮區域處的細節都得到有效增強,為提高最終三維建模質量起到關鍵作用。

由于無人機最低飛行高度受限,后續研究可嘗試針對易被植被遮擋的較低區域,通過地面補拍圖像進一步豐富細節;也可在保證建模質量的前提下,對無人機航線規劃以及像控點數量進行進一步優化,并且還可通過其它軟件對建筑物細節進行精細化處理。

猜你喜歡
紋理長方體光照
表面積和體積的計算
表面積和體積的計算
節能環保 光照萬家(公益宣傳)
拆拼長方體
拆拼長方體
節能環保光照萬家(公益宣傳)
基于BM3D的復雜紋理區域圖像去噪
春光照瑤鄉
使用紋理疊加添加藝術畫特效
TEXTURE ON TEXTURE質地上的紋理
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合