王本杰,農(nóng)麗萍,張文輝*,林基明,王俊義
(1.桂林電子科技大學(xué)信息與通信學(xué)院,廣西桂林 541004;2.西安電子科技大學(xué)通信工程學(xué)院,西安 710071;3.廣西師范大學(xué)物理科學(xué)與技術(shù)學(xué)院,廣西桂林 541004)
(?通信作者電子郵箱zhangwh@guet.edu.cn)
隨著三維成像技術(shù)的快速發(fā)展,結(jié)構(gòu)光測(cè)量[1]和激光掃描[2]等方法趨于成熟,使得它們能夠快速而準(zhǔn)確地獲取物體表面的三維坐標(biāo),從而生成場(chǎng)景的點(diǎn)云數(shù)據(jù),更好地感知和理解周圍環(huán)境。點(diǎn)云數(shù)據(jù)具有無序性、不規(guī)則性和置換不變性等特點(diǎn),并且它對(duì)復(fù)雜場(chǎng)景以及物體的外形表達(dá)具有獨(dú)特的優(yōu)勢(shì),加之其獲取的快速性和便捷性,已被廣泛地應(yīng)用在自動(dòng)駕駛[3]、自動(dòng)室內(nèi)導(dǎo)航[4]和機(jī)器人科學(xué)[5]等技術(shù)上。點(diǎn)云識(shí)別對(duì)于計(jì)算機(jī)視覺和人工智能的發(fā)展具有重要的意義,但是傳統(tǒng)卷積結(jié)構(gòu)只能夠處理規(guī)則數(shù)據(jù)如圖片和文本等,對(duì)于點(diǎn)云數(shù)據(jù)需將其處理為多視圖或者體素化網(wǎng)格的形式然后利用深度學(xué)習(xí)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。然而這些形式轉(zhuǎn)換往往會(huì)造成特征信息的丟失,因此目前點(diǎn)云識(shí)別的方法存在點(diǎn)云分類精度低和點(diǎn)云分割效果差等缺陷。
最近,研究者嘗試?yán)蒙疃葘W(xué)習(xí)網(wǎng)絡(luò)直接處理點(diǎn)云數(shù)據(jù),并已取得階段性的成果。文獻(xiàn)[6]通過離散化數(shù)學(xué)上卷積的積分公式和使用一組特殊的參數(shù)化非線性的函數(shù)作為濾波器,從而引入Spider 卷積的概念。Spider 卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)由多個(gè)Spider 卷積構(gòu)成,以原始點(diǎn)云數(shù)據(jù)直接作為網(wǎng)絡(luò)的輸入,提取點(diǎn)云有效特征用于點(diǎn)云分類和分割。Spider CNN 在ModelNet40數(shù)據(jù)集上達(dá)到了92.4%的分類精度,并且在分割任務(wù)上表現(xiàn)出一定程度的競(jìng)爭(zhēng)力。
為了進(jìn)一步提高M(jìn)odelNet40 和ShapeNet Parts 數(shù)據(jù)集上的識(shí)別效果,本文在Spider CNN 的基礎(chǔ)上設(shè)計(jì)出Linked-Spider CNN,用于目標(biāo)分類和模型分割任務(wù)。具體過程如下:首先在Spider CNN 的基礎(chǔ)上增加Spider 卷積層數(shù),然后每層Spider 卷積建立短連接構(gòu)成殘差塊[7]。殘差塊是逐層進(jìn)行訓(xùn)練,每一層殘差塊的輸出為不同層次的點(diǎn)云特征。前一層的輸出作為下一層的輸入,隨著層數(shù)的增加,點(diǎn)云深層次特征也逐漸被提取。其次,將每一層殘差塊的特征進(jìn)行拼接融合形成點(diǎn)云特征。最后使用點(diǎn)云特征,用幾層全連接網(wǎng)絡(luò)或者卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行點(diǎn)云分類或者分割。在公開數(shù)據(jù)集ModelNet40 和ShapeNet Parts 上進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果表明,Linked-Spider CNN 可以有效提取點(diǎn)云點(diǎn)云特征,得到較好的點(diǎn)云分類和分割效果。
隨著計(jì)算機(jī)視覺和人工智能等應(yīng)用的需要,對(duì)于三維點(diǎn)云數(shù)據(jù)的研究愈發(fā)受到人們的重視。點(diǎn)云數(shù)據(jù)的分類和分割效果的好與壞,關(guān)鍵在于點(diǎn)云特征提取方法。研究者們提出了一系列利用深度學(xué)習(xí)網(wǎng)絡(luò)提取點(diǎn)云特征的方法?;谏疃葘W(xué)習(xí)的點(diǎn)云特征提取的方法[8]可分為基于多視圖方法、基于體素化網(wǎng)格方法和基于原始點(diǎn)云數(shù)據(jù)方法。
基于多視圖的方法是將點(diǎn)云數(shù)據(jù)投影成不同視角下的圖片,然后利用傳統(tǒng)卷積神經(jīng)網(wǎng)絡(luò)對(duì)圖片進(jìn)行處理如文獻(xiàn)[9-10];然而這種方法會(huì)丟失空間幾何結(jié)構(gòu)信息,并且計(jì)算量較大。
目前,許多工作將點(diǎn)云數(shù)據(jù)處理類比于圖像處理,先將點(diǎn)云構(gòu)造成體素化網(wǎng)格,然后利用三維卷積處理。文獻(xiàn)[11-12]將點(diǎn)云數(shù)據(jù)轉(zhuǎn)化為常規(guī)的體素化網(wǎng)格。然而體素化處理會(huì)導(dǎo)致數(shù)據(jù)的稀疏性和計(jì)算量增加。文獻(xiàn)[13]研究解決數(shù)據(jù)的稀疏性問題。相較于二維卷積,三維卷積多了一個(gè)維度,使得在處理體素化網(wǎng)格時(shí)計(jì)算量大大增加,空間復(fù)雜度較高。
鑒于上述方法的弊端,研究者們提出了一系列深度學(xué)習(xí)方法直接處理原始點(diǎn)云數(shù)據(jù)。PointNet[14]利用多層感知機(jī)提取每一個(gè)點(diǎn)的深層特征,并利用最大池化得到每個(gè)點(diǎn)云的全局特征,在點(diǎn)云分割和和分類任務(wù)上取得較好的效果。然而,PointNet忽略了點(diǎn)與點(diǎn)之間的幾何關(guān)系,導(dǎo)致局部特征信息缺失。PointNet++[15]和動(dòng)態(tài)圖卷積神經(jīng)網(wǎng)絡(luò)(Dynamic Graph CNN,DGCNN)[16]是對(duì)PointNet 改進(jìn)得來的,并取得了不錯(cuò)的實(shí)驗(yàn)效果。Li 等[17]提出了Point CNN,通過利用X-Conv 將輸入特征的順序歸一化,然后利用CNN 對(duì)歸一化之后的特征進(jìn)行處理,該網(wǎng)絡(luò)在點(diǎn)云分類任務(wù)上比PointNet++效果更好。Xu 等[6]利用數(shù)學(xué)上離散卷積運(yùn)算設(shè)計(jì)出Spider 卷積,并且構(gòu)造出Spider CNN進(jìn)行點(diǎn)云分類和分割。最近,Xie等[18]提出基于自注意的圖卷積網(wǎng)絡(luò)(Attention-based Graph Convolution Network,AGCN),通過在AGCN 中引入自注意機(jī)制來分析點(diǎn)的局部特征關(guān)系;此外,還引入了一個(gè)全局圖結(jié)構(gòu)網(wǎng)絡(luò)來補(bǔ)償圖結(jié)構(gòu)網(wǎng)絡(luò)中的單個(gè)點(diǎn)的相關(guān)信息。
在這一部分中,本文對(duì)Spider 卷積原理和Spider CNN 的構(gòu)成以及Spider 卷積構(gòu)成的殘差塊進(jìn)行闡述,最后詳細(xì)講解Linked-Spider CNN的構(gòu)成。
點(diǎn)云作為深度網(wǎng)絡(luò)的輸入,實(shí)際上是三維點(diǎn)的集合。pi表示一個(gè)點(diǎn)云模型中第i個(gè)點(diǎn),包含6 個(gè)坐標(biāo),其中前三個(gè)坐標(biāo)表示位置信息,后三個(gè)表示法線特征:
其中,i和n分別表示點(diǎn)的順序和點(diǎn)云的總點(diǎn)數(shù)。
本文主要關(guān)注兩個(gè)工作:點(diǎn)云分類和分割。對(duì)于點(diǎn)云分類,本文需要對(duì)點(diǎn)云進(jìn)行處理,然后得出該點(diǎn)云的類別。因此,尋找到一個(gè)分類函數(shù)fc將輸入點(diǎn)云坐標(biāo)轉(zhuǎn)換為每種類別Pγ的概率分布是至關(guān)重要的:
對(duì)于點(diǎn)云分割,每一個(gè)點(diǎn)pi可以劃分為一個(gè)特定的類。因此,本文需要尋找一個(gè)分割函數(shù)fs,從而得到每個(gè)點(diǎn)pi的每種類別Pγi的概率分布:
一個(gè)信號(hào)函數(shù)f和濾波器函數(shù)g的卷積的積分公式為:
類似地,F(xiàn)是定義在點(diǎn)云集合X上的函數(shù),以X中任意一點(diǎn)pi為例,A={pj1,pj2,…,pjk}為pi的K近鄰點(diǎn)集合,濾波器函數(shù)g定義在集合A上,因此,定義點(diǎn)pi的Spider卷積輸出:
以此類推,可以得出點(diǎn)云中每一個(gè)點(diǎn)的Spider卷積特征。
在Spider 卷積中,濾波器函數(shù)g選用一組{gW}來代替,且在可學(xué)習(xí)參數(shù)W上分段可微。在Spider 卷積的訓(xùn)練中,參數(shù)矩陣W利用隨機(jī)梯度下降算法進(jìn)行優(yōu)化,同時(shí)梯度通過下面的公式進(jìn)行計(jì)算:
其中Wq為W的第q個(gè)分量。
關(guān)于濾波器函數(shù)gW的實(shí)現(xiàn),一個(gè)很自然的想法是使用多層感知機(jī)來近似表示,主要是因?yàn)槔碚撋蠐碛幸粋€(gè)或多個(gè)隱藏層的多層感知機(jī)可以近似任何一個(gè)連續(xù)函數(shù)[14]。但是在文獻(xiàn)[6]中,利用多層感知機(jī)所得到的效果卻并不太好。因此,一組特別的濾波器函數(shù){gW}[6]被提出。
如上所述,Spider 卷積可以很好地獲取點(diǎn)云的局部特征。Spider CNN 由多個(gè)Spider 卷積構(gòu)成,繼承了經(jīng)典CNN 的多尺度層次結(jié)構(gòu)。如果在Spider CNN 中單純地增加Spider 卷積層數(shù),并不能提高其在點(diǎn)云識(shí)別任務(wù)中的效果,且會(huì)出現(xiàn)隨著Spider卷積層數(shù)的增加識(shí)別效果變差的現(xiàn)象,在本文的第3章對(duì)此有詳細(xì)的說明。
深度網(wǎng)絡(luò)中特征的層次可以靠加深網(wǎng)絡(luò)的層次來豐富,所以本文傾向于使用更深層次的網(wǎng)絡(luò)結(jié)構(gòu),以便取得更高層次的特征。但是在使用深層次的網(wǎng)絡(luò)結(jié)構(gòu)時(shí)總是會(huì)遇到兩個(gè)問題:網(wǎng)絡(luò)退化和網(wǎng)絡(luò)收斂速度慢問題。
為了解決在Spider CNN 中單純地增加Spider 卷積層數(shù)而出現(xiàn)的識(shí)別效果變差的現(xiàn)象,本文引入殘差網(wǎng)絡(luò)的思想。殘差網(wǎng)絡(luò)是由來自Microsoft Research 的4 位學(xué)者提出的卷積神經(jīng)網(wǎng)絡(luò),在2015 年的ImageNet 大規(guī)模視覺識(shí)別競(jìng)賽中獲得了圖像分類和物體識(shí)別的優(yōu)勝。殘差網(wǎng)絡(luò)通過增加網(wǎng)絡(luò)深度來獲取深層次語義信息從而提高精確度,其內(nèi)部的殘差塊使用了跳躍連接,可以緩解網(wǎng)絡(luò)退化和收斂速度慢等問題。本文利用殘差網(wǎng)絡(luò)的思想,在每層Spider 卷積上進(jìn)行跳躍連接構(gòu)成一個(gè)殘差塊,如圖1 所示,其中,符號(hào)⊕表示兩個(gè)張量相加,虛線框內(nèi)表示一個(gè)殘差塊。
圖1 Spider卷積構(gòu)成的殘差塊Fig.1 Residual block composed of Spider convolutions
為了獲得更好的點(diǎn)云分類和分割效果,需要獲得更為精細(xì)的點(diǎn)特征,因此本文通過殘差網(wǎng)絡(luò)的思想與Spider CNN 結(jié)合起來,在Spider CNN 中增加Spider 卷積層數(shù)以及在每層Spider 卷積增加短連接構(gòu)成一個(gè)殘差塊,從而設(shè)計(jì)出一種Linked-Spider CNN。Linked-Spider CNN 可以看作fc和fs函數(shù),可以直接處理點(diǎn)云數(shù)據(jù)。由圖2 所示,Linked-Spider CNN可分為兩部分,分別是特征提取和訓(xùn)練識(shí)別,其中,Tile 表示對(duì)一維張量進(jìn)行重復(fù)堆疊,從而形成高維張量。特征提取部分包括:
1)輸入層。具有n個(gè)點(diǎn)的點(diǎn)云模型n× 6 作為網(wǎng)絡(luò)的輸入,每個(gè)點(diǎn)由坐標(biāo)和法線特征組成。
2)Spider 卷積層。該網(wǎng)絡(luò)一共包含7 個(gè)Spider 卷積層,第1 個(gè)Spider卷積層(64,1,1)中3 個(gè)參數(shù)依次表示通道數(shù)64、卷積核的尺寸1× 1,步長(zhǎng)為1× 1,其他的Spider 卷積層與此類似。
3)卷積層。第1 個(gè)卷積層(64,6,1)中3 個(gè)參數(shù)依次表示通道數(shù)64、卷積核的尺寸1× 6,步長(zhǎng)為1× 1;第2 個(gè)卷積層(128,1,1)中3 個(gè)參數(shù)表示通道數(shù)128,卷積核的尺寸1× 1,步長(zhǎng)為1× 1;第3個(gè)卷積層(1 024,1,1)與此類似。
4)池化層。該網(wǎng)絡(luò)采用TOP-k[6]池化層,輸出為每個(gè)通道的前k個(gè)最大值,然后將其一維化,從而得到一維張量(k×1024)。
訓(xùn)練識(shí)別又可分為點(diǎn)云分類(上)和點(diǎn)云分割(下):
1)點(diǎn)云分類:一維張量(k× 1024)為輸入,通過3 層全連接層,每層輸出的特征維度分別為512、256、40。在前2 層的全連接層后面加入Dropout,且Dropout 率為0.5,圖中并未畫出。
圖2 Linked-Spider CNNFig.2 Linked-Spider CNN
2)點(diǎn)云分割:一維張量(k× 1024)為輸入,通過4層卷積,每層的通道數(shù)分別為512、256、128、50,卷積核和步長(zhǎng)都為1×1。在前2 層卷積后面加入Dropout,且Dropout 率為0.8,圖中并未畫出。
為了更好地說明本文網(wǎng)絡(luò)的優(yōu)越性,本文做了大量的實(shí)驗(yàn),將Linked-Spider CNN 與傳統(tǒng)方法進(jìn)行比較。實(shí)驗(yàn)分為三個(gè)模塊:點(diǎn)云分類實(shí)驗(yàn)、點(diǎn)云分割實(shí)驗(yàn)和網(wǎng)絡(luò)設(shè)計(jì)分析。
本文在ModelNet40 和ShapeNet Parts 數(shù)據(jù)集每一個(gè)三維模型中分別采樣1 024個(gè)點(diǎn)和2 048個(gè)點(diǎn)。在點(diǎn)云數(shù)據(jù)的每一次迭代訓(xùn)練時(shí),需要隨機(jī)打亂訓(xùn)練數(shù)據(jù)的排列順序。同時(shí),為了增加訓(xùn)練的數(shù)據(jù)量,提高網(wǎng)絡(luò)的泛化能力,對(duì)于點(diǎn)云分類,本文需要旋轉(zhuǎn)每一批次的點(diǎn)云模型,并對(duì)點(diǎn)云數(shù)據(jù)進(jìn)行加噪處理,以及隨機(jī)縮放點(diǎn)云和丟棄點(diǎn)云中的點(diǎn);而對(duì)于點(diǎn)云分割,本文僅僅添加隨機(jī)高斯噪聲對(duì)點(diǎn)云數(shù)據(jù)進(jìn)行隨機(jī)抖動(dòng)。
實(shí)驗(yàn)中學(xué)習(xí)率參數(shù)為0.001,迭代次數(shù)為250 次,batch size參數(shù)為16,且使用Adam優(yōu)化器。
實(shí)驗(yàn)的硬件環(huán)境為英特爾Xeon E5-2675 處理器、16 GB顯存和128 GB 運(yùn)行內(nèi)存;軟件環(huán)境為Ubuntu 16.04 X64 操作系統(tǒng)、CUDA9.0、TensorFlow 1.7和Python 3.6。
對(duì)于點(diǎn)云分類任務(wù),在ModelNet40 模型分類數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn)測(cè)試。ModelNet40 模型庫(kù)包含40 類12 311 個(gè)CAD 模型,其中訓(xùn)練集有9 843個(gè)模型,測(cè)試集有2 468個(gè)模型。分類效果如表1 所示,需要說明的是總分類精度的上標(biāo)加“*”表示從GitHub 網(wǎng)站里面復(fù)制作者公布的源代碼運(yùn)行多次取最大的結(jié)果,其他未加“*”的精度表示為原文獻(xiàn)中所提供的精度。
表1 ModelNet40數(shù)據(jù)集上的總分類精度比較Tab.1 Total classification accuracy comparison on ModelNet40 dataset
由表1 可知,Linked-Spider CNN 在ModelNet40 數(shù)據(jù)集上取得了最佳的結(jié)果。Linked-Spider CNN 較PointNet 分類精度提高3.8 個(gè)百分點(diǎn)比PointNet++在分類精度上提高了1.1 個(gè)百分點(diǎn),這充分說明了Linked-Spider CNN 可以更好地學(xué)習(xí)到點(diǎn)云的有效特征,用于點(diǎn)云分類和檢索任務(wù);相較于DGCNN和Point CNN 兩種方法,Linked-Spider CNN 在輸入點(diǎn)云數(shù)據(jù)中增加了法線特征,并在總分類精度上分別高出兩種方法0.8個(gè)百分點(diǎn)和0.8 個(gè)百分點(diǎn);對(duì)于具有相同輸入的Spider CNN和AGCN,Linked-Spider CNN 比Spider CNN 的總分類精度(加“*”的精度)高出1.3個(gè)百分點(diǎn)且比AGCN 高出0.4個(gè)百分點(diǎn),表明通過增加網(wǎng)絡(luò)深度可以更好地提取點(diǎn)云深層次特征,從而提高總分類精度。
本文在ShapeNet Parts 數(shù)據(jù)集上評(píng)估了點(diǎn)云分割模型,ShapeNet Parts 數(shù)據(jù)集中共有16 881 個(gè)形狀,其中包含16 個(gè)類別和總共50 個(gè)部件。本文語義分割結(jié)果與PointNet、PointNet++、Spider CNN 和AGCN 的分割結(jié)果通過所有形狀的總平均交并比和每個(gè)類的平均交并比的評(píng)價(jià)指標(biāo)進(jìn)行比較,見表2。其中相較于PointNet 和PointNet++,由于采用Spider卷積可以很好地獲取點(diǎn)云的局部信息,總平均交并比分別提高了1.7個(gè)百分點(diǎn)和0.3個(gè)百分點(diǎn)。同Spider CNN 比較,在總平均交并比和每個(gè)類的平均交并比上,本文網(wǎng)絡(luò)均優(yōu)于Spider CNN,因?yàn)楸疚牟捎酶顚哟蔚木W(wǎng)絡(luò)結(jié)構(gòu)和殘差塊,所以可以得到更為精細(xì)的點(diǎn)特征。即便是與目前最新的AGCN進(jìn)行對(duì)比,本文網(wǎng)絡(luò)在多種類別的平均交并比上也占據(jù)優(yōu)勢(shì)。
表2 ShapeNet Parts數(shù)據(jù)集上的分割效果對(duì)比Tab.2 Segmentation effect comparison on ShapeNet Parts dataset
3.3.1 Linked-Spider CNN 的Spider 卷積層數(shù)及K近鄰選擇分析
Linked-Spider CNN 主要通過增加Spider 卷積層數(shù)來獲取點(diǎn)云的深層次的語義信息,因此Spider 卷積層數(shù)的選擇對(duì)網(wǎng)絡(luò)的性能尤為重要?,F(xiàn)對(duì)網(wǎng)絡(luò)中Spider 卷積的層數(shù)進(jìn)行探討,以ModelNet40 數(shù)據(jù)集為測(cè)試對(duì)象,選擇K近鄰算法中K值分別為12、16 和20,且在不同的K值下,將網(wǎng)絡(luò)中Spider 卷積的層數(shù)分別設(shè)置為4、5、6、7、8,分別得到如圖3所示的分類精度圖。從圖3(a)可以看出,在不同的K值下,Spider 卷積層數(shù)為7時(shí),效果為最好,且在K=12時(shí),Spider卷積層數(shù)為5和7的分類精度相同,但考慮到K=16 和Spider 卷積層數(shù)為7 時(shí)分類精度最高,因此最終選擇7 層的網(wǎng)絡(luò)。本文采用K近鄰算法來尋找pi的K個(gè)近鄰點(diǎn),通過聚合近鄰點(diǎn)的信息來獲得點(diǎn)云的局部特征,因此對(duì)K近鄰算法中K值的選取,本文作出詳細(xì)分析。本文選取不同的K值,得出相應(yīng)的分類精度,如圖3(b)所示。當(dāng)K為16,分類效果最好,表明可以更好地獲得點(diǎn)云的局部特征。
3.3.2 收斂速度分析
網(wǎng)絡(luò)參數(shù)的更新速度越快,越有利于網(wǎng)絡(luò)收斂。進(jìn)行了幾組實(shí)驗(yàn)。以ModelNet40 數(shù)據(jù)集為測(cè)試對(duì)象,將具有相同Spider 卷積層數(shù)(為4、5、6、7、8)的帶殘差塊Linked-Spider CNN 與不帶殘差塊的Spider CNN 進(jìn)行比較,實(shí)驗(yàn)結(jié)果如圖4(a)所示。隨著Spider 層數(shù)的增加,Spider CNN 的分類精度呈下降趨勢(shì),表明網(wǎng)絡(luò)產(chǎn)生了退化問題;且層數(shù)相同時(shí),Linked-Spider CNN 在分類精度上超過了Spider CNN,說明增加殘差塊有助于分類精度的提高;如圖4(b)所示,當(dāng)Spider卷積層數(shù)為7 時(shí),兩種網(wǎng)絡(luò)隨著迭代次數(shù)增加得到的分類精度,與不帶殘差塊的網(wǎng)絡(luò)模型相比,Linked-Spider CNN 的收斂速度更快,效果更好。權(quán)重的更新與損失函數(shù)的梯度有關(guān),梯度越大,權(quán)重更新的速度越快,越有利于網(wǎng)絡(luò)的收斂。采用殘差塊的網(wǎng)絡(luò),在反向傳播時(shí),每一層的梯度都會(huì)接收到后面一層的梯度,遠(yuǎn)大于同一層沒有殘差塊的網(wǎng)絡(luò)梯度,進(jìn)而提高了參數(shù)更新的速度,提高了網(wǎng)絡(luò)的收斂速度。
圖3 Spider卷積層數(shù)和K值對(duì)分類精度的影響Fig.3 Influence of Spider convolution layer number and K value on classification accuracy
圖4 殘差塊的效果和收斂速度分析Fig.4 Analysis of effect and convergence speed of residual block
3.3.3 Linked-Spider CNN的分類性能分析
以ModelNet40 數(shù)據(jù)集為測(cè)試對(duì)象,本文選擇PointNet、PointNet++、Spider CNN 和Linked-SpiderCNN 四種基于點(diǎn)云的深度網(wǎng)絡(luò),構(gòu)建了測(cè)試集精度隨迭代次數(shù)的變化曲線和損失值隨迭代次數(shù)的變化曲線,從而可以充分地分析Linked-Spider CNN的分類性能,如圖5所示。
由圖5(a)可見,從20 次迭代到最終收斂,Linked-Spider CNN 的分類精度均高于其他三種網(wǎng)絡(luò);由圖5(b)可見,Linked-Spider CNN 與其他三種方法相比,損失下降較快且相對(duì)較平穩(wěn),且網(wǎng)絡(luò)收斂時(shí)損失函數(shù)值最小。由圖5(b)可知,網(wǎng)絡(luò)收斂時(shí)四者損失的大小關(guān)系是Linked-Spider CNN<Spider CNN<PointNet++<PointNet??梢姡琇inked-Spider CNN網(wǎng)絡(luò)收斂時(shí)損失值最小,表明其對(duì)測(cè)試數(shù)據(jù)集的擬合能力最大,主要因?yàn)長(zhǎng)inked-Spider CNN 擁有深層次的網(wǎng)絡(luò)結(jié)構(gòu)促使其擬合數(shù)據(jù)能力高于另外三者。然而綜合圖5(a)可知,Linked-Spider CNN 在測(cè)試數(shù)據(jù)上的分類能力是四者中最好的,這充分揭示了本文網(wǎng)絡(luò)比另外三者具有更好的優(yōu)越性。
圖5 四種網(wǎng)絡(luò)分類測(cè)試精度曲線和訓(xùn)練損失曲線Fig.5 Classification test accuracy curves and training loss curves of four networks
3.3.4 魯棒性分析
為了驗(yàn)證Linked-Spider CNN 對(duì)于點(diǎn)云采樣點(diǎn)個(gè)數(shù)的魯棒性,本文選取采樣點(diǎn)個(gè)數(shù)為32、64、128、256、512和1 024,同時(shí)與Spider CNN 進(jìn)行對(duì)比,最終在ModelNet40 上測(cè)試結(jié)果如圖6 所示,可見隨著點(diǎn)云中點(diǎn)數(shù)的增加,Linked-Spider CNN 在ModelNet40 上的分類精度呈現(xiàn)上升趨勢(shì)且始終高于Spider CNN的分類精度,并且從圖6可知在32個(gè)采樣點(diǎn)的條件下,本文網(wǎng)絡(luò)依然可以達(dá)到88.1%的分類精度,魯棒性較好,這充分說明了增加網(wǎng)絡(luò)深度和殘差塊對(duì)網(wǎng)絡(luò)的穩(wěn)定性有較大的提升。
圖6 Linked-Spider CNN對(duì)采樣點(diǎn)魯棒性測(cè)試Fig.6 Linked-Spider CNN robustness test of sampling points
本文在深入研究可直接處理點(diǎn)云數(shù)據(jù)的網(wǎng)絡(luò)——Spider CNN 的基礎(chǔ)上對(duì)其進(jìn)行改進(jìn),通過增加Spider 卷積層數(shù)以及在每層Spider 卷積建立短連接構(gòu)成殘差塊,設(shè)計(jì)出Linked-Spider CNN 來獲得更魯棒、鑒別力更強(qiáng)的點(diǎn)云特征用于點(diǎn)云分類和分割。在ModelNet40 數(shù)據(jù)集上分類任務(wù)以及ShapeNet Parts 數(shù)據(jù)集分割任務(wù)上的實(shí)驗(yàn)表明,本文網(wǎng)絡(luò)展示出了較好的效果。下一步的工作重心是對(duì)網(wǎng)絡(luò)進(jìn)行優(yōu)化,降低復(fù)雜度,進(jìn)一步提高點(diǎn)云分類和分割的精度。