AI 视频中途颜色跳变:6 类原因 + 修复路径

同一镜头里色调突然变冷或偏红?模型在帧间重新猜色温——必须显式写 Kelvin 数值,后期再用 LUT 或 Shot Match 统一。

你生成一段 5 秒的人走在公园的片段。第 1 秒是暖色下午光,第 3 秒变成蓝紫黄昏,第 5 秒又回暖。镜头没换地点,人物也没走过不同光线——纯粹是模型在逐帧重新猜色温,结果像坏掉的自动白平衡。

最快修复: 在 Prompt 里加一个显式 Kelvin 数值,再加一句”不要漂移”的指令(例如 consistent color grading, fixed white balance 5500K daylight, no color shift),然后在剪辑软件里套一个统一 LUT,或者跑一次 Shot Match,让整段落在同一套调色上。光是钉住 Kelvin 就能去掉大部分抖动,后期那一步再把残留的漂移清掉。

这是视频模型已知的失败模式。不像图像模型一旦定下颜色就稳定,视频模型逐帧更新颜色信息,小漂会累积。截至 2026 年 6 月,Sora 2、Veo 3.1、Kling 3.0、Runway Gen-4 上都还会出现——片段越长伪影累积越多,所以在长片段的后半段最明显(大致超过 8-10 秒,此时模型积累的状态最多、可漂的余地也最大)。

你属于哪一类?

症状最可能原因跳到
Prompt 没有 K / 没有白平衡词没指定固定白平衡原因 1、Step 1
多个灯光词(sunsetgoldenafternoon光源描述模糊原因 2、Step 1
2+ 光源,没指定主光没有主光源原因 3、Step 2
Prompt 让人物在室内外/不同房间移动跨多环境原因 4
风格名如 Wong Kar-waidream sequence风格本身玩颜色原因 5、Step 3
短段没事,长段就漂片段太长原因 6、Step 5

常见原因

按命中率从高到低。

1. 没指定固定白平衡

不写 5500K 或类似的,模型就把白平衡当自由参数任其漂,每帧的”最优猜”略有不同。

如何判断:Prompt 里没有 K(Kelvin)数值或显式白平衡指令。

2. 光源描述模糊或多变

warm afternoon light, glowing sunset, magic hour

这三个词色温略有不同,模型就为不同帧挑不同的。

如何判断:多个灯光词暗示不同色温(afternoonsunsetgolden)。

3. 多光源但没指定主光

室内灯 + 窗光 + 街灯——模型每帧有 3 个颜色源可挑,下不了决心。

如何判断:Prompt 有 2+ 光源但没指定哪个是主光。

4. 场景描述跨多个环境

woman walks from a sunlit garden into a shadowed hallway, then outside to a snowy field

你说了光会变,模型在正确地变色。但如果你要的是单一一致的场景,这条 Prompt 就过界了。

如何判断:Prompt 描述了跨环境的运动——挑一个环境。

5. 风格锚点本身就玩颜色漂移

Wong Kar-wai styleIn the Mood for Lovedream sequencelynchian——这些都暗示色彩实验电影,模型会尊重这个观感。

如何判断:风格词暗示色彩玩法。

6. 片段太长导致色彩不稳

和人物漂一样,长段色彩漂得更多,而且每个模型的原理都一样:每一帧都以前面的帧为条件,所以微小的逐帧误差会累积。各模型单段原生时长(截至 2026 年 6 月):

模型单段原生时长备注
Veo 3.1最多 8 秒通过 API 以每次 7 秒续接可延到约 148 秒;漂移会跨续接段累积
Sora 2最多 15 秒(ChatGPT Pro 网页版 25 秒)越长的片段越容易发灰、漂移
Runway Gen-4最多约 20 秒”Temporal Anchor” 相比 Gen-3 减轻(但不消除)漂移
Kling 3.0能跑很长,但保真度和色彩稳定性随时长下降

即便模型允许你要 15-20 秒,色彩最稳的区段仍是前 5-8 秒。关键镜头就生成短而稳的,再去续接或拼接。

如何判断:短段稳定,长段漂。

最短修复路径

Step 1:钉一个具体 Kelvin 数值

加进 Prompt:

consistent color grading, fixed white balance 5500K daylight

# 暖
3200K tungsten warm throughout, consistent color, no shift

# 冷
6500K cool daylight, locked white balance, consistent color

# 电影感
locked color grading, neutral 5600K, no color drift, professional grade

单项最有效。常用参考值:3200K 钨丝灯/白炽灯(暖)、4500K 中性室内、5500K5600K 日光、6500K 冷光/阴天。

Step 2:一个光源,明确命名

# 之前 —— 模糊
warm afternoon glow

# 之后 —— 显式
single key light: window light from camera left at 4500K, no fill, consistent throughout

必须用多光源时,指定一个主光,其余都绑到它上:

dominant key light: window from camera left at 5500K; subtle ambient fill from room interior at lower intensity, same temperature

Step 3:删掉触发色彩漂移的风格词

删:

Wong Kar-wai, dream sequence, lynchian, surreal,
shifting colors, color play, magic hour transition,
dawn to dusk

换成稳定的语言:

naturalistic color, stable grade, documentary style,
consistent palette, locked color

在 Kling 3.0 上,把同样的意图写进 Negative Elements(专门的反向提示框),而不是只放进主 Prompt——这是抑制漂移最可靠的手段之一:

color shift, white balance shift, lighting inconsistency,
tonal shift between frames, flicker, color temperature change

Step 4:后期套一个统一 LUT

哪怕 Prompt 写得再好,也预期会有些残留漂移。后期把它压平——整段套同一套调色,会覆盖逐帧的抖动:

# DaVinci Resolve(免费)—— Color 页
- 从左上角 LUTs 浏览器把一个 LUT 拖到片段的 node 上,
  或在 node 上右键 > LUTs > 选一个(Film Looks、Kodak 2383 等)
- 整段统一调色会覆盖逐帧漂移

# Premiere Pro —— Lumetri Color 面板
- Basic Correction > Input LUT,或 Creative > Look,套一个 LUT
- 跨整段设置一致的黑点和白点

# Final Cut Pro
- 加一个 Custom LUT 效果,或先用 Modify > Balance Color(Option-Command-B)
  把白平衡校正归零

Step 5:生成短段以保证色彩稳定

和人物漂一样的逻辑——把长镜头拆成几段短的,每段色彩都稳,再在剪辑软件里拼起来。生成两段各 5 秒、颜色稳的,胜过一段 10 秒、来回抖的。

1 × 10s 漂  ->  2 × 5s 稳  ->  编辑器拼

Step 6:后期跨片段匹配颜色

多段项目,生成后把每个镜头都锁到同一个参考上:

# DaVinci Resolve 20 —— Color 页
- 在缩略图时间线选中所有片段
- 右键你想当参考的那个片段
  > "Shot Match to this Clip"(用 Neural Engine)

# Premiere Pro —— Lumetri Color > Color Wheels & Match
- 点 "Comparison View"
- 左边选参考镜头,右边选目标
- 点 "Apply Match"

# Final Cut Pro
- 选中要调的片段,Modify > Match Color(Option-Command-M)
- 划到参考帧,点 "Apply Match"

这样生成之后能跨整个序列锁色。

如何确认已修好

  1. 逐帧拖动片段(或用方向键单帧步进),盯住一个中性表面——皮肤、白墙、灰色路面。它从头到尾应该保持同一个色调。
  2. 在 DaVinci Resolve 里打开 Parade 示波器(Color 页 Scopes 面板)边播边看:红、绿、蓝三条迹线应该大致保持平稳,而不是某一通道一升一降。Premiere 里用 Lumetri Scopes 的 RGB Parade。
  3. 如果生成了多条,最稳的那条通常是最短的。留下它再去延长,别跟一段又长又漂的硬磕。

常见问题

该用哪个 Kelvin 值? 按你想要的观感来:3200K 暖色钨丝灯/室内、5500K-5600K 干净日光、6500K 冷光/阴天。无论选哪个,写一次,然后项目里每段都复用同一个值,这样它们才能剪到一起。

Prompt 已经写了 5500K,还是漂,为什么? 钉 Kelvin 能减少漂移,但在逐帧更新颜色的模型上无法完全消除。配合一句 “no color shift / locked grade”,把片段缩到 5-8 秒,后期再用 LUT 或 Shot Match 收尾(Step 4 和 Step 6)。

是不是每个模型都这样? Prompt 里没有白平衡锚点时最常见,且随片段时长加重。截至 2026 年 6 月,Sora 2、Veo 3.1、Kling 3.0、Runway Gen-4 上都会出现。Runway Gen-4 的 “Temporal Anchor” 和 Kling 3.0 的反向提示框能减轻但无法消除;任何模型上长片段漂得更多,单纯因为它跑得更久。短而锚点明确的 Prompt 在它们上都稳定。

已经生成的片段不重新跑 Prompt 能修吗? 能。整段套一个 LUT,或者拿一帧稳定的参考帧去 Shot Match/Match Color,就能覆盖逐帧漂移、不用重新生成。这通常比再赌一次生成更快。

为什么长片段漂得更厉害? 每一帧的颜色都以前面的帧为条件,所以微小的逐帧误差会累积。即便模型原生允许 15-20 秒(Sora 2、Runway Gen-4),色彩最稳的区段也是前 5-8 秒;Veo 3.1 单段原生上限是 8 秒。把长镜头拆成更短的稳定段(Step 5)。

预防建议

  • 生成前先定整体色调(暖 / 冷 / 中性),并锁定一个 Kelvin 值。
  • 永远把一个光源标为主光。
  • 项目里每段都套同一个统一 LUT,别零散地一段段单独调。
  • 多段项目,所有段都用同一个 Kelvin 规格生成,这样还没进时间线它们就已经匹配了。

相关阅读

标签: #视频生成 #排查 #排查