图像去雨、去雪、去雾论文学习记录

All_in_One_Bad_Weather_Removal_Using_Architectural_Search

这篇论文发表于CVPR2020,提出一种可以应对多种恶劣天气的去噪模型,可以同时进行去雨、去雪、去雾操作。但该部分代码似乎没有开源。
提出的问题:
当下的模型只能针对一种恶劣天气进行处理,无法适用于多种复杂恶劣天气
目前的去噪数据集都是人为制作的,与真实数据具有差异。
在这里插入图片描述

创新点1:多合一去噪模型

该方法整体结构如下图所示,其基于对抗神经网络模型进行设计,包含一个生成器(Generator)与一个判别器(Discriminator)。于以往只能处理一种恶劣天气噪声不同,本文提出一种多合一去噪模型,可以同时完成去雨、去雪、去雾操作。

在这里插入图片描述
在生成器中,主要包含三个特征提取模块(雨雪雾 FE,Feature Exactor),一个特征选择模块(Feature Search)以及一个解码器模块(Decoder),判别器则进行判断生成的图像是否为真,并将结果返回到生成器,计算损失,并通过反向传播更新生成器中的参数。

生成器含有多个任务的编码器,每个编码器与特定的恶劣天气类型相关,通过神经架构搜索来优化从各个编码器中提取的图像特征,并将这些特征转换为干净的图像。即思路为:将含有雨雪雾的图像输入生成器,通过生成器中的编码器(FE)进行特征提取,将提取的特征通过神经架构搜索进行优化,选取好的特征信息,将提取的特征信息送入解码器生成干净图像,即完成去噪过程。

生成器模块

多个编码器,用于提取不同恶劣天气图像的干净特征,从而进行恢复,生成干净图像。
在这里插入图片描述

创新点2:Feature Search模块

神经架构查询实际是找到干净的特征,将干净的特征转换为干净的图像。

在这里插入图片描述

在这里插入图片描述
可以看到,FeatureSearch模块中除了常规的卷积操作外,还有残差连接,自注意力机制等。
常规的去雾、去霾模型定义如下:
在这里插入图片描述

也可以表示如下:通过1x1卷积来提取学习M,从而估计M,实现的操作如4.1所示。

在这里插入图片描述

创新点3:多类辅助判别器

基于生成对抗网络(GNN)的判别器通过训练来判断恢复图像效果(即判断生成的图像真实性),但其不提供错误信号,对于多合一模型而言,只知道真假是远远不够的,需要直到生成的图像类型,从而使编码器根据不同类型更新参数,因此提出多类辅助判别器,用于对图像进行分类,从而在反向传播判别损失时,只更新对应判别器的参数。

在这里插入图片描述

具体思路

雾霾图像建模

在这里插入图片描述

其中,I(x)为有雾图像,更具体的,I(x)是在位置x的雨图像,J(x)为观察目标反射光,即去雾后的图像,A为大气光系数,t(x)为大气透射率,t(x)= e^-βd(x),其中,d(x) 为场景深度图,β 为大气光散射系数。由公式(1)式可以清晰知道,只要求得 t(x) 和 A ,便可以从有雾图像 I(x) 恢复无雾图像 J(x) 。

而含雨图像与含雾图像的物理模型极为相似,故可以定义为:

在这里插入图片描述
其中,Ri代表第 i 层的雨线。

雨水图像建模

在这里插入图片描述
其中I(x)是彩色雨滴图像,M(x)是二值图像掩膜。J(x)是背景图像,即干净图像,K是图像所带来的附着的雨滴,代表着模糊的影像形成光线反射的环境。

雪花图像建模

在这里插入图片描述
其中S表示雪花,z是二元掩模,表示雪的位置。

根据上面的物理模型公式可知,不同恶劣天气噪声图像定义是不同的,这也是为何原本的模型都是一个模型处理一种恶劣天气噪声的原因,但根据公式我们也可以看到其内在联系,可以将恶劣天气噪声图像模型定义如下:
在这里插入图片描述

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

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

相关文章

【ARM 嵌入式 编译系列 4.1 -- GCC 编译属性 likely与unlikely 学习】

文章目录 GCC likely与unlikely 介绍linux 内核中的 likely/unlikely上篇文章:ARM 嵌入式 编译系列 4 – GCC 编译属性 __read_mostly 介绍 下篇文章: ARM 嵌入式 编译系列 4.2 – GCC 链接规范 extern “C“ 介绍 GCC likely与unlikely 介绍 likely 和 unlikely 是GCC编译器…

JDBC连接数据库(mysql)

准备jar包 官网下载即可,这里提供两个我下载过的jar包,供使用 链接:https://pan.baidu.com/s/1snikBD1kEBaaJnVktLvMdQ?pwdrwwq 提取码:rwwq eclipse导 jar包: 导入成功会有如下所示: ---------------------------…

个人开发中常见单词拼错错误纠正

个人开发中常见单词拼错错误纠正 前置说明参考地址后端开发相关前端开发相关客户端开发相关大数据/云计算相关工具或软件相关 前置说明 单词太多啦, 我这里只列表我个人见得比较多的, 我没见过就不列举了. 有错误或想补充的可以提交在原仓库提交Pull Request. 😁 …

JavaScript面试题(二)

31、http 的理解 ? HTTP 协议是超文本传输协议,是客户端浏览器或其他程序“请求”与 Web 服务器响应之间的应用层通信协议。HTTPS主要是由HTTPSSL构建的可进行加密传输、身份认证的一种安全通信通道。 32、http 和 https 的区别 ? 1、https协议需要到ca申请证书…

基于DEM tif影像的插值平滑和tif纹理贴图构建方法

文章目录 基于CDT的无缝融合基于拓扑纠正的地上-地表的Bool运算融合 基于CDT的无缝融合 准备数据是一个10米分辨率的Tif影像,直接用于生成DEM会十分的不平滑。如下图所示,平滑前后的对比效果图差异: 基于ArcGIS的DEM平滑插值 等值线生成&…

Oracle增加列

在Oracle数据库中,使用ALTER TABLE语句可以很方便地为表增加新列。在进行操作时,需要谨慎考虑新列的数据类型、名称、默认值、约束等因素,以确保操作的安全性和可靠性。同时,也需要注意备份数据、避免在高峰期进行操作等注意事项 …

GPT内功心法:搜索思维到GPT思维的转换

大家好,我是herosunly。985院校硕士毕业,现担任算法研究员一职,热衷于机器学习算法研究与应用。曾获得阿里云天池比赛第一名,CCF比赛第二名,科大讯飞比赛第三名。拥有多项发明专利。对机器学习和深度学习拥有自己独到的见解。曾经辅导过若干个非计算机专业的学生进入到算法…

Linux6.38 Kubernetes 集群存储

文章目录 计算机系统5G云计算第三章 LINUX Kubernetes 集群存储一、emptyDir存储卷2.hostPath存储卷3.nfs共享存储卷4.PVC 和 PV 计算机系统 5G云计算 第三章 LINUX Kubernetes 集群存储 容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出…

编写 loading、加密解密 发布NPM依赖包,并实施落地使用

你的 Loading 开箱即可用的 loading, 说明:vue3-loading 是一个方便在 Vue 3 项目中使用的加载指示器组件的 npm 插件。它允许您轻松地在项目中添加加载动画,提升用户体验。 目录 你的 Loading🌍 安装🛹 演示地址&…

C# WPF 无焦点自动获取USB 二维码扫码枪内容,包含中文

C# WPF 无焦点自动获取USB 二维码扫码枪内容,包含中文 前言项目背景 需要预知的知识实现方案第一步 安装键盘钩子第二步 获取输入的值第3 步 解决中文乱码问题分析解决思路工具函数 结束 前言 USB接口的扫码枪基本就相当于一个电脑外设,等同于一个快速输…

Oracle Data Redaction与Data Pump

如果表定义了Redaction Policy,导出时数据会脱敏吗?本文解答这个问题。 按照Oracle文档Advanced Security Guide第13章,13.6.5的Tutorial,假设表HR.jobs定义了Redaction Policy。 假设HR用户被授予了访问目录对象的权限&#xf…

Unity引擎使用InteriorCubeMap采样制作假室内效果

Unity引擎制作假室内效果 大家好,我是阿赵。   这次来介绍一种使用CubeMap做假室内效果的方式。这种技术名叫InteriorCubeMap,是UE引擎自带的节点效果。我这里是在Unity引擎里面的实现。 一、效果展示 这个假室内效果,要动态看才能看出效…

柏睿向量数据库Rapids VectorDB赋能企业级大模型构建及智能应用

ChatGPT的问世,在为沉寂已久的人工智能重新注入活力的同时,也把长期默默无闻的向量数据库推上舞台。今年4月以来,全球已有4家知名向量数据库公司先后获得融资,更加印证了向量数据库在AI大模型时代的价值。 什么是向量数据库? 在认识向量数据库前,先来了解一下最常见的关…

【业务功能篇62】Spring boot maven多模块打包时子模块报错问题

程序包 com.xxx.common.utils不存在或者xxx找不到符号 我们项目中一般都是会分成多个module模块,做到解耦,方便后续做微服务拆分模块,可以直接就每个模块进行打包拎出来执行部署这样就会有模块之间的调用,比如API模块会被Service…

【SpringBoot】SpringBoot获取不到用户真实IP怎么办

文章目录 前言问题原因解决方案修改Nginx配置文件SpringBoot代码实现 前言 项目部署后发现服务端无法获取到客户端真实的IP地址,这是怎么回事呢?给我都整懵逼了,经过短暂的思考,我发现了问题的真凶,那就是我们使用了N…

Vue基础

Vue基础 Vue应用 <!DOCTYPE html> <html> <head><meta charset"utf-8"><title></title><!-- 开发环境版本 --><script src"https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> </head&g…

vue所有UI库通用)tree-select 下拉多选(设置 maxTagPlaceholder 隐藏 tag 时显示的内容,支持鼠标悬浮展示更多

如果可以实现记得点赞分享&#xff0c;谢谢老铁&#xff5e; 1.需求描述 引用的下拉树形结构支持多选&#xff0c;限制选中tag的个数&#xff0c;且超过制定个数&#xff0c;鼠标悬浮展示更多已选中。 2.先看下效果图 3.实现思路 首先根据API文档&#xff0c;先设置maxTagC…

【Docker】Docker network之bridge、host、none、container以及自定义网络的详细讲解

&#x1f680;欢迎来到本文&#x1f680; &#x1f349;个人简介&#xff1a;陈童学哦&#xff0c;目前学习C/C、算法、Python、Java等方向&#xff0c;一个正在慢慢前行的普通人。 &#x1f3c0;系列专栏&#xff1a;陈童学的日记 &#x1f4a1;其他专栏&#xff1a;CSTL&…

TCP/IP网络江湖初探:物理层的奥秘与传承(物理层上篇-基础与本质)

〇、引言 在这个数字时代,计算机网络如同广袤的江湖,数据在其中畅游,信息传递成为了生活的常态。然而,在这个充满虚拟奇观的网络江湖中,隐藏着一个不容忽视的存在,那就是物理层,这个江湖的基石。就如同江湖中的土地一样,物理层作为计算机网络的基础,承载着数据的最初转…

STM32 CubeMX (uart_IAP串口)简单示例

STM32 CubeMX STM32 CubeMX &#xff08;串口IAP&#xff09; STM32 CubeMXIAP有什么用&#xff1f;整体思路 一、STM32 CubeMX 设置时钟树UART使能UART初始化设置 二、代码部分文件移植![在这里插入图片描述](https://img-blog.csdnimg.cn/0c4841d8328b4169a8833f15fe3d670c.p…