【ICCV2023】MMVP:基于运动矩阵的视频预测

 

目录

导读

本文方法

步骤1:空间特征提取

步骤2:运动矩阵的构造和预测

步骤3:未来帧的合成和解码

实验

实验结果

消融实验

结论


论文链接:https://openaccess.thecvf.com/content/ICCV2023/html/Zhong_MMVP_Motion-Matrix-Based_Video_Prediction_ICCV_2023_paper.html

代码:https://github.com/Kay1794/MMVP-motion-matrix-based-video-prediction

引用:Zhong Y, Liang L, Zharkov I, et al. MMVP: Motion-Matrix-based Video Prediction[C]//Proceedings of the IEEE/CVF International Conference on Computer Vision. 2023: 4273-4283.

图片

 

导读

本文讨论了视频预测领域的一个核心挑战,即在图像帧中推测对象的未来运动同时保持它们在各帧之间外观的一致性。为了解决这一问题,作者引入了一种端到端可训练的两流视频预测框架,称为“Motion-Matrix-based Video Prediction”(MMVP)。

与以往的方法不同,以往的方法通常在相同的模块内处理运动预测和外观维护,MMVP通过构建外观无关的运动矩阵来解耦运动和外观信息。这些运动矩阵表示输入帧中每对特征块的时间相似性,它们是MMVP中运动预测模块的唯一输入。这种设计提高了视频预测的准确性和效率,并降低了模型大小。

广泛的实验证明,MMVP在公共数据集上的表现优于最先进的方法,性能提升显著(在PSNR上提高了约1 dB,例如 UCF Sports数据集),而模型大小却显著减小(相当于84%或更小的模型尺寸)。

本文方法

图片

 

给定一个视频序列

图片

,其中 It 表示第t帧,通常是RGB格式。MMVP估计未来的T‘帧,即

图片

 

与已知的帧集相比,我们将估计的帧集表示为:

图片

 

该框架的训练仅由均方误差(MSE)损失来监督。MMVP 包括以下三个步骤:

  • 空间特征提取

  • 运动矩阵的构造和预测

  • 未来帧的合成和解码

步骤1:空间特征提取

空间特征提取涉及到MMVP框架的两个组成部分:图像编码器滤波器块

MMVP中的图像编码器 Ω 分别对从输入数据序列到相应特征的每个 Ii 进行编码。滤波器块Θ随后处理 fi,滤波器块的任务是滤除 fi 的运动不相关特征,以供后续的运动矩阵构建使用:

图片

 

我们使用一个具有残差的卷积网络(RRDBs)[44]来实现图像编码器,使用一个两层卷积网络来实现滤波器块。

步骤2:运动矩阵的构造和预测

MMVP基于特征对

图片

为每两个连续帧生成一组运动矩阵

图片

,这是通过计算每对特征块的余弦相似度来构建的。矩阵

图片

在位置

图片

的元素表示为:

图片

 

给定

图片

,矩阵预测函数

图片

预测未来的矩阵

图片

 

不同于预测连续帧之间的运动矩阵,这里预测了从最后观察到的帧

图片

到每个未来帧

图片

, 的运动矩阵,如下所示:

图片

 

这个设计旨在减少特征合成过程中的累积误差,并通过表格 3 中的长期预测设置得到验证。

图片

 

步骤3:未来帧的合成和解码

这一步骤通过使用观察到的信息和运动矩阵生成未来帧的信息。这一过程可以表示为:

图片

 

与仅使用最后观察到的帧的信息不同,我们使用所有观察到的信息进行未来合成,并通过重复矩阵乘法来减小较早帧的权重。公式中的 X 代表过去帧的观察信息。这些信息可以是图像编码器不同尺度的输出特征

图片

,也可以是观察到的帧

图片

 

由于运动矩阵是从某个尺度的图像特征构建的,因此矩阵与某些特征之间可能存在不兼容性。为了实现运动矩阵与观察到的特征(任何尺度)或图像之间的矩阵乘法,作者借用了来自[39]的像素解缩。像素解缩操作将特征或图像重新整形成与运动矩阵相同的尺度,以进行矩阵乘法。然后,将矩阵乘法的结果重新整形为特征或图像的原始尺度。如图4,这整个过程涉及很少的信息损失。根据表格 6 的研究,我们可以看出多尺度特征合成设计通常在系统中使用更多尺度的特征时能够获得更好的性能。

解码过程采用了UNet的解码器结构,结合了RRDB块来实现MMVP的图像解码器。这一设计允许来自所有尺度的图像特征以及原始图像的合成特征对最终的输出做出贡献。在框架训练中,使用均方误差(MSE)损失来进行监督。

图片

 

实验

数据集设置:

图片

 

实验结果

与SOTA的比较

图片

 

图片

 

图片

 

预测的运动矩阵可视化结果:

图片

 

UCF Sports 数据集的定性结果:

图片

 

消融实验

图片

 

图片

 

结论

本文提出的基于运动矩阵的视频预测框架(MMVP)是一个端到端可训练的双流管道。MMVP使用运动矩阵来表示与外观无关的运动模式。作为MMVP中运动预测模块的唯一输入,运动矩阵描述了特征块之间的多对多关系,无需训练额外的模块;通过矩阵乘法直观地组合了未来特征与多尺度图像特征,有助于运动预测更加集中,有效地减少了外观上的信息损失。通过广泛的实验证明,MMVP在模型大小和性能方面均优于现有的最先进方法。

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

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

相关文章

【Java】spring

一、spring spring是一个很大的生态圈,里面有很多技术。 其中最基础的是spring framework,主要的技术 是springboot以及springcloud。 1、spring framework spring framework是spring生态圈中最基础的项目,是其他项目的基础。 1.1、核心…

Http---HTTP 请求报文

1. HTTP 请求报文介绍 HTTP最常见的请求报文有两种: GET 方式的请求报文POST 方式的请求报文 说明: GET: 获取web服务器数据POST: 向web服务器提交数据 2. HTTP GET 请求报文分析 HTTP GET 请求报文效果图: GET 请求报文说明: ---- 请求行 ---- GET / HTTP/1.1 # GET请…

华为鸿蒙开发适合哪些人学习?

随着鸿蒙系统的崛起,越来越多的人开始关注鸿蒙开发,并希望成为鸿蒙开发者。然而,鸿蒙开发并不适合所有人,那么哪些人最适合学习鸿蒙开发呢?本文将为您总结鸿蒙开发适合的人群。 一、具备编程基础的人 学习鸿蒙开发需要…

账号多、用户咨询量大无法及时回复?「互动管理」助力高效经营!

随着互联网行业不断向纵深发展,内容形态与营销场景也更加多元化。越来越多的品牌跑步入场,深耕社媒营销,建立多平台营销矩阵,借助社媒平台的全域态势助力品牌增长。 据云略《2023品牌新媒体矩阵营销洞察报告》显示,目前…

多任务数据采集

进程:操作系统中资源分配的基本单位 线程:使用进程资源处理具体任务 一个进程中可以有多个线程:进程相当于一个公司,线程是公司里面的员工。 一 多线程 多线程都是关于功能的并发执行。而异步编程是关于函数之间的非阻塞执行&…

数据结构和算法-红黑树(定义 性质 查找 插入 删除)

文章目录 红黑树的定义和性质为什么要发明红黑树?红黑树怎么考总览红黑树的定义实例:一颗红黑树练习:是否符合红黑树的要求一种可能的出题思路补充概念:节点黑高 红黑树的性质 红黑树的查找红黑树的插入实例小结与黑高相关的理论 …

【Java】网络编程-TCP回显服务器代码编写

前面我们讲了基于UDP的网络编程 UDP回显服务器 UDP字典服务器 下面我们来讲基于TCP的回显服务编写 1、服务器 import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.io.PrintWriter; import java.net.ServerSocket; impo…

opencv入门到精通——OpenCV4.1.2之性能衡量与优化方法

目录 目标 使用OpenCV衡量性能 OpenCV中的默认优化 在IPython中衡量性能 更多IPython魔术命令 性能优化技术 目标 在图像处理中,由于每秒要处理大量操作,因此必须使代码不仅提供正确的解决方案,而且还必须以最快的方式提供。因此&#…

1270. 数列区间最大值(线段树求区间最大)

题目&#xff1a; 1270. 数列区间最大值 - AcWing题库 输入样例&#xff1a; 10 2 3 2 4 5 6 8 1 2 9 7 1 4 3 8输出样例&#xff1a; 5 8 代码&#xff1a; #include <cstdio> #include <iostream> #include <climits>//INT_MIN头文件using namespace s…

【经典LeetCode算法题目专栏分类】【第8期】滑动窗口:最小覆盖子串、字符串排列、找所有字母异位词、 最长无重复子串

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能AI、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推荐--…

2023年终总结 | 四平八稳

年度回顾 年度关键词&#xff1a;四平八稳 百科解读&#xff1a;形容物体放置的平稳或言行稳当&#xff1b;也指做事但求无过&#xff0c;不思进取。 我在写这篇文章就在思考用什么关键词来描述我过去这一年&#xff0c;似乎这一年没有特别让我特别惊喜的事情&#xff0c;无论是…

【实训项目】消费账单记录小程序

1.项目说明 背景&#xff1a; 着网络技术的不断发展&#xff0c;人们的消费观念在不断变化&#xff0c;消费手段也变得错综复杂。很多人都在困扰&#xff0c;钱到底花在了那里。 目的&#xff1a; 为了解决很多人的钱花在哪了的困扰&#xff0c;我们组决定制作一个消费账单…

【原理图PCB专题】原理图图纸锁定/解锁与PCB文件加密方式

在工作中我们会遇到需要冻结原理图进行评审和加密图纸防止被他人盗用的需求。那么在OrCAD Capture中如何对图纸进行锁定与解锁,如何在Allegro中对PCB工程进行加密呢? 原理图锁定与解锁 打开原理图,在图纸中单击右键,选择lock/unlock就可以进行锁定与解锁。 锁定时图纸图…

xml 可扩展标记语言

我是南城余&#xff01;阿里云开发者平台专家博士证书获得者&#xff01; 欢迎关注我的博客&#xff01;一同成长&#xff01; 一名从事运维开发的worker&#xff0c;记录分享学习。 专注于AI&#xff0c;运维开发&#xff0c;windows Linux 系统领域的分享&#xff01; 本…

【CF闯关练习】—— 900分段

&#x1f30f;博客主页&#xff1a;PH_modest的博客主页 &#x1f6a9;当前专栏&#xff1a;cf闯关练习 &#x1f48c;其他专栏&#xff1a; &#x1f534;每日一题 &#x1f7e1; C跬步积累 &#x1f7e2; C语言跬步积累 &#x1f308;座右铭&#xff1a;广积粮&#xff0c;缓…

java定义三套场景接口方案

一、背景 在前后端分离开发的背景下&#xff0c;后端java开发人员现在只需要编写接口接口。特别是使用微服务开发的接口。resful风格接口。那么一般后端接口被调用有下面三种场景。一、不需要用户登录的接口调用&#xff0c;第二、后端管理系统接口调用&#xff08;需要账号密…

loki-日志

一、loki Github ELK虽然功能丰富&#xff0c;但规模复杂&#xff0c;资源占用高&#xff0c;操作苦难&#xff0c;很多功能往往用不上&#xff0c;loki 受 prometheus 启发的水平可扩展、高可用、多租户日志聚合系统&#xff0c;它的设计非常经济高效且易于操作&#xff0c;…

使用【OpenI启智平台】进行模型训练

前言 启智平台OpenI是一个人工智能开源开放平台&#xff0c;提供免费GPU算力可以进行模型训练。模式是git进行项目管理&#xff0c;可以创建调试任务调试代码以及保存镜像&#xff0c;创建训练任务训练模型&#xff0c;也提供推理和评测&#xff0c;我没用过就不讲述了。后来我…

Sketch软件免费中文版在线使用教程及下载安装指南

什么是Sketch&#xff1f; Sketch是一款专为设计量身定制的矢量绘图软件&#xff0c;广泛应用于UI/UX设计和原型制作。 Sketch由荷兰Bohemiancoding公司开发&#xff0c;并于2010年首次发布。当时&#xff0c;AdobePhotoshop、AdobeIlustrator等主流设计工具虽然功能强大&…

MySQL-1

1 数据库基础概念 Data数据 对客观事物的符号表示&#xff0c;如图形符号、数字、字母等&#xff0c;数据是数据库中存储的基本对象。2. DB数据库数据库(Database,简称DB)的定义&#xff1a;“按照数据结构来组织、存储和管理数据的仓库” 3. DBMS数据库管理系统概念&#xff…