这篇论文的目的,如下图所示。把我们的图变成梵高的风格,厉害了~
传统图像风格迁移的过程是:分析图像风格(比如说梵高的星空这种蓝黄圈圈的这种,之前的论文都是把风格使用纹理来表达),然后对风格(也就是纹理)建立一个数学或者统计模型,根据这个建立好的模型对我们输入的图片(上面的A图)进行调整。一样可以实现风格的转移。但一个很大的缺点:一个模型只能适用于某一种风格或者某一个场景。所以对于不同的风格图,你得建立很多不同的模型。复杂的要死。。。我们想要的是一个模型可以得到不同的风格化的图片。
论文一开始提到,就可以初步看出作者提出的方法框架,在艺术界,艺术家们拥有一种能够创造独一无二的艺术作品的技能,他能够把一张真实世界的图片内容与一种图片的风格通过复杂的方式巧妙地融合。所以,在我们技术界,科技帝们首先将真实世界的内容表示出来,并且把图片的风格表示出来这篇论文的框架就是这样咯。
讲到神经网络,我比较喜欢从损失函数作为开头讲,所以后面会讲公式了啊,我回尽量把每个公式都描述清楚~小伙伴们忍住,真的不难。
首先说白了,损失函数就是告诉大家,我这个模型是想要什么样的结果。那么针对与这篇论文,我们最终的目的是得到具有风格图纹理特征的原图。上面我们提到了,这个网络框架分为了两部分,我们最终想要的风格化后的图片——在内容上与原图最接近,——在风格上与风格图最近。如何表示内容上与原图近?如何表示风格上与风格图近?
现在我们得到了内容F图和风格G图,那么结合这两部分就可以生成风格化的图片了。使用两个权重参数来权衡内容和风格。
作者通过实验发现,高层的风格特征粗粒度,符合风格的纹理。低层的内容更加细致,保留图片内容。如下图所示。
实验分析
三个实验
**内容风格的loss权重之比
**layer 选择
**初始化方法选择
接下来看下:为什么不同feature map之间内积可以获得纹理信息:可视化的方法;实验运行
首先,纹理有个特点,与位置无关,Gram矩阵是能够表示这种性质的一种。Gram矩阵的每个值可以说是代表i通道的feature map与j通道的feature map的互相关程度。
内积之后得到的多尺度矩阵中,对角线元素提供了不同feature map(a1,a2 … ,an)各自自身内积的信息,其余元素提供了不同特征图之间的相关信息。大致的过程就是使自己的特征越来越突出,从对角线上元素简单理解,原来值大的,平方后,值变得更大。