满族是一个资源缺乏的语言,很少参与文本识别技术。因为字体的组合,普通文本识别之前实践需要分割识别,从而影响识别精度。在本文中,我们提出一个满族文字识别系统分为两部分:文字识别和文本检索。首先,深CNN模型用于文本识别,使用滑动窗口,而不是手动分割。其次,文本检索中发现相似图像和定位的位置识别文本数据库中;这个过程被详细描述。FAST-NU上我们进行了比较实验数据集使用不同数量的样本数据,以及比较最新的模型。实验结果显示,提出的深CNN模型的最优结果达到98.84%。
光学字符识别(OCR)是数字化的关键技术的许多现代人物,也是文字识别的主流技术。事实上,Tausheck 89年前获得了OCR技术专利。在1950年代和1960年代,研究OCR技术在世界各国开始增加。识别邮政编码的系统在日本当时发达的今天仍在使用。自1970年代以来,汉字识别经历了数十年的研究和发展。1984年,日本研究人员设计了一个设备在多个字体识别汉字的能力。识别率高达99.98%,以识别速度超过每秒100个字符。目前,汉字识别的研究方法和技术已经成熟,这已被应用于产品设计。
用少数民族如满族、锡伯族在中国,满族是口语和书面语言语音脚本。由于特异性满族字母表的字母连接和变形系统,完全不同于现代汉语写作规则更像是蒙古和中国古代。满族是读写从上到下,从左到右,也可以用拼音写汉字,分为单元音、双元音,辅音,和有向图,激进分子的长度对应于这些信。然而,这可以不同在不同的满族脚本。在满族的笔译和口译书籍,一些激进分子很难确定由于故障如连续写作,变形,曾,划痕,裂纹,使相应的文本,反过来,很难快速而准确的识别。这些错误是由保全措施的书扫描图像,而错误的错误率检测通过现有的满族在满族图像识别方法也大大增加其他原因。识别错误经常发生当满族源文本是手写的,所以使用手写的满族OCR仍不方便。
满族识别方法通常需要分割的满族为基本单位(例如,字母)第一,紧随其后的是识别(
本文提出了一种为满族文字识别方法和系统。字母的识别方法可以快速识别部分没有分词在文本图像。在此基础上识别组件,我们延长了文本检索系统完整的数据库找到类似的文字。系统识别的所有类似的字母依次通过滑动窗口图像的满族文字。的部分识别字母和滑动窗口的部分调整图像比较根据字母的标准图片。信认可后,可以快速找到数据库中相关的满族字符。系统可以输出相应的字母和他们的数据库,以及定位的标准图像数据库中的所有字母标记为相关的字母。提出了滑动窗口来减少计算复杂度和提高识别精度;它可以索引信的一部分地区具有较高的准确性,这地方识别确保字母识别的可靠性,降低错误检测的概率。
创建一个功能齐全的OCR系统,有必要理解脚本语言的背景及其方法。以下部分描述的详细学习模型,各种卷积网络(CNN)模型用于图像分类。字形结构和满族也详细分析了预处理方法,根据最新的方法识别满洲的脚本。
机器学习的一个分支,深度学习在图像分类方面取得了良好的效果。涌现出各种CNN模型显示承诺能力开采浅层和深层功能,不断提高了分类精度。这些模型有广泛的应用,如脸(
解释文本处理过程在文字识别,首先简要概述的结构和满族的字母表。根据中华人民共和国的国家标准,信息技术普遍Multi-Eight编码字符集Sibe,满族字符类型,相同的字母在满族一般有四个独立的不同形式,初始,中间,和最终的形状。一个满族字是由一个或多个字母组成的。
满族字符识别的研究仍处于起步阶段,和大多数的研究都是基于字符分割。根据文本的结构特点,满族语言分为单个字符投影方法或stroke-by-stroke增长的方法。反向传播神经网络,统计模式识别和支持向量机(SVM)方法(
这个角色重组技术,识别后,也需要解决。例如,易等人建立了一个离线手写满族文字识别系统在2006年(
这些文章在满族基于字符分割和字符识别都是使用手工设计提取浅特性。然而,有效的光学字符识别方法是基于准确的字符分割技术(
在我们目前的工作中,我们使用深CNN模型识别的文本,然后构建一个满族识别系统。我深CNN卷积模型使用四层不同的图像特征。在满族识别系统,滑动窗口方法用于识别数据库中相同的字符。下面讨论这两种方法。
本文构建一个CNN的识别和分类满族文字没有细分(
CNN满族OCR的框架。
CNN模型构建本文包括总共九层:四个卷积层,两层最大池,和分类层,它由一个平层,一个完全连接层和输出层(
第二层是另一个卷积层,第一层一样的设置。使用激活函数是ReLU。第三层是池层,起的作用二次抽样和当地的平均。每个神经元的感受野大小设置为2×2,与一个可教育的偏见,一个可训练的系数,乙状结肠激活函数。第四和第五层额外的回旋的层,第一层一样的设置。使用激活函数是ReLU。第六层是另一个池层,第三层一样的设置。
第七层是平层。由于输入图像可能是二维的,平层是用来降低多维矩阵的维数输出的上一层获取一维特征向量。第八层是完全连接层,其中包含256个神经元,每个神经元在这一层是完全连接到上一层。第九和最后一层一层的输出,输出一个一维向量的长度671年将softmax激活函数。因为文字图像的大小在多级满族数据集任意长度,原始图像的大小必须按比例缩小的一个固定大小的28日×28。
拟议的满族识别系统分为十个单元,和流程见图
这封信image-reading单元读取每个字母的标准形象
满族图像采集单元收集满族图像并创建图像的关键
图像预处理单元过滤器的关键图像,提取显著区域后过滤,并执行边缘检测凸区域获得的图像识别
参数初始化设置变量的初始值<我talic> 我和<我talic> j
滑动图像提取搜索使用滑动窗口的图像识别方法
标准线段提取单元的关键图像过滤器<我talic> jth信标准图像
轮廓线提取单元尺度<我talic> 我th对比图片
连接强度的输出单元之间的连接强度计算向量的轮廓线<我talic> 我图像和th的对比<我talic> jth信标准图像,然后根据价值的跳跃<我talic> 我
滑动窗口单位增加的价值<我talic> 我,<我talic> j,<我talic> W然后根据价值的跳跃<我talic> j
结果输出单元呈现的字符和数字字母对应的所有字母标准图像标记为数据库中的相关信件
满族识别系统流程框架。
我们建议的满族识别系统的第一步是阅读每个字母的标准形象。目前,满语字母的标准字母图像是一个图像预存储在数据库中,它包含114中国字母的图片;数据库还存储的字符和数字字母与字母对应的标准图像,以及每个满族的组件的数量组成字母的形象。相应的输出可以基于多个满族中一个或多个字母字符,并且每个字母的标准图像包含不同的符号。
第二步是收集满族图片和获得图像的关键。满族图像获得通过使用行扫描摄影机,手写输入,或与一个扫描器扫描满族的书。
第三步是过滤的关键图像,过滤后,提取显著区域和执行边缘检测得到图像识别。过滤方法可能的意思是,中位数,或高斯滤波;方法提取显著区域可以使用交流(
第四步是设置变量的初始值<我talic> 我1,值的范围<我talic> 我(1,<我talic> N),<我talic> 我是一个自然数,<我talic> N的比值大小的图像识别滑动窗口的大小。然后,有必要设置初始值的变量<我talic> j1,值的范围<我talic> j(1,<我talic> 米),<我talic> 米信的总数标准图像和滑动窗口的宽度是多少<我talic> W。
第五步是搜索使用滑动窗口的图像识别方法。最长的线段是搜索通过霍夫变换的滑动窗口<我talic> 我th线段,<我talic> 我th线段和纵轴(<我talic> y设在)图像的矩阵计算。在顺时针方向的夹角<我talic> 我th角。当的长度<我talic> 我th线段是大于或等于<我talic> K,滑动窗口中的图像是逆时针的旋转<我talic> 我th角度获取图像在滑动窗口<我talic> 我(当th对比图像<我talic> 我小于<我talic> K,这意味着没有满族字母识别领域的滑动窗口)<我talic> K= 0.2∗<我talic> W。
滑动窗口方法搜索图像识别通过一个窗口,幻灯片,每张幻灯片的步骤数量是滑动窗口的大小;滑动窗口的大小之间(0.01,1)倍图像的识别;的高度和宽度(大小)的滑动窗口设置为<我talic>
W∗<我talic>
W和的值<我talic>
W(0.01,1)倍的宽度图像识别。这可以调整根据完整的图像识别的字符数,每个幻灯片的距离是滑动窗口的宽度。每次连续刷卡在图像矩阵,它会自动跳到下一行根据滑动窗口的高度(水平扫描图像的像素区域在图像矩阵,并没有选择滑动窗口)。注意,高度和宽度也称为长度和宽度,以像素为单位。图
滑动窗口的原理图。
第六步是过滤的关键形象<我talic> jth信标准形象。过滤后,提取显著区域,边缘检测凸区域得到执行<我talic> jth信标准图像识别和搜索<我talic> j霍夫变换th信。图像中的线段最长需要识别被认为是标准的线段。
第七步是规模<我talic> 我th对比图像根据标准线段和之间的比率<我talic> 我th线段提取的矢量等高线<我talic> 我图像和th的对比<我talic> jth信标准形象。当<我talic> 我th对比图像缩放根据标准线段和之间的比率<我talic> 我th线段的边缘<我talic> 我th对比图像叶子至少8空白来获得一个80×80像素大小的形象。向量的轮廓线<我talic> 我th比较图像可以在以下方式:提取<我talic> 我th比较形象,从终点的开始<我talic> 我th线段的最近距离纵轴,和计算的曲率值<我talic> 我th线段在每个边缘点;然后,计算曲率值的平均值的曲率边缘点的值大于平均值作为角点,形成一个大曲率点集;连接,反过来,每个角点在大曲率和曲率值点集大于平均值。更多细节见附件。
第八步是计算向量的轮廓线之间的连接强度<我talic> 我图像和th比较<我talic> jth信标准形象。这样做,首先增加的价值<我talic> j由1;时的值<我talic> j大于<我talic> 米,去第9步,当连接强度大于强度阈值,标志着<我talic> jth信标准形象相关的信,到第9步,当<我talic> j值是小于或等于<我talic> 米,转到步骤6。强度阈值是0.5 PNum -0.8倍或者0.5的-0.8倍数量的角点的轮廓线的矢量等高线<我talic> jth信标准形象。详细信息,请参阅附录B。
第九步是增加的价值<我talic> 我1,设置的值<我talic> j1、滑动的滑动窗口的距离<我talic> W。时的值<我talic> 我小于或等于什么<我talic> N,转到步骤5。时的值<我talic> 我大于<我talic> N,到第十步。
第十一步是输出所有的字母标准图像标记为相关的字母在数据库中对应字符和数字的字母。输出字符和数字是用来输出满族字符,包括超过一个字符字母对应标准图像标记为一个相关的数据库中的字母的一部分。
我们测试了该系统实验。首先,实验验证了CNN的识别效果和深度CNN在不同类型的不分段满族字数据。不分段满族字数据集包含671个类别;每个类别都有1000个样本,所以总大小是671000。在培训过程中,1000样本图像被打乱,然后900图像被随机选择培训,其余是用于测试。CNN模型和深CNN模型被用于100,200,300,400,500,600,671类别。当使用CNN认识到满族文字时,原始图像的归一化是统一的大小28×28。我们测试了三个网络卷积核的5×5,3×3,和2×2,3×3的卷积核取得最好的结果。卷积因此内核的两个网络都设置为3×3的滑动窗口大小最大池层是设置为2×2,过滤器的数量设置为32,辍学比例设置为0.25,和卷积有4层。实验结果如表所示
CNN和深CNN的实验结果不同类型的数据集。
| 数量的类别 | 数据大小 | 深CNN识别率(%) | CNN识别率(%) |
|---|---|---|---|
| One hundred. | 100000年 | 99.85 | 99.09 |
| 200年 | 200000年 | 99.88 | 99.27 |
| 300年 | 300000年 | 99.24 | 98.24 |
| 400年 | 400000年 | 99.35 | 98.44 |
| 500年 | 500000年 | 99.13 | 98.31 |
| 600年 | 600000年 | 98.98 | 98.25 |
| 671年 | 671000年 | 98.84 | 97.61 |
在相同的参数下,不同类别的识别和分类的不分段满族字,深CNN的识别率为0.76%,0.61%,1.00%,0.89%,0.82%,0.73%,1.23%为每个类别数高于传统CNN。这表明提高了CNN的空间金字塔池层,它有一定的抑制性影响图像归一化造成的影响。同时,可以看出,对于671类型的数据,CNN可以获得较高的识别率。
我们收集论文满族文字识别和总结表的分类精度
与现有的满族OCR技术进行比较。
| 参考 | 精度(%) |
|---|---|
| 李等人。 |
97.68 |
| 郑et al。 |
95年 |
| 徐et al。 |
87.4 |
| 本文 | 98.84 |
接下来,我们考虑不同数量的卷积的影响层识别和分类。卷积层的数量设置为2,4,6对CNN和深CNN。卷积核两个网络都设置为3×3的滑动窗口大小最大池层是设置为2×2,过滤器的数量设置为32,辍学比例设置为0.25。实验结果如表所示
实验结果的不同数量的卷积层。
| 卷积的层 | 深CNN识别率(%) | CNN识别率(%) |
|---|---|---|
| 2 | 98.04 | 97.54 |
| 4 | 98.84 | 97.61 |
| 6 | 98.91 | 97.66 |
从表可以看出
实验结果表明,在相同的参数下,识别率的CNN模型设计本文的识别和分类不同类别的不分段满族文字高于传统的CNN。与其他论文中提出的方法相比,我们提出的方法有很大的优势。当设置不同数量的卷积层,深CNN的识别率高于传统的CNN,和深CNN模型提出了避免了特征表达式问题引起的图像正常化。这是满族文字的识别实验测试不同长度和获得更高的识别精度比传统的CNN模型。
传统的有线电视新闻网需要输入的图像大小一致。满族是一个语音文本,它的字长是不固定的。因此需要预处理,以确保统一的大小识别和分类之前,等预处理降低了识别率。为了减少图像归一化预处理对识别率的影响,本文改进了传统的CNN和构造一个新的nonsegmented满族字识别网络模型:CNN。我们还提出了一个满族识别系统,定位的位置识别文本数据库中。模型解决了图像归一化问题,实现深度特征的提取不分段的满族文字任何大小的图像,识别和分类不同类型的不分段满族字数据。使用深CNN识别和分类不分段满族词汇类别的100年,200年,300年,400年,500年,600年和671年,识别率分别为99.85%,99.88%,99.24%,99.35%,99.13%,98.98%,和98.84%,分别。实验结果表明,深CNN减少造成的影响获得的图像归一化预处理和识别精度高于传统的CNN模型。
本节简要介绍了向量的轮廓提取方法<我talic>
j在第七步th信标准形象。从标准线段的结束最近的距离纵轴,每个边缘点的曲率值计算标准线段。所有曲率值的平均值计算,和所有的边缘点的曲率值大于平均值的边缘。角点构成一个大曲率点集。每一个角落的大曲率点集的曲率值是大于平均值依次连接,根据中概述的步骤如下:
让角点的坐标与横坐标的最小值(<我talic> x设在)的大曲率点集(<我talic> X分钟,<我talic> Y分钟),角点的坐标的最大价值<我talic> x在大曲率点设在(<我talic> X马克斯,<我talic> Ymax)。设置间距由多个列的像素<我talic> y设在横跨像素,在10 - 100之间的跨度是一个整数。设置初始值的变量<我talic> h为0,并设置初始值的变量<我talic> r1,<我talic> h和<我talic> r是自然的数字。
排序的角落点大曲率点集从小型到大型的价值<我talic> x设在,除了角落点最大的和最小的<我talic> x设在值。有一个连接马克Linkmark和马克ArrayMark数组;Linkmark和ArrayMark都设置为1,连接马克Linkmark拐角点的最小<我talic> x设在值设置为2(也就是说,连接的第一个角落点集的大曲率点Linkmark = 2);和连接的马克Linkmark最大的转折点<我talic> x设在值设置为3(也就是说,连接马克Linkmark = 3的最后一个角落的大曲率点集)。
让的值范围<我talic> x设在图像的矩阵<我talic> X分钟+ (<我talic> h−1)∗跨度<我talic> X分钟+<我talic> h∗跨越的连接时间间隔<我talic> rth层,让值的范围<我talic> x设在是<我talic> X分钟的间隔<我talic> X分钟+<我talic> h∗跨度,<我talic> X分钟+ (<我talic> h+ 1)∗跨度的时间间隔是连接(<我talic> r+ 1)th层。
如果有一个角落点Linkmark = 2的连接时间间隔<我talic> rth层(即第一个拐角点大曲率点集,最左边的图像中的边界点),然后使用矢量线改变Linkmark = 2。连接角点2和所有的角点的Linkmark = 1 (<我talic> r+ 1)th层连接,连接所有的角点<我talic> rth连接间隔和(<我talic> r+ 1)th层连接。设置连接马克Linkmark为0,表示和操作步骤5(只是执行上面的步骤在第一个拐角点);否则,如果没有角点与Linkmark = 2<我talic> rth层连接部分,然后直接进入下一个操作。
如果有一个角落Linkmark = 3点被连接的时间间隔<我talic> r+ 1层(即最后一个拐角点大曲率点集,最右边的图像边界点),然后矢量线的连接时间间隔<我talic> rth层和所有的角落点连接的马克Linkmark = 0点连接到角落Linkmark = 3;角点的设置连接马克Linkmark Linkmark = 3 - 0(以上步骤只有在最后一个角落点执行),然后转到步骤10(也就是说,连接过程结束)。如果没有拐角点与区间Linkmark = 3是连在一起的<我talic> r+ 1层,然后判断连接马克Linkmark所有角落点在大曲率的点集= 0(也就是说,连接过程结束),如果是这样的话,到第十步;如果没有,去第六步。
输入角落Linkmark = 0的点连接的时间间隔<我talic> rth层数组作为连接数组;输入的角落点Linkmark = 1的连接时间间隔<我talic> r+ 1层到另一个数组的数组连接;角点在连接连接数组和数组排序根据从小型到大型的纵坐标值。
带角点之间最大的纵坐标值数组的角落点ArrayMark = 1连接数组中标记为第一出发点。连接第一个开始点和第一个与一个向量终点线,并设置数组的马克ArrayMark第一个起点,第一个终点为0(这一步是设置最高的角落<我talic> y设在值按顺序,见上图)。
设置最小的拐角点纵坐标值在数组的角落点马克ArrayMark = 1连接数组的第二个起点,和马克数组的角点与ArrayMark = 1。最小的拐角点纵坐标值用作第二个终点。第二个开始点和第二个结束点由一个向量相连,数组的第二个起点和第二终点设置为0(这一步连接角点最低的<我talic> y设在值)。
当数组的马克ArrayMark所有角点的连接数组或数组连接= 0(也就是说,在任何范围内所有角点之间的距离两个坐标轴)连接,增加了变量<我talic> h和<我talic> r1、设置数组的马克ArrayMark数组中所有角点被连接到1,并设置Linkmark数组中所有角点的连接和连接数组为0,然后转到步骤3(即。,连下一组坐标轴间距范围);否则,进入步骤6(即。,continue to connect the corner points in the connected array and the array to be connected).
输出向量轮廓点连接由所有的角落的矢量线(连接顶点形成信的框架)。
本节简要介绍了计算方法之间的连接强度矢量的轮廓线<我talic>
我图像和th的对比<我talic>
j在第八步th信标准形象。
让的向量轮廓线<我talic>
我th对比图像是<我talic>
P和向量的轮廓线<我talic>
jth信标准图像<我talic>
问;重叠<我talic>
P和<我talic>
问的重心<我talic>
P和<我talic>
问为中心。其中,<我nline-formula>
点连接最近的角落<我talic>
P和<我talic>
问矢量线序列,连接边的集合是一组连接的边缘<我nline-formula>
计算距离的端点<我talic> p足球俱乐部来<我talic> p1所有连接边的连接边集(计算所有角点的距离<我talic> p1,<我talic> p2、…<我talic> pPNum来<我talic> p1),使用距离计算距离作为第一组。计算距离的端点<我talic> 问足球俱乐部来<我talic> 问1连接的所有连接的边边集(计算所有角点的距离<我talic> 问1,<我talic> 问2、…<我talic> 问PNum来<我talic> p1),使用距离计算距离第二组。计算每个距离元素之间的区别在第一距离每个距离元素集和第二距离设置在序列;计数所有的差异价值观是积极的和消极的数字的数量;当正数的个数大于负数的数量,进入步骤4;否则,转到步骤5;元素的距离是每个距离值的设置。
连接强度计算<我talic>
年代连接的边集<我talic>
V,进入步骤6,<我nline-formula>
在哪里<我nline-formula>
连接强度计算<我talic>
年代连接的边集<我talic>
V,进入步骤6,<我nline-formula>
在哪里<我nline-formula>
输出连接强度<我talic> 年代。
使用的数据来支持本研究的结果包括在本文中。
作者宣称没有利益冲突有关的出版。
这项工作得到了广东省哲学社会科学规划项目(GD19CYY13)。