敖其勇 ,潘國兵 ,龔洲 ,袁小彬 ,熊延 ,陳昌文
1. 四川省交通勘察設計研究院有限公司,成都 610017;
2. 重慶交通大學 智慧城市學院,重慶,400074;
3. 重慶市測繪科學技術研究院,重慶,401121;
4. 重慶川東南工程勘察設計院有限公司,重慶,400000;
5. 重慶南江工程勘察設計集團有限公司,重慶,401121
隨著社會的進步,測繪產(chǎn)品也在飛速發(fā)展,從數(shù)字線畫圖、數(shù)字柵格地圖等傳統(tǒng)的地理信息產(chǎn)品發(fā)展到目標場景的精細三維模型,對目標場景的精細化重建已成為當前地理信息產(chǎn)品生產(chǎn)的主流趨勢。建立目標場景精細三維模型的方法中,基于影像的攝影測量技術具有數(shù)據(jù)處理方便、成果直接帶有紋理等優(yōu)勢(黎其添,2019;宰春旭,2021;韓繼全等,2022)。但傳統(tǒng)攝影測量航線受限于固定航高和有限的視角,在面對高陡邊坡、建筑立面等高差變化大的目標場景,無人機拍攝的影像數(shù)據(jù)質(zhì)量差,進而導致得到的模型紋理不清晰、幾何完整性不好(廖永生和陳文森,2011;Nex 和Remondino,2014;Xiang 等,2019)。2019 年張祖勛院士提出了無人機貼近攝影測量這一概念,改變了無人機等高飛行方式,其無人機三維航線貼合目標表面,且視角隨目標形狀改變而變化(王云川等,2020;劉欣怡等,2023)。無人機的航線規(guī)劃主要可以分為兩大類,分別為在未知環(huán)境中的實時定位與建圖(simultaneous localization and mapping,SLAM)技術和基于目標的初始概略模型信息的航線規(guī)劃技術(劉欣悅,2022;陳凱,2023)。SLAM 技術是無人機在運動過程中依據(jù)外部傳感器獲得的數(shù)據(jù)進行自身定位的,同時建造增量式地圖。但這一方法無法滿足目標精細化三維重建的高精度、全覆蓋的航線規(guī)劃要求(閆德立,2020)?;谀繕说某跏几怕阅P托畔⒌馁N近攝影測量的航線規(guī)劃主要有兩種方法:一種是根據(jù)目標類型的不同將目標抽象成柱體、面等基本單元后,對不同單元分別進行航線規(guī)劃(何佳男,2019);另一種是通過泊松圓盤分布在目標概略模型表面生成稠密視點,根據(jù)約束條件對視點進行篩選,最后根據(jù)最優(yōu)視角反算出航跡點坐標與無人機姿態(tài)(Yan 等,2021;李清泉等,2022a,2022b)。
本文針對的面狀目標是對現(xiàn)實物體的抽象描述,其特點是與水平面有較大夾角,高差大,如水庫大壩面、高邊坡、建筑立面等。針對斜面目標的貼近攝影測量航線規(guī)劃主要是如何計算無人機姿態(tài)和航跡點坐標,使無人機正對目標拍攝、貼合目標表面飛行。斜面貼近攝影測量的三維航線規(guī)劃中,目前采用較多的方法為將斜面目標旋轉至水平面后進行航線規(guī)劃,然后將航線旋轉回斜面(陶鵬杰等,2020;楊愛明等,2020)。這樣的做法煩瑣、不直觀、效率低。為了簡化計算,提高航線的質(zhì)量,本文采用主成分分析(principal component analysis,PCA)算法得到無人機在水平飛行方向、航線上升方向和攝影機主光軸方向的方向向量,并結合航跡點的間隔得到航跡點三維坐標和無人機姿態(tài)。
貼近攝影測量航線文件包括每一個航跡點三維坐標及對應的無人機姿態(tài)。求取航跡點三維坐標,首先,要計算出滿足拍攝距離與重疊度等約束條件的相鄰航跡點間隔距離;其次,根據(jù)斜面目標點云數(shù)據(jù),利用PCA 算法得到無人機貼合斜面的水平飛行方向、航線上升方向、斜面法向量方向,結合相鄰航跡點間隔與飛行方向可以確定出無人機航跡點的三維坐標;再次,通過攝影機主光軸方向(斜面法向量的反方向)計算出無人機的姿態(tài)數(shù)據(jù)(無人機偏航角、相機俯仰角);最后,以弓字形的順序將航跡點串聯(lián)起來,生成航線文件。斜面貼近攝影測量三維航線規(guī)劃的技術流程,如圖1 所示。
圖1 斜面貼近攝影測量三維航線規(guī)劃技術流程Fig.1 3D route planning technical flowchart of slope nap-of-the-object photogrammetry
當相機參數(shù)固定時,無人機與重建目標的距離d越小,一張像片中包含的細節(jié)越多、影像分辨率越高,但是拍攝的面積就會越小,需要更多的像片才能覆蓋完目標,花費的時間也就越多。所以應當首先根據(jù)需求確定拍攝距離,影像分辨率與拍攝距離的關系,如式(1)所示。值得注意的是,實際情況中斜面目標是有一定起伏的,但起伏相對于拍攝距離來說較小。實際情況中無人機離斜面的距離會在距離d附近小范圍波動,但不足以引起影像分辨率產(chǎn)生巨大變化,不會影響最后模型的質(zhì)量:
式中,d為無人機與斜面之間的距離,m;GSD 為影像分辨率,表示單位像素對應的地面大小,cm/像素;f為無人機鏡頭的焦距,mm;pixel_size 為像元大小,μm。
為確保目標三維模型的完整性,采集的相鄰影像間需有足夠的重疊部分(齊懷卿等,2004)。在航線方向上相鄰照片的重疊部分與照片長度的比值稱為航向重疊度,相鄰航線之間的相鄰照片的重疊部分與像片寬度的比值稱為旁向重疊度(周驍騰等,2017;苗志成等,2021):
式中,px為航向上相鄰影像重疊部分長度,m;py為旁向上相鄰影像重疊部分寬度,m;lx為像片的長度,m;ly為像片的寬度,m;xP為航向重疊度;yP為旁向重疊度。如圖2 所示。
圖2 航向重疊與旁向重疊Fig.2 Forward overlap and side overlap
無人機拍攝照片的覆蓋范圍不僅受到拍攝距離d的限制,還與相機視場角(field of view,F(xiàn)OV)有關。視場角的大小決定了相機的視野范圍,視場角可分為水平視場角(fovx)、垂直視場角(fovy),如圖3 所示。根據(jù)其幾何關系可以推導出地面的成像范圍與視場角、拍攝距離的函數(shù)關系為
圖3 相機視場角Fig.3 Camera field angle
式中,Dx為相機在水平飛行方向的覆蓋范圍,m;Dy為相機在航線上升方向上的成像范圍,m。進而可得航跡點在水平飛行上的間隔xΔ、航線上升方向上的間隔yΔ,如圖4 所示。其函數(shù)關系為
圖4 航跡點間隔Fig.4 Waypoint spacing
將式(1)代入式(6)、式(7)中可以得到影像分辨率、重疊度、相鄰航跡點之間間隔的最終關系式為
為得到精細化三維重建的連續(xù)航跡點,還需求解無人機的飛行方向。為增加無人機的滯空時間,本文以沿斜面的水平方向為航向方向,斜面的坡度方向為無人機的航線上升方向。為得到更好的拍攝視角,提高模型精度,以斜面法向量的反方向作為攝影機的主光軸方向(韓青巖,2017),如圖5 所示。
圖5 無人機飛行航線Fig.5 UVA flight routes
利用PCA 算法對目標的點云數(shù)據(jù)做基變換,得到新的三個正交基即為待求解的三個方向(Spanò 等,2018)。其具體的計算步驟如下。
假設數(shù)據(jù)源D為3 行n列的三維數(shù)據(jù):
(1)數(shù)據(jù)去中心化。將數(shù)據(jù)D中的每一個坐標分量都減去該分量的平均值,使每一個分量的和為0。即則去中心化后的X坐標分量為同理可得、。去中心化后的數(shù)據(jù)D記為
(2)計算去中心化后數(shù)據(jù)的協(xié)方差距陣:
(3)求解協(xié)方差距陣C的特征向量與特征值。
計算得到的特征向量即為數(shù)據(jù)新的基底,由于協(xié)方差矩陣是對稱矩陣,因此,特征向量一定是正交基,其特征向量為無人機水平飛行方向、航線上升方向、攝影機主光軸這三個方向。協(xié)方差的特征值為數(shù)據(jù)在某一主成分上的方差,若數(shù)據(jù)的方差越大,則數(shù)據(jù)在該方向上越分散,包含的信息越多。如圖6 所示,向量PC1是無人機的水平飛行方向,PC2是無人機斜面的航線上升方向,PC3是斜面的法線方向也是無人機的主光軸反方向。
圖6 三維點云PCA 算法示意Fig.6 Schematic diagram of 3D point cloud PCA algorithm
通過飛行方向與航跡點的間隔,進而可計算各個航跡點的三維坐標。首先,在斜面上確定一個起始點:Start_Point =(x0,y0,z0),以航跡點之間的間隔為步長,計算足印點;其次,根據(jù)拍攝距離d和方向向量PC3計算航跡點坐標,其關系如圖7 所示。計算原理如下:
圖7 無人機航跡點計算Fig.7 UVA waypoint calculation
式中,WayPoint(i,j) 為任意無人機航跡點;i、j為水平航線的第i行、上升航線第j列的航跡點。
無人機的姿態(tài)包括無人機的偏航角、相機的俯仰角。根據(jù)攝影機主光軸反方向PC3,由幾何關系,可得無人機的偏航角與相機俯仰角:
式中,head 為無人機偏航角,(°),gilmbalPitch 為相機俯仰的角度,(°);PC3=(x y z)T為單位向量。
本文實驗選擇的典型區(qū)域為重慶市巴南區(qū)某高邊坡,邊坡所在位置106.549°E、29.391°N,其平均大地高為310 m,航飛前在邊坡的抗滑樁上粘貼四個反光片,分別為JC1、JC2、JC3、JC4,作為標記點,實驗通過對比模型中標記點的距離與實際距離的差異,用于模型的精度評價,如圖8 所示。為保證模型的精度、減少變形,建模時中央子午線設置為107.1°,抵償面高程設置為0 m。
圖8 標記點分布Fig.8 Distribution of Label points
實驗以大疆精靈4RTK 無人機為數(shù)據(jù)采集平臺。該無人機為四旋翼無人機,具有成本低、效率高等優(yōu)點,適用于小場景的精細化建模(尹玉廷,2018)。無人機部分重要參數(shù),如表1 所示。
表1 無人機部分參數(shù)Tab.1 Part of UVA parameters
首先,利用傾斜攝影測量方法獲得初始場景信息,通過上述計算方法,得到無人機貼近攝影測量航跡點的位置、無人機偏航角、相機俯仰角。其次,將航跡點坐標、無人機姿態(tài)數(shù)據(jù)整合生成航線文件,其中,無人機航線要通過所有航跡點,為了使滯空時間最大化,航跡點采用“弓”字形排序。將航線文件導入地面控制端,飛行作業(yè)實現(xiàn)邊坡貼近影像的自動采集。實驗中無人機拍攝距離20 m、航向重疊度80%、旁向重疊度70%,貼近攝影測量航線如圖9 所示。最后,利用拍攝到的影像建立邊坡的精細化三維模型,并對模型進行精度評估。實驗技術流程如圖10 所示。
圖9 無人機貼近攝影測量航線Fig.9 UVA nap-of-the-object photogrammetry rout
圖10 實驗技術流程Fig.10 Experimental technology process
模型質(zhì)量評價的內(nèi)容包括模型精度、紋理精細度。本文通過對比標記點的實際長度與三維模型上的測量長度,實現(xiàn)模型相對精度的評定。其中,貼近攝影測量模型上量取的線段長度減去全站儀測量的實際長度記為Δ1,傾斜攝影測量模型上量取的線段長度減去全站儀測量的實際長度記為Δ2,測量數(shù)據(jù)如表2 所示。
表2 長度誤差統(tǒng)計表Tab.2 Statistics table of length error
由表2 可知,貼近攝影測量模型誤差的最大值為7 mm、最小值為1 mm、中誤差為5.5 mm。傾斜攝影測量模型誤差最大值為189 mm、最小值為10 mm、中誤差為125.1 mm。貼近攝影測量相比于傾斜攝影,其點位的相對精度得到了巨大的提升。在模型的精度與紋理精細度上,貼近攝影得到的邊坡模型相較于傾斜攝影測量得到的模型完整性更好、未出現(xiàn)拉花、紋理更清晰,模型中邊坡上的裂縫、錨桿都清晰可見,如圖11 所示。
圖11 三維模型結果對比Fig 11 Result comparison of 3D real scene mesh models
本文提出了一種面向斜面的貼近攝影測量航線規(guī)劃方法,并經(jīng)過實驗驗證了其方法切實可行。在對斜面目標貼近攝影測量的航線規(guī)劃中,相較于旋轉斜面的方式本方法簡潔、效率更高,也為斜面目標的貼近攝影測量三維航線規(guī)劃提供了新思路。結果表明,貼近攝影測量得到的模型紋理細膩、完整性好,內(nèi)部點位相對精度達到5.5 mm。
在實際生產(chǎn)中任何復雜目標都可以分割為多個曲率較小、表面起伏不大的斜面。針對單一斜面可以通過本方法規(guī)劃出三維航線,然后將每個斜面的航線組合起來,就可以實現(xiàn)復雜目標的貼近攝影測量三維航線規(guī)劃,因此,本方法具有較強的適用性與較好的應用前景。