APP下载

SSD网络算法模型在车辆轴型识别中的应用

2021-09-03余辉敏

兵器装备工程学报 2021年8期
关键词:卷积精度预测

陈 铭,陈 新,余辉敏

(南京理工大学 自动化学院, 南京 210094)

1 引言

近年来我国交通运输飞速发展,城市交通负担不断增加,车辆轴载日渐重型化,一方面增加了对道路的压迫,使其不堪重负,另一方面,对于交通安全造成了极大的危害,因此实现对车辆轴型快速准确的检测显得尤为重要。轴型是描述车辆轴组轮胎数的重要特征量,正确识别出车辆轴型能够判断车辆的限载值,为超限超载治理提供重要指导[1]。

车辆轴型识别方法主要分为物理参数检测法(压力,压电,光纤光栅等)和图像识别法。现阶段,道路超限超载治理对车轴检测主要以物理参数检测法为主。李丽宏[2]通过测轮器(由一定间隔的12个或16个并排固定的压力传感器构成)判断车辆单/双轮,有无车轴以及是否是联轴的信息,采样时间加长,采样精度改善,防作弊能力提升。梁宇[3]根据车辆通过传感器所产生的波的形状和时序,使用冗余轮轴识别软件对车辆产生的波形进行数字滤波,自动识别出车辆通过传感器时是双联轴还是三联轴,解决了系统装置故障率高和安装困难的问题,提高道路通行效率。王琪[4]设计了一种称重仪表,其中的数据采集单元包含了车辆轴型识别,轴组载荷估计模块,数据采集单元的性能决定了整个仪表的称重精度和轴型识别率,该称重仪表大大提高了系统的容错率,达到国家标准的鉴别要求。安亮亮[5]提出一种单轴磁传感器测量的低成本方法,这种磁感方法在低速模式下精度较差,速度提高后精度好。Dawid[9]分析了在不同温度和车速下,轴载传感器的测量结果有明显的差异,表明这种以传感器为主的物理参数检测法受环境温度和车辆速度影响。

近年来随着计算机各方面技术的快速发展,卷积神经网络被越来越多的应用在了机器视觉领域。大量学者将卷积神经网络应用于识别车辆车型。黄灿[7]通过将车辆目标区域尺度特征进行尺度不变特征变换(scale-invariant feature transform,SIFT),生成SIFT描述子,在保证识别迅速的基础上提升了检测精度。万文利[8]设计了车辆轮廓的不相关二维方差矩阵特征,与模板的方差矩阵进行匹配分类,检测时间减少。谢晓竹[6]论述了单一分类器无法对车辆识别方面精度不够的问题,提出融合多种分类器对车辆进行识别的观点。徐丙立[12]基于kinect深度图像,设计了在无人平台实现自动避障功能的小车,小车针对周边障碍物能够进行有效识别。现阶段图像识别方法主要应用于车辆外观检测,而在道路超限超载检测中需要对车辆轴型进行精细化识别,才能准确地判断车辆限载值。

本文应用卷积神经网络中的Single Shot Multibox Detection(SSD)算法模型进行轴型识别[10]。首先利用开源数据集Pascal VOC2007对模型进行预训练得到参数权重,然后用车辆轴型数据集对模型进行二次训练,得到训练好的SSD模型。最后在需要进行称重识别的高速路口,港口码头等地安装正确角度摄像头获取实时数据,送入模型识别。该方法摆脱了道路上的线圈、压电等硬件传感器设备,通过正确角度的摄像头进行识别,识别准确率得到保障,算法时延低,在超限超载检测上有很好的推广价值。

2 GB1589—2016标准与轴型分类

2016年7月国家标准委正式批准发布强制性国家标准《汽车、挂车及汽车列车外廓尺寸、轴荷及质量限值》(GB1589—2016)该标准规定了车辆限载值,车辆的轴荷载以及路桥超限承载的管理办法,主要体现在:

1) 二轴货车载货后总重在18吨以内,同时应不超过行驶证注明的总质量;

2) 除驱动轴外,二轴、三轴货车每减少一对轮胎,载重量限制值减少3 t;

3) 驱动轴为每轴每侧双轮胎且装备空气悬架时,3轴货车载重量限制值增加1 t。

车辆每根轴都有不同作用,特征也不尽相同,如表1。

将车辆的各个轴组合起来后进行细分如表2所示,每一种轴型都有相应的限载值,执法部门通过车辆轴型即可知道车辆的限载值。

表2 轴型编号细分表(以2轴,3轴为例)

2轴车辆两根轴之间的距离要大于2 m,3轴车辆分为两类,一类是有双联轴,一类是没有双联轴,两根轴之间的距离有所不同。

3 数据集建立和图像预处理

3.1 数据集建立

神经网络的训练过程需要时间,对计算机的内存要求高,由于车辆轴型数据集数据量不如开源数据集多,训练效果不会达到最佳,所以在使用车辆轴型数据集训练前,使用标准数据集Pascal VOC2007对模型进行训练会使后续训练效果更好。

1) 预训练(一次训练)采用Pascal VOC2007数据集。作为标准数据集,Pascal VOC2007 是许多常用算法如Faster RCNN,Yolo等的演示样例,具备一定的权威性。其中包含训练集(五千余幅),测试集(四千九百余幅),包含20个种类,VOC2007数据集标注清晰,位置及分类信息全面,便于后续的检测展开;

2) 二次训练使用车辆轴型数据集。车辆轴型数据集采集了Comp Cars和Stanford Cars这两个开源车辆数据集内关于车辆轴型的图片。在货车车辆出没较多的地点拍摄了大量车辆轴型的清晰图片。整合后的数据量达到了640张。通过数据增广技术将数据集扩充到1 000张。

3.2 图像预处理和图像标记

为了获得更好的检测效果,采用图像灰度化的方法降低噪声。彩色图像中的像素有红(R),绿(G),蓝(B)3个分量,取值范围为[0,255]。最佳RGB比值是0.3∶0.59∶0.11。得到灰度化的图片的公式如式(1)、式(2)所示,Vgray为分量的强度值。

Vgray=0.3R+0.59G+0.11B

(1)

R=G=B=Vgray

(2)

对图像进行预处理后需要对图像进行标记,标记步骤如下:

1) 找到车辆轴型的位置,判断车辆属于哪一种轴型;

2) 打开LabelImg标注工具用鼠标框出需要识别的位置;

3) 记录该张图片车辆的轴型内容,标记完成后会生成标记文件。

标记示意图如图1。

图1 可清晰反映车辆侧面特征的图像标志示意图

数据标记完成后,按照9∶1的比例分配训练集和测试集。

4 SSD算法模型

4.1 SSD算法模型原理

卷积神经网络(convolutional neural network,CNN)目前已成功应用在图片分类、目标检测、目标跟踪等相关领域中[11]。本次车辆轴型识别工作采用SSD网络组建模型。其核心理念有3条:

1) 采用不同大小的特征图,不同大小的特征图可以检测不同大小的目标,有利于捕捉不同尺度的目标;

2) 设置预测框(Default boxes),预测框是在每个特征图上的每一点选取不同长宽比的选框,每个预测框的大小可以通过式(3)计算:

(3)

其中:s表示预测框的大小,m表示预测框的数量,k表示预测框的顺序。

3) 采用卷积进行检测,SSD提取检测结果的方式是使用卷积计算提取。

使用SSD网络算法模型进行训练的基本步骤如下:

1) 输入车辆轴型图片(像素大小为300*300),送入预训练好的分类网络(VGG16网络)中,获取到不同大小的特征映射;

2) 抽取Conv4_3,Conv7,Conv8_2,Conv9_2,Conv10_2,Conv11_2层的特征图,在这些特征图层上面的每一个像素点构造6个不同尺度大小的预测框;

3) 将不同特征图获得的预测框,经过非极大值抑制(non maximum suppression,NMS)抑制错误框后,生成最后结果。具体过程如图2所示。

图2 SSD算法模型具体运算过程示意图

非极大值抑制即局部最大搜索,抑制除极大值外的元素,在目标检测中用来提取分数最高的窗口,模型有不同尺寸的预测框,不同预测框识别的准确度不一样,即有不同的准确度分数,通过抑制不是极大值的预测框得到分数最高的框,抑制前后如图3(a)和3(b)所示。

图3 非极大值抑制(NMS)前后状态图Fig 3 State diagram before and after (NMS) suppression by non maxima

4.2 损失函数

损失函数(Loss)是衡量模型性能优劣的重要参照。交并比(intersection over union,IOU)是损失函数中的重要概念,表示预测框和真实框的交集和并集的比值,规定只有当IOU≥0.5时,检测正确。

SSD损失函数分为2个部分,预测框位置Lloc和类别置信度Lconf,损失函数定义为:

L(x,c,l,g)=(Lconf(x,c)+αLloc(x,l,g))/N

(4)

其中:x表示预测值;c表示概率;l表示预测框值;g表示真实框值。

预测框位置函数如式(5)所示:

(5)

类别置信度如式(6)所示:

(6)

通过归一化指数函数(softmath)产生的第i个预测框对应类别p的概率为

(7)

5 实验

第一步,使用Pascal VOC2007对模型进行预训练。平均精度(average precision,AP)表示精度值大小,mAP表示IOU=0.5时的精度。预训练后,得到的精度如表3所示,对VOC2007部分类别识别精度达到85%。

表3 SSD算法模型在VOC2007数据集上得到的模型参数(只选取部分类别展示)(%)

在预训练之后,得到的模型参数如表4所示。

表4 预训练后的模型参数值

预训练完成后将车辆轴型数据集的训练集送入模型进行二次训练。

将模型预训练和二次训练损失函数下降的大小和速度做了比较,如图4所示,发现预训练时下降速度慢,收敛耗时长,损失函数值高,二次训练时模型下降速度明显加快,收敛耗时短,比预训练时下降了1,说明采用二次训练策略能够明显提升模型收敛速度,达到更好的检测效果。

图4 是否采用二次训练策略的Loss值变化曲线

模型训练完成后,得到各个轴型的训练精度AP值如表5所示。

表5 模型训练完成后的结果

得到训练完的AP值后,将测试集送入模型进行测试,测试结果状态图如图5所示。

图5 SSD算法模型检测结果状态图

6 结论

1) 二次训练策略可以有效地改善模型性能,降低损失函数值,提高收敛速度;

2) 运用SSD网络算法模型对2轴,3轴车辆轴型进行检测,最高精度达89%。

3) SSD网络算法模型检测速度快,精度高,但是对于计算机的内存要求高,模型每层参数量大。后续研究应对卷积层的设置进行改进,在不降低精度和速度的条件下降低内存消耗,满足道路实时检测需求。

猜你喜欢

卷积精度预测
基于不同快速星历的GAMIT解算精度分析
数字化无模铸造五轴精密成形机精度检验项目分析与研究
无可预测
基于全卷积神经网络的猪背膘厚快速准确测定
选修2-2期中考试预测卷(A卷)
选修2-2期中考试预测卷(B卷)
选修2—2期中考试预测卷(A卷)
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①