目标检测-击穿黑夜的PE-YOLO

前言

当前的目标检测模型在许多基准数据集上取得了良好的结果,但在暗光条件下检测目标仍然是一个巨大的挑战。为了解决这个问题,作者提出了金字塔增强网络(PENet)并将其与YOLOv3结合,构建了一个名为PE-YOLO的暗光目标检测框架。
首先,PENet使用拉普拉斯金字塔将图像分解为4个具有不同分辨率的组件。具体来说,作者提出了一个细节处理模块(DPM)来增强图像的细节,其中包括上下文分支和边缘分支。此外,作者提出了一个低频增强滤波器(LEF)来捕获低频语义并防止高频噪声。

在这里插入图片描述

1、简介

近年来,卷积神经网络(CNN)的出现推动了目标检测领域的发展。大量的检测器被提出,针对基准数据集的性能也取得了令人满意的结果。然而,大多数现有的检测器都是在高质量图像和正常条件下进行研究的。而在实际环境中,往往存在许多恶劣的光照条件,如夜晚、暗光和曝光不足,导致图像质量下降,从而影响了检测器的性能。视觉感知模型使得自动系统能够理解环境并为后续任务(如轨迹规划)奠定基础,这需要一个稳健的目标检测或语义分割模型。
在这里插入图片描述
图1是一个暗光目标检测的示例。可以发现,如果能够适当地增强图像,并根据环境条件恢复原始模糊目标的更多潜在信息,那么目标检测模型就能够适应不同的暗光条件,这也是模型在实际应用中面临的重大挑战。

目前,已经提出了许多方法来解决暗场景中的鲁棒性问题。许多暗光增强模型被提出来恢复图像细节,减少恶劣光照条件的影响。然而,暗光增强模型的结构较为复杂,这不利于图像增强后检测器的实时性能。这些方法大多数不能与检测器进行端到端的训练,需要有配对的暗光图像和正常图像进行监督学习。

在暗光条件下的目标检测也可以看作是域自适应问题。一些研究者采用对抗学习将模型从正常光到暗光进行转换。但是他们关注的是数据分布的匹配,忽略了暗光图像中所包含的潜在信息。近几年,一些研究者提出了使用可微分图像处理(DIP)模块来增强图像,并以端到端的方式训练检测器。然而,DIP是传统的方法,如白平衡,对图像的增强效果有限。

为了解决以上问题,本文作者提出了一种金字塔增强网络(PENet),用于增强暗光图像并捕获有关目标的潜在信息。作者将PENet与YOLOv3结合,构建了一个名为PE-YOLO的端到端的暗目标检测框架。在PENet中,作者首先使用拉普拉斯金字塔将图像分解为多个不同分辨率的组成部分。在金字塔的每个尺度上,作者提出了细节处理模块(DPM)和低频增强滤波器(LEF)来增强这些组成部分。

DPM由上下文分支和边缘分支组成,上下文分支通过捕获远距离依赖关系全局增强组成部分,而边缘分支增强组成部分的纹理。LEF使用动态低通滤波器来获取低频语义信息,防止高频噪声以丰富特征信息。作者在模型训练过程中只使用正常的检测损失来简化训练过程,无需对图像进行清晰的标注。

作者在暗光目标检测数据集ExDark上验证了作者方法的有效性,结果显示与其他暗目标检测器和暗光增强模型相比,PE-YOLO取得了先进的结果,分别达到78.0%的mAP和53.6的FPS,适用于暗场景中的目标检测。

作者的贡献可以总结如下:

  • 作者构建了一个金字塔增强网络(PENet),用于增强不同的暗光图像。作者提出了详细处理模块(DPM)和低频增强滤波器(LEF)来增强图像组成部分。
  • 通过将PENet与YOLOv3结合,作者提出了一个端到端训练的暗目标检测框架PE-YOLO,以适应暗光条件。在训练过程中,作者只使用正常的检测损失。
  • 与其他暗目标检测器和暗光增强模型相比,作者的PE-YOLO在ExDark数据集上取得了先进的结果,实现了令人满意的准确性和速度。

2、相关方法

2.1 目标检测

目标检测模型可以分为3类:

  • 一阶段模型、
  • 两阶段模型
  • 基于Anchor-Free的模型。

Faster RCNN 不再通过选择性搜索获得区域建议,而是通过区域提议网络(RPN)来实现。它使得候选区域提议、特征提取、分类和回归在同一个网络中端到端地进行训练。Cai等人提出了Cascade RCNN,它将多个检测头级联起来,当前级别将对前一级别的回归和分类结果进行改进。YOLOv3 提出了新的特征提取网络DarkNet-53。借鉴了特征金字塔网络(FPN)的思想,YOLOv3采用了多尺度特征融合。此外,最近出现了基于Anchor-Free的检测器,它们放弃了Anchor,并将其改变为基于关键点的检测。

2.2 暗光增强

暗光增强任务的目标是通过恢复图像细节和校正颜色失真来改善人类的视觉感知,并为目标检测等高级视觉任务提供高质量的图像。Zhang等人提出了Kind,它可以通过不同亮度级别的成对图像进行训练,而无需真实的GT。Guo等人提出了Zero DCE,它将暗光增强任务转化为图像特定曲线估计问题。Lv等人提出了多分支暗光增强网络MBLLEN,它在不同级别提取特征,并通过多分支融合生成输出图像。Cui等人提出了自适应照明Transformer(IAT),通过动态查询学习构建端到端的Transformer。暗光增强模型恢复图像细节后,会提高检测器的效果。然而,大多数暗光增强模型较为复杂,对检测器的实时性能有很大影响。

2.3 恶劣条件下的目标检测

在恶劣条件下的目标检测对于机器人的鲁棒感知至关重要,因此出现了一些针对恶劣条件的鲁棒目标检测模型。有些研究人员通过无监督领域自适应将检测器从源域迁移到目标域,以适应恶劣环境。刘等人提出了IA-YOLO,它通过自适应地增强每个图像来提高检测性能。他们使用了一个可微分图像处理(DIP)模块来适应恶劣天气,并使用一个小型卷积神经网络(CNN-PP)来调整DIP的参数。在IA-YOLO的基础上,Kalwar等人提出了GDIP-YOLO。GDIP提出了一个门控机制,允许多个DIP并行操作。Qin等人提出了检测驱动的增强网络(DENet),用于恶劣天气条件下的目标检测。Cui等人提出了用于暗光条件下的多任务自动编码转换(MAET),探索了光照转换背后的潜在空间。

3、本文方法

在这里插入图片描述
暗图像由于暗光干扰导致能见度较差,这影响了检测器的性能。为了解决这个问题,作者提出了金字塔增强网络(PENet)并联合YOLOv3构建了一个暗物体检测框架PE-YOLO。PE-YOLO框架的概览如图2所示。

3.1 PE-YOLO概述

PENet通过拉普拉斯金字塔将图像分解成不同分辨率的组件。在PENet中,作者通过提出的细节处理模块(DPM)和低频增强滤波器(LEF)来增强每个尺度的组件。

假设图像 I ∈ R h × w × 3 I\in R^{h\times w\times3} IRh×w×3作为输入,作者使用高斯金字塔获取不同分辨率的子图像。 G ( x ) = D o w n ( G a u s s i a n ( x ) ) G(x)=Down(Gaussian(x)) G(x)=Down(Gaussian(x))其中Down表示下采样,Gaussian表示高斯滤波器,高斯核的大小为5×5。在每个高斯金字塔操作后,图像的宽度和高度减半,这意味着分辨率是原始图像的1/4。显然,高斯金字塔的下采样操作是不可逆的。为了在上采样后恢复原始的高分辨率图像,需要恢复丢失的信息,这些丢失的信息构成了拉普拉斯金字塔的组件。拉普拉斯金字塔的定义如下: L i = G i − U p ( G i + 1 ) L_{i}=G_{i}-Up(G_{i+1}) Li=GiUp(Gi+1)其中 L i L_{i} Li,表示拉普拉斯金字塔的第i层, G i G_{i} Gi表示高斯金字塔的第i层,Up表示双线性上采样操作。在重建图像时,作者只需要执行公式(2)的逆操作,即可恢复高分辨率图像。
在这里插入图片描述
作者通过拉普拉斯金字塔获得了不同尺度的4个组件,如图3所示。作者发现拉普拉斯金字塔从底部到顶部更关注全局信息,而从顶部到底部更关注局部细节。它们都是在图像下采样过程中丢失的信息,也是作者PENet增强的目标。作者通过细节处理模块(DPM)和低频增强滤波器(LEF)来增强这些组件,DPM和LEF的操作是并行的。

作者将在下一节中介绍DPM和LEF。通过分解和重建拉普拉斯金字塔,PENet可以变得轻量且有效,这有助于提高PE-YOLO的性能。

3.2 细节信息增强

作者提出了一个细节处理模块(DPM)来增强拉普拉斯金字塔中的组件,它由上下文分支和边缘分支组成。
在这里插入图片描述
DPM的详细信息如图4所示。上下文分支通过捕捉远程依赖性来获取上下文信息,并全局增强组件。边缘分支使用两个不同方向的Sobel算子来计算图像梯度,获取边缘并增强组件的纹理。

3.2.1 上下文分支

作者使用残差块来在获取远程依赖性之前和之后处理特征,并且残差学习允许丰富的低频信息通过跳过连接进行传递。第一个残差块将特征的通道从3变为32,第二个残差块将特征的通道从32变为3。捕捉场景中的全局信息已被证明对于低级别的视觉任务(如暗光增强)是有益的。

上下文分支的结构如图4所示,其定义如下: C B ( x ) = x + γ ( F 1 ( x ^ ) ) CB(x)=x+\gamma(F_1(\hat{x})) CB(x)=x+γ(F1(x^))在上述公式中, x ^ \hat{x} x^表示上下文分支的输出, F F F是带有3×3卷积核的卷积层,γ是Leaky ReLU激活函数,σ是Softmax函数。

3.2.2 Edge branch

S o b e l Sobel Sobel算子是一种离散算子,它同时使用了高斯滤波和差分求导。它通过计算梯度近似来找到边缘。作者在水平和垂直方向上都使用 S o b e l Sobel Sobel算子来通过卷积滤波器重新提取边缘信息,并使用残差来增强信息的流动。该过程表示为: E B ( x ) = F 3 ( S o b e l h ( x ) + S o b e l w ( x ) ) + x EB(x)=F_3(Sobel_h(x)+Sobel_w(x))+x EB(x)=F3(Sobelh(x)+Sobelw(x))+x在上述公式中, S o b e l h ( x ) Sobel_h(x) Sobelh(x) S o b e l w ( x ) Sobel_w(x) Sobelw(x)分别代表垂直和水平方向上的 S o b e l Sobel Sobel操作。这两个操作分别应用于输入特征,以计算垂直和水平方向上的梯度近似,从而提取图像中的边缘信息。在DPM中,作者使用这两个Sobel操作来获取边缘信息,并将其与原始输入特征相加,以增强特征表示。

3.3 低频增强滤波器

在每个尺度的分量中,低频分量包含了图像中的大部分语义信息,它们是检测器预测的关键信息。为了丰富重建图像的语义信息,作者提出了低频增强滤波器(LEF)来捕捉组成部分中的低频信息。LEF的细节如图5所示。
在这里插入图片描述
假设组成部分 f ∈ R h × w × 3 f\in R^{h\times w\times3} fRh×w×3,作者首先通过一个卷积层将其转换为 f ∈ R h × w × 3 f\in R^{h\times w\times3} fRh×w×3。作者使用动态低通滤波器来捕捉低频信息,并且使用平均池化进行特征滤波,只允许低于截止频率的信息通过。

不同语义的低频阈值是不同的。考虑到Inception的多尺度结构,作者使用大小为 1 × 1 1×1 1×1 2 × 2 2×2 2×2 3 × 3 3×3 3×3 6 × 6 6×6 6×6的自适应平均池化,并在每个尺度末尾使用上采样来恢复特征的原始大小。不同卷积核大小的平均池化形成了低通滤波器。作者通过通道分离将f划分为4个部分,即 { f 1 , f 2 , f 3 , f 4 } \{f_{1},f_{2},f_{3},f_{4}\} {f1,f2,f3,f4}。每个部分使用不同大小的池化进行处理,具体描述如下: F i l t e r ( f i ) = U p ( β s ( f i ) ) Filter(f_i)=Up(\beta_s(f_i)) Filter(fi)=Up(βs(fi))其中 f i f_i fi f f f在通道上划分的部分, U p Up Up是双线性插值采样, β s \beta_s βs是不同大小 s × s s×s s×s的自适应平均池化。最后,在张量拼接每个 { f i , i = 1 , 2 , 3 , 4 } \{f_{i},i=1,2,3,4\} {fi,i=1,2,3,4}后,作者将它们恢复为 f ∈ R h × w × 3 f\in R^{h\times w\times3} fRh×w×3

4、实验

4.1 实验结果

为了验证PE-YOLO的有效性,作者在ExDark数据集上进行了许多实验。首先,作者将PE-YOLO与其他暗光增强模型进行比较。由于暗光增强模型缺乏检测能力,作者将使用与PE-YOLO相同的检测器对所有增强后的图像进行实验。

作者将mAP的IoU阈值设置为0.5,并且性能比较结果如表1所示。作者发现直接在YOLOv3之前使用暗光增强模型并没有显著提高检测性能。作者的PE-YOLO在mAP上比MBLLEN和Zero-DCE分别高出1.2%和1.1%,取得了最佳结果。
在这里插入图片描述

作者将不同暗光增强模型的检测结果进行了可视化,如图6所示。作者发现虽然MBLLEN和Zero DCE可以显著提高图像的亮度,但它们也会放大图像中的噪声。PE-YOLO主要捕捉暗光图像中目标的潜在信息,同时抑制高频组件中的噪声,因此PE-YOLO具有更好的检测性能。
在这里插入图片描述

作者将PE-YOLO与其他暗光检测器进行了性能比较,如表2所示。此外,作者还可视化了暗光检测器和PE-YOLO的检测结果,如图7所示,清楚地展示了PE-YOLO在目标检测方面更准确。与使用LOL数据集进行预训练的DENet和IAT-YOLO相比,PE-YOLO在mAP上高出0.7%和0.2%,而且作者的PE-YOLO在FPS上几乎是最高的。以上数据表明,PE-YOLO更适用于在暗光条件下检测物体。
在这里插入图片描述
在这里插入图片描述

4.2 消融实验

在这里插入图片描述
为了分析PE-YOLO中每个组件的有效性,作者进行了消融研究,结果如表3所示。在采用上下文分支后,PE-YOLO的mAP从76.4%增加到77.0%,表明捕捉远程依赖关系对于增强有效。在采用边缘分支后,mAP从77.0%增加到77.6%,表明边缘分支可以增强组件的纹理,并增强增强图像的细节。在采用LEF后,mAP从77.6%增加到78.0%,表明捕捉低频分量有助于获得图像中的潜在信息。

最后,作者的模型在mAP上从76.4%提高到78.0%,仅降低了0.4个FPS。

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

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

相关文章

前后端分离开发流程

1、介绍 在前后端分离开发中,前端负责用户界面和交互逻辑的实现,后端则处理业务逻辑和数据持久化。这种开发模式的优势在于前后端可以独立进行开发,提高了开发效率,并且使得前后端可以采用不同的技术栈来实现各自的功能。 2、开…

基于Vue3实现鼠标按下某个元素进行移动,实时改变左侧或右侧元素的宽度,以及点击收起或展开的功能

其原理主要是利用JavaScript中的鼠标事件来控制CSS样式。大致就是监听某个DOM元素的鼠标按下事件,以及按下之后的移动事件和松开事件。在鼠标按下且移动过程中,可实时获得鼠标的X轴坐标的值,通过简单计算,可计算出目标元素的宽度&…

八、Kafka时间轮与常见问题

Kafka与时间轮 Kafka中存在大量的延时操作。 1、发送消息-超时重试机制 2、ACKS 用于指定分区中必须要有多少副本收到这条消息,生产者才认为写入成功(延时 等) Kafka并没有使用JDK自带的Timer或者DelayQueue来实现延迟的功能,而…

石子合并(区间dp模板)

题目描述&#xff1a; dp分析&#xff1a; 解题代码&#xff1a; #include<iostream> using namespace std;const int N1e36;int f[N][N]; int a[N]; int s[N];int main(){int n;cin>>n;for(int i1;i<n;i){scanf("%d",&s[i]);s[i]s[i-1];//前缀和…

谈谈你对Synchronized关键字的理解及使用

synchronized关键字最主要的三种使用方式的总结 修饰实例方法&#xff0c;作用于当前对象实例加锁&#xff0c;进入同步代码前要获得当前对象实例的锁修饰静态方法&#xff0c;作用于当前类对象加锁&#xff0c;进入同步代码前要获得当前类对象的锁 。也就是给当前类加锁&…

centos7安装tomcat

安装tomcat 必须依赖 JDK 环境&#xff0c;一定要提前装好JDK保证可以使用 一、下载安装包 到官网下载 上传到linux 服务器 二、安装tomcat 创建tomcat 文件夹 mkdir -p /usr/local/tomcat设置文件夹权限 chmod 757 tomcat将安装包上传至 新建文件夹 解压安装包 tar zx…

自动驾驶之轨迹规划8——Apollo参考线和轨迹

1. abstract 本文主要讲解routing和planning模块中的reference line&#xff0c;我之前一直搞不明白这个reference line是如何生成的&#xff0c;有什么作用&#xff0c;和routing以及planning的关系。现在有了一些心得打算梳理一下&#xff1a; 决策规划模块负责生成车辆的行…

浅谈3D隐式表示(SDF,Occupancy field,NeRF)

本篇文章介绍了符号距离函数Signed Distance Funciton(SDF)&#xff0c;占用场Occupancy Field&#xff0c;神经辐射场Neural Radiance Field&#xff08;NeRF&#xff09;的概念、联系与区别。 显式表示与隐式表示 三维空间的表示形式可以分为显式和隐式。 比较常用的显式表…

STM32 串口基础知识学习

串行/并行通信 串行通信&#xff1a;数据逐位按顺序依次传输。 并行通信&#xff1a;数据各位通过多条线同时传输。 对比 传输速率&#xff1a;串行通信较低&#xff0c;并行通信较高。抗干扰能力&#xff1a;串行通信较强&#xff0c;并行通信较弱。通信距离&#xff1a;串…

区间预测 | MATLAB实现QRLSTM长短期记忆神经网络分位数回归多输入单输出区间预测

区间预测 | MATLAB实现QRLSTM长短期记忆神经网络分位数回归多输入单输出区间预测 目录 区间预测 | MATLAB实现QRLSTM长短期记忆神经网络分位数回归多输入单输出区间预测效果一览基本介绍模型描述程序设计参考资料 效果一览 基本介绍 MATLAB实现QRLSTM长短期记忆神经网络分位数回…

计算机科学cs/电子信息ei面试准备——数学基础/线性代数复习

1. 中值定理 中值定理是反映函数与导数之间联系的重要定理&#xff0c;也是微积分学的理论基础&#xff0c;在许多方面它都有重要的作用&#xff0c;在进行一些公式推导与定理证明中都有很多应用。中值定理是由众多定理共同构建的&#xff0c;其中拉格朗日中值定理是核心&…

【Linux命令200例】less强大的文件内容查看工具

&#x1f3c6;作者简介&#xff0c;黑夜开发者&#xff0c;全栈领域新星创作者✌&#xff0c;2023年6月csdn上海赛道top4。 &#x1f3c6;本文已收录于专栏&#xff1a;Linux命令大全。 &#x1f3c6;本专栏我们会通过具体的系统的命令讲解加上鲜活的实操案例对各个命令进行深入…

最优除法(力扣)数学 JAVA

给定一正整数数组 nums&#xff0c;nums 中的相邻整数将进行浮点除法。例如&#xff0c; [2,3,4] -> 2 / 3 / 4 。 例如&#xff0c;nums [2,3,4]&#xff0c;我们将求表达式的值 “2/3/4”。 但是&#xff0c;你可以在任意位置添加任意数目的括号&#xff0c;来改变算数的…

苍穹外卖day07——缓存菜品套餐+购物车功能实现

缓存菜品——需求设计与分析 问题说明 用户访问量过大带来的一个直接效果就是响应速度慢&#xff0c;使用体验下降。 实现思路 使用redis缓存菜品数据&#xff0c;减少数据库查询操作。 页面展示上基本就是同一个分类在同一页&#xff0c;所以key-value结构可以使用不同的分…

【Git】版本回退与撤销修改案例

目录 一、版本回退 二、撤销修改案例 案例1&#xff1a;仅在工作区进行了修改还未进行add操作 案例2&#xff1a;仅进行了add 操作还未进行commit操作 案例3&#xff1a;进行了add与commit操作无其他操作 三、版本库中删除文件 一、版本回退 在进行版本回退之前我们需要…

Excel的使用

1.EXCEL诞生的意义 1.1 找到想要的数据 1.2 提升输入速度 2.数据分析与可视化操作 目的是提升数据的价值和意义 3.EXCEL使用的内在意义和外在形式 4.EXCEL的价值 4.1 解读及挖掘数据价值 4.2 协作板块 4.3 展示专业度 4.4 共享文档内容 5.人的需求》》软件功能

【UE4】局域网多人联机 Demo

效果 亲测可以打包后在两个电脑上联机运行&#xff08;前提是在同一个局域网内&#xff0c;互相能ping通&#xff09; 步骤 1. 首先新建一个第三人称角色模板工程 2. 在多玩家选项中&#xff0c;设置玩家数量为2 选择在新建编辑器窗口中运行 3. 新建一个父类为Character的蓝…

wangeditor 表格问题总结及适配方案

一、导出编辑器内容&#xff0c;表格无边框样式 1、通过 let article this.editor.getHtml(); // editor.getHtml() 获取 HTML 内容&#xff1b; 2、处理文本字符串&#xff1a;&#xff08;手动为 table 加上 css样式&#xff09;&#xff1b; article article.replace…

虎年现货黄金投资布局图

参与现货黄金交易的主要目的&#xff0c;是为了根据行情走势的变动&#xff0c;把握一些较佳的获利机会&#xff0c;在这样的一个过程中&#xff0c;如果投资者能够提前把布局的图表画好&#xff0c;那么就可能获得事半功倍的效果&#xff0c;而本文将为大家简单的介绍&#xf…

【主成分分析(PCA)- 鸢尾花】

主成分分析&#xff08;PCA&#xff09; 摘要 在现代数据科学中&#xff0c;维度灾难常常是数据处理与分析的一大难题。主成分分析&#xff08;PCA&#xff09;是一种广泛使用的数据降维技术&#xff0c;它通过将原始数据转换为新的低维空间&#xff0c;保留最重要的信息&…