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

一种铭牌VIN码识别方法、装置、存储介质及设备

文献发布时间:2024-04-18 19:57:31


一种铭牌VIN码识别方法、装置、存储介质及设备

技术领域

本申请涉及图像处理技术领域,具体而言,涉及一种铭牌VIN码识别方法、装置、存储介质及设备。

背景技术

汽车铭牌是车辆的身份证,记录了每台车辆的重要信息。铭牌上的VIN(VehicleIdentification Number,车辆识别代号)码包括众多车辆信息,如车辆类型、车辆结构类型、车辆技术特性参数等,因此,实现VIN码的自动化提取有利于方便车辆的管理。

相关技术中从汽车铭牌中提取VIN码的方式主要是根据传统算法,利用图像处理的常规变换来进行前后景分离,进而提取到VIN码。然而,这一方式的鲁棒性较差,存在较高的误检率。

发明内容

本申请的目的在于提供一种铭牌VIN码识别方法、装置、存储介质及设备,旨在解决相关技术中从汽车铭牌中提取VIN码的方式存在的准确率较低的问题。

第一方面,本申请提供的一种铭牌VIN码识别方法,包括:

获取待识别的汽车铭牌图像;

基于文字检测模型对所述汽车铭牌图像进行处理,得到VIN码位置信息;所述文字检测模型在训练过程中,基于所述文字检测模型的损失函数和辅助分支网络的损失函数进行联合调优;

根据所述VIN码位置信息对所述汽车铭牌图像进行裁剪,再基于文字识别模型对裁剪后的图像进行处理,识别出所述汽车铭牌图像中包含的目标VIN码;所述文字识别模型通过多个带有指定标签的样本图片训练得到;所述指定标签指示对应的样本图片中包含的VIN码。

在上述实现过程中,构建文字检测模型,并通过辅助分支网络对该文字检测模型进行强化训练,同时通过多个带有指定标签的样本图片作为训练样本,构建文字识别模型,这样,针对待识别的汽车铭牌图像,基于该文字检测模型检测出VIN码所在区域的位置,以此对图像进行裁剪后,输入文本识别模型,进而识别出该汽车铭牌图像中包含的目标VIN码。如此,利用辅助学习的方式,增强了模型对VIN码的检测能力,从而提升了对铭牌VIN码的识别精度。

进一步地,在一些实施例中,所述文字检测模型是基于YOLOv5算法训练得到;所述VIN码位置信息包括VIN码坐标和置信度。

在上述实现过程中,根据YOLOv5的网络结构构建文字检测模型,使得构建出的文字检测模型能够准确检测出图像中VIN码的坐标和对应的置信度。

进一步地,在一些实施例中,所述辅助分支网络是在所述文字检测模型的主干网络的基础上,构建以卷积层、BN层、激活层和shortcut层相连的单元,堆叠形成颈部网络,以全连接层构建第一输出端,再以卷积层构建与所述第一输出端并行的第二输出端而形成的;其中,所述第一输出端用于判断输入图像中包含的汽车生产商信息;所述第二输出端用于判断输入图像中存在字符的位置上包含的字符个数。

在上述实现过程中,利用辅助分支网络对文字检测模型进行强化训练,将VIN码的特点,如汽车生产商以及字符个数等,传输给文字检测模型,从而提高文字检测模型对VIN码的检测精度。

进一步地,在一些实施例中,所述文字检测模型基于以下方式训练得到:

将带有分类标签和真实框坐标标签的目标样本图片输入初始文字检测模型,得到预测分类结果和预测坐标结果;

基于所述分类标识和所述预测分类结果构建分类损失函数,基于所述真实框坐标标识和所述预测坐标结果构建坐标损失函数;

在利用所述分类损失函数和所述坐标损失函数对所述初始文字检测模型进行训练,得到基础检测模型后,利用所述辅助分支网络的损失函数、所述分类损失函数和所述坐标损失函数对所述文字检测模型的主干网络进行联合调优。

在上述实现过程中,提供一种基于辅助分支网络对文字检测模型进行强化训练的具体方式。

进一步地,在一些实施例中,所述文字识别模型包括CNN分支网络、LSTM分支网络和MLP分支网络;所述CNN分支网络用于从输入的图片中提取出文本特征;所述LSTM分支网络用于根据所述文本特征识别出文本信息;所述LSTM分支网络的最后一个子单元输出的隐变量输入到所述MLP分支网络;所述MLP分支网络用于根据所述隐变量,判断所述文本信息是否构成VIN码。

在上述实现过程中,通过CNN构建、LSTM构建以及适应性改进,增强文字识别模型对VIN码的识别能力。

进一步地,在一些实施例中,所述文字识别模型的损失函数是基于CTC Loss和BCELoss相加得到的。

在上述实现过程中,在文字识别模型的训练过程中,以CTC Loss为损失函数,同时引入BCE Loss用于计算VIN码的预测损失,使得训练好的文字识别模型能够准确识别出输入图像中包含的VIN码。

进一步地,在一些实施例中,所述方法还包括:

当所述置信度高于第一阈值时,输出所述目标VIN码;

当所述置信度低于第二阈值时,将所述目标VIN码移除;所述第二阈值小于所述第一阈值。

在上述实现过程中,根据检测的置信度对识别结果进行直接输出或移除处理,保障最终输出的VIN码识别结果的准确性,提升用户体验。

第二方面,本申请提供的一种铭牌VIN码识别装置,包括:

获取模块,用于获取待识别的汽车铭牌图像;

检测模块,用于基于文字检测模型对所述汽车铭牌图像进行处理,得到VIN码位置信息;所述文字检测模型在训练过程中,基于所述文字检测模型的损失函数和辅助分支网络的损失函数进行联合调优;

识别模块,用于根据所述VIN码位置信息对所述汽车铭牌图像进行裁剪,再基于文字识别模型对裁剪后的图像进行处理,识别出所述汽车铭牌图像中包含的目标VIN码;所述文字识别模型通过多个带有指定标签的样本图片训练得到;所述指定标签指示对应的样本图片中包含的VIN码。

第三方面,本申请提供的一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述的方法的步骤。

第四方面,本申请提供的一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行如第一方面任一项所述的方法。

第五方面,本申请提供的一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面任一项所述的方法。

本申请公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本申请公开的上述技术即可得知。

为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本申请实施例提供的一种铭牌VIN码识别方法的流程图;

图2为本申请实施例提供的一种基于知识辅助分支的铭牌VIN码识别方案的工作流程的示意图;

图3为本申请实施例提供的一种铭牌VIN码识别装置的框图;

图4为本申请实施例提供的一种电子设备的结构框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

如背景技术记载,相关技术中从汽车铭牌中提取VIN码的方式存在着准确率较低的问题。基于此,本申请实施例提供一种铭牌VIN码识别方案,以解决上述问题。

接下来对本申请实施例进行介绍:

如图1所示,图1是本申请实施例提供的一种铭牌VIN码识别方法的流程图,所述方法可以应用于终端或服务器。该终端可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携式计算机和台式计算机等;该服务器可以是单个服务器,也可以是多个服务器组成的分布式服务器集群。该终端或服务器提供图像处理的环境,这一环境包括软件部分和硬件部分,其中,软件部分主要包括操作系统,如Windows、Linux等,硬件部分主要包括计算资源、存储资源等,如CPU(Central Processing Unit,中央处理器)、内存、硬盘等。需要说明的是,该终端/服务器也可以实现成多个软件或软件模块,或者还可以实现成单个软件或软件模块,本申请对此不作限制。

所述方法包括:

在步骤101、获取待识别的汽车铭牌图像;

本步骤中提到的汽车铭牌图像可以是任意一种包含VIN码的图像,如通过相机、手机等采集设备拍摄得到的图像,或者是从采集设备的拍摄视频中截取得到的视频帧。本实施例方案可以应用于多种场景,例如,在金融科技场景中,汽车金融机构可以对需要办理租赁、贷款等业务的客户对应的车辆铭牌进行图像采集,进而自动化识别铭牌中的VIN码,以此获取车辆信息,实现智能化管理。

在步骤102、基于文字检测模型对所述汽车铭牌图像进行处理,得到VIN码位置信息;所述文字检测模型在训练过程中,基于所述文字检测模型的损失函数和辅助分支网络的损失函数进行联合调优;

在实际应用中,汽车铭牌中可能包含除VIN码之外的其他信息,这就导致针对拍摄到的汽车铭牌图像进行VIN码识别时,容易受到其他信息的干扰。因此,为了提高VIN码识别结果的准确性,本实施例方案基于辅助分支网络对文字检测模型进行强化训练,再利用训练好的文字检测模型对待识别的汽车铭牌图像进行处理,从而确定VIN码所在区域,进而方便后续文字识别模型的精准识别。

具体地,在一些实施例中,本步骤中提到的文字检测模型可以是基于YOLOv5算法训练得到;该VIN码位置信息包括VIN码坐标和置信度。YOLOv5算法是一种用于物体检测的深度学习算法,是YOLO系列中的一个成员。YOLOv5的结构由4部分组成,包括输入端(input)、主干网络(backbone)、颈部网络(neck)和输出端(head),其中,YOLOv5在输入端会对图像数据进行自适应图像填充和Mosaic数据增强,输入端还集成了自适应锚框计算,使得在训练不同数据集前,模型通过对数据集的标签框进行聚类获得初始锚框大小;主干网络能从图像中提取到特征,主要使用了C3模块和SPPF模块,该C3模块包含了3个标准卷积层以及多个瓶颈模块,使用C3模块能减少模型计算量,该SPPF模块基于类似于空间金字塔池化的原理,能对同一个特征图进行多尺度特征提取,从而提升模型的精度;颈部网络一般由特征金字塔和路径聚合结构组成,能够融合不同尺寸特征图的特征信息;输出端作为模型的检测部分,主要是对提取到的多尺度特征图进行预测不同大小的物体,输出端的锚框机制通过聚类提取先验框尺度,并约束预测边框的位置。根据YOLOv5的网络结构构建文字检测模型,使得构建出的文字检测模型能够准确检测出图像中VIN码的坐标和对应的置信度。

该文字检测模型在训练过程中,基于本模型的损失函数和辅助分支网络的损失函数进行联合调优,也就是说,利用辅助分支网络对文字检测模型进行强化训练,将VIN码的特点传输给文字检测模型,从而提高文字检测模型对VIN码的检测精度。在一些实施例中,该辅助分支网络可以是在所述文字检测模型的主干网络的基础上,构建以卷积层、BN层、激活层和shortcut层相连的单元,堆叠形成颈部网络,以全连接层构建第一输出端,再以卷积层构建与所述第一输出端并行的第二输出端而形成的;其中,所述第一输出端用于判断输入图像中包含的汽车生产商信息;所述第二输出端用于判断输入图像中存在字符的位置上包含的字符个数。也就是说,辅助分支网络同样可以是基于YOLOv5算法训练得到的,其可以在文字检测模型的backbone基础上,构建以卷积层、BN层、激活层和shortcut层相连的单元,按照一定数量堆叠形成neck层,该辅助分支网络具有两个head,其中一个head以全连接层构建,用于判断铭牌上所写的汽车生产商,另一个head以卷积层构建,用于判断存在英文/数字字符的位置上其对应的字符个数。如此,使得该辅助分支网络可以关注到更多的VIN码特点,进而在对文字检测模型强化训练的过程中,将其传递给文字检测模型。其中,在训练辅助分支网络时,可以利用多个带有汽车生产商标签和字符个数标签的铭牌图像作为训练样本,将第一输出端输出的结果与真实值做交叉熵,构建第一损失函数,将第二输出端输出的结果与真实值计算Smooth Loss,得到第二损失函数,从而得到辅助分支网络的损失函数。

进一步地,在一些实施例中,本步骤中提到的文字检测模型可以基于以下方式训练得到:将带有分类标签和真实框坐标标签的目标样本图片输入初始文字检测模型,得到预测分类结果和预测坐标结果;基于所述分类标签和所述预测分类结果构建分类损失函数,基于所述真实框坐标标签和所述预测坐标结果构建坐标损失函数;在利用所述分类损失函数和所述坐标损失函数对所述初始文字检测模型进行训练,得到基础检测模型后,利用所述辅助分支网络的损失函数、所述分类损失函数和所述坐标损失函数对所述文字检测模型的主干网络进行联合调优。也就是说,利用多个带有分类标签和真实框坐标标签的目标样本图片作为文字检测模型的训练样本,这里的分类标签表征目标样本图片所属的类别,真实框坐标标签表征VIN码在目标样本图片所处区域的坐标,通过该训练样本进行训练,得到分类损失函数和坐标损失函数,逐步训练文字检测模型至收敛,完成基础检测模型的构建,之后,基于分类损失函数、坐标损失函数结合前面提到的第一损失函数和第二损失函数,得到联合损失函数,以此进行联合调优,使得主干网络更有效,通过最小化该联合损失函数,使模型达到收敛状态,至此完成文字检测模型的强化训练。其中,该分类损失函数可以是CE Loss(Cross-Entropy Loss,交叉熵损失函数),该坐标损失函数可以是IoU Loss(Intersection over Union Loss,交并比损失函数),具体的损失函数构建过程可以参见相关技术中的描述,本申请对此不作赘述。

在步骤103、根据所述VIN码位置信息对所述汽车铭牌图像进行裁剪,再基于文字识别模型对裁剪后的图像进行处理,识别出所述汽车铭牌图像中包含的目标VIN码;所述文字识别模型通过多个带有指定标签的样本图片训练得到;所述指定标签指示对应的样本图片中包含的VIN码。

本步骤是指:针对待识别的汽车铭牌图像,通过文字检测模型得到VIN码位置信息,以此将图像进行裁剪,再输入文字识别模型进行VIN码识别,从而得到该汽车铭牌图像中包含的目标VIN码。在此过程中,由于有效利用了VIN码知识,提高模型的识别能力,减少后处理流程,因而对铭牌VIN码的识别精度较高。

在一些实施例中,本步骤中提到的文字识别模型可以包括CNN分支网络、LSTM分支网络和MLP分支网络;所述CNN分支网络用于从输入的图片中提取出文本特征;所述LSTM分支网络用于根据所述文本特征识别出文本信息;所述LSTM分支网络的最后一个子单元输出的隐变量输入到所述MLP分支网络;所述MLP分支网络用于根据所述隐变量,判断所述文本信息是否构成VIN码。也就是说,该文字识别模型的训练阶段可包括CNN(ConvolutionalNeural Network,卷积神经网络)构建、LSTM(Long Short-Term Memory,长短期记忆网络)构建与适应性改进,在一些场景中,该CNN分支网络可以由卷积层、BN层、激活层和shortcut层组成,实现对文本特征的提取;通过输入门、输出门和遗忘门构建子模块,并将子模块按照自循环的方式构成LSTM网络,将CNN和LSTM通过级联的方式,得到文字识别网络,在此基础上,将LSTM最后一个子单元输出的隐变量输入到一个MLP(Multilayer Perceptron,多层感知器)网络,以判断识别出的文本信息是否构成VIN码。如此,增强文字识别模型对VIN码的识别能力。

进一步地,该文字识别模型的损失函数可以是基于CTC Loss和BCE Loss相加得到的。在文字识别模型的训练过程中,以CTC Loss(Connectionist TemporalClassification Loss,连接时序分类损失函数)为损失函数,CTC Loss是根据动态规划算法,使得多种联合概率按真实标签组成的预测值的似然概率最大来求解,同时引入BCELoss(Binary Cross Entropy Loss,二分类交叉熵损失函数)用于计算VIN码的预测损失,这两个损失函数相加得到总损失,训练模型至收敛,使得文字识别模型能够准确识别出输入图像中包含的VIN码。当然,在其他实施例中,该文字识别模型也可以采用其他类型的损失函数训练得到。

还有,在一些实施例中,上述方法还可以包括:当所述置信度高于第一阈值时,输出所述目标VIN码;当所述置信度低于第二阈值时,将所述目标VIN码移除;所述第二阈值小于所述第一阈值。也就是说,在文字识别模型识别出汽车铭牌图像中包含的目标VIN码后,若文字检测模型检测置信度高于第一阈值,将文字识别模型的识别结果直接输出,若检测置信度低于第二阈值,表明该识别结果与真实情况可能存在一定差异,此时将该识别结果移除,如此,保障最终输出的VIN码识别结果的准确性,提升用户体验。其中,可选地,该第一阈值可以为0.8,该第二阈值可以为0.2,当检测置信度在0.2至0.8之间时,可以再次对该汽车铭牌图像进行检测,如果新的检测结果中置信度高于0.5则对识别出的目标VIN码进行保留,否则去除。当然,该第一阈值和第二阈值也可以根据不同场景的需求进行不同的设置,本申请对此不作限制。

本申请实施例,构建文字检测模型,并通过辅助分支网络对该文字检测模型进行强化训练,同时通过多个带有指定标签的样本图片作为训练样本,构建文字识别模型,这样,针对待识别的汽车铭牌图像,基于该文字检测模型检测出VIN码所在区域的位置,以此对图像进行裁剪后,输入文本识别模型,进而识别出该汽车铭牌图像中包含的目标VIN码。如此,利用辅助学习的方式,增强了模型对VIN码的检测能力,从而提升了对铭牌VIN码的识别精度。

为了对本申请的方案做更为详细的说明,接下来介绍一具体实施例:

本实施例涉及对车辆铭牌VIN码识别场景。在金融科技领域中,由于汽车消费越来越多,汽车金融机构期望推动车辆管理的流程智能化,而对车辆铭牌VIN码进行识别,是车辆管理的一个重要流程。相关技术中的VIN码识别方式采用单一的深度学习方法,会检测出全部文字信息,容易包含干扰信息,因此VIN码识别精度较低。基于此,本实施例提供一种基于知识辅助分支的铭牌VIN码识别方案,以解决上述问题。

本实施例方案的工作流程如图2所示,该图中,黑色箭头代表训练过程,白色箭头代表测试过程,该方案涉及文字检测模型21、知识辅助分支22和文字识别模型23的构建过程,其中文字识别模型23中包括一个MLP网络(图中记为231),此外,该文字识别模型还包括CNN分支网络和LSTM分支网络(图中未示出)。该工作流程包括:

S201、根据YOLOv5的网络结构构建文字检测模型;

具体地,该文字检测模型的搭建过程中,组件由卷积层,激活层,池化层构成,子单元结构上采用传统瓶颈结构和shortcut连接结构,通过层层堆叠组成了主干网络,即backbone;特征在backbone提取特征后,进入瓶颈层,瓶颈层由concat层、上采样和卷积层组成,融合不同分辨率的特征输入到预测层;预测层由不带BN的单卷积层构成,假设输入图像大小为640x640像素,经过特征提取后,输出大(80x80)、中(40x40)和小(20x20)分辨率的特征且深度为c,其中c是由4维坐标维度(x,y,width,height)以及1维置信度(用于说明是否存在目标)组成;

该文字检测模型的基础损失函数包括分类损失函数和坐标损失函数,其中,分类损失函数采用CE Loss,坐标损失函数采用IoU Loss;

设置batch_zise为64,LR为1e-3,采用余弦退火机制改变学习率,在Adam优化器下,逐步训练文字检测模型至收敛,至此完成基础检测模型的构建;

S202、引入知识辅助分支,并将知识辅助分支输出的损失函数和S201的损失一起对模型进行训练,提升模型提取特征能力;

具体地,该知识辅助分支的构建过程,可以是在S201中YOLOv5的backbone基础上,构建以卷积层、BN层、激活层和shortcut层相连的单元,按照一定数量堆叠形成neck层,再以全连接层构建head1,用于判断铭牌上所写的汽车生产商,以卷积层构建与head1并行的head2,用于判断存在英文/数字字符的位置上其对应的字符个数;

head1输出的结果与真实值做交叉熵,得到损失函数L1,head2输出的结果则与真实值计算Smooth Loss,得到损失函数L2;

训练过程,采用Adam优化器,对YOLOv5和两个并行的head参数做优化,首先,在S201的基础上,先将YOLOv5参数固定,分别训练head1和head2参数;然后,按照8:1:1的比例对YOLOv5的损失函数,结合损失函数L1和L2进行联合调优;最后,为了让主干网络更有效,加大训练难度,将比例换至2:1:1训练直到收敛,至此完成文字检测模型的强化训练;

S203、实现文字识别模型训练,主要包括CNN构建,LSTM构建与适应性改进,以及根据新构建的损失函数完成训练;

具体地,该文字识别模型的训练过程可以包括:

S2031、类似于文字检测模型的backbone的结构,由卷积层、BN层、激活层和shortcut层构建CNN,实现对文本特征的提取;

S2032、通过输入门、输出门和遗忘门构建子模块,并将子模块按照自循环的方式构成LSTM网络,将CNN和LSTM通过级联的方式,得到文字识别网络,同时与传统文字识别网络不同,将LSTM最后一个子单元输出的隐变量输入到一个MLP网络,用于判断识别出的文字是否构成VIN码;

S2033、设置学习率为1e-5,图像分辨率为32x640,在以ImageNet预训练的模型基础上,以CTC Loss为损失函数,梯度下降为迭代算法,进行文字识别模型的模型训练,其中CTC Loss是根据动态规划算法,使得多种联合概率按真实标签组成的预测值的似然概率最大来求解,同时引入BCE Loss用于计算VIN码的预测损失,且CTC Loss与BCE Loss的损失按照1:1相加得到总损失,以此训练模型至收敛,得到文字识别模型;

S204、将训练好的模型按照一定规则级联后,用于对铭牌上vin码的识别;

具体地,这一步骤可以包括:

S2041、将S202训练好的模型移除知识辅助分支后,与S203得到的文字识别模型级联,形成完整的铭牌VIN识别模块;

S2042、将待识别的铭牌图像输入S2041的铭牌VIN识别模块,文字检测阶段会得到相关VIN码坐标和置信度,将图像裁剪后输入文字识别模型进行VIN码识别。当检测置信度高于0.8时,将识别结果直接输出;当检测置信度低于0.2时,将识别结果移除VIN码候选;当检测置信度在0.2与0.8之间时,观察文字识别判断的VIN码值,如果高于0.5则对识别VIN码值保留,否则去除,至此完成VIN码的检测和识别。

本实施例方案训练出来的模型识别精度高,能对铭牌中困难识别的情况做高效的识别召回;其次,这一方案有效利用VIN码知识,在增强VIN码检测的同时,减少后处理的压力,使得铭牌VIN码识别更高效,加快车辆管理流程,从而推进物理世界的车辆信息向数字世界存储的效率。

与前述方法的实施例相对应,本申请还提供铭牌VIN码识别装置及其应用的终端的实施例:

如图3所示,图3是本申请实施例提供的一种铭牌VIN码识别装置的框图,包括:

获取模块31,用于获取待识别的汽车铭牌图像;

检测模块32,用于基于文字检测模型对所述汽车铭牌图像进行处理,得到VIN码位置信息;所述文字检测模型在训练过程中,基于所述文字检测模型的损失函数和辅助分支网络的损失函数进行联合调优;

识别模块33,用于根据所述VIN码位置信息对所述汽车铭牌图像进行裁剪,再基于文字识别模型对裁剪后的图像进行处理,识别出所述汽车铭牌图像中包含的目标VIN码;所述文字识别模型通过多个带有指定标签的样本图片训练得到;所述指定标签指示对应的样本图片中包含的VIN码。

在一些实施例中,上述文字检测模型是基于YOLOv5算法训练得到;所述VIN码位置信息包括VIN码坐标和置信度。

在一些实施例中,上述辅助分支网络是在所述文字检测模型的主干网络的基础上,构建以卷积层、BN层、激活层和shortcut层相连的单元,堆叠形成颈部网络,以全连接层构建第一输出端,再以卷积层构建与所述第一输出端并行的第二输出端而形成的;其中,所述第一输出端用于判断输入图像中包含的汽车生产商信息;所述第二输出端用于判断输入图像中存在字符的位置上包含的字符个数。

在一些实施例中,上述装置还包括训练模块,所述训练模块包括:

输入子模块,用于将带有分类标签和真实框坐标标签的目标样本图片输入初始文字检测模型,得到预测分类结果和预测坐标结果;

构建子模块,用于基于所述分类标识和所述预测分类结果构建分类损失函数,基于所述真实框坐标标识和所述预测坐标结果构建坐标损失函数;

调优子模块,用于在利用所述分类损失函数和所述坐标损失函数对所述初始文字检测模型进行训练,得到基础检测模型后,利用所述辅助分支网络的损失函数、所述分类损失函数和所述坐标损失函数对所述文字检测模型的主干网络进行联合调优。

在一些实施例中,上述文字识别模型包括CNN分支网络、LSTM分支网络和MLP分支网络;所述CNN分支网络用于从输入的图片中提取出文本特征;所述LSTM分支网络用于根据所述文本特征识别出文本信息;所述LSTM分支网络的最后一个子单元输出的隐变量输入到所述MLP分支网络;所述MLP分支网络用于根据所述隐变量,判断所述文本信息是否构成VIN码。

在一些实施例中,上述文字识别模型的损失函数是基于CTC Loss和BCE Loss相加得到的。

在一些实施例中,上述装置还包括:

输出模块,用于当所述置信度高于第一阈值时,输出所述目标VIN码;

移除模块,用于当所述置信度低于第二阈值时,将所述目标VIN码移除;所述第二阈值小于所述第一阈值。

上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

本申请还提供一种电子设备,请参见图4,图4为本申请实施例提供的一种电子设备的结构框图。电子设备可以包括处理器410、通信接口420、存储器430和至少一个通信总线440。其中,通信总线440用于实现这些组件直接的连接通信。其中,本申请实施例中电子设备的通信接口420用于与其他节点设备进行信令或数据的通信。处理器410可以是一种集成电路芯片,具有信号的处理能力。

上述的处理器410可以是通用处理器,包括中央处理器(CPU,Central ProcessingUnit)、网络处理器(NP,Network Processor)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器410也可以是任何常规的处理器等。

存储器430可以是,但不限于,随机存取存储器(RAM,Random Access Memory),只读存储器(ROM,Read Only Memory),可编程只读存储器(PROM,Programmable Read-OnlyMemory),可擦除只读存储器(EPROM,Erasable Programmable Read-Only Memory),电可擦除只读存储器(EEPROM,Electric Erasable Programmable Read-Only Memory)等。存储器430中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器410执行时,电子设备可以执行上述图1或图2方法实施例涉及的各个步骤。

可选地,电子设备还可以包括存储控制器、输入输出单元。

所述存储器430、存储控制器、处理器410、外设接口、输入输出单元各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通信总线440实现电性连接。所述处理器410用于执行存储器430中存储的可执行模块,例如电子设备包括的软件功能模块或计算机程序。

输入输出单元用于提供给用户创建任务以及为该任务创建启动可选时段或预设执行时间以实现用户与服务器的交互。所述输入输出单元可以是,但不限于,鼠标和键盘等。

可以理解,图4所示的结构仅为示意,所述电子设备还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。

本申请实施例还提供一种存储介质,所述存储介质上存储有指令,当所述指令在计算机上运行时,所述计算机程序被处理器执行时实现方法实施例所述的方法,为避免重复,此处不再赘述。

本申请还提供一种计算机程序产品,所述计算机程序产品在计算机上运行时,使得计算机执行方法实施例所述的方法。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

相关技术
  • 识别码识别方法、装置、计算机设备和存储介质
  • 一种漆面识别方法、装置、存储介质及电子设备
  • 一种氨氮的识别方法、装置、存储介质及设备
  • 一种总磷的识别方法、装置、存储介质及设备
  • 一种溶解氧的识别方法、装置、存储介质及设备
  • 一种车辆的VIN码获取方法、装置、设备及存储介质
  • 一种车辆铭牌识别方法、装置、计算机设备及存储介质
技术分类

06120116458488