CN112308051A - 文本框检测方法、装置、电子设备和计算机存储介质 - Google Patents
文本框检测方法、装置、电子设备和计算机存储介质 Download PDFInfo
- Publication number
- CN112308051A CN112308051A CN202011584194.6A CN202011584194A CN112308051A CN 112308051 A CN112308051 A CN 112308051A CN 202011584194 A CN202011584194 A CN 202011584194A CN 112308051 A CN112308051 A CN 112308051A
- Authority
- CN
- China
- Prior art keywords
- detection frames
- detection
- boundary
- points
- model
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 355
- 238000012549 training Methods 0.000 claims description 82
- 230000006870 function Effects 0.000 claims description 45
- 238000011176 pooling Methods 0.000 claims description 28
- 238000012545 processing Methods 0.000 claims description 28
- 238000000034 method Methods 0.000 claims description 27
- 238000013507 mapping Methods 0.000 claims description 25
- 230000015654 memory Effects 0.000 claims description 19
- 238000010586 diagram Methods 0.000 claims description 15
- 238000002372 labelling Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 101150064138 MAP1 gene Proteins 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 238000005215 recombination Methods 0.000 description 2
- 230000006798 recombination Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012821 model calculation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
Abstract
本申请公开了一种文本框检测方法、装置、电子设备和计算机存储介质。具体实现方案为包括:将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道;其中,所述两个分支的通道包括用于表示N个检测框的中心点及其尺寸相关信息的第一分支通道,以及用于表示所述N个检测框的边界点的相关信息的第二分支通道;其中,N为大于等于1的整数;基于所述第一分支通道确定所述N个检测框;基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点;基于所述N个检测框分别对应的多个边界标注点,确定所述目标图像中包含的N个目标文本框。
Description
技术领域
本申请涉及图像处理领域,尤其涉及一种文本框检测方法、装置、电子设备和计算机存储介质。
背景技术
近年来,随着目标检测在众多领域的应用,使其在计算机视觉领域引起了很大关注,一些基于深度学习的目标检测方法成为焦点,其中,针对文本框的检测通常采用CenterNet框架进行,但是利用CenterNet框架进行密集文本检测,往往会出现框不全或者框住大量背景图像的问题。
发明内容
为了解决现有技术中上述至少一个问题,本申请实施例提供一种文本框检测方法、装置、电子设备和计算机存储介质。
第一方面,本申请实施例提供一种文本框检测方法,所述方法包括:
将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道;其中,所述两个分支的通道包括用于表示N个检测框的中心点及其尺寸相关信息的第一分支通道,以及用于表示所述N个检测框的边界点的相关信息的第二分支通道;其中,N为大于等于1的整数;
基于所述第一分支通道确定所述N个检测框;
基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点;
基于所述N个检测框分别对应的多个边界标注点,确定所述目标图像中包含的N个目标文本框。
第二方面,本申请实施例提供一种文本框检测装置,所述装置包括:
模型处理单元,用于将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道;其中,所述两个分支的通道包括用于表示N个检测框的中心点及其尺寸相关信息的第一分支通道,以及用于表示所述N个检测框的边界点的相关信息的第二分支通道;其中,N为大于等于1的整数;
第一检测单元,用于基于所述第一分支通道确定所述N个检测框;
第二检测单元,用于基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点;
文本框确定单元,用于基于所述N个检测框分别对应的多个边界标注点,确定所述目标图像中包含的N个目标文本框。
第三方面,本申请实施例提供一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请任意一项实施例所提供的方法。
第四方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本申请任意一项实施例所提供的方法。
上述申请中的一个实施例具有如下优点或有益效果:通过将图像输入目标模型,得到目标模型输出的两个分支通道,基于两个分支通道可以得到检测框所对应的边界标注点以最终确定目标文本框;其中通过两个分支的通道来表示检测框的中心点以及边界点的相关信息。如此,可以利用第一分支的通道确定检测框,再基于第二分支的通道的边界点的相关信息确定多个边界标注点,从而避免文本区域框不全的问题,也可以避免文本框内出现大量无用背景的问题,从而可以保证对待检测图像的文本框的检测速度的同时保证最终得到的文本框更加准确。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请实施例的文本框检测方法流程示意图一;
图2是根据本申请实施例的长曲文本示意图;
图3是根据本申请实施例的检测框的中心点得分示意图;
图4是根据本申请实施例的文本框检测的边界点及其对应的偏移量示意图;
图5是根据本申请实施例的文本框检测方法流程示意图二;
图6是根据本申请实施例的基于多个边界标注点确定的目标文本框示意图;
图7是根据本申请实施例的文本框检测方法流程示意图三;
图8是根据本申请实施例的文本框检测方法流程示意图四;
图9是根据本申请实施例的文本框检测装置结构意图;
图10是本申请另一实施例的电子设备组成结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
第一方面,本申请实施例提供一种文本框检测方法,如图1所示,包括:
S101:将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道;其中,所述两个分支的通道包括用于表示N个检测框的中心点及其尺寸相关信息的第一分支通道,以及用于表示所述N个检测框的边界点的相关信息的第二分支通道;其中,N为大于等于1的整数;
S102:基于所述第一分支通道确定所述N个检测框;
S103:基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点;
S104:基于所述N个检测框分别对应的多个边界标注点,确定所述目标图像中包含的N个目标文本框。
本申请实施例可以应用于电子设备,具体来说可以是终端设备或服务器。
上述S101中,所述目标图像可以为任意一个包含文字的图像,比如,可以是电子设备获取到的任意一张包含文字的图像;这里,所述电子设备获取任意一张包含文字的图像,或者所述电子设备获取目标图像的方式,可以是通过摄像头预先拍摄的包含文字的图像,又或者,可以从其他电子设备获取。
再进一步地,本申请实施例尤其适用于所述目标图像中包含长曲文本的处理。如图2所示,长曲文本可以理解为图像中包含的一个或多个文字的轮廓的最低点并非在同一直线上的文本。
具体的,S101中,所述将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道,包括:
将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图;
将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述两个分支的通道。
其中,所述目标模型中的所述第一网络模型具体可以为Resnet(Deep residualnetwork,深度残差网络)18网络。
一种示例中,所述目标模型中的第一网络模型,也就是Resnet18网络,可以由4个残差块(为了简化说明,后续称为block)。
具体的,所述将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图,可以包括:
所述目标模型中的所述第一网络模型负责将原图转变为高维特征,例如对输入图像提取纹理、边缘、角点和语义信息等特征。第一网络模型由经典的卷积神经网络构成,具体可以为Resnet18网络。
一种示例中,所述目标模型中的第一网络模型,也就是Resnet18网络,可以包括4个串联构建的残差块(为了简化说明,后续称为block)。每个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 Text Detectionwith Differentiable Binarization,可微分二值化网络)。
一种示例中,第二网络模型的上采样层将上述四组特征图全部通过插值的方式将其大小变为原图1/4大小并串联,每个block输出的特征映射数量都为128,得到一组通道数量总计为512的特征映射。接着在第一分支通道输出对应的通道注意力层对上述512通道的特征映射做一次卷积操作,两次反卷积操作,得到与输入图像大小一致的第一分支通道输出;在第二分支通道输出对应的通道注意力层对上述512通道的特征映射做三次卷积操作,得到与输入图像大小一致的第二分支通道输出,两个分支通道的输出可以根据需要进行设定,举例来说可以包括中心点概率图、距离图等。
上述S101中,得到的两个分支的通道中,所述第一分支通道,具体用于表示:所述N个检测框的中心点得分图、所述N个检测框的中心点的偏移量、所述N个检测框的预测宽度值、所述N个检测框的预测高度值。
其中,所述N个检测框的中心点得分图,具体为所述N个检测框的中心点的概率得分图。也就是说,如图3所示,第一分支通道中多个输出通道中的一个会为所输入的图像输出一个得分图,得分图中的每个像素点对应一个分数,代表相应的像素点可能作为检测框中心点的概率值。概率得分图中的分值均为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个检测框分别对应的预测高度值。
所述N个检测框的预测宽度值、所述N个检测框的预测高度值具体指的是:所述N个检测框分别对应的预测宽度值、所述N个检测框分别对应的预测高度值。根据上述内容对中心点位置调整后,得到实际情况下检测框中心点所处的位置。上述输出通道可以输出多个距离信息,结合中心点位置确认检测框的边界所在位置。例如,输出的距离信息可以是检测框两组对边的两个距离值,还可以是中心点距离检测框一组邻边的两个距离值,这里不做限定。两个距离值分别对应预测宽度值和预测高度值。
示例性的,上述第一分支通道,包括以下5个通道:
第一分支的第一通道,用于表示所述N个检测框的中心点得分图;
第一分支的第二通道,用于表示所述N个检测框分别对应的中心点的x轴偏移量;
第一分支的第三通道用于表示所述N个检测框分别对应的中心点的y轴偏移量;
第一分支的第四通道用于表示所述N个检测框分别对应的预测宽度值;
第一分支的第五通道用于表示所述N个检测框分别对应的预测高度值。
所述第二分支通道包括:所述N个检测框的边界点得分图、所述N个检测框的边界点的偏移量。
其中,所述N个检测框的边界点得分图具体可以为所述N个检测框的边界点概率得分图。
所述N个检测框的边界点的偏移量可以包括:
所述N个检测框的边界点的x轴第一偏移量、所述N个检测框的边界点的y轴第一偏移量、所述N个检测框的边界点的x轴第二偏移量、所述N个检测框的边界点的y轴第二偏移量。
其中,由于在预测的过程中,并不能保证得分最高的点就一定是检测框的边界点,也就是说预测到的边界点可能与实际的边界点发生一定量的偏移,因此还会用两个通道来预测边界点的x轴第一偏移量和y轴第一偏移量。其中,第一偏移量的值可以是预测的边界点距检测框的长边或宽边的垂直距离。举例来说,如图4所示,A2为预测得到的边界点,其距离检测框的长边的偏移量为4,则预测边界点A2相对于实际边界点A1的x轴的第一偏移量为0,y轴的第一偏移量为4;同样,B2点则是在y轴方向第一偏移量为0,其他点类似,此处不再一一穷举。
经过第一偏移量的纠偏处理,系统定位到N个检测框的多个实际边界点,例如A1,B1等。进一步的,每个实际边界点距离真实文本框上的标注点仍有一定的偏移量。此处,以实际边界点与真实文本框最近的标注点的偏移量作为第二偏移量。举例来说,如图4所示,A1为实际边界点,A0为距离A1最近的真实文本框上的标注点,则文本框标注点A0相对于实际边界点A1在x轴的第二偏移量为1,y轴的第二偏移量3。同样,B1点相对于真实文本框的标注点也对应一个x轴的第二偏移量和y轴的第二偏移量,其他点类似,此处不一一穷举。
示例性的,所述第二分支通道也包括5个通道,分别为:
第二分支的第一通道,用于表示所述N个检测框的边界点得分图;
第二分支的第二通道,用于表示所述N个检测框分别对应的边界点的x轴第一偏移量;
第二分支的第三通道用于表示所述N个检测框分别对应的边界点的y轴第一偏移量;
第二分支的第四通道用于表示所述N个检测框分别对应的边界点的x轴第二偏移量;
第二分支的第五通道用于表示所述N个检测框分别对应的边界点的x轴第二偏移量。
上述S102中,基于所述第一分支通道确定所述N个检测框,如图5所示,具体可以包括:
S201:对所述第一分支通道的所述N个检测框的中心点得分图进行二值化,得到二值化的N个检测框的中心点得分图,基于所述二值化的N个检测框的中心点得分图,确定N个预测中心点的位置坐标;
S202:基于所述第一分支通道的所述N个检测框的中心点的偏移量,对所述N个预测中心点的位置坐标进行调整,得到调整后的N个中心点的位置坐标;
S203:基于所述调整后的N个中心点的位置坐标、以及所述第一分支通道的所述N个检测框的预测宽度值、所述N个检测框的预测高度值,确定所述N个检测框。
其中,S201中,对所述第一分支通道的所述N个检测框的中心点得分图进行二值化,可以是:
根据预设概率门限值,将所述第一分支的第一通道所表示的所述N个检测框的中心点得分图中概率大于所述预设概率门限值的点对应的得分设置为1,将所述第一分支的第一通道所表示的所述N个检测框的中心点得分图中概率不大于所述预设概率门限值的点对应的得分设置为0。
相应的,得到二值化的N个检测框的中心点得分图,也就是基于上述处理可以得到二值化的N个检测框的中心点得分图;在二值化的N个检测框的中心点得分图中的各个坐标点对应的值为0或者1。
所述基于所述二值化的N个检测框的中心点得分图,确定N个预测中心点的位置坐标,可以为:将所述二值化的N个检测框的中心点得分图中值为1的坐标点,作为所述N个预测中心点的位置坐标。
S202中,基于所述第一分支通道的所述N个检测框的中心点的偏移量,对所述N个预测中心点的位置坐标进行调整,得到调整后的N个中心点的位置坐标,可以包括:
基于第一分支的第二通道包含的所述N个检测框分别对应的中心点的x轴偏移量、以及第一分支的第三通道包括的所述N个检测框分别对应的中心点的y轴偏移量,对相应位置处的N个预测中心点的位置坐标分别进行调整,得到调整后的N个中心点的位置坐标。
具体的,基于第一分支的第二通道表示的所述N个检测框中的第i个检测框对应的中心点的x轴偏移量、以及第一分支的第三通道表示的所述第i个检测框对应的中心点的y轴偏移量,对所述第i个检测框所对应的第i个预测中心点的位置坐标进行调整,得到调整后的第i个中心点的位置坐标。其中,i为大于等于1且小于等于N的整数。
所述N个检测框中的第i个检测框,可以为N个检测框中的任意一个检测框,也就是,基于第一分支的第二通道以及第一分支的第三通道所表示的每一个检测框的中心点的xy轴偏移量,对每一个检测框的预测中心点的位置坐标进行调整。
S203中,基于所述调整后的N个中心点的位置坐标、以及所述第一分支通道的所述N个检测框的预测宽度值、所述N个检测框的预测高度值,确定所述N个检测框,具体可以包括:基于第一分支的第四通道包含的所述N个检测框分别对应的预测宽度值、以及第一分支的第五通道包括的所述N个检测框分别对应的预测高度值、以及所述调整后的N个中心点的位置坐标,确定所述N个检测框。
具体的,基于第一分支的第四通道包含的所述N个检测框中的第i个检测框对应的预测宽度值、以及第一分支的第五通道包含的所述N个检测框中的第i个检测框对应的预测高度值,以及所述调整后的N个中心点的位置坐标,确定第i个检测框的第一类边及第二类边所在位置。其中,i为大于等于1且小于等于N的整数。
所述N个检测框中的第i个检测框,可以为N个检测框中的任意一个检测框,也就是,基于第一分支的第四通道以及第一分支的第五通道所表示的每一个检测框的预测宽度值和预测高度值,确定对每一个检测框的第一类边及第二类边所在位置。
需要指出的是,第一类边可以为长边、第二类边可以为宽边。也就是一个检测框可以有两条第一类边,即两条长边,一个检测框可以有两条第二类边即两条宽边。
上述S103中,所述基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点,包括:
基于所述第二分支通道中的所述N个检测框的边界点得分图以及所述N个检测框,确定所述N个检测框分别对应的多个待调整边界标注点;
基于所述第二分支通道中的所述N个检测框的边界点的偏移量,对所述N个检测框分别对应的所述多个待调整边界标注点进行调整,得到调整后的所述N个检测框分别对应的所述多个边界标注点。
其中,所述基于所述第二分支通道中的所述N个检测框的边界点得分图以及所述N个检测框,确定所述N个检测框分别对应的多个待调整边界标注点,包括:
基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第一类边中的坐标点对应的得分图;对所述第i个检测框的第一类边中的坐标点对应的得分图进行最大值池化处理,得到第一类边最大值池化处理结果;从所述第一类边最大值池化处理结果中选取得分最高的M个待调整边界标注点;其中,M为大于等于1的整数;
和/或,
基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第二类边中的坐标点对应的得分图;对所述第i个检测框的第二类边中的坐标点对应的得分图进行最大值池化处理,得到第二类边最大值池化处理结果;从所述第二类边最大值池化处理结果中选取得分最高的K个待调整边界标注点;其中,K为大于等于1且小于M的整数。
其中,确定所述N个检测框中的第i个检测框中的第一类边以及第二类边的方式,可以是:基于第i个检测框的中心点坐标及预测高度值和预测宽度值获取所述N个检测框中的第i个检测框的四个顶点坐标,进而根据四个顶点坐标确定所述N个检测框中的第i个检测框的两条第一类边及两条第二类边。例如,可以在检测框对应的四个顶点中选取任意两个顶点,当两个顶点的横坐标相同或纵坐标相同时,计算这两个坐标间的距离值,由此计算得到4个距离值,将距离值较大的两组坐标点对应的连线作为第一类边(也就是长边),将距离值较小的两组坐标点对应的连线作为第二类边(也就是宽边),由此得到两条第一类边及两条第二类边。当然还可以通过其他方式确定两条第一类边和两条第二类边,此处不做限定。
其中,基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第一类边中的坐标点对应的得分图,具体为:
基于所述第二分支的第一通道所表示的所述N个检测框的边界点得分图,确定所述N个检测框中的第i检测框的第一类边中的坐标点所对应的概率得分。
可以是,将第i个检测框与第二分支的第一通道的N个检测框的边界点得分图进行位置匹配,得到与第i个检测框的第一类边上的每一个坐标点在N个检测框的边界点得分图所对应的坐标点位置,进而确定该对应的坐标点位置处所对应的边界点概率得分(或称为边界点概率值)。
上述M可以为根据实际情况设置的数值,一种优选的示例中,M等于10,也就是在每一个检测框的每一个第一类边上选择5个待调整边界标注点。由于每一个检测框为矩形框,因此每一个检测框存在两个第一类边,最终选取出来的包含有两个第一类边上各自包含的5个待调整边界标注点。
所述基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第二类边中的坐标点对应的得分图,具体包括:
基于所述第二分支的第一通道所表示的所述N个检测框的边界点得分图,确定所述N个检测框中的第i检测框的第二类边中的坐标点所对应的概率得分。
可以是,将第i个检测框与第二分支的第一通道的N个检测框的边界点得分图进行位置匹配,得到与第i个检测框的第二类边上的每一个坐标点在N个检测框的边界点得分图所对应的坐标点位置,进而确定该对应的坐标点位置处所对应的边界点概率得分(或称为边界点概率值)。
上述K可以为根据实际情况设置的数值,一种优选的示例中,K等于4,也就是在每一个检测框的每一个第一类边上选择2个待调整边界标注点。由于每一个检测框为矩形框,因此每一个检测框存在两个第二类边(即宽边),最终选取出来的包含有两个第二类边上各自包含的2个待调整边界标注点,也就是最终选取出来两个宽边上各自包含的2个待调整边界标注点。
基于所述第二分支通道中的所述N个检测框的边界点的偏移量,对所述N个检测框分别对应的所述多个待调整边界标注点进行调整,得到调整后的所述N个检测框分别对应的所述多个边界标注点,具体可以包括:
基于所述第二分支的第二通道表示的所述N个检测框的边界点的x轴第一偏移量,所述第二分支的第三通道所表示的所述N个检测框的边界点的y轴第一偏移量,对所述N个检测框中的第i个检测框所对应的M+K个待调整边界标注点进行初始调整,得到第i个检测框所对应的M+K个初始调整边界点;
基于所述第二分支的第四通道表示的所述N个检测框的边界点的x轴第二偏移量,所述第二分支的第五通道所表示的所述N个检测框的边界点的y轴第二偏移量,对第i个检测框所对应的M+K个初始调整边界点进行调整,得到所述第i个检测框对应的M+K个边界标注点。
示例性的,M=10,K=4,基于所述第二分支的第二通道和第三通道,分别对N个检测框中的第i个检测框对应的14个待调整边边界点进行x轴、y轴方向的调整,得到第i个检测框对应的14个初始调整边界点。进一步的,基于基于所述第二分支的第四通道和第五通道,分别对N个检测框中的第i个检测框对应的14个初始边界点进行x轴、y轴方向的调整,得到所述第i个检测框对应的14个边界标注点。M和K还可以根据实际检测框的长宽比进行不同的选择,这里不做穷举。
上述S104,基于所述N个检测框分别对应的多个边界标注点,确定所述目标图像中包含的N个目标文本框,具体可以包括:
基于所述N个检测框中的第i个检测框对应的M+K个边界标注点进行连接得到一个文本框,将该文本框作为所述第i个检测框所对应的第i个目标文本框。
比如,参见图6,以M+K个边界标注点中的任意一个边界标注点为例,任意一个边界标注点可以有多个相邻标注坐标点,可以将该任意一个边界标注点与其相邻边界标注点进行连接,最终可以得到全部边界标注点与其相邻边界标注点之间的连线组成的连线图;然后可以从连线图中选取一个覆盖面积最大的闭合的多个连线组成的框作为一个目标文本框。
还需要说明的,上述所述目标模型具体可以是一种优化的CenterNet模型。下面针对如何训练得到该目标模型进行说明:
采用训练样本对预设模型进行训练,得到训练后的所述目标模型;
其中,所述训练样本包含文本框的多个边界标注点的标签。
所述多个边界标注点可以为文本框的全部边界标注点,或者可以是部分边界标注点,比如可以是14个边界标注点。
具体的,所述训练样本可以为训练样本集合中的任意一个训练样本,需要指出的是,采用训练样本进行预设模型的训练并不是只能使用同一个训练样本,也并不是指进行一次迭代训练就可以完成的,在预设模型的训练过程中,可能在不同次迭代处理中采用不同的训练样本,关于如何选取训练样本,并不是本实施例所要重点说明的,因此这里不对其展开描述。
针对每一个训练样本来说,可以是包含的文本框的多个边界标注点的标签的图片。
基于训练样本中标注的确定对应的文本框的多个边界标注点的标签进一步可以确定文本框所对应的两个分支的通道的标签。所述两个分支的通道的标签包括用于标注文本框中心点及其尺寸相关信息的第一分支通道标签,以及用于标注文本框边界点的相关信息的第二分支通道标签,再进一步来说,包括:
第一分支的第一通道标签为标注文本框的中心点得分图的标签;
第一分支的第二通道标签为标注文本框对应的中心点的x轴偏移量的标签;
第一分支的第三通道标签为标注文本框对应的中心点的y轴偏移量的标签;
第一分支的第四通道标签为标注文本框对应的宽度值的标签;
第一分支的第五通道标签为标注文本框对应的高度值的标签;
第二分支的第一通道标签为标注文本框的边界点得分图的标签;
第二分支的第二通道标签为标注文本框的边界点x轴第一偏移量的标签;
第二分支的第三通道标签为标注文本框的边界点y轴第一偏移量的标签;
第二分支的第四通道标签为标注文本框的边界点x轴第二偏移量的标签;
第二分支的第五通道标签为标注文本框的边界点y轴第二偏移量的标签。
其中,第一偏移量指的是预测得到的初始边界点相对于待调整边界标注点所对应的偏移量,第二偏移量指的是待调整边界标注点相对于真实文本框的坐标点所对应的偏移量。具体情况可以参考上述有关图4的说明,此处不再赘述。
需要指出的是,第一分支的第一通道标签为标注文本框的中心点得分图的标签中,所述中心点得分图的标签为二值化的得分,也就是中心点得分为1,其余非中心点的坐标点均为0。
同样的,第二分支的第一通道标签为标注文本框的边界点得分图的标签,也为二值化的值;需要注意的是,由于文本框的边可能占用的像素点并非1个,因此,这里可以存在一定宽度,比如,可以是将与当前的边垂直方向的连续的P个坐标点均标注为1;其中,P可以为预设数值,比如,可以是5,或者可以更多或更少,这里不做穷举。
所述采用训练样本对预设模型进行训练,包括:
将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图;
将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的两个分支的通道;
基于所述训练样本所对应的两个分支的通道、以及所述训练样本所包含的文本框的多个边界标注点的标签,确定第一类损失函数以及第二类损失函数;
根据所述第一类损失函数以及第二类损失函数进行反向传导更新所述预设模型。
将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图,具体可以包括:所述预设模型的预设第一网络模型负责将训练样本图像转变为高维特征,例如对训练样本图像提取纹理、边缘、角点和语义信息等特征。预设第一网络模型由经典的卷积神经网络构成,优选地,以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通道的特征映射做一次卷积操作,两次反卷积操作,得到与训练样本图像大小一致的第二分支通道输出。以及,对所述特征映射进行三次卷积操作,输出与所述训练样本大小一致的所述第二分支通道。
基于所述训练样本所对应的两个分支的通道、以及所述训练样本所包含的文本框的多个边界标注点的标签,确定第一类损失函数以及第二类损失函数,包括:
基于所述训练样本所对应的两个分支的通道中的第一分支通道、以及所述训练样本所对应的两个分支的通道标签的第一分支的通道标签,计算第一类损失函数以及第二类损失函数;以及,
基于所述训练样本所对应的两个分支的通道中的第二分支通道、以及所述训练样本所对应的两个分支的通道标签的第二分支的通道标签,计算第一类损失函数以及第二类损失函数。
上述第一类损失函数为focal loss(焦点损失)损失函数;第二类损失函数为平滑L1损失函数。
具体的,基于所述训练样本所对应的两个分支的通道中的第一分支通道、以及所述训练样本所对应的两个分支的通道标签的第一分支的通道标签,计算第一类损失函数以及第二类损失函数,可以包括:
根据用于表示所述检测框的中心点得分图的第一分支的第一通道,与所述训练样本中标注的文本框的多个边界标注点的标签所确定的M+K个坐标点的标签所确定的文本框的中心点,计算得到第一分支的第一通道对应的第一类损失函数;
根据用于表示所述检测框中心点偏移量的第一分支的第二通道以及第三通道,与所述训练样本中标注的文本框的多个边界标注点的标签所确定的文本框的中心点,计算得到第一分支的第二通道以及第三通道对应的第二类损失函数;
根据用于表示所述检测框预测宽度值以及预测高度值的第一分支的第四通道以及第五通道,与所述训练样本中标注的文本框的多个边界标注点的标签所确定的文本框的宽度以及高度,计算得到第一分支的第四通道以及第五通道对应的第二类损失函数。
基于所述训练样本所对应的两个分支的通道中的第二分支通道、以及所述训练样本所对应的两个分支的通道标签的第二分支的通道标签,计算第一类损失函数以及第二类损失函数,可以包括:
根据用于表示所述检测框的边界点得分图的第二分支的第一通道,与所述训练样本中标注的文本框的多个边界标注点的标签所确定的文本框的边界点,计算得到第二分支的第一通道对应的第一类损失函数;
根据用于表示所述检测框边界点第一偏移量的第二分支的第二通道以及第三通道,与所述训练样本中标注的文本框的多个边界标注点的标签所确定的文本框的边界点,计算得到第二分支的第二通道以及第三通道对应的第二类损失函数;
根据用于表示所述检测框边界点第二偏移量的第二分支的第四通道以及第五通道,与所述训练样本中标注的文本框的多个边界标注点的标签所确定的文本框的边界点,计算得到第二分支的第四通道以及第五通道对应的第二类损失函数。
将所述损失函数进行反向传导更新所述预设模型中,所述更新所述预设模型可以具体指的是,更新所述预设模型中的参数;再进一步地,可以是:更新所述预设模型的预设第一网络模型的参数和/或更新所述预设模型中的预设第二网络模型的参数。
示例性的,在模型训练阶段,使用Resnet18网络模型作为预设模型的第一网络模型,Resnet18网络模型还可以称为所述预设模型的骨干网络,或称为基础网络模型,Resnet18网络由4个block(或可以称为残差块)串联构建,每个block包括若干层卷积操作;
其中,4个block中,第一个block输出的特征映射大小为原图的1/4、第二个block输出的特征映射大小为原图1/8,第三个block输出的特征映射大小为原图1/16,第四个block输出的特征映射大小为原图1/32。在DB中,每个block输出的特征映射数量都为128。至此得到resnet18网络模型输出的特征。
接下来基于所述预设模型的第二网络模型进行处理,具体可以包括:
将四组特征映射全部通过插值的方式将其大小变为原图1/4大小并串联,得到一组特征映射,其通道数量为512。
接着分别进行两个分支的通道的处理,其中,第一分支的通道的处理中,对上述512通道的特征映射做一次卷积操作,两次反卷积操作,得到与输入的训练样本(或称为训练图像)大小一致的第一分支的5通道输出,其具体含义如上述实施例说明,这里不做赘述。
其中,第一分支的第一通道使用CenterNet中用focalloss进行训练,第一分支的其他通道均使用平滑L1损失函数进行训练。
第二分支的通道的处理中,对上述512通道的特征映射做3次卷积操作,得到与输入的训练样本(或称为训练图像)大小一致的5通道输出,其具体含义如上述实施例说明,这里不做赘述。
其中,第二分支的第一通道使用CenterNet中用focalloss进行训练,第二分支的其他通道均使用平滑L1损失函数进行训练。
在针对所述预设模型的迭代次数达到预设门限值,或者所述预设模型的迭代训练中指标(比如准确率或召回率)不再变化的时候,可以确定训练完成,最终得到的训练后的预设模型即为本申请实施例前述目标模型。
最后结合图7对本申请实施例进行详细说明:
S301:将目标图像输入目标模型中的第一网络模型,得到所述目标模型中的第一网络模型输出的特征,其中,特征可以包括4组特征映射的特征图;所述第一网络模型可以为Resnet18网络。
S302:将所述特征输入所述目标模型中的第二网络模型,得到所述第二网络模型输出的第一分支通道以及第二分支通道。
具体的,第二网络模型的处理,如图8所示可以包括:
S3021:将第一网络模型输出的所述特征中包含的4组特征映射的特征图大小全部上采样到原始目标图像1/4大小并进行串联,得到串联后的特征图(或称为特征映射)。也就是将上述上采样到原始目标图像1/4大小的特征图串联在一起,得到与目标图像大小一致的特征图。
S3022:将串联后的特征图(或特征映射),做一次卷积操作,两次反卷积操作,得到与输入图像大小一致的第一分支的5通道输出;
其中,第一分支的第一通道表示检测框中心点得分图(即每个像素点值在0到1之间,表示这个点是检测框框中心点的概率,所谓的检测框是指将整个长曲文本包含在内的大矩形框),第一分支的第二通道和第三通道分别表示检测框中心点的xy偏移量,第一分支的第四通道和第五通道表示预测的检测框的宽度值和高度值;
S3023:对串联后的特征图(或特征映射),进行两次3*3卷积,然后进行1*1卷积得到的特征映射降维为(1+2+2)的第二分支的5通道输出,(这里1表示检测框边界点的得分图,第一个2表示检测框边界点的xy偏移量,通过检测框边界点的偏移量,能将检测框的边界点进行修正(检测框边界点是虚拟的点));第二个2表示边界点的回归量,即检测框边界点相对于真实长曲文本边界点的偏移量。
S303:根据第一分支通道先对检测框中心点图二值化,然后经过NMS(非极大值抑制)或者直接选择得分最高的点,可以得到检测框,该检测框也可以称为检测矩形框(这里与CenterNet操作一致)。
S304:根据第二分支通道以及所述检测框,得到检测框的多个边界标注点。
具体的,根据S303结果,在S3023得到的第二分支的第一通道输出的检测框边界点得分图上选出检测框边界点,选择的方式:根据指定规则,对于文本来说,长宽比是极度失衡的,也就是长比宽大很多,因此在两条第一类边上分别选出5个边界点,两条第二类边上分别选出2个边界点,一共14个边界点。
其中,边界点的选取的方式为,在每条边的得分图上,做两次3*3的最大值池化操作(最大值池化的优点在于它能学习到图像的边缘和纹理结构),然后对池化后的结果选出得分最大的5个点或者2个点。
根据第二分支的第二通道以及第三通道确定检测框的14个边界点的xy偏移量,调整14个点的坐标,即得到调整后的检测框边界点的坐标;接着根据第二分支的第四通道以及第五通道确定该14个边界点对应的回归量,最终得到调整后的14个边界点。
根据该14个边界点得出最终的真实目标文本框。也就是说,根据上述调整后的14个边界点可以确定一个目标文本框(比如长曲文本框)的边界点,进而获得该真实的目标文本框(也就是真实长曲文本框)。
采用以上处理,对目标图像并行处理完所有(大框或检测框),则针对目标图像的密集文本检测完成。也就是说,目标图像中可以包含N个检测框,针对N个检测框中的每一个检测框均可以使用以上流程进行处理,最终可以检测出目标图像中包含的全部目标文本框。
根据本申请的实施例,本申请还提供了一种文本框检测装置,如图9所示,所述装置包括:
模型处理单元401,用于将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道;其中,所述两个分支的通道包括用于表示N个检测框的中心点及其尺寸相关信息的第一分支通道,以及用于表示所述N个检测框的边界点的相关信息的第二分支通道;其中,N为大于等于1的整数;
第一检测单元402,用于基于所述第一分支通道确定所述N个检测框;
第二检测单元403,用于基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点;
文本框确定单元404,用于基于所述N个检测框分别对应的多个边界标注点,确定所述目标图像中包含的N个目标文本框。
具体的,所述第一分支通道包括:所述N个检测框的中心点得分图、所述N个检测框的中心点的偏移量、所述N个检测框的预测宽度值、所述N个检测框的预测高度值。
具体的,所述第一检测单元402,用于对所述第一分支通道的所述N个检测框的中心点得分图进行二值化,得到二值化的N个检测框的中心点得分图,基于所述二值化的N个检测框的中心点得分图,确定N个预测中心点的位置坐标;基于所述第一分支通道的所述N个检测框的中心点的偏移量,对所述N个预测中心点的位置坐标进行调整,得到调整后的N个中心点的位置坐标;基于所述调整后的N个中心点的位置坐标、以及所述第一分支通道的所述N个检测框的预测宽度值、所述N个检测框的预测高度值,确定所述N个检测框。
具体的,所述第二分支通道包括:所述N个检测框的边界点得分图、所述N个检测框的边界点的偏移量。
具体的,所述第二检测单元403,用于基于所述第二分支通道中的所述N个检测框的边界点得分图以及所述N个检测框,确定所述N个检测框分别对应的多个待调整边界标注点;基于所述第二分支通道中的所述N个检测框的边界点的偏移量,对所述N个检测框分别对应的所述多个待调整边界标注点进行调整,得到调整后的所述N个检测框分别对应的所述多个边界标注点。
具体的,所述第二检测单元403,用于基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第一类边中的坐标点对应的得分图;对所述第i个检测框的第一类边中的坐标点对应的得分图进行最大值池化处理,得到第一类边最大值池化处理结果;从所述第一类边最大值池化处理结果中选取得分最高的M个待调整边界标注点;其中,M为大于等于1的整数;i为大于等于1且小于等于M的整数;
以及,
基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第二类边中的坐标点对应的得分图;对所述第i个检测框的第二类边中的坐标点对应的得分图进行最大值池化处理,得到第二类边最大值池化处理结果;从所述第二类边最大值池化处理结果中选取得分最高的K个待调整边界标注点;其中,K为大于等于1且小于M的整数。
具体的,所述模型处理单元404,用于将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图;将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述两个分支的通道。
具体的,所述模型处理单元404,用于执行所述目标模型中的所述第二网络模型的处理,具体包括:
将输入的所述特征图进行串联得到特征映射;
对所述特征映射进行一次卷积操作以及两次反卷积操作,输出与所述目标图像大小一致的所述第一分支通道;以及,对所述特征映射进行三次卷积操作,输出与所述目标图像大小一致的所述第二分支通道。
具体的,所述装置还包括:
模型训练单元405,用于采用训练样本对预设模型进行训练,得到训练后的所述目标模型;
其中,所述训练样本中标注有两个分支的通道的标签;所述两个分支的通道的标签包括用于标注文本框中心点及其尺寸相关信息的第一分支通道标签,以及用于标注文本框边界点的相关信息的第二分支通道标签。
具体的,所述模型训练单元405,用于将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图;将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的两个分支的通道;基于所述训练样本所对应的两个分支的通道、以及所述训练样本所对应的两个分支的通道标签,确定损失函数;将所述损失函数进行反向传导更新所述预设模型。
具体的,所述模型训练单元405,用于基于所述训练样本所对应的两个分支的通道中的第一分支通道、以及所述训练样本所对应的两个分支的通道标签的第一分支的通道标签,计算第一类损失函数以及第二类损失函数;以及,
基于所述训练样本所对应的两个分支的通道中的第二分支通道、以及所述训练样本所对应的两个分支的通道标签的第二分支的通道标签,计算第一类损失函数以及第二类损失函数。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图10所示,是根据本申请实施例的电子设备的框图。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图10所示,该电子设备包括:一个或多个处理器801、存储器802,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图10中以一个处理器801为例。
存储器802即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的文本框检测方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的文本框检测方法。
存储器802作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的文本框检测方法对应的程序指令/模块。处理器801通过运行存储在存储器802中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的文本框检测方法。
存储器802可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器802可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器802可选包括相对于处理器801远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
电子设备还可以包括:输入装置803和输出装置804。处理器801、存储器802、输入装置803和输出装置804可以通过总线或者其他方式连接,图10中以通过总线连接为例。
输入装置803可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置804可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (22)
1.一种文本框检测方法,其特征在于,所述方法包括:
将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道;其中,所述两个分支的通道包括用于表示N个检测框的中心点及其尺寸相关信息的第一分支通道,以及用于表示所述N个检测框的边界点的相关信息的第二分支通道;其中,N为大于等于1的整数;
基于所述第一分支通道确定所述N个检测框;
基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点;
基于所述N个检测框分别对应的多个边界标注点,确定所述目标图像中包含的N个目标文本框。
2.根据权利要求1所述的方法,其特征在于,所述第一分支通道包括:所述N个检测框的中心点得分图、所述N个检测框的中心点的偏移量、所述N个检测框的预测宽度值、所述N个检测框的预测高度值。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一分支通道确定所述N个检测框,包括:
对所述第一分支通道的所述N个检测框的中心点得分图进行二值化,得到二值化的N个检测框的中心点得分图,基于所述二值化的N个检测框的中心点得分图,确定N个预测中心点的位置坐标;
基于所述第一分支通道的所述N个检测框的中心点的偏移量,对所述N个预测中心点的位置坐标进行调整,得到调整后的N个中心点的位置坐标;
基于所述调整后的N个中心点的位置坐标、以及所述第一分支通道的所述N个检测框的预测宽度值、所述N个检测框的预测高度值,确定所述N个检测框。
4.根据权利要求1所述的方法,其特征在于,所述第二分支通道包括:所述N个检测框的边界点得分图、所述N个检测框的边界点的偏移量。
5.根据权利要求4所述的方法,其特征在于,所述基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点,包括:
基于所述第二分支通道中的所述N个检测框的边界点得分图以及所述N个检测框,确定所述N个检测框分别对应的多个待调整边界标注点;
基于所述第二分支通道中的所述N个检测框的边界点的偏移量,对所述N个检测框分别对应的所述多个待调整边界标注点进行调整,得到调整后的所述N个检测框分别对应的所述多个边界标注点。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第二分支通道中的所述N个检测框的边界点得分图以及所述N个检测框,确定所述N个检测框分别对应的多个待调整边界标注点,包括:
基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第一类边中的坐标点对应的得分图;对所述第i个检测框的第一类边中的坐标点对应的得分图进行最大值池化处理,得到第一类边最大值池化处理结果;从所述第一类边最大值池化处理结果中选取得分最高的M个待调整边界标注点;其中,M为大于等于1的整数;i为大于等于1且小于等于N的整数;
以及,
基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第二类边中的坐标点对应的得分图;对所述第i个检测框的第二类边中的坐标点对应的得分图进行最大值池化处理,得到第二类边最大值池化处理结果;从所述第二类边最大值池化处理结果中选取得分最高的K个待调整边界标注点;其中,K为大于等于1且小于M的整数。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道,包括:
将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图;
将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述两个分支的通道。
8.根据权利要求7所述的方法,其特征在于,所述将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述两个分支的通道,包括:
将输入的所述特征图进行串联得到特征映射;
对所述特征映射进行一次卷积操作以及两次反卷积操作,输出与所述目标图像大小一致的所述第一分支通道;以及,对所述特征映射进行三次卷积操作,输出与所述目标图像大小一致的所述第二分支通道。
9.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
采用训练样本对预设模型进行训练,得到训练后的所述目标模型;
其中,所述训练样本中包含文本框的多个边界标注点的标签。
10.根据权利要求9所述的方法,其特征在于,所述采用训练样本对预设模型进行训练,包括:
将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图;
将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的两个分支的通道;
基于所述训练样本所对应的两个分支的通道、以及所述训练样本所包含的文本框的多个边界标注点的标签,确定第一类损失函数以及第二类损失函数;
根据所述第一类损失函数以及第二类损失函数进行反向传导更新所述预设模型。
11.一种文本框检测装置,其特征在于,所述装置包括:
模型处理单元,用于将目标图像输入目标模型,得到所述目标模型输出的两个分支的通道;其中,所述两个分支的通道包括用于表示N个检测框的中心点及其尺寸相关信息的第一分支通道,以及用于表示所述N个检测框的边界点的相关信息的第二分支通道;其中,N为大于等于1的整数;
第一检测单元,用于基于所述第一分支通道确定所述N个检测框;
第二检测单元,用于基于所述第二分支通道,确定所述N个检测框分别对应的多个边界标注点;
文本框确定单元,用于基于所述N个检测框分别对应的多个边界标注点,确定所述目标图像中包含的N个目标文本框。
12.根据权利要求11所述的装置,其特征在于,所述第一分支通道包括:所述N个检测框的中心点得分图、所述N个检测框的中心点的偏移量、所述N个检测框的预测宽度值、所述N个检测框的预测高度值。
13.根据权利要求12所述的装置,其特征在于,所述第一检测单元,用于对所述第一分支通道的所述N个检测框的中心点得分图进行二值化,得到二值化的N个检测框的中心点得分图,基于所述二值化的N个检测框的中心点得分图,确定N个预测中心点的位置坐标;基于所述第一分支通道的所述N个检测框的中心点的偏移量,对所述N个预测中心点的位置坐标进行调整,得到调整后的N个中心点的位置坐标;基于所述调整后的N个中心点的位置坐标、以及所述第一分支通道的所述N个检测框的预测宽度值、所述N个检测框的预测高度值,确定所述N个检测框。
14.根据权利要求11所述的装置,其特征在于,所述第二分支通道包括:所述N个检测框的边界点得分图、所述N个检测框的边界点的偏移量。
15.根据权利要求14所述的装置,其特征在于,所述第二检测单元,用于基于所述第二分支通道中的所述N个检测框的边界点得分图以及所述N个检测框,确定所述N个检测框分别对应的多个待调整边界标注点;基于所述第二分支通道中的所述N个检测框的边界点的偏移量,对所述N个检测框分别对应的所述多个待调整边界标注点进行调整,得到调整后的所述N个检测框分别对应的所述多个边界标注点。
16.根据权利要求15所述的装置,其特征在于,所述第二检测单元,用于基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第一类边中的坐标点对应的得分图;对所述第i个检测框的第一类边中的坐标点对应的得分图进行最大值池化处理,得到第一类边最大值池化处理结果;从所述第一类边最大值池化处理结果中选取得分最高的M个待调整边界标注点;其中,M为大于等于1的整数;i为大于等于1且小于等于N的整数;
以及,
基于所述第二分支通道中包含的所述N个检测框的边界点得分图,确定所述N个检测框中的第i个检测框的第二类边中的坐标点对应的得分图;对所述第i个检测框的第二类边中的坐标点对应的得分图进行最大值池化处理,得到第二类边最大值池化处理结果;从所述第二类边最大值池化处理结果中选取得分最高的K个待调整边界标注点;其中,K为大于等于1且小于M的整数。
17.根据权利要求11-16任一项所述的装置,其特征在于,所述模型处理单元,用于将所述目标图像输入所述目标模型的第一网络模型,得到所述目标模型的所述第一网络模型输出的特征图;将所述特征图输入所述目标模型中的第二网络模型,得到所述目标模型中的所述第二网络模型输出的所述两个分支的通道。
18.根据权利要求17所述的装置,其特征在于,所述模型处理单元,用于执行所述目标模型中的所述第二网络模型的处理,具体包括:
将输入的所述特征图进行串联得到特征映射;
对所述特征映射进行一次卷积操作以及两次反卷积操作,输出与所述目标图像大小一致的所述第一分支通道;以及,对所述特征映射进行三次卷积操作,输出与所述目标图像大小一致的所述第二分支通道。
19.根据权利要求11-16任一项所述的装置,其特征在于,所述装置还包括:
模型训练单元,用于采用训练样本对预设模型进行训练,得到训练后的所述目标模型;
其中,所述训练样本中包含文本框的多个边界标注点的标签。
20.根据权利要求19所述的装置,其特征在于,所述模型训练单元,用于将所述训练样本输入所述预设模型的预设第一网络模型,得到所述预设模型的预设第一网络模型输出的特征图;将所述特征图输入所述预设模型中的预设第二网络模型,得到所述预设模型中的所述预设第二网络模型输出的训练样本所对应的两个分支的通道;基于所述训练样本所对应的两个分支的通道、以及所述训练样本所包含的文本框的多个边界标注点的标签,确定第一类损失函数以及第二类损失函数;根据所述第一类损失函数以及第二类损失函数进行反向传导更新所述预设模型。
21.一种电子设备,其特征在于,所述电子设备包括
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的方法。
22.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011584194.6A CN112308051B (zh) | 2020-12-29 | 2020-12-29 | 文本框检测方法、装置、电子设备和计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011584194.6A CN112308051B (zh) | 2020-12-29 | 2020-12-29 | 文本框检测方法、装置、电子设备和计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112308051A true CN112308051A (zh) | 2021-02-02 |
CN112308051B CN112308051B (zh) | 2021-10-29 |
Family
ID=74487540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011584194.6A Active CN112308051B (zh) | 2020-12-29 | 2020-12-29 | 文本框检测方法、装置、电子设备和计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112308051B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112990201A (zh) * | 2021-05-06 | 2021-06-18 | 北京世纪好未来教育科技有限公司 | 文本框检测方法、装置、电子设备和计算机存储介质 |
CN112990102A (zh) * | 2021-04-16 | 2021-06-18 | 四川阿泰因机器人智能装备有限公司 | 一种改进的Centernet复杂环境目标检测方法 |
CN113313083A (zh) * | 2021-07-28 | 2021-08-27 | 北京世纪好未来教育科技有限公司 | 文本检测方法及装置 |
CN113850239A (zh) * | 2021-11-29 | 2021-12-28 | 北京世纪好未来教育科技有限公司 | 多文档检测方法、装置、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170323033A1 (en) * | 2014-11-06 | 2017-11-09 | Japan Science And Technology Agency | Flow pattern regular expression creating method, regular expression creating apparatus, and computer-executable program |
CN108229303A (zh) * | 2017-11-14 | 2018-06-29 | 北京市商汤科技开发有限公司 | 检测识别和检测识别网络的训练方法及装置、设备、介质 |
CN109948533A (zh) * | 2019-03-19 | 2019-06-28 | 讯飞智元信息科技有限公司 | 一种文本检测方法、装置、设备及可读存储介质 |
CN110046616A (zh) * | 2019-03-04 | 2019-07-23 | 北京奇艺世纪科技有限公司 | 图像处理模型生成、图像处理方法、装置、终端设备及存储介质 |
CN110837835A (zh) * | 2019-10-29 | 2020-02-25 | 华中科技大学 | 一种基于边界点检测的场景文本端到端识别方法 |
US10817717B2 (en) * | 2018-02-26 | 2020-10-27 | Abc Fintech Co., Ltd. | Method and device for parsing table in document image |
CN112000796A (zh) * | 2020-08-05 | 2020-11-27 | 深圳中兴网信科技有限公司 | 答案生成方法、电子设备和计算机可读存储介质 |
-
2020
- 2020-12-29 CN CN202011584194.6A patent/CN112308051B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170323033A1 (en) * | 2014-11-06 | 2017-11-09 | Japan Science And Technology Agency | Flow pattern regular expression creating method, regular expression creating apparatus, and computer-executable program |
CN108229303A (zh) * | 2017-11-14 | 2018-06-29 | 北京市商汤科技开发有限公司 | 检测识别和检测识别网络的训练方法及装置、设备、介质 |
US10817717B2 (en) * | 2018-02-26 | 2020-10-27 | Abc Fintech Co., Ltd. | Method and device for parsing table in document image |
CN110046616A (zh) * | 2019-03-04 | 2019-07-23 | 北京奇艺世纪科技有限公司 | 图像处理模型生成、图像处理方法、装置、终端设备及存储介质 |
CN109948533A (zh) * | 2019-03-19 | 2019-06-28 | 讯飞智元信息科技有限公司 | 一种文本检测方法、装置、设备及可读存储介质 |
CN110837835A (zh) * | 2019-10-29 | 2020-02-25 | 华中科技大学 | 一种基于边界点检测的场景文本端到端识别方法 |
CN112000796A (zh) * | 2020-08-05 | 2020-11-27 | 深圳中兴网信科技有限公司 | 答案生成方法、电子设备和计算机可读存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112990102A (zh) * | 2021-04-16 | 2021-06-18 | 四川阿泰因机器人智能装备有限公司 | 一种改进的Centernet复杂环境目标检测方法 |
CN112990201A (zh) * | 2021-05-06 | 2021-06-18 | 北京世纪好未来教育科技有限公司 | 文本框检测方法、装置、电子设备和计算机存储介质 |
CN113313083A (zh) * | 2021-07-28 | 2021-08-27 | 北京世纪好未来教育科技有限公司 | 文本检测方法及装置 |
CN113850239A (zh) * | 2021-11-29 | 2021-12-28 | 北京世纪好未来教育科技有限公司 | 多文档检测方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112308051B (zh) | 2021-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112308051B (zh) | 文本框检测方法、装置、电子设备和计算机存储介质 | |
CN112287924B (zh) | 文本区域检测方法、装置、电子设备和计算机存储介质 | |
CN111986178A (zh) | 产品缺陷检测方法、装置、电子设备和存储介质 | |
CN112232315B (zh) | 文本框检测方法、装置、电子设备和计算机存储介质 | |
CN111739005B (zh) | 图像检测方法、装置、电子设备及存储介质 | |
CN111709878A (zh) | 人脸超分辨率实现方法、装置、电子设备及存储介质 | |
CN112200167B (zh) | 图像识别方法、装置、设备及存储介质 | |
CN110619312B (zh) | 定位元素数据的增强方法、装置、设备及存储介质 | |
US11810310B2 (en) | Satellite image processing method, network training method, related devices and electronic device | |
CN111783760A (zh) | 文字识别的方法、装置、电子设备及计算机可读存储介质 | |
CN110648294A (zh) | 图像修复方法、装置及电子设备 | |
CN113177472A (zh) | 动态手势识别方法、装置、设备以及存储介质 | |
CN111768468A (zh) | 图像填充方法、装置、设备及存储介质 | |
CN111539438A (zh) | 文本内容的识别方法、装置及电子设备 | |
CN111768467A (zh) | 图像填充方法、装置、设备及存储介质 | |
CN113516697B (zh) | 图像配准的方法、装置、电子设备及计算机可读存储介质 | |
CN114792355A (zh) | 虚拟形象生成方法、装置、电子设备和存储介质 | |
CN113657396A (zh) | 训练方法、译文展示方法、装置、电子设备以及存储介质 | |
CN111784799B (zh) | 图像填充方法、装置、设备及存储介质 | |
CN117422851A (zh) | 虚拟换衣方法及其装置、电子设备 | |
CN112508027A (zh) | 用于实例分割的头部模型、实例分割模型、图像分割方法及装置 | |
CN115187995B (zh) | 文档矫正方法、装置、电子设备和存储介质 | |
CN112990201A (zh) | 文本框检测方法、装置、电子设备和计算机存储介质 | |
CN113610856B (zh) | 训练图像分割模型和图像分割的方法和装置 | |
CN111507265B (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 |