卷积|基于深度学习的道路交通标志数字识别

基于MATLAB深度学习的交通标志识别

  1. 课题介绍
交通标志识别技术的研究最早开始于奔驰等14家大型汽车公 司组成的民间组织所资助的Prometheus(Program for European Traffic with Highest Efficiency and unprecedented safety) 计划[1],其目标是研究一个交通标识识别系统,但直到最近几年,其研究成果才获得研究者的广泛关注。道路交通标志的识别系统TSR (Traffic Sign Recognition)是“智能交通系统ITS(Intelligent Trans- portation System)”研究领域中的热点和难点之一,也是难度较大的实景目标识别问题之一[2]。因为自然场景下采集到的道路交通标 志图像除了易受天气,光照,复杂背景等因素影响外,还可能出现遮挡,变形,掉色等情况。这些都将直接影响到最终的识别结果。目前, 识别方法众多,但总体而言,国内的研究在方法的创新和实用上相比国外还有一定差距。交通标志的自动识别过程主要包括交通标志的检测和交通标志的判别[3],本文主要研究深度学习算法在交通标志判别上的应用。
  1. 课题研究现状
交通标志检测出来后,对其进行分类判别是交通标示识别的最终目的。目前,对交通标志判别的方法很多。大致可分为基于神经网络、基于形状(模式匹配)和基于颜色等[4-5]。文献[6]通过对待判别交通标志进行SIFT特征与特征子空间的交通标志描述符进行匹配, 完成交通标志的识别。SIFT特征是基于物体上的一些局部外观的兴趣点而与物体的大小和旋转无关。对于光线、噪声、些微视角改变的容忍度也相当高,所以该方法对实景中部分出现倾斜,遮挡的交通标志也有很好的识别率。文献[7]在中心投影特征计算的基础上, 利用训练后的概率神经网络实现了交通标志的判别,并与不变矩特征及SIFT特征的识别效果进行了对比,实验得出中心投影特征能取得最高的识别率。但由于中心投影特征描述的只是形状特征,在对交通标志进行形状粗分类时效果较好,在细分类如从各种圆形限速标志中判别出具体是哪种限速标志时很难取得较高的识别效果。 文献[8]提出了一种基于颜色规格化的交通标志分类模型,先通过颜色规格化将交通标志中复杂的颜色信息简化为5种基本颜色,再利用两级智能分类器M-SVMs对交通标志进行判别。该方法取得了很好的粗分类效果。
上述这些方法都能在特定的应用情况下取得较好的识别效果, 然而只是基于形状和颜色特征或者只是依靠一些人工提取的单一 特征如不变矩特征、中心投影特征、SIFT特征还是有些研究者采用的小波矩特征[9-10]等等来训练识别网络,这些都易忽视图像的内在的很多细节,而往往这些细节正是区别不同图像的关键。与这些方法相比本文采用的深度学习方法的优点是该方法不需要任何人工 特征,它能直接以图像的像素作为输入,通过深层次结构自动学习获得图像更抽象的特征表述。
  1. 深度学习简介
深度学习是机器学习的第二次浪潮,20世纪90年代以来主要以浅层机器学习模型为主流, 例如支持向量机(SVM, Support Vector Machines) 、B oosting 、最大熵方法( 如LR, Logistic
Regression)等[11]。但到2006年,这一局面因为机器学习领域泰斗, 加拿大多伦多大学教授Hinton在《Science》上发表的一篇文章而被打破[12],从此掀起了深度学习在学术界和工业界的浪潮。深度学习的概念源于人工神经网络的研究,是无监督学习的一种,其动机在于建立,模拟人脑进行分析学习的神经网络,该网络能通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。深度学习在图像识别、语音识别和自然语言处 理等方面都得到了很大的发展。1898年深度学习首次由LeCun和他的同事尝试应用于图像识别领域,并取得了很大成功,其采用的是一种带有卷积结构的深度神经网络 — 卷积神经网络(Convolution Neural Networks,CNN)[13]。近年来,在图像识别领域研究者们的不懈努力及创新下,越来越多的深度学习模型及其变种应用于图像识别的成果被公布于众。本文交通标志的识别 采用的MPCNN就是CNN的一种变形模型[14]。
  1. 具体实现
本文实验是基于Matlab2014操作平台实现的,实验的主要目的是将MPCNN应用到道路交通标志识别上,对网络的识别率和鲁棒性进行测试。为了实验验证我们在户外采集了大量交通标志建立了一个数据集
4.1、MPCNN结构及原里
1962年Hubel和Wiesel通过对猫视觉皮层细胞的研究,提出了感受野(receptive field)的概念,并运用于卷积神经网络[15],传统的卷积神经网络是一个多层的神经网络,每层由多个二维平面组成, 而每个平面又由多个独立的神经元组成,各层之间共享权值。一般分为卷积层(C层)和采样层(S层)。C层的每个神经元的输入与前一层的局部感受野相连,并提取改局部的特征。S层用来求局部平均与二次提取,这种特有的两次特征提取结构使网络在识别时对输入样本有较高的畸变容忍能力。MPCNN在传统CNN的基础上将S层的采样方法变换成求局部最大值,这样大大减少了提取上层不变特征时的计算复杂度。如式(1)所示。



卷积|基于深度学习的道路交通标志数字识别
文章图片


其中,样本图像大小为N×N,感受野是一个n×n的小窗口,该窗口可以是小于图像大小的任意大小,ai是感受野内采样前的像素。



卷积|基于深度学习的道路交通标志数字识别
文章图片


图 1 实验所用MPCNN 结构图



卷积|基于深度学习的道路交通标志数字识别
文章图片






图 2 部分样本图


表 1 各类交通标志样本数及识别率



卷积|基于深度学习的道路交通标志数字识别
文章图片


点值,它们通过一个窗口函数u(x,y)(通常采用的是sigmoid函数)后再取最大值就得到一个像素点值aj,这样这个邻域内n×n个像素就变成了一个像素,感受野在图像上逐像素滑动后就产生了一个大小缩小了n2倍的特征映射图。本文采用的MPCNN结构及各层神经元数如图1所示,该结构对我们的数据集是最佳的。
输入的是一个大小为46×46的原始图像的灰度图像。6个大小为7×7的不同卷积核分别与该图像卷积后得到含有6个大小为40×
40的特征图的卷积层C1,C1层通过大小为2×2的最大采样池亚采 样求最大值后将特征图的大小分别降为20×20得到采样层S2。S2层的特征映射图再通过16个大小为7×7的卷积核卷积后得到含有16 个大小为14×14的特征图的C3层。C3层通过2×2的最大池采样后得到S4层,该层含有16个大小为7×7的特征映射图。对S4层的特征 映射图用340个大小为7×7的卷积核进行卷积就得到了C5层包含
340个1×1的特征图。C5层到F6层是全连接的,F6层含有100个神经个神经元,网络就是通过最后13个输出神经元的不同反应来判断输入的是哪类交通标志完成对交通标志的最终识别。
我们主要在深圳,广州城区道路上对13种常见的户外交通标志进行了采集,其中按形状分包含了圆形、三角形、正六边形和正方形标志,按颜色划分有红色禁令标志和蓝色指示标志。总样本数5780 个,包含了自然场景中交通标志可能出现的各种情况如掉色,光照不均,遮挡,形变等等,部分样本如图(2)所示。
其中,随机选取了3460个作为训练样本,其余2320个作为测试样本。网络采用的是梯度下降法训练,迭代10次后网络收敛,如图
3所示是训练好的识别网络MPCNN对测试样本进行识别时各卷积层、采样层的特征图和所用的卷积核。各样本数及识别结果如表1 所示。部分误识别都是由于形变太大,遮挡过多、光照太暗或反光造成。
  1. 结论
本文数据集中的道路交通标志全部采集于真实自然场景中,实验结果可以看出,深度学习网络MPCNN不需要预先提取图像的任何人工特征,直接对原始图像经过迭代训练学习收敛后,对2320个测试样本的识别率达到了98.4%,取得了较高的识别率,而且对出现遮挡,光照不均、掉色和形变的交通标示也有一定的鲁棒性。尽管如此,深度学习模型在其结构和学习方法上仍然还有元。由于我们要识别的交通标志有13类,所以最后的输出层含有
很大的提升和改进空间。同时,在实际应用时,为了提高网络的鲁棒性,应需要更大量的训练样本。

【卷积|基于深度学习的道路交通标志数字识别】

    推荐阅读