[论文阅读] SeeSR: Towards Semantics-Aware Real-World Image Super-Resolution
文章目录
- 一、前言
- 二、主要贡献
- 三、Introduction
- 四、Methodology
- 4.1 Motivation :
- 4.2Framework Overview.**
一、前言
通信作者是香港理工大学 & OPPO研究所的张磊教授,也是图像超分ISR的一个大牛了。 论文如下
SeeSR: Towards Semantics-Aware Real-World Image Super-Resolution[paper][code]
二、主要贡献
提出语义感知的方式来保持Real ISR 中的语义保真度。主要包括以下步骤
- 训练退化感知提示词提取器(degradationaware prompt extractor) 可以在大的退化图像中同时生成软语义提示词和硬语义提示词,提升T2I模型生成充满细节且语义准确的结果。
- 在推理阶段,将LR 图像的信息融入初始采样噪声,缓解扩散模型产生过多额外细节的趋势。
三、Introduction
一些常规的介绍。数据方面从单一退化到多种退化,模型方面从GAN发展到了DDPMs。由于大规模预训练的文本到图像模型(T2I)包含大量的文本图像配对数据,包含了丰富的自然图像先验,因此需要作者开始挖掘这种模型的潜力 。StableSR、PASD、DiffBIR就是利用T2I模型作为预训练,进行Real-ISR任务。但是他们存在一定局限性,例如StableSR和DiffBIR 仅依靠LR图像作为控制信号,忽略了语义文本信息在预训练的T2I模型中的作用,PASD模型尝试使用现成的high-level模型提取语义提示词作为额外的控制信息,但是如果LQ图像包含太多物体或者退化太多严重,这个方式就会失效。
这篇工作
这篇文章深入研究如何提取如何才能更有效的提取提示词来充分利用T2I模型的潜力,并总结了两个关键点:1、提示词应该覆盖尽可能多的对象,帮助模型理解不同的局部区域,2、提示词应该是退化感知的,要避免错误的语义恢复结果。
基于这两点,作者提出这个方法Semantic-aware SR (SeeSR),这个模型可以使用高质量的语义提示词来增加T2I模型在Real-SR方向上的潜力,这个方法包括两个阶段。1、微调语义提示词提取器,使它获得退化感知能力。2、语义提示词、LR图像共同输入T2I模型进行精细的控制,其中推理阶段还将LR图像的信息嵌入到初始采样噪声中避免生成过多的随机细节。
四、Methodology
4.1 Motivation :
为了释放预训练的 T2I 模型的生成潜力,同时避免 Real-ISR 输出中的语义失真!
作者研究了三种语义提升风格,分别是 classification-style, caption-style ,tag-style.。经过对比,发现他们有如下的特点:
作者认为classification-style 缺少局部物体的信息,caption-style 会出现介词和副词,影响注意力,在存在降质的前提下,有可能语义提示错误导致错误的结果;tag-style 可以提供大量的物体信息,但是有着和caption-style一样的问题,在降质情况下,可能会导致错误的语义信息。
具体的比较可以看图1,不同种类提示词的结果:

作者认为,可以在tag-style基础上加上降质感知就可以得到较好的结果。

4.2Framework Overview.**
基于上述讨论,作者确定了整体的任务框架,主要目的是提取高质量的tag-style 提示词用来发挥T2I模型的潜力。下图是整体的任务框架。

首先是学习退化感知提示词提取器degradation-aware prompt extractor (DAPE),这个提取器包括image encoder 和 tagging head。这个提取器的目的就是让LR提取的提示词和HR提取的提示词尽可能接近。然后输出两个特征,分别是feature representations 以及 tags。这两个东西用来控制T2I模型的生成过程。
第一阶段学习DAPE模块,使用LR、HR的输出作为约束

第二阶段是将提示词以及LR image 通过交叉注意力模块控制预训练T2I模型。

最后是细节的处理,在推理阶段,LR的信息嵌入到初始采样噪声中,作者说这样是很有效果的,具体对比图如下

如果没有LRE模块,那么可能将一些退化增强为细节,如果有这个模块,那么整体生成就更加正常了。
具体实验图见论文
相关文章:
[论文阅读] SeeSR: Towards Semantics-Aware Real-World Image Super-Resolution
文章目录 一、前言二、主要贡献三、Introduction四、Methodology4.1 Motivation :4.2Framework Overview.** 一、前言 通信作者是香港理工大学 & OPPO研究所的张磊教授,也是图像超分ISR的一个大牛了。 论文如下 SeeSR: Towards Semantics-Aware Rea…...
全面了解HTTP(一)
全面了解HTTP(二)-CSDN博客 web及网络基础 使用HTTP协议访问web: HTTP: 网络基础TCP/IP 与HTTP关系密切的协议:IP,TCP,DNS 负责域名解析的DNS服务 各种协议与HTTP协议的关系 URI和URL 简单的HTTP协议 HTTP协议用于客户端和服…...
LM Studio笔记
一、什么是 LM Studio? LM Studio 是一款功能强大、易于使用的桌面应用程序,用于在本地机器上实验和评估大型语言模型(LLMs)。它允许用户轻松地比较不同的模型,并支持使用 NVIDIA/AMD GPU 加速计算。 功能集࿱…...
SoftwareCluster中如何配置VendorSignature
How to create VendorSignature...
Linux CentOS 7部署Vulhub靶场
漏洞复现环境: 1、Linux操作系统中通过Docker部署的Vulhub靶场: docker docker-compose 2、Nmap扫描工具 一、部署靶场 1、安装Docker 1、下载docker yum install docker 安装完成,如下图: 2、开启docker服务 [rootlocalhost…...
Golang GORM系列:GORM分页和排序
高效的数据检索和表示是应用程序开发的关键方面。GORM是健壮的Go对象关系映射库,它为开发人员提供了强大的工具来实现这一点。无论你是在构建动态web应用程序还是数据密集型服务,掌握GORM中的分页和排序使您能够提供无缝且高效的用户体验。本文我们将深入…...
【怎么使用Redis实现一个延时队列?】
怎么使用Redis实现一个延时队列? 详细说明Java代码示例解释注意事项使用Redis实现延时队列通常通过有序集合(Sorted Set)来实现,利用Redis的ZSET类型及其相关命令可以很方便地实现这一功能。 有序集合中的每个元素都有一个分数(score),我们可以利用这个分数来存储消息需…...
HarmonyNext上传用户相册图片到服务器
图片选择就不用说了,直接用 无须申请权限 。 上传图片,步骤和android对比稍微有点复杂,可能是为了安全性考虑,需要将图片先拷贝到缓存目录下面,然后再上传,当然你也可以转成Base64,然后和服务…...
宝塔docker 安装oracle11G
1、拉取镜像 sudo docker pull iatebes/oracle_11g #iatebes为用户名2、查看镜像 sudo docker images3、创建并运行容器 docker run -d --privileged --name oralce11g -p 1521:1521 iatebes/oracle_11g4、登录到容器 5、进入容器并修改system用户密码 docker exec -it orac…...
计算机视觉-OpenCV图像处理
1.Matplotlib数据可视化(绘制图像直方图、可视化矩阵) # Matplotlib 数据可视化(绘制图像直方图、可视化矩阵) # 本节主要讲解如何使用 Matplotlib 绘制图像直方图和可视化矩阵。 # 1. 绘制图像直方图 # 2. 可视化矩阵# 1. 绘制图…...
【论文笔记】Transformer^2: 自适应大型语言模型
Code repo: https://github.com/SakanaAI/self-adaptive-llms 摘要 自适应大型语言模型(LLMs)旨在解决传统微调方法的挑战,这些方法通常计算密集且难以处理多样化的任务。本文介绍了Transformer(Transformer-Squared)…...
【医学影像AI】50个眼科影像数据集(1)分类任务
【医学影像】50个眼科影像数据集(1)分类任务 【医学影像】50个眼科影像数据集(2)分割任务 【医学影像】50个眼科影像数据集(3)其它任务 【医学影像AI】50 个眼科影像数据集(1)分类任…...
2025年-G4--lc75--Best Time to Buy and Sell Stock(java版)
1.题目描述 2.思路 思路1: 3.java代码实现 class Solution {public int maxProfit(int[] prices) {// //初始化最小价格为最大值,最大利润为0// int minPriceInteger.MAX_VALUE;// int maxProfit0;// //遍历价格数组// for (int price : prices)// …...
STM32 PWM脉冲宽度调制介绍
目录 背景 PWM 模式 影子寄存器和预装载寄存器 PWM对齐模式 PWM 边沿对齐模式 向上计数配置 向下计数的配置 PWM 中央对齐模式 程序 第一步、使能GPIOB组、AFIO、TIM3外设时钟 第二步、输出通道端口配置编辑 第三步、定时器配置产生频率 第四步、PWM输出配置 第…...
WebGPU顶点插槽(Vertex Buffer Slot)使用指南
本文将通过完整代码示例和逐行注释,详细解释WebGPU中顶点缓冲区的配置方法,特别针对shaderLocation参数与着色器的对应关系进行重点说明。 一、顶点数据定义与缓冲区创建 // 定义顶点数据结构(逻辑层) // 包含位置(position)、颜…...
JSP(学习自用)
一、本质 JSP解析后就是Servlet类的java代码。 二、jsp内嵌java代码 1、声明脚本 用于声明属性和方法。 <%!//声明脚本//用于声明属性和方法public void test(){}String easyName"张三"; %> 2、运行脚本 相当于在service方法中写代码 <% //运行脚本…...
ZYNQ TCP Server PS端千兆网口速率低问题,要修改BSP中LWIP配置参数
用VITIS教程里面 TCP UDP应用工程例程 打算测试PS端千兆网口速率。ZYNQ核心板用黑金的,外部板子自画的网口电路和其它电路。TCP SERVER时 iperf测试速率 只有60~70Mbit/s?然后用UDP SERVER方式,发现能达到 950Mbit/s??…...
毕业设计—基于Spring Boot的社区居民健康管理平台的设计与实现
🎓 毕业设计大揭秘!想要源码和文章?快来私信我吧! Hey小伙伴们~ 👋 毕业季又来啦!是不是都在为毕业设计忙得团团转呢?🤔 别担心,我这里有个小小的福利要分享给你们哦&…...
【计算机网络】数据链路层数据帧(Frame)格式
在计算机网络中,数据帧(Frame) 是数据链路层的协议数据单元(PDU),用于在物理介质上传输数据。数据帧的格式取决于具体的链路层协议(如以太网、PPP、HDLC 等)。以下是常见数据帧格式的…...
机器学习PCA和LDA
主成分分析(PCA, Principal Component Analysis)和线性判别分析(LDA, Linear Discriminant Analysis)是两种常用的降维方法,它们虽然都用于数据降维,但核心思想和应用场景不同。 PCA(主成分分析…...
C#: String s = new String(“Hello“)无法编译?编程语言字符集有两个?为什么这种变量名“\u0061\u0062”都能编译通过?
C#: String s new String("Hello")无法编译? C# String类型是literal常量,默认不能用new创建,但可以在unsafe下用char *字符串指针创建。 char* charPtr stackalloc char[2]; charPtr[0] H; charPtr[1] \0; String myString new Strin…...
Visual Studio Code使用ai大模型编成
1、在Visual Studio Code搜索安装roo code 2、去https://openrouter.ai/settings/keys官网申请个免费的配置使用...
nlp|微调大语言模型初探索(1),LLaMA-Factory
前言 微调模型通常比从零开始训练一个模型的技术要求低。公司不需要拥有大量的深度学习专家,利用现有的开源工具和库(如Hugging Face的Transformers等),中小型公司可以轻松地使用和微调大型模型,从而快速实现AI能力的集…...
c++TinML转html
cTinML转html 前言解析解释转译html类定义开头html 结果这是最终效果(部分):  前言 在python.tkinter设计标记语言(转译2-html)中提到了将Ti…...
Gentleman:优雅的Go语言HTTP客户端工具包
gentlemen介绍,特点等 插件驱动架构:Gentleman的核心特点是其插件系统,允许用户注册和重用各种自定义插件,如重试策略或动态服务器发现,以增强HTTP客户端的功能。 中间件层:项目内置了一个上下文感知的层次…...
JDK1.8新特性面试题
lambda表达式 Lambda表达式极大地简化了匿名内部类的创建,促进了函数式编程风格。开发者可以更简洁地定义只有一行代码的函数对象,并将其作为参数传递给方法或者赋值给变量。 三要素: 形式参数、箭头、代码块 (形式参数…...
Windchill-PDM-设置环境
Web 浏览器和 Java 插件版本 请确保 Windchill PDMLink 支持您使用的 Web 浏览器及 Java 插件的版本。PTC 软件对照表内列出了所支持的浏览器和插件。 软件一览表列出了平台、操作系统以及经认证可以在 Windows 和 UNIX 操作系统上与 此版本一起使用的第三方产品的组合。产品和…...
《蓝耘服务器:领先架构、技术创新与行业应用全景解析》
🌟 嗨,我是Lethehong!🌟 🌍 立志在坚不欲说,成功在久不在速🌍 🚀 欢迎关注:👍点赞⬆️留言收藏🚀 🍀欢迎使用:小智初学…...
前端【技术方案】重构项目
1. 明确重构目标 优化性能 减少页面加载时间降低资源占用 提升代码可维护性 更规范的代码风格更清晰的代码结构更明确的模块设计 扩展功能 为项目添加新功能改进现有功能 2. 评估项目现状 审查代码 全面检查现有代码,找出代码中的问题,如代码冗余、耦合…...
C#中反射的原理介绍及常见的应用场景介绍
反射(Reflection)是C#中的一种机制,允许程序在运行时获取类型信息并动态调用其成员。通过反射,程序可以访问程序集、模块、类型及其成员(如方法、属性、字段等),并能在运行时创建对象、调用方法…...
