2012-03-05 121 views
10

我目前正在使用tesseract OCR的android項目。我希望通過添加字典來調整給用戶的結果。據http://code.google.com/p/tesseract-ocr/wiki/FAQ,去了解這一點的最好辦法是Tesseract的自定義字典

用自己的單詞列表更換tessdata/eng.user,也就是說,在同一個 格式 - UTF8文字,每行一個字。

但是沒有eng.user字在tessdata文件夾文件,我認爲如果我只是讓我在它的字典一個文本文件,它永遠不會被用來..

有沒有人有類似的經歷並知道該怎麼辦?任何建議將是一個很大的幫助。

回答

9

如果你正在使用tesseract 3(我認爲你是)。 您將不得不重建您的eng.trainddata文件 我打算完全替換word-dawg文件以嘗試獲得更好的結果(即 - 我檢測到的詞總是相同的)。

當您編譯tesseract時,您將需要訓練目錄中的combine_tessdata和wordlist2dawg可執行文件。

  1. 全部解壓(我這樣做只是爲了支持我的eng.word,耶,你還需要在以後unicharset)

    ./combine_tessdata -u eng.traineddata

  2. 創建單詞列表的文本文件裏(wordlistfile)

  3. 創建eng.word-耶

    ./wordlist2dawg wordlistfile eng.word-耶traineddat_backup/.unicharset

  4. 更換字耶文件

    ./combine_tessdata -o eng.traineddata eng.word-耶

應該是這樣。

+1

我想執行這一步驟3而是從「具有「traineddat_backup/.unicharset」 這個錯誤 '加載unicharset無法加載unicharset traineddat_backup/.unicharset'' 請幫助我,我試圖做到這一點的Ubuntu 12.04和tesseract 3.02。 – 2013-12-24 20:23:01

+0

@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分鐘。 – Tenaciousd93 2014-12-04 11:04:07