用 AnimeGAN 實現將圖片轉換爲二次元風格

夢想伊始

作爲日漫的愛好者,特別是對宮崎駿、新海誠這些壁紙狂魔的作品情有獨鍾。同時,作爲一個程序員的我,一直夢想着可以開發一個功能,實現將現實的照片風格轉化爲動漫風格,爲此我開始學習Python,學習過程中發現已經有大神實現了這樣的功能,於是迫不及待的研究起來。因爲入門python才一週,我使用了5天的時間纔在本地實現了這個功能。發此文一是記錄這個實踐過程中的所學,二是將這個知識分享起來,希望對有同樣愛好的技術人員有些許幫助。

在這裏插入圖片描述

AnimeGAN 介紹

隨着計算機視覺技術的發展,有很多圖片風格轉換的算法模型,比如:CartoonGAN、AnimeGAN 、ComixGAN等。這次學習的項目是一個 TensorFlow 新項目,它實現了 AnimeGAN,並提供了預訓練模型。這意味着我們只要下載安裝以後,就可以直接生成實驗效果。

Github項目地址:https://github.com/TachibanaYoshino/AnimeGAN

下面,先看看作者提供的效果對比圖:
在這裏插入圖片描述

AnimeGAN 環境搭建

因爲圖片的轉換需要用到顯卡的GPU,沒有其他實驗機器,所以直接在本地環境安裝(win10 + GTX 1050 Ti 4G+ 16G內存 + i5-7300HQ),開始之前我覺得這個配置還可以,開始運行後發現用於圖形處理還是不夠,比如比較大(超過1M)的圖片就會轉換失敗,不過不影響結果,普通圖片轉換還是很快的。

1、相關依賴環境:

都是一些比較常用的依賴庫,安裝還是比較快的。我是第一次安裝,遇到不少問題,都記錄下來了。

  • python 3.6.8
  • tensorflow-gpu 1.8
  • opencv
  • tqdm
  • numpy
  • glob
  • argparse

2、Anaconda安裝

本次安裝 Python 使用的是 Anaconda ,是一個開源的Python發行版本,其包含了conda、Python等180多個科學包及其依賴項。十分適合搭建測試運行環境。

1、下載鏈接(點擊進入清華鏡像下載),可以選擇適合自己的版本,安裝的時候只需要注意添加環境變量就可以了(一定要勾選)。
在這裏插入圖片描述
2、安裝完成以後在 win10 菜單欄可以快速打開Anaconda 相關工具。

在這裏插入圖片描述

3、安裝 tensorflow-gpu 依賴

安裝這個插件時遇到很多問題,我單獨記了一篇文章記錄:《Win10 + 1050Ti 安裝 tensorflow-gpu-1.8.0 踩坑筆記》

4、其他依賴安裝

剩餘的依賴都可以通過Anaconda快速安裝。需要手動安裝的插件有:opencv、tqdm、glob 。安裝步驟如下:

第一步:打開 Anaconda Navigator ,第一次打開要初始化一下,等個幾分鐘就好了。點擊:Environments。

在這裏插入圖片描述

第二步:選擇之前安裝 tensorflow-gpu 創建的環境。PS:我就是選錯環境瞎忙了兩天。

在這裏插入圖片描述

第三步:選擇需要安裝的依賴,比如 opencv 。勾選以後右下加會出現 Apply 按鈕,點擊會出現版本彈窗,確認就行了。

在這裏插入圖片描述

第四步:解決組件安裝慢的問題。因爲默認的源訪問較慢,可以換成其他快的。
先刪除原來的,再添加下面的。推薦的源地址:
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

在這裏插入圖片描述

AnimeGAN 的使用

AnimeGAN 的使用在官網寫的很詳細,不過是英文的,不方便閱讀。我簡單描述一下操作步驟。

1、數據包下載

官網的下載鏈接太慢了,爲此我還特地充了迅雷會員。爲了節省大家時間,直接去我網盤下載吧:
鏈接:https://pan.baidu.com/s/1MAAqhqqdcAEogAyMMJbT6A
提取碼:q6d0

2、解壓 AnimeGAN 項目

我是爲了測試方便,直接解壓到桌面了。
在這裏插入圖片描述

2、數據包處理

將下載的數據包放到對應的位置。
在這裏插入圖片描述

3、模型進行訓練

1)使用 Anaconda 進入準備好的環境。

在這裏插入圖片描述

2)進入AnimeGAN 項目解壓的文件夾

在這裏插入圖片描述

3)執行以下命令進行訓練(PS:本項目可以不執行訓練,可以執行以下看看效果,不過執行過程超慢且消耗資源嚴重)

python main.py --phase train --dataset Hayao --epoch 101 --init_epoch 1

在這裏插入圖片描述訓練過程如下圖所示:
在這裏插入圖片描述

順便看一下執行的時候資源消耗:
在這裏插入圖片描述

4、開始使用

搞了這麼多,終於可以實戰操作一下了,把自己準備的照片轉換爲二次元風格。

1)將自己的圖片,放置到 ~\AnimeGAN\dataset\test 下的一個文件夾中,文件夾可以自己定義。注意圖片格式爲 jpg ,且大小不要太大,建議不要超過1M .
在這裏插入圖片描述
2)同樣的方式進入項目解壓目錄,執行以下命令:

python test.py --checkpoint_dir checkpoint/ --test_dir dataset/test/yooao --style_name H

在這裏插入圖片描述3)執行結果如下:
在這裏插入圖片描述4)查看執行結果
執行完以後會在項目根目錄,生成一個results 文件夾,生成圖片就在裏面。
在這裏插入圖片描述

測試效果

1、風景

在這裏插入圖片描述

在這裏插入圖片描述

2、人像

在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章