实验室ICPR 2024论文分享┆DS MYOLO:一种基于状态空间模型的驾驶场景可靠目标检测器

论文分享·简介

本推文详细介绍了一篇实验室的最新论文成果《DS MYOLO: A Reliable Object Detector Based on SSMs for Driving Scenarios》,该论文已被第27届国际模式识别大会(ICPR)接收,论文的第一作者为李杨。论文提出了一种基于状态空间模型(SSM)的实时目标检测器(DS MYOLO)来精确检测驾驶场景下的多尺度变化目标,从而增强自动驾驶辅助系统的安全性。通过在交通标志数据集CCTSDB 2021和车辆标志数据集VLD-45上的实验比较,验证了DS MYOLO能够更加可靠的检测多尺度目标,与类似规模的YOLO系列实时目标检测器(YOLOv5-v10)相比,DS MYOLO表现出显著的潜力和竞争优势。本推文由李杨撰写,审校为陆新颖和朱旺。

原文链接:

http://arxiv.org/abs/2409.01093

1. 会议介绍

第27届国际模式识别大会(ICPR)将于2024年12月1日至5日在印度加尔各答隆重举行。ICPR起始于1972年,是国际模式识别联合会(IAPR)组织的模式识别领域的旗舰学术会议,每两年召开一次,主办国家或地区由国际模式识别联合会的理事会提前四年经无记名投票决定。大会涵盖了计算机视觉、机器学习、图像、语音、传感器模式处理等多个热门研究领域。ICPR为中国人工智能学会(CAAI)B类会议,中国计算机学会(CCF)C类会议。

2. 研究背景及主要贡献

近年来,深度学习的快速发展不断为计算机视觉提供新的见解。在自动驾驶场景中,实时检测和准确识别交通标志和车辆身份对于提高辅助驾驶系统的安全性至关重要。然而,驾驶场景中的目标尺度和大小往往差异较大,导致视觉特征不显著,且容易受到噪声干扰,这将对辅助驾驶系统造成潜在的安全隐患。近年来,基于卷积神经网络(CNN)的YOLO网络因其损耗小且性能高而受到学术界和工业界的广泛关注。然而,CNN的局部关注性导致难以有效检测不同尺度的目标。虽然Transformer的自注意力具有全局建模效应,但其二次计算复杂度导致计算成本较大。最近,基于状态空间模型的Mamba凭借其线性复杂度和全局选择性扫描机制,在自然语言、视觉等领域受到了许多研究人员的关注。鉴于Mamba的出色表现,我们提出了一种新颖可靠的目标检测器:称为DS MYOLO。我们的贡献可以概括为:

1)我们设计了一种简化的扫描融合模块(SimVSS Block),该模块主要由Mamba块与前馈网络串联组成,并通过残差连接增强梯度通信,在享受较低的计算成本下促进深层特征的进一步融合。

2)提出了一种高效通道注意力卷积算子(ECAConv),通过解耦卷积的输出通道并执行跨通道的注意力交互,ECAConv显著建立了通道之间的依赖关系并增强表示,同时保持与标准卷积类似的计算复杂度。

3)我们基于提出的SimVSS Block和ECAConv,进一步设计了不同规模的DS MYOLO(-N/-S/-M)实时目标检测器。在CCTSDB 2021和VLD-45上与最先进的实时目标检测器相比,DS MYOLO表现出强大的竞争力。

3. 方法

图1 DS MYOLO的整体架构

DS MYOLO的整体架构如图1所示。在主干网络中,Stem由SC、批量归一化和SiLU激活函数组成,顺序堆叠并下采样两次,产生大小为H/4和W/4,通道为C1的特征向量。为了有效提取主干网络中丰富的特征,采用ECAConv进行步幅为2的下采样,并利用ECACSP进一步捕获丰富的局部特征。我们在颈部网络之前引入了融合层,该融合层使用三个SimVSS Block来实现特征层{P3, P4, P5}的深度融合,同时享受较低的计算复杂度。在颈部网络中,我们遵循PAFPN的架构并通过ECACSP来提取不同尺度的特征。我们使用了最新的无NMS的解耦头设计(YOLOv10),它有效地解码输入中的小、中、大型目标,并高效地执行检测。

4. 实验

(1)实施细节

我们在PyTorch框架内使用单个NVIDIA 4090GPU进行实验。所有实验均从头开始训练200个Epoch,不使用任何预训练权重。使用SGD优化器,并有3个Epoch的预热期,将初始学习率从0.01降到0.0001,动量大小为0.937。输入大小固定为640×640,批量大小为16。数据增强策略包括随机缩放、平移和Mosaic等,并在最后10个Epoch禁用Mosaic。

(2)实验结果

我们将所提出的DS MYOLO与YOLO系列中其他最新最先进的实时目标检测器进行比较,其中包括YOLOv5-v10,以及Gold-YOLO,使用的指标包括模型参数量(M),计算量(G),mAP(%),检测框精度(%)和召回率(%)。

如表1所示,我们在CCTSDB 2021上将不同版本的DS MYOLO与最先进的YOLO实时目标检测器进行了比较。总体来说,DS MYOLO在多个指标上都表现出色,在轻量级模型中,DS MYOLO-N以4M参数量和9G计算量实现了52.22%的最高准确率和88.1%的检测框精度。进一步扩大模型规模时,DS MYOLO(-S/-M)仍然保证了可靠的检测性能,并明显超越了现有最先进的实时目标检测器。

表1 在CCTSDB 2021上与最先进的YOLO实时目标检测器的性能比较

如表2所示,我们在VLD-45上对轻量级的实时目标检测器进行了对比评估。几种轻量级模型的检测精度均达到了95%以上。在mAP方面,我们的DS MYOLO取得了最高的mAP、mAP50和mAP75。在检测框精度和召回率方面,DS MYOLO仍然表现最优,分别达到 97.7% 和 93.2%。总体而言,DS MYOLO 在整体性能方面表现较好,这表明在目标尺度变化剧烈的驾驶场景中,DS MYOLO具有更加可靠的性能。

表2 在VLD-45上与最先进的YOLO实时目标检测器的性能比较

(3)CAM可视化

图2展示了YOLOv5,YOLOv8,YOLOv10和DS MYOLO在CCTSDB 2021上的CAM可视化结果。可以看出,我们的DS MYOLO能够准确地检测到目标位置,并为检测区域分配更高的权重。此外,DS MYOLO能够聚焦不同尺度的目标,从而降低误检率。

图2 在CCSTDB 2021上的CAM可视化结果

5. 总结

论文提出了一种基于SSM的实时目标检测器(DS MYOLO)来精确检测驾驶场景下的多尺度变化目标,从而增强自动驾驶辅助系统的安全性。设计的SimVSS Block有效增强了深度网络中的特征融合。此外,所提出的高效通道注意力卷积(ECAConv)显著增强了跨通道特征交互。在CCTSDB 2021交通标志数据集和VLD-45车辆标志数据集上进行的大量实验表明,我们的DS MYOLO在同等规模的YOLO系列实时目标检测器中实现了最高性能,并表现出强大的竞争力。

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

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

相关文章

Elasticsearch Mapping 详解

1 概述 映射的基本概念 Mapping 也称之为映射,定义了 ES 的索引结构、字段类型、分词器等属性,是索引必不可少的组成部分。 ES 中的 mapping 有点类似与DB中“表结构”的概念,在 MySQL 中,表结构里包含了字段名称,字…

CRIO与Windows下LabVIEW开发对比

LabVIEW在CRIO和Windows平台上开发时,尽管同属于一个编程环境,但在硬件架构、实时性能、模块化设计等方面存在显著差异。CRIO系统通常应用于工业自动化和嵌入式控制,具有实时操作系统支持和强大的I/O扩展能力;而Windows系统则更适…

《机器学习》文本数据分析之关键词提取、TF-IDF、项目实现 <上>

目录 一、如何进行关键词提取 1、关键词提取步骤 1)数据收集 2)数据准备 3)模型建立 4)模型结果统计 5)TF-IDF分析 2、什么是语料库 3、如何进行中文分词 1)导包 2)导入分词库 3&#xff09…

今年读过最绝的大模型神书死磕这本大模型神书!看完直接脱胎换骨!!

书名📖:《大语言模型:基础与前沿》 该书深入阐述了大语言模型(Large Language Model, LLM)的基本概念和算法、研究前沿以及应用,内容全面且系统性强,适合👨🏻‍&#x1…

Prometheus + Grafana + nVisual 实现运维监控全面可视化

Prometheus主要实现采集、存储、查询设备数据指标、告警等功能;Grafana通过Prometheus的API以仪表板的形展示数据,同时在线提供了大量监测数据展示模版。然而,实际运维中我们不仅需要实时监测数据,还需要了解设备的物理位置、拓扑…

3.js - modelPosition.z = sin((modelPosition.x+uTime)*10.0)*0.05;

哈 1、完整的动态波纹效果吧 main.js import * as THREE from three import { OrbitControls } from three/examples/jsm/controls/OrbitControls// 顶点着色器 import basicVertexShader from ./shader/11-01/raw/vertex.glsl?raw // 片元着色器 import basicFragmentShad…

使用docker安装jenkins,然后使用jenkins本地发版和远程发版

使用docker安装jenkins,然后使用jenkins本地发版和远程发版 1、安装docker 1.安装必要的一些系统工具 sudo yum install docker-ce 2.添加软件源信息 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 3.更新…

内推|京东|后端开发|运维|算法...|北京 更多岗位扫内推码了解,直接投递,跟踪进度

热招岗位 更多岗位欢迎扫描末尾二维码,小程序直接提交简历等面试。实时帮你查询面试进程。 安全运营中心研发工程师 岗位要求 1、本科及以上学历,3年以上的安全相关工作经验; 2、熟悉c/c、go编程语言之一、熟悉linux网络编程和系统编程 3、…

102.二叉树的层次遍历的算法实现及详解

二叉树的层次遍历 题目 102. 二叉树的层序遍历 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]] 示例 2: 输入:root = [1] 输出:[[1]] 示例 3…

解析查看elf文件的构成

x86下用clang编译一段c代码,编译成elf文件,读elf文件,dump出里面的所有段,并打印出段中的数据和含义以及汇编的内容 编写C代码 首先,编写一个简单的C程序,例如命名为example.c: 使用Clang编…

您知道tar、xz、zip这三种不同压缩方式的区别吗?

tar、xz、zip是三种不同的压缩和打包格式,它们在压缩算法、使用场景、兼容性等方面存在一定的差异。以下是对这三种格式的比较: 1. 压缩算法 tar:tar本身并不进行压缩,它只是一种打包工具,将多个文件和目录打包成一个…

springboot整合Logback

Logback介绍 描述 Logback是由log4j创始人设计的另外一种开源日志组件,性能比log4j要好。相对是一个可靠、通用、快速而又灵活的Java日志框架。 Logback主要分三个模块 1、logback-core:其他两个模块的基础模块 2、logback-classic:它是lo…

10、Django Admin修改标题

admin from django.contrib import admin from .models import Category, Origin, Hero, Villain # 添加以下代码 admin.site.site_header "系统管理" admin.site.site_title "管理员界面" admin.site.index_title "欢迎来到这里&#xff…

TCP如何关闭连接(详细版)

关闭连接的⽅式通常有两种,分别是 RST 报⽂关闭和 FIN 报⽂关闭。 如果进程异常退出了,内核就会发送 RST 报⽂来关闭,它可以不⾛四次挥⼿流程,是⼀个暴⼒关闭连接的⽅式。 安全关闭连接的⽅式必须通过四次挥⼿,它…

【STM32】通用定时器TIM(输入捕获)

本篇博客重点在于标准库函数的理解与使用,搭建一个框架便于快速开发 目录 前言 输入捕获简介 输入捕获配置 初始化IO口 输入捕获初始化 选择触发源及从模式 测量频率方法 输入捕获代码 IC.h IC.c 输入捕获测占空比 前言 建议先阅读这篇博客&#xf…

Unity编辑器开发 Immediate Mode GUI (IMGUI)

1. 简介: IMGUI是代码驱动gui系统,由 OnGUI 函数驱动: void OnGUI() {if (GUILayout.Button("Press Me")){ Debug.Log("Hello!");} } IMGUI常用于: 创建 in-game debugging displays and tools&#xff1b…

vs2019编译opencv+contribute+gpu

1、提前准备 vs2019、opencv4.4.0、opencv-contribute4.4.0、CUDA Toolkit 11.8(不能高于自己电脑的CUDA版本)、CUDNN8.9.6 ps:先提前准备环境 1)cmd中查看:nvidia-smi查看自己的显卡信息,不存在下述信息…

使用python+opencv解析图像和文本数据

1. 创建虚拟环境 新建文件夹, 并在文件夹中创建虚拟环境,可以使用Vscode打开文件夹, 然后在终端中输入以下命令: python -m venv venv2. 激活虚拟环境 在终端中输入以下命令: venv\Scripts\activate3. 安装依赖 在终端中输入以下命令: pip install opencv-pythonpip inst…

《JavaEE进阶》----7.<SpringMVC实践项目:【登录页面的验证】>

这篇文章详细的讲解了一个 简单的登录网页的前端代码和后端代码的构造 使用了JavaScript中的ajax来进行前后端的交互 一、前端代码 登录页面代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>登录…

CSS解析:盒模型

在网页上实现元素布局涉及很多技术。在复杂网站上&#xff0c;可能会用到浮动元素、绝对定位元素以及其他各种大小的元素&#xff0c;甚至也会使用较新的CSS特性&#xff0c;比如Flexbox或者网格布局。 在此之前我们要打好基础&#xff0c;深刻理解浏览器是如何设置元素的大小…