(57)【要約】【課題】画像データを処理する方法および装置を提供する。【解決手段】オブジェクトまたは画像に対応する信号を処理することによって当該オブジェクトまたは画像から導き出したデータ分布を表現する方法であって、データ分布から導き出した第１のデータ分布の近似表現を再帰的に（recursively）導き出すことと、データ要素の誤差を、前記近似表現に関して示した第２のデータ分布として分析することとを含む。前記データ要素は多次元であり、前記近似表現は、データ空間の部分空間である。また、前記部分空間は、主成分分析を用いて導き出され、前記誤差の分析は、クラスタリングを含む。【選択図】図５
2004054957.tif 000002
【特許請求の範囲】
【請求項１】
　オブジェクトまたは画像に対応する信号を処理することによって該オブジェクトまたは画像から導き出したデータ分布を表現する方法であって、
　前記データ分布から導き出した第１のデータ分布の近似表現を再帰的に（recursively）導き出すことと、
　データ要素の誤差を、前記近似表現に関して示した第２のデータ分布として分析すること
　とを含む方法。
【請求項２】
　前記データ要素は多次元であり、前記近似表現は、データ空間の部分空間である
　請求項１に記載の方法。
【請求項３】
　前記部分空間は、主成分分析を用いて導き出される
　請求項２に記載の方法。
【請求項４】
　前記誤差の分析は、クラスタリングを含む
　請求項１ないし３のいずれかに記載の方法。
【請求項５】
　あるクラスタに対する所属度を表すメンバシップ関数を用いたファジィクラスタリングを含む
　請求項４に記載の方法。
【請求項６】
　前記誤差の分析は、各クラスタの主成分分析（局所的またはファジィ主成分分析）を含み、それによって各クラスタを表す部分空間を生成する
　請求項４または５に記載の方法。
【請求項７】
　所与のクラスタ中のデータ要素について、前記クラスタの部分空間に関して示した前記要素の誤差を分析することを含む
　請求項６に記載の方法。
【請求項８】
　誤差クラスタを表す部分空間を導き出すステップと、結果として生じた誤差を分析するステップとを繰り返し、トップノードと、前記誤差クラスタに対応するノードとを有するツリー構造を生成する
　請求項７に記載の方法。
【請求項９】
　所与のクラスタについて誤差の値に応じて前記繰り返しの停止を決めることを含む
　請求項８に記載の方法。
【請求項１０】
　新たなデータを用いてモデルを拡張し、前記ツリーに新たなノードを追加する
　請求項８または９に記載の方法。
【請求項１１】
　オブジェクトまたは画像に対応する信号を処理することによって該オブジェクトまたは画像から導き出したデータ要素を表現する方法であって、前記データ要素を、請求項１ないし１０のいずれかにより導き出した表現に関して示すことを含む方法。
【請求項１２】
　前記要素を、複数のノードを有するツリー構造に関して示すことと、該ツリー構造の複数のノードについて前記要素の係数を求めることとを含む
　請求項１１に記載の方法。
【請求項１３】
　前記データ要素があるノードに対応する度合を表すメンバシップ値を用いることを含む請求項１２に記載の方法。
【請求項１４】
　前記係数および／または前記メンバシップ値を量子化することを含む
　請求項１２または１３に記載の方法。
【請求項１５】
　画像シーケンス中の１枚または複数枚の画像から導き出したデータを含む
　請求項１ないし１４のいずれかに記載の方法。
【請求項１６】
　前記オブジェクトまたは画像は、人物または顔に対応する
　請求項１ないし１５のいずれかに記載の方法。
【請求項１７】
　請求項１１ないし１４のいずれか一項、あるいは請求項１１ないし１４に従属する請求項１５または１６に記載の方法により導き出したデータ要素の記述子。
【請求項１８】
　ツリー構造中のノードに対応する部分記述子（partial descriptor）を含み、該部分記述子の各々は、ノード識別子と、ノードの係数と、任意にメンバシップ値とを含む
　請求項１７に記載の記述子。
【請求項１９】
　オブジェクトまたは画像に対応する信号を処理することによって該オブジェクトまたは画像から導き出した照会データ要素を照合または分類する方法であって、照合関数（matching function）を用いて請求項１７または１８に従う照会データ要素の記述子を請求項１７または１８に従うデータベース記述子要素と比較することを含む方法。
【請求項２０】
　請求項１ないし１９のいずれかに記載の方法を実行するように設定した装置。
【請求項２１】
　プロセッサと、メモリと、画像またはオブジェクト入力手段とを備える請求項２０に記載の装置。
【請求項２２】
　請求項１ないし１６または１９のいずれか一項に記載の方法を実行するコンピュータプログラム。
【請求項２３】
　請求項２２に記載のコンピュータプログラムを含むコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明は、多次元データの分布を分析および表現し、データ項目を分類する方法および装置に関する。本発明は、特に、オブジェクトおよび顔の局所化（localisation）すなわち認識といった技術における画像データ、および画像またはビデオコンテンツの分析に係る。
【背景技術】
【０００２】
　多次元データの簡潔な（compact）表現および分析は、デジタル信号におけるオブジェクト認識および索引付け用のシステムの設計および性能に重大な影響を与える。かかる信号の例は、画像またはビデオ信号である。従来の手法に伴う主な問題は、計算の複雑性が高いことであり、この複雑性は、通常、データの次元数に伴い指数関数的に増す。現存の方法に伴う別の問題は、あまり一般化ができないことであり、例えば当該方法の性能は、利用可能なデータが増加するにつれて急速に低下する。これは、そのシステムの設計または訓練段階では利用可能でなかった「部類」の信号を表す新たなデータが追加された場合に特に顕著である。
【０００３】
　複雑性の問題を軽減するための一般的な解決策の１つは、主成分分析（Principal Component Analysis：ＰＣＡ）によってデータ次元数を下げることである。ＰＣＡは、全ての訓練ベクトルについて最もよく近似する線形部分空間を探す。局所的ＰＣＡ（Local PCA：ＬＰＣＡ）と呼ばれる別の技法は、よりよいデータ近似を与える局所的線形部分空間のセットを計算する。局所的線形近似の探索は、クラスタリングプロセスの特別な場合とみなすことができ、当業者に広く用いられている。例えば、ＬＰＣＡ法は、手書き文字認識に関して開発および適用に成功している（非特許文献１参照）。ＬＰＣＡに対するさらなる改良は、ファジィ手法との組み合わせ（ファジィＬＰＣＡすなわちＦＬＰＣＡ）により達成することができる（非特許文献２及び２参照）。
【０００４】
　本発明の理解の助けとするため、ＰＣＡ、ＬＰＣＡおよびＦＬＰＣＡという従来技術の概要を以下に述べる。
【０００５】
　主成分分析は、データ表現の次元を下げるために用いられる最も一般的な方法の１つである。これは、ｎ次元のデータベクトルＸの、ｋ次元の線形部分空間Ｓへの正射影Ｐsに基づくものである（ｋ＜ｎ）。部分空間Ｓは、データベクトルＸｉと、その部分空間Ｓ上の射影Ｐｓ（Ｘｉ）との間の二乗誤差の期待値Ｅを最小化するものとして定義される、すなわちＥ‖Ｘ−Ｐs（Ｘ）‖2。図１は、２次元のデータ分布および１次元の部分空間Ｓの一例を示す。
【０００６】
　図２は、１つの線形部分空間Ｓでは近似が粗くなるデータの一例を示す。このような状況では、局所的ＰＣＡがよりよい表現を与えることが多い。ＬＰＣＡは、データのクラスタリングを行い、各データクラスタ毎に異なる線形モデルを用いる。図２において、データは、２つのクラスタに分割され、２つの部分空間Ｓ１およびＳ２においてよく近似されている。各データベクトルは１つのクラスタのみに属することに留意されたい。これは、クリスプクラスタリングと呼ばれることがある。クラスタ近接度を用いて、データベクトルＸｉがどのクラスタに属するかを判定する。データベクトルは、対応するクラスタ近接度を最小化するクラスタに属する。局所的主成分分析（ＬＰＣＡ）では、近接度は通常、ベクトルＸｉからクラスタによって定義される部分空間までの平方ユークリッド距離として選択される。クラスタおよび関連する局所的部分空間の探索は、定義した表現の誤差の期待値を最小化することを目的とした最適化の問題である。
【０００７】
　ＬＰＣＡとＦＬＰＣＡとの間の主な違いは、後者では、データベクトルＸｉが２つ以上のクラスタに属する場合があり、各クラスタとの関連の強さが異なり得ることである。ＦＬＰＣＡにおいて、モデルは、オブジェクトデータ空間（object data space）に定義されるＫ個のファジィクラスタからなる。各ファジィクラスタは、上記データ空間にわたって定義され、［０，１］の間隔から値をとるメンバシップ関数μ（Ｘ）によって表される。１に近いメンバシップ値は強い関連レベルに相当し、ゼロに近いメンバシップ値は弱い関連に相当する。標準的なクリスプクラスタリングの場合、メンバシップ値は、２つのレベルすなわち０または１しか持たない。図３は、モデルが２つのファジィクラスタと、対応する部分空間とからなる一例を示す。データベクトルＸＡが同じ関連の強さμ（ＸＡ）＝（０．５，０．５）で両方のクラスタに属するのに対し、ベクトルＸＢはクラスタ２により強く関連する、すなわちμ（ＸＢ）＝（０．２，０．８）。
【０００８】
　ＰＣＡ、ＬＰＣＡおよびファジィＬＰＣＡ手法は、訓練データセットを基に構築される「データモデル」を用いる。このモデルは、アプリケーションデータの簡潔なベクトル記述子を抽出するために用いられる。そのモデルでは近似が粗くなる新たなデータベクトルが後に発見されることは頻繁にある。かかるベクトルは、大きな復元誤差（reconstruction error）を生じる。考え得る一対応策は、新しいモデルを作成することであるが、その場合、以前に計算した記述をすべて廃棄して計算し直さなければならない。これは、特に分散環境で協働するアプリケーション群にとって深刻な問題となり得る。
【０００９】
【非特許文献１】「局所的主成分分析による手書き数字認識（Handwritten digit recognition by local principal component analysis）」と題する論文（SkarbekおよびIgnasiak著、"Foundations of Intelligent Systems", eds.: Z. W. Ras, A. Skowron, pp. 217-226, Lecture Notes in Computer Science, vol. 1325, Springer, 1997による）
【非特許文献２】Bezdek、Coray、Gunderson、およびWatson著「クラスタの部分構造の検出および特性化　Ｉ．線形構造：ファジィＣライン（Detection and Characterization of Cluster Substructure.　I. Linear structure: Fuzzy c-Lines）」（SIAM J. Appl. Math., vol.40, 1981）
【非特許文献３】Bezdek著「ファジィ目的関数アルゴリズムを用いたパターン認識（Pattern Recognition with Fuzzy Objective Function Algorithms)」（Plenum Press, 1981）
【発明の開示】
【発明が解決しようとする課題】
【００１０】
　本発明は、容易に拡張可能な、下位および上位互換性のある高次元データの簡潔な階層表現方法を開示する。
【課題を解決するための手段】
【００１１】
　本方法は、特にオブジェクト指向の画像の圧縮および認識に適用した場合に、非常に良好な性能を発揮する。
【００１２】
　例として、自動的または補助的（assisted）顔認識の問題に適用した本発明を考察する。顔認識問題は難しい問題である。なぜなら、顔の画像は、様々な顔の姿勢、髪型、眼鏡や口髭の存在、または加齢といった変化により大きな可変性を示すからである。これらすべての影響が各個人に大きな自由度を生むため、現存の顔の記述方式は多くの場合に、十分な精度で顔をモデル化することができない。この問題を解決するために、より柔軟性および適応性がある「顔モデル」が必要である。しかしこれは、現存の手法で用いられるモデルを変更すると全ての記述子を計算し直す必要があるため、問題を生じる。
【００１３】
　提案する本発明は、現存および既存のモデルの具体例を用いて導き出された記述子間の下位および上位互換性をサポートする適応モデルを構築および維持する方法を示す。現在のモデルがデータまたはデータの一部を十分に反映しないことを示すいくつかの証拠がある場合、例えばデータの一部または全部の検索性能が低下している場合には、データモデルに対して変更を行うことができる。下位互換性は完全にサポートされる。つまり、記述子の抽出に既存モデルを用いるアプリケーションが、新たな記述子を既存の記述子と容易に比較することができる。新たな記述子と既存の記述子の両方を、共通フォーマットに変換することなく、探索または他の処理に同時に用いることができる。例えば、既存のモデルに基づく記述子に関する照会を、新しい（更新した）モデルを用いて記述子を抽出したデータベースに対して行った場合、システム応答は、全ての記述子が既存のモデルに基づいたものである状況と等価である。
【００１４】
　本発明はまた、高次元データの簡潔な階層表現方法を開示する。データベクトルは、より低次元の部分記述子のセットとして記述される。各部分記述子は、ファジィな局所的線形部分空間においてモデル化されるデータクラスタに関係する。データベクトルの各部分記述子は、各自のクラスタ所属度と、局所的部分空間（複数可）におけるデータベクトル座標とを含む。訓練データについて得た階層モデルを用いて、同一アプリケーションドメイン中の他のデータを表現することができる。提案するモデルは拡張可能である。すなわち、現存のモデルがデータを十分な精度で表現できなかった場合は、これを改善することができる。改善モデルは下位互換性がある。すなわち、元のモデルで示された記述子は、改善モデルを用いたアプリケーションによって正確に解釈（解読）される。さらに、元のモデルを用いたアプリケーションが、改善モデルを用いて計算された記述子を解読できるため、上位互換性が達成される。本方法は、特にオブジェクト指向の画像の圧縮および認識に適用した場合に、非常に良好な性能を発揮する。
【００１５】
　本発明は概して、データ分布を分析および／または表現する方法を提供し、本方法は、データ分布の近似表現を導き出すことと、当該近似表現に関して示したデータ要素の誤差を分析することとを含む。本方法は再帰的である。換言すれば、誤差の分析は、誤差の分布の近似表現を導き出すこと、次に、結果として生じた誤差を分析することを、終了基準を満たすまで必要に応じて続けることを含む。より具体的に言えば、データ要素は多次元であり、近似表現はデータ空間の部分空間である。好ましくは、部分空間は、主成分分析を用いて導き出される。通常、誤差の分析はクラスタリングを含み、このクラスタリングは好ましくは、あるクラスタに対する所属度を表すメンバシップ関数を用いたファジィクラスタリングである。好ましくは、誤差はまた、主成分分析を用いて、すなわちクラスタのファジィな局所的主成分分析を用いて分析されて、各クラスタを表す部分空間を生じる。クラスタを部分空間に関して示すステップと、結果として生じた誤差を分析するステップ（ファジィな局所的ＰＣＡ）とを繰り返して、各段階で導き出された部分空間に対応する複数のノードを有する階層ツリー構造を生成する。
【００１６】
　ツリーモデルは、新たなデータを用いて当該ツリーに新たなノードを追加することによって拡張することができる。
【００１７】
　本発明はまた、データ要素を表現する方法を提供する。本方法は、データ要素をツリー構造の部分空間と、結果として得られる記述子とに関して示すことを含み、当該記述子は、トップノードに対応するトップ記述子と、下位レベルのノードに対応する部分記述子とを含む。好ましくは、各部分記述子は、ノード識別子と、ノードの部分空間における係数と、任意にメンバシップ値とを含む。
【００１８】
　本発明はまた、上述のように示した記述子を、例えば照合、閲覧、探索および分類の目的で照合する方法を提供する。
【００１９】
　本発明はまた、上述のような方法を実行するように設定されたコンピュータ等の装置と、上記方法を実行するコンピュータプログラムと、当該プログラムを格納するコンピュータ読み取り可能な記憶媒体とを提供する。
【００２０】
　好ましい実施形態において、本発明は、オブジェクトまたは画像に対応する信号を処理することによって当該オブジェクトまたは画像から導き出したデータを分析するためのものである。本発明の特定の用途は、人物（例えば顔）の表現および顔認識に関係する。
【００２１】
　以下の記述では、本発明の実施形態の技法を、階層型ファジィ線形主成分分析（hierarchical fuzzy linear principal component analysis：ＨＦＬＰＣＡ）として説明する。
【００２２】
　添付図面を参照して本発明の実施形態を説明する。
【発明を実施するための最良の形態】
【００２３】
　本発明の根底をなす一般原則をまず最初に説明し、続いて本発明の一実施形態を説明する。
【００２４】
　ＨＦＬＰＣＡ技法の背景にある重要な思想は、ツリー構造上にマッピングされるデータの多層階層表現を構築することである。この思想は、顔の画像に適用して図４に絵で示す。
【００２５】
　より具体的に言えば、本発明が示す新たなデータモデルは、ファジィ線形モデルのツリー（図５）からなる。この表現は、階層構造を有する。ルートノードＮ０は、従来のＰＣＡによるデータ記述に相当する。すなわちルートノードＮ０は、元のｎ次元のデータ空間のｋ０次元の部分空間を表す。通常、このＰＣＡによる最初のデータ近似は精度が低く、このことは、データベクトルの残差の大きな値に反映される。次に、これらの残差をクラスタリングし、ＦＬＰＣＡ法を用いて表現する。各残差クラスタは、対応する子ノードを有する。図５において、ルートノードＮ０は、３つの子Ｎ０１、Ｎ０２、Ｎ０３を有する。これは、残差データに３つのクラスタが存在することを意味する。各ノード（クラスタ）のモデルは、単一の基準点Ｃ（ｋ）と、Ｃ（ｋ）につながった（anchored）、正規直交ベクトルの基底（orthogonal normalized vector base）Ｗ（ｋ）（ｋはノード／クラスタインデックス、例えば０１、０２、０１１）だけ広がる線形部分空間とからなる。次に、第２レベルの表現の残差を計算する。階層は、全てのデータが十分な精度で表現されるまで、階層にさらなる層（子ノード）を再帰的に追加することによってさらに拡張される。代替的または付加的な終了条件が存在してもよく、例えばツリーの深さを制約することができる。
【００２６】
　ツリー中のノードはいずれも、インデックスがｋである親ノードモデルの全ての表現誤差からなる残差（residual）データセットＥ（ｋ）におけるクラスタを表す。簡潔な表現を達成するために、表現係数に量子化を適用することができる。これを量子化モード（quantised mode）と呼ぶ。モデルの作成に量子化モードを用いる場合、残差データは、ノードの基底（node base）の係数を量子化した後に計算される。例えば、ノードＮ０１１の残差は、ノードＮ０１およびＮ０の量子化した係数を用いて計算される。
【００２７】
　ノードの子は、このノードに属するデータ表現の残差に適用されるファジィな局所的ＰＣＡ（ＦＬＰＣＡ）手順によって計算される。ノードは、このノードに属する全データが十分な精度で表される場合、例えば残差の分散がある所定の閾値未満である場合に葉ノードとなる。あるノードにおける残差の分散が分散閾値を超える場合、ＦＬＰＣＡ技法を適用して、このノードにさらなる階層レベルを追加する。
【００２８】
　モデルは、新たなデータが利用可能になったとき容易に拡張することができる。表現精度が十分でない新たなデータベクトル（例えば外れ値）が、ルートノードを含む各ノードでのモデルの使用中に記録される。外れ値のセットにおける表現誤差の分散がある所定の閾値を超えると、この外れ値のセットのみにＨＦＬＰＣＡ技法を適用して、ツリー中の適切な場所に新たなノード（クラスタ）を追加する。
【００２９】
　図６は、３次元のデータベクトルを１次元の部分空間Ｓにおいて表現する一例を示す。図示の各ベクトルについて、表現の誤差が誤差部分空間（平面）Ｅ１Ｅ２に見られる。
【００３０】
　図７および図８は、同様の例をより多くのデータ点とともに示す。クラスタを、Ｅ１Ｅ２誤差部分空間（図８）にはっきりと見ることができる。
【００３１】
　データベクトルは、当該データベクトルが属するファジィクラスタによって定義されるサブツリー中のノードに対応する全ての部分記述子を連結すなわちリンクすることによって構築される複合記述子（combined descriptor）（または記述子集合と呼ばれる部分記述子の集合）と、いくつかの付加的な制御ビットとによって表される。
【００３２】
　記述子集合は、ルートベクトルの基底の係数のベクトルであるルートの部分記述子を常に含む。
【００３３】
　ルート以外の任意の他のノードのデータベクトルの部分記述子は、ノード識別子と、ノードクラスタに関するメンバシップ値（すなわちファジィクラスタリングのメンバシップ関数から得た値）と、ノードの部分空間上の、当該部分空間のベクトルの基底において計算されるベクトル射影の係数とからなる。
【００３４】
　ルート以外の任意の他のノードの部分記述子は、このノードでの表現誤差が閾値を超え、かつ、このノードクラスタに対するデータベクトルのメンバシップが別の閾値を超えた場合に限り、特定のデータベクトルの記述子集合に含まれる。
【００３５】
　量子化モードでは、係数およびメンバシップ関数の値が量子化される。
【００３６】
　照会記述子（query descriptor）Ｑからデータ記述子Ｄまでの距離は、ＱおよびＤの記述子のツリー表現における全ての共通鎖を見つけ、その鎖に関連する距離（例えば総合誤差測度）が最小となる距離を選択することによって計算することができる。この距離は、検討中の鎖中の各ノードに関連する部分記述子間の部分誤差測度と、表現のうち共通鎖に存在しない部分に対応する付加ペナルティとを合計することによって計算される。かかるペナルティは例えば、共通鎖中の最後の共通ノードに対する記述子ＱおよびＤの表現誤差に依存し得る。効率を上げるために、データベース記述子のペナルティ値を事前に計算し、各記述子の一部として格納しておくことができる。図９は、図５に示すモデルツリーを基に構築した２つの記述子Ｑ（図９Ａ）およびＤ（図９Ｂ）間の照合の一例を示す。２本の共通鎖、すなわちＡ鎖（図９Ｃ）およびＢ鎖（図９Ｄ）がある。Ａ鎖の距離は、共通ノードＱ−Ｄ０、Ｑ−Ｄ０１、およびＱ−Ｄ０１１に関連するコンポーネント記述子（component descriptors）間の距離と、共通鎖Ａには存在しないノードＱ０１１０およびＤ０１１１に関連するペナルティＰ（Ｑ０１１０）およびＰ（Ｄ０１１１）との合計である。Ｂ鎖の距離は単に、共通ノードＱ−Ｄ０およびＱ−Ｄ０２に関連するコンポーネント記述子間の距離の合計である。Ｂ鎖の場合、欠けているノードがないため、ペナルティコンポーネントはない。
【００３７】
　古いモデル表現と新しいモデル表現との間の互換性は、モデル階層の拡張の概念に基づく。相互運用性は、次のように達成される。
　・モデルを拡張する際、既存のツリーノードの部分的な記述を保存し、新たに追加されたツリーノードの部分的な記述を追加することによって、既存のモデルに基づく全ての記述子も同様に拡張することができる。
　・「新しい」モデルにおいて表される記述子は単に、モデルツリーに新たに導入されたノードに対応する全ての部分記述子を除去する（すなわち照会段階では考慮しない）ことによって、既存のモデルにマッピングすることができる。
　・既存の記述子と新たな記述子の間の照合は、容易に達成することができる。なぜなら既存の記述は、常により新しい記述のサブセットであり、よって有効な記述として認識され得るためである。照合は、たとえ記述子が異なるモデルを用いて抽出されたものであっても、類似度関数を記述子に直接適用することによって達成することができる。
【００３８】
　好ましい実施形態は３つの主要な要素、すなわちモデルビルダ（Model Builder）と、記述子データベースビルダ（Descriptor Database Builder）と、照会ハンドラ（Query Handler）とを含む。
【００３９】
（モデルビルダ）
　モデルビルダは、モデルツリー構造と、当該モデルツリーの各ノードｋに関連する基準点Ｃ（ｋ）および正規ベクトルの基底Ｗ（ｋ）のセットとを含むデータモデルの構築を担当する。ルートノードはＰＣＡを用いてモデル化され、階層中の以降の各下位レベルはＦＬＰＣＡモデルによって定義される。
【００４０】
　モデルは、Ｎ次元の訓練ベクトルデータサンプルのセットＸＴ＝［Ｘ1，．．．，ＸL］を用いて作成される。
【００４１】
　ルートノードに関連するＰＣＡモデルは、訓練ベクトルセットＸＴに直接適用されるＳＶＤ（特異値分解）を用いることによって作成される。
【００４２】
　所与のツリーノードのＦＬＰＣＡモデルは、ツリーモデルのこのノードにおいて得られる表現誤差データについて作成される。ＦＬＰＣＡは、上記のBezdekの論文に記載されるファジィな多様性（varieties）クラスタリングアルゴリズムを用いて実施される。
【００４３】
　モデルビルダは２つのモード、すなわち展開（expansion）モードおよび拡張モードで動作する。展開モードがモデルの第１バージョンの作成に用いられるのに対し、拡張モードは上記モデルの第１バージョンを更新するために用いられる。展開モードおよび拡張モードは両方とも同一のＦＬＰＣＡ手順を用いるが、対象とする入力データが異なる。つまり、展開モードが元のデータセットを用いるのに対し、拡張モードは所与のツリーノードの外れ値データセット、すなわちそのノードにおいて既に見出されているサブモデルに適合しないデータを利用する。
【００４４】
（記述子データベースビルダ）
　記述子データベースビルダは、入力画像からの記述子の抽出およびデータベースの構築を担当する。入力データベクトルＸｉは、モデルツリーのサブツリーと、関連するコンポーネント記述子のセットと、サブツリー中に存在する各クラスタに対するベクトルＸｉのメンバシップ値とを含む記述子によって表現される。サブツリーは、モデルツリーのどのノードが記述に用いられるか（すなわちアクティブであるか）を指定する。これは、複数ビットのベクトルとして示され、ビット値１がアクティブノードを示し（すなわちこのツリーノードはサブツリーに属し記述に用いられる）、値ゼロはパッシブノードを示す。
【００４５】
　ルートレベルのコンポーネント記述子は、データベクトル（Ｘｉ−Ｃ０）と、ルートノードに関連する正規ベクトルの基底Ｗ（０）からのベクトルとの内積として計算される。
【００４６】
　ルートでないノードｋ（ｋ＞０）に関連するコンポーネント記述子は、ノードｋにおける重心（Ｃ（ｋ））が移動した（centroid (C(k)) shifted）残差ベクトル（Ｒk（Ｘｉ）−Ｃ（ｋ））と、ｋ番目のノードに関連する正規ベクトルの基底Ｗ（ｋ）との内積を用いて計算される。ノードｋにおける残差Ｒk（Ｘｉ）は、ベクトルＸｉと、当該ノードにおけるその復元物との間の差として計算される。
【００４７】
　データベクトルＸｉの完全な記述子は、ツリーノードに関連する、関連するメンバシップ関数の値が所定の閾値を上回るコンポーネント記述子のみを含む。
【００４８】
（照会ハンドラ）
　照会ハンドラは、データベースの探索プロセスを担当する。ここでは例示照会（query by example）を説明する。画像例を照会ハンドラに与え、データベースビルダの抽出コンポーネントを用いて画像から記述子Ｑを抽出する。
【００４９】
　前節で述べたように照会記述子Ｑとデータベース中の各記述子Ｄとの間の距離測度を計算する。ノードｉのペナルティは、このノードでの表現誤差の平方ユークリッドノルムとして定義される。距離測度を最小化するデータベース要素を最適一致（best match）として選択する。
【００５０】
　本発明の一実施形態による方法および装置を、図１０を参照して説明する。
【００５１】
　図１０は、例えば、関係者以外は立ち入りできないことが重要であるオフィスで用いられる監視システムを示す。
【００５２】
　図１０に示すように、システム１は、プロセッサ、メモリ等を含む中央処理装置（ＣＰＵ）２と、ディスプレイ４とを備えるコンピュータを含む。本システムはまた、第１および第２のデジタルカメラ６および８と、警報器１０とを含み、これらは全てＣＰＵ２に接続されている。第１のデジタルカメラ６はシステム１の設定用であり、第２のデジタルカメラは、訪問客の写真撮影用にオフィスビルの受付に設置される。
【００５３】
　システムの開発段階の間に、モデルビルダの項で説明したように汎用的な人間の顔モデル（ＨＦＭ）を作成して、汎用的なツリー構造を生成する。この段階では、様々な条件、例えば照明、姿勢等の下での多数の顔画像を用いる。
【００５４】
　システムは、オフィスビルに立ち入ることを許可された人物、例えば従業員および既知の訪問客の写真を撮影することによって、特定の場所（オフィス）に合わせて調整される。上記の各人物について、第１のデジタルカメラを用いていく枚かの写真を撮影する。好ましくは、多数の写真を撮影する。各人物について、異なる条件下で写真を撮影する。例えば、写真は必要に応じて、異なる照明条件下で、異なる姿勢で、その人物が異なる服装、衣類、帽子、眼鏡を着用しているときに、また異なる髪型および色で撮影する。これらの写真はコンピュータにダウンロードされる。各写真について、頭部の位置を見つけ、背景をクロッピングし、かつ頭部のサイズを変更して、所定の画素サイズを有する画像を形成する。例えば、本件出願人の同時係属中出願第ＧＢ２　３５７　６５０Ａ号に記載したような技法を用いることができる。サイズを変更した頭部の画像中の画素の各々のＲＧＢ値を組み合わせて、当該画像の特徴ベクトルを形成する。したがって、特徴ベクトルの寸法は、サイズを変更した頭部の画像中の画素数に依存する。例えば、サイズを変更した画像のサイズが２５×３０画素である場合、特徴ベクトルの寸法は２５×３０となる。
【００５５】
　１人の人物の全ての特徴ベクトルが、その人物用の訓練セットを形成し、その人物の外見のＨＦＬＰＣＡ表現を生成するために用いられる。より具体的に言えば、各人物の特徴ベクトルは、上記の汎用的なツリー構造に関して示される。換言すれば、特徴ベクトルの各々は、記述子データベースビルダの項で上述した記述子すなわちサブツリー（汎用的なツリー構造の関連ノード）と、対応するコンポーネント記述子と、メンバシップ値との形態で示される。１人の人物の全ての特徴ベクトルの全てのサブツリーの組み合わせは、その人物の普遍的な個人用サブツリー（universal individual subtree）とみなすことができる。概して、普遍的な個人用サブツリー表現のノードは、異なる条件下での人物の画像にほぼ一致するものと考えることができる。例えば図４を参照すると、トップレベルは、人物の概略的な記述であり、第２レベルの３つのノードは、真正面、左側および右側を見る人物に対応する。第２レベルの第１のノードから派生する第３レベルの２つのノードは、真正面を見る人物を暗条件および明条件で撮影したものであり、第４レベルの２つのノードは、明条件で正面を見る人物が化粧をしている場合と化粧をしていない場合とをそれぞれ表す。
【００５６】
　人物のＨＦＬＰＣＡ表現はコンピュータに格納される。より具体的に言えば、記述子（サブツリーと、コンポーネント記述子と、サブツリーの各ノードに関連するメンバシップ関数値と）が格納される。
【００５７】
　ＨＦＬＰＣＡ表現は、各関係者について同様に導き出されて格納される。
【００５８】
　オフィスに到着した人物は、受付にある第２のデジタルカメラの前に立ち、この第２のデジタルカメラが動作して写真を撮影する。この写真はコンピュータに送られ、そこで顔部を設定のためにクロッピングし、サイズを変更して、上述したような照会特徴ベクトルに変換する。次にこの照会特徴ベクトルを汎用的なツリー構造に関して示して照会記述子を生成し、この照会記述子を格納された関係者の表現と比較する。より具体的に言えば、格納された個人の表現毎に、上述した照合技法を用いて照会記述子を格納された記述子と比較する。結果として得られた最短距離が（格納された人物の全記述子を通じて）所定の閾値未満である場合、この照会は一致として扱われる。一致が見出されて人物が認識された場合、当該人物の画像がディスプレイ４に表示され、その人物は進入を許可される。結果として得られた格納された人物の最短距離が所定の閾値よりも大きかった場合、照会は拒絶される。照会記述子が１人の人物について拒絶された場合、照合手続は次の人物について次の格納されたＨＦＬＰＣＡ表現を用いて繰り返される、等となる。代替的に、上述のような連続的な照合を行う代わりに、格納された全人物の表現をすべて照会記述子と比較し、結果として得られた距離（例えば結果として得られた全ての距離または人物毎の最短距離、あるいは人物毎の、所定の閾値を下回る最短距離）を検査する。例えば、結果として得られた最短距離（所定の閾値未満であると仮定する）は、一致する（matching）人物として扱われる。閾値未満の距離が存在しない場合、照会は拒絶される。格納された全ての表現を検討しても一致が見つからない場合、警報器１０が鳴る。
【００５９】
　カメラは異なる場所、例えばオフィスビルの屋外（例えば門）にあってもよい。スチルカメラの代わりにビデオカメラを用いることもできる。カメラは、人物の画像を自動的に撮影してもよいが、その場合、顔部の抽出はより困難になるだろう。特徴ベクトルの導出は上述したものに限定されない。特徴ベクトルは例えば、異なる画像サイズ、異なる量子化、カラーではなくグレースケール値を用いて導き出すことができ、他の処理ステップ、例えば画素値の平均化を含めることもできる。第２のデジタルカメラで撮影した人物の写真は、格納された表現を更新するために用いることもできる。また、除外したい既知の人物、例えば元従業員の表現を格納し、これらの人物に一致した場合に警報を鳴らすこともできる。
【００６０】
　新たな人物がデータベースに追加された結果、システムの性能は低下する可能性がある。この原因の１つは、システム開発段階の間に抽出した人間の顔モデル（ＨＦＭ）がいくつかの顔を十分な精度で記述できない可能性があることである。このような顔を外れ値と呼ぶ。ＨＦＭモデルは時々、使用中に収集した外れ値の顔のセットを基に更新することができる。上で説明したように、かかる更新は、システムに格納された現存の記述子すべてに対する更新を必要としない。
【００６１】
　本発明は、監視および顔認識に限定されず、様々な用途で用いることができる。例えば、本発明は概して、オブジェクトの認識および照合、ならびに画像データベースの探索におけるような画像照合に用いることができる。
【００６２】
　本発明を静止画像および動画のコンテキストで説明してきたが、本発明は多くのコンテキスト、例えば手書き文字認識、レーダー信号、ソナー信号または音響信号の信号認識および他の用途、特に、本質的に何らかの形態のパターン認識に頼る、高次元データを伴う用途に適用することができる。
【図面の簡単な説明】
【００６３】
【図１】ＰＣＡを示すグラフである。
【図２】ＬＰＣＡを示すグラフである。
【図３】ＦＬＰＣＡを示すグラフである。
【図４】顔の画像を用いたツリー構造の絵図である。
【図５】ＨＦＬＰＣＡ表現のツリー構造を示す図である。
【図６】ＨＦＬＰＣＡ表現を導き出す方法の１ステップを示すグラフである。
【図７】データ分布と、対応するＨＦＬＰＣＡツリー構造のトップレベルとを示すグラフである。
【図８】図７のデータに対応する残差データの分布を示すグラフである。
【図９】記述子の照合を示すグラフである。
【図１０】本発明の一実施形態による装置を示す図である。
【図１】
2004054957.tif 000003
【図２】
2004054957.tif 000004
【図３】
2004054957.tif 000005
【図４】
2004054957.tif 000006
【図５】
2004054957.tif 000007
【図６】
2004054957.tif 000008
【図７】
2004054957.tif 000009
【図８】
2004054957.tif 000010
【図９】
2004054957.tif 000011
【図１０】
2004054957.tif 000012