稳定视频扩散数据管理解密【stable video diffusion】

Stability AI 最近于 2023 年 11 月 21 日推出了其最新模型—稳定视频扩散(SVD)。视频生成模型的这一突破取决于数据管理的关键作用。 除了模型检查点之外,他们还发布了一份技术报告。 让我们在 Stability AI 的技术报告和一些引人注目的示例视频的指导下,深入探讨这种新的视频数据管理方法。

由于本报告的研究结果侧重于数据管理部分,因此它们可以与其他正在进行的专注于模型架构或训练和推理方法的研究相结合,例如几天前发布的 Make Pixels Dance, 2023。

 在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

1、为什么数据管理至关重要?

在人工智能中,数据质量往往胜过数量。 Stability AI 的研究强调对高质量数据的需求,消除质量较差的数据以提高模型性能。 他们报告的图 3b 就是一个引人注目的例子。 在这里,与更大的随机采样集相比,小四倍但精心策划的数据集因其准确性和整体质量而受到青睐。

SVD报告中的图 3b 显示,尽管策划的视频数据集小了 4 倍,但生成的模型更受人类评分者青睐。

LVD-10M 包含 1000 万个随机二次采样视频,而 LVD-10M-F 包含约 250 万个精选视频。 尽管精选集小了 4 倍,但用户研究表明,就即时对齐和质量而言,用户更喜欢根据精选数据训练的模型。

让我们深入探讨他们如何能够如此出色地管理视频数据的关键组成部分!

2、视频数据管理:关键组成部分

稳定视频扩散技术报告描述了以下五个关键组件作为其视频数据管理管道的一部分:

  • 检测场景切换:为了避免用包含多个场景的编辑视频误导人工智能,采用了一种检测和分离场景切换的机制。 这确保了训练中准确的场景描述。
  • 合成字幕:利用 Google Research 的 CoCa 模型,为视频剪辑生成字幕,这对于生成文本条件视频至关重要。
  • 使用光流进行运动检测:该技术捕获视频剪辑中的运动,这是过滤静态视频的重要方面。
  • 使用 OCR 进行文本覆盖检测:识别并删除具有过多文本覆盖的剪辑,使训练重点保持在视频内容而不是文本干扰上。
  • 基于 CLIP 的评分:评估美学吸引力和文本图像对齐,进一步细化数据集。

用于SVD的视频数据管理管道的核心组件。 从左到右:剪切检测器、字幕摘要生成、用于运动估计的光流、OCR 检测、与美观的 CLIP 功能对齐以及摘要。

现在我们将浏览各个组件并详细解释它们。

3、检测场景切换

处理来自网络的视频时,很可能会得到经过编辑并包含多个合并在一起的剪辑的视频。 想象一个电影场景,镜头从一个演员跳到另一个演员。 场景剪切本身并不坏,但是我们在生成模型的训练过程中必须妥善处理它们。 我们想要防止的情况是,我们将多个剪辑视为单个剪辑,因为它们都是同一视频的一部分。 这可能会导致单个标题描述完全不同的场景(想想这个失败的视频剪辑)。 我们的模型在训练过程中会感到困惑,因为它必须根据不相关的标题生成几个不同的场景。

SVD报告图 11 :级联视频剪切检测的优点。

为了缓解这个问题,稳定视频扩散提出了一种机制来检测场景剪切并将它们视为处理管道中的单独剪辑。

使用光流进行剪切检测和移动检测的重要性。 来自稳定视频扩散技术报告。

报告中实施的剪切检测的一个重要部分是它的“级联”。 以不同的帧速率运行检测器还有助于捕获“缓慢”的变化,例如在过渡期间混合两个剪辑时。

4、合成字幕

为了生成以文本为条件的视频,我们需要描述视频剪辑内容的字幕或摘要来训练我们的模型。 作者使用 CoCa, 2022 为每个剪辑的中间帧创建字幕。

CoCa 是 Google Research 的一篇论文,基于 CLIP 等方法。 Clip 训练图像和单独的文本编码器以将图像-文本对放入同一嵌入空间中,而 CoCa 还尝试仅基于图像特征重建原始标题。 将此视为 CLIP + 字幕损失。 CLIP 不能用于获取图像的标题。 我们需要向后遍历模型(从图像嵌入到文本输入)。

CoCa 学习过程的图示。 图像编码器+单模态文本解码器和对比损失基本上是CLIP论文复现。 CoCa 在 CLIP 之上添加了额外的多模态文本解码器 + 字幕损失。

另一方面,经过训练的 CoCa 模型可以使用额外的文本解码器来创建字幕。 由于 CoCa 在单帧上工作,Stable Video Diffusion 的作者还使用 VideoBLIP(修改后的 BLIP-2 代码)为第一帧、中间帧和最后一帧创建附加字幕。

最后,作者使用未进一步定义的 LLM 来获取两个摘要(CoCa 和 VideoBLIP)并为每个视频剪辑创建最终摘要标题。

6、检测静态视频

网络上充斥着基本上是带有音轨的静态图像的视频。 YouTube 上的许多视频剪辑,例如这个示例(时间碎片 — Ben Böhmer),显示的是没有任何运动的静态图像:

训练集中包含静态视频的另一个问题是,我们的模型可能无法决定何时生成运动视频以及何时生成静态视频。

光流算法的输出示例。 对于图像中的特征(此处为网格图案),算法尝试找到两帧之间的运动。 箭头显示了两帧之间“光流”的方向。

检测视频中的运动的一种简单方法是检查像素在帧与帧之间的变化量。 光流是解决这一挑战的相关研究领域。 光流方法尝试表示框架各部分的运动。 在稳定视频扩散报告中,作者计算了两帧之间的平均运动。 这使我们能够计算每个视频剪辑的平均运动量分数。

7、标题相似性和美感

为了进一步改进数据集,稳定视频扩散使用字幕的 CLIP 嵌入(合成字幕步骤中 LLM 的输出)以及第一个、中间和最后一个视频帧。 标题和帧之间的相似性用于验证它们是否匹配。 附加的美学分数用于分类帧是否符合视觉美学。 分数是通过在 CLIP 特征之上拟合线性层获得的,如 LAION-5B 论文中所述。

8、文本检测

来自网络的视频可能包含大量文本叠加。 如果在字幕过程中没有明确捕获该文本,则可能会干扰训练过程。 作者决定删除超过一定文本内容阈值的视频剪辑。 为此,他们使用了一个名为 CRAFT 的现成文本检测器,并在每个视频剪辑的第一帧、中间帧和最后一帧上运行它。

CRAFT 检测器检测各个字符区域,然后对其进行后处理以获得边界框。

9、结束语

稳定视频扩散论文强调了视频生成领域中生成模型的数据管理的重要性。 论文中概述的结果与其他论文以及我们自己的实验的结果相匹配,我们在这里进行了总结。


原文链接:SVD数据管理解密 - BimAnt

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

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

相关文章

LeetCode Hot100 394.字符串解码

题目: 给定一个经过编码的字符串,返回它解码后的字符串。 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_string 正好重复 k 次。注意 k 保证为正整数。 你可以认为输入字符串总是有效的;输入字符串中没有额外的…

虚幻学习笔记—点击场景3D物体的两种处理方式

一、前言 本文使用的虚幻引擎为5.3.2,两种方式分别为:点击根物体和精准点击目标物体。 二、实现 2.1、玩家控制器中勾选鼠标点击事件:这一步很重要,如图2.1.1所示:在自定义玩家控制器中勾 图2.1.1 选该项&#xff0c…

解密人工智能:线性回归

导言 人工智能(AI)已经成为当今科技领域的热门话题,其应用领域涵盖了各个行业。线性回归作为人工智能中的一种关键统计学方法,被广泛应用于预测和决策支持系统中。本文将为您详细介绍线性回归在人工智能中的应用原理与方法&#x…

相同JS代码,多次混淆加密能得到不同的结果吗?

一份相同的JavaScript代码,进行多次混淆加密,能得到不同的结果吗? 答案是肯定的,能。 JShaman可以实现这个效果。即:加密结果具有多态性、变化性。 下面实测展示。 来到JShaman网站,用它默认的示例代码…

案例分析-FATfs文件系统移植单片机内存不够问题分析和解决

在通过cubeMX自带的FATfs 文件系统在STM32F103C8T6上进行移植,正式调用后,发现系统报错,出现内存空间不足问题。如下: 更改更大容量的单片机进行编译,通过了 说明刚开始分析空间不够是对的,是flash不够还是…

【vue】浏览器安装vue插件不生效

上一篇:浏览器安装vue插件 https://blog.csdn.net/m0_67930426/article/details/134598104 目录 问题情景 解决办法 问题情景 输入框无内容 解决办法 添加 Vue.config.devtools true; 并且控制台不显示的vue又出现

红米手机如何远程控制荣耀手机?

很多人都知道,华为体系有【畅联】,与华为手机或平板“畅连”通话时,可共享屏幕给对方,一边聊天一边演示,还可在屏幕上涂鸦帮助理解。同样,小米体系有【小米通话】,它的远程协助功能可以帮助朋友…

JAVA配置jdk17 Graa1VM

按照网上内容下载好对应的jdk17版本的Graa1VM, 解压后,修改环境变量中的JAVA_HOME为当前的目录,例如 D:\ruanjian\jdk\gra_jdk17\graalvm-ce-java17-22.3.0 。 然后在命令行中输入java -version的时候, 返回的并不是 Graa1VM 相关…

【Java Spring】SpringBoot 五大类注解

文章目录 Spring Boot 注解简介1、五大类注解的作用2、五大类注解的关系3、通过注解获取对象4、获取Bean对象名规则解析 Spring Boot 注解简介 Spring Boot的核心就是注解。Spring Boot通过各种组合注解,极大地简化了Spring项目的搭建和开发。五大类注解是Spring B…

Selenium 连接到现有的 Google Chrome 示例

python 3.7 selenium 3.14.1 urllib3 1.26.8 Google Chrome 119.0.6045.160 (64位) chromedriver.exe 119.0.6045.105(win32) 1 Google Chrome 添加参数 "--remote-debugging-port9222" 2 测试效果(chromedriver.exe 要和 Google Chrome 版本…

vue2使用ts vue-class-component

目前,对于Vue3来说,TypeScript的支持已经相当成熟,但公司的老项目一直处于迭代和维护无法从v2重构成v3,并且重构的成本也是很大的一个问题,所以记录一下vue2如何去搭配TypeScript。 目录 一、脚手架创建项目 二、vu…

【AUTOSAR-DoIP】通过 DoIP 进行符合 Autosar 的车辆诊断

前言 通信协议 DoIP(互联网协议诊断)可通过以太网、WLAN 和移动通信对系统进行灵活而强大的诊断:无论是车间外的诊断还是车载诊断,以及驾驶时的远程访问。 DoIP 可以通过多种方式使用:现代车辆中的电子控制系统高度互连并执行各种复杂的功能。 Autosar 支持的通信协议 Do…

vue3中shallowReactive与shallowRef

shallowReactive与shallowRef shallowReactive: 只处理了对象内最外层属性的响应式(也就是浅响应式) shallowRef: 只处理了value的响应式, 不进行对象的reactive处理 总结: reactive与ref实现的是深度响应式, 而shallowReactive与shallowRef是浅响应式。 什么时候用浅响应…

08 木谷博客系统RBAC权限设计

这节内容说一下木谷博客系统的权限设计,采用现在主流的权限模型RBAC,对应关系如下: 以上5张表都在mugu_auth_server这个库中 该部分的服务单独定义在user-boot这个模块中。 将角色、权限对应关系加载到Redis 木谷博客系统在认证中心颁发令牌的时候是将用户的角色保存到令牌…

SpringBoot整合Sharding-Jdbc实现分库分表和分布式全局id

SpringBoot整合Sharding-Jdbc Sharding-Jdbc sharding-jdbc是客户端代理的数据库中间件;它和MyCat最大的不同是sharding-jdbc支持库内分表。 整合 数据库环境 在两台不同的主机上分别都创建了sharding_order数据库,库中都有t_order_1和t_order_2两张…

linux查看emmc分区信息(10种方法 )

目录 ## 1 emmc ## 2 uboot查看 ## 3 kernel查看 方法1 方法2 方法3 方法4 方法5 方法6 方法7 方法8 方法9 方法10 ## 1 emmc 我们要说的是,User Data Partition中的再分区 可简化为 ## 2 uboot查看 u-boot> mmc partPartition Map for MMC device…

windows dockerdesktop 安装sqlserver2022

1.下载windows dockertop软件 下载连接 2.安装完成配置,下载源地址 {"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,"registry-mirrors": …

深度学习及其基本原理

深度学习的 Ups and Downs概念区分神经网络的构成深度学习基本原理深度学习的普遍近似定理扩展:反卷积网络——可视化每一层提取的特征 深度学习的 Ups and Downs 1958:感知机(线性模型)1969:感知机有局限性1980s&…

Chrome网页前端组件调试模式,获取核心业务逻辑

进入网页,点击F12,弹出开发者工具对话框,如下图 定位目标组件,如按钮,修改html,插入οnclick"debugger"代码 在网页点击该按钮,触发调试模式 不停按F11,逐个检索文件…

shell编程系列- bash和sh的区别

文章目录 引言bash和sh的区别CentOS下的区别Ubuntu下的区别 最佳实践 引言 我们在编写shell脚本时,通常第一行都要声明当前脚本的执行程序,也就是常见的 #!/bin/sh 或者是 #!/bin/bash ,我们无论用哪一个脚本似乎都可以正常的执行&#xff0…