计算机视觉 day 93 学习像素级膨胀滤波的高效率单图像去噪

news2024/11/24 5:43:16

学习像素级膨胀滤波的高效率单图像去噪

  • 1 Introduction
  • 3 Methodology
    • 3.1 逐像素图像滤波解调
    • 3.2 可学习像素级膨胀滤波
      • Kernel prediction network(核预测网络)
      • Multi-dilated image filtering and fusion(多扩张图像滤波与融合)
    • 3.3 RainMix:真实世界与合成数据的桥梁
  • 4 Experiments
    • 4.1 Setups
    • 4.2 Rain100H&1400数据集对比
    • 4.3 真实SPA雨数据集对比
    • 4.4 真实雨滴数据集比较
    • 4.5 消融研究
  • 5 Conclusions

1 Introduction

现有的方法往往对雨模型做了具体的假设,难以涵盖现实世界中多种多样的情况,必须采用复杂的优化或逐步细化,然而,对于许多效率关键的应用来说,这严重影响了这些方法的效率和有效性。

为了填补这一空白,在本文中,我们将单图像的解题视为一般的图像增强问题,并最初提出了一种无模型的解题方法,即EfficientDeRain。它能够在10毫秒(即平均约6毫秒)内处理下雨的图像,比最先进的方法(即RCDNet)快80多倍,同时实现类似的去雨效果。

我们首先提出了一种新的像素级膨胀滤波方法,该方法利用核预测网络中像素级的核对雨天图像进行滤波,从而有效地预测出每个像素对应的多尺度核。

然后,为了消除合成数据与真实数据之间的差距,我们进一步提出了一种有效的数据增强方法(即RainMix),该方法有助于训练网络进行真实雨图像处理。我们对合成和真实的雨数据集进行了综合评估,以证明我们的方法的有效性和效率。

我们在[https:// github.com/tsingqguo/efficientderain.git](https:// github.com/tsingqguo/efficientderain.git)中发布了EfficientDeRain。

图1:

顶部:具有挑战性的Rain100H数据集上的比较结果(即PSNR vs. Time和SSIM vs. Time)。

下部:一个使用EfDeRain的例子,不使用RainMix的EfDeRain和最先进的RCDNet (Wang et al. 2020a)来处理真实的雨天图像。请注意,所有比较方法的时间成本都是在同一台电脑上逐一计算的。image-20230517144607335

我们在合成和真实的雨数据集上展示了我们的方法的优势,实现了高性能和高效率的脱除。如图1所示,我们的方法(即EfDeRain)运行速度大约比最先进的方法RCDNet (Wang et al. 2020a)快88倍,PSNR和SSIM性能相似。此外,在配备了RainMix后,EfDeRain可以在真实的雨天图像上取得比RCDNet更好的可视化效果。

3 Methodology

3.1 逐像素图像滤波解调

在本部分中,我们提出了一种基于图像滤波的无模型解推理方法。一般来说,雨可以被认为是一种退化,可能会导致遮挡、雾、运动模糊等效果。因此,采用图像滤波方法对其进行处理是合理的,可以有效地解决各种退化问题。具体来说,我们通过像素级滤波器处理输入的雨天图像Ir∈RH×W 1image-20230517145342786

其中ˆI∈RH×W是估计得到的图像,o表示逐像素滤波操作,每个像素都由它的独占核处理,K∈RH×W×K2包含所有像素的核。具体来说,在对Ir的第p个像素进行解算时,我们有它的专属核,即k的第p个位置的向量,对其进行整形,记为Kp∈RK×K。我们用p作为像素的2D坐标。然后,我们可以预测出被去除的像素image-20230517145535315其中t的取值范围为(−K−1 2,−K−1 2)~ (K−1 2,K−1 2)。

接下来思考两个问题:

①如何有效、高效地估计空间变量、尺度变量和语义感知内核。

②如何训练一个强大的脱轨DNN,用合成数据来弥补与真实去雨的差距。

解答:

①多膨胀核预测网络,3.2节。

②简单而有效的增雨方法,记作RainMix,3.3节。

3.2 可学习像素级膨胀滤波

Kernel prediction network(核预测网络)

我们建议以下雨的图像作为输入,估计用于脱除的像素级核Kimage-20230517151802122

其中KPN(·)表示类unet网络,其结构如图2所示。

image-20230517151900973

Multi-dilated image filtering and fusion(多扩张图像滤波与融合)

为了使我们的方法能够在不损害效率的情况下处理多尺度的降雨条纹,我们通过扩张卷积的思想将每个预测核扩展到三个尺度(Yu and Koltun 2016)。

对于卷积层,我们建议将式1中的像素级滤波扩展到像素级膨胀滤波(Yu and Koltun 2016)image-20230517152023636

式中l为控制同一滤波器适用范围的膨胀系数。在实际应用中,我们考虑了4个量表,即l = 1,2,3,4。通过Eq. 4,我们可以得到四张解析图像,ˆI1,ˆI2,ˆI3,ˆI4。然后,我们使用大小为3 × 3的卷积层对这四幅图像进行融合,得到最终的输出。

3.3 RainMix:真实世界与合成数据的桥梁

image-20230517151730924

我们在算法1中展示了基于rainmix的学习算法。

4 Experiments

4.1 Setups

**数据集。**为了全面验证和评价我们的方法,我们对4个流行的数据集进行了比较和分析实验,包括Rain100H (Yang et al. 2017, 2019)、Rain1400 (Fu et al. 2017)合成数据集、最近提出的SPA真实降雨数据集(Wang et al. 2019)和真实Raindrop数据集(Qian et al. 2018)。

**度量。**我们采用常用的峰值信噪比(PSNR)和结构相似度(SSIM)作为所有数据集的定量评价指标。一般来说,PSNR和SSIM越大,脱模效果越好。

Baselines。9+5 共14个去雨方法。需要注意的是,所有比较方法的时间成本都是在同一台PC上,使用Intel Xeon CPU (E5-1650)和NVIDIA Quadro P6000 GPU逐一计算的。

4.2 Rain100H&1400数据集对比

image-20230517150620777

image-20230517150637234

image-20230517150645539

在Rain100H和Rain1400数据集上,我们将我们的方法与图4中的9个基线方法进行了比较。一般来说,我们的方法,即EfDeRain,在两个数据集上使用顶级方法获得可比的PSNR或SSIM时,获得了最低的时间成本。

image-20230517150721307

我们进一步将EfDeRain的可视化结果与目前最先进的基线方法RCDNet和PReNet进行比较,如图5所示

4.3 真实SPA雨数据集对比

我们进一步将我们的方法与SPA数据集上的8种基线方法进行比较(Wang et al. 2019),其中雨图像是真实的,它的地面真相是通过人类标记和多帧融合获得的。image-20230517150917155如图7所示,我们的方法与最优方法RCDNet取得了几乎相同的PSNR和SSIM,并且在运行效率比RCDNet高出71倍以上的情况下优于其他所有基线。

image-20230517151015273我们还直观地将我们的方法与图6中的RCDNet和SPANet进行了比较。结果表明,该方法能够较好地处理不同模式下的雨迹,并取得了比RCDNet和SPANet更好的可视化效果,其中红色箭头显示了与另外两种模型的主要区别。

4.4 真实雨滴数据集比较

除了在雨天条纹图像数据集上,我们还在去雨滴任务上比较了我们的方法,以显示我们的方法的泛化能力。我们培养了我们方法的能力。我们在Raindrop数据集上训练我们的网络(Qian et al. 2018),并将其与6种最先进的基线方法进行比较。

特别是,DeRaindrop方法(Qian et al. 2018)是专门针对这个问题设计的,其中雨滴的区域是由一个注意循环网络感知的。我们的方法在不改变任何架构或超参数的情况下,与竞争的SSIM相比DeRaindrop获得了第二好的结果,并优于所有其他的DeRaindrop方法,证明了我们的方法的有效性和通用性。

4.5 消融研究

我们通过图8中的Rain100H可视化结果进一步验证了我们的贡献的优势

image-20230517151307763

此外,我们对图9中的SPA数据集进行可视化比较,以验证我们的RainMix的有效性。image-20230517151451318因此,我们的RainMix增强了我们的方法在去除真实的雨迹的能力,即使雨的模式非常多样化。在所有的情况下,如果我们不使用RainMix,我们观察到总会存在一些无法处理的大雨痕迹,如图中红色箭头所示(红色箭头显示了两个版本之间的主要区别。黄色箭头表示没有被人类标记的雨滴也被我们的方法去除)。

5 Conclusions

在本文中,我们提出了一种新的无模型脱模方法,称为EfficientDeRain。我们的方法不仅可以实现显著的高性能,而且运行效率比最先进的方法超过80倍。首先,我们提出并设计了一种新颖的像素级膨胀滤波方法,其中每个像素由脱机训练的核预测网络估计的多尺度核进行滤波。其次,我们提出了一种简单而有效的训练网络的数据增强方法,即RainMix,弥合了合成数据和真实数据之间的差距。最后,我们在流行的和具有挑战性的综合数据集Rain100H和Rain1400,以及真实世界的数据集SPA和Raindrop上进行了大规模的评估,全面验证了我们的方法在效率和脱除质量方面的优势。

未来,我们将研究脱轨对其他计算机视觉任务的影响,例如,目标分割(Guo et al. 2018, 2017c)和目标跟踪(Guo et al. 2020c,a, 2017a,b),使用最先进的DNN测试工作(Xie et al. 2019a;Du等人2019年;Xie et al. 2019b;Ma等。2018a,b, 2019)。我们也想从对抗式攻击方法的角度来研究单图像,例如,(Guo et al. 2020b;Wang et al. 2020b;Cheng et al. 2020a;Gao等人2020年;Cheng et al. 2020b;田等人,2020年)。

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

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

相关文章

基础篇007. 串行通信(一)--阻塞方式发送接收

目录 1. 串行通信 1.1 串行通信概述 1.2 串行通信协议 2. 实验任务 3. 硬件原理 4. 利用STM32CubeMX创建MDK工程 4.1 STM32CubeMX工程创建 4.2 配置调试方式 4.4 配置GPIO 4.5 配置串口参数 4.6 配置时钟 4.7 项目配置: 4.8 串口初始化程序说明 5. 串行…

机器学习笔记 - 利用自动编码器神经网络构建图像去噪器

一、概述 传统的图像噪声去除主要是基于各种滤波器,但它们不是特定于数据的,因此可能会损失很多图像的细节,或者噪声去除的效果不是很理想。基于神经网络的自动编码器可以用于学习数据集的噪声去除滤波器。 关于自动编码器的介绍,可以参考下面的链接。https://skydance.blo…

Windows Server 2019 中文版、英文版下载 (updated May 2023)

Windows Server 2019 Version 1809,2023 年 5 月更新 请访问原文链接:https://sysin.org/blog/windows-server-2019/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org 本站将不定期发布官方原版风格月度更…

nest笔记十一:一个完整的nestjs示例工程(upgrade)

概述 链接:upgrade 相关文章列表 nestjs系列笔记 示例工程说明 这个工程是我使用nestjs多个项目后,总结出来的模板。这是一个完整的工程,使用了yaml做为配置,使用了log4js和redis和typeorm,sawgger,自…

ChatGPT热门资料汇总,绝对不割韭菜

前言 ChatGPT 的出现,AI圈子一下就热闹起来了,各个公司争先恐后地出自己的产品,百度的文心一言、谷歌的Bard、阿里的通义千问等等,有很多人借此机会已经赚到百万,很多卖课搞培训的都是互为合伙人,大家都懂…

243亿美元营收背后,百年龙头的汽车生态砝码

伴随着更为显著的全球汽车新能源化、智能化趋势,汽车产业必将迎来更多新机遇。 一方面,主机厂为保持竞争优势、适应客户多元化需求,不断加快汽车更迭速度,为汽车产业带来了新的市场机遇。另一方面,随着人工智能、云计…

2023企业数智化财务创新峰会 · 成都站圆满举办!

5月17日,「智能会计 价值财务」2023企业数智化财务创新峰会巡回来至天府,川大商学院权威教授领衔分享、大型企业财务先锋详解财务数智化领先实践、毕马威资深专家现场解读财务创新趋势与典型案例,与线上线下数千人一同见证“智能会计”新时代…

网络请求--http请求学习详解

写在前面: 文章目录 http简介http报文格式请求样例响应样例 起始头格式 常见请求方法GETPOSTRESTful风格 头部字段Content-Type Https http简介 http:超文本传输协议 是一种无状态,无连接,以应答式的协议,可使用扩展…

力扣sql中等篇练习(二十三)

力扣sql中等篇练习(二十三) 1 统计实验的数量 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 # 有可能数据本身就不全,就需要自行创建临时表 WITH T as (SELECT Android p1,Reading e1UNIONSELECT Android p1,Sports e1UNIONSELECT Android p1,Prog…

最简单配置jenkins容器使用宿主机的docker方法

构建镜像和发布镜像到harbor都需要使用到docker命令。而在Jenkins容器内部安装Docker官方推荐直接采用宿主机带的Docker即可 设置Jenkins容器使用宿主机Docker 设置宿主机docker.sock权限 chown root:root /var/run/docker.sock chmod orw /var/run/docker.sock 添加数据卷 v…

215.数组中第 k 个最大的元素。

解题思路: 利用快排的思想,不断地将数组分成若干部分,缩小查找范围,最终找到第 k 大的元素。 1、首先,对数组进行快速排序,使得数组从大到小排序,然后返回排序后的第 k 个元素即可。 2、在快排…

关于window.print打印分页功能

平常window.print分页一般打印时用到page-break-after:always; 打印的样式设置在 <style type"text/css" media"print"></style>进行设置 但现在我想动态打印分页&#xff0c;即内容一页时打印一页&#xff0c;内容两页时打印两页。。。 现…

HBase 写入数据(Scala代码)

代码如下》》 package Flink_HBase_APLimport org.apache.hadoop.hbase.{HBaseConfiguration, TableName} import org.apache.hadoop.hbase.client.{ConnectionFactory, Put} import org.apache.hadoop.hbase.util.Bytesobject this_one {def main(args: Array[String]): Unit…

开源即时通讯IM框架MobileIMSDK的Uniapp端开发快速入门

► 相关链接&#xff1a; ① MobileIMSDK-Uniapp端的详细介绍② MobileIMSDK-Uniapp端的开发手册new&#xff08;* 精编PDF版&#xff09; 一、理论知识准备 您需要对Uniapp和Vue开发有所了解&#xff1a; 1&#xff09;Uniapp 官方入门教程2&#xff09;可能是最好的 unia…

MyBatis Plus 拦截器实现数据权限控制

一、介绍 上篇文章介绍的MyBatis Plus 插件实际上就是用拦截器实现的&#xff0c;MyBatis Plus拦截器对MyBatis的拦截器进行了包装处理&#xff0c;操作起来更加方便 二、自定义拦截器 2.1、InnerInterceptor MyBatis Plus提供的InnerInterceptor接口提供了如下方法&#x…

SpringCloud 集成 Eureka Server

SpringCloud 集成 Eureka Server 1 pom.xml2 application.yml3 appliction.java4 启动 Eureka的优点&#xff1a; 简单易用&#xff1a;Eureka设计简单&#xff0c;容易上手和部署。 高可用性&#xff1a;Eureka支持高可用性配置&#xff0c;通过使用多个Eureka服务器实例来提…

IEEE Robotics and Automation Letters(RA-L)与ICRA投稿

一 总体感受 RAL不愧未短平快的论文&#xff0c;从接收论文、送审和复审都相当快&#xff0c;我的两个多月出最终接收结果&#xff0c;期刊官网规定6个月内出最终结果。作为现在IEEE主推的短文&#xff0c;限制在8页以内&#xff0c;在6页以上时超页费为175刀/页&#xff0c;目…

平台使用篇 | 批处理(bat)脚本使用教程(二)

导读 BAT脚本提供了一种快速且有效的自动化方式&#xff0c;使用户能够更轻松地处理大量的任务&#xff0c;并且可以根据需要自由地调整和修改脚本。本讲简要介绍了批处理技术及其常用命令。本篇教程主要对批处理技术的语言特点和编程思路进行重点讲解。 RflySim平台更多学习资…

Flutter-Drawer使用

drawer Drawer是Android开发中Material风格常用的设计&#xff0c;就是我们常说的“抽屉”效果&#xff0c;一个从侧边栏拉出来的导航面板。 在Flutter使用Material风格&#xff0c;最为常用的组件之一就是Scaffold了&#xff1b;Scaffold的drawer属性是一个Widget类型的组件&…

Red Hat重置root密码

目录 前言 1、使用rd.break参数重置root密码 2、使用安装盘重置root密码 前言 我们有时会忘记linux系统的root密码&#xff0c;有的不会重置密码只能重置系统了&#xff0c;下面介绍两种重置root密码的方法 1、使用rd.break参数重置root密码 1、启动系统&#xff0c;并在…