基于BP神经网络的交通标志识别
扫描二维码
随时随地手机看文章
引言
近年来,交通标志识别在车辆视觉导航系统中是一个热 门研究课题。由于交通标志识别需要处理的信息量大,而且 存在大量干扰因素,待识别的图像往往存在干扰,因而要求 交通标志识别方法要有足够的快速性、稳定性。神经网络具有 强大的学习分类以及大规模并行计算能力,被广泛地应用于 图像处理、模式识别等。本文以典型的指示标志为对象,提 出了一种应用神经网络识别交通标志的方法。
1交通标志识别系统结构分析
由于本文主要研究蓝色指示交通标志的识别,所以重点 采集这一系列交通标志。其交通标志分割流程图如图1所示。2提取交通标志特征矩
2.1不变矩的提取流程
交通标志不变矩特征提取流程图如图2所示。
2.2交通标志特征提取实验和结果分析
本文对环岛行驶、非机动车摩托车行驶和靠右侧道路行 驶三个交通标志进行分割后,分别对它们进行旋转、缩小和 放大,并对这些图像进行了不变矩提取,其特征数据如表1、表2和表3所列。
由上表可知 :在这些提取的特征中,不同类型的交通标志矩值之间有明显的区别。比如表 1 中的 β3 与表 2 和表 3 有明显的不同 ;表 3 中的 β6 与另外两个表也有明显的不同。将这些特征值输入到神经网络中,然后经过训练,它们之间的差异即可以成为识别不同交通标志的依据 [3,4]。另外,从表中数据也可以看出,同一类交通标志在做旋转、平移和尺度变换后各个相对应的的同一类矩的值并不是一样的,但是这并不能与不变矩理论相驳斥,数据之间的差异在试验中还是存在的,如果以概率统计观点看,从所有提取的特征来看,这些矩是基本不变的。
3基于BP神经网络的交通标志识别系统的设计
3.1特征数据库的构建
由于实际中使用的蓝色指示标志与标准图有较大的差别,所 以在实验中所使用的交通标志都是由数码相机采集的实景图像。
实验中选取了 8种类型的交通标志作为本文前期研究和 仿真的对象。我们对每幅图像再做不同角度旋转和不同比例 因子的缩放变换(分别缩放为原图的0.8、0.6、0.4、1.2、1.4、1.6,旋转度数分别为 5。、8。、10。、-5。、-8。、-10。),总 共得到43X13=559幅图像,然后对图像进行分割和特征提取, 最终得到559个特征数据。实验时将这些数据分为两部分: 一部分有325个数据,用来对神经网络进行训练;另一部分 有234个数据,作为测试样本,用来进行分类识别。
对于训练策略,本文采用完全训练方法。选择的交通标 志图像库共有8种标志,样本类别数为8,因此输出层的节点 数设为8。隐藏层节点对网络的复杂度和识别率的高低有重要 作用,本设计采用试探法,图3所示是BP网络训练的误差曲线, 图4所示是环岛标志的仿真图片。事实上,采用不同的隐藏层 节点数目神经网络具有不同的识别效果[5, 6]。
图3 BP网络训练的误差曲线
图4 环岛标志的仿真图片
最后,网络初始化完成后,还可以对BP神经网络进行 训练。对于本文中三层结构的BP神经网络,我们采用了改进 的BP学习算法,即弹性BP算法对神经网络的权值和阈值进 行了训练,经过多次训练后,网络的性能将达到稳定。
3.2仿真实验的设计与实验结果分析
3.2.1交通标志实景图识别结果展示
本文以环岛标志为例,展示仿真各个步骤的结果。图像 分割后经旋转、缩放得到13幅图像用于仿真。对这13幅图片 分别提取特征矩,13幅环岛标志图像均能够被正确识别出来,识别结果显示如图5所示。
3.2.2探索隐层节点数对识别效果的影响
依照如上的仿真步骤,对所有559幅图像(包括训练样 本和测试样本)进行仿真,并分别统计其识别率,具体的实验 结果如表4所列。
图5环岛标志识别结果 表4交通标志识别仿真实验结果 |
|||
隐层节点数 |
步长 |
训练样本识别率 |
测试样本识别率 |
10 |
969 |
100% |
85.00% |
20 |
113 |
100% |
85.60% |
30 |
140 |
100% |
89.00% |
40 |
74 |
100% |
91.46% |
50 |
60 |
100% |
93.09% |
60 |
69 |
100% |
91.89% |
90 |
45 |
100% |
90.70% |
由表4可以看出,识别中,训练样本的识别都能达到 100% ;对于测试样本的识别,当隐藏层节点数为50时识别 率最高,同时我们注意到,随着隐藏层节点数增加,识别率 不断提高,同时训练时间也随之变短。
实验中,直行标志的识别率最低,分析发现,这是由于 其颜色不正引起的。增加网络中隐层节点的数目也主要是为了 提高该标志的识别率,而其他其中标志的识别率一直比较高, 对隐层节点数的改变不敏感[7' 8Io当隐层节点数为50时,直 行标志的识别率最高,同时整个系统的识别率也最高。
4结语
本文提出了神经网络在交通标志识别过程中分类器的训 练和测试过程与算法。在此基础上,选择了 8种类型的交通 标志,经过分割和特征提取,得到了 559个不变矩数据,将 数据人为分为两份,一份325个用来训练,一份234个用来测试。接着在不同参数下进行了实验和比较,最后确定了较好的神经 网络参数,并在Matlab语言环境下对交通标志识别系统作了 初步实现。当然,本文还有很多不足之处。因此,提出新的学 习算法,以达到更好的识别率,将是进一步研究的方向。
20211020_616ef42cd576d__基于BP神经网络的交通标志识别