做网站基本/安卓神级系统优化工具
转自:机器之心
动画视频生成这几天火了,这次 NUS、字节的新框架不仅效果自然流畅,还在视频保真度方面比其他方法强了一大截。
最近,阿里研究团队构建了一种名为 Animate Anyone 的方法,只需要一张人物照片,再配合骨骼动画引导,就能生成自然的动画视频。不过,这项研究的源代码还没有发布。
让钢铁侠动起来。
其实在 Animate Anyone 这篇论文出现在 arXiv 上的前一天,新加坡国立大学 Show 实验室和字节联合做了一项类似的研究。他们提出了一个基于扩散的框架 MagicAnimate,旨在增强时间一致性、忠实地保留参考图像并提升动画保真度。并且,MagicAnimate 项目是开源的,目前推理代码和 gradio 在线 demo 已经发布。
-
论文地址:https://arxiv.org/pdf/2311.16498.pdf
-
项目地址:https://showlab.github.io/magicanimate/
-
GitHub 地址:https://github.com/magic-research/magic-animate
为了实现上述目标,研究者首先开发了一个视频扩散模型来编码时间信息。接着为了保持跨帧的外观连贯性,他们引入了新颖的外观编码器来保留参考图像的复杂细节。利用这两个创新,研究者进一步使用简单的视频融合技术来保证长视频动画的平滑过渡。
实验结果表明,MagicAnimate 在两项基准测试上均优于基线方法。尤其在具有挑战性的 TikTok 跳舞数据集上,本文方法在视频保真度方面比最强基线方法高出 38%以上。
我们来看以下几个 TikTok 小姐姐的动态展示效果。
除了跳舞的 TikTok 小姐姐之外,还有「跑起来」的神奇女侠。
戴珍珠耳环的少女、蒙娜丽莎都做起了瑜伽。
除了单人,多人跳舞也能搞定。
与其他方法比较,效果高下立判。
接下来介绍 MagicAnimate 的方法和实验结果。
方法概览
给定参考图像 I_ref 和运动序列,其中 N 是帧数。MagicAnimate 旨在合成连续视频
。其中出现画面 I_ref,同时遵循运动序列
。现有基于扩散模型的框架独立处理每个帧,忽略了帧之间的时间一致性,从而导致生成的动画存在「闪烁」问题。
为了解决该问题,该研究通过将时间注意力(temporal attention)块合并到扩散主干网络中,来构建用于时间建模的视频扩散模型。
此外,现有工作使用 CLIP 编码器对参考图像进行编码,但该研究认为这种方法无法捕获复杂细节。因此,该研究提出了一种新型外观编码器(appearance encoder),将 I_ref 编码到外观嵌入 y_a 中,并以此为基础对模型进行调整。
MagicAnimate 的整体流程如下图 2 所示,首先使用外观编码器将参考图像嵌入到外观嵌入中,然后再将目标姿态序列传递到姿态 ControlNet中,以提取运动条件
。
在实践中,由于内存限制,MagicAnimate 以分段的方式处理整个视频。得益于时间建模和强大的外观编码,MagicAnimate 可以在很大程度上保持片段之间的时间和外观一致性。但各部分之间仍然存在细微的不连续性,为了缓解这种情况,研究团队利用简单的视频融合方法来提高过渡平滑度。
如图 2 所示,MagicAnimate 将整个视频分解为重叠的片段,并简单地对重叠帧的预测进行平均。最后,该研究还引入图像 - 视频联合训练策略,以进一步增强参考图像保留能力和单帧保真度。
实验及结果
实验部分,研究者在两个数据集评估了 MagicAnimate 的性能,分别是 TikTok 和 TED-talks。其中 TikTok 数据集包含了 350 个跳舞视频,TED-talks 包含 1,203 个提取自 YouTube 上 TED 演讲视频的片段。
首先看定量结果。下表 1 展示了两个数据集上 MagicAnimate 与基线方法的定量结果比较,其中表 1a 显示在 TikTok 数据集上,本文方法在 L1、PSNR、SSIM 和 LPIPS 等重建指标上超越了所有基线方法。
表 1b 显示在 TED-talks 数据集上,MagicAnimate 在视频保真度方面也更好,取得了最好的 FID-VID 分数(19.00)和 FVD 分数(131.51)。
再看定性结果。研究者在下图 3 展示了 MagicAnimate 与其他基线方法的定性比较。本文方法实现了更好的保真度,展现了更强的背景保留能力, 这要归功于从参考图像中提取细节信息的外观编码器。
研究者还评估了 MagicAnimate 的跨身份动画(Cross-identity animation),以及与 SOTA 基线方法的比较,即 DisCo 和 MRAA。具体来讲,他们从 TikTok 测试集中采样了两个 DensePose 运动序列,并使用这些序列对其他视频的参考图像进行动画处理。
下图 1 显示出 MRAA 无法泛化到包含大量不同姿态的驱动视频,而 DisCo 难以保留参考图像的细节。相比之下,本文方法忠实地为给定目标运动的参考图像设置动画,展示了其稳健性。
最后是消融实验。为了验证 MagicAnimate 中设计选择的有效性,研究者在 TikTok 数据集上进行了消融实验,包括下表 2 和下图 4 中有无时间建模、外观编码器、推理阶段视频融合以及图像 - 视频联合训练等。
MagicAnimate 的应用前景也很广。研究者表示,尽管仅接受了真实人类数据的训练,但它展现出了泛化到各种应用场景的能力,包括对未见过的领域数据进行动画处理、与文本 - 图像扩散模型的集成以及多人动画等。
更多细节请阅读原论文。
相关文章:

【动画视频生成】
转自:机器之心 动画视频生成这几天火了,这次 NUS、字节的新框架不仅效果自然流畅,还在视频保真度方面比其他方法强了一大截。 最近,阿里研究团队构建了一种名为 Animate Anyone 的方法,只需要一张人物照片࿰…...

《Spring Cloud学习笔记:微服务保护Sentinel》
Review 解决了服务拆分之后的服务治理问题:Nacos解决了服务治理问题OpenFeign解决了服务之间的远程调用问题网关与前端进行交互,基于网关的过滤器解决了登录校验的问题 流量控制:避免因为突发流量而导致的服务宕机。 隔离和降级:…...

解密负载均衡:如何平衡系统负载(下)
🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…...

go 源码解读 - sync.Mutex
sync.Mutex mutex简介mutex 方法源码标志位获取锁LocklockSlowUnlock怎么 调度 goroutineruntime 方法 mutex简介 mutex 是 一种实现互斥的同步原语。(go-version 1.21) (还涉及到Go运行时的内部机制)mutex 方法 Lock() 方法用于…...

机器学习系列--R语言随机森林进行生存分析(1)
随机森林(Breiman 2001a)(RF)是一种非参数统计方法,需要没有关于响应的协变关系的分布假设。RF是一种强大的、非线性的技术,通过拟合一组树来稳定预测精度模型估计。随机生存森林(RSF࿰…...
<JavaEE> TCP 的通信机制(四) -- 流量控制 和 拥塞控制
目录 TCP的通信机制的核心特性 五、流量控制 1)什么是“流量控制”? 2)如何做到“流量控制”? 3)“流量控制”的作用 六、拥塞控制 1)什么是“拥塞控制”? 2)如何做到“拥塞…...

智慧监控平台/AI智能视频EasyCVR接口调用编辑通道详细步骤
视频监控TSINGSEE青犀视频平台EasyCVR能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,在视频监控播放上,GB28181视频安防监控汇聚平台可支持1、4、9、16个画面窗口播放,可同时播放多路视频流,…...

Go语言实现KV存储系统:前言
文章目录 前言前提条件持久索引并发总结 前言 你好,我是醉墨居士,最近想做一些存储方面的东西玩玩,我第一时间就想到了能不能自己开发一个保存键值对的存储系统 我找了些资料,准备使用Go语言实现一下,想着有想法咱就…...

代码随想录刷题笔记(DAY1)
前言:因为学校的算法考试让我认识了卡哥,为了下学期冲击大厂实习的理想,我加入了卡哥的算法训练营,从今天开始我每天会更新自己的刷题笔记,与大家一起打卡,一起共勉! Day 1 01. 二分查找 &…...

Linux域名IP映射
本地域名IP映射 在Linux系统中,域名映射可以通过编辑/etc/hosts文件来实现。/etc/hosts文件用于将主机名映射到IP地址,从而实现本地域名解析。它通常被用于在没有DNS服务器的情况下,手动指定特定域名和IP地址的映射关系。 格式:…...

postman使用-03发送请求
文章目录 请求1.新建请求2.选择请求方式3.填写请求URL4.填写请求参数get请求参数在params中填写(填完后在url中会自动显示)post请求参数在body中填写,根据接口文档请求头里面的content-type选择body中的数据类型post请求参数为json-选择raw-选…...

【Spring实战】09 MyBatis Generator
文章目录 1. 依赖2. 配置文件3. 生成代码4. 详细介绍 generatorConfig.xml5. 代码详细总结 Spring MyBatis Generator 是 MyBatis 官方提供的一个强大的工具,它能够基于数据库表结构自动生成 MyBatis 持久层的代码,包括实体类、Mapper 接口和 XML 映射文…...

【自然语言处理】【大模型】 ΨPO:一个理解人类偏好学习的统一理论框架
一个理解人类偏好学习的统一理论框架 《A General Theoretical Paradiam to Understand Learning from Human Preferences》 论文地址:https://arxiv.org/pdf/2310.12036.pdf 相关博客 【自然语言处理】【大模型】 ΨPO:一个理解人类偏好学习的统一理论框…...

计算机网络——传输层(五)
前言: 最重要的网络层我们已经学习完了,下面让我们再往上一层,对网络层的上一层传输层进行一个学习与了解,学习网络层的基本概念和网络层中的TCP协议和UDP协议 目录 编辑一、传输层的概述: 1.传输层: …...

python3处理docx并flask显示
前言: 最近有需求处理docx文件,并讲内容显示到页面,对world进行在线的阅读,这样我这里就使用flaskDocument对docx文件进行处理并显示,下面直接上代码: Document处理: 首先下载Document的库文…...

Python:正则表达式速通,码上上手!
1前言 正则表达式(Regular Expression)是一种用来描述字符串模式的表达式。它是一种强大的文本匹配工具,可以用来搜索、替换和提取符合特定模式的文本。 正则表达式由普通字符(例如字母、数字、符号等)和元字符&#…...

centos7安装nginx并安装部署前端
目录: 一、安装nginx第一种方式(外网)第二种方式(内网) 二、配置前端项目三、Nginx相关命令 好久不用再次使用生疏,这次记录一下 一、安装nginx 第一种方式(外网) 1、下载nginx ng…...

Hive实战:统计总分与平均分
文章目录 一、实战概述二、提出任务三、完成任务(一)准备数据文件1、在虚拟机上创建文本文件2、将文本文件上传到HDFS指定目录 (二)实现步骤1、启动Hive Metastore服务2、启动Hive客户端3、创建Hive表,加载HDFS数据文件…...

Linux:不同计算机使用NFS共享资源
一,安装NFS文件系统 NFS即网络文件系统(network file system),它允许网络中的计算机之间通过网络共享资源。目前,NFS只用于在Linux和UNIX主机间共享文件系统。 #使用mount命令可以将远程主机的文件系统 安装到 本地: #将远程主机…...

leetcode贪心算法题总结(一)
此系列分三章来记录leetcode的有关贪心算法题解,题目我都会给出具体实现代码,如果看不懂的可以后台私信我。 本章目录 1.柠檬水找零2.将数组和减半的最少操作次数3.最大数4.摆动序列5.最长递增子序列6.递增的三元子序列7.最长连续递增序列8.买卖股票的最…...

SQL高级:窗口函数
窗口函数,顾名思义,它的操作对象是窗口,即一个小的数据范围,而不是整个结果集。并且它是一个函数,在SQL中使用,所以一定有返回值。 窗口函数是SQL中非常有趣的部分,这一节我们就来学习一下它。 辅助表 方便我们后边的讲解,这里我们要建一张学生成绩表,建表语句如下…...

Excel formulas 使用总结(更新中)
最近在写task assigment的时候学习到的,记录下。 首先它所有需要写赋值formuls都要用 开头 相等赋值 a1 这个就代表这格的数据和a1是一样的。如果希望其他格和它相同的逻辑,可以直接复制该cell或者直接拖动该cell右下角,他会自动进行匹配…...

华为OD机试 - 两个字符串间的最短路径问题(Java JS Python C)
题目描述 给定两个字符串,分别为字符串 A 与字符串 B。 例如 A字符串为 "ABCABBA",B字符串为 "CBABAC" 可以得到下图 m * n 的二维数组,定义原点为(0,0),终点为(m,n),水平与垂直的每一条边距离为1,映射成坐标系如下图。 从原点 (0,0) 到 (0,A) 为水…...

强敌环伺:金融业信息安全威胁分析——钓鱼和恶意软件
门口的敌人:分析对金融服务的攻击 Akamai会定期针对不同行业发布互联网状态报告(SOTI),介绍相关领域最新的安全趋势和见解。最新的第8卷第3期报告主要以金融服务业为主,分析了该行业所面临的威胁和Akamai的见解。我们发…...

1月1日起,贵阳市退役军人可以免费乘坐公交地铁
广大退役军人是党和国家的宝贵财富,是新时代中国特色社会主义现代化建设的重要力量。为切实增强退役军人的幸福感与获得感,贵阳市信捷科技有限公司以“心系老兵情怀,热忱服务人民”为服务宗旨,积极响应贵阳市政府号召,…...

网络隔离后,怎样建立高效安全的数据安全交换通道?
数据安全对企业生存发展有着举足轻重的影响,数据资产的外泄、破坏都会导致企业无可挽回的经济损失和核心竞争力缺失。数据流动才能让其释放价值,想要保护企业核心资产,就要实现数据安全交换。 很多企业为了防止知识产权、商业机密数据泄露&am…...

Python:PyTorch
简介 PyTorch是一个开源的机器学习库,由Facebook的人工智能研究团队(FAIR)开发,用于应用于机器学习和深度学习的Python程序。PyTorch基于Torch,使用Python语言重新编写,使得它更容易使用和扩展。它支持强大…...

CentOS 5/6/7 基于开源项目制作openssh 9.6p1 rpm包—— 筑梦之路
背景介绍 开源项目地址:https://github.com/boypt/openssh-rpms.git 该项目主要支持了centos 5 、6、7版本,针对使用了比较老的操作系统进行openssh安全加固,还是不错的项目,使用简单、一件制作,欢迎大家去支持作者。…...

python的pandas数据分析处理基础学习
pandas学习 一、 pandas基础 1. 什么是pandas? 一个开源的python类库:用于数据分析、数据处理、数据可视化 高性能容易使用的数据结构容易使用的数据分析工具 很方便和其他类库一起使用: numpy:用于数学计算 scikit-learn&a…...

【Qt-容器类】
Qt编程指南 ■ 顺序容器类■ QList■ QVector■ QLinkedList■ QStack■ QQueue ■ 关联容器类■ QSet■ QMap■ QMultiMap■ QHash■ QMultiHash ■ 顺序容器类 ■ QList QList 比较常用的容器类,以数组列表的形式实现,在前、后添加数据非常快。以下为…...