(57)【要約】【課題】画像データのメタデータの内容を容易に設定することができる画像処理装置を提供する。【解決手段】画像処理サーバ１０５は、選択された業務に応じて規定されている１つ以上のキーに基づいてページ画像データからキー候補を特定し、当該キータイプに対してそれぞれ規定されているバリュー型ルール及びバリュー物理探索ルールに基づいてキー候補に対応するバリュー候補を特定し、特定したバリュー候補をメタデータに含めるバリューとして設定する。【選択図】図７
2020201822.tif 000002
【特許請求の範囲】
【請求項１】
選択された業務に関する画像データを取得し、前記画像データに関する情報を含む付帯データを生成する画像処理装置であって、
前記選択された業務に応じて規定されている１つ以上のキータイプに基づいて前記画像データからキー候補を特定するキー候補特定手段と、
前記１つ以上のキータイプに対してそれぞれ規定されているバリューの型ルール及びバリューの探索領域ルールに基づいて前記キー候補に対応するバリュー候補を特定するバリュー候補特定手段と、
前記バリュー候補を前記付帯データに含めるバリューとして設定する設定手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記バリューの型ルールは、前記画像データから特定の型の文字列を抽出するためのルールであることを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記バリューの型ルールは、正規表現によって表されることを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
前記設定手段は、前記バリューの型ルール及び前記キー候補に相当する文字列までの距離に基づいて前記キー候補に対応するバリュー候補を特定することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記画像データに含まれる文字列における前記バリューの型ルールとの一致率を算出する一致率算出手段を更に備え、
前記バリュー候補特定手段は、前記一致率及び前記キー候補に相当する文字列までの距離に基づいて前記キー候補に対応するバリュー候補を特定することを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項６】
選択された業務に関する画像データを取得し、前記画像データに関する情報を含む付帯データを生成する画像処理装置の制御方法であって、
前記選択された業務に応じて規定されている１つ以上のキータイプに基づいて前記画像データからキー候補を特定するキー候補特定ステップと、
前記１つ以上のキータイプに対してそれぞれ規定されているバリューの型ルール及びバリューの探索領域ルールに基づいて前記キー候補に対応するバリュー候補を特定するバリュー候補特定ステップと、
前記バリュー候補を前記付帯データに含めるバリューとして設定する設定ステップとを有することを特徴とする画像処理装置の制御方法。
【請求項７】
選択された業務に関する画像データを取得し、前記画像データに関する情報を含む付帯データを生成する画像処理装置の制御方法をコンピュータに実行させるプログラムであって、
前記画像処理装置の制御方法は、
前記選択された業務に応じて規定されている１つ以上のキータイプに基づいて前記画像データからキー候補を特定するキー候補特定ステップと、
前記１つ以上のキータイプに対してそれぞれ規定されているバリューの型ルール及びバリューの探索領域ルールに基づいて前記キー候補に対応するバリュー候補を特定するバリュー候補特定ステップと、
前記バリュー候補を前記付帯データに含めるバリューとして設定する設定ステップとを有することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置、その制御方法、及びプログラムに関する。
【背景技術】
【０００２】
原稿をスキャンして画像データを生成し、当該画像データに対してＯＣＲ（Optical Character Recognition）処理を施すことで、原稿に記載された文字列をデジタルデータとして抽出する画像処理装置が知られている。画像処理装置は、生成した画像データを文字列領域や背景領域等の複数の領域に分割して画像データの構造を認識し、画像データの出力先のシステムが利用する情報として、例えば、文字列領域に含まれる文字列を含むメタデータ（付帯データ）を生成する。画像処理装置は、生成したメタデータ及び画像データを出力先のシステムへ送信する。メタデータの内容は、出力先のシステムの種別に応じて異なる。例えば、出力先のシステムが見積書や領収書といった会計帳票を扱う会計システムである場合、画像処理装置は、会計帳票に含まれる納期や金額に関する情報を含むメタデータを生成する。この例では、納期や金額といった項目をキーと呼び、納期の日付を示す文字列や金額を示す文字列といった各項目の具体値をバリューと呼ぶ。メタデータの内容の設定において、例えば、画像処理装置は、領収書の画像データから文字列領域のデジタルデータを抽出し、キーである「価格」のバリュー候補に相当する複数の文字列領域をプレビュー画像上に強調表示し、メタデータとして付される情報をユーザに選択させる（例えば、特許文献１参照）。これにより、ユーザは、画像データと共に出力先のシステムへ送信されるメタデータの内容を容易に設定することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７―１９４９５３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、メタデータの内容は出力先のシステムの種別毎に異なるため、上述した特許文献１の技術では、キーのバリュー候補に相当する文字列領域を画像データから特定するための設定を、ユーザが出力先となるシステムの種別毎に変更する必要がある。すなわち、従来の画像処理装置では、画像データのメタデータの内容を容易に設定することができないという問題が生じる。
【０００５】
本発明の目的は、画像データのメタデータの内容を容易に設定することができる画像処理装置、その制御方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明の画像処理装置は、選択された業務に関する画像データを取得し、前記画像データに関する情報を含む付帯データを生成する画像処理装置であって、前記選択された業務に応じて規定されている１つ以上のキータイプに基づいて前記画像データからキー候補を特定するキー候補特定手段と、前記１つ以上のキータイプに対してそれぞれ規定されているバリューの型ルール及びバリューの探索領域ルールに基づいて前記キー候補に対応するバリュー候補を特定するバリュー候補特定手段と、前記バリュー候補を前記付帯データに含めるバリューとして設定する設定手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、画像データのメタデータの内容を容易に設定することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態に係る画像処理装置としての画像処理サーバを含む画像形成システムのネットワーク構成を概略的に示すネットワーク図である。
【図２】図１の画像形成装置の構成を概略的に示すブロック図である。
【図３】図２の操作部の構成を示す図である。
【図４】図１の画像処理サーバ及びストレージサーバの構成を概略的に示すブロック図である。
【図５】図１の画像形成システムによって実行されるデータ格納処理の手順を示すフローチャートである。
【図６】図５のステップＳ５０４の画像分割処理の手順を示すフローチャートである。
【図７】図５のステップＳ５０９のメタデータ設定処理の手順を示すフローチャートである。
【図８】図７のメタデータ設定処理にて使用される辞書の一例を示す図である。
【図９】図８のバリュー物理探索ルールの探索領域を説明するための図である。
【図１０】業務に対して規定されたキーを説明するための図である。
【図１１】図７のメタデータ設定処理の変形例の手順を示すフローチャートである。
【図１２】図１１のメタデータ設定処理にて使用されるバリュー型探索辞書の一例を示す図である。
【図１３】図１１のステップＳ１１０２の一致率算出処理の手順を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施の形態について図面を参照しながら詳述する。
【００１０】
図１は、本発明の実施の形態に係る画像処理装置としての画像処理サーバ１０５を含む画像形成システム１００のネットワーク構成を概略的に示すネットワーク図である。図１において、画像形成システム１００は、画像形成装置１０１、画像形成装置１０２、情報処理装置１０３、情報処理装置１０４、画像処理サーバ１０５、及びストレージサーバ１０６を備える。画像形成装置１０１、画像形成装置１０２、情報処理装置１０３、情報処理装置１０４、画像処理サーバ１０５、及びストレージサーバ１０６は、ネットワーク１０７を介して互いに接続されている。なお、本実施の形態では、画像形成システム１００が備える画像形成装置、情報処理装置、画像処理サーバ、及びストレージサーバの各台数は一例であり、この構成に限られない。画像形成システム１００は、画像形成装置、情報処理装置、画像処理サーバ、及びストレージサーバを少なくとも１台ずつ備えていれば良い。また、本実施の形態では、画像形成装置１０１及び画像形成装置１０２は同様の構成であり、以下では、一例として、画像形成装置１０１を用いてその構成を説明する。
【００１１】
画像形成装置１０１は、例えば、コピー機能、スキャン機能、及びプリント機能といった複数の機能を備えるＭＦＰ（Multifunction Peripheral）である。画像形成装置１０１は、情報処理装置１０３や情報処理装置１０４から受信した印刷データに基づいて印刷を行う。また、画像形成装置１０１は、ストレージサーバ１０６から文書データを取得し、当該文書データを印刷する。さらに、画像形成装置１０１は、後述する図２のスキャナ２０９によって画像データを読み取って画像データを生成する。画像データは、後述する図２のプリンタ２０７によって印刷される、若しくは情報処理装置１０３、情報処理装置１０４、画像処理サーバ１０５等に送信される。画像処理サーバ１０５は、画像形成装置１０１から取得した画像データに対してＯＣＲ（Optical Character Recognition）処理や後述する図６の画像分割処理等の画像処理を施す。画像処理サーバ１０５は、処理済み画像データをストレージサーバ１０６に送信する。ストレージサーバ１０６は、文書データや画像処理サーバ１０５から取得した処理済み画像データ等の複数のデータを格納する。なお、画像処理サーバ１０５及びストレージサーバ１０６は、インターネットを通じてクラウドサービスを提供するサーバであっても良い。ネットワーク１０７は、例えば、ＬＡＮ（Local Area Network）やインターネットである。
【００１２】
図２は、図１の画像形成装置１０１の構成を概略的に示すブロック図である。図２において、画像形成装置１０１は、コントローラ２０１、プリンタ２０７、スキャナ２０９、及び操作部２１１を備える。コントローラ２０１は、プリンタ２０７、スキャナ２０９、及び操作部２１１と接続されている。また、コントローラ２０１は、ＣＰＵ２０２、ＲＡＭ２０３、ＨＤＤ２０４、ネットワークＩ／Ｆ２０５、プリンタＩ／Ｆ２０６、スキャナＩ／Ｆ２０８、操作部Ｉ／Ｆ２１０、及び拡張Ｉ／Ｆ２１２を備える。ＣＰＵ２０２、ＲＡＭ２０３、ＨＤＤ２０４、ネットワークＩ／Ｆ２０５、プリンタＩ／Ｆ２０６、スキャナＩ／Ｆ２０８、操作部Ｉ／Ｆ２１０、及び拡張Ｉ／Ｆ２１２はバス２１３を介して互いに接続されている。
【００１３】
ＣＰＵ２０２は、ＨＤＤ２０４から読み出した命令をＲＡＭ２０３に展開し、ＲＡＭ２０３に展開した命令を実行する。ＲＡＭ２０３は、ＣＰＵ２０２がＨＤＤ２０４から読み出した命令を一時的に格納する。また、ＲＡＭ２０３は、命令の実行に必要となるデータを格納する。例えば、画像処理では、入稿されたデータがＲＡＭ２０３に展開される。ＨＤＤ２０４は、ＣＰＵ２０２が実行する命令、画像形成装置１０１が使用する設定値、及びユーザが指示した処理に関するデータ等を格納する。ネットワークＩ／Ｆ２０５は、画像形成装置１０１が外部装置とネットワーク通信を行うためのＩ／Ｆである。例えば、ネットワークＩ／Ｆ２０５は、情報処理装置１０３や情報処理装置１０４等からデータを受信したことをＣＰＵ２０２に伝達する。また、ネットワークＩ／Ｆ２０５は、ＲＡＭ２０３に格納されたデータを、情報処理装置１０３、情報処理装置１０４、画像処理サーバ１０５等へ送信する。
【００１４】
プリンタＩ／Ｆ２０６は、コントローラ２０１及びプリンタ２０７間のデータの受け渡しを制御する。例えば、プリンタＩ／Ｆ２０６は、ＣＰＵ２０２から受けた印刷データをプリンタ２０７へ送信し、また、プリンタ２０７から受けたプリンタ２０７の状態を示す情報をＣＰＵ２０２へ送信する。プリンタ２０７は、プリンタＩ／Ｆ２０６から受信した画像データを用紙に印刷する。スキャナＩ／Ｆ２０８は、コントローラ２０１及びスキャナ２０９間のデータの受け渡しを制御する。例えば、スキャナＩ／Ｆ２０８は、ＣＰＵ２０２から受けた画像読み取り指示をスキャナ２０９へ送信し、また、スキャナ２０９から受けた画像データをＣＰＵ２０２へ送信する。スキャナ２０９は、スキャナＩ／Ｆ２０８から受信した画像読み取り指示に従って、配置された原稿を読み取って画像データを生成する。操作部Ｉ／Ｆ２１０は、コントローラ２０１及び操作部２１１間のデータの受け渡しを制御する。例えば、操作部Ｉ／Ｆ２１０は、ユーザが操作部２１１から入力した指示をＣＰＵ２０２に送信し、また、ユーザが操作するための画面情報をＣＰＵ２０２から受けて当該画面情報を操作部２１１へ送信する。
【００１５】
操作部２１１は、図３に示すように、タッチパネル画面３０１、設定キー３０２、開始キー３０３、及びキャンセルキー３０４を備える。ユーザは、タッチパネル画面３０１及び設定キー３０２を操作して、ジョブに関する設定を行う。ジョブは、例えば、コピージョブや、原稿を読み取って画像データを生成し当該画像データを画像処理サーバ１０５へ送信するジョブである。開始キー３０３は、上記ジョブの実行を開始させるための操作ボタンである。キャンセルキー３０４は、実行中のジョブを中止させるための操作ボタンである。拡張Ｉ／Ｆ２１２は、画像形成装置１０１に外部機器を接続するためのＩ／Ｆである。拡張Ｉ／Ｆ２１２は、例えば、ＵＳＢ（Universal Serial Bus）形式のＩ／Ｆを備える。拡張Ｉ／Ｆ２１２は、画像形成装置１０１に接続されたＵＳＢメモリ等の外部記憶装置に格納されているデータを読み取る制御や、上記外部記憶装置へデータを書き込む制御を行う。
【００１６】
図４は、図１の画像処理サーバ１０５及びストレージサーバ１０６の構成を概略的に示すブロック図である。図４（ａ）は、画像処理サーバ１０５の構成を示す。図４（ｂ）は、ストレージサーバ１０６の構成を示す。
【００１７】
図４（ａ）において、画像処理サーバ１０５は、ＣＰＵ４０１、ＲＡＭ４０２、ＨＤＤ４０３、及びネットワークＩ／Ｆ４０４を備える。ＣＰＵ４０１、ＲＡＭ４０２、ＨＤＤ４０３、及びネットワークＩ／Ｆ４０４は、バス４０５を介して互いに接続されている。
【００１８】
ＣＰＵ４０１は、画像処理サーバ１０５全体を統括的に制御する。ＣＰＵ４０１は、ＨＤＤ４０３から読み出したプログラムをＲＡＭ４０２に展開し、ＲＡＭ４０２に展開されたプログラムを実行する。ネットワークＩ／Ｆ４０４は、画像処理サーバ１０５が外部装置とネットワーク通信を行うためのＩ／Ｆである。例えば、ネットワークＩ／Ｆ４０４は、画像形成装置１０１から画像データを受信する。
【００１９】
図４（ｂ）において、ストレージサーバ１０６は、ＣＰＵ４０６、ＲＡＭ４０７、ネットワークＩ／Ｆ４０８、及びＨＤＤ４０９を備える。ＣＰＵ４０６、ＲＡＭ４０７、ネットワークＩ／Ｆ４０８、及びＨＤＤ４０９は、バス４１０を介して互いに接続されている。
【００２０】
ＣＰＵ４０６は、ストレージサーバ１０６全体を統括的に制御する。ＣＰＵ４０６は、ＨＤＤ４０９から読み出したプログラムをＲＡＭ４０７に展開し、ＲＡＭ４０７に展開されたプログラムを実行する。ネットワークＩ／Ｆ４０８は、ストレージサーバ１０６が外部装置とネットワーク通信を行うためのＩ／Ｆである。ＨＤＤ４０９は、画像処理サーバ１０５から取得した画像データ、及び当該画像データに関連付けられたメタデータ等を格納する。メタデータは、受信した画像データから抽出した特定の文字列に関する情報を含む。また、ＨＤＤ４０９は、メタデータの生成に用いられる下記表１及び表２のメタデータテンプレートを格納する。
【００２１】
【表１】
2020201822.tif 000003
【００２２】
【表２】
2020201822.tif 000004
【００２３】
ＨＤＤ４０９には、会計、法務等の業務の種別毎に異なるメタデータテンプレートが格納されている。メタデータテンプレートは、１つ以上のキーと、当該キーに対応するバリューで構成される。表１の例では、会計業務向けメタデータテンプレートは、「請求額」、「納期」、「案件番号」の３つのキーと、これらのキーに対応するバリューで構成される。また、表１の例では、法務業務向けメタデータテンプレートは、「案件番号」、「依頼主」、「日付」の３つのキーと、これらのキーに対応するバリューで構成される。なお、本実施の形態では、キーに対応するバリューとして固定値ではなく、選択型の値を設定することも可能である。キーに対応するバリューとして選択型の値を設定する際には、ユーザや管理者が各キーに対して選択肢となる複数のバリューを予め設定しておく必要がある。
【００２４】
画像形成システム１００では、例えば、画像形成装置１０１等が生成した画像データをストレージサーバ１０６に格納する場合、画像処理サーバ１０５が、選択された業務に対応するメタデータテンプレートをストレージサーバ１０６から取得する。画像処理サーバ１０５は、画像データ及びメタデータテンプレートに基づいてメタデータを生成し、画像データ及びメタデータをストレージサーバ１０６に送信する。ストレージサーバ１０６は、画像データ及びメタデータを対応付けして格納する。このように、画像形成システム１００では、メタデータが関連付けられた画像データが、例えば、ユーザが画像データを検索する際に用いられる。ストレージサーバ１０６は、格納される複数のデータの中から、ユーザが指定した文字列を含むメタデータが関連付けられた画像データを検索する。例えば、画像データの検索において、「請求額」を指定することで、「請求額」を含むメタデータが関連付けられた画像データを容易に検索することが可能となる。
【００２５】
また、ストレージサーバ１０６に格納されたメタデータ及び画像データを他のシステムに出力して、作業の効率化を図ることが可能となる。例えば、書類に記載された会計情報を人手で転記する必要がある会計システムに対し、「請求額」や「納期」といった会計情報を含むメタデータを出力する。これにより、人手で行うことなく、メタデータを用いて会計情報の転機を容易に行うことができ、転記作業の効率化を図ることができる。
【００２６】
図５は、図１の画像形成システム１００によって実行されるデータ格納処理の手順を示すフローチャートである。図５の処理における後述するステップＳ５０１、Ｓ５０２の処理は、例えば、画像形成装置１０１によって実行される処理である。この処理に係るプログラムは、格納元であるＨＤＤ２０４からＲＡＭ２０３に読み出され、ＣＰＵ２０２によって実行される。また、図５の処理における後述するステップＳ５０３〜Ｓ５０５、Ｓ５０８〜Ｓ５１０の処理は、画像処理サーバ１０５によって実行される処理である。この処理に係るプログラムは、格納元であるＨＤＤ４０３からＲＡＭ４０２に読み出され、ＣＰＵ４０１によって実行される。さらに、図５の処理における後述するステップＳ５０６〜Ｓ５０７、Ｓ５１１〜Ｓ５１２の処理は、ストレージサーバ１０６によって実行される処理である。この処理に係るプログラムは、格納元であるＨＤＤ４０９からＲＡＭ４０７に読み出され、ＣＰＵ４０６によって実行される。
【００２７】
図５において、まず、画像形成装置１０１のＣＰＵ２０２は、開始キー３０３の押下等の原稿のスキャン指示を受けると、スキャン処理を実行する（ステップＳ５０１）。ステップＳ５０１では、ＣＰＵ２０２がスキャナ２０９に対してスキャン指示を行い、スキャナ２０９が原稿を読み取って画像データを生成する。次いで、ＣＰＵ２０２は、ネットワークＩ／Ｆ２０５を介して、画像データを画像処理サーバ１０５へ送信する（ステップＳ５０２）。例えば、複数ページの原稿のスキャン指示を受けた場合、画像形成装置１０１は、各ページに対応する複数の画像データを生成し、生成した全てのページの画像データを画像処理サーバ１０５へ送信する。
【００２８】
画像処理サーバ１０５のＣＰＵ４０１は、画像形成装置１０１から画像データを受信すると（ステップＳ５０３）、当該画像データに基づいて図６の画像分割処理を実行する（ステップＳ５０４）。ステップＳ５０４では、画像データのメタデータの生成に必要となるデータが生成される。
【００２９】
図６は、図５のステップＳ５０４の画像分割処理の手順を示すフローチャートである。図６において、ＣＰＵ４０１は、ステップＳ５０３にて受信した画像データのうち、１ページ分の画像データ（以下、「ページ画像データ」という。）を読み込む（ステップＳ６０１）。次いで、ＣＰＵ４０１は、読み込んだページ画像データに対し、ブロック分割処理を実行する（ステップＳ６０２）。ブロック分割処理では、ＣＰＵ４０１は、ページ画像データの構造を解析し、ページ画像データを背景領域と文字列領域とに分割する。ステップＳ６０２の処理結果として、ページ画像データが分割された領域（以下、「分割領域」という。）毎の位置データと属性データとが関連付けられてＨＤＤ４０３に格納される。位置データは、ページ画像データにおける分割領域の位置を示す。属性データは、分割領域が背景領域及び文字列領域の何れであるかを示す。本実施の形態では、分割領域は、例えば、矩形で表現される。分割領域の位置データは、分割領域の左上頂点の座標、矩形の幅、及び矩形の高さを示す情報の組み合せで表現される。なお、分割領域の形状は、矩形以外の任意の形状であっても良い。
【００３０】
次いで、ＣＰＵ４０１は、ステップＳ６０２の処理結果の中から文字列領域に関するデータを読み出す。ＣＰＵ４０１は、上記文字列領域に対してＯＣＲ処理を施し（ステップＳ６０３）、上記文字列領域に含まれる文字列を示す文字コードデータを取得する。次いで、ＣＰＵ４０１は、取得した文字コードデータと、上記文字列領域の位置データと、ページ画像データとを関連付けてＨＤＤ４０３に格納する（ステップＳ６０４）。次いで、ＣＰＵ４０１は、ステップＳ５０３にて受信した全てのページ画像データを読み込んだか否かを判別する（ステップＳ６０５）。
【００３１】
ステップＳ６０５の判別の結果、ステップＳ５０３にて受信した何れかのページ画像データを読み込んでいないとき、ＣＰＵ４０１は、ステップＳ６０１の処理に戻る。ステップＳ６０５の判別の結果、ステップＳ５０３にて受信した全てのページ画像データを読み込んだとき、ＣＰＵ４０１は、画像分割処理を終了し、図５のステップＳ５０５の処理を行う。以上の手順で画像処理サーバ１０５が画像分割処理を実行することで、画像形成装置１０１がステップＳ５０１で生成した全てのページ画像データにおける文字列領域の位置データと、当該文字列領域の文字コードデータとが取得される。
【００３２】
図５に戻り、ＣＰＵ４０１は、ストレージサーバ１０６に対し、選択された業務に対応するメタデータテンプレートの取得要求を送信する（ステップＳ５０５）。ストレージサーバ１０６のＣＰＵ４０６は、画像処理サーバ１０５から上記取得要求を受信し（ステップＳ５０６）、上記取得要求に対応するメタデータテンプレートをＨＤＤ４０９から読み出す。次いで、ＣＰＵ４０６は、当該メタデータテンプレートを画像処理サーバ１０５へ送信する（ステップＳ５０７）。例えば、ＣＰＵ４０６は、表１に示すように、キーとして「請求額」、「納期」、「案件番号」を含む会計業務向けメタデータテンプレートを画像処理サーバ１０５へ送信する。
【００３３】
画像処理サーバ１０５のＣＰＵ４０１は、メタデータテンプレートをストレージサーバ１０６から受信し（ステップＳ５０８）、当該メタデータテンプレートをＨＤＤ４０３に格納する。次いで、ＣＰＵ４０１は、ＨＤＤ４０３に格納されたメタデータテンプレートに基づいて後述する図７のメタデータ設定処理を実行し（ステップＳ５０９）、ステップＳ５０３にて受信した画像データのメタデータを生成する。次いで、ＣＰＵ４０１は、ネットワークＩ／Ｆ４０４を介して、画像データ及びメタデータをストレージサーバ１０６へ送信する（ステップＳ５１０）。
【００３４】
ストレージサーバ１０６のＣＰＵ４０６は、ネットワークＩ／Ｆ４０８を介して、画像処理サーバ１０５から画像データ及びメタデータを受信する（ステップＳ５１１）。ＣＰＵ４０６は、受信した画像データ及びメタデータを対応付けしてＨＤＤ４０９に格納し（ステップＳ５１２）、本処理を終了する。
【００３５】
図７は、図５のステップＳ５０９のメタデータ設定処理の手順を示すフローチャートである。図７において、画像処理サーバ１０５のＣＰＵ４０１は、ステップＳ６０２の処理結果及びページ画像データを読み込む（ステップＳ７０１）。次いで、ＣＰＵ４０１は、ＨＤＤ４０３に格納したメタデータテンプレートの中の一のキーを読み込む（ステップＳ７０２）。ステップＳ７０２では、例えば、ＣＰＵ４０１は、キーとして「請求額」、「納期」、「案件番号」を含む会計業務向けメタデータテンプレートの中から、一のキーとして「請求額」を読み込む。次いで、ＣＰＵ４０１は、ＣＰＵ４０１がページ画像データから一のキーをキー候補として特定するための文字列（以下、「キー候補特定文字列」という。）を図８（ａ）の連携先キー変換辞書８０１から取得する（ステップＳ７０３）。連携先キー変換辞書８０１には、ストレージサーバ１０６が管理する全てのメタデータテンプレートのキーに関する情報が登録されている。連携先キー変換辞書８０１には、１つのキー（連携先Ｋｅｙ）に対し、１つ以上のキー候補特定文字列（ページ上のキー文字）が登録されている。すなわち、本実施の形態では、例えば、文字列領域に含まれる文字列が「請求額」以外、具体的に、連携先キー変換辞書８０１の「請求額」に対応付けて登録された「総額」や「合計」であっても、文字列領域に含まれる文字列が「請求額」として認識される。また、一つのキー候補特定文字列（ページ上のキー文字）に対して一つの探索ルールが登録され、各キー候補特定文字列の探索ルールが明確化されている。ステップＳ７０３では、ＣＰＵ４０１は、連携先キー変換辞書８０１からキー候補特定文字列として、例えば、ステップＳ７０２にて一のキーとして読み込んだ「請求額」に対応する「総額」、「合計」、「請求額」を取得する。
【００３６】
次いで、ＣＰＵ４０１は、ステップＳ６０４にてＨＤＤ４０３に格納したデータを読み込む。次いで、ＣＰＵ４０１は、ステップＳ７０３にて取得したキー候補特定文字列、例えば、「総額」、「合計」、「請求額」の中から、ＨＤＤ４０３に格納された文字コードデータが示す文字列と一致する文字列を探索する（ステップＳ７０４）。すなわち、ＣＰＵ４０１は、ステップＳ７０２〜Ｓ７０４の処理により、ページ画像データにおいて一のキーに相当する文字列を含む文字列領域が存在するか否かを判別する。次いで、ＣＰＵ４０１は、発見されたキー候補特定文字列に対応する探索ルールを連携先キー変換辞書８０１から特定する（ステップＳ７０５）。次いで、ＣＰＵ４０１は、特定した探索ルールに対応するバリュー物理探索ルールを図８(ｂ)のバリュー物理探索辞書８０２から特定する（ステップＳ７０６）。
【００３７】
バリュー物理探索ルールには、キー候補特定文字列と一致する文字列を含む文字列領域からの距離、例えば、図９(ａ)の文字列領域９００の左上頂点９０１からの距離が規定されている。すなわち、バリュー物理探索ルールのＬに続く値は、キー候補特定文字列と一致する文字列を含む文字列領域の左上頂点から左方向への距離を表す。バリュー物理探索ルールのＲに続く値は、キー候補特定文字列と一致する文字列を含む文字列領域の左上頂点から右方向への距離を表す。バリュー物理探索ルールのＴに続く値は、キー候補特定文字列と一致する文字列を含む文字列領域の左上頂点から上方向への距離を表す。バリュー物理探索ルールのＢに続く値は、キー候補特定文字列と一致する文字列を含む文字列領域の左上頂点から下方向への距離を表す。例えば、バリュー物理探索辞書８０２において、「金額」のバリュー物理探索ルールは、Ｌ:０ｃｍ, Ｒ:１０ｃｍ, Ｔ: ０ｃｍ, Ｂ: ２ｃｍである。「金額」のバリュー物理探索ルールは、ページ画像データ９０２において、左上頂点９０１と、左上頂点９０１から下方向へ２ｃｍの位置の頂点９０３と、左上頂点９０１から右方向へ１０ｃｍの位置の頂点９０４とで形成される領域９０５に含まれる文字列がバリュー候補であることを示している。なお、領域９０５の形状は、図９（ａ）に示すように直角三角形であっても良く、また、図９（ｂ）に示すように、扇型であっても良い。
【００３８】
次いで、ＣＰＵ４０１は、特定したバリュー物理探索ルールに基づいてバリュー候補を特定する（ステップＳ７０７）（バリュー候補特定手段）。例えば、図９(ａ)では、領域９０５の中に文字列領域９０６及び文字列領域９０７の少なくとも一部が含まれる。このとき、ステップＳ７０７では、ＣＰＵ４０１は、文字列領域９００に含まれるキー候補の文字列のバリュー候補として、文字列領域９０６に含まれる「振込先」、及び文字列領域９０７に含まれる「５０００円」を特定する。ＣＰＵ４０１は、特定したバリュー候補を含む文字列領域の位置を示す位置データ、及び特定したバリュー候補を示す文字コードデータをＲＡＭ４０２に格納する。次いで、ＣＰＵ４０１は、ステップＳ７０５にて特定した探索ルールに対応するバリュー型ルールを図８(ｃ)のバリュー型探索辞書８０３から特定し（ステップＳ７０８）、特定したバリュー型ルールをＲＡＭ４０２に格納する。バリュー型ルールは、画像データから特定の型の文字列を抽出するためのルールであり、例えば、「-?\\?((\ｎ+),?)+円?」のように正規表現によって表現される。なお、バリュー型ルールは、バリューを文字情報から特定するルールであれば良く、例えば、一つ以上の文字の完全一致を用いた処理を実行させるルールであっても良い。
【００３９】
次いで、ＣＰＵ４０１は、ステップＳ７０７にて特定されたバリュー候補を絞り込む。具体的に、ＣＰＵ４０１は、ステップＳ７０７にて特定されたバリュー候補の中から上記バリュー型ルールを満たす文字列を特定する（ステップＳ７０９）（バリュー候補特定手段）。ステップＳ７０９では、例えば、ＣＰＵ４０１は、バリュー候補である「振込先」及び「５０００円」が、バリュー型ルールである正規表現「-?\\?((\ｎ+),?)+円?」を満たすか否かを判別する。この判別は、正規表現を使用可能なプログラミング言語、例えば、Ｐｅｒｌ言語で表現される以下の命令で行われる。
$ｖａｌｕｅ_ｃａｎｄｉｄａｔｅ =~ /-?\\?((\ｎ+),?)+円?/ｇ
【００４０】
判別した結果、「５０００円」は上記正規表現を満たすので、ＣＰＵ４０１は、格納されていた文字列領域９０７の位置データ、及び「５０００円」を示す文字コードデータをＲＡＭ４０２に保持する。また、「振込先」は上記正規表現を満たさないので、ＣＰＵ４０１は、格納されていた文字列領域９０６の位置データ、及び「振込先」を示す文字コードデータをＲＡＭ４０２から削除する。
【００４１】
次いで、ＣＰＵ４０１は、ステップＳ７０７にて特定されたバリュー候補を更に絞り込む。具体的に、ＣＰＵ４０１は、ステップＳ７０９にて特定されたバリュー候補の中から文字列領域９００までの距離が最も短いバリュー候補を特定する(ステップＳ７１０) （バリュー候補特定手段）。ステップＳ７１０では、ＣＰＵ４０１は、文字列領域９００の位置データ及びバリュー候補の位置データを用いて、ページ画像データにおける文字列領域９００及びバリュー候補間の距離を算出する。ＣＰＵ４０１は、ユーグリッド距離やマンハッタン距離等を用いて上記距離を算出する。すなわち、本実施の形態では、バリュー型ルール及びキー候補に相当する文字列までの距離に基づいてキー候補に対応するバリュー候補が特定される。次いで、ＣＰＵ４０１は、ステップＳ７１０にて特定したバリュー候補の文字列を一のキーのバリューとして設定する(ステップＳ７１１)。例えば、図１０(ａ)に示すように「請求額」、「住所」、「電話番号」がキーとして規定された業務のメタデータとして、「請求額」のバリューに「５０００円」が設定されたメタデータが生成される（例えば、図１０(ｂ)を参照。）。次いで、ＣＰＵ４０１は、メタデータテンプレートのキーの中に未処理のキーが残っているか否かを判別する(ステップＳ７１２)。
【００４２】
ステップＳ７１２の判別の結果、メタデータテンプレートのキーの中に未処理のキーが残っているとき、ＣＰＵ４０１は、ステップＳ７０２の処理に戻り、未処理のキー、例えば、「請求額」、「納期」、「案件番号」の中の「納期」を読み込む。このようにして、本実施の形態では、ステップＳ５０８にて受信したメタデータテンプレートの全てのキーに対して上述した処理が実行される。ステップＳ７１２の判別の結果、メタデータテンプレートのキーの中に未処理のキーが残っていないとき、ＣＰＵ４０１は、取得した画像データの中に未処理のページ画像データが残っているか否かを判別する（ステップＳ７１３）。
【００４３】
ステップＳ７１３の判別の結果、取得した画像データの中に未処理のページ画像データが残っているとき、ＣＰＵ４０１は、ステップＳ７０１の処理に戻る。ステップＳ７１３の判別の結果、取得した画像データの中に未処理のページ画像データが残っていないとき、ＣＰＵ４０１は、上述した処理によって各バリューが設定されたメタデータをＲＡＭ４０２に格納する。次いで、ＣＰＵ４０１は、メタデータ設定処理を終了して、上述したステップＳ５１０の処理を行う。
【００４４】
上述した実施の形態によれば、選択された業務に応じて規定されている１つ以上のキー（キータイプ）に基づいてページ画像データからキー候補が特定される。上記キーに対してそれぞれ規定されているバリュー型ルール及びバリュー物理探索ルール（探索領域ルール）に基づいてキー候補に対応するバリュー候補が特定される。特定されたバリュー候補がメタデータに含まれるバリューとして設定される。これにより、画像データのメタデータの生成においてバリューを特定するための設定を出力先のシステムの種別に応じて変更する必要を無くすことができ、もって、画像データのメタデータの内容を容易に設定することができる。
【００４５】
また、上述した実施の形態では、バリュー型ルールは、画像データから特定の型の文字列を抽出するためのルールである。また、バリューの型ルールは、正規表現によって表される。これにより、画像データのメタデータに含める文字列として、バリュー型ルールを満たす特定の型の文字列を画像データから確実に抽出することができる。
【００４６】
上述した実施の形態では、バリュー型ルール及びキー候補に相当する文字列までの距離に基づいてキー候補に対応するバリュー候補が特定される。これにより、キー候補に対応するバリューとして相応しい文字列、具体的に、キー候補の比較的近傍の文字列であってバリュー型ルールを満たす文字列をメタデータに設定することができる。
【００４７】
以上、本発明について、上述した実施の形態を用いて説明したが、本発明は上述した実施の形態に限定されるものではない。例えば、画像処理サーバ１０５ではなく、画像形成装置１０１（又は画像形成装置１０２）が、ステップＳ５０１〜Ｓ５０２の処理を行った後に続けてステップＳ５０４〜Ｓ５１０の処理を行っても良い。画像形成装置１０１（又は画像形成装置１０２）がステップＳ５０１〜Ｓ５０２の処理を行った後に続けてステップＳ５０４〜Ｓ５１０の処理を行っても、上述した実施の形態と同様の効果を奏することができる。
【００４８】
また、上述した実施の形態では、後述する一致率に基づいてキー候補に対応するバリュー候補を特定しても良い。
【００４９】
図１１は、図７のメタデータ設定処理の変形例の手順を示すフローチャートである。図１１において、ＣＰＵ４０１は、ステップＳ７０１〜Ｓ７０７の処理を行う。次いで、ＣＰＵ４０１は、ステップＳ７０５にて特定した探索ルールに対応するバリュー型ルールを図１２のバリュー型探索辞書１２０１から特定し（ステップＳ１１０１）、特定したバリュー型ルールをＲＡＭ４０２に格納する。例えば、ステップＳ７０５にて特定した探索ルールが「金額」である場合、当該探索ルールに対応するバリュー型ルールとして、正規表現によって表現された「-?」、「\\?」、「((\ｄ+),?)」、及び「+円?」の４つのルールがＲＡＭ４０２に格納される。次いで、ＣＰＵ４０１は、図１３の一致率算出処理を実行し（ステップＳ１１０２）、ＲＡＭ４０２に格納された各バリュー候補とバリュー型ルールとの一致率を算出する。
【００５０】
図１３は、図１１のステップＳ１１０２の一致率算出処理の手順を示すフローチャートである。図１３において、ＣＰＵ４０１は、ＲＡＭ４０２に格納されたバリュー型ルールの中から一のルールを読み込む（ステップＳ１３０１）。例えば、「金額」の探索ルールに対応するバリュー型ルールである「-?」、「\\?」、「((\ｄ+),?)」、及び「+円?」の４つのルールがＲＡＭ４０２に格納されている場合、ステップＳ１３０１では、ＣＰＵ４０１は、その中から「-?」を読み込む。次いで、ＣＰＵ４０１は、読み込んだルールをバリュー候補に適用して一致する文字数を算出する（ステップＳ１３０２）。一致する文字数の算出は、正規表現を使用可能なプログラミング言語、例えば、Ｐｅｒｌ言語で表現される以下の命令で行われる。なお、ｖａｌｕｅ_ｃａｎｄｉｄａｔｅは、バリュー候補である。
ｍｙ$ｃｏｕｎｔ = ０;
$ｃｏｕｎｔ++ ｗｈｉｌｅ $ｖａｌｕｅ_ｃａｎｄｉｄａｔｅ =~ /-?/ｇ;
【００５１】
次いで、ＣＰＵ４０１は、ＲＡＭ４０２に格納された全てのルールを読み込んだか否かを判別する（ステップＳ１３０３）。
【００５２】
ステップＳ１３０３の判別の結果、ＲＡＭ４０２に格納された何れかのルールを読み込んでいないとき、ＣＰＵ４０１は、ステップＳ１３０１の処理に戻る。ステップＳ１３０１において、ＣＰＵ４０１は、読み込んでいないルール、例えば、「-?」、「\\?」、「((\ｄ+),?)」、及び「+円?」の中の「\\?」を読み込む。
【００５３】
ステップＳ１３０３の判別の結果、ＲＡＭ４０２に格納された全てのルールを読み込んでいるとき、ＣＰＵ４０１は、各ルールにおける一致文字数の合計値を算出する（ステップＳ１３０４）。ＣＰＵ４０１は、算出した一致文字数の合計値をＲＡＭ４０２に格納する。次いで、ＣＰＵ４０１は、ＲＡＭ４０２に格納された一致文字数の合計値に基づいて一致率を算出する（ステップＳ１３０５）。ステップＳ１３０５では、ＣＰＵ４０１は、一致文字数の合計値を対象となるバリュー候補の文字数で除算する。一致率の最大値は、１.０である。一致率の算出は、正規表現を使用可能なプログラミング言語、例えば、Ｐｅｒｌ言語で表現される以下の命令で行われる。なお、ｖａｌｕｅ_ｃａｎｄｉｄａｔｅはバリュー候補であり、ｓｕｍ_ｃｏｕｎｔは一致文字数の合計である。
$ｍａｃｈ_ｒａｔｅ = $ｓｕｍ_ｃｏｕｎｔ / ｌｅｎｇｔｈ(ｄｅｃｏｄｅ('ｕｔｆ-８', $ｖａｌｕｅ_ｃａｎｄｉｄａｔｅ));
$ｍａｃｈ_ｒａｔｅ = $ｍａｃｈ_ｒａｔｅ > １.０ ? $ １.０ : $ｍａｃｈ_ｒａｔｅ;
【００５４】
ＣＰＵ４０１は、算出した一致率を対応するバリュー候補に関連付けてＲＡＭ４０２に格納し、一致率算出処理を終了し、図１１のステップＳ１１０３の処理を行う。
【００５５】
図１１に戻り、ＣＰＵ４０１は、ＲＡＭ４０２に格納されたバリュー候補の位置データ及び一致率に基づいて確信度が最も高いバリュー候補を特定する（ステップＳ１１０３）。ステップＳ１１０３では、ＣＰＵ４０１は、ステップＳ７１０と同様に、文字列領域９００の位置データ及びバリュー候補の位置データを用いて、ページ画像データにおける文字列領域９００及びバリュー候補間の距離を算出する。ＣＰＵ４０１は、更にバリュー候補に対応する一致率を、算出した距離で除算し、算出した結果を確信度としてＲＡＭ４０２に格納する。ＣＰＵ４０１は、全てのバリュー候補に対応して確信度を算出し、確信度が最も高いバリュー候補を特定し、特定したバリュー候補をＲＡＭ４０２に格納する。次いで、ＣＰＵ４０１は、ステップＳ７１１以降の処理を行う。
【００５６】
上述した実施の形態では、一致率及びがキー候補に相当する文字列までの距離に基づいてキー候補に対応するバリュー候補が特定される。これにより、キー候補に対応するバリューとして相応しい文字列、具体的に、キー候補の比較的近傍の文字列であってバリュー型ルールとの一致率が極めて高い文字列をメタデータに設定することができる。
【００５７】
本発明は、上述の実施の形態の１以上の機能を実現するプログラムをネットワーク又は記憶媒体を介してシステム又は装置に供給し、該システム又は装置のコンピュータにおける１つ以上のプロセッサがプログラムを読み出して実行する処理でも実現可能である。また、本発明は、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００５８】
１０５  画像処理サーバ
４０１  ＣＰＵ
４０３  ＨＤＤ
８０２  バリュー物理探索辞書
８０３、１２０１  バリュー型探索辞書
【図１】
2020201822.tif 000005
【図２】
2020201822.tif 000006
【図３】
2020201822.tif 000007
【図４】
2020201822.tif 000008
【図５】
2020201822.tif 000009
【図６】
2020201822.tif 000010
【図７】
2020201822.tif 000011
【図８】
2020201822.tif 000012
【図９】
2020201822.tif 000013
【図１０】
2020201822.tif 000014
【図１１】
2020201822.tif 000015
【図１２】
2020201822.tif 000016
【図１３】
2020201822.tif 000017