APP下载

基于音节切分的藏文印刷体识别

2022-10-01才让当知华却才让黄鹤鸣

计算机工程与设计 2022年9期
关键词:印刷体藏文音节

才让当知,华却才让+,黄鹤鸣

(1.青海师范大学 计算机学院,青海 西宁 810008;2.青海师范大学 藏语智能信息处理及应用国家重点实验室,青海 西宁 810008;3.青海师范大学 藏文信息处理教育部重点实验室,青海 西宁 810008)

0 引 言

藏文文献资料非常丰富,但是可用的电子化信息资源非常少。随着藏文信息处理技术的发展,需要对大量的藏文文献电子化。人工键盘录入是一项繁重且低效的解决方式,充分利用文字识别技术将会大幅提升藏文文献电子化的效率,并且把人从繁重的重复工作中解放出来。与中文、英文等主流文字相比,藏文印刷体识别研究起步相对较晚,缺少高质量的标注数据集,文本图像的分割相对困难,因此,印刷体藏文识别效果相对较差,落地使用的产品较少。

在国内,印刷体藏文识别方法已经从传统的特征匹配方法[1],发展到了现在的基于神经网络模型的识别方法,并达到了应用的水平。在国外,Kojima M.等提出了基于字典匹配的印刷体藏文字识别方法,可以识别相似字符[2]。Zach Rowinski等研究了图像二值化、文本图像切分、特征提取、识别等问题,开发了藏文OCR系统NAMSEL[3],该系统首先使用SVM进行识别,之后采用隐马尔科夫模型对识别结果进行微调,完成识别。

以上文献中,都采用字丁作为切分单元,而且每个文献报道的字丁个数不同。合法的藏文字丁有1000多个,如果忽略使用频率极低的字丁,用于识别的字丁数远小于这个数字。公保杰和陈洋在各自开发的识别系统中,分别选用了563个和584个字丁[4]。以字丁为单元进行识别时,类别数目少,有利于分类器训练;但缺点也比较明显:一是相似字丁多,降低了分类性能;二是元音符号和弱音节符会导致字丁之间的笔画粘连,影响到文本图像分割,从而影响识别效果。为了有效解决以字丁为识别单元引起的缺陷,本文提出了以音节为识别单元的藏文印刷体识别方法。相比于藏文字丁的个数,藏文音节的个数较多,经过详细推算,才丹夏茸认为藏文有17 532个音节;而多拉通过预料统计认为藏文有18 088个音节[5]。本文中音节的个数为19 450。

1 预处理

受光照不均等环境因素影响,得到的文本数字图像往往存在质量较差、受噪声影响大以及倾斜等现象。为了提高识别效果,需要对图像进行二值化、倾斜矫正和规范化等预处理。

1.1 二值化

本文采用局部自适应二值化提取文本的轮廓和边界信息,主要过程是:先将图像平均分成若干块;然后,分别计算每个块的平均阈值[6];最后,对图像进行二值化。

分别用P(x,y) 和p′(x,y) 表示局部自适应二值化前后像素 (x,y) 的灰度值,则

(1)

式中:阈值T(x,y) 是以 (x,y) 为中心、r为半径的窗口内所有像素的平均值,即

(2)

二值化前后文本数字图像的效果对比如图1所示:由于受光照不均的影响,原图右侧存在明显的阴影,如图1(a)所示;经过局部自适应二值化,消除了受光照不均导致的阴影,有利于后续文本图像的分割,如图1(b)所示。

图1 局部自适应二值化

1.2 校 正

倾斜的文本数字图像会导致其中的待识别字符也存在一定程度的倾斜,影响文本图像的分割和识别效果,因此,需要倾斜校正。本文采用霍夫变换进行文本图像的自动校正。首先,将图像平面上的像素点 (x,y), 通过公式

ρ=xcosθ+ysinθ

(3)

映射到参数空间中,图像平面上一个点对应参数空间中的一条曲线。其次,由霍夫变换原理,在参数空间平面曲线相交最多的点,对应图像平面上的直线,如图2(a)所示。最后,文本数字图像需要向相反的方向旋转θ,其中θ表示直线与水平方向的夹角;当检测到多条直线时,取平均值,则旋转校正更准确,旋转校正结果如图2(b)所示。

图2 霍夫变换矫正

1.3 规范化

经过行切分和列切分,得到待识别的字符图像,但这些字符图像的尺寸往往有较大差别,并且图像上下边缘存在不同程度的空白,如图3(a)所示。因此,需要删除空白并调整字符位置,统一图像尺寸[7]。根据藏文字形结构特点,对音节文本图像进行两步规范化:第一,删除上下空白部分;第二,统一将音节文本图像的尺寸归一化为48×32。规范化后的结果如图3(b)所示。

图3 规范化

2 藏文印刷体文本图像分割

首先对藏文印刷体文本图像按行分割,然后在此基础上进行按字丁和音节分割。根据藏书写特点,选择分割更容易的文本识别单位。最后采用所设计的藏文印刷体分割技术构建由于神经网络训练的印刷体标注数据库。

2.1 行切分

和汉文以及英文相比,藏文书写有一些显著特点:①所有藏文字符都以基线对齐[8];②藏文的字间距和行间距更小;③元音符号可能使前后两个字符或上下两个字符粘连,如图4所示(横纵坐标单位为像素);④字体过大时,字丁和元音之间的距离增加,增大了行切分的难度[9],如图5所示。因此,印刷体藏文文本图像的分割更具有挑战性。

图4 文本投影

图5 藏文基线

当字体较大时,元音和辅音之间有一定的间距,因而它们会被当作两个独立的连通域,导致分割错误。如果适当填充元音和辅音之间的空隙,可减少对行切分的影响。同时,本文采用对字符间的空隙敏感度较小的投影分割法:遍历每一行,得到的最大连续像素数为行高,按照这个行高进行行切分。投影分割法能有效避免被分割成多个区域的情况,分割结果如图6所示。矩形框是藏文文本行的外接框,4个顶点是文本行在整体文档图像上的位置,分割时取4个点的坐标即可。

图6 行分割

2.2 音节切分

图7 藏文字丁/音节示例

最后,通过确定 (y1,y2,x1,x2) 4个点的取值按音节分割,其中 (y1,y2)、 (x1,x2) 分别是垂直与水平方向上裁剪的起始位置和终止位置。由于输入是行文本图像,垂直方向上分割的起始位置为行边界,终止位置是行高度,因此每个音节的 (y1,y2) 两个点取值为 (0,h)。 水平方向上分割的起始位置和终止位置 (xi,xj) 由l′得到,通过遍历按音节分割,算法的流程如图8所示。

图8 音节切分流程

图9 按列分割

2.3 分割实验

表1 藏文字丁分割准确率(字体:喜马拉雅)/%

表2 藏文音节分割准确率(字体:喜马拉雅)/%

对比表1和表2可以看出:①按字丁为单元分割时,随着字号变小,分割准确率下降明显,并且二值化阈值差值较大;②以音节为单位分割时,准确率与字号变化关系不大,二值化阈值从原来的160调整为180,阈值差只有20;③由于藏文书写的特点,字丁受更多的藏文字符构件的干扰,比音节分割难度程度更大。与按字丁分割相比,按音节分割准确率提高了3.95个百分点,说明以音节为单位分割效果更稳定。

3 分类器的设计与实验

为了验证音节比字丁更适合作为印刷体藏文的识别单位,本节首先构造了隐藏层数为3的卷积神经网络模型为识别验证模型,最后将识别效果优的模型进行优化。

3.1 卷积神经网络

卷积神经网络是深度学习中最成功的一种模型,特别适合处理多维数据结构,被广泛应用于计算机视觉[10,11]、自然语言处理邻域[12]等领域。本文的分类器采用卷积神经网络,它由输入层(Input layer)、隐藏层(Hidden layer)、全连接层(Full-connected layer)以及输出层(Output layer)不断堆叠构成[13]。本文在轻量级的LeNet-5网络的基础上进行改进,网络结构如图10所示。使用3×3的卷积核在归一化后的特征图上遍历提取特征,其次使用2×2卷积核进行池化。池化分为最大和平均池化。最大池化能更多地保留纹理信息,而平均池化能更多地保留图像的背景信息。因此本文中采用最大和平均交替式的池化,并将网络隐藏层增加到了7层。当神经网络层堆叠过多时容易发生过拟合现象,所以采用Dropout丢弃一部分训练参数,可以有效缓解过拟合的发生[14]。当训练神经网络模型时Dropout=0.5。

图10 LeNet-5网络模型

将得到的音节特征图像展开为一维向量,输送到输出层,通过Softmax函数计算样本属于每一个类别的概率,实现分类任务,如式(4)

(4)

其中,sj为表示当前元素的指数与所有元素指数和的比值。zj是分类器前层单元的输出,j表示类别索引位置,k为类别总数。

3.2 数据集

收集高覆盖度的文本语料,将其打印扫描保存为文本图像,对文本图像以音节为单位进行分割,并对图像音节进行标注,得到共19 450个音节的132 500个样本,这些样本构成藏文印刷体音节图像数据库。同时,构建共626个字丁的30 500个样本,这些样本构成藏文印刷体字丁图像数据库。上述两类数据库中,除了基本的字丁和音节外,还包括一些常用的梵文。

3.3 识别实验

分别以字丁和音节为识别单元,在卷积神经网络模型上做对比识别实验。以字丁为识别单元时,训练卷积神经网络模型的主要参数见表3。

表3 基于字丁的LeNet-5网络模型参数

字丁的类别较少,当模型迭代1000次时,在训练集上,识别率已达99.67%,如图11所示;并且,在学习特征的过程中,模型训练损失值的下降没有出现非常明显的上下波动,说明训练过程非常稳定;迭代1000次时训练损失值基本倾向于0,如图11所示。

图11 基于字丁的LeNet-5网络模型准确率/损失值

音节的数量远多于字丁,以音节为单元训练卷积神经网络模型时,直接采用字丁的训练参数则无法达到同样的识别率,见表4。当迭代次数为1000时,训练识别率仅达到了57.4%;不改变其它参数而仅仅提高迭代次数,则准确率随着迭代次数的增加在递增;当迭代次达10 000时,训练识别率达到了97%,如图12所示。

表4 基于音节的LeNet-5网络模型参数

图12 基于音节的LeNet-5网络模型准确率/损失值

音节类别是字丁类别的30倍,远多于字丁。因此,当迭代次数为10 000左右时训练损失值才基本平缓并且基本接近于0,如图12所示。当其它参数不变时,基于音节的模型需要更多的迭代次数来学习特征,这个迭代次数是基于字丁的识别模型的10倍。

分别训练好基于字丁和基于音节的卷积神经网络识别模型后,对印刷体藏文文本图像进行开放测试,测试字体均为喜马拉雅,见表5。可以看出,基于音节的识别模型比基于字丁的识别模型高出21.52个百分点。说明音节文本图像比字丁文本图像包含着更多的字符特征信息,而这些辅助特征信息在识别中发挥着重要的作用。

表5 识别单位测试

确定音节为识别单元后,对网络模型从池化方式、参数和卷积层层数等方面进行优化,最终提出了基于LeNet-5网络的印刷体藏文识别模型,采取参数见表6,训练集上最高识别准确率为99.8%。

表6 最优参数

目前没有公开的藏文文本识别测试数据集,因此,本文构建了涉及藏文历史、人物传记、小说和新闻等内容的测试数据集,共有4076个音节。在这个数据集上本文所提出的方法,其平均识别正确率达96.11%,见表7。

表7 开放测试

4 结束语

结合藏文字形结构特点,提出了基于音节切分的藏文印刷体识别方法。通过实验发现,本文提出的藏文印刷体识别准确率比基于字丁的识别方法高21.52个百分点。并在包含4076个音节的印刷体藏文文本图像测试集上,本文方法的平均识别率达96.11%,结果表明以音节为单位的识别模型更有效。

未来工作中,将对已构建的标注数据集进行扩充,并引入自动文字检测技术,尝试端到端的藏文文本检测与识别。

猜你喜欢

印刷体藏文音节
敦煌本藏文算书九九表再探
r(re)音节单词的拼读规则
西夏文楷书和草书手写体探微
浅谈小学英语字母手写体与印刷体的教学
西藏大批珍贵藏文古籍实现“云阅读”
拼拼 读读 写写
黑水城和额济纳出土藏文文献简介
基于条件随机场的藏文人名识别研究
看音节说句子
高考的时候,把字写得像印刷体有用吗