(57)【要約】【課題】幅方向に沿って並ぶ一対の文字要素から成る複合文字を精度良く認識する。【解決手段】文字列の濃淡画像から個々の文字画像を切り出した後に、各文字画像に順に着目して各種文字のモデル画像による照合処理を行うによって各文字画像に対応する文字を認識する文字認識装置において、ユーザの選択操作などに基づき、複合文字のモデル画像を所定の識別情報が付与された状態で登録する。識別情報付きのモデル画像に対し、着目中の文字画像とその隣の未処理の文字画像とを含む範囲の画像を照合する複合照合を実行し、この照合によりあらかじめ定めた基準値を上回る一致度が得られたとき、その複合照合の対象範囲に含まれる２つの文字画像の組み合わせを、照合された識別情報付きのモデル画像に対応する文字であると認識する。【選択図】図８
2013171310.tif 000002
【特許請求の範囲】
【請求項１】
文字列の撮像により生成された濃淡画像から前記文字列内の個々の文字を切り出し、切り出された文字画像に順に着目して複数種の文字のモデル画像との照合により各モデル画像に対する着目中の文字画像の一致度を求め、これらの一致度に基づき前記文字画像に対応する文字を認識する文字認識方法において、
幅方向に沿って並ぶ一対の文字要素から成る複合文字のモデル画像を、所定の識別情報が付与された状態で登録し、
前記識別情報付きのモデル画像との照合処理において、着目中の文字画像とその隣の未処理の文字画像とを含む範囲の画像を当該モデル画像と照合する複合照合を実行し、複合照合により得た一致度があらかじめ定めた基準値を上回ったとき、その複合照合の対象範囲に含まれる２つの文字画像の組み合わせを、照合された識別情報付きのモデル画像に対応する文字であると認識する、
ことを特徴とする文字認識方法。
【請求項２】
前記識別情報付きのモデル画像との照合処理では、着目中の文字画像のみを当該モデル画像と照合する単独照合を実行すると共に、少なくとも単独照合で得た一致度が前記基準値を下回ったときに前記複合照合を実行し、
前記単独照合により得た一致度が前記基準値を上回ったときは、着目中の文字画像のみが識別情報付きのモデル画像が示す文字であると認識し、複合照合により得た一致度が前記基準値を上回ったときは、この複合照合の対象範囲に含まれる２つの文字画像の組み合わせが識別情報付きのモデル画像が示す文字であると認識する、
請求項１に記載された文字認識方法。
【請求項３】
文字列の撮像により生成された濃淡画像を認識対象として入力する画像入力手段と、複数種の文字のモデル画像が登録されたモデル記憶手段と、前記画像入力手段により入力された濃淡画像から前記文字列内の個々の文字を切り出す文字切り出し手段と、切り出された文字画像に順に着目して前記登録手段に登録された複数のモデル画像との照合により各モデル画像に対する着目中の文字画像の一致度を求め、これらの一致度に基づき前記文字画像に対応する文字を認識する認識手段と、切り出された各文字画像に対して前記認識手段が認識した文字を連ねた文字列を、認識結果として出力する出力手段とを、具備する文字認識装置であって、
幅方向に沿って並ぶ一対の文字要素から成る複合文字のモデル画像を、所定の識別情報が付与された状態にして前記モデル記憶手段に登録する登録処理手段をさらに備え、
前記認識手段は、
前記識別情報付きのモデル画像との照合処理において、着目中の文字画像とその隣の未処理の文字画像とを含む範囲の画像を前記識別情報付きのモデル画像と照合する複合照合を実行する機能を具備すると共に、この複合照合により得た一致度があらかじめ定めた基準値を上回ったとき、その複合照合の対象範囲に含まれる２つの文字画像の組み合わせを、照合された識別情報付きのモデル画像に対応する文字であると認識する、
ことを特徴とする文字認識装置。
【請求項４】
前記登録処理手段は、前記モデル記憶手段への登録候補の文字画像または登録済みのモデル画像を表示して、複合文字のモデル画像として登録する対象の画像を選択する操作を受け付け、選択された画像の表示を所定の識別マークによる識別表示に切り替えると共に、選択された画像に前記識別情報を付与してモデル記憶手段に登録する、請求項３に記載された文字認識装置。
【請求項５】
文字列の撮像により生成された濃淡画像から当該画像中の文字列内の個々の文字を切り出す文字切り出し手段と、切り出された文字画像に順に着目してあらかじめ登録された複数種のモデル画像との照合により各モデル画像に対する文字画像の一致度を求め、これらの一致度に基づき前記文字画像に対応する文字を認識する認識手段と、切り出された各文字画像に対して前記認識手段が認識した文字を連ねた文字列を、認識結果として出力する出力手段とを具備する文字認識装置として、コンピュータを動かすためのプログラムであって、
幅方向に沿って並ぶ一対の文字要素から成る複合文字のモデル画像を、所定の識別情報が付与された状態にして前記モデル記憶手段に登録する登録処理手段を前記文字認識装置に設けるためのプログラムが含まれており、
前記認識手段は、
識別情報付きのモデル画像との照合処理において、着目中の文字画像とその隣の未処理の文字画像とを含む範囲の画像を前記識別情報付きのモデル画像と照合する複合照合を実行する機能を具備すると共に、複合照合により得た一致度があらかじめ定めた基準値を上回ったとき、その複合照合の対象範囲に含まれる２つの文字画像の組み合わせを、照合された識別情報付きのモデル画像に対応する文字であると認識する、
ことを特徴とする文字認識処理用のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理による文字認識処理に関するもので、特に、幅方向に沿って並ぶ一対の文字要素から成る複合文字を認識するための技術に関する。
【背景技術】
【０００２】
文字認識処理では、一般に、文字列の撮像により生成された濃淡画像から個々の文字を切り出し、切り出された文字毎に、各種文字モデルを用いたマッチング処理（モデルマッチング）を実施して文字列の内容を認識する。文字の切り出し処理では、処理対象の画像の２値化データまたは濃淡データをｘ，ｙの各軸方向に対して投影し、各軸に生成された投影パターンから文字に対応する箇所を抽出しすることにより、個々の文字に対応する領域（以下「文字領域」という。）を特定する。
【０００３】
マッチング処理の精度を確保するには、認識対象の文字毎に文字領域が特定される必要があるが、それぞれ独立した文字要素が文字列に対応する幅方向に沿って並ぶ構成の複合文字では、各文字要素が個別に切り出されて、誤ったマッチング処理が行われることがある。
【０００４】
上記の問題に関して、特許文献１には、あらかじめ学習した漢字の偏の部分に対する信頼度が大きい文字候補が抽出された場合には、間違った切り出しが行われたと判定して、偏に適合する文字候補とその次の文字候補とを一緒に一文字として新たに切り出すことが記載されている（段落００３３等を参照。）。
【０００５】
また特許文献２には、文字切り出し後に仮マッチング処理を行ってマッチング信頼度を算出し、マッチング信頼度が所定の基準値以上であるなどの条件を満たした文字候補に基づき全角文字の標準文字長を決定した後に、認識した標準文字長に基づいて認識対象の全ての文字を切り出して本マッチング処理を行うことが記載されている（請求項１等を参照。）。さらに、仮マッチング処理において２つの部品文字を結合してできる文字（たとえば漢字の「日」と「月」とを組み合わせた「明」）が抽出された場合には、この文字を標準文字長の決定に利用しないようにすることが記載されている（段落００１５〜００２２，００６１〜００６８，００８９等を参照。）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平９−２８２４１７号公報
【特許文献２】特開２０１０−４４４８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献２には、一対の文字要素（「日」と「月」など）の組み合わせは、一文字を表すのか、２つの文字を表すのかが不明である点が示唆されている。このような単独でも文字として認識し得る文字要素が組み合わせられた複合文字では、各文字要素が個別に認識された場合の一致度が高くなるため、認識の誤りが見逃されるおそれが高い。
【０００８】
しかし、特許文献１には、一方の文字要素の特徴に基づき文字の切り出しに誤りがあったことを認識して切り出し処理をやり直す、という思想しか示されていない。
特許文献２に記載の発明によれば、２つの文字要素の組み合わせの幅が標準文字幅に近ければ、この組み合わせは一文字として切り出されるが、欧文文字による文字列のような文字サイズのばらつきが大きい文字列にこのような認識方法を採用すると、誤認識が生じる可能性がある。また、複合文字が単独で認識対象となる場合には、特許文献２に記載の認識方法を採用することはできない。
【０００９】
本発明は上記の問題点に着目し、個々の文字要素を単独で照合した場合に得られる一致度や個々の文字要素のサイズの変動に影響されることなく、複合文字を精度良く識別することを、課題とする。
【課題を解決するための手段】
【００１０】
本発明による文字認識方法は、文字列の撮像により生成された濃淡画像から文字列内の個々の文字を切り出し、切り出された文字画像に順に着目して複数種の文字のモデル画像との照合により各モデル画像に対する着目中の文字画像の一致度を求め、これらの一致度に基づき文字画像に対応する文字を認識するものである。
【００１１】
上記の課題を解決するために、本発明では、幅方向に沿って並ぶ一対の文字要素から成る複合文字のモデル画像を、所定の識別情報が付与された状態で登録する。
また、識別情報付きのモデル画像を用いた照合処理において、着目中の文字画像とその隣の未処理の文字画像とを含む範囲の画像を当該モデル画像と照合する複合照合を実行する。そして、複合照合により得た一致度があらかじめ定めた基準値を上回ったとき、その複合照合の対象範囲に含まれる２つの文字画像の組み合わせを、照合された識別情報付きのモデル画像に対応する文字であると認識する。
【００１２】
たとえば、横書きの文字列が認識対象となる場合には、一対の文字要素が左右に並ぶ構成の文字について、複合文字のモデル画像が登録される。また、認識処理では、文字の切り出し後に、切り出された文字に文字列に沿って順に着目して、各種文字のモデル画像との照合処理が実施される。この場合の複合照合では、着目中の文字画像とその隣の未処理の文字画像とを含む範囲の画像が照合対象に設定される。
【００１３】
複合照合の対象範囲内の文字画像の組み合わせが複合文字に該当しないものであれば、一致度は低くなるはずであるが、２つの文字画像の組み合わせが複合文字に該当する場合には、高い一致度が得られると考えられる。
よって、複合文字の各文字要素がそれぞれ独立で照合されて、その形状に類似する文字のモデル画像に対して高い一致度が得られたとしても、複合照合の結果が優先されるので、複合文字に対する誤認識を防止することができる。
【００１４】
上記方法の一実施態様では、識別情報付きのモデル画像との照合処理では、着目中の文字画像のみを当該モデル画像と照合する単独照合を実行すると共に、少なくとも単独照合で得た一致度が基準値を下回ったときに複合処理を実行する。そして、単独照合により得た一致度が基準値を上回ったときは、着目中の文字画像のみに識別情報付きのモデル画像が示す文字であると認識し、複合照合により得た一致度が基準値を上回ったときは、この複合照合の対象範囲に含まれる２つの文字画像の組み合わせが識別情報付きのモデル画像が示す文字であると認識する。
【００１５】
上記の実施態様によれば、複合文字の各文字要素が１つの文字画像として切り出された場合には、単独照合による一致度が高くなり、その認識結果が採用されるので、複合文字を正しく認識することができる。また、複合文字の各文字要素がそれぞれ個別の文字画像として切り出された場合にも、複合照合に基づく認識結果が採用されるので、各文字要素がそれぞれ独立の文字として認識されるのを防ぐことができる。
【００１６】
本発明による文字認識装置は、文字列の撮像により生成された濃淡画像を認識対象として入力する画像入力手段と、複数種の文字のモデル画像が登録されたモデル記憶手段と、画像入力手段により入力された濃淡画像から文字列内の個々の文字を切り出す文字切り出し手段と、切り出された文字画像に順に着目して登録手段に登録された複数のモデル画像との照合により各モデル画像に対する着目中の文字画像の一致度を求め、これらの一致度に基づき文字画像に対応する文字を認識する認識手段と、切り出された各文字画像に対して認識手段が認識した文字を連ねた文字列を、認識結果として出力する出力手段とを具備する。
【００１７】
さらにこの文字認識装置は、上記の認識方法を実施するために、幅方向に沿って並ぶ一対の文字要素から成る複合文字のモデル画像を、所定の識別情報が付与された状態にしてモデル記憶手段に登録する登録処理手段を備える。また、認識手段は、識別情報付きのモデル画像との照合処理において、着目中の文字画像とその隣の未処理の文字画像とを含む範囲の画像を識別情報付きのモデル画像と照合する複合処理を実行する機能を具備すると共に、複合処理により得た一致度があらかじめ定めた基準値を上回ったとき、その複合照合の対象範囲に含まれる２つの文字画像の組み合わせを、照合された識別情報付きのモデル画像に対応する文字であると認識する。
【００１８】
上記の文字認識装置の一実施形態では、登録処理手段は、モデル記憶手段への登録候補の文字画像または登録済みのモデル画像を表示して、複合文字のモデル画像として登録する対象の画像を選択する操作を受け付ける。そして、選択された画像の表示を所定の識別マークによる識別表示に切り替えると共に、当該画像に識別情報を付与してモデル記憶手段に登録する。
この実施形態によれば、認識に必要な複合文字をユーザ自身が指定して、複合文字のモデル画像として登録することができる。
【００１９】
さらに、本発明は、上記の文字認識装置としてコンピュータを動かすためのプログラムを提供する。
【発明の効果】
【００２０】
本発明によれば、幅方向に沿って並ぶ一対の文字要素から成る複合文字を、各文字要素がそれぞれ独立してモデル画像に照合された場合の一致度の高さや文字要素のサイズに影響されることなく、精度良く認識することが可能になる。
【図面の簡単な説明】
【００２１】
【図１】文字認識装置の構成例を示すブロック図である。
【図２】文字認識処理において表示される画面の例を処理に応じた表示の変化と共に示す図である。
【図３】文字認識処理の手順を示すフローチャートである。
【図４】文字列に沿う方向に対する投影処理のために設定されるラインの概念を示す図である。
【図５】投影パターンに対する基準直線の設定方法を示す図である。
【図６】文字列に沿う方向に対する投影処理（図３のステップＳ５）の詳細な手順を示すフローチャートである。
【図７】複合文字が誤って認識される例を示す図である。
【図８】複合文字モデルを登録するための画面の例を示す図である。
【図９】マッチング処理の手順を示すフローチャートである。
【図１０】図９の続きの手順を示すフローチャートである。
【発明を実施するための形態】
【００２２】
図１は、本発明が適用される文字認識処理装置の構成例を示す。
この文字認識処理装置は、文字列を対象にした撮像を行い、生成された画像中の文字を読み取ってその読み取り結果を出力するもので、制御部１０を含む本体部１、撮影用のカメラ２、表示部３、操作部４などにより構成される。表示部３は、たとえば液晶モニタにより構成され、操作部４にはマウスやキーボードが含まれる。
【００２３】
本体部１は、汎用のコンピュータ装置（パーソナルコンピュータ）であって、ＣＰＵを含む制御部１０のほか、主記憶部１１、画像メモリ１２、撮像インタフェース１３、表示用インタフェース１４、入力用インタフェース１５、外部インタフェース１６、外部ディスク用読取部１７などを有する。
【００２４】
主記憶部１１はたとえばハードディスクであり、画像メモリ１２はたとえばＲＡＭボードである。主制御部１１には、外部ディスク用読取部１７により外部ディスク１８から読み取られた専用のプログラムや、文字認識処理に用いられるフォントデータなどが登録される。カメラ２から出力された画像は、撮像インタフェース１３に取り込まれてディジタル変換された後、変換後の画像データが画像メモリ１２に格納される
【００２５】
制御部１０には、主記憶部１１に格納されたプログラムによって、画像メモリ１２に格納された画像から文字を１文字ずつ切り出す機能と、切り出された文字の内容を認識する機能とが設定される。また、制御部１０には、これらの処理でユーザに提示されるグラフィカルユーザインタフェースとしての機能も設定される。この機能により、制御部１０は、表示用インタフェース１４を介して表示部３に処理対象の画像を含む画面を表示し、入力用インタフェース１５を介して操作部４による操作を受け付ける。
【００２６】
この実施例の文字認識処理装置では、処理対象の画像を表示する画面において、文字の読み取りを指示する操作を受け付けた後、後述する図３の処理により画像中の文字を認識し、認識結果を画面に表示する。また、外部インタフェース１６を介して、認識結果を外部の機器に出力することも可能である。
【００２７】
図２は、文字認識処理のために表示部３に表示される画面の例を示す。
この例の画面３０には、認識対象の文字列の画像の表示欄３１、分析結果の表示欄３２、読み取りボタン３３、モデル登録ボタン３４などが含まれる。なお、この例では、画像の右端部にシェーディングが生じているものとして、斜線によって影を表している。
【００２８】
図２（１）は、読み取り処理が開始される前の画面であって、画像表示欄３１内の画像には、ユーザにより設定された処理対象領域を示す矩形枠３５が表示されている。ユーザは、マウスの操作などにより矩形枠３５の位置および大きさを定めることにより処理対象領域を設定し、続いて読み取りボタン３３を操作する。この操作により、制御部１０は、矩形枠３５に対応する領域を処理対象領域と認識して、その領域内の画像に対する文字認識処理（文字の切り出しおよびマッチング処理を含む。）を実施し、画面を図２（２）に示すように変化させる。
【００２９】
認識処理後の画面３０の画像表示欄３１では、各文字がそれぞれ切り出し処理により特定された文字領域を示す枠３６により囲まれる。また、各枠３６の左上位置には、その枠３６内の画像から読み取られた文字が表示されている。また、画像表示欄３１の右手の余白には、文字領域毎の認識結果から導き出された文字列が、読み取り結果として表示される。また、文字列の下方には、この文字列に最も適合したフォントの名称（Ｆ１）が表示される。
【００３０】
ブランク状態であった分析結果の表示欄３２にも、文字の切り出しのための投影処理により生成された投影パターンＰが、切り出しの基準として設定された直線Ｍ（以下、「基準直線Ｍ」という。）と共に表示される。
【００３１】
以下、文字が背景より暗い横並びの文字列を認識対象とすることを前提として、この例で実施される認識処理を詳細に説明する。
【００３２】
図３は、文字認識のために制御部１０により実施される処理の概略手順を示す。
この処理は、図２に示した画面で処理対象領域が設定され、読み取りボタン３３が操作されたことに応じて開始される。最初に、制御部１０は、矩形枠３５の位置情報に基づき、処理対象領域内の画像を取得する（ステップＳ１）。
【００３３】
図２の例では、一列分の文字列を含む範囲が指定されたとして説明したが、実際には、複数列の文字列を含む範囲が指定される場合もある。この点を考慮して、ステップＳ２では、まずｙ軸に対する投影処理を行い、生成された投影パターンにより文字列を１列ずつに切り分ける（ステップＳ２）。
【００３４】
以下、切り分けられた文字列を順に処理対象に設定して、ステップＳ４以下の処理を実行する。
ステップＳ４では、先の文字列の切り分け処理の結果に基づき、ｙ軸における処理範囲の上限値ｙ１と下限値ｙ２とを設定する（文字列に対応すると判別された範囲より若干外側のｙ座標をｙ１，ｙ２とする。）。ステップＳ５では、これらｙ１からｙ２までの範囲内の画像を対象にして、ｘ軸に対する投影処理を実行する。
【００３５】
上記の処理によりｘ軸方向に沿う投影パターンが生成されると、ステップＳ６において、投影パターンから極大値と極小値とを抽出し、続くステップＳ７において、極大値の分布に近似する直線と極小値の分布に近似する直線とを導出する。さらにステップＳ８では、これら２本の近似直線に基づき、切り出し対象範囲を特定するための基準直線Ｍを設定する。
【００３６】
ステップＳ９では、投影パターン内の各値を上記の基準直線Ｍと照合し、切り出し対象範囲を特定する。そして、切り出し対象範囲毎に、その範囲の左右端縁のｘ座標とｙ軸の処理対象範囲を示す座標ｙ１，ｙ２とに基づき、文字領域を抽出し（ステップＳ１０）、各種フォントデータに含まれる文字モデル（文字画像のモデル）を用いたマッチング処理を実行する（ステップＳ１１）。
【００３７】
この後は、ステップＳ３に戻り、未処理の文字列がある場合（ステップＳ３が「ＮＯ」）には、未処理の一文字列に対してステップＳ４〜Ｓ１１を実行する。全ての文字列に対する処理が終了すると（ステップＳ３が「ＹＥＳ」）、ステップＳ１２に進んで認識結果を出力する。この出力をもって、ユーザの指示に対する処理が終了する。
【００３８】
上記の処理のうち、ｙ軸に対する投影処理（ステップＳ２）では、処理対象領域内のｘ軸に沿うライン毎に、そのライン内の最小濃度を投影する。このようにすれば、１画素でも文字の画像が含まれるラインからは文字の画像の濃度が投影され、文字の画像を全く含まないラインからのみ背景部分の濃度が投影されるので、ｙ軸方向においては、文字列全体を含む範囲を精度良く抽出することができる。
【００３９】
文字列に沿うｘ軸に対する投影処理（ステップＳ５）では、投影対象位置毎に傾きが異なる複数のラインを設定して、各ラインの最小濃度を抽出し、抽出された最小濃度の中の最大値を投影値として採用する。このラインの設定方法を図４に示す。図中のｘｉは投影対象位置のｘ座標であり、ｙ１，ｙ２はｙ軸における処理範囲の上限値および下限値（ステップＳ４で求めたもの）である。
【００４０】
図４を参照して、座標ｘｉに対して設定される投影用のラインの概念を言うと、座標ｘｉを通りｙ軸に並行なラインＬ０を、点（ｘｉ，ｙ１）と点（ｘｉ，ｙ２）との中点を軸に左右に所定角度αまでの範囲で回転させる間に生じる各ラインが、それぞれ座標ｘｉに対する投影用のラインとなる。制御部１０が実行するアルゴリズムでは、ｙ軸方向の処理対象範囲ｙ１，ｙ２の位置における座標ｘｉからの距離ｄを用いてラインの傾きを変更するため、角度αに代えて、距離ｄの最大値Ｄαが設定される。
【００４１】
通常の投影処理のように、ｙ軸に沿うラインＬ０のみを投影の方向とした場合、図４の例のように、文字の間の隙間が狭く、その狭い隙間に隣の文字の一部が突出し、その突出部分がラインＬ０に載る状態になることがある。したがって、ｙ軸に対する投影処理と同じ手法に基づき、ｙ軸に沿うラインＬ０内の最小濃度をｘｉに投影すると、図４の例のｘｉには文字の濃度が投影されてしまう。
【００４２】
この点に鑑み、この実施例では、様々な傾きのラインを設定して、ライン毎にそのラインの最小濃度を抽出し、抽出された濃度の中の最大値を座標ｘｉへの投影値として採用する。背景部分が文字より明るい画像では、図４中のラインＬ２のように、隙間部分のみを通過するラインで抽出される最小濃度が最大となるので、この最大の濃度が座標ｘｉに投影される。よって、文字間の隙間部分の濃度が反映されて、文字に対応する箇所が谷となり、隙間部分に対応する箇所が山となる投影パターンが生成される。
【００４３】
図５は、上記の投影処理により生成された投影パターンＰの例（ｘ座標を横軸とし、濃度を縦軸とするもの）を、基準直線Ｍを設定する方法と共に示す。
図中のＭ１，Ｍ２は、図３のステップＳ７で求められた近似直線である。先に説明したように、このステップＳ７では、投影パターン中の極大値の変化に近似する直線Ｍ１と極小値の変化に近似する直線Ｍ２とを求める。次のステップＳ８では、たとえば、ｘ座標を１つずつ動かして、各直線Ｍ１，Ｍ２の着目中のｘ座標に該当する点どおしを組み合わせて、これらの点の中点（各点の濃度の平均値による。）を求め、各中点の分布に近似する直線を設定し、この第３の近似直線を基準直線Ｍとする。
【００４４】
基準直線Ｍの設定方法は、上記に限定されるものではない。たとえば、処理対象領域の両端点の座標ｘ１，ｘ２のみを対象に、直線Ｍ１上の対応点と直線Ｍ２上の対応点との中点を求め、各中点を結ぶ、という簡易な方法によって、基準直線Ｍを設定してもよい。または直線Ｍ１，Ｍ２を設定することなく、極大値および極小値の分布のパターンに基づき、直線Ｍの高さや傾きを決定してもよい。
【００４５】
図５の投影パターンは、図２（２）の欄３２内に示したものと同じであるので、再び図２（２）を参照する。この実施例で認識対象とした画像には、右側端縁部にシェーディングが発生しているので、投影パターンＰ内の山も、左から右に向かうにつれて低くなり、文字を表す谷部分と山部分との差も縮小している。しかし、この濃度の変化に応じて、基準曲線Ｍも左上から右下に向かって傾き、シェーディングの発生箇所においても、隙間部分を反映した山と文字を反映した谷とを切り分けることが可能な位置に基準直線Ｍが位置づけられている。よって、シェーディングによる濃度の変化の影響を受けることなく、基準直線Ｍに基づき個々の文字に対応する範囲を切り出すことが可能である。
【００４６】
図６は、ｘ軸に対する投影処理（図３のステップＳ５に相当）の詳細な手順を示す。以下、この図６のほか、前出の図４，図５も合わせて参照しつつ、投影処理の手順を説明する。
【００４７】
図６では、図４の例に合わせて、ｘ軸上の投影対象位置の座標をｘｉとする。このｘｉには、初期値として処理対象領域の左端縁のｘ座標ｘ１が設定される（ステップＳ１０１）。以下、ｘｉが処理対象領域の右端縁のｘ座標のｘ２になるまでで、ｘｉが１画素ずつ動かされて（ステップＳＴ１１０，１１１）、以下の処理が実行される。
【００４８】
まず、ステップＳ１０２において、最小濃度の最大値ＭＡＸに初期値の０を設定すると共に、ずれ量ｄに初期値として−Ｄαを設定する。Ｄαが正の値であるとすると、ｄの初期値は負の値となる。
【００４９】
ステップＳ１０３では、座標（ｘｉ＋ｄ，ｙ１）と座標（ｘｉ−ｄ，ｙ２）とを結ぶラインを設定する。ステップＳ１０１，Ｓ１０２で設定したｘｉ，ｄの初期値によれば、初回に設定されるラインは図４のラインＬ１となる。一方、ｄ＝Ｄαとなったときには、図４のラインＬ２が設定されることになる。
【００５０】
よって、ずれ量ｄがＤαになるまでｄを１ずつ増やして（ステップＳ１０７，１０８）毎回のｄにつきステップＳ１０３を実行することにより、ラインＬ１からＬ２までの範囲で、毎回、異なる傾きのラインが設定される。またステップＳ１０４において、設定されたライン内の最小濃度Ｉｍｉｎが抽出される。さらにＩｍｉｎが最大値ＭＡＸを超える場合には、ＭＡＸがＩｍｉｎに書き換えられる（ステップＳ１０５，Ｓ１０６）。ＩｍｉｎがＭＡＸ以下の場合（ＳＴ１０５が「ＮＯ」）には、ＭＡＸは現在値で維持される。
【００５１】
このように、投影対象の一点ｘｉに対し、傾きが異なる複数のラインを設定してライン毎に最小濃度を求めると共に、それらの中の最大値ＭＡＸを抽出する。全てのラインに対する処理が終了すると（ステップＳ１０８が「ＹＥＳ」）、その時点での最大値ＭＡＸが座標ｘｉの投影値Ｐ（ｘｉ）に設定される（ステップＳ１０９）。
【００５２】
上記の処理が毎時の座標ｘｉに対して実行され、ｘｉが終点であるｘ２に設定されて上記の投影値の設定が終了すると、ステップＳ１１１が「ＹＥＳ」となり、投影処理を終了する。
【００５３】
なお、上記の例とは反対に、背景よりも文字の方が明るい画像を処理対象とする場合には、各ラインではそれぞれそのラインにおける最大濃度を抽出し、抽出された濃度の中の最小値を投影値として選択する。これにより、文字に対応する箇所が山になり、隙間部分に対応する箇所が谷となる投影パターンが生成される。この投影パターンに対しても、図５に示したのと同様の手法で、２本の近似直線Ｍ１，Ｍ２を設定し、これらの直線Ｍ１，Ｍ２の中間位置に基準直線Ｍを設定するが、切り出しの対象範囲は、投影パターンの中で基準直線Ｍより濃度が高い範囲となる。
【００５４】
図１の主記憶部１１に登録される認識処理用のプログラムは、背景よりも文字が暗い画像に対する処理を実行するように設定されているが、背景よりも文字が明るい画像に対する処理を実行するためのプログラムも組み込み、いずれのプログラムによる認識処理を実行するかをユーザの選択に応じて決定してもよい。
【００５５】
また、上記の例では、極大値の分布範囲と極小値の分布範囲との真ん中あたりに基準曲線Ｍが設定されるようにしたが、あらかじめ定めたオフセット値により基準直線Ｍの高さを調整してもよい。
【００５６】
さらにこの実施例では、図２に示した画面において、ユーザが欄３２内の基準直線をドラッグする操作によって、基準直線Ｍの高さや傾きを変更することもできる。よって、自動的な文字の切り出し処理に失敗した場合には、ユーザは欄３２内の投影パターンの山や谷との関係に基づき基準直線Ｍを変更した後に、再度読み取りボタン３３を操作することによって、正しい認識結果を得ることができる。
【００５７】
以上に述べたように、この実施例では、文字の間に僅かでも隙間があれば、その隙間と文字とを精度良く切り分けることが可能である。しかし、隙間を隔てて左右に並ぶ２つの文字要素から成る複合文字を認識する場合には、各文字要素がそれぞれ個別に切り出されて、マッチング処理も文字要素毎に行われてしまう。しかも、図７に示すように、左右の文字用度がともに独立でも文字として認識できる形態をとる場合には、マッチング処理でも高い一致度をもって誤認識されるので、誤認識であることを看過するのが困難である。
【００５８】
そこでこの実施例では、隙間を隔てて左右に並ぶ文字要素から成る複合文字の文字モデルに識別用のフラグを設定し、マッチング処理では、このフラグにより、複合文字用の文字モデルと一般の文字モデルとを見分けて、モデルの種によって異なる内容の処理を実行する。
【００５９】
図８は、複合文字用のモデル（以下、「複合文字モデル」という。）を設定するための画面の例を示す。この実施例では、主記憶部１１に、様々なフォントデータによる文字モデルが登録されていることを利用して、制御部１０が、特殊文字として登録されている文字モデルのリストを作成し、図示例のような設定画面４０を表示部３に表示する。設定画面４０の中央部には、特殊文字のリストを表示するウィンドウ４１が配置され、余白に、登録ボタン４２などが設けられている。
【００６０】
ユーザが、リスト内の所定の文字の上でクリック操作を行うと、その文字の横幅方向の中央部に輝度の高い色彩による縦棒ＶＰが表示される。この縦棒ＶＰは、複合文字モデルの候補として選択されたことを示すマークであるが、この段階では、複合文字フラグは設定されていない。ユーザが、再度のクリック操作を行うと、縦棒ＶＰは消失する。
【００６１】
この仕組みを利用して、ユーザは、ウィンドウ４１内に表示された文字の中から複合文字モデルとして登録する必要がある文字モデルを選択し、縦棒ＶＰの表示により選択状況を確認してから登録ボタン４２を操作する。この操作に応じて、選択された文字モデルに複合文字であることを示すフラグ（以下、「複合文字フラグ」という。）が設定される。また、画面の下部に登録が完了したことを示すメッセージ４３が表示される。
【００６２】
なお、縦棒ＶＰは単なるマークであって、単に、選択された文字モデルの横幅の中央位置に設定されるだけである。したがって、縦棒ＶＰに限らず、他の形態によるマークを表示してもよい。
また、複合文字モデルとして登録される画像はフォントデータによるものに限らず、たとえば認識対象の印刷物の画像に含まれる複合文字をユーザの操作により切り出して、登録してもよい。ただし、この場合には、登録先のフォントデータのサイズに応じて複合文字モデルの倍率を調整する必要がある。
【００６３】
複合文字フラグを設定する処理はユーザの操作に応じて行うものに限らない。たとえば、制御部１０でフォントデータを分析して、左右に分離している形態をとる文字モデルを抽出し、抽出された文字モデルに複合文字フラグを設定してもよい。または、開発者により作成された複合文字モデルの辞書データを、適宜、主記憶部１１にインストールしてもよい。
【００６４】
図９および図１０は、複合文字モデルを含む文字モデル群を用いたマッチング処理（図３のステップＳ１１に対応）の詳細な手順を示す。
この処理では、図３のステップＳ１０までの処理により抽出された文字領域に、文字列に沿って１つずつ着目する。まず着目する文字領域を示すカウンタｋに初期値の１にセットし（ステップＳ２０１）、ｋ番目の文字領域の画像Ｇｋを取得する（ステップＳ２０２）。以下、この画像Ｇｋを文字画像Ｇｋという。
【００６５】
つぎに、照合対象のモデルを特定するカウンタｊに初期値の１をセットし（ステップＳ２０３）、ｊ番目の文字モデルＭｊを読み出す（ステップＳ２０４）。そして、この文字モデルＭｊと文字画像Ｇｋとを照合して、両者の一致度を算出する（ステップＳ２０５）。さらに算出された一致度を所定の基準値Ｒと比較する（ステップＳ２０６）。なお、このステップＳ２０５では、文字モデルＭｊの倍率を複数とおりに変更して倍率毎に照合処理を実施し、その中の最も高い一致度を採用する。
【００６６】
一致度がＲ以上であれば（ステップＳ２０６が「ＹＥＳ」）、上記の照合の内容を示す照合結果情報（照合に用いた文字モデルＭｊの識別コード、一致度、その一致度が得られたときのモデルＭｊの倍率などが含まれる。）を保存する（ステップＳ２０７）。一致度がＲより小さい場合（ステップＳ２０６が「ＮＯ」）には、照合結果情報を保存することなく、ステップＳ２０８に進む。
【００６７】
ここで制御部１０は、文字モデルＭｊに複合文字フラグが設定されているか否かをチェックする。フラグが設定されている場合には、ステップＳ２０８が「ＹＥＳ」となってステップＳ２０９に進み、文字画像Ｇｋおよびｋ＋１番目の文字領域の画像Ｇｋ＋１（文字画像Ｇｋの隣の文字認識がされていない文字画像）を含む範囲の画像を抽出する。そして，抽出した画像を文字モデルＭｊと照合して両者の一致度を算出し（ステップＳ２１０）、その一致度を基準値Ｒと比較する（ステップＳ２１１）。ステップＳ２１０でも、ステップＳ２０５と同様に、文字モデルＭｊの倍率を複数とおりに変更して倍率毎に照合処理を実施し、その中の最も高い一致度を採用する。
【００６８】
上記の一致度が基準値Ｒ以上であれば（ステップＳ２１１が「ＹＥＳ」）、照合結果情報を保存する（ステップＳ２１２）。この場合の照合結果情報には、文字モデルＭｊの識別コード、一致度、倍率のほか、隣の文字画像Ｇｋ＋１までの範囲を照合対象とした複合照合が行われたことが書き込まれる。
【００６９】
以下、照合対象として設定されているすべての文字モデルとの照合が終了するまで、カウンタｊを更新することにより照合対象の文字モデルＭｊを変更し（ステップＳ２１３，２１４）、毎回の文字モデルＭｊに対して同様の処理を実行する。この間に保存された照合結果情報により、着目中の文字領域に対して基準値Ｒ以上の一致度を得た文字モデルのリストが作成される。
【００７０】
ここから参照を図１０に移す。
最後の文字モデルによる処理が終了すると、制御部１０は、保存された照合結果情報の中に、複合文字モデルとの照合により基準値Ｒより高いＲ０以上の一致度を得たことを示す情報があるか否かをチェックする（ステップＳ２１５）。該当する情報が見つかった場合（ステップＳ２１５が「ＹＥＳ」）には、その照合結果情報を分析して、その情報が文字画像Ｇｋが単独で照合されたことを示すものか否かをチェックする（ステップＳ２１６，Ｓ２１７）。単独の照合ではなく、隣の文字画像Ｇｉ＋１を含む範囲を複合文字モデルと照合したことによりＲ０以上の一致度が得られた場合（ステップＳ２１７が「ＮＯ」）には、当該複合文字モデルが示す文字をＧｋおよびＧｋ＋１の組み合わせにあてはめ（ステップＳ２１８）、カウンタｋに２を加える（ステップＳ２１９）。
【００７１】
分析された照合結果情報が、文字画像Ｇｋが単独で複合文字モデルと照合されてＲ０以上の一致度が得られたことを示す場合（ステップＳ２１７が「ＹＥＳ」）には、文字画像Ｇｋのみに当該複合文字モデルが示す文字をあてはめ（ステップＳ２２０）、カウンタｋに１を加える（ステップＳ２２１）。
【００７２】
一致度がＲ０以上となる複合文字モデルが認められない場合（ステップＳ２１５が「ＮＯ」）には、最も高い一致度が得られた文字モデルを特定する（ステップＳ２２２）。
特定された文字モデルが複合文字モデルであれば（ステップＳ２２３が「ＹＥＳ」）、ステップＳ２１７〜Ｓ２２１において先に述べたのと同様の手順を実行する。これにより、文字画像Ｇｋとその隣の文字画像Ｇｋ＋１とを含む範囲が複合文字モデルと照合されたときの一致度が最も高い場合には、文字画像ＧｋおよびＧｋ＋１の組み合わせに複合文字モデルが示す文字があてはめられ（ステップＳ２１８）、文字画像Ｇｋが単独で複合文字モデルと照合されたときの一致度が最も高い場合には、文字画像Ｇｋに複合文字モデルが示す文字があてはめられる（ステップＳ２２０）。
【００７３】
一般の文字モデルに対する一致度が最も高くなった場合（ステップＳ２２３が「ＮＯ」）には、ステップＳ２２０およびＳ２２１を実行する。これにより、一致度が最も高い一般文字モデルが示す文字が文字画像Ｇｋにあてはめられる。
【００７４】
上記のとおり、複合文字モデルとの照合によりＲ０以上の一致度が得られた照合処理がある場合や、複合文字モデルに対する一致度が一般の文字モデルに対する一致度より高くなった場合には、複合文字モデルによる照合結果を優先して採用する。また、その採用される照合結果が、処理対象の文字画像Ｇｋとその隣の未処理の文字画像Ｇｋ＋１とを含む範囲を対象にした照合が行われたことを示す場合には、文字画像ＧｋとＧｋ＋１との組み合わせに複合文字モデルが示す文字をあてはめた後、ステップＳ２１９でカウンタｋに２を加える。このステップＳ２１９のカウント処理により、文字画像ＧＫとともに文字画像Ｇｋ＋１も、認識済みとなる。
【００７５】
上記の処理によれば、文字の切り出しにおいて、複合文字が左右に分離されて切り出された場合でも、精度の高いマッチング処理によって誤認識が生じるのを防止することができる。特に、図７に示したような、一般的な文字の組み合わせ（ＤＺ）に部分一致する形式の複合文字を認識する場合の認識精度を、大幅に高めることができる。
【００７６】
なお、上記の実施例では、複合文字のモデル画像による照合処理において、着目中の文字画像Ｇｋのみを対象とする単独照合と、文字画像Ｇｋとその隣の未処理の文字画像Ｇｋ＋１とを含む範囲を対象とする複合照合との双方を実行したが、これに限らず、単独照合による一致度が基準値Ｒ０より低い場合にのみ複合照合を実行するようにしてもよい。
【００７７】
加えて、上記の実施例では、投影対象のライン内の最小濃度を投影するという手法により文字の切り出しを行っているが、一般的な投影処理による文字の切り出しが行われる場合にも、同様のマッチング処理を適用することができる。
【符号の説明】
【００７８】
１    本体部
２    カメラ
３    表示部
４    操作部
１０  制御部
１１  主記憶部
４０  画面
【図１】
2013171310.tif 000003
【図２】
2013171310.tif 000004
【図３】
2013171310.tif 000005
【図４】
2013171310.tif 000006
【図５】
2013171310.tif 000007
【図６】
2013171310.tif 000008
【図７】
2013171310.tif 000009
【図８】
2013171310.tif 000010
【図９】
2013171310.tif 000011
【図１０】
2013171310.tif 000012