APP下载

基于RFB-Net的摩托车驾驶人头盔检测研究

2021-12-31王江涛

太原科技大学学报 2021年6期
关键词:余弦头盔摩托车

刘 琛,王江涛

(淮北师范大学 物理与电子信息学院,安徽 淮北 235000)

持续的交通机动化导致全球道路相关伤亡人数持续增加。为了应对这种局面,各国政府正把重点放在安全和安全方面在交通中遵守行为。然而,对于摩托车的安全驾驶规范,安全的全面的头盔使用的标准十分重要。我国城市道路阡陌交通,在许多城市若路途较近,人们多会选择摩托车作为代步工具上下班以及接送孩子上下学。同时,如今的外卖产业新起,外卖员多是驾驶摩托车进行配送。在这些情况下摩托车驾驶人佩戴头盔对预防伤害,保护他人和自身安全至关重要。因此,将人工智能应用于道路安全中来检测摩托车手是否佩戴头盔有十分重要的意义。

与传统的机器学习和图像处理方法相比,基于深度学习的物体检测网络通常具有更加精准的识别率和更快的识别速度,近年来,目标检测方向的深度学习算法可以大体上划分为两阶段(two-stage)算法和单阶段(one-stage)算法。Faster R-CNN[1]是两阶段算法的代表网络。此网络先通过一些预处理方法在预测图片上生成若干目标候选框,再使用一些常用的卷积神经网络如VGG-16[2]训练参数进行样本的分类。一般使用两阶段算法的网络进行训练准确率更高,但计算成本较大,所以影响了网络的训练速度。后来推出的如YOLO[3],SSD[4]等单阶算法目标检测方法是直接将目标边框定位的问题转化为回归问题处理能进行端到端检测,没有候选框,速度快,实时性好,但是牺牲了一定的准确率。因此成为当下目标检测的主流方法。RFB(Receptive Field Block)Net[5]就是一种以SSD为基础网络进行改进的目标检测模型。该模型在SSD的基础网络构架中引入RFB模块,这一模块模拟了人类视觉的感受野模型,增强了网络对特征的提取能力。

本文以RFB Net模型为基础,用VGG-16为基础网络的RFB网络检测视频中的摩托车手佩戴头盔情况,在RFB Net中使用了余弦衰减学习率来优化网络的学习能力。通过对自行拍摄收集数据集进行测试,可以发现本文RFB Net对摩托车手佩戴头盔的检测效果在保证速度的前提下,准确率得到了有效的增高[6]。

1 算法原理

1.1 SSD网络

SSD网络使用了尺寸大小逐层递减的特征提取层,可以产生不同尺度下检测的预测值结果,使用这些尺度下的检测结果来预测目标的类别以及物体与默认边界框的偏移量,并且通过NMS的方法来产生最终的检测框。SSD网络会将输入的图像归一化为300*300,基础的训练网络一般使用VGG-16 Net,基础网络结构有六个特征层依次为Conv4_3、Fc7、Conv6_2、Conv7_2、 Conv8_2、Conv9_2[7].网络在训练过程中会在每一特征层上检测特定尺寸的预测目标。如图所示为SSD网络结构图。

图1 SSD网络结构图Fig.1 SSD network structur

SSD中的默认框类似于两阶段网络中的锚点机制,而且在网络的不同层中都存在着相应尺度的默认框。对于SSD中的m个特征图的默认框尺寸gi如公式(1)所示:

(1)

(2)

通过上述机制,对于每个特征单元就 都会产生不同形状和尺寸的默认框[8]。

1.2 RFB Net

RFB Net的基本网络框架是SSD网络,并在网络中加入了RFB模块,RFB Net的结构图如图2所示。

图2 RFB Net结构图Fig.2 RFB net structure

群体感受野是人类视觉研究学中的一种概念,有研究发现它的范围大小与离心率在视网膜的定位图中呈正比关系。这中机制突出了在视网膜中心区域目标的重要性。RFB模块模拟了人类视网膜的这一能力,加强了轻量级卷积神经网络学习深层特征的能力。

RFB Net结构继承了原始的SSD中尺度递减的卷积层。并用新设计的RFB模块将SSD额外增加层中的两层替换。RFB模块主要由多分支卷积层和空洞卷积层构成[9]。

(1)多分支卷积层

RFB模块采用了多分支的结构,在每个分支中分别采用不同大小的卷积核卷积。并通过瓶颈(bottle- neck)结构减少了训练参数,使网络更轻量化。模块中还运用了Res-Net[10]中的直连结构,解决了网络层数过深时可能导致的梯度发散问题。而RFB-S模块的分支更多而且卷积核尺寸更小,类似于视网膜中较小的感受野,使模块更接近人类的浅层视网膜模型。两个网络模块的结构如图3中(a)和(b)所示。

图3 RFB和RFB-S结构图Fig.3 structure of RFB and rfb-s

(2)空洞卷积

空洞卷积本质上是在普通卷积运算上的一种推广。在空洞卷积中有一个参数,可通过此参数来扩张卷积核并用0填充卷积核中多出的部分[11]。这个参数代表卷积核的膨胀系数。空洞卷积实际卷积核大小如公式(3)所示:

N=n+(n-1)(r-1)

(3)

式中n为原始的卷积核大小,r为空洞卷积参数及膨胀系数。空洞卷积的运算方法是通过卷积核与设定间隔的像素点做相应的乘法运算。这种卷积方法在没有增加过多复杂设计的情况下提高了感受野的范围,RFB模块正是通过空洞卷积层来模拟实现了人类视觉皮质中离心率的效果。

1.3 使用余弦衰减学习率提升性能

在卷积神经网络的训练过程中,学习率的设定是一个十分重要的因素[12]。原始的RFB网络使用的是阶段下降的学习率,训练效果较为一般,本文通过改进使用了余弦衰减的学习率进行训练,使得学习率下降更加平缓和均匀,取得了不错的训练效果。余弦衰减就是通过余弦的相关形式对学习率进行衰减,此种学习率的衰减图和余弦函数相似。学习率的更新机制如公式(4)所示:

(4)

式中l_rate是初始设定的学习率的。g_step表示衰减计算过程中的全局步数。d_steps为衰减步数。l_min为设定的最小学习率。如图4所示,图中曲线便是一条标准的余弦衰减曲线,学习率从初始值光滑下降到最低的学习率后维持不变。余弦衰减的学习率的下降十分平缓,不会产生较大的波动,对于一些网络的训练有意想不到的提升。

图4 余弦衰减曲线Fig.4 Cosine attenuation curve

2 实验结果及分析

2.1 实验准备

实验使用Ubuntu16.04操作系统,GPU为NVIDIA GTX 1070,运行内存为8G,选择Pytorch1.1.0为深度学习框架。实验中使用的数据集是自行拍摄收集的,内容为安徽省淮北市市区道路上的一些行驶的摩托车辆,车辆为不同类型的电瓶车和摩托车,拍摄的图像像素大小为1 280*720,输入网络训练时统一归一化为300*300.实验中选取的样本包括了较远车辆、部分遮挡和车辆行驶较快图像模糊以及各角度的情况。并收集了多云以及小雨下的天气环境,为本研究中的算法训练、验证和测试奠定了基础[13]。部分角度下收集的图像如图5所示,图(a)为本侧车道行进车辆,(b)为对侧车道行驶车辆,(c)为本侧车道使出车辆。

图5 数据集实例Fig.5 Data set example

在训练网络的过程中,对训练集进行了图像旋转变换和增加噪声等数据增广的预处理方法,来解决训练集的样本数据不足和测试时可能产生的过拟合情况,如图6所示。

图6 数据集增广Fig.6 Data set expansion

2.2 改进的RFB实验结果

本文任务实为分类任务,本次实验分别标注了摩托车、佩戴头盔的摩托车手头部以及未佩戴头盔的车手头部。通过对这三种目标的预测可以大大降低路边停放车辆以及行人对训练的干扰。提高了网络的实用性。使用 VGG16 作为基础网络,并载入SSD网络的预训练参数进行训练。训练完成后分别使用原始的RFB Net和本文改进后的RFB Net的训练参数进行验证和测试。实验中的训练图片数量为500张,测试图片为50张,训练数据不参与测试。图7是修改学习率后训练迭代8 700次的训练损失曲线。

图7 训练损失曲线Fig.7 Training loss curve

训练完毕后对网络进行测试得出三种目标的AP值和MAP值并与原始的SSD Net和RFB Net的上述指标进行记录对比,并将修改后的网络称为COS-RFB Net,其结果如表1所示。通过表1可以观察到对检测摩托车手是否佩戴了盔的AP值都有明显提高,对摩托车的检测也有轻微提高。整体而言,本文改进的RFB模型相比原始RFB网络模型在MAP上有4%~5%的提升。

表1 不同识别算法性能对比

为了更清晰的展示改进后的训练效果,图8给出了部分数据集在改进前后的测试结果对比。检测目标过程中摩托车使用蓝色框进行标注、佩戴头盔的摩托车手头部使用绿色框进行标注以及未佩戴头盔的车手头部使用红色框进行标注。通过图8对比可看出,在原始的RFB-Net训练结果下测试(a)左侧较远处的摩托车手的头、(b)中的未佩戴头盔的车手和(c)中较远目标的车辆都有一定程度的漏检。通过改进后的RFB-Net结果都成功的检测出了目标物体。其中图(c)目标较小,在图片右上方给出放大目标。可见,使用余弦衰减学习率对网络进行改进,取得了比较明显的效果,有效减少了漏检的情况,体现出了改进网络的优越性。

图8 两种网络的测试结果对比Fig.8 Comparison of test results of two networks

3 结语

针对道路摩托车手佩戴头盔规范行驶问题,为了通过深度学习来辅助道路安全。本文采用RFB检测算法实现了摩托车手是否佩戴头盔的检测,并通过使用余弦衰减的学习率进行改进,取得了更高的检测准确率,基本满足了对道路摩托车手佩戴头盔情况的检测要求。

猜你喜欢

余弦头盔摩托车
开摩托车的闪电小鸡
大笨狗酷比多
椭圆余弦波的位移法分析
便携的折叠头盔
两个含余弦函数的三角母不等式及其推论
实施正、余弦函数代换破解一类代数问题
汉字戴头盔
图侃天下
时光减速头盔
基于CAXA的盘类凸轮CAD/CAM应用