技术深度解析
DragNUWA处于两个热门研究领域的交叉点:基于扩散模型的视频生成与交互式图像编辑。要理解其架构,我们首先需要认清挑战所在。像Stable Video Diffusion或AnimateDiff这样的视频生成模型,已经能够生成时间上连贯的片段,但精确控制特定物体的运动仍然是一个未解难题。文本提示过于粗糙——说“猫向左跳”并不能指定跳跃的弧线、速度或最终位置。DragNUWA通过引入一种新的条件信号——一组控制点及其目标轨迹——来解决这一问题。
架构概览
该框架基于潜在扩散模型(LDM)主干,与Stable Diffusion类似。关键修改包括:
1. 光流编码器:一个独立的网络(通常是预训练的RAFT或其轻量变体)从输入视频中估计密集光流。该光流被编码为特征图,通过交叉注意力或特征拼接注入到U-Net解码器中。
2. 带拖拽令牌的空间注意力:DragNUWA没有使用标准的自注意力机制,而是采用了一种改进的注意力层,其中用户指定的拖拽点被表示为可学习的“拖拽令牌”。这些令牌关注帧的空间特征,有效地告诉模型“这个像素应该移动到那个位置”。
3. 多阶段训练:作者采用了三阶段课程学习策略:
- 阶段1:在大规模数据集(如WebVid-10M)上训练文本到视频的LDM,以学习基本的运动先验。
- 阶段2:冻结基础模型,使用视频帧及其真实光流的配对数据训练光流编码器。
- 阶段3:使用拖拽监督对整个模型进行微调,其中合成拖拽轨迹是通过扰动现有视频中的物体关键点生成的。
不足之处
虽然该方法设计精巧,但当前实现存在若干局限。首先,光流编码器带来了显著的计算开销——据报道,在A100 GPU上推理512x512分辨率、16帧的视频需要超过2分钟。其次,拖拽控制仅限于稀疏关键点;复杂形变(例如飘动的旗帜)处理效果不佳。第三,模型在遮挡场景下表现挣扎:如果被拖拽的物体经过另一个物体后方,结果常常出现重影或物体突然消失。
与替代方案的比较
| 特性 | DragNUWA | DragGAN(图像) | Runway Gen-3 | Pika Labs |
|---|---|---|---|---|
| 输入模态 | 视频 + 拖拽点 | 图像 + 拖拽点 | 文本提示 | 文本提示 |
| 运动控制 | 显式轨迹 | 隐式(通过优化) | 隐式(文本) | 隐式(文本) |
| 时间一致性 | 良好(光流引导) | 不适用(单张图像) | 优秀 | 良好 |
| 推理速度 | 约2分钟/16帧 | 约10秒/张图像 | 约30秒/5秒片段 | 约45秒/3秒片段 |
| 预训练模型可用 | 否 | 是 | 是(API) | 是(API) |
| 开源 | 部分(仅代码) | 是 | 否 | 否 |
数据要点: DragNUWA提供了最直接的运动控制,但代价是严重的速度惩罚,且没有可用的模型。闭源替代方案(Runway、Pika)优先考虑速度和打磨程度,牺牲了精细控制。这种权衡定义了当前的市场空白。
相关开源仓库
- ProjectNUWA/DragNUWA(⭐720):本文的主题。代码可用,但无权重文件。最近的提交集中在文档上,而非模型发布。
- Stability-AI/generative-models(⭐25k+):许多视频扩散模型的基础,包括DragNUWA可能使用的模型。
- NVlabs/DragGAN(⭐35k+):启发DragNUWA的图像版前身。功能完整,带有预训练模型。
关键玩家与案例研究
DragNUWA项目由来自微软亚洲研究院(MSRA) 的研究人员领导,该实验室以计算机视觉和自然语言处理领域的基础性工作而闻名。团队成员包括Yifan Jiang、Yue Wu和Ziwei Liu等人,他们此前在可控生成领域已有发表。MSRA的策略是典型的:发布前沿研究以建立知识产权并吸引人才,而产品化则留给内部团队(如Azure AI)或外部合作伙伴。
竞品对比
| 产品 | 公司 | 方法 | 优势 | 劣势 |
|---|---|---|---|---|
| Runway Gen-3 | Runway ML | 扩散Transformer | 高质量、快速、界面精美 | 无拖拽控制、订阅费用 |
| Pika Labs | Pika | 扩散 + 运动模块 | 简单的文本到视频、适合社交媒体 | 编辑能力有限、无关键帧控制 |
| ComfyUI + AnimateDiff | 社区 | 模块化扩散 | 完全控制、免费 | 学习曲线陡峭、无拖拽界面 |
| DragNUWA | MSRA | 光流 + 拖拽令牌 | 直接运动控制 | 无模型、速度慢、仅限研究 |
案例研究:独立动画师
设想一位动态图形设计师,想要制作一个标志飞过屏幕的动画。使用c