(57)【特許請求の範囲】
【請求項１】
文字パターンの輪郭画素に対して、あらかじめ定められた方向コードのいずれかを付与する特徴抽出方法であって、方向コードの量子化刻みよりも滑らかな輪郭方向を抽出する工程と、抽出された輪郭方向を２つの方向コードの重ね合わせに分解する工程と、これら２つの方向コードを輪郭画素に付与する工程を含み、
前記分解工程において、分解された２つの方向コードの各々に対応する分解係数を記憶しておき、前記付与工程において、輪郭画素に対して２つの方向コードと共に、それぞれの分解係数をも付与する特徴抽出方法において、
文字パターンを複数の小領域に分割し、各小領域ごとに該領域内において付与された分解係数の絶対値の和を方向コード別に求め、それら和を成分として持つベクトルを文字認識のための特徴量とすることを特徴とする特徴抽出方法。
【請求項２】
文字パターンの輪郭画素に対して、あらかじめ定められた方向コードの量子化刻みよりも滑らかな輪郭方向を抽出する手段と、抽出された輪郭方向を２つの方向コードの重ね合わせに分解する手段と、これら２つの方向コードを輪郭画素に付与する手段を備え、前記分解手段は、分解された２つの方向コードの各々に対応する分解係数を保存する係数記憶部を備え、前記付与手段は、輪郭画素に対して２つの方向コードと共に、該係数記憶部から読み出したそれぞれの分解係数をも付与する特徴抽出装置において、
文字パターンを複数の小領域に分割する手段と、各小領域ごとに該領域内において付与された分解係数の絶対値の和を方向コード別に求める手段と、それら和を成分として持つベクトルを作成する手段を備えたことを特徴とする特徴抽出装置。
【請求項３】
文字パターンの輪郭画素に対して、あらかじめ定められた方向コードの量子化刻みよりも滑らかな輪郭方向を抽出するステップと、抽出された輪郭方向を２つの方向コードの重ね合わせに分解するステップと、これら２つの方向コードと共に、対応する分解係数を該輪郭画素に付与するステップからなる特徴抽出処理をコンピュータに実行させるプログラムを記録したコンピュータ読取可能な記録媒体において、
文字パターンを複数の小領域に分割するステップと、各小領域ごとに該領域内において付与された分解係数の絶対値の和を方向コード別に求めるステップと、それら和を成分として持つベクトルを作成するステップからなる特徴抽出処理をコンピュータに実行させるプログラムを記録したコンピュータ読取可能な記録媒体。
【請求項４】
文字パターンから分割された小領域のそれぞれに対して別個のプロセッサを割り当て、各プロセッサが該領域内に存在する輪郭画素についての請求項３に記載の特徴抽出処理および該領域において付与された分解係数の絶対値の和を方向コード別に求めるステップを並列に実行させるプログラムを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、文字認識のための特徴抽出方法と特徴抽出装置，特徴抽出処理をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体及び該記録媒体を用いた特徴抽出方法に関する。
【０００２】
【従来の技術】
文字認識を実行する手順は、一般に、与えられた文字パターンから特徴量を抽出して、これをあらかじめ用意した辞書の中の標準特徴量と照合し、最も整合するカテゴリを認識結果として出力する。
ここで特徴量は、パターンの形状に関する情報を効率よく含むものでなければならないが、従来、広く用いられている特徴抽出方法の一つに、特開平８−１９４７８０号公報に例示されているような方向コードヒストグラムを作成するアプローチがある。すなわち、パターン中の文字輪郭とみなされる画素に対して、輪郭方向を反映した方向コードを当該画素に付与し、これら付与された方向コードの係数値を成分に持つベクトル（方向コードヒストグラム）を特徴量とする。
【０００３】
特開平８−１９４７８０号公報に記載の例について具体的に述べると、パターンの白画素のうち、その上下左右に隣接する画素が図１１（Ａ）〜図１１（Ｄ）に示す状態のいずれかであるとき、当該画素を輪郭画素とし、図１１に従ってそれぞれ水平，垂直，右上がり，右下がりの輪郭方向を表す方法コード１〜４のいずれか１つを付与している。
【０００４】
【発明が解決しようとする課題】
しかしながら、上記の方法では、方向コードの量子化刻みよりも滑らかな輪郭方向を、それぞれの輪郭画素に付与してやることができない。例えば、図１２において、図１２（Ｂ）は図１２（Ａ）のＢ部を拡大して示し、水平軸から測って０°と４５°の中間の傾きを持つ直線の一部を示してあるが、先に述べた方法では、各輪郭画素はその輪郭方向を０°（方向コード１）もしくは４５°（方向コード３）のどちらかで表現するしかない。つまり、図１２（Ｂ）のＡ〜Ｄに示す画素はいずれも同じ傾きを持つ直線上の輪郭画素であるにもかかわらず、ＡとＣが４５°、ＢとＤが０°という方向を持つため、「ガタガタな」輪郭表現になってしまっている。
【０００５】
ところで、輪郭方向の平滑化を行うことによって、各々の輪郭画素に対して一時的に滑らかな方向を持たせることができる。例えば、注目する輪郭画素については重み１，前後に隣り合う輪郭画素については重み０.５を用い、これら３画素間の輪郭方向の加重平均を求める。水平方向（方向コード１）に対応する方向ベクトルをｘ＝（１，０），右上がり方向（方向コード３）に対応する方向ベクトルをｕ＝（１，１）とすると、
・画素Ａ，Ｃ：０.５ｘ＋ｕ＋０.５ｘ＝ｘ＋ｕ
・画素Ｂ，Ｄ：０.５ｕ＋ｘ＋０.５ｕ＝ｘ＋ｕ
と平滑化され、図１３に示すように、滑らかな輪郭方向を得ることができる。しかも、画素Ａ〜Ｄの間で、輪郭方向の差異が小さくなる（この例では差異がなくなる）ため、実際の直線をよく反映した輪郭表現となっている。
【０００６】
しかし、従来の方法では、こうして一時的に滑らかな輪郭方向を求めたとしても、結局は付与の段階において、あらかじめ定められた方向コードのいずれか１つで代表させるしかなかった。
【０００７】
本発明の目的は、あらかじめ定められた方向コードを用いつつ、各々の輪郭画素が滑らかな輪郭方向を表現できるような方向コード付与を行う特徴抽出方法を提供することである。
【００１０】
【課題を解決するための手段】
請求項１の発明は、文字パターンの輪郭画素に対して、あらかじめ定められた方向コードのいずれかを付与する特徴抽出方法であって、方向コードの量子化刻みよりも滑らかな輪郭方向を抽出する工程と、抽出された輪郭方向を２つの方向コードの重ね合わせに分解する工程と、これら２つの方向コードを輪郭画素に付与する工程を含み、前記分解工程において、分解された２つの方向コードの各々に対応する分解係数を記憶しておき、前記付与工程において、輪郭画素に対して２つの方向コードと共に、それぞれの分解係数をも付与する特徴抽出方法において、文字パターンを複数の小領域に分割し、各小領域ごとに該領域内において付与された分解係数の絶対値の和を方向コード別に求め、それら和を成分として持つベクトルを文字認識のための特徴量とすることを特徴としたものである。
【００１３】
請求項２の発明は、文字パターンの輪郭画素に対して、あらかじめ定められた方向コードの量子化刻みよりも滑らかな輪郭方向を抽出する手段と、抽出された輪郭方向を２つの方向コードの重ね合わせに分解する手段と、これら２つの方向コードを輪郭画素に付与する手段を備え、前記分解手段は、分解された２つの方向コードの各々に対応する分解係数を保存する係数記憶部を備え、前記付与手段は、輪郭画素に対して２つの方向コードと共に、該係数記憶部から読み出したそれぞれの分解係数をも付与する特徴抽出装置において、文字パターンを複数の小領域に分割する手段と、各小領域ごとに該領域内において付与された分解係数の絶対値の和を方向コード別に求める手段と、それら和を成分として持つベクトルを作成する手段を備えたことを特徴としたものである。
【００１５】
請求項３の発明は、文字パターンの輪郭画素に対して、あらかじめ定められた方向コードの量子化刻みよりも滑らかな輪郭方向を抽出するステップと、抽出された輪郭方向を２つの方向コードの重ね合わせに分解するステップと、これら２つの方向コードと共に、対応する分解係数を該輪郭画素に付与するステップからなる特徴抽出処理をコンピュータに実行させるプログラムを記録したコンピュータ読取可能な記録媒体において、文字パターンを複数の小領域に分割するステップと、各小領域ごとに該領域内において付与された分解係数の絶対値の和を方向コード別に求めるステップと、それら和を成分として持つベクトルを作成するステップからなる特徴抽出処理をコンピュータに実行させるプログラムを記録したことを特徴としたものである。
【００１７】
請求項４の発明は、文字パターンから分割された小領域のそれぞれに対して別個のプロセッサを割り当て、各プロセッサが該領域内に存在する輪郭画素についての請求項３に記載の特徴抽出処理および該領域において付与された分解係数の絶対値の和を方向コード別に求めるステップを並列に実行することを特徴としたものである。
【００１８】
【発明の実施の形態】
図１は、本発明による特徴抽出方法及び装置の要部構成図で、図１（Ａ）は本発明を用いた方向コード付与モジュールを示し、１は入力された文字パターンの各輪郭画素に対する輪郭方向を抽出する輪郭方向抽出部、２は輪郭方向を２つの方向コードの重ね合わせに分解する輪郭方向分解部、３，４は分解して得られた２つの方向コードのうちの一方を保存する方向コード記憶部とその分解係数を保存する分解係数記憶部，５，６は同様に他方の方向コードを保存する方向コード記憶部とその分解係数を保存する分解係数記憶部、７はこれら記憶部４，６から読み出した方向コードや分解係数を輪郭画素へ付与する方向コード付与部である。
【００１９】
図１（Ｂ）は前記方向コード付与モジュールを用いた文字認識モジュールであり、１１はスキャナー等で構成されるパターン入力部、１２はパターン正規化やノイズ除去等の画像処理を行う前処理部、１３パターンを小領域に分割するパターン分割部、１４は図１（Ａ）に示した方向コード付与モジュール、１５は付与された方向コードに基づき特徴量を作成する特徴量作成部である。特徴量は、辞書作成時には辞書作成部１６に送られ、そこでカテゴリごとの標準特徴量を作成し、辞書１７へ保存される。また、文字認識時には特徴量がマッチング部１８へ送られ、そこで認識に先立って作成された辞書１７との照合を行い、認識結果を認識結果出力部１９から出力する。
【００２０】
（実施例１）
図２は、本発明による処理フローを示す図、図３乃至図６は、その動作説明をするための図で、以下では、前述の図１２（図３と同じ）や図１３（図４と同じ）に示した直線の輪郭表現を例にとって詳しく説明する。ここで方向コードは、水平・垂直・右上がり・右下がりを表す４５°刻みの４種類が定められているものとし、それぞれに対応する方向ベクトルをｘ，ｙ，ｕ，ｖで表す。
【００２１】
まず、各々の輪郭画素について、方向コードの量子化刻み（すなわち４５°刻み）よりも滑らかな輪郭方向を抽出する。ここでは、一旦、図１１に従って、４５°刻みの輪郭方向を求めた（図３の状態）後、前記した輪郭方向の平滑化を行う（図４の状態）。もちろん、滑らかな輪郭方向を抽出するための方法はこの１つに限られず、別の方法であってもよい。
【００２２】
次に、抽出された滑らかな輪郭方向のそれぞれを、２つの方向コードの重ね合わせに分解する。ここでいう方向コードの重ね合わせとは、それらに対応する方向ベクトルの線形結合であると考える。分解に用いるべき２つの方向コードは、図５に示すように、輪郭方向θ（度）の値によって、以下のようにあらかじめ定めておく。
・０≦θ＜４５：ｘとｕ
・４５≦θ＜９０：ｙとｕ
・９０≦θ＜１３５：ｙとｖ
・１３５≦θ＜１８０：ｘとｖ
すなわち、輪郭方向に最も近い２つの方向コードを用いる。
【００２３】
さて、図４の例で抽出された滑らかな輪郭方向は、すべてｘ＋ｕと分解されることは明らかである。そして、分解の結果得られた２つの方向コードは水平（コード１）および右上がり（コード３）であり、それぞれの分解係数は共に１である。そこで、図６に示すように、輪郭画素に対して（方向コード，分解係数）＝（１，１）（３，１）を付与する。
こうしておけば、どの輪郭画素においても、付与された２つの方向コードにそれぞれの分解係数を乗じてベクトル和をとることによって、元の輪郭方向が再現される。すなわち、４５°刻みでは表現しきれない滑らかな輪郭方向を、各輪郭画素に持たせることができる。
【００２４】
（実施例２）
次に、上述のようにして付与された２つの方向コードと分解係数から方向コードヒストグラムを作成する方法について説明する。まず、与えられたパターンを複数の小領域に分割する。ここでは、図７に示すように、４×４の小領域に分割したとする。次に、各輪郭画素に対して、実施例１で述べた方法により、２組の（方向コード，分解係数）の値を付与する。
【００２５】
従来の方向コードヒストグラムにおいては、この後、小領域ごとに各輪郭画素に付与された方向コードの数をコード別にカウントしていたが、本発明においては、各輪郭画素に付与された方向コードに対応する分解係数の絶対値の和をコード別に求める。例えば、図６の場合には、画素Ａは、Ａが属する小領域の水平方向（コード１）に対応するヒストグラム成分に１を加算すると同時に、同じ小領域の右上がり方向（コード３）に対応するヒストグラム成分にも１を加算する。ここで注意すべきは、「画素Ａに方向コード１と３が１つずつ付与されているから、対応するヒストグラム成分を１つずつ増やす」のではないことである。従来のヒストグラム成分が「方向コードの数」のカウント値であるのに対して、本発明では、ヒストグラム成分は連続的な値を持つ「方向コードの強さ」にもとづいているといえる。
【００２６】
上述のようにして、４×４（小領域）×４（方向コード）＝６４成分を持つ方向コードヒストグラムを得るので、これを文字認識用の特徴量として用いる。認識の際には、例えば、あらかじめ辞書に用意されたカテゴリごとの標準特徴量と、与えられたパターンから作成された特徴量とのシティブロック距離を求め、該距離が最小となるカテゴリを認識結果として出力すればよい。標準特徴量を求める一例としては、当該カテゴリに属する学習用文字パターンをいくつか用意し、それらの特徴量の平均値をとる。
【００２７】
【数１】
0003835937.tif 000002
【００２８】
なお、上記はあくまで実施例であって、パターンの小領域への分割方法や辞書とのマッチング方法などは上記に限定されるものではない。
【００２９】
（実施例３）
本発明は、上述の実施例に限定されず、ソフトウエアによっても実現することができる。本発明をソフトウェアによって実現する場合には、図８に示すように、ＣＰＵ２０，制御装置２１，ＲＯＭ２２，ＲＡＭ２３，表示装置２４，ハードディスク２５，キーボード２６，ＣＤ−ＲＯＭドライブ２７，通信装置２８，スキャナ２９などからなる汎用の処理装置を用意する。なお、本発明を実施するには、ＣＰＵを複数持つマルチプロセッサの処理装置を用意するか、シングルプロセッサの処理装置を並列に接続する。
【００３０】
ＣＤ−ＲＯＭなどのコンピュータ読み取り可能な記録媒体３０には、本発明のデータ提供機能を実現するプログラムが記録されている。該プログラムが起動されると、スキャナから文字パターンを画像データとして入力するか、もしくはあらかじめハードディスクに保存されている画像データを読み出してＲＡＭ上に配置し、該データに対して特徴抽出処理を実行する。
【００３１】
図９に示す例においては、輪郭画素１つにＣＰＵ１つを別個に割り当て、それぞれのＣＰＵ上で、実施例１で述べたような該輪郭画素への滑らかな方向コード抽出→輪郭方向の分解→２組の（方向コード，分解係数）の付与を並列に実行させる。こうすることによって、輪郭画素ごとに逐次的に処理する場合よりも高速に特徴抽出を行うことができる。
【００３２】
請求項４の発明においては、図１０に示すように、小領域１つにＣＰＵ１つを別個に割り当て、それぞれのＣＰＵ上で該領域内に存在する輪郭画素への滑らかな方向コード抽出→輪郭方向の分解→２組の（方向コード，分解係数）の付与、および、該領域に関する方向コードヒストグラム成分の作成を並列に実行させ、それらを統合して最終的な方向コードヒストグラムを得る。こうすることによって、方向コードの付与とヒストグラムの作成をヒストグラム成分ごとに逐次的に処理する場合よりも高速に特徴抽出を行うことができる。また、一般に、小領域の数は輪郭画素数に比べてかなり小さいので、上記した輪郭画素ごとにプロセッサを割り当てる方法よりもずっと少ないプロセッサで実現可能であり、システムの肥大化を抑えることができる。
【００３３】
【発明の効果】
本発明によれば、あらかじめ定められた方向コードのみを用いて実際のパターンに近い滑らかな輪郭方向を実現でき、パターン形状に関する情報をより正確に含む特徴量を得ることができる。
【図面の簡単な説明】
【図１】  本発明による特徴量抽出方法及び装置を説明するための要部構成図である。
【図２】  本発明の動作説明をするためのフロー図である。
【図３】  輪郭方向の説明をするための図である。
【図４】  平滑化された輪郭方向を説明するための図である。
【図５】  輪郭方向と分解に用いる方向コードを示す図である。
【図６】  付与される方向コードと分解係数を示す図である。
【図７】  パターンの分割例を示す図である。
【図８】  本発明による記録媒体が使用されるコンピュータの構成例を示す図である。
【図９】  方向コード付与の並列処理を説明するための図である。
【図１０】  ヒストグラム作成の並列処理を説明するための図である。
【図１１】  方向コードを説明するための図である。
【図１２】  輪郭方向の説明をするための図である。
【図１３】  平滑化された輪郭方向を説明するための図である。
【符号の説明】
１…輪郭方向抽出部、２…輪郭方向分解部、３…方向コード記憶部、４…分解係数記憶部、５…方向コード記憶部、６…分解係数記憶部、７…方向コード付与部、１１…パターン入力部、１２…前処理部、１３…パターン分割部、１４…方向コード付与モジュール、１５…特徴量作成部、１６…辞書作成部、１７…辞書、１８…マッチング部、１９…認識結果出力部。
【図１】
0003835937.tif 000003
【図２】
0003835937.tif 000004
【図３】
0003835937.tif 000005
【図４】
0003835937.tif 000006
【図５】
0003835937.tif 000007
【図６】
0003835937.tif 000008
【図７】
0003835937.tif 000009
【図８】
0003835937.tif 000010
【図９】
0003835937.tif 000011
【図１０】
0003835937.tif 000012
【図１１】
0003835937.tif 000013
【図１２】
0003835937.tif 000014
【図１３】
0003835937.tif 000015