CN110598703B - 一种基于深度神经网络的ocr识别方法及装置 - Google Patents
一种基于深度神经网络的ocr识别方法及装置 Download PDFInfo
- Publication number
- CN110598703B CN110598703B CN201910904514.2A CN201910904514A CN110598703B CN 110598703 B CN110598703 B CN 110598703B CN 201910904514 A CN201910904514 A CN 201910904514A CN 110598703 B CN110598703 B CN 110598703B
- Authority
- CN
- China
- Prior art keywords
- characters
- character
- damaged
- neural network
- shielded
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/35—Categorising the entire scene, e.g. birthday party or wedding scene
- G06V20/38—Outdoor scenes
- G06V20/39—Urban scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/62—Text, e.g. of license plates, overlay texts or captions on TV images
- G06V20/63—Scene text, e.g. street names
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
Abstract
本发明提供一种基于深度神经网络的OCR识别方法及装置,所述方法包括:将图片输入区域生产网络,生成不同的目标候选框;通过角度参数Θ随机调整部分目标候选框;利用ROIAlign表示全部所述目标候选框的特征;使用Fast R‑CNN对所述目标候选框的候选区进行分类,通过字符分割网络Mask branch对待识别的所述候选区进行字符分割;基于CNN网络识别分割后的所述字符;将被遮挡或损坏的字符逐一输入Bi‑RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果;将分割后的全部字符按序整体输出及显示。本发明的方案,在面对复杂的实际应用情况时,具有强鲁棒性,对于被遮挡或损坏导致识别不出的字符进行预测,显示出准确率高的完整的文本信息,提高了OCR检测的性能及实用性。
Description
技术领域
本发明涉及计算机图像处理领域,尤其涉及一种基于深度神经网络的OCR识别方法及装置,特别涉及一种基于深度神经网络的对被遮挡的图像进行OCR识别的方法及装置。
背景技术
目前,OCR(Optical Character Recognition,光学字符识别)技术迅速发展,通过扫描等光学输入方式将各种票据、报刊、书籍、文稿及其它印刷品的文字转化为图像信息,再利用文字识别技术将图像信息转化为可以使用的计算机输入信息。上述技术可应用于银行票据、大量文字资料、档案卷宗、文案的录入和处理。随着OCR技术的成熟,已经可以将其运用到背景较为复杂的街道标识识别中,如图1所示。
但是,如果广告牌被遮挡一部分,如图2所示,现有的OCR技术无法识别被遮挡的部分,而只能识别图中所显示的部分。即现有技术中的OCR技术无法识别例如广告牌部分破损或遮挡的字符。为了提高OCR技术在实际应用中面对的各种不同情况,有必要对现有的OCR识别方法进行改进,使其具有强鲁棒性,以适应多种不同的实际应用情况。
发明内容
为解决上述技术问题,本发明提出了一种基于深度神经网络的OCR识别方法及装置,用以解决现有技术中不能对部分破损或遮挡的字符进行识别的技术问题。
根据本发明的第一方面,提供一种基于深度神经网络的OCR识别方法,包括:
步骤S301:将图片输入区域生产网络(RPN),生成不同的目标候选框;通过角度参数Θ随机调整部分目标候选框,使得调整后的所述目标候选框发生倾斜;其中,参数Θ为所述目标候选框底边与水平线的夹角;
步骤S302:利用ROIAlign表示全部所述目标候选框的特征;
步骤S303:使用快速区域卷积神经网络(Fast R-CNN)对所述目标候选框的候选区进行分类,通过字符分割网络掩模分支(Mask branch)对待识别的所述候选区进行字符分割;
步骤S304:基于CNN网络识别分割后的所述字符;
步骤S305:判断所述分割后的所述字符是否存在被遮挡或损坏的字符,若是,进入步骤S306,若否,进入步骤S307;
步骤S306:将所述被遮挡或损坏的字符逐一输入Bi-RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果;
步骤S307:将分割后的全部字符按序整体输出及显示。
进一步地,角度参数Θ设置为5°,10°,15°,20°,30°,角度的设置可以丰富目标候选框的类型。
进一步地,所述步骤S305:判断所述分割后的所述字符是否存在被遮挡或损坏的字符,若是,进入步骤S306,若否,进入步骤S307,包括:
使用两个相互结合的标准判断分割后的字符是否存在被遮挡或损坏的字符:
标准一:训练CNN模型,训练该CNN模型的训练数据为10个数字、包含大小写的52个字母、以及被遮挡的样本数据,训练模型时将所述被遮挡的样本数据归为一个类别;使用训练好的CNN模型对输入的所述分割后的所述字符进行判断,获得判断结果r1;
标准二:根据所述分割后的所述字符的像素值的差异进行判断;对所述图片共分割出n个字符,分割后每一个字符bbox部分的像素平均值依次为Q1,Q2,…Qn,bbox是一个四维向量(x,y,w,h),其中x,y表示边框的左顶点坐标,w,h表示边框的宽和长;定义被遮挡的字符候选为Qi=max{Q1,Q2,…Qn}和Qj=min{Q1,Q2,…Qn},所述判断r1表明第x个分割部分为遮挡部分或损坏部分,当x等于i或j时,则认为第x个分割部分对应的字符被遮挡或损坏;当x不等于i或j时,则通过第x个分割部分的预测概率进行判断,若预测概率P(x)大于0.5,则认为该第x个分割部分对应的字符被遮挡或损坏;否则认为该第x个分割部分对应的字符没有被遮挡或损坏;
其中,Z表示CNN网络的全连接层的输出,是一个n维向量,n表示的是网络区分的n个类别,Z={Z1,Z2,…,Zn}。
进一步地,所述步骤S306:将所述被遮挡或损坏的字符逐一输入Bi-RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果,包括:
对于所述被遮挡或损坏的字符中的每一个,使用由两个单向RNN结合的双向RNN神经网络(Bi-RNN);
在每一时刻t,输入会同时提供给两个方向相反的RNN,输出是由这两个方向相反的RNN共同决定的;
所述双向RNN神经网络(Bi-RNN)的预期层要保存A和A'两个值,其中的A参与正向计算,A'参与反向计算:
其中,
Ai=f(WAi-1+Uxi)
A′i=f(W′A′i+1+Uxi)
oi=g(VAi+VA′i)
其中,W、U、V、W′都是共享权重;基于正向计算和反向计算,预测出所述被遮挡或损坏的字符,最终的输出取决于正向计算和反向计算的结果加和。
根据本发明第二方面,提供一种基于深度神经网络的OCR识别装置,包括:
目标候选框生成模块:用于将图片输入区域生产网络(RPN),生成不同的目标候选框;通过角度参数Θ随机调整部分目标候选框,使得调整后的所述目标候选框发生倾斜;其中,参数Θ为所述目标候选框底边与水平线的夹角;
特征提取模块:用于利用ROIAlign表示全部所述目标候选框的特征;
字符分割模块:用于使用快速区域卷积神经网络(Fast R-CNN)对所述目标候选框的候选区进行分类,通过字符分割网络掩模分支(Mask branch)对待识别的所述候选区进行字符分割;
字符识别模块:用于基于CNN网络识别分割后的所述字符;
判断模块:用于判断所述分割后的所述字符是否存在被遮挡或损坏的字符;
预测模块:用于将所述被遮挡或损坏的字符逐一输入Bi-RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果;
输出及显示模块:用于将分割后的全部字符按序整体输出及显示。
进一步地,角度参数Θ设置为5°,10°,15°,20°,30°,角度的设置可以丰富目标候选框的类型。
进一步地,所述判断模块使用两个相互结合的标准判断分割后的字符是否存在被遮挡或损坏的字符,所述判断模块包括:
标准一子模块:用于训练CNN模型,训练该CNN模型的训练数据为10个数字、包含大小写的52个字母、以及被遮挡的样本数据,训练模型时将所述被遮挡的样本数据归为一个类别;使用训练好的CNN模型对输入的所述分割后的所述字符进行判断,获得判断结果r1;
标准二子模块:用于根据所述分割后的所述字符的像素值的差异进行判断;对所述图片共分割出n个字符,分割后每一个字符bbox部分的像素平均值依次为Q1,Q2,…Qn,bbox是一个四维向量(x,y,w,h),其中x,y表示边框的左顶点坐标,w,h表示边框的宽和长;定义被遮挡的字符候选为Qi=max{Q1,Q2,…Qn}和Qj=min{Q1,Q2,…Qn},所述判断r1表明第x个分割部分为遮挡部分或损坏部分,当x等于i或j时,则认为第x个分割部分对应的字符被遮挡或损坏;当x不等于i或j时,则通过第x个分割部分的预测概率进行判断,若预测概率P(x)大于0.5,则认为该第x个分割部分对应的字符被遮挡或损坏;否则认为该第x个分割部分对应的字符没有被遮挡或损坏;
其中,Z表示CNN网络的全连接层的输出,是一个n维向量,n表示的是网络区分的n个类别,Z={Z1,Z2,…,Zn}。
进一步地,所述预测模块包括:
构建子模块:用于对于所述被遮挡或损坏的字符中的每一个,使用由两个单向RNN结合的双向RNN神经网络(Bi-RNN);
输入输出子模块:用于在每一时刻t,输入会同时提供给两个方向相反的RNN,输出是由这两个方向相反的RNN共同决定的;
计算子模块:用于由所述双向RNN神经网络(Bi-RNN)的预期层要保存A和A'两个值,其中的A参与正向计算,A'参与反向计算:
其中,
Ai=f(WAi-1+Uxi)
A′i=f(W′A′i+1+Uxi)
oi=g(VAi+VA′i)
其中,W、U、V、W′都是共享权重;基于正向计算和反向计算,预测出所述被遮挡或损坏的字符,最终的输出取决于正向计算和反向计算的结果加和。
根据本发明第三方面,提供一种基于深度神经网络的OCR识别系统,包括:
处理器,用于执行多条指令;
存储器,用于存储多条指令;
其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行如前所述的基于深度神经网络的OCR识别方法。
根据本发明第四方面,提供一种计算机可读存储介质,所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行如前所述的基于深度神经网络的OCR识别。
根据本发明的上述方案,能够对字符被遮挡或被损坏的图像进行OCR识别,识别结果准确性高,具有强鲁棒性,能够适应多种不同的实际应用情况,并能降低成本。本发明利用将Fast R-CNN网络与Bi-RNN神经网络相结合的方式,在面对复杂的实际应用情况时,对于被遮挡或损坏导致识别不出的字符进行预测,显示出准确率高的完整的文本信息,提高了OCR检测的性能及实用性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,并可依照说明书的内容予以实施,以下以本发明的较佳实施例并配合附图详细说明如后。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明提供如下附图进行说明。在附图中:
图1为现有技术中利用OCR技术识别的广告牌;
图2为现有技术中存在遮挡的广告牌;
图3示出了根据本发明的基于深度神经网络的OCR识别方法流程图;
图4示出了本发明的基于深度神经网络的OCR识别方法的数据流向图;
图5示出了本发明的本发明的区域生产网络RPN结构图;
图6示出了本发明的ROIAlign的原理图;
图7示出了本发明的本发明的快速区域卷积神经网络(Fast R-CNN)的计算流程图;
图8示出了本发明一个实施方式的双向RNN网络(Bi-RNN)结构图;
图9为本发明一个实施方式的基于深度神经网络的OCR识别装置的组成框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
以下结合图3-4说明本发明的基于深度神经网络的OCR识别方法。图3示出了根据本发明的基于深度神经网络的OCR识别方法流程图;图4示出了本发明的基于深度神经网络的OCR识别方法的数据流向图。如图3所示,所述方法包括以下步骤:
步骤S301:将图片输入区域生产网络(RPN),生成不同的目标候选框;通过角度参数Θ随机调整部分目标候选框,使得调整后的所述目标候选框发生倾斜;其中,参数Θ为所述目标候选框底边与水平线的夹角;
步骤S302:利用ROIAlign表示全部所述目标候选框的特征;
步骤S303:使用快速区域卷积神经网络(Fast R-CNN)对所述目标候选框的候选区进行分类,通过字符分割网络掩模分支(Mask branch)对待识别的所述候选区进行字符分割;
步骤S304:基于CNN网络识别分割后的所述字符;
步骤S305:判断所述分割后的所述字符是否存在被遮挡或损坏的字符,若是,进入步骤S306,若否,进入步骤S307;
步骤S306:将所述被遮挡或损坏的字符逐一输入Bi-RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果;
步骤S307:将分割后的全部字符按序整体输出。
所述步骤S301:将图片输入区域生产网络(RPN),生成不同的目标候选框;通过角度参数Θ随机调整部分目标候选框,使得调整后的所述目标候选框发生倾斜;其中,参数Θ为所述目标候选框底边与水平线的夹角,包括:
如图4所示,将图片输入区域生产网络(RPN),生成多个不同的目标候选框,角度参数Θ设置为5°,10°,15°,20°,30°,角度的设置可以丰富目标候选框的类型。
所述区域生产网络RPN如图5所示,图5示出了本发明的区域生产网络RPN结构图。
图片通过共享卷积层得到公共特征图,用3*3滑动窗对公共特征图进行一次卷积运算,得到通道数为256的特征图,所述特征图的尺寸为H*W,其中H表示所述特征图的宽,W表示所述特征图的长,所述特征图可以看做是H*W个向量,每个向量为256维,再经过两次全连接操作,每个向量可以得到区域得分和区域建议。区域得分包括两个分数,分别是图片的前景概率和背景概率;区域建议为四个坐标,用来确定目标候选框的位置。
所述步骤S302:利用ROIAlign表示全部所述目标候选框的特征,包括:
所述ROIAlign是对ROI pooling的改进,用于解决ROI pooling操作中两次量化造成的区域不匹配的问题。
图6示出了本发明的ROIAlign的原理图。通过如下方式实现表示全部所述目标候选框的特征:即取消量化操作,使用双线性内插的方法获得坐标为浮点数的像素点上的图像数值,从而目标候选框的特征提取过程转化为一个连续的操作。
所述操作具体为:遍历每一个目标候选区域,保持浮点数边界不做量化;将所述目标候选区域分割成k*k个单元,每个单元的边界也不做量化;取采样点为4,在每个单元中计算固定的四个采样点的坐标位置,所述每个单元中的采样点为将单元平均分成2*2的小方格,每个小方格的中心为采样点。采样点的坐标位置为所要计算的坐标位置。用双线性内插的方法计算出这四个位置的值,然后进行最大池化操作。通过卷积神经网络(CNN)提取全部目标候选框的特征。
所述步骤S303:使用快速区域卷积神经网络(Fast R-CNN)对所述目标候选框的候选区进行分类,通过字符分割网络掩模分支(Mask branch)对待识别的所述候选区进行字符分割,包括:
图7示出了本发明的快速区域卷积神经网络(Fast R-CNN)的计算流程,快速区域卷积神经网络的输入为原始图片和目标候选框,输出是分类类别和bbox回归值。对于原始图片中的目标候选框区域,将其映射到卷积特征的对应区域,所述对应区域即图7中的RoIprojection,然后输入到感兴趣区域池化层(RoI pooling layer),可以得到一个固定大小的特征图。将这个特征图经过2个全连接层以后得到RoI特征,然后将所述RoI特征经过全连接层,使用softmax得到分类,使用回归得到边框回归。
将全部目标候选框输入Fast R-CNN进行候选区分类,得到全连接加softmax分类器(FC+softmax classifier)及全连接加边界框回归器(FC+bbox regessor),所述全连接加softmax分类器用于判断物体的类别,所述全连接加边界框回归器用于输出bbox在图像中的位置。
所述步骤S305:判断所述分割后的所述字符是否存在被遮挡或损坏的字符,若是,进入步骤S306,若否,进入步骤S307,包括:
本实施例使用两个相互结合的判断分割后的字符是否存在被遮挡或损坏的字符的标准:
标准一:训练CNN模型,训练该CNN模型的训练数据为10个数字、包含大小写的52个字母、以及被遮挡的样本数据,训练模型时将所述被遮挡的样本数据归为一个类别。使用训练好的CNN模型对输入的所述分割后的所述字符进行判断,获得判断结果r1。
本实施例中,所述判断结果r1可以是数字、字母或遮挡物,r1的形式可以为集合{0,1,…9,a,b,…z,A,B,…,Z,遮挡物}中的一个。
标准二:根据所述分割后的所述字符的像素值的差异进行判断。例如所述图片共分割了n个字符,分割后每一个字符bbox部分的像素平均值依次为Q1,Q2,…Qn,bbox是一个四维向量(x,y,w,h),其中x,y表示边框的左顶点坐标,w,h表示边框的宽和长。定义被遮挡的字符候选为Qi=max{Q1,Q2,…Qn}和Qj=min{Q1,Q2,…Qn},所述判断r1表明第x个分割部分为遮挡部分或损坏部分,当x等于i或j时,则认为第x个分割部分对应的字符被遮挡或损坏。当x不等于i或j时,则通过第x个分割部分的预测概率进行判断,若预测概率P(x)大于0.5,则认为该第x个分割部分对应的字符被遮挡或损坏;否则认为该第x个分割部分对应的字符没有被遮挡或损坏。
其中,Z表示CNN网络的全连接层的输出是一个n维向量,n表示的是网络区分的n个类别,Z={Z1,Z2,…,Zn}。
所述步骤S306:将所述被遮挡或损坏的字符逐一输入Bi-RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果,包括:
对于所述被遮挡或损坏的字符中的每一个,使用由两个单向RNN结合生成如图8所示的双向RNN网络(Bi-RNN)。
在每一时刻t,输入会同时提供给两个方向相反的RNN,输出是由这两个方向相反的RNN共同决定。所述输入是一个用64维的向量表示的预测的单词中的字母或数字,每个向量中只有一个1,其余均是0。例如,字母a={1,0,0,…,0},字母b={0,1,0,0,…,0}。
所述双向RNN神经网络(Bi-RNN)的预期层要保存A和A'两个值,其中的A参与正向计算,A'参与反向计算。
其中,
Ai=f(WAi-1+Uxi)
A′i=f(W′A′i+1+Uxi)
oi=g(VAi+VA′i)
其中,W、U、V、W′都是共享权重。基于正向计算和反射计算,预测出所述被遮挡或损坏的字符,最终的输出取决于正向计算和反向计算的结果加和。例如,图像对应的字符为student,但其中的字母d被遮挡,即被遮挡的图像中的字符为stu*dent,由于字母d被遮挡,此时,被遮挡字符被分为‘stu’和‘ent’两部分。在正向计算时,隐藏层的值与‘stu’相关;反向计算时,隐藏层的值与‘ent’相关。
请参考图9,其为本发明提出的基于深度神经网络的OCR识别装置组成框图。如图所示,该装置包括:
目标候选框生成模块:用于将图片输入区域生产网络(RPN),生成不同的目标候选框;通过角度参数Θ随机调整部分目标候选框,使得调整后的所述目标候选框发生倾斜;其中,参数Θ为所述目标候选框底边与水平线的夹角;
特征提取模块:用于利用ROIAlign表示全部所述目标候选框的特征;
字符分割模块:用于使用快速区域卷积神经网络(Fast R-CNN)对所述目标候选框的候选区进行分类,通过字符分割网络掩模分支(Mask branch)对待识别的所述候选区进行字符分割;
字符识别模块:用于基于CNN网络识别分割后的所述字符;
判断模块:用于判断所述分割后的所述字符是否存在被遮挡或损坏的字符;
预测模块:用于将所述被遮挡或损坏的字符逐一输入Bi-RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果;
输出及显示模块:将分割后的全部字符按序整体输出及显示。
进一步地,角度参数Θ设置为5°,10°,15°,20°,30°,角度的设置可以丰富目标候选框的类型。
进一步地,所述判断模块使用两个相互结合的标准判断分割后的字符是否存在被遮挡或损坏的字符,所述判断模块包括:
标准一子模块:用于训练CNN模型,训练该CNN模型的训练数据为10个数字、包含大小写的52个字母、以及被遮挡的样本数据,训练模型时将所述被遮挡的样本数据归为一个类别;使用训练好的CNN模型对输入的所述分割后的所述字符进行判断,获得判断结果r1;
标准二子模块:用于根据所述分割后的所述字符的像素值的差异进行判断;对所述图片共分割出n个字符,分割后每一个字符bbox部分的像素平均值依次为Q1,Q2,…Qn,bbox是一个四维向量(x,y,w,h),其中x,y表示边框的左顶点坐标,w,h表示边框的宽和长;定义被遮挡的字符候选为Qi=max{Q1,Q2,…Qn}和Qj=min{Q1,Q2,…Qn},所述判断r1表明第x个分割部分为遮挡部分或损坏部分,当x等于i或j时,则认为第x个分割部分对应的字符被遮挡或损坏;当x不等于i或j时,则通过第x个分割部分的预测概率进行判断,若预测概率P(x)大于0.5,则认为该第x个分割部分对应的字符被遮挡或损坏;否则认为该第x个分割部分对应的字符没有被遮挡或损坏;
其中,Z表示CNN网络的全连接层的输出,是一个n维向量,n表示的是网络区分的n个类别,Z={Z1,Z2,…,Zn}。
进一步地,所述预测模块包括:
构建子模块:用于对于所述被遮挡或损坏的字符中的每一个,使用由两个单向RNN结合的双向RNN神经网络(Bi-RNN);
输入输出子模块:用于在每一时刻t,输入会同时提供给两个方向相反的RNN,输出是由这两个方向相反的RNN共同决定的;
计算子模块:用于由所述双向RNN神经网络(Bi-RNN)的预期层要保存A和A'两个值,其中的A参与正向计算,A'参与反向计算:
其中,
Ai=f(WAi-1+Uxi)
A′i=f(W′A′i+1+Uxi)
oi=g(VAi+VA′i)
其中,W、U、V、W′都是共享权重;基于正向计算和反向计算,预测出所述被遮挡或损坏的字符,最终的输出取决于正向计算和反向计算的结果加和。
本发明实施例进一步给出一种基于深度神经网络的OCR识别系统,包括:
处理器,用于执行多条指令;
存储器,用于存储多条指令;
其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行如上所述的基于深度神经网络的OCR识别方法。
本发明实施例进一步给出一种计算机可读存储介质,所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行如上所述的基于深度神经网络的OCR识别方法。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,实体机服务器,或者网络云服务器等,需安装Windows或者Windows Server操作系统)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (6)
1.一种基于深度神经网络的OCR识别方法,其特征在于,所述方法包括:
步骤S301:将图片输入区域生产网络(RPN),生成不同的目标候选框;通过角度参数Θ随机调整部分目标候选框,使得调整后的所述目标候选框发生倾斜;其中,参数Θ为所述目标候选框底边与水平线的夹角;
步骤S302:利用ROIAlign表示全部所述目标候选框的特征;
步骤S303:使用快速区域卷积神经网络(Fast R-CNN)对所述目标候选框的候选区进行分类,通过字符分割网络掩模分支(Mask branch)对待识别的所述候选区进行字符分割;
步骤S304:基于CNN网络识别分割后的所述字符;
步骤S305:判断所述分割后的所述字符是否存在被遮挡或损坏的字符,若是,进入步骤S306,若否,进入步骤S307;包括:
使用两个相互结合的标准判断分割后的字符是否存在被遮挡或损坏的字符:
标准一:训练CNN模型,训练该CNN模型的训练数据为10个数字、包含大小写的52个字母、以及被遮挡的样本数据,训练模型时将所述被遮挡的样本数据归为一个类别;使用训练好的CNN模型对输入的所述分割后的所述字符进行判断,获得判断结果r1;
标准二:根据所述分割后的所述字符的像素值的差异进行判断;对所述图片共分割出n个字符,分割后每一个字符bbox部分的像素平均值依次为Q1,Q2,...Qn,bbox是一个四维向量(x,y,w,h),其中x,y表示边框的左顶点坐标,w,h表示边框的宽和长;定义被遮挡的字符候选为Qi=max{Q1,Q2,...Qn}和Qj=min{Q1,Q2,...Qn},所述判断结果r1表明第x个分割部分为遮挡部分或损坏部分,当x等于i或j时,则认为第x个分割部分对应的字符被遮挡或损坏;当x不等于i或j时,则通过第x个分割部分的预测概率进行判断,若预测概率P(x)大于0.5,则认为该第x个分割部分对应的字符被遮挡或损坏;否则认为该第x个分割部分对应的字符没有被遮挡或损坏;
其中,Z表示CNN网络的全连接层的输出,是一个n维向量,n表示的是网络区分的n个类别,Z={Z1,Z2,…,Zn};
步骤S306:将所述被遮挡或损坏的字符逐一输入Bi-RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果;包括:
对于所述被遮挡或损坏的字符中的每一个,使用由两个单向RNN结合的双向RNN神经网络(Bi-RNN);
在每一时刻t,输入会同时提供给两个方向相反的RNN,输出是由这两个方向相反的RNN共同决定的;
所述双向RNN神经网络(Bi-RNN)的预期层要保存A和A'两个值,其中的A参与正向计算,A'参与反向计算:
其中,
Ai=f(WAi-1+Uxi)
A′i=f(W′A′i-1+Uxi)
oi=g(VAi+VA′i)
其中,W、U、V、W′都是共享权重;基于正向计算和反向计算,预测出所述被遮挡或损坏的字符,最终的输出取决于正向计算和反向计算的结果加和;
步骤S307:将分割后的全部字符按序整体输出及显示。
2.如权利要求1所述的基于深度神经网络的OCR识别方法,其特征在于,角度参数Θ设置为5°,10°,15°,20°,30°。
3.一种基于深度神经网络的OCR识别装置,其特征在于,所述装置包括:
目标候选框生成模块:用于将图片输入区域生产网络(RPN),生成不同的目标候选框;通过角度参数Θ随机调整部分目标候选框,使得调整后的所述目标候选框发生倾斜;其中,参数Θ为所述目标候选框底边与水平线的夹角;
特征提取模块:用于利用ROIAlign表示全部所述目标候选框的特征;
字符分割模块:用于使用快速区域卷积神经网络(Fast R-CNN)对所述目标候选框的候选区进行分类,通过字符分割网络掩模分支(Mask branch)对待识别的所述候选区进行字符分割;
字符识别模块:用于基于CNN网络识别分割后的所述字符;
判断模块:用于判断所述分割后的所述字符是否存在被遮挡或损坏的字符;所述判断模块使用两个相互结合的标准判断分割后的字符是否存在被遮挡或损坏的字符,所述判断模块包括:
标准一子模块:用于训练CNN模型,训练该CNN模型的训练数据为10个数字、包含大小写的52个字母、以及被遮挡的样本数据,训练模型时将所述被遮挡的样本数据归为一个类别;使用训练好的CNN模型对输入的所述分割后的所述字符进行判断,获得判断结果r1;
标准二子模块:用于根据所述分割后的所述字符的像素值的差异进行判断;对所述图片共分割出n个字符,分割后每一个字符bbox部分的像素平均值依次为Q1,Q2,...Qn,bbox是一个四维向量(x,y,w,h),其中x,y表示边框的左顶点坐标,w,h表示边框的宽和长;定义被遮挡的字符候选为Qi=max{Q1,Q2,...Qn}和Qj=min{Q1,Q2,...Qn},所述判断结果r1表明第x个分割部分为遮挡部分或损坏部分,当x等于i或j时,则认为第x个分割部分对应的字符被遮挡或损坏;当x不等于i或j时,则通过第x个分割部分的预测概率进行判断,若预测概率P(x)大于0.5,则认为该第x个分割部分对应的字符被遮挡或损坏;否则认为该第x个分割部分对应的字符没有被遮挡或损坏;
其中,Z表示CNN网络的全连接层的输出,是一个n维向量,n表示的是网络区分的n个类别,Z={Z1,Z2,…,Zn};
预测模块:用于将所述被遮挡或损坏的字符逐一输入Bi-RNN神经网络,预测所述被遮挡或损坏的字符,显示预测结果;
输出及显示模块:用于将分割后的全部字符按序整体输出及显示;
所述预测模块包括:
构建子模块:用于对于所述被遮挡或损坏的字符中的每一个,使用由两个单向RNN结合的双向RNN神经网络(Bi-RNN);
输入输出子模块:用于在每一时刻t,输入会同时提供给两个方向相反的RNN,输出是由这两个方向相反的RNN共同决定的;
计算子模块:用于由所述双向RNN神经网络(Bi-RNN)的预期层要保存A和A'两个值,其中的A参与正向计算,A'参与反向计算:
其中,
Ai=f(WAi-1+Uxi)
A′i=f(W′A′i-1+Uxi)
oi=g(VAi+VA′i)
其中,W、U、V、W′都是共享权重;基于正向计算和反向计算,预测出所述被遮挡或损坏的字符,最终的输出取决于正向计算和反向计算的结果加和。
4.如权利要求3所述的基于深度神经网络的OCR识别装置,其特征在于,角度参数Θ设置为5°,10°,15°,20°,30°。
5.一种基于深度神经网络的OCR识别系统,其特征在于,包括:
处理器,用于执行多条指令;
存储器,用于存储多条指令;
其中,所述多条指令,用于由所述存储器存储,并由所述处理器加载并执行如权利要求1-2任一所述的基于深度神经网络的OCR识别方法。
6.一种计算机可读存储介质,其特征在于,所述存储介质中存储有多条指令;所述多条指令,用于由处理器加载并执行如权利要求1-2任一所述的基于深度神经网络的OCR识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910904514.2A CN110598703B (zh) | 2019-09-24 | 2019-09-24 | 一种基于深度神经网络的ocr识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910904514.2A CN110598703B (zh) | 2019-09-24 | 2019-09-24 | 一种基于深度神经网络的ocr识别方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110598703A CN110598703A (zh) | 2019-12-20 |
CN110598703B true CN110598703B (zh) | 2022-12-20 |
Family
ID=68862725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910904514.2A Active CN110598703B (zh) | 2019-09-24 | 2019-09-24 | 一种基于深度神经网络的ocr识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110598703B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112633287B (zh) * | 2020-12-25 | 2024-04-26 | 中国矿业大学 | 一种面向矿井多源异构图文信息的文本识别方法及装置 |
CN113159053A (zh) * | 2021-04-27 | 2021-07-23 | 北京有竹居网络技术有限公司 | 图像识别方法、装置及计算设备 |
CN113312596B (zh) * | 2021-06-10 | 2023-04-07 | 重庆市勘测院 | 一种基于深度学习和异步轨迹数据的用户身份识别方法 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10334190A (ja) * | 1997-05-30 | 1998-12-18 | Ricoh Co Ltd | 文字認識方法、装置および記録媒体 |
US6473517B1 (en) * | 1999-09-15 | 2002-10-29 | Siemens Corporate Research, Inc. | Character segmentation method for vehicle license plate recognition |
CN105654129A (zh) * | 2015-12-30 | 2016-06-08 | 成都数联铭品科技有限公司 | 一种光学文字序列识别方法 |
CN106778721A (zh) * | 2016-11-25 | 2017-05-31 | 天方创新(北京)信息技术有限公司 | 图片处理方法和装置 |
CN106960206A (zh) * | 2017-02-08 | 2017-07-18 | 北京捷通华声科技股份有限公司 | 字符识别方法和字符识别系统 |
CN107301385A (zh) * | 2017-06-09 | 2017-10-27 | 浙江宇视科技有限公司 | 一种遮挡车牌识别方法及装置 |
CN108108746A (zh) * | 2017-09-13 | 2018-06-01 | 湖南理工学院 | 基于Caffe深度学习框架的车牌字符识别方法 |
CN108229474A (zh) * | 2017-12-29 | 2018-06-29 | 北京旷视科技有限公司 | 车牌识别方法、装置及电子设备 |
CN108256493A (zh) * | 2018-01-26 | 2018-07-06 | 中国电子科技集团公司第三十八研究所 | 一种基于车载视频的交通场景文字识别系统及识别方法 |
CN108898137A (zh) * | 2018-05-25 | 2018-11-27 | 黄凯 | 一种基于深度神经网络的自然图像字符识别方法及系统 |
CN109344825A (zh) * | 2018-09-14 | 2019-02-15 | 广州麦仑信息科技有限公司 | 一种基于卷积神经网络的车牌识别方法 |
CN109344838A (zh) * | 2018-11-02 | 2019-02-15 | 长江大学 | 发票信息自动快速识别方法、系统以及装置 |
CN109376658A (zh) * | 2018-10-26 | 2019-02-22 | 信雅达系统工程股份有限公司 | 一种基于深度学习的ocr方法 |
CN110210413A (zh) * | 2019-06-04 | 2019-09-06 | 哈尔滨工业大学 | 一种基于深度学习的多学科试卷内容检测与识别系统及方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL162878A0 (en) * | 2004-07-06 | 2005-11-20 | Hi Tech Solutions Ltd | Multi-level neural network based characters identification method and system |
US10936862B2 (en) * | 2016-11-14 | 2021-03-02 | Kodak Alaris Inc. | System and method of character recognition using fully convolutional neural networks |
CN108304835B (zh) * | 2018-01-30 | 2019-12-06 | 百度在线网络技术(北京)有限公司 | 文字检测方法和装置 |
US11030466B2 (en) * | 2018-02-11 | 2021-06-08 | Nortek Security & Control Llc | License plate detection and recognition system |
-
2019
- 2019-09-24 CN CN201910904514.2A patent/CN110598703B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10334190A (ja) * | 1997-05-30 | 1998-12-18 | Ricoh Co Ltd | 文字認識方法、装置および記録媒体 |
US6473517B1 (en) * | 1999-09-15 | 2002-10-29 | Siemens Corporate Research, Inc. | Character segmentation method for vehicle license plate recognition |
CN105654129A (zh) * | 2015-12-30 | 2016-06-08 | 成都数联铭品科技有限公司 | 一种光学文字序列识别方法 |
CN106778721A (zh) * | 2016-11-25 | 2017-05-31 | 天方创新(北京)信息技术有限公司 | 图片处理方法和装置 |
CN106960206A (zh) * | 2017-02-08 | 2017-07-18 | 北京捷通华声科技股份有限公司 | 字符识别方法和字符识别系统 |
CN107301385A (zh) * | 2017-06-09 | 2017-10-27 | 浙江宇视科技有限公司 | 一种遮挡车牌识别方法及装置 |
CN108108746A (zh) * | 2017-09-13 | 2018-06-01 | 湖南理工学院 | 基于Caffe深度学习框架的车牌字符识别方法 |
CN108229474A (zh) * | 2017-12-29 | 2018-06-29 | 北京旷视科技有限公司 | 车牌识别方法、装置及电子设备 |
CN108256493A (zh) * | 2018-01-26 | 2018-07-06 | 中国电子科技集团公司第三十八研究所 | 一种基于车载视频的交通场景文字识别系统及识别方法 |
CN108898137A (zh) * | 2018-05-25 | 2018-11-27 | 黄凯 | 一种基于深度神经网络的自然图像字符识别方法及系统 |
CN109344825A (zh) * | 2018-09-14 | 2019-02-15 | 广州麦仑信息科技有限公司 | 一种基于卷积神经网络的车牌识别方法 |
CN109376658A (zh) * | 2018-10-26 | 2019-02-22 | 信雅达系统工程股份有限公司 | 一种基于深度学习的ocr方法 |
CN109344838A (zh) * | 2018-11-02 | 2019-02-15 | 长江大学 | 发票信息自动快速识别方法、系统以及装置 |
CN110210413A (zh) * | 2019-06-04 | 2019-09-06 | 哈尔滨工业大学 | 一种基于深度学习的多学科试卷内容检测与识别系统及方法 |
Non-Patent Citations (1)
Title |
---|
A Convolution-Based Approach for Fixed-Pattern Noise Removal in OCR;Mo,Jiawei等;《2018 INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE AND BIG DATA》;20181113;第134-138页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110598703A (zh) | 2019-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11275961B2 (en) | Character image processing method and apparatus, device, and storage medium | |
WO2021164228A1 (zh) | 一种图像数据的增广策略选取方法及系统 | |
CN108121986B (zh) | 目标检测方法及装置、计算机装置和计算机可读存储介质 | |
CN110738207B (zh) | 一种融合文字图像中文字区域边缘信息的文字检测方法 | |
WO2019192397A1 (zh) | 一种任意形状的场景文本端到端识别方法 | |
CN109918969B (zh) | 人脸检测方法及装置、计算机装置和计算机可读存储介质 | |
CN110427932B (zh) | 一种识别图像中多个票据区域的方法及装置 | |
CN110598703B (zh) | 一种基于深度神经网络的ocr识别方法及装置 | |
WO2022033095A1 (zh) | 一种文本区域的定位方法及装置 | |
CN107977620A (zh) | 一种基于全卷积网络的多方向场景文本单次检测方法 | |
CN111414906A (zh) | 纸质票据图片的数据合成与文本识别方法 | |
CN113361432B (zh) | 一种基于深度学习的视频文字端到端检测与识别的方法 | |
CN109948533B (zh) | 一种文本检测方法、装置、设备及可读存储介质 | |
CN112926565B (zh) | 图片文本的识别方法、系统、设备和存储介质 | |
CN112052845A (zh) | 图像识别方法、装置、设备及存储介质 | |
CN110874618A (zh) | 基于小样本的ocr模板学习方法、装置、电子设备及介质 | |
CN113159215A (zh) | 一种基于Faster Rcnn的小目标检测识别方法 | |
JP2019220014A (ja) | 画像解析装置、画像解析方法及びプログラム | |
CN112101344A (zh) | 一种视频文本跟踪方法及装置 | |
CN113688821B (zh) | 一种基于深度学习的ocr文字识别方法 | |
CN114971294A (zh) | 数据采集方法、装置、设备及存储介质 | |
CN111476226B (zh) | 一种文本定位方法、装置及模型训练方法 | |
WO2021023111A1 (zh) | 一种识别图像中票据数量、多个票据区域的方法及装置 | |
CN110717427B (zh) | 一种基于顶点滑动的多方向物体检测方法 | |
CN114120305A (zh) | 文本分类模型的训练方法、文本内容的识别方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |