天天看點

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

随着雷射雷達在機器人,無人車的領域的推廣應用,三維點雲的相關處理技術作為高精地圖、高精定位、環境檢測等方向的核心子產品越來越受到重視。現有的在點雲中定位物體的單階段檢測器通常将物體定位和類别分類視為分開的任務,是以定位精度和分類置信度可能無法很好地對齊。《SFFAI97期三維點雲檢測專題》我們邀請到了來自香港中文大學的鄭武同學,分享他提出的新型檢測方法,解決此問題。

關注文章公衆号

對話框回複"SFFAI97"

入交流群/推薦論文下載下傳/錄播視訊觀看/講者PPT下載下傳

鄭武,香港中文大學二年級博士研究所學生,大學畢業于清華大學自動化系,主要研究方向是自動駕駛場景下基于點雲的三維物體檢測。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

很高興在這裡和大家分享一下我們最新的工作:CIA-SSD,自信的IoU可知的單階點雲物體檢測器,這份工作已經被AAAI 2021接收。這份工作是我和兩位大學實習生Weiliang Tang & Sijin Chen,我的師姐Li Jiang,在Chi-WingFu教授的指導下完成的。

論文:https://arxiv.org/abs/2012.03015

代碼:https://github.com/Vegeta2020/CIA-SSD

今天的報告主要分為5個部分,分别是背景介紹,研究動機,研究方法,實驗結果,以及最後總結。

01

背景介紹

我們這份工作要完成的任務是自動駕駛場景下基于點雲的三維物體檢測。三維物體檢測能夠為自動駕駛的車輛提供最基本也是最重要的環境感覺資訊,包括行駛道路中的其他車輛和人員的相對位置,這可以為車輛行駛的規劃和控制提供關鍵資訊,進而確定自身和他人的安全。在圖1右邊的圖檔中,我們給出了三維物體檢測的樣例,大家可以看到RGB圖檔中的車輛都被三維矩形框精确地框出來,是以獲得物體的三維坐标,長寬高和水準面的旋轉角,就是我們要完成的三維檢測任務。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 1

目前,三維物體檢測仍然是一個具有挑戰性的任務。首先展現在檢測精度仍然有待提升,目前精度最高的一類方法主要是基于點雲的檢測器,我們的CIA-SSD也是采用的點雲作為輸入資料。相比于RGB圖檔作為感覺資料,點雲往往更加魯棒,特别是在霧天或者夜晚,點雲依然能夠提供精确地物體三維坐标,而RGB圖檔在這些情形中則很難通過像素确定物體位置。另外,點雲的特性使得研究者可以快速地擷取物體深度資訊,這對于RGB圖檔來說則是一個難題。是以,相比于基于RGB圖檔的檢測器,采用點雲的檢測器往往能夠獲得更高的精度。

我們在圖2中對近兩年的三維檢測器的性能進行了比較。正如二維檢測器一樣,三維檢測器也可以分為單階和二階檢測器,差別主要在于是否利用第一階網絡生成的region proposal來提取特征,進而對物體的位置和置信度做進一步的refine。

從圖2中,大家可以看到,2019年的時候,精度最高的二階檢測器STD大幅領先于當時性能最好的單階檢測器PointPillar。但是進入到2020年,以SA-SSD和3DSSD為代表的單階檢測器在精度上獲得大幅提升,并且逐漸逼近了二階檢測器,包括目前最優的二階檢測器PV-RCNN, 3D-CVF,是以單階和二階檢測器的精度差距在逐漸縮小。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 2

與此同時,檢測速度和精度一樣,也是三維檢測器的重要衡量名額,因為速度決定了檢測器是否能夠應用到實際場景中去。由于單階檢測器往往具備更加簡單的網絡結構,是以它的檢測速度往往更高,正如圖2中所示,紅線左側都是單階檢測器,右側都是二階檢測器,是以單階檢測器的推理時間往往更短。

是以,高效率和快速增長的精度這兩個優勢,驅使我們提出了一個新的單階檢測器CIA-SSD,可以看到,我們的CIA-SSD位于圖2的左上角,它在單階檢測器中具備有最高的精度,同時具備有實時檢測的速度。

02

研究動機

我們的主要動機是基于檢測任務中的一個普遍挑戰,即分類置信度和定位精度之間的不對齊問題,或者直接說置信度與real IoU間的不對齊問題,這裡的real IoU是指網絡預測和真實邊界框的IoU。最理想的對齊情形是指confidence和realIoU完全成正比,我們曾經做過一個簡單的實驗,就是把real IoU作為confidence去測averageprecision,我們發現在KITTI驗證集上可以達到90%以上的精度,是以bounding box回歸不夠準确并不一定是性能無法提升的主要障礙。相反,這個主要障礙是置信度和real IoU之間的不對齊。

圖3中展示了一個不對齊的樣例,我在每個預測的bounding box旁邊給出了confidence和realIoU, 可以看到兩個紅色框的樣本,置信度更高的為0.94的預測樣本反而real IoU更低,隻有0.81,這就說明了不對齊問題。在圖3右邊的圖中,我們給出了驗證集中預測框的IoU和confidence的統計散點圖,可以看出,有大量的樣本是不對齊的。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 3

為了緩解這個不對齊問題,我們提出了IoU可知的置信度校正子產品。我們通過利用單階檢測器來預測真實框和預測框之間的IoU,然後用這個預測的IoU來校正已有的分類得分,進而緩解不對齊問題。一般來說,由于軟的IoU目标相比于one-hot的分類目标,能夠促使網絡預測出和定位精度更加一緻的置信度,是以用預測的IoU作為置信度成為二階檢測器提升性能的一個重要方法。在二階檢測器中,它們通過提取region proposal的特征,可以預測到非常準确的IoU來作為置信度。但是單階檢測器的特征都是和anchor對齊的,是以很難得到準确的IoU預測值。盡管如此,我們發現基于anchor特征預測的IoU依然是和Real IoU大緻成正比的,當我們用一個幂函數對預測IoU進行編碼後,這種相關性得到了進一步加強,這個發現為我們在單階檢測器中校正置信度創造了可能性。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 4

除此之外,我們還提出了一個輕量的空間語義特征聚合子產品。之前的方法中,BEV的特征提取往往都是采用幾層直接疊加的卷積層,我們認為這種網絡結構雖然可以提取到較好的高層語義特征,但是容易忽略掉淺層的空間特征,導緻檢測精度無法有效提升。我們知道,空間特征對于精确地定位物體很重要,高層語義特征則對于判斷樣本的正負性比較重要。是以,我們采用淺層卷積層擷取空間特征,再采用高層卷積層擷取語義特征,最後則采用attention子產品對這兩類特征進行融合,進而有效提升檢測精度。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 5

最後,我們提出了距離可變的IoU權重NMS用于後處理,據我們所知,這是第一個考慮深度資訊的NMS方法,因為2D檢測中是不需要考慮深度資訊的,我們提出這個NMS方法,是為了擷取更加平滑的回歸邊界框,并且更有效得移除備援的邊界框,特别是false positive的邊界框。

03

研究方法

圖6是我們CIA-SSD的pipeline,可以看出,整個架構由5個部分組成,其中part (c)-(e)是我們設計的部分。下面我對每個部分分别進行介紹。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 6

其中,對于part (a) ,我們遵循正常的設定對點雲資料進行預處理,主要包括一些常用的資料增強方法;對于part(b), 我們則采用稀疏卷積層來提取體素的三維特征,具體網絡結構可以參考我們的論文。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 7

接下來我将介紹part(c)和(d),也就是我們的空間語義特征聚合子產品。正如之前所介紹的,在物體檢測中,低級空間特征對于回歸物體的精确位置很重要,而進階語義特征對于對正樣本/負樣本的準确分類很重要。是以,在part(c)中,我們采用兩個卷積組,即淺層的空間卷積組(紅色标記的)和深層的語義卷積組(綠色标記的)分别來提取這兩種特征,其中語義卷積組的特征channel增加為空間卷積組的2倍,但是spatial size則縮小了1/4,這樣做的好處是,一方面有利于提取更加抽象的語義特征,另一方面可以降低卷積的計算量。

此後,為了将兩種特征進行融合,我們首先用解卷積來恢複語義特征的spatial size, 并和空間特征做逐像素相加,進而豐富空間特征的語義資訊,得到了富語義的空間特征(藍色标記的)。我們同時用另外一層解卷積來恢複語義特征的spatial size,得到放大的語義特征(黃色标記的)。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 8

最後,我們在part(d)中采用attentional fusion來自适應地融合(藍色的)富語義空間特征和(黃色的)放大的語義特征。我們首先用卷積層分别計算了兩個特征的attention mask,這兩個卷積層的卷積核是1x1,輸出的channel是1,是以可以了解為兩個全連接配接層,它們的計算量也很小。然後,我們對這兩個attention mask在每個位置做softmax,進而得到featuremap的兩組權重, 這兩組權重在每個位置的和都是1。最後我們将這兩組權重分别和對應的特征做權重,再将權重的特征逐像素相加,得到最後的BEV特征。

我們說這個空間語義聚合子產品是輕量的,是因為相比于SA-SSD的BEV網絡結構,計算量大概是60%,雖然我們的卷積層更多,但是絕大部分的channel數量128,而SA-SSD的channel數量都是256,我們隻有語義卷積層的channel是256,但是它的spatialsize是SA-SSD的1/4,是以總的計算量隻占6成左右。另外,即使相比于SECOND中channel隻有128的BEV網絡結構,我們增加的複雜度也是很少的。

最後,我想說的是的SSFA子產品所提取的BEV特征是非常魯棒的,對于提升BEV檢測性能和小物體檢測效果都是明顯的,這是論文中沒有展現的,是以我在這裡補充一下。

Part(e)是一個多任務檢測頭,它包括有bounding box的正負性分類,bounding box的IoU回歸,boundingbox自身的回歸,以及bounding box方向的分類。相比于正常的檢測器,我們在這裡僅僅增加了bounding box的IoU回歸。基于這個預測的IoU,我們設計了一個置信度函數來校正分類得分。而基于校正後的置信度,我們進一步設計了DI-NMS來對預測的bounding box進行後處理。接下來,我們将分别介紹置信度校正子產品和DI-NMS子產品。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 9

我們的置信度校正子產品稱為IoU可知的置信度校正子產品。首先,我們對單階檢測器在KITTI驗證集上所預測的IoU進行了統計分析,從圖10(a)中可以看到,預測的IoU和真實的IoU并不完全比對,而且當real IoU偏低時,它所對應的預測IoU具有較大的标準差,也就是說它有一個較大的震蕩區間,這種現象是容易解釋的,比如,當anchor特征能夠生成一個非常精準的預測框時,那麼它應該包含了足夠的位置資訊,因而所預測的IoU應該較大并且震蕩很小;相反,如果anchor遠離檢測目标,那麼它很難包含充分的物體位置資訊,進而容易生成較低的預測IoU,并且這種預測是不準确的,因而容易有較大偏差。

盡管如此,我們還是可以看到real IoU和真實的IoU依然是大緻成正比的。為了抑制低IoU預測值的震蕩,并增加高IoU和低IoU預測值之間的差距,我們用幂函數對預測的IoU進行編碼。正如圖10(b)所示,當我們求取預測IoU的四次方時,低IoU預測值的震蕩區間變小,并且高IoU和低IoU預測值之間的差距則增大,使得預測IoU和真實IoU之間的相關新更強了。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 10

當我們直接使用預測IoU或者它的幂函數作為置信度時,相比于采用分類得分作為置信度,精度并不能提升。為了利用預測IoU和真實IoU之間的相關性,我們用預測IoU來校正分類得分:即将預測IoU的多次方和分類得分相乘,來獲得校正後的置信度。是以,我們的IoU可知的校正子產品實際上就是一個簡單的校正函數,稱為置信度函數。其中c是分類得分,i是預測的IoU,常數beta是一個超參數。需要注意的是,有一種質疑是我們的校正子產品和Focal Loss很像,在這裡我們需要澄清,我們的置信度校正隻是一個後處理技術,隻在測試時使用,并不參與網絡訓練,并且二者的motivation也完全不同。

最後,我在這裡給出不同beta值下的moderate AP和真實IoU與校正後的置信度間的皮爾森相關系數。可以看到,當beta值設為4的時候,皮爾森相關系數達到峰值,對應的精度也達到峰值,證明了我們這個子產品的有效性。

總的來說,我們的校正子產品非常易于實作,隻是在多任務頭中添加了一個卷積層來預測IoU,在測試時也隻需要做一個乘法和幂函數計算,相比于SA-SSD中的PSWarp校正子產品,我們的方法明顯是更加簡單并且易于實作的。

在我們完成置信度校正後,我們又設計了可變距的IoU權重NMS對預測框進行後處理。我們觀察到,近距離的預測框通常比較準确,因為點雲非常密集,能夠提供非常充分的物體位置資訊;而遠處的預測框則容易出現偏差,因為點雲非常稀疏,特别是在預測框的方向上,容易出現左右搖擺。是以距離是一個影響預測結果的重要因素,是以,為了獲得更加平滑的預測框,我們将距離因素sigma考慮進了我們的NMS方法。在我們算法的第8步中,我們設定sigma和物體離原點距離是成正比的,是以,在我們的高斯權重平均中,我們首先選出置信度最高的預測框,在這個預測框離原點較近時,那些同它具有較大IoU的其他預測框将會配置設定明顯較高的權重,這是因為近距離情形下的預測框相對更加準确,是以我們應該給與他們更高的權重;相反,當這個置信度最高的預測框離原點較遠時,與之具有不同IoU的其他預測框都會配置設定相對均勻的權重,因為遠距離預測框精度不高,通過這種相對均勻權重有利于獲得平滑的結果,特别是對那些方向上出現左右搖擺的預測框非常有效。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 11

此外,我們還觀察到,有一些anchor被錯誤的激活了,去回歸一些與車輛具有相似特征的物體,比如牆壁、花壇等等,因為它們可能具備和汽車相似的棱角和高度特征。但是這些物體和真實的檢測目标仍然是有差距的,是以被錯誤激活的anchor數量通常比較少,是以我們在第7步中求取了一個累加和,在第10步中,我們用一個簡單的門檻值進行過濾,這種方法就有效的過濾掉了一部分false positives。

這就是我們DI-NMS方法的兩個考慮因素和設計方法,在3D NMS領域,我們提出的DI-NMS應該是對3D NMS方法改進的第一次嘗試。

我們這裡還給出了一個效果說明圖,圖12原本是比較CIA-SSD和SA-SSD的檢測效果,但是也能用來說明我們DI-NMS的效果。第一張圖是RGB的正視圖,第二張和第三張分别是SA-SSD和CIA-SSD點雲檢測的側視圖,一方面我們可以看到左邊的三個檢測框,由于DI-NMS可以獲得更加平滑的結果,是以我們所預測的綠色檢測框能夠和真實的紅色框更好的對齊;另一方面,DI-NMS能夠有效抑制遠距離的False Positive,是以SA-SSD誤檢到的最右端的綠色檢測框,我們的CIA-SSD有效的過濾掉了。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 12

04

實驗結果

我們的實驗主要是在KITTI資料集汽車類别上進行的。KITTI資料集是自動駕駛領域三維物體檢測的經典資料集,目前它的檢測精度仍然有較大的提升空間;汽車類别是KITTI中最重要的檢測類别,也是樣本數量最大的類别,是以在汽車類别上的檢測精度是評估模型的關鍵尺度。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 13

我們首先給出了在KITTI測試集上汽車類别的Easy/Moderate/HardAP,其中ModerateAP是所有方法的排名尺度。從這張表中,可以看到我們的CIA-SSD成為了state-of-the-art的單階檢測器,它領先于之前的SA-SSD接近0.5個點,并且也超越了除PV-RCNN之外的所有二階檢測器。

除了精度,我們的檢測速度也得到了提升。例如,相比于之前精度最高的單階檢測器SA-SSD,我們的推理時間下降了1/4;而相比于之前速度最高的單階檢測器TANet,我們的CIA-SSD仍然更快,并且精度更高。和二階檢測器相比,我們的推理時間至少減少了1/2,并且精度超越了絕大部分的二階檢測器。

這裡我們給出了最新的單階檢測器的精度和推理速度的散點圖。可以看到,我們的CIA-SSD位于圖14的左上方,意味着它同時具備有更高的精度和速度。從速度上來看,僅有CIA-SSD和PointPillar達到了實時檢測的速度,也就是超過了30 FPS的門檻值。我們的CIA-SSD在速度上僅次于PointPillar,但是在精度上卻大幅領先。是以,總的來說,CIA-SSD具備有更高的實用價值。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 14

下面,我們對運作時間做進一步分析。CIA-SSD的運作時間30.76ms,是通過計算模型在整個驗證集上運作的總時間,再除以驗證集樣本數,進而得到單個樣本的推理時間。這個單樣本的推理時間,包括2.84ms的資料預處理時間,24.33ms的網絡推理時間,以及3.59ms的後處理時間。資料預處理時間指的是資料傳進網絡之前的時間,包括載入資料,資料增強,體素化等等;網絡推理時間是指從讀入資料到多任務檢測頭輸出結果所耗費的時間;後處理是指從拿到多任務檢測頭的輸出,到産生最終的結果所耗費的時間。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 15

盡管CIA-SSD和SA-SSD都是建立在SECOND網絡基礎上,但是CIA-SSD的運作時間相比SA-SSD下降了約1/4。一方面是因為我們的BEV網絡,也就是空間語義特征聚合子產品複雜度更低;另一方面是因為,我們對代碼進行了很多優化,其中效果最明顯的地方在于體素化這一部分。

接下來我們介紹消融學習的結果。我們的CIA-SSD主要由3個子產品構成,分别是SSFA,CF,和DI-NMS,從表中可以看到,三個子產品對精度的增長都有所貢獻,證明了三個子產品都是非常有效的,特别是其中CF子產品,也就是置信度校正,方法非常簡單,但是對性能的提升非常明顯,是以證明了我們的研究動機和研究方法都是得當的。然後,我們所提出的三個子產品都是即插即用的,并且易于實作,是以很容易嵌入到其他架構中,具有較高的可拓展性。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 16

這裡我們給出了一些可視化的檢測結果(見圖17),一共包括6個場景,每個場景中的紅色框是ground truth, 綠色框是CIA-SSD的檢測結果。從這些結果中可以看到,我們的CIA-SSD對于近點、遠點、不同旋轉角和不同物體密度的情形下,都成得到較高的檢測精度。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 17

05

總結

總的來說,我們這份工作的貢獻可以分為三點,第一,是我們提出了一種IoU可知的置信度校正子產品,這個子產品非常高效并易于實作,可以有效提升單階檢測器的精度;第二,我們提出了空間語義特征聚合子產品,這是一個輕量的BEV特征提取子產品,可以提取魯棒的BEV特征,提升檢測器精度;第三,我們提出了可變距離的IoU權重NMS方法用于後處理,可以獲得更加平滑的預測框,并減少False Positive的數量。

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

圖 18

基于這三點,我們的CIA-SSD在三維單階點雲檢測器中獲得了最高的精度,并且取得了非常高的推理速度。

SFFAI招募!

【SFFAI分享】鄭武:CIA-SSD:自信的IoU可知的單階點雲物體檢測器【附PPT與視訊資料】

現代科學技術高度社會化,在科學理論與技術方法上更加趨向綜合與統一,為了滿足人工智能不同領域研究者互相交流、彼此啟發的需求,我們發起了SFFAI這個公益活動。SFFAI每周舉行一期線下活動,邀請一線科研人員分享、讨論人工智能各個領域的前沿思想和最新成果,使專注于各個細分領域的研究者開拓視野、觸類旁通。