光学字符识别
基于电子设备将形状翻译成文字的过程
光学字符识别(Optical 字符 Recognition,OCR)技术,是指利用如扫描仪或数码相机等电子设备读取文本图像,通过OCR技术检测扫描件上暗、亮的模式以辨识文字的形状,而后使用字符识别方法将形状转换翻译成文字的过程。
该技术的概念由德国科学家古斯塔夫·陶谢克(Gustav Tauschek)于1929年最先提出,紧接着美国科学家亨德尔(Handel)提出利用光电转换方式对文字进行识别的想法。20世纪六七十年代,世界各国研究者开始研究光学字符识别技术,初期研究主要集中于数字0至9的识别。到了20世纪70年代,中原地区逐渐开展对于光学字符识别的研究,同时期日本的学者也开始汉字识别的研究。光学字符识别在工业界的应用也十分广泛。在21世纪初期,杨立昆(Yann LeCun)将基于卷积神经网络的手写体数字识别系统应用于银行支票的数额识别,这个系统在2000年左右已经处理了美国全部支票数量的10%~20%。
传统OCR识别系统的作业流程分为图像输入、预处理、文字识别、版面还原、后处理及校对等多个步骤。光学字符识别方法包括图像二值化、连通域分析、特征提取与神经网络结合法等,涉及模块匹配算法、EAST等算法。其识别指标有拒识率、误识率、用户界面友好性等,广泛应用在文档处理及信息检索、港口作业、内部审计等领域。
历史沿革
萌芽阶段
光学字符识别的概念最早由德国科学家古斯塔夫·陶谢克(Gustav Tauschek)于1929年提出,并申请了相关专利,紧接其后,美国科学家亨德尔(Handel)提出了利用光电转换方式进行文字识别的构想,为OCR技术的发展奠定了理论基础。
到了1950年,随着技术革命的快速推进,数据量不断增加,电子数据处理的重要性日益凸显。当时,数据主要通过穿孔卡输入,最初由手工处理。然而,处理日益增多的数据亟需一种经济高效的替代方案来代替繁琐的人工处理。与此同时,机器读取技术逐渐成熟,并开始在商业应用中展露头角。因此,1950年代中期,OCR机器开始进入大规模生产阶段。在大规模生产之前,第一台真正的OCR机器于1954年安装在美国杂志《读者文摘》上。该设备用于将打字的销售报告转换为计算机可读取和搜索的穿孔卡片。尽管当时的技术水平尚不足以只提取最相关的数据,需要读取整个文档,但这标志着OCR技术的初步商业应用。
大规模生产与商业系统
为了克服设备笨重和昂贵的问题,人们开始广泛开发和使用OCR相关技术,设计了简化字体以便更容易转换为数字可读文本。大卫·夏普德(David Shepard)创造的OCR-7B字体即是其中之一,该字体至今仍在金融行业中作为信用卡和借记卡的标准字体使用。20世纪60年代,包括美国英国加拿大德国在内的多个国家的邮政服务开始使用OCR技术来大大加快邮件分拣速度。1960年至1965年间出现的商业OCR系统可称为第一代OCR,这一代系统使文档处理过程中的最初几个步骤得以自动化。然而,第一批设备可读取的符号和字母数量仍然非常有限。
20世纪六七十年代,世界各国开始有光学字符识别技术的研究,初期多以0~9的数字的识别方法研究为主。例如,印刷文字的邮政编码识别系统,通过邮政编码的识别,大大提高邮件分工的效率。IBM是最早对印刷体汉字识别进行研究的公司,1965年,IBM在纽约世界博览会上展出了首款OCR产品——IBM 1287,并于第二年发表了第一篇关于汉字识别的文章,采用模板匹配法识别了1000个印刷体汉字,使得光学字符识别技术开始应用于传媒、出版行业。
OCR在各领域的发展使得人们将更多的注意力转移到商业方面。20世纪70年代, 雷蒙德·库兹韦尔成功推出了第一台能够将印刷品翻译成口语的商用阅读机——库兹韦尔阅读机(Kurzweil Reading Machine),该设备通过光学字符识别和文本语音转换软件来播放印刷文本,使得人们对盲文的依赖程度因它的出现而减弱。
发展应用阶段
20世纪70年代,OCR软件的功能较为有限,只能使用特定的字体和大小。20世纪70年代初日本的学者也开始了汉字识别研究,全世界第一个实现手写体邮政编码识别的信函自动分拣系统就是由日本东芝研制的,之后NEC公司也推出了同样的系统。到了1974年,信函的自动分拣率达到92%左右,并且广泛地应用在邮政系统中,发挥着较好的作用。1977年,东芝综合研究所研制的可以识别2000个单体印刷汉字的OCR识别系统。
中原地区在OCR技术方面的研究工作起步较晚,直到70年代末才逐渐开展了对于光学字符识别的研究。中国在1986年推出“863”高新技术研究计划,致力于OCR技术的发展,标志着汉字识别研究的实质性阶段。1989年,清华大学率先推出了中国第一套中文OCR软件——清华文通TH-OCR1.0版,至此中文OCR正式从实验室走向了市场。
图像识别是深度学习最早尝试的应用领域。在1989年,LeCun等人发表了关于卷积神经网络的相关研究成果,这些成果在手写数字识别任务上取得了当时世界上最好的结果,并广泛应用于各大银行支票的手写数字识别任务中。进入20世纪90年代,OCR软件的功能变得更为强大,可以识别几乎所有字体以及严重退化的文件影像,该技术随着历史报纸的数字化而得到进一步的发展。
标准成熟阶段
光学字符识别在工业界的应用也十分广泛。在21世纪初期,杨立昆(Yann LeCun)将基于卷积神经网络的手写体数字识别系统应用于银行支票的数额识别,这个系统在2000年左右已经处理了美国全部支票数量的10%~20%。
国际文档分析与识别大会(international conference on document analysis and recognition,ICDAR)于2003年大会设立“Robust Reading Competitions”,该竞赛主要评测和检验自然场景、网络图片、复杂视频文本自动提取与智能识别最新技术的性能,并设立了丰厚的奖金。该竞赛极大地促进了OCR技术的发展,已经成为OCR技术研究进展重要的国际赛事及标准。由于竞赛强大实际应用性、高技术难度、诸多科研院校、科技公司都参与其中。
2012年,百度集团深度学习技术成功应用于自然图像OCR和人脸识别等问题上,并推出相应的移动搜索产品和桌面应用。从2012年的ImageNet竞赛开始,深度学习在图像识别领域发挥出巨大影响,在通用图像分类、图像检测、光学字符识别、人脸识别等领域,深度学习发挥出巨大影响。2012年4月,谷歌发布了一款名为谷歌眼镜(Google Project Glass)的拓展现实眼镜,这是一款手机拍照识别程序,真正能佩戴的谷歌眼镜能识别出大都会艺术博物馆的76000件不同艺术作品。同时谷歌也将光学字符识别技术用在了谷歌地图的开发中,该数字识别系统可以从谷歌街景图中识别任意长度的数字,在SVHN数据集上可以达到96%的正确率。到2013年为止,该系统已经帮助谷歌抽取了超过1亿个门牌号码,加速了谷歌地图的制作过程并节省了巨额的人力成本。
2020年9月28日,在中华人民共和国工业和信息化部、北京市人民政府、国际电信联盟(ITU-T)指导的2020 AIIA人工智慧开发者大会上,主办方正式发布中国首份智能文字识别(OCR)能力测评与应用白皮书。该白皮书从OCR发展背景、技术沿革、产业发展现状、技术标准化、发展趋势等多个维度,对中国OCR产业进行了梳理,推动OCR技术产业化发展。
工作原理
OCR的基本原理就是通过扫描仪将一份文稿的图像输入给计算机,然后由计算机取出每个文字的图像,转换为相应的文本编码。计算机接收的是文稿的数字图像,其图像上的文字可能是印刷文字,也可能是手写文字,然后对这些图像中的文字进行识别。对于印刷体字符,首先采用光学的方式将文档资料转换成原始黑白点阵的图像文件,再通过识别软件将图像中的文字转换成文本格式,以便文字处理软件的进一步加工,其中文字识别是OCR的重要技术。
OCR技术原理主要分为传统OCR和深度学习OCR两个流派。
传统OCR
OCR识别系统的作业流程分为资料的扫描录入、图像处理、版面分析、文字识别、纵横向校对与版面还原等步骤。
图像输入
图像输入就是将要处理的档案通过光学设备输入到计算机中。在OCR系统中,识读图像信息的设备称为光学符号阅读器,简称光符阅读器。它是将印在纸上的图像或字符借助光学方法变换为电信号后,再传送给计算机进行自动识别的装置。一般的OCR系统的输入装置可以是扫描仪、传真机、摄像机或数字式照相机等。
预处理
图像预处理是必要的步骤,目的是优化图像以减少噪声并提高对比度,从而使文本更易于识别。不同的图像格式有不同的存储格式与压缩方式,预处理主要包括二值化、噪声去除、倾斜较正等,具体如下:
二值化:对摄像头拍摄的图片,大多数是彩色图片,由于彩色图片所含信息量过于巨大,需要先对彩色图进行处理。对于图片中的内容可以将划分为前景与背景,定义前景信息为黑色,背景信息为白色,使图片只包含黑色的前景信息和白色的背景信息,通过对图片的二值化处理,可以提升识别处理的效率和精确度。
噪声去除:由于待识别图片的品质受限于输入设备、环境以及文档的印刷质量,在对图片中的字符进行识别处理前,需要根据噪声的特征对待识别图片进行去噪处理进而提升识别处理的精确度。
倾斜较正:由于扫描和拍摄过程涉及人工操作,输入计算机的待识别图像或多或少都会存在一些倾斜,在对图像中印刷体字符进行识别处理前,就需要进行图像方向检测,并校正图像方向。
版面分析:识别文档中的文本区域、标题、页眉页脚等,并将文档图像分割成可以单独处理的部分。
字符切割:行字切分是将大幅的图像先切割为行,再从图像行中分离出单个字符的过程。由于拍照条件的限制,经常造成字符粘连、断笔,因此在对单个字符进行识别之前,需要进行字符切割。
文字识别
早期为模板匹配,模式匹配阶段是使用事先训练好的模型或模式库,将提取的特征与已知字符形状进行比较和匹配,这个过程会涉及模式识别算法、机器学习模型,如神经网络、支持向量机等。后来以特征提取法处理文字的位移、笔画的粗细、断笔、粘连、旋转等,识别精度大为提高。
版面还原
版面恢复的需求源于一部分字符识别系统对于源文件版面的破坏。通常,人们希望识别后的文字,仍然保持原文档的排列样式,在段落、位置以及对应的顺序均保持不变的前提下,输出到word文档、pdf文档等,保证实现这一目标的过程就叫版面恢复。
后处理、校对
拼写检查:使用字典和语言模型对识别结果进行拼写检查和校正。
版面校对:将识别结果与原始图像进行比较,确保文本块和段落的布局准确无误。
人工校对:在自动校对基础上,进行必要的人工审查和修改,以确保最终输出的文本质量。
深度学习OCR
在主流的深度学习OCR中,工作流程通常包括文本检测和文本识别两个主要阶段。首先,文本检测阶段负责从复杂的图像背景中定位文本的位置和边界,这为后续的文本识别做好准备,这个阶段主要分为基于回归的方法和基于分割的方法。接着,在文本识别阶段,技术会分析检测到的文本区域,将图像中的文本转换为机器可读的字符序列,这个阶段通常采用CRNN和基于注意力机制的方法。此外,一些先进的端到端识别算法尝试将这两个阶段融合到单个网络模型中,这样可以直接从整个图像中识别出文本,简化了传统的多阶段处理流程,虽然这可能在某些情况下牺牲一定的精度,但能显著提高处理速度。
相关技术
图像处理技术
图像二值化
图像的二值化处理,又称为灰度阈值变换,利用它可对一幅灰度图像进行转换,使之变成黑白二值图像。这种图像具备数据量不大,仅黑色和白色两种颜色,更为简单,可将目标区域的轮廓更好地突显出来等特征。二值化处理的第一步就是要定义一个灰度值,也就是值阈值可以作为一条分割线;如果灰度图像中的图像里某一个像素点的灰度值比这个阈值更小一些,那么,就把这个点的灰度值设成0,如若不然,就设成1,继而达到二值化处理的效果。
连通域分析
连通域一般是指图像中具有相同像素值,且位置相邻的前景像素点组成的图像区域,连通域分析是指将图像中的各个连通区域找出并标记。图像分析中最重要的是连通域的特征数据提取,标记图像本质上只是一个辅助图像数据结构。如果在第一次扫描中直接提取特征数据,那么第二次扫描就可以省去,两次扫描就可以减少到单次扫描。连通域分析算法可以处理位流图像,且不需要储存标签图像,只需要少量内存,这些特性使它们适合在FPGA(FPGA)上实现,完成图像实时高速处理。
投影分析
投影分析是分析截平面与投影面的相对位置,从而弄清截交线的投影特性。典型相关分析和偏最小二乘被称为相关投影分析算法,典型相关分析的思想是在两组变量中各找到一个线性组合,组合成一个综合指标来代表这组随机变量,这样的线性组合要使得这两个典型相关变量的相关性最大,从而得到一对典型相关变量。偏最小二乘的特征提取方法被人们称为“第二代多元统计分析技术”,主要目的在于降维,与其他降维方法不同的地方在于它是一个多元分析方法,在降维过程中综合考虑了多因变量和多自变量的潜在信息,而其他的降维方法往往只考虑到单个的自变量与因变量之间的潜在信息,因此偏最小二乘能够最大化地抽取出因变量与自变量之间的潜在特征。
基于神经网络的字符识别技术
特征提取与神经网络结合法
这种方法首先从待识别字符中提取特征,然后使用这些特征来训练神经网络分类器。特征提取依赖于人的经验来定义和获取特征,可以利用神经网络的分类能力来识别字符。此方法的效果与字符特征的提取有关,特征参数过多会增加训练时间,过少则可能导致识别歧义。
直接图像输入法
这种方法直接将图像输入到神经网络中,由网络自动实现特征提取直至识别。这样不需要人工特征提取,可以充分利用神经网络处理图像数据的能力。网络互连较多,抗干扰性能好,识别率高,但网络结构较复杂,输入模式维数的增加可能导致网络规模过大。
识别算法
算法
模板匹配算法
模板匹配算法通过为每个字符创建一个标准模板,并将待识别的图像调整到相同大小,实现字符识别。这一过程包括将各模板与待识别图像逐点比对,根据相似度输出识别结果。模板匹配的核心是模板的设计,确保每个模板与其对应字符高度一致,同时与其他字符保持一定差异。此方法的优点在于简单易行,能较好地适应字符的轻微缺损和污迹,识别率较高;缺点是对图像质量要求高,计算速度慢,容易误识相似字符。因此,提高实时性和减少对相似字符的误识别是模板匹配技术面临的主要挑战。
支持向量机
支持向量机(Support Vector Machine,SVM)是一类有监督学习方式,是对数据进行二元分类的广义线性分类器,其工作原理是将数据映射到高维特征空间,在特征空间里利用算法求出一个超平面实现数据的分类,这样即使数据不是线性可分,也可以对该数据点进行分类。支持向量机非常适合处理图像数据带来的挑战,它们能够学习复杂的图案而不需要对噪声过度敏感,它们能够以高准确率识别光学图案。
KNN算法
KNN(K-Nearest Neighbor)算法是机器学习算法中最基础、最简单的算法之一,其核心思想是如果一个样本在特征空间中的k个最相邻的样本中的大多数属于某一个类别,则该样本也属于这个类别,并具有这个类别上样本的特性,该方法在确定分类决策上只依据最邻近的一个或者几个样本的类别来决定待分样本所属的类别。此过程分三步进行:首先定位文字的具体区域;其次提取文字的关键特征;最后利用KNN算法对这些特征进行分类,从而确定每个字符的身份。这种方法的有效性在于其简便性和对近邻样本特性的直接应用。
Otsu算法
存在反渗噪声的文档图像在利用OCR进行识别时,噪声会对文字的切分、特征提取和分类产生很大的干扰,使得OCR的识别率下降,此时可通过利用Otsu方法来去除图像的反渗噪声,该算法根据图像的灰度特性,将图像分为前景和背景两个部分,当取最佳阈值时,两部分之间的差值应该是最大的。在Otsu算法中,所采用的衡量差别的标准就是较为常见的最大类间方差。因此,当对象物和背景的灰度值的差具有一定大小时,Otsu法是很有效的。Otsu二值化算法因其计算简单,且不受图像亮度和对比度的影响,被认为是图像分割中位数选取的最佳算法,在计算机视觉领域得到广泛利用。
MSER算法
MSER(Maximally Stable Extremal Regions)算法是一种重要的图像处理技术,其首先得到字符候选集,并且将文字候选区域看作连通图的顶点,然后将文本行的寻找过程视为聚类(Clustering)过程。这种方法首先对灰度图像进行全局阈值二值化,随着阈值的逐渐变化,图像中的连通区域在较宽的阈值范围内保持面积稳定或变化微小。这些区域在阈值增加或减少时面积变化最小,从而被识别为MSER。通过合并增加和减少阈值过程中检测到的稳定区域,MSER算法能够有效地从复杂背景中分离出文字,提高OCR的准确率和效率。
SIFT算法
SIFT算法基于尺度空间理论,广泛应用于OCR识别,侦测和描述图像中的局部特征。算法首先使用高斯核构建尺度空间,通过Difference of Gaussian(DOG)检测极值点以定位稳定的关键点。关键点通过泰勒展开修正,并筛除低对比度及边缘响应点。每个特征点的主方向由其邻域梯度直方图的峰值确定,可能有副方向。最后,特征点周围分区域累计梯度方向生成128维描述符,以精确匹配特征点,增强图像识别效率。
FCN算法
FCN是伯克利大学的研究人员提出用于进行图像分割的算法,其输出部分不是全连接层,而是全卷积层,因此最终的输出不是类别而是特征映射。该方法将图像级别的分类扩展到像素级别的分类。FCN的最后一层是上采样层,通过上采样获取的预测输出能够和原始图像的尺寸保持一致,因此FCN能够对输入图像完成逐像素的分类。上采样可以通过插值实现,也可以通过反卷积实现。相比于反卷积,插值的计算速度更快,而且不会增加模型的参数量。但是插值是一个固定的过程,它不具备反卷积的可学习性。在具体实施中,使用上采样对特征图像按原始尺寸进行恢复,使得输出的特征图像与输入图像具有相同的宽度和高度。
EAST算法
EAST算法是一种用于场景文本检测的端到端的深度学习算法,它省去了不必要的中间步骤,直接通过单一的神经网络预测出图像中的任意方向的四边形文本行,高效而准确地预测文本区域。EAST算法的网络结构分为特征提取层、特征融合层和输出层三个部分。特征提取层采用PVANet网络,对输入图片进行特征提取;特征融合层采用U-Net模型,对提取的最后一层特征图进行上采样;输出层通过卷积核大小为1x1的卷积输出一个1通道的置信度得分图和一个多通道的几何特征图。
模型
RNNLM
RNNLM利用递归神经网络(RNN)构建语言模型,能有效表示词汇历史并编码长时间上下文模式。与前馈神经网络语言模型(NNLM)仅表征固定数量的历史词汇不同,RNNLM的隐层可以捕捉全部历史词汇,从而理论上能处理更复杂的序列模式,如依赖历史中变化位置的词语。由于它能从文本序列中学习并记忆关键词汇的高级模式,这种能力使得RNNLM在处理自然语言中展现出更高的效率和准确性。
CTPN
CTPN是一种用于文本检测的深度学习模型,旨在检测图像中的文本行和文本区域。CTPN结合了CNN和RNN的特性,能够有效地处理不定长度的文本行,其核心思想是通过卷积神经网络提取图像中的特征,并通过循环神经网络对特征序列进行建模。CTPN首先利用卷积神经网络提取图像特征,然后将特征序列输入到双向循环神经网络(BiLSTM)中,对序列进行逐步处理和整合。最后,CTPN通过分支网络预测文本行的边界框和得分。CTPN在文本检测任务中表现出较好的性能和鲁棒性,尤其适用于场景文本的检测,它能够有效地检测出图像中的文本行,并提供其位置信息。
CRNN
CRNN是一种常用于文本识别任务的深度学习模型,它结合了CNN和RNN,用于实现端到端的文本识别和转录。CRNN由卷积层、循环层和全连接层三部分组成。卷积层用于提取输入图像的特征,捕捉字符的视觉信息;循环层利用RNN结构处理序列数据,对特征序列进行建模;全连接层将RNN输出映射到字符分类。CRNN模型可以对任意长度的文本进行识别,无需对文本进行分割或其他预处理。CRNN在文本识别任务中表现出很好的性能,尤其在不规则文本场景中,如自然场景图像中的文本、手写文本等。
Seglink
SegLink是一个深度神经网络文本检测模型,它将一个文本行视为多个文本片段的集合,这些片段可以是一个字符或文本行的任何部分,这些文本片段被连接在一起,形成一个文本行。该类算法需要在不同尺度的特征层上设置一些固定的不同尺寸、不同宽高比的锚(Anchors),然后将这些锚点和真实文本框在中心点、宽和高等信息的差异作为卷积神经网络预测的目标。
评价指标
识别正确率是OCR最重要的目标。衡量一个OCR系统性能好坏的主要指标包括拒识率、误识率、用户界面的友好性、产品的稳定性、易用性及可行性等。
OCR软件
OCR文字识别软件运用OCR技术将图片、照片上的文字内容,直接转换为可编辑文本的软件,因此可以快捷地将大批量图文内容转化成可以识别的电子文档。常用的OCR软件包括ABBYY Finereader、Adobe Acrobat Pro DC、Tesseract OCR等。
应用
文档处理及信息检索
在文档处理中,光学字符识别技术的运用能够把纸质载体文案的信息内容利用高速扫描仪转换成计算机能识别的图像文件,如JPG、TIF或合成多页的pdf文件,再利用光学字符识别软件的字符识别功能把不能编辑的图像文件和PDF文件中每个字符与标准的汉字数据库中字符对比,截取相同形状的字符并保存在文本编辑软件中,保持能编辑的状态,并可以进行自动标引或运用各类数据库软件的搜索引擎针对字符搜索,以达到文档信息的全文检索。
在扫描生成页面后,光学字符识别技术针对印刷体的页面文件般识别率可达98%以上,在自动纠错、人工校对后,基本符合文档数字化的要求。与人工单字输入法相比,工作效率提高近十倍,工作强度成倍减少。纯人工输入连续工作的后果是差错率的居高不下,从而影响文档信息全文的检索和使用,而运用光学字识别技术进行文档全文数字化,可以帮助工作人员长时间连续工作。
港口作业
OCR可以通过相机拍摄待检目标的照片,识别货运集装箱上唯一标识的序列数字,实时记录设备的状况,其主要优势在于无需对设备资产安装任何额外标签或设备,只需对设备资产进行视觉识别并记录,即可提供一种可靠的识别方法。由此形成和完善的码头信息链条对于改善集装箱码头的作业流程提高生产效率降低运营成本、规避责任风险、提高服务质量具有重要的应用价值。
无论在全球码头还是航运网络上,OCR应用程序都被认为是网络设备资产可视化(NAV)的必要解决方案。其主要示例包括集装箱箱号识别和跟踪、道路集卡识别。道路集卡数据识别还能够提升自动门系统,便于集卡和集装箱的高效处理;检查运输车辆的合规性;跟踪集卡排队或流转时间,以便操作员调配;在堆场、铁路或桥吊内自动完成集装箱转运。
内部审计
OCR文本识别技术在审计业务上的应用,主要包括待识别数据导入、OCR识别模块、识别数据存储及审计应用三部分。
待识别数据导入模块是OCR辅助审计系统的图像输入并将图片发布到Redis的图形通道,OCR识别模块是对图形锁片进行预处理以及文字检测。识别后,将识别文字发布到Kafaka文字通道中,审计模块订阅Kafaka中的数据进行持久化存储,持久化到分布式大数据平台HDFS中或关系数据库中,最后开发审计数据应用接口供审计平台进行分析利用。
财会
OCR文本识别技术在会计业务上的应用,主要是进行凭证识别,如增值税发票识别、支票识别、银行票据识别、营业执照识别等。融合大数据人工智能云计算等新技术,OCR文本识别技术识别并存储纸质资料,拓展会计数据来源,丰富完善数据维度,降低企业内部风险,提高财会服务水平。
OCR技术在财会领域的应用主要分成识别确认模块和记账应用模块。在识别确认模块,OCR识别了发票代码、发票号码、发票日期、金额、税额、总额、购方税号、销方税号八个识别项后,形成结构化数据,用于认证、记账等流程;在记账应用模块,财务部门可以利用OCR识别结果,提升记账信息集成度,提高核算记账效率和质量。
扫描识读
在某些应用中,例如在需要人类识读的应用中,或者在使用和保持条形码标签的成本过高和实际行不通的情况下,OCR支持模型对照和特点提取两个主要方式。模型对照是看到印刷的字体,并将这个图像与在数据库中可能的选择对照联会;特点提取是寻找结构特点和它们的综合以识别字体。字体是在光源下被扫描识读的,这种识别字体的系统是基于上述一个或两个识读方式,信息被转换成电子形式,以便输入到计算机中。
OCR识读器大致有篇页识读器、业务文件识读器和手持式识读器3种类型。篇页识读器扫描整页的文字,或者直接识读纸张文件,或者识读在计算机系统中存储的数字化文件;业务文件识读器扫描相对短的信息,如付款会计凭证上的账号;手持式识读器方便数据输入,图书馆在登记借书信息时,使用它来扫描国际图书标准号码(ISBN)。
发展前景
挑战
多方向的文字检测问题:虽然OCR技术已经随着深度学习的发展取得了飞速的进步,但是对于复杂背景的图片识别还存在诸多的问题。在文字检测领域,对于多方向的文本、不规则的文本,检测难度很大;对于小文本的检测十分困难,对于字体变化很大的文本难以检测,很难在一个算法中同时解决这些问题。
多类型的文本识别问题:在字符识别方面,当图片中存在背景干扰遮挡、聚焦模糊等情况时,都会极大地增加识别难度。
鲁棒性和推广性较差:深度学习虽然是复杂背景文字检测识别的主流方法,但基于学习的方法依赖于大量优质样本数据,且在某一测试集上表现良好的数据,更换一个数据集上表现就可能很不好。因此深度学习的方法鲁棒性和推广性不够好,且极易受到噪声的影响。
低质量输入图像:低分辨率的文本图像,如20 dpi的扫描图像,对OCR系统构成挑战,因为这些图像难以清晰地显示出字符的细节。
手写文字识别:手写文字识别一直是OCR领域的一个重要挑战。传统的手写体识别方法依赖于图像分割和隐藏马尔可夫模型(HMM)等技术,对于阿拉伯帝国手写体文本,由于其独特的书写特性,如连续性和基线概念的缺乏,识别变得更加复杂。
实时处理需求:OCR软件的准确分析文档的能力取决于原始文档的状况和/或数字文件的质量。很少有数字输出能达到100%的准确率,系统本身也无法进行这种检查。对于大量文本或原始文本质量较差的情况,编辑/校正过程可能需要相当长的时间。
其他:在安全方面,OCR技术有可能被攻击者利用来从文件中提取私人信息;在成本方面,高级OCR软件可能价格昂贵,而商业解决方案可能需要持续的许可或订阅费用;此外,OCR系统通常缺乏上下文意识,这可能导致它们误读那些含义取决于周围文本上下文的单词或短语。
方向
端到端的检测与识别:OCR存在大量挑战和机遇,端到端的研究比较少,许多端到端的研究实际上还是用的伪到端的方法。但是端到端的检测与识别具有很高的应用价值,可能是未来的发展趋势之一。
文字检测的评价标准:光学字符识别作为计算机视觉中的一个重要研究方向,近年来逐渐成为研究热点。随着信息化的普及,OCR的应用场景也越来越广阔,尤其是场景文字识别研究这个分支,有越来越多的学者投入到OCR的研究当中,如文字检测的评价标准。基于学习文字检测算法依赖大量数据,如何做数据集的增广对于OCR的研究至关重要。
OCR与开放场景的文字识别相结合:例如协助盲人和视障人士、护照、车牌、发票、银行对帐单、名片和自动车牌识别等,用于交通、户外消费、自动驾驶等场景。
深度学习人工智能的应用:未来OCR发展将依托深度学习和人工智能的技术,超越传统的字符匹配范畴。深度学习技术通过构建模拟人类大脑功能的神经网络,使OCR算法不再依赖于历史模式来验证准确性。无论是简易的OCR PDF工具,还是由光学字符识别技术驱动的高级软件,都将持续进行独立思考和学习。
无障碍技术:未来OCR软件将会为盲人和视障用户提供更好的体验,在识别过程中,它不仅要考虑语言和文本结构,还需纠正拼写错误的单词,从而确保最准确的信息传达给用户。对于盲人或视障人士而言,他们可以利用自适应技术设备轻松扫描文本并访问所需内容。这些设备不仅可以放大计算机屏幕上的文字,还能提供语音输出或盲文转换,以满足不同用户的需求。
相关概念
参考资料
The evolution of document capture.parashift.io.2024-05-30
OCR.viso.ai.2024-05-30
OCR 是什么?.亚马逊.2024-06-06
通用文字识别.文通科技.2024-05-25
Optical Character Recognition (OCR): An Introduction.guides.libraries.psu.edu.2024-05-30
目录
概述
历史沿革
萌芽阶段
大规模生产与商业系统
发展应用阶段
标准成熟阶段
工作原理
传统OCR
图像输入
预处理
文字识别
版面还原
后处理、校对
深度学习OCR
相关技术
图像处理技术
图像二值化
连通域分析
投影分析
基于神经网络的字符识别技术
特征提取与神经网络结合法
直接图像输入法
识别算法
算法
模板匹配算法
支持向量机
KNN算法
Otsu算法
MSER算法
SIFT算法
FCN算法
EAST算法
模型
RNNLM
CTPN
CRNN
Seglink
评价指标
OCR软件
应用
文档处理及信息检索
港口作业
内部审计
财会
扫描识读
发展前景
挑战
方向
相关概念
参考资料