多款刘海生成效果图
其次是高清图像细节的生成问题
要么头发太假,要么像是用座机拍出来的糊图。
由于头发部位拥有复杂的纹理细节,通过CNN难以生成真实且达到理想状态的发丝。
其中,在有配对数据的情况下,虽然可以通过设计类似Pixel2PixelHD、U2-Net等网络进行监督学习,但目前通过该方式生成的图像清晰度仍然非常有限。
而在非配对数据情况下,一般通过类似HiSD、StarGAN、CycleGAN的方式进行属性转换生成,利用该方式生成的图片不仅清晰度不佳,还存在目标效果生成不稳定、生成效果不真实等问题。
真实的头发数据没有,自己造“假”又太假,针对上述情况, MT Lab基于庞大的数据资源与突出的模型设计能力,借助StyleGAN解决了头发生成任务所面临的配对数据生成与高清图像细节两大核心问题。
3 基于StyleGAN的头发编辑方案
StyleGAN作为当前生成领域的主要方向(Gan生成式对抗网络),是一种基于风格输入的无监督高清图像生成模型。能够基于7万张1024*1024的高清人脸图像训练数据FFHQ,通过精巧的网络设计与训练技巧生成清晰逼真的图像效果。
基于StyleGAN生成的图片
此外,StyleGAN还能基于风格输入的方式拥有属性编辑的能力,通过隐变量的编辑,实现图像语意内容的修改。
具体有三步:配对数据生成(生发)——配对数据增益(控制发量)——image-to-image生成(高清)。
1.配对数据生成
StyleGAN生成配对数据最为直接的方式就是在w 空间直接进行相关属性的隐向量编辑,生成相关属性。其中隐向量编辑方法包括GanSpace、InterFaceGAN以及StyleSpace等等。
但这种图像生成方式通常隐含着属性向量不解耦的情况,即在生成目标属性的同时往往伴随其他属性(背景和人脸信息等)产生变化。
因此,MT Lab结合StyleGAN Projector、PULSE及Mask-Guided Discovery等迭代重建方式来解决生成头发配对数据的问题。该方案的主要思路是通过简略编辑原始图片,获得一张粗简的目标属性参考图像,将其与原始图像都作为参考图像,再通过StyleGAN进行迭代重建。
以为头发染浅色发色为例,需要先对原始图片中的头发区域染上统一的浅色色块,经由降采样获得粗略编辑简图作为目标属性参考图像,在StyleGAN的迭代重建过程中,生成图片在高分辨率尺度下与原始图片进行相似性监督,以保证头发区域以外的原始信息不发生改变。
另一方面,生成图片通过降采样与目标属性参考图像进行监督,以保生成的浅色发色区域与原始图片的头发区域一致,二者迭代在监督平衡下生成期望中的图像,与此同时也获得了一个人有无浅色头发的配对数据。
值得强调的是,在该方案执行过程中既要保证生成图片的目标属性与参考图像一致,也要保证生成图像在目标属性区域外与原始图片信息保持一致;还需要保证生成图像的隐向量处于StyleGAN的隐向量分布中,才能够确保最终的生成图像是高清图像。
染浅色头发 StyleGAN 迭代重建示意图
此外,基于该方案的思路,在头发生成领域还可以获取到发际线调整的配对数据、刘海生成的配对数据以及头发蓬松的配对数据。
但是想用补发功能,前提得还没毛光光。不然基于头发原本颜色的补色,系统一律按肤色计算了。
不同肤色做出来的发色不一致(左图为冲浪达人阿怡视频中的网红爷爷)
2.配对数据增益
基于迭代重建,还能够获得配对数据所对应的StyleGAN隐向量,通过隐向量插值的方式还能实现数据增益,进而获得足够数量的配对数据。
以发际线调整的配对数据为例,在每一组配对数据间,可以通过插值获得发际线不同程度调整的配对数据。同样的,两组配对数据间也可以通过隐向量插值获得更多配对数据。
此外,通过插值获得的配对数据也能够生成新的配对数据,基于此可以满足对理想的发际线调整配对数据的需求。