v1:随机初始化一张结果图像,同时计算内容损失和风格损失 (比较耗时)
V2:快速图像风格迁移的原理(需要先对风格图像进行特征处理,且风格固定,每一个风格图像得训练一个模型)
前面两部分可以参考网上别人的详细讲解!!!
V3:任意风格转换
- Encoder用 f 表示,把图像进行特征提取
- Decoder用 g 表示,把特征图像转成图片
- t = AdaIN
- 内容损失:
-
- g(t) 表示经Decoder解码出来的图片,f(g(t)) 就是对结果图像进行特征的提取
- 风格损失
- g(t) 表示经Decoder解码出来的图片,s表示风格图像的特征。那么我们的结果图像中的std和mean肯定变了,所以我们的损失函数是要让结果图像的std和mean 与风格图像的std和mean 尽量接近
- (其中
表示卷积的层数, 在AdaIN中,我们风格的std和mean可以随便换成任意一张风格图像的std和mean,所以也就实现了任意风格的转换)
AdaIN原理介绍:
- x 是内容的特征图(经过CNN卷积提取到的)
- y 是风格特征图
- 我们把 x 特征分布拉到 y 的特征分布,所以就相当于在特征空间中进行了风格转换
归一化可以参考:https://blog.csdn.net/qq_37982109/article/details/105194229