(57)【特許請求の範囲】
【請求項１】
誤認識した文字を含んだ文字列を学習文字列として学習し、画像データから文字を認識する文字認識装置であって、
文字パターンと文字コードとを予め対応付けた第一辞書を記憶する第一辞書記憶手段と、
前記学習文字列を記憶する学習文字列記憶手段と、
前記学習文字列の各文字について文字パターンと文字コードとを対応付けた第二辞書を記憶する第二辞書記憶手段と、
前記第一辞書および前記第二辞書に基づいて、前記第二辞書を優先して前記画像データから文字認識を行う認識手段と、
この認識手段で認識された文字列に対して、ユーザによって入力装置を介して修正された文字列を前記学習文字列として入力する学習文字列入力手段と、
この学習文字列入力手段で入力された学習文字列を構成する文字ごとに、当該文字に対応する文字コードと当該文字を前記認識手段で認識した際の画像データ内の文字パターンとを対応付けて前記第二辞書記憶手段に登録する第二辞書登録手段と、
前記学習文字列を前記学習文字列記憶手段に登録する学習文字列登録手段と、を備え、
前記認識手段は、前記第二辞書に基づいて文字認識を行った文字列が前記学習文字列である場合に当該学習文字列を認識結果とし、当該文字列が前記学習文字列でない場合に前記第一辞書に基づいて文字認識を行うことを特徴とする文字認識装置。
【請求項２】
文字パターンと文字コードとを予め対応付けた第一辞書を記憶する第一辞書記憶手段と、誤認識した文字を含んだ文字列を学習した学習文字列を記憶する学習文字列記憶手段と、前記学習文字列の各文字について文字パターンと文字コードとを対応付けた第二辞書を記憶する第二辞書記憶手段と、を備えた文字認識装置のコンピュータを、
前記第一辞書および前記第二辞書に基づいて、前記第二辞書を優先して画像データから文字認識を行う認識手段、
この認識手段で認識された文字列に対して、ユーザによって入力装置を介して修正された文字列を前記学習文字列として入力する学習文字列入力手段、
この学習文字列入力手段で入力された学習文字列を構成する文字ごとに、当該文字に対応する文字コードと当該文字を前記認識手段で認識した際の画像データ内の文字パターンとを対応付けて前記第二辞書記憶手段に登録する第二辞書登録手段、
前記学習文字列を前記学習文字列記憶手段に登録する学習文字列登録手段、として機能させ、
前記認識手段は、前記第二辞書に基づいて文字認識を行った文字列が前記学習文字列である場合に当該学習文字列を認識結果とし、当該文字列が前記学習文字列でない場合に前記第一辞書に基づいて文字認識を行うことを特徴とする文字認識プログラム。
【請求項３】
文字パターンと文字コードとを予め対応付けた第一辞書を記憶する第一辞書記憶手段と、誤認識した文字を含んだ文字列を学習した学習文字列を記憶する学習文字列記憶手段と、前記学習文字列の各文字について文字パターンと文字コードとを対応付けた第二辞書を記憶する第二辞書記憶手段と、を備えた文字認識装置における文字学習方法であって、
前記文字認識装置が、
前記第一辞書に基づいて、画像データから文字認識を行う第一辞書文字認識ステップと、
この第一辞書文字認識ステップで認識された文字列を表示装置に出力し、入力装置を介してユーザから修正された文字列を前記学習文字列として入力する文字列修正ステップと、
この文字列修正ステップで入力された学習文字列を構成する文字ごとに、当該文字に対応する文字コードと当該文字を前記第一辞書文字認識ステップで認識した際の画像データ内の文字パターンとを対応付けて前記第二辞書記憶手段に登録するとともに、前記学習文字列を前記学習文字列記憶手段に登録する学習文字列登録ステップと、
を含むことを特徴とする文字認識装置における文字学習方法。
【請求項４】
文字パターンと文字コードとを予め対応付けた第一辞書を記憶する第一辞書記憶手段と、誤認識した文字を含んだ文字列を学習した学習文字列を記憶する学習文字列記憶手段と、前記学習文字列の各文字について文字パターンと文字コードとを対応付けた第二辞書を記憶する第二辞書記憶手段と、を備えた文字認識装置における文字認識方法であって、
前記文字認識装置が、
前記第二辞書に基づいて、画像データから文字認識を行う第二辞書文字認識ステップと、
この第二辞書文字認識ステップで認識された文字列が前記学習文字列記憶手段に記憶されている学習文字列であるか否かを判定する学習文字列判定ステップと、
この学習文字列判定ステップで前記文字列が前記学習文字列であると判定された場合に、当該学習文字列を認識結果として出力する学習文字列出力ステップと、
前記学習文字列判定ステップで前記文字列が前記学習文字列でないと判定された場合に、前記第一辞書に基づいて、前記画像データから文字認識を行う第一辞書文字認識ステップと、
この第一辞書文字認識ステップで認識された文字列を認識結果として出力する認識文字列出力ステップと、
を含むことを特徴とする文字認識装置における文字認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、誤認識した文字を学習して文字認識を行う文字認識装置および文字認識プログラム、並びに、文字認識装置における文字学習方法および文字認識方法に関する。
【背景技術】
【０００２】
近年、デジタル放送の多チャンネル化に伴い、膨大な映像から所望の映像を検索したいという要望がある。この要望に対し、映像内のフレーム画像から字幕を文字認識し、その認識された文字（文字列）を用いて、映像の検索を行うシステムが開示されている（例えば、特許文献１参照）。このような映像の各フレーム画像における文字を認識する技術は、フレーム画像から文字領域のみを抽出した画像データを生成した後、その画像データにおいて文字認識を行う手法が一般的である。
【０００３】
なお、画像データから文字認識を行う技術は、スキャナ等の画像入力装置で読み込んだ画像データから文字を認識する光学式文字読取装置（ＯＣＲ：Optical Character Reader）や、そのソフトウェア（ＯＣＲソフト）として実現されている（例えば、特許文献２参照）。一般に、ＯＣＲは、画像データをメモリ上に展開し、１文字分の画像データを切り出し、その切り出された画像データの特徴と予め辞書等に記憶されている文字の特徴とを比較することで文字の認識を行っている。また、このようなＯＣＲの技術においては、文字認識の認識精度を高めるため、予め準備した辞書以外に、誤認識した文字を学習したユーザ辞書を用いることが一般的である（例えば、特許文献３参照）。
【特許文献１】特開２００２−１４９７３号公報
【特許文献２】特開２００２−１３３３６７号公報
【特許文献３】特開平９−１８５６８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前記した従来のＯＣＲを用いた文字認識では、印刷活字においては、一定の筆記条件を満たせば９９％程度の認識率に達している。しかし、手書き文字や、種々のフォント等が使用される放送映像の字幕等においては、文字の特徴が一定ではないため、認識率が低く、認識結果に対してその都度修正を行わなければならないという問題がある。
【０００５】
また、ユーザ辞書を使用した場合であっても、ユーザ辞書に登録した文字間で文字が誤認識されてしまうという問題がある。例えば、図７に示したように、「送」の文字Ｃ１と「達」の文字Ｃ２とをそれぞれ学習し、「送」の文字コードと誤認識した際の文字パターンとを対応付け、「達」の文字コードと誤認識した際の文字パターンとを対応付けて、それぞれユーザ辞書に登録しているものとする。また、誤認識した際の「送」の文字パターンと「達」の文字パターンとが類似しているものとする。この場合、例えば、ユーザ辞書を用いたとしても、従来の文字認識においては、「放送局」を「放達局」と誤って認識してしまう場合がある。
【０００６】
本発明は、以上のような問題を解決するためになされたものであり、画像データから精度よく文字認識を行うとともに、ユーザ辞書を用いた場合であっても、誤認識を避けることが可能な文字認識装置および文字認識プログラム、並びに、文字認識装置における文字学習方法および文字認識方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、前記目的を達成するために創案されたものであり、まず、請求項１に記載の文字認識装置は、誤認識した文字を含んだ文字列を学習文字列として学習し、画像データから文字を認識する文字認識装置であって、文字パターンと文字コードとを予め対応付けた第一辞書を記憶した第一辞書記憶手段と、学習文字列を記憶する学習文字列記憶手段と、学習文字列の各文字について文字パターンと文字コードとを対応付けた第二辞書を記憶する第二辞書記憶手段とを備え、さらに、認識手段と、学習文字列入力手段と、第二辞書登録手段と、学習文字列登録手段と、を備える構成とした。
【０００８】
かかる構成において、文字認識装置は、認識手段によって、第一辞書および第二辞書に基づいて、第二辞書を優先して画像データから文字認識を行う。これによって、文字認識装置は、学習された文字列を優先して文字認識を行う。
【０００９】
そして、文字認識装置は、学習文字列入力手段によって、認識手段で認識された文字列に対して、ユーザによって入力装置を介して修正された文字列を学習文字列として入力する。これによって、文字認識装置は、当該文字認識装置が誤認識した文字を含んだ文字列（例えば、単語）を、ユーザが修正した正しい文字列（学習文字列）として取得する。この学習文字列は、誤認識した文字だけではなく、正しく認識した文字を含んでいる。よって、この学習文字列は、ある意味を持った単位、例えば、単語、文となる。すなわち、学習文字列は、誤認識した文字を含んだ文字列を、一連の文字列として認識することをユーザが期待したものといえる。
【００１０】
そして、文字認識装置は、第二辞書登録手段によって、学習文字列を構成する文字ごとに、当該文字に対応する文字コードと当該文字を認識手段で認識した際の画像データ内の文字パターンとを対応付けて第二辞書記憶手段に登録する。さらに、文字認識装置は、学習文字列登録手段によって、学習文字列を学習文字列記憶手段に登録する。これによって、文字認識装置は、学習文字列を文字単位で学習するとともに、当該学習文字列が、ユーザが一連の文字列として認識することを期待する文字列であることを学習することができる。
【００１１】
そして、文字認識装置は、認識手段によって、第二辞書に基づいて文字認識を行った文字列が学習文字列である場合に当該学習文字列を認識結果とし、当該文字列が学習文字列でない場合に第一辞書に基づいて文字認識を行う。これによって、文字認識装置は、第二辞書によって認識した文字列から、ユーザが期待しない文字列を除外することができる。
【００１２】
また、請求項２に記載の文字認識プログラムは、文字パターンと文字コードとを予め対応付けた第一辞書を記憶する第一辞書記憶手段と、誤認識した文字を含んだ文字列を学習した学習文字列を記憶する学習文字列記憶手段と、前記学習文字列の各文字について文字パターンと文字コードとを対応付けた第二辞書を記憶する第二辞書記憶手段と、を備えた文字認識装置のコンピュータを、認識手段、学習文字列入力手段、第二辞書登録手段、学習文字列登録手段として機能させる構成とした。
【００１３】
かかる構成において、文字認識プログラムは、認識手段によって、第一辞書および第二辞書に基づいて、第二辞書を優先して画像データから文字認識を行う。そして、文字認識プログラムは、学習文字列入力手段によって、認識手段で認識された文字列に対して、ユーザによって入力装置を介して修正された文字列を学習文字列として入力する。
【００１４】
その後、文字認識プログラムは、第二辞書登録手段によって、学習文字列を構成する文字ごとに、当該文字に対応する文字コードと当該文字を認識手段で認識した際の画像データ内の文字パターンとを対応付けて第二辞書記憶手段に登録する。さらに、文字認識プログラムは、学習文字列登録手段によって、学習文字列を学習文字列記憶手段に登録する。
【００１５】
そして、文字認識プログラムは、認識手段によって、第二辞書に基づいて文字認識を行った文字列が学習文字列である場合に当該学習文字列を認識結果とし、当該文字列が学習文字列でない場合に第一辞書に基づいて文字認識を行う。
【００１６】
さらに、請求項３に記載の文字学習方法は、文字パターンと文字コードとを予め対応付けた第一辞書を記憶する第一辞書記憶手段と、誤認識した文字を含んだ文字列を学習した学習文字列を記憶する学習文字列記憶手段と、前記学習文字列の各文字について文字パターンと文字コードとを対応付けた第二辞書を記憶する第二辞書記憶手段と、を備えた文字認識装置における文字学習方法であって、文字認識装置が、第一辞書文字認識ステップと、文字列修正ステップと、学習文字列登録ステップと、を含む手順とした。
【００１７】
かかる手順において、文字認識装置における文字学習方法は、第一辞書文字認識ステップで、第一辞書に基づいて、画像データから文字認識を行う。そして、文字学習方法は、文字列修正ステップで、第一辞書文字認識ステップで認識された文字列を表示装置に出力し、入力装置を介してユーザから修正された文字列を学習文字列として入力する。
【００１８】
その後、文字学習方法は、学習文字列登録ステップで、文字列修正ステップで入力された学習文字列を構成する文字ごとに、当該文字に対応する文字コードと当該文字を第一辞書文字認識ステップで認識した際の画像データ内の文字パターンとを対応付けて第二辞書記憶手段に登録するとともに、学習文字列を学習文字列記憶手段に登録する。これによって、文字認識装置は、学習文字列が、ユーザが一連の文字列として認識することを期待する文字列であることを学習することができる。
【００１９】
また、請求項４に記載の文字認識方法は、文字パターンと文字コードとを予め対応付けた第一辞書を記憶する第一辞書記憶手段と、誤認識した文字を含んだ文字列を学習した学習文字列を記憶する学習文字列記憶手段と、前記学習文字列の各文字について文字パターンと文字コードとを対応付けた第二辞書を記憶する第二辞書記憶手段と、を備えた文字認識装置における文字認識方法であって、文字認識装置が、第二辞書文字認識ステップと、学習文字列判定ステップと、学習文字列出力ステップと、第一辞書文字認識ステップと、認識文字列出力ステップと、を含む手順とした。
【００２０】
かかる手順において、文字認識装置における文字認識方法は、第二辞書文字認識ステップで、第二辞書に基づいて、画像データから文字認識を行う。そして、文字認識方法は、学習文字列判定ステップで、第二辞書文字認識ステップで認識された文字列が学習文字列記憶手段に記憶されている学習文字列であるか否かを判定する。
【００２１】
そして、文字認識方法は、学習文字列出力ステップで、学習文字列判定ステップで文字列が学習文字列であると判定された場合に、当該学習文字列を認識結果として出力する。また、文字認識方法は、第一辞書文字認識ステップで、学習文字列判定ステップで文字列が学習文字列でないと判定された場合に、第一辞書に基づいて、画像データから文字認識を行う。さらに、文字認識方法は、認識文字列出力ステップで、第一辞書文字認識ステップで認識された文字列を認識結果として出力する。これによって、文字認識装置は、第二辞書により認識された文字列のうちで、学習文字列記憶手段に記憶されている学習文字列のみを認識結果として出力し、他の文字列については、第一辞書により文字認識を行う。
【発明の効果】
【００２２】
本発明は、以下に示す優れた効果を奏するものである。
請求項１，２に記載の発明によれば、誤認識した文字を含んだ学習文字列の個々の文字を第二辞書（ユーザ辞書）に登録しておくことができるため、当該学習文字列を構成する個々の文字の認識精度を高めることができる。さらに、請求項１，２に記載の発明によれば、学習文字列記憶手段に、第二辞書に登録した学習文字列を記憶しておき、第二辞書を用いて文字認識を行う際に、学習文字列以外の文字列を認識結果として出力することがないため、第二辞書に登録した文字間での誤認識を避けることができる。
【００２３】
請求項３に記載の発明によれば、誤認識した文字を含んだ学習文字列の個々の文字について第二辞書（ユーザ辞書）に登録するとともに、学習文字列記憶手段に、第二辞書に登録した学習文字列を記憶しておくため、文字列を単位として文字を学習することができる。このように学習された学習文字列を用いることで、文字認識装置は、学習した文字によって文字認識が行われた場合に、ユーザが期待しない文字列を認識結果として出力することがなく、文字列の誤認識を避けることができる。
【００２４】
請求項４に記載の発明によれば、誤認識した文字を含んだ学習文字列の個々の文字を学習した第二辞書（ユーザ辞書）により文字認識を行うため、誤認識した文字の認識精度を高めることができる。さらに、請求項４に記載の発明によれば、第二辞書に登録した学習文字列を記憶した学習文字列記憶手段を参照することで、ユーザが期待しない文字列を認識結果として出力することがなく、文字列の誤認識を避けることができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施の形態について図面を参照して説明する。
［文字認識装置の構成］
まず、図１を参照して、本発明の実施形態に係る文字認識装置の構成について説明する。図１は、本発明の実施形態に係る文字認識装置の全体構成を示す機能ブロック図である。
【００２６】
文字認識装置１は、誤認識した文字を学習して画像データから文字を認識するものである。この文字認識装置１は、記憶手段１０と、画像入力手段２０と、認識手段３０と、学習手段４０と、を備える。なお、ここでは、文字認識装置１は、外部にキーボード、マウス等の入力装置２と、文字認識結果等を表示する表示装置３とを接続している。
【００２７】
記憶手段（第一辞書記憶手段、第二辞書記憶手段、学習文字列記憶手段）１０は、文字認識を行う際に必要となる辞書等を記憶するものであって、ハードディスク等の一般的な記憶装置で構成される。ここでは、記憶手段１０に、辞書（以下、通常辞書）１０ａと、ユーザ辞書１０ｂと、学習文字列テーブル１０ｃとが記憶される。
【００２８】
通常辞書（第一辞書）１０ａは、認識対象となるすべての文字の文字パターンと文字コードとを予め対応付けた辞書データである。文字パターンは、文字の形状を表すデータであって、ここでは、画像データ（ビットマップデータ）を用いることとする。なお、この文字パターンは、文字の形状の特徴を表すものであれば画像データに限定されるものではない。例えば、文字の傾き、面積等の複数の特徴を特徴ベクトルとしたものであってもよい。また、文字コードは、文字を一意に特定するための符号であって、例えば、シフトＪＩＳコード、ＥＵＣコード等の一般的な符号である。
【００２９】
このように、通常辞書に、認識対象となるすべての文字の文字パターンと文字コードとを対応付けておくことで、認識手段３０において、画像データから文字を認識し、文字コードで表現されたテキストデータとすることが可能になる。
【００３０】
ユーザ辞書（第二辞書）１０ｂは、通常辞書１０ａ以外に、ユーザが個別に登録した文字の文字コードと文字パターンとを対応付けた辞書データである。ここでは、ユーザ辞書１０ｂとして、当該文字認識装置１において誤認識された文字を含んだ文字列を、文字単位で、文字コードと文字パターンとに対応付けておく。なお、このユーザ辞書１０ｂは、学習手段４０によって登録される。
【００３１】
例えば、「放送局」と認識されるべき単語が「放達局」と誤って認識された場合、ユーザ辞書１０ｂには、誤って認識された文字「達」のみではなく、「放」、「達」、「局」として認識された際の文字パターンが、それぞれ、修正後の「放」、「送」、「局」の文字コードに対応付けてユーザ辞書１０ｂに登録される。
【００３２】
このように、誤認識された文字（文字コード）を、誤認識された文字パターン（画像データ）と対応付けて登録しておくことで、再度同様の文字パターン（画像データ）を認識した際に、正しい文字で認識する確率を高めることができる。
【００３３】
学習文字列テーブル１０ｃは、学習文字列を記憶するデータテーブルであって、ユーザ辞書１０ｂに登録された文字列を記憶するものである。例えば、ユーザ辞書１０ｂに「放」、「送」、「局」の各文字コードが登録された場合、学習文字列テーブル１０ｃには、学習文字列として「放送局」が登録される。なお、この学習文字列テーブル１０ｃは、学習手段４０によって学習文字列が登録される。
【００３４】
このように、ユーザ辞書１０ｂに登録した文字を、文字列（例えば、単語等の意味ある単位の文字列）で登録しておくことで、認識された文字列が、ユーザが期待する文字列であるか否かを判定することが可能になる。
【００３５】
ここで、図２および図３を参照（適宜図１参照）して、ユーザ辞書１０ｂと学習文字列テーブル１０ｃの内容について具体的に説明する。図２は、ユーザ辞書の内容を示すデータ構造図である。図３は、学習文字列テーブルの内容を示すデータ構造図である。
【００３６】
図２に示すように、ユーザ辞書１０ｂは、文字コードＣと文字パターンＰとが対応付けられたデータ構造を有している。図２の例では、「放」、「送」、「局」、「達」、「成」、「時」、「間」…が、それぞれ、文字コードＣと文字パターンＰとで対応付けられた例を示している。例えば、文字「放」（文字コード：０ｘ９５ＦＡ）は、「放」の文字を認識した際の文字パターン（文字画像データ）に対応付けられている。これによって、認識手段３０が、画像データにおいて「放」の文字パターンＰを認識した際に、０ｘ９５ＦＡの「放」の文字コードＣを出力することができる。なお、ここでは、１つの文字コードＣに１つの文字パターンＰを対応付けた例を示しているが、１つの文字コードＣに複数の文字パターンＰを対応付けることとしてもよい。これによって、文字認識装置１は、複数の文字種の文字を学習することができる。
【００３７】
また、図３に示すように、学習文字列テーブル１０ｃは、ユーザが登録した学習文字列Ｓを１つのレコードとしたデータ構造を有している。図３の例では、「放送局」、「達成」、「放送時間」…をそれぞれ１レコードとして登録した例を示している。
【００３８】
このように、ユーザ辞書１０ｂだけでなく、学習文字列テーブル１０ｃを用いることで、ユーザ辞書１０ｂを用いて認識された文字列の認識結果に対して、その認識結果がユーザの期待する文字列であるか否かを判定することが可能になる。
【００３９】
例えば、図３に示すように、「放送局」と「達成」とが学習文字列テーブル１０ｃに登録されている場合、図２に示すように、ユーザ辞書１０ｂには、それぞれの文字「放」、「送」、「局」、「達」および「成」の文字コードＣと文字パターンＰとが対応付けられていることになる。この場合、認識手段３０において、ユーザ辞書１０ｂを用いて文字認識を行うと、「放送局」を「放達局」と誤って認識する場合がある。しかし、学習文字列テーブル１０ｃには、「放達局」は登録されていないため、当該文字認識がユーザの期待する認識結果ではないと判定することができる。この場合は、さらに学習を行うことで、文字認識の精度を高めることができる。なお、この文字学習と文字認識の具体的な動作については、後で詳細に説明を行う。
図１に戻って、文字認識装置１の構成について説明を続ける。
【００４０】
画像入力手段２０は、画像データを入力するものである。この画像データは、文字を含んだビットマップデータであって、例えば、スキャナで文書を読み取った画像であってもよいし、映像内のフレーム画像から字幕を抽出した画像であってもよい。また、画像入力手段２０は、図示を省略した画像蓄積装置（図示せず）から、ユーザが指定した画像データを入力することとしてもよいし、ネットワーク等を介して入力することとしてもよい。なお、画像入力手段２０は、入力した画像データをメモリ（図示せず）に展開し、認識手段３０に画像データを入力した旨の通知を行う。
【００４１】
認識手段３０は、画像入力手段２０で入力された画像データから、記憶手段１０に記憶されている辞書（通常辞書１０ａ、ユーザ辞書１０ｂおよび学習文字列テーブル１０ｃ）に基づいて文字認識を行うものである。なお、この認識手段３０は、通常辞書１０ａよりもユーザ辞書１０ｂを優先して文字認識を行う。これによって、認識手段３０は、文字単位での認識精度を高めることができる。また、ここでは、認識手段３０は、文字抽出手段３１と、通常辞書文字認識手段３２と、ユーザ辞書文字認識手段３３と、学習文字列判定手段３４と、認識結果出力手段３５と、を備える。
【００４２】
文字抽出手段３１は、画像データから文字単位で文字領域を抽出するものである。例えば、文字抽出手段３１は、画像データから縦横のビットの分布によって文字の区切りを検出し、１文字ごとに画像データから文字領域を抽出する。この文字抽出手段３１は、抽出した文字領域（具体的には、当該画像データのメモリ上のアドレス等）を、通常辞書文字認識手段３２およびユーザ辞書文字認識手段３３、並びに、学習手段４０に出力する。
【００４３】
通常辞書文字認識手段３２は、通常辞書１０ａに基づいて、文字抽出手段３１で抽出された文字領域の画像データ（文字画像データ）の文字認識を行うものである。この通常辞書文字認識手段３２は、文字画像データと通常辞書１０ａに登録されている文字パターンとでパターンマッチングを行うことで文字の認識を行う。この認識結果の文字（文字コード）は認識結果出力手段３５に出力される。
【００４４】
なお、通常辞書文字認識手段３２は、パターンマッチング以外にも一般的な文字認識手法を用いることができる。例えば、通常辞書文字認識手段３２は、通常辞書１０ａに登録されている文字パターンが文字を構成する文字線の特徴である場合、文字認識手法として、ストロークアナリスト法、ゾンデ法等を用いることができる。
【００４５】
また、通常辞書文字認識手段３２は、ユーザ辞書文字認識手段３３で認識されなかった文字、および、学習文字列判定手段３４で学習文字列と判定されなかった文字列以外の文字について文字認識を行うこととする。
【００４６】
ユーザ辞書文字認識手段３３は、ユーザ辞書１０ｂに基づいて、文字抽出手段３１で抽出された文字領域の画像データ（文字画像データ）の文字認識を行うものである。このユーザ辞書文字認識手段３３は、文字画像データとユーザ辞書１０ｂに登録されている文字パターンとでパターンマッチングを行うことで文字の認識を行う。なお、ユーザ辞書文字認識手段３３における文字認識は、通常辞書文字認識手段３２と同様の手法を用いることができる。
【００４７】
ここで、ユーザ辞書文字認識手段３３は、認識した文字を学習文字列判定手段３４に順次出力する。また、ユーザ辞書文字認識手段３３で認識されなかった文字画像データは、通常辞書文字認識手段３２に通知されて、通常辞書１０ａに基づいて文字認識が行われる。
【００４８】
学習文字列判定手段３４は、ユーザ辞書文字認識手段３３で認識された文字（文字コード）を順次入力し、入力された文字列が、学習文字列テーブル１０ｃに学習文字列として登録されているか否かを判定するものである。ここで、学習文字列判定手段３４は、学習文字列と認識した文字列を認識結果出力手段３５に出力し、学習文字列と認識しなかった文字列については、通常辞書文字認識手段３２に出力する。これによって、学習文字列と認識されなかった文字列については、通常辞書１０ａを用いて文字認識が行われることになる。
【００４９】
認識結果出力手段３５は、通常辞書文字認識手段３２で認識された文字列や、ユーザ辞書文字認識手段３３で認識され、学習文字列判定手段３４で学習文字列として認識された文字列を出力するものである。ここでは、認識結果出力手段３５は、外部に接続された表示装置３に認識結果の文字列を出力する。これによって、ユーザが文字認識の結果が正常に行われたか否かを判断することができる。
【００５０】
学習手段４０は、認識手段３０で認識された文字列に対して、ユーザが誤認識と判断した文字列を学習させるものである。ここでは、学習手段４０は、学習文字列入力手段４１と、登録手段４２と、を備える。
【００５１】
学習文字列入力手段４１は、ユーザから、認識手段３０で認識された文字列に対する正しい文字列（文字コードの列）を、キーボード等の入力装置２を介して、学習文字列として入力するものである。この学習文字列入力手段４１で入力された学習文字列は、登録手段４２に出力される。例えば、図４（ａ）に示すように、認識結果出力手段３５によって、表示装置３の画面Ｇに認識結果として「放達局」が表示された場合、ユーザは認識結果が誤認識されたものと判断し、図４（ｂ）に「放送局」と修正した後、登録を指示（例えば、図中、「登録」ボタンをマウスでクリック）する。これによって、学習文字列入力手段４１は、認識結果を修正した文字列（ここでは「放送局」）を学習文字列として入力する。
【００５２】
なお、ここでは、認識結果全体を学習文字列として学習させる例を示したが、例えば、認識結果が文章である場合、ユーザが文章内で誤認識のあった文字を含んだ単語をマウス等で選択し、修正を行った後の単語を学習文字列とすることとしてもよい。例えば、「明日、ＮＨＫ放送局で○○が放送されます。」という文字列に対し、「明日、ＮＨＫ放達局で○○が放送されます。」と誤認識された場合、ユーザが「放達局」をマウスで選択し、「放送局」と修正を行うことで、「放送局」を学習文字列とする。
【００５３】
登録手段４２は、学習文字列入力手段４１で入力された学習文字列をユーザ辞書１０ｂおよび学習文字列テーブル１０ｃに登録するものである。ここでは、登録手段４２は、ユーザ辞書登録手段４２０と、学習文字列登録手段４２１と、を備える。
【００５４】
ユーザ辞書登録手段（第二辞書登録手段）４２０は、学習文字列入力手段４１で入力された学習文字列を構成する文字ごとに、当該文字に対応する文字コードと当該文字を認識手段３０で認識した際の画像データ内の文字パターン（文字画像データ）とを対応付けてユーザ辞書１０ｂに登録するものである。なお、認識対象の文字列の画像データ内の位置は、認識手段３０（より詳細には文字抽出手段３１）から通知されるものとする。例えば、「放送局」が学習文字列として入力された場合、ユーザ辞書登録手段４２０は、図２に示すように、「放」、「送」および「局」の各文字コードＣと、それぞれの文字に対応する文字パターンＰとを、ユーザ辞書１０ｂに登録する。
【００５５】
学習文字列登録手段４２１は、学習文字列入力手段４１で入力された学習文字列を学習文字列テーブル１０ｃに登録するものである。例えば、「放送局」が学習文字列として入力された場合、学習文字列登録手段４２１は、図３に示すように、「放送局」を学習文字列テーブル１０ｃに登録する。すなわち、学習文字列登録手段４２１は、修正が行われた「送」のみを登録するのではなく、修正文字を含んだ文字列「放送局」全体を登録する。これによって、学習文字列テーブル１０ｃには、ユーザ辞書１０ｂに登録された文字のうちで、ユーザが文字列（例えば、単語）として認識させたい候補が登録されることになる。
【００５６】
以上説明したように文字認識装置１を構成することで、文字認識装置１は、画像データ（ビットマップデータ）から、文字を認識することができる。このとき、文字認識装置１は、ユーザ辞書１０ｂに誤認識した文字を登録するため、学習によって文字認識精度を高めることができる。さらに、文字認識装置１は、ユーザ辞書１０ｂに登録した各文字について、ユーザが一連の文字列として認識することを期待する学習文字列を学習文字列テーブル１０ｃに登録するため、ユーザ辞書１０ｂを用いた認識において誤認識を防止することができる。
【００５７】
なお、文字認識装置１は、一般的なコンピュータを、前記した各手段として機能させる文字認識プログラムによって動作させることができる。このプログラム（文字認識プログラム）は、通信回線を介して配布することも可能であるし、ＣＤ−ＲＯＭ等の記録媒体に書き込んで配布することも可能である。
【００５８】
［文字認識装置の動作］
次に、図５および図６を参照（構成については適宜図１参照）して、本発明の実施形態に係る文字認識装置の動作について説明する。ここでは、文字認識装置の特徴である学習文字列の学習動作と、学習文字列を用いた文字認識動作とについて説明を行うこととする。図５は、本発明の実施形態に係る文字認識装置の学習文字列の学習動作を示すフローチャートである。図６は、本発明の実施形態に係る文字認識装置の学習文字列を用いた文字認識動作を示すフローチャートである。
【００５９】
〔学習文字列の学習動作〕
最初に、図５を参照（適宜図１参照）して、文字認識装置１の学習文字列の学習動作について説明する。なお、ここでは、まだ、ユーザ辞書１０ｂおよび学習文字列テーブル１０ｃに何も登録されていないものとする。
【００６０】
（画像データ入力ステップ）
まず、文字認識装置１は、画像入力手段２０によって、文字を含んだ画像データ（ビットマップデータ）を入力する（ステップＳ１）。なお、文字認識装置１は、入力した画像データを、メモリ（図示せず）に展開するものとする。
【００６１】
（文字抽出ステップ）
そして、文字認識装置１は、認識手段３０によって、画像データから文字を認識する。具体的には、文字認識装置１は、文字抽出手段３１によって、メモリに展開された画像データから、ビットの分布等によって、文字単位で文字（文字画像データ）を抽出する（ステップＳ２）。
【００６２】
（通常〔第一〕辞書文字認識ステップ）
さらに、文字認識装置１は、通常辞書文字認識手段３２によって、ステップＳ２で抽出された文字画像データと通常辞書１０ａに登録されている文字パターンとで、パターンマッチングあるいは特徴の類似判定を行うことで、文字画像データの文字認識を行う（ステップＳ３）。
【００６３】
（文字列修正ステップ）
そして、文字認識装置１は、認識結果出力手段３５によって、ステップＳ３で認識された文字（認識文字列）を表示装置３に出力する（ステップＳ４）。例えば、図４（ａ）に示すように、認識結果出力手段３５は、認識した文字列（ここでは「放達局」）を表示装置３の画面上に表示する。
【００６４】
その後、文字認識装置１は、学習手段４０によって、誤認識した文字の学習を行う。具体的には、文字認識装置１は、学習文字列入力手段４１によって、ユーザが誤認識と判断して修正した文字列を学習文字列として入力する（ステップＳ５）。例えば、図４（ｂ）に示すように、学習文字列入力手段４１は、ユーザが入力装置２によって修正した文字列（ここでは「放送局」）を入力する。これによって、正しい文字コードが入力されることになる。なお、図４（ｂ）の例では、誤認識された文字が１文字（「送」）だけであるが、学習文字列は、誤認識文字を含んだ文字列（「放送局」）を学習文字列とする。
【００６５】
（学習文字列登録ステップ）
そして、文字認識装置１は、登録手段４２のユーザ辞書登録手段４２０によって、ステップＳ５で入力された学習文字列を構成する文字ごとに、当該文字に対応する文字コードと当該文字をステップＳ２で抽出（認識）した際の画像データ内の文字パターン（文字画像データ）とを対応付けてユーザ辞書１０ｂに登録する（ステップＳ６）。
さらに、文字認識装置１は、登録手段４２の学習文字列登録手段４２１によって、ステップＳ６で入力された学習文字列を学習文字列テーブル１０ｃに登録する（ステップＳ７）。
【００６６】
以上の動作によって、文字認識装置１は、学習結果として、学習文字列の文字ごとに、文字コードと文字パターン（文字画像データ）とを対応付けてユーザ辞書１０ｂに登録する。さらに、文字認識装置１は、学習結果として、誤認識を修正した文字列を、ユーザが一連の文字列として認識することを期待する学習文字列として学習文字列テーブル１０ｃに登録する。
【００６７】
〔学習文字列を用いた文字認識動作〕
次に、図６を参照（適宜図１参照）して、文字認識装置１の文字認識動作について説明する。なお、ユーザ辞書１０ｂおよび学習文字列テーブル１０ｃには、図５で説明した動作によって、学習文字列が学習（登録）されているものとする。
【００６８】
（画像データ入力ステップ）
まず、文字認識装置１は、画像入力手段２０によって、文字を含んだ画像データ（ビットマップデータ）を入力する（ステップＳ１０）。なお、文字認識装置１は、入力した画像データを、メモリ（図示せず）に展開するものとする。
【００６９】
（文字抽出ステップ）
そして、文字認識装置１は、認識手段３０によって、画像データから文字を認識する。具体的には、文字認識装置１は、文字抽出手段３１によって、メモリに展開された画像データから、ビットの分布等によって、文字単位で文字（文字画像データ）を抽出する（ステップＳ１１）。なお、ステップＳ１０およびステップＳ１１は、図５で説明したステップＳ１およびステップＳ２の動作と同じ動作である。
【００７０】
（ユーザ〔第二〕辞書文字認識ステップ）
そして、文字認識装置１は、ユーザ辞書文字認識手段３３によって、ステップＳ１１で抽出された文字画像データと、学習動作（図５参照）によって学習されたユーザ辞書１０ｂに登録されている文字パターンとで、パターンマッチングあるいは特徴の類似判定を行うことで、文字画像データの文字認識を行う（ステップＳ１２）。
【００７１】
（学習文字列判定ステップ）
さらに、文字認識装置１は、学習文字列判定手段３４によって、ステップＳ１２で認識された文字列が、学習文字列テーブル１０ｃに学習文字列として登録されているか否かを判定する（ステップＳ１３）。
【００７２】
（学習文字列出力ステップ）
ここで、ステップＳ１２で認識された文字列が学習文字列である場合（ステップＳ１４でＹｅｓ）、文字認識装置１は、認識結果出力手段３５によって、ステップＳ１３で認識された文字（学習文字列）を表示装置３に出力する（ステップＳ１５）。
【００７３】
（第一辞書文字認識ステップ）
一方、ステップＳ１２で認識された文字列が学習文字列でない場合（ステップＳ１４でＮｏ）、文字認識装置１は、通常辞書文字認識手段３２によって、ステップＳ１１で抽出された文字画像データと通常辞書１０ａに登録されている文字パターンとで、パターンマッチングあるいは特徴の類似判定を行うことで、文字画像データの文字認識を行う（ステップＳ１６）。
【００７４】
（認識文字列出力ステップ）
そして、文字認識装置１は、認識結果出力手段３５によって、ステップＳ１６で認識された文字（認識文字列）を表示装置３に出力する（ステップＳ１７）。
【００７５】
以上の動作によって、文字認識装置１は、誤認識した文字をユーザ辞書１０ｂに学習させておくため、ユーザ辞書１０ｂを用いることで、精度よく文字認識を行うことができる。さらに、文字認識装置１は、学習文字列を学習文字列テーブル１０ｃに登録しておくため、ユーザ辞書１０ｂを用いて認識された文字列において、ユーザが期待しない文字列を除外することができ、ユーザ辞書を用いた文字認識における誤認識を避けることができる。
【００７６】
なお、ここでは、説明を簡略化するため、ステップＳ１５およびステップＳ１７の動作後、処理を終了しているが、ステップＳ１１において、複数の文字列が抽出された場合は、ステップＳ１５およびステップＳ１７の動作後、ステップＳ１２に戻って動作を継続することとする。
【００７７】
また、ステップＳ１７において出力された認識結果がユーザによって誤認識であると判断された場合、文字認識装置１は、ステップＳ１７以降、図５のステップＳ５〜Ｓ７の動作を行うことで、学習文字列の再学習を行うこととする。すなわち、図６で説明した学習文字列を用いた文字認識動作は、ユーザが誤認識と判断した場合に、適宜、図５で説明した学習文字列の学習動作（ステップＳ５〜Ｓ７）を行うことで、文字認識の精度を高めることができる。
【図面の簡単な説明】
【００７８】
【図１】本発明の実施形態に係る文字認識装置の全体構成を示す機能ブロック図である。
【図２】ユーザ辞書の内容を示すデータ構造図である。
【図３】学習文字列テーブルの内容を示すデータ構造図である。
【図４】学習文字列の編集および登録を行う画面例を示す図である。
【図５】本発明の実施形態に係る文字認識装置の学習文字列の学習動作を示すフローチャートである。
【図６】本発明の実施形態に係る文字認識装置の学習文字列を用いた文字認識動作を示すフローチャートである。
【図７】従来のユーザ辞書の内容を示すデータ構造図である。
【符号の説明】
【００７９】
１      文字認識装置
２      入力装置
３      表示装置
１０    記憶手段（第一辞書記憶手段、第二辞書記憶手段、学習文字列記憶手段）
１０ａ  通常辞書（第一辞書）
１０ｂ  ユーザ辞書（第二辞書）
１０ｃ  学習文字列テーブル
２０    画像入力手段
３０    認識手段
３１    文字抽出手段
３２    通常辞書文字認識手段
３３    ユーザ辞書文字認識手段
３４    学習文字列判定手段
３５    認識結果出力手段
４０    学習手段
４１    学習文字列入力手段
４２    登録手段
４２０  ユーザ辞書登録手段
４２１  学習文字列登録手段
【図１】
0005060334.tif 000002
【図２】
0005060334.tif 000003
【図３】
0005060334.tif 000004
【図４】
0005060334.tif 000005
【図５】
0005060334.tif 000006
【図６】
0005060334.tif 000007
【図７】
0005060334.tif 000008