AI 图片多手指 / 手画崩:原因排查 + 修复路径

2026 年 Midjourney、SDXL、Flux、Imagen 仍会出六指、扭曲手。给手更多像素、跑一遍手部专用 inpaint、必要时换模型——附各工具精确步骤与参数。

人像本身挺好,往下一拉就发现手有六根手指、拇指长在错的一侧、或者两只手粘成一团。新模型已经把这个问题压小了不少——Midjourney v7 模型相比 v6.1 明显减少了手部和解剖错误,Flux.2(2025 年 11 月发布)相比 Flux.1 在解剖上也有改进——但截至 2026 年 6 月,手仍然是图像生成里最难的部位,“偶尔出错”不等于”已经解决”。

最快的修复顺序:先给手更多像素(拉近构图或换更高的竖向宽高比),再对崩掉的那只手跑一遍手部专用 inpaint pass。光是这第二步就能搞定大部分情况。根因很少在 prompt 本身,多半是手在画面里太小、姿态太纠缠、或者用了便宜 / 快速档。

先判断你属于哪一类

症状最可能的根因跳到
手很小 / 离镜头很远像素不够Step 1
SDXL/Flux 完全无视解剖没有负面 prompt 或 embeddingStep 2
手够大但还是崩没跑二次 passStep 3
双手交叉 / 握细长物高风险姿态Step 4
脸和脚也跟着崩整张图像素不够,不是手的问题Step 1
今天必须交,没时间重画后期Step 5

常见原因

1. 手太小,像素数不够

输出图里手部区域如果小于大约 64x64 像素,模型根本没有足够的像素去摆好五根手指。这是”多手指”反馈里 60-70% 的根因。

如何判断:把手部放大看。如果整只手占图像长边的 5% 都不到,就是太小。

2. 姿态本身让手指互相重叠

“双手交叉”、“手托下巴”、“祈祷姿势”、“握小物件”——这些姿态强迫模型判定每根手指属于哪只手,通常会失败。

如何判断:检查 prompt 里是否包含双手贴在一起、或手指环绕细长物(笔、麦克风、手机边)的描述。

3. 没用负面 prompt 或手部 embedding(SD / Flux 家族)

SDXL、Flux 这类 checkpoint 如果你不显式抑制,它非常乐意给你六根手指。Midjourney 基本不理负面词,所以这条只对 ComfyUI、A1111 / Forge 里的 Stable Diffusion 家族流程有效。

4. 拍摄角度让手腕被遮住

手腕被遮住时,模型对手的大小和旋转就没有锚点。极端俯仰角会让这个问题加重。

如何判断:从每根手指往身体方向追溯,能找到手腕吗?找不到就是锚点丢了。

5. 多人场景

画面里有两个或更多人时,模型经常把第三个人的手嫁接到主体身上。

如何判断:数能看到的手。应该等于 2 x 画面里的人数。3 个人只数到 5 只手或者 7 只手,就是这个。

6. 用了便宜 / 快速档

Midjourney 的 --draft 模式、SDXL 步数少于 20、Flux Schnell / Klein、Imagen 的 Fast 档——都会跳过原本能修好手的迭代。

如何判断:看出问题那次的档位 / 步数,和平台 premium 档对比——在便宜档跑的,部分原因就在这里。

动手前先确认

  • 把出问题那张图的 seed 和完整 prompt 存下来,定向重画那一步用得上。
  • 记下用的是什么工具、模型版本、画质档位。(厂商版本跳得很勤:截至 2026 年 6 月 11 日 Midjourney 默认已是 V8.1,Flux 在 Flux.2 系列上,Google 出的是 Imagen 4。用着旧模型本身就是个可修的原因。)
  • 确认不是偶发——用同 prompt 再出 4 张候选,看是不是张张都崩。
  • 想清楚到底需不需要那只手——很多人像直接把手裁掉是最快的解。
  • 在改 prompt 模板前,备份当前版本。

需要收集的信息

  • 完整 prompt、负面 prompt、模型、seed、sampler、步数。
  • 把崩掉的手裁到 ~512x512 的截图。
  • 用途场景(缩略图 / hero / 印刷)——决定修到什么程度才够用。
  • 其他部位(脸、脚)是不是也崩;如果是,根因是”像素不够”而不是手本身。
  • 输出图的宽高比和最终分辨率。

最短修复路径

Step 1:拉近构图,给手更多像素

prompt 里加显式构图词,把模型推向中近景:

medium close-up, hands visible in frame, hands well-defined

全身像必须保留时,Midjourney 改成 --ar 2:3--ar 4:5,SDXL 渲 1024x1280 而不是 1024x1024。竖向像素多了,上半身(包括手)也就清楚了。

Step 2:加强负面 prompt(仅 SD / Flux 家族)

SDXL / ComfyUI / A1111 / Forge 里:

extra fingers, six fingers, mutated hands, deformed hands,
malformed hands, fused fingers, missing fingers, extra hand,
disfigured, ugly hands, poorly drawn hands

还可以上一个专门针对烂手训练的 textual-inversion embedding——常用的有 badhandv4negative_hand-negEasyNegative(从 Civitai 下载,放进 embeddings 文件夹,再在负面 prompt 里写文件名引用)。SDXL 的负面词要短,太长反而掉画质。

Midjourney 基本无视这步。--no extra fingers 效果有限,真正的活在 Step 3。

Step 3:跑一遍手部专用二次 pass

收益最高的一步,单凭它就能搞定大部分情况。

  • SDXL / A1111 / Forge:开 ADetailer,检测模型选 hand_yolov8n.pt。它会自动识别手、做 mask,再用更高分辨率 inpaint。唯一关键的参数:Inpaint denoising strength 设 0.35-0.45。低于这个范围修不动扭曲,高于约 0.8 重画出来的手会跟原图的光照对不上。把脸和手分两个 ADetailer 标签页串起来——先脸后手。
  • ComfyUIMeshGraphormer Hand Refiner 节点是当前手部的 SOTA(它先拟合一个 3D 手部网格,再 inpaint 贴上去)。ControlNet 的 depth_hand_refiner 预处理器,或 OpenPose 配手部参考图,也都能用。用 ComfyUI Manager 装 Impact Pack 和 YOLO 模型。
  • Midjourney:在 Editor 里打开图(或在 Discord 用 Vary Region),把每只崩的手刷上,加一句聚焦的 prompt,比如 well-defined hand, five fingers, natural pose。注意:截至 2026 年 6 月,即便底图是 V8.1,Editor 底层仍在跑 V6.1 模型,所以多重画几次。
  • Flux:在 ComfyUI 里用 Flux.1 Fill [pro](或用 Flux.1 Kontext 做指令式编辑,比如 “fix the left hand”)配手部 mask。蒙版区域用聚焦的手部专用 prompt,别用整段主 prompt。

所有工具通用:mask 要刷到手的边界稍微外面一点,让模型能把手腕衔接好;修复时一次出 4 张,挑干净的那张。

Step 4:模型死活修不好就换姿态

如果 prompt 死咬着”双手交叉”或”握麦克风”不放、连重画三遍都没修好,那就换姿态。“手插口袋”、“一手在身侧一手背后”、“叉腰”这些会大幅降低手指歧义。参见下方姿态风险表。

Step 5:实在不行就后期

对于商业交付、绝对不能崩手的情况,承认 2026 年的 AI 手部还没完全解决。用 Photoshop 或 Affinity 的 Generative Fill 或修复画笔,或者从真实参考图里抠一只手贴上去。

怎么确认已经修好

  • 每只手放到 100% 看:五根手指 + 一根拇指与其余四指对生。
  • 检查手腕到前臂的连接是否干净——断腕是第二常见的崩坏。
  • 看指关节:每根手指三个弯,不是两个也不是四个。
  • 检查指甲比例是否合理,没有”长在错的关节上”的现象。
  • 找第二双眼睛看;人对自己模型的失败容易看瞎。

如果还是没修好

  1. 放开分辨率限制,渲 1024x15361536x1024,给上半身更多像素。
  2. 试一个手部专门的 LoRA(Civitai 上有几个 “perfect hands” 系列)。
  3. 换底模。截至 2026 年 6 月,Flux.2 Pro 和 Imagen 4(Ultra/Standard)在紧凑姿态下手比旧 checkpoint 干净;用 Midjourney 的话,确认自己在 V8.1 而不是旧版本。
  4. 商业交付要把手部修复当作工作流里固定的一步,别当成例外。手部完全可靠的 AI 生成目前还做不到 100%。
  5. 上 r/StableDiffusion 或 Discord 求助前,把崩图、完整 prompt、模型版本打包好。

常见问题

都 2026 年了,别的都照片级真实,为什么 AI 还是画不好手?

手的变化太大:27 块骨头、几十种合法姿态、手指交叉处大量自遮挡。而且手在画面里通常很小,模型能用的像素本就不多。模型这两年进步很大(Midjourney v7 相比 v6.1 明显减少了手部错误,Flux.2 相比 Flux.1 也有改进),但”小尺寸 + 复杂姿态”这套组合拳还是会把它打懵。

负面 prompt 在 Midjourney 里能修好手吗?

基本不能。Midjourney 大体上无视 --no,所以 --no extra fingers 效果有限。Midjourney 里可靠的修法是用 Editor / Vary Region 对手做 inpaint。负面 prompt 和烂手 embedding 是 Stable Diffusion / Flux 那边的玩法。

ADetailer 的 denoise 设多少能修手又不毁图?

Inpaint denoising strength 设 0.35-0.45。再低修不动扭曲;再高(超过约 0.8)重画的手会跟原图光照、颜色对不上。检测模型用 hand_yolov8n.pt,脸和手分两个 ADetailer 标签页跑。

现在哪个模型的手最好?

截至 2026 年 6 月,紧凑姿态下 Flux.2 Pro 和 Imagen 4(Ultra/Standard)的手部保真度领先,Midjourney V8.1 也比旧版本好很多。没有一个是完美的——不管用哪个模型,都把 inpaint pass 留在工作流里。

手够大够清楚但还是六根手指,怎么办?

这是 Step 3 的问题,不是构图问题。跑手部专用 inpaint pass(ADetailer / MeshGraphormer / Flux Fill / Midjourney Editor),mask 刷到手边界外一点,用聚焦的手部专用 prompt,一次出 4 张挑。连跑三遍还不行就换姿态(Step 4)。

预防建议

  • 避免让手处在最小尺度或互相重叠的姿态。
  • 准备一段”负面 prompt 块”,每次 SD / Flux 生成都粘进去。
  • hero 图尽量用最大允许的宽高比生成再裁切。
  • 任何有手露出的人像,固定加一遍手部 inpaint pass,把它当工作流而不是修复手段。
  • 维护一个自己模型经常踩坑的姿态词黑名单,提前用安全替代词。

姿态风险速查

姿态风险
手插口袋
手在身侧放松
一手叉腰、一手在身侧低-中
双臂交叉
握手机或麦克风
双手交叉或祈祷极高
手语动作极高
双手环握小物件极高

用例允许时,优先选风险更低的姿态。

相关阅读

标签: #Prompt #排查 #排查 #图像生成