SynthLight: Portrait Relighting with Diffusion Model by Learning to Re-render Synthetic Faces
作者: Sumit Chaturvedi, Mengwei Ren, Yannick Hold-Geoffroy, Jingyuan Liu, Julie Dorsey, Zhixin Shu
分类: cs.CV, cs.GR
发布日期: 2025-01-16
备注: 27 pages, 25 figures, Project Page https://vrroom.github.io/synthlight/
🔗 代码/项目: PROJECT_PAGE
💡 一句话要点
SynthLight:通过学习重渲染合成人脸,利用扩散模型实现人像光照重打
🎯 匹配领域: 支柱四:生成式动作 (Generative Motion)
关键词: 人像光照重打 扩散模型 重渲染 合成数据 多任务学习 无分类器指导 图像生成
📋 核心要点
- 现有光照重打方法难以在保留身份信息的同时,生成逼真且多样化的光照效果,尤其是在处理真实世界图像时。
- SynthLight将光照重打视为重渲染问题,通过学习合成人脸在不同光照下的渲染结果,来指导真实人像的光照调整。
- 该方法通过多任务训练和无分类器指导的扩散采样,有效弥合了合成数据和真实数据之间的差距,提升了光照效果的真实性和细节保留。
📝 摘要(中文)
本文提出了一种用于人像光照重打的扩散模型SynthLight。该方法将图像光照重打视为一个重渲染问题,其中像素根据环境光照条件的变化进行转换。利用基于物理的渲染引擎,我们合成了一个数据集,通过在不同光照下使用3D头部模型来模拟这种光照条件下的转换。我们提出了两种训练和推理策略来弥合合成图像和真实图像域之间的差距:(1)利用没有光照标签的真实人像进行多任务训练;(2)一种基于无分类器指导的推理时扩散采样程序,利用输入人像来更好地保留细节。我们的方法可以推广到各种真实的摄影作品,并产生逼真的光照效果,包括镜面高光和投射阴影,同时保留了主体的身份。我们在光照舞台数据上的定量实验表明,结果与最先进的光照重打方法相当。我们在真实图像上的定性结果展示了丰富且前所未有的光照效果。
🔬 方法详解
问题定义:论文旨在解决人像光照重打问题,即在给定一张人像图像和目标光照条件的情况下,生成具有目标光照效果的人像图像。现有方法通常难以生成逼真的光照效果,尤其是在处理真实世界的图像时,并且容易丢失人像的身份信息。
核心思路:论文的核心思路是将光照重打问题视为一个重渲染问题。通过使用3D人脸模型在不同的光照条件下进行渲染,生成大量的合成数据,然后训练一个扩散模型来学习这种光照条件下的像素转换。这样,模型就可以根据输入图像和目标光照条件,重新渲染人像,从而实现光照重打。
技术框架:SynthLight的整体框架包括以下几个主要模块:1) 合成数据生成模块:使用3D人脸模型和基于物理的渲染引擎,生成大量带有光照标签的合成人脸图像。2) 多任务训练模块:使用合成数据和真实人脸图像(没有光照标签)进行多任务训练,以提高模型的泛化能力。3) 扩散模型:使用扩散模型来学习光照条件下的像素转换。4) 推理模块:使用无分类器指导的扩散采样,根据输入图像和目标光照条件,生成具有目标光照效果的人像图像。
关键创新:论文的关键创新在于:1) 将光照重打问题视为一个重渲染问题,并使用合成数据进行训练。2) 提出了多任务训练策略,利用真实人脸图像来提高模型的泛化能力。3) 使用无分类器指导的扩散采样,更好地保留了人像的细节信息。
关键设计:在训练过程中,使用了L1损失函数和感知损失函数来保证生成图像的质量。在推理过程中,使用了无分类器指导的扩散采样,通过调整指导强度来控制生成图像的光照效果和细节保留程度。网络结构基于U-Net,并针对光照重打任务进行了优化。
🖼️ 关键图片
📊 实验亮点
实验结果表明,SynthLight在光照重打任务上取得了与最先进方法相当的性能。在Light Stage数据集上的定量实验表明,SynthLight能够生成准确的光照效果。在真实图像上的定性实验表明,SynthLight能够生成逼真的光照效果,包括镜面高光和投射阴影,同时保留了人像的身份信息。与现有方法相比,SynthLight能够生成更丰富和更自然的光照效果。
🎯 应用场景
SynthLight可应用于人像编辑、虚拟现实、游戏开发等领域。例如,用户可以使用该技术在人像照片中调整光照效果,使其更具艺术感。在虚拟现实和游戏开发中,可以利用该技术为虚拟角色添加逼真的光照效果,提高沉浸感。该研究的未来影响在于推动了基于AI的光照编辑技术的发展,使得光照控制更加便捷和智能化。
📄 摘要(原文)
We introduce SynthLight, a diffusion model for portrait relighting. Our approach frames image relighting as a re-rendering problem, where pixels are transformed in response to changes in environmental lighting conditions. Using a physically-based rendering engine, we synthesize a dataset to simulate this lighting-conditioned transformation with 3D head assets under varying lighting. We propose two training and inference strategies to bridge the gap between the synthetic and real image domains: (1) multi-task training that takes advantage of real human portraits without lighting labels; (2) an inference time diffusion sampling procedure based on classifier-free guidance that leverages the input portrait to better preserve details. Our method generalizes to diverse real photographs and produces realistic illumination effects, including specular highlights and cast shadows, while preserving the subject's identity. Our quantitative experiments on Light Stage data demonstrate results comparable to state-of-the-art relighting methods. Our qualitative results on in-the-wild images showcase rich and unprecedented illumination effects. Project Page: \url{https://vrroom.github.io/synthlight/}