OCR APIの概要と用途
OCR(Optical Character Recognition・光学文字認識)は画像やPDFから文字を読み取る技術です。紙の請求書・領収書・契約書・名刺のデジタル化、フォームデータの自動入力、古文書のデジタル保存など多くのビジネスシーンで活用されています。クラウドOCR APIを使うことで、高精度な文字認識を低コストで実装できます。
主要OCR APIの比較
Google Cloud Vision API / Document AI
- TEXT_DETECTION:画像内のすべてのテキストを検出(汎用)
- DOCUMENT_TEXT_DETECTION:文書向けの高精度テキスト認識
- Document AI:請求書・領収書・フォームの構造化データ抽出に特化
- 強み:日本語・手書き対応・多様なドキュメントタイプ
AWS Textract
- 機能:テキスト検出・フォーム抽出・表構造の認識・署名の検出
- 強み:フォーム・表の構造認識が優れている・AWS S3との連携が容易
- 料金:月1,000ページ無料(3ヶ月)、以降$1.5/1,000ページ(Detect)
Azure Document Intelligence(旧Form Recognizer)
- 機能:一般文書・請求書・領収書・名刺・IDカードの専用モデル
- 強み:専用モデルで高精度・カスタムモデルのトレーニング可能
Tesseract(オープンソース)
- 特徴:Google開発のオープンソースOCRエンジン・無料
- 日本語対応:Japaneseトレーニングデータで対応(精度はクラウドAPIより低い場合あり)
- 向いているケース:コスト重視・クラウドAPIを使えない環境・オフライン処理
Google Cloud Vision APIの実装例(OCR)
import vision from '@google-cloud/vision';
const client = new vision.ImageAnnotatorClient();
// PDFからテキスト抽出(GCSに保存してバッチ処理)
const [operation] = await client.asyncBatchAnnotateFiles({
requests: [{
inputConfig: {
gcsSource: { uri: 'gs://my-bucket/invoice.pdf' },
mimeType: 'application/pdf'
},
features: [{ type: 'DOCUMENT_TEXT_DETECTION' }],
outputConfig: {
gcsDestination: { uri: 'gs://my-bucket/output/' },
batchSize: 10
}
}]
});
await operation.promise();
// gs://my-bucket/output/に結果JSONが出力される
請求書・領収書の自動処理
AWS TextractやGoogle Document AIの請求書処理専用モデルを使うと、ベンダー名・請求日・合計金額・明細行などの項目を構造化データとして自動抽出できます。会計ソフトへの自動入力・経費精算の自動化に活用されています。
OCR精度向上のテクニック
- 画像の前処理:グレースケール変換・ノイズ除去・傾き補正でOCR精度が向上
- 解像度の確保:最低300DPI(印刷文字)・600DPI(手書き)を確保
- コントラストの強化:文字と背景のコントラストが低い場合は前処理で改善
- 言語の明示:処理対象言語を明示することで誤認識を減らせる
まとめ
OCR APIは請求書処理・書類デジタル化・名刺管理など、日本の企業で大量に発生する紙文書のデジタル化に大きく貢献します。汎用テキスト認識にはGoogle Cloud Vision API・フォーム・表の認識にはAWS Textract・特定書類の高精度処理にはAzure Document Intelligenceが適しています。コスト重視の場合はTesseractのローカル処理も選択肢です。