一种手写古文字检测方法与流程

文档序号:22678502发布日期:2020-10-28 12:36阅读:461来源:国知局
一种手写古文字检测方法与流程

本发明主要涉及计算机视觉检测相关技术领域,具体是一种手写古文字检测方法。



背景技术:

手写体文本检测是计算机视觉和模式识别领域的一项重要研究。手写体文本检测是指在手写的文本图像中确定所有文本出现的精确位置并用文本框将其精确标注的任务。由于写作的差异性,手写文本的轮廓、形状和排列方式有很大的不同。因此,手写文本的检测迎来了艰难的挑战。手写文本检测在文档翻译、古籍电子化、机器人视觉等领域有着广泛的应用,因此为了提高检测性能而不断对检测方法进行深度研究十分重要。

为了减少背景对图像检测精度的影响,对古籍文本图像的研究大多采用基于连通区域的方法,如最大稳定极值区域。这些方法速度很快,可以达到很高的精度,但由于这些方法对像素点比较敏感,预处理后仍然存在少量的噪声,噪声的存在会影响检测结果。因此,古籍文本检测仍处于初级阶段。

基于深度学习的方法显著提高了文本识别和检测任务的性能。文本检测的一个最新趋势是使用卷积神经网络来对不同层次的特征图进行学习以实现最终的检测。然而,由于古籍文本图像的缺陷、模糊性和背景噪声过大等特点,会导致检测精度不高。



技术实现要素:

为解决目前技术的不足,本发明结合现有技术,从实际应用出发,提供一种手写古文字检测方法,在彝文、中文、拉丁文、意大利文等古籍数据集上的测试结果表明,本发明的方法具有较好的精度,为手写体古文字的检测研究迈出了坚实的一步。

本发明的技术方案如下:

一种手写古文字检测方法,包括:

使用基于cnn的atd网络对输入图像和对应的标注信息进行特征学习,随后基于已标注的数据和已学习的数据对图像中的字符进行分类,根据分类结果生成at类候选框;

使用基于nms的mser模型对输入的图像通过非局部均值滤波进行预处理,再使用mser算法提取文本轮廓,然后由最小外接矩形生成候选框,并由nms筛选出最精确的mt类候选框;

atd网络以及mser模型同步输出同一个字符的两个不同的候选框,经过合并算法对上述两个候选框进行合并,得到最终的ft类文本框。

进一步,在检测过程中,首先将文本图像进行分类处理,具体分为三类,分别为t类、pt类、b类;

其中,t类指完整的文本实例,pt类指文本图像中被污点覆盖或部分缺失的文本实例,b类指图像数据集中不属于上述两个类的所有对象,即图像中的背景。

进一步,所述atd网络的架构包括卷积层、上采样层以及横向连接;

其中,卷积层为网络的前部分,其包括conv1到conv6六个卷积块,每个卷积块包含一组连续的层,每层由具有相同分辨率的特征图组成,每个卷积块由一个maxpool层与另一个块分开,每个卷积块的特征图的分辨率是前一块的一半,深度是前一块的两倍,早期的特征映射捕获低层特征,而深度特征映射捕获语义信息非常强的特征;

上采样层用于提高经过池化后的卷积块中特征图的分辨率,相对应的,上采样层同样有六个块,包含unconv1到unconv6六个块。在每个块中间使用unpool与另一个块分开,在上采样的特定阶段的特定块中的特征映射具有与卷积的相应阶段的相应层中的映射相同的分辨率和深度;

横向连接存在于卷积层和上采样层的相应阶段之间,横向连接用于增强由卷积映射提供的具有良好定位能力和上采样词干特征映射中的强语义信息,每个编号相同的conv和unconv中间都有一个单独的横向连接,其中卷积阶段的最后一层的特征映射连接到上采样阶段中的相应特征映射,在横向连接中,为了减小结果映射的深度,使用1×1滤波器来将两个特征映射连接起来;

通过使用1×1滤波器对最终特征映射进行卷积得到输出映射,输出映射的深度为八个通道,对于输出特征图中的像素pi,八个通道表示不同的预测,其中前四个通道预测pi检测到的候选框的2个中心坐标、高度和宽度,第五个通道预测对象的候选文本框的置信度,最后三个通道分别给出包含一个t、pt和b三个类对应的文本框的置信度。

进一步,在atd网络训练过程中,定义一个多任务损失函数,定义如下:

lmul=lcls1+λ1lcls2+λ2lreg,(1)

其中,lcls1是类不可知损失函数,lcls2是与三个类的预测置信分数相关联的总损失,lreg是与预测的候选框维度相关联的回归损失,将λ1和λ2的值都设置为1,以使每个损失的权重相等,让最终输出映射中的像素pi预测候选框的坐标、高度和宽度,候选框编码为四维向量zi;类不可知的置信度得分为ti;类特定的得分分别为t、pt和b,像素pi被称为具有真正的类标签l,其中l∈{t,pt,b},如果其预测的框与类l的标注值gt框具有大于0.5的重叠,则具有最大重叠的gt框的类是其真正的标签,对于像素pi,三个类的真标签用表示,其中j∈{t,pt,b},前提是j是pi处预测框所属的类,否则同样的,如果pi处的框属于任意类,则否则对各种损失函数的定义如下:

其中res是输出特征映射中的像素总数,lcls1是与每个检测到的框关联的类不可知的分类丢失,lcls2b、lcls2pt和lcls2t分别是与b、pt和t类的候选框相关联的分类损失,选择lcls1、lcls2b、lcls2pt和lcls2t作为交叉熵损失函数,进行训练。

进一步,在进行atd网络训练时,限制用于训练的t类样本的数量,只选择对lmul贡献最大的t类样本,使得pt类和t类样本之间的比率不超过3:1;

t类的每个训练样本都有一个掩码,只有在选择该样本进行训练时才设置该掩码,否则该掩码是未设置的,并且该样本对损失函数没有贡献。

进一步,在基于nms的mser模型中进行目标检测时,具体操作是:将所有检测结果中得分最大的结果取出,加入到最终的检测结果集中,得分最大的结果设置为a,检测结果集设置为b;然后将a中的其他检测结果i与该结果进行比较,如果结果是相似程度高于阈值,则从a中移除i,重复直到a为空集。

进一步,在经过合并算法对上述两个候选框进行合并时,将atd网络生成的t类候选框与mser模型生成的pt类候选框合并。

本发明的有益效果:

本发明结合了cnn和mser的优点,即mser对特征的准确性和cnn对噪声的鲁棒性,为古籍手写体文本建立了一个高效、快速的atd模型,该模型包含了atd网络和mser模块,在现有技术中属于首次同时使用cnn和mser来完成文本检测的任务,使用合并算法作为后处理步骤,以获得精确度更高的文本框,在彝文、中文、拉丁文、意大利文等古籍数据集上的测试结果表明,本发明的方法具有较好的精度,为手写体古文字的检测研究迈出了坚实的一步。

附图说明

附图1为本发明的流程图;

附图2为本发明atd网络架构图。

具体实施方式

结合附图和具体实施例,对本发明作进一步说明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所限定的范围。

本发明是一种基于nms的mser模型和cnn相结合的快速有效的深度学习方法。本发明的检测方法基于atd检测模型(ancienttextdetectionmodel)实现。

atd模型由两个部分组成,一个是基于cnn的atd网络,一个是基于nms的mser模型。本发明使用基于cnn(卷积神经网络)的atd(古文本检测)网络对输入图像和对应的标注信息进行特征学习,随后基于已标注的数据和已学习的数据对图像中的字符进行分类,根据分类结果生成at(由atd网络生成的矩形框)类候选框;使用基于nms(非极大值抑制)的mser(最大稳定极值区域)模型对输入的图像通过非局部均值滤波进行预处理,再使用mser算法提取文本轮廓,然后由最小外接矩形生成候选框,并由nms筛选出最精确的mt(由mser模型生成的矩形框)类候选框;atd网络以及mser模型同步输出同一个字符的两个不同的候选框,经过合并算法对两个候选框进行合并,得ft(合并的矩形框)类文本框。

图1即atd模型的流程图。

在古籍检测中,由于文本区域在字体、大小、颜色和方向等方面有很大的变化,所以手写文本检测是图像处理中一个具有挑战性的问题。大多数文本检测数据集都有许多文本实例,它们要么与背景相比具有高对比度,要么不被其他对象遮挡,要么不受背景支配。由于cnn检测器学习到文本具有很强的卷积特性且具有很强的区分能力,因此这些特征使得文本检测成为一个两类(文本和背景)问题。此外,背景的卷积特征与文本有很大的不同。简而言之,文本和背景的特征是非常不同的,并且有一个明显的边界将这两个类分开。

古籍文本常常出现模糊、缺失、风化、污渍等问题。此外,由于噪声的存在,图像的对比度非常低,这使得区分文本和噪声以及背景都很困难。因此,cnn检测器不能很好地学习文本的强卷积特征。此外,从不同密度的文本区域获得的卷积特征编码了文本和背景的信息,这会混淆检测器并降低检测精度。需要注意的是,检测任务主要的挑战是解决文本的学习特征、背景和包含部分文本的区域之间的有限差距。

为了解决这个问题,本发明提出了一个鲁棒的古文图像检测方法。它将古籍图像检测作为一个三类问题来处理,如下所示:

(1)文本类(t,text):文本类是指完整的文本实例。

(2)部分文本类(pt,parttext):古籍文本图像中被污点覆盖或部分缺失的文本实例。

(3)背景类(b,background):图像数据集中不属于上述两个类的所有对象都属于b类。

对于本发明的atd网络框架:

在cnn中,通常会观察到以下问题:

(1)cnn的输入图像(早期层)附近的层中的特征映射捕获的语义信息较少,而cnn的映射捕获的语义信息较强。

(2)cnn的深层具有低分辨率的特征图,无法检测到非常小的文本实例,而早期层的特征图能更好的能检测到小文本。

(3)在重复采样(下采样和上采样)后获得的特征映射使得文本对象的局部精度很差。

基于cnn的基本思想,本发明提出了atd网络,该网络用来检测古籍文本图像中的文本区域,有效的解决了上述三个问题。图2即atd网络的结构,其中(x,y,z)表示在该块中生成的特征图的分辨率(x,y)和深度(z),(w,h)是输入图像的分辨率。

atd网络可以对输入图像给出一组基于字符级别的候选框。atd网络的架构有三个不同的组件,如下所述:

(1)卷积层为网络的前部分,其包括conv1到conv6六个卷积块,每个卷积块包含一组连续的层,每层由具有相同分辨率的特征图组成,每个卷积块由一个maxpool(执行最大池化操作)层与另一个块分开,每个卷积块的特征图的分辨率是前一块的一半,深度是前一块的两倍,早期的特征映射捕获低层特征,而深度特征映射捕获语义信息非常强的特征;

(2)上采样层用于提高经过池化后的卷积块中特征图的分辨率,相对应的,上采样层同样有六个块,包含unconv1到unconv6六个块。在每个块中间使用unpool(执行上池化操作,是maxpool的逆操作)与另一个块分开,在上采样的特定阶段的特定块中的特征映射具有与卷积的相应阶段的相应层中的映射相同的分辨率和深度;

(3)横向连接存在于卷积层和上采样层的相应阶段之间,横向连接用于增强由卷积映射提供的具有良好定位能力和上采样词干特征映射中的强语义信息,每个编号相同的conv和unconv中间都有一个单独的横向连接,其中卷积阶段的最后一层的特征映射连接到上采样阶段中的相应特征映射,在横向连接中,为了减小结果映射的深度,使用1×1滤波器来将两个特征映射连接起来;通过使用1×1滤波器对最终特征映射进行卷积得到输出映射,输出映射的深度为八个通道,对于输出特征图中的像素pi,八个通道表示不同的预测,其中前四个通道预测pi检测到的候选框的2个中心坐标、高度和宽度,第五个通道预测对象的候选文本框的置信度,最后三个通道分别给出包含一个t、pt和b三个类对应的文本框的置信度。

对于本发明的atd网络训练:

损失函数:

atd网络同时执行三个任务,检测候选框,为每个框分配一个类不可知的置信度得分,并为三个类(t、pt和b)的每个框分配一个类特定的置信度得分。基于此本发明定义了一个多任务损失函数,其定义如下:

lmul=lcls1+λ1lcls2+λ2lreg,(1)

其中,lcls1是类不可知损失函数,lcls2是与三个类的预测置信分数相关联的总损失,lreg是与预测的候选框维度相关联的回归损失。将λ1和λ2的值都设置为1,以使每个损失的权重相等。让最终输出映射中的像素pi预测候选框的坐标、高度和宽度,候选框编码为四维向量zi;类不可知的置信度得分为ti;类特定的得分分别为t、pt和b。像素pi被称为具有真正的类标签l,其中l∈{t,pt,b}如果其预测的框与类l的标注值(gt)框具有大于0.5的重叠。如果预测的框与多个类的gt框具有大于0.5的重叠,则具有最大重叠的gt框的类是其真正的标签。对于像素pi,三个类的真标签用表示,其中j∈{t,pt,b},前提是j是pi处预测框所属的类,否则同样的,如果pi处的框属于任意类,则否则对各种损失函数的定义如下:

其中res是输出特征映射中的像素总数。lcls1是与每个检测到的框关联的类不可知的分类丢失。lcls2b、lcls2pt和lcls2t分别是与b、pt和t类的候选框相关联的分类损失。选择lcls1、lcls2b、lcls2pt和lcls2t作为交叉熵损失函数,便于训练。本发明选择lregb、lregpt和lregt作为光滑l1损失函数,因为它对异常值不太敏感。需要指出的是,回归损失只考虑的像素。而且,并不是所有t类的训练样本都对损失函数有贡献。

训练数据筛选:

在本发明使用的所有检测数据集中,t类构成了大部分训练样本。当训练变得不平衡时,这会导致收敛缓慢。为了解决这个问题,本发明限制了用于训练的t类样本的数量。只选择对lmul贡献最大的t类样本,使得pt类和t类样本之间的比率不超过3:1。t类的每个训练样本都有一个掩码,只有在选择该样本进行训练时才设置该掩码,否则该掩码是未设置的,并且该样本对损失函数没有贡献。

对于本发明的mser模块:

mser模块采用非局部均值滤波对图像进行预处理,然后用传统的最大稳定极值区域法提取文本轮廓,再由最小外接矩形生成候选框,基于nms的mser可以快速输出文本候选框。

mser即最大稳定极值区域,即对一幅灰度图像(灰度值为0~255)取0到255的阈值进行二值化处理。如把灰度图看成高低起伏的地形图,其中灰度值看成海平面高度的话,最大稳定极值区域的作用就是在灰度图中找到符合条件的坑洼。条件为坑的最小高度,坑的大小,坑的倾斜程度,坑中如果已有小坑时大坑与小坑的变化率。

目前,nms是基于深度学习的目标检测模型的一个重要后处理步骤。在目标检测方面,具体操作是将所有检测结果中得分最大的结果(设置为a)取出,加入到最终的检测结果集中(设置为b),然后将a中的其他检测结果i与该结果进行比较,如果结果是相似程度(通常使用iou,即交并比intersectionoverunion)高于阈值,则从a中移除i。重复直到a为空集。nms可以方便的去除大部分由mser模块生成的像素点造成的错误候选框。nms算法描述如下:

输入:多个原始候选框

输出:置信度最大的候选框

1假定有n个候选框,预设一个iou的阈值如0.7。

2按置信度大小对n个框排序。

3设定置信度最高的候选框为一个标定框;

4在剩下n-1个候选框中,去掉与标定框iou大于0.7的。

5重复2~4的步骤,直到没有候选框为止。

结束。

非局部均值去噪滤波器可以看作是局部均值滤波器的特例。其目的是使用类似于当前点纹理的区域来加权当前点。即,基于加权点与当前点的邻域之间的相似性生成加权因子,即:

u(x)=∑y∈iw(x,y)*v(y),(5)。

对于本发明的文本框合并:

atd网络提供一组候选框作为一组字符的输出,其文本框几乎涵盖所有非连续型字符。mser可以为同一组字符生成另一组候选框,但由于古文本图像中的干扰往往分布不均,因此检测到的候选框不包含整个词。据观察,在许多情况下,由于单词的某一部分中存在较大的干扰密度,该部分被检测为pt类的候选框,而单词的其他部分被检测为另一字符的候选框。为了解决这个问题,本发明提出了一种合并算法,将atd网络生成的t类候选框与mser模型生成的pt类候选框合并,具体算法如下所示:

输入:at,mt

输出:ft

1at,mt,ft非空

2对于每个i∈mt执行

3γ1i=maxscore(i,neigh(i))

4δ1i=maxboxindex(i,neigh(i))

5如果(check(γ1i)==true)则

6γ2i=maxscore(i,opposite(δ1i))

7δ2i=maxboxindex(i,opposite(i,δ1i))

8如果(check(γ2i)==true)则

9k=merge(i,δ1i,δ2i);

10否则

11k=merge(i,δ1i);

12at=at∪{k}

13对于每个i∈(at∪mt)执行

14mt=mt∪{i}

结束。

对于输入的古文本图像i,atd网络和mser模型生成的候选框的集合分别用at和mt表示。其中neigh(i)表示mt类候选框(由i表示)的15×15邻域中at类候选框的集合。neigh(i)中at类候选框的集合,其方向与t类候选框(由j表示)相对于mt类候选框(由i表示)存在的方向相反,由(i,j)给出。函数maxscore(i,neigh(i))给出了mt类候选框(由i表示)和neigh(i)之间的最高相似性得分,而maxboxindex(i,neigh(i))给出了与i具有最大相似性的at类候选框。

函数检查(i)检查相似度得分i是否足够高,并相应地返回布尔值。根据mt类候选框(由i表示)和at类候选框(由j表示)在其类不可知的置信度得分、尺度、纵横比和它们之间的空间距离方面的相似程度,以获得该相似性得分。merge根据传递给它的参数数合并两个或三个候选框,并给出一个新候选框。算法的描述如下:

(1)一个mt类候选框只在其附近的候选框中查找最多两个。这是因为一个词可以在两个方向上,即其他临近字符可能接近它。

(2)因为同一字符的其他部分可能已被归类为mt类,通过将mt类候选框与一个或两个at类候选框合并而形成的候选框被分配给at类,它们最终将与这个新创建的at类候选框合并。

(3)最后,属于at和mt类的所有候选框被分配到一个公共的finaltext(ft)类,因为合并过程完成后,所有候选框都失去了at或mt的身份,属于一个类。

实施实例:

为了更好的说明本发明算法的准确度,本发明使用了3个数据集进行对比实验。首先本发明收集了古彝文图像数据集。本发明构建了一个包含470张图像的古彝文数据集,该数据集包含约90000个古彝文字符。考虑到古彝文数据集基本包含模糊、遮挡、风化、污渍等文本检测难点,以及已提供的字符级标注,该数据集可以用作训练鲁棒性、通用性强的古文字检测系统。

本发明使用古彝文数据集预先训练atd网络,硬件条件如下:nvidiartx2070s显卡,i7-9700kfcpu,16g内存。因为atd网络是完全卷积的,因此它接受所有大小的输入,所以基于彝文数据集训练的atd网络可以迁移到汉字、日语、阿拉伯语等手写古籍文字的检测任务上。

本发明将atd模型的性能与目前最先进的文本检测方法进行了比较。atd模型在古彝文数据集上的测试结果表1所示。该表显示atd模型在古彝文数据集的检测达到了83%的精确度、85%的召回率以及84%的加权平均值。古彝文数据集中,大量不同字体、大小、方向的文本实例表明了atd模型具有较强的鲁棒性,且相较于现有方法取得了显著的提升。

表1古彝文数据集检测精度对比

为了评价类别数目对检测效果的影响,为了与包含t类、pt类和b类的atd模型相比较,本发明构建了仅包含t类和b类的训练模型,称之为model-1。该模型的训练和实现细节与atd模型完全相同,只是训练预测的类数不同。表2显示了atd模型和model-1在古彝文数据集上的测试结果,atd模型的检测精度相较于model-1提升了15%。

表2atd模型与model-1性能对比

为了评价合并算法的有效性,本发明使用古彝文数据集对于atd模型和独立的atd网络以及mser模型进行了测试评价,表3显示了三种方法的测试结果。结果表明融合了atd网络和mser模型的atd模型在手写古籍文本的检测问题上具有显著的精度提升。

表3atd模型、atd网络、mser模型性能对比

为了测试atd模型在不同文字古籍文本检测的适用性,本发明额外在两个手写古籍数据集上进行了测试,数据集分别为:diva-hisdb数据集包含中世纪的拉丁文和意大利文历史手稿,diva-hisdb数据集包含了1300张18到19世纪的篇幅级别的英文文档图片。值得注意的是,diva-hisdb数据集和diva-hisdb数据集是单词级别,并非古彝文数据集的字符级别。针对这一问题本发明对atd模型进行了手动调整,即将atd模型输出的数个字符级别的文本框利用合并算法合并为一个单词级别的文本框,使其能迁移到单词级别的检测任务上。实验测试结果对比如表4、表5所示。

表4diva-hisdb数据集性能对比

表5andar-tl-1k数据集性能对比

综上可知,本发明从传统手写体文本检测的二元类问题出发,将具有古籍文本检测问题重新划分为三类问题,在此基础上构建了atd模型,该模型包含一个利用各层特征,高精度、高速度地检测古籍图像的atd网络和一个mser模型,同步的对输入图片进行检测并输出两个不同结果。本发明使用了合并算法作为后处理步骤,对atd网络和mser模型输出的两个不同候选框进行合并,实现了更精确的文本定位。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1