CN112232315A - 文本框检测方法、装置、电子设备和计算机存储介质 - Google Patents
文本框检测方法、装置、电子设备和计算机存储介质 Download PDFInfo
- Publication number
- CN112232315A CN112232315A CN202011435586.6A CN202011435586A CN112232315A CN 112232315 A CN112232315 A CN 112232315A CN 202011435586 A CN202011435586 A CN 202011435586A CN 112232315 A CN112232315 A CN 112232315A
- Authority
- CN
- China
- Prior art keywords
- detection frames
- small
- channels
- small detection
- frames
- 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.)
- Granted
Links
Images
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/40—Document-oriented image-based pattern recognition
- G06V30/41—Analysis of document content
- G06V30/412—Layout analysis of documents structured with printed lines or input boxes, e.g. business forms or tables
-
- 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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- General Engineering & Computer Science (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
本申请公开了一种文本框检测方法、装置、电子设备和计算机存储介质。具体实现方案为包括:将目标图像输入目标模型,得到所述目标模型输出的多个通道;其中,所述多个通道包括N个大检测框的预测信息以及M个小检测框的预测信息;其中,N和M均为大于等于1的整数;基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框;基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点;K为大于1的整数;基于所述N个大检测框内的所述K个标注坐标点,确定所述目标图像中包含的N个目标文本框。
Description
技术领域
本申请涉及图像处理领域,尤其涉及一种文本框检测方法、装置、电子设备和计算机存储介质。
背景技术
目前针对文本框的检测通常采用CenterNet,该CenterNet是一种通用的目标检测。但是利用CenterNet进行密集文本检测的效果较差,这是因为在实际密集文本场景中,存在大量长宽比很大的长曲文本框,利用CenterNet进行检测往往会出现框不全或者框住大量背景图像的问题。
发明内容
为了解决现有技术中上述至少一个问题,本申请实施例提供一种文本框检测方法、装置、电子设备和计算机存储介质。
第一方面,本申请实施例提供一种文本框检测方法,所述方法包括:
将目标图像输入目标模型,得到所述目标模型输出的多个通道;其中,所述多个通道包括N个大检测框的预测信息以及M个小检测框的预测信息;其中,N和M均为大于等于1的整数;
基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框;
基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点;K为大于1的整数;
基于所述N个大检测框内的所述K个标注坐标点,确定所述目标图像中包含的N个目标文本框。
第二方面,本申请实施例提供一种文本框检测装置,所述装置包括:
通道获取单元,用于将目标图像输入目标模型,得到所述目标模型输出的多个通道;其中,所述多个通道包括N个大检测框的预测信息以及M个小检测框的预测信息;其中,N和M均为大于等于1的整数;
检测框获取单元,基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框;
标注坐标点获取单元,基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点;K为大于1的整数;
目标文本框确定单元,基于所述N个大检测框内的所述K个标注坐标点,确定所述目标图像中包含的N个目标文本框。
第三方面,本申请实施例提供一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请任意一项实施例所提供的方法。
第四方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请任意一项实施例所提供的方法。
上述申请中的实施例具有如下优点或有益效果:将待检测图像输入到预设模型中,得到所述待检测图像所对应的多个通道,基于通道确定出待检测图像中的至少一个大检测框及至少一个小检测框,基于大检测框和小检测框间的对应关系得到大检测框包含的小检测框以及大检测框包含的小检测框之间的相对位置关系,进而基于小检测框确定多个文本标注点确定出最终的文本区域。如此,可以避免文本区域框不全的问题,并且由于通过大检测框包含的小检测框来确定多个标注点,这样也可以避免文本框内出现大量无用背景的问题,从而可以保证对待检测图像的文本框的检测速度的同时保证最终得到的文本框更加准确,提升了文本框的检测效果。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请实施例的文本框检测方法流程示意图一;
图2是根据本申请实施例的文本框中心点得分示意图;
图3是根据本申请实施例的文本框检测方法流程示意图二;
图4是根据本申请实施例的文本框检测方法流程示意图三;
图5是根据本申请实施例的文本框检测方法示意图;
图6是根据本申请实施例的文本框检测方法流程示意图四;
图7是根据本申请实施例的文本框检测装置结构示意图一;
图8是根据本申请实施例的文本框检测装置结构示意图二;
图9是根据本申请实施例的电子设备组成结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
第一方面,本申请实施例提供一种文本框检测方法,如图1所示,包括:
S101:将目标图像输入目标模型,得到所述目标模型输出的多个通道;其中,所述多个通道包括N个大检测框的预测信息以及M个小检测框的预测信息;其中,N和M均为大于等于1的整数;
S102:基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框;
S103:基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点;K为大于1的整数;
S104:基于所述N个大检测框内的所述K个标注坐标点,确定所述目标图像中包含的N个目标文本框。
本申请实施例可以应用于电子设备,具体来说可以是终端设备或服务器。
上述S101中,所述目标图像可以为任意一个包含文字的图像,比如,可以是电子设备获取到的任意一张包含文字的图像;这里,所述电子设备获取任意一张包含文字的图像,或者所述电子设备获取目标图像的方式,可以是通过摄像头预先拍摄的包含文字的图像,又或者,可以从其他电子设备获取。
再进一步地,本申请实施例尤其适用于所述目标图像中包含长曲文本的处理。长曲文本可以理解为图像中包含的一个或多个文字的轮廓的最低点并非在同一直线上。
具体的,S101中,所述将目标图像输入目标模型,得到所述目标模型输出的多个通道,包括:
将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图;
将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述多个通道。
其中,所述目标模型中的所述第一网络模型负责将原图转变为高维特征,例如对输入图像提取纹理、边缘、角点和语义信息等特征。第一网络模型由经典的卷积神经网络构成,具体可以为Resnet18网络(Deep residual network,深度残差网络)。
一种示例中,所述目标模型中的第一网络模型,也就是Resnet18网络,可以包括4个残差块(为了简化说明,后续称为block);具体可以是由4个残差块串联构建得到所述第一网络模型,也就是Resnet18网络。
其中,每个block包括若干个具有残差连接的卷积层和池化层,用于将前一级输出的特征图的尺寸降低一倍。举例来说,第一个block输出的特征映射大小为原图的1/4, 第二个为原图1/8,第三个为原图1/16,第四个为原图1/32。
具体的,所述将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图,可以包括:
4个block依次串接在Resnet18网络的输入层后面,当输入的目标图像为512*512时,4个block的输出分别为:256*256、128*128、64*64、32*32。其中,每组特征图的数量都是128个,这4组特征图包含了不同尺度的信息。
本实施例中,每个block输出的特征图数量都比较小,而不是像其他网络模型一样输出成百上千的宽度。这种连接方式使特征的传递更加有效,模型的训练也就更加容易。
在所述目标模型的第一网络模型输出特征图之后,可以将特征图输入第二网络模型;相应的,所述将特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述多个通道,包括:
将输入的所述特征图进行串联得到特征映射;
对所述特征映射进行一次卷积操作以及两次反卷积操作,输出与所述目标图像大小一致的所述多个通道。
其中,所述目标模型中的所述第二网络模型与第一网络模型的各block保持连接,第一网络模型输出的特征图被输入至第二网络模型部分,第二网络模型再次提取纹理、边缘、角点和语义信息等特征,完成特征信息重组。其中,第二网络模型可以包括上采样层和通道维度注意力层,上采样层可以用来调整block输出的特征图的大小,例如将各个尺度的特征图重组并放缩到同一尺度;通道维度注意力层用于融合调整后的多个特征图并得到一个多通道的特征映射。
一种示例中,所述第二网络模型具体可以是DB网络(Real-time Scene TextDetection with Differentiable Binarization,可微分二值化网络)。又一种示例中,第二网络模型的上采样层将上述四组特征图全部通过插值的方式将其大小变为原图1/4大小并串联,得到一组通道数量为512的特征映射。接着通过通道注意力层对上述512通道的特征映射做一次卷积操作,两次反卷积操作,得到与输入图像大小一致的多通道输出。其中,多通道输出可以根据需要进行设定,举例来说可以包括中心点概率图、距离图等。
上述S101中,所述多个通道中所述N个大检测框的预测信息,包括:所述N个大检测框的中心点得分图、所述N个大检测框的中心点的偏移量、所述N个大检测框的预测宽度值以及预测高度值。
所述多个通道中所述M个小检测框的预测信息,包括:所述M个小检测框的中心点得分图、所述M个小检测框的中心点的偏移量、所述M个小检测框的预测宽度值以及预测高度值、所述M个小检测框分别对应的旋转角度。
其中,所述N个大检测框的中心点得分图可以包括:所述N个大检测框的中心点的概率得分图。也就是说,多个输出通道中的一个会为所输入的图像输出一个得分图,如图2所示,得分图中的每个像素点对应一个分数,代表相应的像素点可能作为大检测框中心点的概率值。概率得分图中的分值均为0到1之间的小数,例如可以是0.11,0.34,0.52,0.89等,这里不做穷举。
每个输入图像可能有N个大检测框,那么就对应N个中心点,可以根据实际情况设定一个阈值,当像素点的得分大于该阈值时,认为该像素点是某个大检测框的中心点。所述阈值可以是人工预先设定的,也可以根据输入图像的实际情况,由模型计算后自动进行设定。举例来说,当人工预设得分图的阈值为0.70时,输入图像中得分为0.81、0.79、0.92对应的像素点即为模型预测的大检测框中心点,其他得分较低的点则不是中心点。此处阈值的设定还可以设定为其他值,这里不做穷举。
所述N个大检测框的中心点的偏移量可以包括:所述N个大检测框分别对应的x轴偏移量、所述N个大检测框分别对应的y轴偏移量。由于在预测的过程中,并不能保证得分最高的点就一定是大检测框的中心点,也就是说预测到的中心点可能与真实的中心点发生一定量的偏移,因此还会用两个通道来预测中心点的偏移量。例如,以上述根据特定阈值得到的一个中心点像素作为坐标原点,通道输出的x轴偏移量为3,y轴偏移量为-2,那么对应的大检测框的实际中心点的坐标为(3,-2)。上述偏移量用于表示像素间的距离值,当然也可以是其他正整数值,这里不做穷举。
所述N个大检测框的预测宽度值、所述N个大检测框的预测高度值具体指的是:所述N个大检测框分别对应的预测宽度值、所述N个大检测框分别对应的预测高度值。根据上述内容对中心点位置调整后,得到实际情况下大检测框中心点所处的位置。上述输出通道可以输出多个距离信息,结合中心点位置确认大检测框的边界所在位置。例如,输出的距离信息可以是大检测框两组对边的两个距离值,还可以是中心点距离大检测框一组邻边的两个距离值,这里不做限定。两个距离值分别对应预测宽度值和预测高度值。
所述M个小检测框的中心点得分图可以包括:所述M个小检测框的中心点的概率得分图。多个输出通道中的一个会为所输入的图像输出另一个得分图,得分图中的每个像素点对应一个分数,代表相应的像素点可能作为小检测框中心点的概率值。其中,概率值的选取以及阈值的设定不再赘述。
所述M个小检测框的中心点的偏移量可以包括:所述M个小检测框分别对应的x轴偏移量、所述M个小检测框分别对应的y轴偏移量。通过所获取的x轴偏移量和y轴偏移量可以找到小检测框实际对应的中心点位置,实施方式同上,不再赘述。
所述M个小检测框的预测宽度值以及预测高度值可以包括:所述M个小检测框分别对应的预测宽度值、所述M个小检测框分别对应的高度预测值。输出通道可以输出多个预测宽度值、预测高度值,结合中心点位置确定小检测框的边界所在位置。实施方式同上,不再赘述。
所述M个小检测框分别对应的旋转角度可以是小检测框的长边与水平方向的夹角,也可以是小检测框的宽边与竖直方向的夹角,这里不做限定。
示例性的,上述多个通道,包括以下11个通道:
第一通道,用于表示所述N个大检测框的中心点得分图;
第二通道,用于表示所述N个大检测框的中心点x轴偏移量;
第三通道,用于表示所述N个大检测框的中心点y轴偏移量;
第四通道,用于表示所述N个大检测框的预测宽度值;
第五通道,用于表示所述N个大检测框的预测高度值;
第六通道,用于表示所述M个小检测框的中心点得分图;
第七通道,用于表示所述M个小检测框的中心点x轴偏移量;
第八通道,用于表示所述M个小检测框的中心点y轴偏移量;
第九通道,用于表示所述M个小检测框的预测宽度值;
第十通道,用于表示所述M个小检测框的预测高度值;
第十一通道,用于表示所述M个小检测框对应的旋转角度。
上述S102中,基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框,具体可以包括:
基于所述多个通道确定所述目标图像所对应的N个大检测框,以及基于所述多个通道确定所述目标图像所对应的M个小检测框;
基于所述N个大检测框以及M个小检测框的相对位置,确定所述N个大检测框内的多个小检测框。
上述N个大检测框以及M个小检测框,具体可以指的是:N个大检测框的边框坐标,以及M个小检测框的边框坐标。其中,坐标可以指的是相对于目标图像的相对坐标;其中,相对坐标所对应的坐标系为xy坐标系,该坐标系可以将所述目标图像的左上顶点作为原点。
一种优选的示例中,上述N个大检测框中的每一个大检测框中包含6个小检测框。
其中,基于所述多个通道确定所述目标图像所对应的N个大检测框,如图3示,包括:
S201:基于所述多个通道中所述N个大检测框的中心点得分图,确定N个大检测框的中心点的预测位置坐标;
S202:基于所述多个通道中所述N个大检测框的中心点的偏移量,分别对所述N个大检测框的中心点的预测位置坐标进行调整,得到调整后的所述N个大检测框的中心点位置坐标;
S203:基于所述多个通道中所述N个大检测框的预测宽度值以及预测高度值、以及所述N个大检测框的中心点位置坐标,确定所述N个大检测框。
具体的以N个大检测框中的任意一个大检测框为第i个大检测框为例进行说明:
基于所述多个通道中所述N个大检测框的中心点得分图,确定N个大检测框中的第i个大检测框的中心点的预测位置坐标;i为大于等于1且小于等于N的整数;
基于所述多个通道中所述N个大检测框的中心点的偏移量,对所述第i个大检测框的中心点的预测位置坐标进行调整,得到调整后的第i个大检测框的中心点位置坐标;
基于所述多个通道中所述N个大检测框的预测宽度值以及预测高度值、以及所述第i个大检测框的中心点位置坐标,确定所述第i个大检测框。
需要指出的是,N可以大于等于2,也就是针对全部大检测框的确定可以并行处理,只是每一个大检测框的确定的方式均采用以上处理方式,不做一一赘述。
基于所述多个通道中所述N个大检测框的中心点得分图,确定N个大检测框中的第i个大检测框的中心点的预测位置坐标,具体的可以为:基于所述多个通道中所述N个大检测框的中心点得分图中的概率值大于预设概率门限值的任意一个坐标点,作为所述N个大检测框中的第i个大检测框的中心点的预测位置坐标。
所述预设概率门限值可以根据实际情况设置,比如可以是0.8,或者可以更大或更小,这里不做穷举。
基于所述多个通道中所述N个大检测框的中心点的偏移量,对所述第i个大检测框的中心点的预测位置坐标进行调整,得到调整后的第i个大检测框的中心点位置坐标,具体为:基于所述多个通道中所述N个大检测框的第i个大检测框的中心点的偏移量,对所述第i个大检测框的中心点的预测位置坐标进行调整,得到调整后的第i个大检测框的中心点位置坐标。
基于所述多个通道中所述N个大检测框的预测宽度值以及预测高度值、以及所述第i个大检测框的中心点位置坐标,确定所述第i个大检测框,具体为:基于所述多个通道中所述N个大检测框的第i个大检测框的预测宽度值以及预测高度值、以及第i个大检测框的中心点位置坐标,确定所述第i个大检测框。
需要指出的是,上述预测宽度值以及预测高度值可以是大检测框的预测宽度以及预测高度,又或者,可以是大检测框的中心点至大检测框的长边的预测垂直距离,以及大检测框的中心点至大检测框的宽边的预测垂直距离。
基于所述多个通道确定所述目标图像所对应的M个小检测框,如图4示,包括:
S301:基于所述多个通道中所述M个小检测框的中心点得分图,确定所述M个小检测框的中心点的预测位置坐标;
S302:基于所述多个通道中所述M个小检测框的中心点的偏移量,分别对所述M个小检测框的中心点的预测位置坐标进行调整,得到调整后的所述M个小检测框的中心点位置坐标;
S303:基于所述多个通道中所述M个小检测框的预测宽度值以及预测高度值、以及所述M个小检测框的中心点位置坐标,确定M个小检测框的初始框;
S304:基于所述多个通道中所述M个小检测框分别对应的旋转角度,对所述M个小检测框的初始框进行旋转,得到所述M个小检测框。
具体的以M个小检测框中的任意一个小检测框为例,以下将M个小检测框中的任意一个小检测框为第j个小检测框进行说明:
基于所述多个通道中所述M个小检测框的中心点得分图,确定M个小检测框中的第j个小检测框的中心点的预测位置坐标;j为大于等于1且小于等于M的整数;
基于所述多个通道中所述M个小检测框的中心点的偏移量,对所述第j个小检测框的中心点的预测位置坐标进行调整,得到调整后的第j个小检测框的中心点位置坐标;
基于所述多个通道中所述M个小检测框的预测宽度值以及预测高度值、以及所述第j个小检测框的中心点位置坐标,确定所述第j个小检测框。
需要指出的是,M可以大于等于2,也就是针对全部小检测框的确定可以并行处理,只是每一个小检测框的确定的方式均采用以上处理方式,不做一一赘述。
基于所述多个通道中所述M个小检测框的中心点得分图,确定M个小检测框中的第j个小检测框的中心点的预测位置坐标,具体的可以为:基于所述多个通道中所述M个小检测框的中心点得分图中的概率值大于预设概率门限值的任意一个坐标点,作为所述M个小检测框中的第j个小检测框的中心点的预测位置坐标。
所述预设概率门限值可以根据实际情况设置,比如可以是0.8,或者可以更大或更小,这里不做穷举。
基于所述多个通道中所述M个小检测框的中心点的偏移量,对所述第j个小检测框的中心点的预测位置坐标进行调整,得到调整后的第j个小检测框的中心点位置坐标,具体为:基于所述多个通道中所述M个小检测框的第j个小检测框的中心点的偏移量,对所述第j个小检测框的中心点的预测位置坐标进行调整,得到调整后的第j个小检测框的中心点位置坐标。
基于所述多个通道中所述M个小检测框的预测宽度值以及预测高度值、以及所述第j个小检测框的中心点位置坐标,确定所述第j个小检测框,具体为:基于所述多个通道中所述M个小检测框的第j个小检测框的预测宽度值以及预测高度值、以及第j个小检测框的中心点位置坐标,确定所述第j个小检测框。
需要指出的是,上述预测宽度值以及预测高度值可以是小检测框的预测宽度以及预测高度,又或者,可以是小检测框的中心点至小检测框的长边的预测垂直距离,以及小检测框的中心点至小检测框的宽边的预测垂直距离。
基于所述N个大检测框以及M个小检测框的相对位置,确定所述N个大检测框内的多个小检测框,具体可以包括:
判断所述M个小检测框中的第m个小检测框是否位于N个大检测框中任意一个大检测框之内;m为大于等于1且小于等于M的整数;
在所述第m个小检测框位于所述N个大检测框的第k个大检测框内的情况下,将所述第m个小检测框作为所述第k个大检测框内的多个小检测框之一;其中,k为大于等于1且小于等于N的整数。
也就是说,判断一个小检测框是否位于任意一个大检测框之内,可以基于小检测框与大检测框的位置关系进行判断,所述位置关系可以是小检测框的中心点与大检测框的角点间的位置关系,也可以是小检测框的角点与大检测框的角点之间的位置关系。具体来说,可以根据小检测框中心点的坐标与大检测框角点的坐标关系进行判断。举例来说,由于大检测框是没有倾斜角度的,第k个大检测框的四个角点坐标可以分别为(x1,y1)、(x1,y2)、(x2,y1)、(x2,y2),第m个小检测框的中心点坐标为(x0,y0),当x1<x0<x2且y1<y0<y2时,判定第m个小检测框的中心点位于第k个大检测框之内,进而判定第m个小检测框是否作为第k个大检测框内的多个小检测框之一。当然,还可以通过小检测框的角点坐标与大检测框的角点坐标进行对比,这里不做赘述。
S103中,所述基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点,包括:
对所述N个大检测框中的第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系;其中,i为大于等于1且小于等于N的整数;
基于所述第i个大检测框中的多个小检测框的相对位置关系,以及所述多个小检测框的顶点,确定所述第i个大检测框内的K个标注坐标点。
一种优选的示例中,K等于14。也就是第i个大检测框内包含6个小检测框,基于6个小检测框确定14个标注坐标点。
其中,所述对所述N个大检测框中的第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系,包括:
基于所述第i个大检测框的中心点坐标至所述第i个大检测框的多个小检测框的中心点坐标之间的向量与第一方向之间的夹角的大小顺序,对所述第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系。
其中,所述第一方向可以是水平方向。又或者,所述第一方向可以是垂直方向或竖直方向。
具体的,大检测框中心点与6个小检测框的中心点之间构成的向量可以是向量1,向量2,…,向量6,各向量与水平方向之间构成的顺时针夹角分别为α1,α2,…,α6,将得到的6个角度按照从大到小的顺序排序,依次作为大检测框内最左到最右位置的小检测框。当然,也可以计算各向量与水平方向之间的逆时针夹角大小并排序,将得到的逆时针夹角按照从小到大的顺序排序得到大检测框内部各校检测框的位置关系,这里不做限定。
或者,大检测框中心点与6个小检测框的中心点之间构成的向量可以是向量1,向量2,…,向量6,各向量与竖直平方向之间构成的夹角,这里,向量相对于竖直方向偏左的夹角可以为负值,向量相对于竖直方向偏右的夹角可以为正值;假设向量1、向量2以及向量3相对于竖直方向的夹角为负夹角,向量4~向量6相对于竖直方向的夹角为正夹角;按照从小到大的顺序排列,依次作为大检测框内最左到最右位置的小检测框。
基于所述第i个大检测框中的多个小检测框的相对位置关系,以及所述多个小检测框的顶点,确定所述第i个大检测框内的K个标注坐标点,具体可以是:
基于所述第i个大检测框中的多个小检测框的相对位置关系,依次选取相邻的两个小检测框;基于所述相邻的两个小检测框的顶点坐标,确定所述K个标注坐标点。
其中,相邻的两个小检测框包括:第一小检测框以及第二小检测框。所述相邻的两个小检测框相对位置可以采用前述两个小检测框对应的夹角来确定,比如夹角较大的可以为相邻的两个小检测框中的第一小检测框,夹角较小的可以为相邻的两个小检测框中的第二小检测框。当然,上述仅为一种确定第一小检测框以及第二小检测框的示例性说明,实际处理中,所述小检测框与第一方向(水平方向)之间的夹角,还可以从大检测框的中心点的左侧开始计算,这种情况下,可以是夹角较小的作为相邻的两个小检测框中的第一小检测框,夹角较大的作为相邻的两个小检测框中的第二小检测框。或者是,根据小检测框与竖直方向之间的夹角来确定,将两者中夹角小的作为相邻的两个小检测框中的第一小检测框,夹角较大的作为相邻的两个小检测框中的第二小检测框。
又或者,所述第一小检测框为所述相邻的两个小检测框相对位置在左边的小检测框;所述第二小检测框为所述相邻的两个小检测框相对位置在右边的小检测框。相对位置是否在左侧或左边,可以采用两个小检测框中的最左边的一个坐标点来进行比较而确定。
比如参见图5大检测框中包含6个小检测框,小检测框1、2为相邻的两个小检测框,将小检测框1作为该相邻的两个小检测框中的第一检测框,小检测框2作为该相邻的两个小检测框中的第二检测框。
基于所述相邻的两个小检测框的顶点坐标,确定所述K个标注坐标点,具体可以包括:
在所述相邻的两个小检测框的第一小检测框的左边没有第i个大检测框内的其他小检测框的情况下,将所述第一小检测框的左上顶点以及左下顶点作为标注坐标点;
在所述相邻的两个小检测框的第一小检测框与所述相邻的两个小检测框的第二小检测框的相邻边重合的情况下,将所述第一小检测框的右上顶点以及右下顶点作为标注坐标点,或者,将所述第二小检测框的左上顶点以及左下顶点作为标注坐标点;
在所述相邻的两个小检测框的第一小检测框与所述相邻的两个小检测框的第二小检测框的相邻边不重合的情况下,提取所述第一小检测框的右上顶点以及右下顶点,提取所述第二小检测框的左上顶点以及左下顶点,基于所述第一小检测框的右上顶点以及第二小检测框的左上顶点确定一个标注坐标点,以及,基于所述第一小检测框的右下顶点以及第二小检测框的左下顶点确定一个标注坐标点;
在所述相邻的两个小检测框的第二小检测框的右边没有第i个大检测框内的其他小检测框的情况下,将所述第二小检测框的右上顶点以及右下顶点作为标注坐标点。
上述仅说明了在所述相邻的两个小检测框的第一小检测框的左边没有第i个大检测框内的其他小检测框的情况下的处理,实际处理中,在所述相邻的两个小检测框的第一小检测框的左边有第i个大检测框内的其他小检测框的情况中,该第一小检测框为其他的相邻两个小检测框中的第二小检测框,因此不对该情况进行赘述。
上述所述相邻的两个小检测框的第一小检测框与所述相邻的两个小检测框的第二小检测框的相邻边重合,可以具体指的是所述相邻的两个小检测框的第一小检测框的右边与所述相邻的两个小检测框的第二小检测框的左边重合,可以参见图5其中,小检测框5的右边与小检测框6的左边重合。
所述相邻的两个小检测框的第一小检测框与所述相邻的两个小检测框的第二小检测框的相邻边不重合,可以具体指的是相邻的两个小检测框的第一小检测框的右边与所述相邻的两个小检测框的第二小检测框的左边不重合的情况,可以参见图5也就是小检测框2的右边与小检测框3的左边不重合。
这种情况下,提取所述第一小检测框的右上顶点和右下顶点以及第二小检测框的左上顶点和左下顶点,基于所述第一小检测框的右上顶点以及第二小检测框的左上顶点确定一个标注坐标点,以及,基于所述第一小检测框的右下顶点以及第二小检测框的左下顶点确定一个标注坐标点,具体可以包括以下之一:
选取所述第一小检测框的右上顶点和右下顶点作为两个标注点,或者选取所述第二小检测框的左上顶点和左下顶点作为两个标注点;
选取第一小检测框的右上顶点与第二小检测框的左上顶点的中点作为其中一个标注点,选取第一小检测框的右下顶点与第二小检测框的左下顶点的中点作为其中另一个标注点。
当然两个坐标点的选取还可以有其他方式,此处不一一列举。
进一步地,结合图5进行示例性说明,一个大检测框中包含6个小检测框,最终得到的K个标注坐标点为14个标注坐标点,具体的:图5中的各小检测框的顶点分别为A1,A2,…,A24,最终得到的14个标注坐标点分别为A1,A2,A4,A6,A8,A10,A12,A13,A15,A17,A19,A21,A23,A24。
上述S104,基于所述N个大检测框内的所述K个标注坐标点,确定所述目标图像中包含的N个目标文本框,具体可以包括:
基于所述N个检测框中的第i个检测框对应的K个标注坐标点进行连接得到一个文本框,将该文本框作为第i个目标文本框。
比如,以K个标注坐标点中的任意一个标注坐标点为例,任意一个标注坐标点可以有多个相邻标注坐标点,可以将该任意一个坐标点与其相邻标注坐标点进行连接,最终可以得到全部标注坐标点与其相邻标注坐标点之间的连线组成的连线图;然后可以从连线图中选取一个覆盖面积最大的闭合的多个连线组成的框作为一个目标文本框。
还需要说明的,上述所述目标模型具体可以是一种优化的CenterNet模型。下面针对如何训练得到该目标模型进行说明:
采用训练样本对预设模型进行训练,得到训练后的所述目标模型;
其中,所述训练样本中标注有文本框对应的K个坐标点的标签。一种优选的示例中,K为14。
具体的,所述训练样本可以为训练样本集合中的任意一个训练样本,需要指出的是,采用训练样本进行预设模型的训练并不是只能使用训练样本集合中的同一个训练样本,也并不是指进行一次迭代训练就可以完成预设模型的训练。在预设模型的训练过程中,可能在不同次迭代处理中采用不同的训练样本,关于如何选取训练样本,并不是本实施例所要重点说明的,因此这里不对其展开描述。
针对每一个训练样本来说,可以具体为标注有文本框对应的K个坐标点的标签的图片。
所述采用训练样本对预设模型进行训练,包括:
将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图;
将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的多个通道;
基于所述训练样本所对应的多个通道、以及所述训练样本中标注的文本框对应的K个坐标点的标签,确定第一类损失函数以及第二类损失函数;
根据所述第一类损失函数以及所述第二类损失函数进行反向传导更新所述预设模型。
将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图,具体可以包括:所述预设模型的预设第一网络模型负责将训练样本图像转变为高维特征,例如对训练样本图像提取纹理、边缘、角点和语义信息等特征。预设第一网络模型由经典的卷积神经网络构成,优选地,以Resnet18网络作为所述预设模型的预设第一网络模型。
一种示例中,所述预设模型中的预设第一网络模型,也就是Resnet18网络,可以包括4个block,由4个block串联构建得到所述预设第一网络模型。每个block包括若干个具有残差连接的卷积层和池化层,用于将前一级输出的特征图的尺寸降低一倍,举例来说,第一个block输出的特征映射大小为原图的1/4, 第二个为原图1/8,第三个为原图1/16,第四个为原图1/32。
将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的多个通道中,所述预设第二网络模型的处理具体可以包括:
所述预设模型中的所述预设第二网络模型与预设第一网络模型的各block保持连接,预设第一网络模型输出的特征图被输入至预设第二网络模型部分,预设第二网络模型再次提取纹理、边缘、角点和语义信息等特征,完成特征信息重组。其中,预设第二网络模型可以包括上采样层和通道维度注意力层,上采样层可以用来调整block输出的特征图的大小,例如将各个尺度的特征图重组并放缩到同一尺度;通道维度注意力层用于融合调整后的多个特征图并得到一个多通道的特征映射。
具体的,预设第二网络模型具体可以是DB网络(Real-time Scene TextDetection with Differentiable Binarization,可微分二值化网络)。
一种示例中,DB网络的上采样层将上述四组特征图全部通过插值的方式将其大小变为训练样本图1/4大小并串联,得到一组通道数量为512的特征映射。接着通过通道注意力层对上述512通道的特征映射做一次卷积操作,两次反卷积操作,得到与训练样本图像大小一致的多通道输出。其中,多通道输出可以根据需要进行设定,举例来说可以包括中心点概率图、距离图等。
基于所述训练样本中标注的文本框所对应的K个坐标点的标签,可以确定所述训练样本中包含的多个小文本框的坐标,进一步地可以得到多个小文本框所对应的中心点,将多个小文本框的中心点坐标对应的值设置为1,其他区域的坐标点对应的值设置为0,从而可以得到多个小文本框的中心点得分图;另外,可以通过将多个小文本框的边框区域置为1,其他区域置为0作为小文本框的边界点,基于多个小文本框的边界点可以确定多个小文本框所对应的宽度值以及高度值;另外,还可以基于多个小文本框的边界点确定每一个小文本框相对于第一方向的旋转角度。其中,第一方向与前述实施例相同,可以是水平方向。
还需要理解的是,基于标注的文本框对应的K个坐标点的标签,确定了小文本框的边界点之外,还可以确定K个坐标点所对应的大文本框的中心点,将大文本框的中心点对应的值设置为1,其他区域的坐标点的值设置为0,可以得到训练样本所对应的大检测框的中心点得分图。基于标注的文本框对应的K个坐标点的标签,确定了小文本框的边界点之外,还可以基于K个坐标点的标签确定大文本框的边界位置,基于边界位置可以确定大文本框的高度值以及宽度值。
相应的,所述基于所述训练样本所对应的多个通道、以及所述训练样本中标注的文本框对应的K个坐标点的标签,确定第一类损失函数以及第二类损失函数,具体可以包括:
根据用于表示所述大检测框的中心点得分图的第一通道,与所述训练样本中标注的文本框所对应的K个坐标点的标签所确定的大文本框的中心点,计算得到第一通道对应的第一类损失函数;
根据用于表示小检测框的中心点得分图的第六通道,与所述训练样本中标注的文本框所对应的K个坐标点的标签所确定的小文本框的中心点,计算得到第六通道对应的第一类损失函数;
根据用于表示大检测框的中心点x、y轴偏移量的第二通道以及第三通道,与所述训练样本中标注的文本框所对应的K个坐标点的标签所确定的大文本框的中心点,计算得到第二通道以及第三通道分别对应的第二类损失函数;
根据用于表示大检测框的中的预测宽度值以及预测高度值的第四通道和第五通道,与所述训练样本中标注的文本框所对应的K个坐标点的标签所确定的大文本框的宽度以及高度,计算得到第四通道以及第五通道分别对应的第二类损失函数;
根据用于表示小检测框的中心点x、y轴偏移量的第七通道以及第八通道,与所述训练样本中标注的文本框所对应的K个坐标点的标签所确定的小文本框的中心点,计算得到第七通道以及第八通道分别对应的第二类损失函数;
根据用于表示小检测框的中的预测宽度值以及预测高度值的第九通道和第十通道,与所述训练样本中标注的文本框所对应的K个坐标点的标签所确定的小文本框的宽度以及高度,计算得到第九通道以及第十通道分别对应的第二类损失函数;
根据用于表示小检测框旋转角度的第十一通道,与所述训练样本中标注的文本框所对应的K个坐标点的标签所确定的小文本框的旋转角度,计算得到第十一通道对应的第二类损失函数。
上述第一类损失函数为focal loss(焦点损失)函数;第二类损失函数为平滑L1损失函数。
根据所述第一类损失函数以及所述第二类损失函数进行反向传导更新所述预设模型,可以是根据所述第一类损失函数以及所述第二类损失函数进行反向传导更新所述预设模型的参数;再进一步地,可以是根据所述第一类损失函数以及所述第二类损失函数进行反向传导更新所述预设模型中的预设第一网络模型的参数和/或预设第二网络模型的参数。
在针对所述预设模型的迭代次数达到预设门限值,或者所述预设模型的迭代训练中指标(比如准确率或召回率)不再变化的时候,可以确定训练完成,最终得到的训练后的预设模型即为本申请实施例前述目标模型。
示例性的,在所述预设模型训练阶段,使用 Resnet18网络模型作为预设第一网络设备(或称为基础网络模型,下面以Resnet18为例进行说明),预设第二网络模型可以是DB网络。Resnet18网络由4个block串联构建,每个block包括若干层卷积操作,第一个block输出的特征映射大小为原图的1/4,第二个为原图1/8,第三个为原图1/16,第四个为原图1/32;
每个block输出的特征映射(或称为特征图)数量都为128,然后在预设第二网络模型中,将四组特征映射全部通过插值的方式(插值的方式就是上采样)将其大小变为原图1/4大小并串联,得到一组特征映射,其通道数量为512;接着对上述512通道的特征映射做一次卷积操作,两次反卷积操作,得到与输入图像大小一致的11通道输出,其具体含义如上述实施例所述,这里不做重复说明。
进而,针对第一通道和第六通道使用CenterNet中用focal loss进行训练,其他通道均使用平滑L1损失函数进行训练。
上述特征和通道的关系或区别,可以是:特征是纹理、角点、语义这类高层信息,通道指的是具体的含义,比如表示了中心点偏移量、概率值等等。
最后结合图6,对本申请实施例进行详细说明,以目标图像为密集文本图像为例来说,具体可以是:
S401:将密集文本图像输入所述目标模型中的第一网络模型中,进行特征提取可以得到4组特征映射的子特征图。其中,第一网络模型可以是即Resnet18网络。
S402:将4组特征映射的子特征图大小全部上采样到原始图像1/4大小,并串联在一起得到一个特征图。
S403:将该一个特征图做一次卷积操作以及两次反卷积操作,得到与输入的所述密集文本图像大小一致的11通道输出。
其中第一个通道表示大检测框中心点得分图,即每个像素点值在0到1之间,表示这个点是大检测框中心点的概率,所谓的大检测框是指将整个长曲文本包含在内的矩形框;第二和第三个通道大检测框中心点的x轴、y轴的偏移量;第四和第五个通道表示大检测框的预测宽度值和预测高度值;第六个通道表示小检测框中心点得分图;第七和第八个通道表示小检测框中心点的x轴、y轴偏移量;第九和第十个通道表示小检测框的预测宽度值和预测高度值;第十一通道表示小检测框相对于第一方向所构成的旋转角度。
需要指出的是,在模型训练阶段,第一个通道和第六个通道使用CenterNet中用focal loss进行训练,其他通道均使用平滑L1损失函数进行训练。
S404:基于所述11个通道确定所述密集文本图像所对应的大检测框以及小检测框。
具体的,在预测阶段,与CenterNet一样,通过大检测框中心点得分图找出每个大检测框的中心点,然后根据大检测框中心点偏移量调整大检测框中心点,然后根据预测到的宽度值和高度值得到整个大检测框的矩形框;针对小检测框,方法类似,稍有不同的是,此处得到每个小检测框的时候,还会得到小检测框对应的旋转角度。
S405:基于所述大检测框内的多个小检测框,确定所述大检测框内的14个标注坐标点,基于所述14个标注坐标点,确定目标文本框。
具体的,可以根据每一个小检测框都应该在其对应的大检测框内,从而找到与每个大检测框相对应的6小检测框,然后对属于同一个大检测框中的小检测框进行位置排列,排列方式:从大检测框的中心点出发到每个小检测框中心点的向量都可以与水平方向计算一个夹角,根据得到的6个角度的大小决定6个小检测框的位置关系(比如说顺时针方向的夹角大小,角度大小的绝对值,最小的角度对应最右边的小检测框,最大的角度对应最左边的小检测框),然后通过6个小检测框的顶点得到14个弯曲文本标注点,得到真实文本区域。
采用以上处理,对密集文本图像并行处理完所有大检测框以及小检测框,则针对密集文本图像的密集文本检测完成。也就是说,密集文本图像可以处理得到N个大检测框,针对N个大检测框中的每一个大检测框均可以使用以上流程进行处理,最终可以根据每一个大检测框中包含的6个小检测框确定出14个标注点,得到该大检测框所对应的目标文本框;针对上述N个大检测框进行并行处理,最终可以得到全部大检测框所对应的目标文本框。
根据本申请的实施例,本申请还提供了一种文本框检测装置,如图7所示,所述装置包括:
通道获取单元701,用于将目标图像输入目标模型,得到所述目标模型输出的多个通道;其中,所述多个通道包括N个大检测框的预测信息以及M个小检测框的预测信息;其中,N和M均为大于等于1的整数;
检测框获取单元702,基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框;
标注坐标点获取单元703,基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点;K为大于1的整数;
目标文本框确定单元704,基于所述N个大检测框内的所述K个标注坐标点,确定所述目标图像中包含的N个目标文本框。
具体的,所述通道获取单元中所述N个大检测框的预测信息,包括:所述N个大检测框的中心点得分图、所述N个大检测框的中心点的偏移量、所述N个大检测框的预测宽度值以及预测高度值;
所述通道获取单元701中所述M个小检测框的预测信息,包括:所述M个小检测框的中心点得分图、所述M个小检测框的中心点的偏移量、所述M个小检测框的预测宽度值以及预测高度值、所述M个小检测框分别对应的旋转角度。
具体的,所述检测框获取单元702,用于:
基于所述多个通道确定所述目标图像所对应的N个大检测框,以及基于所述多个通道确定所述目标图像所对应的M个小检测框;
基于所述N个大检测框以及M个小检测框的相对位置,确定所述N个大检测框内的多个小检测框。
具体的,所述检测框获取单元702,用于:
基于所述多个通道中所述N个大检测框的中心点得分图,确定N个大检测框的中心点的预测位置坐标;
基于所述多个通道中所述N个大检测框的中心点的偏移量,分别对所述N个大检测框的中心点的预测位置坐标进行调整,得到调整后的所述N个大检测框的中心点位置坐标;
基于所述多个通道中所述N个大检测框的预测宽度值以及预测高度值、以及所述N个大检测框的中心点位置坐标,确定所述N个大检测框。
具体的,所述检测框获取单元702,用于:
基于所述多个通道中所述M个小检测框的中心点得分图,确定所述M个小检测框的中心点的预测位置坐标;
基于所述多个通道中所述M个小检测框的中心点的偏移量,分别对所述M个小检测框的中心点的预测位置坐标进行调整,得到调整后的所述M个小检测框的中心点位置坐标;
基于所述多个通道中所述M个小检测框的预测宽度值以及预测高度值、以及所述M个小检测框的中心点位置坐标,确定M个小检测框的初始框;
基于所述多个通道中所述M个小检测框分别对应的旋转角度,对所述M个小检测框的初始框进行旋转,得到所述M个小检测框。
具体的,所述标注坐标点获取单元703,用于:
对所述N个大检测框中的第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系;其中,i为大于等于1且小于等于N的整数;
基于所述第i个大检测框中的多个小检测框的相对位置关系,以及所述多个小检测框的顶点,确定所述第i个大检测框内的K个标注坐标点。
具体的,所述标注坐标点获取单元703,用于:
基于所述第i个大检测框的中心点坐标至所述第i个大检测框的多个小检测框的中心点坐标之间的向量与第一方向之间的夹角的大小顺序,对所述第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系。
具体的,所述通道获取单元701,用于:
将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图;
将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述多个通道。
具体的,所述通道获取单元701,用于:
将输入的所述特征图进行串联得到特征映射;
对所述特征映射进行一次卷积操作以及两次反卷积操作,输出与所述目标图像大小一致的所述多个通道。
具体的,上述装置还包括模型训练单元705,用于:
采用训练样本对预设模型进行训练,得到训练后的所述目标模型;
其中,所述训练样本中标注有文本框对应的K个坐标点的标签。
具体的,如图8所示,所述模型训练单元705,包括:
第一输入单元7051,用于将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图;
第二输入单元7052,用于将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的多个通道;
损失函数计算单元7053,用于基于所述训练样本所对应的多个通道、以及所述训练样本中标注的文本框对应的K个坐标点的标签,确定第一类损失函数以及第二类损失函数;
更新单元7054,用于将所述第一类损失函数以及所述第二类损失函数进行反向传导更新所述预设模型。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图9所示,是根据本申请实施例的电子设备的框图。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图9所示,该电子设备包括:一个或多个处理器801、存储器802,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图9中以一个处理器801为例。
存储器802即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的文本框检测方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的文本框检测方法。
存储器802作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的文本框检测方法对应的程序指令/模块。处理器801通过运行存储在存储器802中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的文本框检测方法。
存储器802可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器802可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器802可选包括相对于处理器801远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
电子设备还可以包括:输入装置803和输出装置804。处理器801、存储器802、输入装置803和输出装置804可以通过总线或者其他方式连接,图9中以通过总线连接为例。
输入装置803可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置804可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (24)
1.一种文本框检测方法,其特征在于,所述方法包括:
将目标图像输入目标模型,得到所述目标模型输出的多个通道;其中,所述多个通道包括N个大检测框的预测信息以及M个小检测框的预测信息;其中,N和M均为大于等于1的整数;
基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框;
基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点;K为大于1的整数;
基于所述N个大检测框内的所述K个标注坐标点,确定所述目标图像中包含的N个目标文本框。
2.根据权利要求1所述的方法,其特征在于,所述多个通道中所述N个大检测框的预测信息,包括:所述N个大检测框的中心点得分图、所述N个大检测框的中心点的偏移量、所述N个大检测框的预测宽度值以及预测高度值;
所述多个通道中所述M个小检测框的预测信息,包括:所述M个小检测框的中心点得分图、所述M个小检测框的中心点的偏移量、所述M个小检测框的预测宽度值以及预测高度值、所述M个小检测框分别对应的旋转角度。
3.根据权利要求2所述的方法,其特征在于,所述基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框,包括:
基于所述多个通道确定所述目标图像所对应的N个大检测框,以及基于所述多个通道确定所述目标图像所对应的M个小检测框;
基于所述N个大检测框以及M个小检测框的相对位置,确定所述N个大检测框内的多个小检测框。
4.根据权利要求3所述的方法,其特征在于,基于所述多个通道确定所述目标图像所对应的N个大检测框,包括:
基于所述多个通道中所述N个大检测框的中心点得分图,确定N个大检测框的中心点的预测位置坐标;
基于所述多个通道中所述N个大检测框的中心点的偏移量,分别对所述N个大检测框的中心点的预测位置坐标进行调整,得到调整后的所述N个大检测框的中心点位置坐标;
基于所述多个通道中所述N个大检测框的预测宽度值以及预测高度值、以及所述N个大检测框的中心点位置坐标,确定所述N个大检测框。
5.根据权利要求3所述的方法,其特征在于,基于所述多个通道确定所述目标图像所对应的M个小检测框,包括:
基于所述多个通道中所述M个小检测框的中心点得分图,确定所述M个小检测框的中心点的预测位置坐标;
基于所述多个通道中所述M个小检测框的中心点的偏移量,分别对所述M个小检测框的中心点的预测位置坐标进行调整,得到调整后的所述M个小检测框的中心点位置坐标;
基于所述多个通道中所述M个小检测框的预测宽度值以及预测高度值、以及所述M个小检测框的中心点位置坐标,确定M个小检测框的初始框;
基于所述多个通道中所述M个小检测框分别对应的旋转角度,对所述M个小检测框的初始框进行旋转,得到所述M个小检测框。
6.根据权利要求1所述的方法,其特征在于,基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点,包括:
对所述N个大检测框中的第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系;其中,i为大于等于1且小于等于N的整数;
基于所述第i个大检测框中的多个小检测框的相对位置关系,以及所述多个小检测框的顶点,确定所述第i个大检测框内的K个标注坐标点。
7.根据权利要求6所述的方法,其特征在于,所述对所述N个大检测框中的第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系,包括:
基于所述第i个大检测框的中心点坐标至所述第i个大检测框的多个小检测框的中心点坐标之间的向量与第一方向之间的夹角的大小顺序,对所述第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述将目标图像输入目标模型,得到所述目标模型输出的多个通道,包括:
将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图;
将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述多个通道。
9.根据权利要求8所述的方法,其特征在于,所述将特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述多个通道,包括:
将输入的所述特征图进行串联得到特征映射;
对所述特征映射进行一次卷积操作以及两次反卷积操作,输出与所述目标图像大小一致的所述多个通道。
10.根据权利要求1-7任一项所述的方法,其特征在于,所述方法还包括:
采用训练样本对预设模型进行训练,得到训练后的所述目标模型;
其中,所述训练样本中标注有文本框对应的K个坐标点的标签。
11.根据权利要求10所述的方法,其特征在于,所述采用训练样本对预设模型进行训练,包括:
将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图;
将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的多个通道;
基于所述训练样本所对应的多个通道、以及所述训练样本中标注的文本框对应的K个坐标点的标签,确定第一类损失函数以及第二类损失函数;
根据所述第一类损失函数以及所述第二类损失函数进行反向传导更新所述预设模型。
12.一种文本框检测装置,其特征在于,所述装置包括:
通道获取单元,用于将目标图像输入目标模型,得到所述目标模型输出的多个通道;其中,所述多个通道包括N个大检测框的预测信息以及M个小检测框的预测信息;其中,N和M均为大于等于1的整数;
检测框获取单元,基于所述多个通道确定所述目标图像所对应的N个大检测框以及所述N个大检测框内的多个小检测框;
标注坐标点获取单元,基于所述N个大检测框内的多个小检测框,确定所述N个大检测框内的K个标注坐标点;K为大于1的整数;
目标文本框确定单元,基于所述N个大检测框内的所述K个标注坐标点,确定所述目标图像中包含的N个目标文本框。
13.根据权利要求12所述的装置,其中,所述N个大检测框的预测信息,包括:所述N个大检测框的中心点得分图、所述N个大检测框的中心点的偏移量、所述N个大检测框的预测宽度值以及预测高度值;
所述M个小检测框的预测信息,包括:所述M个小检测框的中心点得分图、所述M个小检测框的中心点的偏移量、所述M个小检测框的预测宽度值以及预测高度值、所述M个小检测框分别对应的旋转角度。
14.根据权利要求13所述的装置,其中,所述检测框获取单元,用于
基于所述多个通道确定所述目标图像所对应的N个大检测框,以及基于所述多个通道确定所述目标图像所对应的M个小检测框;基于所述N个大检测框以及M个小检测框的相对位置,确定所述N个大检测框内的多个小检测框。
15.根据权利要求14所述的装置,其中,所述检测框获取单元,用于
基于所述多个通道中所述N个大检测框的中心点得分图,确定N个大检测框的中心点的预测位置坐标;基于所述多个通道中所述N个大检测框的中心点的偏移量,分别对所述N个大检测框的中心点的预测位置坐标进行调整,得到调整后的所述N个大检测框的中心点位置坐标;基于所述多个通道中所述N个大检测框的预测宽度值以及预测高度值、以及所述N个大检测框的中心点位置坐标,确定所述N个大检测框。
16.根据权利要求14所述的装置,其中,所述检测框获取单元,用于
基于所述多个通道中所述M个小检测框的中心点得分图,确定所述M个小检测框的中心点的预测位置坐标;基于所述多个通道中所述M个小检测框的中心点的偏移量,分别对所述M个小检测框的中心点的预测位置坐标进行调整,得到调整后的所述M个小检测框的中心点位置坐标;基于所述多个通道中所述M个小检测框的预测宽度值以及预测高度值、以及所述M个小检测框的中心点位置坐标,确定M个小检测框的初始框;基于所述多个通道中所述M个小检测框分别对应的旋转角度,对所述M个小检测框的初始框进行旋转,得到所述M个小检测框。
17.根据权利要求12所述的装置,其中,所述标注坐标点获取单元,用于
对所述N个大检测框中的第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系;其中,i为大于等于1且小于等于N的整数;基于所述第i个大检测框中的多个小检测框的相对位置关系,以及所述多个小检测框的顶点,确定所述第i个大检测框内的K个标注坐标点。
18.根据权利要求17所述的装置,其中,所述标注坐标点获取单元,用于
基于所述第i个大检测框的中心点坐标至所述第i个大检测框的多个小检测框的中心点坐标之间的向量与第一方向之间的夹角的大小顺序,对所述第i个大检测框中的多个小检测框进行位置排列,得到所述多个小检测框的相对位置关系。
19.根据权利要求12-17任一所述的装置,其中,所述通道获取单元,用于
将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图;将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述多个通道。
20.根据权利要求19所述的装置,其中,所述通道获取单元,用于
将输入的所述特征图进行串联得到特征映射;对所述特征映射进行一次卷积操作以及两次反卷积操作,输出与所述目标图像大小一致的所述多个通道。
21.根据权利要求12-17任一所述的装置,所述装置还包括:
模型训练单元,用于采用训练样本对预设模型进行训练,得到训练后的所述目标模型;
其中,所述训练样本中标注有文本框对应的K个坐标点的标签。
22.根据权利要求21所述的装置,其中,所述模型训练单元,包括:
第一输入单元,用于将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图;
第二输入单元,用于将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的多个通道;
损失函数计算单元,用于基于所述训练样本所对应的多个通道、以及所述训练样本中标注的文本框对应的K个坐标点的标签,确定第一类损失函数以及第二类损失函数;
更新单元,用于根据所述第一类损失函数以及所述第二类损失函数进行反向传导更新所述预设模型。
23.一种电子设备,其特征在于,所述电子设备包括
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-11中任一项所述的方法。
24.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011435586.6A CN112232315B (zh) | 2020-12-11 | 2020-12-11 | 文本框检测方法、装置、电子设备和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011435586.6A CN112232315B (zh) | 2020-12-11 | 2020-12-11 | 文本框检测方法、装置、电子设备和计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112232315A true CN112232315A (zh) | 2021-01-15 |
CN112232315B CN112232315B (zh) | 2021-03-19 |
Family
ID=74124202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011435586.6A Active CN112232315B (zh) | 2020-12-11 | 2020-12-11 | 文本框检测方法、装置、电子设备和计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112232315B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113033346A (zh) * | 2021-03-10 | 2021-06-25 | 北京百度网讯科技有限公司 | 文本检测方法、装置和电子设备 |
CN113610098A (zh) * | 2021-08-19 | 2021-11-05 | 创优数字科技(广东)有限公司 | 纳税号识别方法、装置、存储介质及计算机设备 |
CN114067237A (zh) * | 2021-10-28 | 2022-02-18 | 清华大学 | 视频数据处理方法、装置及设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190188528A1 (en) * | 2016-12-08 | 2019-06-20 | Tencent Technology (Shenzhen) Company Limited | Text detection method and apparatus, and storage medium |
CN110751152A (zh) * | 2019-10-18 | 2020-02-04 | 中国科学技术大学 | 检测任意形状文本的方法 |
CN111652217A (zh) * | 2020-06-03 | 2020-09-11 | 北京易真学思教育科技有限公司 | 文本检测方法、装置、电子设备及计算机存储介质 |
CN111797821A (zh) * | 2020-09-09 | 2020-10-20 | 北京易真学思教育科技有限公司 | 文本检测方法、装置、电子设备及计算机存储介质 |
WO2020223859A1 (zh) * | 2019-05-05 | 2020-11-12 | 华为技术有限公司 | 一种检测倾斜文字的方法、装置及设备 |
CN111967449A (zh) * | 2020-10-20 | 2020-11-20 | 北京易真学思教育科技有限公司 | 文本检测方法、电子设备及计算机可读介质 |
CN112001331A (zh) * | 2020-08-26 | 2020-11-27 | 上海高德威智能交通系统有限公司 | 图像识别方法、装置、设备及存储介质 |
-
2020
- 2020-12-11 CN CN202011435586.6A patent/CN112232315B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190188528A1 (en) * | 2016-12-08 | 2019-06-20 | Tencent Technology (Shenzhen) Company Limited | Text detection method and apparatus, and storage medium |
WO2020223859A1 (zh) * | 2019-05-05 | 2020-11-12 | 华为技术有限公司 | 一种检测倾斜文字的方法、装置及设备 |
CN110751152A (zh) * | 2019-10-18 | 2020-02-04 | 中国科学技术大学 | 检测任意形状文本的方法 |
CN111652217A (zh) * | 2020-06-03 | 2020-09-11 | 北京易真学思教育科技有限公司 | 文本检测方法、装置、电子设备及计算机存储介质 |
CN112001331A (zh) * | 2020-08-26 | 2020-11-27 | 上海高德威智能交通系统有限公司 | 图像识别方法、装置、设备及存储介质 |
CN111797821A (zh) * | 2020-09-09 | 2020-10-20 | 北京易真学思教育科技有限公司 | 文本检测方法、装置、电子设备及计算机存储介质 |
CN111967449A (zh) * | 2020-10-20 | 2020-11-20 | 北京易真学思教育科技有限公司 | 文本检测方法、电子设备及计算机可读介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113033346A (zh) * | 2021-03-10 | 2021-06-25 | 北京百度网讯科技有限公司 | 文本检测方法、装置和电子设备 |
CN113033346B (zh) * | 2021-03-10 | 2023-08-04 | 北京百度网讯科技有限公司 | 文本检测方法、装置和电子设备 |
CN113610098A (zh) * | 2021-08-19 | 2021-11-05 | 创优数字科技(广东)有限公司 | 纳税号识别方法、装置、存储介质及计算机设备 |
CN114067237A (zh) * | 2021-10-28 | 2022-02-18 | 清华大学 | 视频数据处理方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112232315B (zh) | 2021-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112232315B (zh) | 文本框检测方法、装置、电子设备和计算机存储介质 | |
CN112308051B (zh) | 文本框检测方法、装置、电子设备和计算机存储介质 | |
CN112287924B (zh) | 文本区域检测方法、装置、电子设备和计算机存储介质 | |
CN111739005B (zh) | 图像检测方法、装置、电子设备及存储介质 | |
CN113077548B (zh) | 针对物体的碰撞检测方法、装置、设备和存储介质 | |
CN112150551A (zh) | 物体位姿的获取方法、装置和电子设备 | |
US10331949B2 (en) | Splitting merged table cells | |
CN114565916B (zh) | 目标检测模型训练方法、目标检测方法以及电子设备 | |
CN114648615B (zh) | 目标对象交互式重现的控制方法、装置、设备及存储介质 | |
CN112381183A (zh) | 目标检测方法、装置、电子设备及存储介质 | |
US20210374977A1 (en) | Method for indoor localization and electronic device | |
CN111967297A (zh) | 图像的语义分割方法、装置、电子设备及介质 | |
CN111652113A (zh) | 障碍物检测方法、装置、设备以及存储介质 | |
CN111709428B (zh) | 图像中关键点位置的识别方法、装置、电子设备及介质 | |
US10403040B2 (en) | Vector graphics rendering techniques | |
CN110969641A (zh) | 图像处理方法和装置 | |
CN113516697B (zh) | 图像配准的方法、装置、电子设备及计算机可读存储介质 | |
CN117422851A (zh) | 虚拟换衣方法及其装置、电子设备 | |
CN115187995B (zh) | 文档矫正方法、装置、电子设备和存储介质 | |
CN111784799A (zh) | 图像填充方法、装置、设备及存储介质 | |
CN111079059A (zh) | 页面检查方法、装置、设备及计算机可读存储介质 | |
US10452952B2 (en) | Typesetness score for a table | |
CN112990134B (zh) | 图像仿真方法、装置、电子设备及存储介质 | |
CN115564976A (zh) | 图像处理方法、装置、介质及设备 | |
CN115619904A (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 |