近日,特斯拉自動駕駛軟件總監(jiān) Ashok Elluswamy 在 CVPR 2022 會議上做了一個演講,介紹了特斯拉自動駕駛團(tuán)隊在過去一年中取得的多項成果,尤其是名為 Occupancy Networks 的神經(jīng)網(wǎng)絡(luò)模型(以下簡稱占據(jù)網(wǎng)絡(luò))。
他講到,自動駕駛系統(tǒng)傳統(tǒng)上用到的語義分割、深度信息等做法存在不少問題,比如 2D 轉(zhuǎn) 3D 比較困難,對深度信息的估算不準(zhǔn)等。
在使用占據(jù)網(wǎng)絡(luò)后,該模型能夠預(yù)測車輛周圍物體占據(jù)的空間(包括動態(tài)物體下一步的動作產(chǎn)生的空間)。
基于此,車輛在不需要識別具體的障礙物是什么的情況下,就能做出避讓動作 ——Ashok Elluswamy 在推特上甚至開起了玩笑,說特斯拉的車甚至能躲避 UFO!
基于該技術(shù),車輛還能夠看到周圍角落里是否有障礙物,以此能夠跟人類司機(jī)一樣實現(xiàn)無保護(hù)轉(zhuǎn)向!
簡而言之,就是占據(jù)網(wǎng)絡(luò)明顯增強(qiáng)了特斯拉的自動駕駛能力(L2)。
據(jù)稱,特斯拉自動駕駛系統(tǒng)每天能防止 40 起因司機(jī)失誤造成的車禍!
此外,Ashok Elluswamy 還著重介紹了特斯拉 Autopilot 系統(tǒng)在防止駕駛員誤操作方面的努力。
通過感知外界環(huán)境和駕駛員的操作系統(tǒng),車輛能夠識別到駕駛員的誤操作,比如在錯誤的時候踩下了加速踏板,車輛會中止加速并且進(jìn)行自動剎車!
▲ 特斯拉主動制動
這就是說,此前國內(nèi)頻繁曝出的一些因為駕駛員誤操作而產(chǎn)生的“剎車失靈”問題將被從技術(shù)上進(jìn)行限制。
不得不說特斯拉在推動技術(shù)進(jìn)步上真的很有一手。以下為 Ashok Elluswamy 的演講視頻編譯,略有刪改。
一、純視覺算法強(qiáng)大 二維圖像轉(zhuǎn)三維
演講伊始,Ashok 表示,并不是所有人都了解特斯拉自動駕駛系統(tǒng)具體的功能,因此他簡單介紹了一下。
▲Ashok
據(jù)他介紹,特斯拉自動駕駛系統(tǒng)可以幫助車輛實現(xiàn)車道保持、車輛跟隨、減速過彎等,除了這些,特斯拉自動駕駛系統(tǒng)還配備了標(biāo)準(zhǔn)安全功能,例如緊急制動和避障,可以避免多種碰撞事故。
除此之外,自 2019 年以來,約有 100 萬輛特斯拉可以在高速公路上使用更先進(jìn)的導(dǎo)航,檢查臨側(cè)車道信息來執(zhí)行變道,識別高速路的出入口。
而且特斯拉自動駕駛系統(tǒng)還能在停車場自動泊車、識別交通信號燈和路牌,以及能進(jìn)行右轉(zhuǎn)彎,繞開汽車等障礙物。目前,這些功能已經(jīng)經(jīng)過了十幾萬名特斯拉車主的驗證。
在演講中,Ashok 還拿出了一段用戶錄制的視頻。視頻顯示,用戶在舊金山擁擠的道路上行駛時,車機(jī)屏幕顯示了周圍的環(huán)境,例如道路邊界、車道線、附近車輛的位置和速度。
▲ 系統(tǒng)識別出周圍環(huán)境
而這些一方面需要特斯拉車機(jī)和攝像頭等硬件的支持,一方面還需要特斯拉自動駕駛系統(tǒng)內(nèi)置的算法和神經(jīng)網(wǎng)絡(luò)的支撐。
據(jù) Ashok 介紹,特斯拉搭載了 8 個 120 萬像素的攝像頭,它們可以 360 度捕捉周圍環(huán)境影像,平均每秒可以生成 36 幀圖像。而后特斯拉的車機(jī)將對這些信息進(jìn)行處理,每秒可進(jìn)行 144 萬億次運(yùn)算(TeraOPs / s)。
而且這些過程都是在基于純視覺算法進(jìn)行的,并未使用激光雷達(dá)和超聲波雷達(dá),也沒有高清地圖。
那特斯拉自動駕駛系統(tǒng)又是如何識別一般障礙物的呢?
Ashok 表示,當(dāng)遇到一般障礙物時,系統(tǒng)會使用空間分割方法。使用空間分割方法時,系統(tǒng)對空間內(nèi)的每一個像素進(jìn)行標(biāo)記,標(biāo)記為“可行駛的”和“不可行駛的”,然后自動駕駛芯片再來處理這個場景。不過,這個方法也存在一些問題。
▲ 對物體的標(biāo)記
首先,系統(tǒng)標(biāo)記的物體像素處于二維空間,而為了給汽車在三維空間中導(dǎo)航,物體像素需要轉(zhuǎn)換出三維空間中對應(yīng)的預(yù)測值,這樣特斯拉的系統(tǒng)才能建立互動的物理模型,并順利處理導(dǎo)航任務(wù)。
▲ 對物體的標(biāo)記
而系統(tǒng)在將物體像素從二維圖像轉(zhuǎn)換到三維圖像時,需要進(jìn)行圖像語義分割(指像素級地識別圖像,即標(biāo)注出圖像中每個像素所屬的對象類別)。
這個過程會產(chǎn)生不必要的圖像或系統(tǒng)中不必要的像素,而圖像的地平面上的幾個像素可以產(chǎn)生巨大的影響,直接決定如何將這個二維圖像轉(zhuǎn)換成三維圖像。所以,特斯拉不希望在規(guī)劃時產(chǎn)生這樣影響較大的像素。
另外,不同障礙物還需要使用不同方法來判斷。
一般來說,比較常用的還是物體的深度值(從觀察者角度看向物體時的距離,這個距離再通過投影變換、標(biāo)準(zhǔn)化設(shè)備坐標(biāo)、縮放平移后,最終得到的值)。
在某些場景中,系統(tǒng)可以先預(yù)測障礙物。而在另一個場景下,系統(tǒng)也可以對圖像的像素檢測深度,所以每個像素都會產(chǎn)生一些深度值。
▲ 深度圖(右側(cè))
但是,盡管最終生成的深度圖非常漂亮,而當(dāng)用深度圖進(jìn)行預(yù)測時,只需要三個點。
而且在對這三個點進(jìn)行可視化的時候,盡管在近處看著還行,但是隨著距離的增加,它們也會發(fā)生形變,在下一階段這些圖像也很難繼續(xù)使用。
例如,墻壁可能會發(fā)生形變而變彎曲。而地平面附近的物體也是由較少的點來確定的,這就使得在規(guī)劃時系統(tǒng)無法正確判斷障礙物。
而又因為這些深度圖是在多個攝像頭采集到的平面圖像上轉(zhuǎn)換而成的,因此最終很難產(chǎn)生一個相同的障礙物,而且系統(tǒng)也很難預(yù)測出障礙物的邊界。
因此,特斯拉提出了占據(jù)網(wǎng)絡(luò)方案來解決這個問題。
二、計算空間占用率 給物體編碼
在演講過程中,Ashok 還用視頻展示了這個占據(jù)網(wǎng)絡(luò)方案。他說,從視頻上可以看出,在這個方案中,系統(tǒng)對 8 個攝像頭捕捉到的圖像處理,然后計算物體的空間占用率,最終生成了示意圖。
▲ 生成的模擬圖像
而且特斯拉汽車在行駛時每挪動一下,系統(tǒng)網(wǎng)絡(luò)就會重新計算周圍物體的空間占用率。另外,系統(tǒng)網(wǎng)絡(luò)不僅會計算出一些靜態(tài)物體的空間占用率,例如樹木和墻壁,還會計算包括行駛的汽車在內(nèi)的動態(tài)物體的空間占用率。
之后,網(wǎng)絡(luò)將圖像輸出成三維圖像,而且還可以預(yù)測被遮擋的物體,因此即使汽車只上傳了物體的部分輪廓,用戶也可以分辨清楚物體。
此外,盡管系統(tǒng)捕捉到的圖像因為遠(yuǎn)近不同,圖像的分辨率不同,但是基于以上方案,最終呈現(xiàn)的模擬三維圖像的分辨率是相同的。
▲ 生成的圖像分辨率相同
而這就意味著整個方案運(yùn)行得十分高效,Ashok 表示,計算平臺運(yùn)行 10 毫秒,系統(tǒng)網(wǎng)絡(luò)能夠以 100 赫茲的速率運(yùn)行,這個運(yùn)行速率甚至比很多相機(jī)記錄圖像的速度還快。
那么,這個過程是如何完成的呢?這就需要了解一下占據(jù)網(wǎng)絡(luò)方案的架構(gòu)。
在講解占據(jù)網(wǎng)絡(luò)方案的架構(gòu)時,Ashok 以特斯拉魚眼攝像頭和左側(cè)攝像頭拍到的圖像為例,對兩者圖像校正過程進(jìn)行了對比。
首先,系統(tǒng)會先對圖像進(jìn)行拉伸,然后提取圖像特征,查詢出三維圖像相關(guān)的點是否被占用,然后使用三維位置編碼,然后將其映射到固定的位置,之后這些信息會在之后的計算中被收集。
▲ 對圖像進(jìn)行初步處理
之后,系統(tǒng)將對圖像空間進(jìn)行位置嵌入,繼續(xù)通過三維查詢處理圖像流,最終生成三維占用特征。因為生成的是高維占用特征,所以很難在空間的每一個點上執(zhí)行此操作。因此系統(tǒng)會在較低維度生成這些高維特征,例如使用典型的上采樣技術(shù),生成高維空間占用率。
▲ 計算物體的空間占用率
有趣的是,Ashok 在演講中透露,當(dāng)初做這個占據(jù)網(wǎng)絡(luò)方案只是用于處理靜態(tài)的對象,但是最終發(fā)現(xiàn)只處理靜態(tài)的樹很難,而且系統(tǒng)在剛開始分辨“真假行人”的時候,也遇到了很多困難。
但是團(tuán)隊最終發(fā)現(xiàn),無論這些障礙是移動的,還是靜止的,系統(tǒng)最終只需做到能夠躲避掉這些障礙就好了。
▲ 真假行人
因此,占據(jù)網(wǎng)絡(luò)方案不再區(qū)分動態(tài)障礙物和靜態(tài)障礙物,而是使用其他的分類對其進(jìn)行處理,計算物體的瞬時空間占用率,不過這還不足以能保證特斯拉汽車可以安全行駛。
因為如果只計算瞬時空間占用率,當(dāng)特斯拉汽車在高速上行駛時遇到一輛車,然后就開始放慢速度并不是很合理。系統(tǒng)更想知道,在之后不同的時刻這輛車的空間占用率,以及變化情況。
這樣的話,系統(tǒng)就可以預(yù)測出這輛車何時會離開。所以,方案還涉及還預(yù)測了占用流。
▲ 占用流的計算過程
占用流這個數(shù)據(jù)可以是空間占用率或時間的一階、高階導(dǎo)數(shù),也可以提供更精確的控制,將它們統(tǒng)一到同一個坐標(biāo)系中。系統(tǒng)將使用同一種方法來生成空間占用率和占用流,這還將針對各種障礙物提供強(qiáng)大的保護(hù)。
三、障礙物類型不重要 系統(tǒng)可避免撞車
Ashok 還表示,常規(guī)運(yùn)動或移動網(wǎng)絡(luò)不能判斷物體的類型,例如到底是靜態(tài)的物體還是一輛行駛的車輛。
但是從控制層面來說,物體的種類實際上并不重要,占據(jù)網(wǎng)絡(luò)方案提供了很好的保護(hù),防止網(wǎng)絡(luò)出現(xiàn)分類困境。
因為不管是什么原因造成的障礙,系統(tǒng)都會認(rèn)為這部分的空間被占用了,并且以某一速度移動。一些特殊類型的車輛可能有奇怪的突起,很難用傳統(tǒng)技術(shù)建模,系統(tǒng)則會用立方體或其他多邊形來表示移動物體。
這樣一來,物體就可以進(jìn)行任意的擠壓,用這種占位的方法,而不需要復(fù)雜的網(wǎng)格狀拓?fù)浣Y(jié)構(gòu)建模。
當(dāng)車輛在進(jìn)行無保護(hù)或者有保護(hù)的轉(zhuǎn)彎時,可以使用幾何信息來推斷遮擋情況。幾何信息不僅要推測車輛攝像頭所識別到的信息還需要推測未識別到的信息。
例如,當(dāng)一輛車正在進(jìn)行無保護(hù)轉(zhuǎn)彎時,前面有一條分岔路,可能有潛在的車輛被樹木和路標(biāo)遮擋,所以汽車“知道”它不能從這些遮擋物中看到車輛?;诓煌目刂撇呗?,汽車可以提出問題并消除這種遮擋。
因此,對于一個靜止的物體,車可以在行駛的途中識別其何時變得可見。由于有完整的三維障礙物,汽車也可以預(yù)判到什么距離會撞到這一物體,然后系統(tǒng)會通過平順的控制來識別并通過這一被遮擋的物體。
所以占據(jù)網(wǎng)絡(luò)方案在很多不同的方面都有助于改善控制棧。這一方案是神經(jīng)輻射場的延伸,神經(jīng)輻射場(NeRf)在過去幾年里在很大程度上接管了計算機(jī)視覺研究。
▲ NeRf 與占據(jù)網(wǎng)絡(luò)關(guān)聯(lián)示意圖
NeRf 是在單個場景或單個位置的圖像重建場景,從單個位置的一個點進(jìn)行重建。
Ashok 表示,特斯拉的車輛在行駛中,后臺處理接收到的圖像較為準(zhǔn)確,所以可以(用 NeRf)生成跨時間并精確的圖像路線,通過 NeRf 模型和 3D 狀態(tài)差異化渲染圖像來產(chǎn)生較準(zhǔn)確的 3D 重建。
而現(xiàn)實世界的圖像會存在一個問題 —— 我們在現(xiàn)實世界中會看到大量不真實或有差別的景象。
例如太陽眩光或擋風(fēng)玻璃上的污垢或灰塵會因為光線的衍射而產(chǎn)生變化,或者雨滴會進(jìn)一步扭曲光線的傳播,最終產(chǎn)生偽影。
對此提高魯棒性的方法是使用更高層次的描述符,但這些描述符在一定程度上不會改變局部照明偽影(如眩光)。
因為 RGB(顏色系統(tǒng))圖像可能非常嘈雜,但在 RGB 之上添加描述符可以提供一層語義上的保護(hù),防止 RGB 值的變化。因此,特斯拉的目標(biāo)是將這種方式用于占據(jù)網(wǎng)絡(luò)方案。
▲ 描述符比 RGB 更具魯棒性
由于占據(jù)網(wǎng)絡(luò)方案需要在幾個鏡頭中產(chǎn)生空間占用率,不能在汽車中運(yùn)行完整的神經(jīng)優(yōu)化,但神經(jīng)優(yōu)化可以縮小在后臺運(yùn)行,確保它產(chǎn)生的空間占用率能夠解釋汽車在運(yùn)行時收到的所有傳感器的圖像。
此外,也可以在訓(xùn)練時疊加描述符,為這些網(wǎng)絡(luò)產(chǎn)生良好的監(jiān)督;同時也可以通過差異化渲染不同的傳感器數(shù)據(jù)來監(jiān)督所持有的圖像。
目前特斯拉已經(jīng)有了減少障礙物的網(wǎng)絡(luò),下一步就是避免任何碰撞,Autopilot 已經(jīng)有很多安全功能。
緊接著,Ashok 展示了三段 Autopilot 啟動避免碰撞的視頻。
這里的碰撞事故指的是由于駕駛員不小心將油門踏板當(dāng)制動踏板踩下而導(dǎo)致的撞車事故。
Ashok 在表示駕駛員不小心將油門當(dāng)成剎車踩時,汽車會加速并導(dǎo)致碰撞,但車輛會識別并自動中止加速,并自動剎車防止碰撞。
在第一段視頻中,Ashock 表示如果 Autopilot 沒有啟動并阻止汽車加速,視頻中的司機(jī)很可能會落入河中。
▲ 特斯拉 AP 啟動避免車掉入河中
同樣,第二段視頻顯示,一名特斯拉司機(jī)在停車時誤踩油門,但 Autopilot 迅速啟動并阻止汽車撞上商店和行人。
▲ 特斯拉 AP 啟動避免車撞向商店
四、通過占用率 車輛自動規(guī)劃路徑
但讓汽車平穩(wěn)地制動并剎??赡苄枰獢?shù)秒乃至數(shù)分鐘的時間,而汽車在行駛的過程中,可能沒有足夠的時間來識別障礙物并進(jìn)行計算。
所以我們要用神經(jīng)網(wǎng)絡(luò)來達(dá)到這一目的;尤其最近還出現(xiàn)了更加復(fù)雜的隱性場景。特斯拉自動駕駛團(tuán)隊所要做的也就是從以前的網(wǎng)絡(luò)中獲取空間占用率。
首先,要把空間占用率編碼到一個超級壓縮的多層感知器(MLP)中。本質(zhì)上,這個 MLP 是對任何特定查詢狀態(tài)下是否可以避免碰撞的隱含表示,這個避免碰撞的方法在某一時間范圍內(nèi)提供了一些保證。例如,可以在 2 秒或 4 秒或某個時間范圍內(nèi)避免碰撞。
Ashok 在這里又舉了一個例子,他給出了一條自上而下的道路,黑色像素是障礙物、灰色像素是路面、白色像素是道路車道線。在這個三維空間的俯視圖中,可以把車放在任何像素的位置,模擬碰撞是否可以避免。
▲ 車輛行駛情況示意圖
他表示:“如果你把汽車想象成一個單一的點,避免碰撞的周期設(shè)置為瞬間,那么當(dāng)前時間是否會發(fā)生碰撞,僅僅取決于障礙物的位置;但問題是,汽車不是一個點,它有一個類似矩形的形狀,也可以轉(zhuǎn)向?!?/p>
因此,只有當(dāng)將形狀與障礙物卷積時,才能夠立即知道汽車是否處于碰撞狀態(tài)。
隨著汽車的轉(zhuǎn)向(或因失控旋轉(zhuǎn)),碰撞場會發(fā)生變化。綠色意味著汽車處于一個沒有碰撞的安全位置,紅色意味著碰撞,所以當(dāng)汽車旋轉(zhuǎn)時,碰撞位置更多;但當(dāng)汽車位置被對齊時,綠色的位置擴(kuò)大,意味著汽車不會發(fā)生碰撞。
整體來看,Ashok 展示了如何利用多幅相機(jī)視頻和產(chǎn)品產(chǎn)生密集的空間占用率和占用流,通過空間占用率可以通過神經(jīng)網(wǎng)絡(luò)產(chǎn)生一個有效的避碰場,即車輛通過攝像頭“看”,根據(jù)經(jīng)驗判斷,以合適的速度和方向通過障礙物的道路。
▲ 避免碰撞的隱式神經(jīng)網(wǎng)絡(luò)
Ashok 還分享了一個模擬環(huán)境下的實驗,駕駛員踩下油門加速并且沒有轉(zhuǎn)向行為,汽車監(jiān)測到會發(fā)生碰撞并規(guī)劃一條路徑以使汽車安全地通過。
Ashok 在演講結(jié)束時表示,如果他們能夠成功實施以上的所有技術(shù),他們就可以生產(chǎn)出一輛永遠(yuǎn)不會撞車的汽車。
顯然,這項工作還沒有完成,在他的最后一張 PPT 中,Ashok 積極向工程師們發(fā)出邀請,歡迎他們加入特斯拉,制造一輛永遠(yuǎn)不會撞車的汽車!
▲ Ashok Elluswamy 歡迎更多人才加入特斯拉
結(jié)語:特斯拉不斷探索自動駕駛
自從特斯拉帶火自動駕駛技術(shù)后,自動駕駛的賽道便涌現(xiàn)了一大批的跟隨者。但不得不說,特斯拉始終還是走在行業(yè)的前列,不斷探索著自動駕駛的新方法。
本次特斯拉 Autopilot 項目負(fù)責(zé)人帶來新的技術(shù)解讀,也一定程度上為我們提前展示了特斯拉未來自動駕駛技術(shù)的亮點。憑借特斯拉不斷探索的精神,其自動駕駛也會繼續(xù)領(lǐng)跑整個汽車市場。
廣告聲明:文內(nèi)含有的對外跳轉(zhuǎn)鏈接(包括不限于超鏈接、二維碼、口令等形式),用于傳遞更多信息,節(jié)省甄選時間,結(jié)果僅供參考,IT之家所有文章均包含本聲明。