(57)【要約】【課題】本発明は、ユーザが記入した紙文書の画像からユーザが記入した箇所を認識し、当該認識した認識結果を表示する際に、マークを認識した箇所に表示するオブジェクトを、認識した画像と重ね合わせて表示することで、マークが記入された紙文書の認識結果の確認作業を軽減することができ、またオペレータの訂正作業を容易にする画像処理装置を提供する。【解決手段】クライアントコンピュータ２００では、入力された原紙画像上の認識処理（ＯＭＲ処理（マーク認識処理）やＯＣＲ処理（文字認識処理））の対象となるゾーン（領域）のフォーム定義情報の設定を受け付ける。そして、設定されたフォーム定義情報に基づいて、認識対象となる画像上の領域に対して認識処理を行い、マーク認識処理された領域に対する認識結果を示すオブジェクトを生成する。そして、生成されたオブジェクトを領域に重ね合わせて表示する。【選択図】図１７
2010128904.tif 000002
【特許請求の範囲】
【請求項１】
ユーザにより記入された紙文書を読み取った画像に対して、記入箇所を認識する画像処理装置であって、
前記記入箇所のうち、記入されたマークを認識する領域を予め設定する設定手段と、
前記設定手段により設定された領域に基づいて、認識対象となる画像上の領域に対してマークの認識を行うマーク認識手段と、
前記マーク認識手段によりマークの認識がされた領域に対する認識結果を示すオブジェクトを生成する生成手段と、
前記生成手段により生成されたオブジェクトを、前記マーク認識手段でマークの認識がされた領域に対応する位置に重ね合わせて表示する第１の表示手段とを備えることを特徴とする画像処理装置。
【請求項２】
前記生成手段は、前記領域の画像を透過するオブジェクトを生成することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記認識手段により得られた認識結果の整合性を判定する整合性判定手段をさらに備え、
前記第１の表示手段は、前記整合性判定手段による判定結果に応じて、前記生成手段により生成されたオブジェクトの表示形式を変更することを特徴とする請求項１又は２記載の画像処理装置。
【請求項４】
前記マーク認識手段により得られた認識結果を訂正する訂正手段と、
前記訂正手段による訂正結果に応じて、前記オブジェクトの表示位置を切り替える表示切替手段とをさらに備えることを特徴とする請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記表示手段は、前記表示切替手段による切り替えに応じて、訂正前のオブジェクトを削除し、前記生成手段により新たに生成されたオブジェクトを訂正された領域に対応する位置に重ね合わせて表示することを特徴とする請求項４記載の画像処理装置。
【請求項６】
前記設定手段は、記入された文字を認識する領域を予め設定し、
前記設定手段により文字を認識する領域が設定されている場合には、当該領域に対して文字の認識を行う文字認識手段をさらに備えることを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記文字認識手段で文字認識された認識結果を、文字を認識する領域に対応する位置の近接する位置に表示する第２の表示手段をさらに備えることを特徴とする請求項６記載の画像処理装置。
【請求項８】
前記画像処理装置は、前記紙文書を読み取る画像読取装置と別筐体で構成されることを特徴とする請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
ユーザにより記入された紙文書を読み取った画像に対して、記入箇所を認識する画像処理装置の画像処理方法であって、
前記記入箇所のうち、記入されたマークを認識する領域を予め設定するための設定工程と、
前記設定工程にて設定された領域に基づいて、認識対象となる画像上の領域に対してマークの認識を行うマーク認識工程と、
前記マーク認識工程にてマークの認識がされた領域に対する認識結果を示すオブジェクトを生成する生成工程と、
前記生成工程にて生成されたオブジェクトを、前記マーク認識工程でマークの認識がされた領域に対応する位置に重ね合わせて表示する表示工程とを備えることを特徴とする画像処理方法。
【請求項１０】
ユーザにより記入された紙文書を読み取った画像に対して、記入箇所を認識する画像処理装置の画像処理方法を当該画像処理装置に実行させるためのプログラムであって、
前記記入箇所のうち、記入されたマークを認識する領域を予め設定するための設定ステップと、
前記設定ステップにて設定された領域に基づいて、認識対象となる画像上の領域に対してマークの認識を行うマーク認識ステップと、
前記マーク認識ステップにてマークの認識がされた領域に対する認識結果を示すオブジェクトを生成する生成ステップと、
前記生成ステップにて生成されたオブジェクトを、前記マーク認識ステップでマークの認識がされた領域に対応する位置に重ね合わせて表示する表示ステップとを備えることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び方法、並びにプログラムに関し、特に、入力された画像に対する文字認識機能と、認識結果の訂正機能とを備える画像処理装置及び方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、申込書やアンケート用紙などをスキャンして得られた画像に文字認識処理を行い、その認識結果をデータベースなどに保存して業務に利用する仕組みが知られている。
【０００３】
ところが、手書きされたアンケート用紙等から得られた画像に文字認識処理を行うと、正しい文字認識結果が得られない場合が多い。そのため、一般的に、文字認識結果が正しいかどうかをオペレータが確認して訂正（修正）する作業を行っている。
【０００４】
例えば、オペレータによる文字認識結果の訂正作業を容易かつ迅速に行うために、入力画像中から抽出された文字列画像と当該画像に対応する文字認識結果を表示した画像とを文字を単位に対応付けて隣接配置した訂正用画面を生成し、文字認識処理した画像の近くに文字認識した結果を表示させる技術が提案されている（特許文献１参照）。
【特許文献１】特開２００２−２３０４８０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、マーク（シート）方式と記述方式の両方を用いた健康診断の問診票などは、受診する人が手書きで文字を記入する箇所やマークする箇所が複数存在するので、上記特許文献１のような技術を用いた場合、例えば、「チェックあり」、「チェックなし」或いはチェック有無フラグ「０」、「１」で認識結果が表示されることになり、オペレータの確認作業や訂正作業の負担を軽減できないおそれがある。
【０００６】
また、健康診断の問診票などでは、現在の生活形態をあてはまる項目だけ複数マークする、或いは複数の問いに答えるなど、多くのマークする箇所を目視確認する必要があるので、その確認作業に時間がかかり、結果として業務効率が低下するおそれがある。さらに、作業時間の増加から訂正漏れ等の人的ミスが増える場合もある。
【０００７】
そこで、本発明は、ユーザが記入した紙文書の画像からユーザが記入した箇所を認識し、当該認識した認識結果を表示する際に、マークを認識した箇所に表示するオブジェクトを、認識した画像と重ね合わせて表示することで、マークが記入された紙文書の認識結果の確認作業を軽減することができ、またオペレータの訂正作業を容易にする画像処理装置及び方法、並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１記載の画像処理装置は、ユーザにより記入された紙文書を読み取った画像に対して、記入箇所を認識する画像処理装置であって、前記記入箇所のうち、記入されたマークを認識する領域を予め設定する設定手段と、前記設定手段により設定された領域に基づいて、認識対象となる画像上の領域に対してマークの認識を行うマーク認識手段と、前記マーク認識手段によりマークの認識がされた領域に対する認識結果を示すオブジェクトを生成する生成手段と、前記生成手段により生成されたオブジェクトを、前記マーク認識手段でマークの認識がされた領域に対応する位置に重ね合わせて表示する第１の表示手段とを備えることを特徴とする。
【０００９】
上記目的を達成するために、請求項９記載の画像処理方法は、ユーザにより記入された紙文書を読み取った画像に対して、記入箇所を認識する画像処理装置の画像処理方法であって、前記記入箇所のうち、記入されたマークを認識する領域を予め設定するための設定工程と、前記設定工程にて設定された領域に基づいて、認識対象となる画像上の領域に対してマークの認識を行うマーク認識工程と、前記マーク認識工程にてマークの認識がされた領域に対する認識結果を示すオブジェクトを生成する生成工程と、前記生成工程にて生成されたオブジェクトを、前記マーク認識工程でマークの認識がされた領域に対応する位置に重ね合わせて表示する表示工程とを備えることを特徴とする。
【００１０】
上記目的を達成するために、請求項１０記載のプログラムは、ユーザにより記入された紙文書を読み取った画像に対して、記入箇所を認識する画像処理装置の画像処理方法を当該画像処理装置に実行させるためのプログラムであって、前記記入箇所のうち、記入されたマークを認識する領域を予め設定するための設定ステップと、前記設定ステップにて設定された領域に基づいて、認識対象となる画像上の領域に対してマークの認識を行うマーク認識ステップと、前記マーク認識ステップにてマークの認識がされた領域に対する認識結果を示すオブジェクトを生成する生成ステップと、前記生成ステップにて生成されたオブジェクトを、前記マーク認識ステップでマークの認識がされた領域に対応する位置に重ね合わせて表示する表示ステップとを備えることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ユーザが記入した紙文書の画像からユーザが記入した箇所を認識し、当該認識した認識結果を表示する際に、マークを認識した箇所に表示するオブジェクトを、認識した画像と重ね合わせて表示することで、マークが記入された紙文書の認識結果の確認作業を軽減することができ、またオペレータの訂正作業を容易にすることができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１３】
図１は、本発明の実施形態に係る画像処理装置を含む画像処理システムの概略構成を示す図である。
【００１４】
図１において、画像処理システムは、管理サーバ１００と、複数のスキャナ３００と、複数のクライアントコンピュータ２００とで構成され、これらがＬＡＮ等の通信網５００を介して通信可能に接続されている。管理サーバ１００は、スキャナ３００で読み取られた文書や帳票の画像データを受信してデータベース（ＤＢ）１０１に格納し、該画像データを一括して管理している。クライアントコンピュータ２００は、ユーザが利用する情報処理装置である。管理サーバ１００及びクライアントコンピュータ２００上では、不図示のＯＳやアプリケーションが稼動している。なお、ＤＢ１０１は、クライアントコンピュータ２００に実装する構成であってもよい。
【００１５】
画像読取装置であるスキャナ３００は、直接またはクライアントコンピュータ２００を介して通信網５００に接続され、クライアントコンピュータ２００や管理サーバ１００との通信が可能である。スキャナ３００は、例えば、バーコードや一意の番号が付与された文書や帳票を連続して読み取って、得られた画像データをクライアントコンピュータ２００や管理サーバ１００に送信することができる。
【００１６】
図示例の画像処理システムでは、例えば、クライアントコンピュータ２００上でオペレータによる画像読取要求を受け付けると、スキャナ３００が帳票等をスキャンし、得られた画像データをクライアントコンピュータ２００に送信するように構成されている。クライアントコンピュータ２００は、オペレータの要求により、受信した画像データを管理サーバ１００に送信するように構成され、管理サーバ１００が受信した画像データをＤＢ１０１に格納するように構成されている。なお、クライアントコンピュータ２００上でオペレータによる画像読取要求を受け付けた際に、スキャナ３００が読み取った画像データを管理サーバ１００に送信するように構成されていてもよい。また、スキャナ３００については、これに限定されず、画像読取機能があれば複写機や複合機であってもよい。
【００１７】
図２は、図１におけるクライアントコンピュータ２００を構成するハードウェアの概略を示すブロック図である。なお、クライアントコンピュータ２００は、管理サーバ１００と略同一の構成を有することから、代表してクライアントコンピュータ２００について説明する。
【００１８】
クライアントコンピュータ２００は、ＣＰＵ２０１と、ＲＡＭ２０２と、ＲＯＭ２０３と、ＬＡＮアダプタ２０４と、ビデオアダプタ２０５と、キーボード２０６と、マウス２０７と、ハードディスク（ＨＤＤ）２０８と、記憶媒体ドライブ２０９とを備え、これらがシステムバス２１０を介して互いに接続されている。
【００１９】
ＣＰＵ２０１は、ＲＯＭ２０３又はＨＤＤ２０８、記憶媒体ドライブ２０９（内のＣＤ−ＲＯＭ等）に記憶されたプログラムをＲＡＭ２０２に順次読み出して後述する各種制御処理を実行する。ＲＡＭ２０２は、オペレーティングシステム（ＯＳ）の一部やアプリケーションプログラムがロードされると共に、ＣＰＵ２０１の制御の下でアプリケーションプログラムを実行する際に使用される配列や変数を含む各種データ等を一時保存するためのメモリである。ＲＯＭ２０３には、各ハードウェアの制御プログラム（いわゆるＢＩＯＳ）等が記憶されている。なお、ＲＯＭ２０３は、ＯＳの一部を記憶することもできる。
【００２０】
ＬＡＮアダプタ（ネットワークインタフェースカード）２０４は、通信網５００等のネットワークに接続するための通信インタフェースである。クライアントコンピュータ２００は、画像入力手段としてのＬＡＮアダプタ２０４を介してスキャナ３００等から画像を入力する。ビデオアダプタ２０５は、いわゆるビデオグラフィックアダプタ（ＶＧＡ）であり、不図示の液晶ディスプレイ等の各種ディスプレイが接続される。
【００２１】
ＨＤＤ２０８は、ＯＳや画面情報（ｉｔｍｌやＣＧＩ等で記述された、ディスプレイに画面を表示させるための情報）を含む各種アプリケーションプログラムを記憶する。また、ＨＤＤ２０８には、画像データ及び該画像データを管理する管理情報と、画像データの送受信（転送含む）プログラム等が記憶されている。さらに、後述するフローチャートのステップを実現するアプリケーションプログラムが記憶されている。記憶媒体ドライブ２０９は、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ等の記憶媒体からデータやプログラムを読み出し可能な駆動装置である。なお、管理サーバ１００の場合は、ＤＢ１０１がＨＤＤ２０８内に設定されていても、外部の記憶装置（不図示）内に設定されていてもよい。
【００２２】
図３は、図１におけるスキャナ３００を構成するハードウェアの概略を示すブロック図である。
【００２３】
スキャナ３００は、ＣＰＵ３０１と、ＲＡＭ３０２と、ＲＯＭ３０３と、ＬＡＮアダプタ３０４と、液晶パネル＆Ｉ／Ｆ３０５と、通信回線Ｉ／Ｆ３０６と、スキャンエンジン３０７と、ハードディスク（ＨＤＤ）３０８とを備え、これらがシステムバス３１０を介して互いに接続されている。
【００２４】
ＣＰＵ２０１は、ＲＯＭ３０３又はＨＤＤ３０８に記憶されたプログラムをＲＡＭ３０２に順次読み出して各種制御処理を実行する。ＲＡＭ３０２は、ＣＰＵ３０１が使用する各種データ等を一時保存するためのメモリである。ＲＯＭ３０３には、各種制御プログラムが記憶されている。
【００２５】
ＬＡＮアダプタ３０４は、通信網５００等のネットワークを介してクライアントコンピュータ２００や管理サーバ１００に接続するための通信インタフェースである。液晶パネル＆Ｉ／Ｆ３０５は、タッチパネルを含み、表示機能及びデータ入力機能を有している。通信Ｉ／Ｆ３０６は、ＵＳＢなどのインタフェースを司り、クライアントコンピュータ２００との接続を行うことができる。
【００２６】
スキャンエンジン３０７は、文書や帳票の画像を光学的に読み取って画像データに変換する。ＨＤＤ３０８には、システムプログラム等の他に、クライアントコンピュータ２００や管理サーバ１００へ通信Ｉ／Ｆ３０６やＬＡＮアダプタ３０４を介して画像データを転送する転送プログラムが記憶されている。
【００２７】
図４は、クライアントコンピュータ２００にて実行される帳票認識処理の全体の流れを示すフローチャートである。
【００２８】
本実施形態における帳票認識処理は、フォーム情報登録処理（ステップＳ４００）と、スキャンニング処理（ステップＳ４０１〜Ｓ４０５）とに分けられる。認識処理の対象となる帳票には、マークシート方式（マーク認識処理）と記述方式（文字認識処理）の両方を用いた健康診断の問診票や解答用紙などを含むものとする。
【００２９】
フォーム情報登録処理では、図１９に示すようなフォーム（帳票）の原紙画像１９００からのタイミングマークの位置情報の取得や、図２０に示すような書き込み済みフォームの画像（認識対象の画像）２０００に対するＯＣＲ処理／ＯＭＲ処理時に必要な情報の生成（定義）が行われる。なお、ＯＭＲは予め決められた位置（記入箇所）をユーザが塗りつぶしたものを認識する技術であるが、これに限ることなく、ユーザが手書きでチェック形式のマークを記入箇所に記入したものを認識する技術を用いても構わない。つまり、認識可能な記号（塗りつぶし記号、チェック記号などのマーク）であれば、どのような形態で記入されたものを認識するように構成してもよい。
【００３０】
スキャンニング処理では、まず、認識対象の画像に対してフォーム認識処理が行われ、認識パターン（ＯＣＲパターンともいう）が決定される（ステップＳ４０１）。次に、決定した認識パターンに対応するフォーム情報（定義）に従って認識処理（ＯＭＲ（Optical Mark Reader）処理（マーク認識処理）及びＯＣＲ（Optical Character Reader）処理（文字認識処理））が行われる（ステップＳ４０２）。次に、ステップＳ４０２で得られた認識処理の結果から認識結果表示処理が行われる（ステップＳ４０３）。つづいて、認識結果訂正処理（ステップＳ４０４）及び登録処理（ステップＳ４０５）が順次実施される。これら各処理の詳細については後述する。
【００３１】
図５は、図４のステップＳ４００におけるフォーム情報登録処理の詳細を示すフローチャートである。本処理は、ＨＤＤ２０８や記憶媒体ドライブ２０９から読み出されたプログラムに基づいてＣＰＵ２０１により実行される処理である。なお、スキャナ３００で読み取られたフォームとなる画像（原紙画像）またはフォーム作成アプリケーションで生成されたフォームをイメージ化した画像（原紙画像）が記憶媒体ドライブ２０９（またはＨＤＤ２０８）に画像データとして記憶されているものとする。
【００３２】
図５において、ＣＰＵ２０１は、記憶媒体ドライブ２０９（またはＨＤＤ２０８）からフォームの原紙画像を取得し、不図示の液晶ディスプレイ等に図１４に示すようなフォーム定義画面１１００を表示する（ステップＳ５０１）。
【００３３】
フォーム定義画面１１００には、図１９に示すようなフォームの原紙画像が表示される表示部１１１０と、ゾーンＩＤを入力するためのゾーンＩＤ設定欄１２００と、ゾーン名称を入力するためのゾーン名称設定欄１２０１と、ゾーン読み取り属性設定欄１２０２と、重ね合わせ設定欄１２０３と、リスト表示設定欄１２０４と、リスト内容設定欄１２０５と、キャンセルボタン１１２０と、登録ボタン１１２１と、完了ボタン１１２２とが配置されている。ここでゾーン（領域）とは、フォームの原紙画像において認識処理（ＯＣＲ処理（文字認識処理）／ＯＭＲ処理（マーク認識処理））の対象となる領域を意味し、表示部１１１０に表示された原紙画像上でユーザにより指定される。
【００３４】
ゾーンＩＤ設定欄１２００では、ユーザが原紙画像上に指定したゾーンの識別情報として、任意のＩＤを入力することができる。なお、ゾーンＩＤ設定欄１２００にＩＤが入力されなかった場合には、ＣＰＵ２０１により自動的にゾーンＩＤが付与される。ゾーン名称設定欄１２０１では、ユーザが指定したゾーンに対する任意の名称を入力することができる。ゾーン読み取り属性設定欄１２０２では、ユーザが指定したゾーンに対して実行する処理として「ＯＣＲ」又は「ＯＭＲ」を選択することができる。ここで「ＯＣＲ」が選択されると当該ゾーンがＯＣＲ処理され、「ＯＭＲ」が選択されると当該ゾーンがＯＭＲ処理される。重ね合わせ設定欄１２０３では、ユーザが指定したゾーンとＯＭＲ又はＯＣＲ処理された認識結果とを重ね合わせて表示するか否かを「ＯＮ」又は「ＯＦＦ」で設定することができる。「ＯＮ」が設定された場合には、当該ゾーンの認識結果が、原紙画像のゾーンに対応する位置に重ね合わせて表示される。
【００３５】
リスト表示設定欄１２０４では、リスト表示の「ＯＮ」又は「ＯＦＦ」を設定することができるが、ゾーン読み取り属性設定欄１２０２で「ＯＭＲ」が選択された場合は、自動的にリスト表示が「ＯＮ」となる。リスト表示を「ＯＦＦ」とすることが可能となる場合は、ゾーン読み取り属性設定欄１２０２で「ＯＣＲ」が選択された場合である。なお、リスト表示設定欄１２０４では、リスト表示が「ＯＦＦ」に設定された場合には、リスト内容設定欄１２０５に入力できないように構成される。
【００３６】
リスト内容設定欄１２０５では、例えば、図１６（ａ）に示すように、指定されたゾーン１２０９に対応する項目名１２２１を入力することができる。このリスト内容設定欄１２０５に入力された内容は、例えば、後述する図１７に示す認識結果訂正画面１７００上のリストボックスに表示される。具体的には、図１６（ａ）において、ゾーン１２０９〜１２１１がグループ化されてＡＡＡグループとして設定された場合、リスト内容設定欄１２０５に入力された項目名１２２１〜１２２３（「毎日食べている」、「時々食べている」、「ほとんど食べていない」）がリストボックス１５０５にリスト表示される。認識結果が誤っていた場合、ユーザはリストボックスに表示されたリストから訂正項目を選択することができる。なお、リスト内容設定欄１２０５についてはユーザが任意に入力する構成であるが、文字認識を行った結果を入力できるように構成してもよい。
【００３７】
図５に戻り、ステップＳ５０１では、ＣＰＵ２０１は、ステップＳ５０１で取得したフォームの原紙画像に対するフォームＩＤと、フォーム名称と、フォームイメージ格納情報（原紙画像の保存先パス）をＲＡＭ２０２に一時保存する。フォームＩＤは、自動付与又はユーザにより入力される。フォーム名称は、ユーザにより入力される。ＲＡＭ２０２に一時保存されたフォームＩＤ、フォーム名称、及びフォームイメージ格納情報については、後述するステップＳ５１５で図１２（ａ）に示すフォーム定義テーブルｔｂ０１に保存される。このフォーム定義テーブルｔｂ０１は、ＤＢ１０１に保存（登録）されるテーブル情報である。
【００３８】
次に、ステップＳ５０２では、ＣＰＵ２０１は、原紙画像上のタイミングマークの位置を読み取って、タイミングマークの位置情報（Ｘ軸座標、Ｙ軸座標）としてＲＡＭ２０２に一時保存する。タイミングマークは、ＯＣＲ／ＯＭＲ処理の対象となるゾーンの位置を特定するための基準値として使用され、例えば、図１９に示す原紙画像上のタイミングマーク１９０１を指す。ＲＡＭ２０２に一時保存されたタイミングマーク位置情報については、後述するステップＳ５１５で図１２（ａ）に示すフォーム定義テーブルｔｂ０１に保存される。なお、図示例のように、フォームの原紙上に複数のタイミングマークを設け、これらからゾーンの位置を特定するように構成してもよい。また、Ｘ軸座標を原紙画像の垂直方向とし、Ｙ軸座標を原紙画像の水平方向とする。
【００３９】
ステップＳ５０３では、ＣＰＵ２０１は、フォーム定義画面１１００上の表示部１１１０に表示された原紙画像上でＯＣＲ／ＯＭＲ処理の対象となるゾーンの指定をユーザから受け付ける。ゾーンの指定については、表示部１１１０に表示された原紙画像上でユーザがマウス２０７等を利用して行う。ユーザが画面上でゾーン指定を行うと、例えば、図１６（ａ）に示すように、指定されたゾーン１２０９〜１２２０が点線で表示される。
【００４０】
ＣＰＵ２０１は、指定されたゾーンの位置をタイミングマーク１９０１に基づいて特定し、ゾーン位置情報（Ｘ軸座標、Ｙ軸座標）としてＲＡＭ２０２に一時保存する。ゾーン位置情報については、後述するステップＳ５１５で図１２（ｃ）に示すゾーン定義テーブルｔｂ０３に保存される。ゾーン定義テーブルｔｂ０３は、ＤＢ１０１に保存（登録）されるテーブル情報である。なお、タイミングマーク１９０１からの相対位置でゾーン位置情報の保存を行うことにより、スキャンニング処理時の補正処理が可能となる。
【００４１】
次に、ステップＳ５０４では、ＣＰＵ２０１は、フォーム定義画面１１００上でユーザにより指定されたゾーンに対するゾーン名称設定欄１２０１、ゾーン読み取り属性設定欄１２０２、重ね合わせ設定欄１２０３、リスト表示設定欄１２０４、及びリスト内容設定欄１２０５への入力（または設定）を受け付け、それらゾーン設定情報をＲＡＭ２０２に一時保存する。入力（または設定）された内容は、後述するステップＳ５１５で図１２（ｃ）に示すゾーン定義テーブルｔｂ０３に保存される。
【００４２】
ステップＳ５０５では、ＣＰＵ２０１は、フォーム定義画面１１００上の表示部１１１０に表示された原紙画像上でのゾーンの指定及びゾーン設定情報の設定がすべて終了したか否かを判定する。ここでは、フォーム定義画面１１００上で完了ボタン１１２２が押下された場合、ＣＰＵ２０１は、フォーム情報登録処理が終了したと判定して、本処理を終了する。キャンセルボタン１１２０が押下された場合、ＣＰＵ２０１は、フォーム定義画面１１００を閉じる。登録ボタン１１２１が押下されたときは、ＣＰＵ２０１はゾーン設定が終了したと判定し、不図示の液晶ディスプレイ等に図１５に示すフォーム定義画面１５００を表示して、ステップＳ５０６へ進む。
【００４３】
図１５において、フォーム定義画面１５００には、フォームの原紙画像が表示される表示部１１１０と、グループＩＤ設定欄１４００と、グループ名称設定欄１４０１と、グループ内ゾーン数設定欄１４０２と、最大選択可能数設定欄１４０３と、必須選択数設定欄１４０４と、キャンセルボタン１５２０と、登録ボタン１５２１と、完了ボタン１５２２とが配置されている。
【００４４】
ステップＳ５０６では、ＣＰＵ２０１は、フォーム定義画面１５００上の表示部１１１０に表示された原紙画像上で、ステップＳ５０３で指定された複数のゾーンをグループにまとめるための指定をユーザから受け付ける。これは、例えば、問診票等において複数の回答を有する問いに対応するためである。グループの指定については、表示部１１１０に表示された原紙画像上でユーザがマウス２０７等を利用して複数のゾーンを指定することでグループ指定を行う。例えば、図１６（ｂ）に示すように、設定されたグループ１＿１４０６、２＿１４０７が点線で表示される。
【００４５】
次に、ＣＰＵ２０１は、グループ指定の有無を判定する（ステップＳ５０７）。ここでは、ユーザがフォーム定義画面１５００上で複数のゾーンをグルーピングすることで、グループ指定の有無が判定される。グループ指定がなされていない場合は、ステップＳ５１１へ移行する一方、グループ指定がなされていた場合、ＣＰＵ２０１は、グループ指定有りと判定して、ステップＳ５０８へ進む。
【００４６】
ステップＳ５０８では、ＣＰＵ２０１は、フォーム定義画面１５００上でユーザにより指定されたグループに対するＩＤを入力するためのグループＩＤ設定欄１４００、グループ名称を入力するためのグループ名称設定欄１４０１、グループ内ゾーン数設定欄１４０２、最大選択可能数設定欄１４０３、及び必須選択数設定欄１４０４への入力（または設定）を受け付け、それらグループ設定情報をＲＡＭ２０２に一時保存する。
【００４７】
グループＩＤ設定欄１４００では、ユーザが原紙画像上に指定したグループの識別情報として、任意のＩＤを入力することができる。なお、グループＩＤ設定欄１４００にＩＤが入力されなかった場合には、ＣＰＵ２０１により自動的にグループＩＤが付与される。グループ名称設定欄１４０１では、ユーザが指定したグループに対する任意の名称を入力することができる。
【００４８】
グループ内ゾーン数設定欄１４０２では、１グループ内のゾーン数が表示される。なお、ＣＰＵ２０１がグループ内のゾーン数を検出して、当該グループのグループ内ゾーン数設定欄１４０２にその値を表示するように構成しても、ユーザ自身が入力するように構成してもよい。最大選択可能数設定欄１４０３では、グループ内の最大選択可能項目数（ユーザが選択（マーク）できる個数）を入力することができる。例えば、図１９に示す問診票で「複数回答可、最大３つまで」と設定されていた場合、最大選択可能数設定欄１４０３には「３」と入力される。必須選択数設定欄１４０４では、グループ内で必ず選択（マーク）される項目数が入力される。例えば、複数の回答の中からいずれか１つを選択する問いに対しては、「１」と入力される。最大選択可能数設定欄１４０３及び必須選択数設定欄１４０４における値（最大選択可能数と必須選択数）は、後述するステップＳ５０９の設定情報の整合性チェック（整合性判定）における基準値として使用される。
【００４９】
なお、フォーム定義画面１５００上でグループＩＤ設定欄１４００〜必須選択数設定欄１４０４への入力が行われなかった場合は、図１２（ｂ）に示すグループ定義テーブルｔｂ０２には何の値も保存されない。グループ定義テーブルｔｂ０２に値が保存されない場合は、後述する図７のステップＳ７１２でグループ設定無しと判定される。
【００５０】
次に、ステップＳ５０９では、ＣＰＵ２０１は、ステップＳ５０８で受け付けたグループ設定情報の整合性をチェック（判定）する。具体的には、ＣＰＵ２０１は、最大選択可能数設定欄１４０３に入力された値がグループ内ゾーン数設定欄１４０２に入力された値以下であるか否かを判定し、また、必須選択数設定欄１４０４に入力された値がグループ内ゾーン数設定欄１４０２に入力された値以下で、且つ最大選択可能数設定欄１４０３に入力された値以下であるかのチェックを行う。その結果、整合性がないと判定した場合（ＮＧ）は、エラー内容を表示した後、ステップＳ５０８に戻る一方、整合性がある場合（ＯＫ）は、ステップＳ５１０へ移行する。
【００５１】
ステップＳ５１０では、フォーム定義画面１５００上の表示部１１１０に表示された原紙画像上でのグループの指定及びグループ設定情報の設定がすべて終了したか否かを判定する。ここでは、フォーム定義画面１５００上で登録ボタン１５２１または完了ボタン１５２２が押下された場合、ステップＳ５１１へ移行する。キャンセルボタン１５２０が押下された場合、ＣＰＵ２０１は、フォーム定義画面１１００を閉じる。
【００５２】
ステップＳ５１１では、ＣＰＵ２０１は、フォームの原紙画像とフォーム定義画面１１００，１５００上で入力（または設定）された値及びＲＡＭ２０２に一時保存された値を、フォーム定義情報としてＤＢ１０１に保存（登録）して、本処理を終了する。なお、フォーム定義情報は、図１２（ａ）に示すフォーム定義テーブルｔｂ０１、図１２（ｂ）に示すグループ定義テーブルｔｂ０２、図１２（ｃ）に示すゾーン定義テーブルｔｂ０３、及び図１２（ｄ）に示すリスト定義テーブルｔｂ０４を含むものとする。
【００５３】
次に、認識対象の画像に対するフォーム認識処理について説明する。
【００５４】
図６は、図４のステップＳ４０１におけるフォーム認識処理の詳細を示すフローチャートである。本処理は、ＨＤＤ２０８や記憶媒体ドライブ２０９から読み出されたプログラムに基づいてＣＰＵ２０１により実行される処理である。なお、図２０に示すような、スキャナ３００で読み取られた認識対象の画像が記憶媒体ドライブ２０９（またはＨＤＤ２０８）に画像データとして記憶されているものとする。
【００５５】
まず、ステップＳ６０１では、ＣＰＵ２０１は、認識対象の画像を記憶媒体ドライブ２０９から取得すると共に、ＤＢ１０１からフォームの原紙画像（フォームイメージデータ）を取得する。
【００５６】
次に、ステップＳ６０２、Ｓ６０３では、ＣＰＵ２０１は、取得した認識対象の画像とフォームイメージデータとのマッチング（比較）を行い、認識対象の画像と一致するフォームイメージデータの有無をチェックする。一致するフォームイメージデータが存在しない場合、フォーム認識エラー処理（ステップＳ６０５）を実施した後に、本処理を終了する。
【００５７】
一方、ステップＳ６０３において、認識対象の画像と一致するフォームイメージデータが存在する場合は、ＣＰＵ２０１は、複数の認識パターン（ＯＣＲやＯＭＲの設定を行った文字認識等をする際のテンプレート）の中から一致したフォームイメージデータの認識パターンを決定する（ステップＳ６０４）。認識パターンとは、上述したフォーム情報登録処理でＤＢ１０１に保存（登録）されたフォーム定義情報であって、図１２（ａ）に示すフォーム定義テーブルｔｂ０１〜図１２（ｄ）に示すリスト定義テーブルｔｂ０４の情報である。フォームイメージデータと認識パターンとは１対１で対応するものである。そのため、認識対象の画像と一致するフォームイメージデータが存在すれば、自動的に認識パターンも決定する。
【００５８】
ステップＳ６０３では、認識対象の画像が、予め指定された保存先（例えば、ＨＤＤ２０８内の一時保存領域）に保存される。また、認識対象の画像と一致するフォームイメージの認識パターンがＲＡＭ２０２上に保持される。ＲＡＭ２０２に保持された認識パターンが、後述する認識結果表示処理の際に使用される。
【００５９】
なお、上述したフォーム認識処理については、既存の一般的な技術を使用して実現することが可能である。このフォーム認識処理は、例えば、取得したフォームイメージデータと認識対象の画像からそれぞれ罫線を抽出し、罫線間の位置関係をフォームの特徴とみなし、該フォームイメージデータと認識対象の画像の罫線構造を照合してフォームを識別する。そして、そのフォームに対応して認識パターンを用いて後述の認識処理が行われる。
【００６０】
図７は、図４のステップＳ４０２における認識処理の詳細を示すフローチャートである。本処理は、ＨＤＤ２０８や記憶媒体ドライブ２０９から読み出されたプログラムに基づいてＣＰＵ２０１により実行される処理である。
【００６１】
図７において、ステップＳ７０１では、ＣＰＵ２０１は、上記フォーム認識処理にて決定された認識パターンに基づき、ＯＣＲ／ＯＭＲ対象ゾーンの抽出を行う。このＯＣＲ／ＯＭＲ対象ゾーンの抽出は、認識パターンからゾーン位置情報（ゾーン定義テーブルｔｂ０３のゾーン位置情報（Ｘ軸）１３１２、ゾーン位置情報（Ｙ軸）１３１３にそれぞれ保存された値）とゾーンサイズ（ゾーン定義テーブルｔｂ０３のゾーンサイズ（幅）１３１４、ゾーンサイズ（高さ）１３１５にそれぞれ保存された値）とタイミングマーク位置情報（フォーム定義テーブルｔｂ０１のタイミングマーク位置情報（Ｘ軸）１３０２、タイミングマーク位置情報（Ｙ軸）１３０３にそれぞれ保存された値）を取得し、認識対象の画像から認識対象領域の画像を特定して、画像を取得する。
【００６２】
次に、ＣＰＵ２０１は、ＲＡＭ２０２上に設定されたエラーフラグに「１」をセット（ステップＳ７０２）した後、認識パターンからゾーン読み取り属性（ゾーン定義テーブルｔｂ０３のゾーン読み取り属性１３１１の値）を取得し、ＯＣＲかＯＭＲかを判定する（ステップＳ７０３）。エラーフラグとは、ＯＣＲ処理又はＯＭＲ処理した結果が事前に定義された内容に基づき、妥当か否かを判定するためのフラグであり、エラーフラグが「１」であれば、認識結果を表示する際にエラーと表示させる。ステップＳ７０３の判定の結果、ゾーン読み取り属性がＯＣＲであればステップＳ７０６へ移行し、ＯＭＲであればステップＳ７０４へ移行する。
【００６３】
ステップＳ７０４では、ＣＰＵ２０１は、ステップＳ７０１で抽出したＯＭＲ対象ゾーンに対してＯＭＲ処理を行い、該ゾーン内にマーク（チェックマーク）があるか否かを判定する。マークがあると判定した場合、認識結果としてマーク有のフラグをＲＡＭ２０２に一時保存する一方、マークがないと判定した場合、認識結果としてマーク無のフラグをＲＡＭ２０２に一時保存する。
【００６４】
ステップＳ７０６では、ＣＰＵ２０１は、ステップＳ７０１で抽出したＯＣＲ対象ゾーンに対してＯＣＲ処理を行い、該ゾーン内に存在する文字列をＯＣＲ結果として取得してＲＡＭ２０２に一時保存する。ステップＳ７０８では、ＣＰＵ２０１は、取得した認識結果の妥当性チェックを行う。この妥当性チェックは、数値項目に数値以外の認識結果が含まれていないか、アルファベット項目に、アルファベット以外の認識結果が含まれていないかのチェックを行うものとする。つまり、ゾーン読み取り属性がＯＣＲの場合には、取得する結果の記号属性（例えば、数値、アルファベット、カナ等）についてもＲＡＭ２０２に保存される。なお、この属性については、図５のフォーム情報登録処理におけるゾーン設定の際に定義されるものとする。
【００６５】
ステップＳ７０８の妥当性チェックの結果、ＯＫの場合には、ＣＰＵ２０１は、エラーフラグに「０」をセットすると共に、図１３（ｅ）に示す認識結果テーブルｔｂ０５内の整合性チェック結果１３２２に正常を示す「０」をセットする。
【００６６】
ステップＳ７１０では、ＣＰＵ２０１は、ＯＭＲ処理またはＯＣＲ処理にて得られた認識結果を認識結果テーブルｔｂ０５内の認識結果１３２１に保存する。なお、ＯＭＲ結果については、フラグを用いてマークの有無を保存してもよい。次に、ステップＳ７１１では、ＣＰＵ２０１は、認識パターンに基づき、すべてのＯＣＲ／ＯＭＲ対象ゾーンに対してＯＭＲ／ＯＭＲ処理が完了したか否かを判定する。この判定の結果、すべてのＯＣＲ／ＯＭＲ対象ゾーンに対するＯＭＲ／ＯＣＲ処理が終了したときは、ステップＳ７１７に進む。
【００６７】
ステップＳ７１７では、ＣＰＵ２０１は、読み取り属性がＯＭＲのゾーンの認識結果を認識結果テーブルｔｂ０５から読み込む。つづいて、ステップＳ７１２では、ＣＰＵ２０１は、認識パターン内のグループ設定情報の有無を判定する。ここでは、グループ定義テーブルｔｂ０２に値が保存されているか否かが判定される。この判定の結果、グループ定義テーブルｔｂ０２に値が保存されている場合、グループ内の各ゾーンのＯＭＲ処理結果を取得（ステップＳ７１３）した後、グループ設定情報内の最大選択可能数と必要選択数に基づいて、該ＯＭＲ処理結果の整合性をチェック（判定）する（ステップＳ７１４）。具体的には、ＣＰＵ２０１は、グループ内のゾーンの認識結果１３２１がチェック有となっているゾーン数を算出し、グループ設定情報を元に、ＯＭＲ処理認識結果（チェック有となっているゾーン数）が最大選択可能数以下か、必須選択数以上かのチェックを実施する。その結果、整合性があると判定した場合（ＯＫ）は、エラーフラグに「０」セットする（ステップＳ７１５）。
【００６８】
ステップＳ７１６では、ＣＰＵ２０１は、ＲＡＭ２０２に一時保存された整合性チェック結果を認識結果テーブルｔｂ０５に保存する。グループ設定情報が複数ある場合は、グループ設定情報の数分ステップＳ７１２〜Ｓ７１６を繰り返し実施する。
【００６９】
なお、グループ指定された場合は、グループ定義テーブルｔｂ０２にデータが保存されている。また、ステップＳ７１２でグループ設定情報で有の場合は（ステップＳ７１２でＹＥＳ）、ゾーン読み取り属性が「ＯＭＲ」のときであり、「ＯＣＲ」のときはグループ設定情報は無しとなっている。また、上述したＯＣＲ／ＯＭＲ処理については、既存の一般的な技術を使用して実施できるものとする。
【００７０】
図８ａ及び図８ｂは、図４のステップＳ４０３における認識結果表示処理の詳細を示すフローチャートである。本処理は、ＨＤＤ２０８や記憶媒体ドライブ２０９から読み出されたプログラムに基づいてＣＰＵ２０１により実行される処理である。
【００７１】
まず、ステップＳ８０１では、ＣＰＵ２０１は、図１２（ｃ）に示すゾーン定義テーブルｔｂ０３に保存されたゾーンＩＤ１３０９〜リスト表示有無１３１８の値を先頭（例えばゾーンＩＤの小さい方）から順に参照する。次に、ステップＳ８０２では、ＣＰＵ２０１は、参照したゾーン定義テーブルｔｂ０３のリスト表示有無１３１８の値（ＯＮまたはＯＦＦ）を判定する。この判定の結果、リスト表示有無１３１８の値が「ＯＮ」の場合、ＣＰＵ２０１は、リスト定義テーブルｔｂ０４の内容に従い、リストボックスの設定を行う（ステップＳ８０４）。一方、ステップＳ８０２でリスト表示有無１３１８の値が「ＯＦＦ」の場合、ＣＰＵ２０１は、テキストボックスの設定を行う（ステップＳ８０４）。
【００７２】
以上の処理を、ゾーン定義テーブルｔｂ０３内の先頭列から最終列まで繰り返し行う（ステップＳ８０５）。これにより、例えば、図１４に示す表示部１１１０上の範囲１２０７におけるゾーンのゾーン読み取り属性１３１１にＯＣＲ設定がされていた場合、該ゾーンの認識結果がテキストボックス形式に表示される。一方、表示部１１１０上の範囲１４２０におけるゾーンのゾーン読み取り属性１３１１にＯＭＲ設定がされていた場合、該ゾーンの認識結果がリストボックス形式に表示される。
【００７３】
次に、ステップＳ８０６では、ＣＰＵ２０１は、図１３（ｅ）に示す認識結果テーブルｔｂ０５に保存されたフォームＩＤ１３００〜修正フラグ１３２３の値を先頭（例えばフォームＩＤの小さい方）から順に参照する。次に、ステップＳ８０７では、ＣＰＵ２０１は、認識結果テーブルｔｂ０５の認識結果１３２１が空かどうかを判定する。この判定の結果、認識結果１３２１になにも保存されておらず、空の場合（ステップＳ８０７でＹＥＳ）、認識結果として表示するものがないので、認識結果テーブルｔｂ０５内の次の列（ゾーン）に移動する（ステップＳ８１１）。
【００７４】
一方、ステップＳ８０７において、認識結果１３２１が空でない場合（ステップＳ８０７でＮＯ）、ＲＡＭ２０２に設定されたエラーフラグの値、すなわち認識結果テーブルｔｂ０５の整合性チェック結果１３２２の値を判定する（ステップＳ８０８）。この判定の結果、整合性チェック結果１３２２の値が「０」の場合、該当するリストボックスもしくはテキストボックスに認識結果を表示する（ステップＳ８０９）。ここで表示される認識結果は、認識結果テーブルｔｂ０５の認識結果１３２１から取得される。テキストボックスとは、ゾーン定義テーブルｔｂ０３のリスト表示有無１３１８の値が「ＯＦＦ」の場合に、認識結果テーブルｔｂ０５の認識結果１３２１の値を入れるボックスを意味し、訂正処理画面の表示イメージの対応箇所（ゾーン定義テーブルｔｂ０３のゾーン位置情報及びサイズに応じた場所）に紐付いている。
【００７５】
ステップＳ８０８において、整合性チェック結果１３２２の値が「１」の場合、認識結果エラーを表示する（ステップＳ８１０）。ここで表示される認識結果エラーについては、例えば、予め定められたエラーを示す文字列が表示される。
【００７６】
以上の処理を、認識結果テーブルｔｂ０５内の先頭列から最終列まで繰り返し行う（ステップＳ８１１）。
【００７７】
図８ｂにおいて、ステップＳ８１２では、ＣＰＵ２０１は、ゾーン定義テーブルｔｂ０３の重ね合せ有無１３１６の値を全列検索し、重ね合せ「ＯＮ」の数を判定する。この判定の結果、重ね合せ「ＯＮ」の数が「０」の場合（つまり、重ね合わせ設定なし）、フォーム認識処理で保存した認識対象の画像を表示し（ステップＳ８１３）、本処理を終了する。
【００７８】
ステップＳ８１２において、重ね合せ「ＯＮ」の数が「１以上」の場合、ＣＰＵ２０１は、フォーム定義テーブルｔｂ０１のタイミングマーク位置座標（Ｘ軸）１３０２及びタイミングマーク位置情報（Ｙ軸）１３０３からタイミングマーク位置情報を取得する（ステップＳ８１４）。つづいて、ステップＳ８１５、Ｓ８１６では、予め定義されている認識結果描画オフセット値及び認識結果描画フォント情報を取得する。ここでいう認識結果描画オフセット値とは、認識結果を描画する開始位置を算出するための値である。ゾーン定義テーブルｔｂ０３のゾーン位置情報（Ｘ軸）１３１２及びゾーン位置情報（Ｙ軸）１３１３に指定されたオフセット値を加算した結果を、実際に認識結果を描画する開始位置とする。また、フォント情報とは、認識結果テキストを描画する際に使用する文字フォントである。
【００７９】
次に、ステップＳ８１７では、ＣＰＵ２０１は、ゾーン定義テーブルｔｂ０３に保存されたゾーンＩＤ１３０９〜リスト表示有無１３１８の値を先頭（例えばゾーンＩＤの小さい方）から順に参照する。次に、ステップＳ８１８では、ＣＰＵ２０１は、参照したゾーン定義テーブルｔｂ０３の重ね合せ有無１３１６の値（ＯＮ又はＯＦＦ）を判定する。この判定の結果、重ね合わせ有無１３１６の値が「ＯＦＦ」の場合、ゾーン定義テーブルｔｂ０３内の次の列（ゾーン）に移動し、ステップＳ８１７以降の処理が繰り返される。
【００８０】
一方、ステップＳ８１８において、重ね合わせ有無１３１６の値が「ＯＮ」の場合、ＣＰＵ２０１は、ゾーン定義テーブルｔｂ０３からゾーン位置情報（Ｘ軸、Ｙ軸）１３１２，１３１３、ゾーンサイズ（幅）１３１４、ゾーンサイズ（高さ）１３１５の値を取得する（ステップＳ８１９）。つづいて、ＣＰＵ２０１は、取得したゾーン位置情報（Ｘ軸、Ｙ軸）にステップＳ８１５で取得したオフセット値を加算する（ステップＳ８２０）。このオフセット値は、ゾーン読み取り属性１３１１の値が「ＯＣＲ」の場合にのみ適用される。
【００８１】
次に、ステップＳ８２１では、ＣＰＵ２０１は、ゾーン定義テーブルｔｂ０３のゾーン読み取り属性１３１１の値を判定する。この判定の結果、ゾーン読み取り属性１３１１の値が「ＯＭＲ」の場合、認識結果テーブルｔｂ０５の整合性チェック結果１３２２の値を判定し（ステップＳ８２２）、原本イメージ（認識対象となる画像（ユーザが記入した紙文書の画像））へ認識結果を描画する（ステップＳ８２３又はステップＳ８２４）。原本イメージへの認識結果の描画例として、図１７におけるグループ１４０６，１４０７の拡大図を図１８（ｂ）に示す。
【００８２】
ステップＳ８２２の判定の結果、整合性チェック結果１３２２の値が「０」（ＯＫ）の場合、ＣＰＵ２０１は、ＯＭＲ処理で認識されたゾーンと同じサイズの矩形（オブジェクト）を予めユーザにより設定された正常色で生成し、認識結果として、原本イメージ（認識対象となる画像）上の当該ゾーンに対応する位置に矩形（オブジェクト）を重ね合わせて描画する（ステップＳ８２３）。図１８（ｂ）のゾーン１２０９に描画例を示す。なお、図示例では、正常色として右下がり斜線で記載されている。生成された矩形（オブジェクト）に対して透過設定が行われる。透過設定が行われることによって、矩形を重ねた際に後ろの原本イメージで実際にチェックした内容が確認できるようになる。特に、ＯＭＲ処理時にノイズを拾って誤認識をしてしまったような場合、オペレータが誤認識を容易に把握することが可能となる。
【００８３】
また、ステップＳ８２３では、図１７のグループ１７０３（ＣＣＣグループ）の場合、図１８（ｃ）に示すように、グループ１７０３内のゾーン１５１３，１５１４，１５１５それぞれに正常色の矩形（オブジェクト）を重ね合わせて描画される。
【００８４】
また、ステップＳ８２３では、リスト定義テーブルｔｂ０４のリスト内容１３２０に保存されたリストが、例えば、認識結果訂正画面１７００上のリストボックス１５０５（ＡＡＡグループ）で表示可能となる。なお、グループ化されているゾーンの認識結果をリストに表示させる場合、該ゾーンのリスト内容のすべてをリストボックスに表示させることが可能である。
【００８５】
一方、ステップＳ８２２において、整合性チェック結果１３２２の値が「１」（ＮＧ）の場合、ＣＰＵ２０１は、ＯＭＲ処理で認識されたゾーンと同じサイズの矩形（オブジェクト）を予めユーザにより設定された異常色で生成し、認識結果として、原本イメージ（認識対象となる画像）上の当該ゾーンに矩形（オブジェクト）を重ね合わせて描画する（ステップＳ８２４）。図１８（ｂ）のゾーン１２１４に描画例を示す。なお、図示例では、異常色として左下がり斜線で記載されている。生成された矩形（オブジェクト）に対しては、ステップＳ８２３と同様に、透過設定が行われる。これにより、オペレータが誤認識を容易に把握することが可能となる。
【００８６】
また、ステップＳ８２４において、例えば、図１７のグループ１７０３（ＣＣＣグループ）でゾーンの選択数が最大可能選択数を越えていた場合、選択されたゾーンがすべて異常色で表示される。つまり、異常の場合には、ＣＰＵ２０１は、生成する矩形（オブジェクト）の表示形式を正常の場合と異なるように変更して表示する。正常色と異常色は互いに異なる表示色とし、被視認性のよい色彩が好ましい。
【００８７】
また、ステップＳ８２４では、リスト定義テーブルｔｂ０４のリスト内容１３２０に保存されたリストが、例えば、認識結果訂正画面１７００上のリストボックス１５０６（ＢＢＢグループ）で表示可能となる。なお、整合性チェック結果１３２２の値が「１」の場合は、図１７に示すように、リストボックス１５０６が異常色で表示される。
【００８８】
矩形（オブジェクト）は、ゾーン定義テーブルｔｂ０３のゾーン読み取り属性１３１１の値が「ＯＭＲ」であるゾーンの数だけ生成される。そのうち、認識結果１３２１が空でなかったものについては上述の色表示が行われる。なお、ゾーンと重ね合わせて描画される矩形（オブジェクト）については矩形でなくてもよく、円形のものを認識した場合は、その形状に合わせたオブジェクトを生成する構成であってもよい。また、矩形（オブジェクト）を描画する際には、矩形（オブジェクト）を原本イメージ（認識対象となる画像）上に配置する以外に、矩形（オブジェクト）を配置したイメージを生成し、この生成されたイメージと原本イメージ（認識対象となる画像）とを合成して描画させるようにしてもよい。
【００８９】
ステップＳ８２１において、ゾーン読み取り属性１３１１の値が「ＯＣＲ」の場合、認識結果テーブルｔｂ０５の整合性チェック結果１３２２の値を判定し（ステップＳ８２５）、図１７に示す認識結果訂正画面１７００ように、原本イメージへ認識結果を表示する（ステップＳ８２６又はステップＳ８２７）。原本イメージへの認識結果の表示例として、図１７におけるゾーン１５０３，１５０４の拡大図を図１８（ａ）に示す。
【００９０】
ステップＳ８２５の判定の結果、整合性チェック結果１３２２の値が「０」（ＯＫ）の場合、ＣＰＵ２０１は、認識結果テーブルｔｂ０５の認識結果１３２１に保存されたＯＣＲの認識結果（認識文字）を、原本イメージ上の当該ゾーンの近傍（近接）に正常色で表示する（ステップＳ８２６）。例えば、図１８（ａ）に示すように、ゾーン１５０３の近傍に１５１０のように「１２３４５」の認識文字が表示され、ゾーン１５０３が正常色で表示される。そして、図１７に示す認識結果訂正画面１７００上では、ＯＣＲ対象とされたゾーンのゾーン名称（例えば、市町村コード、受診番号等）とテキストボックス１５１１，１５１２が表示され、それらのテキストボックスに認識結果が表示される。
【００９１】
一方、ステップＳ８２５において、整合性チェック結果１３２２の値が「１」の場合、ＣＰＵ２０１は、ＯＣＲ処理結果が認識エラーと識別できるように、原本イメージ上の当該ゾーンを異常色で表示する（ステップＳ８２７）。例えば、認識結果として文字列が取得できない場合、図１８（ａ）のゾーン１５０４のように、認識結果の文字列が表示されない。
【００９２】
以上の処理を、ゾーン定義テーブルｔｂ０３内の先頭列から最終列まで繰り返し行い（ステップＳ８２８）、その後、本処理を終了する。なお、描画（または表示）する認識結果（矩形（オブジェクト）もしくはテキスト）の表示位置や形式については予めユーザが定義できるものとする。認識結果（矩形（オブジェクト）もしくはテキスト）のサイズについては、ゾーン定義テーブルｔｂ０３に保存されたゾーンサイズの幅や高さに基づいて自動的に設定される。
【００９３】
上記処理によって、ＯＭＲを用いてマークやチェックを判定するような箇所については、チェックがあるか否かを重ねて（認識した箇所に重ねて）イメージ上に表示させ、ＯＣＲを用いて文字列を取得するような箇所については、認識した箇所に文字列を重ねずに表示させる。つまり、認識方法によって表示を切り換える。
【００９４】
このように、ＯＣＲ処理する領域とＯＭＲ処理する領域によって表示方法を切り換えることができるので、認識結果の確認や訂正を行うオペレータがＯＣＲやＯＭＲの認識結果を容易に把握することができる。
【００９５】
図９は、図４のステップＳ４０４における認識結果訂正処理の詳細を示すフローチャートである。
【００９６】
まず、ステップＳ９０１では、ＣＰＵ２０１は、図１７の認識結果訂正画面１７００に表示されている認識結果を、ＲＡＭ２０２又はＨＤＤ２０８上に設定された退避エリアにコピーする。退避エリアのテーブルレイアウトは、認識結果テーブルｔｂ０５と同じ形式とする。
【００９７】
認識結果の訂正については、認識結果訂正画面１７００上で訂正が必要なリストボックスやテキストボックスを選択して認識結果の訂正を行う。例えば、図１８（ｂ）に示すグループ１４０７（グループＢＢＢ）では、「ほとんど毎日食べている」という項目がマークされているにもかかわらず、認識結果が図１７のリストボックス１５０６のように「ほとんど食べていない」となっていた場合、ユーザは該リストボックス１５０６の「▽」をクリックしてグループＢＢＢに設定されたリスト内容を表示させ、訂正項目（ここでは、「ほとんど毎日食べている」）を選択する。テキストボックスに表示された文字列について訂正が必要な場合は、テキストボックスに直接入力する。なお、テキストボックス１５１１はゾーン１５０３に対応し、テキストボックス１５１２はゾーン１５０４に対応して認識結果が表示される。訂正された場合は、退避エリアにコピーされた該当する認識結果が破棄される。
【００９８】
ステップＳ９０２では、ＣＰＵ２０１は、認識結果訂正画面１７００上で認識結果が訂正されたか否かを判定する。この判定の結果、認識結果が訂正されたと判定した場合、後述する訂正処理（ステップＳ９０７）に移行する。
【００９９】
ステップＳ９０３では、ＣＰＵ２０１は、認識結果訂正画面１７００上でリセットボタン１５０７が押下されたかを判定する。リセットボタン１５０７が押下された場合、ＣＰＵ２０１は、退避エリアにコピーされた内容をＲＡＭ２０２又はＨＤＤ２０８上に設定されたＯＣＲ認識結果エリアにコピーし、ＯＣＲ認識結果エリアの内容に合わせて画面の再表示を行う（ステップＳ９０８）。
【０１００】
ステップＳ９０４では、ＣＰＵ２０１は、キャンセルボタン１５０８が押下されたかを判定する。キャンセルボタン１５０８が押下された場合、ＣＰＵ２０１は、ＯＣＲ認識結果エリア、退避エリアの内容をクリアし、図４に示す帳票認識処理自体を終了する。
【０１０１】
ステップＳ９０５では、ＣＰＵ２０１は、完了ボタン１５０９が押下されたかを判定する。完了ボタン１５０９が押下された場合、ＣＰＵ２０１は、本処理を終了する。
【０１０２】
図１０は、図９のステップＳ９０７における訂正処理の詳細を示すフローチャートである。
【０１０３】
ステップＳ１００１では、ＣＰＵ２０１は、例えば、認識結果訂正画面１７００における認識対象画像２０００上のイメージ（例えば、ゾーン１２０９，１２１４等）が選択されたか否かを判定する。この判定の結果、選択された場合は、ステップＳ１００２へ移行する一方、選択されていない場合は、ステップＳ１００３へ処理が移る。
【０１０４】
ステップＳ１００３では、ＣＰＵ２０１は、認識結果訂正画面１７００におけるテキストボックスでテキスト入力がされたか否かを判定する。この判定の結果、テキストボックスへの入力がされた場合、ステップＳ１００７へ移行する一方、入力がされなかった場合は、ステップＳ１００５へ処理が移る。
【０１０５】
ステップＳ１００５では、ＣＰＵ２０１は、リストボックスが選択されて訂正がされたか否かを判定する。この判定の結果、訂正がされなかった場合は、本処理を終了する一方、訂正がされた場合は、ステップＳ１００８へ処理が移る。
【０１０６】
ステップＳ１００８では、ＣＰＵ２０１は、選択されたリスト項目に該当する原本イメージへの表示位置の取得を行う。具体的には、選択されたリスト項目に該当するゾーンの表示位置情報をゾーン定義テーブルｔｂ０３内のゾーン位置情報（Ｘ軸）１３１２、ゾーン位置情報（Ｙ軸）１３１３、ゾーンサイズ（幅）１３１４、ゾーン（高さ）１３１５から取得する。つづいて、取得したゾーンの表示位置情報に基づき、原本イメージへの訂正結果の描画（ステップＳ１０１１）を実施した後、訂正内容をＲＡＭ２０２に保存（ステップＳ１０１３）し、本処理を終了する。
【０１０７】
ステップＳ１００７では、ＣＰＵ２０１は、入力されたテキストのイメージ表示位置情報をゾーン定義テーブルｔｂ０３内のゾーン位置情報（Ｘ軸）１３１２、ゾーン位置情報（Ｙ軸）１３１３、ゾーンサイズ（幅）１３１４、ゾーン（高さ）１３１５から取得する。つづいて、取得したゾーンの表示位置情報に基づき、テキスト入力内容を原本イメージに表示（ステップＳ１０１１）した後、訂正内容をＲＡＭ２０２に保存（ステップＳ１０１３）し、本処理を終了する。
【０１０８】
ステップＳ１００２では、ＣＰＵ２０１は、選択されたイメージの表示位置情報をゾーン定義テーブルｔｂ０３内のゾーン位置情報（Ｘ軸）１３１２、ゾーン位置情報（Ｙ軸）１３１３、ゾーンサイズ（幅）１３１４、ゾーン（高さ）１３１５から取得する。つづいて、ＣＰＵ２０１は、複数のイメージ（グループ）が選択されたか否かを判定する（ステップＳ１００４）。具体的には、ＣＰＵ２０１は、先に取得したゾーン定義テーブルｔｂ０３のゾーンＩＤ１３０９から、グループ定義テーブルｔｂ０２内のグループ内ゾーン数１３０７、最大選択可能数１３０８、必須選択数１３１７を取得することで判定を行う。
【０１０９】
ステップＳ１００４の判定結果、複数のイメージが選択されていない場合は、ステップ１００２で取得した情報を元に、原本イメージへの訂正結果の描画（ステップＳ１０１１）を実施した後、訂正内容をＲＡＭ２０２に保存（ステップＳ１０１３）し、本処理を終了する。
【０１１０】
一方、ステップＳ１００４において複数のイメージが選択されていた場合は、ＣＰＵ２０１は、訂正前の認識結果が選択されたか否かを判定する（ステップＳ１００６）。この判定の結果、訂正前の認識結果が選択されていない場合、ステップＳ１００７へ移行する一方、訂正前の認識結果が選択された場合は、選択された原本イメージの表示をクリア（ステップＳ１００９）し、該当リスト項目の表示をクリア（ステップＳ１０１２）した後、訂正内容をＲＡＭ２０２に保存（ステップＳ１０１３）し、本処理を終了する。
【０１１１】
ステップＳ１００７では、ＣＰＵ２０１は、訂正した内容が最大選択可能数以内か否かを判定する。この判定の結果が、訂正した内容が最大選択可能数以内である場合、原本イメージへの訂正結果の描画（ステップＳ１０１１）を実施した後、訂正内容をＲＡＭ２０２に保存（ステップＳ１０１３）し、本処理を終了する。原本イメージに訂正結果が描画される場合、表示されていたオブジェクトの表示を異常色から正常色に切り替える（表示切替）。一方、訂正した内容が最大選択可能数より大きい場合は、グループ定義の不整合と判別し、エラーメッセージを表示し、訂正内容を保存せずに、本処理を終了する。
【０１１２】
図１１は、図４のステップＳ４０５における登録処理の詳細を示すフローチャートである。
【０１１３】
ステップＳ１１０１では、ＣＰＵ２０１は、訂正前認識結果出力の有無を判定する。訂正前認識結果とは、ＯＣＲ処理をした値そのもの（未訂正の値）であり、図９のステップＳ９０１にてＲＡＭ２０２上の退避エリアにコピーされた内容（すなわち認識結果）を意味する。訂正前認識結果出力は必須ではなく、出力する／しないを設定ファイル等で予め定義するようにしてもよい。
【０１１４】
ステップＳ１１０１の判定の結果、訂正前認識結果出力が「有」の場合（ステップＳ１１０１でＹＥＳ）、図９のステップＳ９０１にてＲＡＭ２０２上の退避エリアへコピーされた内容（すなわち認識結果）をＤＢ１０１に登録、もしくは物理ファイル（ＣＳＶやテキスト形式）としてローカルもしくはネットワークフォルダに出力して、ステップＳ１１０３に進む。一方、ステップＳ１１０１において訂正前認識結果出力が「無」の場合（ステップＳ１１０１でＮＯ）、ステップＳ１１０３に進む。
【０１１５】
ステップＳ１１０３では、ＣＰＵ２０１は、認識結果テーブルｔｂ０５の認識結果１３２１の値をＤＢ１０１に登録、もしくは物理ファイル（ＣＳＶやテキスト形式）としてローカルもしくはネットワークフォルダに出力する。次に、ステップＳ１１０４では、ＣＰＵ２０１は、原紙画像の保存の有無を判定する。原紙画像とは、図４のステップＳ４０１にて保存された認識対象の画像であり、保存有無の設定は、設定ファイル等で予め定義されているものとする。
【０１１６】
ステップＳ１１０４の判定の結果、原紙画像が保存されている場合（ステップＳ１１０４でＹＥＳ）、ローカルもしくはネットワークフォルダに原紙画像をファイル出力し（ステップＳ１１０５）、ステップＳ１１０６に進む。一方、ステップＳ１１０４において原紙画像が保存されていなかった場合は、ステップＳ１１０６に進む。
【０１１７】
ステップＳ１１０６では、ＣＰＵ２０１は、ＲＡＭ２０２上の認識結果退避エリアをクリアする。つづいて、ＣＰＵ２０１は、認識結果テーブルｔｂ０５をＤＢ１０１から削除し（ステップＳ１１０７）、本処理を終了する。
【０１１８】
上記実施形態によれば、入力された原紙画像上の認識処理（ＯＭＲ処理（マーク認識処理）やＯＣＲ処理（文字認識処理））の対象となるゾーン（領域）のフォーム定義情報の設定を受け付ける。そして、設定されたフォーム定義情報に基づいて、認識対象となる画像上の領域に対して認識処理を行い、マーク認識処理された領域に対する認識結果を示すオブジェクトを生成する。そして、生成されたオブジェクトを領域に重ね合わせて表示する。これにより、ユーザが塗りつぶしやチェックなどのマークで記入した紙文書に対する画像の認識結果の確認作業を軽減すると共に、オペレータの訂正作業を容易にする。また、ユーザに選択的に記入させる形式の紙文書の認識結果を容易に訂正可能にする。
【０１１９】
上記実施形態では、クライアントコンピュータ２００における帳票認識処理について説明したが、上述した処理を管理サーバ１００が実行するように構成してもよい。また、クライアントコンピュータ２００とスキャナ３００を同一筐体とし、例えば、同一筐体となる複合機が実行するように構成してもよい。言い換えると、上記実施の形態では、クライアントコンピュータ２００とスキャナ３００が別筐体で構成されている。さらに、図１２（ａ）〜図１３（ｄ）に示すテーブル情報が保存（登録）されるＤＢ１０１は、管理サーバ１００内に設定されているが、これに限定されず、クライアントコンピュータ２００内に設定されていてもよい。
【０１２０】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１２１】
また、プログラムコードを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等である。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【０１２２】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１２３】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【０１２４】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した各実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現する場合も含まれる。この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、またはインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【０１２５】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラムコード、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【図面の簡単な説明】
【０１２６】
【図１】本発明の実施形態に係る画像処理装置を含む画像処理システムの概略構成を示す図である。
【図２】図１におけるクライアントコンピュータを構成するハードウェアの概略を示すブロック図である。
【図３】図１におけるスキャナを構成するハードウェアの概略を示すブロック図である。
【図４】クライアントコンピュータにて実行される帳票認識処理の全体の流れを示すフローチャートである。
【図５】図４のステップＳ４００におけるフォーム情報登録処理の詳細を示すフローチャートである。
【図６】図４のステップＳ４０１におけるフォーム認識処理の詳細を示すフローチャートである。
【図７】図４のステップＳ４０２における認識処理の詳細を示すフローチャートである。
【図８ａ】図４のステップＳ４０３における認識結果表示処理の詳細を示すフローチャートである。
【図８ｂ】図４のステップＳ４０３における認識結果表示処理の詳細を示すフローチャートである。
【図９】図４のステップＳ４０４における認識結果訂正処理の詳細を示すフローチャートである。
【図１０】図９のステップＳ９０７における訂正処理の詳細を示すフローチャートである。
【図１１】図４のステップＳ４０５における登録処理の詳細を示すフローチャートである。
【図１２】図４の帳票認識処理で使用されるテーブル情報の一例を示す図であり、（ａ）はフォーム定義テーブル、（ｂ）はグループ定義テーブル、（ｃ）はリスト定義テーブル、（ｄ）はリスト定義テーブルである。
【図１３】図４の帳票認識処理で使用されるテーブル情報の一例を示す図であり、（ｅ）は認識結果テーブルである。
【図１４】ゾーン設定情報を登録する際に表示されるフォーム定義画面の一例を示す図である。
【図１５】グループ設定情報を登録する際に表示されるフォーム定義画面の一例を示す図である。
【図１６】フォーム定義画面の部分拡大図であり、（ａ）はゾーン設定情報の設定に関するもの、（ｂ）はグループ設定情報の設定に関するものである。
【図１７】認識結果訂正画面の一例を示す図である。
【図１８】認識結果訂正画面の部分拡大図であり、（ａ）はＯＣＲゾーンの訂正に関するもの、（ｂ）はグループの訂正に関するもの、（ｃ）は１つのグループ内で複数のゾーンの選択を可能にした場合である。
【図１９】フォーム（帳票）の原紙画像の一例を示す図である。
【図２０】書き込み済みのフォームの画像の一例を示す図である。
【符号の説明】
【０１２７】
１００  管理サーバ
２００  クライアントコンピュータ
３００  スキャナ
２０１  ＣＰＵ
２０２  ＲＡＭ
２０８  ＨＤＤ
ｔｂ０１  フォーム定義テーブル
ｔｂ０２  グループ定義テーブル
ｔｂ０３  ゾーン定義テーブル
ｔｂ０４  リスト定義テーブル
ｔｂ０５  認識結果テーブル
【図１】
2010128904.tif 000003
【図２】
2010128904.tif 000004
【図３】
2010128904.tif 000005
【図４】
2010128904.tif 000006
【図５】
2010128904.tif 000007
【図６】
2010128904.tif 000008
【図７】
2010128904.tif 000009
【図８ａ】
2010128904.tif 000010
【図８ｂ】
2010128904.tif 000011
【図９】
2010128904.tif 000012
【図１０】
2010128904.tif 000013
【図１１】
2010128904.tif 000014
【図１２】
2010128904.tif 000015
【図１３】
2010128904.tif 000016
【図１４】
2010128904.tif 000017
【図１５】
2010128904.tif 000018
【図１６】
2010128904.tif 000019
【図１７】
2010128904.tif 000020
【図１８】
2010128904.tif 000021
【図１９】
2010128904.tif 000022
【図２０】
2010128904.tif 000023