一条命令调用云端GPU学习梵高风格

2018 年 1 月 10 日 数据挖掘入门与实战 魏鸿鑫

某日,数字图像处理课程结课。

老师:课程结课,给你们布置个任务压压惊。

众人:卧槽,最近这么多实验课还要布置任务?

老师:我的要求很简单。我要实现一个视频处理,什么效果我不管,你们自由发挥。

众人:怎么简单也不简单了好吧!

好吧,在这茫茫多的实验课中,我还得再多完成一个大作业!想想怎么才能阿姆斯特朗回旋加速喷气式糊弄过老师= =||。

这个时候,RussellCloud来到了我的眼前,这是一个帮助开发者提升深度学习算法开发、部署效率而打造的计算平台产品,不需要配置环境,不用下载数据集,也不需要自己准备GPU机器,因为最近刚推出所以新注册的用户都有免费GPU用量,而且平台上不是有现成的图像风格迁移案例嘛 !

这里就将通过RussellCloud复现VGG19网络实现风格迁移。

(参考知乎专栏:Russell Lab)

梵高《星空》风格的雄狮

风格迁移及VGG网络介绍

风格迁移,是指把一副图像上的纹理转换到另一副图,使后者具有前者的某些纹理特点。

传统做法,是对图像进行一系列频域尺度的操作。这样的做法缺点很明显,很难具有抽象水平的风格迁移。

现在我们有了神经网络,即可通过神经网络,把一幅图的抽象风格,和另一幅图的底层风格很好的融合在一起。

VGG-19 是由牛津大學 Visual Geometry Group 提出的神经网络模型。它创新性的通过3x3的小卷积层网络,加深神经网络的深度,并在 ImageNet Challenge 2014年的比赛中,取得了极好的成绩。

VGG19 网络结构图

使用RussellCloud复现

其实使用这个VGG19层的网络做深度学习,运行时间是比较长的,但如果使用RussellCloud的GPU复现,一切都会变的快速!偷偷告诉你,RussellCloud使用的可是NVIDIA的Tesla系列GPU哦。


复现前准备:

  • 注册 RussellCloud 账号

(注册邀请码可至论坛跟帖求助获取,每位已经注册的用户也有五枚好友邀请码)

  • 安装 russell-cli 终端工具

$ sudo pip install -U russell-cli


  • Clone 项目文件

$ git clone https://github.com/RussellCloud/Neural_Style‍


  • 使用命令行登录

$ russell login


输入y,网页登录后在网页端拷贝账户的Token,粘贴进终端,回车。如果你使用Windows的命令行,可能会出现粘贴不进的情况,请右键窗口粘贴。


新建项目:

来到RussellCloud主页,进入控制台,新建一个项目。项目名随便起一个,很多都可以不填,比较重要的是默认容器环境一定要选择tensorflow-1.0:py2 。

RussellCloud项目创建页



初始化项目:

项目创建完成后记得在项目主页复制概览ID,用于项目初始化。

# 绑定远程项目,此处 是在网页上复制的项目概览 ID

$ russell init --id


运行项目:

初始化完成后我们就可以用 russell run 命令运行项目了,项目文件已经准备好了一个 shell 脚本,只需要指定一个 content_img/content_video 和一个 style_img 的图片路径就可以生成了。

# russell run 运行项目下shell脚本生成

$ russell run "bash stylize_image.sh ./image_input/lion.jpg ./styles/kandinsky.jpg" --gpu  --data bf9f524a384c4a69a021f0cf122815ec:model


使用网页查看日志和输出:

russell run 后会将你的代码上传至服务器,成功后会运行一个任务task,并告诉你 task 的 id 可以使用 russell logs 查看。但我们这里使用网页来进行更方便的操作。

到个人控制台下可以 看到已经运行过的任务,点开查看日志和输出:


RussellCloud日志页
RussellCloud结果输出


这里看到我们成功将一个狮子的图片与抽象派 Kandinsky 的作画风格融合在一起,生成一幅油画风格的图片。


小记

项目下自带了一些名家作品,融合时选择颜色相近的作品效果要更加好一些。下面是融合前和融合后的效果,可以观察一下。

校园实拍例子


你也可以自行选择其他的名画作品作为style模板进行融合,尝试一下吧!这里再放一张效果不错的结果图。

效果图


当然这个项目不光光可以做图片的风格迁移,也可以做视频的风格迁移(这不正拿着去交视频处理的大作业嘛)。

不过风格迁移最好用的地方还是处理图片,日常拍摄的一些图片处理起来效果都非常不错。

特别是如果你有一些不太满意细节的图片。经过风格迁移后,这些细节会变得没有那么显著,不再是影响图片问题!

最重要的是,还能提高逼格,有木有!!


最后,真的只靠一条指令哦~

russell run "bash stylize_image.sh ./image_input/lion.jpg ./styles/kandinsky.jpg" --gpu  --data bf9f524a384c4a69a021f0cf122815ec:model


点击「阅读原文」跳转RussellCloud首页


参考资料

1. RussellCloud/Neural_Style

http://link.zhihu.com/?target=https%3A//github.com/RussellCloud/Neural_Style

2. [Deep Learning] 在 Keras 使用 VGG19

http://link.zhihu.com/?target=http%3A//yenlung-blog.logdown.com/posts/864703-deep-learning-keras-vgg19 

3. kaggle.com/keras/vgg19

http://link.zhihu.com/?target=https%3A//www.kaggle.com/keras/vgg19

4. VGG与风格迁移算法原理 - MCFON

http://link.zhihu.com/?target=https%3A//www.hzl-fj.com/524.html


原文 https://zhuanlan.zhihu.com/p/32670571

登录查看更多
0

相关内容

【实用书】学习用Python编写代码进行数据分析,103页pdf
专知会员服务
190+阅读 · 2020年6月29日
【2020新书】使用高级C# 提升你的编程技能,412页pdf
专知会员服务
56+阅读 · 2020年6月26日
【实用书】Python机器学习Scikit-Learn应用指南,247页pdf
专知会员服务
257+阅读 · 2020年6月10日
【书籍推荐】简洁的Python编程(Clean Python),附274页pdf
专知会员服务
173+阅读 · 2020年1月1日
【模型泛化教程】标签平滑与Keras, TensorFlow,和深度学习
专知会员服务
20+阅读 · 2019年12月31日
【精通OpenCV 4】Mastering OpenCV 4 - Third Edition 随书代码
专知会员服务
36+阅读 · 2019年11月13日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
20+阅读 · 2019年11月7日
已删除
AI掘金志
7+阅读 · 2019年7月8日
用Now轻松部署无服务器Node应用程序
前端之巅
16+阅读 · 2019年6月19日
深度学习 | 免费使用Google Colab的GPU云计算平台
沈浩老师
11+阅读 · 2018年2月4日
深度学习界的 “吃鸡挂”——目标检测 SSD 实验
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
深度学习入门篇--手把手教你用 TensorFlow 训练模型
全球人工智能
4+阅读 · 2017年10月21日
Do RNN and LSTM have Long Memory?
Arxiv
19+阅读 · 2020年6月10日
Deformable Style Transfer
Arxiv
14+阅读 · 2020年3月24日
Arxiv
4+阅读 · 2018年5月14日
Arxiv
8+阅读 · 2018年5月1日
Arxiv
8+阅读 · 2018年1月12日
VIP会员
相关资讯
已删除
AI掘金志
7+阅读 · 2019年7月8日
用Now轻松部署无服务器Node应用程序
前端之巅
16+阅读 · 2019年6月19日
深度学习 | 免费使用Google Colab的GPU云计算平台
沈浩老师
11+阅读 · 2018年2月4日
深度学习界的 “吃鸡挂”——目标检测 SSD 实验
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
深度学习入门篇--手把手教你用 TensorFlow 训练模型
全球人工智能
4+阅读 · 2017年10月21日
相关论文
Top
微信扫码咨询专知VIP会员