一种光学文字序列识别方法

文档序号:9888732阅读:419来源:国知局
一种光学文字序列识别方法
【技术领域】
[0001] 本发明涉及图像文字识别领域,特别涉及一种光学文字序列识别方法。
【背景技术】
[0002] 随着社会的发展,产生了大量对古籍、文档、票据、名片等纸质媒体数字化的需求, 这里的数字化不仅仅限于使用扫描仪或者相机进行"照片化",更重要的是将这些纸质文件 转化成以可读、可编辑的文档来进行存储,实现这一过程需要对扫描出的图片进行图像文 字识别,而传统的图像文字识别为光学文字识别(0CR),光学文字识别在将待识别纸质文件 扫描成电子图像的基础上进行识别。但是考虑到扫描效果的好坏、纸质文件本身的品质(别 如印刷质量、字体清晰度,字体规范度等)、内容布局(文字的排列情况,比普通文本与表格 文本和票据)的差异,OCR的实际效果不总是让人满意。而针对不同的纸质文档的识别准确 率的要求有差异,比如票据的识别,对准确率的要求是非常高的,因为如果一个数字识别错 误就可能导致致命的后果,传统的OCR识别不能满足这样高精度的识别要求。
[0003] 常规的OCR方法包括了图片的切分,特征提取,单字符识别等处理过程,其中图片 的切分包含了大量的图像预处理过程,比如倾斜矫正,背景去噪,单字符的提取;这些处理 过程不仅繁琐耗时,而且可能使得图片损失很多可用信息;而且当待识别图片中包含多个 文字的字符串时,传统的OCR方法需要将原字符串切分成若干包含单个文字的小图片进行 分别识别,该方法主要存在两大问题:一、单字符图片的切分困难,特别是混合了左右偏旁 的汉子、字母、数字、符号,或者背景噪音、字符扭曲、粘合等情况下,切分更加困难。而一旦 切分出现了问题,就很难得到准确的识别结果。二、将字符串切分成包含单个字符的子图片 进行识别的分别识别方法,没有充分利用自然语言中字、词之间的依赖关系,虽然可以使用 额外的语言模型对识别结果进行优化补充,但是考虑到语言模型和识别器的构建过程是相 互独立的,这种方式的优化补充是局部有限的。
[0004] 面对巨大的识别需要急需一种能够快速高效的图像文字识别方法。

【发明内容】

[0005] 本发明的目的在于克服现有技术中所存在的上述不足,提供一种光学文字序列识 别方法。本发明应用了卷积神经网络(CNN)和递归神经网络(RNN)的技术,通过CNN对包含多 个字符的整个图片进行特征提取,然后将同样的特征送入RNN进行递归重复使用,以实现连 续预测多个字符的目的。本发明方法实现的光学文字序列识别,系统的克服了 OCR识别前先 要进行图片切分的弊端,极大的提高了图像文字的识别效率,又由于在模型训练和应用的 过程中RNN递归使用了上一轮的识别结果和输出数据,这样将字、词之间依赖关系的语言模 型也一并学习得到了,在提升字、词序列的识别准确率的同时进一步提高了图像文字的识 别效率。
[0006] 为了实现上述发明目的,本发明提供了以下技术方案:
[0007] -种光学文字序列识别方法,包含以下实现步骤:
[0008] (1)构建卷积神经网络和递归神经网络模型,其中所述递归神经网络各个时刻输 入信号包括:所述卷积神经网络提取的样本特征数据,上一时刻递归神经网络的输出数据 以及上一时刻递归神经网络识别出的字词转化成的向量数据;
[0009] (2)使用训练样本集来训练所述卷积神经网络和递归神经网络模型;
[0010] (3)将待识别图像文字序列输入训练好的所述卷积神经网络及递归神经网络中, 由所述卷积神经网络提取待识别图片的特征数据,输入到所述递归神经网络中,经过所述 递归神经网络的依次迭代,输出待识别图像文字序列的完整识别结果。
[0011] 具体的,本发明方法中所使用的递归神经网络向前算法的计算公式如下:
[0012]
[0013]
[0014]
[0015]
[0016] 其中I是输入向量的维度,V是向量化的字或者词的维度,Η是隐层的神经元个数,K 是输出层的神经元个数,X为卷积神经网络提取出来的特征数据,ν为RNN识别出的字或者词 经过词典映射表转化成的向量数据,《丨.为当前时刻递归神经网络中隐含层神经元的输入, 迖为当前时刻递归神经网络隐含层神经元的输出;《&,《111,《1^,为4,<\|^对应的权重 参数。为当前时刻递归神经网络输出层神经元的输入;Whk为输出层各神经元对应的权 重;Λ为当前时刻递归神经网络输出层神经元的输出,父为一个概率值,表示当前时刻对应 神经元输出值相对于输出层所有神经元输出值的加和的比例。
[0017] 从上述公式可以看出本发明方法中所使用的递归神经网络中隐含层神经元的输 入数据包括3个方面,CNN提取出来的训练样本特征,上一时刻递归神经网络隐含层的输出 数据,以及上一时刻递归神经网络预测结果(识别出来的字词)经过词典映射表进行向量化 的数据。因此本发明使用的递归神经网络在预测当前时刻的字(词)的时候,既依赖了图像 的特征,也依赖了上一时刻输出的特征(语言模型)。
[0018] 进一步的,本发明方法中,信号正向传递时用到的参数^认^^^^^都是跨时序共 享的,这样避免了模型复杂度的线性增长,导致可能的过拟合。
[0019] 进一步的,本发明采用上述向前算法在卷积神经网络和递归神经网络中来逐级传 输运算数据,在输出层获取到识别(预测)数据,当预测结果与训练样本的标注结果具有偏 差时,通过神经网络中经典的误差反向传播算法来调整神经网络中的各个权重。
[0020] 进一步的,在神经网络训练过程中,通过开发集来检验神经网络的训练结果,及时 调整神经网络的训练方向,防止过拟合情况的发生,在模型训练过程中,仅仅保留在开发集 上识别准确率最高的训练模型。
[0021] 进一步的,本光学文字序列识别方法的神经网络训练过程包含以下实现步骤:
[0022] (2-1)将人工标注的训练样本输入到卷积神经网络中;
[0023] (2-2)通过所述卷积网络对输入训练样本进行特征提取;
[0024] (2-3)将所述卷积神经网络提取出来的特征数据作为第一数据输入第一时刻递归 神经网络中;
[0025] (2-4)经过第一时刻递归神经网络的计算输出第一预测数据;根据第一预测数据 得到该时刻递归神经网络的字词识别结果,将该结果定义为:第一识别结果;
[0026] (2-5)并将第一识别结果转化成对应的向量数据;
[0027] (2-6)将第一数据,第一预测数据以及向量化的第一识别结果作为第二时刻递归 神经网络的输入数据,经过递归神经网络的计算输出第二预测数据,并得到由第二预测数 据对应的第二识别结果;
[0028] (2-7)并将第二识别结果转化为对应的向量数据;
[0029] (2-8)将第一数据,第二预测数据以及向量化的第二识别结果作为第三时刻递归 神经网络的输入数据;
[0030] 依次递归,直到达到设定的递归次数或者输出空值时,终止识别;将每个时刻RNN 预测出得字(或者词)依次记录下来就最终获得完整的字符串内容。
[0031] 具体的,所述步骤(2-5)和(2-7)中,通过词典映射表进行向量化,所述词典映射表 为一个二维矩阵,行数为词典的大小,列数(行向量的维度)根据词典的大小和数据的规模 来设定,词典映射表的目的为将字(或词)特征化,向量化,简单说来,词典映射表就是一个 二维矩阵,其中每一个行向量对应一个字或者一个词,而这种行向量与字词的对应关系是 在构建这个词典映射表时设置的。
[0032] 进一步的,在构建词典映射表的过程中,如果识别的单位是词,则可以先对自然语 言进行分词处理,比如将"这个东西真好"变成"这个东西真好"。
[0033]进一步的,在进行模型训练时,包含将训练样本图标进行归一化处理和人工标注
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1