(57)【要約】【課題】  記入文字が記入枠に重なることによるＯＣＲの誤認識をより正確に補正する仕組みを提供すること。【解決手段】  文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報を記憶している。そして、文字を記入する記入枠を備えたフォームにユーザにより文字が記入された文書媒体をデータ化した画像データから、前記ユーザにより記入された文字を読み取る。そして、記憶している文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、読み取った文字を置き換えるか否かを判定する判定し、判定の結果置き換えると判定された文字を、読み取った当該文字を記憶している他の文字に置き換える。【選択図】図１７
2018037117.tif 000002
【特許請求の範囲】
【請求項１】
文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報を記憶している記憶手段と、
文字を記入する記入枠を備えたフォームにユーザにより文字が記入された文書媒体をデータ化した画像データから、前記ユーザにより記入された文字を読み取る読取手段と、
前記記憶手段に記憶されている文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、前記読取手段で読み取られた文字を置き換えるか否かを判定する判定手段と、
前記判定手段で置き換えると判定された文字を、前記読取手段で読み取られた当該文字を前記記憶手段に記憶された他の文字に置き換える置換え手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記読取手段は、更に、前記文字の周囲を囲う矩形の座標を読み取り、
前記判定手段は、前記読取手段で読み取った文字と外接する矩形の座標が、隣接する座標に黒画素が存在する場合に、前記読取手段で読み取られた文字を置き換えると判定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記記憶手段は、前記文字の情報として置き換えを行うように判定する重なり状態も記憶していることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記読取手段で読み取られた情報から、前記記入枠と重なっていないと判定された文字の濃度と、前記記入枠と重なっていると判定された前記文字を含む前記記入枠の濃度とをそれぞれ取得する取得手段と、
前記取得手段で取得した前記記入枠と重なっていないと判定された文字の濃度と、当該文字の記入された記入枠の濃度との濃度差に基づいて、前記画像データを二値化し、前記文字のみを黒画素にするための閾値を決定する閾値決定手段と、
前記閾値決定手段で決定された閾値を用いて、前記画像データを二値化して前記文字のみの黒画素とする二値化手段と、をさらに備え、
前記読取手段は、更に、前記二値化手段で二値化された前記画像データから前記ユーザにより記入された文字を読み取ることを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報を記憶している記憶手段を備える情報処理装置における情報処理方法であって、
文字を記入する記入枠を備えたフォームにユーザにより文字が記入された文書媒体をデータ化した画像データから、前記ユーザにより記入された文字を読み取る読取工程と、
前記記憶手段に記憶されている文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、前記読取工程で読み取られた文字を置き換えるか否かを判定する判定工程と、
前記判定工程で置き換えると判定された文字を、前記読取工程で読み取られた当該文字を前記記憶手段に記憶された他の文字に置き換える置換え工程と
を備えることを特徴とする情報処理装置の制御方法。
【請求項６】
文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報を記憶している記憶手段を備える情報処理装置で実行されるプログラムであって、
前記情報処理装置を、
文字を記入する記入枠を備えたフォームにユーザにより文字が記入された文書媒体をデータ化した画像データから、前記ユーザにより記入された文字を読み取る読取手段と、
前記記憶手段に記憶されている文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、前記読取手段で読み取られた文字を置き換えるか否かを判定する判定手段と、
前記判定手段で置き換えるとと判定された文字を、前記読取手段で読み取られた当該文字を前記記憶手段に記憶された他の文字に置き換える置換え手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、およびプログラムに関し、特に、記入文字が記入枠に重なることによるＯＣＲの誤認識をより正確に補正する仕組みに関する。
【背景技術】
【０００２】
従来、画像化された文字をテキストコードに変換する文字認識技術がある。また特に、申込用紙や帳票など記入枠があるものに手書きで書かれた文字を認識する技術も存在する。
【０００３】
また、更に枠を認識し枠部分の内部を文字認識するだけでなく、枠を削除することによって文字認識を実施する（文字と枠とを分離する）技術も存在する。
【０００４】
特許文献１には、文字と枠、もしくは背景色とを分離する為に多値画像の明度等を利用した文字と枠との分離方法を提案している。
【０００５】
特許文献２には、文字領域と非文字領域との濃度差に着目し、同一濃度と判断される画素をラベリングして構造物を判断する（文字領域を分離する）手法を提案している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−０７６０９６号公報
【特許文献２】特開平０９−０１６７１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、記入文字が記入枠と接触している場合、特にボールペーンなどの筆記具で記入された文字は筆圧やインク量などにより記入文字上でも濃淡が発生し、特許文献１と特許文献２の技術を用いたとしても正確に文字と枠を分離することが難しく、分離できたとしてもＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅｃｏｇｎｉｔｉｏｎ）の認識性能を満たすレベルの二値画像を作成することが困難なケースが存在していた。
【０００８】
本発明の目的は、記入文字が記入枠に重なることで発生するＯＣＲ等の読取手段における誤認識をより正確に補正する仕組みを提供することである。
【課題を解決するための手段】
【０００９】
本発明は、文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報を記憶している記憶手段と、文字を記入する記入枠を備えたフォームにユーザにより文字が記入された文書媒体をデータ化した画像データから、前記ユーザにより記入された文字を読み取る読取手段と、前記記憶手段に記憶されている文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、前記読取手段で読み取られた文字を置き換えるか否かを判定する判定手段と、前記判定手段で置き換えると判定された文字を、前記読取手段で読み取られた当該文字を前記記憶手段に記憶された他の文字に置き換える置換え手段とを備えることを特徴とする。
【００１０】
また、本発明は、文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報を記憶している記憶手段を備える情報処理装置における情報処理方法であって、文字を記入する記入枠を備えたフォームにユーザにより文字が記入された文書媒体をデータ化した画像データから、前記ユーザにより記入された文字を読み取る読取工程と、前記記憶手段に記憶されている文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、前記読取工程で読み取られた文字を置き換えるか否かを判定する判定工程と、前記判定工程で置き換えると判定された文字を、前記読取工程で読み取られた当該文字を前記記憶手段に記憶された他の文字に置き換える置換え工程とを備えることを特徴とする。
【００１１】
また、本発明は、文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報を記憶している記憶手段を備える情報処理装置で実行されるプログラムであって、前記情報処理装置を、文字を記入する記入枠を備えたフォームにユーザにより文字が記入された文書媒体をデータ化した画像データから、前記ユーザにより記入された文字を読み取る読取手段と、前記記憶手段に記憶されている文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、前記読取手段で読み取られた文字を置き換えるか否かを判定する判定手段と、前記判定手段で置き換えると判定された文字を、前記読取手段で読み取られた当該文字を前記記憶手段に記憶された他の文字に置き換える置換え手段として機能させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、記入文字が記入枠に重なることで発生するＯＣＲ等の読取手段における誤認識をより正確に補正する仕組みを提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態に係わるシステム構成の一例を示す図である。
【図２】本発明の実施形態に係わる装置のハードウェア構成の一例を示すブロック図である。
【図３】本発明の第１の実施形態に係る全体の流れを示すメインのフローチャートの一例である。
【図４】本発明の実施形態に係わるＯＣＲ修正情報テーブルのデータ構成を示す一例である。
【図５】本発明の第１の実施形態に係るクライアント端末１０１で実行される接触文字の有無判定のフローチャートの一例である。
【図６】本発明の実施形態に係わる記入枠情報テーブルのデータ構成を示す一例である。
【図７】本発明の実施形態に係わる記入枠と記入文字の二値画像を示す一例である。
【図８】本発明の実施形態に係わる記入枠をノイズ除去処理した際の二値画像を示す一例である。
【図９】本発明の実施形態に係わる記入枠をノイズ除去処理した際の除去された側の二値画像を示す一例である。
【図１０】本発明の実施形態に係わる接触情報テーブルのデータ構成を示す一例である。
【図１１】本発明の第１の実施形態に係るクライアント端末１０１で実行されるグレー枠消し処理のフローチャートの一例である。
【図１２】本発明の実施形態に係わる記入枠と記入文字のそれぞれのグレー値頻度分布を示す一例である。
【図１３】本発明の実施形態に係わる記入枠を消し記入文字だけを残すよう二値化処理した際の画像を示す一例である。
【図１４】本発明の第１の実施形態に係るクライアント端末１０１で実行される枠接触部分判定処理のフローチャートの一例である。
【図１５】本発明の第１および第２の実施形態に係るクライアント端末１０１で実行されるＯＣＲ修正判定処理のフローチャートの一例である。
【図１６】本発明の第２の実施形態に係るクライアント端末１０１で実行される枠接触部分判定処理のフローチャートの一例である。
【図１７】本発明の第２の実施形態に係る全体の流れを示すメインのフローチャートの一例である。
【図１８】図３のステップＳ３０１における、記入枠に記入文字が接触している場合と、記入枠に接していない場合の文字の矩形の取得方法の一例を示す図ある。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
＜図１の説明＞
【００１５】
図１は、本発明の実施形態に係わるシステム構成の一例を示す図である。
【００１６】
本発明のクライアント端末１０１（情報処理装置）は、例えば、パーソナルコンピュータであり、ネットワーク通信機能を備え、ネットワーク１（ＬＡＮ、ＷＡＮなど）を介してサーバ１０２とデータ通信が可能（接続可能）である。
＜図２の説明＞
【００１７】
図２は、クライアント端末１０１、サーバ１０２のハードウェア構成例を示すブロック図である。
【００１８】
図２に示すように、クライアント端末１０１サーバ１０２は、システムバス２０４を介してＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２、入力コントローラ２０５、ビデオコントローラ２０６、メモリコントローラ２０７、通信Ｉ／Ｆコントローラ２０８等が接続された構成を採る。
【００１９】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２０】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や、各サーバあるいは各ＰＣが実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。また、本発明を実施するために必要な情報が記憶されている。なお外部メモリはデータベースであってもよい。
【００２１】
ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０２あるいは外部メモリ２１１からＲＡＭ２０３にロードし、ロードしたプログラムを実行することで各種動作を実現する。
【００２２】
また、入力コントローラ２０５は、キーボード（ＫＢ）２０９や不図示のマウス等のポインティングデバイス等からの入力を制御する。
【００２３】
ビデオコントローラ２０６は、ディスプレイ２１０等の表示器への表示を制御する。尚、表示器は液晶ディスプレイ等の表示器でもよい。これらは、必要に応じて管理者が使用する。
【００２４】
メモリコントローラ２０７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶する外部記憶装置（ハードディスク（ＨＤ））や、フレキシブルディスク（ＦＤ）、あるいは、ＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）カードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２５】
通信Ｉ／Ｆコントローラ２０８は、ネットワーク１０４を介して外部機器と接続・通信し、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）を用いた通信等が可能である。
【００２６】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ディスプレイ２１０上に表示することが可能である。また、ＣＰＵ２０１は、ディスプレイ２１０上のマウスカーソル（図示しない）等によるユーザ指示を可能とする。
【００２７】
本発明を実現するための後述する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイルおよび各種情報テーブル等も、外部メモリ２１１に格納されており、これらについての詳細な説明についても後述する。
＜第１の実施形態の説明＞
＜図３の説明＞
【００２８】
図３は、本発明の第１の実施形態に係るクライアント端末１０１で実行されるＯＣＲ処理の全体の流れを示すメインのフローチャートの一例である。図３のフローチャートの各ステップは、クライアント端末１０１のＣＰＵ２０１で実行される。なお、本実施例では、記入枠にユーザにより手書きされた文書媒体（申込書や帳票等）をスキャナ等で読み取った電子データ（画像データともいう）が、あらかじめクライアント端末１０１の外部メモリ２１１に保存（文字を記入する記入枠内にユーザにより文字が記入された文書媒体をデータ化した画像データを記憶）されており、図３の処理はその電子データをＯＣＲ処理するものとする。
【００２９】
ステップＳ３０１においては、通常のＯＣＲ処理を行う。本実施例では記入枠に記入された手書きの数字をＯＣＲする場合を想定する。プログラムによるＯＣＲ処理がＣＰＵ２０１で実行され、手書きで記入された数字のＯＣＲ結果をＲＡＭ２０３内に記憶する。本実施例では、図１０接触情報テーブルのＯＣＲ結果１００３に記憶させる。
【００３０】
なお、ステップＳ３０１は、本発明における文字を記入する記入枠を備えたフォームにユーザにより文字が記入された文書媒体をデータ化した画像データから、前記ユーザにより記入された文字を読み取る読取手段の一例である。
＜図１０の説明＞
【００３１】
図１０は、本発明の実施形態に係わる接触情報テーブルのデータ構成を示す一例である。この情報テーブルは、記入枠（矩形枠）に記入された文字が枠のどこにどれだけ接触（本実施例における「接触」という表現は「重なり」ともいう）していたかを記憶する情報テーブルである。なお、図４・６・１０の各種データテーブルは、クライアント端末１０１の外部メモリ２１１に記憶されていても良い。その場合、外部メモリ２１１は、本発明における、文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報を記憶している記憶手段の一例となる。また、ＲＡＭ２０３に記憶する場合には、ＲＡＭ２０３が記憶手段の一例となる。
【００３２】
具体的には、枠番号１００１、桁数１００２、ＯＣＲ結果１００３、接触有無１００４、接触個所１００５、接触割合１００６からなる。接触個所１００５は、本実施例では記入枠の上下左右としたが、左辺上部、左辺下部など細分化しても構わない。また接触割合１００６は、本実施例では枠に対する記入文字黒画素の割合としたが、接触個所によって重み付けをして点数化するなどしてもよい。
【００３３】
図３の説明に戻る。
【００３４】
ステップＳ３０２においては、ＯＣＲ結果に指定された文字が含まれるかどうかの判定処理を行う。判定には図４に示すＯＣＲ修正情報テーブルを使用する。この情報テーブルのＯＣＲ結果文字（４０１）に記載される文字（図４の例では、「１」・「５」・「７」）が存在する場合はステップＳ３０３に進む。存在しない場合は処理を終了する。
＜図４の説明＞
【００３５】
図４は、本発明の実施形態に係わるＯＣＲ修正情報テーブルのデータ構成を示す一例である。この情報テーブルは、手書き記入文字が枠のどの個所にどの程度接触すると、ＯＣＲ結果がどの文字として誤認識しやすいかの情報（文字が矩形枠と所定の位置で重なっている場合に、他の文字に置き換えるべき文字の情報）を記憶する情報テーブルである。
【００３６】
具体的には、ＯＣＲ結果文字４０１、接触個所（記入枠と記入文字の接触個所）４０２、接触割合（文字の情報として置き換えを行うように判定する重なり状態）４０３、認識修正文字（誤認識した場合に変換する文字）４０４からなる。
【００３７】
なお、本実施例では、接触個所４０２は記入枠の上下左右としたが、左辺上部、左辺下部など細分化しても構わない。また接触割合４０３は、本実施例では枠に対する記入文字黒画素の割合としたが、接触個所によって重み付けをして点数化するなどしてもよい。
【００３８】
本情報テーブルは事前にユーザが予め手動で作成しておいてもよいし、別途ＯＣＲを実行し人為的に誤認識を修正する過程で情報を収集し、自動で作成することも可能である。
【００３９】
図３の説明に戻る。
【００４０】
ステップＳ３０３においては、接触文字の有無を判定する処理を行う。この処理の詳細は図５のフローチャートで説明する。
【００４１】
ステップＳ３０４においては、接触文字の有無を判定する処理を行う。この処理では図１０に示す接触情報テーブルの情報の１００４をもとに、当該枠の文字に接触個所が存在しているかを判定する。接触している個所が存在する場合はステップＳ３０５に進む。存在しない場合は処理を終了する。
【００４２】
ステップＳ３０５においては、図１０に示す接触情報テーブルで接触文字部分とされた個所のＯＣＲ結果が、図４に示すＯＣＲ修正情報テーブルで指定された修正対象文字と一致するかどうかを判定する処理を行う。一致する箇所が存在する場合はステップＳ３０６に進む。存在しない場合は処理を終了する。
【００４３】
ステップＳ３０６においては、グレー枠消し処理を行う。この処理の詳細は図１１のフローチャートで説明する。
【００４４】
ステップＳ３０７においては、枠接触部分判定処理を行う。この処理の詳細は図１４のフローチャートで説明する。
【００４５】
ステップＳ３０８においては、ＯＣＲ修正判定処理を行う。この処理の詳細は図１５のフローチャートで説明する。
＜図５の説明＞
【００４６】
図５は、本発明の第１の実施形態に係るクライアント端末１０１で実行される接触文字の有無判定のフローチャートの一例である。図５のフローチャートの各ステップは、クライアント端末１０１のＣＰＵ２０１で実行される。
【００４７】
ステップＳ５０１においては、枠サイズ情報の取得処理を行う。具体的には図６に示す枠情報テーブルの情報を取得しＲＡＭ２０３内に記憶する。
＜図６の説明＞
【００４８】
図６は、本発明の実施形態に係わる記入枠情報テーブルのデータ構成を示す一例である。この情報テーブルは、各記入枠に対して、その画像上の記入枠の位置情報を記憶する情報テーブルである。
【００４９】
具体的には、枠番号６０１、桁数６０２、枠座標６０３、枠幅（枠線幅）６０４、枠消し閾値６０５からなる。
枠座標６０３の「上」「下」については、枠番号６０１全体の上側の面（線）と下側の面（線）のｙ座標を表し、枠座標６０３の「左」「右」については、枠番号６０１全体の一番左側の面（線）と一番右側の面（線）のｘ座標を表している。
【００５０】
枠座標６０３や枠線幅６０４は、本実施例では記入枠（枠番号６０１全体）の上下左右としたが、ひと枠ごとに情報を記憶（それぞれの前記記入枠の座標を記憶）するなど細分化しても構わない。
【００５１】
なお、記入枠のサイズ等が決まっている場合は、事前に決定しておき与えることも可能である。
【００５２】
図５の説明に戻る。
【００５３】
ステップＳ５０２においては、ステップＳ５０１で得た図６に示す枠情報テーブルの情報に基づきノイズ除去パラメータ算出の処理を行う。具体的には、各記入枠の内接矩形にあたるサイズ（記入枠に内接しない程度の矩形の範囲）を計算にて求める。なお、記入枠のサイズが決まっている場合は、事前に決定しておき与えることも可能である。なお、ここでいうノイズとは、記入枠に接触せずに記入された手書き文字のことである。
【００５４】
ステップＳ５０３においては、ステップＳ５０２で得たノイズ除去パラメータに基づき、ノイズ除去の処理を行う。この処理により、記入枠に接触せずに記入された手書き文字はノイズとして除去され、枠に接触した文字のみが画像内に残る。
【００５５】
具体例としては、ノイズ除去の処理を実行すると図７の７０１に示す８ケタの記入枠に文字が記入された画像から、図８に示すような画像が作成される。なお、同時にノイズとして削除された側の画像として、図９に示す画像も生成し、ＲＡＭ２０３内に記憶する。なお、本実施例では、図７の７０１にノイズ除去の処理を実行しているが、実際には７０１以外の記入枠についても本処理を実行する。
【００５６】
ステップＳ５０４においては、ノイズ除去後画像のＯＣＲ処理を行う。この処理結果は一時的にＲＡＭ２０３内に記憶する。
【００５７】
ステップＳ５０５においては、ステップＳ５０４におけるＯＣＲ処理の結果を参照し、ＯＣＲ結果がスペース文字となったかどうかを判定する処理を行う。ステップＳ５０５は、本発明における、記憶手段に記憶されている文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、前記読取手段で読み取られた文字を置き換えるか否かを判定する判定手段の一例である。
【００５８】
図１０接触情報テーブルのＯＣＲ結果１００３にスペース文字以外の認識結果があるのにスペース文字になった場合、記入枠に接触しない文字が記入されていてノイズ除去されたと判断する。ステップＳ５０５、ステップＳ５０６の処理は当該枠の１文字目から桁数（図６の６０２）分繰り返し処理を実行する。スペース文字になった場合はステップＳ５０７へ進む。それ以外の場合はステップＳ５０６へ進む。
【００５９】
ステップＳ５０６においては、図１０接触情報テーブルの接触有無１００４に接触有のフラグを立てる。この際、無条件にフラグを立ててもよいし、ステップＳ５０４における認識結果が図１０接触情報テーブルのＯＣＲ結果１００３と一致することを条件にフラグを立ててもよい。
【００６０】
ステップＳ５０７においては、当該記入枠の残りの枠があるかどうかを判断する処理を行う。まだ記入枠が存在する場合はステップＳ５０５へ進む。存在しない場合は、接触文字有無判定処理を終了する。
【００６１】
図７は、本発明の実施形態に係わる記入枠と記入文字の二値画像を示す一例である。また、７０１は、本実施例における図６、図１０の情報テーブルの枠番号（６０１、１００１）１にあたり、７０２が、図６の６０２、図１０の１００２の桁数に該当する。なお、本実施例の図８、図９の説明においては、７０１の枠番号を例にして説明する。
【００６２】
図８は、本発明の実施形態に係わる記入枠をノイズ除去処理した際の二値画像を示す一例である。図５のステップＳ５０３の実行結果の一例にあたる。
【００６３】
図９は、本発明の実施形態に係わる記入枠をノイズ除去処理した際の除去された側の二値画像を示す一例である。図５のステップＳ５０３の実行結果の一例にあたる。図９に示す画像は、記入された文字のみが残っている特徴を有する。
＜図１１の説明＞
【００６４】
図１１は、本発明の第１の実施形態に係るクライアント端末１０１で実行されるグレー枠消し処理のフローチャートの一例である。図１１のフローチャートの各ステップは、クライアント端末１０１のＣＰＵ２０１で実行される。
【００６５】
ステップＳ１１０１においては、ノイズ除去画像のグレー値分布取得処理を行う。具体的には、図８に示す二値画像で黒画素が存在する部分について、二値化前のグレー画像からそのグレー値を取得していく処理を行う。この処理結果は一時的にＲＡＭ２０３内に記憶する。
【００６６】
最終的には、図１２ａに示すグレー値頻度グラフの上段部のグラフに当たるデータが取得される。これにより、一部接触した記入文字のグレー値が残るものの、記入枠のグレー値頻度分布が取得可能となる。
【００６７】
ステップＳ１１０２においては、ノイズ除去された側の画像のグレー値分布取得処理を行う。
【００６８】
具体的には、図９に示す二値画像で黒画素が存在する部分について、二値化前のグレー画像からそのグレー値を取得していく処理を行う。この処理結果は一時的にＲＡＭ２０３内に記憶する。
【００６９】
最終的には、図１２ｂに示すグレー値頻度グラフの下段部のグラフに当たるデータが取得される。これにより、記入文字のグレー値頻度分布が取得可能となる。
ステップＳ１１０１とステップＳ１１０２の処理は、本発明における、読取手段で読み取られた情報から、前記記入枠と重なっていないと判定された文字の濃度と、前記記入枠と重なっていると判定された前記文字を含む前記記入枠の濃度とをそれぞれ取得する取得手段の一例である。
【００７０】
ステップＳ１１０３においては、後段のステップＳ１１０４で使用する二値化閾値の計算処理を行う。ステップＳ１１０１及びステップＳ１１０２で得られたグレー値分布の頻度ピーク値の間を閾値として採用する。ステップＳ１１０３は、本発明における、取得手段で取得した前記記入枠と重なっていないと判定された文字の濃度と、当該文字の記入された記入枠の濃度との濃度差に基づいて、前記画像データを二値化し、前記文字のみを黒画素にするための閾値を決定する閾値決定手段の一例である。
【００７１】
具体的には、両者のピーク（１２０１と１２０２）の中間値（１２０３）や、図１２ａのグラフの２つの頻度ピークの間で一番低い頻度、あるいは図１２ａ・ｂの頻度合計が一番少ない値を採用するなど、その閾値の決定方法は、対象となるサンプル毎に変更可能である。
【００７２】
ステップＳ１１０４においては、枠消し画像作成の処理を行う。具体的には、ステップＳ１１０３で決定された閾値（例えば、１２０３）に従い、ＯＣＲ対象のグレー画像を二値化する。これにより、記入枠が消え、手書き文字が残る画像を得ることが可能となる。図１３は本処理を実施後の画像の一例である。なお、ステップＳ１１０４は、閾値決定手段で決定された閾値を用いて、前記画像データを二値化して前記文字のみの黒画素とする二値化手段の一例である。
【００７３】
図１２は、本発明の実施形態に係わる記入枠と記入文字のそれぞれのグレー値頻度分布を示す一例である。
【００７４】
本実施例ではグラフとして表現したが、図１１のステップＳ１１０３の処理が容易になる様、例えば分布を関数化して記憶することも可能である。
【００７５】
図１３は、本発明の実施形態に係わる記入枠を消し、記入文字だけを残すよう二値化処理した際の画像を示す一例である。図１１のステップＳ１１０４の実行結果の実施例にあたる。
【００７６】
図１１の処理を実行することにより、図１４の処理で、記入文字と記入枠とがどの位置でどれくらいの割合で接触しているかの判定が容易になる。
【００７７】
なお、本実施例では、図１１の処理の後に図１４の処理を実行するとしたが、他の実施例として、図１１の処理で得られた画像（例えば図１３）を、再びＯＣＲ処理する（二値化手段で二値化された前記画像データから前記ユーザにより記入された文字を読み取る）ことで取得した文字の情報をＯＣＲ結果としても良い。
＜図１４の説明＞
【００７８】
図１４は、本発明の第１の実施形態に係るクライアント端末１０１で実行される枠接触部分判定処理のフローチャートの一例である。図１４のフローチャートの各ステップは、クライアント端末１０１のＣＰＵ２０１で実行される。
【００７９】
ステップＳ１４０１においては、当該記入枠の１桁毎に枠消し画像による接触個所特定処理を行う。
【００８０】
具体的には、図１３に示したような枠消し画像と図６記入枠情報テーブルの情報を元に、記入枠座標上のどこに記入文字の黒画素が存在するかを計算する。その計算結果は図１０の接触情報テーブルの接触個所１００５に記憶する。
【００８１】
ステップＳ１４０２においては、当該記入枠の１桁毎に枠消し画像による接触状況特定処理を行う。具体的には、図１３に示したような枠消し画像と図６記入枠情報テーブルの情報（６０３・６０４）を元に、記入枠座標上にどれだけの記入文字の黒画素が存在するかを計算する。その計算結果は図１０接触情報テーブルの接触割合１００６に記憶する。
【００８２】
ステップＳ１４０３においては、当該記入枠にまだ接触部分判定処理を実行していない桁が残っているかを判定する処理を行う。まだ接触部分判定処理を実行していない桁が存在すればステップＳ１４０１に進む。存在しなければ、接触部分判定処理を終了する。
＜図１５の説明＞
【００８３】
図１５は、本発明の第１および後述する第２の実施形態に係るクライアント端末１０１で実行されるＯＣＲ修正判定処理のフローチャートの一例である。図１５のフローチャートの各ステップは、ＣＰＵ２０１で実行される。
【００８４】
ステップＳ１５０１においては、当該記入枠の１桁毎にＯＣＲ修正条件と一致するかの判定処理を行う。
【００８５】
具体的には、図１０の枠接触情報テーブルのそれぞれの桁（１００２）について、図４と比較し、ＯＣＲ結果１００３とＯＣＲ結果文字４０１が一致し（所定の文字であり）、接触有無１００４が有で、接触個所１００５が接触個所４０２と一致（記入枠と所定の位置で接触）し、接触割合１００６が接触割合４０３を上回っているか（所定の割合以上重なっているか）を判定する。判定結果が一致している場合はステップＳ１５０２に進む。一致しない場合はステップＳ１５０３へ進む。
【００８６】
ステップＳ１５０２においては、当該記入枠の１桁毎に図３のステップＳ３０１で実行したＯＣＲ結果の置き換え処理を行う。
【００８７】
ステップＳ１５０２は、本発明における、判定手段で置き換えると判定されるべき文字と判定された場合に、前記読取手段で読み取られた当該文字を前記記憶手段に記憶された他の文字に置き換える置換え手段の一例である。
【００８８】
具体的には、該当箇所のＯＣＲ結果を、図４ＯＣＲ修正情報テーブルの認識修正文字４０４に記載の文字に置き換える処理を実施する。
【００８９】
ステップＳ１５０３においては、当該記入枠にまだＯＣＲ修正判定処理を行っていない桁が残っているかを判定する処理を行う。まだＯＣＲ修正判定処理を行っていない桁が存在すればステップＳ１５０１に進む。存在しなければ、ＯＣＲ修正判定処理を終了する。
【００９０】
以上の本実施例は、二値画像とともにグレー画像を使用した場合としたが、例えば後述する図１６のフローチャートを実施することで、二値画像のみで行うことも可能である。
＜第２の実施形態の説明＞
＜図１７の説明＞
【００９１】
図１７は、本発明の第２の実施形態に係るクライアント端末１０１で実行されるＯＣＲ処理の全体の流れを示すメインのフローチャートの一例である。図１７のフローチャートの各ステップは、クライアント端末１０１のＣＰＵ２０１で実行される。なお、本実施例では、記入枠にユーザにより手書きされた文書媒体（申込書や帳票等）をスキャナ等で読み取った電子データが、あらかじめクライアント端末１０１の外部メモリ２１１に保存されており、図１７の処理はその電子データをＯＣＲ処理するものとする。なお、図３と同様の処理については、図３と同様のステップ番号を振り、詳細な説明は省略する。
【００９２】
ステップＳ３０１においては、通常のＯＣＲ処理を行う。
【００９３】
ステップＳ３０２においては、ＯＣＲ結果に指定された文字が含まれるかどうかの判定処理を行う。判定には図４に示すＯＣＲ修正情報テーブルを使用する。この情報テーブルのＯＣＲ結果文字（４０１）に記載される文字（図４の例では、「１」・「５」・「７」）が存在する場合はステップＳ１７０１に進む。存在しない場合は処理を終了する。
【００９４】
ステップＳ１７０１においては、枠接触部分判定処理を行う。この処理の詳細は、後述する図１６のフローチャートで説明する。
【００９５】
ステップＳ３０８においては、ＯＣＲ修正判定処理を行う。この処理の詳細は図１５のフローチャートで説明する。ステップＳ３０８の処理が終了すると、図１７の処理を終了する。
＜図１６の説明＞
【００９６】
図１６は、本発明の第２の実施形態に係るクライアント端末１０１で実行される枠接触部分判定処理のフローチャートの一例である。図１６のフローチャートの各ステップは、クライアント端末１０１のＣＰＵ２０１で実行される。
【００９７】
ステップＳ１６０１においては、図３のステップＳ３０１で実施したＯＣＲ結果について、記入枠の１桁毎にその認識の際に使用した画像の矩形情報（矩形座標ともいう）を取得する（文字と外接する矩形の座標を読み取る）。
【００９８】
具体的には、図３のステップＳ３０１におけるＯＣＲ処理では、記入枠に記入文字が接触していなければ、記入された文字の外接矩形が取得できる（図１８ｂ）。一方で、記入枠に記入文字が接触している場合、図３のステップＳ３０１におけるＯＣＲ処理では、記入枠の位置を認識した上で、記入枠との接触位置に関しては記入枠の内側になるような矩形座標にて文字の矩形座標を取得する（図１８ａ）。
【００９９】
ステップＳ１６０２においては、当該記入枠の１桁毎にステップＳ１６０１で取得した矩形座標の周囲ドットに黒画素が存在するか探索処理を行う。
【０１００】
そして、ステップＳ１６０２の処理の結果を、図１０の接触情報テーブルに記録する。
なお、ステップＳ１６０２の結果、黒画像が存在した場合には、図１０の接触有無１００４が有（記入枠と記入文字が接触している）となる（読取手段で読み取った文字と外接する矩形の座標が、隣接する座標に黒画素が存在する場合に、前記読取手段で読み取られた文字を置き換えると判定する）。また、その場合には、どの方向にどれだけの黒画素が存在したかを図１０の接触有無１００４、接触個所１００５、接触割合１００６に記録する。
【０１０１】
ステップＳ１６０２は、本発明における、記憶手段に記憶されている文字の情報と、前記ユーザから記入された文字の記入枠との重なり状態とに基づいて、前記読取手段で読み取られた文字を置き換えるか否かを判定する判定手段の一例である。
【０１０２】
なお、この実施例の場合の接触割合は、図６記入枠情報テーブルにおける枠線上と隣り合う画素にどれだけの黒画素が存在するかの割合等を利用することができる。
【０１０３】
ステップＳ１６０３においては、当該記入枠にまだ探索処理を行っていない桁（枠）が残っているかを判定する処理を行う。まだ探索処理を行っていない桁が存在すればステップＳ１６０１に進む。存在しなければ、枠接触部分判定処理を終了する。
【０１０４】
以上のように、グレー画像を使用しなくとも枠接触部分判定の処理を実行することも可能である。
【０１０５】
以上で、接触文字のＯＣＲ結果修正処理の説明を完了する。
【０１０６】
なお、本実施例では、ステップＳ１７０１の後にステップＳ３０８の処理を実行するとしたが、他の実施例として、ステップＳ１７０１の処理を実行した後に、ステップＳ１６０１で取得した矩形座標の中の文字を再度ＯＣＲ処理し、その結果認識した文字に置き換えても良い。
【０１０７】
また、上述した二つの実施形態では、図３・５・１１・１４〜１７の処理をクライアント端末１０１のＣＰＵ２０１が実行するとしたが、他の実施例として、サーバ１０２のＣＰＵ２０１が各処理を実行しても良い。
【０１０８】
以上、本発明によると、記入文字が記入枠に重なることによるＯＣＲの誤認識をより正確に補正する仕組みを提供することができる。
【０１０９】
また、本発明によると、記入文字と記入枠を効率よく分離することができる。
【０１１０】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
【０１１１】
以上、本発明の実施形態を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１１２】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【０１１３】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１４】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０１１５】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（基本システム或いはオペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１６】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１１７】
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１１８】
ネットワーク  １
クライアント端末  １０１
サーバ  １０２
【図１】
2018037117.tif 000003
【図２】
2018037117.tif 000004
【図３】
2018037117.tif 000005
【図４】
2018037117.tif 000006
【図５】
2018037117.tif 000007
【図６】
2018037117.tif 000008
【図７】
2018037117.tif 000009
【図８】
2018037117.tif 000010
【図９】
2018037117.tif 000011
【図１０】
2018037117.tif 000012
【図１１】
2018037117.tif 000013
【図１２】
2018037117.tif 000014
【図１３】
2018037117.tif 000015
【図１４】
2018037117.tif 000016
【図１５】
2018037117.tif 000017
【図１６】
2018037117.tif 000018
【図１７】
2018037117.tif 000019
【図１８】
2018037117.tif 000020