草庐IT

CVPR2023 即插即用系列 | 一种高效轻量的自注意力机制助力图像恢复网络问鼎SOTA!

CVHub 2023-12-19 原文

Title: Efficient and Explicit Modelling of Image Hierarchies for Image Restoration

PDF: https://arxiv.org/pdf/2303.00748

Code: https://github.com/ofsoundof/GRL-Image-Restoration.git

导读

全局,区域和局部范围的特征可以很好地被神经网络用于图像恢复任务,本文提出了一种基于锚点Anchored的条纹自注意力机制用于实现全局范围依赖性建模,它在自注意力的空间和时间复杂度以及超越区域范围的建模能力之间取得了良好的平衡;其次提出了一种新的Transformer网络GRL通过基于锚点的条纹自注意力机制,窗口自注意力和通道注意力,明确地模拟了全局、区域和局部范围内的图像层次结构特征。最后将提出的网络应用于七种图像恢复任务中,都达到了最先进的结果!

引言

::: block-1

图1. 局部特征(边缘、颜色)和区域特征(粉色框处)可以很好地由卷积神经网络(CNN)和窗口自注意力进行建模。但相比之下,全局特征(青色矩形处)难以有效且明确地进行特征建模。
:::

图像恢复旨在从低质量图像恢复出高质量图像,这些低质量图像通常是由于图像退化过程(如模糊、降采样、噪声引入和JPEG压缩)导致的。因为在图像退化过程中,其重要内容信息缺失,所以图像恢复是一个具有挑战性的逆过程。因此为了恢复高质量图像,应该充分利用退化图像中展现出的丰富信息。

自然图像包含全局、区域和局部范围内的一系列特征,这些特征可以被深度神经网络用于图像恢复。 局部特征通常是一些边缘和颜色特征,由于其只跨度几个像素,所以可以使用小卷积核(例如3 x 3)进行建模捕获;对于区域特征,其通常跨度数十个像素,这一窗口区域特征通常可以覆盖一些小物体和大物体的某个部分(如上图1的粉色框),由于区域特征范围更大,因此可选择使用大卷积核进行建模,但其参数量和计算量未免过大且低效,因此带有窗口注意力机制的Transformer会是更好的选择;除了局部和区域特征之外,某些特征具有全局跨度性(图1中的青色矩形):主要体现在对称性和多尺度模式重复性(图1a),同一尺度的纹理相似性(图1b),以及大物体内容结构相似性和一致性(图1c),为了建模处理这个范围的特征,需要网络具备全局图像理解的能力。

上面提到的局部和区域范围特征可以很好的建模捕获,但全局特征的建模存在两个主要的挑战:

  • 首先,现有的基于卷积和窗口注意力的图像恢复网络不能通过使用单个计算模块来明确捕获长距离依赖关系,因此全局图像理解主要通过将特征通过重复的计算模块进行逐步传播来实现。
  • 其次,当图像的分辨率不断提高,长距离依赖建模面临计算负担的挑战。

上述讨论引出了一系列研究问题:

  • 如何高效地在高维图像中对全局范围特征进行建模以进行图像恢复?
  • 如何通过单个计算模块明确地建模图像层次结构信息(局部、区域、全局),以进行高维图像恢复?
  • 这种联合建模如何能够在不同的图像恢复任务中带来统一的性能改进?

为此,本文围绕以上三个研究问题,逐一提出解决方案:

首先,本文提出了一种基于锚点的条纹自注意力机制用于实现全局范围依赖性建模;其次,提出了一种新的Transformer网络GRL用于在单个计算模块中明确地模拟全局,区域和局部范围的依赖关系;最后,所提出的GRL网络在七类图像恢复任务中(图像超分,去噪,JPEG压缩伪影去除,去马赛克,真实图像超分,单图运动去模糊,散焦去模糊)全部表现SOTA!如下图2所示:

::: block-1

图2. 所提出的GRL网络在各种图像恢复任务中都实现了最先进的结果
:::

方法

::: block-1

图3. 上图(a)展示了所提出的GRL网络架构图,它由多个Transformer Layer组成。上图(b)展示了Transformer Layer计算模块,它由三个子模块组成并用于建模全局,区域和局部图像结构特征,其中基于锚点的条纹自注意力机制Anchored Stripe Attention用于建模全局图像结构特征,基于窗口的自注意力机制Window Attention V2用于建模区域特征,而两个串联的3 x 3卷积再接一个通道注意力Channel Attention可用于建模出高效的局部特征。 上图(c) 展示了基于锚点的条纹自注意力机制结构图,该注意力机制可以帮助网络捕获超越区域范围(全局)的图像结构特征。
:::

Transformer自注意力机制架构虽然可以很好的建模出长远距离依赖关系并以此捕获全局特征信息,但图像tokens数量众多导致计算量巨大。为了降低计算复杂度,所以可以在窗口区域进行自注意力,但该类基于窗口的自注意力机制受限于窗口大小,仅能捕获基于窗口区域的上下文特征信息。那么这就引出一个问题:如何在低计算量情况下,建模出超出窗口区域范围的特征呢?

::: block-1

图4. 上图(a)和(b)是来自两个不同分辨率的相同图片,(a)中蓝色的像素点和(b)中红色的像素点都取自相同的一个位置。图(c)表示了蓝色像素点和其它像素点的注意力图;图(d)表示了红色像素点和其它像素点的注意力图。我们可以发现:图(c)和图(d)注意力图是非常相近的,这就是本文所说的跨尺度相似性
:::

作者通过如上图4发现了跨尺度相似性原理,于是作者想到了一个办法:通过对具有小分辨率的图像进行自注意力(小分辨率图像具有更少的tokens)来达到大分辨率图像进行自注意力的效果(基于跨尺度相似性原理),这就大大降低了计算量,而又可以有效建模出超越窗口区域范围的特征(全局特征)。

为了进一步降低计算量,作者发现了自然图像另一个重要的特性:自然图像的特征通常以非各向同性的方式出现,如上图5所示,图5©和(d)中的单个物体、图5(h)中的多尺度相似性、图5(e)和(g)中的对称性等。因此,全局范围的各向同性注意力对于捕捉非各向同性图像特征是多余的。基于此,文章提出了在非各向同性条纹内进行注意力处理的方法,该注意力机制包括四种模式:水平条纹、垂直条纹、平移水平条纹和平移垂直条纹。水平和垂直条纹的注意力机制可以在Transformer网络中交替使用。通过这种注意力方式,可以在保持全局范围建模能力的同时,降低全局自注意力计算的复杂度。

因此,再结合锚点的概念,提出了锚定条纹自注意力。对于这种注意力机制,利用引入的锚点在垂直和水平条纹内进行高效自注意力计算。

实验结果

结论

本文受到两个图像属性的启发:跨尺度相似性和各向异性图像特征,从而提出了一种高效的锚定条纹自注意力模块,用于建模图像的长远距离依赖关系。以此进一步提出了一种多功能网络架构GRL用于图像恢复任务,该网络可以有效的建模出全局,区域和局部范围的距离依赖关系,具备低计算量的同时,还在各大图像恢复任务中取得了最先进的结果。

写在最后

如果您也对人工智能和计算机视觉全栈领域感兴趣,强烈推荐您关注有料、有趣、有爱的公众号『CVHub』,每日为大家带来精品原创、多领域、有深度的前沿科技论文解读及工业成熟解决方案!

同时欢迎添加小编微信: cv_huber,备注CSDN,加入官方学术|技术|招聘交流群,一起探讨更多有趣的话题!

有关CVPR2023 即插即用系列 | 一种高效轻量的自注意力机制助力图像恢复网络问鼎SOTA!的更多相关文章

  1. ruby - 用 Ruby 编写一个简单的网络服务器 - 2

    我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b

  2. 华为OD机试用Python实现 -【明明的随机数】 2023Q1A - 2

    华为OD机试题本篇题目:明明的随机数题目输入描述输出描述:示例1输入输出说明代码编写思路最近更新的博客华为od2023|什么是华为od,od薪资待遇,od机试题清单华为OD机试真题大全,用Python解华为机试题|机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为o

  3. 网络编程套接字 - 2

    网络编程套接字网络编程基础知识理解源`IP`地址和目的`IP`地址理解源MAC地址和目的MAC地址认识端口号理解端口号和进程ID理解源端口号和目的端口号认识`TCP`协议认识`UDP`协议网络字节序socket编程接口`sockaddr``UDP`网络程序服务器端代码逻辑:需要用到的接口服务器端代码`udp`客户端代码逻辑`udp`客户端代码`TCP`网络程序服务器代码逻辑多个版本服务器单进程版本多进程版本多线程版本线程池版本服务器端代码客户端代码逻辑客户端代码TCP协议通讯流程TCP协议的客户端/服务器程序流程三次握手(建立连接)数据传输四次挥手(断开连接)TCP和UDP对比网络编程基础知识

  4. ruby - 检查网络文件是否存在,而不下载它? - 2

    是否可以在不实际下载文件的情况下检查文件是否存在?我有这么大的(~40mb)文件,例如:http://mirrors.sohu.com/mysql/MySQL-6.0/MySQL-6.0.11-0.glibc23.src.rpm这与ruby​​不严格相关,但如果发件人可以设置内容长度就好了。RestClient.get"http://mirrors.sohu.com/mysql/MySQL-6.0/MySQL-6.0.11-0.glibc23.src.rpm",headers:{"Content-Length"=>100} 最佳答案

  5. ruby - 404 未找到,但可以从网络浏览器正常访问 - 2

    我在这方面尝试了很多URL,在我遇到这个特定的之前,它们似乎都很好:require'rubygems'require'nokogiri'require'open-uri'doc=Nokogiri::HTML(open("http://www.moxyst.com/fashion/men-clothing/underwear.html"))putsdoc这是结果:/Users/macbookair/.rvm/rubies/ruby-2.0.0-p481/lib/ruby/2.0.0/open-uri.rb:353:in`open_http':404NotFound(OpenURI::HT

  6. 深度学习12. CNN经典网络 VGG16 - 2

    深度学习12.CNN经典网络VGG16一、简介1.VGG来源2.VGG分类3.不同模型的参数数量4.3x3卷积核的好处5.关于学习率调度6.批归一化二、VGG16层分析1.层划分2.参数展开过程图解3.参数传递示例4.VGG16各层参数数量三、代码分析1.VGG16模型定义2.训练3.测试一、简介1.VGG来源VGG(VisualGeometryGroup)是一个视觉几何组在2014年提出的深度卷积神经网络架构。VGG在2014年ImageNet图像分类竞赛亚军,定位竞赛冠军;VGG网络采用连续的小卷积核(3x3)和池化层构建深度神经网络,网络深度可以达到16层或19层,其中VGG16和VGG

  7. 【网络】-- 网络基础 - 2

    (本文是网络的宏观的概念铺垫)目录计算机网络背景网络发展认识"协议"网络协议初识协议分层OSI七层模型TCP/IP五层(或四层)模型报头以太网碰撞路由器IP地址和MAC地址IP地址与MAC地址总结IP地址MAC地址计算机网络背景网络发展        是最开始先有的计算机,计算机后来因为多项技术的水平升高,逐渐的计算机变的小型化、高效化。后来因为计算机其本身的计算能力比较的快速:独立模式:计算机之间相互独立。    如:有三个人,每个人做的不同的事物,但是是需要协作的完成。    而这三个人所做的事是需要进行协作的,然而刚开始因为每一台计算机之间都是互相独立的。所以前面的人处理完了就需要将数据

  8. 华为OD机试真题 C++ 实现【带传送阵的矩阵游离】【2023 Q2 | 200分】 - 2

            所有题目均有五种语言实现。C实现目录、C++实现目录、Python实现目录、Java实现目录、JavaScript实现目录题目n行m列的矩阵,每个位置上有一个元素你可以上下左右行走,代价是前后两个位置元素值差的绝对值.另外,你最多可以使用一次传送阵(只能从一个数跳到另外一个相同的数)求从走上角走到右下角最少需要多少时间。输入描述:第一行两个整数n,m,分别代表矩阵的行和列。后面n行,每行m个整数,分别代表矩阵中的元素。输出描述:一个整数,表示最少需要多少时间。

  9. 常见网络安全产品汇总(私信发送思维导图) - 2

    安全产品安全网关类防火墙Firewall防火墙防火墙主要用于边界安全防护的权限控制和安全域的划分。防火墙•信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。防火墙是一个由软件和硬件设备组合而成,在内外网之间、专网与公网之间的界面上构成的保护屏障。下一代防火墙•下一代防火墙,NextGenerationFirewall,简称NGFirewall,是一款可以全面应对应用层威胁的高性能防火墙,提供网络层应用层一体化安全防护。生产厂家•联想网御、CheckPoint、深信服、网康、天融信、华为、H3C等防火墙部署部署于内、外网编辑额,用于权限访问控制和安全域划分。UTM统一威胁管理(Un

  10. 【Linux操作系统】——网络配置与SSH远程 - 2

    Linux操作系统——网络配置与SSH远程安装完VMware与系统后,需要进行网络配置。第一个目标为进行SSH连接,可以从本机到VMware进行文件传送,首先需要进行网络配置。1.下载远程软件首先需要先下载安装一款远程软件:FinalShell或者xhell7FinalShellxhell7FinalShell下载:Windows下载http://www.hostbuf.com/downloads/finalshell_install.exemacOS下载http://www.hostbuf.com/downloads/finalshell_install.pkg2.配置CentOS网络安装好

随机推荐