识别模型的训练方法、装置、计算机设备及识别方法与流程

文档序号:19529418发布日期:2019-12-27 15:14阅读:128来源:国知局
识别模型的训练方法、装置、计算机设备及识别方法与流程

本申请涉及车辆检测领域,特别是涉及一种车辆识别码的识别模型的训练方法、装置、计算机设备及识别方法。



背景技术:

随着社会经济的不断发展和人民生活水平的不断提高,城市机动车保有量迅猛增长。机动车车辆年检的工作量也随之迅速增大。而车辆识别码的检测、识别是车辆年检重要的项目之一。

其中,车辆识别码(vehicleidentificationnumber,vin)是作为汽车唯一标识码的多字符代码,包含了车辆的生产厂家、年代、车型、车身型式及代码、发动机代码及组装地点等信息。通常情况下,车辆识别码由17位字符组成,包含字母和数字,俗称十七位码。

但是,传统技术中存在无法准确识别车辆识别码的技术问题。



技术实现要素:

基于此,有必要针对传统技术中存在的无法准确识别车辆识别码的技术问题,提供一种车辆识别码的识别模型的训练方法、装置及识别方法。

一种车辆识别码的识别模型的训练方法,所述方法包括:获取多个车辆识别码区域图像,并标注各个所述车辆识别码区域图像中各个字符的位置和类别;对标注后的各个所述车辆识别码区域图像进行数据扩充操作,生成各个所述车辆识别码区域图像所对应的扩充图像,并确定各个所述扩充图像中各个字符的位置和类别;根据各个所述车辆识别码区域图像以及各个所述扩充图像,生成车辆识别码区域图像的样本集;根据所述车辆识别码区域图像的样本集、各个所述车辆识别码区域图像中各个字符的位置和类别、各个所述扩充图像中各个字符的位置和类别,训练所述车辆识别码识别模型。

上述车辆识别码的识别模型的训练方法,由于对车辆识别码区域图像中各个字符的位置和类别均进行了标注,实现了对车辆识别码待检测图像中相邻的相同字符的有效识别,从而解决了传统技术中存在的无法准确检测车辆识别码的技术问题,提升了车辆识别码检测的准确率。

附图说明

图1为一个实施例中车辆识别码识别模型的训练方法的应用环境图;

图2a为一个实施例中车辆识别码识别模型的训练方法的流程示意图;

图2b为一个实施例中车辆识别码的示意图;

图3a为一个实施例中布局变换操作的流程示意图;

图3b为一个实施例中布局变换操作的示意图;

图4a为一个实施例中弯曲变换操作的流程示意图;

图4b为一个实施例中弯曲变换操作的示意图;

图4c为一个实施例中旋转操作的示意图;

图5为一个实施例中字符实例分割模型的网络结构图;

图6为一个实施例中利用字符实例分割模型识别待识别车辆识别码区域图像的流程示意图;

图7为一个实施例中待检测图像中的车辆识别码区域的示意图;

图8为一个实施例中车辆识别码识别模型的训练方法的流程示意图;

图9为一个实施例中车辆识别码识别模型的训练装置的结构框图;

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

具体实施方式

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

请参见图1,本申请一个实施例提供的应用环境的示意图。该应用环境可以包括:第一计算机设备110、第二计算机设备120和图像采集设备130。其中,第一计算机设备110和第二计算机设备120是指具有较强的数据存储和计算能力的电子设备,例如第一计算机设备110、第二计算机设备120可以是pc(personalcomputer,个人计算机)或服务器。具体地,通过图像采集设备130对车辆的车辆识别码进行图像采集,得到车辆识别码的待检测图像,并通过网络连接将车辆识别码的待检测图像发送至第一计算机设备110。在对待检测图像进行检测之前,需要技术人员在第二计算机设备120上构建目标检测模型,并通过第二计算机设备120对构建的目标检测模型进行训练。目标检测模型是指从待检测图像中将感兴趣的目标(比如车辆识别码)分割开来的机器学习模型。比如,目标检测模型可以是基于深度学习的ssd(singleshotmultiboxdetection)目标检测算法模型,ssd可以是通过单个深度神经网络,将待检测图像中的车辆识别码区域通过矩形框检测出来。

技术人员也可以在第二计算机设备120上构建车辆识别码识别模型,车辆识别码识别模型可以采用字符实例分割模型,并通过第二计算机设备120对构建的车辆识别码识别模型进行训练。车辆识别码识别模型的训练包括:第二计算机设备120获取多个车辆识别码区域图像,并标注各个车辆识别码区域图像中各个字符的位置和类别;对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像;根据各个车辆识别码区域图像以及各个扩充图像,生成车辆识别码区域图像的样本集;根据车辆识别码区域图像的样本集、各个车辆识别码区域图像中各个字符的位置和类别、各个扩充图像中各个字符的位置和类别,训练车辆识别码识别模型。

完成训练的目标检测模型、车辆识别码识别模型可以从第二计算机设备120发布至第一计算机设备110中。第一计算机设备110可以采用目标检测模型对用户提供的车辆识别码的待检测图像进行检测,判断待检测图像中是否存在待识别车辆识别码区域图像,若存在,从待检测图像中提取得到待识别车辆识别码区域图像;从而可以采用车辆识别码识别模型对待识别车辆识别码区域图像进行识别分割,得到车辆识别码的识别分割结果,并根据车辆识别码的识别分割结果生成待识别车辆识别码区域图像所对应的字符串;接着,将待识别车辆识别码区域图像所对应的字符串与车辆识别码的参考字符串进行比对;进而根据比对的结果,记录车辆识别码的识别结果。可以理解的是,第一计算机设备110也可以采用终端的形式,终端可以是诸如手机、平板电脑、电子书阅读器、多媒体播放设备、可穿戴设备、pc等电子设备。终端通过目标检测模型、字符实例分割模型完成车辆识别码的待检测图像的检测工作。当然,第一计算机设备110也可以与图像采集设备130集成在一起。

在一个实施例中,如图2a所示,提供了一种车辆识别码识别模型的训练方法,以该方法应用于图1中的第二计算机设备120为例进行说明,包括以下步骤:

s210、获取多个车辆识别码区域图像,并标注各个车辆识别码区域图像中各个字符的位置和类别。

其中,车辆识别码(vehicleidentificationnumber,vin)是作为汽车唯一标识码的多字符代码,包含了车辆的生产厂家、年代、车型、车身型式及代码、发动机代码及组装地点等信息。车辆识别码区域图像是指从车辆识别码图像中提取得到的与车辆识别码对应的部分图像。车辆识别码图像可以通过图像采集设备对车辆识别码进行拍摄得到。可以利用目标检测模型对车辆识别码图像进行检测,首先检测车辆识别码图像中是否存在车辆识别码区域图像,若存在,则对待检测图像进行提取或者截取,得到车辆识别码区域图像。将检测得到的车辆识别码区域图像保存在第二计算机设备本地或者与第二计算机设备通信连接的服务器。

具体地,第二计算机设备本地事先存储有多个车辆识别码区域图像,从第二计算机设备本地直接获取多个车辆识别码区域图像。或者,多个车辆识别码区域图像存储在与第二计算机设备通信连接的服务器,从该服务器获取多个车辆识别码区域图像。接着,通过开源的labelme标注工具对获取的各个车辆识别码区域图像进行标注。由于需要识别出相同类别的各个字符,则在标注时需要对车辆识别码区域图像中的各个字符分别进行类别标注和位置标注。特别是,车辆vin码中的字符有“0~9”、“a~n”、“p”和“r~z”共34种,可以分别用0~33来表示类别(class)。车辆vin码存在相同的字符或者连续相同的字符时,通过标注各个字符的位置和类别将车辆vin码中的相同字符区别开来。

s220、对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像,并确定各个扩充图像中各个字符的位置和类别。

其中,数据扩充指的是通过图像变形或者增加噪声等方式增加训练集的数量的一种手段。数据扩充操作包括布局变换、弯曲变换、旋转、平移中至少一个。具体地,一方面,车辆识别码的标注工作相对耗时、标注成本较高,另一方面,在实际情形中,遇到双排车架号、弧形车架号的几率也比较低,因此构建具有双排车架号、弧形车架号的样本集在一定难度。出于这些原因,对已经标注的车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像,将一张车辆识别码区域图像扩充为预设数量的不同形态的图片,比如,将原来的一张图片扩充为10张不同形态的图片。可以理解的是,通过对各个车辆识别码区域图像进行标注,得到各个车辆识别码区域图像所对应的标签文件(比如json文件),根据各个标签文件生成车辆识别码区域图像所对应的标签图。在对车辆识别码区域图像进行数据扩充操作的同时,需要对车辆识别码区域图像所对应的标签图进行相同的数据扩充操作,得到扩充图像所对应的标签图,可以将扩充图像所对应的标签图转为标签文件(比如json文件),从而通过扩充图像所对应的标签图确定各个扩充图像中各个字符的位置和类别。

s230、根据各个车辆识别码区域图像以及各个扩充图像,生成车辆识别码区域图像的样本集。

其中,样本集是用于训练的车辆识别码识别模型的训练集。具体地,获取多个车辆识别码区域图像,获取的各个车辆识别码区域图像可以用作车辆识别码识别模型的训练集。对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像,这部分数据扩充操作得到的各个扩充图像也可以用作车辆识别码识别模型的训练集,即获取的各个车辆识别码区域图像和扩充得到的各个扩充图像构建成模型训练的样本集。

s240、根据车辆识别码区域图像的样本集、各个车辆识别码区域图像中各个字符的位置和类别、各个扩充图像中各个字符的位置和类别,训练车辆识别码识别模型。

其中,利用样本集和样本集所对应的标签值对车辆识别码识别模型进行训练,使其具备识别车辆识别码区域图像中各个字符的能力。具体地,利用各个车辆识别码区域图像和扩充得到的各个扩充图像组成的样本集为模型的训练集。通过标注获取各个车辆识别码区域图像中各个字符的位置和类别,通过各个扩充图像所对应的标签图确定各个扩充图像中各个字符的位置和类别,从而利用车辆识别码区域图像的样本集、各个车辆识别码区域图像中各个字符的位置和类别、各个扩充图像中各个字符的位置和类别对车辆识别码识别模型进行训练。进一步地,可以根据车辆识别码识别模型预测的结果与标签的差异,调整车辆识别码识别模型的模型参数并继续训练,直至满足训练停止条件时结束训练。其中,训练停止条件是结束模型训练的条件。训练停止条件可以是达到预设的迭代次数,或者是调整模型参数后的车辆识别码识别模型的性能指标达到预设指标。

举例说明本实施例与传统技术的区别,车辆vin码通常由17位字符组成,组成车辆vin码的字符有“0~9”、“a~n”、“p”和“r~z”共34种。在对这些字符进行排列组合形成车辆vin码时,经常会有多个相同字符连续出现。如图2b所示,车辆vin码显示为:la9baggv0fhxcf049。对于这种含有连续相同字符(如gg)的车辆vin码,利用传统技术进行识别,识别结果为:la9bagv0fhxcf049。将传统技术的识别结果与车辆vin码进行比对,可见传统技术无法识别含有连续相同字符的车辆vin码,从而无法准确地对车辆识别码进行检测。而在本实施例中,由于对车辆识别码区域图像中各个字符的位置和类别均进行了标注,通过车辆识别码识别模型识别出车辆识别码区域图像中相邻的相同字符,识别结果为:la9baggv0fhxcf049,将本实施例的识别结果与车辆vin码进行比对,可见本实施例准确地识别出含有连续相同字符的车辆vin码,从而可以准确地对车辆识别码进行检测。

本实施中,通过获取多个车辆识别码区域图像,并标注各个车辆识别码区域图像中各个字符的位置和类别;对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像,并确定各个扩充图像中各个字符的位置和类别;根据各个车辆识别码区域图像以及各个扩充图像,生成车辆识别码区域图像的样本集;根据车辆识别码区域图像的样本集、各个车辆识别码区域图像中各个字符的位置和类别、各个扩充图像中各个字符的位置和类别,训练车辆识别码识别模型。实现了对车辆识别码待检测图像中相邻的相同字符的有效识别,从而解决了传统技术中存在的无法准确检测车辆识别码的技术问题,提升了车辆识别码检测的准确率。

在一个实施例中,数据扩充操作包括布局变换。如图3a所示,对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像,包括以下步骤:

s310、对各个车辆识别码区域图像分别进行截取,获得不包含各个字符的背景图像;

s320、调整背景图像的尺寸。

具体地,为了与车辆识别码的真实场景保持一致,从车辆识别码区域图像中任意不包括各个字符的位置截取部分图像,把截取的不包括各个字符的图像用作扩充图像的背景图像。为了令背景图像的尺寸与扩充图像的预设尺寸保持一致,需要进一步地调整背景图像的尺寸。可以根据用户输入的尺寸数据调整背景图像的尺寸,也可以根据背景图像的像素调整背景图像的尺寸。示例性地,通过resize函数调整背景图像的尺寸。

s330、根据各个字符在各个车辆识别码区域图像中的位置,在预设位置处对各个车辆识别码区域图像中的车辆识别码进行截断,获得至少两部分的车辆识别码图像。

具体地,由于已经标注了各个车辆识别码区域图像中各个字符的位置,且各个字符均对应有外接矩形框,则已知各个字符的外接矩形框四个顶点的坐标。预设位置可以设于车辆识别码相邻两字符之间,根据实际情况设置位于哪两个相邻字符之间。选择至少一组相邻的字符,在选择的相邻字符之间确定对应的分割线,通过分割线将各个车辆识别码区域图像中的车辆识别码进行截断,获得至少两部分的车辆识别码图像。

示例性地,通过统计分析,出现双排车辆vin码的概率比较高,则假设车辆识别码区域图像中的车辆识别码截为两段。针对任一车辆识别码区域图像来说,该车辆识别码区域图像中的车辆识别码由m个字符组成,通过标注已知m个字符各自外接矩形框四个顶点的坐标,预设位置设于第n(1<n<m)个字符与第n+1个字符之间。可以利用第n个字符外接矩形框的右上顶点和右下顶点确定一条分割线;或者利用第n+1个字符外接矩形框的左上顶点和左下顶点确定一条分割线;或者利用第n个字符外接矩形框的右上顶点和第n+1个字符外接矩形框的左下顶点确定一条分割线;或者第n个字符外接矩形框的右下顶点和第n+1个字符外接矩形框的左上顶点确定一条分割线;利用该条分割线将该车辆识别码区域图像中的车辆识别码截断,获得两部分的车辆识别码图像。需要说明的是,可以采用同样的方法结合实际情况将该车辆识别码区域图像中的车辆识别码截为三部分或者更多部分,在此不再赘述。

s340、将至少两部分的车辆识别码图像叠加至尺寸调整后的背景图像,生成布局变换操作后的扩充图像。

具体地,在预设位置处将车辆识别码截断获取至少两部分的车辆识别码图像,将至少两部分的车辆识别码图像进行布局变换,并叠加至尺寸调整后的背景图像上,生成布局变换操作后的扩充图像。示例性的,针对车辆识别码包括17个字符的情况,在统计分析了大量双排车辆识别码的图片数据后发现,双排车辆识别码的第一排通常为9个字符,第二排为8个字符。获取单排的车辆识别码区域图像,如图3b所示,根据第9个字符外接矩形框的右下顶点坐标和下一个字符外接矩形框的左上顶点坐标将单排的车辆识别码截断,得到两部分图像,将这两部分图像贴到尺寸调整后的背景图像上,得到包括双排车辆识别码的扩充图像。

本实施例中,通过布局变换操作改变车辆识别码区域图像中车辆识别码的布局,并得到的至少两部分的车辆识别码图像叠加至尺寸调整后的背景图像,生成布局变换操作后的扩充图像,利用布局变换操作得到的扩充图像对车辆识别码识别模型训练,提升车辆识别码识别模型的泛化能力,使其可以识别更多类型的车辆识别码。

在一个实施例中,将至少两部分的车辆识别码图像叠加至尺寸调整后的背景图像,生成布局变换操作后的扩充图像,包括:分别调整至少两部分的车辆识别码图像的尺寸;将尺寸调整后的至少两部分的车辆识别码图像叠加至尺寸调整后的背景图像,生成布局变换操作后的扩充图像。

具体地,将各个车辆识别码区域图像中的车辆识别码截断后,需要对获取到的各部分车辆识别码图像的尺寸进行调整。对各部分车辆识别码图像进行尺寸调整时,必然引入新的像素点。为了避免标签图中引入新的像素值,在进行插值操作时应选择最近邻插值的方式。将尺寸调整后的各部分的车辆识别码图像叠加至尺寸调整后的背景图像上,生成布局变换操作后的扩充图像。

在一个实施例中,数据扩充操作包括弯曲变换。如图4a所示,对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像,包括以下步骤:

s410、根据各个车辆识别码区域图像中第一个字符与最后一个字符的位置,在各个车辆识别码区域图像中分别确定围绕车辆识别码的外接矩形框;

s420、获取各个外接矩形框各顶点的坐标和各个车辆识别码区域图像的中心坐标。

其中,弯曲变换操作借鉴图像畸变矫正的思想,畸变矫正实际上就是将图像中的像素点放到其理论上应该在的位置,通过求解图像中像素点与镜头中心的距离与实际距离的映射关系,以此矫正图像。具体地,由于已经标注了各个车辆识别码区域图像中各个字符的位置,且各个字符均对应有外接矩形框,即可知各个字符的外接矩形框四个顶点的坐标。针对任一车辆识别码区域图像,根据车辆识别码区域图像中第一个字符外接矩形框的左上顶点坐标和左上顶点坐标、最后一个字符外接矩形框的右上顶点坐标和右上顶点坐标可以确定围绕车辆识别码的外接矩形框,且各个字符位于围绕车辆识别码的外接矩形框内。围绕车辆识别码的外接矩形框的四个顶点分别为第一个字符外接矩形框的左上顶点坐标和左上顶点坐标、最后一个字符外接矩形框的右上顶点坐标和右上顶点坐标。本实施例中,镜头中心记为车辆识别码区域图像的中心坐标,为了进行弯曲变换操作,获取车辆识别码区域图像的中心坐标。

s430、根据弧形车辆识别码的实际弧度确定弯曲变换所对应的弯曲系数。

具体地,通过尝试不同的弯曲系数对车辆识别码区域图像进行弯曲操作,将弯曲操作得到的弯曲幅度与弧形车辆识别码的实际弧度进行比较,选定弯曲幅度与实际弧形车架号最为相近的一组系数为弯曲系数。

s440、根据各顶点的坐标和中心坐标,结合弯曲系数对各个车辆识别码区域图像进行弯曲变换,生成弯曲变换操作后的扩充图像。

具体地,如图4b所示,针对任一车辆识别码区域图像,获取围绕车辆识别码的外接矩形框各顶点的坐标和车辆识别码区域图像的中心坐标后,可以根据各顶点的坐标和中心坐标,结合弯曲系数对该车辆识别码区域图像进行弯曲变换,生成弯曲变换操作后的扩充图像。进一步地,在进行像素点的弯曲变化时,需要进行越界保护,即弯曲变换后的像素点不能超出车辆识别码区域图像的尺寸范围,以免造成字符残缺不全。

本实施例中,通过弯曲变换操作改变车辆识别码区域图像中车辆识别码的形状,利用弯曲变换操作后的扩充图像对车辆识别码识别模型训练,可以提升车辆识别码识别模型的泛化能力,使其识别更多形状的车辆识别码。

在一个实施例中,数据扩充操作包括旋转、平移中的至少一个。对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像,包括:对标注后的各个车辆识别码区域图像进行预设角度的旋转,生成旋转操作后的扩充图像;和/或按照预设方向对标注后的各个车辆识别码区域图像进行平移,生成平移操作后的扩充图像。

具体地,如图4c所示,由于模型具有旋转不变性,故可以通过对标注后的各个车辆识别码区域图像进行小角度的旋转以进行数据扩充。为了避免模型对字符位置信息的学习产生过拟合,对标注后的各个车辆识别码区域图像进行不同方向的平移操作以进行数据扩充。

在一个实施例中,车辆识别码识别模型采用字符实例分割模型。图5示出了字符实例分割模型的网络结构图。字符实例分割模型调用resnet-101为基网络,使用fpn(featurepyramidnetworks)结构,且字符实例分割模型使用语义分割功能。采用字符实例分割模型对待识别车辆识别码区域图像进行识别,字符实例分割模型需要完成三件事:字符检测、字符分类和像素级层面上的字符分割。具体地,如图5所示,将待识别车辆识别码区域图像输入至字符实例分割模型的输入层进行一些处理,输入层的输出传入至与输入层连接的基网络。通过基网络提取待识别车辆识别码区域图像对应的特征图像(featuremap)。将基网络输出的特征图像传入至目标检测候选框生成网络和roi(regionofinterest,感兴趣区域)align层,且roialign层连接至目标检测候选框生成网络。roialign层后连接有两个分支,分别为第一分支和第二分支。其中,第一分支包括第一子分支和第二子分支。第一子分支包括一个边框回归层,通过第一子分支对待识别车辆识别码区域图像进行目标检测,确定待识别车辆识别码区域图像中各个字符以及各个字符的位置。第二子分支包括一个分类器,通过第二子分支对待识别车辆识别码区域图像进行目标分类,确定待识别车辆识别码区域图像中各个字符的类别。第二分支包括掩膜层(又称为遮罩层,mask),通过第二分支对待识别车辆识别码区域图像进行像素级目标分割,得到多个像素级分割对象。由于像素级分割对象包括组成车辆识别码的各个字符以及其他背景,则根据识别到的各个字符以及各个字符的类别,从多个像素级分割对象中选择车辆识别码所对应的各个字符。并根据待识别车辆识别码区域图像中各个字符的位置及类别对识别到的各个字符进行排序,生成车辆识别码区域图像所对应的字符串,生成的字符串即从识别到的车辆识别码。

在一个实施例中,以字符实例分割模型为例且应用于图1中的第一计算机设备110中对车辆识别码识别模型的应用进行说明。如图6所示,利用字符实例分割模型识别待识别车辆识别码区域图像中的车辆识别码,包括以下步骤:

s610、获取待识别车辆识别码区域图像和车辆识别码的参考字符串。

其中,待识别车辆识别码区域图像是指从待检测图像中提取得到的与车辆识别码对应的部分图像。而待检测图像是指通过图像采集设备对车辆识别码区域进行拍摄得到的且需要进行车辆识别码检测的图像。待检测图像可以仅包括待识别车辆识别码区域图像,也可以不包括待识别车辆识别码区域图像仅包括一些背景图像,还可以同时包括待识别车辆识别码区域图像和一些背景图像。通过图像采集设备对车辆的车辆识别码进行图像采集,并将车辆识别码的待检测图像通过有线连接方式或者无线连接方式发送至第一计算机设备,第一计算机设备获取车辆识别码的待检测图像。也可以将车辆识别码的待检测图像事先存储在第一计算机设备本地或者与第一计算机设备通信连接的服务器,第一计算机设备从本地或者与第一计算机设备通信连接的服务器获取待检测图像。由于车辆识别码由若干位字符组成,因此事先存储一个车辆识别码的参考字符串,该参考字符串是用于判断待检测图像中的车辆识别码是否通过检测的一个标准。可以理解的是,车辆识别码的参考字符串可以预存在第一计算机设备本地,也可以预存在与第一计算机设备通信连接的服务器上。具体地,如图7所示,通过目标检测模型检测待检测图像中是否存在待识别车辆识别码区域图像,若存在,从待检测图像中提取得到待识别车辆识别码区域图像。可以从第一计算机设备本地或者与第一计算机设备通信连接的服务器获取车辆识别码的参考字符串。

s620、通过字符实例分割模型对待识别车辆识别码区域图像进行识别分割。

其中,字符实例分割模型是指在像素层面识别出车辆识别码中各个字符的轮廓的机器学习模型。具体地,将目标检测模型检测到的待识别车辆识别码区域图像输入字符实例分割模型,通过字符实例分割模型对待识别车辆识别码区域图像进行目标检测,确定待识别车辆识别码区域图像中各个字符以及各个字符的位置;通过字符实例分割模型对待识别车辆识别码区域图像进行目标分类,确定待识别车辆识别码区域图像中各个字符的类别;通过字符实例分割模型对待识别车辆识别码区域图像进行像素级目标分割,得到多个像素级分割对象;根据车辆识别码区域图像中各个字符以及各个字符的类别,从多个像素级分割对象中选择车辆识别码所对应的各个字符。

s630、根据待识别车辆识别码区域图像的识别分割结果生成待识别车辆识别码区域图像所对应的字符串。

具体地,利用字符实例分割模型对待识别车辆识别码区域图像进行识别,识别出待识别车辆识别码区域图像包括哪些类别字符以及各个字符的位置,从而根据待识别车辆识别码区域图像中各个字符的位置及类别对各个字符进行排序,生成车辆识别码区域图像所对应的字符串。

s640、将待识别车辆识别码区域图像所对应的字符串与车辆识别码的参考字符串进行比对;

s650、根据比对的结果,记录车辆识别码的识别结果。

具体地,利用字符实例分割模型识别出待识别车辆识别区域图像中的车辆识别码的各个字符并生成车辆识别码区域图像所对应的字符串。为了判断待检测图像是否通过审核,需要判断待识别车辆识别码区域图像所对应的字符串与车辆识别码的参考字符串是否一致。将待识别车辆识别码区域图像所对应的字符串与车辆识别码的参考字符串进行比对,根据比对的结果,记录车辆识别码的识别结果。若两者一致,将车辆识别码的识别结果记录为通过检测,若两者不一致,将车辆识别码的识别结果记录为不通过检测。

本实例中,通过字符实例分割模型可以识别出车辆识别码区域图像中相邻的相同字符,解决了传统技术中存在的无法准确识别车辆识别码的技术问题,提升了车辆识别码检测的准确率。

在一个实施例中,如图8所示,在对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像之后,该方法还包括以下步骤:

s810、检测扩充图像是否包含残缺字符;

s820、若包含,则删除包含残缺字符的扩充图像。

具体地,在对车辆识别码区域图像进行布局变换、弯曲变换、旋转、平移等数据扩充操作后,会导致扩充图像中的部分字符不完整即残缺字符。若样本集中包括含有残缺字符的图像样本,对后续车辆识别码识别模型的训练会产生不好的影响,从而影响识别效果。因此,需要检测扩充图像是否包含残缺字符,若包含,则删除包含残缺字符的扩充图像。

在一个实施例中,本申请提供了一种车辆识别码识别模型的训练方法,且车辆识别码识别模型采用字符实例分割模型。该方法包括以下步骤:

s802、获取多个车辆识别码区域图像,并标注各个车辆识别码区域图像中各个字符的位置和类别。

s804、对各个车辆识别码区域图像分别进行截取,获得不包含各个字符的背景图像。

s806、调整背景图像的尺寸。

s808、根据各个字符在各个车辆识别码区域图像中的位置,在预设位置处对各个车辆识别码区域图像中的车辆识别码进行截断,获得至少两部分的车辆识别码图像。

s810、分别调整至少两部分的车辆识别码图像的尺寸。

s812、将尺寸调整后的至少两部分的车辆识别码图像叠加至尺寸调整后的背景图像,生成布局变换操作后的扩充图像。

s814、根据各个车辆识别码区域图像中第一个字符与最后一个字符的位置,在各个车辆识别码区域图像中分别确定围绕车辆识别码的外接矩形框。

s816、获取各个外接矩形框各顶点的坐标和各个车辆识别码区域图像的中心坐标。

s818、根据弧形车辆识别码的实际弧度确定弯曲变换所对应的弯曲系数。

s820、根据各顶点的坐标和中心坐标,结合弯曲系数对各个车辆识别码区域图像进行弯曲变换,生成弯曲变换操作后的扩充图像。

s822、对标注后的各个车辆识别码区域图像进行预设角度的旋转,生成旋转操作后的扩充图像。和/或

s824、按照预设方向对标注后的各个车辆识别码区域图像进行平移,生成平移操作后的扩充图像。

s826、检测经过布局变换、弯曲变换、旋转、平移操作后的扩充图像是否包含残缺字符。

s828、若包含,则删除包含残缺字符的扩充图像。

s830、根据各个车辆识别码区域图像以及各个保留的扩充图像,生成车辆识别码区域图像的样本集。

s832、根据车辆识别码区域图像的样本集、各个车辆识别码区域图像中各个字符的位置和类别、各个扩充图像中各个字符的位置和类别,训练车辆识别码识别模型。

其中,通过对各个车辆识别码区域图像进行标注,得到各个车辆识别码区域图像所对应的标签文件(比如json文件),根据各个标签文件生成车辆识别码区域图像所对应的标签图。在对车辆识别码区域图像进行布局变换、弯曲变换、旋转、平移等数据扩充操作的同时,需要对车辆识别码区域图像所对应的标签图进行相同的数据扩充操作,得到扩充图像所对应的标签图,可以将扩充图像所对应的标签图转为标签文件(比如json文件),从而通过扩充图像所对应的标签图确定各个扩充图像中各个字符的位置和类别。

s834、获取待识别车辆识别码区域图像和车辆识别码的参考字符串。

s836、通过字符实例分割模型对待识别车辆识别码区域图像进行识别分割。

s838、根据待识别车辆识别码区域图像的识别分割结果生成待识别车辆识别码区域图像所对应的字符串。

s840、将待识别车辆识别码区域图像所对应的字符串与车辆识别码的参考字符串进行比对。

s842、根据比对的结果,记录车辆识别码的识别结果。

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

在一个实施例中,本申请提供一种车辆识别码的识别方法,该方法包括:获取待识别车辆识别码区域图像;将所述待识别车辆识别码区域图像输入上述任一实施例训练得到的车辆识别码的识别模型进行识别,并输出所述待识别车辆识别码区域图像的识别结果。

在一个实施例中,本申请提供一种车辆识别码识别模型的训练装置,如图9所示,训练装置900包括获取模块910、数据扩充模块920、样本集生成模块930和模型训练模块940。其中:

获取模块910,用于获取多个车辆识别码区域图像,并标注各个车辆识别码区域图像中各个字符的位置和类别;

数据扩充模块920,用于对标注后的各个车辆识别码区域图像进行数据扩充操作,生成各个车辆识别码区域图像所对应的扩充图像,并确定各个扩充图像中各个字符的位置和类别;

样本集生成模块930,用于根据各个车辆识别码区域图像以及各个扩充图像,生成车辆识别码区域图像的样本集;

模型训练模块940,用于根据车辆识别码区域图像的样本集、各个车辆识别码区域图像中各个字符的位置和类别、各个扩充图像中各个字符的位置和类别,训练车辆识别码识别模型。

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

在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种车辆识别码的识别模型的训练方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

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

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中的方法步骤。

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

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

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

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

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1