CVPR2020論文解讀:手繪草圖卷積網絡語義分割
Sketch GCN: Semantic Sketch Segmentation with Graph Convolutional Networks

論文鏈接:https://arxiv.org/pdf/2003.00678.pdf
摘要
介紹了一種用於手繪草圖語義分割和標注的圖形卷積神經網絡SketchGCN。我們將輸入草圖視為二維點集,並將筆划結構信息編碼為圖形節點/邊緣表示。為了預測每個點的標簽,我們的SketchGCN使用圖卷積和全局分支網絡結構來提取筆划內和筆划間的特征。SketchGCN顯著提高了語義草圖分割的最新方法的准確性(在基於像素的度量中提高了11.4%,在基於組件的度量中提高了18.2%,在大規模具有挑戰性的SPG數據集上),並且比基於圖像和基於序列的方法具有更少的參數。
1. Introduction
隨着數字觸摸設備(如智能手機、平板電腦)和各種基於草圖的界面的不斷迭代,手繪草圖正成為人與機器之間常見的交互手段之一。然而,由於用戶草圖中固有的模糊性和稀疏性,草圖的解釋對於計算機來說仍然是困難的,因為草圖通常是以不同的抽象層次、藝術形式和繪圖風格創建的。雖然許多以前的工作試圖解釋整個草圖(例如,用於草圖分類和基於草圖的檢索[6,7,39,27]),但在多個草圖應用中,部件級草圖分析越來越需要,包括草圖標題[28]、草圖生成[24,31]、基於草圖的三維建模[38],以及三維草圖重建[18]。在本文中,我們主要關注草圖對象的語義分割和標記,這是內部草圖分析的一個基本任務。
我們提出了一個雙分支網絡:一個使用原始稀疏結構的分支,另一個使用動態邊緣,以平衡正確性和效率。我們的主要貢獻如下:
(1) 提出了第一種基於GCN的草圖對象語義分割和標注方法;
(2) 與基於圖像的方法和基於序列的方法相比,我們的方法顯著地提高了最新技術的准確性,並且具有更少的參數。
2. Related Work
Sketch Grouping.
草圖分組將筆划划分為多個簇,每個簇對應於一個對象零件。
Semantic Sketch Segmentation.
語義草圖分割方法將數據標記成語義組。
Graph Convolutional Networks.
圖卷積網絡(GCNs)在許多應用中得到了應用,例如處理社交網絡[32]、推薦引擎[20,40]和自然語言處理[1]。GCN也適用於處理二維和三維點雲數據。
為了更好地捕捉全局和局部特征,我們將采用兩分支網絡,並使用靜態和動態圖形卷積。最近,李等人 [14] 利用殘余連接、稠密連接和擴張卷積來解決GCN中的梯度消失和過光滑問題[19,13,37]。我們的方法在構建多層gcn時也利用了類似的思想。
3. Overview
圖1顯示了我們網絡的管道。給定一個輸入草圖,我們首先從基本筆划結構構造一個圖形,並使用信息中的絕對坐標作為圖形節點的特征(第4.1節)。然后將圖和節點特征輸入兩個分支(第4.2節):局部分支由多個靜態圖卷積單元組成;全局分支由動態圖卷積單元和混合池塊(第4.3節)組成,包括最大池操作和筆划池操作。將兩個分支的學習特征串接到多層感知器(MLP)中進行最終的分割和標記。兩個分支結構根據草圖結構的獨特性進行裁剪,學習草圖的筆划內特征和筆划間特征。在局部分支中,信息只在單個筆划中流動,因為不同筆划在輸入圖中沒有連接。與全局分支相比,我們增加了與擴張的KNN函數發現的節點的額外連接。我們使用兩個池操作來聚合草圖級信息和筆划級信息,以提供層次化的全局特征。在我們的實驗中,使用筆划水平聚合的筆划池操作被證明對任務有很大好處(第5.3節)。

4. Methodology
在本節中,我們首先解釋基於圖形的草圖表示作為網絡的輸入。然后介紹了在兩個分支中分別使用的兩個圖卷積單元,然后描述了我們在全局分支的混合池塊中的新的筆划池操作。
4.1. Input Representation
將一個素描表示為n點集P= {PI=(Xi,Yi)} I=1,2,……,n,其中席席和Yi是點PI的2D絕對坐標。
4.2. Graph Convolutional Unit
在我們的網絡中,我們使用兩種類型的圖卷積單元:用於局部分支的靜態圖卷積單元(簡稱SConv)和用於全局分支的動態圖卷積單元(簡稱DConv)。兩個單元使用相同的圖卷積運算。
Graph Convolution Operation.
我們使用與[34]中相同的圖形卷積操作,為了便於閱讀,brie fley在這里解釋了該操作。給定第l層的圖
,其中Vl和El分別是圖Gl中的頂點和邊,
是一組節點特征,每個特征都在第l層的頂點處定義。
Graph Updating Strategy.
4.3. Mix Pooling Block
混合池塊設計用於通過最大池操作學習草圖級特征,並通過草圖池操作學習筆划級特征。在應用兩種合並操作之前,我們分別使用具有可學習權重的不同多層感知器來轉換全局特征
。我們使用max pooling操作來聚合草圖級別的特征,類似於三維點雲分析中使用的許多現有方法[2,30],

對於筆划級別的特征,我們提出了一個新的池操作,稱為筆划池,來聚合每個筆划上的特征,

Sr是草圖中的第r個筆划,s是草圖中的筆划數。注:對於同一筆划內的點,筆划池產生相同的fstroke。最終MLP層中使用的全部特性是混合池塊輸出(即筆划級特性Fstroke和草圖級特性Fsketch)和本地分支輸出(即本地特性fslocal)的連接:

5. Experiments Results
如圖1所示,我們的網絡在本地分支和全局分支中都使用L=4的圖卷積單元。每個圖形卷積單元通過首先連接點特征,然后使用隱藏大小為32的多層感知器,從連接點對計算邊緣特征。然后,它通過聚集相鄰的邊緣特征來更新點特征。在全局分支中,我們分別使用最近鄰數K=8和層0到3的擴張率d=1,4,8,16的有向KNN函數找到的動態邊。在混合池塊中,我們在每個池操作之前應用隱藏大小為128的多層感知器。將全局特征與局部特征合並並重復后,輸入隱藏大小為[128,64,C]的多層感知器,得到最終的預測結果。

表1和表2列出了SPG和SketchSeg-150K數據集上不同方法的定量結果。我們使用與[16,36]中相同的數據分割集。我們的方法在很大程度上優於其他方法:在像素度量方面平均比FastSeg+GC[17]高11.4%,在SPG數據集上平均比FastSeg+GC[17]高18.2%,后者在現有方法中表現最好,在SketchSeg150K數據集上,像素度量平均提高3%,組件度量平均提高6%。SketchSeg-150K數據集的性能增益較小,主要是因為該數據集的標記粗糙,每個類別的語義標簽較少(SketchSeg-150K中每個類別有2-4個標簽,而SPG中每個類別有3-7個標簽),因此對現有方法的挑戰較小。
圖2顯示了我們的方法與[16]和[17]的方法之間的一些有代表性的視覺比較。基於序列的表示[16]使用點繪制順序及其相對坐標,忽略了筆划之間的接近性,導致結果不令人滿意(圖2,第一列)。基於圖像的方法[17]不知道筆划結構,因此主要依賴於局部圖像結構,這也導致較差的結果。





表3和表4顯示了各自的定量結果。在Huang14數據集中,獨立行程通常包含許多寬敞的小段(如圖3,頂行)。

總的來說,我們的方法+GC在Huang14數據集上的像素度量平均提高了0.7%,分量度量平均提高了2.2%(比FastSeg+GC),在TU Berlin數據集上的像素度量平均提高了5.0%,分量度量平均提高了5.0%。
在黃14數據集上,我們的結果只是稍微好一點比基於CNN的方法FastSeg+GC[17]更糟(在某些類別中,甚至更糟,見表3)。
這主要是由於從3D模型渲染的合成數據與真實的手繪數據之間存在較大的域間隙,如圖3所示。對於基於GCN的方法來說,大的域間隙可能會導致較大的結構噪聲,從而完全捕獲筆划結構。然而,我們的方法仍然能夠達到最先進的性能。
圖4示出了具有分割誤差的若干分割結果。我們方法的不完善主要是由兩個因素引起的。首先,由於手繪草圖在零件位置和形狀上固有的模糊性,我們的模型可能會給筆划指定錯誤的標簽。例如,在圖4(a)中,仙人掌的樹枝被錯誤地指定為刺,(b)袋子頂部的帶子被標記為把手。其次,列車數據和測試數據之間的巨大差異也可能誤導我們的模型(圖4(d)):列車數據中的黃油味總是展開機翼,而本圖中的測試示例中黃油味折疊其機翼,視角不同。我們認為領域差距是當前基於學習的方法的一個共同問題。然而,圖2中的可視化結果以及黃14和圖柏林數據集的統計數據(表3和表4)表明了我們模型的泛化能力。最后,由於我們的圖形表示只扭曲節點位置和鄰近度等特征,因此我們的模型不知道一些高級語義,例如“人臉只能有一個鼻子”(見圖4(c))。我們相信這個問題可以通過在我們的圖形表示中加入更多的語義特征而得到緩解,我們將留待以后的工作。

6. Conclusion
在這項工作中,我們提出了第一個用於語義草圖分割和標記的圖形卷積網絡。我們的SketchGCN使用靜態圖形卷積單元和動態圖形卷積單元,分別使用兩個分支架構來提取筆划內和筆划間的特征。通過一種新的筆划池操作,使得筆划內標記更加一致,我們的方法在多個草圖數據集中的參數顯著減少的情況下,比最新的方法獲得更高的精度。在我們目前的實驗中,我們只使用絕對位置作為圖形節點的特征,而忽略了筆划的順序、方向、空間關系等信息,未來我們將以更加靈活的圖形結構來開發這些信息。另一種可能是利用遞歸模塊來學習完整的圖形表示。最后,為場景級草圖分割和草圖識別任務重塑我們的體系結構可能是一個有趣的方向。
