# 图生视频示例

本示例展示如何将静态图像转换为动态视频。

## 场景描述

用户有一张角色的静态图像，想要让角色动起来（例如：眨眼、微笑、挥手）。

## 执行步骤

### 步骤 1: 生成高质量静态图像

```python
# 首先生成一张高质量的角色图像
image_result = generate_image(
    prompt="艾莉丝，18岁，金色长发，蓝色眼睛，魔法学院制服，平静的表情，站立姿势，动漫风格，高质量，精细细节，8K分辨率",
    model="wan2.6-image",
    size="9:16",
    steps=50  # 使用高质量参数
)

image_url = image_result["image_url"]
```

**关键点**：
- 使用高质量参数（steps=50）
- 选择清晰的姿势和表情
- 避免过于复杂的背景

### 步骤 2: 设计视频动作

**动作描述要点**：
- 明确描述具体动作
- 描述动作的速度和幅度
- 添加镜头运动描述
- 保持与原图风格一致

```python
video_prompt = """
艾莉丝微笑着向镜头挥手，
头发随着动作轻轻飘动，
眼睛闪烁着光芒，
镜头保持稳定，
温暖的光线，柔和的氛围，
流畅的动作，自然的过渡
"""
```

### 步骤 3: 调用图生视频工具

```python
video_result = generate_video(
    prompt=video_prompt,
    model="wan2.6-video",
    duration=6,
    size="9:16",
    image_url=image_url  # 使用步骤 1 生成的图像
)

video_url = video_result["video_url"]
```

### 步骤 4: 向用户展示结果

```
已将静态图像转换为动态视频：

原始图像：[image_url]
生成视频：[video_url]

视频时长：6 秒
分辨率：768x1344 (9:16)
动作：微笑挥手，头发飘动
```

## 工作流模式

### 模式 1: 使用工作流链（推荐）

```python
# 使用 create_image_to_video_workflow 自动创建工作流
workflow = create_image_to_video_workflow(
    image_prompt="艾莉丝，18岁，金色长发，蓝色眼睛，魔法学院制服，平静的表情，站立姿势，动漫风格，高质量",
    video_prompt="艾莉丝微笑着向镜头挥手，头发随着动作轻轻飘动，流畅的动作",
    style="anime"
)
```

**优点**：
- 自动管理图像和视频的关联
- 可视化工作流
- 便于后续修改和复用

### 模式 2: 手动两步生成

```python
# 步骤 1: 生成图像
image_result = generate_image(...)

# 步骤 2: 使用图像生成视频
video_result = generate_video(
    prompt=video_prompt,
    image_url=image_result["image_url"]
)
```

**优点**：
- 更灵活的控制
- 可以使用已有的图像
- 适合简单场景

## 动作类型示例

### 1. 微表情动作

```python
video_prompt = """
角色保持姿势不变，
眼睛缓慢眨动，
嘴角微微上扬，
头部轻微转动，
自然的呼吸动作
"""
```

**适用场景**：肖像、头像、角色展示

### 2. 挥手动作

```python
video_prompt = """
角色向镜头挥手，
手臂从下向上摆动，
手掌张开，
身体轻微摇摆，
头发随动作飘动
"""
```

**适用场景**：打招呼、告别、互动

### 3. 转身动作

```python
video_prompt = """
角色缓慢转身，
从正面转向侧面，
头发和衣服随转身飘动，
镜头保持固定，
流畅的旋转动作
"""
```

**适用场景**：角色展示、多角度展示

### 4. 走路动作

```python
video_prompt = """
角色向前走来，
自然的步伐，
手臂自然摆动，
镜头缓慢后退，
保持角色在画面中心
"""
```

**适用场景**：角色介绍、场景进入

## 最佳实践

### 1. 图像质量要求

✅ **好的起始图像**：
- 高分辨率（steps >= 40）
- 清晰的主体
- 简洁的背景
- 稳定的姿势

❌ **不好的起始图像**：
- 低分辨率
- 模糊或变形
- 复杂混乱的背景
- 不稳定的姿势

### 2. 动作描述要点

✅ **好的动作描述**：
```
角色微笑着挥手，
手臂从下向上摆动，
头发轻轻飘动，
流畅自然的动作
```

❌ **不好的动作描述**：
```
角色做各种动作
```

### 3. 风格一致性

**确保图像和视频风格一致**：
- 使用相同的艺术风格关键词
- 保持光照和色调一致
- 避免风格突变

### 4. 时长选择

- **5 秒**：快速动作（眨眼、点头）
- **6 秒**：标准动作（挥手、微笑）- 推荐
- **10 秒**：复杂动作（转身、走路）

## 常见问题

**Q: 生成的视频和原图差异太大怎么办？**
A: 在视频提示词中明确描述"保持原图风格"，并减少动作幅度。

**Q: 视频运动不自然怎么办？**
A: 添加"流畅运动，自然过渡"等关键词，避免描述过于复杂的动作。

**Q: 可以让角色做复杂动作吗？**
A: 建议从简单动作开始（眨眼、微笑），复杂动作（跳舞、打斗）可能效果不佳。

**Q: 可以使用别人的图像吗？**
A: 可以，只要提供图像 URL，但要确保图像质量足够高。

## 性能参考

- **图像生成时间**：15-25 秒（steps=50）
- **视频生成时间**：40-80 秒（6 秒视频）
- **总耗时**：约 60-105 秒
- **Token 消耗**：约 7000 tokens

## 扩展应用

### 应用 1: 角色表情包

生成同一角色的多个表情动画：
1. 生成 1 张基础图像
2. 使用不同的动作提示词生成多个视频
3. 创建表情包集合

### 应用 2: 场景动画

为静态场景添加动态效果：
1. 生成场景图像
2. 添加环境动画（树叶摇曳、水流动）
3. 创建动态背景

### 应用 3: 产品展示

为产品图像添加展示动画：
1. 生成产品图像
2. 添加旋转或特写动画
3. 创建产品宣传视频
