LuminaBrush
两阶段AI扩散模型,通过涂鸦交互为任意图像重新打光,底层基于Flux
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
两阶段AI扩散模型,通过涂鸦交互为任意图像重新打光,底层基于Flux
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象你有一张人像照片,拍摄时光线太平淡,立体感全无;或者你想把白天拍的风景照改成"黄金时刻"的暖调夕阳。如果用传统 PS 手法,你需要精通图层蒙版、光影笔刷、光线叠加等多项技能,耗时数小时,且结果往往经不起细看——光影方向不对、边缘光晕不自然。
LuminaBrush 解决的就是这个问题:用 AI 模型 + 简笔画涂鸦,让你像专业灯光师一样,给任意照片重新打光。你只需要在图像上画几笔线条(scribble),标注"光源方向"和"光强",模型就能生成符合物理规律的打光结果,且保留原始图像的纹理细节和色彩。
LuminaBrush 的核心是一个两阶段(two-stage)扩散模型框架,底层基于 Stability AI 的 Flux 图像生成模型。这个设计值得深入剖析:
第一阶段:统一光照提取(Uniformly-Lit Appearance Extraction)
模型首先将任意输入图像转换为"均匀光照"版本——即假设图像由均匀分布的白色环境光照亮。这种"均匀光照版本"本质上是一个中间表征(intermediate representation),它移除了原始图像中的复杂光照干扰,保留了纹理、皮肤毛孔、毛发、衣物褶皱等细节。
为什么要做这一步?因为直接让 AI 从一张带复杂光照的照片上学习"如何打光"太难了——光照和纹理是纠缠在一起的,单阶段模型容易产生过锐的边界(overly sharp mesh boundaries)或过平的表面(overly flat surfaces)。用均匀光照版本作为中间层,将光照问题解耦,大幅降低了学习难度。
训练方法很有意思:团队先收集了一小批天然接近"均匀光照"的图像(比如实验室标准光源下的物体照),用 Flux LoRA 在这批数据上微调;然后合成大量随机法线图(normal maps),用这些法线对均匀光照图像做随机重打光(relighting),生成配对训练数据,最终训练出一个可以将任意图像转换为"均匀光照版本"的模型。
第二阶段:交互式光照绘制(Interactive Illumination Drawing)
拿到均匀光照版本后,用户可以通过涂鸦(scribble)指定光照方向、光强分布。模型在第一阶段建立的百万级"均匀光照↔原图"配对数据上训练,最终学会:给定均匀光照图像 + 用户涂鸦 → 重新打光后的逼真结果。
这个两阶段设计还带来了一个额外价值:第一阶段的"均匀光照提取"模型可以独立使用,效果上相当于一个"图像去光照/归一化"工具。团队也单独做了一个 HF Space lumina_brush_uniform_lit 供感兴趣的用户单独体验。
虽然 GitHub 仓库本身是"只读文档"性质(主要是 README 说明),但 LuminaBrush 提供了完整的 HuggingFace Gradio Web UI 供实际使用。界面流程非常直观:
HF Space 标注了"WIP"(Work in Progress),说明功能仍在快速迭代中。
| 指标 | 值 |
|---|---|
| 底层模型 | Flux(Stability AI) |
| 框架架构 | 两阶段扩散模型 |
| 部署方式 | HuggingFace Spaces(Gradio) |
| 硬件需求 | NVIDIA GPU(推荐 16GB+ VRAM) |
| 许可证 | 开源(MIT) |
| GitHub Stars | 776 |
LuminaBrush 目前处于 WIP 状态,HuggingFace Space 在 2025 年 5 月标注为"under maintenance"(维护中),说明产品化程度还不高。对于复杂场景(如半透明材质、多光源、强烈镜面反射),效果仍有提升空间。此外,Flux 模型的商业使用条款也需要使用者自行确认。
LuminaBrush 代表着 AI 图像处理的一个重要方向:不再只是生成图像,而是精确操控图像的物理属性——光影、材质、法线方向。这条路走下去,未来可能出现"一键将阴天照片变成阳光明媚的午后"、"将手机拍摄的照片转为影棚级光效"这样的工具。对专业摄影师、电商图片处理、游戏美术资产管线都有直接价值。
配合两阶段框架的解耦思路,也为后续更精细的图像编辑(如反射、折射、阴影投射)提供了可扩展的基础。