陳孟元 張玉坤 田德紅 丁陵梅
①(安徽工程大學(xué)電氣工程學(xué)院 蕪湖 241000)
②(高端裝備先進(jìn)感知與智能控制教育部重點(diǎn)實(shí)驗(yàn)室 蕪湖 241000)
同時(shí)定位與地圖創(chuàng)建(Simultaneous Location And Mapping, SLAM)是指在沒(méi)有環(huán)境先驗(yàn)信息的情況下,使用自身攜帶的多種傳感器采集環(huán)境信息,于運(yùn)動(dòng)過(guò)程中建立環(huán)境模型,并同時(shí)估計(jì)機(jī)器人自身運(yùn)動(dòng)。但SLAM存在計(jì)算量較大、復(fù)雜度較高等問(wèn)題,SLAM的智能化水平相比于動(dòng)物的導(dǎo)航能力較低。為此開(kāi)發(fā)和研究新的SLAM算法,特別是借鑒鼠腦海馬認(rèn)知機(jī)理的方法,是近年來(lái)移動(dòng)機(jī)器人SLAM領(lǐng)域的一個(gè)研究方向和重點(diǎn)[1–3]。
神經(jīng)學(xué)家研究發(fā)現(xiàn)動(dòng)物大腦中的海馬體在導(dǎo)航中起著關(guān)鍵作用,海馬體能夠?qū)崿F(xiàn)“空間認(rèn)知地圖”的構(gòu)建,并在路徑整合中發(fā)揮重要作用[4,5]。文獻(xiàn)[6]表明哺乳動(dòng)物海馬體內(nèi)的位置細(xì)胞和內(nèi)嗅皮層的網(wǎng)格細(xì)胞能夠?qū)Νh(huán)境形成類似地圖的空間表示,并把這種空間表示稱為一種能夠表示拓?fù)潢P(guān)系的認(rèn)知地圖。Hafting 等人[7]確定了路徑整合器在大腦結(jié)構(gòu)中的具體位置,其有力證據(jù)是在腦背側(cè)內(nèi)嗅皮層中發(fā)現(xiàn)一種在空間特定位置具有放電特性的網(wǎng)格細(xì)胞,當(dāng)動(dòng)物到達(dá)特定的位置點(diǎn)時(shí)該細(xì)胞總是被激活。Doeller等人[8]發(fā)表在Nature上的文章中也證實(shí)了人腦中網(wǎng)格細(xì)胞的存在。研究者認(rèn)為網(wǎng)格細(xì)胞是動(dòng)物空間導(dǎo)航的重要組成部分,近年來(lái)經(jīng)過(guò)大量動(dòng)物導(dǎo)航相關(guān)實(shí)驗(yàn)的研究,發(fā)現(xiàn)哺乳動(dòng)物大腦海馬中,參與構(gòu)建“空間認(rèn)知地圖”相關(guān)性的細(xì)胞除了網(wǎng)格細(xì)胞外還有位置細(xì)胞[9]、邊界細(xì)胞[10]、條紋細(xì)胞[11]等。研究人員根據(jù)這些細(xì)胞的特性設(shè)計(jì)多種數(shù)學(xué)模型,Barry等人[12]根據(jù)網(wǎng)格細(xì)胞的六邊形放電結(jié)構(gòu)提出振蕩干涉模型對(duì)網(wǎng)格細(xì)胞進(jìn)行建模,對(duì)速度信息和方向信息進(jìn)行整合來(lái)獲取大鼠在環(huán)境中的位置信息。但是缺乏生理學(xué)依據(jù)。Hardcastle等人[13]發(fā)現(xiàn)在不同的幾何環(huán)境下網(wǎng)格細(xì)胞的分布規(guī)律會(huì)發(fā)生變化,在實(shí)驗(yàn)中將圓形環(huán)境換成六邊形環(huán)境時(shí)網(wǎng)格細(xì)胞分布會(huì)重新排列且定位精度也發(fā)生了較大的變化。Jayakumar等人[14]針對(duì)不規(guī)則復(fù)雜環(huán)境場(chǎng)景對(duì)網(wǎng)格細(xì)胞分布的影響,引入邊界信息對(duì)網(wǎng)格野相位進(jìn)行周期性重置,提高了算法的定位精度。
隨著學(xué)者探究發(fā)現(xiàn),大鼠在進(jìn)行導(dǎo)航時(shí)不僅僅依靠位置感知模型,還涉及外界的視覺(jué)線索,為了將視覺(jué)線索與海馬體計(jì)算模型相融合,文獻(xiàn)[15]借鑒靈長(zhǎng)類動(dòng)物大腦的一些特性,提取視覺(jué)信息并采用模糊自適應(yīng)共振理論模型建立視覺(jué)記憶,實(shí)現(xiàn)對(duì)環(huán)境的認(rèn)知與表征,但該模型沒(méi)有考慮眾多神經(jīng)元細(xì)胞之間的聯(lián)系,魯棒性較差。Milford等人[16]提出基于鼠類定位與構(gòu)圖的導(dǎo)航算法(Rat Simultaneous Location and Mapping, RatSLAM),算法利用不同類型的定位細(xì)胞功能來(lái)完成空間導(dǎo)航任務(wù)。然而此算法實(shí)時(shí)性較低且受光照影響較大。文獻(xiàn)[17]為了提高RatSLAM 算法實(shí)時(shí)性將FAB-MAP算法融入到RatSLAM中,改進(jìn)后的算法采用了視覺(jué)詞袋模型來(lái)進(jìn)行閉環(huán)檢測(cè)提高了系統(tǒng)在復(fù)雜環(huán)境中導(dǎo)航的實(shí)時(shí)性。Hou等人[18]為了解決光照對(duì)環(huán)境的影響通過(guò)PlaceCNN網(wǎng)絡(luò)提取圖像的顯著性區(qū)域進(jìn)行閉環(huán)檢測(cè),在復(fù)雜的光照情況下取得了較好的效果。李維鵬等人[19]針對(duì)閉環(huán)路徑不一致、閉環(huán)視角較大等問(wèn)題,提出基于場(chǎng)景顯著性區(qū)域的閉環(huán)框架,提高了算法對(duì)歧義場(chǎng)景的分辨能力。
傳統(tǒng)的顯著性區(qū)域提取方法存在提取的冗余信息過(guò)多,影響閉環(huán)效率?;诖?,本文提出一種基于興趣傾向機(jī)制的仿生SLAM算法。利用LAHN構(gòu)建與海馬認(rèn)知機(jī)理有關(guān)的位置感知模型。與此同時(shí),在相似性場(chǎng)景匹配時(shí)通過(guò)興趣傾向機(jī)制將提取出來(lái)的顯著性區(qū)域進(jìn)行興趣賦值,減小冗余信息帶來(lái)的影響。并引入關(guān)鍵幀評(píng)分策略避免了模糊關(guān)鍵幀,提高了算法閉環(huán)的準(zhǔn)確率。將環(huán)境感知模型提取的視覺(jué)信息與位置感知模型競(jìng)爭(zhēng)出來(lái)的位置細(xì)胞相融合,建立具有拓?fù)潢P(guān)系的認(rèn)知地圖,認(rèn)知地圖的構(gòu)建過(guò)程如圖1所示。
圖1 認(rèn)知地圖構(gòu)建
在哺乳動(dòng)物的海馬體中存在許多相互關(guān)聯(lián)的神經(jīng)元,這些神經(jīng)元是大腦學(xué)習(xí)、形成場(chǎng)景記憶以及執(zhí)行空間導(dǎo)航的關(guān)鍵中樞,位置細(xì)胞和網(wǎng)格細(xì)胞等定位細(xì)胞均被證實(shí)存在于大腦海馬體中,其中位置細(xì)胞放電活動(dòng)具有明顯的位置選擇性,與所處的位置信息有密切的關(guān)系,這種特異性放電活動(dòng)能夠幫助動(dòng)物判斷自身所處環(huán)境中的位置。當(dāng)生物在2維空間自由活動(dòng)時(shí),網(wǎng)格細(xì)胞在特定的位置發(fā)生重復(fù)性的放電,其放電活動(dòng)具有高度的穩(wěn)定性,多個(gè)放電空間交叉疊加形成網(wǎng)格節(jié)點(diǎn),連接網(wǎng)格節(jié)點(diǎn)便形成一個(gè)近似六邊形的網(wǎng)格結(jié)構(gòu),覆蓋整個(gè)環(huán)境空間,基于這種六邊形網(wǎng)格結(jié)構(gòu),生物自由運(yùn)動(dòng)到網(wǎng)格節(jié)點(diǎn)時(shí),相應(yīng)的網(wǎng)格細(xì)胞會(huì)產(chǎn)生最大化放電活動(dòng),表明網(wǎng)格細(xì)胞相當(dāng)于一個(gè)坐標(biāo)系,度量生物的位置坐標(biāo)[20]。
LAHN是一個(gè)無(wú)監(jiān)督神經(jīng)網(wǎng)絡(luò),從輸入信息中提取最佳特征,當(dāng)輸入信息受到外界環(huán)境的限制時(shí),可以通過(guò)網(wǎng)絡(luò)的橫向連接調(diào)整輸出信息,能夠針對(duì)環(huán)境的變化進(jìn)行實(shí)時(shí)更新??紤]到不規(guī)則復(fù)雜環(huán)境場(chǎng)景對(duì)網(wǎng)格細(xì)胞分布規(guī)律的影響,本文采用LAHN對(duì)網(wǎng)格細(xì)胞進(jìn)行建模。機(jī)器人勻速在二維平面上進(jìn)行自由探索,以相同的概率到達(dá)平面內(nèi)的任意一點(diǎn),通過(guò)編碼器獲取瞬時(shí)角速度,將獲取的瞬時(shí)角速度信息經(jīng)過(guò)自組織映射算法對(duì)其進(jìn)行訓(xùn)練,映射到LAHN層,為機(jī)器人在探索環(huán)境時(shí)的網(wǎng)格細(xì)胞提供運(yùn)動(dòng)方向信息,方向編碼的更新規(guī)則如式(1)所示。
其中,κ為網(wǎng)格細(xì)胞空間尺度參數(shù),v為機(jī)器人當(dāng)前速度,μ為網(wǎng)格細(xì)胞放電幅值抑制常數(shù),決定網(wǎng)格細(xì)胞放電率幅值,本文取值為1。χijnh的值為負(fù)數(shù),為第j個(gè)網(wǎng)格細(xì)胞的抑制水平。χejxc的值為正數(shù),為第j個(gè)網(wǎng)格細(xì)胞的興奮水平。Rp為t時(shí)刻網(wǎng)格細(xì)胞放電率調(diào)節(jié)因子,根據(jù)邊界信息調(diào)整網(wǎng)格細(xì)胞興奮值,Xp為當(dāng)前機(jī)器人的位置信息,Xw為正前方的邊界位置信息。
LAHN激活函數(shù)采用雙極性激活函數(shù),激活函數(shù)取值范圍[?1,1],當(dāng)激活函數(shù)的輸入與輸出同號(hào)時(shí),加大網(wǎng)絡(luò)連接權(quán)重,否則,降低網(wǎng)絡(luò)連接權(quán)重,網(wǎng)絡(luò)輸出值即為網(wǎng)格細(xì)胞響應(yīng)值,其LAHN輸出值如式(5)所示。
其中,qij是前向通道權(quán)值,wik是橫向通道權(quán)值,ξk(t ?1)為前一時(shí)刻的網(wǎng)格細(xì)胞響應(yīng)值,m為在LAHN層中的神經(jīng)元總數(shù),n為網(wǎng)格細(xì)胞個(gè)數(shù)。
前向通道權(quán)值和橫向通道權(quán)值更新規(guī)則如式(6)、式(7)所示。
其中,ηF和ηL本文取值0.9,分別是前向?qū)W習(xí)率和橫向?qū)W習(xí)率。通過(guò)在環(huán)境中的探索與學(xué)習(xí),更新后的突觸權(quán)重呈六邊形周期分布。得到穩(wěn)定的網(wǎng)格細(xì)胞放電場(chǎng)。為了使突觸權(quán)重產(chǎn)生周期性的空間分布,對(duì)權(quán)重更新進(jìn)行非線性限制,分別設(shè)置權(quán)重的上邊界和下邊界,當(dāng)所有突觸的任一權(quán)重超出上邊界或下邊界之間的范圍時(shí),通過(guò)競(jìng)爭(zhēng)對(duì)所有突觸的權(quán)重等比例縮放,使得所有的突觸權(quán)重在上邊界和下邊界之間。
圖2(a)、圖2(b)是分別在正方形和六邊形環(huán)境中探索600s后生成的網(wǎng)格細(xì)胞分布圖。因?yàn)樘剿鲿r(shí)間過(guò)短,網(wǎng)格細(xì)胞分布規(guī)律較混亂。圖2(c)、圖2(d)是分別在正方形和六邊形環(huán)境中探索1000 s之后生成的網(wǎng)格細(xì)胞分布圖。探索時(shí)間充足,對(duì)環(huán)境場(chǎng)景更加熟悉,網(wǎng)格細(xì)胞分布均勻,能夠較好地表征環(huán)境位置信息。
圖2 網(wǎng)格細(xì)胞分布圖
本文將網(wǎng)格細(xì)胞群的響應(yīng)作為競(jìng)爭(zhēng)神經(jīng)網(wǎng)絡(luò)的輸入,通過(guò)競(jìng)爭(zhēng)型神經(jīng)網(wǎng)絡(luò)對(duì)位置細(xì)胞進(jìn)行建模,其位置細(xì)胞輸出響應(yīng)為如式(8)所示。
其中,σ為放電率調(diào)整參數(shù),xi為第i個(gè)位置細(xì)胞的參考位置。
僅依靠鼠腦海馬模型的內(nèi)部路徑整合功能進(jìn)行導(dǎo)航,易受復(fù)雜環(huán)境因素影響而導(dǎo)致定位精度較差。本文引入外界視覺(jué)線索來(lái)修正路徑整合帶來(lái)的誤差。機(jī)器人在自由探索環(huán)境時(shí),將傳感器采集環(huán)境中的圖像信息與發(fā)生特異性響應(yīng)的位置細(xì)胞進(jìn)行關(guān)聯(lián),獲取此時(shí)的位置信息。當(dāng)機(jī)器人在環(huán)境中漫游發(fā)現(xiàn)熟悉場(chǎng)景時(shí),使用該圖像之前關(guān)聯(lián)的位置信息修正當(dāng)前位置信息。
視覺(jué)感知模板是可擴(kuò)展的單元陣列,每個(gè)單元代表環(huán)境中獨(dú)特的視覺(jué)場(chǎng)景,當(dāng)機(jī)器人看到新的場(chǎng)景時(shí),會(huì)創(chuàng)建新的視覺(jué)感知模板來(lái)記錄該場(chǎng)景中的特征信息,并依據(jù)式(10)將視覺(jué)感知模板與同時(shí)發(fā)生特異性響應(yīng)的位置細(xì)胞信息相關(guān)聯(lián)[21]。
其中,φ取值0.8,為一個(gè)連接y強(qiáng)度常數(shù),決定視覺(jué)信息對(duì)位置細(xì)胞活動(dòng)的影響,δi為位置細(xì)胞與圖像特征之間的連接矩陣,Vi為當(dāng)前位置細(xì)胞對(duì)應(yīng)的圖像特征。
為了避免機(jī)器人在運(yùn)動(dòng)過(guò)程中因速度變化或者轉(zhuǎn)彎處相機(jī)抖動(dòng)導(dǎo)致采集的圖像信息模糊,本文提出一種關(guān)鍵幀選取策略防止選取的關(guān)鍵幀中出現(xiàn)模糊幀圖像,并將選取的關(guān)鍵幀與視覺(jué)感知模板相關(guān)聯(lián)[22,23]。通過(guò)距離閾值和角度閾值選取預(yù)選關(guān)鍵幀,采用Tenengrad函數(shù)對(duì)預(yù)選關(guān)鍵幀進(jìn)行清晰度評(píng)分,評(píng)分規(guī)則如式(11)所示。
其中,?(t)為 第t幀圖像的模糊評(píng)分值,ψt值為1時(shí)將預(yù)選關(guān)鍵幀設(shè)置為真正的關(guān)鍵幀,ψt值為0時(shí)將預(yù)選關(guān)鍵幀舍棄并將前一幀普通幀圖像即t–1幀圖像設(shè)置為預(yù)選關(guān)鍵幀,如果此預(yù)選關(guān)鍵幀滿足評(píng)分要求,則將此幀圖像設(shè)置為關(guān)鍵幀。
當(dāng)人類觀察某一場(chǎng)景時(shí),往往會(huì)將注意力集中場(chǎng)景中的某些顯著性區(qū)域部分,這些顯著性區(qū)域部分往往也是從場(chǎng)景獲取信息的關(guān)鍵,這些信息對(duì)于認(rèn)知這一場(chǎng)景有著很強(qiáng)的指引作用,而自注意力機(jī)制就是一種模仿這一認(rèn)知過(guò)程的特殊機(jī)制。
自注意力機(jī)制雖然提取出感知模板中的顯著性區(qū)域,但會(huì)提取過(guò)多的冗余信息,使得在模板匹配時(shí)增大了負(fù)重。本文算法將提取出的顯著性區(qū)域進(jìn)行興趣賦值,對(duì)提取出的顯著性區(qū)域進(jìn)行約束。首先使用融合自注意力機(jī)制的卷積神經(jīng)網(wǎng)絡(luò)來(lái)提取圖像信息中的顯著性區(qū)域,其網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示,然后通過(guò)興趣傾向函數(shù)對(duì)提取的信息進(jìn)行興趣賦值,最終輸出具有興趣值的顯著性區(qū)域。
圖3 融合自注意力機(jī)制的卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
融合自注意力機(jī)制的卷積神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)置如表1所示,其核心是學(xué)習(xí)圖像中每個(gè)元素的重要性,將采集的圖像作為輸入,利用編碼器中的卷積與池化操作提取輸入圖片的特征信息,通過(guò)中間區(qū)將采集的圖像特征進(jìn)行采樣輸出x∈Rc×n的特征張量,分別使用2個(gè)卷積核大小為1×1卷積網(wǎng)絡(luò)將特征張量映射到特征空間f和g中,映射方式如式(13)所示。
表1 融合自注意力機(jī)制的卷積神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)置
其中,Wf ∈RC′×N,Wg ∈RC′×N,為映射權(quán)重矩陣,通過(guò)張量相乘的得到f和g2個(gè)特征空間的相似性sij, 并計(jì)算j位 置與i位 置參數(shù)之間權(quán)重的比值βji,為了縮短收斂時(shí)間,對(duì)特征空間相似性sij進(jìn)行歸一化處理:
其中,h為輸入信息x與權(quán)重矩陣Wh ∈RC×N的乘積。通過(guò)上采樣策略對(duì)輸出特征進(jìn)行解碼,利用softmax函數(shù)來(lái)對(duì)解碼出的顯著性向量進(jìn)行分類,其分類輸出結(jié)果如式(16)所示。通過(guò)興趣傾向函數(shù)對(duì)提取出來(lái)的顯著性區(qū)域進(jìn)行興趣賦值,其興趣傾向函數(shù)如式(17)所示。
其中,lb代表顯著性區(qū)域向量所屬類別的標(biāo)簽,F(xiàn)c(·) 表 示全連接操作,s oftmax(·)表示分類函數(shù),n為同一類別中的顯著性區(qū)域向量個(gè)數(shù),同一類別內(nèi)出現(xiàn)的顯著性區(qū)域向量越少,其興趣值越大。將不同場(chǎng)景提取出來(lái)的顯著性區(qū)域向量通過(guò)余弦距離進(jìn)行相似性度量,興趣值越大的顯著性區(qū)域在進(jìn)行匹配時(shí)所占的權(quán)重值越高。
圖4(a)、圖4(b)分別為KITTI數(shù)據(jù)集的城市道路提取效果圖和鄉(xiāng)村道路提取效果圖。圖中方框中標(biāo)記的是圖像的顯著性區(qū)域,方框?qū)?yīng)的數(shù)值是當(dāng)前顯著性區(qū)域的興趣值。從圖4(a)、圖4(b)可以看出路燈在實(shí)驗(yàn)場(chǎng)景中也是顯著性區(qū)域,但是對(duì)檢測(cè)是否來(lái)過(guò)這一場(chǎng)景作用很小,因此通過(guò)本文算法計(jì)算出的興趣值很低,對(duì)于一些具有標(biāo)志性的顯著性場(chǎng)景,例如路標(biāo),具有標(biāo)志性的建筑物等對(duì)檢測(cè)是否來(lái)過(guò)此場(chǎng)景有著極其重要的作用,通過(guò)本文算法計(jì)算出的興趣值較高。從圖4(b)還可以看出由于紅綠燈這一顯著場(chǎng)景的興趣值較低,但是紅綠燈這一場(chǎng)景與路標(biāo)結(jié)合起來(lái)之后的興趣值比原來(lái)的路標(biāo)場(chǎng)景的值更高,這是因?yàn)槁窡艉吐窐?biāo)結(jié)合之后形成了一種更具有信息傳遞的標(biāo)志物。圖4(c)、圖4(d)為ORB特征提取效果圖,圖中可以看出提取的特征點(diǎn)出現(xiàn)大量重疊特征點(diǎn),容易造成誤匹配,并且占用系統(tǒng)計(jì)算時(shí)間。
圖4 圖像特征提取示意圖
根據(jù)細(xì)胞路徑積分獲取的位置信息與視覺(jué)感知模板相關(guān)聯(lián),建立具有拓?fù)湫畔⒌恼J(rèn)知節(jié)點(diǎn),構(gòu)建半拓?fù)湔J(rèn)知地圖,為載體運(yùn)動(dòng)提供空間坐標(biāo)系。每一個(gè)具有拓?fù)潢P(guān)系的認(rèn)知節(jié)點(diǎn)e包含了位置細(xì)胞的放電率p,與位置細(xì)胞相關(guān)聯(lián)的視覺(jué)模板V以及認(rèn)知節(jié)點(diǎn)之間的拓?fù)潢P(guān)系L,單個(gè)認(rèn)知節(jié)點(diǎn)定義為
設(shè)定認(rèn)知閾值為Gth,將當(dāng)前位置認(rèn)知點(diǎn)與已存在的認(rèn)知點(diǎn)進(jìn)行位置比較,得到一個(gè)位置度量G。
當(dāng)認(rèn)知節(jié)點(diǎn)的位置信息的運(yùn)動(dòng)量超過(guò)閾值或者當(dāng)發(fā)現(xiàn)新的視覺(jué)場(chǎng)景時(shí),地圖上將會(huì)創(chuàng)建一個(gè)新的認(rèn)知節(jié)點(diǎn),新的認(rèn)知節(jié)點(diǎn)表示為
其中, ?L為上一個(gè)認(rèn)知節(jié)點(diǎn)的間距。當(dāng)視覺(jué)模板檢測(cè)到回到以前場(chǎng)景時(shí),為了確保地圖構(gòu)建的準(zhǔn)確性,采用時(shí)間一致性和幾何一致性來(lái)進(jìn)行閉環(huán)驗(yàn)證,當(dāng)驗(yàn)證成功時(shí)將在閉環(huán)處對(duì)所有的經(jīng)驗(yàn)進(jìn)行更新。
其中,ρ取值0.6,為認(rèn)知速度常量,決定移動(dòng)機(jī)器人對(duì)環(huán)境的學(xué)習(xí)速度。Nf為認(rèn)知地圖當(dāng)前認(rèn)知節(jié)點(diǎn)ei與其他節(jié)點(diǎn)的連接數(shù)量,Nt為其他認(rèn)知節(jié)點(diǎn)與當(dāng)前節(jié)點(diǎn)ei的連接數(shù)量。
本文運(yùn)行程序電腦配置:CPU為i5處理器,內(nèi)存8 GB,主頻2.9 GHz,系統(tǒng)為Ubuntu18.04。使用公開(kāi)的TUM, KITTI數(shù)據(jù)集和真實(shí)環(huán)境對(duì)本文算法進(jìn)行驗(yàn)證。
為了驗(yàn)證本文算法的有效性,使用在室內(nèi)環(huán)境采集的TUM數(shù)據(jù)集對(duì)本文算法進(jìn)行評(píng)估,圖5為本文算法、RatSLAM和ORB-SLAM算法的軌跡對(duì)比圖。表2為3種算法在TUM數(shù)據(jù)集上運(yùn)行時(shí)獲取的對(duì)比數(shù)據(jù)。由圖5可知本文算法獲取的軌跡圖更加接近真實(shí)軌跡。通過(guò)表3可得,在閉環(huán)準(zhǔn)確率方面,本文算法與RatSLAM算法相比提高了約18.4%。這是由于本文算法提出的關(guān)鍵幀選取策略剔除了關(guān)鍵幀中的模糊幀圖像,提高了本文算法閉環(huán)檢測(cè)的準(zhǔn)確率。在單幀圖像處理時(shí)間方面,本文算法略高于ORB-SLAM,這是由于本文算法在剔除模糊幀圖像時(shí)占用了一定的時(shí)間,但本文算法的單幀處理時(shí)間與RatSLAM相比有較大改善,縮減了約26.7%。在定位精度方面,本文算法的軌跡均方根誤差與ORB-SLAM相比減少了約21.5%,與RatSLAM算法相比減少了約35.0%,這是由于本文算法通過(guò)不規(guī)則復(fù)雜環(huán)境邊界信息對(duì)網(wǎng)格細(xì)胞進(jìn)行校正提高了算法的定位精度。由此可見(jiàn)本文算法在閉環(huán)的準(zhǔn)確率和定位精度方面與ORB-SLAM和RatSLAM相比有較大優(yōu)勢(shì)。
表2 各算法在TUM數(shù)據(jù)集上的結(jié)果對(duì)比
表3 各算法在KITTI數(shù)據(jù)集上的結(jié)果對(duì)比
圖5 TUM部分序列軌跡對(duì)比圖
為了進(jìn)一步驗(yàn)證本文算法的有效性,使用在室外環(huán)境下采集的KITTI數(shù)據(jù)集對(duì)本文算法進(jìn)行評(píng)估。如圖6所示,圖6(a)、圖6(d)、圖6(g)為未進(jìn)行位置細(xì)胞修正的軌跡圖,可見(jiàn)3個(gè)序列上的軌跡均存在明顯的漂移。圖6(b)、圖6(e)、圖6(h)中紅色線條連接的部分是發(fā)生閉環(huán)的場(chǎng)景。圖6(c)、圖6(f)、圖6(i)是本文算法經(jīng)過(guò)位置細(xì)胞修正之后的軌跡圖,并與RatSLAM和ORB-SLAM算法進(jìn)行對(duì)比,可見(jiàn)本文經(jīng)過(guò)位置細(xì)胞修正的軌跡圖更接近于真實(shí)軌跡。在KITTI數(shù)據(jù)集不同序列下對(duì)比本文算法、RatSLAM和ORB-SLAM三者的位姿誤差,相對(duì)平移誤差(m)、相對(duì)旋轉(zhuǎn)誤差(°)和單幀圖像處理時(shí)間 (ms)如表3所示,在00, 02, 05和06序列本文算法在相對(duì)平移誤差和相對(duì)旋轉(zhuǎn)誤差與O R B-S L A M,RatSLAM相比有較大優(yōu)勢(shì),因?yàn)楸疚乃惴ㄍㄟ^(guò)興趣傾向函數(shù)篩選掉冗余的顯著性區(qū)域,提高了閉環(huán)的準(zhǔn)確性。在01, 03和04序列與其他算法相比,提升沒(méi)有太大明顯,并且在這3個(gè)序列上本文算法、RatSLAM和ORB-SLAM三者的位姿誤差都相對(duì)較大,是因?yàn)樵谶@3個(gè)序列上沒(méi)有閉環(huán)的路段,無(wú)法通過(guò)閉環(huán)修正漂移帶來(lái)的誤差。
圖6 KITTI部分序列軌跡對(duì)比圖
本文實(shí)驗(yàn)平臺(tái)是輪式移動(dòng)機(jī)器人,其硬件平臺(tái)搭建如圖7(a)所示。實(shí)驗(yàn)過(guò)程中主要參數(shù)設(shè)置如表4所示。選取學(xué)校會(huì)議室為室內(nèi)實(shí)驗(yàn)場(chǎng)景,如圖7(b)所示,大小為5 m×7 m。圖7(c)為會(huì)議室場(chǎng)景的平面布局圖,其中虛線部分為會(huì)議桌,陰影部分為桌子、椅子等障礙物。a,b,c為機(jī)器人在實(shí)驗(yàn)場(chǎng)景中的位置,移動(dòng)機(jī)器人圍繞會(huì)議桌運(yùn)動(dòng)的過(guò)程中實(shí)時(shí)獲取圖像信息并處理。
圖7 硬件平臺(tái)及真實(shí)實(shí)驗(yàn)環(huán)境場(chǎng)景
表4 主要參數(shù)設(shè)置
移動(dòng)機(jī)器人從a點(diǎn)位置出發(fā),圍繞會(huì)議桌做逆時(shí)針運(yùn)動(dòng)兩圈,最后回到a點(diǎn)位置。圖8(a)、圖8(d)、圖8(g)為里程計(jì)軌跡,圖8(b)、圖8(e)、圖8(h)則是本文算法的運(yùn)行軌跡,圖8(c)、圖8(f)、圖8(i)為當(dāng)前時(shí)刻的位置細(xì)胞放電響應(yīng)圖。從圖中可以看出,當(dāng)?shù)竭_(dá)c點(diǎn)位置時(shí),本文算法和里程計(jì)信息都存在漂移現(xiàn)象,但當(dāng)運(yùn)行第2圈到b點(diǎn)位置時(shí),本文算法檢測(cè)到是之前來(lái)到過(guò)的熟悉場(chǎng)景,開(kāi)始對(duì)位置細(xì)胞進(jìn)行重定位,并且修正之前的位置信息。通過(guò)運(yùn)行完的軌跡線路來(lái)看,本文算法由于閉環(huán)實(shí)時(shí)校正,所得結(jié)果與真實(shí)路徑相似,而里程計(jì)信息出現(xiàn)了較大的偏差。圖9是本文算法和里程計(jì)在不同時(shí)刻下的相對(duì)平移誤差和相對(duì)旋轉(zhuǎn)誤差,從圖中可以看出本文算法在未進(jìn)行位置細(xì)胞修正之前,誤差隨著時(shí)間的增加而增大,經(jīng)過(guò)熟悉場(chǎng)景時(shí),本文算法開(kāi)始修正當(dāng)前的位置信息,誤差逐漸減小且趨于穩(wěn)定狀態(tài),而傳統(tǒng)的里程計(jì)沒(méi)有位置修正這一環(huán)節(jié),所以隨著時(shí)間的增加,漂移誤差越來(lái)越大。
圖8 移動(dòng)機(jī)器人路徑圖
圖9 視覺(jué)里程計(jì)與本文算法定位誤差對(duì)比圖
為了提高移動(dòng)機(jī)器人在復(fù)雜環(huán)境中的定位精度和閉環(huán)準(zhǔn)確率,本文提出一種基于興趣傾向機(jī)制的仿生SLAM算法。本文所提算法具有以下優(yōu)點(diǎn):(1)解決了不規(guī)則復(fù)雜環(huán)境場(chǎng)景對(duì)網(wǎng)格細(xì)胞分布的影響,使得移動(dòng)機(jī)器人能夠應(yīng)用在復(fù)雜環(huán)境場(chǎng)景中進(jìn)行實(shí)時(shí)定位與建圖。(2)引入關(guān)鍵幀評(píng)分策略解決了關(guān)鍵幀中出現(xiàn)模糊幀圖像問(wèn)題。提高了閉環(huán)檢測(cè)的準(zhǔn)確率。(3)采用興趣傾向機(jī)制對(duì)提取的顯著性區(qū)域進(jìn)行興趣賦值,減小冗余環(huán)境信息對(duì)閉環(huán)檢測(cè)環(huán)節(jié)產(chǎn)生的干擾。實(shí)驗(yàn)結(jié)果表明移動(dòng)機(jī)器人在漫游和導(dǎo)航的過(guò)程中能夠動(dòng)態(tài)形成和更新認(rèn)知地圖。下一步將在本文研究的基礎(chǔ)上,融合IMU、激光雷達(dá)等較精確的傳感器提高機(jī)器人遇到動(dòng)態(tài)障礙物的魯棒性,引入深度學(xué)習(xí)方法賦予機(jī)器人語(yǔ)義功能實(shí)現(xiàn)機(jī)器人自主導(dǎo)航等。