Cartoon-Stylegan2:快来将你的图片漫画风
title
Cartoon-Stylegan : Fine-Tuning stylegan2 for cartoon face generation
author
Jihye Back
Link
論文地址:here
Code:here
Abstract
最近的研究表明,在無監督圖像到圖像轉換方面取得了顯著的成功。然而,由于數據的不平衡,學習各個領域的聯合分布仍然具有很大的挑戰性。盡管現有模型可以生成逼真的目標圖像,但很難保持源圖像的結構。另外,在多個領域的大數據上訓練生成模型需要大量的時間和計算機資源。為了解決這些限制,我提出了一種新穎的圖像到圖像轉換方法,該方法通過微調 stylegan2 預訓練模型來生成目標域的圖像。 stylegan2 模型適用于不平衡數據集上的無監督圖像到圖像翻譯;它非常穩定,可以生成逼真的圖像,甚至在使用簡單的微調技術時可以從有限的數據中正確學習。因此,在這個項目中,我提出了新的方法來保留源圖像的結構并在目標域中生成逼真的圖像。
背景介紹等
本文通過finetune Stylegan2模型,完成圖像到圖像的翻譯,為了使源圖像和目標圖像相似,例如制作成對圖像,提出了兩種方法:
(1)FreezeSG (凍結style向量和generator的初始blocks)。這個很簡單,并且可以令目標圖像遵循源圖像的結構。
(2)Structure Loss(減小源generator和目標generator之間初始block的距離)。在這種loss訓練下的模型加入層交換,效果也十分顯著。
Method
Baseline : StyleGAN2-ADA + FreezeD
這種結構可以生成逼真的圖像,但是它無法保持源域的結構。
Ours : FreezeSG (Freeze Style vector and Generator)
FreezeG 可以有效地保持源圖像的結構。(凍結生成器的參數)
通過各種實驗的結果,我發現除了生成器的初始層,樣式向量的初始層對于保持結構也很重要。 因此,我凍結了生成器和樣式向量的低分辨率層。
上圖是通過相加style vector不同層,得到的實驗結果。在Stylegan2中,style vector為n * 18 * 512,上圖可以發現保留4層后,源圖的結構也能大致留下。所以這也是作者想要凍結style vector低分辨率層的原因。
Freeze Style vector and Generator
with Layer Swapping
應用 LS 時,FreezeSG 生成的圖像與源圖像的相似度高于使用 FreezeG 或Baseline(FreezeD + ADA)時的相似度。 然而,由于固定了生成器的低分辨率層的權重,因此在低分辨率層上進行層交換時很難獲得有意義的結果。
關于層交換,作者描述的不多,但是是借鑒于https://arxiv.org/abs/2010.05334這篇文章。原文中的介紹如下:
可以理解為,交換原generator和新generator低分辨率層的權重。(但目前存在的疑問在:如果通過其他pretrained模型進行fintune,凍結了低分辨率層,不也是相當于作了層交換…此處存疑)
Ours : Structure Loss
由于低分辨率層下優先確定圖像結構,我將Structure Loss應用于低分辨率層的值,以便生成的圖像與源域中的圖像相似。 Structure Loss使得源生成器的 RGB 輸出在訓練期間被微調到與目標生成器的 RGB 輸出具有相似的值。
Results
下面來看一看CartoonGAN生成的效果。
作者還描述了一些利用CartoonGAN做一些應用的表現,比如配合StyleCLIP做人臉編輯,又或者在樣式混合階段的表現,此處就不多描述了。
總結
該篇文章更像是作者的實驗筆記,在實驗過程中驗證了記錄下來的心得體會。
- 作者在前人的基礎上,加入了凍結style vector的想法,試驗效果良好
- 加入了structure loss,控制新generator生成的圖像更貼近源generator生成的圖像(更相似)
- 加入了Layer swap(合并其他的項目)
總結
以上是生活随笔為你收集整理的Cartoon-Stylegan2:快来将你的图片漫画风的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python数据分析:柱形图的绘制方法
- 下一篇: 计算2个时间段的重叠天数