一种面向任意角度的场景文本检测方法
技术领域
本发明涉及文本检测技术领域,尤其涉及一种面向任意角度的场景文本检测方法。
背景技术
文字是人类千百年来沉淀的成果,它所包含的信息常常精确且全面,对人类理解图像具有很大的帮助。当今时代,人们喜欢通过手机或摄像机拍摄的图片通过社交软件来分享并记录自己的生活及工作等,其中图片中的文本信息更能直观地呈现出所表达的内容,文本属于高层视觉元素,对于文本检测、定位、识别是图像理解中的重要组成部分。文本检测一般分为文档文本的图像检测算法和自然场景文本的检测算法,由于场景文本的背景取材不定,不像文档文本那样单一;场景文本的形状、大小、字体、颜色排列各异,不像文档文本整齐划一;另外拍照时可能出现抖动、遮挡、分辨率过低等。在这些情况下,文本信息大打折扣,再加上背景的复杂性,场景图像文本检测的难度可谓不言自明。现有技术存在的文本检测方法,例如首先运用分段网络生成文本预测图,再利用几何方法回归,但是在分段时通常很耗时,且文本垂直方向时可能预测不准;有的方法虽然提取的语义信息丰富,但目标位置比较粗略,小的文本目标容易被忽略,导致准确性较低。本发明提出一种方法,可实现任意角度的场景文本检测,同时提高检测速度和准确率。
发明内容
针对上述问题,本发明提出一种面向任意角度的场景文本检测方法,主要解决背景技术中的问题。
本发明提出一种面向任意角度的场景文本检测方法,包括以下步骤:
S1:获得包含多张训练图片的训练集,且训练图片为已标记出文本位置的场景图像;
S2:构建卷积神经网络和旋转区域提议网络,将训练图片输入到卷积神经网络中进行特征提取,将提取的特征图输入到旋转区域提议网络中得到文本区域,根据预测区域是前景或背景分类和文本预测位置构建损失函数;
S3:重新选取训练图片,反复执行步骤S2以训练卷积神经网络和旋转区域提议网络模型,直至损失函数收敛保存模型;
S4:将旋转区域提议网络输出的文本区域映射到卷积神经网络模型的最后一层特征图上,通过旋转池化操作得到固定大小的特征图;
S5:通过由两个全连接层组成的分类器,实现边框分类和边框回归;
S6:将待检测的图片输入到卷积神经网络和旋转区域提议网络中,得到初步的文本区域,再通过旋转池化和全连接操作得到文本检测结果。
进一步改进在于,所述步骤S2还包括:
首先对训练图片进行缩放处理,然后经过卷积层和池化层进行特征提取,其中所有卷积层的卷积核大小都是3x3,步长是1,填充是1,这种设置使卷积后不改变特征图的大小;所有的池化层的池化核大小为2x2,步长为2,每经过一次池化,输出特征图的长宽都会变为原来的1/2,卷积神经网络最后一层输出的特征图的长宽均为原图的1/16。
进一步改进在于,所述步骤S2还包括:
将卷积神经网络的最后一层特征输入所述旋转区域提议网络,首先对输入特征使用一个n x n的窗口使每个滑动窗口都映射到一个低维特征,然后将低维特征输入到两个平行的卷积层中,一个是分类层,一个是回归层。
进一步改进在于,所述步骤S3还包括:
将文本区域的真实边界表示为具有5个元组(x,y,w,h,θ)的旋转边界框,每一个判定为文本区域的旋转边界框,输出7维预测向量(文本分类2维,旋转边界框坐标偏移量5维),坐标(x,y)表示边界框的几何中心,高度h为边界框的短边,宽度w为边界框的长边,方向θ为从x轴的正方向到与旋转的边界框的长边平行的方向的角度,由于场景文本检测读取方向及其相反方向不会影响检测到的区域,因此方向参数θ只覆盖一半的角度空间。假设旋转框的方向是θ,θ+kπ在区间[-π/4,3π/4)内,并且只有一个整数k,可以将θ+kπ更新为θ。
进一步改进在于,所述步骤S3还包括:
在训练过程中,首先添加方向参数以控制候选框方向,使用6个不同方向的输入,即-π/6,0,π/6,π/3,π/2,2π/3,它们在方向覆盖和计算效率之间进行权衡;其次,预置旋转默认框的宽高比设为1:2、1:5和1:8以覆盖广泛的文本行,为了不忽略小文本目标,尺度设为4、8、16和32,在滑动位置的特征图上的每一点将生成72个旋转默认框,每个滑动窗口位置分别产生用于分类层的360个输出和用于回归层的288个输出,因此为高度为H宽度为W特征图共生成H x W x 72个旋转默认框。
进一步改进在于,对旋转区域提议网络输入一张图像,会输出大量的旋转默认框,而旋转默认框中包含着大量的不平衡的正负样本,正负样本区域提取的划定准则为:
(1)将交并比IOU定义为真实边框和旋转默认框的重叠度;
(2)正样本情形:与真实边框的IOU>0.7,或与真实边框的0.3<IOU<0.7且角度夹角小于π/12;
(3)负样本情形:与真实边框的IOU<0.3,或与真实边框的IOU>0.7但与真实边框的角度夹角大于π/12;
(4)没有被归为上述两种情况的样本在训练过程中不被使用;
如果对所有的旋转默认框进行训练,则训练结果会偏向负样本,因为负样本多,因此训练时从默认框中随机采样出256个旋转默认框,正负样本比例保持在1:1,使训练更加稳定;如果一张图像中正样本不满128个的话,用负样本来做填充,将这256个旋转默认框作为样本计算损失函数。
进一步改进在于,对样本损失函数采用多重任务损失形式,直到损失函数收敛时训练完成,使用的损失函数定义为如下形式:
L(p,l,v*,v)=Lcls(p,l)+λ*l*Lreg(v*,v)
其中l=1代表前景,l=0代表背景,p是分类的概率,v*代表真实边框回归的目标元组,v代表文本标签的预测元组,两项之间的权衡由平衡参数λ控制,对于分类损失定义为:
Lcls(p,l)=-log(pl)
对于边界框的回归,背景区域被忽略,我们对文本区域采用smooth-L1损失,损失函数定义为:
进一步改进在于,在步骤2得到文本区域过程中还包括:
计算旋转候选框中两个矩形的交点和一个顶点,使用红色虚线将交叠区域划分为多个三角形,通过计算多个三角形的和,从而得到交叠区域的面积;并且,(1)保留IOU大于0.7中IOU最大的框;(2)如果所有候选框的IOU都介于0.3和0.7之间,保留与真实文本框有最小角度差的框(角度差应小于π/12)。
进一步改进在于,在所述步骤S4中,通过旋转池化操作得到固定大小的特征图的过程如下:
(1)将固定特征图的大小设置为Hr和Wr,对于高度h,宽度w的候选框,旋转后的候选区域可以划分为(h/Hr×w/Wr)个大小为Hr×Wr的子区域,每个子区域的方向与候选框相同;
(2)对每一个子区域的四个顶点进行仿射变换,得到子区域的边界;
(3)执行最大池化得到一个固定大小的特征图。
与现有技术相比,本发明的有益效果为:
1、本发明选用(x,y,w,h,θ)表示旋转框,比较容易计算两个旋转的角度差异。与传统的8点表示法相比,本方法更能很好回归带有旋转的目标检测情形,能够高效的计算经过旋转之后训练图片的真实边界。
2、本发明在预置旋转默认框时,设计了4、8、16和32的尺度及1:2、1:5和1:8的宽高比。覆盖了广泛的文本行,且克服了忽略小文本目标的可能性,提高了文本检测的准确性。
3、本发明创造性地提出了旋转池化操作,一方面是为了适应最后的全连接层的尺度问题,因为全连接层需要固定尺寸计算,否则维度不同,因此使用旋转池化将获得的多种维度的特征图固定到统一尺寸大小的特征图;另一方面是提升训练速度,只需要一次性通过卷积层获得特征图,然后通过映射就可以获得真实文本框与所产生的旋转默认框进行IOU值计算来确定正负样本,提升了不少的速度。
4、本发明采用带旋转角度的非最大值抑制方法,并提出了一种斜交矩形交叠面积的方法来计算倾斜相交的候选框的IOU,克服了传统的计算轴对齐候选框的IOU的计算方法。
5、本发明是基于旋转的检测框架,可用于检测任意角度方向的场景文本图像。
附图说明
附图仅用于示例性说明,不能理解为对本专利的限制;为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。
图1为本发明一实施方式的整体流程示意图;
图2为本发明一实施方式的算法框架示意图;
图3为本发明一实施方式的预置旋转默认框方框示意图;
图4为本发明一实施方式的旋转候选框IOU计算示意图。
具体实施方式
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以是通过中间媒介间接连接,可以说两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明的具体含义。下面结合附图和实施例对本发明的技术方案做进一步的说明。
本发明公开了一种面向任意角度的场景文本检测方法,可以克服预测目标位置粗略、垂直方向的文字检测不准确等问题。首先获得包含多张训练图片的训练集,且训练图片为已标记出文本位置的场景图像;然后将训练图片输入到卷积神经网络中进行特征提取,将提取的特征图输入到旋转区域提议网络输出文本区域,根据预测区域是前景或背景分类和文本预测位置构建损失函数;接着重新选取训练图片,以训练卷积神经网络和旋转区域提议网络模型,直至损失函数收敛保存模型;最后把训练集训练完成后,将待检测的图片输入到卷积神经网络和旋转区域提议网络中,得到初步的文本区域,再通过旋转池化和全连接操作得到文本检测结果。
一种面向任意角度的场景文本检测方法,包括以下步骤:
S1:获得包含多张训练图片的训练集,且训练图片为已标记出文本位置的场景图像;
S2:构建卷积神经网络和旋转区域提议网络,将训练图片输入到卷积神经网络中进行特征提取,将提取的特征图输入到旋转区域提议网络中得到文本区域,根据预测区域是前景或背景分类和文本预测位置构建损失函数;
S3:重新选取训练图片,反复执行步骤S2以训练卷积神经网络和旋转区域提议网络模型,直至损失函数收敛保存模型;
S4:将旋转区域提议网络输出的文本区域映射到卷积神经网络模型的最后一层特征图上,通过旋转池化操作得到固定大小的特征图;
S5:通过由两个全连接层组成的分类器,实现边框分类和边框回归;
S6:将待检测的图片输入到卷积神经网络和旋转区域提议网络中,得到初步的文本区域,再通过旋转池化和全连接操作得到文本检测结果。
作为本发明一优选实施方案,所述步骤S2还包括:
在步骤2中构建的卷积神经网络,处理的图像长宽比基本上符合5:3,因此首先对输入图像进行缩放处理,然后经过卷积层(13个)和池化层(4个)进行特征提取。其中所有卷积层的卷积核大小(kernel_size)都是3x3,步长(stride)是1,填充(pad)是1,这种设置使卷积后不改变特征图的大小;所有的池化层的池化核大小(kernel_size)为2x2,步长(stride)为2,这样每经过一次池化,输出特征图的长宽都会变为原来的1/2,卷积神经网络最后一层输出的特征图的长宽均为原图的1/16。
作为本发明一优选实施方案,所述步骤S2还包括:
在步骤2中构建的旋转区域提议网络,将卷积神经网络的最后一层特征输入该网络,首先对输入特征使用一个n x n的窗口使每个滑动窗口都映射到一个低维特征,然后将低维特征输入到两个平行的卷积层中,一个是分类层(文本区域是前景或背景),一个是回归层(文本区域位置)。为使输入图像上有效的接受域更大,我们使用的n=3,后面是两个1x1的平行卷积层。
作为本发明一优选实施方案,所述步骤S3还包括:
将文本区域的真实边界表示为具有5个元组(x,y,w,h,θ)的旋转边界框,每一个判定为文本区域的旋转边界框,输出7维预测向量(文本分类2维,旋转边界框坐标偏移量5维),坐标(x,y)表示边界框的几何中心,高度h为边界框的短边,宽度w为边界框的长边,方向θ为从x轴的正方向到与旋转的边界框的长边平行的方向的角度,由于场景文本检测读取方向及其相反方向不会影响检测到的区域,因此方向参数θ只覆盖一半的角度空间。假设旋转框的方向是θ,θ+kπ在区间[-π/4,3π/4)内,并且只有一个整数k,可以将θ+kπ更新为θ。
作为本发明一优选实施方案,所述步骤S3还包括:
在训练过程中,使用传统的尺度和宽高比参数的文本框不足以进行自然场景文本检测,因此我们使用旋转框,首先添加方向参数以控制候选框方向,使用6个不同方向的输入,即-π/6,0,π/6,π/3,π/2,2π/3,它们在方向覆盖和计算效率之间进行权衡;其次,由于文本区域通常具有特殊的形状,因此将预置旋转默认框的宽高比设为1:2、1:5和1:8以覆盖广泛的文本行,为了不忽略小文本目标,尺度设为4、8、16和32,如图3所示。在滑动位置的特征图上的每一点将生成72个旋转默认框(6个方向3个宽高比4个尺度),每个滑动窗口位置分别产生用于分类层的360个输出(即5x 72)和用于回归层的288个输出(即4x 72)。因此为高度为H宽度为W特征图共生成H x W x 72个旋转默认框。
作为本发明一优选实施方案,对旋转区域提议网络输入一张图像,会输出大量的旋转默认框,而旋转默认框中包含着大量的不平衡的正负样本,正负样本区域提取的划定准则为:
(1)将交并比IOU定义为真实边框和旋转默认框的重叠度;
(2)正样本情形:与真实边框的IOU>0.7,或与真实边框的0.3<IOU<0.7且角度夹角小于π/12;
(3)负样本情形:与真实边框的IOU<0.3,或与真实边框的IOU>0.7但与真实边框的角度夹角大于π/12;
(4)没有被归为上述两种情况的样本在训练过程中不被使用;
如果对所有的旋转默认框进行训练,则训练结果会偏向负样本,因为负样本多,因此训练时从默认框中随机采样出256个旋转默认框,正负样本比例保持在1:1,使训练更加稳定;如果一张图像中正样本不满128个的话,用负样本来做填充,将这256个旋转默认框作为样本计算损失函数。
作为本发明一优选实施方案,对样本损失函数采用多重任务损失形式,直到损失函数收敛时训练完成,使用的损失函数定义为如下形式:
L(p,l,v*,v)=Lcls(p,l)+λ*l*Lreg(v*,v)
其中l=1代表前景,l=0代表背景,p是分类的概率,v*代表真实边框回归的目标元组,v代表文本标签的预测元组,两项之间的权衡由平衡参数λ控制,对于分类损失定义为:
Lcls(p,l)=-log(pl)
对于边界框的回归,背景区域被忽略,我们对文本区域采用smooth-L1损失,损失函数定义为:
作为本发明一优选实施方案,在步骤2得到文本区域过程中还包括:
在步骤2得到文本区域过程中,由于旋转候选框可以在任何方向上生成,因此在轴对齐候选框上的IOU计算可能导致倾斜相交的候选框的IOU计算错误,并进一步破坏了候选框学习。因此设计了一种计算斜交矩形交叠面积的方法,方法示意图如图4所示,计算两个矩形的交点和一个顶点,使用红色虚线将交叠区域划分为多个三角形,通过计算多个三角形的和,从而得到交叠区域的面积。传统的非极大值抑制只考虑了IOU,对于斜交情况下的检测结果不适用,例如:角度差小于的旋转框与真实文本框的IOU的值为0.4,其小于0.7,然而它可以被注释为正样本。因此我们考虑了IOU与旋转角度,新的方法由两部组成:(1)保留IOU大于0.7中IOU最大的框;(2)如果所有候选框的IOU都介于0.3和0.7之间,保留与真实文本框有最小角度差的框(角度差应小于π/12)。
作为本发明一优选实施方案,在所述步骤S4中,通过旋转池化操作得到固定大小的特征图的过程如下:
(1)将固定特征图的大小设置为Hr和Wr,对于高度h,宽度w的候选框,旋转后的候选区域可以划分为(h/Hr×w/Wr)个大小为Hr×Wr的子区域,每个子区域的方向与候选框相同;
(2)对每一个子区域的四个顶点进行仿射变换,得到子区域的边界;
(3)执行最大池化得到一个固定大小的特征图。
图中,描述位置关系仅用于示例性说明,不能理解为对本专利的限制;显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。