2017-01-01 94 views
0

環境&設置使用--tessdata-dir參數時如何解決初始化錯誤1(read_params_file:parameter not found:II *)?

操作系統:SuSE Linux企業服務器12 SP 1

$ uname –a 
Linux 3.12.62-60.64.8-default #1 SMP Tue Oct 18 12:21:38 UTC 2016 (42e0a66) x86_64 x86_64 x86_64 GNU/Linux 

因爲這個環境管理,我不能更新任何系統庫,例如glibc的等等 所以最新的和只有官方支持的版本「Suse 12 SP1 x86_64」teaaseract我發現是3.02。

安裝的軟件包:

libgif4-4.1.6-34.1.1.x86_64.rpm 
liblept3-1.69-16.1.x86_64.rpm 
libtesseract3-3.02.02-3.2.1.x86_64.rpm 
libwebp4-0.3.1-34.1.x86_64.rpm 
tesseract-3.02.02-59.1.x86_64.rpm 

正方體版本

$ tesseract –v 
tesseract 3.02.02 
    leptonica-1.69 
     libgif 4.1.6 : libjpeg 8d : libpng 1.5.22 : libtiff 4.0.6 : zlib 1.2.8 

發佈細節

$ zypper info tesseract 
Information for package tesseract: 
---------------------------------- 
Repository: @System 
Name: tesseract 
Version: 3.02.02-59.1 
Arch: x86_64 
Vendor: obs://build.opensuse.org/home:koprok 
Support Level: unknown 
Installed: Yes 
Status: up-to-date 
Installed Size: 3.8 MiB 
Summary: Open Source OCR Engine 
Description: […] 

Traindata &語言

Traindata已經手動下載: https://sourceforge.net/projects/tesseract-ocr-alt/files/tesseract-ocr-3.02.eng.tar.gz/download https://sourceforge.net/projects/tesseract-ocr-alt/files/tesseract-ocr-3.02.deu.tar.gz/download

和文件已提取到/usr/share/tessdata/

$ ls -la /usr/share/tessdata/ 
drwxr-xr-x 1 root root  230 Dec 31 16:37 configs/ 
-rw-r--r-- 1 root root 2438081 Dec 30 15:31 deu.traineddata 
-rw-r--r-- 1 root root 171918 Dec 30 20:16 eng.cube.bigrams 
-rw-r--r-- 1 root root  38 Dec 30 20:16 eng.cube.fold 
-rw-r--r-- 1 root root  181 Dec 30 20:16 eng.cube.lm 
-rw-r--r-- 1 root root 857304 Dec 30 20:16 eng.cube.nn 
-rw-r--r-- 1 root root  254 Dec 30 20:16 eng.cube.params 
-rw-r--r-- 1 root root 13020078 Dec 30 20:16 eng.cube.size 
-rw-r--r-- 1 root root 2444187 Dec 30 20:16 eng.cube.word-freq 
-rw-r--r-- 1 root root  996 Dec 30 20:16 eng.tesseract_cube.nn 
-rw-r--r-- 1 root root 21876572 Dec 30 20:16 eng.traineddata 
drwxr-xr-x 1 root root  88 Dec 31 16:37 tessconfigs/ 

正方體檢測 '申' 和 '工程' 爲可用的語言

$ tesseract --list-langs 
List of available languages (2): 
deu 
eng 

應用程序&問題

該軟件應用程序是基於Spring Boot框架構建的。執行tesseract命令的代碼看起來像。像:

Runtime.getRuntime().exec(new String[] { 
"tesseract", 
"--tessdata-dir", "/usr/share/tessdata", 
"-l", lang.getISO3Language(), 
inputTiff.toAbsolutePath().toString(), extractedcntPath }); 

該器件的應用日誌文件說

2016-12-30 20:30:02,320 [https-jsse-nio-8443-exec-7] WARN PDFContentExtractor - read_params_file: parameter not found: II* 

與tessdata目錄執行的Tesseract失敗

$ tesseract --tessdata-dir /usr/share/tessdata -l deu inputPdf6632237754781472255.tiff out4 
read_params_file: parameter not found: II* 

當不tessdata目錄執行的Tesseract效果很好

$ tesseract -l deu input.tiff out5 
Tesseract Open Source OCR Engine v3.02.02 with Leptonica 

問題&理念

  • 爲什麼正方體工作做好,並檢測可用的語言,而不--tessdata-dir的參數嗎?
  • 爲什麼在使用--tessdata-dir參數集時,teasseract在初始化時崩潰?
  • 運行tesseract與/沒有--tessdata-dir參數集有沒有區別?

我該如何解決這個問題?

  • 安裝更新版本的tesseract?
  • 從源代碼編譯版本?
  • 使用其他traindata/tessdata?
  • 不帶-tessdata-dir參數運行tesseract?

如果有人能幫助我在上週解決這個問題,那不僅會讓我開心,而且會讓我們整個團隊感到高興。

非常感謝您提前!
-Rüdiger

回答

相關問題