王鵬生 ,劉排英 ,賀少帥 ,孫 亮
(1.石家莊鐵路職業技術學院,河北 石家莊 050041;2.航天空氣動力技術研究院,北京 100074)
無人機(Unmanned Aerial Vehicle,UAV)地理視頻(GeoVideo)是一種融合有時間、位置和姿態等信息的新型視頻數據,其概念最早由韓國學者Kim等[1]提出,地理視頻的重要特征就是每一視頻幀都包含該幀獲取時刻的傳感器位置、姿態和時間等信息,與常規視頻相比,其不僅能夠真實表達地理空間場景,還能實現視頻的空間定位分析,在應急測繪、城市監控等領域更能發揮應用價值[2]。由于視頻幀幅較小、分辨率低(1 080P,1 920 pixel×1 080 pixel),在實際應用中需要進行拼接處理,目前無人機遙感影像拼接技術較為成熟,基于Structure from Motion(SfM)的國外開源算法OpenMVG[3],OpenDroneMap,VisualSFM[4]以及商業軟件PhotoScan,Pix4DMapper等,針對小像幅、非量測相機數據均有較好的拼接效果;Zhang等[5]開源的大尺度運動恢復系統ENFT-SfM可對整個場景的三維結構和相機參數進行全局優化,快速獲取視頻幀位姿信息及三維稀疏點云,為整體拼接提供精確外方位元素;國產攝影測量軟件如DPGrid,PixelGrid,GodWork等也能達到很好的拼接效果。然而上述算法或軟件均采用全局拼接策略,需要獲取全部影像一次性輸入進行處理,并不能滿足實時性要求較高的應用需求。得益于無線傳輸技術的發展,大數據量的無人機視頻實時回傳已不再是難題,這就為無人機視頻數據的實時拼接提供了可能,不少學者對無人機遙感影像的實時拼接進行了研究,并取得了一定的成果。文獻[6]提出了一種近實時的視頻影像拼接方法,用改進的Oriented FAST and Rotated BRIEF(ORB)算法完成了視頻影像特征提取與匹配,但并未實現多航帶的拼接;文獻[7]提出了一種無需地面控制點的遙感圖像實時幾何校正方法,但文中并未給出采用SIFT特征匹配算法的耗時說明,其實時性有待驗證;文獻[8]首先利用方向快速旋轉特征描述具有重疊區域的全局圖像,接著采用基于網格的運動統計方法獲取魯棒性較好的匹配關系,進而得到變換矩陣而后開展實時拼接,但只是利用計算機仿真實驗驗證了該算法的性能,并未實際應用;文獻[9]采用延時性更低的基于滑動窗口的光束平差方法來優化相機的外方位元素,再用優化后的外方位元素對視頻幀進行正射糾正處理,最后對正射影像進行拼接融合,該方法雖然提高了拼接的時效性,但拼接效果較為一般。隨著計算機視覺技術的發展,同時定位與建圖(Simultaneous Localization and Mapping,SLAM)技術在實時三維重建與自動駕駛領域被廣泛關注,與SfM相比,實時性是其最大特點,不少研究者已將SLAM技術應用于實時全景圖的生成[10],但通過試驗發現,在無人機視頻影像實時拼接過程中很容易出現特征跟蹤失敗導致定位丟失的問題,雖然視覺-慣性導航融合的SLAM方案可以有效解決定位丟失問題,但其系統和算法也更為復雜,在無人機遙感影像實時拼接應用中并不常見。
為了滿足應急測繪、動態監測等領域對無人機視頻數據快速處理的需求,提出了一種無人機地理視頻影像實時拼接方法。首先,采用基于時間標識索引的線性擬合方法對實時下傳的地理視頻進行處理,建立每幀視頻影像與地理信息的映射關系;接著,依據視頻幀坐標信息實時提取滿足航向重疊度要求的視頻關鍵幀,并結合外方位元素及高程信息對關鍵幀進行正射糾正處理,實現關鍵幀粗略地理編碼;通過地理編碼后視頻幀坐標在衛星或航空正射影像圖上查找相同范圍,采用ORB算法開展特征匹配獲取原始視頻幀與基準影像的空間變換關系,利用多項式幾何糾正方法實現視頻幀坐標變換,從而實現以衛星或航空正射影像圖為基準的視頻幀實時幾何糾正,最后采用加權平均融合法消除視頻幀拼接縫,形成一整幅影像。
無人機采集的視頻數據與遙控遙測數據通過通信鏈路系統實時回傳地面,地面接收裝置通過數據包幀頭標識符以及幀長度分別提取視頻碼流與遙控遙測數據,并記錄其時間標識,接著便可對地理視頻進行實時拼接處理,具體流程如圖1所示。

圖1 地理視頻影像實時拼接流程Fig.1 Flow chart of real-time mosaic for geographic video frames
首先在地理視頻數據實時解析過程中,將每條定位定姿(Position and Orientation System,POS)數據兩兩建立以時間為變量的插值函數,視頻幀依據時間標識索引對應的插值函數進行內插獲取其對應的POS數據,完成視頻地理編碼;同時依據視頻幀POS數據實時計算相鄰視頻幀重疊度,進而篩選出滿足重疊度要求的視頻關鍵幀并借助測區30 m DEM對關鍵幀進行正射糾正,獲取關鍵幀粗略地理坐標;根據關鍵幀地理坐標計算基準影像匹配范圍以減少無效特征點提取,接著原始關鍵幀與基準影像進行ORB均勻特征匹配,并采用RANSAC(Random Sample Consensus)算法剔除錯誤匹配,獲取均勻分布的匹配點,若匹配點足夠多,則對原始關鍵幀進行幾何糾正,否則與上一關鍵幀匹配后再進行幾何糾正;最后采用分批實時融合再整體融合的策略,實現整幅視頻關鍵幀的拼接。
視頻是由一系列連續的幀圖像組成,常見的視頻傳感器幀率為30,50,60幀/秒等,本文實驗所用視頻幀率為30幀/秒,即一秒視頻有30幀圖像,而慣性導航設備的頻率一般為2~10 Hz,雖然視頻流與POS數據同一時刻實時回傳,但由于頻率不同而造成視頻幀很難找到對應的POS數據[11]。為了解決上述問題,本文采用基于時間標識索引的線性擬合方法實現視頻幀與POS數據一一對應。POS數據主要包括時間(以ms為單位)、緯度、經度、海拔高、滾轉角、俯仰角和航向角,如圖2所示,分別以時間為自變量,緯度、經度、海拔高、滾轉角、俯仰角和航向角為因變量建立線性擬合方程,由于慣導姿態角具有取值范圍,在插值過程中需根據實際范圍進行取值。

圖2 慣導POS數據示例Fig.2 Example of inertial navigation POS data
視頻流在解碼過程中每幀影像均有時間標識,依據該標識索引擬合方程,帶入方程求出視頻幀對應的POS數據,實現視頻幀與POS數據的一一映射。由于只涉及簡單的數學運算,在地理視頻數據實時下傳解析過程即可同步完成視頻地理編碼。
視頻流包含大量的冗余數據,在拼接過程中并不需要所有的視頻幀都參與,快速挑選出滿足重疊度要求的關鍵幀是實現實時拼接的關鍵點之一。無人機航空攝影測量一般要求航向重疊度為70%~85%,旁向重疊度為35%~55%,逐幀計算重疊度的方法雖然可以精確獲取滿足重疊度要求的關鍵幀,但不適用于實時性要求較高的場景[12]。本文提出了一種基于視頻地理編碼數據的關鍵幀實時提取方法,該方法依據設計航高、視頻傳感器參數和視頻幀POS數據實時計算視頻幀重疊度,篩選滿足要求的視頻幀作為關鍵幀。算法如下:
首先將視頻幀經緯度坐標轉換為高斯投影坐標,假設初始關鍵幀與待求關鍵幀之間的地面距離L為:
(1)
再根據攝影比例尺公式求出地面分辨率GSD:
(2)
視頻幀航向方向地面距離S為:
S=GSD×W,
(3)
則航向重疊度p為:
(4)
式中,X1,Y1為初始關鍵幀坐標;Xi,Yi為待求關鍵幀坐標;f為傳感器焦距;H為設計航高;μ為傳感器像元物理尺寸;W為視頻幀航向方向像素個數。由上述公式可知,初始關鍵幀與待求關鍵幀之間的距離L可由預設航向重疊度與視頻幀航向地面距離計算得出,即視頻幀i在滿足L的一定閾值范圍內可作為關鍵幀。
在實際應用中實時計算視頻幀間的地面距離,挑選出距離閾值范圍內的視頻幀作為下一關鍵幀,依次完成所有關鍵幀的提取。
通過正射糾正處理可以獲取關鍵幀粗略的地面覆蓋范圍,便于確定與基準影像的匹配區域,縮短匹配時間。在正射糾正前需將關鍵幀POS數據姿態信息轉換為外方位角元素,轉換方法采用文獻[13]提出的公式:
(5)

正射糾正采用間接法數字微分糾正算法實現,地形數據來源于全國30 m高程數據,糾正效果如圖3所示。

(a) 原圖

(b) 正射糾正圖圖3 視頻幀正射糾正效果Fig.3 Effect of video frame orthorectification
1.4.1 ORB特征提取與匹配
圖像特征匹配算法常用的有尺度不變特征轉換(Scale-Invariant Feature Transform,SIFT),加速穩健特征(Speeded-Up Robust Features,SURF)和ORB等。其中SIFT最為經典,它充分考慮了圖像變換過程中的尺度、光照和旋轉等影響,但其計算量也極大,而ORB特征匹配改進了FAST檢測子不具方向性的問題,并采用計算速度極快的二進制描述子BRIEF,適當降低了精度和魯棒性以提升計算速度,是性能與質量之間較好的折中。由于考慮了旋轉和縮放,ORB在平移、縮放和旋轉的場景下仍有很好的表現[14],因此針對視頻幀實時拼接需求,ORB特征匹配算法是目前最好的選擇,文獻[15]在同一運算環境下提取同一幅圖像1 000個特征點,ORB耗時15.3 ms,SURF耗時217.3 ms,SIFT則耗時5 228.7 ms。雖然ORB特征匹配算法能滿足實時拼接需求,但其提取的特征點存在分布不均勻、重疊較多等問題,這將會直接影響視頻幀糾正精度。為了改善上述問題,采用基于四叉樹的FAST角點均勻提取策略[16]優化提取效果,其思想如下:
① 首先對原始圖像進行邊緣補齊,使其能夠滿足整數劃分正方形格網;
② 將補齊后的圖像進行30 pixel×30 pixel的網格劃分;
③ 每個網格中利用原始閾值和最小閾值提取滿足閾值的FAST特征點,如果采用最小閾值也提取不到角點,則放棄該網格以避免提取到質量特別差的角點,示例圖如圖4所示。

圖4 提取圖像每個格網內的FAST特征點Fig.4 FAST feature points extracted within each grid of the image
④ 在網格中再使用四叉樹均勻選取FAST角點,即每個網格先均勻分裂為4個節點,根據角點數目,再將每個節點繼續4分裂,直到每個小節點中只有一個質量最好的角點,示例圖如圖5所示。

圖5 FAST特征點在四叉樹節點中的分布Fig.5 Distribution of FAST feature points in quadtree nodes
1.4.2 基于RANSAC的誤匹配點剔除
在特征匹配過程中往往會存在誤匹配信息,為了消除誤匹配點,通常采用隨機采樣一致性RANSAC算法[17],其核心思想是從一組包含錯點的觀測數據集中,通過不斷迭代方式尋找最優數學模型的參數。航空影像可以近似看作平面場景,因此可以使用單應矩陣H描述2幅影像之間的變換關系,那么2幅影像同名特征點(x,y)與(x′,y′)的對應關系為:
(6)
要想求出單應矩陣H的8個元素,至少需要8個方程,即4對匹配點,RANSAC的計算過程為:首先從匹配點集合P中隨機選取4對匹配點計算單應矩陣H,再計算P中剩余點與H矩陣運算后的投影差,超出閾值的定義為局外點,不超出的定義為局內點,記錄該矩陣對應的所有局內點數目m,反復迭代選擇m最大的那個單應矩陣作為最優模型,并剔除對應的局外點。在編程實現時為了減少運算量并不是所有集合內的點全部迭代,而是只需保證至少有一次選取的4個匹配點都是局內點的概率足夠高即可,本文將此概率設置為0.95。為了降低誤匹配的可能性,視頻幀在與基準影像匹配前,需要根據傳感器畸變參數對視頻幀進行畸變差改正處理。
在獲取較好的匹配結果后,即可根據同名匹配點建立視頻幀與基準影像之間的空間變換關系,本文采用幾何多項式模型描述這種變換關系,多項式次數T與同名點數量n的關系為n=(T+1)×(T+2)/2,因此采用二次多項式模型至少需要6對匹配點,若關鍵幀與基準影像匹配點小于6個,則該幀關鍵幀會與上一關鍵幀進行匹配。幾何糾正后的關鍵幀將帶有精確的地理坐標,可用于后續的拼接處理。
1.4.3 異源光學遙感影像匹配
本文所用基準影像為衛星或航空正射影像圖,雖然都是光學遙感影像,但異源遙感影像的匹配相對于同源遙感影像來說更加復雜,主要是二者成像機理不同、時相或分辨率存在較大差異,導致自動匹配難以實現[18]。本文并未對異源光學遙感影像匹配算法做深入研究,而是通過相關實驗總結視頻幀實時拼接所用基準影像規律,進而對本文算法的實際應用提供參考借鑒。通過視頻關鍵幀與不同分辨率的航空、衛星正射影像圖匹配,分析異源遙感影像匹配與分辨率之間的關系,如表1所示,其中實驗所用無人機視頻為2018年3月獲取,分辨率為0.5 m,衛星影像為2017年4月天地圖數據,分辨率為0.59 m,航空影像為2019年11月獲取的0.01 m分辨率的正射影像。
從表1可以看出,視頻幀與航空正射影像圖的匹配效果整體優于衛星正射影像圖,主要原因是視頻傳感器與相機成像機理較為接近。無論是衛星或航空正射影像,其分辨率與視頻幀分辨率相差不多時,匹配效果較好,衛星影像在分辨率倍數相差20倍時效果較差,航空影像在分辨率倍數相差20倍以上時效果較差,因此本文推薦基準影像采用時相接近且分辨率相差10倍以內的航空正射影像或分辨率相差4倍以內的衛星正射影像圖。

表1 無人機視頻影像與衛星、航空正射影像匹配實驗結果Tab.1 Matching experiment results of UAV video frames with satellite and aerial orthophotos
在完成視頻關鍵幀的幾何多項式糾正后,即可基于地理坐標對關鍵幀進行融合處理,生成一整幅影像。常用的圖像融合方法包括加權平均法、漸入漸出法、小波變換法和金字塔分解法等,由于視頻幀覆蓋范圍較小且色彩均勻,為了滿足實時融合需求,采用運算速度較快的加權平均融合方法對關鍵幀進行融合:
(7)
式中,f(x,y)為融合后關鍵幀像素值;f1(x,y),f2(x,y)分別為左右2幀待融合關鍵幀像素值;w1,w2為加權值,w1∈(0,1),w2∈(0,1),且w1+w2=1,本文加權值均取0.5。實驗效果如圖6所示。從圖6中可以看出,加權平均融合方法可以很好地消除拼接縫,實現視頻幀間的平滑過度。

(a) 直接疊加效果

(b) 融合效果圖6 視頻幀融合效果Fig.6 Effect of video frames fusion
關鍵幀實時融合的常規思路是每處理一幀就與前面所有已經融合后的影像融合,但隨著影像的增多,這種方法運算速度會越來越慢,為了滿足實時融合的需求,采取分批融合策略,每次只融合10幀,接著以新的一幀作為起始幀繼續融合,分批融合后的影像在新的線程中再次融合,2個線程同時進行保證關鍵幀融合的時效性。
本文采用2019年11月在四川紅原縣附近獲取的無人機視頻數據作為試驗數據,視頻數據由彩虹4型無人機搭載光電吊艙獲取,分辨率為1 920 pixel×1 080 pixel,地面分辨率為0.62 m,分為3條航帶,面積約為12 km2;衛星正射影像圖采用天地圖Level_18級影像,數據獲取時間為2016年,分辨率為0.59 m;航空正射影像圖為2018年10月獲取,分辨率為0.5 m。
試驗環境是Windows10 64位系統,硬件配置為Intel Xeon CPU E5-1643 v4@3.40 GHz,內存為32 GB。
在試驗過程中,將上述算法與三維地理信息場景進行集成,試驗結果如圖7所示。圖7中,飛機為彩虹4型無人機模型,大場景底圖為天地圖影像,矩形底圖為航空正射影像圖,條帶狀為無人機視頻實時處理結果。

圖7 無人機地理視頻影像實時拼接界面Fig.7 Real-time mosaic interface of UAV geographic video frames
(1) 基于衛星正射影像圖的視頻幀拼接
采用上述方法實現的基于衛星正射影像圖的視頻幀拼接效果如圖8所示。從圖8中可以看出,整體拼接效果較好,但存在多處局部細節拼接錯位的問題(圖中紅色圓圈標識處),主要是因為視頻幀與衛星影像時相相差較多,造成匹配的特征點效果較差。

(a) 整體拼接效果

(b) 細節1

(c) 細節2

(d) 細節3圖8 基于衛星正射影像圖的視頻幀拼接效果Fig.8 Effect of video frame mosaic based on satellite orthophoto
(2) 基于航空正射影像圖的視頻幀拼接
基于航空正射影像圖的視頻幀拼接效果如圖9所示。
從圖9中可以看出,整體拼接效果較好,且局部細節拼接效果也較好,除了圖中紅色圓圈標識外,其他部分很少有錯位問題。拼接效果明顯優于基于衛星正射影像圖的拼接結果,主要原因是航空正射影像成像與視頻成像機制較為接近且試驗所用數據時相較為接近,匹配效果較好,這也與1.4.3節實驗結果一致。

(a) 整體拼接效果

(b) 細節1

(c) 細節2

(d) 細節3圖9 基于航空正射影像圖的視頻幀拼接效果Fig.9 Effect of video frame mosaic based on aerial orthophoto
通過統計拼接成果中關鍵目標的拼接完整度,可更加客觀地分析2個實時拼接方法的優劣,試驗區域內具有明顯特征的地物包括房屋、道路、河流和橋梁等,由于單幀影像的地面覆蓋范圍為1 190.4 m×669.6 m,房屋、橋梁等小地物一般都在一幀影像上,因此本文選用道路和河流作為關鍵目標統計,以航空正射影像底圖中的道路和河流作為參考,分別統計出現錯位地物的視頻關鍵幀幀數,其中基于衛星正射影像圖的視頻幀拼接方法的錯位視頻關鍵幀43幀,基于航空正射影像圖的視頻幀拼接方法的錯位視頻關鍵幀9幀,本次試驗共處理162幀視頻關鍵幀,因此基于衛星正射影像圖的視頻幀拼接方法準確率為73.5%,基于航空正射影像圖的視頻幀拼接方法準確率為94.4%。
在試驗過程中,統計各個處理步驟耗時情況,如表2所示。從表2可以看出,2次試驗從視頻關鍵幀提取到關鍵幀兩兩融合平均總耗時1.315秒/幀,本文彩虹4型無人機巡航速度為120 km/h,依據1.2節公式按75%重疊度估算相鄰關鍵幀時間間隔為5.02 s,即視頻幀拼接的處理時間小于關鍵幀的提取時間,因此在實時處理過程中不會造成阻塞,保證了拼接的實時性。

表2 實時拼接各處理步驟耗時統計表Tab.2 Time consumption of each processing step of real-time mosaic 單位:秒/幀
本文提出了一種無人機地理視頻影像實時拼接的整體流程和方法,通過開展基于衛星和航空正射影像圖的視頻幀實時拼接試驗,驗證了該方法的可行性。首先,提出了一種基于視頻地理編碼數據的關鍵幀實時提取方法,該方法可快速實時提取滿足重疊度要求的視頻關鍵幀,減少拼接算法冗余度。采用ORB特征提取與匹配算法,保證了該方法的實時性,同時基于四叉樹的FAST角點均勻提取策略,從很大程度上解決了特征點分布不均勻、重疊較多的問題,提高了多項式幾何糾正的精度。通過異源光學遙感影像匹配實驗,分析了視頻幀實時拼接所用基準影像的分辨率、時相要求,為本文算法的實際應用提供借鑒。最后,在實時拼接試驗過程中,通過統計各個處理步驟耗時情況,進一步驗證了本文方法的時效性。隨著高分辨率衛星遙感技術的發展,高清地圖數據將快速更新,這也為本文方法在應急測繪、動態監測等領域的應用提供支撐。目前本文方法已在國家應急測繪保障能力建設項目中應用,在紅原飛行測試中取得了較好效果。