近日,特斯拉自動(dòng)駕駛軟件總監(jiān) Ashok Elluswamy 在 CVPR 2022 會(huì)議上做了一個(gè)演講,介紹了特斯拉自動(dòng)駕駛團(tuán)隊(duì)在過去一年中取得的多項(xiàng)成果,尤其是名為 Occupancy Networks 的神經(jīng)網(wǎng)絡(luò)模型(以下簡稱占據(jù)網(wǎng)絡(luò))。
他講到,自動(dòng)駕駛系統(tǒng)傳統(tǒng)上用到的語義分割、深度信息等做法存在不少問題,比如 2D 轉(zhuǎn) 3D 比較困難,對(duì)深度信息的估算不準(zhǔn)等。
在使用占據(jù)網(wǎng)絡(luò)后,該模型能夠預(yù)測車輛周圍物體占據(jù)的空間(包括動(dòng)態(tài)物體下一步的動(dòng)作產(chǎn)生的空間)。
基于此,車輛在不需要識(shí)別具體的障礙物是什么的情況下,就能做出避讓動(dòng)作 ——Ashok Elluswamy 在推特上甚至開起了玩笑,說特斯拉的車甚至能躲避 UFO!
基于該技術(shù),車輛還能夠看到周圍角落里是否有障礙物,以此能夠跟人類司機(jī)一樣實(shí)現(xiàn)無保護(hù)轉(zhuǎn)向!
簡而言之,就是占據(jù)網(wǎng)絡(luò)明顯增強(qiáng)了特斯拉的自動(dòng)駕駛能力(L2)。
據(jù)稱,特斯拉自動(dòng)駕駛系統(tǒng)每天能防止 40 起因司機(jī)失誤造成的車禍!
此外,Ashok Elluswamy 還著重介紹了特斯拉 Autopilot 系統(tǒng)在防止駕駛員誤操作方面的努力。
通過感知外界環(huán)境和駕駛員的操作系統(tǒng),車輛能夠識(shí)別到駕駛員的誤操作,比如在錯(cuò)誤的時(shí)候踩下了加速踏板,車輛會(huì)中止加速并且進(jìn)行自動(dòng)剎車!

▲ 特斯拉主動(dòng)制動(dòng)
這就是說,此前國內(nèi)頻繁曝出的一些因?yàn)轳{駛員誤操作而產(chǎn)生的“剎車失靈”問題將被從技術(shù)上進(jìn)行限制。
不得不說特斯拉在推動(dòng)技術(shù)進(jìn)步上真的很有一手。以下為 Ashok Elluswamy 的演講視頻編譯,略有刪改。
一、純視覺算法強(qiáng)大 二維圖像轉(zhuǎn)三維
演講伊始,Ashok 表示,并不是所有人都了解特斯拉自動(dòng)駕駛系統(tǒng)具體的功能,因此他簡單介紹了一下。

▲Ashok
據(jù)他介紹,特斯拉自動(dòng)駕駛系統(tǒng)可以幫助車輛實(shí)現(xiàn)車道保持、車輛跟隨、減速過彎等,除了這些,特斯拉自動(dòng)駕駛系統(tǒng)還配備了標(biāo)準(zhǔn)安全功能,例如緊急制動(dòng)和避障,可以避免多種碰撞事故。
除此之外,自 2019 年以來,約有 100 萬輛特斯拉可以在高速公路上使用更先進(jìn)的導(dǎo)航,檢查臨側(cè)車道信息來執(zhí)行變道,識(shí)別高速路的出入口。
而且特斯拉自動(dòng)駕駛系統(tǒng)還能在停車場自動(dòng)泊車、識(shí)別交通信號(hào)燈和路牌,以及能進(jìn)行右轉(zhuǎn)彎,繞開汽車等障礙物。目前,這些功能已經(jīng)經(jīng)過了十幾萬名特斯拉車主的驗(yàn)證。
在演講中,Ashok 還拿出了一段用戶錄制的視頻。視頻顯示,用戶在舊金山擁擠的道路上行駛時(shí),車機(jī)屏幕顯示了周圍的環(huán)境,例如道路邊界、車道線、附近車輛的位置和速度。

▲ 系統(tǒng)識(shí)別出周圍環(huán)境
而這些一方面需要特斯拉車機(jī)和攝像頭等硬件的支持,一方面還需要特斯拉自動(dòng)駕駛系統(tǒng)內(nèi)置的算法和神經(jīng)網(wǎng)絡(luò)的支撐。
據(jù) Ashok 介紹,特斯拉搭載了 8 個(gè) 120 萬像素的攝像頭,它們可以 360 度捕捉周圍環(huán)境影像,平均每秒可以生成 36 幀圖像。而后特斯拉的車機(jī)將對(duì)這些信息進(jìn)行處理,每秒可進(jìn)行 144 萬億次運(yùn)算(TeraOPs / s)。
而且這些過程都是在基于純視覺算法進(jìn)行的,并未使用激光雷達(dá)和超聲波雷達(dá),也沒有高清地圖。
那特斯拉自動(dòng)駕駛系統(tǒng)又是如何識(shí)別一般障礙物的呢?
Ashok 表示,當(dāng)遇到一般障礙物時(shí),系統(tǒng)會(huì)使用空間分割方法。使用空間分割方法時(shí),系統(tǒng)對(duì)空間內(nèi)的每一個(gè)像素進(jìn)行標(biāo)記,標(biāo)記為“可行駛的”和“不可行駛的”,然后自動(dòng)駕駛芯片再來處理這個(gè)場景。不過,這個(gè)方法也存在一些問題。

▲ 對(duì)物體的標(biāo)記
首先,系統(tǒng)標(biāo)記的物體像素處于二維空間,而為了給汽車在三維空間中導(dǎo)航,物體像素需要轉(zhuǎn)換出三維空間中對(duì)應(yīng)的預(yù)測值,這樣特斯拉的系統(tǒng)才能建立互動(dòng)的物理模型,并順利處理導(dǎo)航任務(wù)。

▲ 對(duì)物體的標(biāo)記
而系統(tǒng)在將物體像素從二維圖像轉(zhuǎn)換到三維圖像時(shí),需要進(jìn)行圖像語義分割(指像素級(jí)地識(shí)別圖像,即標(biāo)注出圖像中每個(gè)像素所屬的對(duì)象類別)。
這個(gè)過程會(huì)產(chǎn)生不必要的圖像或系統(tǒng)中不必要的像素,而圖像的地平面上的幾個(gè)像素可以產(chǎn)生巨大的影響,直接決定如何將這個(gè)二維圖像轉(zhuǎn)換成三維圖像。所以,特斯拉不希望在規(guī)劃時(shí)產(chǎn)生這樣影響較大的像素。
另外,不同障礙物還需要使用不同方法來判斷。
一般來說,比較常用的還是物體的深度值(從觀察者角度看向物體時(shí)的距離,這個(gè)距離再通過投影變換、標(biāo)準(zhǔn)化設(shè)備坐標(biāo)、縮放平移后,最終得到的值)。
在某些場景中,系統(tǒng)可以先預(yù)測障礙物。而在另一個(gè)場景下,系統(tǒng)也可以對(duì)圖像的像素檢測深度,所以每個(gè)像素都會(huì)產(chǎn)生一些深度值。

▲ 深度圖(右側(cè))
但是,盡管最終生成的深度圖非常漂亮,而當(dāng)用深度圖進(jìn)行預(yù)測時(shí),只需要三個(gè)點(diǎn)。
而且在對(duì)這三個(gè)點(diǎn)進(jìn)行可視化的時(shí)候,盡管在近處看著還行,但是隨著距離的增加,它們也會(huì)發(fā)生形變,在下一階段這些圖像也很難繼續(xù)使用。
例如,墻壁可能會(huì)發(fā)生形變而變彎曲。而地平面附近的物體也是由較少的點(diǎn)來確定的,這就使得在規(guī)劃時(shí)系統(tǒng)無法正確判斷障礙物。
而又因?yàn)檫@些深度圖是在多個(gè)攝像頭采集到的平面圖像上轉(zhuǎn)換而成的,因此最終很難產(chǎn)生一個(gè)相同的障礙物,而且系統(tǒng)也很難預(yù)測出障礙物的邊界。
因此,特斯拉提出了占據(jù)網(wǎng)絡(luò)方案來解決這個(gè)問題。
二、計(jì)算空間占用率 給物體編碼
在演講過程中,Ashok 還用視頻展示了這個(gè)占據(jù)網(wǎng)絡(luò)方案。他說,從視頻上可以看出,在這個(gè)方案中,系統(tǒng)對(duì) 8 個(gè)攝像頭捕捉到的圖像處理,然后計(jì)算物體的空間占用率,最終生成了示意圖。

▲ 生成的模擬圖像
而且特斯拉汽車在行駛時(shí)每挪動(dòng)一下,系統(tǒng)網(wǎng)絡(luò)就會(huì)重新計(jì)算周圍物體的空間占用率。另外,系統(tǒng)網(wǎng)絡(luò)不僅會(huì)計(jì)算出一些靜態(tài)物體的空間占用率,例如樹木和墻壁,還會(huì)計(jì)算包括行駛的汽車在內(nèi)的動(dòng)態(tài)物體的空間占用率。
之后,網(wǎng)絡(luò)將圖像輸出成三維圖像,而且還可以預(yù)測被遮擋的物體,因此即使汽車只上傳了物體的部分輪廓,用戶也可以分辨清楚物體。
此外,盡管系統(tǒng)捕捉到的圖像因?yàn)檫h(yuǎn)近不同,圖像的分辨率不同,但是基于以上方案,最終呈現(xiàn)的模擬三維圖像的分辨率是相同的。

▲ 生成的圖像分辨率相同
而這就意味著整個(gè)方案運(yùn)行得十分高效,Ashok 表示,計(jì)算平臺(tái)運(yùn)行 10 毫秒,系統(tǒng)網(wǎng)絡(luò)能夠以 100 赫茲的速率運(yùn)行,這個(gè)運(yùn)行速率甚至比很多相機(jī)記錄圖像的速度還快。
那么,這個(gè)過程是如何完成的呢?這就需要了解一下占據(jù)網(wǎng)絡(luò)方案的架構(gòu)。
在講解占據(jù)網(wǎng)絡(luò)方案的架構(gòu)時(shí),Ashok 以特斯拉魚眼攝像頭和左側(cè)攝像頭拍到的圖像為例,對(duì)兩者圖像校正過程進(jìn)行了對(duì)比。
首先,系統(tǒng)會(huì)先對(duì)圖像進(jìn)行拉伸,然后提取圖像特征,查詢出三維圖像相關(guān)的點(diǎn)是否被占用,然后使用三維位置編碼,然后將其映射到固定的位置,之后這些信息會(huì)在之后的計(jì)算中被收集。

▲ 對(duì)圖像進(jìn)行初步處理
之后,系統(tǒng)將對(duì)圖像空間進(jìn)行位置嵌入,繼續(xù)通過三維查詢處理圖像流,最終生成三維占用特征。因?yàn)樯傻氖歉呔S占用特征,所以很難在空間的每一個(gè)點(diǎn)上執(zhí)行此操作。因此系統(tǒng)會(huì)在較低維度生成這些高維特征,例如使用典型的上采樣技術(shù),生成高維空間占用率。

▲ 計(jì)算物體的空間占用率
有趣的是,Ashok 在演講中透露,當(dāng)初做這個(gè)占據(jù)網(wǎng)絡(luò)方案只是用于處理靜態(tài)的對(duì)象,但是最終發(fā)現(xiàn)只處理靜態(tài)的樹很難,而且系統(tǒng)在剛開始分辨“真假行人”的時(shí)候,也遇到了很多困難。
但是團(tuán)隊(duì)最終發(fā)現(xiàn),無論這些障礙是移動(dòng)的,還是靜止的,系統(tǒng)最終只需做到能夠躲避掉這些障礙就好了。

▲ 真假行人
因此,占據(jù)網(wǎng)絡(luò)方案不再區(qū)分動(dòng)態(tài)障礙物和靜態(tài)障礙物,而是使用其他的分類對(duì)其進(jìn)行處理,計(jì)算物體的瞬時(shí)空間占用率,不過這還不足以能保證特斯拉汽車可以安全行駛。
因?yàn)槿绻挥?jì)算瞬時(shí)空間占用率,當(dāng)特斯拉汽車在高速上行駛時(shí)遇到一輛車,然后就開始放慢速度并不是很合理。系統(tǒng)更想知道,在之后不同的時(shí)刻這輛車的空間占用率,以及變化情況。
這樣的話,系統(tǒng)就可以預(yù)測出這輛車何時(shí)會(huì)離開。所以,方案還涉及還預(yù)測了占用流。

▲ 占用流的計(jì)算過程
占用流這個(gè)數(shù)據(jù)可以是空間占用率或時(shí)間的一階、高階導(dǎo)數(shù),也可以提供更精確的控制,將它們統(tǒng)一到同一個(gè)坐標(biāo)系中。系統(tǒng)將使用同一種方法來生成空間占用率和占用流,這還將針對(duì)各種障礙物提供強(qiáng)大的保護(hù)。
三、障礙物類型不重要 系統(tǒng)可避免撞車
Ashok 還表示,常規(guī)運(yùn)動(dòng)或移動(dòng)網(wǎng)絡(luò)不能判斷物體的類型,例如到底是靜態(tài)的物體還是一輛行駛的車輛。
但是從控制層面來說,物體的種類實(shí)際上并不重要,占據(jù)網(wǎng)絡(luò)方案提供了很好的保護(hù),防止網(wǎng)絡(luò)出現(xiàn)分類困境。
因?yàn)椴还苁鞘裁丛蛟斐傻恼系K,系統(tǒng)都會(huì)認(rèn)為這部分的空間被占用了,并且以某一速度移動(dòng)。一些特殊類型的車輛可能有奇怪的突起,很難用傳統(tǒng)技術(shù)建模,系統(tǒng)則會(huì)用立方體或其他多邊形來表示移動(dòng)物體。
這樣一來,物體就可以進(jìn)行任意的擠壓,用這種占位的方法,而不需要復(fù)雜的網(wǎng)格狀拓?fù)浣Y(jié)構(gòu)建模。
當(dāng)車輛在進(jìn)行無保護(hù)或者有保護(hù)的轉(zhuǎn)彎時(shí),可以使用幾何信息來推斷遮擋情況。幾何信息不僅要推測車輛攝像頭所識(shí)別到的信息還需要推測未識(shí)別到的信息。
例如,當(dāng)一輛車正在進(jìn)行無保護(hù)轉(zhuǎn)彎時(shí),前面有一條分岔路,可能有潛在的車輛被樹木和路標(biāo)遮擋,所以汽車“知道”它不能從這些遮擋物中看到車輛?;诓煌目刂撇呗裕嚳梢蕴岢鰡栴}并消除這種遮擋。
因此,對(duì)于一個(gè)靜止的物體,車可以在行駛的途中識(shí)別其何時(shí)變得可見。由于有完整的三維障礙物,汽車也可以預(yù)判到什么距離會(huì)撞到這一物體,然后系統(tǒng)會(huì)通過平順的控制來識(shí)別并通過這一被遮擋的物體。
所以占據(jù)網(wǎng)絡(luò)方案在很多不同的方面都有助于改善控制棧。這一方案是神經(jīng)輻射場的延伸,神經(jīng)輻射場(NeRf)在過去幾年里在很大程度上接管了計(jì)算機(jī)視覺研究。

▲ NeRf 與占據(jù)網(wǎng)絡(luò)關(guān)聯(lián)示意圖
NeRf 是在單個(gè)場景或單個(gè)位置的圖像重建場景,從單個(gè)位置的一個(gè)點(diǎn)進(jìn)行重建。
Ashok 表示,特斯拉的車輛在行駛中,后臺(tái)處理接收到的圖像較為準(zhǔn)確,所以可以(用 NeRf)生成跨時(shí)間并精確的圖像路線,通過 NeRf 模型和 3D 狀態(tài)差異化渲染圖像來產(chǎn)生較準(zhǔn)確的 3D 重建。
而現(xiàn)實(shí)世界的圖像會(huì)存在一個(gè)問題 —— 我們?cè)诂F(xiàn)實(shí)世界中會(huì)看到大量不真實(shí)或有差別的景象。
例如太陽眩光或擋風(fēng)玻璃上的污垢或灰塵會(huì)因?yàn)楣饩€的衍射而產(chǎn)生變化,或者雨滴會(huì)進(jìn)一步扭曲光線的傳播,最終產(chǎn)生偽影。
對(duì)此提高魯棒性的方法是使用更高層次的描述符,但這些描述符在一定程度上不會(huì)改變局部照明偽影(如眩光)。
因?yàn)?RGB(顏色系統(tǒng))圖像可能非常嘈雜,但在 RGB 之上添加描述符可以提供一層語義上的保護(hù),防止 RGB 值的變化。因此,特斯拉的目標(biāo)是將這種方式用于占據(jù)網(wǎng)絡(luò)方案。

▲ 描述符比 RGB 更具魯棒性
由于占據(jù)網(wǎng)絡(luò)方案需要在幾個(gè)鏡頭中產(chǎn)生空間占用率,不能在汽車中運(yùn)行完整的神經(jīng)優(yōu)化,但神經(jīng)優(yōu)化可以縮小在后臺(tái)運(yùn)行,確保它產(chǎn)生的空間占用率能夠解釋汽車在運(yùn)行時(shí)收到的所有傳感器的圖像。
此外,也可以在訓(xùn)練時(shí)疊加描述符,為這些網(wǎng)絡(luò)產(chǎn)生良好的監(jiān)督;同時(shí)也可以通過差異化渲染不同的傳感器數(shù)據(jù)來監(jiān)督所持有的圖像。
目前特斯拉已經(jīng)有了減少障礙物的網(wǎng)絡(luò),下一步就是避免任何碰撞,Autopilot 已經(jīng)有很多安全功能。
緊接著,Ashok 展示了三段 Autopilot 啟動(dòng)避免碰撞的視頻。
這里的碰撞事故指的是由于駕駛員不小心將油門踏板當(dāng)制動(dòng)踏板踩下而導(dǎo)致的撞車事故。
Ashok 在表示駕駛員不小心將油門當(dāng)成剎車踩時(shí),汽車會(huì)加速并導(dǎo)致碰撞,但車輛會(huì)識(shí)別并自動(dòng)中止加速,并自動(dòng)剎車防止碰撞。
在第一段視頻中,Ashock 表示如果 Autopilot 沒有啟動(dòng)并阻止汽車加速,視頻中的司機(jī)很可能會(huì)落入河中。

▲ 特斯拉 AP 啟動(dòng)避免車掉入河中
同樣,第二段視頻顯示,一名特斯拉司機(jī)在停車時(shí)誤踩油門,但 Autopilot 迅速啟動(dòng)并阻止汽車撞上商店和行人。

▲ 特斯拉 AP 啟動(dòng)避免車撞向商店
四、通過占用率 車輛自動(dòng)規(guī)劃路徑
但讓汽車平穩(wěn)地制動(dòng)并剎??赡苄枰獢?shù)秒乃至數(shù)分鐘的時(shí)間,而汽車在行駛的過程中,可能沒有足夠的時(shí)間來識(shí)別障礙物并進(jìn)行計(jì)算。
所以我們要用神經(jīng)網(wǎng)絡(luò)來達(dá)到這一目的;尤其最近還出現(xiàn)了更加復(fù)雜的隱性場景。特斯拉自動(dòng)駕駛團(tuán)隊(duì)所要做的也就是從以前的網(wǎng)絡(luò)中獲取空間占用率。
首先,要把空間占用率編碼到一個(gè)超級(jí)壓縮的多層感知器(MLP)中。本質(zhì)上,這個(gè) MLP 是對(duì)任何特定查詢狀態(tài)下是否可以避免碰撞的隱含表示,這個(gè)避免碰撞的方法在某一時(shí)間范圍內(nèi)提供了一些保證。例如,可以在 2 秒或 4 秒或某個(gè)時(shí)間范圍內(nèi)避免碰撞。
Ashok 在這里又舉了一個(gè)例子,他給出了一條自上而下的道路,黑色像素是障礙物、灰色像素是路面、白色像素是道路車道線。在這個(gè)三維空間的俯視圖中,可以把車放在任何像素的位置,模擬碰撞是否可以避免。

▲ 車輛行駛情況示意圖
他表示:“如果你把汽車想象成一個(gè)單一的點(diǎn),避免碰撞的周期設(shè)置為瞬間,那么當(dāng)前時(shí)間是否會(huì)發(fā)生碰撞,僅僅取決于障礙物的位置;但問題是,汽車不是一個(gè)點(diǎn),它有一個(gè)類似矩形的形狀,也可以轉(zhuǎn)向?!?/p>
因此,只有當(dāng)將形狀與障礙物卷積時(shí),才能夠立即知道汽車是否處于碰撞狀態(tài)。
隨著汽車的轉(zhuǎn)向(或因失控旋轉(zhuǎn)),碰撞場會(huì)發(fā)生變化。綠色意味著汽車處于一個(gè)沒有碰撞的安全位置,紅色意味著碰撞,所以當(dāng)汽車旋轉(zhuǎn)時(shí),碰撞位置更多;但當(dāng)汽車位置被對(duì)齊時(shí),綠色的位置擴(kuò)大,意味著汽車不會(huì)發(fā)生碰撞。
整體來看,Ashok 展示了如何利用多幅相機(jī)視頻和產(chǎn)品產(chǎn)生密集的空間占用率和占用流,通過空間占用率可以通過神經(jīng)網(wǎng)絡(luò)產(chǎn)生一個(gè)有效的避碰場,即車輛通過攝像頭“看”,根據(jù)經(jīng)驗(yàn)判斷,以合適的速度和方向通過障礙物的道路。

▲ 避免碰撞的隱式神經(jīng)網(wǎng)絡(luò)
Ashok 還分享了一個(gè)模擬環(huán)境下的實(shí)驗(yàn),駕駛員踩下油門加速并且沒有轉(zhuǎn)向行為,汽車監(jiān)測到會(huì)發(fā)生碰撞并規(guī)劃一條路徑以使汽車安全地通過。
Ashok 在演講結(jié)束時(shí)表示,如果他們能夠成功實(shí)施以上的所有技術(shù),他們就可以生產(chǎn)出一輛永遠(yuǎn)不會(huì)撞車的汽車。
顯然,這項(xiàng)工作還沒有完成,在他的最后一張 PPT 中,Ashok 積極向工程師們發(fā)出邀請(qǐng),歡迎他們加入特斯拉,制造一輛永遠(yuǎn)不會(huì)撞車的汽車!

▲ Ashok Elluswamy 歡迎更多人才加入特斯拉
結(jié)語:特斯拉不斷探索自動(dòng)駕駛
自從特斯拉帶火自動(dòng)駕駛技術(shù)后,自動(dòng)駕駛的賽道便涌現(xiàn)了一大批的跟隨者。但不得不說,特斯拉始終還是走在行業(yè)的前列,不斷探索著自動(dòng)駕駛的新方法。
本次特斯拉 Autopilot 項(xiàng)目負(fù)責(zé)人帶來新的技術(shù)解讀,也一定程度上為我們提前展示了特斯拉未來自動(dòng)駕駛技術(shù)的亮點(diǎn)。憑借特斯拉不斷探索的精神,其自動(dòng)駕駛也會(huì)繼續(xù)領(lǐng)跑整個(gè)汽車市場。