CN116630979B - 一种ocr识别方法、系统、存储介质和边缘设备 - Google Patents
一种ocr识别方法、系统、存储介质和边缘设备 Download PDFInfo
- Publication number
- CN116630979B CN116630979B CN202310372094.4A CN202310372094A CN116630979B CN 116630979 B CN116630979 B CN 116630979B CN 202310372094 A CN202310372094 A CN 202310372094A CN 116630979 B CN116630979 B CN 116630979B
- Authority
- CN
- China
- Prior art keywords
- ocr recognition
- recognition model
- training
- target
- preset
- 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
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000003860 storage Methods 0.000 title claims abstract description 11
- 238000012015 optical character recognition Methods 0.000 title abstract description 180
- 238000012549 training Methods 0.000 claims abstract description 130
- 238000006243 chemical reaction Methods 0.000 claims abstract description 47
- 238000012545 processing Methods 0.000 claims abstract description 34
- 238000013139 quantization Methods 0.000 claims abstract description 16
- 238000000605 extraction Methods 0.000 claims description 40
- 230000006870 function Effects 0.000 claims description 29
- 230000004913 activation Effects 0.000 claims description 23
- 238000013528 artificial neural network Methods 0.000 claims description 19
- 230000002457 bidirectional effect Effects 0.000 claims description 18
- 238000010606 normalization Methods 0.000 claims description 18
- 238000011176 pooling Methods 0.000 claims description 14
- 230000000306 recurrent effect Effects 0.000 claims description 6
- 230000008447 perception Effects 0.000 claims description 5
- 230000006978 adaptation Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 206010033799 Paralysis Diseases 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003446 memory effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000004304 visual acuity Effects 0.000 description 1
Classifications
-
- 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
-
- 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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/048—Activation functions
-
- 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/08—Learning methods
-
- 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
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19147—Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- 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
- G06V30/19—Recognition using electronic means
- G06V30/191—Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
- G06V30/19173—Classification techniques
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Character Discrimination (AREA)
Abstract
本发明公开了一种OCR识别方法、系统、存储介质和边缘设备,所述方法包括:基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型;将所述目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并所述对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型;将边缘设备所获取的待识别图像输入至所述轻量级OCR识别模型,得到所述待识别图像的识别结果。本发明通过对OCR识别模型进行轻量化处理,能够将OCR识别模型部署至边缘设备进行适配,在提升OCR识别效率的同时,缓解了主机的运算压力。
Description
技术领域
本发明涉及人工智能技术领域,尤其涉及一种OCR识别方法、系统、存储介质和边缘设备。
背景技术
传统的OCR识别算法主要采用是集中计算,即边缘设备获取数据后将数据传到远程服务器处理。这样的处理方式会导致主机负担过重,所有的计算、存储都集中在主机上,一旦主机出故障,系统将全面瘫痪,而且扩充不易,即获取的数据不断增加时,必须更换主机,否则服务质量就要受到影响,还会存在系统的购置、安装、维护费用较高,不易普及等问题。特别是在视觉图像领域,视觉图像信息获取与处理芯片是先进显示与交互应用场景亟需的核心器件,图像传感器的性能提升导致图像信息数据量急剧增加,依赖数据中心模式的处理架构受制于延时、带宽和“存储墙”等瓶颈。
尽管通过对图像数据的原位计算,大幅提升了图像数据解析能力,具有优异的实时性、能效比和集成度,但仍面临多维视觉信息融合感知、智能化处理、集成与应用等共性技术难题。基于边缘设备的特殊性,现有的OCR识别模型很难直接部署至边缘设备中进行应用。
因此,亟需提供一种技术方案解决上述技术问题。
发明内容
为解决上述技术问题,本发明提供了一种OCR识别方法、系统、存储介质和边缘设备。
本发明的一种OCR识别方法的技术方案如下:
基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型;
将所述目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型;
将边缘设备所获取的待识别图像输入至所述轻量级OCR识别模型,得到所述待识别图像的识别结果。
本发明的一种OCR识别方法的有益效果如下:
本发明的方法通过对OCR识别模型进行轻量化处理,能够将OCR识别模型部署至边缘设备进行适配,在提升OCR识别效率的同时,并缓解了主机的运算压力。
在上述方案的基础上,本发明的一种OCR识别方法还可以做如下改进。
进一步,还包括:
获取多个原始训练图像,并分别对每个原始训练图像依次进行比例缩放处理和图像RGB通道标准化处理,得到所述多个目标训练图像。
进一步,所述基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型的步骤,包括:
将任一目标训练图像输入所述预设OCR识别模型,得到该目标训练图像的训练识别结果,并根据该目标训练图像的训练识别结果和训练标签文本,得到该目标训练图像的损失值,直至得到每个目标训练图像的损失值;
基于每个目标训练图像的损失值,对所述预设OCR识别模型的网络参数进行优化,得到第一预设OCR识别模型,并判断所述第一预设OCR识别模型是否满足预设训练条件,得到判断结果;其中,所述预设训练条件为:训练迭代次数达到最大迭代次数或模型损失函数收敛;
当所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型;
当所述判断结果为否时,将所述第一预设OCR识别模型作为所述预设OCR识别模型,并返回执行所述将任一目标训练图像输入所述预设OCR识别模型的步骤,直至所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型。
进一步,所述预设OCR识别模型包括:多个特征提取模块、多个相同的第一特征转换模块和双向GRU循环神经网络;任意相邻两个特征提取模块之间通过一个第一特征转换模块连接,首个特征提取模块的输入端连接一个第一特征转换模块,最后一个特征提取模块的输出端依次连接一个第一特征转换模块和所述双向GRU循环神经网络;
其中,任一第一特征转换模块包括:依次连接的第一卷积层、第一归一化层、第一激活函数层和第一池化层;任一特征提取模块包括:至少一个包含依次连接的第二卷积层、第二归一化层、第二激活函数层、第三卷积层、第三归一化层和第三激活函数层的子特征提取模块。
进一步,所述双向GRU循环神经网络用于:基于第一预设公式组,对最后一个特征转换模块的第一池化层所输出的图像特征进行语义特征提取,得到所述图像特征中的文本特征,并根据对所述文本特征中每两个相邻的文字特征之间的语义关系的判断,得到所述文本特征对应的识别结果并输出;其中,所述第一预设公式组为:
σ表示sigmoid激活函数,xt为特征图的第t个向量,rt为重置门,zt为更新门,Wxr为所述重置门中当前状态的权重,Whr为所述重置门中前一个隐藏状态的权重,br为所述重置门中的偏置,Wxz为所述更新门当前状态的权重,Whz为所述更新门前一个隐藏状态的权重,bz为所述更新门的权重,Win为控制门当前状态的权重,bin为所述控制门的偏置,Whn为所述控制门中前一个隐藏状态的权重,bhn为所述控制门的偏置,ht为当前时刻的隐藏状态,ht-1为所述当前时刻的前一时刻的隐藏状态,nt代表新产生的控制门。
进一步,对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型的步骤,包括:
基于量化感知算法,将所述ONNX格式的OCR识别模型中浮点类型的网络参数量化为整数类型的网络参数,得到所述轻量级OCR识别模型。
进一步,还包括:
基于所述识别结果对应的文本内容以及所述识别结果在所述待识别图像中的位置信息,确定所述识别结果的目标类别,并根据所述目标类别对所述识别结果进行归类。
本发明的一种OCR识别系统的技术方案如下:
包括:训练模块、处理模块和识别模块;
所述训练模块用于:基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型;
所述处理模块用于:将所述目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并所述对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型;
所述识别模块用于:将边缘设备所获取的待识别图像输入至所述轻量级OCR识别模型,得到所述待识别图像的识别结果。
本发明的一种OCR识别系统的有益效果如下:
本发明的系统通过对OCR识别模型进行轻量化处理,能够将OCR识别模型部署至边缘设备进行适配,在提升OCR识别效率的同时,并缓解了主机的运算压力。
本发明的一种存储介质的技术方案如下:
存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行如本发明的一种OCR识别方法的步骤。
本发明的一种边缘设备的技术方案如下:
包括控制芯片,所述控制芯片执行如本发明的一种OCR识别方法的步骤。
附图说明
图1示出了本发明提供的一种OCR识别方法的第一实施例的流程示意图;
图2示出了本发明提供的一种OCR识别方法的第一实施例中步骤110的流程示意图;
图3示出了本发明提供的一种OCR识别方法的第一实施例中预设OCR识别模型的结构示意图;
图4示出了本发明提供的一种OCR识别方法的第一实施例中特征提取模块的结构示意图;
图5示出了本发明提供的一种OCR识别方法的第一实施例中GRU词向量结构示意图;
图6示出了本发明提供的一种OCR识别系统的实施例的结构示意图。
具体实施方式
图1示出了本发明提供的一种OCR识别方法的第一实施例的流程示意图,该方法通过控制芯片执行。如图1所示,该方法包括如下步骤:
步骤110:基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型。
其中,①目标训练图像为:经过图像预处理后所得到的训练图像。②预设OCR识别模型为:本实施例中所构建的用于对图像进行OCR识别的模型。③目标OCR识别模型为:训练好的目标OCR识别模型。
具体地,控制芯片将多个预处理后的训练图像输入至预设OCR识别模型中进行迭代训练,直至得到训练好的OCR识别模型。
步骤120:将所述目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型。
具体地,控制芯片将训练好的OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并基于量化感知算法,对ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型。
需要说明的是,①轻量级OCR识别模型相较于目标OCR识别模型而言,能够加快模型运行速度并减小模型参数。②在本实施例中,通过pytorch训练框架对目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型。
步骤130:将边缘设备所获取的待识别图像输入至所述轻量级OCR识别模型,得到所述待识别图像的识别结果。
其中,①边缘设备为:性能具有限制的一种设备。②待识别图像为:边缘设备所获取的且需要进行OCR识别的图像。③识别结果包括:从待识别图像中所识别出的文本信息。
具体地,控制芯片将边缘设备所获取的待识别图像输入至轻量级OCR识别模型中进行OCR识别,得到待识别图像中的文本信息。
较优地,在步骤110之前,还包括:
获取多个原始训练图像,并分别对每个原始训练图像依次进行比例缩放处理和图像RGB通道标准化处理,得到所述多个目标训练图像。
其中,①原始训练图像为:未经任何图像处理的训练图像。②原始训练图像为:训练样本集中的多个图像,且应当是包含文本信息的图像。③比例缩放处理的过程为:将图像按比例进行缩放,统一调整为高度为32像素的图像,其长度以相同比例调整。④根据公式:xcorrect_pixel_value=进行RGB通道标准化处理,该公式中:xcorrect_pixel_value为变换后的像素值、xpixel_value为图像的原像素值,σchannel为图像RGB通道的方差,μchannel为图像RGB通道的均值。
具体地,控制芯片从训练样本集中获取多个原始训练图像,对任一原始训练图像依次进行比例缩放处理和图像RGB通道标准化处理,得到该原始训练图像对应的目标训练图像,重复上述步骤,直至得到每个原始训练图像对应的目标训练图像。
较优地,如图2所示,步骤110包括:
步骤111:将任一目标训练图像输入所述预设OCR识别模型,得到该目标训练图像的训练识别结果,并根据该目标训练图像的训练识别结果和训练标签文本,得到该目标训练图像的损失值,直至得到每个目标训练图像的损失值。
其中,训练标签文本为:预先获取目标训练图像中的文本内容,并将该文本内容作为目标训练图像的标签,相当于目标训练图像的OCR识别结果的真实值。而通过OCR识别模型得到的训练识别结果相当于OCR识别结果的预测值,通过比较同一目标训练图像的真实值和预测值,得到该目标训练图像的损失值。
步骤112:基于每个目标训练图像的损失值,对所述预设OCR识别模型的网络参数进行优化,得到第一预设OCR识别模型,并判断所述第一预设OCR识别模型是否满足预设训练条件,得到判断结果。
其中,预设训练条件为:训练迭代次数达到最大迭代次数或模型损失函数收敛,也可根据实际需求进行设定条件,在此不设限制。
步骤113A:当所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型。
步骤113B:当所述判断结果为否时,将所述第一预设OCR识别模型作为所述预设OCR识别模型,并返回执行步骤111,直至所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型。
较优地,如图3所示,所述预设OCR识别模型包括:多个特征提取模块、多个相同的第一特征转换模块和双向GRU循环神经网络。
其中,①任意相邻两个特征提取模块之间通过一个第一特征转换模块连接,首个特征提取模块的输入端连接一个第一特征转换模块,最后一个特征提取模块的输出端依次连接一个第一特征转换模块和所述双向GRU循环神经网络。②任一第一特征转换模块包括:依次连接的第一卷积层、第一归一化层、第一激活函数层和第一池化层。③如图4所示,任一特征提取模块包括:至少一个包含依次连接的第二卷积层、第二归一化层、第二激活函数层、第三卷积层、第三归一化层和第三激活函数层的子特征提取模块。
需要说明的是,①第一卷积层为3×3的卷积层,第二卷积层为1×1的卷积层,第三卷积层为3×3的卷积层。②本实施例以3个特征提取模块为例,图3中的3个特征提取模块中的子特征提取模块的数量从左往右依次为1,3,6,具体也可根据实际需求进行设定,在此不设限制。
较优地,双向GRU循环神经网络用于:基于第一预设公式组,对最后一个特征转换模块的第一池化层所输出的图像特征进行语义特征提取,得到所述图像特征中的文本特征,并根据对所述文本特征中每两个相邻的文字特征之间的语义关系的判断,得到所述文本特征对应的识别结果并输出。
其中,第一预设公式组为:
σ表示sigmoid激活函数,xt为特征图的第t个向量,rt为重置门,zt为更新门,Wxr为所述重置门中当前状态的权重,Whr为所述重置门中前一个隐藏状态的权重,br为所述重置门中的偏置,Wxz为所述更新门当前状态的权重,Whz为所述更新门前一个隐藏状态的权重,bz为所述更新门的权重,Win为控制门当前状态的权重,bin为所述控制门的偏置,Whn为所述控制门中前一个隐藏状态的权重,bhn为所述控制门的偏置,ht为当前时刻的隐藏状态,ht-1为所述当前时刻的前一时刻的隐藏状态,nt代表新产生的控制门。
需要说明的是,本实施例中通过双向GRU循环神经网络对提取后的特征层(即最后一个特征转换模块的第一池化层所输出的图像特征)进行上下文的语义分析,具体的是将图像特征中的文字看作是一个序列,前一个文字的特征与后边文字的特征具有一定的关系,如果前一个文字的特征对下一个文字的判断有效则加强对上一个文字特征的记忆,反之则减弱记忆,通过重置门和更新门去控制得到记忆效果。②图5示出了最后一个特征转换模块的第一池化层所输出的特征图。例如,当该特征图的大小为200×5600,xt为5600的数据,t总共是200个,ht-1设置初始值。结合第一预设公式组以及图5的内容说明了GRU的词向量结构之间的关系,由于GRU结构为现有技术,在此不过多赘述其详细过程。
较优地,对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型的步骤,包括:
基于量化感知算法,将所述ONNX格式的OCR识别模型中浮点类型的网络参数量化为整数类型的网络参数,得到所述轻量级OCR识别模型。
其中,ONNX格式作为OCR识别模型的中介媒体。
较优地,还包括:
步骤140:基于所述识别结果对应的文本内容以及所述识别结果在所述待识别图像中的位置信息,确定所述识别结果的目标类别,并根据所述目标类别对所述识别结果进行归类。
具体地,假设文本内容为“张三”,且“张三”在识别图像中的姓名栏,则确定“张三”的类别为:姓名,将“张三”归类至“姓名”类别。假设文本内容为“12345”,且“12345”在识别图像中的联系方式栏,则确定“12345”的类别为:联系方式,将“12345”归类至“联系方式”。
本实施例的技术方案通过对OCR识别模型进行轻量化处理,能够将OCR识别模型部署至边缘设备进行适配,在提升OCR识别效率的同时,并缓解了主机的运算压力。
本发明的一种OCR识别方法的第二实施例中,采用快递面单对应的图像作为训练图像。具体地:
基于多个用于训练的目标快递面单图像,对预设OCR识别模型进行训练,得到目标OCR识别模型;
将所述目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并所述对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型;
将边缘设备所获取的待识别快递面单图像输入至所述轻量级OCR识别模型,得到所述快递面单图像的识别结果。
较优地,还包括:
获取多个用于训练的原始快递面单图像,并分别对每个原始快递面单图像依次进行比例缩放处理和图像RGB通道标准化处理,得到所述多个目标原始快递面单图像。
较优地,所述基于多个用于训练的目标快递面单图像,对预设OCR识别模型进行训练,得到目标OCR识别模型的步骤,包括:
将任一目标快递面单图像输入所述预设OCR识别模型,得到该目标快递面单图像的训练识别结果,并根据该目标快递面单图像的训练识别结果和训练标签文本,得到该目标快递面单图像的损失值,直至得到每个目标快递面单图像的损失值;
基于每个目标快递面单图像的损失值,对所述预设OCR识别模型的网络参数进行优化,得到第一预设OCR识别模型,并判断所述第一预设OCR识别模型是否满足预设训练条件,得到判断结果;其中,所述预设训练条件为:训练迭代次数达到最大迭代次数或模型损失函数收敛;
当所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型;
当所述判断结果为否时,将所述第一预设OCR识别模型作为所述预设OCR识别模型,并返回执行所述将任一目标快递面单图像输入所述预设OCR识别模型的步骤,直至所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型。
较优地,所述预设OCR识别模型包括:多个特征提取模块、多个相同的第一特征转换模块和双向GRU循环神经网络;任意相邻两个特征提取模块之间通过一个第一特征转换模块连接,首个特征提取模块的输入端连接一个第一特征转换模块,最后一个特征提取模块的输出端依次连接一个第一特征转换模块和所述双向GRU循环神经网络;
其中,任一第一特征转换模块包括:依次连接的第一卷积层、第一归一化层、第一激活函数层和第一池化层;任一特征提取模块包括:至少一个包含依次连接的第二卷积层、第二归一化层、第二激活函数层、第三卷积层、第三归一化层和第三激活函数层的子特征提取模块。
较优地,所述双向GRU循环神经网络用于:基于第一预设公式组,对最后一个特征转换模块的第一池化层所输出的图像特征进行语义特征提取,得到所述图像特征中的文本特征,并根据对所述文本特征中每两个相邻的文字特征之间的语义关系的判断,得到所述文本特征对应的识别结果并输出。
较优地,对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型的步骤,包括:
基于量化感知算法,将所述ONNX格式的OCR识别模型中浮点类型的网络参数量化为整数类型的网络参数,得到所述轻量级OCR识别模型。
较优地,还包括:
基于所述识别结果对应的文本内容以及所述识别结果在所述待识别快递面单图像中的位置信息,确定所述识别结果的目标类别,并根据所述目标类别对所述识别结果进行归类。其中,目标类别包括:面单号、发件人、发件地址、发件手机、收件人、收件地址和收件手机。
图6示出了本发明提供的一种OCR识别系统的实施例的结构示意图。如图6所示,该系统200包括:训练模块210、处理模块220和识别模块230。
所述训练模块210用于:基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型;
所述处理模块220用于:将所述目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并所述对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型;
所述识别模块230用于:将边缘设备所获取的待识别图像输入至所述轻量级OCR识别模型,得到所述待识别图像的识别结果。
较优地,还包括:预处理模块;所述预处理模块用于:
获取多个原始训练图像,并分别对每个原始训练图像依次进行比例缩放处理和图像RGB通道标准化处理,得到所述多个目标训练图像。
较优地,所述训练模块210包括:第一训练模块、优化判断模块、第二训练模块和第三训练模块。
所述第一训练模块用于:将任一目标训练图像输入所述预设OCR识别模型,得到该目标训练图像的训练识别结果,并根据该目标训练图像的训练识别结果和训练标签文本,得到该目标训练图像的损失值,直至得到每个目标训练图像的损失值;
所述优化判断模块用于:基于每个目标训练图像的损失值,对所述预设OCR识别模型的网络参数进行优化,得到第一预设OCR识别模型,并判断所述第一预设OCR识别模型是否满足预设训练条件,得到判断结果;其中,所述预设训练条件为:训练迭代次数达到最大迭代次数或模型损失函数收敛;
所述第二训练模块用于:当所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型;
所述第三训练模块用于:当所述判断结果为否时,将所述第一预设OCR识别模型作为所述预设OCR识别模型,并返回调用所述第一训练模块,直至所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型。
较优地,所述预设OCR识别模型包括:多个特征提取模块、多个相同的第一特征转换模块和双向GRU循环神经网络;任意相邻两个特征提取模块之间通过一个第一特征转换模块连接,首个特征提取模块的输入端连接一个第一特征转换模块,最后一个特征提取模块的输出端依次连接一个第一特征转换模块和所述双向GRU循环神经网络;
其中,①任一第一特征转换模块包括:依次连接的第一卷积层、第一归一化层、第一激活函数层和第一池化层。②任一特征提取模块包括:至少一个包含依次连接的第二卷积层、第二归一化层、第二激活函数层、第三卷积层、第三归一化层和第三激活函数层的子特征提取模块。
较优地,所述双向GRU循环神经网络用于:基于第一预设公式组,对最后一个特征转换模块的第一池化层所输出的图像特征进行语义特征提取,得到所述图像特征中的文本特征,并根据对所述文本特征中每两个相邻的文字特征之间的语义关系的判断,得到所述文本特征对应的识别结果并输出;其中,所述第一预设公式组为:
σ表示sigmoid激活函数,xt为特征图的第t个向量,rt为重置门,zt为更新门,Wxr为所述重置门中当前状态的权重,Whr为所述重置门中前一个隐藏状态的权重,br为所述重置门中的偏置,Wxz为所述更新门当前状态的权重,Whz为所述更新门前一个隐藏状态的权重,bz为所述更新门的权重,Win为控制门当前状态的权重,bin为所述控制门的偏置,Whn为所述控制门中前一个隐藏状态的权重,bhn为所述控制门的偏置,ht为当前时刻的隐藏状态,ht-1为所述当前时刻的前一时刻的隐藏状态,nt代表新产生的控制门。
较优地,所述处理模块220具体用于:
基于量化感知算法,将所述ONNX格式的OCR识别模型中浮点类型的网络参数量化为整数类型的网络参数,得到所述轻量级OCR识别模型。
较优地,还包括:输出模块;所述输出模块用于:
基于所述识别结果对应的文本内容以及所述识别结果在所述待识别图像中的位置信息,确定所述识别结果的目标类别,并根据所述目标类别对所述识别结果进行归类。
本实施例的技术方案通过对OCR识别模型进行轻量化处理,能够将OCR识别模型部署至边缘设备进行适配,在提升OCR识别效率的同时,并缓解了主机的运算压力。
上述关于本实施例的一种OCR识别系统200中的各参数和各个模块实现相应功能的步骤,可参考上文中关于一种OCR识别方法的实施例中的各参数和步骤,在此不做赘述。
本发明实施例提供的一种存储介质,包括:存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行如一种OCR识别方法的步骤,具体可参考上文中一种OCR识别方法的实施例中的各参数和步骤,在此不做赘述。
本发明实施例提供的一种边缘设备,包括控制芯片,所述控制芯片执行如本实施例的一种OCR识别方法的步骤,具体可参考上文中一种OCR识别方法的实施例中的各参数和步骤,在此不做赘述。
在此处所提供的说明书中,说明了大量具体细节。然而能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。类似地,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。其中,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。
Claims (8)
1.一种OCR识别方法,其特征在于,包括:
基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型;
将所述目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型;
将边缘设备所获取的待识别图像输入至所述轻量级OCR识别模型,得到所述待识别图像的识别结果;
所述预设OCR识别模型包括:多个特征提取模块、多个相同的第一特征转换模块和双向GRU循环神经网络;任意相邻两个特征提取模块之间通过一个第一特征转换模块连接,首个特征提取模块的输入端连接一个第一特征转换模块,最后一个特征提取模块的输出端依次连接一个第一特征转换模块和所述双向GRU循环神经网络;
其中,任一第一特征转换模块包括:依次连接的第一卷积层、第一归一化层、第一激活函数层和第一池化层;任一特征提取模块包括:至少一个包含依次连接的第二卷积层、第二归一化层、第二激活函数层、第三卷积层、第三归一化层和第三激活函数层的子特征提取模块;
所述双向GRU循环神经网络用于:基于第一预设公式组,对最后一个特征转换模块的第一池化层所输出的图像特征进行语义特征提取,得到所述图像特征中的文本特征,并根据对所述文本特征中每两个相邻的文字特征之间的语义关系的判断,得到所述文本特征对应的识别结果并输出;其中,所述第一预设公式组为:
σ表示sigmoid激活函数,xt为特征图的第t个向量,rt为重置门,zt为更新门,Wxr为所述重置门中当前状态的权重,Whr为所述重置门中前一个隐藏状态的权重,br为所述重置门中的偏置,Wxz为所述更新门当前状态的权重,Whz为所述更新门前一个隐藏状态的权重,bz为所述更新门的权重,Win为控制门当前状态的权重,bin为所述控制门的偏置,Whn为所述控制门中前一个隐藏状态的权重,bhn为所述控制门的偏置,ht为当前时刻的隐藏状态,ht-1为所述当前时刻的前一时刻的隐藏状态,nt代表新产生的控制门。
2.根据权利要求1所述的OCR识别方法,其特征在于,还包括:
获取多个原始训练图像,并分别对每个原始训练图像依次进行比例缩放处理和图像RGB通道标准化处理,得到所述多个目标训练图像。
3.根据权利要求1所述的OCR识别方法,其特征在于,所述基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型的步骤,包括:
将任一目标训练图像输入所述预设OCR识别模型,得到该目标训练图像的训练识别结果,并根据该目标训练图像的训练识别结果和训练标签文本,得到该目标训练图像的损失值,直至得到每个目标训练图像的损失值;
基于每个目标训练图像的损失值,对所述预设OCR识别模型的网络参数进行优化,得到第一预设OCR识别模型,并判断所述第一预设OCR识别模型是否满足预设训练条件,得到判断结果;其中,所述预设训练条件为:训练迭代次数达到最大迭代次数或模型损失函数收敛;
当所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型;
当所述判断结果为否时,将所述第一预设OCR识别模型作为所述预设OCR识别模型,并返回执行所述将任一目标训练图像输入所述预设OCR识别模型的步骤,直至所述判断结果为是时,将所述第一预设OCR识别模型确定为所述目标OCR识别模型。
4.根据权利要求1所述的OCR识别方法,其特征在于,对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型的步骤,包括:
基于量化感知算法,将所述ONNX格式的OCR识别模型中浮点类型的网络参数量化为整数类型的网络参数,得到所述轻量级OCR识别模型。
5.根据权利要求1-4任一项所述的OCR识别方法,其特征在于,还包括:
基于所述识别结果对应的文本内容以及所述识别结果在所述待识别图像中的位置信息,确定所述识别结果的目标类别,并根据所述目标类别对所述识别结果进行归类。
6.一种OCR识别系统,其特征在于,包括:训练模块、处理模块和识别模块;
所述训练模块用于:基于多个目标训练图像,对预设OCR识别模型进行训练,得到目标OCR识别模型;
所述处理模块用于:将所述目标OCR识别模型进行格式转换,得到ONNX格式的OCR识别模型,并对所述ONNX格式的OCR识别模型的网络参数进行量化处理,得到轻量级OCR识别模型;
所述识别模块用于:将边缘设备所获取的待识别图像输入至所述轻量级OCR识别模型,得到所述待识别图像的识别结果;
所述预设OCR识别模型包括:多个特征提取模块、多个相同的第一特征转换模块和双向GRU循环神经网络;任意相邻两个特征提取模块之间通过一个第一特征转换模块连接,首个特征提取模块的输入端连接一个第一特征转换模块,最后一个特征提取模块的输出端依次连接一个第一特征转换模块和所述双向GRU循环神经网络;
其中,任一第一特征转换模块包括:依次连接的第一卷积层、第一归一化层、第一激活函数层和第一池化层;任一特征提取模块包括:至少一个包含依次连接的第二卷积层、第二归一化层、第二激活函数层、第三卷积层、第三归一化层和第三激活函数层的子特征提取模块;
所述双向GRU循环神经网络用于:基于第一预设公式组,对最后一个特征转换模块的第一池化层所输出的图像特征进行语义特征提取,得到所述图像特征中的文本特征,并根据对所述文本特征中每两个相邻的文字特征之间的语义关系的判断,得到所述文本特征对应的识别结果并输出;其中,所述第一预设公式组为:
σ表示sigmoid激活函数,xt为特征图的第t个向量,rt为重置门,zt为更新门,Wxr为所述重置门中当前状态的权重,Whr为所述重置门中前一个隐藏状态的权重,br为所述重置门中的偏置,Wxz为所述更新门当前状态的权重,Whz为所述更新门前一个隐藏状态的权重,bz为所述更新门的权重,Win为控制门当前状态的权重,bin为所述控制门的偏置,Whn为所述控制门中前一个隐藏状态的权重,bhn为所述控制门的偏置,ht为当前时刻的隐藏状态,ht-1为所述当前时刻的前一时刻的隐藏状态,nt代表新产生的控制门。
7.一种存储介质,其特征在于,所述存储介质中存储有指令,当计算机读取所述指令时,使所述计算机执行如权利要求1至5中任一项所述的OCR识别方法。
8.一种边缘设备,包括控制芯片,其特征在于,所述控制芯片执行如权利要求1至5中任一项所述的OCR识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310372094.4A CN116630979B (zh) | 2023-04-10 | 2023-04-10 | 一种ocr识别方法、系统、存储介质和边缘设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310372094.4A CN116630979B (zh) | 2023-04-10 | 2023-04-10 | 一种ocr识别方法、系统、存储介质和边缘设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116630979A CN116630979A (zh) | 2023-08-22 |
CN116630979B true CN116630979B (zh) | 2024-04-30 |
Family
ID=87620092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310372094.4A Active CN116630979B (zh) | 2023-04-10 | 2023-04-10 | 一种ocr识别方法、系统、存储介质和边缘设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116630979B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107944450A (zh) * | 2017-11-16 | 2018-04-20 | 深圳市华尊科技股份有限公司 | 一种车牌识别方法及装置 |
CN110097019A (zh) * | 2019-05-10 | 2019-08-06 | 腾讯科技(深圳)有限公司 | 字符识别方法、装置、计算机设备以及存储介质 |
CN110705399A (zh) * | 2019-09-19 | 2020-01-17 | 安徽七天教育科技有限公司 | 一种数学公式自动识别的方法 |
CN110738090A (zh) * | 2018-07-19 | 2020-01-31 | 塔塔咨询服务公司 | 使用神经网络进行端到端手写文本识别的系统和方法 |
CN111738169A (zh) * | 2020-06-24 | 2020-10-02 | 北方工业大学 | 一种基于端对端网络模型的手写公式识别方法 |
CN114220091A (zh) * | 2021-12-16 | 2022-03-22 | 广东电网有限责任公司 | 基于Faster Rcnn的图像文本检测方法及系统 |
CN114358199A (zh) * | 2022-01-10 | 2022-04-15 | 上海亿保健康管理有限公司 | 轻量级字符识别模型的训练方法、电子设备及存储介质 |
CN114863442A (zh) * | 2022-04-24 | 2022-08-05 | 虎妞科技(杭州)有限公司 | 基于深度学习的文字识别方法、系统、装置和存储介质 |
CN114898381A (zh) * | 2022-05-20 | 2022-08-12 | 中国工商银行股份有限公司 | Ocr识别方法及装置、存储介质和电子设备 |
CN114970497A (zh) * | 2022-06-02 | 2022-08-30 | 中南大学 | 基于预训练特征嵌入的文本分类方法及词义消歧方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10049097B1 (en) * | 2017-01-27 | 2018-08-14 | Xerox Corporation | Systems and methods for creating multi-layered optical character recognition (OCR) documents |
CN111860479B (zh) * | 2020-06-16 | 2024-03-26 | 北京百度网讯科技有限公司 | 光学字符识别方法、装置、电子设备及存储介质 |
RU2768211C1 (ru) * | 2020-11-23 | 2022-03-23 | Общество с ограниченной ответственностью "Аби Продакшн" | Оптическое распознавание символов посредством комбинации моделей нейронных сетей |
-
2023
- 2023-04-10 CN CN202310372094.4A patent/CN116630979B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107944450A (zh) * | 2017-11-16 | 2018-04-20 | 深圳市华尊科技股份有限公司 | 一种车牌识别方法及装置 |
CN110738090A (zh) * | 2018-07-19 | 2020-01-31 | 塔塔咨询服务公司 | 使用神经网络进行端到端手写文本识别的系统和方法 |
CN110097019A (zh) * | 2019-05-10 | 2019-08-06 | 腾讯科技(深圳)有限公司 | 字符识别方法、装置、计算机设备以及存储介质 |
CN110705399A (zh) * | 2019-09-19 | 2020-01-17 | 安徽七天教育科技有限公司 | 一种数学公式自动识别的方法 |
CN111738169A (zh) * | 2020-06-24 | 2020-10-02 | 北方工业大学 | 一种基于端对端网络模型的手写公式识别方法 |
CN114220091A (zh) * | 2021-12-16 | 2022-03-22 | 广东电网有限责任公司 | 基于Faster Rcnn的图像文本检测方法及系统 |
CN114358199A (zh) * | 2022-01-10 | 2022-04-15 | 上海亿保健康管理有限公司 | 轻量级字符识别模型的训练方法、电子设备及存储介质 |
CN114863442A (zh) * | 2022-04-24 | 2022-08-05 | 虎妞科技(杭州)有限公司 | 基于深度学习的文字识别方法、系统、装置和存储介质 |
CN114898381A (zh) * | 2022-05-20 | 2022-08-12 | 中国工商银行股份有限公司 | Ocr识别方法及装置、存储介质和电子设备 |
CN114970497A (zh) * | 2022-06-02 | 2022-08-30 | 中南大学 | 基于预训练特征嵌入的文本分类方法及词义消歧方法 |
Non-Patent Citations (1)
Title |
---|
一种序列文字识别方法;张涛;;工业控制计算机;20180525(05);96-97+99 * |
Also Published As
Publication number | Publication date |
---|---|
CN116630979A (zh) | 2023-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110738090B (zh) | 使用神经网络进行端到端手写文本识别的系统和方法 | |
CN114241282B (zh) | 一种基于知识蒸馏的边缘设备场景识别方法及装置 | |
CN110032969B (zh) | 用于检测图像中的文本区域的方法、装置、设备以及介质 | |
CN116168352B (zh) | 基于图像处理的电网障碍物识别处理方法及系统 | |
CN111985310B (zh) | 一种用于人脸识别的深度卷积神经网络的训练方法 | |
CN112686345B (zh) | 一种基于注意力机制的脱机英文手写识别方法 | |
CN109214001A (zh) | 一种中文语义匹配系统及方法 | |
CN112750129B (zh) | 一种基于特征增强位置注意力机制的图像语义分割模型 | |
CN111680705B (zh) | 适于目标检测的mb-ssd方法和mb-ssd特征提取网络 | |
CN111931813A (zh) | 一种基于cnn的宽度学习分类方法 | |
CN113591978B (zh) | 一种基于置信惩罚正则化的自我知识蒸馏的图像分类方法、设备及存储介质 | |
CN111738169A (zh) | 一种基于端对端网络模型的手写公式识别方法 | |
CN113313119B (zh) | 图像识别方法、装置、设备、介质及产品 | |
CN110851594A (zh) | 一种基于多通道深度学习模型的文本分类方法及其装置 | |
CN115049534A (zh) | 基于知识蒸馏的鱼眼图像实时语义分割方法 | |
CN111898735A (zh) | 蒸馏学习方法、装置、计算机设备和存储介质 | |
CN114742224A (zh) | 行人重识别方法、装置、计算机设备及存储介质 | |
CN111651993A (zh) | 融合局部-全局字符级关联特征的中文命名实体识别方法 | |
CN112434686A (zh) | 针对ocr图片的端到端含错文本分类识别仪 | |
CN113421222B (zh) | 一种轻量化煤矸目标检测方法 | |
CN116630979B (zh) | 一种ocr识别方法、系统、存储介质和边缘设备 | |
CN110555462A (zh) | 基于卷积神经网络的无固定多字符验证码识别方法 | |
CN111126173A (zh) | 一种高精度人脸检测方法 | |
CN116484224A (zh) | 一种多模态预训练模型的训练方法、装置、介质及设备 | |
CN115331081A (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 |