權(quán)美香,樸松昊,2,李國
(1.哈爾濱工業(yè)大學(xué) 多智能體機器人實驗室,黑龍江 哈爾濱 150000;2. 哈爾濱工業(yè)大學(xué) 多智能體機器人實驗室,黑龍江 哈爾濱 150000)
視覺SLAM綜述
權(quán)美香1,樸松昊1,2,李國1
(1.哈爾濱工業(yè)大學(xué) 多智能體機器人實驗室,黑龍江 哈爾濱 150000;2. 哈爾濱工業(yè)大學(xué) 多智能體機器人實驗室,黑龍江 哈爾濱 150000)
視覺SLAM指的是相機作為唯一的外部傳感器,在進行自身定位的同時創(chuàng)建環(huán)境地圖。SLAM創(chuàng)建的地圖的好壞對之后自主的定位、路徑規(guī)劃以及壁障的性能起到一個決定性的作用。本文對基于特征的視覺SLAM方法和直接的SLAM方法,視覺SLAM的主要標(biāo)志性成果,SLAM的主要研究實驗室進行了介紹,并介紹了SIFT,SURF,ORB特征的檢測與匹配,關(guān)鍵幀選擇方法,并對消除累積誤差的閉環(huán)檢測及地圖優(yōu)化的方法進行了總結(jié)。最后,對視覺SLAM的主要發(fā)展趨勢及研究熱點進行了討論,并對單目視覺SLAM,雙目視覺SLAM,RGB_D SLAM進行了優(yōu)缺點分析。
視覺同步定位與創(chuàng)建地圖;單目視覺;RGB_D SLAM;特征檢測與匹配;閉環(huán)檢測
移動機器人的一個基本任務(wù)是在給定環(huán)境地圖的條件下確定其所在的位置,然而環(huán)境地圖并不是一開始就有的,當(dāng)移動機器人進入未知的環(huán)境時,需要通過自身的傳感器構(gòu)建3-D環(huán)境地圖,并且同時確定自身在地圖中的位置,這就是SLAM(simultaneous localization and mapping)問題,它是運動恢復(fù)結(jié)構(gòu)(structure from motion,SfM)的實時版本。
相機作為唯一外部傳感器的SLAM被稱為視覺SLAM。由于相機具有成本低,輕 ,很容易放到商品硬件上的優(yōu)點,且圖像含有豐富的信息,視覺SLAM得到了巨大的發(fā)展。根據(jù)采用的視覺傳感器不同,可以將視覺SLAM主要分為三類:僅用一個相機作為唯一外部傳感器的單目視覺SLAM;使用多個相機作為傳感器的立體視覺SLAM,其中雙目立體視覺的應(yīng)用最多;基于單目相機與紅外傳感器結(jié)合構(gòu)成的傳感器的RGB-D SLAM。
視覺SLAM算法可根據(jù)利用圖像信息的不同分為基于特征的SLAM方法和direct SLAM方法。下面就這兩種方法對單目視覺SLAM與RGB_D SLAM進行簡要的介紹,并介紹視覺SLAM的標(biāo)志性成果以及國內(nèi)外主要的研究單位。
1.1 基于特征的SLAM方法
基于特征的視覺SLAM方法指的是對輸入的圖像進行特征點檢測及提取,并基于2-D或3-D的特征匹配計算相機位姿及對環(huán)境進行建圖。如果對整幅圖像進行處理,則計算復(fù)雜度太高,由于特征在保存圖像重要信息的同時有效減少了計算量,從而被廣泛使用。
早期的單目視覺SLAM的實現(xiàn)是借助于濾波器而實現(xiàn)的[1-4]。利用擴展卡爾曼濾波器(extended Kalman filter,EKF)來實現(xiàn)同時定位與地圖創(chuàng)建,其主要思想是使用狀態(tài)向量來存儲相機位姿及地圖點的三維坐標(biāo),利用概率密度函數(shù)來表示不確定性,從觀測模型和遞歸的計算,最終獲得更新的狀態(tài)向量的均值和方差。但是由于EKF的引進,SLAM算法會有計算復(fù)雜度及由于線性化而帶來的不確定性問題。為了彌補EKF的線性化對結(jié)果帶來的影響,在文獻[5-7]里將無跡卡爾曼濾波器( Unscented Kalman filter,UKF)或改進的UKF引入到單目視覺SLAM中。該方法雖然對不確定性有所改善,但同時也增加了計算復(fù)雜度。此外,文獻[8-9]利用Rao-Blackwellized粒子濾波(Particle filter)實現(xiàn)了單目視覺SLAM。該方法避免了線性化,且對相機的快速運動有一定的彈力,但是為了保證定位精度,則需要使用較多的粒子,從而大大提高了計算復(fù)雜度。
之后基于關(guān)鍵幀的單目視覺SLAM[10-13]逐漸發(fā)展起來,其中最具代表性的是parallel tracking and mapping(PTAM)[10],該論文提出了一個簡單、有效的提取關(guān)鍵幀的方法,且將定位和創(chuàng)建地圖分為兩個獨立的任務(wù),并在兩個線程上進行。文獻[13]是在關(guān)鍵幀的基礎(chǔ)上提出的一個單目視覺SLAM系統(tǒng),將整個SLAM過程分為定位、創(chuàng)建地圖、閉環(huán)3個線程,且對這3個任務(wù)使用相同的ORB特征,且引進本質(zhì)圖的概念來加速閉環(huán)校正過程。
微軟公司推出的Kinect相機,能夠同時獲得圖像信息及深度信息,從而簡化了三維重建的過程,且由于價格便宜,基于RGB_D數(shù)據(jù)的 SLAM得到了迅速的發(fā)展[14-21]。文獻[18]是最早提出的使用RGBD相機對室內(nèi)環(huán)境進行三維重建的方法,在彩色圖像中提取SIFT特征并在深度圖像上查找相應(yīng)的深度信息。然后使用RANSAC方法對3-D特征點進行匹配并計算出相應(yīng)的剛體運動變換,再以此作為ICP(iterative closest point)的初始值來求出更精確的位姿。RGBD SLAM通常使用ICP算法來進行位姿估計,圖1給出了ICP算法的基本流程。文獻[20]與文獻[18]類似,不同點在于對彩色圖像進行的是SURF特征提取,并用ICP對運動變換進行優(yōu)化后,最后使用Hogman位姿圖優(yōu)化方法求出全局最優(yōu)位姿。
圖1 ICP算法流程圖Fig.1 Flow diagram of ICP algorithm
1.2 直接的SLAM方法
直接的SLAM方法指的是直接對像素點的強度進行操作,避免了特征點的提取,該方法能夠使用圖像的所有信息。此外,提供更多的環(huán)境幾何信息,有助于對地圖的后續(xù)使用。且對特征較少的環(huán)境有更高的準(zhǔn)確性和魯棒性。
近幾年,基于直接法的單目視覺里程計算法才被提出[22-25]。文獻[22]的相機定位方法依賴圖像的每個像素點,即用稠密的圖像對準(zhǔn)來進行自身定位,并構(gòu)建出稠密的3-D地圖。文獻[23]對當(dāng)前圖像構(gòu)建半稠密inverse深度地圖,并使用稠密圖像配準(zhǔn)(dense image alignment)法計算相機位姿。構(gòu)建半稠密地圖即估計圖像中梯度較大的所有像素的深度值,該深度值被表示為高斯分布,且當(dāng)新的圖像到來時,該深度值被更新。文獻[24]對每個像素點進行概率的深度測量,有效降低了位姿估計的不確定性。文獻[25]提出了一種半直接的單目視覺里程計方法,該方法相比于直接法不是對整幅圖像進行直接匹配從而獲得相機位姿,而是通過在整幅圖像中提取的圖像塊來進行位姿的獲取,這樣能夠增強算法的魯棒性。為了構(gòu)建稠密的三維環(huán)境地圖,Engel 等[26]提出了LSD-SLAM算法(large-scale direct SLAM),相比之前的直接的視覺里程計方法,該方法在估計高準(zhǔn)確性的相機位姿的同時能夠創(chuàng)建大規(guī)模的三維環(huán)境地圖。
文獻[27]提出了Kinect融合的方法,該方法通過Kinect獲取的深度圖像對每幀圖像中的每個像素進行最小化距離測量而獲得相機位姿,且融合所有深度圖像,從而獲得全局地圖信息。文獻[28]使用圖像像素點的光度信息和幾何信息來構(gòu)造誤差函數(shù),通過最小化誤差函數(shù)而獲得相機位姿,且地圖問題被處理為位姿圖表示。文獻[29]是較好的直接RGB_D SLAM方法,該方法結(jié)合像素點的強度誤差與深度誤差作為誤差函數(shù),通過最小化代價函數(shù),從而求出最優(yōu)相機位姿,該過程由g2o實現(xiàn),并提出了基于熵的關(guān)鍵幀提取及閉環(huán)檢方法,從而大大降低了路徑的誤差。
1.3 視覺SLAM主要標(biāo)志性成果
視覺SLAM的標(biāo)志性成果有Andrew Davison提出的MonoSLAM[3],是第1個基于EKF方法的單目SLAM,能夠達到實時但是不能確定漂移多少,能夠在概率框架下在線創(chuàng)建稀疏地圖。DTAM[24]是2011年提出的基于直接法的單目SLAM算法,該方法通過幀率的整幅圖像對準(zhǔn)來獲得相對于稠密地圖的相機的6個自由度位姿,能夠在GPU上達到實時的效果。PTAM[10]是由Georg Klein提出的第1個用多線程處理SLAM的算法,將跟蹤和建圖分為兩個單獨的任務(wù)并在兩個平行的線程進行處理。KinectFusion[27]是第1個基于Kinect的能在GPU上實時構(gòu)建稠密三維地圖的算法,該方法僅使用Kinect相機獲取的深度信息去計算傳感器的位姿以及構(gòu)建精確的環(huán)境3-D地圖模型。2014年提出的LSD-SLAM[26]是直接的單目SLAM方法,即直接對圖像的像素點進行處理,相比于之前的基于直接法的單目視覺里程計,不僅能計算出自身的位姿,還能構(gòu)建出全局的半稠密且精確的環(huán)境地圖。其中的追蹤方法,直接在sim3上進行操作,從而能夠準(zhǔn)確地檢測尺度漂移,可在CPU上實時運行。ORB_SLAM[13]是2015年出的比較完整的基于關(guān)鍵幀的單目SLAM算法,將整個系統(tǒng)分為追蹤、地圖創(chuàng)建、閉環(huán)控制3個線程進行處理,且特征的提取與匹配、稀疏地圖的創(chuàng)建、位置識別都是基于ORB特征,其定位精確度很高,且可以實時運行。
1.4 SLAM的主要研究實驗室
SLAM的主要研究實驗室有:
1)蘇黎世聯(lián)邦理工學(xué)院的Autonomous System Lab,該實驗室在tango項目上與谷歌合作,負責(zé)視覺—慣導(dǎo)的里程計,基于視覺的定位和深度重建算法。
2)明尼蘇達大學(xué)的Multiple Autonomous Robotic Systems Laboratory,主要研究四軸飛行器導(dǎo)航,合作建圖,基于地圖的定位,半稠密地圖創(chuàng)建等。
3)慕尼黑理工大學(xué)的The Computer Vision Group,主要研究基于圖像的3-D重建,機器人視覺,視覺SLAM等。
2.1 特征檢測與匹配
目前,點特征的使用最多,最常用的點特征有SIFT(scale invariant feature transform)[30]特征,SURT(speeded up robust features)[31]特征和ORB(oriented fast and rotated BRIEF)[32]特征。SIFT特征已發(fā)展10多年,且獲得了巨大的成功。SIFT特征具有可辨別性,由于其描述符用高維向量(128維)表示,且具有旋轉(zhuǎn)不變性、尺度不變性、放射變換不變性,對噪聲和光照變化也有魯棒性。[33-36]在視覺SLAM里使用了SIFT特征,但是由于SIFT特征的向量維數(shù)太高,導(dǎo)致時間復(fù)雜度高。SURF特征具有尺度不變性、旋轉(zhuǎn)不變性,且相對于SIFT特征的算法速度提高了3到7倍。在文獻[37-39]SURF被作為視覺SLAM的特征提取方法,與SIFT特征相比,時間復(fù)雜度有所降低。對兩幅圖像的SIFT和SURF特征進行匹配時通常是計算兩個特征向量之間的歐氏距離,并以此作為特征點的相似性判斷度量。ORB特征是FAST[40]特征檢測算子與BRIEF[41]描述符的結(jié)合,并在其基礎(chǔ)上做了一些改進。ORB特征最大的優(yōu)點是計算速度快,是SIFT特征的100倍,SURF特征的10倍,其原因是FAST特征檢測速度就很快,再加上BRIEF描述符是二進制串,大大縮減了匹配速度,而且具有旋轉(zhuǎn)不變性,但不具備尺度不變性。文獻[12-13,42-44]的SLAM算法中采用了ORB特征,大大加快了算法速度。ORB特征匹配是以BRIEF二進制描述符的漢明距離為相似性度量的。
在大量包含直線和曲線的環(huán)境下,使用點特征時,環(huán)境中很多信息都將被遺棄,為了彌補這個缺陷,從而也提出了基于邊特征的視覺SLAM[45-46]和基于區(qū)域特征的視覺SLAM[47]方法。
2.2 關(guān)鍵幀的選擇
幀對幀的對準(zhǔn)方法會造成大的累積漂浮,由于位姿估計過程中總會產(chǎn)生誤差。為了減少幀對幀的對準(zhǔn)方法帶來的誤差,基于關(guān)鍵幀的SLAM[10-13,19,29]方法被提出。
目前有幾種選擇關(guān)鍵幀的方法。文獻[10,13]里當(dāng)滿足以下全部條件時該幀作為關(guān)鍵幀插入到地圖里:從上一個關(guān)鍵幀經(jīng)過了n個幀;當(dāng)前幀至少能看到n個地圖點,位姿估計準(zhǔn)確性較高。文獻[19]是當(dāng)兩幅圖像看到的共同特征點數(shù)低于一定閾值時,創(chuàng)建一個新的關(guān)鍵幀。文獻[29]提出了一種基于熵的相似性的選擇關(guān)鍵幀的方法,由于簡單的閾值不適用于不同的場景,對每一幀計算一個熵的相似性比,如果該值小于一個預(yù)先定義的閾值,則前一幀被選為新的關(guān)鍵幀,并插入地圖里,該方法大大減少了位姿漂浮。
2.3 閉環(huán)檢測(loopclosing)方法
閉環(huán)檢測及位置識別,判斷當(dāng)前位置是否是以前已訪問過的環(huán)境區(qū)域。三維重建過程中必然會產(chǎn)生誤差累積,實現(xiàn)閉環(huán)是消除的一種手段。在位置識別算法中,視覺是主要的傳感器[3,48-50]。文獻[51]對閉環(huán)檢測方法進行了比較,且得出圖像對圖像[52-53]的匹配性能優(yōu)于地圖對地圖[54],圖像對地圖[55]的匹配方法。
圖像對圖像的匹配方法中,詞袋(bagofwords)[56]方法由于其有效性得到了廣泛的應(yīng)用[12-13,57-59]。詞袋指的是使用視覺詞典樹(visualvocabularytree)將一幅圖像的內(nèi)容轉(zhuǎn)換為數(shù)字向量的技術(shù)。對訓(xùn)練圖像集進行特征提取,并將其特征描述符空間通過K中心點聚類(kmediansclustering)方法離散化為個簇,由此,詞典樹的第一節(jié)點層被創(chuàng)建。下面的層通過對每個簇重復(fù)執(zhí)行這個操作而獲得,直到共獲得層。最終獲得W個葉子節(jié)點,即視覺詞匯。每層到每層的K中心聚類過程如圖2所示[56]。
文獻[60]對重定位和閉環(huán)檢測提出了統(tǒng)一的方法,它們使用基于16維的SIFT特征的詞典方法不斷地搜索已訪問過的位置。文獻[61-62]使用基于SURF描述符的詞典方法去進行閉環(huán)檢測SURF特征,SURF特征提取需要花費400ms去進行。文獻[63]使用SIFT特征執(zhí)行全局定位,且用KD樹來排列地圖點。文獻[59]提出了一種使用基于FAST特征檢測與BRIEF二進制描述符詞典,且添加了直接索引(directindex),直接索引的引入使得能夠有效地獲得圖像之間的匹配點,從而加快閉環(huán)檢測的幾何驗證。文獻[12]用基于ORB特征的詞典方法進行位置識別,由于ORB特征具有旋轉(zhuǎn)不變性且能處理尺度變化,該方法能識別位置從不同的視角。文獻[13]的位置識別方法建于文獻[12]的主要思想上,即使用基于ORB特征的詞典方法選出候選閉環(huán),再通過相似性計算進行閉環(huán)的幾何驗證。
圖2 K中心點聚類方法Fig.2 Method of k medians clustering
2.4 地圖優(yōu)化
對于一個在復(fù)雜且動態(tài)的環(huán)境下工作的機器人,3-D地圖的快速生成是非常重要的,且創(chuàng)建的環(huán)境地圖對之后的定位、路徑規(guī)劃及壁障的性能起到一個關(guān)鍵性的作用,從而精確的地圖創(chuàng)建也是非常重要的。
閉環(huán)檢測成功后,往地圖里添加閉環(huán)約束,執(zhí)行閉環(huán)校正。閉環(huán)問題可以描述為大規(guī)模的光束平差法(bundleadjustment)[64-65]問題,即對相機位姿及所有的地圖點3-D坐標(biāo)進行優(yōu)化,但是該優(yōu)化計算復(fù)雜度太高,從而很難實現(xiàn)實時。
一種可執(zhí)行方法為通過位姿圖優(yōu)化(posegraphoptimization)方法來對閉環(huán)進行優(yōu)化,頂點為相機位姿,邊表示位姿之間相對變換的圖稱為位姿圖,位姿圖優(yōu)化即將閉環(huán)誤差沿著圖進行分配,即均勻分配到圖上的所有位姿上。圖優(yōu)化通常由圖優(yōu)化框架g2o(generalgraphoptimization)[66]里的LM(levenberg-marquardt)算法實現(xiàn)。
文獻[29]提出的RGB_DSLAM算法的位姿圖里每個邊具有一個權(quán)重,從而在優(yōu)化過程中,不確定性高的邊比不確定性低的邊需要變化更多去補償誤差,并在最后,對圖里的每個頂點進行額外的閉環(huán)檢測且重新優(yōu)化整個圖。文獻[67]里,在閉環(huán)校正步驟使用了位姿圖優(yōu)化技術(shù)去實現(xiàn)旋轉(zhuǎn),平移及尺度漂浮的有效校正。文獻[13]在閉環(huán)檢測成功后構(gòu)建了本質(zhì)圖,并對該圖進行位姿圖優(yōu)化。本質(zhì)圖包含所有的關(guān)鍵幀,但相比于covisibility圖[68],減少了關(guān)鍵幀之間的邊約束。本質(zhì)圖包含生成樹、閉環(huán)連接及covisibility圖里權(quán)重較大的邊。
3.1 多傳感器融合
相機能夠捕捉場景的豐富細節(jié),而慣性測量單元(inertial measurement unit,IMU)有高的幀率且相對小的能夠獲得準(zhǔn)確的短時間估計,這兩個傳感器能夠相互互補,從而一起使用能夠獲得更好的結(jié)果。
最初的視覺與IMU結(jié)合的位姿估計是用濾波方法解決的,用IMU的測量值作為預(yù)測值,視覺的測量值用于更新。文獻[69]提出了一種基于EKF的IMU與單目視覺的實時融合方法,提出一種測量模型能夠表示一個靜態(tài)特征被多個相機所觀察時的幾何約束,該測量模型是最優(yōu)的且不需要在EKF的狀態(tài)向量里包括特征的3-D坐標(biāo)。文獻[70]將融合問題分為兩個線程進行處理,連續(xù)圖像之間的慣性測量和特征跟蹤被局部地在第1個線程進行處理,提供高頻率的位置估計,第2個線程包含一個間歇工作的光束法平差的迭代估計,能夠減少線性誤差的影響。許多結(jié)果都已證明在準(zhǔn)確性上基于優(yōu)化的視覺SLAM優(yōu)于基于濾波的SLAM方法。文獻[71]將IMU的誤差以全概率的形式融合到路標(biāo)的重投影誤差里,構(gòu)成將被優(yōu)化的聯(lián)合非線性誤差函數(shù),其中通過關(guān)鍵幀來邊緣化之前的狀態(tài)去維持一個固定大小的優(yōu)化窗口,保證實時操作。考慮到基于優(yōu)化方法的視覺-慣導(dǎo)導(dǎo)航的計算復(fù)雜度問題,文獻[72]通過預(yù)積分選出的關(guān)鍵幀之間的慣性測量來進行解決,預(yù)積分能夠精確地概括數(shù)百個慣性測量到一個單獨的相對運動約束,這個預(yù)積分的IMU模型能被完美地融合到視覺-慣性的因子圖的框架下。該系統(tǒng)的實驗結(jié)果表明該系統(tǒng)要比Google的Tango還要精確[72],如圖3所示。
(a)正視圖 (b)俯視圖圖3 與Tango的性能比較[72]Fig.3 Performance comparison with tango[72]
共160 m的軌跡開始于(0,0,0)點,走到建筑物的第3層,然后再返回到初始點。其中,Google Tango積累1.4 m的誤差,而該提出的方法僅有0.5 m的漂移。
即使在視覺與IMU融合的系統(tǒng)里,當(dāng)機器人運動較為劇烈時,由于其不確定性增大,還是會導(dǎo)致定位失敗,從而系統(tǒng)的魯棒性有待進一步提高。并且為在現(xiàn)實生活中實現(xiàn)實時定位,其計算復(fù)雜度也需要進行改進。
3.2 SLAM與深度學(xué)習(xí)的結(jié)合
隨著深度學(xué)習(xí)在計算機視覺領(lǐng)域的大成功,大家對深度學(xué)習(xí)在機器人領(lǐng)域的應(yīng)用有很大的興趣。SLAM是一個大系統(tǒng),里面有很多子模塊,例如閉環(huán)檢測,立體匹配等,都可通過深度學(xué)習(xí)的使用來獲得更優(yōu)的結(jié)果。
文獻[73]提出了一種基于深度學(xué)習(xí)的立體匹配方法,用卷積神經(jīng)網(wǎng)絡(luò)來學(xué)習(xí)小圖像塊間的相似性,該卷積神經(jīng)網(wǎng)絡(luò)輸出的結(jié)果用于線性化立體匹配代價。文獻[74]通過整合局部敏感散列法和新的語義搜尋空間劃分的優(yōu)化技術(shù),使用卷積神經(jīng)網(wǎng)絡(luò)和大的地圖達到實時的位置識別。文獻[75]使用卷積神經(jīng)網(wǎng)絡(luò)去學(xué)習(xí)視覺里程計的最佳的視覺特征和最優(yōu)的估計器。文獻[76]提出了一種重定位系統(tǒng),使用貝葉斯卷積神經(jīng)網(wǎng)絡(luò)從單個彩色圖像計算出六個自由度的相機位姿及其不確定性。
4.1 單目視覺SLAM的優(yōu)缺點
單目相機應(yīng)用靈活、簡單、價格低。但是,單目視覺SLAM在每個時刻只能獲取一張圖像,且只能依靠獲得的圖像數(shù)據(jù)計算環(huán)境物體的方向信息,無法直接獲得可靠的深度信息,從而初始地圖創(chuàng)建及特征點的深度恢復(fù)都比較困難。此外,尺度不確定性是單目SLAM的主要特點,它是主要的誤差源之一,但是正是尺度不確定性才使得單目SLAM能夠在大尺度和小尺度環(huán)境之間進行自由轉(zhuǎn)換。
4.2 雙目視覺SLAM的優(yōu)缺點
雙目視覺SLAM利用外極線幾何約束的原理去匹配左右兩個相機的特征,從而能夠在當(dāng)前幀速率的條件下直接提取完整的特征數(shù)據(jù),因而應(yīng)用比較廣泛,它直接解決了系統(tǒng)地圖特征的初始化問題。但是系統(tǒng)設(shè)計比較復(fù)雜,系統(tǒng)成本比較高,且它的視角范圍受到一定限制,不能夠獲取遠處的場景,從而只能在一定的尺度范圍內(nèi)進行可靠的測量,從而缺乏靈活性。
4.3 RGBD SLAM的優(yōu)缺點
深度相機在獲得彩色圖像的同時獲得深度圖像,從而方便獲得深度信息,且能夠獲得稠密的地圖,但是成本高,體積大,有效探測距離太短,從而可應(yīng)用環(huán)境很有限。
十幾年來,視覺SLAM雖然取得了驚人的發(fā)展,但是僅用攝像機作為唯一外部傳感器進行同時定位與三維地圖重建還是一個很具挑戰(zhàn)性的研究方向,想要實時進行自身定位且構(gòu)建類似人眼看到的環(huán)境地圖還有很長的科研路要走。為了彌補視覺信息的不足,視覺傳感器可以與慣性傳感器(IMU)、激光等傳感器融合,通過傳感器之間的互補獲得更加理想的結(jié)果。此外,為了能在實際環(huán)境中進行應(yīng)用,SLAM的魯棒性需要很高,從而足夠在各種復(fù)雜環(huán)境下進行準(zhǔn)確的處理,SLAM的計算復(fù)雜度也不能太高,從而達到實時效果。
[1]DAVISON A J. SLAM with a single camera[C] //Proceedings of Workshop on Concurrent Mapping an Localization for Autonomous Mobile Robots in Conjunction with ICRA. Washington, DC, USA, 2002: 18-27.
[2]DAVISON A J. Real-time simultaneous localisation and mapping with a single camera[C]//Proceedings of the Ninth IEEE International Conference on Computer Vision. Washington, DC, USA, 2003: 1403-1410.
[3]DAVISON A J, REID I D, MOLTON N D, et al. MonoSLAM: real-time single camera SLAM[J]. IEEE transactions on pattern analysis and machine intelligence, 2007, 29(6): 1052-1067.
[4]CIVERA J, DAVISON A J, MONTIEL J M M. Inverse depth parametrization for monocular SLAM[J]. IEEE transactions on robotics, 2008, 24(5): 932-945.
[5]MARTINEZ-CANTIN R, CASTELLANOS J A. Unscented SLAM for large-scale outdoor environments[C]//Proceedings of 2005 IEEE/RSJ International Conference on Intelligent Robots and Systems. Edmonton, Alberta, Canada, 2005: 3427-3432
[6]CHEKHLOV D, PUPILLI M, MAYOL-CUEVAS W, et al. Real-time and robust monocular SLAM using predictive multi-resolution descriptors[C]// Proceedings of the Second International Conference on Advances in Visual Computi. Lake Tahoe, USA, 2006: 276-285.
[7]HOLMES S, KLEIN G, MURRAY D W. A square root unscented kalman filter for visual monoSLAM[C]//Proceedings of 2008 International Conference on Robotics and Automation, ICRA. Pasadena, California, USA, 2008: 3710-3716.
[8]SIM R, ELINAS P, GRIFFIN M, et al. Vision-based SLAM using the Rao-Blackwellised particle filter[J]. IJCAI workshop on reasoning with uncertainty in robotics, 2005, 9(4): 500-509.
[9]LI Maohai, HONG Bingrong, CAI Zesu, et al. Novel Rao-Blackwellized particle filter for mobile robot SLAM using monocular vision[J]. International journal of intelligent technology, 2006, 1(1): 63-69.
[10]KLEIN G, MURRAY D. Parallel Tracking and Mapping for Small AR Workspaces[C]// IEEE and ACM International Symposium on Mixed and Augmented Reality. Nara, Japan, 2007: 225-234.
[11]KLEIN G, MURRAY D. Improving the agility of keyframe-based SLAM[C]// European Conference on Computer Vision. Marseille, France, 2008: 802-815.
[12]MUR-ARTAL R, TARDS J D. Fast relocalisation and loop closing in keyframe-based SLAM[C]// IEEE International Conference on Robotics and Automation. New Orleans, LA, 2014: 846-853.
[13]MUR-ARTAL R, MONTIEL J M M, TARDOS J D. ORB-SLAM: A Versatile and Accurate Monocular SLAM System[J]. IEEE transactions on robotics, 2015, 31(5): 1147-1163.
[14]KHOSHELHAM K, ELBERINK S O. Accuracy and resolution of Kinect depth data for indoor mapping applications[J]. Sensors, 2012, 12(2): 1437-1454.
[15]HOGMAN V. Building a 3-D Map from RGB-D sensors[D]. Stockholm, Sweden: Royal Institute of Technology, 2012.
[16]HENRY P, KRAININ M, HERBST E, et al. RGB-D mapping: Using depth cameras for dense 3-D modeling of indoor environments[C]//12th International Symposium on Experimental Robotics. Berlin, Germany, 2014: 477-491.
[17]DRYANOVSKI I, VALENTI R G, XIAO J Z. Fast visual odometry and mapping from RGB-D data[C]// IEEE International Conference on Robotics and Automation. Piscataway, USA, 2013: 2305-2310.
[18]HENRY P, KRAININ M, HERBST E, et al. RGB-D mapping: using depth cameras for dense 3-D modeling of indoor environments[M]//KHATIB O, KUMAR V, PAPPAS G J. Experimental Robotics. Berlin Heidelberg: Springer, 2014: 647-663.
[19]HENRY P, KRAININ M, HERBST E, et al. RGB-D Mapping: Using Depth Cameras for Dense 3-D Modeling of Indoor Environments[C]// 12th International Symposium on Experimental Robotics. Berlin Germany, 2014: 477-491.
[20]HENRY P, KRAININ M, HERBST E, et al. RGB-D mapping: Using Kinect-style depth cameras for dense 3-D modeling of indoor environments[J]. International journal of robotics research, 2012, 31(5): 647-663.
[21]ENGELHARD N, ENDRES F, HESS J. Real-time 3-D visual SLAM with a hand-held RGB-D camera[C]// Proceeedings of the RGB-D workshop on 3-D Perception in Robotics at the European Robotics Forum. V?ster?s, Sweden, 2011.
[22]STüHMER J, GUMHOLD S, CREMERS D. Real-time dense geometry from a handheld camera[C]// GOESELE M, ROTH S, KUIJPER A, et al. Pattern Recognition. Berlin Heidelberg: Springer, 2010: 11-20.
[23]ENGEL J, STURM J, CREMERS D. Semi-Dense Visual Odometry for a Monocular Camera[C]// International Conference on Computer Vision. Sydney, NSW, 2013: 1449-1456.
[24]NEWCOMBE R A, LOVEGROVE S J, DAVISON A J. DTAM: Dense tracking and mapping in real-time[C]// International Conference on Computer Vision. Barcelona, Spain, 2011: 2320-2327.
[25]FORSTER C, PIZZOLI M, SCARAMUZZA D. SVO: Fast semi-direct monocular visual odometry[C]// 2014 IEEE International Conference onRobotics and Automation. Hong Kong, China, 2014: 15-22.
[26]ENGEL J, SCH?PS T, CREMERS D. LSD-SLAM: Large-Scale Direct Monocular SLAM[M]// FLEET D, PAJDLA T, SCHIELE B, et al, eds. Computer Vision-ECCV 2014. Switzerland: Springer International Publishing, 2014: 834-849.
[27]NEWCOMBE R A, IZADI S, HILLIGES O, et al. KinectFusion: Real-time dense surface mapping and tracking[C]// IEEE International Symposium on Mixed and Augmented Reality. Basel, Switzerland, 2011: 127-136.
[28]GOKHOOL T, MEILLAND M, RIVES P, et al. A dense map building approach from spherical RGBD images[C]// International Conference on Computer Vision Theory and Applications. Lisbon, Portugal, 2014: 1103-1114.
[29]KERL C, STURM J, CREMERS D. Dense visual SLAM for RGB-D cameras[C]// Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems. Tokyo, Japan, 2013: 2100-2106.
[30]Lowe D G. Distinctive image features from scale-invariant keypoints[J]. International journal of computer vision, 2004, 60(2): 91-110.
[31]BAY H, TUYTELAARS T, VAN GOOL L. SURF: speeded up robust features[M]// LEONARDIS A, BISCHOF H, PINZ A. Computer Vision-ECCV 2006. Berlin Heidelberg: Springer, 2006.
[32]RUBLEE E, RABAUD V, KONOLIGE K, et al. ORB: An efficient alternative to SIFT or SURF[C]// International Conference on Computer Vision. Barcelona, Spain, 2011: 2564-2571.
[33]ALI A M, JAN NORDIN M. SIFT based monocular SLAM with multi-clouds features for indoor navigation[C]// 2010 IEEE Region 10 Conference TENCON. Fukuoka, 2010: 2326-2331.
[34]WU E Y, ZHAO L K, GUO Y P, et al. Monocular vision SLAM based on key feature points selection[C]// 2010 IEEE International Conference on Information and Automation (ICIA). Harbin, China, 2010: 1741-1745.
[35]CHEN C H, CHAN Y P. SIFT-based monocluar SLAM with inverse depth parameterization for robot localization[C]// IEEE Workshop on Advanced Robotics and Its Social Impacts, 2007. Hsinchu, China, 2007: 1-6.
[36]Zhu D X. Binocular Vision-SLAM Using Improved SIFT Algorithm[C]// 2010 2nd International Workshop on Intelligent Systems and Applications (ISA). Wuhan, China, 2010: 1-4.
[37]ZHANG Z Y, HUANG Y L, LI C, et al. Monocular vision simultaneous localization and mapping using SURF[C]// WCICA 2008. 7th World Congress on Intelligent Control and Automation. Chongqing, China, 2008: 1651-1656.
[38]YE Y. The research of SLAM monocular vision based on the improved surf feather[C]// International Conference on Computational Intelligence and Communication Networks. Hongkong, China, 2014: 344-348.
[39]WANG Y T, FENG Y C. Data association and map management for robot SLAM using local invariant features[C]//2013 IEEE International Conference on Mechatronics and Automation. Takamatsu, 2013.
[40]ROSTEN E, DRUMMOND T. Machine Learning for High-Speed Corner Detection[M]// LEONARDIS A, BISCHOF H, PINZ A, et al. European Conference on Computer Vision. Berlin Heidelberg: Springer, 2006: 430-443.
[41]CALONDER M, LEPETIT V, STRECHA C, et al. BRIEF: Binary Robust Independent Elementary Features[C]// European Conference on Computer Vision. Crete, Greece, 2010: 778-792.
[42]FEN X, ZHEN W. An embedded visual SLAM algorithm based on Kinect and ORB features[C]// 2015 34th Chinese Control Conference. Hangzhou, China, 2015: 6026-6031.
[43]XIN G X, ZHANG X T, WANG X, et al. A RGBD SLAM algorithm combining ORB with PROSAC for indoor mobile robot[C]// 2015 4th International Conference on Computer Science and Network Technology (ICCSNT). Harbin, China, 2015: 71-74.
[44]LI J, PAN T S, TSENG K K, et al. Design of a monocular simultaneous localisation and mapping system with ORB feature[C]// International Conference on Multimedia and Expo (ICME), San Jose, California, USA, 2013: 1-4.
[45]EADE E, DRUMMOND T. Edge landmarks in monocular SLAM[J]. Image and vision computing, 2009, 27(5): 588-596.
[46]KLEIN G, MURRAY D. Improving the agility of keyframe-based SLAM[C]// European Conference on Computer Vision. Marseille, France, 2008: 802-815.
[47]CONCHA A, CIVERA J. Using superpixels in monocular SLAM[C]// IEEE International Conference on Robotics and Automation. New Orleans, LA, 2014: 365-372.
[48]SCHINDLER G, BROWN M, SZELISKI R. City-Scale Location Recognition[C]// IEEE Conference on Computer Vision and Pattern Recognition. Ezhou, China, 2007: 1-7.
[49]ULRICH I, NOURBAKHSH I. Appearance-based place recognition for topological localization[C]// IEEE International Conference on Robotics and Automation. Anchorage, Alaska, 2010: 1023-1029.
[50]NEIRA J, RIBEIRO M I, TARDOS J D. Mobile robot localization and map building using monocular vision[C]// Proceedings of the 5th International Symposium on Intelligent Robotic Systems. Pisa, Italy, 1997: 275-284.
[51]WILLIAMS B, CUMMINS M, NEIRA J, et al. A comparison of loop closing techniques in monocular SLAM[J]. Robotics and autonomous systems, 2009, 57(12): 1188-1197.
[52]MUR-ARTAL R, TARDOS J D. ORB-SLAM: Tracking and mapping recognizable features[C]// IEEE International Conference on Robotics and Automation (ICRA). Berkeley, CA, USA, 2014.
[53]CUMMINS M, NEWMAN P. Accelerated appearance-only SLAM[C]// IEEE International Conference on Robotics and Automation. Pasadena, California, USA, 2008: 1828-1833.
[54]CLEMENTE L A, DAVISON A J, REID I D, et al. Mapping Large Loops with a Single Hand-Held Camera. [C]// Robotics: Science and Systems. Atlanta, GA, USA, 2007.
[55]CUMMINS M, NEWMAN P. FAB-MAP: Probabilistic Localization and Mapping in the Space of Appearance[J]. International Journal of Robotics Research, 2008, 27(6): 647-665.
[56]NISTER D, STEWENIUS H. Scalable Recognition with a Vocabulary Tree[C]// 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06). New York, NY, USA, 2006: 2161-2168.
[57]ANGELI A, FILLIAT D, DONCIEUX S, et al. A fast and incremental method for loop-closure detection using bags of visual words[J]. IEEE transactions on robotics, 2008, 24(5): 1027-1037.
[58]CUMMINS M, NEWMAN P. Highly scalable appearance-only SLAM-FAB-MAP 2.0[C]// Robotics: Science and Systems V, University of Washington. Seattle, USA, 2009.
[60]EADE E D, DRUMMOND T W. Unified loop closing and recovery for real time monocular SLAM [C]// British Machine Vision Conference. Leeds, UK, 2008: 1-10.
[62]CUMMINS M, NEWMAN P. Appearance-only SLAM at large scale with FAB-MAP 2.0[J]. International journal of robotics research, 2011, 30(9): 1100-1123.
[63]LOWE D G. Distinctive Image features from scale-invariant keypoints[J]. International journal of computer vision, 2004, 60(2): 91-110.
[64]TRIGGS B, MCLAUCHLAN P F, HARTLEY R I, et al. Bundle Adjustment-A Modern Synthesis[M]// TRIGGS B, ZISSERMAN A, SZELISKI R. Vision Algorithms: Theory and Practice. Berlin Heidelberg: Springer , 2000: 298-372.
[65]HARTLEY R, ZISSERMAN A. Multiple view geometry in computer vision[M]. 2nd ed. Cambridge U K: Cambridge University Press, 2003.
[66] KüMMERLE R, GRISETTI G, STRASDAT H. G2o: A general framework for graph optimization[C]// IEEE International Conference on Robotics and Automation. Shanghai, China, 2011: 3607-3613.
[67]STRASDAT H, MONTIEL J M M, DAVISON A J. Scale drift-aware large scale monocular SLAM[C]// Proceedings of Robotics: Science and Systems. Zaragoza, Spain, 2010.
[68]STRASDAT H, DAVISON A J, MONTIEL J M M, et al. Double window optimisation for constant time visual SLAM[C]// International Conference on Computer Vision. Barcelona, Spain, 2011: 2352-2359.
[69]MOURIKIS A I, ROUMELIOTIS S I. A multi-state constraint Kalman filter for vision-aided inertial navigation[C]// Proceedings of the 2007 IEEE International Conference on Robotics and Automation (ICRA). Roma, Italy, 2007.
[70]MOURIKIS A I, ROUMELIOTIS S I. A dual-layer estimator architecture for long-term localization[C]// Proceedings of the 2008 Workshop on Visual Localization for Mobile Platforms at CVPR. Anchorage, Alaska, 2008.
[71] LEUTENEGGER S, FURGALE P, RABAUD V, et al. Keyframe-based visual-inertial slam using nonlinear optimization[C]// Proceedings of 2013 Robotics: Science and Systems (RSS). Berlin, Germany, 2013.
[72]Google. Project tango. URL https://www.google.com/atap/projecttango/.
[73]?BONTAR J, LE CUN Y. Stereo matching by training a convolutional neural network to compare image patches[J]. The journal of machine learning research, 2015, 17(1): 2287-2318.
[74]SüNDERHAUF N, SHIRAZI S, DAYOUB F. On the performance of ConvNet features for place recognition[C]// 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems(IROS). Hamburg, Germany, 2015: 4297-4304.
[75]COSTANTE G, MANCINI M, VALIGI P, et al. Exploring representation learning with CNNs for frame-to-frame ego-motion estimation[J]. IEEE robotics and automation letters, 2016, 1(1): 18-25.
[76]KENDALL A, CIPOLLA R. Modelling uncertainty in deep learning for camera relocalization[C]// 2016 IEEE International Conference on Robotics and Automation. Stockholm, Sweden, 2016: 4762-4769.
權(quán)美香,女,1992年生,博士,主要研究方向為單目視覺SLAM,VIN,移動機器人視覺導(dǎo)航。
樸松昊,男,1972年生,教授,博士生導(dǎo)師,中國人工智能學(xué)會常務(wù)理事,機器人文化藝術(shù)專業(yè)委員會主任,主要研究方向為機器人環(huán)境感知與導(dǎo)航、機器人運動規(guī)劃、多智能體機器人協(xié)作。主持或參加了國家自然科學(xué)基金、國家“863”計劃重點及面上項目、機器人技術(shù)與系統(tǒng)國家重點實驗室基金、教育部“985”項目、三星國際合作項目等多個項目。發(fā)表學(xué)術(shù)論文60余篇,其中被SCI、EI、ISTP檢索60多篇,出版專著一部。
李國,男,1989年生,博士,主要研究方向為SLAM、機器學(xué)習(xí)。
An overview of visual SLAM
QUAN Meixiang1, PIAO Songhao1,2, LI Guo1
(1. Multi-agent Robot Research Center, Harbin Institute of Technology, Harbin 150000, China; 2. Multi-agent Robot Research Center, Harbin Institute of Technology, Harbin 150000, China)
Visual SLAM refers to simultaneously localizing itself and reconstructing the environment map using cameras as the only external sensor. The quality of the map created by SLAM plays a decisive role in the performance of the subsequent automatic localization, path planning, and obstacle avoidance. This paper introduced the feature-based visual SLAM and direct visual SLAM methods; the major symbolic achievement of visual SLAM; the main research laboratory of SLAM; and the method of SIFT, SURF, and ORB feature detection and matching, key frame selection. In addition, this paper summarized the loop closure detection and map optimization that removed the accumulated error. In the end, the development tendency and research highlights of SLAM were discussed and the advantages and disadvantages of monocular SLAM, binocular SLAM, and RGB_D SLAM were analyzed.
visual simultaneous localization and mapping; monocular vision; RGB_D; feature detection and matching; loop closure detection
10.11992/tis.201607026
http://www.cnki.net/kcms/detail/23.1538.TP.20170111.1705.006.html
2016-07-25.
日期:.
國家自然科學(xué)基金面上項目(61375081).
樸松昊. E-mail: piaosh@hit.edu.cn.
TP391
A
1673-4785(2016)06-0768-09
權(quán)美香,樸松昊,李國. 視覺SLAM綜述[J]. 智能系統(tǒng)學(xué)報, 2016, 11(6): 768-776.
英文引用格式:QUAN Meixiang, PIAO Songhao, LI Guo. An overview of visual SLAM[J]. CAAI transactions on intelligent systems, 2016, 11(6): 768-776.