一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种车牌识别方法及装置

2022-08-10 16:26:12 来源:中国专利 TAG:


1.本发明涉及图像识别及神经网络技术领域,特别涉及一种基于视频流的车牌识别方法及装置。


背景技术:

2.车牌检测识别技术的应用己经十分广泛,尤其是车牌识别在智能交通系统中起着非常重要的作用。尽管目前的技术对于高速收费站卡口、停车场卡口等简单场景的车牌检测识别己经具有足够高的精度,但是在一些复杂场景中,如监控视频连续拍摄的远距离、高速度、弱光照、大角度等诸多不确定因素影响下车牌识别仍有很大的优化空间。目前已公开的现有技术要么不支持这种复杂的视频流场景,要么识别效果较差。
3.例如,专利文献(申请号201511016292.9)公开了一种基于视频流的车牌识别方法、系统及智能数字摄像机,先根据原始帧图像的熵和信噪比分别设定阈值,将各个位置分为最佳信息区域,模糊区域和较差信息区域,再选择车牌每个位置的最佳信息区域拼接为融合的最佳信息图像进行识别,最后计算识别结果的置信度得到最终的车牌识别结果。该方法很大程度上依赖于阈值的选择,尤其在变换场景时需要重新计算并预设6个阈值,利用熵计算图像质量可能会出现图像梯度不同、边缘锐度不同、清晰度不同,但熵相同的无法区分的情况。
4.又如,有专利和论文提出从监控视频中选择车牌质量好的视频段或帧图像进行识别,可以在一定程度上提高车牌识别的时间效率,但仍存在需要特写摄像头拍摄或车牌质量评价不准确等不足之处。


技术实现要素:

5.有鉴于此,本发明的发明目的是:对所有视频流数据进行分析,使得车牌能够被准确识别。
6.为达到上述目的,本发明的技术方案具体是这样实现的:
7.本发明提供了一种车牌识别方法,该方法包括:
8.将预定时间段内拍摄的至少包含有一辆车的视频流数据输入到离线车辆跟踪网络模型,获取各车辆轨迹图像序列;
9.将车辆轨迹图像序列输入到深度学习车牌检测网络,提取到与该车辆轨迹图像序列相对应的车牌图像序列;
10.根据图像面积、平均梯度和质量分数,对该车辆车牌图像序列中的每一车牌图像进行排序,得到该车辆的最优车牌图像;
11.将所述最优车牌图像输入到lprnet字符识别网络模型,得到该车辆的车牌号码。
12.本发明还提供了一种车牌识别装置,该装置包括:
13.离线分析模块,将预定时间段内拍摄的至少包含有一辆车的视频流数据输入到离线车辆跟踪网络模型,获取各车辆轨迹图像序列;
14.车牌截图模块,将车辆轨迹图像序列输入到深度学习车牌检测网络,提取到与该车辆轨迹图像序列相对应的车牌图像序列;
15.最优评价模块,根据图像面积、平均梯度和质量分数,对该车辆车牌图像序列中的每一车牌图像进行排序,得到该车辆的最优车牌图像;
16.车牌识别模块,将所述最优车牌图像输入到lprnet字符识别网络模型,得到该车辆的车牌号码。
17.由上述的技术方案可见,本发明提出了一种车牌识别方法及装置,该方法包括:将预定时间段内拍摄的至少包含有一辆车的视频流数据输入到离线车辆跟踪网络模型,获取各车辆轨迹图像序列;将车辆轨迹图像序列输入到深度学习车牌检测网络,提取到与该车辆轨迹图像序列相对应的车牌图像序列;根据图像面积、平均梯度和质量分数,对该车辆车牌图像序列中的每一车牌图像进行排序,得到该车辆的最优车牌图像;将所述最优车牌图像输入到lprnet字符识别网络模型,得到该车辆的车牌号码。
18.本发明是针对监控视频流中的运动车辆,提出一种选择最优车牌图像并对其进行识别的方法及装置。该方法充分考虑行驶中车辆的遮挡、距离摄像头的远近、运动快慢对画面清晰度的影响等因素,综合运用目标跟踪、图像质量评价和基于深度学习的lprnet(license plate recognition via deep neural networks)识别技术,在保证时间效率的前提下,能够提高车牌识别的准确率,适用于现有视频监控系统中车辆的车牌识别,尤其对被判定为违章的车辆,即使出现短时遮挡或瞬间模糊,也能被正确识别。本发明操作步骤简单,易于集成,在基于视频流的车牌识别应用中具有较好的推广价值。
附图说明
19.图1为本发明车牌识别方法的流程示意图。
20.图2为本发明实施例中生成车辆轨迹图像序列的图结构示意图。
21.图3为本发明实施例中所拍摄视频中的帧画面示意图。
22.图4为本发明实施例中随机选出的一车辆轨迹图像序列示意图。
23.图5为本发明实施例中与图4对应的同一车辆车牌图像序列示意图。
24.图6为本发明实施例中根据指标对图5的同一车辆车牌图像序列进行评估的数据统计图。
25.图7为本发明实施例中车辆压线违章及其前后时刻车牌识别效果图。
26.图8为本发明车牌识别装置的结构示意图。
具体实施方式
27.为使本发明的目的、技术方案、及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
28.本发明将预定时间段内拍摄的至少包含有一辆车的视频流数据输入到离线车辆跟踪网络模型,可以对所有视频帧进行分析,能够把所有帧都关联上,从而确认是同一辆车的轨迹图像序列。利用深度学习车牌检测网络,提取到与该车辆轨迹图像序列相对应的车牌图像序列。然后根据图像面积、平均梯度和质量分数,在同一辆车的轨迹图像序列中找到最优车牌图像,最终获取车牌号码。
29.实施例一
30.本发明提供了一种车牌识别方法,流程示意图如图1所示,包括以下步骤:
31.步骤11、将预定时间段内拍摄的至少包含有一辆车的视频流数据输入到离线车辆跟踪网络模型,获取各车辆轨迹图像序列。
32.本发明中,通过摄像头获取包含车辆的视频流数据。不需要架设特写摄像头,利用现有已经架设的监控摄像头即可,分辨率达到960p及以上,效果更佳。离线车辆跟踪网络模型指的是可以对摄像头预定时间段内所拍摄的所有视频帧进行分析。车辆轨迹图像序列,指的是能标识该车辆轨迹的多个图像,不同的序列具有不同的标识。每个车辆轨迹图像序列包含不同数量的同一辆车在不同帧中的截图。
33.本步骤中,将预定时间段内拍摄的至少包含有一辆车的视频流数据输入到离线车辆跟踪网络模型,获取各车辆轨迹图像序列,包括:
34.步骤111、将预定时间段内拍摄的至少包含有一辆车的视频流数据的每一帧输入到深度学习车辆检测网络,得到每一车辆的边界框,作为图结构中一个目标对象;
35.深度学习是机器学习中的一个应用十分广泛的分支,其常用的结构是一个多层神经网络。“深度”则是指网络对特征的多次变换,即通过多层网络之间输入与输出的非线性变换,使网络学习到更深层次、更抽象的特征。神经网络的使用过程通常分两个阶段:训练网络和使用网络进行预测。第一个阶段训练网络是用已知的数据作为网络的输入和输出,使用大量这样的样本来训练网络中的参数,使网络获得有用的特征。第二阶段则是将数据输入训练好的网络,得到网络预测的输出结果。
36.其中,视频流数据可能监控到多辆车,也就是说,每一帧中都包含不同数量的车辆,本步骤就是将车与车之间区分开来,获取每一帧中每一辆车的边界框。如此,后续就可以跟踪同一辆车的边界框了,从而获取轨迹。
37.步骤112、将图结构中的目标对象进行数据关联,得到各车辆轨迹图像序列。本步骤将多目标跟踪问题转换为最小损失流问题,所跟踪的边界框作为图结构中一个目标对象。具体包括以下:
38.a、计算相邻帧两个边界框之间的交并比(intersection-over-union,iou),根据所述交并比得到边的损失值;
39.其中,交并比代表两个边界框的重叠程度,交并比的值越高,重叠程度越高,是同一辆车的轨迹的可能性就越大。
40.b、利用不等式关系删除图结构中的冗余边;
41.c、利用bellman-ford算法找到初始最短路径,并修正边的损失值为非负数;
42.d、对最短路径边反向获取残差图,修正残差图边的损失值为非负数,使用dijkstra算法在修正后的残差图上求新的最短路径;
43.其中,边反向指将路径中边的方向取反,边的损失值取相反数。残差图指对最短路径边反向之后的图。
44.重复执行上述步骤d,直至总损失值不再减小或者找不到新的最短路径时,寻迹流程结束,得到所有车辆轨迹图像序列。
45.特别地,由于每一车辆的轨迹唯一且彼此独立,即多个轨迹之间不会相交。所以,本发明每次使用dijkstra算法在修正后的残差图上求出新的最短路径后,并不直接将其输
出,而是,依次判断最短路径之间是否有交叉点,如果没有交叉点,则按照路径损失值进行升序排序,路径损失值指的是这条路径上所有边的损失值之和。对于彼此独立的最短路径,删除其与初始节点和终止节点相连接的边后输出,作为车辆轨迹图像序列;如果有,则将有交叉点的最短路径并入下一次升序排序以及是否有交叉点的判断操作中。
46.步骤12、将车辆轨迹图像序列输入到深度学习车牌检测网络,提取到与该车辆轨迹图像序列相对应的车牌图像序列;
47.本步骤目的是通过深度学习车牌检测网络,检测出任一车辆轨迹图像序列中每一图像的车牌边界框的位置,并提取车牌边界框内的图像,用于后续识别车牌。
48.步骤13、根据图像面积、平均梯度和质量分数,对该车辆车牌图像序列中的每一车牌图像进行排序,得到该车辆的最优车牌图像;
49.对同一车辆轨迹上的车牌图像序列,利用水平像素数
×
垂直像素数,计算各车牌图像的面积,并按面积数值由大到小的顺序排名,名次分别记作s1,s2,s3,
……
,sn,其中n为序列长度;车牌面积越大,车牌字符所占的像素个数越多,识别成功率也就更高。
50.对同一车辆轨迹上的车牌图像序列,根据sobel算子分别提取水平和垂直方向的梯度值;根据所提取的水平和垂直方向的梯度值,利用tenengrad梯度函数计算出各车牌图像的平均梯度,并按平均梯度值由大到小的顺序排名,名次分别记作t1,t2,t3,
……
,tn,其中n为序列长度;平均梯度越大表示车牌中颜色变化越明显,即车牌背景色与字符之间的边界越明显,辨识度越好,理论上识别成功率也越高。
51.对同一车辆轨迹上的车牌图像序列,查找到对应的车辆图像序列,利用基于jpeg分块压缩原理的图像质量评价公式计算出各车辆图像的质量分数,作为各车牌图像的质量分数,并按分数由高到低的顺序排名,名次分别记作q1,q2,q3,
……
,qn,其中n为序列长度;质量分数越高,表示车牌图像的质量越好,理论上识别成功率也越高。
52.按照求出排名最小值,将该最小值所对应的车牌图像作为最优车牌图像。其中,k1,k2,k3分别为车牌面积、平均梯度和质量分数排名的加权系数,满足
53.其中,所述利用基于jpeg分块压缩原理的图像质量评价公式计算出各车辆图像的质量分数,包括:
54.对于任一车辆图像的质量分数,根据图像质量评价公式:score=-245.9 261.9b-0.024a0.016z0.0064
计算,其中,参数b表示图像按8
×
8分块后的跨越块边界的四个块顶点和水平、垂直方向上相邻像素值差分的平均值,参数a表示块内相邻像素水平、垂直方向上平均绝对误差的平均值,参数z表示整幅图像内各像素比左侧/上方相邻像素值大的个数乘以/除以图像边界内的长宽比的平均值。将b、a、z三个参数代入所述图像质量评价公式,得到该车辆图像的质量分数。
55.在步骤13中,对在步骤12中得到的任一车辆车牌图像序列,计算每一车牌图像的面积、平均梯度和质量分数,计算顺序没有限定。并依据这三个指标对同一车辆轨迹上的车牌图像序列进行排序,提取综合排名第一的最优车牌图像。其中,对于第三个指标图像的质量分数,将车牌图像扩展为整车辆图像进行质量评价,使得质量评分更加稳定。
56.步骤14、将所述最优车牌图像输入到lprnet字符识别网络模型,得到该车辆的车牌号码。
57.其中,lprnet字符识别网络模型也是深度学习的一种,包括训练和预测两个阶段,步骤14就是将数据输入训练好的lprnet字符识别网络模型,得到预测的车牌号码。
58.至此,完成了本发明的车牌识别方法。
59.实施例二
60.本实施例对本发明步骤112的多目标跟踪问题转换为最小损失流问题进行具体说明。采用本发明的方法,不仅能够缩小计算规模,快速找到最短路径,而且,在追踪车辆轨迹的情境下,能保证每一车辆轨迹都是唯一且独立的,使得将多目标跟踪问题转换为最小损失流问题更符合实际。具体步骤如下:
61.首先将输入转换为图结构,即,将所跟踪的所有边界框作为图结构中一个目标对象。
62.1、对每一个目标对象,将其逻辑上划分为两个节点,记作pre node和next node。两个节点之间边的损失值为0。对于前后两帧之间的目标对象,将前一帧的next node与后一帧之间的pre node相连,边的损失值为两个边界框之间的交并比的相反数。同时,定义两个虚拟节点,初始节点source node(s)和终止节点terminate node(t),初始节点与所有目标对象的pre node连接,方向从初始节点指向pre node;所有目标对象的next node与终止节点相连接,方向从next node指向终止节点。各边的损失值均为0。
63.2、对得到的图结构,在初始化阶段,首先删除所有满足不等式c(u,v)>c(u,t) c(s,v)的边,即,将节点u到节点v之间的边直接删除。上式中c(u,v)代表u、v两个节点之间边的损失值,u和v分别代表图中的当前帧某对象的next node和下一帧某对象的pre node。在追踪车辆轨迹的情境下,u和v不可能出现在同一轨迹上,所以,就可以把这两个节点构成的冗余边删除,如此,图结构的边数量减少,即规模减小,从而缩小了计算规模,提高了计算速度。
64.3、随后根据bellman-ford算法计算最短路径,将其作为初始最短路径。在bellman-ford算法进行的同时对边的损失值进行修改:将两个节点u,v的边损失值修正为c'(u,v)=c(u,v) d(u)-d(v)。其中,d(u)和d(v)分别代表从初始节点s到节点u或v的最短路径损失值。该修正保证了边的损失值是非负数,使dijkstra算法能够进行。
65.4、将最短路径中的边反向,获取残差图。将残差图中的任意两个节点u,v的边损失值修正为c'(u,v)=c(u,v) d(u)-d(v)。根据dijkstra算法在修正后的残差图上反复寻找新的从s到t节点的最短路径,直到新的最短路径与之前找到的最短路径没有交叉点为止。
66.5、在得到若干条新的最短路径后,按照路径损失值进行升序排序。
67.对于升序排序的若干条最短路径,找到前k(1≤k≤该视频段内车辆数)条彼此无关的路径。彼此无关指最短路径之间不存在交叉点,即除s和t节点外无其它相同节点。分别删除这些路径中与s节点和t节点相连接的边后输出,实例化为k条车辆跟踪轨迹。
68.重复上述4和5的过程,直到总损失值不再减小或找不到新的最短路径时,寻迹流程结束,得到所有车辆轨迹图像序列。将上述车辆轨迹图像序列作为输入依次传给深度学习车牌检测网络。
69.需要说明的是,由于车辆轨迹之间是不可能交叉的,所以为避免所得的最短路径
之间有相同的目标对象,每次使用dijkstra算法在修正的残差图上求出新的最短路径后,都加入了最短路径之间是否有交叉点的判断步骤,即步骤4。之后才通过对当前找到的所有最短路径升序排序和有无交叉点的进一步判断,将彼此无关的路径输出,即步骤5。
70.下面结合生成车辆轨迹图像序列的图结构,如图2所示,说明寻找从s到t节点的最短路径的迭代过程:
71.(1)假定已经根据bellman-ford算法获得一条从s到t节点的初始最短路径,记为path1;该路径中与s节点相连的节点记为节点1。
72.(2)根据dijkstra算法在修正的残差图上继续寻找其它最短路径,将新得到的路径记为path2。判断路径path2与path1是否有交叉点。
73.(2.1)如果path2的第一个节点与节点1不同,则path1和path2不会有交叉,将path2的第一个节点记为节点2。
74.(2.2)如果相同,表示这两条路径之间有交叉,此时不输出,重新寻找最短路径,记为path3。
75.(2.2.1)如果path3的第一个节点仍与上述节点1相同,则不输出,再重新寻找最短路径,以此类推,直到新路径的第一个节点与上述节点1不同为止,标记该路径的第一个节点为节点2。;
76.(2.2.2)如果path3的第一个节点与节点1不同,将path3的第一个节点记为节点2。
77.当前图中出现节点2,表明包含节点1的所有路径均已找到。接下来需要确定引起交叉的节点1归属于哪条轨迹。
78.(3)对当前找到的所有最短路径,按照路径损失值进行升序排序,输出没有交叉点的最短路径。
79.(3.1)对于(2.1),path1《path2,删除path1中与初始节点和终止节点相连接的边后输出,作为某一车辆轨迹图像序列,再删除path1的所有节点,并保留path2。
80.(3.2)对于(2.2),若是第一次排序,则path1《path2《path3,删除path1中与初始节点和终止节点相连接的边后输出,作为某一车辆轨迹图像序列,再删除path1的所有节点,并保留path2、path3中无交叉点的部分;若有上一轮保留的最短路径参与排序,假设path1《path x《path y《path z《path2《path3《
‥‥‥
,则依次判断path x,path y,path z,path2,path3
‥‥‥
是否与之前的最短路径有交叉点,如果前k(1≤k≤该视频段内车辆数)条路径彼此无关,则分别删除这些路径中与初始节点和终止节点相连接的边后输出,作为k个车辆轨迹图像序列,再删除k条路径中的所有节点,并保留其它最短路径中无交叉点的部分。本实施例仅简单示意保留path3,以及path2中与path1不交叉的部分。
81.(3.3)令上述找到的最后一条最短路径为新的初始最短路径,返回步骤(2),将保留路径并入下一轮升序排序以及是否有交叉点的判断操作中,以便于获得其它车辆的轨迹图像序列。
82.实施例三
83.为清楚说明本发明实施例一,下面列举具体场景进行说明。
84.本发明优选实施例车牌识别方法包括以下步骤:
85.s1:将普通摄像头架设于高速公路过街天桥上拍摄包含大量车辆的时长为3分钟的视频,摄像头分辨率为1920
×
1080,帧率为30帧/秒,某帧画面如图3所示。
86.s2:将步骤s1获取的视频流数据输入到离线车辆跟踪网络模型,提取各车辆的轨迹图像序列。
87.其中,s2中所述的离线车辆跟踪网络模型的实现,包括以下两个步骤:
88.s21:采用例如yolo v5s深度学习车辆检测网络,对视频中的车辆进行检测,得到每一帧中每一车辆的边界框,作为图结构中一个目标对象;
89.s22:利用图论将所有检测到的目标对象作为点进行数据关联,使得总损失值达到最小,得到各车辆轨迹图像序列。
90.本步骤具体包括:a、计算相邻帧两个边界框之间的交并比,根据所述交并比取相反数得到边的损失值;b、利用不等式关系删除图结构中的冗余边;c、利用bellman-ford算法找到初始最短路径,并修正边的损失值为非负数;d、对最短路径边反向获取残差图,修正残差图边的损失值为非负数,使用dijkstra算法在修正后的残差图上求新的最短路径;对当前找到的所有最短路径,按照路径损失值进行升序排序;按照升序,依次判断各最短路径之间是否有交叉点,如果没有,则将没有交叉点的最短路径中与初始节点和终止节点相连接的边删除,并输出所述没有交叉点的最短路径;如果有,则将有交叉点的最短路径并入下一次升序排序以及是否有交叉点的判断操作中。重复执行上述步骤d,直至总损失值不再减小或者找不到新的最短路径时,寻迹流程结束,得到所有车辆轨迹图像序列。本优选实施例中得到122个车辆轨迹图像序列。随机选出某车辆轨迹图像序列,该序列包含17帧同一辆车在不同视频帧中的截图,如图4所示。
91.s3:将步骤s2获取的车辆轨迹图像序列依次输入到例如yolo v5s深度学习车牌检测网络,检测出车牌边界框的位置,并提取车牌边界框内的图像,如图5所示。
92.s4:计算步骤s3所获取的一系列车牌图像的面积、平均梯度和质量分数,并依据这三个指标对同一车辆轨迹上的车牌图像序列分别进行排序,提取综合排名第一的最优车牌图像。
93.其中,s4中所述的提取综合排名第一的最优车牌图像的过程,包括以下四个步骤:
94.s41:对上述所选同一车辆轨迹上的17幅车牌图像,分别利用水平像素数
×
垂直像素数计算各车牌图像的面积,并按面积数值由大到小的顺序排名,名次分别记作1,2,3,
……
,17。
95.s42:对上述所选同一车辆轨迹上的17幅车牌图像,分别先用sobel算子分别提取水平和垂直方向的梯度值,再用tenengrad梯度函数计算出各车牌的平均梯度,并按平均梯度值由大到小的顺序排名,名次分别记作1,2,3,
……
,17。
96.s43:对上述所选同一车辆轨迹上的17幅车牌图像,分别调取其对应的车辆图像序列,利用基于jpeg分块压缩原理的图像质量评价公式计算出各车辆图像的质量分数,作为各车牌图像的质量分数,并按分数由高到低的顺序排名,名次分别记作1,2,3,
……
,17;
97.所用图像质量评价公式如下:
98.score=-245.9 261.9b-0.024a0.016z0.0064
99.其中,参数b表示图像按8
×
8分块后的跨越块边界的四个块顶点和水平、垂直方向上相邻像素值差分的平均值,参数a表示块内相邻像素水平、垂直方向上平均绝对误差的平均值,参数z表示整幅图像内各像素比左侧/上方相邻像素值大的个数乘以/除以图像边界内的长宽比的平均值。将b、a、z三个参数代入上述公式计算,得出每幅车辆图像的质量分
数。
100.s44:按照求出加权排名最小值为4,将该值所对应的图像序列号为17的图像选作最优车牌图像,如图6所示。式中,0.45,0.22,0.28,分别为车牌面积、平均梯度和质量分数排名的加权系数,满足适当调低权重和是出于可能某些影响车牌识别效果的因素未被考虑进来。
101.s5:将步骤s4获取的最优车牌图像输入到lprnet字符识别网络模型,得出车牌识别结果。
102.实施例四
103.本实施例在实施例一的基础上,增加了筛选模块,提取违章车辆进行准确的车牌识别,具体包括:
104.1、预先为所述预定时间段内拍摄的至少包含有一辆车的视频流设置安全标记;
105.2、将增加了安全标记的视频流数据的每一帧输入到深度学习车辆检测网络,得到每一车辆的边界框;
106.3、根据安全标记和边界框判断每一车辆的边界框是否符合预设规则,为不符合预设规则的边界框设置标志位值为1,否则设置标志位值为0;
107.4、每一车辆的边界框作为图结构中一个目标对象,并将图结构中所有的目标对象进行数据关联,得到各车辆轨迹图像序列;
108.5、将包含标志位值为1的边界框的车辆轨迹图像序列输入到深度学习车牌检测网络,提取到与该车辆轨迹图像序列相对应的车牌图像序列。
109.本实施例着重说明只对压线违章的车辆进行车牌识别方法,包括以下步骤:
110.步骤41、将预定时间段内拍摄的至少包含有一辆车的视频流数据输入到离线车辆跟踪网络模型,获取各车辆轨迹图像序列。
111.本步骤原本包括车辆检测和车辆跟踪两个阶段。本实施例在车辆检测阶段进行功能拓展,车辆跟踪阶段保持不变。对于深度学习车辆检测网络,能通过对视频流中检测到的每一车辆的边界框进行判断,确定车辆是否存在特定违章行为。在本实施例中特定违章行为指车辆压线违章。具体步骤如下:
112.步骤411、为预定时间段内拍摄的至少包含有一辆车的视频流拟合标识线,作为安全标记。
113.其中,安全标记为拟合的标识线,标识线可以是白色实线、双黄实线、黄色禁止停车线等道路交通禁止标线。本实施例中标识线是交叉路口前分割车道的白色实线,是不允许压线行驶的。
114.将视频流的第一帧,根据该帧图像中标识线的位置,手动标出各条标识线上的若干点。
115.对标出的各条标识线上的若干个点,分别进行3次多项式拟合,得到各条标识线的拟合曲线。拟合多项式为y-ax-bx
2-cx
3-d=0,x、y分别是以帧图像左上角为原点以像素为单位以向右和向下为正方向建立图像坐标系的横、纵坐标,a、b、c、d是拟合系数。
116.本实施例采用手动标点拟合标识线的方法,可以精确定位安全标记,灵活应用于
不同道路场景。
117.步骤412、将增加了拟合标识线的视频流数据的每一帧输入到深度学习车辆检测网络,得到每一车辆的边界框。
118.步骤413、根据安全标记和边界框判断每一车辆的边界框是否符合预设规则,为不符合预设规则的边界框设置标志位值为1,否则设置标志位值为0。
119.其中,预设规则一般指交通安全规则,本实施例中预设规则为不允许压线行驶。
120.对得到的每一车辆边界框的4个顶点(xi,yi),i=1,2,3,4,分别代入到y-ax-bx
2-cx
3-d中。若计算结果均为正数或均为负数,则说明边界框的所有点都在拟合标识线的一侧,即不存在压线;反之则判定为压线违章。
121.对判定为压线违章的车辆边界框设置标志位值为1,否则设置标志位值为0。
122.步骤414、将包含标志位的每一车辆的边界框作为图结构中一个目标对象,并将图结构中所有的目标对象进行数据关联,得到各车辆轨迹图像序列。本步骤将多目标跟踪问题转换为最小损失流问题,所跟踪的边界框作为图结构中一个目标对象。具体包括以下:
123.a、计算相邻帧两个边界框之间的交并比,根据所述交并比取相反数得到边的损失值;
124.b、利用不等式关系删除图结构中的冗余边;
125.c、利用bellman-ford算法找到初始最短路径,并修正边的损失值为非负数;
126.d、对最短路径边反向获取残差图,修正边的损失值为非负数,使用dijkstra算法在修正后的残差图上求新的最短路径;
127.重复执行上述步骤d,直至总损失值不再减小或者找不到新的最短路径时,寻迹流程结束,得到所有车辆轨迹图像序列。
128.步骤42、将车辆轨迹图像序列输入到深度学习车牌检测网络,提取到与该车辆轨迹图像序列相对应的车牌图像序列;
129.鉴于步骤41对压线违章车辆的边界框启用了标志位,本步骤需要先对步骤41输出的轨迹进行判断:若轨迹中包含标志位值为1的车辆边界框,则将该轨迹输入到深度学习车牌检测网络;反之则不输入。
130.车辆压线违章及其前后时刻车牌识别效果图,如图7所示,第1帧为违章前,第15帧为违章过程中,均因距离摄像头较远而导致车牌识别错误,但随着该车辆轨迹逐渐向摄像头方向靠近,后续帧的车牌识别均正确。因此,对于车辆违章时刻可能存在车牌模糊不清或者遮挡的情况,使用上述车辆跟踪方法可以追溯到车牌清晰的图片从而更加准确地识别车牌,作为违章处理依据。对于其它违章类型,可以在判断存在违章行为后采用类似方法。如此,可以根据用户需求只对部分车辆的车牌进行识别,大大提高识别效率。
131.步骤43、根据图像面积、平均梯度和质量分数,对该车辆车牌图像序列中的每一车牌图像进行排序,得到该车辆的最优车牌图像;
132.对同一车辆轨迹上的车牌图像序列,利用水平像素数
×
垂直像素数,计算各车牌图像的面积,并按面积数值由大到小的顺序排名,名次分别记作s1,s2,s3,
……
,sn,其中n为序列长度;
133.对同一车辆轨迹上的车牌图像序列,根据sobel算子分别提取水平和垂直方向的梯度值;根据所提取的水平和垂直方向的梯度值,利用tenengrad梯度函数计算出各车牌图
像的平均梯度,并按平均梯度值由大到小的顺序排名,名次分别记作t1,t2,t3,
……
,tn,其中n为序列长度;
134.对同一车辆轨迹上的车牌图像序列,查找到对应的车辆图像序列,利用基于jpeg分块压缩原理的图像质量评价公式计算出各车辆图像的质量分数,作为各车牌图像的质量分数,并按分数由高到低的顺序排名,名次分别记作q1,q2,q3,
……
,qn,其中n为序列长度;
135.按照求出排名最小值,将该最小值所对应的车牌图像作为最优车牌图像。其中,k1,k2,k3分别为车牌面积、平均梯度和质量分数排名的加权系数,满足
136.其中,所述利用基于jpeg分块压缩原理的图像质量评价公式计算出各车辆图像的质量分数,包括:
137.对于任一车辆图像的质量分数,根据图像质量评价公式:score=-245.9 261.9b-0.024a0.016z0.0064
计算,其中,参数b表示图像按8
×
8分块后的跨越块边界的四个块顶点和水平、垂直方向上相邻像素值差分的平均值,参数a表示块内相邻像素水平、垂直方向上平均绝对误差的平均值,参数z表示整幅图像内各像素比左侧/上方相邻像素值大的个数乘以/除以图像边界内的长宽比的平均值。将b、a、z三个参数代入所述图像质量评价公式,得到该车辆图像的质量分数。
138.步骤44、将所述最优车牌图像输入到lprnet字符识别网络模型,得到该车辆的车牌号码。
139.根据本发明方法,最优车牌图像是从包含有压线违章标志的该车辆轨迹图像序列中筛选,如图7所示,选出第39帧对应车辆的车牌,将其输入到lprnet字符识别网络模型,得到该车辆正确的车牌号码。
140.至此,完成了本发明实施例对压线违章车辆的车牌识别方法。通过本实施例,能够使某些出现短时遮挡或瞬间模糊的违章车辆的车牌得到准确地识别。
141.实施例五
142.基于与实施例一相同的发明构思,本发明还提供了一种车牌识别装置,结构示意图如图8所示,该装置包括:
143.离线分析模块801,将预定时间段内拍摄的至少包含有一辆车的视频流数据输入到离线车辆跟踪网络模型,获取各车辆轨迹图像序列;
144.车牌截图模块802,将车辆轨迹图像序列输入到深度学习车牌检测网络,提取到与该车辆轨迹图像序列相对应的车牌图像序列;
145.最优评价模块803,根据图像面积、平均梯度和质量分数,对该车辆车牌图像序列中的每一车牌图像进行排序,得到该车辆的最优车牌图像;
146.车牌识别模块804,将所述最优车牌图像输入到lprnet字符识别网络模型,得到该车辆的车牌号码。
147.所述离线分析模块801,具体用于:
148.将预定时间段内拍摄的至少包含有一辆车的视频流数据的每一帧输入到深度学习车辆检测网络,得到每一车辆的边界框,作为图结构中一个目标对象;
149.将图结构中的目标对象进行数据关联,得到各车辆轨迹图像序列。
150.所述离线分析模块801,将图结构中的目标对象进行数据关联,得到各车辆轨迹图像序列,具体用于:
151.a、计算相邻帧两个边界框之间的交并比,根据所述交并比得到边的损失值;
152.b、利用不等式关系删除图结构中的冗余边;
153.c、利用bellman-ford算法找到初始最短路径,并修正边的损失值为非负数;
154.d、对最短路径边反向获取残差图,修正残差图边的损失值为非负数,使用dijkstra算法在修正后的残差图上求新的最短路径;
155.重复执行上述步骤d,直至总损失值不再减小或者找不到新的最短路径时,寻迹流程结束,得到所有车辆轨迹图像序列。
156.每次使用dijkstra算法在修正后的残差图上求出新的最短路径后,该装置进一步包括判断处理模块805:
157.对当前找到的所有最短路径,按照路径损失值进行升序排序;
158.按照升序,依次判断各最短路径之间是否有交叉点,如果没有,则将没有交叉点的最短路径中与初始节点和终止节点相连接的边删除,并输出所述没有交叉点的最短路径;如果有,则将有交叉点的最短路径并入下一次升序排序以及是否有交叉点的判断操作中。
159.所述最优评价模块803,具体用于:
160.对同一车辆轨迹上的车牌图像序列,利用水平像素数
×
垂直像素数,计算各车牌图像的面积,并按面积数值由大到小的顺序排名,名次分别记作s1,s2,s3,
……
,sn,其中n为序列长度;
161.对同一车辆轨迹上的车牌图像序列,根据sobel算子分别提取水平和垂直方向的梯度值;根据所提取的水平和垂直方向的梯度值,利用tenengrad梯度函数计算出各车牌图像的平均梯度,并按平均梯度值由大到小的顺序排名,名次分别记作t1,t2,t3,
……
,tn,其中n为序列长度;
162.对同一车辆轨迹上的车牌图像序列,查找到对应的车辆图像序列,利用基于jpeg分块压缩原理的图像质量评价公式计算出各车辆图像的质量分数,作为各车牌图像的质量分数,并按分数由高到低的顺序排名,名次分别记作q1,q2,q3,
……
,qn,其中n为序列长度;
163.按照求出排名最小值,将该最小值所对应的车牌图像作为最优车牌图像。其中,k1,k2,k3分别为车牌面积、平均梯度和质量分数排名的加权系数,满足
164.所述最优评价模块803,利用基于jpeg分块压缩原理的图像质量评价公式计算出各车辆图像的质量分数,具体用于:
165.对于任一车辆图像的质量分数,根据图像质量评价公式:score=-245.9 261.9b-0.024a0.016z0.0064
计算,其中,参数b表示图像按8
×
8分块后的跨越块边界的四个块顶点和水平、垂直方向上相邻像素值差分的平均值,参数a表示块内相邻像素水平、垂直方向上平均绝对误差的平均值,参数z表示整幅图像内各像素比左侧/上方相邻像素值大的个数乘以/除以图像边界内的长宽比的平均值。将b、a、z三个参数代入所述图像质量评价公式,得到该
车辆图像的质量分数。
166.本发明的有益效果在于:
167.一、采用基于图论的离线目标跟踪技术,可以对所有视频帧进行分析,得到更准确的目标车辆的轨迹图像序列,从而使某些出现短时遮挡或瞬间模糊的重点车辆的车牌也能被正确识别;
168.二、本发明中筛选最优车牌图像所使用的三个参数:车牌面积、平均梯度和质量分数,都不需要复杂的计算,也不需要提前进行训练,速度比深度学习算法更快。因为jpeg图像质量评价算法考虑了更多质量影响因素,而且将车牌图像扩展为整车辆图像进行质量评价,使得质量评分更加稳定。相比之下,平均梯度对图像微小变化十分敏感,不适合单独作为车牌质量评价方法,但可以在一定程度上辅助改善jpeg图像质量评分接近的情况。
169.三、在综合考虑车牌面积、平均梯度和质量分数三个指标的基础上,仅对筛选出的最优车牌图像进行识别,可以减少对视频流中所出现车牌的识别次数,从而在保证时间效率的前提下,能够提高车牌识别的准确率。
170.四、由于本发明可以为不符合预设规则的边界框设置标志位,将包含不符合预设规则边界框的车辆轨迹图像序列输入到深度学习车牌检测网络,提取相应车牌图像序列,如此,可以对车辆的交通违章情况进行准确地判断,大大提高了交通违章判定效率。
171.综上,本发明操作步骤简单,易于集成,在基于视频流的车牌识别应用中具有较好的推广价值。
172.以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献