論文推薦|邸凱昌:視覺SLAM技術的進展與應用

《測繪學報》

構建與學術的橋樑 拉近與權威的距離

視覺SLAM技術的進展與應用

邸凱昌1, 萬文輝1, 趙紅穎2, 劉召芹1, 王潤之1, 張飛舟2論文推薦|邸凱昌:視覺SLAM技術的進展與應用

1. 中國科學院遙感與數字地球研究所遙感科學國家重點實驗室, 北京 100101; 2. 北京大學遙感與地理信息系統研究所, 北京 100871

收稿日期:2017-11-20;修回日期:2018-03-28

基金項目:國家重點研發計劃(2016YFB0502102);國家自然科學基金面上項目(41471388)

第一作者簡介:邸凱昌(1967-), 男, 博士, 研究員, 博士生導師, 主要研究方向為行星遙感製圖與導航定位。E-mail:[email protected]

通信作者:張飛舟, E-mail:[email protected]

摘要:視覺SLAM技術依靠體積小、功耗低、信息獲取豐富的視覺傳感器,為未知環境下的機器人提供環境地圖及自身在地圖中的定位結果,對機器人自動化、智能化應用有著重要意義。本文介紹了視覺SLAM方法的關鍵技術,總結了目前視覺SLAM的研究現狀,分析了當前視覺SLAM研究的主要趨勢,最後討論了視覺SLAM技術在深空、室內等受限環境下的應用現狀與前景。

Progress and Applications of Visual SLAM

DI Kaichang1, WAN Wenhui

1, ZHAO Hongying2, LIU Zhaoqin1, WANG Runzhi1, ZHANG Feizhou2

Abstract: Visual SLAM provides mapping and self-localization results of a robot in an unknown environment based on visual sensor, which has the advantages of small volume, low power consumption, and richness of information acquisition.Visual SLAM is critical and significant in supporting of robots' automated and intelligent applications.This paper presents the key techniques of visual SLAM, summarizes the current status of visual SLAM research, and analyzes the new trends of visual SLAM research and development.Finally, status and prospect of visual SLAM application in restricted environments, such as deep space, indoor scene and so on, are discussed.

Key words: visual SLAM feature extraction Kalman filter graph based optimization loop closure detection

同時定位與製圖(simultaneous localization and mapping,SLAM)是機器人在未知環境下自主作業的核心關鍵技術,是機器人自動化領域的研究重點[1]。未知環境下,基於機器人外部傳感器獲取的環境感知數據,SLAM為機器人構建周圍環境圖,同時提供機器人在環境圖中的位置,並隨著機器人的移動而進行環境圖的增量式構建與機器人的連續定位,是實現機器人環境感知與自動化作業的基礎。SLAM中一般採用距離傳感器作為環境感知的數據源[2]。相比雷達、聲吶等測距儀器,視覺傳感器具有體積小、功耗低、信息獲取豐富等特點,可為各型機器人提供豐富的外部環境紋理信息,因而基於視覺的SLAM成為當前研究的熱點[3]。由於相機獲取的視覺信息容易受到環境干擾,存在較大噪聲,視覺SLAM處理難度大、複雜度高。當前,獲取隨著計算機視覺技術的不斷髮展,視覺SLAM的技術水平也隨之提高,並在室內自主導航、VR/AR等領域得到初步的應用

[4-7]

1 視覺SLAM關鍵技術

視覺SLAM以相機獲取的序列圖像數據為基礎,依據圖像信息結合成像模型恢復環境與相機間的關係,隨著相機運動遞增式地確定周圍環境圖,並輸出相機在環境圖中的位置。依照視覺SLAM的一般處理流程,可分為前端處理、後端處理及閉環檢測[8-9],如圖 1。前端處理負責序列圖像數據同環境地標物的數據關聯與參數的初始化,目前主流的方式是通過序列圖像的特徵提取與匹配,實現序列圖像上的同名特徵點追蹤,進而將序列圖像上的同名觀測與環境地標點進行關聯,並初始化系統的狀態參數,是地圖遞增式構建與自主連續定位的必要前提。前端處理算法的適應性直接決定了視覺SLAM方法的穩健性[10]。後端處理負責對觀測數據進行環境圖結果與定位參數的最優估計,以獲取高精度的定位與製圖結果[11-12]。閉環檢測是SLAM系統中判別當前觀測到的環境地標是否已被觀測過的處理,是為消除長距離運動後的誤差累計而構建閉環約束的基礎[13-14]。以上三部分處理依次完成了視覺SLAM中的數據關聯、環境圖與定位參數估計及閉環優化。下面就此展開論述。

论文推荐|邸凯昌:视觉SLAM技术的进展与应用

圖 1 視覺SLAM方法基本流程Fig. 1 The flowchart of general visual SLAM

圖選項

1.1 特徵點提取與追蹤

視覺SLAM中需要將圖像觀測信息同環境進行關聯,即確定序列圖像內容與真實環境的對應關係。當前視覺SLAM中,角點特徵經常被用於序列圖像間的關聯。通過圖像間特徵點的提取與追蹤,在多幀圖像間形成空間物方點與同名像方點的對應關係。由於序列圖像獲取時相機的位置和視角不同,加之環境光照的變化,同名點在序列圖像上的外觀必然改變,這就要求特徵點表達能夠不受圖像幾何變化如旋轉、縮放、傾斜及光照亮度等變化的影響。早期,圖像特徵點的提取基本以Harris[15]、Förstner[16]等局部角點特徵提取算子為主,特徵追蹤則採用模板匹配[17-20]或是光流追蹤方法[21-22]。以上方法在相鄰圖像視角變化不大時頗為有效,若相機不規則運動導致視角變化劇烈,則難以獲得穩健的追蹤結果,甚至導致追蹤失敗。隨著以SIFT為代表的圖像局部不變特徵描述方法的興起,圖像特徵點的提取與匹配也能適應一定程度的圖像形變及光照變化,提高了視覺SLAM在複雜環境中的適用性

[23-25]。然而,SIFT算法較大的計算量限制了定位與製圖的效率,難以滿足實時性要求。為了提高處理效率,研究人員們陸續開發了SURF[26-27]、CensurE[28]、BRISK[29]、ORB[30-31]等算子。這些算子儘管性能有不同程度降低,但其效率卻得到了數倍至數十倍的提升[32-35],使得實時視覺SLAM成為現實[31]

1.2 環境圖與定位參數估計

環境感知數據中存在一定的噪聲與誤差。為獲得高精度的結果,需要從帶有噪聲的數據中估計整個系統狀態及其不確定性。研究者們將概率論原理引入研究中,分析機器人所處環境與自身位置信息中的不確定性分佈,以貝葉斯規則為基礎,構建系統狀態概率模型,結合機器人運動信息與環境觀測數據,實現環境信息與位姿參數的最優估計[36-39]。卡爾曼濾波(KF)作為一種以最小均方根誤差為準則實現線性系統最優估計的方法[40]

,被最早引入SLAM當中用於系統狀態的最優估計[41-42]。由於SLAM系統的非線性特點,需要基於Extend KF(EKF)方法用泰勒級數展開方式實現系統的線性化近似[43]。早期的SLAM研究中,基於EKF的參數估計方法佔據了主流[43-44]。然而,如果系統的非線性較強,可能造成線性化近似的誤差較大,導致EKF濾波性能的急劇降低。隨後,提出了一些改進的濾波方法如Unscented KF[46]、Cubature KF[47]、Central Difference KF[48]等,這些濾波方法可以獲得比EKF更好的逼近精度,但仍需進行線性化計算。粒子濾波基於蒙特卡洛方法,通過狀態空間傳播的隨機樣本用以近似表示概率密度函數[49],突破了高斯分佈假設限制,在視覺SLAM中得到了成功的應用[50-51]。然而這類基於濾波的參數估計方法都是基於系統的馬爾可夫性假設,未能更好地利用全體觀測數據。近年來,圖優化方法在SLAM研究中得到了廣泛的關注。圖優化方法針對全體觀測數據進行估計,並在系統估計改變時重新進行線性化近似,減小了線性化誤差,可適應更多的非線性系統,因而成為當前主流的環境圖與定位參數估計方法
[92-93]。由於圖優化方法每次優化均對所有狀態量重新進行估計,在大場景環境下過多的待估參數導致計算量過大。現有研究中主要通過儘量減少優化迭代的次數[54-56]以及分析狀態矩陣的稀疏性[57-59]來降低相應的計算量。

1.3 閉環檢測

視覺SLAM系統在缺少外部控制信息的約束時,系統不確定性逐漸增大,長時間運動後定位誤差累計較大。實際應用中,相機可能運動至之前經過的地方從而形成閉環約束,將該約束引入圖優化中可獲得全局一致的定位結果,有效降低定位誤差[60]。因而,閉環檢測對於長時間遠距離運動的視覺SLAM有著重要意義。閉環檢測的實質是判斷當前圖像內容同較早的歷史圖像內容的對應關係。早期的閉環檢測主要是通過隨機抽取歷史圖像數據同當前圖像進行特徵匹配,依據特徵的正確匹配數量確定是否存在關聯。這類方法認為所有歷史數據均可能同當前圖像存在關聯,因而隨著歷史數據的增多,計算量顯著增大,檢測效率較低[61]。後續的研究通過對歷史數據存在關聯的可能性做初步的判斷進而提高檢測效率。其中,一類方法是依靠定位結果來判斷相機是否回到之前的位置,據此確定可能存在的閉環情況

[62]。由於長時間下的定位結果誤差累計較大,該類方法實際效果不佳。另一類方法是基於圖像內容構建圖像描述詞袋模型(Bag of Words),通過圖像上出現的“單詞”組合形成描述整幅圖像的單詞向量,進而通過判斷圖像相似程度而確定可能的關聯關係[62-63]。由於此類方法判別準則是圖像中是否出現了的相應的特徵,並不考慮特徵的位置與順序,具備更強的環境適應性。

2 視覺SLAM研究新趨勢

目前視覺SLAM方法研究已取得較大的進步,在定位製圖精度與效率上可滿足部分簡單場景的應用需求。但視覺信息的獲取始終受環境紋理豐富度的影響,環境光照及不穩定的運動模式更是加大了視覺信息的處理難度,視覺SLAM在複雜環境下的運行穩健性仍待提高。當前,研究人員通過進一步挖掘圖像信息可用性,並融合其他類型傳感器數據,試圖實現更為穩健的SLAM方法,提高複雜環境下的定位與製圖適應性。

2.1 視覺多類別特徵提取與追蹤

在室內等複雜環境中,人工目標較多,圖像中具有更多的直線特徵,僅依靠點特徵提取方法不能完全利用圖像視覺信息。因而,研究人員嘗試進一步提煉圖像中的信息,提取圖像中多類別特徵,通過多類特徵集合的追蹤實現更為穩健的定位與製圖。除點特徵外,直線特徵被較多地引入視覺SLAM中

[66-69]。由於直線特徵的方向約束性強,可有效改善相機在轉彎等劇烈運動導致相鄰圖像重疊區減少而帶來的誤差快速累計[70]。若考慮多直線形成的空間平面特徵,將空間平面約束加入系統最優估計,則可帶來更高的定位製圖精度[71]。由於新類別特徵的加入,需要構建新的多特徵追蹤及優化模型,進而準確估計這些特徵結果的不確定性。

2.2 直接法SLAM

視覺SLAM中的特徵提取與追蹤算法複雜,計算耗時,且只能利用部分圖像信息,更多的紋理信息被丟棄。直接法SLAM是直接利用圖像本身的明暗變化信息,跳過特徵提取與匹配步驟,以圖像間最小光度誤差為準則實現狀態參數的最優估計,可充分利用圖像信息實現定位與製圖,在部分缺少明顯紋理的區域也能獲得較好的定位製圖結果[72]。不同於基於特徵的視覺SLAM方法,直接法SLAM不僅可獲得稀疏地圖[73],也可獲得半稠密[74]和稠密地圖[75]。由於減少了特徵提取與追蹤的過程,直接法具備較高的運行效率,可用於實時性較高且計算資源有限的場景。然而,直接法SLAM是基於圖像同名區域灰度不變的假設,受環境光照、相機曝光等因素影響,在圖像光度變化劇烈的場景中容易導致處理失敗,一定程度上限制了其應用範圍。

2.3 多傳感器融合的SLAM

視覺SLAM方法依靠相機獲取的環境紋理信息作為數據源,其處理效果直接受環境紋理條件影響,難以在紋理貧乏區域中可靠地工作。為了完成複雜環境下的穩健定位與製圖,提升算法在實際應用中的性能,研究人員通過多類型的傳感器的集成,融合各類別傳感器數據,進而彌補各自數據缺陷以提高視覺SLAM的穩健性與精度。IMU具備完全自主的測量特性,可穩定獲得定位定姿數據,能有效彌補視覺SLAM在貧紋理區域的環境信息缺失,同時高精度的視覺定位定姿結果可有效改正IMU快速漂移,提升系統定位與製圖的精度[76],因而成為常見的用於同相機進行融合的傳感器[77-80]。激光測距儀同樣具備體積小、功耗低等優點[81],同單相機集成進行SLAM能有效確定環境圖模型尺度,並修正連續定位中的尺度漂移,可形成便攜穿戴式的定位導航系統,滿足救護員、宇航員等人員的自主定位需要[82-84]。近年來,以Kinect為代表的深度相機以其具備直接獲取豐富的空間三維信息的能力而受到廣泛關注,該類傳感器基於結構光、光編碼或飛行時等測量原理,以主動方式測量空間三維信息,可直接獲得局部三維地圖,成像受環境條件影響小

[85]。通過深度相機同可見光相機的集成形成RGB-D相機用於SLAM中,可同時獲得環境紋理與空間稠密幾何信息,進而處理得到稠密環境圖數據,且空間三維信息的引入提高了SLAM觀測數據質量,有效提升了SLAM的穩健性與精度[86-89]。多類別傳感器的引入加強了環境感知數據的豐富度,但同時也意味著加入了新的誤差源,若要獲得最優估計結果需要在分析各自數據源誤差特性基礎上構建多傳感器最優估計模型,以實現多傳感器融合的SLAM。

2.4 基於深度學習的視覺SLAM

當前人工智能領域,深度學習以超越傳統機器學習方法的識別性能而在圖像目標識別分類、語音識別等方面得到了飛速的應用[90-92]。目前已有將深度學習引入視覺SLAM的相關研究,這些研究利用深度學習在深度神經網絡中學習到的高層次特徵用於圖像幀間的位姿估計[93-95]與閉環檢測[96-98]。在位姿估計方面,通過引入端對端的深度學習方法,使得視覺圖像幀間的位姿參數解算無須特徵匹配與複雜的幾何運算,可直接輸入相鄰幀圖像快速得到幀間相對位姿參數。閉環檢測方面,利用深度學習的強大識別能力,提取圖像更高層次的穩健特徵,使得系統能對視角、光照等圖像變化具備更強的適應能力,提高閉環圖像識別能力。當前,深度學習在提升視覺SLAM算法的穩健性方面展現了巨大的潛力,一定程度可改善傳統方法中人工特徵設計帶來的應用侷限性。但是,深度學習需要數量巨大的訓練樣本庫,且工作場景需同樣本庫接近,否則性能下降明顯。這些問題使得基於深度學習的視覺SLAM的總體表現還未能超越傳統方法。未來隨著深度學習理論與方法的不斷髮展,深度學習必將在視覺SLAM中發揮更為重要的作用。

3 視覺SLAM典型應用

當前,隨著衛星定位導航技術的普及與應用,相應的定位導航服務可通過導航衛星接收機而獲得。然而,在太空、地下、室內等無導航衛星信號的環境中,機器人的定位導航與環境感知面臨更大挑戰。視覺SLAM作為一種自主定位與環境感知的重要手段,可為機器人的自主作業提供基礎數據。本節針對視覺SLAM在深空探測、室內定位導航及大場景下的自主導航現狀進行總結和討論。

3.1 深空探測

20世紀50年代末,隨著以美國和前蘇聯為代表的航天大國開啟了與深空探測的征程,先後發射了大量的探測器用於對各類天體的探測。到目前為止,人類已向月球與火星發射了月球車與火星車用於著陸巡視探測。由於行星表明環境複雜,與地球迥然不同,這些探測車需要一定程度的自動化與智能化,以面對惡劣作業環境的挑戰。早期的探測車技術尚不成熟,只能小範圍內執行簡單的觀測任務。隨著探測範圍的擴大與任務複雜度的提升,要求探測車具備較強的自主定位與環境感知能力,以滿足安全避障、任務規劃的需要。2003年發射的美國“機遇號”與“勇氣號”火星探測車,以及2011年發射的“好奇號”火星車均配備了雙目立體導航相機,通過序列圖像視覺測程方法修正了航跡推算方法的定位誤差,併為探測車提供了安全避障與路徑規劃所需的基礎地圖結果,在探測車穿越崎嶇困難區域時提供了高精度定位與製圖結果,為火星車探測任務的執行提供了不可替代的重要作用

[99-102]。我國於2013年發射的“嫦娥三號”著陸器攜帶“月兔號”月球車實現了在月面的著陸巡視探測。著陸過程中著陸器上降落相機獲取的序列圖像被用於著陸點位置評估[103]及著陸軌跡的恢復[104],所生成著陸區的高精度地圖[105],成為嫦娥三號任務規劃的重要基礎數據。“月兔號”同樣配置了一對用於環境感知的立體導航相機,通過站點間立體圖像的匹配實現了月球車在探測站點上的高精度視覺定位(如圖 2),修正了GNC系統航跡推算定位結果誤差,將定位精度由7%提升至4%[105-106],如圖 3。由於深空探測任務壽命有限,探測車幾乎不會回到已行駛的路線上,因而難以構成閉環約束脩正累計誤差,未來隨著探測任務要求的不斷提高,須融入其他觀測信息,提升定位製圖處理的穩健性與精度,以滿足新一代自動化與智能化探測的需要。

论文推荐|邸凯昌:视觉SLAM技术的进展与应用

圖 2 玉兔號導航相機站間圖像匹配Fig. 2 Matching results in cross-site navcam images of Yutu Rover

圖選項

论文推荐|邸凯昌:视觉SLAM技术的进展与应用

圖 3 玉兔號月球車視覺定位軌跡Fig. 3 Traverse of Yutu Rover based on visual localization

圖選項

3.2 室內定位導航

目前的室內定位主要是通過在室內中佈設WiFi或藍牙基站,依據接收機接收的多基站無線信號的強度分佈來估計當前的室內位置[107-108]。由於室內環境十分複雜,存在較多幹擾無線信號的因素,使得基於無線信號的室內定位結果精度不夠準確,容易出現樓層定位錯誤等問題,難以滿足高精度的室內定位需要。相比無線信號,室內視覺圖像信息豐富、直觀,在無線信號無法覆蓋區域視覺SLAM能夠進行自主定位導航,不受外部基站佈設的限制,具備更強的環境適用性。儘管已有不少室內視覺定位的相關研究,但目前實際應用於室內定位的視覺SLAM系統還比較少。2014年Google發佈的Tango是首款面向普通用戶的、用於未知室內環境感知的產品。Tango通過集成RGB-D相機與IMU,在實現定位的同時完成對未知環境的稠密三維重建

[109],可用於室內的導航定位及VR、AR等應用[110-112]。隨後微軟發佈的HoloLens混合顯示頭盔採用類似的技術路線,同時加入手勢識別與語音識別,實現人與周圍環境的全方位交互[113-114]。儘管視覺定位具備滿足室內高精度定位需求的潛力,但當前的視覺定位技術還難以完全應對室內環境的高動態性與複雜性,同時要實現高精度的長距離室內定位還需藉助高精度室內地圖進行定位校正,以至目前還沒有相應成熟的應用。未來,隨著視覺圖像處理水平的提高,視覺SLAM技術必將在室內定位領域發揮越來越重要的作用。

3.3 大場景下的自主導航

近來十分熱門的無人機以其機動性好、生存能力強、可遠距離操作等特點而在電力巡查、地質勘探、森林防火等領域迅速得到應用。這些無人機在GPS、北斗等衛星導航信號支持下以預設任務航線進行作業,實現了遠距離大場景下的高效作業。然而,面對複雜的未知場景,這些無人機大部分尚不具備成熟的自主避障與路徑規劃能力,只能依靠操作員的人工控制完成飛行任務,自動化與智能化程度還不高。大疆創新將雙目視覺傳感器引入“精靈”系列無人機,利用視覺SLAM的環境圖結果,實現了無人機的空中避障與路徑自主規劃,提升了無人機在複雜環境下的生存與自主作業能力

[115]。當前,隨著衛星導航信號干擾與誘騙技術的出現,軍事飛行器如軍用無人機、導彈等要求具備完全自主定位導航能力,以擺脫對衛星導航信號的依賴[116-117]。視覺SLAM技術的迅速發展為飛行器在大場景下的自主導航提供了新的技術支撐,然而,飛行器的快速運動給視覺圖像帶來了不同程度的質量退化,也對定位算法的實時性與穩健性提出了更高的要求。

4 結論

當前,隨著計算機視覺、數字圖像處理、人工智能等技術的進步,視覺SLAM的研究和應用得到迅速發展。然而,視覺SLAM始終受環境紋理與光照條件的影響,複雜環境下的定位與製圖的穩健性仍是挑戰。目前的研究中,一方面充分利用圖像信息,儘可能多的提取圖像特徵;另一方面通過融合深度相機、IMU等其他類別傳感器,滿足視覺SLAM在困難條件下的穩健定位製圖需要。儘管目前的視覺SLAM算法在複雜場景下處理的穩健性還有待提高,但已經展露了巨大的潛力,未來隨著技術水平的提升,必將在機器人自動化、智能化領域發揮重要的作用。

【引文格式】邸凱昌, 萬文輝, 趙紅穎, 等. 視覺SLAM技術的進展與應用[J]. 測繪學報,2018,47(6):770-779. DOI: 10.11947/j.AGCS.2018.20170652

论文推荐|邸凯昌:视觉SLAM技术的进展与应用

院士論壇︱李德仁院士:展望大數據時代的地球空間信息學(論文版)

學術前沿| 龔健雅院士:攝影測量與深度學習

李德仁院士:老師教我做人做學問

院士論壇| 楊元喜:微PNT與綜合PNT

院士論壇| 楊元喜:我國海洋大地測量基準與海洋導航技術研究進展與展望(英文版)

院士論壇| 龔健雅:高分辨率光學衛星遙感影像高精度無地面控制精確處理的理論與方法

院士論壇 | 龔健雅:中國高分辨率對地觀測系統的成長與突破

書訊 | 楊元喜院士:自適應動態導航定位(第二版)

李德仁院士論夜光遙感數據挖掘

權威 | 專業 | 學術 | 前沿

微信公眾號中搜索「測繪學報」,關注我們,長按上圖二維碼,關注學術前沿動態。

進群請備註:姓名+單位+稿件編號


分享到:


相關文章: