目标检测论文解读复现【NO.24】改进 YOLOv5s 的轨道障碍物检测模型轻量化研究

news2024/9/25 9:37:03
前言
此前出了目标改进算法专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读最新目标检测算法论文,帮助大家解答疑惑。解读的系列文章,本人已进行创新点代码复现,有需要的朋友可关注私信我。

一、摘要

针对传统列车轨道障碍物检测方法实时性差和对小目标检测精度低的不足,提出一种改进 YOLOv5s 检测网络的轻量化障碍物检测模型。首先引入更加轻量化的 Mixup 数据增强方式,替代算法中原有的 Mosaic 数据增强方式;其次引入 GhostNet 网络结构中的深度可分离卷积 GhostConv,替代原有 YOLOv5s 模型中特征提取网络与特征融合网络中的普通卷积层,减小了模型的计算开销;在模型特征提取网络末端加入 CA 空间注意力机制,让算法在训练过程中减少了重要位置信息的丢失,弥补了改进 GhostNet 对检测精度的损失;最后将改进后的模型进行稀疏训练和通道剪枝操作,剪枝掉对检测精度影响不大的通道,同时保留重要的特征信息,使模型更加轻量化。实验结果表明,改进后的模型在自制的多样化轨道交通数据集上相较于原始 YOLOv5s 算法在模型大小减小了 9.7MB,FPS 提高了 14 的前提下,检测精度提升了 1.0%。同时与目前主流的检测算法对比在检测精度与检测速度上也具有一定的优越性,适用于复杂轨道交通环境下的障碍物目标检测

二、网络模型及核心创新点

解读:这篇文章创新点主要在于制作了自己的数据集,属于应用创新;同时增加了几个比较常见的trick,同时整篇文章做的实验工作比较多,内容比较充实。

  1. Mixup 数据增强方式

  1. 引入 GhostNet 网络结构中的深度可分离卷积 GhostConv

  1. CA 空间注意力机制

  1. 稀疏训练和通道剪枝操作

三、应用数据集

2021 年 11 月远程采集于湖南中车集团试验场地,运用 Opencv 来读取视频并将视频进行逐帧保存,帧率选定为 5 帧每秒。本文采集了多种场景下不同时段的轨道列车运行视频,样本数据丰富,为建立多样化数据集奠定了良好基础。

四、实验效果(消融实验)

五、实验结论

实验结果表明,改进后的 YOLOv5s-MGCT 算法在自制的轨道交通数据集上的检测精度相较于原始YOLOv5s 算法提高了 1.0%,模型体积减小了 9.7MB,FPS 提高了 14,在保持轻量化的同时小幅提高了检测精度。相比于其他主流检测算法,在具有一定的速度和体量优势的同时保持了较高的检测精度。综上所述,本文提出的算法适合复杂轨道交通环境下的目标检测,具有一定的可行性与优越性。

六、投稿期刊介绍

注:论文原文出自李昂,孙士杰,张朝阳,冯明涛,吴成中,李旺.改进 YOLOv5s 的轨道障碍物检测模型轻量化研究[J/OL].计算机工程与应用.https://kns.cnki.net/kcms/detail/11.2127.TP.20221026.1944.014.html

解读的系列文章,本人已进行创新点代码复现,有需要的朋友可关注私信我

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

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

相关文章

Cadence PCB仿真使用Allegro PCB SI生成反射仿真报告及报告导读图文教程

🏡《Cadence 开发合集目录》   🏡《Cadence PCB 仿真宝典目录》 目录 1,概述2,生成报告3,报告导读4,总结1,概述 本文简单介绍使用Allegro PCB SI生成网络的反射性能评估的报告的方法,及反射报告要点导读。 2,生成报告 第1步,选择需要生成报告的网络,然后单击右…

(侯捷C++)1.2面向对象高级编程(上)

1.整体结构 2.三大函数:拷贝构造,拷贝赋值,析构 拷贝构造:第一次出现对象,使用拷贝构造进行创建,例如:String s3(s1)。拷贝赋值:对象已经构造,重新赋值,例如…

人工智能辅助药物发现(4)药物重定位

目录药物重定位概述药物重定位数据库表示学习基于序列的表示学习基于图的表示学习药物重定位深度学习以靶点为中心以疾病为中心药物重定位的应用药物重定位概述 新药物的研发投资巨大,周期漫长。从获批准的临床药物中有效识别新的适应药物在药物发现中起到重要作用…

cc123 靶场测试笔记

1.cc123 靶场介绍本靶场存在四个 flag 把下载到的虚拟机环境导入到虚拟机,本靶场需要把网络环境配置好。1.1.网络示意图2. 信息收集2.1.主机发现sudo netdiscover -i eth0 -r 192.168.0.0/242.2.masscan 端口扫描sudo masscan -p 1-65535 192.168.1.102 --rate10002…

Elasticsearch7.8.0版本高级查询—— 高亮查询文档

目录一、初始化文档数据二、高亮查询文档2.1、概述2.2、示例一、初始化文档数据 在 Postman 中,向 ES 服务器发 POST 请求 :http://localhost:9200/user/_doc/1,请求体内容为: { "name":"zhangsan", "ag…

<Python的文件>——《Python》

目录 1.文件 1.1 文件是什么 1.2 文件路径 1.3 文件操作 1.3.1 打开文件 1.3.2 关闭文件 1.3.3 写文件 1.3.4 读文件 1.3.5 关于中文的处理 1.4 使用上下文管理器 1.文件 1.1 文件是什么 变量是把数据保存到内存中. 如果程序重启/主机重启, 内存中的数据就会丢失.…

23种设计模式(十八)——组合模式【数据结构】

文章目录 意图什么时候使用组合真实世界类比组合模式的实现组合模式的优缺点亦称: 对象树、Object Tree、Composite 意图 有时又叫作整体-部分(Part-Whole)模式,是一种将对象组合成树状的层次结构的模式,用来表示“整体-部分”的关系,使用户对单个对象和组合对象具有一致…

【并发编程】Executor线程池

一、线程 1.线程 线程是调度CPU资源的最小单位。java线程与OS线程保持1:1映射关系,也就是说,一个Java线程也会在操作系统里有一个对应线程。 2.线程的生命周期 NEW,新建 RUNNABLE,运行 BLOCKED,阻塞 WAITING,等待 TIMED_WAITING,超时等待 TERMINATED…

超级完整的 Git 下载、安装与配置

Git的下载、安装与配置 一、git下载安装 1、访问git官方下载网址,点击这里,然后根据自己的电脑系统,下载对应的安装包: 2、在淘宝镜像网站 下载对应的安装包: 注: 如果由于官网下载速度过于缓慢&#xff…

String 有趣简单的编程题

String 有趣简单的编程题 每博一文案 师父说: 世上没有真正的感同身受,也没有谁能完全做到将心比心,我们一路走来。 慢慢的学会了收敛情绪,越成熟越沉默,有些人,背负沉重的压力,却从来不敢说累&#xff0c…

[python刷题模板] 树的直径/换根DP

[python刷题模板] 树的直径/换根DP 一、 算法&数据结构1. 描述2. 复杂度分析3. 常见应用4. 常用优化二、 模板代码1. 单纯询问树的直径值2. 求出树的直径两端搞事情3. 换根DP求树的直径(大炮打蚊子,别这么做,只是用来帮助理解换根DP)4. 换根dp求特定…

UDS诊断系列介绍14-2F服务

本文框架1. 系列介绍1.1 2F服务概述2. 2F服务请求与应答2.1 2F服务请求2.2 2F服务正响应2.3 2F服务否定响应3. 2F诊断使用示例4. Autosar系列文章快速链接1. 系列介绍 UDS(Unified Diagnostic Services)协议,即统一的诊断服务,是…

学习记录667@项目管理之项目人力资源管理

什么是项目人力资源管理 项目人力资源管理包括编制人力资源管理计划、组建项目团队、建设项目团队与管理项目团队的各个过程,不但要求充分发挥参与项目的个人的作用,还包括充分发挥所有与项目有关的人员-----项目负责人、客户、为项目做出贡献的个人及其…

[QMT]04-在QMT之外调用xtquant直接编写策略

背景希望不用在QMT软件里面憋屈地写代码,想使用pychar、vscode、notepad等IDE编写python代码,因为有代码提示、补全。这完全没问题!QMT简直是为个人量化交易者量身打造的神器,它支持以上想法。QMT这个东东基本是由两部分组成的&am…

1. 深度学习简介|计算机视觉简介|得分函数|损失函数作用|前向传播整体流程

文章目录深度学习简介计算机视觉简介k近邻算法得分函数损失函数作用前向传播整体流程机器学习是一个大块,其中就包含着深度学习,计算机视觉等 机器学习的流程: 数据获取特征工程建立模型评估与应用 深度学习简介 深度学习通过特征学习进行…

力扣sql简单篇练习(四)

力扣sql简单篇练习(四) 1 超过五名学生的课 1.1 题目内容 1.1.1 基本题目信息 1.1.2 示例输入输出 1.2 示例sql语句 SELECT class FROM Courses GROUP BY class HAVING count(student)>51.3 运行截图 2 超过经理收入的员工 2.1 题目内容 2.1.1 基本题目信息 2.1.2 示例…

零信任-发展历程及概念(1)

零信任发展历程 2010 Forrester约翰金德维格正式提出零信任概念 2013 CSA成立软件定义边界SDP工作组,次年发布SDP标准规范1.0 2017 Gartner正式提出“CARTA”零信任模型 2018 Forrester发表零信任扩展模型ZTX 2019 Gartner发布零信任网络(ZTNA)云安…

String 与 StringBuffer 与 StringBuilder 各自的妙用

String 与 StringBuffer 与 StringBuilder 各自的妙用 每博一文案 我从未见过,一个早起,勤奋,谨慎,诚实的人,抱怨命运不好的。 最完美的状态,不是你从不失误,而是你从没放弃成长。没人能把你变…

【SpringMVC】看完这篇简单理解并入门SpringMVC:通过入门案例举例子的方式快速理解

SpringMVC简介1.什么是MVC2.什么是SpringMVC3.SpringMVC的特点4.入门案例1.准备工作2.配置web.xml3.创建请求控制器4.创建SpringMVC的配置文件5.测试HelloWorld6.总结1.什么是MVC MVC是一种软件架构的思想,将软件按照模型、视图、控制器来划分 M:Model&…

【Java】比较器 Comparator Comparable

一、背景 我们在使用 Collections.sort() 对链表进行排序(或者使用 Arrays.sort() 对数组进行排序)时,常常需要根据不同情况自定义排序规则。比如:当我们存储学生对象时,我们需要按照学生年龄进行排序,这时…