特斯拉中國(guó)T-talk:淺析純視覺(jué)自動(dòng)駕駛技術(shù)架構(gòu)
原創(chuàng)【51CTO.com原創(chuàng)稿件】近日,特斯拉中國(guó)組織了一場(chǎng)T-talk交流活動(dòng),為我們解析了特斯拉,如何用純視覺(jué)技術(shù)實(shí)現(xiàn)自動(dòng)駕駛的整體架構(gòu),通過(guò)一些特征案例來(lái)介紹架構(gòu)中每部分能解決的實(shí)際問(wèn)題。
這次交流活動(dòng)的核心,基于8月份特斯拉在美國(guó)舉辦AI Day的自動(dòng)駕駛部分,活動(dòng)中對(duì)數(shù)據(jù)如何提取、歸類(lèi)和優(yōu)化,以及向量空間構(gòu)建等關(guān)鍵點(diǎn)做了解釋。
整體架構(gòu)一覽
我們先來(lái)了解一下特斯拉用純視覺(jué)技術(shù)實(shí)現(xiàn)自動(dòng)駕駛的整體架構(gòu)(上圖)。
從下向上來(lái)看:
(1)多機(jī)位相機(jī)拍攝到不同角度的圖像RAW文件;
(2)經(jīng)過(guò)RegNet網(wǎng)絡(luò)(某種卷積神經(jīng)網(wǎng)絡(luò))及BiFPN(加強(qiáng)特征提?。┻M(jìn)行特征提?。?o:p>
到這里,系統(tǒng)已經(jīng)高效的提取出圖像里的有用信息。
(3)經(jīng)過(guò)Transformer進(jìn)行特征融合及MLP的特征修正,將特征數(shù)據(jù)重新表示到向量空間中,并在時(shí)間和空間上形成一個(gè)特征隊(duì)列。
(4)通過(guò)隊(duì)列的方式獲得Video的特征,加入IMU數(shù)據(jù),形成4D影像;
(5)經(jīng)過(guò)Spatial RNN進(jìn)行特征提?。?o:p>
(6)最終再經(jīng)過(guò)不同的檢測(cè)頭實(shí)現(xiàn)車(chē)輛、行人、車(chē)道線(xiàn)、深度圖、速度/方向等檢測(cè)。
接下來(lái)我們要說(shuō)兩方面關(guān)鍵技術(shù),一方面是如何高效提取特征數(shù)據(jù),一方面是向量空間怎么建立。
加強(qiáng)特征提取
首先認(rèn)識(shí)這兩個(gè)方法:FPN——特征提取, BiFPN——加強(qiáng)特征提取 。因?yàn)橥晃矬w的數(shù)據(jù)在不同層級(jí)提取出來(lái)是不同的,我們要把它在有用的層級(jí)里進(jìn)行強(qiáng)化,就用到了BiFPN。
前面說(shuō)過(guò)BiFPN能在卷積神經(jīng)網(wǎng)絡(luò)的不同層里靈活的提取特征數(shù)據(jù),因此讓數(shù)據(jù)提取變得高效。
下面這個(gè)例子就是利用BiFPN提取兩個(gè)不同層級(jí)里的特征數(shù)據(jù),要證明右下圖像的遠(yuǎn)處的物體是一輛車(chē)。BiFPN會(huì)提取不同分辨率信息,并把這些信息融合。因?yàn)橥粋€(gè)物體在不同的尺度(分別率)下,顯示的樣貌不同,在放大的圖像里遠(yuǎn)處的車(chē)很模糊,看不出是車(chē),但從整個(gè)圖像看,遠(yuǎn)處路上的點(diǎn)與周?chē)袼夭煌?,最終系統(tǒng)會(huì)判定它是一輛車(chē)。實(shí)際運(yùn)用中,采用BiFPN的多尺度特征融合方法,可以獲得四個(gè)尺度160×120×64、80×60×128、40×30×256、20×15×512的多尺度特征圖,用于感知不同尺度的目標(biāo)。
多任務(wù)HydraNets
HydraNets,多任務(wù)學(xué)習(xí)的感知框架,具有多任務(wù)共享特征,同時(shí)進(jìn)行多任務(wù)處理。HydraNets有三個(gè)特點(diǎn):
(1)特征共享:通過(guò)backbone網(wǎng)絡(luò)進(jìn)行特征提取之后,同時(shí)可以進(jìn)行多個(gè)任務(wù)的處理,提高推理效率;
(2)解耦合:多個(gè)任務(wù)間互不干擾;
(3)Fine-Tuning:在fine-tune時(shí)可以將backbone網(wǎng)絡(luò)固定住,只訓(xùn)練檢測(cè)頭的參數(shù),提高效率。
接下來(lái)聊一聊這樣網(wǎng)絡(luò)結(jié)構(gòu)給我們帶來(lái)什么樣的好處。
特征共享
首先是特征共享,也就是不同任務(wù)都采用主干網(wǎng)絡(luò)前向傳播推理過(guò)程,這樣從側(cè)面節(jié)省了測(cè)試時(shí)間,有效將測(cè)試時(shí)間均攤到不同任務(wù),F(xiàn)SD有上千種目標(biāo)需要識(shí)別,共享主干網(wǎng)絡(luò)的特征大大節(jié)省了時(shí)間。
任務(wù)之間的低耦合
回到架構(gòu)的最后Head部分,每個(gè)Head都在執(zhí)行不同的任務(wù),比如識(shí)別道路、樹(shù)木、車(chē)輛等,HydraNets實(shí)現(xiàn)了各個(gè)Head之間的解耦,他們從同一個(gè)網(wǎng)絡(luò)中提取數(shù)據(jù)的過(guò)程互不干擾。
多相機(jī)向量空間預(yù)測(cè)/校準(zhǔn)
既然單個(gè)相機(jī)預(yù)測(cè)的結(jié)果會(huì)導(dǎo)致很大的偏差,通過(guò)多個(gè)相機(jī)的圖像的特征進(jìn)行融合,然后再進(jìn)行檢測(cè),也就是把多個(gè)圖像特征融合在一起,最終只預(yù)測(cè)出一個(gè)結(jié)果,就能很好的解決多相機(jī)預(yù)測(cè)融合的問(wèn)題。
多機(jī)位的相機(jī)拍攝到圖像,經(jīng)過(guò)BackBone進(jìn)行特征提取,獲得多尺度特征,最后送入到紅色的框框中,最后完成檢測(cè)。
通過(guò)Transformer(下圖左側(cè)框中)來(lái)實(shí)現(xiàn)多機(jī)位特征到結(jié)果的預(yù)測(cè),由于通過(guò)融入不同相機(jī)的位置信息,能夠獲得準(zhǔn)確的空間位置映射。
下圖表示的是‘單相機(jī)檢測(cè)結(jié)果融合’與‘多相機(jī)特征融合’的檢測(cè)結(jié)果比較??梢?jiàn)單相機(jī)檢測(cè)結(jié)果融合(黃色)由于角度偏差預(yù)測(cè)的結(jié)果不準(zhǔn)確;而多相機(jī)(藍(lán)色)特征的融合檢測(cè)結(jié)果更加準(zhǔn)確。
目前國(guó)內(nèi)的版本上,我們遇到過(guò)屏幕上顯示識(shí)別的車(chē)輛會(huì)抖動(dòng),就是黃色造成的結(jié)果。
另外,針對(duì)機(jī)器缺乏記憶的能力,也就是不會(huì)等紅燈或左轉(zhuǎn)不會(huì)讓直行等情況,架構(gòu)中加入了視頻模和IMU信息來(lái)解決這類(lèi)問(wèn)題。
視頻模塊,保留一段時(shí)序特征圖,通過(guò)隊(duì)列的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn),另外這里還融入了IMU信息,提升了定位、跟蹤方面的準(zhǔn)確性。
架構(gòu)中還有許多功能,在這里我們先不一一解釋?zhuān)信d趣的朋友歡迎給我們提出意見(jiàn)和想法。
特斯拉通過(guò)在車(chē)上部署影子模式,在不開(kāi)啟FSD的情況下,依然能持續(xù)收集數(shù)據(jù)進(jìn)行訓(xùn)練,這個(gè)模式不參與正常的駕駛,但會(huì)把有用的數(shù)據(jù)收集反饋給系統(tǒng)??吹接白幽J侥憔蜁?huì)明白,為什么銷(xiāo)量對(duì)智能車(chē)企做自動(dòng)駕駛很重要。
總結(jié)一下,特斯拉整個(gè)的流程是先建立實(shí)際道路路況數(shù)據(jù)庫(kù),這一過(guò)程依靠特斯拉賣(mài)出的所有車(chē)和車(chē)主的駕駛來(lái)完成。數(shù)據(jù)經(jīng)過(guò)標(biāo)注(人工和自動(dòng)),劃分出人、車(chē)或者車(chē)道線(xiàn)等特征數(shù)據(jù),這些特征數(shù)據(jù)進(jìn)入到訓(xùn)練系統(tǒng),并部署到車(chē)上,車(chē)在使用中發(fā)現(xiàn)問(wèn)題會(huì)記錄特征信息返還給訓(xùn)練系統(tǒng)。如此往復(fù)形成深度學(xué)習(xí),進(jìn)而推動(dòng)特斯拉FSD(完全自動(dòng)駕駛)技術(shù)的進(jìn)化。
【51CTO原創(chuàng)稿件,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文作者和出處為51CTO.com】