深度图到底在控制什么
ControlNet Depth 拿到的那张灰度图,记录的不是明暗,而是每个像素离镜头有多远。近处亮、远处暗,人物轮廓和身体各部位的纵深关系被压成一张可被模型读取的”距离地图”。
这带来两个直接好处:模型不会被原图的材质、颜色、光影带偏,同时又能精确拿到身体的朝向、四肢位置和前后遮挡关系。你给它一张站姿深度图,它不会把衣服纹理抄进去,但会把胯部侧顶的角度、手臂的抬升幅度、双脚的落点照搬下来。
线稿走的是另一条路:它描述的是轮廓与结构线,适合需要保留画面骨架、又不想被灰度限制肤色的场景。所以真正高效的用法不是二选一,而是同一姿势准备两套图,按阶段取用——构图阶段用深度图定骨架,上色阶段用线稿定轮廓。
第一步:先在库里把姿势筛到只剩三五个
大部分人卡住的地方不是参数,而是”找不到那个对的姿势”。正确顺序是先收敛,再生成。
- 先在姿势库按体系把范围缩小:全身单人、上半身单人、双人三类先选一个。
- 再用分类二次过滤,比如站姿、坐姿、跪姿、倚靠。分类和体系是两级结构,组合起来通常只剩几十张。
- 最后用视角锁定机位。同一姿势有正面、俯视、仰视、侧面、斜侧五个角度,俯视和仰视出来的透视完全不同,选错了后面全白费。
筛到 3 到 5 张就够了。真正出图时你会发现,能用的姿势远比你想象中少——问题往往不在数量,而在是否选对了视角。
第二步:切换图源做一次对比确认
在姿势库的筛选栏里有一个”图源”选项:深度图、线稿、对比。切到对比后,鼠标移到卡片上会实时换成线稿,进大图后则是左右并排。
这一步要做的事很简单——确认这个姿势在两种表达下都成立。有些姿势在深度图里轮廓清晰,换成线稿后手臂与躯干的重叠会糊成一片;反过来也有线稿利落、深度图层次不清的情况。提前发现,比生成五张废图再回头强。
第三步:放进 ControlNet 的参数怎么给
以 Stable Diffusion WebUI 为例,常用组合是这样:
- 预处理器:如果直接用库里的深度图,选
none。库里的图已经归一化过,再过一遍 Depth 预处理器反而会损失层次。 - 模型:
control_v11f1p_sd15_depth(SD1.5)或对应的 SDXL depth 模型,版本要和大模型对齐。 - 权重:从 0.65 起。低于 0.5 姿势容易跑偏,高于 0.9 画面会变得僵硬、像贴图。
- 引导时机:0 到 0.75。让前四分之三的采样步数受控制,最后留给模型自己收细节。
- 分辨率:控制图和生成图的比例必须一致。库里的原图是 900×1200(3:4),生成时也按 3:4 出,否则人物会被拉伸。
三个最常见的问题
1. 出来的人变成了”木头人”
权重过高,或者引导时机覆盖到了最后几步。先把权重降到 0.7 左右,把结束时机设在 0.7 到 0.8,让模型后段自由发挥衣褶和表情。
2. 手和脚崩了
深度图对手指的约束本来就弱,五个手指在深度上几乎同层。解决办法是把画幅收窄到上半身,或者生成后用局部重绘补手。库里的”上半身单人”体系就是为这类镜头准备的。
3. 双人场景总有一个人的姿势丢
两个人的深度值互相遮挡时,模型会分不清谁在前。这种情况优先改用线稿,或者把双人的深度图整体调亮一档,让前后层次拉开。
把流程固化下来
实际项目里,我建议固定成这个顺序:筛视角 → 对比图源 → 定权重 → 单张试跑 → 批量出图。前两步在库里两分钟能做完,后面三步才是真正耗时的部分。把便宜的动作放在前面,是整个流程最省钱的地方。
库里 288 组姿势、2880 张图全部可以直接下载,按体系还能整包拿。下一篇文章讲提示词怎么写,可以直接接着看。