楊春媚 王峰 晉博 汪進 梅琪 邱文添
摘要:計算機視覺在人工智能學科占據(jù)重要地位,為自主移動機器人視覺導航做了深厚的理論鋪墊?;谟嬎銠C視覺的自主導航與路徑規(guī)劃是自主移動機器人研究的關鍵技術,計算機視覺室內導航技術主要分為3類:第一類是環(huán)境地圖事先已知;第二類是同時定位與地圖構建(simultaneouslocalization andmapping,SLAM);第三類是不依賴環(huán)境地圖。詳細闡述了每種導航模型和技術方法,探討了基于計算機視覺導航的最新技術進展,總結了目前國內外計算機視覺導航的研究進展。
關鍵詞:計算機視覺;地圖匹配;SLAM;機器人導航;路徑規(guī)劃
1概述
計算機視覺在人工智能學科占據(jù)重要地位,為自主移動機器人視覺導航做了深厚的理論鋪墊。目前,機器人導航技術有很多種,傳感器導航技術如里程計、激光雷達、超聲波、紅外線、微波雷達、陀螺儀、指南針、速度、加速度計或觸覺等得到了普遍應用,與上述非計算機視覺導航技術相比較,計算機視覺導航技術如人眼般具有靈敏度高且可捕獲的信息量大以及成本低等優(yōu)點。由于室內相對室外空間比較狹小且內部環(huán)境復雜,所以普通移動機器人在作業(yè)過程中,完成躲避眼前障礙物、自主導航以及為自身找出一條可行路徑等一系列操作會相對比較困難。計算機視覺導航技術可利用本身的攝像頭獲得室內周圍的環(huán)境信息,實時對其周身的場景進行快速反饋,對視野前方障礙物進行快速識別和檢測,從而確定一條高效的可行的安全路徑。本文對計算機視覺導航技術進行分類研究,主要分為3類:第一類是環(huán)境地圖事先已知,提前對外界環(huán)境特征進行提取和處理,建立全局地圖,并將地圖信息存儲在機器人內存數(shù)據(jù)庫中,在導航的時候實時進行地圖匹配;第二類是同時定位與地圖構建,移動機器人在自身位置不確定的情況下根據(jù)自身的攝像頭獲取周圍未知環(huán)境信息,在作業(yè)時逐步構建周圍的環(huán)境地圖,根據(jù)構建的增量式地圖自主實時定位和導航;第三類是不依賴環(huán)境地圖,自主移動機器人不需要依賴任何的環(huán)境地圖,其在作業(yè)活動時的可行區(qū)域主要取決于攝像頭實時識別和檢測的環(huán)境相對信息。
2環(huán)境地圖的表示方法
目前,計算機視覺導航技術多采用柵格地圖、幾何地圖、拓撲地圖和混合地圖構建環(huán)境地圖信息。
2.1柵格地圖
柵格地圖,將柵格圖像考慮為一矩形,均分為一系列柵格單元,將每個柵格單元賦予一個平均概率值,并利用傳感信息估計每個單元內部內存障礙物的概率。構建柵格地圖的優(yōu)點是其地圖表達形式直觀,創(chuàng)建和維護比較容易;但當劃分的柵格單元數(shù)量不斷增多時,實時性就會慢慢變差;當劃分的柵格單元越大時,環(huán)境地圖的分辨率越低。
2.2幾何地圖
幾何地圖利用幾何特征如點、直線、平面等來構成環(huán)境主要框架,需要知道這些特征在環(huán)境中信息的具體位置,所以幾何地圖通常使用其對應的三維空間坐標來表示。幾何地圖構建過程相對簡單,保留了室內環(huán)境的各種重要信息,是基于計算機視覺的定位與地圖構建算法中最常用的一種表示方式。但是為了完成環(huán)境的建模需要標記大量的特征,從而計算量也非常的大,降低了實時性,其重建的地圖也容易出現(xiàn)與全局不一致的情況。
2.3拓撲地圖
拓撲地圖用許多節(jié)點和連接這些節(jié)點的曲線來表示環(huán)境信息。其中,每個節(jié)點相對應真實環(huán)境中的特征點(如門角、窗戶、椅子、桌子角及拐角等),而節(jié)點之間的曲線表示兩個節(jié)點對應的地點是相聯(lián)通的。拓撲地圖把環(huán)境信息表上在一張線圖上,不需要精確表示不同節(jié)點間的地理位置關系,圖像較為抽象,表示起來方便且簡單。機器人首先識別這些節(jié)點進而根據(jù)識別的節(jié)點選擇節(jié)點與節(jié)點間的曲線作為可作業(yè)的路徑。
2.4混合地圖
混合地圖主要包括3種形式:柵格一幾何地圖、幾何一拓撲地圖以及柵格一拓撲地圖?;旌系貓D采用多種地圖表示,可結合多種地圖的優(yōu)勢,與單一的地圖表示相比更具有靈活性、準確性和魯棒性,但其不同類別的地圖結合起來管理會比較復雜,難以協(xié)調,增加了地圖構建的難度。文獻針對室內環(huán)境所建立的模型分為全局拓撲和局部幾何表述部分,整體環(huán)境通過拓撲節(jié)點串連起來,維護了整體環(huán)境表述的全局一致性;而以每個拓撲節(jié)點為核心所采用的幾何表述則可確保局部精確定位的實現(xiàn),這樣建立的幾何一拓撲混合環(huán)境模型可將二者的優(yōu)勢都表現(xiàn)出來,使得移動機器人定位和地圖構建同時進行,實現(xiàn)容易。
3基于計算機視覺的室內導航
基于計算機視覺的室內導航技術可利用攝像頭捕獲機器人周圍環(huán)境的全部信息,對其周身的場景進行反饋,對障礙物進行快速識別和檢測,從而確定一條高效的可行的安全路徑。本文將計算機視覺室內導航技術主要分為3類:第一類是環(huán)境地圖事先已知;第二類是定位與地圖構建同時進行;第三類是不依賴環(huán)境地圖。
3.1環(huán)境地圖事先已知
提前對外界環(huán)境特征進行提取和處理,建立全局地圖,并將地圖信息存儲在機器人內存數(shù)據(jù)庫中,在導航的時候實時進行地圖匹配,即預存環(huán)境地圖。在環(huán)境地圖事先已知的導航中,路標信息保存在計算機內存的數(shù)據(jù)庫中,視覺系統(tǒng)中心利用圖像特征直接或間接向移動機器人提供一系列路標信息,一旦路標被確定后,通過匹配觀察到的圖像和所期望圖像,機器人借助地圖實現(xiàn)自身精確定位和導航。該導航技術過程可分為以下步驟:
a)圖像獲?。簲z像頭獲取其周圍的視頻圖像;
b)路標識別及檢測:利用相關圖像處理算法對圖像進行一系列預處理如進行邊緣檢測和提取、平滑、濾波、區(qū)域分割;
c)路標匹配標志:在觀察到的圖像和所期望圖像之間進行匹配,搜索現(xiàn)有的路標數(shù)據(jù)庫進行標志路標;
d)位置計算:當有特征點進行匹配時,視覺系統(tǒng)會根據(jù)數(shù)據(jù)庫中的路標位置進行自身精確定位和導航。
在基于計算機視覺的地圖匹配定位過程中,主要有2種地圖匹配較為典型。
①已知起點,已知地圖。這種條件下的定位稱為局部定位,采用的是一種相對定位的方法,如圖1所示為其位姿估計過程,這種情況目前導航技術研究得最多。
②不知起點,已知地圖。這種條件下的定位稱為全局定位。當機器人需要重置時,通常使用這種定位方法來檢索機器人的當前位置(即姿態(tài)初始化)。常用的輔助方法是在環(huán)境中添加一些人造信標,如無線收發(fā)器,幾何信標,條碼技術,紅外或超聲波接收系統(tǒng)進行位置識別,利用視覺系統(tǒng)識別自然標志,自主定位。
3.2定位與地圖構建同時進行
不知起點,不知地圖。SLAM技術最早由Smith等人于1986年提出,移動機器人在自身位置不確定的情況下根據(jù)自身的攝像頭獲取周圍未知環(huán)境信息,在作業(yè)時逐步構建周圍的環(huán)境地圖,根據(jù)構建的增量式地圖自主實時定位和導航。在日后的導航研究中,混合地圖中的幾何一拓撲混合環(huán)境模型被得到廣泛應用,主要用來解決SLAM問題。
2003年,在解決SLAM技術難題上,Arras等人采用基于Kalman濾波器和最鄰近(nearest neighbor)匹配策略的隨機地圖創(chuàng)建方法。下面是該算法步驟:
a)數(shù)據(jù)采集:首先初始化系統(tǒng),從攝像頭傳感器采集距離數(shù)據(jù);
b)狀態(tài)預測:視覺系統(tǒng)預測機器人運動狀態(tài),實時返回新位姿信息和協(xié)方差矩陣,預測地圖;
c)觀測:從原始捕獲的信息中提取主要特征信息并將此信息返回給局部地圖;
d)測量預測:預測機器人當前位姿的全局地圖;
e)位置匹配:應用最鄰近濾波器匹配局部地圖中的觀測點和預測點;
f)估計:使用擴展Kalman濾波器更新地圖;
g)創(chuàng)建:將非相關的觀測點加入地圖,對機器人返回增量式地圖;
h)輸出地圖。
制約機器人視覺系統(tǒng)性能的重要因素是信息實時處理的計算復雜度和處理效率,SLAM算法需要在地圖密度與計算效率之間取得權衡。
3.3無環(huán)境地圖
在這類系統(tǒng)中,機器人不需要依賴任何的環(huán)境地圖信息,機器人的活動取決于其當時識別和提取出來的環(huán)境信息,這些環(huán)境信息可能是桌子、椅子和門等,不需要知道這些環(huán)境元素的絕對位置。無環(huán)境地圖的導航技術典型的技術有3大類:基于光流的導航技術、基于外觀信息的導航技術、基于目標識別的導航技術和基于目標跟蹤的導航技術。
3.3.1基于光流的導航技術
光流是三維空間運動物體在觀測成像面上的像素運動的瞬時速度,也是圖像亮度的運動信息描述。光流法計算最初是由Horn和Schunck于1981年提出的,其利用二維速度場與灰度,引入光流約束方程,得到光流計算的基本算法。光流計算基于物體移動的光學特性提出了2個假設:①運動物體的灰度在很短的間隔時間內保持不變;②給定鄰域內的速度向量場變化是緩慢的。如Santos-Victor等人研發(fā)了一種基于光流的robee視覺系統(tǒng),該系統(tǒng)模擬了蜜蜂的視覺行為。在robee視覺系統(tǒng)中,使用單獨的雙目視覺方法來模擬蜜蜂的中心反射(Centering Reflex):當機器人移動到走廊兩側的墻壁中心時,左眼捕獲場景的瞬時速度與右眼捕獲場景的瞬時速度是相同的,幾乎沒有差別,那么機器人就可以知道他們在走廊的中心。如果眼睛兩側的眼睛的瞬時變化速度不同,則機器人移動到較慢的速度。在自動機器人導航的實現(xiàn)中,基于這個想法是測量攝像機捕獲圖像場景瞬時速度差異。這種導航技術只能用于室內單通道直走道導航,不能引導機器人改變方向,具有一定的局限性。
3.3.2基于外觀信息的導航技術
基于外觀的機器人導航方法,不需要構建真實的地圖導航,機器人通過自身所攜帶的攝像頭和傳感器感知周圍目標的外觀信息進行自主定位和導航。其中,所述的外觀信息多為目標信息的顏色、亮度、形狀、空間大小和物理紋路等。機器人在導航時存儲連續(xù)視頻幀的環(huán)境圖像信息,并將連續(xù)視頻幀與控制指令相關聯(lián),從而再執(zhí)行指令規(guī)劃有效路徑到達目的地。
3.3.3基于目標識別導航技術
為了達到目標點或是識別目標,機器人很多時候只能獲取少量的圖像信息。Kim等人提出了一種用符號代替導航各個位置的賦值方法。該賦值方法中,機器人執(zhí)行命令如“去窗邊”“去你后面的椅子旁”等。這樣,通過相關的符號命令,機器人自動識別并建立路標,通過符號指令到達目標點。例如“去你后面的椅子旁”,這樣的命令就是告訴機器人路標是椅子、路徑向后。該導航技術的難點在于目標是否可以準確實時識別路標。第一,識別大量不同類別的物體,室內環(huán)境有許多不同類別的物體,需要將它們組織到一個在給定的容易搜索圖像數(shù)據(jù)結構中去,起到容易識別是用什么度量來區(qū)分物體;第二,識別大量不同背景下的物體,一個合適的物體表達式有助于將圖像組織成片斷,而這些片斷來自于物體的種類且與物體無關的;第三,在抽象層次上識別物體,機器人可以不需要在看到一個具體的杯子之前便能知道它是一個杯子,相關程序能夠類似的物體進行識別和區(qū)分。
3.3.4基于目標跟蹤的導航技術
基于目標跟蹤的導航技術,為機器人構造一個虛擬地圖,機器人通過攝像頭獲取連續(xù)的視頻序列確定一個跟蹤的目標,為了達到對目標的精確定位和實時跟蹤,可以利用粒子濾波算法對需要跟蹤的目標進行建模?;诹W訛V波的目標跟蹤主要包含四個階段,分別是初始化目標區(qū)域,概率轉移,目標區(qū)域權重計算,目標區(qū)域重采樣。在機器人導航之前,通過視頻序列的當前幾幀標注機器人所需要跟蹤的目標,在導航時,機器人通過連續(xù)的視頻幀感知周圍的待跟蹤目標,同時對所需要跟蹤的目標散播粒子,當獲取的視頻幀對目標區(qū)域重采樣后足以讓機器人確定所需要跟蹤的目標時,機器人通過確定的目標為自己規(guī)劃最有效的路徑到達目的地。獲取視頻序列目標跟蹤是計算機視覺領域中的重要分支,它在工業(yè)生產、交通導航、國防建設、航空導航等各個領域有著廣泛的應用。
4結論
本文對近三十年來基于計算機視覺的室內自主式移動機器人導航技術進行了詳細的分類介紹,對于移動機器人是否需要地圖匹配的導航系統(tǒng)進行了詳細的綜述。目前,在做導航和面向任務的決策時,自主機器人尚未能夠準確地綜合考慮真實環(huán)境空間中的各種不確定性,當路徑前方突然出現(xiàn)動態(tài)場景變化、目標運動、遮檔障礙物時便會顯得一無所措,無法及時把握室內環(huán)境變化的動態(tài)信息進行實時導航,而這將是未來計算機視覺研究的一大難點和熱點。所以,室內自主移動機器人仍在發(fā)展中,還有很多的問題值得研究和探索,現(xiàn)有的機器人大多數(shù)都需要人為定期去進行清理和維護,直到今天還沒有產生一臺真正意義上完全自主的移動機器人。