Tesseract OCR 中的传统训练是指在深度学习方法之前使用的基于模式的字符识别系统。本文档描述了 Tesseract 传统引擎的基于原型的训练方法,该方法使用字符特征、聚类和原型匹配来进行字符识别。有关基于神经网络的训练信息,请参阅 LSTM 训练。
Tesseract 中的传统训练使用基于形状的特征和聚类算法来创建字符的原型描述。然后将这些原型组织成模板,识别引擎使用这些模板进行字符分类。
传统训练方法创建
来源
传统引擎采用两级分类方法
来源
来源
传统训练过程涉及几个阶段
传统训练中使用的特征包括
来源
传统训练过程使用基于 k-d 树的聚类来对相似特征进行分组。聚类算法
来源
原型代表字符类的基本特征。每个原型包括
训练会根据特征分布创建球形(各向同性)和椭圆形(各向异性)原型。
来源
为了实现高效的运行时匹配,浮点原型通过量化转换为整数格式
类修剪器使用多维查找表快速拒绝不太可能的字符类
来源
在类修剪之后,原型修剪器会识别类中的哪些原型可能与输入特征匹配
来源
传统引擎包含一个自适应分类器,可以从正在识别的文本中学习
来源
传统训练系统可以整合字体信息以提高识别率
来源
要执行传统训练
在识别过程中,传统引擎
来源
| 方面 | 传统训练 | LSTM 训练 |
|---|---|---|
| 特征类型 | 手工设计(基于形状的特征) | 自动学习 |
| 训练方法 | 原型聚类 | 反向传播 |
| 字符模型 | 单个原型 | 神经网络 |
| 训练数据需求 | 中等 | 大型 |
| 识别速度 | 简单情况下的速度更快 | 更稳定 |
| 现代语言支持 | 有限 | 更好 |
| 适应性 | 仅限于临时适应 | 更好的泛化能力 |
传统训练系统在特定应用中仍然有用,尤其是在
来源