
LLFLUT++: 基于拉普拉斯金字塔的LUT方法(2025 TPAMI )
- 专题介绍
- 一、研究背景
- 二、LLFLUT方法
-
- [2.1 粗增强阶段](#2.1 粗增强阶段)
- [2.2 拉普拉斯金字塔增强阶段](#2.2 拉普拉斯金字塔增强阶段)
- [2.3 损失函数](#2.3 损失函数)
- 三、实验结果
- 四、总结
本文将围绕《LLFLUT++: High-resolution Photo Enhancement in Real-time: A Laplacian Pyramid Network》展开完整解析。论文提出LLF-LUT++ 端到端框架,通过拉普拉斯金字塔分解与重建融合全局和局部算子,结合图像自适应 3D LUT 与两种权重融合策略实现全局色调调整,借助空间 - 频率 Transformer 权重预测器 高效提取权重,利用图像自适应可学习局部拉普拉斯滤波器 细化高频分量边缘细节,在单 GPU 上实现 4K 图像 13ms 实时处理,在 HDR + 数据集上 PSNR 提升 2.64dB,在 MIT-Adobe FiveK 和 HDR + 两大基准数据集上,无论 480p 还是 4K 分辨率,其定量(PSNR、SSIM 等)和定性表现均优于现有先进方法。参考资料如下:
1\]. [论文地址](https://arxiv.org/html/2412.01463v1) \[2\]. [代码地址](https://github.com/fengzhang427/LLF-LUT) *** ** * ** *** ## 专题介绍 Look-Up Table(查找表,LUT)是一种数据结构(也可以理解为字典),通过输入的key来查找到对应的value。其优势在于无需计算过程,不依赖于GPU、NPU等特殊硬件,本质就是一种内存换算力的思想。LUT在图像处理中是比较常见的操作,如Gamma映射,3D CLUT等。 近些年,LUT技术已被用于深度学习领域,由SR-LUT启发性地提出了**模型训练+LUT推理** 的新范式。 本专题旨在跟进和解读LUT技术的发展趋势,为读者分享最全最新的LUT方法,欢迎一起探讨交流,对该专题感兴趣的读者可以订阅本专栏第一时间看到更新。 **系列文章如下:** 【1】[SR-LUT](https://blog.csdn.net/PixelMind/article/details/147199182) 【2】[Mu-LUT](https://blog.csdn.net/PixelMind/article/details/147314636) 【3】[SP-LUT](https://blog.csdn.net/PixelMind/article/details/147462554) 【4】[RC-LUT](https://blog.csdn.net/PixelMind/article/details/147493912) 【5】[EC-LUT](https://blog.csdn.net/PixelMind/article/details/147567613) 【6】[SPF-LUT](https://blog.csdn.net/PixelMind/article/details/147645734) 【7】[Dn-LUT](https://blog.csdn.net/PixelMind/article/details/147805516) 【8】[Tiny-LUT](https://blog.csdn.net/PixelMind/article/details/148125003) 【9】[3D-LUT](https://blog.csdn.net/PixelMind/article/details/148315366) 【10】[4D-LUT](https://blog.csdn.net/PixelMind/article/details/148499938) 【11】[AdaInt-LUT](https://blog.csdn.net/PixelMind/article/details/148569181) 【12】[Sep-LUT](https://blog.csdn.net/PixelMind/article/details/148724737) 【13】[CLUT](https://blog.csdn.net/PixelMind/article/details/148750671) 【14】[ICELUT](https://blog.csdn.net/PixelMind/article/details/148855517) 【15】[AutoLUT](https://blog.csdn.net/PixelMind/article/details/152168025) 【16】[SA-3DLUT](https://blog.csdn.net/PixelMind/article/details/152959104) 【17】[SABLUT](https://blog.csdn.net/PixelMind/article/details/153075660) 【18】[SVDLUT](https://blog.csdn.net/PixelMind/article/details/153117306) *** ** * ** *** ## 一、研究背景 照片增强的重要性不言而喻,其可以提升图像视觉美感。现有HDR 成像技术需依赖增强算子保留场景细节与色彩,但传统方法需工程师手动调整或专业软件精细修图,效率低。直接应用现有的图像增强方案存在以下的问题: 1. 基于学习的方法:性能强但计算量随图像尺寸线性增长,4800 万像素图像需海量计算资源(数百亿 FLOPs)和存储空间(超 20GB / 张)。 2. 混合方法(如 3D LUT 类):高效低内存,但全局算子局部效果差,高分辨率图像下采样(最高 16 倍)导致细节丢失,最典型的例子是[3D-LUT](https://blog.csdn.net/PixelMind/article/details/148315366)。 因此,论文提出兼顾实时性与高性能的高分辨率图像增强框架,解决全局与局部增强失衡问题。 思维导图如下所示:  ## 二、LLFLUT方法 如标题所述,LLFLUT的核心思路是利用拉普拉斯金字塔分解与重建,在低频分量进行全局色调调整,在高频分量逐步细化局部边缘细节。它的网络整体流程图如下所示:  整体流程比较复杂,分为2个阶段,第一个阶段是粗增强,会增强得到2个输出,第一个是大图的粗增强结果 I ˉ \\bar{I} Iˉ以及下采样的增强结果 I ˉ LR \\bar{I}_{\\text{LR}} IˉLR。大图的粗增强结果会利用拉普拉斯分解出多个层,然后进行逐层的增强,底层还会使用canny算子来提取边缘,加入edge map的信息辅助,最终逐层向上融合得到增强结果 I \^ \\hat{I} I\^。 下面将分阶段来讲解。 ### 2.1 粗增强阶段 作者在粗增强阶段使用了2种方式,一种是不带空间感知的,另一种是带空间感知加权的,因为加了空间信息会增大计算量,所以是在小分辨率上用,不带的在大分辨率上使用,如下图所示:  (b)图展示的方式就是[3D-LUT](https://blog.csdn.net/PixelMind/article/details/148315366)中使用到的方法,通过预测的weight加权得到一个最终的3DLUT作用到原始图像上。(c)图展示的是一个空间加权预测的方式,会推理出每一个lut的每一个点的权重,这样再进行加权,显然它会比前面一种方式更加复杂,计算量也更大,它的计算公式如下: O ( i , j , k ) h , w , c = Φ h , w , c ( I ( i , j , k ) r , I ( i , j , k ) g , I ( i , j , k ) b , ω h , w ) = ∑ t = 0 T − 1 ω t h , w M t c ( I ( i , j , k ) r , I ( i , j , k ) g , I ( i , j , k ) b ) \\begin{array}{r} O_{(i, j, k)}\^{h, w, c}=\\Phi\^{h, w, c}\\left(I_{(i, j, k)}\^{r}, I_{(i, j, k)}\^{g}, I_{(i, j, k)}\^{b}, \\omega\^{h, w}\\right) \\\\ =\\sum _{t=0}\^{T-1} \\omega_{t}\^{h, w} M_{t}\^{c}\\left(I_{(i, j, k)}\^{r}, I_{(i, j, k)}\^{g}, I_{(i, j, k)}\^{b}\\right) \\end{array} O(i,j,k)h,w,c=Φh,w,c(I(i,j,k)r,I(i,j,k)g,I(i,j,k)b,ωh,w)=∑t=0T−1ωth,wMtc(I(i,j,k)r,I(i,j,k)g,I(i,j,k)b)其中 O ( i , j , k ) h , w , c O_{(i,j,k)}\^{h,w,c} O(i,j,k)h,w,c表示坐标 ( h , w ) (h,w) (h,w)处通道 c c c的输出像素值, ω t h , w \\omega_t\^{h,w} ωth,w为像素级权重图, M t c M_t\^c Mtc为第 t t t个3D LUT基的映射函数,通过加权求和多个3D LUT基的映射结果,实现像素级的全局色调调整。 可见以上两个图像**分别对应着大图的粗增强结果 I ˉ \\bar{I} Iˉ以及下采样的增强结果 I ˉ LR \\bar{I}_{\\text{LR}} IˉLR的计算过程** 。 为了实现这个过程,作者设计了如下的网络来实现这个操作,网络的输入是原图下采样的输入图像,因此计算量不会太大。  其中Learned weight points即大图所使用到的权重,而Learned Weight maps是小图所使用到的权重。其中的网络结构如下所示:  其中图(a)和图(b)分别代表Fourier-Swin Transformer encoder block和 basic Swin Transformer decoder block,是常见算子的一个组合,包含window的自注意力机制以及LN和FFT变换。 通过以上网络结构的设计,可以实现一个轻量级的粗增强过程,可以看到这部分很好的权衡了计算量和效果。 ### 2.2 拉普拉斯金字塔增强阶段 摘出右半部分进行描述:  **底层的输入有4个,最小分辨率的增强结果 I LR I_{\\text{LR}} ILR、最小分辨率经过canny算子提取的edge map、拉普拉斯金字塔的最后2层 l ˉ n \\bar{l}_n lˉn和 l ˉ n − 1 \\bar{l}_{n-1} lˉn−1,当然为了让他们分辨率一样还需要upsample的支持,他们会被concat到一起得到一个10输入通道的图,经过一系列网络处理后,得到两个逐像素的输出用于做refine,用于refine的操作叫做LLF Remapping Function,处理后可以得到增强后的高频细节 l \^ n − 1 \\hat{l}_{n-1} l\^n−1** 这个过程用公式描述: l \^ n − 1 = r ( l ‾ n − 1 , g n − 1 , α n − 1 , β n − 1 ) \\hat{l}_{n-1}=r\\left(\\overline{l}_{n-1}, g_{n-1}, \\alpha_{n-1}, \\beta_{n-1}\\right) l\^n−1=r(ln−1,gn−1,αn−1,βn−1)其中, l ˉ n − 1 \\bar{l}_{n-1} lˉn−1为分解得到的原始高频分量, g n − 1 g_{n-1} gn−1为对应层的参考值, α n − 1 \\alpha_{n-1} αn−1和 β n − 1 \\beta_{n-1} βn−1为该层学习到的参数, r ( ⋅ ) r(\\cdot) r(⋅)为可学习重映射函数, l \^ n − 1 \\hat{l}_{n-1} l\^n−1为细化后的高频分量,用于保留局部边缘细节。 再往上的循环只是少了edge map的输入,其他的输入还是一样,因此输入是9个通道,通过不断的循环得到拉普拉斯金字塔复原的所有高频细节,最后跟最小分辨率的增强结果 I LR I_{\\text{LR}} ILR进行金字塔重建得到输出。 其中Remapping操作的公式如下: r ( i ) = { g + sign ( i − g ) σ r ( ∣ i − g ∣ σ r ) α if i ≤ σ r g + sign ( i − g ) ( β ( ∣ i − g ∣ − σ r ) + σ r ) if i \> σ r r(i)= \\begin{cases} g+\\operatorname{sign}(i-g)\\sigma _{r}\\left(\\frac{\|i-g\|}{\\sigma _{r}}\\right)\^{\\alpha} \& \\text{if } i\\leq \\sigma _{r} \\\\ g+\\operatorname{sign}(i-g)\\left(\\beta (\|i-g\|-\\sigma _{r})+\\sigma _{r}\\right) \& \\text{if } i\>\\sigma _{r} \\end{cases} r(i)={g+sign(i−g)σr(σr∣i−g∣)αg+sign(i−g)(β(∣i−g∣−σr)+σr)if i≤σrif i\>σr 描述传统局部拉普拉斯滤波器的像素值重映射规则, i i i为输入像素值, g g g为参考像素值, σ r \\sigma_r σr为强度阈值(固定为0.1), α \\alpha α和 β \\beta β为手动调参的形状参数, sign ( ⋅ ) \\operatorname{sign}(\\cdot) sign(⋅)为符号函数;**该公式分两段定义像素值的非线性变换,实现局部边缘增强,我们在每一层的2个逐像素的输出就是这个形状参数,相当于自适应学习这个过程,而不是手工的调节。** ### 2.3 损失函数 如下所示,包含几个损失函数: L 1 = ∑ i = 1 H × W ( ∥ I \^ \[ i \] − R \[ i \] ∥ 1 + ∥ I \^ L R \[ i \] − R L R \[ i \] ∥ 1 ) \\mathcal{L}_{1}=\\sum_{i=1}\^{H \\times W}\\left(\\\| \\hat{I}\[i\]-R\[i\]\\\| _{1}+\\left\\\| \\hat{I}_{L R}\[i\]-R_{L R}\[i\]\\right\\\| _{1}\\right) L1=i=1∑H×W(∥I\^\[i\]−R\[i\]∥1+ I\^LR\[i\]−RLR\[i\] 1)定义框架的L1重建损失, H × W H \\times W H×W为图像像素总数, I \^ \[ i \] \\hat{I}\[i\] I\^\[i\]和 R \[ i \] R\[i\] R\[i\]分别为高分辨率增强图像与参考图像的第 i i i个像素值, I \^ LR \[ i \] \\hat{I}_{\\text{LR}}\[i\] I\^LR\[i\]和 R LR \[ i \] R_{\\text{LR}}\[i\] RLR\[i\]为对应低分辨率图像的像素值;通过同时约束HR和LR图像的像素误差,保证增强结果的全局一致性。 L p = ∑ l 1 H l W l ∑ h , w ∥ ϕ ( I \^ ) h w l − ϕ ( R ) h w l ∥ 2 2 \\mathcal{L}_{p}=\\sum_{l} \\frac{1}{H\^{l} W\^{l}} \\sum_{h, w}\\left\\\| \\phi(\\hat{I})_{h w}\^{l}-\\phi(R)_{h w}\^{l}\\right\\\| _{2}\^{2} Lp=l∑HlWl1h,w∑ ϕ(I\^)hwl−ϕ(R)hwl 22计算感知层面的损失, ϕ ( ⋅ ) \\phi(\\cdot) ϕ(⋅)为预训练特征提取网络(如AlexNet), l l l为网络的特征层索引, H l W l H\^l W\^l HlWl为第 l l l层特征图的尺寸, ϕ ( I \^ ) h w l \\phi(\\hat{I})_{hw}\^l ϕ(I\^)hwl和 ϕ ( R ) h w l \\phi(R)_{hw}\^l ϕ(R)hwl分别为增强图像和参考图像在第 l l l层 ( h , w ) (h,w) (h,w)位置的特征值;通过约束特征空间的L2距离,提升增强图像的视觉感知质量。 最后总的损失函数是: L = L 1 + λ s L s + λ m L m + λ p L p \\mathcal{L} = \\mathcal{L}_1 + \\lambda_s \\mathcal{L}_s + \\lambda_m \\mathcal{L}_m + \\lambda_p \\mathcal{L}_p L=L1+λsLs+λmLm+λpLp L 1 \\mathcal{L}_1 L1为重建损失, L s \\mathcal{L}_s Ls为平滑正则化项( λ s = 0.0001 \\lambda_s=0.0001 λs=0.0001), L m \\mathcal{L}_m Lm为单调性正则化项( λ m = 10 \\lambda_m=10 λm=10), L p \\mathcal{L}_p Lp为LPIPS感知损失( λ p = 0.01 \\lambda_p=0.01 λp=0.01);通过加权融合多类损失,平衡"像素级精度"与"视觉感知质量",同时保证3D LUT映射的平滑性和单调性,这个平滑性和单调性损失可看[3D-LUT](https://blog.csdn.net/PixelMind/article/details/148315366)讲解。 ## 三、实验结果 首先讲一下**消融实验** 。实验结果如下图所示,结论如下:  1.组件有效性:像素级权重图、空间 - 频率 Transformer、可学习局部拉普拉斯滤波器等核心组件均能独立提升性能,全组件融合时性能最优(HDR+ 480p PSNR 达 28.43dB)。 2. 权重融合策略:组合 "权重点 + 权重图" 的融合策略优于单一权重点 / 权重图,PSNR 提升 1.32dB,兼顾效率与精度。 3. 金字塔层数:低频图像分辨率降至 64×64 时,性能仅下降 0.08dB,但计算量减少 30%,验证了自适应金字塔分解的合理性。 接着是**定量实验** 。   结论如下: 1. 在HDR+ 和MIT-Adobe FiveK两大基准数据集上,LLF-LUT++ 在 480p 和 4K 分辨率下,PSNR、SSIM(越高越好)、LPIPS、△E(越低越好)四项核心指标均全面优于现有先进方法(如 DPRNet、LLF-LUT、DeepLPF 等),验证了方法的高性能。 2. 相比基线模型 LLF-LUT,LLF-LUT++ 在参数减少 14K 的前提下,HDR + 数据集原始分辨率 PSNR 提升 2.64dB,MIT-Adobe FiveK 数据集原始分辨率 PSNR 提升 0.32dB,实现 "更少参数 + 更高性能"。 3. 480p 分辨率下,LLF-LUT++ 在 HDR + 数据集 PSNR 达 28.43dB(比 SOTA 方法 DPRNet 高 0.58dB),在 MIT-Adobe FiveK 数据集 PSNR 达 26.06dB(比 LLF-LUT 高 0.53dB),局部细节与色彩还原精度显著提升。 4. LLF-LUT++ 实现4K 高分辨率图像实时处理:单 NVIDIA Tesla V100 32GB GPU 上,4K 图像处理耗时仅 13.50ms / 张,远低于 DPRNet(104.6ms / 张)、DeepLPF(386.62ms / 张)等 SOTA 方法。 5. 平衡计算复杂度与性能:相比 LLF-LUT,LLF-LUT++ 虽 MACs 从 2.923G 增至 3.720G,但运行时间减少 7.01ms,且性能大幅提升,在 "效率 - 性能" 权衡中表现最优。 6. 低参数量优势:仅 717K 参数,远低于 DPRNet(2.9M)、DeepLPF(1.72M),具备边缘设备部署潜力。 然后是**定性实验** 。   结论如下: 1. 细节保留:在草地纹理、水面灯光反射等复杂场景中,LLF-LUT++ 能精准保留高频细节,边缘清晰无模糊。 2. 色彩还原:在天空雾区、高动态范围场景中,颜色还原自然保真,无过曝 / 欠曝、色偏等问题。 3. 伪影控制:通过可学习局部拉普拉斯滤波器优化,有效避免传统方法的光晕伪影,视觉效果更自然。 ## 四、总结 LLF-LUT++ 实现4K 图像 13.50ms / 张实时处理,参数 717K(比 LLF-LUT 少 14K);在两大基准数据集上,480p 和 4K 分辨率的定量(PSNR 最高提升 2.64dB)与定性表现均优于现有 SOTA 方法;它融合全局与局部增强的设计,有效解决细节丢失和局部效果差的问题。 作者也给出了一些问题,例如可能受训练数据集偏见影响,存在潜在社会偏见风险;色彩转换具有主观性,难以满足所有用户偏好;比基础 3D LUT 计算量大(MACs 更高),直接用于视频会产生帧间闪烁。这些是以后优化的目标。 *** ** * ** *** **感谢阅读,欢迎留言或私信,一起探讨和交流,如果对你有帮助的话,也希望可以给博主点一个关注,谢谢。**