一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

旋转文字检测方法和装置与流程

2022-11-19 16:04:37 来源:中国专利 TAG:


1.本公开涉及图像识别技术领域,特别涉及一种旋转文字检测方法和装置。


背景技术:

2.目前,文字识别广泛应用于各种场景之中,例如,通过手机的拍摄装置识别景物中出现的文字,能够辅助人们对陌生语言文字信息进行快速提取并通过辅助翻译得到所需要的信息。
3.通用的目标检测手段一般是采用正矩形框进行检测,在ocr(optical character recognition,光学字符识别)文字检测的某些场景下,需要拍摄设备配合文字的方向进行旋转,使得文字在图像中成像的方向是正向的,这样才能顺利提取文字区域中的图像,供后续进行文字识别。
4.然而,在某些场景中,拍摄装置与所要识别的文字之间的角度难以确保文字在图像中成像的方向是正向的,所以,现有的目标检测方法无法适用于图像中文字的方向为多种角度呈现的情况。
5.因此,如何实现图像中多种角度呈现的文字的检测,以确保对各种情况下的文字识别,便成为亟待解决的问题。


技术实现要素:

6.有鉴于此,本公开提供一种旋转文字检测方法和装置,实现对含有各种旋转角度文字的图形数据的文字区域的端到端的准确检测。
7.本公开的技术方案是这样实现的:一种旋转文字检测方法,包括:获取含有文字图形样本区的图形样本数据;根据对所述文字图形样本区的标注,得到所述文字图形样本区的标签信息,所述标签信息包括关联于所述文字图形样本区的文字区域框标签值和归一化角度标签值,其中,所述归一化角度标签值表征所述文字图形样本区相对于所述图形样本数据的坐标横轴的倾斜角度;将所述图形样本数据输入待训练的目标检测模型,通过所述待训练的目标检测模型得到关联于所述文字图形样本区的文字区域框预测值和归一化角度预测值;根据所述文字区域框预测值和所述文字区域框标签值得到文字区域框回归损失,根据所述归一化角度预测值和所述归一化角度标签值得到角度归一化回归损失;根据所述文字区域框回归损失和所述角度归一化回归损失,得到关联于所述文字图形样本区的整体回归损失;根据所述整体回归损失,调整所述待训练的目标检测模型,得到训练后的目标检测模型;基于所述训练后的目标检测模型对待检测图形数据进行检测,得到关联于所述待
检测图形数据中的文字图形区的文字区域检测框。
8.进一步,所述文字区域框标签值包括所述文字图形样本区的中心点的归一化坐标值、所述文字图形样本区的归一化宽度值、所述文字图形样本区的归一化高度值;所述归一化角度标签值通过下式获得:其中,为所述归一化角度标签值,为所述文字图形样本区相对于所述图形样本数据的坐标横轴的倾斜角度,。
9.进一步,所述文字区域框预测值包括所述文字图形样本区的中心点在所述图形样本数据中的归一化坐标预测值、所述文字图形样本区的归一化宽度预测值、所述文字图形样本区的归一化高度预测值。
10.进一步,所述文字区域框回归损失为广义交叉联合giou损失函数;所述角度归一化回归损失为光滑平均绝对值误差smooth l1损失函数。
11.进一步,所述根据所述文字区域框回归损失和所述角度归一化回归损失,得到关联于所述文字图形样本区的整体回归损失,包括:将所述文字区域框回归损失和所述角度归一化回归损失相加,得到所述整体回归损失。
12.进一步,所述基于所述训练后的目标检测模型对待检测图形数据进行检测,得到关联于所述待检测图形数据中的文字图形区的文字区域检测框,包括:将所述待检测图形数据输入所述训练后的目标检测模型,通过所述训练后的目标检测模型得到所述文字图形区的文字区域框检测值和角度归一化检测值;根据所述角度归一化检测值,得到角度值;根据所述文字区域框检测值和所述角度值,得到所述文字区域检测框。
13.进一步,所述文字区域框检测值包括所述文字区域检测框的中心点的归一化坐标值、所述文字区域检测框的归一化宽度值、所述文字区域检测框的归一化高度值。
14.进一步,所述根据所述角度归一化检测值,得到角度值,包括采用下式获得所述角度值:其中,为所述角度归一化检测值,为所述角度值。
15.进一步,所述根据所述文字区域框检测值和所述角度值,得到所述文字区域检测框,包括:根据所述文字区域框检测值,得到所述文字区域检测框的中心点在所述待检测图形数据中的位置、以及所述文字区域检测框的宽度和高度;根据所述角度值,得到所述文字区域检测框相对于所述待检测图形数据的坐标横轴的倾斜角度;根据所述文字区域检测框的中心点在所述待检测图形数据中的位置、所述文字区域检测框的宽度和高度、所述文字区域检测框相对于所述待检测图形数据的坐标横轴的倾斜角度,得到所述文字区域检测框。
16.进一步,在得到所述文字区域检测框后,所述旋转文字检测方法进一步包括:将所述文字区域检测框呈现于所述待检测图形数据。
17.一种旋转文字检测装置,包括:图形样本数据获取模块,被配置为执行获取含有文字图形样本区的图形样本数据;标签信息获得模块,被配置为执行根据对所述文字图形样本区的标注,得到所述文字图形样本区的标签信息,所述标签信息包括关联于所述文字图形样本区的文字区域框标签值和归一化角度标签值,其中,所述归一化角度标签值表征所述文字图形样本区相对于所述图形样本数据的坐标横轴的倾斜角度;预测值获得模块,被配置为执行将所述图形样本数据输入待训练的目标检测模型,通过所述待训练的目标检测模型得到关联于所述文字图形样本区的文字区域框预测值和归一化角度预测值;区域框及角度回归损失获得模块,被配置为执行根据所述文字区域框预测值和所述文字区域框标签值得到文字区域框回归损失,根据所述归一化角度预测值和所述归一化角度标签值得到角度归一化回归损失;整体回归损失获得模块,被配置为执行根据所述文字区域框回归损失和所述角度归一化回归损失,得到关联于所述文字图形样本区的整体回归损失;模型训练模块,被配置为执行根据所述整体回归损失,调整所述待训练的目标检测模型,得到训练后的目标检测模型;图形检测模块,被配置为执行基于所述训练后的目标检测模型对待检测图形数据进行检测,得到关联于所述待检测图形数据中的文字图形区的文字区域检测框。
18.一种电子设备,包括:处理器;用于存储所述处理器的可执行指令的存储器;其中,所述处理器被配置为执行所述可执行指令,以实现如上任一项所述的旋转文字检测方法。
19.一种计算机可读存储介质,当所述计算机可读存储介质中的至少一条指令被电子设备的处理器执行时,使得所述电子设备能够实现如上任一项所述的旋转文字检测方法。
20.从上述方案可以看出,本公开的旋转文字检测方法和装置,通过对图形样本数据的标注得到除文字区域框标签值以外的归一化角度标签值,并将目标检测模型的输出增加关于归一化角度的输出维度,其中,目标检测模型的整体回归损失包括了各自独立的文字区域框回归损失和角度归一化回归损失,因此,采用本公开的方式不影响文字区域框的回归精度,利用训练后的目标检测模型对待检测图形数据进行检测得到其中文字图形区的文字区域框检测值和角度归一化检测值,将文字区域框检测值和角度归一化检测值结合便可以的得到旋转的文字区域检测框。由于本公开中,文字区域框的回归和角度的回归各自独立,因此,所检测出的旋转的文字区域检测框更为准确。
21.其中,文字区域中的内容可以包括图形数据中呈现的文档中的文字内容、路标中的文字内容、交通指示牌的文字内容、车辆牌照的文字内容、建筑表面的文字内容、集装箱表面的文字内容、以及各种物体表面的文字内容等,图形数据可以是图片,采用本公开的旋
转文字检测方法和装置,能够实现对各种拍摄角度的图形数据中呈现的文字内容的检测,能够满足各种拍摄场景中对文字内容进行端到端的识别的需求,解决了在复杂环境中难以快速准确识别文字内容的问题。
附图说明
22.图1是根据一示意性实施例示出的一种旋转文字检测方法流程图;图2是根据一示意性实施例示出的图形样本数据示意图;图3a是根据一示意性实施例示出的一个图形样本数据标定后的示意图;图3b是根据一示意性实施例示出的另一个图形样本数据标定后的示意图;图4是根据一示意性实施例示出的文字区域框标签值与文字图形样本区的关系示意图;图5是根据一示意性实施例示出的归一化角度标签值和倾斜角度的关系示意图;图6是根据一示意性实施例示出的基于训练后的目标检测模型得到文字区域检测框的过程示意图;图7是根据一示意性实施例示出的根据文字区域框检测值和角度值得到文字区域检测框的过程示意图;图8是根据一示意性实施例示出的一种现有的ocr文字检测方案进行文字识别的示意图;图9是根据一示意性实施例示出的一种旋转文字检测方法的应用场景流程图;图10是根据一示意性实施例示出的一种旋转文字检测装置结构示意图;图11是本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
23.为了使本公开的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本公开作进一步详细说明。
24.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
25.当前,通用的旋转矩形检测方法包括scrdet、rsdet。其中,scrdet回归矩形框会回归5个参数,包括矩形框的中心点坐标(两个参数)、宽高(两个参数)、旋转角度(一个参数);rsdet,即旋转敏感检测器(rotation sensitive detector),rsdet采用了可以使用相同单位坐标的八参数回归方法来检测旋转矩形。这些方法在预测矩形框旋转角度的时候都会考虑旋转矩形的锚(anchor),这种方法会损失矩形框的回归精度。
26.关于文字检测方法,包括dbnet(一种用于ocr文本检测的方法)等各种像素级的文字检测方法,均无法区分文字方向,通常还需要在文字检测之后接一个文字方向识别的网络,这样使得整个ocr流程更加复杂,误差传递更多。
27.有鉴于此,本公开实施例提供了一种旋转文字检测方法和装置,实现对含有各种旋转角度文字的图形数据的文字区域的端到端的准确检测,实现对图形数据中的各种旋转角度文字的快速识别。
28.图1是根据一示意性实施例示出的一种旋转文字检测方法流程图,如图1所示,该旋转文字检测方法主要包括以下步骤101至步骤107。
29.步骤101、获取含有文字图形样本区的图形样本数据。
30.图2是根据一示意性实施例示出的图形样本数据示意图,如图2所示,图形样本数据200中含有文字图形样本区201,图2所示实施例中,文字图形样本区201中的文字内容为“abcdefg”,该文字图形样本区201与图形样本数据200的坐标横轴202之间形成大于0
°
的夹角。图2所示中,以虚线表示图形样本数据200的坐标横轴202,通常来说图形样本数据200的坐标横轴定义为x轴,也就是说,该文字图形样本区201与图形样本数据200的x轴之间形成大于0
°
的夹角。图2所示中的虚线仅为表示坐标横轴202的延伸方向,该虚线并非一定为图形样本数据200中的呈现内容。
31.步骤102、根据对文字图形样本区的标注,得到文字图形样本区的标签信息,标签信息包括关联于文字图形样本区的文字区域框标签值和归一化角度标签值,其中,归一化角度标签值表征文字图形样本区相对于图形样本数据的坐标横轴的倾斜角度。
32.在一些实施例中,对文字图形样本区201的标注手段采用以下方式:按照文字图形样本区201中的文字内容处于正常阅读时横向摆放的方位为基准,将文字图形样本区201的左上角作为第一标注点、右上角作为第二标注点、右下角作为第三标注点、左下角作为第四标注点,按照第一标注点、第二标注点、第三标注点、第四标注点的先后顺序进行标注。例如对图2所示中的“abcdefg”,按照“abcdefg”处于正常阅读时横向摆放的方位为基准,将字母“a”的左上角作为第一标注点、将字母“g”的右上角作为第二标注点、将字母“g”的右下角作为第三标注点、将字母“a”的左下角作为第四标注点,按照第一标注点、第二标注点、第三标注点、第四标注点的先后顺序进行标注。
33.采用这种顺序标注的方式,在完成对文字图形样本区201的标注得到第一标注点、第二标注点、第三标注点、第四标注点的数据信息后,除了能够得到文字图形样本区201的文字区域框的位置和大小(文字区域框的中心点坐标和长宽值)以外,还能够根据这四个标注点的数据得到文字区域框与图形样本数据200的坐标横轴202之间的夹角,即文字区域框的旋转角度或倾斜角度,例如通过顺序标定的第一标注点和第二标注点、或者通过顺序标定的第三标注点和第四标注点即可得到文字区域框与图形样本数据200的坐标横轴202之间的夹角。
34.图3a是根据一示意性实施例示出的一个图形样本数据标定后的示意图,如图3a所示,是以顺序标定的第三标注点(字母“g”的右下角)和第四标注点(字母“a”的左下角)所在直线的延伸方向与坐标横轴202之间的夹角作为文字区域框301与图形样本数据200的坐标横轴202之间的夹角θ。图3a所示实施例中,0
°
《θ《180
°

35.图3b是根据一示意性实施例示出的另一个图形样本数据标定后的示意图,图3b所示实施例也是以顺序标定的第三标注点(字母“g”的右下角)和第四标注点(字母“a”的左下角)所在直线的延伸方向与坐标横轴202之间的夹角作为文字区域框301与图形样本数据200的坐标横轴202之间的夹角θ。图3b所示实施例中,180
°
《θ《360
°

36.如图3a、图3b所示,夹角θ是以逆时针方向从坐标横轴202到文字区域框301之间的夹角。
37.在一些实施例中,文字区域框标签值包括文字图形样本区的中心点在图形样本数据中的归一化坐标值、文字图形样本区的归一化宽度值、文字图形样本区的归一化高度值。
38.图4是根据一示意性实施例示出的文字区域框标签值与文字图形样本区的关系示意图。如图4所示,o为文字图形样本区201的中心点,即文字区域框301的中心点,文字图形样本区201的中心点o在图形样本数据200中的归一化坐标值包括x和y,其中,x为横轴归一化坐标值,y为纵轴归一化坐标值。横轴归一化坐标值是指将图形样本数据200的宽度(对应于横轴方向)设为1,x为中心点o的横坐标(宽度方向)与图形样本数据200宽度之比,例如,若文字图形样本区201的中心点o恰好在图形样本数据200的横轴方向的中间位置则x=0.5;纵轴归一化坐标值是指将图形样本数据200的高度(对应于纵轴方向)设为1,y为中心点o的纵坐标(高度方向)与图形样本数据200高度的之比,例如,若文字图形样本区201的中心点o恰好在图形样本数据200的纵轴方向的中间位置则y=0.5。如图4所示,w为文字图形样本区的归一化宽度值,h为文字图形样本区的归一化高度值,归一化宽度值和归一化高度值是以图形样本数据200的宽度和高度为1进行归一化的。
39.在一些实施例中,为避免图形样本数据200的宽度和高度实际值不同导致得到的归一化高度值h和归一化宽度值w出现错误,图形样本数据200的宽度和高度设置为相等。在一些实施例中,对原始图形数据进行处理而得到宽度和高度相等的图形样本数据200的方法可以包括:对原始图形数据的宽度进行压缩或者拉伸使得宽度和高度相等;对原始图形数据的高度进行压缩或者拉伸使得高度和宽度相等;在不改变原始图形数据的宽高比例的情况下,以原始图形数据的宽度和高度中的较大值为准,将较小的值扩展到和较大值相等,扩展出来的区域以黑色填充,例如,在原始图形数据的宽度大于高度的情况下,高度扩展到和宽度相等,在高度方向扩展出来的区域以黑色填充。
40.在一些实施例中,归一化角度标签值通过下式获得:其中,为归一化角度标签值,为文字图形样本区相对于图形样本数据的坐标横轴的倾斜角度,,。
41.图5是根据一示意性实施例示出的归一化角度标签值和倾斜角度的关系示意图,如图5所示,该关系即为上述公式的变化曲线,通过图5能够看出,对倾斜角度进行归一化后得到的归一化角度标签值与倾斜角度之间是一对一的对应关系,也就是说,在-1到1的范围内,每一个归一化角度标签值的取值都唯一对应于0
°
到360
°
之间的一个倾斜角度,因此,归一化角度标签值能够准确表征倾斜角度。
42.步骤103、将图形样本数据输入待训练的目标检测模型,通过待训练的目标检测模型得到关联于文字图形样本区的文字区域框预测值和归一化角度预测值。
43.在一些实施例中,文字区域框预测值包括文字图形样本区的中心点在图形样本数据中的归一化坐标预测值、文字图形样本区的归一化宽度预测值、文字图形样本区的归一化高度预测值。
44.其中,归一化坐标预测值、归一化宽度预测值、归一化高度预测值,均是以图形样
本数据的宽度和高度为1而由待训练的目标检测模型得到的预测值。
45.其中,参考上述公式,归一化角度预测值能够唯一对应出一个在0
°
到360
°
之间的一个倾斜角度预测值,也就是说,归一化角度预测值表征了预测的倾斜角度。
46.在一些实施例中,目标检测模型可以是yolov3、yolov4、yolov5等一阶段(one-stage)的目标检测算法,属于轻量化网络模型,检测速度快,便于布置并且能够做到端对端的检测。
47.在现有的yolov3、yolov4、yolov5模型的基础上,为了增加关于归一化角度预测值的输出维度,可以通过对相关参数的设置对模型的输出层进行修改,例如,yolov3、yolov4、yolov5在coco数据集上检测类别是80类,因此,输出的维度包括类别的80个维度、预测框(正矩形框)的4个维度(归一化的x、y、w、h)和1个置信度维度,共计85个输出维度。在一些实施例中,本公开的旋转文字检测方法中,在这85个输出维度的基础上额外增加一个输出维度输出归一化角度预测值,因此,输出的维度变为:类别的80个维度、预测框(正矩形框)的4个维度(归一化的x、y、w、h)、预测框归一化角度的1个维度和1个置信度维度,共计86个输出维度。可以通过对模型的相关构建文件中参数的设置实现yolov3、yolov4、yolov5模型输出维度的增加,例如在yolov3、yolov4、yolov5模型中,参数nc表示类别的维度,nc=80,输出的维度为nc 5,其中,5为预测框(正矩形框)的4个维度(归一化的x、y、w、h)和1个置信度维度,对应于增加归一化角度预测值的输出维度,将输出的维度修改为nc 6,这样原设置参数no=na*(nc 5)便调整为no=na*(nc 6),其中,no即number of outputs,输出参数的数量,na为yolov3、yolov4、yolov5模型中锚框(anchor box)的数量,na=3,因此,no由原本的255调整为258。
48.与此对应地,在数据处理层面和网络核心结构层面均需要进行相应的设置。
49.例如在yolov3的数据处理层面(dataset.py文件中),原有相关代码如下:label[best_detect][yind, xind, best_anchor, 0:4] = bbox_xywhlabel[best_detect][yind, xind, best_anchor, 4:5] = 1.0label[best_detect][yind, xind, best_anchor, 5:] = smooth_onehot在一些实施例中,对应于增加归一化角度标签值,上段代码相应修改为:label[best_detect][yind, xind, best_anchor, 0:4] = bbox_xywhlabel[best_detect][yind, xind, best_anchor, 4:5] = degreeslabel[best_detect][yind, xind, best_anchor, 5:6] = 1.0label[best_detect][yind, xind, best_anchor, 6:] = smooth_onehot例如在yolov3的网络核心结构层面(yolov3.py文件中),原有相关代码如下:pred_xywh= pred[:, :, :, :, 0:4]pred_conf= pred[:, :, :, :, 4:5]label_xywh= label[:, :, :, :, 0:4]respond_bbox= label[:, :, :, :, 4:5]label_prob= label[:, :, :, :, 5:]在一些实施例中,对应于增加归一化角度标签值,上段代码相应修改为:pred_xywh= pred[:, :, :, :, 0:4]pred_angle= pred[:, :, :, :, 4:5]
pred_conf= pred[:, :, :, :, 5:6]label_xywh= label[:, :, :, :, 0:4]label_angle= label[:, :, :, :, 4:5]respond_bbox= label[:, :, :, :, 5:6]label_prob= label[:, :, :, :, 6:]另外,在yolov3的网络核心结构层面(yolov3.py文件中),对应于增加归一化角度标签值,还需增加角度归一化回归损失:angle_loss=respond_bbox*lossfunc smooth_l1_loss(label_angle, pred_angle)关于yolov3、yolov4、yolov5模型的进一步说明和相关设置可参见相关的技术文档,此处不再赘述。
[0050]
步骤104、根据文字区域框预测值和文字区域框标签值得到文字区域框回归损失,根据归一化角度预测值和归一化角度标签值得到角度归一化回归损失。
[0051]
本公开实施例中,采用对预测框和预测角度分别回归的手段,分别针对预测框和预测角度得到文字区域框回归损失和角度归一化回归损失,文字区域框回归损失和角度归一化回归损失之间互相独立。
[0052]
其中,在一些实施例中,文字区域框回归损失为giou(generalized intersection over union,广义交叉联合)损失函数,giou损失函数是yolov3、yolov4、yolov5模型所采用的预测框回归损失函数,在一些实施例中,沿用该giou损失函数,关于giou损失函数的进一步说明可参见相关的技术文档,此处不再赘述。
[0053]
在一些实施例中,角度归一化回归损失为smooth l1损失函数。smooth l1损失函数是一种目标检测回归损失函数,smooth l1损失函数,即smooth l1 loss,其中,l1 loss也称为平均绝对值误差(mae,mean absolute error),是指模型预测值和真实值之间绝对差值的平均值,mae函数虽然连续,但是在0处不可导,而且mae的导数为常数,所以在较小的损失值时,得到的梯度也相对较大,可能造成模型震荡不利于收敛。smooth l1 loss是一个平滑版的l1 loss,该函数是一个分段函数,在[-1,1]之间为l2 loss,能够解决l1 loss在0处不可导的问题,在[-1,1]区间以外是l1 loss,能够解决离群点梯度爆炸问题。其中,l2 loss也称为均方误差(mse,mean square error),是指模型预测值和真实值之间差值平方的平均值。关于smooth l1损失函数的进一步说明可参见相关的技术文档,此处不再赘述。
[0054]
步骤105、根据文字区域框回归损失和角度归一化回归损失,得到关联于文字图形样本区的整体回归损失。
[0055]
在一些实施例中,步骤105可以进一步包括:将文字区域框回归损失和角度归一化回归损失相加,得到整体回归损失。
[0056]
可见,本公开实施例中,整体回归损失包括了文字区域框回归损失和角度归一化回归损失两部分,角度的回归与文字区域框的回归各自独立,因此,采用本公开实施例的方式不影响文字区域框的回归精度。
[0057]
步骤106、根据整体回归损失,调整待训练的目标检测模型,得到训练后的目标检测模型。
[0058]
其中,调整待训练的目标检测模型可以包括调整待训练的目标检测模型的权重等
参数。
[0059]
上述各个步骤中,为了达到目标检测模型高检测率的训练目的,图形样本数据的数量可以为多个。其中,在步骤101中获取的图形样本数据的数量为多个,在步骤102中通过针对每一个图形样本数据的标注得到每一个图形样本数据中文字图形样本区的标签信息,步骤103至步骤106可以基于不同的图形样本数据而重复执行,直到差异收敛到预设范围或者迭代达到设定次数后,完成目标检测模型的训练。
[0060]
步骤107、基于训练后的目标检测模型对待检测图形数据进行检测,得到关联于待检测图形数据中的文字图形区的文字区域检测框。
[0061]
图6是根据一示意性实施例示出的基于训练后的目标检测模型得到文字区域检测框的过程示意图,如图6所示,步骤107具体可包括如下步骤601至步骤603的过程。
[0062]
步骤601、将待检测图形数据输入训练后的目标检测模型,通过训练后的目标检测模型得到文字图形区的文字区域框检测值和角度归一化检测值。
[0063]
在一些实施例中,文字区域框检测值包括文字区域检测框的中心点在待检测图形数据中的归一化坐标值、文字区域检测框的归一化宽度值、文字区域检测框的归一化高度值,即文字区域框检测值包括文字区域检测框的归一化的x、y、w、h。
[0064]
步骤602、根据角度归一化检测值,得到角度值。
[0065]
在一些实施例中,步骤602包括采用下式获得角度值:其中,为角度归一化检测值,为角度值。
[0066]
其中,角度归一化检测值和角度值之间的曲线关系可参考图5所示中的归一化角度标签值和倾斜角度的关系变化曲线。由步骤602所得到的角度归一化检测值能够唯一的确定出角度值,即文字区域检测框与待检测图形数据的x轴(横轴)之间的夹角角度。其中,,对应地,。
[0067]
步骤603、根据文字区域框检测值和角度值,得到文字区域检测框。
[0068]
图7是根据一示意性实施例示出的根据文字区域框检测值和角度值得到文字区域检测框的过程示意图,如图7所示,步骤603具体可包括如下步骤701至步骤703的过程。
[0069]
步骤701、根据文字区域框检测值,得到文字区域检测框的中心点在待检测图形数据中的位置、以及文字区域检测框的宽度和高度。
[0070]
步骤702、根据角度值,得到文字区域检测框相对于待检测图形数据的坐标横轴的倾斜角度。
[0071]
步骤703、根据文字区域检测框的中心点在待检测图形数据中的位置、文字区域检测框的宽度和高度、文字区域检测框相对于待检测图形数据的坐标横轴的倾斜角度,得到文字区域检测框。
[0072]
在步骤703中,以文字区域检测框的中心点在待检测图形数据中的位置为轴心对文字区域检测框进行旋转,得到文字区域检测框,旋转的角度大小为文字区域检测框相对于待检测图形数据的坐标横轴的倾斜角度大小,旋转的方向与倾斜角度的方向相同,即,若倾斜角度是以逆时针方向从待检测图形数据的坐标横轴到文字区域检测框之间的夹角,则
旋转的方向为逆时针旋转方向,例如,若在步骤702中得到文字区域检测框的倾斜角度为45
°
,则在步骤703中,对倾斜的文字区域检测框进行逆时针旋转45
°

[0073]
需要说明的是,步骤703是对文字区域检测框的旋转,不是对文字的旋转,只有将“文字区域检测框”旋转到倾斜角度之后“文字区域检测框”才能够将待检测图形数据中的文字内容框选在内。在这之后,可以在后续的步骤中,将框选的文字内容根据倾斜角度旋转为正向,对文字内容进行旋转的方向与倾斜角度的方向相反,即,若倾斜角度是以逆时针方向从待检测图形数据的坐标横轴到文字区域检测框之间的夹角,则对文字内容进行旋转的方向为顺时针旋转方向,例如,若在步骤702中得到文字区域检测框的倾斜角度为45
°
,则对框选的文字内容进行顺时针旋转45
°

[0074]
在一些实施例中,在得到文字区域检测框后,本公开实施例的旋转文字检测方法还可以进一步包括:将文字区域检测框呈现于待检测图形数据。
[0075]
采用上述步骤实现了利用文字区域检测框在待检测图形数据中对文字图形区的展示和追踪,能够辅助文字检测人员对出现在待检测图形数据的文字的快速定位和观察。
[0076]
在一些实施例中,在得到文字区域检测框后,可以将文字区域检测框中的内容取出(例如通过自动截取的手段),并根据步骤602中得到的角度值,将文字区域检测框中的内容旋转成正矩形框,使得文字区域检测框中的文字内容处于正常阅读时横向摆放的方位,之后利用ocr文字识别方法,识别提取出其中的文字内容。在一些实施例中,将文字区域检测框中的内容旋转成正矩形框可以采用如下方法:将文字区域检测框中的内容根据倾斜角度旋转成正矩形框,旋转的方向与倾斜角度的方向相反,即,若倾斜角度是以逆时针方向从待检测图形数据的坐标横轴到文字区域检测框之间的夹角,则对文字区域检测框中的内容进行旋转的方向为顺时针旋转方向,例如,若在步骤702中得到文字区域检测框的倾斜角度为45
°
,则对文字区域检测框中的内容进行顺时针旋转45
°
;从旋转后的正矩形框中识别提取出其中的文字内容。
[0077]
本公开实施例的旋转文字检测方法,通过对图形样本数据的标注得到除文字区域框标签值以外的归一化角度标签值,并将目标检测模型的输出增加关于归一化角度的输出维度,其中,目标检测模型的整体回归损失包括了各自独立的文字区域框回归损失和角度归一化回归损失,因此,采用本公开实施例的方式不影响文字区域框的回归精度,利用训练后的目标检测模型对待检测图形数据进行检测得到其中文字图形区的文字区域框检测值和角度归一化检测值,将文字区域框检测值和角度归一化检测值结合便可以的得到旋转的文字区域检测框。由于本公开实施例中,文字区域框的回归和角度的回归各自独立,因此,所检测出的旋转的文字区域检测框更为准确。
[0078]
其中,文字区域中的内容可以包括图形数据中呈现的文档中的文字内容、路标中的文字内容、交通指示牌的文字内容、车辆牌照的文字内容、建筑表面的文字内容、集装箱表面的文字内容、以及各种物体表面的文字内容等,图形数据可以是图片,采用本公开实施例的旋转文字检测方法,能够实现对各种拍摄角度的图形数据中呈现的文字内容的检测,能够满足各种拍摄场景中对文字内容进行端到端的识别的需求,解决了在复杂环境中难以快速准确识别文字内容的问题。例如,在某些应用场景中,图像采集设备可能无法充分调整
拍摄角度而确保所拍摄的内容正向呈现,在采用本公开实施例的旋转文字检测方法后,能够实现在户外场景中不需要调整图像采集设备的拍摄角度的前提下,对拍摄的含有并非正向呈现的陌生语言文字的路牌图片进行快速端到端的文字检测,能够极大地提升用户的体验。
[0079]
相比于本公开的技术方案而言,其它现有的一些检测方法中会采用旋转矩形框作为锚框,这需要在角度回归和矩形框回归之间进行平衡,势必会影响到矩形框的回归,降低了回归精度。本公开中,分别针对预测框和预测角度得到文字区域框回归损失和角度归一化回归损失,文字区域框回归损失和角度归一化回归损失之间互相独立,所以角度回归与矩形框的回归之间互不影响,并且本公开中的锚框是采用的正矩形框而不是旋转矩形框,与本公开相比,其它现有的一些旋转矩形检测方法的锚框包含倾斜矩形,这种情况下,其它现有的一些旋转矩形检测方法中在计算角度回归跟矩形框回归的时候,相互之间存在影响,所以势必需要在角度预测与矩形框预测中间寻求平衡,在这个过程中会对矩形框的回归进行妥协而降低回归精度。
[0080]
另外,本公开实施例中,采用yolov3、yolov4或者yolov5作为目标检测模型,基于yolov3、yolov4、yolov5的轻量化网络特性,能够实现端对端的检测。本公开实施例的基于yolo系列和角度与归一化角度之间的三角函数的关系执行的文字内容的检测,在ocr文字检测识别等领域具有重要应用价值。本公开实施例中是以yolo系列为例进行说明,除此以外,在本公开的精神和原则下,本公开的技术方案还可以应用于各种通用矩形框检测方法,而本公开实施例中提及的yolo系列只是各种通用矩形框检测方法中的一种;其它通用矩形框检测方法中,例如centernet(中心网络)模型使用热图回归框的四个点坐标的方案也可以在本公开的精神原则范围内增加关于倾斜角度的维度;无论是哪种矩形框检测方法,只要该模型的预测框的输出是固定维度输出都可以采用本公开实施例的旋转文字检测方法,例如yolo系列是固定输出(x, y, w, h, score, classes),只需要增加一个维度用于回归角度就可以了。
[0081]
本公开实施例的旋转文字检测方法,在不增加过多参数的条件下,基于yolov3、yolov4或者yolov5就可以实现旋转矩形框的检测,相对于其他旋转矩形方法,本公开的目标检测模型更加轻量化,实现了任意角度文字的端到端检测。其中,将角度的回归映射到[-1,1)区间,并且在[0
°
,360
°
)区间内连续,使得角度预测变得更加简单,解决了现阶段很多旋转矩形检测方法角度在90
°
、270
°
位置出现震荡的问题。现有很多旋转矩形检测方法,因为有些方法使用的锚框本身是倾斜的,并且这些方法对文字矩形框角度的计算仅仅是以水平轴线为基线,所以上下颠倒的文字有时候会产生角度混淆;在90
°
、270
°
的时候计算角度使用三角函数正切函数值,在函数上这个位置是不连续的;本公开是根据文字方向来设置角度,所以即使出现翻转也不影响,比如水平方向为0
°
,翻转后为180
°
,对应本公开方案在的三角函数上呈现在[-1,1)区间内的不同值,可以进行区分。
[0082]
另外,现有的很多ocr文字检测方案中只使用像素级分割,例如paddleocr,这种像素级分割无法判断文字方向,还需要增加一个文字方向分类的判断过程。图8是根据一示意性实施例示出的一种现有的ocr文字检测方案进行文字识别的示意图,如图8所示,现有的使用像素级分割的ocr文字检测方案中,在文本检测阶段采用dbnet像素级文字检测,在检测框调整阶段采用文字方向分类模型,作为示例,图8所示中对于瓶身的“odm oem”的纵向
文字识别,在得到关于“odm oem”文字的竖向检测框后,对该检测框先后进行了两次旋转操作才通过文本识别得到“odm oem”信息进行输出,该过程无法做到端到端,并且在每次文字方向调整时都会存在误差,即使误差很小,但积累在一起也会形成误差传递,造成整体检测精度较低的问题,并且文字方向分类对于数字或者单个汉字的情形,误判率非常高。
[0083]
图9是根据一示意性实施例示出的一种旋转文字检测方法的应用场景流程图,如图9所示,该流程包括以下步骤901至步骤913。
[0084]
步骤901、获取多个含有文字图形样本区的图形样本数据,之后进入步骤902。
[0085]
步骤902、对每个文字图形样本区进行标注,得到每个文字图形样本区的文字区域框标签值和归一化角度标签值,之后进入步骤903。
[0086]
其中,可采用相关的标注软件对文字图形样本区进行标注。标注的过程是将文字图形样本区的左上角作为第一标注点、右上角作为第二标注点、右下角作为第三标注点、左下角作为第四标注点,按照第一标注点、第二标注点、第三标注点、第四标注点的先后顺序进行标注。
[0087]
其中,文字区域框标签值包括文字区域框的归一化中心点的x、y坐标以及文字区域框的归一化的宽w和高h。
[0088]
其中,归一化角度标签值通过下式获得:其中,为归一化角度标签值,为文字图形样本区相对于图形样本数据的坐标横轴的倾斜角度,,。
[0089]
步骤903、将所有图形样本数据中的一个图形样本数据输入目标检测模型,通过该目标检测模型得到该图形样本数据中的文字图形样本区的文字区域框预测值和归一化角度预测值,之后进入步骤904。
[0090]
步骤904、根据该图形样本数据中的文字图形样本区的文字区域框预测值和文字区域框标签值,得到该图形样本数据文字区域框回归损失,根据该图形样本数据中的文字图形样本区的归一化角度预测值和归一化角度标签值得到角度归一化回归损失,将该文字区域框回归损失和该角度归一化回归损失相加,得到目标检测模型的整体回归损失,之后进入步骤905。
[0091]
步骤905、判断是否满足目标检测模型的训练完成条件,如果满足则进入步骤907,否则进入步骤906。
[0092]
其中,训练完成条件包括差异收敛到预设范围或者迭代达到设定次数。
[0093]
步骤906、根据该整体回归损失,调整目标检测模型,之后返回步骤903。
[0094]
其中,调整目标检测模型可以包括调整目标检测模型的权重等参数。
[0095]
步骤907、完成目标检测模型的训练,之后进入步骤908。
[0096]
步骤908、将待检测图形数据输入目标检测模型,通过目标检测模型得到待检测图形数据中的文字图形区的文字区域框检测值和角度归一化检测值,之后进入步骤909。
[0097]
步骤909、根据角度归一化检测值,得到角度值,之后进入步骤910和步骤911。
[0098]
其中,采用下式获得角度值:
其中,为角度归一化检测值,为角度值。
[0099]
步骤910、根据文字区域框检测值,得到文字区域检测框的中心点在待检测图形数据中的位置、以及文字区域检测框的宽度和高度,之后进入步骤912。
[0100]
步骤911、根据角度值,得到文字区域检测框相对于待检测图形数据的坐标横轴的倾斜角度,之后进入步骤912。
[0101]
步骤912、根据文字区域检测框的中心点在待检测图形数据中的位置、文字区域检测框的宽度和高度、文字区域检测框相对于待检测图形数据的坐标横轴的倾斜角度,得到文字区域检测框,之后进入步骤913。
[0102]
步骤913、将文字区域检测框呈现于待检测图形数据。
[0103]
图10是根据一示意性实施例示出的一种旋转文字检测装置结构示意图,如图10所示该旋转文字检测装置包括图形样本数据获取模块1001、标签信息获得模块1002、预测值获得模块1003、区域框及角度回归损失获得模块1004、整体回归损失获得模块1005、模型训练模块1006和图形检测模块1007。
[0104]
图形样本数据获取模块1001,被配置为执行获取含有文字图形样本区的图形样本数据。
[0105]
标签信息获得模块1002,被配置为执行根据对文字图形样本区的标注,得到文字图形样本区的标签信息,标签信息包括关联于文字图形样本区的文字区域框标签值和归一化角度标签值,其中,归一化角度标签值表征文字图形样本区相对于图形样本数据的坐标横轴的倾斜角度。
[0106]
预测值获得模块1003,被配置为执行将图形样本数据输入待训练的目标检测模型,通过待训练的目标检测模型得到关联于文字图形样本区的文字区域框预测值和归一化角度预测值。
[0107]
区域框及角度回归损失获得模块1004,被配置为执行根据文字区域框预测值和文字区域框标签值得到文字区域框回归损失,根据归一化角度预测值和归一化角度标签值得到角度归一化回归损失。
[0108]
整体回归损失获得模块1005,被配置为执行根据文字区域框回归损失和角度归一化回归损失,得到关联于文字图形样本区的整体回归损失。
[0109]
模型训练模块1006,被配置为执行根据整体回归损失,调整待训练的目标检测模型,得到训练后的目标检测模型。
[0110]
图形检测模块1007,被配置为执行基于训练后的目标检测模型对待检测图形数据进行检测,得到关联于待检测图形数据中的文字图形区的文字区域检测框。
[0111]
在一些实施例中,文字区域框标签值包括文字图形样本区的中心点在图形样本数据中的归一化坐标值、文字图形样本区的归一化宽度值、文字图形样本区的归一化高度值。
[0112]
在一些实施例中,归一化角度标签值通过下式获得:其中,为归一化角度标签值,为文字图形样本区相对于图形样本数据的坐标横轴的倾斜角度,。
[0113]
在一些实施例中,文字区域框预测值包括文字图形样本区的中心点在图形样本数据中的归一化坐标预测值、文字图形样本区的归一化宽度预测值、文字图形样本区的归一化高度预测值。
[0114]
在一些实施例中,文字区域框回归损失为广义交叉联合giou损失函数;角度归一化回归损失为光滑平均绝对值误差smooth l1损失函数。
[0115]
在一些实施例中,整体回归损失获得模块1005进一步被配置为执行:将文字区域框回归损失和角度归一化回归损失相加,得到整体回归损失。
[0116]
在一些实施例中,图形检测模块1007进一步包括检测值获得子模块、角度值获得子模块、文字区域检测框获得子模块。
[0117]
检测值获得子模块,被配置为执行将待检测图形数据输入训练后的目标检测模型,通过训练后的目标检测模型得到文字图形区的文字区域框检测值和角度归一化检测值。
[0118]
角度值获得子模块,被配置为执行根据角度归一化检测值,得到角度值。
[0119]
文字区域检测框获得子模块,被配置为执行根据文字区域框检测值和角度值,得到文字区域检测框。
[0120]
在一些实施例中,文字区域框检测值包括文字区域检测框的中心点在待检测图形数据中的归一化坐标值、文字区域检测框的归一化宽度值、文字区域检测框的归一化高度值。
[0121]
在一些实施例中,角度值获得子模块进一步被配置为执行采用下式获得角度值:其中,为角度归一化检测值,为角度值。
[0122]
在一些实施例中,文字区域检测框获得子模块进一步包括:检测框基本信息获得子模块,被配置为执行根据文字区域框检测值,得到文字区域检测框的中心点在待检测图形数据中的位置、以及文字区域检测框的宽度和高度;检测框倾斜角度获得子模块,被配置为执行根据角度值,得到文字区域检测框相对于待检测图形数据的坐标横轴的倾斜角度;检测框获得子模块,被配置为执行根据文字区域检测框的中心点在待检测图形数据中的位置、文字区域检测框的宽度和高度、文字区域检测框相对于待检测图形数据的坐标横轴的倾斜角度,得到文字区域检测框。
[0123]
在一些实施例中,该旋转文字检测装置进一步包括:检测框呈现模块,被配置为执行将文字区域检测框呈现于待检测图形数据。
[0124]
本公开实施例的旋转文字检测装置,通过对图形样本数据的标注得到除文字区域框标签值以外的归一化角度标签值,并将目标检测模型的输出增加关于归一化角度的输出维度,其中,目标检测模型的整体回归损失包括了各自独立的文字区域框回归损失和角度归一化回归损失,因此,采用本公开实施例的方式不影响文字区域框的回归精度,利用训练后的目标检测模型对待检测图形数据进行检测得到其中文字图形区的文字区域框检测值和角度归一化检测值,将文字区域框检测值和角度归一化检测值结合便可以的得到旋转的文字区域检测框。由于本公开实施例中,文字区域框的回归和角度的回归各自独立,因此,
所检测出的旋转的文字区域检测框更为准确。
[0125]
关于上述实施例中的旋转文字检测装置,其中各个单元执行操作的具体方式已经在有关该旋转文字检测方法的实施例中进行了详细描述,此处将不作详细阐述说明。
[0126]
需要说明的是:上述实施例仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
[0127]
图11是本公开实施例提供的一种电子设备的结构示意图。在一些实施例中,该电子设备为服务器。该电子设备1100可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)1101和一个或一个以上的存储器1102,其中,该存储器1102中存储有至少一条程序代码,该至少一条程序代码由该处理器1101加载并执行以实现上述各个实施例提供的旋转文字检测方法。当然,该电子设备1100还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该电子设备1100还可以包括其他用于实现设备功能的部件,在此不做赘述。
[0128]
在示例性实施例中,还提供了一种包括至少一条指令的计算机可读存储介质,例如包括至少一条指令的存储器,上述至少一条指令可由计算机设备中的处理器执行以完成上述实施例中的旋转文字检测方法。
[0129]
可选地,上述计算机可读存储介质可以是非临时性计算机可读存储介质,例如,该非临时性计算机可读存储介质可以包括rom(read-only memory,只读存储器)、ram(random-access memory,随机存取存储器)、cd-rom(compact disc read-only memory,只读光盘)、磁带、软盘和光数据存储设备等。
[0130]
以上所述仅为本公开的较佳实施例而已,并不用以限制本公开,凡在本公开的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本公开保护的范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献