RUAS论文阅读笔记

news2024/9/30 23:23:20

在这里插入图片描述

  • 这是CVPR2021的一篇暗光增强的论文

Retinex增强和去噪部分

  • 第一部分的核心公式是一种retinex公式(用于暗图增强的retinex公式有几种类型,虽然本质一样但是对于各个分量的定义不一样): y = x ⊗ t y=x\otimes t y=xt,其中x是正常光照图片(0-1),t是暗图中的亮度分量(小于1),y则是暗图(0-1)。
  • 之所以是这样的定义,可以这么理解,基于的一个假设是认为亮图的亮度分量是1,而乘以一个小于1的亮度分量使得图片变暗,也即认为暗图上的亮度分量是小于1的,从而乘上之后成为暗图。那么在给定一张暗图y的情况下,估计亮图x可以通过估计暗图上的亮度分量t来实现,从而增强结果 x = y ⊘ t x=y\oslash t x=yt
  • 从而第一个模块就是给定暗图y估计其亮度分量t,那么基于第二个先验:亮图上最大像素值是1,可以得知,我们可以通过暗图的最大像素值来粗略地估计暗图的亮度分量。
  • 但这么估计肯定太粗略了,要做修正。文章用一个网络来预测修正值,把粗略的估计结果 t ^ k \hat t_k t^k减掉修正值即可得到修正后的亮图分量估计。
  • 这个模块是以循环的方式进行的,也即每次迭代都会对输入估计一个粗略的亮度分量,然后用网络进行修正,得到本轮的增强结果,再将增强结果作为新的输入送进下一轮迭代。
  • 对上面这个描述补充一些细节:
    • 首先第一轮迭代的输入理所当然就是最初的暗图;
    • 其次,除了第一轮之外,后面的每轮迭代的粗略估计则不仅仅是输入的最大值,还要减去一个修正项以抑制不断迭代过程中可能带来的过曝光,这个修正项就是权重 γ \gamma γ乘以(本轮的输入减去最初的暗图),也即不希望增强结果比原图亮太多;
    • 第三,修正网络的输入,从公式里看不出是什么,既有 t k t_k tk也有 t t t,从框图里还有 t ^ k \hat t_k t^k,最后我在代码中确认就是 t ^ k \hat t_k t^k,也即网络的输入仅仅是用max粗略估计的亮度分量,所以我感觉这个网络可能只起个平滑或者顶多再加个亮度平移作用。
    • 第四个细节是网络的损失函数,看公式看图都看不出来,看代码发现跟公式和图片都不一样,代码里是暗图和最后一次迭代输出的t算L2损失,再加上最后一次迭代输出的t的tvloss。所以,3.1.1提到的公式以及论文框架图里画的公式估计只是一个理论推导,并不是实际应用的公式。平滑损失我还能理解,但是暗图和t算L2损失我是完全不能理解,并且在3.2.3部分提到的损失函数也和代码里的这个损失函数不同,3.2.3的损失函数是估计的亮度和第一次粗略估计的亮度之间算损失,这个我还能理解,代码里的问题很大。
    • 第五个细节是,不同迭代中的网络其实是不同的网络,并不共享参数,这点下面的去噪模块也一样。
  • 第二部分是去噪模块。,用网络估计一个噪声图,前面的增强结果的图片减去噪声图即可得到去噪结果。该模块也采取循环的模式,去噪结果作为下一次去噪的输入来估计新的噪声图。论文中提到这里的损失函数和增强网络的损失函数是一样的,这点我极其的不理解。它居然对估计的噪声算tv损失,噪声难道还能是平滑的?太离谱了。这部分倒是和代码里的一样。

结构搜索部分

  • 网络结构被预定义为一个一个有向无环图,由五个节点组成,每个节点都和下一个节点和最终节点相连,出度为2入度为1,除了最后一个节点:
    在这里插入图片描述
  • 这里的有向边即为可选的元模块,包括不同size 的卷积等操作。通过NAS模块来对每个节点的操作进行择优,得到最后的网络结构。
  • 结构搜索的论文我还没看,文中也没有涉及这部分细节,只说增强网络和去噪网络的搜索是交替进行的,相当于先优化增强网络的结构,再优化去噪网络的结构,然后再优化增强网络的结构,递归地进行优化。

实验结果

  • 虽然看损失函数有我不能理解的地方,但是实验结果上看还不错,相比其他网络结构,去噪效果很明显:
    在这里插入图片描述
  • 这个循环去噪模块从消融实验看确实是起去噪效果的,有空探究下为什么这样简单的去噪模块加这样不合理的去噪损失可以去噪:
    在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Trie|并查集|堆|

目录 初始化 插入 查询 合并集合 连通块中点的数量 堆排序 模拟堆 Trie树是用来快速存储和查找字符串集合的数据结构 #include<iostream> using namespace std; const int N 100010; int son[N][26];//本题为小写因为字母&#xff0c;每个节点最多有26个子节点…

JUC编程之——synchronized的底层实现与分析

1 synchronized关键字 synchronized 是 Java 中的关键字&#xff0c;是一种同步锁(也是一种悲观锁)。它修饰的对象有以下几种&#xff1a; 作用于实例方法&#xff0c;当前实例加锁&#xff0c;进入同步代码前要获得当前实例的锁——对象锁&#xff1b;作用于代码块&#xff…

水文水利数据对接详解

数据对接 水雨情监测及视频监控系统需要与什么平台进行对接&#xff1f; 答&#xff1a;水雨情监测及视频监控系统由省统一接收的方式&#xff0c;数据接收中心设在***水利云。 2.水雨情数据接收中心有哪些组成部分&#xff1f; 答&#xff1a;水雨情数据接收中心主要由硬件…

pdf如何压缩变小,pdf压缩教程四招快速学

PDF是我们日常工作中经常使用的文件格式之一。这种文件格式方便易用&#xff0c;能够确保文件在传输和接收过程中不会出现错版等问题。为了方便发送&#xff0c;我们通常会将编辑好的内容转换为PDF格式。但是有时候文件过大&#xff0c;无法通过传输渠道发送怎么办&#xff1f;…

字节5年测试工程师对“测试开发”的理解

写在前面&#xff1a; 写这篇文章的目的是为了能够更好的帮助刚入职的新人了解这个岗位和自己的工作&#xff0c;也想谈谈自己工作一年来对这个领域的了解程度&#xff0c;做一个小小总结吧&#xff5e; 一、我理解的测试开发 测试开发与开发、测试的关系 以前在没有接触测试…

樱花树盛开的季节,我用简单的C代码绘制了一棵樱花树向她表白~『C/C++图形库EasyX』

文章目录&#x1f490;专栏导读&#x1f490;文章导读绘制一根线条绘制一个简易的树干优化树干&#xff0c;使其更加细致绘制樱花树增加随机树形与渐变色效果如何设置随机数进阶——通过鼠标点击来控制生成樱花树进阶——生成樱花树并展示生长过程&#x1f490;专栏导读 &#…

通过阿里云函数计算解决ChatGPT API的调用问题

ChatGPT系列文章 与其被ChatGPT取代&#xff0c;不如征服ChatGPT&#xff0c;做它的主人&#xff01; 文章目录ChatGPT系列文章前言命令行部署准备工作两行命令实现部署应用中心部署使用代理访问API总结前言 自2022年11月30日 OpenAI 发布 ChatGPT 以来&#xff0c;虽然时有唱…

最新版本VSCode配置Python、PyQt5、QtDesigner环境并创建一个ui界面测试

参考链接&#xff1a;最新版本VSCode配置Python、PyQt5、QtDesigner环境并创建一个ui界面测试 一、安装Python3 PyQt5所支持的python版本是从3.5开始的&#xff0c;因此安装的Python3版本必须大于3.5。 我安装的位置是C:\Python\Python38。 参见真小白入门Pyhton的安装 二、安…

图-文多模态,大模型,预训练

参考老师的无敌课程 多模态任务是指需要同时处理两种或多种不同类型的数据&#xff08;如图像、文本、音频等&#xff09;的任务。例如&#xff0c;图像描述&#xff08;image captioning&#xff09;就是一种典型的多模态任务&#xff0c;它需要根据给定的图像生成相应的文本描…

XO08R2 1SBP260109R1001接地系统能够为dcs提供屏蔽层,消除电子噪声干扰

​ XO08R2 1SBP260109R1001接地系统能够为dcs提供屏蔽层&#xff0c;消除电子噪声干扰 dcs合理、可靠的系统接地&#xff0c;是dcs系统非常重要的内容。为了保证dcs系统的监测控制精度和安全、可靠运行&#xff0c;必须对系统接地方式、接地要求、信号屏蔽、接地线截面选择、接…

【C++学习】map和set的封装

&#x1f431;作者&#xff1a;一只大喵咪1201 &#x1f431;专栏&#xff1a;《C学习》 &#x1f525;格言&#xff1a;你只管努力&#xff0c;剩下的交给时间&#xff01; map和set的封装&#x1f349;map和set中的红黑树&#x1f34c;set中的键值和map中的键值&#x1f349…

CTF杂项提纲

CTF的杂项是涉及编码&#xff0c;图片隐写&#xff0c;音频隐写&#xff0c;压缩包分析的方向&#xff0c;本文对MISC的知识点做了一个简单列举 常见编码 ASCII 0-9,48-57 A-Z 65-90 a-z 97-122 URL url编码又叫百分号编码&#xff0c;是统一资源定位的编码方式 base16/…

ModStartCMS v6.2.0 VIP权益配置功能,界面UI优化升级

ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用&#xff0c;支持后台一键快速安装&#xff0c;让开发者能快的实现业务功能开发。 系统完全开源&#xff0c;基于 Apache 2.0 开源协议&#xff0c;免费且不限制商业使用。 功能特性 丰富的模块市…

【初识数据库】数据库简介及MySQL安装

目录 数据库基本概念&#xff1a; 主流的关系型数据库&#xff1a; 下载并安装数据库 我们选择的是&#xff1a;MySQL Community Server 8.0.26 卸载老版本MySQL 数据库基本概念&#xff1a; 数据库&#xff1a;是数据的仓库&#xff0c;存储数据的地方 数据库管理系统&am…

RK3568平台开发系列讲解(调试篇)debugfs 分析手段

🚀返回专栏总目录 文章目录 一、enable debugfs二、debugfs API三、使用示例沉淀、分享、成长,让自己和他人都能有所收获!😄 📢Linux 上有一些典型的问题分析手段,从这些基本的分析方法入手,你可以一步步判断出问题根因。这些分析手段,可以简单地归纳为下图: 从这…

进程虚拟地址空间的划分

进程虚拟地址空间划分是操作系统中的一个核心概念&#xff0c;它决定了进程可以访问的内存范围和方式。在本文中&#xff0c;我们将介绍进程虚拟地址空间的划分方法和各个部分的作用。 进程虚拟地址空间的划分方法 在操作系统中&#xff0c;每个进程都有自己的虚拟地址空间&am…

到底还是留不住!库克“中国行”后火速变脸,3000亿产能转向印度?

以国家的层面来制衡一家科技企业&#xff0c;这种事或许只有老美干得出来。当看到华为即将崛起之时&#xff0c;美一意孤行&#xff0c;修改了大量关乎芯片和商贸的政策。层层围堵之下&#xff0c;华为如今的市场份额大幅缩水&#xff0c;腾出来的高端市场基本被苹果占据。相关…

2023年数据挖掘与知识发现国际会议(DMKD 2023) | IOP JPCS独立出版

会议简介 Brief Introduction 2023年数据挖掘与知识发现国际会议(DMKD 2023) 会议时间&#xff1a;2023年6月24日-26日 召开地点&#xff1a;中国重庆 大会官网&#xff1a;DMKD 2023-2023 International Conference on Data Mining and Knowledge Discovery 由重庆邮电大学、重…

找工作吗?50道Python面试题集锦【附答案】

嗨害大家好鸭&#xff01;我是爱摸鱼的芝士~ 希望能够帮助你在今年的求职面试中脱颖而出&#xff0c; 找到一份高薪工作~ 这些面试题涉及Python基础知识、Python编程、数据分析以及Python函数库等多个方面。 提前预祝给这篇文章点赞收藏的友友们~ 拿到心中最满意的那一份OF…

PHP快速入门13-MySQL数据库与Redis操作

文章目录前言一、PHP连接MySQL1.1 建立数据库链接1.2 插入数据1.3 更新数据1.4 删除数据1.5 查询数据并输出结果1.6 查询数据并返回结果1.7 获取查询结果的行数1.8 获取查询结果的列数1.9 获取查询结果的字段名1.10 获取查询结果的字段类型1.11 获取上一次操作影响的行数1.12 开…