文本行检测到之后,我们开始寻找单词和字母之间的间隙,这一次,我们运用了水平直方图,将大的间隙假设为单词之间的空隙,小的间隙理解为字母之间的空隙,检测缅甸文本中的空隙几乎没有出现问题,不像泰语,几乎没有空隙。(我们的OCR技术可以识别泰语文本,多达200种其他语言)

将文本行划分为更小的片段之后,我们尝试将片段划分为单个字符,再一次在直方图上观察高峰和低谷值,低谷对应于字母之间的可能间隙,有些间隙可以很确定地检测到,有些则需要通过各种试探法进行验证。

以下图形展示了英语单词的直方图:

缅甸脚本中的大量半圆字符产生了很多“错误”高峰和低估,使得检测空隙变得更难,但是直方图法同样适用于缅甸语。

现在我们可以尝试识别单个字符,确切地讲是字母,字母就是字符的图形表现形式,但它不是一一对应的。在欧洲文本中,一个字母可能对应多个字符(比如大写的“C”和小写的“c”属于同一个字母),且一个字符可能由多个字母传达(比如,字母“a”在不同的字体中可能由不同的字母表示)。

没有标准的字母列表,因此我们手动编译,为每个字母指定所有可能的字符,再在候选单词产生的时候将字母翻译成字符。

正如我们之前注意到的,缅甸脚本中存在大量可分辨的字符,其中很多可以与他们主字母融合形成新字符:

如果某个变音符与其字母分离,我们先识别该字母,然后识别变音符,最后结合识别结果获获取新字母。如果某个变音符和其字母形成不可分割的单元,我们会尝试整体识别。

融合字符在缅甸书写系统中如此普遍以至于我们不得不提升技术以识别3500种新字母,这远远超过我们通常添加新语言的工作量。

字母识别完成之后,必须将其翻译成Unicode字符,然后组成单词。该过程对于欧洲语言相当简单,只需一个一个识别字符然后翻译为Unicode,但针对缅甸融合字符,则需要特别对待。

在翻译字符过程中有一个特定的正确顺序,在这个顺序中缅甸字母必须通过键盘输入,这样Windows才能将它们连接起来,有些字符必须在其他所有字符输入之后再进行输入,这样Windows才能在划分音节一开始将它们放置在正确的位置。

例如:在文本编辑器中键入下面这个单词:

用户必须按照字符的下面顺序键入字符:

我们已在我们的技术中加入了特殊修正后模块,确保结果单词遵从这些键入规则,所有文本都识别完成之后,模块再次阅读识别的文本,检查字符顺序是否正确,缅甸语是一种结构非常好的语言,有足够的正式规则支持这些检查。

完成此项目花了我们4个月时间,最终识别准确度高达97%(客户要求至少94%),未来应该会实现识别更多的缅甸语字体。

转载于:https://www.cnblogs.com/MathType/p/6811970.html

ABBYY OCR技术教电脑阅读缅甸语(下)相关推荐

  1. ABBYY OCR技术教电脑阅读缅甸语(上)

    2019独角兽企业重金招聘Python工程师标准>>> 缅甸联邦共和国,原名缅甸,是东南亚的一个国家,从1962年到2010年,缅甸一直被政变后上台的军政府统治,直至最近5年它才对外 ...

  2. 连不上网_技术丨电脑连不上网,我要如何冲浪?

    身为互联网一级冲浪选手 稳定不断的网络连接可谓是生活必备 但,遇见无法上网的情况时 除了重启路由器,还可以怎么办? 在实际生活工作中,常会遇到无法上网的情况,原因较多.解决方案也同样众多,本文筛选了最 ...

  3. 嵌入式OCR+RFID识别电子护照阅读器模块MRZ码电子证件识别模组的应用与攻略

    嵌入式OCR+RFID识别电子护照阅读器模块|MRZ码电⼦证件验证识别模组是一款USB通讯模式,体积小巧.便于安装,方便嵌入至各类终端设备中,适用于出境游旅行社.海关检查.口岸出入境检查.使领馆签证登 ...

  4. OCR(汉字光符阅读器)

    本文转至:http://blog.csdn.net/byxdaz/article/details/469548 3 汉字光符阅读器--印刷汉字识别 3.1 从超市收款机说起 "光符阅读器&q ...

  5. 几款常用的OCR技术软件 新3

    比如要把书上的文字复制下来, 需要照着书一个一个字打,但是如果通过ocr识别软件, 我们就可以直接通过拍照的形式把这些文字截取下来.举个例子: OCR识别之后 10每个人都听命于三个"长官& ...

  6. 几款常用的OCR技术软件 新2

    比如要把书上的文字复制下来, 需要照着书一个一个字打,但是如果通过ocr识别软件, 我们就可以直接通过拍照的形式把这些文字截取下来.举个例子: OCR识别之后 10每个人都听命于三个"长官& ...

  7. 几款常用的OCR技术软件 新4

    比如要把书上的文字复制下来, 需要照着书一个一个字打,但是如果通过ocr识别软件, 我们就可以直接通过拍照的形式把这些文字截取下来.举个例子: OCR识别之后 10每个人都听命于三个"长官& ...

  8. [Mugeda HTML5技术教程之2] Mugeda HTML5富媒体平台简介

    [Mugeda HTML5技术教程之2] Mugeda HTML5动画平台简介 摘要:Mugeda提供基于云的平台,供开发人员和设计人员快速的开发.发布和统计基于HTML5的,包含丰富动画和交互的移动 ...

  9. 如何去掉界面中缅甸语圈圈(JB,JB2)

    如何去掉界面中缅甸语圈圈(JB,JB2) 目前缅甸语部分字串由于变形机制缺陷,导致一些圈圈组合错误的问题(如下图),目前可以通过修 改字符顺序的方式去掉这个圈圈. 5.6tp-3.png (270 K ...

最新文章

  1. oracle层次查询用处,Oracle描述层次查询(hierarchicalquery)
  2. 数据科学家:那些年,我都学过哪些编程语言…
  3. FCKeditor 2.6.4.1 初始化值不能显示中文问题
  4. vue2.0 子组件和父组件之间的传值
  5. 软件定义存储的定制化怎么走?
  6. Java 注解学习笔记
  7. python 调用gpu算力_数据科学家需要算力,GPU 如何实现?-控制器/处理器-与非网...
  8. 7-30 字符串的冒泡排序 (20 分) or 7-27 冒泡法排序 (20 分)
  9. 编译Notepad2语法高亮记事本源码心得
  10. guide, manual, tutorial之间的区别
  11. Unity入门之路0-Unity下载安装以及版本选择
  12. C语言数组指针和指向数组的指针变量—数组名作函数参数.doc
  13. mysql是dbf格式吗_数据库文件是什么格式啊
  14. p=p-next 表达了什么意思
  15. mac 查看端口_交换机端口对应的mac地址与IP地址
  16. 好用的revit软件:MEP绘制管道风管时,提示不可见如何解决?
  17. RxSwift--RxSwift简介
  18. vue获取地图经纬度
  19. 存在重复元素-python对不起算法大人,我又来水了
  20. React——脚手架创建、基本操作、Typescript

热门文章

  1. win10+VS 2017 安装 CUDA10(Visual Studio Integration失败)
  2. Centos7 安装Yarn
  3. 常见的文本特征(句向量)提取方法有哪些?什么是One-Hot、TF-IDF?word2vec如何训练?【Python】
  4. N打头的股票是什么意思?
  5. C++中内存数据库SQLite的使用
  6. 分享一款序列号查询神器:Serial Box mac版
  7. 单模SIW的设计步骤
  8. 使用不同的光纤接口卡(HBA)来分别连接磁带设备和磁盘设备
  9. 2017年山东省CIO智库周年庆暨信息化与工业化融合发展峰会成功召开!
  10. LayaBox---TypeScript---类