Leaper WaferScan Toolkit
中文 / English 2.x
Public 成员函数 | 属性
ILFontDatabase接口 参考

该接口类表示用于字符识别的字库对象。 更多...

类 ILFontDatabase 继承关系图:
ILObject LFontDatabase

Public 成员函数

void AddOCRChar (ILOCRChar *charData, LString charString)
 
void AddOCRLine (ILOCRLine *lineData, LString lineString)
 
void AddOCRResult (ILOCRResult *resultData, LString resultString)
 
int CountChar ()
 
ILSampleDatabaseCreateChar (LString charString)
 
ILSampleDatabaseGetCharDatabase (LString charString)
 
void Init (LString fontName, LString workingDirectory)
 
BOOL IsInMemory ()
 是否为内存数据库,即样本文件和数据库信息不保存,只暂留在内存中。
 
BOOL IsTrained ()
 
LString ItemChar (int index)
 
void RemoveChar (LString charString)
 
LPVErrorCode Train ()
 
- Public 成员函数 继承自 ILObject
ILObjectCopy ()
 
LPVErrorCode Load (LString filename)
 
void Reset ()
 
LPVErrorCode Save (LString filename)
 
BOOL Valid ()
 

属性

BOOL AutoFeature [get, set]
 是否在训练中开启自动特征选择和优化。默认关闭这个配置。
 
BOOL AutoModel [get, set]
 是否在训练中开启自动模型选择和优化。默认关闭这个配置。
 
LPVOCRFeatures Features [get, set]
 字符识别中使用的特征类型。默认为 LPVOCRFeatureDefault。 更多...
 
LPVModelType ModelType [get, set]
 字符识别中使用的机器学习模型类型
 
LString Name [get]
 字库名称,通常为全局唯一的,用于区分和标识该字库。
 
LSize PixelGrid [get, set]
 像素特征中使用的网格尺寸,当特征包含 LPVOCRFeaturePixel 时生效。默认为 \( 6 \times 8 \) 网格。
 
LPVOCRPixelProjection PixelProjection [get, set]
 像素特征中使用的网格投影方式,当特征包含 LPVOCRFeaturePixel 时生效。默认配置为 LPVOCRPixelProjNone 即无投影。
 
LPVOCRPixelValue PixelValue [get, set]
 像素特征中使用的计算网格像素值方法,当特征包含 LPVOCRFeaturePixel 时生效。 默认配置为 LPVOCRPixelGrayscaleNormalized 即归一化灰度值。
 
LString WorkingDir [get]
 字库的工作目录。 对于持久化数据库,该工作目录用于存储样本文件和管理信息文件。对于内存数据库,该工作目录为固定的 "in-memory" 文本。
 

详细描述

该接口类表示用于字符识别的字库对象。

字库用于管理字符样本,并训练基于机器学习技术的分类模型以用于字符识别。 该算法类提供了多种基于图像或几何属性的专用于字符识别的特征,并支持高级自动特征选择和模型优化(如果有足够的字符样本)。 字库可构建到指定的文件目录,并被多个 OCR 工具共享。

使用这个接口,需要创建一个 LFontDatabase 对象。

示例代码

成员函数说明

◆ AddOCRChar()

void AddOCRChar ( ILOCRChar charData,
LString  charString 
)

将单个字符对象加入字库,作为训练样本

参数
[in]charData输入的单个字符对象。
[in]charString识别字符文本。若为空,则使用 charString 中的识别结果作为训练字符。
参见
AddOCRResult(), AddOCRLine()

◆ AddOCRLine()

void AddOCRLine ( ILOCRLine lineData,
LString  lineString 
)

将单行文本对象中的所有字符加入字库,作为训练样本

参数
[in]lineData输入的单行文本对象,需至少包含一个字符。
[in]lineString识别字符文本。需包含与 lineData 个数相同的字符。若文本为空,则使用 lineData 中的识别结果作为训练字符。
参见
AddOCRResult(), AddOCRChar()

◆ AddOCRResult()

void AddOCRResult ( ILOCRResult resultData,
LString  resultString 
)

将 OCR 结果对象中的所有字符加入字库,作为训练样本

参数
[in]resultData输入的 OCR 结果对象,需至少包含一行或一个字符。
[in]resultString识别字符文本。需包含与 resultData 个数相同的字符。若文本为空,则使用 resultData 中的识别结果作为训练字符。
参见
AddOCRLine(), AddOCRChar()

◆ CountChar()

int CountChar ( )

获取字库中的字符总数

返回值
val字符总数
参见
CreateChar(), RemoveChar(), ItemChar(), GetCharDatabase()

◆ CreateChar()

ILSampleDatabase* CreateChar ( LString  charString)

新建字符,并同时在字库下创建该字符的样本库。

参数
[in]charString字符代码
返回值
charDB返回该字符对应的样本库
参见
RemoveChar(), CountChar(), ItemChar(), GetCharDatabase()

◆ GetCharDatabase()

ILSampleDatabase* GetCharDatabase ( LString  charString)

获取指定字符对应的样本库。

参数
[in]charString字符代码
返回值
charDB返回该字符对应的样本库
参见
CreateChar()

◆ Init()

void Init ( LString  fontName,
LString  workingDirectory 
)

创建和初始化字库。

参数
[in]fontName字库名称
[in]workingDirectory工作目录路径。 对于内存数据库,设置工作目录为空。 对于其他非空路径,将创建一个持久化数据库,并在该目录下初始化一个空数据库。因此,该工作目录需为一个可读可写的路径。 若该目录下已存在一个样本数据库,将优先加载该数据库,标识符将可能被替换为加载的名称。

◆ IsTrained()

BOOL IsTrained ( )

检查该字库是否已训练

返回值
val若已训练,返回 True,否则返回 False。

◆ ItemChar()

LString ItemChar ( int  index)

获取索引对应的字符

参数
[in]index输入索引,从 0 开始但小于总数的数字
返回值
result返回索引对应的字符代码
参见
CreateChar(), RemoveChar(), CountChar(), GetCharDatabase()

◆ RemoveChar()

void RemoveChar ( LString  charString)

从字库中移除某一个字符。注意,该字符对应的样本库并不会被彻底删除,若无需保留,需手动删除该样本库。

参数
[in]charString需删除的字符代码
参见
CreateChar(), CountChar(), ItemChar(), GetCharDatabase()

◆ Train()

LPVErrorCode Train ( )

训练字库。若启用自动特征或样本选择,则在训练过程中进行自动筛选和调参。

返回值
error返回错误码。

属性说明

◆ Features

LPVOCRFeatures Features
getset

字符识别中使用的特征类型。默认为 LPVOCRFeatureDefault。

/*!