(57)【特許請求の範囲】
【請求項１】
供給される画像から、顔画像の部分を検出する顔画像検出手段と、
前記顔画像検出手段により検出された前記顔画像の顔が向いている方向を検出する顔方向検出手段と、
前記顔画像検出手段により検出された顔画像と前記顔方向検出手段により検出された前記顔の方向とから、前記顔の特徴となる特徴位置を検出する特徴位置検出手段と、
前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出する特徴量算出手段と、
前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像する写像手段と、
前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出手段により検出された前記顔は、登録されている顔であるか否かを識別する識別手段と
を備える画像処理装置。
【請求項２】
前記特徴量算出手段は、Gabor FilterまたはGaussian Derivative Filterにより前記特徴量を算出する
請求項１に記載の画像処理装置。
【請求項３】
前記写像手段は、写像関数として、Support Vector Regressionを用いる
請求項１に記載の画像処理装置。
【請求項４】
前記写像手段は、前記特徴量算出手段により算出された前記特徴量を構成する要素のうち、少なくとも１つの要素を前記写像関数により写像する
請求項１に記載の画像処理装置。
【請求項５】
前記識別手段による識別結果が、不正解であった場合、前記写像関数を更新する更新手段をさらに備える
請求項１に記載の画像処理装置。
【請求項６】
顔画像検出手段、顔方向検出手段、特徴位置検出手段、特徴量算出手段、写像手段、および識別手段を備える画像処理装置の画像処理方法において、
前記顔画像検出手段は、供給される画像から、顔画像の部分を検出し、
前記顔方向検出手段は、前記顔画像検出手段により検出された前記顔画像の顔が向いている方向を検出し、
前記特徴位置検出手段は、前記顔画像検出手段により検出された顔画像と前記顔方向検出手段により検出された前記顔の方向とから、前記顔の特徴となる特徴位置を検出し、
前記特徴量算出手段は、前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出し、
前記写像手段は、前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像し、
前記識別手段は、前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出ステップの処理で検出された前記顔は、登録されている顔であるか否かを識別する
ステップを含む画像処理方法。
【請求項７】
顔画像検出手段、顔方向検出手段、特徴位置検出手段、特徴量算出手段、写像手段、および識別手段を備える画像処理装置に、
前記顔画像検出手段は、供給される画像から、顔画像の部分を検出し、
前記顔方向検出手段は、前記顔画像検出手段により検出された前記顔画像の顔が向いている方向を検出し、
前記特徴位置検出手段は、前記顔画像検出手段により検出された顔画像と前記顔方向検出手段により検出された前記顔の方向とから、前記顔の特徴となる特徴位置を検出し、
前記特徴量算出手段は、前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出し、
前記写像手段は、前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像し、
前記識別手段は、前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出ステップの処理で検出された前記顔は、登録されている顔であるか否かを識別する
ステップを含む処理を実行させるコンピュータが読み取り可能なプログラム。
【請求項８】
供給される画像から、所定の物体を検出する検出手段と、
前記検出手段により検出された前記物体が向いている方向を検出する方向検出手段と、
前記検出手段により検出された物体と前記方向検出手段により検出された前記物体が向いている方向とから、前記物体の特徴となる特徴位置を検出する特徴位置検出手段と、
前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出する特徴量算出手段と、
前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像する写像手段と、
前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出手段により検出された前記物体は、登録されている物体であるか否かを識別する識別手段と
を備える画像処理装置。
【請求項９】
前記特徴量算出手段は、Gabor FilterまたはGaussian Derivative Filterにより前記特徴量を算出する
請求項８に記載の画像処理装置。
【請求項１０】
前記写像手段は、写像関数として、Support Vector Regressionを用いる
請求項８に記載の画像処理装置。
【請求項１１】
前記写像手段は、前記特徴量算出手段により算出された前記特徴量を構成する要素のうち、少なくとも１つの要素を前記写像関数により写像する
請求項８に記載の画像処理装置。
【請求項１２】
前記識別手段による識別結果が、不正解であった場合、前記写像関数を更新する更新手段をさらに備える
請求項８に記載の画像処理装置。
【請求項１３】
検出手段、方向検出手段、特徴位置検出手段、特徴量算出手段、写像手段、および識別手段を備える画像処理装置の画像処理方法において、
前記検出手段は、供給される画像から、所定の物体を検出し、
前記方向検出手段は、前記検出手段により検出された前記物体が向いている方向を検出し、
前記特徴位置検出手段は、前記検出手段により検出された物体と前記方向検出手段により検出された前記物体が向いている方向とから、前記物体の特徴となる特徴位置を検出し、
前記特徴量算出手段は、前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出し、
前記写像手段は、前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像し、
前記識別手段は、前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出手段により検出された前記物体は、登録されている物体であるか否かを識別する
ステップを含む画像処理方法。
【請求項１４】
検出手段、方向検出手段、特徴位置検出手段、特徴量算出手段、写像手段、および識別手段を備える画像処理装置に、
前記検出手段は、供給される画像から、所定の物体を検出し、
前記方向検出手段は、前記検出手段により検出された前記物体が向いている方向を検出し、
前記特徴位置検出手段は、前記検出手段により検出された物体と前記方向検出手段により検出された前記物体が向いている方向とから、前記物体の特徴となる特徴位置を検出し、
前記特徴量算出手段は、前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出し、
前記写像手段は、前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像し、
前記識別手段は、前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出手段により検出された前記物体は、登録されている物体であるか否かを識別する
ステップを含む処理を実行させるコンピュータが読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置および方法、並びにプログラムに関し、特に、物体の識別をより精度良くできるようにした画像処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
近年、人を識別する装置（技術）の開発が行われ、利用されつつある。人を識別する技術は、例えば、セキュリティを向上させるために、所定の場所に入場する際に、その場所に入場して良い（許可が与えられている）人であるか否かの判断に用いることができると提案されている。また、人を識別することにより、識別された人の嗜好にあった情報を提供することなども提案されている。
【０００３】
人を識別する技術としては、人の顔を撮影し、その顔の画像と、事前に登録されている顔の画像とのマッチングを取る（どれだけ似ているかを判断するための演算）を行うことにより、登録されている人であるか否か、すなわち人の識別が行われる。このようにして人が識別される場合、予め登録されている顔画像と、取得される顔画像とのマッチングが行われるわけだが、必ずしも、予め登録されている顔画像の顔の方向と、取得される顔画像の顔の方向が、同一方向であるとは限らない。
【０００４】
すなわち、例えば、予め登録されている顔画像は、正面から撮影された顔の画像であり、取得される顔画像は、斜め４５度から撮影された顔の画像であるといったように、異なる角度から撮影された顔画像同士のマッチングを取らなくてはならない場合がある。異なる角度から撮影された顔画像同士のマッチングを取る場合（登録された顔と異なる方向の顔を識別する場合）、人の顔の標準的な立体形状モデルを用いる手法が提案されている。（例えば、特許文献１参照）
【０００５】
特許文献１では、異なる方向から撮像された２枚の顔画像を比較するため、一方の顔画像を顔の立体形状モデルに貼り付け（マッピングし）、他方の顔画像と同じ方向に相当する顔画像を合成することにより、異なる方向の顔の画像を、同一方向の顔の画像にし、顔（人）の識別を行うことが提案されている。
【０００６】
また、非特許文献１では、標準的な３次元の顔の変形モデルを、さまざまなパラメータを基に変形させて合成した顔画像から入力顔画像に最も近似するパラメータを用いて顔識別を行う手法が提案されている。
【特許文献１】特開２０００−３２２５７７号公報
【非特許文献１】Volker Blanzの論文“Face Recognition Based on Fitting a 3D Morphable Model”
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１や非特許文献１などで提案されている従来の顔の認識に係わる方法は、標準的な顔の立体形状モデルから、コンピュータグラフィックス（ＣＧ）の手法を用いて異なる方向の顔を合成する手法をベースとしている。
【０００８】
立体形状モデルを作成するためには、高精度な立体計測装置が必要であるため、立体形状モデルを作成するコストが高くなってしまう。また、立体形状モデルを作成するためには、沢山のサンプルが必要であった。このような理由のため、例えば、家庭内で利用される製品などに立体形状モデルを用いた顔の識別機能を搭載した場合、利用する家庭内のユーザから立体形状モデルが作成されるのではなく、予め、複数の人から取得されたデータから生成された立体形状モデルが利用される。
【０００９】
また、使用されている立体形状モデルに合わないような顔形状の人物に合わせてモデルを更新することや、家族等の限定された少人数の識別に特化したモデルに変更することは困難であった。このようなことのために、立体形状モデルに合う人の識別は比較的良好に行えても、立体形状モデルに合わない人の識別は良好でなく、かつ、立体形状モデルを更新することが困難であるために、識別率を高めることが困難であった。
【００１０】
また、一般的に顔の識別が行われる場合、目、眉、鼻、口、輪郭等の顔の中でも特徴がある部分の位置、および、パターンから得られる特徴量が識別特徴量として寄与しており、それ以外の部分、例えば、頬などは識別特徴量としてあまり寄与していない。しかしながら、従来の顔の識別の手法では、顔画像全体を合成する手法であるため、識別に寄与しない部分の画像の合成も行う必要がある。そのような、識別に寄与しない部分を含めた処理を行うことは、顔識別を行う際には冗長的で、効率的ではなかった。
【００１１】
また、上述したように顔画像を標準的な顔立体形状モデルに当てはめて回転することにより合成した顔画像は、立体形状モデルと実際の顔の形状との相違が大きいと、正しく合成できないため識別性能は低下してしまう。また立体形状モデルをパラメータに基づき変形させて近似画像を求めるのは、その計算に時間がかかり、処理負担が増大してしまう。
【００１２】
ここでは、顔の識別を例に挙げて説明したが、例えば、車などの物体を識別するのにも、顔を識別する技術を流用できる場合があり、流用したようなときには、上記したような、識別率が低下する、処理にかかる時間や負担が増大するといったことは発生する可能性があった。
【００１３】
本発明は、このような状況に鑑みてなされたものであり、顔や所定の物体の識別精度を向上させるとともに、識別にかかる処理の時間や負担を軽減することができるようにするものである。
【課題を解決するための手段】
【００１４】
本発明の第１の側面の画像処理装置は、供給される画像から、顔画像の部分を検出する顔画像検出手段と、前記顔画像検出手段により検出された前記顔画像の顔が向いている方向を検出する顔方向検出手段と、前記顔画像検出手段により検出された顔画像と前記顔方向検出手段により検出された前記顔の方向とから、前記顔の特徴となる特徴位置を検出する特徴位置検出手段と、前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出する特徴量算出手段と、前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像する写像手段と、前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出手段により検出された前記顔は、登録されている顔であるか否かを識別する識別手段とを備える。
【００１５】
前記特徴量算出手段は、GaborFilterまたはGaussianDerivativeFilterにより前記特徴量を算出するようにすることができる。
【００１６】
前記写像手段は、写像関数として、SupportVectorRegressionを用いるようにすることができる。
【００１７】
前記写像手段は、前記特徴量算出手段により算出された前記特徴量を構成する要素のうち、少なくとも１つの要素を前記写像関数により写像するようにすることができる。
【００１８】
前記識別手段による識別結果が、不正解であった場合、前記写像関数を更新する更新手段をさらに備えるようにすることができる。
【００１９】
本発明の第１の側面の画像処理方法またはプログラムは、顔画像検出手段、顔方向検出手段、特徴位置検出手段、特徴量算出手段、写像手段、および識別手段を備える画像処理装置の画像処理方法、または画像処理装置を制御するコンピュータが読み取り可能なプログラムであり、前記顔画像検出手段は、供給される画像から、顔画像の部分を検出し、前記顔方向検出手段は、前記顔画像検出手段により検出された前記顔画像の顔が向いている方向を検出し、前記特徴位置検出手段は、前記顔画像検出手段により検出された顔画像と前記顔方向検出手段により検出された前記顔の方向とから、前記顔の特徴となる特徴位置を検出し、前記特徴量算出手段は、前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出し、前記写像手段は、前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像し、前記識別手段は、前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出ステップの処理で検出された前記顔は、登録されている顔であるか否かを識別するステップを含む。
【００２０】
本発明の第２の側面の画像処理装置は、供給される画像から、所定の物体を検出する検出手段と、前記検出手段により検出された前記物体が向いている方向を検出する方向検出手段と、前記検出手段により検出された物体と前記方向検出手段により検出された前記物体が向いている方向とから、前記物体の特徴となる特徴位置を検出する特徴位置検出手段と、前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出する特徴量算出手段と、前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像する写像手段と、前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出手段により検出された前記物体は、登録されている物体であるか否かを識別する識別手段とを備える。
【００２１】
前記特徴量算出手段は、GaborFilterまたはGaussianDerivativeFilterにより前記特徴量を算出するようにすることができる。
【００２２】
前記写像手段は、写像関数として、SupportVectorRegressionを用いるようにすることができる。
【００２３】
前記写像手段は、前記特徴量算出手段により算出された前記特徴量を構成する要素のうち、少なくとも１つの要素を前記写像関数により写像するようにすることができる。
【００２４】
前記識別手段による識別結果が、不正解であった場合、前記写像関数を更新する更新手段をさらに備えるようにすることができる。
【００２５】
本発明の第２の側面の画像処理方法またはプログラムは、顔画像検出手段、顔方向検出手段、特徴位置検出手段、特徴量算出手段、写像手段、および識別手段を備える画像処理装置の画像処理方法、または画像処理装置を制御するコンピュータが読み取り可能なプログラムであり、前記検出手段は、供給される画像から、所定の物体を検出し、前記方向検出手段は、前記検出手段により検出された前記物体が向いている方向を検出し、前記特徴位置検出手段は、前記検出手段により検出された物体と前記方向検出手段により検出された前記物体が向いている方向とから、前記物体の特徴となる特徴位置を検出し、前記特徴量算出手段は、前記特徴位置検出手段により検出された前記特徴位置における特徴量を算出し、前記写像手段は、前記特徴量算出手段により算出された前記特徴量を、予め設定されている方向と一致させるために所定の写像関数により写像し、前記識別手段は、前記写像手段により写像された前記特徴量と、予め登録されている特徴量を用いて、前記顔画像検出手段により検出された前記物体は、登録されている物体であるか否かを識別するステップを含む。
【００２６】
本発明の第１の側面においては、取得された顔画像の顔と識別対象の顔画像の顔とが、異なる向きである場合、取得された顔画像から抽出された特徴量が、設定されている方向と一致するように写像関数により写像され、その写像された特徴量と、識別対象の顔画像から抽出された特徴量とが用いられ、識別対象の顔であるか否かの識別が行われる。
【００２７】
本発明の第２の側面においては、取得された画像の物体と識別対象の画像の物体とが、異なる向きである場合、取得された物体画像から抽出された特徴量が、設定されている方向と一致するように写像関数により写像され、その写像された特徴量と、識別対象の画像から抽出された特徴量とが用いられ、識別対象の物体であるか否かの識別が行われる。
【発明の効果】
【００２８】
以上のように、第１の側面によれば、人の顔を識別することができる。
【００２９】
また、本発明の第１の側面によれば、取得された顔画像の顔と識別対象の顔画像の顔とが、異なる向きである場合、取得された顔画像から抽出された特徴量を、写像関数により写像し、その写像された特徴量と、識別対象の顔画像から抽出された特徴量とを用いて識別対象の顔であるか否かの識別を行うため、演算量を減少させることが可能となる。
【００３０】
以上のように、第２の側面によれば、所定の物体を識別することができる。
【００３１】
また、本発明の第２の側面によれば、取得された画像の物体と識別対象の画像の物体とが、異なる向きである場合、取得された物体画像から抽出された特徴量を、写像関数により写像し、その写像された特徴量と、識別対象の画像から抽出された特徴量とを用いて、識別対象の物体であるか否かの識別を行うため、演算量を減少させることが可能となる。
【発明を実施するための最良の形態】
【００３６】
以下に、本発明の実施の形態について図面を参照して説明する。
【００３７】
［画像処理装置の構成］
図１は、本発明を適用した画像処理装置の一実施の形態の構成を示す図である。図１に示した画像処理装置１０は、人の顔を識別する装置であるとして説明をする。ここでは、人の顔を識別する場合を例に挙げて説明するが、例えば、車などの物体を識別するのにも、本発明を適用することはでき、本発明が、顔の識別のみに適用範囲が限定されることを示すものではない。また、図１に示した画像処理装置１０は、人の顔を識別するために、人の顔の画像を処理する装置であるとして説明を続ける。
【００３８】
画像処理装置１０は、画像入力部１１、任意方向顔検出部１２、顔特徴位置検出部１３、局所特徴量算出部１４、写像部１５、データベース１６、および、顔識別部１７から構成されている。
【００３９】
なお、ここでは、画像処理装置１０にデータベース１６が含まれるとして説明を続けるが、データベース１６は、ネットワークなどを介して、画像処理装置１０に接続されているような構成とすることも可能である。ネットワークなどを介してデータベース１６が接続されることにより、複数の画像処理装置１０で１つのデータベース１６を共有することが可能となる。
【００４０】
画像入力部１１は、例えば、カメラなどを含む構成とされ、人を撮像する機能（撮像された人の画像を入力する機能）を有する。画像入力部１１に入力される画像は、人の顔の部分が少なくとも含まれる画像である。画像入力部１１に入力（取得）された画像は、任意方向顔検出部１２に供給される。
【００４１】
任意方向顔検出部１２は、画像入力部１１から供給された画像を解析することにより、人の顔の部分（顔の位置と大きさ）を抽出し、顔の方向を検出する。画像入力部１１から供給される画像は、ユーザの顔を含む画像であるが、顔の画像だけでない場合もあり、例えば、全身像が撮影されているような画像の場合もあり、そのような画像から、任意方向顔検出部１２は、顔の位置や大きさを検出する。すなわち、任意方向顔検出部１２は、画像入力部１１から供給される画像から、人の顔の領域を判断し、人の顔の画像を抽出する。
【００４２】
また、任意方向画像検出部１２は、抽出された顔が、どの方向を向いているかも検出する。顔の向きが検出されるのは、後段の処理で、人の顔の向きの情報が用いられ、人の識別処理が行われるためである。
【００４３】
任意方向顔検出部１２により検出された顔の画像（顔画像）と顔の方向（顔方向情報）は、顔特徴位置検出部１３に供給される。顔特徴位置検出部１３は、供給された顔画像から、人の顔の中でも特徴となる部分（顔特徴位置）を検出する。顔特徴位置は、例えば、目、鼻、口といった部分である。
【００４４】
顔特徴位置検出部１３により検出された顔特徴位置は、局所特徴量算出部１４に供給される。局所特徴量算出部１４は、供給された顔特徴位置近傍の画像から特徴量を算出する。局所特徴量算出部１４により算出された特徴量は、写像部１５に供給される。
【００４５】
写像部１５には、データベース１６に蓄積されているデータも供給される。データベース１６には、写像関数（詳細は後述する）や、識別対象となっている人の顔画像のデータ（ここでは、登録顔画像データと記述する）が蓄積されている。写像部１５は、データベース１５で管理されている写像関数を用いて、データベース１６の登録顔画像データが取得された顔画像の顔の方向と、画像入力部１１に入力された顔画像の顔の方向を、同一の方向から撮像された画像とする（同等に扱えるようにする）ための処理を実行する。
【００４６】
写像部１５は、画像入力部１１に入力された顔画像の顔の方向（撮影された方向）を、データベース１６に登録されている顔の方向と一致するように処理をするか、または、データベース１６に登録されている顔画像の顔の方向を、画像入力部１１に入力された顔画像の顔の方向と一致するように処理をする。
【００４７】
ここでは、写像部１５は、画像入力部１１に入力された顔画像の顔の方向（撮影された方向）を、データベース１６に登録されている顔画像の顔の方向と一致するように処理をするとして説明を続ける。
【００４８】
図１の画像処理装置１０の構成を参照するに、写像部１５には、局所特徴量算出部１４により算出された特徴量が入力される。局所特徴量算出部１４により算出される特徴量は、画像入力部１１により入力された画像に含まれる顔画像から算出（抽出）された特徴量である。
【００４９】
写像部１５は、供給された特徴量を、データベース１６に登録されている登録顔画像データが取得された顔画像の顔が向いている方向から撮影された場合と同等に扱える特徴量に変換（写像）する。写像された特徴量は、顔認識部１７に供給される。
【００５０】
顔認識部１７には、データベース１６から登録顔画像データも供給される。顔認識部１７は、写像部１５からの特徴量と、データベース１６からの登録顔画像データを比較し、登録されている人と一致するか否かを判断する。このように、写像部１５からの特徴量と登録顔画像データが比較されるため、登録顔画像データとは、具体的には、登録する（識別する）対象となる人の顔から取得される特徴量となる。
【００５１】
このように、本実施の形態における画像処理装置１０は、人の顔の識別を、特徴量を比較することにより行う。また、特徴量は、同一の方向から撮影された顔画像から抽出されたデータとするために、特徴量に対して写像処理が実行される。このような処理は、従来の、例えば、立体形状モデルに対して顔の画像をマッピング（貼り付け）し、その立体形状モデルを、所定の方向に回転させるような処理を行う方法に比べ、演算量を減少させることが可能となる。また、演算量が減少することにより、演算にかかる時間を短くすることが可能となる。
【００５２】
ところで、上記したように、本実施の形態においては、比較する特徴量が、同一の方向から撮影された顔画像から抽出された特徴量として扱えるようにするために、特徴量を写像するが、その写像の際、撮像（入力）された人の顔が、どの方向に、どのくらい向いているかを示す情報が必要となる。図１においては、任意方向顔検出部１２が、人の顔の方向を検出し、顔の方向に関する情報を出力するとしたが、例えば、任意方向顔検出部１２が行う顔の方向の検出の精度が、後段の処理（例えば、顔特徴位置検出部１３における処理）で必要とされる精度でない場合、または、顔の方向を任意方向顔検出部１２以外の部分で検出するように構成する場合、画像処理装置１０は、図２に示したような構成となる。
【００５３】
図２は、画像処理装置の他の構成例を示す図である。図２に示した画像処理装置３０は、図１に示した画像処理装置１０と比較し、顔方向検出部３１が追加された構成とされている。ただし、任意方向顔検出部１２’は、図１に示した任意方向顔検出部１２と同様のものを用いることも可能であるし、図１に示した任意方向顔検出部１２よりも顔の方向を検出する精度が劣るものを用いることも可能である。このような理由のため、図２に示した任意方向顔検出部１２’には、図１に示した任意方向顔検出部１２と区別をつけるために、符号にダッシュ（’）を付して記述する。
【００５４】
顔方向検出部３１を追加した構成とすることにより、任意方向顔検出部１２’からの顔画像と顔方向情報は、顔方向検出部３１に供給される。また、顔画像は、顔特徴位置検出部１３にも供給される。
【００５５】
顔方向検出部３１は、供給された顔画像と顔方向情報から、顔の方向を検出する。検出された顔の方向（顔方向情報）は、顔特徴位置検出部１３に供給される。
【００５６】
なお、このように、顔方向検出部３１で顔の方向が検出されるように構成した場合、任意方向顔検出部１２’では顔の方向を検出しないようにしても良い。または、任意方向顔検出部１２’で粗い検出を行い、顔方向検出部３１で詳細な検出が行われるようにしても良い。顔方向検出部３１における顔の方向の検出精度は、後段の処理で必要となる精度であれば良い。
【００５７】
ここでは、図１に示した画像処理装置１０を例に挙げて説明を続ける。
【００５８】
［画像処理装置の動作について］
図３のフローチャートを参照し、画像処理装置１０（図１）の動作（顔の識別）について説明する。
【００５９】
ステップＳ１１において、画像入力部１１は、顔画像を入力（取得）する。ここでは、顔画像と記述するが、画像入力部１１に入力される画像は、顔を含む画像であればよい。画像入力部１１に入力された顔画像は、任意方向顔検出部１２に供給される。任意方向顔検出部１２は、ステップＳ１２において、供給された画像における顔の位置、顔の大きさ、顔の方向を、それぞれ検出する。顔の位置と大きさが検出されることにより、顔画像の部分が切り出され、その切り出された顔画像の部分が、顔特徴位置検出部１３と局所特徴量算出部１４に供給される。また、任意方向顔検出部１２により検出された顔の方向に関する情報（顔方向情報）は、顔特徴位置検出部１３に供給される。
【００６０】
顔特徴位置検出部１３は、供給された顔画像と顔方向情報を用いて、顔の特徴的な部分（顔特徴位置）、例えば、目、鼻、口といった特徴的な部分を検出する。顔特徴位置検出部１３は、例えば、ＡＡＭ(Active Appearance Models)と呼ばれる方法を適用して、特徴位置を検出するようにすることが可能である。ＡＡＭについては、以下の文献に記載がある。
T.F. Cootes, G.J.Edwards, and C.J.Taylor, "Active Appearance Models",Proc.Fifth European Conf. Computer Vision, H. Burkhardt and B. Neumann,eds, vol.2, pp.484-498, 1998
【００６１】
ＡＡＭの手法は、所定の限られた範囲内での方向の顔画像に対して、精度良く顔特徴位置を検出することが可能であるという特徴がある。そのため、ＡＡＭによる手法を用いて顔特徴位置を検出する場合、精度良く顔特徴位置を検出できる範囲内毎に、方向別の顔特徴位置を検出する仕組みが必要である。例えば、各方向別に、顔特徴位置を検出する複数の検出部（不図示）が設けられ、顔方向情報が示す方向により、それらの検出部が切り替えられて用いられる。
【００６２】
すなわち、顔特徴位置検出部１３における顔特徴位置の検出をＡＡＭの手法を用いて行う場合、顔特徴位置検出部１３は、供給された顔方向情報から、その顔方向情報が示す方向に適した検出部を選択し、その選択した検出部に顔画像を供給し、顔特徴位置の検出を行う。
【００６３】
このような顔特徴位置の検出が行われるように、顔特徴位置検出部１３を構成した場合、顔方向情報が必要となる。顔特徴検位置出部１３の要求する顔方向情報の精度と、任意方向顔検出部１２が出力する顔方向情報の精度が合わない場合、図２に示したように、任意方向顔検出部１２’と顔特徴検出部１３との間に、精度要求を満たす顔方向検出部３１が設けられる必要がある。
【００６４】
図３のフローチャートの説明に戻り、ステップＳ１２において、顔特徴位置検出部１３が処理を行ううえで必要とされる精度で、顔方向が検出され、その顔方向の情報（顔方向情報）が、顔特徴位置検出部１３に出力されると、ステップＳ１３において、顔特徴位置検出部１３により、顔特徴位置が検出される。
【００６５】
ステップＳ１３において、顔特徴位置検出部１３は、上記したように、例えばＡＡＭの手法により、顔の特徴的な位置（顔特徴位置）を検出する。顔特徴位置検出部１３により検出される顔特徴位置は、例えば、図４Ａや図４Ｂに示した位置である。
【００６６】
図４Ａは、正面から撮影された顔画像から検出される顔特徴位置を表している。図４Ｂは、斜め４５度から撮影された顔画像から検出される顔特徴位置を表している。図４Ａ、図４Ｂにおいて、×印を付した部分が、顔特徴位置として検出される位置である。
【００６７】
図４Ａを参照するに、顔特徴位置として検出されるのは、眉毛の両端（右側の眉と左側の眉で、それぞれ２点、計４点）、目の両端と中央（黒目）（右目と左目で、それぞれ３点、計６点）、鼻の両端と中央（計３点）、口の両端と中央（両端で２点、上唇の中央で１点、下唇の中央で１点、計４点）が、それぞれ検出される。このように、顔画像から、顔特徴位置として、計１７点が検出される。
【００６８】
図４Ｂを参照するに、顔特徴位置として検出されるのは、図４Ａに示した場合と同様に、すなわち、正面から撮影された顔画像から検出されるのと同様の位置（対応する位置）の計１７点が検出される。このように、本実施の形態においては、顔画像から１７点の特徴位置が検出されるとして説明を続ける。
【００６９】
図４Ａと図４Ｂに、それぞれ示した特徴位置（×印）のうち、対応する点同士を、点線で結び、その対応がわかるように図示した（ただし、眉毛の部分の特徴位置のみ対応関係（点線）を図示した）。
【００７０】
特徴位置検出部１３は、入力された顔画像から、図４Ａや図４Ｂに示したような特徴位置を検出する。特徴位置検出部１３により検出された特徴位置に関する情報（特徴位置情報）は、局所特徴量算出部１４に供給される。局所特徴量算出部１４は、任意方向顔研修部１２から、顔画像も供給される（この顔画像は、顔特徴位置検出部１３に供給される顔画像と同一である場合、顔特徴位置検出部１３から、特徴位置情報とともに供給されるようにしても良い）。
【００７１】
局所特徴量算出部１４は、局所特徴量を算出する。局所特徴量算出部１４における局所特徴量の算出には、特徴位置近傍の画像を、そのまま用いて算出する方法や、ガボアフィルタ（Gabor Filter）やガルシアンデリバティブフィルタ（Gaussian Derivative Filter）などの畳み込み演算を用いて抽出する方法を適用することができる。ここでは、ガボアフィルタにより局所特徴量が抽出されるとして説明を続ける。
【００７２】
ここで、ガボアフィルタの処理（ガボアフィルタリング）について説明する。まず人間の視覚細胞には、ある特定の方位に対して選択性を持つ細胞が存在することが既に判っている。これは、垂直の線に対して反応する細胞と、水平の線に反応する細胞で構成される。ガボアフィルタリングは、これと同様に、方位選択性を持つ複数のフィルタで構成される空間フィルタである。
【００７３】
ガボアフィルタは、ガボア関数によって空間表現される。ガボア関数ｇ（ｘ，ｙ）は、次式に示すように、コサイン成分からなるキャリアｓ（ｘ，ｙ）と、２次元ガウス分析状のエンベローブＷｒ（ｘ，ｙ）とで構成される。
【００７４】
【数１】
0004595750.tif 000002
【００７５】
キャリアｓ（ｘ，ｙ）は、複数関数を用いて、次の式（２）のように表現される。ここで、座標値（ｕ0，ｖ0）は空間周波数を表し、またＰはコサイン成分の位相を表す。
【００７６】
【数２】
0004595750.tif 000003
【００７７】
式（２）に示すキャリアは、次式（３）に示すように、実数成分Ｒｅ（ｓ（ｘ，ｙ））と虚数成分Ｉｍ（ｓ（ｘ，ｙ））に分離することができる。
【００７８】
【数３】
0004595750.tif 000004
【００７９】
一方、２次元ガウス分布からなるエンベローブは、次式のように表現される。
【００８０】
【数４】
0004595750.tif 000005
【００８１】
ここで、座標軸（ｘ0，ｙ0）はこの関数のピークであり、定数ａおよびｂはガウス分布のスケール・パラメータである。また、添字ｒは、次式に示すような回転操作を意味する。
【００８２】
【数５】
0004595750.tif 000006
【００８３】
従って、上述の式（２）および式（４）より、ガボアフィルタは、次式に示すような空間関数として表現される。
【００８４】
【数６】
0004595750.tif 000007
【００８５】
本実施の形態に係る局所特徴量算出部１４は、合計１７個のガボアフィルタを用いて顔の目、口、鼻などの特徴位置毎に算出処理を行う。
【００８６】
ガボアフィルタのレスポンスは、Ｇiをｉ番目のガボアフィルタとし、ｉ番目のガボアフィルタの結果（Gabor Jet）をＪiとし、入力イメージをＩとすると、次式で表される。
【００８７】
【数７】
0004595750.tif 000008
【００８８】
この式（７）の演算は、実際には高速フーリエ変換を用いて高速化することができる。
【００８９】
以下の説明においては、所定の特徴位置による、式（７）により算出される局所特徴量を局所特徴量ベクトルとし、以下のように式（８）のように定義する。
【００９０】
【数８】
0004595750.tif 000009
【００９１】
式（８）において、左辺のＪの文字の添え字のうち、上側の添え字は、撮像されたときの画像の角度（任意方向顔検出部１２で検出された顔の方向）を示す数字であり、下側の添え字は１７点の特徴位置を識別するための数字である。例えば、正面から撮影されたときのＪの上側の添え字は“０”であり、４５度から撮影されたときのＪの上側の添え字は“４５”である。なお、式（８）は、正面から撮影されたときの顔画像に関する局所特徴量ベクトルである場合を示している。
【００９２】
また、例えば、図４Ａにおいて、図中左側の眉毛の左側の特徴位置を“０”、図中左側の眉毛の右側の特徴位置を“１”という順で、順次、番号を割り振った場合、Ｊの下側の添え字は、０乃至１６の数値となる。この場合、例えば、図中左側の眉毛の左側の特徴位置に関する局所特徴量ベクトルである場合、Ｊの下側の添え字は“０”である。
【００９３】
式（８）の右辺は、局所特徴量ベクトルを構成する要素を表している。各要素を表すｊの添え字は、左辺のＪの添え字と同じく、上側の添え字は、撮影されたときの画像の角度を示す数字であり、下側の添え字は各要素を識別するための数字である。
【００９４】
このように、局所特徴量ベクトルが、特徴位置毎、この場合、１７点でそれぞれ算出される。局所特徴量算出部１４により算出された局所特徴量ベクトルは、写像部１５に供給される。写像部１５は、ステップＳ１５において、入力された局所特徴量ベクトルを、写像する必要がある場合、写像処理を実行する。
【００９５】
ここで、図４Ａと図４Ｂを再度参照し、“写像する必要がある場合”について説明を加えるが、その前に、データベース１６に登録されているデータについて説明を加える。データベース１６には、写像関数や、識別対象となる人の顔画像に関するデータ（登録顔画像データ）が記憶されている。登録顔画像データは、識別対象となる人の顔画像から抽出された局所特徴量ベクトルを少なくとも含むデータである。
【００９６】
例えば、式（８）に基づき算出された局所特徴量ベクトルが、この場合、次式（９）に示すような組で、１人（１顔画像）につき１７個、登録されている。
【００９７】
【数９】
0004595750.tif 000010
【００９８】
このように、データベース１６に登録されている登録顔画像データ（局所特徴量ベクトル）は、所定の方向から撮影された顔画像から抽出された局所特徴量抽ベクトルの組である。例えば、図４Ａに示したような、正面から撮影された顔（ここでは、登録顔と記述する）の顔画像から抽出された局所特徴量ベクトルの組（式（９）に示した組）が、データベース１６には登録されている。
【００９９】
しかしながら、画像入力部１１に入力される顔（ここでは、入力顔と記述する）の顔画像は、例えば、図４Ｂに示したように、正面から撮影された顔ではなく（登録顔とは異なり）、斜め方向から撮影された顔の顔画像である場合もある。入力顔が図４Ｂに示したような斜め方向から撮影された顔画像からも、基本的に１７点の特徴位置から、それぞれ局所特徴量ベクトルが算出される。
【０１００】
データベース１６に登録されている人であるか否かの判断（識別処理）は、データベース１６に登録されている顔（登録顔）の局所特徴量ベクトルと、画像入力部１１に入力された顔（入力顔）の顔画像から抽出された局所特徴量ベクトルが用いられることにより行われるが、登録顔と入力顔の方向が、例えば、図４Ａと図４Ｂに示したように異なる場合、単に、登録顔から抽出された局所特徴量ベクトルと入力顔から抽出された局所特徴量ベクトルとを用いて識別を行うことはできない（そのようなことを実行すると、正確な識別結果が得られず、識別精度を低下させてしまう）。
【０１０１】
換言すれば、登録顔から抽出された局所特徴量ベクトルと、登録顔と同じ方向から撮影された入力顔から抽出された局所特徴量ベクトルが用いられることで識別処理が行われなければ、識別精度を向上させることはできない。
【０１０２】
入力顔と登録顔の方向が異なる場合、入力顔と登録顔とでは、画像上での顔の見え方も大きく異なるため、たとえ、同一人物からの顔画像から抽出された局所特徴量ベクトルであっても、その値などは大きく変化してしまう。このため識別処理を行うとき、登録顔と入力顔の類似度を算出する際、入力顔と登録顔の方向が異なると直接的に局所特徴量ベクトルを用いて比較するだけでは、精度良く識別を行うことは困難である。
【０１０３】
このようなことを解決し、入力顔と登録顔の方向が異なるときでも、精度良く識別することができるようにするために、従来の手法では、顔の立体形状モデルを用いて登録顔と同じ方向の入力顔を合成することが行われていた。しかしながら、この手法においては、演算量が増大してしまうばかりでなく、立体形状モデルが、識別対象となる人（データベース１６に登録されている人）に適していないと、識別精度が低下してしまう。
【０１０４】
本実施の形態においては、立体形状モデルを用いないため、演算量を、立体形状モデルを用いたときより削減することが可能となる。また、立体形状モデルを用いないため、識別対象となる人に立体形状モデルが適していないと識別精度が低下してしまうといったことを防ぐことも可能となる。
【０１０５】
本実施の形態においては、写像関数を用いて、局所特徴量ベクトルを写像処理することにより、入力顔と登録顔の方向の違いを吸収した識別が行えるようにする。
【０１０６】
図３に示したフローチャートの処理の説明に戻り、写像部１５は、ステップＳ１５において、写像処理を行う。写像部１５が、“写像する必要がある場合”であると判断するのは、データベース１６に登録されている登録顔と異なる方向の入力顔が入力されたときである。なお、写像する必要がある場合は、データベース１６に登録されている写像関数により写像処理が実行されるが、写像する必要がない場合には、写像部１５による写像処理は全く実行されずに、局所特徴量算出部１４からの局所特徴量ベクトルが、そのまま顔識別部１７に供給されるようにしても良いし、実質的に写像されない（データ値に変更がない）ような写像関数が用いられて写像処理が行われたあと、顔識別部１７に供給されるようにしても良い。
【０１０７】
写像部１５における写像に関し、データベース１６に登録されている登録顔が、図４Ａに示したような正面から撮影された顔であり、その登録顔から抽出された局所特徴量ベクトルの組がデータベース１６に登録されているとし、入力顔が、図４Ｂに示したような斜め４５度から撮影された顔であり、その入力顔から抽出された局所特徴量ベクトルが、写像部１５に供給される場合を例に挙げて説明する。
【０１０８】
このような場合、局所特徴量算出部１４により算出され、写像部１５に供給される局所特徴量ベクトルとは、次式（１０）のようになる。なお、ｉは、顔特徴位置を識別するための数字であるので、この場合、０乃至１６の間の数字である。
【０１０９】
【数１０】
0004595750.tif 000011
【０１１０】
式（１０）は、斜め４５度の方向の顔画像から抽出された局所特徴量ベクトルであり、この局所特徴量ベクトルが、写像関数により、０度（正面）の方向の顔画像から抽出された局所特徴量ベクトルとして扱えるように写像される。写像後の式（１０）は、次式（１１）のようになる。
【０１１１】
【数１１】
0004595750.tif 000012
式（１１）において、Ｊまたはｊの上の“〜”は、近似値であることを示す。登録顔から抽出された局所特徴量ベクトルである式（８）と、入力顔から抽出された局所特徴量ベクトルである式（１０）を写像した式（１１）は、近似の関係にあることがわかる。
【０１１２】
式（１１）の各要素（式（１１）の右辺の｛｝内の各要素）は、次式（１２）により算出される。
【０１１３】
【数１２】
0004595750.tif 000013
【０１１４】
すなわち、式（１１）を構成する１つの要素ｊは、式（１０）における全ての要素（ｉ−１乃至ｉ−ｎまでのｎ個の要素ｊ）が用いられて、所定の写像関数ｆにより求められる。写像関数ｆは、データベース１６に登録されており、入力顔の方向に対応した写像関数ｆが読み出され、利用される。すなわち、この場合、４５度のときの写像関数ｆが、読み出され、利用される。また、写像関数ｆは、顔特徴位置毎に用意されている。すなわち、この場合、顔特徴位置が１７個あるので、１７個の写像関数ｆが１つの方向に対して用意（登録）されている。
【０１１５】
写像部１５において行われる写像処理に関する式を、一般的に記載すると以下のようになる。
【０１１６】
【数１３】
0004595750.tif 000014
【０１１７】
【数１４】
0004595750.tif 000015
【０１１８】
【数１５】
0004595750.tif 000016
【０１１９】
式（１３）は、入力顔の特徴位置ｉにおける局所特徴量ベクトルを表している。式（１４）は、登録顔の特徴位置ｉにおける局所特徴量ベクトルを表している。そして、このようなときの特徴量の写像は、式（１５）のように記述することができる。
【０１２０】
式（１５）において左辺は、特徴位置iにおける局所特徴量ベクトルのｋ番目の要素の推定値であることを示している。式（１５）における右辺のうち、
【０１２１】
【数１６】
0004595750.tif 000017
は、登録顔の角度θRの方向の顔画像の特徴位置iにおける局所特徴量ベクトルのk番目の要素を、入力顔角度θIの方向の顔画像の特徴位置iにおける局所特徴量ベクトルの全ての要素を用いて写像を行う特徴量の写像関数である。
【０１２２】
なおここでは全ての要素を用いて写像を行っているが、全ての要素を用いなくても良い。例えば、推定に必要な最低限の要素を決定し、その要素だけが用いられる（写像関数に代入される）ようにしても良い。すなわち、入力される局所特徴量ベクトルと写像後の局所特徴量ベクトルとの間に明白な因果関係があるような場合、写像関数の入力変数として、入力された全ての局所特徴量ベクトルの要素を用いて写像処理が行われるのではなく、因果関係があると判断される要素のみが用いられるようにしても良い。
【０１２３】
図３のフローチャートの説明に戻り、ステップＳ１５において、写像部１５により写像処理が行われると、その写像結果が、顔識別部１７に供給される。顔識別部１７は、ステップＳ１６において、データベース１６から、登録されている登録顔画像データ（識別対象とされる登録顔から抽出された局所特徴量ベクトルの組）が読み出される。複数の登録顔画像データが登録されていた場合（複数の人を識別するように、複数の人の顔画像データが登録されていた場合）、登録されている複数の顔画像データが読み出される。
【０１２４】
ステップＳ１７において、顔認識部１７は、類似度ベクトルを算出する。類似度は、入力顔と登録顔のそれぞれの特徴位置を対応付け、対応付けられた特徴位置の局所特徴量ベクトル同士が用いられて算出される。類似度は、例えば、正規化相関演算などの演算手法が用いられて行われる。
【０１２５】
ここでは、顔識別部１７は、正規化相関演算を用いて、類似度を算出するとして説明を続ける。顔識別部１７が、正規化相関演算を用いて類似度を算出する場合、次式（１７）と次式（１８）に基づいて類似度が算出される。
【０１２６】
【数１７】
0004595750.tif 000018
【０１２７】
式（１７）に、式（８）と式（１１）における各要素が順次代入され、正規化相関演算が行われることにより、式（１８）における類似度ベクトルを構成する各要素が算出される。換言すれば、入力顔と登録顔の同じ特徴位置における類似度が、入力顔の局所特徴量ベクトル（写像変換された局所特徴量ベクトル）（式（１１））と、登録顔の局所特徴量ベクトル（データベース１６に登録されている局所特徴量ベクトル）（式（８））を用いて演算される（式（１７））。
【０１２８】
式（１７）により算出された類似度ｃi0から、その集合である類似度ベクトルＣd0が求められる。下側の添え字“ｄ”は、１から始まり、データベース１６に登録されている、識別対象となる顔の個数（登録顔画像データの数）で終了する数字である。このようにして、登録顔画像データ毎に、入力顔との類似度ベクトルが算出される。
【０１２９】
ステップＳ１７において、類似度ベクトルが算出されると、ステップＳ１８において、顔識別部１７は、入力顔は、データベース１６に登録されている（識別対象となっている）顔であるか否か（同一人物であるか否か）を判定し、その判定結果を、図示されていない外部の装置などに出力する。その判定は、例えば、サポートベクタマシン（Support Vector Machine：SVM）、ニューラルネットワーク（Neural Network）、AdaboostなどのClassifierが用いて行うことが可能である。
【０１３０】
ここでは、サポートベクタマシン（SVM）を適用した場合を例に挙げて説明する。ここで、SVMの一般的な説明を簡便に加える。サポートベクタマシン自体に関しては、例えばB.sholkopf外著の報告（B.Sholkopf、C.Burges、A.Smola，“Advance in Kernel Support Vector Learning”，The MIT Press、1999.）を挙げることができる。
【０１３１】
サポートベクタマシンは、識別関数に線形識別器（パーセプトロン）を用いた学習機械であり、カーネル関数を使うことで非線形空間に拡張することができる。また識別関数の学習では、クラス間分離のマージンを最大にとるように行われ、その解は２次数理計画法を解くことで得られるため、グローバル解に到達できることを理論的に保証することができる。
【０１３２】
通常、パターン認識の問題は、テストサンプルｘ＝（ｘ１，ｘ２，・・・，ｘｎ）に対して、次式で与えられる識別関数ｆ（ｘ）を求めることである。
【０１３３】
【数１８】
0004595750.tif 000019
【０１３４】
ここで、サポートベクタマシンの学習用の教師ラベルを次式のようにおく。
【０１３５】
【数１９】
0004595750.tif 000020
【０１３６】
すると、サポートベクタマシンにおける顔パターンの認識を次式に示す制約条件の下での重み因子ｗの２乗を最小化する問題としてとらえることができる。
【０１３７】
【数２０】
0004595750.tif 000021
【０１３８】
このような制約のついた問題は、ラグランジュの未定定数法を用いて解くことができる。すなわち、式（２２）に示すラグランジュをまず導入し、次いで、式（２３）に示すように、ｂ、ｗの各々について偏微分する。
【０１３９】
【数２１】
0004595750.tif 000022
【０１４０】
【数２２】
0004595750.tif 000023
【０１４１】
この結果、サポートベクタマシンにおける顔パターンの識別を次式に示す２次計画問題としてとらえることができる。
【０１４２】
【数２３】
0004595750.tif 000024
【０１４３】
特徴空間の次元数が、訓練サンプルの数よりも少ない場合は、スラック変数ξ≧０を導入して、制約条件を次式のように変更する。
【０１４４】
【数２４】
0004595750.tif 000025
【０１４５】
最適化については、次式の目的関数を最小化する。
【０１４６】
【数２５】
0004595750.tif 000026
【０１４７】
この式（２６）において、Ｃは、制約条件をどこまで緩めるかを指定する係数であり、実験的に値を決定する必要がある。ラグランジュ定数ａに関する問題は次式のように変更される。
【０１４８】
【数２６】
0004595750.tif 000027
【０１４９】
しかし、この式（２７）のままでは、非線型の問題を解くことはできない。そこで、例えば、カーネル関数Ｋ（ｘ，ｘ3）を導入して、一旦、高次元の空間に写像して（カーネル・トリック）、その空間で線形分離することにしている。したがって、元の空間では非線型分離していることと同等となる。
【０１５０】
カーネル関数は、ある写像Φを用いて次式のように表される。
【０１５１】
【数２７】
0004595750.tif 000028
【０１５２】
また、式（１９）に示した識別関数も、次式（２９）のように表すことができる。
【０１５３】
【数２８】
0004595750.tif 000029
【０１５４】
顔識別部１６は、上記したようなサポートベクタマシン（式（２９）に基づく判定）により、顔の識別を行う。サポートベクタマシンは、類似度ベクトルの境界面（式（２９）のｆ（ｘ）の値を、例えば、＋１または−１と判定する境界面（値が０である位置の面））からの距離を算出し、登録顔と一致するか否かの判定を行う。すなわち、登録顔と一致すると判定される類似度ベクトルが存在しない場合には、未登録の人物の顔が入力されたと判定され、登録顔と一致する判定される類似度ベクトルが存在する場合には、登録されている人物の顔が入力されたと判定する。
【０１５５】
このような判定を行うため、顔識別部１７は、次式（３０）に基づいて判定を行う。式（３０）は、式（２９）を、式（１７）や式（１８）などの他の式の記載と合わせ、かつ、ｓｇｎ関数で表した式である。ｓｇｎ関数は、ｓｇｎ(<数値>)という形をとり、数値の符号を調べるときに用いられる関数である。（）内の数値が正のときの結果は「１」、負のときの結果は「−１」、０のときの結果は「０」となる関数である。
【０１５６】
【数２９】
0004595750.tif 000030
【０１５７】
図３のフローチャートの説明に戻り、ステップＳ１８において、顔識別部１７により、入力顔と一致する登録顔が、データベース１６に登録されているか否かが判定され、その判定結果が出力される。出力される側の装置としては、例えば、ディスプレイなどであり、判定結果が、メッセージなどの形式で表示される。
【０１５８】
入力顔と一致する登録顔がデータベース１６に登録されていた場合、一致していると判定された登録顔に関連付けられている人の名前などの情報がデータベース１６から読み出され、その名前などの情報が判定結果として出力される。そして、出力先の装置において、その情報に基づく表示などが行われる。
【０１５９】
また、入力顔と一致する登録顔がデータベース１６に登録されていなかった場合、登録されていないかったことを示す情報が判定結果として出力され、出力先の装置において、例えば、“未登録の人物”といったメッセージなどの表示や警告がなされる。
【０１６０】
このように、本実施の形態においては、入力顔と登録顔の方向が異なる場合、入力顔の方向を登録顔の方向と一致させるための処理が実行される。その処理は、入力顔（入力顔の画像）から抽出された局所特徴量ベクトルを、写像関数により写像することにより、登録顔の方向と一致する方向の入力顔から抽出された局所特徴量ベクトルとして扱えるようにするための処理である。
【０１６１】
このように局所特徴量ベクトルを写像することにより、入力顔と登録顔の方向の違いを吸収し、識別処理を実行することにより、すなわち、従来の手法と異なり、本実施の形態は、異なる方向の顔画像全体を合成するのではなく、顔画像のいくつかの特徴点における特徴量を推定する手法であるため、以下のような効果を期待することができる。
【０１６２】
まず、識別に不必要な部分の計算を行うことがないので、冗長的な処理を行わなくて良く、効率的に識別処理を行うことが可能である。識別に不必要な部分とは、例えば、顔の額、頬といった部分であり、それらの部分を、識別処理には用いないことで、演算に用いられるデータ量を減少させることができ、演算量を減少させることができ、もって、効率的に識別処理ができるようになる。
【０１６３】
ところで、上述したように、データベース１６には、識別対象となる顔（人）が登録されている。登録されている内容としては、登録顔から抽出された局所特徴量ベクトル（例えば、式（８）に示したようなデータの組）である。また、登録されている局所特徴量ベクトルが、どのような人のデータであるのかを識別するためのデータとして、例えば、名前（ニックネーム）などが、局所特徴量ベクトルのデータと関連付けられて登録されている。
【０１６４】
このようなデータ（登録顔画像データ）は、画像入力部１１乃至局所特徴量算出部１４（図１）の処理が施されることにより、取得され、登録されるデータである。例えば、画像処理装置１０の使い初めの期間には、登録するための処理が実行され、データベース１６に、登録顔画像データが登録される。登録されるときには、局所特徴量算出部１４からの局所特徴量ベクトルが、データベース１６に供給されるようにしても良い。また、登録顔が、必ずしも正面からの撮影された顔であるとは限らないので、写像部１５により写像の処理が行われた後の局所特徴量ベクトルが、データベース１６に登録されるようにしても良い。
【０１６５】
このように、本実施の形態においては、写像部１５により局所特徴量ベクトルの写像が行われるが、その写像に用いられる写像関数も、データベース１６に、識別処理が実行される前の時点で登録されている。登録されている写像関数は、例えば、サンプルとなる複数の顔画像から得られた関数である。換言すれば、画像処理装置１０による識別対象とされる顔が、例えば、画像処理装置１０が家庭内で用いられる装置に搭載され、その装置を用いる家族を構成する一員の顔であるような場合であっても、その家族の一員（実際のユーザ）の顔画像から取得される写像関数とは異なる写像関数が、データベース１６に登録されている。
【０１６６】
そのために、データベース１６に登録されている写像関数が、識別対象とされる人（登録顔）に適した写像を行えない関数であった場合、識別精度が低下してしまう。そこで、学習できるようにし、識別対象とされる人に適した写像関数に更新されるようにする。
【０１６７】
［学習機能付きの画像処理装置について］
図５は、写像関数を学習により更新することができるようにした画像処理装置の構成例を示す図である。図５に示した画像処理装置１００は、画像入力部１０１、任意方向顔検出部１０２、顔特徴位置検出部１０３、局所特徴量算出部１０４、写像部１０５、データベース１０６、顔識別部１０７、正誤判定部１０８、および、関数更新部１０９から構成されている。
【０１６８】
図１に示した画像処理装置１０と図５に示した画像処理装置１００を比較するに、画像処理装置１００は、画像処理装置１０に、正誤判定部１０８と関数更新部１０９を追加した構成とされている。すなわち、画像処理装置１００の画像入力部１０１、任意方向顔検出部１０２、顔特徴位置検出部１０３、局所特徴量算出部１０４、写像部１０５、データベース１０６、および、顔識別部１０７は、画像処理装置１０の画像入力部１１、任意方向顔検出部１２、顔特徴位置検出部１３、局所特徴量算出部１４、写像部１５、データベース１６、および、顔識別部１７と同一の構成とされている。以下の説明においては、画像処理装置１０と同一の部分に関する説明は、適宜省略する。
【０１６９】
なお、図５に示した画像処理装置１００を、図２に示した顔方向検出部３１が備えられる構成としても良い。
【０１７０】
正誤判定部１０８は、ユーザからの指示を受け付ける構成とされている。具体的には、ユーザが、顔識別部１０７から出力された識別結果が、正しいか否かを判断したとき、そのユーザからの判断結果を受け付ける機能を、正誤判定部１０８は有する。また正誤判定部１０８は、識別結果が正しいと判断されたか、または、誤っていると判断されたかの情報を、関数更新部１０９に供給するように構成されている。
【０１７１】
関数更新部１０９は、正誤判定部１０８からの情報が、識別結果は誤っていたということを示す情報であった場合、データベース１０９に登録されている写像関数を更新するように構成されている。
【０１７２】
図６のフローチャートを参照し、図５に示した画像処理装置１００の動作について説明する。ステップＳ１１１乃至Ｓ１１８は、図３のステップＳ１１乃至Ｓ１８と同様の処理なので、その詳細な説明は省略する。すなわち、画像入力部１０１乃至顔識別部１０７により、ステップＳ１１１乃至Ｓ１１８の処理が実行されることにより、画像処理装置１００のユーザに対して、識別結果が提供される。
【０１７３】
識別結果は、既に説明したように、ディスプレイにメッセージなどが表示されるなどの方法により、ユーザに提供される。その識別結果が正しいか否かをユーザは判断し、正誤判定部１０８にその判断結果を入力する。正誤判定部１０８は、ユーザからの判断結果を入力するための操作部、例えば、正しいときに操作されるボタンと、誤ったときに操作されるボタンが設けられているような操作部を含む構成とされる。
【０１７４】
なお、後述するように、識別結果が誤っていたと判断されたときに、写像関数が更新されるので、識別結果が誤っていたときに、そのことを指示できる仕組み（例えば、誤ったときに操作されるボタンのみ）が、少なくとも正誤判定部１０８に設けられていれば良い。
【０１７５】
ステップＳ１１９において、正誤判定部１０８は、ユーザからの、識別結果が正しかったか否かを表す正誤情報を取得する。正誤判定部１０８は、取得された正誤情報から、ユーザが、識別結果が正解であったと判断したか否かを判定し、その判定結果を、関数更新部１０９に供給する。
【０１７６】
関数更新部１０９は、ステップＳ１２０において、正誤判定部１０８から供給された判定結果は、正解を示すか否かを判断する。ステップＳ１２０において、判定結果は正解を示すと判断された場合、図６に示した学習処理は終了される。この場合、識別結果は正解であったため、写像関数は適切な写像関数であり、そのまま継続して使用することが可能であると考えられるため、写像関数の更新などの処理は行われずに、処理が終了される。
【０１７７】
一方、ステップＳ１２０において、正誤判定部１０８から供給された判定結果は、正解を示さない（不正解であることを示す）と判断された場合、ステップＳ１２１に処理が進められる。ステップＳ１２１において、関数更新部１０９は、データベース１０６に記憶されている写像関数を更新する。
【０１７８】
このように、データベース１０６に登録されている写像関数は、識別結果が正しくないときに、正しい識別ができるような写像関数へと更新される。すなわち、写像関数は、学習処理により、画像処理装置１００を利用しているユーザ（識別対象となっている人達）に適した写像関数に更新される。
【０１７９】
このように、写像関数は更新されるので、写像関数自体は、学習処理により、適宜、更新できるような関数である必要があり、かつ、上述したような写像処理が適切に実行できる関数である必要がある。このような関数としては、例えば、Support Vector Regression(SVR)と称される手法による関数を適用することが可能である。
【０１８０】
上記した式（１２）における写像関数ｆは、ＳＶＲと称される手法による関数を用いることが可能である。ＳＶＲは、非線形関数も近似可能な多次元入力１次元出力の関数推定手法を用いて、予め大量の人物のさまざまな方向の顔画像の特徴点間の局所特徴量ベクトルを学習することにより、式（１２）における写像関数ｆを作成することができる。また、顔の角度に対する局所特徴量に線形性がある場合には、線形回帰分析に基づく関数ｆの推定も利用することが可能である。
【０１８１】
このような写像関数ｆは、同一人物の異なる方向の顔画像データがあれば学習可能である。すなわち、上記したように、例えば、家族という限られた人数の人達を識別するような場合、同一人物の異なる方向の顔画像データを取得することは容易であるため、学習処理を良好に行うことが可能である。特にSupport Vector Regression(SVR)による関数の学習手法は、Accurate Online SVR(AOSVR)という手法を用いれば逐次学習を行うことが可能となるため、画像処理装置１００を備える製品の出荷後に、特定の人物（例えば、家族）や環境に適応できるように追加学習および再学習することが可能になる。
【０１８２】
このように、本実施の形態においては、自由視点顔識別（入力顔の方向によらない顔の識別）を行う際に、３次元データ（立体形状モデル）を必要とせず、かつ、逐次学習を行うことが可能となるため、データベース１０６に写像関数を登録した後（例えば、画像処理装置１００を搭載した装置を出荷した後）に、特定の人物や環境（その装置が使用される状況）に適応できるように、追加学習および再学習することが可能となる。追加学習や再学習（写像関数の更新）が行えるため、高精度な識別装置（画像処理装置）を構築することができる。
【０１８３】
また、自由視点顔画像識別を行う際に、異なる方向の顔画像全体を合成するのではなく、顔画像のいくつかの特徴点における特徴量を推定する手法であるため、識別に不必要な部分の計算を行う必要がなく、計算効率の高い識別器を構築することができる。
【０１８４】
なお、上述した実施の形態においては、顔を識別する例を挙げて説明したが、顔以外の例えば車体などの物体を識別する装置などにも、本発明を適用することが可能である。車体などの物体を識別するようにした場合、識別対象となる物体の特徴となる特徴位置を設定するなどすることにより、上述した実施の形態と同様に、物体を識別することが可能となる。
【０１８５】
［記録媒体について］
図７は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU（Central Processing Unit）２０１は、ROM（Read Only Memory）２０２、または記憶部２０８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）２０３には、CPU２０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU２０１、ROM２０２、およびRAM２０３は、バス２０４により相互に接続されている。
【０１８６】
CPU２０１にはまた、バス２０４を介して入出力インターフェース２０５が接続されている。入出力インターフェース２０５には、キーボード、マウス、マイクロホンなどよりなる入力部２０６、ディスプレイ、スピーカなどよりなる出力部２０７が接続されている。CPU２０１は、入力部２０６から入力される指令に対応して各種の処理を実行する。そして、CPU２０１は、処理の結果を出力部２０７に出力する。
【０１８７】
入出力インターフェース２０５に接続されている記憶部２０８は、例えばハードディスクからなり、CPU２０１が実行するプログラムや各種のデータを記憶する。通信部２０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０１８８】
また、通信部２０９を介してプログラムを取得し、記憶部２０８に記憶してもよい。
【０１８９】
入出力インターフェース２０５に接続されているドライブ２１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア２１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部２０８に転送され、記憶される。
【０１９０】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【０１９１】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図７に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスク（ＭＤ（Mini-Disc）を含む）、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア２１１、または、プログラムが一時的もしくは永続的に格納されるROM２０２や、記憶部２０８を構成するハードディスクなどにより構成される。プログラム格納媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部２０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０１９２】
なお、本明細書において、プログラム格納媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１９３】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０１９４】
【図１】本発明を適用した画像処理装置の一実施の形態の構成を示す図である。
【図２】画像処理装置の他の構成例を示す図である。
【図３】画像処理装置の動作について説明するためのフローチャートである。
【図４】特徴位置について説明するための図である。
【図５】画像処理装置のさらに他の構成例を示す図である。
【図６】画像処理装置の学習処理について説明するためのフローチャートである。
【図７】記録媒体について説明するための図である。
【符号の説明】
【０１９５】
１０  画像処理装置，  １１  画像入力部，  １２  任意方向顔検出部，  １３  顔特徴位置検出部，  １４  局所特徴量算出部，  １５  写像部，  １６  データベース，  １７  顔識別部，  ３０  画像処理装置，  ３１  顔方向検出部，  １００  画像処理装置，  １０１  画像入力部，  １０２  任意方向顔検出部，  １０３  顔特徴位置検出部，  １０４  局所特徴量算出部，  １０５  写像部，  １０６  データベース１０６  顔識別部，  １０８  正誤判定部，  １０９  関数更新部，  ２０１  ＣＰＵ，  ２０２  ＲＯＭ，  ２０３  ＲＡＭ，  ２０８  記憶部，  ２１１  リムーバブルメディア
【図１】
0004595750.tif 000031
【図２】
0004595750.tif 000032
【図３】
0004595750.tif 000033
【図４】
0004595750.tif 000034
【図５】
0004595750.tif 000035
【図６】
0004595750.tif 000036
【図７】
0004595750.tif 000037