(57)【要約】【課題】  文字列認識の認識結果に対する信頼性を高めることが可能な文字列認識方法及び文字列認識装置を提供する【解決手段】  画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する加工ステップと、文字列を構成する各文字の文字特徴量を抽出して、基準文字特徴量との類似度を算出する類似度算出ステップと、類似度に基づいて暫定的に文字判定を行う暫定的文字判定ステップと、暫定的文字判定ステップで暫定的に判定された全ての文字に関する類似度の基本統計量を算出する基本統計量算出ステップと、基本統計量算出ステップで算出された基本統計量に基づいて、２値化基準閾値を変更した後、処理を加工ステップに戻す処理戻しステップと、を含む。【選択図】          図２
2010123090.tif 000002
【特許請求の範囲】
【請求項１】
媒体上の文字列を撮像して得られた画像データを処理することによって、前記文字列を認識する文字列認識方法において、
前記画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する加工ステップと、
前記文字列を構成する各文字の文字特徴量を抽出して、基準文字特徴量との類似度を算出する類似度算出ステップと、
前記類似度に基づいて暫定的に文字判定を行う暫定的文字判定ステップと、
前記暫定的文字判定ステップで暫定的に判定された全ての文字に関する前記類似度の基本統計量を算出する基本統計量算出ステップと、
前記基本統計量算出ステップで算出された基本統計量に基づいて、前記２値化基準閾値を変更した後、処理を前記加工ステップに戻す処理戻しステップと、を含むことを特徴とする文字列認識方法。
【請求項２】
前記加工ステップが終了してから前記類似度算出ステップまでの間に、
前記２値画像データを前記文字列の方向にシフトさせながら、前記文字列の方向と直交する垂直方向への前記２値画像データの垂直射影を計算する射影計算ステップと、
前記射影計算ステップにより得られた垂直射影データが所定の境界判定閾値を超えた箇所を、前記文字列を構成する文字の区切り位置として検出する区切り位置検出ステップと、
前記区切り位置検出ステップで検出された文字の区切り位置に基づいて、文字に外接する矩形を求める外接矩形算出ステップと、を含み、
前記類似度算出ステップは、前記矩形内の文字特徴量を抽出して、基準文字特徴量との類似度を算出することを特徴とする請求項１記載の文字列認識方法。
【請求項３】
前記処理戻しステップは、前記基本統計量算出ステップで算出された基本統計量に応じて、複数の評価カテゴリに分類し、分類された評価カテゴリに基づいて、前記２値化基準閾値を変更することを特徴とする請求項１または２記載の文字列認識方法。
【請求項４】
前記処理戻しステップは、前記基本統計量を前記類似度の最小値として、該最小値に応じて、４個の評価カテゴリに分類することを特徴とする請求項３記載の文字列認識方法。
【請求項５】
前記処理戻しステップは、前記２値化基準閾値を変更するにあたって、前記基本統計量算出ステップで算出された基本統計量が改善するように変更することを特徴とする請求項１から４のいずれか記載の文字列認識方法。
【請求項６】
媒体上の文字列を撮像して得られた画像データを処理することによって、前記文字列を認識する文字列認識方法において、
前記画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する加工ステップと、
前記文字列を構成する各文字の文字特徴量を抽出して、基準文字特徴量との類似度を算出する類似度算出ステップと、
前記類似度に基づいて暫定的に文字判定を行う暫定的文字判定ステップと、
前記暫定的文字判定ステップで暫定的に判定された全ての文字に関する文字列全体としての認識結果を複数の評価カテゴリに分類する評価カテゴリ分類ステップと、
前記分類された評価カテゴリに基づいて、前記２値化基準閾値を変更した後、処理を前記加工ステップに戻す処理戻しステップと、を含むことを特徴とする文字列認識方法。
【請求項７】
前記処理戻しステップは、先行する処理戻しステップ後の再処理において前記２値化基準閾値を変更するにあたって、前記加工ステップ、類似度算出ステップおよび暫定的文字判定ステップを繰り返した結果に基づき、文字列全体としての認識結果が改善するように変更することを特徴とする請求項６記載の文字列認識方法。
【請求項８】
前記文字列認識方法は、さらに、前記暫定的文字判定ステップで暫定的に判定された全ての文字に関する前記類似度の基本統計量を算出する基本統計量算出ステップを備え、
前記処理戻しステップは、前記評価カテゴリ分類ステップで分類された評価カテゴリおよび前記基本統計量算出ステップで算出された基本統計量に基づいて、前記２値化基準閾値を変更することを特徴とする請求項６または７記載の文字列認識方法。
【請求項９】
前記処理戻しステップは、前記２値化基準閾値を変更するにあたって、前記基本統計量算出ステップで算出された基本統計量が改善するように変更することを特徴とする請求項８記載の文字列認識方法。
【請求項１０】
請求項１から９のいずれか記載の文字列認識方法を用いて、媒体上の文字列を認識する文字列認識手段を備えたことを特徴とする文字列認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、紙やプラスチックなどの媒体上にある文字列を光学的に読み取る文字列認識方法及び文字列認識装置に関する。
【背景技術】
【０００２】
従来から、例えば小切手などの媒体表面に印刷された文字列を認識するための装置がある。例えば、２値化された画像データから文字部分を検出して、その文字部分を外接矩形枠に沿って切り出し、得られた文字パターンから特徴量を抽出し、入力パターンの特徴ベクトルと特徴辞書中の文字ごとの基準ベクトルとの類似度を求め、その類似度の大きさにより候補文字を選択する、といった文字認識装置などが数多く知られている。
【０００３】
このような文字認識装置の中には、認識精度を向上させるために、認識結果に基づいて２値化をやり直すなどの様々な工夫を施したものが存在する（例えば特許文献１〜３参照）。
【０００４】
より具体的に説明すると、特許文献１に開示された技術では、文字認識の結果と黒点数の計数結果によって、多値画像を２値化しなおす必要があるか否かを判定し、必要があれば、当初の閾値とは異なる閾値を設定し、その新たな閾値を用いて多値画像を２値化するようにしている。特許文献２に開示された技術では、初期の２値化条件で正解が得られなかった場合に、中間階調数の集計結果に基づいてフィルタ或いは閾値を変更し、前処理から認識処理までを再実行するようにしている。特許文献３に開示された技術では、個別パターン照合結果について根拠となったスコア値が、経時的な統計処理結果に基づいて設定された警告判定枠に入った場合に、撮像系や閾値を変更し、スキャンから認識処理までを再実行するようにしている。
【０００５】
【特許文献１】特開平０９−０１６７１５号公報
【特許文献２】特開平１０−２２２６０２号公報
【特許文献３】特開２００４−１１８６１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された技術は、許容範囲を満たさないものについてのみ再度２値化を行って、全体として閾値が適正であるか否かの判断は行われないため、認識結果に対する十分な信頼性確保の点で問題がある。また、特許文献２に開示された技術も、同様に不読文字への局所的な適用のため、全体としての認識結果の信頼性を向上することに対して十分でない。なお、特許文献３に開示された技術は、撮像のやり直しを伴うものであり、処理時間の迅速化要請に反するものである。
【０００７】
本発明は、このような点に鑑みてなされたものであり、その目的は、文字列認識の認識結果、特に文字列全体としての認識結果に対する信頼性を高めることが可能な文字列認識方法及び文字列認識装置を提供することにある。
【課題を解決するための手段】
【０００８】
以上のような課題を解決するために、本発明は、以下のものを提供する。
【０００９】
（１）  媒体上の文字列を撮像して得られた画像データを処理することによって、前記文字列を認識する文字列認識方法において、前記画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する加工ステップと、前記文字列を構成する各文字の文字特徴量を抽出して、基準文字特徴量との類似度を算出する類似度算出ステップと、前記類似度に基づいて暫定的に文字判定を行う暫定的文字判定ステップと、前記暫定的文字判定ステップで暫定的に判定された全ての文字に関する前記類似度の基本統計量を算出する基本統計量算出ステップと、前記基本統計量算出ステップで算出された基本統計量に基づいて、前記２値化基準閾値を変更した後、処理を前記加工ステップに戻す処理戻しステップと、を含むことを特徴とする文字列認識方法。
【００１０】
本発明によれば、文字列認識方法において、媒体上の文字列を撮像して得られた画像データを、所定の２値化基準閾値を用いて白黒の２値画像データに加工し、文字列を構成する各文字の文字特徴量を抽出して、基準文字特徴量との類似度を算出し、類似度に基づいて暫定的に文字判定を行い、暫定的に判定された全ての文字に関する類似度の基本統計量を算出し、その基本統計量に基づいて、２値化基準閾値を変更した後、画像データを加工するステップに処理を戻す、という一連の処理が含まれるようにしたので、文字列認識の認識結果に対する信頼性を高めることができる。
【００１１】
すなわち、暫定的な文字判定を行った後に、基本統計量が好ましくない数値の場合には、２値化基準閾値を変更した上で、再度一連の処理を行うことができるので、全体として２値化基準閾値が適正かどうかを把握することができ、ひいては信頼性を高めることができる。特に、本発明は、個々の文字認識の認識結果に対する信頼性を高めるというより、文字列全体としての認識結果（文字列認識の認識結果）に対する信頼性を高めることが可能な点で特有の効果を奏する。なお、本発明は、撮像のやり直しを伴うものではないため、処理時間の長期化を防ぐことができる。
【００１２】
ここで、本発明中の「２値化基準閾値」とは、白黒の２値画像データを得るために用いられる閾値である。また、本発明において、媒体上の文字列を撮像して画像データを得るにあたって、例えば１次元撮像素子や２次元ＣＣＤなど、如何なる手段を用いても構わない。
【００１３】
（２）  前記加工ステップが終了してから前記類似度算出ステップまでの間に、前記２値画像データを前記文字列の方向にシフトさせながら、前記文字列の方向と直交する垂直方向への前記２値画像データの垂直射影を計算する射影計算ステップと、前記射影計算ステップにより得られた垂直射影データが所定の境界判定閾値を超えた箇所を、前記文字列を構成する文字の区切り位置として検出する区切り位置検出ステップと、前記区切り位置検出ステップで検出された文字の区切り位置に基づいて、文字に外接する矩形を求める外接矩形算出ステップと、を含み、前記類似度算出ステップは、前記矩形内の文字特徴量を抽出して、基準文字特徴量との類似度を算出することを特徴とする文字列認識方法。
【００１４】
本発明によれば、上述した加工ステップが終了してから類似度算出ステップまでの間に、２値画像データを文字列の方向にシフトさせながら、文字列の方向と直交する垂直方向への２値画像データの垂直射影を計算し、垂直射影データが所定の境界判定閾値を超えた箇所を、文字列を構成する文字の区切り位置として検出し、文字の区切り位置に基づいて、文字に外接する矩形を求める処理を含む。そして、この矩形内の文字特徴量を抽出することで上述した類似度算出ステップを実行することとしたので、例えば１次元撮像素子やリニア搬送機構によって画像データが得られる文字列認識装置であっても、文字列全体としての認識結果に対する信頼性を高めることができる。
【００１５】
ここで、「境界判定閾値」とは、文字の区切り位置を検出する際に用いられる閾値であって、上述した「２値化基準閾値」とは異なる概念である。
【００１６】
（３）  前記処理戻しステップは、前記基本統計量算出ステップで算出された基本統計量に応じて、複数の評価カテゴリに分類し、分類された評価カテゴリに基づいて、前記２値化基準閾値を変更することを特徴とする文字列認識方法。
【００１７】
本発明によれば、上述した処理戻しステップにおいて、基本統計量算出ステップで算出された基本統計量に応じて、複数の評価カテゴリに分類し、分類された評価カテゴリに基づいて、２値化基準閾値を変更することとしたので、予め複数の評価カテゴリテーブルを設けておけば（例えば記憶媒体に記憶しておけば）、簡易に２値化基準閾値を変更することができ、全体として認識結果に対する信頼性を簡易に高めることができる。
【００１８】
（４）  前記処理戻しステップは、前記基本統計量を前記類似度の最小値として、該最小値に応じて、評価カテゴリに分類することを特徴とする文字列認識方法。
【００１９】
本発明によれば、上述した処理戻しステップにおいて、基本統計量算出ステップで算出された基本統計量を類似度の最小値として、該最小値に応じて、評価カテゴリに分類することとしたので、最小値という簡易な数値を用いて、認識結果に対する信頼性を更に簡易に高めることができる。
【００２０】
（５）  前記処理戻しステップは、前記２値化基準閾値を変更するにあたって、前記基本統計量算出ステップで算出された基本統計量が改善するように変更することを特徴とする文字列認識方法。
【００２１】
本発明によれば、上述した処理戻しステップにおいて、２値化基準閾値を変更するにあたって、基本統計量算出ステップで算出された基本統計量が改善するように変更することとしたので、基本統計量を最大限に活用しつつ、２値化基準閾値を変更することができる。
【００２２】
（６）  媒体上の文字列を撮像して得られた画像データを処理することによって、前記文字列を認識する文字列認識方法において、前記画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する加工ステップと、前記文字列を構成する各文字の文字特徴量を抽出して、基準文字特徴量との類似度を算出する類似度算出ステップと、前記類似度に基づいて暫定的に文字判定を行う暫定的文字判定ステップと、前記暫定的文字判定ステップで暫定的に判定された全ての文字に関する文字列全体としての認識結果（文字列認識の認識結果）を複数の評価カテゴリに分類する評価カテゴリ分類ステップと、前記分類された評価カテゴリに基づいて、前記２値化基準閾値を変更した後、処理を前記加工ステップに戻す処理戻しステップと、を含むことを特徴とする文字列認識方法。
【００２３】
本発明によれば、文字列認識方法において、媒体上の文字列を撮像して得られた画像データを、所定の２値化基準閾値を用いて白黒の２値画像データに加工し、文字列を構成する各文字の文字特徴量を抽出して、基準文字特徴量との類似度を算出し、類似度に基づいて暫定的に文字判定を行い、暫定的に判定された全ての文字に関する文字列全体としての認識結果を複数の評価カテゴリに分類し、分類された評価カテゴリに基づいて、２値化基準閾値を変更した後、画像データを加工するステップに処理を戻す、という一連の処理が含まれるようにしたので、文字列認識の認識結果に対する信頼性を高めることができる。
【００２４】
（７）  前記処理戻しステップは、先行する処理戻しステップ後の再処理において前記２値化基準閾値を変更するにあたって、前記加工ステップ、類似度算出ステップおよび暫定的文字判定ステップを繰り返した結果に基づき、文字列全体としての認識結果が改善するように変更することを特徴とする文字列認識方法。
【００２５】
本発明によれば、上述した処理戻しステップでは、先行する処理戻しステップ後の再処理において２値化基準閾値を変更するにあたって、加工ステップ、類似度算出ステップおよび暫定的文字判定ステップを繰り返した結果に基づき、文字列全体としての認識結果が改善するように変更することとしたので、文字列認識の認識結果に対する信頼性を高めることができる。
【００２６】
（８）  前記文字列認識方法は、さらに、前記暫定的文字判定ステップで暫定的に判定された全ての文字に関する前記類似度の基本統計量を算出する基本統計量算出ステップを備え、前記処理戻しステップは、前記評価カテゴリ分類ステップで分類された評価カテゴリおよび前記基本統計量算出ステップで算出された基本統計量に基づいて、前記２値化基準閾値を変更することを特徴とする文字列認識方法。
【００２７】
本発明によれば、文字列認識方法は、さらに、上述の暫定的文字判定ステップで暫定的に判定された全ての文字に関する類似度の基本統計量を算出する基本統計量算出ステップを備え、処理戻しステップは、評価カテゴリ分類ステップで分類された評価カテゴリおよび基本統計量算出ステップで算出された基本統計量に基づいて、前記２値化基準閾値を変更することとしたので、評価カテゴリと基本統計量の両者に基づき、文字列認識の認識結果に対する信頼性を更に高めることができる。
【００２８】
（９）  前記処理戻しステップは、前記２値化基準閾値を変更するにあたって、前記基本統計量算出ステップで算出された基本統計量が改善するように変更することを特徴とする文字列認識方法。
【００２９】
本発明によれば、上述した処理戻しステップは、２値化基準閾値を変更するにあたって、基本統計量算出ステップで算出された基本統計量が改善するように変更することとしたので、基本統計量を最大限に活用しつつ、２値化基準閾値を変更することができる。
【００３０】
（１０）  （１）から（９）のいずれか記載の文字列認識方法を用いて、媒体上の文字列を認識する文字列認識手段を備えたことを特徴とする文字列認識装置。
【００３１】
本発明によれば、上述した文字列認識方法を用いて、媒体上の文字列を認識する文字列認識手段を備えた文字列認識装置を提供することができる。
【発明の効果】
【００３２】
本発明に係る文字列認識方法及び文字列認識装置によれば、基本統計量を用いて、全体として、２値化基準閾値が適正かどうかを把握することができるので、文字列認識の認識結果に対する信頼性を簡易に高めることができる。また、撮像のやり直しが必要なく、処理時間の長期化を防ぐことができる。
【発明を実施するための最良の形態】
【００３３】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００３４】
［文字列認識装置］
図１は、本発明の実施の形態に係る文字列認識装置１の電気的構成を示すブロック図である。
【００３５】
図１において、文字列認識装置１は、密着型の（１次元）撮像素子１１と、画像メモリ１２と、データ処理部１３と、文字出力部１４（例えばモニタ等）と、を有している。また、データ処理部１３は、２値化部１３ａと、行切り出し部１３ｂと、射影生成部１３ｃと、閾値算出部１３ｄと、文字境界決定部１３ｅと、文字切り出し部１３ｆと、特徴抽出部１３ｇと、特徴比較部１３ｈと、特徴辞書格納部１３ｉと、スコア集計部１３ｊと、再実行判定部１３ｋと、を有している。なお、これらの各部は、記録担体２上の文字列を認識する文字列認識手段の一例として機能する。また、これらの各部は、ＣＰＵまたはＭＰＵやＲＡＭ，ＲＯＭなどの電気要素によって、ハードウェア的に実現することができる。
【００３６】
撮像素子１１は、記録担体２上のＯＣＲ文字列を撮像し、そのＯＣＲ文字列の光電変換を行う。そして、それによって得られた画像データは、一旦画像メモリ１２に取り込まれる。その後、データ処理部１３は、画像メモリ１２から画像データを読み出して、上述した各部において様々な処理を施し、最終的に、記録担体２上のＯＣＲ文字列を認識するようにしている。
【００３７】
一方で、記録担体２は、ＪＩＳに準拠している一般的なカードであってもよく、例えば、幅８６ｍｍ，高さ５４ｍｍ，厚み０．７６ｍｍというサイズのプラスチックカードでもよく、ＩＤカードやパスポートブック、或いは運転免許証などでもよい。
【００３８】
［文字列認識方法］
図２は、本発明の実施の形態に係る文字列認識方法を示すフローチャートである。なお、本実施形態では、上述した１次元撮像素子１１を用いて画像データを得るため、後述する射影計算（ステップＳ３）や文字切り出し（ステップＳ６）の処理を行っているが、場合によっては一定の処理（ステップＳ２〜ステップＳ６）を省略しても構わない。
【００３９】
図２に示すように、本実施形態に係る文字列認識方法では、まず、２値化処理が行われる（ステップＳ１）。より具体的には、データ処理部１３の２値化部１３ａは、画像メモリ１２から画像データを読み出して、その画像データが多諧調の濃淡画像である場合には、白黒２値の画像（２値画像データ）に変換を行う。なお、この画像メモリ１２は、ＲＡＭ，ＳＤＲＡＭ,ＤＤＲＳＤＲＡＭ，ＲＤＲＡＭなど、画像データを記憶しうるものであれば如何なるものであってもよい。また、このステップＳ１は、画像データを所定の２値化基準閾値を用いて白黒の２値画像データに加工する「加工ステップ」の一例に相当する。
【００４０】
次いで、行切り出しが行われる（ステップＳ２）。より具体的には、データ処理部１３の行切り出し部１３ｂは、２値化した文字列を水平方向に射影して、文字列の上下エッジを検出する。そして、上下エッジの中心位置を、文字列の中心ラインと識別して行切り出しを行う。
【００４１】
次いで、射影計算が行われる（ステップＳ３）。より具体的には、データ処理部１３の射影生成部１３ｃは、ステップＳ３で検出された文字列ごとの画像データ（２値画像データ）について、文字列の垂直方向に射影計算（濃度投影）を行う。これは、文字列ごとに水平方向の文字の区切り位置を検索するために必要な処理である。
【００４２】
なお、このステップＳ３は、２値画像データを文字列の方向にシフトさせながら、文字列の方向と直交する方向への２値画像データの垂直射影を計算する「射影計算ステップ」の一例に相当する。また、濃度投影とは、いわばヒストグラム（濃度分布図）の一種であり、２値化によって「１」または「０」の濃度に変換された画素を、濃度別に合計したものであり、白または黒のどちらを合計値として計算してもよい。もちろん、濃度投影は輝度投影と置き換えてもよい。また、水平軸（Ｘ軸）に対する垂直方向の画素の加算は、ステップＳ２の行切り出しにおいて求めた文字列（文字ライン）上下エッジ（＋α）を両端点とする範囲で行うように設定する。
【００４３】
このステップＳ３に関して具体例を示す。図３は、記録担体２のＯＣＲ文字記憶領域（図１参照）に印刷された文字を撮像したときの画像データを示す図である。また、図４は、図３に示す画像データ（上段または下段の一列）を垂直射影した結果（一例）を示す図である。
【００４４】
図４に示すように、文字ライン長（文字列の両端間の画素数）は、垂直射影データにおいてＰｓ地点からＰｅ地点までの画素数となる。このＰｓ地点からＰｅ地点までの画素数は、記録担体２をスワイプさせる速度と密接な関係がある。すなわち、スワイプ速度が低速の場合には、この画素数は多くなる（十分な分解能が得られる）一方で、スワイプ速度が高速の場合には、この画素数は少なくなる。
【００４５】
ここで、図５は、文字列を構成する文字「ＫＯ<ＢＣ」に着目したときの画像データである。また、図６は、図５に示す画像データを垂直射影することによって得られた垂直射影データ（一例）である。なお、図５は、図３中の「Ｋ」から「Ｃ」までの画像データを示している。
【００４６】
次に、文字境界判定のための閾値を計算する（ステップＳ４）。より具体的には、データ処理部１３の閾値算出部１３ｄは、垂直射影データに含まれる全ての正のピークを検出し、その正ピーク値に関するヒストグラムを作成する（メモリ上で仮想的に考える）。そして、この正ピーク値ヒストグラムにおいて、最大値から最小値の方向への累積度数を求め、その累積度数が、想定される文字の個数を超えるポイントを検出し、そのポイントにおけるピーク値を閾値に設定する。
【００４７】
このステップＳ４について、図７〜図９を用いて具体例を説明する。図７は、図３に示す画像データを垂直射影した結果（一例）を示す図である。図８は、図７に示す垂直射影データにおいて、正のピーク値のヒストグラム（所定ピーク値を示す上に凸のピークの度数）を示す図である。図９は、図８のヒストグラムについて、ピーク値の最大値から最小値の方向への累積度数（所定ピーク値以上のピークの累積度数）を求めた図である。なお、図８では、横軸を所定ピーク値、縦軸を度数としており、図９では、横軸を所定ピーク値、縦軸を累積度数としている。
【００４８】
図８によれば、例えばピーク値が２２０前後となっているものが全部で５個存在している一方で、大半のピーク値は、２５５付近に密集していることが分かる。そして、図９によれば（図９に示す折れ線を右端から左方へ辿っていくと）、２５５付近で正のピーク値の累積度数が急激に増え、その後、ピーク値が小さくなるにつれて、なだらかに増加している。
【００４９】
ここで、仮に認識すべき文字の個数が４４個であったとすると、図９において累積度数が４４を超える時点におけるピーク値、すなわち累積度数が４５（認識すべき文字の個数＋１）となる時点におけるピーク値２２５が、境界判定閾値（図７でいうＳＬＥＶ）となる。このように、本実施形態では、境界判定閾値は、垂直射影データに含まれる正のピーク値を大きい方から順に並べたとき、最も大きなピーク値から数えて、文字列を構成する文字の個数に１を加えた個数番目に相当するピーク値となっている。
【００５０】
次に、文字境界決定（文字境界検出）処理が行われる（ステップＳ５）。より具体的には、データ処理部１３の文字境界決定部１３ｅは、射影プロファイルのレベル値を、ステップＳ４において求められた境界判定閾値と比較して、境界判定閾値を超えている区間を文字と文字との間のスペースと判定する（文字境界を決定する）。なお、例えばＳＬＥＶを超えている区間の両側端点の中点を境界位置とするようにしてもよい。また、このステップＳ５は、ステップＳ４において得られた垂直射影データが所定の境界判定閾値を超えた箇所を、文字列を構成する文字の区切り位置として検出する「区切り位置検出ステップ」の一例に相当する。
【００５１】
このようにして、ステップＳ５の処理によって、各文字の左右境界位置が暫定的に決定されると、図１０に示すように外周矩形領域内における文字が求められる。図１０は、文字列を構成する文字「<」の画像データを示す図である。
【００５２】
図１０において、この「<」の文字の位置を正確に特定するために、垂直射影ＰＸ及び水平射影ＰＹを計算する。そして、求められたＰＸに沿って、文字の左右境界位置の検出を行い、矩形領域の左端点を起点としてＰＸを右方向にスキャンして、そのレベル値（画素の検出）が連続して一定回数（例えば３回）閾値を下回ったら、その最初の地点を文字の左エッジとする。そして、同様に矩形領域の右端点を起点としてＰＸを左方向にスキャンして、連続して一定回数、閾値を下回ったらその最初の地点を文字の右エッジとする。
【００５３】
次に、水平射影ＰＹについても同様に、境界決定処理にて得られている左エッジ位置と右エッジ位置とで区切られた範囲を定義域として行い、矩形領域の上下両端を外側からスキャンして、各レベル値が連続して一定回数、閾値を下回ったら、その最初の地点を文字の上下エッジとする。このようにして、文字列内の文字位置を特定し、文字切り出し（ステップＳ６）を行うことができる。なお、このステップＳ６は、ステップＳ５で検出された文字の区切り位置に基づいて、文字に外接する矩形（図１０の４本の点線で囲まれた部分）を求める「外接矩形算出ステップ」の一例に相当する。このようにして、文字に外接する矩形を求めることによって、基準文字特徴量との類似度を算出する次の処理を行う際に、（余白があることに起因した）誤差を少なくすることができ、ひいては文字認識の精度を高めることができる。
【００５４】
次に、特徴抽出が行われる（ステップＳ７）。より具体的には、データ処理部１３の特徴抽出部１３ｇは、上述した外接矩形領域を任意のサブ領域に分割（例えば１個の外接矩形領域を５×５の領域に分割し、そのうち１個の領域をサブ領域とする）し、各サブ領域において、サブ領域内の全画素数に占める黒画素数の割合を求め、それらを要素とする特徴ベクトルを生成する。
【００５５】
次に、特徴比較が行われる（ステップＳ８）。より具体的には、データ処理部１３の特徴比較部１３ｈは、ステップＳ７で求めた特徴ベクトルを、予め記録担体２で使用される全文字（つまり、予め辞書登録された基準文字）について求めておいた基準特徴ベクトルと比較して、類似度（例えば正規化相関係数）を求める。そして、求めた類似度が高い文字を該当する候補文字に設定する文字判定が行われる（ステップＳ９）。
【００５６】
ここで、基準特徴ベクトルは、予め特徴辞書格納部１３ｉに格納されているものであって、特徴比較が行われる際に、特徴辞書格納部１３ｉから特徴比較部１３ｈへ読み出され、比較対象の矩形内の文字のデータ（ステップＳ７で求めた特徴ベクトル）との特徴比較が行われる。なお、ステップＳ７及びステップＳ８は、ステップＳ６で切り出された矩形内の文字特徴量を抽出して、基準文字特徴量との類似度を算出する「類似度算出ステップ」の一例に相当する。
【００５７】
次に、文字判定（ステップＳ９）では、ステップＳ８の特徴比較によって求めた類似度に基づいて設定された候補文字を、記録担体２に用いられた文字として認識する。このステップＳ９は、類似度に基づき暫定的に文字判定を行う「暫定的文字判定ステップ」の一例に相当する。なお、以下では、この暫定的に判定された文字を暫定判定文字という。
【００５８】
ここで、類似度の一定値以上のものを候補文字とすると、候補文字として１文字が設定される場合もあれば、いくつかの文字が設定される場合もある。例えば、類似度が一定値（０．６など）を超える候補文字が複数個存在する場合には、一旦、類似度が最も高い文字を暫定判定文字と判定する。そして、この暫定判定文字の類似度、すなわち候補文字の類似度が最も高い値をスコア値と定義する。なお、類似度およびスコア値は、候補文字の特徴ベクトルと基準特徴ベクトルが完全に一致する場合に１．０であって、０以上の数値で表される。
【００５９】
また、複数の候補文字の類似度に有意な差が無く文字認識を行うことができない場合には、特徴ベクトルから導き出せる２次的な特徴量を利用して、類似文字の判別を行い暫定判定文字を決定してもよい。
【００６０】
例えば、任意に分割したサブ領域を左側半分と右側半分との２領域の左右線対称に分けて、部分特徴ベクトルを構成してそれらの間の類似性を調べたり、同様に上半分と下半分との２領域の上下線対称に分けて、類似性を調べたりしてもよい。また、左右線対称や上下線対称と同様に点対称で類似性を調べてもよい。
【００６１】
さらには、ひとつの文字について３種類の形状特徴量が得られたので、それらの値の相互関係から、該当する文字を対応付けてもよい。また、これでも分離できない場合もあり得る。例えば、記録担体２に用いられる文字タイプによっては、'Ｏ'と'０'の判別が難しい場合がある。この場合、例えば、文字の高さの違いや、四隅の曲率の違いを調べるなどにより、判別することができる。
【００６２】
ここで、本実施形態に係る文字列認識方法では、ステップＳ９までの一連の文字判定処理が終わった後、再実行判定部１３ｋにおいて再実行判定処理が行われる。図２中の点線枠内の処理、すなわちステップＳ１３およびこれに先行する処理がこれに相当する。なお、ステップＳ９までの処理は、主として、個々の"文字認識"の精度を向上させるための処理であるが、ステップＳ１０以降の処理は、文字列全体に着目し、"文字列認識"の精度を向上させるための処理となる。
【００６３】
この再実行判定処理では、２値化基準閾値を変更すると類似度及びスコア値が改善または劣化されることに注目し、エラー要因、すなわち後述する評価カテゴリの分類を考慮して、文字認識の精度を向上させるように２値化基準閾値を一定の方式で変更している。換言すると、この再実行判定処理では、文字列認識結果をエラー要因により複数の評価カテゴリに分類し、分類された評価カテゴリに基づいて、再実行の要否を決めると同時に、再実行する次のサイクル（ステップＳ１〜Ｓ１３）で適用される２値化基準閾値を変更する方向を決定する。
【００６４】
ここで、前提となる２値化基準閾値の特性について説明する。一般に、２値化基準閾値が相対的に低い場合には、２値化画像における文字線は細くなり、逆に相対的に高い場合には文字線は太くなる。この文字線の太さが基準文字画像の文字太さと著しく異なると、特徴比較処理（ステップＳ８）において類似度が小さくなり、したがって、スコア値が例えば０．５等と小さい値を示すことになる。２値化基準閾値が適正であれば、類似度つまりスコア値は０．９など、相対的に大きい値となる。すなわち、真の文字である確率が高くなる。そこで、本実施形態では、類似度およびスコア値を改善させ、文字認識の精度を向上させるように２値化基準閾値を変更している。
【００６５】
次に、文字列認識結果の評価をするためにエラー要因に基づき準備される複数の評価カテゴリについて説明する。本実施形態では、文字列認識結果は次のようにカテゴリ１からカテゴリ４に分類する。なお、ここでエラー要因とは、エラー（障害事象）の要因およびその要因の文字認識における影響度の水準を含む概念である。
【００６６】
まず、第１の評価カテゴリ（カテゴリ１）は、文字認識に至る前に処理を打ち切らざるを得ないような比較的重大なエラー（いわゆるハードエラー）である。具体的には、記録担体２の文字が正しく印刷されていて、適切な照明条件で画像取り込みが行われれば、認識処理は個々の文字認識まで正常に実行される。しかし、記録担体２の文字の印刷色が薄かったり、媒体（記録担体２）搬送速度が異常に速かったりするような場合は、文字切り出しを正しく行うことができない等の理由により、文字認識を遂行することができない。このようなエラーを第１の評価カテゴリとする。
【００６７】
第２の評価カテゴリ（カテゴリ２）は、文字認識まで完了できたものの、文字の認識結果に誤りがあった場合、文字認識を遂行することができない比較的軽微なエラー（いわゆるソフトエラー）である。このソフトエラーは、ステップＳ８における暫定判定文字の類似度つまりスコア値が所定の基準（例えば０．６）に満たない低い値であった場合や、実際とは異なる文字に判定されてしまった場合に起こる文字誤りである。このソフトエラーを第２の評価カテゴリとする。なお、このスコア値に関する所定の基準を以下では、スコア判定閾値という。
【００６８】
また、第３の評価カテゴリ（カテゴリ３）として、ソフトエラーは発生しなかったが、認識対象の文字列を形成する暫定判定文字のスコア値の中に比較的小さいものがあった場合が考えられる。これは、照明むらや速度むら等の理由で、その文字に限って文字線が部分的に太くなりすぎたり、細くなりすぎたりするような場合が該当する。さらに、第４の評価カテゴリ（カテゴリ４）は、ソフトエラーがなく、いずれの暫定判定文字のスコア値もスコア判定閾値を上回っている場合である。
【００６９】
次に、文字列認識結果を各カテゴリに分類する様子について図２により説明する。先ず、カテゴリ１に該当するハードエラーで文字認識を遂行することができない場合は、ステップＳ５の文字境界検出が不能であったと判断され（ステップＳ５ａ：ＮＯ）、２値化基準閾値を変更する処理（ステップＳ１３）に移行する。また、文字境界検出が可能であった場合（ステップＳ５ａ：ＹＥＳ）は、次の文字切り出し（ステップＳ６）へ進む。なお、行切り出し（ステップＳ２）が不能であった場合も同様にハードエラーとして、ステップＳ１３へ移行するようにしてもよい。
【００７０】
カテゴリ２に該当するソフトエラーの文字誤りは、暫定的文字判定ステップ（Ｓ９）で判定された文字に基づく文字列をチェックサム（ｃｈｅｃｋｓｕｍ）により判定する（ステップＳ９ａ）。具体的には、判定された文字に基づく文字列について、各文字に所与の値の合計値と文字列にあらかじめ付与されたチェックデジット（正しい文字列の合計値）とを比較し、数値が不一致の場合（ステップＳ９ａ：ＮＯ）、２値化基準閾値を変更する処理（ステップＳ１３）に移行する。また、ソフトエラーが検出されない場合（ステップＳ９ａ：ＹＥＳ）は、後述するスコア値統計処理（ステップＳ１０）へ進む。
【００７１】
ハードエラーもソフトエラーも無く、カテゴリ１にも２にも該当しない場合、すなわち、カテゴリ３また４に該当する場合は、スコア値統計処理が行われる（ステップＳ１０）。具体的には、文字列認識結果を判定する基準として、認識対象画像に含まれる識別対象文字のスコア値（すなわち、認識対象の文字列を形成する暫定判定文字の類似度）の総数、最大値、最小値、平均値、標準偏差、ばらつきなどを計算する。これらスコア値の総数、最大値、最小値、平均値、標準偏差、ばらつきは、基本統計量の一例である。なお、このスコア値統計処理（ステップＳ１０）は、ステップＳ９の文字判定処理で暫定的に判定された全ての文字に関する類似度（スコア値）の基本統計量を算出する「基本統計量算出ステップ」の一例に相当する。
【００７２】
次に、ステップＳ１０で求めたスコア値の基本統計量に基づき文字列認識結果の評価が行われる（ステップＳ１１）。このステップＳ１１では、カテゴリ３とカテゴリ４の分類が行われる。具体的には、採用する基本統計量の種類に応じあらかじめ実験や経験に基づいて設定した任意の閾値と基本統計量とを比較してカテゴリの分類を判定する。具体例は後述する。
【００７３】
そして、ステップＳ１１での評価結果が妥当でない場合（ステップＳ１１：ＮＯ）は、カテゴリ３に該当する場合として、２値化基準閾値を変更する処理を行い（ステップＳ１３）、新しく変更した２値化基準閾値に基づいて、２値化基準処理を行うステップＳ１に戻る。ここで、ステップＳ１１→ステップＳ１３→ステップＳ１の一連のフィードバックは、ステップＳ１０のスコア値統計処理で算出された基本統計量に基づいて、２値化基準閾値を変更した後、処理をステップＳ１に戻す「処理戻しステップ」に相当する。
【００７４】
一方、ステップＳ１１での評価結果が妥当である場合（ステップＳ１１：ＹＥＳ）は、すなわち、ハードエラーもソフトエラーもなく、いずれの暫定判定文字のスコア値もスコア判定閾値を上回っているカテゴリ４に該当する場合として、この段階で判定結果を確定し（ステップＳ１２）、処理は終了する。
【００７５】
次に、ステップＳ１１の文字列認識結果に基づき２値化基準閾値を変更する様子（ステップＳ１３）を説明する。本実施形態では、スコア値の基本統計量として、スコア値の最小値を用いている。図１１は、最初のサイクル（サイクル１）について、複数の評価カテゴリに基づいて２値化基準閾値を変更する様子（論理）を説明するための説明図である。図１２は、第２回以降のサイクル（サイクル２および３）について、同様の説明図である。なお、カテゴリは記号Ｃで表わしている（例えば、カテゴリ１はＣ１となる）。また、Ｔは１回目のサイクル（図２のステップＳ１〜ステップＳ９の一連の処理サイクル）の２値化基準閾値であり、Ｄは２値化基準閾値の変化分（任意値）である。
【００７６】
最初のサイクル１の結果は、前述のステップＳ５ａ、Ｓ９ａおよびＳ１１の判定に基づいて、図１１の表に示すとおり、カテゴリ１〜４（Ｃ１〜Ｃ４）に分類される。すなわち、カテゴリ１は、前述のステップＳ５ａでＮＯとなった場合で、ハードエラーを示し、例えば文字数が足りない等である。カテゴリ２は、前述のステップＳ９ａでＮＯとなった場合で、ソフトエラーを示し、例えば文字誤りが生じた等である。カテゴリ３は、前述のステップＳ１１でＮＯとなった場合で、ハードエラー及びソフトエラーはないが、暫定判定文字のスコア値の中に比較的小さな値があり、信頼性に欠ける場合である。また、カテゴリ４は、ハードエラー及びソフトエラーはなく、スコア値の中に比較的小さな値もなく、信頼性を確保できる場合である。
【００７７】
ここで、カテゴリ３とカテゴリ４の分類に関して、具体例を説明する。図１１では、任意の閾値としてＫ（例えば０．８など）を設定する。このＫは、前述のとおりあらかじめ実験や経験に基づいて求めた値である。また、Ｓｃｏｒｅは、ステップＳ１０で求めたスコア値の基本統計量を表す。従って、任意の閾値（Ｋ）と基本統計量（Ｓｃｏｒｅ）とを比較してカテゴリ３とカテゴリ４の分類を判定している。換言すると、認識対象画像に含まれる識別対象文字のスコア値（認識対象の文字列を形成する暫定判定文字の類似度）が任意の閾値Ｋを超えている場合はカテゴリ４と判定し、任意の閾値Ｋに満たない場合はカテゴリ３と判定する。なお、本実施形態では、スコア値の基本統計量としてスコア値の最小値を用いて、任意の閾値Ｋと前述のスコア判定閾値を実質同一の値として処理を簡略化している。
【００７８】
次に、図１１のカテゴリ１〜カテゴリ３において、次サイクル（サイクル２）における２値化基準閾値はＴ＋Ｄと変更することが指定される。また、カテゴリ４のケースでは、上述のとおりサイクル１で終了となっている。なお、Ｄは負であってもよいが、ここではＤ>０として考える。このように、次サイクルにおける２値化基準閾値をＴ＋Ｄとしたのは、この段階では、２値化基準閾値Ｔを新たな２値化基準閾値（Ｔ＋Ｄ）に変えることによって判定結果が良くなるか悪くなるか分からないためである。このように、サイクル１が終了した後、２値化基準閾値をＴ＋Ｄに変更することによって得られた新しい結果に基づいて、第２回目の２値化処理（ステップＳ１）から始まる一連の処理（サイクル２）が行われる。
【００７９】
次に、第２回以降のサイクル（サイクル２および３）について、複数の評価カテゴリに基づいて２値化基準閾値を変更する様子（論理）を図１２で説明する。なお、「処理コード」とは、サイクル２までの結果で決まる現在の処理の状態を表わす記号を意味し、記号Ｑで表す。また、Ｓｃｏｒｅ１はサイクル１で算出した基本統計量を表し、同様にＳｃｏｒｅ２および３はサイクル２および３で算出した基本統計量を表す。
【００８０】
図１２（ａ）は、サイクル２が完了した後の状態において、サイクル１の結果とサイクル２の結果の組み合わせ、すなわち、現在の処理の状態に基づき、２値化基準閾値を変更する様子を示す。例えば、１回目のサイクル１の判定結果がカテゴリ１であって、２回目のサイクル２の判定結果がカテゴリ２であった場合には、２値化基準閾値ＴをＴ＋Ｄとしたことで判定結果が妥当な方向に変化したため（判定結果としては、カテゴリ１よりカテゴリ２の方が良い）、３回目のサイクルでは、２値化基準閾値ＴをＴ＋２Ｄとして次サイクルを実行する。この処理に、処理コードＱ２１を割り当てる。なお、サイクル２におけるカテゴリ１〜カテゴリ４の分類の詳細については、サイクル１と同様である。
【００８１】
また、サイクル２の結果がカテゴリ４の場合には、基本統計量としてのスコア値の最小値（Ｓｃｏｒｅ２）が任意の閾値Ｋ（スコア判定閾値）を超えていることから、結果は妥当であるとして（図２のステップＳ１１：ＹＥＳ）、この段階で判定結果を確定し（図２のステップＳ１２）、処理は終了する。これにより、ステップＳ９において暫定的に判定された文字の判定結果が確定することになる。なお、サイクル１の結果がカテゴリ４であった場合は、既に前のサイクルでステップＳ１２まで完了し、図１２は空欄である。
【００８２】
次に、図１２（ｂ）は、サイクル２までの処理の状況（処理コード）と３回目のサイクル（サイクル３）の結果によって、最終的に何サイクル目の結果が採用されるかを示している。例えば、サイクル２で処理コードＱ２１をもつ場合において、サイクル３の結果がカテゴリ２であったとする。そうすると、２回目も３回目もカテゴリ２であったため、この場合は２回目と３回目の結果のいずれかが選択されることになる。いずれを選択するかは、基本統計量としてのスコア値の最小値Ｓｃｏｒｅ２及びＳｃｏｒｅ３の大小関係によって決定すればよい。例えばＳｃｏｒｅ３≧Ｓｃｏｒｅ２ならサイクル３の判定結果に基づく文字および文字列が採用される。
【００８３】
他の例について説明すると、例えば１回目のサイクル１でカテゴリ３だった場合（図１１のＣ３のケース）を考える。この場合、明示的にエラーは起きていなくても（ソフトエラーは生じていなくても）、基本統計量としてのスコア値の最小値が任意の閾値Ｋ（スコア判定閾値）を下回っていることから、信頼性が不十分である。したがって、２値化基準閾値ＴをＴ＋Ｄに変更して２回目のサイクル（サイクル２）を実行する（図１１のＣ３）。サイクル２の結果が同じくカテゴリ３であった場合、スコア値の最小値の増減を見て、増加していれば（基本統計量が改善していれば）、２値化基準閾値ＴをＴ＋２Ｄに変更して３回目のサイクル３を実行する（この場合、処理コードはＱ３３である）。一方、増加していなければ（基本統計量が改善していなければ）、２値化基準閾値ＴをＴ−Ｄに変更して３回目のサイクル３を実行する（この場合、処理コードはＱ３４である）。
【００８４】
このように、本実施形態では、４つに分類された評価カテゴリ（カテゴリ１〜カテゴリ４）に基づいて、２値化基準閾値を変更するにあたって、ステップＳ１０のスコア値統計処理で算出された基本統計量としてのスコア値の最小値が大きくなるように（つまり、改善するように）変更していく。
【００８５】
なお、本実施形態では、最大サイクル数を３としているが、処理時間に余裕がある場合には更に回数を増やしてもよい。
【００８６】
［実施形態の主な効果］
以上説明したように本実施形態に係る文字列認識方法は、媒体上の既知の位置に印刷された既知の文字数からなる文字列を、１次元撮像素子１１で主走査を行い、手動若しくは機械駆動による媒体移動で副走査を行うようにして２次元の画像情報に変換し、この画像データを適切に処理することによって、文字列の認識を行うようにした文字列認識装置において、媒体をスキャンした多値画像を２値化するステップ（ステップＳ１）と、媒体移動方向に沿った文字列における文字区切り位置を検出するために、射影に基づいて文字の境界を決定するための境界判定閾値を算出するステップ（ステップＳ４）と、この境界判定閾値によって文字境界を決定するステップ（ステップＳ５）と、文字境界に基づいて文字に外接する矩形を求めるステップ（ステップＳ６）と、外接矩形内の文字特徴量を抽出して（ステップＳ７）、辞書登録された基準文字の特徴量との類似度を算出するステップ（ステップＳ８）と、求めた類似度が高い文字を候補文字として文字判定するステップ（ステップＳ９）と、を含む一連のステップにより文字列を認識し、さらに認識された全文字に関する類似度をスコア値として、そのスコア値の基本統計量を含む文字列の認識結果データに基づいて、媒体画像の２値化と文字認識を再実行するパス（ステップＳ１０，Ｓ１１，Ｓ１３）を有することとしているので、文字列認識の精度を向上させることができる。その結果、文字列認識の認識結果に対する信頼性を高めることができる。すなわち、スコア値の基本統計量を用いることで、文字１個１個の精度向上ではなく、文字列全体を考えた際の精度向上に大きく貢献することができる。
【００８７】
さらに、本実施形態に係る文字列認識方法は、文字列の認識結果データに文字列認識中に発生した障害事象の水準（エラーによる評価カテゴリの分類）を含むようにしているので、文字列認識の精度を一層高めることができる。また、再実行するか否かの判定は、認識中に発生した障害事象の水準である評価カテゴリの分類（カテゴリ１〜カテゴリ４）とスコア値の基本統計量との組合せによって行うこととしたため、予め評価カテゴリテーブル（例えば図１１および図１２）を作成しておくことによって、精度良く文字列認識を行うことができる。
【００８８】
［別の実施の形態］
これまで説明した図１１および図１２の実施形態では、文字列の判定結果を得るための信頼性判定の基準となる基本統計量として、スコア値の最小値を用いているが、スコア値の分散、標準偏差、最大値、平均値およびばらつき、またはスコア値の総数（度数）などを適宜選択して用いてもよい。そして、選択した基本統計量（Ｔ）の特性に応じて、これらが改善するように２値化基準閾値を変更（Ｄを増減）した後、処理をステップＳ１に戻す「処理戻しステップ」に引き続き、２回目以降のサイクルを実行すればよい。具体的には、基本統計量として分散や標準偏差を採用した場合には、これらが小さくなるように変更すれば基本統計量が改善されることになる。
【００８９】
例えば、スコア値の基本統計量として標準偏差を使用した場合の評価カテゴリに基づいて２値化基準閾値を変更する様子を説明する。図１３は、基本統計量として標準偏差を使用した２値化基準閾値と処理コードを示す評価カテゴリテーブルの例である。図１３において、図１２と同等の要素やパラメータは、図１２と同じ符号を付している。図１３が図１２と異なるのは、基本統計量としてスコア値の標準偏差を採用したことである。従って、カテゴリ３とカテゴリ４を分類するための、基本統計量としての標準偏差（Ｓｃｏｒｅ１、Ｓｃｏｒｅ２、Ｓｃｏｒｅ３）および任意の閾値Ｋの大小関係が図１３では図１２とは逆の関係になっている。また、図１２の実施の形態における閾値Ｋとスコア判定閾値は実質同一（同種）の係数であったが、図１３の閾値Ｋは標準偏差についてあらかじめ実験や経験に基づいて求めた閾値であり、前述のスコア判定閾値とは異なる数値である。従って、図１３の実施形態におけるカテゴリ３およびカテゴリ４の分類は、ステップＳ８における暫定判定文字の類似度つまりスコア値がスコア判定閾値（例えば０．６）を超えている場合、すなわちソフトエラーが発生せず第２の評価カテゴリ（カテゴリ２）に該当しない場合に実行される。次にその具体例を説明する。
【００９０】
図１３（ａ）では、Ｓｃｏｒｅ１はサイクル１の基本統計量としてスコア値の標準偏差を示しているので、閾値ＫよりもＳｃｏｒｅ１が大きい場合（Ｓｃｏｒｅ１>Ｋ）には、ばらつきが顕著に大きく信頼性が低いと判断し、カテゴリ３に分類され、処理をステップＳ１に戻す「処理戻しステップ」によりサイクル２を実行する。一方で、そうでない場合（Ｓｃｏｒｅ１≦Ｋ）には、カテゴリ４に分類され、サイクル１の結果が有効であるとしてここで処理を打ち切る。
【００９１】
さらに、サイクル２において、Ｓｃｏｒｅ２はサイクル２の基本統計量としてスコア値の標準偏差を示しているので、Ｓｃｏｒｅ２>Ｋでカテゴリ３に分類された場合においては、Ｓｃｏｒｅ２≦Ｓｃｏｒｅ１のとき（処理コードＱ３３）は、Ｔ＋２Ｄとして次のサイクル３を実行する一方、Ｓｃｏｒｅ２>Ｓｃｏｒｅ１のとき（処理コードＱ３４）は、Ｔ−Ｄとして次のサイクル３を実行する。
【００９２】
図１３（ｂ）は、サイクル１およびサイクル２の結果（処理コード）に対応するサイクル３の結果の判断を表す評価カテゴリテーブルであり、図１２（ｂ）と同様である。例えば、サイクル２終了時点で処理の状態が処理コードＱ１１であった場合において、サイクル３の結果がカテゴリ２であれば、サイクル３の結果を採用することを意味する。このように、基本統計量の種類に応じて、最適な評価カテゴリテーブルを用いることができる。
【００９３】
次に、また別の実施の形態として、例えば、基本統計量として、スコア値の総数（度数）を求めるようにすれば、スコア値の総数が所定個数（すなわち文字列に含まれるべき総文字数）に満たなかった場合には、文字数が足りないハードエラーとして、文字列認識結果をカテゴリ１に分類するようにしてもよい。この場合は、基本統計量としてスコア値の最小値と併用することにより、図２のフローにおいてステップＳ５ａを省略してもよい。
【００９４】
また、さらに別の実施の形態として、基本統計量のうちスコア値の最小値が、例えば０．６のスコア判定閾値に達しなかった場合に、文字誤りが生じたソフトエラーとして、文字列認識結果をカテゴリ２に分類するようにして、ステップＳ９ａを省略してもよい。
【００９５】
このように、本発明の実施の形態では、スコア値の基本統計量として、スコア値の分散、標準偏差、最小値、最大値、平均値およびばらつき、またはスコア値の総数（度数）を単独または複数組み合わせて、文字列の判定結果を得るための信頼性判定の基準に含むこととしたので、２値化基準閾値を認識対象領域全体の読取信頼性を反映したパラメータに基づいて設定することが可能となり、文字列認識の精度を簡易に高めることができる。
【００９６】
さらに、２値化基準閾値を変化させる方向は、スコア値の基本統計量が改善する方向であることとしたので、簡易な処理で２値化基準閾値を適切に変更することができる。例えば、基本統計量として最小値を用いる場合、基本統計量が増加したら、改善しているとして２値化基準閾値を大きくする一方、基本統計量が減少したら、改善していないとして２値化基準閾値を逆方向に変化させればよい（小さくすればよい）。
【００９７】
なお、本実施形態では、１次元撮像素子１１，リニア搬送機構を用いることとしたが、本発明はこれらに限定されるものではない。例えば、２次元ＣＣＤやＣＭＯＳイメージャなどのエリアセンサと被写体支持機構との組み合わせでもよい。また、認識対象としては、活字文字だけでなく、手書き文字にも適用できる。また、文字認識に止まらず、１次元及び２次元バーコードの復号などにも適用できる。また、２値化基準閾値の変化幅は、Ｔ＋ＤやＴ＋２ＤなどＤ単位としたが、＋１．５Ｄや＋２Ｄなど、係数を調整して実装系に合わせて柔軟な設定を行うことができる。また、再実行回数は最大３回としたが、処理時間が許す限り増加させてもよい。
【産業上の利用可能性】
【００９８】
本発明に係る文字列認識方法及び文字列認識装置は、文字列認識の信頼性を高めるものとして有用である。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施の形態に係る文字列認識装置の電気的構成を示すブロック図である。
【図２】本発明の実施の形態に係る文字列認識方法を示すフローチャートである。
【図３】記録担体のＯＣＲ文字記憶領域（図１参照）に印刷された文字を撮像したときの画像データを示す図である。
【図４】図３に示す画像データを垂直射影した結果（一例）を示す図である。
【図５】文字列を構成する文字「ＫＯ<ＢＣ」に着目したときの画像データである。
【図６】図５に示す画像データを垂直射影することによって得られた垂直射影データ（一例）である。
【図７】図３に示す画像データを垂直射影した結果（一例）を示す図である。
【図８】図７に示す垂直射影データにおいて、正のピーク値のヒストグラムを示す図である。
【図９】図８のヒストグラムについて、最大値から最小値の方向への累積度数を求めた図である。
【図１０】文字列を構成する文字「<」の画像データを示す図である。
【図１１】最初のサイクルについて、複数の評価カテゴリに基づいて２値化基準閾値を変更する様子（論理）を説明するための説明図である。
【図１２】第２回以降のサイクルについて、複数の評価カテゴリに基づいて２値化基準閾値を変更する様子（論理）を説明するための説明図である。
【図１３】評価カテゴリテーブルの他の例を示す図である。
【符号の説明】
【０１００】
１  文字列認識装置
２  記録担体
１１  撮像素子
１２  画像メモリ
１３  データ処理部
１３ａ  ２値化部
１３ｂ  行切り出し部
１３ｃ  射影生成部
１３ｄ  閾値算出部
１３ｅ  文字境界決定部
１３ｆ  文字切り出し部
１３ｇ  特徴抽出部
１３ｈ  特徴比較部
１３ｉ  特徴辞書格納部
１３ｊ  スコア集計部
１３ｋ  再実行判定部
１４  文字出力部
【図１】
2010123090.tif 000003
【図２】
2010123090.tif 000004
【図３】
2010123090.tif 000005
【図４】
2010123090.tif 000006
【図５】
2010123090.tif 000007
【図６】
2010123090.tif 000008
【図７】
2010123090.tif 000009
【図８】
2010123090.tif 000010
【図９】
2010123090.tif 000011
【図１０】
2010123090.tif 000012
【図１１】
2010123090.tif 000013
【図１２】
2010123090.tif 000014
【図１３】
2010123090.tif 000015