CN116704487B - 一种基于Yolov5s网络和CRNN的车牌检测与识别方法 - Google Patents
一种基于Yolov5s网络和CRNN的车牌检测与识别方法 Download PDFInfo
- Publication number
- CN116704487B CN116704487B CN202310690543.XA CN202310690543A CN116704487B CN 116704487 B CN116704487 B CN 116704487B CN 202310690543 A CN202310690543 A CN 202310690543A CN 116704487 B CN116704487 B CN 116704487B
- Authority
- CN
- China
- Prior art keywords
- layer
- module
- neg
- feature extraction
- license plate
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 48
- 238000000034 method Methods 0.000 title claims abstract description 27
- 102100032202 Cornulin Human genes 0.000 title claims abstract description 15
- 101000920981 Homo sapiens Cornulin Proteins 0.000 title claims abstract description 15
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 12
- 238000000605 extraction Methods 0.000 claims description 56
- 230000009466 transformation Effects 0.000 claims description 16
- 238000011176 pooling Methods 0.000 claims description 12
- 238000012360 testing method Methods 0.000 claims description 12
- 239000011159 matrix material Substances 0.000 claims description 11
- 210000000988 bone and bone Anatomy 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000012549 training Methods 0.000 claims description 8
- 230000008859 change Effects 0.000 claims description 6
- 238000011156 evaluation Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 claims description 4
- 238000012795 verification Methods 0.000 claims description 4
- 238000004140 cleaning Methods 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 3
- 230000002708 enhancing effect Effects 0.000 claims description 3
- 238000002372 labelling Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 abstract description 15
- 230000000694 effects Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000005286 illumination Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 101100096495 Caenorhabditis elegans spp-11 gene Proteins 0.000 description 1
- 102100033041 Carbonic anhydrase 13 Human genes 0.000 description 1
- 102100037709 Desmocollin-3 Human genes 0.000 description 1
- 101000867860 Homo sapiens Carbonic anhydrase 13 Proteins 0.000 description 1
- 101000880960 Homo sapiens Desmocollin-3 Proteins 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/62—Text, e.g. of license plates, overlay texts or captions on TV images
- G06V20/625—License plates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- 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)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Image Analysis (AREA)
Abstract
一种基于Yolov5s网络和CRNN的车牌检测与识别方法。该方法使用基于Yolov5s网络实现对车牌的一个精准检测与定位,通过添加注意力机制,可以增强网络对车牌区域的关注度,使得网络更加准确地定位和检测车牌。这有助于提高车牌检测算法对不同类型车牌的适应性和泛化能力。将精准定位的图像作为CRNN网络的输入,对车牌进行准确的识别。Yolov5s网络相较于原网络在准确性方面提高了4.87%,在AP上提升了6.06%,具有准确性较强,模型尺寸小优点。
Description
技术领域
本发明属于目标检测技术领域,涉及到一种基于Yolov5s网络和CRNN的车牌检测与识别方法。
背景技术
车牌检测与识别技术的背景源于对交通管理、安全监控和智能交通系统的需求。传统的车牌识别系统通常基于图像处理和模式识别算法,但其存在如下缺陷:
(1)传统方法通常需要手动设计和提取车牌的特征,例如颜色、形状、边缘等。这些特征的选择和提取过程需要依赖领域知识和经验,且对不同车牌样式和场景的适应性有限;
(2)对光照变化、遮挡、车牌变形和视角变化等因素的鲁棒性较差。当车牌图像存在这些问题时,传统方法容易产生错误的检测结果或无法正确识别车牌字符;
(3)图像处理和模式识别算法通常较为复杂,需要大量的计算和时间来完成车牌检测和识别任务。
申请号为201710531085.X的专利文献公开了一种基于深度学习卷积神经网络的车牌检测与识别方法,使用神经网络进行车牌检测与识别的训练,得到的模型再由切割好的字符单独进行检测与识别,最终合并成为结果。申请号为201810600935.1的专利文献公开了一种基于深度学习的车牌检测与识别的方法和装置,上述方法都实现了对车牌的检测与识别,但是存在准确率不高,对复杂场景下的车牌检测效果不好,实时性有待提高等问题。
因此,申请人提出一种基于Yolov5s网络和CRNN的车牌检测与识别方法。
发明内容
本发明是为了解决现有技术在车牌复杂检测过程中出现的漏检、误检,识别准确率不高,实时性不高,而提出的一种车牌检测与识别方法。该方法通过在检测图像的低级卷积层加入注意力机制,帮助网络更好的关注关键的特征,提高对图像敏感区域的注意度,使用深度可分离卷积模块降低模型的参数量,进一步提高实时性,使用更加优化的损失,从而整体提高车牌检测与定位的准确性。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于Yolov5s网络和CRNN的车牌检测与识别方法,它包括以下步骤:
步骤1:从目标数据集中选取若干照片,并从中获得验证集和训练集;
步骤2:对数据集进行清理,之后进行数据增强,采用对图像进行旋转、缩放、裁剪、翻转等操作生成更多的样本,之后对数据进行标注以及格式的转换;
步骤3:获得车牌的图像区域,得到车牌的四个角点坐标,然后通过特征点的位置计算透视变换矩阵,得到矫正之后的车牌图片;
步骤4:构建Yolov5s网络,将由步骤3获得的经过矫正后的图片通过Yolov5s网络进行精准检测与定位;
步骤5:在经过Yolov5s网络的检测与定位之后,将输出图像作为CRNN网络的输入进行车牌的准确识别;
步骤6:通过训练好的模型,在测试数据集上对车牌进行定位与识别,通过评价指标评估模型,调整参数;
步骤7:对来自步骤6训练好的模型进行充分的测试和调试,确保车牌检测与识别算法在不同场景件下的准确性和稳定性;
通过以上步骤实现对车牌的检测与定位。
在步骤3中,获得矫正之后的车牌图片采用以下步骤:
步骤3-1:获得车牌的四个角点坐标,4个点的坐标分别为(x2,y2),(x3,y3),(x1,y1),(x0,y0);
步骤3-2:将所获得的4个点的坐标通过透视变换矩阵变换,具体计算公式如下:
u=x'/w
v=y'/w'
其中x'y'w'分别为通过透视变换矩阵之后得到的齐次横坐标,齐次纵坐标,齐次缩放因子;
为透视变换矩阵,a11表示该值代表在x轴方向上的缩放系数,通常也被称为水平方向的拉伸系数,它决定了在变换后的图像中x坐标的缩放和拉伸程度。a12表示该值代表在x轴方向上的错切系数,通常也被称为水平方向的倾斜系数。它决定了在变换后的图像中x和y坐标的错切程度。a13表示该值代表在x轴方向上的平移量,通常也被称为水平方向的移动量,它决定了在变换后的图像中x坐标的平移程度。a21表示该值代表在y轴方向上的错切系数,通常也被称为垂直方向的倾斜系数。它决定了在变换后的图像中x和y坐标的错切程度。a22表示该值代表在y轴方向上的缩放系数,通常也被称为垂直方向的拉伸系数。它决定了在变换后的图像中y坐标的缩放和拉伸程度。a23表示该值代表在y轴方向上的平移量,通常也被称为垂直方向的移动量。它决定了在变换后的图像中y坐标的平移程度。a31,a32这两个参数通常都是0,因为在透视变换中不需要进行z轴方向上的变换。a33表示该值决定了透视效果的强度,通常也被称为透视系数。它是一个非常重要的参数,因为它控制了在变换后的图像中远离观察者的物体的大小和形状的变化程度。其中x,y,w为原始图片的像素点坐标;
步骤3-3:令w=1得到,经过透视变换之后相应的坐标为(u,v),计算公式如下:
其中kmn=amn/a33(m=1,2,3,n=1,2,3),kmn为计算透视变化矩阵时的一个中间变量;
步骤3-4:返回通过透视变换计算得出的4组对应点(u2,v2),(u3,v3),(u1,v1),(u0,v0);
在步骤4中,所构建的Yolov5s网络如下:
backbone特征提取模块的第一层StemBlock→backbone特征提取模块的第二层C3→backbone特征提取模块的第三层CA→backbone特征提取模块的第四层DSC→backbone特征提取模块的第五层C3→backbone特征提取模块的第六层CA→backbone特征提取模块的第七层DSC→backbone特征提取模块的第八层C3→backbone特征提取模块的第九层CA→backbone特征提取模块的第十层DSC→backbone特征提取模块的第十一层SPP→backbone特征提取模块的第十二层C3→backbone特征提取模块的第十三层CA;
backbone特征提取模块的第十三层CA→neck模块的第一层Conv→neck模块的第二层Upsample;backbone特征提取模块的第八层C3,neck模块的第二层Upsample→neck模块的第三层Concat;neck模块的第三层Concat→neck模块的第四层C3→neck模块的第五层Conv→neck模块的第六层Upsample;
backbone特征提取模块的第五层C3,neck模块的第六层Upsample→neck模块的第七层Concat;neck模块的第七层Concat→neck模块的第八层C3→neck模块的第九层Conv;
neck模块的第五层Conv,neck模块的第九层Conv→neck模块的第十层Concat;
neck模块的第十层Concat→neck模块的第十一层C3→neck模块的第十二层Conv;
neck模块的第一层Conv,neck模块的第十二层Conv→neck模块的第十三层Concat→neck模块的第十四层C3;
CA注意力机制模块如下:
输入层→第一次Avg Pooling;输入层→第二次Avg Pooling;
第一次Avg Pooling,第二次Avg Pooling→第一次Concat,第一次卷积→第一次BatchNorm,Non-linear;
第一次BatchNorm,Non-linear→第二次卷积;第一次BatchNorm,Non-linear→第三次卷积;
第二次卷积→第一次Sigmoid;第三次卷积→第二次Sigmoid;
输入层,第一次Sigmoid,第二次Sigmoid→输出;
目标检测算法中常用IOU,但是普通IOU效果不好,于是使用EIOU替代传统IOU可以提高算法的性能,它对尺度、形状、样本不平衡和类别信息等因素进行了更好的建模,从而提高了目标检测算法的鲁棒性和准确性(在实验表格2中体现):
在目标检测算法中IOU是一个常用的指标,它不仅可以用来确定正样本和负样本,还可以用来输出预测框和真实框之间的真实距离,综合来看IOU可以看作是一种综合表示目标框的方式,它不仅包含目标框的位置和大小信息,还包含了目标的类别信息和存在概率等其他信息,但是IOU也有较大的缺点:对尺度不敏感、IOU只考虑检测框的重叠程度而忽视了内部细节、正负样本的不平衡性;
基于上面所说的,我们采用了EIOU替换传统的IOU,EIOU损失函数通过引入对数运算,可以有效地缓解普通IOU在处理尺度差异时的敏感性,EIOU损失函数将目标检测框视为概率分布,通过计算检测框内部的区域重叠,可以更好地捕捉目标的形状和内部特征,EIOU损失函数在计算目标检测框之间的重叠时,考虑了正负样本的不平衡性;
其中LEIOU的计算公式如下:
LIOU=1-IOU
ELOU损失LEIOU由IOU损失LIOU、距离损失Ldis、边长损失Lasp三部分构成其中Cw表示矩形闭包的宽,Ch表示矩形闭包的高,wgt表示真实框的宽,hgt表示真实框的高,c表示分类数,w表示预测框的宽,h表示真实框的高;
使用的深度可分离卷积模块DSC结构如下:
输入层→3×3卷积;3×3卷积→BN;BN→Relu;Relu→1×1卷积;1×1卷积→BN;BN→Relu。
与现有技术相比,本发明具有如下技术效果:
1)本发明采用Yolov5s加CRNN的网络结构对车牌进行精准定位与识别,在原始的算法中加入注意力机制,使用深度可分离卷积模块,集中关注车牌区域,提高车牌检测的准确性。由于车牌中的字符是识别车牌的关键信息。通过注意力机制,模型可以在字符区域集中关注,提取字符的特征并进行识别。从而提升整体的检测与识别性能;
2)本发明加入了高效的CA注意力机制模块,能够更好的关注车牌区域信息,提高模型检测的正确性;本发明使用深度可分离卷积模块,降低模型参数量,提高语义信息,便于在移动端部署;
3)本发明使用EIOU损失,更好地学习目标的形状和纹理等特征提高模型的检测精度;
4)相较于Yolov5s网络,本发明方法在Precision、Recall、F1方面分别提高了7.49%、1.75%、4.87%,具有较好的检测与识别效果。
附图说明
下面结合附图和实施例对本发明作进一步说明:
图1为本发明的车牌检测与识别流程图;
图2为现有技术中Yolov5s网络结构图;
图3为本发明的改进的Yolov5s网络结构图;
图4为透视变换原理图;
图5为DSC模块原理图;
图6为CA注意力机制原理图;
图7为车牌检测与识别实验结果图;
图8为现有技术中CRNN网络结构图。
具体实施方式
一种基于Yolov5s网络和CRNN的车牌检测与识别方法,本方法通过在检测图像的低级卷积层加入注意力机制,帮助网络更好的关注关键的特征,提高对图像敏感区域的注意度,使用深度可分离卷积模块降低模型的参数量,使用更加优化的损失,从而整体提高车牌检测与定位的准确性。
一种车牌检测与识别方法,它包括以下步骤:
步骤1从CCPD2019数据集中挑选出117500张图片,选取百分之10即11750张图片作为验证集,选取百分之10即11750张图片作为测试集,其余图片作为训练集,以初始学习率为0.01,训练的轮数为120轮进行训练;
步骤2对数据集进行清理,去除不完整的图片、模糊的图像、重复的图像,之后进行数据增强,为了增加模型的泛化能力,采用对图像进行旋转、缩放、裁剪、翻转等操作生成更多的样本,之后对数据进行标注以及格式的转换;
步骤3读取车牌的图像区域,得到车牌的4个角点坐标,然后通过特征点的位置计算透视变换矩阵得到矫正之后的车牌图片;
步骤4构建Yolov5s网络,该子网包括:backbone特征提取模块和neck模块;
步骤5对在步骤4构建的Yolov5s网络上面进行改进,加入高效的CA注意力机制模块,将普通卷积模块替换为深度可分离卷积模块(DSC),并且使用更优的EIOU构建新的网络,进一步提升Yolov5s网络的检测准确性,对来自步骤3经过矫正之后的车牌图片进行精准检测与定位;
步骤6在经过Yolov5s网络的定位之后,将输出图像作为CRNN的输入进行车牌的准确识别;
步骤7通过训练好的模型,在测试数据集上对车牌进行定位与识别,通过评价指标评估模型,调整参数;
步骤8在移动设备上进行充分的测试和调试,确保车牌检测与识别算法在不同场景件下的准确性和稳定性;
通过以上步骤实现对对车牌的检测与定位。
如图2所示,为现有技术中的Yolov5s网络。
如图3所示,在步骤5中构建的Yolov5s网络如下:
backbone特征提取模块的第一层StemBlock1→backbone特征提取模块的第二层C32→backbone特征提取模块的第三层CA3→backbone特征提取模块的第四层DSC4→backbone特征提取模块的第五层C35→backbone特征提取模块的第六层CA6→backbone特征提取模块的第七层DSC7→backbone特征提取模块的第八层C38→backbone特征提取模块的第九层CA9→backbone特征提取模块的第十层DSC10→backbone特征提取模块的第十一层SPP11→backbone特征提取模块的第十二层C312→backbone特征提取模块的第十三层CA13;
backbone特征提取模块的第十三层CA13→neck模块的第一层Conv14→neck模块的第二层Upsample15;
backbone特征提取模块的第八层C38,neck模块的第二层Upsample15→neck模块的第三层Concat16;
neck模块的第三层Concat16→neck模块的第四层C317→neck模块的第五层Conv18→neck模块的第六层Upsample19;
backbone特征提取模块的第五层C35,neck模块的第六层Upsample19→neck模块的第七层Concat20;
neck模块的第七层Concat20→neck模块的第八层C321→neck模块的第九层Conv22;
neck模块的第五层Conv18,neck模块的第九层Conv22→neck模块的第十层Concat23;neck模块的第十层Concat23→neck模块的第十一层C324→neck模块的第十二层Conv25;
neck模块的第一层Conv14,neck模块的第十二层Conv25→neck模块的第十三层Concat26→neck模块的第十四层C327。
如图6所示,在步骤5的Yolov5s网络中加入的CA注意力机制模块如下:
输入层→第一次Avg Pooling;输入层→第二次Avg Pooling;
第一次Avg Pooling,第二次Avg Pooling→第一次Concat,第一次卷积→第一次BatchNorm,Non-linear;
第一次BatchNorm,Non-linear→第二次卷积;第一次BatchNorm,Non-linear→第三次卷积;第二次卷积→第一次Sigmoid;第三次卷积→第二次Sigmoid;
输入层,第一次Sigmoid,第二次Sigmoid→输出。
如图5所示,在步骤5的Yolov5s网络中加入的深度可分离卷积模块DSC如下:
输入层→3×3卷积;3×3卷积→BN;BN→Relu;Relu→1×1卷积;1×1卷积→BN;BN→Relu。在此基础上引入EIOU损失,更好地学习目标的形状和纹理等特征,从而提高模型的准确性,公式为:
完成网络构建,开始训练,保存训练的模型;
使用训练好的模型在测试集上进行测试,测试采用Precision、Recall、F1参数指标进行评价,Precision表示预测为正例中真正为正例的样本数占预测为正例的样本数的比例,Recall表示表示真正为正例中被预测为正例的样本数占真正为正例的样本数的比例,F1表示是精度和召回率的调和平均数,综合Precision越高说明算法检测车牌的正确性越好,Recall越高说明真实车牌中被检测出的车牌占真实车牌比例越高,效果越好,F1越高说明Precision和Recall表现好,能够正确检测出车牌并避免漏检;
Precision的计算公式如下:
Precision=TP/(TP+FP)
其中TP是一个参数指标,表示检测正确的车牌数量,FP是一个参数指标表示非车牌检测为车牌的数量。
Recall的计算公式如下:
Recall=TP/(TP+FN)
其中FN是一个参数表示车牌检测为非车牌的数量。
F1的计算公式如下:
F1=2*Precision*Recall/(Precision+Recall)
AP表示为以Recall为横坐标,以Precision为纵坐标进行积分得到图形的面积,其值的范围在0-1内。
实施例:
本发明的代码基于Pytorch框架实现,在Ubuntu下面使用NVIDIA3070GPU训练模型,采用Adam优化器进行优化网络,其动量衰减指数,初始学习率为0.01,使用Warmup进行预热学习率,使用余弦衰减方式调整学习率。选取CCPD_2019数据集测试,CCPD为国内最大的开源数据集,包括ccpd_base,ccpd_db,ccpd_rotate,ccpd_tilt,ccpd_challenge,ccpd_weather,ccpd_light,ccpd_fn这八类数据集,在其中进行测试,其中ccpd_base是基本数据集,车牌较为规律,ccpd_db为更大的角度、更多的遮挡和更强的光照变化,ccpd_rotate的旋转角度比较大,ccpd_tilt具有不同的倾斜角度,ccpd_challenge具有更多的噪声和干扰,ccpd_weather具有不同的恶劣天气条件,ccpd_light为具有不同的光照条件,ccpd_fn具有更多变形的扭曲。选取的数量依次为100000,1000,5000,3000,1000,3000,2000,2500张图片按照8:1:1划分为训练集,验证集,测试集。实验中分别加入CBAM,SE,ECA,CA注意力机制进行实验(在Yolov5s网络的backbone特征提取模块加入,由于可以在不同层加入,每一种注意力机制选择加入位置实验结果最好的放在表1),验证哪种主流注意力机制效果最好,以Precision,Recall,F1,AP为评价参数指标,实验结果如表1所示。Yolov5s和CRNN以下称为原网络。
表1为加入注意力机制实验结果
在上面表1的基础上,我们选择加入CA注意力机制和DSC,接着加入EIOU,CIOU,WIOU继续进行实验,实验结果如表2所示
表2为加入不同IOU实验结果图
实验结果表明本文提出的方法在中国最大的开源数据集上面取得了优异的效果,在准确率方面相较于原网络提升了4.87%,在Recall方面提升了1.75%,在Precision方面提升了7.49%,总体来说精确度较高,能够应对车牌复杂场景的检测与识别,具有良好的商用价值。
Claims (5)
1.一种基于Yolov5s网络和CRNN的车牌检测与识别方法,其特征在于,它包括以下步骤:
步骤1:从目标数据集中选取若干照片,并从中获得验证集和训练集;
步骤2:对数据集进行清理,之后进行数据增强,采用对图像进行旋转、缩放、裁剪、翻转等操作生成更多的样本,之后对数据进行标注以及格式的转换;
步骤3:获得车牌的图像区域,得到车牌的四个角点坐标,然后通过特征点的位置计算透视变换矩阵,得到矫正之后的车牌图片;
步骤4:构建Yolov5s网络,将由步骤3获得的经过矫正后的图片通过Yolov5s网络进行精准检测与定位;
步骤5:在经过Yolov5s网络的检测与定位之后,将输出图像作为CRNN网络的输入进行车牌的准确识别;
步骤6:通过训练好的模型,在测试数据集上对车牌进行定位与识别,通过评价指标评估模型,调整参数;
步骤7:对来自步骤6训练好的模型进行充分的测试和调试,确保车牌检测与识别算法在不同场景件下的准确性和稳定性;
在步骤4中,所构建的Yolov5s网络如下:
backbone特征提取模块的第一层StemBlock(1)→backbone特征提取模块的第二层C3(2)→backbone特征提取模块的第三层CA(3)→backbone特征提取模块的第四层DSC(4)→backbone特征提取模块的第五层C3(5)→backbone特征提取模块的第六层CA(6)→backbone特征提取模块的第七层DSC(7)→backbone特征提取模块的第八层C3(8)→backbone特征提取模块的第九层CA(9)→backbone特征提取模块的第十层DSC(10)→backbone特征提取模块的第十一层SPP(11)→backbone特征提取模块的第十二层C3(12)→backbone特征提取模块的第十三层CA(13);
backbone特征提取模块的第十三层CA(13)→neck模块的第一层Conv(14)→neck模块的第二层Upsample(15);
backbone特征提取模块的第八层C3(8),neck模块的第二层Upsample(15)→neck模块的第三层Concat(16);
neck模块的第三层Concat(16)→neck模块的第四层C3(17)→neck模块的第五层Conv(18)→neck模块的第六层Upsample(19);
backbone特征提取模块的第五层C3(5),neck模块的第六层Upsample(19)→neck模块的第七层Concat(20);
neck模块的第七层Concat(20)→neck模块的第八层C3(21)→neck模块的第九层Conv(22);
neck模块的第五层Conv(18),neck模块的第九层Conv(22)→neck模块的第十层Concat(23);neck模块的第十层Concat(23)→neck模块的第十一层C3(24)→neck模块的第十二层Conv(25);
neck模块的第一层Conv(14),neck模块的第十二层Conv(25)→neck模块的第十三层Concat(26)→neck模块的第十四层C3(27);
通过以上步骤实现对车牌的检测与定位。
2.根据权利要求1所述的方法,其特征在于,在步骤3中,获得矫正之后的车牌图片采用以下步骤:
步骤3-1:获得车牌的四个角点坐标,4个点的坐标分别为(x2,y2),(x3,y3),(x1,y1),(x0,y0);
步骤3-2:将所获得的4个点的坐标通过透视变换矩阵变换,具体计算公式如下:
u=x'/w
v=y'/w'
其中x'y'w'分别为通过透视变换矩阵之后得到的齐次横坐标,齐次纵坐标,齐次缩放因子;
为透视变换矩阵;
步骤3-3:令w=1得到,经过透视变换之后相应的坐标为(u,v),计算公式如下:
其中kmn=amn/a33(m=1,2,3,n=1,2,3),kmn为计算透视变化矩阵时的一个中间变量;
步骤3-4:返回通过透视变换计算得出的4组对应点(u2,v2),(u3,v3),(u1,v1),(u0,v0)。
3.根据权利要求1所述的方法,其特征在于,所述backbone特征提取模块的第三层CA(3)、backbone特征提取模块的第六层CA(6)、backbone特征提取模块的第九层CA(9)、backbone特征提取模块的第十三层CA(13)如下:
输入层→第一次Avg Pooling;输入层→第二次Avg Pooling;
第一次Avg Pooling,第二次Avg Pooling→第一次Concat,第一次卷积→第一次BatchNorm,Non-linear;
第一次BatchNorm,Non-linear→第二次卷积;第一次BatchNorm,Non-linear→第三次卷积;
第二次卷积→第一次Sigmoid;第三次卷积→第二次Sigmoid;
输入层,第一次Sigmoid,第二次Sigmoid→输出。
4.根据权利要求1至3其中之一所述的方法,其特征在于,在步骤4中,采用EIOU对所建立的Yolov5s网络进行优化,具体采用如下损失函数及公式;
LIOU=1-IOU
ELOU损失LEIOU由IOU损失LIOU、距离损失Ldis、边长损失Lasp三部分构成其中Cw表示矩形闭包的宽,Ch表示矩形闭包的高,wgt表示真实框的宽,hgt表示真实框的高,c表示分类数,w表示预测框的宽,h表示真实框的高。
5.根据权利要求1所述的方法,其特征在于,使用的深度可分离卷积模块DSC结构如下:
输入层→3×3卷积;3×3卷积→BN;BN→Relu;Relu→1×1卷积;1×1卷积→BN;BN→Relu。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310690543.XA CN116704487B (zh) | 2023-06-12 | 2023-06-12 | 一种基于Yolov5s网络和CRNN的车牌检测与识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310690543.XA CN116704487B (zh) | 2023-06-12 | 2023-06-12 | 一种基于Yolov5s网络和CRNN的车牌检测与识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116704487A CN116704487A (zh) | 2023-09-05 |
CN116704487B true CN116704487B (zh) | 2024-06-11 |
Family
ID=87835331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310690543.XA Active CN116704487B (zh) | 2023-06-12 | 2023-06-12 | 一种基于Yolov5s网络和CRNN的车牌检测与识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116704487B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117854053A (zh) * | 2023-12-05 | 2024-04-09 | 淮阴工学院 | 一种基于超维计算的车牌检测与识别系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108830213A (zh) * | 2018-06-12 | 2018-11-16 | 北京理工大学 | 基于深度学习的车牌检测与识别方法和装置 |
CN111598089A (zh) * | 2020-05-16 | 2020-08-28 | 湖南大学 | 一种基于深度学习的车牌矫正与识别方法 |
CN112308092A (zh) * | 2020-11-20 | 2021-02-02 | 福州大学 | 一种基于多尺度注意力机制的轻量型车牌检测与识别方法 |
CN114119953A (zh) * | 2021-11-25 | 2022-03-01 | 安徽百诚慧通科技有限公司 | 快速车牌定位和矫正方法、存储介质及设备 |
CN114723992A (zh) * | 2022-04-05 | 2022-07-08 | 哈尔滨理工大学 | 一种基于YOLOv5改进的车辆检测与识别方法 |
WO2022147965A1 (zh) * | 2021-01-09 | 2022-07-14 | 江苏拓邮信息智能技术研究院有限公司 | 基于MixNet-YOLOv3和卷积递归神经网络CRNN的算术题批阅系统 |
CN114898352A (zh) * | 2022-06-29 | 2022-08-12 | 松立控股集团股份有限公司 | 一种同时实现图像去雾与车牌检测的方法 |
CN115019296A (zh) * | 2022-08-04 | 2022-09-06 | 之江实验室 | 一种基于级联的车牌检测识别方法和装置 |
CN115578722A (zh) * | 2022-10-17 | 2023-01-06 | 松立控股集团股份有限公司 | 基于车牌间协同学习机制的车牌检测方法 |
CN115661628A (zh) * | 2022-10-28 | 2023-01-31 | 桂林理工大学 | 一种基于改进YOLOv5S模型的鱼类检测方法 |
CN115690770A (zh) * | 2022-11-11 | 2023-02-03 | 河北工业大学 | 基于空间注意力特征的非受限场景下的车牌识别方法 |
CN116189191A (zh) * | 2023-03-09 | 2023-05-30 | 华南农业大学 | 一种基于yolov5的可变长车牌识别方法 |
-
2023
- 2023-06-12 CN CN202310690543.XA patent/CN116704487B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108830213A (zh) * | 2018-06-12 | 2018-11-16 | 北京理工大学 | 基于深度学习的车牌检测与识别方法和装置 |
CN111598089A (zh) * | 2020-05-16 | 2020-08-28 | 湖南大学 | 一种基于深度学习的车牌矫正与识别方法 |
CN112308092A (zh) * | 2020-11-20 | 2021-02-02 | 福州大学 | 一种基于多尺度注意力机制的轻量型车牌检测与识别方法 |
WO2022147965A1 (zh) * | 2021-01-09 | 2022-07-14 | 江苏拓邮信息智能技术研究院有限公司 | 基于MixNet-YOLOv3和卷积递归神经网络CRNN的算术题批阅系统 |
CN114119953A (zh) * | 2021-11-25 | 2022-03-01 | 安徽百诚慧通科技有限公司 | 快速车牌定位和矫正方法、存储介质及设备 |
CN114723992A (zh) * | 2022-04-05 | 2022-07-08 | 哈尔滨理工大学 | 一种基于YOLOv5改进的车辆检测与识别方法 |
CN114898352A (zh) * | 2022-06-29 | 2022-08-12 | 松立控股集团股份有限公司 | 一种同时实现图像去雾与车牌检测的方法 |
CN115019296A (zh) * | 2022-08-04 | 2022-09-06 | 之江实验室 | 一种基于级联的车牌检测识别方法和装置 |
CN115578722A (zh) * | 2022-10-17 | 2023-01-06 | 松立控股集团股份有限公司 | 基于车牌间协同学习机制的车牌检测方法 |
CN115661628A (zh) * | 2022-10-28 | 2023-01-31 | 桂林理工大学 | 一种基于改进YOLOv5S模型的鱼类检测方法 |
CN115690770A (zh) * | 2022-11-11 | 2023-02-03 | 河北工业大学 | 基于空间注意力特征的非受限场景下的车牌识别方法 |
CN116189191A (zh) * | 2023-03-09 | 2023-05-30 | 华南农业大学 | 一种基于yolov5的可变长车牌识别方法 |
Non-Patent Citations (4)
Title |
---|
Application of an Improved YOLOv5 Algorithm in Real-Time Detection of Foreign Objects by Ground Penetrating Radar;Qiu, Zhi等;《REMOTE SENSING》;20220503;全文 * |
基于改进YOLOv3和BGRU的车牌识别系统;史建伟;章韵;;计算机工程与设计;20200816(08);全文 * |
基于改进YOLOv5s 和多模态图像的树上毛桃检测;罗庆等;《智慧农业(中英文)》;正文第84-104页 * |
基于深度学习的车牌识别系统设计;徐渡等;《电脑知识与技术》;正文第21-23页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116704487A (zh) | 2023-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109360179B (zh) | 一种图像融合方法、装置及可读存储介质 | |
JP2009086926A (ja) | 画像認識方法および装置 | |
CN116704487B (zh) | 一种基于Yolov5s网络和CRNN的车牌检测与识别方法 | |
CN108460833A (zh) | 一种基于bim构建传统建筑数字化保护与修复的信息平台 | |
CN114140623A (zh) | 一种图像特征点提取方法及系统 | |
CN114241194A (zh) | 一种基于轻量级网络的仪表识别及读数方法 | |
CN115908774B (zh) | 一种基于机器视觉的变形物资的品质检测方法和装置 | |
CN112926426A (zh) | 基于监控视频的船舶识别方法、系统、设备及存储介质 | |
CN114926826A (zh) | 场景文本检测系统 | |
CN110321869A (zh) | 基于多尺度融合网络的人员检测和提取方法 | |
CN112528994B (zh) | 一种自由角度车牌检测方法、车牌识别方法和识别系统 | |
CN111898525B (zh) | 烟雾识别模型的构建方法、进行烟雾检测的方法及装置 | |
CN113052234A (zh) | 一种基于图像特征和深度学习技术的玉石分类方法 | |
CN116958595A (zh) | 一种基于图像块区域特征点的视觉slam回环检测改进方法 | |
CN116485783A (zh) | 一种改进的深度分离层聚合和空间增强注意力的布匹瑕疵检测方法 | |
CN114782239A (zh) | 一种基于卷积神经网络的数字水印添加方法及系统 | |
CN108280815B (zh) | 一种面向监控场景结构的几何校正方法 | |
CN111523478B (zh) | 一种作用于目标检测系统的行人图像检测方法 | |
CN111797934A (zh) | 路标识别方法及装置 | |
CN105139428A (zh) | 一种基于四元数的彩色图像surf特征描述方法和系统 | |
CN117095033B (zh) | 一种基于图像与几何信息引导的多模态点云配准方法 | |
CN117115791A (zh) | 一种基于多分辨率深度特征学习的指针仪表读数识别方法 | |
CN114612864B (zh) | 一种基于深度学习分割策略的智能黑烟检测方法和系统 | |
CN112381738B (zh) | 一种基于相关运算的透视图像自适应校正算法 | |
CN117670925A (zh) | 一种基于目标检测的多目标快速跟踪算法 |
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 |