PairLIE论文阅读笔记

PairLIE论文阅读笔记

论文为2023CVPR的Learning a Simple Low-light Image Enhancer from Paired Low-light Instances.论文链接如下:

openaccess.thecvf.com/content/CVPR2023/papers/Fu_Learning_a_Simple_Low-Light_Image_Enhancer_From_Paired_Low-Light_Instances_CVPR_2023_paper.pdf

文章目录

  • PairLIE论文阅读笔记
    • 出发点
    • 创新点
    • 模型
    • 设计及其损失

出发点

1.However, collecting high-quality reference maps in real-world scenarios is time-consuming and expensive.

出发点1:在低光照领域,从现实世界中获取高质量的参考照片进行监督学习,既费时又困难,成本昂贵。

因为获得低光环境的照片是容易的,而此低光照片对应的亮度较大的参考图片是难得的。

2.To tackle the issues of limited information in a single low-light image and the poor adaptability of handcrafted priors, we propose to leverage paired low-light instances to train the LIE network.

Additionally, twice-exposure images provide useful information for solving the LIE task. As a result, our solution can reduce the demand for handcrafted priors and improve the adaptability of the network.

出发点2:为了解决手动设置的先验的低适应性,减少手动设置先验的需求,同时提升模型对陌生环境的适应性。

创新点

The core insight of our approach is to sufficiently exploit priors from paired low-light images.

Those low-light image pairs share the same scene content but different illumination. Mathematically, Retinex decomposition with low-light image pairs can be expressed as:

在这里插入图片描述

创新点1:作者利用两张低光图片进行训练,以充分提取低光图片的信息。

instead of directly imposing the Retinex decomposition on original low-light images, we adopt a simple self-supervised mechanism to remove inappropriate features and implement the Retinex decomposition on the optimized image.

创新点2:作者基于Retinex理论,但是并不循旧地直接运用Retinex的分解。作者采用一个简单的自监督机制以实现不合理特征的去除(通常是一些噪音)以及更好地实现Retinex理论。

模型

在这里插入图片描述

将两张同一场景不同曝光的低光图片送入训练中,图片I1与I2先经过P-Net去除噪音,得到i1与i2,然后利用L-Net与R-Net分解为照度L1与反射R1(对应有L2与R2)。

在测试,只需要输入一张低光照图片I,经过P-Net的噪音去除,得到i,然后用L-Net与R-Net分解为照度和反射,然后对照度L进行增强,操作为g(L),把增强结果与反射R进行元素乘法,得到增强后的图片Enhanced Image。

设计及其损失

Note that, this paper does not focus on designing modernistic network structures. L-Net and R-Net are very similar and simple,

1.模型使用的L-Net与R-Net十分简单。整体架构只是单纯的卷积神经网络。

Apart from L-Net and R-Net, we introduce P-Net to remove inappropriate features from the original image. Specifically, the structure of the P-Net is identical to the R-Net.

2,P-Net被设计用于去除不合理特征。
L p = ∣ ∣ I 1 − i 1 ∣ ∣ 2 2 L_p = \mid\mid I_1 - i_1 \mid\mid^2_2 Lp=∣∣I1i122

Note that the projection loss needs to cooperate with the other constraints to avoid a trivial solution.i,e.,i1 = I1.

3.Projection Loss:最大程度限制去除不合理特征后的i1和原始低光图片I1的区别。

这个损失需要避免一个特例,即降噪后图片与原图相同,即未降噪。
L c = ∣ ∣ R 1 − R 2 ∣ ∣ 2 2 (1) L_c = \mid\mid R_1 - R_2 \mid\mid^2_2\tag{1} Lc=∣∣R1R222(1)

Since sensor noise hidden in dark regions will be amplified when the contrast is improved.

In our method, the sensor noise can be implicitly removed by Eq. 1.

4.Reflection Loss:通常用传感或摄影设备拍摄低光场景照片会携带一定的设备噪音,这个损失最大限度保证两张图片的反射是相同的,减少传感或摄影设备的影响,这是因为图片场景的内容相同。

这个损失是确保反射的一致性。
L R = ∣ ∣ R ∘ L − i ∣ ∣ 2 2 + ∣ ∣ R − i / s t o p g r a d ( L ) ∣ ∣ 2 2 + ∣ ∣ L − L 0 ∣ ∣ 2 2 + ∣ ∣ ∇ L ∣ ∣ 1 L_R = \mid\mid R \circ L - i \mid\mid^2_2 + \mid\mid R - i / stopgrad(L)\mid\mid^2_2 + \mid\mid L - L_0 \mid\mid^2_2 + \mid\mid \nabla L \mid\mid_1 LR=∣∣RLi22+∣∣Ri/stopgrad(L)22+∣∣LL022+∣∣L1

∣ ∣ R ∘ L − i ∣ ∣ 2 2 \mid\mid R \circ L - i \mid\mid^2_2 ∣∣RLi22 is applied to ensure a reasonable decomposition.

∣ ∣ R − i / s t o p g r a d ( L ) ∣ ∣ 2 2 \mid\mid R - i / stopgrad(L) \mid\mid^2_2 ∣∣Ri/stopgrad(L)22 is to guide the decomposition.

Specifically, the initialized illumination L0 is calculated via the maximum of the R, G, and B channels: L 0 = m a x c ∈ R , G , B I c ( x ) . L_0 = \underset{c \in{R, G, B}}{max} I^c(x). L0=cR,G,BmaxIc(x).

5.Retinex Loss:Retinex损失是为了限制分解组块L-Net和R-Net以满足Retinex的理论要求。

本文毕

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/259120.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

进制 + 原码,反码,补码

进制转换 整数部分 小数部分 原码 反码 补码 原码转补码: 左边和右边第一个1不变,中间取反。-0 除外。 计算机系统中数值一律用补码来存储的原因 其他 术语 进制表 进制数的表示 详细教程可转 爱编程的大丙

一文讲解关于MCU启动原理的几个关键问题

MCU最开始一启动后去哪里读代码? CPU上电启动后被设计为去地址0x00000000位置处读取代码;首先会连续读取两个字,分别是栈指针初始值和复位异常处理函数的地址;然后跳去执行复位异常处理函数。 当然在一些早期的ARM处理器设计中&a…

西南科技大学C++程序设计实验八(多态一)

一、实验目的 1. 掌握多态性的分类; 2. 动态多态性-虚函数; 3. 理解纯虚函数的概念。 二、实验任务 1.分析以下程序,改正程序错误,写出程序输出结果,并按要求: (1)思考:输出结果中为什么类A是8个字节,类B是12个字节?分析虚函数的类的结构特点 A的字节大小为:…

Android studio安装教程(图文详解,简单搞定)

一 下载 根据自己计算机选择对应版本点击下载 https://developer.android.google.cn/studio 二 安装Android Studio Android Studio 是Google提供的一个Android开发环境,基于IntelliJ IDEA类似 Eclipse ADT,他集成了Android 所需的开发工具。需要注意…

企业快递账单管理教程

快递账单管理怎么做,才能更高效?想要回答这个问题,首先我们要了解现如今企业快递账单管理的大致有哪些方式: 1、纸质化管理 纸质化管理现在虽然少见,但是我们应该挺熟悉。在电子面单面试之前,企业快递账单…

数据结构线性表-栈和队列的实现

1. 栈(Stack) 1.1 概念 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈 顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 …

Python与ArcGIS系列(十五)根据距离抓取字段

目录 0 简述1 实例需求2 arcpy开发脚本0 简述 在处理gis数据的时候,会遇到这种需求:将一个图层与另一个图层中相近的要素进行字段赋值。本篇将介绍如何利用arcpy及arcgis的工具箱实现这个功能。 1 实例需求 为了介绍这个功能的实现,我们需要有一个特定的功能需求。在这里选…

盘点11月Sui生态发展,了解Sui的近期成长历程!

11月是Web3的“回暖期”,行业持续展现增长趋势。Sui紧随行业脚步,开展了一系列生态活动。其中历时一个多月的Quest 3游戏活动顺利结束并公布奖励,在多地区成功举办Move和Sui生态黑客松&交流会,还有针对中文社区开发者教育的星…

网络知识学习(笔记三)(传输层的TCP)

前面已经介绍了传输层的UDP协议的报文以及一下相关的知识点,本次主要是传输层的TCP协议,包括TCP报文的详细介绍;可靠传输、流量控制、拥塞控制等;建立连接、释放连接。 一、TCP基本知识点介绍 1.1、TCP协议的几个重要的知识点 …

灵活性与可靠性:SaaS云开发与定制开发小程序的优缺点解析

随着移动互联网的快速发展,微信小程序作为一种轻量级的应用程序,逐渐成为了企业开展业务和提升用户体验的重要工具。对于企业而言,选择通过SaaS云开发或定制开发的方式开发小程序,都是为了更好地实现业务目标。在这篇文章中&#…

0009Java程序设计-ssm微信小程序在慢性疾病管理中的应用

文章目录 **摘要**目录系统实现开发环境 编程技术交流、源码分享、模板分享、网课分享 企鹅🐧裙:776871563 摘要 首先,论文一开始便是清楚的论述了小程序的研究内容。其次,剖析系统需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例…

uniapp-实现一级二级职位选择,完整页面!!!

一、需求 该页面实现的功能有: 该页面是左侧为一级,右侧为二级;可以搜索职位进行选择;底部显示已选的岗位,点击每一项会删除;右侧的二级岗位,点击时会选中,再次点击会取消&#xf…