隨著移動(dòng)機(jī)器人的日益發(fā)展,SLAM也有了長足的進(jìn)步。與激光SLAM相比,視覺SLAM的感知以及重定位能力更強(qiáng)。其次,它的安裝方式比較多元化以及價(jià)格低廉,這些優(yōu)勢使它受到更多的關(guān)注,大量視覺SLAM算法被提出。
視覺SLAM框架包括傳感器數(shù)據(jù)、前端、后端、回環(huán)檢測和建圖,如圖1所示。回環(huán)檢測是SLAM系統(tǒng)中重要的組成部分,對(duì)消除累積誤差有著非常重要的作用,沒有回環(huán)檢測,SLAM系統(tǒng)就會(huì)等同于一個(gè)里程計(jì),在長期大范圍的導(dǎo)航和定位中產(chǎn)生的累計(jì)誤差是的不可規(guī)避的。
僅僅依靠里程計(jì)進(jìn)行的狀態(tài)估計(jì)會(huì)導(dǎo)致比較嚴(yán)重的偏差,錯(cuò)誤回環(huán)信息會(huì)使整個(gè)算法收斂到一個(gè)錯(cuò)誤的值,盡管也有許多能夠降低錯(cuò)誤回環(huán)影響的圖優(yōu)化算法,但是這些并不可能從根本上消除回環(huán)帶來的影響,并且會(huì)給整個(gè)定位系統(tǒng)帶來一定計(jì)算負(fù)擔(dān)。所以,回環(huán)檢測在后期的地圖優(yōu)化中起著十分重要的作用。
圖1 視覺SLAM經(jīng)典框架
目前視覺SLAM回環(huán)檢測主要方式有傳統(tǒng)的詞袋模型以及基于概率和詞袋模型的一些改進(jìn)算法,但是傳統(tǒng)方式依然存在過多的人工干預(yù),對(duì)于場景中動(dòng)態(tài)對(duì)象的處理不是十分理想,并且計(jì)算量較大,響應(yīng)比較慢。而深度學(xué)習(xí)技術(shù)的出現(xiàn)及發(fā)展在回環(huán)檢測問題的解決上提供了新的方向。
本文首先對(duì)回環(huán)檢測的問題進(jìn)行描述,對(duì)目前使用較多的傳統(tǒng)回環(huán)檢測方法進(jìn)行梳理,總結(jié)與深度學(xué)習(xí)及語義分割等技術(shù)相結(jié)合的回環(huán)檢測方法,在此基礎(chǔ)上分析不同神經(jīng)網(wǎng)絡(luò)在公開數(shù)據(jù)集下的性能對(duì)比。介紹目前所使用的公開數(shù)據(jù)集及相關(guān)開源庫。同時(shí),分別從結(jié)合深度學(xué)習(xí)的回環(huán)檢測、結(jié)合語義分割的回環(huán)檢測和加入回環(huán)檢測后的后端優(yōu)化幾個(gè)方面對(duì)回環(huán)檢測目前所面臨的挑戰(zhàn)進(jìn)行闡述,探討視覺SLAM回環(huán)檢測未來的發(fā)展熱點(diǎn)趨勢和方向,期望可以對(duì)回環(huán)檢測技術(shù)研究人員提供新的思路。
01 回環(huán)檢測問題描述
當(dāng)移動(dòng)機(jī)器人經(jīng)過一定時(shí)間的運(yùn)動(dòng)后回到原點(diǎn),但是由于隨著時(shí)間產(chǎn)生位姿漂移,此時(shí)的位置估計(jì)值并不是最初值,如果知道機(jī)器人是回到原點(diǎn),把位置估計(jì)值拉回去,就可以消除漂移,起到減小累積誤差的作用,在地圖構(gòu)建上減小誤差,回環(huán)檢測就可以起到這樣的作用,如圖2所示,正確的回環(huán)信息可以修正里程計(jì)誤差,從而得到信息一致的地圖。
圖2 回環(huán)檢測校正效果
在視覺SLAM問題中,位姿的估計(jì)是一個(gè)遞推的過程,當(dāng)前幀的位姿由上一幀位姿推算,其中的誤差傳遞下去產(chǎn)生累積誤差。
如圖3所示,一般情況下,第五幀位通過第四幀推算出來,當(dāng)找到與第一幀的關(guān)系時(shí),便可以由第一幀推算,此時(shí)只有兩個(gè)約束的誤差,累積誤差就會(huì)減小,像這樣與之前的某一幀建立位姿約束關(guān)系就叫做回環(huán)。減少約束數(shù)因而減小累積誤差。回環(huán)檢測就是檢驗(yàn)這種歷史幀的位姿約束問題。
圖3 回環(huán)檢測問題描述模型
02 主流回環(huán)檢測方法
2.1 根據(jù)路標(biāo)點(diǎn)先驗(yàn)信息
回環(huán)檢測的一種方式是根據(jù)路標(biāo)點(diǎn)的先驗(yàn)信息,在檢測時(shí)檢索到與先驗(yàn)信息相同的信息即認(rèn)為產(chǎn)生回環(huán)。但是存在以下兩個(gè)缺點(diǎn):首先,如果使用人工設(shè)置的路標(biāo)點(diǎn),由于人力不夠會(huì)導(dǎo)致路標(biāo)點(diǎn)數(shù)量有限,機(jī)器人移動(dòng)范圍受限;其次,如果裝載GPS裝置,雖然免去人工路標(biāo)點(diǎn)的設(shè)置環(huán)節(jié),卻增加機(jī)器人的載荷,當(dāng)機(jī)器人在弱GPS信號(hào)的環(huán)境中定位精度就會(huì)受到影響。所以,這種基于路標(biāo)點(diǎn)的方式使用情況并不多。
2.2 詞袋模型
回環(huán)檢測中最常用的詞袋模型是將圖像中的特征處理成單詞,不同的單詞代表不同的特征,對(duì)兩張圖片中單詞進(jìn)行對(duì)比,判斷兩張圖片是否相似,為將所有特征類比成一個(gè)個(gè)單詞,就需要訓(xùn)練一個(gè)詞典,如圖4所示,這個(gè)詞典包含所有可能的單詞集合,通過訓(xùn)練大量的數(shù)據(jù)可以使字典通用性更高。
圖4 詞袋模型模型實(shí)現(xiàn)過程
2.2.1 特征提取與描述
在視覺SLAM系統(tǒng)中,人為設(shè)計(jì)特征提取的方法包括SIFT、SURF和ORB算法三大類。
SIFT算法最早是由LoweDG提出的,由于它能夠在空間尺度中找到極值點(diǎn),從而在實(shí)驗(yàn)中提取的點(diǎn)具有尺度、位置、及旋轉(zhuǎn)不變的特點(diǎn)。
SURF(Speeded Up Robust Features)算法是由HerbertBay等人提出,此算法是SIFT算法的一種改進(jìn)算法,運(yùn)行效率更加高效,但是,尋找主方向步驟很大程度上取決于局部區(qū)域像素的梯度方向,即使偏差角度不大,只要主方向不準(zhǔn)確,特征匹配的誤差就會(huì)比較大,導(dǎo)致匹配出錯(cuò)。
Galvez-Lopez D提出ORB(FAST+Brief)也比較具有代表性,它的運(yùn)行效率是SIFT的十倍,是SURF的一百倍,在提取FAST特征點(diǎn)時(shí)比較簡單,選擇一個(gè)以3為半徑的像素點(diǎn)作為中心點(diǎn),并逐一比較中心點(diǎn)周圍的十六個(gè)像素點(diǎn),如果灰度差異值大于12時(shí),當(dāng)前中心點(diǎn)判斷為特征點(diǎn)。除了局部特征方法外,全局圖像描述符GIST也被用于視覺SLAM中。表1總結(jié)歸納幾種特征提取方式。
表 1 特征提取方式對(duì)比表
2.2.2 聚類算法及相似性判斷
在回環(huán)檢測中,傳統(tǒng)的方法詞袋模型首先訓(xùn)練一個(gè)詞典,之后需要產(chǎn)生一個(gè)數(shù)據(jù)庫,用來記錄查詞典時(shí)所用的單詞。訓(xùn)練詞典即特征聚類的過程,假設(shè)所有的圖片中需要提取N個(gè)特征,可以聚類成N/1000個(gè)單詞,用這N/1000個(gè)單詞來匹配,每個(gè)特征需要比較N/1000次才可以找到對(duì)應(yīng)單詞,為解決效率不高的問題,字典在訓(xùn)練過程中構(gòu)建一個(gè)樹,有k個(gè)分支,深度為d,根節(jié)點(diǎn)是粗分類,越下層分類越細(xì),直至葉子結(jié)點(diǎn)。
利用k-d樹進(jìn)行特征匹配,速度得到提升,并將時(shí)間復(fù)雜度降低到對(duì)數(shù)級(jí)別。詞袋模型核心內(nèi)容就是使用K-means聚類算法,此算法比其他聚類算法更簡單,執(zhí)行速度更快,可以用于很多常規(guī)的數(shù)據(jù)集,是一種硬聚類算法,在無監(jiān)督學(xué)習(xí)實(shí)驗(yàn)中廣泛使用。
傳統(tǒng)詞袋模型算法中,相似性判斷通常使用詞頻-逆文檔頻率(TF-IDF,Term Frequency–Inverse Document Frequency)算法,其中,TF指的是詞頻,表示在圖像中提取的詞匯的頻率,頻率越高,識(shí)別度就越高,IDF指的是逆文檔頻率,它表示在圖像中提取的詞匯出現(xiàn)頻率越低區(qū)分度越高。
2.2.3 實(shí)驗(yàn)評(píng)估 傳統(tǒng)的詞袋模型在牛津大學(xué)公開數(shù)據(jù)集NewCollege以及CityCenter上的時(shí)間性能評(píng)估及相關(guān)信息如表2所示,圖5展示了兩種數(shù)據(jù)集利用詞袋模型方法下的準(zhǔn)確率—回環(huán)率曲線對(duì)比。
表2 詞袋模型在不同數(shù)據(jù)集下訓(xùn)練時(shí)間表(單位:秒)
圖5 詞袋模型進(jìn)行回環(huán)檢測在不同數(shù)據(jù)集下的PR(準(zhǔn)確率-回環(huán)率)曲線
2.3 基于詞袋模型和概率的改進(jìn)算法
最常用的基于詞袋模型的方法仍然存在一定的局限性,這種方法將不同位置的相似場景錯(cuò)誤判斷為同一場景,針對(duì)這個(gè)問題,一些基于詞袋模型和概率的改進(jìn)方法也被提出。
根據(jù)概率生成一個(gè)概率分布,機(jī)器人回到地圖上此點(diǎn)的可能性大小是通過每個(gè)點(diǎn)的概率,貝葉斯模型是最常使用的模型。
03 傳統(tǒng)回環(huán)檢測算法改進(jìn)
在回環(huán)檢測階段,為了將高維度的圖片進(jìn)行實(shí)時(shí)性的比較與匹配,采用了提取圖像特征點(diǎn)及其附屬描述子的方式,并對(duì)兩幀圖像間描述子的相似度進(jìn)行度量,與預(yù)設(shè)閾值進(jìn)行比較,高于預(yù)設(shè)值,則判斷兩幀圖像相似,最終判斷移動(dòng)機(jī)器人回到歷史時(shí)刻位置。
特征描述子如SIFT,SURF描述子均為浮點(diǎn)數(shù)編碼的描述子,比較相似度時(shí)采用2范數(shù)。特征描述子如BRIEF,ORB描述子等為二進(jìn)制數(shù)編碼的描述子,比較相似度時(shí)則使用漢明距離。二進(jìn)制描述子相較于浮點(diǎn)型描述子,占用更少的內(nèi)存資源,且計(jì)算量較小。此外,BRIEF等二進(jìn)制描述子比浮點(diǎn)數(shù)描述子的更容易訪問,具體如表3所示。圖像中的特征描述符得到了很好的利用就可以準(zhǔn)確判斷回環(huán)是否產(chǎn)生,但是這是以原始特征順序和空間位置為代價(jià)的。如果處在類似的位置環(huán)境,但是空間排列順序不同,很容易造成回環(huán)檢測算法的失效,導(dǎo)致同時(shí)定位與建圖失敗。
因此,想要對(duì)傳統(tǒng)方式進(jìn)行改進(jìn),就得使生成的新的單詞具備空間位置信息及其他附屬信息,并對(duì)新的二進(jìn)制描述子的構(gòu)成方式做出改進(jìn),以此提升回環(huán)檢測的準(zhǔn)確度。
表3 常用特征描述子對(duì)比
04 深度學(xué)習(xí)在回環(huán)檢測中的應(yīng)用
利用傳統(tǒng)算法,可以在視覺SLAM回環(huán)檢測中得到較好的準(zhǔn)確率和召回率,但是存在訓(xùn)練時(shí)間較長、過于依賴操作者經(jīng)驗(yàn)等問題。目前,計(jì)算機(jī)視覺與深度學(xué)習(xí)的相互結(jié)合,比如實(shí)例分類、對(duì)象檢測、行為識(shí)別等方面都有不錯(cuò)的效果,執(zhí)行效率以及準(zhǔn)確率都有巨大的提升,深度學(xué)習(xí)技術(shù)的快速發(fā)展為回環(huán)檢測提供新的解決方法,能夠很好的解決目前回環(huán)檢測中的一些問題。
深度學(xué)習(xí)的一個(gè)重要用途就是可以對(duì)數(shù)據(jù)進(jìn)行識(shí)別以及分類,將傳統(tǒng)方法與深度學(xué)習(xí)結(jié)合,或是直接將深度學(xué)習(xí)技術(shù)應(yīng)用到回環(huán)檢測上,從而得到提出一種全新的方法。目前相關(guān)的研究分成兩個(gè)方向,主要是學(xué)習(xí)圖像特征的方式有區(qū)別,一種利用CNN神經(jīng)網(wǎng)絡(luò),另一種利用自編碼器進(jìn)行非監(jiān)督式的學(xué)習(xí),接著從特征的相似性進(jìn)行回環(huán)的判斷。
與傳統(tǒng)詞袋模型算法相比,利用深度學(xué)習(xí)的相關(guān)方法不需要人工提取特征,可以避免人工干預(yù)問題。并且因?yàn)樯疃葘W(xué)習(xí)可以獲得圖片更加深層的特征,可以更好地應(yīng)對(duì)光照以及其他環(huán)境變化等外界因素,但是仍然需要更多相關(guān)知識(shí)的支持,為了獲得更好地回環(huán)檢測性能,深度學(xué)習(xí)與SLAM系統(tǒng)的結(jié)合還需要進(jìn)一步開發(fā)。如表4所示,分別從物理意義、特征提取能力、設(shè)計(jì)流程、泛化能力、發(fā)展趨勢等幾個(gè)方面對(duì)傳統(tǒng)詞袋模型與利用深度學(xué)習(xí)的回環(huán)檢測算法進(jìn)行了優(yōu)缺點(diǎn)的對(duì)比。
表4 傳統(tǒng)詞袋模型與基于深度學(xué)習(xí)的回環(huán)檢測算法對(duì)比
05 回環(huán)檢測現(xiàn)有問題及未來發(fā)展方向
5.1 回環(huán)檢測存在的問題
傳統(tǒng)的回環(huán)檢測算法,在準(zhǔn)確率和回環(huán)率上都有不錯(cuò)的結(jié)果,但仍存在過多的人工干預(yù)、魯棒性不高、訓(xùn)練時(shí)間長、過于依賴操作者經(jīng)驗(yàn)等問題。對(duì)于場景中的復(fù)雜情況,提取圖像描述子時(shí),光照、天氣等外界因素被忽略了,同時(shí)圖像中物體的相對(duì)位置信息也是很重要的影響因素,將這些信息很好的利用起來就可以提高回環(huán)檢測的性能。
近年來,在計(jì)算機(jī)視覺和深度學(xué)習(xí)發(fā)展的推動(dòng)下,回環(huán)檢測已經(jīng)取得了很大的進(jìn)步,但是這些算法在不同環(huán)境下的實(shí)時(shí)性以及不同情況下的泛化能力還需要進(jìn)一步研究,例如基于深度學(xué)習(xí)的算法依賴大量的標(biāo)記數(shù)據(jù)集且依賴當(dāng)前環(huán)境與數(shù)據(jù)集之間的相似性;在信息特征的提取仍然缺少更加清晰的指導(dǎo),訓(xùn)練參數(shù)的調(diào)整也比較依賴以往積累下來的調(diào)參經(jīng)驗(yàn),目前使用的CNN特征大多是由圖像分類網(wǎng)絡(luò)生成,如何訓(xùn)練適用于回環(huán)檢測的專用CNN網(wǎng)絡(luò)仍然是一個(gè)亟待解決的問題。
5.2 回環(huán)檢測未來的發(fā)展方向
解決上述問題需要在相關(guān)領(lǐng)域進(jìn)一步發(fā)展,更好地解決目前回環(huán)檢測中仍然存在的問題,需要借助更多的相關(guān)知識(shí),比如深度學(xué)習(xí)、目標(biāo)識(shí)別以及語義分割等。
(1)基于深度學(xué)習(xí)的回環(huán)檢測
近年來,由于深度學(xué)習(xí)的推動(dòng),目標(biāo)檢測技術(shù)也取得了進(jìn)步,這有助于提高移動(dòng)機(jī)器人的動(dòng)態(tài)場景適應(yīng)能力。目標(biāo)識(shí)別分開的方法和傳統(tǒng)的潛在區(qū)域特征提取方法不同,現(xiàn)在的目標(biāo)識(shí)別算法為了提高目標(biāo)識(shí)別的效率和準(zhǔn)確率采用在深度學(xué)習(xí)框架下將兩部分整合在一起。Hou等詳細(xì)評(píng)估了目標(biāo)識(shí)別中常用的物體潛在區(qū)域提取方法在回環(huán)檢測中的應(yīng)用,他發(fā)現(xiàn)回環(huán)檢測中常用的對(duì)象識(shí)別方法以及使用神經(jīng)網(wǎng)絡(luò)生成標(biāo)記區(qū)域的方法均受訓(xùn)練數(shù)據(jù)集的影響,這仍然存在一定的問題。
(2)基于語義分割的回環(huán)檢測
目前語義視覺SLAM的相關(guān)研究成果大致為視覺SLAM輔助語義和視覺SLAM語義輔助兩大類,前者又稱為語義建圖,大多基于卷積神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn),將一些語義信息集成到SLAM的研究中,以滿足復(fù)雜場景的要求。大多是利用提取得語義信息概括局部特征,與全局的圖進(jìn)行比較。目前的語義SLAM研究處于初步發(fā)展階段,但前景廣闊。語義分割技術(shù)與深度學(xué)習(xí)結(jié)合后獲得了很大的提升,語義SLAM的難點(diǎn)在于如何設(shè)置誤差函數(shù),如何將觀測值設(shè)置為深度學(xué)習(xí)的檢測結(jié)果和分割結(jié)果,并一起融入SLAM的優(yōu)化問題。解決這些困難一定會(huì)給回環(huán)檢測問題帶來新的突破。
(3)加入回環(huán)檢測的后端優(yōu)化
回環(huán)檢測的最終目標(biāo)是更好地進(jìn)行后端優(yōu)化。在設(shè)置參數(shù)時(shí),應(yīng)該結(jié)合后端優(yōu)化算法。通過找到更多正確的回環(huán),提升整個(gè)系統(tǒng)的優(yōu)化效果。否則,錯(cuò)誤的回環(huán)可能使優(yōu)化結(jié)果收斂到錯(cuò)誤的結(jié)果,造成整個(gè)系統(tǒng)的失誤。傳統(tǒng)系統(tǒng)性能優(yōu)化指標(biāo)主要是算法的準(zhǔn)確率,但在一些新的后端優(yōu)化方法中,保證準(zhǔn)確率的同時(shí)盡量提高召回率,在優(yōu)化階段可減少錯(cuò)誤回環(huán)的影響。這可以幫助SLAM系統(tǒng)設(shè)計(jì)出更好的后端,從而達(dá)到更好的地圖構(gòu)建,有助于更好地構(gòu)建新的SLAM系統(tǒng)。
06 結(jié)論
回環(huán)檢測對(duì)于整個(gè)SLAM系統(tǒng)至關(guān)重要,傳統(tǒng)的詞袋模型可以在一般情況下得到較好的性能,但是仍然存在過多人工干預(yù)等問題。在計(jì)算機(jī)視覺與深度學(xué)習(xí)技術(shù)的支持下,基于深度學(xué)習(xí)的算法有更好的性能,已經(jīng)突破傳統(tǒng)詞袋模型,但是在實(shí)時(shí)性以及復(fù)雜場景下的情況仍然需要進(jìn)一步研究,這樣可以使回環(huán)檢測的算法更好地應(yīng)對(duì)場景的外觀變化。
為了更好地解決目前回環(huán)檢測中存在的問題,需要融入更多的相關(guān)領(lǐng)域的技術(shù),深度學(xué)習(xí)、目標(biāo)識(shí)別以及語義分割等技術(shù)的融入會(huì)給回環(huán)檢測帶來新的思考:
1)利用深度學(xué)習(xí)解決回環(huán)檢測問題,用專用的網(wǎng)絡(luò)來進(jìn)行圖像提取,這樣可以檢測出關(guān)鍵幀的深層特征,但是在信息特征的提取缺少較為清晰的指導(dǎo),訓(xùn)練參數(shù)的調(diào)整依賴以往積累下來的調(diào)參經(jīng)驗(yàn)。
2)加入語義信息的回環(huán)檢測,對(duì)構(gòu)建語義地圖、利用更高級(jí)的特征進(jìn)行回環(huán)檢測、節(jié)省地圖的存儲(chǔ)空間具有重要作用。
3)將回環(huán)檢測問題與后端優(yōu)化問題結(jié)合起來考慮達(dá)到更好地效果,使整個(gè)系統(tǒng)更加完整,這將是視覺SLAM未來發(fā)展的新方向。
審核編輯 :李倩
-
移動(dòng)機(jī)器人
+關(guān)注
關(guān)注
2文章
784瀏覽量
33980 -
SLAM
+關(guān)注
關(guān)注
24文章
434瀏覽量
32302 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5554瀏覽量
122431
原文標(biāo)題:移動(dòng)機(jī)器人視覺SLAM回環(huán)檢測原理、現(xiàn)狀及趨勢
文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
【「# ROS 2智能機(jī)器人開發(fā)實(shí)踐」閱讀體驗(yàn)】視覺實(shí)現(xiàn)的基礎(chǔ)算法的應(yīng)用
安森美在自主移動(dòng)機(jī)器人領(lǐng)域的發(fā)展成果
海康機(jī)器人布局關(guān)節(jié)機(jī)器人業(yè)務(wù)
2024移動(dòng)機(jī)器人市場風(fēng)云:新玩家批量涌現(xiàn),是挑戰(zhàn)還是機(jī)遇
移動(dòng)機(jī)器人核心科技解碼:導(dǎo)航、感知與掌控力的深度剖析
歐姆龍LD-90移動(dòng)機(jī)器人的應(yīng)用案例
思嵐科技榮獲雙年度移動(dòng)機(jī)器人優(yōu)質(zhì)供應(yīng)鏈獎(jiǎng)
移動(dòng)機(jī)器人的技術(shù)突破和未來展望

智能移動(dòng)機(jī)器人系統(tǒng)方案指南

新松移動(dòng)機(jī)器人批量進(jìn)軍歐洲新能源市場
智能移動(dòng)機(jī)器人

如何借助恩智浦MCX系列MCU糾錯(cuò)功能,打造可靠安全的移動(dòng)機(jī)器人?

評(píng)論