[论文阅读]Ghost-free High Dynamic Range Imaging with Context-aware Transformer

多帧高动态范围成像(High Dynamic Range Imaging, HDRI/HDR)旨在通过合并多幅不同曝光程度下的低动态范围图像,生成具有更宽动态范围和更逼真细节的图像。如果这些低动态范围图像完全对齐,则可以很好地融合为HDR图像,但是,实际拍摄到的图像容易受到相机、物体运动的干扰,三张低动态范围图像往往不能很好地得到对齐,直接对三图像做融合的话,所生成的图像容易产生伪影、重影,例如下图所示:

为了解决这一现象,传统的算法通常分为两类:在图像融合前对齐(align)图像或者拒绝(reject)不对齐的像素来去除重影,但精确地对齐图像或者精确地定位不对齐的像素往往难以实现,所生成的HDR图像效果并不好,因此现在常常以数据驱动的方法来训练CNN,利用CNN来实现图像的融合。

基于CNN的去重影方法主要分为两类:①利用单应性或光流法对LDR图像进行预对齐;②设计端到端的隐式对齐模块或者新颖的学习策略来处理重影。但是由于卷积局部性的限制,模型难以建立远程依赖(需要堆叠较深的卷积层来实现提高感受野的目的),如果图中物体的运动范围过大,则先前基于CNN的方法仍容易产生重影;同时由于在整幅图像中共享卷积核,因此卷积是内容无关的运算(content-independment),这一特性导致卷积运算忽略了不同图像区域的长距离强度变化,也就是卷积运算会平等地对待图像中的所有数据。(引入注意力机制可以解决这一问题)

对于模型的长距离建模能力,一个很好地策略就是利用transformer结构,例如ViT算法。然而,本文作者发现transformer结构并不能直接应用于HDR任务中,主要有两个原因:①transformer缺乏CNN中归纳偏差的能力(inductive biases),因此在数据量不足的情况下训练时泛化能力较差,模型性能不高;②帧内和帧间相邻像素之间的关系也对恢复图像的局部细节至关重要,而纯transformer结构难以提取局部上下文之前的关系。

注:在HDR任务中收集大量真实标记的样本成本过高,因此数据集往往有限。

对此,本文作者提出了一种上下文感知的ViT(Context-Aware Vision Transformer, CA-ViT),通过双分支架构来同时捕获全局和局部的依赖关系,也就是同时实现全局和局部的建模。对于全局分支,作者使用基于窗口的多头transformer编码器来捕远程上下文关系(即Swin transformer);对于局部分支,作者设计了局部上下文提取器(local context extractor, LCE),通过卷积块来提取局部特征映射,并且通过通道注意力机制在多个帧特征之间选择有用的特征,抑制无用的特征,因此,CA-ViT结构可以使全局和局部以互补的方式发挥作用。基于CA-ViT结构,作者提出了用于HDR成像的transformer结构(HDR-Transformer)。

对于HDR-Transformer,主要包括两个模块:特征提取网络和HDR恢复网络,特征提取网络利用卷积运算和空间注意力模块来提取浅层特征,并且进行粗融合,有助于稳定transformer的训练和抑制图像中不对齐的像素。HDR重建模块以CA-ViT为基本组件,从全局和局部两个角度对图像建模,有助于重建高质量的HDR图像,同时无需堆叠非常深的卷积块。

在本文中,作者提出了一种双分支上下文感知Transformer,通过加入局部特征提取器(即引入卷积操作)来克服传统ViT在局部建模上的不足,扩展了标准的ViT模块,可以实现全局和局部上下文的同时建模。此外,基于所设计的CA-ViT模块,作者提出了用于HDR成像的HDR-Transformer网络,通过结合Transformer和CNN的优点,来有效地缓解HDR成像过程中容易产生重影的问题。

相关推荐
mingo_敏14 分钟前
深度学习中的并行策略概述:2 Data Parallelism
人工智能·深度学习
Jack_pirate3 小时前
深度学习中的特征到底是什么?
人工智能·深度学习
微凉的衣柜3 小时前
微软在AI时代的战略布局和挑战
人工智能·深度学习·microsoft
哦哦~9214 小时前
深度学习驱动的油气开发技术与应用
大数据·人工智能·深度学习·学习
程序员一诺8 小时前
【深度学习】嘿马深度学习笔记第10篇:卷积神经网络,学习目标【附代码文档】
人工智能·python·深度学习·算法
MUTA️8 小时前
RT-DETR学习笔记(2)
人工智能·笔记·深度学习·学习·机器学习·计算机视觉
学术头条11 小时前
清华、智谱团队:探索 RLHF 的 scaling laws
人工智能·深度学习·算法·机器学习·语言模型·计算语言学
18号房客11 小时前
一个简单的机器学习实战例程,使用Scikit-Learn库来完成一个常见的分类任务——**鸢尾花数据集(Iris Dataset)**的分类
人工智能·深度学习·神经网络·机器学习·语言模型·自然语言处理·sklearn
Ven%12 小时前
如何在防火墙上指定ip访问服务器上任何端口呢
linux·服务器·网络·深度学习·tcp/ip
IT猿手12 小时前
最新高性能多目标优化算法:多目标麋鹿优化算法(MOEHO)求解TP1-TP10及工程应用---盘式制动器设计,提供完整MATLAB代码
开发语言·深度学习·算法·机器学习·matlab·多目标算法