張興園 黃雅平 鄒 琪 裴艷婷
隨著數(shù)字設(shè)備手機、平板和繪圖板的迅速發(fā)展,手繪草圖正在成為直觀表達用戶想法的主要方式之一[1].因此,草圖識別在計算機視覺領(lǐng)域蓬勃發(fā)展,其中包括基于草圖的圖像檢索[2],草圖分析[3],草圖分割[4]和基于草圖的圖像合成[5-6]等.
草圖識別的目的是物體類別識別,該任務(wù)相比于圖像識別更具有挑戰(zhàn)性.主要原因是圖像一般表示為稠密像素[7-8],但是草圖缺乏豐富的顏色細節(jié)和視覺線索[9-11],使得草圖特征的表示更加困難.為此,近些年來國內(nèi)外很多研究人員致力于草圖識別方面的研究.早期草圖識別主要針對CAD 圖和藝術(shù)畫[12].受到最新提出的大型數(shù)據(jù)集啟發(fā)[13],Schneider 等[14]提出了一系列基于手工特征的草圖識別方法.這些方法將草圖看作自然圖像并利用方向梯度直方圖[15]和尺度不變特征變換[16]提取草圖特征,再利用支持向量機(Support vector machine,SVM)[17]分類器對草圖類別進行預(yù)測[18].然而,上述方法普遍存在的問題是淺層特征不能充分表達草圖.因此,Yu 等[18]提出了Sketch-a-Net 網(wǎng)絡(luò),這是第1 個使用深度學(xué)習(xí)的草圖識別網(wǎng)絡(luò),通過參數(shù)學(xué)習(xí)方式代替手工設(shè)計策略提高分類性能.受到上述研究工作啟發(fā)[19-31]設(shè)計了新的深度學(xué)習(xí)框架,使得草圖識別的性能首次超過了人類.近期基于循環(huán)神經(jīng)網(wǎng)絡(luò)提取草圖特征的工作[23-31],除了考慮草圖內(nèi)在結(jié)構(gòu)還加入了筆畫的時序序列,即考慮草圖的筆畫順序來提取草圖特征,由此進一步提升了草圖識別性能.
然而,大多數(shù)深度卷積神經(jīng)網(wǎng)絡(luò)模型將草圖視為自然圖像來獲得具有判別力的紋理特征,而沒有考慮草圖本身所具有的形狀信息.具體來說,草圖在二維空間中以曲線的形式進行信息傳遞[24],因此草圖具備很好地描述物體幾何形狀的特性.但由于不同人繪畫技巧和繪制風(fēng)格的差異,對同一物體進行描述的草圖形狀會千差萬別,而傳統(tǒng)的特征描述子并不能很好的描述類間和類內(nèi)的形狀差異性.本文工作的目標(biāo)是尋找一種更有效的方法來將草圖形狀信息融合到端到端的神經(jīng)網(wǎng)絡(luò)中,從而使得深度學(xué)習(xí)網(wǎng)絡(luò)具有更好的草圖識別效果.為此,本文提出了一種新穎的基于雙分支互學(xué)習(xí)的深度學(xué)習(xí)網(wǎng)絡(luò),即雙模型融合網(wǎng)絡(luò)(Dual-model fusion network,DMF-Net),以此實現(xiàn)草圖紋理信息和形狀信息的結(jié)合來進行草圖識別.在訓(xùn)練階段,第1 個網(wǎng)絡(luò)分支輸入原始草圖,并使用傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)提取紋理信息;第2 個分支輸入草圖的采樣點集合,并使用基于圖卷積神經(jīng)網(wǎng)絡(luò)提取形狀信息;2 個網(wǎng)絡(luò)使用互引導(dǎo)機制實現(xiàn)聯(lián)合訓(xùn)練.測試階段將訓(xùn)練好的網(wǎng)絡(luò)分別提取不同特征并將其融合,然后輸入分類器實現(xiàn)最終草圖的類別預(yù)測.
在提出的雙分支融合網(wǎng)絡(luò)中,基于損失函數(shù)互引導(dǎo)機制實現(xiàn)的相互學(xué)習(xí)主要由2 部分組成: 1)網(wǎng)絡(luò)的每個分支使用傳統(tǒng)的監(jiān)督分類損失和基于另一個分支分類概率作為后驗的模仿?lián)p失.為此使用2個概率分布的Kullback-Leibler (KL)距離作為類別一致性損失;2)網(wǎng)絡(luò)基于視覺顯著圖的一致性計算損失.顯然,當(dāng)草圖使用兩種不同的形式進行表示時,視覺顯著圖的區(qū)域應(yīng)該相同或相近,因此網(wǎng)絡(luò)將視覺一致性定義為原始草圖的顯著圖和基于點表示草圖的顯著圖之間的歐氏距離.最后,將分類損失、類別一致性損失和視覺注意一致性損失結(jié)合完成網(wǎng)絡(luò)參數(shù)的訓(xùn)練.
本文主要貢獻有: 1)針對草圖識別問題,首次提出用新的雙模型融合網(wǎng)絡(luò)來提取草圖的紋理信息和形狀信息;2)針對雙分支網(wǎng)絡(luò)的互學(xué)習(xí)問題,提出了利用視覺注意一致性損失、分類損失和類別一致性損失聯(lián)合訓(xùn)練的策略;3)在Sketchy 數(shù)據(jù)集和TUBerlin 數(shù)據(jù)集上進行了實驗驗證.實驗結(jié)果表明,本文提出的模型在草圖分類任務(wù)上取得了最好的效果.
本文結(jié)構(gòu)安排如下: 第1 節(jié)詳細闡述了基于雙分支網(wǎng)絡(luò)的草圖識別算法;第2 節(jié)闡述了網(wǎng)絡(luò)的訓(xùn)練和測試細節(jié);第3 節(jié)通過與已有算法在公開數(shù)據(jù)集上進行定性和定量比較,實現(xiàn)了對本文提出方法有效性的驗證;第4 節(jié)總結(jié)本文所研究的工作并提出下一步的研究方向.
雙分支識別網(wǎng)絡(luò)的框架如圖1 所示,由2 部分組成: 第1 部分主要完成基于多層次特征融合網(wǎng)絡(luò)提取草圖的紋理特征,第2 部分主要完成基于點采樣的圖卷積網(wǎng)絡(luò)提取草圖的形狀特征,最后利用分類損失、類別一致性損失和視覺注意一致性損失實現(xiàn)網(wǎng)絡(luò)參數(shù)的優(yōu)化.第1.1 節(jié)介紹基于原始草圖的神經(jīng)網(wǎng)絡(luò)提取紋理特征的過程,第1.2 節(jié)介紹基于點表示草圖的神經(jīng)網(wǎng)絡(luò)提取形狀特征的過程,第1.3 節(jié)介紹網(wǎng)絡(luò)訓(xùn)練使用的損失函數(shù).
圖1 本文算法總體框架圖Fig.1 The overall framework of our method
紋理特征提取網(wǎng)絡(luò)用于提取草圖的紋理信息.近年來,基于卷積神經(jīng)網(wǎng)絡(luò)提取的信息已被證明能夠提供判別性紋理特征以用于草圖識別[20-18].因此,本文基于ImageNet 數(shù)據(jù)集訓(xùn)練的ResNet50 模型[25],提出了紋理特征提取網(wǎng)絡(luò)Texture-Net.為了豐富草圖的特征表示,同時不引入更多的學(xué)習(xí)參數(shù),模型利用多層特征融合策略來提取更加豐富的語義信息.如圖2 所示,ResNet50 網(wǎng)絡(luò)由4 個塊組成,每個塊的最后1 個卷積層使用池化操作來保留顯著特征并降低特征維度,然后與網(wǎng)絡(luò)的第一個全連接層進行特征融合以實現(xiàn)草圖紋理特征表示,即層次1到層次5 的特征融合.對于第k個卷積層所生成的特征圖表示為多層特征圖融合用式(1)表示為:
圖2 本文形狀特征提取網(wǎng)絡(luò)的原理框架示意圖Fig.2 Schematic diagram of Shape-net framework proposed in this paper
式中,Ffc表示第1 個全連接層的特征,GAP(·)表示在不同特征圖上做全局平均池化(Global average pooling,GAP),即GAP(Fk)∈RCk.將 G AP 后的卷積層特征與Ffc特征連接得到最后的草圖特征表示.因此,最終生成的草圖紋理特征包含了從高層語義信息到低層細節(jié)信息的多層聯(lián)合表示.同時,網(wǎng)絡(luò)并沒有引入額外的學(xué)習(xí)參數(shù),這樣保證了融合過程的簡單性和高效性.
與傳統(tǒng)神經(jīng)網(wǎng)絡(luò)模型對規(guī)則網(wǎng)格提取特征的Texture-Net 不同,本文提出了基于點集的形狀特征提取網(wǎng)絡(luò)(Shape-Net)以對代表性的點集提取結(jié)構(gòu)特征.兩種網(wǎng)絡(luò)提取特征過程有本質(zhì)性區(qū)別: 對于Texture-Net,輸入和輸出特征圖分別表示為其中W、H和W′、H′分別表示F1和F2的寬度和高度.c表示上一層的通道數(shù),c′表示當(dāng)前層的通道數(shù).卷積濾波器表示為一個張量,即,其中s1和s2分別表示濾波器的寬度和高度.與F1相比,F2有更低分辨率(R1<R2)和更多通道 (c′ >c),因此更能表示高層語義信息.上述步驟遞歸執(zhí)行最終生成分辨率低但通道數(shù)多的特征圖.對于Shape-Net,輸入是一系列的點并且每個點表示一個特征,即F={(p1,f1),(p2,f2),···,(pn,fn)}.網(wǎng)絡(luò)在輸入特征圖F1上使用點卷積獲得高層語義表示F2,其中F2比F1有更低的空間分辨率(即更少的點)和更多的通道數(shù).此外,F1到F2的過程能夠?qū)⑻卣骶奂筛冱c但是每個點包含了更豐富的特征.
以離散點作為網(wǎng)絡(luò)輸入的方法最初用于點云處理[34-27],主要原因是基于點卷積的神經(jīng)網(wǎng)絡(luò)可以大大降低模型的時間復(fù)雜度和空間復(fù)雜度.Hua 等[26]構(gòu)建了針對場景語義分割和目標(biāo)識別的兩個逐點卷積神經(jīng)網(wǎng)絡(luò),并設(shè)計了一種可以輸出點云中每一點特征的逐點卷積算子.Wang 等[27]提出了一個端到端的漸進式學(xué)習(xí)方法,即通過訓(xùn)練一個基于圖像塊的多階段網(wǎng)絡(luò),在不同的細節(jié)級別學(xué)習(xí)點云信息.基于上述點云中點卷積的思想,本文通過將草圖看成一系列的二維點,充分考慮草圖的空間結(jié)構(gòu),最終實現(xiàn)高效、具有魯棒性的草圖特征表示.
通常情況下,基于點的草圖表示具有采樣點的起始點位置及草圖旋轉(zhuǎn)和平移不變性,本文采用基于點采樣的神經(jīng)網(wǎng)絡(luò)作為骨干網(wǎng)絡(luò),該網(wǎng)絡(luò)模型引入了最大池化和空間變換網(wǎng)絡(luò)來解決上述兩個問題.但是上述網(wǎng)絡(luò)設(shè)計仍存在不足之處,即不能獲得二維點中局部結(jié)構(gòu)信息,而鄰域信息對特征表達非常重要.
以往的點特征提取方法往往僅利用每個點的特征表示,而忽略了相鄰點的關(guān)系,為了解決上述問題,人們提出了基于圖卷積的神經(jīng)網(wǎng)絡(luò)并應(yīng)用于點云任務(wù)中[29-44].Wang 等[29]提出使用拉普拉斯算子和池化層次結(jié)構(gòu)動態(tài)構(gòu)件圖,并使用局部譜卷積提取每個點鄰域中的結(jié)構(gòu)信息.Simonovsky 等[30]提出了可以作用在任何圖結(jié)構(gòu)上且權(quán)重由節(jié)點間邊權(quán)決定的圖卷積模型.Kipf 等[44]提出了一種基于圖卷積神經(jīng)網(wǎng)絡(luò)的可擴展模型圖卷積神經(jīng)網(wǎng)絡(luò)(Graph convolutional network,GCN).該模型要求網(wǎng)絡(luò)在訓(xùn)練過程中計算整個圖的拉普拉斯矩陣,然后利用局部譜卷積提取特征,實驗在半監(jiān)督任務(wù)上取得了很好的效果.基于圖卷積思想,本文提出了基于圖卷積的點草圖形狀特征提取網(wǎng)絡(luò).與GCN 在譜圖上進行卷積操作不同,此網(wǎng)絡(luò)在空間域上對圖進行卷積操作,不僅提取當(dāng)前點的特征,同時結(jié)合了當(dāng)前點周圍的K個近鄰點特征來表征草圖,即首先以每個點為中心并利用K近鄰(K-nearest neighbor,KNN)算法構(gòu)建圖模型,然后將中心點特征加入到圖中的K條邊特征中,再利用卷積操作將K個特征整合成一個特征作為中心點最終的特征表示.
下文給出Shape-Net 的基本結(jié)構(gòu)如下: 第1.2.1節(jié)通過描述特征提取網(wǎng)絡(luò)提取草圖的形狀表示流程,第1.2.2 節(jié)介紹為了解決草圖空間不變性而提出的空間變換網(wǎng)絡(luò),第1.2.3 節(jié)介紹采樣點構(gòu)建鄰域圖并利用圖卷積提取局部結(jié)構(gòu)信息的過程.
1.2.1 特征提取過程
對于Shape-Net 網(wǎng)絡(luò),首先預(yù)處理草圖并使用最遠采樣策略[31]獲取1 024 個采樣點.然后,利用點卷積學(xué)習(xí)每個點的特征描述子,這是提取點特征的關(guān)鍵步驟.如圖2所示,Shape-Net 實現(xiàn)過程如下:第1 步,將N個M維采樣點輸入到二維空間變換網(wǎng)絡(luò),其中N表示采樣點數(shù),M表示坐標(biāo)維度,由于二維空間坐標(biāo)為(x,y),因此M取值為2;第2 步,利用空間變換網(wǎng)絡(luò)中的T-Net 模塊學(xué)習(xí)2×2仿射矩陣(第1.2.2節(jié)),使得網(wǎng)絡(luò)輸入在正則空間中對齊,同時網(wǎng)絡(luò)引入圖卷積(第1.2.3 節(jié))來從M維采樣點中學(xué)習(xí)鄰域信息的表示;最終將圖卷積生成的特征圖和空間變換生成的特征圖拼接生成N×(L+2)維特征圖;第3 步,將拼接得到的特征送入多層感知機中,最終經(jīng)過多層感知機、最大池化和全連接得到點采樣草圖的特征表示.
1.2.2 空間變換網(wǎng)絡(luò)
形狀特征提取網(wǎng)絡(luò)在提取基于點表示草圖的信息時,通過對輸入的二維坐標(biāo)點進行一系列的點坐標(biāo)變換,又稱為正則變換[36],來實現(xiàn)形狀特征的表達.而網(wǎng)絡(luò)對目標(biāo)的點變換應(yīng)該具有空間不變性,即草圖旋轉(zhuǎn)和平移不變性.為此,網(wǎng)絡(luò)在進行特征提取之前,先對點表示的草圖進行對齊,即正則空間對齊,以保證目標(biāo)物體對空間變換的不變性.實際上,類似于點云模型中使用仿射變換解決幾何變形問題[34],對于基于點坐標(biāo)的空間變換已經(jīng)被證明在二維點集匹配[33-35]和點特征表征[28]任務(wù)中依然重要.
實現(xiàn)對齊操作首先要訓(xùn)練空間變換網(wǎng)絡(luò)中的TNet 模塊完成2 × 2 仿射矩陣的生成,然后將訓(xùn)練得到的矩陣與輸入的N個2 維采樣點進行矩陣相乘來實現(xiàn)最終的對齊目的.如圖2 所示,T-Net 結(jié)構(gòu)與Shape-Net 結(jié)構(gòu)類似,對網(wǎng)絡(luò)輸入的N個二維采樣點,分別使用多層感知機、最大池化和全連接層學(xué)習(xí)特征,其中全連接層的維度分別設(shè)置為1 024、512 和250,最后通過矩陣變換得到2 × 2 的仿射矩陣.
1.2.3 圖卷積網(wǎng)絡(luò)
鄰域點往往具有類似的幾何結(jié)構(gòu)[37],因此通過對每個點構(gòu)建局部鄰域圖并對圖中的邊使用卷積操作,實現(xiàn)草圖局部點集特征的提取.基本流程如下:首先,基于目標(biāo)點和其K個鄰近點構(gòu)建局部圖.然后,對圖中的邊利用1 × 1 卷積來提取K維鄰域特征.將學(xué)習(xí)到的特征在向前傳遞過程中,使用池化層壓縮特征以保留重要細節(jié)和去掉不相關(guān)的信息,實現(xiàn)局部特征的表達.
具體地,n個F維的點表示為P={p1,p2,···,pn}.其中,F=2,每個點表示為2 維坐標(biāo).對于草圖中的每個點,計算無向圖ξ=(ν,ε),其中ν={ν1,ν2,···,νk}和ε={ε1,ε2,···,εk}分別代表頂點和圖中的邊.在最簡單的情況下,利用每個點的K近鄰在二維空間構(gòu)建無向圖ξ.提取圖中的邊特征并表示為eij=hθ(xmi,xj),其中hθ:RF ×RF →RF′表示一系列可學(xué)習(xí)參數(shù)θ的非線性函數(shù).最后,圖卷積網(wǎng)絡(luò)使用池化將學(xué)習(xí)到的特征進行聚集從而實現(xiàn)每個點局部信息的表達.
網(wǎng)絡(luò)利用互學(xué)習(xí)策略進行草圖識別模型的訓(xùn)練,從而進一步提高性能.本文方法同時訓(xùn)練兩個分支,從而實現(xiàn)網(wǎng)絡(luò)之間的知識遷移.網(wǎng)絡(luò)的目標(biāo)函數(shù)包括分類損失、類別一致性損失和視覺注意一致性損失3 部分.
1)分類損失.網(wǎng)絡(luò)的兩個分支采用softmax 交叉熵損失函數(shù),定義如式(2)所示:
式中,xi表示輸入的草圖,yi表示xi對應(yīng)的標(biāo)簽.N表示草圖的數(shù)量.M表示當(dāng)前草圖類別的數(shù)量.θ表示全連接層的權(quán)重,用來將隱藏層的特征映射為標(biāo)簽.
2)類別一致性損失.對于樣本xi ∈{x1,x2,···,xN},Texture-Net 利用式(3)計算xi屬于類M的概率:
式中,zi表示隱藏層的輸出.Shape-Net 另外一個分支網(wǎng)絡(luò)使用類似定義并表示為.為了定量匹配2 個網(wǎng)絡(luò)的預(yù)測p1和p2,網(wǎng)絡(luò)使用KL散度計算2 個分布的距離.從p1到p2的KL 距離定義如下:
3)視覺注意一致性損失.通常來講,兩個分支視覺顯著圖的一致性能夠提高圖像分類的性能.同時,如果視覺顯著圖能夠反映與類別標(biāo)簽相關(guān)的區(qū)域,網(wǎng)絡(luò)則能夠?qū)W習(xí)到更有判別力的特征.對于每個原始草圖和點采樣草圖,網(wǎng)絡(luò)使用類激活圖(Class activation mapping,CAM)[32]提取視覺顯著圖.具體來講,網(wǎng)絡(luò)在前向激活圖上使用加權(quán)結(jié)合,然后使用ReLU 激活函數(shù)獲得視覺顯著圖為:
式中,Z表示特征圖像素數(shù)量,Ak表示卷積層第k個特征圖.
為了增強顯著圖的一致性,網(wǎng)絡(luò)使用均方誤差計算原始草圖顯著圖Hs和基于點采樣草圖視覺圖Hp之間的損失為:
式中,Hnm表示第n張圖像屬于第m類的視覺顯著圖.
最終,將式(2)、式(4)和式(6)分別結(jié)合實現(xiàn)網(wǎng)絡(luò)Texture-Net 和Shape-Net 的訓(xùn)練,如下所示:
實驗使用Pytorch 深度學(xué)習(xí)開源工具訓(xùn)練網(wǎng)絡(luò)模型,所有實驗在兩塊英偉達TitanXp 顯卡上運行.
本節(jié)基于文獻[38] 的訓(xùn)練策略,在ImageNet 數(shù)據(jù)集上訓(xùn)練Texture-Net.同時使用隨機梯度下降法進行梯度更新,每批圖像數(shù)量為64.學(xué)習(xí)率為0.1,錯誤率穩(wěn)定時學(xué)習(xí)率減為原來的0.1 倍.衰減率和動量分別為0.0001 和0.9.對于Shape-Net,使用Adam 優(yōu)化器訓(xùn)練網(wǎng)絡(luò),學(xué)習(xí)率和每批圖像數(shù)量分別設(shè)置為0.001 和64,每訓(xùn)練40 輪學(xué)習(xí)率為原來的0.5 倍.衰減率和動量參數(shù)設(shè)置同Texture-Net.式(7)和式(8)中的超參數(shù)設(shè)置為1.
測試過程中,首先保持圖像縱橫比并設(shè)置草圖的最大尺寸為256 像素.然后,填充邊緣像素使得圖像大小最終為256 × 256.在預(yù)測草圖類別時,將兩個分支的全連接層特征進行連接,然后輸入到softmax 分類器中,得到最終的類別預(yù)測.
為了驗證第3.3 節(jié)DMF-Net 模型在草圖分類的有效性,在2 個公開數(shù)據(jù)集TU-Berlin 數(shù)據(jù)集和Sketchy 數(shù)據(jù)集上進行了實驗.第3.1~ 3.2 節(jié)對數(shù)據(jù)集和評價標(biāo)準(zhǔn)做詳細描述,第3.4 節(jié)通過消融實驗分析模型不同模塊的性能,第3.5 節(jié)分析點集采樣策略和點數(shù)對分類性能的影響.
1) TU-Berlin 數(shù)據(jù)集[13]是提出的第一個廣泛應(yīng)用于草圖識別的手繪草圖數(shù)據(jù)集,其中包含250 個草圖類別,例如飛機、日歷和長頸鹿.人類在該數(shù)據(jù)集所有類別的平均識別率為73.1%.由于數(shù)據(jù)集訓(xùn)練數(shù)量的有限性,采用數(shù)據(jù)增廣方法[18,32]進行數(shù)據(jù)擴展,包括水平映射和筆畫移除.
2) Sketchy 數(shù)據(jù)集[39]是第一個用于細粒度草圖檢索的大型草圖數(shù)據(jù)集,包含75 471 張手繪草圖并分成了125 個類別.此數(shù)據(jù)集廣泛應(yīng)用于細粒度草圖檢索并為圖像合成和風(fēng)格轉(zhuǎn)換提供了可能性.
本文使用和文獻[40-51]一樣的訓(xùn)練策略,在草圖分類任務(wù)上定量評估模型性能.具體來說,在每個類別上使用平均預(yù)測評估分類性能.然后,在所有類別上使用平均預(yù)測率和其他方法比較分類準(zhǔn)確率.同時引入受試者工作特征曲線(Receiver operator characteristic curve,ROC)[43]和曲線下面積(Area under curve,AUC)[50]對分類效果進行更好的評價.
本節(jié)展示了TU-Berlin 數(shù)據(jù)集在草圖分類任務(wù)上的性能.類似于文獻[13],每個類別在訓(xùn)練集上圖像數(shù)量的設(shè)置分別為8、40、64 和72.數(shù)據(jù)集中的訓(xùn)練圖像是隨機選擇的,剩余圖像作為測試集.基準(zhǔn)方法分為兩類: 傳統(tǒng)手工特征和深度特征.對于手工特征,選擇文獻[14]中提出的4 種帶有空間金字塔的FisherVector (FV)特征表示.同時采用文獻[13]提出的映射特征進行草圖表示.對于后者,對比方法包括SketchPoint[42]、Alexnet[38]、Network in network (NIN)[45]、視覺幾何組網(wǎng)絡(luò) (Visual geometry group network,VGGNet)[46]、GoogLeNet[47]、SketchNet[41]、Sketch-a-Net[18]、Cousion Network[49]、Hybrid CNN[48]、Landmark-aware Network(LN)[51]和SSDA 方法.
對比結(jié)果如表1 所示.由表1 可以看出,DMFNet 在所有設(shè)置都優(yōu)于其他方法,并且相對于最優(yōu)方法有明顯提升(86%相對84%、85%相對82%、77%相對76% 和60%相對59%).優(yōu)越性主要得益于紋理特征和形狀特征的結(jié)合同時引入了2 個分支的互學(xué)習(xí)策略進行模型的優(yōu)化.
表1 不同算法下在TU-Berlin 數(shù)據(jù)集上分類準(zhǔn)確率的比較 (%)Table 1 Comparison of sketch classification accuracy with different algorithms on the TU-Berlin dataset (%)
圖3 展示了TU-Berlin 數(shù)據(jù)集的6 個類別,每個類別隨機選取72 張圖片進行受試者工作特征曲線的繪制和曲線下面積值的計算.從圖中可以看出,6 個類別的受試者工作特征曲線均靠近坐標(biāo)的左上角,且曲線下面積值均高于隨機試驗的曲線下面積的值(0.5),結(jié)果表明了基于互學(xué)習(xí)的雙分支網(wǎng)絡(luò)在草圖分類問題上有著很好的效果.
圖3 TU-Berlin 數(shù)據(jù)集上6 個類別的受試者工作特征曲線及曲線下面積值Fig.3 ROCs and AUC values of 6 classes in the TU-Berlin dataset
為了驗證本文算法不同模塊對分類性能的影響,模型在2 個數(shù)據(jù)集上進行實驗測試.實驗包括圖卷積、不同的損失函數(shù)、2 個分支結(jié)構(gòu)和多層特征融合的影響.
1)圖卷積和不同損失函數(shù)的影響.首先利用實驗驗證圖卷積(Graph convolution,GC)對局部幾何信息具有更強的表示.然后驗證注意力一致性(Attention consistency,AC)和類別一致性(Category consistency,CC)嵌入模型訓(xùn)練前后對分類準(zhǔn)確率的影響.基礎(chǔ)網(wǎng)絡(luò)(Base network,BN)表示在TU-Berlin 數(shù)據(jù)集和Sketchy 數(shù)據(jù)集上不采用GC、AC 和CC 三種策略訓(xùn)練的Texture-Net 和Shape-Net.
分類的實驗結(jié)果如表2 所示.通過實驗可以得出如下結(jié)論: 1)當(dāng)結(jié)合目標(biāo)點特征和其臨近點特征時,能夠增強局部結(jié)構(gòu)特征的表達并因此解決了不同類別但是結(jié)構(gòu)相似的草圖由于局部差異而被錯分的問題;2)兩種草圖表示的注意力一致性能夠提升性能,即在TU-Berlin 數(shù)據(jù)集上原始模型為82.71%,原始模型和注意力一致性結(jié)合的準(zhǔn)確率為84.12%.主要原因是由于視覺注意區(qū)域的感知一致性能夠幫助兩個分支得到更準(zhǔn)確的判別區(qū)域;3) 原始模型和類別一致性策略的結(jié)合使得模型訓(xùn)練過程中一個分支能夠利用其他分支的信息并提升各自的性能;4)本文使用原始模型和多個策略的聯(lián)合,使得模型能夠得到更好的參數(shù)優(yōu)化和特征表達.
表2 在TU-Berlin 數(shù)據(jù)集和Sketchy 數(shù)據(jù)集上實現(xiàn)草圖分類的網(wǎng)絡(luò)結(jié)構(gòu)分析 (%)Table 2 Architecture design analysis for sketch classification on TU-Berlin and Sketchy (%)
2) 兩個分支性能評價.對于構(gòu)造復(fù)雜和類間相似度高的草圖,傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)提取的視覺特征往往不能很好的描述草圖差異.因此,學(xué)習(xí)基于采樣點的結(jié)構(gòu)化特征對草圖形狀表示具有重要的意義.為評估兩個單獨分支和整個網(wǎng)絡(luò)結(jié)構(gòu)的性能,在TU-Berlin 數(shù)據(jù)集和Sketchy 數(shù)據(jù)集上對草圖分類準(zhǔn)確率進行了實驗驗證,所得結(jié)果如表3 所示.基礎(chǔ)網(wǎng)絡(luò)表示融合Shape-Net 和Texture-Net 特征,而不使用圖卷積和互學(xué)習(xí)損失函數(shù)對模型進行優(yōu)化.通過對比可以發(fā)現(xiàn),使用兩個分支進行草圖的特征表達能夠提高分類準(zhǔn)確率.主要原因是紋理特征提取網(wǎng)絡(luò)對于相似構(gòu)造的草圖差異性具有很差的表達能力.相反,形狀特征提取網(wǎng)絡(luò)能獲得很好的結(jié)構(gòu)信息,對草圖形狀有更好的表達.
表3 利用雙分支神經(jīng)網(wǎng)絡(luò)的草圖分類準(zhǔn)確率 (%)Table 3 Classification accuracy results using two-branch neural networks (%)
為了進一步驗證每個模塊對草圖分類的重要性,從TU-Berlin 數(shù)據(jù)集中隨機挑選了13 個類別進行定量實驗分析.如圖4 所示,相比于只使用紋理特征表示草圖,加入形狀特征后的草圖分類準(zhǔn)確率平均提升了1.5%,加入形狀特征和互學(xué)習(xí)策略的分類準(zhǔn)確率平均提升了4%.另外可以發(fā)現(xiàn),對于一些對于識別困難的樣本,如Panda、Flying bird 和Wheel,無論單獨加入形狀特征還是融合互學(xué)習(xí)策略,分類準(zhǔn)確率都有大幅度提升.因此可以得出以下結(jié)論: a)單純的紋理表征對難例草圖具有很低的判別能力;b)通過對草圖進行點采樣,可以挖掘更多的形狀信息以及潛在的草圖模式,從而證明了點表示草圖對形狀信息具有強表達性;c)互學(xué)習(xí)策略可以使得2 個模型相互學(xué)習(xí)和共同進步,從而促進兩個網(wǎng)絡(luò)共同學(xué)習(xí)到更加具有魯棒性的特征表示,使得分類性能得到大幅提升.
圖4 TU-Berlin 數(shù)據(jù)集上13 個類別的分類準(zhǔn)確率Fig.4 Classification accuracy of 13 classes in the TU-Berlin dataset
3)多層特征融合評價.盡管多數(shù)神經(jīng)網(wǎng)絡(luò)方法只利用全連接層特征表示草圖,但是其他網(wǎng)絡(luò)層提取的草圖特征也能夠表達草圖并提升分類性能.因此,為了融合更多的草圖信息,本文將底層特征和高層特征結(jié)合以生成更加豐富的語義信息.如表4所示,{1,2,3,4} 表示圖2 中ResNet50 第1 個全連接層融合層次1、層次2、層次3 和層次4 四個模塊中最后一個卷積層經(jīng)過池化生成的特征表示.通過對比可以發(fā)現(xiàn),2 個數(shù)據(jù)集準(zhǔn)確率有相同的趨勢:融合4 個隱藏層的特征時,分類準(zhǔn)確率最高.同時,分類性能逐漸趨于飽和,并且第1 層和第2 層中的卷積層特征對最終草圖分類準(zhǔn)確率影響很小.
表4 不同層的分類準(zhǔn)確率結(jié)果 (%)Table 4 Classification accuracy results using given feature levels (%)
采樣常用的策略主要包括均勻采樣和隨機采樣兩種.兩種采樣結(jié)果如圖5 所示,本文實驗采用了均勻采樣策略.通常情況下,隨機采樣容易生成抖動噪聲,因此Shape-Net 模型引入了池化操作和空間變換網(wǎng)絡(luò)來消除噪聲影響.兩種采樣對比實驗結(jié)果如表5 所示.由表5 可以看出,均勻采樣和隨機采樣在TU-Berlin 數(shù)據(jù)集的草圖分類準(zhǔn)確率分別為86.12%和86.09%.綜上所述,隨機采樣性能基本與均勻采樣持平,同時模型對隨機采樣具有魯棒性.
表5 2 種采樣策略在TU-Berlin 數(shù)據(jù)集的分類準(zhǔn)確率 (%)Table 5 Classification accuracy on TU-Berlin dataset using two sampling strategies (%)
圖5 兩種策略在草圖點采樣的結(jié)果示意圖Fig.5 The point sampling demonstration of two strategies on the sketch
為了驗證本文提出的草圖識別模型在不同采樣點數(shù)目下的影響,在TU-Berlin 數(shù)據(jù)集和Sketchy數(shù)據(jù)集上進行了對比實驗分析.從表6 可以得出以下結(jié)論: 1)隨著點數(shù)的不斷增加,草圖分類準(zhǔn)確率在不斷的上升.當(dāng)采樣點數(shù)到1 000 時,準(zhǔn)確率趨于穩(wěn)定.同時,如果采樣點過少,草圖分類準(zhǔn)確率會大大降低.因此,本文設(shè)置采樣點數(shù)為1 024,這樣在保證計算效率的同時,準(zhǔn)確率也可以達到預(yù)期目標(biāo);2)當(dāng)采樣點數(shù)繼續(xù)增加時,準(zhǔn)確率反而會下降.其主要原因在于,太多的點數(shù)使得點表示的草圖集中于表達重復(fù)的模式而不是具有判別力的形狀,對于某些難例樣本的分類會更加困難.
表6 不同采樣點數(shù)對分類準(zhǔn)確率的影響 (%)Table 6 Effects of the point number for the classification accuracy (%)
本文提出了一種基于雙分支神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),實現(xiàn)手繪草圖識別的任務(wù).網(wǎng)絡(luò)引入了視覺顯著圖來學(xué)習(xí)具有判別力的草圖區(qū)域,同時使用注意力一致性和類別一致性的互學(xué)習(xí)策略實現(xiàn)模型的優(yōu)化.在常用兩個數(shù)據(jù)集的實驗結(jié)果證明了該模型提取的特征優(yōu)于傳統(tǒng)手工特征,相比于其他幾種算法在草圖分類任務(wù)上擁有更好的表現(xiàn),并且對草圖的點采樣策略具有魯棒性.未來將考慮融合筆畫順序到網(wǎng)絡(luò)中并使用互學(xué)習(xí)策略,實現(xiàn)草圖性能的進一步優(yōu)化.