楊 軍,雷喜文
1.蘭州交通大學 電子與信息工程學院,蘭州 730070
2.蘭州交通大學 測繪與地理信息學院,蘭州 730070
三維模型成為繼音頻數據、二維圖像及視頻之后的新一代的數字多媒體。與傳統的多媒體數據相比,三維模型以其強烈的真實感更符合人們對自然界的直觀認識而受到了工業界和學術界的廣泛關注。隨著信息技術產業、數據驅動和深度學習等技術在計算機視覺和計算機圖形學中的廣泛應用,三維模型分割取得了顯著的進展。三維模型的分割問題是三維模型分析領域的一個基礎性問題,它是根據三維模型的幾何及拓撲特征,將三維模型分割為若干具有意義、各自連通且相互獨立的語義部件,以幫助三維模型的理解和分析,是計算機圖形學研究的重要問題。
近年來,隨著激光掃描和類似的三維傳感技術的廣泛應用,三維點云成為三維幾何數據表示的基本格式,并廣泛應用于許多領域,如自動駕駛汽車、虛擬現實、三維城市建模等。一些深度學習方法開始嘗試對點云數據進行分析和處理。文獻[3]提出PointCNN 網絡模型可以直接將卷積神經網絡結構作用于無序的點云數據,避免了特征隨輸入點順序的變化而改變,增強了網絡對模型的處理能力。文獻[4]提出了可以直接對點云進行分類和分割的深度學習網絡框架PointNet。考慮到點云的稀疏性,未將點云轉換為多視圖或體素網格,從而能保留更多的三維特征信息,取得了較好的分割結果。文獻[5]提出一種多特征融合的三維點云模型分割方法,通過構建注意力融合層學習全局單點特征和局部幾何特征隱含關系來充分挖掘模型的細粒度幾何特征,以得到更好的模型分割結果。目前,基于深度學習的三維點云模型分割方法大都依賴于帶標記的訓練數據集,使得此類方法推廣受限。
最近,研究者發現三維模型簇的協同分割(cosegmentation)相比單個三維模型可以提供更多的有效信息,可以取得比單個模型更好的分割結果,并且可以同時對不同姿態的同類模型或者拓撲結構相似的不同類模型進行協同一致分割。因此,近期關于三維模型分割問題的研究主要集中于對三維模型簇進行協同分割。文獻[6]從有標簽的數據集中學習模型潛在的共有特征,以此進行模型的協同分析。因此,若帶有標簽的數據集數量足夠多,有監督的算法就能取得理想的分割結果。然而,獲取高質量的標簽數據費時費力,成本高昂。相反,文獻[7]提出一種無監督的協同分割方法,將輸入模型分割成面片,然后通過子空間聚類對相似面片進行分類。雖然無監督三維模型分割算法能利用無標簽的數據實現三維模型的協同分割,但這種分割算法以降低分割準確率為代價。結合點云數據的特點,本文提出了一種基于弱監督學習的三維點云模型簇協同分割網絡。在特征提取過程中,利用局部卷積操作能更好地關聯點與點之間的特征信息,提高網絡對點云模型的識別分割能力。由于同類模型具有相似的特征信息,用相似部件矩陣就可表示同類部件特征,網絡在學習時,可以對同類型的多個模型協同進行學習。此外,深度學習網絡以能量函數為引導,通過反向傳播優化網絡參數,從而實現對點云模型簇的一致性分割。算法的主要創新點和貢獻有:(1)對原始點云數據進行采樣時,為了彌補采樣損失,采樣之前在被采樣點集中選擇子集的鄰域,能夠將丟棄點的信息嵌入在關聯點的鄰域中,在降低網絡計算復雜度的同時保留更多點的特征信息。(2)將弱監督學習方法用于三維點云模型分割,能降低網絡訓練階段對高質量帶標簽數據集的依賴性,該方法只需要在訓練階段標記一小部分點就能實現與有監督方法相媲美的分割結果。
三維模型的分割有助于模型的后續分析、處理和應用。目前,三維模型的分割形式主要有兩類:單體三維模型分割和三維模型簇協同分割。
基于幾何的分割方法利用特定的描述符提取三維模型的幾何特征,通過分解和聚類技術完成三維模型分割。隨機游走(random walk,RW)算法和分水嶺(watershed segmentation,WS)算法是二維圖像分割中常見的算法,研究者將其擴展用于三維模型分割。Shlafman 等人提出將均值聚類應用于三維模型分割,通過聚類相似面片得到分割結果,該方法的分割面片數目可以預先設定,從而避免了過分割。Liu 等人提出譜聚類算法,將三維模型分割問題轉化為圖的切割問題,通過圖構建一個相似矩陣并結合均值聚類算法得到模型的分割結果。然而,這些方法依賴于特征描述符提取的幾何層面的低層次特征,無法提取具有語義性質的高層次特征,而且若輸入的是同一類的若干三維模型,利用單一的特征描述符分割的結果往往會存在較大的差異。
近年來,隨著深度學習技術的發展,研究者開始將其應用于三維模型的分析領域,形成了基于數據驅動的模型分析方法。深度學習盡管在二維圖像數據分析方面取得了巨大成功,但由于三維模型具有復雜的特征和拓撲結構,無法像二維圖像一樣直接將原始數據輸入到學習算法中,因此許多學者致力于采用卷積神經網絡(convolutional neural network,CNN)分析三維模型。文獻[12]提出了基于多視圖的卷積神經網絡(multi-view convolutional neural network,MVCNN)。其思想是首先將三維模型投影為多個視角下的二維圖像,得到不同視角下該模型的多視角姿態圖像;然后通過CNN 對每個視圖提取特征,將不同視角下提取的特征通過圖池化層進行聚合;最后將聚合后的特征再輸入到CNN 中,從而獲得三維模型的分割結果。文獻[13]提出一種基于體素的卷積神經網絡(deep voxel convolutional neural network,DVCNN)的方法。首先利用體素化技術將三維多邊形網格模型轉化為二值的三維體素矩陣,然后通過深度體素卷積神經網絡獲取模型的深層特征。然而,多視圖和體素化方法在處理三維模型過程中都要將原始數據轉化為卷積神經網絡可以處理的數據形式,這一過程會丟失三維模型的信息,例如體素化會損失空間分辨率,多視圖會丟失三維模型的部分幾何信息。
以上這些方法都是針對單體三維模型的分割,在有監督的分割方法中,單個模型無法提供足夠的幾何信息,且需要人工設計大量的標注數據,即使在大數據時代,獲取大批高質量的標注數據往往成本高昂,限制了此類方法的發展。
近年來,研究者開始關注三維模型簇的協同一致分割。協同分割旨在對一組拓撲結構相似的同類或不同種類的模型進行一致分割,其利用模型排列方式和共同特征,在模型間建立對應關系傳播相關性信息以實現協同分割。Golovinskiy 等人首次提出協同分割方法,將三維模型協同分割問題轉化為圖分割問題,通過對齊所有模型并聚類其圖元來獲得模型簇的一致性分割。Sidi 等人引入了一種基于描述符的模型分割方法,該方法依靠多個特征描述符來表征原始面片之間的特征,將協同分割問題看成特征空間的聚類問題。文獻[18]提出了一種基于深度學習的無監督三維模型分割方法,利用深度神經網絡從低級特征中提取若干同一類模型的高級特征,并將這些高級特征進行聚類運算得到模型的一致性分割結果。然而,由于低級特征描述符提取的特征容易受到三維模型的幾何形狀和拓撲結構的影響而改變,為了解決這一問題,研究者提出了有監督的方法,將分割視為一個標記問題。Kalogerakis等人利用機器學習技術,構造分類器來預測類標簽。Guo 等人引入了使用卷積神經網絡預測標簽的深度學習框架。這兩種方法都是基于幾何特征和人工標記的訓練數據。文獻[21]提出的PointNet++網絡架構直接作用于點云數據,將點作為輸入并輸出類標簽,能進一步提升模型分割效果。但是此方法對帶標簽的數據集依然有較強的依賴性,數據集的質量影響網絡的性能。此外,為了實現模型簇的協同分析,需要在整個模型簇中逐點分析各個模型的共有潛在特征,將這些特征進行協同分析難度較大。目前,弱監督學習是一種能降低網絡對帶標簽數據集依賴性的方法,文獻[22]提出一種膠囊網絡能以小部分標注的數據實現三維點云模型分割任務,但網絡中的動態路由機制需要耗費大量的存儲空間,并且在模型重構過程中存在一定的誤差。文獻[23]構建了一種基于分支式自動編碼器的協同分割網絡架構,其中每個分支分別學習輸入模型的一個部件特征。該網絡能以弱監督學習方式實現模型分割任務,但缺乏模型簇的一致性優化且對輸入集較小的模型簇分割效果不佳。文獻[24]提出一種利用云級弱標簽來訓練語義分割網絡的方法。該方法可以顯著降低標注數據集的人工和時間成本,且一定程度上解決了類標簽數據不均衡的問題,使得網絡提高了對小對象的分割精度,但該網絡設計的多路徑注意力模塊可能會導致網絡復雜度較高。文獻[25]提出一種作用于點云數據的自適應協同分割網絡架構,將三維模型分割轉化為點標記問題。該方法通過迭代最小化組一致性損失來生成模型部件標簽以實現同類模型間的協同分析,但當不同類別模型混合在一起時,網絡便很難學習到其所有部件特征,且學習的權值不能隨著新模型的出現而不斷更新,使得跨類別學習受限。
綜上所述,雖然無監督和有監督三維模型協同分割方法在一些場景下取得了比較好的結果,但無監督方法過度依賴人工設計的描述符,有監督的方法又依賴于大量人工標注的數據集,這兩種方法都費時費力,增加了網絡的學習成本。而弱監督學習(weakly supervised learning,WSL)方法可以看作上述兩種方法的混合,并且弱監督學習技術作為一種可以同時有效利用有標簽數據和無標簽數據的學習范式,大大降低監督任務對于標簽數據的需求。因此,本文在文獻[4]的基礎上,提出一種基于弱監督學習的卷積神經網絡架構,實現對三維模型簇的協同一致分割。
三維點云模型由一系列具有幾何信息的點集構成,其分割的實質是對點集進行逐點分類,旨在將同一類別的點分類到所屬的部件中得到模型分割結果。因此,本文提出利用局部卷積方法并構建局部鄰域圖來解決上述問題,并通過弱監督方法采用少量標注的數據進行訓練,提高了網絡架構的普適性和分割效果。
三維點云模型是一組無序點的三維坐標信息集合,然而每個點也不是獨立存在的,相鄰點之間有相似的幾何信息,因此,建立點與點之間的關聯性可以更好地表征三維模型的局部特征信息,圖1 為點的鄰域圖構建過程。定義一個點集為{p=(x,y,z)|=1,2,…,},其中p為點云中任意一點,由該點對應的坐標(x,y,z) 表示,以p為中心點利用K 近鄰(Knearest neighbour,KNN)方法建立局部有向圖,由頂點集和邊集構成,定義如下:


圖1 鄰域圖構建過程Fig.1 Construction process of neighborhood graph
式中,e為第個有向邊集合,e表示相鄰點p到中心點p的有向邊。
局部卷積操作用于提取中心點的特征和中心點與K 近鄰域點的邊緣向量。由于點云模型是一組無序的點集,采用最大池化操作,該方法不受鄰域點順序的影響,可以提取所有邊向量中最主要的特征。對所有的點定義一個相同的特征提取函數f,則輸入一個中心點是p的局部鄰域圖可以得到輸出局部特征l,公式如下:

式中,(p,e)是中心點p和一個邊向量e之間的隱藏特征向量。輸出的局部特征l取隱藏特征向量的最大值max{}。
對于分割任務,需將全局特征與提取的局部特征逐點進行拼接,并采用多層感知機(multilayer perceptron,MLP)對每個點輸出一個預測分數。因此,局部卷積操作方法公式定義如下:

式中,p′表示更新后的點特征,它將每個點的自身特征與對應的鄰點相關聯,□表示一種通用的對稱函數,如池化操作或者求和。總之,局部卷積將多層感知機應用于每個點和相應的鄰域以捕獲局部感受野,然后用最大池化運算生成與局部特征相關聯的新維度特征的新點集。局部卷積過程如圖2 所示。

圖2 局部卷積過程Fig.2 Local convolution process
局部卷積操作的最主要作用就是生成邊特征,其用于表征每個點與其鄰域點之間的關系。這種卷積方法有兩個優點:(1)通過KNN Graph 能夠在保持排列不變性的同時,可以更好地提取點局部信息,提高點云模型的分割效果;(2)在經過多層迭代之后能夠更好地捕捉到潛在的遠距離相似特征。
每一個三維點云模型都是三維空間中逐點坐標構成的集合,為了建立多個同類模型之間的關聯性實現協同分析,根據三維點云模型的特性,本文提出了基于局部卷積操作部件分割網絡。首先將點集輸入到網絡并建立關于點的局部鄰域圖,以每個點為頂點,相鄰點之間的有向邊表示相鄰點對之間的關聯性;然后利用局部卷積操作提取點云模型特征,得到各類部件的分割結果;最后利用相似部件矩陣分析模型之間的協同性。
本研究中構建的深度學習網絡結合了弱監督學習方法,旨在對同類模型的若干少量標注的樣本同時進行學習,因此網絡在提取模型特征之后,將同類部件特征描述符堆疊于相似部件矩陣,然后用一個能量函數在反向傳播中不斷優化網絡參數,從而實現對同一類模型的多個樣本的一致性分割,網絡的協同分析特性也由此體現。
設三維點云模型為點集{p=(x,y,z)|=1,2,…,},其中表示點的數目,網絡將點云數據作為輸入,直接對原始點集進行采樣。為了減少采樣損失,本文提出在采樣前從被采樣點中選擇子集的鄰域,這樣就能將丟棄的點的信息嵌入在鄰域中。如圖3 所示,使用迭代最遠點采樣(iterative farthest point sampling,FPS)策略選擇個點作為子集。首先,從原始點集中取出一個點p作為起始點,并寫入子集中,然后迭代地將與上一個選取點的距離最遠的點添加至子集中,直到取夠個點。與隨機采樣相比,FPS 策略對整個點集有更好的覆蓋率。
三維點云模型分割的實質是對點的逐點分類,即為點集中的每個點預測一個部件類別標簽,因此需要提取所有點的特征。常用的策略有兩種:一種是文獻[4]和文獻[26]采用的將所有點作為質心來進行采樣的方法,即將整體和局部特征連接在一起輸出每個點的預測分數。然而,這種方法會導致較高的計算成本。另一種是文獻[21]采用的基于距離插值的分層傳播策略和跨層跳躍鏈接方式。本文基于第二種策略,結合KNN 算法和局部卷積方法進行上采樣,為了從給定的子采樣點集及其對應特征中生成插值點,插值策略基于個近鄰點的歐式距離平方倒數值的加權平均值,其值由式(4)計算可得。

式中,w()=1/(-p)是和p之間的歐式距離平方的倒數。將插值后的點特征與相對應層點特征拼接在一起,并通過局部卷積將它們融合。
基于局部卷積的部件分割網絡的基本架構如圖3所示。首先,原始點云數據經過兩層為采樣層和對應的局部卷積層操作,轉化為128×128 的張量。然后,使用兩個上采樣層和相對應的局部卷積層([256,256],[512,512,1 024])提取細粒度特征。最后,通過一個最大池化操作獲取點云的全局特征,并且利用4個多層感知機(256,256,128,)將全局特征轉換為個部件類別,dropout設置為0.6。

圖3 局部卷積的部件分割網絡Fig.3 Component segmentation network of LocalConv
本文構建的協同分割網絡通過反向傳播學習到最優的網絡權值,該方法基于部件特征上定義的能量函數,公式如下:

式中,M和M分別表示不同的部件特征矩陣;表示矩陣的秩大小;表示將兩個不同的部件矩陣聯合。
圖4 為協同分割網絡總體架構。網絡首先對原始點云數據利用最遠點采樣法進行采樣,經過局部卷積網絡得到部件分割結果。在此過程中,網絡對同一類別三維點云模型的多個樣本同時進行訓練,經過全連接層將點云模型逐點進行分類,使每個點得到一個預測分數,接著將個類別的抽象標簽{,,…, L}分別分配于每個模型中的逐個標記點,以此判斷該點屬于哪一個部件,并通過權值共享和標簽傳播方法預測未標記點的所屬部件類別,每個模型中帶標簽L的點集構成模型的單個部件。然后采用最大池化(max pooling)操作為每個模型的各個部件生成一個與之對應的特征描述符,且帶有標簽L的所有部件具有相似的特征描述符。最后,將所有帶標簽L的部件描述符堆疊在一個特征矩陣M中,且矩陣秩越小表示部件的特征越一致。此外,將帶不同標簽的特征描述符拼接在一起,構造一個新的聯合矩陣(M,M)。因為帶不同標簽的部件具有不同特征,所以矩陣M和矩陣M的行并集的秩更大,該矩陣秩越大,表示不同部件之間的特征越不一致。因此,本文算法以最小化同類別語義標簽的部件特征矩陣的秩,同時最大化不同類別語義標簽的聯合部件特征矩陣的秩為目標,優化協同分割網絡的權重實現模型簇的一致性分割。

圖4 協同分割網絡架構Fig.4 Co-segmentation network framework
本研究基于弱監督學習方法構建協同分割網絡獲得點云模型一致性分割結果,在網絡訓練的點云數據中只需標記很小一部分點,就可以產生接近甚至優于有監督的結果。因此,本研究的核心在于利用弱監督學習方法以少量標記的數據以實現三維點云模型簇的協同分割。
基于深度學習的弱監督學習方法一般根據其數據類型可分為三類:不完整監督學習,其數據中只有一部分有標記;不確切監督學習,其數據中標記數據粗粒度太大;不準確監督學習,其數據中標簽有錯誤。本研究中采用不完整的弱監督學習方法,旨在使用較弱的標注數據進行實驗。訓練集只需要在訓練階段標記很小的一部分點,并且通過KNN 算法構建局部鄰域圖獲得點與點之間關聯特征。此時,圖中的每一個節點就是一個數據點,包含已經標記和未標記的數據,并以標簽傳播的形式推斷出未標記點的所屬類別。為了實現標簽傳播,將構建的KNN鄰域圖的相應的權重矩陣∈R表示為:

式中,||p-p||表示點對之間的距離,為超參數。利用KNN 算法只保留每個點的K 近鄰權重,其他為0。然后通過節點之間的邊傳播標簽,邊的權重越大,表示兩個節點越相似,使得標簽容易從標記點傳播到未標記點。因此,定義概率轉移矩陣:

式中,t表示標簽從節點轉移到節點的概率。經過標簽傳播策略,深度神經網絡便學習到了更多的帶標簽的數據,經過能量函數反饋使網絡參數達到最優,這樣網絡的輸出便是理想的協同分割結果。
本實驗采用的實驗環境為Linux Ubuntu 16.04 操作系統,硬件是Intel Core i9 9900k CPU 和NVIDIA Rtx 2080Ti GPU(11 GB 顯存)處理器,采用的深度學習框架為Tensorflow,基于該框架的深度學習運算平臺為CUDA 9.0,GPU 加速庫為cudnn 7.0。
為了與其他算法進行比較,本文采用ShapeNet Parts數據集,該數據集包含16 881 個三維模型,16個類別,共50 個帶有標簽的部件,大多數模型都被標記為2 至5 個部件,且標簽都被注釋在三維模型的采樣點上。
為了提高模型分割精度,從模型表面均勻采樣2 048 點進行訓練和測試實驗。實驗中采用自適應矩估計(adaptive moment estimation,Adam)對神經網絡模型進行優化。初始學習率設為0.003,以便在較高的學習率下快速得到最優解。動量設置為0.8,避免網絡在更新參數時陷入局部最優。為防止訓練時網絡中間層數據分布不一致,在網絡的每個輸入層前插入一個批歸一化層(batch normalization),將批處理歸一化的指數衰減系數設為0.5,使損失函數能夠快速收斂。在本實驗中,批尺寸大小設置為32 時,對網絡梯度的影響最小。
三維點云模型的分割準確率以點集上的交并比(intersection over union,IoU)來度量,IoU 主要計算兩個集合的交集和并集之間的比率,用于模型分割指真實分割部件和預測部件的交集和并集之間的比率,對于點云模型分割任務,需要先計算每類模型的IoU 值,公式如下:

式中,表示真正樣本數量;表示真實的真樣本數量;表示預測的真樣本數量。
在得到每類模型的IoU 值之后,為了評估網絡對整個模型簇的分割效果,需要引入平均交并比(mean intersection over union,mIoU)來進行度量,公式如下:

式中,表示三維模型的類別數,mIoU 的值越大表明真實值與測試值越接近,從而得到模型分割的效果也更好。在ShapeNet Parts 數據集中,由于不同類別的模型數量均不同,需要從定量的角度繼續對分割準確率進行評估,故引入部件交并比(part averaged IoU,pIoU)進一步做對比,公式如下:

該式表示根據每一類模型出現的頻率對各個類的IoU 進行加權求和,本實驗中頻率即每類模型的數量。pIoU 值越高,表明分割準確率越高。
本文算法對三維點云模型簇的協同分割效果如圖5 所示,其中不同顏色的點云表示不同的模型分割部件。可以看出,每一類模型對應的同類部件的顏色是一致的,較好地體現出了三維模型簇協同分割的一致性。

圖5 點云模型協同分割結果Fig.5 Co-segmentation results of point cloud shapes
本文算法與文獻[4]、文獻[21,23]、文獻[26]和文獻[28]的算法在ShapeNet 數據集上的實驗結果對比如表1 所示。本文算法采用了弱監督策略,并通過KNN 方法建立點的局部鄰域圖以更好地關聯采樣點之間的信息,當對模型中的各個部件分別只標記一個點時已經能夠獲得具有競爭力的結果,當標記10%的點時,相比文獻[4]的算法,mIoU 值提高0.012,pIoU 值提高0.014。此外,本文算法以一個能量函數反向傳播迭代產生模型的一致性分割結果,相比文獻[28]采用的遞歸鄰近搜索策略的mIoU 值提高0.042,pIoU 值提高0.027。由于本文算法采用弱監督學習策略,并且用少量標注的數據進行實驗,分割準確率略低于文獻[21]和文獻[26]的方法。但其相比文獻[22]和文獻[23]所采用的弱監督策略,mIoU 值分別提高0.007 和0.017,pIoU 值分別提高0.001和0.004。

表1 不同算法的分割準確率對比Table 1 Comparison of segmentation accuracy of different algorithms 單位:%
本研究進一步對比不同算法在各類模型上的分割準確率,結果如表2 所示。文獻[4]、文獻[21]、文獻[26]和文獻[28]都采用了有監督策略,而文獻[22]、文獻[23]和本文算法采用了弱監督策略,當模型各部件被標記一個采樣點時,本文弱監督策略與文獻[28]的有監督策略相比,部分模型的分割準確率有一定的提升,其中帽子模型(cap)和杯子模型(mug)的準確率分別提高0.049 和0.036。當訓練樣本中被標記采樣點提升至10%時,各類模型的分割準確率已能和對比文獻有監督策略的分割結果相媲美,且部分模型的分割效果甚至優于有監督學習方法。對比文獻[28],汽車模型(car)和火箭模型(rocket)的分割準確率提升最為明顯,分別提高0.075 和0.101。文獻[26]采用邊緣卷積方法關聯點云模型點之間的特征,當分割訓練樣本數目較多的模型時,分割結果優于其他算法,如飛機模型(airplane)、椅子模型(chair)和吉他模型(guitar)。對比文獻[26],本文算法在飛機(airplane)、椅子(chair)和吉他(guitar)三類模型的分割準確率分別降低0.005、0.011 和0.006,但在汽車模型(car)、刀模型(knife)、火箭模型(rocket)和桌子模型(table)上的分割準確率分別高于文獻[26]算法0.007、0.003、0.022 和0.009。文獻[22]利用動態路由驅動的注意力機制能有效提取局部特征信息,從而對模型的細小部件具有較高的分割準確率,如對摩托車模型(motorbike)的分割準確率高于本文算法0.044。文獻[23]采用分支自動編碼器,每個分支分別學習輸入模型的一個部件特征,沒有模型簇一致性優化,對于輸入集數目較少的模型類別分割準確率較低。如本文算法在包模型(bag)、耳機模型(earphone)和火箭模型(rocket)的分割準確率分別高于文獻[23]算法0.099、0.069 和0.048。實驗結果表明,與有監督算法相比,本文弱監督策略能夠在標記點減少至10%的情況下,對各類模型分割時依然能夠獲得具有競爭力的結果,與采用不同策略的弱監督方法相比,本文算法的主要優勢在于通過構建部件特征矩陣來約束模型分割結果的一致性,并在更弱的監督情況下以標簽傳播策略實現對未標記點的標簽預測,能在完成協同分割任務的同時進一步提高分割準確率。因此,弱監督策略的優勢在本文算法中也得以體現。

表2 不同算法在各類模型的分割準確率對比Table 2 Comparison of segmentation accuracy of different algorithms on each category of shape cluster 單位:%
本網絡架構的各模塊作用至關重要,為了更好地分析網絡各模塊對結果的影響,消融實驗的分割準確率對比如表3 所示。可以看出:(1)對網絡性能影響最大的是局部卷積模塊,將局部卷積模塊移除后分割結果mIoU 降低為56.3%,在圖2 中展示了該模塊的結構特點,在經最遠點采樣之后,局部卷積能表征每個采樣點與其鄰域點之間的空間關系,以彌補采樣過程丟失的特征信息。(2)移除能量函數(energy function)對分割結果的影響次于(1),證明這個模塊能有效實現反向傳播學習,并以特征矩陣來約束分割結果的一致性。(3)利用隨機采樣替換最遠點采樣之后,分割準確率有所下降,因為該采樣方法不能對采樣空間有很好的覆蓋率,不利于后續提取特征信息。經消融實驗結果表明,本文構建的網絡各組件是有效的,并且能夠相互補充以達到最佳性能。

表3 驗證各模型組件有效性的消融實驗對比Table 3 Comparison of ablated experiments to verify effectiveness of each model component
為了驗證本文算法所采取的弱監督樣本標注策略具有一定的優勢,實驗中分別對三種標注策略進行驗證,對比結果如表4 所示。標記策略由100%的訓練樣本(sample)和每個樣本具有的標記點(Pts)所限定。實驗結果表明,隨著訓練樣本的標記點從100%降低至10%,分割結果的mIoU 值從82.19%降低到81.70%,pIoU 值從85.10%降低到85.00%,分別降低0.49個百分點和0.1個百分點。因此,從實驗結果可知隨著標記點數比例的減少(由100%減少到10%),本文算法的分割準確率變化并不明顯,有效驗證了本文算法對標記點數量的依賴性較小,對標記點的減少有很強的魯棒性和弱監督性,節約了費時費力的人工標記成本。

表4 不同標記策略對ShapeNet Parts分割的比較Table 4 Comparison of different labelling strategies on ShapeNet Parts segmentation 單位:%
本文提出了一種基于弱監督學習的協同分割網絡架構,目的是以少量標記數據解決三維點云模型的協同分割問題。首先,使用最遠點采樣方法對原始點云進行采樣,并通過KNN 算法建立點的局部鄰域圖關聯點與點之間的信息,從而更好地表征模型局部特征。然后,利用局部卷積方法提取模型特征,以生成模型各部件對應的特征描述符。最后,通過構建部件特征矩陣,通過深度學習網絡中的能量函數反向傳播迭代得到模型簇的一致性分割結果。在ShapeNet Parts數據集上進行實驗,與文獻[4]、文獻[26]等有監督方法相比較,本文提出的深度學習網絡只需要少量標記點就可以有效實現點云模型分割,而且在標記點減少至10%的情況下可取得與有監督算法相媲美的結果,并與文獻[22]和文獻[23]弱監督方法相比,本文算法在更弱的監督情況下取得了更好的分割結果。然而,本文算法也存在局限性:一方面,算法對于每一個點在LocalConv 都有明確的近鄰關系,因此網絡計算復雜度更大,在處理大規模點云數據時效率會降低;另一方面,由于本文算法采用弱監督策略,在數據集需求方面具有明顯優勢,使得網絡具有更強的普適性,但是與完全有監督算法相比,部分模型的分割結果有明顯差距。這都是未來需要繼續研究的問題。