【LLM多模态】Animatediff文生视频大模型

note

  • AnimateDiff框架:核心是一个可插拔的运动模块,它可以从真实世界视频中学习通用的运动先验,并与任何基于相同基础T2I的个性化模型集成,以生成动画。
  • 训练策略:AnimateDiff的训练包括三个阶段:
    • 领域适配器:微调以适应目标视频数据集的视觉分布。
    • 运动模块:在视频上训练以学习运动先验,同时保持基础T2I权重固定。
    • MotionLoRA:一种轻量级微调技术,用于适应新的运动模式,如不同的镜头类型。

文章目录

  • note
  • 一、AnimateDiff模型
    • 1. 相关背景
    • 2. 模型结构
      • (1)第一阶段:训练domain adapter
      • (2)第二阶段:训练运动模块 motion module
      • (3)第三阶段:训练MotionLoRA
    • 3. 相关实验
    • 4. 评测效果
    • 5. 可以进一步探索的点
    • 6. 总结
    • 7. 运镜介绍
  • Reference

十大问题:

  1. 论文试图解决什么问题
  2. 这是否是一个新的问题
  3. 这篇文章要验证一个什么科学假设
  4. 有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员?
  5. 论文中提到的解决方案之关键是什么?
  6. 论文中的实验是如何设计的?
  7. 用于定量评估的数据集是什么?代码有没有开源?
  8. 论文中的实验及结果有没有很好地支持需要验证的科学假设?
  9. 这篇论文到底有什么贡献?
  10. 下一步呢?有什么工作可以持续深入?

一、AnimateDiff模型

论文:AnimateDiff: Animate Your Personalized Text-to-Image Diffusion Models without Specific Tuning
ICLR 2024 paper

1. 相关背景

Q: 有哪些相关研究?
以往的相关研究:

  1. 文本到图像扩散模型(Text-to-image diffusion models):
  • GLIDE (Nichol et al., 2021):引入了文本条件并展示了分类器引导可以产生更令人满意的结果。
  • DALL-E2 (Ramesh et al., 2022):通过利用CLIP联合特征空间来改善文本-图像对齐。
  • Imagen (Saharia et al., 2022):结合了大型语言模型和级联架构以实现逼真的结果。
  • Stable Diffusion (Rombach et al., 2022):将扩散过程移动到自编码器的潜在空间以提高效率。
  • eDiff-I (Balaji et al., 2022):为不同生成阶段专门化了一个扩散模型集合。
  1. 个性化T2I模型(Personalizing T2I models):
  • DreamBooth (Ruiz et al., 2023):通过保留损失微调整个网络,并仅使用少量图像。
  • Textual Inversion (Gal et al., 2022):为每个新概念优化一个标记嵌入。
  • Low-Rank Adaptation (LoRA) (Hu et al., 2021):通过在基础T2I中引入额外的LoRA层并仅优化权重残差来加速微调过程。
  • 编码器方法 (Gal et al., 2023; Jia et al., 2023):解决个性化问题的方法。
  1. 动画化个性化T2I(Animating personalized T2Is):
  • Text2Cinemagraph (Mahapatra et al., 2023):提出了通过流预测生成电影摄影的方法。
  • Tune-a-Video (Wu et al., 2023):在单个视频上微调少量参数。
  • Text2Video-Zero (Khachatryan et al., 2023):介绍了一种无需训练即可通过基于预定义仿射矩阵的潜在包装来动画化预训练T2I的方法。
  1. 视频生成(Video generation):
  • Esser et al. (2023)、Zhou et al. (2022a)、Singer et al. (2022) 等:这些工作通常更新所有参数并修改原始T2I的特征空间,使其与个性化模型不兼容。
  • Align-Your-Latents (Blattmann et al., 2023):展示了在一般视频生成器中冻结的图像层可以个性化。
    这些研究为AnimateDiff提供了技术背景和方法论基础,尤其是在文本到图像生成、模型个性化以及视频生成方面。AnimateDiff在这些研究的基础上,提出了一种新的方法来生成动画,同时保持个性化T2I模型的视觉质量和领域知识。

Q: 这篇论文试图解决什么问题?
论文试图解决的问题是如何将现有的个性化文本到图像(T2I)扩散模型(如Stable Diffusion)转换为能够生成动画的模型,而无需对每个模型进行特定的调整或微调。论文提出了AnimateDiff框架,它通过一个预训练的运动模块,使得个性化的T2I模型能够生成具有动态效果的动画,同时保持原有的视觉质量和领域知识。这个框架的核心是一个即插即用的模块,它可以从真实世界的视频中学到可转移的运动先验知识,并将其应用于任何源自相同基础T2I的个性化T2I模型中。此外,论文还提出了MotionLoRA技术,这是一种轻量级的微调技术,允许预训练的运动模块适应新的运动模式,如不同的镜头类型,以较低的训练和数据收集成本。

2. 模型结构

A: 论文通过以下步骤解决了将个性化文本到图像(T2I)模型转换为动画生成器的问题:

  1. 设计AnimateDiff框架:
  • 提出了一个即插即用的运动模块,它可以从真实世界的视频数据中学习运动先验知识。
  • 该运动模块可以与任何源自相同基础T2I的个性化T2I模型无缝集成,形成个性化的动画生成器。
  1. 训练策略:
  • 通过提出的训练策略,运动模块有效地从真实世界视频中学习到转移的运动先验。
  • 训练过程分为三个阶段

(1)第一阶段:训练domain adapter

在这里插入图片描述
(1)第一阶段,训练domain adapter:微调一个领域适配器以适应目标视频数据集的视觉分布,确保运动模块专注于学习运动先验。并且通过lora微调训练,在基础T2I模型的自/交叉注意力层中引入低秩矩阵进行微调参数: Q = W Q z + AdapterLayer  ( z ) = W Q z + α ⋅ A B T z Q=\mathcal{W}^Q z+\text { AdapterLayer }(z)=\mathcal{W}^Q z+\alpha \cdot A B^T z Q=WQz+ AdapterLayer (z)=WQz+αABTz
训练数据:目标视频数据集,使用静态帧
训练方式:lora微调
训练目标:和T2I原始目标相同, L = E E ( x 0 ) , y , ϵ ∼ N ( 0 , I ) , t [ ∥ ϵ − ϵ θ ( z t , t , τ θ ( y ) ) ∥ 2 2 ] \mathcal{L}=\mathbb{E}_{\mathcal{E}\left(x_0\right), y, \epsilon \sim \mathcal{N}(0, I), t}\left[\left\|\epsilon-\epsilon_\theta\left(z_t, t, \tau_\theta(y)\right)\right\|_2^2\right] L=EE(x0),y,ϵN(0,I),t[ϵϵθ(zt,t,τθ(y))22]

其中:
ϵ \epsilon ϵ 是添加的噪声 (从标准正态分布中采样的噪声)
ϵ θ ( z t , t , τ θ ( y ) ) \epsilon_\theta\left(z_t, t, \tau_\theta(y)\right) ϵθ(zt,t,τθ(y)) 是是去噪网络在给定潜在表示 zt 、时间步 t 和文本编码向量下预测的噪声, 其中:

  1. x 0 x_0 x0 是原始图像, y y y 是对应的文本提示
  2. τ θ ( ⋅ ) \tau_\theta(\cdot) τθ() 是文本编码器,将提示映射为emb
    3) z t z_t zt 是在时间步 t t t 的潜在表示,包含了原始数据 z 0 z_0 z0 和噪声 ϵ \epsilon ϵ 的信息

z t = α t ‾ z 0 + 1 − α t ‾ ϵ , ϵ ∼ N ( 0 , 1 ) z_t=\sqrt{\overline{\alpha_t}} z_0+\sqrt{1-\overline{\alpha_t}} \epsilon, \epsilon \sim \mathcal{N}(0,1) zt=αt z0+1αt ϵ,ϵN(0,1)

  • α ˉ t \bar{\alpha}_t αˉt 是预定的噪声比例,控制每一步噪声的强度

然后和 s d s d sd 一样预测噪声 :

L = E E ( x 0 1 : f ) , y , ϵ 1 ⋅ f ∼ N ( 0 , I ) , t [ ∥ ϵ − ϵ θ ( z t 1 : f , t , τ θ ( y ) ) ∥ 2 2 ] \mathcal{L}=\mathbb{E}_{\mathcal{E}\left(x_0^{1: f}\right), y, \epsilon^{1 \cdot f} \sim \mathcal{N}(0, I), t}\left[\left\|\epsilon-\epsilon_\theta\left(z_t^{1: f}, t, \tau_\theta(y)\right)\right\|_2^2\right] L=EE(x01:f),y,ϵ1fN(0,I),t[ ϵϵθ(zt1:f,t,τθ(y)) 22]

(2)第二阶段:训练运动模块 motion module

(2)第二阶段,训练运动模块motion module:将基础T2I与领域适配器一起扩展(放在T2I模型的潜在表示层后),并引入新初始化的运动模块进行运动建模。
训练数据:视频数据集
目的:让T2I模型能生成连贯动画序列
动作:

  • 对T2I模型进行网络扩展,使得能够处理5d tensor,b×c×f ×h×w,其中f是frametime,帧时间维度
  • 让图像层能独立处理视频帧,所以将 frametime 维度并到 batch_size 维度,使得每帧独立通过图像层处理,之后会将feature map的维度reshape回 bxcxfxhxw
    训练方式:
  • 视频被3D VAE编码向量(这里没像cogvideox训练3d vae,直接使用AutoencoderKL变分自编码器),然后根据扩散过程添加噪声、预测噪声
  • 训练目标是最小化预测噪声与实际噪声之间的均方误差(MSE)
  • 更新motion module参数,同时保持领域适配器和基础T2I权重参数固定
    其他:
  • 输出投影层会用0初始化;self-attention中后面帧只能看到前面帧信息
  • Temporal Transformer在自注意力之前添加了正弦位置编码,确保了模块能够理解动画中帧的顺序(位置信息),从而捕捉到运动动态

(3)第三阶段:训练MotionLoRA

在这里插入图片描述
(3)第三阶段(MotionLoRA):使用少量参考视频和训练迭代,通过LoRA微调整个预训练的运动模块以适应新的运动模式。
训练数据:Reference视频数据
训练方式:

  • Lora微调,使得学习不同的视频镜头类型(如变焦、平移、滚动等)
  • 在motion模块的自注意力层中引入低秩矩阵进行Lora微调
    训练目标:motion模块、motionlora训练目标类似,都是先用预训练的sd auto-encoder将视频编码为隐向量,然后使用sd的前向扩散、预测噪声。
    提出了MotionLoRA,允许预训练的运动模块适应新的运动模式,如不同的镜头类型,以较低的训练和数据收集成本。

3. 相关实验

A: 论文进行了一系列实验来评估AnimateDiff和MotionLoRA的性能,包括:

  1. 社区模型评估:
  • 使用从Civitai等模型共享平台收集的多种代表性个性化T2I模型进行评估。
  • 这些模型涵盖了从2D卡通到真实照片的广泛领域,形成了全面的基准测试。
  1. 与基线比较:
  • 将AnimateDiff与现有的视频生成方法(如Text2Video-Zero和Tune-a-Video)以及商业工具(如Gen-2和Pika Labs)进行比较。
  • 通过用户研究和CLIP指标进行定量比较,关注文本对齐、领域相似性和运动平滑性三个方面。
  1. 用户研究:
  • 基于相同的个性化T2I模型,使用所有三种方法生成动画,然后让参与者根据上述三个方面对结果进行排名。
  • 使用平均用户排名(AUR)作为偏好度量,其中较高的分数表示更优越的性能。
  1. CLIP指标:
  • 使用CLIP模型评估领域相似性,计算动画帧与使用个性化T2I生成的参考图像之间的相似度。
  1. 消融研究:
  • 研究领域适配器在AnimateDiff中的影响,通过调整适配器层中的缩放因子来观察结果变化。domain adapter的scaler越大,则和目标数据集的分布越接近
  • MotionLoRA:当reference video数据越多,视频质量越好
  1. 可控生成:
  • 展示了AnimateDiff与ControlNet结合的能力,使用提取的深度图序列进行可控生成。
  • 与最近的视频编辑技术相比,AnimateDiff能够从随机采样的噪声生成动画,展现出精细的运动细节和高视觉质量。

4. 评测效果

和其他模型评测结果的比较:
在这里插入图片描述

其他指标:

  • AnimateDiff通过用户研究和CLIP指标进行了定量比较。
    • 用户研究基于文本对齐、领域相似性(视频和原始T2I模型生成风格的相似性)和运动平滑性三个方面对生成的动画进行排名。
    • CLIP指标则用于评估生成动画与参考图像之间的相似性。

5. 可以进一步探索的点

A: 尽管AnimateDiff在将个性化文本到图像模型转换为动画生成器方面取得了显著成果,但仍有一些潜在的研究方向可以进一步探索:

  1. 提高动画质量:
  • 研究更先进的运动建模技术,以进一步提高生成动画的质量和真实感。
  • 探索如何更好地结合视觉内容和运动信息,以生成更自然和连贯的动画。
  1. 优化MotionLoRA:
  • 研究如何进一步减少MotionLoRA所需的参考视频数量和训练迭代,以实现更高效的个性化运动模式适应。
  • 探索不同的网络架构和训练策略,以提高MotionLoRA的泛化能力和适应性。
  1. 多模态输入:
  • 研究如何将AnimateDiff扩展到处理多模态输入,例如结合文本、音频和图像信息来生成动画。
  • 探索如何利用多模态数据来提高动画的表达力和多样性。
  1. 内容控制和编辑:
  • 研究如何进一步提高AnimateDiff在内容控制方面的灵活性,例如允许用户在生成过程中动态调整动画内容。
  • 探索结合其他内容编辑技术,如图像和视频编辑工具,以实现更复杂的动画编辑功能。
  1. 跨领域适应性:
  • 研究AnimateDiff在不同领域(如艺术风格、文化背景)的适应性和通用性。
  • 探索如何使AnimateDiff更好地理解和适应不同领域的特定需求和约束。

6. 总结

A: 这篇论文介绍了AnimateDiff,这是一个实用的框架,用于在不需要特定调整的情况下,将个性化的文本到图像(T2I)扩散模型转换为动画生成器。

  1. 问题背景:现有的个性化T2I模型能够生成高质量的静态图像,但在生成动画方面存在挑战。作者提出了AnimateDiff,旨在解决这一问题。
  2. AnimateDiff框架:核心是一个可插拔的运动模块,它可以从真实世界视频中学习通用的运动先验,并与任何基于相同基础T2I的个性化模型集成,以生成动画。
  3. 训练策略:AnimateDiff的训练包括三个阶段:
  • 领域适配器:微调以适应目标视频数据集的视觉分布。
  • 运动模块:在视频上训练以学习运动先验,同时保持基础T2I权重固定。
  • MotionLoRA:一种轻量级微调技术,用于适应新的运动模式,如不同的镜头类型。
  1. 与现有方法的比较:AnimateDiff在用户研究和CLIP指标上与Text2Video-Zero和Tune-a-Video等方法进行了比较,显示出优越的性能。
  2. 消融研究:研究了领域适配器和运动模块设计对AnimateDiff性能的影响。

7. 运镜介绍

相机运动

  • 放大/缩小 (Zooming - in/out)
  • 平移 (panning): 水平移动相机
  • 倾斜 (tilting): 垂直移动相机
  • Dolly: 前后移动整个相机
  • Truck: 与小推车一样,只能从左向右移动相机
  • 底座 (Pedestal): 将相机固定在一个位置时上下垂直移动相机

Reference

[1] VAE(变分自动编码器)优势在哪里?
[2] AnimateDiff|让文生图动起来
[3] AnimateDiff:一款强大的制作丝滑动画视频插件,轻松让你的图片动起来

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

spark之不同序列化对比

一,spark的rdd的序列话不同介绍 下面是使用不同序列化后的占用资源和数据大小 2,sparksql中序列化的区别 sparksql中使用序列化和不使用差别不大,英文sparksql中默认使用了encode自己实现的序列化方法,加上与不加序列化差别不大…

基于真实山地场景下的超多目标优化算法求解无人机三维路径规划,MATLAB代码

超多目标优化算法是一类专门用于解决存在三个以上目标函数的最优化问题的算法。这类问题在现实世界中非常常见,例如在工程设计、资源管理、机器学习等领域。由于目标之间的冲突性,很难找到一个单一的解来同时优化所有目标,因此超多目标优化算…

MQ高级(二):死信交换机--延迟消息及DelayExchange插件--超时订单案例实现

目录 1.延迟消息 1.1.死信交换机和延迟消息 1.1.1.死信交换机 1.1.2.延迟消息 1.2.DelayExchange插件 1.2.1.下载 1.2.2.安装 1.2.3.声明延迟交换机 1.2.4.发送延迟消息 1.3.超时订单问题 1.3.1.定义常量 1.3.2.配置MQ 1.3.3.改造下单业务,发送延迟消息…

【Linux篇】TCP/IP协议(笔记)

目录 一、TCP/IP协议族体系结构 1. 数据链路层 (1)介绍 (2)常用协议 ① ARP协议(Address Resolve Protocol,地址解析协议) ② RARP协议(Reverse Address Resolve Protocol&…

详解Web测试和APP测试的区别

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快 最近听到有些朋友说,移动端要比web端稍微难一些,涉及到的细节笔记要多,有转去做web测试的想法,看看在具体测试的…

秋招面试准备:《小米2024数字芯片岗面试题》

在数字芯片设计的浪潮中,验证工程师的角色愈发重要。他们如同守门人,确保每一块芯片在投入市场前都能稳定、高效地运行。小米,作为全球知名的智能设备制造商,对数字芯片岗位的人才选拔尤为严格。 本文分享《小米2024数字芯片岗面…

专属文生图助手——SD3+ComfyUI文生图部署步骤

SD3ComfyUI文生图部署步骤 我们使用DAMODEL来实现文生图的部署。 根据提供的操作步骤与代码段落,本文旨在介绍如何下载并部署 Stable Diffusion 3 模型,并通过 ComfyUI 架构实现基于 Web 界面的图像生成应用。本文将剖析各个步骤,并详细解释…

[Redis][Hash]详细讲解

目录 0.前言1.常见命令1.HSET2.HGET3.HEXISTS4.HDEL5.HKEYS6.HVALS7.HGETALL8.HMGET9.HLEN10.HSETNX11.HINCRBY12.HINCRBYFLOAT 2.内部编码1.ziplist(压缩链表)2.hashtable(哈希表) 3.使用场景4.缓存方式对比1.原⽣字符串类型2.序列化字符串类型3.哈希类型 0.前言 在Redis中&am…

同一网络下两台电脑IP一样吗?探究局域网内的IP分配机制

在日常生活和工作中,我们经常会在同一网络环境下使用多台电脑。这时,一个常见的问题就会浮现:同一网络下两台电脑IP一样吗?这个问题看似简单,但实际上涉及到局域网内的IP分配机制。本文将深入探讨这一问题,…

Linux使用Clash,clash-for-linux

文件下载 clash-for-linuxhttps://link.zhihu.com/?targethttps%3A//zywang.lanzn.com/ijE2a1m7h6mb(百度和阿里云盘都不支持这个文件分享)。 使用须知 - 此项目不提供任何订阅信息,请自行准备Clash订阅地址。 - 运行前请手动更改.env文件…

使用四叉树碰撞的游戏 显微镜RPG

实现四叉树碰撞检测 //author bilibili 民用级脑的研发记录 // 开发环境 小熊猫c 2.25.1 raylib 版本 4.5 // 2024-7-14 // AABB 碰撞检测 在拖拽,绘制,放大缩小中 // 2024-7-20 // 直线改每帧打印一个点,生长的直线,直线炮弹 /…

The NCCoE’s Automation of the CMVP

Earlier today at the ICMC24, we heard from a panel about the US National Cybersecurity Center of Excellence’s (NCCoE) work on the Automated Cryptographic Module Validation Program (ACMVP), which intends to tackle the troublingly long queue times we’ve se…

Flink 与 Kubernetes (K8s)、YARN 和 Mesos集成对比

Flink 与 Kubernetes (K8s)、YARN 和 Mesos 的紧密集成,是 Flink 能够在不同分布式环境中高效运行的关键特性。 Flink 提供了与这些资源管理系统的深度集成,以便在多种集群管理环境下提交、运行和管理 Flink 作业。Flink 与 K8s、YARN 和 Mesos 集成的详…

百度Android IM SDK组件能力建设及应用

作者 | 星途 导读 移动互联网时代,随着社交媒体、移动支付、线上购物等行业的快速发展,对即时通讯功能的需求不断增加。对于各APP而言,接入IM SDK(即时通讯软件开发工具包)能够大大降低开发成本、提高开发效率&#…

数据结构:(OJ141)环形列表

给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(…

C++ | Leetcode C++题解之第420题强密码检验器

题目: 题解: class Solution { public:int strongPasswordChecker(string password) {int n password.size();bool has_lower false, has_upper false, has_digit false;for (char ch: password) {if (islower(ch)) {has_lower true;}else if (isu…

渗透测试综合靶场 DC-2 通关详解

一、准备阶段 准备工具如Kali Linux,下载并设置DC-2靶场机。确保攻击机和靶机在同一网络段,通常设置为桥接模式或NAT模式。 1.1 靶机描述 Much like DC-1, DC-2 is another purposely built vulnerable lab for the purpose of gaining experience in …

面试知识点总结篇二

一、makefile链接库参数 LIBS -L/path/to/lib -lmylib//,-lmylib会链接名为libmylib.so或libmylib.a的库。all: myprogrammyprogram: myprogram.ogcc -o myprogram myprogram.o $(LIBS)//此处使用myprogram.o: myprogram.cgcc -c myprogram.c二、shell指令 Shell…

高性能分布式搜索引擎Elasticsearch详解

♥️作者:小宋1021 🤵‍♂️个人主页:小宋1021主页 ♥️坚持分析平时学习到的项目以及学习到的软件开发知识,和大家一起努力呀!!! 🎈🎈加油! 加油&#xff01…

在线相亲交友系统:寻找另一半的新方式

在这个快节奏的时代里,越来越多的单身男女发现,传统意义上的相亲方式已经难以满足他们的需求。与此同时,互联网技术的迅猛发展为人们提供了新的社交渠道——在线相亲交友系统作者h17711347205。本文将探讨在线相亲交友系统如何成为一种寻找另…