AI News HubLIVE
サイト内リライト2 分で読了

百度のUnlimited-OCRを使用した高解像度画像およびマルチページPDFのエンドツーエンドOCRパイプラインの構築方法

このチュートリアルでは、百度のUnlimited-OCRモデルをドキュメント画像やマルチページPDFで実行するための完全なワークフローを構築します。GPU環境の設定から、高詳細タイルGundam推論と高速Baseモードの比較まで、密なレイアウト、表、ページをまたがるコンテンツを再現可能なエンドツーエンドパイプラインで処理する方法を学びます。

ソースMarkTechPost著者: Sana Hassan

このチュートリアルでは、百度のUnlimited-OCRモデルを使用して、高解像度のドキュメント画像とマルチページPDFを処理するエンドツーエンドのOCRパイプラインを構築する方法を詳しく説明します。すべての作業はGoogle Colab環境で行われ、従来のOCRやレイアウト分析ツールに依存しません。最初に、GPU環境を設定し、transformers、Pillow、matplotlib、PyMuPDFなどの必要な依存関係をインストールします。次に、30億パラメータの視覚言語モデルを読み込みます。システムはハードウェアのサポートに基づいてbfloat16またはfloat16を自動的に選択し、モデルをGPUに移動します。

モデルの構造化コンテンツ処理能力をテストするために、PILを使用して3つの現実的なサンプルドキュメントページを生成します。各ページには見出し、段落、表、脚注が含まれています。これらのページは四半期業務報告書の形式を模しており、表には地域別の収益データが表示され、脚注にはマルチページモードでのコンテキストの一貫性の重要性が説明されています。Matplotlibで最初のページをプレビューした後、OCR推論フェーズに進みます。

単一ページのOCR推論では、GundamモードとBaseモードの2つを比較します。Gundamモードは、グローバルなドキュメントビューとタイル状の画像クロップを組み合わせ、画像サイズを640ピクセルに設定し、クロップモードを有効にします(crop_mode=True)。これにより、細かいテキストが保持され、密集したレイアウトに適しています。Baseモードは、1024ピクセルの単一画像を使用し、クロップを無効にして推論を高速化します。クリアな印刷ページに適しています。両方のモードで、長いコンテキスト生成設定(max_length=32768)と繰り返し制御パラメータ(no_repeat_ngram_size=35, ngram_window=128)を設定し、安定した構造化出力を確保します。

マルチページPDFの場合、最初にPyMuPDFを使用して3つのサンプルページを1つの3ページPDFに結合し、次にpdf_to_images関数を使用して各ページを300 DPIのPNG画像にラスタライズします。これらの画像はモデルのinfer_multi()メソッドに渡され、1回の長期的な推論操作でドキュメント全体を解析します。ページ間のデコード安定性を維持するために、ngram繰り返しウィンドウを1024に拡大します。出力にはテキスト、Markdown、JSONファイルが含まれ、指定された出力ディレクトリに保存されます。

最後に、チュートリアルではドキュメントタイプに応じて最適なモードを選択するためのクイックリファレンスを提供します。密集した小さなテキストにはGundam(640 + crop_mode=True)、クリアな印刷物にはBase(1024 + crop_mode=False)、マルチページPDFにはinfer_multi()でngram_window=1024を使用します。パイプライン全体はGoogle Colabで実行され、異なるGPU機能に適応できます。これにより、レポート、スキャンされたフォーム、技術文書、表など、レイアウトが豊富なコンテンツを処理するための再利用可能な基盤が提供されます。このチュートリアルを通じて、読者はUnlimited-OCRのコアな使用方法を習得し、独自のドキュメント処理ワークフローに統合できるようになります。