商业摄影的工作流程中非常重要的一项是「后期修图」,它工作量大、周期长,同时,培养一名「下笔如有神」的修图师往往需要付出高昂的人力和物力成本,即便是熟练的修图师也需要 1-3 个月的时间熟悉和适应不同影楼的修图风格和手法。除此之外,修图师的专业水平不同,审美差异、工作状态好坏等因素都会造成修图质量波动。
针对以上痛点,鉴于美图成立 12 年来在人物影像领域积累的技能优势,美图技能中枢——美图影像实验室(MTlab)推出美图云修人工智能修图解决计划。修图过程中,AI 技能在实现多场景的自适应识别调参,呈现完美光影成果的同时,还能够快速定位人像,建设人像瑕疵,实现人像的个性化修图。
图 1. 美图云修人像精修对比
接下来,本文将重点分析美图云修人工智能修图解决计划的技能细节。
智能中性灰技能
在修图中经常提到中性灰修图,也称 “加深减淡” 操作,通过画笔来改变局部的深浅,在 PS 中需要手动建立一个观察图层,用以凸显脸部瑕疵,如斑点、毛孔、痘印等,然后在观察图层中逐一选取瑕疵地区对原人脸对应瑕疵地区从事消灭,在此之后对肤色不均匀的地方抹匀,最大限度地保留皮肤质感,但不少情况下仍需借助磨皮方法让肤色均匀,但磨皮会丢失皮肤质感。对每张人像图的皮肤地区重复该过程,可谓耗时耗力。传统 PS 中性灰的修图过程如图 2 所示。
图 2. PS 中性灰修图图层(左:原图,中:观察组,右:图层)
美图云修的智能中性灰人像精修功能结合了自注意力模块和多标准特色聚合训练神经搜集,从事极致特色细节提取,智能中性灰精修计划使没有专业修图技能的人也可以对人像从事快速精修,在速度方面远超人工修图方式,并且保持了资深人工修图在成果上自然、精细的优点,在各种复杂场景都有较强的鲁棒性,极大地提升了人像后期处理的工作效率。如图 3 所示,为智能中性灰修图成果,无需手动操作,相比于目前各个 app 上的修图成果,如图 4 所示,有着更好的消灭瑕疵成果,并保留皮肤质感,不会有假面磨皮感。
图 3. 美图云修 AI 中性灰精修成果对比
图 4. 友商祛斑祛痘及磨皮成果(左:祛斑祛痘,右:磨皮)
AI 中性灰精修功能采用创新的深度学习结构,如图 5 所示,在搜集编码器到解码器的连接部分加入双重自注意力特色筛选模块和多标准特色聚合模块,让搜集可以学习丰富的多标准上下文特色信息,并对重要信息附加权重,让图象在高分辨率的细节得以保留,同时更好地建设问题肤质。
图 5. 智能中性灰精修搜集结构
双重自注意力特色筛选模块
双重自注意力特色筛选模块 [1] 是对特色图的空间映射和通道映射从事学习,分为鉴于位置的自注意力模块和鉴于通道的自注意力模块,最后通过整合两个模块的输出来得到更好的特色表达,如图 6 所示。
图 6. 双重自注意力模块结构
鉴于位置的自注意力模块用于获悉特色图中的任意两个像素的空间依赖,对于某个特殊的肤质特色,会被所有位置上的特色加权,并随着搜集训练而更新权重。任意两个具有相似肤质特色的位置可以相互贡献权重,由此模块通过学习能够筛选出肤质细节变化的位置特色。如图 6 左边蓝色地区所示,输出一个特色图 F∈ R^(H×W×C),首先对该特色图分别沿通道维度从事全局平均池化和全局最大池化,得到两个鉴于通道的描述并合并得到特色图 F_Channel ∈ R^(H×W×2)。再经过一个 7×7 的卷积层和 Sigmoid 激活函数,得到空间权重系数 M_S ∈ R^(H×W),可以由以下公式表示:
其中 σ 表示 Sigmoid 激活函数, Conv_7x7 表示 7×7 卷积, Cat[]表示通道合并。
最后,将空间权重系数 M_S 对特色图 F 从事重新校准,即两者相乘,就可以得到空间加权后的新肤质特色图。
鉴于通道的自注意力模块主要关注什么样的通道特色是有意义的,并把那些比较有意义的特色图通道通过加权从事突出体现。高层特色的通道都可以看作是特定于肤质细节信息的响应,通过学习通道之间的相互依赖关系,可以强调相互依赖的特色映射,从而丰富特定语义的特色表示。如图 6 右边红色地区所示,输出与鉴于位置的肤质细节筛选模块相同的特色图 F∈ R^(H×W×C),对该特色图沿空间维度从事全局平均池化,得到给予空间的描述特色图 F_Spatial ∈ R^(1×1×C),再把 F_Spatial 输出由两个 1×1 卷积层组成表示的多层感知机。为了减少参数开销,感知机隐层激活的尺寸设置为 R^(C/r×1×1),其中 r 是通道降比。这样第一层卷积层输出通道为 C/r,激活函数为 PReLU,第二层卷积层输出通道恢复为 C。
再经过 Sigmoid 激活函数,得到通道权重系数 M_C ∈ R^(C×1×1),由以下公式表示:
其中 σ 表示 Sigmoid 激活函数, Conv_C ∈ R^(C×C/r) 和 Conv_(C/r) ∈ R^(C/r×C) 表示感知机对应的两层, PReLU 表示感知机中间的线性修正单元激活函数。
相同地,将通道权重系数 M_S 和特色图 F 相乘,就可以得到通道加权后的新特色图。将空间加权特色图和通道加权特色图从事通道合并,经过一个 1×1 卷积后与输出自注意力模块前的特色图相加,就可以得到矫正后的最终特色图。
多标准特色聚合模块
多标准特色聚合模块 [2] 的作用是对特色感受野从事动态修正,不同标准的前后层特色图输出模块,通过整合并赋予各自的权重,最终将这些特色从事聚合,输出更为丰富的全局特色,这些特色带有来自多个标准的上下文信息。
如图 7 所示,以三个不同标准输出模块为例,模块先使用 1×1 卷积和 PReLU 将上层 L_1 和下层 L_3 的特色通道变换为和当前层 L_2 ∈ R^(H×W×C) 一致,再通过元素和的方式将特色聚合成 L_C=L_1+ L_2+ L_3,然后经过一个空间维度的全局平均池化得到鉴于通道的统计 S ∈ R^(1×1×C),之后为了降低计算量经过一个 C/r 的 1×1 卷积和 PReLU 激活函数,天生一个压缩的特色表示 Z∈ R^(1×1×r),r 与自注意力特色筛选模块一致。这里让 Z 经过与标准数量相同的平行卷积层,得到对应的特色描述向量 v_1、v_2 和 v_3, v_i ∈ R^(1×1×C)。将这些特色描述向量合并,再经过 Softmax 激活函数,得到各个标准特色通道的校订系数 s_1、s_2 和 s_3, s_i ∈ R^(1×1×C)。将特色通道系数与对应标准的特色图相乘后再从事聚合相加,得到最终的聚合特色 F_aggregation,表示为:
图 7. 多标准特色聚合模块结构
MTlab 所提出的 AI 中性灰精修计划通过设计有效的搜集结构以及流程,结合特殊的训练方法,能够便捷、精确地从事智能中性灰人像修图。首先,相较于磨皮等传统图象处理方法,本计划输出的智能修图结果精细、自然,能够最大程度地保留人像肤质细节,对于各类复杂场景都具有更好的鲁棒性;其次,相较于人工中性灰修图,本方法能够保证稳定的修图成果,同时极大缩短处理时间,从而提升影楼图象后期处理的效率。
智能调色技能
常见修图所涉及的调色技能主要包括去雾,光照调整和背景增强等,其中光照调整涉及过曝建设和欠曝增强。其中,去雾主要用于保持图象的清晰度和对比度,使图象从视觉感观上不会存在明显雾感;曝光主要用于改善图象的光影成果,保证成像光影质量,使得相片能够呈现完美光影成果;而智能白平衡则是能够还原图象的真实色彩,保证图象最终成像不受复杂光源影响。调色涉及的技能较多,此处以白平衡智能调整技能为例,详细介绍 AI 技能调色流程。
目前常用白平衡算法从事色偏校订,存在以下难点:
1.传统白平衡算法虽然能够校订色偏,但是鲁棒性不足,无法应对实际需求中的复杂场景,往往需要设置不同的参数从事调整,操作繁琐。
2.目前主流的色偏校订计划大多数是鉴于卷积神经搜集,而常规的卷积神经搜集结构并不能彻底校订色偏,这些计划对于与低色温光源相近的颜色,比如木头的颜色,会存在将其误判为低色温光源的现象。
3.大多数数码相机提供了在图象菜鸡过程中调整白平衡设置的选项。但是,一旦选择了白平衡设置并且 ISP 将图象完全处理为最终的 sRGB 编码,就很难在不访问 RAW 图象的情况下执行 WB 编辑,如果白平衡设置错误,此问题将变得更加困难,从而导致最终 sRGB 图象中出现强烈的偏色。
美图影像实验室 MTlab 自主研发了一套专门能够适应多场景复杂光源下的智能调色技能。传统白平衡算法的核心是通过实时统计信息,比照传感器的先验信息,计算出当前场景的光源,通过传感器先验信息做白平衡,这种方法仍然有很多局限。MTlab 提出的智能白平衡计划(AWBGAN),依靠海量场景的无色偏真实数据,能够实现自适应的光源估计,完成端到端的一站式调色服务。AWBGAN 满足以下 2 个特点:
1.全面性:多场景多光源,涵盖常见场景从事多样化处理
2.鲁棒性:不会存在场景以及光源误判问题,色偏校订后不会造成二次色偏
当前的主流算法主要是集中在 sRGB 颜色域上从事色偏校订,但是这样处理并不合理。因为相机传感器在获取原始的 RAW 图象再到最终输出 sRGB 图象,中间经过一系列的线性以及非线性映射处理,例如曝光校订,白平衡以及去噪等处理流程。ISP 渲染从白平衡过程开始,该过程用于消除场景照明的偏色。然后,ISP 从事了一系列的非线性颜色处理,以增强最终 sRGB 图象的视觉质量。由于 ISP 的非线性渲染,使用不正确的白平衡渲染的 sRGB 图象无法轻松校订。为此 MTlab 设计了 AWBGAN 训练学习搜集来完成色偏校订。
针对一张待校订色偏的图象,首先需要使用已经训练好的场景分类模型从事场景判定,获得校订系数,该校订系数将会用于 AWBGAN 的校订结果,能在校订结果的基础上从事动态调整。对于高分辨率图象如果直接从事色偏校订处理,耗时高。为了提高计算效率,MTlab 会将待校订色偏图象采样到一定标准再从事校订操作,最后再将结果使用金字塔操作逆向回原图尺寸。完整的校订流程如图 8 所示。
图 8. 色偏校订计划整体流程
天生搜集的设计
上文中提到在 sRGB 图象上直接从事处理并没有在 Raw 图上处理成果好,因此天生器采用类 U-Net 搜集结构模拟 sRGB 到 RAW 再转换回 sRGB 的非线性映射过程,其中编码器将 sRGB 逆向还原回 RAW 图并从事 RAW 图上的色偏校订,在完成正确的白平衡设置后,解码器从事解码,天生使用了正确白平衡设置的 sRGB 图象。整个 G 搜集的目的不是将图象重新渲染会原始的 sRGB 图,而是在 RAW 上使用正确的白平衡设置天生无色偏图象。鉴于直接使用原始的 U-Net 搜集天生的图象会存在色彩不均匀的问题,G 搜集参考 U-Net 以及自主研发的计划做了一些调整:
1.在编码器与解码器之间加入另外一个分支,使用均值池化代替全连接搜集提取图象的全局特色从而解决天生图象存在色块和颜色过度不均匀的问题;
2.使用 range scaling layer 代替 residuals,也就是逐个元素相乘,而不是相加,学习范围缩放层(而不是残差)对于感知图象增强成果非常好;
3.为了减少天生图象的棋盘格伪影,将解码器中的反卷积层替换为一个双线性上采样层和一个卷积层。
天生搜集结构如图 9 所示,提取全局特色的搜集分支具体结构如图 10 所示。
图 9. 天生搜集结构图
图 10. 全局分支搜集结构
判别器设计
为了能够获得更加逼近真实结果的图象,此处采用了对抗性损失来最小化实际光分布和输出正态光分布之间的距离。但是一个图象级的鉴别器往往不能处理空间变化的图象,例如输出图象是在室内复杂光源场景下获取的,受到室内光源漫反射的影响,每个地区需要校订的程度不同,那么单独使用全局图象判别器往往无法提供所需的自适应能力。
为了自适应地校订局部地区色偏,MTlab 采用文献[4]EnlightenGAN 中的 D 搜集。该结构使用 PatchGAN 从事真假鉴别。判别器包含全局以及局部两个分支,全局分支判断校订图象的真实性,局部分支从输出图象随机剪裁 5 个 patch 从事判别,改善局部色偏校订成果。D 搜集的输出图象与 target 图象,都会从 RGB 颜色域转换成 LAB 颜色域,Lab 是鉴于人对颜色的感觉来设计的,而且与设备无关,能够,使用 Lab 从事判别能够获得相对稳定的成果。全局 – 局部判别器搜集结构如图 11 所示。
图 11. 全局 – 局部判别器
Loss 函数的设计包括 L1 loss, MS-SSIM loss, VGG loss, color loss and GAN loss。其中 L1 loss 保证图象的色彩亮度的真实性;MS-SSIM loss 使得天生图象不会丢失细节,保留结构性信息,VGG loss 限制图象感知相似性;color loss 分别将增强搜集得到 image 与 target 先从事高斯模糊,也就是去掉部分的边缘细节纹理部分,剩下的能作为比较的就是对比度以及颜色;GAN loss 确保图象更加真实。这五个 loss 相加就构成了 AWBGAN 的损失函数。
最终色偏校订计划的校订成果如图 12 所示。
图 12. 美图云修智能白平衡结果。(左:色温 6500K 情况,中:色温 2850K 情况,右:校订后图象)
智能消灭技能
修图师在修图过程中,会消灭一些皮肤本身固有的瑕疵,如皱褶、黑眼圈、泪沟等。对于人工智能的后期人像修图来说,皱褶检测有着重要的现实意义:一方面有助于皮肤衰老度的分析,揭示皱褶发生的地区和严重程度,成为评估肤龄的依据;另一方面,则能为图象中的自动化人脸祛皱带来更便捷的体验,即在后期修图的过程中,用户可以利用算法自动快速定位皱褶地区,从而告别繁复的手工液化摸匀的过程。
1. 皱褶识别
在科研领域中,常用的皱褶检测算法主要有以下几种:
1.鉴于一般边缘检测的方法:比如常见的 Canny 算子、Laplace 算子、DoG 算子,但这些算子所检出的边缘实质上是图象中两个灰度值有一定差异的平坦地区之间的分界处,而不是皱褶的凹陷处,故不利于检出具有一定宽度的皱褶;
2.鉴于纹理提取的方法:有以文献 [5] 的 Hybrid Hessian Filter(HHF)以及文献 [6] 的 Hessian Line Tracking (HLT)为代表的,鉴于图象 Hessian 矩阵的特色值做滤波的方法,可用来提取图象中的线性结构;也有以文献 [7] 的 Gabor Filter Bank 为代表的,利用在提取线性纹理的 Gabor 滤波的方法。这些方法需要手工设计滤波器,带来了额外的调参代价,而且通常只能检测线状的抬头纹和眼周纹,对于沟状的法令纹的兼容较差,检测结果也容易受到其他皮肤纹理或非皮肤物体的影响;
3.鉴于 3D 扫描的方法:如文献 [8] 提出的利用 3D 点云的深度信息映射到 2D 图象的分析方法,但该方法依赖于额外的采集设备,在算法的普适性上较弱。
在自动化人脸祛皱的需求引领下,为了摆脱传统皱褶检测算法的限制,美图影像实验室 MTlab 自主研发了一套全脸 (含脖子) 皱褶检测技能。该技能在覆盖全年龄段的真实人脸皱褶数据的驱动之下,发挥了深度学习表征能力强和兼容性高的优势,实现了端到端的抬头纹、框周纹、法令纹和颈纹的精准分割,成为了自动化祛皱算法的关键一环。
由于抬头纹、框周纹、法令纹和颈纹这四类皱褶的类内模式相似性较高而类间模式相似较低,MTlab 采用零件化的思想,将全脸皱褶检测任务分解成四个互相独立的子任务,分别对上述的四类皱褶从事检测。在四类皱褶的人脸地区定位上, MTlab 的人脸语义关键点检测技能发挥了重要作用。在不同拍摄场景以及人脸姿态下,该技能都能正确划分额头、眼周、脸颊和颈部区,从而为皱褶检测任务提供了稳定可靠的输出来源。MTlab 还利用眼周和脸颊地区的左右对称性,在进一步减少搜集输出尺寸的同时,也让搜集在模式学习上变得更简单。
图 13. 皱褶检测搜集结构图
类 U-Net 的搜集结构在图象特色编码和高低层语义信息融合上有着先天的优势,故受到许多分割任务的青睐。鉴于皱褶检测本质也是分割任务,MTlab 也在 U-Net 的基础上从事搜集设计,并做了以下调整:
1.保留了编码器浅层的高分辨率特色图,并将其与解码器相同标准的特色图从事信息融合:有助于引导解码器定位皱褶在图象中的位置,提升了宽度较细的皱褶检出率;
2.将解码器中的反卷积层替换为一个双线性上采样层和一个卷积层:避免分割结果的格状边缘效应,让搜集输出的结果更贴合皱褶的原始形状。
皱褶检测的 loss 需要能起到真正监督的作用,为此总体的 loss 由两部分组合而成:Binary Cross Entropy Loss 以及 SSIM Loss。Binary Cross Entropy Loss 是分割任务的常用 loss,主要帮助搜集区分前景像素和背景像素;SSIM Loss 则更关注搜集分割结果与 GT 的结构相似性,有助于搜集学习一个更准确的皱褶形态。
2. 皱褶自动消灭
皱褶消灭主要是鉴于图片补全实现,将皱褶部分作为图片中的待建设地区,借助图片补全技能重新填充对应像素。目前,图片补全技能包含传统方法和深度学习两大类:
1.传统图片补全技能,这类方法无需数据训练,包括鉴于图片块 (patch)[9,11] 和鉴于像素 [2] 这两类补全方法。这两类方法的基本思想是根据一定的规则逐步的对图象中的受损地区从事填充。此类方法速度快,但需要人工划定待建设地区,适用于小范围的图象建设,受损地区跨度较大时容易出现模糊和填充不自然的情况。
2.鉴于深度学习的 Inpainting 技能 [12,13,14,15],这类方法需收集大量的图片数据从事训练。基本思想是在完整的图片上通过矩形(或不规则图形) 模拟受损地区,以此训练深度学习模型。现有方法的缺陷在于所用数据集及假定的受损地区与实际应用差异较大,应用过程易出现皱褶无法建设或是纹理不清,填充不自然的情况。
鉴于影楼用户对于智能修图的迫切需求,美图影像实验室 MTlab 自主研发了一套能够适应复杂场景的的皱褶消灭计划。MTlab 提出的智能皱褶消灭计划,依靠海量场景的真实数据,在识别皱褶线的基础上借助 Inpainting 的深度学习搜集予以消除,提供端到端的一键式消灭皱褶,使其具备以下 2 个成果:
1.一致性:填充地区纹理连续,与周围皮肤衔接自然。
2.鲁棒性:受外部环境影响小,成果稳定。
MTlab 针对该问题收集的海量数据集能够涵盖日常生活场景中的多数场景光源,赋能模型训练最大驱动力,保障模型的性能,较好的解决了上述问题,并成功落地于应用场景。
针对现有计划存在的缺陷,MTlab 根据皱褶的特点设计了皱褶消灭模型(WrinkleNet)。将原始图片和皱褶 mask 同时送入消灭模型,即可以快速的完成消灭,并且保持了资深人工修图在成果上自然、精细的优点,在各种复杂场景都有较强的鲁棒性,不仅对脸部皱褶有效,同时也可用于其他皮肤地区(如颈部)的皱褶消灭,其核心流程如图 14 所示。
图 14. 祛皱核心流程
数据集制作:
如前所述,数据集会极大的影响深度学习模型的最终成果,目前主流的图象补全模型多采用开源数据集,使用矩形或不规则图形模拟图象中待补全的地区。针对皱褶消灭任务这么做是不合理的。一方皮肤地区在颜色和纹理上较图片其他地区差异较大,另一方面皱褶多为弧形细线条,其形状不同于已有的补齐模式(矩形、不规则图形),这也是导致现有模型成果不够理想的原因之一。因此,在数据集的准备上,MTlab 不仅收集了海量数据,对其皱褶从事标注,同时采用更贴近皱褶纹理的线状图形模拟待填充地区。
天生搜集设计:
天生搜集鉴于 Unet 设计,鉴于直接使用原始的 U-Net 搜集天生的图象会存在纹理衔接不自然,纹理不清的问题,因此对其结构做了一些调整。1)解码的其输出为 4 通道,其中一个通道为 texture 回归,用于预测补齐后的图片纹理;2)在 Unet 的 concat 支路加入了多特色融合注意力模块(简称 FFA)结构,FFA 的结构如图 15 所示,该结构旨在通过多层特色融合注意力模块,如图 16 所示,提高模型对细节纹理的关注度。
图 15. 天生搜集结构图
图 16. 多特色融合注意力模块
Loss 设计:
Loss 函数的设计包括 L1-loss, L2-loss, VGG-loss,以及 GAN-loss。其中 L1-loss 度量输出图象与真实图象间的像素距离;L2-Loss 用于度量输出纹理与真实纹理间的差异;VGG loss 限制图象感知相似性;GAN loss 采用 PatchGAN 结构,确保图象更加真实。这四个 loss 相加就构成了 WrinklNet 的损失函数。
最终脸部和脖子的祛皱成果分别如图 17 和图 18 所示。
图 17. 美图云修脸部祛皱成果
图 18. 美图云修脖子祛皱成果
智能建设技能
在现实生活中,龅牙、缺牙、牙缝、牙齿畸形等等问题会让用户在拍照时不敢做过多如大笑等露出牙齿的表情,对拍摄成果有一定影响。美图云修鉴于 MTlab 自主研发的一个鉴于深度学习技能的搜集架构,提出了全新的牙齿建设算法,可以对用户各类不美观的牙齿从事建设,天生整齐、美观的牙齿,建设成果如图 19 所示。
图 19. 美图云修牙齿建设成果
MTAITeeth 牙齿建设计划:
要将牙齿建设算法真正落地到产品层面需要保证以下两个方面的成果:
1.真实性,天生的牙齿不仅要美观整齐,同时也要保证天生牙齿的立体度和光泽感,使其看起来更为自然。
2.鲁棒性,不仅要对大多数常规表情(如微笑)下的牙齿做建设和美化,同时也要保证算法能够适应某些夸张表情(如大笑、龇牙等)。
MTlab 提出的 MTAITeeth 牙齿建设算法,较好地解决了上述两个问题,并率先将技能落地到实际产品中,其核心流程如图 20 所示。
图 20. AITeeth 牙齿建设计划流程图
图中所展示的流程主要包括: G 搜集模块和训练 Loss 模块,该计划的完整工作流程如下:
1.通过 MTlab 自主研发的人脸关键点检测算法检测出人脸点,根据人脸点判断是否有张嘴;
2.若判定为张嘴,则裁剪出嘴巴地区并旋转至水平,再根据人脸点计算出嘴唇 mask、牙齿地区 mask 以及整个嘴巴地区(包括嘴唇和牙齿)的 mask;
3.根据嘴巴地区的 mask 得到搜集输出图①,根据牙齿地区和嘴唇地区的 mask,分别计算对应地区的均值,得到搜集输出图②,两个输出图均为 3 通道;
4.G 搜集有两个分支,训练时,将图①和图②输出 G 搜集的第一个分支,再从数据集中随机挑选一张参考图(搜集输出图③)输出 G 搜集的第二个分支,得到搜集输出的结果图,根据结果图和目标图计算 Perceptual loss、Gan loss、 L1 loss 以及 L2 loss,上述几个 loss 控制整个搜集的学习和优化;
5.实际使用时,将裁剪好的嘴巴地区的图从事步骤 3 中的预处理,并输出训练好的 G 搜集,就可以得到搜集输出的结果图,结合图象融合算法将原图和结果图从事融合,确保结果更加真实自然,并逆回到原始尺寸的原图中,即完成全部算法过程。
GAN 搜集的构建:
对于计划中的整个搜集结构,以及 perceptual loss、L1 loss、L2 loss 和 Gan loss,计划参考了论文 EdgeConnect[16]中的搜集结构并结合自有计划从事了调整。仅用搜集输出图①和搜集输出图②训练搜集模型,会造成天生的牙齿并不美观甚至不符合常规,为了使搜集模型可以天生既美观又符合常规逻辑的牙齿,本计划构建了一个双分支输出的全卷积搜集,第二个分支输出的是一张牙齿的「参考图」,训练时,该参考图是从训练数据集中随机选择的,参考图可以对搜集天生符合标准的牙齿起到正向引导的作用:
第一个分支为 6 通道输出,输出为图①和图②的 concat,并归一化到(-1,1)区间;
第二个分支为 3 通道输出,输出图象是在构建的训练数据集中随机挑选的“参考图”,同样归一化到(-1,1)区间;
G 搜集是本质上是一个 AutoEncoder 的结构,解码部分的上采样采用的是双线性上采样 + 卷积层的结合,与论文中 [16] 有所不同,为了减轻天生图象的 artifacts 和稳定训练过程,本计划中的归一化层统一都采用 GroupNorm,而搜集最后一层的输出层激活函数为 Tanh。
判别搜集部分:判别搜集采用的是 multi_scale 的 Discriminator,分别判别不同分辨率下的真假图象。本计划采用 3 个标准的判别器,判别的是 256×256,128×128,64×64 三个标准下的图象。获得不同分辨率的图象,直接通过 Pooling 下采样即可。
Loss 函数的设计包括 L1 loss, L2 loss, Perceptual loss 和 GAN loss。其中 L1 loss 和 L2 loss 可以保证图象色彩的一致性;GAN loss 使得天生图象的细节更加真实,也使得天生的牙齿更加清晰、自然、更加具有立体度和光影信息;Perceptual loss 限制图象感知的相似性,以往的 VGG loss 往往会造成颜色失真与假性噪声的问题,本计划采用的是更加符合人类视觉感知系统的 lpips(Learned Perceptual Image Patch Similarity) loss[17],很大程度上缓解了上述问题,使天生图象具有更加自然的视觉成果;上述这几个 loss 相加就构成了 MTAITeeth 计划的损失函数。
结语
影楼修图涉及众多技能,除了上述提到的特色修图功能外,还包括人脸检测、年龄检测、性别识别、五官分割、皮肤分割、人像分割、实例分割等相对成熟的技能,可见成熟的 AI 技能能够替代影楼修图费时费力且重复度高的流程,大幅节省人工修图时间,节省修图成本。在智能调色、智能中性灰、智能消灭、智能建设等 AI 技能的加持下,提高修图质量,解决手工修图存在的问题。AI 自动定位脸部瑕疵、暗沉、黑头等,在不磨皮的情况下予以消灭,实现肤色均匀,增强细节清晰度;识别皱褶、黑眼圈、泪沟等皮肤固有的缺陷,在保持纹理细节和过渡自然的前提下予以消灭;针对用户的牙齿、双下巴等影响美观的缺陷,采用 AI 技能从事自然建设,达到美观和谐的成果。
凭借在计算机视觉、深度学习、增强现实、云计算等领域的算法研究、工程开发和产品化落地的多年技能积累,MTlab 推出的的美图云修人工智能修图解决计划能为影像行业注入更多的活力,为商业摄影提供低成本、高品质、高效率的的后期修图服务。
参考文献:
[1] CBAM: Convolutional block attention module, Woo, S., Park, J., Lee, J.Y., So Kweon, ECCV (2018).
[2] Learning Enriched Features for Real Image Restoration and Enhancement, Syed Waqas Zamir, Aditya Arora, Salman Khan, Munawar Hayat, Fahad Shahbaz Khan, Ming-Hsuan Yang, and Ling Shao, ECCV (2020).
[3] Huang, Jie , et al. "Range Scaling Global U-Net for Perceptual Image Enhancement on Mobile Devices." European Conference on Computer Vision Springer, Cham, 2018.
[4] Jiang Y , Gong X , Liu D , et al. EnlightenGAN: Deep Light Enhancement without Paired Supervision[J]. 2019.
[5] Ng, Choon-Ching, et al. "Automatic wrinkle detection using hybrid hessian filter." Asian Conference on Computer Vision. Springer, Cham, 2014.
[6] Ng, Choon-Ching, et al. "Wrinkle detection using hessian line tracking." Ieee Access 3 (2015): 1079-1088.
[7] Batool, Nazre, and Rama Chellappa. "Fast detection of facial wrinkles based on Gabor features using image morphology and geometric constraints." Pattern Recognition 48.3 (2015): 642-658.
[8] Decencière, Etienne, et al. "A 2.5 d approach to skin wrinkles segmentation." Image Analysis & Stereology 38.1 (2019): 75-81.
[9] Criminisi A , P P , Toyama K . Region filling and object removal by exemplar-based image inpainting[J]. IEEE Transactions on Image Processing, 2004, 13.
[10] Telea A. An image inpainting technique based on the fast marching method[J]. Journal of graphics tools, 2004, 9(1): 23-34.
[11] Pérez P, Gangnet M, Blake A. Poisson image editing[M]//ACM SIGGRAPH 2003 Papers. 2003: 313-318.
[12] Pathak D, Krahenbuhl P, Donahue J, et al. Context encoders: Feature learning by inpainting[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2016: 2536-2544.
[13] Yeh R A, Chen C, Yian Lim T, et al. Semantic image inpainting with deep generative models[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2017: 5485-5493.
[14] Liu G, Reda F A, Shih K J, et al. Image inpainting for irregular holes using partial convolutions[C]//Proceedings of the European Conference on Computer Vision (ECCV). 2018: 85-100.
[15] Hong X, Xiong P, Ji R, et al. Deep fusion network for image completion[C]//Proceedings of the 27th ACM International Conference on Multimedia. 2019: 2033-2042.
[16 EdgeConnect: Structure Guided Image Inpainting using Edge Prediction, Nazeri, Kamyar and Ng, Eric and Joseph, Tony and Qureshi, Faisal and Ebrahimi, Mehran, The IEEE International Conference on Computer Vision (ICCV) Workshops}, Oct, 2019.
[17] The Unreasonable Effectiveness of Deep Features as a Perceptual Metric, Richard Zhang, Phillip Isola, Alexei A. Efros, Eli Shechtman, Oliver Wang. In CVPR, 2018.
Powered by Froala Editor