文章目录
- 前言
- 一、介绍
- 二、方法
- 2.1、运动预测模块
- 运动纹理
- 2.2、图像渲染模块
- 三、数据集实验
- 总结
前言
让静态的风景图能够动起来真的很有意思,不得不说CVPR2024 best paper实质名归,创意十足的一篇文章!!!
paper:https://arxiv.org/pdf/2309.07906
demo:https://generative-dynamics.github.io
一、介绍
自然界中的场景总是处于运动状态,如风、水流、呼吸等自然节律产生的振动。虽然人类可以轻松地解释或想象场景中的运动,但训练模型来学习或生成真实的场景运动却极其困难。在现实世界中观察到的运动是场景底层物理动力学的结果,例如,施加在物体上的力根据它们独特的物理属性(如质量、弹性等)做出响应,这些量很难大规模测量和捕捉。
文章实现从单个静止图像生成逼真的长时间像素轨迹。通过学习从真实视频序列中提取的运动轨迹,作者开发了一种频域的密集、长期运动表示方法(光谱体积)。该方法**通过频率协调的扩散模型进行预测,能够生成覆盖整个视频的运动纹理,**从而实现如下应用:
(1). 无缝循环视频生成:将静止图像转换为无缝循环的视频。
(2). 交互动态模拟:允许用户与图像中的对象进行交互,模拟对象在用户输入(如拖动和释放点)下的动态响应。
(3). 图像动画:将单个静止图像转换为动态视频,展示自然界中的振荡运动,例如树木在风中的摆动、花朵的摇曳等。
demo :generative-dynamics.github.io.
paper:https://arxiv.org/pdf/2309.07906
二、方法
给定一张图I0,文章的目标是生成一个基于I0的视频{I1, I2, … IT}, 其特征为微风吹过的树,花产生的摇摆运动。整个system包含两个module —— 一个运动预测模块,一个基于图像的渲染模块。首先,使用潜在扩散模型(LDM)预测输入图片的频谱体积,然后通过**逆离散傅里叶变换(IDFT,将频域信号转换为时域信号)**将其转换为运动纹理。接着,利用神经图像基渲染技术将输入的RGB图像动画化。该方法在生成无缝循环动画和模拟交互动态方面有多种应用。
基本流程如下:
首先,使用「潜在扩散模型」为输入图片
I
0
I_{0}
I0预测一个神经随机运动纹理(频域)——
第二步,使用逆离散傅立叶变换将预测出的随机运动纹理转化为一系列运动位移场(时域)(motion displacement fields)
这些运动位移场将用于确定每个输入像素在每一个未来时间步长的位置。
2.1、运动预测模块
运动预测模块通过潜在扩散模型(LDM)从单张输入图像预测出表示密集、长期像素运动的频谱体积。
运动纹理
运动纹理定义了一系列时变的2D位移映射( displacement map)
F
t
(
p
)
F_{t}(p)
Ft(p)表示每个像素坐标p,定义了输入图像
I
0
I_{0}
I0中的p像素在未来时间t的位置。为了在时间t生成一个未来帧,可以使用相应的位移映射,从
I
0
I_{0}
I0中拾取像素,从而得到一个前向变形的图像
正如之前在计算机图形研究中所证明的,许多自然运动,特别是振荡运动,可以描述为一小组谐振子(harmonic oscillators)的叠加,这些谐振子用不同的频率、振幅和相位表示。
一种引入运动的随机性的方法是整合噪声场。但正如之前研究结果表明的,直接在预测的运动场的空间和时间域内添加随机噪声通常会导致不现实或不稳定的动画。
更进一步,采用上面定义的时间域内的运动纹理意味着需要预测T个2D位移场,才能生成一个包含T帧的视频片段。为了避免预测如此大的输出表示,许多先前的动画方法要么自回归地生成视频帧,要么通过额外的时间嵌入独立预测每个未来的输出帧。
然而,这两种策略都不能确保生成的视频帧在长期内具有时间上的一致性,而且都可能产生随时间漂移或发散的视频。
为了解决上述问题,研究人员在频率域中表示输入场景的每像素运动纹理(即所有像素的完整运动轨迹),并将运动预测问题表述为一种多模态的图像到图像的转换任务。
研究人员采用潜在扩散模型(LDM)生成由一个4*K(K为一个超参数,为作者所选取的频率分量数量)通道的2D运动光谱图组成的随机运动纹理,其中K << T是建模的频率数,而在每个频率上,需要四个标量来表示x和y维度的复傅立叶系数(可表示幅值和相位, 也就是说通过这四个标量可以计算出在设定固定频率下的幅值和相位)
下图展示了这些神经随机运动纹理
那么,应该如何选择研究人员表示的 K 输出频率呢?实时动画之前的研究说明,大多数自然振荡运动主要由低频分量(low-frequency component)组成。
为了验证这一假设,研究人员计算了从1000个随机抽样的5秒真实视频剪辑中提取出来的运动的平均功率谱。如下图所示,功率主要集中在低频分量上。
动作的频谱随着频率的增加呈指数下降。这表明大多数自然振动动作确实可以由低频项很好地表示。
在实践中,研究人员发现前K=16个傅里叶系数足以在一系列真实视频和场景中真实地重现原始的自然动作。
训练过程中,采用频率自适应归一化技术,对傅里叶系数进行调整,防止高频分量过小而导致的生成误差。随后,模型通过迭代去噪,从高斯噪声逐步逼近真实的频谱体积。最后,通过逆离散傅里叶变换将预测的频谱体积转换为时间域的运动纹理,生成未来帧的像素运动轨迹。这一模块使得从静态图像生成逼真、连贯的动态视频成为可能。运动预测模块结构如图所示。
2.2、图像渲染模块
首先,通过逆离散傅里叶变换将频谱体积转换为时间域的运动纹理,运动纹理描述了每个像素在未来时间步的位置变化。接着,模块对输入的RGB图像进行多尺度特征提取,生成一系列特征图。利用最大值点云映射策略,将特征图中的像素根据运动纹理映射到未来帧的位置。然后,通过图像合成网络对映射后的特征图进行细化和填充,生成无缝、逼真的动画帧。在生成无缝循环视频时,模块会应用运动指导,确保视频的起始帧和结束帧在位置和速度上保持一致。通过这一系列步骤,基于图像的渲染模块成功地将静态图像转化为动态视频,实现了逼真、连贯的动画效果。
三、数据集实验
文章收集3015个展示自然振荡运动的视频,并将其分为训练集和测试集。首先从视频中提取运动轨迹生成频谱体积,然后使用这些数据训练潜在扩散模型(LDM),模型能够预测单张输入图像的频谱体积,并通过逆离散傅里叶变换将其转换为时间域的运动纹理,生成未来帧的像素运动轨迹
总结
论文提出了一种从单张静止图像建模自然振荡动态的新方法。该方法从真实世界视频集合中学习,并在扩散模型预测中表现出高效。通过基于图像的渲染模块,频谱体积用于动画未来的视频帧,生成逼真的动画,给未来生成模型的应用带来更多可能!