创新
现有的图像翻译不支持全分辨率,作者提出了跨域图像的全分辨率对应学习。
其使用分层级策略,粗粒度(低分辨率)级别对应关系指导细粒度级别对应关系,PatchMatch使用相邻层级匹配关系,使得一致性计算更加高效;
ConvGRU模块用于优化当前对应关系,不仅考虑更大分辨率下的匹配,还考虑历史估计;
PatchMatch直接应用存在以下三个问题:
1、对应关系随机初始化,PatchMatch不够高效;
2、早期训练阶段,对应关系混乱,梯度反向传播存在错误,导致特征学习困难;
3、PatchMatch在进行聚合时,没有考虑更多上下文信息,拟合时间变长;
要解决这些问题:
1、作者使用层级策略,充分利用粗糙层级匹配关系引导子层级学习,因此有一个好的初始化;
2、使用ConvGRU精细化每个PatchMatch迭代中对应关系;
3、分层级的GRU支持PatchMatch模块是可微的,使用无监督方式学习跨域对应关系;
算法
CoCosNet v2流程如图2,分为以下三步:
1、对、提取特征;
2、从低分辨率到高分辨率,创建对应关系,低分辨率对应关系作为下一级分辨率下对应关系初始化结果,扭曲,得到,使其对应于;
3、各个分辨率下扭曲后的结果传递至翻译网路,生成最终结果;
CoCosNet v2包括以下三部分:Multi-level domain alignment、Hierarchical GRU-assisted PatchMatch、Translation network。
Multi-level domain alignment
作者使用U-Net进行多层级特征提取,如式1、2,作者使用U-Net是因为其skip connections结构使得丰富的上下文信息传递至更高分辨率。
其中,f表示不同分辨率下的特征;
Hierarchical GRU-assisted PatchMatch
之前工作CoCosNet由于内存及速度限制,没法应用于大分辨率,因此作者提出Hierarchical GRU-assisted PatchMatch;
1、低分辨率下对应关系作为高分辨率下初始化,公式化如式3,
其中,为的最邻近区域,比如:对于特征图中特征点,表示特征中最近邻的top-K个位置,如式4;
但是这种方案直接用于大分辨率耗时长,因此作者引入GRU-assisted PatchMatch。
2、GRU-assisted PatchMatch流程如图3,
GRU-assisted PatchMatch分为两步:
step1:propagation,图3左侧,如式5,使用PatchMatch获取最邻近区域;
step2:GRU-based refinement,图3右侧,如式6。
其中,表示进行次迭代,为,concat结果,其中分别表示当前偏移量以及匹配关系置信度,如式7,
经过两个卷积层,得到偏移量,最终对应关系图更新为
扭曲图像由式8获得,
ConvGRU优点如下:
1、引入卷积后,增大感受野,对应关系具有全局性,且收敛速度加快;
2、GRU记录历史对应关系估计,使得下一次迭代更易预测;
3、反向梯度可传播至任意像素,而非特定位置;
Translation network
翻译网络流程:
1、拼接warp images,拼接前进行上采样;
2、通过两个卷积层映射为参数和,用于控制风格;
3、如式9,对每层输入进行归一化;
翻译网络整体过程如式10,
其中,为噪声输入。
损失函数
与语义特征对齐,但是在不同域,比如关键点图及其对应原图;样本对数据易获取,而样本对难以获取,作者通过几何变换生成伪样本,为另一姿态自然图。CoCosNet目的:输入得到
损失函数如下:
1、域对齐损失,如式11,使得关键点图与对应自然图特征相近,
2、一致性损失,如式12,其在各个分辨率上进行计算,使得趋近于,
3、映射损失,如式13、14,使得潜在特征可映射到对应目标域,
4、翻译损失
translation网络期望输出与目标域一致;
翻译损失包括:
感知损失,如式15,仅选取最高分辨率层;
外观损失,如式16,其中CX表示上下文损失;
5、对抗损失,如式17,18
总体损失函数如式19;
实验
在数据集Deepfashion,MetFaces,ADE20K上实验结果如图4,分别进行骨骼关键点->姿态图片,轮廓->人脸图片,语义分割->自然图像,
分辨率消融实验结果如表4,GRU-assisted消融实验结果如表5,
综上所述
作者提出的CoCosNet v2可应用于大分辨率,粗粒度到细粒度分层级进行对应关系迭代学习,优化对应关系匹配策略,使用GRU-based PatchMatch。
但是这种方法对数据的要求比较高,需要同一个人的多个pose map;
文章出处登录后可见!