CVPR2020:4D點雲語義分割網絡(SpSequenceNet)
SpSequenceNet: Semantic Segmentation Network on 4D Point Clouds
論文地址:
摘要
點雲在許多應用中非常有用,比如自動駕駛和機器人技術,因為它們提供周圍環境的自然三維信息。雖然對三維點雲有着廣泛的研究,但是對於一系列連續的三維點雲框架的4D點雲場景理解是一個新興的課題,但尚未得到充分的研究。利用4D點雲(3D點雲視頻),機器人系統可以利用先前幀的時間信息來增強其魯棒性。然而,現有的4D點雲語義分割方法由於其網絡結構中的時空信息丟失,導致分割精度不高。本文提出SpSequenceNet來解決這個問題。該網絡基於三維稀疏卷積進行設計。我們引入了兩個新的模塊:跨幀全局注意模塊和跨幀局部插值模塊,來捕捉4D點雲中的時空信息。我們在SemanticKITTI上進行了大量的實驗,在mIoU上獲得了43.1%的最新結果,比之前的最佳方法提高了1.5%。
1.介紹
場景理解是計算機視覺中的一個基本問題。對於在現實世界中工作的自動駕駛汽車和機器人系統,場景理解的性能和魯棒性至關重要,因為錯誤的決策可能會導致致命的事故。研究人員正試圖利用更多的信息來提高性能和健壯性。由激光雷達或深度相機采集的三維點雲提供了比二維圖像更多的自然幾何信息。此外,汽車和機器人總是在一段時間內連續工作,因此環境不斷變化。在這個約束下,系統可以利用來自先前時間戳的時間信息作為提示和限制。語義分割是場景理解中的一項基本任務。在二維圖像上,任務是一個每像素分類問題,它為圖像中的每個像素分配相應的類別。受FCN[13]的啟發,在這一領域取得了巨大的成就,如Deeplab V3+[3]、Re-finenet[12]和PSPNet[27]。同時,基於圖像語義分割開發了許多任務,如點雲分割、視頻分割等。我們的工作將點雲語義分割和視頻語義分割結合起來,提高了場景理解的性能。4D語義分割是一個更具挑戰性的任務,因為它同時涉及空間和時間信息。4D數據集具有豐富的現實世界信息。SemanticKITTI[2](圖1)是最大的4D點雲數據集之一,總共包含約44000個點雲幀。SemanticKITTI基線法將4D語義分割簡化為3D語義分割,將多個點雲框架合並為一個點雲,並對轉換后的三維點雲應用三維分割方法。在多個點雲幀的合並過程中,會造成時空信息的丟失。為了解決這一問題,我們提出了SpSequenceNet對4D點雲數據進行三維立方體形式的操作,減少了空間信息的損失。同時,我們設計了一個跨幀全局注意模塊和一個新的交叉幀局部插值模塊來提取不同幀的時間特征。我們在SemanticKITTI上評估我們的網絡[2]。主要貢獻如下:
我們設計了一個網絡SpSequenceNet,直接從4D點雲(3D點雲視頻)中獲取時空信息,進行語義分割。
•我們引入跨幀全局注意(CGA)模塊,從先前的點雲幀生成一個全局掩碼,並將生成的掩碼用於當前點雲幀的分割。
•我們提出了交叉幀局部插值(CLI)來融合兩個點雲幀之間的信息。它將時空信息結合起來,提高了語義分割的質量。
•我們在SemanticKITTI[2]上獲得了最新的結果,比現有方法高出1.5%。
2.相關工作
目前,關於4D語義分割的研究還很少。4D語義分割需要網絡同時提取空間信息和時間信息。因此,我們將4D語義分割任務分為兩個子任務,即三維語義分割中的空間感知和時間感知,這是一個值得探索的新領域。我們將在下面幾節討論這兩個相關的部分。
2.1.三維語義分割
深度傳感器收集點雲,以反映真實世界中物體的形狀。點雲語義挖掘的困境在於點雲數據的稀疏性和無序性。在以往的研究中,傳統的三維卷積[20]使用密集計算,復雜度達到O(n3)。點雲的稀疏性導致三維計算量大、資源浪費大卷積。所以在點雲數據處理方面做了大量的工作,但在點雲數據的利用上還存在許多分歧。一般來說,點雲的處理方法主要有三種:投影法、點網法和三維卷積法。首先,基於投影的方法是二維語義分割的擴展[24,25,23]。這些方法執行投影,通常是球面投影,將三維點變換到曲面上。然后,在投影面上應用圖像語義分割網絡。基於投影的方法達到了實時性要求(squezeseg[24]達到13.5ms/幀),而基於投影的方法的最終性能通常低於其他方法。類似點網的方法是從新的結構PointNet[15]發展而來的。這一系列方法直接對原始點雲數據進行操作,並將點的坐標和RGB特征作為輸入特征。然后分別對網絡上的每個共享點生成MLP預測。性能受到限制,因為它降低了局部空間關系。PointNet++[16]限制一個小區域來提取局部空間關系。PointCNN[11]重新定義了一種使用MLP和鄰域權重的卷積運算,以獲得靈活的局部空間信息。KPConv[21]應用了更靈活的鄰居機制,並在類似點網的方法中獲得了最先進的性能。點態CNN[9]使用帶體素的核權重來組合局部信息。KPConv[21]后面是PointCNN和PCNN,在類似PointNet的方法中獲得了最先進的性能。
最后一種方法是三維卷積網絡。如本節開頭所述,3D卷積的計算消耗很高。這方面的主要研究集中在有效性方面。在OctNet[17]中,加入八叉樹結構來表示3D空間,並引導網絡進行卷積。許多著作[18,6]都是基於這種方法發展起來的。它們將點雲數據組織成立方體,並用八叉樹、Kdtree等索引,這樣就可以很容易地使用該索引進行卷積。此外,基於稀疏3D卷積的方法[8,4]只沿着輸入中的活動體素執行3D卷積。稀疏三維卷積可以加速卷積運算,並與密集卷積共享知識庫。
2.2.4D時間特征提取
4D時間特征提取主要是對時間序列中的信息進行挖掘。最近的一項研究是Minkowski卷積神經網絡(MinkowskiNet)[4]。它將卷積函數從二維推廣到四維,使得深度神經網絡的理論無論維數如何都是共享的。4D MinkowskiNet缺乏可擴展性,因為計算量隨着點和幀的增加而迅速增加。除了語義分割外,還有一些關於4D時間特征提取的研究。在STCNN[28]中,一個3D U-Net和一個用於時間信息的一維編碼器被注冊來自動編碼大腦功能磁共振成像圖像。STCNN在自動編碼器上定位視覺,具有4D時間特征,不能推廣到語義分割任務中。OpenPose[10]專注於用4D點雲跟蹤人類姿勢的任務。它利用四維空間數據,通過人體檢測和二維回歸,實時檢測人手位置。PointFlowNet[1]基於類似點網的方法,融合了t幀和t-1幀的兩個特征來推斷每個點的運動。然后,設計不同的損失來提取自我運動。總的來說,在分割任務中直接操縱4D點雲的方法很少。因此,我們也從視頻語義分割方法中探索一些思路。MaskTrack和網絡調制[14,26]使用來自最后一幀的信息和預測來指導當前預測。
3.稀疏序列網絡
我們在圖2中展示了我們提出的模型結構。一般來說,4D點雲分割的問題設置與普通的三維語義分割相似。我們以RGB-D相機(r,g,b)和激光雷達(r)兩個源建立了數據集。注意,我們以每個點的坐標(x,y,z)和點特征fi,t作為模型輸入,其尺寸為(x,y,z,3)(RGB-D)或(x,y,z,1)(激光雷達)。
3.1.網絡體系結構概述
我們的網絡是基於三維卷積,它利用體素方法。我們用兩個3D張量Pt和Pt−1來預測標簽pi,t。該網絡的設計遵循U-net的風格,由子流形稀疏卷積網絡(SSCN)實現[7]。為了平衡訓練和推理的速度和性能,我們對主干網進行了一些修改。具體地說,在SSCN的原始版本中,有七個編碼器塊具有到反褶積塊的跳過路徑,這形成了一個對稱的結構。但是對稱設計存在着表示能力有限、計算量大等缺點。因此,我們減少了跳過路徑的數量。此外,我們在編碼器中加入了一些塊,目的是提高表達能力和調整網絡。解碼器是流線型的,包含跳躍路徑的減少。在構建了模型之后,下一步是構建塊來融合來自不同幀的信息。在編碼器階段,我們的網絡通過兩個不同的分支接收Pt和Pt−1。如圖2所示。為了構建更好的融合特征,我們將信息分為全局信息和局部信息兩部分。首先,針對全局信息設計了跨框架全局注意模塊。一般來說,在不同的階段有幾個跨框架的全局注意模塊。跨幀全局注意模塊對特征進行選擇,使主干網更關注關鍵特征。第二,交叉幀局部插值側重於局部信息,用於融合編碼器端部Pt−1和Pt的信息。
3.2.跨框架全局關注
如上所述,我們使用跨框架全局注意(CGA)模塊提取時間全局語義。我們在圖3中展示了一個關於交叉幀全局注意力模塊的簡單解釋。受自我注意機制的啟發,我們設計了跨幀全局注意模塊來生成當前幀Pt的掩模。掩模包含關於Pt−1特征的外觀信息。為了突出特征Ft的關鍵部分和抑制無關特征,cross-frame全局注意力模塊利用t-1的外觀信息來指導模型。全局語義分布到特征的各個層次。選取跳轉路徑中涉及的層,應用交叉幀全局注意。它降低了計算復雜度,提高了精度。
3.3.交叉幀局部插值
在編碼階段的最后,我們設計了一個跨幀局部內插(CLI)模塊,實現了對兩個點雲幀之間的時間信息的局部融合。光流方法[22,29]使用來自兩個不同幀的最近像素來生成局部光流並獲得顯著的性能。受這些方法的啟發,設計了交叉幀局部插值來提取點雲Pt−1和Pt之間的部分差異。交叉幀局部插值的基本思想是
如圖5所示,這是為了尋找k個最近鄰並生成一個新的局部特征來幫助模型融合時間信息。同時,交叉幀局部插值法總結了最近點的面積,並將空間信息與所選點的特征相融合。




4.實驗測試
基線
結果見表1。SemanticKITTI中的基線是TangentConv[19]和DarkNet53Seg。他們將坐標系從Pt−4調整到Pt−1,並將所有幀合並為一個點雲作為輸入。TangentConv是一種類似點網的方法,而DarkNet53Seg是一種基於投影的方法。
主干網+CGA+CLI。結構如圖2所示。該網絡包括主干網、跨幀全局注意和跨幀局部插值,利用前3個最近鄰生成區域特征。我們的網絡使用DarkNet53Seg實現+1.5%的mIoU,使用主干網達到+1.2%mIoU。綜上所述,與表1中的其他高級方法相比,我們提出的方法對小目標和大靜態對象的運動更為敏感,而對移動的大對象不敏感。這種現象是由我們提出的方法的特點造成的。具體地說,在所提出的網絡中,它檢測同一個體素系統中的特征在t−1和t之間的移動。當物體移動時,小物體的面積有顯著的變化,而大物體的面積變化不大。
將原始SpSequenceNet的多幀預測重新組織為兩個輸出:單幀預測和運動狀態。將靜態目標和運動狀態相結合,生成運動目標。重組預測的輸出在表3中稱為重組預測。結果見表3。首先,我們的網絡具有改進語義切分的能力。多頭網絡的mIoU改善率達到1.6%,重組預測的mIoU改善率為2.7%,而骨干網的mIoU改善率為54.4%。之后,與重組后的預測結果相比,多頭網絡的運動狀態改善了2%,但單幀任務的運動狀態下降了1.1%,這表明如果模型直接將運動狀態納入訓練對象中,將不利於目標的表示能力。
SpSequenceNet的有效性
我們在圖6中展示了一個可視化的比較。對於主干網,我們可以將圖6b與圖6c進行比較,發現圖6b紅色框內的區域不整潔。具體而言,圖6b代表了普通主干網。在圖6c中,前面提到的區域比較單一。因此,交叉幀全局注意和交叉幀局部插值提高了結果的平滑度。跨框架全球關注。如表1所示,跨框架全球注意力的提高具有重要意義。具體地說,交叉幀全局關注增強了香草主干在某些類中的性能,因為它有助於主干更好地跟蹤小對象。上k交叉幀局部插值。我們從最后一幀Pt−1中選取K個最近鄰點作為當前幀的pi,t,生成交叉幀局部插值的特征。我們用前1、3和5個最近鄰對模型進行交叉幀局部插值訓練,在下一部分中稱為top k CLI。對於top1cli和top3cli,我們將結果提交給SemanticKITTI進行測試。結果表明,top1cli導致mIoU下降,與預期一致。表1中top 1cli的精度甚至比backbone+CGA還要差。對於邊界上的點,具有相同正確標簽的最近點的可能性很低,導致下降6%。同時,前3名CLI的結果達到了最先進的水平。最后,這里不顯示前5個CLI的結果,因為每個時段的驗證性能都與前3個CLI相似。top 5 CLI的性能與top 3 CLI相似。因此,無需提交試驗結果。根據計算量的增加,3個最近鄰點適合於交叉幀局部插值。



