• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于VL—SLAM的無GPS自動駕駛系統研究

      2019-06-11 09:51:30陳平張少將朱強張慶余余楚禮
      時代汽車 2019年3期

      陳平 張少將 朱強 張慶余 余楚禮

      摘 要:結合自動駕駛汽車在無GPS信號的環(huán)境中如何解決定位問題,本文通過視覺激光傳感器融合的同時定位與地圖構建技術(VL-SLAM),基于機器人操作系統(ROS)構建了自動駕駛汽車的物理仿真平臺和點云地圖可視化界面。應用最近鄰迭代(ICP)相對位姿估計算法采集到地庫環(huán)境的高精度點云地圖,又應用粒子濾波算法解決了在地圖中的準確定位問題。最終,在實際地庫環(huán)境中進行實車測試,驗證該系統的算法及解決方案。

      關鍵詞:視覺激光傳感器融合;SLAM;自動駕駛汽車定位;ROS

      1 引言

      隨著自動駕駛技術的發(fā)展,在未知環(huán)境中智能汽車的定位技術成為該領域研究的核心。目前定位技術主要的解決方案是基于全球定位系統(GPS),但是在某些特殊的環(huán)境中如地下車庫,沒有GPS信號如何解決定位問題就是本文研究的關鍵所在。近年來,同步定位與地圖構建(Simultaneous Localization and Mapping,SLAM)技術的日益成熟,配合多傳感器融合解決方案,自動駕駛車輛在未知環(huán)境無GPS信號的情況下,完成路徑規(guī)劃的自動駕駛任務得以實現。本文先介紹了自動駕駛系統概述、視覺激光融合的SLAM理論與算法,又基于ROS框架搭建了自動駕駛汽車的建圖與路徑規(guī)劃仿真實驗,最后完成了在地庫中的實車算法驗證實驗,并做了論文結論總結與自動駕駛技術的未來展望。

      2 自動駕駛系統概述

      自動駕駛汽車即無人駕駛智能汽車,在沒有人為參與的情況下,依靠車內的控制系統與智能算法,通過多重傳感器數據融合控制汽車底層協議完成正常的車輛行駛功能。智能駕駛汽車是一個綜合的集成系統,包括了自動泊車系統、自動駕駛系統、障礙物停障系統等,又分為了感知層、決策層和控制層三個部分如圖1所示。其中感知層包括各路傳感器的數據采集、處理與融合等,更加精確和全面的感知周圍環(huán)境信息。決策層的輸入包括感知層的信息、路徑的規(guī)劃以及控制層反饋回來的數據,通過增強學習算法下發(fā)決策指令。決策指令包括了循跡、跟車、超車、剎車、轉向、調頭等等;最終通過控制層下發(fā)CAN總線下發(fā)指令完成智能駕駛汽車的自動駕駛任務,包括油門與剎車的控制、方向盤與擋位的控制等等。

      自動駕駛汽車發(fā)展與研發(fā)中的核心技術是車輛線控技術和車輛精確定位技術。本論文主要分析車輛的精確定位,目前最常用的解決方法就是使用GPS,可以讓汽車實時地得到自身的位置坐標。本文則基于SLAM技術研究了一種新的定位方法。

      結合SLAM技術,自動駕駛汽車的傳感器分別由攝像頭、激光雷達、車載毫米波雷達、車載超聲波雷達、慣導組合、工業(yè)控制器等組成,具體的安裝位置如圖2所示。使用的自動駕駛控制流程圖如圖3所示。

      3 SLAM融合算法

      3.1 SLAM技術介紹

      SLAM(Simultaneous Localization and Mapping),同時定位與地圖構建,主要解決的是自動駕駛汽車在未知環(huán)境中從未知位置開始移動,通過傳感器的輸入信號估計自身位姿并構建空間環(huán)境地圖進行自身定位,實現自主導航。

      這里記自動駕駛汽車在各個時刻的狀態(tài)為x1,x2,…,xk,其中k表示離散時間下標。下面分別用觀測模型和運動模型描述自動駕駛汽車的SLAM問題:

      zk,j表示觀測量,yi表示當前環(huán)境量,xk表示當前的位姿狀態(tài),uk表示當前運動傳感器的讀數,vkwk都是噪聲值。

      SLAM技術是一個比較龐大的系統,其中包括前端里程計、后端優(yōu)化、回環(huán)檢測、建圖四大部分。本文主要介紹基于視覺激光融合的SLAM前端里程計的位姿估計與定位技術。

      3.2 位姿估計算法

      視覺激光的數據融合可以讓自動駕駛汽車知道周圍環(huán)境的情況,檢測到障礙物的種類和對應的距離深度,假設兩個關鍵幀圖像數據之間已經匹配好的三維對應點:

      p=﹛p1…pn﹜,p′=﹛p1′,…pn′﹜

      通過求解歐式變換R,t,使得i,pi =Rpi′+t,求解上述表達式采用迭代最近鄰點法(Iterative Closest Point,ICP),具體ICP算法的求解方法有兩種:線性代數法(SVD)和非線性優(yōu)化法。

      3.2.1 線性代數法(SVD)

      定義第i對點的誤差項為;ei=pi-(Rpi′+t),構建最小二乘函數,使得誤差的平方和達到極小值的R,t:J=

      定義兩組點的質心為:

      對應的平方項展開并去掉交叉項為零的部分,優(yōu)化目標函數可以簡化為:

      令:

      qi=pi-p,qi′=pi′-p′

      同樣的方法展開只含有R的左側式子的平方和,并消去與R無關的項,最終化簡為需要優(yōu)化的式子:

      先定義矩陣:

      W是一個三維矩陣,對其進行SVD分解:

      W=UXVT

      其中U和V為對角陣,當W滿秩時,

      R=UVT

      求解R后,代回優(yōu)化目標函數可求出t。

      3.2.2 非線性優(yōu)化法

      求解ICP用非線性優(yōu)化的方法,是根據迭代思想尋找最優(yōu)解,與PnP算法類似。優(yōu)化過程中為了消除旋轉矩陣的自身約束,使用了李代數表示位姿,構建的目標函數為:

      式子中只有一個未知量,所以可以采用李代數的擾動模型求解:

      因為ICP算法中特征點已經匹配好,所以構建的最小二乘方程一定有解析解,就可以不進行迭代優(yōu)化。為了方便計算,可以采用兩種算法放在一起考慮,例如:如果深度信息未知,可以采用3D-2D的PNP重投影誤差;若深度信息已經被測出,就可以用3D-3D的ICP算法完成建模與求解。

      3.2.3 基于濾波的定位算法

      通過觀測模型解決了自動駕駛汽車的位姿估計和空間運動求解問題,還要解決自動駕駛汽車在構建地圖中的定位問題。本論文主要采用的貝葉斯濾波中一種特殊濾波方式——粒子濾波。

      (1)貝葉斯濾波

      自動駕駛汽車的當前定位存在觀測值z和位姿真實值x,兩者之間是存在誤差的,從觀測值到位姿真實值是一個概率分布問題,是所有空間環(huán)境定位中的可能性事件分布。貝葉斯濾波的流程是:已知狀態(tài)量t-1時刻的xt-1概率分布和運動傳感器值ut-1,在給定 t時刻的觀測數據zt的情況下,估計出狀態(tài)量在t時刻的概率分布。對應的貝葉斯濾波公式為:

      化簡可得:

      p(xt|z1:t,u1:t)=ηp(z1|x1)∫p(xt|xt-1,ut)p(xt-1|z1:t-1,u1:t-1) dxt-1

      貝葉斯濾波的核心就是通過t-1時刻的后驗概率推導在t時刻的先驗概率,在通過t 時刻的先驗概率更新t時刻的后驗概率。

      (2)粒子濾波算法

      粒子濾波是基于蒙特卡洛的方法,用粒子集表示概率,尋找隨機樣本用來近似的描述概率密度函數,用樣本均值代替積分運算,進而獲得系統狀態(tài)的最小方差估計的過程。由于粒子濾波在非高斯、非線性系統和多峰分布表現出來的優(yōu)勢,可以用來估計帶噪聲的觀測數據中自動駕駛汽車的位姿和運動狀態(tài)。

      粒子濾波可表示為:X={(xti,wti)[i=1,…,n]},其中xti表示自動駕駛汽車的位姿,wti表示當前位姿所處環(huán)境跟地圖的匹配度的權重。如圖4所示為粒子近似分布示意圖。

      本論文中實現自動駕駛系統中粒子濾波算法的流程分為以下三步:

      1.用粒子進行狀態(tài)傳播:

      xti~p(xt|ut,xt-1i )

      2.評價每一個粒子的權重:

      wti=ηp(zt|xt )

      3.根據權重進行重采樣,以wti的概率接受xti,目的是去除低權重的粒子。

      其中粒子濾波的狀態(tài)傳播模型為:

      bel'(xt)=∫p(xt|xt-1,ut)p(xt-1|z1:t-1,u1:t-1)dxt-1

      因為在沒有GPS信號的情況下,無法知道自動駕駛汽車位姿的實際發(fā)布,從它的預測分布進行定位采樣如圖5所示,并用觀測模型進行計算權重,聯合權重再重新采樣來近似自動駕駛汽車的后驗概率分布。概率越大,權重越大,定位越準確,重定位需要復制的粒子越多,粒子權重就更符合后驗概率分布如圖6,圖7所示。

      4 基于ROS的定位與建圖仿真實驗

      本論文中應用以上的SLAM位姿估計算法和粒子濾波定位算法,結合機器人操作系統ROS(Robot Operating System)進行算法驗證與仿真實驗。ROS是一個適用于自動駕駛汽車開源的元級操作系統。主要的優(yōu)點是可以為代碼復用提供支持、良好的通訊架構、具備插件仿真工具、有強大的庫且兼容多種編程語言。它提供了操作系統應有的功能,包括硬件抽象、底層設備控制、共用功能執(zhí)行、進程間消息傳遞,以及功能包管理。

      在本仿真實驗中,用URDF機器人統一描述平臺構建了自動駕駛汽車的模型,然后把自動駕駛汽車模型加入Gazebo物理仿真平真平臺進行仿真地下車庫的環(huán)境如圖8所示,通過粒子濾波算法進行模型定位仿真,用gmapping導航功能包在Rviz界面中顯示地圖的構建情況,并在地圖中進行自主定位導航與路徑規(guī)劃如圖9所示。

      5 實車測試與結果分析

      進行了理論分析與實驗算法仿真以后,用自動駕駛車輛進行測試與實驗,選擇的環(huán)境為沒有GPS信號的地下車庫如圖10圖11所示。首先通過自動駕駛車輛的相對位姿估計算法進行求解當前車的空間剛體運動矩陣,得到的位姿關系進行了整個地庫地圖拼接與構建并在Rviz中進行顯示如圖12所示,轉換為PCD格式的點云地圖如圖13所示。

      將構建好的整個車庫地圖選取部分路徑進行定位與導航試驗,通過VL-SLAM算法可以得到自動駕駛的位姿估計以及精度地圖。為了精確定位自動駕駛汽車在精度地圖中的位置關系,將velodyne32線激光雷達和單目視覺相機采集的數據融合后與精度地圖進行匹配,根據匹配的權重大小確定當前的采集數據是在精度地圖中的哪個位置。已知自身定位,然后再設定目標位置,結合ROS中的gmapping導航功能包就可以實現地圖環(huán)境中的路徑規(guī)劃任務。在RVIZ中的實驗結果如圖14所示,用紅色正方形標出自動駕駛車輛正在初始化,加載汽車模型。如圖15所示,汽車模型加載成功,并且定位準確作為初始位置出發(fā)點。隨后自動駕駛汽車開啟自動駕駛功能,如圖16所示為運動過程中自動駕駛汽車的精確定位。

      5.1 論文總結與未來展望

      本論文主要研究的是在無GPS信號的特殊環(huán)境下,基于單目視覺與velodyne32線激光傳感器相互融合的自動駕駛系統定位的解決方案。本論文概述了自動駕駛的系統架構,又分析了VL-SLAM的相對位姿估計求解算法和粒子濾波定位求解算法。在Linux操作系統安裝ROS環(huán)境搭建了自動駕駛的物理仿真平臺和地圖可視化界面,最終在無GPS的地庫環(huán)境中進行實車測試,完成了相對位姿估計、精度地圖構建與定位導航的功能。

      自動駕駛系統是未來汽車行業(yè)的發(fā)展趨勢,比如傳感器數據融合、結合深度學習的自動駕駛決策系統、以及高精度地圖的開發(fā)、基于大數據的智能網聯汽車等等都是未來的研究方向。

      參考文獻:

      [1]高翔.視覺SLAM十四講.北京:電子工業(yè)出版社,2017,130~178.

      [2]沈彤.立體視覺的目標測距系統[J].電子測量技術,2015,第38卷第4期.

      [3]權美香.視覺SLAM綜述[J].智能系統學報.2016,第11卷第6期.

      [4]管敘軍.視覺導航技術發(fā)展綜述[J].航空兵器,2014,第5期.

      [5]路研研.在軌航天器雙目視覺圖像采集與處理系統研制[M].黑龍江:哈爾濱工業(yè)大學,2015.

      [6]胡春旭.ROS機器人開發(fā)實踐.北京:機械工程出版社,2017,214~284.

      [7]段華旭.無人車基于雙目視覺的同時定位與地圖構建[J].華中科技大學學報.2015,第43卷增刊.

      [8]Strasdat et.Visual SLAM:Why filter?,Image and Vision Computing,2012.

      [9]Paz Lina M et al.Divide and Conquer:EKF SLAM,IEEE Transaction on Robotics,2008.

      [10]Triggs B et.El.Bundle adjustment - a Modern Synthesis,Springer,2000.

      [11]Kummerle Rainer,et.al.g2o:A General Framework for Graph Optimization,ICRA,2011.

      [12]Endres et al.3-D Mapping with an RGB-D Camera,IEEE Transaction on Robotics,2014.

      清河县| 铜川市| 南漳县| 黄梅县| 金堂县| 镇远县| 皮山县| 申扎县| 正定县| 白水县| 吉安县| 施秉县| 渑池县| 永修县| 竹溪县| 禹城市| 河东区| 长治县| 凌海市| 武义县| 贡山| 长顺县| 镇沅| 达拉特旗| 高密市| 诸暨市| 建水县| 贡山| 奉节县| 云龙县| 雅安市| 岚皋县| 定襄县| 张家川| 石首市| 甘南县| 温泉县| 兴业县| 绵竹市| 东台市| 琼海市|