OCRmyPDFは、光学式文字認識(OCR)テキストレイヤーをスキャンしたPDFファイルに追加するように設計されたオープンソースのコマンドラインツールです。Pythonの開発、Tesseract OCRエンジンの使用に基づいており、正確に画像内のテキストを識別し、PDFに埋め込むことができます。このツールは、Linux、Windows、macOS、およびその他のプラットフォームに適用可能な多言語をサポートするだけでなく、クロスプラットフォームの展開を容易にするDockerイメージも提供します。OCRmyPDFのデフォルト生成PDF/Aフォーマットは、ページ補正、画像の最適化、およびその他の機能をサポートしながら、長期的なアーカイブに適しており、ドキュメントのデジタル化やアーカイブのシナリオで広く使用されています。
機能一覧
- コピー&ペーストに対応し、スキャンしたPDFに検索可能なOCRテキストレイヤーを追加。
- 長期間の文書アーカイブに適したPDF/Aフォーマットのデフォルト生成。
- 英語、ドイツ語、中国語など39言語のテキスト認識をサポート。
- ページの傾き(傾き補正)と回転(ページ回転)の自動補正。
- PDFファイルのサイズを最適化し、多くの場合、入力ファイルよりも小さな出力を生成します。
- マルチコア並列処理をサポートし、大規模文書処理の効率化を実現。
- OCR結果を簡単に確認できるデバッグモードを提供。
- プラグイン対応による機能拡張、複雑なPDF構造にも対応。
- 互換性を高めるために自動的に破損したPDFファイルを修復します。
ヘルプの使用
設置プロセス
OCRmyPDFのインストールには、Python、Tesseract、Ghostscriptなどを含む、サポートされているオペレーティングシステムの依存関係の設定が必要です。以下は一般的なオペレーティングシステム用の詳細なインストール手順です:
Linux(例としてUbuntu 22.04)
- Python 3とpipがシステムにインストールされていることを確認してください:
python3 --version pip3 --version
- 依存関係をインストールします:
sudo apt update sudo apt install tesseract-ocr ghostscript python3-pip pngquant
- pipを使ってOCRmyPDFをインストールしてください:
pip3 install ocrmypdf
- インストールを確認する:
ocrmypdf --version
バージョン番号が表示されていれば、インストールは成功です。
ウィンドウズ
- Python 3をインストールする(公式サイトから最新版をダウンロードすることをお勧めします)。
- TesseractとGhostscriptをインストールする(Chocolatey Package Managerを推奨):
choco install tesseract ghostscript
- pipを使ってOCRmyPDFをインストールしてください:
pip install ocrmypdf
- インストールが完了したことを確認する:
ocrmypdf --version
macOS (Homebrewを使用)
- Homebrewをインストールする(まだインストールされていない場合):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- 依存関係をインストールします:
brew install tesseract ghostscript ocrmypdf
- インストールを確認する:
ocrmypdf --version
Dockerのインストール
- Dockerがインストールされ、実行されていることを確認する:
docker run hello-world
- OCRmyPDF画像を取り出します:
docker pull jbarlow83/ocrmypdf
- 鏡に便利な名前をマークする:
docker tag jbarlow83/ocrmypdf ocrmypdf
使用方法
OCRmyPDFはコマンドラインツールで、使い方は簡単ですが強力です。基本的なコマンド形式は以下の通りです:
ocrmypdf [选项] 输入文件 输出文件
基本操作
- 簡単なOCR変換::
スキャンしたPDFを検索可能なPDFに変換します:ocrmypdf input.pdf output.pdf
これは
input.pdf
でOCRテキストレイヤーを生成する。output.pdf
. - 言語を指定する::
英語と中国語の両方を含むPDFの処理など、多言語OCRをサポートしています:ocrmypdf -l eng+chi_sim input.pdf output.pdf
言語コードはTesseractのドキュメントに記載されています。
- ページの修正と最適化::
自動傾き補正とPDF/A生成:ocrmypdf --deskew --output-type pdfa input.pdf output.pdf
- 並列処理::
マルチコアを使用して処理を高速化する:ocrmypdf --jobs 4 input.pdf output.pdf
注目の機能操作
- ページ回転ページの向きを自動的に検出して修正します:
ocrmypdf --rotate-pages input.pdf output.pdf
可
--rotate-pages-threshold
回転のしきい値を設定する。 - 画像のクリーンアップ認識精度を向上させるために、OCRの前に画像をクリーンアップします:
ocrmypdf --clean input.pdf output.pdf
- デバッグモードOCR結果を検証し、詳細なログを生成します:
ocrmypdf --verbose 2 input.pdf output.pdf
- 既存のテキストをスキップする既存のテキストとの重複を避ける:
ocrmypdf --skip-text input.pdf output.pdf
Dockerの使い方
ローカル環境のないシナリオでは、Dockerを使用してOCRmyPDFを実行します:
docker run --rm -v $(pwd):/data ocrmypdf /data/input.pdf /data/output.pdf
このコマンドは、カレントディレクトリのinput.pdf
に処理され、出力される。output.pdf
.
ほら
- 入力PDFがスキャンされた文書であることを確認し、テキストを含むPDFは
--skip-text
. - Tesseractの言語パックは、複数の言語をサポートする場合などに別途インストールする必要がある:
sudo apt install tesseract-ocr-chi-sim
- 複雑なPDFの場合は、以下の設定を有効にすることをお勧めします。
--verbose
詳細なログを表示し、トラブルシューティングを容易にします。
アプリケーションシナリオ
- 文書のデジタル化
紙文書をPDFにスキャンした後、OCRmyPDFを使ってテキストレイヤーを追加すると、内容の検索やコピーが簡単にでき、ファイル管理や法的文書のアーカイブに適しています。 - 学術研究
研究者は、スキャンした学術論文を検索可能なPDFに変換することで、引用やキーワードの抽出が容易になり、文献管理の効率が向上します。 - エンタープライズ・アーカイブ
企業は、スキャンした契約書や請求書をバッチ処理してPDF/Aフォーマットを生成し、長期保存と法令遵守を確保できます。 - 多言語文書処理
中国語と英語が混在した契約書のような多言語のスキャン文書を扱う場合、OCRmyPDFは多言語を認識し、テキストを埋め込みます。
品質保証
- OCRmyPDFはどのオペレーティングシステムをサポートしていますか?
Linux、Windows、macOS、FreeBSDをサポートし、Dockerによるクロスプラットフォームも可能。 - 英語以外の文書はどのように扱えばよいですか?
利用する-l
言語コードを指定する。-l chi_sim
中国語を扱うには、対応する言語パックをインストールする必要がある。 - 出力ファイルが入力ファイルより大きい場合は?
利用する--optimize 1
または、ファイルサイズを圧縮するためにJBIG2エンコーダーをインストールする。 - OCRの結果を検証するには?
利用する--verbose 2
詳細なログを生成したり、出力PDFで再現可能なテキストを確認することができます。