94 lines
2.9 KiB
Markdown
94 lines
2.9 KiB
Markdown
# 批量图片生产
|
||
|
||
## 流程
|
||
|
||
```dot
|
||
digraph batch_gen {
|
||
rankdir=LR
|
||
node [shape=box, style=filled, fillcolor="#f5f5f5", fontsize=11]
|
||
|
||
refs [label="参考图 references/\n+ 风格 styles/*.md", shape=folder, fillcolor="#e3f2fd"]
|
||
prompts [label="生成提示词\n每条文案→imagePrompt\n+ videoPrompt"]
|
||
model_gemini [label="Gemini edit()\n图生图(参考图直传)", fillcolor="#e8f5e9"]
|
||
model_mj [label="MJ --sref\n风格参考(URL)", fillcolor="#fff3e0"]
|
||
output [label="输出图片\n+ manifest.json"]
|
||
pick [label="人工挑选\n删除不合格变体", shape=diamond, fillcolor="#fff9c4"]
|
||
|
||
refs -> prompts
|
||
prompts -> model_gemini [label="快速/批量"]
|
||
prompts -> model_mj [label="精品/写实"]
|
||
model_gemini -> output
|
||
model_mj -> output
|
||
output -> pick
|
||
}
|
||
```
|
||
|
||
## 提示词生成
|
||
|
||
### 单图模式(默认)
|
||
|
||
每条文案生成 2 个 prompt:
|
||
|
||
| 字段 | 用途 | 规则 |
|
||
|------|------|------|
|
||
| `imagePrompt` | 生图 | 英文,描述画面内容 |
|
||
| `videoPrompt` | 图生视频 | 描述**运动**(zoom/pan/dolly),不超过 50 词 |
|
||
|
||
### 首尾帧模式(用户指定时)
|
||
|
||
每条文案生成 3 个 prompt:
|
||
|
||
| 字段 | 用途 | 规则 |
|
||
|------|------|------|
|
||
| `imagePrompt` | 起始帧 | 静止状态 |
|
||
| `lastFramePrompt` | 结束帧 | 同一场景的运动状态 |
|
||
| `videoPrompt` | 过渡视频 | "from X to Y" 格式 |
|
||
|
||
首尾帧原则:同一场景、视角一致、状态对比、光照连贯。
|
||
|
||
## 输出目录
|
||
|
||
```
|
||
output/{account}_{YYYYMMDD}_{NNN}/
|
||
├── manifest.json # 主清单(贯穿全流程)
|
||
├── images/ # scene_{NN}_{keyword}.jpeg
|
||
├── videos/ # scene_{NN}_{keyword}.mp4
|
||
└── audio/ # seg_001.mp3
|
||
```
|
||
|
||
命名:图片 `scene_01_悬浮.jpeg` → 视频 `scene_01_悬浮.mp4`(keyword 支持中文)
|
||
|
||
## manifest.json
|
||
|
||
字段规范详见 [manifest-schema.md](../../video-from-script/references/manifest-schema.md)。
|
||
|
||
## 命令速查
|
||
|
||
```bash
|
||
# Gemini 图生图(推荐,本地图直传)
|
||
node scripts/gemini-image-generator.js edit "prompt" -i ./references/ref1.png -o ./output -r 9:16
|
||
|
||
# Pipeline 批量生图(推荐)
|
||
node scripts/pipeline.js init \
|
||
--account {account} --mode single \
|
||
--items '[{"text":"...","imagePrompt":"...","keyword":"关键词"}]'
|
||
node scripts/pipeline.js run \
|
||
--manifest ./output/{account}_XXXXXXXX_001/manifest.json \
|
||
--phase images
|
||
|
||
# MJ 带参考图(需先上传 OSS)
|
||
node scripts/oss-upload.js ./references/ref1.png
|
||
node scripts/mj-image-generator.js "prompt --sref URL --sw 200" -o ./output -a 9:16
|
||
|
||
# Gemini 纯文生图(无参考图时)
|
||
node scripts/gemini-image-generator.js generate "prompt" -o ./output -r 9:16
|
||
```
|
||
|
||
## 质量检查
|
||
|
||
- 风格与参考图一致
|
||
- 画幅比例正确(9:16/16:9)
|
||
- 无文字/水印/字幕覆盖
|
||
- 主体清晰,构图留白(底部 1/4 给字幕)
|
||
- manifest.json 与实际文件一一对应
|