点击上方“AIWalker”,选择加“星标”或“置顶”
   重磅干货,第一时间送达

Tips:一点点提示,因内容较多建议先关注,再置顶,最后端杯茶来精心浏览。

背景

低光图像是夜晚拍照时极为常见的一种现象。不充分的光照会极大的降低图像的视觉质量,细节损失、低对比度不仅导致令人讨厌的主观感受,同时会影诸多计算机视觉系统的性能(这些系统往往为正常光照图像而设计)。

导致低光图像的原因有很多,如低光环境、低端拍摄设备以及不合理的拍照设备的配置等。为尽可能的恢复图像的细节信息,改善图像质量,我们急需一种有效的低光图像增强方案。

在过去的十年里,许多研究人员对低光图像增强展开了研究并提出了多种技术。如Histogram Equalization(HE)及其改进;Retinex理论及其改进等等。

本文主要关注深度学习方法在该领域的一些进展,将简单汇总与介绍近几年相关的深度学习方法以及相应的数据集、相关技术的评价标准等等。

数据

这里汇总了一些公开论文中用到的低光图像数据,供模型训练与测试参考。   在低光图像增强领域中,目前最常用的数据集为SID与LOL这两种数据集。这两个数据集分别代表了低光图像增强领域的两个场景。

SID是极暗场景下的数据集,它的输入为未经任何处理的RAW格式数据,未经ISP处理;而LOL则是类似夜景这种有一定光照条件下的低光数据集,它的输入与输出均为PNG格式的数据,即经过了ISP处理。

Table.1 与低光图像增强相关的数据集

dataset 简介 链接
VIP-LowLight Eight Natural Images Captured in Very Low-Light Conditions 链接
ReNOIR RENOIR - A Dataset for Real Low-Light Image Noise Reduction 链接
Raw Image Low-Light Object - 链接
SID Learning to see in the dark 链接
ExDARK Getting to Know Low-light Images with The Exclusively Dark Dataset 链接
MIT-FivK Learning Photographic Global Tonal Adjustment with a Database of Input / Output Image Pairs 链接
LRAICE-Dataset A Learning-to-Rank Approach for Image Color Enhancement -
The 500px Dataset Exposure: A White-Box Photo Post-Processing Framework -
DPED DSLR-quality photos on mobile devices with deep convolutional networks 链接
LOL Deep Retinex Decomposition for Low-Light Enhancement 链接
VV - 链接

方法

时间 方法 场景
2015 LLNet A Deep Autoencoder Approach to Natural Low Light Image Enhancement 低光
2017 DSLR Quality Photos on Mobile Devices with Deep ConvolutionalNetworks 低光
2017 MSRNet Low Light Image Enhancement using Deep Convolutional Network 低光
2017 LLCNN A Convolutional Neural Network for Low light Image Enhancement 低光
2017 LIME Low light Image Enhancement via Illumination Map Estimation 低光
2017 Deep Bilateral Learning for Real Time Image Enhancement 低光
2018 DeepISP Towards Learning an End to End Image Processing Pipeline 低光
2018 Getting to Know Low Light Images with The Exclusively Dark Dataset 低光
2018 Deep Retinex Decomposition for Low Light Enhancement 低光
2018 Learning to see in the dark 暗光
2019 End to End Denoising of Dark Burst Images using Recurrent Fully Convolutional Networks 暗光
2019 GLADNet: Low Light Enhancement Network with Global Awareness 低光
2019 Kindling the Darkness: A Practical Low Light Image Enhancer 低光
2019 Learning Digital Camera Pipeline for Extreme Low Light Imaging 暗光
2019 A Pipeline Neural Network for Low Light Image Enhancement 低光
2019 Underexposed Photo Enhancement using Deep Illumination Estimation 低光

上表中汇总了最近几年深度学习在低光图像增强领域中的几种方法。下面将分别针对这些方法进行简单的总结与介绍。

0. Retinex理论

经典的Retinex理论模拟了人眼颜色感知,它假设观测图像可以被分解为两种成分:ReflectanceIllumination。假设表示观测图像,它可以被分解为:

其中,表示反射图,表示亮度图, 表示点乘操作。反射图描述了观测目标的固有属性,它可以被视作常量且与光照无关;亮度图表示了目标的不同光照。低光图像存在暗光与不平衡的亮度分布。

在传统方法中,Single Scale Retinex, SSR通过高斯滤波为亮度图添加平滑性作为最早期的尝试;MSR, MSRCR通过添加多尺度高斯滤波与颜色还原对SSR进行了拓展。关于更多相关技术可以参考:Retinex Image Processing.

在深度学习方法中,已有诸多方法尝试将Retinex理论与深度网络相结合,在降低学习难度的同时提升算法性能,如RetinexNet

1. GLADNet

project, code

GLADNet的核心:(1)为低光输入计算全局亮度估计;(2)基于前述所得与原始输入调整亮度。它将输入图像缩放到特定尺寸并送入到编解码网络中生成关于亮度的全局先验信息,基于全局先验信息与原始输入图像,采用卷积神经网络进行细节还原。在训练过程中,作者采用RAW图像合成的数据进行训练。通过大量实验验证了所提方法的有效性。

img

上图给出GLADNet的框架图,从中可以看出,该网络由两部分构成:

  • 全局亮度先验估计

    在该部分中,作者采用了一个编解码网络架构用于估计全局亮度信息。注:为估计亮度信息,它需要将输入图像下采样到固定尺寸,这样可以保证该架构的底层感受野可以包含整个图像。

    该子网络包含三个步骤:(1) 缩放输入特征到特定分辨率;(2) 采用编解码架构估计全局亮度信息;(3)缩放到原始分辨率。

  • 细节还原

    全局亮度估计过程中由于尺度缩放问题会导致细节损失,为弥补该问题,作者设计了该细节还原子网络。

    相比编解码网络输出,原始输入图像应当包含更多的细节信息,因而可以为细节还原提供更多信息。该子网络以全局亮度信息+原始输入图像作为输入(这样可以保证了原始信息与亮度估计互补并传递到后续网络),该子网络另外包含三个卷积操作。

  • 作者在训练过程中采用RAW图像进行训练数据的合成,采用加权损失函数进行训练。加权损失函数定义如下:

    其中,,这种参数设置可以保证颜色平衡问题,提升网络的鲁棒性。

1558145522602

1558145694627

1558145733411

2. RetinexNet

RetinexNet, paper, BMVC2018,poster,ppt, code

Retinex是一种有效的低光图像增强方法。它假设观测图像可以被分解为ReflectanceIllumination。现有的基于Retinex的模型需要精心设计人工约束条件与参数用于求解该病态分解问题(这限制了模型在不同场景应用中的泛化性能)。

作者收集了一批低亮度图像对(含低光与正常光图像)并提出一种RetinexNet架构在该数据集上进行训练学习。RetinexNet包含一个DecomNet用于图像分解分解以及一个EnhanceNet用于亮度调整。在训练过程中,DeconmNet并没有关于ReflectanceIllumination的真值。因而,该网络学习了这样的关键约束:图像对的反射一致性与亮度的平滑一致性。基于该分解方案,EnhanceNet用来进行亮度增强,同时需要对Reflectance进行降噪处理。该RetinexNet可以通过端到端的方式进行训练。

大量实验表明:RetinexNet不仅取得极好的视觉效果,同时可以提供一种良好的图像分解表达。

1558071668969

RetinexNet是一种数据驱动的Retinex分解方法,它集成图像分解与增强操作于一体。

  • 首先,子网络DecomNet用于将观测图像划分为亮度独立的反射图与结构平滑的亮度图;

    DecomNet网络存在两个约束条件:(1) 低光与正常光具有相同的反射图;(2) 亮度图应该是平滑的且保留有主要结构(可通过结构相关的全变差损失约束学习)。

    在训练过程中,它以成对图像作为输入(用于约束反射一致性);在测试阶段仅需要输入低光图像。

  • 然后,子网络EnhanceNet通过多尺度Concat操作调整亮度图以保证(1)在大范围内保持一致;(2)小范围内进行裁剪局部分布。

    它主要作用是提升亮度图的亮度,它是一种类似UNet的编解码架构。

    由于噪声往往存在于暗区,且易被增强过程放大,因而采用在反射图上进行降噪。

  • 最后,在重建阶段通过组合调整后的亮度图与反射图计算输出图像。

  • 注:为训练这样一个网络,作者利用RAW数据集构建了一个包含真实与合成图像的低光数据集。

损失函数相关

RetinexNet用到的损失函数包含三项:重建损失、不变反射损失以及亮度平滑损失。总体损失函数定义如下:

其中,,分别表示用于均衡不变反射损失与亮度平滑损失的系数,作者的参数设置为。

DecomNet部分用到的重建损失函数定义如下:

EnhanceNet部分用到的重建损失函数定义如下:

注:上述两种重建损失区别在于:采用的梯度图对进行了加权

用于约束反射一致性的不变反射损失定义如下:

用于约束亮度平滑的亮度平滑损失在Total Variation Loss基础上进行改进得到,定义如下:

其中,表示梯度操作(包含),表示结构强度平衡系数,降低了图像梯度剧烈区域的平滑约束性,作者的参数设置:。

更多关于损失函数的介绍,建议查看论文介绍。

1558083479455

1558083683020

3. Kindling the Darkness: A Practical Low Light Image Enhancer

arxiv paper

低光条件下所拍摄的图像存在严重的质量问题。除了低光外,噪声、颜色失真等同样限制了图像的质量。换句话说,简单的调节的暗区的亮度不可避免的放大暗区的噪声和伪影等。受Retinex理论启发,作者构建了一种简单有效的网络Kindling the Darkness, KinD网络,它将图像分解为两部分:亮度部分用于调整图像亮度;反射部分用于移除降质。经过上述处理,原始空间被分解为两个更小的子空间,以期具有更好的泛化性能。需要注意的是:该网络通过不同曝光图像对进行训练,而非真实的反射与亮度信息。通过通过实验验证了所提kinD架构的优异性能,同时在2080TiGPU下,可以以不超过50ms的速度处理VGA分辨率的图像。

1558333260322

从方法流程图来看:KinDRetinexNet如出一辙,两者整体思想基本一致,尽在损失函数设计方面存在差异。故而,这里仅对损失函数进行描述介绍。

损失函数

从上图可以看出,KinD的损失函数主要由三部分损失构成,它们分别是层分解部分损失、反射重建部分损失以及亮度调整部分损失。

层分解部分损失定义如下:

其中,表示反射相似性损失(Reflectance Similarity),即短曝光与长曝光图形的反射图应该是相同的;表示亮度平滑损失约束(Illumination Smoothness),它度量了亮度图与输入图像之间的相对结构,边缘区域惩罚较小,平滑区域惩罚较大;表示相互一致性约束(Mutual Consistency),它意味着强边缘得以保留,弱边缘被抑制;表示重建损失(Reconstruction Error)。

反射部分损失定义如下:

亮度调整部分损失定义如下:

以上简单描述了网络训练过程中的相关损失函数,更多详细信息建议参考原文。

1558335769087

1558335835940

4. MSRNet Low Light Image Enhancement using Deep Convolutional Networks

arxiv paper

低光图像存在低对比度问题,导致后续视觉任务的难度提升。基于Retinex理论与CNN,作者提出一种低光增强方法。作者表示多尺度Retinex等价于带有不同高斯卷积核的CNN;首次启发,作者考虑采用端到端的方式学习多尺度CNN(MSRNet)。不同于已有方法,作者将低光增强视作机器学习问题,该模型的所有参数通过反向传播方式学习得到,而传统方法则需要人工设置相关参数。最后,作者通过大量图像已验证了所提方法的有效性。

1558337147748

上图给出了作者所提MSRNet,它采用低光图像作为输入,通过监督学习方式训练网络参数。它包含三个部分:多尺度对数变换、差分卷积以及颜色还原。总体过程可以描述为:。

  • 多尺度对数变换以低光图像作为输入,得到相同尺寸的输出。低光图像通过几个不同的对数变化进行增强,公式描述为:

    其中,表示对数基下的不同尺度的输出,n表示对数变换数。下一步则将多尺度输出结果通过Concat方式拼接得到,并将其送入卷积与ReLU,描述如下:

    这里,表示将输入Shrinks到3通道的卷积变换参数;表示更进一步提升非线性表达能力的卷积核参数。该模块的功能主要是通过加权组合多尺度对数变换得到更好的初始图像以加速网络收敛。

  • 差分卷积以作为输入,计算同尺寸的输出。公式描述如下:

    表示不同尺度平滑结果,将他们通过Concat方式拼接得到,并执行后续操作:

    类似MSR,的输出计算为。

  • 颜色还原以作为输入,通过卷积执行色彩还原:.

网络训练过程中的损失函数定义如下:

1558339696355

1558339747623

5. A Pipeline Neural Network for Low Light Image Enhancement

paper

受多尺度Retinex(MSR)原理启发,基于全卷积网络与离散小波变换(DWT),作者提出一种端到端的低光图像增强框架。首先,作者说明MSR可以视为一种CNN架构,集成DWT可以改进MSR所生成图像的质量;然后,作者提出具有去噪和增强的框架;最后,醉着在合成数据与公开数据上对所提框架进行了评估。

1558344572086

上图给出作者所提框架在训练与测试阶段的流程图,该网络采用损失进行参数训练学习,同时去噪与增强模块交替训练学习。鉴于该论文参考意义不大,故略,更多细节见原文。

1558345076983

6. LLCNN A Convolutional Neural Network for Low Light Image Enhancement

paper

作者提出采用CNN进行低光图像增强。作者设计了一种特殊的模块处理多尺度特征同时避免了梯度小时问题。为尽可能保留图像的纹理信息,作者采用SSIM损失进行模型训练。基于该方法,低光图像的对比度可以自适应增强。作者通过实验验证了所提方法的有效性。

1558340366047

上图给出了作者所设计的网络架构图。为避免梯度消失问题,作者参考Inception, Residual模块设计了一种新颖的卷积模块,如下图所示。

1558340484927

总而言之,作者所设计的网络架构可以描述为:采用一个卷积预处理图像得到均匀输入,一个卷积用于生成增强图像,其他特殊模块插入到前面两个卷积中间。

1558340779020

7. DSLR Quality Photos on Mobile Devices with Deep Convolutional Networks

arxiv paper, project, code,

尽管智能手机内置相机具有越来越好的拍照效果,但是物理约束(如传感器大小、镜头以及特定硬件的缺失)仍阻碍更高质量图像的获取。作者提出一种端到端的方式将普通光照图像变换为高质量视觉效果图像。作者采用残差卷积网络,它可以提升图像的颜色与细节锐利度。由于标准的MSE损失并不适合度量图像的感知质量,作者引入一种混合损失函数(组合纹理、颜色以及上下文)。作者同时构建了一个DPED数据集,通过该数据集进行网络训练并验证了所提方法的有效性。

1558341636811

给定低质图像,该增强人物的目标是通过DSLR相机生成。假设残差卷积网络为,给定训练数据,该优化问题可以描述为:

其中,为本文的关键所在,它是多种损失函数的组合,定义如下:

  • 颜色损失用于度量增强图像与目标图像之间的颜色差异性(注,为避免高频细节影响,在计算之前进行高斯模糊),定义如下:

    其中,。该损失函数主要用于评估图像的亮度、对比度以及颜色的差异性而忽略掉纹理与内容的差异。

  • 纹理损失用于度量图像之间的视觉相似性,通过GAN方式训练调整生成图像的纹理质量,定义如下:

    其中,分别表示生成网络与对抗网络。注:该损失具有平移不变性。

  • 内容损失基于预训练VGG19网络的激活特征图进行统计分析,它可以确保图像的语义特征不变,令表示VGG19的第j层激活输出,该损失定义如下:

  • 全变差损失用于确保生成图像的空域平滑性,定义如下:

1558343372708

1558343515841

8. Learning to see in the dark

arxiv paper,CVPR2018, code, demo

由于低光子、低SNR等原因导致低光成像极具挑战。短曝光图像存在高噪声,长曝光会引入模糊不切实际。为解决低光成像存在的问题,作者构建了一个低曝光+长曝光RAW数据集并开发一个端到端的全卷积低光图像处理框架。该框架直接以RAW数据作为输入,经全卷积操作后输出RGB图像。

1558321555119

数据集

作者收集一个新的低光RAW数据集,它包含5094对短曝光-长曝光图像对,同时包含室内与室外两种不同的场景。室外场景的亮度变化范围,室内场景的亮度变化范围,短曝光时长为,对应的长曝光时长为。

作者采用了索尼与富士胶片分别采集数据,它们具有不同的传感器类型。索引传感器类型为Bayer模式,图像分辨率;富士胶片传感器类型为APS-C X-Trans传感器,图像分辨率。更多关注的描述可以参考原文。

方法

作者提出采用全卷积网络直接采用RAW数据作为输入,经卷积计算后直接输出RGB结果。对于Bayer形式数据,需要事先将其打包为多通道数据并进行预处理(可参考上图流程)。在全卷积网络架构方面,作者主要参考了CANUNet,默认架构为UNet。除了RAW数据外,另一个输入为参数为放大比例系数,它用于控制输出图像的零度。下图给出了不同放大比例系数的输出结果对比。

在训练过程中,作者采用损失从头开始训练整个网络,放大系数设置为输入与真值之间的曝光差异比例。下面列出了所提方法在所构建数据集上的部分效果。

1558329681018

1558329750213

1558329792309

9. Learning Digital Camera Pipeline for Extreme Low Light Imaging

arxiv paper

在低光条件下 ,传统的ISP处理会导致生成的图像极暗(过少的光子)且高噪(低信噪比)。作者提出一种数据驱动的方法用于学习低曝光与正常曝光之间的一种映射关系,从而极大的提高低光图像的视觉效果。作者提出一种新的损失函数以促进深度网络可以学习短曝光图像到正常曝光图像之间的ISP流程,即lowRAW->sRGB这样的一个过程。实验结果表明:相比已有网络中采用的像素级损失,该方法可以取得更优的视觉效果。

1558316339487

损失函数

该文的主要创新点在于损失函数的设计,故而这里对文中所提到的损失函数进行简单汇总分析。文中所设计的多准则损失函数定义如下:

其中,表示每个独立的损失函数,分别表示作用于输入与输出的函数,随损失函数的类型变化而变化。表示像素级的损失函数,如损失与损失;表示更高层的感知损失。

直接在网络输出与真值之间计算误差信息,此时有,损失函数定义为:

其中,用于均衡两种损失,可通过Grid Search方式在验证集上进行估计得到;表示尺度数,用于调整每项损失的相对重要性,在实验过程中所有参数设置为:。

用于在特征层面衡量两个图像之间的相似性,有助于保持颜色与色彩一致性,此时,其中表示神经网络第层的激活特征,损失函数定义如下:

作者实验过程中采用在ImageNet上预训练的VGG16(注:其他AlexNet, ResNet, GoogLeNet亦可)提取特征并进行相似性比较。

网络架构

从上图可以看出,作者设计的网络架构包含两个子网络:图像还原子网络与感知损失子网络。

图像还原子网络采用了***带跳过连接的UNet架构***(更多细节参考原文),它具有以下几个优点:

  • 在图像还原与分割任务中,它具有极优的性能;
  • 它可以处理任意分辨率图像
  • 跳过连接确保了上下文信息的自适应传递,保留了高分辨率细节信息

感知损失子网络采用VGG16的前两个卷积提取特征,这两个特征可以精确的编码图像的风格与内容感知信息。

1558320341158

1558320526072

1558320782864

10.  End to End Denoising of Dark Burst Images using Recurrent Fully Convolutionaly Networks

arxiv paper

作者提出一种递归全卷积网络(Recurrent Fully Convolutional Network, RFCN)用于处理极暗场景下的降噪并提升亮度的问题。该方法以RAW数据作为输入,直接生成RGB数据,它可以同时进行降噪、色彩校正以及增强等任务。该方法取得SOTA性能且具有极好的泛化性能(一种类型相加训练模型不经finetune仍可很好的处理不同相机得到的图片)。

1558345763871

上图给出了作者提出低光图像降噪增强流程图,它的核心在RFCN模块,针对单帧降噪与多帧降噪,其处理流程存在些微差异,见下图。

1558346307229

损失函数定义如下:

1558346547017

1558346491208

11. Deep Burst Noising

arxiv paper, code

噪声在低光图像采集过程中不可避免的(由于手机设备有限的孔径、较小的传感器,这类问题会进一步恶化)。一种减缓低光场景噪声的方法是提升曝光时间,但是这会导致两个问题:(1) 亮区会超出传感器范围;(2)会相机或场景运动导致模糊。另一种方法是一次获取多帧短曝光图像协同降噪。本文基于后一种方案,采用RFCN架构处理低光降噪问题。该架构可以处理任意长度序列降噪并取得了SOTA性能。

本文目标有以下几点:

  • 可以处理单帧降噪问题
  • 可以拓展到任意帧
  • 可以对整个序列进行降噪
  • 对运动鲁棒
  • 具有时序相关性
  • 可以推广到其他图像还原任务中

本文所涉及方案流程如下:

  • 构建单应性矩阵解决对齐问题
  • 采用FCN独立的为每帧图像降噪
  • 拓展FCN为并行递归网络,即集成多帧信息降噪

网络架构

  • 单帧降噪问题可以视为这样的优化问题:。这里采用FCN构建映射函数,它包含个含通道输出,卷积核为的卷积层。

  • 多帧降噪问题可以视为这样的优化问题:.

    对于多帧问题,作者采用RNN+FCN架构进行处理。下图给出了作者所提出的多帧降噪架构。

    1558415706790

    1558416194631

    1558416256211

     Note: 10 与11两种方法基本相同,区别仅在于处理数据的类型, 10用于处理RAW数据降噪,11用于处理RGB数据降噪,其他无甚区别。 

12. DeepISP Toward Learning an End to End Image Processing Pipeline

project, paper

作者提出一种端到端的用于模拟ISP流程的深度神经网络DeepISP。它学习了从低光RAW到最终视觉效果良好RGB的映射,集成去马赛克、降噪以及颜色校正、图像调整等功能。在专用数据集(由三星S7只能手机采集的低光RAW与正常光RGB数据对)上对所提框架进行了训练与测试。所提方法在联合去马赛克降噪方面取得了SOTA性能。相比传统ISP方案,该方案具有更优的视觉效果。

1558420054895

上图给出了DeepISP架构图,它包含两个部分:底层特征处理(局部修正)与高层特征处理(全局校正)。

  • Low Level Stage.

    该部分包含个模块,每个模块执行的卷积操作,它的输入与输出均为。注:输入到网络中的为去马赛克后并进行双线性插值的RGB图像。

    在这64个通道中,其中61个通道为标准的前向卷积+ReLU,另外三个通道则采用残差架构+tanh

  • High Level Stage

    该部分包含个卷积层(),它可以获得更大的感受野降低计算损失。这些卷积后接全局均值池化得到一个特征向量并通过全连接层得到变换参数W

  • Output

    在得到变换矩阵W后,将其作用于底层特征记得得到最终的输出。这里的变换公式定义如下:

    其中, ,表示上三角矩阵向量化操作。经此操作即可得到每个像素的输出。

    采用这种处理的原因:(1)线性回归不适用于两者之间的变换;(2)具有更好的视觉效果。

在训练过程中,损失函数在Lab域进行计算,在Lab域三个通道分别计算损失,尽在亮度通道计算MS-SSIM损失。整体损失定义如下:

1558422716983

13. Underexposed Photo Enhancement using Deep Illumination Estimation

paper

这是腾讯优图贾佳亚团队发表于CVPR2019用于低光图像增强的一种基于Retinex的深度网络方法。

本文提出一种欠曝光图像增强方法。不用于已有直接学习Image2Image映射的方法,我们在网络中引入了中间亮度对输入与期望增强结果构建相关性,这种处理方式提升了网络处理复杂图相对的能力。基于该模型,我们构建了一种集成亮度约束与先验的损失函数,同时准备了3000对欠曝光图像用于网络训练。该方法可以为图像重建清晰的细节、明显的对比度以及更为自然地颜色。基于所构建数据集与MIT-Adobe FiveK数据集的实验证实:该网络可以有效处理不同挑战难度的图像。

1558485749732

该方法基于Retinex而进行设计,假设反射分量是正常曝光图像,I为欠曝光图像,S为亮度图像,即。此时需要采用深度网络估计亮度图像S。作者将亮度图像S视为三通道数据而非单通道数据以提升其在色彩增强方面的能力,尤其对于跨颜色通道的非线性能力。

网络架构

上图给出了作者所涉及的网络架构图,它具有两个优点:亮度图的有效学习与整体网络的高效计算。

  • 有效学习

    欠曝光图像增强需要调整局部(对比度、锐化细节、阴影、高光等)与全局(颜色分布、平均亮度与场景类别等)特征。因而,作者考虑从编码网络中提取局部与全局特征,同时设计了一种集成亮度平滑先验、重建损失、颜色损失的损失函数。这些策略有确保网络可以有效的学习到亮度图像S。

  • 高效计算

    为计算计算,作者采用低分辨率局部与全局特征学习亮度图像,然后采用Bilateral Grid Upsampling方式进行上采样。因此该网络的大部分计算量均位于低分辨率区域,进而确保高分辨率图像处理的实时性。

损失函数

作者所设计的损失函数定义如下:

其中,。

  • 重建损失。

  • 平滑损失.

    注:表示水平与垂直方向的偏导,表示输入图像的对数图像,用于控制图像梯度的敏感度,。该损失函数可以避免过拟合同时提升图像的对比度。

  • 颜色损失。用于计算两个颜色向量(RGB三维)的角度。

    使用该损失而非的原因:(1) 重建损失已明确度量颜色差异;(2)只能度量颜色差异而无法颜色向量具有相同方向,进而容易导致明显的颜色偏差。

1558489012606

14. Deep Bilateral Learning for Real Time Image Enhancement

project, paper, code

这是一篇``Google Research发表于SIGGRAPH2017` 用于图像增强的方法。

基于双边网络处理与局部颜色仿射变换,作者提出一种新的深度网路架构用于图像增强。采用图像对训练深度网路学习双边空间下的局部仿射系数,该架构可以学习局部、全局以及内容相关的决策参数以生成期望的图像变换。

在运行时,该网络在低分辨空间学习双边空间内相关仿射参数,然后将这些参数采用保边形式上采样,最后将这些参数作用于全分辨率输入图像得到最终期望的输出。最终该算法可以在手机端以毫秒级处理高分辨率图像,对于1080p分辨率图像可以做到实时处理。

1558495390250

网络架构

该网络的大部分推理均在低分辨率上执行,该部分用于预测类似Bilateral Grid的局部仿射变换。图像增强不仅依赖于局部特征,同时还依赖于全局特征。因而低分辨率流进一步划分为两个分支,最后融合两个分支的结果得到最终的仿射变换系数。

在高分辨率分支在全分辨率图像上执行,它占据较少的计算,但对于获取高频信息、保边有很重要作用。为此,作者一如了Slicing节点以参考图为例采用查找表方式构建最终的放射系数图。

最后,将所得到的高分辨率仿射系数作用于原始输入图像即可得到期望的增强图像。

  • 低分辨率分支

    低分辨率输入具有固定的尺寸,后接一些列卷积操作以提取底层特征并降低分辨率,然后将所得特征送入非对称分支中:局部特征提取分支与全局特征提取分支。

    全局特征与局部特征融合为特征,最终通过Pointwise Linear Layer生成最终的Bilateral Grid仿射系数。

    • 局部特征提取分支由全卷积构成,在学习局部特征的同时保持空间分辨率;
    • 全局特征提取分支由卷积与全连接层()构成以学习一个固定尺寸的全局特征。
  • 高分辨率分支

    为尽可能的降低整体的计算复杂度,高分辨率分会应当简单且易于并行。对于全分辨率输入,提取特征。它有两个作用:(1) 生成参考图;(2)局部仿射模型的回归变量。

    定义为全分辨率图像的线性仿射变换,。其中,表示的颜色放射矩阵,更多参数见原文。

  • 重建分支

    最终的模型输入可以通过全分辨率特征与仿射参数计算得到:.

1558510947455

评价指标

关于图像质量评价的指标可以参考:参考链接。这里仅仅列举了几种较为常见的评价指标。

方法 公式 说明
MSE -
PSNR -
SSIM -
MS-SSIM -
JND - -
NIQE -
  1. VMAF 1
  2. VMAF 2

小结

  • 从数据层面可以划分为:低光图像与暗光图像。

    低光图像增强则更多是在RGB层面进行处理;而暗光图像增强则是在RAW层面进行处理。

  • 从网络架构方面可以划分为:基于UNet的架构与基于Retinex的架构。

    UNet架构是一种更具通用性的架构,但其存在不可控性因素,最终生成图像无法进行人工调控;

    Retinex架构则是参考了传统图像增强中的Retinex理论与深度网络技术而提出的方案,其架构可以赋予人工交互因子,可控性稍高。

  • 从损失函数方面可以划分为:单一损失函数(等损失)与组合损失函数( + 感知损失等)。

    单一损失函数(如)往往会导致生成图像的模糊、颜色失真等现象;

    组合损失函数可以在一定程度避免上述现象,但有可能出现纹理失真现象。


欢迎关注AIWalker公众号,在这里您将得到独家深度学习经验分享与个人思考。想支持Happy继续写下去就点个赞关注一下吧!

图像融合亮度一致_重磅干货低光图像处理方案相关推荐

  1. 图像融合亮度一致_博文精选 | 基于深度学习的低光照图像增强方法总结

    光照估计(illumination estimation)和低光照增强(low-light enhancement)的区别:光照估计是一个专门的底层视觉任务,它的输出结果可以被用到其它任务中,例如图像 ...

  2. java 图像倾斜角度计算_【干货】无人机航测倾斜实景三维建模进行土方计算(基于Smart3D全面讲解)...

    土石方工程量的核算往往是工程预算与结算中的争议与焦点,然而运用天星系列多镜头倾斜摄影测量系统的实景3D建模方法模拟土方石的开挖与回填,可以让施工方直观有效地开展土石方的挖运分析与运算,做到土方平衡计算 ...

  3. Landat8 图像融合、波段相关系数、信息熵和图像处理代码实验(实验报告形式)

    1 实验区域简介 1.1实验区地理位置 环翠区,隶属于山东威海市,是威海市的中心城区,是威海市的政治.经济.文化和科技中心.地处山东半岛最东边,三面环海,东与朝鲜半岛.日本列岛相望,属于胶东低山丘陵区 ...

  4. lisp如何将度分秒转换为弧度_重磅干货!如何利用Stata进行空间冷热点分析 | 社论前沿...

    摘要:区域数据的可用性不断提高,空间分析越来越受到关注.本文介绍一个使用Stata实现空间热点和冷点分析的方法.要实现getisord命令,只需将区域的纬度和经度作为额外的必需信息即可.与Shape文 ...

  5. c++ ftp服务端_重磅干货||五万字长文总结:C/C++ 知识(下篇)

    结识更多同行,共同讨论"嵌入式"技术.欢迎添加社区客服微信,备注发送"电源+公司名(学校)+职位(专业)"拉您入群. 回顾上篇:五万字长文总结:C/C++ 知识 ...

  6. matlab 图像二值化_推荐:为图像处理初学者设计的100个问题(含python实现代码)...

    本文整理了图像处理初学者应该需要了解的100个基础问题,涉及读取.显示图像.操作像素.拷贝图像.保存图像.灰度化(Grayscale).二值化(Thresholding).大津算法.HSV 变换.减色 ...

  7. 【重磅干货】信息化方案合集下载!

    公众号回复:干货,领取价值58元/套IT管理体系文档 公众号回复:ITIL教材,领取最新ITIL4中文教材 更多专业文档请访问 www.itilzj.com 上一期给大家分享了数字化全集共200份的资 ...

  8. matlab将二值图像与原图重叠_[转载]图像处理matlab及图像融合图像镶嵌图像拼接...

    在实际的对图像处理过程中,由于我们读出的图像是unit8型,而在MATLAB的矩阵运算中要求所有的运算变量为double型(双精度型).因此读出的图像数据不能直接进行相加求平均,因此必须使用一个函数将 ...

  9. grads 相关系数_基于小波变换的多聚焦图像融合算法

    引用本文 孟强强, 杨桄, 童涛, 张俭峰. 基于小波变换的多聚焦图像融合算法[J]. 国土资源遥感, 2014,26(2): 38-42 MENG Qiangqiang, YANG Guang, T ...

最新文章

  1. 编程珠玑第六章习题二——C++实现一个数的因子分解
  2. 微信小程序修改样式弹框wx.showModal
  3. 玩转VSCode插件之Remote-SSH
  4. OSPF LSA序列号问题
  5. win10,pip更新后,Spyder打不开
  6. faster-rcnn移植过程中出现错误
  7. 日行千里,全凭“车”况,为什么我们要升级平台
  8. linux系统调用的封装格式,ARM Linux系统调用的原理
  9. java程序员学习路线以及我的学习经验
  10. STL学习系列七:优先级队列priority_queue容器
  11. BZOJ2563 阿狸和桃子的游戏
  12. 2020年春季计算机网络考试,国家开放大学2020年春季学期电大考试《计算机网络》精选考试题及答案...
  13. 实战BootStrap:利用BootStrap制作全平台响应式站点
  14. python身份证号码计算年龄
  15. HD、BD、MKV和RMVB、DVD、AVI
  16. jpg图片太大怎么压缩变小
  17. “机智歌王”--沙鸥,大陆的的张帝
  18. licode的ios最新版本的接入
  19. 输入整数n,其中0<n<7,输出用n、n+1、n+2、n+3这4个数字组成的无重复数字的3位数
  20. 20150311,微软3月11日发布14个安全补丁

热门文章

  1. java ee7帮助文档_帮助推动Java EE向前发展
  2. jooq_jOOQ星期二:拉斐尔·温特豪德(Rafael Winterhalter)正在与字节好友合作字节码...
  3. 部署gradle_使用Gradle消除开发重新部署
  4. maven的常见问题_Maven常见问题和陷阱
  5. [MEGA DEAL] 2020年完整的Java Master Class Bundle(96%)
  6. mock测试使用断言_使用自定义断言丰富测试代码
  7. 5个令人震惊的统计数据证明日志不足
  8. 使用Eclipse Deeplearning4j构建简单的神经网络
  9. Neo4j:遍历查询超时
  10. java lambda使用_在Java 8 Lambda上使用Apache Commons Functor功能接口