neural-style、chainer-fast-neuralstyle图像风格转换实验

首先说明,该篇博客是在ubuntu16.04+gtx1060+cuda8.0+tensorflow源码安装、测试经历基础上进行实验,gtx 1060显卡驱动、cuda、cudnn和tensorflow安装这里不再赘述。

本实验分为neural-style和chainer-fast-neuralstyle两部分。


打个广告:目前博主正在字节跳动奋斗,欢迎各位一起来共事
【内推码】:HVWUV6Y
【投递地址】:https://job.bytedance.com/

废话不多说,上车吧,少年

  1. 载入源码,终端输入
    git clone https://github.com/anishathalye/neural-style

  2. 下载vgg19模型
    下载地址:http://www.vlfeat.org/matconvnet/models/beta16/imagenet-vgg-verydeep-19.mat

  3. 把vgg19模型放到neural-style的文件夹根目录下,如图所示
    这里写图片描述

  4. 把想转换风格的照片放入example目录,并在终端输入
    cd neural_style\
    python neural_style.py --content ./examples/1in.jpg --styles ./examples/1-style.jpg --output ./examples/1out.jpg

其中,1in.jpg是example目录下想要转换的图片;1-style.jpg是example目录下想要模仿其风格的模板图片;1out.jpg是即将在example目录下转换生成的图片名称。

转换过程如图所示(不清楚的图片右键新标签页打开图片):
这里写图片描述
这里列出两种风格转换结果
这里写图片描述


这里写图片描述


这里写图片描述


这里写图片描述


二、chainer-fast-neuralstyle

虽然neural-style效果已经挺不错,但其运行时间却不尽人意,gtx1060上运行一张1280×960的150k左右图片却要花费将近18分钟,而chainer-fast-neuralstyle是neural-style高效版本,运行效率大大提升,gtx1060上运行一张1280×960的150k左右图片平均时间22秒。

  1. 载入源码,终端输入
    git clone --recursive https://github.com/yusuketomoto/chainer-fast-neuralstyle

  2. 载入更多模型,终端输入
    git clone --recursive https://github.com/gafr/chainer-fast-neuralstyle-models
    此下载的文件有两个用途:
    ①复制chainer-fast-neuralstyle-models\images\目录下所有含有style字样的图片到neural_style\examples\目录下,增加neural_style可用的模板集;

    ②复制chainer-fast-neuralstyle-models\models\目录下所有model到chainer-fast-neuralstyle\models\目录下,增加chainer-fast-neuralstyle可用的模型;

  3. 安装依赖
    sudo pip install chainer

  4. 图像风格转换
    终端输入python generate.py sample_images/1.jpg -m models/candy_512_2_49000.model -o sample_images/1out.jpg
    其中,1.jpg是sample_images目录下想要转换的图片; candy_512_2_49000.model是models目录下任意一种模型; 1out.jpg是即将在sample_images目录下转换生成的图片名称。

    转换过程如图所示:
    这里写图片描述
    这里列出两种风格转换结果
    这里写图片描述


    这里写图片描述


    这里写图片描述


    这里写图片描述



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值