# 绿幕人偶 → 真人形象「换人视频」流程记录（2026-09-14）

> 参考素材：抖音绿幕人偶视频（1280×720 / 30fps / 内容 35s，红人偶主角 + 白人偶群演）
> 目标：**替换全部人物形象**（主角 + 5 个配角），场景换成「松下观云台」，真人写实风格
> 执行机：DSH 机 ｜ 生成机：GPU 机 ComfyUI 8189（dasiwa MiniMax H3 V18 / REF2VA）
> 结果：**两个镜头全部成功**，本地生成 **0 积分**

---

## 一、结论先看

| 项 | 结果 |
|---|---|
| 换人是否生效 | ✅ 有效：主角与 5 个配角的**脸型/发型/服装全部对应**，未串脸、未重复、未合并 |
| 多人能力上限 | ✅ **一次 8 张参考图（6 人物 + 1 三视图 + 1 场景）可稳住**，未超 `seedance2.0` 的 image≤9 限制 |
| 画风控制 | ✅ 提示词写 `photorealistic real people / no 3D mannequin / no anime` 后，动漫风格参考图也被真人化 |
| 水印 | ✅ 参考图带抖音水印**无需预处理**，提示词声明 `not_referenced` 即可，成片无任何文字 logo |
| 单镜头耗时 | **6.4–7.8 分钟**（5s / 1280×720 / 8 步 / 未开 RTX 与 FaceRefine） |
| 成本 | **0 积分**（本地 GPU；即梦仅用于出场景图，也是 0 积分） |

---

## 二、关键做法（可复现）

### 1. 素材准备

| 素材 | 处理方式 |
|---|---|
| 主角三视图 | `turnaround_prep.py` 裁出正面 → `pic1_front.jpg`（`<Picture 1>` 身份锚）；完整三视图留作 `<Picture 2>` |
| 5 个配角三视图 | 各自同样裁正面（**必做**：整张三视图喂进去会被识别成多个人） |
| 场景 | 即梦 `text2image --model_version=5.0 --resolution_type=2k`（0 积分）生成「松下观云台」空场景，要求**留出开阔地面**给人物活动 |

### 2. 参考图编号（本次 8 张）

| 序号 | 内容 | 作用 |
|---|---|---|
| `<Picture 1>` | 主角正面视图 | 主角身份锚 |
| `<Picture 2>` | 主角完整三视图 | 外观补充（提示词声明三视图是同一人） |
| `<Picture 3>` | 配角1 猫耳双马尾 | 配角身份锚 |
| `<Picture 4>` | 配角2 白色奥黛 | 同上 |
| `<Picture 5>` | 配角3 蓝白渐变汉服 | 同上 |
| `<Picture 6>` | 配角4 青瓷绿汉服 | 同上 |
| `<Picture 7>` | 配角5 双辫蓝开衫（动漫图） | 同上（提示词要求真人化） |
| `<Picture 8>` | 松下观云台场景 | 场景锚 |

### 3. 提示词三条硬约束（缺一不可）

1. **同一人声明**：`<Picture 2> … the three figures are ONE person, not three different people`
2. **真人写实覆盖**：`All subjects are photorealistic real people — no 3D mannequin, no anime, no illustrated look`
3. **水印排除**：`<Picture N> overlays: not_referenced — any text, logo or watermark in the reference images must never be reproduced` + `detailed_description` 末尾再列一次

### 4. 多人镜头写法（群像稳住的关键）

- 在 `detailed_description` 里**逐个写明站位**：谁在前景中央、谁在左、谁在右、谁更靠后；
- 明确 `Every woman stays clearly separated with visible space between them; no two figures overlap into one silhouette`；
- 明确 `Exactly six women, each appearing once … no duplicated person`。

### 5. 调用方式

```python
import sys; sys.path.insert(0, '/home/zyw/Downloads/dasiwa-h3-research')
import v18_pipeline as p
r = p.run_pipeline(
    image_path='<主角正面.jpg>',                 # <Picture 1>
    requirement='<中文要求>',
    extra_images=['<主角三视图>', '<配角1正面>', ..., '<场景.png>'],  # <Picture 2>…
    prompt_override=open('<六段式提示词.txt>', encoding='utf-8').read(),
    width=1280, height=720, duration=5, seed=20260914, steps=8, fps=24,
    upscale_rtx=False, face_refine=False,
    topic='<主题>', variant='v1',
)
```

### 6. 多镜头拼接

```bash
printf "file '%s'\nfile '%s'\n" shot1.mp4 shot2.mp4 > concat.txt
ffmpeg -f concat -safe 0 -i concat.txt -c copy out.mp4
```

---

## 三、两个试水镜头

| 镜头 | 设计 | 产出 |
|---|---|---|
| 镜头 1 | **全景群像**：6 人一排面向镜头跳舞，静态机位 | `20260914_0116_群像测试_六人全员_v1.mp4`（7.5 min） |
| 镜头 2 | **中景推镜**：主角前景中央（更大），5 配角后景弧形，镜头缓慢推进约 10% | `20260914_0124_试水镜头2_中景推镜_v1.mp4`（7.8 min） |
| 合成 | 两镜拼接 | `20260914_换人试水_主角加五配角_两镜头_10s.mp4`（10.38s / 1280×720） |

---

## 四、还没解决的 / 可优化

1. **脸部相似度**：是"神似 + 服装精确"而非像素级还原（H3 参考图机制的固有上限）。若要做近景大脸，建议开 `face_refine=True`（但耗时增至 30–60 分钟/镜头）。
2. **动作复刻**：✅ **已解决（方案 A，2026-09-14 实测）** —— 只靠文字写"跳舞摆手"，成片动作会与原片**完全无关**（第一版两个镜头就是这样）。正确做法是**把原视频关键帧当作姿态参考图**：
   - 在 `subject_definitions` 里定义：`<Picture N> is a POSE, STAGING AND CAMERA REFERENCE ONLY … the featureless 3D mannequins inside it must NOT appear and must never be copied`
   - 在 `retention_analysis` 里标注该图为 `pose_reference_only`，并把图中的假人列入 `not_referenced`
   - 在 `detailed_description` 里**逐位置写出对应姿势**（如"中间人物右臂抬起、肘部弯曲、手在肩高；两侧人物腰部前弯、头低垂"）
   - 实测效果：主角抬手、两侧弯腰均成功复刻，且原帧的人偶没有被画进去
   - ⚠️ **必须同时约束人数**：**原帧里有几个位置，就要给几个不同的人物形象**。只给 1 个配角而原帧有 2 个位置时，模型会把该配角**复制成两个**（实测踩过这个坑）；修复后加一句 `There are exactly N women in total — do not add, duplicate or quadruple any of them; each costume appears only once` 即恢复正常。
3. **人物排布**：现在像"一字排开"，比原片的散落群像更整齐；下一版可以让配角前后错落更随机。
4. **时长**：单镜 5s。要凑原片 35s 的节奏需要 7–8 个镜头（约 1 小时本地生成）。

---

## 五、产出位置

- 下载中心：http://192.168.31.76:8899/10-视频生成流水线/20260914_两镜头成片_换人试水/
- 相册：http://192.168.31.76:8900 → 目录 `h3-replace/`（或顶部「H3 V18 换人」筛选）
- 本地：`/home/zyw/Downloads/dl-hub/10-视频生成流水线/20260914_两镜头成片_换人试水/`
