⚠️本文为稀土技能社区首发签约文章,30天内制止转载,30天后未获授权制止转载,侵权必究!
✨专栏介绍: 经过几个月的精心准备,本作者推出全新系列《浅显易懂OCR》专栏,对标最全OCR教程,详细章节如导图所示,将分别从OCR技能开展、方向、概念、算法、论文、数据集等各种角度打开详细介绍。
个人主页: GoAI | 大众号: GoAI的学习小屋 | 沟通群: 704932595 |个人简介 : 签约作者、百度飞桨PPDE、领航团团长、开源特训营导师、CSDN、阿里云社区人工智能范畴博客专家、新星方案核算机视觉方向导师等,专心大数据与人工智能常识共享。
文章目录
《浅显易懂OCR》前语常识(二):深度学习根底总结 (✨文末有深度学习总结导图福利!)
《浅显易懂OCR》前语常识(一):机器学习根底总结 (✨文末有机器学习总结导图福利!)
《浅显易懂OCR》第一章:OCR技能导论 (本篇)
本篇导读: 本篇为《浅显易懂OCR》第一章:OCR技能导论首要介绍OCR的概念、分类、运用场景、技能流程、数据集等根底常识进行介绍,便利小白或AI爱好者快速了解OCR方向常识。第二章将对OCR技能打开进一步详细介绍,欢迎我们重视!
《浅显易懂OCR》第一章:OCR技能导论
一、OCR概念介绍
OCR是核算机视觉研讨范畴的分支之一,是核算机科学的重要组成部分。OCR (Optical Character Recognition,光学字符辨认)是指电子设备查看纸上打印的字符,经过检测暗、亮的方式必定其形状,然后用字符辨认办法将形状翻译成核算机文字的进程。
简略来说,OCR辨认是指经过图画处理和方式辨认技能对光学的字符进行辨认成咱们能够处理的文字信息。 比方日常生活中,咱们运用微信长按图片进行辨认以提取文字信息用于生活沟通,就是用到OCR技能,接下来我将跟我们介绍下OCR的开展进程。
二、OCR开展进程
关于OCR技能开展进程,自己大致将其分为以下几类:
-
概念提出: OCR的概念是在1929年由德国科学家Tausheck最早提出来的,后来美国科学家Handel也提出运用技能对文字进行辨认主意。最先对印刷体汉字辨认进行研讨的是IBM公司,于1966年宣布第一篇关于汉字辨认的文章,选用模板匹配法辨认印刷体汉字。
-
开展研讨: 早在60、70年代,世界各国就开端有OCR的研讨,而研讨的初期,多以文字的辨认办法研讨为主,且辨认的文字仅为0至9的数字。以日本为例,1960年左右开端研讨OCR的根本辨认理论,初期以数字为方针,直至1965至1970年之间开端有一些简略的产品,如印刷文字的邮政编码辨认系统。
-
构成产品: 在70年代,我国开端对数字、英文字母及符号辨认进行研讨,1986年,我国提出“863”高新科技研讨方案,汉字辨认的研讨进入一个实质性阶段,相继推出中文OCR产品。前期OCR软件,因为辨认率、硬件设备成本高及产品化等多方面的要素,未能到达实践要求。
-
百家争鸣: 进入20世纪90年代之后,跟着信息自动化普及,大大推进了OCR技能的进一步开展,使OCR的辨认正确率和速度满意广阔用户需求。跟着人工智能技能不断开展,OCR软件产品已趋于成熟,能够辨认各类言语、各类场景下辨认,代表有万能扫描王、天若OCR等。
三、OCR的运用场景
3.1 OCR产品运用
衡量一个OCR系统功能好坏的首要指标有:拒识率、误识率、辨认速度、用户界面的友好性,产品的稳定性,易用性及可行性等。
OCR产品在商业价值上具有广泛的运用场景,打造一款成熟的OCR产品需求考虑从根底资源到设备接入各个环节,因而各大互联网公司纷纷推出相关技能支持或运用,掩盖金融、交通、教育、医疗等多个职业范畴。详细运用场景包含但不限于:
- 金融范畴: OCR技能能够用于银行卡辨认、身份证辨认、发票和收据辨认,以加快客户开户、贷款申请和账单处理等金融服务流程。
- 物流和交通范畴: OCR技能可用于快递单和车牌辨认,以进步物流运营功率和交通办理功率。
- 教育范畴: OCR可用于试卷批改和答题卡辨认,自动化评分和核算学生成绩。
- 医疗范畴: OCR技能能够用于医疗记载和处方辨认,协助医疗机构进步信息办理功率。
- 商业和广告范畴: OCR能够用于广告牌、产品包装袋、经营证等文本的辨认,协助企业更好地进行广告推行和品牌办理。
- 手刺扫描: OCR技能可用于扫描手刺并将其转换为联系人信息,便利用户办理和收拾。
3.2 OCR辨认分类
依据OCR的运用场景而言,OCR能够大致分红辨认特定场景下的专用辨认和多种(天然和杂乱)场景下的通用辨认。其中证件辨认以及车牌辨认是专用OCR的典型案例。
依照辨认场景区分,可分为:
-
文档文字辨认:能够将图书馆、报社、博物馆、档案馆等的纸质版图书、报纸、杂志、历史文献档案材料等进行电子化办理,完成精准地保存文献材料。
-
天然场景文字辨认:辨认天然场景图画中的文字信息如车牌、广告干词、路牌等信息。对车辆进行辨认能够完成停车场收费办理、交通流量控制指标测量、车辆定位、防盗、高速公路超速自动化监管等功能。
-
收据文字辨认:能够对增值税发票、报销单、车票等不同格局的收据进行文字辨认,能够防止财务人员手动输入大量收据信息,现在已广泛运用于财务办理、银行、金融等众多范畴。。
-
证件辨认:能够快速辨认身份证、银行卡、驾驶证等卡证类信息,将证件文字信息直接转换为可编辑文本,能够大大进步工作功率、减少人工成本、还能够实时进行相关人员的身份核验,以便安全办理。
依照文字构成办法区分,可分为:
-
规范印刷体文字的辨认(包含印刷体数字、汉字、英文);
-
手写文字的辨认(包含手写数字、汉字、英文);
-
即存在印刷体又存在手写体的文字辨认;
-
艺术体、合成文字等杂乱字体辨认;
总结:经过上述分类,咱们能够了解到不同文字的运用场景或许包含了多种文字的构成办法,文字的构成办法又包含了文字的字体,终究构成一张包含文本的图画来让咱们辨认,因而辨认起来会有不同的难度,因而。接下来咱们将对OCR难点进行评论。
3.3 OCR辨认难点
OCR辨认场景包含传统文档图画辨认与场景文本辨认技能。针对特定场景进行设计、优化以到达最好的特定场景下的效果展现。而通用OCR则运用在更多、更杂乱的场景下,拥有比较好的泛性。由于场景的不确定性,比方:图片布景极其丰富、亮度不均衡、光照不均衡、残缺遮挡、文字歪曲、字体多样等等问题,会给辨认效果带来极大的应战。
3.3.1 天然场景辨认难点:
天然场景下的文本一般出现在杂乱的布景中,且文本的字体、颜色、巨细和方向都或许不同。例如路标、广告牌和产品包装等。 不同于传统的扫描图画文本,天然场景文本因表现方式丰富,图画布景杂乱,以及图画拍照引进的搅扰要素等的影响,其辨认的难点包含但不限于以下几个方面:
-
图片布景多变: 经常面对低亮度、低对比度、光照不均、透视变形和残缺遮挡等问题,还或许会受到噪声的影响,例如风沙、雨雪等天气条件,以及拍照设备自身的噪声等,使得对其的分析与处理难度远高于传统的扫描文档图画。
-
文字曲折: 文本的布局或许存在歪曲、褶皱、换向等问题,其中的文字也或许字体多样、字号字重颜色不一的问题。
-
文本格局: 天然场景中的文字数量较多,且散布较为涣散,这使得算法的练习难度加大。针对长文本,需求处理文本行之间的连续性和上下文联系。针对多行文本,需求进行有用的文本区域分割和辨认。
-
数据规划与资源 为练习和优化深度学习OCR模型,需求大规划的数据集和充足的核算资源。但是,天然场景OCR数据集往往比较难以获取和标示,一起深度学习模型的练习也需求较大的核算开支。
3.3.2 文档文字辨认难点:
尽管一般文档辨认相较于场景文本辨认来说一般难度较小,但在特定范畴中仍存在许多应战。例如,针对收据扫描的方针检测,由于扫描仪分辨率低、纸张和油墨质量差等要素的影响,导致所扫描的收据质量低下。此外,字体过小以及搅扰文本也是需求考虑的问题。
此外,针对杂乱场景(杂乱版面、数学公式、表格、结构化符号/图形等)的辨认效果仍存在一定提升空间。
3.4 辨认难点处理办法:
关于上述不同场景OCR技能面对许多应战,需求更强壮算法来应对文本的多样性和布景的杂乱性。那么咱们从那些角度入手处理上述问题呢?
以下为作者简略列出几点通用的处理办法,:
- 数据增强: 经过对练习数据进行增强,如随机旋转、缩放、裁剪、变换和加噪声等,能够使OCR模型更好地习惯不同的图画条件和多样性。
- 多标准检测: 设计多标准的检测模型能够在不同巨细和分辨率的文本实例中进行检测,然后进步对不同文本巨细和形状的习惯性。
- 布景按捺: 选用布景按捺技能,经过将注意力会集在文本区域,疏忽或削弱布景搅扰,然后进步文本检测的准确性。
- 多使命学习: 将文本检测和辨认使命结合起来进行多使命学习,能够更好地处理杂乱场景中的文本实例,并进步整体功能。
- 引进先验常识: 运用先验常识,如字符形状、文本的核算信息等,对文本进行建模,能够进步对杂乱文本实例的了解和辨认。
- 搬迁学习|强化学习: 运用搬迁学习或强化学习技能来优化OCR模型,使其能够在不同场景下进行更好的习惯和调整。
四、OCR技能流程
上述介绍完OCR辨认难点及对应处理办法,接下来咱们将侧重对OCR技能流程进行介绍。典型的OCR技能pipline如下图所示:
其中,文本检测和辨认是OCR技能的两个重要核心技能。
4.1 图画预处理:
图画预处理是OCR流程的第一步,用于进步字符辨认的准确性。常见的预处理操作包含灰度化、二值化和去噪。
-
灰度化将五颜六色图画转换为灰度图画,将每个像素的RGB值转换为相应的灰度值。在灰度图画中每个像素只有一个灰度值,简化后续的处理过程。
-
二值化将灰度图画转换为二值图画,将灰度值高于某个阈值的像素设为白色,低于阈值的像素设为黑色。这将图画转换为黑白二值图画,便利后续的文本定位和字符分割。
-
去噪是为了减少图画中的噪声和搅扰,以进步后续处理的准确性。常用的去噪办法包含中值滤波、高斯滤波和形态学操作。
此外,针对不规则文本辨认,在预处理阶段能够先进行校对操作再进行辨认。
4.2 文字检测
文本检测的使命是定位出输入图画中的文字区域。
近年来,运用深度学习进行文本检测成为主流技能,一类办法将文本检测视为方针检测中的一个特定场景,依据通用方针检测算法进行改善适配,如TextBoxes 依据一阶段方针检测器SSD 算法,调整方针框使之合适极点长宽比的文本行,CTPN则是依据Faster RCNN架构改善而来。但是文本检测与方针检测在方针信息以及使命自身上仍存在一些差异,如文本一般长宽比较大,往往呈“条状”,文本行之间或许比较密集,曲折文本等,因而又衍生了很多专用于文本检测的算法,如EAST、PSENet、DBNet 等等。
注:文字检测详细介绍将在后续章节更新。
4.3 文字辨认
文本辨认的使命是辨认出图画中的文字内容。
文本辨认一般输入来自于文本检测得到的文本框截取出的图画文字区域。文本辨认一般能够依据待辨认文本形状分为规则文本辨认和不规则文本辨认两大类。不规则文本场景具有很大的应战性,也是目前文本辨认范畴的首要研讨方向。
-
规则文本首要指印刷字体、扫描文本等,文本大致处在水平线位置,如下图左半部分;
-
不规则文本往往不在水平位置,存在曲折、遮挡、含糊等问题,如下图右半部分。
注:文字辨认详细介绍将在后续章节更新。
五、OCR常见数据集
5.1 数据集介绍
5.1.1 规则数据集
- IIIT5K-Words (IIIT) 2000 for Train; 3000 for Test
- Street View Text (SVT) 257 for Train; 647 for Test
- ICDAR 2003(IC03) 、ICDAR2013 (IC13)
以ICDAR2013为例:
该数据集由500张左右英文标示的天然场景图片构成,标示方式为两点水平标示,坐标格局为左上角,和右下角,
5.1.2 不规则数据集
- ICDAR2015 (IC15) 4468 for Train; 2077 for Test;
- SVT Perspective (SP) 645 for Test
- CUTE80 (CT) 288 for Test
以ICDAR2015为例:
该数据集由1500张(练习1000,测试500)英文标示的天然场景图片构成,标示方式为四点标示,坐标格局顺次为为左上角,右上角,右下角和左下角。如下图所示:
5.1.3 合成数据集
SynthText(ST) 5.5million个图画,样例图如下:
5.1.4中文场景数据集
Chinese Text in the Wild (CTW):
CTW数据集是一个针对中文场景文本的数据集,用于文本检测和辨认使命。CTW数据集包含了超过40,000张高分辨率的中文场景图画,这些图画从不同来源和环境中获取,具有广泛的多样性。
注:以上仅简略罗列部分数据集,详细介绍将在后续章节更新。
六、常见OCR辨认模型评估对比
注:评价指标为准确率。
Regular Dataset | Irregular dataset | ||||||||
---|---|---|---|---|---|---|---|---|---|
Model | Year | IIIT | SVT | IC13(857) | IC13(1015) | IC15(1811) | IC15(2077) | SVTP | CUTE |
CRNN | 2015 | 78.2 | 80.8 | – | 86.7 | – | – | – | – |
ASTER(L2R) | 2015 | 92.67 | 91.16 | – | 90.74 | 76.1 | – | 78.76 | 76.39 |
CombBest | 2019 | 87.9 | 87.5 | 93.6 | 92.3 | 77.6 | 71.8 | 79.2 | 74 |
ESIR | 2019 | 93.3 | 90.2 | – | 91.3 | – | 76.9 | 79.6 | 83.3 |
SE-ASTER | 2020 | 93.8 | 89.6 | – | 92.8 | 80 | 81.4 | 83.6 | |
DAN | 2020 | 94.3 | 89.2 | – | 93.9 | – | 74.5 | 80 | 84.4 |
RobustScanner | 2020 | 95.3 | 88.1 | – | 94.8 | – | 77.1 | 79.5 | 90.3 |
AutoSTR | 2020 | 94.7 | 90.9 | – | 94.2 | 81.8 | – | 81.7 | – |
Yang et al. | 2020 | 94.7 | 88.9 | – | 93.2 | 79.5 | 77.1 | 80.9 | 85.4 |
SATRN | 2020 | 92.8 | 91.3 | – | 94.1 | – | 79 | 86.5 | 87.8 |
SRN | 2020 | 94.8 | 91.5 | 95.5 | – | 82.7 | – | 85.1 | 87.8 |
GA-SPIN | 2021 | 95.2 | 90.9 | – | 94.8 | 82.8 | 79.5 | 83.2 | 87.5 |
PREN2D | 2021 | 95.6 | 94 | 96.4 | – | 83 | – | 87.6 | 91.7 |
Bhunia et al. | 2021 | 95.2 | 92.2 | – | 95.5 | – | 84 | 85.7 | 89.7 |
Luo et al. | 2021 | 95.6 | 90.6 | – | 96.0 | 83.9 | 81.4 | 85.1 | 91.3 |
VisionLAN | 2021 | 95.8 | 91.7 | 95.7 | – | 83.7 | – | 86 | 88.5 |
ABINet | 2021 | 96.2 | 93.5 | 97.4 | – | 86.0 | – | 89.3 | 89.2 |
MATRN | 2021 | 96.7 | 94.9 | 97.9 | 95.8 | 86.6 | 82.9 | 90.5 | 94.1 |
七、主流OCR辨认运用渠道
- 百度开放渠道:PaddleOCR
- 商汤科技OpenMMLab : MMOCR
- 谷歌开源OCR引擎:Tesseract
后续系列将顺次继续详细介绍,并包含运用上述框架进行OCR项目实战!
八、OCR资源推荐
作者收拾了以下OCR方面的资源:
优秀OCR资源推荐:
- OCR专栏:《深度浅出OCR》
- OCR合集: handong1587
- Awesome-Scene-Text-Recognition
论文相关:
- OCR论文更新 :链接
- 顶会会议文章:ICDAR、CVPR、ECCV、ICCV等
- Arxiv搜索引擎:www.arxiv-sanity.com/
九、国内OCR范畴优秀学者
白翔,黄伟林,金连文,刘成林,殷绪成
注:不分先后顺序
十、 OCR大模型未来开展
现在,大模型的爆火给OCR范畴带来的应战与机会,在运用大模型前,咱们要知道大模型是如何阅览文档的。因而,针对OCR的模型的设计依然很重要。
开展与机会
-
将大模型运用到OCR范畴,其辨认精度或许不高,还没有大规划验证
-
大模型仍有很多不足,不适用一切范畴
-
充分运用大模型:特征表明、言语才能
-
不同使命的专用模型和学习算法:依然大有可为
十一、OCR材料收拾共享:
本篇文章最后,免费共享博主自己参阅开源材料收拾的OCR相关论文汇总,将其按年份、数据集、所属办法及论文关键词等信息进行全面分类总结,最近几年论文正在收拾中,欢迎我们继续重视和学习沟通!另外,文中如有过错,欢迎指正!
总结:本篇《浅显易懂OCR》第一章:OCR技能导论首要介绍OCR的概念、分类、运用场景、技能流程、数据集及资源等进行介绍。第二章将对OCR技能打开详细介绍,便利学习者快速了解OCR方向常识。