Midjourney 角色一致性三步锁脸身份证写法

Midjourney 角色”身份证”写法:固定特征文本 + 参考图锚点 + 种子值,三步锁脸

做连环画、绘本、短视频分镜的人都有一个共同的噩梦:第一张图里的角色是位”琥珀色眼睛、左眉有疤的短发少女”,画到第十张变成了圆脸大眼萌妹,画到第二十张连发色都换了。这不是玄学,而是 Midjourney 扩散模型每一次生成都重新”掷骰子”的必然结果。要解决 Midjourney 角色一致性问题,靠的不是运气,而是一套可以复制的方法论——给角色办一张”身份证”:固定特征文本(identity snippet)当身份说明,参考图锚点(–cref / –sref)当证件照,种子值(–seed)当出生编号。三重锚定齐了,脸才锁得住;缺了任何一重,必漂。

这篇教程会把这套方法拆成三步讲透:第一步写出真正管用的角色特征文本块,第二步用 –cref、–cw、–sref 钉住脸和画风,第三步用 –seed 控制可复现性。最后给出可直接复制的”角色身份证”完整模板、两份关键参数对照表,以及一份诚实的 FAQ——包括什么时候该放弃参考图方案,直接上角色 LoRA。

一、先搞懂:为什么角色会”漂”?

在动手之前必须理解漂移的来源,否则参数调得再细也是隔靴搔痒。Midjourney 的每一次生成,本质上是三个变量的函数:

  • 提示词文本:模型对画面的”文字理解”,但同样的描述在不同批次里权重分配会波动;
  • 随机噪声种子:扩散模型的起点是一张随机噪声图,种子不同,哪怕提示词一字不差,构图和面部细节也会不同;
  • 模型版本与参数环境:–stylize 值、–ar 比例、–chaos 值、版本号,任何一个变动都会改变扩散轨迹。

换句话说,角色一致性不是”提示词写得好”就能解决的问题——它是文本、图片、随机数三重锚定的问题。只写文字不锁种子,每张图的随机起点都不同;只挂 –cref 不写特征文本,模型在长序列里会逐渐”忘记”参考图里的脸;只锁种子不改参考,换个场景比例后种子作用衰减,照样漂。这就是我说的那句话:身份证是文本、图片、随机数三重锚定,缺一必漂。

1.1 漂移的三种典型症状

  • 五官漂移:脸型、眼距、鼻梁逐张变化,最常见于连续出图的第 10~20 张区间;
  • 服装发型漂移:衣服颜色、配饰细节悄悄变化,观众未必能说出哪里不对,但”感觉不是同一个人”;
  • 画风漂移:角色还在,但整体渲染风格从厚涂变成了赛璐璐,光影逻辑变了——这一种最隐蔽,因为单看每张图都没问题。

有社区测试数据显示,纯靠 –cref 不做文本强化的情况下,长序列约 20 张后角色识别度明显下降,第 20 张之后的识别度甚至跌破 50%。这个数字不一定精确到每个模型版本,但趋势是公认的:参考图锚点会衰减,必须靠固定描述文本反复强化来补。

二、第一步:写好固定特征文本(identity snippet)——角色的”文字户口”

identity snippet 是一整块可以原封不动复制进每条提示词的角色描述。注意两个关键词:固定(每次生成一字不改)和整块(不能挑着用、省略着用)。很多人一致性失败的原因很简单——今天写”red hair girl”,明天写”red-haired young woman”,在模型眼里这就是两个角色。

2.1 特征文本的五层结构

一个合格的角色身份证文本块,从内到外应包含五层:

  1. 身份定位层:年龄区间 + 性别 + 一句身份标签,如”a 24-year-old female wanderer”;
  2. 骨架层(不可变硬特征):脸型、肤色、体型——这些是你希望任何场景都不变的底座;
  3. 五官层(识别度核心):眼睛颜色与形状、眉形、鼻、唇、痣/疤等标记性细节,越具体越好;
  4. 发型服装层(半固定特征):发型、发色、标志性服装——如果剧情需要换装,这一层要拆出来单独管理;
  5. 气质层(软特征):一个词概括气质,如”weary but defiant”,帮模型统一神态。
五官层写作的具体技巧
  • 颜色用具体色名而非泛称:不写 brown eyes,写 “warm amber eyes with a hint of copper around the pupil”;
  • 形状用可比较的参照:不写 big eyes,写 “almond-shaped eyes with slightly downturned outer corners”;
  • 标记物是黄金锚点:一颗痣、一道疤、一缕挑染,比十句形容词都管用,因为模型对”独特标记”的敏感度远高于对通用形容词的敏感度;
  • 负面特征也写进正面描述:与其指望模型不画大眼,不如直接写 “narrow hooded eyes”。
反面示例 vs 正面示例
  • 反面:“a beautiful girl with nice eyes and long hair”——每个词都在描述”某个平均值”,生成一万次一万张脸;
  • 正面:“a 24-year-old woman, oval face with high cheekbones, warm amber eyes with slightly downturned outer corners, straight thin eyebrows, a small aquiline nose, full lower lip, a faint scar above her left eyebrow, shoulder-length ash-brown hair tucked behind her left ear”——每个词都在收窄可能性空间。

一个可感知的判断标准:把你的特征文本发给另一个人(或另一个 AI),如果他画出来的脸和你的设定对得上七成以上,这个文本块就合格了。写不出这种精度,后面的 –cref 和 –seed 都救不回来。

三、第二步:参考图锚点——–cref、–cw 与 –sref 的正确用法

特征文本解决”模型知道角色是谁”,参考图锚点解决”模型知道角色长什么样”。Midjourney 提供两个参考参数:–cref(character reference,角色参考,锁定人物长相)和 –sref(style reference,风格参考,锁定画风)。

3.1 –cref 与 –cw:锁脸的主力

用法是在提示词末尾追加:

--cref [参考图URL] --cw 100

–cref 接一张你选定的”定妆照”URL(通常从第一张满意的生成图里挑),而 –cw 是这套机制的精妙之处:它控制参考强度和保留范围,取值 0-100。

  • –cw 100:最大强度,保留参考图的脸部 + 发型 + 服装——适合同一套造型连续出图;
  • –cw 60~80:保留脸部和发型的主体特征,服装允许变化——适合需要换装但换发型的场景;
  • –cw 0:只侧重脸部,发型服装完全交给提示词——适合剧情里角色换了发型/装束,但你仍要认得出是同一张脸。
cw 参数设置的经验法则
  • 同一场景换机位(特写/中景/远景):–cw 100;
  • 换装不换人(剧情推进):–cw 0 配合完整特征文本,让文本接管发型服装描述;
  • cref 漂移已经发生(序列后半段):适当回调 cw 并强化文本,而不是无脑拉满——拉满会把参考图的背景杂物也带进来。

3.2 –sref:管住画风,防止”人没变画变了”

角色一致性的一半是人物一致性,另一半是画风一致性。同一个角色,第一张是电影级写实质感,第五张变成日漫平涂,观众照样出戏。–sref 锁的是渲染风格:把它指向一张画风锚定图(或用 –sref random 固定一批风格种子),配合固定的 –stylize 值,能让整个序列保持在同一视觉语言里。

特别提醒:–sref 也可以带强度参数(–sw),并且 –sref 后面接的具体图同样来自你自己的生成结果——用你项目里”最标准的一张”当风格基准,而不是随手找的网图。

3.3 三个参数的作用边界

下面这张对照表,建议打印出来贴在显示器旁边。很多人把三个参数混着用、指望某一个包打天下,结果哪个都没锁住。

参数 锁什么 作用层 关键搭档 典型失效场景 失效补救
–cref 角色长相(脸/发型/服装) 人物层面 –cw 控强度;特征文本做文本强化 长序列 20 张后识别度衰减、远景小脸识别弱 重新选锚点图 + 强化 identity snippet + 降 cw 只锁脸
–sref 整体画风(色彩/笔触/光影) 风格层面 –stylize 固定值;固定模型版本 换了 –ar 或 –stylize 后画风突变 固定全部技术参数,必要时提高 –sw
–seed 随机起点(构图/细节随机性) 随机层面 与完全相同的提示词配合使用 提示词、比例、场景一变,种子作用衰减 换场景后重新筛选种子,不要幻想一个 seed 走天下

看清楚这张表会发现一个残酷事实:–seed 只对”完全相同的提示词”有效。它的正确用途是”微调迭代”——锁定一个还不错的随机起点,只改个别词做小步优化;而不是”换个场景也要同款脸”的武器。换场景锁脸,靠的是 –cref + 特征文本,种子值只是锦上添花。

四、第三步:种子值——可控的可复现性,而非万能钥匙

–seed 的取值范围是 0-4294967295。不指定时 Midjourney 每次随机取值;指定后,在提示词完全相同的前提下,生成结果会高度接近。它的三个实战要点:

4.1 种子值怎么找

  1. 生成出满意图后,对该消息添加 ✉️ 信封 emoji 反应,Midjourney 机器人会在私信里回复该图的 seed 值(网页版可在任务详情中查看 job 信息);
  2. 拿到 seed 后写进后续提示词:`–seed 1234567890`;
  3. 注意:seed 是”起点快照”不是”角色绑定”,它的效力随提示词变化而衰减——改了一个词,效力降一半;换了 –ar 或场景描述,效力基本归零。

4.2 seed 的正确使用节奏

  • 定妆阶段:放开 seed 让模型自由发挥,海选出最满意的一张脸;
  • 微调阶段:锁定该图 seed,只动一两个词,把细节磨到位;
  • 量产阶段:seed 退居辅助,主力换成 –cref + 完整特征文本 + –sref,因为量产必然要改场景,seed 已无力回天。

4.3 参数固定:被严重低估的一致性杀手

单独强调一件事:参数固定比提示词精美更重要。–stylize 从 250 变成 750,画面美学倾向整体改变;–ar 从 16:9 变成 3:4,构图重排会连带面部特征重新采样;模型版本从 v6.1 切到 v7,等于换了一个画师。这些”技术参数漂移”不会一次爆发,而是逐张累积,最后你拿到 30 张”各美其美”的图,拼不成一个故事。正确做法:把完整命令行存成模板(见下文第六节),每次只改场景描述段,其余一个字符都不动。

五、诚实的短板分析:参考图方案的极限与 LoRA 替代方案

这套三步锁脸法能解决 80% 的需求,但必须说清楚剩下 20%。

5.1 –cref 的两个硬伤

  • 长序列衰减:如前所述,约 20 张后识别度明显下降(有测试显示第 20 张后跌破 50%)。原因是 cref 本质是给扩散过程加”图像条件”,每一步生成都在稀释这个条件的影响力,而特征文本只能减缓、不能逆转;
  • 动作与角度限制:大角度侧脸、剧烈动作特写时,cref 的锚定能力下降,容易回退到模型默认脸。

5.2 角色参考 vs LoRA:一张表选对工具

当你的项目是 50 张以上的长篇(连载漫画、长绘本、完整分镜),就该考虑换武器了——训练角色 LoRA。

维度 参考图方案(cref + 文本 + seed) 角色 LoRA 方案
上手门槛 低,当天可用,纯提示词工程 高,需训练流程与算力
素材需求 1 张定妆照 + 一段特征文本 15-25 张多角度多场景参考图
算力要求 无(Midjourney 云端完成) 12GB 以上显存,本地或租卡
时间成本 分钟级 训练一次 30-90 分钟,加调参迭代
长序列一致性 约 20 张后明显衰减 90% 以上,50 张、100 张仍稳定
风格绑定 需额外 –sref 维护,易漂 训练集自带画风,天然稳定
灵活换装换景 依赖 –cw 调节,中等 提示词自由控制,强
适用篇幅 短篇:≤20 张的单集、海报、封面 长篇:连载、绘本、整季分镜
成本结构 零训练成本,出图按订阅计费 一次性训练成本 + 本地出图

我的结论是一句糙理不糙的话:参考法适合短篇、LoRA 适合长篇,选错工具白干三天。反过来也成立——只为 8 张图的项目去训 LoRA,属于杀鸡用牛刀;指望 cref 撑完 80 集连载,属于用纸伞挡暴雨。

折中路线:混合流水线

实操中最高效的往往是混合方案:前期用 Midjourney cref 快速出片定风格定角色,同时用它批量生成 LoRA 训练所需的 15-25 张多角度素材(各种机位、表情、光线下的同一角色),然后训练 LoRA 接管长篇量产。Midjourney 负责”从 0 到 1″,LoRA 负责”从 1 到 100″。

六、可直接复制的”角色身份证”完整模板

下面是按本教程方法论组装的完整模板,替换方括号内容即可使用。

6.1 特征文本块(identity snippet)

[IDENTITY SNAPSHOT] a 24-year-old East Asian female wanderer, oval face with
high cheekbones and a softly pointed chin, warm amber eyes with slightly
downturned outer corners and a copper ring around the pupil, straight thin
eyebrows with a small gap scar above the left brow, a small aquiline nose,
full lower lip over a thinner upper lip, a faint mole under the right eye,
shoulder-length ash-brown hair with a single silver streak tucked behind
her left ear, wearing a sand-colored high-collar travel coat with worn
leather straps, lean athletic build, weary but defiant expression

使用规则:这一块在每一张图的提示词中原样粘贴,一个词都不改。剧情换装时,只替换服装句(wearing 之后到 build 之前),其余纹丝不动。

6.2 完整命令行示例

imagine prompt: [IDENTITY SNAPSHOT], walking through a rain-soaked neon
alley at night, reflections on wet pavement, cinematic key light from the
left, shallow depth of field --cref https://your-cdn.com/anchor_face.png
--cw 80 --sref https://your-cdn.com/style_anchor.png --stylize 250 --ar
16:9 --seed 1837462910 --v 7

逐段说明:

  • 场景段(walking through…):唯一允许每张更换的部分;
  • –cref:指向你从第一轮海选中挑出的定妆照,全项目同一张 URL;
  • –cw 80:保留脸 + 发型主体,允许服装微调;同一套造型的连续镜头改用 –cw 100;剧情换装改用 –cw 0;
  • –sref:指向画风锚定图,配合固定的 –stylize 250 双保险防画风漂移;
  • –ar 16:9 –v 7:全项目固定,中途换比例等于重掷骰子;
  • –seed:仅微调阶段锁定,量产换景阶段可移除。

6.3 负面提示写法

Midjourney 官方参数里没有稳定的 negative prompt(早期 –no 参数仍可用但效果有限),所以负面控制要”正话反说 + –no 兜底”双管齐下:

正文内嵌(把要避免的东西写成正向约束):
...narrow hooded eyes(防大眼), natural realistic proportions(防夸张变形)

尾部参数兜底:
--no big round anime eyes, different hairstyle, extra accessories, text,
watermark, deformed hands

原则:高频漂移项写进正文特征块(模型对正文尊重度更高),低频干扰项交给 –no。

6.4 单角色长序列工作流(建议流程)

  1. 海选:不带 seed,用完整特征文本 + 高 –stylize 跑 4 批,挑出脸最贴合的一张;
  2. 定妆:取出该图 seed,锁定后微调 3-5 次,产出”锚点图”和”风格锚点图”;
  3. 建档:把特征文本块 + 锚点 URL + 全套参数存成命令行模板;
  4. 量产:每次只换场景段,–cref/–cw/–sref/–ar/–stylize 全固定,每 15-20 张回头检查识别度,发现衰减就重选锚点图并强化文本;
  5. 升维:序列超过 20 张且衰减明显,切换到”用 cref 批量产素材 → 训角色 LoRA”的混合流水线。

七、独到见解:三重锚定的本质与两条铁律

写到这里,把整套方法的底层逻辑收拢成三句话,这是比任何参数技巧都值钱的部分。

7.1 身份证是文本、图片、随机数三重锚定,缺一必漂

文本锚定提供”语义约束”——它告诉模型角色在概念上是谁,是唯一能跨场景、跨比例、跨批次持续生效的约束;图片锚点提供”视觉约束”——它告诉模型角色在像素上长什么样,是识别度的直接来源但会随序列衰减;种子值提供”轨迹约束”——它冻结扩散的随机起点,是可复现性的来源但场景一换就失效。三者不是可选项,是互补项:文本管长期、图片管精度、种子管复现。任何”一个参数解决角色一致性”的说法,都是在卖三脚凳的一条腿。

7.2 参数固定比提示词精美更重要

新手把 90% 的精力花在打磨形容词上,老手把 90% 的精力花在冻结参数上。因为提示词差一点,只是角色差一点;而 –stylize、–ar、模型版本差一点,是整个视觉体系塌方。正确的心智模型是:把”特征文本 + 锚点图 + 技术参数”打包成一份不可变的”身份证档案”,每次生成只许动场景描述这一个字段。工程上这叫配置冻结,创作上这叫风格纪律。

7.3 参考法适合短篇、LoRA 适合长篇,选错工具白干三天

工具选型的判断标准只有一个字:量。20 张以内,cref 方案的衰减还没发作,用它最便宜;超过 20 张,衰减曲线开始碾压你的补救努力,此时每多画一张都是在给返工攒库存。在项目第一天就数清楚要出多少张图,比学会任何参数都更能决定你是否交付得出来。

常见问题 FAQ

FAQ 1:–cref 到底能撑多少张不漂?

经验值是 15-20 张。有社区测试显示第 20 张之后角色识别度跌破 50%,且远景、侧脸、动态镜头衰减更快。实务上建议每 15 张做一次识别度检查(把新图和锚点图并排对比五官),接近 20 张就开始重选锚点图并加强特征文本,或直接切 LoRA 流水线。

FAQ 2:种子值怎么找到自己那张图的 seed?

Discord 端:对生成结果添加 ✉️ 信封 emoji 反应,机器人会把 seed 私信发给你;网页端:在任务详情/作业信息里直接查看 seed 字段。拿到后加到提示词尾部即可。但记住它的适用边界:只在提示词完全相同时提供高可复现性,改词减效、换景失效。

FAQ 3:–cw 参数到底怎么设?

三档速记:同一套造型连续镜头用 –cw 100(保脸 + 发型 + 服装);剧情换装但发型不变用 –cw 60~80;角色换了发型装束、只认脸用 –cw 0,此时发型服装描述完全由你的特征文本块接管。不要默认拉满 100——参考图里的背景杂物和构图惯性也会被一起带进来。

FAQ 4:什么时候该放弃 cref 上角色 LoRA?

三个触发条件满足任意一个就动手:① 项目总图量确定超过 20 张;② 已经出现两轮以上”重选锚点 + 补文本”仍压不住的漂移;③ 需要大量非常规角度(大仰视、背面、剧烈动作)的角色镜头。训练准备:15-25 张多角度多光线参考图、12GB 以上显存、30-90 分钟训练时间,换来 90% 以上的长序列一致性。

FAQ 5:换了场景或比例后,同一个 seed 还管用吗?

基本不管用。seed 锁定的是”这张噪声起点 + 这套提示词”的组合轨迹,场景描述一改、–ar 一换,扩散轨迹就重新规划了,seed 的约束力大幅衰减甚至归零。换景锁脸请回到主力组合:–cref + 完整特征文本 + –sref;seed 只在同提示词微调场景下使用。

FAQ 6:特征文本块那么长,每条提示词都带会不会浪费或不生效?

恰恰相反,这是整套方法里最不能省的一环。参考图锚点会衰减,唯一跨批次持续生效的约束就是这段文本——它就是漂移发生时模型唯一的”回memory锚”。省钱思路不是删文本,而是把它存成模板复用(Discord 端可用自定义快捷指令/书签保存完整命令行)。每次生成都在提示词里带上完整特征块,不能挑着带、省略着带,这是角色”身份证”制度能运转的底线。

THE END
喜欢就支持一下吧
点赞40 分享
评论 抢沙发
头像-知了AI
欢迎您留下宝贵的见解!
提交
头像-知了AI

昵称

取消
昵称表情代码快捷回复

    暂无评论内容