RAW域和sRGB域中的图像去摩尔纹
摘要
先前的研究表明,与在sRGB域中去摩尔纹相比,在RAW域中消除摩尔纹效果更佳。然而,仅依赖RAW数据进行图像去摩尔纹不足以减轻色偏(color cast),因为缺少图像信号处理器(ISP)进行色彩校正所需的关键信息。在本文中,我们提出联合利用RAW和sRGB数据进行图像去摩尔纹(RRID),这两种数据在现代智能手机和数码单反相机中都很容易获取。我们开发了基于跳跃连接的去摩尔纹模块(Skip-Connection-based Demoireing Module, SCDM),其中嵌入门控反馈模块(Gated Feedback Module, GFM)和频率选择模块(Frequency Selection Module, FSM),分别用于高效且有效地处理RAW和sRGB特征。随后,我们设计了一个RGB引导的ISP(RGB Guided ISP, RGISP)来学习一个设备相关的ISP,辅助色彩恢复过程。大量实验表明,我们的RRID在摩尔纹去除和色偏校正性能方面优于最先进的方法,PSNR高出0.62dB,SSIM高出0.003。代码可在 https://github.com/rebeccaeexu/RRID 获取。
1 引言
这种局限性的原因可能在于ISP中的非线性操作(如去马赛克)恶化了原本存在于RAW域的摩尔纹。因此,许多方案建议在RAW域中消除摩尔纹比在sRGB域中执行去摩尔纹更有效[28, 29]。然而,仅依赖RAW数据可能导致色偏,这是由于RAW到sRGB转换过程中的不确定性造成的。
为了校正色偏并充分利用RAW和sRGB信息进行摩尔纹去除,我们提出联合利用RAW和sRGB数据进行图像去摩尔纹(RRID)。我们认为引入成对的RAW-sRGB数据有利于摩尔纹去除,原因如下:(1) RAW像素通常为12或14位,因此比sRGB像素提供更多信息。(2) RAW域中的摩尔纹不那么明显,因为它们不受ISP中非线性操作的进一步影响。(3) 成对的RAW和sRGB数据允许模型学习一个设备相关的ISP,以辅助色彩恢复过程。
在RRID中,为了有效地对RAW和sRGB特征执行去摩尔纹,门控反馈模块(GFM)和频率选择模块(FSM)被集成到SCDM内的跳跃连接中,而不是粗暴地注入到多尺度层中。具体来说,对于RAW特征去摩尔纹,我们在跳跃连接中引入GFM,通过特征门控实现纹理细节和摩尔纹之间的自适应区分。此外,我们为含摩尔纹的sRGB特征设计了FSM,利用可学习的带阻滤波器在频域中抑制摩尔纹。在预去摩尔纹操作之后,我们开发了RGB引导的图像信号处理器(RGISP),将粗略去摩尔纹后的sRGB特征中的颜色信息与去摩尔纹后的RAW特征整合,并学习一个设备相关的ISP,促进色彩恢复过程。最终,对于图像重建,我们利用多个残差Swin Transformer块(RSTBs)[12]和卷积来完成全局色调映射和细节细化。
总之,我们的贡献如下:
- 我们提出同时在RAW域和sRGB域进行图像去摩尔纹。引入RAW数据增强了摩尔纹去除过程,而包含sRGB数据则促进了RAW到sRGB的转换并有助于图像色彩恢复。
- 我们开发了SCDM,嵌入了专门设计的模块GFM和FSM,以高效且有效地对RAW和sRGB特征执行去摩尔纹。
- 设计了RGISP用于RAW到sRGB转换,将粗略去摩尔纹后的sRGB特征中的颜色信息与去摩尔纹后的RAW特征结合,并学习一个设备相关的ISP,辅助色彩偏差校正。
- 我们的RRID在定性和定量评估中都超越了最先进的方法。
基于学习的RAW图像处理
RAW像素由于其更宽的位深度而具有利用额外信息的潜力,本质上包含丰富的数据。RAW图像处理的早期研究主要集中在整合去马赛克和去噪技术[4, 9, 10, 13]。RTF [9]设计了一种机器学习方法对RAW输入进行去马赛克和去噪。SGNet [13]引入了一个自引导网络,利用固有的密度图引导和绿色通道引导对RAW图像进行去马赛克和去噪。最近,一些底层视觉任务支持使用RAW数据,包括低光增强[3, 7, 8]、超分辨率[16, 25, 30]和反光去除[11, 20]。上述大多数RAW图像处理方法仅将RAW图像作为输入并生成恢复后的sRGB图像作为输出,表明整个模型同时负责恢复和ISP任务。CR3Net [20]提出了一种级联网络,利用RGB数据及其对应的RAW版本进行图像反光去除。在CR3Net中,设计了一个模块来模拟ISP内的逐点映射,将特征从RAW域转换到sRGB域。为了进一步缓解色偏问题,我们提出的方法联合利用RAW和sRGB数据来学习一个设备相关的ISP用于图像去摩尔纹。
3 方法
在这项工作中,我们提议利用成对的RAW和sRGB数据,这些数据在现代智能手机和数码单反相机(例如,iPhone 15 Pro, HUAWEI P60 Pro)中很容易获取。RAW-sRGB对本质上允许模型学习一个设备相关的ISP,辅助色彩恢复过程。现实场景中的潜在应用可以描述如下:当启用去摩尔纹功能时,设备内ISP生成的sRGB图像将不会直接输出。相反,它将与其对应的RAW版本一起,由我们的RRID处理,生成一个新的sRGB图像,其中摩尔纹被大幅抑制。之后,根据相机的设置,RAW图像可以被丢弃。
图2展示了我们提出的 RRID 用于处理成对 RAW 和 sRGB 数据的图像去摩尔纹的概览。对于RGB分支,输入是一个sRGB图像 Irgb∈RH×W×3\mathbf{I}_{rgb}\in\mathbb{R}^{H\times W\times 3}Irgb∈RH×W×3,其中 H×WH\times WH×W 代表空间分辨率。给定一个输入RAW图像,它首先被打包成4通道的RGGB格式 Iraw∈RH2×W2×4\mathbf{I}_{raw}\in\mathbb{R}^{\frac{H}{2}\times\frac{W}{2}\times 4}Iraw∈R2H×2W×4,作为RAW分支的输入。RRID旨在生成最终的输出sRGB图像 (Y^rgb\hat{\mathbf{Y}}_{rgb}Y^rgb)。
具体来说,浅层特征 Fraw\mathbf{F}_{raw}Fraw 和 Frgb\mathbf{F}_{rgb}Frgb 分别使用一个卷积层和扩张通道注意力块(Dilated Channel Attention Block, DCAB)从输入数据 Iraw\mathbf{I}_{raw}Iraw 和 Irgb\mathbf{I}_{rgb}Irgb 中提取。值得注意的是,对sRGB数据应用了下采样层以确保特征形状的一致性。然后,我们应用SCDM分别在RAW分支和RGB分支中获取预去摩尔纹特征 Draw\mathbf{D}_{raw}Draw 和 Drgb\mathbf{D}_{rgb}Drgb。GFM被引入到SCDM处理RAW特征的跳跃连接中,通过特征门控实现纹理细节和摩尔纹之间的自适应区分。类似地,FSM用于在频域中抑制摩尔纹。更多细节将在第3.1节给出。随后,设计RGISP来实现RAW到sRGB的转换,生成 Dout\mathbf{D}_{out}Dout。RGISP通过交叉注意力机制整合来自粗略去摩尔纹的sRGB特征 Drgb\mathbf{D}_{rgb}Drgb 的颜色信息,这将在第3.2节介绍。对于最终的图像重建,利用4个残差Swin Transformer块(RSTBs)[12]来生成sRGB输出 Y^rgb\hat{\mathbf{Y}}_{rgb}Y^rgb,因为它们在建立用于全局色调映射和细节细化的长程依赖关系方面具有优势。
SCDM的设计
我们提出SCDM,一个多尺度架构,旨在从浅层RAW特征 FrawF_{raw}Fraw 和浅层sRGB特征 FrgbF_{rgb}Frgb 中去除摩尔纹,如图2(a)所示。与原始U-Net不同,SCDM构建在DCAB之上,便于在各层内编码和解码信息特征。在编码过程中,特征在空间维度上被下采样两次,然后在解码过程中被上采样到输入特征的原始分辨率。为了强调上下文信息,我们在跳跃连接处用额外的模块增强了从编码器相应层学习到的特征,即用于RAW的GFM和用于sRGB的FSM。在跳跃连接中引入GFM和FSM也旨在提高模型效率。然后,我们可以获得预去摩尔纹特征 Draw\mathbf{D}_{raw}Draw 和 Drgb\mathbf{D}_{rgb}Drgb。
DCAB。 DCAB是执行RAW去摩尔纹和RGB去摩尔纹的编码器-解码器的基本构建块,如图2(b)所示。DCAB使用一系列扩张卷积层、ReLU激活函数和通道注意力机制设计。每个块中的感受野通过扩张卷积核得到扩展,便于去摩尔纹操作。此外,通过结合通道注意力机制,DCAB根据通道间的相互依赖关系自适应地重新缩放特征。同时,引入了快捷连接(shortcut)来建立DCAB输入和输出之间的连接,使该块能够学习残差特征。
GFM。 GFM嵌入在SCDM处理RAW特征的跳跃连接中,旨在通过特征门控实现纹理和摩尔纹之间的自适应区分。GFM的详细结构如图2©所示。为了提高效率,我们采用逐点卷积(point-wise)和深度卷积(depth-wise)分别聚合通道和局部内容信息。然后,特征沿着通道维度被切分以生成 Fgate\mathbf{F}_{gate}Fgate 和 Fcontent\mathbf{F}_{content}Fcontent。在应用GELU激活后,对 Fcontent\mathbf{F}_{content}Fcontent 和 Fgate\mathbf{F}_{gate}Fgate 执行逐点乘法。在特征门控过程中,我们期望原始图像内容能够沿着空间和通道维度被自适应地选择和融合。操作可以表述为:
{Fgate,Fcontent}=DConv(PConv(FGFM_in)),\{\mathbf{F}_{gate},\mathbf{F}_{content}\} =\mathrm{DConv}(\mathbf{PConv}(\mathbf{F}_{GFM\_in})),{Fgate,Fcontent}=DConv(PConv(FGFM_in)),
FGFM_out=PConv(Fcontent⊙GELU(Fgate)+FGFM_in),\mathbf{F}_{GFM\_out} =\mathrm{PConv}(\mathbf{F}_{content}\odot\mathrm{GELU}(\mathbf{F}_{gate})+\mathbf{F}_{GFM\_in}),FGFM_out=PConv(Fcontent⊙GELU(Fgate)+FGFM_in),
其中 DConv\mathrm{DConv}DConv 和 PConv\mathrm{PConv}PConv 分别表示深度卷积和逐点卷积。这里,⊙\odot⊙ 表示逐元素乘法。
FSM。 对于sRGB去摩尔纹,我们利用可学习的带阻滤波器[32]在频域中抑制摩尔纹。考虑到摩尔纹的形成是由相机CFA和屏幕LCD子像素之间的空间频率混叠引起的,在频域中进行去摩尔纹成为一种有利的方法。然而,摩尔纹的频谱通常与原始内容的频谱混合在一起,因此难以分离。因此,我们建议在小块内执行分离,因为摩尔纹往往在特定的频带范围内更为显著,这有利于摩尔纹的去除。受Zheng等人[32]的启发,我们利用带阻滤波器,使用块DCT(Block DCT)来放大某些频率并抑制其他频率。然而,获取频率先验以将摩尔纹与正常图像纹理分离是具有挑战性和耗时的。为了解决这个问题,采用一组卷积层作为可学习的带阻滤波器B(⋅\cdot⋅),以衰减摩尔纹的特定频率,同时保留原始图像内容。FSM的过程可以表示为:
FFSM_out=IDCT(B(DCT(FFSM_in))),\mathbf{F}_{FSM\_out}=\mathrm{IDCT}(\mathrm{B(DCT}(\mathbf{F}_{FSM\_in}))),FFSM_out=IDCT(B(DCT(FFSM_in))),
其中DCT和IDCT分别表示块DCT过程及其相应的逆过程。DCT和IDCT的块大小设置为 8×88\times 88×8。
RGISP的设计
提出RGISP是为了将预去摩尔纹的RAW特征 Draw\mathbf{D}_{raw}Draw 转换到sRGB域 Dout\mathbf{D}_{out}Dout。在预去摩尔纹的sRGB特征 Drgb\mathbf{D}_{rgb}Drgb 的辅助下,可以在RGISP中学习一个设备相关的ISP。矩阵变换(Matrix transformation)在传统的ISP流水线中常被采用[17]。它能够通过通道级的矩阵变换来增强图像颜色或将其转换到另一个颜色空间,这由全局共享的设置(如环境光照和色彩空间规范)所促进[8]。
基于此原理,我们引入矩阵变换作为执行色彩转换的手段,如图3所示。该矩阵变换的设计受到转置交叉注意力(transposed cross-attention)最新进展的启发。给定 Draw∈RC×H2×W2\mathbf{D}_{raw}\in\mathbb{R}^{C\times\frac{H}{2}\times\frac{W}{2}}Draw∈RC×2H×2W,查询向量 Q∈RC×H2W2\mathbf{Q}\in\mathbb{R}^{C\times\frac{H}{2}\frac{W}{2}}Q∈RC×2H2W 和键向量 K∈RH2W2×C\mathbf{K}\in\mathbb{R}^{\frac{H}{2}\frac{W}{2}\times C}K∈R2H2W×C 通过一个 1×11\times 11×1 卷积层 Conv 和扁平化操作 Flatten 的投影生成,其中 CCC 是中间通道数。类似地,值向量 V∈RC×H2W2\mathbf{V}\in\mathbb{R}^{C\times\frac{H}{2}\frac{W}{2}}V∈RC×2H2W 可以通过对 Drgb∈RC×H2×W2\mathbf{D}_{rgb}\in\mathbb{R}^{C\times\frac{H}{2}\times\frac{W}{2}}Drgb∈RC×2H×2W 的操作产生:
{Q,K}=Flatten(Conv(Draw)),\{\mathbf{Q},\mathbf{K}\} =\textrm{Flatten}(\textrm{Conv}(\mathbf{D}_{raw})),{Q,K}=Flatten(Conv(Draw)),
V=Flatten(Conv(Drgb)).\mathbf{V} =\textrm{Flatten}(\textrm{Conv}(\mathbf{D}_{rgb})).V=Flatten(Conv(Drgb)).
然后,通过矩阵乘法获得变换矩阵 M∈RC×C\mathbf{M}\in\mathbb{R}^{C\times C}M∈RC×C。该过程可以表述为:
M=Softmax(Q⋅KT/λ),\mathbf{M}=\textrm{Softmax}(\mathbf{Q}\cdot\mathbf{K}^{T}/\lambda),M=Softmax(Q⋅KT/λ),
其中应用了缩放系数 λ\lambdaλ 以保证数值稳定性。随后,向量 V\mathbf{V}V 被矩阵 M\mathbf{M}M 变换,在特征级执行色彩空间转换。色彩变换后的输出特征可以通过 Dout=M⋅V\mathbf{D}_{out}=\mathbf{M}\cdot\mathbf{V}Dout=M⋅V 获得。作为对全局矩阵变换的补充,我们使用一个深度卷积和一个逐点卷积来细化局部细节,生成sRGB域的输出 Dout\mathbf{D}_{out}Dout。
损失函数
为了有效去除摩尔纹并调整色彩偏差,我们在RAW域和sRGB域都引入了监督。总体训练目标可以表示为:
L=α∥Y^raw−Yraw∥1+∥Y^rgb−Yrgb∥1,\mathcal{L}=\alpha\|\hat{\mathbf{Y}}_{raw}-\mathbf{Y}_{raw}\|_{1}+\|\hat{\mathbf{Y}}_{rgb}-\mathbf{Y}_{rgb}\|_{1},L=α∥Y^raw−Yraw∥1+∥Y^rgb−Yrgb∥1,
其中 Yraw\mathbf{Y}_{raw}Yraw 和 Yrgb\mathbf{Y}_{rgb}Yrgb 分别是真实值(ground-truth)的RAW和sRGB图像。我们根据经验设置 α\alphaα=0.5。
消融研究
1) 模型架构和输入的消融研究。 在表3中,我们研究了RRID的架构和输入,并验证了完整RRID中不同独立组件的重要性。我们通过比较提出的RRID和以下RRID变体进行此消融研究:
- B1B_{1}B1:移除了RAW输入和RAW去摩尔纹分支。由于缺少RAW特征,整个RGISP也被删除。
- B2B_{2}B2:移除了sRGB输入和sRGB去摩尔纹分支。
- B3B_{3}B3:用RAW输入替代sRGB输入。调整了输入通道数,而其余架构保持不变。
- B4B_{4}B4:我们用两个卷积层替换RGISP,放在RAW和sRGB特征拼接之后。
- B5B_{5}B5:重建模块被两个卷积层替换。
- B6B_{6}B6:完整的RRID模型,同时以RAW和sRGB图像作为输入。
我们提出的RRID利用成对的RAW-sRGB数据作为输入。移除RAW输入及其对应的RAW去摩尔纹模块(B1B_{1}B1)导致PSNR急剧下降约2dB。同样,消除sRGB输入及其对应的RGB去摩尔纹模块(B2B_{2}B2)仅获得27.24dB的PSNR。
除了数值指标的下降外,我们还可以从图5评估视觉性能。当仅依赖sRGB数据及其对应的去摩尔纹模块时,摩尔纹去除效果较差,如图5(b)所示。相反,图5©显示仅使用RAW数据作为输入会生成具有更明显色彩偏差的图像。为了进一步验证RAW输入对于图像去摩尔纹的重要性,我们将 B3B_{3}B3 与 B1B_{1}B1 进行比较,B3B_{3}B3 仅移除了RAW输入数据而保留了剩余的模型结构。尽管 B3B_{3}B3 在数值指标上相比 B1B_{1}B1 有一些改进,但由于缺乏RAW输入提供的信息,且原始的RAW去摩尔纹模块是专门为RAW数据设计的,其性能仍然不尽如人意。此外,我们通过移除原始设计的RGISP (B4B_{4}B4) 和重建模块 (B5B_{5}B5) 进行了进一步比较,与完整的RRID模型 (B6B_{6}B6) 相比,其数值指标和图5中的性能都更差。
2) SCDM的消融研究。 SCDM旨在对RAW和sRGB特征进行有效的去摩尔纹。更具体地说,我们引入了用于RAW特征去摩尔纹的GFM和用于sRGB特征去摩尔纹的FSM。
表4展示了精心设计并集成在跳跃连接中的GFM和FSM的有效性和不可或缺性。移除跳跃连接上的去摩尔纹模块(S1S_{1}S1-S3S_{3}S3)会导致模型性能出现不同程度的下降。例如,同时移除GFM和FSM仅获得27.00 dB的PSNR。此外,图6(b)表明移除GFM和FSM模块后,模型去除摩尔纹的能力下降。此外,为了评估GFM和FSM的特定性,我们分别在 S4S_{4}S4 和 S5S_{5}S5 中替换了原始模块。尽管参数量没有减少,但PSNR下降了约0.3-0.5dB。由于DCAB是SCDM中的一个关键组成模块,我们用两个卷积层替换DCAB以确认其必要性。图6(c)6(c)6(c)展示了与图6(d)6(d)6(d)中我们完整的SCDM相比,存在更多残留摩尔纹和显著的色彩偏差。
3) RGISP的消融研究
RGISP旨在在ISP阶段整合来自粗略去摩尔纹后的sRGB特征(Drgb\mathbf{D}_{rgb}Drgb)的颜色信息,促进色彩恢复过程。RGISP的过程可以看作是一种交叉注意力机制。为了评估RGISP设计的有效性,我们在表5中比较了以下结构。对于 R1R_{1}R1,我们将预去摩尔纹的RAW特征与sRGB特征拼接,然后应用自注意力机制。在 R2R_{2}R2 中,预去摩尔纹的RAW特征经过自注意力机制处理,然后与预去摩尔纹的sRGB特征拼接。表5显示我们提出的RGISP超越了自注意力机制(R1R_{1}R1, R2R_{2}R2)以及其他RAW到sRGB转换方法RRM [20] (R3R_{3}R3)。此外,图7描绘了一个具有全局分布摩尔纹的网页。R1R_{1}R1-R4R_{4}R4 都能有效去除摩尔纹,但 R4R_{4}R4 在校正色彩偏差方面表现出最佳性能。通过引入sRGB预去摩尔纹特征,RGISP能够学习一个设备相关的ISP并有效地恢复图像的原始颜色。
5 结论
在本文中,我们提出联合利用RAW和sRGB数据进行图像去摩尔纹(RRID)。首先,我们引入了SCDM,其中在跳跃连接中嵌入GFM和FSM,分别处理RAW和sRGB特征的去摩尔纹。此外,我们提出了RGISP来学习一个设备相关的ISP,辅助色彩恢复过程。大量实验证明了我们的RRID方法在摩尔纹去除和色偏校正方面的卓越性能。我们的方法在PSNR上以0.62dB、在SSIM上以0.003的优势超越了最先进的方法。
1 SCDM的额外消融研究
表6展示了SCDM中特殊设计的有效性和效率,其中去摩尔纹模块GFM和FSM嵌入在SCDM的跳跃连接中。在此消融研究中,我们将提出的SCDM与以下情况进行比较:
- A1A_{1}A1:在RAW分支中,DCAB被替换为GFM;在RGB分支中,DCAB被替换为FSM。嵌入在跳跃连接中的去摩尔纹模块在两个分支中保持不变。
- A2A_{2}A2:在RAW分支中,DCAB被替换为GFM;在RGB分支中,DCAB被替换为FSM。嵌入在跳跃连接中的去摩尔纹模块在两个分支中被移除。
- A3A_{3}A3:采用原始SCDM设计的RRID。
从表6的 A1A_{1}A1 可以观察到,用GFM和FSM替换DCAB会导致PSNR显著下降0.77dB,SSIM下降0.011。一个更值得关注的问题是推理时间大幅增加到4.589秒,这主要是由于FSM中使用的块DCT造成的。这一观察强调了DCAB作为SCDM中关键块在编码和解码信息特征方面的至关重要作用。此外,即使我们在 A1A_{1}A1 中从跳跃连接中移除去摩尔纹模块,A2A_{2}A2 的推理时间仍然相对较长。这一观察强调了将去摩尔纹模块嵌入跳跃连接中的有效性和效率。
2 局限性
虽然我们提出利用成对的RAW和sRGB图像进行摩尔纹去除,并设计了RGISP来学习设备相关的ISP,但在具有显著色彩偏差的场景中进行色彩恢复仍然是一项具有挑战性的任务。
图8展示了两个场景,其中含摩尔纹的输入图像与真实值图像相比存在明显的色彩差异。虽然我们提出的方法有效地去除了摩尔纹并部分校正了颜色,但它未能将颜色完全映射到真实值图像中存在的颜色。目前,只有一个数据集,即TMM22数据集[29],可用于带有RAW-sRGB图像对的图像去摩尔纹。然而,TMM22训练集中的图像尺寸仅限于 256×256256\times 256256×256,这可能会限制模型学习全局色彩映射的能力。为了克服这一限制,一个可能的解决方案是收集一个新的更高分辨率的成对RAW-sRGB图像去摩尔纹数据集,这将是我们未来的工作。
3 在TMM22数据集上的更多定性比较
图9-10展示了与最先进方法的更多视觉比较。结果证明了我们提出的RRID在去摩尔纹和恢复色彩方面的优越性。例如,在图9描绘的第一个场景中,输入图像同时遭受严重的摩尔纹污染和明显的色彩偏差。先前的方法难以去除摩尔纹,并且在将花瓣颜色准确恢复为粉红色方面遇到困难。相比之下,我们的方法成功地消除了摩尔纹并恢复了原始颜色。
图10描绘的最后一个场景展示了一个含摩尔纹的文档。尽管这个场景中的摩尔纹污染相对轻微,但大多数方法成功消除了摩尔纹。然而,图像顶部的彩色区域值得关注,因为大多数方法错误地将其校正为蓝色。相比之下,真实值图像显示该区域实际上是青色。值得注意的是,我们的方法在准确恢复原始颜色方面表现出色。