Detection-friendly dehazing: object detection in real-world hazy scenes

Detection-friendly dehazing: object detection in real-world hazy scenes

摘要

提出了一种联合架构BAD-Net,将去雾模块和检测模块连接成一个端到端的方法。另外,设计了了两个分支结构,用注意力融合模块来充分结合有雾和去雾特征,这减少了在检测模块不好的影响,当去雾模块表现不好时。此外,引入了一种自监督雾度鲁棒损失,使检测模块能够处理不同程度的雾度。更重要的是,提出了一种区间迭代数据细化训练策略,用于指导弱监督下的去雾模块学习。在RTTS和VOC数据集上进行实验。

Introduction

现有恢复模型基于神经网络,它们生成的图片也许包含对于人类研究不可见的噪声,但是对于检测模块有害。
本文主要贡献如下:
1、探索了在没用清晰图像标签的情况下,如何建立去雾和检测之间的正相关性
2、提出了一种双线性结构BAD-Net和一种区间迭代训练策略,
3、在实验中,我们首先从训练损失和策略的角度对联合方法进行了划分和比较。比较结果表明,BAD-Net在RTTS和VOChaze数据集上的性能优于最先进的方法。

Method

在这里插入图片描述

Dehazing module
在这里插入图片描述
Detection module
在这里插入图片描述
采用FRCNN作为检测模块。使用MobilenetV3-large作为轻量化backbone提取特征,在ImageNet上预训练。然后,特征图被当做候选区域网络的输入来自动生成候选区域。采用了和FRCNN意义结构和损失函数

Attention Fusion Module

设计了一个模糊感知注意力模块用来将有雾特征和去雾特征进行融合。当去雾模块表现不好时,去雾特征也许会导致更坏的影响。因此,该融合模块旨在解决去雾特征和有雾特征语义不一致的情况。许多注意力值取决于特征通道,它们也许会丢失特征图的空间信息,这对生成辨别性和选择性注意力图至关重要。因此分别对高度和宽度进行平均池化以保留空间上下文。
在这里插入图片描述
在这里插入图片描述
Loss function
IA-YOLO证明添加恢复图像损失会造成较慢的收敛和更差的检测效果。原因是恢复损失专注恢复图像的质量。同时检测损失集中在感兴趣区域的提取而不是背景。检测目的在于提取对高度抽象不敏感的特征,而去雾目的在于提取对细节敏感和低抽象程度的特征。因此,两种损失之间存在冲突,模型可能会收敛到局部最优点,而不是全局最优点。基于此,引入了一种自监督损失来指导去雾模块的方向,称为Haze Robust Loss(HR loss)。
HR loss由KL散度计算,KL散度用来测量两种分布之间的差异。受此启发,我们使用它作为软约束用来使去雾特征与原始特征相似。我们的目标是学习一种检测模型,使它对于不同雾度都是稳定的。这可以通过约束雾度特征和检测主干提取的去雾特征的相似性来实现。恢复损失学习包括背景信息的图像质量恢复。这可能会引入噪声,对检测造成危害。我们将去雾约束向前移动到检测提取部分。这使去雾模块更加关注目标区域特征的学习。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
Ldet为FRCNN的原始特征,α用来平衡Ldet和Lhr的重要性。

Interval Iterative Training Strategy
看不懂…

experiments

在这里插入图片描述
三种训练策略:
1、在检测模型上直接训练有雾图片
2、首先在去雾模型上训练有雾图片,然后输入到在VOCn-tv数据集预训练的检测基线上。
3、在去雾和检测模型上同时训练有雾图片

在这里插入图片描述

在这里插入图片描述

4点观察总结:
1、使用分离策略方法的性能很大一部分取决于去雾模型。去雾网络也许会引入随机噪声危害计策网络,这是因为他们的损失约束和评价标准不同。
2、CascadeNet收敛慢,性能差。具有两个损失的模型很难跳出局部最优点。
3、DSNet表现更好,是因为它在MSCOCO数据集上预训练过。在整个训练阶段,DSNet表现逐渐下滑,并没有起到正相关的联合优化效果
4、IAYOLO有着更高的准确率因为它只使用了检测损失。但是当我们把它的去雾网络改成AOD-Net时,它的训练损失很难收敛并且它的表现下降严重。这是因为IAYOLO中的暗通道去雾算法和许多传统的数字图像处理方法有利于检测,但这并不是一个对于检测表现提升鲁棒的框架。
考虑到去雾模块给检测模块带来有害噪声,BAD-Net采用双分支方法来减少有害特征的影响。它是一个用于连接去雾和检测的健壮框架,即低级别图像处理和高级模式识别。BAD-Net检测结果的一些样本如图所示。我们的模型可以准确识别附近的目标,即使它们被雾霾遮挡。对于“困难”样本,我们的模型在遥远的小而严重遮挡的物体上表现不佳。在接下来的消融研究中,我们将分析每个模块的影响。
在这里插入图片描述

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

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

相关文章

bilibi分类id的秘密

问题 今天想通过rss来阅读bilibili的相关信息,但是如何获取排行榜的分类呢?研究了一下。 办法 浏览器最喜欢的F12,过滤关键才v2?rid,后面的数字就是分类id。 rss获取路径 [最后的数字是0,是所有投稿,数字是1的话是…

陪诊小程序开发|陪诊软件定制|陪诊系统成品功能包含哪些?

陪诊小程序是一种便捷的工具,为用户提供一系列服务和功能,方便患者在就医过程中获得更好的体验和效果。接下来我们将介绍几个主要的陪诊小程序功能。 陪诊小程序开发功能: 一、预约挂号功能。陪诊小程序能够连接用户和医疗机构的系统&#x…

10万字200道软件测试经典面试总结(附答案)

🍅 视频学习:文末有免费的配套视频可观看 🍅 关注公众号【互联网杂货铺】,回复 1 ,获取《110万字200道软件测试经典面试总结(附答案)》pdf,背题更方便,一文在手&#xff…

python系列28:fastapi部署应用

1. 介绍与安装 FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,类似flask,Django,webpy 在部署时可能需要用到下面的库: Uvicorn 或者 Hypercorn负责ASGI 服务器。 Starlette 负责 web 部分…

df 计算同一列时间差(差分pandas.diff())

df pd.DataFrame({a: [1, 2, 3, 4, 5, 6],b: [1, 1, 2, 3, 5, 8],c: [1, 4, 9, 16, 25, 36]}) df.diff()# 计算某一列差值 df.c.diff(1)https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.diff.html

C语言多线程基础(pthread)

1.线程和进程的概念 线程:进程中的一个实体,是CPU调度和分派的基本单位。可以与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创建和撤销另一个线程,同一进程中的多个线程之间可以并发执行,线程在运行中呈现间断…

Python 将列表数据写入文件(txt, csv,excel)

写入txt文件 def text_save(filename, data):#filename为写入txt文件的路径,data为要写入数据列表. file open(filename,a) for i in range(len(data)): s str(data[i]).replace([,).replace(],)#去除[],这两行按数据不同,可以选择 s s.replace(&quo…

NVS入门(基于ESP-IDF)

主要参考资料: B站Up主 孤独的二进制《ESP32 存储篇 NVS 非易失性存储库》 ESP-IDF开发指南>API参考>非易失性存储: https://docs.espressif.com/projects/esp-idf/zh_CN/v5.1/esp32s3/api-reference/storage/nvs_flash.html 目录 概述NVS使用(以W…

一键制作底片效果,让视频复古感倍增!

你是否厌倦了千篇一律的视频效果,想要尝试一些与众不同的视觉体验?是否想要让你的视频散发出一种复古、怀旧的气息?现在,有了我们的底片效果制作工具,这些愿望全部实现 首先第一步,我们要进入视频剪辑高手…

16.Linux基本使用和程序部署

文章目录 1.Linux 背景知识1.1Linux 是什么1.2Linux 发行版1.3关于 Linux 我们学习什么 2.Linux 环境搭建2.1环境搭建方式2.2使用云服务器2.3使用终端软件连接到 Linux2.3.1什么是终端软件2.3.2下载安装 XShell2.3.3使用 XShell 登陆主机 3.Linux 常用命令3.1 ls3.2 pwd3.3 cd3…

关于cdn资源失效的问题,一个月了都解决不了,七牛云技术这么差的吗?

起因 最近登录我的gpt镜像网站后,发现关于面具的图片资源都失效了 CoCo-AI 于是紧急使用 F12 排查原因 发现所有图片拿出来都已经无法访问了。看来是资源出了问题 在网上一番搜索后发现是 cdn.staticfile.org 失效导致的,而该静态资源属于七牛云&#…

大数据开发之Hive(查询、分区表和分桶表、函数)

第 6 章:查询 6.1 基本语法及执行顺序 1、查询语句语法 select_expr, select_expr, ... FROM table_reference [WHERE where_condition] [GROUP BY col_list] [ORDER BY col_list] [CLUSTER BY col_list| [DISTRIBUTE BY col_list] [SORT BY col_list]] [LIMIT n…

htmx 只是另一个 JavaScript 框架吗?老外都吵上了

对 htmx 最常见的批评之一通常来自第一次听说它的人,如下所示: 你抱怨现代前端框架的复杂性,但你的解决方案只是另一个复杂的前端框架。 这是一个很好的反对意见!对于你引入到项目中的任何第三方 (3P) 代码,你都有权提…

HarmonyOS 开发基础(八)Row和Column

HarmonyOS 开发基础(八)Row和Column 一、Column 容器 1、容器说明: 纵向容器主轴方向:从上到下纵向交叉轴方向:从左到右横向 2、容器属性: justifyContent:设置子元素在主轴方向的对齐格式…

实例分割论文精读:Mask R-CNN

1.摘要 本文提出了一种概念简单、灵活、通用的实例分割方法,该方法在有效地检测图像中的物体同时,为每个物体实例生成一个实例分割模板,添加了一个分支,用于预测一个对象遮罩,与现有的分支并行,用于边界框…

零知识证明的最新发展和应用

PrimiHub一款由密码学专家团队打造的开源隐私计算平台,专注于分享数据安全、密码学、联邦学习、同态加密等隐私计算领域的技术和内容。 当企业收集大量客户数据去审查、改进产品和服务以及将数据资产货币化时,他们容易受到网络攻击威胁,造成数…

RC4加解密源码

本文介绍RC4加解密源码。 RC4(来自Rivest Cipher 4的缩写)是一种流加密算法,密钥长度可变。它加解密使用相同的密钥,因此也属于对称加密算法。RC4具有加解密速度快,算法简单等优点,在算力不高场合&#xf…

昇腾910b部署Chatglm3-6b进行流式输出【pytorch框架】NPU推理

文章目录 准备阶段避坑阶段添加代码结果展示 准备阶段 配套软件包Ascend-cann-toolkit和Ascend-cann-nnae适配昇腾的Pytorch适配昇腾的Torchvision Adapter下载ChatGLM3代码下载chatglm3-6b模型,或在modelscope里下载 避坑阶段 每个人的服务器都不一样&#xff0…

Pixart PAR2861 蓝牙 keyboard 开发笔记

Pixart PAR2861 是一款采用32 bits ARM Cortex-M0 低功耗、高效能 2.4GHz RF 的 SoC。 该 SoC 整合了高效能的 2.4GHz RF 收发器、硬体Keyscan、硬体按键防弹跳、SPI、I2C、PWM LED、ADC、UART等。内建 DC/DC 转换器和 LDO 为独立 HID 应用提供完整的低功耗 SoC 解决方案。 1.…

2023年网络安全事件处罚盘点,文件销毁 硬盘销毁 物料销毁

《中华人民共和国网络安全法》是我国第一部全面规范网络空间安全管理方面问题的基础性法律,是我国网络空间法治建设的重要里程碑,《中华人民共和国网络安全法》从2013年下半年提上日程,到2016年年底颁布,自2017年6月1日起施行&…