王文照, 曹慧亮, 王晨光, 唐 軍, 劉 俊, 申 沖
(1. 中北大學儀器與電子學院, 太原 030051;2. 中北大學省部共建動態測試技術國家重點實驗室, 太原 030051)
在機器人領域, 導航是自主移動機器人執行運輸、 搜救和監視等任務的先決條件。 同步定位和地圖構建(Simultaneous Localization and Mapping,SLAM)是指: 移動機器人在沒有當前環境數據的情況下利用搭載的視覺傳感器采集視覺信息, 在運動中建立周圍環境的模型并同步估計自己的下一步運動。 現有基于優化或概率濾波器的SLAM 理論已有近30 年的發展[1], 已經較好地完成了“定位”與“建圖” 過程, 但都仍然存在一定的局限性。由于實際環境十分復雜, 例如光線影響、 不斷有行人干擾等, 導致現有SLAM 模型存在一定的局限性。
空間認知賦予了動物出色的長航時高精度自主導航能力, 例如在換季時的遷徙等, 它們在大規模動態環境中的導航性能優于現代機器人。 生物學家研究發現, 哺乳動物在空間中的位置是通過結合大腦中的局部視覺線索和自運動信息來估計的, 然后在大腦中形成一個經驗地圖來幫助動物在復雜環境中導航[2]。 其中, 海馬體-內嗅皮層神經回路中的神經細胞在空間認知中起著重要作用: 位置細胞、 頭朝向細胞、 網格細胞、 速度細胞和邊界細胞等等, 這些神經細胞通過在大腦中放電活動的增強或減弱來對環境認知進行描述。
受動物導航的啟發, 科學家們提出了將神經細胞導航模型應用于機器人。 Milford 等[3]提出了一種模仿老鼠海馬區位置細胞定位機理的仿生位置識別算法: RatSLAM。 該算法提出了一種基于連續吸引子的神經網絡模型, 并結合基于圖像信息旋轉與速度感知原理, 模擬了鼠類感知環境和識別位置的機制, 成功地進行了66km 的車載實驗。 之后他們還在不改變RatSLAM 核心的情況下, 改進了視覺系統來解決2.5D 環境下的SLAM 問題。 Silveira 等[4]通 過 使 用 三 維 位 置 細 胞 模 型 擴 展 了RatSLAM 模型, 探索了三維水下環境中的SLAM 問題。 Yu 等[5]提出了在三維空間中神經啟發的六自由度純視覺類腦導航: NeuroSLAM 系統, 并通過實驗證明了它能夠正確生成拓撲結構的三維地圖。另外, 除了連續吸引子神經網絡, 學者們還研究了由不同類型神經網絡建模的導航細胞模型, 如深度神經網絡和脈沖神經網絡。
盡管RatSLAM 在SLAM 領域獲得了一定的成就, 而它的性能精度往往是由視覺感知所決定的。由于該系統對圖像進行了池化處理, 易造成場景信息的大量丟失, 從而引起環境感知混淆與構建地圖失敗。 學者們紛紛對RatSLAM 算法中視覺感知模塊進行了優化: Chen[6]將姿態測量單元和RTAB(Real Time Appearance Based)算法相結合, 有效解決了視覺里程計誤差累積的問題。 Kazmi 等[7]通過改進自生長組織圖來模擬導航細胞構建地圖的行為, 這使得建圖收斂更快、 占用內存更小。 于乃功等[8]使用卷積神經網絡來對場景圖進行特征提取, 但該方法需預先對場景進行訓練, 所以存在魯棒性差的問題。 Zhou 等[9]提出用ORB(Oriented Fast and Rotated Brief) 特征來改進視覺處理部分,雖然一定程度上提高了性能, 但處理時間明顯增加, 使視覺處理時間與構建地圖時間不同步。 ORB的優點在于計算時間少, 但尺度變換魯棒性差。而SURF(Speed Up Robust Feature) 可以稱為SIFT(Scale-invariant Feature Transform) 的升級版本, 在繼承SIFI 魯棒性和抗干擾性的同時, 具有較好的尺度不變性和旋轉不變性, 不受光線的影響, 解決了原有特征點采集量少的問題。
受RatSLAM 與SURF 實現的啟發, 本文采用SURF 替代RatSLAM 算法的視覺處理方法來解決光線影響的問題, 并用位置細胞節點對運動軌跡進行校正來提高定位精度, 構建的經驗地圖包含了移動載體所走過的位置坐標。 為了充分驗證本文方法的有效性, 本文與其他視覺處理方法進行了比較, 實驗結果表明, 該方法能顯著提高類腦導航系統的魯棒性。
視覺處理是SLAM 算法中不可替代的一部分。在經驗地圖構建過程中, 采用視覺信息來確定局部場景細胞的生成并同時消除冗余圖像; 而在全局定位過程中, 移動小車捕獲傳入的圖像幀并將它們與記錄的視覺模板進行比較, 以確定其位置。
RatSLAM 算法結構如圖1 所示[3]。 該算法局部場景的形成主要是利用絕對差總和的視覺處理方法, 即通過比較一組系列圖片平均絕對強度差來獲取載體在環境中的方向與位置信息, 并且通過對圖像像素灰度的比較來進行閉環檢測, 判斷是否需要對當前位置進行修正。 這種處理方式有不足之處: 因為移動載體的攝像頭是向前捕獲圖像,使得移動載體只能學習前進或者后退方向的區域,而不是全景視覺圖像, 并且絕對差總和視覺處理算法只是比較水平和垂直方向相鄰圖像的灰度差異。 因此, 該方法的優點是簡單且適合載體在簡單環境中運動, 缺點是易受光線影響干擾和不能識別已有模板圖像旋轉后的場景等, 所以光線的影響會造成經驗地圖的漂移并形成累積誤差。 本文使用SURF 算法來代替絕對差總和視覺算法, 并實驗證明該方法性能良好。

圖1 RatSLAM 算法結構圖Fig.1 Structure diagram of RatSLAM algorithm
SURF 作為一種魯棒的局部特征檢測器為尺度不變特征變換SIFT 的一種變換算法, 與SIFT 不同的是SURF 采用了更為高效的特征描述子生成方法: 首先建立積分圖像提高運算速度; 接著引入箱式濾波器計算每個像素點的Hessian 矩陣判別式的正負取值做特征點檢測; 最后以哈爾小波特征法對特征點的主方向進行設定, 由此一系列算法步驟完成64 維特征描述子的構建。
采集到的特征點放入提前準備好的特征點數據庫中, 對每個特征點數據結構進行保存。 其中涉及到的相關信息有: 特征點的位置坐標、 尺度、方向以及64 維特征向量; 收集特征點信息是為了當有新圖像信息被采集到時能夠將其與特征點數據庫中的信息進行比對, 比對的原則是在歐氏距離范圍內搜索最近鄰或次近鄰特征點, 間隔小于設定值即為判定成功。 SURF 特征匹配算法共分為四個步驟: 特征點檢測、 特征點定位、 特征點主方向分配過程以及特征點描述子生成。
實驗結果表明, 對于相同數量的特征, SURF的處理時間比較慢, 但它可用于實現良好的位置識別性能。 與其他特征描述如SIFT 和ORB 相比,它的主要優點包括: 1)提供了一種穩定的計算和匹配算法; 2) 保留了對圖像縮放和旋轉不變性的能力; 3)相對不受圖像噪聲、 光照等的影響[10-11]。 因此, 本文采用SURF 方法從圖像中提取特征作為視覺模板。 如圖2 所示, 當前圖像與先前的視覺模板匹配時, 認為載體先前到達了這個地方, 否則將向局部視圖單元添加一個新的視覺模板。

圖2 局部場景細胞視覺模板匹配過程Fig.2 Templates matching process for local view cells
優化后的算法框架如圖3 所示, 該系統主要由視覺處理模型和經驗地圖構建模型組成: 視覺處理模型負責提取SURF 特征; 在構建經驗地圖模型中, SURF 特征與表示特定位置的局部場景細胞相關聯; 連續吸引子神經網絡確保即使在沒有外部傳感器的情況下, 經驗地圖模型也能收斂在穩定狀態; 局部場景細胞活動、 路徑積分和連續吸引子神經網絡共同構建經驗地圖。

圖3 基于特征匹配與位置細胞節點校正算法的類腦導航模型Fig.3 Brain-inspired navigation model based on feature matching and place cell nodes correction algorithm
基于SURF 特征匹配的優化RatSLAM 類腦導航方法具體環節包括:
(1)局部場景細胞的構建
局部場景細胞被構造為一個視覺模板, 其中每個細胞與連續吸引子神經網絡中的細胞相關聯。將采集實驗場景圖像依次進行高斯濾波去噪與SURF 特征提取, 然后將提取的結果進行歸一化處理, 構造出實驗環境的局部場景模板, 并將其放置到視覺場景模板匹配庫中。 由圖像的SURF 特征向量組成的局部場景模板庫為P=PSURF= {P11,P12, …,P1n}, 兩個特征點之間的匹配程度用歐氏距離判斷。 對于模板匹配來說, 其歐式距離計算公式為
式(1)中,px和分別為此模板和第j個模板特征點x的位置,m為采集到的特征點數量。 由d(j)能得出最優匹配模板b, 如下所示
式(2) 中,n為學習過的模板數量。 判斷是否需要新增模板是通過比較和d(b)設置的模板匹配閾值εd實現的, 比較規則如下
若匹配結果d(b)小于或者等于閾值εd, 表明模板匹配成功, 經驗地圖模型將向相關的局部場景細胞中注入能量, 否則創建一個新的局部場景模板。 新模板經學習后進入到模板庫中, 待與相似的模板進行匹配。 注入的能量將在連續吸引子神經網絡中的非活動區域產生活動包, 這將用于系統完成路徑積分和閉環檢測。 這種由局部場景細胞引起的經驗地圖的變化被描述為
(2)位置細胞節點校正
位置細胞除了表示載體的位置信息外, 還用來進行位置修正: 通過設置細胞節點的方式對獲得的運動載體位置信息進行修正, 減少累積誤差的影響。 該系統實時檢測當前視覺信息是否能與預先存儲的視覺模板匹配成功, 如果匹配成功,則表示已到達一個“熟悉的地方”, 之后整個路徑集成網絡內的空間單元將被放電重置。 本文結合SURF 特征匹配算法提出位置節點誤差補償模型,如圖4 所示, 藍色箭頭為運動載體的基準軌跡, 黑色箭頭為校正后的軌跡, 紅色圓點為預先存儲參考圖像庫中的場景圖像。

圖4 位置細胞節點誤差補償模型Fig.4 Error compensation model of place cell nodes
提前選取若干張節點場景圖像加入到參考圖像庫中, 并賦予這些節點場景圖像精確的位置信息。 將運動中獲取的場景圖像與預先存儲在參考圖像庫中的場景圖像進行比對檢測, 檢測成功返回節點精確的位置信息, 將檢測到的兩個位置細胞節點間的誤差問題建立線性誤差模型, 將計算出的誤差補償到兩個場景節點間的軌跡數據上。認知點位置校正過程中, 認知點位置改變為Δpi,其表示如下
式(5)中,α為認知速度系數, 經過反復多次的實驗,α=0.5 時,Δpi可以在地圖上迅速收斂并達到穩定狀態;Nf為從認知點i跳躍到之前已獲得的認知點的數量;Nt為已獲得的認知點跳躍到認知點i的數量。
(3)局部場景細胞與位姿細胞的連接
局部場景細胞是以對地圖構建和定位有用的形式輸入到移動載體外部傳感器的集合, 其輸入的過程就是局部場景細胞Vi與位姿細胞ΔPx′y′θ′關聯的過程。 圖5 表示導航細胞之間的連接。

圖5 導航細胞的連接Fig.5 Connection of navigation cells
式(6) 中,Vi為局部場景細胞的活性水平,Px′y′θ′為位姿細胞的興奮度。 通過連接強度相互連接的位姿場景地圖可以通過在位姿細胞中注入活性保持和校正它的位姿信息(x′,y′,θ′)。 活躍的局部場景細胞利用與連接強度總和的比例關系, 激發與它們相關聯的位姿細胞的活性。 細胞活動的變化ΔPx′y′θ′可利用下式獲得
式(7)中,δ為常數, 表示視覺信息對載體位姿估計的影響。
(4)連續吸引子神經網絡模型
經驗地圖模型構建的核心是連續吸引子神經網絡, 該模型被廣泛用于模擬大腦“GPS”。 在本文算法中, 細胞以(x′,y′,θ′)坐標排列, (x′,y′)對應細胞平面中的某個位置,θ′為載體的頭部方向。 連續吸引子神經網絡的動態通過以下三個階段來確保細胞的活性P保持穩定:
①興奮度權重的更新
在位姿細胞組成的細胞矩陣中, 通過興奮度權重矩陣ε表征該細胞對其他細胞的影響。 參數εabc是將表示位置信息中對應興奮性的二維高斯分布和表示方向信息中對應興奮性的一維分布相乘,計算公式如下
式(8) 中,a、b、c為x′、y′、θ′的分布系數,kx′y′和kθ′分別為(x′,y′) 和θ′的方差系數。 由興奮度的變化導致位姿細胞活動的變化如下
式(9)中,Nx′、Ny′、Nθ′為在空間中的位姿細胞三維矩陣元素。
②對所有細胞的全局抑制
各活動細胞在一定程度上呈現相互競爭關系。由于多個活動細胞構成感知細胞需要一定時間才能完成, 并且在這一過程中又不斷有新的視覺信息被輸入, 因此對位姿細胞的全局抑制過程是緩慢的, 抑制后的細胞興奮度為
式(10)中, 全局抑制水平由控制常數φ限制,興奮度要求被控制為一個包含零的正數。
③對位姿細胞活動的歸一化
完成前兩個步驟后需要對細胞的活動進行歸一化, 歸一化的作用是細胞在新的視覺信息被輸入和路徑積分被輸入后維持總活性, 歸一化后細胞的興奮度為
(5)經驗地圖的構建
經驗地圖是一種基于觀測和學習得到的對環境的描述, 根據外部特征生成幾何關系的描述,可以用于不同位置的導航。 經驗地圖由許多認知點構成, 認知點可以被描述為
式(12)中, 用位姿細胞Pi和局部場景細胞Vi來表示認知點,pi為ei在地圖中的位置。 如果現有位姿細胞與當前位姿細胞之間的距離達到閾值,則創建一個新的認知點
認知點是有活性的, 且活性取決于細胞構成的網絡中能量峰值與每個認知點的“相關區域”的接近程度。 當網絡的能量峰值介于“相關區域”之中時, 該認知點被激活。 局部場景細胞V類似于開關的作用, 第i個認知點的總能級水平Ei為
式(14)中,Vcurr為當前視覺場景,Vi為與認知點相關的視覺場景。
(6)路徑積分
dij為認知點i到認知點j的轉換距離。 通過對比轉換前后載體的位姿信息, 載體在兩個認知點之間的位姿狀態改變dPij可計算如下
式(15)中,Pi和Pj為認知點i與認知點j移動載體的位姿矢量。
當移動載體在熟悉的二維環境中運動時, 可能會重復之前的認知點關聯, 新的轉換信息為
(7)閉環檢測
移動載體在環境中遇到熟悉的場景時, 局部場景細胞的活性注入到位姿細胞的矩陣中, 移動載體重新定位位置, 這將引起經驗地圖中移動載體的相關位置到最近獲得的新認知點。 例如, 認知地圖中兩個認知點空間位置可能轉化成相對更小位置距離被聯系在一起。
圖6 顯示了實驗中移動小車的硬件架構, 該移動小車由1 個移動底座、 1 臺相機和1 臺微型電腦組成。 移動底座是一個緊湊的差速驅動移動小車,包括1 個帶內置編碼器的運動控制器, 小車嵌入式運動控制器執行小車的速度控制并提供里程信息。相機安裝在移動基座上, 以捕獲環境的視覺信息,相機視場角為水平80°、 垂直50°與對角88°, 景深范圍為0.5m 至無窮遠, 最大幀數為30fps 以及分辨率為2560 ×1440(像素); 微型電腦用于記錄視覺信息; 采樣頻率為0.2s, 移動載體最大速度為1.5m/s。 基準數據由北斗星通SPAN-KVH1750 導航參數測量系統采集, 在戶外定位誤差優于0.05m, 在室內60s 自動后處理定位誤差為0.15m。

圖6 實驗裝置圖Fig.6 Diagram of robot platform
認知速度常數取0.5, 視覺校準常數取0.005,位姿感知細胞激活程度的權重系數取0.5, 視覺模板的權重系數取0.5, 校正系數取0.3, 模板匹配閾值取0.85, 位置細胞節點設置數量為4。 本文在不同方面對不同的算法進行了評估。
室內實驗場景選取中北大學教學樓35m ×30m矩形環形走廊, 其光線影響通過如圖7 所示來區分, 場景中有墻壁、 移動的人與擺放的設施等。車載平臺繞場景運動4 圈并采集圖像, 運動距離約為400m。

圖7 室內實驗場景Fig.7 Diagram of indoor experiment scenes
本文采用SLAM 閉環檢測中的準確率和召回率來分析各個視覺處理算法的性能[12]。 準確率(Precision)和召回率(Recall)計算公式為
式(17) 中,TP表示真陽性,FP表示假陽性,FN表示假陰性。
表1 給出了在室內兩種環境下RatSLAM、 基于ORB 的視覺類腦導航以及基于SURF 的視覺類腦導航模型對應的準確率和召回率。 RatSLAM 在有光線影響時的準確率和召回率顯著下降, 這是因為RatSLAM 對幀率較高的場景無法識別出圖像的差異。 基于ORB 的視覺類腦導航雖然在無光線影響的情況下與本文方法表現性能相差無幾, 但在有光線影響的情況下準確率與召回率明顯下降, 魯棒性比較差。 然而即使是在有光線影響的情況下,本文所提出的方案準確率與召回率下降不是很多,算法依然可以在保證高召回率的基礎上提供更高的準確率表現, 算法顯著優于其他兩種算法。

表1 室內兩種情況下三種算法準確率和召回率結果Table 1 Results of precision and recall for three algorithms under two conditions indoor
圖8為移動載體在兩種情況下的實驗場景中漫游認知學習后分別使用三種算法構建的經驗地圖。對比結果顯示, 三種視覺類腦導航方法在相同實驗場景下基本上都可以完成對經驗地圖的構建,這表明三種模型都能有效地復現機器人的運行軌跡。 從有光線影響的情況下構建的經驗地圖來看,RatSLAM 存在漂移現象且沒有檢測到閉環; 而改進后基于SURF 的視覺類腦導航方法構建的軌跡較為穩定且即使在有光線影響的情況下也可以檢測到閉環。 從閉環效果來看, RatSLAM 模型因為不能支持多位姿假設, 這些位姿無法通過移動載體下一步的運動和視覺輸入得到校正, 從而出現移動載體方向無法校正、 運動軌跡出現較大偏離的狀態, 因此移動載體易出現定位偏差且嚴重偏離軌跡。 從軌跡對比可以看出, 基于SURF 的類腦導航方法相較于其他兩種類腦導航模型, 能及時且準確地檢測到閉環, 運動軌跡也更優于其他兩種類腦導航模型, 經驗地圖與實際運行軌跡重合度更高。

圖8 室內三種模型在兩種情況下構建經驗地圖Fig.8 Three models construct experience map in two conditions indoor
表2 為兩種環境下不同算法性能結果的數據對比。 從表中數據可以看出: 在圖像匹配時間上,當移動載體再次回到起點時, 基于SURF 的類腦導航模型在兩種情況下均能快速檢測到第一次閉環,這是由于基于SURF 的類腦導航模型使用的SURF特征點提取算法對旋轉、 尺度變換與亮度保持不變性, 對提取的圖像特征點數目進行了篩選, 節省了特征匹配階段的迭代時間。 在位置偏移量上,基于SURF 的類腦導航模型在不同場景下都很大程度上降低了相對偏移量, 保證了經驗地圖與實際運行軌跡的重合度。 因此, 在復雜場景下, 本文方法更具有優越性。

表2 室內兩種情況下三種算法經驗地圖與定位誤差性能Table 2 Experience map and positioning error performance of three algorithms under two conditions indoor
室外實驗場景選取中北大學工程訓練中心西側馬路, 車載平臺在約150m×5m 馬路往返3 圈并采集圖像, 運動距離約為1000m, 其光線影響如圖9 所示。

圖9 室外實驗場景Fig.9 Diagram of outdoor experiment scenes
表3 給出了在室外兩種環境下各個算法對應的準確率和召回率。 表4 為構建經驗地圖與定位誤差性能結果的數據對比。 在室外條件比較差的情況下, 三種算法在準確率、 召回率和構建地圖性能相較室內情況下均有所下降, 但基于SURF 的類腦導航模型相較于其他兩種模型還是有出色的性能表現。 綜上, 在面對有光線影響的情況下, 本文提出的優化算法無論是在幀率較高的室內還是情景單一的室外, 均能保證經驗地圖與實際軌跡相一致以及較小的定位誤差。

表3 室外兩種情況下三種算法準確率和召回率結果Table 3 Results of precision and recall for three algorithms under two conditions outdoor

表4 室外兩種情況下三種算法經驗地圖與定位誤差性能Table 4 Experience map and positioning error performance of three algorithms under two conditions outdoor
本文研究中借鑒了鼠類等哺乳動物通過位置細胞、 頭朝向細胞以及局部場景細胞等神經細胞的處理策略仿生學原理, 在無需高精度傳感器和高分辨率地圖的狀況下, 利用簡單的視覺傳感器就可以獲取移動載體的運動狀況信息。 經過實驗驗證, 加入SURF 特征匹配與位置細胞節點校正算法后的類腦導航繪制移動載體的經驗地圖, 很出色地解決了復雜環境下的導航問題: 改進了原有方法在光線影響情況下易產生場景匹配錯誤與閉環檢測的問題, 也提高了復雜環境下的絕對定位誤差。
為了在多種環境下實現自助機器人的使用,仍有幾個方面研究值得探索:
1)算法需要在更大、 更復雜的環境下進行更長時間的實驗測試, 并且在現有研究基礎上如何實現在實驗場景更加惡劣的情況下動態調節現有細胞導航模型的參數仍值得進一步研究。
2)在現有基于圖的方法中, 地圖的復雜性會隨著機器人軌跡的長度而快速增長, 隨著新的頂點和邊不斷添加到經驗地圖中, 對計算時間內存占用的需求也會隨著時間的推移而增長, 從而阻止了移動機器人長期導航。 未來, 可以學習哺乳動物控制地圖的大小與復雜程度: 模擬鄰近細胞的放電活動, 由運動信息決定是否要將該區域活動的頂點添加到經驗地圖中, 不需要在經驗地圖中添加多余的認知節點和邊, 減小認知地圖的尺寸使自主機器人可以在復雜、 多種和動態環境中完成長期導航工作。