謝松云, 張曉偉, 周柳智, 劉祥惠, 謝辛舟
(1.西北工業大學 電子信息學院, 陜西 西安 710072; 2.西北工業大學 醫學研究院, 陜西 西安 710072)
目前基于SLAM的自主導航技術在機器人、自主導航車、無人機等智能裝置中得到廣泛應用[1-2],但該技術仍面臨著許多問題,如智能算法無法應對復雜環境變化、突發情況難以正確處理等,許多研究人員嘗試將人腦引入智能裝置中來解決這些問題。腦-機接口(brain computer interface,BCI)技術旨在建立一條不依賴于大腦外圍神經與肌肉組織的輸出通道,實現人腦直接與外部設備通訊的功能[3]。BCI技術在智能輪椅、機器人等[4-6]領域有著廣泛的應用。針對基于SLAM的自主導航技術所存在的問題,國內外曾有研究者嘗試過將SLAM技術與BCI技術相結合。Liu等[7]提出了一種基于腦-機器人接口結合SLAM的控制策略,通過人工勢場的方法與腦電信號(electroencephalogram,EEG)相結合,建立起EEG強度與勢場強度之間的關系。其中腦電信號識別精度可以達到91%,所提出的腦電-人工勢場方法,可以獲得在非結構化環境中規劃無障礙軌跡的運動命令。Li等[8]采用基于左右手的運動想象作為腦遙操作系統的輸入,設計了基于深度學習的SLAM。基于運動想象的平均腦電識別正確率可以達到71.72%,在走廊環境下的一系列實驗證明了該系統的可行性。Li等[9]提出了一種人機共享的輪椅導航控制策略,采用腦機共享控制模式和自主控制模式。自主控制模式下,使用基于角度的勢場和基于視覺SLAM的綜合方法來指導機器人在障礙物中的導航;共享控制模式下,腦電識別正確率可達85%,保證被試完成控制任務。
以上研究者們將SLAM技術與BCI技術進行結合,解決了部分問題的同時又引入新的問題。上述研究都是通過BCI直接控制移動機器人執行復雜運動,所以腦-機器人系統的控制需要大量腦電信息,進而對于導聯的數量要求較高,常見的導聯數目有32導及64導,這不便于日常攜帶和使用。目前許多基于BCI的技術都是將人腦作為完成任務的主要部分,這就導致人腦在整個任務過程中負荷大,易造成人腦疲勞,降低腦機系統有效性。腦機協同(brain-computer collaboration,BCC)可以有效地解決上述問題。BCC是腦科學與機器相互結合共同處理問題的方式,指的是人腦與計算機相互協同,密切協作,共同處理各種復雜問題[10],BCC是一種全新的人機協作方式。其中,計算機主要負責數據處理等任務量較大的工作,人腦主要負責計算機難以完成的工作,如選擇、決策、評價、認知等。BCC技術具有廣泛的應用前景,通過BCI技術與不同的計算機技術進行結合,可以改進現有的許多計算機應用技術。
在真實環境中,SLAM指無人車等智能裝置在移動過程中通過自身搭載的傳感器精確估計自身位姿的同時,估計真實環境并創建環境地圖的過程。目前SLAM技術與BCI技術的結合方式多是從主動的腦控出發,即通過大腦控制機器人在非結構環境下進行同步定位與地圖構建或者執行其他復雜任務。在整個任務過程中,人腦需要承擔大部分工作量,導致操作人員負擔較大,極易產生疲勞、注意力分散,任務完成率較低。同時由于所執行的任務比較復雜,需要的腦電信息量更多,對于EEG采集要求更高,不便于日常的使用與推廣。針對以上問題,本文提出了一種結合SLAM的腦機協同導航方法,充分發揮人工智能與人腦智能各自的優勢。通過視頻反饋疊加刺激技術,獲取非結構環境信息,人腦自主選擇感興趣的目標區域圖像,使用合適的機器學習算法解碼EEG,提取目標區域圖像的ORB(oriented FAST and rotated BRIEF)特征點與ORB-SLAM地圖中的特征點匹配,將特征點的質心作為目標點。目標點坐標傳入人工勢場,對機器人產生引力,控制機器人在非結構化環境下執行導航任務。機器人主要負責目標區域圖像處理、周圍環境信息感知、非結構環境下動態避障等計算量較大的任務。因為人腦在整個過程中任務量比較小,所需要的腦電信息量較少、操作時間短,所以通過腦機協同的方法,不僅降低操作人員的操作難度,還有效地緩解操作人員的疲勞程度,降低EEG采集的要求。
結合SLAM的腦機協同導航主要包括4個部分:環境感知與反饋、人腦目標區域選擇、腦電信息處理、機器人自主導航。如圖1所示,具體實現方法是將機器人置于非結構環境中,遙操作控制機器人對于非結構環境進行三維地圖構建。地圖構建完成后,機器人平臺的攝像頭采集周圍環境信息,將采集到的環境圖像信息經由無線路由器發送到遠程計算機,通過在實時圖像上疊加刺激塊并反饋給操作人員。將采集到的EEG數據經無線網絡發送至計算機,由計算機進行預處理、特征提取和目標分類,選擇出相應的目標區域圖像經由無線網絡發送到機器人平臺上。圖像特征點與SLAM地圖的特征點進行匹配,獲取導航目標點坐標后在人工勢場中形成引力作用,障礙物對機器人產生斥力的作用,在合力的作用下共同控制機器人運動。

圖1 結合SLAM的腦機協同導航示意圖
完成腦機協同導航任務需要1名系統操作員、1臺高性能計算機、1個載有Kinect深度相機傳感器和攝像頭傳感器的小強機器人、1套EEG采集儀器、無線路由器和中繼路由器。它們通過無線網絡連接到一起,組成局域網進行數據交換。整個系統結構如圖2所示,該系統主要包括腦-機接口模塊、無線傳輸模塊、自主導航模塊與刺激顯示模塊。腦-機接口模塊主要由1套博瑞康64導無線腦電采集裝置、中繼路由器以及計算機組成,負責EEG的采集與信號處理。無線傳輸模塊主要由無線路由器組成,負責數據的接收與發送。自主導航模塊主要是由小強機器人平臺構成,負責目標點確定、自主定位、地圖構建、自主導航等任務。顯示刺激模塊由1臺遠程上位機組成,負責誘發EEG和環境信息展示。腦機協同導航的各個模塊之間的連接通過無線傳輸模塊來實現。自主導航模塊與無線傳輸模塊之間的信息交換為雙向通道,傳輸的數據是實時環境信息、動態障礙物信息及腦電解碼信息;腦-機接口模塊與無線傳輸模塊之間采用單向通道,EEG從腦電采集模塊的中繼路由器發送到遠程上位機處理;遠程上位機通過SSH協議訪問機器人的IP地址,用于開啟機器人USB攝像頭和深度相機等設備。

圖2 腦機協同導航的整體架構
穩態視覺誘發電位(steady-state visual evoked potentials,SSVEP)是一種由穩定頻率閃爍視覺刺激所誘發的具有與刺激頻率相同和更高次諧波頻率成分的EEG穩態響應,主要出現于大腦皮層枕區?;赟SVEP的BCI(SSVEP-BCI)系統具有更高的信息傳輸速率,相應的系統和實驗設計也更加簡便。同時SSVEP-BCI具有較強的魯棒性,在游戲、文字拼寫、機器人運動控制等方面具有廣泛的應用。雖然SSVEP-BCI可以輕松誘發腦電信號,但是需要操作人員長時間注視屏幕,容易引發視覺疲勞。本文擬采用腦機協同的方式來緩解SSVEP-BCI所帶來的人腦疲勞問題。
傳統的腦-機器人直接控制技術,需要大量的導聯才能夠獲取足夠多的EEG,以滿足控制的需求。但是大量的導聯限制了日常使用,不利于BCI的應用推廣。腦機協同的方法相較于傳統腦控技術,人腦的任務量較小且對于腦電信息需求量較少,為減少導聯的數目提供了可行性。
如圖3所示,本研究采用3個導聯的SSVEP目標區域圖像選取的方法。機器人攝像頭獲取環境信息通過無線模塊傳輸到顯示界面,在視頻界面添加相應的LCD閃爍塊,閃爍頻率分別設置為12.4,16,17.8,20 Hz,由這些閃爍塊以及環境信息構成LCD視覺刺激界面。使用腦電放大采集裝置采集操作人員O1,O2,OZ導聯的EEG,這里之所以選擇三導聯通道為O1,O2,OZ,是因為閃爍塊所誘發的SSVEP信號出現于大腦皮層枕區,當操作人員注視著特定頻率閃爍的模塊時,提取其枕區的EEG,即對O1,O2,OZ導聯進行頻譜分析,就會發現EEG在特定頻率及倍頻處會有明顯的波峰。對于所采集的腦電信號,通過無線模塊傳輸到數據處理單元,進行腦電信號分析與處理。使用相應的機器學習算法進行特征提取和分類,最終根據分類結果判斷操作人員所選擇的目標區域圖像。

圖3 基于SSVEP的目標區域圖像選取示意圖
EEG具有較好的時間分辨率,但微弱的信號強度極容易受各種噪聲信號的干擾,因此必須對采集的EEG進行預處理,提高EEG的可用性。同時為正確解碼操作人員的意圖,需要對所采集的EEG進行特征提取和分類,最終輸出相應的指令結果,處理過程如圖4所示。

圖4 基于典型相關分析的SSVEP信號處理框圖
2.3.1 腦電信號預處理
SSVEP信號具有比較明顯的頻域特征,在進行穩態視覺誘發時選擇的刺激頻域大多為低頻,所以需要對高頻噪聲進行濾除。本文通過濾波處理工頻噪聲,為此設計了50 Hz陷波器來濾除工頻噪聲干擾。經過陷波器處理的EEG,需要根據SSVEP所設置的頻率,設計相應的帶通濾波器。本文所選的4個閃爍頻率為12.4,16,17.8,20 Hz,所以對原始EEG信號進行5~30 Hz的帶通濾波。
2.3.2 腦電信號特征提取與分類
經過預處理之后的EEG利用典型相關分析(canonical correlation analysis,CCA)算法進行特征提取和分類。CCA是一種多元統計分析方法,通過計算2個數據組中各變量的線性組合,求出相關度最具有代表性的線性變量組合,并利用2個線性組合間的相關度來反映2組信號的相關性。將CCA算法應用在SSVEP特征提取中,就是將原始的EEG和特定頻率的正余弦信號及倍頻信號求典型相關度,得到的相關度即為特征信息。例如提取頻率為fi的特征,可將相關的參考序列Si設置為
(1)
式中:N是原始EEG的長度;Fs為EEG的采樣率;K為CCA算法的待分類模式數,待求模式可表示為
(2)
式中,ρ(fi)為EEG信號與參考信號Si的典型相關系數。由此得到4類EEG的相關性系數,如圖5所示。

圖5 SSVEP信號特征分布圖
目標區域圖像選擇后如何進行目標區域導航至關重要。圖像的特征點由關鍵點和描述子表達,單詞(word)是由某一類特征的特征點構成;由所有的單詞構成字典(vocabulary),構建字典后對于給定任意特征,只要在字典中使用漢明距離逐層查找,就可以找到與之對應的單詞。在機器人使用ORB-SLAM建立稀疏地圖的過程中,對所有特征點使用k-means聚類方法,將其分成若干類,每一類即表示為1個單詞。由k-means聚類所構成的類別數量不能太少,否則會產生誤匹配問題,但是數量過大會帶來查找效率問題。由于單詞數量過多需要提高查找效率,視覺詞袋模型一般使用樹結構進行存儲。本文所采用的方法是K叉樹,設置樹的深度為d,則可以構成Kd個單詞,建立的樹形結構如圖6所示。

圖6 樹形結構存儲詞袋
在離線生成K叉樹字典后,通過3個導聯的SSVEP選取目標區域圖像,將圖像中的每個特征點都從根節點往下遍歷,根據漢明距離一直遍歷到葉子節點,就可以找到位于葉子節點的圖像單詞。將目標區域圖像中的每個特征點與SLAM地圖中的特征點匹配后換算成SLAM地圖中的三維坐標,取這些特征點的質心為目標點坐標。最后將目標點坐標傳入導航系統進行路徑規劃并驅動機器人前進。
為測試結合SLAM的腦機協同導航方法,首先需要對真實的非結構化環境進行建模,以獲取環境相應的信息。利用ORB-SLAM算法對實驗場景進行三維地圖建模,獲取三維地圖模型特征點稀疏地圖的俯視圖,如圖7所示。

圖7 稀疏特征點圖
圖中分布全局的點為所建地圖中的ORB特征點,離散的藍線為機器人進行非結構環境下建模時所走過的真實路徑,連續的紅線為人工規劃的可行走路徑。
為驗證基于3個導聯的SSVEP目標區域圖像選取方法的可行性,本文對含圖像反饋的SSVEP范式進行測試,本實驗分為訓練階段和測試階段,訓練階段主要完成分類器參數優化,測試階段主要用來檢驗分類器和目標區域圖像選取方法的性能。
3.1.1 實驗材料
本實驗需要用到如下器材:計算機1臺、腦電采集儀器1套、無線路由器1個、小強機器人平臺。
3.1.2 實驗步驟
1) 本實驗中4名被試需分別進行3組實驗,共計12組實驗。每組實驗中需要被試依次注視4個頻率的閃爍塊,每個閃爍塊的刺激時間長為2 min,共計時長8 min。
2) 設置腦電采集放大器采樣頻率為1 000 Hz,每名被試采集到的是維度為4×3×120 000的腦電數據,其中“4”代表4個頻率閃爍塊,“3”表示進行3組實驗,“120 000”由采樣時長乘以采樣頻率獲得。對腦電數據進行清洗后,每0.8 s截取一個樣本數據片段,則每個被試有3組樣本,每組4個頻率各150個樣本數據片段,共計600個樣本數據片段。
3) 在訓練階段,對采集的腦電數據進行預處理、CCA算法特征提取及分類,通過樣本數據訓練得到腦電信號分類器的參數,訓練出性能較高的分類器。
4) 在測試階段,要求每位被試按照實驗操作人員提示,選擇4個LCD閃爍模塊中的1個進行注視,并記錄相應的順序。使用之前訓練好的分類器,完成30個分類結果后結束實驗。
3.1.3 實驗結果分析
嚴格執行上述實驗步驟,統計4名被試獲得如下實驗結果,并予以分析。
由表1可得4名被試選擇的導聯為O1,O2,OZ,各自進行了30次實驗。被試1在4名被試中表現較差,準確率最低。在30次分類實驗中,正確分類的次數為27次,準確率為90.00%;被試2、被試3表現最好,準確率最高。在30次分類實驗中,正確的分類次數達到29次,準確率高達96.70%。總體來說4名被試平均正確率為94.17%,目標區域圖像分類正確率高。實驗證明對3個導聯的SSVEP進行特征提取與分類是可用的,這為接下來進行測試結合SLAM進行腦機協同導航奠定基礎。

表1 三導聯SSVEP目標選擇實驗結果
本研究根據腦機協同導航方法,設計了機器人導航任務。操作人員操作結合SLAM腦機協同導航的機器人,驅動機器人在地圖中進行指定區域測試。測試人員隨機選擇目標區域,機器人到達指定區域即視為任務完成。
3.2.1 測試步驟
1) 在測試任務開始前,需將具體任務以及詳細的操作提前告知操作人員,操作人員熟悉系統后正式開始測試。
2) 等待所有設備準備完畢后,操作人員觀看移動機器人回傳的車載實時圖像以及圖像中閃爍的LCD模塊,誘發其產生SSVEP信號。
3) 測試過程中操作人員不能直接看到移動機器人行走狀態,只能看到刺激顯示模塊顯示的實時視頻。
4) 將圖像與ORB-SLAM所構建的地圖進行匹配確定目標點的坐標,并利用人工勢場法對非結構環境進行路徑規劃,實現腦-機器人的協同導航。
3.2.2 評價指標
通過任務完成率、任務平均完成時間、目標選擇時間3條技術指標,對結合SLAM的腦機協同導航方法性能進行評估。
1) 任務完成率
在結合SLAM的腦機協同導航任務中,若機器人導航到達預定目標區域,則稱為執行正確;若移動機器人未導航到達預定目標區域,為執行錯誤。定義結合SLAM的腦機協同導航任務完成率為任務完成的次數/總任務次數。
2) 任務平均完成時間
每次執行任務時都記錄下從任務開始到任務結束的時間,計算全部任務的執行時間/總任務次數即為1次任務的平均完成時間。
3) 目標選擇時間
每次任務都記錄下通過SSVEP閃爍模塊選擇目標區域圖像時間,實驗結束后計算全部任務的目標選擇時間/總任務次數即為1次任務進行目標選擇所需的平均時間。
3.2.3 實驗結果分析
如表2所示,根據實驗統計,在總共40次的測試中,輔助人員隨機指定地圖中的目標區域作為測試任務,操作人員通過注視SSVEP誘發模塊選擇導航目標區域圖像,將目標區域圖像傳遞給機器人進行協同導航。操作人員成功完成任務37次,平均每次任務完成時間為1.8 min,任務完成率為92.5%,總控制時間為72 min。所用導聯數目從64全導聯減少到3個導聯,降低了系統的硬件要求。目前腦-機器人系統需要不斷地進行實時控制,長時間的控制任務容易引起疲勞。本文所提出的基于SLAM的腦機協同導航方法只需要人腦進行目標區域圖像選擇,可以有效地降低操作人員的操作負擔。在機器人導航的過程中操作人員不需要集中精力進行控制,在一定程度上證明了結合SLAM的腦機協同導航方法對于操作人員具有較高的舒適性。

表2 實驗測試結果
本文提出的結合SLAM的腦機協同導航方法,通過3個導聯的SSVEP對目標區域圖像選取,對選取后的目標圖像進行處理并轉換為導航的目標區域,從而控制基于SLAM的機器人完成導航任務。該方法以人腦選取的目標區域引導機器人自主運動,實現腦機協同導航,最終評估的測試準確率為92.5%,腦控時間長度為0.8 s。這不僅緩解了人腦疲勞而且降低了腦電采集的硬件要求,后續研究中可以適當增加人腦任務,比如人腦檢測機器人運動狀況等,以提高腦機協同的自由度。
致謝感謝陜西省腦機一體化及其無人系統應用國際聯合研究中心以及西北工業大學腦科學與類腦研究中心提供的實驗和技術支持與幫助。