(57)【要約】【課題】特定のキーワードに対応したバリューを特定する処理を高速化することを目的とする。【解決手段】画像から、文字領域を抽出する抽出手段と、予め設定されたキーワードの文字数から、キーワード領域のサイズを推定する推定手段と、キーワード領域のサイズの推定値と、抽出手段により抽出され記文字領域のサイズと、に基づいて、複数の文字領域の中から、キーワードが記載されたキーワード領域を特定する第１の領域特定手段とを有する。【選択図】図３
2018055256.tif 000002
【特許請求の範囲】
【請求項１】
画像から、文字領域を抽出する抽出手段と、
予め設定されたキーワードの文字数から、キーワード領域のサイズを推定する推定手段と、
前記キーワード領域のサイズの推定値と、前記抽出手段により抽出された前記文字領域のサイズと、に基づいて、複数の文字領域の中から、前記キーワードが記載されたキーワード領域を特定する第１の領域特定手段と
を有することを特徴とする情報処理装置。
【請求項２】
予め設定された前記キーワード領域との位置関係に基づいて、前記キーワードに対応するバリューが記載されたバリュー領域を特定する第２の領域特定手段と、
前記バリュー領域に対する文字認識によりバリューの文字を特定する文字特定手段と
をさらに有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記文字領域のサイズが前記キーワード領域のサイズの推定値を基準としたサイズ範囲内の値となる前記文字領域を、キーワード領域候補として選択する選択手段をさらに有し、
前記第１の領域特定手段は、前記キーワード領域候補に対する文字認識結果に基づいて、前記キーワード領域候補から前記キーワード領域を特定することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記推定手段は、予め設定された文字のサイズと、マージンのサイズとに基づいて、前記キーワード領域のサイズを推定することを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
画像から、文字領域を抽出する抽出手段と、
予め設定されたキーワードが表示されるキーワード領域と、前記キーワードに対応したバリューが表示されるバリュー領域とを結合した結合領域のサイズを、前記キーワード及びバリューの文字数に基づいて推定する推定手段と、
前記結合領域のサイズの推定値と、前記抽出手段により抽出された前記文字領域のサイズと、に基づいて、複数の文字領域の中から、前記結合領域を特定する領域特定手段と、
前記結合領域の文字認識結果と前記キーワードの文字列と、に基づいて、前記バリューの文字を特定する文字特定手段と
を有することを特徴とする情報処理装置。
【請求項６】
前記文字領域のサイズが前記結合領域のサイズの推定値を基準としたサイズ範囲内の値となる前記文字領域を、結合領域候補として選択する選択手段をさらに有し、
前記領域特定手段は、前記結合領域候補に対する文字認識結果に基づいて、前記結合領域候補から前記結合領域を特定することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記文字特定手段は、前記結合領域に対する文字認識において、前記キーワードの文字に一致した文字以外の文字を前記バリューの文字として特定することを特徴とする請求項５又は６に記載の情報処理装置。
【請求項８】
前記推定手段は、予め設定された文字のサイズと、マージンのサイズとに基づいて、前記結合領域のサイズを推定することを特徴とする請求項５乃至７の何れか１項に記載の情報処理装置。
【請求項９】
情報処理装置が実行する情報処理方法であって、
画像から、文字領域を抽出する抽出ステップと、
予め設定されたキーワードの文字数から、キーワード領域のサイズを推定する推定ステップと、
前記キーワード領域のサイズの推定値と、前記抽出ステップにおいて抽出された前記文字領域のサイズと、に基づいて、複数の文字領域の中から、前記キーワードが記載されたキーワード領域を特定する第１の領域特定ステップと
を含むことを特徴とする情報処理方法。
【請求項１０】
情報処理装置が実行する情報処理方法であって、
画像から、文字領域を抽出する抽出ステップと、
予め設定されたキーワードが表示されるキーワード領域と、前記キーワードに対応したバリューが表示されるバリュー領域とを結合した結合領域のサイズを、前記キーワード及びバリューの文字数に基づいて推定する推定ステップと、
前記結合領域のサイズの推定値と、前記抽出ステップにおいて抽出された前記文字領域のサイズと、に基づいて、複数の文字領域の中から、前記結合領域を特定する領域特定ステップと、
前記結合領域の文字認識結果と前記キーワードの文字列と、に基づいて、前記バリューの文字を特定する文字特定ステップと
を含むことを特徴とする情報処理方法。
【請求項１１】
コンピュータを、
画像から、文字領域を抽出する抽出手段と、
予め設定されたキーワードの文字数から、キーワード領域のサイズを推定する推定手段と、
前記キーワード領域のサイズの推定値と、前記抽出手段により抽出された前記文字領域のサイズと、に基づいて、複数の文字領域の中から、前記キーワードが記載されたキーワード領域を特定する第１の領域特定手段と
して機能させるためのプログラム。
【請求項１２】
コンピュータを、
画像から、文字領域を抽出する抽出手段と、
予め設定されたキーワードが表示されるキーワード領域と、前記キーワードに対応したバリューが表示されるバリュー領域とを結合した結合領域のサイズを、前記キーワード及びバリューの文字数に基づいて推定する推定手段と、
前記結合領域のサイズの推定値と、前記抽出手段により抽出された前記文字領域のサイズと、に基づいて、複数の文字領域の中から、前記結合領域を特定する領域特定手段と、
前記結合領域の文字認識結果と前記キーワードの文字列と、に基づいて、前記バリューの文字を特定する文字特定手段と
して機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
従来、帳票等のスキャン画像に対して、画像中に記載されている名前や合計金額などが記載されている領域を特定し、文字認識をすることで情報を抽出するシステムがある。名前や合計金額等の記載位置が固定でない場合に、キーワード（項目）の領域を特定し、キーワードの領域との位置関係から対応するバリュー（値）が記載されている領域として特定する技術が知られている。例えば、名前を取り出したい場合は、"名前"もしくは"氏名"をキーワードとし、その右側の領域をバリューの領域とする。また、特許文献１には、表領域の枠の最上段と最下段と最左列に位置する文字列のみを項目名領域検出処理の対象とすることで処理の高速化を図る技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−９３３０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、キーワード領域を特定する際に、帳票全体の文字認識結果を用いる場合、処理に時間がかかってしまう。また、特許文献１の技術は、表以外の領域や罫線のない表には適用できないという問題があった。
【０００５】
本発明はこのような問題点に鑑みなされたもので、特定のキーワードに対応したバリューを特定する処理を高速化することを目的とする。
【課題を解決するための手段】
【０００６】
そこで、本発明は、情報処理装置であって、画像から、文字領域を抽出する抽出手段と、予め設定されたキーワードの文字数から、キーワード領域のサイズを推定する推定手段と、前記キーワード領域のサイズの推定値と、前記抽出手段により抽出された前記文字領域のサイズと、に基づいて、複数の文字領域の中から、前記キーワードが記載されたキーワード領域を特定する第１の領域特定手段とを有することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、特定のキーワードに対応したバリューを特定する処理を高速化することができる。
【図面の簡単な説明】
【０００８】
【図１】情報処理システムを示す図である。
【図２】非定型帳票の一例を示す図である。
【図３】バリュー抽出処理を示すフローチャートである。
【図４】文字領域の抽出結果の一例を示す図である。
【図５】領域テーブルの一例を示す図である。
【図６】キーバリューテーブルの一例を示す図である。
【図７】領域サイズ推定処理の説明図である。
【図８】バリュー領域特定処理の説明図である。
【図９】キーワード領域特定処理を示すフローチャートである。
【図１０】第２の実施形態に係るバリュー抽出処理を示すフローチャートである。
【図１１】第２の実施形態に係るキーバリューテーブルの一例を示す図である。
【図１２】第２の実施形態に係るバリュー特定処理を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態について図面に基づいて説明する。
【００１０】
（第１の実施形態）
図１は、第１の実施形態に係る情報処理システムを示す図である。情報処理システムは、複写機１００と、情報処理装置１１０とを有している。複写機１００は、スキャナ１０１と、プリンタ１０２と、通信部１０３とを有している。スキャナ１０１は、文書のスキャンを行い、スキャン画像を生成する。プリンタ１０２は、画像を形成する。通信部１０３は、ネットワークを介して外部装置と通信を行う。
【００１１】
情報処理装置１１０は、ＣＰＵ１１１と、ＲＯＭ１１２と、ＲＡＭ１１３と、ＨＤＤ１１４と、表示部１１５と、入力部１１６と、通信部１１７とを有している。ＣＰＵ１１１は、ＲＯＭ１１２に記憶された制御プログラムを読み出して各種処理を実行する。ＲＡＭ１１３は、ＣＰＵ１１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ１１４は、各種データや各種プログラム等を記憶する。なお、後述する情報処理装置１１０の機能や処理は、ＣＰＵ１１１がＲＯＭ１１２又はＨＤＤ１１４に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
【００１２】
通信部１１７は、ネットワークを介して外部装置との通信処理を行う。表示部１１５は、各種情報を表示する。入力部１１６は、キーボードやマウスを有し、ユーザによる各種操作を受け付ける。なお、表示部１１５と入力部１１６は、タッチパネルのように一体に設けられていてもよい。また、表示部１１５は、プロジェクタによる投影を行うものであってもよく、入力部１１６は、投影された画像に対する指先の位置を、カメラで認識するものであってもよい。
【００１３】
本実施形態においては、複写機１００のスキャナ１０１が帳票等をスキャンし、帳票画像を生成する。そして、帳票画像は、通信部１０３により情報処理装置１１０に送信される。情報処理装置１１０においては、通信部１１７が帳票画像を受信し、これをＨＤＤ１１４等の記憶部に記憶する。なお、スキャナ１０１のスキャン対象となる帳票は非定型帳票である。非定型帳票とは、帳票中の情報の記載されている位置が固定でないもの（帳票のフォーマットが未知のもの）のことである。これに対応し、情報処理装置１１０のＨＤＤ１１４には、非定型帳票に対応した、各情報の記載位置が異なる複数の帳票画像が記憶されている。
【００１４】
図２は、非定型帳票の一例を示す図である。図２の例では、図２（ａ）に示す帳票２０１と、図２（ｂ）に示す帳票２０２においては、名前の情報（帳票太郎）が記載されている位置が互いに異なっている。以下、帳票画像に記載された「氏名」や「名前」といった文字列は、対応する「帳票太郎」の文字列を検索するためのキーワードとなる。この「氏名」や「名前」といった文字列を、以降においてキーワード（項目）と称することとする。さらに、キーワードに対応した文字列（例えば、「氏名」に対応した文字列である「帳票太郎」）をバリュー（値）と称することとする。さらに、キーワードが記載された領域をキーワード領域、バリューが記載された領域をバリュー領域と称することとする。
【００１５】
図３は、情報処理装置１１０によるバリュー抽出処理を示すフローチャートである。Ｓ３０１において、ＣＰＵ１１１は、ＨＤＤ１１４に記憶されている帳票画像を１つ取得する。次に、Ｓ３０２において、ＣＰＵ１１１は、Ｓ３０１において取得した帳票画像に対して、領域解析を行うことにより、文字領域を抽出する。具体的には、ＣＰＵ１１１は、帳票画像中の矩形領域毎の属性を判別する。ここで、属性としては、文字領域、画像領域、グラフィック領域などがあるが、本実施形態においては、領域解析結果で特定された文字領域を利用する。領域解析は既知の手法を用いればよい。
【００１６】
図４は、文字領域の抽出結果の一例を示す図である。図４に示す抽出結果は、図２（ａ）に示す帳票２０１に対応した帳票画像に対応している。ＣＰＵ１１１は、抽出した文字領域の情報を領域テーブルに格納する。図５は、領域テーブルの一例を示す図である。領域テーブルには、領域を識別するＩＤと、文字領域の位置としての左上座標と、文字領域の幅及び高さと、文字認識結果のフィールドが設けられている。なお、座標値は、画像の左上を原点とし、横方向をＸ軸とし、縦方向をＹ軸とした際の、ピクセル値とする。
【００１７】
ＣＰＵ１１１は、得られた文字領域に対しＩＤを付与し、文字領域に対応した、ＩＤ、左上座標、幅及び高さを領域テーブルに書き込む。なお、図５に示すＩＤと図４に示すＩＤは対応している。なお、Ｓ３０２の処理時点においては文字認識処理が実行されていないため、領域テーブルの文字認識結果のフィールドは空欄である。
【００１８】
図３に戻り、Ｓ３０２の処理の後、Ｓ３０３において、ＣＰＵ１１１は、キーバリューテーブルからキーワードの文字数を特定する。図６は、キーバリューテーブルの一例を示す図である。キーバリューテーブルは、例えばＨＤＤ１１４に予め記憶されているものとする。キーバリューテーブルにおいて、インデックス名と、キーワード文字列と、方向と、距離と、が対応付けられている。インデックス名は、キーワードを識別する情報である。キーワード文字列は、キーワードとして表示される文字列である。キーワード文字列は１つでもよく、複数でもよい。方向及び距離については後述する。
【００１９】
キーワード文字列として、例えば、インデックス「ｔｏｔａｌ名」に対しては「合計」という１つの文字列のみが対応付けられている。また、その文字数は２文字である。一方、インデックス名「ｎａｍｅ」に対しては、「氏名」、「名前」、「患者名」の３種類のキーワード文字列が対応付けられている。これらの文字数は、２文字又は３文字である。ＣＰＵ１１１は、Ｓ３０３において、キーバリューテーブルのキーワード文字列に格納されている文字列の文字数を特定する。なお、ＣＰＵ１１１は、複数の文字列が格納されている場合には、文字数の最小値と最大値を特定する。
【００２０】
次に、Ｓ３０４において、ＣＰＵ１１１は、キーワードの文字数に基づいて、キーワード領域の領域サイズを推定する。図７は、領域サイズ推定処理（Ｓ３０４）の説明図である。推定には、予め設定された、文字サイズの最大値及び最小値と、文字間のマージンサイズの最大値及び最小値が用いられる。例えば、文字の最大値を２５ピクセル、最小値を１８ピクセル、マージンの最大値を１５ピクセル、最小値を０ピクセルと定めたとする。
【００２１】
インデックス名「ｔｏｔａｌ」に対するキーワード文字列の文字数は２文字である。したがって、この場合、ＣＰＵ１１１は、図７（ａ）に示すように、幅・高さ１８の最小サイズの文字７０１を２つ横に並べた高さ１８ピクセル、幅３６ピクセルの矩形領域７０２をキーワード領域の最小値と推定する。一方で、ＣＰＵ１１１は、図７（ｂ）に示すように、最大サイズの文字列７１１を２つ横に並べ、最大サイズのマージン７１２を文字間に挿入した、高さ２５ピクセル、幅６５ピクセルの矩形領域７１４をキーワード領域の最大値と推定する。
【００２２】
なお、本実施形態においては、ＣＰＵ１１１は、文字列が横方向に並んでいるものとして、領域サイズの推定を行ったが、文字列が縦に並んでいる場合も想定して別途縦長サイズのキーワード領域の領域サイズを推定してもよい。
【００２３】
図３に戻り、Ｓ３０４の後、Ｓ３０５において、ＣＰＵ１１１は、領域サイズの推定値に基づいて、キーワード領域を特定する。本処理は、領域特定処理の一例である。なお、本処理については、図９を参照しつつ後述する。次に、Ｓ３０６において、ＣＰＵ１１１は、Ｓ３０５において特定したキーワード領域の位置に基づいて、バリュー領域を特定する。ＣＰＵ１１１は、バリュー領域を特定する際には、予め設定されたキーワード領域とバリュー領域の位置関係を示す情報を参照する。本実施形態においては、ＣＰＵ１１１は、図６に示すキーバリューテーブルの方向及び距離を参照する。ここで、方向及び距離は、キーワード領域を基準とした、バリュー領域の方向と距離を示す情報である。すなわち、これらの情報は、キーワード領域とバリュー領域の位置関係を示す情報である。方向及び距離には、右方向で３０ピクセル以内にある領域というように定義される。
【００２４】
ＣＰＵ１１１は、例えば、図８に示すように、キーワード領域と同じ高さで右方向に３０ピクセル伸ばした領域８０１と重なる文字領域を領域テーブルから検索し、領域８０１と一致した文字領域をバリュー領域として特定する。図５に示すＩＤ１５の領域がキーワード領域として特定された場合、キーワード領域と同じ高さで右方向に３０ピクセル伸ばした領域と重なる領域であるＩＤ１６の領域がバリュー領域として特定される。なお、Ｓ３０６の処理は、領域特定処理の一例である。次に、Ｓ３０７において、ＣＰＵ１１１は、Ｓ３０６において特定されたバリュー領域に対して、文字認識を行い、得られた結果をＨＤＤ１１４に格納する。Ｓ３０７の処理は、バリューの文字を特定する文字特定処理の一例である。なお、抽出したいバリューが複数ある場合には、Ｓ３０３〜Ｓ３０７の処理を繰り返す。
【００２５】
図９は、キーワード領域特定処理（Ｓ３０５）における詳細な処理を示すフローチャートである。まず、Ｓ９０１において、ＣＰＵ１１１は、Ｓ３０４において推定した領域サイズに基づいて、キーワード領域に対して基準となるサイズ範囲を定める。ＣＰＵ１１１は、Ｓ３０４において特定した領域サイズの最小値から最小値の範囲をサイズ範囲として定める。なお、ＣＰＵ１１１は、キーワード領域の領域サイズの推定値からサイズ範囲を定めればよく、そのための処理は実施形態に限定されるものではない。例えば、ＣＰＵ１１１は、Ｓ３０４において、代表的な１つの領域サイズを推定し、Ｓ９０１において、代表的な領域サイズを中心値とした所定の幅のサイズ範囲を定めてもよい。
【００２６】
次に、Ｓ９０２において、ＣＰＵ１１１は、領域テーブルに格納されている文字領域から、サイズ範囲内のサイズの文字領域をキーワード領域候補として選択する。例えば、インデックス名「ｔｏｔａｌ」のキーワードに対するサイズ範囲の最大値が高さ２５ピクセル、幅６５ピクセル、最小値高さ１８ピクセル、幅３６ピクセルであるとする。この場合には、図６の領域テーブルからは、ＩＤ２、ＩＤ４、ＩＤ７、ＩＤ１３、ＩＤ１５の文字領域がキーワード領域候補として選択される。
【００２７】
次に、Ｓ９０３において、ＣＰＵ１１１は、未処理のキーワード領域候補があるか否かを確認する。ＣＰＵ１１１は、未処理のキーワード領域候補が存在する場合には（Ｓ９０３でＹＥＳ）、処理をＳ９０４へ進める。ＣＰＵ１１１は、未処理のキーワード領域候補が存在しない場合には（Ｓ９０３でＮＯ）、処理をＳ９０８へ進める。Ｓ９０４において、ＣＰＵ１１１は、未処理のキーワード領域候補を１つ選択する。以下、Ｓ９０４において選択されたキーワード領域候補を選択領域と称する。なお、ＣＰＵ１１１は、未処理のキーワード領域候補が複数存在する場合には、左上座標のｘの座標が最も小さいものを選択することとする。また、他の例としては、左上座標のｙ座標の値が最も小さいものを選択してもよい。
【００２８】
次に、Ｓ９０５において、ＣＰＵ１１１は、選択領域に対して文字認識を行い、認識結果を、領域テーブルの、選択領域に対応する文字認識結果の欄に書き込む。なお、ＣＰＵ１１１は、複数のバリューを抽出する際には、領域テーブルに書き込まれた文字認識結果を参照する。これにより、同じ領域に対し、何度も文字認識を行う手間を省くことができる。なお、文字認識には、既知の方法を用いる。次に、Ｓ９０６において、ＣＰＵ１１１は、文字認識結果が、キーバリューテーブルのキーワードの文字列と一致するか否かを確認する。例えば、図６のインデックス名「ｔｏｔａｌ」のキーワードの場合には、キーワードの文字列は「合計」なので、文字認識結果が「合計」であるか否かを確認する。
【００２９】
なお、他の例としては、情報処理装置１１０が文字認識結果の候補を複数出力する場合には、ＣＰＵ１１１は、キーワードの文字が認識結果に含まれているか否かを確認してもよい。また、文字認識結果は画像上のノイズ等に影響されて余分な文字を含む文字認識結果が得られる場合等誤認識の可能性がある。これに対応し、文字認識結果の中にキーワード文字列の５割が含まれていたら一致すると判断するなど、一致の条件を緩めてもよい。
【００３０】
ＣＰＵ１１１は、両文字列が一致する場合には（Ｓ９０６でＹＥＳ）、処理をＳ９０７へ進める。ＣＰＵ１１１は、両文字が一致しない場合には（Ｓ９０６でＮＯ）、選択領域としてのキーワード領域候補に処理済みの情報を設定し、その後処理をＳ９０３へ進める。Ｓ９０７において、ＣＰＵ１１１は、選択領域をキーワード領域として特定し、キーワード領域をＲＡＭ１１３等の記憶部に記録する。
【００３１】
一方、Ｓ９０８においては、ＣＰＵ１１１は、キーワード領域候補として選択されていない文字領域（未選択領域）に対し、キーワード領域があるかの検索を行い、キーワード領域の特定を行う。具体的には、ＣＰＵ１１１は、すべての未選択領域に対して、文字認識を実行し、Ｓ９０６の処理と同様にキーワード名と一致している領域がないかの判断を行う。この処理においてもキーワード領域の特定ができなかった場合は、バリューの領域の特定（Ｓ３０６）と、バリューの領域の文字認識（Ｓ３０７）は実施せず、バリューの抽出に失敗したと判断し、失敗を示す情報をＲＡＭ１１３に記録し、処理を終了する。
【００３２】
以上のように、本実施形態に係る情報処理装置１１０は、キーワードの文字数に基づいて、キーワード領域の領域サイズを推定し、領域サイズの推定値に基づいて、文字領域からキーワード領域候補を絞り込む。これにより、文字領域すべてに対して文字認識を行うことによりキーワード領域を特定する場合に比べて、処理を高速化することができる。また、情報処理装置１１０は、キーワード領域とバリュー領域の位置関係と、キーワード領域の位置と、に基づいてバリュー領域を特定する。したがって、罫線（枠線）が省略されている表や、表以外の領域においても、キーワード領域の特定及びバリュー領域の特定を行うことができる。以上のように、情報処理装置１１０は、特定のキーワードに対応したバリューを特定する処理を高速化することができる。
【００３３】
（第２の実施形態）
次に、第２の実施形態に係る情報処理装置１１０について説明する。第２の実施形態に係る情報処理装置１１０は、キーワード領域とバリュー領域とを結合した結合領域の領域サイズを推定する。そして、情報処理装置１１０は、結合領域の領域サイズの推定値（推定サイズ）に基づいて、バリューとしての文字列を特定する。
【００３４】
図１０は、第２の実施形態に係る情報処理装置１１０による、バリュー抽出処理を示すフローチャートである。なお、図１０に示す各処理のうち、図３を参照しつつ説明した第１の実施形態に係る各処理と同一の処理には、同一の番号を付し、説明を省略する。ＣＰＵ１１１は、Ｓ３０３の処理の後、処理をＳ１００１へ進める。Ｓ１００１において、ＣＰＵ１１１は、キーバリューテーブルから、バリューの文字数を特定する。図１１は、第２の実施形態に係るキーバリューテーブルの一例を示す図である。第２の実施形態に係るキーバリューテーブルにおいては、インデックス名に、バリュー文字数がさらに対応付けられている。バリュー文字数は、バリューとなる文字列が取り得る文字数である。例えば、図１１に示すように、インデックス名「ｔｏｔａｌ」に対しては、５−７の文字数が設定されている。
【００３５】
図１０に戻り、Ｓ１００１の後、Ｓ１００２において、ＣＰＵ１１１は、キーワードの文字数及びバリューの文字数に基づいて、結合領域の領域サイズを推定する。例えば、インデックス名「ｔｏｔａｌ」に対しては、キーワードが「合計」という２文字の文字列であり、バリューの文字数が「５〜８」文字である。したがって、これらを結合すると、７〜１０文字となる。この場合、ＣＰＵ１１１は、７文字の場合の領域サイズの最小値と、１０文字の場合の領域サイズの最大値を求める。なお、本処理は、キーワード領域推定処理（Ｓ３０４）における処理と同様である。次に、Ｓ１００３において、ＣＰＵ１１１は、Ｓ１００２において推定した領域サイズに基づいて、バリューの文字を特定する。
【００３６】
図１２は、バリュー特定処理（Ｓ１００３）における詳細な処理を示すフローチャートである。まず、Ｓ１２０１において、ＣＰＵ１１１は、Ｓ１００２において推定した、結合領域の領域サイズに基づいて、結合領域に対して基準となるサイズ範囲を定める。ＣＰＵ１１１は、Ｓ１００２において特定した領域サイズの最小値から最小値の範囲をサイズ範囲として定める。なお、本処理は、Ｓ９０１の処理と同様である。次に、Ｓ１２０２において、ＣＰＵ１１１は、領域テーブルに格納されている文字領域から、サイズ範囲内のサイズの文字領域を結合領域候補として選択する。
【００３７】
次に、Ｓ１２０３において、ＣＰＵ１１１は、未処理の結合領域候補があるか否かを確認する。ＣＰＵ１１１は、未処理の結合領域候補が存在する場合には（Ｓ１２０３でＹＥＳ）、処理をＳ１２０４へ進める。ＣＰＵ１１１は、未処理の結合領域候補が存在しない場合には（Ｓ１２０３でＮＯ）、処理をＳ１２０８へ進める。Ｓ１２０４において、ＣＰＵ１１１は、未処理の結合領域候補を１つ選択する。以下、Ｓ１２０４において選択された結合領域候補を選択領域と称する。なお、ＣＰＵ１１１は、未処理の結合領域候補が複数存在する場合には、左上座標のｘの座標が最も小さいものを選択することとする。また、他の例としては、左上座標のｙ座標の値が最も小さいものを選択してもよい。
【００３８】
次に、Ｓ１２０５において、ＣＰＵ１１１は、選択領域に対して文字認識を行い、認識結果を、領域テーブルの、選択領域に対応する文字認識結果の欄に書き込む。次に、Ｓ１２０６において、ＣＰＵ１１１は、文字認識結果の一部がキーワードの文字列と一致しているか否かを確認する。例えば、図２に示す「合計２００００円」の記載に対応した文字領域が選択領域である場合には、文字認識結果として「合計２００００円」が得られる。一方、キーワードの文字列は「合計」である。したがって、この場合には、文字認識結果の一部である「合計」の文字列がキーワードの文字列と一致する。なお、文字認識結果の一宇がキーワードの文字列と一致する結合領域候補は結合領域であり、Ｓ１２０６の処理は、結合領域を特定する領域特定処理の一例である。
【００３９】
ＣＰＵ１１１は、文字認識結果の一部がキーワード文字列と一致した場合には（Ｓ１２０６でＹＥＳ）、処理をＳ１２０７へ進める。ＣＰＵ１１１は、文字認識結果の一部がキーワード文字列と一致しなかった場合には（Ｓ１２０６でＮＯ）、処理をＳ１２０３へ進める。Ｓ１２０７において、ＣＰＵ１１１は、文字認識結果からキーワードの文字列を除いたもの、すなわちキーワードの文字以外の文字をバリューの文字として特定する。例えば、文字認識結果「合計２００００円」に対しては、キーワードの文字列「合計」を除いた文字列「２００００円」がバリューの文字として特定される。ＣＰＵ１１１は、バリューの文字列を記憶部に記録する。Ｓ１２０７の処理は、バリューの文字を特定する文字特定処理の一例である。
【００４０】
一方、Ｓ１２０８において、ＣＰＵ１１１は、結合領域候補として選択されていない文字領域（未選択領域）に対して、文字認識を実行し、未選択領域に、Ｓ９０４の処理と同様にキーワードの文字列と一致する領域があるか確認する。なお、キーワード領域とバリュー領域が結合している場合もある。したがって、ＣＰＵ１１１は、Ｓ１２０６、Ｓ１２０７と同様に、文字認識結果の一部がキーワードの文字列と一致するか否かも確認する。ＣＰＵ１１１は、この処理でキーワード領域の特定ができなかった場合は、バリューの抽出に失敗したと判断し、失敗を示す情報をＲＡＭ１１３に記録し、処理を終了する。なお、第２の実施形態に係る情報処理装置１１０の構成及び処理は、第１の実施形態に係る情報処理装置１１０の構成及び処理と同様である。
【００４１】
以上のように、第２の実施形態に係る情報処理装置１１０は、キーワード領域とバリュー領域の結合領域に対して文字認識を行い、認識結果からキーワードを除いたものをバリューの文字として特定する。すなわち、帳票画像から抽出されたすべての文字領域に対して文字認識を行う必要がないため、処理の高速化を図ることができる。また、キーワード領域とバリュー領域が近い場合には、キーワード領域とバリュー領域が１つの文字領域として抽出される可能性があるが、第２の実施形態に係る情報処理装置１１０は、このような場合においても、バリューの文字を特定することができる。
【００４２】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【００４３】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４４】
１１０  情報処理装置
１１１  ＣＰＵ
１１２  ＲＯＭ
１１３  ＲＡＭ
１１４  ＨＤＤ
【図１】
2018055256.tif 000003
【図２】
2018055256.tif 000004
【図３】
2018055256.tif 000005
【図４】
2018055256.tif 000006
【図５】
2018055256.tif 000007
【図６】
2018055256.tif 000008
【図７】
2018055256.tif 000009
【図８】
2018055256.tif 000010
【図９】
2018055256.tif 000011
【図１０】
2018055256.tif 000012
【図１１】
2018055256.tif 000013
【図１２】
2018055256.tif 000014