自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Warning!遠距離LiDAR感知

人工智能 新聞
眾所周知,圖森是做卡車自動駕駛的,而卡車不論是剎車距離還是變道時間都遠比轎車要長,所以如果說圖森有什么與其他自動駕駛公司不同的獨門技術(shù),遠距離感知必然是其中之一。

本文經(jīng)自動駕駛之心公眾號授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。

一、引言

去年開了圖森ai day之后,一直想以文字形式總結(jié)一下這幾年在遠距離感知方面所做的工作,正好最近有時間了,就想寫一篇文章記錄一下這幾年的研究歷程。本文所提到的內(nèi)容都在圖森ai day視頻[0]和公開發(fā)表的論文中,不涉及具體的工程細節(jié)等技術(shù)秘密。

眾所周知,圖森是做卡車自動駕駛的,而卡車不論是剎車距離還是變道時間都遠比轎車要長,所以如果說圖森有什么與其他自動駕駛公司不同的獨門技術(shù),遠距離感知必然是其中之一。我在圖森負責LiDAR感知這一塊,就專門聊一聊使用LiDAR進行遠距離感知的相關(guān)內(nèi)容。

剛加入公司時,主流的LiDAR感知一般是BEV方案。不過此BEV不是大家熟悉的那個BEV,特斯拉的那個BEV感知我個人認為應該叫作“多視角相機在BEV空間下的融合技術(shù)”,而這里的LiDAR BEV是指將LiDAR點云投影到BEV空間下,然后接2D卷積+2D檢測頭進行目標檢測的方案。我能查到最早關(guān)于BEV方案的記錄是在百度發(fā)表在CVPR17的論文MV3D[1],后續(xù)的大部分工作,包括我所了解的大部分公司實際使用的方案,最后都要投影到BEV空間進行檢測,大致也都可以歸在BEV方案之中。

圖片MV3D[1]使用的BEV視角特征

BEV方案的一大好處是可以直接套用成熟的2D檢測器,但也有一個很致命的缺點:它限制住了感知范圍。從上圖可以看到,因為要套2D檢測器,它必須形成一個2D的feature map,此時就必須給它設(shè)置一個距離閾值,而在上圖范圍之外其實也還是有LiDAR點的,只是被這個截斷操作給丟棄了。那可不可以把這個距離閾值拉大,直到包住所有點呢?硬要這么做也不是不行,只是LiDAR在掃描模式、反射強度(隨距離呈4次方衰減)、遮擋等問題作用下,遠處的點云是非常少的,這么做很不劃算。

BEV方案的這個問題在學術(shù)界并沒有引起關(guān)注,這主要是數(shù)據(jù)集的問題,主流數(shù)據(jù)集的標注范圍通常只有不到80m(nuScenes 50m、KITTI 70m,Waymo 80m),在這個距離下BEV feature map并不需要很大。但工業(yè)界使用的中距離LiDAR普遍已經(jīng)可以做到200m的掃描范圍,而近幾年也有幾款遠距離LiDAR問世,它們可以做到500m的掃描范圍。注意到feature map的面積和計算量是隨距離呈二次方增長的,在BEV方案下,200m的計算量幾乎都無法承受,更不用說500m了。

公開數(shù)據(jù)集中激光雷達的掃描范圍。KITTI(紅點, 70m) vs. Argoverse 2 (藍點, 200m)

在認識到BEV方案的局限之后,我們進行了多年的研究,最終才找到了可行的替代方案。研究過程并非一帆風順,經(jīng)歷了很多次挫折,論文和報告中一般都只會講成功而不會說失敗,但失敗的經(jīng)驗也是彌足珍貴的,所以博客反而成了更好的媒介,下面就按時間線依次講述一下。

二、Point-based方案

CVPR19上,港中文發(fā)表了一篇Point-based檢測器PointRCNN[2],它是直接在點云上進行計算的,點云掃到哪它算到哪,沒有拍BEV的過程,所以這類point-based方案理論上是可以做到遠距離感知的。

但我們試下來發(fā)現(xiàn)了一個問題,KITTI一幀的點云數(shù)量可以降采樣到1.6萬個點來檢測而不怎么掉點,但我們的LiDAR組合一幀有10多萬個點,如果降采樣10倍顯然檢測精度會大幅度受影響。而如果不降采樣的話,在PointRCNN的backbone中甚至有O(n^2)的操作,導致它雖然不拍bev,但計算量仍然無法承受。這些比較耗時的op主要是因為點云本身的無序性,導致不論是降采樣還是檢索鄰域,都必須遍歷所有的點。由于涉及到的op較多且都是沒有經(jīng)過優(yōu)化的標準op,短期內(nèi)感覺也沒有能優(yōu)化到實時的希望,所以這條路線就放棄了。

不過這段研究也并沒有浪費,雖然backbone計算量過大,但它的二階段因為只在前景上進行,所以計算量還是比較小的。把PointRCNN的二階段直接套用在BEV方案的一階段檢測器之后,檢測框的準確度會有一個比較大的提升。在應用過程中我們也發(fā)現(xiàn)了它的一個小問題,解決之后總結(jié)發(fā)表成了一篇文章[3]發(fā)表在了CVPR21上,大家也可以到這篇博客上看看:

王峰:LiDAR R-CNN:一種快速、通用的二階段3D檢測器

三、Range-View方案

在Point-based方案嘗試失敗之后,我們將目光轉(zhuǎn)向了Range View,當年的LiDAR都是機械旋轉(zhuǎn)式的,比如64線激光雷達就會掃描出64行具有不同俯仰角的點云,比如每行都掃描到2048個點的話,就可以形成一張64*2048的range image。

圖片RV、BEV、PV的對比

在Range View下,點云不再是稀疏的形式而是致密地排列在一起,遠距離的目標在range image上只是比較小,但并不會被丟掉,所以理論上也是能檢測到的。

可能是因為與圖像更相似,對于RV的研究其實比BEV還早,我能找到的最早記錄也是來自于百度的論文[4],百度真的是自動駕駛的黃埔軍校啊,不論是RV還是BEV的最早應用都來自于百度。

于是當時我就隨手試了一把,結(jié)果跟BEV方法相比,RV的AP狂掉30-40個點...我發(fā)現(xiàn)其實在2d的range image上檢測得還可以,但輸出出來的3d框效果就非常差了。當時分析RV的特性,感覺它具備圖像的所有劣勢:物體尺度不統(tǒng)一、前背景特征混雜、遠距離目標特征不明顯,但又不具備圖像語義特征豐富的優(yōu)勢,所以當時對這個方案比較悲觀。

因為正式員工畢竟還是要做落地的工作,對于這種探索性問題還是交給實習生比較好。后來招了兩名實習生一起來研究這個問題,在公開數(shù)據(jù)集上一試,果然也是掉了30個點...還好兩位實習生比較給力,通過一系列的努力,還有參考其他論文修正了一些細節(jié)之后,將點數(shù)刷到了跟主流BEV方法差不多的水平,最終論文發(fā)表在了ICCV21上[5]。

雖然點數(shù)刷上來了,但問題并沒有被徹底解決,當時lidar需要多幀融合來提高信噪比的做法已經(jīng)成為共識,遠距離目標因為點數(shù)少,更加需要疊幀來增加信息量。在BEV方案里,多幀融合非常簡單,直接在輸入點云上加上一個時間戳然后多幀疊加起來,整個網(wǎng)路都不用改動就可以漲點,但在RV下變換了很多花樣都沒有得到類似的效果。

并且在這個時候,LiDAR從硬件的技術(shù)方案上也從機械旋轉(zhuǎn)式走向了固態(tài)/半固態(tài)的方式,大部分固態(tài)/半固態(tài)的LiDAR不再能夠形成range image,強行構(gòu)造range image會損失信息,所以這條路徑最終也是被放棄了。

四、Sparse Voxel方案

之前說過Point-based方案的問題在于點云不規(guī)整的排列使得降采樣和鄰域檢索等問題需要遍歷所有點云導致計算量過高,而BEV方案下數(shù)據(jù)規(guī)整了但又有太多空白區(qū)域?qū)е掠嬎懔窟^高。這兩者結(jié)合一下,在有點的地方進行voxelization使其變得規(guī)整,而沒點的地方不進行表達來防止無效計算似乎也是一條可行的路徑,這也就是sparse voxel方案。

因為SECOND[6]的作者閆巖加入了圖森,所以我們在早期就曾經(jīng)嘗試過sparse conv的backbone,但因為spconv并不是一個標準的op,自己實現(xiàn)出來的spconv仍然過慢,不足以實時進行檢測,有時甚至慢于dense conv,所以就暫時擱置了。

后來第一款能掃描500m的LiDAR:Livox Tele15到貨,遠距離LiDAR感知算法迫在眉睫,嘗試了一下BEV的方案實在是代價太高,就又把spconv的方案拿出來試了一下,因為Tele15的fov比較窄,而且在遠處的點云也非常稀疏,所以spconv勉強是可以做到實時的。

但不拍bev的話,檢測頭這塊就不能用2D檢測中比較成熟的anchor或者center assign了,這主要是因為lidar掃描的是物體的表面,中心位置并不一定有點(如下圖所示),沒有點自然也無法assign上前景目標。其實我們在內(nèi)部嘗試了很多種assign方式,這里就不細講公司實際使用的方式了,實習生在之后也嘗試了一種assign方案發(fā)表在了NIPS2022上[7],可以看看他寫的解讀:

明月不諳離苦:全稀疏的3D物體檢測器

但如果要把這個算法應用在向前500m,向后和左右各150m的LiDAR組合下,還是力有不逮。恰好實習生之前追熱度曾經(jīng)也借鑒Swin Transformer的思想做過一篇Sparse Transformer的文章[8],也是費了好大的功夫從掉20多個點一點點刷起來(感謝實習生帶飛,tql),當時覺得Transformer的方法還是很適合不規(guī)整的點云數(shù)據(jù)的,所以在公司數(shù)據(jù)集上也試了一下。

可惜的是,這個方法在公司數(shù)據(jù)集上一直刷不過BEV類方法,差了接近5個點的樣子,現(xiàn)在回想起來可能還是有一些trick或者訓練技巧沒有掌握,按理說Transformer的表達能力是不弱于conv的,但后來也并沒有再繼續(xù)嘗試。不過這個時候已經(jīng)對assign方式進行了優(yōu)化降低了很多計算量,所以就想再嘗試一把spconv,結(jié)果令人驚喜的是,直接把Transformer替換為spconv就可以做到近距離與BEV類方法的精度相當,同時還能檢測遠距離目標的效果了。

也是在這個時候,閆巖同學做出了第二版spconv[9],速度有了大幅度提升,所以計算延遲不再是瓶頸,終于遠距離的LiDAR感知掃清了所有障礙,能夠在車上實時地跑起來了。

后來我們更新了LiDAR排列方式,將掃描范圍提升到了向前500m,向后300m,向左向右各150m,這套算法也運行良好,相信隨著未來算力的不斷提升,計算延遲會越來越不成問題。

下面展示一下最終的遠距離檢測效果,大家也可以看看圖森ai day的視頻的01:08:30左右的位置看一下動態(tài)的檢測效果:

雖然是最終的融合結(jié)果,但因為這天起霧圖像能見度很低,所以結(jié)果基本上都來自于LiDAR感知。

五、后記

從point-based方法,到range image方法,再到基于sparse voxel的Transformer和sparse conv方法,對于遠距離感知的探索不能說是一帆風順,簡直就是滿路荊棘。最后其實也是隨著算力的不斷提升加上很多同事的不斷努力才做到了今天這一步。在此感謝圖森首席科學家王乃巖和圖森的各位同事、實習生們,這里面大部分的idea和工程實現(xiàn)都不是我做出來的,很慚愧,更多地是起到了承上啟下的作用。

很長時間不寫這么長的文章了,寫得跟個流水賬似的而沒有形成一個動聽的故事。近年來,堅持做L4的同行越來越少,L2的同行們也逐漸轉(zhuǎn)向純視覺的研究,LiDAR感知肉眼可見地逐步被邊緣化,雖然我仍然堅信多一種直接測距的傳感器是更好的選擇,但業(yè)內(nèi)人士似乎越來越不這么認為。看著新鮮血液們的簡歷上越來越多的BEV、Occupancy,不知道LiDAR感知還能再堅持多久,我又能堅持多久,寫這么一篇文章也是起到一個紀念作用吧。

深夜涕零,不知所云,見諒。

責任編輯:張燕妮 來源: 自動駕駛之心
相關(guān)推薦

2024-02-19 10:29:24

模型駕駛

2010-04-15 16:38:48

遠距離無線局域網(wǎng)

2009-07-09 22:07:05

802.11n無線路由超遠距離傳輸51CTO評測

2009-03-09 09:27:00

網(wǎng)橋無線局域網(wǎng)

2010-07-29 14:42:09

路由器

2024-07-17 10:30:00

2011-09-26 10:29:39

VXLANVM

2015-07-07 09:59:24

光纖光通信

2011-03-04 09:40:04

虛擬化數(shù)據(jù)中心實時遷移

2023-12-06 14:35:34

2012-05-10 09:59:02

動態(tài)數(shù)據(jù)中心云計算

2013-06-28 15:29:03

2014-08-11 10:27:10

光纖

2024-06-28 09:20:29

2009-03-31 16:29:08

光傳輸測試北電

2020-07-14 10:15:50

物聯(lián)網(wǎng)智慧城市技術(shù)

2023-10-17 19:43:46

NEC

2021-11-16 15:25:05

物聯(lián)網(wǎng)IOTWi-Fi

2023-10-31 09:33:24

地圖自動駕駛

2022-02-25 23:42:12

谷歌3D檢測
點贊
收藏

51CTO技術(shù)棧公眾號