`

什么是OCR

阅读更多

OCR

添加义项 这是一个多义词 ,请在下列义项 中选择浏览
  1. 1. 光学字符识别
  2. 2. 牛津、剑桥和RSA考试局
  3. 3. 超固结比

 

1. 光学字符识别

编辑本义项

OCR

求助编辑 百科名片

OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法 将形状翻译成计算机文字的过程;即,对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。如何除错或利用辅助信息提高识别正确 率,是OCR最重要的课题,ICR(Intelligent Character Recognition)的名词也因此而产生。衡量一个OCR系统性能好坏的主要指标有:拒识率、误识率、识别速度、用户界面的友好性,产品的稳定性,易 用性及可行性等。

编辑本段 发展历史

   OCR的概念是在1929年由德国科学家Tausheck最先提出来的,后来美国科学家Handel也提出了利用技术对文字进行识别的想法。而最早对印 刷体汉字识别进行研究的是IBM公司的Casey和Nagy,1966年他们发表了第一篇关于汉字识别的文章,采用了模板匹配法识别了1000个印刷体汉 字。   早在60、70年代,世界各国就开始有OCR的研究,而研究的初期,多以文字的识别方法研究为 主,且识别的文字仅为0至9的数字。以同样拥有方块文字的日本为例,1960年左右开始研究OCR的基本识别理论,初期以数字为对象,直至1965至 1970年之间开始有一些简单的产品,如印刷文字的邮政编码识别系统,识别邮件上的邮政编码,帮助邮局作区域分信的作业;也因此至今邮政编码一直是各国所 倡导的地址书写方式。    20世纪70年代初,日本的学者开始研究汉字识别,并做了大量的工作。中国在OCR技术方面的 研究工作起步较晚,在70年代才开始对数字、英文字母及符号的识别进行研究,70年代末开始进行汉字识别的研究,到1986年汉字识别的研究进入一个实质 性的阶段,不少研究单位相继推出了中文OCR产品.早期的OCR软件,由于识别率及产品化等多方面的因素,未能达到实际要求。同时,由于硬件设备成本高, 运行速度慢,也没有达到实用的程度。只有个别部门,如信息部门、新闻出版单位等使用OCR软件。1986年以后我国的OCR研究有了很大进展,在汉字建模 和识别方法上都有所创新,在系统研制和开发应用中都取得了丰硕的成果,不少单位相继推出了中文OCR产品。进入20世纪90年代以后,随着平台式扫描仪的 广泛应用,以及我国信息自动化和办公自动化的普及,大大推动了OCR技术的进一步发展,使OCR的识别正确率、识别速度满足了广大用户的要求。[1]

编辑本段 系统构成

  汉字识别软件OCR的功能是将各种录入汉字、印刷体或手写体中每个汉字的图形或图像通过计算机辨认出来,并标出汉字类别代码。因此,汉字识别归根结底是一个图像识别问题。由于汉字信息量很大,具有不同的字形、字体,而且结构复杂,因此汉字识别的过程极其复杂。   由于扫描仪的普及与广泛应用,OCR软件只需提供与扫描仪的接口,利用扫描仪驱动软件即可。因此,OCR软件主要是由图像处理模块、版面划分模块、文字识别模块和文字编辑模块等4部分组成。   1、图像处理模块   图像处理模块主要具有文稿扫描、图像缩放、图像旋转等功能。通过扫描仪输入后,文稿形成图像文件,图像处理模块可对图像进行放大,去除污点和划痕,如果图像放置不正,可以手工或自动旋转图像,目的是为文字识别创造更好的条件,使识别率更高。   2、版面划分模块   版面划分模块主要包括版面划分、更改划分,即对版面的理解、字切分、归一化等,可选择自动或手动两种版面划分方式。目的是告诉OCR软件将同一版面的文章、表格等分开,以便于分别处理,并按照怎样的顺序进行识别。   3、文字识别模块   文字识别模块是OCR软件的核心部分,文字识别模块主要对输入的汉字进行"阅读",但不能一目 多行,必须逐行切割,对于汉字通常也是一个字一个字地辨认,即单字识别,再进行归一化。文字识别模块通过对不同样本汉字的特征进行提取,完成识别,自动查 找可疑字,具有前后联想等功能。   4、文字编辑模块   文字编辑模块主要对OCR识别后的文字进行修改、编辑,如系统识别认为有误,则文字会以醒目的红色或蓝色显示,并提供相似的文字供选择,选择编辑器供输出等[1]

编辑本段 工作流程

  一个OCR识别系统,其目的很简单,只是要把影像作一个转换,使影像内的图形继续保存、有表格则表格内资料及影像内的文字,一律变成计算机文字,使能达到影像资料的储存量减少、识别出的文字可再使用及分析,当然也可节省因键盘输入的人力与时间。   从影像到结果输出,须经过影像输入、影像前处理、文字特征抽取、比对识别、最后经人工校正将认错的文字更正,将结果输出。   配套软件   OCR-全能图文互转特别版V10.08-PDFocrjlkuo及模块 VBBS ebs keyvbjoip - 10.09

影像输入

  欲经过OCR处理的标的物须透过光学仪器,如影像扫描仪、传真机或任何摄影器材,将影像转入计算机。科技的进步,扫描仪等的输入装置已制作的愈来愈精致,轻薄短小、品质也高,对OCR有相当大的帮助,扫描仪的分辨率使影像更清晰、扫除速度更增进OCR处理的效率。    影像前处理:影像前处理是OCR系统中,须解决问题最多的一个模块,从得到一个不是黑就是白的 二值化影像,或灰阶、彩色的影像,到独立出一个个的文字影像的过程,都属于影像前处理。包含了影像正规化、去除噪声、影像矫正等的影像处理,及图文分析、 文字行与字分离的文件前处理。在影像处理方面,在学理及技术方面都已达成熟阶段,因此在市面上或网站上有不少可用的链接库;在文件前处理方面,则凭各家本 领了;影像须先将图片、表格及文字区域分离出来,甚至可将文章的编排方向、文章的提纲及内容主体区分开,而文字的大小及文字的字体亦可如原始文件一样的判 断出来。    文字特征抽取:单以识别率而言,特征抽取可说是 OCR的核心,用什么特征、怎么抽取,直接影响识别的好坏,也所以在OCR研究初期,特征抽取的研究报告特别的多。而特征可说是识别的筹码,简易的区分可 分为两类:一为统计的特征,如文字区域内的黑/白点数比,当文字区分成好几个区域时,这一个个区域黑/白点数比之联合,就成了空间的一个数值向量,在比对 时,基本的数学理论就足以应付了。而另一类特征为结构的特征,如文字影像细线化后,取得字的笔划端点、交叉点之数量及位置,或以笔划段为特征,配合特殊的 比对方法,进行比对,市面上的线上手写输入软件的识别方法多以此种结构的方法为主。    对比数据库:当输入文字算完特征后,不管是用统计或结构的特征,都须有一比对数据库或特征数据库来进行比对,数据库的内容应包含所有欲识别的字集文字,根据与输入文字一样的特征抽取方法所得的特征群组。

对比识别

   这是可充分发挥数学运算理论的一个模块,根据不同的特征特性,选用不同的数学距离函数,较有名的比对方法有,欧式空间的比对方法、松弛比对法 (Relaxation)、动态程序比对法(Dynamic Programming,DP),以及类神经网络的数据库建立及比对、HMM(Hidden Markov Model)…等著名的方法,为了使识别的结果更稳定,也有所谓的专家系统(Experts System)被提出,利用各种特征比对方法的相异互补性,使识别出的结果,其信心度特别的高。    字词后处理:由于OCR的识别率并无法达到百分之百,或想加强比对的正确性及信心值,一些除错 或甚至帮忙更正的功能,也成为OCR系统中必要的一个模块。字词后处理就是一例,利用比对后的识别文字与其可能的相似候选字群中,根据前后的识别文字找出 最合乎逻辑的词,做更正的功能。    字词数据库:为字词后处理所建立的词库。

人工校正

   OCR最后的关卡,在此之前,使用者可能只是拿支鼠标,跟着软件设计的节奏操作或仅是观看,而在此有可能须特别花使用者的精神及时间,去更正甚至找寻可 能是OCR出错的地方。一个好的OCR软件,除了有一个稳定的影像处理及识别核心,以降低错误率外,人工校正的操作流程及其功能,亦影响OCR的处理效 率,因此,文字影像与识别文字的对照,及其屏幕信息摆放的位置、还有每一识别文字的候选字功能、拒认字的功能、及字词后处理后特意标示出可能有问题的字 词,都是为使用者设计尽量少使用键盘的一种功能,当然,不是说系统没显示出的文字就一定正确,就像完全由键盘输入的工作人员也会有出错的时候,这时要重新 校正一次或能允许些许的错,就完全看使用单位的需求了。

结果输出

   有人只要文本文件作部份文字的再使用之用,所以只要一般的文字文件、有人要漂漂亮亮的和输入文件一模一样,所以有原文重现的功能、有人注重表格内的文 字,所以要和Excel等软件结合。无论怎么变化,都只是输出档案格式的变化而已。如果需要还原成原文一样格式,则在识别后,需要人工排版,耗时耗力。

编辑本段 中文识别

资料录入

  文献资料的数字化录入,一般分为:    1.纯图像方式。    2.目录文本、正文图像方式。    3.全文本方式。    4.全文索引方式。文本方式和图像方式的混合体。

识别过程

  书本级:中文,英文;简体,繁体;    版式级:竖排,横排;有无分栏;    行切分 字切分    识别:真正的OCR识别过程,图像信息还原成文本信息    后处理:人工干预,主要集中在前四个阶段。

识别结果决定因素

  1.图片的质量,一般建议150dpi以上    2.颜色,一般对彩色识别很差,黑白的图片较高,因此建议ocr的为黑白tif格式    3.最重要的就是字体,如果是手写识别率很低。    国内OCR识别简体差错率为万分之三,如果要求更高的精度需要投入更大的人工干预。繁体识别由于繁体字库的不统一性(民国时期的字库和现在繁体字库不统一),导致识别困难,在人工干预下,精度能达到90%以上(图文清晰情况下)。

编辑本段 识别技巧

   1.分辨率的设置是文字识别的重要前提。一般来讲,扫描仪提供较多的图像信息,识别软件比较容易得出识别结果。但也不是扫描分辨率设得越高识别正确率就 越高。选择300dpi或400dpi分辨率,适合大部分文档扫描。注意文字原稿的扫描识别,设置扫描分辨率时千万不要超过扫描仪的光学分辨率,不然会得 不偿失。下面是部分典型设置,仅供参考。    (1)1、2、3号字的文章段,推荐使用200dpi。    (2)4、小4、5号字的文章段,推荐使用300dpl    (3)小5、6号字的文章段,推荐使用400dpl    (4)7、8号字的文章段,推荐使用600dpi。    2. 扫描时适当地调整好亮度和对比度值,使扫描文件黑白分明。这对识别率的影响最为关键,扫描亮度和对比度值的设定以观察扫描后的图像中汉字的笔画较细但又不 断开为原则。进行识别前,先看看扫描得到的图像中文字质量如何,如果图像存在黑点或黑斑时或文字线条很粗很黑,分不清笔画时,说明亮度值太小了,应该增加 亮度值在试试;如果文字线条凹凸不平,有断线甚至图像中汉字轮廓严重残缺时,说明亮度值太大了,应减小亮度后再试试。    3.选好扫描软件。选一款好的适合自己的OCR软件是作好文字识别工作的基础,一般不要使用扫描仪自带的OEM软件,OEM的OCR软件的功能少、效果差,有的甚至没有中文识别。    再选一个图像软件,第一,OCR软件不能识别所有的扫描仪;第二,也是最关键的,利用图像软件的扫描接口扫描出来的图像便于处理。    4.如果要进行的文本是带有格式的,如粗体、斜体、首行缩进等,部分OCR软件识别不出来,会 丢失格式或出现乱码。如果必须扫描带有格式的文本,事先要确保使用的识别软件是否支持文字格式的扫描。也可以关闭样式识别系统,使软件集中注意力查找正确 的字符,不再顾及字体和字体格式。    5.在扫描识别报纸或其他半透明文稿时,背面的文字透过纸张混淆文字字形,对识别会造成很大的障碍。遇到该类扫描,只要在扫描原稿的背面附。盖一张黑纸,扫描时,增加扫描对比度,即可减少背面模糊字体的影响,提高识别正确率,    6.一般文本扫描原稿都为黑、白两色原稿,但是在扫描设置时却常将扫描模式设为灰度模式。特别 是在原稿质量较差时,使用灰度模式扫描,并在扫描软件处理完后再继续识别,这样会得到较好的识别正确率。值得注意的是OCR识别软件可以自己确定阀值,几 个百分点的阀值差异,可能就会影响识别的正常进行。当然,得到的图像文件的大小会比黑白文件大很多。在进行大批量文稿扫描时,必须对原稿进行测试,找到最 佳的阀值百分比。    7.遇到图文混排的扫描原稿,首先明确使用的识别软件是否支持自动分析图文这一功能。如果支持的话,在进行这类扫描识别时,OCR软件会自动计算出文本的内容、位置和先后顺序。文字部分可以按照标示顺序正常识别。    8.手动选取扫描区域会有更好识别效果。设置好参数后,先预览一下,然后开始选取扫描区域。不 要将要用的文章一股脑儿选在一个区域内,因为现在的文章排版为了追求更好的视觉效果,使用图文混排的较多,扫成一幅图像会影响OCR识别。因此,要根据实 际情况将版面分成N个区域,怎么划分区域呢?每一区域内的文字字体、字号最好一致,没有图形、图像,每一行的宽度一致,遇到长短不一,再细分,一般一次最 多可扫描10个选区。根据不同情况,合理地设置识别区域的顺序。不要嫌这个过程太烦,那可是提高识别率的有效手段。注意各识别区域不能有交叉,做到一切觉 得完好以后再进行识别。这样一般的识别率会在95%以上,对于识别不正确的文字进行校对后,就可以进入相应的文字处理软件进行所需的处理了。 9.在放置 扫描原稿时,把扫描的文字材料一定要摆放在扫描起始线正中,以最大限度地减小由于光学透镜导致的失真。同时应保护扫描仪玻璃的干净和不受损害。文字有一定 角度的倾斜,或者是原稿文字部分为不正规排版,必须在扫描后使用旋转工具,进行纠正;否则OCR识别软件会将水平笔划当做斜笔划处理,识别正确率会下降很 多。建议用户尽量将扫描原稿放正,用工具旋转纠正会降低图像质量,使字符识别更加困难。    10.先"预览"整体版面,选定要扫描的区域,再用"放大预览"工具,选择一小块进行放大显示 到全屏幕,观察其文字的对比度,文字的深浅浓度,据情况调整"阀值"的大小,最终要求文字清晰,不浓(文字成团),不淡(文字断笔伐),一般在"阀 值"80左右为宜,最后再扫描。    11.用工具擦掉图像污点,包括原来版面中的不需要识别的插图、分隔线等,使文字图像中除了文字没有一点多余的东西;这可以大提高识别率并减少识别后的修改工作。    12.如果要扫描印刷质量稍微差一些的文章,比如说报纸,扫描的结果将不会黑白分明,会出现大 量的黑点,而且在字体的笔画上也会出现粘连现象,这两项可是汉字识别的大忌,将严重影响汉字识别的正确率。为获得较好的识别结果,必须仔细进行色调调节, 反复扫描多次才能获得比较理想的结果。另外由于报纸很薄且大部分纸质不高,导致扫描仪上盖板不能完全压住报纸(有缝隙),所以一般情况下报纸的扫描识别效 果没有杂志的效果好。解决办法是在报纸上压一至两本16K的杂志,效果还是不错的。

分享到:
评论

相关推荐

    基恩士 OCR 识别原理介绍

    基恩士OCR(光学字符识别)技术是一种在工业生产中广泛应用的图像处理技术,主要用于自动识别和验证印在产品上的字符信息,如批号、日期、型号等。OCR技术能够大大提高生产效率,减少人工检查的错误率,尤其适用于...

    西门子之如何避免丢失已保存的OCR字符?.pdf

    1. 什么是OCR技术? OCR技术是将扫描图像中的打印或书写字符转换成机器编码字符的一种技术。它广泛用于各种自动化和数字文档管理领域,可以极大地提高数据录入的效率和准确性。 2. 西门子OCR读卡器传感器的作用? ...

    百度ocr图片文字识别

    首先,我们要理解什么是OCR。OCR(Optical Character Recognition)是通过扫描、拍照或捕获图像中的文本,然后利用复杂的算法和模式识别技术将其转换为机器编码的文本。百度OCR作为业界领先的服务,其准确度高、识别...

    前端如何直接选中复制图片中的文字:前端OCR实现指南

    首先,让我们了解一下什么是OCR技术。OCR技术是一种将图像中的打印或手写文字转换成机器编码文本的技术。它广泛应用于文档管理、自动数据录入以及在历史文献数字化等领域。随着技术的进步,OCR的准确率和效率都有了...

    OCR识别 Nicomsoft OCR

    **OCR技术概述** OCR(Optical Character Recognition,光学字符识别)是一种计算机技术,它能够将图像中的打印或手写文字转换成机器可编辑的文本格式。这种技术在文档数字化、表格处理、发票识别、身份证读取等...

    WpfApplication1_ocr识别_OCR_OCR识别_

    **OCR技术详解** OCR(Optical Character Recognition,光学字符识别)是一种计算机技术,它能够将图像中的打印或手写文字转换成机器可编辑的文本格式。在“WpfApplication1_ocr识别_OCR_OCR识别_”这个项目中,...

    OCR把图片变成文本的工具 特点:识别率高

    首先,我们要理解什么是OCR识别率。识别率是指OCR软件正确识别图像中字符的能力,通常以百分比表示。一个高识别率的OCR工具能够准确地将图片中的文字转化为与原文本几乎一致的文本格式,减少人工校对的工作量。高...

    PyPI 官网下载 | chineseocr-0.0.1.tar.gz

    首先,我们需要了解什么是OCR(Optical Character Recognition,光学字符识别)。OCR技术是一种通过扫描、分析、识别图像中的字符,将其转换为可编辑和搜索的文本格式的技术。中文OCR则特指针对中文字符的这种技术,...

    天若OCR开源版V5.0.0

    天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR开源版V5.0.0天若OCR...

    ocr_python.tar.gz_OCR_ocr python_ocr_python_python_python ocr

    OCR(Optical Character Recognition,光学字符识别)是计算机科学领域的一种技术,用于将图像中的文本转换为可编辑、可搜索的机器编码文本。在Python中,有许多库支持OCR功能,使得开发者可以方便地在项目中集成...

    使用Python调用微信本地ocr服务.zip

    使用Python调用微信本地ocr服务.zip使用Python调用微信本地ocr服务.zip使用Python调用微信本地ocr服务.zip使用Python调用微信本地ocr服务.zip使用Python调用微信本地ocr服务.zip使用Python调用微信本地ocr服务.zip...

    MATLABOCR.rar_OCR_Single and Single_matlab ocr_ocr font_ocr in m

    标题中的“MATLABOCR.rar_OCR_Single and Single_matlab ocr_ocr font_ocr in m”揭示了这个压缩包包含的是一个使用MATLAB编写的OCR(Optical Character Recognition,光学字符识别)程序,主要针对单个数字和字符的...

    OCR接口的配置文件 ,OCR接口的配置文件

    OCR接口的配置文件是用于设定OCR(Optical Character Recognition,光学字符识别)系统与外部应用交互的关键要素。在深入探讨之前,我们先理解OCR的基本概念:OCR技术是一种将图像中的文字转换为机器可读文本的技术...

    C# 中文文字识别OCR

    在IT领域,光学字符识别(OCR)是一种技术,它能够将图像中的文本转换为机器可编辑的文本。在这个场景中,我们关注的是C#语言下的中文文字识别OCR。C#作为一个强大且灵活的编程语言,提供了多种库和框架来实现OCR...

    Aspose.OCR破解版

    Aspose.OCR是一款字符识别组件,它使得开发人员可以添加OCR功能到他们的ASP.NET Web应用程序、web服务和windows应用程序中。它提供了一个简单的类集用于控制字符识别。Aspose.OCR目的是为那些需要在他们自己的应用...

    C# winform OCR文字识别

    在IT领域,OCR(Optical Character Recognition,光学字符识别)技术是一种将图像中的文本转换为机器编码文本的技术,常用于扫描文档、图片等场景。在本项目“C# winform OCR文字识别”中,我们将探讨如何利用C#编程...

    Java调用OCR进行图片识别

    Java调用OCR进行图片识别 Java调用OCR进行图片识别是指使用Java语言通过Tesseract-OCR对图片进行识别的技术。下面是相关知识点的详细解释: 一、Tesseract-OCR简介 Tesseract-OCR是一个开源的OCR(Optical ...

    煎鱼OCR v1.13_OCR_

    《煎鱼OCR v1.13:高效便捷的文字识别工具》 在数字化时代,文本信息的快速获取与处理成为日常工作中不可或缺的一部分。OCR(Optical Character Recognition,光学字符识别)技术应运而生,它能将扫描或拍摄的图像...

    muggle-ocr-1.0.3 muggle_ocr库下载_验证码识别_源码

    **muggle_ocr库详解与验证码识别技术** `muggle-ocr`是一个专门针对Python爬虫开发的验证码识别库,其版本为1.0.3。这个库的主要目标是帮助开发者在进行网络爬虫时有效地识别和处理网页上的验证码,从而突破网站的...

    C++ OCR 文字识别

    在"C++ OCR 文字识别"项目中,可能已经包含了这些步骤的实现,以及必要的库和API,例如Tesseract OCR,这是一个开源的OCR引擎,支持多种语言,并且提供C++ API供开发者使用。Tesseract具有良好的社区支持和丰富的...

Global site tag (gtag.js) - Google Analytics