DragAnything:视频PS来了!开源AI控制器让视频「指哪动哪」:拖拽任意物体轨迹,多对象独立运动一键生成

本文涉及的产品
视觉智能开放平台,视频通用资源包5000点
视觉智能开放平台,图像通用资源包5000点
视觉智能开放平台,分割抠图1万点
简介: DragAnything 是快手联合浙江大学和新加坡国立大学推出的基于实体表示的可控视频生成方法,支持多实体独立运动控制、高质量视频生成,并在 FID、FVD 和用户研究等评估指标上达到最佳性能。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🎥 「视频剪辑师集体震惊!快手把AI变成「时空橡皮擦」:画条线就让云朵倒流、汽车飞天」
大家好,我是蚝油菜花。当别人还在用AI生成15秒短视频时,快手联合浙大实验室直接改写了视频创作规则书——

你是否经历过这些崩溃瞬间?

  • ✂️ 想调整视频里汽车行驶路线,却要重拍整个场景
  • 🎞️ 多物体运动不同步,手动K帧到天亮
  • 🌆 背景僵硬如贴图,毫无自然动态效果...

这就是 DragAnything 要终结的时代!这个基于Stable Video Diffusion的框架,只需拖动物体画轨迹:

  • ✅ 前景角色跳街舞,背景霓虹自动流动
  • ✅ 多物体独立控制,汽车转弯时飞鸟同步变向
  • ✅ 相机运镜智能跟随,商业级大片5分钟生成

接下来我们将深度解析:如何用2D高斯分布+实体表征技术,实现「所拖即所得」的次世代创作?(文末含Colab实战教程)

🚀 快速阅读

DragAnything 是一种基于实体表示的可控视频生成方法,能够实现对视频中任意物体的精确运动控制。

  1. 核心功能:支持前景、背景及相机运动的灵活控制,生成高质量视频内容。
  2. 技术原理:利用扩散模型的潜在特征表示视频中的每个实体,结合用户绘制的轨迹进行运动控制。

DragAnything 是什么

DragAnything

DragAnything 是由快手联合浙江大学和新加坡国立大学 Show Lab 推出的一种基于实体表示的可控视频生成方法。它通过简单的轨迹输入,实现了对视频中任意物体的精确运动控制。DragAnything 克服了传统方法中单纯拖动像素点无法精确控制物体运动的局限性,提供了用户友好的交互方式,支持前景、背景及相机运动的灵活控制,在 FID、FVD 和用户研究等评估指标上达到了新的最佳性能。

DragAnything 的核心在于其创新的实体表示方法,能够从扩散模型的潜在特征中提取语义信息表征视频中的每个物体,将物体的语义特征与运动轨迹相结合,实现精确的实体级运动控制。这种方法不仅适用于前景物体,还能对背景和相机运动进行控制,大大提升了视频生成的质量和灵活性。

DragAnything 的主要功能

  • 实体级运动控制:对视频中的任何实体(包括前景和背景)进行精确的运动控制,不仅仅是像素级别的操作。
  • 多实体独立控制:支持同时对多个物体进行独立的运动控制,每个物体根据用户定义的轨迹进行不同的运动。
  • 用户友好的交互方式:用户基于简单的交互(如选择区域并拖动)实现复杂的运动控制,无需复杂的输入信号(如分割掩码或深度图)。
  • 相机运动控制:除控制视频中的物体外,DragAnything 还能实现相机的运动控制,如缩放和平移。
  • 高质量视频生成:在保持运动控制精度的同时,生成高质量的视频内容,适用于多种应用场景。

DragAnything 的技术原理

  • 实体表示:推出新的实体表示方法,从扩散模型的潜在特征中提取语义信息表征视频中的每个物体。将物体的语义特征与运动轨迹相结合,实现精确的实体级运动控制。
  • 2D 高斯表示:引入 2D 高斯表示,基于高斯分布对物体的中心区域赋予更高的权重,减少边缘像素的影响,实现更自然的运动控制。
  • 扩散模型:基于扩散模型架构(如 Stable Video Diffusion),用强大的生成能力和去噪能力生成高质量的视频内容。扩散模型基于逐步去除噪声重建视频帧,结合用户输入的运动轨迹和实体表示。
  • 轨迹引导的运动控制:用户基于绘制简单的轨迹定义物体的运动路径,DragAnything 将轨迹与实体表示相结合,生成符合用户意图的视频内容,避免直接操作像素点的局限性,实现更自然和精确的运动控制。
  • 损失函数与优化:在训练阶段,用带有掩码的均方误差(MSE)损失函数,专注于优化用户指定区域的运动控制,保持其他区域的生成质量。

如何运行 DragAnything

1. 安装依赖

git clone https://github.com/Showlab/DragAnything.git
cd DragAnything

conda create -n DragAnything python=3.8
conda activate DragAnything
pip install -r requirements.txt
AI 代码解读

2. 准备数据集

下载 VIPSegYoutube-VOS./data 目录。

3. 准备运动轨迹注释

你可以使用预处理的注释文件,或者使用 Co-Track 自己生成运动轨迹注释文件。

cd ./utils/co-tracker
pip install -e .
pip install matplotlib flow_vis tqdm tensorboard

mkdir -p checkpoints
cd checkpoints
wget https://huggingface.co/facebook/cotracker/resolve/main/cotracker2.pth
cd ..

# 修改对应的 video_path, ann_path, save_path 后运行
Generate_Trajectory_for_VIPSeg.sh
AI 代码解读

4. 可视化轨迹

cd .utils/
python vis_trajectory.py
AI 代码解读

5. 准备预训练模型

mkdir -p utils/pretrained_models
cd utils/pretrained_models

# 下载 ChilloutMix 模型
git-lfs clone https://huggingface.co/windwhinny/chilloutmix.git

# 下载 DragAnything 控制网络模型
mkdir -p model_out/DragAnything
cd model_out/DragAnything
git-lfs clone https://huggingface.co/weijiawu/DragAnything
AI 代码解读

6. 运行推理

python demo.py
AI 代码解读

或者使用 Gradio 进行交互式推理:

cd ./script
# 下载 SAM 模型权重
python gradio_run.py
AI 代码解读

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发感兴趣,我会每日分享大模型与 AI 领域的开源项目和应用,提供运行实例和实用教程,帮助你快速上手AI技术!

⚗️ 微信公众号|搜一搜:蚝油菜花 🥦

目录
打赏
0
10
10
0
403
分享
相关文章
揭秘8.3k star 开源神器 VoiceCraft 用AI革新有声内容创作,只需几秒录音
VoiceCraft 是一款开源语音编辑与文本转语音(TTS)工具,仅需几秒录音即可实现语音克隆、插入、删除、替换等操作,支持零样本编辑和高自然度语音生成。适用于播客、短视频、有声书等内容创作场景,具备本地部署能力,已在 GitHub 获得 8.3k 星标。
114 0
分享开源库:AI驱动的JavaScript反编译,针对混淆和压缩的代码
这是一个智能JavaScript反混淆与代码分析工具,通过AST转换和AI深度分析,自动还原变量名、识别依赖库、生成可视化控制流图,并支持多格式导出,提升代码理解与审计效率。访问 [jsunpack.tech](https://www.jsunpack.tech/) 即可在线体验。
213 0
阿里云正式开源 LoongSuite:打造 AI 时代的高性能低成本可观测采集套件
AI Agent技术架构的演进正在重塑软件工程实践方式。开发者可通过智能编程助手提升效率,也可依托专业框架构建智能体系统。技术生态呈现多维度发展,涵盖高代码与低代码方案,并支持Java和Python等多语言。新型开发范式如AutoGen和LangChain降低了开发门槛。LoongSuite作为可观测采集套件,助力企业高效构建AI时代可观测体系,推动标准化数据规范,提升系统稳定性与运维效率。
这个开源的「AI + 低代码」开发平台绝了,Gitee上斩获 9.2K Star!
VTJ.PRO 是一款 AI 驱动的低代码开发平台,深度融合 Vue3 技术栈,支持可视化设计与源码级编辑双向自由切换。通过 AI 智能生成、代码修复、跨端输出等能力,大幅提升前端开发效率,实现设计即代码、代码即设计的高效工作流,适用于原型开发、项目重构等多种场景。平台完全开源,提供在线沙盒与本地部署,助力开发者兼顾开发速度与代码自由度。
154 0
百度搜索:蓝易云【Linux系统ps命令:查看正在运行的进程】
通过这些简洁的ps命令用法,你可以方便地查看Linux系统中正在运行的进程信息。
173 1
linux(三十一)系统信息命令ps查看系统进程
linux(三十一)系统信息命令ps查看系统进程
336 1
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
311 0
|
11月前
|
crash命令 —— ps
crash命令 —— ps

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等