説明

単語認識方法および単語認識用のプログラムならびに情報処理装置

【課題】認識対象の文字列に該当する単語を特定する処理を短縮する。
【解決手段】認識対象文字列の画像に対し、構成文字毎に1以上の文字候補が信頼度とともに導出されると、単語認識処理部105は、認識対象文字列と構成文字数が一致する単語を単語候補として初期設定した後に、認識対象文字列の各文字を文字の並び順に一文字ずつ処理対象に設定して、処理対象の文字毎に2種類の絞り込み処理を実行する。第1の絞り込み処理では、処理対象の文字に対して設定された文字候補の中から予め定めた条件を満たす信頼度が得られた候補を抽出する。第2の絞り込み処理では、現時点の単語候補の中から、認識対象文字列中の処理対象の文字と同じ位置の文字が第1の絞り込み処理により絞り込まれた文字候補と一致するものを抽出する。そして、最終的に絞り込まれた単語候補の中から認識対象文字列に該当するものを特定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラや作図処理などにより生成された文字列の画像を対象とした認識処理により、文字列を構成する各文字の文字候補がそれぞれ信頼度とともに導出されたことに応じて、文字列に該当する単語を認識する技術に関する。
【背景技術】
【0002】
一般的な文字認識処理では、認識対象の文字列の画像を2値化した後に、2値画像から個々の文字に対応する領域を個別に切り出し、各領域の画像をそれぞれ文字の種毎に登録されているモデル画像と照合し、最も高い類似度が得られたときに用いられたモデル画像に対応する文字を、画像中の文字に該当するものとして特定する。
【0003】
ただし、処理対象の画像の状態によっては誤認識が生じることがあるため、この点を考慮した認識処理方法が提案されている。たとえば、特許文献1には、認識した文字により生成された文字列により辞書を検索し、辞書内に検索対象の文字列と同一のものがあれば、認識結果が正しいと判定して文字列を確定し、検索対象の文字列と同一のものが見つからなかった場合には、文字認識処理をやり直すことが記載されている。
【0004】
また特許文献2には、文字認識対象データに含まれる文字毎に、認識候補文字と認識信頼度との組み合わせを複数生成した後に、各認識候補文字を複数とおりに組み合わせて単語候補を生成すること、優先度の高い単語候補を順に使用して単語辞書を検索して、単語辞書に含まれる情報(辞書単語)を絞り込むこと、絞り込まれた辞書単語の中から単語候補との類似度が最も高いものを選定すること、などが記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平5−46814号公報
【特許文献2】特開2006−163830号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記の各文献のように、文字候補の組み合わせにより単語データベースを照合する方法をとると、多数の組み合わせが設定されて、処理時間が長くなるおそれがある。この点について、以下、具体例を用いて説明する。
【0007】
図10(1)は、文字認識対象の画像の例として、「三三九度」という文字列を撮像することにより生成された画像を示す。図10(2)は、この画像中の4個の文字に対する認識処理により導出された文字候補を表形式にして表したもので、この例では、文字毎に5個の文字候補が得られたものとして、これらの文字候補を信頼度が高い順に配置している。
なお、この明細書でいう信頼度は、画像から切り出された文字領域を文字のモデル画像と照合したときに得られる両者間の類似度に基づき設定される。
【0008】
図10(2)の例によれば、認識対象の文字列の2番目の文字「三」および4番目の文字「度」に対しては、それぞれ正しい文字が第1位の文字候補に設定されているが、1番目の文字「三」および3番目の文字「九」には、それぞれ誤った文字が第1位の文字候補に設定されている。
【0009】
図10(3)は、図10(2)に示した各文字候補の組み合わせ例と、組み合わせにより生成された文字列により単語データベースを照合した結果とを、対応づけて示す(×印は該当する単語を見つけられなかったことを示し、○印は該当する単語を見つけたことを示す。)。この例では、各文字候補を信頼度の高い順に選択して組み合わせを設定し、毎回、一文字ずつ組み合わせ中の文字候補を変更して単語データベース内の単語と照合しているが、上位の文字候補に誤った文字が設定されているため、なかなか照合に成功しない。このため、正しい単語を特定するにはかなりの時間が必要となる。また、この方法によると、認識対象の文字列の文字列長が長くなるほど、文字候補の組み合わせの数が増大し、処理に要する時間も長くなる。
【0010】
このように、上記の方法では、正しい単語を認識することはできるが、処理時間がかなり長くなる可能性があるので、他の処理を並列して実行するタイプの機器に適用するのは難しい。たとえば、文字認識機能が設定された携帯電話において、文字認識処理を行っているときに着信を受け付けた場合には、着信を知らせる効果音の出力や表示を行う必要があるが、文字認識処理が長引くと、着信の報知を速やかに行うことができず、携帯電話の基本的な機能に支障を生じるおそれがある。
【0011】
本発明は上記の問題に着目してなされたもので、認識対象の文字列に該当する単語を特定する処理を短縮することを課題とする。
【課題を解決するための手段】
【0012】
本発明による単語認識方法は、文字列の画像に対する認識処理の結果として、文字列を構成する文字毎に1以上の文字候補を取得したことに応じて、複数の単語が登録された単語データベースを用いて文字列に該当する単語を認識するものである。なお、文字列の画像に対する認識処理では、各文字候補に対し、文字認識の際のモデル画像との照合により導出された類似度に基づく信頼度を設定するのが望ましい。信頼度の高さを示す数値は、信頼度が高くなるほど大きな値に変化する場合もあれば、信頼度が高くなるほど小さな値に変化する場合もある。
【0013】
本発明による単語認識方法では、単語データベースに含まれる所定数の単語を初期の単語候補に設定する。そして、認識対象の文字列を構成する各文字を一文字ずつ処理対象に設定すると共に、処理対象の文字を設定する都度、その設定時の単語候補を対象として、認識対象の文字列において処理対象の文字が配置されている位置と同じ位置に当該処理対象の文字につき取得した文字候補が配置されている構成の単語に単語候補を絞り込む処理を実行する。
【0014】
なお、「単語データベースに含まれる所定数の単語を初期の単語候補に設定」する処理とは、単語データベースに含まれる一部の単語を初期の単語候補として抽出する処理のほか、単語データベースに含まれる全ての単語を初期の単語候補に設定する処理をも意味するものとする。すなわち、単語データベースに含まれる一部の単語を対象に、1回目の絞り込み処理を行ってもよいし、単語データベースに含まれる全ての単語を対象に、1回目の絞り込み処理を行ってもよい。
【0015】
さらに、本発明による単語認識方法では、認識対象の文字列中の最後の処理対象の文字に対する絞り込み処理が終了したとき、その時点で抽出されている単語候補の中から前記文字列に該当する単語を特定する。
【0016】
上記の方法によれば、最初は、認識対象の文字列に対する類似度合いに関わらずに、多数の単語が単語候補として設定されても、認識対象の文字列を構成する各文字を一文字ずつ処理対象に設定して、処理対象の文字毎に単語候補の絞り込み処理を行うことにより、単語候補は次第に減少する。また、当初の単語候補の中に、一部の文字が文字候補に一致する単語が含まれる場合でも、そのような単語は、他の位置にある、文字候補に一致しない文字に対する絞り込み処理により単語候補から除外される。よって、最終的に、認識対象の文字列の各構成文字に対応する文字候補がそれぞれ対応する構成文字と同じ位置に配置された構成の文字列であって、単語として単語データベースに登録されているもののみを、単語候補として残すことができる。
【0017】
また、この方法によれば、従来のように文字列の単位で照合を行うのではなく、単語の中の1文字を文字候補と照合すればよいので、照合における負荷が軽減される。しかも、処理が進むにつれて、照合対象の単語候補の数が減少するので、従来に比べ、処理時間を大幅に短縮することが可能になる。
【0018】
上記の方法の好ましい実施態様では、処理対象の文字を設定する都度、その処理対象の文字につき認識処理により取得した文字候補の中から、当該認識処理においてあらかじめ定めた条件に基づく許容値を上回る信頼度が得られた文字候補を抽出し、抽出された文字候補のみに対象を限定して単語候補を絞り込む処理を実行する。
文字認識に誤りが生じて正しい文字が第1位の文字候補に設定されなかった場合でも、正しい文字であれば、ある程度の信頼度を獲得することができる。よって、たとえば、試験的な文字認識の結果に基づいて、正しい文字を文字候補として安定して抽出できるような条件を設定して、処理対象の文字につき取得した文字候補の中から上記の条件に基づく許容値を上回る信頼度が得られている文字候補を抽出すれば、認識対象の文字列に該当する単語が単語候補から外れるのを防ぐとともに、文字候補の数を限定することができる。
【0019】
より好ましくは、所定のしきい値を上回り、かつ処理対象の文字に対応する文字候補の中の最大の信頼度に対する差があらかじめ定めた一定の値以内となる信頼度が得られていることを、文字候補を抽出するための条件としてもよい。このような条件を設定すれば、しきい値を上回る信頼度を得られた文字候補であっても、その信頼度の最大の信頼度に対する差が大きいものを、絞り込みの範囲から除外することができるので、ノイズとなる可能性が高い文字候補を削減することができる。
【0020】
他の好ましい態様による単語認識方法では、前記単語データベースに登録されている単語のうち、前記認識対象の文字列と構成文字数が一致する単語を初期の単語候補に設定する。このように設定すると、最初は、認識対象の文字列と構成文字数が一致する単語がすべて単語候補に設定されるが、認識対象の文字列の各構成文字を順に処理対象に設定して絞り込み処理を行うことにより、最終的に、各構成文字に対応する文字候補がそれぞれに対応する構成文字と同じ位置に配置された文字列であって、単語として単語データベースに登録されているものに、単語候補を絞り込むことができる。
【0021】
他の好ましい態様による単語認識方法では、認識対象の文字列中の最後の処理対象の文字に対する絞り込み処理が終了したときに複数の単語候補が抽出されているとき、これらの単語候補毎に、その単語候補を構成する各文字に対応する文字候補の信頼度の平均値を算出し、信頼度の平均値が最も高い単語候補を文字列に該当する単語として特定する。
【0022】
一般に、認識対象の文字列に完全一致する単語では、全ての構成文字が文字認識処理の際に高い信頼度が得られる状態にあるから、他の類似する構成の単語よりも信頼度の平均値が高くなる可能性が高い。したがって、最終的に残った単語候補の中から信頼度の平均値が最も高いものを文字列に該当する単語として特定することによって、該当する単語を正しく認識できる確率を高めることが可能になる。
【0023】
つぎに、本発明によるプログラムは、複数の単語が登録された単語データベースが設定され、文字列の画像に対する認識処理の結果として、当該文字列を構成する文字毎に1以上の文字候補を取得したコンピュータに、前記文字列に該当する単語を認識する処理を行わせるためのもので、以下の初期設定手段、絞り込み手段、単語特定手段、出力手段としてコンピュータを機能させることを特徴とする。
【0024】
初期設定手段は、単語データベースに登録されている所定数の単語を単語候補として初期設定する。なお、初期設定手段は、単語データベースに含まれる一部の単語を初期の単語候補として設定してもよいし、単語データベースに含まれる全ての単語を初期の単語候補として設定してもよい。
【0025】
絞り込み手段は、認識対象の文字列を構成する各文字を一文字ずつ処理対象に設定すると共に、処理対象の文字を設定する都度、その設定時の単語候補を対象として、認識対象の文字列において処理対象の文字が配置されている位置と同じ位置に当該処理対象の文字につき取得した文字候補が配置されている構成の単語に単語候補を絞り込む処理を実行する。
【0026】
単語特定手段は、認識対象の文字列中の最後の処理対象の文字に対する絞り込み処理が終了したとき、その時点で抽出されている単語候補の中から前記文字列に該当する単語を特定する。出力手段は、単語特定手段により特定された単語を認識結果として出力する。
【0027】
上記のプログラムによれば、文字認識機能を備えるコンピュータにさらに認識対象の文字列に該当する単語を特定する機能を設定して、認識対象の文字列に該当する単語を認識する処理を、精度良くかつ高速で実施することが可能になる。
【0028】
出力手段は、たとえば、単語特定手段により特定された単語をモニタに表示する手段として構成されるが、これに限らず、特定された単語を示す電子データを出力することもできる。また、文字認識処理において、導出された各文字候補のうち信頼度が高いものを優先的に選択して認識文字列を組み立てる場合には、上記のプログラムには、特定された単語によって認識文字列を補正する手段として、コンピュータを機能させるプログラムを含めることができる。
【0029】
本発明による情報処理装置は、複数の単語が登録された単語データベースと、文字列の画像に対する認識処理を行って、当該文字列を構成する文字毎に1以上の文字候補を取得する文字認識手段と、単語データベースおよび文字認識手段による認識結果を用いて前記文字列に該当する単語を認識する単語認識手段とを具備する。さらに、本発明による情報処理装置は、上記のプログラムによる初期設定手段、絞り込み手段、単語特定手段、および出力手段の各手段を具備する。
【発明の効果】
【0030】
本発明によれば、文字列の画像に対する認識処理により取得した文字候補に基づき、単語データベースから単語候補を効率良く絞り込んで、画像中の文字列に該当する単語を特定する処理を高速で実施することができる。
【図面の簡単な説明】
【0031】
【図1】文字認識用のアプリケーションが組み込まれた携帯電話の外観を示す図である。
【図2】上記の携帯電話の構成を示すブロック図である。
【図3】文字認識用のアプリケーションにより提示される画面の例を示す図である。
【図4】文字認識用のアプリケーションの構成を示す機能ブロック図である。
【図5】認識対象文字列に対する文字認識処理の結果を表形式にして表した図である。
【図6】文字候補に基づく照合処理により単語候補が絞り込まれる様子を示す図である。
【図7】文字認識処理部により実行される処理の手順を示すフローチャートである。
【図8】図7の処理に続く手順を示すフローチャートである。
【図9】単語の認識ができなかった場合の表示画面の例を示す図である。
【図10】従来の認識処理について、認識対象の文字列の画像、文字候補の設定例、および文字候補の組み合わせと照合結果との対応関係を示す図である。
【発明を実施するための形態】
【0032】
図1は、本発明が適用された携帯電話の外観を、図2は、この携帯電話の電気構成を、それぞれ示す。
この実施例の携帯電話1は、表示部3や操作部4が設けられた筐体1Aの内部に、カメラ2、画像プロセッサ5、通信回路6、制御回路10などが収容された構成のものである。表示部3は、液晶パネルにより構成され、操作部4には、テンキーを含む複数のキーが配置される。
【0033】
カメラ2は、CCDまたはCMOSを有するディジタルカメラであり、画像プロセッサ5を介して制御部10に接続される。画像プロセッサ5は、制御部10内のCPU11からの指令に基づいてカメラ2を駆動し、カメラ2から出力された画像データをCPU11に出力する。
【0034】
制御部10には、CPU11のほか、主メモリ12、作業用メモリ13などが含まれる。主メモリ12は、フラッシュメモリなどの不揮発性メモリであって、プログラムや設定用のデータなどが保存される。一方、作業用メモリ13は揮発性メモリ(RAM)であって、カメラ2により生成された画像データや、後記する文字候補や単語候補などを一時保存する目的に使用される。
【0035】
上記の携帯電話1の制御部10には、文字列を対象にした撮影により生成された画像を対象として文字認識を実行するアプリケーションが実装されている。図3は、この認識処理に応じて表示部3に提示される画面の一例を示す。
【0036】
この例の画面には、カメラ2から入力された画像を表示する領域30のほか、メッセージや認識結果などを表示するための領域31や、操作対象のキーの機能を示す領域32が設けられる。
【0037】
図中の左手の画面(イ)は、一連の認識処理が実施される前の状態を示すもので、領域30内に表示されている画像には、認識対象の文字列の抽出範囲を示す枠Rが重ね表示されている。また、領域31には、認識対象範囲の指定を促すメッセージが表示されている。この表示に対し、ユーザは、枠Rの範囲を確認し、必要に応じて修正を行い、確定操作を行う。この操作に応じて、枠R内の文字列を認識する処理が実行され、画面は(イ)の状態から(ロ)の状態に変化する。変化後の画面の領域31は、認識された文字列を表示する欄31aと、この文字列の辞書データを表示する欄31bとに分割され、各欄にそれぞれ対応する情報が表示される。
【0038】
図4は、上記の文字認識用のアプリケーションの構成を示す機能ブロック図である。このアプリケーション100は、文字認識用データベース101、単語データベース102、前処理部103、文字認識処理部104、単語認識処理部105、認識結果補正部106、表示制御部107などを含む。これらのうち、文字認識用データベース101および単語データベース102は、主メモリ12に格納されたデータファイルであり、その他の構成の実体は、主メモリ12に格納されたプログラムにより動くCPU11である。
【0039】
文字認識用データベース101には、複数種の文字のモデル画像が当該文字を示すデータ(JISコードなどのコード情報)に紐付けられて登録されている。単語データベース102には、複数の単語について、それぞれその単語の表記を表す文字列と意味などを示す辞書データとが登録されている。
【0040】
このアプリケーション100が起動すると、画像プロセッサ5は、一定の時間毎にカメラ2に撮像を行わせ、生成された画像をアプリケーション100に対して出力する。前処理部103は、画像プロセッサ5から出力される毎時の画像を取り込んで、一段階前の画像に対する変化量を抽出する。さらに、抽出された変化量が所定のしきい値を下回る状態になると、前処理部103は、その時点の画像から文字列を含む領域を抽出し、その領域の位置や大きさを表示制御部107に連絡する。
【0041】
表示制御部107は、表示部3に図3に示した画面を立ち上げて、領域30内に画像プロセッサ5から供給された画像を表示する。また、前処理部103からの連絡により文字列を含む領域の位置や大きさを取得すると、これらの情報に基づき、表示中の画像に枠Rを重ね表示したり、領域31内にメッセージを表示するなどの処理を実行する。
【0042】
上記の画面表示に対し、ユーザが枠Rにより示される認識対象範囲を確定する操作を行うと、文字認識処理部104により、確定された範囲内の画像に対する認識処理が実行される。この処理は従来と同様であるが、以下に簡単に説明する。
【0043】
まず、文字認識処理部104は、枠R内の画像を2値化し、2値画像を水平、垂直の各方向に沿って投影することにより、個々の文字に対応する領域(文字領域)を抽出する。つぎに、抽出された文字領域毎に、その領域内の画像を文字認識用データベース101内の各文字のモデル画像と照合して類似度を算出し、類似度が所定のしきい値を超えたモデル画像に対応する文字を文字候補に設定する。さらに、設定された文字候補に対し、上記の照合処理の際に算出された類似度を信頼度として組み合わせる。これにより、指定された範囲に文字列が含まれている場合には、その文字列を構成する文字毎に、文字候補と信頼度との組み合わせを1組以上得ることができる。さらに、この実施例の文字認識処理部104は、各文字の第1位の文字候補を組み合わせ、この組み合わせにより生じた文字列を認識結果を示す文字列に設定する。
【0044】
以下では、この文字認識処理部104の認識対象となる文字列(枠R内に含まれる文字列)を「認識対象文字列」といい、文字認識処理部104により認識結果として設定された文字列を「認識結果文字列」という。この実施例では、認識結果文字列を認識結果補正部106に提供する一方で、各文字の文字候補と信頼度との組み合わせを単語認識処理部105に提供する。単語認識処理部105は、提供された情報に基づき、認識結果文字列とは関係なく認識対象文字列に該当する単語を特定する。認識結果補正部106は、単語認識処理部105により特定された単語を認識結果文字列と比較し、両者が一致しない場合には、単語認識処理部105により特定された単語により認識結果文字列を置き換える。
【0045】
単語認識処理部105は、文字認識処理部104により設定された文字候補を用いて、単語データベース102を用いた照合処理を行うことにより、認識対象文字列に該当する可能性のある単語の候補(以下、「単語候補」という。)を徐々に絞り込む。さらに、単語認識処理部105は、最終的に絞り込まれた単語候補の中から認識対象文字列に該当する単語を特定し、その単語の辞書データを単語データベース102から読み出す。特定された単語は認識結果補正部106に提供され、辞書データは表示制御部107に提供される。
【0046】
表示制御部107は、認識結果補正部106による処理を経た認識結果文字列と、単語認識処理部105から提供された辞書データとを用いて、図3の画面(ロ)を表示する。これにより、ユーザに認識結果が通知される。
【0047】
図5は、図3の画面(イ)において指定された範囲に含まれていた文字列(認識対象文字列)に対する文字認識処理部104の認識結果を表形式にして表したものである。この実施例では、「三三九度」という認識対象文字列の4個の構成文字が正しく切り分けられて、文字毎に、5個の文字候補が設定されたものとする。図5では、構成文字毎に、各文字候補をそれぞれ信頼度に対応づけて、信頼度の高い順に並べて示している。なお、信頼度の単位は%である。
【0048】
図6は、照合対象の単語を縦並びに配置したリストを用いて、単語認識処理部105が上記の文字候補に基づく照合処理を行ったことにより単語候補が絞り込まれる様子を示す。なお、図中のリストでは、各単語の構成文字の位置を、1,2,3,4の番号により表している。
【0049】
この実施例では、単語データベース102に登録されている単語の中から、認識対象文字列と同じ文字列長の単語を抽出し、これらの単語を初期の単語候補に設定する。図6のリストAは、この初期状態の単語候補を示すものである。
【0050】
この実施例では、文字認識処理部104により抽出された4個の文字を先頭から順に処理対象に設定し、処理対象の文字毎に、以下の2通りの絞り込み処理を実行する。
第1の絞り込み処理では、
(1)60%以上の信頼度が得られていること、
(2)処理対象の文字に対して取得した信頼度の最大値と(1)の信頼度との差が20%以内であること、
の2つを条件として、処理対象の文字に設定されている文字候補の中から、条件(1)および(2)を満たしているものを抽出する。
【0051】
第2の絞り込み処理では、現在有効に設定されている単語候補を対象に、認識対象文字列中の処理対象の文字と同じ位置に配置されている文字を第1の絞り込み処理により抽出された文字候補と照合し、両者が一致する単語候補を抽出し、その他の単語候補を除外する。この照合処理によれば、照合の対象となる単語候補はしだいに削減され、最終的に、第1の絞り込み処理により絞り込まれた文字候補の組み合わせに一致する構成の単語のみが残されるようになる。
【0052】
図6のリストB〜Eは、それぞれ認識対象文字列の1番目、2番目、3番目、4番目の文字を処理対象として、文字候補と単語候補との照合処理を上記の絞り込み処理を実行した結果を示す。具体的には、照合により文字候補との一致が認められた文字の表示欄にパターン塗りを施す一方、照合により文字候補への一致が認められず、単語候補から除外された単語に二重線を引いてある。パターン塗りが設定されていても、二重線が引かれている単語は、途中で単語候補から除外されている。
【0053】
具体的に、図5および図6を参照して、単語認識処理部105により実施される処理の概要を説明する。
まず、図5によれば、認識対象の文字列の先頭文字(第1文字)を処理対象として、第1の絞り込み処理を実行する場合には、前出の(1)および(2)の条件に基づき、85%から65%までの範囲の信頼度が得られている文字候補が抽出される。具体的には、この例では、図中の「五」「玉」「王」「三」「二」の5つの文字候補の全てが抽出される。この後の第2の絞り込み処理では、初期の単語候補(図6のA)の1番目の文字を上記5つの文字候補と照合し、いずれかの文字候補との一致が認められた単語のみを単語候補に残す。
【0054】
図6によれば、第1文字を処理対象とした第1の絞り込み処理では、第1位の文字候補である『五』に対して「五三昧所」「五時五教」「五日一石」の各単語がヒットし、第3位の『王』に対して「王道楽土」がヒットし、第4位の『三』に対して「三五之隆」「三顧之礼」「三三九度」「三三五五」の各単語がヒットし、第5位の『二』に対して「二度三度」「二人三脚」の各単語がヒットする。よって、図6のリストBに示すように、ヒットした10個の単語が単語候補として残され、その他の単語は単語候補から除外される。
【0055】
つぎに、認識対象の文字列の2番目の文字(第2文字)を処理対象とした場合には、第1の絞り込み処理では、93%から73%までの範囲の信頼度が得られている文字候補が抽出される。したがって、『三』『五』『日』の3候補が抽出されることになる。第2の絞り込み処理では、第1文字に対する処理により絞り込まれた単語候補の2番目の文字をこれらの文字候補により照合するが、図中のリストBでこの照合により文字候補に対してヒットするのは、「五三昧所」「五日一石」「三五之隆」「三三九度」「三三五五」の5つとなる。よって、図6のリストCに示すように、単語候補はこれら5つの単語に絞り込まれ、他の単語(「王道楽土」「五時五教」「三顧之礼」「二度三度」「二人三脚」)は単語候補から除外される。
【0056】
認識対象の文字列の3番目の文字(第3文字)を処理対象とした場合には、第1の絞り込み処理では、89%から69%までの範囲の信頼度が得られている文字候補が抽出される。したがって、『丸』『九』『之』の3候補が抽出されることになる。第2の絞り込み処理では、第2文字に対する処理により絞り込まれた単語候補の3番目の文字をこれらの文字候補により照合するが、図中のリストCでこの照合によりヒットするのは、「三五之隆」および「三三九度」の2単語となる。よって、図6のリストDに示すように、単語候補はこれらの2単語に絞り込まれ、「五三昧所」「五日一石」「三三五五」は単語候補から除外される。
【0057】
認識対象の文字列の4番目の文字(第4文字)を処理対象とした場合には、第1の絞り込み処理では、95%から75%までの範囲の信頼度が得られている文字候補が抽出される。したがって、『度』『庚』の2候補が抽出されることになる。第2の絞り込み処理では、第3文字に対する処理により絞り込まれた単語候補の4番目の文字をこれらの文字候補により照合するが、図中のリストDでこの照合により文字候補に対してヒットするのは、「三三九度」のみとなる。よって、リストEに示すように、認識文字列の全ての文字に対する処理が終了した時点で単語候補として残されているのは「三三九度」のみとなる。
【0058】
このように、図5,6の例では、認識対象の文字列の各構成文字を先頭から順に処理対象に設定して、第1および第2の絞り込み処理を処理対象の文字毎に実行することにより、最終的に4文字構成の単語の中から「三三九度」のみが単語候補として絞り込まれた状態となる。よって、この最終の単語候補を認識対象の文字列に該当する単語として特定することにより、文字列を正しく認識することが可能になる。
【0059】
上記のとおり、第1の絞り込み処理により、認識対象文字列の構成文字毎に、その文字に該当する可能性が高い文字のみに文字候補が絞り込まれ、第2の絞り込み処理により、絞り込まれた文字候補を組み合わせた構成の文字列のみが単語候補として残される状態となる。よって、認識対象文字列に該当する単語を容易に特定することができる。また、第2の絞り込み処理では、限られた数の文字候補を用いて一文字を対象とした照合を行うだけで良く、また処理が進むにつれて照合対象の単語候補の数が減少するので、従来の照合処理と比較すると処理時間を大幅に短縮することが可能になる。
【0060】
また、処理中に着信を受けた場合には、その時点での残りの処理対象文字の数や条件(1)(2)を満たす文字候補の数、ならびに単語候補の数などから、着信の報知処理が実行可能になるまでの時間を見積もることが可能になる。よって、その見積もりに基づき、着信の報知に関する準備を行うことができるから、着信に対する応答が大幅に遅延するのを防止することが可能になる。
【0061】
図7および図8は、単語認識処理部105により実行される処理の詳細な手順を示す。以下、このフローチャートに沿って、認識対象文字列に該当する単語を特定するために単語認識処理部105が実行する処理を詳細に説明する。
【0062】
この処理では、まず、単語データベース102から認識対象文字列に対応する文字長の単語を抽出し、抽出された単語を作業用メモリ13内に格納する(ステップS1)。また、このときの単語の抽出数を単語総数W_numおよび有効単語数TR_numにそれぞれ格納する(ステップS2)。
【0063】
つぎに、この実施例では、作業用メモリ13に格納された各単語が単語候補として有効化されているかどうかを、配列W(k)(kは1からW_numまでの値をとる。)により管理するようにしている。ステップS3は、この配列W(k)の各要素をすべて「TRUE」、すなわち有効に設定する。
【0064】
つぎのステップS4では、認識対象文字列中の文字を特定するためのカウンタiを「1」に設定する。これにより認識対象文字列の第1文字が処理対象に設定されたことになる。
【0065】
ステップS5では、認識対象文字列のi番目の文字に対して設定されている文字候補の中から、前出の条件(1)(2)を満たすものを抽出する。この処理が第1の絞り込み処理に相当する。
【0066】
この後、照合対象の単語を示すカウンタkに初期値の「1」をセットし(ステップS6)、以下、このkの値により各単語に順に着目しながら、照合処理を実行する(ステップS7〜S13)。このステップS7〜13のループによる処理が第2の絞り込み処理に相当する。
【0067】
このループ内の具体的な処理を説明する。まず配列W(k)の値をチェックし、W(k)がTRUE(有効)であれば、k番目の単語のi番目の文字をステップS5で抽出された各文字候補と照合する(ステップS8)。ここで、照合対象の文字がいずれかの文字候補に一致した場合(ステップS9が「YES」)には、カウンタkをインクリメントすることにより、次の単語に照合対象を変更する(ステップS12)。一方、照合対象の文字がいずれの文字候補にも一致しなかった場合(ステップS9が「NO」)には、W(k)をFALSE(無効)に設定する処理(ステップS10)と、有効単語数TR_numをディクリメントする処理(ステップS11)を実行してから、ステップS12に進む。ステップS10,S11の処理により、k番目の単語は単語候補から外された状態となる。
【0068】
認識対象文字列の1番目の文字が処理対象に設定されている段階では、ステップS1で抽出された全ての単語が単語候補に設定されているから、いずれの単語に対しても、ステップS8,S9が実行される。よって、各単語は、単語候補として維持されるものと、単語候補から外されるものとに振り分けられる。この振り分け処理が終了すると(ステップS13が「NO」)、カウンタiをインクリメントすることにより、処理対象の文字を第2文字に変更する(ステップS14)。
【0069】
2番目から末尾までの各文字に対しても、上記と同様の手順で、第1の絞り込み処理(ステップS5)および第2の絞り込み処理(ステップS7〜S13)を実行する。これにより、図6に例示したような単語候補の絞り込みが実現する。
全ての文字に対する処理が終了して、iの値が認識対象文字列の文字列長を上回る状態になると(ステップS15が「NO」)、その時点の有効単語数TR_numの値をチェックする。ここでTR_numが0、すなわち単語候補が皆無になっている場合(ステップS16が「NO」)には、単語認識処理部105は、認識結果補正部106および表示制御部107に、認識文字列に該当する単語がない旨を連絡する(ステップS17)。
【0070】
上記に対し、TR_num>0であった場合(ステップS16が「YES」)には、単語認識処理部105は、値がTRUEに設定されている配列W(k)のkの値に基づき、単語候補として絞り込まれている単語を抽出する(ステップS18)。ここでTR_num=1すなわち絞り込まれた単語候補が1つである場合(ステップS19が「NO」)には、上記のステップS18で抽出した単語を認識対象の文字列に該当する単語として特定する(ステップS22)。
【0071】
一方、TR_num>1、すなわち最終的に複数の単語候補が残った場合(ステップS19が「YES」)には、これらの単語について、それぞれ各構成文字の信頼度の平均値を算出し(ステップS20)、平均値が最も高くなった単語を認識対象文字列に該当する単語として特定する(ステップS21)。なお、ステップS20においては、各構成文字の信頼度として、その構成文字と一致した文字候補に組み合わせられている信頼度を使用する。
【0072】
文字認識処理部104による文字認識処理においては、図5の例のように、正しい文字であるのに第1位の文字候補として認識されない文字がある。しかし、抽出された文字候補による組み合わせの中で意味をなす文字列を構成する組み合わせは限られており、その中で、正しい文字の組み合わせに対して求めた信頼度の平均値は、他の組み合わせに対して求めた信頼度の平均値よりも高くなる可能性が高い。よって、最終的に複数の単語候補が残った場合にステップS20およびS21の処理を行うことにより、正しい単語を高い確率で特定することが可能になる。
【0073】
最後のステップS23において、単語認識処理部105は、上記のステップS21またはステップS22で特定した単語を認識結果補正部106に連絡し、その単語の辞書データを表示制御部107に提供する。
【0074】
上記の連絡を受けた認識結果補正部106は、連絡された単語を文字認識処理部104から提供されている認識結果文字列と照合し、両者が異なる場合には、単語認識処理部105から提供された単語により認識結果文字列を置き換える。表示制御部107は、最終的な認識結果文字列と、単語認識処理部105から提供された辞書データを用いて、図3(ロ)に示した画面を表示する。
【0075】
また、全ての文字に対する処理が終了したときの有効単語数T_numが0となって(ステップ16が「NO」)、認識結果補正部106や表示制御部107に該当する単語がない旨が連絡された場合(ステップS17)には、認識結果補正部106は、上記の補正を行わずに、文字認識処理部104から提供された認識結果文字列をそのまま表示制御部107に渡すことになる。
【0076】
図9は、認識対象とすべき文字列「三三九度」のうち、先頭文字の「三」が含まれない画像が生成されて、その画像に対する認識処理が実行された場合の結果表示画面の例を示す。
【0077】
この例では、最終的に単語候補が残らず、表示制御部107に辞書データが渡されなかったため、辞書データの掲載欄31bに「辞書データはありません。」というメッセージが表示される。また、その上の認識結果文字列の表示欄31aには、文字認識処理部104により作成された認識結果文字列が補正されずに表示されているが、これは、画像中の文字「三」「九」「度」に対し、この例でも図5に示したのと同様の認識結果が得られていると仮定したためである。この場合、単語認識処理部105が認識対象文字列に該当する単語を特定することができなかったため、認識結果補正部106による処理は行われずに、各構成文字に対して設定された第1位の文字候補の組み合わせによって、「三丸度」という誤った認識結果文字列が表示されている。
【0078】
上記の例のように、意味をなさない文字列が認識対象文字列に設定された場合には、単語データベース102に該当する単語が登録されていないために、正しい認識結果が表示されない場合がある。しかし、このような表示を行うことにより、辞書データの存在が認識の精度に影響を及ぼすことを、ユーザに知らしめることができる。
【0079】
なお、図7,8に示した処理では、初期の単語候補となる各単語を単語データベース102から抽出して作業用メモリ13に格納すると共に、これらの単語の有効・無効を配列W(k)により管理し、単語候補から外された単語を含む全ての単語の有効・無効を毎回確認しているが、アルゴリズムはこれに限定されるものではない。たとえば、配列W(k)を設定せずに、単語候補から外れた候補を作業用メモリ13から削除し、毎回、作業用メモリ13に残っている単語を対象に文字候補との照合を行うようにしてもよい。このようにすれば、単語の有効・無効を確認する処理が不要になるので、処理をより高速にすることが可能になる。
【0080】
また、上記の実施例では、認識対象文字列に対応する文字長(4文字)の単語を単語データベース102から抽出し、初期の単語候補として設定したが、これに限らず、認識対象文字列とは構成文字数が異なる(構成文字数が多い、または少ない)文字数の単語が初期の単語候補に含まれていてもよい。
また、単語データベース102に含まれる全ての単語を初期の単語候補としてもよい。さらに、単語データベース102から一部の単語を抽出し、初期の単語候補として設定する場合に、上記の実施例では、単語の文字長に基づく抽出処理を行ったが、これに限らず、文字種別(例えば英文字、漢字、カタカナ)などに基づいて、初期の単語候補となる単語を抽出してもよい。
【0081】
また、上記の実施例では、認識対象文字列の各構成文字を先頭の文字から順に処理対象に設定して第1および第2の絞り込み処理を実行したが、これとは逆に、末尾の文字から文字の並び方向に沿って順番に処理対象文字を選択して、同様の絞り込み処理を行ってもよい。
【0082】
さらに、認識対象文字列は日本語に限らず、単語データベース102のデータ構成を整えれば、英語や韓国語などの外国語を対象とした認識処理を行うことも可能である。また、認識対象文字列は、カメラ2により生成された画像中の文字列に限らず、作図用のアプリケーションにより描画された文字列などを対象とすることも可能である。
【0083】
加えて、上記の実施例では、最終的な認識結果文字列を辞書データとともに表示したが、この機能をOCRソフトに適用する場合には、認識結果文字列のみを表示してもよい。また表示に代えて、他のアプリケーション(メールエディタ、メモ帳など)の作業用のデータファイルに認識結果文字列のテキストデータや辞書データを出力したり、認識結果文字列を音声変換して、スピーカから出力するようにしてもよい。
【0084】
また、上記の認識処理は携帯電話に限らず、他のモバイル機器やパーソナルコンピュータに適用することも可能である。また、既存のOCRソフトが組み込まれているパーソナルコンピュータに、図2の単語認識処理部105や認識結果補正部106の機能を導入すれば、OCRソフトで認識された結果の誤りを補正することが可能である。
【符号の説明】
【0085】
1 携帯電話
2 カメラ
3 表示部
11 CPU
12 主メモリ
13 作業用メモリ
100 文字認識用のアプリケーション
101 文字認識用データベース
102 単語データベース
103 前処理部
104 文字認識処理部
105 単語認識処理部
107 表示制御部

【特許請求の範囲】
【請求項1】
文字列の画像に対する認識処理の結果として、前記文字列を構成する文字毎に1以上の文字候補を取得したことに応じて、複数の単語が登録された単語データベースを用いて前記文字列に該当する単語を認識する方法であって、
前記単語データベースに含まれる所定数の単語を初期の単語候補に設定し、
前記認識対象の文字列を構成する各文字を一文字ずつ処理対象に設定すると共に、処理対象の文字を設定する都度、その設定時の単語候補を対象として、前記認識対象の文字列において処理対象の文字が配置されている位置と同じ位置に当該処理対象の文字につき取得した文字候補が配置されている構成の単語に単語候補を絞り込む処理を実行し、
前記認識対象の文字列中の最後の処理対象の文字に対する絞り込み処理が終了したとき、その時点で抽出されている単語候補の中から前記文字列に該当する単語を特定する、
ことを特徴とする単語認識方法。
【請求項2】
請求項1に記載された方法において、
前記処理対象の文字を設定する都度、その処理対象の文字につき前記認識処理により取得した文字候補の中から、当該認識処理においてあらかじめ定めた条件に基づく許容値を上回る信頼度が得られた文字候補を抽出し、抽出された文字候補のみに対象を限定して前記単語候補を絞り込む処理を実行する、単語認識方法。
【請求項3】
請求項1に記載された方法において、
前記初期の単語候補を設定する処理では、前記単語データベースに登録されている単語のうち、前記認識対象の文字列と構成文字数が一致する単語を初期の単語候補に設定する単語認識方法。
【請求項4】
請求項1に記載された方法において、
前記認識対象の文字列中の最後の処理対象の文字に対する絞り込み処理が終了したときに複数の単語候補が抽出されているとき、これらの単語候補毎に、その単語候補を構成する各文字に対応する文字候補の信頼度の平均値を算出し、信頼度の平均値が最も高い単語候補を前記文字列に該当する単語として特定する、単語認識方法。
【請求項5】
複数の単語が登録された単語データベースが設定され、文字列の画像に対する認識処理の結果として、当該文字列を構成する文字毎に1以上の文字候補を取得したコンピュータに、前記文字列に該当する単語を認識する処理を行わせるためのプログラムであって、
前記単語データベースに登録されている所定数の単語を単語候補として初期設定する初期設定手段、
前記認識対象の文字列を構成する各文字を一文字ずつ処理対象に設定すると共に、処理対象の文字を設定する都度、その設定時の単語候補を対象として、前記認識対象の文字列において処理対象の文字が配置されている位置と同じ位置に当該処理対象の文字につき取得した文字候補が配置されている構成の単語に単語候補を絞り込む処理を実行する絞り込み手段、
前記認識対象の文字列中の最後の処理対象の文字に対する絞り込み処理が終了したとき、その時点で抽出されている単語候補の中から前記文字列に該当する単語を特定する単語特定手段、
単語特定手段により特定された単語を認識結果として出力する出力手段、
の各手段として前記コンピュータを機能させることを特徴とする、単語認識用のプログラム。
【請求項6】
複数の単語が登録された単語データベースと、文字列の画像に対する認識処理を行って、当該文字列を構成する文字毎に1以上の文字候補を取得する文字認識手段と、前記単語データベースおよび前記文字認識手段による認識結果を用いて前記文字列に該当する単語を認識する単語認識手段とを具備する情報処理装置であって、
前記単語データベースに登録されている所定数の単語を単語候補として初期設定する初期設定手段、
前記認識対象の文字列を構成する各文字を一文字ずつ処理対象に設定すると共に、処理対象の文字を設定する都度、その設定時の単語候補を対象として、前記認識対象の文字列において処理対象の文字が配置されている位置と同じ位置に当該処理対象の文字につき取得した文字候補が配置されている構成の単語に単語候補を絞り込む処理を実行する絞り込み手段、
前記認識対象の文字列中の最後の処理対象の文字に対する絞り込み処理が終了したとき、その時点で抽出されている単語候補の中から前記文字列に該当する単語を特定する単語特定手段、
単語特定手段により特定された単語を認識結果として出力する出力手段、
の各手段を、さらに具備することを特徴とする、情報処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−138435(P2011−138435A)
【公開日】平成23年7月14日(2011.7.14)
【国際特許分類】
【出願番号】特願2009−299227(P2009−299227)
【出願日】平成21年12月29日(2009.12.29)
【出願人】(000002945)オムロン株式会社 (3,542)
【Fターム(参考)】