CN111325210B - 用于输出信息的方法和装置 - Google Patents
用于输出信息的方法和装置 Download PDFInfo
- Publication number
- CN111325210B CN111325210B CN201811534207.1A CN201811534207A CN111325210B CN 111325210 B CN111325210 B CN 111325210B CN 201811534207 A CN201811534207 A CN 201811534207A CN 111325210 B CN111325210 B CN 111325210B
- Authority
- CN
- China
- Prior art keywords
- text line
- target
- character
- preset
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000011218 segmentation Effects 0.000 claims abstract description 136
- 238000012549 training Methods 0.000 claims description 150
- 238000013527 convolutional neural network Methods 0.000 claims description 107
- 238000012545 processing Methods 0.000 claims description 18
- 238000010801 machine learning Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 238000004148 unit process Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 210000002569 neuron Anatomy 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000012015 optical character recognition Methods 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 229920006395 saturated elastomer Polymers 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例公开了用于输出信息的方法和装置。该方法的一具体实施方式包括:获取包含目标文本行的目标图像;将目标图像输入预先训练的文本行分割模型中,得到目标文本行中至少一个位置对应的至少一个概率,其中,文本行分割模型用于表征包含文本行的图像与文本行中至少一个位置对应的至少一个概率之间的对应关系,概率用于确定位置是否为文本行的分割点;基于所得到的至少一个概率,输出目标文本行的分割点的分割点信息。该实施方式可以准确地对字符进行切分,减少字符切开或者字符粘连的问题。
Description
技术领域
本申请实施例涉及计算机技术领域,具体涉及用于输出信息的方法和装置。
背景技术
文本行字符分割是指将文本行切分成单个字符,在字符识别之前通常需要将文本行分割成字符。文本行字符分割是OCR(Optical Character Recognition,光学字符识别)技术的重要环节。目前文本行字符分割的主流技术包括连通域字符分割方法、投影字符分割方法、滴水方法分割字符、上下轮廓特征方法分割字符以及自适应方法分割字符。
发明内容
本申请实施例提出了用于输出信息的方法和装置。
第一方面,本申请实施例提供了一种用于输出信息的方法,包括:获取包含目标文本行的目标图像;将目标图像输入预先训练的文本行分割模型中,得到目标文本行中至少一个位置对应的至少一个概率,其中,文本行分割模型用于表征包含文本行的图像与文本行中至少一个位置对应的至少一个概率之间的对应关系,概率用于确定位置是否为文本行的分割点;基于所得到的至少一个概率,输出目标文本行的分割点的分割点信息。
在一些实施例中,该方法还包括:按照分割点信息所指示的分割点,对目标文本行进行分割。
在一些实施例中,文本行分割模型为卷积神经网络;以及文本行分割模型是通过如下第一训练步骤训练得到的:确定初始卷积神经网络的网络结构以及初始化初始卷积神经网络的网络参数;获取训练样本集,其中,训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率;将训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为初始卷积神经网络的输入和期望输出,利用机器学习方法训练初始卷积神经网络;将训练得到的初始卷积神经网络确定为文本行分割模型。
在一些实施例中,文本行分割模型为卷积神经网络;以及文本行分割模型是通过如下第二训练步骤训练得到的:确定初始卷积神经网络的网络结构以及初始化初始卷积神经网络的网络参数;获取训练样本集,其中,训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率;将包含目标文本行的目标图像作为样本图像,以及将目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到训练样本集中;将添加后的训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为初始卷积神经网络的输入和期望输出,利用机器学习方法训练初始卷积神经网络;将训练得到的初始卷积神经网络确定为文本行分割模型。
在一些实施例中,预设的标签概率是通过如下步骤确定的:将目标文本行中符合第一预设条件的位置确定为第一目标位置,将第一目标位置对应的标签概率设置为预设第一标签值;将目标文本行中符合第二预设条件的位置确定为第二目标位置,将第二目标位置对应的标签概率设置为预设第二标签值;针对目标文本行中至少一个字符中的字符,基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率,其中,第三目标位置位于该字符中第一目标位置与该字符中第二目标位置之间。
在一些实施例中,基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率,包括:将该字符中第二目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第一差值;将该字符中第三目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第二差值;确定第二差值与第一差值的比值,以及将预设数值与比值之差确定为该字符中第三目标位置对应的标签概率。
在一些实施例中,在获取包含目标文本行的目标图像之前,该方法还包括:对包含目标文本行的图像进行处理,生成目标图像。
在一些实施例中,对包含目标文本行的图像进行处理,包括:将包含目标文本行的图像的高度调整为预设像素。
在一些实施例中,基于所得到的至少一个概率,输出目标文本行的分割点的分割点信息,包括:针对目标文本行中至少一个位置中的位置,在预设坐标系中确定该位置的坐标点,其中,坐标点在预设坐标系中的横坐标用于表征该位置与预设位置之间的距离,坐标点在预设坐标系中的纵坐标用于表征该位置对应的概率;在至少一个位置所对应的至少一个概率中,确定至少一个极大值;将至少一个极大值中满足目标条件的极大值确定为目标极大值;针对确定出的至少一个目标极大值中的目标极大值,以该目标极大值对应的极值点为中心点,沿着预设坐标系的横坐标轴的正方向和负方向分别查找对应的概率小于预设第三数值、且与预设第三数值之差最小的位置点,将位置点确定为目标文本行的分割点,输出分割点的分割点信息。
第二方面,本申请实施例提供了一种用于输出信息的装置,包括:获取单元,被配置成获取包含目标文本行的目标图像;输入单元,被配置成将目标图像输入预先训练的文本行分割模型中,得到目标文本行中至少一个位置对应的至少一个概率,其中,文本行分割模型用于表征包含文本行的图像与文本行中至少一个位置对应的至少一个概率之间的对应关系,概率用于确定位置是否为文本行的分割点;输出单元,被配置成基于所得到的至少一个概率,输出目标文本行的分割点的分割点信息。
在一些实施例中,该装置还包括:分割单元,被配置成按照分割点信息所指示的分割点,对目标文本行进行分割。
在一些实施例中,文本行分割模型为卷积神经网络;以及文本行分割模型是通过如下第一训练步骤训练得到的:确定初始卷积神经网络的网络结构以及初始化初始卷积神经网络的网络参数;获取训练样本集,其中,训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率;将训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为初始卷积神经网络的输入和期望输出,利用机器学习方法训练初始卷积神经网络;将训练得到的初始卷积神经网络确定为文本行分割模型。
在一些实施例中,文本行分割模型为卷积神经网络;以及文本行分割模型是通过如下第二训练步骤训练得到的:确定初始卷积神经网络的网络结构以及初始化初始卷积神经网络的网络参数;获取训练样本集,其中,训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率;将包含目标文本行的目标图像作为样本图像,以及将目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到训练样本集中;将添加后的训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为初始卷积神经网络的输入和期望输出,利用机器学习方法训练初始卷积神经网络;将训练得到的初始卷积神经网络确定为文本行分割模型。
在一些实施例中,预设的标签概率是通过如下步骤确定的:将目标文本行中符合第一预设条件的位置确定为第一目标位置,将第一目标位置对应的标签概率设置为预设第一标签值;将目标文本行中符合第二预设条件的位置确定为第二目标位置,将第二目标位置对应的标签概率设置为预设第二标签值;针对目标文本行中至少一个字符中的字符,基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率,其中,第三目标位置位于该字符中第一目标位置与该字符中第二目标位置之间。
在一些实施例中,该字符中第三目标位置对应的标签概率是基于该字符中第一目标位置和该字符中第二目标位置,按照如下方式确定的:将该字符中第二目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第一差值;将该字符中第三目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第二差值;确定第二差值与第一差值的比值,以及将预设数值与比值之差确定为该字符中第三目标位置对应的标签概率。
在一些实施例中,该装置还包括:处理单元,被配置成对包含目标文本行的图像进行处理,生成目标图像。
在一些实施例中,处理单元按照如下方式对包含目标文本行的图像进行处理:将包含目标文本行的图像的高度调整为预设像素。
在一些实施例中,输出单元按照如下方式基于所得到的至少一个概率,输出目标文本行的分割点的分割点信息:针对目标文本行中至少一个位置中的位置,在预设坐标系中确定该位置的坐标点,其中,坐标点在预设坐标系中的横坐标用于表征该位置与预设位置之间的距离,坐标点在预设坐标系中的纵坐标用于表征该位置对应的概率;在至少一个位置所对应的至少一个概率中,确定至少一个极大值;将至少一个极大值中满足目标条件的极大值确定为目标极大值,其中,目标条件为极大值大于预设第一数值、且极大值对应的极值点与相邻的极值点所形成的子区间内的极小值小于预设第二数值;针对确定出的至少一个目标极大值中的目标极大值,以该目标极大值对应的极值点为中心点,沿着预设坐标系的横坐标轴的正方向和负方向分别查找对应的概率小于预设第三数值、且与预设第三数值之差最小的位置点,将位置点确定为目标文本行的分割点,输出分割点的分割点信息。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,其上存储有一个或多个程序,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本申请的上述实施例提供的用于输出信息的方法和装置,通过获取包含目标文本行的目标图像;之后,将上述目标图像输入预先训练的文本行分割模型中,得到上述目标文本行中至少一个位置对应的至少一个概率;最后,基于所得到的至少一个概率,输出上述目标文本行的分割点的分割点信息。通过这种方式可以得到准确的分割点信息,从而准确地对字符进行切分,减少字符切开或者字符粘连的问题。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请的一个实施例可以应用于其中的示例性***架构图;
图2是根据本申请的用于输出信息的方法的一个实施例的流程图;
图3是根据本申请的预先训练文本行分割模型的第二训练步骤的一个实施例的流程图;
图4是根据本申请的用于输出信息的方法的一个应用场景的示意图;
图5是根据本申请的用于输出信息的方法的又一个实施例的流程图;
图6是根据本申请的用于输出信息的装置的一个实施例的结构示意图;
图7是适于用来实现本申请实施例的电子设备的计算机***的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于输出信息的方法的实施例的示例性***架构100。
如图1所示,***架构100可以包括终端设备1011、1012、1013,网络102和服务器103。网络102用以在终端设备1011、1012、1013和服务器103之间提供通信链路的介质。网络102可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备1011、1012、1013通过网络102与服务器103交互,以发送或接收消息等,例如,终端设备1011、1012、1013可以将拍摄到的包含目标文本行的目标图像发送给服务器103。终端设备1011、1012、101也可以从服务器103中获取到预先训练的文本行分割模型。
终端设备1011、1012、1013可以获取包含目标文本行的目标图像;之后,可以将上述目标图像输入预先训练的文本行分割模型中,得到上述目标文本行中至少一个位置对应的至少一个概率;最后,可以基于所得到的至少一个概率,输出上述目标文本行的分割点的分割点信息。
终端设备1011、1012、1013可以是硬件,也可以是软件。当终端设备1011、1012、1013为硬件时,可以是具有摄像头和显示屏并且支持信息交互的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备1011、1012、1013为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
服务器103可以是提供各种服务的服务器。例如,可以对包含目标文本行的目标图像进行分析从而输出上述目标文本行的分割点的分割点信息。服务器103可以首先从终端设备1011、1012、1013中获取包含目标文本行的目标图像;之后,可以将上述目标图像输入预先训练的文本行分割模型中,得到上述目标文本行中至少一个位置对应的至少一个概率;最后,可以基于所得到的至少一个概率,输出上述目标文本行的分割点的分割点信息。
需要说明的是,服务器103可以是硬件,也可以是软件。当服务器103为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器103为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的用于输出信息的方法可以由终端设备1011、1012、1013执行,也可以由服务器103执行。
还需要说明的是,终端设备1011、1012、1013的本地可以存储有预先训练的文本行分割模型,终端设备1011、1012、1013可以从本地获取预先训练的文本行分割模型。此时示例性***架构100可以不存在网络102和服务器103。
还需要说明的是,服务器103的本地也可以存储有包含目标文本行的目标图像,服务器103可以从本地获取包含目标文本行的目标图像。此时示例性***架构100可以不存在网络102和终端设备1011、1012、1013。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的用于输出信息的方法的一个实施例的流程200。该用于输出信息的方法,包括以下步骤:
步骤201,获取包含目标文本行的目标图像。
在本实施例中,用于输出信息的方法的执行主体(例如图1所示的服务器或者终端设备)可以获取包含目标文本行的目标图像。文本行通常为由字符所组成的文本。目标文本行可以是待分割、待提取出所包含的字符的文本行。若上述执行主体为终端设备,上述执行主体可以对文档进行拍摄或者扫描以获取包含目标文本行的目标图像。若上述执行主体为服务器,上述执行主体可以从终端设备中获取包含上述目标文本行的目标图像。上述执行主体的本地也可以存储有包含上述目标文本行的目标图像,上述执行主体可以从本地获取包含上述目标文本行的目标图像。
步骤202,将目标图像输入预先训练的文本行分割模型中,得到目标文本行中至少一个位置对应的至少一个概率。
在本实施例中,上述执行主体可以将步骤201中获取到的目标图像输入至预先训练的文本行分割模型中,得到上述目标文本行中至少一个位置对应的至少一个概率。上述文本行分割模型可以用于表征包含文本行的图像与文本行中至少一个位置对应的至少一个概率之间的对应关系。作为示例,文本行分割模型可以是基于对大量的包含文本行的图像和文本行中至少一个位置对应的至少一个概率的统计而预先制定的、存储有多个包含文本行的图像和文本行中至少一个位置对应的至少一个概率的对应关系的对应关系表。概率可以用于确定位置是否为文本行的分割点。
通常来说,目标文本行中的每个字符均需要对应至少一个位置,所对应的位置越多,确定出的文本行的分割点越准确。作为示例,可以将目标图像中的每个像素点作为一个位置,也可以将目标图像中预设数目个(例如,2个、5个等)像素点作为一个位置,此时,将目标图像输入至上述文本行分割模型中所得到的是每个像素点对应的概率,或者得到的是每预设数目个像素点对应的概率。
在本实施例的一些可选的实现方式中,上述文本行分割模型可以为卷积神经网络。上述文本行分割模型可以通过如下第一训练步骤训练得到:
第一步,确定初始卷积神经网络的网络结构以及初始化初始卷积神经网络的网络参数。
在这里,第一训练步骤的执行主体可以首先确定初始卷积神经网络的网络结构。由于卷积神经网络是一个多层的神经网络,每层由多个二维平面组成,而每个平面由多个独立神经元组成,则这里需要确定初始卷积神经网络包括哪些层(例如,卷积层,池化层,全连接层,分类器等等),层与层之间的连接顺序关系,以及每个层都包括哪些参数(例如,权重、偏置项、卷积的步长)等等。其中,卷积层可以用于提取图像特征。针对每个卷积层可以确定有多少个卷积核,每个卷积核的大小,每个卷积核中的各个神经元的权重,每个卷积核对应的偏置项,相邻两次卷积之间的步长,卷积通道数和卷积补齐方式(卷积模式)等等。在这里,卷积补齐方式主要包括SAME模式和VALID模式。SAME模式是指当滤波器中心与图像的边角重合时,开始做卷积运算。VALID模式是指当滤波器全部在图像里面的时候,进行卷积运算。
作为示例,可以采用14层的卷积神经网络,为了加大卷积神经网络对文本行水平方向的卷积视野,可以将部分卷积核调整成1*3卷积核,网络结构可以参见表1。需要说明的是,在表1中,conv2d表征卷积层,max_pool2d表征池化层:
网络层类型 | 卷积核/池化核 | 步长 | 卷积通道数 | 卷积补齐方式 |
Conv2d | (3*3) | 1 | 32 | SAME |
max_pool2d | (2*2) | 2 | ||
Conv2d | (3*3) | 1 | 64 | SAME |
max_pool2d | (2*2) | (2*1) | ||
Conv2d | (3*3) | 1 | 128 | SAME |
Conv2d | (3*3) | 1 | 128 | SAME |
Conv2d | (1*3) | 1 | 128 | SAME |
max_pool2d | (2*1) | (2*1) | ||
Conv2d | (3*3) | 1 | 256 | SAME |
Conv2d | (3*3) | 1 | 256 | SAME |
Conv2d | (1*3) | 1 | 256 | SAME |
max_pool2d | (2*1) | (2*1) | ||
Conv2d | (2*2) | 1 | 256 | VALID |
Conv2d | (1*3) | 1 | 1 | SAME |
表1
然后,第一训练步骤的执行主体可以初始化初始卷积神经网络的网络参数。实践中,可以将卷积神经网络的各个网络参数(例如,权值参数和偏置参数)用一些不同的小随机数进行初始化。“小随机数”用来保证网络不会因权值过大而进入饱和状态,从而导致训练失败,“不同”用来保证网络可以正常地学习。
需要说明的是,第一训练步骤的执行主体可以与用于输出信息的方法的执行主体相同或者不同。如果相同,则第一训练步骤的执行主体可以在训练得到卷积神经网络后将训练好的卷积神经网络的网络结构信息和网络参数的参数值存储在本地。如果不同,则第一训练步骤的执行主体可以在训练得到卷积神经网络后将训练好的卷积神经网络的网络结构信息和网络参数的参数值发送给用于输出信息的方法的执行主体。
第二步,获取训练样本集。
在这里,第一训练步骤的执行主体可以本地或者远程地从与上述执行主体网络连接的其他电子设备获取训练样本集。其中,每个训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率。例如,可以由人工标定样本图像所包含的样本文本行中至少一个位置对应的至少一个概率。
第三步,将训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为初始卷积神经网络的输入和期望输出,利用机器学习方法训练初始卷积神经网络。
在这里,第一训练步骤的执行主体可以将训练样本集中的训练样本中包含样本文本行的样本图像输入初始卷积神经网络,得到该样本图像所包含的样本文本行中至少一个位置对应的至少一个概率,以该训练样本中的样本文本行中至少一个位置对应的至少一个概率作为初始卷积神经网络的期望输出,利用机器学习方法训练初始卷积神经网络。具体地,可以首先利用预设的损失函数计算所得到的样本文本行中至少一个位置对应的至少一个概率与该训练样本中的样本文本行中至少一个位置对应的至少一个概率之间的差异,例如,可以采用L2范数作为损失函数计算所得到的样本文本行中至少一个位置对应的至少一个概率与该训练样本中的样本文本行中至少一个位置对应的至少一个概率之间的差异。然后,可以基于计算所得的差异,调整初始卷积神经网络的网络参数,并在满足预设的训练结束条件的情况下,结束训练。例如,这里预设的训练结束条件可以包括但不限于以下至少一项:训练时间超过预设时长;训练次数超过预设次数;计算所得的差异小于预设差异阈值。
这里,可以采用各种实现方式基于所生成的样本文本行中至少一个位置对应的至少一个概率与该训练样本中的样本文本行中至少一个位置对应的至少一个概率之间的差异调整初始卷积神经网络的网络参数。例如,可以采用BP(Back Propagation,反向传播)算法或者SGD(Stochastic Gradient Descent,随机梯度下降)算法来调整初始卷积神经网络的网络参数。
第四步,将训练得到的初始卷积神经网络确定为文本行分割模型。
在这里,第一训练步骤的执行主体可以将第三步中训练得到的初始卷积神经网络确定为预先训练的文本行分割模型。
请参考图3,图3示出了根据本申请的预先训练文本行分割模型的第二训练步骤的一个实施例的流程300。上述文本行分割模型可以为卷积神经网络。该第二训练步骤可以包括以下步骤:
步骤301,确定初始卷积神经网络的网络结构以及初始化初始卷积神经网络的网络参数。
在这里,第二训练步骤的执行主体可以首先确定初始卷积神经网络的网络结构。由于卷积神经网络是一个多层的神经网络,每层由多个二维平面组成,而每个平面由多个独立神经元组成,则这里需要确定初始卷积神经网络包括哪些层(例如,卷积层,池化层,全连接层,分类器等等),层与层之间的连接顺序关系,以及每个层都包括哪些参数(例如,权重、偏置项、卷积的步长)等等。其中,卷积层可以用于提取图像特征。针对每个卷积层可以确定有多少个卷积核,每个卷积核的大小,每个卷积核中的各个神经元的权重,每个卷积核对应的偏置项,相邻两次卷积之间的步长,卷积通道数和卷积补齐方式(卷积模式)等等。在这里,卷积补齐方式主要包括SAME模式和VALID模式。SAME模式是指当滤波器中心与图像的边角重合时,开始做卷积运算。VALID模式是指当滤波器全部在图像里面的时候,进行卷积运算。
然后,第二训练步骤的执行主体可以初始化初始卷积神经网络的网络参数。实践中,可以将卷积神经网络的各个网络参数(例如,权值参数和偏置参数)用一些不同的小随机数进行初始化。“小随机数”用来保证网络不会因权值过大而进入饱和状态,从而导致训练失败,“不同”用来保证网络可以正常地学习。
需要说明的是,第二训练步骤的执行主体可以与用于输出信息的方法的执行主体相同或者不同。如果相同,则第二训练步骤的执行主体可以在训练得到卷积神经网络后将训练好的卷积神经网络的网络结构信息和网络参数的参数值存储在本地。如果不同,则第二训练步骤的执行主体可以在训练得到卷积神经网络后将训练好的卷积神经网络的网络结构信息和网络参数的参数值发送给用于输出信息的方法的执行主体。
步骤302,获取训练样本集。
在这里,第二训练步骤的执行主体可以本地或者远程地从与上述执行主体网络连接的其他电子设备获取训练样本集。其中,每个训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率。例如,可以由人工标定样本图像所包含的样本文本行中至少一个位置对应的至少一个概率。
步骤303,将包含目标文本行的目标图像作为样本图像,以及将目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到训练样本集中。
在这里,第二训练步骤的执行主体可以将包含目标文本行的上述目标图像作为样本图像,以及可以将上述目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到步骤302所获取到的训练样本集中。上述预设的标签概率可以是预先确定的概率。
在本实施例的一些可选的实现方式中,上述预设的标签概率可以是通过如下确定步骤确定得到的:
步骤一,将目标文本行中符合第一预设条件的位置确定为第一目标位置,将第一目标位置对应的标签概率设置为预设第一标签值。
在这里,确定步骤的执行主体可以将上述目标文本行中符合第一预设条件的位置确定为第一目标位置,可以将上述第一目标位置对应的标签概率设置为预设第一标签值。符合第一预设条件的位置可以为字符的中心点位置,预设第一标签值可以为1。即将字符的中心点位置确定为第一目标位置,将字符的中心点位置所对应的标签概率设置为1。
需要说明的是,确定步骤的执行主体通常与第二训练步骤的执行主体相同。若第二训练步骤的执行主体与用于输出信息的方法的执行主体相同,则确定步骤的执行主体也与用于输出信息的方法的执行主体相同。若第二训练步骤的执行主体与用于输出信息的方法的执行主体不同,则确定步骤的执行主体也与用于输出信息的方法的执行主体不同。
步骤二,将目标文本行中符合第二预设条件的位置确定为第二目标位置,将第二目标位置对应的标签概率设置为预设第二标签值。
在这里,确定步骤的执行主体可以将上述目标文本行中符合第二预设条件的位置确定为第二目标位置,可以将上述第二目标位置对应的标签概率设置为预设第二标签值。符合第二预设条件的位置可以为字符的边缘位置,预设第二标签值可以为0。即将字符的边缘位置确定为第二目标位置,将字符的边缘位置所对应的标签概率设置为0。需要说明的是,字符的边缘位置包括左边缘位置和右边缘位置。
步骤三,针对目标文本行中至少一个字符中的字符,基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率。
在这里,针对上述目标文本行中至少一个字符中的字符,确定步骤的执行主体可以基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率。需要说明的是,该字符的第三目标位置通常位于该字符中第一目标位置与该字符中第二目标位置之间。作为示例,若该字符中第一目标位置为字符的中心点位置,该字符中第二目标位置为字符的左边缘位置,则该字符的第三目标位置通常位于该字符的中心点位置和该字符的左边缘位置之间。若该字符中第一目标位置为字符的中心点位置,该字符中第二目标位置为字符的右边缘位置,则该字符的第三目标位置通常位于该字符的中心点位置和该字符的右边缘位置之间。
在本实施例的一些可选的实现方式中,确定步骤的执行主体可以通过如下方式确定该字符中第三目标位置对应的标签概率:首先,确定步骤的执行主体可以将该字符中第二目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第一差值,例如,将该字符的左边缘位置或者右边缘位置与该字符的中心点位置之间的距离之差的绝对值确定为第一差值。之后,确定步骤的执行主体可以将该字符中第三目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第二差值,例如,将该字符中第三目标位置与该字符的中心点位置之间的距离之差的绝对值确定为第二差值。最后,确定步骤的执行主体可以确定上述第二差值与上述第一差值的比值,以及可以将预设数值(例如,1)与上述比值之差确定为该字符中第三目标位置对应的标签概率。
若将该字符呈现在预设坐标系中,上述预设坐标系的横坐标参数表征该字符中的位置点与预设位置点(横坐标值为零、纵坐标值为该位置的纵坐标值的坐标点)之间的距离,则上述确定步骤的执行主体可以通过如下公式(1)得到该字符中第三目标位置对应的标签概率:
其中,pos为该字符中第三目标位置与预设位置点之间的距离,mid为该字符中的中心点位置与预设位置点之间的距离,edge为该字符中的边缘位置与预设位置点之间的距离,P(pos)为该字符中第三目标位置对应的标签概率。
在这里,确定步骤的执行主体还可以通过如下方式确定该字符中第三目标位置对应的标签概率:首先,确定步骤的执行主体可以将该字符中第二目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第一差值,例如,将该字符的左边缘位置或者右边缘位置与该字符的中心点位置之间的距离之差的绝对值确定为第一差值。之后,确定步骤的执行主体可以将该字符中第三目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第二差值,例如,将该字符中第三目标位置与该字符的中心点位置之间的距离之差的绝对值确定为第二差值。而后,确定步骤的执行主体可以确定上述第二差值与上述第一差值的比值,以及求取上述比值的预设数值(例如,2、3等)次数的乘方运算。最后,可以将预设数值(例如,0.8)与上述乘方运算的结果之差确定为该字符中第三目标位置对应的标签概率。
步骤304,将添加后的训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为初始卷积神经网络的输入和期望输出,利用机器学习方法训练初始卷积神经网络。
在这里,第二训练步骤的执行主体可以将步骤303中添加新的训练样本之后的训练样本集中的训练样本中包含样本文本行的样本图像输入初始卷积神经网络,得到该样本图像所包含的样本文本行中至少一个位置对应的至少一个概率,以该训练样本中的样本文本行中至少一个位置对应的至少一个概率作为初始卷积神经网络的期望输出,利用机器学习方法训练初始卷积神经网络。具体地,可以首先利用预设的损失函数计算所得到的样本文本行中至少一个位置对应的至少一个概率与该训练样本中的样本文本行中至少一个位置对应的至少一个概率之间的差异,例如,可以采用L2范数作为损失函数计算所得到的样本文本行中至少一个位置对应的至少一个概率与该训练样本中的样本文本行中至少一个位置对应的至少一个概率之间的差异。然后,可以基于计算所得的差异,调整初始卷积神经网络的网络参数,并在满足预设的训练结束条件的情况下,结束训练。例如,这里预设的训练结束条件可以包括但不限于以下至少一项:训练时间超过预设时长;训练次数超过预设次数;计算所得的差异小于预设差异阈值。
这里,可以采用各种实现方式基于所生成的样本文本行中至少一个位置对应的至少一个概率与该训练样本中的样本文本行中至少一个位置对应的至少一个概率之间的差异调整初始卷积神经网络的网络参数。例如,可以采用BP算法或者SGD算法来调整初始卷积神经网络的网络参数。
步骤305,将训练得到的初始卷积神经网络确定为文本行分割模型。
在这里,第二训练步骤的执行主体可以将步骤304中训练得到的初始卷积神经网络确定为预先训练的文本行分割模型。
步骤203,基于所得到的至少一个概率,输出目标文本行的分割点的分割点信息。
在本实施例中,上述执行主体可以基于步骤202中所得到的至少一个概率,输出上述目标文本行的分割点的分割点信息。具体地,上述执行主体可以在上述至少一个概率中查找到预设概率值(例如,0.15)的概率,可以将查找到的概率对应的位置确定为文本行的分割点,以及将确定出的分割点的分割点信息进行输出。分割点信息可以包括分割点的位置信息。上述预设概率值可以是人工设置的,该概率值用于确定分割点的位置,该概率值通常与上述文本行分割模型中的分割算法相关。
在本实施例的一些可选的实现方式中,在确定出上述目标文本行的分割点的分割点信息之后,上述执行主体可以按照上述分割点信息所指示的分割点,对上述目标文本行进行分割,从而得到上述目标文本行中所包含的各个字符。
在本实施例的一些可选的实现方式中,在获取包含上述目标文本行的目标图像之前,上述执行主体可以对包含上述目标文本行的图像进行处理,生成目标图像。作为示例,上述执行主体可以对包含上述目标文本行的图像进行剪切操作;上述执行主体可以对图像的色调进行改变;上述执行主体可以对图像进行零均值化(中心化)操作。
在本实施例的一些可选的实现方式中,上述执行主体可以通过如下方式对包含上述目标文本行的图像进行处理:上述执行主体可以将包含上述目标文本行的图像的高度调整为预设像素。调整图像的高度的操作也可以称为对图像进行归一化(标准化)的操作。需要说明的是,预设像素通常与文本行分割模型的网络参数有关。在这里,预设像素可以为32像素。
继续参见图4,图4是根据本实施例的用于输出信息的方法的应用场景的一个示意图。在图4的应用场景中,服务器401可以首先从终端设备402中获取包含目标文本行的目标图像403,在这里,目标图像403可以为包含目标文本行“北京市海淀区”的图像。之后,服务器401可以将目标图像403输入到预先训练的文本行分割模型404中,得到目标文本行“北京市海淀区”中至少一个位置对应的至少一个概率405,在这里,可以在目标文本行“北京市海淀区”中按照从左到右的顺序每隔预设距离(例如,0.01厘米)设置一个位置点,得到的是每个位置点对应的概率。最后,服务器401可以在所得到的概率中查找概率值0.15对应的位置,并将对应概率0.15的位置确定为目标文本行“北京市海淀区”的分割点,以及输出确定出的分割点的分割点信息406,例如,可以将分割点信息406发送给终端设备402进行输出,在这里,分割点信息406可以为分割点的位置信息,例如,分割点在目标图像中的像素点位置。
本申请的上述实施例提供的方法通过利用预先训练的文本行分割模型得到文本行中至少一个位置对应的至少一个概率,通过至少一个概率输出文本行的分割点的分割点信息,通过这种方式可以得到准确的分割点信息,从而准确地对字符进行切分,减少字符切开或者字符粘连的问题。
进一步参考图5,其示出了用于输出信息的方法的又一个实施例的流程500。该用于输出信息的方法的流程500,包括以下步骤:
步骤501,获取包含目标文本行的目标图像。
步骤502,将目标图像输入预先训练的文本行分割模型中,得到目标文本行中至少一个位置对应的至少一个概率。
在本实施例中,步骤501-步骤502的操作与步骤201-步骤202的操作基本相同,在此不再赘述。
步骤503,针对目标文本行中至少一个位置中的位置,在预设坐标系中确定该位置的坐标点。
在本实施例中,针对上述目标文本行中至少一个位置中的位置,上述执行主体可以在预设坐标系中确定该位置的坐标点。上述预设坐标系可以为二维直角坐标系,该位置的坐标点在上述预设坐标系中的横坐标可以用于表征该位置与预设位置(通常是横坐标值为零、纵坐标值为该位置的纵坐标值的坐标点)之间的距离,该位置的坐标点在上述预设坐标系中的纵坐标用于表征该位置对应的概率。
需要说明的是,针对上述目标文本行中至少一个位置中的位置可以是针对上述目标文本行中至少一个位置中的每个位置,也可以是针对上述目标文本行中至少一个位置中的某个位置。
步骤504,在至少一个位置所对应的至少一个概率中,确定至少一个极大值。
在本实施例中,上述执行主体可以在上述至少一个位置所对应的至少一个概率中,确定至少一个极大值。由于上述预设坐标系中的坐标点是离散的,上述执行主体可以将上述预设坐标系中的坐标点进行连接形成曲线,将曲线上表征波峰的坐标点作为极大值点,该坐标点的纵坐标值为极大值,从而可以确定出至少一个极大值。函数在某个极小区间内,存在自变量取值x,且存在比其大与比其小的自变量,这些自变量所对应的函数值均小于x对应的函数值,那么,此函数值称为极大值。即若对点x0的某个邻域内所有x都有f(x)≤(f(x0),则称f在x0具有一个极大值,极大值为f(x0)。在这里,在每个子区间内,存在自变量取值L0,且存在比L0大和比L0小的自变量,这些自变量所对应的函数值均小于L0对应的函数值P0,那么,L0为在该区间中的极大值。
步骤505,将至少一个极大值中满足目标条件的极大值确定为目标极大值。
在本实施例中,上述执行主体可以将上述至少一个极大值中满足目标条件的极大值确定为目标极大值。在这里,上述目标条件可以为极大值大于预设第一数值(例如,0.65)、且该极大值大于与该极大值相邻的极大值,相邻的极大值通常是指与该极大值对应的极值点相邻的极值点所对应的极大值,若该极大值小于与该极大值相邻的极大值时,则可以确定该极大值对应的极值点与相邻的极值点所形成的子区间内的极小值是否小于预设第二数值(例如,0.5),若小于预设第二数值,则该极大值也可以确定为目标极大值。
需要说明的是,上述预设第一数值与上述预设第二数值可以是人为设定的经验值。
作为示例,若在上述预设坐标系中存在三个相邻的子区间,分别为区间A、区间B和区间C。区间A中的极大值为0.84,区间B中的极大值为0.75,区间C中的极大值为0.63。极大值0.84对应的极值点与极大值0.75对应的极值点所形成的区间中的极小值为0.32。此时,由于极大值0.84与极大值0.75均大于预设第一数值0.65,且极大值0.84对应的极值点与极大值0.75对应的极值点所形成的区间中的极小值0.32小于预设第二数值0.5,则可以将极大值0.84和极大值0.75确定为目标极大值。而极大值0.63小于预设的第一数值0.65,则极大值0.63不是目标极大值。
步骤506,针对确定出的至少一个目标极大值中的目标极大值,以该目标极大值对应的极值点为中心点,沿着预设坐标系的横坐标轴的正方向和负方向分别查找对应的概率小于预设第三数值、且与预设第三数值之差最小的位置点,将位置点确定为目标文本行的分割点,输出分割点的分割点信息。
在本实施例中,针对步骤505中确定出的至少一个目标极大值中的目标极大值,上述执行主体可以以该目标极大值对应的极值点为中心点,沿着预设坐标系的横坐标轴的正方向和负方向分别查找对应的概率小于预设第三数值(例如,0.15)、且与上述预设第三数值之差最小的位置点,该位置点通常为字符的左边界点或者右边界点,可以将上述位置点确定为上述目标文本行的分割点,输出分割点的分割点信息。若f(a)是函数f(x)的极大值或极小值,则a为函数f(x)的极值点,极大值点与极小值点统称为极值点。极值点是函数图像的某段子区间内上极大值或者极小值点的横坐标。
作为示例,针对在二维直角坐标系中确定出的子区间A中的目标极大值f(a),上述执行主体可以以目标极大值f(a)对应的极大值点a为中心点,沿着上述二维直角坐标系的横坐标轴的正方向查找到小于预设第三数值0.15的概率所对应的位置点分别为位置点x1和位置点x2,若位置点x1对应的概率为0.14、位置点x2对应的概率为0.12,则可以将位置点x1确定为上述目标文本行的分割点(左边界点)。沿着上述二维直角坐标系的横坐标轴的负方向查找到小于预设第三数值0.15的概率所对应的位置点分别为位置点x3和位置点x4,若位置点x3对应的概率为0.13、位置点x2对应的概率为0.08,则可以将位置点x3确定为上述目标文本行的分割点(右边界点)。
从图5中可以看出,与图2对应的实施例相比,本实施例中的用于输出信息的方法的流程500体现了在预设坐标系中确定满足预设第一条件的极大值,并通过极大值查找对应的概率满足预设第二条件的位置点,从而将查找到的位置点确定为分割点并输出分割点的分割点信息的步骤。由此,本实施例描述的方案可以进一步提高所确定出的分割点的准确性。
进一步参考图6,作为对上述各图所示方法的实现,本申请提供了一种用于输出信息的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图6所示,本实施例的用于输出信息的装置600包括:获取单元601、输入单元602和输出单元603。其中,获取单元601被配置成获取包含目标文本行的目标图像;输入单元602被配置成将目标图像输入预先训练的文本行分割模型中,得到目标文本行中至少一个位置对应的至少一个概率,其中,文本行分割模型用于表征包含文本行的图像与文本行中至少一个位置对应的至少一个概率之间的对应关系,概率用于确定位置是否为文本行的分割点;输出单元603被配置成基于所得到的至少一个概率,输出目标文本行的分割点的分割点信息。
在本实施例中,用于输出信息的装置600的获取单元601、输入单元602和输出单元603的具体处理可以参考图2对应实施例中的步骤201、步骤202和步骤203。
在本实施例的一些可选的实现方式中,用于输出信息的装置600还可以包括分割单元(图中未示出)。在确定出上述目标文本行的分割点的分割点信息之后,上述分割单元可以按照上述分割点信息所指示的分割点,对上述目标文本行进行分割,从而得到上述目标文本行中所包含的各个字符。
在本实施例的一些可选的实现方式中,上述文本行分割模型可以为卷积神经网络。上述文本行分割模型可以通过如下第一训练步骤训练得到:
第一步,确定初始卷积神经网络的网络结构以及初始化初始卷积神经网络的网络参数。
第二步,获取训练样本集。
第三步,将训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为初始卷积神经网络的输入和期望输出,利用机器学习方法训练初始卷积神经网络。
第四步,将训练得到的初始卷积神经网络确定为文本行分割模型。
在本实施例的一些可选的实现方式中,上述文本行分割模型可以为卷积神经网络。上述文本行分割模型可以通过如下第二训练步骤训练得到的。
第一步,确定初始卷积神经网络的网络结构以及初始化初始卷积神经网络的网络参数。
第二步,获取训练样本集。
第三步,将包含目标文本行的目标图像作为样本图像,以及将目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到训练样本集中。
第四步,将添加后的训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为初始卷积神经网络的输入和期望输出,利用机器学习方法训练初始卷积神经网络。
第五步,将训练得到的初始卷积神经网络确定为文本行分割模型。
在本实施例的一些可选的实现方式中,上述预设的标签概率可以是通过如下确定步骤确定得到的:
步骤一,将目标文本行中符合第一预设条件的位置确定为第一目标位置,将第一目标位置对应的标签概率设置为预设第一标签值。
步骤二,将目标文本行中符合第二预设条件的位置确定为第二目标位置,将第二目标位置对应的标签概率设置为预设第二标签值。
步骤三,针对目标文本行中至少一个字符中的字符,基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率。
在本实施例的一些可选的实现方式中,确定步骤的执行主体可以通过如下方式确定该字符中第三目标位置对应的标签概率:首先,确定步骤的执行主体可以将该字符中第二目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第一差值,例如,将该字符的左边缘位置或者右边缘位置与该字符的中心点位置之间的距离之差的绝对值确定为第一差值。之后,确定步骤的执行主体可以将该字符中第三目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第二差值,例如,将该字符中第三目标位置与该字符的中心点位置之间的距离之差的绝对值确定为第二差值。最后,确定步骤的执行主体可以确定上述第二差值与上述第一差值的比值,以及可以将预设数值与上述比值之差确定为该字符中第三目标位置对应的标签概率。
在本实施例的一些可选的实现方式中,用于输出信息的装置600还可以包括处理单元(图中未示出)。上述处理单元可以对包含上述目标文本行的图像进行处理,生成目标图像。作为示例,上述处理单元可以对包含上述目标文本行的图像进行剪切操作;上述处理单元可以对图像的色调进行改变;上述处理单元可以对图像进行零均值化操作。
在本实施例的一些可选的实现方式中,上述处理单元可以通过如下方式对包含上述目标文本行的图像进行处理:上述处理单元可以将包含上述目标文本行的图像的高度调整为预设像素。调整图像的高度的操作也可以称为对图像进行归一化(标准化)的操作。需要说明的是,预设像素通常与文本行分割模型的网络参数有关。在这里,预设像素可以为32像素。
在本实施例的一些可选的实现方式中,上述输出单元603可以按照如下方式基于所得到的至少一个概率,输出上述目标文本行的分割点的分割点信息:针对上述目标文本行中至少一个位置中的位置,上述输出单元603可以在预设坐标系中确定该位置的坐标点。而后,上述输出单元603可以在上述至少一个位置所对应的至少一个概率中,确定至少一个极大值。上述输出单元603可以将上述至少一个极大值中满足目标条件的极大值确定为目标极大值。在这里,上述目标条件可以为极大值大于预设第一数值(例如,0.65)、且该极大值大于与该极大值相邻的极大值,相邻的极大值通常是指与该极大值对应的极值点相邻的极值点所对应的极大值,若该极大值小于与该极大值相邻的极大值时,则可以确定该极大值对应的极值点与相邻的极值点所形成的子区间内的极小值是否小于预设第二数值(例如,0.5),若小于预设第二数值,则该极大值也可以确定为目标极大值。针对确定出的至少一个目标极大值中的目标极大值,上述输出单元603可以以该目标极大值对应的极值点为中心点,沿着预设坐标系的横坐标轴的正方向和负方向分别查找对应的概率小于预设第三数值(例如,0.15)、且与上述预设第三数值之差最小的位置点,将上述位置点确定为上述目标文本行的分割点,输出分割点的分割点信息。
下面参考图7,其示出了适于用来实现本发明实施例的电子设备(例如图1中的服务器103)的计算机***700的结构示意图。图7示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图7所示,计算机***700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有***700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如液晶显示器(LCD)以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取单元、输入单元和输出单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。例如,获取单元还可以被描述为“获取包含目标文本行的目标图像的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的装置中所包含的;也可以是单独存在,而未装配入该装置中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该装置执行时,使得该装置:获取包含目标文本行的目标图像;将目标图像输入预先训练的文本行分割模型中,得到目标文本行中至少一个位置对应的至少一个概率,其中,文本行分割模型用于表征包含文本行的图像与文本行中至少一个位置对应的至少一个概率之间的对应关系,概率用于确定位置是否为文本行的分割点;基于所得到的至少一个概率,输出目标文本行的分割点的分割点信息。
以上描述仅为本发明的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本发明中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本发明中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (18)
1.一种用于输出信息的方法,包括:
获取包含目标文本行的目标图像;
将所述目标图像输入预先训练的文本行分割模型中,得到所述目标文本行中每个字符对应的至少一个位置对应的至少一个概率,其中,所述文本行分割模型用于表征包含文本行的图像与文本行中每个字符对应的至少一个位置对应的至少一个概率之间的对应关系,概率用于确定位置是否为文本行的分割点,所述文本行分割模型基于添加后的训练样本集训练得到,所述添加后的训练样本集通过将包含目标文本行的目标图像作为样本图像,以及将目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到训练样本集中得到,对于所述目标文本行中至少一个字符中的字符,所述预设的标签概率为该字符中第三目标位置对应的标签概率,所述第三目标位置位于该字符中第一目标位置与该字符中第二目标位置之间,所述第一目标位置为该字符的中心点位置,所述第二目标位置为该字符的边缘位置;
基于所得到的每个字符对应的至少一个概率,输出所述目标文本行的分割点的分割点信息,以及按照所述分割点信息所指示的分割点,对所述目标文本行进行分割,得到所述目标文本行中所包含的各个字符。
2.根据权利要求1所述的方法,其中,所述文本行分割模型为卷积神经网络;以及
所述文本行分割模型是通过如下第一训练步骤训练得到的:
确定初始卷积神经网络的网络结构以及初始化所述初始卷积神经网络的网络参数;
获取训练样本集,其中,训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率;
将所述训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为所述初始卷积神经网络的输入和期望输出,利用机器学习方法训练所述初始卷积神经网络;
将训练得到的所述初始卷积神经网络确定为文本行分割模型。
3.根据权利要求1所述的方法,其中,所述文本行分割模型为卷积神经网络;以及
所述文本行分割模型是通过如下第二训练步骤训练得到的:
确定初始卷积神经网络的网络结构以及初始化所述初始卷积神经网络的网络参数;
获取训练样本集,其中,训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率;
将包含目标文本行的目标图像作为样本图像,以及将目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到所述训练样本集中;
将添加后的训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为所述初始卷积神经网络的输入和期望输出,利用机器学习方法训练所述初始卷积神经网络;
将训练得到的所述初始卷积神经网络确定为文本行分割模型。
4.根据权利要求3所述的方法,其中,预设的标签概率是通过如下步骤确定的:
将所述目标文本行中符合第一预设条件的位置确定为第一目标位置,将所述第一目标位置对应的标签概率设置为预设第一标签值;
将所述目标文本行中符合第二预设条件的位置确定为第二目标位置,将所述第二目标位置对应的标签概率设置为预设第二标签值;
针对所述目标文本行中至少一个字符中的字符,基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率,其中,所述第三目标位置位于该字符中第一目标位置与该字符中第二目标位置之间。
5.根据权利要求4所述的方法,其中,所述基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率,包括:
将该字符中第二目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第一差值;
将该字符中第三目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第二差值;
确定所述第二差值与所述第一差值的比值,以及将预设数值与所述比值之差确定为该字符中第三目标位置对应的标签概率。
6.根据权利要求1所述的方法,其中,在所述获取包含目标文本行的目标图像之前,所述方法还包括:
对包含目标文本行的图像进行处理,生成目标图像。
7.根据权利要求6所述的方法,其中,所述对包含目标文本行的图像进行处理,包括:
将包含目标文本行的图像的高度调整为预设像素。
8.根据权利要求1-7之一所述的方法,其中,所述基于所得到的至少一个概率,输出所述目标文本行的分割点的分割点信息,包括:
针对所述目标文本行中至少一个位置中的位置,在预设坐标系中确定该位置的坐标点,其中,所述坐标点在所述预设坐标系中的横坐标用于表征该位置与预设位置之间的距离,所述坐标点在所述预设坐标系中的纵坐标用于表征该位置对应的概率;
在所述至少一个位置所对应的至少一个概率中,确定至少一个极大值;
将所述至少一个极大值中满足目标条件的极大值确定为目标极大值;
针对确定出的至少一个目标极大值中的目标极大值,以该目标极大值对应的极值点为中心点,沿着所述预设坐标系的横坐标轴的正方向和负方向分别查找对应的概率小于预设第三数值、且与所述预设第三数值之差最小的位置点,将所述位置点确定为所述目标文本行的分割点,输出所述分割点的分割点信息。
9.一种用于输出信息的装置,包括:
获取单元,被配置成获取包含目标文本行的目标图像;
输入单元,被配置成将所述目标图像输入预先训练的文本行分割模型中,得到所述目标文本行中每个字符对应的至少一个位置对应的至少一个概率,其中,所述文本行分割模型用于表征包含文本行的图像与文本行中每个字符对应的至少一个位置对应的至少一个概率之间的对应关系,概率用于确定位置是否为文本行的分割点,所述文本行分割模型基于添加后的训练样本集训练得到,所述添加后的训练样本集通过将包含目标文本行的目标图像作为样本图像,以及将目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到训练样本集中得到,对于所述目标文本行中至少一个字符中的字符,所述预设的标签概率为该字符中第三目标位置对应的标签概率,所述第三目标位置位于该字符中第一目标位置与该字符中第二目标位置之间,所述第一目标位置为该字符的中心点位置,所述第二目标位置为该字符的边缘位置;
输出单元,被配置成基于所得到的每个字符对应的至少一个概率,输出所述目标文本行的分割点的分割点信息;
分割单元,被配置成按照所述分割点信息所指示的分割点,对所述目标文本行进行分割,得到所述目标文本行中所包含的各个字符。
10.根据权利要求9所述的装置,其中,所述文本行分割模型为卷积神经网络;以及
所述文本行分割模型是通过如下第一训练步骤训练得到的:
确定初始卷积神经网络的网络结构以及初始化所述初始卷积神经网络的网络参数;
获取训练样本集,其中,训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率;
将所述训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为所述初始卷积神经网络的输入和期望输出,利用机器学习方法训练所述初始卷积神经网络;
将训练得到的所述初始卷积神经网络确定为文本行分割模型。
11.根据权利要求9所述的装置,其中,所述文本行分割模型为卷积神经网络;以及
所述文本行分割模型是通过如下第二训练步骤训练得到的:
确定初始卷积神经网络的网络结构以及初始化所述初始卷积神经网络的网络参数;
获取训练样本集,其中,训练样本包括包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率;
将包含目标文本行的目标图像作为样本图像,以及将目标文本行中至少一个位置对应的至少一个预设的标签概率作为样本文本行中至少一个位置对应的至少一个概率添加到所述训练样本集中;
将添加后的训练样本集中的训练样本中包含样本文本行的样本图像和样本文本行中至少一个位置对应的至少一个概率分别作为所述初始卷积神经网络的输入和期望输出,利用机器学习方法训练所述初始卷积神经网络;
将训练得到的所述初始卷积神经网络确定为文本行分割模型。
12.根据权利要求11所述的装置,其中,预设的标签概率是通过如下步骤确定的:
将所述目标文本行中符合第一预设条件的位置确定为第一目标位置,将所述第一目标位置对应的标签概率设置为预设第一标签值;
将所述目标文本行中符合第二预设条件的位置确定为第二目标位置,将所述第二目标位置对应的标签概率设置为预设第二标签值;
针对所述目标文本行中至少一个字符中的字符,基于该字符中第一目标位置和该字符中第二目标位置,确定该字符中第三目标位置对应的标签概率,其中,所述第三目标位置位于该字符中第一目标位置与该字符中第二目标位置之间。
13.根据权利要求12所述的装置,其中,所述该字符中第三目标位置对应的标签概率是基于该字符中第一目标位置和该字符中第二目标位置,按照如下方式确定的:
将该字符中第二目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第一差值;
将该字符中第三目标位置与该字符中第一目标位置之间的距离之差的绝对值确定为第二差值;
确定所述第二差值与所述第一差值的比值,以及将预设数值与所述比值之差确定为该字符中第三目标位置对应的标签概率。
14.根据权利要求9所述的装置,其中,所述装置还包括:
处理单元,被配置成对包含目标文本行的图像进行处理,生成目标图像。
15.根据权利要求14所述的装置,其中,所述处理单元按照如下方式对包含目标文本行的图像进行处理:
将包含目标文本行的图像的高度调整为预设像素。
16.根据权利要求9-15之一所述的装置,其中,所述输出单元按照如下方式基于所得到的至少一个概率,输出所述目标文本行的分割点的分割点信息:
针对所述目标文本行中至少一个位置中的位置,在预设坐标系中确定该位置的坐标点,其中,所述坐标点在所述预设坐标系中的横坐标用于表征该位置与预设位置之间的距离,所述坐标点在所述预设坐标系中的纵坐标用于表征该位置对应的概率;
在所述至少一个位置所对应的至少一个概率中,确定至少一个极大值;
将所述至少一个极大值中满足目标条件的极大值确定为目标极大值;
针对确定出的至少一个目标极大值中的目标极大值,以该目标极大值对应的极值点为中心点,沿着所述预设坐标系的横坐标轴的正方向和负方向分别查找对应的概率小于预设第三数值、且与所述预设第三数值之差最小的位置点,将所述位置点确定为所述目标文本行的分割点,输出所述分割点的分割点信息。
17.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
18.一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-8中任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811534207.1A CN111325210B (zh) | 2018-12-14 | 2018-12-14 | 用于输出信息的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811534207.1A CN111325210B (zh) | 2018-12-14 | 2018-12-14 | 用于输出信息的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111325210A CN111325210A (zh) | 2020-06-23 |
CN111325210B true CN111325210B (zh) | 2024-06-18 |
Family
ID=71168324
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811534207.1A Active CN111325210B (zh) | 2018-12-14 | 2018-12-14 | 用于输出信息的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111325210B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105787482A (zh) * | 2016-02-26 | 2016-07-20 | 华北电力大学 | 一种基于深度卷积神经网络的特定目标轮廓图像分割方法 |
CN107622271A (zh) * | 2016-07-15 | 2018-01-23 | 科大讯飞股份有限公司 | 手写文本行提取方法及*** |
CN108830866A (zh) * | 2018-06-25 | 2018-11-16 | 北京达佳互联信息技术有限公司 | 图像分离方法、装置、计算机设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6473517B1 (en) * | 1999-09-15 | 2002-10-29 | Siemens Corporate Research, Inc. | Character segmentation method for vehicle license plate recognition |
US8391594B1 (en) * | 2009-05-28 | 2013-03-05 | Adobe Systems Incorporated | Method and apparatus for generating variable-width border masks |
CN103136523B (zh) * | 2012-11-29 | 2016-06-29 | 浙江大学 | 一种自然图像中任意方向文本行检测方法 |
AU2013273778A1 (en) * | 2013-12-20 | 2015-07-09 | Canon Kabushiki Kaisha | Text line fragments for text line analysis |
CN105989366A (zh) * | 2015-01-30 | 2016-10-05 | 深圳市思路飞扬信息技术有限责任公司 | 文本图像的倾斜角矫正、版面分析方法和助视装置、*** |
CN105373794B (zh) * | 2015-12-14 | 2018-02-06 | 河北工业大学 | 一种车牌识别方法 |
CN107180239B (zh) * | 2017-06-09 | 2020-09-11 | 科大讯飞股份有限公司 | 文本行识别方法及*** |
-
2018
- 2018-12-14 CN CN201811534207.1A patent/CN111325210B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105787482A (zh) * | 2016-02-26 | 2016-07-20 | 华北电力大学 | 一种基于深度卷积神经网络的特定目标轮廓图像分割方法 |
CN107622271A (zh) * | 2016-07-15 | 2018-01-23 | 科大讯飞股份有限公司 | 手写文本行提取方法及*** |
CN108830866A (zh) * | 2018-06-25 | 2018-11-16 | 北京达佳互联信息技术有限公司 | 图像分离方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111325210A (zh) | 2020-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108898086B (zh) | 视频图像处理方法及装置、计算机可读介质和电子设备 | |
US10991074B2 (en) | Transforming source domain images into target domain images | |
CN108830235B (zh) | 用于生成信息的方法和装置 | |
CN110795976B (zh) | 一种训练物体检测模型的方法、装置以及设备 | |
CN107507153B (zh) | 图像去噪方法和装置 | |
CN108230346B (zh) | 用于分割图像语义特征的方法和装置、电子设备 | |
CN107679466B (zh) | 信息输出方法和装置 | |
CN111340077B (zh) | 基于注意力机制的视差图获取方法和装置 | |
CN114186632B (zh) | 关键点检测模型的训练方法、装置、设备、存储介质 | |
CN110414502B (zh) | 图像处理方法及装置、电子设备和计算机可读介质 | |
CN109377508B (zh) | 图像处理方法和装置 | |
CN113128419B (zh) | 一种障碍物识别方法和装置、电子设备及存储介质 | |
CN110162657B (zh) | 一种基于高层语义特征和颜色特征的图像检索方法及*** | |
CN111881944A (zh) | 图像鉴别的方法、电子设备和计算机可读介质 | |
CN111914908A (zh) | 一种图像识别模型训练方法、图像识别方法及相关设备 | |
CN111709428B (zh) | 图像中关键点位置的识别方法、装置、电子设备及介质 | |
CN110827301B (zh) | 用于处理图像的方法和装置 | |
CN108305267B (zh) | 物体分割方法、装置、设备、存储介质及程序 | |
CN110969641A (zh) | 图像处理方法和装置 | |
CN108921792B (zh) | 用于处理图片的方法和装置 | |
CN112949706B (zh) | Ocr训练数据生成方法、装置、计算机设备及存储介质 | |
CN113516697A (zh) | 图像配准的方法、装置、电子设备及计算机可读存储介质 | |
CN113658196A (zh) | 红外图像中船舶的检测方法、装置、电子设备和介质 | |
CN113052143A (zh) | 手写数字生成方法和装置 | |
CN111325210B (zh) | 用于输出信息的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |