點擊上方“3D視覺工坊”,選擇“星標”
乾貨第一時間送達
一、摘要
本文提出了一個簡單高效的新型3D點雲實例分割框架3D-BoNet,核心思想是逐點多層感知(MLP)。該框架直接預測3D邊框,同時預測邊框內各個點的二分標誌,即判斷它是屬於物體還是屬於背景。對應這兩個功能,它有兩個組成部分,一是3D邊框預測網絡,二是框內點分類網絡。3D-BoNet不僅是單階段、無錨點、端到端的系統,而且相比於傳統思路效率大幅度提高,因爲它不需要非極大值抑制(NMS)、特徵採樣、聚類、投票等後處理操作。在數據集ScanNet 和 S3DIS上的結果顯示,本文提出的方法可以有十倍的速度提升。
二、主要算法
1、主要思路
本文主要是針對傳統方法的缺點,提出了一種全新的架構,因此要理解本文的思路,就需要先對傳統方法做一些分析。
3D點雲實例分割在此之前主要有兩類,第一類是基於候選目標框的算法(Proposal-based methods),這類方法通常先生成大量的候選框,然後依賴於兩階段的訓練和昂貴的非極大值抑制等操作來對密集的候選框進行選擇,缺點自然是運算量特別大。第二類是無候選目標框的算法(Proposal-free methods),這類方法的核心思想是爲每個點學習一個分類,然後再通過聚類方法來將屬於同一個實例的點聚集到一起,缺點最終聚類到一起的實例目標性比較差,而且後處理步驟的時間成本也比較高。
明確了傳統方法的缺陷,以及造成缺陷的原因,那麼改進的思路就自然浮出來了,也就是本文的核心思路。首先不使用候選框,但爲了提高目標性,不能放棄邊界框,所以可以直接預測邊界框,這帶來一個問題,就是怎樣訓練,也就是怎樣把預測的邊界框和真值對比,作者爲了解決這個問題,就設計了一種邊界框關聯的方法,把預測和真值關聯在一起,完成關聯,後續的損失值設計等步驟就好做了。最後再對迴歸的邊界框內的點做一個二分類,把背景點去掉,就可以得到實例分割的結果了。
2、算法實現
按照上面的思路分析,我們把思路變成每一步具體的步驟就可以了 。
首先看整體框架,如下圖所示。
從上圖可以看出,得到點雲之後,首先提取全局特徵,直接使用這個全局特徵來預測邊界框。與此同時,提取點的特徵,待邊界框迴歸結束以後,某些點就會落入對應的框中,這樣就可以進行二值分類,分割出實例目標。
爲了更詳細地瞭解框架內部工作流程,作者還提供了另外一張圖,如下圖所示。
從框架流程圖裏,我們可以明確地看到之前提到的邊界框的關聯,因爲這個關聯的需求是本文提出的框架所帶來的新問題,也是本文的核心內容,所以作者爲了解釋清楚,專門爲這個模塊繪製了一張圖。
從上圖就可以非常詳細地看到這個模塊的流程了,梳理一下,大致可以分爲以下幾步:
1)分配預測框給最近的真值框
2)計算頂點之間的歐式距離、交併比、交叉熵
3)計算損失函數
4)反向估計
完成了邊界框的迴歸,剩下的最後一步就是背景點的剔除了,具體流程圖下圖所示。即根據點特徵和邊界框的得分,對框內的點進行二分類。
三、實驗
作者首先展示了實例分割效果,如下圖所示。
從分割效果上可以看出,本文的方法分割更精細。爲了定量對比,作者在數據集ScanNet 和 S3DIS上和其他方法的精度統計結果做了分析,結果如下表所示。
從表中可以看出,該方法只在部分指標上取得了最優結果,但由於它的效率遠遠大於其他方法,所以整體上會更有優勢。
四、結論
作者提出了一種簡單高效的3D點雲實例分割方法,克服了傳統基於候選框和不使用候選框兩類方法的缺點,同時爲了解決新方法帶來的數據關聯問題,使用了最優分配的思路實現了損失函數計算。經過候選框預測和背景點剔除兩步之後,能夠很好地完成實例分割,並且在效率上是傳統方法的十倍,整體上取得了巨大優勢。