《A Neural Algorithm of Artistic Style》—— 基于卷曲神经网络的艺术风格转换

前端时间,俄罗斯黑科技网站Ostagram开放注册,只要输入两幅图,就能使它们的风格完全融合在一起,如请输入图片描述
请输入图片描述

请输入图片描述请输入图片描述
我兴奋地注册好账号,结果请输入图片描述
毛子无德,比雷军还能耍猴请输入图片描述
一怒之下,兴起了自己动手完成图片合成的想法
于是上网找资料,发现这个算法最早来自图宾根大学的一篇论文《A Neural Algorithm of Artistic Style
继续找资料,得知伯克利大学发明了一种卷积神经网络的深度学习框架:Caffe
通过 Caffe ,输入VGG , GoogleNet 等模型,就能够实现艺术风格的转换

在 Caffe 的 Github 项目上可以找到很多项目来做为参考

详细步骤如下:

1 . 下载项目包

打开 https://github.com/fzliu/style-transfer,下载项目包并解压文件请输入图片描述

打开到 style-transfer-master -> scripts 文件夹,用记事本打开 download_models.sh 文件请输入图片描述
分别打开里面 4 个Url 连接 ,下载 model请输入图片描述
把 model 按名称放到 style-transfer-master -> models 里的 4 个文件夹里

2 . 编译 PyCaffe ,获得 Python 支持

安装并编译Caffe , 详情见我的另一篇文章《Windows10+GTX950m+VS2013 环境下编译 Caffe》

由于这个项目是基于 pycaffe 的,编译 Caffe 成功后,右键点击 解决方案请输入图片描述
选择 属性 , 把 单启动项目 里的 caffe 替换成 pycaffe ,然后编译请输入图片描述
若成功,则在 Caffe -> caffe-master -> Build -> x64 -> Release文件夹下有 pycaffe 文件夹请输入图片描述
复制里面的文件请输入图片描述
粘贴到 Anaconda2 -> Lib -> site-packages文件夹里请输入图片描述

3 . 下载资源库

Win + R 打开 CMD请输入图片描述
输入 pip install progressbar,安装 python progressbar 包
输入 conda install --yes numpy scipy matplotlib scikit-image pip 安装源包请输入图片描述
输入 pip install protobuf 安装资源包请输入图片描述

4 . 运行代码

打开 CMD ,定位到 style-transfer-master 文件夹所在位置,实际上,重要的是 style.py 文件所在的位置

依次输入 d: , cd STM , cd style-transfer-master请输入图片描述

d: 进入 D 盘

cd STM 进入 D 盘里的 STM 文件夹

cd style-transfer-master 进入 STM 文件夹里的 style-transfer-master 文件夹

输入代码运行,代码的格式:
python style.py -s <style_image> -c <content_image> -m <model_name> -g 0

请输入图片描述

<style_image> 是你想要转换图片的风格的地址

<content_image> 是你要转换的图片的内容

<model_name> 是你加载的模型

-g 0`表示使用 GPU 进行计算

实例:
请输入图片描述请输入图片描述

硬件使用情况:

CPU :
请输入图片描述
GPU :
请输入图片描述

输入 content :
请输入图片描述
输入 style :
请输入图片描述
输出结果 :
请输入图片描述

参考:
http://bbs.ngacn.cc/read.php?tid=10003080
https://github.com/jcjohnson/neural-style
https://github.com/Microsoft/caffe
https://github.com/fzliu/style-transfer

返回文章列表 文章二维码
本页链接的二维码
打赏二维码
Title - Artist
0:00