張俊元
南寧三中 廣西南寧市 530021
無人駕駛系統(tǒng)最底層的就是由大量傳感器構(gòu)成的感知層,通過對各種復雜路況的環(huán)境感知轉(zhuǎn)化為數(shù)據(jù)并進行處理再傳入到?jīng)Q策層,再進行安全合理應(yīng)對措施。這里的環(huán)境感知主要是包括對交通標識、路況、車道線標識以及車流的感知(高速公路上,城市交通更為復雜),最常見的是對獲取到周圍環(huán)境的圖片信息,進行簡單的去噪和二值化操作后,通過對比數(shù)據(jù)庫得到交通標識等信息,再傳入到?jīng)Q策層。
無人駕駛系統(tǒng)的規(guī)劃主要是對路徑的規(guī)劃,通過感知層得到的路況和路標信息,生成一條安全且可行的路徑。首先是全局路徑規(guī)劃,通過設(shè)定起始點,確定一條最優(yōu)的路徑,再是局部路徑規(guī)劃,比如說遇到前方車輛需要超車時的行駛路徑、前方擁堵需要換道時的換道路徑等,目前最常用的局部路徑規(guī)劃算法主要是隨機采樣算法,在某時刻初始位置通過隨機采樣尋找到周圍無障礙的點,在這些點中尋找一條最短路徑,但是在某些時刻運算量較大,可能達不到實時性。
整個執(zhí)行層主要包括對油門、剎車、方向盤等汽車部件的自動控制,在決策層規(guī)劃處路徑后發(fā)送指令到執(zhí)行層來控制這些部件的統(tǒng)一運行來實現(xiàn)車輛的安全行駛。
一輛車在駕駛的過程中,最重要的是通過駕駛員的人眼感知外部環(huán)境傳送到大腦,大腦做出相應(yīng)的反應(yīng)通過身體控制汽車來保證安全的行駛,但是無人駕駛系統(tǒng)中由于沒有駕駛員的存在,那么感知外部環(huán)境并做出相應(yīng)的反應(yīng)這一過程就交由系統(tǒng)自動的完成,在高速公路上行駛時,由于交通狀況較為簡單,只需要感知到明顯的交通指示牌即可,但是在城市道路上,交通狀況極為復雜,不僅需要注意紅綠燈,還有人行道上的行人以及別的車的變道指示,那么就需要復雜的判斷。
一般來說的環(huán)境感知是指對車身上的傳感器所識別的外部環(huán)境的圖像進行識別和處理,一般來說,是對圖像的像素點的分類,在上個世紀,圖像識別主要使用的是一個隨機場算法,但是在近年來卷積神經(jīng)網(wǎng)絡(luò)理論的發(fā)展和GPU的普及,可以很大程度上提高圖像的識別效率,來保證無人駕駛系統(tǒng)反饋的實時性。
2.1.1 神經(jīng)元模型
神經(jīng)網(wǎng)絡(luò)組成的最基本單元是神經(jīng)元,也稱為感知器,其簡化模型如圖1:
圖中x1、x2、x3為輸入信號,w1、w2、w3為輸入信號各自對應(yīng)的權(quán)值,b值是一個偏置項,對輸入加權(quán)求和后得到z,g泛指為激活函數(shù),y為輸出[3]??梢钥吹揭粋€感知器有如下3個部分:
(1)輸入信號:可以接收多個輸入,每個輸入上有一個權(quán)值;
(2)激活函數(shù):感知器的激活函數(shù)可以有很多選擇,常見的激活函數(shù)有Sigmoid、tanh、ReLU等;
(3)輸出:獲取神經(jīng)網(wǎng)絡(luò)輸出數(shù)據(jù)。
感知器的作用主要是用來提取圖像的每一個像素值并將其作為一個權(quán)值輸入到卷積神經(jīng)網(wǎng)絡(luò)中進行下一步處理。
2.1.2 卷積層
二維圖像的卷積操作較一維信號的卷積操作而言較為復雜,首先我們將一張二維圖像類比于圖2-2的網(wǎng)格圖,其中,每一個網(wǎng)格代表一個像素,圖中藍顏色的網(wǎng)格表示卷積層中的一個卷積核,可看出卷積核的大小為3*3。卷積操作如下:每一次卷積核延X軸方向行進一個步長,直至行進到圖像邊緣后卷積核又返回至最左端并向下移動一個步長繼續(xù)如上操作直至遍歷整個網(wǎng)格。卷積核中每一個單元均代表一個權(quán)重,在卷積核遍歷整個網(wǎng)格過程中,卷積核中的權(quán)重將會與對應(yīng)網(wǎng)格中的權(quán)重相乘相加,如果假設(shè)步長為1,那么圖1-2經(jīng)過卷積操作后將會成為一個6*4的圖。
圖2 卷積操作
讀取大小為6*4的生成圖中每一個元素的值,對每一個值通過激勵函數(shù)進行非線性化處理,處理方法有許多種,本文使用ReLU函數(shù)作為激活函數(shù)。ReLU函數(shù)具有許多獨特的特性,該函數(shù)是扭曲線性函數(shù)且是一種非線性的非飽和函數(shù)。相對于飽和函數(shù)來說,ReLU函數(shù)的訓練時間更快且更具效率,而相對于線性函數(shù)來說,ReLU有更強的表達能力,且它的扭曲線性的性質(zhì)不但保留了非線性的表達能力,而且在正值部分具有很好的線性性質(zhì)。除此之外,由于ReLU函數(shù)的非負區(qū)間的梯度為常數(shù),這就是得它較tanh和sigmoid函數(shù)而言的優(yōu)異性在于不存在梯度的消失問題。
2.1.3 池化層
池化層進行下采樣操作,目的是減小特征圖、減少特征值、降低運算量和降低數(shù)據(jù)維度。常用的方法有三種:最大池化(Max Pooling)、最小池化(Minimal Pooling)和平均池化(Average Pooling),池化規(guī)模一般為2×2。最大池化(Max Pooling)是目前關(guān)于卷積神經(jīng)網(wǎng)絡(luò)處理常用的池化方法,它取四個點中的最大值。
對于從傳感器接收到的圖片,我們遇到的最大問題是對單一像素點的分類問題。對于一個單獨的像素點,比如說車身的白色像素點和一個高光區(qū)域的白色像素點,我們是很難具體的判斷出這個像素點代表的是車身還是高光區(qū)域,那么我們就需要結(jié)合這個像素點周圍的像素進行判斷,尤其是邊緣區(qū)域的判斷,那么我們就可以使用卷積神經(jīng)網(wǎng)絡(luò),使用不同的卷積核得到不同的特征圖類型經(jīng)過與訓練的數(shù)據(jù)集對比從而進行圖像識別[3]。
實際上,障礙物檢測也可以屬于環(huán)境感知的內(nèi)容,但是比較特殊,可以歸為一個單獨的整體,因為對于汽車的檢障和避障是保證汽車安全行駛的前提。
一般來說,檢測障礙物分為靜止的障礙物和動態(tài)的障礙物,靜止的障礙物的檢測較為簡單,運動的障礙物檢測較為復雜,一般是使用激光雷達作為傳感器,主要有地圖差分法,將運動的障礙物看成質(zhì)點,通過對比不同時刻的地圖信息,所不同的區(qū)域即是障礙物的軌跡。
對于障礙物的軌跡預(yù)測是比較困難的,充滿了不確定性,目前的方法效果都不是特別顯著,主要的方法2004年提出來的假設(shè)原狀法和2007年的概率軌跡法[4]。假設(shè)原狀法主要是通過傳感器獲得某一時刻障礙物的運動狀態(tài)(距離、速度等),然后假設(shè)該障礙物會以此時的運動狀態(tài)保持下去,即以此時刻的速度為初速度做勻速直線運動,這種方法在高速公路等路況環(huán)境下是有一定效果的,但是對于城市交通這種復雜路況的效果是非常不顯著的,而概率軌跡法是在假設(shè)原狀法的基礎(chǔ)上引入了概率分布,對軌跡的可能性做出概率預(yù)測,再加上一些與路況有關(guān)的基本信息的先驗概率,可以較好的獲得更真實的預(yù)測結(jié)果,但仍然無法滿足復雜路況的障礙物判斷。
在通過檢測障礙物以及獲取了障礙物的軌跡預(yù)測后,決策層會發(fā)送指令來避開障礙物,常用的方法有勢場法和區(qū)域劃分法。勢場法是借鑒了物理中保守力場的形式,比如說重力場,以地面為0勢能面,距離地面越遠則重力勢能越大,這里是以障礙物為一個基準點,距離障礙物越遠,勢能越小,我們對這個勢能經(jīng)過實驗測定一定的閾值,如果小于這個值,那么就屬于安全行駛區(qū)域,從而構(gòu)建一條安全的行駛路徑。
本文主要介紹了無人駕駛系統(tǒng)的基本結(jié)構(gòu)和無人駕駛系統(tǒng)的關(guān)鍵技術(shù)。無人駕駛系統(tǒng)主要由感知層、決策層和執(zhí)行層構(gòu)成的,關(guān)鍵技術(shù)主要是環(huán)境感知技術(shù)和檢障避障技術(shù),環(huán)境感知系統(tǒng)現(xiàn)在主要使用卷積神經(jīng)網(wǎng)絡(luò)對感知到的圖片信息進行特征提取從而獲得信息,這兩種技術(shù)共同保證了無人駕駛的安全性。
目前的無人駕駛系統(tǒng)仍處于試驗階段,且只能應(yīng)對高速公路等簡單路況信息,尚無法處理城市交通的復雜情況,但是目前無人駕駛系統(tǒng)是當前世界研究的熱點和難點,相信在廣大科研工作者的努力下一定會變成現(xiàn)實,也希望自己以后可以為無人駕駛系統(tǒng)中的關(guān)鍵技術(shù)添磚加瓦。