道路交通标志识别作为智能交通系统(intelligent traffic systems, ITS)[1]的研究热点,是汽车自动驾驶和智能辅助驾驶系统中的道路环境感知技术的重要组成部分[2]。交通标志识别在交通安全维护、先进驾驶辅助以及自动驾驶等多方面具有重要作用,是智能辅助驾驶系统以及无人驾驶等领域研究的关键和基础[3]。交通标志识别技术最早起步于20世纪70年代,但受限于当时计算机的性能,该技术进展缓慢。21世纪以来,计算机性能的快速增强和交通智能化的发展趋势为交通标志识别技术提供了契机。
戈侠等提出一种线性融合图像方向梯度直方图特征和局部二值模式特征的方式进行交通标志识别[4]。沙莎等提出多通道特征融合的基础上,以图像的颜色聚类形成的特征作为最小二乘法分类器的输入进行分类[5]。Madani等基于边界颜色、形状等信息对交通标志进行识别,采用自适应阈值方法和支持向量机模型进行识别和分类[6]。Aziz等提出了基于互补和判别特征组合的交通标志识别方法,并结合ELM算法对交通标志进行识别,取得了较高的准确率[7]。Boumediene等在交通标志研究基础上,采用卡尔曼滤波的方法提高了交通标志识别的准确率[8]。Lillo-Castellano等利用HIS的颜色分割方法,在交通标志颜色分割中取得不错的效果[9]。Girshick提出RCNN模型,该模型通过多层卷积层可以提取图像的不同特征以及高级语义特征[10]。Cheng等提出了一种基于局部背景的Faster RCNN来识别较小目标的交通标志检测方法[11]。Xiong等提出一种基于深度卷积神经网络的RPN检测全部中国交通标志检测算法[12]。
通过图像分割模板匹配等方法进行交通标志识别方法在时间和准确度上存在不足。现有深度学习识别方法缺乏针对交通标志的特征设计的网络模型,难以直接应用于交通标志识别。本文在现有研究基础上,针对交通标志识别问题对Faster RCNN模型[13]进行改进,通过对提取特征的卷积神经网络以及候选框生成办法进行改进和优化,使得神经网络能够更加适用于交通标志识别,提高网络模型在不同天气情况下以及不同尺寸下的识别准确率。
1 多路并联全卷积网络设计 1.1 多路并联全卷积网络总体设计思想Faster RCNN可以视为2个功能模块组成的深度学习神经网络,即区域建议框推荐网络和全卷积分类识别网络。图像首先经过卷积特征提取网络产生共享特征层,这两个网络模块共享特征提取网络产生的卷积共享特征层。区域建议网络会通过共享特征层产生多个锚框,然后对每个锚框都进行目标评分,通过这个评分对图形的前景和背景进行区分,最后根据设定的阈值来判断前景和背景框,将候选特征送入感兴趣区域(ROI区域)池化层,将候选区域映射到特征图上,产生候选区域框。全卷积神经网络[14]则将这些候选框作为输入,通过一个全连接层对目标进行分类和识别。深度学习网络模型从应用到图像识别领域发展出了越来越多的深度学习框架,通过增加网络深度以及优化网络结构,卷积神经网络在目标识别和分类方面能力也取得了很大的突破。这些网络在一般目标识别方面有较好的效果和适应性,但是对于一些特定的应用领域存在局限性。在交通标识识别方面,直接应用这些卷积神经网络并不能取得很好的效果,主要原因在于交通标志容易受环境因素影响,如阳光路灯等光照因素、恶劣天气造成的能见度不足等因素。除此之外,在交通标志图像采集方面,由于采集设备质量元素的影响,以及采集状态的不同,交通标志图像大小不一,伴随车辆等采集设备载体的运动过程,交通标志还会产生形状、大小以及运动模糊等因素阻碍交通标志识别过程。为了更好得完成交通标志识别,本文提出一种多路并联全卷积神经网络,总体设计框架如图 1所示。
本文对适用于交通标志识别的卷积神经网络进行特征提取,充分考虑了多种因素的影响情况,有效提高了交通标志识别、分类效果。多路并联的全卷积神经网络的设计主要从以下3个方面出发:①考虑交通标志容易受天气光照等外界因素影响,本文从交通标志特有的显著特征出发,设计了一种多路卷积神经网络并联的框架结构,优化交通标志特征提取网络,使用多路卷积网络对目标进行特征提取,然后对多个卷积特征层进行融合操作。通过特征层融合操作优化后的特征层,使得目标特征更加显著。②考虑交通标志在采集图像中占比较小,且大小随距离、角度等因素影响,一般卷积神经网路都缺乏对于弱小目标的检测识别效果,本文使用串联小卷积核代替大卷积核的卷积神经网络来增加对于不同尺度的感受能力,降低小目标特征的损失,同时对深层特征和浅层特征进行融合形成最终共享特征层。本方法可以避免小目标特征随着网络深度增加而丢失的情况发生,在使网络具备一定深度的同时,不会损失目标特征信息,从而降低交通标志漏检情况的发生率。③使用全卷积网络代替全连接网络,用卷积层代替全连接层,得到位置敏感ROI热度图来代替原来的全连接神经元部分,对ROI区域热度图计算得出所有分类的概率,再进行上采样操作得到原图大小的输出,将特征点映射到原图对目标进行回归。
1.2 多路并联特征提取网络设计实现本文网络模型对目标图像进行预处理, 将图像信息分别送入多路并联卷积神经网络。输入图像大小为L×L, 经过2层大小为3×3, 层数为96的前2层卷积层, 以步长为2进行卷积运算, 得到L/4大小的特征图, 然后经过平均值池化操作, 将特征图大小缩减为L/8。第三层卷积层使用大小为3×3的26层卷积核, 层数为256的卷积层以步长为1进行运算, 经过最大值池化后输出L/16的特征图。第四层卷积层大小为3×3, 选择512层的特征层, 步长为1卷积, 经过最大值池化后输出L/32大小的特征图。最后使用大小为3×3, 层数为1 024的卷积核, 步长为2, 进行卷积, 经过下采样后输出L/64的特征图。使用大小为1×1的卷积层代替全连接层的卷积神经网络, 生成目标ROI区域和目标ROI热度图, 计算最终类别分类概率进行分类, 并在原图上对目标进行定位和识别。
在本文所使用网络中, 使用3×3大小卷积核卷积层进行卷积运算, 取消了Faster RCNN中的5×5等多种大卷积核的卷积操作, 原因在于3×3的卷积对于图像所有细节特征感知更加敏感, 能够捕捉更详细的目标特征, 降低细节特征信息丢失。通过2个3×3卷积层代替5×5卷积层, 在感受野方面起到同样的效果。用2层小卷积核代替大卷积核, 可以增加网络深度和网络的非线性特征提取能力, 加强对于非线性目标的拟合能力。在参数数量方面, 相同层数的卷积层, 5×5卷积层需要的参数量5×5×N。2个3×3卷积层需要的参数量为3×3×2N, 参数量减少了28%。不同大小卷积核效果图如图 2所示。
1.3 全卷积网络改进设计和优化使用多层卷积核进行特征提取, 根据网络深度不同, 得到的卷积特征图所表达的特征也不一样。浅层的特征层对于小范围区域内特征比较敏感, 能够获得目标的局部详细特征; 深层的特征层则注重于较大范围区域内特征层的表达, 能够概括目标比较全面的轮廓特征信息,因此卷积神经网络可以依靠增加网络深度提取更多的特征。但随着卷积层层数的增加, 往往会丢失部分小目标的特征信息, 造成目标漏检。为了解决此问题, 本文使用了一种深浅层特征融合的特征提取方法, 选用了第二层、第四层和第六层得到的特征层进行融合, 对浅层和深层特征层分别进行池化操作和反卷积操作, 使得3层特征大小统一。对于输入L×W大小的图片, 经过融合卷积层特征后得到最终的特征层大小为(L/32)×(W/32)。得到的特征图既包含了低层小目标和详细特征, 也包含了高层特征层代表的语义信息。
由于全连接层的特性, 整个网络参数量巨大,使得模型训练速度降低; 而且全连接网络一旦确定结构, 输入图像的尺寸将不再变化。使用3层大小为1×1, 层数分别为4 096, 4 096, 1 000的卷积层代替全连接层。各卷积层的输出分别为2组4 096×(L/64)×(L/6)和1组k2×(C+1)大小特征向量, 其中C表示类别数, k表示ROI区域被划分的子区域大小。计算候选框内各个子块是目标子领域的概率, 最后计算候选框内平均值, 得到所有分类的得分图。位敏得分计算公式为
(1) |
式中:Sc(i, j|Θ)为(i, j)位置第C个类别的目标概率得分; zi, j, c是(C+1)个类别得分图之一。(x0, y0)对应ROI区域的左上角, m×n是每个子区域内像素个数。然后通过计算k2获得ROI区域的最终得分, 产生长度为(C+1)的一维向量, 将该向量送入Softmax分类计算最终得分, 计算公式如(2)式所示。
(2) |
全卷积网络对于输入图像尺寸没有限制, 使用卷积层代替全连接层, 生成位置敏感热度图来对目标特征图进行分类, 每个特征点可以直接映射原图中的像素点。当输入图片大小和卷积核大小一致时, 使用卷积层等价于建立全连接, 但仍有所区别: 全连接不会学习过滤, 会给每个连接分权重并不会修改连接关系; 卷积则是会学习有用的关系, 没用的关系它会弱化或者直接舍弃。这样卷积块可以共用一套权重, 减少重复计算, 还可以降低模型复杂度。但是全卷积神经网络用来分类识别特征图经过多层卷积运算后, 特征信息压缩, 特征点尺寸缩小, 造成对于细节不太敏感, 而且在与原图映射像素点的时候, 由于丢失部分像素点的信息, 丢失了部分空间信息, 对于目标识别和目标框回归会造成一定的偏差。
本文对用于交通标志识别的全卷积神经网络做出了优化, 具体原理如图 3所示。使用不同层的特征层, 进行反卷积运算; 将特征图扩充到原图大小, 通过将特征层分别反卷积扩充到原图大小, 然后进行加权融合, 弥补了最终特征图直接反卷积运算至原图大小的不足之处。优化后的网络实现了端到端的映射关系, 对于特征识别分类和回归有着积极的作用。通过不同特征层包含的信息对反卷积过程中缺失的信息进行填补, 提高了目标分割细节和精确度, 有助于交通标志的识别和回归。
2 改进RPN候选框生成办法 2.1 基于先验知识的候选框生成办法交通标志的颜色以红黄蓝搭配白色和黑色的图案为主, 形状多为圆形、三角形和矩形构成, 其大小比例有着统一的标准。所以从交通标志先验知识出发, 将这些先验特征融入交通标志识别算法有着事半功倍的效果。下面针对国际统一规范交通标志数据集GTSRB, 对其先验特征进行统计。
由图 4a)中可以看出, 数据集中交通标志散点图呈线性分布, 分布于直线y=x的两侧, 长宽比以1∶1为主。由柱状图 4b)可以看出大部分交通标志尺寸大小主要集中于25×25像素至60×60像素的范围内。根据RPN候选框常用方法, 在固定锚点的基础上, 使用3种不同尺度(128, 256和512), 以及3种不同宽高比(0.5, 1和2)作为候选区域框的生成参数, 对于每一个锚点生成共9种候选区域, 这种生成办法对于一般情况下多尺度目标识别有较好的效果。但是由于交通标志尺寸大小大部分集中在60×60像素以下, 而且宽高散点图都集中分布在y=x两侧,所以Faster-RCNN原有的RPN生成方法不适用于本文所研究的交通标志识别问题。因此本文对于RPN候选区域生成办法针对交通标志先验知识进行了改进。
由于交通标志图像往往在原图中占比小, 占有像素数据量少, RPN网络原有的生成候选区域3种尺度在交通标志识别的场景下过大, 本文用更小的分布更加均衡的尺寸为标准来生成候选框, 分为3种尺度(32, 64, 128)在每个锚点的位置生成候选区域。经过对数据集先验知识的统计, 使用32, 64和128的候选区域大小组合能够覆盖数据集中大部分交通标志的大小范围。在RPN的训练过程中, 若某个锚点i所在的预测框pi与边界框重叠超过某个阈值, 或该边界框具有最高的交并比, 则该边界框的标签pi*记为1, 否则记为0。描述预测框的参数向量[x, y, w, h]记为ti, 则有损失函数
(3) |
式中, Lcls与Lreg别是锚点i的分类损失与回归损失函数。RPN通过进行端对端的训练, 使损失函数最小化。
2.2 增强型小目标候选框生成办法对于较小的检测目标, 深度不同的特征层中特征点在原图中映射的区域大小不同, 浅层的特征点映射ROI1区域, 占比较小, 深层特征层映射ROI2区域, 占比较大。由此可知卷积特征层的深度与映射到原图占比成正相关, 因此针对交通标志在图形中占比和尺度较小的问题, 使用以Faster RCNN为基础的两阶段目标识别框架, 能够降低目标漏检率以及生成更加有效的预测框。据此, 本文提出了一种增强型的目标预测框生成办法, 其原理如图 5所示。
交通标志数据集的统计数据显示, 交通标志尺寸大小有很大一部分集中于25×25像素至60×60像素之间。为了降低小目标漏检情况的发生, 本文提出的增强型候选框生成方法使用双层特征层根据锚点进行候选框生成。小目标特征往往在第三层特征层比较全面, 细节详实且特征点映射到原图的区域大小与小尺寸交通标志目标大小相近。因此本文在共享特征层和低层特征层共同生成候选框, 在原图上生成锚点框作为候选区域。根据先验知识对候选框生成办法进行优化, 只生成3种尺寸大小的正方形候选框。为了增强小目标交通标志候选框的检测率和候选框有效性, 2层特征层各生成3个尺寸的候选框。增加一定数量的候选框, 会增加时间的消耗, 但在训练结果上对于交通标志的识别效果有明显的提升。
2.3 模型训练损失函数本文在训练卷积网路模型时, 利用多路并联全卷积神经网络来完成目标的特征提取, 结合RPN训练来得到目标候选区域, 属于两阶段学习法深度学习网络, 所以网络训练需要使用多任务损失函数来最小化目标函数, 任务损失函数如公式(3)所示。
其中分类损失Lcls是一个二分类问题的对数损失函数
(4) |
对于回归损失函数Lreg有
(5) |
式中,R是Faster RCNN中的平滑损失函数
(6) |
式中回归损失函数中位置坐标向量计算方法如下:
(7) |
(8) |
(9) |
(10) |
以GTSRB数据集为例, 受实际交通状况中对各种交通标志使用频率的影响, 各类别的交通标志数量往往差异较大, 各类别数量分布并不均衡, 样本类别分布如图 6所示。训练集的类间分布不平衡将会导致识别算法倾向于那些高频的交通标志, 针对该问题的解决办法是对交通标志数据集进行数据增广, 数据增广后的样本类别数量分布如图 7所示。
对于个别数量较少的数据集, 通过以下2种方法进行处理: ①对其图像进行缩放、平移、旋转等处理, 使训练数据集得以扩充, 增加该类别的交通标志的数量, 增强数据集对于实际交通标志分布位置多变情况下的体现; ②通过仿射变换增加数据标本, 仿射变换可以增加数据集对于实际中不同角度不同距离等多种情况的模拟。
在实际的交通道路情况下, 由于行道树的影响, 通常会出现树木直接遮挡交通标志或遮挡阳光导致光照不均的现象。此外, 交通标志采集常受到雾霾等天气的影响, 导致图像模糊。为了减小以上问题对于交通标志识别的影响, 采用直方图均衡化操作改善图像中光照不均或者因光照过强等情况; 采用去雾处理降低雾天等情况的模糊状况。经过预处理效果如图 8所示, 图 8a)~8c)为原图, 图 8d)~8f)为处理效果图, 可见通过采取交通标志图像的直方图均衡化、去雾处理预处理操作, 可以使目标图像更加清晰, 特征更加明显, 经过预处理之后再进行目标检测和识别有利于提高目标识别准确度。
3.2 数据集识别效果分析首先使用GTSRB数据集作为训练数据集对网络模型进行训练, 来验证模型对于交通标志识别的准确性和可靠性。该数据集采集了不同光照强度, 不同天气状况下的各类交通标志样本。如图 9所示,随着训练迭代轮次增加, 模型训练准确率也逐渐增加, 损失值不断减少, 曲线变化过程稳定。
对数据集GTSRB经过训练后将各类交通标志训练结果数量按警告、禁止、指示和其他进行归类, 对训练正确和错误的样本进行统计后计算各类交通标志最终的识别准确率和召回率如表 1所示。
由表中数据可以看出, 本文所使用的多路并联全卷积神经网络在GTSRB数据集上获得了94.9%的准确率和90.8%的召回率。文献[15]使用了多种基于传统图像的识别算法, 使用HOG特征进行检测后使用SVM分类器进行分类。通过对表 2的数据对比可以看出, 本文所使用的方法在结果中取得了更好的识别效果。
方法 | 准确率 |
HOG+SVM | 0.776 |
LBP+SVM | 0.711 |
LBP+RF | 0.697 |
PI+LDA+SVM | 0.823 |
Faster RCNN | 0.918 |
LDA+RF | 0.823 |
本文方法 | 0.954 |
由于实际情况中, 存在大部分小目标和小占比的交通标志情况, 为了测试本文方法对于小目标识别效果, 对数据集GTSDB[16]进行训练测试。GTSDB数据集来自实际交通路况图像采集, 图像分辨率较大, 样本类型丰富, 光照条件随采集时状态多样化, 并且包含复杂的街景路况信息, 目标占比小。本文方法与传统图像处理识别和原始Faster RCNN 3种方法的模型训练正确率曲线对比效果图如图 10所示。
将本文所提出的算法与以上几种不同算法在不同尺度区间内检测效果进行对比, 取数据集样本[0, 48], [48, 128], [128, 480]作为3个不同的训练集和测试集, 将训练集对网络进行训练之后, 对测试集中的样本进行测试得到本文方法针对数据集样本, 在不同尺寸下的准确率。然后将最终得到目标识别准确率与文献[17]中的识别准确率进行对比, 结果如表 3所示。
方法 | 不同尺寸范围 | ||
[0, 48] | [48, 128] | [128, 480] | |
选择性搜索 | 48.1 | 57.9 | 70.8 |
文献[18] | 82.7 | 91.6 | 89.1 |
Faster RCNN | 72.9 | 76.8 | 82.4 |
本文算法 | 90.4 | 93.2 | 91.4 |
通过表中结果可以看到, 在相同的数据集GTSDB条件下, 选择性搜索算法在较大尺寸的交通标志目标上识别率较高, 但是对于小目标识别率大幅度降低。Faster RCNN虽然识别准确率提高, 但是其识别效果并不是很理想。本文使用在此基础上改进的网络后, 不同尺度的目标识别率都优于其他几种方法。通过效果对比可以验证本文方法对于小目标交通标志有着较强识别敏感度, 且在不同尺寸的交通标志图像目标上都具备较强的鲁棒性。
最后使用数据集TT100K进行训练检测识别, 该数据集样本分辨率更大, 大小规范为2 048×2 048, 而交通标志所占尺寸变得更小, 所以使得交通标志识别变得更加困难。使用数据增广和预处理之后进行识别检测, 效果如表 4所示。
本文在原有神经网络模型上针对交通标志特征进行改进。从交通标志特有的显著特征出发,设计了一种多路卷积神经网络并联的框架结构,使用多路卷积网络对目标进行特征提取,对多个卷积特征层进行融合操作;通过特征层融合操作优化后的特征层,使得目标特征更加显著,减缓了交通标志容易受天气光照等外接因素的影响。使用串联小卷积核代替大卷积核的卷积神经网络来增加对于不同尺度的感受能力,降低小目标特征的损失。本方法可以使小目标特征随着网络深度增加而丢失的情况发生的概率降低,在使得网络具备一定深度的同时,不会损失目标特征信息,从而能够降低交通标志漏检情况的发生率。使用多层特征层生成锚点框的办法增强了小目标候选框生成。实验结果表明,在交通标志识别上,本文所使用的方法相比较于传统图像识别方法和原始Faster RCNN网络能够取得更好的检测识别效果。
[1] | ZHANG J, WANG F, WANG K, et al. Data-driven intelligent transportation systems: a survey[J]. IEEE Trans on Intelligent Transpor-tation Systems, 2011, 12(4): 1624-1639. DOI:10.1109/TITS.2011.2158001 |
[2] | SEO Y, LEE J, ZHANG W, et al. Recognition of highway workzones for reliable autonomous driving[J]. IEEE Trans on Intelligent Transportation Systems, 2015, 16(2): 708-718. |
[3] | FAN Yanjun, ZHANG Weigong. Traffic sign detection and classification for advanced driver assistant systems[C]//International Conference on Fuzzy Systems and Knowledge Discovery(FSKD), Zhangjiajie, 2015: 1335-1339 |
[4] |
戈侠, 于凤芹, 陈莹. 基于分块自适应融合特征的交通标志识别[J]. 计算机工程与应用, 2017, 53(3): 188-192.
GE Xia, YU Fengqin, CHEN Ying. Traffic sign recognition based on blocking self-adaptation fusion features[J]. Computer Engineering and Applications, 2017, 53(3): 188-192. (in Chinese) |
[5] |
沙莎, 肖学钢. 一种多通道融合的交通标志检测方法[J]. 计算机工程, 2009, 35(6): 202-204.
SHA Sha, XIAO Xuegang. Traffic sign detection method with multi-channel integration[J]. Computer Engineering, 2009, 35(6): 202-204. (in Chinese) DOI:10.3969/j.issn.1000-3428.2009.06.071 |
[6] | MADANI A, YUSOF R. Traffic sign recognition based on color, shape, and pictogram classification using support vector machines[J]. Neural Computing & Applications, 2017, 36(5): 1-11. |
[7] | AZIZ S, MOHAMED E A, YOUSSEF F. Traffic sign recognition based on multi-feature fusion and ELM classifier[J]. Procedia Computer Science, 2018, 127(1): 146-153. |
[8] | BOUMEDIENE M, CUDEL C, BASSET M, et al. Triangular traffic signs detection based on RSLD algorithm[J]. Machine Vision and Applications, 2013, 24(8): 1721-1732. DOI:10.1007/s00138-013-0540-y |
[9] | LILLO-CASTELLANO J M, JIMÉNEZ I, POZUELO C, et al. Traffic sign segmentation and classify-cation using statistical learning methods[J]. Neurocomputing, 2015, 153: 286-299. DOI:10.1016/j.neucom.2014.11.026 |
[10] | GIRSHICK R. Fast R-CNN[J/OL]. (2015-09-27)[2020-09-01]. https://arxiv.org/pdf/1504.08083.pdf |
[11] | CHENG P, LIU W, ZHANG Y, et al. LOCO: local context based faster R-CNN for small traffic sign detection[C]//International Conference on Multimedia Modeling, Cham, 2018 |
[12] | XIONG C, CONG W, MA W, et al. A traffic sign detection algorithm based on deep convolutional neural network[C]//IEEE International Conference on Signal and Image Processing, 2016 |
[13] | REN Shaoqing, HE Kaiming, GIRSHICK Ross, et al. Faster R-CNN: towards real-time object detection with region proposal networks[J]. IEEE Trans on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137-1149. DOI:10.1109/TPAMI.2016.2577031 |
[14] | LONG J, SHELHAMER E, DARRELL T. Fully convolutional networks for semantic segmentation[J]. IEEE Trans on Patcern Analysis and Machrne Interlligence, 2015, 39(4): 640-651. |
[15] |
李凯, 韩冰, 张景滔. 基于条件随机场与多尺度卷积神经网络的交通标志检测与识别[J]. 计算机应用, 2018, 38(增刊2): 270-275.
LI Kai, HAN Bing, ZHANG Jingtao. Traffic sign detection and recognition based on oonditional random field and multi-scale convolutional neural network[J]. Journal of Computer Applications, 2018, 38(suppl 2): 270-275. (in Chinese) |
[16] | HOUBEN S, STALLKAMP J, SALMEN J, et al. Detection of traffic signs in real-world images: the German traffic sign detection benchmark[C]//The 2013 International Joint Conference on Neural Networks, Dallas, TX, 2013: 1-8 |
[17] | ZHU Z, LIANG D, ZHANG S, et al. Traffic-sign detection and classification in the wild[C]//2016 IEEE Conference on Computer Vision and Pattern Recognition, 2016 |