风格迁移
风格迁移算法原理图
风格迁移网络主要分为生成网络(左)及损失网络(右)。
生成网络:基本符合DCGAN的思路,下采样->残差网络->上采样
损失网络:利用训练好的卷积模型(VGG),提取图片特征。利用特征对比构建loss。
content loss:
![](https://i-blog.csdnimg.cn/blog_migrate/cf0a1cd9b81e62eab34818487acba811.png)
将内容图片与生成图片在指定层的特征提取图的平方误差作为内容损失。
style loss:
![](https://i-blog.csdnimg.cn/blog_migrate/467fc2dc36329bf1e4f3ea3051dfe15e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/04418394c08f74a0d1920bedfdc7c7c3.png)
总loss函数:
风格的度量是使用特征图不同通道之间的相关性来衡量的。指定几个layer层,风格图片与生成图片的度量的平方差构成风格损失。
其中是指VGG网络第j个layer的输出,如原理图所示。
实现过程:
- 训练阶段:选定一张风格的图片,训练过程中,将数据集中的图片输入到生成网络得到生成图片y,将生成的图片y分别与目标风格图片ys及目标内容图片yc做loss计算,根据损失调整生成网络的参数,逐步下降迭代最小化loss,来训练生成网络。
- 使用阶段:给定图片,将其输入到生成网络,得到输出风格转换的效果图。