文本图像处理方法、装置、电子设备及可读存储介质转让专利
申请号 : CN202110951839.3
文献号 : CN113420763B
文献日 : 2021-11-05
发明人 : 秦勇
申请人 : 北京世纪好未来教育科技有限公司
摘要 :
权利要求 :
1.一种文本图像处理方法,其特征在于,所述方法包括:获取初始的待识别文本图像;其中,所述初始的待识别文本图像包括待检测字符图像和可辨识的字符图像,所述待检测字符图像包括不可辨识的字符图像;
根据所述不可辨识的字符图像和所述可辨识的字符图像,检测所述待检测字符图像中字符的位置;
对所述待检测字符图像进行预测得到预测字符图像;
使用所述预测字符图像替换所述待检测字符图像中字符的位置,得到替换的待识别文本图像;
对所述替换的待识别文本图像进行文本识别;
所述对所述待检测字符图像进行预测得到预测字符图像;使用所述预测字符图像替换所述待检测字符图像 中字符的位置,得到替换的待识别文本图像包括:将所述初始的待识别文本图像中的待检测字符图像打上掩膜;
将所述掩膜后的待识别文本图像输入至图像预测模型,由所述图像预测模型输出所述替换后的待识别文本图像;
所述图像预测模型的训练方法包括:获取文本图像样本;
随机选取所述文本图像样本中的字符图像,得到随机字符图像;
将所述随机字符图像进行掩膜处理,得到掩膜处理后的文本图像样本;
获取第二训练样本;其中,所述第二训练样本包括所述掩膜处理后的文本图像样本和所述文本图像样本;
根据所述第二训练样本对初始的图像预测模型进行训练,得到所述图像预测模型;其中,所述初始的图像预测模型的输入为所述掩膜处理后的文本图像样本,输出为预测的文本图像,标签为所述文本图像样本。
2.根据权利要求1所述的文本图像处理方法,其特征在于,检测所述待检测字符图像中字符的位置包括:
将所述初始的待识别文本图像输入至目标检测模型,通过所述目标检测模型得到所述待检测字符图像中字符的位置;
其中,所述目标检测模型的输出为两个通道的特征图,其中一个通道表示字符中心点得分图,另一个通道表示字符框的最小外接圆半径。
3.根据权利要求2所述的文本图像处理方法,其特征在于,所述目标检测模型的训练方法包括:
获取第一训练样本;其中,所述第一训练样本包括多个字符图像样本和所述多个字符图像样本的字符位置;
获取初始的目标检测模型;
根据所述第一训练样本对所述初始的目标检测模型进行训练,得到所述目标检测模型;其中,所述初始的目标检测模型的输入为多个字符图像样本,输出为所述多个字符图像样本的预测字符位置,标签为所述多个字符图像样本的字符位置。
4.根据权利要求3所述的文本图像处理方法,其特征在于,获取第一训练样本包括:获取多个待识别文本图像样本;其中,所述多个待识别文本图像样本包括多个可辨识的字符图像样本和/或多个不可辨识的字符图像样本;根据所述多个待识别文本图像样本获取所述第一训练样本。
5.一种文本图像处理装置,其特征在于,包括:获取模块,用于获取初始的待识别文本图像;其中,所述初始的待识别文本图像包括待检测字符图像和可辨识的字符图像,所述待检测字符图像包括不可辨识的字符图像;
检测模块,用于根据所述不可辨识的字符图像和所述可辨识的字符图像,检测所述待检测字符图像中字符的位置;
预测模块,用于对所述待检测字符图像进行预测得到预测字符图像;
替换模块,用于使用所述预测字符图像替换所述待检测字符图像中字符的位置,得到替换的待识别文本图像;
文本识别模块,用于对所述替换的待识别文本图像进行文本识别;
所述预测模块还用于将所述初始的待识别文本图像中的待检测字符图像打上掩膜;
所述替换模块还用于将所述掩膜后的待识别文本图像输入至图像预测模型,由所述图像预测模型输出所述替换后的待识别文本图像;
所述装置还包括第二训练模块,所述第二训练模块包括:第三获取单元,用于获取文本图像样本;
选取单元,用于随机选取所述文本图像样本中的字符图像,得到随机字符图像;
掩膜单元,用于将所述随机字符图像进行掩膜处理,得到掩膜处理后的文本图像样本;
第四获取单元,用于获取第二训练样本;其中,所述第二训练样本包括所述掩膜处理后的文本图像样本和所述文本图像样本;
第二训练单元,用于根据所述第二训练样本对初始的图像预测模型进行训练,得到所述图像预测模型;其中,所述初始的图像预测模型的输入为所述掩膜处理后的文本图像样本,输出为预测的文本图像,标签为所述文本图像样本。
6.根据权利要求5所述的文本图像处理装置,其特征在于,所述检测模块还用于将所述初始的待识别文本图像输入至目标检测模型,通过所述目标检测模型得到所述待检测字符图像中字符的位置;
其中,所述目标检测模型的输出为两个通道的特征图,其中一个通道表示字符中心点得分图,另一个通道表示字符框的最小外接圆半径。
7.一种电子设备,其特征在于,包括:处理器;以及
存储程序的存储器,
其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1‑4中任一项所述的方法。
8.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行根据权利要求1‑4中任一项所述的方法。
说明书 :
文本图像处理方法、装置、电子设备及可读存储介质
技术领域
背景技术
深度学习技术的兴起,大幅推动了文本检测与识别技术的发展。文本检测与识别技术中,自
然场景文字识别有着图片背景复杂、光照因素变化、字符串长度不固定等问题,因此识别难
度较大。针对自然场景文字识别存在的问题,目前有两种解决思路,一种是基于自底向上的
策略,另一种是基于整体分析的策略。其中,自底向上的策略标注成本较高,整体分析的策
略可能会导致漏识别或多识别的问题。
理方法是针对性的加入相关数据并调整相应的权重训练以期解决问题,但效果往往不佳。
发明内容
像处理方法。
附图说明
具体实施方式
里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的
是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
开的范围在此方面不受限制。
“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定
义将在下文描述中给出。需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的
装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者
相互依存关系。
本识别是将带文本行的图像转录成字符串。文本的精准定位和准确识别十分重要,相较于
通用目标检测和识别,文字具有多方向、不规则形状、极端长宽比、字体、颜色、背景多样等
特点,因此在通用目标检测和识别上较为成功的算法无法直接迁移到文字检测中。近年来
随着深度学习的兴起,对文本检测和识别的研究也成为了一大热点,出现了大量专用于文
本检测和识别的方法,且取得了不错的效果。
一大困难,由于文字由数量不固定的字母组成,因此,自然场景文字识别需要从图片中识别
长度不固定的序列。目前由两种解决思路,一种是基于自底向上的策略,将识别问题拆分为
字符检测、字符识别和字符组合,逐个解决,这种方法虽然有效,但是需要字符级别的标注,
即每个字符在输入图像上的位置、信息都需要标注,需要耗费大量人工。另一种是整体分析
的策略,即序列到序列的方法,先将图像编码,然后进行序列解码直接得出整个字符串,此
方法虽然标注简单,只需转录字符串即可,但是可能存在多识别字符或漏识别字符的情况。
常会出现划痕、背透、涂改、反光等问题影响识别效果。针对这些问题,常规的处理有两种方
案,一是通过增加这些有问题的数据,进行更多轮次的迭代和训练,二是通过修改网络模
型,方法一的问题是数据收集难度大,成本高,方法二的问题是修改网络模型需要有很强的
针对性,但是由于目前无法对网络进行很好的解释,所以很难进行针对性的处理。因此常规
的处理方法效果往往不佳。
的示例系统的示意图,该文本识别方式可以由终端、服务器和/或其他具备处理能力的设备
完成。本公开实施例提供的方法可以由上述任一设备完成,也可以由多个设备共同完成,例
如,终端可以对获取初始待识别文本图像,将待识别文本图像发送给服务器,进而服务器可
以对每个图像进行文本识别处理,将识别结果返回给终端,本公开对此不作限定。
可辨识的字符图像可以是图像中的字符出现了问题导致常规的文本识别方法难以对该位
置的图像进行准确的文本识别,示例性地,本公开中字符所在位置出现的问题可以是划痕、
涂改、背透、反光、光线不足、阴影、模糊等。
数据分布规律。示例性地,初始的待识别文本图像可以来自教育场景中学生的作业。
照相设备对学生的作业进行拍摄,并对拍摄的图片进行上传。本实施例不对获取初始的待
识别文本图像的方式进行限定。
个通道表示字符中心点得分图,另一个通道表示字符框的最小外接圆半径。
字符图像样本的字符位置,获取初始的目标检测模型,根据第一训练样本对初始的目标检
测模型进行训练,得到上述目标检测模型,其中,初始的目标检测模型的输入为多个字符图
像样本,输出为多个字符图像样本的预测字符位置,标签为多个字符图像样本的字符位置。
的字符图像样本,根据多个待识别文本图像样本获取所述第一训练样本。
练好的CenterNet模型检测待检测字符图像的位置、可辨识的字符图像的位置并非用于限
制本实施例,根据实际需要而采用其他检测待检测字符图像的位置的方式亦在本实施例的
保护范围之内。
输出通道数量为N+2+2。CenterNet模型只预测物体的中心点,为每种类别输出一张得分图,
每个像素点的值在0到1之间,表示这个点是某类物体中心的概率,因此会有N张得分图,因
为在预测的过程中,并不能保证预测到的中心点就是真实的中心点,实际中往往会发生偏
移,因此还会用两个通道来预测中心点的偏移量,其中一个是x轴偏移量,一个是y轴偏移
量,除此之外,剩下的两个通道用来预测中心点距离矩形框左边框和上边框的距离。实际的
处理为,通过设定阈值在得分图找到物体的可能中心点,然后根据中心点对应的xy偏移量
对中心点进行校正,然后通过中心点并结合预测到的宽高直接得到矩形框。
用一个坐标框将每个字符标注出来),得到两个字符检测检测数据集,正常图像的字符的位
置作为检测数据集一,有问题的图像的字符的位置作为检测数据集二。
作。
block块输出的特征映射大小为原图的1/32。每个卷积块输出的特征映射数量都为128,将4
组特征映射全部通过插值的方式将大小变为原图的1/4并串联,得到一组通道数量为512的
特征映射。在这组新的特征映射上做两次等宽卷积操作,输出一个2通道、大小为原图1/4的
特征图。其中,两次等宽卷积保持输入输出大小一致。
待识别文本图像中没有问题的字符图像全部通过该CenterNet模型,得到每张图像上每个
字符的位置。
像。
后的文本图像样本,获取第二训练样本,其中,该第二训练样本包括掩膜处理后的文本图像
样本和该文本图像样本,根据第二训练样本对初始的图像预测模型进行训练,得到上述图
像预测模型,其中,上述初始的图像预测模型的输入为掩膜处理后的文本图像样本,输出为
预测的文本图像,标签为上述文本图像样本。本实施例提供的图像预测模型的训练方法,不
需要收集大量的包括不可辨识的字符的文本图像并进行人工标注。相比于对划痕、涂改、背
透、反光等每一种问题都收集大量的文本图像并进行标注,将标注后的样本图像送入图像
预测模型进行训练,本实施例提供的方法可以通过相应的程序和模型完成训练样本的收
集,并将划痕、涂改、背透、反光等影响文本识别的问题统一为一类问题进行训练,降低了图
像预测模型的训练成本并提高了训练效率。
辨识的字符图像的方式并非用于限制本实施例,根据实际需要采用其他方式亦在本实施例
的保护范围之内。其中,VAE是一种重要的生成式模型,由编码器和解码器两部分组成,通常
以对数似然的下确界作为优化目标,因此VAE模型的损失函数一般由重构损失和交叉熵损
失两部分组成;VAE将输入通过编码器进行编码,然后将编码输入解码器,用于还原输入的
图像,VAE模型的训练更稳定,而且速度更快。具体地,可以构建一个编码器为8层卷积、解码
器为8层反卷积且采用类似U‑net跨连结构的自编码器模型,它的输入为一个正常的待识别
文本图像,其中任意一个字随机被打上了掩膜(即将那个字所在位置的像素值全部改为0或
255),在经过编码器后,将掩膜后字符的位置,也加入到编码器的输出,然后输出为掩膜后
的字符对应的字符图像,在训练一个阶段后,随机为不超过15%的字打上掩膜,然后多次经
过编码器,得到多个对应的字符输出图像,训练结束后,得到待识别文本图像的“语言”模
型。语言模型的作用是判断一句话是不是像话,比如说“你是谁”这句话像话的概率很高,但
是“哈脑人”这句话(可能不存在这么句话)像话的概率就很低,语言模型训练的过程就是遮
挡住一句话中的几个字,然后去预测这几个字大概率的样子,这里的语言模型是加“引号”
的,在该实施例中提出的模型大概是充当了自然语言处理中语言模型的这个功能。
卷积神经网络负责从带文字的图片中提取特征,循环神经网络负责用卷积神经网络提取的
特征进行序列预测,翻译层将循环神经网络得到的序列翻译为字母序列,目标函数选择“联
结时序分类”(Connectionist Temporal Classification,简称为CTC)损失函数;CRNN的一
大优点是尽管包含不同类型的网络结构,但是仍然能够被端到端的训练。
识别效果,难以获得准确的文本识别结果的问题,实现了更好、更具鲁棒性的实现文本识
别。
为原图的1/4,第二个为原图1/8,第三个为原图1/16,第四个为原图1/32,每个block块输出
的特征映射数量都为128,将4组特征映射全部通过插值的方式将其大小变为原图1/4大小
并串联,得到一组特征映射,其通道数量为512,然后在这组特征映射上做两次等宽卷积(保
持输入输出大小一致)操作,最终输出一个2通道大小为原图1/4的特征图,其第一个通道表
示字符中心点得分图(每个像素值在0‑1之间),第二个通道表示最小外接圆的半径值,这里
与CenterNet不同,相当于只预测每个文本字符的中心点位置和它对应的字符框的最小外
接圆半径,然后以focal loss作为损失函数,使用上述标注的检测数据集一进行训练,在训
练结束后,得到一个能预测字符位置的检测模型。相比于用字符的中心点及矩形的长宽对
字符位置进行标注,使用圆形进行标注在训练中不会出现宽高交换的情况,模型能够更快
速的收敛,并且只需要预测一个数值(半径),模型鲁棒性更强,用圆形进行标注在后续对字
符位置图像的处理中也更为方便。同时,相比于用包括两个参数的矩形框对字符的位置进
行标注,本实施例提供的用字符的外接圆标注字符位置的方法,避免了训练过程中,矩形框
长宽两参数发生交换,需要更多的样本对文本检测模型进行训练,用外接圆标注可以实现
更鲁棒的字符位置检测,并减少CenterNet模型的训练时间。
能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬
件,或者软件和硬件的组合的实现也是可能并被构想的。
输出为两个通道的特征图,其中一个通道表示字符中心点得分图,另一个通道表示字符框
的最小外接圆半径。
个字符图像样本和所述多个字符图像样本的字符位置;第二获取单元4602,用于获取初始
的目标检测模型;第一训练单元4603,用于根据所述第一训练样本对所述初始的目标检测
模型进行训练,得到所述目标检测模型;其中,所述初始的目标检测模型的输入为多个字符
图像样本,输出为所述多个字符图像样本的预测字符位置,标签为所述多个字符图像样本
的字符位置。
样本;根据所述多个待识别文本图像样本获取所述第一训练样本。
模型,由所述图像预测模型输出所述替换后的待识别文本图像。
述文本图像样本中的字符图像,得到随机字符图像;掩膜单元4703,用于将所述随机字符图
像进行掩膜处理,得到掩膜处理后的文本图像样本;第四获取单元4704,用于获取第二训练
样本;其中,所述第二训练样本包括所述掩膜处理后的文本图像样本和所述文本图像样本;
第二训练单元4705,用于根据所述第二训练样本对初始的图像预测模型进行训练,得到所
述图像预测模型;其中,所述初始的图像预测模型的输入为所述掩膜处理后的文本图像样
本,输出为预测的文本图像,标签为所述文本图像样本。
件。
程序,所述计算机程序在被所述至少一个处理器执行时用于使所述电子设备执行根据本公
开实施例的方法。
实施例的方法。
字电子的计算机设备,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀
片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装
置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所
示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述
的和/或者要求的本公开的实现。
来执行各种适当的动作和处理。在RAM 503中,还可存储设备500操作所需的各种程序和数
据。计算单元501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也
连接至总线504。
的设备,输入单元506可以接收输入的数字或字符信息,以及产生与电子设备的用户设置
和/或功能控制有关的键信号输入。输出单元507可以是能呈现信息的任何类型的设备,并
且可以包括但不限于显示器、扬声器、视频/音频输出终端、振动器和/或打印机。存储单元
504可以包括但不限于磁盘、光盘。通信单元509允许电子设备500通过诸如因特网的计算机
网络和/或各种电信网络与其他设备交换信息/数据,并且可以包括但不限于调制解调器、
网卡、红外通信设备、无线通信收发机和/或芯片组,例如蓝牙TM设备、WiFi设备、WiMax设
备、蜂窝通信设备和/或类似物。
智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及
任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理。
例如,在一些实施例中,上述文本识别方法可被实现为计算机软件程序,其被有形地包含于
机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由
ROM 502和/或通信单元509而被载入和/或安装到电子设备500上。在一些实施例中,计算单
元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行上述文本识别方
法。
理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的
功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件
包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电
子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合
适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计
算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM
或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD‑ROM)、光学储存设备、磁储存设备、或
上述内容的任何合适组合。
盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读
介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何
信号。
器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来
将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的
反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用
任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界
面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部
件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数
字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网
(LAN)、广域网(WAN)和互联网。
算机程序来产生客户端和服务器的关系。