車道檢測旨在識別道路上可見車道邊界線的位置和曲度。這一功能可以幫助車輛行駛于車道中間,并在車道改變時進行安全導航。
上一篇文章提到,必須用算法預測車輛的類別(分類)和位置(邊界框)。本例則有所不同,我需要算出一組數(shù)字,用來表示左右車道邊界線的拋物線系數(shù)。
為解決這一問題,我將構(gòu)建一個執(zhí)行回歸的 CNN 輸出系數(shù)。
與上一篇博文中提到的步驟類似,第一步是通過表示出左右車道邊界線的真值標注一組訓練數(shù)據(jù)。和之前一樣,我建議使用MATLAB Automated Driving System Toolbox中的 Ground Truth Labeler app。除了使用矩形邊界框標注其他目標外,請注意觀察我如何在下圖中用多條線標注車道邊界線。
標注的目標和車道邊界線
為便于了解車道邊界線的真值,下表顯示了用于存儲系數(shù)的表。注意:每一欄代表其中一個拋物線系數(shù)。
表示車道邊界線的拋物線系數(shù)
您會發(fā)現(xiàn),本次任務只有 1225 個訓練樣本,而這通常不足以訓練一個深度網(wǎng)絡。實際原因是我使用了遷移學習,也就是利用一個已經(jīng)存在且經(jīng)過大量圖像訓練的網(wǎng)絡進行尋找車道邊界線的特定任務。
我將以 AlexNet 為起點,訓練它識別 1000 種不同類別的圖像。您可以使用一行代碼,將預先訓練好的 AlexNet 模型加載到 MATLAB 中。當然,MATLAB 允許您加載其他模型,比如 GoogLeNet、VGG-16 和 VGG-19,或者從 Caffe ModelZoo導入模型。
當網(wǎng)絡加載到 MATLAB 中之后,我需要稍微修改一下它的結(jié)構(gòu),把它從一個分類網(wǎng)絡變成一個回歸網(wǎng)絡。注意:在下面的代碼中,我有 6 個輸出結(jié)果,對應每個車道邊界線(左和右)的三個拋物線系數(shù)。
訓練該網(wǎng)絡時,我使用了一個 NVIDIA Titan X (Pascal) GPU。如下圖中所示,訓練該網(wǎng)絡耗時 245 秒。
這次花費的時間比我預期的要少,主要原因是由于只需訓練得到新層有限數(shù)量的權(quán)值。另一個原因是,當有 GPU 可用時,MATLAB 會自動使用 CUDA 和 cuDNN 加速訓練過程。
在 NVIDIA Titan X GPU 上訓練車道邊界線檢測回歸網(wǎng)絡的訓練進度
盡管訓練樣本數(shù)量有限,但網(wǎng)絡表現(xiàn)非常出色,準確地檢測出了車道邊界線,如下圖所示。
車道邊界線檢測網(wǎng)絡的輸出
在本系列博文中,我介紹了如何使用深度學習和 MATLAB 完成一些常見的自動駕駛感知任務。我希望這些文章能幫助您了解真值標注將如何影響解決這些問題所需的時間,以及在MATLAB 中使用 GPU 加速定義和訓練神經(jīng)網(wǎng)絡的易用性和性能。
-
神經(jīng)網(wǎng)絡
+關注
關注
42文章
4814瀏覽量
103478 -
自動駕駛
+關注
關注
788文章
14305瀏覽量
170503 -
深度學習
+關注
關注
73文章
5560瀏覽量
122758
發(fā)布評論請先 登錄
新能源車軟件單元測試深度解析:自動駕駛系統(tǒng)視角
AI將如何改變自動駕駛?
自動駕駛大模型中常提的Token是個啥?對自動駕駛有何影響?
端到端自動駕駛技術(shù)研究與分析
【實戰(zhàn)】Python+OpenCV車道線檢測識別項目:實現(xiàn)L2級別自動駕駛必備(配套課程+平臺實踐)

自動駕駛汽車安全嗎?

智能駕駛與自動駕駛的關系
人工智能的應用領域有自動駕駛嗎

自動駕駛HiL測試方案案例分析--ADS HiL測試系統(tǒng)#ADAS #自動駕駛 #VTHiL
自動駕駛技術(shù)的典型應用 自動駕駛技術(shù)涉及到哪些技術(shù)

Mobileye端到端自動駕駛解決方案的深度解析

評論