❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

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

原文链接:<https://mp.weixin.qq.com/s/kOqB70Fx6bPwuEY9WhwkuQ>


🚀 快速阅读

  1. 功能:DiTCtrl 能够处理多个文本提示,生成连贯的视频内容。
  2. 技术:基于多模态扩散变换器(MM-DiT)架构,采用 KV 共享和潜在混合策略。
  3. 应用:在电影制作、游戏开发、广告行业等多个领域有广泛应用。

正文(附运行示例)

DiTCtrl 是什么

DiTCtrl:腾讯推出多提示视频生成方法,通过多个提示生成连贯的视频内容,确保内容与提示一致_ide

DiTCtrl 是由香港中文大学和腾讯等机构联合推出的一种多提示视频生成方法,基于多模态扩散变换器(MM-DiT)架构。它能够在无需额外训练的情况下,实现多个文本提示之间的连贯视频生成,并保持内容和运动的一致性。

DiTCtrl 通过分析 MM-DiT 的注意力机制,采用 KV 共享和潜在混合策略,实现不同提示间的平滑过渡,提升视频生成的连贯性和自然度。在新基准 MPVBench 上,DiTCtrl 在保持计算效率的同时,取得了最先进的性能,标志着多提示视频生成技术的重要进展。

DiTCtrl 的主要功能

  • 多提示视频生成:DiTCtrl 能处理多个文本提示,生成连贯的视频内容,对于反映现实世界中动态、多动作场景尤为重要。
  • 无需额外训练:与传统视频生成模型不同,DiTCtrl 无需额外的训练数据或计算资源即可生成视频,实现零样本(zero-shot)的多提示视频生成。
  • 平滑过渡:DiTCtrl 能在不同提示的视频片段之间实现平滑过渡,保持视频内容的连贯性和视觉一致性。
  • 精确语义控制:分析和基于 MM-DiT 的注意力机制,精确控制视频内容,确保生成的视频与文本提示紧密对应。

DiTCtrl 的技术原理

  • MM-DiT 架构:基于多模态扩散变换器(MM-DiT)架构,将文本和视频映射到统一序列进行注意力计算,有效处理多模态数据。
  • 注意力机制分析:首次分析 MM-DiT 的 3D 全注意力机制,发现其与 UNet 类扩散模型中的交叉/自注意力模块相似,为精确的语义控制提供基础。
  • KV 共享机制:采用键值(KV)共享机制,支持在不同提示的视频片段之间共享注意力信息,保持关键对象的语义一致性。
  • 潜在混合策略:为实现视频片段间的平滑过渡,DiTCtrl 用潜在混合策略,基于在相邻视频片段的重叠区域应用位置依赖的权重函数,实现不同语义片段间的平滑过渡。
  • 掩码引导的注意力融合:提取特定对象的注意力掩码,并用掩码引导注意力融合,生成新提示的注意力特征,实现不同提示间的一致性。
  • MPVBench 基准:为评估多提示视频生成的性能,引入 MPVBench 基准,包含多种过渡类型和专门的评估指标。

如何运行 DiTCtrl

1. 环境设置

首先,确保你的环境配置正确。以下是设置环境的步骤:

cd DiTCtrl

conda create -n ditctrl python=3.10
conda activate ditctrl

pip install torch==2.4.1 torchvision==0.19.1 torchaudio==2.4.1 --index-url https://download.pytorch.org/whl/cu121

pip install -r requirements.txt

conda install https://anaconda.org/xformers/xformers/0.0.28.post1/download/linux-64/xformers-0.0.28.post1-py310_cu12.1.0_pyt2.4.1.tar.bz2

2. 下载模型权重

接下来,下载 CogVideoX-2B 模型权重:

cd sat
mkdir CogVideoX-2b-sat
cd CogVideoX-2b-sat
wget https://cloud.tsinghua.edu.cn/f/fdba7608a49c463ba754/?dl=1
mv 'index.html?dl=1' vae.zip
unzip vae.zip
wget https://cloud.tsinghua.edu.cn/f/556a3e1329e74f1bac45/?dl=1
mv 'index.html?dl=1' transformer.zip
unzip transformer.zip

3. 运行示例

你可以通过以下命令运行 DiTCtrl 的不同功能:

# 多提示视频生成
bash run_multi_prompt.sh

# 单提示视频生成
bash run_single_prompt.sh

# 视频编辑
bash run_edit_video.sh

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

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