温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
基于
改进
YOLOv5s
算法
列车
驾驶员
手势
识别
泰国
第 4 5 卷 第 1 期2 0 2 3 年 1 月铁道学报JOUNAL OF THE CHINA AILWAY SOCIETYVol 45No 1January2 0 2 3文章编号:1001-8360(2023)01-0075-09基于改进 YOLOv5s 算法的列车驾驶员手势识别李泰国,张英志,张天策,陈小强(兰州交通大学 自动化与电气工程学院,甘肃 兰州730070)摘要:随着智能铁路的发展,人工智能技术得到广泛应用。通过深度学习对列车驾驶员手势实时检测,可提高检查驾驶员手势执行情况的效率,保证列车运行安全。针对现有手势识别算法识别精度低、检测速度慢、难以部署等问题,提出一种改进的 YOLOv5s 列车驾驶员手势识别算法。首先在原始主干网络的卷积操作之后添加CBAM 模块,加强重要特征信息,抑制次要特征信息;其次在颈部网络中引入 BiFPN 模块,在不过多增加计算量的情况下,更好地实现多尺度特征融合;最后通过改进的 K-means 聚类算法生成适合本文数据集的先验框,更好地提升预测框精准度,加强模型的识别性能。实验结果表明,本算法在测试集上平均精确率均值为 0.955,检测速度为 71 FPS,网络模型所占内存为 15.9 MB,验证了该算法具有识别精度高、检测速度快、模型内存占比小等优势,对于实现工程部署有重要意义。关键词:CBAM 模块;BiFPN 模块;YOLOv5s 算法;列车驾驶员;手势识别中图分类号:TP391.4文献标志码:Adoi:10.3969/j issn 1001-8360.2023.01.009Train Driver Gesture ecognition Based on Improved YOLOv5s AlgorithmLI Taiguo,ZHANG Yingzhi,ZHANG Tiance,CHEN Xiaoqiang(School of Automation and Electrical Engineering,Lanzhou Jiaotong University,Lanzhou 730070,China)Abstract:With the development of intelligent railways,artificial intelligence technology has been widely used eal-time detection of train driver gestures through deep learning can improve the efficiency of examining the implementationof driver gestures to ensure the safety of train operation To address the problems of low recognition accuracy,slow de-tection speed,difficult deployment of existing gesture recognition algorithms,an improved YOLOv5s train driver gesturerecognition algorithm was proposed Firstly,a convolutional block attention module(CBAM)was added after the convo-lution operation of the original backbone network to enhance the important feature information and suppress unnecessaryfeature information Secondly,the bidirectional feature pyramid network(BiFPN)was introduced into the neck networkto achieve multi-scale feature fusion without much increasing the amount of computation Finally,an improved K-meansclustering algorithm was used to generate prior frames suitable for the dataset of this paper to enhance the accuracy of thebounding box and improve the recognition performance of the model The experimental results show that the algorithmhas a mean average precision of 0.955 on the test set with the recognition speed of 71 FPS and 15.9 MB memory occu-pied by the model,verifying the algorithm advantages of high recognition accuracy,fast detection speed,and smallmemory occupation of the model,which are important for realizing engineering deploymentKey words:CBAM module;BiFPN module;YOLOv5s algorithm;train driver;gesture recognition收稿日期:2022-01-10;修回日期:2022-05-15基金项目:甘肃省科技计划(21J7A303);兰州交通大学青年科学基金(2020002)作者简介:李泰国(1985),男,甘肃靖远人,讲师,博士。E-mail:ltgwhu 126 com随着我国铁路运输的高速发展,对于列车的运行安全也提出更高的要求1。我国铁路定义了一套用于行车安全的手语2,在驾驶列车过程中要求驾驶员要做到“手比眼看口呼”,即在看到交通标志和收到控制中心的命令时必须及时做出相应手势并同时高声呼喊指令内容3。所以对行车过程中驾驶员手势进行精确识别显得尤为重要4。目前的识别方法需要通过观看监控摄像头记录的视频用肉眼去检查驾驶员手势的执行情况,检查效率较低,同时也不能兼顾高的准确率。而基于深度学习的算法能够实现对驾驶员手势的实时检测和识别5,这对于保证列车安全运行和提铁道学报第 45 卷高检查手势执行情况的效率都有着重要意义。早期的手势识别方法主要是佩戴数据手套6 和计算机视觉7。基于数据手套的识别方法有着较高的准确率,但是需要配合一定数量的传感器,较多的硬件设施导致较大的不便性8。计算机视觉降低了硬件成本,同时带来更多的便携性9。传统的计算机视觉手势识别分为 3 个步骤,首先是对手势进行检测和分割,其次对手势特征进行提取,最后是手势识别10。较多的研究人员将研究重心都集中在了手势特征的提取上,通过肤色纹理和形态姿势等将手势分割出来,利用支持向量机等分类方法实现手势识别。王龙等11 使用肤色模型对手势进行检测,但是依然存在识别精度低、泛化能力较差等问题。文献 12-14 中通过利用手势边缘区域结构作为特征进行手势识别,虽然具有一定的适应性,但是模型的学习能力较弱,在样本数量增加时,其检测精度的提升幅度很低。Danilo 等15 提出了一种利于循环神经网络和跳跃运动控制器的手势识别算法,将手指骨形成的角度和指尖位置作为特征进行训练,最终在 ASL 数据集上能达到 97.62%的准确率,但是这种方法对设备性能要求高,便携性较差。随着深度学习中目标检测这一方向的发展,Gir-shick 等16 在 2014 年 CVP 会议上提出-CNN 目标检测网络,该网络是将 CNN 方法应用于目标检测问题上的一个里程碑;次年又在 ICCV 会议上提出了改进版本 Fast-CNN17。何恺明等18 在 2016 年 NIPS 会议上提出 Faster-CNN,同年 CVP 会议上也诞生了经典的一阶段目标检测网络 YOLO19。吴晓凤等20 提出的基于 Faster-CNN 的手势识别算法,虽然较于传统算法有着更高的精确率,但是同时存在复杂背景下识别效果较差问题。Chang 等21 提出了一种改进的 Faster-CNN 手势识别算法,最终在 NUS-II 手势数据集上识别精度能够达到 99.89%,但是由于是二阶段的识别算法所以存在识别速度较慢的问题,这对于实现手势的实时检测是困难的。而一阶段的目标检测算法 YOLO 系列,凭借着较快的检测速度和较高的识别性能依然受到大多数研究人员的青睐。2017 年CVP 会议上 edmon 等22 提出 YOLOv2 算法,紧接着在 2018 年又提出了 YOLOv323 算法。张强等24 提出了基于 YOLOv3 的手势识别算法,该算法仅对于静态手势有着较高的识别精确率,没有实现对动态手势的识别,且存在泛化能力差、网络模型内存占比较大难以实现工程部署等问题。王粉花等25 在 YOLOv3 系列的 快 速 版 本 YOLOv3-tiny 上 进 行 改 进,提 出 了YOLOv3-tiny-T 的手势识别算法,最终在 UST 数据集上相较于原始模型提升了 5%的精确率,此算法虽然识别速度快,但是整体的平均精确率均值依旧不高。卢迪等26 提出了 YOLOv4-tiny 的手势识别算法,虽然在 NUS-手势数据集上能达到较高的识别精度,但是对于小目标手势的检测效果不好,预测框对目标定位依然会出现偏差和识别不准确的问题。通过对以上手势识别算法的分析,可以发现其都存在一定缺陷和局限性,如识别性能不高,检测速度慢,网络模型较大等,且对于小目标手势识别和复杂背景下识别的效果也有待提高。为此本文提出改进的YOLOv5s 算法,经实验验证本算法相较于之前算法有着较高的识别精度和较快的检测速度,并且最终训练的网络模型内存占比很小,易于实现工程部署,且网络模型对于小目标及复杂背景下手势识别表现较好,对于实现列车驾驶员的手势识别有重要意义。1YOLOv5s 算法YOLOv5s 算法网络结构见图 1,主要由主干网络(Backbone)、颈部(Neck)和输出端(Output)三部分组成。其中,主干网络对输入的图片进行特征提取,包括切片结构(Focus)、卷积模块(Conv)、瓶颈层(C3)和空间金字塔池化(SPP);颈部对提取的特征进行融合,将自顶向下传达强语义特征和自底向上传达强定位特征进行结合,实现从不同的主干层对不同检测层进行特征融合;在进行以上操作后传入检测层,通过非极大值抑制对多目标框进行筛选,最后输出置信度值最高的预测类别,并返回目标位置的预测框坐标。图 1YOLOv5s 算法网络结构2改进 YOLOv5s 算法2.1CBAM 模块CBAM 是一种用于前馈神经网络的简单有效的注67第 1 期李泰国等:基于改进 YOLOv5s 算法的列车驾驶员手势识别意力机制模块,其整体结构见图 2,主要由通道注意力模块和空间注意力模块组成。CBAM 模块在接收到中间特征图之后,会沿着通道和空间上的两个独立维度进行处理,将处理后得到的特征图与输入时的特征图相乘从而实现自适应的特征优化。CBAM 为轻量级模块,可以在不增加过多计算量的前提下无缝集成至任何 CNN 架构中,并且可以实现与基础 CNN 结构一起进行端到端的训练。图 2CBAM 整体结构在原始的 YOLOv5s 主干网络中,提取特征时卷积层主要计算每个特征图相邻位置的特征信息,由于特征图中每个通道都含有不同特征信息,所以卷积层会忽略通道信息之间的相关映射。列车驾驶员在