模型训练、文本识别方法及装置、电子设备、存储介质转让专利

申请号 : CN202011120169.2

文献号 : CN112016315B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李盼盼秦勇

申请人 : 北京易真学思教育科技有限公司

摘要 :

本申请实施例提供一种模型训练方法及装置、文本识别方法及装置、电子设备、存储介质,应用于人工智能技术领域,模型训练方法包括:获取多个包含弯曲文本的第一样本图像及第一样本图像中的弯曲文本的文本信息;分别将第一样本图像输入图像矫正模型及文本识别模型,通过图像矫正模型对第一样本图像进行特征提取,获得第一图像特征;通过文本识别模型对第一样本图像进行特征提取,获得第二图像特征;使用预设的特征损失函数,根据第一图像特征和第二图像特征,确定特征损失值;在通过第一样本图像及第一样本图像中的文本信息对预先训练完成的文本识别模型进行训练时,基于特征损失值对文本识别模型进行更新。本申请可以提高文本识别的准确性。

权利要求 :

1.一种文本识别模型训练方法,其特征在于,包括:

获取多个包含弯曲文本的第一样本图像及所述第一样本图像中的弯曲文本的文本信息;

分别将所述第一样本图像输入预先训练完成的图像矫正模型及文本识别模型,其中,所述图像矫正模型用于将包含弯曲文本的图像矫正为包含非弯曲文本的图像,所述文本识别模型用于识别图像中的文本信息;

通过所述图像矫正模型对所述第一样本图像进行特征提取,获得第一图像特征;并且,通过所述文本识别模型对所述第一样本图像进行特征提取,获得第二图像特征;

使用预设的特征损失函数,根据所述第一图像特征和所述第二图像特征,确定特征损失值;

在通过所述第一样本图像及所述第一样本图像中的弯曲文本的文本信息对预先训练完成的所述文本识别模型进行训练时,基于所述特征损失值对所述文本识别模型进行更新。

2.根据权利要求1所述的方法,其特征在于,所述文本识别模型包括:卷积神经网络部分;

所述基于所述特征损失值对所述文本识别模型进行更新,包括:基于所述特征损失值对所述卷积神经网络部分进行更新。

3.根据权利要求2所述的方法,其特征在于,所述基于所述特征损失值对所述卷积神经网络部分进行更新,包括:将所述特征损失值作为所述卷积神经网络部分的第一损失值,并根据所述第一损失值对所述卷积神经网络部分进行更新;或将所述特征损失值和所述文本识别模型中的损失值之和,作为所述卷积神经网络部分的第二损失值,并根据所述第二损失值对所述卷积神经网络部分进行更新。

4.根据权利要求2所述的方法,其特征在于,所述文本识别模型还包括:循环神经网络部分和翻译层部分;所述循环神经网络部分用于对基于所述卷积神经网络部分提取的特征进行序列预测,得到序列特征;所述翻译层部分用于将所述序列特征翻译为字符序列;

所述基于所述特征损失值对所述文本识别模型进行更新,包括:基于所述文本识别模型中的损失值对所述循环神经网络部分和所述翻译层部分进行更新。

5.根据权利要求1所述的方法,其特征在于,所述使用预设的特征损失函数,根据所述第一图像特征和所述第二图像特征,确定特征损失值,包括:将所述第一图像特征和所述第二图像特征在相同的通道以及相同的像素点进行对应相减,得到多个损失值;

根据所述多个损失值,确定特征损失值。

6.根据权利要求5所述的方法,其特征在于,所述根据所述多个损失值,确定特征损失值,包括:将所述多个损失值的平均值,作为特征损失值。

7.根据权利要求1所述的方法,其特征在于,在将所述第一样本图像输入所述图像矫正模型之前,所述方法还包括:获取多个包含弯曲文本的第二样本图像及所述第二样本图像对应的第三样本图像,其中,所述第三样本图像中包含与所述第二样本图像中的弯曲文本对应的非弯曲文本;

通过预设矫正模型对所述第二样本图像进行矫正处理,得到预测图像;

根据所述预测图像和所述第二样本图像对应的第三样本图像,确定图像损失值;

基于所述图像损失值对所述预设矫正模型进行更新,以得到所述图像矫正模型。

8.根据权利要求1所述的方法,其特征在于,在将所述第一样本图像输入所述文本识别模型之前,所述方法还包括:获取多个包含非弯曲文本的第四样本图像及所述第四样本图像中包含的非弯曲文本的文本信息;

通过预设识别模型对所述第四样本图像中的文本进行识别,得到预测文本信息;

根据所述预测文本信息及所述第四样本图像中包含的非弯曲文本的文本信息,确定文本损失值;

基于所述文本损失值,对所述预设识别模型进行更新,以得到所述文本识别模型。

9.一种文本识别方法,其特征在于,包括:

获取待识别的文本图像;其中,所述文本图像包括:包含弯曲文本的图像;

通过文本识别模型对所述文本图像进行文本识别,得到文本信息;

其中,所述文本识别模型基于如权利要求1至8任一项所述的方法训练得到。

10.一种文本识别模型训练装置,其特征在于,包括:第一获取模块,用于获取多个包含弯曲文本的第一样本图像及所述第一样本图像中的弯曲文本的文本信息;

图像输入模块,用于分别将所述第一样本图像输入预先训练完成的图像矫正模型及文本识别模型,其中,所述图像矫正模型用于将包含弯曲文本的图像矫正为包含非弯曲文本的图像,所述文本识别模型用于识别图像中的文本信息;

特征提取模块,用于通过所述图像矫正模型对所述第一样本图像进行特征提取,获得第一图像特征;并且,通过所述文本识别模型对所述第一样本图像进行特征提取,获得第二图像特征;

特征损失值确定模块,用于使用预设的特征损失函数,根据所述第一图像特征和所述第二图像特征,确定特征损失值;

模型更新模块,用于在通过所述第一样本图像及所述第一样本图像中的弯曲文本的文本信息对预先训练完成的所述文本识别模型进行训练时,基于所述特征损失值对所述文本识别模型进行更新。

11.一种文本识别装置,其特征在于,包括:

待识别文本图像获取模块,用于获取待识别的文本图像;其中,所述文本图像包括:包含弯曲文本的图像;

文本识别模块,用于通过文本识别模型对所述文本图像进行文本识别,得到文本信息;

其中,所述文本识别模型基于如权利要求1至8任一项所述的方法训练得到。

12.一种电子设备,其特征在于,包括:处理器;以及被配置成存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器实现上述权利要求1至8中任一项所述的方法,或权利要求9所述的方法。

13.一种存储介质,其特征在于,所述存储介质存储有计算机可执行指令,所述计算机可执行指令在被执行时实现上述权利要求1至8中任一项所述的方法,或权利要求9所述的方法。

说明书 :

模型训练、文本识别方法及装置、电子设备、存储介质

技术领域

[0001] 本申请实施例涉及人工智能技术领域,尤其涉及一种模型训练、文本识别方法及装置、电子设备、存储介质。

背景技术

[0002] 自然场景文字识别是从包含文字的图像中识别出字符序列的过程,对于中文,一个汉字为一个字符;对于英文,一个字母为一个字符。在自然场景文字识别中,由于图像背景复杂、分辨率低下、字体多样、分布随意等,并且,文字由数量不固定的字符组成,需要从图像中识别长度不固定的序列,因此,自然场景文字识别是一个具有挑战性的任务。
[0003] 相关技术中,可以通过CRNN(Convolutional Recurrent Neural Networks,卷积循环神经网络)识别图像中的文本信息。由于比CRNN速度快的算法,精度比CRNN低,比CRNN精度高的算法,速度比CRNN低,因此,CRNN是一个性价比很高的算法。但是,针对包含弯曲文本的图像,文本识别的准确性较低。

发明内容

[0004] 有鉴于此,本申请实施例提供了一种文本识别模型训练方法、文本识别方法、文本识别模型训练装置、文本识别装置、电子设备及存储介质,用以克服现有技术中在对包含弯曲文本的图像进行文本识别时,准确性较低的缺陷。
[0005] 根据本申请实施例的第一方面,提供了一种文本识别模型训练方法,包括:
[0006] 获取多个包含弯曲文本的第一样本图像及所述第一样本图像中的弯曲文本的文本信息;
[0007] 分别将所述第一样本图像输入预先训练完成的图像矫正模型及文本识别模型,其中,所述图像矫正模型用于将包含弯曲文本的图像矫正为包含非弯曲文本的图像,所述文本识别模型用于识别图像中的文本信息;
[0008] 通过所述图像矫正模型对所述第一样本图像进行特征提取,获得第一图像特征;并且,通过所述文本识别模型对所述第一样本图像进行特征提取,获得第二图像特征;
[0009] 使用预设的特征损失函数,根据所述第一图像特征和所述第二图像特征,确定特征损失值;
[0010] 在通过所述第一样本图像及所述第一样本图像中的文本信息对预先训练完成的所述文本识别模型进行训练时,基于所述特征损失值对所述文本识别模型进行更新。
[0011] 根据本申请实施例的第二方面,提供了一种文本识别方法,包括:
[0012] 获取待识别的文本图像;其中,所述文本图像包括:包含弯曲文本的图像;
[0013] 通过文本识别模型对所述文本图像进行文本识别,得到文本信息;
[0014] 其中,所述文本识别模型基于如第一方面所述的文本识别模型训练方法训练得到。
[0015] 根据本申请实施例的第三方面,提供了一种文本识别模型训练装置,包括:
[0016] 第一获取模块,用于获取多个包含弯曲文本的第一样本图像及所述第一样本图像中的弯曲文本的文本信息;
[0017] 图像输入模块,用于分别将所述第一样本图像输入预先训练完成的图像矫正模型及文本识别模型,其中,所述图像矫正模型用于将包含弯曲文本的图像矫正为包含非弯曲文本的图像,所述文本识别模型用于识别图像中的文本信息;
[0018] 特征提取模块,用于通过所述图像矫正模型对所述第一样本图像进行特征提取,获得第一图像特征;并且,通过所述文本识别模型对所述第一样本图像进行特征提取,获得第二图像特征;
[0019] 特征损失值确定模块,用于使用预设的特征损失函数,根据所述第一图像特征和所述第二图像特征,确定特征损失值;
[0020] 模型更新模块,用于在通过所述第一样本图像及所述第一样本图像中的文本信息对预先训练完成的所述文本识别模型进行训练时,基于所述特征损失值对所述文本识别模型进行更新。
[0021] 根据本申请实施例的第四方面,提供了一种文本识别装置,包括:
[0022] 待识别文本图像获取模块,用于获取待识别的文本图像;其中,所述文本图像包括:包含弯曲文本的图像;
[0023] 文本识别模块,用于通过文本识别模型对所述文本图像进行文本识别,得到文本信息;
[0024] 其中,所述文本识别模型基于如第一方面所述的文本识别模型训练方法训练得到。
[0025] 根据本申请实施例的第五方面,提供了一种电子设备,包括:处理器;以及被配置成存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器实现上述第一方面所述的方法,或第二方面所述的方法。
[0026] 根据本申请实施例的第六方面,提供了一种存储介质,所述存储介质存储有计算机可执行指令,所述计算机可执行指令在被执行时实现上述第一方面所述的方法,或第二方面所述的方法。
[0027] 本申请实施例中,由于预先训练完成的图像矫正模型可以对包含弯曲文本的图像进行矫正,得到对应的包含非弯曲文本的图像,因此,图像矫正模型具有提取弯曲文本图像特征的能力。而预先训练完成的文本识别模型可以识别包含非弯曲文本的图像中的文本信息,因此,分别通过图像矫正模型和文本识别模型提取包含弯曲文本的图像中的特征,并构建特征损失函数,以通过图像矫正模型来引导文本识别模型学习到提取弯曲文本图像特征的能力。一方面,可以使文本识别模型能够识别包含弯曲文本的图像中的文本信息,从而提高文本识别模型识别图像中文本信息的准确性。另一方面,在对包含弯曲文本的图像进行识别时,不需要在文本识别模型中嵌入额外的矫正模块,因此,不会增加文本识别模型的网络复杂度,相应地,不会导致运算量的增加。

附图说明

[0028] 后文将参照附图以示例性而非限制性的方式详细描述本申请实施例的一些具体实施例。附图中相同的附图标记标示了相同或类似的部件或部分。本领域技术人员应该理解,这些附图未必是按比值绘制的。附图中:
[0029] 图1为相关技术中对包含弯曲文本的图像进行矫正的一种示意图;
[0030] 图2为本申请实施例中文本识别模型训练方法的一种流程图;
[0031] 图3为本申请实施例中文本识别模型训练方法的又一种流程图;
[0032] 图4为变分自编码器模型的一种结构示意图;
[0033] 图5为本申请实施例中构建特征损失函数的一种示意图;
[0034] 图6为本申请实施例中预先训练图像矫正模型的一种流程图;
[0035] 图7为本申请实施例中预先训练文本识别模型的一种流程图;
[0036] 图8为本申请实施例中文本识别的一种流程图;
[0037] 图9为本申请实施例中文本识别模型训练装置的一种结构示意图;
[0038] 图10为本申请实施例中文本识别装置的一种结构示意图;
[0039] 图11为本申请实施例中电子设备的一种结构示意图。

具体实施方式

[0040] 下面结合本发明实施例附图进一步说明本发明实施例具体实现。
[0041] 目前,自然场景文字识别技术有着广泛的应用场景。例如,通过自然场景文字识别技术可以识别快递单、识别身份证、识别银行卡、识别车牌、识别路牌、识别试卷等等。在自然场景文字识别技术中,由于文字由数量不固定的字符组成,因此,需要从图像中识别长度不固定的序列。
[0042] 相关技术中,可以基于自底向上的策略,将识别问题拆分为字符检测、字符识别和字符组合,逐个解决。还可以基于整体分析的策略,直接对整词整句进行分类的识别方法。上述方法虽然对于水平放置或竖直放置的文本字符串,具有较好的识别效果,但是对于包含弯曲文本的图像,由于其中包含较多的背景噪声,识别效果较差。
[0043] 针对上述问题,可以利用STN(空间变换网络)或TPN(薄板样条插值)算法,通过一个参数可学习或固定的嵌入模块,将输入的包含弯曲文本的图像进行几何变换,转换为正常的待识别图像,再对正常的待识别图像进行文本识别。参见图1,图1为相关技术中对包含弯曲文本的图像进行矫正的一种示意图,可以看出,原始图像中的文本“MOON”呈弯曲形状,矫正后的图像中的文本“MOON”呈直线形状。这样,在对矫正后的图像进行识别时可以取得比较好的效果,但是在图像中包含的弯曲文本的弯曲程度较为严重时,识别效果仍然较差。
[0044] 为了解决上述问题,本申请实施例提供了一种文本识别模型训练方法、文本识别模型训练装置、文本识别方法、文本识别装置、电子设备及存储介质,可以提高文本识别的准确性。
[0045] 如图2所示,图2为本申请实施例中文本识别模型训练方法的一种流程图,可以包括以下步骤:
[0046] 步骤S210,获取多个包含弯曲文本的第一样本图像及第一样本图像中的弯曲文本的文本信息。
[0047] 本申请实施例中,弯曲文本指的是文本的形状是弯曲的,并不是呈一条直线,例如,对于水平排列的文本,可以通过判断各个字符的纵坐标的差值来判断该文本是否为弯曲文本。具体的,在文本中各个字符的纵坐标逐渐增大或减小,并且相邻字符之间纵坐标的差值大于预设距离阈值的情况下,可以认为该文本为弯曲文本。参见图1,可以看出,原始图像中的文本“MOON”中的四个字符的纵坐标逐渐增大,“MOON”即为弯曲文本。
[0048] 其中,第一样本图像也就是包含弯曲文本的图像,第一样本图像和第一样本图像中包含的弯曲文本的文本信息构成一组样本数据。例如,如果将图1中的原始图像作为第一样本图像,那么“MOON”即为第一样本图像中的弯曲文本的文本信息。通过获取多组样本数据,以对下文的文本识别模型进行训练。
[0049] 步骤S220,分别将第一样本图像输入预先训练完成的图像矫正模型及文本识别模型。
[0050] 需要说明的是,图像矫正模型和文本识别模型均是预先训练完成的模型。其中,图像矫正模型用于将包含弯曲文本的图像矫正为包含非弯曲文本的图像,非弯曲文本指的是文本的形状不是弯曲的,而是呈一条直线。当然,本申请实施例中的非弯曲并不是绝对的非弯曲,例如,对于字符横向排列的文本信息,如果各个字符的纵坐标的差值小于预设距离阈值,也可以认为该文本是非弯曲文本。预设距离阈值可以根据图像中字符的大小进行设定,在此不做限定。
[0051] 而文本识别模型用于识别图像中的文本信息,并且,对于包含非弯曲文本的图像,文本识别模型具有较好的识别效果。然而,对于包含弯曲文本的图像,识别效果较差。
[0052] 步骤S230,通过图像矫正模型对第一样本图像进行特征提取,获得第一图像特征;并且,通过文本识别模型对第一样本图像进行特征提取,获得第二图像特征。
[0053] 本申请实施例中,对于包含弯曲文本的图像,由于图像矫正模型具有提取弯曲文本图像特征的能力,因此,图像矫正模型可以准确提取第一样本图像中弯曲文本的特征。而文本识别模型不具有提取弯曲文本图像特征的能力,因此,文本识别模型对第一样本图像进行特征提取得到的第二图像特征是不够准确的,相应地,进一步根据第二图像特征进行文本识别得到的文本信息也是不准确的。因此,可以通过图像矫正模型来引导文本识别模型学习到提取弯曲文本图像特征的能力。
[0054] 步骤S240,使用预设的特征损失函数,根据第一图像特征和第二图像特征,确定特征损失值。
[0055] 本申请实施例中,为了构建特征损失函数,在图像矫正模型和文本识别模型的网络结构中,对于特征提取网络部分,两者输出特征的维度可以是相同的。例如,对于任意包含弯曲文本的图像,如果将通过图像矫正模型进行特征提取之后得到的特征作为目标特征,将通过文本识别模型进行特征提取之后得到的特征作为实际特征,那么,目标特征和实际特征具有相同的维度,即目标特征和实际特征具有相同的通道数,并且,每个通道中,横坐标和纵坐标均具有相同的像素点数。这样,可以根据目标特征与实际特征建立特征损失函数。
[0056] 具体的,可以根据两者之间的差值建立特征损失函数。其中,特征损失函数的值即为特征损失值,在输入不同图像的情况下,得到的特征损失值也不同。
[0057] 在此基础上,对于第一样本图像,图像矫正模型提取到的第一图像特征,和文本识别模型提取到的第二图像特征可以具有相同的维度。并且,可以根据第一图像特征和第二图像特征确定特征损失值,该特征损失值用于表示第二图像特征和第一图像特征之间的偏差。可选地,可以将第一图像特征和第二图像特征在相同的通道以及相同的像素点进行对应相减,得到多个损失值;根据多个损失值,确定特征损失值。例如,可以直接将多个损失值的平均值,作为特征损失值。或者,还可以将多个损失值按照从大到小进行排序,选取前预设数量个损失值,并将所选取的预设数量个损失值的平均值作为特征损失值。或者,还可以直接将多个损失值中的最大值作为特征损失值等,本申请对此不做限定。
[0058] 举例而言,假设第一样本图像包含三个通道,每个通道包含M×N个像素,那么第一图像特征和第二图像特征均可以表示为3×M×N的矩阵,将两个矩阵对应元素相减,可以得到3×M×N个损失值,并将3×M×N个损失值的平均值作为特征损失值。
[0059] 步骤S250,在通过第一样本图像及第一样本图像中的文本信息对预先训练完成的文本识别模型进行训练时,基于特征损失值对文本识别模型进行更新。
[0060] 如前所述,第一样本图像和第一样本图像中的文本信息所构成的样本数据,可以用于对文本识别模型进行训练,在训练的过程中,文本识别模型自身包含一个损失值。通常情况下,可以直接根据该损失值对文本识别模型进行更新,而本申请实施例中,可以根据特征损失值对文本识别模型进行更新,这样,可以使文本识别模型具有提取弯曲文本图像特征的能力,从而可以使文本识别模型能够对包含弯曲文本的图像进行识别,以得到其中的文本信息。
[0061] 本申请实施例的文本识别模型训练方法,由于预先训练完成的图像矫正模型可以对包含弯曲文本的图像进行矫正,得到对应的包含非弯曲文本的图像,因此,图像矫正模型具有提取弯曲文本图像特征的能力。而预先训练完成的文本识别模型可以识别包含非弯曲文本的图像中的文本信息,因此,分别通过图像矫正模型和文本识别模型提取包含弯曲文本的图像中的特征,并构建特征损失函数,以通过图像矫正模型来引导文本识别模型学习到提取弯曲文本图像特征的能力。一方面,可以使文本识别模型能够识别包含弯曲文本的图像中的文本信息,从而提高文本识别模型识别图像中文本信息的准确性。另一方面,在对包含弯曲文本的图像进行识别时,不需要在文本识别模型中嵌入额外的矫正模块,因此,不会增加文本识别模型的网络复杂度,相应地,不会导致运算量的增加。
[0062] 如图3所示,图3为本申请实施例中文本识别模型训练方法的又一种流程图,可以包括以下步骤:
[0063] 步骤S310,获取多个包含弯曲文本的第一样本图像及第一样本图像中的弯曲文本的文本信息。
[0064] 需要说明的是,由于步骤S310与步骤S210相同,具体参见步骤S210中的描述即可,在此不再赘述。
[0065] 步骤S320,分别将第一样本图像输入预先训练完成的图像矫正模型及文本识别模型,其中,文本识别模型包括:卷积神经网络部分。
[0066] 本申请实施例中,图像矫正模型可以是任何包含“编码器-解码器”结构的模型,图像矫正模型可以将输入图像通过编码器进行编码,得到编码特征,然后将编码特征输入解码器,用于还原输入。可选地,图像矫正模型可以是VAE(变分自编码器)模型,VAE模型是一种重要的生成式模型,它由编码器和解码器两部分组成,通常以对数似然的下确界作为优化目标,因此VAE模型的损失函数一般由重构损失和交叉熵损失两部分组成。在多数情况下,VAE模型还原出的图像与原始图像极为相近,相比于其他生成式模型,VAE模型的训练更稳定,而且速度更快。
[0067] 与图像矫正模型中的编码器相对应,文本识别模型中可以通过卷积神经网络部分提取特征。可选地,文本识别模型还可以包括:循环神经网络部分和翻译层部分;循环神经网络部分用于对基于卷积神经网络部分提取的特征进行序列预测,得到序列特征;翻译层部分用于将序列特征翻译为字符序列。在此情况下,文本识别模型即为CRNN模型。当然,本申请实施例中文本识别模型除了包含卷积神经网络部分外,也可以包含其他网络部分,即文本识别模型不限于CRNN模型。
[0068] 步骤S330,通过图像矫正模型对第一样本图像进行特征提取,获得第一图像特征;并且,通过文本识别模型中的卷积神经网络部分对第一样本图像进行特征提取,获得第二图像特征。
[0069] 其中,VAE是一种生成内容可控且易于训练的生成器模型,在图像矫正模型为VAE模型时,可以方便地训练生成图像矫正模型。参见图4,图4为变分自编码器模型的一种结构示意图,VAE模型将输入图像转化成的编码特征可能是某种分布的参数,也可能是特征图等。因此,VAE模型从第一样本图像中提取到的第一图像特征可能是某种分布的参数,也可能是特征图等。
[0070] 而对于文本识别模型,可以通过卷积神经网络部分提取第一样本图像中的第二图像特征。由于图像矫正模型的编码器学到了如何从弯曲文本中提取到从正常文本中才能提取到的比较好的特征,因此,可以用该特征来引导卷积神经网络部分去学习如何从弯曲文本中提取从正常文本中才能提取到的比较好的特征。因此,图像矫正模型中编码器提取的特征与文本识别模型中卷积神经网络部分提取的特征可以具有相同的维度,即第二图像特征和第一图像特征可以具有相同的维度,例如,在第一图像特征为一组多通道特征映射时,第二图像特征也为一组多通道特征映射,第一图像特征和第二图像特征逐通道、逐像素点对应。
[0071] 步骤S340,使用预设的特征损失函数,根据第一图像特征和第二图像特征,确定特征损失值。
[0072] 本申请实施例中,如前所述,预设的特征损失函数可以根据图像矫正模型和文本识别模型构建。参见图5,图5为本申请实施例中构建特征损失函数的一种示意图,可以看出,对于输入的任意包含弯曲文本的图像,文本矫正模型中的编码器提取到的特征为目标特征,文本识别模型中的卷积神经网络部分提取到的特征为实际特征,可以根据目标特征和实际特征构建特征损失函数。例如,可以将目标特征和实际特征逐通道、逐像素点相减,然后将所有通道每个特征图上所有像素点的值相加并除以像素点总数,即可得到特征损失函数。需要说明的是,本申请实施例中特征损失函数的构建方法不限于此。
[0073] 在输入的图像为第一样本图像时,目标特征即为第一图像特征,实际特征即为第二图像特征,将第一图像特征和第二图像特征代入特征损失函数,即可得到特征损失值。对于不同的第一样本图像,其对应的特征损失值也不同。
[0074] 步骤S350,在通过第一样本图像及第一样本图像中的文本信息对预先训练完成的文本识别模型进行训练时,基于特征损失值对卷积神经网络部分进行更新。
[0075] 本申请实施例中,预先训练完成的文本识别模型可以识别包含非弯曲文本的图像中的文本信息,对于包含弯曲文本的图像,识别效果较差。因此,可以通过第一样本图像及第一样本图像中的文本信息对文本识别模型进行进一步训练。在文本识别模型使用反向传播算法更新参数时,可以基于特征损失值对卷积神经网络部分进行更新,以此来引导卷积神经网络部分学习到提取弯曲文本图像特征的能力。
[0076] 可以理解的是,由于文本识别模型是预先训练完成的模型,因此,在通过第一样本图像及第一样本图像中的文本信息对文本识别模型进一步训练时,文本识别模型中的损失值通常远远小于特征损失值,因此,可以直接将特征损失值作为卷积神经网络部分的第一损失值,并根据第一损失值对卷积神经网络部分进行更新。其中,文本识别模型中的损失函数,例如可以是CTC(Connectionist Temporal Classification,连结时序分类)损失函数等。
[0077] 在本申请的又一种实现方式中,还可以将特征损失值和文本识别模型中的损失值之和,作为卷积神经网络部分的第二损失值,并根据第二损失值对卷积神经网络部分进行更新。也就是,特征损失值和文本识别模型中的损失值共同参与卷积神经网络部分的更新。通过该方式训练得到的文本识别模型中的卷积神经网络部分将会更加准确,从而可以更准确地提取包含弯曲文本的图像中的特征,进而准确识别其中的文本信息。
[0078] 本申请实施例中,在通过第一样本图像及第一样本图像中的文本信息对文本识别模型进行训练时,可以只对卷积神经网络部分更新。或者,在对卷积神经网络部分更新的同时,还可以基于文本识别模型中的损失值对循环神经网络部分和翻译层部分进行更新,以进一步提高文本识别模型的准确性。
[0079] 其中,步骤S220或步骤S320中图像矫正模型的训练方法可参见图6,图6为本申请实施例中预先训练图像矫正模型的一种流程图,可以包括以下步骤:
[0080] 步骤S610,获取多个包含弯曲文本的第二样本图像及第二样本图像对应的第三样本图像,其中,第三样本图像中包含与第二样本图像中的弯曲文本对应的非弯曲文本。
[0081] 本申请实施例中,第二样本图像中包含有弯曲文本,第三样本图像中包含有非弯曲文本。第二样本图像和第三样本图像的背景相同,表达内容相同,即包含的文本信息相同。不同之处在于,第二样本图像中的文本信息是弯曲的,第三样本图像中的文本信息是非弯曲的。
[0082] 步骤S620,通过预设矫正模型对第二样本图像进行矫正处理,得到预测图像。
[0083] 需要说明的是,预设矫正模型是与图像矫正模型网络结构完全相同的模型,该预设矫正模型中网络参数的参数值是预先设置的初始值。
[0084] 步骤S630,根据预测图像和第二样本图像对应的第三样本图像,确定图像损失值。
[0085] 步骤S640,基于图像损失值对预设矫正模型进行更新,以得到图像矫正模型。
[0086] 本申请实施例中,预设矫正模型的编码器部分可以将包含弯曲文本的图像进行编码,而且解码器部分会根据编码特征来还原图像。同时以正常图像即第三样本图像作为监督信息进行引导,可以使得编码器部分从包含弯曲文本的第二样本图像上学到的特征不断贴近于从第三样本图像上学到的特征。即在训练过程中,通过对网络参数的参数值进行更新,使预测图像不断接近于对应的第三样本图像,从而最终得到图像矫正模型。
[0087] 其中,步骤S220或步骤S320中文本识别模型的训练方法可参见图7,图7为本申请实施例中预先训练文本识别模型的一种流程图,可以包括以下步骤:
[0088] 步骤S710,获取多个包含非弯曲文本的第四样本图像及第四样本图像中包含的非弯曲文本的文本信息。
[0089] 本申请实施例中,预先训练完成的文本识别模型用于识别包含非弯曲文本的图像,相应地,在训练时所使用的样本数据中的第四样本图像是包含非弯曲文本的图像,第四样本图像所对应的标签即为第四样本图像中包含的非弯曲文本的文本信息。
[0090] 步骤S720,通过预设识别模型对第四样本图像中的文本进行识别,得到预测文本信息。
[0091] 类似地,预设识别模型是与文本识别模型网络结构完全相同的模型,预设识别模型中网络参数的参数值也是预先设置的初始值。
[0092] 步骤S730,根据预测文本信息及第四样本图像中包含的非弯曲文本的文本信息,确定文本损失值。
[0093] 步骤S740,基于文本损失值,对预设识别模型进行更新,以得到文本识别模型。
[0094] 在训练过程中,可以通过梯度下降法,根据反向传播原理,不断计算文本损失值,并根据文本损失值更新网络参数值,其中,文本损失值可以用来估量预测值与真实值的不一致程度。在文本损失值达到预设条件时,例如,小于预设损失阈值等,训练结束,从而得到文本识别模型。其中,预设损失阈值可以根据实际应用进行设置,在此不做限定。
[0095] 本申请实施例的文本识别模型训练方法,由于预先训练完成的图像矫正模型可以对包含弯曲文本的图像进行矫正,得到包含非弯曲文本的图像,因此,图像矫正模型具有提取弯曲文本图像特征的能力。而预先训练完成的文本识别模型可以识别包含非弯曲文本的图像中的文本信息,因此,分别通过图像矫正模型中的编码器和文本识别模型中的卷积神经网络部分提取包含弯曲文本的图像中的特征,并构建特征损失值,以通过编码器来引导卷积神经网络部分学习到提取弯曲文本图像特征的能力。一方面,可以使文本识别模型能够识别包含弯曲文本的图像中的文本信息,从而提高文本识别模型识别图像中文本信息的准确性。另一方面,在对包含弯曲文本的图像进行识别时,不需要在文本识别模型中嵌入额外的矫正模块,因此,不会增加文本识别模型的网络复杂度,相应地,不会导致运算量的增加。
[0096] 本申请实施例还提供了一种文本识别方法,如图8所示,图8为本申请实施例中文本识别的一种流程图,可以包括以下步骤:
[0097] 步骤S810,获取待识别的文本图像;其中,文本图像包括:包含弯曲文本的图像。
[0098] 本公开实施例中,待识别的文本图像可以是包含弯曲文本的图像,也可以是包含非弯曲文本的图像。
[0099] 步骤S820,通过文本识别模型对文本图像进行文本识别,得到文本信息。
[0100] 其中,文本识别模型基于如图2实施例或图3实施例的方法训练得到,因此,文本识别模型即可以识别包含非弯曲文本的图像,也可以识别包含弯曲文本的图像。
[0101] 本申请实施例的文本识别方法,由于文本识别模型可以识别包含非弯曲文本的图像以及包含弯曲文本的图像,因此,本申请可以提高文本识别的准确性,尤其是对包含弯曲文本的图像进行文本识别的准确性。并且,由于文本识别模型中不包含额外的矫正模块,因此不会导致网络复杂度的增加,可以提高文本识别模型的计算效率和泛化能力。
[0102] 本申请实施例还提供了一种文本识别模型训练装置,如图9所示,图9为本申请实施例中文本识别模型训练装置的一种结构示意图,包括:
[0103] 第一获取模块910,用于获取多个包含弯曲文本的第一样本图像及第一样本图像中的弯曲文本的文本信息;
[0104] 图像输入模块920,用于分别将第一样本图像输入预先训练完成的图像矫正模型及文本识别模型,其中,图像矫正模型用于将包含弯曲文本的图像矫正为包含非弯曲文本的图像,文本识别模型用于识别图像中的文本信息;
[0105] 特征提取模块930,用于通过图像矫正模型对第一样本图像进行特征提取,获得第一图像特征;并且,通过文本识别模型对第一样本图像进行特征提取,获得第二图像特征;
[0106] 特征损失值确定模块940,用于使用预设的特征损失函数,根据第一图像特征和第二图像特征,确定特征损失值;
[0107] 模型更新模块950,用于在通过第一样本图像及第一样本图像中的文本信息对预先训练完成的文本识别模型进行训练时,基于特征损失值对文本识别模型进行更新。
[0108] 可选地,文本识别模型包括:卷积神经网络部分;
[0109] 模型更新模块950通过下述步骤实现基于特征损失值对文本识别模型进行更新:
[0110] 基于特征损失值对卷积神经网络部分进行更新。
[0111] 可选地,模型更新模块950通过下述步骤实现基于特征损失值对卷积神经网络部分进行更新:
[0112] 将特征损失值作为卷积神经网络部分的第一损失值,并根据第一损失值对卷积神经网络部分进行更新;或
[0113] 将特征损失值和文本识别模型中的损失值之和,作为卷积神经网络部分的第二损失值,并根据第二损失值对卷积神经网络部分进行更新。
[0114] 可选地,文本识别模型还包括:循环神经网络部分和翻译层部分;循环神经网络部分用于对基于卷积神经网络部分提取的特征进行序列预测,得到序列特征;翻译层部分用于将序列特征翻译为字符序列;
[0115] 模型更新模块950,具体用于在通过第一样本图像及第一样本图像中的文本信息对文本识别模型进行训练时,基于文本识别模型中的损失值对循环神经网络部分和翻译层部分进行更新。
[0116] 可选地,特征损失值确定模块940,用于将第一图像特征和第二图像特征在相同的通道以及相同的像素点进行对应相减,得到多个损失值;根据多个损失值,确定特征损失值。
[0117] 可选地,特征损失值确定模块940通过下述步骤实现根据多个损失值,确定特征损失值:
[0118] 将多个损失值的平均值,作为特征损失值。
[0119] 可选地,上述文本识别模型训练装置还包括:
[0120] 第二获取模块,用于获取多个包含弯曲文本的第二样本图像及第二样本图像对应的第三样本图像,其中,第三样本图像中包含与第二样本图像中的弯曲文本对应的非弯曲文本;
[0121] 图像预测模块,用于通过预设矫正模型对第二样本图像进行矫正处理,得到预测图像;
[0122] 图像损失值确定模块,用于根据预测图像和第二样本图像对应的第三样本图像,确定图像损失值;
[0123] 图像矫正模型获取模块,用于基于图像损失值对预设矫正模型进行更新,以得到图像矫正模型。
[0124] 可选地,上述文本识别模型训练装置还包括:
[0125] 第三获取模块,用于获取多个包含非弯曲文本的第四样本图像及第四样本图像中包含的非弯曲文本的文本信息;
[0126] 文本预测模块,用于通过预设识别模型对第四样本图像中的文本进行识别,得到预测文本信息;
[0127] 文本损失值确定模块,用于根据预测文本信息及该第四样本图像中包含的非弯曲文本的文本信息,确定文本损失值;
[0128] 文本识别模型获取模块,用于基于文本损失值,对预设识别模型进行更新,以得到文本识别模型。
[0129] 本申请实施例还提供了一种文本识别装置,如图10所示,图10为本申请实施例中文本识别装置的一种结构示意图,包括:
[0130] 待识别文本图像获取模块1010,用于获取待识别的文本图像;其中,文本图像包括:包含弯曲文本的图像;
[0131] 文本识别模块1020,用于通过文本识别模型对文本图像进行文本识别,得到文本信息;其中,文本识别模型基于如图2实施例或图3实施例的方法训练得到。
[0132] 基于上述方法实施例,本申请实施例还提供了一种电子设备,用于执行上述任一实施例所描述的方法,如图11所示,该电子设备包括:
[0133] 处理器1102、通信接口1104、存储器1106以及通信总线1108。
[0134] 其中:
[0135] 处理器1102、通信接口1104、以及存储器1106通过通信总线1108完成[0136] 相互间的通信。
[0137] 通信接口1104,用于与其它终端设备或服务器进行通信。
[0138] 处理器1102,用于执行程序1110,具体可以执行上述短视频处理方法实施例中的相关步骤。
[0139] 具体地,程序1110可以包括程序代码,该程序代码包括计算机操作指令。
[0140] 处理器1102可能是中央处理器CPU,或者是特定集成电路ASIC(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。终端设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
[0141] 存储器1106,用于存放程序1110。存储器1106可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
[0142] 本申请实施例的电子设备以多种形式存在,包括但不限于:
[0143] (1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
[0144] (2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
[0145] (3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
[0146] (4)其他具有数据交互功能的电子设备。
[0147] 本申请实施例还提供了一种存储介质,存储介质存储有计算机可执行指令,计算机可执行指令在被执行时实现本申请任一实施例中所描述的方法。
[0148] 至此,已经对本主题的特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作可以按照不同的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序,以实现期望的结果。在某些实施方式中,多任务处理和并行处理可以是有利的。
[0149] 上述实施例阐明的方法,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
[0150] 本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0151] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0152] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0153] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0154] 在一个典型的配置中,计算设备包括一个或多个CPU、输入/输出接口、网络接口和内存。
[0155] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0156] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0157] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0158] 本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0159] 本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定事务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行事务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0160] 本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0161] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0162] 以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。