CVPR 2024最佳论文:“神兵”的组合器 Generative Image Dynamics

CVPR 2024的最佳论文来自谷歌、美国·加州大学圣迭戈分校。两篇都来至于视频生成领域,可见今年外界对视频生成领域关注度很高。今天的这篇是“Generative Image Dynamics”,Google Research发布的。它的研究成果令人震惊,从单张RGB图像生成连续的视频,模拟自然界中物体的长时间运动轨迹,如树木、花朵、蜡烛等。先来看一段生成视频:

Generative Image Dynamics

这项开创性技术是对场景动力学的图像空间建模。目的是全面了解图像中的对象和元素在各种场景下的动态交互时行为。当然这项研究基本上是之前各种“神兵利器”的技术组合,所以随着时间轴一起来看看~

神兵1:Spectral Volume

自然界中的场景总是在运动,即使是看起来静止的场景也包含由于风、水流等自然节奏引起的微小振动。模拟这些运动对于视觉内容合成非常重要,因为缺乏运动或运动不真实会让图像显得怪异或不真实。

2015年的Image-Space Modal Bases for Plausible Manipulation of Objects in Video就上场了。这里会涉及到Spectral Volume的概念,具体就是将输入的视频提炼不同的振动模式。

Spectral Volume

而本次的研究首先从真实视频序列中提取的运动轨迹训练模型,这些轨迹的时域傅里叶变换就是频域中的“Spectral Volume”。

从左边的第一张图获取一行,然后进行动力学算法分解

具体的过程就是从输入图像中提取的每个像素点在未来时间的位移(运动轨迹)。上面的第一张图取了一行,然后取得这一行的每个像素点在视频中的运动轨迹(肯定对应一条曲线),然后对曲线进行离散傅里叶变换,得到不同频率成分的幅度和相位。

大白话:“可以想象一杯N种水果的混合果汁,通过离散的傅里叶变化可以分离给各种果汁”。一个像素T个时间点的运动轨迹,按照离散傅里叶变化,可以拆分成多条具有特定频率的复数组合。Spectral Volume是从视频中提取的每像素轨迹的时间傅里叶变换。

原本T个时间点,T个数据点,进行离散的傅里叶变化,在降低复杂度的同时也可以提炼不同的低频运动规律。因此这个方法在低频运动还有规律运动中的生成占据优势,也的确比较适合振荡动态的场景。

从真实视频中提取的X和Y 运动分量的平均功率谱可以看出,自然振荡运动主要由低频分量组成,因此使用前K=16个项,左图的红点。

右图是放大3.0 Hz下傅里叶项振幅的直方图,这些振幅经过按图像宽度和高度缩放,以及频率自适应归一化来避免系数集中在极值。

Spectral Volume中的每个具体的元素代表一个特定频率下的运动信息,包括:频率(运动的周期性特征)、幅度(在该频率下的运动强度)、相位(运动的初始位置或时间偏移)。

神兵2Latent Diffusion Model

上图中间部分就是属于Diffusion Model的方法,ξ是代表着Encoder,Zn代表着噪声。重复利用扩散模型<可以链接回去温习!>进行训练。值得注意的是中间红色部分是由2D spatial Layer和Attension Layer交叉组合而成,一个负责捕获空间特征,一个负责捕获不同空间位置之间的依赖和关系。

训练好的模型可以在频域利用中逐个频率生成Spectral Volume。生成的Spectral Volume可以进一步处理转换为“运动纹理”,即每个像素的长时间运动轨迹。

神兵3光流插值

最后利用基于图像的渲染技术,将预测的运动纹理应用于输入的RGB图像,生成连续的视频帧。这里首先使用在每个像素 F(p) =FFT−1(S(p)) 上应用的逆时间的FFT进而在时间域中生成运动纹理。由于前向扭曲可能导致空洞,并且多个源像素可以映射到相同的输出 2D 位置,因此采用2020年的Softmax Splatting for Video Frame Interpolation关于帧插值的工作中提出的特征金字塔softmax splatting策略。

在2020年的这篇文章中涉及到光影的概念。若图中的每个像素都看成一个主题,在视频中的移动就形成了光流。这个研究展示了一个帧插值框架。帧插值的目的是在两个给定的帧I0和I1之间生成中间帧It,以创建平滑的过渡。

以下是这个框架的工作流程:

  1. 首先估计这两个帧之间的双向光流。光流是一种测量两个帧之间物体运动的方法。图中绿色的方框和箭头表示光流估计过程。

  2. 特征金字塔提取:每个输入帧通过特征金字塔提取器,提取出多层次的特征。这一步骤在图中用蓝色虚线方框表示。

  3. Softmax Splatting:将提取的特征金字塔和光流信息前向传播到目标时间位置t∈(0,1)。使用Softmax Splatting实现端到端的训练,从而允许特征金字塔提取器学习到对图像合成重要的特征。这个过程在图中用灰色虚线方框表示。

  4. 最终经过变形的输入帧和特征金字塔被送入图像合成网络,生成插值结果帧It。

本次研究的生成效果在“微风”领域的确不赖。上图第一列为原图,取了一行作为对比观察点。第二列为这一行像素值在原始视频的震动效果,第三列开始时就是各种视频生成算法的震动效果。

当然目测还是最后一列(本次研究)更加的符合和贴近。最后总结一下,这个项目给读者的带来的启示是,读懂每种研究的核心点,通过创意组合和微创新,也能带来令人意想不到的收获~

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

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

相关文章

DIY智能音箱:基于STM32的低成本解决方案 (附详细教程)

摘要: 本文详细介绍了基于STM32的智能音箱的设计与实现过程&#xff0c;包括硬件设计、软件架构、语音识别、音乐播放等关键技术。通过图文并茂的方式&#xff0c;结合Mermaid流程图和代码示例&#xff0c;帮助读者深入理解智能音箱的工作原理&#xff0c;并提供实际操作指导。…

一分钟教你设置代理服务器的IP地址

许多人购买完代理IP却不会使用&#xff0c;我们来学习一下如何手把手地设置代理服务器的IP地址。无论是为了访问受限网站还是保护隐私&#xff0c;设置代理IP都是一个非常实用的技能。让我们一起来看看怎么做吧&#xff01; 设置代理服务器的IP地址步骤 1. 选择代理服务提供商…

PyCharm左侧项目区域出现淡黄色背景如何解决

PyCharm左侧项目区域出现淡黄色背景如何解决 解决方法&#xff1a; 1、打开pycharm 文件 - > Setting-> 项目 -> 项目结构 2、添加内容根 为 你的项目根目录即可恢复

sql server启动、连接 与 navicat连接sql server

一、sql server 启动 1.搜索cmd->以管理员身份运行 2.输入以下命令 net start mssqlserver 3.服务器启动成功 二、sql server连接 1.打开ssms&#xff0c;输入&#xff0c;连接 2.右键&#xff0c;属性 3.连接&#xff0c;勾选允许远程连接到此服务器 三、navicat连接sq…

自然语言处理领域介绍及其发展历史

自然语言处理领域介绍及其发展历史 1 NLP2 主要任务3 主要的方法1 基于规则的方法&#xff08;1950-1980&#xff09;2 基于统计的方法&#xff08;传统的机器学习的方法&#xff09;3 Connectionist approach&#xff08;Neural networks&#xff09; 1 NLP 自动的理解人类语…

Labview_Occurrencel(事件发生)

PS&#xff1a;这里遇到 一个很Low的事情&#xff1a; 在停止第二个while循环的时候出现了停止不了的情况。因为等待事件发生设置的超时时间为:-1。所以等事件发生后出现了条件接线端已经执行的情况&#xff0c;所以当下次事件发生时未能及时停止。初版的停止设置如下图&#x…

暑假学习DevEco Studio第2天

学习目标&#xff1a; 掌握页面跳转 学习内容&#xff1a; 跳转页面 创建页面&#xff1a; 在“project”窗口。打开“entry>src>main>ets”,右击“pages”&#xff0c;选择“New>ArkTS File”,命名“Second”&#xff0c;点击回车键。 在页面的路由&#xff0…

详解flink sql, calcite logical转flink logical

文章目录 背景示例FlinkLogicalCalcConverterBatchPhysicalCalcRuleStreamPhysicalCalcRule其它算子FlinkLogicalAggregateFlinkLogicalCorrelateFlinkLogicalDataStreamTableScanFlinkLogicalDistributionFlinkLogicalExpandFlinkLogicalIntermediateTableScanFlinkLogicalInt…

2024年Nano编辑器最新使用教程

Nano在大多数Linux发行版中找到&#xff0c;易于使用&#xff0c;其最常用的命令显示在其屏幕底部。 作为编辑配置和其他文件是Linux中的一种普遍的任务&#xff0c;知道如何使用该程序是否可以非常有用。Nano编辑器以及如何使用Nano编辑器在服务器上编辑文件是我们将在本指南中…

第1章 信息系统综合知识

第1章 信息系统综合知识 本章主要介绍信息系统综合知识&#xff0c;介绍信息、信息系统的基本概念&#xff0c;概述两化融合和国家信息化战略&#xff0c;讲解电子政务、电子商务的典型应用&#xff0c;描述信息化整体总体规划以及IT战略的主要内容。 1.1 信息的定义和属性 …

JAVA高级进阶11多线程

第十一天、多线程 线程安全问题 线程安全问题 多线程给我们带来了很大性能上的提升,但是也可能引发线程安全问题 线程安全问题指的是当个多线程同时操作同一个共享资源的时候,可能会出现的操作结果不符预期问题 线程同步方案 认识线程同步 线程同步 线程同步就是让多个线…

8人团队历时半年打造开源版GPT-4o,零延迟演示引爆全网!人人可免费使用!

目录 01 Moshi 02 背后技术揭秘 GPT-4o可能要等到今年秋季才会公开。 然而&#xff0c;由法国8人团队开发的原生多模态Moshi&#xff0c;已经达到了接近GPT-4o的水平&#xff0c;现场演示几乎没有延迟&#xff0c;吸引了大量AI专家的关注。 令人惊讶的是&#xff0c;开源版的…

汇聚荣拼多多评价好不好?

汇聚荣拼多多评价好不好?在探讨电商平台的口碑时&#xff0c;用户评价是衡量其服务质量和商品质量的重要指标。拼多多作为国内领先的电商平台之一&#xff0c;其用户评价自然成为消费者选择购物平台时的参考依据。针对“汇聚荣拼多多评价好不好?”这一问题&#xff0c;可以从…

【数据结构】(C语言):队列

队列&#xff1a; 线性的集合。先进先出&#xff08;FIFO&#xff0c;first in first out&#xff09;。两个指针&#xff1a;头指针&#xff08;指向第一个进入且第一个出去的元素&#xff09;&#xff0c;尾指针&#xff08;指向最后一个进入且最后一个出去的元素&#xff0…

下载安装MySQL

1.软件的下载 打开官网下载mysql-installer-community-8.0.37.0.msi 2.软件的安装 mysql下载完成后&#xff0c;找到下载文件&#xff0c;双击安装 3.配置环境变量 4.自带客户端登录与退出

CocoaPodsCmake

https://juejin.cn/post/7257048145233838141?searchId20240531171431E5868B41DC7B7016CCBA https://guides.cocoapods.org CocoaPods CocoaPods的作用 帮助程序员通过命令管理第三方库及更新&#xff0c;以达到扩展项目的目的。 CocoaPods的使用 在已有的工程目录下新增…

【test】小爱同学通过esp32控制电脑开关

文章目录 一、环境准备二、开关机原理数据传输框架 三、环境搭建1.巴法云平台设置2.米家设置3.windows网络唤醒设置4.搭建esp32开发环境并部署&#xff08;1&#xff09;新建项目&#xff08;2&#xff09;导入esp32库&#xff08;3&#xff09; 添加库&#xff08;4&#xff0…

Oracle Database 23ai新特性:DB_DEVELOPER_ROLE角色

角色介绍 从 Oracle Database 23ai 开始&#xff0c;新角色“DB_DEVELOPER_ROLE”允许管理员快速分配开发人员为 Oracle 数据库设计、构建和部署应用程序所需的所有必要权限。&#xff08;包括构建数据模型所需的系统权限以及监视和调试应用程序所需的对象权限&#xff09;。通…

MySQL之备份与恢复(四)

备份与恢复 存储引擎和一致性 3.复制 从备库中备份最大的好处是可以不干扰主库&#xff0c;避免在主库上增加额外的负载。这是一个建立备库的好理由&#xff0c;即使不需要用它做负载均衡或高可用。如果钱是个问题&#xff0c;也可以把备份用的备库用于其他用户&#xff0c;…

【C语言】刷题笔记 Day2

【笔记】 【1】局部变量不初始化&#xff0c;默认放的随机值。 1 int n0; 2 scanf("%d",&n); //13.141 【2】这里虽然输入的是一个浮点数&#xff0c;但是只取整数部分。 【3】3.156e7 表示的是3.156*10的7次方。 【4】多组输入&#xff0c;保存和不保存…