Stable Diffusion 修复 Midjourney 生成图片的手部与面部瑕疵
引言
Midjourney V6 版本在图像生成的质感、光影和整体构图上实现了显著的提升,能够产出极具艺术感的作品。然而,尽管 AI 绘图技术日新月异,解剖学结构的准确性依然是当前所有生成式 AI 工具面临的共性难题。特别是在处理人物手部细节时,手指数量错误、关节弯曲不自然、指甲缺失等问题屡见不鲜。
当人物在画面中占据较大比例时,模型分配给手部的注意力相对充足,此类问题出现的频率会有所降低。通过多次 Reroll(抽卡)往往能获得满意的结果。但在小比例人物场景中,由于主体细节被压缩,手部等次要部位更容易出现崩坏。即使不断重绘,也难以彻底解决结构性的逻辑错误。Midjourney 虽然提供了局部重绘功能,但在 V6 版本中该功能尚不完善,且无法通过提示词精确控制如手指弯曲度等微观姿态。
针对这一痛点,Stable Diffusion(SD)凭借其强大的可控性成为了最佳解决方案。结合局部重绘、ControlNet 姿态控制以及 Adetailer 插件,我们可以对 MJ 生成的底图进行精细化修复,还原符合人体工学的自然效果。
问题分析:为什么 Midjourney 会画不好手?
AI 绘图本质上是基于概率的像素预测。在训练数据中,手部姿势极其复杂,且存在大量遮挡关系。MJ 的 V6 模型虽然在理解语义上有所进步,但在空间几何关系的推理上仍有局限。当画面中人物比例较小时,模型倾向于将手部视为模糊的背景纹理而非具体的肢体结构,导致生成结果缺乏逻辑支撑。
此外,MJ 的局部重绘依赖文本提示词引导。对于'左手食指微微弯曲'这样的具体指令,模型难以精准执行。相比之下,SD 允许用户直接提供视觉参考(Reference),从而绕过语言描述的歧义,直接锁定目标区域的形态。
准备工作与环境配置
1. 3D 姿态辅助工具
为了获得准确的手部姿势,我们需要一个外部参考源。推荐使用 DesignDoll 等 3D 人偶建模软件。该软件允许用户自由调整骨骼关节,模拟真实的人体动作。
- 操作要点:在软件中搭建出你想要的手部姿势,确保手指长度、关节角度符合透视规律。
- 导出:将调整好姿势的 3D 模型截图或渲染为灰度图,作为后续 SD 的控制参考。
2. 图像处理基础
使用 Photoshop 或其他修图软件,将 3D 模型的手部轮廓合成到 MJ 生成的原图中。这一步的目的是为 SD 提供一个清晰的蒙版区域和正确的结构指引。
- 合成技巧:只需保留手部的大致轮廓和位置,无需追求完美融合,因为后续步骤会通过 SD 重绘覆盖该区域。
- 耳朵/毛发处理:如果原图中有动物特征(如虎耳),同样需要将其合成到正确位置,以便后续统一重绘。
核心修复流程:Stable Diffusion 实战
第一步:进入局部重绘模式
打开 Stable Diffusion WebUI,选择 "img2img"(图生图)标签页,并勾选 "Inpaint"(局部重绘)选项。
- 上传底图:将经过前期合成的图片上传至输入框。
- 选择模型:建议使用写实类大模型,例如
majicMIX realistic或ChilloutMix,以确保修复后的皮肤质感与原图一致。 - 绘制蒙版:使用画笔工具涂抹需要修复的区域(如左手)。注意蒙版边缘应适当羽化,避免产生明显的拼接痕迹。
- 参数设置:
- Masked content(蒙版内容):建议选择 "Original" 或 "Latent noise",视具体情况而定,通常 "Original" 能保留更多背景信息。
- Denoising strength(重绘幅度):这是关键参数。对于手部结构修复,建议设置在 0.4 至 0.6 之间。过低无法改变结构,过高则可能丢失原图风格。
- Mask blur(蒙版模糊):设置为 4-8 像素,使过渡更自然。
第二步:引入 ControlNet 控制姿态
仅靠重绘很难保证手部姿势完全符合预期,必须引入 ControlNet 来强制约束结构。


