趙佳琦 周 勇 何 欣 卜一凡 姚 睿 郭 睿
①(中國礦業大學計算機科學與技術學院 徐州 221116)
②(礦山數字化教育部工程研究中心 徐州 221116)
③(災害智能防控與應急救援創新研究中心 徐州 221116)
人們對美好生活的需求促進了人工智能、無人駕駛、機器人技術[1]的不斷發展,這些行業或技術都需要處理3維(3 Dimensional, 3D)數據,并要實時地反饋處理結果。同時,3維掃描設備的快速發展也使得人們越來越容易獲取點云(point cloud)數據[2,3],這些軟硬件設備的發展讓處理并分析3維點云成為當前的一個熱點。點云分割作為點云數據處理和分析的基礎技術,在很多領域中都有著廣泛的應用[4–7]。以自動駕駛為例,車輛行駛過程中,該項技術需要分割出路況信息,以及行人等信息,由此來實現目標檢測[8,9]。類比2維圖像分割,點云分割是一種將點云劃分成若干個具有不同性質的區域并進行識別的技術。從點的角度出發,點云分割可看作一項對點云中每一點賦予相應意義標簽的任務。
早期實現點云分割的方法是使用手工提取特征,應用經典的機器學習的算法構建模型來實現分割任務的,如支持向量機、隨機森林、條件隨機場,馬爾可夫隨機場等。此類方法在當時的分割任務中取得了較為優秀的結果。隨著相關技術的發展,點云數據越來越容易獲取,相應的數據集在不斷擴充。然而,手工提取特征的方法主要依賴研究者的先驗知識,已不足以應用于如今龐大的點云數據。此外在實際應用中對于算法的實時性和魯棒性要求越來越高,而傳統方法提取特征時間周期長,不滿足現實需要。隨著以數據為驅動的深度學習技術的發展,卷積神經網絡(Convolutional Neural Networks, CNN)廣泛地應用到視覺任務中,并在點云分割方法占據了主導地位。點云分割算法起源于2維圖像算法,早期研究者將3維點云坐標投影至2維平面上,使用2維算法解決3維問題。然而投影轉換過程中信息損失較大,限制了處理效果。同時期還有一些研究者將不規則點云轉換成規則的體素網格。雖然它們有效地處理了不規則點云數據,但由于數據的間接表示和存儲限制的問題丟失了大量的幾何結構信息并造成數據稀疏的問題。隨后,斯坦福大學Qi等人[10]提出的PointNet網絡模型,該方法直接從點云數據入手,無須做任何中間轉換操作,從而保留了點云的固有信息。自此直接對點云處理的方法逐漸發展起來。
本文首先簡要分析了點云分割的難點與挑戰,然后對基于深度學習的點云分割方法進行梳理,按照數據處理方式將其分為間接和直接方法。間接處理點云的方法中主要有基于多視圖和體素的方法,在直接處理方法中,本文將其分為基于點處理、基于優化CNN、基于圖卷積、基于時序、基于無監督學習5類。對于每種方法,分析和總結了其創新點、優缺點。此外,整理了點云分割常用的數據集以及評價指標。最后展望了未來點云分割的研究方向。
點云是描述3維空間中物體表面信息的大量點的集合。其中每個點都包含其3維坐標,也可能包含一些深度、密度、顏色、灰度值等信息。它們的表達性更強,更接近人類的視覺感官,特征更加準確[11]。相比于2維圖像數據,點云更適合作為3維場景理解的數據[12]。
采樣、濾波、配準、3維重建、點云分類、分割都是3維點云處理技術,它們在識別、檢測等應用上也有顯著成效。在這些3維點云處理技術中,點云分割技術是點云處理過程中的關鍵步驟[13,14]。簡單來說,點云分割技術就是通過某種方法按特征屬性將這些點云數據分成為互不相交的子集。由于點云具有無序性、密度不一致性、非結構性、信息不完整性這些特點,因此對點云數據的處理變得復雜和困難,難以使用常規的思路和神經網絡進行點云分割。本節結合點云的特性分析了點云處理面臨的難點與挑戰。
(1)點云的無序性。圖像中的每個像素都是固定的,直接使用卷積即可獲取特征信息。如圖1所示,圖1(a)表示2維圖像數據,圖1(b)–圖1(d)表示3維點云數據。點云數據會產生式(1)所示的3種類型。其中,圖1(b)和圖1(c)表示不同的點云結構,但如果直接使用卷積則會產生相等的計算結果,這與事實相違背;圖1(c)和圖1(d)表示相同的點云結構,但如果直接使用卷積則會產生不等的計算結果,也與事實相違背,這就是點云數據的無序性。將點云以不同的順序輸入會導致卷積結果千差萬別,難以統一,從而造成模型難以收斂[15,16]

圖1 點云無序性解釋

(2)點云的密度不一致性?,F實場景中的物體具有多樣性,且分布不同,這導致點云數據的空間屬性復雜多樣。而且,獲取點云數據的方式也會對點云密度和點的數量有很大的影響。因此,同一個模型可能無法同時適用于密集點云數據和稀疏點云數據。點云的密度不一致性會造成采樣不平衡(過采樣或者欠采樣),在網絡更新卷積核時可能導致過采樣區域的權重過大,這給點云特征學習帶來了很大的挑戰[16]。
(3)點云的非結構性。卷積神經網絡可以有效處理結構化數據(例如圖像數據),但對于不具有特定結構的點云數據,直接輸入神經網絡進行訓練是比較困難的。一些研究人員[17,18]嘗試用體素表示點云數據。雖然這種基于體素的方法取得了較好的效果,但這種方法中體素的分辨率直接受到內存的限制,較低的分辨率無法識別到點云的細粒度特征,而較高的分辨率需要更多的內存和計算力。因此,點云的非結構性迫使研究者尋找更佳的點云表示形式。
(4)點云的信息不完整性。點云是利用雷達、深度相機等深度傳感器對環境物體表面進行采樣得到的,并不能反映物體表面完整的信息。而且,由于遮擋等不可避免的原因,點云信息具有不完整性。在模型的訓練過程中,點云自身的信息不完整會導致模型不能獲取點云完整的上下文信息以及局部信息,使得模型不能學習到點云數據的語義特征,從而難以獲得良好的分割效果[3,5,19]。
近年來,基于深度學習的點云研究吸引了越來越多學者的關注,研究者在一些發布的公開數據集上進行點云分割算法研究,從而提出了不少的算法與模型。點云分割技術可分為傳統方法和基于深度學習的方法這兩大類別[20,21]。如圖2所示,傳統方法可分為基于邊緣、區域增長、屬性、模型4個類別[22],基于深度學習的技術可分為間接方法和直接方法兩大類[23]。下面主要介紹基于深度學習方法[24]的國內外研究現狀。

圖2 點云分割方法分類
基于多視圖的方法是將3維點云在多個視點下投影到2維平面,再對2維投影圖像進行處理。其有如下缺點:一方面,由于2維多視圖圖像只是3維場景的近似值,并非是對3維場景真實且無損的呈現,這樣就會造成幾何結構的損失。例如在點云語義分割之類的復雜任務中可能會產生不太理想的結果。另一方面,由于點云呈現復雜的點信息和曲面信息,多視圖圖像無法全面覆蓋到這些信息。表1總結了近年來基于多視圖的方法。

表1 基于視圖的主要工作
依托成熟的2維深度學習算法,Su等人[25]首次提出了用于3D形狀識別的多視圖卷積神經網絡(Multi-View CNN, MVCNN),通過對3維場景不同角度的拍攝,產生多個2維圖像,在此基礎上,再通過卷積神經網絡來進行特征提取。在此之后,視圖投影的方法就開始被廣泛使用。為了解決上述所說的處理復雜點信息和曲面信息的問題,Boulch等人[26]提出了具有2D深度分割網絡的3D點云語義標記網絡(SnapNet),該方法利用點云生成兩種類型的圖像: 24位真彩色紅綠藍 (Red Green Blue,RGB)圖像和包含幾何特征的深度合成視圖,適用于各種類型的點云。但是該方法在將3維場景轉換為2維圖像的過程中,由于存在部分遮擋以及其他影響因素,使得很多有效信息丟失,故此You等人[27]提出了點云形狀識別網絡(Point-View Relation Network, PVRNet),該方法考慮了點云多視圖之間的相關性,利用相關性指導點云特征和視圖特征的融合。并提出了兩種聯合特征的方法,分別是單點視角方案和多點視角方案,第1種方法在數據增強之后經過最大值池化聚合特征,第2種是先分組,對每個組分別計算結果,最后求平均值。這樣很好地彌補了SnapNet網絡的不足之處。
點云數據是分布于目標表面的一系列3維點坐標,具有離散分布、可量測性、一定的光譜特性以及分布不均勻的特點,為適應點云數據的這些分布特點,Wang等人[28]構造了分層網格的多視圖域(Multi-View Domain, MVD),將深度學習和立面結構的先驗知識結合了起來,使得不同的信息都能應用于網絡中,提高了分割精度??紤]到多視圖序列中的冗余性,鄭陽等人[29]利用卷積神經網絡構建場景視點偏移預測模塊來預測最佳場景視點偏移,極大地提高了一些易被遮擋的目標(例如行人和騎行者)的分割效果。
除了上述基于真實視圖的點云分割方法,研究者提出了虛擬視圖,這對于點云分割產生了很重要的影響。Kundu等人[30]研究了使用虛擬視圖進行點云分割的方法,提出了虛擬多視圖融合(Virtual Multi-view Fusion, VMF)模型。VMF分別選擇不同虛擬視圖的3D網格和渲染多個2D通道訓練一個2D的語義分割模型。這是一種將虛擬視圖與真實視圖融合的方案。
基于多視圖的方法在許多小型或特定的場景下仍具有較強的實用性,但這是建立在有足夠多的視點的基礎上。對于較大、較復雜場景,該方法難以勝任。所以,有些研究者便將多視圖替換為單視圖來實現對點云的局部分割。Peng等人[17]將語義標注從合成模型轉移到單視點云(Single-View Point Cloud, SVPC)。將單視點云和3維合成的CAD模型數據庫中的模型建立點級對應關系,最終可以將引導模型的標簽轉移到輸入點云。
基于體素的點云分割的主要思想是將點云進行體素化,從而使點云變得有序和結構化,再對體素進行3維卷積,表2列舉了近幾年國內外研究者提出的幾種典型方法。在點云分割領域中,從2.5D圖像中重構3D形狀和用3D數據進行目標檢測一直是一個難點,前人大部分依賴模型的部分標記和訓練,3D ShapeNet[31]采用卷積深度概率網絡將3D幾何形狀映射為體素網格上的概率分布,從而更快速訓練轉化后的數據。

表2 基于體素的主要工作
對于3D點云的標注問題,以前的主流方法是進行額外的分割或者人工操作[22],3維卷積神經網絡(3D Convolutional Neural Network,3DCNN)[32]提供了一種新方案,通過簡單地將顏色數據投影到體網格中,然后以3維的方式處理輸入數據,最大限度地減少了先驗標簽需求,但對細節的處理不夠完善。針對這一問題,Dai等人[33]提出了用于3D語義場景分割的聯合3D多視圖(3D Multi-View,3DMV)網絡,3DMV從相關的RGB圖像中提取特征映射,通過將這些特征映射到3D網絡的體素特征網格中來減少信息損失;Pointgrid[34]采用全新的3D卷積網絡,在每個網絡單元中包含恒定數量的點,從而允許網絡學習更高階的局部逼近函數,可以更好地表示局部幾何形狀細節;局部相位3DCNN[35](Local Phase-3DCNN, LP-3DCNN)提出利用修正的局部相量模塊替換標準的3D卷積,在3D局部鄰域內提取特征代表每個位置的相,通過相計算每個位置3D局部鄰域內多個固定的低頻點變換關系,很好地關注了局部特征;Zhang等人[18]提出的聯合圖體素的卷積網絡(Graph-Voxel CNN,GV-CNN),通過稀疏神經網絡來提取點云的特征,然后將提取的特征輸入到圖卷積網絡中,增強了空間上下文信息。
此外,由于硬件資源有限導致了體素化分辨率低和過度下采樣,現有的3D感知模型無法很好地識別小實例(如行人、騎自行車者等),因此Tang等人[36]將神經架構搜索(Neural Architecture Search,NAS)與稀疏點體素(Sparse Point Voxel, SPV)卷積相結合,采用稀疏點體素卷積為稀疏卷積配備了高分辨率分支。同樣為了解決激光雷達中存在的點云稀疏、密度變化、高度無序、噪聲大、缺少表征對象類的顏色和紋理特征等缺點,Kumar等人[15]將編碼器以自上而下的方式來提取多尺度體素(Multi-Scale Voxel, MSV)信息,將解碼器以自下而上的方式融合來自各種尺度的多個特征圖,在編碼器和解碼器之間加入空洞空間金字塔池化模塊(Atrous Spatial Pyramid Pooling, ASPP)來擴大感受野,以提高激光雷達點云語義分割的性能。
基于體素的方法直接將點云體素作為3維卷積運算的基本單位,不需要對數據降維,維度信息保留好,特征還原度高,但發現該類方法已逐漸減少,綜合分析有以下原因:
(1)算法的時間和空間開銷大,對于3維點的卷積運算需要更大的算力支持,高分辨率的體素網格需要耗費大量的存儲空間,對于較大場景的適用性低。
(2)由于3維點云具有稀疏性,會產生大量冗余的體素網格,加劇運算和內存的開銷。
不過就方法本身而言,利用3維卷積來處理3維空間信息,可以很好地保留每個維度的信息特征,流程上也更加自然,隨著計算性能和存儲方法的不斷升級,該類方法還是具有一定潛在的發展空間的。
為了降低預處理過程中的計算復雜度與噪聲誤差影響,研究人員開始從3維數據源頭著手,直接從點云數據中提取特征信息,因而逐漸發展出一些直接處理點云的網絡模型方法,如表3所示。

表3 基于點處理的主要工作
PointNet[10]是首個直接輸入點云數據進行訓練的模型。同年,為了提高和改善分割效果,Qi等人[16]在此基礎上提出了PointNet++,該網絡通過多層次地使用PointNet來提取小范圍的特征。PointNet網絡操作雖然可以對點云數據直接進行處理且運算簡單,但依舊存在著很多的缺陷:首先,其無法很好地捕捉由度量空間引起的局部結構信息;其次,沒有考慮每個點與其鄰近點的交互關系,從而導致無法高效刻畫相關區域的語義結構;而且,統一的模板無法有效地解決密度不均一的數據。為了解決以上問題,研究者從PointNet算法出發,進行了一系列的探索。形狀上下文網絡(Shape Context Network, SCNet)[37]類比2維圖像中離散形態核設計了3維點云中的離散核,將點云離散核分為若干個區域子區間,利用注意力機制構建了關聯矩陣,對具有相關性的點的特征進行聚合,之后利用一系列多層感知機提取聚合后的特征。這種方法在節省了空間消耗的同時保持了高性能。此外,Xie等人[38]也將注意力機制引入點云分割中,并將PointNet作為骨干網絡對點云數據進行多角度池化,然后采用共享權重的多層感知器獲取自適應注意力權重,從而提升了網絡性能。
另外,點云數據可能經過任意旋轉,因此設計具有旋轉不變性的點云卷積是很有必要的。全局上下文感知卷積(Global Context Aware Convolutions, GCA-Conv)[39]采用新的卷積算子以使點云數據具有旋轉不變性。該方法對局部點集分解來生成錨點以表示全局形狀特征,然后執行卷積將點和錨點特征轉換為最終的旋轉不變特征。同樣為了處理不規則和無序的點云數據,位置自適應卷積(Position Adaptive Convolution, PAConv)[40]通過動態組合存儲在權重庫中的基本權重矩陣來構建卷積核,這賦予PAConv比2D卷積更大的靈活性,通過組合權重矩陣而不是從點位置粗暴地預測內核,可以降低學習過程的復雜性。
在神經架構搜索領域,搜索過程中的驗證精度與評估過程中的測試精度之間存在很大差異,為了解決這一差異,順序貪婪結構搜索(Sequential Greedy Architecture Search, SGAS)[41]利用Point-Net中的基本單元感知機、最大值池化以及邊緣卷積等模塊來構造最優的網絡結構,該方法在點云分類領域有著明顯的性能提升,也為利用自動神經架構搜索來解決點云分割任務提供了一種新的思路。
卷積神經網絡可以在2維圖像上進行特征提取,并且取得了令人滿意的結果。但傳統卷積操作應用在3維點云數據上會有適用性弱、表征點間聯系能力不強、平移和尺度不變性差等問題。因此,一些研究者通過研究卷積網絡的優化方法,突破其在處理3維點云數據問題上的局限性。
3維點云數據的無序性和無結構性限制了CNN在處理點云數據上的表現。Xu等人[42]提出了一種新的卷積結構SpiderCNN,如圖3所示。該卷積單元SpiderConv通過參數化一系列基于泰勒多項式的卷積濾波器,將卷積運算從規則的數據結構擴展到不規則3維點云數據上,捕獲復雜的局部幾何特征,能夠提取語義深層特征。與上述工作思想不同,Hua等人[43]利用逐點卷積(pointwise convolution)獲取點的局部特征信息實現語義分割,避免了PointNet在訓練過程中學習到的不必要的一個對稱函數,提高了網絡模型執行速度,同時保證了點云分割任務中的準確性。環形CNN(Annularly-CNN,A-CNN)[44]提出了一種環形卷積,在3維點云上直接定義了計算卷積的新方法。這種新的卷積算子通過在計算中指定環形結構和方向,可以更好地捕捉每個點的局部鄰域幾何。在信號處理層面上,該算法能夠適應幾何變異性和可擴展性。然而上述方法在點云特征抽象時無法充分參考局部形狀信息,因此對局部形狀變化感知的魯棒性較差,難以針對目標形狀特征產生合適的卷積核。為此,高金金等人[45]參考點云局部中所有鄰域點之間的低維空間關系,定義了一種不依賴點的順序與剛性變換的局部關系描述,即局部關系卷積(Local Relation Convolution, LRConv),這一種通過全面局部關系感知形狀特征的卷積算子。通過從關系描述中學習得到局部區域中每個點對應的卷積權重,并聚合局部區域的抽象特征來增強局部魯棒性。

圖3 SpiderCNN的網絡結構[42]
針對CNN網絡欠缺表征點間聯系的能力,Liu等人[46]針對點云數據提出了關系形狀CNN(Relation-Shape CNN, RS-CNN),其關鍵思想是學習點間拓撲關系。局部點集的卷積權重被強制學習來自該點集的采樣點與其他點集之間的預定義幾何先驗的高級關系表達式。通過這種方式,可以獲得關于點的空間布局的具有顯式推理的歸納局部表示,大大提高了網絡的形狀感知能力和魯棒性。DensePoint[47]通過泛化卷積運算符將規則網格CNN擴展到不規則點配置,該卷積運算符保留點的排列不變性,并實現有效的歸納學習局部特征。在結構上,它屬于密集連接模式,反復聚合多級和深層次的多尺度語義。
針對現有工作對點云平移和尺度不變性差的問題,Wu等人[48]提出一個新的卷積操作PointConv。其設計了一種新的計算權函數的方法,從而更好地擴展網絡并提升網絡的性能。利用多層感知器網絡學習權函數,通過核密度估計學習密度函數,學習到的卷積核在3維點集上具有平移不變性和置換不變性。Lin等人[49]提出了一種3維圖形卷積網絡3DGCN,用于跨尺度從點云中提取局部3維特征,使用圖最大池化機制定義可學習內核,使得網絡具有很好的平移和尺度不變性。
與PointNet++等前人的內隱學習策略不同,Wang等人[50]提出了一種新穎的卷積架構Patch-CNN,將2維網格卷積擴展到非結構化數據,網絡中的PointPatch模塊,本質上是2維圖像中的8像素鄰域,明確地對局部區域中的點之間的幾何關系進行建模。使用輕量級3D卷積網絡來自適應地集成PointPatch模塊的特征。集成的特征編碼了幾何關系和周圍點的影響,為點云感知帶來了足夠的形狀意識和魯棒性。除此之外,每個點上的卷積權重被視為由多層感知器和局部區域中的集成特征近似的Lipschitz連續函數,這有利于學習3維歐幾里得空間中形狀模式的歸納偏差。
表4匯總了基于優化CNN的方法的主要工作、提出年份、核心思想以及算法特點。基于優化CNN的點云分割方法傾向于研究有效的點云卷積算子。研究工作圍繞解決3維點云數據的無序性、無結構性、局部特征的表示、上下文信息表征等問題,提出了多種點云卷積算子,在一定程度上改善了CNN網絡在解決分割點云數據問題上的表現。如何實現更具通用性的卷積算子需要進一步的研究。

表4 基于卷積的主要工作
點云數據與2維圖像不同,屬于非歐幾何數據。傳統的CNN在針對點云學習任務存在缺陷,然而圖結構可以很好地處理非歐數據?;趫D卷積(Graph Convolution Network, GCN)的方法直接在圖結構上進行卷積運算,依靠節點間的信息傳遞獲取圖中的依賴關系,在近年來得到了廣泛的應用。
對于PointNet沒有充分學習空間點局部鄰域特征的問題,核相關網絡(Kernel Correlation Network, KCNet)[51]提出了兩個新穎的改進方案,第1個方案將點集合定義為一組可學習的3D點,度量核的相關性并得到相應的幾何關系。該方案由點云配準技術修改而來,側重點云的局部結構。第2個方案利用局部高維特征結構,在最近鄰圖上進行重復特征聚合。實驗表明,該方法獲取了較好的點云的局部信息,具有更好的點云分割性能。針對標準卷積無法提取完善的目標輪廓信息的問題,Wang等人[52]提出了圖注意力卷積方法(Graph Attention Convolution Network, GACNet),它是一種能在點云上端到端進行分割和分類的深度網絡,其主要貢獻在于將注意力機制引入圖卷積,通過計算中心點與其鄰接點的邊緣權重使網絡能精確分割的邊緣部分。
為了處理更為復雜的大規模點云,引入超圖結構,現有圖結構的邊用于連接兩個節點,然而在超圖結構中,一條邊可以有兩個或多個節點。圖結構中的信息傳播可以看作節點到節點的信息傳播,超圖神經網絡[53](HyperGraph Neural Networks,HGNN)則可以看作節點到邊再到節點的信息傳播。將HGNN與圖卷積網絡等方法進行比較,HGNN在處理多模態數據時具有優越性,特別是在處理復雜數據時,超圖在數據建模方面更加靈活。在已有的關于圖研究的工作中,特征之間隱藏的重要關系并沒有直接表現在內在結構中。為了解決這個問題,Jiang等人[54]提出了動態超圖神經網絡框架(Dynamic HGNN, DHGNN),它由動態超圖構造和超圖卷積兩個模塊組成。超圖在最初構造的時候可能需要進行很多調整,由此設計了動態超圖構造模塊在訓練中動態調整超圖,然后引入超圖卷積對超圖結構中的高階數據關系進行編碼。顯然,動態超圖可以增強模型的魯棒性。Xu等人[55]提出了Grid-GCN來實現快速具有可拓展性的點云學習。Grid-GCN通過利用高效的網格空間,不僅僅減低了時間復雜度,而且提升了其空間的覆蓋率。Grid-GCN實現了當前點云分類和分割的數據集上的最好效果。
表5匯總了基于圖卷積的點云分割方法的提出年份、核心思想以及算法特點。基于圖卷積的點云分割方法早期工作是圍繞解決2維卷積處理拓展到3維空間的局限性,此時期的工作主要是通過引入重復特征聚合、注意力機制等模塊提取局部特征,提取到點間特征、局部特征。后期工作則是針對處理復雜大規模點云,發展出利用超圖結構構建的動態圖結構和超圖卷積操作,形成了更為靈活的動態超圖模型,進一步增強模型的魯棒性。總體來看,隨著點云數據集結構越來越復雜,數據集規模越來越龐大,基于圖卷積的方法發展傾向于處理復雜大規模點云,如何更好地處理復雜大規模點云數據是該方向未來的研究重點。

表5 基于圖卷積的主要工作
基于時序的點云分割方法將點云的上下文信息進行融合,從而實現更高的點云分割精度。基于時序的方法可以有效地利用點云的上下文信息,相較于基于點處理的方法,大大提高了點云分割精度和效率。表6對基于時序的方法進行了總結。

表6 基于時序點云分割的主要工作
在基于時序的方法的研究中,Engelmann等人[56]首次提出了一種在輸入和輸出部分使用空間上下文(spacial-context)的方法,該方法基于PointNet,在輸入部分使用多尺度模塊和網格模塊,在輸出部分使用綜合單元和循環綜合單元來進一步提取上下文信息。實驗結果表明結合空間上下文可以提高分割性能。為了有效地建模點云的局部結構并減少計算量,Huang等人[14]提出循環切片網絡(Recurrent Slice Network, RSNet),其關鍵組件是一種輕量級的局部依賴性建模模塊,切片池化層設計用于將無序點的特征投影到有序的特征向量序列上,從而可以應用循環神經網絡(Recurrent Neural Network,RNN)進行端到端學習;隨后,Ye等人[57]提出了一個逐點級金字塔池化模塊捕獲不同尺度的局部上下文信息,然后利用雙向分層進一步獲得長距離的空間依賴關系,最后應用RNN實現端到端學習。為了緩解由剛性和靜態池化操作引起的問題,Zhao等人[58]提出了動態聚合網絡(Dynamic Aggregation Network, DARNet)。這個工作考慮了全局場景復雜度和局部幾何特征,通過自適應調節感受域和節點權重聚合點云特征,既考慮了場景的復雜結構也結合了局部幾何特征。
為了實現大規模點云的高效語義解析,Liu等人[59]將3DCNN、深層Q網絡(Deep Q Network,DQN)和殘差遞歸神經網絡(Recurrent Neural Network, RNN)進行融合。在3DCNN和DQN控制下的視窗可以有效地定位和分割對象類的點。3DCNN和殘差RNN進一步提取了視窗中點的魯棒性和鑒別性特征,從而大大提高了大規模點云的解析精度。該方法將對象定位、分割和分類集成到一個框架中。實驗結果表明,該方法優于現有的點云分類方法。
無監督學習是目前深度學習發展的一個新趨勢。一方面,無監督學習利用了自編碼器的特性,能實現一種類型到另一種類型的跨越式生成;另一方面,無監督學習只需少量帶有標簽的數據和大量無標注數據就可以實現特征學習。
針對無監督點云語義分割問題,Qin等人[60]首先提出點域適應網絡(Point Domain Adaption Network, PointDAN),如圖4所示。該方法在多層次上實現了全局和局部對齊。針對局部對齊提出了自適應節點模塊調整接受域,用于對齊局部結構進行建模。此外,該方法引入了注意力機制和對抗訓練機制,分別用于學習跨對象的節點、域關系以及全局的特征對齊。

圖4 無監督域適應點云分類網絡模型[61]
目前基于深度學習的方法依賴從自重建中學習全局幾何,存在著局部幾何學習無效的問題,這極大地限制了學習特征的可辨別性。為了解決這個問題,多角度點云-變分自編碼器(Multi-Angle Point cloud-Variational Auto Encoder, MAP-VAE)[61]
使用全局和局部幾何的學習共同利用全局與本地的監督。為了實現有效的局部自監督,引入了對點云的多角度分析。在多角度場景中,首先從每個角度將一個點云分割成前半部分和后半部分,然后訓練MAP-VAE學會從相應的前半部分序列中預測后半部序列。MAP-VAE使用RNN執行這種對半預測,以同時學習每個局部幾何和整體之間的空間關系。
Chen等人[62]從點云3維結構的特點出發提出了一個簡單且可解釋的無監督方法。該方法對點云的3維結構進行內在編碼,從而在所有結構相似的形狀實例中可以表現出語義一致性。具體來說,該方法以3維點云數據作為輸入,通過編碼將輸入數據轉化為一組局部特征。之后設計了一種新穎的點集成模塊,將輸入的局部特征轉化為一組3維結構點。為了實現端到端的訓練,Zamorski等人[63]提出了3維對抗自編碼器(3D Adversarial Auto Encoders, 3DAAE)網絡,它允許同時學習一個潛在的表示空間,并從中生成3D形狀。此外,該模型能夠通過對潛在空間的對抗訓練來學習有意義的緊湊二值描述符。為了實現這個目標,其擴展了一個深度對抗式自動編碼器模型(Adversarial Auto Encoders, AAE)來接受3D輸入和生成3D輸出。由于3DAAE網絡的端到端訓練機制,可以獲得覆蓋更廣泛的訓練數據分布的二進制或連續潛在空間。Rao等人[64]指出對象的局部模式和全局模式是密切相關的,由此提出了一種全局-局部雙向推理(Global-Local Bidirectional Reasoning, GLBR)結構,由局部結構推理對象的全局結構,由全局結構推理對象的某個局部形狀。這種雙向推理的方式取得了較好的分割效果,優于目前所有的無監督點云分割方法。
本文將上述工作進行整理,如表7所示。基于無監督的點云分割雖然有了一定的發展,但仍處于起步階段,目前的方法還比較少,適用范圍也較小,精度有待于進一步提高。

表7 基于無監督點云分割的主要工作
隨著雷達、激光掃描儀、攝像設備和相關傳感技術的不斷更新與發展,點云數據的采集變得更加便利、精準,極大地促進了3維點云的語義分割發展。本章首先整理了現有的點云分割數據集,然后介紹了點云分割中的評價指標。
為了推動點云分割的發展,研究人員采集并標注了一系列3維數據集,本節著重介紹了4種常用的數據集,分別是ModelNet[17], ShapeNet[65],ScanNet[66], Semantic3D[67]。每個數據集的示例如圖5所示。

圖5 點云分割數據集示例圖
(1)ModelNet[17]。ModelNet數據集出自普林斯頓ModelNet項目,為計算機視覺、計算機圖形學和認知科學等領域的研究人員提供全面、清晰的對象 3D CAD 模型集合。該數據集總共有662種目標分類,127915個CAD模型,以及10類帶方向標記的模型。其中包含了3個子集:ModelNet10是包含10類方向對齊的子數據集;ModelNet40包含40個類別的CAD模型;Aligned40包含40個類別對齊的CAD模型。
(2)ShapeNet[65]。ShapeNet由普林斯頓大學、斯坦福大學和芝加哥豐田技術研究所(Toyota Technological Institute at Chicago, TTIC)的研究人員共同構建,目前還在不斷擴充中。ShapeNet由ShapeNetCore和ShapeNetSem兩部分組成。ShapeNetCore 是具有單個 3D 模型和手動驗證的類別和對齊注釋,共有 55 個常見對象類別和大約51300 個特殊的 3D 模型,并且涵蓋了流行的計算機視覺 3D 基準數據集 PASCAL 3D+ 的 12 個對象類別。ShapeNetSem 是一個更小、注釋更密集的子集,由270 個類別共 12000 個模型組成。
(3)ScanNet[66]。ScanNet是一個具有2.5×106個視圖的 RGB-D視頻數據集,并由3D相機位姿、表面重建和實例語義分割注釋。該數據集一共標注了21個類別的對象,包含1513個室內場景數據(每個場景中點云數量都不一樣),其中1201個場景用于訓練,312個場景用于測試。
(4)Semantic3D[67]。目前,該數據集所有發布的場景都是通過激光掃描儀在中歐捕獲,主要描述了典型的歐洲建筑。它包含8個語義類,涵蓋了廣泛的城市和農村場景,如農場、教堂、鐵軌、市政廳、運動場和城堡。該數據集具有非常高的分辨率且每個點都有高質量的手動標簽。
點云分割的評價指標主要有平均交并比(Mean Intersection over Union, MIoU)、平均像素準確率(Mean Average Precision, MAP)、總體精準度(Overall Accuracy, OA)。假定共有K+1個類(包含空類),用cij表示類別i被預測為j的像素數量(假負例),則cii表示真正例,cji表示假正例,cjj表示真負例。
平均交并比MIoU計算預測集和真實集的交集與并集之比的平均值,IoU的計算公式為

平均像素準確率MAP是所有類的平均精度值的平均值,如式(3)

總體精準度OA是正確分割的點云數量與總體點云數量的比值,如式(4)所示

現有的方法從不同的角度對問題進行建模,提升了點云分割的性能,但都存在一定的局限性。本節從這些局限性的角度出發,對點云分割技術進行展望。
(1)訓練數據集和應用場景。基于深度學習的點云分割方法的根基是海量的數據集,現有的數據集已無法滿足點云分割發展的需求,因此目前點云分割的首要任務是構建數據量豐富且全面的數據集。室內場景以及城市街道場景是目前數據集主要的取景場地,對于戶外的具有豐富內容的點云數據集和遙感數據集非常少。所以收集并標注相應的數據集對點云分割技術的發展十分重要。
(2)實時點云分割。雖然目前的點云分割網絡模型在精度上有了很大提升,但其帶來的是模型的復雜度變高,運行速度下降。近年來,自動駕駛、無人配送車等應用的快速發展,要求點云分割具有更高的實時性。因此,在保證分割精度的同時,將網絡模型進行輕量化,提高運行速度以實現點云分割實時性要求,將是點云分割未來的研究方向之一。
(3)遙感點云分割。針對遙感點云的語義分割的問題,目前的方法僅測試了類別較少、區域較小的數據集,在處理復雜的遙感圖像時并不適用。另外,目前一般的評價指標并不適用遙感領域,一般的應用關注整體的精度,而遙感領域更關心的是某些特定目標的準確度。隨著遙感數據集的不斷提出,3維遙感數據的分割算法成為未來的一個研究熱點。
(4)弱監督或無監督點云分割。弱監督和無監督方法僅需要少量的標注數據與不需要標注數據,可以減少數據標注成本和標注時間,在圖像領域已經有了很大的進展。隨著對點云數據的分析和研究越來越多,3維數據需求量增大,點云標注成為難題,弱監督和無監督的點云分割技術不僅可以解決點云數據標注難題,而且有望提升點云分割速度和精度,是未來的研究方向之一。
本文對基于深度學習點云分割方法進行了整理、分類和簡要分析。3D深度學習雖然是一個相對較新的領域,也不像2D深度學習那么成熟,但就目前研究現狀來說,差距正在逐漸縮小。通過對目前國內外點云分割算法研究現狀的梳理,可以發現點云分割已經成為近兩年3維視覺領域的一個新熱點,同時也突顯出3維視覺領域點云分割技術的一些特點與不足。例如:點云的3維結構使得研究者可以獲取更全方位更深層的特征信息,這對于深度學習的發展十分有用。同時也是由于這一特點,導致訓練成本高。越來越多的研究者把目光從2維計算機視覺處理轉到研究3維點云數據處理。因此,研究點云分割的前景還是十分廣闊的。
本文總結了目前各類方法的優劣。雖然3維卷積在計算和存儲開銷上較大,但是最新進展仍顯示有能力超越同時期的點處理方法;投影和視圖的方法在一些簡單場景下具有極強的實用性,丟失空間信息的影響也就顯得不那么重要??偟膩碚f,各類方法都有自身的優劣,孰優孰劣不能簡單一刀切。
雖然無序點方法是近年來的主流,但最近的一些工作顯示,該類方法正在融合有序點方法和一些數學方法。點云雖然是無序的,但是點云表示的場景或者物體卻是有幾何上下文關系的,所以不能忽視拓撲學的信息。并且在最近的工作中,有序點法也顯示了極其強大的分割能力。而對于深度學習技術的發展,幾何學、拓撲學以及數學方法也是相當重要的,最近有學者開始對深度網絡和微分方程的聯系進行探究,并得出了一些有意義的結論。這也表明通過數學的規范公理化語言描述,能增強深度學習方法的理論性、確定性和可復現性。