JPH0944602A - 近傍点検出方法及びパターン認識装置 - Google Patents

近傍点検出方法及びパターン認識装置

Info

Publication number
JPH0944602A
JPH0944602A JP7190414A JP19041495A JPH0944602A JP H0944602 A JPH0944602 A JP H0944602A JP 7190414 A JP7190414 A JP 7190414A JP 19041495 A JP19041495 A JP 19041495A JP H0944602 A JPH0944602 A JP H0944602A
Authority
JP
Japan
Prior art keywords
group
threshold value
distance
value
feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP7190414A
Other languages
English (en)
Other versions
JP2986074B2 (ja
Inventor
Hiroyasu Takahashi
弘晏 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP7190414A priority Critical patent/JP2986074B2/ja
Priority to US08/682,347 priority patent/US5937093A/en
Publication of JPH0944602A publication Critical patent/JPH0944602A/ja
Application granted granted Critical
Publication of JP2986074B2 publication Critical patent/JP2986074B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24147Distances to closest patterns, e.g. nearest neighbour classification

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Character Discrimination (AREA)
  • Image Analysis (AREA)

Abstract

(57)【要約】 【課題】 最近傍点を高速かつ高精度に検出する。 【解決手段】 特長空間を1又は2以上の特長毎にグル
ーピングし、各グループまで計算された距離値が、各グ
ループ毎のしきい値THR_MIXを越えているか否か
を判定する。ここで、THR_MIXは、累積特長量に
基づいて設定されたしきい値及び次元数に基づいて設定
されたしきい値との平均値に設定される。各グループ毎
の距離値がしきい値THR_MIXを越えている場合、
この距離値を与えたプロトタイプを以降の距離計算から
除外する1フェーズ目のスクリーニングを行う。そし
て、さらに1フェーズ目のスクリーニングの対象となっ
たグループに関し、該グループまでの距離値の最小値か
らしきい値THR_RATEを計算し、2フェーズ目の
スクリーニングを行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、N次元の特長空間
に多数の標本点が分布している時、該特長空間における
新しい入力点がどの標本点に最も近いかを、距離計算の
途中で最近傍となる可能性のきわめて低い標本点を除外
することによって、高速に検出する高速最近傍点検出方
法及び該検出方法を応用したパターン認識装置に関す
る。
【0002】
【従来の技術】従来、N次元(Nは自然数)の特長空間
に多数の標本点が存在する時、ある入力点(N次元の特
長を持つ)が、どの標本点に最も近いかを高速に計算す
る問題は、非常に多くの応用があり、古くから研究され
てきた。この応用の一例としてパターン認識が挙げられ
る。このパターン認識への応用の場合、標本点は認識対
象となる各カテゴリーのプロトタイプの集合であり、入
力点は認識されるべきサンプルである。また、N次元特
長空間の各次元の値は所謂OCR(optical character
reading )のような文字認識装置の場合、文字パターン
から抽出された各々の特長値に相当する。最も簡単な認
識方法は、入力点に最も近い標本点(最近傍点)が属す
るカテゴリーを認識結果とするものである。
【0003】ここで、次元数Nの値がかなり小さい場合
(数次元程度)は、理論的な高速検出方法が存在する。
しかし、Nが大きくなると(例えば数十次元以上)、入
力点と多数の標本点との距離計算量が急激に増大し、高
速で最近傍を厳密に保証する理論的な方法は存在しない
と言われている。従って、現実的な応用では、最近傍の
保証よりも高速性と認識率の最小限の低下とのトレード
オフが重要になってくる。
【0004】そこで、従来から、認識率の低下が最小限
に抑えられる範囲の高確率で高速に最近傍点を検出する
ための色々な検出方法が考えられている。これらの検出
方法では、距離計算の前若しくは途中で最近傍となる可
能性の極めて低い標本点を計算対象から除外(スクリー
ニング)することにより演算量を軽減させて高速化を図
っている。例えばOCRで200次元の特長を主なもの
として使う場合、その前に200次元を20次元に圧縮
した特長でスクリーニングする方法、別のもっと簡単な
特長で予めスクリーニングを行う方法などがある。ま
た、「階層的パターンマッチングにおける簡易高速識別
方法」(情報処理学会第33回全国大会、pp1643
(1986);曽根、加藤、高橋)には、200次元の
距離計算の途中で切り捨て用の単純なしきい値と比較し
て最近傍である可能性の極めて低い標本点を次々とスク
リーニングする方法が開示されている。勿論、これらの
方法の組み合わせも有効である。
【0005】
【発明が解決しようとする課題】しかしながら、上記従
来の最近傍検出方法では、一定のしきい値や単純化した
特長量を用いてスクリーニングを行うため、十分な高速
化を図ろうとすると最近傍点である標本点をスクリーニ
ングする可能性がかなり高まり、逆に最近傍点の検出率
を向上させようとしてスクリーニングを緩和すると、十
分な高速化が図れなくなる、という問題が生じる。すな
わち、従来技術では、高速性と認識率の最小限の低下と
のトレードオフで決定される処理効率が満足のいくもの
ではなかった。
【0006】本発明は上記事実を考慮し、距離計算の過
程でスクリーニングのしきい値を動的に変化させること
によって大幅に処理効率を向上させた高速最近傍点検出
方法及び該方法を応用した高速かつ高認識率のパターン
認識装置を提供することを目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、請求項1の発明は、パターンの属性を示す複数の特
長を各々の次元として構成される特長空間で、入力され
た入力パターンと、該特長空間に分布する複数のパター
ンとの全特長空間における距離値を各々計算し、少なく
とも該距離値が最も小さい最近傍のパターンを検出する
高速最近傍点検出方法において、前記複数の特長を、各
々1又は2以上の特長毎に複数のグループに分類し、前
記複数のグループの各々に所定の順序を割当て、各グル
ープまでの特長に関連した情報量に基づいて、距離値に
関する第1のしきい値を前記複数のグループ毎に設定
し、前記所定の順序に従って、各グループまでの特長空
間における距離値を前記複数のパターンの各々について
計算していくと共に、あるグループまでの特長空間にお
ける距離値が、該グループにおける前記第1のしきい値
を越えた場合には、前記距離値を与えたパターンを、こ
れより後の距離計算の対象から除外することを特徴とす
る。
【0008】請求項1の発明では、例えば、特長空間が
192次元ある場合に16次元毎12グループに均等に
分類し、各グループまでの特長空間、すなわち16次
元、32次元、...、192次元の各場合について、
順番に入力パターンと複数のパターンとの部分特長空間
における距離値を計算していく(最後のグループまでの
距離値は、全特長空間における真の距離値となる)。従
って、各グループまでの特長に関連した情報量、例えば
距離計算の対象となった特長数等の増加につれて、距離
値は大きく、また距離値の信頼度等が向上する。そこ
で、この変化に応じて各グループまでの特長に関連した
情報量に基づきグループ毎に第1のしきい値を更新し
て、これを越える距離値を与えるパターンを以降の計算
から除外(スクリーニング)する。これによって、一定
のしきい値を用いてスクリーニングする従来の方法と比
べて、真の最近傍点を途中でスクリーニングするおそれ
を回避して最近傍点の検出率を高めることと、高速化と
を両立できる。すなわち、最近傍点の検出率と高速化の
トレードオフで決定される処理効率を高めることができ
る。なお、グループ毎の第1のしきい値を、入力パター
ンが属するサンプル集団における各グループまでの特長
に応じた統計的性質等に基づいて設定すれば良い。ま
た、最近傍点のみならず、2、3、...番目に近いパ
ターンを検出しても良い。
【0009】また、請求項2の発明は、パターンの属性
を示す複数の特長を各々の次元として構成される特長空
間において、入力された入力パターンと、該特長空間に
分布する複数のパターンとの全特長空間における距離値
を各々計算し、少なくとも該距離値が最も小さい最近傍
のパターンを検出する高速最近傍点検出方法であって、
前記複数の特長を、各々1又は2以上の特長毎に複数の
グループに分類し、前記複数のグループの各々に所定の
順序を割当て、各グループまでの特長に関連した情報量
に基づいて、距離値に関する第1のしきい値を前記複数
のグループ毎に設定し、前記所定の順序に従って、各グ
ループまでの特長空間における距離値を前記複数のパタ
ーンの各々について計算していくと共に、前記複数のパ
ターンの各グループまでの特長空間における距離値の最
小値を各グループ毎に求め、あるグループまでの特長空
間における距離値が、該グループにおける前記第1のし
きい値を越えた場合には、前記距離値を与えたパターン
を、これより後の処理の対象から除外し、前記第1のし
きい値によるパターンの除外を行ったグループについ
て、該グループにおける前記最小値に基づいて第2のし
きい値を設定し、前記グループまでの特長空間における
距離値が、前記第2のしきい値を越えた場合には、前記
距離値を与えたパターンを、これより後の距離計算の対
象から除外することを特徴とする。
【0010】請求項2の発明は、請求項1の発明が1段
階のスクリーニングを行っていたのに対し、2段階のス
クリーニングを行うようにしたものである。すなわち、
各グループまでの特長空間における距離値が、第1のし
きい値を越えるパターンをスクリーニングし、さらにこ
の第1のスクリーニング処理を受けたグループに対し、
当該グループまでの複数のパターンとの距離値の最小値
に基づいた第2のしきい値を設定する。そして、当該グ
ループまでの距離値が第2のしきい値を越えるようなパ
ターンをさらにスクリーニングする。なお、第2のスク
リーニングにおいて、第1のスクリーニングによって除
外されたパターンは、当然処理の対象とはならない。こ
のようにスクリーニングを1度行った後で、同じグルー
プに関し、1回目のスクリーニングで既に計算された結
果を用いて2回目のスクリーニングを行うようにしたの
で、スクリーニング処理の追加によっては処理時間はほ
とんど増加せず、2つのスクリーニングの効果が相乗し
て全体的な処理時間をさらに高速化できる、また、第2
のしきい値を最小値に基づいて設定する際に、距離計算
される順序が最後のグループに近くなるにつれて距離値
の信頼性が増えるので、最小値に対する第2のしきい値
の比を小さくするように設定すれば、スクリーニングが
より効果的になる。この第2のしきい値も、入力パター
ンが属するサンプル集団における各グループの特長に応
じた統計的性質等に基づいて設定すれば良い。
【0011】また、請求項3の発明は、請求項1及び請
求項2の発明において、前記所定の順序に従って前記入
力パターンの特長量を各グループの特長まで加算した累
積特長量を前記情報量として、各々の前記第1のしきい
値を設定することを特徴とする。
【0012】請求項3の発明では、第1のしきい値を各
グループまでの特長に関連した情報量として、計算途中
の次元数とは直接には無関係な累積特長量の関数として
設定する。例えば入力パターンの各グループまでの累積
特長量が小さい場合は、第1のしきい値を小さく設定
し、累積特長量が大きい場合は、第1のしきい値を大き
く設定する。これによって、累積特長量が大きい場合に
は、最近傍のものでも距離が大きくなってスクリーニン
グされてしまう、という不公平が防止され、処理効率を
向上させることができる。
【0013】請求項4の発明は、請求項1及び請求項2
の発明において、前記所定の順序に従って各グループま
での特長の数を加算した各々の累積特長数を前記情報量
として、各グループの前記第1のしきい値を設定するこ
とを特徴とする。
【0014】請求項4の発明は、各グループまでの特長
次元数の関数として第1のしきい値を設定する。これに
よって、計算された次元数の増加と共に、各グループま
での距離値が単調増加し、計算された次元数が少ないほ
ど距離値の信頼性が低い、という不公平が防止されて処
理効率を向上させることができる。
【0015】請求項5の発明は、請求項1及び請求項2
の発明において、前記入力パターンの特長量を前記所定
の順序に従って各グループの特長まで加算した各々の累
積特長量と、前記所定の順序に従って各グループまでの
特長の数を加算した各々の累積特長数とを前記情報量と
して、各グループの前記第1のしきい値を設定すること
を特徴とする。
【0016】請求項5の発明では、請求項3及び請求項
4の発明において設定される2種類のしきい値の関数と
して第1のしきい値を設定する。このようなしきい値の
混合によって、しきい値の信頼性が大幅に向上し、処理
効率をさらに向上させることができる。なお、2種類の
しきい値の関数として、例えば非線形関数や重み付き平
均値等がある。
【0017】請求項6の発明は、請求項5の発明におい
て、各グループの前記累積特長量及び前記累積特長数の
平均値を、各グループの前記第1のしきい値として設定
することを特徴とする。
【0018】請求項6の発明では、最も簡単な平均値で
請求項5の第1のしきい値を求めることによって、計算
量の増加を最小限に抑えると共に、処理効率をさらに向
上させることができる。
【0019】請求項7の発明は、請求項1〜請求項6の
発明において、各グループに割り当てられた前記所定の
順序は、各グループの特長における特長量の分散が大き
い順序であることを特徴とする。
【0020】請求項7の発明では、最も分類計算に寄与
する重要な特長を有するグループから順番に計算すると
いうものであり、重要度の尺度として特長量の分散値を
用いたものである。これによって、スクリーニングの効
果が高まり、距離計算をさらに高速化できる。
【0021】以上の最近傍点検出方法をパターン認識に
それぞれ応用したものが、次の請求項8〜請求項14の
パターン認識装置に係る発明である。
【0022】請求項8の発明は、入力パターンが入力さ
れる入力手段と、前記入力手段により入力された入力パ
ターンから複数の特長を抽出する特長抽出手段と、認識
カテゴリー毎に予め用意された前記複数の特長により表
現されたプロトタイプを格納しておく記憶手段と、前記
複数の特長を各々1又は2以上の特長毎に複数のグルー
プに区分すると共に、各グループに割り当てられた所定
の順序に従って、各グループまでの特長空間における距
離値を前記複数のパターンの各々について求めていく距
離計算手段と、各グループまでの特長に関連した情報量
に基づいて、距離値に関する第1のしきい値を前記複数
のグループ毎に設定する第1のしきい値設定手段と、前
記距離計算手段によって、あるグループまでの特長空間
における距離値が、該グループにおける前記第1のしき
い値を越えた場合には、前記距離値を与えたプロトタイ
プを、これより後の距離計算の対象から除外する第1の
スクリーニング手段と、前記距離計算手段により最後の
グループの特長まで計算された全特長空間における距離
値の少なくとも最小値を与えるプロトタイプを検出する
最近傍点検出手段と、前記最近傍点検出手段によって検
出されたプロトタイプが属する認識カテゴリーに基づい
て前記入力パターンが属する認識カテゴリーを判定する
認識手段と、を含んで構成したものである。
【0023】請求項9の発明は、入力パターンが入力さ
れる入力手段と、前記入力手段により入力された入力パ
ターンから複数の特長を抽出する特長抽出手段と、認識
カテゴリー毎に予め用意された前記複数の特長により表
現されたプロトタイプを格納しておく記憶手段と、前記
複数の特長を各々1又は2以上の特長毎に複数のグルー
プに区分すると共に、各グループに割り当てられた所定
の順序に従って、各グループまでの特長空間における距
離値を前記複数のパターンの各々について求めていく距
離計算手段と、各グループまでの特長に関連した情報量
に基づいて、距離値に関する第1のしきい値を前記複数
のグループ毎に設定する第1のしきい値設定手段と、前
記距離計算手段によって、あるグループまでの特長空間
における距離値が、該グループにおける前記第1のしき
い値を越えた場合には、前記距離値を与えたプロトタイ
プを、これより後の距離計算の対象から除外する第1の
スクリーニング手段と、前記複数のプロトタイプの各グ
ループまでの特長空間における距離値の最小値をグルー
プ毎に算出する最小値算出手段と、前記最小値算出手段
によって算出された各グループの最小値に基づいて各グ
ループの第2のしきい値を各々設定する第2のしきい値
設定手段と、前記第1のスクリーニング手段によるプロ
トタイプのスクリーニングが行われたグループに関し、
次のグループの距離計算に移行する前に、該グループま
での特長空間における距離値が前記グループにおける前
記第2のしきい値を越えるプロトタイプを、これより後
の距離計算の対象から除外する第2のスクリーニング手
段と、前記距離計算手段により最後のグループの特長ま
で計算された全特長空間における距離値の少なくとも最
小値を与えるプロトタイプを検出する最近傍点検出手段
と、前記最近傍点検出手段によって検出されたプロトタ
イプが属する認識カテゴリーに基づいて前記入力パター
ンが属する認識カテゴリーを判定する認識手段と、を含
んで構成したものである。
【0024】請求項10の発明は、請求項8又は請求項
9の前記第1のしきい値設定手段が、前記入力パターン
の特長量を前記所定の順序に従って各グループの特長ま
で加算した各々の累積特長量を前記情報量として、各グ
ループの前記第1のしきい値を設定することを特徴とす
る。
【0025】請求項11の発明は、請求項8又は請求項
9の前記第1のしきい値設定手段が、前記所定の順序に
従って各グループまでの特長の数を加算した各々の累積
特長数を前記情報量として、各グループの前記第1のし
きい値を設定することを特徴とする。
【0026】請求項12の発明は、請求項8又は請求項
9の前記第1のしきい値設定手段が、前記入力パターン
の特長量を前記所定の順序に従って各グループの特長ま
で加算した各々の累積特長量と、前記所定の順序に従っ
て各グループまでの特長の数を加算した各々の累積特長
数とを前記情報量として、各グループの前記第1のしき
い値を設定することを特徴とする。
【0027】請求項13の発明は、請求項12の前記第
1のしきい値設定手段が、各グループの前記累積特長量
及び前記累積特長数の平均値を、各グループの前記第1
のしきい値として設定することを特徴とする。
【0028】請求項14の発明は、請求項8乃至請求項
13のいずれか1項において、各グループに割り当てら
れた前記所定の順序が、各グループの特長における特長
量の分散が大きい順序であることを特徴とする。
【0029】以上、請求項8乃至請求項14の発明によ
れば、請求項1乃至請求項7の各々の発明と同様に高速
かつ高精度に最近傍点が検出されるので、高速で入力パ
ターンを認識できると共に、最近傍点の検出率と相関の
高い認識率が向上する。
【0030】
【発明の実施の形態】以下、本発明をOCRに適用した
実施の形態について図面を参照して説明する。
【0031】本実施の形態に係るOCRのシステム構成
例を図1に示す。図1に示すように、本実施の形態に係
るOCRシステムは、文字認識に必要な処理を実行する
パーソナルコンピュータ本体10と、文字認識結果等を
表示するCRT12と、オペレータの入力手段であるキ
ーボード14と、画像入力用のスキャナ16とから構成
されている。すなわち、本OCRシステムは、パーソナ
ルコンピュータが文字認識用プログラムによって文字認
識を行うようになっている。スキャナ16は、OCR帳
票18に光を照射しながら走査し、その反射光を2値に
量子化することによってOCR帳票18のデジタル画像
データを出力する装置であり、パーソナルコンピュータ
本体10とケーブル20を介して接続されている。
【0032】次に、本OCRシステムの構成ブロックを
図2に示す。図2に示すように、本OCRシステムは、
所定のプログラムに従って後述する各構成部を制御する
CPU22と、CPU22の制御用のプログラムを格納
するためのプログラムROM24と、CPU22の作業
域及びデジタル画像データの格納用として使用されるR
AM26と、を含んで構成され、データや命令を伝達す
るためのバス30に各々接続されている。
【0033】また、バス30には、文字認識の対象とな
るカテゴリー毎に各々複数個用意された典型的な文字パ
ターン(プロトタイプ)の特長量を格納しておく辞書メ
モリ28が接続されており、CPU22がアクセスでき
るようになっている。このプロトタイプは、極めて多数
の文字パターンの後述する特長ベクトルをカテゴリー毎
にクラスタリングすることによって求められる。また、
この辞書メモリ28は、パーソナルコンピュータ本体1
0に内蔵された磁気ディスク装置等によって構成され
る。なお、外付けの磁気ディスク装置や光磁気ディスク
装置等によって構成しても良い。
【0034】また、バス30には、挿入されたフロッピ
ーディスク36にアクセスし、データのリード/ライト
が可能なフロッピーディスクドライブ32、CRT1
2、キーボード14、及びスキャナ16とのインターフ
ェイスを制御するスキャナインターフェイス制御回路3
4が接続されている。
【0035】上記のように構成されたOCRシステムに
文字認識を実行させる場合、オペレータはパーソナルコ
ンピュータを立ち上げ、スキャナ16に文字認識の対象
となる文字が書かれたOCR帳票18をセットする。そ
して、文字認識プログラムを格納したフロッピディスク
36を挿入してキーボード14によって認識動作を命令
する。そして、フロッピーディスクドライブ32がフロ
ッピーディスク36に格納された文字認識用のプログラ
ムを読み取ってバス30を介してCPU22に伝達し、
このCPU22が、文字認識用プログラムに従い各構成
部を制御することによって文字認識処理を実行する。
【0036】次に、上記文字認識処理について図3のフ
ローチャートによって説明する。図3に示すように、先
ずスキャナ16がOCR帳票18の画像を走査しデジタ
ル画像データへの変換を行う(ステップ100)。この
デジタル画像データは、ケーブル20を介してスキャナ
インターフェイス制御部34によってバス30へ転送さ
れてRAM26に格納される。
【0037】次に、RAM26に格納されているデジタ
ル画像データの文字領域を抽出し、さらに個々の文字パ
ターンを他の画像領域から切り出す(ステップ10
2)。文字領域の切り出し処理では、文字認識用プログ
ラムにOCR帳票18の文字枠領域の位置を予め与えて
おき、その位置をCPU22が認識して切り出し処理を
行う、というものである。また、文字パターンの切り出
しでは、例えば文字パターンの上下左右の端を検出し、
これらの端点を通過する上下左右の辺よりなる外接枠を
求め、その内部のデータを入力パターンとして抽出す
る。
【0038】次に、切り出された入力パターンの特長量
を抽出し、入力パターンの特長を十分に反映した情報圧
縮された特長ベクトルを作成する(ステップ104)。
この特長量抽出では、例えば次のような処理を行う。
【0039】先ず入力パターンを縦横に一定の大きさ、
例えば60ドット×60ドットに正規化する。次に、正
規化された入力パターンの細線化を行う。この細線化の
方法として例えばHilditchの方法等がある。そして、こ
の細線化パターンを例えば4つのルック(射影)方角に
関し、12の区画に分割し、各々の領域毎に、連結素の
数を4方向毎に計数し、各々の計数結果を各次元の特長
値として多次元のベクトルを作成する。ここで、4つの
ルック方角とは、縦、横、右斜め45度、左斜め45度
の4つの射影方角をいい、これらの方角の各々に沿って
細線化パターンの12区画内の連結素の数を各々計数す
る。また、連結素とは、細線化パターンを構成する各黒
点に関し、例えば右隣、下隣、右斜め下、左斜め下の隣
接点をいい、各々の隣接点が黒点である場合に、それぞ
れの方向量に1を加算する。また、連結素方向とルック
方角によって計数に重みを付け、各特長量の寄与を平滑
化するようにしている。なお、上述の特長抽出方法で
は、4(連結素方向の数)×12(区画数)×4(ルッ
ク方角)=192次元の特長ベクトルが作成される。以
下では、192次元の特長ベクトルを前提として説明す
る。
【0040】次に、入力パターンの特長ベクトルと、辞
書メモリ28に格納されているプロトタイプの文字パタ
ーンとの距離計算を実行し、距離の最も小さいプロトタ
イプ(最近傍点)を検出し、当該プロトタイプの属する
カテゴリーを認識候補として抽出する(ステップ10
6)。なお、認識率を向上させるために、最近傍点だけ
ではなく、距離の小さい順に幾つかのプロトタイプのカ
テゴリーを認識候補として抽出するようにしても良い。
【0041】ステップ106では、入力パターンとプロ
トタイプとの距離は、最も簡単な市街地距離(City Blo
ck Distance )Dcbの場合、次式のように計算される。
【0042】 但し、Pi は、あるプロトタイプのi番目の特長値、F
i は入力パターンのi番目の特長値を示す。なお、以下
ではこの市街地距離を例として説明するが、入力パター
ンとプロトタイプとの類似度を反映できればこの例に限
られず、例えば所謂ユークリッド距離等でも良い。
【0043】ここで、例えば、手書き漢字、ひらがな、
カタカナ、数字、英字、特殊文字等に渡って約2800
個のカテゴリーを認識対象とし、各カテゴリーに平均3
個程度の計8283個のプロトタイプを用意した場合、
真の最近傍点を検出するためには、入力パターンとすべ
てのプロトタイプとの各々の特長ベクトル同士で(1)
式の計算を行わなければならず、きわめて大量の計算量
が必要となる。そこで、本実施の形態では、ステップ1
06で、高速最近傍点検出処理を実行し、最近傍点の検
出率をほとんど落とすことなく高速化を図っている。こ
の高速最近傍点検出処理は、192次元の特長を複数の
グループに分類し、この各々のグループ毎に順に計算さ
れる途中結果としての距離値が、計算過程で動的に変化
させて設定されたしきい値より小さい場合、その距離値
を与えたプロトタイプを次々とスクリーニングして以降
の距離計算を行うというものである。詳細については以
下に後述する。
【0044】次に、ステップ106で抽出された認識候
補から最終的な認識結果を選ぶ認識処理を実行する(ス
テップ108)。この認識処理では、例えば認識候補の
コード列を予め用意された単語辞書と照合し、また前後
の単語の文脈情報等に基づいてあり得ない認識候補を排
除することなどによって、最適な認識候補を認識結果と
して選択するというものである。これにより、単に最近
傍点の属するカテゴリーを認識結果とする方法よりも認
識率を向上させることができる。なお、最終目標である
認識率を低下させないことと、最近傍点の検出率を落と
さないこととは高い相関があり、ステップ106の高速
最近傍点検出処理によって高速かつ高精度の認識率が達
成できる。
【0045】最終的な認識結果が得られると、認識結果
を出力して(ステップ110)、文字認識処理を終了す
る。例えば、磁気ディスク装置等の記憶装置に認識結果
を出力し、データベース化する。また、CRT12に認
識結果を表示して、オペレータに認識結果の正誤を判断
修正させるようにしても良い。
【0046】次に、上記ステップ106の高速最近傍点
検出処理について、以下に詳細に説明する。
【0047】まず、距離計算を行う前に、192次元の
特長量をスクリーニング効果の大きい順に予め並べ替え
ておくことが処理の高速化の点で好ましい。本実施の形
態では、例えば辞書メモリ28に格納されている828
3個のプロトタイプから192次元の特長量の各々の分
散値を計算し、その分散値の大きい順に特長量を並べ替
え、この順に距離計算を行う。このように並べ替えたの
は、分散の大きいものは分類計算に対する寄与率が高い
ので、その順で計算した方が早めに収束(スクリーニン
グ)するからである。
【0048】そして、分散値の大きい順に並べ替えた1
92次元の特長量を、順番に16次元ずつ、計12個の
グループに分類しておく。なお、このグループ内次元数
やグループ数は、この例に限られず、例えば8次元ずつ
24グループに分類しても良い。
【0049】この高速最近傍点検出処理では、スクリー
ニング用のしきい値を各グループ毎に動的に変化させる
が、しきい値を如何に設定するか、設定されたしきい値
を如何にスクリーニングに適用するか、によって様々な
態様がある。そこで、本実施の形態では、高速最近傍点
検出処理として第1〜第4の例を挙げ、それぞれ図4〜
図7によって説明する。
【0050】図4に示すように、高速最近傍点検出処理
の第1の例では、まず初めにグループ1〜12の各々に
ついてのしきい値THR1(1)〜THR1(12)
(THR1(1−12))を計算する(ステップ12
0)。これらのしきい値THR1(1−12)は、各グ
ループまでの入力パターンの累積特長量に基づいて設定
される。例えば、累積特長量がまだ小さい場合にはしき
い値THR1(1−12)を小さく設定し、大きくなる
に従い、THR1(1−12)を大きくしていく。すな
わち、各しきい値THR1(1−12)は、累積特長量
の関数となっている。ここで、各グループまでの累積特
長量とは、当該パターンの192次元の特長値を各グル
ープにおける最後の次元(16、32、...、19
2)まで総和したものをいう。なお、後述するように、
各グループ毎に計算された距離が各々のしきい値THR
1(1−12)を越えるようなプロトタイプは、次々と
スクリーニングされ、それ以降の距離計算から除外され
る。
【0051】このようにTHR1(1−12)を、距離
計算の途中での次元数とは直接には無関係な累積特長量
に基づいて設定したのは、次のような理由による。すな
わち、図3のステップ104で抽出された特長は、文字
のストローク量を正規化していないため、ストローク量
の少ない異なる字種の文字同士の距離は大きくならない
が、逆にストローク量の多い文字では、同一の字種のサ
ンプル同士でも距離が大きくなる、という不公平が生じ
るからである。
【0052】具体的なしきい値THR1(1−12)の
設定方法として例えば実際の実験データをプロットした
図8のグラフに基づく次のような方法がある。図8で
は、X軸は、あるグループまでの累積特長量、Y軸は、
入力パターンと、入力パターンが属するカテゴリーのプ
ロトタイプの中で入力パターンに最短のものとのその時
点での距離値を各々示し、多数の文字パターンに対して
プロットされている。さらに図8では、しきい値THR
1(1−12)を累積特長量Xに基づいて定める関数式
として次式で与えられる直線が示されている。
【0053】 THR1(n) = a・X(n) + b ・・・・(2) 但し、a、bは正の定数、nはグループ番号、X(n)
はグループnまでの累積距離値である。図8に示すよう
に、(2)式の直線は、大部分の散布点が、その下側に
くるようにaとbとが設定されている。もし、この直線
がすべての散布点より上にあれば、この実験に使われた
データに関し、スクリーニングにより認識率が下がるこ
とはない。
【0054】また、(2)式のbは必ず正の値で一定値
以上でなければならない。何故なら、累積特長量Xの小
さいものには、まだ途中の16次元や32次元程度まで
しか計算されていないものが多い上、分散値の大きい特
長からソートされているので、bが0近傍の値の場合、
正しいカテゴリーのプロトタイプがスクリーニングされ
る危険性が高いからである。なお、(2)式のような簡
単な線形関数の他に、散布点の分布をもっと正確に反映
した非線形関数等を用いても良い。次に、1から192
までの次元を指定するための次元番号i、16次元毎に
12個に分類されたグループを指定するためのグループ
番号j、1からN(8283)までのすべてのプロトタ
イプを指定するためのプロトタイプ番号kを各々1に設
定する(ステップ130)。また、入力パターンと1か
らNまでのプロトタイプとの(1)式に基づく各々の市
街地距離をDcb(1)〜Dcb(N)とし、これらをすべ
て0に、さらに最小距離Dmin を最大値(例えば655
36)に設定する(ステップ130)。
【0055】次に、入力パターンと各プロトタイプとの
距離計算を次式によって実行する(ステップ132)。
【0056】 Dcb(k) = Dcb(k) + |Fk (i) − P(i)| ・・・・・(3) 但し、Fk (i)は、k番目のプロトタイプ(プロトタ
イプk)のi番目の次元(次元i)の特長値であり、P
(i)は、入力パターンの次元iにおける特長値であ
る。ここで、最初はi=1、k=1であるから、1番目
のプロトタイプと入力パターンとの各々1番目の特長値
の市街地距離が算出されてDcb(k)に加算される。
【0057】次に、次元番号iを1だけ加算し(ステッ
プ134)、iがj番目のグループ(グループj)にお
いて最後の次元番号を越えているか否かを判定する(ス
テップ136)。なお、本実施の形態においては、グル
ープ1、2、...12の最後の次元番号は各々16、
32、....192となる。
【0058】iがグループjの最後の次元番号を越えて
いない場合(ステップ136否定判定)、ステップ13
2に戻って同様の処理を繰り返す。すなわち、ステップ
132〜ステップ136では、グループjの特長値に関
する市街地距離をDcb(k)に加算する。
【0059】iがグループjの最後の次元番号を越えて
いる場合(ステップ136肯定判定)、グループjにお
ける最後の次元まで計算された市街地距離Dcb(k)が
グループjに関するしきい値THR1(j)を越えてい
るか否かを次式のように判定する(ステップ137)。
【0060】 Dcb(k) > THR1(j) ・・・・・(4) (4)式が成立すると判定した場合(ステップ137肯
定判定)、プロトタイプkのスクリーニングを行い(ス
テップ140)、次の処理(ステップ148)に移行す
る。すなわち、これ以降の距離計算においてプロトタイ
プkは除外される。ここで(4)式が成立するというこ
とは、図8によれば、当該プロトタイプkが(2)式の
直線の上側で散布点がほとんどない領域にあるというこ
とを意味する。従って、このようなプロトタイプが正解
を与える可能性は極めて少なく、これをスクリーニング
しても認識率をほとんで低下させることなく、これ以降
の距離計算を高速化することができる。
【0061】(4)式が成立しないと判定した場合(ス
テップ137否定判定)、次のような最小距離と最近傍
プロトタイプを求める処理を行う。まずグループ番号j
が最後のグループ番号12であるか否かを判定し(ステ
ップ142)、最後のグループ番号12であった場合の
み(ステップ142肯定判定)、市街地距離Dcb(k)
がこれまでに求められた最小距離Dmin より小さいか否
かを次式のように判定する(ステップ144)。
【0062】 Dcb(k) < Dmin ・・・・・(5) (5)式が成立すると判定した場合(ステップ144肯
定判定)、Dmin の値をDcb(k)の値に変更し、最近
傍点のプロトタイプ番号を指定するための最近傍点番号
minにkを代入する(ステップ146)。
【0063】jが最後のグループ番号12でなかった場
合(ステップ142否定判定)、直ちに次の処理(ステ
ップ148)に移行する。途中経過の距離計算では、真
の最近傍点が検出できないためである。また、(5)式
が成立しないと判定した場合にも(ステップ144否定
判定)、直ちに次の処理(ステップ148)に移行す
る。
【0064】以上のようにしてプロトタイプkに関しグ
ループjまでの処理が終了したら、スクリーニングされ
ていない次のプロトタイプが有るか否かを判定する(ス
テップ148)。
【0065】スクリーニングされていない次のプロトタ
イプが有る場合(ステップ148肯定判定)、スクリー
ニングされていない次のプロトタイプ番号にkを更新す
る(ステップ150)。そして、ステップ132に戻
り、同様にこの更新されたプロトタイプについての距離
計算、スクリーニング判定等を行う。なお、最初のグル
ープ1の処理の場合、プロトタイプkの直後のプロトタ
イプは、まだステップ137のスクリーニング判定の対
象ともなっていないので、単純にkが1だけ更新されて
k+1となる。しかし、グループ2以降の処理では、プ
ロトタイプk+1がスクリーニングされている可能性が
あり、かかる場合には、スクリーニングされたプロトタ
イプの番号を飛び越えて最初のスクリーニングされてい
ないプロトタイプの番号が選択される。
【0066】スクリーニングされていない次のプロトタ
イプが無い場合(ステップ148否定判定)、グループ
jの処理を終了し、次のグループに関する処理に移行す
るためグループ番号jを1だけ加算する(ステップ16
2)。
【0067】次に、グループ番号jが最後のグループ番
号12を越えているか否かを判定する(ステップ16
4)。グループ番号12を越えていない場合には(ステ
ップ164否定判定)、スクリーニングされていない最
初のプロトタイプ番号にkを戻し(ステップ166)、
ステップ132に戻って同様の処理を繰り返す。すなわ
ち、更新されたグループjのスクリーニングされていな
い最初のプロトタイプから、距離計算、スクリーニング
等を実行する。
【0068】グループ番号12を越えている場合は(ス
テップ164肯定判定)、最後の192次元まで距離計
算、スクリーニング等が完了しているので、高速最近傍
点検出処理を終了する。
【0069】以上のように、スクリーニング途中での次
元数とは直接には無関係な累積特長量の関数でしきい値
がグループ毎に動的に設定されていくので、文字種によ
ってストローク長が違うことからくる距離値の不公平が
是正され、認識率の低下を最小限に抑えられると共に、
スクリーニングによって高速に最近傍点を検出すること
ができる。なお、図4の処理では、ステップ142〜ス
テップ146で最近傍のプロトタイプ(第1位の認識候
補)のみを求めているが、2、3、...番目に近い各
々異なるカテゴリーのプロトタイプ(第2位、第3
位、...の認識候補)を求めても良い。
【0070】図4の例では、次元数とは直接には無関係
な累積特長量の関数でしきい値を求めていたが、次元数
の関数でしきい値を求めることにより、次元数が少ない
ほど距離値の信頼性が低い、という不公平を軽減するこ
とができる。これを第2の高速最近傍点検出処理として
図5に示す。なお、図5では、図4と同一内容のステッ
プに同一の番号を付して説明を省略する。
【0071】図5に示すように、まずグループ1〜12
のしきい値THR2(1)〜THR2(12)(THR
2(1−12))を各グループの最後の次元数に基づい
て設定する(ステップ121)。例えば、次元数がまだ
小さい場合にはしきい値THR2(1−12)を小さ
く、距離計算が進んで次元数が大きくなるに従い、TH
R2(1−12)を大きくしていく。すなわち、各しき
い値THR2(1−12)は、入力パターンの累積特長
量とは無関係に次元数の関数となっている。なお、第1
の高速最近傍点検出処理と同様に、各グループ毎に計算
された距離が各々のしきい値THR2(1−12)を越
えるようなプロトタイプは、次々とスクリーニングさ
れ、それ以降の距離計算から除外される。
【0072】具体的なしきい値THR2(1−12)の
設定方法として例えば実際の実験データをプロットした
図9のグラフに基づく次のような方法がある。図9で
は、X軸はグループ番号Xで、縦の罫線がグループ1〜
グループ12までをそれぞれ示している。また、Y軸
は、入力パターンと、入力パターンが属するカテゴリー
のプロトタイプの中で入力パターンに最短のものとのそ
のグループの最後の次元までの距離値を示し、多数の入
力パターンに関してプロットされている。なお、図9で
は、離散的なグループ番号で直接プロットすると、個々
のグループを示す縦の罫線上に散布点が集中し、分布状
況が分かりにくくなるため、散布点をX軸方向に乱数で
分布させて広がりを付けるようにしている。すなわち、
最も左端にある1番目の罫線から2番目の罫線までの間
にグループ1に関するデータを、2番目から3番目の罫
線の間に、グループ2に関するデータ、というように、
最後のグループ12に関するデータまで各々横に広がっ
た領域にプロットされている。
【0073】この図9のような実験データに基づいて、
しきい値THR2(1−12)を設定するためには、大
部分の散布点が下側にくるように、図示のように次式の
直線を設定する。
【0074】 THR2(X) = c・X + d ・・・・(6) 但し、c、dは正の定数である。もし、この直線がすべ
ての散布点より上にあれば、この実験に使われたデータ
に関し、スクリーニングにより認識率が下がることはな
い。
【0075】また、(6)式のdは必ず正の値で一定値
以上でなければならない。まだ途中の16次元や32次
元程度までしか計算されていない段階では、分散値の大
きい特長からソートされていることもあり、正しいカテ
ゴリーを与えるプロトタイプでも、dが0近傍の値の場
合、当該プロトタイプがスクリーニングされる危険性が
高いからである。
【0076】また、分類に寄与する分散値の大きい順序
で特長を並べているため、図9の分布が示すように、次
元数が増えるにつれて距離値の増加率は減少していくこ
とがわかる。そこで、(6)式のような簡単な線形関数
の他に、散布点の分布をもっと正確に反映した非線形関
数等を用いても良い。
【0077】次に、図4と同様に距離計算等を行う(ス
テップ130〜ステップ136)が、グループjの最後
の次元まで計算された市街地距離Dcb(k)を次式のよ
うにTHR2(j)と比較する(ステップ138)。
【0078】 Dcb(k) > THR2(j) ・・・・・(7) (7)式が成立すると判定した場合(ステップ138肯
定判定)、プロトタイプkのスクリーニングを行い(ス
テップ140)、次の処理(ステップ148)に移行す
る。そして、図4と同様にグループ1〜12までプロト
タイプをスクリーニングしながら距離計算を行い最近傍
点を検出する。
【0079】この第2の例のように、次元数の関数とし
て設定されたしきい値を用いてスクリーニングを行うこ
とによって、距離計算の途中の次元数が小さいほど、距
離の信頼性が低いという不公平を減らし、認識率の低下
を最小限に抑えられると共に、プロトタイプのスクリー
ニングによって高速に最近傍点を検出することができ
る。
【0080】高速最近傍点検出処理の第1の例と第2の
例で設定されるしきい値の関数は、直線で近似されてい
るため、ばらつきが大きいサンプル集団では、単に
(2)式や(6)式の各定数を調節しただけでは、処理
効率が一定以上には上がらない場合がある。そこで、本
実施の形態では、これらのしきい値を混合させた新たな
しきい値を設けることによって、しきい値の信頼性をさ
らに高めた高速最近傍点検出処理を用意した。これを第
3の例として図6に示す。なお、図6では、図4及び図
5と同様の処理内容のステップには、同一の番号を付し
て詳細な説明を省略する。
【0081】図6では、THR1(1−12)を計算し
(ステップ120)、次にTHR2(1−12)を設定
する(ステップ121)。そして、これら2種類のしき
い値を混合させて新たなしきい値THR_MIX(1−
12)を計算する(ステップ122)。この混合計算は
次式に従って行われる。
【0082】 THR_MIX(1−12) =f(THR1(1−12)、THR2(1−12)) ・・・(8) 但し、f(x、y)はxとyの関数である。
【0083】本実施の形態では、例えば関数fをxとy
の平均値を取る関数として与える。この場合、(8)式
は、 THR_MIX(1−12) =(THR1(1−12)+THR2(1−12))/2 ・・・(9) となる。なお、(8)式の関数fは、平均値を求める関
数に限られず、例えば重み付き平均や非線形関数等でも
良い。
【0084】以下、図4及び図5と同様に、入力パター
ンとあるプロトタイプkとの途中の次元まで計算された
市街地距離Dcb(k)がTHR_MIX(1−12)を
越えた場合には、そのプロトタイプkを次々にスクリー
ニングして最近傍プロトタイプ検出の高速化を図る。
【0085】このように、累積特長量及び次元数に応じ
て増加する距離値の2つの特性を同時に反映したしきい
値でスクリーニングすることによって、認識対象となる
集団のばらつきを反映したしきい値の信頼性が高まり、
処理効率をさらに向上させることができる。なお、この
第3の例では、ステップ120〜ステップ122でTH
R_MIX(1−12)を求める計算を行うが、全体の
計算量と比較して無視しうる量であり、高速化の妨げと
はならない。
【0086】以上の高速最近傍点検出処理の第1〜第3
の例では、各グループ毎に1種類のしきい値で1フェー
ズのスクリーニングを行っていたが、各グループで2種
類のしきい値を用いて2フェーズのスクリーニングを行
っても良い。これを第4の例として図7のフローチャー
トによって説明する。なお、図7でも、図4〜図6と同
様のステップには同一の番号を付して詳細な説明を省略
する。
【0087】図7に示すように、まず、図6のステップ
120〜ステップ122と同様に、THR_MIX(1
−12)の計算を行う(ステップ124)。次に、次元
番号i、グループ番号j、プロトタイプ番号、及び市街
地距離Dcb(1)〜Dcb(N)の初期値設定を行い(ス
テップ129)、最小距離Dmin に最大値を代入する
(ステップ131)。なお、第4の例においては、D
min は各グループの距離計算毎に求められる。
【0088】次に、グループjに関し、入力パターンと
各プロトタイプkとの市街地距離D bc(k)の計算を行
い(ステップ132〜ステップ136)、THR_MI
X(j)より大きい場合(ステップ139肯定判定)に
は、そのプロトタイプkをスクリーニングする(ステッ
プ140)。すなわち、これが図6においても説明した
グループjに関する1フェーズ目のスクリーニングであ
る。上記処理を未だスクリーニングされていない生き残
っているすべてのプロトタイプに関し実行する(ステッ
プ148、ステップ150)。また、この処理の間に、
当該グループjにおける最小距離Dmin と最近傍のプロ
トタイプ番号minを求める(ステップ144、ステッ
プ146)。
【0089】グループjに関し、THR_MIX(j)
による1フェーズ目のスクリーニングが終了したら(ス
テップ148)、次のグループに移行する前に、以下の
ような2フェーズ目のスクリーニング処理を行う。
【0090】まず、グループjに関する2フェーズ目の
しきい値THR_RATE(j)を設定する(ステップ
150)。このしきい値THR_RATE(j)は、実
験データから求められた経験的な比率として認識用プロ
グラム等で与えられ、例えばグループ1では2.5、グ
ループ2では1.7、...、グループ11では1.2
などである。詳細については後述する。
【0091】次に、スクリーニングされていない最初の
プロトタイプ番号にkを戻す(ステップ152)。そし
て、ステップ132〜ステップ136で計算された入力
パターンとプロトタイプkとの市街地距離Dbc(k)と
グループjにおける最小距離Dmin との比が、しきい値
THR_RATE(j)を越えているか否かを次式によ
って判定する(ステップ154)。
【0092】 (Dbc(k)+α)/(Dmin +α) > THR_RATE(j) ・・・・(10) ここで、αは、特にグループ1でDmin が0若しくは0
近傍の値の時に、(10)式の左辺が極端に大きくなる
のを防止するための鈍化係数であり、特長量の大きさに
基づいて定められる定数である。なお、(10)式で用
いられる市街地距離Dbc(k)と最小距離Dmin とは、
既に、1フェーズ目のステップ132、〜ステップ14
4で計算済の値をそのまま用いるので、フェーズ2によ
る処理時間の増加は無視できる。
【0093】(10)式が成立すると判定した場合(ス
テップ154肯定判定)、2フェーズ目のプロトタイプ
kのスクリーニングを行い(ステップ156)、次の処
理(ステップ158)に移行する。また、(10)式が
成立しないと判定した場合には(ステップ154否定判
定)、直ちに次の処理(ステップ158)に移行する。
【0094】次に、スクリーニングされていない次のプ
ロトタイプが有るか否かを判定する(ステップ15
8)。次のプロトタイプが有る場合には(ステップ15
8肯定判定)、スクリーニングされていない次のプロト
タイプ番号にkを更新し(ステップ160)、入力パタ
ーンと次のプロトタイプとの市街地距離に関して(1
0)式に基づく判定を行い、同様の処理をスクリーニン
グされていない次のプロトタイプが無くなるまで繰り返
す(ステップ158否定判定)。
【0095】このようにしてフェーズ2では、グループ
jのフェーズ1までの処理で生き残ったプロトタイプを
新たなしきい値THR_RATE(j)に基づいて、さ
らにスクリーニングする。
【0096】2フェーズ目のスクリーニング処理が、す
べての生き残ったプロトタイプに対して終了したら(ス
テップ158否定判定)、次のグループ番号に処理を移
行するため、グループ番号jに1を加算する(ステップ
162)。jが最後のグループ番号12を越えていない
場合(ステップ166否定判定)、スクリーニングされ
ていない最初のプロトタイプ番号にkを戻し、最小距離
min に最大値を代入し(ステップ131)、次のグル
ープに関し同様にフェーズ1及びフェーズ2のスクリー
ニングを実行する。
【0097】更新したグループ番号が12を越えた場合
(ステップ164肯定判定)、第4の高速最近傍点検出
処理を終了する。
【0098】以上のように、同じグループに関し、TH
R_MIX(1−12)とTHR_RATE(1−1
2)という2種類のしきい値で2フェーズのスクリーニ
ングを行う。特に、上述したようにフェーズ2は、既に
計算済のフェーズ1の結果をチェックするだけであり極
めて高速である。これによって、フェーズ2を新たに追
加したことによる処理時間の増加は僅かであり、2フェ
ーズによるスクリーニングの効果が相乗して全体的な最
近傍点検出処理をさらに高速化することができる。
【0099】ところで、具体的なしきい値THR_RA
TE(1−12)の設定方法として例えば実際の実験デ
ータをプロットした図10のグラフに基づく次のような
方法がある。
【0100】図10では、X軸はグループ番号Xで、縦
の罫線がグループ1〜グループ12までをそれぞれ示し
ている。また、Y軸は、入力パターンが属する正解カテ
ゴリーのプロトタイプの中で入力パターンに最短のもの
と該入力パターンとの当該次元までの距離値と、すべて
のプロトタイプの中で最短のものとの当該次元までの距
離値とにそれぞれ(10)式の鈍化係数を加算し、両者
の比をとったものを示している。
【0101】なお、図10では、離散的なグループ番号
で直接プロットすると、個々のグループを示す縦の罫線
上に散布点が集中し、分布状況が分かりにくくなるた
め、図9と同様に散布点をX軸方向に乱数で分布させて
広がりを付けるようにしている。
【0102】図10が示すように、1グループ目では比
率2.5付近、2グループ目では1.75付近まで散布
点が分布し、最後から2番目の11グループ目では、
1.1より小さいほとんど1.0近傍で散布点が分布し
ている。これより、これらの比率と同程度にTHR_R
ATE(1−12)を設定すれば、この実験データに関
し、フェーズ2のスクリーニングによっては認識率の低
下は無いと考えられる。
【0103】実際には、上記したように例えばグループ
11におけるTHR_RATE(11)=1.2として
実験データより若干の余裕を与えるようにしている。グ
ループ11までの計算で最短のものより1.2倍の距離
があるものが最後のグループ12の計算で逆転して1位
になる確率はほぼ皆無であるが、図3のステップ108
の認識処理でさらに詳細な認識を行うとか、複数の認識
候補に単語処理を使って後処理を加えるとか、或いは画
面上でのオペレータによる認識エラー修正用などの場合
等に認識候補を残すため、余裕を持ったしきい値でスク
リーニングした方が好ましいからである。
【0104】なお、図7に示された第4の例を実際のプ
ログラム上で実現する場合、一度スクリーニングされた
プロトタイプを除外して計算を行う方法として例えば図
11に示された方法がある。この方法は、次の有効なプ
ロトタイプをポイントするポインター配列(NEXT_PTR
)を用意し、まず、ポインターSTART _PTR が最初の
有効なプロトタイプを、最後の有効なプロトタイプでは
−1(LAST_PTR )というポインター値を入れて最後で
あることを示す、というものである。
【0105】図11の左欄が示すように、距離計算が始
まる前のプロトタイプが全くスクリーニングされていな
いポインターの初期状態では、NEXT_PTR は最後のプロ
トタイプを除いてすぐ次のプロトタイプをポイントする
ようになっている。
【0106】図11のグループ1におけるフェーズ1の
ポインターの状態は、初期状態と同じ状態になっている
が、フェーズ1であるプロトタイプをスクリーニングす
ると、該プロトタイプを指定するポインターを飛び越え
てその次のプロトタイプをポイントするように書き換え
る。この場合、図示のようにポインターの流れは、当該
プロトタイプをスキップして次にスクリーニングしてい
ないプロトタイプを指定するようになる。
【0107】グループ2になると、さらにスキップされ
るプロトタイプが増え、グループ12のフェーズ2まで
終了した段階では、ポインターの最終状態は、図11の
右欄のようにほとんどのプロトタイプがスキップされる
ようになっている。これより、計算量が大幅に減少する
ことがわかる。
【0108】以上のように、図4〜図7に高速最近傍点
検出処理の第1〜第4の例を示したが、具体的条件の下
で各々の処理効率の相違を一覧にすると、下記の表1の
ようになる。
【0109】
【表1】 表1において、速度は1秒間に認識できる文字数(Char
acter/sec )、RECO_RATEは認識率((正解数/認識
数)*100%)、NN_RATEは最近傍点の検出率(%)
である。なお、RECO_RATEやNN_RATEは、手書きの漢
字、ひらがな、カタカナ、数字、英字、特殊文字のカテ
ゴリー数約2800個の約26000個のテスト文字
(入力パターン;1カテゴリー当たり約9個)と、約1
00万個の学習文字から作成した8283個のプロトタ
イプ(1カテゴリー当たり約3個)との距離計算を行っ
た結果に関するものである。
【0110】また、Aは入力パターンとすべてのプロト
タイプとの距離計算を実行するスクリーニング無しの場
合、Bは、しきい値THR1のみを用いた第1の高速最
近傍点検出処理(図4)の場合、Cは、しきい値THR
2のみを用いた第2の高速最近傍点検出処理(図5)の
場合である。また、D及びEは、しきい値THR_MI
Xを用いた第3の高速最近傍点検出処理(図6)の場合
であるが、しきい値を混合させることによる効果か単に
しきい値が変わったことによる効果かを識別するために
各々パラメータ(b+d)を換えて設定したものであ
る。そして、Fは、THR_MIXとTHR_RATE
という2種類のしきい値による2フェーズのスクリーニ
ングを行う第4の高速最近傍点検出処理の場合(図7)
である。
【0111】表1に示すように、スクリーニング無しの
Aの場合には、最近傍点の定義より当然、最近傍点検出
率は100%であり、これによって認識率も他のスクリ
ーニングを行う場合と比較して最も高い値を示してい
る。しかし、速度に関しては、最も遅く、B〜Fの場合
と比べて約1/2〜1/4.5となっている。
【0112】Bの場合には、Aと比較した認識率及び最
近傍点検出率の低下はそれぞれ0.1%、0.14%と
なるが、速度は約1.94倍となる。Cの場合には、認
識率及び最近傍点検出率の低下はそれぞれ0.34%、
0.49%となり、Bに比較して大きくなるものの、速
度は約3.12倍とかなり高速化が図れる。このよう
に、THR1又はTHR2単独でもある程度の処理効率
の向上が図れることがわかる。
【0113】一方、しきい値を混合させたTHR_MI
Xを用いる場合には、速度、認識率、最近傍点検出率の
いずれもB及びCと比較して顕著に向上する。例えばD
の場合には、Aと比較した認識率及び最近傍点検出率の
低下はそれぞれ0.04%、0.05%と大幅に小さく
なり、速度に関しても約3.55倍となってB及びCよ
りさらに向上する。また、混合されたしきい値の定数を
Dとは異なるように設定したEの場合、速度に関しては
約3.76倍とさらに高速化されるが、認識率及び最近
傍点検出率の低下は、それぞれ約0.07%、約0.0
9%とDより大きくなり、全体の処理効率という点では
Dと比較して大差が無いということになる。従って、し
きい値を変えて偶然に処理効率が良くなったということ
ではなく、明らかにしきい値を混合させたことによる効
果が顕著であったということができる。
【0114】また、混合させたしきい値を用いたスクリ
ーニングに加えて、さらに2フェーズ目のクリーニング
をするFの場合には、Aと比較した速度が最高の約4.
5倍となり、さらに高速化が図れる。一方、Aと比較し
た認識率及び最近傍点検出率の低下は、それぞれ約0.
06%、約0.08%となり、すべてに関し、Eより良
い値が得られる。
【0115】表1は手書き文字に関する結果であるが、
例えば印刷文字などのように、特長量のばらつきの小さ
いものを認識対象とした場合、B〜Fの各場合でさらに
良い処理効率が得られる。特に、Fの方法を用いた印刷
文字認識の場合には、認識率をほとんど低下させること
なく、Aの速度と比較して手書き文字認識の場合の4.
5倍を遙に上回る高速化が図れる。
【0116】以上が、本発明をOCRに適用した実施の
形態の例であるが、上記例にのみ限定されるものではな
い。例えば、入力パターンの最近傍プロトタイプを検出
し、該プロトタイプが属するカテゴリーに基づいて認識
結果を出力する他のすべてのパターン認識装置に適用可
能である。このようなパターン認識装置として、例えば
音声認識装置、画像認識装置等がある。また、認識用プ
ログラムでOCRを実現する場合のみならず、文字認識
用の独自のハードウエアを持つ文字認識装置として構成
しても良い。
【0117】また、パターン認識装置としてではなく、
図4〜図7に示された方法に基づいて最近傍点を検出す
る最近傍点検出装置としても構成可能である。この最近
傍点検出方法又は最近傍点検出装置の場合、多数の実験
サンプルに基づくしきい値の決定の際に次のことに留意
する必要がある。例えば、図8では、真の最近傍点を検
出できなくても最終的にカテゴリーが一致すれば良いた
め、Y軸に、入力パターンと、その入力パターンが属す
るカテゴリーのプロトタイプの中で入力パターンに最短
のものとのその時点での距離値を各々示すようにしてい
た。しかし,最近傍検出方法等では、Y軸に、入力パタ
ーンと、その真に最近傍のプロトタイプとのその時点ま
での距離値を示し、多数のサンプルに対してプロットし
て、その分布からしきい値を決定しなければならない。
図9及び図10についても同様である。この場合におい
ても、最近傍点検出率を最低限に抑えつつ、処理の高速
化を図ることができるのはいうまでもない。
【0118】また、複数の特長次元毎に1グループとす
る場合を扱ったが、1つの特長次元を1グループとする
場合にも本発明に係る高速最近傍検出処理を適用するこ
とができる。すなわち、各次元の特長毎に計算された距
離値に基づいてスクリーニングを行うようにしても良
い。
【0119】また、第4の高速最近傍検出処理の例(図
7)では、THR_MIXとTHR_RATEに基づく
スクリーニングを組み合わせたが、THR1及びTHR
2のいずれかとTHR_RATEとを組み合わせたスク
リーニングを行っても良い。
【0120】さらに、ステップ104で抽出される特長
の種類や次元数、ステップ106で用いられる距離の種
類、図4〜図7の処理の流れ、図2の各構成等に関して
任意好適に変更可能である。
【0121】
【発明の効果】以上説明したように、請求項1の発明に
よれば、距離計算の過程でスクリーニングのしきい値を
動的に変化させるようにしたので、高速かつ高精度に最
近傍点を検出できる、という効果が得られる。
【0122】請求項2の発明によれば、スクリーニング
を1度行った後で、同じグループに関し、1回目のスク
リーニングで既に計算された結果を用いて2回目のスク
リーニングを行うようにしたので、スクリーニング処理
の追加によっては処理時間はほとんど増加せず、2つの
スクリーニングの効果が相乗して全体的な処理時間をさ
らに高速化できる、という効果が得られる。
【0123】請求項3の発明によれば、各グループまで
の累積特長量に基づいて第1のしきい値を設定するよう
にしたので、累積特長量が大きい場合には、最近傍のも
のでも距離が大きくなってスクリーニングされてしまう
おそれを回避でき、処理効率を向上させることができ
る、という効果が得られる。
【0124】請求項4の発明によれば、各グループまで
計算された特長の数に基づいて、各々の第1のしきい値
を設定するようにしたので、計算された次元数の増加と
共に、各グループまでの距離値が単調増加し、計算され
た次元数が少ないほど距離値の信頼性が低いという不公
平を回避でき、処理効率を向上させることができる、と
いう効果が得られる。
【0125】請求項5の発明によれば、入力パターンの
特長量を各グループまでの累積特長量と特長の数の両者
に基づいて各々の第1のしきい値を設定するようにした
ので、しきい値の信頼性が大幅に向上し、処理効率をさ
らに向上させることができる、という効果が得られる。
【0126】請求項6の発明によれば、累積特長量に基
づいて設定された第1の設定値と、特長の数に基づいて
設定された第2の設定値との平均値としてグループ毎の
第1のしきい値を設定するようにしたので、計算量の増
加を最小限に抑えつつ、処理効率をさらに向上させるこ
とができる、という効果が得られる。
【0127】請求項7の発明は、各グループの特長にお
ける特長量の分散が大きい順序で距離計算を行うように
したので、スクリーニングの効果が高まり、距離計算を
さらに高速化できる、という効果が得られる。
【0128】請求項8の発明によれば、距離計算の過程
でスクリーニングのしきい値を動的に変化させるように
したので、高い認識率と高速化を実現できる、という効
果が得られる。
【0129】請求項9の発明によれば、スクリーニング
を1度行った後で、同じグループに関し、1回目のスク
リーニングで既に計算された結果を用いて2回目のスク
リーニングを行うようにしたので、スクリーニング処理
の追加によっては処理時間はほとんど増加せず、2つの
スクリーニングの効果が相乗して全体的な認識に要する
処理時間をさらに高速化できる、という効果が得られ
る。
【0130】請求項10の発明によれば、各グループま
での累積特長量に基づいて第1のしきい値を設定するよ
うにしたので、累積特長量が大きい場合には、最近傍の
ものでも距離が大きくなってスクリーニングされてしま
うおそれを回避でき、高い認識率と高速化を実現でき
る、という効果が得られる。
【0131】請求項11の発明によれば、各グループま
で計算された特長の数に基づいて、各々の第1のしきい
値を設定するようにしたので、計算された次元数の増加
と共に、各グループまでの距離値が単調増加し、計算さ
れた次元数が少ないほど距離値の信頼性が低いという不
公平を回避でき、高い認識率と高速化を実現できる、と
いう効果が得られる。
【0132】請求項12の発明によれば、入力パターン
の特長量を各グループまでの累積特長量と特長の数の両
者に基づいて各々の第1のしきい値を設定するようにし
たので、しきい値の信頼性が大幅に向上し、高い認識率
と高速化をさらに高いレベルで実現できる、という効果
が得られる。
【0133】請求項13の発明によれば、累積特長量に
基づいて設定された第1の設定値と、特長の数に基づい
て設定された第2の設定値との平均値としてグループ毎
の第1のしきい値を設定するようにしたので、計算量の
増加を最小限に抑えつつ、高い認識率と高速化をさらに
高いレベルで実現できる、という効果が得られる。
【0134】請求項14の発明は、各グループの特長に
おける特長量の分散が大きい順序で距離計算を行うよう
にしたので、スクリーニングの効果が高まり、認識処理
をさらに高速化できる、という効果が得られる。
【図面の簡単な説明】
【図1】本実施の形態に係るOCRのシステム構成例を
示す図である。
【図2】本実施の形態に係るOCRの構成ブロック図で
ある。
【図3】本実施の形態に係るOCRの文字認識処理の流
れを示すフローチャートである。
【図4】本実施の形態に係るOCRの高速最近傍点検出
処理の第1の例を示すフローチャートである。
【図5】本実施の形態に係るOCRの高速最近傍点検出
処理の第2の例を示すフローチャートである。
【図6】本実施の形態に係るOCRの高速最近傍点検出
処理の第3の例を示すフローチャートである。
【図7】本実施の形態に係るOCRの高速最近傍点検出
処理の第4の例を示すフローチャートである。
【図8】入力パターンの当該グループ数までの累積特長
量と正解カテゴリーのプロトタイプとの市街地距離との
関係を多数の実験サンプルについてプロットし、しきい
値THR1を決定するための図である。
【図9】グループ数と正解カテゴリーのプロトタイプと
の市街地距離との関係を多数の実験サンプルについてプ
ロットし、しきい値THR2を決定するための図であ
る。
【図10】グループ数と、当該グループ数で最短となっ
たプロトタイプとの市街地距離に対する正解カテゴリー
のプロトタイプとの市街地距離との関係を多数の実験サ
ンプルについてプロットし、しきい値THR_RATE
を決定するための図である。
【図11】次の有効なプロトタイプを指定するポインタ
ーの初期状態、各グループ毎の状態、及び最終状態を示
す図である。
【符号の説明】
16 スキャナ 22 CPU 28 辞書メモリ
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成8年5月23日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正内容】
【書類名】 明細書
【発明の名称】 近傍点検出方法及びパターン認識装
【特許請求の範囲】
【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、N次元の特長空間
に多数の標本点が分布している時、該特長空間における
新しい入力点がどの標本点に最も近いかを、距離計算の
途中で最近傍となる可能性のきわめて低い標本点を除外
することによって、高速に検出する近傍点検出方法及び
該検出方法を応用したパターン認識装置に関する。
【0002】
【従来の技術】従来、N次元(Nは自然数)の特長空間
に多数の標本点が存在する時、ある入力点(N次元の特
長を持つ)が、どの標本点に最も近いかを高速に計算す
る問題は、非常に多くの応用があり、古くから研究され
てきた。この応用の一例としてパターン認識が挙げられ
る。このパターン認識への応用の場合、標本点は認識対
象となる各カテゴリーのプロトタイプの集合であり、入
力点は認識されるべきサンプルである。また、N次元特
長空間の各次元の値は所謂OCR(optical character
reading )のような文字認識装置の場合、文字パターン
から抽出された各々の特長値に相当する。最も簡単な認
識方法は、入力点に最も近い標本点(最近傍点)が属す
るカテゴリーを認識結果とするものである。
【0003】ここで、次元数Nの値がかなり小さい場合
(数次元程度)は、理論的な高速検出方法が存在する。
しかし、Nが大きくなると(例えば数十次元以上)、入
力点と多数の標本点との距離計算量が急激に増大し、高
速で最近傍を厳密に保証する理論的な方法は存在しない
と言われている。従って、現実的な応用では、最近傍の
保証よりも高速性と認識率の最小限の低下とのトレード
オフが重要になってくる。
【0004】そこで、従来から、認識率の低下が最小限
に抑えられる範囲の高確率で高速に最近傍点を検出する
ための色々な検出方法が考えられている。これらの検出
方法では、距離計算の前若しくは途中で最近傍となる可
能性の極めて低い標本点を計算対象から除外(スクリー
ニング)することにより演算量を軽減させて高速化を図
っている。例えばOCRで200次元の特長を主なもの
として使う場合、その前に200次元を20次元に圧縮
した特長でスクリーニングする方法、別のもっと簡単な
特長で予めスクリーニングを行う方法などがある。ま
た、「階層的パターンマッチングにおける簡易高速識別
方法」(情報処理学会第33回全国大会、pp1643
(1986);曽根、加藤、高橋)には、200次元の
距離計算の途中で切り捨て用の単純なしきい値と比較し
て最近傍である可能性の極めて低い標本点を次々とスク
リーニングする方法が開示されている。勿論、これらの
方法の組み合わせも有効である。
【0005】
【発明が解決しようとする課題】しかしながら、上記従
来の最近傍検出方法では、一定のしきい値や単純化した
特長量を用いてスクリーニングを行うため、十分な高速
化を図ろうとすると最近傍点である標本点をスクリーニ
ングする可能性がかなり高まり、逆に最近傍点の検出率
を向上させようとしてスクリーニングを緩和すると、十
分な高速化が図れなくなる、という問題が生じる。すな
わち、従来技術では、高速性と認識率の最小限の低下と
のトレードオフで決定される処理効率が満足のいくもの
ではなかった。
【0006】本発明は上記事実を考慮し、距離計算の過
程でスクリーニングのしきい値を動的に変化させること
によって大幅に処理効率を向上させた近傍点検出方法
び該方法を応用した高速かつ高認識率のパターン認識装
置を提供することを目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するため
に、請求項1の発明は、複数の特長が各々の次元として
構成された特長空間において、該特長空間に分布する複
数の標本点と入力点との距離値を各々計算し、該距離値
に基づいて前記入力点近傍の標本点を検出する近傍点検
出方法において、前記複数の特長を、各々1又は2以上
の特長毎に所定の順序が割り当てられた複数のグループ
に予め分類しておき、各グループまでの特長に関連した
情報量に基づいて、少なくとも2つのグループにおいて
各々異なる第1のしきい値を各グループ毎に設定し、
記所定の順序に従って、各々のグループに属する特長次
元から構成される部分特長空間における前記入力点と前
記複数の標本点との部分距離値を計算し、該部分距離値
を累積的に加算することにより、前記複数の標本点と入
力点との累積距離値を各々求めていくと共に、あるグル
ープまで計算された累積距離値が、該グループで設定さ
れた前記第1のしきい値を越えた場合には、前記累積距
離値を与えた標本点を、これより後のグループにおける
距離計算の対象から除外することを特徴とする。
【0008】請求項1の発明では、例えば、特長空間が
192次元ある場合に16次元毎12グループに均等に
分類しておき、各々のグループに属する特長次元から構
成される部分特長空間における複数の標本点と入力点と
の部分距離値を計算し、該部分距離値を累積的に加算す
ることにより、16次元、32次元、...、192次
元までの複数の標本点と入力点との累積距離値を各々求
めていく(最後のグループまでの累積距離値は、全特長
空間における真の距離値となる)。従って、各グループ
までの特長に関連した情報量、例えば距離計算の対象と
なった特長数等の増加につれて、累積距離値は大きく、
また該累積距離値の信頼度等が向上する。そこで、この
変化に応じて各グループまでの特長に関連した情報量に
基づきグループ毎に第1のしきい値を更新して(少なく
とも2つのグループで異なれば良い)該しきい値を越
える累積距離値を与えた標本点を以降の計算から除外
(スクリーニング)する。これによって、一定のしきい
値を用いてスクリーニングする従来の方法と比べて、真
の最近傍点を途中でスクリーニングするおそれを回避し
て最近傍点の検出率を高めることと、高速化とを両立で
きる。すなわち、最近傍点の検出率と高速化のトレード
オフで決定される処理効率を高めることができる。な
お、グループ毎の第1のしきい値を、入力点が属するサ
ンプル集団における各グループまでの特長に応じた統計
的性質等に基づいて設定すれば良い。また、最近傍点の
みならず、2、3、...番目に近い標本点を検出して
も良い。
【0009】また、請求項2の発明は、複数の特長が各
々の次元として構成された特 長空間において、該特長空
間に分布する複数の標本点と入力点との距離値を各々計
算し、該距離値に基づいて前記入力点近傍の標本点を検
出する近傍点検出方法において、前記複数の特長を、各
々1又は2以上の特長毎に所定の順序が割り当てられた
複数のグループに予め分類しておき、各グループまでの
特長に関連した情報量に基づいて、少なくとも2つのグ
ループにおいて各々異なる第1のしきい値を各グループ
毎に設定し、前記所定の順序に従って、各々のグループ
に属する特長次元から構成される部分特長空間における
前記入力点と前記複数の標本点との部分距離値を計算
し、該 部分距離値を累積的に加算することにより、前記
複数の標本点と入力点との累積距離値を各々求め、さら
に該累積距離値の最小値を各グループ毎に求めていく
共に、あるグループまで計算された累積距離値が該グル
ープで設定された前記第1のしきい値を越えた場合に
は、前記累積距離値を与えた標本点を、これより後のグ
ループにおける距離計算の対象から除外し、前記第1の
しきい値による標本点の除外を行ったグループにおい
て、前記最小値に基づいて第2のしきい値を設定し、前
記第2のしきい値を越える累積距離値を与えた標本点
、これより後のグループにおける距離計算の対象から
除外することを特徴とする。
【0010】請求項2の発明は、請求項1の発明が1段
階のスクリーニングを行っていたのに対し、2段階のス
クリーニングを行うようにしたものである。すなわち、
各グループまでの累積距離値が、第1のしきい値を越え
標本点をスクリーニングし、さらにこの第1のスクリ
ーニング処理を受けたグループに対し、当該グループま
での累積距離値の最小値に基づいた第2のしきい値を設
定する。そして、このグループまでの累積距離値が第2
のしきい値を越えるような標本点をさらにスクリーニン
グする。なお、第2のスクリーニングにおいて、第1の
スクリーニングによって除外された標本点は、当然、処
理の対象とはならない。このようにスクリーニングを1
度行った後で、同じグループに関し、1回目のスクリー
ニングで既に計算された結果を用いて2回目のスクリー
ニングを行うようにしたので、スクリーニング処理の追
加によっては処理時間はほとんど増加せず、2つのスク
リーニングの効果が相乗して全体的な処理時間をさらに
高速化できる、また、第2のしきい値を最小値に基づい
て設定する際に、距離計算される順序が最後のグループ
に近くなるにつれて距離値の信頼性が増えるので、最小
値に対する第2のしきい値の比を小さくするように設定
すれば、スクリーニングがより効果的になる。この第2
のしきい値も、入力点が属するサンプル集団における各
グループの特長に応じた統計的性質等に基づいて設定す
れば良い。
【0011】また、請求項3の発明は、請求項1又は請
求項2の発明において、前記入力点の特長量を前記所定
の順序に従って各グループに属する特長まで累積的に加
算した各々の累積特長量に基づいて、各グループの前記
第1のしきい値を設定することを特徴とする。
【0012】請求項3の発明では、第1のしきい値を、
計算途中の次元数とは直接に は無関係な累積特長量に基
づいて設定する。例えば入力点の各グループまでの累積
特長量が小さい場合は、第1のしきい値を小さく設定
し、累積特長量が大きい場合は、第1のしきい値を大き
く設定する。これによって、累積特長量が大きい場合に
は、最近傍のものでも距離が大きくなってスクリーニン
グされてしまう、という不公平が防止され、処理効率を
向上させることができる。
【0013】請求項4の発明は、請求項1又は請求項2
の発明において、前記所定の順序に従って各グループま
での特長の数を累積的に加算した各々の累積特長数に基
づいて、各グループの前記第1のしきい値を設定するこ
とを特徴とする。
【0014】請求項4の発明は、所定の順序に従って各
グループまでの特長の数を累 積的に加算した各々の累積
特長数に基づいて第1のしきい値を設定する。これによ
って、計算された次元数の増加と共に、各グループまで
の距離値が単調増加し、計算された次元数が少ないほど
距離値の信頼性が低い、という不公平が防止されて処理
効率を向上させることができる。
【0015】請求項5の発明は、請求項1又は請求項2
の発明において、前記入力点の特長量を前記所定の順序
に従って各グループに属する特長まで累積的に加算した
各々の累積特長量と、前記所定の順序に従って各グルー
プまでの特長の数を累積的に加算した各々の累積特長数
とに基づいて、各グループの前記第1のしきい値を設定
することを特徴とする。
【0016】請求項5の発明では、累積特長量と累積特
長数とに基づいて第1のしき い値を設定する。例えば、
累積特長量に基づいて得られるしきい値と累積特長数に
基づいて得られるしきい値の両者の関数として、第1の
しきい値を設定する。このような2種類のしきい値の混
合によって、第1のしきい値の信頼性が大幅に向上し、
処理効率をさらに向上させることができる。なお、2種
類のしきい値の関数として、例えば非線形関数や重み付
き平均値等がある。
【0017】請求項6の発明は、請求項5の発明におい
て、各グループの前記累積特 長量に基づいて得られたし
きい値と前記累積特長数に基づいて得られたしきい値と
の平均値を、各グループの前記第1のしきい値として設
定することを特徴とする。
【0018】請求項6の発明では、上記2種類のしきい
値の関数として最も簡単な平 均値をとる関数を用いるこ
とにより第1のしきい値を求める。これにより、計算量
の増加を最小限に抑えると共に、処理効率をさらに向上
させることができる。
【0019】請求項7の発明は、請求項1〜請求項6の
発明において、各グループに割り当てられた前記所定の
順序は、各グループの特長における特長量の分散が大き
い順序であることを特徴とする。
【0020】請求項7の発明では、最も分類計算に寄与
する重要な特長を有するグループから順番に計算すると
いうものであり、重要度の尺度として特長量の分散値を
用いたものである。これによって、スクリーニングの効
果が高まり、距離計算をさらに高速化できる。
【0021】以上の最近傍点検出方法をパターン認識に
それぞれ応用したものが、次の請求項8〜請求項14の
パターン認識装置に係る発明である。
【0022】請求項8の発明は、入力パターンが入力さ
れる入力手段と、前記入力手段に入力した入力パターン
から複数の特長量を抽出し、複数の特長が各々の次元と
して構成された特長空間の入力点として表現する特長抽
出手段と、前記特長空間に分布する複数の標本点を認識
カテゴリー毎に予め格納しておく記憶手段と、前記複数
の特長を、各々1又は2以上の特長毎に所定の順序が割
り当てられた複数のグループに予め区分しておくと共
に、各グループまでの特長に関連した情報量に基づい
て、少なくとも2つのグループにおいて各々異なる第1
のしきい値を各グループ毎に設定する第1のしきい値設
定手段と、前記所定の順序に従って、各々のグループに
属する特 長次元から構成される部分特長空間における前
記入力点と前記複数の標本点との部分距離値を計算し、
該部分距離値を累積的に加算することにより、前記複数
の標本点と入力点との累積距離値を各々求めていく距離
計算手段と、前記距離計算手段によって、あるグループ
まで計算された累積距離値が、該グループで設定された
前記第1のしきい値を越えた場合には、前記累積距離値
を与えた標本点を、これより後のグループにおける距離
計算の対象から除外する第1のスクリーニング手段と、
前記距離計算手段により最後のグループの特長まで計算
された全特長空間における距離値の少なくとも最小値を
与える標本点を検出する近傍点検出手段と、前記近傍点
検出手段によって検出された標本点が属する認識カテゴ
リーに基づいて前記入力パターンが属する認識カテゴリ
ーを判定する認識手段と、を含んで構成したものであ
る。
【0023】請求項9の発明は、入力パターンが入力さ
れる入力手段と、前記入力手段に入力した入力パターン
から複数の特長量を抽出し、複数の特長が各々の次元と
して構成された特長空間の入力点として表現する特長抽
出手段と、前記特長空間に分布する複数の標本点を認識
カテゴリー毎に予め格納しておく記憶手段と、前記複数
の特長を、各々1又は2以上の特長毎に所定の順序が割
り当てられた複数のグループに予め区分しておくと共
に、各グループまでの特長に関連した情報量に基づい
て、少なくとも2つのグループにおいて各々異なる第1
のしきい値を各グループ毎に設定する第1のしきい値設
定手段と、前記所定の順序に従って、各々のグループに
属する特 長次元から構成される部分特長空間における前
記入力点と前記複数の標本点との部分距離値を計算し、
該部分距離値を累積的に加算することにより、前記複数
の標本点と入力点との累積距離値を各々求めていく距離
計算手段と、前記距離計算手段によって、あるグループ
まで計算された累積距離値が、該グループで設定された
前記第1のしきい値を越えた場合には、前記累積距離値
を与えた標本点を、これより後のグループにおける距離
計算の対象から除外する第1のスクリーニング手段と、
前記距離計算手段により求められた累積距離値の最小値
を各グループ毎に算出する最小値算出手段と、前記最小
値算出手段によって算出された各グループの最小値に基
づいて各グループの第2のしきい値を各々設定する第2
のしきい値設定手段と、前記第1のスクリーニング手段
による標本点のスクリーニングが行われたグループに関
し、次のグループの距離計算に移行する前に、前記第2
のしきい値を越える累積距離値を与えた標本点を、これ
より後のグループにおける距離計算の対象から除外する
第2のスクリーニング手段と、前記距離計算手段により
最後のグループの特長まで計算された全特長空間におけ
る距離値の少なくとも最小値を与える標本点を検出する
近傍点検出手段と、前記近傍点検出手段によって検出さ
れた標本点が属する認識カテゴリーに基づいて前記入力
パターンが属する認識カテゴリーを判定する認識手段
と、を含んで構成したものである。
【0024】請求項10の発明は、請求項8又は請求項
9の前記第1のしきい値設定手段が、前記入力点の特長
量を前記所定の順序に従って各グループに属する特長ま
で累積的に加算した各々の累積特長量に基づいて、各グ
ループの前記第1のしきい値を設定することを特徴とす
る。
【0025】請求項11の発明は、請求項8又は請求項
9の前記第1のしきい値設定手段が、前記所定の順序に
従って各グループまでの特長の数を累積的に加算した各
々の累積特長数に基づいて、各グループの前記第1のし
きい値を設定することを特徴とする。
【0026】請求項12の発明は、請求項8又は請求項
9の前記第1のしきい値設定手段が、前記入力点の特長
量を前記所定の順序に従って各グループに属する特長ま
で累積的に加算した各々の累積特長量と、前記所定の順
序に従って各グループまでの特長の数を累積的に加算し
た各々の累積特長数とに基づいて、各グループの前記第
1のしきい値を設定することを特徴とする。
【0027】請求項13の発明は、請求項12の前記第
1のしきい値設定手段が、 グループの前記累積特長量
に基づいて得られたしきい値と前記累積特長数に基づい
て得られたしきい値との平均値を、各グループの前記第
1のしきい値として設定することを特徴とする。
【0028】請求項14の発明は、請求項8乃至請求項
13のいずれか1項において、各グループに割り当てら
れた前記所定の順序が、各グループの特長における特長
量の分散が大きい順序であることを特徴とする。
【0029】以上、請求項8乃至請求項14の発明によ
れば、請求項1乃至請求項7の各々の発明と同様に高速
かつ高精度に最近傍点が検出されるので、高速で入力パ
ターンを認識できると共に、最近傍点の検出率と相関の
高い認識率が向上する。
【0030】
【発明の実施の形態】以下、本発明をOCRに適用した
実施の形態について図面を参照して説明する。
【0031】本実施の形態に係るOCRのシステム構成
例を図1に示す。図1に示すように、本実施の形態に係
るOCRシステムは、文字認識に必要な処理を実行する
パーソナルコンピュータ本体10と、文字認識結果等を
表示するCRT12と、オペレータの入力手段であるキ
ーボード14と、画像入力用のスキャナ16とから構成
されている。すなわち、本OCRシステムは、パーソナ
ルコンピュータが文字認識用プログラムによって文字認
識を行うようになっている。スキャナ16は、OCR帳
票18に光を照射しながら走査し、その反射光を2値に
量子化することによってOCR帳票18のデジタル画像
データを出力する装置であり、パーソナルコンピュータ
本体10とケーブル20を介して接続されている。
【0032】次に、本OCRシステムの構成ブロックを
図2に示す。図2に示すように、本OCRシステムは、
所定のプログラムに従って後述する各構成部を制御する
CPU22と、CPU22の制御用のプログラムを格納
するためのプログラムROM24と、CPU22の作業
域及びデジタル画像データの格納用として使用されるR
AM26と、を含んで構成され、データや命令を伝達す
るためのバス30に各々接続されている。
【0033】また、バス30には、文字認識の対象とな
るカテゴリー毎に各々複数個用意された典型的な文字パ
ターン(プロトタイプ)の特長量を格納しておく辞書メ
モリ28が接続されており、CPU22がアクセスでき
るようになっている。このプロトタイプは、極めて多数
の文字パターンの後述する特長ベクトルをカテゴリー毎
にクラスタリングすることによって求められる。また、
この辞書メモリ28は、パーソナルコンピュータ本体1
0に内蔵された磁気ディスク装置等によって構成され
る。なお、外付けの磁気ディスク装置や光磁気ディスク
装置等によって構成しても良い。
【0034】また、バス30には、挿入されたフロッピ
ーディスク36にアクセスし、データのリード/ライト
が可能なフロッピーディスクドライブ32、CRT1
2、キーボード14、及びスキャナ16とのインターフ
ェイスを制御するスキャナインターフェイス制御回路3
4が接続されている。
【0035】上記のように構成されたOCRシステムに
文字認識を実行させる場合、オペレータはパーソナルコ
ンピュータを立ち上げ、スキャナ16に文字認識の対象
となる文字が書かれたOCR帳票18をセットする。そ
して、文字認識プログラムを格納したフロッピディスク
36を挿入してキーボード14によって認識動作を命令
する。そして、フロッピーディスクドライブ32がフロ
ッピーディスク36に格納された文字認識用のプログラ
ムを読み取ってバス30を介してCPU22に伝達し、
このCPU22が、文字認識用プログラムに従い各構成
部を制御することによって文字認識処理を実行する。
【0036】次に、上記文字認識処理について図3のフ
ローチャートによって説明する。図3に示すように、先
ずスキャナ16がOCR帳票18の画像を走査しデジタ
ル画像データへの変換を行う(ステップ100)。この
デジタル画像データは、ケーブル20を介してスキャナ
インターフェイス制御部34によってバス30へ転送さ
れてRAM26に格納される。
【0037】次に、RAM26に格納されているデジタ
ル画像データの文字領域を抽出し、さらに個々の文字パ
ターンを他の画像領域から切り出す(ステップ10
2)。文字領域の切り出し処理では、文字認識用プログ
ラムにOCR帳票18の文字枠領域の位置を予め与えて
おき、その位置をCPU22が認識して切り出し処理を
行う、というものである。また、文字パターンの切り出
しでは、例えば文字パターンの上下左右の端を検出し、
これらの端点を通過する上下左右の辺よりなる外接枠を
求め、その内部のデータを入力パターンとして抽出す
る。
【0038】次に、切り出された入力パターンの特長量
を抽出し、入力パターンの特長を十分に反映した情報圧
縮された特長ベクトルを作成する(ステップ104)。
この特長量抽出では、例えば次のような処理を行う。
【0039】先ず入力パターンを縦横に一定の大きさ、
例えば60ドット×60ドットに正規化する。次に、正
規化された入力パターンの細線化を行う。この細線化の
方法として例えばHilditchの方法等がある。そして、こ
の細線化パターンを例えば4つのルック(射影)方角に
関し、12の区画に分割し、各々の領域毎に、連結素の
数を4方向毎に計数し、各々の計数結果を各次元の特長
値として多次元のベクトルを作成する。ここで、4つの
ルック方角とは、縦、横、右斜め45度、左斜め45度
の4つの射影方角をいい、これらの方角の各々に沿って
細線化パターンの12区画内の連結素の数を各々計数す
る。また、連結素とは、細線化パターンを構成する各黒
点に関し、例えば右隣、下隣、右斜め下、左斜め下の隣
接点をいい、各々の隣接点が黒点である場合に、それぞ
れの方向量に1を加算する。また、連結素方向とルック
方角によって計数に重みを付け、各特長量の寄与を平滑
化するようにしている。なお、上述の特長抽出方法で
は、4(連結素方向の数)×12(区画数)×4(ルッ
ク方角)=192次元の特長ベクトルが作成される。以
下では、192次元の特長ベクトルを前提として説明す
る。
【0040】次に、入力パターンの特長ベクトルと、辞
書メモリ28に格納されているプロトタイプの文字パタ
ーンとの距離計算を実行し、距離の最も小さいプロトタ
イプ(最近傍点)を検出し、当該プロトタイプの属する
カテゴリーを認識候補として抽出する(ステップ10
6)。なお、認識率を向上させるために、最近傍点だけ
ではなく、距離の小さい順に幾つかのプロトタイプのカ
テゴリーを認識候補として抽出するようにしても良い。
【0041】ステップ106では、入力パターンとプロ
トタイプとの距離は、最も簡単な市街地距離(City Blo
ck Distance )Dcbの場合、次式のように計算される。
【0042】 但し、Pi は、あるプロトタイプのi番目の特長値、F
i は入力パターンのi番目の特長値を示す。なお、以下
ではこの市街地距離を例として説明するが、入力パター
ンとプロトタイプとの類似度を反映できればこの例に限
られず、例えば所謂ユークリッド距離等でも良い。
【0043】ここで、例えば、手書き漢字、ひらがな、
カタカナ、数字、英字、特殊文字等に渡って約2800
個のカテゴリーを認識対象とし、各カテゴリーに平均3
個程度の計8283個のプロトタイプを用意した場合、
真の最近傍点を検出するためには、入力パターンとすべ
てのプロトタイプとの各々の特長ベクトル同士で(1)
式の計算を行わなければならず、きわめて大量の計算量
が必要となる。そこで、本実施の形態では、ステップ1
06で、高速最近傍点検出処理を実行し、最近傍点の検
出率をほとんど落とすことなく高速化を図っている。こ
の高速最近傍点検出処理は、192次元の特長を複数の
グループに分類し、この各々のグループ毎に順に計算さ
れる途中結果としての距離値が、計算過程で動的に変化
させて設定されたしきい値より小さい場合、その距離値
を与えたプロトタイプを次々とスクリーニングして以降
の距離計算を行うというものである。詳細については以
下に後述する。
【0044】次に、ステップ106で抽出された認識候
補から最終的な認識結果を選ぶ認識処理を実行する(ス
テップ108)。この認識処理では、例えば認識候補の
コード列を予め用意された単語辞書と照合し、また前後
の単語の文脈情報等に基づいてあり得ない認識候補を排
除することなどによって、最適な認識候補を認識結果と
して選択するというものである。これにより、単に最近
傍点の属するカテゴリーを認識結果とする方法よりも認
識率を向上させることができる。なお、最終目標である
認識率を低下させないことと、最近傍点の検出率を落と
さないこととは高い相関があり、ステップ106の高速
最近傍点検出処理によって高速かつ高精度の認識率が達
成できる。
【0045】最終的な認識結果が得られると、認識結果
を出力して(ステップ110)、文字認識処理を終了す
る。例えば、磁気ディスク装置等の記憶装置に認識結果
を出力し、データベース化する。また、CRT12に認
識結果を表示して、オペレータに認識結果の正誤を判断
修正させるようにしても良い。
【0046】次に、上記ステップ106の高速最近傍点
検出処理について、以下に詳細に説明する。
【0047】まず、距離計算を行う前に、192次元の
特長量をスクリーニング効果の大きい順に予め並べ替え
ておくことが処理の高速化の点で好ましい。本実施の形
態では、例えば辞書メモリ28に格納されている828
3個のプロトタイプから192次元の特長量の各々の分
散値を計算し、その分散値の大きい順に特長量を並べ替
え、この順に距離計算を行う。このように並べ替えたの
は、分散の大きいものは分類計算に対する寄与率が高い
ので、その順で計算した方が早めに収束(スクリーニン
グ)するからである。
【0048】そして、分散値の大きい順に並べ替えた1
92次元の特長量を、順番に16次元ずつ、計12個の
グループに分類しておく。なお、このグループ内次元数
やグループ数は、この例に限られず、例えば8次元ずつ
24グループに分類しても良い。
【0049】この高速最近傍点検出処理では、スクリー
ニング用のしきい値を各グループ毎に動的に変化させる
が、しきい値を如何に設定するか、設定されたしきい値
を如何にスクリーニングに適用するか、によって様々な
態様がある。そこで、本実施の形態では、高速最近傍点
検出処理として第1〜第4の例を挙げ、それぞれ図4〜
図7によって説明する。
【0050】図4に示すように、高速最近傍点検出処理
の第1の例では、まず初めにグループ1〜12の各々に
ついてのしきい値THR1(1)〜THR1(12)
(THR1(1−12))を計算する(ステップ12
0)。これらのしきい値THR1(1−12)は、各グ
ループまでの入力パターンの累積特長量に基づいて設定
される。例えば、累積特長量がまだ小さい場合にはしき
い値THR1(1−12)を小さく設定し、大きくなる
に従い、THR1(1−12)を大きくしていく。すな
わち、各しきい値THR1(1−12)は、累積特長量
の関数となっている。ここで、各グループまでの累積特
長量とは、当該パターンの192次元の特長値を各グル
ープにおける最後の次元(16、32、...、19
2)まで総和したものをいう。なお、後述するように、
各グループ毎に計算された距離が各々のしきい値THR
1(1−12)を越えるようなプロトタイプは、次々と
スクリーニングされ、それ以降の距離計算から除外され
る。
【0051】このようにTHR1(1−12)を、距離
計算の途中での次元数とは直接には無関係な累積特長量
に基づいて設定したのは、次のような理由による。すな
わち、図3のステップ104で抽出された特長は、文字
のストローク量を正規化していないため、ストローク量
の少ない異なる字種の文字同士の距離は大きくならない
が、逆にストローク量の多い文字では、同一の字種のサ
ンプル同士でも距離が大きくなる、という不公平が生じ
るからである。
【0052】具体的なしきい値THR1(1−12)の
設定方法として例えば実際の実験データをプロットした
図8のグラフに基づく次のような方法がある。図8で
は、X軸は、あるグループまでの累積特長量、Y軸は、
入力パターンと、入力パターンが属するカテゴリーのプ
ロトタイプの中で入力パターンに最短のものとのその時
点での距離値を各々示し、多数の文字パターンに対して
プロットされている。さらに図8では、しきい値THR
1(1−12)を累積特長量Xに基づいて定める関数式
として次式で与えられる直線が示されている。
【0053】 THR1(n) = a・X(n) + b ・・・・(2) 但し、a、bは正の定数、nはグループ番号、X(n)
はグループnまでの累積距離値である。図8に示すよう
に、(2)式の直線は、大部分の散布点が、その下側に
くるようにaとbとが設定されている。もし、この直線
がすべての散布点より上にあれば、この実験に使われた
データに関し、スクリーニングにより認識率が下がるこ
とはない。
【0054】また、(2)式のbは必ず正の値で一定値
以上でなければならない。何故なら、累積特長量Xの小
さいものには、まだ途中の16次元や32次元程度まで
しか計算されていないものが多い上、分散値の大きい特
長からソートされているので、bが0近傍の値の場合、
正しいカテゴリーのプロトタイプがスクリーニングされ
る危険性が高いからである。なお、(2)式のような簡
単な線形関数の他に、散布点の分布をもっと正確に反映
した非線形関数等を用いても良い。次に、1から192
までの次元を指定するための次元番号i、16次元毎に
12個に分類されたグループを指定するためのグループ
番号j、1からN(8283)までのすべてのプロトタ
イプを指定するためのプロトタイプ番号kを各々1に設
定する(ステップ130)。また、入力パターンと1か
らNまでのプロトタイプとの(1)式に基づく各々の市
街地距離をDcb(1)〜Dcb(N)とし、これらをすべ
て0に、さらに最小距離Dmi n を最大値(例えば655
36)に設定する(ステップ130)。
【0055】次に、入力パターンと各プロトタイプとの
距離計算を次式によって実行する(ステップ132)。
【0056】 Dcb(k) = Dcb(k) + |Fk (i) − P(i)| ・・・・・(3) 但し、Fk (i)は、k番目のプロトタイプ(プロトタ
イプk)のi番目の次元(次元i)の特長値であり、P
(i)は、入力パターンの次元iにおける特長値であ
る。ここで、最初はi=1、k=1であるから、1番目
のプロトタイプと入力パターンとの各々1番目の特長値
の市街地距離が算出されてDcb(k)に加算される。
【0057】次に、次元番号iを1だけ加算し(ステッ
プ134)、iがj番目のグループ(グループj)にお
いて最後の次元番号を越えているか否かを判定する(ス
テップ136)。なお、本実施の形態においては、グル
ープ1、2、...12の最後の次元番号は各々16、
32、....192となる。
【0058】iがグループjの最後の次元番号を越えて
いない場合(ステップ136否定判定)、ステップ13
2に戻って同様の処理を繰り返す。すなわち、ステップ
132〜ステップ136では、グループjの特長値に関
する市街地距離をDcb(k)に加算する。
【0059】iがグループjの最後の次元番号を越えて
いる場合(ステップ136肯定判定)、グループjにお
ける最後の次元まで計算された市街地距離Dcb(k)が
グループjに関するしきい値THR1(j)を越えてい
るか否かを次式のように判定する(ステップ137)。
【0060】 Dcb(k) > THR1(j) ・・・・・(4) (4)式が成立すると判定した場合(ステップ137肯
定判定)、プロトタイプkのスクリーニングを行い(ス
テップ140)、次の処理(ステップ148)に移行す
る。すなわち、これ以降の距離計算においてプロトタイ
プkは除外される。ここで(4)式が成立するというこ
とは、図8によれば、当該プロトタイプkが(2)式の
直線の上側で散布点がほとんどない領域にあるというこ
とを意味する。従って、このようなプロトタイプが正解
を与える可能性は極めて少なく、これをスクリーニング
しても認識率をほとんで低下させることなく、これ以降
の距離計算を高速化することができる。
【0061】(4)式が成立しないと判定した場合(ス
テップ137否定判定)、次のような最小距離と最近傍
プロトタイプを求める処理を行う。まずグループ番号j
が最後のグループ番号12であるか否かを判定し(ステ
ップ142)、最後のグループ番号12であった場合の
み(ステップ142肯定判定)、市街地距離Dcb(k)
がこれまでに求められた最小距離Dmin より小さいか否
かを次式のように判定する(ステップ144)。
【0062】 Dcb(k) < Dmin ・・・・・(5) (5)式が成立すると判定した場合(ステップ144肯
定判定)、Dmi n の値をDcb(k)の値に変更し、最近
傍点のプロトタイプ番号を指定するための最近傍点番号
minにkを代入する(ステップ146)。
【0063】jが最後のグループ番号12でなかった場
合(ステップ142否定判定)、直ちに次の処理(ステ
ップ148)に移行する。途中経過の距離計算では、真
の最近傍点が検出できないためである。また、(5)式
が成立しないと判定した場合にも(ステップ144否定
判定)、直ちに次の処理(ステップ148)に移行す
る。
【0064】以上のようにしてプロトタイプkに関しグ
ループjまでの処理が終了したら、スクリーニングされ
ていない次のプロトタイプが有るか否かを判定する(ス
テップ148)。
【0065】スクリーニングされていない次のプロトタ
イプが有る場合(ステップ148肯定判定)、スクリー
ニングされていない次のプロトタイプ番号にkを更新す
る(ステップ150)。そして、ステップ132に戻
り、同様にこの更新されたプロトタイプについての距離
計算、スクリーニング判定等を行う。なお、最初のグル
ープ1の処理の場合、プロトタイプkの直後のプロトタ
イプは、まだステップ137のスクリーニング判定の対
象ともなっていないので、単純にkが1だけ更新されて
k+1となる。しかし、グループ2以降の処理では、プ
ロトタイプk+1がスクリーニングされている可能性が
あり、かかる場合には、スクリーニングされたプロトタ
イプの番号を飛び越えて最初のスクリーニングされてい
ないプロトタイプの番号が選択される。
【0066】スクリーニングされていない次のプロトタ
イプが無い場合(ステップ148否定判定)、グループ
jの処理を終了し、次のグループに関する処理に移行す
るためグループ番号jを1だけ加算する(ステップ16
2)。
【0067】次に、グループ番号jが最後のグループ番
号12を越えているか否かを判定する(ステップ16
4)。グループ番号12を越えていない場合には(ステ
ップ164否定判定)、スクリーニングされていない最
初のプロトタイプ番号にkを戻し(ステップ166)、
ステップ132に戻って同様の処理を繰り返す。すなわ
ち、更新されたグループjのスクリーニングされていな
い最初のプロトタイプから、距離計算、スクリーニング
等を実行する。
【0068】グループ番号12を越えている場合は(ス
テップ164肯定判定)、最後の192次元まで距離計
算、スクリーニング等が完了しているので、高速最近傍
点検出処理を終了する。
【0069】以上のように、スクリーニング途中での次
元数とは直接には無関係な累積特長量の関数でしきい値
がグループ毎に動的に設定されていくので、文字種によ
ってストローク長が違うことからくる距離値の不公平が
是正され、認識率の低下を最小限に抑えられると共に、
スクリーニングによって高速に最近傍点を検出すること
ができる。なお、図4の処理では、ステップ142〜ス
テップ146で最近傍のプロトタイプ(第1位の認識候
補)のみを求めているが、2、3、...番目に近い各
々異なるカテゴリーのプロトタイプ(第2位、第3
位、...の認識候補)を求めても良い。
【0070】図4の例では、次元数とは直接には無関係
な累積特長量の関数でしきい値を求めていたが、次元数
の関数でしきい値を求めることにより、次元数が少ない
ほど距離値の信頼性が低い、という不公平を軽減するこ
とができる。これを第2の高速最近傍点検出処理として
図5に示す。なお、図5では、図4と同一内容のステッ
プに同一の番号を付して説明を省略する。
【0071】図5に示すように、まずグループ1〜12
のしきい値THR2(1)〜THR2(12)(THR
2(1−12))を各グループの最後の次元数に基づい
て設定する(ステップ121)。例えば、次元数がまだ
小さい場合にはしきい値THR2(1−12)を小さ
く、距離計算が進んで次元数が大きくなるに従い、TH
R2(1−12)を大きくしていく。すなわち、各しき
い値THR2(1−12)は、入力パターンの累積特長
量とは無関係に次元数の関数となっている。なお、第1
の高速最近傍点検出処理と同様に、各グループ毎に計算
された距離が各々のしきい値THR2(1−12)を越
えるようなプロトタイプは、次々とスクリーニングさ
れ、それ以降の距離計算から除外される。
【0072】具体的なしきい値THR2(1−12)の
設定方法として例えば実際の実験データをプロットした
図9のグラフに基づく次のような方法がある。図9で
は、X軸はグループ番号Xで、縦の罫線がグループ1〜
グループ12までをそれぞれ示している。また、Y軸
は、入力パターンと、入力パターンが属するカテゴリー
のプロトタイプの中で入力パターンに最短のものとのそ
のグループの最後の次元までの距離値を示し、多数の入
力パターンに関してプロットされている。なお、図9で
は、離散的なグループ番号で直接プロットすると、個々
のグループを示す縦の罫線上に散布点が集中し、分布状
況が分かりにくくなるため、散布点をX軸方向に乱数で
分布させて広がりを付けるようにしている。すなわち、
最も左端にある1番目の罫線から2番目の罫線までの間
にグループ1に関するデータを、2番目から3番目の罫
線の間に、グループ2に関するデータ、というように、
最後のグループ12に関するデータまで各々横に広がっ
た領域にプロットされている。
【0073】この図9のような実験データに基づいて、
しきい値THR2(1−12)を設定するためには、大
部分の散布点が下側にくるように、図示のように次式の
直線を設定する。
【0074】 THR2(X) = c・X + d ・・・・(6) 但し、c、dは正の定数である。もし、この直線がすべ
ての散布点より上にあれば、この実験に使われたデータ
に関し、スクリーニングにより認識率が下がることはな
い。
【0075】また、(6)式のdは必ず正の値で一定値
以上でなければならない。まだ途中の16次元や32次
元程度までしか計算されていない段階では、分散値の大
きい特長からソートされていることもあり、正しいカテ
ゴリーを与えるプロトタイプでも、dが0近傍の値の場
合、当該プロトタイプがスクリーニングされる危険性が
高いからである。
【0076】また、分類に寄与する分散値の大きい順序
で特長を並べているため、図9の分布が示すように、次
元数が増えるにつれて距離値の増加率は減少していくこ
とがわかる。そこで、(6)式のような簡単な線形関数
の他に、散布点の分布をもっと正確に反映した非線形関
数等を用いても良い。
【0077】次に、図4と同様に距離計算等を行う(ス
テップ130〜ステップ136)が、グループjの最後
の次元まで計算された市街地距離Dcb(k)を次式のよ
うにTHR2(j)と比較する(ステップ138)。
【0078】 Dcb(k) > THR2(j) ・・・・・(7) (7)式が成立すると判定した場合(ステップ138肯
定判定)、プロトタイプkのスクリーニングを行い(ス
テップ140)、次の処理(ステップ148)に移行す
る。そして、図4と同様にグループ1〜12までプロト
タイプをスクリーニングしながら距離計算を行い最近傍
点を検出する。
【0079】この第2の例のように、次元数の関数とし
て設定されたしきい値を用いてスクリーニングを行うこ
とによって、距離計算の途中の次元数が小さいほど、距
離の信頼性が低いという不公平を減らし、認識率の低下
を最小限に抑えられると共に、プロトタイプのスクリー
ニングによって高速に最近傍点を検出することができ
る。
【0080】高速最近傍点検出処理の第1の例と第2の
例で設定されるしきい値の関数は、直線で近似されてい
るため、ばらつきが大きいサンプル集団では、単に
(2)式や(6)式の各定数を調節しただけでは、処理
効率が一定以上には上がらない場合がある。そこで、本
実施の形態では、これらのしきい値を混合させた新たな
しきい値を設けることによって、しきい値の信頼性をさ
らに高めた高速最近傍点検出処理を用意した。これを第
3の例として図6に示す。なお、図6では、図4及び図
5と同様の処理内容のステップには、同一の番号を付し
て詳細な説明を省略する。
【0081】図6では、THR1(1−12)を計算し
(ステップ120)、次にTHR2(1−12)を設定
する(ステップ121)。そして、これら2種類のしき
い値を混合させて新たなしきい値THR_MIX(1−
12)を計算する(ステップ122)。この混合計算は
次式に従って行われる。
【0082】 THR_MIX(1−12) =f(THR1(1−12)、THR2(1−12)) ・・・(8) 但し、f(x、y)はxとyの関数である。
【0083】本実施の形態では、例えば関数fをxとy
の平均値を取る関数として与える。この場合、(8)式
は、 THR_MIX(1−12) =(THR1(1−12)+THR2(1−12))/2 ・・・(9) となる。なお、(8)式の関数fは、平均値を求める関
数に限られず、例えば重み付き平均や非線形関数等でも
良い。
【0084】以下、図4及び図5と同様に、入力パター
ンとあるプロトタイプkとの途中の次元まで計算された
市街地距離Dcb(k)がTHR_MIX(1−12)を
越えた場合には、そのプロトタイプkを次々にスクリー
ニングして最近傍プロトタイプ検出の高速化を図る。
【0085】このように、累積特長量及び次元数に応じ
て増加する距離値の2つの特性を同時に反映したしきい
値でスクリーニングすることによって、認識対象となる
集団のばらつきを反映したしきい値の信頼性が高まり、
処理効率をさらに向上させることができる。なお、この
第3の例では、ステップ120〜ステップ122でTH
R_MIX(1−12)を求める計算を行うが、全体の
計算量と比較して無視しうる量であり、高速化の妨げと
はならない。
【0086】以上の高速最近傍点検出処理の第1〜第3
の例では、各グループ毎に1種類のしきい値で1フェー
ズのスクリーニングを行っていたが、各グループで2種
類のしきい値を用いて2フェーズのスクリーニングを行
っても良い。これを第4の例として図7のフローチャー
トによって説明する。なお、図7でも、図4〜図6と同
様のステップには同一の番号を付して詳細な説明を省略
する。
【0087】図7に示すように、まず、図6のステップ
120〜ステップ122と同様に、THR_MIX(1
−12)の計算を行う(ステップ124)。次に、次元
番号i、グループ番号j、プロトタイプ番号、及び市街
地距離Dcb(1)〜Dcb(N)の初期値設定を行い(ス
テップ129)、最小距離Dmin に最大値を代入する
(ステップ131)。なお、第4の例においては、D
min は各グループの距離計算毎に求められる。
【0088】次に、グループjに関し、入力パターンと
各プロトタイプkとの市街地距離Dbc(k)の計算を行
い(ステップ132〜ステップ136)、THR_MI
X(j)より大きい場合(ステップ139肯定判定)に
は、そのプロトタイプkをスクリーニングする(ステッ
プ140)。すなわち、これが図6においても説明した
グループjに関する1フェーズ目のスクリーニングであ
る。上記処理を未だスクリーニングされていない生き残
っているすべてのプロトタイプに関し実行する(ステッ
プ148、ステップ150)。また、この処理の間に、
当該グループjにおける最小距離Dmin と最近傍のプロ
トタイプ番号minを求める(ステップ144、ステッ
プ146)。
【0089】グループjに関し、THR_MIX(j)
による1フェーズ目のスクリーニングが終了したら(ス
テップ148)、次のグループに移行する前に、以下の
ような2フェーズ目のスクリーニング処理を行う。
【0090】まず、グループjに関する2フェーズ目の
しきい値THR_RATE(j)を設定する(ステップ
150)。このしきい値THR_RATE(j)は、実
験データから求められた経験的な比率として認識用プロ
グラム等で与えられ、例えばグループ1では2.5、グ
ループ2では1.7、...、グループ11では1.2
などである。詳細については後述する。
【0091】次に、スクリーニングされていない最初の
プロトタイプ番号にkを戻す(ステップ152)。そし
て、ステップ132〜ステップ136で計算された入力
パターンとプロトタイプkとの市街地距離Dbc(k)と
グループjにおける最小距離Dmin との比が、しきい値
THR_RATE(j)を越えているか否かを次式によ
って判定する(ステップ154)。
【0092】 (Dbc(k)+α)/(Dmin +α) > THR_RATE(j) ・・・・(10) ここで、αは、特にグループ1でDmin が0若しくは0
近傍の値の時に、(10)式の左辺が極端に大きくなる
のを防止するための鈍化係数であり、特長量の大きさに
基づいて定められる定数である。なお、(10)式で用
いられる市街地距離Dbc(k)と最小距離Dmin とは、
既に、1フェーズ目のステップ132、〜ステップ14
4で計算済の値をそのまま用いるので、フェーズ2によ
る処理時間の増加は無視できる。
【0093】(10)式が成立すると判定した場合(ス
テップ154肯定判定)、2フェーズ目のプロトタイプ
kのスクリーニングを行い(ステップ156)、次の処
理(ステップ158)に移行する。また、(10)式が
成立しないと判定した場合には(ステップ154否定判
定)、直ちに次の処理(ステップ158)に移行する。
【0094】次に、スクリーニングされていない次のプ
ロトタイプが有るか否かを判定する(ステップ15
8)。次のプロトタイプが有る場合には(ステップ15
8肯定判定)、スクリーニングされていない次のプロト
タイプ番号にkを更新し(ステップ160)、入力パタ
ーンと次のプロトタイプとの市街地距離に関して(1
0)式に基づく判定を行い、同様の処理をスクリーニン
グされていない次のプロトタイプが無くなるまで繰り返
す(ステップ158否定判定)。
【0095】このようにしてフェーズ2では、グループ
jのフェーズ1までの処理で生き残ったプロトタイプを
新たなしきい値THR_RATE(j)に基づいて、さ
らにスクリーニングする。
【0096】2フェーズ目のスクリーニング処理が、す
べての生き残ったプロトタイプに対して終了したら(ス
テップ158否定判定)、次のグループ番号に処理を移
行するため、グループ番号jに1を加算する(ステップ
162)。jが最後のグループ番号12を越えていない
場合(ステップ166否定判定)、スクリーニングされ
ていない最初のプロトタイプ番号にkを戻し、最小距離
min に最大値を代入し(ステップ131)、次のグル
ープに関し同様にフェーズ1及びフェーズ2のスクリー
ニングを実行する。
【0097】更新したグループ番号が12を越えた場合
(ステップ164肯定判定)、第4の高速最近傍点検出
処理を終了する。
【0098】以上のように、同じグループに関し、TH
R_MIX(1−12)とTHR_RATE(1−1
2)という2種類のしきい値で2フェーズのスクリーニ
ングを行う。特に、上述したようにフェーズ2は、既に
計算済のフェーズ1の結果をチェックするだけであり極
めて高速である。これによ、フェーズ2を新たに追加
したことによる処理時間の増加は僅かであり、2フェー
ズによるスクリーニングの効果が相乗して全体的な最近
傍点検出処理をさらに高速化することができる。
【0099】ところで、具体的なしきい値THR_RA
TE(1−12)の設定方法として例えば実際の実験デ
ータをプロットした図10のグラフに基づく次のような
方法がある。
【0100】図10では、X軸はグループ番号Xで、縦
の罫線がグループ1〜グループ12までをそれぞれ示し
ている。また、Y軸は、入力パターンが属する正解カテ
ゴリーのプロトタイプの中で入力パターンに最短のもの
と該入力パターンとの当該次元までの距離値と、すべて
のプロトタイプの中で最短のものとの当該次元までの距
離値とにそれぞれ(10)式の鈍化係数を加算し、両者
の比をとったものを示している。
【0101】なお、図10では、離散的なグループ番号
で直接プロットすると、個々のグループを示す縦の罫線
上に散布点が集中し分布状況が分かりにくくなるため、
図9と同様に散布点をX軸方向に乱数で分布させて広が
りを付けるようにしている。
【0102】図10が示すように、1グループ目では比
率2.5付近、2グループ目では1.75付近まで散布
点が分布し、最後から2番目の11グループ目では、
1.1より小さいほとんど1.0近傍で散布点が分布し
ている。これより、これらの比率と同程度にTHR_R
ATE(1−12)を設定すれば、この実験データに関
し、フェーズ2のスクリーニングによっては認識率の低
下は無いと考えられる。
【0103】実際には、上記したように例えばグループ
11におけるTHR_RATE(11)=1.2として
実験データより若干の余裕を与えるようにしている。グ
ループ11までの計算で最短のものより1.2倍の距離
があるものが最後のグループ12の計算で逆転して1位
になる確率はほぼ皆無であるが、図3のステップ108
の認識処理でさらに詳細な認識を行うとか、複数の認識
候補に単語処理を使って後処理を加えるとか、或いは画
面上でのオペレータによる認識エラー修正用などの場合
等に認識候補を残すため、余裕を持ったしきい値でスク
リーニングした方が好ましいからである。
【0104】なお、図7に示された第4の例を実際のプ
ログラム上で実現する場合、一度スクリーニングされた
プロトタイプを除外して計算を行う方法として例えば図
11に示された方法がある。この方法は、次の有効なプ
ロトタイプをポイントするポインター配列(NEXT_PTR
)を用意し、まず、ポインターSTART _PTR が最初の
有効なプロトタイプを、最後の有効なプロトタイプでは
−1(LAST_PTR )というポインター値を入れて最後で
あることを示す、というものである。
【0105】図11の左欄が示すように、距離計算が始
まる前のプロトタイプが全くスクリーニングされていな
いポインターの初期状態では、NEXT_PTR は最後のプロ
トタイプを除いてすぐ次のプロトタイプをポイントする
ようになっている。
【0106】図11のグループ1におけるフェーズ1の
ポインターの状態は、初期状態と同じ状態になっている
が、フェーズ1であるプロトタイプをスクリーニングす
ると、該プロトタイプを指定するポインターを飛び越え
てその次のプロトタイプをポイントするように書き換え
る。この場合、図示のようにポインターの流れは、当該
プロトタイプをスキップして次にスクリーニングしてい
ないプロトタイプを指定するようになる。
【0107】グループ2になると、さらにスキップされ
るプロトタイプが増え、グループ12のフェーズ2まで
終了した段階では、ポインターの最終状態は、図11の
右欄のようにほとんどのプロトタイプがスキップされる
ようになっている。これより、計算量が大幅に減少する
ことがわかる。
【0108】以上のように、図4〜図7に高速最近傍点
検出処理の第1〜第4の例を示したが、具体的条件の下
で各々の処理効率の相違を一覧にすると、下記の表1の
ようになる。
【0109】
【表1】 表1において、速度は1秒間に認識できる文字数(Char
acter/sec )、RECO_RATEは認識率((正解数/認識
数)*100%)、NN_RATEは最近傍点の検出率(%)
である。なお、RECO_RATEやNN_RATEは、手書きの漢
字、ひらがな、カタカナ、数字、英字、特殊文字のカテ
ゴリー数約2800個の約26000個のテスト文字
(入力パターン;1カテゴリー当たり約9個)と、約1
00万個の学習文字から作成した8283個のプロトタ
イプ(1カテゴリー当たり約3個)との距離計算を行っ
た結果に関するものである。
【0110】また、Aは入力パターンとすべてのプロト
タイプとの距離計算を実行するスクリーニング無しの場
合、Bは、しきい値THR1のみを用いた第1の高速最
近傍点検出処理(図4)の場合、Cは、しきい値THR
2のみを用いた第2の高速最近傍点検出処理(図5)の
場合である。また、D及びEは、しきい値THR_MI
Xを用いた第3の高速最近傍点検出処理(図6)の場合
であるが、しきい値を混合させることによる効果か単に
しきい値が変わったことによる効果かを識別するために
各々パラメータ(b+d)を換えて設定したものであ
る。そして、Fは、THR_MIXとTHR_RATE
という2種類のしきい値による2フェーズのスクリーニ
ングを行う第4の高速最近傍点検出処理の場合(図7)
である。
【0111】表1に示すように、スクリーニング無しの
Aの場合には、最近傍点の定義より当然、最近傍点検出
率は100%であり、これによって認識率も他のスクリ
ーニングを行う場合と比較して最も高い値を示してい
る。しかし、速度に関しては、最も遅く、B〜Fの場合
と比べて約1/2〜1/4.5となっている。
【0112】Bの場合には、Aと比較した認識率及び最
近傍点検出率の低下はそれぞれ0.1%、0.14%と
なるが、速度は約1.94倍となる。Cの場合には、認
識率及び最近傍点検出率の低下はそれぞれ0.34%、
0.49%となり、Bに比較して大きくなるものの、速
度は約3.12倍とかなり高速化が図れる。このよう
に、THR1又はTHR2単独でもある程度の処理効率
の向上が図れることがわかる。
【0113】一方、しきい値を混合させたTHR_MI
Xを用いる場合には、速度、認識率、最近傍点検出率の
いずれもB及びCと比較して顕著に向上する。例えばD
の場合には、Aと比較した認識率及び最近傍点検出率の
低下はそれぞれ0.04%、0.05%と大幅に小さく
なり、速度に関しても約3.55倍となってB及びCよ
りさらに向上する。また、混合されたしきい値の定数を
Dとは異なるように設定したEの場合、速度に関しては
約3.76倍とさらに高速化されるが、認識率及び最近
傍点検出率の低下は、それぞれ約0.07%、約0.0
9%とDより大きくなり、全体の処理効率という点では
Dと比較して大差が無いということになる。従って、し
きい値を変えて偶然に処理効率が良くなったということ
ではなく、明らかにしきい値を混合させたことによる効
果が顕著であったということができる。
【0114】また、混合させたしきい値を用いたスクリ
ーニングに加えて、さらに2フェーズ目のクリーニング
をするFの場合には、Aと比較した速度が最高の約4.
5倍となり、さらに高速化が図れる。一方、Aと比較し
た認識率及び最近傍点検出率の低下は、それぞれ約0.
06%、約0.08%となり、すべてに関し、Eより良
い値が得られる。
【0115】表1は手書き文字に関する結果であるが、
例えば印刷文字などのように、特長量のばらつきの小さ
いものを認識対象とした場合、B〜Fの各場合でさらに
良い処理効率が得られる。特に、Fの方法を用いた印刷
文字認識の場合には、認識率をほとんど低下させること
なく、Aの速度と比較して手書き文字認識の場合の4.
5倍を遙に上回る高速化が図れる。
【0116】以上が、本発明をOCRに適用した実施の
形態の例であるが、上記例にのみ限定されるものではな
い。例えば、入力パターンの最近傍プロトタイプを検出
し、該プロトタイプが属するカテゴリーに基づいて認識
結果を出力する他のすべてのパターン認識装置に適用可
能である。このようなパターン認識装置として、例えば
音声認識装置、画像認識装置等がある。また、認識用プ
ログラムでOCRを実現する場合のみならず、文字認識
用の独自のハードウエアを持つ文字認識装置として構成
しても良い。
【0117】また、パターン認識装置としてではなく、
図4〜図7に示された方法に基づいて最近傍点を検出す
る最近傍点検出装置としても構成可能である。この最近
傍点検出方法又は最近傍点検出装置の場合、多数の実験
サンプルに基づくしきい値の決定の際に次のことに留意
する必要がある。例えば、図8では、真の最近傍点を検
出できなくても最終的にカテゴリーが一致すれば良いた
め、Y軸に、入力パターンと、その入力パターンが属す
るカテゴリーのプロトタイプの中で入力パターンに最短
のものとのその時点での距離値を各々示すようにしてい
た。しかし,最近傍検出方法等では、Y軸に、入力パタ
ーンと、その真に最近傍のプロトタイプとのその時点ま
での距離値を示し、多数のサンプルに対してプロットし
て、その分布からしきい値を決定しなければならない。
図9及び図10についても同様である。この場合におい
ても、最近傍点検出率を最低限に抑えつつ、処理の高速
化を図ることができるのはいうまでもない。
【0118】また、複数の特長次元毎に1グループとす
る場合を扱ったが、1つの特長次元を1グループとする
場合にも本発明に係る高速最近傍検出処理を適用するこ
とができる。すなわち、各次元の特長毎に計算された距
離値に基づいてスクリーニングを行うようにしても良
い。
【0119】また、第4の高速最近傍検出処理の例(図
7)では、THR_MIXとTHR_RATEに基づく
スクリーニングを組み合わせたが、THR1及びTHR
2のいずれかとTHR_RATEとを組み合わせたスク
リーニングを行っても良い。
【0120】さらに、ステップ104で抽出される特長
の種類や次元数、ステップ106で用いられる距離の種
類、図4〜図7の処理の流れ、図2の各構成等に関して
任意好適に変更可能である。
【0121】
【発明の効果】以上説明したように、請求項1の発明に
よれば、距離計算の過程でスクリーニングのしきい値を
動的に変化させるようにしたので、高速かつ高精度に最
近傍点又は入力点近傍の標本点を検出できる、という効
果が得られる。
【0122】請求項2の発明によれば、スクリーニング
を1度行った後で、同じグループに関し、1回目のスク
リーニングで既に計算された累積距離値の最小値を用い
て2回目のスクリーニングを行うようにしたので、スク
リーニング処理の追加によっては処理時間はほとんど増
加せず、2つのスクリーニングの効果が相乗して全体的
な処理時間をさらに高速化できる、という効果が得られ
る。
【0123】請求項3の発明によれば、各グループまで
の累積特長量に基づいて第1のしきい値を設定するよう
にしたので、累積特長量が大きい場合には、最近傍のも
のでも距離が大きくなってスクリーニングされてしまう
おそれを回避でき、処理効率を向上させることができ
る、という効果が得られる。
【0124】請求項4の発明によれば、各グループまで
の特長数を累積的に加算した 累積特長数に基づいて、各
々の第1のしきい値を設定するようにしたので、計算さ
れた次元数の増加と共に、各グループまでの距離値が単
調増加し、計算された次元数が少ないほど距離値の信頼
性が低いという不公平を回避でき、処理効率を向上させ
ることができる、という効果が得られる。
【0125】請求項5の発明によれば、各グループ毎
に、各々の累積特長量と累積特 長数との両者に基づいて
第1のしきい値を設定するようにしたので、第1のしき
い値の信頼性が大幅に向上し、処理効率をさらに向上さ
せることができる、という効果が得られる。
【0126】請求項6の発明によれば、累積特長量に基
づいて得られたしきい値と累 積特長数に基づいて得られ
たしきい値の平均値を第1のしきい値として設定するよ
うにしたので、計算量の増加を最小限に抑えつつ、処理
効率をさらに向上させることができる、という効果が得
られる。
【0127】請求項7の発明は、各グループの特長にお
ける特長量の分散が大きい順序で距離計算を行うように
したので、スクリーニングの効果が高まり、距離計算を
さらに高速化できる、という効果が得られる。
【0128】請求項8の発明によれば、距離計算の過程
でスクリーニングのしきい値を動的に変化させるように
したので、高速かつ高認識率を実現できる、という効果
が得られる。
【0129】請求項9の発明によれば、スクリーニング
を1度行った後で、同じグループに関し、1回目のスク
リーニングで既に計算された累積距離値の最小値を用い
て2回目のスクリーニングを行うようにしたので、スク
リーニング処理の追加によっては処理時間はほとんど増
加せず、2つのスクリーニングの効果が相乗して全体的
な認識に要する処理時間をさらに高速化できる、という
効果が得られる。
【0130】請求項10の発明によれば、各グループま
での累積特長量に基づいて第1のしきい値を設定するよ
うにしたので、累積特長量が大きい場合には、最近傍の
ものでも距離が大きくなってスクリーニングされてしま
うおそれを回避でき、高速かつ高認識率を実現できる、
という効果が得られる。
【0131】請求項11の発明によれば、各グループま
での特長数を累積的に加算し た累積特長数に基づいて、
各々の第1のしきい値を設定するようにしたので、計算
された次元数の増加と共に、各グループまでの距離値が
単調増加し、計算された次元数が少ないほど距離値の信
頼性が低いという不公平を回避でき、高速かつ高認識率
を実現できる、という効果が得られる。
【0132】請求項12の発明によれば、各グループ毎
に、各々の累積特長量と累積 特長数との両者に基づいて
各々の第1のしきい値を設定するようにしたので、第1
しきい値の信頼性が大幅に向上し、高速かつ高認識率
をさらに高いレベルで実現できる、という効果が得られ
る。
【0133】請求項13の発明によれば、累積特長量に
基づいて得られたしきい値と 累積特長数に基づいて得ら
れたしきい値の平均値を第1のしきい値として設定する
ようにしたので、計算量の増加を最小限に抑えつつ、
速かつ高認識率をさらに高いレベルで実現できる、とい
う効果が得られる。
【0134】請求項14の発明は、各グループの特長に
おける特長量の分散が大きい順序で距離計算を行うよう
にしたので、スクリーニングの効果が高まり、認識処理
をさらに高速化できる、という効果が得られる。
【図面の簡単な説明】
【図1】本実施の形態に係るOCRのシステム構成例を
示す図である。
【図2】本実施の形態に係るOCRの構成ブロック図で
ある。
【図3】本実施の形態に係るOCRの文字認識処理の流
れを示すフローチャートである。
【図4】本実施の形態に係るOCRの高速最近傍点検出
処理の第1の例を示すフローチャートである。
【図5】本実施の形態に係るOCRの高速最近傍点検出
処理の第2の例を示すフローチャートである。
【図6】本実施の形態に係るOCRの高速最近傍点検出
処理の第3の例を示すフローチャートである。
【図7】本実施の形態に係るOCRの高速最近傍点検出
処理の第4の例を示すフローチャートである。
【図8】入力パターンの当該グループ数までの累積特長
量と正解カテゴリーのプロトタイプとの市街地距離との
関係を多数の実験サンプルについてプロットし、しきい
値THR1を決定するための図である。
【図9】グループ数と正解カテゴリーのプロトタイプと
の市街地距離との関係を多数の実験サンプルについてプ
ロットし、しきい値THR2を決定するための図であ
る。
【図10】グループ数と、当該グループ数で最短となっ
たプロトタイプとの市街地距離に対する正解カテゴリー
のプロトタイプとの市街地距離との関係を多数の実験サ
ンプルについてプロットし、しきい値THR_RATE
を決定するための図である。
【図11】次の有効なプロトタイプを指定するポインタ
ーの初期状態、各グループ毎の状態、及び最終状態を示
す図である。
【符号の説明】 16 スキャナ 22 CPU 28 辞書メモリ

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 パターンの属性を示す複数の特長を各々
    の次元として構成される特長空間において、入力された
    入力パターンと、該特長空間に分布する複数のパターン
    との全特長空間における距離値を各々計算し、少なくと
    も該距離値が最も小さい最近傍のパターンを検出する高
    速最近傍点検出方法であって、 前記複数の特長を、各々1又は2以上の特長毎に複数の
    グループに分類し、 前記複数のグループの各々に所定の順序を割当て、 各グループまでの特長に関連した情報量に基づいて、距
    離値に関する第1のしきい値を前記複数のグループ毎に
    設定し、 前記所定の順序に従って、各グループまでの特長空間に
    おける距離値を前記複数のパターンの各々について計算
    していくと共に、 あるグループまでの特長空間における距離値が、該グル
    ープにおける前記第1のしきい値を越えた場合には、前
    記距離値を与えたパターンを、これより後の距離計算の
    対象から除外することを特徴とする高速最近傍点検出方
    法。
  2. 【請求項2】 パターンの属性を示す複数の特長を各々
    の次元として構成される特長空間において、入力された
    入力パターンと、該特長空間に分布する複数のパターン
    との全特長空間における距離値を各々計算し、少なくと
    も該距離値が最も小さい最近傍のパターンを検出する高
    速最近傍点検出方法であって、 前記複数の特長を、各々1又は2以上の特長毎に複数の
    グループに分類し、 前記複数のグループの各々に所定の順序を割当て、 各グループまでの特長に関連した情報量に基づいて、距
    離値に関する第1のしきい値を前記複数のグループ毎に
    設定し、 前記所定の順序に従って、各グループまでの特長空間に
    おける距離値を前記複数のパターンの各々について計算
    していくと共に、 前記複数のパターンの各グループまでの特長空間におけ
    る距離値の最小値を各グループ毎に求め、 あるグループまでの特長空間における距離値が、該グル
    ープにおける前記第1のしきい値を越えた場合には、前
    記距離値を与えたパターンを、これより後の処理の対象
    から除外し、 前記第1のしきい値によるパターンの除外を行ったグル
    ープについて、該グループにおける前記最小値に基づい
    て第2のしきい値を設定し、前記グループまでの特長空
    間における距離値が、前記第2のしきい値を越えた場合
    には、前記距離値を与えたパターンを、これより後の距
    離計算の対象から除外することを特徴とする高速最近傍
    点検出方法。
  3. 【請求項3】 前記入力パターンの特長量を前記所定の
    順序に従って各グループの特長まで加算した各々の累積
    特長量を前記情報量として、各グループの前記第1のし
    きい値を設定することを特徴とする請求項1又は請求項
    2の高速最近傍点検出方法。
  4. 【請求項4】 前記所定の順序に従って各グループまで
    の特長の数を加算した各々の累積特長数を前記情報量と
    して、各グループの前記第1のしきい値を設定すること
    を特徴とする請求項1又は請求項2の高速最近傍点検出
    方法。
  5. 【請求項5】 前記入力パターンの特長量を前記所定の
    順序に従って各グループの特長まで加算した各々の累積
    特長量と、前記所定の順序に従って各グループまでの特
    長の数を加算した各々の累積特長数とを前記情報量とし
    て、各グループの前記第1のしきい値を設定することを
    特徴とする請求項1又は請求項2の高速最近傍点検出方
    法。
  6. 【請求項6】 各グループの前記累積特長量及び前記累
    積特長数の平均値を、各グループの前記第1のしきい値
    として設定することを特徴とする請求項5の高速最近傍
    点検出方法。
  7. 【請求項7】 各グループに割り当てられた前記所定の
    順序は、各グループの特長における特長量の分散が大き
    い順序であることを特徴とする請求項1乃至請求項6の
    いずれか1項の高速最近傍点検出方法。
  8. 【請求項8】 入力パターンが入力される入力手段と、 前記入力手段により入力された入力パターンから複数の
    特長を抽出する特長抽出手段と、 認識カテゴリー毎に予め用意された前記複数の特長によ
    り表現されたプロトタイプを格納しておく記憶手段と、 前記複数の特長を各々1又は2以上の特長毎に複数のグ
    ループに区分すると共に、各グループに割り当てられた
    所定の順序に従って、各グループまでの特長空間におけ
    る距離値を前記複数のパターンの各々について求めてい
    く距離計算手段と、 各グループまでの特長に関連した情報量に基づいて、距
    離値に関する第1のしきい値を前記複数のグループ毎に
    設定する第1のしきい値設定手段と、 前記距離計算手段によって、あるグループまでの特長空
    間における距離値が、該グループにおける前記第1のし
    きい値を越えた場合には、前記距離値を与えたプロトタ
    イプを、これより後の距離計算の対象から除外する第1
    のスクリーニング手段と、 前記距離計算手段により最後のグループの特長まで計算
    された全特長空間における距離値の少なくとも最小値を
    与えるプロトタイプを検出する最近傍点検出手段と、 前記最近傍点検出手段によって検出されたプロトタイプ
    が属する認識カテゴリーに基づいて前記入力パターンが
    属する認識カテゴリーを判定する認識手段と、 を含むパターン認識装置。
  9. 【請求項9】 入力パターンが入力される入力手段と、 前記入力手段により入力された入力パターンから複数の
    特長を抽出する特長抽出手段と、 認識カテゴリー毎に予め用意された前記複数の特長によ
    り表現されたプロトタイプを格納しておく記憶手段と、 前記複数の特長を各々1又は2以上の特長毎に複数のグ
    ループに区分すると共に、各グループに割り当てられた
    所定の順序に従って、各グループまでの特長空間におけ
    る距離値を前記複数のパターンの各々について求めてい
    く距離計算手段と、 各グループまでの特長に関連した情報量に基づいて、距
    離値に関する第1のしきい値を前記複数のグループ毎に
    設定する第1のしきい値設定手段と、 前記距離計算手段によって、あるグループまでの特長空
    間における距離値が、該グループにおける前記第1のし
    きい値を越えた場合には、前記距離値を与えたプロトタ
    イプを、これより後の距離計算の対象から除外する第1
    のスクリーニング手段と、 前記複数のプロトタイプの各グループまでの特長空間に
    おける距離値の最小値をグループ毎に算出する最小値算
    出手段と、 前記最小値算出手段によって算出された各グループの最
    小値に基づいて各グループの第2のしきい値を各々設定
    する第2のしきい値設定手段と、 前記第1のスクリーニング手段によるプロトタイプのス
    クリーニングが行われたグループに関し、次のグループ
    の距離計算に移行する前に、該グループまでの特長空間
    における距離値が前記グループにおける前記第2のしき
    い値を越えるプロトタイプを、これより後の距離計算の
    対象から除外する第2のスクリーニング手段と、 前記距離計算手段により最後のグループの特長まで計算
    された全特長空間における距離値の少なくとも最小値を
    与えるプロトタイプを検出する最近傍点検出手段と、 前記最近傍点検出手段によって検出されたプロトタイプ
    が属する認識カテゴリーに基づいて前記入力パターンが
    属する認識カテゴリーを判定する認識手段と、 を含むパターン認識装置。
  10. 【請求項10】 前記第1のしきい値設定手段は、前記
    入力パターンの特長量を前記所定の順序に従って各グル
    ープの特長まで加算した各々の累積特長量を前記情報量
    として、各グループの前記第1のしきい値を設定するこ
    とを特徴とする請求項8又は請求項9のパターン認識装
    置。
  11. 【請求項11】 前記第1のしきい値設定手段は、前記
    所定の順序に従って各グループまでの特長の数を加算し
    た各々の累積特長数を前記情報量として、各グループの
    前記第1のしきい値を設定することを特徴とする請求項
    8又は請求項9のパターン認識装置。
  12. 【請求項12】 前記第1のしきい値設定手段は、前記
    入力パターンの特長量を前記所定の順序に従って各グル
    ープの特長まで加算した各々の累積特長量と、前記所定
    の順序に従って各グループまでの特長の数を加算した各
    々の累積特長数とを前記情報量として、各グループの前
    記第1のしきい値を設定することを特徴とする請求項8
    又は請求項9のパターン認識装置。
  13. 【請求項13】 前記第1のしきい値設定手段は、各グ
    ループの前記累積特長量及び前記累積特長数の平均値
    を、各グループの前記第1のしきい値として設定するこ
    とを特徴とする請求項12のパターン認識装置。
  14. 【請求項14】 各グループに割り当てられた前記所定
    の順序は、各グループの特長における特長量の分散が大
    きい順序であることを特徴とする請求項8乃至請求項1
    3のいずれか1項のパターン認識装置。
JP7190414A 1995-07-26 1995-07-26 近傍点検出方法及びパターン認識装置 Expired - Fee Related JP2986074B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7190414A JP2986074B2 (ja) 1995-07-26 1995-07-26 近傍点検出方法及びパターン認識装置
US08/682,347 US5937093A (en) 1995-07-26 1996-07-17 Pattern recognition methods and apparatus to reduce processing time by groupnise comparison of features and coordinated dynamic elimination of candidates

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7190414A JP2986074B2 (ja) 1995-07-26 1995-07-26 近傍点検出方法及びパターン認識装置

Publications (2)

Publication Number Publication Date
JPH0944602A true JPH0944602A (ja) 1997-02-14
JP2986074B2 JP2986074B2 (ja) 1999-12-06

Family

ID=16257749

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7190414A Expired - Fee Related JP2986074B2 (ja) 1995-07-26 1995-07-26 近傍点検出方法及びパターン認識装置

Country Status (2)

Country Link
US (1) US5937093A (ja)
JP (1) JP2986074B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3969775B2 (ja) * 1996-12-17 2007-09-05 キヤノン株式会社 手書き情報入力装置および手書き情報入力方法
US6910035B2 (en) * 2000-07-06 2005-06-21 Microsoft Corporation System and methods for providing automatic classification of media entities according to consonance properties
US7035873B2 (en) * 2001-08-20 2006-04-25 Microsoft Corporation System and methods for providing adaptive media property classification
JP4674778B2 (ja) 2000-08-31 2011-04-20 ヒューレット・パッカード・カンパニー 文字認識システム
US7254269B2 (en) * 2000-08-31 2007-08-07 Hewlett-Packard Development Company, L.P. Character recognition system
CA2375355A1 (en) * 2002-03-11 2003-09-11 Neo Systems Inc. Character recognition system and method
US7366352B2 (en) * 2003-03-20 2008-04-29 International Business Machines Corporation Method and apparatus for performing fast closest match in pattern recognition
JP5214762B2 (ja) * 2011-03-25 2013-06-19 株式会社東芝 認識装置、方法及びプログラム
WO2015085190A2 (en) * 2013-12-05 2015-06-11 Microsoft Technology Licensing, Llc A method and system for computing distance measures on a quantum computer
US10127302B2 (en) 2015-11-16 2018-11-13 Pearson Education, Inc. Data redundancy maximization tool

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5060277A (en) * 1985-10-10 1991-10-22 Palantir Corporation Pattern classification means using feature vector regions preconstructed from reference data
JPH02268388A (ja) * 1989-04-10 1990-11-02 Hitachi Ltd 文字認識方法
US5748843A (en) * 1991-09-20 1998-05-05 Clemson University Apparatus and method for voice controlled apparel manufacture
JPH06119495A (ja) * 1992-10-02 1994-04-28 Seiko Epson Corp 文字認識装置および文字認識方法
US5479523A (en) * 1994-03-16 1995-12-26 Eastman Kodak Company Constructing classification weights matrices for pattern recognition systems using reduced element feature subsets
US5602938A (en) * 1994-05-20 1997-02-11 Nippon Telegraph And Telephone Corporation Method of generating dictionary for pattern recognition and pattern recognition method using the same

Also Published As

Publication number Publication date
US5937093A (en) 1999-08-10
JP2986074B2 (ja) 1999-12-06

Similar Documents

Publication Publication Date Title
Shafait et al. Performance evaluation and benchmarking of six-page segmentation algorithms
US5335290A (en) Segmentation of text, picture and lines of a document image
US7499588B2 (en) Low resolution OCR for camera acquired documents
Kanai et al. Automated evaluation of OCR zoning
US5369714A (en) Method and apparatus for determining the frequency of phrases in a document without document image decoding
US6081620A (en) System and method for pattern recognition
JP3077765B2 (ja) 語彙辞書の検索範囲を削減するシステム及び方法
US9633257B2 (en) Method and system of pre-analysis and automated classification of documents
US5539841A (en) Method for comparing image sections to determine similarity therebetween
US5848191A (en) Automatic method of generating thematic summaries from a document image without performing character recognition
US5892842A (en) Automatic method of identifying sentence boundaries in a document image
JPH05242292A (ja) 分離方法
EP0779592B1 (en) Automatic method of identifying drop words in a document image without performing OCR
JP2001167131A (ja) 文書シグネチュアを使用する文書の自動分類方法
Boiangiu et al. Voting-based OCR system
US9589185B2 (en) Symbol recognition using decision forests
JPH0944602A (ja) 近傍点検出方法及びパターン認識装置
US20040146200A1 (en) Segmenting touching characters in an optical character recognition system to provide multiple segmentations
EP0674794A1 (en) Methods and apparatus for classification of images using distribution maps
JP3835652B2 (ja) 文書画像の日本語英語判定方法および記録媒体
Suwa Segmentation of touching handwritten Japanese characters using the graph theory method
JP2832928B2 (ja) 文字認識方法
JP3897999B2 (ja) 手書き文字認識方法
JP2902097B2 (ja) 情報処理装置及び文字認識装置
KR900007727B1 (ko) 문자 인식 장치

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees