【论文精读】2024 ECCV--MGLD-VSR现实世界视频超分辨率(RealWorld VSR)

news2025/6/4 8:29:55

文章目录

  • 一、摘要
  • 二、问题
  • 三、Method
    • 3.1 Latent Diffusion Model
    • 3.2 Motion-guided Diffusion Sampling
    • 3.3 Temporal-aware Decoder Fine-tuning
  • 四、实验设置
    • 4.1 训练阶段
    • 4.2 训练数据
  • 贡献总结

论文全称: Motion-Guided Latent Diffusion for Temporally Consistent Real-world Video Super-resolution
代码路径: https://github.com/IanYeung/MGLD-VSR
更多RealWolrd VSR整理在 https://github.com/qianx77/Video_Super_Resolution_Ref

一、摘要

现实世界中的低分辨率(LR)视频存在多样化和复杂的退化现象,这对视频超分辨率(VSR)算法在高质量地再现其高分辨率(HR)对应物时提出了巨大的挑战。最近,扩散模型在图像还原任务中展现出了令人信服的生成真实细节的性能。然而,扩散过程具有随机性,使得控制还原图像内容变得困难。当将扩散模型应用于视频超分辨率(VSR)任务时,这个问题变得更加严重,因为时间一致性对视频的感知质量至关重要。
在本文中,我们通过利用预训练的潜在扩散模型的优势,提出了一种有效的实际应用视频超分辨率算法。为了确保相邻帧之间内容的一致性,我们利用低分辨率视频中的时间动态,通过优化潜在采样路径并引入运动引导损失,来指导扩散过程,从而确保生成的高分辨率视频保持一致且连续的视觉流。为了进一步减轻生成细节的间断性,我们在解码器中插入了时间模块,并使用一种创新的序列导向损失对其进行微调。所提出的基于运动引导潜在扩散(MGLD)的超分辨率算法在真实世界的超分辨率基准数据集上实现了显著优于现有技术的感知质量,验证了所提模型设计和训练策略的有效性。代码和模型可在 https://github.com/IanYeung/MGLD-VSR 获取。

二、问题

1、CNN Transformer架构表现不好
2、diffusion模型时序细节稳定性差

三、Method

图片

3.1 Latent Diffusion Model

介绍下LDM基本过程

3.2 Motion-guided Diffusion Sampling

在采样过程中引入了一种创新的运动引导模块,以测量跨帧的潜在特征的变形误差。
1、计算光流(前向和反向),下采样光流图去适应latent feature的尺寸
2、warp latent feature到相邻帧,然后计算两个方向上的累计误差
图片
3、计算occlusion区域,增加一个mask,仅这些位置提供梯度
图片

3.3 Temporal-aware Decoder Fine-tuning

latent的稳定性得到提升了,但是毕竟latent尺度是x8以下的,放大后可能又不稳定了,所以VAE-Dec也需要微调下
1、如图2所示,其中时序方面(temporal convs)的卷积是 1D convolutions(计算成本小)
2、从encoder通过CFW模块引入编码器特征,实现保真的效果
3、训练时候冻结原始空间卷积spatial convs
4、ℓ1 loss and perceptual loss、GAN-loss、frame difference loss、结构加权一致性损失 Lswc (structure weighted consistency loss)
图片
其中w=1+wS,代表着边缘位置,这个损失看起来是为了让前后帧的特征对齐
总的loss
图片

四、实验设置

4.1 训练阶段

两个训练阶段
1、finetune 去噪U-Net,权重使用sd2.1初始化,插入1D temporal convolution ,原始U-Net权重冻结,仅训练条件 和 时序模块
条件模块:包括小的时间感知的encoder,负责编码LR,然后注入去噪U-Net (使用SFT模块注入)
时序模块 :每个卷积块后面的1D temporal convolution
batch size设置24,序列长度设置6,latent尺寸设置64x64
2、首先生成干净的latent 序列,然后finetune 时间感知序列decoder (使用LR序列、生成的latent序列、HR序列)
这个阶段固定的VAE的decoder,然后插值时序模块和CFW模块来训练
batch size 设置4,序列长度设置5,图像尺寸设置512x512

4.2 训练数据

GT: REDS
LQ: RealBasicVSR的降质

贡献总结

1、提出了一种基于运动引导损失的扩散采样过程,使得输入帧的时间动态可以用于生成时间一致的潜在特征。
2、提出了一种时间感知序列解码器,以及两个面向序列的损失,以进一步增强生成视频的连续性。

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

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

相关文章

SpringBoot简单体验

1 Helloworld 打开:https://start.spring.io/ 选择maven配置。增加SpringWeb的依赖。 Generate之后解压,代码大致如下: hpDESKTOP-430500P:~/springboot2/demo$ tree ├── HELP.md ├── mvnw ├── mvnw.cmd ├── pom.xml └── s…

2025年通用 Linux 服务器操作系统该如何选择?

2025年通用 Linux 服务器操作系统该如何选择? 服务器操作系统的选择对一个企业IT和云服务影响很大,主推的操作系统在后期更换的成本很高,而且也有很大的迁移风险,所以企业在选择服务器操作系统时要尤为重视。 之前最流行的服务器…

Azure devops 系统之五-部署ASP.NET web app

今天介绍如何通过vscode 来创建一个asp.net web app,并部署到azure 上。 创建 ASP.NET Web 应用 在您的计算机上打开一个终端窗口并进入工作目录。使用 dotnet new webapp 命令创建一个新的 .NET Web 应用,然后将目录切换到新创建的应用。 dotnet new webapp -n MyFirstAzu…

学习路之PHP--easyswoole_panel安装使用

学习路之PHP--easyswoole_panel安装使用 一、新建文件夹二、安装三、改配置地址四、访问 IP:Port 自动进入index.html页面 一、新建文件夹 /www/wwwroot/easyswoole_panel 及配置ftp 解压easyswoole_panel源码 https://github.com/easyswoole-panel/easyswoole_panel 二、安…

【拓扑排序】P6560 [SBCOI2020] 时光的流逝|普及+

本文涉及知识点 C图论 拓扑排序 P6560 [SBCOI2020] 时光的流逝 题目背景 时间一分一秒的过着,伴随着雪一同消融在了这个冬天, 或许,要是时光能停留在这一刻,该有多好啊。 … “这是…我在这个小镇的最后一个冬天了吧。” “嗯…

SSRF 接收器

接收请求 IP.php <?php // 定义日志文件路径 $logFile hackip.txt;// 处理删除请求 if (isset($_POST[delete])) {$ipToDelete $_POST[ip];$lines file($logFile, FILE_IGNORE_NEW_LINES);$newLines array();foreach ($lines as $line) {$parts explode( | , $line);…

FastAPI MCP 快速入门教程

目录 什么是 FastAPI MCP&#xff1f;项目设置1. 初始化项目2. 安装依赖3. 项目结构 编写代码创建主应用文件 运行和测试1. 启动服务器2. 使用 MCP Inspector 测试 什么是 FastAPI MCP&#xff1f; FastAPI MCP 是一个将 FastAPI 应用程序转换为 Model Context Protocol (MCP)…

uni-app学习笔记二十一--pages.json中tabBar设置底部菜单项和图标

如果应用是一个多 tab 应用&#xff0c;可以通过 tabBar 配置项指定一级导航栏&#xff0c;以及 tab 切换时显示的对应页。 在 pages.json 中提供 tabBar 配置&#xff0c;不仅仅是为了方便快速开发导航&#xff0c;更重要的是在App和小程序端提升性能。在这两个平台&#xff…

【Redis】基本命令

Redis命令行客户端 现在我们已经启动了Redis服务&#xff0c;下面将介绍如何使用redis - cli连接、操作Redis服务。客户端和服务端的交互过程如图1 - 3所示。 redis - cli可以使用两种方式连接Redis服务器。 第一种是交互式方式&#xff1a;通过redis - cli -h {host} -p {p…

哈希:闭散列的开放定址法

我还是曾经的那个少年 1.概念 通过其要存储的值与存储的位置建立映射关系。 如&#xff1a;基数排序也是运用了哈希开放定址法的的思想。 弊端&#xff1a;仅适用于数据集中的情况 2.开放定址法 问题&#xff1a;按照上述哈希的方式&#xff0c;向集合插入数据为44&#xff…

Unity-QFramework框架学习-MVC、Command、Event、Utility、System、BindableProperty

QFramework QFramework简介 QFramework是一套渐进式、快速开发框架&#xff0c;适用于任何类型的游戏及应用项目&#xff0c;它包含一套开发架构和大量的工具集 QFramework的特性 简洁性&#xff1a;QFramework 强调代码的简洁性和易用性&#xff0c;让开发者能够快速上手&a…

FPGA实现CNN卷积层:高效窗口生成模块设计与验证

我最近在从事一项很有意思的项目&#xff0c;我想在PFGA上部署CNN并实现手写图片的识别。而本篇文章&#xff0c;是我迈出的第一步。具体代码已发布在github上 模块介绍 卷积神经网络&#xff08;CNN)可以分为卷积层、池化层、激活层、全链接层结构&#xff0c;本篇要实现的&…

LeetCode 3068.最大节点价值之和:脑筋急转弯+动态规划(O(1)空间)

【LetMeFly】3068.最大节点价值之和&#xff1a;脑筋急转弯动态规划&#xff08;O(1)空间&#xff09; 力扣题目链接&#xff1a;https://leetcode.cn/problems/find-the-maximum-sum-of-node-values/ 给你一棵 n 个节点的 无向 树&#xff0c;节点从 0 到 n - 1 编号。树以长…

BLIP-2

目录 摘要 Abstract BLIP-2 模型框架 预训练策略 模型优势 应用场景 实验 代码 总结 摘要 BLIP-2 是一种基于冻结的图像编码器和大型语言模型的高效视觉语言预训练模型&#xff0c;由 Salesforce 研究团队提出。它在 BLIP 的基础上进一步优化&#xff0c;通过轻量级…

支持向量机(SVM)例题

对于图中所示的线性可分的20个样本数据&#xff0c;利用支持向量机进行预测分类&#xff0c;有三个支持向量 A ( 0 , 2 ) A\left(0, 2\right) A(0,2)、 B ( 2 , 0 ) B\left(2, 0\right) B(2,0) 和 C ( − 1 , − 1 ) C\left(-1, -1\right) C(−1,−1)。 求支持向量机分类器的线…

SQL中各个子句的执行顺序

select、from、 join、where、order by、group by、having、limit 解释 1) FROM (确定数据源) 查询的执行首先从FROM子句开始&#xff0c;确定数据的来源(表、视图、连接等)。 2) JOIN (如果有JOIN操作) 在FROM子句之后&#xff0c;SQL引擎会执行连接操作(JOIN)&#xff0c…

本地部署消息代理软件 RabbitMQ 并实现外部访问( Windows 版本 )

RabbitMQ 是由 Erlang 语言开发的 消息中间件&#xff0c;是一种应用程序之间的通信方法。支持多种编程和语言和协议发展&#xff0c;用于实现分布式系统的可靠消息传递和异步通信等方面。 本文将详细介绍如何在 Windows 系统本地部署 RabbitMQ 并结合路由侠实现外网访问本…

基于微信小程序的垃圾分类系统

博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;熟悉各种主流语言&#xff0c;精通java、python、php、爬虫、web开发&#xff0c;已经做了六年的毕业设计程序开发&#xff0c;开发过上千套毕业设计程序&#xff0c;没有什么华丽的语言&#xff0…

流媒体基础解析:视频清晰度的关键因素

在视频处理的过程中&#xff0c;编码解码及码率是影响视频清晰度的关键因素。今天&#xff0c;我们将深入探讨这些概念&#xff0c;并解析它们如何共同作用于视频质量。 编码解码概述 编码&#xff0c;简单来说&#xff0c;就是压缩。视频编码的目的是将原始视频数据压缩成较…

grid网格布局

使用flex布局的痛点 如果使用justify-content: space-between;让子元素两端对齐&#xff0c;自动分配中间间距&#xff0c;假设一行4个&#xff0c;如果每一行都是4的倍数那没任何问题&#xff0c;但如果最后一行是2、3个的时候就会出现下面的状况&#xff1a; /* flex布局 两…