Stable-Hair 是一种基于扩散的新型发型转移方法,可以稳健地转移各种现实世界的发型。在各种具有挑战性的发型上实现了高度详细和高保真度的转移,效果令人印象深刻,同时保留了原始身份内容和结构。
相关链接
论文链接: https://arxiv.org/pdf/2407.14078
Github链接: https://xiaojiu-z.github.io/Stable-Hair.github.io/
论文阅读
Stable-Hair:通过扩散模型实现真实世界中的头发转移
摘要
目前的头发移植方法难以处理多样而复杂的发型,因此限制了它们在现实场景中的适用性。在本文中,我们提出了一种基于扩散的新型头发移植框架Stable-Hair,它可以将各种现实世界的发型稳健地移植到用户提供的脸上,以供虚拟试穿。为了实现这一目标,我们的 Stable-Hair 框架设计为两阶段管道。在第一阶段,我们训练秃头转换器和稳定扩散,以从用户提供的脸部图像中去除头发,从而得到秃头图像。在第二阶段,我们专门设计了三个模块:头发提取器、潜在身份网络和头发交叉注意层,以将目标发型以高度详细和高保真度移植到秃头图像中。具体来说,头发提取器经过训练,可以使用所需的发型对参考图像进行编码。为了保持源图像和迁移结果之间身份内容和背景的一致性,我们使用潜在身份网络对源图像进行编码。借助 U-Net 中的头发交叉注意层,我们可以准确而精确地将高度详细和高保真的发型转移到秃头图像中。大量实验表明,我们的方法在现有的头发转移方法中提供了最先进 (SOTA) 的结果。
背景
随着数字媒体和虚拟现实应用的日益普及,个性化虚拟化身和虚拟试穿系统已成为一个重要的研究领域。头发移植是该领域最具挑战性的任务之一。近年来,生成对抗网络 (GAN) 的进步推动了该领域的重大进展。然而,这些基于 GAN 的方法通常难以处理现实场景中遇到的多样而复杂的发型,这严重限制了它们在实际应用中的有效性。
方法
我们的 Stable-Hair 包含两个阶段,可实现高质量的头发转移。首先,将用户的输入源图像转换为秃头代理图像。此转换是使用预训练的稳定扩散 (SD) 模型与专门的秃头转换器结合完成的。在第二阶段,我们使用预训练的 SD 模型和头发提取器将参考头发转移到秃头代理图像上。头发提取器负责捕捉参考头发的复杂细节和特征。然后通过新添加的头发交叉注意层将这些特征注入 SD 模型。通过利用这两个阶段,我们的方法实现了高度详细和高保真的头发转移,产生自然且视觉上吸引人的效果。
在不同的设计方案中积累的色彩偏差。
合成训练数据:我们提出了一个自动化的数据生成管道来生成(原始图像,参考图像,秃顶代理图像)用于训练的三元组。该管道使用ChatGPT生成文本提示,使用stable Diffusion Inpainting模型生成参考图像,使用我们预训练的Bald转换器将原始图像转换为Bald代理图像。
效果展示
视觉比较
与其他方法相比,我们的方法实现了更精细和稳定的发型转换,而无需精确的面部对齐或明确的面具进行监督。
跨域传输
我们的方法非常稳健,能够跨不同领域转移发型,这是以前的方法无法实现的。这证明了我们的方法在发型转移领域取得了重大进展
更多结果
我们还提出了一系列额外的结果来证明我们的方法的稳健性和优越性。
结论
在本文中,我们介绍了 Stable-Hair,这是第一个使用扩散技术解决发型转换的框架。这种方法标志着一项重大进步,实现了以前无法实现的稳定且细粒度的真实世界发型转换。Stable-Hair 具有两阶段管道。第一阶段使用秃头转换器将源图像转换为秃头代理图像。第二阶段包括头发提取器、潜在身份网络和头发交叉注意层,以将目标发型准确地转移到秃头图像。头发提取器使用所需发型对参考图像进行编码,而潜在身份网络保留身份内容和背景一致性。U-Net 中的头发交叉注意层确保精确且高保真的发型转换。大量实验表明,Stable-Hair 实现了商业级发型转换能力,为该领域树立了新标准。