【目标检测】——PE-YOLO精读

yolo,暗光目标检测
论文:PE-YOLO

1. 简介

卷积神经网络(CNNs)在近年来如何推动了物体检测的发展。许多检测器已经被提出,而且在许多基准数据集上的性能正在不断提高。然而,大多数现有的检测器都是在正常条件下对高质量图像进行研究。在真实环境中,经常会出现许多糟糕的光照条件,如夜晚、暗光和曝光过度,这些条件会降低图像的质量,影响检测器的性能。

前人的解决方案:…略

本文采用了金字塔增强网络(PENet)和YOLOv3。首先,PENet使用拉普拉斯金字塔将图像分解为四个不同分辨率的组件。然后,我们提出了一个细节处理模块(DPM)来增强图像的细节,该模块由上下文分支和边缘分支组成。此外,我们还提出了一个低频增强滤波器(LEF)来捕获低频语义并防止高频噪声。PE-YOLO采用端到端的联合训练方法,并且只使用正常的检测损失来简化训练过程。我们在低光照物体检测数据集ExDark上进行了实验,结果表明,与其他暗物体检测器和低光照增强模型相比,PE-YOLO取得了先进的结果,在mAP上达到78.0%,在FPS上达到53.6%,可以适应不同的低光照条件下的物体检测。

2. 相关工作

2.1 目标检测

2.2 低照图像增强

低光照增强任务的目标是通过恢复图像细节和纠正色彩失真来提高人类的视觉感知,并为如物体检测等高级视觉任务提供高质量的图像。张等人提出了一种名为Kind的模型,它可以通过不同照度的配对图像进行训练,无需地面真实值。郭等人提出了Zero DCE,它将低光照增强任务转化为特定图像的曲线估计问题。吕等人提出了一种多分支低光照增强网络(MBLLEN),该网络在不同级别提取特征并通过多分支融合生成输出图像。崔等人提出了一种名为Illumination Adaptive Transformer (IAT)的模型,通过动态查询学习来构建端到端的Transformer。在低光照增强模型恢复图像细节后,检测器的效果得到了改善。然而,大多数低光照增强模型都很复杂,并且对检测器的实时性能有很大影响。

2.3 恶劣条件下的目标检测

IA-YOLO,该模型通过自适应增强每个图像来提高检测性能。他们提出了一个可微分的图像处理(DIP)模块,用于处理恶劣天气,并使用了一个小型的卷积神经网络(CNN-PP)来调整DIP的参数。在IA-YOLO的基础上,Kalwar等人提出了GDIP-YOLO。GDIP提出了一个门控机制,允许多个DIP并行操作。秦等人提出了检测驱动增强网络(DENet),用于在恶劣天气条件下进行物体检测。崔等人提出了一种用于暗物体检测的多任务自动编码变换(MAET),探索了照明转换背后的潜在空间。

3. 网络

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
首先,我们使用高斯金字塔将图像I分解为不同分辨率的子图像。然后,我们提出了一个细节处理模块(DPM)和一个低频增强滤波器(LEF)来增强每个尺度的组件。在拉普拉斯金字塔中,每一层都是通过减去上一层的高斯金字塔后上采样得到的。当重构图像时,我们只需要执行(2)的逆操作即可恢复原始的高分辨率图像。这种方法允许我们在保持图像质量的同时,降低图像的复杂性和计算需求。

拉普拉斯金字塔在底部时更关注细节信息,而高层时更关注全局信息。所以提出了细节增强模块和低频增强模块
在这里插入图片描述

3.1 细节增强模块

在这里插入图片描述
分为上下文模块和边缘细节模块

3.2 低频增强模块

在这里插入图片描述
低频组件包含了图像中的大部分语义信息,它们是检测器预测的关键信息。为了丰富重构图像的语义,我们提出了低频增强滤波器(LEF)来捕获组件中的低频信息。我们首先通过卷积层将组件f转换为f。我们使用动态低通滤波器来捕获低频信息,并使用平均池化进行特征过滤,只允许低于截止频率的信息通过。不同语义的低频阈值是不同的。考虑到Inception的多尺度结构,我们使用了大小为1×1、2×2、3×3、6×6的自适应平均池化

4. 实验

数据:ExDark,7363张图像,10种不同的照度条件
训练:608x608,SGD, Batch=8, 30epoch,12个类

首先,将PE-YOLO与其他低光照增强模型进行了比较。由于低光照增强模型缺乏检测能力,他们将使用与PE-YOLO相同的检测器对所有增强后的图像进行实验。他们将mAP的IoU阈值设定为0.5,并展示了性能比较结果。结果发现,直接在YOLOv3之前使用低光照增强模型并不能显著提高检测性能
在这里插入图片描述
2,3,4应该都只是图像增强的方法。
在这里插入图片描述
虽然增强了图像但是检测指标并不是最好的

和其他暗光检测器的对比
结果显示,PE-YOLO在物体检测中更为准确。与DENet和使用LOL数据集预训练的IAT-YOLO相比,PE-YOLO在mAP上分别提高了0.7%和0.2%,并且PE-YOLO在FPS上也几乎是最高的。这些数据表明,PE-YOLO更适合在暗环境中进行物体检测。
在这里插入图片描述
在这里插入图片描述

网络结构对比实验
2个增强模块的有效性
在这里插入图片描述

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

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

相关文章

1700*C. Number of Ways(贪心前缀和)

Problem - 466C - Codeforces Number of Ways - 洛谷 解析: 首先判断所有数总和是否能被三整除。 之后遍历前缀和数组,如果某个位置的前缀和等于sum/3,则记录。 某个位置前缀和等于sum/3*2则记录答案。 注意由于分成三份,所以同…

Qt 设置软件的版本信息:QMake、CMake工程

本文借鉴了Qt 设置软件的版本信息 - 疯狂delphi - 博客园 (cnblogs.com) 在原文基础增加了CMake工程实现的方法。 Qt设置软件的版本等信息 对于Qt开发的软件,我们如何去方便的查看其软件的版本信息。这里提供了几种方式。 在运行程序期间设置版本信息 大部分的程序…

黑马点评-01基于Redis实现短信登陆的功能

环境准备 当前模型 nginx服务器的作用 手机或者app端向nginx服务器发起请求,nginx基于七层模型走的是HTTP协议,可以实现基于Lua直接绕开tomcat访问Redis nginx也可以作为静态资源服务器,轻松扛下上万并发并负载均衡到下游的tomcat服务器,利用集群支撑起整个项目 使用nginx部…

二分查找:34. 在排序数组中查找元素的第一个和最后一个位置

个人主页 : 个人主页 个人专栏 : 《数据结构》 《C语言》《C》《算法》 文章目录 前言一、题目解析二、解题思路1. 暴力查找2. 一次二分查找 部分遍历3. 两次二分查找分别查找左右端点1.查找区间左端点2. 查找区间右端点 三、代码实现总结 前言 本篇文…

力扣 -- 873. 最长的斐波那契子序列的长度

解题步骤&#xff1a; 参考代码&#xff1a; class Solution { public:int lenLongestFibSubseq(vector<int>& nums) {int nnums.size();unordered_map<int,int> hash;for(int i0;i<n;i){hash[nums[i]]i;}int ret2;vector<vector<int>> dp(n,v…

基于SSM的旅游网站设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

国庆看坚如磐石

坚如磐石上映了&#xff0c;可以在爱奇艺观看。 而博主在使用蓝牙耳机连接电脑的过程中&#xff0c;发现没有蓝牙开启选项&#xff0c;并且在服务的设备管理器中也没有找到&#xff0c;很明显这是缺少驱动导致的&#xff0c;因此便去联想官方网站下载对应的驱动。 这里可以输入…

外包做了3个月,技术退步明显。。。。。

先说一下自己的情况&#xff0c;大专生&#xff0c;17年通过校招进入广州某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…

python开发幸运水果抽奖大转盘

概述 当我女朋友跟我说要吃水果&#xff0c;又不知道吃啥水果时候&#xff0c;她以为难为到我了&#xff0c;有啥事难为到程序员的呢&#xff01; 今天用python利用第三方tkinterthreadingtime库开发一个幸运水果抽奖大转盘&#xff01;抽到啥吃啥 详细 老规矩&#xff01;咱…

初级数值计算理论总结

本文用于总结复习与研究生面试 一问&#xff0c;小伙子会不会数值计算啊一答&#xff1a;会二问&#xff1a;哦&#xff0c;讲讲看二答&#xff1a;讲不出来三问&#xff1a;...... 数值求根 二分法Jacobi 迭代法 Jacobi 迭代改进算法&#xff08;事后加速法&#xff09;&#…

频次直方图、KDE和密度图

Seaborn的主要思想是用高级命令为统计数据探索和统计模型拟合创建各种图形&#xff0c;下面将介绍一些Seaborn中的数据集和图形类型。 虽然所有这些图形都可以用Matplotlib命令实现&#xff08;其实Matplotlib就是Seaborn的底层&#xff09;&#xff0c;但是用 Seaborn API会更…

用JMeter对HTTP接口进行压测(一)压测脚本的书写、调试思路

文章目录 安装JMeter和Groovy为什么选择Groovy&#xff1f; 压测需求以及思路准备JMeter脚本以及脚本正确性验证使用Test Script Recorder来获取整条业务线上涉及的接口为什么使用Test Script Recorder&#xff1f; 配置Test Script Recorder对接口进行动态化处理处理全局变量以…

几种开源协议的区别(Apache、MIT、BSD、MPL、GPL、LGPL)

作为一名软件开发人员&#xff0c;你一定也是经常接触到开源软件&#xff0c;但你真的就了解这些开源软件使用的开源许可协议吗&#xff1f; 你不会真的认为&#xff0c;开源就是完全免费吧&#xff1f;那么让我们通过本文来寻找答案。 一、开源许可协议简述 开源许可协议是指开…

Iphone文件传到电脑用什么软件,看这里

在数字化时代&#xff0c;文件传输已经成为我们日常生活中不可或缺的一部分。然而&#xff0c;苹果用户在将手机文件传输到电脑时&#xff0c;往往会面临一些困扰。曾经的“文件传输助手”并不能完全满足用户的需求。于是&#xff0c;很多人开始寻找更便捷的解决方案。在本文中…

在Ubuntu上通过Portainer部署微服务项目

这篇文章主要记录自己在ubuntu上部署自己的微服务应用的过程&#xff0c;文章中使用了docker、docker-compose和portainer&#xff0c;在部署过程中遇到了不少问题&#xff0c;因为博主也是初学docker-compose&#xff0c;通过这次部署实战确实有所收获&#xff0c;在这篇文章一…

lv7 嵌入式开发-网络编程开发 06 socket套接字及TCP的实现框架

目录 1 socket套接字 1.1 体系结构的两种形式 1.2 几种常见的网络编程接口 1.3 socket套接字 2 socket常用API介绍 2.1 API 2.2 地址族结构体 2.3 套接字类型 2.4 socket套接字 3 TCP通信的实现过程 4 练习 1 socket套接字 1.1 体系结构的两种形式 网络的体系结构 …

【Python】如何使用PyInstaller打包自己写好的代码

使用PyInstaller打包自己写好的代码 零、需求 最近接到一个小单&#xff0c;需要批量修改文档内容&#xff0c;用Python做好后要打包成exe程序给客户的Win7电脑使用&#xff0c;此时需要用到PyInstaller打包自己的代码&#xff0c;想到还要有给用户试用的需求&#xff0c;所以…

Springboot+vue的开放性实验室管理系统(有报告)。Javaee项目,springboot vue前后端分离项目。

演示视频&#xff1a; Springbootvue的开放性实验室管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot vue前后端分离项目。 项目介绍&#xff1a; 本文设计了一个基于Springbootvue的前后端分离的开放性实验室管理系统&#xff0c;采用M&#xff08…

【C++设计模式之备忘录模式:行为型】分析及示例

简介 备忘录模式&#xff08;Memento Pattern&#xff09;是一种行为型设计模式&#xff0c;它用于保存和恢复对象的状态。备忘录模式通过将对象的状态封装成一个备忘录&#xff08;Memento&#xff09;&#xff0c;并将备忘录保存在一个管理者&#xff08;Caretaker&#xff…

阿里云GPU服务器新手购买流程(图文详解)

阿里云GPU服务器怎么购买&#xff1f;GPU云服务器购买流程很简单&#xff0c;在云服务器ECS页面&#xff0c;架构选择“GPU/FPGA/ASIC”&#xff0c;即可购买&#xff0c;阿里云服务器网分享阿里云GPU服务器购买流程&#xff0c;新手入门教程&#xff1a; 阿里云GPU服务器购买…