文本检测方法、装置、设备及存储介质与流程

文档序号:23900975发布日期:2021-02-09 13:35阅读:93来源:国知局
文本检测方法、装置、设备及存储介质与流程

[0001]
本申请涉及图像处理技术,尤其涉及一种文本检测方法、装置、设备及存储介质。


背景技术:

[0002]
文本检测应用范围广泛,是很多计算机视觉任务的前置步骤,其主要目的是定位文本行或字符在图像中的位置,文本的精准定位既十分重要又具备挑战,因为相较于通用目标检测来说,文字具有多方向、不规则形状、极端长宽比、字体、颜色、背景多样等特点,因此,在通用目标检测上较为成功的算法无法直接迁移到文本检测中。虽然,随着深度学习技术的兴起,提出了一些文本检测方法,但是,对于较密集的文本,比如,小学生的算术练习,一张图像上有100个文本区域,此时,现有方法的处理速率则会随着文本框数量的增长,而线性下降,因此,无法满足实际应用场景的需求,降低了用户体验。


技术实现要素:

[0003]
本申请实施例提供一种文本检测方法、装置、设备及存储介质,以解决相关技术存在的问题,技术方案如下:第一方面,本申请实施例提供了一种文本检测方法,包括:获取待处理文本图像的内缩文本曲线概率图,所述内缩文本曲线概率图能够表征所述待处理文本图像中像素点属于内缩文本曲线的概率值;获取所述待处理文本图像的起始点得分图以及所述起始点得分图中所对应起始点的特征值,所述起始点得分图能够表征所述待处理文本图像中像素点是否属于内缩文本曲线;基于所述起始点得分图所对应的各起始点、所述各起始点的特征值以及所述内缩文本曲线概率图所对应多个内缩文本曲线,确定所述待处理文本图像所对应的多个文本区域。
[0004]
在一种实施方式中,还包括:将所述待处理文本图像输入至预设模型,并从所述预设模型的第一分支输出内缩文本曲线概率图。
[0005]
在一种实施方式中,还包括:将所述待处理文本图像输入至预设模型,并从所述预设模型的第二分支输出所述起始点得分图,以及所述各起始点对应的特征值,其中,所述起始点得分图和所述各起始点对应的特征值从所述第二分支的不同通道中输出。
[0006]
在一种实施方式中,还包括:确定所述各起始点的坐标信息,以及确定所述内缩文本曲线的坐标信息;基于坐标信息,确定出所述起始点与所述内缩文本曲线之间的对应关系;其中,基于所述起始点得分图所对应的各起始点、所述各起始点的特征值以及所述内缩文本曲线,确定所述待处理文本图像所对应的多个文本区域,包括:基于所述起始点与所述内缩文本曲线之间的对应关系和所述起始点的特征值确定出
所述待处理文本图像所对应的多个文本区域。
[0007]
在一种实施方式中,所述各起始点的坐标信息,包括:对所述起始点得分图进行二值化处理,得到起始点二值图;对所述起始点二值图求取连通域,得到所述起始点二值图中所对应各起始点的坐标信息。
[0008]
在一种实施方式中,所述确定所述内缩文本曲线的坐标信息,包括:对所述内缩文本曲线概率图进行二值化处理,得到内缩文本曲线二值图;对所述内缩文本曲线二值图求取连通域,得到所述内缩文本曲线二值图所对应内缩文本曲线的坐标信息。
[0009]
在一种实施方式中,所述基于所述起始点与所述内缩文本曲线之间的对应关系和所述起始点的特征值确定出所述待处理文本图像所对应的多个文本区域,包括:基于所述起始点与所述内缩文本曲线之间的对应关系,确定各所述起始点对应的内缩文本曲线;以所述内缩文本曲线对应的起始点为圆心,以所述起始点对应特征值为半径,沿所述起始点对应的内缩文本曲线画圆处理,直至所述起始点对应的内缩文本曲线的终点为止;基于画圆处理所确定出的圆所在区域确定出所述内缩文本曲线所对应的文本区域,以得到所述待处理文本图像所对应的多个文本区域。
[0010]
第二方面,本申请实施例提供了一种文本检测装置,包括:第一获取单元,用于获取待处理文本图像的内缩文本曲线概率图,所述内缩文本曲线概率图能够表征所述待处理文本图像中像素点属于内缩文本曲线的概率值;第二获取单元,用于获取所述待处理文本图像的起始点得分图以及所述起始点得分图中所对应起始点的特征值,所述起始点得分图能够表征所述待处理文本图像中像素点是否属于内缩文本曲线;文本检测单元,用于基于所述起始点得分图所对应的各起始点、所述各起始点的特征值以及所述内缩文本曲线概率图所对应多个内缩文本曲线,确定所述待处理文本图像所对应的多个文本区域。
[0011]
在一种实施方式中,所述第一获取单元,还用于将所述待处理文本图像输入至预设模型,并从所述预设模型的第一分支输出内缩文本曲线概率图。
[0012]
在一种实施方式中,所述第二获取单元,还用于将所述待处理文本图像输入至预设模型,并从所述预设模型的第二分支输出所述起始点得分图,以及所述各起始点对应的特征值,其中,所述起始点得分图和所述各起始点对应的特征值从所述第二分支的不同通道中输出。
[0013]
在一种实施方式中,还包括坐标信息确定单元,其中,所述坐标信息确定单元,用于确定所述各起始点的坐标信息,以及确定所述内缩文本曲线的坐标信息;基于坐标信息,确定出所述起始点与所述内缩文本曲线之间的对应关系;所述文本检测单元,还用于基于所述起始点与所述内缩文本曲线之间的对应关系和所述起始点的特征值确定出所述待处理文本图像所对应的多个文本区域。
[0014]
在一种实施方式中,所述坐标信息确定单元,还用于:对所述起始点得分图进行二值化处理,得到起始点二值图;
对所述起始点二值图求取连通域,得到所述起始点二值图中所对应各起始点的坐标信息。
[0015]
在一种实施方式中,所述坐标信息确定单元,还用于:对所述内缩文本曲线概率图进行二值化处理,得到内缩文本曲线二值图;对所述内缩文本曲线二值图求取连通域,得到所述内缩文本曲线二值图所对应内缩文本曲线的坐标信息。
[0016]
在一种实施方式中,所述文本检测单元,还用于:基于所述起始点与所述内缩文本曲线之间的对应关系,确定各所述起始点对应的内缩文本曲线;以所述内缩文本曲线对应的起始点为圆心,以所述起始点对应特征值为半径,沿所述起始点对应的内缩文本曲线画圆处理,直至所述起始点对应的内缩文本曲线的终点为止;基于画圆处理所确定出的圆所在区域确定出所述内缩文本曲线所对应的文本区域,以得到所述待处理文本图像所对应的多个文本区域。
[0017]
第三方面,本申请实施例提供了一种文本检测设备,该设备包括:存储器和处理器。其中,该存储器和该处理器通过内部连接通路互相通信,该存储器用于存储指令,该处理器用于执行该存储器存储的指令,并且当该处理器执行该存储器存储的指令时,使得该处理器执行上述各方面任一种实施方式中的方法。
[0018]
第四方面,本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质存储计算机程序,当计算机程序在计算机上运行时,上述各方面任一种实施方式中的方法被执行。
[0019]
上述技术方案中的优点或有益效果至少包括:能够实现对文本图像,尤其是对文本图像中包含有多个文本区域的密集文本进行快速检测,提升了文本检测效率,进而满足了实际应用场景的需求,提升了用户体验。
[0020]
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本申请进一步的方面、实施方式和特征将会是容易明白的。
附图说明
[0021]
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本申请公开的一些实施方式,而不应将其视为是对本申请范围的限制。
[0022]
图1示出根据本申请实施例的文本识别方法的实现流程图;图2示出根据本申请实施例在一具体示例中的实现流程图;图3示出根据本申请实施例文本识别装置的结构示意图;图4示出根据本申请实施例文本识别设备的结构示意图。
具体实施方式
[0023]
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本申请的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。
因此,附图和描述被认为本质上是示例性的而非限制性的。
[0024]
图1示出根据本申请实施例的文件识别方法的实现流程图。如图1所示,该方法包括:步骤s101:获取待处理文本图像的内缩文本曲线概率图,所述内缩文本曲线概率图能够表征所述待处理文本图像中像素点属于内缩文本曲线的概率值。举例来说,所谓的内缩文本曲线指的是将这个文本区域沿竖直方向压缩成一条线,当然并非是真正意义上的一条线,这条线的宽度为若干个,如3个像素点,而水平方向并不进行压缩,因为,实际应用中,通常文本粘连一般都是上下,几乎没有水平粘连,尤其对于长曲文本而言。当然,对于不同场景的文本粘连,还可采用上述类似的方式得到相应地内缩文本曲线,本申请方案对此不作限制。
[0025]
步骤s102:获取所述待处理文本图像的起始点得分图以及所述起始点得分图中所对应起始点的特征值,所述起始点得分图能够表征所述待处理文本图像中像素点是否属于内缩文本曲线。这里,所述起始点得分图可以具体表征指像素点属于内缩文本曲线的起始点的概率值,所述对应起始点的特征值,可以做该起始点所对应的半径值,进而为后续精确得到文本区域奠定了基础。
[0026]
步骤s103:基于所述起始点得分图所对应的各起始点、所述各起始点的特征值以及所述内缩文本曲线概率图所对应多个内缩文本曲线,确定所述待处理文本图像所对应的多个文本区域。
[0027]
这里,需要说明的是,实际应用中,步骤s101和步骤s102的执行顺序不限,即可以获取内缩文本曲线概率图,再获取起始点得分图及特种值,或者先获取起始点得分图及特种值,再获取内缩文本曲线概率图,本申请方案对此不作限制。
[0028]
如此,本申请方案基于起始点得分图所对应的各起始点、特征值,以及内缩文本曲线概率图所对应多个内缩文本曲线,即可实现对文本图像,尤其是对文本图像中包含有多个文本区域的密集文本进行快速检测,提升了文本检测效率,进而满足了实际应用场景的需求,提升了用户体验。
[0029]
在本申请方案的一具体示例中,还包括:将所述待处理文本图像输入至预设模型,并从所述预设模型的第一分支输出内缩文本曲线概率图。也就是说,实际应用中,可以利用预设模型的第一分支来得到内缩文本曲线概率图,比如,第一分支使用像素聚合网络(pan,pixel aggregation network)结构来得到预测内缩文本曲线概率图。综合pan的经验,在对pan进行模型训练的过程中,可以使用pan对真实文本区域和基于内缩文本曲线概率图得到的内缩文本的关系得到的损失函数,如dice loss进行训练,以提升得到的内缩文本曲线概率图的精准度,如此,使用训练完成后的pan结构即可得到内缩文本曲线概率图,以提升处理效率,同时,为后续精准且快速的进行文本区域的检测奠定了基础。
[0030]
在本申请方案的一具体示例中,还包括:将所述待处理文本图像输入至预设模型,并从所述预设模型的第二分支输出所述起始点得分图,以及所述各起始点对应的特征值,其中,所述起始点得分图和所述各起始点对应的特征值从所述第二分支的不同通道中输出。也就是说,实际应用中,可以利用预设模型的第二分支来得到起始点得分图和各起始点对应的特征值,比如,第二分支使用可微分二值化方法(db,real-time scene text detection with differentiable binarization)结构以及centernet来得到起始点得分
图及各起始点对应的特征值(可以作为圆的半径),也就是说,该第二分支输出结果为2通道,即第一个通道表示起始点得分图(即像素点是否属于起始点,比如,属于起始点,则得分为1,不属于,得分为0),这里,在对db结构的第一个通道进行模型训练的过程中,可以使用centernet中focalloss对真实起始点图和预测得到的起始点得分图之间关系来进行训练,如此,利用训练完成后的db结构中的第一个通道,即可得到起始点得分图,如此,提升得到的起始点得分图的准确率。第二个通道表示以起始点为圆的半径,可称为半径值,这里,实际应用中,在对db结构的第二个通道进行训练的过程中,可以使用平滑l1损失函数对真实半径值与预测到的半径值之间的差距来进行训练,如此,使用训练完成后的db结构的第二个通道来得到各起始点的特征值,以提升预测得到的半径值的精准度。同时,为后续精准且快速的进行文本区域的检测奠定了基础。
[0031]
在本申请方案的一具体示例中,还包括:确定所述各起始点的坐标信息,以及确定所述内缩文本曲线的坐标信息;基于坐标信息,确定出所述起始点与所述内缩文本曲线之间的对应关系;其中,上述基于所述起始点得分图所对应的各起始点、所述各起始点的特征值以及所述内缩文本曲线,确定所述待处理文本图像所对应的多个文本区域,包括:基于所述起始点与所述内缩文本曲线之间的对应关系和所述起始点的特征值确定出所述待处理文本图像所对应的多个文本区域。也就是说,基于坐标信息来确定出起始点与所述内缩文本曲线之间的对应关系,如此,进而来实现对文本图像,尤其是对文本图像中包含有多个文本区域的密集文本进行快速检测,提升了文本检测效率,满足了实际应用场景的需求,提升了用户体验。
[0032]
在本申请方案的一具体示例中,可以采用如下方式来得到起始点的坐标信息,即上述确定各起始点的坐标信息,包括:对所述起始点得分图进行二值化处理,得到起始点二值图;对所述起始点二值图求取连通域,得到所述起始点二值图中所对应各起始点的坐标信息。如此,为后续基于坐标信息来确定出起始点与内缩文本曲线之间的对应关系奠定了基础,进而为精确得到文本区域奠定了基础。
[0033]
在本申请方案的一具体示例中,还可以如下方式来得到内缩文本曲线的坐标信息,具体地,上述确定所述内缩文本曲线的坐标信息,包括:对所述内缩文本曲线概率图进行二值化处理,得到内缩文本曲线二值图;对所述内缩文本曲线二值图求取连通域,得到所述内缩文本曲线二值图所对应内缩文本曲线的坐标信息。如此,为后续基于坐标信息来确定出起始点与内缩文本曲线之间的对应关系奠定了基础,进而为精确得到文本区域奠定了基础。
[0034]
在本申请方案的一具体示例中,所述基于所述起始点与所述内缩文本曲线之间的对应关系和所述起始点的特征值确定出所述待处理文本图像所对应的多个文本区域,包括:基于所述起始点与所述内缩文本曲线之间的对应关系,确定各所述起始点对应的内缩文本曲线;以所述内缩文本曲线对应的起始点为圆心,以所述起始点对应特征值为半径,沿所述起始点对应的内缩文本曲线画圆处理,直至所述起始点对应的内缩文本曲线的终点为止;基于画圆处理所确定出的圆所在区域确定出所述内缩文本曲线所对应的文本区域,以得到所述待处理文本图像所对应的多个文本区域。也就是说,通过圆滚动的方式来得到真实文本区域,如此,增强检测效果的同时,全面的提升密集文本检测的速度。
[0035]
具体地,在根据坐标信息,得到每个起始点与每条内缩文本曲线的对应关系之后,
从起始点开始,利用其预测到的半径值(也即该起始点对应的特征值),进行画圆处理,得到第一个圆,其中,该圆的水平半径要落在内缩文本曲线上,然后根据第一个圆的水平半径的结束点(以该结束点对应的特征值为半径)继续画圆,两个圆相交,依次循环上述操作,直到内缩文本曲线上的最后一个点为止,宏观来看,就像一个圆的圆心沿着内缩文本曲线进行滚动,进而将所有圆所对应的区域作为真实文本区域。实际应用中,对于不同的内缩文本曲线而言,可以并行处理,比如,使用图形处理器(gpu,graphics processing unit)进行并行处理,以在完成密集文本检测的同时,提升检测效率。
[0036]
这样,能够实现对文本图像,尤其是对文本图像中包含有多个文本区域的密集文本进行快速检测,提升了文本检测效率,进而满足了实际应用场景的需求,提升了用户体验。
[0037]
以下结合具体示例来对本申请方案做进一步详细说明,具体地,本示例结合像素聚合网络(pan,pixel aggregation network)结构、可微分二值化(db,differentiable binarization)结构和中心网络(centernet)三者优势思路,将分割与回归的方法结合起来,使用一种全新的文本检测思路,通过求取文本区域内缩曲线来找到对应的密集文本,然后通过圆滚动的思路得到真实文本区域,以期在增强检测效果的同时,全面的提升密集文本检测的速度。
[0038]
这里,本示例所使用的预设模型使用到pan结构、db结构以及centernet;具体地,在模型训练阶段,类似于pan和db,使用resnet18网络模型作为基础网络模型,这里,本示例所使用的resnet18网络由4个block块串联构建,每个block块包括若干层卷积操作,其中,第一个block块输出的特征映射大小为原图的1/4,第二个block输出的特征映射大小为原图1/8,第三个block输出的特征映射大小为原图1/16,第四个block输出的特征映射大小为原图1/32,然后将上述4个block块输出的四组特征映射全部通过插值的方式将其大小变为原图1/4大小并串联,得到一组特征映射,其通道数量为512。
[0039]
进一步地,在db中,再次进行特征提取,即再经过一次卷积操作,两次反卷积操作,输出一个2通道的特征映射图;该处理过程中,每个block块输出的特征映射数量都为128。
[0040]
至此分为两个分支,即:第一个分支:使用pan结构来得到预测内缩文本曲线概率图,具体地,对上述512通道的特征映射做一次卷积操作,两次反卷积操作,输出与原图大小一致的1通道的特征映射,其中该通道输出的结果表示内缩文本曲线概率图,这里,所谓的内缩文本曲线指的是将这个文本区域沿竖直方向压缩成一条线,当然并非是真正意义上的一条线,这条线的宽度为3个像素点,水平方向并不进行压缩,因为文本粘连一般都是上下,几乎没有水平粘连,尤其对于长曲文本而言。这里,综合pan的经验,可以使用pan对真实文本区域和基于内缩文本曲线概率图得到的内缩文本的关系得到的损失函数,如下述dice loss进行训练,以提升得到的内缩文本曲线概率图的精准度,该dice loss的函数表达如下:其中,p
tex
(i)指第i个像素点的预测值,g
tex
(i)指第i个像素点的真实值,这里关于内缩文本曲线概率图的标签为人工制作的内缩文本曲线二值图。
[0041]
第二个分支:使用db结构以及centernet来得到起始点得分图及各起始点对应的圆的半径,这里的起始点指在内缩文本曲线上的起始点,具体地,该分支输出结果也为2通道,即第一个通道表示起始点得分图(即像素点是否属于起始点,比如,属于起始点,则得分为1,不属于,得分为0),这里,可以使用centernet中focalloss对真实起始点图和预测得到的起始点得分图之间关系来进行训练,以提升得到的起始点得分图的准确率。这里,focalloss的函数表达如下:其中,x,y表征坐标位置,c表征通道;n表征所有通道数,表征坐标为(x,y)且通道为c的预测值;表征坐标为(x,y)通道为c的真实值。这里,所有像素点的数量等于。
[0042]
第二个通道表示以起始点为圆心的圆的半径,可称为半径值,这里,可使用平滑l1损失函数对真实半径值与预测到的半径值之间的差距来进行训练,以提升预测得到的半径值的精准度。
[0043]
进一步地,在模型使用阶段,基于输入的待处理图像得到两个分支的输出后,分别根据指定阈值将内缩文本曲线概率图和起始点得分图进行二值化处理,这里,内缩文本曲线概率图对应的阈值设置相对低,起始点得分图对应的阈值设置相对高,得到内缩文本曲线二值图和起始点二值图,然后对两个图,即内缩文本曲线二值图和起始点二值图分别求取连通域,并基于各自得到的坐标信息得到每个起始点与每条内缩文本曲线的对应关系,然后从起始点开始,利用其预测到的半径值(即与该起始点对应的半径值),得到第一个圆,圆的水平半径落在该内缩文本曲线上,然后根据第一个圆的水平半径的结束点继续画圆,两个圆相交,依次循环操作,直到内缩文本曲线的最后一个点截止,宏观来看,就像一个圆的圆心沿着内缩文本曲线进行滚动,最终得到的所有圆所包含的区域即为真实文本区域,如此,得到输入的待处理图像对应所有真实文区域,这样,既有效解决了文本粘连的问题,同时也不存在内缩文本曲线外扩的问题,有效提升了密集文本检测的效率。
[0044]
如图2所示,具体步骤包括:第一步,将密集文本图像输入预设模型中的resnet18网络,进行特征提取,得到特征1,该特征1可以具体包括4组大小不同的多通道特征映射,也即4组特征。
[0045]
这里,类似于pan和db,使用resnet18网络模型作为基础网络模型,对输入的文本图像提取纹理、边缘、角点和语义信息等特征,这些特征由4组大小不同的多通道特征映射表征。然后将提取得到的特征经过2个特征金字塔增强模块(fpem,feature pyramid enhancement module)再次提取纹理、边缘、角点和语义信息等特征。具体地,本示例所使用的resnet18网络由4个block块串联构建,每个block块包括若干层卷积操作,其中,第一个block块输出的特征映射大小为原图的1/4,第二个block输出的特征映射大小为原图1/8,第三个block输出的特征映射大小为原图1/16,第四个block输出的特征映射大小为原图1/32。进一步地,实际应用中,还可将将上述4个block块输出的四组特征映射全部通过插值的
方式将其大小变为原图1/4大小并串联,得到一组特征映射(即特征1),其通道数量为512。
[0046]
第二步,将第一步提取到的特征1经过上采样和串联后得到一组特征映射,该一组特征映射经过预设模型中的两个fpem模块,再次提取得到特征2,该特征2包括4组特征映射。
[0047]
这里,选择2个fpem模块的原因是,因为在实验结果中,2个能达到最好的效果。每个fpem模块所做的处理是相同的,具体细节包括:对上一步骤得到的4组(即四个block输出的)大小不同的多通道特征映射,按照从大到小的,从前往后的次序,依次称为正向第一、正向第二、正向第三、正向第四组特征映射,先对正向第四组特征映射进行2倍上采样,即将其大小扩大2倍,然后将其与正向第三组特征映射按照通道逐点相加,对结果进行一次深度可分离卷积操作之后,再进行一次卷积、批归一化和激活函数作用操作,得到的结果称为反向第二组特征映射,同样的操作用于反向第二组特征映射和正向第二组特征映射得到反向第三组特征映射,然后同样的操作作用于反向第三组特征映射和正向第一组特征映射,得到反向第四组特征映射,同时将正向第四组特征映射视为反向第一组特征映射,由此得到4组反向特征映射;将第四组反向特征映射作为目标第一组特征映射,然后对目标第一组特征映射进行2倍下采样,即大小缩小2倍,然后将其与反向第三组特征映射按通道逐点相加,对结果进行一次深度可分离卷积操作之后,再进行一次卷积、批归一化和激活函数作用操作,得到的结果称为目标第二组特征映射,同样的操作作用于目标第二组特征映射和反向第二组特征映射,得到目标第三组特征映射,然后同样的操作作用于目标第三组特征映射和反向第一组特征映射,得到目标第四组特征映射,目标第一、目标第二、目标第三和目标第四组特征映射便是ffem模块的输出;第2个ffem模块是以第1个ffem模块的输出作为输入,进行同样的操作,得到输出。
[0048]
第三步,将第二步得到的4组特征映射的特征图的大小全部上采样到原图的1/4大小,并串联在一起,得到一组特征映射,其通道数量为512。
[0049]
第四步,对第三步得到特征映射进行一次卷积操作,两次反卷积操作,输出特征映射通道为1,特征映射大小与原图大小一致的特征映射,其表示内缩文本曲线概率图。
[0050]
第五步,使用pan用于训练真实文本区域和内缩文本的dice loss对第四步的输出进行训练。
[0051]
第六步,对第三步得到的特征映射进行一次卷积操作,两次反卷积操作,输出的特征映射通道为2,各通道中输出的特征映射大小与原图大小一致,其第一个通道输出结果表示起始点得分图,第二个通道输出结果表示对应起始点的半径值。
[0052]
第七步,使用centernet用于训练中心点的focal loss对第六步第一个通道的输出进行训练,使用平滑l1损失函数对第六步第二个通道的输出进行训练。
[0053]
基于以上步骤即为预设模型的训练步骤,在训练完成后,即可利用该预设模型进行密集文本检测。具体检测步骤如下:第八步,在预测阶段,对于待预测图像(也即待处理文本图像),采用第四步的方式,得到待预测图像对应的内缩文本曲线概率图,并根据指定阈值将该内缩文本曲线概率图进行二值化处理,得到内缩文本曲线二值图,并求取连通域后,得到内缩文本曲线点的坐标信息;第九步,类似的,对于待预测图像而言,采用第六步的方式,得到待预测图像的起始点
得分图以及每个起始点对应的半径值,根据指定阈值将该起始点得分图进行二值化处理,并求取连通域后,得到每个起始点对应的坐标信息;第十步,根据坐标信息,得到每个起始点与每条内缩文本曲线的对应关系;第十一步,从起始点开始,利用其预测到的半径值,得到第一个圆,其中,圆的水平半径要落在内缩文本曲线上,然后根据第一个圆的水平半径的结束点(以该结束点对应的特征值为半径)继续画圆,两个圆相交,依次循环上述操作,直到内缩文本曲线上的最后一个点为止,宏观来看,就像一个圆的圆心沿着内缩文本曲线进行滚动,最终将所有圆所对应的区域作为真实文本区域。
[0054]
第十二步,对于不同的内缩文本曲线而言,并行处理,以完成密集文本检测。
[0055]
综上所述,能够实现对文本图像,尤其是对文本图像中包含有多个文本区域的密集文本进行快速检测,提升了文本检测效率,进而满足了实际应用场景的需求,提升了用户体验。
[0056]
图3示出根据本申请实施例文本识别装置的结构示意图。如图3所示,该装置可以包括:第一获取单元301,用于获取待处理文本图像的内缩文本曲线概率图,所述内缩文本曲线概率图能够表征所述待处理文本图像中像素点属于内缩文本曲线的概率值;第二获取单元302,用于获取所述待处理文本图像的起始点得分图以及所述起始点得分图中所对应起始点的特征值,所述起始点得分图能够表征所述待处理文本图像中像素点是否属于内缩文本曲线;文本检测单元303,用于基于所述起始点得分图所对应的各起始点、所述各起始点的特征值以及所述内缩文本曲线概率图所对应多个内缩文本曲线,确定所述待处理文本图像所对应的多个文本区域。
[0057]
在本申请方案的一具体示例中,所述第一获取单元,还用于将所述待处理文本图像输入至预设模型,并从所述预设模型的第一分支输出内缩文本曲线概率图。
[0058]
在本申请方案的一具体示例中,所述第二获取单元,还用于将所述待处理文本图像输入至预设模型,并从所述预设模型的第二分支输出所述起始点得分图,以及所述各起始点对应的特征值,其中,所述起始点得分图和所述各起始点对应的特征值从所述第二分支的不同通道中输出。
[0059]
在本申请方案的一具体示例中,还包括坐标信息确定单元,其中,所述坐标信息确定单元,用于确定所述各起始点的坐标信息,以及确定所述内缩文本曲线的坐标信息;基于坐标信息,确定出所述起始点与所述内缩文本曲线之间的对应关系;所述文本检测单元,还用于基于所述起始点与所述内缩文本曲线之间的对应关系和所述起始点的特征值确定出所述待处理文本图像所对应的多个文本区域。
[0060]
在本申请方案的一具体示例中,所述坐标信息确定单元,还用于:对所述起始点得分图进行二值化处理,得到起始点二值图;对所述起始点二值图求取连通域,得到所述起始点二值图中所对应各起始点的坐标信息。
[0061]
在本申请方案的一具体示例中,所述坐标信息确定单元,还用于:对所述内缩文本曲线概率图进行二值化处理,得到内缩文本曲线二值图;
对所述内缩文本曲线二值图求取连通域,得到所述内缩文本曲线二值图所对应内缩文本曲线的坐标信息。
[0062]
在本申请方案的一具体示例中,所述文本检测单元,还用于:基于所述起始点与所述内缩文本曲线之间的对应关系,确定各所述起始点对应的内缩文本曲线;以所述内缩文本曲线对应的起始点为圆心,以所述起始点对应特征值为半径,沿所述起始点对应的内缩文本曲线画圆处理,直至所述起始点对应的内缩文本曲线的终点为止;基于画圆处理所确定出的圆所在区域确定出所述内缩文本曲线所对应的文本区域,以得到所述待处理文本图像所对应的多个文本区域。
[0063]
本发明实施例各装置中的各模块的功能可以参见上述方法中的对应描述,在此不再赘述。
[0064]
图4示出根据本发明一实施例的文本检测设备的结构框图。如图4所示,该文本检测设备包括:存储器410和处理器420,存储器410内存储有可在处理器420上运行的计算机程序。处理器420执行该计算机程序时实现上述实施例中的文本检测方法。存储器410和处理器420的数量可以为一个或多个。
[0065]
该文本检测设备还包括:通信接口430,用于与外界设备进行通信,进行数据交互传输。
[0066]
如果存储器410、处理器420和通信接口430独立实现,则存储器410、处理器420和通信接口430可以通过总线相互连接并完成相互间的通信。该总线可以是工业标准体系结构(industry standard architecture,isa)总线、外部设备互连(peripheral componentinterconnect,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0067]
可选的,在具体实现上,如果存储器410、处理器420及通信接口430集成在一块芯片上,则存储器410、处理器420及通信接口430可以通过内部接口完成相互间的通信。
[0068]
本发明实施例提供了一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现本申请实施例中提供的方法。
[0069]
本申请实施例还提供了一种芯片,该芯片包括,包括处理器,用于从存储器中调用并运行存储器中存储的指令,使得安装有芯片的通信设备执行本申请实施例提供的方法。
[0070]
本申请实施例还提供了一种芯片,包括:输入接口、输出接口、处理器和存储器,输入接口、输出接口、处理器以及存储器之间通过内部连接通路相连,处理器用于执行存储器中的代码,当代码被执行时,处理器用于执行申请实施例提供的方法。
[0071]
应理解的是,上述处理器可以是中央处理器(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processing,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(fieldprogrammablegate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。值得说明的是,处理器可以是支持进阶精简指令集机器(advanced risc machines,arm)架构的处理器。
[0072]
进一步地,可选的,上述存储器可以包括只读存储器和随机存取存储器,还可以包括非易失性随机存取存储器。该存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以包括只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以包括随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用。例如,静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic random access memory,dram) 、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data datesdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(directrambus ram,dr ram)。
[0073]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。
[0074]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包括于本申请的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0075]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0076]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分。并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能。
[0077]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
[0078]
应理解的是,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软
件或固件来实现。上述实施例方法的全部或部分步骤是可以通过程序来指令相关的硬件完成,该程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0079]
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。上述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。该存储介质可以是只读存储器,磁盘或光盘等。
[0080]
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1