(57)【特許請求の範囲】
【請求項１】
入力された文字画像を文字認識する文字認識装置において、
速度優先の第１の文字認識手段と、
精度優先の第２の文字認識手段と、
文字と当該文字に対する類似文字群の組みで構成された類似文字辞書と、
前記速度優先の第１の文字認識手段を用いて前記文字画像を文字認識することによって、候補文字群を抽出する第１の抽出手段と、
前記文字画像を含む原稿画像に応じて、類似文字群を抽出する対象となる候補文字の個数Ｎを変更する変更手段と、
前記抽出された候補文字群中における類似度の高い方から上位Ｎ個の候補文字それぞれに対する類似文字群を前記類似文字辞書から抽出する第２の抽出手段と、
前記第１及び第２の抽出手段で抽出された文字群を候補範囲とした前記精度優先の第２の文字認識手段を用いて前記文字画像を文字認識し、該第２の文字認識手段で文字認識した結果の候補文字を出力するように制御する制御手段と
を備えることを特徴とする文字認識装置。
【請求項２】
前記変更手段は、前記文字画像を含む原稿画像の鮮明度に応じて、前記類似文字群を抽出する対象となる候補文字の個数Ｎを変更することを特徴とする請求項１に記載の文字認識装置。
【請求項３】
前記変更手段は、前記文字画像を含む原稿画像の種別に応じて、前記第２の抽出手段における類似文字群を抽出する対象の候補文字の個数Ｎを変更することを特徴とする請求項第１項に記載の文字認識装置。
【請求項４】
前記第１の文字認識手段は、シティ・ブロック距離によって文字認識し、前記第２の文字認識手段は、マハラノビス距離によって文字認識することを特徴とする請求項第１項に記載の文字認識装置。
【請求項５】
前記類似文字辞書は、各文字の学習用データを用いて、該学習用データ間の類似度に基づいて各文字に類似する類似文字群を定め、当該求めた類似文字群を各文字と対応付けて格納した辞書であることを特徴とする請求項第１項に記載の文字認識装置。
【請求項６】
前記各文字に対応づけられた類似文字群の類似文字の個数は、可変とすることを特徴とする請求項第５項に記載の文字認識装置。
【請求項７】
入力された文字画像を文字認識する文字認識方法において、
速度優先の第１の文字認識手段を用いて前記文字画像を文字認識することによって、候補文字群を抽出する第１の抽出工程と、
前記文字画像を含む原稿画像に応じて、類似文字群を抽出する対象となる候補文字の個数Ｎを変更する変更工程と、
前記抽出された候補文字群中における類似度の高い方から上位Ｎ個の候補文字それぞれに対する類似文字群を、文字と当該文字に対する類似文字群の組みで構成された類似文字辞書から抽出する第２の抽出工程と、
前記第１及び第２の抽出工程で抽出された文字群を候補範囲とした精度優先の第２の文字認識手段を用いて前記文字画像を文字認識し、該第２の文字認識手段で文字認識した結果の候補文字を出力するように制御する制御工程と
を備えることを特徴とする文字認識装方法。
【請求項８】
前記変更工程では、前記文字画像を含む原稿画像の鮮明度に応じて、前記類似文字群を抽出する対象となる候補文字の個数Ｎを変更することを特徴とする請求項第７項に記載の文字認識方法。
【請求項９】
前記変更工程では、前記文字画像を含む原稿画像の種別に応じて、前記類似文字群を抽出する対象となる候補文字の個数Ｎを変更することを特徴とする請求項第７項に記載の文字認識方法。
【請求項１０】
前記第１の文字認識手段は、シティ・ブロック距離によって文字認識し、前記第２の文字認識手段は、マハラノビス距離によって文字認識することを特徴とする請求項第７項に記載の文字認識方法。
【請求項１１】
前記類似文字辞書は、各文字の学習用データを用いて、該学習用データ間の類似度に基づいて各文字に類似する類似文字群を定め、当該求めた類似文字群を各文字と対応付けて格納した辞書であることを特徴とする請求項第７項に記載の文字認識方法。
【請求項１２】
前記各文字に対応づけられた類似文字群の類似文字の個数は、可変とすることを特徴とする請求項第１１項に記載の文字認識方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は文字認識装置及び方法に関するものである。
【０００２】
【従来の技術】
一般に、文字認識処理にもいくつかあるが、図４に示すような例も有効である。以下、順を追って説明する。
【０００３】
先ず、ステップＳ４０１で文書画像のスキャンを行い画像情報を２値のデジタル画像データに変換する。次のステップＳ４０２では、読み取った画像データに対して、１文字ごとの領域を取り出していく文字切り出し処理を行い、ステップＳ４０３で予め定められたアルゴリズムにしたがって特徴抽出を行う。
【０００４】
例えば、一文字の画像を８×８の小領域（計６４個の領域）に分割し、その小領域内で黒画素の数を集計する。６４個の領域ごとに黒画素の特徴が計算されるので６４次元の特徴ベクトルが生成されることになる。さらに文字の大きさの影響を取り除くためにステップＳ４０４で文字の大きさによって特徴ベクトルを正規化する。元の特徴ベクトルをＸ、正規化後の特徴ベクトルをＸ’とすると、
Ｘ’＝（ａ／（ｈ×ｗ））Ｘ
という正規化を行う。ただし、ｈ，ｗはそれぞれ文字の高さと幅で、ａは定数である。
【０００５】
こうして、正規化された特徴ベクトルと認識辞書の学習パターンを照合し最適な文字種を選び出すわけだが、ここで認識精度を高めようとして、精度の高い距離計算を用いて照合を行おうとすると、必然的に計算量が増大し、処理速度が低下してしまうという問題が発生し、逆に処理速度を向上させようとする場合には簡単な距離計算を行うことになるので認識精度が低下するという問題が発生する。
【０００６】
そこで、簡単な距離計算を用いた第一次照合により文字種を絞り込み、絞り込まれた文字種（候補）に対してのみ、より精度が高く演算量の多い第二次照合を行うという処理が考えられる。
【０００７】
ステップＳ４０５では、演算量の少ない距離計算を用いて第一次照合を行う。本例ではシティ・ブロック距離を用いる。そして、個々の正規な文字ｋに対する平均ベクトルμ（ｋ）（＝μ１  （ｋ），…，μ６４（ｋ））を予め記憶させた辞書を用意しておき、この平均ベクトルと認識対象の文字から得られた入力特徴ベクトルＸ（＝ｘ１（ｋ），…，ｘ６４（ｋ））との距離ｄｃ（ｋ）を下記の式で求める。
【０００８】
【数１】
0003548233.tif 000002
全ての文字種に足してｄＣ  が計算され、ステップＳ４０６でｄＣ  の小さい方から上位１０個の文字種が選択される。こうして選択された上位１０個の文字種に対してステップＳ４０７で第二次照合を行う。第二次照合では精度を重視して、演算量は多いが、精度の高い距離計算として次式で与えられるマハラノビス距離を用いる。
【０００９】
【数２】
0003548233.tif 000003
ここで、Ｓ（ｋ）は文字種ｋの共分散行列である。また、右肩の添え字ｔは転置を、−１は逆行列を表す。
【００１０】
こうして、ステップＳ４０８において、最も小さいｄＭを与える文字種を最終的な候補と判定しステップＳ４０９で出力する。
【００１１】
【発明が解決しようとする課題】
上記処理によれば、２段階で文字を絞り込むという点で、ある面で優れているが、これは第１次照合で絞られた候補の中に正解となる文字が含まれるというのが前提である。つまり、もし第１次照合で得られた候補内に正解となる文字が含まれていない場合には、第２次照合の精度にかかわらず正しい認識結果が得られないという問題がある。
【００１２】
【課題を解決するための手段】
本発明は上記問題点に鑑みなされたものであり、速度的に問題なく、且つ、認識対象の文字の取りこぼしの発生を抑制し、高い精度で文字を認識する文字認識装置及び方法を提供しようとするものである。
【００１３】
この課題を解決するため、例えば本発明の文字認識装置は以下に示す構成を備える。すなわち、
入力された文字画像を文字認識する文字認識装置において、
速度優先の第１の文字認識手段と、
精度優先の第２の文字認識手段と、
文字と当該文字に対する類似文字群の組みで構成された類似文字辞書と、
前記速度優先の第１の文字認識手段を用いて前記文字画像を文字認識することによって、候補文字群を抽出する第１の抽出手段と、
前記文字画像を含む原稿画像に応じて、類似文字群を抽出する対象となる候補文字の個数Ｎを変更する変更手段と、
前記抽出された候補文字群中における類似度の高い方から上位Ｎ個の候補文字それぞれに対する類似文字群を前記類似文字辞書から抽出する第２の抽出手段と、
前記第１及び第２の抽出手段で抽出された文字群を候補範囲とした前記精度優先の第２の文字認識手段を用いて前記文字画像を文字認識し、該第２の文字認識手段で文字認識した結果の候補文字を出力するように制御する制御手段とを備える。
【００１５】
また、前記第１の文字認識手段は、シティ・ブロック距離によって文字認識し、前記第２の文字認識手段は、マハラノビス距離によって文字認識することが望ましい。これによって、認識対象の候補文字を高速に絞り込むことが可能となり、尚且つ、高精度に文字を認識することが可能になる。
【００１９】
【実施例】
以下、添付図面に従って本発明に係る実施例を詳細に説明する。
【００２０】
本実施例では、ＯＣＲ（光学的文字認識装置）に適用した場合である。図１は第１の実施例の構成を表すブロック図である。
【００２１】
図１において、１０１は画像原稿に光を照射し、その反射光を読み取り電気信号に変換するスキャナ、１０２はスキャナ１０１で得られた電気信号を２値のデジタル電気信号に変換し他の装置構成要素に伝送するためのスキャナインターフェース回路、１０３はディスプレイのウィンドウ上で所望とする座標を入力するためのポインティングデバイス（マウス等）、１０４はポインティングデバイス１０３からの信号を受け、それを他の装置構成要素に伝送するためのインターフェース回路、１０５は装置全体の制御及び文字切り出し処理や認識処理を実行するためのＣＰＵ、１０６はＣＰＵ１０５が実行する制御プログラム、各種処理プログラム、認識辞書、類似文字種テーブルなどを格納しているＲＯＭ、１０７は文字画像の展開や文字認識処理のための作業領域などとして用いられるＲＡＭである。また、１０８は入力イメージや認識結果を表示するためのディスプレイ、１０９はディスプレイインターフェース回路、そして１１０は各装置構成要素を接続するバスである。
【００２２】
先ず、実施例における類似文字種テーブルの作成法を説明する。文字同士の近さの度合いを各文字種の平均特徴ベクトル間の距離で定義する。平均特徴ベクトルは同じ文字でもフォントや大きさ印刷状態などの異なるさまざまな学習データから予め求めておく。本実施例では距離はユークリッド距離を用いて類似文字種を定める。すなわち、ある文字種ｍに注目した場合、他の文字種ｋとの平均ベクトル距離Ｄ（ｍ，ｋ）は次のようにする。
【００２３】
【数３】
0003548233.tif 000004
ここで、Ｐは文字種の総数である。そして、すべてのｋに対してＤ（ｍ，ｋ）を計算し、距離の小さい方から上位１０個を類似文字とする。ただし、自分自身はＤ＝０で最も距離が小さくなるが意味がないので除く。この計算によりすべての文字種に対する類似文字種が定義されるのでこれをテーブル状態で予め格納しておく。尚、このテーブルは、実際にはその内容が変更されることはないので、実施例ではＲＯＭ１０６に予め書き込んでおく。但し、ＲＯＭに限定されるものではなく、ハードディスク装置等の記憶装置に保持させてもよいし、電源投入時にそれら不揮発性記憶装置からＲＡＭにロードするようにしても良い。
【００２４】
以上の結果、例えば“間”という文字に着目したとき、この文字“間”に平均ベクトルの一番小さいものから１０個が瞬時に取り出せるようになっている。
【００２５】
図３は上記類似文字テーブルの構造を模式的に示したものである。先頭文字３００に連続して格納されている文字がその先頭文字に類似している文字群であり、その類似度順（平均ベクトル距離の小さい順）に配置されている。従って、このテーブルには各先頭文字に対して類似している文字が１０文字ずつ並んでいるので、テーブルの先頭位置から１１文字ごとに検索することで、注目文字を検索できるので、注目文字に対する１０個の類似文字を抽出することが可能になっている。従って、文字“間”に着目した場合には、図示の符号３８０に該当する文字（文字コード）を検索できるので、その結果、問、聞、開、…閣の計１０文字をいっきに抽出できる。
【００２６】
尚、図では文字そのもので表しているが、実際には文字コード（例えば、ＪＩＳコード等）が格納されている。
【００２７】
次に、上記テーブルを備えた装置におけるＣＰＵ１０５の処理内容を図２のフローチャートに従って説明する。尚、同図における処理手順に対応するプログラムはＲＯＭ１０６に格納されているものである。
【００２８】
ステップＳ２０１〜Ｓ２０５は従来例のＳ４０１〜Ｓ４０５と同じであるものとし、説明が重複するので簡単に説明する。
先ず、原稿画像を読み取り、その読み取った２値画像データを一旦ＲＡＭ１０７の所定エリアに格納し、文字の切り出しを行う。１つの文字は、先に説明したのと同じ個数、すなわち、８×８の小領域（全部で６４個の領域）に分割し、６４次元の特徴ベクトルを生成する。次いで、文字のサイズによる影響を除くためにその生成した特徴ベクトルを正規化する（正規化の原理は先に説明した通り）。こうして、正規化された特徴ベクトルに基づいて、辞書（ＲＯＭ１０６に格納されているものとする）を参照する
以上がステップＳ２０１〜Ｓ２０５の処理である。
【００２９】
さて、辞書を参照することで、正規化された特徴ベクトルに近い方から数文字（説明を簡単にするためここでも１０文字にする）を選び出す（ステップＳ２０６）。
【００３０】
この結果、例えば以下の文字が選択されたとしよう。
【００３１】
間  問  聞  開  闘  閣  閉  岡  向  商            （１）
最も距離の近かった文字は「間」なので、類似文字種テーブル（図３参照）で「間」をキーとして検索する（ステップＳ２０７）。図３の類似文字種テーブルにおいて、テーブルの先頭から１１文字ごとに照合していくことによってキーと３８０のコードが一致する。その結果、符号３８１の位置から符号３９０の前の位置まで格納されている１０個の類似文字
問  聞  開  関  闘  閉  閑  岡  商  閣            （２）
を得ることができる。（２）と元々の１０個の候補（１）を合わせ、重複しているものを除くと
間  問  聞  開  関  闘  閉  閑  岡  商  閣  向    （３）
という１２個の文字が得られる。
【００３２】
次に、処理はステップＳ２０８に進んで、（３）の１２個の文字に対して第二次照合を行う。第二次照合は、先に説明したのと同じように精度の高いマハラノビス距離を次式で得る。
【００３３】
【数４】
0003548233.tif 000005
ここで、ｋは１２個の文字種を表し、Ｘは認識しようとしている文字イメージから得たベクトルである。
【００３４】
そして、最終的に、上記演算のよる１２個のｄＭ（ｋ）の中で距離の近い順に並び替え、その先頭文字を第１候補として出力する（ステップＳ２０９）。尚、表示画面に表示された第１候補を見た操作者が、キーボードやポインティングデバイスを使用して次候補表示指示を行った場合には、第２候補以下を表示画面にその順番に表示する。操作者は、この表示された候補の中から目的の文字を探し出し、選択することになる。
【００３５】
尚、ここでは１２個に対してマハラノビス距離を算出したが、第１次照合と第２次照合とでそれぞれ１０個の類似文字を用いるわけであるから、計算する個数は１０〜２０の範囲である。
【００３６】
以上の結果、本実施例によれば、認識対象の文字イメージに基づいて高速な手法によって先ず所定数の第１の候補文字（上記実施例では１０文字）を抽出する。そして、その候補文字群における一番類似している文字そのもの対する類似文字をテーブルから所定数の第２の候補文字（実施例ではこれも１０文字）を抽出する。そして、これら第１の候補文字群と第２の候補文字群の論理和された結果（重複する文字を除くという意味）に対して、より高精度の認識処理を行い、その結果に基づいて候補文字をう。従って、精度が多少落ちるものの高速に処理できる認識処理による候補文字群中に目的の文字がない場合であっても、その候補文字を越える範囲で、しかも、不要に広範囲にならずに高精度の文字認識を行えることで、処理速度の高速性を保ちながら、認識結果のとりこぼしの発生を低く抑えることが可能になる。
【００３７】
［第２の実施例の説明］
上記実施例（第１の実施例）では、類似文字種の定義として（１）式のように平均ベクトル同士の距離を用いたが、次式のように学習サンプルの中で最も近いもの同士の距離によって類似度を定義してもよい。ある文字ｍ（ｍ＝１，２，…，Ｐ）に対して、ｉ番目の学習データをａｉ（ｍ）で表し、学習データの数をｎとすると
【数５】
0003548233.tif 000006
ここで、１≦ｉ，ｊ≦ｎなるすべてのｉ，ｊ
を文字種ｍと文字種ｋの距離とする。この場合、学習サンプルの分布も考慮して類似文字種を計算できることになる。
【００３８】
［第３の実施例の説明］
また、第１の実施例では第一次照合の結果もっとも距離の小さい文字種の類似文字種だけをテーブルから抽出し、それらを第２次照合の対象に追加していたが、第一次照合の結果距離の小さい方から上位Ｎ個の文字種の類似文字種を第二次照合の候補に追加してもよい。たとえば、第一次照合の結果上位３個の文字種が「間」「聞」「開」であった場合、この上位３個の文字種すべての類似文字種テーブルを参照することによ次のような類似文字種が得られたとする。
【００３９】
類似文字            テーブルからの抽出文字
間    →    問  聞  開  関  闘  閣  閉  岡  向  商
聞    →    間  開  問  闘  関  閣  閉  向  闇  岡
開    →    間  問  聞  関  閉  闘  閣  岡  閑  閥
参照された文字種のうち重複するものを除いて、以下のものが得られる。
【００４０】
関  闘  閣  閉  岡  向  商  闇  閑  閥
そして、この候補文字群を第２次照合の候補として追加することになる（勿論、第１次照合処理と重複するものは追加しない）。
【００４１】
尚、上記Ｎは固定であっても良いが、例えば認識対象の原稿が鮮明な場合には少ない数を、不鮮明な場合には大きい数字を与えることで、適宜変更できるようにすることが望ましい。尚、ユーザに対しては、Ｎがいかなる意味を持つかを意識させないで済むように、例えば、原稿画像の鮮明度を数段階で指示することで対処させれば良い。場合によっては、手書き原稿か、ファクシミリ受信画像か、プリンタ等で印刷したものか等を設定しても良い。この場合、Ｎは手書き＞ファクシミリ受信画像＞プリンタ出力に対応する値を持つことになろう。
【００４２】
［第４の実施例の説明］
また、更に、第１の実施例においてひとつの文字に対する類似文字種の数を一定としたが、これは文字種によって可変にしてもよい。ある文字種ｍに対して他の文字種ｋの距離をｄ（ｍ，ｋ）で表すと、
ｄ（ｍ，ｋ）＜ｄ０
を満足する文字種ｋを類似文字種とする。距離の定義は第１の実施例に同じでもよくまたそれ以外の距離の定義を用いてもよい。ｄ０  は実験的に定めた定数であり、例えば候補群に目的の文字が含まれる確率に基づくものでよい。
【００４３】
このように類似文字種を定めると、類似文字種が多くて間違えやすい文字に対して候補字種が増え、類似文字の少ない文字種に対して必要以上に候補文字種を増やして速度を低下させることもなく効率よく削減させることができる。
【００４４】
また、第２次照合によって得られる候補群の数も１０に限定されるものではなく、それぞれの着目文字によって異なっても良い。
【００４５】
このためには、例えば図５に示すように、テーブルを２つに分け、テーブル５０には文字コードとその文字コードに対する類似文字群を記憶しているテーブルの格納先アドレスを格納しておく。テーブル５０は例えば文字コード順に並んでいて、尚且つ、１つのレコード（文字コードとアドレスの構造体の大きさ）は固定であるので、与えられた文字コードからテーブルの位置は簡単に計算でき、瞬時に目的のアドレスを得ることが可能になる。そして、そのテーブルの次のレコードのアドレスを調べれば目的の類似文字の個数が判別できる。
【００４６】
この結果、テーブル５１からその個数分の候補文字を第２次候群として抽出する。
【００４７】
尚、本発明は、活字文字だけでなく手書き文字にも適用でき、また言語の種類を問わない。
【００４８】
また、上記実施例では、第１次照合に文字イメージを複数領域に分割し、その小領域単位の特徴ベクトルでもって第１次候補群を決定し、第２次候補群はマハラノビス距離で算出し抽出した。しかしながら、本願発明はこれによって限定されるものではない。
【００４９】
要は、第１次照合においては速度優先、第２次照合には精度優先をその根底の思想とするものだからである。従って、この思想の範疇にあるものであれば、本願発明はいかように改良変更しても構わない。
【００５０】
また、本発明はスキャナ、ディスプレイ等の個々の装置を接続したシステムとして説明したが、単独の装置内にこれらの機能を実現させる場合にも適応できることは言うまでもない。また、処理手順（プログラム）はＲＯＭに格納されているものではなく、外部から供給することで動作する場合にも適応できるのは、上記実施例からすれば容易に想到できよう。
【００５１】
更に、実施例ではスキャナ等の光学機器から原稿を読み取り、文字認識する例を説明したが、フロッピー等の記憶媒体に予め原稿画像を記憶しておいて、この記憶媒体から画像データを入力し文字認識しても構わない。また、回線を介して受信した画像（ファクシミリ受信画像）から直接文字認識するようにしても良い。
【００５２】
【発明の効果】
以上説明したように本発明によれば、少ない演算量の計算による第１次照合を行い、その結果距離が近い方から上位Ｎ個の文字に詳細な識別計算による第２次照合を行う文字認識処理において、第一次照合の上位Ｍ個（Ｍ≦Ｎ）の認識結果の類似文字種を加えて詳細な識別計算による第２次照合を行うことによって、正しい候補が第一次照合でもれてしまった場合でも類似文字種として復活する可能性が高く、精度の高い文字認識が実現できる。
【００５３】
【図面の簡単な説明】
【図１】第１の実施例の構成を表すブロック図である。
【図２】第１の実施例のフローチャートである。
【図３】類似文字テーブルの構造を説明するための図である。
【図４】従来例の処理のフローチャートである。
【図５】他の実施例における類似文字検索テーブルの構造を示す図である。
【符号の説明】
１０１  スキャナ
１０２  スキャナインターフェース回路
１０３  ポインティングデバイス
１０４  ポインティングデバイスインターフェース回路
１０５  ＣＰＵ
１０６  ＲＯＭ
１０７  ＲＡＭ
１０８  ディスプレイ
１０９  ディスプレイインターフェース回路
１１０  ＣＰＵバス
【図１】
0003548233.tif 000007
【図２】
0003548233.tif 000008
【図３】
0003548233.tif 000009
【図４】
0003548233.tif 000010
【図５】
0003548233.tif 000011