(57)【要約】【課題】文字認識の迅速性を確保しつつ、認識精度を向上させることが可能な文字列認識方法及び文字列認識装置を提供する。【解決手段】文字列認識方法において、画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工し、２値画像データを文字列の方向にシフトさせながら、文字列の方向と直交する垂直方向への２値画像データの垂直射影を計算し、垂直射影データが所定の境界判定閾値を超えた箇所を、文字列を構成する文字の区切り位置として検出し、検出された文字の区切り位置に基づいて、文字列から文字を切り出し、切り出した各文字の特徴を判定する各ステップを含み、特徴判定のステップより前に、文字列を構成する文字の個数に基づいて、境界判定閾値の有効性を判定するステップが含まれる。【選択図】図２
2008276458.tif 000002
【特許請求の範囲】
【請求項１】
媒体上の文字列を撮像して得られた画像データを処理することによって、前記文字列を認識する文字列認識方法において、
前記画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する第１ステップと、
前記２値画像データを前記文字列の方向にシフトさせながら、前記文字列の方向と直交する垂直方向への前記２値画像データの垂直射影を計算する第２ステップと、
前記第２ステップにより得られた垂直射影データが所定の境界判定閾値を超えた箇所を、前記文字列を構成する文字の区切り位置として検出する第３ステップと、
前記第３ステップで検出された文字の区切り位置に基づいて、前記文字列から文字を切り出し、切り出した各文字の特徴を判定する第４ステップと、を少なくとも含み、
前記第４ステップより前に、前記文字列を構成する文字の個数に基づいて、前記境界判定閾値の有効性を判定する第５ステップが含まれることを特徴とする文字列認識方法。
【請求項２】
前記第５ステップにより、前記境界判定閾値が有効でないと判定されたときに、前記２値化基準閾値を変更して、再び前記画像データを２値画像データに加工して、前記第１ステップから前記第５ステップを実行することを特徴とする請求項１記載の文字列認識方法。
【請求項３】
前記第５ステップにより、前記境界判定閾値が有効でないと判定されたときに、前記２値化基準閾値を当初よりも低い値に変更することを特徴とする請求項２記載の文字列認識方法。
【請求項４】
前記所定の境界判定閾値は、前記垂直射影データに含まれる正のピーク値を大きい方から順に並べたとき、最も大きなピーク値から数えて、前記文字列を構成する文字の個数に１を加えた個数番目に相当するピーク値であることを特徴とする請求項１から３のいずれか記載の文字列認識方法。
【請求項５】
請求項１から４のいずれか記載の文字列認識方法を用いて、媒体上の文字列を認識する文字列認識手段を備えたことを特徴とする文字列認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、紙やプラスチックなどの媒体上にある文字列を光学的に読み取る文字列認識方法及び文字列認識装置に関する。
【背景技術】
【０００２】
従来から、例えば小切手などの媒体表面に印刷された文字列を認識するための装置がある。例えば、２値化された画像データから文字部分を検出して、その文字部分を外接矩形枠に沿って切り出し、得られた文字パターンから特徴量を抽出し、入力パターンの特徴ベクトルと特徴辞書中の文字ごとの基準ベクトルとの類似度を求め、その類似度の大きさにより候補文字を選択する、といった文字認識装置などが数多く知られている。
【０００３】
このような文字認識装置の中には、認識精度を向上させるために、認識結果に基づいて２値化をやり直したり、読み取りに失敗した場合に再度媒体読取を行ったりするなどの様々な工夫を施したものが存在する（例えば特許文献１〜３参照）。
【０００４】
より具体的に説明すると、特許文献１に開示された技術では、正常な文字認識の結果が得られなかった場合には、更に、異なる閾値で２値化したイメージデータに基づいて、再度文字認識を行うようにしている。また、特許文献２に開示された技術では、文字認識の結果と黒点数の計数結果によって、多値画像を２値化しなおす必要があるか否かを判定し、必要があれば、当初の閾値とは異なる閾値を設定し、その新たな閾値を用いて多値画像を２値化するようにしている。さらに、特許文献３に開示された技術では、認識精度が所定の値より低い場合に、再度文書画像を読み取らせるとともに、２値化閾値を変更して２値化を行わせるようにしている。
【０００５】
【特許文献１】特開２００１−０２２８８４号公報
【特許文献２】特開平０９−０１６７１５号公報
【特許文献３】特開平０７−１２９７１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された技術は、文字認識結果が得られるまで２値化の妥当性が判明しないため、時間ロスが生じてしまう。また、最初の２値化が不適当だった場合、想定外の結果を生じる可能性がある。特許文献２に開示された技術も、特許文献１に開示された技術と同様に、文字認識結果を利用するものであるため、処理の最終段まで実行しなければ２値化の妥当性が判明せず、結果的に時間ロスに繋がる。さらに、特許文献３に開示された技術は、文字画像の再読取を行うものであるため、やはり処理に時間が掛かる。このように、上述した各技術では、文字列認識の迅速性を更に向上させることが困難である。
【０００７】
本発明は、このような点に鑑みてなされたものであり、その目的は、文字認識の認識精度を向上させるとともに、その迅速性を確保することが可能な文字列認識方法及び文字列認識装置を提供することにある。
【課題を解決するための手段】
【０００８】
以上のような課題を解決するために、本発明は、以下のものを提供する。
【０００９】
（１）  媒体上の文字列を撮像して得られた画像データを処理することによって、前記文字列を認識する文字列認識方法において、前記画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する第１ステップと、前記２値画像データを前記文字列の方向にシフトさせながら、前記文字列の方向と直交する垂直方向への前記２値画像データの垂直射影を計算する第２ステップと、前記第２ステップにより得られた垂直射影データが所定の境界判定閾値を超えた箇所を、前記文字列を構成する文字の区切り位置として検出する第３ステップと、前記第３ステップで検出された文字の区切り位置に基づいて、前記文字列から文字を切り出し、切り出した各文字の特徴を判定する第４ステップと、を少なくとも含み、前記第４ステップより前に、前記文字列を構成する文字の個数に基づいて、前記境界判定閾値の有効性を判定する第５ステップが含まれることを特徴とする文字列認識方法。
【００１０】
本発明によれば、媒体上の文字列を撮像して得られた画像データを白黒の２値画像データに加工し、２値画像データの垂直射影を計算し、垂直射影データが所定の境界判定閾値を超えた箇所を文字の区切り位置として検出し、各文字の特徴を判定する文字列認識方法で、各文字の特徴を判定する前に、文字列を構成する文字の個数に基づいて境界判定閾値の有効性を判定することとしたので、精度良く迅速な文字認識が可能になる。
【００１１】
すなわち、文字列を構成する文字の個数に基づいて境界判定閾値の有効性を判定することによって、文字認識の精度を向上させることができるとともに、この判定ステップを各文字の特徴を判定する前に行うことによって、文字認識の迅速性を確保することができる（各文字の特徴を判定する処理は、パターンマッチング等の処理が必要になるなど、処理時間が多く掛かる場合がある）。
【００１２】
ここで、「文字列を構成する文字の個数に基づいて境界判定閾値の有効性を判定する」とは、文字列を構成する文字の個数情報を用いて、境界判定閾値が有効か否かを判定するものであれば如何なるものであってもよく、例えば、文字列を構成する文字の個数情報を用いて境界判定閾値を算出し、これと予め妥当性を確認しておいた境界判定閾値とを比較し、前者が後者を上回っていれば、境界判定閾値が有効であると判定し、前者が後者を上回っていなければ、境界判定閾値が有効でないと判定することもできる。
【００１３】
なお、本明細書における「文字」は、一般的なアルファベットだけなく、記号文字や絵文字、バーコード、更には数字なども含むものとし、媒体上で視認できることを条件に如何なる形態・大きさであってもよい。
【００１４】
（２）  前記第５ステップにより、前記境界判定閾値が有効でないと判定されたときに、前記２値化基準閾値を変更して、再び前記画像データを２値画像データに加工して、前記第１ステップから前記第５ステップを実行することを特徴とする文字列認識方法。
【００１５】
本発明によれば、上述した第５ステップによって、境界判定閾値が有効でないと判定されたときには、上述した２値化基準閾値を変更して、再び画像データを２値画像データに加工して、第２ステップから第５ステップを実行することとしたので、文字認識の迅速性と精度向上とを同時に図ることができる。
【００１６】
（３）  前記第５ステップにより、前記境界判定閾値が有効でないと判定されたときに、前記２値化基準閾値を当初よりも低い値に変更することを特徴とする文字列認識方法。
【００１７】
本発明によれば、上述した第５ステップによって、境界判定閾値が有効でないと判定されたときに、２値化基準閾値を当初よりも低い値に変更することとしたので、文字認識の迅速性と精度向上とを同時に図ることができる。
【００１８】
特に、手動搬送による文字（列）認識装置を考えた場合に、媒体のスワイプ速度が速い、あるいは媒体の背景が暗い場合、２値化閾値が相対的に高くなる結果、各文字の線が太くなるとともに、文字と文字との間のスペースが狭くなり、文字境界部分の射影レベル値が低下する。そのため、文字境界の検出ミスが起こりやすくなり、文字列を撮像した際の光量が低下する。その結果、各文字の線が細くなるとともに分解能が低くなり、読み取りエラーが生じる確率が高くなる。しかし、本発明は、境界判定閾値が有効でないと判定されれば、自動的に２値化基準閾値が当初よりも低い値に変更されるものであるため、各文字の線が細くなっても、読み取りエラーが生じる確率を下げることができる。更に、本発明は、従来の技術のような文字認識結果（文字の特徴判定結果）を利用するものではないため、文字認識の迅速性向上に資することもできる。
【００１９】
（４）  前記所定の境界判定閾値は、前記垂直射影データに含まれる正のピーク値を大きい方から順に並べたとき、最も大きなピーク値から数えて、前記文字列を構成する文字の個数に１を加えた個数番目に相当するピーク値であることを特徴とする文字列認識方法。
【００２０】
本発明によれば、上述した所定の境界判定閾値は、垂直射影データに含まれる正のピーク値を大きい方から順に並べたとき、最も大きなピーク値から数えて、文字列を構成する文字の個数に１を加えた個数番目に相当するピーク値であることとしたので、境界判定閾値の計算をより簡易に行うことができる。
【００２１】
（５）  （１）から（４）のいずれか記載の文字列認識方法を用いて、媒体上の文字列を認識する文字列認識手段を備えたことを特徴とする文字列認識装置。
【００２２】
本発明によれば、上述した文字列認識方法を用いて、媒体上の文字列を認識する文字列認識手段を備えた文字列認識装置を提供することができる。
【発明の効果】
【００２３】
本発明に係る文字列認識方法及び文字列認識装置によれば、各文字の特徴判定の前に、境界判定閾値の有効性を判定することで、認識精度を向上させることができ、加えて、文字認識の迅速性を確保することができる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００２５】
［文字列認識装置］
図１は、本発明の実施の形態に係る文字列認識装置１の電気的構成を示すブロック図である。
【００２６】
図１において、文字列認識装置１は、密着型の（１次元）撮像素子１１と、画像メモリ１２と、データ処理部１３と、文字出力部１４（例えばモニタ等）と、を有している。また、データ処理部１３は、２値化部１３ａと、行切り出し部１３ｂと、射影生成部１３ｃと、閾値計算部１３ｄと、閾値評価部１３ｅと、境界決定部１３ｆと、特徴抽出部１３ｇと、特徴比較部１３ｈと、特徴辞書格納部１３ｉと、を有している。なお、これらの各部は、記録担体２上の文字列を認識する文字列認識手段の一例として機能する。また、これらの各部は、ＣＰＵ又はＭＰＵなどの電気要素によって、ハードウェア的に実現することができる。
【００２７】
撮像素子１１は、記録担体２上のＯＣＲ文字列を撮像し、そのＯＣＲ文字列の光電変換を行う。そして、それによって得られた画像データは、一旦画像メモリ１２に取り込まれる。その後、データ処理部１３は、画像メモリ１２から画像データを読み出して、上述した各部において様々な処理を施し、最終的に、記録担体２上のＯＣＲ文字列を認識するようにしている。
【００２８】
一方で、記録担体２は、ＪＩＳに準拠している一般的なカードであってもよく、例えば、幅８６ｍｍ，高さ５４ｍｍ，厚み０．７６ｍｍというサイズのプラスチックカードでもよく、ＩＤカードやパスポートブック、或いは運転免許証などでもよい。
【００２９】
［文字列認識方法］
図２は、本発明の実施の形態に係る文字列認識方法を示すフローチャートである。
【００３０】
図２に示すように、本実施形態に係る文字列認識方法では、まず、２値化閾値計算が行われる（ステップＳ１）。より具体的には、データ処理部１３の２値化部１３ａは、画像メモリ１２から画像データを読み出して、適当な方法によって閾値（２値化基準閾値）を求める。なお、閾値の求め方については如何なる方法を採用してもよい。また、このステップＳ１で求めた２値化基準閾値は、次のステップＳ２の処理において用いられる。
【００３１】
次に、２値化処理が行われる（ステップＳ２）。より具体的には、データ処理部１３の２値化部１３ａは、画像メモリ１２から画像データを読み出して、その画像データが多諧調の濃淡画像である場合には、白黒２値の画像（２値画像データ）に変換を行う。なお、この画像メモリ１２は、ＲＡＭ，ＳＤＲＡＭ,ＤＤＲＳＤＲＡＭ，ＲＤＲＡＭなど、画像データを記憶しうるものであれば如何なるものであってもよい。また、このステップＳ２は、画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する「第１ステップ」の一例に相当する。
【００３２】
次いで、行切り出しが行われる（ステップＳ３）。より具体的には、データ処理部１３の行切り出し部１３ｂは、２値化した文字列を水平方向に射影して、文字列の上下エッジを検出する。そして、上下エッジの中心位置を、文字列の中心ラインと識別して行切り出しを行う。
【００３３】
次いで、射影計算が行われる（ステップＳ４）。より具体的には、データ処理部１３の射影生成部１３ｃは、ステップＳ３で検出された文字列ごとの画像データ（２値画像データ）について、文字列の垂直方向に射影計算（濃度投影）を行う。これは、文字列ごとに水平方向の文字の区切り位置を検索するために必要な処理である。
【００３４】
なお、このステップＳ４は、２値画像データを文字列の方向にシフトさせながら、文字列の方向と直交する方向への２値画像データの垂直射影を計算する「第２ステップ」の一例に相当する。また、濃度投影とは、いわばヒストグラム（濃度分布図）の一種であり、２値化によって「１」または「０」の濃度に変換された画素を、濃度別に合計したものであり、白または黒のどちらを合計値として計算してもよい。また、水平軸（Ｘ軸）に対する垂直方向の画素の加算は、ステップＳ２の行切り出しにおいて求めた文字列（文字ライン）上下エッジ（＋α）を両端点とする範囲で行うように設定する。
【００３５】
このステップＳ４に関して具体例を示す。図３は、記録担体２のＯＣＲ文字記憶領域（図１参照）に印刷された文字を撮像したときの画像データを示す図である。また、図４は、図３に示す画像データを垂直射影した結果（一例）を示す図である。
【００３６】
図４に示すように、文字ライン長（文字列の両端間の画素数）は、垂直射影データにおいてＰｓ地点からＰｅ地点までの画素数となる。このＰｓ地点からＰｅ地点までの画素数は、記録担体２をスワイプさせる速度と密接な関係がある。すなわち、スワイプ速度が低速の場合には、この画素数は多くなる（十分な分解能が得られる）一方で、スワイプ速度が高速の場合には、この画素数は少なくなる。
【００３７】
ここで、図５は、文字列を構成する文字「ＫＯ<ＢＣ」に着目したときの画像データである。また、図６は、図５に示す画像データを垂直射影することによって得られた垂直射影データ（一例）である。なお、図５は、図３中の「Ｋ」から「Ｃ」までの画像データを示している。
【００３８】
次に、文字境界判定のための閾値を計算する（ステップＳ５）。より具体的には、データ処理部１３の閾値演算部１３ｄは、垂直射影データに含まれる全ての正のピークを検出し、その正ピーク値に関するヒストグラムを作成する（メモリ上で仮想的に考える）。そして、この正ピーク値ヒストグラムにおいて、最大値から最小値の方向への累積度数を求め、その累積度数が、想定される文字の個数を超えるポイントを検出し、そのポイントにおけるピーク値を閾値に設定する。
【００３９】
このステップＳ５について、図７〜図９を用いて具体例を説明する。図７は、図３に示す画像データを垂直射影した結果（一例）を示す図である。図８は、図７に示す垂直射影データにおいて、正のピーク値のヒストグラムを示す図である。図９は、図８のヒストグラムについて、最大値から最小値の方向への累積度数を求めた図である。なお、図８では、横軸をピーク値、縦軸を度数としており、図９では、横軸をピーク値、縦軸を累積度数としている。
【００４０】
図８によれば、例えばピーク値が２２０前後となっているものが全部で５個存在している一方で、大半のピーク値は、２５５付近に密集していることが分かる。そして、図９によれば（図９に示す折れ線を右端から左方へ辿っていくと）、２５５付近で正のピーク値の累積度数が急激に増え、その後、ピーク値が小さくなるにつれて、なだらかに増加している。
【００４１】
ここで、仮に認識すべき文字の個数が４４個であったとすると、図９において累積度数が４４を超える時点におけるピーク値、すなわち累積度数が４５（認識すべき文字の個数＋１）となる時点におけるピーク値２２５が、境界判定閾値（図７でいうＳＬＥＶ）となる。このように、本実施形態では、境界判定閾値は、垂直射影データに含まれる正のピーク値を大きい方から順に並べたとき、最も大きなピーク値から数えて、文字列を構成する文字の個数に１を加えた個数番目に相当するピーク値となっている。
【００４２】
次に、この境界判定閾値の妥当性が判断される（ステップＳ６）。より具体的には、データ処理部１３の閾値評価部１３ｅは、ステップＳ５で求めた境界判定閾値が妥当か否かを判断する。図７〜図９に示す具体例のように、境界判定閾値が相対的に低い場合は、記録担体２の移動速度が速いことが主原因である。移動速度が比較的遅い場合は、文字と文字との間の空白部分が長くなるために、この部分の垂直射影データ（射影プロファイル）も、図６に示すように幅広ピークとなり、十分な出力値をもつ。一方で、移動速度が速くなると、文字と文字の空白部分が短くなり、図１０に示すようになる。図１０は、図５に示す画像データを垂直射影することによって得られた垂直射影データ（一例）である。
【００４３】
図１０によれば、垂直射影データのピーク形状が尖鋭化するとともに、そのレベル値も低下してくる。その結果、境界ピークの検出精度が低下するため、正確な文字切り出しが保証されなくなる。例えば、図７に示す具体例でいえば、図中の矢印で示したピークが境界判定閾値を下回っており、これは境界として認識されない可能性がある。
【００４４】
しかし、垂直射影データのピーク値が低すぎることが分かれば、画像２値化の閾値再調整（ステップＳ７に示す「２値化閾値更新処理」）によって適正化することができる場合がある。すなわち、境界判定閾値が有効でないと判定されたときに、２値化基準閾値を当初よりも低い値に変更すれば、全体に白画素が増加することにより、境界ピーク値が増大し、安定的な文字境界検出が可能になる。
【００４５】
２値化再実行をする様子として、図１１〜図１３を用いて説明する。妥当な境界判定閾値は、実験によって２３５以上が適当であることが分かっているものとする。なお、図１１は、図３に示す画像データを垂直射影した結果（一例）を示す図である。図１２は、図１１に示す垂直射影データにおいて、正のピーク値のヒストグラムを示す図である。図１３は、図１２のヒストグラムについて、最大値から最小値の方向への累積度数を求めた図である。
【００４６】
図７に示す具体例では、境界判定閾値がＳＬＥＶ＝２２５となり、ＳＬＥＶ≧２３５を満たさないので（ステップＳ６：ＮＯ）、ステップＳ７の処理を経た上で、２値化処理ステップ（ステップＳ２）に戻り、再度２値化を実行する。具体的には、初期の２値化閾値はＳＬＥＶ＝８０であったので、例えば新しい２値化閾値をＳＬＥＶ'＝ＳＬＥＶ−１０＝７０として（ステップＳ７の処理の一例）、もとの画像の２値化をやり直す（ステップＳ２)。そして、図７〜図９に示す具体例と同様に、垂直射影データ（射影プロファイル）を求め（図１１）、垂直射影データの全ての正ピークを求めて作成したヒストグラム（図１２）によって、再び境界判定閾値を計算すると、図１１及び図１３に示すようにＳＬＥＶ'＝２４３となる。このＳＬＥＶ'は、ＳＬＥＶ'≧２３５を満たすものであるから、この結果を受け入れることができる（ステップＳ６：ＹＥＳ）。
【００４７】
このように、ステップＳ６では、境界判定閾値が適正なレベルかどうかによって、２値化をやり直すかどうかを決定している。したがって、ステップＳ６は、文字列における文字の個数に基づいて、境界判定閾値の有効性を判定する「第５ステップ」の一例に相当する。なお、従来例では、後述する文字認識ステップ（ステップＳ９〜ステップＳ１１）で初めて信頼度の評価を行い、不十分な場合に、スキャンをやり直すか、新たな２値化閾値を設定して２値化をやり直すようにしていた。しかし、本実施形態に係る文字列認識方法では、文字境界判定閾値の妥当性検討（ステップＳ６）を、境界決定処理（ステップＳ８）や特徴抽出（ステップＳ９）に先行して行いフィードバックしている。その結果、より短い処理時間で済むという利点がある。
【００４８】
このようにして、境界判定閾値が妥当であると判定された場合には（ステップＳ６：ＹＥＳ）、境界決定処理が行われる（ステップＳ８）。より具体的には、データ処理部１３の境界決定部１３ｆは、射影プロファイルのレベル値を、ステップＳ６において妥当と判定された境界判定閾値と比較して、境界判定閾値を超えている区間を文字と文字との間のスペースと判定する（文字境界を決定する）。なお、例えばこのスペースの中点を境界位置とするようにしてもよい。また、このステップＳ８は、ステップＳ４において得られた垂直射影データが所定の境界判定閾値（ステップＳ６において妥当と判定されたもの）を超えた箇所を、文字列を構成する文字の区切り位置として検出する「第３ステップ」の一例に相当する。
【００４９】
このようにして、ステップＳ８の処理によって、各文字の左右境界位置が暫定的に決定されると、図１４に示すように外周矩形領域内における文字が求められる。図１４は、文字列を構成する文字「<」の画像データを示す図である。
【００５０】
図１４において、この「<」の文字の位置を正確に特定するために、垂直射影ＰＸ及び水平射影ＰＹを計算する。そして、求められたＰＸに沿って、文字の左右境界位置の検出を行い、矩形領域の左端点を起点としてＰＸを右方向にスキャンして、そのレベル値（画素の検出）が連続して一定回数（例えば３回）閾値を下回ったら、その最初の地点を文字の左エッジとする。そして、同様に矩形領域の右端点を起点としてＰＸを左方向にスキャンして、連続して一定回数、閾値を下回ったらその最初の地点を文字の右エッジとする。
【００５１】
次に、水平射影ＰＹについても同様に、境界決定処理にて得られている左エッジ位置と右エッジ位置とで区切られた範囲を定義域として行い、矩形領域の上下両端を外側からスキャンして、各レベル値が連続して一定回数、閾値を下回ったら、その最初の地点を文字の上下エッジとする。このようにして、文字列内の文字位置を特定することができる。
【００５２】
次に、特徴抽出が行われる（ステップＳ９）。より具体的には、データ処理部１３の特徴抽出部１３ｇは、上述した外接矩形領域を任意のサブ領域に分割（例えば１個の外接矩形領域を５×５の領域に分割し、そのうち１個の領域をサブ領域とする）し、各サブ領域において、サブ領域内の全画素数に占める黒画素数の割合を求め、それらを要素とする特徴ベクトルを生成する。なお、このステップＳ９は、ステップＳ８において検出された文字の区切り位置に基づいて、文字列から文字を切り出し、切り出した各文字の特徴を判定する「第４ステップ」の一例に相当する。
【００５３】
次に、特徴比較が行われる（ステップＳ１０）。より具体的には、データ処理部１３の特徴比較部１３ｈは、ステップＳ９で求めた特徴ベクトルを、予め記録担体２で使用される全文字について求めておいた基準特徴ベクトルと比較して、類似度（例えば正規化相関係数）が最も高いものをその文字が該当する候補文字に設定する。
【００５４】
なお、基準特徴ベクトルは、予め特徴辞書格納部１３ｉに格納されているものであって、特徴比較が行われる際に、特徴辞書格納部１３ｉから類似度が高い文字のデータが読み出され、特徴比較が行われる。
【００５５】
最後に、文字判定が行われる（ステップＳ１１）。より具体的には、ステップＳ１０の特徴比較によって設定された候補文字を、記録担体２に用いられた文字として認識する。なお、類似度が一定値を超える候補文字が複数個存在する場合には、文字認識を行うことができないので、特徴ベクトルから導き出せる２次的な特徴量を利用して、類似文字の判別を行う。
【００５６】
例えば、任意に分割したサブ領域を左側半分と右側半分との２領域の左右線対称に分けて、部分特徴ベクトルを構成してそれらの間の類似性を調べたり、同様に上半分と下半分との２領域の上下線対称に分けて、類似性を調べたりしてもよい。また、左右線対称や上下線対象と同様に点対称で類似性を調べてもよい。
【００５７】
さらには、ひとつの文字について３種類の形状特徴量が得られたので、それらの値の相互関係から、該当する文字を対応付けてもよい。また、これでも分離できない場合もあり得る。例えば、記録担体２に用いられる文字タイプによっては、'Ｏ'と'０'の判別が難しい場合がある。この場合、例えば、文字の高さの違いや、四隅の曲率の違いを調べるなどにより、判別することができる。
【００５８】
［実施形態の効果］
以上説明したように本実施形態に係る文字列認識方法は、媒体上の既知の位置に印刷された既知の文字数からなる文字列を、１次元撮像素子で主走査を行い、手動若しくは機械駆動による媒体移動で副走査を行うようにして、２次元の画像情報に変換し、この画像データを適切に処理することによって文字列の認識を行うようにした文字列認識装置において使用される。特に、媒体をスキャンした多値画像を２値化する２値化処理ステップ（図２のステップＳ２参照）と、媒体移動方向に沿った文字列における文字の区切り位置を検出するために、文字の存在する画像領域に関して主走査方向の射影プロファイルを生成する射影生成ステップと（図２のステップＳ４参照）、射影に基づいて文字の境界を決定するために必要な境界判定閾値を算出するステップと（図２のステップＳ５参照）、この境界判定閾値が有効であるか否かを判定する閾値評価ステップと（図２のステップＳ６参照）、を有し、さらに、境界判定閾値が有効でないと判定されたときには、再度多値媒体画像の２値化を実行する再実行パスを有することにより（図２のステップＳ７参照）、文字判定処理（図２のステップＳ１１参照）の結果によらず、中間段階で自動的に２値化の妥当性が判断できるため、文字認識を正確かつ短時間に行うことができる。
【００５９】
また、文字境界判定のための閾値を決定するに当たって、垂直射影データに含まれる全てのピークを検出し、それらのうちの正ピーク値ヒストグラムに基づいて決定するようにしたため、境界判定の閾値をより正確に設定することができる。
【００６０】
さらに、上述したピーク値ヒストグラムにおける最大値から最小値方向への累積度数を求め、その値が想定される文字の個数を越えた地点のピーク値を、境界判定閾値として設定するようにしたため、境界決定処理をより簡易にすることができる。
【００６１】
なお、本実施形態では、１次元撮像素子１１，リニア搬送機構を用いることとしたが、本発明はこれらに限定されるものではない。例えば、２次元ＣＣＤやＣＭＯＳイメージャなどのエリアセンサと被写体支持機構との組み合わせでもよい。また、認識対象としては、活字文字だけでなく、手書き文字にも適用できる。また、文字認識に止まらず、１次元及び２次元バーコードの復号などにも適用できる。
【産業上の利用可能性】
【００６２】
本発明に係る文字列認識方法及び文字列認識装置は、文字列認識の精度低下を防ぐとともに、認識速度の向上を図ることが可能なものとして有用である。
【図面の簡単な説明】
【００６３】
【図１】本発明の実施の形態に係る文字列認識装置の電気的構成を示すブロック図である。
【図２】本発明の実施の形態に係る文字列認識方法を示すフローチャートである。
【図３】記録担体のＯＣＲ文字記憶領域（図１参照）に印刷された文字を撮像したときの画像データを示す図である。
【図４】図３に示す画像データを垂直射影した結果（一例）を示す図である。
【図５】文字列を構成する文字「ＫＯ<ＢＣ」に着目したときの画像データである。
【図６】図５に示す画像データを垂直射影することによって得られた垂直射影データ（一例）である。
【図７】図３に示す画像データを垂直射影した結果（一例）を示す図である。
【図８】図７に示す垂直射影データにおいて、正のピーク値のヒストグラムを示す図である。
【図９】図８のヒストグラムについて、最大値から最小値の方向への累積度数を求めた図である。
【図１０】図５に示す画像データを垂直射影することによって得られた垂直射影データ（一例）である。
【図１１】図３に示す画像データを垂直射影した結果（一例）を示す図である。
【図１２】図１１に示す垂直射影データにおいて、正のピーク値のヒストグラムを示す図である。
【図１３】図１２のヒストグラムについて、最大値から最小値の方向への累積度数を求めた図である。
【図１４】文字列を構成する文字「<」の画像データを示す図である。
【符号の説明】
【００６４】
１  文字列認識装置
２  記録担体
１１  撮像素子
１２  画像メモリ
１３  データ処理部
１３ａ  ２値化部
１３ｂ  行切り出し部
１３ｃ  射影生成部
１３ｄ  閾値演算部
１３ｅ  閾値評価部
１３ｆ  境界決定部
１３ｇ  特徴抽出部
１３ｈ  特徴比較部
１３ｉ  特徴辞書格納部
１４  文字出力部
【図１】
2008276458.tif 000003
【図２】
2008276458.tif 000004
【図３】
2008276458.tif 000005
【図４】
2008276458.tif 000006
【図５】
2008276458.tif 000007
【図６】
2008276458.tif 000008
【図７】
2008276458.tif 000009
【図８】
2008276458.tif 000010
【図９】
2008276458.tif 000011
【図１０】
2008276458.tif 000012
【図１１】
2008276458.tif 000013
【図１２】
2008276458.tif 000014
【図１３】
2008276458.tif 000015
【図１４】
2008276458.tif 000016