Prisma这个应用,你可能很熟悉。这是一个能将不同的绘画风格,迁移到照片中,形成不同艺术风格的图片。

2017年4月,美国康奈尔大学和Adobe的一个研究团队在arvix上通过论文“Deep Photo Style Transfer”, 提出一种叫做“深度摄影风格转换”的演化技术,能将一张照片的风格,迁移到另一张照片中。原论文作者给出了Ubuntu14.04系统下的Torch实现,但是该Torch代码实现需要配置复杂的MATLAB环境,但是浙大的LouieYang将该Torch实现转换成了TensorFlow实现。

项目地址:https://github.com/LouieYang/deep-photo-styletransfer-tf

(照片风格迁移示例如下,以下三列从左到右分别是:输入图像、风格图像、Torch效果、TensorFlow效果)

下面是对这个TF实现的介绍:

这份TensorFlow实现支持Adam算法和原作者使用的L-BFGS-B算法。当TensorFlow升级到更高版本时,此代码中的ScipyOptimizerInterface函数可能不兼容。

由于TensorFlow的自动转换功能,这个项目的TensorFlow实现似乎更为简单。此外,这个项目并不依赖MATLAB软件,而是使用了另一个计算库Matting Lapalacian Sparse Matrix.

1.依赖库:TensorFlow、Numpy、Pillow、Scipy、PYCUDA(仅在CUDA8.0上测试过平滑局部仿射的功能),建议使用Anaconda (注:python科学计算环境),这样仅需再安装TensorFlow和PYCUDA即可。可选装CUDA加速库,建议安装。

2.下载VGG-19模型权重

VGG-19模型的权重矩阵由TensorFlow版本的VGG模型微调得到,仅对类别接口进行了少量修改,VGG-19模型权重被存储为npy文件。下载后,将该权重文件复制到此目录下./project/vgg19。

使用方法:

1.  使用时你只需要给出目标图像路径(content image)、风格图像路径(style image)、目标图像分割路径(content image segmentation)和风格图像分割路径(style image segmentation),即可运行命令。

2. 其他选项。设置style_option的值,可得到三种不同的风格迁移方式。当style_option为0时,可得到分割后的中间结果,与Torch代码中neuralstyle_seg.lua文件相似;当style_option为1时,进一步使用这个中间结果生成最终结果,与Torch代码中deepmatting_seg.lua文件相似;当style_option为2时,将这两个步骤组合为一行命令,直接生成最终结果。

运行命令 python deep_photostyle.py -help 可查看所有选项。

3. 图像分割

这个项目不提供图像分割脚本的代码,仅能使用Torch版本的图像分割代码。这个项目的实现使用的掩码颜色与其相同。你也可以自己定义独特的分割模型和掩码颜色,来定制风格迁移系统。

转载于:https://www.cnblogs.com/abelsu/p/7364494.html

Deep Photo的TensorFlow版本相关推荐

  1. GitHub上大热的Deep Photo终于有TensorFlow版了!

    Prisma这个应用,你可能很熟悉.这是一个能将不同的绘画风格,迁移到照片中,形成不同艺术风格的图片. 今年4月,美国康奈尔大学和Adobe的一个研究团队Fujun Luan和Sylvain Pari ...

  2. Deep Photo Style Transfer

    深度卷积神经网络图像风格变换2017.4 Deep Photo Style Transfer 参考博客:https://blog.csdn.net/VictoriaW/article/details/ ...

  3. mvcnn代码详解_使用colab运行tensorflow版本的faster-rcnn

    ** 在colab下运行tensorflow版本的faster- rcnn ** 操作流程 操作过程我已经录成视频上传至B站,链接为 https://www.bilibili.com/video/BV ...

  4. 深度学习TensorFlow环境配置及遗留的问题(cudatoolkit版本,TensorFlow版本)(四)

    小白装Ubuntu20.04-系列记录(四) 目录 小白装Ubuntu20.04-系列记录(四) 虚拟环境创建 cudatoolkit安装 TensorFlow是否成功安装测试 运行时发现遗留问题 虚 ...

  5. 查看已安装tensorflow版本

    查看已安装tensorflow版本 2017年08月07日 20:40:23 imperfect00 阅读数 187297更多 个人分类: tensorflow学习笔记 版权声明:本文为博主原创文章, ...

  6. TensorFlow 版本 1.10.0 发布

    我们非常开心的跟大家分享一条新消息!TensorFlow 版本 1.10.0 已经正式发布啦!请阅读本文,及时了解一些主要特点和功能改进,以及一些突破性变化! ▌重大改变 TensorFlow 1.1 ...

  7. 深度摄影风格转换--Deep Photo Style Transfer

    Deep Photo Style Transfer https://arxiv.org/abs/1703.07511 Code: https://github.com/luanfujun/deep-p ...

  8. tensorflow2.0支持的python版本-TensorFlow 版本兼容性

    本文面向需要在不同版本的 TensorFlow 之间向后兼容(针对代码或者数据)的用户,以及想要修改 TensorFlow 并同时保持兼容性的开发者. 语义化版本控制 2.0 TensorFlow 的 ...

  9. tensorflow版本问题导致的错误AttributeError: module ‘tensorflow‘ has no attribute ‘***‘

    问题解决--AttributeError: module 'tensorflow' has no attribute 'placeholder' - yuanyuanWu11 - 博客园 tensor ...

最新文章

  1. bash魔法堂:History用法详解
  2. 指定一个开始日期和结束日期,算出中间的日期
  3. Python超详细的字符串用法大全
  4. 如何通过apk获得包名及Activiy 名称
  5. 龙书啃不动?老司机带你从零入门编译原理,开发编译器
  6. 动态规划——最小路径和(Leetcode 64)
  7. 外国谷歌服务器练中国无线,易观:中国无线搜索市场百度谷歌份额超50%
  8. python查询最高分_精通 Oracle+Python,第 1 部分:查询最佳应践
  9. java 注解scheduler_JAVA注解@Scheduled 不执行
  10. 2021年高压电工考试内容及高压电工考试报名
  11. 京津冀辽迎入汛以来最强降雨,四川盆地西部形成暴雨结界
  12. 让信息带钩的六种武器——《让创意更有黏性》优秀读后感4300字
  13. C++ 负数在内存中存储
  14. JMeter之Ramp-up Period(in seconds)说明
  15. html页面添加大于号,2.7 在 HTML5 页面中插入半角的大于号“ ” , 使用的标记符应该是( )...
  16. 苹果被曝重大系统漏洞:新款MacBook、iPhone 12统统波及,root权限秒被获取
  17. 光伏并网发电系统MATLAB Simulink仿真设计 该仿真包括电池,BOOST升压电路,单相全桥逆变电路
  18. 检测昵称是否含有敏感词汇
  19. 如何关闭win10防火墙_如何彻底关闭win10自带杀毒软件:windows defender?
  20. 将中国标准时间转化为yyyy-MM-dd 00:00:00格式

热门文章

  1. Android 简单音乐播放器开发
  2. 计算机可以存储人类记忆吗,神经科学:人类大脑是否100%在工作?人类记忆是否有极限?...
  3. windows7蓝牙怎么打开_windows7系统怎么调待机时间
  4. 盗取QQ密码的顽固的IEXPLORE.EXE病毒
  5. ffmpeg文档中文翻译
  6. APICloud实战--每日生鲜App
  7. [Java]利用jsoup爬取易查分
  8. C盘扩容,不需要相邻盘清空
  9. win7+VS2008 System.Runtime.InteropServices.COMException
  10. python ray定时_使用 Ray 用 15 行 Python 代码实现一个参数服务器