掌桥专利:专业的专利平台
掌桥专利
首页

车牌识别方法、装置、计算机设备和存储介质

文献发布时间:2023-06-19 19:30:30


车牌识别方法、装置、计算机设备和存储介质

技术领域

本申请涉及人工智能及图像识别技术领域,特别是涉及一种车牌识别方法、装置、计算机设备和存储介质。

背景技术

随着图像识别技术的发展,车牌智能识别在实际业务场景的应用也越来越广泛,如车牌智能识别在门禁系统的应用,大大提高了门禁处理效率。

为提高车牌识别精度,通常使用神经网络车牌识别模型,在实际业务场景中利用训练好的车牌识别模型进行识别。常用的神经网络结构如transformer。通常认为,模型结构越深,特征提取信息量越丰富,识别的准确率也越高。因此,在实际应用中通常训练较多层次的网络结构进行车牌识别。然而,相应的,模型层次越深,处理效率也越低,这就导致现有的车牌识别模型的识别效率低。

发明内容

基于此,有必要针对上述技术问题,提供一种能够提高识别效率的车牌识别方法、装置、计算机设备和存储介质。

一种车牌识别方法,所述方法包括:

获取车牌图像;

将所述车牌图像输入预先训练好的车牌识别模型,所述车牌识别模型包括主干网络,所述主干网络包括多个特征提取层和一个深层分类器,多个特征提取层依次连接,所述深层分类器连接在最后一个特征提取层之后;所述车牌识别模型还包括与所述主干网络非最后一层特征提取层连接的阶段分类器;

按所述车牌识别模型的特征提取层的深度由浅至深的顺序,所述特征提取层以及对应的分类器分别进行特征提取和预测处理,由特征提取层提取所述车牌图像的车牌特征,与所述特征提取层对应的分类器根据所述车牌特征得到预测结果;

在所述阶段分类器的预测结果符合要求时,将所述阶段分类器的预测结果作为车牌识别结果,在所述阶段分类器的预测结果不符合要求时,将该深度的阶段特征提取层的车牌特征输入下一深度的特征提取层进行处理,继续由下一深度的特征提取层以及对应的分类器分别进行特征提取和预测处理,直至在其中一个阶段分类器得到车牌识别结果,或在深层分类器得到预测结果时,将深层分类器的预测结果作为车牌识别结果。

一种车牌识别装置,所述装置包括:

图像获取模块,用于获取车牌图像;

输入模块,用于将所述车牌图像输入预先训练好的车牌识别模型,所述车牌识别模型包括主干网络,所述主干网络包括多个特征提取层和一个深层分类器,多个特征提取层依次连接,所述深层分类器连接在最后一个特征提取层之后;所述车牌识别模型还包括与所述主干网络非最后一层特征提取层连接的阶段分类器;

预测模块,用于按所述车牌识别模型的特征提取层的深度由浅至深的顺序,所述特征提取层以及对应的分类器分别进行特征提取和预测处理,由特征提取层提取所述车牌图像的车牌特征,与所述特征提取层对应的分类器根据所述车牌特征得到预测结果;

输出模块,用于在所述阶段分类器的预测结果符合要求时,将所述阶段分类器的预测结果作为车牌识别结果,在所述阶段分类器的预测结果不符合要求时,将该深度的阶段特征提取层的车牌特征输入下一深度的特征提取层进行处理,继续由下一深度的特征提取层以及对应的分类器分别进行特征提取和预测处理,直至在其中一个阶段分类器得到车牌识别结果,或在深层分类器得到预测结果时,将深层分类器的预测结果作为车牌识别结果。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

获取车牌图像;

将所述车牌图像输入预先训练好的车牌识别模型,所述车牌识别模型包括主干网络,所述主干网络包括多个特征提取层和一个深层分类器,多个特征提取层依次连接,所述深层分类器连接在最后一个特征提取层之后;所述车牌识别模型还包括与所述主干网络非最后一层特征提取层连接的阶段分类器;

按所述车牌识别模型的特征提取层的深度由浅至深的顺序,所述特征提取层以及对应的分类器分别进行特征提取和预测处理,由特征提取层提取所述车牌图像的车牌特征,与所述特征提取层对应的分类器根据所述车牌特征得到预测结果;

在所述阶段分类器的预测结果符合要求时,将所述阶段分类器的预测结果作为车牌识别结果,在所述阶段分类器的预测结果不符合要求时,将该深度的阶段特征提取层的车牌特征输入下一深度的特征提取层进行处理,继续由下一深度的特征提取层以及对应的分类器分别进行特征提取和预测处理,直至在其中一个阶段分类器得到车牌识别结果,或在深层分类器得到预测结果时,将深层分类器的预测结果作为车牌识别结果。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

获取车牌图像;

将所述车牌图像输入预先训练好的车牌识别模型,所述车牌识别模型包括主干网络,所述主干网络包括多个特征提取层和一个深层分类器,多个特征提取层依次连接,所述深层分类器连接在最后一个特征提取层之后;所述车牌识别模型还包括与所述主干网络非最后一层特征提取层连接的阶段分类器;

按所述车牌识别模型的特征提取层的深度由浅至深的顺序,所述特征提取层以及对应的分类器分别进行特征提取和预测处理,由特征提取层提取所述车牌图像的车牌特征,与所述特征提取层对应的分类器根据所述车牌特征得到预测结果;

在所述阶段分类器的预测结果符合要求时,将所述阶段分类器的预测结果作为车牌识别结果,在所述阶段分类器的预测结果不符合要求时,将该深度的阶段特征提取层的车牌特征输入下一深度的特征提取层进行处理,继续由下一深度的特征提取层以及对应的相同深度的分类器分别进行特征提取和预测处理,直至在其中一个阶段分类器得到车牌识别结果,或在深层分类器得到预测结果时,将深层分类器的预测结果作为车牌识别结果。

在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行以下步骤:

获取车牌图像;

将所述车牌图像输入预先训练好的车牌识别模型,所述车牌识别模型包括主干网络,所述主干网络包括多个特征提取层和一个深层分类器,多个特征提取层依次连接,所述深层分类器连接在最后一个特征提取层之后;所述车牌识别模型还包括与所述主干网络非最后一层特征提取层连接的阶段分类器;

按所述车牌识别模型的特征提取层的深度由浅至深的顺序,所述特征提取层以及对应的分类器分别进行特征提取和预测处理,由特征提取层提取所述车牌图像的车牌特征,与所述特征提取层对应的分类器根据所述车牌特征得到预测结果;

在所述阶段分类器的预测结果符合要求时,将所述阶段分类器的预测结果作为车牌识别结果,在所述阶段分类器的预测结果不符合要求时,将该深度的阶段特征提取层的车牌特征输入下一深度的特征提取层进行处理,继续由下一深度的特征提取层以及对应的分类器分别进行特征提取和预测处理,直至在其中一个阶段分类器得到车牌识别结果,或在深层分类器得到预测结果时,将深层分类器的预测结果作为车牌识别结果。

上述车牌识别方法、装置、计算机设备和存储介质,通过构建车牌识别模型,利用车牌识别模型实现简单图像在浅层网络预测,复杂图像在深度网络预测,从而能够根据车牌图像的难易程序在模型的不同阶段对车牌图像进行预测,对于简单车牌图像在模型浅层即可得到预测结果,无需经过全部模型即可得到正确结果,从而整体提高了车牌识别效率。

附图说明

图1为一个实施例中车牌识别方法的应用环境图;

图2为一个实施例中车牌识别方法的流程示意图;

图3为一个实施例中车牌识别模型的结构示意图;

图4为另一个实施例中车牌识别模型的结构示意图;

图5为一个实施例中车牌识别模型训练过程的流程示意图;

图6为一个实施例中车牌识别模型训练过程的示意图;

图7为一个实施例中车牌识别模型应用示意图;

图8为一个实施例中车牌识别装置的结构框图;

图9为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。

人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。

计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。

本申请实施例提供的方案涉及人工智能的计算机视觉技术等技术,具体通过如下实施例进行说明:

本申请提供的车牌识别方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。终端安装在车牌识别应用环境中,终端拍摄车牌图像,将车牌图像发送至服务器。服务器104运行有车牌识别模型,服务器104调用车牌识别模型对车牌图像进行识别,得到车牌识别结果。服务器104将车牌识别结果返回至终端102。终端102为具有摄像功能的设备,可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备以及设置在固定位置的摄像头,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

一种实施方式中,终端102根据返回的车牌识别结果,可进一步查询车辆所属人信息。如交警通过使用便携终端拍照后,通过识别获取车牌,根据车牌检索到车辆所属人信息,避免进行繁琐的录入操作,提高效率。又如,小区保安使用便携终端拍照后,通过识别获取车牌,根据车牌检索到车辆是否为本小区车辆,能够快速查询到车辆所属人信息。

一种实施方式中,终端102可以运行有门禁系统,终端102根据服务器返回的车牌识别结果,录入车辆信息,并通过门禁系统控制车辆放行。

在一个实施例中,如图2所示,提供了一种车牌识别方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:

步骤202,获取车牌图像。

其中,通过设置在车牌识别应用环境的摄像头采集车牌图像,并发送至服务器进行识别。车牌识别应用环境通常为关卡,如停车场、高速收费站、小区等地的关卡。

步骤S204,将车牌图像输入预先训练好的车牌识别模型,车牌识别模型包括主干网络,主干网络包括多个特征提取层和一个深层分类器,多个特征提取层依次连接,深层分类器连接在最后一个特征提取层之后;车牌识别模型还包括与主干网络非最后一层特征提取层连接的阶段分类器。

具体地,如图3所示,主干网络300包括多个特征提取层3011,以及一个深层分类器3022,多个特征提取层3011依次连接,所述深层分类器3022连接在最后一个特征提取层3011之后。特征提取层是在车牌识别模型中位于深层分类器之前的特征提取网络结构。一个实施例中,主干网络为Transformer,特征提取层是Transformer结构的深度神经网络。特征提取层有多层,具有不同的深度,随着深度的增加,所提取的特征的细节也越丰富。因此,在深度关系上,深层分类器的深度要大于阶段分类器的深度。

具体地,车牌识别模型的结构如图3所示,包括主干网络300,主干网络300包括多个特征提取层3011,以及一个深层分类器3022,多个特征提取层3011依次连接,所述深层分类器3022连接在最后一个特征提取层3011之后。车牌识别模型还包括与所述主干网络300非最后一层特征提取层3011连接的阶段分类器3021。

其中,可以在每一个特征提取层3011之后,均连接一个阶段分类器。在深度上,特征提取层有多层,每一层特征提取层均连接一个相同深度的分类器。分类器的作用是根据连接的特征提取层提取的车牌特征,预测车牌信息。

步骤S206,按车牌识别模型的特征提取层的深度由浅至深的顺序,特征提取层以及对应的分类器分别进行特征提取和预测处理,由特征提取层提取车牌图像的车牌特征,与特征提取层对应的分类器根据车牌特征得到预测结果。

具体地,按车牌识别模型的特征提取层的深度由浅至深的顺序,先由浅层的特征提取层以及对应的分类器进行特征提取和预测处理,再按照深度顺序,由下一深度的特征提取层以及对应的分类器进行特征提取和预测处理。

具体地,在阶段分类器与特征提取层之间,还连接阶段过渡器,阶段过渡器具体包括至少一层全连接层和激活函数。

步骤S208,在阶段分类器的预测结果符合要求时,将阶段分类器的预测结果作为车牌识别结果,在阶段分类器的预测结果不符合要求时,将该深度的阶段特征提取层的车牌特征输入下一深度的特征提取层进行处理,继续由下一深度的特征提取层以及对应的分类器分别进行特征提取和预测处理,直至在其中一个阶段分类器得到车牌识别结果,或在深层分类器得到预测结果时,将深层分类器的预测结果作为车牌识别结果。

可以理解的是,特征提取层和分类器的处理,是按深度进行的,先由前面的阶段特征提取层和阶段分类器进行处理。

在阶段分类器的预测结果符合要求时,表明深度较浅的阶段分类器所得到的预测结果符合要求,则直接将该预测结果作为车牌识别结果。在阶段分类器的预测结果不符合要求时,表示深度较浅的阶段分类器无法识别,则将该层的阶段特征提取层的车牌特征输入至下一层特征提取层继续进行特征提取,下一层分类器继续进行预测。也就是说,浅层分类器无法识别时,继续由深度更深的特征提取层和分类器进行处理,通过深度更高的特征提取层进一步运算,提取更深层的特征,再利用该层的分类器预测。这样达到的效果是,简单的车牌图像能够通过较浅深度的特征提取层和分类器即可识别,而复杂的车牌图像,在深度较浅的特征提取层和分类器不能预测时,继续由下一层的特征提取层进行处理,直到在一个阶段分类器上能够得到符合要求的预测结果,或到深层分类器,将深层分类器的预测结果作为车牌识别结果。即简单图像在浅层网络预测,复杂图像在深度网络预测。

其中,预测结果是否符合要求,可以根据预测结果的置信度判断。

本实施例中,通过构建车牌识别模型,利用车牌识别模型实现简单图像在浅层网络预测,复杂图像在深度网络预测,从而能够根据车牌图像的难易程序在模型的不同阶段对车牌图像进行预测,对于简单车牌图像在模型浅层即可得到预测结果,无需经过全部模型即可得到正确结果,从而整体提高了车牌识别效率。

在另一个实施例中,阶段特征提取层包括浅层特征提取层和中层特征提取层,阶段分类器包括与浅层特征提取层连接的浅层分类器,以及与中层特征提取层连接的中层分类器。

具体地,该实施例的车牌识别模型如图4所示,具有三个深度层次的特征提取层,分别是浅层特征提取层4011,中层特征提取层4012和深层特征提取层4013,浅层特征提取层连接浅层分类器4021,中层特征提取层连接中层分类器4022,深层特征提取层连接深层分类器4023。

车牌识别模型处理时,由浅入深,先由浅层特征提取层4011和浅层分类器处理4021处理,浅层特征提取层4011提取车牌图像的浅层特征,浅层分类器4021根据浅层车牌特征得到浅层预测结果。

若浅层分类器的浅层预测结果的置信度大于阈值,则将浅层预测结果作为车牌识别结果。若浅层分类器的浅层预测结果的置信度不大于阈值,则将浅层特征提取层提取的浅层特征输入中层特征提取层,由中层特征提取层提取中层车牌特征,中层分类器根据中层车牌特征得到中层预测结果。

即先由模型的浅层网络进行处理,在浅层分类器的预测结果的置信度低时,进一步地将浅层车牌特征输入至中层特征提取层,由深度更深的中层特征提取层和中层分类器进行处理。通过浅层网络,能够对较为容易识别的车牌进行识别,对于浅层网络不能识别的车牌图像,进一步由中层特征提取层进行识别。

若中层预测结果的置信度大于阈值,则将中层预测结果作为车牌识别结果。若中层预测结果的置信度不大于阈值,则将中层特征提取层提取的中层特征输入深层特征提取层,由深层特征提取层提取深层车牌特征,深层分类器根据深层车牌特征得到车牌识别结果。

通过中层网络,能够中等识别难度的车牌进行识别,对于中层网络不能识别的车牌图像,进一步由深层特征提取层进行识别。

本实施例中,通过在不同深度的特征提取层连接分类器,实现难易程序不同的样本在不同的阶段输出,整体提高车牌的识别效率。

其中,所述浅层分类器4021与浅层特征提取层4011之间连接浅层过渡器4031,所述中层分类器4022与中层特征提取层4012之间连接中层过渡器。浅层过渡器包括一层全连接层和一层激活函数,中层过渡器包括一层全连接层和一层激活函数;浅层分类器的结构、中层分类器的结构以及深层分类器的结构相同。

通常而言,对于过渡器,增加全连接层的层数有利于提高分类的准确率,但主干网络的推断吞吐量较大,在权衡额外计算消耗和分类准确率的情况下,设计上述轻量化的结构。

为确保车牌识别模型识别的精确度,车牌识别模型的训练过程如图5所示,包括以下步骤:

S502,获取预先训练的车牌识别模型的主干网络,主干网络包括深层特征提取层以及深层分类器。

本实施例中,主干网络是预先训练的,即本实施例的车牌识别模型包括两个阶段的训练过程,第一个阶段是预先训练主干网络的过程。一种方式中,主干网络就可以采用LeViT预训练模型,即利用现有的已训练好的模型,将其作为车牌识别模型的最后主干网络。

其中,还可以对于待训练的车牌识别模型,固定阶段分类器的参数,训练主干网络。

S504,固定主干网络的参数,将训练样本集中的样本,通过待训练的车牌识别模型的各特征提取层提取车牌特征,与特征提取层对应的分类器根据车牌特征进行预测,得到不同深度的分类器输出的预测结果。

车牌识别模型的第二阶段的训练,固定主干网络的参数,对特征分类器进行训练。其中,阶段分类器的结构与深层分类器的结构相同。浅层过渡器由一层全连接层和一层激活函数构成,全连接层输入输出维度设置分别与模型的浅层和深层特征提取层的维度相同。中层特征过渡器由一层全连接层和一层激活函数构成,全连接层输入输出维度设置与模型的中层和深层特征提取层的维度相同,从而使得接各深度的特征提取层的接入点的维度保持一致。

在第二阶段的训练过程中,固定主干网络的参数,将训练样本集的样本输入到待训练的车牌识别模型,由浅入深,每个特征提取层提取车牌特征后,该深度对应的分类器根据车牌特征得到预测结果,同时浅层的特征提取层的车牌特征还向下输入下一深度的特征提取层,由下一深度的特征提取层和对应的分类器分别进行处理。从而,每个深度的分类器均输出对车牌图像的预测结果。

S506,根据不同深度的分类器输出的预测结果,计算阶段分类器的训练损失,基于训练损失训练车牌识别模型的阶段分类器的参数。

在第二训练阶段,固定主干网络,基于训练损失训练车牌识别模型的阶段分类器的参数,以及过渡器的参数。其中,训练损失包括了每个阶段分类器的训练阶段,如包括了浅层分类器的损失以及中层分类器的损失。

具体地,根据不同深度的分类器输出的预测结果,计算各阶段分类器的损失。损失可以包括交叉熵损失。交叉熵可在神经网络(机器学习)中作为损失函数,p表示真实标记的分布,q则为训练后的模型的预测标记分布,交叉熵损失函数可以衡量p与q的相似性。交叉熵作为损失函数还有一个好处是使用sigmoid函数在梯度下降时能避免均方误差损失函数学习速率降低的问题,因为学习速率可以被输出的误差所控制。

S508,在训练达到结束条件时,根据主干网络和阶段分类器的参数,得到训练好的车牌识别模型。

其中,训练结束条件包括训练次数达到最大次数。在训练达到结束条件时,根据主干网络和阶段分类器的参数,得到训练好的车牌识别模型。

本实施例中,通过两阶段的训练方式训练车牌识别模型,第一阶段训练主模型,第二阶段训练阶段过渡器和阶段分类器,能够提高训练效率。

在其它实施例中,还可以包括第三阶段的训练。具体地,采用两阶段训练方法,在第二阶段的训练中,主干网络不变导致其不同阶段能学习到的特征有限。可以在第二阶段训练阶段后,利用少量样本对整个车牌提取模型进行训练,再次微调,以提高模型的识别精度。

在一个实施例中,训练损失包括全部阶段分类器的标签的交叉熵损失、蒸馏损失以及熵约束损失;其中,通过蒸馏损失使阶段分类器的预测结果向深层分类器的预测结果对齐。

具体地,第二阶段的训练过程如图6所示,训练损失包括全部阶段分类器的标签的交叉熵损失、蒸馏损失以及熵约束损失。其中,蒸馏损失使阶段分类器的预测结果向深层分类器的预测结果对齐,从而使中间的特征提取层输出的特征更接近输入到深层分类器的特征,提高阶段分类器的预测准确度。

针对标签的交叉熵损失,交叉熵可在神经网络(机器学习)中作为损失函数,p表示真实标记的分布,q则为训练后的模型的预测标记分布,交叉熵损失函数可以衡量p与q的相似性。交叉熵作为损失函数还有一个好处是使用sigmoid函数在梯度下降时能避免均方误差损失函数学习速率降低的问题,因为学习速率可以被输出的误差所控制。具体地,针对每个阶段分类器,以阶段分类器包括两个(如浅层特征提取层对应的浅层分类器和中层特征提取层对应的中层分类器),阶段特征提取层得到的特征F

为了拉近不同阶段学习到的特征与深层分类器进行分类的特征的距离,提升浅层分类器和中层分类器的预测准确率,可对不同阶段类运用预训练主干网络的预测结果(即深层分类器的预测结果)进行自蒸馏。具体做法为,将训练过程中阶段分类器的预测结果与深层分类器的预测结果进行比对,根据深层分类器的预测结果与各阶段分类器的预测结果的差异,确定蒸馏损失。

具体地,将阶段特征提取层得到的特征F

分类器是根据每个阶段实际的预测分布来判断是否需要输出样本,当预测分布陡峭,即正确标签的得分远大于错误标签的得分,预测置信度较高时认为该阶段预测可靠,因此提出利用熵来约束从当前层输出的样本的预测分布的熵要越小越好,从而增大预测P

模型最终的训练损失为L=L

本申请中,在LeViT网络框架的基础上,结合了不同阶段的模型阶段分类器,对样本的难易进行挑选,从而实现不同样本的不同阶段输出。在此基础上,加入了自蒸馏,对不同阶段的分类器进一步监督,使得不同阶段输出的特征更接近输入到最终分类器的特征。此外,在不同阶段分类器的输出上加入了关于熵的约束,促进样本特征区别更加明显,推进样本从前面阶段的分类器输出。在推断阶段,将不同阶段分类器的输出进行计算,并与阈值进行比较,从而实现难易样本的不同阶段输出问题。

本申请的车牌识别模型,训练完成后可以直接对图片进行分类。如图7所示,模型输入是大小为224×224的RGB图像,算法框架中的通过分析不同阶段的分类器输出,对图像分类的难易程度进行判断,通过判断结果决策图像从哪个阶段输出。简而言之,容易分类样本在模型浅层输出,难样本在模型高层输出,从而减小模型推断耗时。该项技术可广泛应用于各类分类任务,如车型车系分类、行人id分类、车牌属性分类等,对于海量图像分类与搜索性能提升显著。如图7中车牌属性分类任务需要区分清晰车牌、遮挡车牌、模糊车牌以及非车牌图像,海量车牌数据中大部分为清晰车牌和非车牌以及简单的遮挡车牌,这些数据都能从浅层分类器中输出判断,只有较难区分的少量模糊、倾斜视角样本从中层、高层输出,从而大大减少了推断成本。

实际运行了一段车牌识别模型后,目前模型不同阶段的吞吐量如表1所示。

表1:当前方法不同阶段吞吐量

两个阶段分类器训练完成后,其准确率与深层分类器准确率对比如表2所示。

表2:不同阶段分类器的分类准确率

在推导阶段,利用阶段分类器得到的预测结果P

表3:不同阶段输出样本准确率及最终模型分类准确率

对于海量图像分类问题,该方法可以大幅减少不必要的计算开销,通过有效划分难易样本,让样本从模型的不同阶段输出,从而提升模型的推断速度而不过于损耗推断准确率。

应该理解的是,虽然图2、图5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图5中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图8所示,提供了一种车牌识别装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:图像获取模块、输入模块、预测模块和输出模块,其中:

图像获取模块802,用于获取车牌图像;

输入模块804,用于将所述车牌图像输入预先训练好的车牌识别模型,所述车牌识别模型包括主干网络,所述主干网络包括多个特征提取层和一个深层分类器,多个特征提取层依次连接,所述深层分类器连接在最后一个特征提取层之后;所述车牌识别模型还包括与所述主干网络非最后一层特征提取层连接的阶段分类器;

预测模块806,用于按所述车牌识别模型的特征提取层的深度由浅至深的顺序,所述特征提取层以及对应的分类器分别进行特征提取和预测处理,由特征提取层提取所述车牌图像的车牌特征,与所述特征提取层对应的分类器根据所述车牌特征得到预测结果;

输出模块808,用于在所述阶段分类器的预测结果符合要求时,将所述阶段分类器的预测结果作为车牌识别结果,在所述阶段分类器的预测结果不符合要求时,将该深度的阶段特征提取层的车牌特征输入下一深度的特征提取层进行处理,继续由下一深度的特征提取层以及对应的相同深度的分类器分别进行特征提取和预测处理,直至在其中一个阶段分类器得到车牌识别结果,或在深层分类器得到预测结果时,将深层分类器的预测结果作为车牌识别结果。

上述车牌识别装置,通过构建车牌识别模型,利用车牌识别模型实现简单图像在浅层网络预测,复杂图像在深度网络预测,从而能够根据车牌图像的难易程序在模型的不同阶段对车牌图像进行预测,对于简单车牌图像在模型浅层即可得到预测结果,无需经过全部模型即可得到正确结果,从而整体提高了车牌识别效率。

在另一个实施例中,所述阶段特征提取层包括浅层特征提取层和中层特征提取层,所述阶段分类器包括与所述浅层特征提取层连接的浅层分类器,以及与所述中层特征提取层连接的中层分类器。

输出模块,用于若所述浅层分类器的浅层预测结果的置信度大于阈值,则将所述浅层预测结果作为车牌识别结果;若所述浅层分类器的浅层预测结果的置信度不大于阈值,则将所述浅层特征提取层提取的浅层特征输入中层特征提取层,由所述中层特征提取层提取中层车牌特征,所述中层分类器根据所述中层车牌特征得到中层预测结果;若所述中层预测结果的置信度大于阈值,则将所述中层预测结果作为车牌识别结果;若所述中层预测结果的置信度不大于阈值,则将所述中层特征提取层提取的中层车牌特征输入深层特征提取层,由所述深层特征提取层提取深层车牌特征,所述深层分类器根据所述深层车牌特征得到车牌识别结果,所述深层特征提取层为最后一层特征提取层。

在另一个实施例中,所述浅层分类器与浅层提取特征层之间连接浅层过渡器,所述中层分类器与中层特征提取层之间连接中层过渡器;所述浅层特征提取层包括一层全连接层和一层激活函数,所述中层特征提取层包括一层全连接层和一层激活函数;所述浅层分类器的结构、所述中层分类器的结构以及所述深层分类器的结构相同。

在另一个实施例中,车牌识别装置,还包括:

主干网络获取模块,用于获取预先训练的车牌识别模型的主干网络;

第一阶段训练模块,用于固定所述主干网络的参数,将训练样本集中的样本,通过待训练的车牌识别模型的各特征提取层提取车牌特征,与所述特征提取层对应的分类器根据所述车牌特征进行预测,得到不同深度的分类器输出的预测结果;

第二阶段训练模块,用于根据不同深度的分类器输出的预测结果,计算阶段分类器的训练损失,基于所述训练损失训练所述车牌识别模型的阶段特征提取层和阶段分类器的参数;

模型获取模块,用于在训练达到结束条件时,根据所述主干网络和所述阶段分类器的参数,得到训练好的车牌识别模型。

所述训练损失包括全部阶段分类器的标签的交叉熵损失、蒸馏损失以及熵约束损失;其中,通过蒸馏损失使阶段分类器的预测结果向所述深层分类器的预测结果对齐。

在另一个实施例中,确定蒸馏损失的方式,包括:

将训练过程中阶段分类器的预测结果与深层分类器的预测结果进行比对,根据所述深层分类器的预测结果与各阶段分类器的预测结果的差异,确定蒸馏损失。

在另一个实施例中,确定熵约束损失的方式,包括:

根据各阶段分类器的预测结果,计算各分类器的熵,得到熵约束损失,其中,熵约束包括各分类器的熵与预测精度成反比。

关于车牌识别装置的具体限定可以参见上文中对于车牌识别方法的限定,在此不再赘述。上述车牌识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储车牌识别模型数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种车牌识别模型方法。

本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。

在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

相关技术
  • 双层车牌识别方法、装置、计算机设备及存储介质
  • 车牌识别方法、装置、计算机设备及存储介质
  • 一种车牌识别方法、装置、计算机装置及计算机可读存储介质
  • 声纹识别方法、装置、计算机设备和计算机可读存储介质
  • 人脸识别方法、装置、计算机设备及存储介质
  • 车牌识别方法、装置、计算机设备和计算机可读存储介质
  • 车牌识别方法、装置、计算机设备及计算机可读存储介质
技术分类

06120115936194