(57)【要約】【課題】  辞書を記憶する記憶容量が小さな装置であっても、画像パターンの認識精度を向上させることができるパターン認識辞書作成装置を提供する。【解決手段】  入力画像の特徴量を求めて特徴ベクトルを生成する特徴ベクトル生成部１１１と、各画像の特徴ベクトル同士を比較して類似度の高い画像をグループとしてまとめるグループ化部１１４と、特徴ベクトル生成部で生成された特徴ベクトルに基づいて、画像の画素分布の情報を含む複数の特徴データを生成する主成分分析部１１３と、パターン認識用辞書を作成する場合に、グループに含まれない画像の特徴データのデータ量よりもグループに含まれる画像の特徴データのデータ量が多くなるように記憶装置２３にデータを記憶させる辞書生成・登録部１１５とを有している。【選択図】        図２
2010170352.tif 000002
【特許請求の範囲】
【請求項１】
入力画像の画像パターンに基づく特徴量を求めて、該特徴量を要素とする特徴ベクトルを生成する特徴ベクトル生成手段と、
各画像の特徴ベクトル同士を比較して類似度の高い画像を抽出し、前記類似度の高い画像をグループとしてまとめるグループ化手段と、
前記特徴ベクトル生成手段で生成された特徴ベクトルに基づいて、画像の画素分布の情報を含む複数の特徴データを生成する特徴データ生成手段と、
各画像を識別する識別情報と、該各画像の特徴データとを記憶手段に記憶させてパターン認識用辞書を作成する場合に、前記グループに含まれない画像の特徴データのデータ量よりも前記グループに含まれる画像の特徴データのデータ量が多くなるように前記パターン認識用辞書を作成し、該作成したパターン認識用辞書を前記記憶手段に記憶させる認識用辞書作成手段と、
を有するパターン認識辞書作成装置。
【請求項２】
前記認識用辞書作成手段は、前記グループに含まれない画像の前記パターン認識用辞書を作成する際に、他の画像の複数の特徴データと共通する特徴データを抽出し、該抽出した複数の特徴データを識別する識別情報を前記抽出した複数の特徴データに代えて前記パターン認識用辞書に登録すると共に、前記抽出した複数の特徴データと、該抽出した複数の特徴データを識別する識別情報とを関連付けるサブ辞書を作成する、請求項１記載のパターン認識辞書作成装置。
【請求項３】
前記特徴データ生成手段は、前記特徴ベクトルに基づいて主成分分析を行い、画像の画素分布を示す固有値と、複数のベクトル要素を有する固有ベクトルを生成する手段である、請求項１記載のパターン認識辞書作成装置。
【請求項４】
前記認識用辞書作成手段は、前記グループに含まれない画像の前記パターン認識用辞書を作成する場合は、該画像の固有ベクトルのベクトル要素のうち、他の画像の固有ベクトルのベクトル要素と部分一致するベクトル要素列と、ベクトル要素同士の差が所定値以下にあるベクトル要素列との少なくとも一方を抽出し、該抽出したベクトル要素列を識別する識別情報を前記記憶手段に記憶させると共に、前記抽出したベクトル列と、前記識別識別とを関連付けるサブ辞書を作成する、請求項３記載のパターン認識辞書作成装置。
【請求項５】
コンピュータを、
入力画像の画像パターンに基づく特徴量を求めて、該特徴量を要素とする特徴ベクトルを生成する手段と、
各画像の特徴ベクトル同士を比較して類似度の高い画像を抽出し、前記類似度の高い画像をグループとしてまとめる手段と、
前記特徴ベクトル生成手段で生成された特徴ベクトルに基づいて、画像の画素分布の情報を含む複数の特徴データを生成する手段と、
各画像を識別する識別情報と、該各画像の特徴データとを記憶手段に記憶させてパターン認識用辞書を作成する場合に、前記グループに含まれない画像の特徴データのデータ量よりも前記グループに含まれる画像の特徴データのデータ量が多くなるように前記パターン認識用辞書を作成し、該作成したパターン認識用辞書を前記記憶手段に記憶させる手段として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パターン認識辞書作成装置及びプログラムに関する。
【背景技術】
【０００２】
近年、携帯電話、ＰＤＡ（Personal Digital Assistants）、カーナビゲーション装置等のメモリの容量が小さい装置で文字認識に代表されるパターン認識が行われるようになってきた。メモリ容量の小さい装置では、パターン認識に用いる辞書の容量と、パターン認識の精度とが課題となる。すなわち、認識精度をあまり低下させず、辞書容量が大幅に削減できるパターン認識辞書が求められている。
【０００３】
例えば、文字認識であれば、まず、各文字の標準的な文字パターンに基づいて求めた特徴ベクトルを認識用辞書に登録しておく（特徴ベクトルについては後述する）。そして、入力した文字パターンに基づいて求めた特徴ベクトルと、認識用辞書に登録された各特徴ベクトルとのベクトル間距離を計算し、ベクトル間距離が最も近い文字を認識結果とする手法が通常の手法である。
また、距離計算の方法として、１次識別手法と２次識別手法とがある。一次識別手法は、認識用辞書に登録された各文字の特徴ベクトルと、入力した文字パターンに基づいて求めた特徴ベクトルとのユークリッド距離を求める方法である。また、２次識別手法では、マハラノビス距離、擬似ベイズ距離識別等の手法を用いて、文字パターンの画素分布を表す固有値、固有ベクトルを求め、これらの値を認識用辞書に登録しておく。そして、入力した文字パターンから求めた固有値、固有ベクトルと、認識用辞書に登録された固有値、固有ベクトルとを比較して、入力した文字パターンを認識する方法である（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−６７７４３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
１次識別手法では、辞書として各文字コードの特徴ベクトルを登録しておけばよいので辞書容量は小さいが、パターン認識の精度が低いという課題がある。また、２次識別手法では、パターン認識の精度が高いが、文字パターンの画素分布を表す固有値、固有ベクトルを辞書に登録しなければならないため大きな辞書容量が必要となった。従って、メモリ容量の小さな装置では、パターン認識の精度を犠牲にして１次識別手法を使用していた。
【０００６】
本発明は上記事情に鑑みてなされたものであり、辞書を記憶する記憶容量が小さな装置であっても、画像パターンの認識精度を向上させることができるパターン認識辞書作成装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本明細書に開示のパターン認識辞書作成装置は、入力画像の画像パターンに基づく特徴量を求めて、該特徴量を要素とする特徴ベクトルを生成する特徴ベクトル生成手段と、各画像の特徴ベクトル同士を比較して類似度の高い画像を抽出し、前記類似度の高い画像をグループとしてまとめるグループ化手段と、前記特徴ベクトル生成手段で生成された特徴ベクトルに基づいて、画像の画素分布の情報を含む複数の特徴データを生成する特徴データ生成手段と、各画像を識別する識別情報と、該各画像の特徴データとを記憶手段に記憶させてパターン認識用辞書を作成する場合に、前記グループに含まれない画像の特徴データのデータ量よりも前記グループに含まれる画像の特徴データのデータ量が多くなるように前記パターン認識用辞書を作成し、該作成したパターン認識用辞書を前記記憶手段に記憶させる認識用辞書作成手段とを備えている。
【発明の効果】
【０００８】
本明細書に開示のパターン認識辞書作成装置によれば、パターン認識用辞書を記憶する記憶容量が小さな装置であっても、画像パターンの認識精度を向上させる認識辞書を作成することができる。
【図面の簡単な説明】
【０００９】
【図１】パターン認識辞書作成装置の構成を示す図である。
【図２】辞書作成部の構成を示す図である。
【図３】グループ化について説明するために用意された文字と、その平均ベクトルとを示す図である。
【図４】（Ａ）は、各文字の平均ベクトルに基づいてベクトル空間に文字を配置した様子を示す図であり、（Ｂ）は、１回目の階層的クラスタリングの結果を示す図である。
【図５】（Ａ）は、２回目の階層的クラスタリングの結果を示す図であり、（Ｂ）は、３回目の階層的クラスタリングの結果を示す図である。
【図６】（Ａ）は、４回目の階層的クラスタリングの結果を示す図であり、（Ｂ）は、５回目の階層的クラスタリングの結果を示す図である。
【図７】６回目の階層的クラスタリングの結果を示す図である。
【図８】インデックステーブルの構成の一例を示す図である。
【図９】コードブックテーブルの構成の一例を示す図である。
【図１０】（Ａ）は、固有ベクトルの要素列のうち、部分一致するサブベクトルを抽出する様子を示す図であり、(Ｂ)は、抽出したサブベクトルにインデックス番号を付与してコードブックテーブルに登録する例を示す図であり、（Ｃ）は、固有ベクトルの要素列を、誤差を許容して部分一致するサブベクトルを抽出する様子を示す図であり、（Ｄ）は、抽出したサブベクトルにインデックス番号を付与してコードブックテーブルに登録する例を示す図である。
【図１１】辞書作成部の処理手順を示すフローチャートである。
【図１２】グループ化の他の方法を説明するための図である。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照しながら本発明の好適な実施例を説明する。
【００１１】
本実施例のパターン認識辞書作成装置１は、図１に示すように辞書作成部１０と、スキャナ装置２１と、操作部２２と、記憶装置２３と、表示装置２４とを備えている。
【００１２】
スキャナ装置２１は、用紙に印刷された文字等の画像をパターン画像データとして読み込む。読み込んだパターン画像データは、ＣＰＵ（Central Processing Unit）１１の制御により記憶装置２３に保存される。
【００１３】
操作部２２は、ユーザの指示を受け付ける操作入力受付部であり、スキャナ装置２１の動作開始の指示や、辞書作成部１０で作成した辞書を表示装置２４に表示させる指示等を受け付ける。
【００１４】
記憶装置２３には、スキャナ装置２１で読み込まれたパターン画像データや、辞書作成部１０で作成されたパターン認識用辞書等が記憶される。
【００１５】
表示装置２４は、ＣＰＵ１１の制御に従って、辞書作成部１０で作成したパターン認識用辞書のデータを表示させる。
【００１６】
辞書作成部１０は、図１に示すようにＣＰＵ１１と、ＲＯＭ（Read Only Memory）１２と、ＲＡＭ（Random Access Memory）１３と、入出力インターフェース１４と、グラフィックインターフェース１５と、ネットワークインターフェース１６とを備えている。
【００１７】
ＲＯＭ１２には、ＣＰＵ１１を制御するプログラムが記録されている。ＣＰＵ１１は、ＲＯＭ１２に記録されたプログラムを読み込んで、読み込んだプログラムに従った演算を行う。ＣＰＵ１１などのハードウェアと、ＲＯＭ１２に格納されたプログラムとの協働によって実現される辞書作成部１０の機能ブロックについては図２を参照しながら後ほど説明する。また、ＲＡＭ１３には、ＣＰＵ１１による演算途中のデータや、演算後のデータが記録される。例えば、スキャナ装置２１により読み込まれ、記憶装置２３に保存されていたパターン画像データを、ＣＰＵ１１の制御により読み出してＲＡＭ１３に格納する。
なお、プログラムについては、必ずしもＲＯＭ１２に記憶させておく必要はなく、例えば、コンピュータで読み込み可能なフレキシブルディスク（ＦＤ）、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）、光磁気ディスク、ＩＣカードなどの可搬記憶媒体、またはコンピュータに備えられるＨＤＤなどの記憶媒体、さらには公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータに接続される他のコンピュータ（またはサーバ）などにプログラムを記憶させておき、コンピュータがこれからプログラムを読み出して実行するようにしてもよい。あるいは公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介して他のコンピュータ（またはサーバ）からプログラムを可搬記憶媒体や記憶媒体に格納し、コンピュータがこれからプログラムを読み出して実行するようにしてもよい。
【００１８】
入出力インターフェース１４は、信号の入出力部である。入出力インターフェース１４には、スキャナ装置２１で読み取られたパターン画像データが入力される。入出力インターフェース１４は、入力したパターン画像データをＣＰＵ１１の制御により記憶装置２３に出力する。また、入出力インターフェース１４は、ＣＰＵ１１の制御によって記憶装置２３から読み出されたパターン認識用辞書を、例えば外部記憶装置３０等に出力する。
【００１９】
グラフィックインターフェース１５は、ＣＰＵ１１で処理された画像を表示装置２４に表示させるためのインターフェースであり、表示装置２４に表示させるためにグラフィックデータを波形電気信号に変換する。
【００２０】
ネットワークインターフェース１６は、ネットワークに接続する。例えば、ＣＰＵ１１の制御に従って記憶装置２３から読み出されたパターン認識用辞書をネットワークを介して他の装置に転送する。
【００２１】
次に、図２を参照しながらＣＰＵ１１などのハードウェアと、ＲＯＭ１２に格納されたプログラムとの協働によって実現される辞書作成部１０の機能ブロックについて説明する。
プログラム制御されたＣＰＵ１１によって実現される機能部１１０は、特徴ベクトル生成部１１１と、平均ベクトル算出部１１２と、主成分分析部１１３と、グループ化部１１４と、辞書生成・登録部１１５とを備えている。また、辞書生成・登録部１１５は、グループ化文字情報登録部１１６と、非グループ化文字情報登録部１１７と、テーブル格納部１１８とを備えている。以下、各ブロックについて説明する。
【００２２】
まず、特徴ベクトル生成部１１１について説明する。
スキャナ装置２１でスキャンされ、記憶装置２３に保存されているパターン画像データは、ＣＰＵ１１の制御によて記憶装置２３から読み出されＲＡＭ１３に保存される。
特徴ベクトル生成部１１１は、ＲＡＭ１３に保存されているパターン画像データをＲＡＭ１３から取得する。
なお、以下では用紙に印刷された文字をスキャナ装置２１で読み込んだ文字画像を用いてパターン認識用辞書を作成する場合を例に説明するが、本実施例は文字に限定されるものではない。例えば、人間の顔画像や、声をマイクで入力した音声データであってもよい。
特徴ベクトル生成部１１１は、文字画像の文字パターンに基づく特徴量を求めて、特徴量を要素とする特徴ベクトルを生成する。具体的には、例えば、
「孫 寧, 田原 透, 阿曽 弘具, 木村 正行著「方向線素特徴量を用いた高精度文字認識」電子情報通信学会論文誌(D-II), J74-D-II, 3, pp.330-339 (1991-2)」
等の文献に開示された方法を用いて、文字画像をＤ次元（Ｄは任意の自然数）の特徴ベクトルに変換する。また、記憶装置２３には、同一の文字について、フォントの異なる文字や手書き文字などの複数の学習サンプルが収集されている。特徴ベクトル生成部１１１は、ＲＡＭ１３からこれら複数の学習サンプルの文字画像を読み込み、読み込んだ文字画像の特徴ベクトルをそれぞれ作成する。なお、本実施例では、パターン画像データとしてスキャナ装置２１で読み取ったパターン画像データを例に説明するが、パターン認識辞書作成装置１自身で作成したパターン画像データであってもよい。その他に、他の装置で生成したパターン画像データをネットワークを介して入力したものを使用してもよい
式（１）には、同一文字のＮ（Ｎは任意の自然数）個の学習サンプルＸ１，Ｘ２，Ｘ３，・・・，ＸＮの特徴ベクトルをそれぞれ示す。
【００２３】
【数１】
2010170352.tif 000003
特徴ベクトル生成部１１１は、上述した処理を複数の文字ごとにそれぞれ行う。特徴ベクトル生成部１１１は、特徴ベクトルを生成すると、文字ごとに複数収集した学習サンプルの特徴ベクトルに文字を識別する文字コードを割り付けて記憶装置２３に保存する。また、特徴ベクトル生成部１１１は、文字を識別する文字コードと、文字ごとに複数収集した学習サンプルの特徴ベクトルとを平均ベクトル算出部１１２と、主成分分析部１１３とに出力する。
【００２４】
平均ベクトル算出部１１２は、特徴ベクトル生成部１１１から取得した同じ文字の特徴ベクトルを用いて、平均ベクトルを文字ごとに算出する。
平均ベクトルは、以下に示す式（２）によって求められる。
【００２５】
【数２】
2010170352.tif 000004
また、式（２）に従って求めた平均ベクトルを式（３）のように表す。
【００２６】
【数３】
2010170352.tif 000005
平均ベクトル算出部１１２は、式（２）に示すように各特徴ベクトルの同一次元のベクトル要素同士を加算し、これを学習サンプル数Ｎで除算して平均ベクトルを求める。
例えば、特徴ベクトルの１次元のベクトル要素であれば、上述した式（１）に示すｘ１１，ｘ２１，ｘ３１，・・・，ｘＮ１の値を加算して、これをＮで除算した値が、式（３）に示す平均ベクトルの１次元のベクトル要素となる。
平均ベクトル算出部１１２は、文字ごとに平均ベクトルを算出し、算出した平均ベクトルを文字コードに対応付けて記憶装置２３に保存する。また、平均ベクトル算出部１１２は、文字ごとに求めた平均ベクトルを主成分分析部１１３と、グループ化部１１４とに出力する。
【００２７】
次に、主成分分析部１１３について説明する。主成分分析部１１３は、特徴ベクトル生成部１１１で生成された複数の学習サンプルの特徴ベクトルを文字ごとに取得する。また、主成分分析部１１３は、平均ベクトル算出部１１２で文字ごとに求められた平均ベクトルを取得する。
主成分分析部１１３は、取得した情報を用いてパターン画像データの画素分布を表す固有値、固有ベクトルを各文字ごとに生成する。まず、主成分分析部１１３は、平均ベクトルと特徴ベクトルとから分散共分散行列を求める。分散共分散行列Σを式（４）に示す。
【数４】
2010170352.tif 000006
【００２８】
分散共分散行列Σの共分散値σｉｊは、以下に示す式（５）によって算出される。
【００２９】
【数５】
2010170352.tif 000007
主成分分析部１１３は、各学習サンプルの特徴ベクトルの要素ｉと平均ベクトルの要素ｉとの差と、特徴ベクトルの要素ｊと平均ベクトルの要素ｊとの差とを掛け合わせて平均を求めたものを、要素ｉと要素ｊの共分散値として算出する。
なお、ｉとｊは、１〜Ｄの任意の自然数である。
【００３０】
次に、主成分分析部１１３は、求めた分散共分散行列Σを対象に固有値計算を行い、分散共分散行列Σから固有値、固有ベクトルを求める。
固有値は、λｉ（ｉ＝１，２，・・・，Ｄ）のＤ個の値で、λ１＞λ２＞・・・＞λＤとなる。
固有ベクトルは、Φｉ＝（Φｉ１，Φｉ２，・・・，ΦｉＤ）（ｉ＝１，２，・・・，Ｄ）となる。
固有ベクトルは、互いに直交する大きさ１のベクトルとなる。
また、固有値λｉは、固有ベクトルΦｉで示される方向で見たときの複数の学習サンプルの標準偏差値を表す。そのため、複数個の固有値、固有ベクトルで複数の学習サンプルの全体分布を近似的に表現できる。
【００３１】
なお、固有値、固有ベクトルは、Ｄ行Ｄ列の分散共分散行列Σから通常Ｄ個ずつ取得できる。しかし、一般的に値の小さい固有値は、学習サンプルの分布形状にあまり大きな影響を与えないので、固有値の大きな上位Ｍ個だけで学習サンプルの分布を十分に表現できる。
従って、
固有値は、λｉ（ｉ＝１，２，・・・，Ｍ）
固有ベクトルは、Φｉ＝（Φｉ１，Φｉ２，・・・，ΦｉＤ）（ｉ＝１，２，・・・，Ｍ）（Ｍ＜Ｄ）となる。なお、Ｍは、Ｄよりも小さい任意の自然数である。
主成分分析部１１３は、固有値、固有ベクトルを文字ごとに求め、求めた固有値、固有ベクトルを文字コードと共に記憶装置２３に保存する。また、主成分分析部１１３は、求めた固有値、固有ベクトルを辞書生成・登録部１１５のグループ化文字情報登録部１１６と、非グループ化文字情報登録部１１７とに出力する。
【００３２】
次に、グループ化部１１４の処理について説明する。
グループ化部１１４は、平均ベクトル算出部１１２から平均ベクトルを文字ごとに取得する。グループ化部１１４は、取得した各文字の平均ベクトルに基づいて階層的クラスタリングを行い、文字を、平均ベクトルの類似する文字が存在する文字と、平均ベクトルの類似する文字が存在しない文字とに分ける。グループ化部１１４は、平均ベクトルの類似する文字が存在する文字を、同じグループに振り分ける。
【００３３】
階層的クラスタリングについて図３〜図７を参照しながら具体的に説明する。
図３には、「大」、「犬」、「太」、「木」、「鳥」、「烏」、「土」、「士」、「±」、「亜」、「腕」、「右」、「日」の１３個の文字と、その平均ベクトルのベクトル要素とを示す。なお、図３に示す例では、平均ベクトルの次元を２０次元（すなわち、２０個のベクトル要素）としているが、平均ベクトルの次元は２０次元に限定されるものではない。また、図３に示す１３個の文字は、「大、犬、太、木」と、「鳥、烏」と、「土、士、±」の３つの類似文字グループと、類似する文字のない、それ以外の４つの文字とに分けられる。
【００３４】
グループ化部１１４は、これら１３個の文字を対象として階層的クラスタリングを行う。図４（Ａ）には、１３個の文字を２次元のベクトル空間に配置した様子を示す。なお、平均ベクトルは、実際には２０次元のベクトルであるが、簡略化して２次元で表示している。
また、ベクトル空間を規定する軸１は、平均ベクトルの２０個あるベクトル要素のうち第１ベクトル要素の成分だけが値を持つ軸である。また、軸２は、２０個のベクトル要素のうち第２ベクトル要素だけが値を持つ軸である。
グループ化部１１４は、１３個の平均ベクトルのベクトル間距離をそれぞれ求める。グループ化部１１４は、求めたベクトル間距離のうち、距離の最も近い２つのベクトルをグループとして統合する。図４（Ｂ）に１回目の階層的クラスタリングの結果を示す。図４（Ｂ）に示す例では、グループ化部１１４は、「土」と「±」のベクトル間距離が最も近いと判断し、これらの文字を同一グループに分類する。グループ化部１１４は、同一グループに分類した文字の平均ベクトル同士の平均を平均ベクトルとして求め、求めた平均ベクトルをグループの代表ベクトルに設定する。
【００３５】
次に、グループ化部１１４は、１１文字の平均ベクトルと、設定したグループの代表ベクトルとについてベクトル間距離をそれぞれ求める。グループ化部１１４は、求めたベクトル間距離のうち、距離の最も近い２つのベクトルをグループとして統合する。図５（Ａ）に２回目の階層的クラスタリングの結果を示す。
図５（Ａ）に示す例では、グループ化部１１４は、「土」と「±」のグループを示す代表ベクトルと、「士」の平均ベクトルとのベクトル間距離が最も近いと判定し、「土」と「±」のグループに「士」を統合する。
グループ化部１１４は、同一グループに分類した文字「土」、「±」、「士」の平均ベクトルの平均である平均ベクトルを求め、求めた平均ベクトルをグループの代表ベクトルとする。なお、ここでは、先に求めた「土」と「±」の代表ベクトルと、「士」の平均ベクトルとの平均を平均ベクトルとして求め、求めた平均ベクトルをグループの代表ベクトルとしてもよい。
【００３６】
以下、同様の手順で、グループ化部１１４は階層的クラスタリングを行っていく。図５（Ｂ）に３回目の階層的クラスタリングの結果を示し、図６（Ａ）に４回目の階層的クラスタリングの結果を示す。また、図６（Ｂ）に５回目の階層的クラスタリングの結果を示し、図７に６回目の階層的クラスタリングの結果を示す。
【００３７】
グループ化部１１４は、上述したように平均ベクトルと平均ベクトル、又は代表ベクトルと平均ベクトルとのベクトル間距離を求めて、ベクトル間距離の最も近い文字を同一グループに分類していく。また、ベクトル間距離には予めしきい値が設定してあり、グループ化部１１４は、求めたベクトル間距離がこのしきい値よりも大きくなると、同一グループへの分類を終了させる。図４〜図７に示す例では、６回の階層的クラスタリングで、３つのグループと、類似する文字のない４つの文字とに分類される。
【００３８】
グループ化部１１４は、分類したグループにグループを識別する識別情報を割り当て、グループに分類された文字コードと共に記憶装置２３に保存する。また、グループ化部１１４は、グループ化されなかった文字コードに、当該文字がグループ化されなかった文字コードであることを示す識別情報を付加して記憶装置２３に保存する。
また、グループ化部１１４は、グループに分類された文字コード、及び当該グループを示す識別情報をグループ化文字情報登録部１１６と非グループ化文字情報登録部１１７とに出力する。またグループ化部１１４は、グループに分類されなかった文字コードと、この文字コードがグループに分類されなかったことを示す識別情報とをグループ化文字情報登録部１１６と非グループ化文字情報登録部１１７とに出力する。
【００３９】
次に、辞書作成・登録部１１５について説明する。辞書作成・登録部１１５は、グループ化文字情報登録部１１６と、非グループ化文字情報登録部１１７と、テーブル格納部１１８とを有している。
グループ化文字情報登録部１１６は、グループ化部１１４で類似する文字があると判定され、グループに分類された文字の固有値、固有ベクトルをインデックステーブルに登録する。インデックステーブルの一例を図８に示す。インデックステーブルには、図８に示すように文字を識別する文字コードと、インデックスフラグと、文字コードが示す文字の固有値、固有ベクトルとが含まれる。なお、インデックステーブルとコードブックテーブルとが前述のパターン認識用辞書に該当する。
グループに分類された文字には、類似する文字が存在し、文字認識用に多くの情報を必要とすることから、主成分分析部１１３で生成される固有値、固有ベクトルのすべてをインデックステーブルに登録する。上述したように主成分分析部１１３で生成される固有ベクトルは、複数のベクトル要素を有するＤ次元のベクトルである。グループ化文字情報登録部１１６は、Ｄ次元の固有ベクトルのベクトル要素のすべてを、文字認識用の固有ベクトルとしてインデックステーブルの該当文字欄に登録する。なお、ベクトル要素のすべてをインデックステーブルに登録した文字には、インデックスフラグとして「０」が記録される。
【００４０】
非グループ化文字情報登録部１１７は、グループ化部１１４で類似する文字がないと判定され、グループに分類されなかった文字の固有値、固有ベクトルをインデックステーブルと、コードブックテーブルとに登録する。
グループに分類されなかった文字は、類似する文字が存在せず、文字認識用に多くの情報を必要としないことから、主成分分析部１１３で生成された固有ベクトルのベクトル要素のすべてを正確にインデックステーブルに登録する必要がない。そこで、非グループ化文字情報登録部１１７は、グループ化されなかった文字の固有ベクトルのベクトル要素のうち、他の文字の固有ベクトルのベクトル要素と部分一致する要素列を抽出する。非グループ化文字情報登録部１１７は、抽出した要素列に、この要素列を識別するインデックス番号を付与する。そして、非グループ化文字情報登録部１１７は、インデッステーブルの該当文字の固有ベクトル記録欄には、付与したインデックス番号を記録させる。また、非グループ化文字情報登録部１１７は、インデックス番号と、抽出した要素列との対応付けを管理するため、インデックス番号と、対応する要素列とをコードブックテーブル（サブ辞書）に記録する。コードブックテーブルの一例を図９に示す。
【００４１】
非グループ化文字情報登録部１１７の処理について具体的に説明する。
主成分分析部１１３で生成される固有ベクトルは、上述のようにＤ次元のベクトルであり、Ｄ個のベクトル要素からなる。
Φｉ＝（Φｉ１，Φｉ２，・・・，ΦｉＤ）
これらＤ個の要素のうち、他のグループ化されなかった文字コードの固有ベクトルの要素と部分一致する要素列（以下、この要素列をサブベクトルと呼ぶ）を抽出する。例えば、図１０（Ａ）に示す例では、文字コード「０ｘ８１４８」で固有値が「１２．５」の固有ベクトルと、文字コード「０ｘ７６５２」で固有値が「２５．３」の固有ベクトルとでサブベクトルに部分一致が見られる。
非グループ化文字情報登録部１１７は、この部分一致した（２１、１１、４５、６２）のサブベクトルにインデックス番号を付与する。そして、非グループ化文字情報登録部１１７は、インデックステーブルに文字コードが「０ｘ８１４８」で固有値が「２５．３」の固有ベクトルを記録するときに、インデックステーブルの該当欄には、付与したインデックス番号を記録する。同様に、非グループ化文字情報登録部１１７は、インデックステーブルに文字コードが「０ｘ７６５２」で固有値が「１２．５」の固有ベクトルを記録するときに、インデックステーブルの該当欄には、付与したインデックス番号を記録する。また、非グループ化文字情報登録部１１７は、コードブックテーブルには、部分一致したサブベクトルと、このサブベクトルを識別するインデックス番号とを登録する（図１０（Ｂ）参照）。
【００４２】
また、非グループ化文字情報登録部１１７は、誤差を許容して部分一致するサブベクトルを検出する。
例えば、図１０（Ｃ）に示す例では、文字コード「０ｘ５２４１」、固有値「１０．１」の「８３、５５、３６、２２」のサブベクトルと、文字コード「０ｘ３６９８」、固有値「９．６」の「８３、５５、３２、２２」のサブベクトルとは、一致してはいないが、類似したサブベクトルである。
非グループ化文字情報登録部１１７には、ベクトル間距離のしきい値が設定されている。非グループ化文字情報登録部１１７は、サブベクトル同士が完全一致していないが、ベクトル間距離がしきい値以下であるサブベクトル同士を、同じインデックス番号に割り当てる。
このときコードブックテーブルに、「８３、５５、３６、２２」と、「８３、５５、３２、２２」のいずれか一方を登録しなければならないが、非グループ化文字情報登録部１１７は、サブベクトルの出現回数の多いほうを選択して登録する。例えば、「８３、５５、３６、２２」の出現回数が５回で、「８３、５５、３２、２２」の出現回数が３回であれば、コードブックテーブルには、サブベクトルとして「８３、５５、３６、２２」を登録する。コードブックテーブルへの登録例を図１０（Ｄ）に示す。このようにして非グループ化文字情報登録部１１７は、グループに分類されなかった文字の固有ベクトルのベクトル要素をすべてインデックス番号で置き換える。そして、非グループ化文字情報登録部１１７は、インデックステーブルの該当文字の固有ベクトル記録欄には、付与したインデックス番号だけを記録する。
【００４３】
このようにして、グループに分類されない、すなわち、類似する文字が存在しない文字については、インデックステーブルに登録する情報量を削減することができる。なお、図９に示すコードブックテーブルでは、４次元（４つの要素列）のサブベクトルを単位としてコードブックテーブルに登録している。しかしながら、コードブックテーブルに登録するサブベクトルの要素数は、４つに限定されるものではなく、例えば、５つ、６つなど要素数の多いサブベクトルを単位として、コードブックテーブルに登録してもよい。また、ベクトル要素数の異なるサブベクトルをコードブックテーブルに登録することもできる。
【００４４】
テーブル格納部１１８は、グループ化文字情報登録部１１６と、非グループ化文字情報登録部１１７によって作成されたインデックステーブルと、コードブックテーブルとを記憶装置２３に記憶させる。
【００４５】
次に、図１１に示すフローチャートを参照しながら辞書作成部１０の処理フローを説明する。
まず、辞書作成部１０は、パターン認識用辞書を作成する文字のパターン画像データをＲＡＭ１３から取得する（ステップＳ１）。パターン画像データは、文字ごとに学習サンプルとして複数用意されている。
【００４６】
次に、辞書作成部１０は、学習サンプルとして複数用意されたパターン画像データの特徴ベクトルを特徴ベクトル生成部１１１で作成し（ステップＳ２）、それらの平均ベクトルを求める（ステップＳ３）。平均ベクトルは、文字ごとに算出される。
【００４７】
次に、辞書作成部１０は、算出した平均ベクトルを用いて主成分分析部１１３で主成分分析を行い、固有値、固有ベクトルを求める（ステップＳ４）。固有ベクトルは、固有値ごとに求められ、複数のベクトル要素を有している。
【００４８】
次に、辞書作成部１０は、グループ化部１１４でパターン認識用辞書を作成する文字を、類似する文字が存在する文字と、類似する文字が存在しない文字とに分ける（ステップＳ５）。グループ化部１１４は、類似する文字同士を同じグループに分類し、グループを識別する情報と、グループに属する文字の文字コードとを記憶装置２３に保存する。また、グループ化部１１４は、類似する文字が存在しない文字の場合に、グループに属さない文字であることを示す情報を文字の文字コードと共に記憶装置２３に保存する。
【００４９】
次に、辞書作成部１０は、辞書生成・登録部１１５で文字の固有値、固有ベクトルをインデックステーブルとコードブックテーブルに登録して、パターン認識用辞書を作成する（ステップＳ６）。
このとき、グループ化文字情報登録部１１６は、グループに分類された文字の固有値、固有ベクトルをすべてインデックステーブルに登録する。また、非グループ化文字情報登録部１１７は、グループに分類されない文字の固有ベクトルのベクトル要素のうち、他の文字の固有ベクトルのベクトル要素と部分一致するサブベクトルを検出する。このとき、非グループ化文字情報登録部１１７は、ベクトル間距離が誤差の範囲内のサブベクトルも部分一致するサブベクトルとして抽出する。非グループ化文字情報登録部１１７は、抽出したサブベクトルに、インデッス番号を付与する。そして、非グループ化文字情報登録部１１７は、インデックステーブルの該当文字の固有ベクトル登録欄には、インデックス番号を登録し、コードブックテーブルに、抽出したサブベクトルとインデックス番号とを登録して対応を管理する。このようにして非グループ化文字情報登録部１１７は、グループに分類されなかった文字の固有ベクトルのベクトル要素をすべてインデックス番号で置き換える。そして、非グループ化文字情報登録部１１７は、インデックステーブルの該当文字の固有ベクトル記録欄には、付与したインデックス番号だけを記録する。
【００５０】
辞書作成部１０は、テーブル格納部１１８により、グループ化文字情報登録部１１６と、非グループ化文字情報登録部１１７で作成されたインデックステーブルと、コードブックテーブルとを記憶装置２３に記憶させる（ステップＳ７）。
【００５１】
このように本実施例は、類似する文字のある文字の場合には、文字認識用に多くの情報を必要とすることから、この文字の固有値、固有ベクトルをすべてインデックステーブルに登録する。
また、類似する文字が存在しない文字の場合、類似する文字がある文字に比較して、文字認識用の情報を多く必要とはしない。このため、固有ベクトルのベクトル要素のうち、ベクトル間距離に誤差を許容して他の固有ベクトルのベクトル要素列と部分一致するサブベクトルを抽出する。そして、抽出したサブベクトルに代えてサブベクトルを識別するインデックス番号をインデックステーブルに登録する。これにより、インデックステーブルに登録するデータ量を削減することができる。また、類似する文字については、２次識別方式の固有値、固有ベクトルをそのままパターン認識用辞書に登録するため、文字の認識精度を向上させることができる。
【００５２】
例えば、４，０００文字で各文字が６個の固有ベクトル（１つの固有ベクトルは２００バイトとする）を持つとする。
グループ化しないですべての文字の固有値、固有ベクトルをインデックステーブルに登録するとすると、固有ベクトルのデータ量は、４，０００×６×２００で４，８００，０００バイトとなる。
また、固有値は、１固有値は浮動小数点数値で８バイトとすると、４，０００×６×８で１９２，０００バイトとなる。従って、固有値と固有ベクトルとの合計のデータ量は、４，９９２，０００バイトとなる。
【００５３】
これに対して、本実施例では、固有ベクトルについては、４，０００×６個のベクトルを階層的クラスタリングして、１，０００個のグループを作成したとする。すると、１文字の固有ベクトルは、６個のサブベクトルで表現できるので、１文字当たり６×２バイトとなる（１つのサブベクトルは、２バイトで表現される）。従って全体で４，０００×６×２＝４８，０００バイトとなる。また、インデックステーブルのデータ量は、１，０００×８＝８，０００バイトとなる。さらに、固有値、固有ベクトルの合計は、３０４，０００バイトとなり、元のサイズの６％程度でよい。
【００５４】
次に、作成したインデックステーブルと、コードブックテーブルとを使用して、パターン画像認識を行う場合について説明する。
例えば、文字パターンの画像を入力し、入力した文字パターンの文字認識を行うとする。まず、入力した文字パターンの特徴ベクトルを生成して主成分分析を行い、入力した文字パターンの固有値、固有ベクトルを作成する。
次に、標本として登録された文字の固有値、固有ベクトルをインデックステーブルとコードブックテーブルから読み出して入力した文字パターンとの文字認識を行う。このとき、インデックステーブルのインデックスフラグに「１」が記録された文字の固有ベクトルを再現する場合は、インデックステーブルの該当文字欄に記録されたインデックス番号をまず取り出す。そして、該当するインデックス番号のサブベクトルをコードブックテーブルを参照して取り出す。取り出したサブベクトルを、インデックステーブルに記録されたインデックス番号順に並べてＤ次元の固有ベクトルを再現する。そして、再現した固有ベクトルとインデックステーブルに登録された固有値とに基づいて、入力した文字パターンと、標本として登録された文字とが一致するか否かを判定する。
【００５５】
［変形例］
階層的クラスタリングの他の方法について説明する。
グループ化部１１４は、まず、取得した文字の平均ベクトルを、ベクトル空間に配置する。ベクトル空間は、例えば、平均ベクトルが２０個のベクトル要素を有する２０次元のベクトルからなれば、２０本の軸で表現される空間である。図１２には、簡略化のため軸１と軸２の２次元のベクトル空間を示す。軸１は、平均ベクトルの２０個ある要素のうち第１要素の成分だけが値を持つ軸である。また、軸２は、２０個の要素のうち第２要素だけが値を持つ軸である。
【００５６】
次に、グループ化部１１４は、１つの平均ベクトルに注目し、各軸上の座標値を求める。さらにグループ化部１１４は、求めた座標値を中心に、軸上で左右に一定値だけ拡大した範囲を求める。そして、この範囲内に入っている文字を求めて、求めた文字群をこの軸上での文字集合とする。
図１２に示す例では、例えば「大」の文字に注目すると、軸１上では、「大」を中心とした大きさ７の範囲内に、「太、犬、大、木」の４つの文字が存在することが分かる。同様に、軸２上では、「大」を中心とした大きさ７の範囲内に「犬、亜、大、木、太、腕」の６つの文字が存在することが分かる。グループ化部１１４は、各軸上で求めた文字集合の論理積を演算し、すべての軸上で「大」の近傍に位置する文字を検出する。図１２に示す例では、軸１から求めた文字集合と、軸２から求めた文字集合の論理積を求めることで、「太、犬、大、木」がグループ化部１１４によって抽出される。グループ化部１１４は、抽出した文字集合を似ている文字集合として抽出する。グループ化部１１４は、以上の処理をすべての文字について行い、すべての文字で似ている文字集合を求める。そして、グループ化部１１４は、求めた似ている文字集合のうち、完全一致した似ている文字集合をグループに設定する。グループ化部１１４は、設定したグループ情報を記憶装置２３と、グループ化文字情報登録部１１６と、非グループ化文字情報登録部１１７とに出力する。
【００５７】
上述した実施例は、本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
【００５８】
（付記）
（付記１）
入力画像の画像パターンに基づく特徴量を求めて、該特徴量を要素とする特徴ベクトルを生成する特徴ベクトル生成手段と、
各画像の特徴ベクトル同士を比較して類似度の高い画像を抽出し、前記類似度の高い画像をグループとしてまとめるグループ化手段と、
前記特徴ベクトル生成手段で生成された特徴ベクトルに基づいて、画像の画素分布の情報を含む複数の特徴データを生成する特徴データ生成手段と、
各画像を識別する識別情報と、該各画像の特徴データとを記憶手段に記憶させてパターン認識用辞書を作成する場合に、前記グループに含まれない画像の特徴データのデータ量よりも前記グループに含まれる画像の特徴データのデータ量が多くなるように前記パターン認識用辞書を作成し、該作成したパターン認識用辞書を前記記憶手段に記憶させる認識用辞書作成手段と、
を有するパターン認識辞書作成装置。
（付記２）
前記認識用辞書作成手段は、前記グループに含まれない画像の前記パターン認識用辞書を作成する際に、他の画像の複数の特徴データと共通する特徴データを抽出し、該抽出した複数の特徴データを識別する識別情報を前記抽出した複数の特徴データに代えて前記パターン認識用辞書に登録すると共に、前記抽出した複数の特徴データと、該抽出した複数の特徴データを識別する識別情報とを関連付けるサブ辞書を作成する、付記１記載のパターン認識辞書作成装置。
（付記３）
前記特徴データ生成手段は、前記特徴ベクトルに基づいて主成分分析を行い、画像の画素分布を示す固有値と、複数のベクトル要素を有する固有ベクトルを生成する手段である、付記１記載のパターン認識辞書作成装置。
（付記４）
前記認識用辞書作成手段は、前記グループに含まれない画像の前記パターン認識用辞書を作成する場合は、該画像の固有ベクトルのベクトル要素のうち、他の画像の固有ベクトルのベクトル要素と部分一致するベクトル要素列と、ベクトル要素同士の差が所定値以下にあるベクトル要素列との少なくとも一方を抽出し、該抽出したベクトル要素列を識別する識別情報を前記記憶手段に記憶させると共に、前記抽出したベクトル列と、前記識別識別とを関連付けるサブ辞書を作成する、付記３記載のパターン認識辞書作成装置。
（付記５）
コンピュータを、
入力画像の画像パターンに基づく特徴量を求めて、該特徴量を要素とする特徴ベクトルを生成する手段と、
各画像の特徴ベクトル同士を比較して類似度の高い画像を抽出し、前記類似度の高い画像をグループとしてまとめる手段と、
前記特徴ベクトル生成手段で生成された特徴ベクトルに基づいて、画像の画素分布の情報を含む複数の特徴データを生成する手段と、
各画像を識別する識別情報と、該各画像の特徴データとを記憶手段に記憶させてパターン認識用辞書を作成する場合に、前記グループに含まれない画像の特徴データのデータ量よりも前記グループに含まれる画像の特徴データのデータ量が多くなるように前記パターン認識用辞書を作成し、該作成したパターン認識用辞書を前記記憶手段に記憶させる手段として機能させるプログラム。
（付記６）
前記パターン認識用辞書を前記記憶手段に記憶させる手段は、前記グループに含まれない画像の前記パターン認識用辞書を作成する際に、他の画像の複数の特徴データと共通する特徴データを抽出し、該抽出した複数の特徴データを識別する識別情報を前記抽出した複数の特徴データに代えて前記パターン認識用辞書に登録すると共に、前記抽出した複数の特徴データと、該抽出した複数の特徴データを識別する識別情報とを関連付けるサブ辞書を作成する、付記５記載のプログラム。
（付記７）
前記特徴データを生成する手段は、前記特徴ベクトルに基づいて主成分分析を行い、画像の画素分布を示す固有値と、複数のベクトル要素を有する固有ベクトルを生成する手段である、付記５記載のプログラム。
（付記８）
前記パターン認識用辞書を前記記憶手段に記憶させる手段は、前記グループに含まれない画像の前記パターン認識用辞書を作成する場合は、該画像の固有ベクトルのベクトル要素のうち、他の画像の固有ベクトルのベクトル要素と部分一致するベクトル要素列と、ベクトル要素同士の差が所定値以下にあるベクトル要素列との少なくとも一方を抽出し、該抽出したベクトル要素列を識別する識別情報を前記記憶手段に記憶させると共に、前記抽出したベクトル列と、前記識別識別とを関連付けるサブ辞書を作成する、付記７記載のプログラム。
【符号の説明】
【００５９】
１  パターン認識辞書作成装置
１０  辞書作成部
２１  スキャナ装置
２２  操作部
２３  記憶装置
２４  表示装置
３０  外部記憶装置
１１１  特徴ベクトル生成部
１１２  平均ベクトル算出部
１１３  主成分分析部
１１４  グループ化部
１１５  辞書生成・登録部
１１６  グループ化文字情報登録部
１１７  非グループ化文字情報登録部
１１８  テーブル格納部
【図１】
2010170352.tif 000008
【図２】
2010170352.tif 000009
【図３】
2010170352.tif 000010
【図４】
2010170352.tif 000011
【図５】
2010170352.tif 000012
【図６】
2010170352.tif 000013
【図７】
2010170352.tif 000014
【図８】
2010170352.tif 000015
【図９】
2010170352.tif 000016
【図１０】
2010170352.tif 000017
【図１１】
2010170352.tif 000018
【図１２】
2010170352.tif 000019