【LLIE专题】基于码本先验与生成式归一化流的低光照图像增强新方法
GLARE: Low Light Image Enhancement via Generative Latent Feature based Codebook Retrieval(2024,ECCV)
- 专题介绍
- 一、研究背景
- 二、GLARE方法
- 阶段一:正常光照代码本学习(Normal-Light Codebook Learning)
- 1. 训练目标
- 2. 网络结构
- 3. 公式
- 阶段二:生成潜在特征学习(Generative Latent Feature Learning)
- 1. 训练目标
- 2. 网络结构
- 3. 公式
- 阶段三:自适应特征转换与图像解码(Adaptive Feature Transformation and Image Decoding)
- 1. 训练目标
- 2. 网络结构
- 三、实验结果
- 1. 定量结果
- 2. 定性结果
- 3. 消融研究
- 四、总结
- 优势
- 局限性
- 个人思考
本文将对 GLARE: Low Light Image Enhancement via Generative Latent Feature based Codebook Retrieval,这篇暗光增强算法进行讲解。参考资料如下:
[1] GLARE 文章
[2] GLARE 代码
专题介绍
在低光照环境下,传统成像设备往往因画面昏暗、细节丢失而受限。LLIE(低照度暗光增强)技术应运而生,它通过提升图像亮度、对比度,减少噪点并恢复色彩细节,让暗夜变得清晰可见。
LLIE技术从传统方法如直方图均衡化、Retinex模型等起步,近年来借助深度学习,尤其是卷积神经网络(CNN),GAN模型,扩散模型实现了质的飞跃。这些算法能自动学习图像特征,精准处理低光照图像,效果显著优于传统技术。
本专题将聚焦LLIE技术的核心原理、应用案例及最新进展,让我们一起见证LLIE如何点亮暗夜,开启视觉新视界!欢迎一起探讨交流!
系列文章如下
【1】ZeroDCE
【2】HVI
【3】CLIP-LIT
一、研究背景
现有的基于深度学习的LLIE方法大多存在一些局限性,比如这些模型在处理具有复杂光照变化和场景差异的图像时,泛化能力不足。为了改善这类问题,作者提出了GLARE(Generative Latent Feature based Codebook Retrieval for Low Light Image Enhancement)方法,将Codebook技术引入到了LLIE任务中。GLARE 方法的核心思想是利用编码本中的潜在特征来指导低光照图像的增强过程。具体来说,该方法首先将输入的低光照图像分解为多个潜在特征,这些潜在特征能够捕捉图像的不同属性,如亮度、颜色、纹理等。然后,通过检索与之匹配的高质量潜在特征,将这些高质量潜在特征与原始低光照图像特征进行融合,从而生成增强后的图像。
二、GLARE方法
整个训练过程分为三个阶段,每个阶段都有其独特的训练目标和网络结构。
阶段一:正常光照代码本学习(Normal-Light Codebook Learning)
1. 训练目标
在第一阶段,主要目标是利用大量高质量、正常光照的图像数据,通过自监督的方式学习一个通用且全面的正常光照图像特征码本。这个码本能够捕捉正常光照图像的各种特征模式,为后续的低光照到正常光照映射提供先验知识。
2. 网络结构
阶段一使用了类似 VQGAN 的结构,包括正常光照编码器(NL Encoder)和正常光照解码器(NL Decoder,Dnl)。
- 正常光照编码器(NL Encoder) :将输入的正常光照图像 I n l {I}_{nl} Inl转化为潜在特征表示 z n l {z}_{nl} znl。其结构通常由多个卷积层、激活函数和可能的归一化层组成,用于提取图像的高级特征。
- 正常光照解码器(NL Decoder,Dnl) :将量化后的潜在特征 z q {z}_{q} zq转换回图像空间,重建正常光照图像 I n l r e c {I}_{nl}^{rec} Inlrec。解码器的结构通常是编码器的逆过程,包含反卷积层或上采样层,以逐步恢复图像的空间分辨率。
3. 公式
对于输入的正常光照图像 I n l {I}_{nl} Inl,通过正常光照编码器 E n l E_{nl} Enl得到潜在特征 z n l {z}_{nl} znl:
z n l = E n l ( I n l ) \mathbf{z}_{nl} = E_{nl}(\mathbf{I}_{nl}) znl=Enl(Inl)
其中, E n l E_{nl} Enl表示正常光照编码器, I n l {I}_{nl} Inl是输入的正常光照图像。
然后,利用最近邻匹配,将每个潜在特征向量 z n l i {z}_{nl}^{i} znli 量化到代码本 C C C 中最近的{z}_{q}^{i}:
z q i = NearestNeighbour ( z n l i , C ) \mathbf{z}_{q}^{i} = \text{NearestNeighbour}(\mathbf{z}_{nl}^{i}, C) zqi=NearestNeighbour(znli,C)
这里,代码本 C C C 是一个包含 Nc 个离散码字的集合,每个码字代表一种特定的特征模式,即
C = [ c 1 , c 2 , … , c N c ] ∈ R d × N c C = [\mathbf{c}_1, \mathbf{c}_2, \ldots, \mathbf{c}_{N_c}] \in \mathbb{R}^{d \times N_c} C=[c1,c2,…,cNc]∈Rd×Nc 。
量化后的潜在特征 z q {z}_{q} zq被送入正常光照解码器 Dnl 来生成重建图像 I n l r e c {I}_{nl}^{rec} Inlrec:
I n l r e c = D n l ( z q ) \mathbf{I}_{nl}^{rec} = D_{nl}(\mathbf{z}_{q}) Inlrec=Dnl(zq)
其中, D n l D_{nl} Dnl表示正常光照解码器。
阶段二:生成潜在特征学习(Generative Latent Feature Learning)
1. 训练目标
阶段二的目标是学习从低光照特征到正常光照特征的分布转换。通过训练条件编码器(Conditional Encoder)和可逆潜在归一化流(Invertible Latent Normalizing Flow,I-LNF)模块,使低光照特征能够更好地匹配正常光照特征的分布,从而提升图像增强效果。
2. 网络结构
在阶段二中,主要优化两个关键组件:条件编码器(Conditional Encoder)和可逆潜在归一化流(I-LNF)模块。
- 条件编码器(Conditional Encoder) :其结构与正常光照编码器相同,输入低光照图像 I l l {I}_{ll} Ill,输出条件特征 c l l {c}_{ll} cll。它用于提取低光照图像的特征,并为后续的特征转换提供条件信息。
- I-LNF 模块 :通过可逆网络实现(可逆网络是一种特殊的深度学习网络,其设计目标是使得网络的前向传播和后向传播都是可逆的。这意味着,给定网络的输出,我们可以通过逆向传播精确地恢复出网络的输入),记为 f θ f_{\theta} fθ。该模块利用条件特征 c l l {c}_{ll} cll 将复杂的正常光照特征分布 z n l {z}_{nl} znl转换为潜在特征 v = f θ ( z n l ; c l l ) \mathbf{v} = f_{\theta}(\mathbf{z}_{nl}; \mathbf{c}_{ll}) v=fθ(znl;cll)。阶段二的目标是在 v \mathbf{v} v的空间中获得一个简化的分布 p v ( v ) \mathbf{p}_{\mathbf{v}}(\mathbf{v}) pv(v),例如高斯分布。
3. 公式
阶段二的训练目标是最小化负对数似然(Negative Log-Likelihood,NLL),具体公式如下:
L ( θ ; c l l , z n l ) = − log p z n l ∣ c l l ( z n l ∣ c l l , θ ) \mathcal{L}(\theta; \mathbf{c}_{ll}, \mathbf{z}_{nl}) = -\log p_{\mathbf{z}_{nl}|\mathbf{c}_{ll}}(\mathbf{z}_{nl}|\mathbf{c}_{ll}, \theta) L(θ;cll,znl)=−logpznl∣cll(znl∣cll,θ)
进一步展开,可以表示为:
L ( θ ; c l l , z n l ) = − log p v ( v ) − ∑ i = 1 N log ∣ det ∂ f θ i ∂ h i − 1 ( h i − 1 ; c l l ) ∣ \mathcal{L}(\theta; \mathbf{c}_{ll}, \mathbf{z}_{nl}) = -\log p_{\mathbf{v}}(\mathbf{v}) - \sum_{i=1}^{N} \log \left| \det \frac{\partial f_{\theta}^i}{\partial \mathbf{h}^{i-1}}(\mathbf{h}^{i-1}; \mathbf{c}_{ll}) \right| L(θ;cll,znl)=−logpv(v)−i=1∑Nlog det∂hi−1∂fθi(hi−1;cll)
其中:
- p v ( v ) p_{\mathbf{v}}(\mathbf{v}) pv(v)是潜在特征 v \mathbf{v} v的分布,假设为高斯分布,即 v ∼ N ( 0 , I ) \mathbf{v} \sim \mathcal{N}(\mathbf{0}, \mathbf{I}) v∼N(0,I)。
- f θ i f_{\theta}^i fθi 表示可逆网络的第 i 层。
- h i − 1 \mathbf{h}^{i-1} hi−1是第 (i-1) 层的特征。
- N N N 是可逆层的总数。
通过最小化上述损失函数,可以训练条件编码器和 I-LNF 模块,使低光照特征分布与正常光照特征分布对齐。
此时可以从 中 v ∼ p v ( v ) v \sim p_v(v) v∼pv(v)采样并使用完全可逆的网络 f θ f_{\theta} fθ得到低光照输入的高质量特征 z l l = f θ − 1 ( v ; c l l ) z_{ll} = f_\theta^{-1}(v; c_{ll}) zll=fθ−1(v;cll);用低光照输入的高质量特征去匹配码本里面由正常光照图像生产的高质量特征就更加容易(相较于直接从低质量图像特征 c l l {c}_{ll} cll匹配先验的高质量特征)。
阶段三:自适应特征转换与图像解码(Adaptive Feature Transformation and Image Decoding)
1. 训练目标
阶段三的训练目标是在固定码本、正常光照解码器、条件编码器和 I-LNF 模块的基础上,通过自适应特征转换策略,进一步提升图像增强的细节和保真度,使生成的正常光照图像更加逼真、精细。
2. 网络结构
阶段三主要包括固定正常光照解码器(Dnl)、自适应特征转换模块(Adaptive Feature Transformation,AFT)。AFT 模块包含自适应混合块(Adaptive Mix-up Block,AMB)和多尺度融合解码器(Multi-scale Fusion Decoder,MFD)。
- 固定正常光照解码器(Dnl) :在阶段一中已经训练完成,用于将潜在特征转换为正常光照图像。
- 自适应混合块(AMB) :根据低光照特征和生成的正常光照特征的相似性自适应地调整它们的权重,实现特征的融合。AMB 通过学习一组可调参数,动态地确定低光照特征和生成特征在融合过程中的贡献比例。
- 多尺度融合解码器(MFD) :在多个尺度上对特征进行融合和解码,得到最终的增强图像。MFD 通常包含多个分支,每个分支处理不同尺度的特征,然后将这些特征进行融合,以充分利用不同尺度的信息。
综上所述,GLARE 通过三个阶段的训练,逐步实现了低光照图像的增强。阶段一学习正常光照图像的特征码本;阶段二学习从低光照特征到正常光照特征的分布转换;阶段三通过自适应特征转换和多尺度融合解码进一步提升图像质量。这些阶段相互配合,使得 GLARE 能够有效地处理低光照图像,生成高质量的正常光照图像。
三、实验结果
1. 定量结果
作者将 GLARE 方法与其他几种先进的低光照图像增强方法在不同的数据集上进行了比较,如下表所示
实验结果表明,GLARE 在多个评估指标上均优于或接近这些方法。
2. 定性结果
除了定量评估,作者还通过视觉效果展示了 GLARE 的增强效果。通过对比低光照输入图像、其他方法的增强结果以及 GLARE 的增强结果,可以明显看出 GLARE 在细节恢复、色彩还原和整体视觉效果上的优势。GLARE 增强后的图像不仅在亮度上得到了提升,而且在细节和色彩上也更加逼真,产生了更加令人愉悦的效果。
3. 消融研究
为了验证阶段一(正常光照代码本学习)对最终结果的影响,作者进行了消融实验。实验结果表明,当不使用阶段一学习到的代码本时,模型的性能明显下降。这说明阶段一学习到的正常光照特征代码本对低光照图像增强起到了重要的先验作用,有助于模型更好地理解和生成正常光照图像。
其他模块作者同样也做了消融研究,具体可参考论文。
四、总结
《GLARE: Low Light Image Enhancement via Generative Latent Feature based Codebook Retrieval》提出了一种新颖的低光照图像增强方法,通过生成潜在特征的码本检索来实现高质量的图像增强。
优势
- 分阶段学习策略:通过三个阶段逐步优化模型,充分利用正常光照图像的先验特征,逐步提升图像增强效果。
- 自适应特征转换:通过自适应混合块(AMB)和多尺度融合解码器(MFD),能够动态调整特征融合比例,生成更加逼真和自然的图像。
- 高质量代码本:在第一阶段学习到的高质量代码本为后续阶段提供了强大的先验知识,有助于模型更好地理解和生成正常光照图像。
局限性
- 计算资源需求:模型的训练和推理过程需要较高的计算资源,这可能限制了其在实际应用中的实时性。
个人思考
GLARE 方法通过分阶段学习和自适应特征转换,有效地解决了低光照图像增强中的关键问题。这种方法不仅在理论上具有创新性,而且在实际应用中也表现出色。基于本方案,博主认为还能做以下一些尝试和研究:
-
多模态数据融合:在低光照图像增强中,除了利用正常光照图像的先验特征,还可以考虑引入其他模态的数据,如红外图像、深度图像等。通过多模态数据融合,可以进一步提升模型的鲁棒性和性能。
-
跨领域应用:GLARE 方法不仅适用于低光照图像增强,还可以扩展到其他图像处理任务,如图像复原任务等。
总之,GLARE 方法为低光照图像增强领域提供了一种新的思路和方法。
感谢阅读,欢迎留言或私信,一起探讨和交流。