GCANet_Gated context aggregation network for image dehazing and deraining

news2024/9/24 17:15:24

2019、中科大+港科、有代码

Chen D, He M, Fan Q, et al. Gated context aggregation network for image dehazing and deraining[C]//2019 IEEE winter conference on applications of computer vision (WACV). IEEE, 2019: 1375-1383.

GitHub - cddlyf/GCANet: Implementation of “Gated Context Aggregation Network for Image Dehazing and Deraining”

1、Absract

  1. propose an end-to-end gated context aggregation network(?)
  2. use smoothed dilation to help remove the gridding artifacts
  3. use a gated sub-network to fuse the features from different levels

BR: gated?

2、Related Work

  1. DehazeNet:[3] presents an end-to-end network to estimate the intermediate transmission map.
  2. AODNet:[22] reformulates the atmospheric scattering model to predict the final clean image through a light-weight CNN.
  3. [32] creates three different derived input images from the original hazy image and fuses the dehazed results out of these derived inputs.
  4. [42] incorporates the physical model in Equation (1) into the network design and uses two sub-networks to regress the transmission map and atmospheric light respectively.
    [3, 31, 22, 24, 42, 44]、[5]整了视频去雾

BR:记录并不完整,边阅读边整理吧~

3、Method

given a hazy input image, we first encode it into feature maps by the encoder part, then enhance them by aggregating more context information and fusing the features of different levels without downsampling. Specifically, the smoothed dilated convolution and an extra gate sub-network are leveraged. The enhanced feature maps will be finally decoded back to the original image space to get the target haze residue. By adding it onto the input hazy image, we will get the final haze free image.

BR:P3-4 介绍了方法实现的细节,有需要深入学习的时候再补充阅读,当前只用知道每一个结构的效果,为什么这么设计就够了。

3.1 数据集

1、以往方法创建有雾数据集的方式:用现有的有深度信息的数据集+物理退化模型合成有雾数据集

2、[23] 提出了图像有雾的基准数据集:RESIDE——由深度和立体数据集合成的有雾图像对构成的大规模数据集。

3.2 损失函数

使用残差的均方误差(MSE)损失就能达到 SOTA 效果

4、Thinking

1、按作者的说法对去雾去雨都有效,如果是这样的话,它真的很强。

2、文章 AblationStudy 做得不到位,我暂时不能理解,1+3+3+1=8,而它只做了四组。√

3、在深度学习之前,大家对于不适定问题好像都是利用图像先验信息作为恢复约束来处理。我在想选择走深度学习的路线,抛去前期数学/物理原理的路线导向到底是什么,它解决了问题但是否远离真理了呢,是不是让人更懒惰了呢?TBD

4、什么是 smooth dilated convolution?和原本的 dilated convolution 有什么不同?(P3)√

5、gated 的门控如何体现?(P3)√

6、基本理解了作者的整个结构框架和实验逻辑,下一步任务就看代码细节+调整输入数据自行训练吧(20231122)

5、读图环节

在这里插入图片描述
1、网络结构:编码器(三个卷积块)、聚合上下文信息+减少网格伪影(七个平滑膨胀卷积层)、解码器(解卷积+两个卷积块)。

2、gated fusion:以膨胀卷积的低、中、高层特征为输入,输出相应的权重参数进行加权求和。

在这里插入图片描述
1、数据集:the SOTS indoor dataset from RESIDE。

2、这里的定量分析是复现了七个实验方法得出的吗?如果是从原论文中摘取的数据可信度再打折扣。

在这里插入图片描述
1、文章中作者说实验证明使用 instance norm 比 batch norm 更适合,表格中看不出来,也就是正文和实验逻辑不够自洽。

2、进一步理解了 gated fusion 后明白了为什么 ablation analysis 不是 8 组,因为 gated fusion 实现的前提是有 smoothed dilation 层,因此可能性要减少两种。但是为什么没有只用了 smoothed dilation + instance norm 的组?

在这里插入图片描述
1、能进行这个实验很棒,是值得学习借鉴的。它直观的对比同一张图在不同算法中的性能效果,但是既然对比了,如果能将 PSNR、SSIM、耗时情况都写下来,效果更佳。

2、文章没有说算法的耗时情况,只说了利好自己的指标,是一种写作手段,不利于后续研究对比及项目落地,不可取。


Additional

physical corruption model(物理退化模型)

I ( x ) = J ( x ) t ( x ) + A ( 1 − t ( x ) ) \pmb{I}(x)=\pmb{J}(x)t(x)+\pmb{A}(1-t(x)) I(x)=J(x)t(x)+A(1t(x))

I(x):the degraded hazy image 有雾图

J(x) :the target haze-free scene radiance 真值图

A:the global atmospheric light 大气光

t(x):the medium transmission map, which is dependent on the unknown depth information. 介质透射/传输图

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

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

相关文章

延时任务定时发布,基于 Redis 与 DB 实现

目录 1、什么是延时任务,分别可以使用哪些技术实现? 1.2 使用 Redis 和 DB 相结合的思路图以及分析 2、实现添加任务、删除任务、拉取任务 3、实现未来数据的定时更新 4、将数据库中的任务数据,同步到 Redis 中 1、什么是延时任务&#xff…

multiset和multimap(map和set的可重复版)

multiset和multimap multisetmultiset的使用 multimapmultimap的使用 这里有讲解map和set的详细使用: C中的map和set使用详解 multiset multiset的文档介绍 翻译: multiset是按照特定顺序存储元素的容器,其中元素是可以重复的。在multiset…

Vue学习笔记-Object.defineproperty函数

文章目录 前文提要Object.defineProperty作用Object.defineProperty参数使用例图getter,也就是get函数setter,也就是set函数 前文提要 本人仅做个人学习记录,如有错误,请多包涵 Object.defineProperty作用 当在js中声明了一个变…

深入理解JVM 类加载机制

深入理解JVM 类加载机制 虚拟机如何加载Class文件? Class文件中的信息进入到虚拟机后会发生什么变化? 类加载机制就是Java虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机…

成为独立开发者有多难

首先自我介绍:我是一名前端开发工程师,7年的前端开发经验。CSDN 九段刀客_js,vue,ReactNative-CSDN博客,80多万的访问量,1万多的粉丝。 相信80%的程序员的终极梦想都是成为一名独立开发者,不用找工作有自己的产品可以有睡后收入。…

函数与数组

一.函数 1、函数的作用 定义较为复杂的但是需要重复使用的内容,以便再次使用,可以直接调用,节约时间,提高效率。 语句块定义成函数约等于别名,定义函数,再引用函数。 封装的可重复利用的具有特定功能的…

【机器学习 | ARIMA】经典时间序列模型ARIMA定阶最佳实践,确定不来看看?

🤵‍♂️ 个人主页: AI_magician 📡主页地址: 作者简介:CSDN内容合伙人,全栈领域优质创作者。 👨‍💻景愿:旨在于能和更多的热爱计算机的伙伴一起成长!!&…

宣传技能培训1——《新闻摄影技巧》

新闻摄影技巧 写在最前面摘要 构图与拍摄角度景别人物表情与叙事远景与特写 构图与拍摄角度案例 主体、陪体、前景、背景强调主体利用前景和背景层次感的创造 探索新闻摄影中的构图技巧基本构图技巧构图技巧的应用实例实例分析1. 黄金分割和九宫格2. 三角型构图3. 引导线构图4.…

JSP过滤器和监听器

什么是过滤器 Servlet过滤器与Servlet十分相似,但它具有拦截客户端(浏览器)请求的功能,Servlet过滤器可以改变请求中的内容,来满足实际开发中的需要。 对于程序开发人员而言,过滤器实质就是在Web应用服务器…

Matrix

Matrix 如下是四种变换对应的控制参数: Rect 常用的一个“绘画相关的工具类”,常用来描述长方形/正方形,他只有4个属性: public int left; public int top; public int right; public int bottom; 这4个属性描述着这一个“方块…

IAR为恩智浦S32M2提供全面支持,提升电机控制能力

IAR Embedded Workbench for Arm已全面支持恩智浦最新的S32系列,可加速软件定义汽车的车身和舒适性应用的开发 瑞典乌普萨拉,2023年11月22日 – 嵌入式开发软件和服务的全球领导者IAR现已全面支持恩智浦半导体(NXP Semiconductors&#xff0…

数字化时代,数据资产交易困境的治理

数据作为五大生产要素之一,正与行业应用深度结合,成为推动产业、企业数字化转型升级的重要驱动力量。数据作为基础的战略性资源和新的生产要素,如果不能充分流通和交易,就丧失了价值和作用。因此,数据资产的交易关系着…

8.HTML中表单标签

8. 表单标签 8.1 为什么需要表单 使用表单的目的是为了收集用户信息, 在我们网页中,我们也需要跟用户进行交互,收集用户资料,此时就需要表单 8.2 表单的组成 在HTML中,一个完整的表单通常由表单域,表单控件…

微信小程序 - 云开发

1、小程序云开发 1.1、云开发简介 小程序云开发是微信团队联合腾讯云推出的专业的小程序开发服务。开发者可以使用云开发快速开发小程序、小游戏、公众号网页等,并且原生打通微信开放能力。开发者无需搭建服务器,可免鉴权直接使用平台提供的API进行业务…

港口大型设备状态监测及预测性维护策略

在现代港口运营中,大型设备的正常运行对于保障港口作业的高效性至关重要。为了实现设备的可靠性和持续性,港口管理者需要采取一系列状态监测和预测性维护策略。 推进自动化和智能化是提高港口大型设备状态监测和维护管理效率的重要途径。通过应用先进的…

JavaWeb——感谢尚硅谷官方文档

JavaWeb——感谢尚硅谷官方文档 XML一、xml简介二、xml的语法1、文档申明2、xml注释3、xml元素4、xml属性5、xml语法规则 三、xml解析技术1、使用dom4j解析xml Tomcat一、JavaWeb的概念二、web资源的分类三、常见的web服务器四、Tomcat的使用1、安装2、Tomcat的目录介绍3 启动T…

【Python】np.unique() 介绍与使用

简述 numpy.unique:用于去除数组中重复元素,并从小到大排序(找到唯一元素并排序)。 def unique(ar, return_indexFalse, return_inverseFalse,return_countsFalse, axisNone):ar: 这是输入的数组或类数组对象。return_index: 如…

6.1.webrc媒体协商

那今天呢?我们来看一下y8 rtc的媒体协商,那实际上在我们之前的课程中呢?我已经向你介绍过y8 rtc的媒体协商了。只不过呢,角度是不一样的,在之前介绍外边tc媒体协商的时候呢,我们是从应用的角度来看。那web …

【Vue】插值表达式

作用&#xff1a;利用表达式进行插值渲染 语法&#xff1a;{ { 表达式 } } 目录 案例一&#xff1a; 案例二&#xff1a; 案例三&#xff1a; ​编辑 注意&#xff1a; 案例一&#xff1a; <!DOCTYPE html> <html lang"en"> <head><me…

基于SSM的校园奶茶点单管理系统

基于SSM的校园奶茶点单管理系统的设计与实现~ 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringMyBatisSpringMVC工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 主页 奶茶列表 登录界面 管理员界面 用户界面 摘要 随着社会的发展和科技的进…