机器之心报道

参与:肖清、思

随手拍张照片,顺势转换为宫崎骏、新海诚等日漫大师的手绘风格作品,这个专门生成动漫图像的 GAN,实测很好用。

机器之心根据真实店铺照片生成的效果图,一度以为,这就是某个日漫番剧的截图。

尽管最近 2019 年的图灵奖颁给了计算机图形学、颁给了皮克斯 3D 动画,但很多人可能认为二维动漫更有意思一些。像宫崎骏、新海诚这些大师手绘下的动漫,才有了灵魂,张张都能成为壁纸,而整个日漫也以二维为核心。

如果有模型能将真实画面转化为日漫风格的手绘画面,那一定非常炫酷。最近机器之心发现确实有这些模型,从 CartoonGAN 到 AnimeGAN 都能生成非常有意思的图像。

这里有一个 TensorFlow 新项目,它实现了 AnimeGAN,并提供了预训练模型。也就是说,我们下载后可以直接试试生成效果。作为日漫风格的爱好者,我们很快就试用了一下新项目。

项目地址:https://github.com/TachibanaYoshino/AnimeGAN

虽然原项目给出的最佳示例很多都是街景,但我们发现各种场景也都还行,如下是我们试用的原图与生成效果。看看第一张樱花道生成效果,忽然有一种《千与千寻》的感觉。

如果只针对人物,转换效果也是非常不错的。我们尝试将新垣结衣的照片输入 AnimeGAN 模型,然后就有如下这种神奇的画风,感觉直接用到动漫里也没什么问题了。

在原 GitHub 项目中,作者还给了非常多的示例,上面只是机器之心试用的结果,你也可以来用一用。

AnimeGAN

整个项目实现的是论文「AnimeGAN: a novel lightweight GAN for photo animation」中所提方法,作者在论文中分别将 AnimeGAN 与 CartoonGAN、ComixGAN 进行对比。

从图中可以看到,AnimeGAN 在细节方面的表现要优于以上两种方法,色彩相对而言更加自然,涂抹感也没有那么强烈。最明显的是第二行的效果图,使用 AnimeGAN 生成的漫画更加接近宫崎骏的画风。

方法简介

对于这个项目的 AnimeGAN,如下所示为 AnimeGAN 所采用的生成器网络与判别器网络。看起来模型整体是比较常规地一个卷积神经网络,但它会采用实例归一化以及新型的 LReLU 激活函数。

除了架构细节上的更新外,作者还提出了以下三个新的损失函数:

灰度风格(grayscale style)loss

灰度对抗(grayscale adversarial)loss

色彩重构(color reconstruction)loss

这些损失函数能够让生成图片的风格更加接近于真实的漫画风格。

下表比较了 ACartoonGAN 与 AnimeGAN 的模型大小与推理速度。可以明显看出,AnimeGAN 是个相对轻量级的 GAN,具有更少的参数量以及更快的推理速度。

总体来说,新提出来的 AnimeGAN 是一种轻量级的生成对抗模型,它采用了较少的模型参数,以及引入格拉姆矩阵(Gram matrix)来加强照片的风格。研究者的方法需要采用一系列真实图片与一系列动漫图片做训练,且这些图片并不需要成对匹配,这就表明训练数据非常容易获得。

项目实测

我们在 Ubuntu 18.04 下对本项目进行了测试,相关依赖环境如下:

python 3.6.8

tensorflow-gpu 1.8

opencv

tqdm

numpy

glob

argparse

这些依赖项可以说都是 CV 中常用的扩展库,我们就不用费尽心思去解决各种依赖环境冲突的问题了,这里给个好评。

以下是本项目的训练及测试详细流程。我们首先将 AnimeGAN 项目克隆到本地,在 Jupyter notebook 中输入:

!git clone https://github.com/TachibanaYoshino/AnimeGAN

将工作目录切换到 AnimeGAN:

import os

os.chdir ( 'AnimeGAN' )

print ( os.getcwd ( ) )

接下来下载项目作者提供的预训练模型,使用 vim download_staffs.sh 创建一个 Shell 文件,输入如下命令:

URL=https://github.com/TachibanaYoshino/AnimeGAN/releases/download/Haoyao-style_V1.0/Haoyao-style.zip

ZIP_FILE=./checkpoint/Haoyao-style.zip

TARGET_DIR=./checkpoint/saved_model

mkdir -p ./checkpoint

wget -N $URL -O $ZIP_FILE

mkdir -p $TARGET_DIR

unzip $ZIP_FILE -d $TARGET_DIR

rm $ZIP_FILE

DatesetURL=https://github.com/TachibanaYoshino/AnimeGAN/releases/download/dataset-1/dataset.zip

ZIP_FILE=./dataset.zip

TARGET_DIR=./dataset

rm -rf dataset

wget -N $DatesetURL -O $ZIP_FILE

unzip $ZIP_FILE -d $TARGET_DIR

rm $ZIP_FILE

VGG_FILE=./vgg19_weight/vgg19.npy

wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$ ( wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=1U5HCRpZWAbDVLipNoF8t0ZHpwCRX7kdF' -O- | sed -rn 's/.*confirm= ( [ 0-9A-Za-z_ ] + ) .*/1n/p' ) &id=1U5HCRpZWAbDVLipNoF8t0ZHpwCRX7kdF" -O $VGG_FILE && rm -rf /tmp/cookies.txt

保存后退出,以上命令会将预训练的模型、vgg19 权重以及训练数据集下载并保存到其对应目录下。在 notebook 中运行:

!bash download_staffs.sh

至此即完成所有准备工作,运行如下代码就可以对模型进行训练了:

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

AnimeGAN 的训练过程如下图所示:

当进行测试时,我们需要将用于测试的图片保存到 dataset/test/real 目录下,并运行如下代码:

!python test.py --checkpoint_dir checkpoint/saved_model --test_dir dataset/test/real --style_name H

当看到以上输出说明程序已经成功运行完成,生成结果保存在 results 文件夹下。可以看到,在 P100 GPU 上生成一幅图片需要大约 2.3 秒左右。

本文为机器之心报道,转载请联系本公众号获得授权。

------------------------------------------------

加入机器之心(全职记者 / 实习生):hr@jiqizhixin.com

投稿或寻求报道:content@jiqizhixin.com

广告 & 商务合作:bd@jiqizhixin.com

python樱花手绘_宫崎骏动画里的新垣结衣见过没?这个开源动漫生成器让你的照片秒变手绘日漫...相关推荐

  1. 宫崎骏动画里的新垣结衣见过没?这个开源动漫生成器让你的照片秒变手绘日漫

    随手拍张照片,顺势转换为宫崎骏.新海诚等日漫大师的手绘风格作品,这个专门生成动漫图像的 GAN,实测很好用. 根据真实店铺照片生成的效果图,一度以为,这就是某个日漫番剧的截图 尽管最近 2019 年的 ...

  2. 宫崎骏动画里的新垣结衣见过没?这个开源动漫生成器让你的照片秒变手绘日漫...

    本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载 参与:肖清.思 随手拍张照片,顺势转换为宫崎骏.新海诚等日漫大师的手绘风格作品,这个专门生成动漫图像的 GAN,实测 ...

  3. 宫崎骏动画里的新垣结衣见过没?用Python做个开源动漫生成器让你的照片秒变手绘日漫~

    导语 随手拍张照片,顺势转换为宫崎骏.新海诚等日漫大师的手绘风格作品,这个专门生成动漫图像的 GAN,实测很好用. 如果有模型能将真实画面转化为日漫风格的手绘画面,那一定非常炫酷.最近机器之心发现确实 ...

  4. 宫崎骏动画里的新垣结衣见过没?简直美呆!

    全世界只有3.14 % 的人关注了 爆炸吧知识 本文经机器之心(ID:almosthuman2014)授权转载 参与:肖清.思 尽管最近 2019 年的图灵奖颁给了计算机图形学.颁给了皮克斯 3D 动 ...

  5. 手绘日漫版的新垣结衣见过没?这个开源动漫生成器让你的照片秒变

    (给机器学习算法与Python学习加星标,提升AI技能) 本文授权转自"机器之心"(almosthuman2014) 随手拍张照片,顺势转换为宫崎骏.新海诚等日漫大师的手绘风格作品 ...

  6. 本周AI热点回顾:GAN压缩法使算力消耗不到1/9,开源生成器让你的照片秒变手绘日漫

    01 这个开源动漫生成器让你的照片秒变手绘日漫 尽管最近 2019 年的图灵奖颁给了计算机图形学.颁给了皮克斯 3D 动画,但很多人可能认为二维动漫更有意思一些.像宫崎骏.新海诚这些大师手绘下的动漫, ...

  7. python樱花手绘_GitHub 硬核项目:动漫生成器让照片秒变手绘日漫风!!!

    根据真实店铺照片生成的效果图,一度以为,这就是某个日漫番剧的截图 本文转自:机器之心 随手拍张照片,顺势转换为宫崎骏.新海诚等日漫大师的手绘风格作品,这个专门生成动漫图像的 GAN,实测很好用. 尽管 ...

  8. 天秀!GitHub 硬核项目:动漫生成器让照片秒变手绘日漫风!!!

    关注公众号 前端开发博客,回复"加群" 加入我们一起学习,天天进步 ▲ 机器之心根据真实店铺照片生成的效果图,一度以为,这就是某个日漫番剧的截图 本文授权转自:机器之心 随手拍张照 ...

  9. 硬核开源:动漫生成器让照片秒变手绘日漫风!!!

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 随手拍张照片,顺势转换为宫崎骏.新海诚等日漫大师的手绘风 ...

最新文章

  1. CSRF 攻击的应对之道--转
  2. NodeJs中process.cwd()与__dirname的区别
  3. 揭秘《英雄联盟》客户端更新运行自动化测试
  4. 用UDEV服务解决RAC ASM存储设备名
  5. 使用Schematics启用SAP Spartacus的SSR模式
  6. TortoiseGit 分支管理策略
  7. js不区分大小写查找字符串
  8. java ee8 mvc1_JavaEE——SpringMVC(1)--@RequestMapping
  9. http://kylin.apache.org/development/new_metadata.html
  10. 《HBase权威指南》学习总结
  11. Tarjan算法详细讲解
  12. CAN总线波特率计算方法
  13. ubuntu双系统怎么完全删除ubuntu系统(主要是删除引导)
  14. beta版和alpha版
  15. 原生微信小程序使用class 三元运算符实现多选案例
  16. 3D打印在精密铸造领域应用的优势
  17. 关于增量学习的一点总结思考
  18. springBoot整合SqlSessionTemplate使用
  19. 海外调查问卷渠道平台
  20. 【区块链】关于访问控制的一些思考

热门文章

  1. 数据透视表的使用总结
  2. 今夕何夕(思路详解)
  3. 月薪2w+的测试,到底强在哪里?
  4. 【微信小程序】自定义navigationBar标题栏
  5. u盘装linux sas,巧用U盘八步安装Linux系统
  6. 10 23 周总结+一道奇妙数论
  7. 从零开发一个非常有意思的 Python 项目:电子考勤系统
  8. 幻灯片(基于CSS3动画animation)
  9. HP-Socket 官方例程解析
  10. 学习淘淘商城第五十七课(接收Queue消息)