雨天美图大法:单图去雨的RESCAN新方式

简介: 其实在过去十年中,图像去除已经有了不少有趣的研究。现有方法可以分为两类,包括基于视频的方法和单图去除方法。基于视频的方法可以利用视频中图片的关系框架,因此相对容易;相对而言,单图像去除更具挑战性。

最近一周的南北方降雨量可能不相上下,不仅雨量大,而且每场雨都在瓢泼。

南方台风中的画风是这样的

image

而北京进入“看海”节奏,根本不需要台风

image

雨滴会严重降低能见度,除了给日常出行造成各种不便,也导致许多当前的计算机视觉算法都无法工作。特别是在大雨中,来自各个方向的雨水积累和使背景场景朦胧,严重影响比如视频监控,物体检测,以及在自动驾驶跟踪等方向的准确性。

因此,除去雨水并从雨水图像中恢复背景,是一项重要的任务。

其实在过去十年中,图像去除已经有了不少有趣的研究。

现有方法可以分为两类,包括基于视频的方法和单图去除方法。基于视频的方法可以利用视频中图片的关系框架,因此相对容易;相对而言,单图像去除更具挑战性。

在今年的雨季,来自北京大学和上海交通大学的几位研究者,针对“单图去雨”任务进行了研究,他们基于深度卷积和循环神经网络,建立了一种新颖的神经网络架构,并获得了不错的结果。

这一成果在ArXiv上发表,并已被ECCV(欧洲计算机视觉国际会议,计算机视觉三大会议之一)采纳。

除了论文成果,里边对之前各种关于单图去雨的历史研究论述总结颇为详细,在今天读来是个很应景的话题,感兴趣的同学可以自行下载

image


大数据文摘微信公众号后台回复“下雨”获得本论文哟~~~

我们对论文的精华编译如下:

对于单图像去除,传统方法,例如判别稀疏编码、低秩表示以及高斯混合模型,都可以应用于这项任务,并且有不错的表现。最近,基于深度学习的消除方法,由于其强大的特征表示能力而受到广泛关注。但是所有这些相关方法仍有很多空间需要改进。

现有方法主要有两个局限。

一方面,根据之前的研究,空间背景信息对于雨点的消除非常有用。然而,许多当前的方法基于图像补丁去除雨条纹,忽略了大区域的背景信息。

另一方面,由于大雨中的雨滴会呈现各种各样的方向和形状,它们会以不同的方式让背景模糊不清。

分解整体,通过不同的阶段去除雨水条纹,是一种常见的方法,这种方法可以将问题分解为多个阶段,以便我们可以迭代地去除雨条纹。然而,现有方法只对每个阶段独立除雨,而不考虑它们的相关性。

我们提出了一种新颖的深度网络架构,基于深度卷积和递归神经网络对单张图像的雨水进行去除。

在大雨中,雨滴有各种各样的方向和形状,由于雨条纹层各自重叠,在一个阶段去除雨水并不容易。所以我们进一步分解雨水为多个阶段。利用循环神经网络以保留前几个阶段的有用信息,有利于后期去雨。我们在合成和真实数据集上进行了大量实验,所有评估指标的表现都优于先前的方法。

image

在解决上述两个局限性后,我们提出了一种新颖的深层网络,从而用于单个图像的除雨。例如上图,体现了逐步消除雨条纹的阶段。

在每个阶段,我们都使用有多个卷积层的集成网络对背景图像的雨水条纹进行消除。由于雨条纹有各种方向和形状,我们让每个网络层对应一种雨条纹,并根据其在每个卷积层中的相互依赖性为其赋值。

受益于指数级增加的卷积层,这一神经网络接受域大且深度低,可以获取更多的背景图信息。我们接下来利用三种不同的循环神经网络(RNN),进一步最大限度的利用之前几个阶段搜集到的背景信息,来指导后期的雨滴去除。

我们将这一方法命名为REcurrent SE Context Aggregation Net(RESCAN)。

本文的主要贡献如下:
1、对于单图除雨提出了一种新颖的集成深度网络。

2、据我们所知,这是首篇考虑不同阶段除雨相关性的论文。通过RNN体系结构的三种不同循环单元,可以结合前几个阶段的来指导后期阶段。这一神经网络适用于复杂的下雨环境。

3、与最先端的方法相比,我们的深度网络在不同数据集上展现了更卓越的性能。

原文发布时间为:2018-07-24
本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“大数据文摘”。

相关文章
|
安全 Java Shell
Nacos服务自动关闭问题汇总
Nacos服务自动关闭问题汇总
1696 0
|
监控 网络协议 算法
QUIC技术创新 让视频和图片分发再提速
在1月12日的「阿里云CDN产品发布会-新一代传输协议QUIC让CDN更快一步」之上,阿里云技术专家淮叶分享了QUIC技术及其应用落地实践,内容包含:QUIC协议介绍、相比TCP有哪些优势、应用场景以及技术落地实践中的协议库选择,QUIC协议软件实现、落地技术架构和性能优化。
2733 67
QUIC技术创新 让视频和图片分发再提速
|
Java
IDEA代码生成插件CodeMaker
## 前言 Java 开发过程中经常会遇到编写重复代码的事情,例如说:编写领域类和持久类的时候,大部分时候它们的变量名称,类型是一样的,在编写领域类的时候常常要重复写类似的代码。类似的问题太多,却没找到可以支持自定义代码模板的插件,只能自己动手,丰衣足食,开发了一个 IDEA 的代码生成插件,通过 Velocity 支持自定义代码模板来生成代码。
5246 0
|
监控 JavaScript 前端开发
Postman 如何定时 自动化运行Collections?
大家好,我是阿萨。上一期的[Postman 提供的Javascript 对象有哪些?]我们学习了Postman 提供的javascript 对象 方便我们写脚本用的。 作为一个API 测试工具,自动化运行是必须的,而且要能做到定时,周期的运行自动化脚本。
2142 0
Postman 如何定时 自动化运行Collections?
|
JSON JavaScript 前端开发
javascript 模态框实现 -- HTML dialog 元素
在前端开发中模态框(对话框、弹出框)是很常见的场景,这篇文章介绍 javascript 多种实现模态框的方式之一,使用原生的 HTML dialog 元素实现。
3572 1
javascript 模态框实现 -- HTML dialog 元素
|
Linux 数据安全/隐私保护 开发者
使用VM虚拟机安装CentOS-stream系统
使用VM虚拟机安装CentOS-stream系统
1327 0
使用VM虚拟机安装CentOS-stream系统
|
传感器 编解码 物联网
NB物联网之天翼物联(1)——电信NB平台到底有什么
NB物联网之天翼物联(1)——电信NB平台到底有什么
NB物联网之天翼物联(1)——电信NB平台到底有什么
|
机器学习/深度学习 算法 数据挖掘
机器学习-决策树(ID3、C4.5、CART)
决策树是一个非常常见并且优秀的机器学习算法,它易于理解、可解释性强,其可作为分类算法,也可用于回归模型。
623 0
机器学习-决策树(ID3、C4.5、CART)
|
消息中间件 jstorm 分布式计算
Storm vs. Kafka Streams vs. Spark Streaming vs. Flink ,流式处理框架一网打尽!2
Storm vs. Kafka Streams vs. Spark Streaming vs. Flink ,流式处理框架一网打尽!2
835 0
Storm vs. Kafka Streams vs. Spark Streaming vs. Flink ,流式处理框架一网打尽!2
|
XML SQL JSON
接口自动化测试,一键快速校验接口返回值全部字段
在日常开展自动化测试工作时,为了保证接口测试的有效性,少不了要对接口返回的响应字段进行校验、断言等操作。当接口返回的字段数量本身就很少时,接口断言操作一般都很容易就能实现,但当接口的返回字段特别多,结构特别复杂时,例如响应字段数量达到了成百上千时,如何快速实现全部返回字段的校验?
829 0
接口自动化测试,一键快速校验接口返回值全部字段

热门文章

最新文章