朱濤,黎恒明,唐新科,尚大帥
(西安測(cè)繪總站,西安710054)
面向柵格模型的室內(nèi)環(huán)境地圖構(gòu)建方法
朱濤,黎恒明,唐新科,尚大帥
(西安測(cè)繪總站,西安710054)
針對(duì)室內(nèi)未知環(huán)境地圖構(gòu)建問(wèn)題,通過(guò)Kinect傳感器獲取障礙物深度圖像信息,采用基于Bayesian的概率柵格計(jì)算方法,實(shí)現(xiàn)室內(nèi)環(huán)境下的實(shí)時(shí)地圖構(gòu)建,并通過(guò)移動(dòng)機(jī)器人平臺(tái)驗(yàn)證其有效性和準(zhǔn)確性。
隨著人工智能技術(shù)日趨成熟,機(jī)器人得到越來(lái)越廣泛應(yīng)用。移動(dòng)機(jī)器人在未知環(huán)境中自主完成任務(wù),需要不斷感知周圍的環(huán)境信息,進(jìn)行定位、避障和路徑規(guī)劃,從而到達(dá)目標(biāo)位置[1]。然而在室內(nèi)未知環(huán)境中,移動(dòng)機(jī)器人無(wú)法直接獲取GPS等位置信息進(jìn)行定位導(dǎo)航,需要借助傳感器建立外部空間的空間模型,即地圖構(gòu)建[2]。本文針對(duì)室內(nèi)未知環(huán)境地圖構(gòu)建問(wèn)題,通過(guò)在移動(dòng)機(jī)器人平臺(tái)上搭載Kinect傳感器,采用面向柵格模型的地圖構(gòu)建方法有效解決了信息不確定性問(wèn)題,對(duì)室內(nèi)工作環(huán)境進(jìn)行準(zhǔn)確描述和表達(dá)。
概率柵格地圖的建立是根據(jù)測(cè)距傳感器的觀測(cè)值來(lái)計(jì)算每個(gè)柵格被占據(jù)的概率值得到的[3]。由于移動(dòng)機(jī)器人地圖創(chuàng)建存在傳感器噪聲、定位精度、累積誤差等不確定性因素,這些不確定性因素復(fù)雜且難以處理,需要用概率來(lái)表示柵格地圖中每個(gè)柵格被障礙物占據(jù)的可能性,建立明確的概率算法模型來(lái)解決問(wèn)題。
定義柵格單元是一個(gè)在連續(xù)空間坐標(biāo)集合的離散狀態(tài)隨機(jī)過(guò)程,每個(gè)柵格單元具有占據(jù)和空閑的離散隨機(jī)變量。設(shè)mx,y∈[OCC,EMP]表示位于柵格Mx,y的狀態(tài),其中OCC表示柵格處于被占據(jù)的狀態(tài),EMP表示柵格處于空閑狀態(tài)。設(shè)定zt表示t時(shí)刻的觀測(cè)值,(zt,zt-1,???,z1)表示一系列觀測(cè)值且各觀測(cè)值相互獨(dú)立。根據(jù)Bayesian規(guī)則可得:
根據(jù)式(1)可以得到觀測(cè)值為zt時(shí)的柵格占據(jù)概率為(2)。
其中,P(zt|mx,y=OCC)、P(zt|mx,y=EMP)由傳感器模型得到,P(mx,y=OCC)和P(mx,y=EMP)是先驗(yàn)概率。
對(duì)于不同時(shí)刻同一傳感器或者同一時(shí)刻不同傳感器的占據(jù)概率,可以用Bayesian公式加以融合,可得式(3):
Kinect是微軟公司于2010年6月推出的一款基于體感的人機(jī)交互設(shè)備,由彩色攝像頭、紅外攝像頭、紅外投影機(jī)、麥克風(fēng)陣列、馬達(dá)、邏輯電路和USB線纜等部分構(gòu)成[4],如圖1所示。Kinect的視場(chǎng)是金字塔形狀的,有效視野范圍水平方向?yàn)?7度,垂直方向?yàn)?3度,有效探測(cè)范圍約為0.8~4.0米,可以獲取彩色圖像數(shù)據(jù)、深度圖像數(shù)據(jù)、音頻數(shù)據(jù)以及骨架數(shù)據(jù)。
圖1 Kinect傳感器
在真實(shí)世界坐標(biāo)系中,以Kinect設(shè)備為坐標(biāo)原點(diǎn),用右手坐標(biāo)系表示X軸、Y軸和Z軸,以毫米為單位。在深度圖像投影坐標(biāo)系中,以圖像的左上角為坐標(biāo)原點(diǎn),u軸平行于圖像行掃描線指向右,v軸沿圖像列方向指向下。根據(jù)Kinect深度攝像頭標(biāo)定,可得到X、Y、Z坐標(biāo)分別為:
其中,X、Y、Z分別表示真實(shí)世界坐標(biāo)系中的坐標(biāo),u、v表示深度圖像橫、縱坐標(biāo),u0、v0為深度圖像中心坐標(biāo),deptu(u,v)表示深度值,f表示焦距。
建立環(huán)境坐標(biāo)系模型之后,需要將Kinect獲取的數(shù)據(jù)轉(zhuǎn)換為用二維數(shù)組表示的柵格地圖,即建立局部柵格地圖[5]。Kinect可視范圍約為4m×4.4m的區(qū)域,可按照每個(gè)柵格5cm×5cm的方格進(jìn)行劃分。設(shè)定柵格化區(qū)域分為確定區(qū)域和不確定區(qū)域,其中確定區(qū)域?yàn)榄h(huán)境信息映射到柵格地圖中表示為占據(jù)或者空閑的柵格區(qū)域。在地圖創(chuàng)建初始化狀態(tài)下,整個(gè)柵格地圖都屬于不確定區(qū)域。
(1)將Kinect獲取的環(huán)境信息映射到柵格地圖上。將Kinect探測(cè)到的環(huán)境信息用二維笛卡爾矩形柵格來(lái)表示,用二維數(shù)組Map[x][y]來(lái)記錄對(duì)應(yīng)柵格是否有障礙物信息。將障礙物位置信息映射到環(huán)境地圖中對(duì)應(yīng)的柵格單元,可表示為:
其中,(x,y)表示障礙柵格在全局坐標(biāo)中的位置信息,(xw,yw)表示障礙物在世界坐標(biāo)中的位置,w為柵格的寬度。
(2)計(jì)算地圖中柵格的占據(jù)或者空閑概率。首先將整個(gè)地圖的所有柵格的初始化值賦值為0.5,以表示不確定狀態(tài)。然后在給定各個(gè)柵格單元先驗(yàn)概率的條件下,k時(shí)刻依據(jù)Kinect觀測(cè)值計(jì)算每個(gè)柵格中的占有概率,并記錄給定柵格的占據(jù)概率。最后根據(jù)閾值判斷柵格是否被占據(jù)或者空閑,如下所示:
(3)對(duì)局部柵格地圖所有柵格賦值,生成當(dāng)前幀對(duì)應(yīng)的局部柵格地圖。
由于Kinect采集的環(huán)境信息為局部柵格地圖信息,這就需要將局部地圖更新到全局地圖。通過(guò)坐標(biāo)變換公式,就可以將局部地圖映射到全局地圖中。本文采用融合算法對(duì)全局地圖進(jìn)行更新,如下所示:
其中,Mi+1表示第i+1步融合后的全局地圖,Mi表示第i步已經(jīng)存在的全局地圖,mi+1表示新構(gòu)建的局部地圖。
在全局柵格地圖中,存在部分區(qū)域柵格信息不確定或者已經(jīng)更新,對(duì)于不確定區(qū)域的柵格可直接進(jìn)行更新,而已經(jīng)更新的柵格則進(jìn)行數(shù)據(jù)融合。在全局柵格地圖更新過(guò)程中,本文采用Bayesian法則進(jìn)行數(shù)據(jù)融合,以得到相對(duì)準(zhǔn)確的概率結(jié)果,信息融合公式如公式(8)。
如圖2所示,實(shí)驗(yàn)環(huán)境選擇在走廊中,走廊寬度為2.06m。移動(dòng)機(jī)器人在走廊里以10cm/s的速度沿直線向前運(yùn)動(dòng),借助傳感器Kinect掃描前方環(huán)境。對(duì)實(shí)時(shí)采集的數(shù)據(jù)流間隔5s提取一幀圖像,將檢測(cè)到的障礙物信息投影到坐標(biāo)系中繪制成柵格地圖,從而獲取整個(gè)實(shí)驗(yàn)環(huán)境的全局地圖。
圖2 移動(dòng)機(jī)器人運(yùn)動(dòng)時(shí)的實(shí)驗(yàn)環(huán)境
在不考慮機(jī)器人運(yùn)動(dòng)累計(jì)誤差和自定位誤差的情況下,其實(shí)驗(yàn)結(jié)果如圖3所示,障礙柵格用黑色表示,無(wú)障礙柵格用白色表示,不確定區(qū)域用灰色柵格表示。矩形框表示移動(dòng)機(jī)器人所在的位置。
從上圖可以看出,當(dāng)移動(dòng)機(jī)器人在走廊中間沿直線勻速行進(jìn)時(shí),間隔5s提取一幀圖像,共提取9幀圖像連接成全局柵格地圖,能夠?qū)⒆呃戎械膲Ρ凇㈤T等環(huán)境特征完整、準(zhǔn)確地繪制到地圖中。通過(guò)真實(shí)環(huán)境與柵格地圖的對(duì)比,可以看出地圖精度和環(huán)境特征位置與實(shí)際環(huán)境比較接近。但是,柵格地圖下半部分中繪制的門比實(shí)際要寬幾個(gè)柵格,走廊也會(huì)出現(xiàn)沿Y軸(即小車行進(jìn)方向的法方向)出現(xiàn)有規(guī)律、對(duì)稱的上下移動(dòng)一兩個(gè)柵格的情況。這是情況產(chǎn)生的原因除前一實(shí)驗(yàn)分析的原因外,主要是由于運(yùn)動(dòng)過(guò)程出
現(xiàn)抖動(dòng)、側(cè)滑等現(xiàn)象導(dǎo)致移動(dòng)機(jī)器人出現(xiàn)位姿偏差。
為了測(cè)試機(jī)器人運(yùn)動(dòng)狀態(tài)時(shí)構(gòu)建的柵格地圖精度,需要將真實(shí)環(huán)境與柵格地圖進(jìn)行對(duì)比,即真實(shí)環(huán)境中的坐標(biāo)與柵格地圖中的坐標(biāo)進(jìn)行誤差分析。然而將真實(shí)環(huán)境中所有坐標(biāo)與地圖中的位置一一對(duì)比是不可能的,可選取若干比較穩(wěn)定的參考點(diǎn)進(jìn)行對(duì)比。由表1可知,真實(shí)柵格位置與地圖中的柵格位置比較接近,參考點(diǎn)的真實(shí)坐標(biāo)與地圖中的坐標(biāo)相差不大,誤差不超過(guò)70mm,滿足實(shí)驗(yàn)的要求。
圖3 移動(dòng)機(jī)器人運(yùn)動(dòng)時(shí)的地圖構(gòu)建
表1 移動(dòng)機(jī)器人運(yùn)動(dòng)時(shí)的柵格地圖精度
[1]楊學(xué).一種人機(jī)交互式室內(nèi)建模方法[J].軟件導(dǎo)刊,2015(08).
[2]段華旭,閆飛,莊嚴(yán),樸春光.無(wú)人車基于雙目視覺(jué)的同時(shí)定位與地圖構(gòu)建[J].華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2015(S1).
[3]黨鵬飛.移動(dòng)機(jī)器人同時(shí)定位與地圖構(gòu)建[D].沈陽(yáng):東北大學(xué),2010.
[4]Erica Naone.Microsoft Kinect:How the Device Can Respond to Your Voice and Gestures[Z].Pioneering with Science and Technology,2011,4(04):82-83.
[5]孫學(xué)敏.室內(nèi)未知環(huán)境下移動(dòng)機(jī)器人地圖創(chuàng)建方法的研究[D].沈陽(yáng):東北師范大學(xué),2012.
朱濤(1989-),男,碩士,助理工程師,研究方向?yàn)閿z影測(cè)量與遙感
黎恒明(1965-),男,本科,高級(jí)工程師,研究方向?yàn)槟繕?biāo)判讀與解譯
唐新科(1990-),男,本科,助理工程師,研究方向?yàn)閿z影測(cè)量與遙感
Grid Model;Map Building;Grid Map;Kinect
The Method of Map Building Under the Indoor Environment Facing the Grid Model
ZHU Tao,LI Heng-min,TANG Xin-ke,SHANG Da-shai
(The Xi'an Surveying and Mapping Technological Center,Xi'an 710054)
Aiming at the problem of indoor and unknown environment map building,obtains the information of obstacle depth image by the Kinect sen?sor,and uses the computational methods of probability grid based on the Bayesian to extract real-time map building under the indoor envi?ronment.With the platform of mobile robot,tests the accuracy and validity.
柵格模型;地圖構(gòu)建;柵格地圖;Kinect
1007-1423(2017)29-0074-04
10.3969/j.issn.1007-1423.2017.29.018