风格迁移综述

风格迁移综述风格迁移综述 0 引言 1 基于图像迭代的风格迁移方法 1 1 基于最大均值差异的风格迁移 1 2 基于马尔科夫随机场的风格迁移 限制条件较多 有时视觉效果不是很好 1 3 基于深度图像类比的风格迁移 2 基于模型迭代的风格迁移算法 2 1 基于生成模型的风格迁移 2 2 基于图像重构解码器的风格迁移 3 应用举例 4 未来研究方向 5 参考文献推荐论文 Y Jing Y Yang Z Feng J Ye Y YuandM Song NeuralStyleT AReview

推荐论文:Y. Jing, Y. Yang, Z. Feng, J. Ye, Y. Yu and M. Song, “Neural Style Transfer: A Review,” in IEEE Transactions on Visualization and Computer Graphics, vol. 26, no. 11, pp. 3365-3385, 1 Nov. 2020, doi: 10.1109/TVCG.2019..

0 引言

图像风格迁移是一种用不同风格渲染图像语义内容的图像处理方法。传统非参数的风格迁移方法只能通过提取图像的低层次特征(色彩、纹理等)来进行纹理合成,无法提取图像高层的特征。近年来,随着深度神经网络在其它视觉感知领域(例如物体与人脸识别)的广泛应用,其在风格迁移领域也具有良好的表现。神经网络具有良好的特征提取能力,能够提取到丰富的语义信息,而这些信息正是风格迁移的基础。

尽管传统非参数方法取得了一定的效果,但它们都存在局限性:它们只提取了目标图像的低级特征。理想情况下,风格迁移算法应该可以提取到目标图像的语义特征并做出符合语义内容的风格迁移。将自然图像的内容与风格分离是一个巨大的难题。然而近年来发展迅速的深度卷积神经网络提供了一个强大的计算机视觉系统,能够从自然图像中有效提取高层的语义信息。

深度学习的图像风格迁移方法主要包括基于图像迭代基于模型迭代两种[5]。图像迭代是直接在白噪声图像上进行优化迭代实现风格迁移,其优化目标是图像;模型迭代的优化目标则是神经网络模型,以网络前馈的方式实现风格迁移。
图像风格迁移与图像分类过程对比

1 基于图像迭代的风格迁移方法

基于图像迭代的风格迁移算法主要有基于最大均值差异、基于马尔科夫随机场、基于深度图像类比三类。具有合成图像质量高、可控性好、易于调参、无需训练网络、计算时间长、对预训练模型依赖性大等特点。

1.1 基于最大均值差异的风格迁移

1.2 基于马尔科夫随机场的风格迁移

dCNN的池化层压缩图像信息时,损失了大量的信息。Gatys等人使用了VGG网络中的滤波金字塔作为图像的高层表征。但是不同卷积层只能捕获图像每个像素之间的联系,而缺少空间分布上的联系。基于以上问题,Li等人提出了结合马尔科夫随机场和卷积神经网络的模型[10],将Gatys模型中的Gram矩阵匹配替换为马尔科夫正则化模型。马尔可夫模型描述了具有同类特征信息的集合,因此将CNN图像特征映射分割成许多区域块并进行匹配,可以提高合成图像在视觉上的合理性。

该方法为基于图像迭代的风格迁移提供了一个有趣的拓展,但同时也存在很多局限性:(1)对于输入图像有很强的限制:风格图像必须能够被马尔可夫重构。例如,具有较强透射结构的图片不适用于本方法。 (2)结果图相较于原图会产生边缘模糊的缺点。这是因为网络训练过程中图像的损失。

1.3 基于深度图像类比的风格迁移

2 基于模型迭代的风格迁移算法

虽然基于图像迭代的方法可以产生效果出色的风格合成图像,但是存在效率低下的问题。而基于模型迭代的图像风格迁移方法通过大量数据训练生成模型,基于模型迭代的风格迁移算法主要有基于生成模型的风格迁移和基于图像重构解码器的风格迁移两种。

2.1 基于生成模型的风格迁移

2.2 基于图像重构解码器的风格迁移

基于图像迭代存在着参数调整和效率低下两个弊端,而快速风格迁移虽然缓解了效率低下的问题,但只能针对特定风格进行模型训练,并且仍然无法避免参数调整的问题。为了克服这些问题,Li 等人提出了一种基于图像重构解码器的风格迁移算法[15],使得网络可以不经过重复训练而对任意风格进行迁移。该算法的主要创新点如下:

  1. 通过特征迁移(例如:whitening and coloring),直接将内容特征数据匹配到风格图像的深层特征空间。
  2. 将特征变换与预先训练的一般编解码器网络相结合,使迁移过程可以通过简单的前馈操作来实现。
    在这里插入图片描述

3 应用举例

  1. 艺术审美效果/移植到app;
  2. 由卫星照片生成地图(地图绘制);
  3. 由黑白图像生成彩色图像;
  4. 生成字体
  5. 由手绘图片生成真实照片(嫌犯画像绘制);
  6. 由低分辨率图片生成高分辨率图片(超分辨率重建);

4 未来研究方向

  1. 改进网络结构,提高时效性(作为移动终端应用);
  2. 迁移学习理论的完善(数学层面),解释各卷积层内风格和内容特征的联系;
  3. 针对目标图像/风格进行改进(文字、头像、水墨画等);
  4. 人脸图像迁移的优化(增加准确度);
  5. 针对特定的区域进行改进(地理图像中的植被、河流、居民区等);
  6. 保留景深的风格迁移
  7. 预处理和后处理的方法(语义分割Mask特定对象;人机交互;平滑、融合处理等)。

5 参考文献

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/231511.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • rapidxml操作XML

    rapidxml操作XML主要对上一篇文章做了修改,文章涉及创建、读取和修改XML文件,内容比较齐全,可以供大家学习。创建xml文件:基本步骤:给文件分配节点xmlDoc.allocate_node(node_element,”seqs”,NULL);把分配好的节点添加到文件中xmlDoc.append_node(seqsNode)。对于节点属性,先分配节点xml_node<>*seqsNode=xmlDoc

    2022年7月17日
    18
  • Android开发环境配置

    Android开发环境配置本文是Android开发环境的搭建教程,最近用到了Android开发,对环境搭建做个总结。1、安装JDK首先去官网下载JDK。JavaSeSdk下载地址:https://www.oracle.com/java/technologies/javase-downloads.html选择Windows版本。下载完成后,直接双击安装,使用默认路径C:\ProgramFiles\Java\jdk-17.0.2即可。然后配置环境变量。然后,运行CMD,输入java-version。如上图,看到

    2022年7月23日
    10
  • XSS漏洞介绍及反射型XSS

    XSS漏洞介绍及反射型XSS什么是XSS攻击:XSS是一种经常出现在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。比如这些代码包括HTML代码和客户端脚本。攻击者利用XSS漏洞旁路掉访问控制–例如同源策略(sameoriginpolicy)。这种类型的漏洞由于被黑客用来编写危害性更大的网络钓鱼(Phishing)攻击而变得广为人知。XSS分类:类型A,本地利用漏洞,这种漏…

    2022年5月6日
    40
  • 原生js添加元素

    原生js添加元素今天做页面使用的mui,因为使用mui情况下无法使用jquery,于是在ajax请求完毕添加元素的时候发现自己竟然对原生js添加元素的方法有点模糊了,真是越活越倒退了,赶紧整理一波。首先最简单的innerHTML,这个不想多说,入门新手喜欢这么用,但他的缺点也很明显:不管你渲染部分还是全部,始终需要替换原先所有的子元素,也就是需要重复渲染,会增加浏览器压力。接下来就是正题了,js推荐是这样…

    2022年6月22日
    71
  • pycharm卸载不了_pycharm卸载pymysql

    pycharm卸载不了_pycharm卸载pymysql本菜鸡入坑python不久。今日被lda折磨,某个动机下想要卸载lda,知识不够,后碰巧用pipunstalllda命令实现。注:本菜鸡安装时用的pipinstalllda方法。又是酸爽的填坑跳坑挖坑的一顿操作→_→。。…

    2022年8月29日
    3
  • python win32api.shellexecute_socket send函数

    python win32api.shellexecute_socket send函数记事本的主窗口中还有一个窗口,您需要向它发送消息。您可以使用MicrosoftSpy++工具查看此“隐藏”窗口,也可以获取所有子窗口,如下所示:defcallback(hwnd,hwnds):ifwin32gui.IsWindowVisible(hwnd)andwin32gui.IsWindowEnabled(hwnd):hwnds[win32gui.GetClassName(hwnd…

    2022年10月11日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号