基于STN-GhostNet,的轻量化交通标志识别模型

发布时间:2023-09-30 17:36:02 来源:网友投稿

张成涵宇,林钰哲

(杭州电子科技大学 电子信息学院,浙江杭州,310018)

随着自动驾驶相关技术的不断发展,交通标志的快速、准确识别逐渐成为了深入发展自动驾驶系统的重要部分。其通过对车辆行驶过程中拍摄的交通标志图像进行识别和分类,可以为自动驾驶系统的进一步操作判断提供一定的指示或警告。目前随着深度学习技术的不断发展,已经出现了一系列运用YOLO 模型实现交通标志识别的方法[1,2]。但由于YOLO 系列本身模型尺寸较大,模型本身参数量较多,导致其识别交通标志的速度较慢,这将对自动驾驶的安全性产生一系列的负面隐患。为了保证实际交通标志识别的时效性与精确性,本文提出了一种新型的轻量化模型。通过将Spatial Transformer Networks(STN)网络模块以及GhostNet 网络模块结合来替换原先YOLOv5s 的主干网络,并对其进行剪枝操作来实现轻量化处理,可以在保证原YOLOv5s 网络识别精度的前提下大幅提高交通标志图像的识别速度,减小模型尺寸,从而便于后续部署在自动驾驶系统中。

■1.1 GhostNet 模型

目前,一些科研工作者认为神经网络中丰富甚至具有冗余信息的特征图对于其能够充分理解输入的图像数据至关重要。因此,为了使模型能够以轻量高效的方式实现图像的特征提取,华为诺亚方舟工作室提出了一种新型的端侧神经网络架构GhostNet[3]。其通过引入一种新型的Ghost 模块来替代原先的卷积层,以一种代价低廉的线性操作来获取特征图信息,从而可以用更少的参数生成更多的特征。模块具体的运行流程如下图所示:

图1 Ghost 模块运行流程

Ghost 模块主要对原先的卷积操作进行了改进。首先通过主卷积来生成基本的特征图集合:

其中,X 为输入特征图,f"为卷积层,Y"为卷积层卷积后得到的特征图集合。

最后再将得到的Ghost 特征图与原先的特征图进行拼接作为最终输出的特征图集合Y。相较于直接进行卷积得到的特征,用Ghost 模块进行特征提取可以降低模块所需参数总数以及计算复杂度,同时还能够增加得到的特征信息量。

之后在其主干网络中进行残差块的设计,使其可以有效避免出现梯度消失与梯度爆炸的问题,从而提升网络的性能。具体的结构如图2 所示。

图2 GhostNet 瓶颈层

因此将原先YOLOv5s 的主干网络替换为GhostNet,可以有助于提高网络模型对输入交通标志图像的特征提取能力,并且更为轻量高效。

■1.2 STN-GhostNet 算法模型

由于在车辆行驶的过程中,摄像头拍摄到的交通标志难免会出现显示倾斜或者图片噪声干扰等问题。为此需要在GhostNet 的基础上加入STN 模块[4],赋予网络基于特征图本身进行空间变换的能力,保证模型实际的识别精度不会受到交通标志角度倾斜等因素的干扰。STN 模块的结构如图3 所示。

图3 STN 模块基本结构

STN 模块内部主要分为Localisation Net、Grid Generator 和Sampler 三部分。通过Localisation Net 对输入的特征图进行参数的提取与变换后,利用Grid Generator 对原图片的像素点坐标进行确定,得到原图片与输出图片的坐标仿射关系,最后通过Sampler 进行像素的采集与转换,对输入的图像进行旋转调整,从而使模型具有旋转不变性。保证在不同的拍摄角度下模型依旧可以正常识别不同的交通标志,增强模型的鲁棒性与泛化能力。

由于STN 模块本身也可以作为一个layer 加入网络的任意位置中,且其计算量很少,对模型进行交通标志的识别速度基本没有什么影响。故本文将STN 模块放置于前面来对输入的图片特征进行转变后再利用GhostNet 对图片内的特征进行提取,从而可以减少网络训练中的整体损失,提高模型的识别精度。最后得到的STN-GhostNet 模型结构如图4 所示。

图4 STN—GhostNet 结构

将STN-GhostNet 网络修改为YOLOv5s 的主干网络后完成初步的训练,即可进行后续的轻量化操作。

■1.3 模型轻量化

由于神经网络整体实际存在着大量冗余的神经元参数,对模型的识别速度会产生较大的影响。为了提高交通标志的识别速度,减少模型尺寸大小以适应自动驾驶系统的轻量化需求。本文决定使用轻量化处理中的剪枝技术,具体为结构化剪枝中的通道剪枝来对交通标志模型中的冗余神经元进行筛除。

在进行交通标志识别模型的剪枝操作前还需对其进行稀疏训练。稀疏训练是指在识别出对交通标志识别结果影响较小的通道的同时,去除模型ВN 层中缩放因子值γ较小的通道,使最终剪枝后的模型在尺寸上更加紧凑且计算量有所减少。虽然在进行剪枝后可能会降低部分性能,但这些损失可以通过对模型的参数进行微调来补偿,从而使最后得到的模型能够基本达到与未经过剪枝的网络相当的精度[5]。具体的计算公式如下所示:

其中(x,y)表示训练时模型的输入以及目标结果,W 表示可进行训练的神经元权值,g(.)是指训练时的稀疏度惩罚,λ 则是对公式的平衡处理。本文在实现对YOLOv5s 网络的稀疏训练后,模型尺寸有了较大的改善。此时针对整个ВN层的输入输出公式则转变为:

其中Zin 和Zout 分别为ВN 层的输入参量和输出参量,В 指代minibatch 的大小,这样的改变可以基本保持网络的参数量不会发生较大变化。

由于模型的宽度决定了得到特征的丰富程度,如果实际仅选择模型的部分维度进行修剪,则会对交通标志识别模型的轻量化效果产生负面影响。故本文共选择了三个维度—filter、channels 和filter shapes 来进行交通标志识别模型的剪枝操作。同时本文还利用文献[6]中提出的剪枝率多项式问题求解得到这些维度剪枝率的分配结果,即:

2 来稿首页注脚应注明课题来源及课题名称,获基金资助产出的文章应以“基金项目:”作为标识注明基金项目名称,并在圆括号内注明其项目编号,并附第1作者简介:姓名(出生年-),性别(民族),籍贯,职称,学位,研究方向,E-mail。

其中f 用于去掉某个filter;
c 用于去掉所有filter 的某个channel;
fs 用于调整filter 的形状,从而最终达到模型轻量化的效果。

经过轻量化后的交通标志识别模型在保证原有的识别精度的前提下,模型的识别速度有了大幅度的提高,模型尺寸也有了较大幅度的降低,可以有效满足自动驾驶系统的轻量化需求,促进后续在自动驾驶中的实际应用。

■2.1 交通标志数据集

本文针对交通标志识别的研究实验数据集来自于清华大学与腾讯发布的公开交通标志数据集TT100K。其内置有大量的道路场景实拍图片,为减少模型训练的负担,本文对其进行初步筛选,共选出43种基本的交通标志进行识别分类。其中模型训练的训练集图片共6598 张,测试集图片共970 张,验证集图片共1889 张。部分数据集图片如图5 所示。

图5 TT100K 部分交通标志图

■2.2 模型训练

2.2.1 训练环境与模型超参数设置

实际的交通标志识别代码运行环境为Anaconda 所创建的虚拟环境,其内部主要应用了pytorch1.7.1、opencv-python、numpy 以 及matplotlib 等代码库来搭建实际的交通标志识别模型,并使用cuda11.7 来加速模型的训练过程。PC 端运行硬件则使用了Inter Core i7-10875H(2.3GHz)CPU 以及NVIDIA GeForce RTX 2060 来进行模型训练。

同时模型训练时加载了YOLOv5s 预训练权重,采用初始学习率为0.005,Вatchsize 设置为16,使用的网络优化器为Adam 算法,最大迭代次数epoch 为200 次。

2.2.2 模型训练评估指标

本文主要使用mAP 值来对交通标志识别模型进行评估。平均精度(AP)是精确率和召回率曲线下的面积,是用于评估模型的性能指标之一。mAP 则为AP 的平均值,主要用于衡量每个交通标志类别识别结果的AP 值。一般情况下,模型的mAP 值越高,说明模型的性能越好。实际平均精度的计算公式如下所示:

其中,k 代表图片数目,p(k)表示识别出k 个图片是准确率的值,Δr(k)表示识别的图片由k-1 增加到k 时召回率的变化情况。

(2)识别速度评估

本文针对识别速度的评估主要是通过Python 代码内的time 库来实现计时功能。根据代码记录的交通标志识别前后的时间间隔来得到识别每张图片的交通标志所需要的时间。

■2.3 模型训练结果与分析

通过使用TT100K 数据集对模型进行训练,可以得到较好的交通标志识别精度,具体的模型训练结果如图6 所示。

图6 模型训练结果图

从 图6 可 知,以STN-GhostNet 为主干网络 的YOLOv5s 模型对交通标志图像具有较好的识别效果,识别的mAP 值最终可以在交并比为0.5 的情况下达到98.4% 的mAP 值,而 在交并比为[0.5:0.95]时可以达到90.1%的mAP 值,说明其具有较好的交通标志识别效果。部分交通标志图像识别的结果如图7 所示。

图7 交通标志识别结果图

同时本文提出的交通标志识别模型经过模型轻量化中的剪枝操作后(剪枝率为80%),模型尺寸从原先的14.355KВ 减少为了6.331KВ,共减少了约55%的模型尺寸;
且经过测试,该模型进行交通标志识别的速度约为23ms/帧,相较于原YOLOv5s 的识别速度有了较大幅度的提升,有助于其后续实际应用于自动驾驶系统中。

本文在原YOLOv5s 模型的基础上,针对实际交通标志识别的需求,结合STN 网络与GhostNet 网络的优点,提出了一种改进型的交通标志识别网络STN-GhostNet。并令其作为YOLOv5s 的主干网络,利用轻量化的技术,对模型的尺寸与参数进行修剪,使模型最终可以更好地满足识别交通标志时效性与准确性的需求,同时其轻型的特点更适合部署于实际的自动驾驶系统中。目前随着YOLO 系列的逐步发展,其识别性能逐渐提高,针对YOLO 的边缘端移植也有了初步的实现,但仅限于较低的YOLO 版本,后续该模型在自动驾驶方面的实际应用依旧任重道远。

猜你喜欢交通标志剪枝轻量化人到晚年宜“剪枝”保健医苑(2022年5期)2022-06-10基于双向特征融合的交通标志识别汽车实用技术(2022年9期)2022-05-20汽车轻量化集成制造专题主编精密成形工程(2022年2期)2022-02-22基于YOLOv4-Tiny模型剪枝算法成都信息工程大学学报(2021年6期)2021-02-12一种轻量化自卸半挂车结构设计智富时代(2019年2期)2019-04-18一种轻量化自卸半挂车结构设计智富时代(2019年2期)2019-04-18剪枝天津诗人(2017年2期)2017-03-16交通标志小课堂小天使·一年级语数英综合(2016年8期)2016-05-14瞄准挂车轻量化 锣响挂车正式挂牌成立专用汽车(2016年1期)2016-03-01用户:轻量化挂车的使用体验专用汽车(2015年4期)2015-03-01

推荐访问:交通标志 识别 模型

版权所有:睿智文秘网 2009-2024 未经授权禁止复制或建立镜像[睿智文秘网]所有资源完全免费共享

Powered by 睿智文秘网 © All Rights Reserved.。备案号:辽ICP备09028679号-1