致敬何凯明的暗通道去雾算法 | NAS-Net: 基于非对齐监督的图像去雾框架

本文涉及的产品
文件存储 NAS,50GB 3个月
简介: 致敬何凯明的暗通道去雾算法 | NAS-Net: 基于非对齐监督的图像去雾框架

640.png

Title: Non-aligned supervision for Real Image Dehazing

Paper: https://arxiv.org/pdf/2303.04940.pdf

Code: https://github.com/hello2377/NSDNet

导读

今天介绍的这篇论文是一篇关于图像去雾相关的工作,本质上应该属于Low-Level领域的范畴。相比于图像分类、语义分割和目标检测等这类研究广泛的内容而言,Dehazing相对来说还是算比较小众的领域,严可能大多数人听过该领域的唯一印象是关于何凯明的暗通道去雾算法(CVPR'2009 Best Paper)。

众所周知,模糊图像对计算机视觉应用,诸如目标检测、语义分割、深度估计、场景解析等影响还是蛮大的,因此研究如何从模糊输入中恢复清晰图像的图像去雾算法整体来说还是一个非常有意义和挑战性的工作。本文主要基于图像去雾任务的几大挑战,提出了一个由dehazing, airlighttransmission 所组成的监督框架以及一个在农村和城市地区使用手机捕获的新模糊数据集Phone-Hazy

由于今天是我们第一次介绍该研究领域,下面笔者将简单梳理下图像去雾的相关进展研究并详细的介绍下本文方法。

图像去雾

图像去雾领域同计算机视觉其它领域一样,也是由传统算法过渡到现如今的基于深度学习的方法。因此,我们可以简单划分为两部分,即基于先验的图像去雾算法和基于深度学习的图像去雾算法。

基于先验的图像去雾算法

基于先验的图像去雾算法同样可根据不同的原理划分为两类,即基于图像增强图像复原的去雾算法。

图像增强

基于图像增强的去雾算法的核心思想是利用一系列图像增强技术,通过对雾图像进行预处理即估计雾的密度(如颜色平衡和白平衡操作等)、通过计算场景中的深度来估计雾的传输因子或者通过一些背景估计算法来估计背景信息,从而还原出清晰的图像。例如FVR[1]算法本身是利用自适应直方图均衡化技术和雾的传输因子来增强原始图像的对比度和清晰度,以去除雾的影响。

图像复原

基于图像复原的去雾算法大都是基于大气退化模型。这是因为大气对图像的影响是主要的雾化因素,导致图像的对比度降低、色彩失真和细节模糊。因此,理解大气对图像的影响,建立适当的大气退化模型,是进行图像去雾的关键。基于大气退化模型的去雾算法通常假设图像中的每个像素都受到相同的大气光影响,且大气的光传播是通过透射率来建模的。这种模型可以根据大气光的强度、大气密度、摄像机高度和视场等参数进行调整,以便更好地恢复出原始图像。

此类方法的典型代表作当属凯明的暗通道图像去雾算法DCP[2]。其通过观察室外自然图像的暗通道,发现在非雾区域的像素在暗通道上的值通常很低几乎接近于0,而雾区域的像素在暗通道上的值通常比较高,因此可以根据这个先验知识来估计雾的密度和分布,

相比于其他基于物理模型的去雾算法,暗通道先验去雾算法的优点在于不需要估计雾的粒子大小和密度等物理参数,只需要计算暗通道和估计全局大气光,因此计算速度非常快。同时,该算法对一些特殊情况,如弱雾、室内等,也有较好的去雾效果。

关于DCP的详细介绍可参考这篇博客:http://qianjiye.de/2015/09/haze-removal-kaiming

基于深度学习的去雾算法

上面我们介绍了基于先验的图像去雾算法,此类方法大都是基于经验观察并人为设定先验。虽然这些方法在一般情况下很有效,但在复杂的现实场景中,特别是在天空区域,DCP因其依赖于特定场景和假设的先验而表现不佳,可能会产生次优的结果。除此之外,一些基于对比度最大化的[3]、基于颜色衰减先验的[4]或者是基于非局部先验的[5],本质上都是一样,极度依赖于专家经验和特定场景。

而基于学习的方法则是使用深度神经网络来学习和估计大气散射模型的参数(即无限空气光、透射图和无雾)或雾霾和清晰图像之间的映射。估计参数一般可直接通过CNNs或者GANs来完成,大多数方法主要采用严重依赖标签数据的监督学习方法,并且主要在人工或算法合成的模糊图像上进行训练。如此一来便会由于域间隙和缺乏真正的模糊/清晰图像对而致使去雾效果并不理想。

另一方面,虽然基于CycleGAN的域自适应(Domain Apation)和不成对的去雾模型在一定程度上能够缓解此类情况,但由于样本分布的差异,这些方法在现实场景中仍然未能获得良好的去雾效果。与域自适应和不成对的监督相比,本文方法通过在成对的真实模糊数据集上进行训练并从未对齐的参考图像中提取有效特征,其性能表现优于先前的去雾模型。此外,作者重新定义了非均匀映射并提出了一种新颖的网络mvSA,可以在现实场景中更准确地估计infinite airlight.

在图像去雾领域中,"infinite airlight"(意指全局大气光 )是指在雾天或大气条件不佳的情况下,由于光线在传播过程中与大气中的水分子或其他微粒发生相互作用,导致图像中出现的一种明亮、模糊和低对比度的效果。这种效果通常是由于大气光的存在而引起的,大气光被认为是一种光线在穿过大气时散射和吸收的结果。

方法

上图为本文所提出非对齐的监督框架图,其基于经典的大气散射模型(atmospheric scattering model)所提出:

如图所示,这是一个由去雾、全局大气光和基于大气散射模型的传输网络组成。其中一个比较关键的想法是使用非对齐图像来监督去雾网络。该框架使用允许与模糊图像不完全对齐的清晰图像用于训练。通过放宽严格的对齐约束,在更宽松的条件下从同一场景收集未对齐的图像对变得更加容易。

首先,本文探索了一种非对齐的监督设置,以使用清晰且非对齐的参考图像来训练去雾网络。其次,为了更有效地对模糊图像中存在的  进行建模,本文提出了均值和方差自注意力(mean and variance Self-Attention, mvSA)网络。通过结合暗通道先验(DCP)和模糊图像,mvSA 能够通过计算它们的平均值并预测由于波长和散射粒子的影响而引起的变化来突出模糊特征。此外,与DCP和自注意力机制相比,本文所提出的mvSA网络更准确地限制了全局大气光的范围。

去雾网络

去雾网络是将输入的有雾图像直接生成无雾图像。如图2所示,我们使用DCP方法计算出一个粗糙的无雾图像,然后将其放入去雾网络。它的架构是一个共享的生成器网络。有关详细信息,请参阅CycleGAN的生成器。

传输网络

传输网络是通过使用图2中的输入模糊图像的通道注意网络来生成三通道传输图。其体系结构是编码器-解码器结构,具有跨特征尺度的跳跃连接。最终的传输图可以通过引导滤波器获得。

损失函数

整体的损失函数如下:

此处, 和  分别为对应的多尺度参考损失(multi-scale reference loss)和重建损失(reconstruction loss)。

其中,多尺度参考损失主要结合了对抗损失和上下文损失,充分利用多尺度上下文信息来更好的优化去雾网络。另一方面,重建损失不仅可以监督全局大气光、传输和去雾网络的训练,还可以保持去雾结果的特征独立于未对齐的参考图像。

实验

Phone-hazy dataset

Non-aligned image pairs in real-world scenes

Compare with the latest SOTA methods

qualitative resultsquantitative results

More visualization results of NSDNet

总结

本文使用非对齐监督的真实世界图像提出了一种新颖有效的去雾框架。该框架利用多尺度参考损失将去雾网络的预测与清晰且未对齐的参考图像进行比较。它可以从现实环境中收集模糊/清晰的图像对,即使它们没有完全对齐。此外,所提框架包括一个均值和方差自注意力网络,该网络在改进空气光均值和变化的估计之前使用暗通道。最终,实验结果表明,所提方法对真实世界图像进行去雾方面优于最先进的方法。

相关实践学习
基于ECS和NAS搭建个人网盘
本场景主要介绍如何基于ECS和NAS快速搭建个人网盘。
阿里云文件存储 NAS 使用教程
阿里云文件存储(Network Attached Storage,简称NAS)是面向阿里云ECS实例、HPC和Docker的文件存储服务,提供标准的文件访问协议,用户无需对现有应用做任何修改,即可使用具备无限容量及性能扩展、单一命名空间、多共享、高可靠和高可用等特性的分布式文件系统。 产品详情:https://www.aliyun.com/product/nas
目录
相关文章
|
16天前
|
设计模式 开发框架 JavaScript
基于.NET8 + Vue/UniApp前后端分离的快速开发框架,开箱即用!
基于.NET8 + Vue/UniApp前后端分离的快速开发框架,开箱即用!
|
2月前
|
XML JSON API
ServiceStack:不仅仅是一个高性能Web API和微服务框架,更是一站式解决方案——深入解析其多协议支持及简便开发流程,带您体验前所未有的.NET开发效率革命
【10月更文挑战第9天】ServiceStack 是一个高性能的 Web API 和微服务框架,支持 JSON、XML、CSV 等多种数据格式。它简化了 .NET 应用的开发流程,提供了直观的 RESTful 服务构建方式。ServiceStack 支持高并发请求和复杂业务逻辑,安装简单,通过 NuGet 包管理器即可快速集成。示例代码展示了如何创建一个返回当前日期的简单服务,包括定义请求和响应 DTO、实现服务逻辑、配置路由和宿主。ServiceStack 还支持 WebSocket、SignalR 等实时通信协议,具备自动验证、自动过滤器等丰富功能,适合快速搭建高性能、可扩展的服务端应用。
124 3
|
16天前
|
消息中间件 监控 数据可视化
基于.NET开源、功能强大且灵活的工作流引擎框架
基于.NET开源、功能强大且灵活的工作流引擎框架
|
16天前
|
开发框架 网络协议 .NET
C#/.NET/.NET Core优秀项目和框架2024年10月简报
C#/.NET/.NET Core优秀项目和框架2024年10月简报
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
【MM2024】阿里云 PAI 团队图像编辑算法论文入选 MM2024
阿里云人工智能平台 PAI 团队发表的图像编辑算法论文在 MM2024 上正式亮相发表。ACM MM(ACM国际多媒体会议)是国际多媒体领域的顶级会议,旨在为研究人员、工程师和行业专家提供一个交流平台,以展示在多媒体领域的最新研究成果、技术进展和应用案例。其主题涵盖了图像处理、视频分析、音频处理、社交媒体和多媒体系统等广泛领域。此次入选标志着阿里云人工智能平台 PAI 在图像编辑算法方面的研究获得了学术界的充分认可。
【MM2024】阿里云 PAI 团队图像编辑算法论文入选 MM2024
|
16天前
|
网络协议 Unix Linux
精选2款C#/.NET开源且功能强大的网络通信框架
精选2款C#/.NET开源且功能强大的网络通信框架
|
16天前
|
开发框架 JavaScript 前端开发
2024年全面且功能强大的.NET快速开发框架推荐,效率提升利器!
2024年全面且功能强大的.NET快速开发框架推荐,效率提升利器!
|
16天前
|
网络协议 网络安全 Apache
一个整合性、功能丰富的.NET网络通信框架
一个整合性、功能丰富的.NET网络通信框架
|
2月前
|
设计模式 前端开发 C#
使用 Prism 框架实现导航.NET 6.0 + WPF
使用 Prism 框架实现导航.NET 6.0 + WPF
95 10
|
2月前
|
开发框架 前端开发 API
C#/.NET/.NET Core优秀项目和框架2024年9月简报
C#/.NET/.NET Core优秀项目和框架2024年9月简报