【《基于两种目标检测算法的交通标志识别案例分析报告》7700字】_第1页
【《基于两种目标检测算法的交通标志识别案例分析报告》7700字】_第2页
【《基于两种目标检测算法的交通标志识别案例分析报告》7700字】_第3页
【《基于两种目标检测算法的交通标志识别案例分析报告》7700字】_第4页
【《基于两种目标检测算法的交通标志识别案例分析报告》7700字】_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于两种目标检测算法的交通标志识别案例分析报告目录TOC\o"1-3"\h\u4520基于两种目标检测算法的交通标志识别案例分析报告 123841.1引言 1306201.2YOLO系的目标检测算法 2229411.2.1YOLOv1 2263281.2.2YOLOv2 3142351.2.3YOLOv3 5259601.3基于YOLOv3的交通标志检测算法 680501.3.1实验环境与模型训练 6317301.3.2实验结果 719901.4R-CNN系的目标检测算法 10319341.1.1R-CNN 1079821.1.2FastR-CNN 1150631.1.3FasterR-CNN 11170061.5基于FasterR-CNN的交通标志检测算法 12288221.5.1实验环境与模型训练 12229021.5.2实验结果 131.1引言 目标检测算法是运用到计算机视觉和数字图像处理技术检测出给定目标的感兴趣区域。目标检测在智能驾驶、人脸识别、视频监控等领域有着广泛的应用。当检测对象有着不同的形状和外观的时候,检测的难度也会不一样。目标检测算法到现在以来一直都是计算机视觉里比较重要而又困难的问题。 基于深度学习的目标检测算法主要包含两大类,分别是基于Two-Stage目标检测算法和基于One-Stage目标检测算法。基于Two-Stage目标检测算法包括R-CNNADDINNE.Ref.{CB265767-4D76-4A10-8F71-A16BEC7D2C03}[38]、FastR-CNNADDINNE.Ref.{AAF24806-DAEC-4D9B-91AC-05E56C019ADB}[39]、FasterR-CNNADDINNE.Ref.{CADC3F87-998D-40AB-A2AC-4C567C75AEBC}[40]和MaskR-CNNADDINNE.Ref.{8F54566D-B014-45FE-9FC0-5D59A417F4AA}[41]算法。基于One-Stage目标检测算法包括YOLOv1ADDINNE.Ref.{D57CD8F5-C819-4A40-940B-CB6E08D757E0}[42]、YOLOv2ADDINNE.Ref.{8B7D44D7-1F23-4E3E-8514-3A62D8666804}[43]、YOLOv3ADDINNE.Ref.{DDAEF63D-E7C6-4A56-908D-9366611065B3}[44]、SSDADDINNE.Ref.{1099F259-EDED-4AD5-89EA-B06E238C4535}[45]和DSSDADDINNE.Ref.{811789EC-3A2C-401D-A165-6A55BB35099A}[46]算法。基于Two-stage目标检测算法的基本流程包括:提取候选检测框区域、使用卷积神经网络提取候选检测框的深度特征、最后对候选区域分类。而基于One-Stage目标检测算法不用提取候选区域,直接输入图像的特征,回归物体类别概率和位置坐标值。 两种目标检测算法的方法上有所差异,在性能上也各有优势,One-Stage目标检测算法在检测速度上十分占优势,Two-Stage目标检测算法在检测准确率和定位的精度上十分占优势。接下来将会对One-Stage目标检测算法和Two-Stage目标检测算法分别进行介绍和实验。1.2YOLO系的目标检测算法1.2.1YOLOv1 YOLOv1出自CVPR2016中发表的论文《YouOnlyLookOnce:Unified,Real-Time物体Detection》,是经典的One-Stage算法,它有着简洁的网络结构和简单的复现过程,因此受到很多开发人员的追捧。YOLOv1目标检测算法是一种端到端的网络,它的优点是不需要提取候选框区域。YOLOv1核心思想是直接选用整幅图像来训练模型,直接在输出层对Bbox的位置和类别进行回归,可以更好的区分目标和背景区域。 YOLOv1实现的方法是首先将原始的图片调整大小到448*448,再将输入图像划分成SS个网格,如果某一个object的中心落在这个网格之中,那么这个网格就负责预测这个object。每个网格需要预测出B个Bbox的位置信息和置信度信息,一个Bbox对应着四个位置信息和一个置信度信息。置信度信息表示是否包含了目标检测物体,以及包含目标检测物体位置的准确性。公式(4-1)给出了置信度的计算公式: (4-1) 公式中,如果有object落在一个gridcell中,第一项取1,否则就取0。第二项是预测boundingbox和实际的groundtruth之间的IOU值。 YOLOv1的原理图如图(4-1)所示。图4-1YOLOv1原理图 YOLOv1的主干网络借鉴了GoogleNet网络的思想,卷积核使用113的卷积核,可以减少网络模型的参数量。全连接层输出为SS(B5+C),B表示每个网格预测的检测框的数目,C表示需要预测的目标物体类别数目。YOLOv1网络的网络总数包括了24个卷积层,2个全连接层,结构如图(4-2)所示。图4-2YOLOv1结构图 YOLOv1网络的损失函数如公式(4-2)所示: (4-2) 公式(4-2)中,表示第i个网格中的第j个box是否负责这个目标物体,表示第i个网格是否包含目标物体。 YOLOv1网络主要存在三个方面的问题:(1)在YOLO检测图像时输入图像是固定的尺寸,没有采用多尺度特征来检测尺寸;(2)当同一个网格包含多个目标物体时,仅预测一个IOU最高的目标物体,可能会造成小目标物体的漏检;(3)在实际目标检测过程中小物体IOU误差会对网络的优化过程造成更大的影响,然而YOLOv1网络损失函数没有区分大目标物体和小目标物体IOU误差对于网络训练贡献值的影响,从而导致目标定位准确性降低。1.2.2YOLOv2 YOLOv2在YOLO系列中是做了“折中”的实现,在检测速度以及准确率上面进行了调控,60帧率以下,YOLOv2在VOC2007数据集中的平均准确率可以达到77%;而在40帧率的情况下,平均准确率可以达到78.6%。因此,可以说YOLOv2可以适应多种场景的需求,对于准确率需求不大的情况下,可以做到很快;对于检测时间需求不大的时候,可以做到准确率很不错。在结构方面则是引入了一种比较新的主干网络结构Darknet-19,这种网络结构有点类似VGG。Darknet-19主要采用33的卷积核,每次的最大池化操作之后,网络的特征图数目就会翻倍,将11卷积核放在33卷积核中间来压缩网络模型的特征。YOLOv2使用全局平均池化和批处理规范化来让训练在稳定的前提下加速损失函数的收敛,经过测试后可以得出,YOLOv2处理一张图片只需要5.58billion次运算,在ImageNet上可以达到72.9%top-1精确度,91.2%top-5精确度。而Darknet-19的网络结构包括了19个卷积层和5个最大池化层。YOLOv2的主干网络参数如表4-1所示。表4-1YOLOv2主干网络参数网络层核大小步长特征图Conv133122422432Maxpool122211211232Conv233111211232Maxpool2222565664Conv33315656128Conv4111565664Conv53315656128Maxpool32222828128Conv63312828256Conv71112828128Conv83312828256Maxpool42221414256Conv93311414512Conv101111414256Conv113311414512Conv121111414256Conv133311414512Maxpool522277512Cononv1511177512Conv16331771024Conv1711177512Cononv19111771000GlobalAvgpool YOLOv2网络相较YOLOv1网络做了如下的改进:(1)在YOLO层的所有卷积层加入批量归一化来规范化网络模型,批处理规范化可以对每个batch后的训练参数进行正则化处理,在每个卷积层后加入BN,各层的输入分布可以控制在(0,-1)范围内,这样可以加速损失函数的收敛,降低过拟合现象的产生;(2)传统的目标检测算法分类器基本都在256*256的图片样本上运行,这样低分辨率的检测不能满足高分辨率下的检测需求。YOLOv2的分类网络用448*448的分辨率进行微调训练,训练周期定在10个epochs,调整特征提取网络,用来调整ResultingNetwork的目标检测训练,通过高分辨率下的目标检测,YOLOv2的平均准确率可以提升5%左右;(3)YOLOv2网络则使用了卷积层代替了YOLOv1网络中的全连接层,使用anchorboxes来预测boundingboxes。因为anchorboxes大小并不是随机的,不需要进行logistic回归来接近检测目标的大小,更符合训练对象的特征,同时也可以加快训练收敛的速度;(4)YOLOv2每迭代几次就会微调网络模型的输入尺寸,用来对网络模型进行多尺度的训练,因此可以进行多尺寸下的目标检测,根据YOLOv2下采样的参数是32,网络会随机选取32倍数的尺寸继续训练,这样网络就可以对不同的输入尺寸进行相应的预测。模型对于分辨率不同的图片采取策略也不同,分辨率低的处理速度就相对比较快,分辨率高的检测精度就会高。值得一提的是,YOLOv2的分辨性能要优于SSD,分辨速度更是快于FastR-CNN。 (5)将浅层的特征图连接到深层特征图,用来增加网络模型的细粒度特征。1.2.3YOLOv3 YOLOv3在YOLOv2的基础上加大了神经网络的层数,引进了残差连接算法,用来加深网络层次,更深地提取对象特征,主干网络共有53层卷积层,被称为Darknet-53。虽然加深了网络层次,但是YOLOv3的速度依然很快。残差连接算法主要由卷积层和卷积核为33和11的残差连接块组成。 Darknet-53作为骨干网络主要用于提取图像特征,是全卷积网络。当输入图像的尺寸为416416时,Darknet-53特征提取网络输出三个尺度的特征图,大小分别为1313、2626、5252。在每个尺寸的特征图上预测了一个3-d张量信息编码,包括了边界框、目标评价和类别预测。每个边界框包含4个坐标参数,1个目标评及参数,类别数为80个,所以输出的三维张量可以描述的维度是N*N[3*(4+1+80)],对应图中的13*13*255、26*26*255、52*52*255。之后将三个尺度不同的特征图通过FPN进行融合,利用多尺度策略帮助网络模型同时学习不同层次的特征信息,之后将融合后的特征输入YOLO层进行类别的预测和边界框的回归ADDINNE.Ref.{D8A949E0-B063-43D7-BE1A-130630C3612F}[47]。 在上一节中介绍的YOLOv2使用了anchorbox实现预测框的预测,YOLOv3依旧使用了这种方法,和YOLOv2不同的是,YOLOv3采用了9个尺度不同的anchorbox来实现边界框坐标预测。这9个anchorboxes均分为3组,对应着3种不同尺度的特征图。如果输入图片的分辨率为512*512时,YOLOv3总共输出(64*64+32*32+16*16)=16128个anchorboxes。 YOLOv3网络结构示意图如图4-3所示。图4-3YOLOv3网络结构示意图根据YOLOv3的主干网络结构示意图,发现YOLOv3是没有池化层和全连接层的。张量的尺寸变换就是通过改变卷积核的步长来实现的,YOLOv2和YOLOv3在网络结构中最大的不同点在于darknet-19没有采用ResNet的连接方式,也就是没有采用残差结构,但是darknet-53借鉴了ResNet的残差结构。YOLOv3采用了大量的残差结构,可以保证在网络层次很深的情况下,依然可以保持训练对象的特征,让损失函数进行收敛,避免了梯度消失,让模型得以继续训练下去。总体来说,YOLOv3为检测算法在准确度和实时性的改进方面提供了新的方向,优点也是显而易见的,它实时性较好,结构清晰。在小目标的定位上准确性不及FasterR-CNN,但是它的网络结构较为简便,在一些嵌入式设备中的移植有着广泛的用途ADDINNE.Ref.{9EDF6581-F2D8-4690-B577-6648EA7311BB}[48]。1.3基于YOLOv3的交通标志检测算法1.3.1实验环境与模型训练通过对CCTSDB及补充的自建的数据集进行交通标志数据类别的进行分析,目前标注的数据有三大类,分别为指示标志、禁止标志和警告标志。实验平台的操作系统为windows10,并使用GPU对模型进行训练,GPU类型为NVIDIATeslaV100-PCIE-32GB显卡,使用python3.6编写脚本进行预数据数据处理以及得到最终结果,开发语言以python语言为主。模型实现为基于Keras的学习框架,搭建低复杂度的特征金字塔网络模型对交通标志进行检测。将文中第三章中制作出的数据集,按照80%和20%的比例拆分为训练集和测试集进行训练,以及用于测试YOLOv3目标检测算法对于交通标志图像的检测。模型训练采用Adam梯度下降方法,利用梯度的一阶矩估计和二阶矩估计自适应的调整每个参数的学习步长,Adam衰减系数为0.9,并设定批处理尺寸batch_size冷冻训练前为2,冷冻训练后的值为1,每次迭代(epoch)均随机排列数据集。将width与height都设为608。将最大迭代次数max_batches设定为34000,学习率变动步长steps设为max_batches的80%和90%,即steps=27200,30600。训练终止条件为损失函数的值几乎保持不变,即当最大迭代次数达到34000次时终止学习。由于整个训练过程使用GPU进行,故修改configs文件的参数为GPU=1和CUDNN=1。在整个实验中,需对YOLOv3、FasterR-CNN以及后续优化的模型在同一GPU服务器中进行训练。在本小节训练中,应用到了Tensorboard工具包,Tensorborad是Tensorflow中应用十分广泛的一个可视化工具包,可以显示训练中各层参数的变化情况。在训练过程中,对各层参数变化图进行锐化选择,可以去除参数图像的波动噪声,生成平滑的曲线。可以看到训练过程的权重变化,模型的损失值loss和学习率lr图像如图4-4所示。(a)模型损失值loss图像(b)模型学习率lr图像图4-4模型损失值loss和学习率lr的图像1.3.2实验结果YOLOv3目标检测模型对于各种复杂环境(曝光充足、运动模糊、曝光不足、大雪天气、大雾天气以及摄像头的实时检测)情况下的交通标志识别结果如图4-5至图4-10所示。曝光充足(b)图4-5曝光充足的场景下检测效果图运动模糊(b)图4-6运动模糊的场景下检测效果图曝光不足(a)(b)图4-7曝光不足的场景下检测效果图大雪天气(a)(b)图4-8大雪天气的场景下检测效果图大雾天气(a)(b)图4-9大雾天气的场景下检测效果图摄像头实时检测(a)(b)图4-10大雪天气的场景下摄像头实时检测效果图针对上述的几种复杂环境,YOLOv3模型表现出了不同的识别效果。在曝光条件较好的情况下,识别效果较为稳定,表现出了较快的识别速率;在复杂环境中,如运动模糊、曝光不足、大雪天气和大雾天气中,识别效果不是十分的稳定,YOLOv3会因为交通标志处于的环境较为复杂,特征相对不够明显,因此导致识别的效果略有减弱。在检测时间上,YOLOv3对于复杂环境下的交通标志平均检测时间可以达到0.033s,与曝光条件较好的识别速度基本一致。在摄像头的实时检测效果中,也基本能达到所要求的识别效果,出现的问题和图像识别基本一致,可能会出现漏检以及识别率不高的情况。该算法在无人驾驶汽车中的交通标志识别系统(TSR)可以有工程应用价值。接下来对YOLOv3模型对复杂环境的检测结果进行评价,输出的交通标志图像三个类别准确率AP和平均准确mAP图像如图4-11所示。图4-11YOLOv3平均准确率mAP图像通过图4-11可以看出,YOLOv3关于复杂环境下的交通标志图像三个类别准确率AP和平均准确率mAP。警告标志的准确率AP达到了96%,指示标志的准确率AP达到了95%,禁止标志的准确率AP达到了95%。同时,YOLOv3对于复杂环境下的交通标志图像平均准确率mAP达到了95.53%,基本可以达到复杂环境下对交通标志图像识别的效果,但相关性能并不突出。本组实验可以表明YOLOv3模型对于曝光情况较好的目标还是可以捕捉到,识别率也比较高,在各种复杂环境下可能会出现一些检测识别性能方面不够优秀的问题。下一步的思路是对YOLOv3算法进行一个合理的优化,使得算法具有更高的鲁棒性,在检测的准确率和检测时间上能够有所提升。1.4R-CNN系的目标检测算法1.1.1R-CNNR-CNN目标检测算法是被RossGirshick等人提出的,它是一种新型的目标检测算法。R-CNN目标检测算法在深度学习中的目标检测算法领域做出了巨大的贡献,R-CNN目标检测算法的步骤可以分为以下几个模块:第一是区域框的提取,第二是区域框的特征提取、第三是图像分类、第四是非极大值抑制。R-CNN算法与传统目标检测算法区别就在于区域框特征提取。R-CNN创造性的将传统特征提取方法(如Harris、SIFT、SURF、HOG等)替换为了深度的卷积神经网络。R-CNN模型如图4-12所示。图4-12R-CNN模型 R-CNN模型的具体步骤如下:第一步输入图像,R-CNN网络采用选择性搜索的方法从图像中大致提取出2000余个候选区域框(RegionProposal),这些提取出的候选框尺寸各不相同,所以需要将每一个候选区域框设置成为固定尺寸并送入到CNN模型之中,随后将CNN得到的结果作为特征,输入到分类器SVM中进行分类,就可对候选区域中的物体进行分类并且得出概率。1.1.2FastR-CNN FastR-CNN目标检测算法作为R-CNN目标检测算法的改进版本,本质与R-CNN目标检测算法的基本算法流程大致相同,步骤都是分为了生成候选区域、特征的提取、目标的分类和定位。FastR-CNN目标检测算法与R-CNN目标检测算法相比,FastR-CNN目标检测算法的优势更为突出,它不仅训练时间有所降低,检测效率也有所提升。FastR-CNN目标检测算法的流程图如4-13所示。图4-13FastR-CNN目标检测流程 和R-CNN相对比,FastR-CNN快的原因在于FastR-CNN是将整张图片进行了特征的提取,再将候选区域框的特征映射到卷积层。对比R-CNN,将图像的每一个候选区域框进行特征提取要方便的多。FastR-CNN将目标框分类和回归结合在了一起,因此在后面不需要进行分类和回归网络进行分布训练,相当大程度上简化了训练的过程,训练时的特征数据也就不需要大量的计算机内存。FastR-CNN的存在,解决了R-CNN训练和测试速度慢的问题。R-CNN对图像候选区域选取时候存在重叠,因此候选框特征提取可能会存在冗余现象,而FastR-CNN是将图像进行归一化后直接送入卷积网络中,直接从图像提取了候选区域框,避免了像R-CNN存在的冗余现象。1.1.3FasterR-CNN FastR-CNN目标检测算法相比R-CNN目标检测算法虽然速度已经提高了很多,但是在网络训练时仍然要进行候选框的提取,一旦进行候选框的提取就需要花费大量的时间。在这之后,RossB.Girshick提出了FasterR-CNN目标检测算法,该目标检测算法主要由RPN网络和FastR-CNN目标检测网络组成,RPN网络主要用于生成区域候选框,其中就包括了VGG16网络,用于提取候选区域的特征图。FasterR-CNN目标检测算法的检测流程如图4-14所示。图4-14FasterR-CNN目标检测流程 样本特征的提取在后续的识别和检测中起着重要的作用。与传统的特征描述方法相比,它具有独特的优点。当交通标志图像输入网络时,通过卷积和池化等运算就可以自动提取图像特征。局部感知和权值共享可以减少训练参数,使特征提取和数据重构过程更加便捷,并在多次迭代后自动获得图像的高维特征。 RPN网络是FasterR-CNN中的重要组成部分,内部通过全连接的方式进行连接,它的作用是完成候选区域的生成ADDINNE.Ref.{5C1DA588-B131-4313-84D1-569CD70A00DB}[49]。在ZF中,首先生成一个3*3大小的卷积核充作滑窗,在特征图上进行高维特征提取。并将它输入到256维的区域中,最后输进全连接层中,得到交通标志图像的分类信息和位置信息。 FasterR-CNN中采用FastR-CNN作为检测网络,FastR-CNN可以很好的解决执行速度慢、训练时间久等缺点。ROIPooling从RPN网络可以得到候选的ROI列表,经过卷积获得目标的所有特征从而进行分类和回归,检测网络共享内部特征,借助全连接网络与Softmax得到各个待检测目标具体属于哪个类别,同时利用边框的回归获得物体更加准确的位置ADDINNE.Ref.{9840AC81-A027-42A8-BA05-F70D176BC2A2}[50]。FasterR-CNN主要由5个流程构成ADDINNE.Ref.{1F439ED7-5C32-481E-B434-5A8620D2EA29}[51,52]。第一步是输入尺寸任意大小的图片数据。第二步是利用CNN对样本进行特征提取,FasterR-CNN网络使用VGG16网络进行图像特征图的提取,提取出的特征图被用于后续的RPN网络与全连接层。第三步RPN网络用于生成候选区域框,可以通过这一层判断出,锚点是属于前景还是背景,利用边界框,回归修正锚框用来获得精确候选框。第四步ROI池化,用于收集输入的特征图和候选的目标区域,综合这些信息提取目标区域的特征图送进全连接层进行判定,再次使用边框回归获取目标更加精准的位置信息。第五步就是目标的分类和回归,利用目标区域框的特征图来计算目标区域的类别。1.5基于FasterR-CNN的交通标志检测算法1.5.1实验环境与模型训练实验平台的操作系统为windows10,并使用GPU对模型进行训练,GPU类型NVIDIATeslaV100-PCIE-32GB显卡,使用python3.6编写脚本进行预数据数据处理以及得到最终结果,开发语言以python语言为主。模型实现为基于Keras的学习框架,搭建低复杂度的特征金字塔网络模型对交通标志进行检测。模型训练采用FasterR-CNN,并设定批处理尺寸batch_size为1,每次迭代(epoch)均随机排列数据集。将width与height都设为608。将最大迭代次数max_batches设定为40000,学习率为定值0.001,训练终止条件为损失函数值几乎保持不变,即当最大迭代次数达到40000次时终止学习。由于整个训练过程使用GPU进行,故修改configs文件的参数GPU=1和CUDNN=1。同样的,在整个实验中,需对YOLOv3、FasterR-CNN以及后续优化的模型在同一GPU服务器中进行训练。将文中第三章中制作出的数据集,按照80%和20%的比例拆分为训练集和测试集进行训练,用于测试FasterR-CNN目标检测算法对于交通标志图像的检测。本小节中的训练依旧使用了Tensorboard可视化工具,用来分析神经网络的训练情况,模型训练的loss值图像如图4-15所示。图4-15FasterR-CNN的loss值图像1.5.2实验结果FasterR-CNN目标检测模型对于各种复杂环境(曝光充足、运动模糊、曝光不足、大雪天气、大雾天气以及摄像头的实时检测)情况下的交通标志识别结果如图4-16至图4-22所示。(1)曝光充足(b)图4-16曝光充足的场景下检测效果图(2)运动模糊(b)图4-17运动模糊的场景下检测效果图(3)曝光不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论