【AIGC-图片生成视频系列-3】AI视频随心而动:MotionCtrl的相机运动控制和物体运动控制

最近,「单张图片生成视频」相关工作很多,但运动控制的准确性依旧是个挑战,包括相机运动的控制以及物体运动控制。

然,MotionCtrl 横空出世。

一. 项目简介

MotionCtrl——一个相机运动控制、物体运动控制的视频工具,由国内ARC实验室、腾讯PCG、香港大学、腾讯人工智能实验室、清华大学、 上海人工智能实验室、广东工业大学的团队成员共同研究发布。

代码开源。

项目及演示:MotionCtrl

论文:https://arxiv.org/pdf/2312.03641.pdf

GitHub - TencentARC/MotionCtrlGitHub:GitHub - TencentARC/MotionCtrl

在线演示:https://huggingface.co/spaces/TencentARC/MotionCtrl

二. 主要贡献

  • MotionCtrl 提出一个用于视频生成的统一且灵活的运动控制方法,可以实现独立有效地管理生成视频中的相机运动和物体运动。
  • MotionCtrl可以部署在LVDM [1] / VideoCrafter1 [2](LVDM的改进版本),AnimateDiff [3]上以及SVD [4]。
  • MotionCtrl 能够指导视频生成模型在给定一系列相机姿势的情况下 创建具有复杂相机运动的视频。
  • MotionCtrl 可以指导视频生成模型生成具有特定对象运动的视频,提供对象轨迹。
  • 这些结果只需一个统一训练的模型即可生成。

三. 摘要

通常,视频中的运动主要包括由相机运动引起的相机运动和由物体运动引起的物体运动。准确控制相机和物体运动对于视频生成至关重要。

然而,现有的工作要么主要关注一种运动类型,要么没有明确区分两者,限制了它们的控制能力和多样性。

因此,MotionCtrl提出一种用于视频生成的统一且灵活的运动控制方法,旨在有效且独立地控制相机和物体运动。

MotionCtrl的架构和训练策略经过精心设计,考虑到相机运动、物体运动和不完美训练数据的固有属性。

与之前的方法相比,MotionCtrl具有三个主要优点:

1)它可以有效且独立地控制相机运动和物体运动,从而实现更细粒度的运动控制,并促进两种运动的灵活多样的组合。

2)它的运动条件由相机位姿和轨迹决定,它们与外观无关,并且对生成视频中对象的外观或形状的影响最小。

3)它是一个相对通用的模型,经过训练后可以适应各种相机姿势和轨迹。进行了大量的定性和定量实验来证明 MotionCtrl 相对于现有方法的优越性。

四. 实现方法和管线

MotionCtrl 使用相机运动控制模块 (CMCM) 和物体运动控制模块 (OMCM) 扩展了 LVDM 的去噪 U-Net 结构。如图 (b) 所示,CMCM 将相机姿态序列RT与 LVDM 的时序transformer集成在一起。

具体方法是将RT附加到第二个自注意力模块的输入,并应用定制的轻量级全连接层来提取相机姿态特征以进行后续处理。OMCM 利用卷积层和下采样从Trajs中导出多尺度特征,这些特征在空间上合并到 LVDM 的卷积层中以指导对象运动。

进一步,给出一个文本提示,LVDM 从与prompt相对应的噪声中生成视频,并且生成视频的背景和物体运动反映了指定的相机姿势和轨迹。

五. 基于 LVDM [1] / VideoCrafter1 [2]的结果

值得注意的是,所有结果,包括相机运动、物体运动以及这两种运动的组合的结果,都是通过一个统一的训练模型获得的。

(A) 相机运动控制

(a) MotionCtrl 生成具有复杂相机运动的视频。

(b) MotionCtrl 使用8 种基本相机动作生成视频。

(c) MotionCtrl可以细粒度地调整生成视频的摄像机运动。

(B) 物体运动控制

MotionCtrl在给定单个或多个对象轨迹的情况下生成具有特定对象运动的视频。

(C) 相机+物体运动控制

MotionCtrl可以同时控制相机和物体的运动。

MotionCtrl 生成的视频中的摄像机或对象运动与参考视频或给定轨迹完全一致,同时保持自然的外观

(D) 与VideoComposer的比较[5]

六. 基于 AnimateDiff [3]的结果

值得注意的是,所有的结果,包括相机运动和物体运动的结果,都是通过一个统一的训练模型获得的。

(A) 相机运动控制

(a) 有8 种基本相机运动的结果。

(b) 存在以不同速度放大和缩小的结果。

(b) 存在复杂相机运动的结果。

(B) 物体运动控制

特定物体运动的结果。

参考

[1] Yingqing He, Tianyu Yang, Yong Zhang, Ying Shan, and Qifeng Chen. Latent video diffusion models for high-fidelity long video generation. arXiv preprint arXiv:2211.13221, 2023.

[2] Chen H, Xia M, He Y, et al. Videocrafter1: Open diffusion models for high-quality video generation[J]. arXiv preprint arXiv:2310.19512, 2023.

[3] Yuwei Guo, Ceyuan Yang, Anyi Rao, Yaohui Wang, Yu Qiao, Dahua Lin, and Bo Dai. Animatediff: Animate your personalized text-to-image diffusion models without specific tuning. arXiv preprint arXiv:2307.04725, 2023.

[4] Blattmann A, Dockhorn T, Kulal S, et al. Stable Video Diffusion: Scaling Latent Video Diffusion Models to Large Datasets[J]. arXiv preprint arXiv:2311.15127, 2023.

[5] Xiang Wang, Hangjie Yuan, Shiwei Zhang, Dayou Chen, Jiuniu Wang, Yingya Zhang, Yujun Shen, Deli Zhao, and Jingren Zhou. Videocomposer: Compositional video synthesis with motion controllability. arXiv preprint arXiv:2306.02018, 2023.


欢迎加入AI杰克王的免费知识星球,海量干货等着你,一起探讨学习AIGC!

移步公众号 「AI杰克王」,更多干货

喜欢的话就点个【赞】呗,您的鼓励和认可是我继续创作的动力。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/280489.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[C#]opencvsharp进行图像拼接普通拼接stitch算法拼接

介绍: opencvsharp进行图像拼一般有2种方式:一种是传统方法将2个图片上下或者左右拼接,还有一个方法就是融合拼接,stitch拼接就是一种非常好的算法。opencv里面已经有stitch拼接算法因此我们很容易进行拼接。 效果: …

二分查找(非朴素)--在排序数组中查找元素的第一个和最后一个位置

个人主页:Lei宝啊 愿所有美好如期而遇 目录 本题链接 输入描述 输出描述 算法分析 1.算法一:暴力求解 2.算法二:朴素二分算法 3.算法三:二分查找左右端点 3.1查找左端点 3.1.1细节一:循环条件 3.1.2细节二…

【前端基础】——原型与原型链详解,看一篇即可【图文版】

前言 本文旨在通过图文的方式,一步步回顾原型链的整个流程是如何运作的,如果你刚好在电脑旁边,不妨跟着我的思路,一起走一遍敲一遍代码流程,你会发现原型链并没有你想的那么复杂。 new关键字 我们先看这一个代码&am…

华锐三维云展平台 | VR在线展览云平台提供定制化虚拟展厅制作工具

随着科技的飞速发展,互联网技术的不断革新,广州华锐互动顺应时代需求,开发了VR在线展览云平台,用户可以在平台上自主创建属于自己的3D展厅。VR在线展览云平台正改变着传统展览行业的模式,为参展者提供更高效、更便捷、…

vue3中怎么巧妙的去运用jsx?

文章目录 概要JSX / TSX?安装配置封装JsxRender.vue使用JsxRender.vue怎么巧妙的去使用它?Demo下载 概要 我们都知道vue3是支持用jsx/tsx,但是好像从来都没有人告诉我们应该怎么运用到项目当中,下面是我觉得不错的一种使用方式,分享给大家…

二级路由的配置以及注意项

二级路由 比如说LayOut组件是父亲,LayOut和ArtComp是儿子,那我们怎么给儿子配路由呢? 1、首先在router下的index.js导入组件,配置规则,详细如下 // 导入路由相关组件 import LayOut from /views/LayOut import UserC…

IntelliJ IDEA常用快捷键

【1】创建内容(新建):altinsert 【2】main方法:psvm 【3】输出语句:sout 【4】复制行:ctrld 【5】删除行:ctrly(很多编辑器ctrly是前进操作,如果选择 Delete Line&…

C++内联函数与引用(超详细)

文章目录 前言一、内联函数1.为什么会存在内联函数2.什么是内联函数3.内联函数注意事项 二、引用1.什么是引用2.引用的特性3.常引用4.引用使用场景5.引用与指针 总结 前言 一、内联函数 1.为什么会存在内联函数 🧐🧐首先我们介绍内联函数之前&#xf…

NVMe over Fabrics:概念、应用和实现

对于大部分人来说,NVMe over Fabrics(简称NVMf)还是个新东西,因为其第一个正式版本的协议在今年6月份才发布。但是这并不影响人们对NVMf的关注,因为这项依托于NVMe的技术很可能继续改变存储市场格局。 NVMf的贡献在于…

USB -- STM32F103复合设备(HID+MassStorage)传输讲解(十)

目录 链接快速定位 前沿 1 描述符讲解 1.1 设备描述符 1.2 配置描述符 1.3 接口描述符 1.4 功能描述符 1.5 端点描述符 1.6 字符串描述符 1.7 报告描述符 2 运行演示 链接快速定位 USB -- 初识USB协议(一) 源码下载请参考链接:…

vivado CDC约束-“设置总线倾斜”对话框

“设置总线倾斜”对话框 在AMD Vivado™ IDE中,可以通过多种方式设置总线偏斜约束: •通过时间约束编辑器。选择窗口 → 时间限制 → 断言 → 设置总线倾斜。从“时序约束编辑器”中,可以添加、删除或修改总线扭曲约束。 注意&#…

【VSCode】关闭双击shift出现搜索

原因 有时候总是手滑按两下shift,每次都会弹出如下图的搜索框,导致很不方便 解决办法 找到该文件 C:\Users\admin\.vscode\extensions\k--kato.intellij-idea-keybindings-1.5.12\package.json(admin是自己的用户名) 然后关键字…

【MySQL视图特性】

目录: 前言视图基本使用创建视图查看视图内容修改内容测试删除视图 视图规则和限制 前言 剑指offer:一年又12天 视图 视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图也是带有名称的列和行内容,对视图内容的…

Java集合/泛型篇----第二篇

系列文章目录 文章目录 系列文章目录前言一、说说List,Set,Map三者的区别二、Array与ArrayList有什么不一样?三、Map有什么特点四、集合类存放于 Java.util 包中, 主要有几 种接口前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。…

系列四、Eureka自我保护

一、Eureka自我保护 1.1、故障现象 保护模式主要用于一组客户端和Eureka Server之间存在网络分区场景下的保护。一旦进入保护模式,Eureka Server将会尝试保护其服务注册表中的信息,不再删除服务注册表中的数据,也就是不会注销任何微服务。如…

学生信息管理系统winform+sqlserver

学生信息管理系统winformsqlserver Winform作为一个强大的桌面应用程序开发工具,具有丰富的图形化界面编程组件,可以快速构建出用户友好的界面。使用这个工具,我能够轻松设计出适合学生信息管理系统的各类窗体,比如学生信息录入窗…

------- 计算机网络基础

1.1概述 是什么? 答出独立计算机通信线路连接实现资源共享 计算机网络组成 从组成部分看: 硬件软件协议 从工作方式看: 边缘部分和核心部分 从功能组成看: 通信子网和资源子网 计算机网络性能指标 速率是指数据传输的物理速度,吞吐量是指实际的数据传输…

Redis:原理速成+项目实战——Redis的Java客户端

👨‍🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:Redis:原理速成项目实战——Redis常见命令(数据结构、常见命令总结) 📚订阅专栏&…

Qt Creator可视化交互界面exe快速入门5

上一期介绍了加法计算器,本期介绍QObject定时器。 首先一样先建个工程,比如我这项目名为QObject 本期的任务就是制作图片在界面上显示,然后每秒定时切换,点击另一个暂停按钮,可以定格当前图片,即取消定时切换功能。 显示图片的我们可以使用显示里面的label 这个用于显示…

STM32+Codesys工业软件PLC解决方案

工业控制系统在现代制造和自动化领域扮演着关键角色, 基于IEC 61131-3 标准的控制器编程开发软件平台CODESYS,适用于多种行业的控制系统的开发,使用户方便快捷地对自动化工程进行编程和配置,完成项目开发、软件测试和应用调试。 本次STM32联合合作伙伴C…