正方体训练问题
Posted
技术标签:
【中文标题】正方体训练问题【英文标题】:Tesseract training issue 【发布时间】:2012-08-05 22:44:26 【问题描述】:我正在尝试将某些车牌图像训练为特定字体。我想知道在训练时我应该把 unicharambigs 文件放在哪里。我有一个没有 unicharambigs 文件的数据集。但是当我在我的代码中包含 tessdata 文件夹时,它在运行时抛出了一个异常,说“尝试读取或写入受保护的内存。这通常表明其他内存已损坏。”。我是使用 tesseract 的新手,我有几个问题需要澄清,因为我认为上述异常是由于以下问题之一而发生的
1) 必须拥有 unicharambigs 文件吗?如果是这样,在创建最终训练数据之前我应该把这个文件放在哪里?
2) 与 C# 代码集成时,tessdata 文件夹中应考虑哪些文件?
我一直在使用预训练数据集进行测试,但我想拥有自己的数据集,当我使用该 tessdata 文件夹时,应用程序不会因上述运行时异常而退出。因此我相信这与我自己的 tessdata 文件夹有关。
更新
只是为了补充问题。当我使用由 tesseract 安装创建的默认 tessdata 文件夹时,应用程序工作正常,但结果错误。我再次训练了 tesseract 并将现有的训练数据文件替换为训练后生成的新训练数据文件,我的应用程序再次崩溃。
我正在使用 C# 和 tesseract dot net wrapper。
【问题讨论】:
【参考方案1】:实际上这里的问题是受过训练的 tessedata 和 tesseract DLL 的版本不匹配。我猜受过训练的 tessedata 是最新的 >3.0 版本,因为旧版本 (2.0) dll 抛出异常,例如尝试读取或写入受保护的内存“所以请尝试使用最新的 tesseract dll。https://github.com/charlesw/tesseract/tree/master/Samples 从上面的链接下载示例项目并测试您的训练数据,它有 Nuget tesseract 包的参考,因此这将支持 Tesseract 3.02 训练的 tessedata。
【讨论】:
以上是关于正方体训练问题的主要内容,如果未能解决你的问题,请参考以下文章
算法训练 Balloons in a Box (枚举,模拟)