MotionCtrl是什么
MotionCtrl是由来自腾讯、香港大学、上海AI实验室、清华大学、广东工业大学等机构的研究人员推出的一个为视频生成模型设计的统一且灵活的运动控制器,能够独立地控制视频中的相机运动和物体运动视角。该系统由两个主要模块组成:相机运动控制模块和物体运动控制模块,可以与潜在视频扩散模型协同工作,以实现对生成视频中运动视角的精确控制。
MotionCtrl的官网入口
- 官方项目主页:https://wzhouxiff.github.io/projects/MotionCtrl/
- Arxiv研究论文:https://arxiv.org/pdf/2312.03641.pdf
- GitHub代码库:https://github.com/TencentARC/MotionCtrl
- Hugging Face(MotionCtrl + VideoCrafter):https://huggingface.co/spaces/TencentARC/MotionCtrl
- Hugging Face(MotionCtrl + SVD):https://huggingface.co/spaces/TencentARC/MotionCtrl_SVD
MotionCtrl的功能特色
- 搭配模型生成视频:MotionCtrl能够搭配视频生成模型(如VideoCrafter、Stable Video Diffusion)根据文本提示生成视频,这些视频不仅包含静态图像,还包括连贯和流畅的运动效果。
- 控制相机运动:用户可以指定相机在视频中的运动方式,例如平移(左右、上下移动)、缩放(放大或缩小)、旋转(顺时针或逆时针转动)等,MotionCtrl能够根据这些指令生成相应的视频。
- 控制物体运动:MotionCtrl能够控制视频中物体的运动轨迹,比如物体在场景中的移动路径、速度和方向,使得物体的运动与文本描述或用户指定的轨迹相匹配。
- 组合运动控制:MotionCtrl不仅能够独立控制相机和物体运动,还能够同时控制两者,实现复杂的运动效果,如相机在追踪物体的同时进行平移或旋转。
- 适应多种相机姿态和轨迹:经过训练后,MotionCtrl能够适应各种不同的相机姿态和物体运动轨迹,无需为每种新情况重新训练模型。
MotionCtrl的工作原理
MotionCtrl的工作原理主要基于两个核心模块:相机运动控制模块(CMCM)和物体运动控制模块(OMCM),以及它们与潜在视频扩散模型(LVDM)的协同工作。
以下是MotionCtrl工作原理的详细步骤:
- 相机运动控制(CMCM):
- CMCM接收一系列相机姿态(包括旋转矩阵和位移矩阵),这些姿态描述了相机在视频中的运动路径。
- CMCM通过与LVDM中的时间变换器(temporal transformers)交互,将相机姿态信息融合到视频生成过程中。
- 在时间变换器的第二个自注意力模块中,相机姿态序列被扩展并与时间步信息结合,然后通过全连接层处理,以便在后续的时间变换器中使用。
- 这样,生成的视频将遵循指定的相机运动,如平移、缩放和旋转,从而实现对全局场景运动的控制。
- 物体运动控制(OMCM):
- OMCM负责处理视频中物体的运动轨迹,这些轨迹通常表示为物体在每一帧中的空间位置。
- OMCM利用卷积层和下采样操作从轨迹中提取多尺度特征,并将这些特征空间地融合到LVDM的卷积层中。
- 通过这种方式,OMCM能够指示视频中物体在每一帧中的位置,实现对物体局部运动的控制。
- 训练策略:
- MotionCtrl的训练分为两个阶段。首先,使用Realestate10K数据集训练CMCM,这个数据集包含了视频剪辑和相机姿态注释,但缺少物体运动轨迹。
- 然后,使用WebVid数据集和通过ParticleSfM算法合成的物体运动轨迹来训练OMCM。这个数据集包含了视频剪辑、标题和物体运动轨迹。
- 在训练过程中,CMCM和OMCM作为适配器模块(adapter-like modules)被添加到预训练的LVDM模型上,允许它们独立训练,而不影响LVDM的其他部分。
- 视频生成:
- 在视频生成阶段,MotionCtrl根据文本提示,结合相机姿态和物体运动轨迹,生成与文本描述相符的视频。
- LVDM首先从噪声中生成视频的潜在表示,然后CMCM和OMCM根据给定的运动条件调整视频的全局和局部运动,最终生成具有指定运动效果的视频。
© 版权声明
本站文章版权归AI工具集所有,未经允许禁止任何形式的转载。
相关文章
暂无评论...