(57)【要約】【課題】画像データに付与する属性をユーザが予め設定することなく、属性が定義されていない画像データに属性を付与する。【解決手段】処理手段１１は文字認識処理を行う。抽出手段１２は、指定画像に含まれる文字認識の対象として指定された第１の領域から予め定められた範囲内に位置する第２の領域を抽出する。記憶手段１３は、文字列毎に属性を記憶する。特定手段１４は、第１の領域から処理手段１１で文字認識された文字列及び第２の領域から処理手段１１で文字認識された文字列に対応する属性を、記憶手段１３により記憶された属性に基づいて特定する。付与手段１５は、特定手段１４により特定された属性を指定画像に付与する。【選択図】図２
2019204399.tif 000002
【特許請求の範囲】
【請求項１】
文字認識処理を行う処理手段と、
指定画像に含まれる文字認識の対象として指定された第１の領域から予め定められた範囲内に位置する第２の領域を抽出する抽出手段と、
文字列毎に属性が記憶された記憶手段と、
前記第１の領域から前記処理手段で文字認識された文字列及び前記第２の領域から前記処理手段で文字認識された文字列に対応する属性を、前記記憶手段により記憶された属性に基づいて特定する特定手段と、
前記特定された属性を前記指定画像に付与する付与手段と
を有する情報処理装置。
【請求項２】
前記特定手段は、前記第２の領域が複数ある場合、前記第１の領域との位置関係が予め定められた条件を満たす第２の領域から認識される文字列を用いて前記属性を特定する
請求項１に記載の情報処理装置。
【請求項３】
画像読取手段により読み取られた一の指定画像を画像解析することにより、前記文字認識処理の対象とする第１の領域の位置を表す位置情報を生成する生成手段
を更に有し、
前記特定手段は、前記画像読取手段により複数の指定画像が読み取られた場合、該複数の指定画像の各々について、前記生成された位置情報を用いて前記属性を特定する
請求項１又は２に記載の情報処理装置。
【請求項４】
前記特定手段は、前記第１の領域において認識された文字列に含まれる予め定められた文字種別の文字の割合を用いて前記属性を特定する
請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記記憶手段は、文字列の配列規則を属性毎に１又は複数記憶し、
前記特定手段は、前記第１の領域から認識された文字列について、文字列の配列規則の適合の度合いを示す適合値を前記属性毎に算出し、算出結果を用いて前記属性を特定する
請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
文字列毎に属性が記憶された記憶手段を有するコンピュータに、
指定画像に含まれる文字認識の対象として指定された第１の領域から予め定められた範囲内に位置する第２の領域を抽出するステップと、
文字認識処理を行う処理手段により前記第１の領域から文字認識された文字列及び前記第２の領域から前記処理手段で文字認識された文字列に対応する属性を、前記記憶手段により記憶された属性に基づいて特定するステップと、
前記特定された属性を前記指定画像に付与するステップと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置及びプログラムに関する。
【背景技術】
【０００２】
紙文書をスキャンし、電子文書ファイルとして格納する電子ファイリングが行われている。この電子文書ファイリングにおいて、スキャンにより得た画像に対して光学文字認識（ＯＣＲ）の処理を行い、その文字認識の結果を属性値として組み込むことで検索性を高めることも行われている。例えば特許文献１には、文書画像から抽出すべき各項目の項目名と、文書画像中でのその項目名に対する項目値が存在すべき相対位置とがデータベースに登録され、文書画像に対する文字認識結果から、抽出すべき項目の項目名に該当する文字列を求め、求められた項目名に対し、項目値が存在すべき相対位置にある文字列を、その項目名に対する項目値として抽出することが記載されている。
【０００３】
特許文献２には、複数の意味属性のいずれかに割り当てられた複数の文字列から構成される文字列群内の各文字列を意味属性毎に分類する情報処理装置において、各文字列毎に、ＤＢ１０５〜１０７を参照して、文字列を分析して文字列の各意味属性に対する割り当ての尤もらしさを示すスコアを複数のスコア付与方法によりそれぞれ付与し、各文字列の各意味属性への割り当て組み合わせパターン毎のそれぞれ付与されたスコアの合計値に基づいて分類を行うことが記載されている。また、特許文献３には、紙ドキュメントをスキャンして電子化する場合に、文字認識の結果をサーチして実際にそのドキュメントが作成された日付が書かれていると思われる文字列部分を見出し、それをファイル属性として付与することが記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２３３９１３号公報
【特許文献２】特開２００６−１８５３４２号公報
【特許文献３】特開２００４−２４０４８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、画像データに付与する属性をユーザが予め設定することなく、属性が定義されていない画像データに属性を付与する技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の請求項１に係る情報処理装置は、文字認識処理を行う処理手段と、指定画像に含まれる文字認識の対象として指定された第１の領域から予め定められた範囲内に位置する第２の領域を抽出する抽出手段と、文字列毎に属性が記憶された記憶手段と、前記第１の領域から前記処理手段で文字認識された文字列及び前記第２の領域から前記処理手段で文字認識された文字列に対応する属性を、前記記憶手段により記憶された属性に基づいて特定する特定手段と、前記特定された属性を前記指定画像に付与する付与手段とを有することを特徴とする。
【０００７】
本発明の請求項２に係る情報処理装置は、請求項１に記載の構成において、前記特定手段は、前記第２の領域が複数ある場合、前記第１の領域との位置関係が予め定められた条件を満たす第２の領域から認識される文字列を用いて前記属性を特定することを特徴とする。
【０００８】
本発明の請求項３に係る情報処理装置は、請求項１又は２に記載の構成において、画像読取手段により読み取られた一の指定画像を画像解析することにより、前記文字認識処理の対象とする第一の領域の位置を表す位置情報を生成する生成手段を更に有し、前記特定手段は、前記画像読取手段により複数の指定画像が読み取られた場合、該複数の指定画像の各々について、前記生成された位置情報を用いて前記属性を特定することを特徴とする。
【０００９】
本発明の請求項４に係る情報処理装置は、請求項１乃至３のいずれか１項に記載の構成において、前記特定手段は、前記第１の領域において認識された文字列に含まれる予め定められた文字種別の文字の割合を用いて前記属性を特定することを特徴とする。
【００１０】
本発明の請求項５に係る情報処理装置は、請求項１乃至４のいずれか１項に記載の構成において、前記記憶手段は、文字列の配列規則を属性毎に１又は複数記憶し、前記特定手段は、前記第１の領域から認識された文字列について、文字列の配列規則の適合の度合いを示す適合値を前記属性毎に算出し、算出結果を用いて前記属性を特定することを特徴とする。
【００１１】
本発明の請求項６に係るプログラムは、文字列毎に属性が記憶された記憶手段を有するコンピュータに、指定画像に含まれる文字認識の対象として指定された第１の領域から予め定められた範囲内に位置する第２の領域を抽出するステップと、文字認識処理を行う処理手段により前記第１の領域から文字認識された文字列及び前記第２の領域から前記処理手段で文字認識された文字列に対応する属性を、前記記憶手段により記憶された属性に基づいて特定するステップと、前記特定された属性を前記指定画像に付与するステップとを実行させるためのプログラムであることを特徴とする。
【発明の効果】
【００１２】
請求項１及び６に係る発明によれば、画像データに付与する属性をユーザが予め設定することなく、属性が定義されていない画像データに属性を付与することができる。
請求項２に係る発明によれば、画像データに付与する属性をユーザが予め設定することなく、属性が定義されていない画像データに属性を付与することができる。
請求項３に係る発明によれば、一の指定画像から生成された位置情報を他の指定画像に用いることができる。
請求項４に係る発明によれば、認識された文字列に含まれる文字種別の文字の割合を用いて属性を特定しない場合に比べて、属性が特定され易い。
請求項５に係る発明によれば、認識された文字列の配列規則の適合の度合いを算出しない場合に比べて、属性が特定され易い。
【図面の簡単な説明】
【００１３】
【図１】情報処理システムの構成を例示するブロック図。
【図２】情報処理装置１０の機能構成を例示するブロック図。
【図３】情報処理装置１０のハードウェア構成を例示するブロック図。
【図４】サーバ２０のハードウェア構成を例示するブロック図。
【図５】原稿を例示する図。
【図６】対象領域がマーキングされた原稿を例示する図。
【図７】情報処理装置１０が行う処理の流れを例示するフローチャート。
【図８】情報処理装置１０が行う処理の流れを例示するフローチャート。
【図９】カテゴリルールデータベースの内容を例示する図。
【図１０】属性データの内容を例示する図。
【図１１】情報処理装置１０が行う処理の流れを例示するフローチャート。
【図１２】属性名データベースの内容を例示する図。
【図１３】サブ領域を例示する図。
【発明を実施するための形態】
【００１４】
［１］構成
図１は、本実施形態に係る情報処理システム１の構成を例示するブロック図である。情報処理システム１は、情報処理装置１０及びサーバ２０を備える。情報処理装置１０は、用紙等の媒体に画像を形成する画像形成処理や、原稿等の媒体に形成された画像を読み取る画像読取処理等の画像処理を行う。サーバ２０はストレージサービス等の各種サービスを提供する。情報処理装置１０は通信回線２によりサーバ２０に接続されている。通信回線２は、例えばインターネット、移動体通信網、電話回線、及びＬＡＮ（local Area Network）などのうちの少なくとも１つを含む。
【００１５】
図２は情報処理装置１０の機能構成を例示するブロック図である。情報処理装置１０は、処理手段１１、抽出手段１２、記憶手段１３、特定手段１４、付与手段１５及び生成手段１６を有する。処理手段１１は文字認識処理を行う。抽出手段１２は、処理対象である画像（以下「指定画像」という）に含まれる文字認識の対象として指定された第１の領域から予め定められた範囲内に位置する第２の領域を抽出する。記憶手段１３は、文字列毎に属性を記憶する。この実施形態において、属性とは、画像に付与する情報（属性値）の種別を示す情報である。
【００１６】
特定手段１４は、第１の領域から処理手段１１で文字認識された文字列及び第２の領域から処理手段１１で文字認識された文字列に対応する属性を、記憶手段１３により記憶された属性に基づいて特定する。付与手段１５は、特定手段１４により特定された属性を指定画像に付与する。生成手段１６は、画像読取手段により読み取られた一の指定画像を画像解析することにより、文字認識処理の対象とする第１の領域を指定する指定データを生成する。
【００１７】
図３は、情報処理装置１０のハードウェア構成を例示する図である。プロセッサ１０１は、情報処理装置１０の他の要素を制御するプロセッサである。メモリ１０２は、プロセッサ１０１がプログラムを実行するためのワークエリアとして機能する記憶装置であり、例えばＲＡＭ（Random Access Memory）を含む。ストレージ１０３は各種のプログラム及びデータを記憶する記憶装置であり、例えば、ＳＳＤ（Solid State Drive）又はＨＤＤ（Hard Disk Drive）を含む。通信ＩＦ１０４は、予め定められた無線又は有線の通信規格（例えば、Ｗｉ−Ｆｉ（登録商標）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、又はイーサネット（登録商標））に従って他の装置と通信を行う。
【００１８】
ＵＩ部１０５は例えばタッチスクリーンとキーとを備える。ＵＩ部１０５は情報処理装置１０に内蔵されていてもよく、また、外付けされて外部接続されるものであってもよい。画像形成部１０６は電子写真方式で用紙等の媒体に画像を形成する。画像読取部１０７は原稿（媒体）の画像を光学的に読み取る。画像処理部１０８は、例えばＤＳＰ（Digital Signal Processor）やＧＰＵ（Graphics Processing Unit）を備え、各種の画像処理を実行する。給紙部１０９は画像形成部１０６に用紙等の媒体を供給する。
【００１９】
この例で、メモリ１０２又はストレージ１０３に記憶されているプログラムを、プロセッサ１０１又は画像処理部１０８が実行することにより、図２に示される機能が実装される。プログラムを実行しているプロセッサ１０１又は画像処理部１０８は、処理手段１１、抽出手段１２、記憶手段１３、特定手段１４、付与手段１５及び生成手段１６の例である。
【００２０】
図４はサーバ２０のハードウェア構成を例示する図である。プロセッサ２０１は、サーバ２０の他の要素を制御するプロセッサである。メモリ２０２は、プロセッサ２０１がプログラムを実行するためのワークエリアとして機能する記憶装置であり、例えばＲＡＭを含む。ストレージ２０３は各種のプログラム及びデータを記憶する記憶装置であり、例えばＳＳＤ又はＨＤＤを含む。通信ＩＦ２０４は、予め定められた無線又は有線の通信規格に従って他の装置と通信を行う。
【００２１】
２．動作
２−１．動作例１
この動作例では、情報処理装置１０は、原稿を読み取り、読み取られた原稿を表す画像データをストレージサーバであるサーバ２０に蓄積する。この画像データには、文字認識により原稿から読み取られた文字から特定される属性名及び属性値が付与される。読取対象である原稿は文字（及び画像）を含むものであり、例えば請求書、領収書、レシート、免許証、又は会員証である。
【００２２】
属性名は、画像データの検索性の向上のために画像データに付与されるものであり、例えば、会社名、日付又は請求金額である。例えば属性名が「請求金額」である属性の属性値には、その原稿から読み取られた請求金額を表す値が設定される。また、例えば属性名が「会社名」である属性の属性値には、その原稿から読み取られた会社名を表す文字列が設定される。ひとつの画像データに付与される属性の数は、１であってもよく、複数であってもよい。
【００２３】
図５は、情報処理装置１０により読み取られる原稿を例示する図である。図５に例示される原稿Ａ１は請求書である。図５の例では、原稿Ａ１には、会社名、請求金額、請求書番号、請求日等を表す文字列が記されている。
【００２４】
以下では、図５に例示される文書フォーマットの原稿を複数枚連続して画像読取を行う場合の動作を説明する。ユーザは、原稿を情報処理装置１０に読み取らせるのに先立って、１枚目の原稿に、属性値の読み取りの対象とする領域（以下「対象領域」という）を指定する作業を行う。この実施形態では、ユーザは、原稿中の文字列に蛍光ペン等によりマーキングすることにより対象領域（第１の領域の一例）を指定する。
【００２５】
図６は対象領域がマーキングされた原稿を例示する図である。図６の例では、社名が記された領域Ａ１１１、請求金額が記された領域Ａ１１２、請求書番号が記された領域Ａ１１３、及び請求日が記された領域Ａ１１４がユーザによりマーキングされている。対象領域の指定の仕方は、例えば、属性として指定したい文字列を蛍光ペンでなぞるものであってもよく、また、例えば、指定したい文字列を線で囲むものであってもよい。また、例えば、指定したい文字列の左にチェックマーク等の予め定められた文字や記号をユーザが書き込むことにより対象領域が指定されてもよい。
【００２６】
ユーザが対象領域のマーキングを行う原稿は１枚のみであり、残りの原稿についてはマーキング作業を行わない。ユーザは、対象領域のマーキングを終えると、対象領域をマーキングした原稿が最初に読み取られるように、複数の原稿を情報処理装置１０にセットし、画像読取処理を行わせる。
【００２７】
図７は、情報処理装置１０が行う処理の流れを例示するフローチャートである。図７に示される処理は、ユーザにより複数の原稿が情報処理装置１０にセットされ、スタートボタンが押下される等により画像読取が指示されたことをトリガとして開始される。
【００２８】
ステップＳ３０１において、情報処理装置１０のプロセッサ１０１は画像読取部１０７を制御して画像読取を行わせる。ステップＳ３０１により、まず、１枚目の原稿（ユーザにより対象領域がマーキングされた原稿）に対し画像読取が行われる。
【００２９】
ステップＳ３０２において、プロセッサ１０１は、読み取られた原稿が最初の原稿（１枚目の原稿）であるかを判定する。１枚目の原稿である場合（ステップＳ３０２；ＹＥＳ）、プロセッサ１０１はステップＳ３０３の処理に進む。一方、２枚目以降の原稿である場合（ステップＳ３０２；ＮＯ）、プロセッサ１０１はステップＳ３０４の処理に進む。ステップＳ３０３において、プロセッサ１０１は属性名の決定処理を行う。
【００３０】
図８は、図７のステップＳ３０３の属性名の決定処理の流れを例示するフローチャートである。ステップＳ１０２において、プロセッサ１０１は属性名の特定のための対象領域を特定する処理を行う。この実施形態では、プロセッサ１０１は、読み取られた原稿を表す画像を解析し、予め定められたマーク方式に対応する特徴パターンを有する領域を特定する。例えば、プロセッサ１０１は、読み取られた原稿を表す画像を解析し、予め定められた背景色を有する領域（予め定められた色の蛍光ペンでマーキングされている対象領域）を特定する。読み取られた原稿が図６に例示されるものである場合、領域Ａ１１１〜Ａ１１４が対象領域として特定される。プロセッサ１０１は特定した対象領域の位置を表す位置情報を、メモリ１０２又はストレージ１０３の予め定められた記憶領域（以下「記憶領域Ｍ１」という）に格納する。このように、この実施形態では、プロセッサ１０１は、画像読取部１０７により読み取られた１枚目の原稿の画像（一の指定画像の例）を画像解析することにより、文字認識の対象とする対象領域を指定する指定データを生成する。
【００３１】
ステップＳ１０３において、プロセッサ１０１は対象領域において文字認識処理を行う。文字の認識処理は例えば、特開２００７−３０４８６４号公報に記載された手法が用いられてもよい。ステップＳ１０４において、プロセッサ１０１は認識された文字を整形する処理を行う。この実施形態において、文字を整形するとは、認識された文字に対し形態素解析等の処理を行い、意味のある文字列（例えば、単語や日時）にする処理をいう。対象領域が複数ある場合、プロセッサ１０１はそれぞれの対象領域に対し文字認識処理及び整形処理を行う。これらの処理により、属性を特定するための文字列が原稿の画像から抽出される。読み取られた原稿が図６に例示されるものである場合、領域Ａ１１１〜Ａ１１４のそれぞれから、「○○○○○株式会社」、「\10,800-」、「20140999」及び「2014年9月10日」の４つの文字列が抽出される。
【００３２】
ステップＳ１０３及びＳ１０４の処理を終えると、プロセッサ１０１は対象領域から認識された文字列のそれぞれについて、ステップＳ１０６及びステップＳ１０７の処理を実行し、認識された文字列をカテゴリに分類する処理を行う。
【００３３】
ステップＳ１０５において、プロセッサ１０１は認識された全ての文字列に対しカテゴリに分類する処理を行ったかと判定する。未分類の文字列がある場合（ステップＳ１０５；ＹＥＳ）、プロセッサ１０１はステップＳ１０６の処理に進む。一方、全ての文字列についてカテゴリに分類する処理が行われた場合（ステップＳ１０５；ＮＯ）、プロセッサ１０１はステップＳ１０８の処理に進む。
【００３４】
ステップＳ１０６において、プロセッサ１０１は未だ分類されていない文字列を一つ選択する。ステップＳ１０７において、プロセッサ１０１は、ストレージ１０３に記憶されているカテゴリルールデータベースを参照し、抽出された文字列が分類されるカテゴリ（属性名）を特定する。カテゴリルールデータベースは、文字列の配列規則をカテゴリ毎に１又は複数記憶するデータベースである。この実施形態において、カテゴリは、例えば、金額、数値、年月日（日付）、社名、商品名、テクノロジ、又は人名である。特定されたカテゴリ（属性名）は、ステップＳ１０２で生成された位置情報に対応付けて記憶領域Ｍ１に記憶される。
【００３５】
図９はカテゴリルールデータベースの内容を例示する図である。図９の例では、このデータベースには「カテゴリ」と「ルール」との各項目が互いに関連付けられている。これらの項目のうち、「カテゴリ」の項目には、「社名」及び「金額」等の属性名（カテゴリ）を示す情報が格納されている。「ルール」の項目には、「「株式会社」が含まれる」及び「「Company」が含まれる」等のルールを示す情報が格納されている。
【００３６】
情報処理装置１０は、カテゴリルールデータベースを参照し、対象領域から認識された文字列について、文字列の配列規則（ルール）の適合の度合いを示す適合値をカテゴリ（属性）毎に算出し、算出結果を用いてカテゴリを特定する。カテゴリの特定は例えば以下のようにして行われる。カテゴリに対応する条件のそれぞれに適合の度合いを示す値（以下「一致度」という）を対応付けておき、プロセッサ１０１が、全てのカテゴリについて一致度を算出し、算出された一致度が最も高いカテゴリを属性名として特定する。
【００３７】
例えば、対象領域から認識された文字列が「ゼロックス株式会社」である場合、「株式会社」の文字列が含まれるため「社名」のカテゴリは３点、「ゼロ」の文字列が含まれるが数字以外の文字が多いため、「金額」及び「数値」のカテゴリは１点、「日付」のカテゴリに関連する文字列は含まれないため「日付」のカテゴリは１点、といったようにカテゴリ毎に採点される。この場合、最も点数が高い「社名」のカテゴリが属性名として採用される。
【００３８】
図６の原稿の例では、領域Ａ１１１から読み取られた文字列には「株式会社」の文字列が含まれているため、この文字列に対応するカテゴリとして「社名」が特定される。また、領域Ａ１１２から読み取られた文字列には通貨記号や数字列が含まれるため、この文字列に対応するカテゴリとして「金額」が特定される。
【００３９】
図８の説明に戻る。ステップＳ１０７の処理を終えると、プロセッサ１０１はステップＳ１０５の処理に戻る。ステップＳ１０５において、全ての文字列についてカテゴリが特定された場合（ステップＳ１０５；ＮＯ）、プロセッサ１０１はステップＳ１０８の処理に進む。ステップＳ１０８において、プロセッサ１０１は特定されたカテゴリを属性名とし、認識された文字列を属性値とする属性データを生成し、画像データに付与する。
【００４０】
図７の説明に戻る。ステップＳ３０３の属性名の決定処理を終えると、プロセッサ１０１はステップＳ３０７の処理に進む。ステップＳ３０７において、プロセッサ１０１は、未処理の原稿があるかを判定する。未処理の判定がある場合（ステップＳ３０７；ＹＥＳ）、プロセッサ１０１はステップＳ３０１の処理に進む。一方、未処理の原稿がない場合（ステップＳ３０７；ＮＯ）、プロセッサ１０１は処理を終了する。情報処理装置１０により１又は複数の属性が付された画像データは、サーバ２０等のストレージサーバに送信され、蓄積される。付与された属性は、例えばファイル（画像データ）が検索される際に、検索キーとして用いられる。
【００４１】
ステップＳ３０２において、読み取られた原稿が２枚目以降の原稿である場合（ステップＳ３０２；ＮＯ）、プロセッサ１０１はステップＳ３０４の処理に進む。ステップＳ３０４において、プロセッサ１０１は記憶領域Ｍ１から位置情報を読み出し、読み出した位置情報により特定される対象領域（すなわち、１枚目の原稿において特定された対象領域と同じ位置の領域）において文字認識処理を行う。
【００４２】
ステップＳ３０５において、プロセッサ１０１は記憶領域Ｍ１から各位置情報に対応する属性名を読み出すことにより属性名を取得する。ステップＳ３０６において、プロセッサ１０１は、ステップＳ３０５で取得された属性名の属性データに、各属性名に対応する対象領域から文字認識された属性値を追加する。
【００４３】
図１０は属性データの内容を例示する図である。図１０の例では、属性データは、「金額」の属性名と、複数の属性値とが含まれる。属性値は、原稿毎に抽出されるため、複数の属性値がひとつの属性値に対応付けられる。
【００４４】
２−２．動作例２
次いで、この実施形態の他の動作例を説明する。
【００４５】
図１１は、情報処理装置１０が行う処理の流れを例示するフローチャートである。図１１のフローチャートは、上述した動作例１において示した図８のフローチャートに対応するものである。
【００４６】
図１１に示すフローチャートが図８に示したフローチャートと異なる点は、ステップＳ１０２の前にステップＳ２０１の処理が行われる点、ステップＳ１０５の処理に代えてステップＳ２０２の処理が行われる点、及び、ステップＳ１０７の後にステップＳ２０３乃至Ｓ２０５の処理が行われる点である。
【００４７】
ステップＳ２０１において、プロセッサ１０１は読み取られた原稿の画像をレイアウト解析する。レイアウト解析がなされることにより、テキスト領域や画像領域が認識される。ステップＳ２０１の処理を終えると、プロセッサ１０１はステップＳ１０２の処理に進む。
【００４８】
また、プロセッサ１０１はステップＳ１０４の処理を終えると、ステップＳ２０２の処理に進む。ステップＳ２０２の処理において、プロセッサ１０１は特定された対象領域の全てについて属性名を特定したかを判定する。属性名が特定されていない対象領域がある場合（ステップＳ２０２；ＹＥＳ）、プロセッサ１０１はステップＳ１０６の処理に進む。一方、全ての対象領域について属性名を特定した場合（ステップＳ２０２；ＮＯ）、プロセッサ１０１はステップＳ１０８の処理に進む。
【００４９】
ステップＳ１０６及びステップＳ１０７の処理を終えると、プロセッサ１０１はステップＳ２０３の処理に進む。ステップＳ２０３において、プロセッサ１０１は対象領域の周囲の領域（対象領域との位置関係が予め定められた条件を満たす領域（以下「サブ領域」という））において文字認識処理を行う。この実施形態では、レイアウト解析により特定されたテキスト領域のうち、対象領域の左側又は上側に位置するテキスト領域がサブ領域（第２の領域の一例）として扱われる。
【００５０】
図１３はサブ領域を例示する図である。図において、領域Ａ１１３のサブ領域として「請求書番号：」が記載されているテキスト領域Ａ２１３が特定される。また、領域Ａ１１４のサブ領域として「請求日：」が記載されているテキスト領域Ａ２１４が特定される。また、領域Ａ１１２のサブ領域として「ご請求金額」が記載された領域Ａ２１２、及び「（消費税込）」が記載された領域Ａ２２２が特定される。また、領域Ａ１１１のサブ領域として「○○ビル５階」が記載されたテキスト領域Ａ２１１が特定される。このように、ひとつの対象領域について、ひとつのサブ領域が特定される場合もあり、また、複数のサブ領域が特定される場合もある。また、サブ領域が特定されない対象領域もある。
【００５１】
図１１の説明に戻る。ステップＳ２０４において、プロセッサ１０１はサブ領域から文字認識された文字列の中から、カテゴリに関連する文字列群を特定する。ステップＳ２０４の処理は例えば、ストレージ１０３に記憶された属性名データベースを参照することにより行われる。
【００５２】
図１２は属性名データベースの内容を例示する図である。図１２の例では、ひとつの「カテゴリ」に複数の「文字列」が関連付けられている。例えば、「金額」の項目には、「請求金額」、「明細」、「支払」及び「領収書」等の文字列が対応付けられている。
【００５３】
図１３の例では、領域Ａ１１２のサブ領域からは「ご請求金額」と「（消費税込）」と野文字列が認識される。プロセッサ１０１は、サブ領域において認識された文字列を属性名データベースに登録された文字列と照合し、照合結果が予め定められた条件を満たす文字列を属性名として特定する。この場合、「金額」に対応する文字列として「請求金額」が登録されており、この文字列がサブ領域から読み取られた文字列に含まれているため、「請求金額」が属性名の候補とする文字列として特定される。
【００５４】
図１１の説明に戻る。ステップＳ２０４の処理を終えると、プロセッサ１０１はステップＳ２０５の処理に進む。ステップＳ２０５において、プロセッサ１０１は、ステップＳ２０４で複数の文字列が特定された場合に、それらの文字列のうち、属性名として尤もらしい文字列を決定する。この決定処理は例えば、属性名データベースに登録された文字列に優先順位を付与しておき、付与されている優先順位が最も高いものを属性名として特定してもよい。また、他の例として、例えば、属性値として読み取られた文字列が記された対象領域との距離が最も近いサブ領域の文字列が属性名として決定されてもよい。ステップＳ２０５の処理を終えると、プロセッサ１０１はステップＳ２０２の処理に戻り、全ての文字列について属性名が決定されるまで処理を継続する。図１１の処理が行われることにより、読み取られた原稿の画像データに属性名と属性値とのセットを複数含む属性データが付与される。
【００５５】
このようにこの動作例では、属性名がカテゴリに区分されており（属性名データベース）、対象領域（第１の領域の一例）の文字列を用いてカテゴリが特定され、サブ領域（第２の領域の一例）の文字列を用いて特定されたカテゴリの中から属性名が特定される。
【００５６】
ところで、従来の技術では、画像データに付与する属性をユーザが予め定義する必要があった。例えば、画像処理装置のパネルやパーソナルコンピュータのアプリケーションにより文字認識結果をユーザが確認し、ユーザが手動で属性を決定する必要があった。処理対象である原稿が、フォーマットが決まっている定型の帳票である場合、ユーザが属性を予め定義することで属性付与処理が可能であるが、フォーマットが定まっていない様々なフォームの原稿が処理対象である場合、その都度ユーザが属性を登録する操作を行うことは煩雑な場合がある。それに対しこの実施形態では、処理対象である原稿のフォーマットが予め分かっていない場合であっても、ユーザが煩雑な操作を行うことなく原稿を表す画像データに属性が付与される。
【００５７】
また、この実施形態では、プロセッサ１０１は、読み取られる原稿に対しレイアウト解析を行い、対象領域の周囲から属性名の候補となる詳細な情報を取得する。例えば対象領域の文字列から特定されたカテゴリが「金額」である場合、その対象領域の左側又は上側に、例えば「請求書」、「明細」、「支払」、「領収」、等の文字列がないかが検索される。検索された文字列がひとつである場合、その文字列が属性名とされる。一方、複数の文字列が検索された場合、例えば対象領域との距離が最も近いサブ領域の文字列が属性名とされる。これにより、その原稿により具体的な属性名が画像データに付与される。
【００５８】
また、この実施形態では、複数の原稿（原稿束）が読み取られる場合、先頭の原稿（１枚目の原稿）において属性名の決定処理が行われ、残りの原稿においては、１枚目の原稿で決定された属性名が使用される。これにより、複数の原稿のそれぞれにおいてユーザが属性名を特定するための対象領域を指定する作業を行う必要がなく、また、複数の原稿のそれぞれにおいて属性名を決定する処理が省略される。
【００５９】
［３］変形例
上述した実施形態は、本発明の実施の一例に過ぎず、以下のように変形させてもよい。また、上述した実施形態及び以下に示す各変形例は、必要に応じて組み合わせて実施されてもよい。
【００６０】
（１）上述の実施形態では、１枚の原稿に含まれる複数の対象領域についてまとめて文字認識処理を行った（図８のステップＳ１０３）。文字認識処理の方法は上述した実施形態で示したものに限られない。例えば、複数の対象領域がある場合に、１箇所毎に文字認識処理やカテゴリ特定処理が行われ、対象領域の数だけそれらの処理が繰り返し実行されてもよい。
【００６１】
（２）上述の実施形態では、対象領域の左側又は上側に位置するテキスト領域がサブ領域として特定された。対象領域とサブ領域との位置関係は上述した実施形態で示したものに限られない。例えば、テキスト領域の右側に位置する領域や、テキスト領域の下側に位置する領域が特定されてもよい。サブ領域は、対象領域から予め定められた範囲内に位置する領域であればよい。
【００６２】
（３）上述の実施形態では、情報処理装置１０のストレージ１０３にカテゴリルールデータベース及び属性名データベースが記憶されていた。カテゴリルールデータベース及び属性名データベースは、情報処理装置１０以外の装置に記憶されていてもよい。例えば、カテゴリルールデータベースがサーバ２０又は他の外部サーバに格納され、情報処理装置１０が通信ネットワークを介してカテゴリルールデータベースにアクセスする構成であってもよい。
【００６３】
（４）また、カテゴリルールデータベースは情報処理装置１０等の装置により更新されてもよい。更新処理は、例えば、情報処理装置１０のユーザがＵＩ部１０５を操作することにより属性名が登録されてもよい。
【００６４】
（５）上述の実施形態では、カテゴリルールデータベースを用いた属性名の特定処理（図８のステップＳ１０７の処理）として、プロセッサ１０１が、全てのカテゴリについて一致度を算出し、算出された一致度が最も高いカテゴリを属性名として特定した。属性名の特定方法は、上述した実施形態で示したものに限られない。例えば、カテゴリルールデータベースに登録された複数のルールについて優先度が設定され、優先度の高い順にルール（条件）が照合され、文字列が条件を満たした場合に、その条件に対応するカテゴリが属性名として採用されてもよい。
【００６５】
（６）また、判定条件として用いられるルールの優先順位は、文字列の内容により可変であってもよい。例えば、プロセッサ１０１は、認識された文字列に含まれる数字の比率が予め定められた閾値以上である場合、「金額」及び「日付」に対応するルールから優先的に判定し、その後、「数値」に対応するルールについて判定を行ってもよい。例えば、認識された文字列が「2018/01/24」である場合、この文字列は１０文字中８文字が数字であるため、「金額」と「日付」のカテゴリのルールから順に判定され、その後、「数値」のカテゴリのルールについて判定されてもよい。一方、１０文字中、２文字以上７文字以下の数字が含まれる場合、「日付」のカテゴリに対応するルールから順に判定されてもよい。また、先頭又は末尾に通貨に関する文字（\、＄、等）が含まれる場合、「金額」のカテゴリのルールから順に判定されてもよい。このように、プロセッサ１０１は、認識された文字列に含まれる予め定められた文字種別（数字、等）の文字の割合を用いて属性名を特定してもよい。
【００６６】
また、カテゴリルールデータベースに登録されるルール（条件）は、上述した実施形態で示したものに限られない。
【００６７】
（７）上述の実施形態において、図１１のステップＳ２０４において複数の文字列が特定された場合、どの文字列を属性名として特定するかを、ユーザに選択させる処理が行われてもよい。例えば、プロセッサ１０１が、複数の文字列をＵＩ部１０５に表示し、どの文字列を属性名とするかの選択を促すメッセージを表示させてもよい。
【００６８】
（８）上述の実施形態において情報処理装置１０により実行された処理の一部が、サーバ２０等の他の装置により実行されてもよい。例えば、上述の実施形態において情報処理装置１０により実行された文字認識処理がサーバ２０により実行されてもよい。また、例えば、情報処理装置１０とサーバ２０が協働することにより図２に示す各機能が実装されてもよい。
【００６９】
（９）上述の実施形態において、情報処理装置１０のプロセッサ１０１又はサーバ２０のプロセッサ２０１により実行されるプログラムは、インターネットなどの通信回線を介してダウンロードされてもよい。また、これらのプログラムは、磁気記録媒体（磁気テープ、磁気ディスクなど）、光記録媒体（光ディスクなど）、光磁気記録媒体、半導体メモリなどの、コンピュータが読取可能な記録媒体に記録した状態で提供されてもよい。
【符号の説明】
【００７０】
１０…情報処理装置、１１…処理手段、１２…抽出手段、１３…記憶手段、１４…特定手段、１５…付与手段、１６…生成手段、１０１…プロセッサ、１０２…メモリ、１０３…ストレージ、１０４…通信ＩＦ、１０５…ＵＩ部、１０６…画像形成部、１０７…画像読取部、１０８…画像処理部。
【図１】
2019204399.tif 000003
【図２】
2019204399.tif 000004
【図３】
2019204399.tif 000005
【図４】
2019204399.tif 000006
【図５】
2019204399.tif 000007
【図６】
2019204399.tif 000008
【図７】
2019204399.tif 000009
【図８】
2019204399.tif 000010
【図９】
2019204399.tif 000011
【図１０】
2019204399.tif 000012
【図１１】
2019204399.tif 000013
【図１２】
2019204399.tif 000014
【図１３】
2019204399.tif 000015