本文為馬薩諸塞大學(xué)阿默斯特分校實(shí)驗(yàn)室研究助理Neil Nie的自動(dòng)駕駛高爾夫球車(chē)項(xiàng)目,兩個(gè)人花了一年半的時(shí)間,實(shí)現(xiàn)了自動(dòng)巡航、避障等功能,盡管目前的方案還不夠成熟,但他們一路鉆研自動(dòng)駕駛的熱情值得學(xué)習(xí)。
Neil Nie 是馬薩諸塞大學(xué)阿默斯特分校Joshua J. Yang實(shí)驗(yàn)室的研究助理,在電子工程和微控制器方面有豐富的經(jīng)驗(yàn)。他在App Store上發(fā)布了數(shù)十款應(yīng)用,曾在一次TEDx講座中,向大眾科普過(guò)機(jī)器學(xué)習(xí)算法。
從2017年9月開(kāi)始,他和他的朋友邁克爾一直在開(kāi)發(fā)一款自動(dòng)駕駛高爾夫球車(chē)。現(xiàn)在,車(chē)輛可以在某些道路上完成自動(dòng)跟隨,同時(shí)避開(kāi)障礙物,物體檢測(cè)、交通燈檢測(cè)、車(chē)道檢測(cè)、路徑規(guī)劃以及本地化和地圖等內(nèi)容也在逐步實(shí)現(xiàn)。在Neil 的博客上,他們公布了開(kāi)發(fā)的過(guò)程以及處理的模塊/組件列表。智車(chē)科技整理了其博客的主要內(nèi)容,以供研究者參考。
一、線(xiàn)控驅(qū)動(dòng)系統(tǒng)
線(xiàn)控驅(qū)動(dòng)系統(tǒng)(DBW)是自動(dòng)駕駛汽車(chē)最基礎(chǔ)的部分之一,Neil也碰了很多次壁。擅長(zhǎng)硬件的他,首選了通過(guò)硬件去控制車(chē)輛轉(zhuǎn)向。在方向盤(pán)的底部安裝了 TETRIX齒輪,并制作了一個(gè)電機(jī)支架,將電機(jī)安裝在轉(zhuǎn)向柱上,使用高扭矩直流電機(jī)來(lái)控制車(chē)輛,然而硬件控制并不可靠。
歷時(shí)三個(gè)月的探索,Neil決定換一種思路,他拆開(kāi)了原來(lái)的轉(zhuǎn)向系統(tǒng),用買(mǎi)來(lái)的ServoCity執(zhí)行器換掉了原有的線(xiàn)性執(zhí)行器,然后將其連接到 Arduino(黑客加速器),來(lái)控制車(chē)輛。
二、具有深度學(xué)習(xí)的自主轉(zhuǎn)向系統(tǒng)
完成了線(xiàn)控改裝后,Neil 將整個(gè)系統(tǒng)整合在高爾夫球車(chē)上。改裝組件主要包括:NVIDIA Jetson(車(chē)輛的主控制器)、車(chē)輛前部的網(wǎng)絡(luò)攝像頭、電腦顯示器、鼠標(biāo)鍵盤(pán)、用于轉(zhuǎn)向的直流電機(jī)、帶有電機(jī)控制器模塊的Arduino、用于為轉(zhuǎn)向電機(jī)供電的NiMH電池、外部電源等,不同布線(xiàn)將各個(gè)元件安裝在車(chē)上。
車(chē)輛改裝完畢后,自然要讓無(wú)人車(chē)動(dòng)起來(lái)。Neil選擇了有名的NVIDIA 端到端控制,使用深度學(xué)習(xí)預(yù)測(cè)轉(zhuǎn)向角度,將單個(gè)前置攝像頭的原始像素直接映射到轉(zhuǎn)向命令。在自主轉(zhuǎn)向系統(tǒng)神經(jīng)網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)中,分別參考了Comma.AI、NVIDIA、小型VGG網(wǎng)絡(luò)、以及訓(xùn)練的 ConvNet 網(wǎng)絡(luò)。
三、使用分割和檢測(cè)的基本避障系統(tǒng)
自動(dòng)駕駛汽車(chē)最重要的一個(gè)方面是了解周?chē)氖澜纭eil深信使用相機(jī)和計(jì)算機(jī)視覺(jué)技術(shù)就可以實(shí)現(xiàn)這一目標(biāo),而不是使用傳統(tǒng)的雷達(dá)或激光雷達(dá)。
多年來(lái),在FCN(完全卷積網(wǎng)絡(luò))的初始提議之后,存在許多用于圖像分割的不同網(wǎng)絡(luò)架構(gòu),如SegNet和DeepLab。盡管它們具有出色的性能,但這些網(wǎng)絡(luò)并不適合所有情況,處理能力非常有限。Neil最終選擇了使用由普渡大學(xué)和波蘭華沙大學(xué)的研究人員提出的實(shí)時(shí)圖像分割網(wǎng)絡(luò)ENet。
ENet的好處是它可以在Jetson上以~10fps的速度運(yùn)行。這是一個(gè)巨大的好處,特別是在自動(dòng)駕駛車(chē)等應(yīng)用中。使用CityScapes數(shù)據(jù)集進(jìn)行培訓(xùn),拿到在模擬軟件中訓(xùn)練好的模型,邁克爾和Neil 開(kāi)始測(cè)試車(chē)輛的自動(dòng)轉(zhuǎn)向和巡航控制系統(tǒng)。不幸的是,測(cè)試基本上沒(méi)有成功。在系統(tǒng)和測(cè)試條件方面遇到很多問(wèn)題。這促使他們開(kāi)始思考系統(tǒng)的魯棒性,特別是語(yǔ)義分割系統(tǒng)。
首先是陰影,卷積神經(jīng)網(wǎng)絡(luò)在處理陰影方面非常糟糕。他們的訓(xùn)練數(shù)據(jù)集沒(méi)有很多陰影圖像訓(xùn)練模型,導(dǎo)致圖像分割網(wǎng)絡(luò)感覺(jué)是根據(jù)顏色和形狀來(lái)執(zhí)行像素分類(lèi)。
右邊是原始圖像,部分區(qū)域有陰影。左邊是分割結(jié)果。帶圓圈的區(qū)域表明網(wǎng)絡(luò)將陰影既視為道路,也認(rèn)為是障礙。
再一個(gè)是路面積水,在測(cè)試期間遇到潮濕路面時(shí),網(wǎng)絡(luò)表現(xiàn)極差。可能是太陽(yáng)的反射和道路的奇怪色彩。
還有太陽(yáng)眩光,神經(jīng)網(wǎng)絡(luò)可以通過(guò)眩光正確地分割道路。然而,空中的部分往往會(huì)被略過(guò),車(chē)輛在這條路上行駛時(shí),誤分類(lèi)不會(huì)影響性能。
陰影的問(wèn)題是困擾大多數(shù)ConvNets的問(wèn)題。最直接的解決方案是使數(shù)據(jù)集多樣化,并包含更多帶陰影和反射的圖像。但是,創(chuàng)建該數(shù)據(jù)集非常困難。第二種解決方案是使用更好的網(wǎng)絡(luò)進(jìn)行分段,例如RCNN。更準(zhǔn)確的權(quán)衡是速度和記憶。使用更好的網(wǎng)絡(luò)將意味著需要升級(jí)當(dāng)前的車(chē)輛計(jì)算機(jī)。
有了語(yǔ)義分割圖像,Jetson簡(jiǎn)單地處理來(lái)自攝像機(jī)的視覺(jué)輸入,并運(yùn)行分段分析,然后利用串行通信從Jetson發(fā)送到Arduino,根據(jù)圖像輸入逐步控制車(chē)輛的不同狀態(tài),實(shí)現(xiàn)自動(dòng)巡航。
目前,Neil 已完成了第一階段的開(kāi)發(fā),第二階段將更專(zhuān)注于使系統(tǒng)更安全,更可靠。逐步實(shí)施本地化系統(tǒng),寫(xiě)一個(gè)路徑規(guī)劃器,在地理圍欄環(huán)境中收集更多數(shù)據(jù),改善計(jì)算機(jī)硬件并改進(jìn)傳感器系統(tǒng)。定位模塊使用GPS(全球定位系統(tǒng))來(lái)找到車(chē)輛的精確位置遠(yuǎn)遠(yuǎn)不夠。需要開(kāi)發(fā)使用激光雷達(dá)和雷達(dá)(傳感器融合和粒子濾波器)的定位。
盡管Neil的方案還比較粗糙,但是他們對(duì)無(wú)人駕駛的熱情值得肯定,期待他們逐步完善系統(tǒng),打造更可靠的無(wú)人駕駛高爾夫球車(chē)。
-
電機(jī)
+關(guān)注
關(guān)注
142文章
9057瀏覽量
145949 -
驅(qū)動(dòng)系統(tǒng)
+關(guān)注
關(guān)注
3文章
375瀏覽量
26980 -
自動(dòng)駕駛
+關(guān)注
關(guān)注
784文章
13904瀏覽量
166729
原文標(biāo)題:自動(dòng)駕駛高爾夫球車(chē)項(xiàng)目
文章出處:【微信號(hào):IV_Technology,微信公眾號(hào):智車(chē)科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論