劉慶
安徽汽車職業(yè)技術(shù)學院,安徽合肥 230601
隨著科學技術(shù)的發(fā)展與人民生活水平的提高,汽車成為人們的主要出行工具[1]。汽車使用量的增加,導致交通擁堵現(xiàn)象日益嚴重,交通事故頻發(fā),駕駛員的生命和財產(chǎn)安全受到威脅[2]。為此,智能化管理成為汽車行業(yè)的發(fā)展趨勢,一種充分利用電動、智能、網(wǎng)聯(lián)及共享優(yōu)勢的智能網(wǎng)聯(lián)技術(shù)逐漸應用到汽車上[3]。智能化是智能網(wǎng)聯(lián)汽車開發(fā)過程的關(guān)鍵,而環(huán)境自動感知與檢測技術(shù)是實現(xiàn)智能化的關(guān)鍵,在汽車智能化中發(fā)揮著重要作用[4]。
近年來,諸多學者對智能網(wǎng)聯(lián)汽車環(huán)境自動感知方法進行了大量研究。尹慧琳等[5]提出了基于層次因子圖的智能網(wǎng)聯(lián)汽車環(huán)境感知方法,隗寒冰等[6]提出了基于融合歷史軌跡的智能網(wǎng)聯(lián)汽車環(huán)境感知方法。這些方法能自動感知汽車環(huán)境,在一定程度上減少了交通事故的發(fā)生,增強了駕車體驗舒適感,但在進行汽車環(huán)境感知時,每執(zhí)行1個任務就需要執(zhí)行網(wǎng)絡更換操作,過程復雜、成本較高,獲取的環(huán)境信息有限,難以滿足深層次的汽車環(huán)境感知需求[7]。
多任務神經(jīng)網(wǎng)絡由編碼器和解碼器組成,可以在同1個網(wǎng)絡中完成不同的任務[8]。本文采用基于多任務神經(jīng)網(wǎng)絡的智能網(wǎng)聯(lián)汽車環(huán)境自動感知方法,在執(zhí)行環(huán)境感知任務時,無需更換網(wǎng)絡就可實現(xiàn)語義分割及對目標的跟蹤檢測,且網(wǎng)絡性能與目標檢測效果較好,更好地實現(xiàn)交通環(huán)境自動感知,降低交通事故發(fā)生的概率,滿足實際智能網(wǎng)聯(lián)汽車的環(huán)境自動感知需求。
卷積神經(jīng)網(wǎng)絡是1類包含卷積計算且具有深度結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡,是深度學習的代表算法之一,除了具有傳統(tǒng)神經(jīng)網(wǎng)絡的良好容錯性、自適應性和較強的自學習能力等特點,還具有自動提取特征、權(quán)值共享及輸入圖像與網(wǎng)絡結(jié)構(gòu)結(jié)合良好等優(yōu)點,包括卷積層、池化層、批量歸一化(batch normalization,BN)層及激活函數(shù)層[9]。
1.1.1 卷積層
卷積層主要負責提取采集的智能網(wǎng)聯(lián)汽車環(huán)境圖像特征信息,通過卷積核對特征圖像執(zhí)行滑動操作實現(xiàn)[10]。卷積計算過程為:
式中:ai,j為卷積計算結(jié)果;wm,n為第m行第n列卷積核的權(quán)重;xk+m,l+n為汽車環(huán)境圖像中第k行第l列的元素;wb為常數(shù)偏置項,一般狀況下滿足wb=0;f(·)為激活函數(shù)。
卷積運算過程可歸結(jié)為:1)對采集到的汽車環(huán)境圖像執(zhí)行圖像輸入操作,圖像的分辨率設(shè)置為5×5;2)將卷積核的大小、步長及wb分別設(shè)置為3×3、2與0,將激活函數(shù)設(shè)置為ReLU;3)在輸入的汽車環(huán)境圖像上通過卷積核執(zhí)行滑動操作,在汽車環(huán)境圖像對應位置的像素執(zhí)行乘法與加法操作;4)對經(jīng)過執(zhí)行步驟1)~3)操作的汽車環(huán)境圖像執(zhí)行輸出操作,將輸出圖像的分辨率設(shè)置為2×2。
1.1.2 池化層
池化層主要包括最大池化操作與平均池化操作2種,與卷積層相比,池化層在執(zhí)行池化操作時不需要學習參數(shù)[11-13]。池化操作過程如圖1所示。
圖1 池化操作過程
在池化層中,將輸入汽車環(huán)境圖像的分辨率、池化層及步長分別設(shè)置為4×4、2×2與2;在輸出汽車環(huán)境圖像的左上角放置輸入汽車環(huán)境圖像左上角的4個像素位置的最大像素;在輸出汽車環(huán)境圖像的右上角,通過執(zhí)行滑動操作,放置輸入汽車環(huán)境圖像右上角的4個像素位置的最大像素;重復執(zhí)行滑動操作,得到汽車環(huán)境感知結(jié)果圖像。
1.1.3 BN層與激活函數(shù)層
BN層主要負責執(zhí)行對卷積層的規(guī)范操作,提高網(wǎng)絡收斂速度,避免過度擬合現(xiàn)象發(fā)生[14-15]。激活函數(shù)層[16]的工作原理是對數(shù)據(jù)執(zhí)行非線性映射操作,達到提高網(wǎng)絡表達能力的目的。ReLU激活函數(shù)用公式表示為:
ReLU(x)=max(0,x),
式中x為激活函數(shù)的自變量。
1.2.1 多任務神經(jīng)網(wǎng)絡構(gòu)建
多任務神經(jīng)網(wǎng)絡包括編碼器與解碼器2部分[17-18]。編碼器執(zhí)行提取特征操作,是整個網(wǎng)絡構(gòu)建過程最重要的部分;解碼器包括語義分割解碼器與目標檢測解碼器,執(zhí)行處理特征操作[19]。
根據(jù)卷積神經(jīng)網(wǎng)絡的原理,將縮放因子為5的雙線性插值層增添到卷積神經(jīng)網(wǎng)絡的底層[20],對卷積神經(jīng)網(wǎng)絡的均值池化層執(zhí)行修改操作。H與W分別為均值池化層輸入的智能網(wǎng)聯(lián)汽車環(huán)境感知特征圖像的高與寬,kh與sh分別為均值池化層池化窗口的高與步長,kw與sw分別為池化窗口的寬與步長,得到的修改結(jié)果為:第1層滿足kh=H、kw=W、sh=H、sw=W;第2層滿足kh=H/2、kw=W/2、sh=H/2、sw=W/2;第3層滿足kh=H/3、kw=W/3、sh=H/3、sw=W/3;第4層滿足kh=H/6、kw=W/6、sh=H/6、sw=W/6。
將修改后的卷積神經(jīng)網(wǎng)絡用于智能網(wǎng)聯(lián)汽車環(huán)境感知多任務神經(jīng)網(wǎng)絡中,多任務卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)如圖2所示。
圖2 多任務卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)
在構(gòu)建的智能網(wǎng)聯(lián)汽車環(huán)境自動感知多任務卷積神經(jīng)網(wǎng)絡中,定義池化層為環(huán)境自動感知網(wǎng)絡的編碼器;在解碼器中輸入智能網(wǎng)聯(lián)汽車環(huán)境感知圖像特征,語義分割解碼器執(zhí)行語義分割操作,結(jié)合分割結(jié)果利用解碼器感知圖像特征,根據(jù)圖像特征感知結(jié)果得到智能網(wǎng)聯(lián)汽車環(huán)境感知結(jié)果。
1.2.2 多任務神經(jīng)網(wǎng)絡訓練
進行多任務網(wǎng)絡訓練時,為更好地執(zhí)行向前傳播操作,需要計算網(wǎng)絡的多任務損失,通過計算語義分割損失及目標檢測損失實現(xiàn)[21]。
語義分割損失計算以共享編碼器特征圖為媒介,通過求解交叉熵損失函數(shù)得到語義分割網(wǎng)絡損失
式中:N為各訓練批次樣本數(shù)量,bi為隸屬于類別i的數(shù)據(jù),I為類別數(shù)量,c為多任務網(wǎng)絡語義分割的類別數(shù)據(jù),C為最大類別數(shù)據(jù)。
目標檢測損失計算通過執(zhí)行對目標網(wǎng)絡的邊界坐標損失與求解置信度交叉熵損失函數(shù)實現(xiàn)[22-24],求解過程為:
Oobj=O1(p,q)+Oobj-con,
式中:O1(p,q)為目標檢測網(wǎng)絡邊界框坐標損失,其中p為預測值,q為標簽;δqi為邊界坐標損失;xpi、ypi分別為目標網(wǎng)絡節(jié)點pi的橫、縱坐標;xqi、yqi分別為目標網(wǎng)絡節(jié)點qi的橫、縱坐標;wpi、wqi分別為pi、qi的權(quán)重;hpi、hqi分別為pi、qi的深度;Oobj-con為多任務網(wǎng)絡的置信度;zi(c)、ki(c)分別為pi、qi的信息熵函數(shù);Oobj為多任務網(wǎng)絡的目標損失。
智能網(wǎng)聯(lián)汽車環(huán)境自動感知多任務神經(jīng)網(wǎng)絡的總損失
O=λ1Oobj+λ2Oseg,
式中λ1、λ2分別為Oobj、Oseg的損失權(quán)重。
在執(zhí)行智能網(wǎng)聯(lián)汽車環(huán)境自動感知多任務神經(jīng)網(wǎng)絡反向傳播操作時[25-26],通過Adam優(yōu)化函數(shù)執(zhí)行網(wǎng)絡權(quán)重參數(shù)更新操作,網(wǎng)絡權(quán)重參數(shù)更新過程用公式表示為:
mt=umt-1+(1-u)gt,
采用小批量訓練方法進行智能網(wǎng)聯(lián)汽車環(huán)境自動感知多任務神經(jīng)網(wǎng)絡訓練時,分別滿足η=0.000 1,ε=0.000 01,u=0.9,v=0.999,在此基礎(chǔ)上將網(wǎng)絡第二層正規(guī)化操作加入到智能網(wǎng)聯(lián)汽車環(huán)境自動感知多任務神經(jīng)網(wǎng)絡訓練過程中,避免過度擬合現(xiàn)象的發(fā)生,神經(jīng)網(wǎng)絡第二層正規(guī)化系數(shù)一般為0.000 5。
以A市4種不同環(huán)境的道路為試驗對象,借助Husky-200移動平臺搭建多任務神經(jīng)網(wǎng)絡,驗證本文方法在智能網(wǎng)聯(lián)汽車環(huán)境自動感知的性能。
采集到的4種道路圖像如圖3所示。圖3a)中道路1全長1200 m,路面平坦,車輛與行人較多;圖3b)中道路2全長860 m,路面陡峭、彎曲,道路兩旁為茂密的森林;圖3c)中道路3全長460 m,路面布滿石子;圖3d)中道路4全長560 m,路面為土路,不平坦,但路面質(zhì)量高于道路3。
a)道路1 b)道路2 c)道路3 d)道路4 圖3 智能網(wǎng)聯(lián)汽車道路環(huán)境圖像
應用本文方法的智能網(wǎng)聯(lián)汽車在4種不同道路的行駛狀態(tài)如表1所示。
表1 智能網(wǎng)聯(lián)汽車行駛狀態(tài)
由表1可知:智能網(wǎng)聯(lián)汽車在道路1和道路2行駛時,白天和夜間均能實現(xiàn)道路環(huán)境的自動感知,行駛過程中可自行避障,人工干預的次數(shù)為0,夜間的平均行駛速度與圖像處理速度稍有下降;智能網(wǎng)聯(lián)汽車在道路3和道路4行駛時,白天和夜間的平均行駛速度與圖像處理速度有所下降,行駛過程中出現(xiàn)少數(shù)人工干預狀況。說明本文方法可有效感知不同道路環(huán)境:路況較好時,可實現(xiàn)自動避障;路況較差時,可通過人工與自動相結(jié)合的方式實現(xiàn)避障。
應用本文方法的智能網(wǎng)聯(lián)汽車在不同光照強度下的目標檢測效果如圖4所示。
a)光線較強 b)光線較暗 圖4 智能網(wǎng)聯(lián)汽車在不同光照強度時的目標檢測效果
由圖4可知:智能網(wǎng)聯(lián)汽車在光線較強和光線較暗時均能實現(xiàn)對前方行駛車輛的目標檢測,能有效降低交通事故的發(fā)生概率,滿足智能網(wǎng)聯(lián)汽車環(huán)境自動感知需要。
在實際的智能網(wǎng)聯(lián)汽車環(huán)境自動感知過程中,網(wǎng)絡性能直接影響環(huán)境感知效果。實時性與網(wǎng)絡語義分割精度是衡量智能網(wǎng)聯(lián)汽車環(huán)境自動感知網(wǎng)絡性能的重要指標,實時性指每秒處理的汽車環(huán)境感知圖像幀數(shù),網(wǎng)絡語義分割精度指通過真實值與預測值交集與并集比值的平均值,不同噪聲下的網(wǎng)絡性能如圖5所示。
圖5 不同噪聲下的網(wǎng)絡性能
由圖5可知:隨著噪聲干擾增強,智能網(wǎng)聯(lián)汽車環(huán)境感知網(wǎng)絡實時性與網(wǎng)絡語義分割精度逐漸降低,但曲線下降趨勢緩慢,說明采用本文方法的智能網(wǎng)聯(lián)汽車即使環(huán)境自動感知網(wǎng)絡中噪聲干擾較強,仍具有良好的環(huán)境自動感知網(wǎng)絡性能,且自動感知精度較高。
為提升智能網(wǎng)聯(lián)汽車的駕駛體驗感,設(shè)計了基于多任務神經(jīng)網(wǎng)絡的智能網(wǎng)聯(lián)汽車環(huán)境自動感知方法,在不同道路環(huán)境、不同光線強度和不同噪聲水平下可實現(xiàn)環(huán)境自動感知與目標檢測,滿足實際智能網(wǎng)聯(lián)汽車環(huán)境自動感知需求。應用多任務網(wǎng)絡使環(huán)境感知效率提高、成本降低,但環(huán)境感知的實時性還有待進一步提高。