【目标检测论文解读复现NO.20】基于改进Yolov5的地铁隧道附属设施与衬砌表观病害检测方法
前言
此前出了目标改进算法专栏,但是对于应用于什么场景,需要什么改进方法对应与自己的应用场景有效果,并且多少改进点能发什么水平的文章,为解决大家的困惑,此系列文章旨在给大家解读最新目标检测算法论文,帮助大家解答疑惑。解读的系列文章,本人已进行创新点代码复现,有需要的朋友可关注私信我。
一、摘要
随着地铁隧道服役时间增长,隧道衬砌在多因素影响下病害频发,对隧道结构及临近附属设施造成不良影响,严重危及到行车安全。因此,亟需精确高效的地铁隧道病害及设施检测技术。然而地铁隧道存在内部环境复杂,附属设施与衬砌病害纹理及灰度相似、目标尺度不一等检测难点,传统的人工巡检及数字图像处理方法均存在局限。针对上述问题,本文提出一种基于改进Yolov5的地铁隧道附属设施及衬砌表观病害检测模型。针对设施及病害的位置特征引入坐标注意力(Coordinate attention)引导模型对目标区域赋予更高权重,抑制背景噪声;采用BiFPN(Bi-directional Feature Pyramid Network)特征融合网络提升小目标病害检测效果;并利用GhostBottleneck替代部分卷积减少模型参数,提高检测效率。为验证改进后模型检测性能,进行了现场实验,构建了样本数量为843的地铁隧道衬砌图像数据集。并采用随机裁剪、镜像翻转等数据增强方法,将样本量扩充至4072。数据集上的实验结果表明,改进模型的平均精度均值(m AP)可达89.2%,较原模型提高了3.7%,有效提升了隧道环境中小目标病害的检测效果。且模型参数减少了12%,更有利边缘端部署。相比于其他隧道检测模型,改进后的模型在综合性能上更具优势,可为地铁隧道衬砌病害实时检测和附属设施数字化提供技术支持。
二、网络模型及核心创新点
- Yolov5模型
- 面向地铁隧道的改进模型
三、应用数据集
采集到的单幅原始图像分辨率为6359×5883,每幅对应衬砌管片16-20环,在实际隧道中的尺寸比例为200像素/m。为保证数据集的标注有效性,对原图像沿环片及衬砌纹理进行自动分割。并建立了分割后图片与原图片间索引,保留里程及位置信息。分割后衬砌图像数据为843张,每张图片对应实际衬砌管片的横向尺寸为1.5m~1.7m,纵向尺寸为2m~5m,以此作为本次实验的基础数据集。
四、实验效果(部分展示)
1. 下表对比了改进模型与原模型在测试集上的表现。两模型对地铁隧道内的附属设施及螺栓孔目标均取得了较好的检测效果,其中改进后模型在测试集上的F1值及平均精度(AP)均稍高出原模型。
2. 下图列举了部分测试集中的图片在原模型及改进后模型中的推理结果。(左侧原模型 右侧改进模型)
五、实验结论
1)提出一种改进的Yolov5模型,用于快速、准确的检测地铁隧道中的附属设施及衬砌病害。改进后模型检测精度达89.2%,可自动识别隧道各类附属设施和表观病害。
2)在模型优化过程中,引入Coordinate attention以及BiFPN特征融合网络,充分利用了各类目标的位置特征,提高了对细微裂缝、设施遮挡下病害等小目标的检测能力,有效解决了地铁隧道复杂环境中背景噪声影响以及小目标病害检测等难点。
3)采用GhostBottleneck实现了检测模型的轻量化,将优化参数减少了12%,降低了模型参数,权重文件大小仅为12.2MB,更利于边缘部署,实现实时检测。
六、投稿期刊介绍
注:论文原文出自朱家松,郑澳,雷占占,练敏青,杨军伍,李林超.基于改进Yolov5的地铁隧道附属设施与衬砌表观病害检测方法[J/OL].铁道科学与工程学报.
https://doi.org/10.19713/j.cnki.43-1423/u.T20220712
解读的系列文章,本人已进行创新点代码复现,有需要的朋友可关注下面公众号,私信我。
相关文章
- Linq 联合条件查询快捷方法
- struts2的通配符与动态方法调用
- Nginx的https配置记录以及http强制跳转到https的方法梳理
- linux yum清除var目录下缓存的方法
- Python进阶学习之特殊方法实例详析
- Visual Event插件----查看html元素绑定的事件与方法的利器
- Linux启动/停止/重启Mysql数据库的方法
- Java多线程学习笔记 - 六、使用Thread.join()方法
- 【论文复现】——利用特征点采样一致性改进ICP算法点云配准方法
- 【论文复现】——基于SAC_IA和NDT融合的点云配准方法
- Open3D(C++) 【论文复现】——Patchwork++:基于点云的快速稳健地面分割方法
- Paper之ACL&EMNLP:2009年~2019年ACL计算语言学协会年会&EMNLP自然语言处理的经验方法会议历年最佳论文简介及其解读
- 100天精通Python(数据分析篇)——第70天:Pandas常用排序、排名方法(sort_index、sort_values、rank)
- WebRTC 教程三:WebRTC特性,调试方法以及相关服务器搭建方法
- 华为开发者大会HDC.Cloud硬核技术解读:知识图谱构建流程及方法
- linux下的缓存机制及清理buffer/cache/swap的方法梳理
- Java Document生成和解析XML(DOMHelper.createDocument()方法过期了)
- Pytest测试框架基本使用方法详解
- 【测试入门】测试用例经典设计方法 —— 因果图法
- 《论文阅读》任务型对话系统——融合KB实体的方法
- 《论文阅读》统一自然语言理解任务方法(span抽取+生成)
- 论文笔记:基于特征选择与增量学习的非侵入式电动自行车充电辨识方法
- 【目标检测论文解读复现NO.32】基于改进YOLO的飞机起降阶段跟踪方法
- 目标检测论文解读复现之六:基于YOLOv5的遥感图像舰船的检测方法