基于Faster-RCNN的交通信号灯检测与识别*

2019-09-11 02:25潘卫国陈英昊石洪丽
传感器与微系统 2019年9期
关键词:信号灯特征提取卷积

潘卫国, 陈英昊, 刘 博, 石洪丽

(1.北京联合大学 北京市信息服务工程重点实验室,北京100101;2.北京联合大学 机器人学院,北京 100027; 3.北京联合大学 应用科技学院,北京 100101)

0 引 言

交通信号灯检测和识别是无人驾驶和辅助驾驶领域的重要研究内容,能够辅助司机,避免在通过路口时,由于交通信号灯判断失误导致的交通事故,提升驾驶的安全性。然而复杂的自然场景增加了识别算法的难度。

交通信号灯最显著的特征是颜色和几何形态,此外还有空间位置和结构特征。很多研究集中在如何结合这些特征来实现信号灯的检测与识别。Yelal M R[1]提出了一种圆形交通信号灯检测算法,仅能检测圆形信号灯,且容易受背景干扰。 Chen Z L[2]通过颜色提取和斑点检测来定位候选区域,再通过预训练的主成分分析(PCA)网络进行多分类,并应用跟踪算法防止目标丢失。Soetedjo A[3]提出的方法通过设置阈值,分割得到红色信号灯的位置;Shen Y[4]提出利用高斯分布,构建色调训练三色参数,再分割获得交通信号灯的颜色状态信息;Omachi M[5]通过色彩分割,再提取边缘,再霍夫圆变换检测出交通信号灯,局限于圆形水平排列交通信号灯;Wang Z[6]提出了基于PCA+EDA的方式提取交通信号灯特征,再边缘分割检测出交通信号灯;曾玉龙[7]将RGB图像转换到S通道下,利用极大值稳定区域的方法进行检测交通信号灯候选区;Guan H[8]等人利用了基于YUV颜色空间对圆形交通信号灯的特征进行识别。这一类方法经常会受到光照和环境的干扰。

另一类方法为融合全球定位系统(GPS)和先验地图的信号灯检测识别,此类方法需要预先采集城市道路视频数据,在视频图像中标记出信号灯的准确位置,并绘制先验地图;在实时阶段,根据GPS和先验地图,计算出信号灯在图像中的准确位置,以提高检测的准确性。此类方法需要提前采集数据和绘制先验地图,前期工作量大,且当GPS定位不准确或车辆偏离正常路线时会降低检测准确率。

目前,深度学习理论被广泛应用于图像识别和目标检测领域,卷积神经网络 (convolutional neural network,CNN)[9]可以在不进行预处理的情况下从大量样本中学习特征,不仅避免了特征的设计难度,而且可以训练更多的特征。常见的目标检测算法有Yolo[10],SSD[11],R-CNN[12],Fast RCNN[13],Faster-RCNN[14,15]等。其中基于R-CNN方法最具代表性的就是Faster RCNN算法,根据RPN网络产生候选区域,再对候选区域进行分类,这种方法是属于Two-Stage;Yolo算法在速度上有着明显的优势,但是准确率偏低,SSD在检测速度有一定损失,但在准确率上有一定程度的提升,该类方法都是在产生候选区域的基础上进行分类和回归,属于One-Stage方法,相比Two-Stage具有更高的检测速度。

本文采用基于Faster-RCNN的方法实现对路口交通信号灯的准确检测识别。

1 交通信号灯检测算法

Faster RCNN相比Fast RCNN消除了选择性搜索算法,且添加了区域提议网络,再使用感兴趣区域(region of interest,ROI)池化层对预测的区域提议重新整型为固定大小,最后使用该池化层区域内的图像进行分类和边框回归,提升了检测速度。

1.1 算法流程

Faster-RCNN将目标检测的4个个基本步骤:候选区域生成、特征提取、分类和位置修正统一到一个深度网络框架之内如图1所示。首先对输入任意尺寸大小的交通场景图像进行卷积特征提取,然后通过区域建议网络中滑动窗口机制得到区域建议以及区域得分,对于区域得分采用非极大抑制算法输出前N个得分的区域建议,然后将其输入到RoI池化层,通过该层得到区域建议特征,最后将其输入到全连接层后输出区域的分类得分以及区域位置。

特征提取:在图像特征的提取上,CNN有着极其优越的特性,它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。

图1 Faster RCNN结构

区域建议网络(region proposal network,RPN),是一个全卷积网络,用于生成高质量的区域建议框。它和检测网络共享全图的卷积特征,解决了原来的选择性搜索方法的速度瓶颈,大大提高了目标检测速度。RPN的结构如下图2所示。

图2 RPN

用一个滑动窗口在一个卷积特征图上进行滑动,滑动操作获得一个向量后,将这个向量送入到两个平行的全连接层: 分类层和位置回归层以得到分类信息和位置信息。每个滑动窗口的中心,对应k个anchor。每个anchor对应一种尺寸和长宽比。相应地在每一滑动窗口的位置,同时给出预测的候选域,位置回归层输出候选域的坐标编码; 分类层输出每个候选域是目标/非目标的概率。

目标识别:使用区域建议网络生成建议区域之后,Faster-RCNN 使用 Fast-RCNN 进行检测分类。

1.2 特征提取网络模型

不同的特征提取网络对最终的检测效果也会有所影响;比较常用到的VGG16网络有13个卷积层,每个卷积层的卷积核大小均为3×3,卷积步长为1,卷积核个数从最初的64依次增长到128,256,512,池化层卷积核大小为2×2,步长为2。ResNet主要思想是在标准的前馈神经网络上,加一个跳跃绕过一些层的连接,每绕过一层就产生一个残差块,解决了增加深度带来的退化问题,能够通过单纯地增加网络深度来提高网络性能。本文将基于Faster RCNN结合不同的特征提取模型实现对交通信号灯的检测识别。

2 实 验

2.1 实验平台

本文实验的计算机配置为:CPU E5—2670v2,显卡Gtx1070Ti,内存32 G,操作系统为Ubuntu16.04。同时也在智能车实验平台上进行了验证,智能车实验平台如下图所示,车辆配有:GPS,16线激光雷达,前视摄像头和惯性导航等设备如图3所示。

图3 数据样例及类别

2.2 实验数据

国内外关于交通信号灯的数据集比较少,各地的交通信号灯差异较大;从表1中可以看出:目前国外的数据集因为存在着地域的差异,不能够直接用于训练模型;国内的数据集或是未公开,或是仅提供在线使用不能下载,鉴于此本文的数据来源为通过标注采集的交通场景图像获取。

表1 交通信号灯数据集

采集的地点城市包括;北京、天津、上海、苏州、常熟、深圳、重庆等地;包含不同天气,不同时间,不同季节的交通场景数据如图4所示。对于采集的数据进行标注,标注的类别为箭头和圆形交通信号灯如图3所示;圆形信号灯三类,左转箭头信号灯三类,直行箭头信号灯三类,右转箭头信号灯三类,共12类。标注过程中对于图像中信号灯目标区域小于10像素×10像素的不予标注。

在采集的这些数据集中目前已经标注并应用于本文实验的数据为9 700张图像,其中,随机抽取8 700张图像作为训练集,1 000张图像作为测试集。

2.3 实验分析

实验过程中特征提取网络分别选用VGG16,Resnet50和Resnet101,在不同的迭代次数下进行效果的比对。对比指标分别是准确率、召回率、平均精度均值和F1。准确率PRECISION=TP/(TP+FP);召回率RECALL=TP/(TP+FN)。其中,TP为指正样本被正确识别为正样本;TN为负样本被正确识别为负样本,FP为假的正样本,即负样本被错误识别为正样本;FN为假的负样本,即正样本被错误识别为负样本。F1=2×(PRECISION×RECALL)/(PRECISION+RECALL)。

用来衡量二分类模型精确度的一种指标,值越大说明模型越好。

表2中对比了分别使用三种特征提取网络下准确率,召回率和F1,从表中可以看出,在当前规模的数据量训练下,ResNet50网络在准确率,召回率和F1三方面都要优于其他两个特征提取网络。

表2 数据集实验结果 %

表3给出了分别使用三种不同特征提取网络下处理单帧图像所需的时间,从表中可以看出使用VGG16特征提取网络的方法处理速度最快,随着层数的增加RES101网络处理的速度最慢。这符合正常的预期,因为层数越多模型越复杂,处理时间越长。

表3 三种算法的单张时间和FPS

图4基于Faster RCNN框架下分别使用VGG16,ResNet50和ResNet—101三种不同的特征提取网络在不同迭代次数下网络模型的准确率情况,从表中可以看出整体的准确率情况为在使用ResNet50特征提取网络下达到的。

综合上述实验,可以看出在现有训练数据下,基于Faster-RCNN框架(ResNet50)的交通信号灯识别方法能够达到最优的效果,ResNet101网络尽管比ResNet50层数增加了,但是在现有规模数据集下,效果还不明显,需要更大规模的数据训练以提升模型的性能。

图4 mAP对比

在实际的智能车平台验证过程中,ResNet50选为特征提取网络,实现基于Faster-RCNN的交通信号灯路口识别,图5为在实际交通场景中智能车在路口对于交通信号灯的识别效果图。

图5 检测结果效果

3 结束语

本文基于Faster RCNN框架实现交通信号灯检测与识别,分别对比了不同特征提取网络下目标检测识别的效果,在基本参数相同的情况下,根据实验选取了最优的网络作为特征提取网络,并通过智能驾驶实验平台在真实的交通场景中验证了本文所提出方法的有效性。下一步将继续扩充标注数据的规模,充实样本的多样性以提升模型的性能。

猜你喜欢
信号灯特征提取卷积
基于3D-Winograd的快速卷积算法设计及FPGA实现
卷积神经网络的分析与设计
基于Gazebo仿真环境的ORB特征提取与比对的研究
从滤波器理解卷积
交通信号灯
基于Daubechies(dbN)的飞行器音频特征提取
信号灯为什么选这三个颜色?
基于傅里叶域卷积表示的目标跟踪算法
Bagging RCSP脑电特征提取算法
安装在路面的交通信号灯