Tesseract 的自定义字典
Posted
技术标签:
【中文标题】Tesseract 的自定义字典【英文标题】:Custom Dictionary for Tesseract 【发布时间】:2012-03-23 00:20:49 【问题描述】:我目前正在开发一个使用 Tesseract OCR 的 android 项目。我希望通过添加字典来微调给用户的结果。根据tesseract OCR wiki,最好的办法是
用你自己的单词列表替换 tessdata/eng.user-words,在同一个 格式 - UTF8 文本,每行一个字。
但是 tessdata 文件夹中没有 eng.user-words 文件,我假设如果我只是用我的字典制作一个文本文件,它将永远不会被使用...
有没有人有类似经历并且知道该怎么做?
【问题讨论】:
【参考方案1】:如果您使用的是tesseract 3
(我假设您是)。
您必须重建您的 eng.trainddata
文件。
我打算完全替换 word-dawg 文件以尝试获得更好的结果(即 - 我检测到的单词总是相同的)。
编译 tesseract 时,您需要在训练目录中包含 combine_tessdata
和 wordlist2dawg
可执行文件。
解压所有内容(我这样做只是为了备份我的 eng.word-dawg,稍后您还需要 unicharset)
./combine_tessdata -u eng.traineddata
为你的单词表创建一个文本文件(wordlistfile)
创建一个 eng.word-dawg
./wordlist2dawg wordlistfile eng.word-dawg traineddat_backup/.unicharset
替换word-dawg文件
./combine_tessdata -o eng.traineddata eng.word-dawg
应该是这样的。
【讨论】:
我正在尝试执行此步骤 3,但出现此错误Loading unicharset from 'traineddat_backup/.unicharset' Failed to load unicharset from 'traineddat_backup/.unicharset'
请帮助我,我正在尝试在 Ubuntu 12.04 和 tesseract 3.02 上执行此操作。
@MuhammadMuaz: traineddat_backup/.unicharset
是第一个 cmd 输出的文件夹路径。如果第一个 cmd 是 ./combine_tessdata -u ita.traineddata /path/to/folder/tmp/ita.
,则第三个是 ./wordlist2dawg wordlist ita.word-dawg /path/to/folder/tmp/ita.unicharset
。希望对您有所帮助,我为此浪费了 30 分钟。以上是关于Tesseract 的自定义字典的主要内容,如果未能解决你的问题,请参考以下文章
mvc(QSortFilterProxyModel)中的自定义排序仅适用一次