(57)【要約】【課題】テンプレート及び文書データのオブジェクトの位置のズレを考慮した検定処理を実現し、業務効率を向上させる。【解決手段】文書データを処理する計算機であって、オブジェクトを取得するための認識処理の対象領域である認識領域を定義したテンプレートの管理情報と、変動オブジェクトを取得するための認識処理の対象領域である変動領域の情報と、変動オブジェクトの位置に基づいて当該変動オブジェクトの妥当性を判定するための検定ルールの情報と、を保持し、テンプレートに基づいて認識領域に対して第一認識処理を実行し、取得されたオブジェクトの妥当性を検定し、変動オブジェクトの妥当性がないと判定された場合、変動領域に対して第二認識処理を実行し、第二認識処理によって認識された変動オブジェクト及び当該変動オブジェクトの位置に対応する前記検定ルールに基づいて、変動オブジェクトの妥当性を検定する。【選択図】図１
2019139564.tif 000002
【特許請求の範囲】
【請求項１】
複数のオブジェクトを含む文書データを処理する計算機であって、
前記計算機は、
演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有し、
文書データから取得するオブジェクトの種別及び当該オブジェクトを取得するための認識処理の対象領域である認識領域を定義したテンプレートを管理するためのテンプレート管理情報と、同一種類の文書データに含まれるオブジェクトであって、前記文書データ毎に位置が変動するオブジェクトである変動オブジェクトを取得するための認識処理の対象領域である変動領域を管理するための変動領域管理情報と、前記変動オブジェクトの位置に基づいて当該変動オブジェクトの妥当性を判定するための検定ルールを管理するための検定ルール管理情報と、を保持し、
前記テンプレートに基づいて、前記文書データの認識領域に対して第一認識処理を実行し、
前記第一認識処理によって認識されたオブジェクトに基づいて、前記文書データから取得された前記オブジェクトの妥当性を検定し、
前記オブジェクトの妥当性がないと判定された場合、前記妥当性がないと判定されたオブジェクトが前記変動オブジェクトであるか否かを判定し、
前記妥当性がないと判定されたオブジェクトが前記変動オブジェクトであると判定された場合、前記変動領域に対して第二認識処理を実行し、
前記第二認識処理によって認識された変動オブジェクト及び当該変動オブジェクトの位置に対応する前記検定ルールに基づいて、前記変動オブジェクトの妥当性を検定し、
前記検定の結果に基づいて、前記文書データを処理することを特徴とする計算機。
【請求項２】
請求項１に記載の計算機であって、
前記変動領域は、複数の判定範囲を含み、
前記検定ルール管理情報は、前記複数の判定範囲の定義情報及び前記複数の判定範囲の各々に設定される前記検定ルールを対応づけて格納し、
前記変動領域管理情報は、前記変動領域の位置を示す情報を含み、
前記計算機は、
前記変動領域管理情報に基づいて、前記変動領域に対する認識処理を実行することによって第一オブジェクトを取得し、
前記第一オブジェクトを包含する矩形領域の重心が含まれる判定範囲を特定し、
前記検定ルール管理情報を参照して、前記特定された判定範囲に設定される検定ルールを取得し、
前記特定された判定範囲に対して設定される検定ルールに基づいて、前記第一オブジェクトの妥当性を検定することを特徴とする計算機。
【請求項３】
請求項２に記載の計算機であって、
前記変動領域から取得されたオブジェクトを包含する矩形領域の重心の座標を管理する位置履歴管理情報を保持し、
前記位置履歴管理情報に基づいて、前記変動領域を設定し、
前記矩形領域の重心の各々にスコアを設定し、
前記スコア毎の前記矩形領域の重心の分布に基づいて、前記判定範囲の定義情報を設定し、
前記判定範囲に対して前記検定ルールを設定し、
前記検定ルール管理情報に、前記判定範囲の定義情報及び前記検定ルールを対応づけて登録することを特徴とする計算機。
【請求項４】
請求項３に記載の計算機であって、
前記第一オブジェクトを包含する矩形領域の重心及び前記位置履歴管理情報に基づいて、新たな変動領域を設定し、前記新たな変動領域を前記変動領域管理情報に登録し、
前記新たな変動領域の新たな判定範囲を設定し、
前記新たな判定範囲に対して新たな検定ルールを設定することを特徴とする計算機。
【請求項５】
請求項２に記載の計算機であって、
前記判定範囲の定義情報は、標高モデルデータとして管理されることを特徴とする計算機。
【請求項６】
複数のオブジェクトを含む文書データを処理する計算機の文書データの処理方法であって、
前記計算機は、
演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有し、
文書データから取得するオブジェクトの種別及び当該オブジェクトを取得するための認識処理の対象領域である認識領域を定義したテンプレートを管理するためのテンプレート管理情報と、同一種類の文書データに含まれるオブジェクトであって、前記文書データ毎に位置が変動するオブジェクトである変動オブジェクトを取得するための認識処理の対象領域である変動領域を管理するための変動領域管理情報と、前記変動オブジェクトの位置に基づいて当該変動オブジェクトの妥当性を判定するための検定ルールを管理するための検定ルール管理情報と、を保持し、
前記文書データの処理方法は、
前記演算装置が、前記テンプレートに基づいて、前記文書データの認識領域に対して第一認識処理を実行する第１のステップと、
前記演算装置が、前記第一認識処理によって認識されたオブジェクトに基づいて、前記文書データから取得された前記オブジェクトの妥当性を検定する第２のステップと、
前記オブジェクトの妥当性がないと判定された場合、前記演算装置が、前記妥当性がないと判定されたオブジェクトが前記変動オブジェクトであるか否かを判定する第３のステップと、
前記妥当性がないと判定されたオブジェクトが前記変動オブジェクトであると判定された場合、前記演算装置が、前記変動領域に対して第二認識処理を実行する第４のステップと、
前記演算装置が、前記第二認識処理によって認識された変動オブジェクト及び当該変動オブジェクトの位置に対応する前記検定ルールに基づいて、前記変動オブジェクトの妥当性を検定する第５のステップと、
前記演算装置が、前記検定の結果に基づいて、前記文書データを処理する第６のステップと、を含むことを特徴とする文書データの処理方法。
【請求項７】
請求項６に記載の文書データの処理方法であって、
前記変動領域は、複数の判定範囲を含み、
前記検定ルール管理情報は、前記複数の判定範囲の定義情報及び前記複数の判定範囲の各々に設定される前記検定ルールを対応づけて格納し、
前記変動領域管理情報は、前記変動領域の位置を示す情報を含み、
前記第５のステップは、
前記演算装置が、前記変動領域管理情報に基づいて、前記変動領域に対する認識処理を実行することによって第一オブジェクトを取得するステップと、
前記演算装置が、前記第一オブジェクトを包含する矩形領域の重心が含まれる判定範囲を特定するステップと、
前記演算装置が、前記検定ルール管理情報を参照して、前記特定された判定範囲に設定される検定ルールを取得するステップと、
前記演算装置が、前記特定された判定範囲に対して設定される検定ルールに基づいて、前記第一オブジェクトの妥当性を検定するステップと、を含むことを特徴とする文書データの処理方法。
【請求項８】
請求項７に記載の文書データの処理方法であって、
前記計算機は、前記変動領域から取得されたオブジェクトを包含する矩形領域の重心の座標を管理する位置履歴管理情報を保持し、
前記文書データの処理方法は、
前記演算装置が、前記位置履歴管理情報に基づいて、前記変動領域を設定する第７のステップと、
前記演算装置が、前記矩形領域の重心の各々にスコアを設定する第８のステップと、
前記演算装置が、前記スコア毎の前記矩形領域の重心の分布に基づいて、前記判定範囲の定義情報を設定する第９のステップと、
前記演算装置が、前記判定範囲に対して前記検定ルールを設定する第１０のステップと、
前記演算装置が、前記検定ルール管理情報に、前記判定範囲の定義情報及び前記検定ルールを対応づけて登録する第１１のステップと、を含むことを特徴とする文書データの処理方法。
【請求項９】
請求項８に記載の文書データの処理方法であって、
前記第７のステップは、前記演算装置が、前記第一オブジェクトを包含する矩形領域の重心及び前記位置履歴管理情報に基づいて、新たな変動領域を設定し、前記新たな変動領域を前記変動領域管理情報に登録するステップを含み、
前記第９のステップは、前記演算装置が、前記新たな変動領域の新たな判定範囲を設定するステップを含み、
前記第１０のステップは、前記演算装置が、前記新たな判定範囲に対して新たな検定ルールを設定するステップを含むことを特徴とする文書データの処理方法。
【請求項１０】
請求項７に記載の文書データの処理方法であって、
前記判定範囲の定義情報は、標高モデルデータとして管理されることを特徴とする文書データの処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テンプレートを用いて文書データを処理する計算機及び処理方法に関する。
【背景技術】
【０００２】
近年、帳票等の文書を扱う業務では、計算機が電子化された文書（文書データ）の認識結果に基づいて自動的に業務処理を行うシステムが採用されている。当該システムは、文書データを用いた文字認識処理及び画像認識処理を実行することによって文書に記載された文字列及び画像を認識し、認識結果に基づいて記載内容の妥当性を判定する検定処理を実行する。記載内容が妥当である場合、システムは文書データの認識結果を用いた業務処理を自動的に実行する。記載内容が妥当でない場合には、ユーザが認識結果等を確認し、必要な作業を行う。
【０００３】
本明細書では、文書内の認識対象となる文字列及び画像をオブジェクトと記載する。また、本明細書では、文字認識処理及び画像認識処理を区別しない認識処理と記載する。
【０００４】
従来のシステムでは、認識処理の高速化及び認識精度の向上を実現するために、予め、オブジェクトの種別及びオブジェクトを認識する領域等を定義したテンプレートが用いられる。テンプレートが適切でない場合、システムは、文書に記載されたオブジェクトを認識できない。したがって、適切なテンプレートを保持することが重要となる。
【０００５】
テンプレートを管理する技術として特許文献１に記載の技術が知られている。特許文献１には、「帳票処理端末が帳票識別に失敗したとき、端末が業務センタに帳票の画像情報を送信する。業務センタの帳票識別辞書管理部は、識別失敗の原因分析を行い、帳票処理システムを運用しながら帳票識別辞書を更新し、更新情報を端末に送信する。」ことが記載されている。
【０００６】
従来のシステムは、オブジェクトの妥当性を判定するための辞書情報を保持し、テンプレート及び辞書情報に基づいて、内容及び位置等、認識されたオブジェクトが妥当であるか否かを判定する。少なくとも一つのオブジェクトが妥当でないと判定された場合、検定処理の結果は失敗と判定される。特許文献１に記載の技術を用いてテンプレートの管理を行う場合、テンプレートが更新される。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−１０３８７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
印又はサインは手動で押印又は記載等が行われるため、位置の変動が大きい。そのため、テンプレートに設定された印又はサインを認識する領域の位置と、文書内の印又はサインの位置とのズレが大きい場合、検定処理の結果は失敗となり、テンプレートが更新される。テンプレートの更新では、前述の位置のズレを考慮して、印又はサインを認識する領域が拡大される。
【０００９】
オブジェクトを認識する領域が拡大された場合、誤ったオブジェクトが認識結果に含まれる可能性がある。例えば、社印をオブジェクトとして認識する領域が拡大された結果、社印の近くに押印された認印が認識される可能性がある。この場合、検定処理が正常に行われないため、誤った業務が実行される。したがって、業務効率を向上できない。
【００１０】
本発明は、前述の位置のズレを考慮した検定処理を実現し、業務効率を向上させることを目的とする。
【課題を解決するための手段】
【００１１】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、複数のオブジェクトを含む文書データを処理する計算機であって、前記計算機は、演算装置、前記演算装置に接続される記憶装置、及び前記演算装置に接続されるインタフェースを有し、文書データから取得するオブジェクトの種別及び当該オブジェクトを取得するための認識処理の対象領域である認識領域を定義したテンプレートを管理するためのテンプレート管理情報と、同一種類の文書データに含まれるオブジェクトであって、前記文書データ毎に位置が変動するオブジェクトである変動オブジェクトを取得するための認識処理の対象領域である変動領域を管理するための変動領域管理情報と、前記変動オブジェクトの位置に基づいて当該変動オブジェクトの妥当性を判定するための検定ルールを管理するための検定ルール管理情報と、を保持し、前記テンプレートに基づいて、前記文書データの認識領域に対して第一認識処理を実行し、前記第一認識処理によって認識されたオブジェクトに基づいて、前記文書データから取得された前記オブジェクトの妥当性を検定し、前記オブジェクトの妥当性がないと判定された場合、前記妥当性がないと判定されたオブジェクトが前記変動オブジェクトであるか否かを判定し、前記妥当性がないと判定されたオブジェクトが前記変動オブジェクトであると判定された場合、前記変動領域に対して第二認識処理を実行し、前記第二認識処理によって認識された変動オブジェクト及び当該変動オブジェクトの位置に対応する前記検定ルールに基づいて、前記変動オブジェクトの妥当性を検定し、前記検定の結果に基づいて、前記文書データを処理する。
【発明の効果】
【００１２】
本発明によれば、変動オブジェクトの定義情報及び位置ズレを考慮した検定ルールの情報を保持することによって、オブジェクトと認識範囲との間の位置ズレを考慮した検定処理を実現できる。これによって、業務効率を向上できる。
【図面の簡単な説明】
【００１３】
【図１】実施例１の計算機システムの構成の一例を示す図である。
【図２】実施例１のテンプレート管理情報のデータ構造の一例を示す図である。
【図３】実施例１の変動領域管理情報のデータ構造の一例を示す図である。
【図４】実施例１の検定ルール管理情報のデータ構造の一例を示す図である。
【図５】実施例１のテンプレート管理情報に格納されるテンプレートのイメージを示す図である。
【図６】実施例１の位置履歴管理情報のデータ構造の一例を示す図である。
【図７Ａ】実施例１の業務計算機が文書データに対して実行する処理を説明するフローチャートである。
【図７Ｂ】実施例１の業務計算機が文書データに対して実行する処理を説明するフローチャートである。
【図８】実施例１の業務計算機が処理する文書データの一例を示す図である。
【図９】実施例１の業務計算機が実行するテンプレートの生成処理を説明するフローチャートである。
【図１０】実施例１の業務計算機が表示する画面の一例を示す図である。
【図１１】実施例１の業務計算機が実行する判定範囲設定処理を説明するフローチャートである。
【図１２】実施例１の業務計算機が表示する画面の一例を示す図である。
【図１３】実施例２の業務計算機が実行する判定範囲設定処理を説明するフローチャートである。
【図１４】実施例２の業務計算機が表示する画面の一例を示す図である。
【発明を実施するための形態】
【００１４】
以下、本発明に係る実施例を添付図面を用いて説明する。各図において共通の構成については同一の参照符号が付されている。
【実施例１】
【００１５】
図１は、実施例１の計算機システムの構成の一例を示す図である。
【００１６】
計算機システムは、業務計算機１００及び複数の端末１０１から構成される。各端末１０１は、ネットワーク１０５を介して業務計算機１００と接続する。
【００１７】
業務計算機１００は、帳票等の業務処理で扱われる文書を用いて認識処理及び検定処理を実行する。業務計算機１００は、検定処理の結果が「成功」である場合、認識結果に基づいて業務処理を実行する。検定処理の結果が「失敗」である場合、業務計算機１００は、ユーザの手動による操作を促す情報を提示し、また、テンプレート生成処理を実行する。検定処理の結果が「失敗」である場合、ユーザが業務処理を実行し、又は、ユーザによって修正された情報に基づいて、業務計算機１００が業務処理を実行する。
【００１８】
端末１０１は、文書の入力及び各種設定を行うための計算機である。端末１０１は、文書データを業務計算機１００に送信する。なお、ユーザは、業務計算機１００に直接又は業務計算機１００を運用する管理者に、電子化される前の文書を提出してもよい。
【００１９】
業務計算機１００及び端末１０１のハードウェア構成及びソフトウェア構成について説明する。
【００２０】
業務計算機１００は、プロセッサ１１０、主記憶装置１１１、副記憶装置１１２、ネットワークインタフェース１１３、及びスキャン装置１１４を有する。各ハードウェアは、バスを介して接続される。
【００２１】
プロセッサ１１０は、主記憶装置１１１に格納されるプログラムを実行する。プロセッサ１１０がプログラムにしたがって処理を実行することによって、特定の機能を実現するモジュールとして動作する。以下の説明では、モジュールを主語に処理を説明する場合、プロセッサ１１０がモジュールを実現するプログラムを実行していることを示す。
【００２２】
主記憶装置１１１は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等であり、プロセッサ１１０が実行するプログラム及びプログラムが使用する情報を格納する。また、主記憶装置１１１は、プログラムが使用するワークエリアを提供する。主記憶装置１１１に格納されるプログラムについては後述する。
【００２３】
副記憶装置１１２は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）及びＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等であり、データを永続的に格納する。副記憶装置１１２に格納されるデータについては後述する。
【００２４】
ネットワークインタフェース１１３はネットワーク１０５を介して他の装置と接続するためのインタフェースである。スキャン装置１１４は、電子化される前の文書を読み込み、電子データを生成する。本明細書では、文書の電子データを文書データと記載する。
【００２５】
ここで、主記憶装置１１１に格納されるプログラム及び副記憶装置１１２に格納されるデータについて説明する。
【００２６】
主記憶装置１１１は、識別モジュール１２０、業務処理モジュール１２１、及びテンプレート生成モジュール１２２を実現するプログラムを格納する。
【００２７】
識別モジュール１２０は、文書データ及び後述するテンプレート管理情報１３０に格納されるテンプレートを用いて、文書の認識処理及び検定処理を実行する。業務処理モジュール１２１は、文書データの認識結果及び業務管理情報１３２に基づいて業務を実行する。本実施例は、実行される業務の種別に限定されない。テンプレート生成モジュール１２２は、テンプレートを生成し、また、テンプレートを更新する。
【００２８】
なお、業務計算機１００が有する各モジュールについては、複数のモジュールを一つのモジュールにまとめてもよいし、一つのモジュールを機能毎に複数のモジュールに分けてもよい。
【００２９】
副記憶装置１１２は、テンプレート管理情報１３０、辞書管理情報１３１、業務管理情報１３２、変動領域管理情報１３３、検定ルール管理情報１３４、及び位置履歴管理情報１３５を格納する。
【００３０】
テンプレート管理情報１３０は、テンプレートを管理するための情報である。テンプレート管理情報１３０のデータ構造の詳細は図２を用いて説明する。後述するように、テンプレートには、オブジェクト及び文書上の認識処理の対象となる領域を指定する情報が含まれる。本明細書では、文書上の認識処理の対象となる領域を認識領域と記載する。
【００３１】
本実施例の少なくとも一つのテンプレートには変動オブジェクトに関する情報が含まれる。変動オブジェクトは、文書毎に、位置が大きく変動するオブジェクトを表す。
【００３２】
辞書管理情報１３１は、文字認識処理及び検定処理に使用される文字列辞書及び項目名辞書等を格納する。本実施例は、辞書管理情報１３１に格納される情報に限定されない。辞書管理情報１３１は公知のものであるため詳細な説明は省略する。
【００３３】
業務管理情報１３２は、業務処理モジュール１２１が業務処理に使用するデータを管理するための情報である。本実施例では、業務管理情報１３２に格納されるデータの種別及びデータ形式に限定されない。
【００３４】
変動領域管理情報１３３は、オブジェクトの位置のズレを考慮した認識処理の対象となる領域である変動領域を管理するための情報である。変動領域管理情報１３３のデータ構造の詳細は図３を用いて説明する。後述するように変動領域には、妥当性を判定するポリシが異なる複数の判定範囲が設定される。
【００３５】
検定ルール管理情報１３４は、変動オブジェクの妥当性を判定する場合に使用する検定ルールを管理するための情報である。検定ルール管理情報１３４のデータ構造の詳細は図４を用いて説明する。
【００３６】
位置履歴管理情報１３５は、変動領域管理情報１３３を用いた認識処理によって得られた変動オブジェクトの位置に関する情報の履歴を管理するための情報である。位置履歴管理情報１３５は、変動領域を設定する場合に用いられる。位置履歴管理情報１３５のデータ構造の詳細は図６を用いて説明する。
【００３７】
本実施例では、業務計算機１００が業務処理モジュール１２１を有しているが、他の計算機が業務処理モジュール１２１を有してもよい。この場合、業務計算機１００は、検定処理の結果が成功である場合、業務処理モジュール１２１を有する他の計算機に業務処理の実行を指示する。また、識別モジュール１２０及びテンプレート生成モジュール１２２についても別々の業務計算機１００が有してもよい。
【００３８】
端末１０１は、プロセッサ１５０、主記憶装置１５１、ネットワークインタフェース１５２、入力装置１５３、及び出力装置１５４を有する。入力装置１５３は、キーボード、マウス、及びタッチパネル等、データを入力するための装置である。出力装置１５４は、ディスプレイ及びプリンタ等、データを出力するための装置である。なお、端末１０１の主記憶装置１５１には、オペレーティングシステム及びアプリケーションを実現するプログラムが格納され、プロセッサ１５０によって当該プログラムが実行される。
【００３９】
図２は、実施例１のテンプレート管理情報１３０のデータ構造の一例を示す図である。
【００４０】
テンプレート管理情報１３０は、テンプレートＩＤ２０１、種別２０２、オブジェクトＩＤ２０３、識別対象２０４、位置２０５、及び変動領域ＩＤ２０６から構成されるエントリを含む。一つのエントリが一つのテンプレートに対応する。
【００４１】
テンプレートＩＤ２０１は、テンプレートを一意に識別するための識別情報を格納するフィールドである。種別２０２は、テンプレートを使用する文書の種別を格納するフィールドである。
【００４２】
オブジェクトＩＤ２０３は、オブジェクトの識別情報を格納するフィールドである。なお、異なるテンプレートのオブジェクトＩＤ２０３に格納される識別情報は重複してもよい。一つのテンプレートには一つ以上のオブジェクトが設定される。
【００４３】
識別対象２０４は、オブジェクトの種別を格納するフィールドである。識別対象２０４には、例えば、「文字」及び「印」等が格納される。識別対象２０４が「文字」である場合、当該オブジェクトに対して文字認識処理が実行され、識別対象２０４が「印」である場合、当該オブジェクトに対して画像認識処理が実行される。
【００４４】
位置２０５は、認識領域を指定する情報を格納するフィールドである。本実施例では、認識領域は矩形領域として設定される。そのため、位置２０５には、矩形の対角線の両端の座標が格納される。なお、位置２０５には、紙面（文書）の左上を原点とする座標系の値が格納される。
【００４５】
変動領域ＩＤ２０６は、変動領域を一意に識別するための識別情報を格納するフィールドである。オブジェクトが変動オブジェクトでない場合、変動領域ＩＤ２０６は空欄となる。一方、オブジェクトが変動オブジェクトである場合、変動領域ＩＤ２０６には変動領域の識別情報が格納される。
【００４６】
図３は、実施例１の変動領域管理情報１３３のデータ構造の一例を示す図である。
【００４７】
変動領域管理情報１３３は、変動領域ＩＤ３０１、変動領域位置３０２、及び変動領域スコアデータ３０３から構成されるエントリを含む。一つのエントリが一つの変動領域に対応する。
【００４８】
変動領域ＩＤ３０１は、変動領域を一意に識別するための識別情報を格納するフィールドである。
【００４９】
変動領域位置３０２は、変動領域の位置を指定する情報を格納するフィールドである。本実施例では、変動領域は矩形領域として表される。変動領域位置３０２には、紙面（文書）の左上を原点とする座標系の値が格納される。
【００５０】
変動領域スコアデータ３０３は、変動領域内のスコアの分布を示すデータを格納するフィールドである。変動領域スコアデータ３０３には、例えば、ＤＳＭ（Ｄｉｇｉｔａｌ  Ｅｌｅｖａｔｉｏｎ  Ｍｏｄｅｌ）データが格納される。ＤＳＭデータは、変動領域を一定のサイズのメッシュで分割し、各メッシュの中心にスコアを設定することによって生成できる。本実施例の変動領域スコアデータ３０３には、メッシュの中心の座標（ｕｉ，ｖｊ）及びスコア（ｈｉｊ）の組から構成されるデータがメッシュの数だけ格納される。なお、メッシュの中心の座標は、変動領域の左上を原点とする座標系を用いて表される。
【００５１】
図４は、実施例１の検定ルール管理情報１３４のデータ構造の一例を示す図である。
【００５２】
検定ルール管理情報１３４は、変動領域ＩＤ４０１、判定範囲４０２、及び検定ルール４０３から構成されるエントリを含む。一つのエントリが一つの変動領域に設定される検定ルールに対応する。
【００５３】
変動領域ＩＤ４０１は、変動領域を一意に識別するための識別情報を格納するフィールドである。
【００５４】
判定範囲４０２は、変動領域内に設定される判定領域の定義情報を格納するフィールドである。本実施例では、スコアの範囲が判定範囲の定義情報として格納される。
【００５５】
検定ルール４０３は、各判定範囲に設定される検定ルールを格納するフィールドである。検定ルール４０３には、条件式等が格納される。
【００５６】
本実施例の業務計算機１００は、変動領域管理情報１３３及び検定ルール管理情報１３４は別々の情報として管理しているが、一つの情報として管理してもよい。
【００５７】
図５は、実施例１のテンプレート管理情報１３０に格納されるテンプレートのイメージを示す図である。
【００５８】
テンプレート５００は、認識領域５０１、５０２、５０３、５０４、５０５を含む。各認識領域５０１、５０２、５０３、５０４、５０５は、位置２０５によって定義される。
【００５９】
認識領域５０１、５０２、５０３、５０４、５０５は、位置のズレが考慮されていない認識処理を行う領域である。認識領域５０４の近傍には変動領域５１１が設定される。変動領域５１１は変動領域位置３０２によって定義される。また、変動領域５１１内には、等高線型の判定範囲５２１、５２２、５２３、５２４、５２５、５２６が設定される。判定範囲５２１、５２２、５２３、５２４、５２５、５２６は、判定範囲４０２によって定義される。なお、図５に示す等高線型の判定領域は、変動領域スコアデータ３０３及び判定範囲４０２を用いて表現することができる。
【００６０】
図６は、実施例１の位置履歴管理情報１３５のデータ構造の一例を示す図である。
【００６１】
位置履歴管理情報１３５は、テンプレートＩＤ６０１、オブジェクトＩＤ６０２、及び位置履歴６０３から構成されるエントリを含む。一つのエントリが一つの変動オブジェクトの位置の履歴に対応する。
【００６２】
テンプレートＩＤ６０１は、テンプレートを一意に識別するための識別情報を格納するフィールドである。オブジェクトＩＤ６０２は、オブジェクトの識別情報を格納するフィールドである。
【００６３】
位置履歴６０３は、変動領域から取得された変動オブジェクトの位置の座標を格納するフィールドである。本実施例では、変動オブジェクトの重心の座標が格納される。なお、変動オブジェクトが文字列又は複雑な図形等の場合、文字列又は図形を包含する矩形領域の重心の座標を変動オブジェクトの位置の座標とする。
【００６４】
図７Ａ及び図７Ｂは、実施例１の業務計算機１００が文書データに対して実行する処理を説明するフローチャートである。図８は、実施例１の業務計算機１００が処理する文書データの一例を示す図である。
【００６５】
業務計算機１００は、文書データの入力を受け付ける（ステップＳ１０１）。なお、電子化される前の文書が入力された場合、業務計算機１００は、スキャン装置１１４を用いて文書データを生成する。
【００６６】
次に、業務計算機１００の識別モジュール１２０は、文書データの読取処理を実行する（ステップＳ１０２）。
【００６７】
具体的には、識別モジュール１２０は、テンプレート管理情報１３０からテンプレートを選択し、選択されたテンプレートに基づいて、各認識領域に対して認識処理を実行する。例えば、図５に示すテンプレートを用いて図８に示す文書データ８００の読取処理を実行する場合、識別モジュール１２０は、認識領域５０１、５０２、５０３、５０４、５０５に対して認識処理を実行する。
【００６８】
次に、業務計算機１００の識別モジュール１２０は、認識結果に基づいて、各オブジェクトの検定処理を実行する（ステップＳ１０３）。検定処理は公知の技術を用いればよいため詳細な説明は省略する。図８に示す文書データ８００の場合、社印等に対応する印の位置が認識領域５０４からずれているため、検定結果が失敗となる可能性がある。
【００６９】
次に、業務計算機１００の識別モジュール１２０は、検定結果が成功であるか否かを判定する（ステップＳ１０４）。
【００７０】
検定結果が成功であると判定された場合、業務計算機１００の識別モジュール１２０は、業務処理モジュール１２１に自動業務処理の実行を指示する（ステップＳ１０５）。業務処理モジュール１２１は、認識結果及び業務管理情報１３２に基づいて、所定の業務を実行する。その後、業務計算機１００は処理を終了する。
【００７１】
ステップＳ１０４において、検定結果が失敗であると判定された場合、業務計算機１００の識別モジュール１２０は、妥当でないオブジェクトは変動オブジェクトのみであるか否かを判定する（ステップＳ１０６）。
【００７２】
変動オブジェクト以外に妥当でないオブジェクトが存在すると判定された場合、業務計算機１００の識別モジュール１２０は、テンプレート生成モジュール１２２に新規テンプレートの追加処理の実行を指示する（ステップＳ１１０）。新規テンプレートの追加処理は、図９を用いて説明する新規テンプレートの生成処理と同一の処理である。
【００７３】
次に、業務計算機１００の識別モジュール１２０は、手動による業務処理の実行を業務処理モジュール１２１に指示する（ステップＳ１１１）。業務計算機１００は、その後、処理を終了する。
【００７４】
ステップＳ１０６において、妥当でないオブジェクトは変動オブジェクトのみであると判定された場合、業務計算機１００の識別モジュール１２０は、変動オブジェクトの検定処理を実行する（ステップＳ１０７）。具体的には、以下のような処理が実行される。
【００７５】
（処理１）識別モジュール１２０は、テンプレート管理情報１３０を参照し、選択したテンプレートに対応するエントリに含まれる変動オブジェクトの行の変動領域ＩＤ２０６から変動領域の識別情報を取得する。また、識別モジュール１２０は、当該行の識別対象２０４からオブジェクトの種別を示す値を取得する。
【００７６】
（処理２）識別モジュール１２０は、変動領域管理情報１３３を参照して、変動領域ＩＤ３０１が取得した変動領域の識別情報に一致するエントリを検索する。識別モジュール１２０は、検索されたエントリの変動領域位置３０２から変動領域の位置を示す情報を取得する。識別モジュール１２０は、変動領域の位置を示す情報及びオブジェクトの種別を示す情報に基づいて、変動領域に対して認識処理を実行する。
【００７７】
（処理３）識別モジュール１２０は、認識処理によって得られたオブジェクトを包含する矩形領域を特定し、また、矩形領域の重心座標を算出する。識別モジュール１２０は、位置履歴管理情報１３５を参照し、テンプレートＩＤ６０１及びオブジェクトＩＤ６０２の値の組合せが、テンプレートの識別情報及びオブジェクトの識別情報の組合せに一致するエントリの位置履歴６０３に矩形領域の重心座標を登録する。図８に示す文書データ８００の場合、印の画像の外形が矩形領域となり、また、印の中心が矩形領域の重心となる。
【００７８】
（処理４）識別モジュール１２０は、変動領域管理情報１３３から検索されたエントリの変動領域スコアデータ３０３に基づいて、矩形領域の重心のスコアを算出する。例えば、識別モジュール１２０は、メッシュの中心及び矩形領域の重心の距離を算出し、当該距離が最も短くなるメッシュのスコアを矩形領域の重心のスコアに決定する。
【００７９】
（処理５）識別モジュール１２０は、文字列又は画像の特徴量を算出する。本実施例では、基準となる文字列と文字認識処理で得られた文字列との類似度、又は、基準となる画像と画像認識処理で得られた画像との類似度が特徴量として算出される。
【００８０】
（処理６）識別モジュール１２０は、検定ルール管理情報１３４を参照して、変動領域ＩＤ４０１が取得した変動領域の識別情報に一致するエントリを検索する。識別モジュール１２０は、検索されたエントリの判定範囲４０２を参照し、（処理４）で決定されたスコアを含む判定範囲を特定し、当該判定範囲に対応する行の検定ルール４０３から判定範囲の検定ルールを取得する。
【００８１】
（処理７）識別モジュール１２０は、算出された特徴量及び取得された検定ルールに基づいて、変動オブジェクトが妥当であるか否かを判定する。すなわち、識別モジュール１２０は、条件式を満たすか否かを判定する。
【００８２】
（処理８）条件式を満たす場合、識別モジュール１２０は、オブジェクトは妥当であるものとして、成功を示す検定結果を出力する。一方、条件を満たさない場合、識別モジュール１２０は、オブジェクトは妥当でないものとして、失敗を示す検定結果を出力する。以上がステップＳ１０７の処理の説明である。
【００８３】
次に、業務計算機１００の識別モジュール１２０は、テンプレート生成モジュール１２２に既存テンプレートの更新処理の実行を指示する（ステップＳ１０８）。
【００８４】
次に、業務計算機１００の識別モジュール１２０は、検定結果が成功であるか否かを判定する（ステップＳ１０９）。
【００８５】
検定結果が失敗であると判定された場合、業務計算機１００の識別モジュール１２０は、ステップＳ１１１に進む。
【００８６】
検定結果が成功であると判定された場合、業務計算機１００の識別モジュール１２０は、ステップＳ１０５に進む。
【００８７】
図９は、実施例１の業務計算機１００が実行するテンプレートの生成処理を説明するフローチャートである。図１０は、実施例１の業務計算機１００によって表示される画面の一例を示す図である。テンプレートの生成処理は、テンプレート生成モジュール１２２が実行する。
【００８８】
テンプレート生成モジュール１２２は、図１０に示すような設定画面１０００を表示する（ステップＳ２０１）。設定画面１０００は、端末１０１の出力装置１５４に表示される。ここで、設定画面１０００の構成及び操作方法について説明する。
【００８９】
設定画面１０００は、文書データ操作欄１００１、種別設定欄１００２、オブジェクト設定欄１００３、追加ボタン１００４、及び登録ボタン１００５を含む。
【００９０】
文書データ操作欄１００１は、認識領域を設定するための欄である。ユーザは、文書データ操作欄１００１に表示される文書データに対して、文字列又は画像等のオブジェクトを包含する矩形領域を指定することによって認識領域を設定できる。
【００９１】
種別設定欄１００２は、テンプレートを使用する文書の種別を設定するための欄である。
【００９２】
オブジェクト設定欄１００３は、オブジェクトの認識処理に必要な情報を設定するための欄である。オブジェクト設定欄１００３は、オブジェクトＩＤ１０１１、識別対象１０１２、位置１０１３、フラグ１０１４、及びファイルＩＤ１０１５から構成されるエントリを含む。一つのエントリが一つのオブジェクトに対応する。
【００９３】
オブジェクトＩＤ１０１１は、オブジェクトの識別情報を格納するフィールドである。識別対象１０１２は、オブジェクトの種別を格納するフィールドである。位置１０１３は、認識領域の位置を指定する情報を格納するフィールドである。フラグ１０１４は、オブジェクトが変動オブジェクトであるか否かを示すフラグを設定するフィールドである。フラグ１０１４には、オブジェクトが変動オブジェクトであることを示す「ＯＮ」又はオブジェクトが変動オブジェクトでないことを示す「ＯＦＦ」のいずれかが設定される。ファイルＩＤ１０１５は、後述する判定範囲設定処理に使用する位置履歴に対応するファイルの識別情報を設定するフィールドである。本実施例では、ファイルが予め存在するものとする。
【００９４】
追加ボタン１００４は、オブジェクトに関する情報を追加するための操作ボタンである。本実施例では、ユーザが追加ボタン１００４を操作した場合、文書データ操作欄１００１に対する入力が有効化される。登録ボタン１００５は、テンプレートを登録するための操作ボタンである。ユーザが登録ボタン１００５を操作した場合、業務計算機１００に登録要求が送信される。
【００９５】
ユーザは、テンプレートを設定する文書のサンプル文書データを入力する。入力されたサンプル文書データは文書データ操作欄１００１に表示される。ユーザは、種別設定欄１００２にテンプレートを使用する文書の種別を設定する。
【００９６】
ユーザは、追加ボタン１００４を操作し、文書データ操作欄１００１に表示される文書データに認識領域を一つ設定する。このとき、テンプレート生成モジュール１２２は、オブジェクトの識別情報を決定する。テンプレート生成モジュール１２２は、オブジェクト設定欄１００３にエントリを追加し、追加されたエントリのオブジェクトＩＤ１０１１に決定されたオブジェクトの識別情報を設定し、位置１０１３に矩形領域の座標を設定し、また、フラグ１０１４に「ＯＦＦ」を設定する。ユーザは、オブジェクト設定欄１００３に追加されたエントリの識別対象１０１２に値を設定し、必要に応じて、フラグ１０１４に「ＯＮ」を設定する。設定したオブジェクトが変動オブジェクトである場合、ユーザは、追加されたエントリのファイルＩＤ１０１５に使用するファイルの識別情報を設定する。ユーザは、設定するオブジェクトの数だけ同様の操作を繰り返し実行する。なお、種別設定欄１００２及びオブジェクト設定欄１００３に設定された値は、主記憶装置１１１上に一時的に格納される。
【００９７】
ユーザは、全てのオブジェクトの設定が完了した場合、登録ボタン１００５を操作する。以上が、設定画面１０００の構成及び操作方法の説明である。図９の説明に戻る。
【００９８】
テンプレート生成モジュール１２２は、登録要求を受信したか否かを判定する（ステップＳ２０２）。
【００９９】
登録要求を受信していない場合、テンプレート生成モジュール１２２は、待ち状態に移行し、一定時間経過した後、ステップＳ２０２に戻る。
【０１００】
登録要求を受信した場合、テンプレート生成モジュール１２２は、新規テンプレートの設定情報をテンプレート管理情報１３０に登録する（ステップＳ２０３）。具体的には、以下のような処理が実行される。
【０１０１】
（処理１０）テンプレート生成モジュール１２２は、テンプレートの識別情報を決定する。テンプレート生成モジュール１２２は、テンプレート管理情報１３０にエントリを追加し、追加されたエントリのテンプレートＩＤ２０１に決定されたテンプレートの識別情報を設定し、また、種別２０２に種別設定欄１００２に設定された値を設定する。
【０１０２】
（処理１１）テンプレート生成モジュール１２２は、追加されたエントリに、主記憶装置１１１に格納されるオブジェクト設定欄１００３のエントリの数と同数の行を生成する。
【０１０３】
（処理１２）テンプレート生成モジュール１２２は、オブジェクト設定欄１００３からエントリを一つ選択する。テンプレート生成モジュール１２２は、追加されたエントリの一つの行のオブジェクトＩＤ２０３、識別対象２０４、及び位置２０５に、選択されたエントリのオブジェクトＩＤ１０１１、識別対象１０１２、及び位置１０１３の値を設定する。選択されたエントリのフラグ１０１４が「ＯＮ」である場合、テンプレート生成モジュール１２２は、変動領域の識別情報を決定し、当該行の変動領域ＩＤ２０６に決定された変動領域の識別情報を設定する。さらに、テンプレート生成モジュール１２２は、位置履歴管理情報１３５にエントリを追加し、追加されたエントリのテンプレートＩＤ６０１に（処理１０）で決定されたテンプレートの識別情報を設定し、オブジェクトＩＤ６０２及び位置履歴６０３に選択されたエントリのオブジェクトＩＤ１０１１の値及びファイルＩＤ１０１５に対応するファイルのデータを設定する。
【０１０４】
テンプレート生成モジュール１２２は、オブジェクト設定欄１００３に登録された全てのエントリに対して（処理１２）を繰り返し実行する。以上がステップＳ２０３の処理の説明である。
【０１０５】
次に、テンプレート生成モジュール１２２は、新規テンプレートに変動オブジェクトが含まれるか否かを判定する（ステップＳ２０４）。
【０１０６】
新規テンプレートに変動オブジェクトが含まれないと判定された場合、テンプレート生成モジュール１２２は、テンプレートの生成処理を終了する。
【０１０７】
新規テンプレートに変動オブジェクトが含まれると判定された場合、テンプレート生成モジュール１２２は、判定範囲設定処理を実行し（ステップＳ２０５）、その後、テンプレートの生成処理を終了する。判定範囲設定処理の詳細は図１１を用いて説明する。
【０１０８】
図１１は、実施例１の業務計算機１００が実行する判定範囲設定処理を説明するフローチャートである。図１２は、実施例１の業務計算機１００によって表示される画面の一例を示す図である。
【０１０９】
まず、判定範囲設定処理における設定画面１０００の表示について説明する。判定範囲設定処理の実行時には、設定画面１０００の左側が一部変更される。具体的には、グラフ表示欄１２０１、判定範囲設定欄１２０２、設定ボタン１２０３、及び登録ボタン１２０４が表示される。
【０１１０】
グラフ表示欄１２０１は、変動領域におけるスコアの分布を示すグラフを表示する欄である。なお、グラフの縦軸はオブジェクトの重心の数を表し、グラフの横軸はスコアを表す。
【０１１１】
判定範囲設定欄１２０２は、判定範囲及び検定ルールを設定するための欄である。判定範囲設定欄１２０２は、判定範囲１２１１及び検定ルール１２１２から構成されるエントリを含む。一つのエントリが一つの判定範囲に対応する。判定範囲１２１１は、判定範囲を指定するスコアの範囲を格納するフィールドである。検定ルール１２１２は、妥当性を確認するための検定ルールを格納するフィールドである。
【０１１２】
設定ボタン１２０３は、判定範囲設定欄１２０２にエントリを追加するための操作ボタンである。登録ボタン１２０４は、判定範囲の設定情報を登録するための操作ボタンである。
【０１１３】
次に、判定範囲設定処理について説明する。まず、テンプレート生成モジュール１２２は、位置履歴管理情報１３５から位置履歴を取得する（ステップＳ３０１）。
【０１１４】
具体的には、テンプレート生成モジュール１２２は、テンプレートＩＤ６０１及びオブジェクトＩＤ６０２の値の組合せが、テンプレートの識別情報及び変動オブジェクトの識別情報の組合せに一致するエントリを検索し、検索されたエントリの位置履歴６０３から位置履歴を取得する。
【０１１５】
次に、テンプレート生成モジュール１２２は、クラスタリングを行って、オブジェクトの重心が分布する領域を特定する（ステップＳ３０２）。
【０１１６】
次に、テンプレート生成モジュール１２２は、特定された領域を包含する変動領域を設定する（ステップＳ３０３）。本実施例では、特定された領域を包含する矩形領域が変動領域として設定される。
【０１１７】
次に、テンプレート生成モジュール１２２は、変動領域にメッシュを設定し、各メッシュにスコアを設定する（ステップＳ３０４）。スコアの設定方法としては、数値標高モデル（Ｄｉｇｉｔａｌ  Ｅｌｅｖａｔｉｏｎ  Ｍｏｄｅｌ）データの生成方法と同様の方法を用いる。具体的には以下のような方法が考えられる。
【０１１８】
テンプレート生成モジュール１２２は、変動領域を所定のサイズのブロックに分割する。ブロックのサイズは、メッシュのサイズ以下に設定されているものとする。
【０１１９】
テンプレート生成モジュール１２２は、各ブロックに含まれるオブジェクトの重心の数をカウントする。ブロック内のオブジェクトの重心のカウント方法としては、ブロック内を所定の大きさの探索領域で走査する方法が考えられる。
【０１２０】
テンプレート生成モジュール１２２は、オブジェクトの重心の数が最も多いブロックを基準にスコアを設定する。本明細書では、オブジェクトの重心の数が最も多いブロックを基準ブロックと記載する。
【０１２１】
例えば、テンプレート生成モジュール１２２は、基準ブロックにスコアの最大値を設定する。スコアの最大値は予め設定されているものとする。さらに、テンプレート生成モジュール１２２は、基準ブロックに含まれるオブジェクトの重心の数、基準ブロック以外のブロックに含まれるオブジェクトの重心の数、及びブロック間の距離に基づいて、各ブロックに設定するスコアを算出する。テンプレート生成モジュール１２２は、ブロックのスコアを、当該ブロックに含まれるオブジェクトの重心のスコアとして設定する。
【０１２２】
テンプレート生成モジュール１２２は、メッシュに含まれるオブジェクトの重心のスコアに基づいて、メッシュに設定するスコアを算出する。メッシュに複数のオブジェクトの重心が含まれる場合、メッシュの重心に最も近いオブジェクトの重心に設定されたスコアがメッシュのスコアとして設定される。
【０１２３】
テンプレート生成モジュール１２２は、変動領域管理情報１３３にエントリを追加し、追加されたエントリの変動領域ＩＤ３０１に、ステップＳ２０３で決定された変動領域の識別情報を設定する。また、テンプレート生成モジュール１２２は、追加されたエントリの変動領域位置３０２に、ステップＳ３０３において設定された変動領域の対角線の座標を設定する。さらに、テンプレート生成モジュール１２２は、追加されたエントリの変動領域スコアデータ３０３に、前述の処理結果を設定する。以上がステップＳ３０４の処理の説明である。
【０１２４】
次に、テンプレート生成モジュール１２２は、スコアの分布を提示する（ステップＳ３０５）。
【０１２５】
具体的には、テンプレート生成モジュール１２２は、グラフ表示欄１２０１に、スコアの分布を示すグラフを表示する。この時点では、判定範囲設定欄１２０２にはエントリは存在しない。
【０１２６】
ユーザは、設定ボタン１２０３を操作し、判定範囲設定欄１２０２にエントリを追加する。ユーザは、グラフを参照して、追加されたエントリの判定範囲１２１１に値を設定する。また、ユーザは、追加されたエントリの検定ルール１２１２に検定ルールを設定する。ユーザは、必要な数だけ判定範囲を設定した後、登録ボタン１２０４を操作する。
【０１２７】
次に、テンプレート生成モジュール１２２は、判定範囲の登録要求を受け付けた場合、検定ルール管理情報１３４を更新する（ステップＳ３０６）。その後、テンプレート生成モジュール１２２は、判定範囲設定処理を終了する。
【０１２８】
具体的には、テンプレート生成モジュール１２２は、検定ルール管理情報１３４にエントリを追加し、追加されたエントリの変動領域ＩＤ４０１に、ステップＳ２０３で決定された変動領域の識別情報を設定する。テンプレート生成モジュール１２２は、追加されたエントリに、判定範囲設定欄１２０２のエントリの数と同数の行を生成する。テンプレート生成モジュール１２２は、各行の判定範囲４０２に各エントリの判定範囲１２１１の値を設定し、また、各行の検定ルール４０３に各エントリの検定ルール１２１２の値を設定する。
【０１２９】
なお、テンプレート生成モジュール１２２は、変動領域管理情報１３３及び検定ルール管理情報１３４に基づいて、図１２に示すように、文書データ操作欄１００１に変動領域及び判定範囲を表示してもよい。
【０１３０】
ここで、テンプレート生成モジュール１２２が既存テンプレートの更新指示を受け付けた場合の処理について説明する。
【０１３１】
テンプレート生成モジュール１２２は、既存テンプレートの更新指示を受け付けた場合、既存テンプレートに変動オブジェクトが含まれるか否かを判定する。
【０１３２】
既存テンプレートに変動オブジェクトが含まれないと判定された場合、テンプレート生成モジュール１２２は、既存テンプレートを更新せずに処理を終了する。
【０１３３】
既存テンプレートに変動オブジェクトが含まれると判定された場合、テンプレート生成モジュール１２２は、図１１を用いて説明した判定範囲設定処理を実行する。
【０１３４】
この場合、ステップＳ３０１からステップＳ３０４までの処理によって、新たな変動領域が設定され、また、スコアが設定される。テンプレート生成モジュール１２２は、変動領域管理情報１３３の既存のエントリの変動領域位置３０２及び変動領域スコアデータ３０３を更新する。また、ステップＳ３０５からステップＳ３０６の処理によって、新たな判定範囲及び新たな検定ルールを設定される。テンプレート生成モジュール１２２は、検定ルール管理情報１３４の既存のエントリを初期化し、新たな判定範囲の数だけ行を生成し、各行の判定範囲４０２及び検定ルール４０３に値を設定する。
【０１３５】
以上で説明したように、業務計算機１００は、認識領域から得られたオブジェクトを用いた検定処理において変動オブジェクトが妥当でないと判定された場合、変動領域管理情報１３３及び検定ルール管理情報１３４に基づいて、位置のズレを考慮した検定処理を実行する。したがって、オブジェクトの位置が認識領域からずれた文書データが入力された場合でも検定結果が成功となる。したがって、業務効率が向上する。
【０１３６】
また、オブジェクトの位置が認識領域からずれた文書データが入力された場合、変動領域、判定範囲、及び検定ルールが変更される。一方、認識領域は変更されない。したがって、従来のような認識領域の拡大が発生しない。そのため、誤ったオブジェクトが認識される確率を低減できる。これによって、検定処理が正しく行われるため、業務効率が向上する。
【実施例２】
【０１３７】
実施例２では、判定範囲の設定方法が異なる。以下、実施例１との差異を中心に実施例２を説明する。
【０１３８】
実施例２の計算機システムは実施例１と同一である。実施例２の業務計算機１００及び端末１０１の装置構成は実施例１と同一である。実施例２の業務計算機１００が保持するデータの構造は実施例１と同一である。実施例２の業務計算機１００が文書データに対して実行する処理は実施例１と同一である。
【０１３９】
実施例２では判定範囲設定処理が異なる。図１３は、実施例２の業務計算機１００が実行する判定範囲設定処理を説明するフローチャートである。図１４は、実施例２の業務計算機１００によって表示される画面の一例を示す図である。
【０１４０】
まず、判定範囲設定処理における設定画面１０００の表示について説明する。判定範囲設定処理の実行時には、設定画面１０００の左側が一部変更される。具体的には、範囲数設定欄１４０１、倍率１４０２、判定範囲設定欄１２０２、設定ボタン１２０３、及び登録ボタン１２０４が表示される。
【０１４１】
範囲数設定欄１４０１は、判定範囲の数を設定するための欄である。倍率１４０２は、基準の判定範囲に基づいて他の判定範囲を算出する場合に使用する値である。
【０１４２】
実施例２では、ユーザは、範囲数設定欄１４０１及び倍率１４０２に値を設定し、また、文書データ操作欄１００１に基準の判定範囲を設定し、設定ボタン１２０３を操作する。
【０１４３】
次に、判定範囲設定処理について説明する。まず、テンプレート生成モジュール１２２は、基準の判定範囲の設定を受け付ける（ステップＳ４０１）。
【０１４４】
テンプレート生成モジュール１２２は、主記憶装置１１１に、基準の判定範囲の重心の座標及び形状、並びに、範囲数設定欄１４０１及び倍率１４０２の値を格納する。
【０１４５】
次にテンプレート生成モジュール１２２は、変数ｋ及び変数ｎを初期化する（ステップＳ４０２）。ここで、変数ｋは倍率を表す変数であり、変数ｎは判定範囲の数を表す変数である。
【０１４６】
具体的には、テンプレート生成モジュール１２２は、変数ｋに「１」に倍率１４０２の値を加算した値を設定し、変数ｎに「１」を設定する。
【０１４７】
次に、テンプレート生成モジュール１２２は、ループ処理を開始する（ステップＳ４０３）。テンプレート生成モジュール１２２は、基準の判定範囲及び倍率に基づいて新たな判定範囲を生成し（ステップＳ４０４）、その後、変数ｋ及び変数ｎを更新する（ステップＳ４０５）。
【０１４８】
具体的には、テンプレート生成モジュール１２２は、基準の判定範囲の大きさをｋ倍することによって新たな判定範囲を生成する。また、テンプレート生成モジュール１２２は、変数ｋに倍率１４０２の値を加算し、変数ｎに「１」を加算する。本実施例では、基準の判定範囲に基づいて算出される判定範囲は、基準の判定範囲と相似関係にある。
【０１４９】
次に、テンプレート生成モジュール１２２は、変数ｎの値が範囲数設定欄１４０１の値と同一であるか否かを判定する（ステップＳ４０６）。
【０１５０】
変数ｎの値が範囲数設定欄１４０１の値と同一でないと判定された場合、テンプレート生成モジュール１２２は、ステップＳ４０３に戻り、同様の処理を実行する。
【０１５１】
変数ｎの値が範囲数設定欄１４０１の値と同一であると判定された場合、テンプレート生成モジュール１２２は、変動領域を設定する（ステップＳ４０７）。
【０１５２】
具体的には、テンプレート生成モジュール１２２は、全ての判定範囲を包含する矩形領域を変動領域として設定する。
【０１５３】
次に、テンプレート生成モジュール１２２は、変動領域にメッシュを設定し、各メッシュにスコアを設定する（ステップＳ４０８）。具体的には、以下のような処理が実行される。
【０１５４】
テンプレート生成モジュール１２２は、０からＳ＿ｍａｘまでの範囲を、判定範囲の数で除算する。Ｓ＿ｍａｘはスコアの最大値を表す。テンプレート生成モジュール１２２は、判定範囲の大きさが小さい順に、スコアが大きくなるようにスコアの範囲を割り当てる。
【０１５５】
テンプレート生成モジュール１２２は、変動領域管理情報１３３にエントリを追加し、追加されたエントリの変動領域ＩＤ３０１に、ステップＳ２０３で決定された変動領域の識別情報を設定する。また、テンプレート生成モジュール１２２は、追加されたエントリの変動領域位置３０２に、ステップＳ４０７において設定された変動領域の対角線の座標を設定する。さらに、テンプレート生成モジュール１２２は、追加されたエントリの変動領域スコアデータ３０３に、前述の処理結果を設定する。以上がステップＳ４０８の処理の説明である。
【０１５６】
実施例２では自動的にスコアの範囲が決定される。したがって、判定範囲設定欄１２０２には自動的にエントリが登録される。ユーザは、各エントリの検定ルール１２１２を設定し、登録ボタン１２０４を操作する。
【０１５７】
次に、テンプレート生成モジュール１２２は、判定範囲の登録要求を受け付けた場合、検定ルール管理情報１３４を更新する（ステップＳ４０９）。その後、テンプレート生成モジュール１２２は、判定範囲設定処理を終了する。ステップＳ４０９の処理はステップＳ３０６の処理と同一である。
【０１５８】
実施例２によれば、オブジェクトの重心に関する位置履歴が存在しない場合でも、ユーザに負担を与えることなく変動領域及び判定範囲を設定することができる。
【０１５９】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【０１６０】
また、上記の各構成及び処理手段等は、少なくとも一部をハードウェアを用いて実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【０１６１】
また、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納してもよい。
【符号の説明】
【０１６２】
１００  業務計算機
１０１  端末
１０５  ネットワーク
１１０、１５０  プロセッサ
１１１、１５１  主記憶装置
１１２  副記憶装置
１１３、１５２  ネットワークインタフェース
１１４  スキャン装置
１２０  識別モジュール
１２１  業務処理モジュール
１２２  テンプレート生成モジュール
１３０  テンプレート管理情報
１３１  辞書管理情報
１３２  業務管理情報
１３３  変動領域管理情報
１３４  検定ルール管理情報
１３５  位置履歴管理情報
１５３  入力装置
１５４  出力装置
５００  テンプレート
【図１】
2019139564.tif 000003
【図２】
2019139564.tif 000004
【図３】
2019139564.tif 000005
【図４】
2019139564.tif 000006
【図５】
2019139564.tif 000007
【図６】
2019139564.tif 000008
【図７Ａ】
2019139564.tif 000009
【図７Ｂ】
2019139564.tif 000010
【図８】
2019139564.tif 000011
【図９】
2019139564.tif 000012
【図１０】
2019139564.tif 000013
【図１１】
2019139564.tif 000014
【図１２】
2019139564.tif 000015
【図１３】
2019139564.tif 000016
【図１４】
2019139564.tif 000017