低速無人車
低速無人車聽說過嗎?
最近幾年,無人?;鳂I(yè)、無人清潔、無人快遞、 屢屢登上新聞?lì)^條,多種無人車平臺(tái)也都走進(jìn)日常生活中。而這些無人車,都屬于低速無人車。
低速無人車,主要應(yīng)用在校園、景區(qū)、園區(qū)、機(jī)場(chǎng)、礦山等半封閉區(qū)域內(nèi)。與乘用車或商用車相比,低速無人車擁有明確的應(yīng)用場(chǎng)景和可控的成本,成為未來更具商業(yè)價(jià)值的領(lǐng)域。
近年來,隨著數(shù)字化智能化建設(shè),物流配送、安防巡邏、零售、環(huán)衛(wèi)、港口、礦區(qū)等運(yùn)營場(chǎng)景對(duì)低速無人車的需求日益增加,產(chǎn)業(yè)鏈得到較快發(fā)展 。
接下來小Y將持續(xù)為大家推出低速無人車核心技術(shù)分享專欄 ,從自動(dòng)駕駛技術(shù)-到底盤控制技術(shù)為大家詳細(xì)說明低速無人車的技術(shù)路線與行業(yè)應(yīng)用發(fā)展路線 ,希望大家多多關(guān)照 。
在行業(yè)應(yīng)用中移動(dòng)機(jī)器人多種建圖算法說明- Hector
1.原理詳解
Hector整體算法很直接,就是將激光點(diǎn)與已有的地圖“對(duì)齊”,即掃描匹配。掃描匹配就是使用當(dāng)前幀與已經(jīng)有的地圖數(shù)據(jù)構(gòu)建誤差函數(shù),使用高斯牛頓法得到最優(yōu)解和偏差量。其工作是實(shí)現(xiàn)激光點(diǎn)到柵格地圖的轉(zhuǎn)換,t時(shí)刻所有的激光點(diǎn)都能變換到柵格地圖中,也就意味著匹配成功。
2.具體流程
首先初始時(shí)刻激光自身的坐標(biāo)系與柵格地圖坐標(biāo)系重合,即激光在地圖中的初始位姿(estimate)已知,激光的第一幀掃描數(shù)據(jù)在地圖中的坐標(biāo)已知。接著,獲取到第二幀激光掃描數(shù)據(jù),第二幀數(shù)據(jù)在激光雷達(dá)坐標(biāo)系下的坐標(biāo)是可以測(cè)出的(根據(jù)激光雷達(dá)的range、angle便可得到在激光坐標(biāo)系下的坐標(biāo)),但是不知道與第一幀的相對(duì)位置關(guān)系。
下一步就是實(shí)現(xiàn)這兩幀數(shù)據(jù)的匹配,我們假設(shè)兩幀數(shù)據(jù)無限接近,即激光點(diǎn)在柵格地圖占用值接近1(占用值越大,匹配的效果越好)。然后構(gòu)造最小二乘法,對(duì)函數(shù)先對(duì)括號(hào)內(nèi)部展開,然后對(duì)使誤差偏導(dǎo)為0,求解高斯牛頓方程(其中有用到地圖求偏導(dǎo)的方程(雙線性插值法),帶入即可求出位姿增量(在hector位姿增量用變量searchDir)。
接下來就可求出第二幀激光在地圖坐標(biāo)系下的位姿(第一幀位姿加上位姿增量即可得到,estimate += searchDir),slam中定位完成。
接下來建圖,后一幀的激光位姿求出,因?yàn)橐阎笠粠す恻c(diǎn)在激光坐標(biāo)系下的坐標(biāo),所以可根據(jù)后一幀激光位姿得后一幀激光點(diǎn)在地圖中坐標(biāo),即映射到地圖中,完成slam建圖過程。
cartographer中的前端匹配使用了雙三次線性插值+ceres庫求解非線性優(yōu)化問題(構(gòu)造最小二乘,優(yōu)化匹配),而hector slam中使用了雙線性插值+高斯牛頓求解非線性優(yōu)化問題
3.hector存在的問題
1、其中對(duì)于雙線性差值,在理論上存在不連續(xù)的可能,Pm可能在計(jì)算的時(shí)候迭代的過程中跑出P00->P11圍成的正方形。這個(gè)問題也被google的cartographer改進(jìn)為三線性差值。
2、沒有對(duì)地圖的修正能力,一旦地圖出錯(cuò),之后的匹配也都會(huì)出現(xiàn)問題。
4.算法概述
Hector slam 利用高斯牛頓方法解決 scan-matching 問題,對(duì)傳感器要求較高。
其無需使用里程計(jì),所以在不平坦區(qū)域?qū)崿F(xiàn)建圖的空中無人機(jī)及地面小車具有運(yùn)用的可行性,利用已經(jīng)獲得的地圖對(duì)激光束點(diǎn)陣進(jìn)行優(yōu)化,估計(jì)激光點(diǎn)在地圖的表示和占據(jù)網(wǎng)絡(luò)的概率,獲得激光點(diǎn)集映射到已有地圖的剛體變換,為避免局部最小而非全局最優(yōu)出現(xiàn),地圖使用多分辨率。
需具備高更新頻率且測(cè)量噪音小的激光掃描儀,所以,在制圖過程中,robot的速度要控制在較低的情況下才會(huì)有比較理想的建圖效果,這也是它沒有回環(huán)的一個(gè)后遺癥。另外在里程計(jì)數(shù)據(jù)比較精確的情況下無法有效利用里程計(jì)信息。
5.算法優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
不需要使用里程計(jì),所以使得空中無人機(jī)及地面小車在不平坦區(qū)域建圖存在運(yùn)用的可行性;利用已經(jīng)獲得的地圖對(duì)激光束點(diǎn)陣進(jìn)行優(yōu)化, 估計(jì)激光點(diǎn)在地圖的表示,和占據(jù)網(wǎng)格的概率;利用高斯牛頓方法解決scan-matching 問題,獲得激光點(diǎn)集映射到已有地圖的剛體變換;為避免局部最小而非全局最優(yōu),使用多分辨率地圖;導(dǎo)航中的狀態(tài)估計(jì)加入慣性測(cè)量系統(tǒng)(IMU),利用EKF濾波;
缺點(diǎn)
成本高 ,需要掃描傳感器或雷達(dá)(LRS)的更新頻率較高滿足測(cè)量噪點(diǎn)小,但是在制圖過程中需要機(jī)器人速度控制在比較低的情況下,建圖效果才會(huì)比較理想,這也是它沒有回環(huán)(loop close)的一個(gè)后遺癥;且在里程計(jì)數(shù)據(jù)比較精確的時(shí)候,無法有效利用里程計(jì)信息,造成數(shù)據(jù)的浪費(fèi) 。
6.綜合評(píng)價(jià)
建圖效果標(biāo)準(zhǔn),必須要機(jī)器人速度控制在比較低的情況下建圖效果才能好一點(diǎn)兒,以上建圖由于速度過快導(dǎo)致地圖發(fā)生偏移。在大地圖,低特征(distinctive landmarks)場(chǎng)景中,hector的建圖誤差高于gmapping。
這是由于hector過分依賴scan-match。特別是在長廊問題中,誤差更加明顯。hector_slam通過最小二乘法匹配掃描點(diǎn),且依賴高精度的激光雷達(dá)數(shù)據(jù),因此掃描角度很小且噪點(diǎn)較大的外圍是不行的,匹配時(shí)會(huì)陷入局部點(diǎn),地圖比較混亂。
對(duì)比下來Gmapping是應(yīng)用最為廣泛的2D slam方法,主要是基于2D激光雷達(dá)使用RBPF(Rao-Blackwellized Particle Filters)粒子濾波算法完成二維柵格地圖構(gòu)建,每個(gè)粒子都攜帶一張地圖,將定位和建圖過程分離,先進(jìn)行定位再進(jìn)行建圖。
Gmapping可以實(shí)時(shí)構(gòu)建室內(nèi)環(huán)境地圖,在構(gòu)建小場(chǎng)景地圖所需的計(jì)算量較小且地圖精度較高。相比于Hector SLAM,對(duì)激光雷達(dá)掃描頻率要求較低、魯棒性高(Hector在機(jī)器人快速轉(zhuǎn)向時(shí)很容易發(fā)生錯(cuò)誤匹配,構(gòu)建的地圖發(fā)生錯(cuò)位,原因主要是優(yōu)化算法容易陷入局部最小值);而相比于Cartographer,在構(gòu)建小場(chǎng)景地圖時(shí)Gmapping不需要太多的粒子并且沒有回環(huán)檢測(cè),因此計(jì)算量小于Cartographer而精度并沒有差太多。
Gmapping有效利用了里程計(jì)信息,這也是Gmapping對(duì)激光雷達(dá)頻率要求低的原因:里程計(jì)可以提供機(jī)器人的位姿先驗(yàn)。而Hector和Cartographer的設(shè)計(jì)初衷不是為了解決平面移動(dòng)機(jī)器人定位和建圖,Hector主要用于救災(zāi)等地面不平坦的情況。
最后向大家介紹YUHESEN 開發(fā)的商業(yè)化應(yīng)用導(dǎo)航模塊 NV-AUTO
歡迎大家位臨公司交流學(xué)習(xí) ,一同推動(dòng)移動(dòng)機(jī)器人導(dǎo)航技術(shù)發(fā)展與技術(shù)落地。