閆 明 蔡云飛 陳 盟
(南京理工大學(xué)模式識(shí)別與人工智能實(shí)驗(yàn)室 南京 210094)
地面無人平臺(tái)技術(shù)作為國家“十三五”重點(diǎn)研究方向,目前正得到廣泛的研究。技術(shù)包括環(huán)境感知與理解、定位定向、自主規(guī)劃、決策控制和多機(jī)協(xié)同等關(guān)鍵技術(shù),其中環(huán)境感知與理解是目前研究的重點(diǎn)和難點(diǎn)。對(duì)環(huán)境信息的獲取,是無人平臺(tái)技術(shù)實(shí)現(xiàn)的基礎(chǔ),目前地面無人平臺(tái)主要的環(huán)境感知手段分為圖像和距離兩大部分,圖像感知包括可見光圖像和紅外圖像兩種,主要用來對(duì)環(huán)境中的顏色、紋理、邊緣、外形、符號(hào)等進(jìn)行感知識(shí)別,對(duì)視野目標(biāo)距離不敏感。距離感知借助于激光雷達(dá)、毫米波雷達(dá)、聲吶等傳感手段實(shí)現(xiàn),其屬于“盲人摸象”。其中激光雷達(dá)憑借其探測距離遠(yuǎn)、精度高等優(yōu)點(diǎn),得到廣泛使用,激光雷達(dá)主要是利用光的收發(fā)時(shí)間差來獲得被反射物體的相對(duì)方位角和距離,根據(jù)激光束發(fā)射扇面的數(shù)量,分為單線(SICK LMS511、LMS111、Hokuyo 10L 等)、4/8 線(IBEO 4L、8L)和16/32/40/64 線(Velodyne、禾賽等)等種類。水平方向每個(gè)掃描扇面由不同角度的掃描點(diǎn)組成,通常稱為一根線。
目前用于可通行道路識(shí)別的傳感器主要有攝像頭和激光雷達(dá)。攝像頭具有成本低,數(shù)據(jù)(圖像)直觀的優(yōu)點(diǎn),但極易受到光照、天氣等外界環(huán)境條件的影響,穩(wěn)定性差。激光雷達(dá)具有探測距離遠(yuǎn),精度高和不受光照條件影響等優(yōu)點(diǎn)。
早期采用的單線激光雷達(dá)采用單平面掃描模式,獲得的環(huán)境輪廓信息極為有限,而且受地形和顛簸影響,容易“看天看地”,不適用于非結(jié)構(gòu)化環(huán)境。近年來,隨著多線激光雷達(dá)的發(fā)展,通過三維空間的密集點(diǎn)云,可獲得較為豐富的環(huán)境信息,對(duì)環(huán)境的輪廓具有較好的描述特性。
地面無人平臺(tái)通行環(huán)境通常分為結(jié)構(gòu)化、半結(jié)構(gòu)化和非結(jié)構(gòu)化道路三種。
圖1 三種典型環(huán)境示意圖
結(jié)構(gòu)化道路是指邊緣規(guī)則,路面平坦,有明顯車道線及其他人工標(biāo)記的行車道路,例如高速公路、市區(qū)道路、國道、省道等。半結(jié)構(gòu)化道路是指無明顯道路邊緣特征和交通標(biāo)示特征的平坦道路環(huán)境,如鄉(xiāng)間水泥路、柏油路等;非結(jié)構(gòu)道路是泛指無明顯道路邊緣特征,非平坦路面的野外環(huán)境。在結(jié)構(gòu)化、半結(jié)構(gòu)化道路中,無人平臺(tái)所處路面較為平整,道路邊緣較為清晰,道路中的人、牲畜和車等障礙較容易檢測,可通行區(qū)域識(shí)別難道較小。在非結(jié)構(gòu)化環(huán)境(越野環(huán)境)中,沒有普通道路特征,而且地形起伏較大,車輛顛簸厲害。此時(shí)采用基于地平面絕對(duì)坐標(biāo)的普通道路邊界檢測方法不具有可行性,漏檢和誤檢率都很高,無法正常使用。目前,基于相對(duì)參照系的密集3D點(diǎn)云特征可以較好地解決該問題。
目前流行的32/64線雷達(dá)通常安裝于平臺(tái)頂部前側(cè),受垂直掃描角度的限制,會(huì)在車輛正前方留下一片較大的盲區(qū),而且盲區(qū)范圍隨著車體積和安裝高度的增加而增加,不利于體積龐大的軍用無人平臺(tái)。項(xiàng)目組通過對(duì)4 線激光雷達(dá)的使用研究,安裝車頭部位,可較好地提供近場環(huán)境描述功能,可有效彌補(bǔ)盲區(qū),甚至在一些特定場景中,可以完全取代車頂雷達(dá)。
基于以上的認(rèn)識(shí),開展非結(jié)構(gòu)化環(huán)境越野自主車輛前方可通行區(qū)域檢測問題的研究。首先通過點(diǎn)云分布和排列特征查找具有相對(duì)平面掃描特性的較規(guī)則的分布點(diǎn)云帶,提取并擬合近似平行線段集,對(duì)區(qū)域邊界進(jìn)行道路假設(shè)和擬合,根據(jù)車輛連續(xù)運(yùn)行時(shí)間軸的上下文關(guān)系對(duì)邊界進(jìn)行濾波平滑和修補(bǔ),利用點(diǎn)云聚類特征檢測區(qū)域內(nèi)障礙物,將區(qū)域邊界與障礙物邊界進(jìn)行融合,最終得到安全的可通行區(qū)域。使用效果驗(yàn)證了算法具有較的高魯棒性,并滿足實(shí)時(shí)性要求。
可通行區(qū)域檢測問題一直是非結(jié)構(gòu)化環(huán)境無人平臺(tái)研究的難點(diǎn)問題,也是基礎(chǔ)問題。目前基于激光雷達(dá)的可通行區(qū)域檢測研究主要分為兩類。
1)提取道路邊沿的障礙物(如馬路路牙等)上的掃描點(diǎn)作為道路邊界點(diǎn),使用直線擬合道路邊沿,得到道路范圍,并檢測道路內(nèi)的障礙物確定可通行區(qū)域。文獻(xiàn)[1]提出了一種基于DBSCAN(Density Based Spatial Clustering of Applications with Noise)的可通行區(qū)域檢測算法,通過聚類得到道路邊沿與障礙物,并使用最小二乘擬合道路邊沿直線[2]。文獻(xiàn)[3~4]使用點(diǎn)到直線的閾值擬合線段分割掃描點(diǎn),然后在線段范圍內(nèi)使用RANSAC(Random Sample Consensus)擬合地平面。文獻(xiàn)[5~7]利用設(shè)定邊緣高度閾值的方法尋找道路邊緣點(diǎn),并使用最小二乘法擬合道路邊緣直線。使用該類方法的優(yōu)點(diǎn)在于計(jì)算簡單,實(shí)時(shí)性高。但在非結(jié)構(gòu)化環(huán)境下,道路兩側(cè)邊沿障礙物不連續(xù)或沒有障礙物,使用該方法極易造成誤檢。
2)基于點(diǎn)云平面分割的方法。文獻(xiàn)[8]中提出了一種基于AMN(Associative Markov Network)的三維點(diǎn)云分割算法。算法提取點(diǎn)云相關(guān)特征[9]使用SVM 分類器訓(xùn)練后構(gòu)造AMN 實(shí)現(xiàn)點(diǎn)云分割,檢測可通行區(qū)域。文獻(xiàn)[10~11]采用構(gòu)建點(diǎn)云圖,使用局部凸準(zhǔn)則的方法實(shí)現(xiàn)圖分割,得到道路與障礙物位置信息。文獻(xiàn)[12~13]中使用極坐標(biāo)柵格圖表示點(diǎn)云位置,并使用高斯過程回歸實(shí)現(xiàn)道路分割,得到道路區(qū)域與障礙物區(qū)域。文獻(xiàn)[14]中使用檢測點(diǎn)云在地面與障礙物之間粗糙度的差異實(shí)現(xiàn)道路分割。該類方法的優(yōu)點(diǎn)在于最大限度利用了點(diǎn)云分布信息,檢測結(jié)果相對(duì)準(zhǔn)確。但是其中涉及復(fù)雜的迭代計(jì)算,并且為準(zhǔn)確得到分割結(jié)果需使用大量點(diǎn)云數(shù)據(jù),難以滿足實(shí)時(shí)性要求。
兩類方法均涉及基于地平面的絕對(duì)高度計(jì)算,由于車輛在非結(jié)構(gòu)化環(huán)境中行駛過程中存在高頻率、大幅度震動(dòng),對(duì)高度計(jì)算影響較大,因此上述方法并不適用于非結(jié)構(gòu)化道路。
根據(jù)項(xiàng)目組經(jīng)驗(yàn),四線激光雷達(dá)根據(jù)具體任務(wù)的不同,安裝方式以俯仰角區(qū)分主要分為兩種:俯仰角為0°的水平安裝方式與俯仰角大于1.6°的俯視安裝方式。
雷達(dá)水平安裝方法[15]如圖2(a)所示,四條掃描線其中兩條垂直方向掃描角度大于0°,用來檢測前方障礙物信息,另外兩條掃描線垂直掃描角度小于0°,用來獲取近距離障礙物及道路邊界信息。此方法的優(yōu)勢(shì)在于可以同時(shí)兼顧雷達(dá)探測距離遠(yuǎn)和近距離高分辨檢測的優(yōu)點(diǎn)??紤]檢測的實(shí)際障礙物高度并結(jié)合實(shí)際車輛高度,垂直地面高度不宜超過50cm,否則會(huì)產(chǎn)生較大近距離障礙物檢測盲區(qū)。由于僅有兩條掃描線獲取道路邊界信息,信息量較少,復(fù)雜地形中可靠性較差。在非結(jié)構(gòu)化環(huán)境中,地面環(huán)境非常復(fù)雜,地勢(shì)起伏較大,顛簸厲害,極小的幅度就會(huì)引起激光波速“上天入地”,無法掃描到地面獲取道路信息。因此水平安裝方式僅適合在結(jié)構(gòu)化道路環(huán)境中使用[3,16]。
圖2 雷達(dá)安裝分析
雷達(dá)俯視安裝方法,如圖2(b)所示,高位安裝,四條掃描線全部掃向近距離地面,獲取盡可能多的地面信息??紤]到非結(jié)構(gòu)化環(huán)境中車輛通行速度的制約,系統(tǒng)反應(yīng)時(shí)間比較充裕,雷達(dá)探測距離可調(diào)小。通過增加安裝高度,增加視野;增大俯仰角,提高魯棒性。俯視安裝方式時(shí)安裝高度一般大于60cm。俯視安裝方式優(yōu)點(diǎn)在于相比水平安裝方式,得到的道路信息更加豐富,并且受車輛顛簸的影響小,適合在非結(jié)構(gòu)化環(huán)境中使用。俯視安裝方式探測距離受限于雷達(dá)安裝高度和俯仰角,對(duì)于高度較小的障礙物會(huì)存在一定范圍的盲區(qū)。
本文采用俯視安裝方式。右手車體坐標(biāo)系為以車輛后軸中心為原點(diǎn),Zc方向垂直地面向上,Yc方向?yàn)檐囕v前進(jìn)方向,Xc方向?yàn)樗较蛴曳较?。四線激光雷達(dá)安裝在車頭,設(shè)其在車體坐標(biāo)系下的位置為(xc,yc,zc),則安裝位置滿足 xc=0,理想情況下激光雷達(dá)相對(duì)車體坐標(biāo)系的橫滾角與偏航角均為0。h 表示四線激光雷達(dá)相對(duì)地面安裝高度,α 表示雷達(dá)安裝俯仰角,αi表示第i 條掃描線相對(duì)水平面的俯仰角,di表示第i 條掃描線到雷達(dá)的水平距離。雷達(dá)垂直方向角分辨率為0.8°,各參數(shù)滿足如下關(guān)系式:
其中激光雷達(dá)最上層掃描線為第1 層,從上到下序號(hào)依次遞增。
定義雷達(dá)坐標(biāo)系為以四條掃描線中間平面為xoy 平面,水平向前為Yl方向,水平向右為 Xl方向。Zl方向垂直xoy 平面向上,滿足右手坐標(biāo)系。從上到下四條掃描線相對(duì)xoy 平面的俯仰角滿足:
αi=(1.2°,0.4°,-0.4°,-1.2°)i=1,2,3,4 (3)
設(shè)水平方向掃描角度為θ ,掃描點(diǎn)距離為 ρ,則掃描點(diǎn)在雷達(dá)坐標(biāo)系下的位置可用下式表示:
掃描點(diǎn)從雷達(dá)坐標(biāo)系到車體坐標(biāo)系的轉(zhuǎn)換關(guān)系可表示為
其中R3×3表示雷達(dá)坐標(biāo)系到車體坐標(biāo)系的旋轉(zhuǎn)矩陣,T3×1為平移向量。
可通行區(qū)域定義:平臺(tái)在周邊360°視野范圍內(nèi),根據(jù)自身的控制特性和外輪廓限制,在無破壞性碰擦的情況下,運(yùn)動(dòng)可達(dá)并可安全通過的區(qū)域。
四線激光雷達(dá)在路面上的掃描點(diǎn)近似四條與車體坐標(biāo)系X 軸平行的線段,通過檢測點(diǎn)云中的直線段的方式得到當(dāng)前行駛區(qū)域范圍。在掃描范圍內(nèi)激光雷達(dá)不同掃描線在障礙物上的相鄰掃描點(diǎn)之間距離與在地面上的距離存在明顯差異,可采用基于歐式距離聚類算法檢測行駛區(qū)域范圍內(nèi)的障礙物。
可通行區(qū)域檢測算法分為以下五個(gè)步驟:
1)撕裂點(diǎn)檢測:將三維雷達(dá)點(diǎn)云投影到XY 二維平面,使用霍夫變換檢測激光雷達(dá)點(diǎn)云圖中的直線,并根據(jù)撕裂點(diǎn)位置提取掃描在路面上的點(diǎn)云線段,得到線段兩端點(diǎn)假設(shè)為區(qū)域邊界點(diǎn)。
2)邊界描述:采用卡爾曼濾波算法對(duì)區(qū)域邊界點(diǎn)位置進(jìn)行濾波估計(jì),然后使用最小二乘法擬合可通行區(qū)域邊界線,估計(jì)當(dāng)前可通行區(qū)域范圍。
3)障礙物檢測:采用基于歐式距離聚類的算法實(shí)現(xiàn)行駛區(qū)域范圍內(nèi)的障礙物檢測。
4)區(qū)域融合:融合估測范圍邊界與障礙物區(qū)域。
5)可達(dá)性評(píng)估:根據(jù)車輛運(yùn)動(dòng)模型,評(píng)估車輛的可達(dá)性,得到最終的可通行區(qū)域。
將三維點(diǎn)云投影到XOY平面上,投影后的二維掃描點(diǎn)坐標(biāo)可表示為(xij,yij),i=1,2,3,4, j=1,…,Ni,Ni表示每條掃描線上的點(diǎn)云數(shù)量。使用霍夫變換獲得每條掃描線上的直線方程。
由于非結(jié)構(gòu)化環(huán)境復(fù)雜性,對(duì)于在直線上的掃描點(diǎn),檢測其在直線段上的端點(diǎn)。采用點(diǎn)云分割方法,設(shè)置相鄰點(diǎn)之間距離閾值,計(jì)算相鄰點(diǎn)的距離,大于閾值的相鄰點(diǎn)為點(diǎn)云的撕裂點(diǎn)。如圖3 所示,從線段兩側(cè)分別檢測,若從某一點(diǎn)開始連續(xù)n 個(gè)點(diǎn)不存在撕裂點(diǎn),則該點(diǎn)為需提取的線段端點(diǎn),并標(biāo)記為區(qū)域邊界點(diǎn),在理想情況下兩側(cè)分別有4 個(gè)邊界點(diǎn)。但是在非結(jié)構(gòu)化環(huán)境中,由于地面環(huán)境復(fù)雜和車輛顛簸等因素,最上層掃描線得到的掃描結(jié)果與實(shí)際的道路環(huán)境差異較大,本文取下三層掃描線檢測結(jié)果進(jìn)行區(qū)域邊界擬合。
圖3 撕裂點(diǎn)檢測結(jié)果示意圖
在理想情況下,車輛行進(jìn)過程中通過相鄰兩幀點(diǎn)云數(shù)據(jù)檢測到每條掃描線的邊界點(diǎn)位置基本不變或差異很小。而在非結(jié)構(gòu)化環(huán)境中,由于車輛顛簸等因素的影響,激光雷達(dá)獲取的相鄰幀點(diǎn)云數(shù)據(jù)之間可能存在較大差異,造成前后幀邊界點(diǎn)位置提取差異較大。假設(shè)車輛為直線行進(jìn),邊界點(diǎn)位置變化為線性變化,使用卡爾曼濾波器對(duì)邊界點(diǎn)位置進(jìn)行估計(jì)、觀測和校正,減小波動(dòng)性和誤差。
卡爾曼濾波是一種高效遞歸濾波器,可以根據(jù)目標(biāo)的動(dòng)態(tài)信息,減小測量中噪聲的影響,得到相對(duì)精確的當(dāng)前目標(biāo)位置狀態(tài)??柭鼮V波過程包含預(yù)測與更新兩個(gè)階段??柭鼮V波遞歸計(jì)算方程如下。
預(yù)測階段:
更新階段:
其中 x?k-1|k-1表示 k-1 時(shí)刻的目標(biāo)狀態(tài),x?k|k-1表示由k-1時(shí)刻的狀態(tài)對(duì)k時(shí)刻狀態(tài)的預(yù)測值,F(xiàn)k為k時(shí)刻的狀態(tài)轉(zhuǎn)移矩陣,Bk為k 時(shí)刻的輸入轉(zhuǎn)移矩陣,uk為k 時(shí)刻的輸入向量,R 為k 時(shí)刻的測量噪聲方差,Q 為k時(shí)刻過程激勵(lì)噪聲協(xié)方差。 Kk為k時(shí)刻的卡爾曼增益,Hk為k 時(shí)刻的測量轉(zhuǎn)移矩陣,zk為該時(shí)刻目標(biāo)測量值。
在本文中,對(duì)于邊界點(diǎn)坐標(biāo)(x,y)中任一狀態(tài)x 或y,問題可化簡為一維卡爾曼濾波,狀態(tài)轉(zhuǎn)移矩陣Fk,測量轉(zhuǎn)移矩陣Hk均為單位矩陣。在本系統(tǒng)中,由于沒有外界輸入因素,輸入向量uk為0。測量噪聲方差R 為一維常量,可通過激光雷達(dá)對(duì)同一物體多次掃描得到的觀測值計(jì)算得到。對(duì)過程激勵(lì)噪聲協(xié)方差Q ,本文在多種不同場景多次實(shí)驗(yàn)的基礎(chǔ)上求取經(jīng)驗(yàn)值。本文卡爾曼遞歸計(jì)算方程如下所示。
預(yù)測階段:
更新階段:
考慮到算法的實(shí)時(shí)性,方法采用最小二乘法擬合邊界。設(shè)直線方程為 y=bx+k ,則最小二乘法計(jì)算如下所示:
將左右兩側(cè)濾波后得到的邊界點(diǎn)帶入可得到左右兩側(cè)的直線方程,該直線即為當(dāng)前可通行區(qū)域邊界。
雷達(dá)在俯視安裝狀態(tài)下,障礙物檢測如圖4(a)所示:
圖4 障礙物檢測
在前方有障礙物的情況下,do表示掃描到障礙物上的相鄰兩條掃描線之間的距離,dg表示如果沒有障礙物遮擋的情況下,相鄰兩條掃描線之間的距離。α0,α1分別為第一層與第二層掃描線相對(duì)水平面的俯仰角,d 表示障礙物與雷達(dá)的水平距離。圖中距離關(guān)系可由下式表示:
在本文雷達(dá)安裝方式下,距離關(guān)系滿足do? dg。
設(shè)不同掃描線之間的相鄰水平掃描角度的掃描點(diǎn)之間的距離閾值為dT1,遍歷中間兩條掃描線,如圖5 所示,計(jì)算點(diǎn)與相鄰掃描線鄰近水平方向掃描角度點(diǎn)的距離dn,若dn<dT1,則將該點(diǎn)加入障礙物點(diǎn)云隊(duì)列Q。設(shè)置距離閾值dT2,從隊(duì)列Q 中依次取出點(diǎn)云數(shù)據(jù),計(jì)算點(diǎn)云數(shù)據(jù)到點(diǎn)云集合Ck幾何中心的距離dc,若滿足dc<dT2,則將該點(diǎn)加入點(diǎn)云集合中,否則取當(dāng)前點(diǎn)云集合Ck為一個(gè)聚類簇。遍歷直到隊(duì)列Q 為空,得到聚類簇劃分C={C1,C2,…,Ck} 。具體實(shí)現(xiàn)如下。
圖5 不同掃描線相鄰點(diǎn)之間的距離關(guān)系
Di中的點(diǎn)pij的相鄰掃描點(diǎn)
計(jì)算pij與相鄰掃描點(diǎn)之間的距離dn= ||pij-
if dn<dT1then
將 pij與加入隊(duì)列Q
end if
end for
end for
初始化k=0
設(shè)置聚類點(diǎn)集合S=?
while Q ≠?
從隊(duì)列Q中取出一個(gè)掃描點(diǎn)q
if S ≠? then 計(jì)算q與S幾何中心sc距離dc
if dc<dT2then
S=S ∪q
update sc
else
得到一個(gè)聚類簇Ck=S
K=k+1
end if
else
S=S ∪q
S幾何中心sc=q
end if
end while
本文將區(qū)域邊界與障礙物區(qū)域融合得到當(dāng)前車輛行駛的可通行區(qū)域。如圖6 所示,點(diǎn)O 為雷達(dá)坐標(biāo)系原點(diǎn),對(duì)于左側(cè)邊界,A1表示左側(cè)邊界與雷達(dá)坐標(biāo)系X 軸交點(diǎn),A2,A3,A4表示激光雷達(dá)掃描到的障礙物邊界頂點(diǎn),A5為線段OA4延長線與左側(cè)邊界的交點(diǎn)。由于激光雷達(dá)僅能得到障礙物在雷達(dá)一側(cè)的輪廓信息,如圖6 陰影區(qū)域所示,障礙物內(nèi)側(cè)區(qū)域?yàn)楫?dāng)前未知區(qū)域,須將其從可通行區(qū)域中去除。在之前得到邊界結(jié)果的基礎(chǔ)上,取A1~A5五個(gè)點(diǎn)圍成的相對(duì)障礙物輪廓的包絡(luò)線作為新的邊界線,同理可得到新的右側(cè)邊界。兩側(cè)邊界線圍成的內(nèi)部區(qū)域?yàn)楫?dāng)前車輛的可通行區(qū)域。
圖6 區(qū)域融合示意圖
對(duì)于車輛行駛位置 p(x,y),其到區(qū)域邊界與m個(gè)障礙物中心 poj( )xoj,yoj,j=0,1,…,m 距離需滿足一定的空間關(guān)系,如式(12)所示,其中dc表示車寬,doj表示第 j 個(gè)障礙物寬度,ε 為車輛通行的安全余量。
圖7 車輛轉(zhuǎn)彎示意圖
在滿足空間要求的同時(shí),車輛在通過彎道與避障情況下須考慮車輛實(shí)際轉(zhuǎn)彎角度與轉(zhuǎn)彎半徑。如圖7 示,其中l(wèi) 表示車輛軸距,d 表示車輛輪距,車輛后軸中點(diǎn)為車體坐標(biāo)系原點(diǎn),φ 表示前輪轉(zhuǎn)向角度,ρr,ρf分別為車輛后輪與前輪的轉(zhuǎn)彎半徑,其與軸距、轉(zhuǎn)角關(guān)系滿足式(13)。在本文實(shí)驗(yàn)車輛實(shí)際行駛過程中,出于安全性考慮,車輛最大轉(zhuǎn)向角度 φ=35°。
如圖8 示,車輛前方檢測到兩個(gè)障礙物,車輛需繞過障礙物到達(dá)目標(biāo)點(diǎn)。障礙物A 左側(cè)滿足車輛空間限制,但不滿足車輛轉(zhuǎn)彎半徑限制,因此車輛無法到達(dá)障礙物A 左側(cè)區(qū)域。障礙物B 右側(cè)區(qū)域滿足車輛轉(zhuǎn)彎半徑限制,但區(qū)域?qū)挾刃∮谲噷?,因此無法通行。
圖8 車輛可達(dá)性示意圖
為驗(yàn)證本文算法的檢測性能與實(shí)時(shí)性,該算法的實(shí)驗(yàn)環(huán)境如下:實(shí)驗(yàn)平臺(tái)為輪式無人自主車,采用四線激光雷達(dá)型號(hào)為IBEO LUX2010 4L.雷達(dá)安裝高度為65cm,前向俯仰角為5.03°。四線激光雷達(dá)型號(hào)為德國IBEO 公司生產(chǎn)的IBEO LUX2010 4L。該款激光雷達(dá)有四條掃描線,探測范圍可達(dá)200m,距離分辨率4cm,掃描精度10cm。垂直視場角為3.2°,垂直角分辨率為0.8°。在水平方向上,掃描中心視場角為85°,兩側(cè)可擴(kuò)展,最大視場角為110°。水平方向角分辨率為0.125°/0.25°/0.5°三擋可調(diào),掃描頻率可調(diào)節(jié)12.5/25.0/50.0Hz。
圖9 實(shí)驗(yàn)平臺(tái)
本文在多種不同的場景下進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)場景為典型的非結(jié)構(gòu)化環(huán)境,包括無障礙物道路與存在車輛、行人等障礙物的區(qū)域場景。實(shí)驗(yàn)包括對(duì)于掃描線的直線檢測,邊界點(diǎn)檢測,邊界線擬合與邊界內(nèi)障礙物檢測。實(shí)驗(yàn)場景與結(jié)果如圖10~11所示。
圖10 通行區(qū)域邊界檢測
圖11 彎道邊界檢測結(jié)果
圖10 、圖11 為無障礙的非結(jié)構(gòu)化場景實(shí)驗(yàn)。其中圖10(a)為直線道路場景,中間高度略高于兩側(cè),兩側(cè)存在土堆作為邊界。圖11(a)為彎道場景,左側(cè)為雜草,右側(cè)為土堆,為兩側(cè)行駛區(qū)域邊界。兩個(gè)場景下可行駛區(qū)域中間均不存在障礙物。圖10(b)與圖11(b)分別表示相應(yīng)場景下霍夫變換檢測直線、邊界點(diǎn)與邊界線檢測結(jié)果,均為XOY 平面表示。
圖12~14 表示存在障礙物的非結(jié)構(gòu)化場景實(shí)驗(yàn)。其中圖12 表示存在汽車的區(qū)域場景,圖(a1)表示汽車在遠(yuǎn)距離時(shí)的場景,圖(b1)表示汽車在近距離時(shí)的場景。兩側(cè)存在與路面高度存在明顯差異的連續(xù)障礙物邊界,路面較為平坦。圖13 表示存在摩托車區(qū)域場景,圖(a1)和圖(b1)分別表示遠(yuǎn)距離與近距離場景,場景中邊沿不連續(xù)且與路面沒有明顯高度差異,場景中路面起伏較大。圖14 表示存在行人的區(qū)域場景,其中圖(a1),圖(b1)分別為遠(yuǎn)距離與近距離場景示意圖,該路面較為平坦,兩側(cè)為斷崖,高度明顯低于路面高度,不存在常規(guī)意義上的道路邊沿。
圖12~14 中對(duì)應(yīng)的圖(a2),圖(b2)分別為對(duì)應(yīng)場景不同距離下的霍夫變換檢測直線、區(qū)域邊界點(diǎn)與區(qū)域邊界線檢測結(jié)果。圖(a3)和圖(b3)表示對(duì)應(yīng)場景不同距離下的邊界內(nèi)障礙物檢測結(jié)果,圖(a4)和圖(b4)表示區(qū)域融合后的結(jié)果。所有實(shí)驗(yàn)結(jié)果均在XOY平面表示。
在圖10(a)的場景中,由于行駛區(qū)域中間高度略高于兩側(cè),因此在圖10(b)中的點(diǎn)云圖中,掃描線中間存在一定程度的凹陷。在霍夫變換檢測結(jié)果可以看出,該程度的凹陷并未影響直線檢測結(jié)果,并成功提取出了下三層掃描線上的區(qū)域邊界點(diǎn),擬合出符合實(shí)際的區(qū)域邊界線。對(duì)于圖11(a)的彎道場景,激光雷達(dá)在路面上的掃描線同樣近似于X 軸的平行線。本文方法可以成功地提取每條掃描線上的區(qū)域邊界點(diǎn),擬合的區(qū)域邊界線向右側(cè)傾斜,符合右轉(zhuǎn)彎道路實(shí)際場景。
對(duì)于圖12(a1)場景,在圖12(b1)中可以看出,左側(cè)邊界檢測結(jié)果符合實(shí)際情況,右側(cè)由于路邊障礙物高度相對(duì)較低,存在相當(dāng)數(shù)量的邊界外掃描點(diǎn),因此在點(diǎn)云圖中有兩條障礙物邊界,兩條邊界之間存在無掃描點(diǎn)的位置區(qū)域。本文方法檢測結(jié)果為內(nèi)側(cè)區(qū)域邊界,符合實(shí)際情況。在圖12(b2)中,對(duì)側(cè)來車車頭位置在第二條掃描線處,此時(shí)該位置存在相當(dāng)數(shù)量的不同掃描線上的掃描點(diǎn),但由于車身上位置上只存在第一條掃描線上的掃描點(diǎn),本文方法此時(shí)只能檢測到目前該車車頭的位置。場景圖12(b1)中,兩車之間距離相對(duì)圖12(a1)更近,對(duì)側(cè)來車車頭位置在第四條掃描線處,如圖12(b3)所示,此時(shí)在車身位置也存在一定數(shù)量的不同掃描線的掃描點(diǎn),本文算法可以檢測車體大部分位置。但由于車身的遮擋,第一、二兩條掃描線左側(cè)一部分掃描點(diǎn)不能掃描到路面上,對(duì)邊界檢測結(jié)果產(chǎn)生了一定影響。如圖12(b2)所示,左側(cè)邊界點(diǎn)發(fā)生較為明顯的傾斜,原因在于第一、二兩條掃描線長度明顯較第三、四條掃描線短,對(duì)第二條掃描線檢測的最左側(cè)點(diǎn)并不是左側(cè)邊界點(diǎn)。本文中采用的卡爾曼濾波對(duì)邊界點(diǎn)進(jìn)行平滑,在一定程度上減小了掃描點(diǎn)與真實(shí)邊界點(diǎn)的偏差,圖中卡爾曼濾波后得到的區(qū)域邊界點(diǎn)相比實(shí)際直線中最左側(cè)掃描點(diǎn)更接近真實(shí)的邊界點(diǎn),采用該方法最大程度減小了由于障礙物遮擋帶來的邊界檢測誤差。
圖12 障礙物場景1可通行區(qū)域檢測結(jié)果
圖13 障礙物場景2可通行區(qū)域檢測結(jié)果
圖14 障礙物場景3可通行區(qū)域檢測結(jié)果
在圖13(a1)的場景中,路面起伏較大,如圖13(a2)所示,路面上的掃描線產(chǎn)生傾斜,邊界檢測結(jié)果也產(chǎn)生了一定程度的傾斜。實(shí)際場景中右側(cè)存在不連續(xù)道路邊界,本文算法由于只處理掃描到路面上的邊界點(diǎn),兩側(cè)障礙物邊沿點(diǎn)對(duì)于檢測結(jié)果沒有影響,因此可以較好地處理實(shí)際場景中存在不連續(xù)邊沿的情況。圖13(a3)中,本文算法成功檢測出了停靠在路邊的障礙物。圖13(b1)的場景中,車輛距離障礙物的距離更近,障礙物上的掃描點(diǎn)更密集,檢測結(jié)果如圖13(b3)所示。
在圖14(a1)中,兩側(cè)不存在障礙物作為邊沿,點(diǎn)云圖如圖14(a2)所示,兩側(cè)存在大片沒有掃描點(diǎn)的區(qū)域。本文方法可以成功提取出區(qū)域兩側(cè)的邊沿點(diǎn)以擬合邊界沿線,并未受到兩側(cè)斷崖的影響。在右側(cè)邊界附近存在行人,本文算法可以成功檢測,結(jié)果如圖14(a3)所示。圖14(b1)場景中,行人與車輛距離更近,檢測結(jié)果如圖14(b3)所示。由于行人寬度較小,激光雷達(dá)掃描在其上的掃描點(diǎn)較少,因此其檢測需要相對(duì)車輛更近的距離以保證有足夠數(shù)量的掃描點(diǎn),如圖14(a3)所示,首次檢測到的距離為10m,已經(jīng)過第三條掃描線。
本文方法在 Cortex-A8 處理器,1GHz,256MB RAM 硬件環(huán)境下,單幀處理時(shí)間為25ms.IBEO-LUX-2010 4L 激光雷達(dá)掃描頻率為25Hz,即40ms 一幀數(shù)據(jù),因此本文方法可以滿足實(shí)時(shí)性要求,并已成功應(yīng)用在無人自主車上,參加了陸軍裝備部“跨越險(xiǎn)阻2016”地面無人裝備挑戰(zhàn)賽。
本文提出了一種基于四線激光雷達(dá)的非結(jié)構(gòu)化環(huán)境可通行區(qū)域檢測算法。通過點(diǎn)云分布和排列特征查找具有相對(duì)平面掃描特性的較規(guī)則分布點(diǎn)云帶,提取并擬合多條近似平行線段,對(duì)平行線段的端點(diǎn)點(diǎn)集進(jìn)行區(qū)域邊界假設(shè)和擬合,根據(jù)車輛連續(xù)運(yùn)行時(shí)間軸的上下文關(guān)系對(duì)邊界進(jìn)行濾波平滑和修補(bǔ),利用點(diǎn)云聚類特征檢測區(qū)域內(nèi)障礙物,將邊界與障礙物區(qū)域進(jìn)行融合,最終得到安全的可通行區(qū)域。實(shí)驗(yàn)表明,該算法具有高可靠性與實(shí)時(shí)性,已成功運(yùn)用于無人自主車上,能夠滿足無人自主車的感知需求。