毛明洋,韓松臣,梁斌斌,2
(1.四川大學空天科學與工程學院,成都 610065;2.四川川大智勝軟件股份有限公司,成都 610045)
無人飛行器的定位導航中,衛星導航一直占據主導地位。但衛星導航的定位精度和范圍受到衛星覆蓋精度范圍影響。當衛星信號受到電子干擾或多路徑效應時,導航精度下降甚至可能會失效。高度依賴衛星導航的無人飛行器定位導航面臨著挑戰。最近,卷積神經網絡已成功應用于圖像分類和視覺位置識別領域。用于幾何匹配的卷積神經網絡也被提出,使用神經網絡實現無人飛行器視覺定位成為可能。
基于視覺的無人飛行器導航定位一直被廣泛研究。一些研究通過圖像匹配方式進行導航定位。Xue等采用一個孿生神經網絡,輸入無人飛行器俯視圖和附近衛星地圖,通過相似性判斷無人飛行器在衛星地圖中的位置;Choi等使用無人飛行器俯視圖像和參考圖像進行分割建筑物,得到建筑物比率來進行定位,在未知位置和方向的情況下估計位置;Kim等提出了跨視角的地空圖像匹配方法,使用衛星圖像作為先驗知識來對地面進行姿態和定位;Yang等提出了一種基于深度神經網絡的回歸方法,并結合了基于3D結構的計算機視覺方法,通過單個訓練模型成功地估計了各種城市場景中的相對相機姿勢。這些方法能夠完成搜索匹配問題,但對于視覺導航來看,拓撲定位方法著重于為查詢圖像提供帶有有限且離散化位置信息的標簽,并不能提供連續且準確的位姿估計。
得益于衛星地圖的廣泛使用且易于獲取,通過使用無人飛行器視角圖像與衛星基準地圖進行配準,通過圖像關系映射出空間位置關系,從而獲得無人飛行器的絕對定位(經緯度、高度、偏航角度等)成為一種新的可能。Shetty等考慮到衛星圖與無人飛行器視角圖是不同視角拍攝,所以采用基于圖像的多視圖定位,輸入無人飛行器視角圖片與衛星地圖,通過卷積神經網絡回歸輸出無人飛行器位姿,提供了一個很好的思路。Patel等和Goforth等也做了相關研究,Patel等使用互信息圖像配準技術,Goforth等通過卷積神經網絡提取特征,使用相似性最小損失方式配準圖片,都是比較成功的使用預先存在的衛星圖像與無人飛行器實時圖像對比定位的方法例子。一些傳統步驟是基于特 征 點 的 傳 統 稀 疏 特 征(SURF、SIFT、ASIFT等)檢測提取,剔除不正確匹配,再對全局幾何變換進行穩健估計。但這些方法的主要挑戰在于衛星地圖與真實圖像之間的巨大差異:環境結構的變化,成像方式不同,衛星圖高于地平面的結構產生的更大的透視效果,不同光照條件和季節變化等,都給圖像配準帶來了困難,常常匹配失敗。
Rocco等首次提出了一種用于幾何匹配的深度網絡體系結構,在差異較大圖像中也獲得了較好的效果,證明了深度學習在圖像配準中的優勢。Park等在Rocco等的基礎上通過將雙向估計應用在航空影像的匹配問題上,證明了其對于處理航空影像問題的可能性。Goforth與我們的方法相似,采用幾何配準網絡,找到最優的平移、旋轉、縮放來確定無人飛行器的全局位置和航向,但他沒有探討0-360°偏航角度和一定范圍的俯仰角的傾斜情況。
基于前人研究,本文提出了一種基于圖像配準的無人飛行器定位方法,在室外環境中實現跨場景無人飛行器視覺定位導航。整體來說,該方法包括兩個步驟。首先,在基準衛星地圖中截取初始估計位置對應衛星圖片,通過深度學習配準網絡將當前無人飛行器圖像與存儲在飛行器中的基準衛星地圖進行圖像配準,得到圖像的幾何變換關系Rt;然后通過得到的Rt以及基準地圖信息,得到當前無人飛行器的經緯度、高度、偏航角度,并通過對無人飛行器的連續運動圖像配準實現無人飛行器的連續視覺定位。
通過無人飛行器底部攝像頭,在飛行過程中進行連續圖像拍攝,我們認為拍攝真實圖像與衛星地圖成仿射變換關系。本文先通過一個網絡分別提取兩幅圖像的圖像特征,由于圖像成像和季節等變化導致特征存在著較多差異,對于這種情況,需要先對兩幅特征圖進行相關特征的重分布,減少不相似特征;再進行特征圖關聯,最后通過一個回歸網絡,回歸這兩者仿射變換參數。
具體圖像配準網絡由三階段組成:①分別輸入衛星圖像和無人飛行器視角圖像,通過由卷積層組成的孿生網絡架構,提取特征圖F和F;②將兩幅特征圖進行特征重分配,并通過計算余弦相似度特征生成一個關聯對應特征圖C;③通過卷積網絡和全連接網絡組成幾何變換參數回歸網絡,直接輸出幾何模型的參數,輸出用于仿射變換的6D向量[,,t,,,t]。圖1顯示了配準網絡的總體結構圖。

圖1 配準網絡結構圖
本文使用ResNeXt101作為特征提取網絡提取特征,輸入圖像大小為3×256×256。為了獲得更好的特征圖,考慮提取layer2與layer3的特征圖,將layer2特征圖從512×32×32下采樣為512×16×16,與layer3同一大小,進行通道連接。這樣融合不同卷積層的特征,使網絡同時關注不同類型特征。
通過融合不同卷積層的特征圖得到兩個F和F。由于衛星地圖與真實地圖存在差異,為了降低差異,關注相似特征,對F和F分別進行特征重分布,分別得到F和F特征圖。最后計算余弦相似度特征圖C:

為了減少全連接層的參數量,先使用卷積+批歸一化+ReLU激活函數,使用三個這樣的模塊逐漸降低參數量,最后接上一個全連接層,回歸仿射變換的6D向量=[,,t,,,t],參數回歸網絡模塊如圖2所示。

圖2 參數回歸圖
本文使用預測值與真值的均方誤差作為網絡的損失函數,為網絡預測值,^為真值。

轉換參數的回歸,由于本文采用仿射變換,它有6dof以及保留直線的能力。對于航拍圖像匹配領域,它不會產生較大的直線失真(如道路和建筑物的邊界)。

其中=·cos,=-·sin,=·sin,=·cos,s為縮放比例,為偏航角度,t為方向平移系數,t為方向平移系數。
把無人飛行器視角圖像與衛星地圖之間的關系看成仿射變換矩陣[,,t,,,t],由仿射變換得到仿射變換參數,其中代表的縮放比例是在高度方向上,旋轉角度為視角圖像相對于初始位置的航片角度,t、t對應相對于基準圖像中點位置偏移長度。通過得到的仿射變換參數計算無人飛行器視角圖像相對于選取的基準衛星地圖的物理空間4dof位置與航向角度[、、、],再獲取基準圖像像素點256×256,對應物理長度為:

其中p,p,p,p為初始點參數,即在已知初始位置通過圖像的配準對齊得到無人飛行器在基準衛星地圖中位置。得到配準位置,即得到無人飛行器在地圖中的絕對位置和航向角度,完成單次視覺定位。將無人飛行器此刻位置對應參考衛星地圖位置的圖像和下一時刻無人飛行器視角圖像作為下一次配準輸入,完成無人飛行器的連續視覺定位,如圖3所示。

圖3 視覺定位圖
本文建立了12組共12×2000張的無人飛行器視角圖片和12張對應飛行范圍的基準數字地圖。輸入無人飛行器視角圖片與基準衛星地圖中對應位置截取的小衛星地圖實現。本文數據來自谷歌地球中三維運動圖像和谷歌地圖二維衛星地圖圖像制作,訓練集、驗證集、測試集的比例為6∶2∶4。同時,為了增加對于真實環境情況的效果,本文也測試了真實環境視頻,使用DJIMatrice 600 Pro多旋翼無人飛行器和一個朝下的相機以20FPS的速度提供圖像,RTKGPS系統和IMU的值作為真實值,和對應衛星地圖來測試真實環境效果。
本文對視覺里程計和配準網絡分別進行了訓練,訓練環境為Ubuntu18.04,Python3.6,Pytorch0.4,使用GTX1080Ti作為實驗訓練平臺。網絡使用訓練集訓練,采用Adam優化方法,批量大小為16,學習率=0.0001,200次迭代訓練。
在圖像配準實驗中,為了更好地評估本文的網絡,使用Park等的數據集進行評估。在定位測試中,一共使用4條三維虛擬路徑和1條實拍路徑進行測試。這些測試路徑包括不同城市、不同高度情況來評估視覺定位能力。虛擬路徑中包含1條長達15公里的路徑,能夠很好地評估方法在長距離導航的能力,驗證長距離飛行定位的魯棒性。在每段路程平均2 km左右的飛行航程,一張衛星基準地圖平均只占不到40 Mb的大小,可以輕松存儲在無人飛行器上。
本文測試了配準網絡的同源圖像配準性能,也測試了無人飛行器視角圖像與衛星圖像的配準性能。
使用PCK作為評價指標:

~是預測輸出點,p是對應的真值,是兩者之間的距離。在對谷歌地球數據集的實驗中,對PCK采用了τ=0.01、τ=0.03、τ=0.05這三種設置,τ越低表示評估越嚴格,PCK評估值越高效果越好。本文使用谷歌地圖數據集訓練并測試,進行定量評估測試PCK。
由表1可知,本文提出的方法在=0.01、=0.03和=0.05上均達到了很有競爭力的結果,說明本文提出的網絡對于圖像配準具有較好的性能。

表1 配準網絡PCK標準評價表
為了說明網絡在無人飛行器圖像與衛星圖像之間的配準效果,在本文的數據集上訓練網絡并測試性能。對于無人飛行器拍攝圖像與對應衛星地圖,本文分別對無人飛行器拍攝圖像、衛星地圖圖像進行單獨測試,和使用無人飛行器拍攝圖像配準衛星地圖進行測試,驗證本文網絡的性能,對于同源圖像與非同源圖像,本文分別測試了配準網絡對于兩者的性能,結果見表2。

表2 配準網絡不同圖片PCK評價表
由配準網絡不同圖片PCK評價表可知,配準網絡的同源圖像配準具有較高的性能,=0.05與=0.03對應值均超過了95%,其中無人飛行器與圖像衛星地圖在=0.05與=0.03的配準效果也達到了85%,在=0.01的精度上為40.12%,這主要是由于無人飛行器視角圖像拍攝存在著傾斜角度,在仿射變換下無法進行像素級的對齊,因此存在偏差,但具有一定穩定性。網絡對于同源圖像,配準方法能夠很精確地配準,而對于非同源圖像也有很強的魯棒性。
為了驗證本文方法在視覺導航中的性能,對測試數據集做了定量測試,測試了經度、維度和高度方向的性能,統一使用長度標準計量單位米作為比較;同時也測試了偏航角(取值±180°)。其中包含3條短距離測試路徑,平均長度2公里,這條路徑具有±180°的偏航角度,以及包含著±10°的俯仰角度和滾轉角度,用于驗證飛行抖動較大時的性能;1條15公里的長距離測試路徑,用于長距離飛行下方法的穩定性;1條1公里真實飛行路徑,是真實無人飛行器拍攝路徑,用于驗證方法在真實條件下的定位性能。測試結果如表3所示。
表3的結果顯示,針對這3條短距離路徑,四個評價指標中有三個取得了最差的性能,符合我們的預期,說明飛行抖動對網絡性能有較大影響。但在經緯度方向誤差均未超過10米,且偏航角度偏差不到5°的情況下,已經能夠滿足一般通用無人飛行器飛行的定位要求。

表3 不同路徑下的視覺定位性能評價表
圖4為其中一條路徑視覺定位對比圖。在15公里長距離路徑測試中,無人飛行器正確運行完全程,驗證了網絡對于長時間定位的魯棒性,具有較高的絕對定位性能。網絡并沒有在真實路徑中進行訓練,但在測試中,我們卻得到了最好的經緯度和高度方向上的性能,一個是真實穩定飛行,穩定飛行時俯仰角度和滾轉角度一般不會超過±10°,這個結果也是和長距離飛行較為接近;另一方面也說明網絡對于未見過的真實圖像也具有很好的定位導航效果。根據表3可以得出,本文提出的方法在不同路徑下的視覺定位均具有較好的性能,即使在長距離長時間定位也不會存在漂移,在沒有訓練過的真實環境中也能很好地進行視覺定位。

圖4 視覺定位對比圖
如今多數無人飛行器飛行定位高度依賴于衛星導航,當衛星導航出現故障或被干擾,可能會導致導航失敗。本文提出了一種基于圖像配準的無人飛行器定位方法,借助衛星地圖來估計無人飛行器的位置和姿態,在出現噪聲或不可靠的衛星導航系統信號時,幫助無人飛行器進行定位導航。
(1)基于視覺定位方法,不依賴外部信號,使用單目普通攝像頭,在衛星導航出現故障時可以獲取無人飛行器定位信息。
(2)采用衛星地圖作為基準地圖,相比于通過與已有圖像進行匹配導航,只需要獲取一定區域的衛星圖像,衛星地圖獲取方便,對無人飛行器飛行進行定位導航,更具有普遍性和現實意義。
(3)本方法在0~360°偏航角度和一定范圍的俯仰角的傾斜情況下也能夠穩定定位。對于長距離飛行沒有累計誤差,并在真實環境中具有良好的定位性能。