gscan2pdf とは
gscan2pdf は様々なファイルを読み込んでPDFファイルを生成するプログラムだ。このプログラムは tesseract-ocr や cuneiform-Linuxと組み合わせて、画像データから文字を認識 (OCR機能)し、結果を出力することが出来る。これらは全てソフトウェアセンター、またはパッケージマネージャーからインストール出来る。Ubuntu 14.04 でインストールされるこれらのプログラムのバージョンは
プログラム | バージョン |
gscan2pdf | 1.2.3 |
tesseract-ocr | 3.0.3 |
cuneiform-Linux | 1.1.0 |
gscan2pdf を使うと OCR出力が白紙
この gscan2pdf 1.2.3 から tesseract-ocr 3.0.3 を使ってOCRにかけると白紙が出力される。しかし、 gscan2pdf を使わずに tesseract-ocr 3.0.3 からOCRにかけると認識された内容が出力される。
原因はバグ
これは tesseract-ocr 3.0.3 がこのバージョンからOCRの結果を gocr形式で出力するのに対して、gscan2pdf 1.2.3 の側では html形式の出力を受け取る設定になっているためだ。(参照:ここ) このバグは既知の問題で gscan2pdf 1.2.4 ではパッチファイルが存在し, gscan2pdf 1.2.5以降のバージョンでは修正されている。(参照:ここ)
解決方法
- その 1 Tesseract.pm を編集する。(参照:ここ)
1. 端末を起動し、以下のコマンドで Tesseract.pm が存在するフォルダに移動する。
cd /usr/share/perl5/Gscan2pdf/
sudo gedit Tesseract.pm
version->parse("v$version") >= version->parse("v3") ? '.html' : '.txt';
--->
version->parse("v$version") >= version->parse("v3") ? '.hocr' : '.txt';
4. ファイルを保存して閉じる。- その 2 gscan2pdf 1.2.3 を最新バージョンにアップグレードする。(参照:ここ)
- その 3 パッチファイルを適用する。(参照:ここ)
- この解決方法を紹介しているHPは多い。しかし、このパッチファイルは gscan2pdf 1.2.4 用であり、Ubuntu 14.04 でソフトウェアセンターなどからインストール出来るのは gscan2pdf 1.2.3 である。従って現在では何か理由があってPPAなどの外部から gscan2pdf 1.2.4 をダウンロードして、インストールし,アップグレードしないで使い続ける場合のみに有効な解決方法となる。
0 件のコメント :
コメントを投稿