【導讀】自動(dòng)駕駛技術(shù)涉及的環(huán)境感知傳感器主要包括視覺(jué)類(lèi)攝像機(包括單目、雙目立體視覺(jué)、全景視覺(jué)及紅外相機)和雷達類(lèi)測距傳感器(激光雷達、毫米波雷達、超聲波雷達等),如圖1所示。這些傳感器目前都可以找到開(kāi)源的SDK快速開(kāi)發(fā)。小可根據這幾年的開(kāi)發(fā)經(jīng)驗,特此整理了目前常用傳感器的一些API,方便初學(xué)者節省開(kāi)發(fā)時(shí)間。
當然,對于可以根據需求自主定制傳感器的土豪公司而言,本篇顯得多余,請繞行。本篇主要適用于自動(dòng)駕駛初級開(kāi)發(fā)者,主要面向高校和科研院所的研究人員,以性能為主,較少考慮成本問(wèn)題。筆者主要基于Linux系統進(jìn)行開(kāi)發(fā),所介紹的API均以Ubuntu14.04及以上版本為準(4月份出Ubuntu18.04了,2年一個(gè)穩定版本,值得期待)。

圖1 自動(dòng)駕駛主流傳感器
單目攝像機
首推AVT工業(yè)相機,國內代理商較多。包含的相機種類(lèi)較為齊全,接口包括1394火線(xiàn)接口、網(wǎng)口接口等,價(jià)格從幾千元到幾萬(wàn)元不等。
應用:?jiǎn)文肯鄼C的應用開(kāi)發(fā)主要包括特征類(lèi)符號的檢測與識別,如車(chē)道線(xiàn)檢測、交通標志識別、交通燈識別、行人和車(chē)輛檢測等,基于機器學(xué)習的視覺(jué)計算在自動(dòng)駕駛普及之日一定會(huì )是必不可少的部分,盡管目前來(lái)說(shuō)視覺(jué)檢測可靠性并不是很高,在以激光雷達為主要感知手段的自動(dòng)駕駛車(chē)輛中應用并未達到預期。

圖2 路面及車(chē)輛識別
雙目攝像機
應用于室外場(chǎng)景的雙目視覺(jué)確實(shí)不多見(jiàn),筆者之前用過(guò)的bumblebee雙目也是應用于室內場(chǎng)景,之后接觸了ZED相機也是室內比較好用(畢竟基線(xiàn)長(cháng)度固定了,就那么短?。?。建議用于室外做視覺(jué)里程計或者識別類(lèi)算法的,自行搭建雙目傳感器,在保證同步觸發(fā)的情況下,根據具體需求確定基線(xiàn)長(cháng)度。雙目視覺(jué)繞不開(kāi)視差圖和雙目標定,目前比較通用的雙目標定做法是采用張正友法,利用Camera Calibration Toolbox進(jìn)行標定,當然,openCV中也集成了該方法,習慣C編程的可以看下,OpenCV經(jīng)典教材《學(xué)習OpenCV》中文版464頁(yè)至492頁(yè)有詳細內容,更有代碼,不多說(shuō)。

圖3 雙目立體視覺(jué)標定
應用:障礙物檢測可以,限于室內,結構光,近距離;視覺(jué)里程計確實(shí)是目前比較好的應用領(lǐng)域,用于路口定位等,各種開(kāi)源SLAM技術(shù)中也都有應用,如ORB SLAM2,《視覺(jué)SLAM十四講》有詳細介紹和應用,好書(shū),推薦一下。
全景相機
分為單鏡頭全景相機和多鏡頭拼接全景相機。筆者基于全景視覺(jué)的開(kāi)發(fā)應用不多(當多目鏡頭使用,未完全發(fā)揮其全景優(yōu)勢),2015年騰訊做街景地圖的時(shí)候貌似見(jiàn)過(guò)他們車(chē)上裝著(zhù)一個(gè)。
應用:比較推薦用全景相機做視覺(jué)里程計,視野范圍大,特征點(diǎn)關(guān)聯(lián)度高,個(gè)人始終覺(jué)得用全景視覺(jué)配合組合導航做高精度地圖重建是個(gè)不錯的選擇,實(shí)現自動(dòng)駕駛汽車(chē)車(chē)道級別定位,其他的沒(méi)有深入研究。
紅外相機
紅外相機應該屬于視覺(jué)的另外一個(gè)門(mén)類(lèi),夜視效果比白晝效果好,可應用于行人、車(chē)輛檢測等。以前覺(jué)得在激光雷達出現以后,紅外相機在自動(dòng)駕駛應用中處于一個(gè)比較尷尬的地位,價(jià)格不菲且沒(méi)有激光雷達結果來(lái)的直接,使用之后發(fā)現,在障礙物(如人)識別上,激光離散點(diǎn)云還是比不上空間上連續的圖像。另外,測試中驚奇的發(fā)現,紅外相機具體可以捕捉玻璃上的人影!細思極恐!紅外相機在一定程度上可以對發(fā)熱體進(jìn)行區分,如路面、行人等,但畢竟需要后處理,沒(méi)有激光雷達利用絕對高度或者梯度進(jìn)行障礙物檢測來(lái)的直接。夜晚條件下可以替代彩色相機,進(jìn)行前視障礙物檢測與監控。

圖4 紅外視覺(jué)成像
毫米波雷達
適用于高速環(huán)境和編隊行駛,其他場(chǎng)景貌似沒(méi)有必要安裝。單買(mǎi)貴,批發(fā)便宜。使用過(guò)delphi的一款,應該也是國內應用的比較多的,距離上最遠到150米,分為單點(diǎn)跟蹤和多目標檢測兩種工作模式,前者適用于編隊行駛過(guò)程中前車(chē)檢測,后者適用于高速環(huán)境下的遠距離目標檢測。由于毫米波雷達的成像原理為錐面成像(相當于從一點(diǎn)往外發(fā)散成一個(gè)錐面),依據錐面中障礙物的面積來(lái)推算障礙物,因而對于復雜場(chǎng)景,障礙物較為雜亂。而高速公路場(chǎng)景較為理想,道路環(huán)境好,車(chē)輛相對較少,適用于前方車(chē)輛的提前預警。(Tesla認為視覺(jué)+毫米足夠支撐自動(dòng)駕駛系統,個(gè)人相當認同,但是貌似算法上還需要推進(jìn)一步)
開(kāi)發(fā):通過(guò)can收發(fā)數據,數據格式較為簡(jiǎn)單,一般協(xié)議文件中都有定義,對can口開(kāi)發(fā)沒(méi)有基礎也不要恐慌,相當簡(jiǎn)單,買(mǎi)一個(gè)USBCAN轉換器,有Ubuntu系統下can接收數據的依賴(lài)庫,之后的數據解析按照協(xié)議來(lái)即可。 激光雷達。
應用:障礙物檢測主流,waymo、百度、各大傳統汽車(chē)廠(chǎng)商、各大創(chuàng )業(yè)公司、各大高校、研究院所……那么多自動(dòng)駕駛汽車(chē)頂上裝著(zhù)的幾乎都是激光雷達(Tesla除外);高精度地圖重建與環(huán)境建模;SLAM等。

圖 多雷達融合
目前實(shí)際開(kāi)發(fā)中筆者用到的傳感器就這么多,希望對于初學(xué)者有所幫助吧。對于設備選型有選擇困難癥的也可以私信我,多多交流。
推薦閱讀: