当前位置:   article > 正文

CVPR2023 I 混合Transformers和CNN的注意力网络用于立体图像超分辨率

图像超分辨网络

作者:小张Tt | 来源:计算机视觉工坊

在公众号「3D视觉工坊」后台,回复「原论」即可获取论文pdf。

多阶段策略在图像修复任务中被广泛应用,虽然基于Transformer的方法在单图像超分辨率任务中表现出高效率,但在立体超分辨率任务中尚未展现出CNN-based方法的显著优势。这可以归因于两个关键因素:首先,当前单图像超分辨率Transformer在该过程中无法利用互补的立体信息;其次,Transformer的性能通常依赖于足够的数据,在常见的立体图像超分辨率算法中缺乏这些数据。为了解决这些问题,作者提出了一种混合Transformer和CNN注意力网络(HTCAN),它利用基于Transformer的网络进行单图像增强和基于CNN的网络进行立体信息融合。此外,作者采用了多块训练策略和更大的窗口尺寸,以激活更多的输入像素进行超分辨率。作者还重新审视了其他高级技术,如数据增强、数据集成和模型集成,以减少过拟合和数据偏差。最后,作者的方法在NTIRE 2023立体图像超分辨率挑战的Track 1中获得了23.90dB的分数,并成为优胜者。

1 前言

立体图像超分辨的最终性能取决于每个视图的特征提取能力和立体信息交换能力。相比于卷积神经网络,变换器拥有更大的感受野和自我关注机制,可以更好地模拟长期依赖。但是,其内存和计算成本通常要高得多。因此,作者提出了一种混合架构,利用了变换器的强大长期依赖建模能力和卷积神经网络的信息交换的有效性。在作者的方法中,作者首先使用变换器来保留重要特征,然后使用CNN方法进行信息交换。实验结果表明,该混合架构具有较好的性能。

本文有以下三个贡献:

  • 一种混合立体图像超分辨网络。作者提出了一个统一的立体图像超分辨算法,它集成了变换器和CNN架构,其中变换器用于提取单视图图像的特征,而CNN模块用于交换来自两个视图的信息并生成最终的超分辨图像。

  • 全面的数据增强。作者对多补丁训练策略和其他技术进行了全面研究,并将它们应用于立体图像超分辨。

  • 新的最先进性能。作者提出的方法实现了新的最先进性能,并在立体图像超分辨挑战赛的第一轨中获得了第一名。

2 相关背景

本文这一节介绍了单张图像超分辨率和立体图像超分辨率的相关工作。针对单张图像超分辨率,研究人员一开始使用外部图像或样本数据库来生成超分辨图像,手工制作的特征依赖于先验知识/假设,并存在很多局限性。后来引入了基于CNN的方法,CNN网络通过学习局部结构模式降低了计算成本。最近,基于Transformer的方法也受到越来越多的关注,因为它删除了先前卷积模块使用的局部性先知,并允许更大的接收场。对于立体图像超分辨率,在以前的工作中,大多是从单张图像超分辨率骨干出发的,并提出了通信分支来允许左右视图之间的信息交换。然而,左右视图之间的视差通常沿着基线而大于传统卷积核的接收场。近年来,采用了与单张超分辨率类似的方法,引入了基于CNN和Transformer的方法,以修复立体图像的超分辨率。

3  方法

本节中,作者详细介绍所提出的混合Transformer和CNN Attention网络(HTCAN)。所提出的HTCAN是一个多阶段的恢复网络。具体而言,给定低分辨率的立体图像Llr和Rlr,作者首先使用基于Transformer的单图像超分辨率网络将其超分辨到Ls1和Rs1。在第二阶段,作者采用基于CNN的网络来增强Ls1和Rs1的立体效果,并得到增强的图像Lsr和Rsr。在第三阶段,作者使用与第2阶段相同的基于CNN的网络进行进一步的立体增强和模型集成。

fced10b26bfdb2222379b33af8c81fb0.png

3.1  阶段1: 基于Transformer的单图像超分辨率网络结构

作者提出了一个基于Transformer和CNN Attention网络的立体图像增强网络,可以提高图像分辨率和立体效果。首先采用HAT-L作为单图像超分辨率的骨干,使用多块训练策略和级联残差混合注意力组(RHAG)进行自注意和信息聚合,最终生成高分辨率图像。同时,通过转动和翻转输入图像来实现自集成,使用SiLU激活函数替换GeLU激活函数进一步增强性能。

4.2  阶段2:基于卷积神经网络的立体增强网络架构

作者介绍了基于卷积神经网络的立体增强的第二阶段流程。该流程使用了由NAFSSR-L作为骨干网络,在提取浅层特征后,通过K2个NAF块和SCAM模块对左右图像进行跨视图信息聚合,最终输出立体增强后的图像。为了提高性能,通过自组合策略对模型进行了改进。

4.3   阶段3: 基于卷积神经网络的立体影像融合

作者介绍了一个基于卷积神经网络的立体影像融合的三阶段流程。在第三阶段中,使用第二阶段自组合的输出作为输入,提高了模型的整体性能。虽然第三阶段模型表现与第二阶段类似,但是作为一个集成模型,可以对第二阶段模型进行进一步的改进。

5 实验

5.1 实验细节

本文的实验部分训练了一个 HTCAN 网络,并对该网络进行了三个阶段的训练。在第一阶段的训练中,使用了 Charbonnier 损失和 MSE 损失,同时还使用了各种数据增强技术。在第二阶段中,我们采用 NAFSSR-L 的原始代码在 Flickr1024 图像上进行了训练,并在第二阶段训练中使用 UnshuffleNAFSSR 模型的预训练模型。最后,在第三阶段的训练中,采用与第二阶段相同的设置,将网络进行了微调。我们的方法在 Flickr1024 测试集上进行了评估,并通过与其他单幅图像和立体图像超分辨率方法的比较来证明其有效性。

5.2 实验结果

本文的实验结果显示,与其他状态-艺术单幅图像超分辨率方法和立体图像超分辨率方法相比,作者的方法在多数测试数据集上表现更好。此外,作者的方法在视觉效果上也表现出众,能够显著地恢复图像的细节和纹理。

9021333eb80e4f30208941e4e5911f2e.png d7e5d944450e3e6c15f78a0e49196caf.png

5.3 实验分析

本文介绍了一种基于多块训练、数据增强和自我集成的立体图像超分辨率方法,并引入了基于CNN的立体增强模块来进一步提高性能。实验表明这种方法可以有效地恢复图像纹理和细节。其中,采用较大的接受域和窗口大小,以及自我集成策略可以进一步提高性能。本文提出的多阶段方法将基于Transformer的SISR方法和基于CNN的立体增强方法相结合,进一步恢复了细节。

87f287b5c7d5e1a7dada2cb0d03f6762.png ed3f37d33b22ff3fd026e6c33794c3ea.png

7 总结

本文介绍了混合Transformers和CNN注意力网络(HTCAN),采用两阶段方法使用基于Transformers的SISR模块和基于CNN的立体增强模块来超分辨低分辨率立体图像。作者提出的多补丁训练策略和大窗口大小增加了SISR阶段激活的输入像素数量,使结果相较于原始的HAT-L架构有0.05dB的收益。此外,作者的方法采用先进的技术,包括数据增强,数据集成和模型集成,以在测试集上实现23.90dB的PSNR并赢得立体图像超分辨率挑战赛第一名。

—END—

高效学习3D视觉三部曲

第一步 加入行业交流群,保持技术的先进性

目前工坊已经建立了3D视觉方向多个社群,包括SLAM、工业3D视觉、自动驾驶方向,细分群包括:[工业方向]三维点云、结构光、机械臂、缺陷检测、三维测量、TOF、相机标定、综合群;[SLAM方向]多传感器融合、ORB-SLAM、激光SLAM、机器人导航、RTK|GPS|UWB等传感器交流群、SLAM综合讨论群;[自动驾驶方向]深度估计、Transformer、毫米波|激光雷达|视觉摄像头传感器讨论群、多传感器标定、自动驾驶综合群等。[三维重建方向]NeRF、colmap、OpenMVS等。除了这些,还有求职、硬件选型、视觉产品落地等交流群。大家可以添加小助理微信: cv3d007,备注:加群+方向+学校|公司, 小助理会拉你入群。

da554e3effd40476d94bf3c1297df2fb.jpeg
添加小助理微信:  cv3d007,拉你入群
第二步 加入知识星球,问题及时得到解答

针对3D视觉领域的视频课程(三维重建、三维点云、结构光、手眼标定、相机标定、激光/视觉SLAM、自动驾驶等)、源码分享、知识点汇总、入门进阶学习路线、最新paper分享、疑问解答等进行深耕,更有各类大厂的算法工程人员进行技术指导。与此同时,星球将联合知名企业发布3D视觉相关算法开发岗位以及项目对接信息,打造成集技术与就业、项目对接为一体的铁杆粉丝聚集区,6000+星球成员为创造更好的AI世界共同进步,知识星球入口:「3D视觉从入门到精通」

学习3D视觉核心技术,扫描查看,3天内无条件退款 8da16717258fba4d994f00024481914f.jpeg
高质量教程资料、答疑解惑、助你高效解决问题
第三步 系统学习3D视觉,对模块知识体系,深刻理解并运行

如果大家对3D视觉某一个细分方向想系统学习[从理论、代码到实战],推荐3D视觉精品课程学习网址:www.3dcver.com

基础课程:

[1]面向三维视觉算法的C++重要模块精讲:从零基础入门到进阶

[2]如何学习相机模型与标定?(代码+实战)

[3]ROS2从入门到精通:理论与实战

工业3D视觉方向课程:

[1]机械臂抓取从入门到实战课程(理论+源码)

[2]从零搭建一套结构光3D重建系统[理论+源码+实践]

[3]三维点云处理:算法与实战汇总

[4]彻底搞懂基于Open3D的点云处理教程!

[5]3D视觉缺陷检测教程:理论与实战!

SLAM方向课程:

[1]如何高效学习基于LeGo-LOAM框架的激光SLAM?

[1]彻底剖析激光-视觉-IMU-GPS融合SLAM算法:理论推导、代码讲解和实战

[2](第二期)彻底搞懂基于LOAM框架的3D激光SLAM:源码剖析到算法优化

[3]彻底搞懂视觉-惯性SLAM:VINS-Fusion原理精讲与源码剖析

[4]彻底剖析室内、室外激光SLAM关键算法和实战(cartographer+LOAM+LIO-SAM)

[5]ORB-SLAM3理论讲解与代码精析(第2期)

视觉三维重建

[1]彻底搞透视觉三维重建:原理剖析、代码讲解、及优化改进)

自动驾驶方向课程:

[1]目标检测中的视觉Transformer

[2]单目深度估计方法:算法梳理与代码实现

[3]面向自动驾驶领域的3D点云目标检测全栈学习路线!(单模态+多模态/数据+代码)

[4]如何将深度学习模型部署到实际工程中?(分类+检测+分割)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/439895
推荐阅读
相关标签
  

闽ICP备14008679号