論文簡介:將卡通插畫轉換爲「扁平風格」

未經同意,禁止轉載。(更新時間:2020-11-05) |  個人筆記,僅供參考。

本文屬於:動漫線稿自動上色-系列論文筆記


目錄

1. 基本信息

2. 概述

3. 問題定義

3.1 區域標註規則

3.2 與語義分割的區別

4. Normal-from-region轉換算法

5. 應用之一:將二次元插畫轉換爲扁平風格

5.1 扁平風格上色問題

5.2 上色效果


1. 基本信息

論文標題:DanbooRegion: An Illustration Region Dataset

                  DanbooRegion:卡通(二次元)插畫區域分割數據集(基於深度學習方法)

發表會議:European Conference on Computer Vision (ECCV) 2020 

研究領域:計算機視覺,計算機圖形學,半自動化數據集構建,深度學習,隨機場(Random Field),圖像翻譯

作者:Lvmin Zhang, Yi JI, and Chunping Liu

論文鏈接:(1)ECVA  |  Supplymentary material

2. 概述

面對非常複雜的非線性問題,如果數學算法無法很好地對問題進行建模,就需要考慮使用數據驅動(data-driven)的方法:構建一個數據集,然後使用深度神經網絡根據數據自動構建模型,自動學習從問題到答案(end-to-end)的函數變換 {*}。

對於二次元插畫區域分割問題,由於之前的圖像分割算法無法實現較好的分割效果,作者決定自行構建一個插畫區域分割數據集,以便使用深度神經網絡來解決該問題。

論文提出了一個高質量的插畫區域分割數據集DanbooRegion。該數據集是在Danbooru 2018數據集的基礎上進行區域標註。(PS:希望業界之後能開放大規模國漫數據集。)由12名專業畫家進行區域標註以及標註質量驗證。提出了一種半自動化的輔助區域標註方法Feasibility-based Assignment Recommendation(FAR),以減少標註人員的工作量。

數據集輔助標註方法Feasibility-based Assignment Recommendation

3. 問題定義

從某種程度上來說,構建一個數據集的過程,就是在具體化地給出待求解問題的定義 {*}。

3.1 區域標註規則

大致的區域標註規則,如下圖(a)(b)(c所示:(具體規則詳見論文)

區域標註規則示例(a)(b)(c)

 (a忽略光照與陰影產生的分界線。強調物體的邊緣。

(b忽略細節紋理。強調物體內部的結構性線條(主要線條)。(例如:將衣服根據其內部的結構性線條劃分爲多個區域,以體現出一定的筆觸感。)

其他示例:

 (c從專業畫家的視角,重新組織(reorganize)色彩含糊區域。把顏色相似但內部分界線含糊的的上色區域,分解爲若干個邊界清晰的區域(如:頭髮),以體現出一定的筆觸感;或者合併爲單個區域(如下圖青蛙的風衣)。

其他示例:

 區域標註顏色說明:對插畫中的區域進行標註時,不同區域使用不同的顏色。每個區域使用的顏色爲隨機選擇的顏色。選擇的顏色僅用於區分不同的區域,與所標註區域的「類別」(是頭髮、還是衣服)無關。不同插畫的區域標註顏色沒有任何關聯。同一個物體(如頭髮)內部可能會被分割爲多個區域。對於非連通的區域,即使同屬於一個類別(例如一件風衣的左、右兩邊),也會被標註爲不同的顏色。

3.2 與語義分割的區別

「圖像語義分割」是計算機視覺的基本任務之一。需要注意「圖像語義分割」與論文提出的「插畫區域分割」定義存在很大的區別 {*}。

(1)「圖像語義分割」(Semantic Segmentation)的目標是對圖像中的每個像素進行分類。每個像素屬於且僅屬於一種「類別」(class)。模型能識別的類別種數在訓練後是固定的,由訓練數據集決定。例如:若訓練集只標註了「人/車/道路/其他」這四種類別,那麼在測試階段,輸入圖像的每個像素只會被分類爲這四種類別中的一種。

圖像語義分割示例 [ref-1]

(2)而論文提出的「插畫區域分割」問題不存在「類別」的概念。「區域分割」是將輸入的插畫分割爲若干個區域(Region)。每個像素屬於且僅屬於一個區域。區域與物體類別無關,同一個物體(如頭髮)內部可能會被分割爲多個區域。在測試階段,一張插畫中可能包含的區域數量沒有上限。例如:對於測試階段的插畫,一個人可能被分割爲10個或30個互不相交的區域(視該插畫的具體繪製情況而定)。(其他區別詳見上一節描述的「區域標註顏色說明」。)

4. Normal-from-region轉換算法

由定義引發的問題是:無法直接用「語義分割網絡」來解決插畫區域分割問題。另外,由於每個區域標註的顏色都是隨機選擇的,不同插畫的區域標註顏色沒有任何關聯,所以也無法直接使用「圖像翻譯網絡」(如:Pix2Pix)來解決該問題。那麼,如何設計算法,才能讓CNN能夠處理這種不含類別的區域分割問題?(難點

爲解決這一問題,論文設計了一種Normal-from-region轉換算法,將「插畫區域分割問題」轉化爲 「圖像翻譯問題」(Image-to-Image Translation),使得可以使用Pix2Pix等網絡來處理該問題。

在訓練階段,需將人工標註的「區域標註圖」轉化爲Normal map和marker的疊加(基於「隨機場」),供「圖像翻譯網絡」進行學習。

訓練階段:Normal-from-region轉換算法

 

在測試階段,網絡的輸入爲插畫,輸出爲Normal map和marker的疊加。藉助分水嶺算法(watershed),將網絡輸出的Normal map轉換爲「區域標註圖」(填充的顏色爲隨機值)。

測試階段:Region-from-normal轉換

5. 應用之一:將二次元插畫轉換爲扁平風格

5.1 扁平風格上色問題

DanbooRegion數據集包含諸多應用方向,如:動畫跟蹤,光照分解等等。下面主要介紹其在「插畫扁平風格轉換」方面的應用:

問題:給定一張動漫線稿,如何自動生成「扁平風格」的上色效果?

一種方案是先把插畫訓練數據集轉換爲扁平風格,然後直接用轉換後的數據集訓練自動上色網絡 {*}。但該方法實際上是無效的,原因之一在於,上色網絡屬於「圖像翻譯網絡」,而圖像翻譯網絡無法保證輸出結果的每個區域只含有一種顏色,從而無法實現扁平風格的上色效果。

另一種方案是先使用自動上色網絡上色,再將其輸出結果轉換扁平風格。Style2Paints V4.5能夠在用戶輸入較少顏色提示的情況下(有時甚至不需要輸入顏色提示),只需選擇一種內置調色板,就能達到較好的自動上色效果。(提示點的顏色,可以從內置調色板生成上色結果的其他區域選取,所以對於非繪畫專業的普通用戶,即使不懂色彩知識,也可以輕鬆進行上色。)因此,如果能將Style2Paints的上色結果自動轉換爲扁平風格,就能幫助非繪畫專業的普通用戶實現扁平風格的(半)自動上色。雖然很多基於數學算法的上色軟件(如LazyBrush算法)也可用於手工繪製平塗效果,但這種(基於深度學習的)高度自動化的上色過程,是LazyBrush算法所無法實現的 {*}。

由於訓練數據集(Danbooru)中幾乎都是非扁平風格的插畫,深度上色網絡無法直接生成扁平風格的上色效果。因此,需要解決的問題轉化爲:如何將「非扁平風格的插畫」轉換爲「扁平風格」?

 

論文使用提出的DanbooRegion數據集訓練Pix2PixHD圖像翻譯網絡,可得到一個插畫區域分割網絡。取分割結果中每個區域的中間顏色作爲該區域的顏色,形成初步的扁平化上色效果。訓練階段使用的數據增強方法爲Bilateral Filter [49](作者稱之爲low & high-frequency augmentation),以避免網絡對插畫中的高頻邊緣信息過擬合,同時讓網絡學習針對模糊的區域的分割方法。然後使用一系列算法(Selected Search [50],[4])優化最終的結果。

 low & high-frequency augmentation數據增強方法

另外,區域分割網絡是交互式的,允許用戶在初步分割結果的基礎上添加提示線條,以指導網絡合並一些被錯誤地分開的區域。

5.2 上色效果

訓練好的網絡可用於將PaintsChainer、Style2Paints生成的上色結果轉化爲「扁平風格插畫」。扁平風格上色效果如下圖所示:

將上色網絡的輸出轉換爲扁平風格(左:PaintsChainer,右:Style2Paints)
(其中:圓點表示用戶添加的顏色提示點,虛線表示用戶添加的用於合併扁平上色區域的提示線)

 

扁平風格自動上色效果(第一代,第二代扁平上色模型)

相關論文:

論文標題:Erasing Appearance Preservation in Optimization-based Smoothing(基於數學算法

發表會議:European Conference on Computer Vision (ECCV) 2020 (Spotlight)

→論文簡介-鏈接

雖然這篇論文的任務目標是對各種圖像(包括照片和插畫)進行光照分解、顏色替換、紋理替換等,但筆者認爲該算法能在一定程度上將插畫轉換爲近似的「扁平風格」 {*}。需要指出的是,該文算法生成的扁平風格效果與DanbooRegion存在一定差異,無法實現一部分區域分割規則,如分割規則(b)(c)。


參考與引用資料:

{*}爲本blog爲了便於理解論文而補充介紹的內容。

[4] Bessmeltsev, M., Solomon, J.: Vectorization of line drawings via polyvector fields. ACM Transactions on Graphics 38(1), 1–12 (jan 2019).https://doi.org/10.1145/3202661

[49] Tomasi, C., Manduchi, R.: Bilateral filtering for gray and color images. In: Sixth International Conference on Computer Vision (IEEE Cat. No.98CH36271). Narosa Publishing House (1998). https://doi.org/10.1109/iccv.1998.710815

[50] Uijlings, J.R.R., van de Sande, K.E.A., Gevers, T., Smeulders, A.W.M.: Selective search for object recognition. IJCV (2013)

[ref-1] Shotton, J., Winn, J., Rother, C., and Criminisi, A. (2009). Textonboost for image understanding: Multi-class object recognition and segmentation by jointly modeling appearance, shape and context. International Journal of Computer Vision, 81(1):2–23.