IC-Light是一款用于操纵图像照明效果的开源项目,全称为“Imposing Consistent Light”。它当前提供两类模型:文本条件重照明模型和背景条件模型,两种模型都需要以前景图像作为输入。
功能特点:
-
文本条件模型: 用户可以输入文本提示词(如“左侧光线”、“日光”),模型通过这些提示词和初始潜变量生成具有特定光照方向和特征的图像。
例如用户输入提示词“阳光从窗口射入、温馨氛围、卧室”,并选择光照方向“左侧”。模型将生成具有左侧光照效果的图像,模拟阳光从左侧窗户射入的温暖氛围。
-
背景条件模型: 通过结合背景提示信息,可以对前景物体进行不同风格的光照变化,而无需复杂的提示词。
只需提供简单的描述,如“电影般的灯光”,即可轻松生成图像。模型根据提示和背景生成适当光照的前景图像,使人物与背景的光照匹配,呈现电影风格。
-
一致的照明: 利用HDR(高动态范围)图像中光线传播的独立性,使不同光源的混合效果与混合光源产生的效果一致。该方法通过在模型训练期间引入MLP(多层感知器)来实现一致的光照,使模型能够产生具有高度一致性的重照明效果。
例如:用户选择多个不同的光照方向(如左侧光、右侧光、底部光),模型将产生一致的光照效果,甚至可以合并生成法线图。这表明模型通过潜变量空间实现了不同光源的混合效果。
-
潜变量空间训练:通过潜变量空间的训练,模型能学习到不同光照的映射关系,实现重照明效果的一致性。利用这种一致性特性,甚至可以将不同重照明效果合并成法线图。
技术原理
-
光线独立性:
- 在HDR(高动态范围)空间中,光线传输彼此独立,不同光源的混合效果与多光源同时出现的效果是相同的。
- 这一特性使得不同光源组合的图像外观与多光源直接作用下的外观在数学上(理想的HDR空间)是一致的。
-
一致性建模:
- 项目中使用多层感知机(MLP)在潜在空间中确保不同光源的组合和传输具有一致性。
- 在训练模型时,通过确保光照一致性来指导生成效果,产生高度一致的重新光照结果。
-
模型结果:
- 由于模型使用潜在扩散技术,可以在潜在空间内实现学习和重光照操作,从而在各种光照条件下产生高度一致的效果。
- 这些结果非常一致,甚至可以将不同光照条件下的结果合并为法线图,尽管模型在训练时没有直接使用法线图数据。
- 图像输出包括输入图像、模型输出的重光照效果、分离的阴影图像以及合并的法线图。
-
一致性实验:
- 实验中展示的“appearance mixture”(外观混合)和“light source mixture”(光源混合)的图像在HDR空间内应该是一致的。
- 项目通过潜在空间的一致性,确保模型输出在不同光源组合下具有一致性,从而可以稳定地合成各种光照效果。
GitHub:https://github.com/lllyasviel/IC-Light
在线体验:https://huggingface.co/spaces/lllyasviel/IC-Light
案例展示:
文本条件模型:
Prompt: toy, detailed face, shadow from window
提示:玩具,详细的面部,窗户投射的阴影Lighting Preference: Bottom
灯光偏好:底部
Prompt: beautiful woman, detailed face, sunshine, outdoor, warm atmosphere
提示:美丽的女人,细致的面孔,阳光,户外,温暖的氛围Lighting Preference: Right
灯光偏好:右
Prompt: beautiful woman, detailed face, sunshine, outdoor, warm atmosphere
提示:美丽的女人,细致的面孔,阳光,户外,温暖的氛围Lighting Preference: Left
照明偏好:左
Prompt: beautiful woman, detailed face, sunshine from window
提示:美丽的女人,细致的脸庞,窗外的阳光Lighting Preference: Right
灯光偏好:右
Prompt: beautiful woman, detailed face, light and shadow
提示:美丽的女人,细致的面孔,光影Lighting Preference: Left
照明偏好:左
Prompt: (beautiful woman, detailed face, soft studio lighting)
(美丽的女人,细致的脸庞,柔和的工作室灯光)
背景条件模型:
The background conditioned model does not require careful prompting. One can just use simple prompts like “handsome man, cinematic lighting”.
背景条件模型不需要仔细提示。可以简单地使用诸如“英俊男子,电影般的灯光”之类的提示。
一种更有结构的可视化: