wanghaisheng / awesome-ocr

A curated list of promising OCR resources
http://wanghaisheng.github.io/ocr-arxiv-daily/
MIT License
1.66k stars 351 forks source link

Adnan Ul-Hasan的博士论文-第三章 健壮OCR系统所面临的挑战 #6

Closed wanghaisheng closed 7 years ago

wanghaisheng commented 8 years ago

Baird and Tambore [BT14]中指出要做一个健壮的文档图片识别系统存在很多硬骨头要啃。这部分主要围绕着两类挑战: 1)文字本身带来的挑战(语言学中的文字(script)、书写系统(writing system)和语言(language)) 2)缺少标记数据带来的挑战

文字本身的话就包括书写规则和字素graphemes。一些研究人员 [BR14]将graphemes 字素结构称之为文字的形态学 morphology,字素会直接影响 OCR 系统的效果。OCR 算法要处理复杂的文字本身就会存在很大问题。另外,一些文字的书写规则也会产生连体字符ligatures和复合型文字compound shapes,进一步将识别复杂化。

还有就是历史文档也给现代文字带来了一些额外的问题,一份文档的年代会在多方面影响文本,比如文本行的变形,低对比度,页面损坏引起的信息缺失,page thinning, bleed through, shine through, and ink spread. 另外,多语言的文档也会带来复杂度。

要开发一个健壮的OCR系统,第二类问题就在于缺少标记数据/训练数据。利用有监督学习来训练 OCR 模型,文档的多样性[BT14]导致很难收集全数据的所有代表。对于很多语言文字来说缺少训练数据阻碍了 OCR系统的开发。

3.1-3.4 讨论的是 拉丁和希腊语的 OCR 存在的问题 ,这些文字 字素简单,但相似字符多、decorative styles、diacritics 导致识别困难。 3.5-3.6 介绍了南亚的文字 梵文和Urdu Nastaleeq 的OCR 存在的问题 3.7 描述了 多语种文档的 OCR

wanghaisheng commented 8 years ago

3.1 现代英语 数十年里 现代英语的文字都是 OCR 研究领域的重中之重。拉丁文字或者说罗马文字用于书写英文。目前,我们认为印刷体的拉丁文本 OCR 是一个被诸多研究人员攻破的难题。拉丁文字的语素相对其他文字简单一些。但对印刷体的英文/拉丁文 OCR的研究一直没有间断过。后面的章节会对其中尚未完全解决的问题进行说明。

3.1.1 印刷体 英文 OCR 的难题

3.1.2 现代英文的 OCR 数据库

过去这几十年里有很多 现代英文的数据库,你可以核对比较 OCR 算法的效果。本文中用到的最有名的两个如下:

default

wanghaisheng commented 8 years ago

3.2 中世纪晚期的拉丁文字

中世纪的拉丁文字包含大量的现代拉丁文中不存在的字符。见图3.2所示。大量的文献使用了中世纪的拉丁文。为了长时间保存这些文化遗产就需要对此类文档数字化。 default

3.2.1 古拉丁文 OCR 的挑战

历史文档在方方面面或多或少的影响了 OCR 系统的可靠性。

ArchaicOrthography:和其他古语种一样,很多古拉丁文中的字符现在都没有使用了。图3.2展示了15世纪拉丁文所有的字符。

3.2.2 古拉丁文的 OCR 数据库 对古籍的数字化所面临最主要的问题是缺少标记数据以及如何评估OCR算法的效果。使用人工合成的数据是一种思路,但要合成数据,你得有抄写好的数据。把这些文本抄下来本身就是很困难的,需要你对文字有很深入的了解,因此成本非常高。 IMPACT 项目旨在对欧洲各国语言的古籍进行数字化。很多工具、方法都是出自这个项目,但仍然有很多难题值得继续深入研究。

wanghaisheng commented 8 years ago

3.3 German Fraktur Script

Fraktur(https://en.wikipedia.org/wiki/Fraktur)在欧洲仍然是主流文字,尤其是16世纪和20世纪中期的德国。在德国,很多报纸的标题仍然用的是这种文字。图3.3节选自 Ersch-Gruber Encyclopedia

3.3.1 Fraktur OCR 的挑战

default

default

3.3.2 OCR 数据库

缺少 数据库 导致无法评估比较 Fraktur 文字 OCR 方法的识别率。为了训练出基于有监督学习的OCR 系统需要大量的抄写数据。人工准备数据是繁琐和乏味的。缺少ancient orthographies and scripts 使得 OCR 更加困难。需要对语言文字熟悉的专家才能够抄写数据,成本奇高。

wanghaisheng commented 8 years ago

3.4 Polytonic Greek 文字

Polytonic orthography 是monotonic orthography (modern Greek) in 1982 之前古希腊和中世纪希腊人用的最多的。

3.4.1 Polytonic Greek的 OCR 难题

在公元前 3世纪出现的诸多发音符号使得每个元音都有很多不同的又长得很接近的标记符号。这些发音符号包括 (i) the acute accent oxeia – sharp or high, (ii) the grave accent (bareia – heavy or low), (iii) the circum ex (perispomene – twisted around), (iv) the rough breathing dasi pneuma, (v) the smooth breathing psilon pneuma, (vi) the di- aeresis to indicate diphthong, and (vii) the iota subscript (hypogegrammene written under ).

希腊历史的不同时期所使用的不同的phonological and orthographical rules,这些发音符号与各种组合可以关联到14个元音字符 七个大写 七个小写的。比如: 'α' 会有如下的变种: αάἀἁἂἃἄἅἆἇὰᾶᾰᾱᾳᾀᾁᾂᾃᾄᾅᾆᾇᾲᾷᾴ. 相似字符使得字符集特别大 超过200,这就使得 OCR 非常困难。

3.4.2 Polytonic Greek的 OCR 数据库

缺少标记数据 严重阻碍了 Polytonic Greek OCR 系统的研发.希腊政府资助了一个叫OldDocPro GSL+的项目,采集了大量的标记数据来识别机打和手写的希腊古籍。到此为止,我们探讨了字素相对简单的语言文字。后面两节是针对东南亚的文字,字素相对拉丁文 希腊文要复杂的多

wanghaisheng commented 8 years ago

3.5 梵文

像Sanskrit, Hindi and Nepali 梵语、北印度语和尼泊尔语 是少数使用梵文的流行语种。诸多经典著作、科学书籍、宗教典籍都是用 Hindi/Sanskrit. 因此,数字化此类古籍的工作越来越多。

梵文是一种草书,字都是由元音和辅音构成的。但在构成字的时候元音和辅音的外形是变化的。用印度写字的过程如图3.6所示,右上角是必须用到的词汇。两个辅音’rst ’是由特殊字符‘ ◌् ’连接的,这样就去掉了第一个辅音里的内置的元音。下一步,把上面得到的与元音l ि◌ (pronounced as ‘ee’)组合,组合之后会出现在字符的最前面。类似的,辅音 t य (ya) 与元音l ◌ा (aa) 组合得到 या (yaa), 辅音त (th) 和म (ma) 组合得到 म (thma). 最后把 क (ka)加到词上去,然后再来一个横线就构成了 kriyaathmak 这个词,含义是功能性的或者实用性的。 default

3.5.1 梵文 OCR 存在的挑战

即使 梵文 OCR 需要很强烈,这块的研究赶不上对拉丁文的研究。梵文比拉丁文 希腊文要复杂的多。字符数量多太多,不同字体差异很大,如果在词中的位置不同,辅音-辅音和辅音-元音的组合形式都不一样。

3.5.2 Devanagari 的 OCR 数据库

除了语言自身的复杂度,缺少标准数据库也是一大难题。一些文献中提到过一些,但大多都是自用的,做一些试验,后面不在用了,你也拿不到。

wanghaisheng commented 8 years ago

3.6 Urdu Nastaleeq 文字

和梵文一样,Urdu Nastaleeq 文字同样也很复杂。它是书写 Urdu and Persian 语言的主流文字.8-9世纪在伊朗开发出来的。自此之后,在伊朗、巴基斯坦广泛应用在日常的报纸、书籍和其他文献中。当下来看, 我们要把 Nastaleeq script 和Naskh script 区分开来,后者是阿拉伯语的主要文字。它属于 Right-to-Left (RTL) languages ,也就是从右往左的书写顺序。但其中数字的阅读顺序是从左到右的。图3.7展示了带数字的文本行。其中数字和英文阅读顺序相同,其余文字则是从右到左的。

default

3.6.1 Nastaleeq OCR 存在的难题

另一方面, Naskh script的组合规则和 Nastaleeq 一样,但书写顺序则是保持水平的从右到左。图3.9 是两种文字的同一段话。

从 OCR 角度看 ,Nastaleeq 比 Naskh 更难,因为当相近的字符重叠的时候,没法区分字中字符属于前面的词还是后面的词。

字符外形可变:Naskh 和 Nastaleeq 文字中 字符都会依据它出现在词中的位置发生形变。字符在词中会有四种情况:孤立存在、在字首、在字中、在字尾。见图3.11所示,注意 单个字符和其他字符组合时也会出现形变。图3.12展示了同一个字符出现在词的不同位置时的形变。 default

Nabataean scripts 文字的上方、下方或者是字符中有大量的点号和 diacritics marks,在Urdu Nastaleeq script 中一些字符最多可以关联三个点号. Dot association is particularly very challenging w.r.t. OCR as their placement changes depending the shape of a character in a certain position. 对于像 # " (che) 或 # $ (jeem) 的字符,点号出现在字符里面, where a dot is present inside the character, the dot no longer remains inside as the shape of these character changes in the middle or beginning of a ligature (see Figure 3.16). default

对于 ligature 中相邻的字符,点号可能位于不同字符的上方或下方。如图3.7所示。 default

3.6.2 Urdu Nastaleeq OCR数据库

Urdu Nastaleeq OCR 研究仍处于早期阶段,没有可以公开使用的开源的或者商用的工具。 Shafait et al. [SUHKB06]等人构建了第一个数据库,其中包含了25份文档,对版面和文本都进行了标记。收录了誊写文档的页面,所以很难 OCR 。 Ijaz and Hussani [IH07] 等人开发了一个字典,其中包含了大概5万个去重的词。这些词抽取自6个领域,体育、新闻、文化、娱乐、消费信心、个人通信和财务。词的总量超过1800万。 Urooj et al. 等人公开了一份不同字体的 Urdu Nastaleeq 数据库。数据来自信件、访谈、报刊、体育、文化、卫生保健、科学、小说、翻译稿、短篇文章和书评。

Sabbour et al. [SS13] 等人公开了一个 Urdu 打印件的文本图片数据库。其中包含了1万行文本。每行文本都是通过不同的参数变形而生成。其中包含了文本行和词级别的标记。

wanghaisheng commented 8 years ago

3.7 多种语言文字混排的印刷体

随着全球化的进程不断深入,多语言的文本越来越多。电子产品的用户手册、旅游指南,字典、翻译都会使用多种语言来获取全球的客户。另外一方面,英语已经变成一门国际化的语言,影响很大。

3.7.1 多语言文本的分类

从OCR 角度来看,多语言文本可以分为三大类,了解其中的差异,可以更好的了解数字化的难度。

default default default

3.7.2 多语言文档的 OCR 数据库

长久以来,我们首先要进行一个语言文字识别的过程,这样才能对于识别出来的文字应用针对某种语言的模型。用于识别确认语言文字的数据库很少见。有一些研究人员[GDS10].在自己的数据集上做但没有放出来。 Kanungo et al. [KRM+05] 等人提出使用圣经作为标准数据集来进行 MOCR 算法的基准测试。但这种思路并不主流。

wanghaisheng commented 6 years ago

3.8 简体中文 3.8.1 现代中文 OCR 存在的挑战

3.8.2 现代中文 OCR 数据库

3.9 古籍中中文