説明

情報処理装置、およびその処理方法

【課題】画像データ中のサンプリングデータを用いて、高速に特定のパターンの識別を行い、種々の変動に対しても高速に識別を行う情報処理装置およびその方法を提供する。
【解決手段】画像処理装置は、画像における少なくとも1つの特定パターンに関して判定のための情報を登録し、画像データを入力し、入力した画像データから所定の特徴の分布を抽出し、特徴の分布を示す第1特徴分布マップを生成し、第1特徴分布マップの局在性を緩和させる変換を第1特徴分布マップに適用して第2特徴分布マップを生成し、第2特徴分布マップ上のサンプリングデータと登録された情報とを用いて、画像データが前記特定パターンのうちいずれのパターンかを判定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、高速に情報のパターン識別を行う情報処理装置およびその処理方法に関する。
【背景技術】
【0002】
高速にパターンを識別する方法について、これまで様々な手法が提案されてきている。例えば、対象物の判別方法に関して特許文献1は、入力された濃淡画像に対し、2つの位置における画素輝度値の差からなる特徴量に基づき、濃淡画像が対象物であるかどうかを判別する方法を提案している。この方法では、入力された濃淡画像データの内、2つの位置における画素輝度値という、データ中のサンプリングデータを用いて高速な弱判別器を利用することで、高速にパターン識別を行うことを可能にしている。しかし、この方法では、特徴量として用いる2つの位置における画素輝度値の差は、輝度値のバイアス的な変動に対しロバストではあるが、例えば、シェーディングに起因するコントラスト等の変動に対してロバストではない。
【0003】
このようなコントラストの変動に対してロバストにパターン識別に関し、例えば、特許文献2は、入力された濃淡画像データに対してエッジ抽出を行うことにより生成されたエッジ画像を用いて、パターン識別を行う方法を提案している。この方法では、予めエッジ等の特徴を抽出しておき、そのデータに対してパターン識別処理を行うことで、種々の変動にロバストなパターン識別を行うことができる。しかし、エッジのような特徴量は、一般的に疎な分布である傾向がある。したがって、サンプリングされたデータの様々な組み合わせ情報に、有意な差が無くなるので、その結果、充分なパターン識別性能が得られなくなるという課題がある。
【0004】
以上のように、画像データにおけるシェーディングに起因するコントラストの変動等に対してロバストで、高速に処理可能なパターン識別方法が望まれている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2009−26326号公報
【特許文献2】特開2009−43184号公報
【特許文献3】特開2005−03676号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明は、このような課題に鑑み、画像データ中のサンプリングデータを用いて、高速に特定のパターンの識別を行い、種々の変動に対しても高速に識別を行う情報処理装置およびその方法を提供する。
【課題を解決するための手段】
【0007】
本発明の画像処理装置は、画像における少なくとも1つの特定パターンに関して判定のための情報を登録する登録手段と、画像データを入力する入力手段と、前記入力した画像データから所定の特徴の分布を抽出し、該特徴の分布を示す第1特徴分布マップを生成する第1生成手段と、前記第1特徴分布マップの局在性を緩和させる変換を該第1特徴分布マップに適用して第2特徴分布マップを生成する第2生成手段と、前記第2特徴分布マップ上のサンプリングデータと前記登録された情報とを用いて、前記画像データが前記特定パターンのうちいずれのパターンかを判定する判定手段と、を備えることを特徴とする。
【発明の効果】
【0008】
本発明によれば、データ中のサンプリングデータを用いて、高速にパターン識別を行い、種々の変動に対して高速にパターン識別を行うことが可能となる。
【図面の簡単な説明】
【0009】
【図1】実施形態1におけるパターン識別方法の処理に関する構成図。
【図2】実施形態1におけるパターン識別方法の処理を示すフローチャート。
【図3】実施形態1における入力画像および処理結果の例を示す図。
【図4】実施形態1におけるエッジ抽出画像とエッジ分布拡散画像を模式的に示す図。
【図5】実施形態2におけるパターン識別方法の処理に関する構成図。
【図6】実施形態2におけるパターン識別方法の処理を示すフローチャート。
【図7】実施形態2における入力画像および処理結果の例を示す図。
【図8】実施形態2、3における決定木の構造の模式図。
【図9】実施形態3におけるパターン識別方法の処理に関する構成図。
【図10】実施形態3におけるパターン識別方法の処理を示すフローチャート。
【図11】第3の実施形態における入力画像および処理結果の例を示す図。
【図12】実施形態2における距離マップの具体例を示す図。
【図13】実施形態2におけるエッジ抽出画像と距離マップを模式的に示す図。
【図14】実施形態3における特徴分布マップ生成の処理を示すフローチャート。
【図15】実施形態3における特徴分布拡散マップ生成の処理を示すフローチャート。
【発明を実施するための形態】
【0010】
<実施形態1>
実施形態1では、入力データとして20×20画素の2次元グレースケール画像データを用い、その画像データが、ある特定のカテゴリの画像であるかどうかを識別するパターン識別方法について説明する。特定のカテゴリとしては、例えば人間の顔のカテゴリや、ある欠陥を有するパーツのカテゴリなどが挙げられる。本実施形態では、人間の顔の中心付近が入力画像のほぼ中央に存在する特定パターン(以下「顔パターン」)を、特定のカテゴリとした場合について説明する。
【0011】
図1は、実施形態1における、特定パターンの識別を行う情報処理装置の機能の構成を示す。また、図2は、実施形態1における、特定パターンの識別方法の処理フローを示す。図1の各構機能は、ハードウェアによる実現以外に、例えばコンピュータがメモリに格納されたプログラムを実行することで実現しても良い。以下、図1と図2を用いて、パターン識別を行う情報処理装置の例について説明する。
【0012】
図1において、登録パターン情報入力部100は、特定のカテゴリ、即ち、顔パターンに関する情報を入力する。登録パターン情報データベース101はその顔パターンに関する情報を記録して保持する。本実施形態では、弱判別器が特徴量として2つの位置における画素輝度値の差分値が所定の閾値以上であるか否かの判別を行い、その判別結果を統合して最終的なパターン識別を行う。そこで、登録パターン情報入力部100は、弱判別器の情報として、以下の3つの情報を1セットとし、この複数セットの情報を入力して、登録パターン情報データベース101に記録して保持する。
(1) 差分を求めるべき2点の位置情報
(2) そのときの差分に対する閾値
(3) 弱判別器の判別に関するスコア
また、登録パターン情報入力部100は、特定のカテゴリのパターンであるか否かを最終的に判定するための累積スコア閾値も入力し、登録パターン情報データベース101に記録して保持しておく。ここでの処理は、図2のS200にける登録パターン情報入力に対応する。
【0013】
弱判別器の複数の情報には、多数の顔パターンと、顔パターンではないパターン(以下、「非顔パターン」)を用いたアンサンブル学習により予め学習した情報が用いられる。ただし、アンサンブル学習では、2次元グレースケール画像データそのままを用いるのではなく、2次元グレースケール画像に対して、後述する、エッジ抽出処理と、平滑化処理を適用したデータを用いる。本実施形態では、アンサンブル学習の手法として、AdaBoostの手法を用いる。しかし、本発明はこれに限るものではなく、例えば、Real AdaBoost等の他の手法を用いても構わない。
【0014】
特定のカテゴリのパターンであるか否かを最終的に判定するための累積スコア閾値には、AdaBoostの場合、一般に累積スコア閾値として0が用いられる。しかし、例えば誤検出、つまり顔パターンでないパターンを誤って顔パターンと検出することを抑制したい場合は、累積スコアを高めに設定してもよい。このように累積スコアは、求める性能に応じて適切に設定すればよい。
【0015】
画像入力部10は、特定のカテゴリ、つまり顔パターンであるか否かを識別する対象となる20×20画素のグレースケール画像(以下、「入力画像」)を入力する。具体的には、図3の顔パターン30に示すようなグレースケール画像の顔パターンを入力する。ここでの処理は、図2のS20における画像入力のステップに対応する。
【0016】
エッジ抽出処理部11は、画像入力部10で入力された入力画像に対し、エッジ抽出処理を行ったエッジ抽出画像の生成(第1生成)を行う。このエッジ抽出処理の例として、Laplacian of Gaussian(LoG)フィルタを用いる。具体的には、入力画像に対し、ガウシアンフィルタを用いたノイズ除去を行い、ノイズ除去を行った画像に対し、ラプラシアンフィルタを適用する。ガウシアンフィルタとラプラシアンフィルタを合成したフィルタを適用しても構わない。LoGフィルタを用いた一般的なエッジ抽出では、LoGフィルタ適用後のゼロ交差点をエッジとして抽出する。しかし、本実施形態では、単純に、LoGフィルタの出力値が、所定の閾値以上のものをエッジとして抽出する。
【0017】
具体的には、LoGフィルタを適用した後の画像に対し、その画像の各画素において、その画素値と、予め定めた所定の閾値とを比較し、その画素値が閾値より小さい場合、その位置の画素値を0に変更する処理を行う。尚、本実施形態では、ここで用いる所定の閾値を0としている。
【0018】
このエッジ抽出処理を、図3の30に示した画像に対して適用した例を、図3の顔パターン31(第1特徴分布マップ)に示す。一般の画像に対して、LoGフィルタを適用した場合、その出力値の凡そ半数以上は0以下の値となる傾向がある。そのため、ここでの処理により、図3の顔パターン31に示すように、エッジ位置以外の、画像上(第1特徴分布マップ上)の多数の位置において、画素の値が0となるようなエッジ抽出画像が得られる。ここでの処理は、図2におけるS21のエッジ抽出処理のステップに対応する。本実施形態では、このように、LoGフィルタを用いたエッジ抽出を行うが、これに限るものではなく、例えば、Sobelフィルタ等を用いたエッジ抽出を行っても構わない。
【0019】
次に、平滑化処理部12は、エッジ抽出処理部11において生成したエッジ抽出画像に対し、ガウシアンフィルタによる平滑化処理を行い、エッジ分布拡散画像、すなわちエッジ特徴の局在性の程度を緩和したエッジ画像(第2特徴分布マップ)を生成(第2生成)する。このガウシアンフィルタによる平滑化処理では、前述のLoGフィルタにおける、ノイズ除去のための一般的なガウシアンフィルタに比べて、平滑化幅の大きいガウシアンフィルタが適用される。通常、20×20画素程度の画像のノイズ除去を目的とした場合、フィルタサイズが3×3画素程度で、σ=0.5程度のガウシアンフィルタを適用するのが一般的である。これに対し、本実施形態では、フィルタサイズが7×7画素で、σ=1.5という、前述のガウシアンフィルタの、凡そ3倍の幅を持つガウシアンフィルタを用いた平滑化処理を行う。ここでの処理は、図2におけるS22の平滑化処理のステップに対応する。
【0020】
図3の顔パターン32(第2特徴分布マップ)が、顔パターン31に示したエッジ抽出画像に対し、平滑化処理を適用した画像である。この例に示すように、この平滑化処理では、ノイズ除去等を主たる目的とした平滑化処理に比べて、幅の大きい平滑化処理を行う。すなわち、ここでの平滑化処理の目的は、ノイズ除去にもあるが、主たる目的は、先に抽出したエッジ、つまり特徴情報を、空間的に拡散させ、特徴の局在性を緩和させることにある。
【0021】
局在性とは、特徴信号、すなわち、特徴の存在の有無を数値的に表現した信号が、特徴の存在する局所的な範囲にのみ存在する性質である。先に抽出したエッジのような特徴は、このような局在性を有しているが、上記の平滑化処理により、特徴信号が存在しない位置であっても、その近傍に存在する特徴の影響を受けた信号値を持つようになる。従って、この特徴情報の局在性が緩和されることになる。そのため、ここでの平滑化の幅の幅は、ノイズを除去する程度の幅ではなく、例えば、登録パターンの標準的な特徴の分布、すなわち、顔パターンの標準的なエッジの分布の特性に基づいた幅を設定するようにする。
【0022】
具体的には、例えば、標準的な特徴の分布が、図3における顔パターン31の例のように疎であるような場合、元の特徴抽出結果上において、周辺に特徴が存在しないような位置まで、平滑化の幅を大きく設定する。例えば、顔パターン32の例のように、画像上(第2特徴分布マップ上)で顔の頬付近の領域まで特徴情報の裾が拡散する程度に、平滑化の幅を大きく設定する。
【0023】
ただし、あまりに幅の大きい平滑化を適用した場合、空間的に充分離れて存在していた特徴までもが、平滑化処理により混同され、結果として最終的な識別精度が劣化してしまう可能性がある。そのため、特に、標準的な特徴の分布の密度に応じて、空間的に充分離れて存在している特徴が、1つの特徴として合成されてしまわない程度に、平滑化の幅を小さく設定する。このような平滑化の幅は、登録パターンの標準的な特徴の分布や、求めるパターン識別精度に応じて、予め実験的に設定してやればよい。
【0024】
具体的には、例えば、本実施形態のように、2点の差分値を弱判別器の情報として用いる場合には、この2点の距離の最小値より大きく、最大値より小さい範囲で、平滑化の幅(拡散させた特徴情報の裾が到達する範囲)を探索するようにすればよい。尚、本実施形態では、特徴の局在性の程度を緩和させる変換に用いるパラメータ(平滑化の幅)を、予め、固定のパラメータとして設定しておくようにする。しかし、特徴の局在性の程度を緩和させる変換に用いるパラメータを、パターン識別の処理対象のデータに依存させ、動的に設定するようにしても構わない。例えば、パターン識別の処理対象である入力画像から抽出されたエッジ強度の平均ピーク間の距離に応じて、動的にパラメータを設定するようにしてもよい。このような、パラメータを動的に設定する方法は、実施形態3において説明する。
【0025】
このように、本発明のパターン識別方法では、上述の平滑化処理のように、抽出した特徴情報を用いて、空間的に拡散させたエッジ分布拡散画像を生成し、そのエッジ分布拡散画像を用いてパターン識別を行う。尚、本実施形態においては、ガウシアンフィルタを用いた平滑化処理を行うが、本発明はこれに限るものではなく、抽出した特徴情報を、空間的に拡散させ、特徴の局在性を緩和させるような方法であれば、どのような方法を用いても構わない。ただし、空間フィルタを用いた平滑化処理に関しては、中心に比べて周辺の重みが小さくなるようなフィルタを用いて平滑化処理を行うのがよい。また、本実施形態では、等方的な平滑化フィルタを用いているが、これに限るものではない。例えば、標準的な特徴分布が、縦方向は疎で、横方向が密であるような場合、縦長のガウシアンフィルタを用いる等、標準的な特徴分布に基づいた形状の平滑化フィルタを用いてもよい。
【0026】
上述した、エッジ抽出処理部11と平滑化処理部12での処理は、アンサンブル学習において用いる多数の顔パターンと非顔パターンそれぞれに対しても適用され、これらの処理が適用されデータを用いて学習が行われる。この際、学習に用いる多数のパターンに適用されたこれらの処理における平滑化幅等のパラメータと実際にパターン識別を行う段階で適用する処理のパラメータとは、一致していることが望ましい。
【0027】
図1の平滑化処理部12でのエッジ分布拡散画像の生成処理が終了すると、このエッジ分布拡散画像を用いたパターン識別の処理を行う。図1の2点比較部13では、登録パターン情報データベース101に保持されている弱判別器の情報に基づき、エッジ分布拡散画像中の2点の画素における輝度値の差分値と閾値との比較が行われる。そして、2点の画素における輝度の差分値が閾値以上の場合には、その弱判別器に対応するスコアを、スコア加減算部14に送る。そして、スコア加減算部14では、そのスコアを累積スコアに加算する。逆に、2点の差分値が閾値以下の場合には、対応するスコアの符号を反転させたものを、スコア加減算部14に送り、スコア加減算部14では、そのスコアを、累積スコアに加算する。この処理は、符号が反転しているので、元のスコアを減算することに相当する。
【0028】
図2を用いて、2点比較部13とスコア加減算部14での処理フローを説明する。まずS230において、2点比較部13は、仮説数を0に初期化し、累積スコアも0に初期化する。次に、2点比較部13は、S231において、2点比較部13は、登録パターン情報データベース101に保持されている複数の弱判別器の情報から、弱判別器の複数の情報を順番に選択する(順序は任意で構わないが、重複選択はしない)。そして、2点比較部13は、選択した弱判別器の情報に基づいて、エッジ分布拡散画像の中で、予め設定されたサンプリング点の内、所定の2点の位置における画素の輝度の差分値と閾値との比較を行う。
【0029】
続いて、S24において、スコア加減算部14は、S231での比較の結果に基づいて、差分値が閾値以上の場合に、累積スコアに対応するスコアを加算し、閾値以下の場合に、対応するスコア分を累積スコアから減算する。更に、S232において、スコア加減算部14は、仮説数を1だけ増加させる。
【0030】
そして、スコア加減算部14は、S233において、仮説数が、登録パターン情報データベース101に保持されている弱判別器の総数(N)まで達しているか否かの判定を行う。仮説数が総数Nまで達している場合には、次のS25に進む。仮説数が総数Nに達していない場合には、S231に戻り、新たに弱判別器の情報を、登録パターン情報データベース101から選択し、上述の処理を繰り返す。
【0031】
つまり、S231、S24、およびS232までの処理を、登録パターン情報データベース101に保持されている弱判別器の総数回だけ繰り返す。そして、次のパターン判定ステップS25に進むことになる。以上が、2点比較部13とスコア加減算部14での処理のフローである。
【0032】
最後に、パターン判定部15では、スコア加減算部14において加減算された累積スコアが、登録パターン情報データベース101に保持されている累積スコア閾値以上であるか否かを判定する。そして、パターン判定部15は、累積スコアが累積スコア閾値以上の場合には、画像入力部10において入力された画像が、特定カテゴリのパターン、即ち、本実施形態では、顔パターンであると判定する。また、閾値以下の場合には、非顔パターンであると判定する。ここでの処理は、図2のS25のパターン判定のステップに対応する。ここでの処理が終了することにより、本実施形態のパターン識別方法の処理が終了となる。
【0033】
このように、本実施形態のパターン識別方法では、まず、入力されたデータ上に存在する特徴を抽出し、その特徴情報の局在性を緩和させたデータを生成する。そして、このデータに対し、データ中のサンプリングデータを用いて識別を行う識別器によりパターンの識別処理を行う。この識別器は、同様の特徴抽出および特徴情報の拡散処理を行った多数のデータで学習したデータを備え、この識別器でサンプリングデータの識別処理を行うことで、種々のデータ変動に対してロバストで、高速なパターン識別が可能となる。ここで、本実施形態のパターン識別方法において、最も特徴的である、特徴情報を拡散させ、特徴の局在性を緩和させることにより得られる3つの効果について説明する。第1の効果は、一般的な平滑化処理の効果と同様な、ノイズ除去(実際は抑制)の効果である。このようなノイズ除去により、一般的に、パターン識別における識別性能が高まる。この効果は、平滑化処理を適用することによる一般的な効果といえる。第2の効果は、特徴統合層におけるプーリング処理による効果と同様な、抽出した特徴の位置等の変動に対するロバスト性向上である。このような、抽出した特徴の位置等の変動に対するロバスト性の向上により、パターン識別における汎化性能の向上が期待できる。この効果も、平滑化処理を適用することによる一般的な効果といえる。
【0034】
最後の第3の効果は、本実施形態のパターン識別方法において特徴的な効果であり、この効果について、図4を用いて説明する。図4の横軸は、位置を示し、縦軸は、特徴の分布の度合いを示す。前述のように、本実施形態で特徴として抽出するエッジは、種々の変動に対するロバスト性向上のために有効であるが、このような特徴は、一般的に疎な分布、つまり、局在性が高い傾向がある。図4(a)に、この傾向を模式的に表したものを示す。本実施形態では、2次元のデータに対する処理の例を示したが、説明を簡略にするため、この図では、1次元のデータを例として示している。前述のように、エッジのように疎の分布傾向のある特徴信号は、図4(a)に示すように、位置410に局在し、その他の位置、つまり、特徴信号が存在しない位置においては、特徴信号が現れていない。
【0035】
この場合、高速なパターン識別を実行することを目的とした、サンプリングデータを用いたパターン識別方法、つまり2点の画素における輝度の差分値を用いるような方法の場合、次のような現象が発生する。例えば、図4(a)の位置411に示したような2点の差分値は、位置411の、右側の点の位置に、特徴信号が存在する可能性が高いという有意な情報となり得る。
【0036】
しかし、図4(a)の位置412や位置413に示したような2点の差分値は、各点の位置に、特徴信号が存在しない可能性があるという情報にはなり得るが、位置412と位置413の、それぞれにおける2点の差分値は、この2つの違いを区別可能な情報を有していない。しかも、疎な分布である特徴、つまり、特徴信号が限られた位置に局在するような状況の場合、大多数の2点の組み合わせが、位置412や位置413の差分値のように、情報の差が無くなってしまう。このため、識別において有用な情報が得られる2点の組み合わせの総数が相対的に少なくなってしまい、その結果、充分なパターン識別性能を得られなくなってしまう可能性がある。
【0037】
これに対し、図4(b)に示したように、平滑化処理により、位置420のように特徴信号を拡散させ、特徴の局在性を緩和させた場合、位置412と位置413に対応する位置である、位置422と位置423の、それぞれにおける2点の差分値に違いが生じることになる。この例が示すように、特徴の局在性を緩和させた場合、特徴の局在性を緩和させなかった場合と比べて、多数の2点の組み合わせが、様々なバリエーションの情報を持つようになる。このため、識別において有用な可能性がある情報が得られる2点の組み合わせの総数が相対的に多くなり、その結果、パターン識別の性能を向上させられる可能性が高くなる。
【0038】
具体的には、位置423の2点の差分値は、特徴信号を拡散させなかった場合と同様に0となるが、特徴信号の拡散により、位置412の2点の差分値が0であったのに対し、対応する位置422の2点の差分値は、ピーク420の画素の位置からの距離に応じた非零の値となる。このように、位置423のような差分値0となるその他の2点の組み合わせが減り、その結果として、位置423の2点の差分値が0であるという情報は、ユニークな情報になるため、情報量が増えることになる。
【0039】
定性的には、位置423の2点の近傍には、特徴が存在しない可能性が高いという情報になり得る。また、例えば、位置422の2点の差分値は、2点の内、右側の点の位置に特徴が存在するか、あるいは右側の点の方向に特徴が存在するという情報になり得る。このように、位置422の2点の差分値は、位置412の2点の差分値と比較すると、右側の方に特徴が存在する可能性があるという情報が増加しているといえる。
【0040】
本実施形態では、図2のS231の2点比較のステップでの複数の結果に従って、スコア加減算ステップS24において加減算を行ったスコアに基づき、S25のパターン判定のステップによりパターンの判定を行った。ここで用いたAdaBoostのような、複数の情報を統合してパターン識別を行う場合には、それぞれの情報が持つ情報量が増えることにより、高い性能を実現できる傾向がある。そのため、位置422や位置423の2点の差分値が持つ情報量が増えることにより、より高いパターン識別性能を実現できる可能性が高くなる。
【0041】
このように、特徴情報を拡散させ、特徴の局在性を緩和させることで、サンプリングデータの組み合わせ情報に、様々なバリエーションの情報を持たせることが可能になり、それにより、パターン識別性能の向上が期待できる。この効果が、本発明のパターン識別方法における、特徴情報を拡散させ、特徴の局在性を緩和させる処理による特徴的なものである。
【0042】
尚、本実施形態では、サンプリングデータを用いるパターン識別方法として、2点の差分値を用いる手法について説明したが、本発明はこれに限るものではない。例えば、ある1点と、所定の閾値との比較や、逆にサンプリング数を増やし、ある2点の和と、その他の2点の和との差分値を用いるといった手法であっても構わない。このように、パターン識別において用いるサンプリングデータの数は任意の数で構わない。また、本実施形態では、入力されたパターンが、特定のカテゴリであるかどうかを識別する方法の例を示した。しかし、入力された画像に対し、上述の処理をラスタスキャン的に行うことにより、入力画像中から特定のカテゴリのパターンを検出することも可能である。
【0043】
<実施形態2>
実施形態2では、実施形態1で示したパターン識別方法の別形態として、特定物体を撮影した画像を入力し、その特定物体がどのような方向から撮影されたものであるのかを識別するパターン識別方法の例を示す。
【0044】
図5に、実施形態2におけるパターン識別方法の処理の構成図を示す。また図6には、実施形態2におけるパターン識別方法の処理フローを示す。図5における登録パターン情報入力部500は、特定物体を様々な方向から撮影したパターンに関する情報を入力する。登録パターン情報データベース501は、その撮影したパターンに関する情報を記録して保持する。本実施形態では、実施形態1とは異なり、2点の値の比較により分岐する決定木を複数用い、その結果を統合して最終的なパターン識別を行う。そこで、この登録パターン情報入力部500では、複数の決定木の情報を入力する処理を行う。本実施形態においては、決定木として二分木を用い、1つの決定木の情報は、複数の分岐ノード情報と複数のリーフ情報とからなる。
【0045】
図8は、本実施形態で用いる決定木の構造の模式図を示す。図8を用いて、本実施形態の決定木が持つ、複数の分岐ノード情報と複数のリーフ情報について説明する。図8中、分岐ノード800、801、802、および80nは、丸で示され、それぞれが1つの分岐ノード情報を持つ。また、リーフ810および81mは、四角で示され、それぞれが1つのリーフ情報を持つ。
【0046】
分岐ノード情報は、2点の輝度値を比較する際の、第1の点の位置と、第2の点の位置、および分岐先がいずれであるかの情報を備える。実際の処理では、分岐ノード情報に基づき、第1の点と第2の点の位置における画素の輝度値の大小関係を求め、その結果に従って、どちらの分岐先に進むかが決定される。
【0047】
本実施形態では、第1の点の位置における輝度値の方が、第2の点の位置における輝度値より大きい場合に、図中で、左側の分岐先に進み、そうでなければ右側の分岐先に進むようにする。分岐先がいずれであるかの情報は、例えば、分岐ノード800であれば、左側の分岐先が、分岐ノード801、右側の分岐先が802であるという情報である。
【0048】
よって、実際の処理では、分岐ノード800の情報に基づき2点の値を比較し、第1の点の位置における値の方が大きければ、分岐ノード801の方に進み、そうでなければ、分岐ノード802の方向に進むことになる。以下では、このようなプロセスを、決定木の探索と呼ぶ。ちなみに、分岐ノード800は、ルートノードと呼ばれ、決定木の探索は、必ずこのルートノードから始めることになる。
【0049】
リーフ情報は、この決定木における結果、つまり、本実施形態においては、特定物体がどのような方向から撮影されたものであるのか、という識別結果の情報である。本実施形態では、本来は連続的な情報である、どのような方向から撮影されたものであるのかという情報を量子化して、162個の、1から162までのインデックスで表現する。この162個のインデックスは、162個の頂点を持つ、いわゆる測地ドームの各頂点位置に対応する。これは、この測地ドームの中心位置に特定物体があるとしたとき、特定物体を撮影した画像がどの頂点位置に近い位置で撮影されたものであるのかを意味する。このため、リーフ情報は、単純に、1から162の中の、1つの数値の情報となる。本実施形態では、1つのリーフが1つの結果のみを持つようにしている。本実施形態では、決定木の末端は、必ずリーフとしているが、実際の処理では、いずれかのリーフに到達するまで決定木を探索していき、そのリーフ情報である、インデックスの値を、その決定木の結果とする。
【0050】
このような決定木の情報は、特定物体を様々な方向から予め撮影した多数の画像データを用いた学習により生成しておく。本実施形態では、様々な種類の決定木の情報を統合する認識手法を用いるため、複数の異なる決定木を生成する必要がある。そこで、本実施形態では、バギングの手法を用いて、複数の異なる決定木を生成する。即ち、学習に用いる多数の画像データから、無作為にサンプリングした画像データのサブセットを複数生成し、それらを用いて決定木の生成を行う。決定木の生成に用いるデータは、実施形態1と同様に、後述するエッジ抽出処理と距離マップ生成処理を適用した後のデータとを用いる。
【0051】
尚、本実施形態では、バギングの手法を用いて複数の異なる決定木を生成するが、本発明はこれに限るものではなく、多様な複数の決定木を生成できるような方法であれば、その他の方法であっても構わない。例えば、実施形態1と同様に、AdaBoostの手法を用いて生成する方法や、特許文献3に開示の手法のように、各分岐ノードにおいて、無作為にデータを選択することにより、多様な決定木を生成するような方法でも構わない。
【0052】
登録パターン情報入力部500は、以上のような決定木の情報を、決定木の個数(=N)分だけ入力し、それらを登録パターン情報データベース501に記録して保持する処理を行う。ここでの処理は、図6のS600における登録パターン情報入力のステップに対応する。
【0053】
画像入力部50は、どのような方向から撮影された画像であるのかを判定する対象となる、特定物体を撮影した画像(以下、「入力画像」)を入力する。図7は、入力画像および処理結果の例を示す図である。この実施形態では、図7の画像70に示すようなグレースケール画像が入力される。ここでの処理は、図6の画像入力ステップS60に対応する。
【0054】
図5のエッジ抽出処理部51は、実施形態1におけるエッジ抽出処理部11と同様に、入力画像からエッジ抽出画像を生成する処理部である。本実施形態では、エッジ抽出処理として、Cannyエッジ検出処理を行う。ここでの処理は、図6のS61におけるエッジ抽出処理のステップに対応する。このCannyエッジ抽出処理を図7の画像70に対して適用した例が、画像71である。この画像71に示すように、Cannyエッジ検出処理では、エッジ抽出画像として、強いエッジが存在している位置と連結されたエッジが存在する位置が1で、それ以外の位置は0という二値の画像が得られる。このように、本実施形態におけるエッジ抽出処理も、実施形態1でのエッジ抽出処理と同様に、抽出される特徴の局在性が高く、エッジの特徴抽出結果が疎な分布となっている。
【0055】
次に、距離マップ生成処理部52は、エッジ抽出部51において生成したエッジ抽出画像に基づき、距離マップを生成する。ここでの処理は、実施形態1における平滑化処理部12での、ガウシアンフィルタを用いた平滑化処理と同様に、抽出した特徴の局在性を緩和させたデータを生成するための処理である。この処理は、図6のS62における距離マップ生成処理のステップに対応する。距離マップとは、最近傍の特徴までの距離を各位置の値としたマップで、具体的には、画像上の各位置において、最も近い位置に存在するエッジの特徴を探索し、探索された最近傍の特徴までの距離を、その位置における値とするマップである。
【0056】
図12は、距離マップの具体例を示す。例えば、図12に示した120の位置であれば、121の位置にあるエッジが最も近い特徴であり、位置120から位置121までの距離がd1であったとすると、位置120に対応する位置の距離マップの値はd1となる。尚、このような通常の距離マップでも構わない。しかし本実施形態では、距離マップの値に予め上限値を設定しておき、最近傍の特徴までの距離が、この上限値以上である場合に、その位置における値をこの上限値とするマップを生成する。
【0057】
例えば、図12に示した位置122の場合、位置123にあるエッジが最も近い特徴であり、位置122から位置123までの距離がd2であって、このd2が予め定めた上限値DTより大きい場合、位置122に対応する位置の距離マップの値を一定の値DTとする。このような上限値を用いた処理により、設定した上限値以上の距離に、特徴が存在するような位置の値は、一定の値に抑えることができる。
【0058】
図13に、エッジ抽出画像と、それに対応する距離マップを模式的に示す。説明を簡略にするため、この図では1次元のデータを例として示している。図13(a)のように、エッジ抽出画像において特性1310は棒状となり、エッジが抽出されている。図13(b)に示すように、ここで生成される距離マップは、図13(a)のエッジが抽出された特性1310の位置に対応する、特性1320の位置の値がゼロになっていることを示している。そして、そのゼロの位置から離れるに従って、特性1320は距離に比例して値が大きくなり、距離がDになった位置から一定値Dとなる。これにより、図13に示したように、位置1312と位置1313にそれぞれ対応する位置1322と位置1323の、それぞれの2点の組み合わせが持つ情報、本実施形態では、2点の位置における画素の輝度値の大小関係に違いが生じることになる。
【0059】
定性的な情報の違いとしては、位置1322の2点の組み合わせでは、2点の内、右側の点の方向に特徴が存在する可能性が高いという情報になる。また、位置1323の2点の組み合わせでは、位置1323の2点の近傍には特徴が存在しない可能性が高いという情報になるという違いが生じる。
【0060】
本実施形態で用いる2点の輝度値の大小関係という情報で、このような上限値を設定しない場合、位置1310に対応する位置以外の位置に存在する特徴の影響が無い限り、位置1322と位置1323の、それぞれにおける2点の組み合わせが持つ情報に違いが生じない。しかし実際には、様々な位置に存在する特徴の影響を受けるので、上限値を設定しなくても、情報に違いが発生することはある。つまり、上限値を設定しない場合には、位置1323の2点の組み合わせから、位置1323の2点の近傍には特徴が存在しない可能性が高いという情報は得られない。
【0061】
このように、上限値を予め設定した処理により、近傍には特徴が存在しない可能性が高いといった情報が得られることになる。この上限値は、実施形態1と同様に、例えば、登録パターンの標準的な特徴の分布の特性に基づいて設定すればよい。具体的には、例えば、設定は、充分に離れた位置にあると見なせる2点の特徴の間の距離の1/2に上限値を設定すればよい。あるいは、決定木において比較する2点の距離に基づいて、この上限値を設定してもよい。この場合、決定木において比較する2点の距離の、最小値と最大値の中間値に設定すればよい。
【0062】
尚、実施形態1と同様に、特徴の局在性の程度を緩和させる変換に用いるパラメータ、すなわち距離マップの上限値を、固定のパラメータとして予め設定したが、パターン識別の処理対象のデータに依存させ、このパラメータを動的に設定してもよい。例えば、パターン識別の処理対象である入力画像から、エッジとして抽出された点の総数に応じて、動的にパラメータを設定できる。
【0063】
また、この上限値は、必ずしも全ての位置において同一の値を用いなくてもよく、例えば、エッジ抽出部51において生成したエッジ抽出画像の、各位置における局所的な分布特性に従ってこの上限値を設定しても構わない。具体的には、ある位置の近傍、例えば、半径r画素の領域内のエッジ抽出画像の密度を求め、密度が高い場合に、その位置の上限値を小さめに設定し、密度が低い場合は、上限値を大きめに設定できる。このように、この上限値は、各位置に対して個別の値を設定することも可能である。
【0064】
図7の画像72に、画像71に示したエッジ抽出画像に基づいて生成した距離マップの例を示す。この例に示すように、ここで生成する距離マップでは、エッジ抽出画像においてエッジが抽出されている位置、例えば、画像71において白(値が1)となっている位置では、黒(値が0)でエッジ位置から離れるに従って値が高くなる。そして、最も近いエッジからの距離が上限値以上の位置では一定の値(上限値)となる。
【0065】
このように、この処理により生成される距離マップは、実施形態1におけるエッジ分布拡散画像と同様に、特徴の存在しない位置であっても、様々なバリエーションの値を持ち、元のエッジ抽出画像と比べ特徴の局在性が緩和されたデータとなる。このため、実施形態1の説明において述べたと同様の特徴的な効果が得られることになる。尚、本実施形態においては、距離マップを生成する際の距離尺度として、通常のユークリッド距離を用いるが、本発明はこれに限るものではなく、例えば、マンハッタン距離等の距離尺度を用いてもよい。また、本実施形態では、最近傍に存在する特徴までの距離に基づいて、距離マップを生成したが、例えば、近傍に存在する複数の特徴までの距離の平均値に基づいて、距離マップを生成してもよい。
【0066】
また、実施形態1と同様に、エッジ抽出処理部51と距離マップ生成処理部52での処理は、決定木の生成において用いる多数の画像それぞれに対しても適用され、適用後のデータを用いて決定木の生成を行う。この場合、実施形態1と同様に、決定木の生成に用いる多数の画像に適用したこれらの処理のパラメータ、例えば、上限値の設定等は、実際にパターン識別を行う段階で適用する処理のパラメータと一致していることが望ましい。
【0067】
図5の距離マップ生成処理部52で距離マップの生成処理が終了した後、この距離マップを用いたパターン識別の処理を行う。図5の決定木探索処理部53は、登録パターン情報データベース501に保持された複数の決定木を探索し、1つの決定木につき1つの識別結果、すなわち、1から162までのいずれかのインデックスを求め、その識別結果をスコア加算部54に送る。図5のスコア加算部54では、決定木探索処理部53から送られた結果に基づき、その結果に対応するインデックスの累積スコアに1を加算する。
【0068】
決定木探索処理部53とスコア加算部54での処理フローを、図6を用いて説明する。まず、S630において、決定木探索処理部53は、決定木数を0に初期化し、同時に、累積スコアの全ての要素も0に初期化する。ここで、本実施形態における累積スコアは、162個の要素を持つテーブルであり、各要素が、識別結果である上述の1から162のインデックスに対応している。
【0069】
次にS631において、決定木探索処理部53は、登録パターン情報データベース501に保持されている複数の決定木の情報から、1つの決定木の情報を順番に選択する(順序は任意で構わないが、重複選択はしない)。そして、決定木探索処理部53は、選択した決定木の情報に基づいて、距離マップ上の、2点の画素における輝度値の大小比較を行っていき、1つのリーフに到達するまで決定木を探索し、識別結果である1つのインデックスを求める。
【0070】
続いて、S64において、スコア加算部54は、S631での結果に基づき、そのインデックスに対応する累積スコアの要素に1を加算する。例えば、識別結果のインデックスがkであったら、テーブルである累積スコアのk番目の要素に1を加算する処理を行う。その後、S632において、決定木数を1だけ増加させる。
【0071】
そして、S633において、スコア加算部54は決定木数が、登録パターン情報データベース501に保持されている決定木の総数(N)まで達しているか否かを判定する。決定木数が総数Nまで達している場合には、次のS65におけるパターン判定のステップに進む。決定木数が総数Nに達していない場合には、S631に戻り、新たに1つの決定木の情報を、登録パターン情報データベース501から選択し、上述の処理を繰り返す。以上が、決定木探索処理部53とスコア加算部54での処理フローの説明である。
【0072】
最後に、図5のパターン判定部55は、スコア加算部54において加算された累積スコアの各要素の中から、最大のスコアであった要素を抽出し、その要素に対応するインデックスを求める。そして、図5の画像入力部50において入力された画像、つまり、特定物体を撮影した画像が、求めたインデックスに対応する方向から、対象物体を撮影した画像であると判定する。ここでの処理は、図6のS65におけるパターン判定のステップに対応する。ここでの処理が終了することにより、本実施形態のパターン識別方法の処理が終了となる。
【0073】
このように、本実施形態のパターン識別方法では、まず、入力されたデータ上に存在する特徴を抽出し、距離マップ生成処理により、抽出した特徴の局在性を緩和させた距離マップを生成する。そして各分岐ノードにおいて、この距離マップ中のサンプリングデータを用いて分岐を行う決定木を複数用い、それらの結果を統合してパターン識別の処理を行った。これにより、入力されたデータの種々の変動に対してロバストで、高速なパターン識別が可能となる。
【0074】
尚、本実施形態では、サンプリングデータを用いるパターン識別方法として、2点の大小比較結果を用いる手法について説明したが、実施形態1と同様に、本発明はこれに限るものではない。例えば、決定木の分岐ノードにおいて、ある1点の値と所定の閾値との比較結果に基づいて分岐を行うような手法や、複数のデータに基づいて分岐するような方法でも構わない。また、本実施形態でも、パターン識別において用いるサンプリングデータの数は任意の数で構わない。
【0075】
本実施形態では、特定物体を撮影した画像を入力し、その特定物体がどのような方向から撮影されたものであるのかを識別する方法の例を説明したが、本実施形態の構成は、このような用途に限るものではない。例えば、実施形態1と同様に、入力された画像が、顔パターンであるか否か等、入力されたデータが、ある特定のカテゴリであるかどうかを識別するような手法にも適用可能である。また、実施形態1と同様に、ラスタスキャン的な処理により、入力画像中から特定のカテゴリのパターンを検出するといった手法にも適用可能である。
【0076】
<実施形態3>
実施形態3では、実施形態2と同様に、特定物体を撮影した画像を入力し、その特定物体がどのような方向から撮影されたものであるのかを識別するパターン識別方法の例を示す。
【0077】
図9に実施形態3におけるパターン識別する装置の機能構成を示す。また図10は、本実施形態における、パターン識別方法の処理フローを示す。以下、図9と図10を用いてパターンを識別する装置の例について説明するが、実施形態2と同じ部分については、説明を省略する。
【0078】
登録パターン情報入力部900は、実施形態2における登録パターン情報500と同様である。ここでは、複数の決定木の情報を入力する。また、登録パターン情報データベース901も登録パターン情報データベース501と同様で、複数の決定木を記録して保持する。登録パターン情報入力部900は、図10のS1000における登録パターン情報入力のステップに対応する。
【0079】
本実施形態で用いる複数の決定木は、基本的に実施形態2と同様であるが、分岐ノードで比較する2点の情報が異なる。本実施形態では、後述する特徴分布マップ生成処理部911と平滑化処理部92での処理により、1枚の入力画像から複数の特徴分布拡散マップが生成される。そのため、本実施形態の分岐ノードで比較する2点の情報は、それぞれの点が、どの特徴分布拡散マップの、どの位置であるかという情報となる。この差異以外は、実施形態2と同様であるので説明を省略する。また、決定木の生成に用いるデータも、実施形態2と同様であるが、予めコーナーエッジ抽出処理、特徴分布マップ生成処理、および平滑化処理を適用した後のデータを用いるのが異なる。
【0080】
図9の画像入力部90での処理は、S1001における画像入力のステップに対応し、実施形態2における画像入力部50と同様の処理であるので説明を省略する。コーナー検出処理部91は、入力画像に対してコーナー検出処理を行い、入力画像上に存在するコーナーの位置を求める。
【0081】
本実施形態では、コーナー検出処理として、Harrisコーナー検出処理を用いる。ここでの処理は、図10のS1010におけるコーナー検出処理のステップに対応する。このHarrisコーナー検出処理を、図11の画像110に適用した例を、図11の画像111に示す。図11の画像111において、白丸で示した位置が、コーナーとして検出された位置である。尚、本実施形態では、Harrisコーナー検出処理を用いて、コーナーの検出を行うが、本発明はこれに限るものではなく、例えば、Moravecコーナー検出処理等の他のコーナー検出処理を用いてもよい。
【0082】
次に、特徴分布マップ生成処理部911は、コーナー検出処理部91で検出された、それぞれのコーナー位置における輝度勾配方向を求め、その結果に基づいて、複数の特徴分布マップを生成する。ここで、各特徴分布マップは、0度から180度の勾配方向を複数の領域に分割した範囲の各々に対応する。本実施形態では、0度から180度の勾配方向を、30度ごと、6個の領域に分割する。したがって、0度から30度未満、30度から60度未満、・・・、150度から180度未満の、それぞれの範囲1つに付き、1つの特徴分布マップが存在する。
【0083】
図14に、ここでの特徴分布マップ生成の処理フローを示す。以下、図9の特徴分布マップ生成処理部911における複数の特徴分布マップ生成処理について、図14を用いて説明する。まず、S140において、特徴分布マップ生成処理部911は、複数の特徴分布マップ上の、全ての位置の値を0に初期化する。
【0084】
次に、S141において、特徴分布マップ生成処理部911は、コーナー検出処理部91で検出された複数のコーナーから、1つのコーナーを順に選択する(順序は任意で構わないが、重複選択はしない)。続いて、S142において、特徴分布マップ生成処理部911は、S141で選択したコーナー位置における、入力画像の輝度勾配方向を求める。
【0085】
輝度勾配方向は、本実施形態では、Sobelフィルタを用いて求める。具体的には、コーナー位置における、入力画像に対する横方向Sobelフィルタの出力をGx、縦方向Sobelフィルタの出力をGyとしたとき、勾配方向θが、θ=atan(Gy/Gx)で求められる。ここで、atanは、正接関数の逆関数で、値域が0度から180度のものとする。
【0086】
次に、S143において、特徴分布マップ生成処理部911は、S142で求めた輝度勾配方向が、0度から180度を、6個の領域に分割したときの、どの領域に該当するかに基づき、その領域に対応する特徴分布マップを選択する。そして、S144において、特徴分布マップ生成処理部911は、S143で選択した特徴分布マップの、S141で選択したコーナー位置に対応する位置の値を1とする。そして、S145で、特徴分布マップ生成処理部911は、S141においてコーナー検出処理部91で検出された全てのコーナーを選択したか否かの判定を行い、全てのコーナーを選択していた場合には、この特徴分布マップ生成の処理が終了となる。全てのコーナーを選択していない場合、S141のコーナー選択のステップに戻り、新たに1つのコーナーを選択し、上述の処理を繰り返す。
【0087】
つまり、S141からS144までの処理を、コーナー検出処理部910で検出された全てのコーナーに対して行うことで、この特徴分布マップ生成の処理、つまり、特徴分布マップ生成処理部911での、複数の特徴分布マップ生成処理が終了となる。ここでの処理は、図10のS1011における特徴分布マップ生成処理のステップに対応する。
【0088】
この処理により生成される複数の特徴分布マップそれぞれは、コーナー検出処理部91で検出されたコーナーの内、その特徴分布マップに対応する範囲の輝度勾配方向であったコーナー位置のみが1で、それ以外は0という、極めて疎な分布となる。具体的には、例えば、コーナーとして検出された位置は、図11の画像111に示した46個であり、その各コーナー位置の内、0度から30度未満の輝度勾配方向であるコーナー位置は、10個となる。その結果、0度から30度未満の範囲に対応する特徴分布マップは、マップ中の10点のみが1で、それ以外の位置は0という、非常に疎な分布となる。したがって、この特徴も局在性が高いといえる。
【0089】
そのため、上述したように、この特徴分布マップをそのまま用いて、サンプリングデータを用いたパターン識別を行うと、充分な識別性能を実現できない可能性が高い。そこで、本実施形態でも、図9の平滑化処理部92における処理により、この複数の特徴分布マップに対し、特徴の局在性を緩和させる変換を行う。
【0090】
平滑化処理部92は、前述のように、特徴の局在性を緩和させる変換を、特徴分布マップ生成処理部911において生成した複数の特徴分布マップに対して行うことにより、複数の特徴分布拡散マップを生成する。本実施形態では、平滑化処理部92は、特徴の局在性を緩和させる2つの変換を2段階に分けて行う。
【0091】
図15は、平滑化処理部92の処理フローを示す。図15の中で、S155の空間フィルタリング処理のステップが2段階の変換の内、1段階目の変換に対応する。また、その後のS156における、輝度勾配方向空間フィルタリング処理のステップが、2段階の変換の内の2段階目の変換に対応する。
【0092】
この平滑化処理部92で行う、特徴の局在性を緩和させる2つの変換は、いずれも実施形態1における平滑化処理による変換と同様である。しかし、1段階目の変換は、変換に用いるパラメータが固定ではなく、パターン識別の処理対象であるデータに依存し、動的にパラメータを設定するという部分が実施形態1のパラメータ設定と異なる。ここでの変換に用いるパラメータを、処理対象データに依存して動的に設定する処理は、図15のS151からS153までの繰り返し処理に対応する。また、図10の場合には、S1020の変換パラメータ決定処理のステップに対応する。
【0093】
以下、この平滑化処理部92における、複数の特徴分布拡散マップ生成処理について、図15を用いて説明する。まず、S150において、平滑化処理部92は、複数の特徴分布拡散マップ上の、全ての位置の値を0に初期化する。次に、S151おいて、平滑化処理部92は、コーナー検出処理部91で検出された複数のコーナーから1つのコーナーを順に選択する(順序は任意で構わないが、重複選択はしない)。
【0094】
続いて、S152において、平滑化処理部92は、S151で選択したコーナーを中心とした、所定半径内の領域、例えば、画像幅の1/10程度の半径内の領域において検出されたコーナーの個数(=C)を算出する。次に、S153において、平滑化処理部92は、S152で算出したコーナーの個数Cに基づいて、S151で選択したコーナー位置で用いる空間フィルタを、以下の(1)式のようにように設定する。
【0095】
【数1】

【0096】
ここで、xとyは、空間フィルタの中心を原点としたときの、空間フィルタにおける位置を示す。またαは、空間フィルタの幅に関する定数である。このαの値は、ここでの空間フィルタリング処理により、隣接する特徴情報が混同してしまわない程度の大きさに、予め実験的に定めておけばよい。本実施形態では、αの値を上記半径の3/4としている。このような空間フィルタを用いることにより、検出されたコーナーが少ない場合、つまり、Cが小さい場合には、適用する空間フィルタの幅が大きくなり、逆に、検出されたコーナーが多い場合には、空間フィルタの幅が小さくなる。
【0097】
S154で、平滑化処理部92は、S151においてコーナー検出処理部91で検出された全てのコーナーを選択したか否かの判定を行う。全てのコーナーを選択した場合には、S155の空間フィルタリング処理のステップに進む。全てのコーナーを選択していない場合には、S151のコーナー選択のステップに戻り、新たに1つのコーナーを選択し、上述の処理を繰り返す。つまり、S151からS153までの処理を、コーナー検出処理部91で検出された全てのコーナーに対して行い、次の空間フィルタリング処理ステップS155に進むことになる。
【0098】
ここまでの処理により、コーナー検出処理部91で検出された全てのコーナーに対し、その近傍領域(所定半径内の領域)に存在するコーナーの個数に応じた空間フィルタが設定されることになる。このように、本実施形態においては、特徴の局在性を緩和させる変換のパラメータ、すなわち、本実施形態の平滑化処理に用いる空間フィルタが、パターン識別の処理対象であるデータに依存して動的に設定されることになる。
【0099】
次に、S155において、平滑化処理部92は、特徴分布マップ生成処理部911で生成した特徴分布マップを用い、いわゆる投射野型の空間フィルタリング処理を行うことで、位置空間における特徴の局在性を緩和させる変換を行う。
【0100】
通常の受容野型の空間フィルタリング処理では、フィルタリング処理に用いる空間フィルタの値で、フィルタリング適用対象データの対応する位置の値を重み付けして加算した値を、フィルタリング処理後の各位置の値とする処理を行う。これに対し、投射野型の空間フィルタリング処理では、フィルタリング適用対象データ(ここでは、特徴分布マップ生成処理部911で生成した特徴分布マップ)の値を、フィルタリング処理に用いる空間フィルタの値で重み付けする。そして、フィルタリング処理後の対応する位置の値(ここでは、特徴分布拡散マップの各位置の値)に順次、重み付けられた空間フィルタの値を加算するという処理を行う。
【0101】
このような投射野型の空間フィルタリング処理は、フィルタリング適用対象データが非常に疎である場合、フィルタリング適用対象データ上の、信号が存在する位置(特徴分布マップ上の、値が1である位置)でのみ実行されればよい。したがって、高速な処理が可能となる。より具体的には、コーナー検出処理部91で検出されたコーナー位置において、値が1である特徴分布マップに対してのみ、S153で設定された空間フィルタを用いて、上述の投射野型の空間フィルタリング処理を行えばよい。
【0102】
この投射野型の空間フィルタリングで用いる空間フィルタは、前述のように、その近傍領域に存在するコーナーの個数に応じて、上記(1)式に従って設定した。このような空間フィルタを用いることにより、近傍領域において、検出されたコーナーが少ない、つまり、Cが小さい場合、適用する空間フィルタの幅が大きくなり、逆に、コーナーが多い場合、空間フィルタの幅が小さくなる。このため、コーナーが密に存在するような場所では、ここでの処理により拡散させる特徴情報が、その他の特徴情報と混同されてしまわないように、小さい幅で拡散させ、コーナーの存在が疎である場所では、大きい幅で拡散させることが可能になる。
【0103】
このように、実施形態3のパターンを識別する方法では、特徴の局在性を緩和させる変換を、それぞれの位置ごとに、例えば、その位置付近における特徴の分布等に応じたものとしても構わない。また、本実施形態では、その位置付近における特徴の分布に従って、空間フィルタの幅を変更したが、本発明はこれに限るものではなく、例えば、分布の主軸方向に応じて、空間フィルタの形状を変更しても構わない。また、本実施形態では、その位置近傍における特徴の個数、即ち、近傍領域における特徴分布の密度に基づいて、空間フィルタを設定したが、これに限るものではない。例えば、最も近い位置にある特徴(自身を除いて)までの距離に基づいて、空間フィルタを設定してもよい。
【0104】
図11は、複数の特徴分布拡散マップの例を示す。特徴分布拡散マップ1121から1126は、S155の空間フィルタリング処理のステップ、すなわち1段階目の特徴局在性緩和処理を行った、特徴分布拡散マップの例である。特徴分布拡散マップ1121は、輝度勾配方向が、0度から30度未満の範囲に対応する不図示の特徴分布マップに対し、S155の処理により、位置空間における特徴の局在性を緩和させた結果である。また同様に、特徴分布拡散マップ1122から1126までは、それぞれ、30度から60度未満の範囲から、150度から180度未満の範囲それぞれに対応した、処理結果である。この図に示すように、S155の処理により、コーナーが密に分布している位置では、小さい幅で特徴情報が拡散され、コーナーの分布が疎な位置では、大きい幅で特徴情報が拡散されることになる。これにより、近い位置の特徴情報は適度に混同されることなく、また特徴が存在しない位置にも、ある程度拡散させた特徴情報の裾が到達するようになるので、元のデータに比べて、大幅に、特徴の局在性を緩和させることができる。
【0105】
しかしながら、例えば、図11の特徴分布拡散マップ1122では、まだ特徴信号が存在しない領域が多く、充分な局在性の緩和ができているとは言えない。そこで、特徴の局在性を緩和させる第2段階の変換として、S156の輝度勾配方向空間フィルタリング処理のステップにより、今度は、輝度勾配方向空間にも、特徴情報を拡散させる処理を行い、輝度勾配方向空間における特徴の局在性をも緩和させる。
【0106】
より具体的には、近傍の輝度勾配方向の範囲に対応する、S155での処理の結果に、所定の重み付けて加算することにより、輝度勾配方向空間に特徴情報を拡散させる。ここでの具体的な処理結果を、図11の特徴分布拡散マップ1131から1136に示した。
【0107】
このS156の処理結果の内、輝度勾配方向が60度から90度未満の範囲に対応する特徴分布拡散マップ1133の結果を生成する処理の手順について説明する。まず、同じ輝度勾配方向の範囲に対応する特徴分布拡散マップ1123の結果については、そのまま1.0の重み付けで加算する(図中、太い下方向への矢印に対応)。そして、隣接する輝度勾配方向の範囲に対応する、特徴分布拡散マップ1122と、特徴分布拡散マップ1124のそれぞれの結果に、重み付けとして0.6を乗じたものを加算する(図中、斜め方向への実線矢印に対応)。最後に、もう1つ離れた輝度勾配方向の範囲に対応する、特徴分布拡散マップ1121と特徴分布拡散マップ1125のそれぞれの結果に重み付けとして0.2を乗じたものを加算することで、輝度勾配方向空間にも特徴情報を拡散させた特徴分布拡散マップ1133が得られる。
【0108】
本実施形態においては、輝度勾配方向の0度と180度が一致するため、例えば、0度から30度未満の範囲の、隣接する輝度勾配方向は、30度から60度未満の範囲と、150度から180度未満の範囲となる。すなわち、特徴分布拡散マップ1131の輝度勾配方向は、1.0の重み付けの特徴分布拡散マップ1121とそれぞれ0.6の重み付けの特徴分布拡散マップ1122、1126とそれぞれ0.2の重み付けの特徴分布拡散マップ1123、1125とを加算したものとなる。このように、本発明における特徴の局在性を緩和させる変換は、位置空間における局在性を緩和させるものに限らず、その他の空間における局在性を緩和させるような変換であっても構わない。
【0109】
このS156での処理により生成した、図11の特徴分布拡散マップ1131から1136までが、図9の平滑化処理部92において生成する複数の特徴分布拡散マップの例である。このように、平滑化処理部92は、第1段階目の変換におけるパラメータ決定と、第1段階の変換、および第2段階の変換を行い、複数の特徴分布拡散マップを生成する。ここでの処理は、図10のS1020、およびS1021に対応する。この処理により、図11の特徴分布拡散マップ1131から1136に示したように、元の複数の特徴分布マップに比べ、大幅に、特徴の局在性を緩和させることができる。このようにして、実施形態1の説明において述べた同様な、本発明の特徴的な効果が得られる。
【0110】
これ以降の、決定木探索処理部93、スコア加算部94、およびパターン判定部95の処理部は、実施形態2と比べたとき、決定木探索処理部93での処理対象データが、距離マップではなく、複数の特徴分布拡散マップであるという違いがある。しかし、それ以外は、実施形態2における、決定木探索処理部53、スコア加算部54、およびパターン判定部55の処理部とほぼ同様の処理であるので、これらの説明を省略する。
【0111】
このように、本実施形態のパターン識別方法では、まず、入力されたデータ上に存在する特徴を抽出した。そして上述した、位置空間と輝度勾配方向空間の2段階で、特徴情報を拡散させる処理を行い、抽出した特徴の局在性を緩和させた、複数の特徴分布拡散マップを生成した。また、複数の特徴分布拡散マップを用いる点は異なるが、実施形態2と同様に、各分岐ノードにおいて、この複数の特徴分布拡散マップ中のサンプリングデータを用いて分岐を行う決定木を複数用い、それらの結果を統合してパターン識別の処理を行った。これにより、種々の変動にロバストで、且つ、高速なパターン識別が可能となることを示した。
【0112】
尚、本実施形態では、コーナー検出処理の結果に基づき、その点における特徴を抽出するようにした。しかし、本発明はこれに限るものではなく、例えば、Difference of Gaussians(DoG)を用いたブロッブ検出の結果に基づく方法等のその他の特徴検出方法であっても構わない。また、他の実施形態と同様に、サンプリングデータを用いるパターン識別方法としては、2点の大小比較結果を用いる手法だけでなく、ある1点の値と、所定の閾値との比較結果を用いる方法でも構わない。また、本実施形態の構成においても、入力されたデータが、ある特定のカテゴリであるかどうかを識別するような手法や、ラスタスキャン的な処理により入力画像中から特定のカテゴリのパターンを検出するような手法にも適用可能である。
【0113】
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。

【特許請求の範囲】
【請求項1】
画像における少なくとも1つの特定パターンに関して判定のための情報を登録する登録手段と、
画像データを入力する入力手段と、
前記入力した画像データから所定の特徴の分布を抽出し、該特徴の分布を示す第1特徴分布マップを生成する第1生成手段と、
前記第1特徴分布マップの局在性を緩和させる変換を該第1特徴分布マップに適用して第2特徴分布マップを生成する第2生成手段と、
前記第2特徴分布マップ上のサンプリングデータと前記登録された情報とを用いて、前記画像データが前記特定パターンのうちいずれのパターンかを判定する判定手段と、
を備えることを特徴とする情報処理装置。
【請求項2】
前記変換は、所定の平滑化フィルタによる空間フィルタリング処理であることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記所定の平滑化フィルタは、所定の分布特性に従う空間フィルタであることを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記所定の平滑化フィルタは、前記所定の分布特性に従った分布の幅を有するか、または分布の形状を有する空間フィルタであることを特徴とする請求項3に記載の情報処理装置。
【請求項5】
前記変換は、前記第1特徴分布マップ上の各点から最近傍の特徴までの距離を算出し、各点の値を該算出した距離に置き換えることを特徴とする請求項1に記載の情報処理装置。
【請求項6】
前記変換は、前記第2特徴分布マップにおける各点の距離の値に上限値を設定し、前記最近傍の特徴までの距離が前記上限値以上の場合、その位置における前記第2特徴分布マップの値を前記上限値とすることを特徴とする請求項5に記載の情報処理装置。
【請求項7】
前記上限値は、前記第1特徴分布マップの各位置における局所的な分布特性に従って設定することを特徴とする請求項6に記載の情報処理装置。
【請求項8】
前記上限値は、第1特徴分布マップ上の各位置の周りの所定の領域内における特徴の密度に基づいて設定されることを特徴とする請求項7に記載の情報処理装置。
【請求項9】
前記第1生成手段は、前記画像データにおけるエッジの分布マップを生成することを特徴とする請求項1に記載の情報処理装置。
【請求項10】
前記第2生成手段は、前記画像データにおける複数のコーナーエッジを抽出し、コーナーエッジに対して輝度勾配方向を求め、輝度勾配に従って該コーナーエッジを分けることで、複数の特徴分布マップを生成することを特徴とする請求項1に記載の情報処理装置。
【請求項11】
前記第2生成手段は、前記複数の特徴分布マップの各々に対して、輝度勾配方向が隣接する特徴分布マップに重み付けをして、該特徴分布マップに加算することを特徴とする請求項10に記載の情報処理装置。
【請求項12】
情報処理装置のパターン識別の方法であって
登録手段が、画像における少なくとも1つの特定パターンに関して判定のための情報を登録する登録工程と、
入力手段が、画像データを入力する入力工程と、
第1生成手段が、前記入力した画像データから所定の特徴の分布を抽出し、該特徴の分布を示す第1特徴分布マップを生成する第1生成工程と、
第2生成手段が、前記第1特徴分布マップの局在性を緩和させる変換を該第1特徴分布マップに適用して第2特徴分布マップを生成する第2生成工程と、
判定手段が、前記第2特徴分布マップ上のサンプリングデータと前記登録された情報とを用いて、前記画像データが前記特定パターンのうちいずれのパターンかを判定する判定工程と、
を有することを特徴とする方法。
【請求項13】
請求項12に記載の各工程をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図3】
image rotate

【図7】
image rotate

【図11】
image rotate