ExtractPDF4J/ExtractPDF4J

Java PDF table extraction & OCR library. Extract structured tables from text-based and scanned PDFs using stream, lattice (OpenCV-style grid detection), and hybrid parsing.

何を解決するか

ExtractPDF4J は、テキストレイヤーのないドキュメント(スキャンされた請求書、銀行明細、財務報告書など)からデータを手動で再入力する必要をなくします。テキストベースおよび画像が多めのPDFからクリーンな行と列をプログラムで抽出する方法を提供します。

動作方法

このライブラリは、複数の戦略を用いて表データを識別・抽出します:

  • StreamParser:Apache PDFBox を使用してテキスト座標に基づいてテキストベースのPDFからデータを抽出します。
  • LatticeParser:OpenCV を使ってスキャンされたまたは画像ベースのPDFの線やグリッドを検出し、表構造を構築します。
  • OcrStreamParser:Tesseract OCR を使用して、テキストレイヤーが存在しない文書からテキストを読み取ります。
  • HybridParser:これらの戦略を調整し、ドキュメントの特性に応じて最適な方法を自動選択または統合します。

対象ユーザー

このツールは、フィンテック、銀行プラットフォーム、分析プラットフォーム、企業向けインジェスチョンワークフロー、およびAI/MLパイプライン用データ準備を目的とした生産環境向けドキュメント処理パイプラインを開発する開発者向けに設計されています。

特徴

  • ネイティブJavaサポート:Java 17+ で構築され、Maven Central から利用可能。
  • OCR統合:Tesseract と OpenCV を使用してスキャンされたPDFに対応する内蔵サポート。
  • 柔軟なパース:テキストベース、グリッド、OCRハイブリッドなど、異なるPDFタイプに対応する複数のモードを提供。
  • デプロイオプション:クイック抽出用のCLIと、Docker経由のREST統合用のSpring Bootマイクロサービスを含む。
  • 宣言的設定:パーサー設定を定義するためのアノテーションベースの構成をサポート。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト