在自動駕駛汽車技術中,卷積神經網路(CNN)已經證明是一種非常強大的道路特征辨識工具。經過工程師團隊的訓練,卷積神經網路可以偵測道路類型和路側特征。在用于這種訓練的各種資料集協助下,這種模型會以類似幼兒學步的方式教汽車學習駕駛技巧。
現有的駕駛評估系統如何訓練和整合CNN模型,同時介紹了這種模型及其改進版本VGGNet的本質,以期更能理解這一相對未知的課題。 VGGNet的使用可以大幅提升預測的精準度,特別是考慮到車內駕駛人面前的攝影機時。
作為嵌入式系統,駕駛評估系統的運算能力是非常有限的。工程師團隊受命在該模型和現有駕駛評估系統的基礎上使用現實世界資料開發CNN,結果將涵蓋在文末的總結部份。本文還討論了CNN的模型整合和訓練處理最佳化,同時強調了神經網路的再使用性。
駕駛評估系統
定期的駕駛人評估是車隊管理和服務產業的一個重要步驟。具有正確回饋措施的定期評估可以提升駕駛人的表現。藉由近來機器學習領域的進步以及儀器使用的價值,我們可以輕松地將機密和精確的資料連接到登錄的中央運算系統。這樣的電腦和其它模組可以用于作為一套組合工具,以評估駕駛人的表現。
在傳統的環境下,視訊提供的資料以及來自感測器的資料必須進行人為管理。但眾所周知,人為管理很容易出錯。
有鑒于此,能夠智慧地摘要、分類并擷取資訊的機制特別管用,尤其是加上來自OBD-II的幫助。以下我們將討論如何融合/結合這兩組資訊,從而為駕駛人和管理者產生合理的結果。
這里的區別是什么?
伺服器端如果只有感測器資料,并不足以完成駕駛人的評估。例如,讓我們看看一個即時的場景:在下坡時,一般意味著連續的加速,比方說8到10秒,遠遠超出發布的極限。這肯定會影響駕駛人在駕駛汽車時的表現資料。事實上,這是一種真陰性(TN;假陽性)的情形。
本文提出的系統有助于判斷上坡和下坡,而檢測到真陰性后可以改善駕駛人的評估。
實作細節
NeuralTalk2可用于分類影像。它使用卷積神經網路機制分類影像。針對每一種偵測到的特征,它都提供了置信值。
Convolution: f(x)=fD(…f2(f1(x;w1);w2)…),wD)
這里的fd作用是輸入一個值xd和一個參數值wd,產生輸出結果xd+1。雖然函數的類型和結果是人工的,但參數w=(w1,…,wD)是從訓練中學到的。
非線性啟動ReLU(調整過的線性單元):
f(x)=max(0, x)
空間池化(spatial pooling):
f(x) = max(Stride)
步驟3:計算總誤差
總誤差 = Σ1/2(目標誤差–輸出誤差)2
步驟4:使用后向傳播最大限度地減小誤差。為此,先獲得相對權重的梯度誤差,然后使用梯度下降更新濾波器的值和參數,以盡量減小輸出誤差。這里發生改變的是濾波器值,連接權重也得到了更新。這是在完全連接層完成的。
w = wi – ? * dL/dw
w = Weight
wi = Initial Weight
? = Learning Rate
由于這個應用與駕駛評估有關,因此他/她在駕駛時所處的場景是最重要的,而不是只是儀器讀數。為了理解這種場景(讓我們想像一條路),我們需要一個非常好的分類器。為了克服這個問題,可以選擇內部使用VGGNet的NeuralTalk2。 VGGNet是一種卷積網路,最擅于辨識物體的位置。它還擅長于分類物體本身。輸入是一個影像,而輸出則是概率。
VGGNet具有這種能力主要取決于一種因素。它相信為了辨識/分類影像,理解影像的深度是很有用的。進行越多的深度分析,影像的分類就越精確。換句話說,卷積的越多,物體分類的越好。 VGGNet共有16個卷積層,用于提升預測的精度。 CONV層執行3×3卷積,步幅為1,填充為1。 POOL層執行2×2最大共用,步幅為2,填充為0。
在訓練階段會為NeuralTalk2提供一套訓練用的輸入集。我們將訓練集限制為直路、上坡、下坡、彎路、左轉和右轉。這在以更有效方式訓練模型時特別有用,因為輸入數量是有限的。這樣做的目的是想在進行評估時取得更高的精確度。
所產生經訓練的網路/模型可專門關注訓練集提到的特征,如上坡、左轉和右轉。這個模型可以被移植到大多數X86 Linux電腦。
輸入感測器:OBD-II是汽車內的標準介面。該硬體用于從終端感測器收集OBD-II的引擎轉速、散熱、速度資料,并將這些資料提供給運算模組作為輸入。
評估儀表板:儀表板將為這些資料進行第一層分析,顯示理想的和原始的資料圖。當點選原始資料圖上的任何點時,將會在該點顯示資料集中可用的完整細節。
操作
前置攝影機記錄汽車前方的視訊。當駕駛人駕車行經上坡時,很明顯地會重踩油門以維持汽車前進的推動力。隨后這些資料連同前置攝影機的視訊一并被記錄到與硬體相連的儲存裝置中。
當駕駛人的旅程結束并將車子停在停車場后,這些記錄的資料將會被分析。視訊和影像將會透過已內建訓練分類模型的電腦進行分析。除了視訊外,還包括轉速、速度、散熱等其它汽車參數也會被分析。由于電腦已經學會了偵測上坡,因此會自動排除不斷增加的汽車轉速資料,這在傳統裝置中是不可能的。這種機制在避免錯誤地駕駛評估中是很有用的。
卷積神經網路模型和其它軟體整合,將可提供更大的靈活性。未來的工作可以透過最佳化模型的整體訓練過程加以實現。最佳化底層資料庫函數和頻繁使用的函數,可以大幅地改善整體訓練過程。
文章來源:EET 電子工程專輯
關注行業動態,了解產業信息,以實現與時俱進,開拓創新,穩步發展。
標簽:   CNN 自動駕駛 OBD-II