3.PDF書類のテンプレートを作成

ジーニアルAI for Webでは、「OCR実行前にどのような前処理を行うか」「証憑におけるどの範囲に存在する項目を読み取るか」といった設定をOCRで使用することで、OCRの精度を高めたり、OCR結果を証憑突合時に使用しやすくしたりすることができます。

これらのOCR実行時に使用する設定のことを、ジーニアルAI for Webでは「テンプレート」と呼んでいます。

テンプレート作成方法を以下の順序で説明します。

  1. 標準PDFをアップロードする
  2. OCR領域を設定する
  3. 座標指定により設定する
  4. 表により設定する
  5. 正規表現により設定する
  6. テンプレートを保存する

1.標準PDFをアップロードする

ジーニアルAI for WebはOCR実行時に、ページ上の項目をテンプレートに基づき読み取る仕組みとなっています。
OCR実行時に読み取る座標や、表の設定の基準として使用するPDFページのことを、ジーニアルAI for Webでは「標準PDF」と呼びます。
また、OCR対象の証憑と各テンプレートの標準PDFの見た目の類似度によって、OCR実行時にどのテンプレートを使用するかを自動的に判断します。

1.サイドメニューの[テンプレート] をクリックし、テンプレート一覧画面を呼び出します。

2.[新規テンプレート] ボタンをクリックし、テンプレート編集画面に移動します。

標準PDFをアップロード手順1.2
標準PDFをアップロード手順1/2

3.[標準PDFをアップロード]ボタンをクリックし、PDFファイルページ番号を選択します。
 デフォルトでテンプレート自動生成機能にチェックマークが入っています。
 こちらを入れたままアップロードすると、PDFページにもとづいてOCR項目が自動生成されます。
 ※自動生成を使わない場合はチェックマークを外してください。
 ※自動生成はβ版機能ですので、十分な精度を得られないケースがあります。

4.標準PDFをアップロードすると、画面の左側 にアップロードしたPDFページの画像が表示されます。
[+] ボタン / [] ボタンをクリックすることで、PDFページの画像を拡大/縮小することができます。

標準PDFをアップロード手順3.4
標準PDFをアップロード手順3/4
  1. Adobe Acrobatを開く
  2. Acrobatの[ファイル]の[印刷]をクリック
    ※PDFを新しいPDFファイルに印刷します。
  3. ドロップダウンメニューから[Microsoft Print to PDF]または[Adobe PDF]を選択し[印刷]をクリック

2.OCR領域を設定する

画面右手の「主OCR」「副OCR」の部分でテンプレート設定を行います。

主/副OCR領域を設定すると、OCR対象のPDFに対し、標準PDF上で設定した領域に合わせて回転や切り抜きといった座標補正を行います。
この補正によって紙媒体の証憑をスキャンした際に生じたズレや傾きが修正され、より正確に文字を読み取ることができます。

主OCR領域は、PDF全体の範囲を指定するために使用します。

左側のボックスをクリックし、シート全体で範囲を設定します。
※各項目の左側のボックスをクリックし緑色の状態にすると、画面左のページ上でカーソルで範囲を設定することができます。

OCR領域の設定手順1.2
OCR領域の設定手順1

副OCR領域は、証憑中の承認印・決済印を押すための枠を付けるためのスタンプや表やテーブルなど「証憑の不特定の位置に配置される項目」の範囲を指定するために使用します。

副OCR領域の設定方法は主OCR領域の下のテーブルを使用します。

副OCR領域
副OCR領域

3.座標指定により設定する

次に、主OCR領域内で、読み取りたい項目を個別に設定していきます。
同様に各項目の左側のボックスをクリックし、ページ上で該当範囲を設定します。

その際、以下の項目を設定します。
※これ以降に登場する設定の場合も、共通して以下の項目をチェックする必要があります。

座標指定による設定
座標指定による設定

4.表により設定する

PDFの表部分を読み取りたい場合、以下の2通りの方法で設定することができます。
また、表部分のOCR結果はリスト形式で出力されます。

1. 表を自動検出する方法 (β版)

  1. [座標] 列のチェックボックスのチェックを解除
  2. [] 列のチェックボックスをチェック
  3. ヘッダーが表の行として存在する場合は [行/列] 列のラジオボタンから「」を、列として存在する場合は「」を選択
  4. 表から自動的に読み取りたいOCR項目のヘッダー名を [ヘッダー名] 列のプルダウンから選択
表を自動検出する方法 (β版)
表を自動検出する方法 (β版)

2. 表を手動で指定する方法

  1. [] 列のチェックボックスをチェック
  2. 対象となるOCR項目について、表の一行目の範囲を座標選択
    OCR実行時、選択した座標から下に向かって一行ずつ自動的に抽出し、OCR結果として読み取ります。
  3. 表に罫線が存在する場合は [罫線] 列のプルダウンから「はい」を、罫線が存在しない場合は「いいえ」を選択
    罫線が存在する場合は、罫線を手掛かりとして読み取ることで正確にセルを認識することができます。
表を手動で指定する方法
表を手動で指定する方法

5.正規表現により設定する

正規表現とは、文字列を1つのパターン化した文字列で表現する表記法です。
ジーニアルAI for Webでは、正規表現を使用して文字列の検索処理を行うことができます。

ジーニアルAI for Webでは正規表現の中に丸括弧()を指定すると()の中のパターンのみを、丸括弧()を指定しないとパターン全体をOCR結果として抽出します。
例えば、 合計金額\s*([\d,]+) という正規表現パターンを使えば、「合計金額 1,000円」という文字列の中から数値部分の「1,000」を抽出することができます。

正規表現で設定
正規表現で設定

使用頻度の高い正規表現

以下が使用頻度の高い正規表現となります。
※OCRが上手く読み取れない場合には、正規表現を使用することで解決することがあります。
 お問い合わせフォームより読み取りたい項目をご連絡頂ければ、正規表現をご提案させていただきます。

説明正規表現
[数値]のみ抽出する\d+数量
[数値]と[,]のみを抽出する[\d,]+単価、合計金額、小計
合計金額隣の数値のみ抽出する合計金額\s*([\d,]+) 請求金額、合計金額
○○株式会社御中から会社名のみを抽出する(/S+)御中宛名
件名:○○から要件のみ抽出する件名:(/S+)件名
正規表現

6.テンプレートを保存する

すべてのOCR項目の設定が終了したら、以下の手順でテンプレートを保存します。

  1. [カテゴリー]を選択
  2. [デフォルト言語]を選択
    ※対象となるOCR項目の言語を指定します。
  3. [名前]にテンプレートの名前を入力
  4. [変更の保存]をクリック
テンプレートの保存
テンプレートの保存