CN111191608B - 基于YOLOv3改进的交通标志检测与识别方法 - Google Patents
基于YOLOv3改进的交通标志检测与识别方法 Download PDFInfo
- Publication number
- CN111191608B CN111191608B CN201911422311.6A CN201911422311A CN111191608B CN 111191608 B CN111191608 B CN 111191608B CN 201911422311 A CN201911422311 A CN 201911422311A CN 111191608 B CN111191608 B CN 111191608B
- Authority
- CN
- China
- Prior art keywords
- traffic sign
- yolov3
- training
- identification method
- improved
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/582—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of traffic signs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/25—Fusion techniques
- G06F18/253—Fusion techniques of extracted features
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于YOLOv3改进的交通标志检测与识别方法,包括以下步骤:(1)获取和标注交通标志图像数据集,作为训练集;(2)构建YOLOv3改进网络模型;(3)通过训练集对所述的YOLOv3改进网络模型进行训练;(4)通过训练好的YOLOv3改进网络模型对待测交通标志图像进行检查与识别。通过上述方法,本发明实现了相较于YOLOv3原有算法相近的检测性能,同时模型得到了精简。
Description
技术领域
本发明涉及人工智能机计算机视觉技术领域,尤其涉及一种基于YOLOv3改进的交通标志检测与识别方法。
背景技术
近年来自动驾驶技术蓬勃发展,而交通标志作为重要的安全指示标志,事关人民生命安全,其检测与识别更是尤为重要,其中不可避免的需要应用目标检测技术。目标检测技术分为传统目标检测技术与深度学习目标检测技术。
传统目标检测技术采用特征提取加上分类器的方法进行检测识别。该方法通过滑动窗口遍历图像,在对特征进行提取之后,用分类器进行分类。这种方法取得了一定的成果,但不可忽略的是,该方法复杂度高,并且强烈依赖于人工特征的选取、泛化能力差,无法应对复杂的应用场景。此外,分类器的性能也存在着缺陷。而随着深度学习的发展,以卷积神经网络为代表的深度学习目标检测技术逐渐崛起。
深度学习目标检测技术使用卷积神经网络进行特征提取,通过训练学习,实现了更加强大的适应能力和泛化能力。当前,深度学习目标检测主要分为两大类:以RCNN系列为代表的two-stage方法和以YOLO、SSD为代表的one-stage方法。
two-stage方法分为两个阶段,首先在图片中产生候选区域,然后对候选区域进行进一步的检测和分类,在准确率上获得了较强的性能。而one-stage方法直接对预测的目标进行回归,拥有速度上的优势。
在交通标志的检测识别应用场景中,对检测算法的速度和性能都提出了较高的需求。
YOLOv3网络模型是YOLO(You Only Look Once)系列目标检测算法中的第三版,采用多个尺度融合的方式进行预测,在保持速度优势的前提下,提升了预测精度,代表了目前目标检测领域的顶尖水平。YOLOv3是典型的基于回归方法的一阶段深度学习目标检测网络,利用了回归的思想,对于给定的输入图像,直接在图像的多个位置上回归出这个位置的目标边框以及目标类别。传统的YOLOv3网络在YOLOv2的基础上进行了一些应用性的改进,不仅借鉴ResNet(残差网络)提出了更为强大的Darknet53网络来进行特征提取,而且采用多个尺度相融合的方式进行目标检测,具有优异的检测性能,传统的YOLOv3网络模型在各大目标检测公共数据集上均具有优异的检测性能。
但是,对于交通标志识别任务而言,YOLOv3网络主体仍较为庞大,因此需要进一步改进。
发明内容
本发明提供了一种基于YOLOv3改进的交通标志检测与识别方法,对YOLOv3进行了改进,在保持YOLOv3算法在交通标志检测识别上的性能,同时对检测算法进行精简。
具体技术方案如下:
一种基于YOLOv3改进的交通标志检测与识别方法,包括以下步骤:
(1)获取和标注交通标志图像数据集,作为训练集;
(2)构建YOLOv3改进网络模型;
(3)通过训练集对所述的YOLOv3改进网络模型进行训练;
(4)通过训练好的YOLOv3改进网络模型对待测交通标志图像进行检查与识别。
本发明采用CTSD数据集(中国交通标志数据集)作为训练集,将CTSD数据集的格式修改为符合YOLO网络的输入格式。
步骤(2)中包括:
将YOLO网络模型原有的Darknet53网络替换为Mobilenetv2网络;从Mobilenetv2网络中提取三层特征图,通过Inv res2net block对三层特征图进一步提取特征,然后进行上采样与原有特征进行融合,作为新的候选特征;再使用NAS-FPN结构对新的候选特征进行进一步的特征融合;
采用GIoU改进损失函数。
进一步地,步骤(2)中包括:
(2-1)对YOLO网络模型原有的Darknet53网络进行修改,使用Mobilenetv2结构进行替换;
(2-2)增强多尺度特征融合能力;
依次从MobilenetV2结构中提取下采样分别为8、16、32的特征图:Route_1、Route_2和Route_3;使用Inv_res2net_block从Route_1、Route_2和Route_3中进一步特征提取,再进行上采样操作,获得融合后的特征C3、C4和C5。
(2-3)对特征C5进行卷积操作后,获得特征C6和C7;
(2-4)将获取的融合特征C3、C4、C5、C6和C7作为输入,通过NAS-FPN结构进行更深层次的融合,选取p3、p4和p5作为预测的输出;
NAS-FPN是谷歌大脑提出的一种通过自动架构搜索出的金字塔网络结构,其特征融合能力更加优秀,并且可以方便的进行多次融合。
(2-5)采用GIoU改进YOLO网络模型原有的定位损失函数。
IoU表达式为:
GIoU表达式为:
其中:A、B为任意凸形,C为可以包含A、B在内的最小的封闭形状。
GIoU损失表达式为:
LGIoU=1-GIoU。
步骤(2-4)中,通过NAS-FPN结构进行更深层次的融合,选择13×13、26×26、52×52作为三个输出特征图;网络重复次数设置为7。
进一步优选的,步骤(2)还包括:采用k-means++算法对训练集数据的标注信息进行聚类,获得所需的anchor值。采用该技术方案可以实现更好的检测效果,并加快收敛速度。
优选的,步骤(3)中,采用momentum动量算法进行训练,同时采用warm up策略防止梯度爆炸;进一步地,图片输入尺寸设置为416,初始学习率设置为1e-3。
优选的,步骤(3)中,采用多尺度训练策略以及mix up和/或randomcrop数据增强方法进行训练。
与现有技术相比,本发明的有益效果为:
本发明中的YOLOv3改进网络模型采用Mobilenetv2网络结构极大的减少了参数量;同时,通过Inv_res2net_block卷积与NAS-FPN结构优化了特征融合效果;采用GIoU改进损失函数;以及在训练中使用多尺度训练和数据增强方法,使得模型检测效果得到了提高。通过上述方法,本发明实现了相较于YOLOv3原有算法相近的检测性能,同时模型得到了精简。
附图说明
图1为本发明基于YOLOv3改进的交通标志检测与识别方法的流程图;
图2为本发明改进的模型结构示意图;
图3为Inv_res2net_block的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细描述,需要指出的是,以下所述实施例旨在便于对本发明的理解,而对其不起任何限定作用。
如图1所示,本发明基于YOLOv3改进的交通标志检测与识别方法包括以下步骤:
(1)准备数据集
本发明采用CTSD数据集(中国交通标志数据集)进行实验,实验需求数据集格式为YOLO网络的输入格式(VOC格式),因此需要对原有图片集标注的txt文件进行转化。通过读取标注文件,生成xml文件,存入Annotation文件夹中。并将数据分为训练(train)和测试(test)两部分,依次生成两份txt文件,存入Main文件夹。生成VOC数据集后,运行代码进行相关转化。
(2)对原有YOLOv3网络进行改进,具体改进措施如下:
对原有的Darknet53网络进行修改,使用Mobilenetv2结构进行替换。Mobilenetv2采用Inverted_res_block结构,改变原有Mobilenetv1结构先进行扩张,提高通道数,获取更多特征,最后进行压缩。同时采用Linear bottlenecks避免了Relu对特征的破坏。Mobilenetv2网络在缩减计算量的同时,拥有着良好的特征提取能力。
增强多尺度特征融合能力。仿照原有YOLOv3结构,如图2所示,依次从MobilenetV2结构中提取下采样倍数分别为8、16、32的特征图(feature map):Route_1、Route_2和Route_3。使用图3所示的Inv_res2net_block进行进一步特征提取,然后进行上采样操作,获得简单融合后的特征C3、C4和C5。
Inv_res2net_block是在原有的Inverted_res_block结构基础上,参考Res2net结构进行构建。通过增加小的残差块,增加了每一层的感受野。此外,在其中加入了SE block对通道关系进行建模,并在最后使用通道随机混合(Channel shuffle)实现通道间的信息交流。对C5进行卷积操作后,获得特征图输出C6和C7。其后,将获取的融合特征作为输入,通过NAS-FPN结构获得更深层次的融合,因交通标志的小目标特性,选取对应着下采样倍数为8、16、32的特征图p3、p4和p5作为预测的输出。图2中的NAS-FPN结构是谷歌大脑提出的一种通过自动架构搜索出的金字塔网络结构,其特征融合能力更加优秀,并且可以方便的进行多次融合。
采用GIoU改进损失函数。IoU是目标检测任务中最常用的指标,但是,当两个物体不相交时,两个物体无法回转梯度。同时,其对于目标检测中的尺度是不敏感的。检测任务中采用的回归损失与IoU优化并非完全等价的。GIoU对上述缺点进行了改进,本发明通过引入GIoU算法对原有损失函数进行修改。使用GIoU损失替代原有的定位损失函数部分,获得了更加优异的性能。
YOLOv3原有定位损失为:
Lloc=Lxy+Lwh
式中,K表示网格划分数目;M表示的是每个网格所预测的边框数量;表示第i个网格的第j个Bounding box是否负责检测目标;xi,yi,wi,hi分别为模型预测出的目标中心点的横坐标、纵坐标,宽度和高度; 为目标实际中心点的横坐标、纵坐标,宽度和高度。
IoU表达式为:
GIoU表达式为:
上述公式中:A、B为任意凸形,C为可以包含A、B在内的最小的封闭形状。
GIoU损失表达式为:
LGIoU=1-GIoU
(3)使用k-means++对训练集数据中标注的真实目标边框进行聚类
YOLOv3的原文中使用k-means算法来进行anchor的聚类,而k-means算法在初始时随机选取k个点作为聚类中心,所以结果会受到初始点选取的影响。而k-means++算法通过随机选取第一个聚类中心,其后通过选取远离已有的聚类中心的点作为新的聚类中心。通过上述方法,K-means++能够有效的改善最终的误差。
(4)使用改进后的模型进行模型训练
图片输入尺寸设置为416,初始学习率设置为1e-3,采用momentum动量算法进行训练,同时采用warm up策略防止梯度爆炸。为了进一步提高检测效果,使用多尺度训练方法及数据增强方法。通过这些训练方法,极大的提高了训练得到的模型的性能及泛化能力。
(5)使用训练好的模型进行最终的检测测验
设置网络状态为测试,可以通过参数设定获取相应下的实验结果,并在测试原图中进行可视化显示。
以上所述的实施例对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的具体实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于YOLOv3改进的交通标志检测与识别方法,其特征在于,包括以下步骤:
(1)获取和标注交通标志图像数据集,作为训练集;
(2)构建YOLOv3改进网络模型,包括:
(2-1)将YOLO网络模型原有的Darknet53网络替换为Mobilenetv2网络;
(2-2)依次从MobilenetV2结构中提取下采样倍数分别为8、16、32的特征图:Route_1、Route_2和Route_3;使用Inv_res2net_block从Route_1、Route_2和Route_3中进一步特征提取,再进行上采样操作,获得融合后的特征C3、C4和C5;Inv_res2net_block在原有的Inverted_res_block结构基础上,参考Res2net结构进行构建:通过增加小的残差块,增加每一层的感受野,加入了SE block对通道关系进行建模,并在最后使用通道随机混合实现通道间的信息交流;
(2-3)对特征C5进行卷积操作后,获得特征C6和C7;
(2-4)将特征C3、C4、C5、C6和C7作为输入,通过NAS-FPN结构进行更深层次的融合,选取对应着下采样倍数为8、16、32的特征图p3、p4和p5作为预测的输出;
(2-5)采用GIoU损失替换YOLO网络模型原有的定位损失函数;
IoU表达式为:
GIoU表达式为:
其中:A、B为任意凸形,C为可以包含A、B在内的最小的封闭形状;
GIoU损失表达式为:
LGI/U=1-GIoU;
(3)通过训练集对所述的YOLOv3改进网络模型进行训练;
(4)通过训练好的YOLOv3改进网络模型对待测交通标志图像进行检查与识别。
2.根据权利要求1所述的基于YOLOv3改进的交通标志检测与识别方法,其特征在于,采用CTSD数据集作为训练集,将CTSD数据集的格式修改为符合YOLO网络的输入格式。
3.根据权利要求1所述的基于YOLOv3改进的交通标志检测与识别方法,其特征在于,步骤(2-4)中,通过NAS-FPN结构进行更深层次的融合,选择13×13、26×26、52×52作为三个输出特征图;网络重复次数设置为7。
4.根据权利要求1~3任一项所述的基于YOLOv3改进的交通标志检测与识别方法,其特征在于,步骤(2)还包括:采用k-means++算法对训练集数据的标注信息进行聚类,获得所需的anchor值。
5.根据权利要求1所述的基于YOLOv3改进的交通标志检测与识别方法,其特征在于,步骤(3)中,采用momentum动量算法进行训练,同时采用warm up策略防止梯度爆炸。
6.根据权利要求1或5所述的基于YOLOv3改进的交通标志检测与识别方法,其特征在于,步骤(3)中,采用多尺度训练策略以及mix up和/或randomcrop数据增强方法进行训练。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911422311.6A CN111191608B (zh) | 2019-12-30 | 2019-12-30 | 基于YOLOv3改进的交通标志检测与识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911422311.6A CN111191608B (zh) | 2019-12-30 | 2019-12-30 | 基于YOLOv3改进的交通标志检测与识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111191608A CN111191608A (zh) | 2020-05-22 |
CN111191608B true CN111191608B (zh) | 2023-04-18 |
Family
ID=70705996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911422311.6A Active CN111191608B (zh) | 2019-12-30 | 2019-12-30 | 基于YOLOv3改进的交通标志检测与识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111191608B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111753787A (zh) * | 2020-07-01 | 2020-10-09 | 江苏金海星导航科技有限公司 | 一种分离式的交通标志检测与识别方法 |
CN112132032A (zh) * | 2020-09-23 | 2020-12-25 | 平安国际智慧城市科技股份有限公司 | 交通标志牌检测方法、装置、电子设备及存储介质 |
CN112257799A (zh) * | 2020-10-30 | 2021-01-22 | 电子科技大学中山学院 | 一种生活垃圾目标检测的方法、系统及装置 |
CN112668445A (zh) * | 2020-12-24 | 2021-04-16 | 南京泓图人工智能技术研究院有限公司 | 一种基于yolov5的蔬菜种类检测与识别方法 |
CN112699900A (zh) * | 2021-01-05 | 2021-04-23 | 东北林业大学 | 一种改进YOLOv4的交通标志识别方法 |
CN112508464B (zh) * | 2021-02-08 | 2021-06-01 | 常州微亿智造科技有限公司 | 基于注塑成型的产品检测方法和装置 |
CN113269161A (zh) * | 2021-07-16 | 2021-08-17 | 四川九通智路科技有限公司 | 一种基于深度学习的交通标识牌检测方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107368787A (zh) * | 2017-06-16 | 2017-11-21 | 长安大学 | 一种面向深度智驾应用的交通标志识别算法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SG11201704076YA (en) * | 2014-11-18 | 2017-06-29 | Agency Science Tech & Res | Method and device for traffic sign recognition |
US9760806B1 (en) * | 2016-05-11 | 2017-09-12 | TCL Research America Inc. | Method and system for vision-centric deep-learning-based road situation analysis |
CN109858349B (zh) * | 2018-12-25 | 2022-11-15 | 五邑大学 | 一种基于改进yolo模型的交通标志识别方法及其装置 |
CN109902609A (zh) * | 2019-02-22 | 2019-06-18 | 淮阴工学院 | 一种基于YOLOv3的交通标志检测与识别方法 |
CN110378239A (zh) * | 2019-06-25 | 2019-10-25 | 江苏大学 | 一种基于深度学习的实时交通标志检测方法 |
-
2019
- 2019-12-30 CN CN201911422311.6A patent/CN111191608B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107368787A (zh) * | 2017-06-16 | 2017-11-21 | 长安大学 | 一种面向深度智驾应用的交通标志识别算法 |
Non-Patent Citations (1)
Title |
---|
晏世武 ; 罗金良 ; 严庆 ; .基于改进Yolov3的目标检测的研究.智能计算机与应用.2019,(06),319-322. * |
Also Published As
Publication number | Publication date |
---|---|
CN111191608A (zh) | 2020-05-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111191608B (zh) | 基于YOLOv3改进的交通标志检测与识别方法 | |
Zhang et al. | CDNet: A real-time and robust crosswalk detection network on Jetson nano based on YOLOv5 | |
CN110163187A (zh) | 基于f-rcnn的远距离交通标志检测识别方法 | |
CN104361313B (zh) | 一种基于多核学习异构特征融合的手势识别方法 | |
CN107368787A (zh) | 一种面向深度智驾应用的交通标志识别算法 | |
CN105868700A (zh) | 一种基于监控视频的车型识别与跟踪方法及系统 | |
CN114495029B (zh) | 一种基于改进YOLOv4的交通目标检测方法及系统 | |
CN108090499A (zh) | 基于最大信息三元组筛选网络的数据主动标注方法和系统 | |
CN110502655B (zh) | 一种嵌入场景文字信息的图像自然描述语句生成方法 | |
CN109948707A (zh) | 模型训练方法、装置、终端及存储介质 | |
CN113591866B (zh) | 基于db与crnn的特种作业证件检测方法及系统 | |
CN112528934A (zh) | 一种基于多尺度特征层的改进型YOLOv3的交通标志检测方法 | |
CN102855486A (zh) | 一种广义图像目标检测方法 | |
CN108509833A (zh) | 一种基于结构化分析字典的人脸识别方法、装置及设备 | |
CN113239753A (zh) | 基于YOLOv4改进的交通标志检测与识别方法 | |
CN111353544A (zh) | 一种基于改进的Mixed Pooling-YOLOV3目标检测方法 | |
CN113378815B (zh) | 一种场景文本定位识别的系统及其训练和识别的方法 | |
CN110321897A (zh) | 基于图像语义分割识别非机动车异常行为的方法 | |
CN114998220A (zh) | 一种基于改进的Tiny-YOLO v4自然环境下舌像检测定位方法 | |
US20230186436A1 (en) | Method for fine-grained detection of driver distraction based on unsupervised learning | |
CN104978569A (zh) | 一种基于稀疏表示的增量人脸识别方法 | |
Wu et al. | Traffic sign detection based on SSD combined with receptive field module and path aggregation network | |
CN110472655A (zh) | 一种用于跨境旅游的标志物机器学习识别系统及方法 | |
CN113673506A (zh) | 一种基于多尺度特征金字塔的场景文本检测方法及系统 | |
Zhang et al. | License plate recognition model based on CNN+ LSTM+ CTC |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |