本文对风格转换(style transfer)进行概述。
简介
什么是图像风格化(Neural Style Transfer)?
图像风格化是将一张照片渲染成有艺术风格的画作。图像风格化算法的输入有二,分别是内容图和风格图,输出有一个,为风格迁移后的结果图。
上面这张表示图像风格化算法将输入的一张长城的照片作为内容图,将富春山居图作为风格图,将长城的内容保留,风格替换成中国山水画的风格,创作出一张新的艺术作品。
问题
如何对风格图中的风格特征进行建模和提取?
纹理可以用图像局部特征的统计模型来描述。风格可以看成一种纹理,这部分可以借鉴纹理建模方法的相关研究
成功把风格图中的风格抽出来后,如何和内容混合然后还原成一个相应的风格化结果呢?
图像重建
下图是图像风格化算法的起源和基石
算法
如上所说,图像风格化迁移算法=纹理建模算法+图像重建算法
到目前为止,这些算法可以按照如下规则分类
基于在线图像优化的慢速图像风格化迁移算法(Slow Neural Method Based On Online Image Optimisation)
基于统计分布的参数化慢速风格化迁移算法(Parametric Slow Neural Method with Summary Statistics)
通过名字就可以看出,这一类风格化算法是由基于在线图像优化的慢速图像重建方法和基于统计分布的参数化纹理建模方法结合而来。
图像风格化迁移这一领域的祖师爷 Gatys的开山大作就是属于这一类方法的。
其中,对于纹理建模,Gram矩阵是最常用的损失函数
基于MRF的非参数化慢速风格化迁移算法(Non-parametric Slow Neural Method with MRFs)
提出了一个取代 Gram 损失的新的 MRF 损失。思路与传统的 MRF 非参数化纹理建模方法相似,即先将风格图和重建风格化结果图分成若干 patch,然后对于每个重建结果图中的 patch,去寻找并逼近与其最接近的风格 patch。
基于离线模型优化的快速图像风格化迁移算法(Fast Neural Method Based On Offline Model Optimisation)
前面介绍的都是用慢速图像重建方法对风格化结果进行重建的,所以速度肯定是比较慢的,而且很吃资源,在工业界落地的成本肯定是很高的。
所以另外一个大的图像风格化迁移算法分支——快速图像风格化迁移算法主要解决速度问题,核心思想就是利用基于离线模型优化的快速图像重建方法对风格化结果进行重建,基预先训练前向网络来解决计算量大、速度慢的问题。
根据一个训练好的前向网络能够学习到多少个风格作为分类依据,我们将快速图像风格化迁移算法分为单模型单风格(PSPM)、单模型多风格(MSPM)和单模型任意风格(ASPM)的快速风格化迁移算法。
不同快速风格化方法所需时间对比图:
单模型单风格的快速风格化迁移算法(Per-Style-Per-Model Fast Neural Method,PSPM)
针对每一个风格图,我们去训练一个特定(style specific)的前向模型,这样当测试的时候,我们只需要向前向模型扔进去一张内容图,就可以前向出一个风格化结果了。
这一类算法(简称PSPM)其实可以再分成两类:
(1)一类是基于统计分布的参数化快速风格化PSPM算法
(2)基于MRF的非参数化PSPM算法。
基于残差网络的设计能更好地最小化风格化损失函数。
单模型多风格的快速风格化迁移算法(Multiple-Style-Per-Model Fast Neural Method,MSPM)
把多个风格整合到一个模型中,理论上是合理的。比如咱们就说中国山水画,有很多著名山水画作品,但不同山水画虽然风格不尽相同,但是还是有很多相似的地方的(相似特征),所以对每一幅山水画训练得到的网络之间理论上是有共享的部分的。
沿着这个思路想,我们发掘出不同风格网络之间共享的部分,然后对于新的风格只去改变其有差别的部分,共享的部分保持不变。
基于此思想,有以下工作:
Google Brain :在训练好的一个风格化网络基础上,只通过在 Instance Norlization 层上做一个仿射变换(他们起了个名字叫 Conditional Instance Normalization,简称 CIN)
陈冬冬 :StyleBank: An Explicit Representation for Neural Image Style Transfer
Amazon AI 的 张航 :在 2017 年 3 月提出 Multi-style Generative Network for Real-time Transfer:只用一个网络,把通过 VGG 网络提取到的风格特征与风格化网络中的多个尺度的中间层的 feature map 通过提出的 Inspiration Layer 结合在一起,相当于将风格特征作为信号输入到网络中来决定要风格化成哪一个风格。
浙大李一君:Diversified Texture Synthesis With Feed-Forward Networks。除了把风格特征作为信号外,另一个选择是把图像像素作为信号输入进去风格化网络。 李一君学长首先将每一张风格图与一个随机产生的噪声图进行绑定,然后将噪声图与风格化网络中间层的 feature map 进行 concat,作为网络进行风格选择的信号。
单模型任意风格的快速风格化迁移算法(Arbitrary-Style-Per-Model Fast Neural Method,ASPM)
Zero-shot Fast Style Transfer,即来一个新风格不需要训练,我们就可以很快速地把风格化结果输出来(这里我们称之为单模型任意风格,简称ASPM)。
多伦多大学的 Tian Qi Chen(不是 UW 的明星博士生陈天奇):Fast Patch-based Style Transfer of Arbitrary Style。这个算法是基于 patch 的,可以归到基于 MRF 的非参数化 ASPM 算法。在 CNN 特征空间中,找到与内容 patch 匹配的风格 patch 后,进行内容 patch 与风格 patch 的交换(Style Swap),之后用快速图像重建算法的思想对交换得到的 feature map 进行快速重建。但由于 style swap 需要一定的时间开销,没有达到实时。
康奈尔的大牛 @Xun Huang : Arbitrary Style Transfer in Real-time with Adaptive Instance Normalization。其工作主要受到 MSPM 的 CIN 层启发,提出一个 Adaptive Instance Normalization (AdaIN)。AdaIN 的输入是通过 VGG 提取的风格和内容特征,用数据驱动的方式,通过在大规模风格和内容图上进行训练,让 AdaIN 能够直接将图像中的内容 normalise 成不同的风格。
Google Brain :Exploring the Structure of a Real-time, Arbitrary Neural Artistic Stylization Network,数据驱动。
李一君: Universal Style Transfer via Feature Transforms。用一种不需要学习训练的方式(style learning-free),而是单纯使用一系列特征变换来进行 ASPM 风格迁移。