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?=∣∣I1??i1?22?

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?=∣∣R1??R2?22?(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?=∣∣R°L?i22?+∣∣R?i/stopgrad(L)22?+∣∣L?L0?22?+∣∣?L1?

∣ ∣ R ° L ? i ∣ ∣ 2 2 \mid\mid R \circ L - i \mid\mid^2_2 ∣∣R°L?i22? 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 ∣∣R?i/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,Bmax?Ic(x).

5.Retinex Loss:Retinex損失是為了限制分解組塊L-Net和R-Net以滿足Retinex的理論要求。

本文畢

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/208669.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/208669.shtml
英文地址,請注明出處:http://en.pswp.cn/news/208669.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Kafka安全性探究:構建可信賴的分布式消息系統

在本文中,將研究Kafka的安全性,探討如何確保數據在傳輸和存儲過程中的完整性、機密性以及授權訪問。通過詳實的示例代碼,全面討論Kafka安全性的各個方面,從加密通信到訪問控制,幫助大家構建一個可信賴的分布式消息系統…

vue3 setup router的使用教程

vue3 setup router的使用教程 文章目錄 vue3 setup router的使用教程1. 安裝2. 使用(創建路由實例)3. 路由跳轉3.1 通過router-link標簽跳轉3.2 通過js代碼跳轉 4. 接收參數4.1 通過query接收參數4.2 通過params接收參數 5. 路由守衛5.1 全局守衛5.2 路由…

阿里云docker加速

文章目錄 一、 阿里云鏡像倉庫配置二、配置加速1. CentOS2. Mac3. Windows注意 一、 阿里云鏡像倉庫配置 1.注冊阿里云賬號,并登陸到阿里云后臺,進入控制臺面板 2.進入控制臺以后,找到左上方的三橫的功能列表按鈕,在彈出來的功能…

智能手機IC

智能手機IC 電子元器件百科 文章目錄 智能手機IC前言一、智能手機IC是什么二、智能手機IC的類別三、智能手機IC應用實例四、智能手機IC作用總結前言 智能手機IC通過相互配合和協同工作,支持智能手機的各種功能和特性,如高速計算、多媒體處理、無線通信、圖形渲染、傳感器數據…

G1 GC基本邏輯

1 MixedGC基本過程 在G1GC中,有兩種主要的垃圾回收過程:Young GC和Mixed GC。這兩者都是為了回收堆內存中的垃圾對象,但是他們關注的區域和工作方式有所不同。 Young GC: Young GC主要負責回收Young Generation(包括…

跟著GPT學設計模式之建造者模式

Builder 模式,中文翻譯為建造者模式或者構建者模式,也有人叫它生成器模式。允許你創建不同口味的對象同時避免構造器污染。當一個對象可能有幾種口味,或者一個對象的創建涉及到很多步驟時會很有用。 現實世界例子:想象一個角色扮…

Vue:用IDEA開發Vue,標簽語法爆紅問題處理

一、場景描述 我在IDEA中,學習Vue課程。 入門學習時,是在html文件中,script引入vue.js文件方式。 此時,在html文件中用v-標簽,爆紅。 二、解決辦法 打開 菜單欄 File - Settings 選擇 Editor - Files Type&#xf…

《每天一個Linux命令》 -- (5)通過sshkey密鑰登錄服務器

歡迎閱讀《每天一個Linux命令》系列!在本篇文章中,將介紹通過密鑰生成,使用公鑰連接管理服務器。 概念 SSH 密鑰是用于安全地訪問遠程服務器的一種方法。SSH 密鑰由一對密鑰組成:公鑰和私鑰。公鑰存儲在遠程服務器上,…

軟件工程復習

一、題型 單項選擇題 20分 填空題 10分 判斷題 10分 簡答題 18分 應用題 12分 綜合題 30分 軟件程序數據文檔 軟件是無形的、不可見的邏輯實體 20世紀60年代末爆發軟件危機 軟件危機是指軟件在開發與維護過程中遇到的一系列嚴重的問題 …

理解 GET、POST、PATCH 和 DELETE 請求的參數傳遞方式

理解 GET、POST、PATCH 和 DELETE 請求的參數傳遞方式 本文將向您介紹在使用 GET、POST、PATCH 和 DELETE 請求時如何傳遞參數。通過詳細解釋每種請求的參數傳遞方式和示例代碼,您將了解如何正確地將數據發送到服務器并與之交互。 GET 請求的參數傳遞方式 在 GET…

CentOS 7.9安裝寶塔面板,安裝gitlab服務器

docker安裝方式比較慢,安裝包1.3GB 安裝后啟動很慢 docker logs q18qgztxdvozdv_gitlab-ce-gitlab-1 docker ps docker exec -it q18qgztxdvozdv_gitlab-ce-gitlab-1 sh cd /etc/gitlab cat initial_root_password 軟件商店安裝方式,失敗了2023.12…

clickhouse刪除partition分區數據

clickhouse分布式表tencent_table_20231208_DIST,本地表tencent_table_20231208_local; 30臺clickhouse存儲服務器; 本地表:tencent_table_20231208_local CREATE TABLE tencent_sz.tencent_table_20231208_local (id Int64 DEFA…

hook其他調試技巧

輸出堆棧信息 通過 android.util.Log 輸出當前線程的堆棧跟蹤信息。 function showStacks() {Java.perform(function () {console.log(Java.use("android.util.Log").getStackTraceString(Java.use("java.lang.Throwable").$new() )); }) } 可以在需要的…

機器學習--稀疏學習

前置知識: 通常學習一次模型的過程如下:我們普遍為了獲取更好的模型效果,直接對原始數據學習,會造成過擬合、需要特征提取; 而若特征提取完后依舊有很多特征,還是會容易過擬合。這時候就需要特征降維和特…

[leetcode 前綴和]

525. 連續數組 M :::details 給定一個二進制數組 nums , 找到含有相同數量的 0 和 1 的最長連續子數組,并返回該子數組的長度。 示例 1: 輸入: nums [0,1] 輸出: 2 說明: [0, 1] 是具有相同數量 0 和 1 的最長連續子數組。示例 2: 輸入: nums [0,1,0] 輸出: …

笙默考試管理系統-MyExamTest----codemirror(48)

笙默考試管理系統-MyExamTest----codemirror(48) 目錄 笙默考試管理系統-MyExamTest----codemirror(48) 一、 笙默考試管理系統-MyExamTest----codemirror 二、 笙默考試管理系統-MyExamTest----codemirror 三、 笙默考試管…

C/C++端口復用SO_REUSEADDR(setsockopt參數),test ok

端口復用最常用的用途應該是防止服務器重啟時之前綁定的端口還未釋放或者程序突然退出而系統沒有釋放端口。這種情況下如果設定了端口復用,則新啟動的服務器進程可以直接綁定端口。如果沒有設定端口復用,綁定會失敗,提示ADDR已經在使用中——…

前端學習--React(5)

一、useReducer 管理相對復雜的狀態數據 定義一個reducer函數,根據action值的不同返回不同的狀態 在組件中調用useReducer并傳入reducer函數和狀態的初始值 事件發生時,通過dispatch函數分派一個對象,即通知reducer具體返回哪個狀態對應的操…

STM32 寄存器配置筆記——USART DMA發送

一、DMA介紹 直接存儲器存取(DMA)用來提供在外設和存儲器之間或者存儲器和存儲器之間的高速數據傳 輸。無須 CPU 干預,數據可以通過 DMA 快速地移動,這就節省了 CPU 的資源來做其他操作。當產品對于時序要求較嚴格時,外設使用DMA的方式能夠減…

深入了解Java 8日期時間新玩法:DateTimeFormatter與ZoneOffset的使用

推薦語 在這篇文章中,我們將深入探討Java中的DateTimeFormatter和ZoneOffset類的功能和使用方法。這些類是在Java 8中引入的新的日期時間API的一部分,它們為我們提供了更靈活、更易用的日期和時間處理能力。盡管這些類在Java 8中已經出現,但…