Python 一行代碼將你的頭像轉(zhuǎn)成動漫風(fēng)!
大家好,我是小五。最近遇到了一個問題,需要將頭像轉(zhuǎn)化動漫風(fēng),當(dāng)時第一想法就是找現(xiàn)成的輪子。比如我們在之前的文章中《超有趣的Python實(shí)戰(zhàn):將圖片轉(zhuǎn)成像素風(fēng)!》,就是通過調(diào)用名為Tiler的開源庫,生成可愛像素風(fēng)圖片!

將頭像轉(zhuǎn)化為動漫風(fēng),就是希望在保持原圖像信息和紋理細(xì)節(jié)的同時,將真實(shí)照片轉(zhuǎn)換為動漫/卡通風(fēng)格的非真實(shí)感圖像。目前除了百度api,Github上還有不少開源庫可供我們直接使用。
其中AnimeGAN是來自武漢大學(xué)和湖北工業(yè)大學(xué)的一項(xiàng)研究,采用的是神經(jīng)風(fēng)格遷移 + 生成對抗網(wǎng)絡(luò)(GAN)的組合,實(shí)現(xiàn)效果非常符合我們的需求。

AnimeGAN最早使用的是Tensorflow框架,不過查詢資料后發(fā)現(xiàn)該項(xiàng)目已支持PyTorch框架。

地址:https://github.com/bryandlee/animegan2-pytorch
而我正好之前基于PyTorch實(shí)現(xiàn)過微博評論情感分析,所以用起來也不會有什么負(fù)擔(dān),還省得安裝庫了。
Pytorch安裝
PyTorch是一個開源的Python機(jī)器學(xué)習(xí)庫,基于Torch,用于自然語言處理等應(yīng)用程序。這個深度學(xué)習(xí)框架,可以應(yīng)用在數(shù)值建模、圖像建模、文本建模、音頻建模等等多個方向。

安裝Pytorch會比其他庫麻煩一些,如果去官方安裝下載,需要根據(jù)實(shí)際配置得到適合自己的安裝命令。

如果你通過上面這種步驟發(fā)現(xiàn)下載速度慢,或者遇到各種問題,不妨試試下面這個網(wǎng)站:
https://download.pytorch.org/whl/torch_stable.html
網(wǎng)站視圖:

動漫風(fēng)格遷移
安裝Pytorch框架后,我們便可以將該animegan2-pytorch項(xiàng)目clone到本地/直接下載下來:
git?clone?https://github.com/bryandlee/animegan2-pytorch
下載到本地的文末目錄如下圖所示:

其中weights文件夾下包含四個權(quán)重,選擇對應(yīng)的權(quán)重就能實(shí)現(xiàn)自己想要的動漫風(fēng)格遷移。samples下的inputs文件夾中儲存了圖片示例,可以直接拿來試水。除此以外,我還在同一路徑下新建了output文件夾,用于存放處理后的圖片。
接下來,我們只需要在命令行中運(yùn)行test.py腳本就可以調(diào)用該項(xiàng)目,具體命令格式如下:
python?test.py?--checkpoint?[模型文件路徑]?--input_dir?[輸入圖像所在目錄]?--output_dir?[輸出目錄]?--device?[設(shè)備選擇,cpu或者cuda]
實(shí)際操作:

由于是像實(shí)現(xiàn)人臉動漫遷移,所以我分別使用了face_paint_512_v1.pt和face_paint_512_v2.pt權(quán)重,效果如下圖所示:

換一張圖看一下:

個人覺得face_paint_512_v2.pt權(quán)重的處理成品更符合我對動漫風(fēng)的想象,大家怎么看呢?
最后我也試了試paprika.pt對風(fēng)景圖片進(jìn)行動漫遷移。

效果如下圖所示:

如果大家對將頭像/圖片轉(zhuǎn)化動漫風(fēng)感興趣,不妨也來試試~
注意!
注意!
如果看完本文的小伙伴,不想安裝Pytorch,又想直接打造一個自己專屬的漫畫臉?
可以電腦打開這個網(wǎng)址:https://huggingface.co/spaces/akhaliq/AnimeGANv2,這是在線AnimeGANv2的APP,無需你本地安裝什么框架,直接就可以進(jìn)行轉(zhuǎn)換。

我們的文章到此就結(jié)束啦,如果你喜歡今天的Python 實(shí)戰(zhàn)教程,請持續(xù)關(guān)注Python實(shí)用寶典。
有任何問題,可以在公眾號后臺回復(fù):加群,回答相應(yīng)紅字驗(yàn)證信息,進(jìn)入互助群詢問。
原創(chuàng)不易,希望你能在下面點(diǎn)個贊和在看支持我繼續(xù)創(chuàng)作,謝謝!
點(diǎn)擊下方閱讀原文可獲得更好的閱讀體驗(yàn)
Python實(shí)用寶典?(pythondict.com)
不只是一個寶典
歡迎關(guān)注公眾號:Python實(shí)用寶典
