CVPR2020:基於層次折疊的跳躍式注意網絡點雲完成


CVPR2020:基於層次折疊的跳躍式注意網絡點雲完成

Point Cloud Completion by Skip-Attention Network With Hierarchical Folding

論文地址:

https://openaccess.thecvf.com/content_CVPR_2020/papers/Wen_Point_Cloud_Completion_by_Skip-Attention_Network_With_Hierarchical_Folding_CVPR_2020_paper.pdf

摘要             

點雲完成的目的是從不完整區域中推斷出三維物體缺失區域的完整幾何圖形。以往的方法通常基於不完全輸入提取的全局形狀表示來預測完整點雲。然而,在不完全點雲的局部區域,全局表示往往會出現結構細節信息丟失的問題。為了解決這一問題,我們提出了一種用於3D點雲完成的跳過注意網絡(SA-Net)。我們的貢獻主要體現在以下兩個方面。首先,我們提出了一種跳躍注意機制,以有效地利用不完全點雲在缺失部分推斷過程中的局部結構細節。跳躍注意機制有選擇地從不完整點雲的局部區域傳遞幾何信息,生成不同分辨率的完整點雲,跳躍注意以可解釋的方式揭示完成過程。其次,為了充分利用跳轉注意機制在不同分辨率下所編碼的選定幾何信息,我們提出了一種新的分層折疊結構保持解碼器來完成形狀的生成。分層折疊保留了上層生成的完整點雲的結構,通過逐步細化局部區域,使用相同分辨率的跳過注意幾何體。我們在ShapeNet和KITTI數據集上進行了全面的實驗,結果表明所提出的SA網絡優於最先進的點雲完成方法。

1.介紹             

近年來,點雲作為三維物體的一種形式受到了廣泛的關注,它可以方便地被三維掃描設備和深度相機訪問。然而,由這些設備產生的原始點雲通常是稀疏的、有噪聲的,並且由於視角或遮擋的限制,大多具有嚴重的缺失區域[47],這很難通過進一步的形狀分析/渲染方法直接處理。因此,原始點雲的預處理成為現實中許多三維計算機視覺應用的重要要求。本文主要研究點雲表示的三維形狀的缺失區域的完成問題。              

點雲完成的任務可以大致分解為兩個目標[41,47]。第一個目標是保留原始輸入點雲的幾何形狀信息,第二個目標是根據給定的輸入恢復丟失的區域。為了實現這兩個目標,目前的研究通常遵循范式框架,從不完整的點雲中學習全局形狀表示,並進一步利用它來估計丟失的幾何信息[45,47,22]。然而,編碼后的全局形狀表示往往會受到不完整點雲局部區域結構細節信息丟失的影響,為了進一步推斷丟失的幾何信息,必須充分保留這些細節信息。如圖1所示,為了預測飛機的完整機翼,網絡應首先保留不完整點雲中現有的左翼。然后,根據兩個相似機翼區域之間的模式相似性,網絡可以參考現有的左翼,從而推斷出缺失的右翼。

解決這個問題的一個直觀的想法是采用U-Net[35]這樣的跳轉連接機制,這種機制被廣泛用於圖像的局部區域重建和推理。但是,直接采用跳接方式完成點雲計算存在兩個問題。首先,在文獻[35]中提出的跳躍連接不能直接應用於無序輸入,因為它根據二維網格的像素順序連接特征向量。其次,在點雲完成的任務中,並不是每一層分辨率下的所有局部區域特征都有助於形狀的推斷和重建。同樣地,用跳躍連接重新訪問它們可能會引入信息冗余,限制整個網絡的特征學習能力。             

因此,為了在解決skipconnection問題的同時保留結構細節信息,我們提出了一種新的用於點雲完成的深度神經網絡Skip-Attention網絡(SA-Net)。該網絡采用端到端的架構設計,其中編碼器-解碼器架構專門用於特征提取和形狀完成。跳過注意是指基於注意的特征管道,它以可解釋的方式揭示完成過程。跳躍注意有選擇地從不完整點雲的局部區域傳遞幾何信息,以生成不同分辨率的完整點雲。skip-attention使解碼器能夠充分利用和保留本地區域的結構細節。與跳躍連接相比,跳躍注意可以推廣到無序點雲,因為注意機制對輸入特征的順序沒有預先要求。此外,我們的跳躍注意為網絡在不同分辨率下重新訪問特征提供了一種注意選擇,使得網絡能夠有選擇地將編碼后的特征與期望的幾何信息結合起來,避免了信息冗余的問題。

為了在不同分辨率下充分利用跳轉注意所選擇的幾何信息,我們進一步提出了一種分層折疊的結構保持解碼器來生成完整的點雲。分層折疊保留了在上層生成的點雲結構,通過使用來自編碼器的相同分辨率的跳過衰減幾何信息逐步細化局部區域。具體地說,解碼器具有與編碼器相同數量的分辨率級別,跳過注意將每個級別的編碼器連接到相應級別的解碼器。為了分層折疊點雲,我們建議從一個固定尺寸的二維平面以增加密度的方式采樣二維網格。與現有點雲完成方法[47,41,45]中的解碼器相比,所提出的結構保持解碼器能夠在整個分辨率水平下保留局部區域的結構細節,這使得網絡能夠預測完整的形狀,在捕獲更多局部區域信息的同時保持全局形狀的一致性。我們的主要貢獻概括如下。             

•我們提出了一種新的跳躍注意網絡(SA-Net)來完成點雲任務,取得了最新的成果。此外,SA-Net的體系結構還可以用於提高形狀分割的性能,並在無監督的形狀分類中實現最先進的結果。             

•我們提出了跳躍注意機制,將編碼器的信息局部區域特征融合到不同分辨率的解碼器的點特征中,使得網絡能夠從不完整的點雲中利用更詳細的幾何信息推斷缺失的區域。此外,跳過注意以可解釋的方式揭示完成過程。             

•我們提出了一種用於高質量點雲生成的結構保持解碼器。通過層次折疊,可以逐步細化不同分辨率下的點雲,從而在不同分辨率下保持完整形狀的結構。

2.相關工作             

三維計算機視覺是近年來一個活躍的研究領域[5,11,10,12,29,13,31],其中對三維形狀完成的研究有很多分支。例如,基於幾何的[40,2,42,23]方法利用部分輸入的曲面的幾何特征來生成3D形狀的缺失部分,基於對齊的方法[37,24,32,38]維護形狀數據庫並搜索相似的補丁來填充三維形狀的不完整區域。我們的方法屬於基於深度學習的方法,這得益於三維計算機視覺中深層神經網絡的最新發展[9,28,20,16,18,15,17,14]。這個分支可以根據三維形狀的輸入形式進一步分類。             

體積形狀完成             

三維體積形狀的完成是一個方向,從二維計算機視覺的進步中受益匪淺。像3D-EPN[4]這樣的著名工作考慮了3D體積形狀的漸進重建。而Han等人[8]將整體結構的推斷與局部幾何特征相結合,直接生成高分辨率的完整三維體積形狀。最近,引入變分自動編碼器來學習形狀先驗,以推斷完整形狀的潛在表示[39]。盡管三維體數據的研究領域已經取得了令人矚目的進步,但計算成本與輸入數據的分辨率成立方關系,使得處理黑色形狀變得困難。

點雲完成              

基於點雲的三維形狀完成是一個蓬勃發展的研究領域,得益於PointNet[33]和PointNet++[34]的開創性工作。點雲作為三維形狀的一種緊湊表示方法,可以表示三維形狀的任意細節結構,與三維體數據相比,存儲成本較小。最近一些著名的研究如PCN[47]、FoldingNet[45]和AtlasNet[7]通常從局部點雲中學習全局表示,並根據學習到的全局特征生成完整的形狀。遵循同樣的實踐,TopNet[41]中提出了一種樹結構解碼器,以更好地生成結構感知的點雲。通過將強化學習與對抗網絡相結合,RL-GAN網絡[36]和Render4Completion[21]進一步提高了生成的完整點雲與地面真實的真實性和一致性。然而,這些研究大多受到結構細節信息丟失的影響,因為它們只能從單個全局形狀表示來預測整個點雲。

3.SA-Net網的體系結構             

2顯示了SA網絡的總體架構,它由一個編碼器和一個保留結構的解碼器組成。在編碼器和譯碼器之間,跳轉注意作為連接局部區域特征(從編碼器不同分辨率中提取)和解碼器相應分辨率中的點特征的管道。

在給定輸入點雲大小N=2048及其三維坐標的情況下,SA網絡編碼器的目標是從不完全輸入點雲中提取特征。在SA-Net中,我們采用PointNet++[34]框架作為我們的點雲特征編碼器的骨干。如圖2所示,有三個級別的特征提取。             

考慮到編碼器從不同分辨率水平提取局部區域特征,解碼器通常采用相同的方法生成點特征,但分辨率水平是相反的。這允許跳過注意在編碼器中提取的局部區域特征和解碼器中生成的點特征之間建立一個水平到水平的連接。受此啟發,我們提出了結構保持解碼器,其目的是逐步生成完整的點雲,並在所有分辨率下保持局部區域的結構細節。具體來說,如圖2所示,結構保持解碼器將點雲分層折疊為三個分辨率級別,這等於編碼器中的分辨率級別數。譯碼器的每一分辨率級包括一個跳轉注意和一個折疊塊以增加點特征的數目。

SA-Net中,我們借鑒了文獻[26]中上下向上框架的思想來解決這個問題,並將其作為折疊塊的基礎。圖3顯示了第i級解碼器中折疊塊的詳細結構。

以上兩個目的都是通過注意機制實現的,如圖4所示,其中解碼器中的點特征和編碼器中的局部區域特征之間的語義相關性是通過注意分數來衡量的,分數越高表示模式相似度越大(飛機的機翼)。然后,通過加權和將局部區域特征融合為點特征,最終用於預測完整點雲中的相關區域(也包括平面機翼)。

4.實驗測試

在圖5中,我們展示了使用SA網絡完成點雲的可視化結果,並與其他方法進行了比較,從中我們可以發現SA網絡預測的形狀更合理,同時保留了現有零件更一致的幾何形狀。例如,在圖5(a.2)和圖5(a.3)中,與其他三種方法相比,SA網絡在預測燈座和桌腿缺失時生成更真實的形狀,SA網絡生成的點排列更緊密,形狀更接近地面真實。在圖5(a.1)和圖5(a.4)中,與其他三種方法相比,SA網更能保持機翼和橫梁的形狀。通過對形狀完成任務的定量和定性改進,證明了技巧引入局部區域特征的有效性,以及結構保持解碼器利用局部區域特征重構完成點雲的能力。此外,在表2中,我們比較了不同方法的網絡中可訓練參數的數量,這表明SA網絡的參數數目最少,同時取得了顯著的更好的性能。

KITTI數據集             

KITTI數據集是從真實世界的激光雷達掃描中收集的,在那里,地面真相缺失,無法進行定量評估。因此,我們通過可視化結果對SA網絡的性能進行了定性的評價。對於圖6中的所有方法,使用ShapeNet數據集中在car category下訓練的參數來預測完整的汽車。請注意,在KITTI數據集中,不完整車的點數有很大的變化范圍。為了獲得一個固定的輸入點數,對於超過2048個點的不完整車輛,我們隨機選擇2048個點,否則,我們從輸入中隨機選擇點來彌補2048個點。結果如圖6所示,從中我們可以發現,我們的SA網絡預測了更多的結構細節(汽車層)和更高質量的形狀(汽車行李箱)。

注意的效果             

我們開發了三個SA網變體來驗證SA Net中注意的有效性:(1)“No-skip”是從SA網中刪除技巧的變體。(2) “Skip-L”是用可學注意代替跳躍注意中余弦注意的變化。(3) “Fold-C”是折疊塊自我注意中用余弦相似性代替可學習注意的變化。除已移除/更換的模塊外,所有三種變體的結構與SA Net相同。結果如表3所示,其中原始SA網的性能最好。實驗結果證明了注意在SA網絡中的有效性。在skip attention(skip-L)和self attention(Fold-C)中替換注意的性能下降可用於兩個模塊的不同設計目的。

優化損失效應             

為了評估EMD損失和CD損失對SA網絡的影響,我們開發了兩個變量:(1)“SA-Net-EMD”是僅使用EMD損失訓練的SA網絡的變化;(2)“SA-Net-CD”是僅使用CD損失訓練的變化量。比較結果如表4所示,證明EMD和CD對SA-Net的性能都有貢獻。

輸入點數的影響             

分析了SA網絡對不同輸入分辨率的魯棒性,特別是對稀疏輸入的魯棒性。在這個實驗中,我們將輸出點雲的數量固定到2048個,並在256到2048個分辨率的輸入點雲上評估SA網絡的性能。對於小於2048的點,我們使用KITTI數據集中相同的策略從輸入中隨機選擇點,並將點數提升到2048。表5報告了以每點CD表示的模型性能。在圖7中,我們將不完整點雲的不同點數下的完成質量可視化,其中SA網絡顯示了在所有輸入分辨率上的健壯性能。

跳躍注意的可視化             

在圖8中,我們將注意力集中在解碼器的第二個分辨率級別,即預測一個完整的平面。我們比較了學習的生成尾翼和兩翼部分的技巧。在圖8(a)和圖8(b)的左半部分,由同一點特征生成的點用紅色表示,並在右半部分顯示該點特征分配給不完整點雲局部區域的相應注意得分。如圖8(a)所示,當生成屬於尾翼的點時,跳過注意搜索輸入點雲中的相對局部區域(也就是尾翼)進行預測。在圖8(b)中,當預測翅膀的點(右翅膀缺失的地方),跳躍注意在不完全點雲中選擇左翼區域(通過分配更高的注意力)來預測兩個翅膀的形狀。在其他類別上也可以觀察到類似的模式,如圖8所示。             

層次折疊的可視化             

在圖9中,我們將解碼器中的分層折疊可視化。我們跟蹤一個特定的藍色向量的折疊過程,並用藍色矩形表示從這個藍色向量導出的點。從局部的角度,我們觀察到每個初始點特征成功地學習在平面上生成特定區域。在藍色初始點特征的情況下,它生成飛機的左翼。另一方面,從全局的角度,我們可以觀察到SA網的折疊過程並不像FoldingNet一樣嚴格遵循2D流形假設[45]。正如[41]所指出的,從二維流形結構中加強學習對於訓練來說可能不是最優的,因為可能解的空間是受限的。因此,在SA網絡中觀察到的與二維流形的細微偏差,對於學習生成不同的形狀和保存更好的結構細節更為靈活。這兩個觀察結果都證明了層次折疊的有效性。此外,我們還將圖9中car和table類別下的折疊過程可視化。

6顯示了部分平均相交於並集(pIoU,%)和平均每類pIoU(mpIoU,%)的比較[27],從中我們可以發現,SA Net seg與PointNet++的基線方法相比,顯著提高了分割性能。具體來說,跳過注意可以將骨干點網++的性能提高0.6%(以百萬為單位)。在圖10(a)中,我們將分割結果可視化,並將SANet seg與基准PointNet和PointNet++進行了比較,從中我們可以發現SA-Net seg可以更精確地預測語義標簽。尤其是,SA Net seg顯著提高了摩托車層上的分割精度,其中車身和車身層彼此嚴重重疊。這種改進源於編碼器的跳躍注意所傳遞的局部區域特征,這有助於插值層在局部區域做出更具區分性的預測。圖10(b)給出了更多的分割結果。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM