您當前的位置:首頁 > 收藏

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

作者:由 量子位 發表于 收藏時間:2021-03-19

子豪 發自 凹非寺

量子位 報道 | 公眾號 QbitAI

說起影象生成演算法,大家也許並不陌生。

不過,大多數演算法都針對柵格影象,也就是點陣圖,而不支援向量圖。

雖然也有一些生成向量圖形的演算法,但是在監督訓練中,又受限於向量圖資料集有限的質量和規模。

為此,來自倫敦大學學院和Adobe Research的研究人員提出了一個新方法——

Im2Vec

,只需

利用柵格訓練影象

進行間接監督,就可以

生成複雜的向量圖形

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

△Im2Vec的插值效果

原理架構

為建立無需向量監督的向量圖形生成模型,研究人員使用了可微的柵格化管線,該管線可以渲染生成的向量形狀,並將其合成到柵格畫布上。

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

△架構概覽1

具體而言,首先要訓練一個端到端的變分自動編碼器,作為

向量圖形解碼器

,用它將光柵影象編碼為隱程式碼 z ,然後將其解碼為一組有序的封閉向量路徑。

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

對於具有多個元件的圖形,模型則利用RNN為每條路徑生成一個隱程式碼。

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

然後利用DiffVG對這些路徑進行柵格化處理,並使用DiffComp將它們組合在一起,獲得柵格化的向量圖形輸出。

最後將柵格化的向量圖形與原本的向量圖形進行比較,計算二者之間的損失——多解析度光柵損失,並利用誤差反向傳播和梯度下降方法來訓練模型。

其中,

編碼

的過程是這樣的:

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

△架構概覽2

使用路徑解碼器,將路徑程式碼解碼為封閉的貝塞爾路徑,在單位圓上均勻地抽取路徑控制點,以確保路徑的封閉性。

接著,用具有圓形邊界條件的一維卷積神經網路(CNN),對這些控制位置進行變形,以實現對點密度的自適應控制。

相比於控制點的均勻分佈與段數相同,自適應方案調整取樣密度,提高了重建精度。

同時利用訓練的輔助模型,以複雜度-保真度進行權衡,確定路徑的最佳分段數和路徑控制點的數量。

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

△統一取樣與自適應取樣:(a)保真度vs片段數 (b)誤差與片段數

最後,使用另一個一維圓形CNN對調整點進行調整,在繪圖畫布的絕對座標系中輸出最終的路徑控制點。

與現有技術對比

為評估Im2Vec在重構、生成和插值3個任務中的定量效能,研究人員將其與基於柵格的ImageVAE和基於向量的SVG-VAE、DeepSVG進行對比。

重構效能評估

首先,計算各種方法和資料集的重建損失:

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

值得注意的是,在沒有向量監督的情況下,SVG-VAE和DeepSVG均無法在資料集上執行。

同時,研究人員在不同資料集中,對各個方法的圖形重構效能,進行了定性比較。

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

字型重構

的實驗結果,可以看出:

Im2Vec可以捕獲複雜的拓撲結構並輸出向量圖形;

ImageVAE具有良好的保真度,但輸出的柵格影象解析度有限;

SVG-VAE和DeepSVG能產生向量輸出,但往往不能準確再現複雜的字型。

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

MNIST資料集

上訓練的結果顯示:

由於只有柵格資料,沒有向量圖形基準,SVG-VAE和DeepSVG都不能在這個資料集上訓練;

對於ImageVAE和Im2Vec,在沒有數字類專門化或條件化的情況下,ImageVAE則受到低解析度柵格影象的限制(圖a),而Im2Vec能夠生成向量輸出,因此具有相關的可編輯性和緊湊性優勢;二者在生成插值上也都實現了較好的效果(圖b)。

Emojis和Icons資料集

測試模型的重建效能,可以看到Im2Vec模型可以在任意解析度下進行光柵化。

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

透過對不同方法的重構效能進行對比,研究團隊得到結論:

雖然基於向量的方法具有能夠重現精確的向量引數的優點,但它們受到向量引數和影象清晰度之間非線性關係的不利影響。

SVG-VAE和DeepSVG所估計的向量引數看似很小的誤差,卻可能導致影象外觀的巨大變化。

而Im2Vec不會受到向量引數和畫素空間之間目標不匹配的影響,因而在重構任務中有顯著的改進。

生成和插值效能評估

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

△Im2Vec插值效能的測試效果

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

△Im2Vec生成的隨機樣本

從實驗資料可以看出,在FONTS和MNIST上,Im2Vec結果比其他方法都要準確,Im2Vec生成的隨機樣本,具有顯著拓撲變化。

侷限

不過,Im2Vec也存在一些侷限。

無需向量監督的向量圖生成演算法,入選CVPR 2021 | 程式碼開源

基於柵格的訓練性質給Im2Vec帶來了一定的限制,可能造成一些細微特徵的丟失。這一問題可以透過犧牲計算效率提高解析度,或者透過開發更復雜的影象空間損失來解決。

此外,由於缺乏向量監督,在特殊情況下,Im2Vec可能會採用包含退化特徵的近似最優值,或者考慮語義上無意義的部分來生成形狀。

結論

Im2Vec的生成性設定支援投影(將影象轉換為向量序列)、生成(直接以向量形式生成新的形狀),以及插值(從向量序列到另一個向量序列的變形甚至拓撲變化),並且與需要向量監督的方法相比,Im2Vec實現了更好的重建保真度。

根據研究團隊主頁介紹,這篇論文已經入選CVPR 2021。

模型演算法程式碼在GitHub上開源,感興趣的讀者可以透過文末連結檢視~

相關連結:

[1]

https://

arxiv。org/abs/2102。0279

8

[2]

https://

github。com/preddy5/Im2V

ec

[3]

http://

geometry。cs。ucl。ac。uk/p

rojects/2021/im2vec/

—完—

@量子位 · 追蹤AI技術和產品新動態

深有感觸的朋友,歡迎贊同、關注、分享三連վ‘ᴗ’ ի ❤

標簽: Im2Vec  向量  柵格  生成  圖形