目次
8. 仕分け付きOCR機能
8.1. 仕分けの概要
8.1.1. 処理の流れ
- 入力画像が複数ページであれば、ページごとに分割
- 画像がTIFFであれば、DPI変換
※「TIFFを300DPIに変換してからOCRを実行する」を設定している場合 - 画像の回転補正
※「回転補正を行う」を設定している場合 - 3.の画像でフォーマット判定
- 判定に成功したら、フォーマットの帳票定義を使ってOCRを行う
- 判定に失敗した場合、失敗フォルダに入力画像を移動する
8.1.2. 仕分けの判定について
フォーマット判定は 2段階 に分かれております。
1段階目では大まかな仕分けを行います。
画像全体から特徴的な箇所(特徴点)を抽出し、各テンプレート画像と入力画像を比較して最も特徴点の数がマッチした画像を持つグループに判定します。
2段階目では詳細仕分けを行います。
グループ内の画像に対して色または指定領域のみでの画像比較を行います。
色 での判定は、画像の見た目はほとんど似ているが色違いの帳票を判別したい場合に使います。
指定領域での画像比較 は、特定の場所に会社のロゴ等判別しやすい箇所がある場合に使います。
なお、下図のグループ2-詳細1のように、グループに属する画像が1つしかない場合は詳細な判定は行わずに判定結果が確定します。
8.2. 仕分け定義フォルダの構成
仕分けの定義は仕分け定義フォルダで行います。
仕分け定義フォルダは以下の通りに構成します。
仕分け定義フォルダの配置場所は任意ですが、フォルダの絶対パスに日本語を含まないでください。
?ClassifyDir --------- 1. 仕分け定義フォルダ
├?option.csv (固定名) --------- 2. 仕分け定義ファイル
├?setting.ini (固定名) --------- 3. 仕分け設定ファイル
└?Templates (固定名) --------- 4. テンプレートフォルダ
└?1 --------- 5. 大まかな仕分けフォルダ
└?1 --------- 6. 詳細仕分けフォルダ
└? template.jpg (固定名) --------- 7. テンプレート画像
└?2
└? template.jpg(固定名)
└?2
└?1
└? template.jpg (固定名)
:
No. | 名称 | 説明 |
1 | 仕分け定義フォルダ | 仕分け定義を格納するフォルダ 半角英数字、(ハイフン)、_(アンダースコア)、.(ピリオド)、#(シャープ)、&(アンパサンド)で指定可能 |
2 | 仕分け定義ファイル | テンプレート画像に紐づく仕分け定義を記載したファイル(csv形式) |
3 | 仕分け設定ファイル | 仕分けに使用する設定を記載する |
4 | テンプレートフォルダ | テンプレート画像を格納するフォルダ |
5 | 大まかな仕分けフォルダ | 大まかな仕分けのグループを表すフォルダ 数字で1,2…と順につける |
6 | 詳細仕分けフォルダ | 詳細仕分けの画像を配置するフォルダ 数字で1,2…と順につける |
7 | テンプレート画像 | 入力画像と比較するテンプレート画像 ファイルの名前は template から始まるように名称固定 |
8.3. AIRead SortingEditor で仕分け定義を設定
AIRead SortingEditor は、画像の仕分け設定を行うことのできるツールです。
また、RuleEditor/FormEditor で作成した定義情報を用いて、仕分け付のAIRead実行が可能です。
8.3.1. SortingEditor の起動
<AIREAD_HOME>\SortingEditor\AIReadSortingEditor.exe をダブルクリック、もしくはスタートメニューのショートカットから起動
します。
SortingEditor を起動すると、下記の画面が表示されます。
RuleEditor/FormEditor で作成済みの定義が存在する場合は、Form選択欄に表示されます。
8.3.2. SortingEditor の操作
8.3.2.1. 仕分け定義の作成
仕分け定義を新規作成する場合は、新規作成を押下するとダイアログが表示されます。
ダイアログ上で仕分け定義の作成先を指定し、任意の名称で仕分け定義を作成します。
No. | 名称 | 説明 |
1 | 保管場所 | 仕分け定義の作成先を指定する |
2 | 仕分名 | 作成する仕分け定義名を入力する 半角英数字、(ハイフン)、_(アンダースコア)、.(ピリオド)、#(シャープ)、&(アンパサンド)のみ使用可能 |
8.3.2.2. 仕分け定義の選択
開く ボタンを押下すると、フォルダ選択ダイアログが開かれます。
使用する仕分け定義フォルダを選択してください。
8.3.2.3. 共通設定ファイルの指定
AIReadの実行、RuleEditor/FormEditorで作成した定義との紐づけ、画像の仕分けに使用する共通設定ファイルを指定します。
共通設定ファイル ボタンを押すと、共通設定ファイル選択ダイアログを表示します。
参照 ボタンから使用する共通設定ファイルを選択します。
8.3.2.4. 仕分け定義の保存
保存 を押下すると、編集済みの仕分け定義が保存されます。
仕分け定義を変更した場合は、必ず保存してください。
8.3.3. Formの選択
共通設定ファイルによって指定された定義フォルダに配置された定義情報が、Form選択欄に表示されます。
仕分け定義フォルダに仕分け設定として紐づける定義情報にチェックを入力してください。
8.3.4. グループの作成
大まかな仕分けで仕分けを行うグループを作成します。
作成したグループは仕分け設定画面で、各定義情報に紐づけを行います。
No. | 項目名 | 説明 |
1 | グループ作成 | 大まかな仕分けで仕分けを行うグループを作成する |
2 | グループ一覧 | 作成したグループが表示される |
3 | グループ削除 | グループを削除する |
4 | グループ | 選択中のグループ名が表示される グループ名は任意の名称で変更可能 |
5 | ◀ ▶ (画像送り) | 表示する画像を選択する |
6 | + - (画像上で Ctrlキー + マウスホイール操作) | 画像を拡大/縮小する |
8.3.5. 仕分け設定
Form選択でチェックを入力した定義情報が表示されます。
また、詳細仕分けで作成したグループを各定義情報へ紐づけます。
No. | 項目名 | 説明 |
1 | Template追加 | 選択中の仕分け設定に紐づけるテンプレート画像を追加する 追加されたテンプレート画像は画像仕分けを行う際にも使用される |
2 | Template削除 | 画面で表示中のテンプレート画像を削除する |
3 | 仕分け設定一覧 | Form選択画面でチェックを入れた定義情報が表示される F:定義情報名 FormEditor で作成した定義情報(定型読み取りに使用) R:定義情報名 RuleEditor で作成した定義情報(非定型読み取りに使用) |
4 | グループ | 詳細設定画面で作成するグループを仕分け設定に紐づける グループを紐づける場合は、予め詳細仕分け画面でグループを作成する必要がある |
5 | ◀ ▶ (画像送り) | 表示する画像を選択する |
6 | + - (画像上で Ctrlキー + マウスホイール操作) | 画像を拡大/縮小する |
8.3.5.1. 定義情報とグループの紐づけ
作成したグループは、表示中の定義情報へ紐づけを行う必要があります。
ドロップダウンから作成済みのグループを紐づけてください。
8.3.6. 詳細仕分け設定
作成したグループで詳細仕分けを行う場合、色もしくは、指定領域での画像比較で設定を行う必要があります。
No. | 項目名 | 説明 |
1 | 詳細仕分けの方法 | |
詳細仕分けを指定しない | 詳細仕分けは行わない グループに属する定義情報が1つしかない場合は詳細な仕分けは不要 | |
色で詳細仕分けをする | グループに属する定義情報が2つ以上ある場合に、色の類似度合いで判定を行う方法 | |
領域で詳細仕分けを行う | グループに属する定義情報が2つ以上ある場合、指定した領域に絞って判定を行う方法 | |
2 | フォームID | 選択中の定義情報が表示される |
3 | X Y W H | 領域で詳細仕分けを行う を選択した場合に、指定した領域の座標 X:指定した領域の左上のX座標(ピクセル) Y:指定した領域の左上のY座標(ピクセル) W:指定した領域の幅(ピクセル) H:指定した領域の高さ(ピクセル) |
8.3.6.1. 色で詳細仕分けを行う場合
同じグループに色の異なるが、レイアウトの似ている帳票があるときは、色で詳細仕分けをする を選択する
8.3.6.2. 指定した領域で詳細仕分けを行う場合
同じグループに色が同じで、レイアウトが似通っている帳票があるときは、領域で詳細仕分けを行う を選択する
領域で詳細仕分けを行う を選択した状態で、画像上の任意の場所をドラッグすると、領域の指定を行うことができます。
8.3.7. 仕分けの実行
画像の仕分けのみを行う場合は、仕分け実行を押下すると仕分け実行ダイアログが表示されます。
ダイアログ上から、対象の画像を指定して仕分け実行します。
No. | 名称 | 説明 |
1 | 画像ファイル名 | 仕分け対象の画像を指定する |
2 | ページ番号 | 仕分け対象の画像が複数枚つづりのPDF/TIFF である場合は、対象とするページを選択する |
3 | 仕分け実行 | 指定した画像を対象に、仕分けの判定を行う |
4 | 仕分け結果 | 仕分け実行 ボタンで実行した仕分け結果が表示される |
8.3.8. 仕分け付OCRの実行
画像の仕分け付でAIReadの実行を行う場合は、AIRead ボタンを押下すると実行ダイアログが表示されます。
ダイアログ上から、対象の画像を指定して仕分け付のOCRを実行します。
正常に実行が完了すると、AIRead Viewerが起動します。
Viewer の詳細については、5.2.11 AIReadの実行結果を確認を参照ください。
8.4. 直接仕分け定義を設定
8.4.1. 仕分け定義ファイルの編集
仕分け設定ファイルを直接編集する場合は、テキストエディタで<AIREAD_HOME>\ClassifyDir\option.csv で編集します。
1,1,S,order,1,0,10,10,50,50 1,2,S,order2,1,0,10,10,50,50 2,1,E,Invoice,0,0,,,, |
・文字エンコード:UTF-8
・改行コード:LF
CSV中の各列の意味は下記の通りです。
No. | 名称 | 説明 |
1 | グループ番号 | 大まかな仕分けのグループ番号 大まかな仕分けフォルダ名を指定する |
2 | 詳細番号 | 詳細仕分けの番号 詳細仕分けフォルダ名を指定する |
3 | 抽出モード | 抽出モードの設定 S : 座標指定 E : キーワード抽出 W : 表検出付全文OCR ※キーワード抽出はEnterprise版のみ使用可 |
4 | フォーマットID | OCR時に使用するフォーマットID |
5 | 色判定フラグ | 詳細仕分けに色の類似度合いを使用するかのフラグ 0 : 使用しない(デフォルト) 1 : 使用する ※同一グループ内では同一の設定にしてください |
6 | 領域指定フラグ | 詳細仕分けで画像の注目する領域を絞ったマッチングを行うかのフラグ 0 : 行わない(デフォルト) 1 : 行う ※同一グループ内では同一の設定にしてください ※色判定と同時に使うことはできません(両方設定されていた場合、色判定のみ行います) |
7 | 指定領域始点X | 領域指定の左上のX座標(左上原点、単位はピクセル) |
8 | 指定領域始点Y | 領域指定の左上のY座標(左上原点、単位はピクセル) |
9 | 指定領域横幅 | 領域指定の横幅(単位はピクセル) |
10 | 指定領域縦幅 | 領域指定の縦幅(単位はピクセル) |
8.4.2. 仕分け設定ファイルの編集
仕分け設定ファイルを直接編集する場合は、テキストエディタで<AIREAD_HOME>\ClassifyDir\setting.ini で編集します。
・文字エンコード:UTF-8
・改行コード:LF
maxFeatures=2000 matchCtTh=50 sizeDiffTh=-1 |
各項目の意味は下記の通りです。
No. | 項目名 | 書式 | 説明 |
1 | maxFeatures | 1以上の整数値 | 画像の比較に使用する特徴的な点を検出する数 多くすると仕分け精度が上がる傾向にある一方、処理時間が増加する (デフォルト:2000) |
2 | matchCtTh | 0以上の整数値 | 大まかな仕分け時に、入力画像とテンプレート画像が似ていると判断するのに最低限必要な特徴点のマッチ数 全てのテンプレート画像に対して特徴点のマッチ数がこの値に達しない場合、判定失敗となる この値を上げると厳密な判定ができるが、判定失敗になる画像が増えやすくなる (デフォルト:50) |
3 | sizeDiffTh | -1以上の整数値 | テンプレート画像と入力画像のピクセルでの面積を比較し、その差がこの値より大きい場合そのテンプレート画像との比較をスキップする -1を指定した場合、このスキップ処理は行われない (デフォルト:-1) |
8.5. batからの仕分け付OCR実行
bat を用いて、仕分け付きのOCRの実行を行う場合は、仕分けの登録と実行の2段階で行います。
8.5.1. 仕分け登録
配置されたテンプレート画像の登録は、下記のコマンドで行います。
call "%AIREAD_HOME%\IDELibrary\scripts\set_envs.bat" set MAIN_CLASS_NAME=co.jp.ariseinnovation.AIReadEE.AIReadEE "%AIREAD_JAVA%/java" -Xmx8192m -classpath %CLASSPATH% %MAIN_CLASS_NAME% -s [SettingFile] -R [仕分け定義フォルダ] |
- オプション: バッチの中身は引数で書き換えることができます。
No. | 引数 | 説明 |
---|---|---|
1 | -s [SettingFile] | 共通設定ファイルを指定 |
2 | -R [仕分け定義フォルダ] | 仕分け定義が格納されたフォルダを指定 |
※run_register.bat はサンプル帳票の実行ファイルです。ダブルクリックで実行できます。
8.5.2. 仕分け付きOCRの実行
仕分け付きOCRの実行は、下記のコマンドで行います。
call "%AIREAD_HOME%\IDELibrary\scripts\set_envs.bat" set MAIN_CLASS_NAME=co.jp.ariseinnovation.AIReadEE.AIReadEE "%AIREAD_JAVA%/java" -Xmx8192m -classpath %CLASSPATH% %MAIN_CLASS_NAME% -s [SettingFile] -A [仕分け定義フォルダ] |
- オプション: バッチの中身は引数で書き換えることができます。
No. | 引数 | 説明 |
---|---|---|
1 | -s [SettingFile] | 共通設定ファイルを指定 |
2 | -A [仕分け定義フォルダ] | 仕分けに使用するフォルダを指定 |
※run_assort.bat はサンプル帳票の実行ファイルです。ダブルクリックで実行できます。
8.5.3. 仕分けのみの実行
仕分けのみの実行は、下記のコマンドで行います。
call "%AIREAD_HOME%\IDELibrary\scripts\set_envs.bat" set MAIN_CLASS_NAME=co.jp.ariseinnovation.AIReadEE.AIReadEE "%AIREAD_JAVA%/java" -Xmx8192m -classpath %CLASSPATH% %MAIN_CLASS_NAME% -s [SettingFile] -a [仕分け定義フォルダ] |
- オプション: バッチの中身は引数で書き換えることができます。
No. | 引数 | 説明 |
---|---|---|
1 | -s [SettingFile] | 共通設定ファイルを指定 |
2 | -a [仕分け定義フォルダ] | 仕分けに使用するフォルダを指定 |