AI 图片阴影方向不对:5 类原因 + 5 步修光路径

阴影方向和光源对着干,或两个光源互相打架。根因是模型把光照线索做了平均。用显式方向和参考图锁住。

你写 sunlight from the left, long shadow falling right,结果模型确实把太阳放在左边——但阴影也朝左拉。或者你要一束强主光,模型却塞给你两束方向相反的同等强度边缘光。眼睛会立刻识别出这种错,看着就是”哪里不对”,只是说不出来。原因是模型把训练集里的光照线索做了平均:大量照片用的是柔和多向的影棚光,所以”单向强光”在统计上反而是少数派。

修法是用专业摄影术语显式说清方向,如果 Prompt 锁不住,就用 IP-Adapter 或 Midjourney --sref 喂一张参考图。

常见原因

按命中率从高到低:

1. 光照方向描述含糊

bright lightingdramatic lightingcinematic lighting 都是没方向的词。模型没有锚点就只能取平均——平均下来就是”正面柔光箱”或”环境日光”。

如何判断:扫一遍 Prompt 看有没有方向词。如果没有 from the leftkey light upper rightbacklit 之类,就是没方向。

2. Prompt 里有互相矛盾的光照线索

你写 sunset lighting from behind, golden hour glow 然后又加 studio lighting, soft fill。这俩打架,模型会挑训练集里更常见的那个(一般是影棚)。

如何判断:搜 Prompt 里有没有两个不同的光照描述词。sunsetstudio 同时出现就是冲突。

3. 没用物理摄影词汇

模型对摄影术语反应很好:Rembrandt lightingloop lightingsplit lightingrim light from camera left45-degree backlight。光用日常英语,模型根本定位不到光源位置。

如何判断:Prompt 里没有任何摄影教科书级的布光词。

4. 多个光源没分主次

key light, fill light, rim light 平铺写出来,模型就给你三盏一样亮的灯,看着不自然。真实摄影只有一盏主光,其余都是辅助。

如何判断:Prompt 里有 2+ 光源但没说相对强度。

5. 模型本身有强烈的默认布光倾向

Flux dev 默认柔和正面光;SDXL 默认阴天平光;Midjourney v6+ 默认电影感但常常变形。你不重度引导,它就出默认。

如何判断:同 Prompt 在两个模型上跑都出现类似的光照错误——说明模型默认在作祟。

最短修复路径

Step 1:显式说方向 + 强调单一主光

把模糊的光照词换成具体方向 + 强度:

hard key light from upper-left at 45 degrees, single light source,
soft ambient fill 1/4 strength, shadows fall down and to the right,
long cast shadow, dramatic contrast, no rim light

single light source 这句是关键——告诉模型只能选一个方向。

Step 2:用摄影教科书的布光名

这些词在训练集里被重度标注过:

# 经典命名布光
Rembrandt lighting(暗侧脸颊的三角形光斑)
loop lighting(鼻影小、勾向嘴角)
split lighting(半张脸亮、半张脸暗)
butterfly lighting(主光在相机正上方)
rim lighting from behind, separating subject from background

直接扔一个进 Prompt,比你自己描述几何关系靠谱。

Step 3:参考图锁布光

Prompt 锁不住时上参考图:

  • Midjourney--sref [一张有目标布光的照片 URL] --sw 100
  • SDXL / Flux:IP-Adapter,style_weight=0.7,参考图用单向光的干净照片
  • ComfyUI:IP-Adapter Plus,权重 0.65,weight type 选 “style transfer”

参考图必须是单光源很明显的图,不能再放多光源混乱的图。黑白经典人像往往是最干净的参考,因为没有色彩噪音干扰布光读数。

Step 4:负向 Prompt 拦住”打架”(仅 SD 系)

如果一直出现双光源,负向 Prompt 里加:

multiple light sources, two key lights, ring light, softbox lighting,
flat lighting, ambient overhead light, conflicting shadows,
shadows going in different directions

权重保持常规,超 1.3 会变形。

Step 5:先出布光图,再叠主体

商业活儿对阴影方向有硬要求时:

  1. 先用单向硬光生成一张只表达几何关系的灰调”布光研究”图
  2. 把它作为 ControlNet 的 depthnormal 参考
  3. 再用真实主体 Prompt + ControlNet 权重 0.8 重新生成

这样布光决策和主体决策就分离开来了。

预防建议

  • 维护一份”5-10 个已知好用的布光方向短语”清单(Rembrandt45 degree key 等)
  • 想要单向光时永远加上 single light sourcedominant key light
  • IP-Adapter / --sref 库里常备 2-3 张方向干净的参考照片
  • 先出小图缩略图核对布光,再去跑高分辨率
  • 看缩略图时眯眼检查阴影方向,对不上立刻在 Prompt 层修,别留到后期

相关阅读

标签: #ai-image #排查 #lighting #ip-adapter