首页> 中国专利> 识别字符和获取字符图像特征提取模型的方法和装置

识别字符和获取字符图像特征提取模型的方法和装置

摘要

本公开提出一种识别字符和获取字符图像特征提取模型的方法和装置,涉及计算机领域。其中识别字符的方法包括:将标准字符图像输入所述特征提取模型,输出标准字符的图像特征,将标准字符以及相应的图像特征添加到字符特征库,以构建字符特征库,其中,特征提取模型是通过训练卷积神经网络并删除训练完成的卷积神经网络的输出层得到的;将待识别的字符图像输入所述特征提取模型,输出所述待识别的字符图像的特征;通过比对所述待识别的字符图像的特征与字符特征库中的每个标准字符的图像特征,以识别所述待识别的字符图像中的字符,可以适用于字符种类较多情况下的字符识别。

著录项

说明书

技术领域

本公开涉及计算机领域,特别涉及一种识别字符的方法和装置,以及获取字符图像特征提取模型的方法和装置。

背景技术

光学字符识别(Optical Character Recognition,OCR)技术是利用计算机视觉技术将图像中的文字、符号等字符提取转换为人和计算机可以理解的文本。

在一些相关技术中,利用图像分类模型对字符图像进行分类,并将字符图像中的字符识别为其类别对应的字符。

发明人发现,利用图像分类模型识别字符图像中的字符,在字符种类较少的情况下,例如英文字符的识别,图像分类模型的体积和全连接层神经元的数量尚可以接受,但是,在字符种类较多的情况下,例如中文字符的识别,图像分类模型的体积和全连接层神经元的数量非常巨大,造成识别效率和识别效果急剧下降。

发明内容

本公开实施例提出一种可以适用于字符种类较多情况下的字符识别方案。

本公开一些实施例提出一种识别字符的方法,包括:

将标准字符图像输入所述特征提取模型,输出标准字符的图像特征,将标准字符以及相应的图像特征添加到字符特征库,以构建字符特征库,其中,所述特征提取模型是通过训练卷积神经网络并删除训练完成的卷积神经网络的输出层得到的;

将待识别的字符图像输入所述特征提取模型,输出所述待识别的字符图像的特征;

通过比对所述待识别的字符图像的特征与字符特征库中的每个标准字符的图像特征,以识别所述待识别的字符图像中的字符。

在一些实施例中,所述构建字符特征库包括:将每个标准字符的多种字体的字符图像分别输入所述特征提取模型,分别输出每个标准字符的多种字体的图像特征,将标准字符以及相应的多种字体的图像特征添加到字符特征库。

在一些实施例中,所述构建字符特征库包括:将每个标准字符的具有第一前景背景颜色的第一图像和具有第二前景背景颜色的第二图像分别输入所述特征提取模型,分别输出每个标准字符的第一图像的图像特征和第二图像的图像特征,将标准字符以及相应的第一图像的图像特征和第二图像的图像特征添加到字符特征库;其中,所述第二前景背景颜色通过对所述第一前景背景颜色中的前景颜色和背景颜色进行反色处理得到。

在一些实施例中,还包括:将新字符的字符图像输入字符图像特征提取模型,输出新字符的图像特征;将新字符以及相应的图像特征添加到字符特征库中,以扩展字符特征库。

在一些实施例中,所述字符特征库包括多个标准字符以及每个标准字符的多种图像相应的多个图像特征;识别所述待识别的字符图像中的字符包括:计算所述待识别的字符图像的特征与字符特征库中的每个标准字符的图像特征之间的距离;将字符特征库中的距离最小的多个字符比较结果作为多个候选字符;判断多个候选字符是否为同一字符;如果多个候选字符是同一字符,将所述同一字符作为所述待识别的字符图像中的字符。

在一些实施例中,如果多个候选字符是不同字符,计算所述待识别的字符图像的特征与字符特征库中的每个候选字符的所有图像特征之间的距离均值;将距离均值最小的候选字符作为所述待识别的字符图像中的字符。

本公开一些实施例提出一种获取字符图像特征提取模型的方法,包括:

将用于训练的多个字符图像以及标注的每个字符图像相应的字符输入卷积神经网络,输出识别的每个字符图像相应的字符,其中,卷积神经网络包括输入层、卷积主干网络、全连接层和输出层;

根据标注的每个字符图像相应的字符和识别的每个字符图像相应的字符所确定的损失,迭代地更新卷积神经网络的参数,直至达到预设的训练终止条件,得到训练完成的卷积神经网络;

将训练完成的卷积神经网络的输出层删除,作为字符图像特征提取模型。

在一些实施例中,确定损失所用到的损失函数为:三元组损失函数Triplet loss或者中心损失函数center loss。

在一些实施例中,所述卷积主干网络为:ResNet,MobileNet,或FaceNet。

本公开一些实施例提出一种识别字符的装置,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行任一个实施例所述识别字符的方法。

本公开一些实施例提出一种获取字符图像特征提取模型的装置,包括:存储器;以及耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行任一个实施例所述获取字符图像特征提取模型的方法。

本公开一些实施例提出一种非瞬时性计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现任一个实施例所述识别字符的方法或者任一个实施例所述获取字符图像特征提取模型的方法。

附图说明

下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍。根据下面参照附图的详细描述,可以更加清楚地理解本公开。

显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1示出本公开一些实施例的获取字符图像特征提取模型的方法的流程示意图。

图2示出本公开一些实施例的卷积神经网络的结构示意图。

图3示出本公开一些实施例的构建和更新字符特征库的方法的流程示意图。

图4示出本公开一些实施例的识别字符的方法的流程示意图。

图5示出本公开一些实施例的识别字符的装置的示意图。

图6示出本公开一些实施例的获取字符图像特征提取模型的装置的示意图。

具体实施方式

下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。

除非特别说明,否则,本公开中的“第一”“第二”等描述用来区分不同的对象,并不用来表示大小或时序等含义。

图1示出本公开一些实施例的获取字符图像特征提取模型的方法的流程示意图。

如图1所示,该实施例的方法包括:

在步骤110,将用于训练的多个字符图像以及标注的每个字符图像相应的字符输入卷积神经网络(Convolutional Neural Networks,CNN),输出识别的每个字符图像相应的字符。

其中,字符包括中文字符,还可以包括英文字符,以分别训练用于中文字符识别或英文字符识别的字符图像特征提取模型。用于训练的每个字符图像均是单个字符的图像。

其中,用于训练的多个字符图像包括形状相似字符的图像。形状相似字符例如中文字符中的“大”和“太”,或者英文字母“l”和数字“1”等。从而,增强对形状相似字符的识别能力。

如图2所示,卷积神经网络包括输入层、卷积主干网络、全连接层和输出层。卷积主干网络包括卷积层,还可以包括池化层。卷积主干网络例如为:ResNet,MobileNet,或FaceNet等图像分类网络,但不限于所举示例。

卷积神经网络每个层的功能和实现可以参见相关技术,下面简单说明。

输入层可以处理多维数据,常见地,一维卷积神经网络的输入层接收一维或二维数组,其中一维数组通常为时间或频谱采样;二维数组可能包含多个通道;二维卷积神经网络的输入层接收二维或三维数组;三维卷积神经网络的输入层接收四维数组。在计算机视觉应用中,可以采用三维输入数据,即图像平面上的二维像素点和RGB通道。

卷积层(convolutional layer)的功能是对输入数据进行特征提取,其内部包含多个卷积核,组成卷积核的每个元素都对应一个权重系数和一个偏差量(bias vector),类似于一个前馈神经网络的神经元(neuron)。卷积层内每个神经元都与前一层中位置接近的区域的多个神经元相连,区域的大小取决于卷积核的大小。卷积层参数包括卷积核大小、步长和填充,三者共同决定了卷积层输出特征图的尺寸,是卷积神经网络的超参数。其中卷积核大小可以指定为小于输入图像尺寸的任意值,卷积核越大,可提取的输入特征越复杂。卷积步长定义了卷积核相邻两次扫过特征图时位置的距离,卷积步长为1时,卷积核会逐个扫过特征图的元素,步长为n时会在下一次扫描跳过n-1个像素。由卷积核的交叉相关计算可知,随着卷积层的堆叠,特征图的尺寸会逐步减小,例如16×16的输入图像在经过单位步长、无填充的5×5的卷积核后,会输出12×12的特征图。为此,填充是在特征图通过卷积核之前人为增大其尺寸以抵消计算中尺寸收缩影响的方法。常见的填充方法为按0填充和重复边界值填充(replication padding)

池化层(pooling layer)用来对卷积层输出的特征图进行特征选择和信息过滤。池化层包含预设定的池化函数,其功能是将特征图中单个点的结果替换为其相邻区域的特征图统计量。池化层选取池化区域与卷积核扫描特征图步骤相同,由池化大小、步长和填充控制

全连接层(fully-connected layer)等价于传统前馈神经网络中的隐含层。特征图在全连接层中会失去空间拓扑结构,被展开为向量并通过激励函数。卷积神经网络中的卷积层和池化层能够对输入数据进行特征提取,全连接层的作用则是对提取的特征进行非线性组合以得到输出。

输出层的上游通常是全连接层,因此其结构和工作原理与传统前馈神经网络中的输出层相同。对于图像分类问题,输出层使用逻辑函数或归一化指数函数(softmaxfunction)输出分类标签。在图像语义分割中,输出层直接输出每个像素的分类结果。

在步骤120,根据标注的每个字符图像相应的字符和识别的每个字符图像相应的字符所确定的损失,迭代地更新卷积神经网络的参数,直至达到预设的训练终止条件,得到训练完成的卷积神经网络。

其中,确定损失所用到的损失函数是一个与表示标注的字符图像相应的字符的变量和表示识别的字符图像相应的字符的变量相关的函数。在一次迭代中,将本次迭代所用的所有训练样本的标注的字符图像相应的字符和识别的字符图像相应的字符输入损失函数,就可以得到本次迭代的损失。损失函数例如为:三元组损失(Triplet loss)函数或者中心损失(center loss)函数,但不限于所举示例。

其中,训练终止条件例如为达到预设的迭代次数,或者,损失小于设定的阈值,但不限于所举示例。

其中,训练中所更新的卷积神经网络的参数例如包括前述提及的卷积层、池化层、全连接层的参数。

在步骤130,将训练完成的卷积神经网络的输出层去掉,作为字符图像特征提取模型。

即,字符图像特征提取模型包括输入层、卷积主干网络、以及全连接层。

通过上述方法,获得字符图像特征提取模型。并且,字符图像特征提取模型(如去掉输出层的卷积神经网络)相对于图像分类模型(如卷积神经网络)来说,体积更小。以训练识别GB2312包含的7478个中文字符集为例,假设全连接层的输出特征维度为1024,去掉输出层后可以降低模型大小约(1024*7478*4)/(1024*1024)=29.2MB,其中,4表示浮点型所占用的字节数。

图3示出本公开一些实施例的构建和更新字符特征库的方法的流程示意图。

如图3所示,该实施例的方法包括:

在步骤310,将标准字符图像输入特征提取模型,输出标准字符的图像特征,将标准字符以及相应的图像特征添加到字符特征库,以构建字符特征库。

其中,将标准字符图像的一个或多个图像输入特征提取模型,输出标准字符的一个或多个图像特征,将标准字符以及相应的一个或多个图像特征添加到字符特征库,以构建字符特征库。

例如,假设有1000个标准字符,每个标准字符选取3张字符图像的图像特征,则字符特征库中保存1000*3=3000条字符的图像特征。

当字符特征库中的一个标准字符有多个字符图像相应的图像特征时,有利于提高该字符识别的准确率。

在一些实施例中,将每个标准字符的多种字体的字符图像分别输入所述特征提取模型,分别输出每个标准字符的多种字体的图像特征,将标准字符以及相应的多种字体的图像特征添加到字符特征库。从而,能够识别不同字体的字符,提高字符识别的泛化能力。

在一些实施例中,将每个标准字符的具有第一前景背景颜色的第一图像和具有第二前景背景颜色的第二图像分别输入所述特征提取模型,分别输出每个标准字符的第一图像的图像特征和第二图像的图像特征,将标准字符以及相应的第一图像的图像特征和第二图像的图像特征添加到字符特征库。其中,所述第二前景背景颜色通过对所述第一前景背景颜色中的前景颜色和背景颜色进行反色处理得到。例如,字符特征库中保存每个标准字符的具有黑字白底的第一图像的图像特征和具有白字黑底的第二图像的图像特征。从而能够识别具有不同深浅的前景/背景颜色的字符,提高字符识别的泛化能力。

在步骤320,将新字符的字符图像输入字符图像特征提取模型,输出新字符的图像特征,将新字符以及相应的图像特征添加到字符特征库中,以扩展字符特征库。

从而,当有新字符时,不需要重新训练模型,利用用来的字符图像特征提取模型就可以将新字符扩展到字符特征库。

图4示出本公开一些实施例的识别字符的方法的流程示意图。

如图4所示,该实施例的方法包括:

在步骤410,将待识别的字符图像输入字符图像特征提取模型,输出待识别的字符图像的特征。

在步骤420,通过比对待识别的字符图像的特征与字符特征库中的每个标准字符的图像特征,以识别待识别的字符图像中的字符。

例如,计算待识别的字符图像的特征与字符特征库中的每个字符的图像特征之间的距离,如cosine距离,将待识别的字符图像中的字符识别为最小距离相应的字符特征库中的字符。

又例如,计算所述待识别的字符图像的特征与字符特征库中的每个标准字符的图像特征之间的距离;将字符特征库中的距离最小的多个字符比较结果作为多个候选字符;判断多个候选字符是否为同一字符;如果多个候选字符是同一字符,将所述同一字符作为所述待识别的字符图像中的字符;如果多个候选字符是不同字符,计算所述待识别的字符图像的特征与字符特征库中的每个候选字符的所有图像特征之间的距离均值,将距离均值最小的候选字符作为所述待识别的字符图像中的字符。从而,提高字符识别的准确性。

通过字符图像特征比对的方法,识别字符图像中的字符,可以适用于字符种类较多情况下的字符识别方案,例如,识别中文字符。在字符种类较多情况下,也能保证一定的识别效率和识别效果,不会如基于图像分类的字符识别技术一样,在图像分类模型的体积和全连接层神经元的数量非常巨大时,识别效率和识别效果急剧下降。

图5示出本公开一些实施例的识别字符的装置的示意图。

如图5所示,该实施例的识别字符的装置500包括:存储器510;以及耦接至存储器的处理器520,处理器520被配置为基于存储在存储器中的指令,执行任一个实施例的识别字符的方法。

例如,将标准字符图像输入所述特征提取模型,输出标准字符的图像特征,将标准字符以及相应的图像特征添加到字符特征库,以构建字符特征库;将待识别的字符图像输入所述特征提取模型,输出所述待识别的字符图像的特征;通过比对所述待识别的字符图像的特征与字符特征库中的每个标准字符的图像特征,以识别所述待识别的字符图像中的字符。

其中,存储器510例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。

装置500还可以包括输入输出接口530、网络接口540、存储接口550等。这些接口530,540,550以及存储器510和处理器520之间例如可以通过总线560连接。其中,输入输出接口530为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口540为各种联网设备提供连接接口。存储接口550为SD卡、U盘等外置存储设备提供连接接口。

图6示出本公开一些实施例的获取字符图像特征提取模型的装置的示意图。

如图6所示,该实施例的获取字符图像特征提取模型的装置600包括:存储器610;以及耦接至存储器的处理器620,处理器620被配置为基于存储在存储器中的指令,执行任一个实施例的获取字符图像特征提取模型的方法。

例如,通过训练卷积神经网络并删除训练完成的卷积神经网络的输出层,以获得字符图像的特征提取模型。具体来说,将用于训练的多个字符图像以及标注的每个字符图像相应的字符输入卷积神经网络,输出识别的每个字符图像相应的字符;根据标注的每个字符图像相应的字符和识别的每个字符图像相应的字符所确定的损失,迭代地更新卷积神经网络的参数,直至达到预设的训练终止条件,得到训练完成的卷积神经网络;将训练完成的卷积神经网络的输出层去掉,作为字符图像特征提取模型。

其中,存储器610例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。

装置600还可以包括输入输出接口630、网络接口640、存储接口650等。这些接口630,640,650以及存储器610和处理器620之间例如可以通过总线660连接。其中,输入输出接口630为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口640为各种联网设备提供连接接口。存储接口650为SD卡、U盘等外置存储设备提供连接接口。

识别字符的装置500与获取字符图像特征提取模型的装置600可以部署在一台设备上,也可以分别部署在不同的设备上。部署装置500,600的设备例如为计算机。

本公开一些实施例提出一种非瞬时性计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现任一个实施例识别字符的方法或者任一个实施例获取字符图像特征提取模型的方法。

本领域内的技术人员应当明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机程序代码的非瞬时性计算机可读存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解为可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本公开的较佳实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号