(57)【特許請求の範囲】
【請求項１】
画像に含まれる対象物体の、特定の状態からの変動の属性の各々に対応した空間的変換処理のための複数の空間的変換行列と、前記対象物体が前記特定の状態である画像に対応した射影演算処理のための射影行列とを保持する保持手段と、
入力画像の少なくとも一部領域をベクトル化することにより入力画像ベクトルを生成するベクトル化手段と、
前記入力画像に基づいて、前記入力画像における対象物体の、前記特定の状態からの変動を検出して変動の属性を判別する判別手段と、
前記判別手段により判別された変動の属性に基づいて前記複数の空間的変換行列の一つを選択し、選択された空間的変換行列を用いて空間的変換処理を前記入力画像ベクトルに施して変換画像ベクトルを生成し、前記射影行列を用いて前記変換画像ベクトルに前記変換画像ベクトルよりも次元の低い所定の部分空間へ射影する射影演算処理を施して射影ベクトルを生成する生成手段と、を備え、
前記空間的変換行列は、前記入力画像ベクトルの次元数を列数、前記変換画像ベクトルの次元数を行数とする行列の形式で表され、該行列に含まれる要素は、前記入力画像に対する空間的変換を行って生成された変換画像の各点の画素値を計算する上での参照元となる前記入力画像上の対応点の参照割合に基づいて定められることを特徴とする画像処理装置。
【請求項２】
画像に含まれる対象物体の、特定の状態からの変動の属性の各々に対応した空間的変換処理のための複数の空間的変換行列のそれぞれと、前記対象物体が前記特定の状態である画像に対応した射影演算処理のための射影行列とを合成した複数の合成射影行列を保持する保持手段と、
入力画像の少なくとも一部領域をベクトル化することにより入力画像ベクトルを生成するベクトル化手段と、
前記入力画像に基づいて、前記入力画像における対象物体の、前記特定の状態からの変動を検出して変動の属性を判別する判別手段と、
前記判別手段により判別された属性に基づいて前記複数の合成射影行列の一つを選択し、選択した合成射影行列を用いて前記入力画像ベクトルに対して前記空間的変換処理と前記射影演算処理を行い、射影ベクトルを生成する生成手段と、を備えることを特徴とする画像処理装置。
【請求項３】
前記空間的変換行列において、
各行は前記変換画像ベクトルの各要素に対応し、
各行の各要素は前記入力画像ベクトルの各要素に対応し、
各行は、前記変換画像ベクトルの対応する要素値を算出する際に参照される要素のみに参照割合を示す値を有し、他の要素は全て０を有することを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記空間的変換行列は、変動した状態にある形状を前記特定の状態における形状へと変形させる変形行列であることを特徴とする請求項１または３に記載の画像処理装置。
【請求項５】
前記変形行列の前記参照割合は、変動した状態に相当する画像と前記特定の状態に相当する画像との複数のペアを用いて学習することにより得られた、変動した状態に相当する画像の各画素と前記特定の状態に相当する画像における座標位置との関係に基づいて設定されることを特徴とする請求項４に記載の画像処理装置。
【請求項６】
前記空間的変換行列は、前記入力画像ベクトルに対して線形空間フィルタ処理を行うフィルタ処理行列であることを特徴とする請求項１または３に記載の画像処理装置。
【請求項７】
前記フィルタ処理行列は、
各行において、前記線形空間フィルタ処理のためのフィルタ・カーネルが作用する入力画像ベクトルの各要素に対応する要素に、前記フィルタ・カーネルの対応する係数が前記参照割合を示す値として設定されていることを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記空間的変換行列は、前記入力画像ベクトルの輝度分布を補正する輝度分布補正行列であることを特徴とする請求項３に記載の画像処理装置。
【請求項９】
前記生成手段により生成された射影ベクトルを登録してある登録手段と、
前記生成手段により新たな入力画像から生成した射影ベクトルと、前記登録手段に登録されている射影ベクトルとの類似度を算出する算出手段と、
前記算出手段により算出された類似度に基づいて、前記新たな入力画像が前記対象物体を含むか否かを識別する識別手段とを更に備えることを特徴とする請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１０】
画像に含まれる対象物体の、特定の状態からの変動の属性の各々に対応した空間的変換処理のための複数の空間的変換行列と、前記対象物体が前記特定の状態である画像に対応した射影演算処理のための射影行列とを保持する保持手段を有する情報処理装置による画像処理方法であって、
ベクトル化手段が、入力画像の少なくとも一部領域をベクトル化することにより入力画像ベクトルを生成するベクトル化工程と、
判別手段が、前記入力画像に基づいて、前記入力画像における対象物体の、前記特定の状態からの変動を検出して変動の属性を判別する判別工程と、
生成手段が、前記判別工程により判別された変動の属性に基づいて前記複数の空間的変換行列の一つを選択し、選択された空間的変換行列を用いて空間的変換処理を前記入力画像ベクトルに施して変換画像ベクトルを生成し、前記射影行列を用いて前記変換画像ベクトルに前記変換画像ベクトルよりも次元の低い所定の部分空間へ射影する射影演算処理を施して射影ベクトルを生成する生成工程と、を有し、
前記空間的変換行列は、前記入力画像ベクトルの次元数を列数、前記変換画像ベクトルの次元数を行数とする行列の形式で表され、該行列に含まれる要素は、前記入力画像に対する空間的変換を行って生成された変換画像の各点の画素値を計算する上での参照元となる前記入力画像上の対応点の参照割合に基づいて定められることを特徴とする画像処理方法。
【請求項１１】
画像に含まれる対象物体の、特定の状態からの変動の属性の各々に対応した空間的変換処理のための複数の空間的変換行列のそれぞれと、前記対象物体が前記特定の状態である画像に対応した射影演算処理のための射影行列とを合成した複数の合成射影行列を保持する保持手段を有する情報処理装置による画像処理方法であって、
ベクトル化手段が、入力画像の少なくとも一部領域をベクトル化することにより入力画像ベクトルを生成するベクトル化工程と、
判別手段が、前記入力画像に基づいて、前記入力画像における対象物体の、前記特定の状態からの変動を検出して変動の属性を判別する判別工程と、
生成手段が、前記判別工程で判別された属性に基づいて前記複数の合成射影行列の一つを選択し、選択した合成射影行列を用いて前記入力画像ベクトルに対して前記空間的変換処理と前記射影演算処理を行い、射影ベクトルを生成する生成工程と、を有することを特徴とする画像処理方法。
【請求項１２】
コンピュータに、請求項１０または１１に記載の画像処理方法の各工程を実行させるためのプログラム。
【請求項１３】
入力画像の少なくとも一部領域をベクトル化することにより入力画像ベクトルを生成するベクトル化手段と、
前記ベクトル化手段により生成された入力画像ベクトルに対し、変換を行うための変換パラメータを保持するパラメータ保持手段と、
前記パラメータ保持手段に保持された変換パラメータに基づき前記入力画像ベクトルを変換した出力画像ベクトルを生成するベクトル変換手段とを備え、
前記変換パラメータは、前記入力画像ベクトルの次元数を列数、前記出力画像ベクトルの次元数を行数とする行列で表され、該行列に含まれる要素は、前記入力画像に対する空間的変換を行って生成された変換画像の画素値の各点の画素値を計算する上での参照元となる前記入力画像上の対応点の参照割合に基づいて定められることを特徴とする画像処理装置。
【請求項１４】
前記変換パラメータは、前記空間的変換を行う空間的変換パラメータと、より低次元の部分空間への射影変換を行う射影変換パラメータにより構成されることを特徴とする請求項１３に記載の画像処理装置。
【請求項１５】
前記変換パラメータは、前記空間的変換を行う空間的変換パラメータと、より低次元の部分空間への射影変換を行う射影変換パラメータを合成した変換パラメータであることを特徴とする請求項１３または１４に記載の画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及び画像変換処理方法に関する。
【背景技術】
【０００２】
従来、指紋や掌紋、静脈、虹彩といった身体的特徴による本人確認技術、所謂バイオメトリクス認証技術が開発されてきている。これらバイオメトリクス認証の処理には、デジタルカメラ等の光電変換撮像装置により取得された画像や画像相当の２次元空間データに変換したデータを用いて行われるものが多くある。中でも顔の画像を用いた顔認証技術は、人が他の人を識別する際に通常行っている行為と同等であるため、指紋等のその他の認証技術に比べると、その抵抗感の少なさから特に注目されている技術の一つである。
【０００３】
顔などの画像により個人の識別を行う上での一つの問題点は、往々にして個人間の変動よりも、他の要因による変動の方が大きくなる、ということにある。すなわち、同一人物の画像であっても、照明条件や表情、顔の向き、眼鏡等のアクセサリや化粧による変動により異なった人であると判別され、むしろ他の人の同条件の変動画像に類似すると判別される場合が多々ある。すなわち、撮影条件その他の変動を無視して、個人間の差のみを抽出してクラス分けするというのは、そもそも非常に困難な問題であると言える。
【０００４】
この問題に対応するため従来技術として、顔画像の局所領域に注目する方法が提案されている。ある個人を撮像した複数の顔画像データについて、上述のような変動があったとしても、その影響は顔の全域で均一に現れるわけではない。例えば表情の変わったとしても、鼻付近の変動は少ないし、強い照明が斜めから当たるような場合には、光の当たっている影になっていない部分の変動は少ない。また、顔の向きが観察者に相対して左に向いたとすると、顔の３次元形状により、右側部分の変動は左側よりも少なくなる。従ってある局所領域の変動が大きい場合でも、他のいずれかの局所領域では個人の特定が可能な程度の変動しかないことが期待できる。すなわち比較的変動の少ない局所領域毎の類似度を選択的に統合して用いれば、良好な個人識別が可能となると考えられている。
【０００５】
しかしながら、局所領域を選択的に用いる方法というのは、現れている情報を部分的にしか使用しないということでもあるので、識別精度的に不利になる面がある。さらに比較的変動が少ない局所領域であっても変動していない訳ではないため、登録時の画像と条件が異なれば類似度は下がる。
【０００６】
この課題を改善し識別精度を向上させるための方法として、非特許文献１には、顔向き属性に応じて各局所領域を個別にアフィン変換させた後に類似度を算出する顔認識方法が記載されている。例えば登録画像を予め正規化した正面画像とし、複数の所定位置の矩形領域を局所領域の画像を登録データとして保持する。識別対象の入力画像が、例えば左奥行き方向に３０度程度回転した画像であった場合、切り出した菱形の各局所領域を正面向き相当の矩形形状へと、アフィン変換により変形し、然る後に同矩形形状の登録局所領域との類似度を算出する。尚、ここで算出する類似度は同位置画素の差分の総和を用いている。
【０００７】
ここで、左奥行き３０度方向画像に対する局所領域の切り出し菱形形状を決定し、正面向き相当へと変形させるために、局所領域毎に異なったアフィン・パラメータが、予め多数のペア画像を用いて学習されている。この非特許文献１においては、所謂Lucas-Kanade法（非特許文献２）を用いてアフィン・パラメータを推定している。この推定は、個別の入力画像と登録画像単位で、オンラインで行うことも可能であるが、むしろ多数のサンプルペア画像を用いて予め平均的なパラメータとして学習しておいたものを用いた方が、識別精度が向上することが報告されている。これは、平均的パラメータとすることにより、個別のノイズ等による誤差が無くなるためであると考えられる。もちろん予め用意したパラメータを用いることは、オンラインでの逐一推定処理を行う場合に比べて、処理速度面でも有利である。
【０００８】
また、非特許文献３には、顔認識方法において、検出した特徴点を基準として、局所領域の位置と切り出しサイズを設定する方法が記載されている。切り出された局所領域矩形は標準サイズに正規化され類似度計算される。ここで基準点となる特徴点は、例えば左目の左端（目尻）等、比較的検出しやすい一点である。そして、検出した基準点から、所定の横軸ｘ方向および縦軸ｙ方向の相対座標(a, b)により、局所領域の位置を定める。このとき、局所領域が常にほぼ同一の位置となるようにするためには、相対座標値を顔の向きに応じて変えてやるのが有効である。さらに、切り出される局所領域をほぼ同等の顔上の範囲とするためには、スケールcも顔の向きに応じて変えると良い。
【０００９】
非特許文献３では、検出した複数の特徴点の位置情報を用いて顔向き推定を行い、推定した顔向きに応じて、予め学習しておいたパラメータを選択している。例えば、正面向きの顔の場合は、あるパラメータa1, b1, c1を用いて領域の切り出しを行い、左に向いた顔の場合は、同領域を別のパラメータa2,b2,c2を用いて切り出す。
【００１０】
また、特許文献１では、変形ベクトルを用いて対象顔画像全体を参照顔画像(平均顔)へとモーフィングさせる方法を開示している。ここで変形ベクトルは対象画像と参照画像との間の対応点に基づき算出されるもので、対象画像上のある点に対応する参照画像上の点を表す相対座標とほぼ同意であると考えられる。尚、特許文献１における顔画像の変形の目的は、似顔絵の生成のためである。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００７-３４７２４号公報
【特許文献２】特開２００２-３５８５００号公報
【非特許文献】
【００１２】
【非特許文献１】“Learning Patch Correspondences for Improved Viewpoint Invariant FaceRecognition” ,A. B.Ashraf, S. Lucey, T. Chen, Carnegie Mellon University, IEEE International Conferenceon Computer Vision and Pattern Recognition (CVPR), June, 2008.
【非特許文献２】B. Lucasand T. Kanade. “An iterative imageregistration technique with an application to stereo vision.”, Proceedings ofImaging understanding workshop, page 121-120.
【非特許文献３】「顔向きに応じた局所領域抽出に基づく顔認識」井尻 善久、他、第13回画像センシングシンポジウム予稿集、Yokohama,Jun., 2007
【非特許文献４】P.Viola, M. Jones, “Rapid ObjectDetection using a Boosted Cascade of Simple Features”, Proc. IEEE Conf. on Computer Vision andPattern Recognition, Vol. 1,pp.511-518, December 2001.
【発明の概要】
【発明が解決しようとする課題】
【００１３】
非特許文献１に記載されているように、識別処理に先んじて局所領域単位でなるべく標準状態の形状へと合わせこむ変形処理を行うことは、識別率の向上に一定の効果があることが証明されている。その他認識処理に限らず、例えば画像の圧縮処理等の前処理として、変形処理や空間フィルタ処理を行いたい場合は多々ある。このとき、上述の背景技術において示した方法では、以下に示すような課題がある。
【００１４】
非特許文献１における方法では、各局所領域の変形手法をアフィン変換に限定している。アフィン変換は、平面の向き変動に対する補正を行うことが可能である。しかしながら、人物の顔は複雑な形状をしているため、局所領域であっても平面として扱うことによる誤差は小さいものではない。さらに向き変動だけでなく、表情が変わることによる物理的な形状変形は補正できないという課題がある。
【００１５】
また、登録画像との類似度算出に先んじて、変形処理を挿入する必要があり、これにより処理負荷が増大する。Lucas-Kanade法は元々２枚の画像の対応点を探す手法であるので、本文献の手法を拡張して、任意の変形を例えば対応点の一覧として表すことも可能であるが、そうした場合でも処理負荷およびパラメータの増大は課題となる。
【００１６】
また、非特許文献３における方法は、局所領域単位でスケーリングは行うが、常に矩形での切り出しとなっており、形状を変形させるわけではないため、各領域単位の類似度の向上には限界がある。また、同様にスケーリング処理の挿入による処理負荷の増大も懸念される。
【００１７】
特許文献１における顔画像の変形方法は、顔画像全体に対する変形処理であるが、これを顔の識別処理の前処理として適用することができる。また、同様の方法で局所領域単位での変形を行うことも考えられる。このとき代表的な特徴点ごとに変形ベクトル（すなわち対応点）を持って、それらの間の画素は補完しながら変形することになるが、やはりその処理負荷は軽いものではない。またいろいろな変形に柔軟に対応しようとすると、変形ベクトルを持たせる特徴点の数を増やす必要があり、その場合パラメータを記憶するメモリの増大も問題となる。
【００１８】
また、例えば、各領域の類似度算出の前処理としては、変形処理だけでなく、ガウシアン・フィルタ等によるぼかし処理やエッジ抽出処理等のフィルタリング処理を行いたい場合もある。しかしながら、上述の如何なる手法においても、別途フィルタリング処理を追加する必要があるため、処理装置の規模や処理負荷が増大するという課題がある。
【００１９】
本発明は、上記の課題に鑑みてなされたものであり、パラメータや処理負荷を増大させずに、画像の変形、線形空間フィルタ処理、輝度分布補正処理などの様々な種類の空間的変換処理を行える方法・装置を提供することを目的とする。
【課題を解決するための手段】
【００２０】
上記課題を解決するために、本発明の画像処理装置は、
画像に含まれる対象物体の、特定の状態からの変動の属性の各々に対応した空間的変換処理のための複数の空間的変換行列と、前記対象物体が前記特定の状態である画像に対応した射影演算処理のための射影行列とを保持する保持手段と、
入力画像の少なくとも一部領域をベクトル化することにより入力画像ベクトルを生成するベクトル化手段と、
前記入力画像に基づいて、前記入力画像における対象物体の、前記特定の状態からの変動を検出して変動の属性を判別する判別手段と、
前記判別手段により判別された変動の属性に基づいて前記複数の空間的変換行列の一つを選択し、選択された空間的変換行列を用いて空間的変換処理を前記入力画像ベクトルに施して変換画像ベクトルを生成し、前記射影行列を用いて前記変換画像ベクトルに前記変換画像ベクトルよりも次元の低い所定の部分空間へ射影する射影演算処理を施して射影ベクトルを生成する生成手段と、を備え、
前記空間的変換行列は、前記入力画像ベクトルの次元数を列数、前記変換画像ベクトルの次元数を行数とする行列の形式で表され、該行列に含まれる要素は、前記入力画像に対する空間的変換を行って生成された変換画像の各点の画素値を計算する上での参照元となる前記入力画像上の対応点の参照割合に基づいて定められる。
【発明の効果】
【００２１】
本発明によれば、パラメータや処理負荷を増大させずに、画像の変形、線形空間フィルタ処理、輝度分布補正処理などの様々な種類の空間的変換処理を行える方法・装置が提供される。
【図面の簡単な説明】
【００２２】
【図１】特徴ベクトル計算部および類似度計算部の構成を示すブロック図。
【図２】顔画像認識処理装置の構成を示すブロック図。
【図３】一般的な特徴ベクトル計算部の構成例を示すブロック図。
【図４】実施形態における変形処理と射影処理を説明する図。
【図５】入力顔画像から局所領域位置の決定までの処理画像の一例を示す模式図。
【図６】特徴ベクトル計算部の他の構成を示すブロック図。
【図７】変形行列の学習、生成処理の一例を示すフローチャート。
【図８】変形行列の学習、生成処理の流れを例示する模式図。
【図９】局所領域変形のための対応点一覧と、近傍画素からの参照割合を説明する図。
【図１０】局所領域画像のベクトル化を表す図。
【図１１】変形行列の一例の仕組みを説明する図。
【図１２】変形行列の一例による変形演算を説明する図。
【図１３】全域フィルタリング処理行列の元となる線形空間フィルタの例を示す図。
【図１４】全域フィルタリング処理行列の一例を説明する図。
【図１５】輝度分布補正行列の一例の仕組みを説明する図。
【図１６】画像処理装置の構成の一例を示すブロック図。
【図１７】登録処理動作モード時の処理を説明するフローチャート。
【図１８】識別処理動作モード時の処理を説明するフローチャート。
【図１９】同一の標準局所領域定義を用いて計算した局所領域の位置が、特定変動画像と標準状態画像とで一致しないことを説明する図。
【発明を実施するための形態】
【００２３】
以下、本発明の発明を実施するための実施形態について、図面を用いて説明する。実施形態では、特に、特定変動属性に対応する画像の局所領域の変動を標準状態へと補正する画像の空間的な変換処理方法、また、局所領域の類似度に基づき画像を識別する画像識別処理方法への空間的な変換処理の適用に関して説明する。
【００２４】
［第１実施形態］
（全体ブロック図解説）
図２は、本発明の画像処理装置の一実施形態が適用される、顔画像認識処理装置の構成を示すブロック図である。各ブロックは、例えば専用のハードウェア処理回路として実装され、所定のI/Fで接続されている。また、各部を統括的に制御して、登録或いは識別の一連の処理を実行させる不図示のコントロール部も存在している。
【００２５】
画像入力部２０１は、不図示の前処理によって所定サイズに切り出された顔画像を入力する。尚、顔が切り出される元の画像は、例えば、カメラ装置によって獲得される電子データである。なお、そのようなカメラ装置は、例えば、光学系、CCD(Charge-Coupled Devices)センサー等の光電変換デバイス／ドライバー回路／ADコンバーター／各種画像補正を司る信号処理回路／フレームバッファ等により構成される。
【００２６】
特徴点検出部２０２は、画像入力部２０１が入力した入力画像中における特徴点の正確な位置座標を検出する。ここで特徴点とは、顔の目や口等の器官やその端点（目尻、目頭、鼻孔等）である。この検出処理は、テンプレート・マッチング等のパターン検出技術を用いて行われる。前処理の顔検出処理と同様のパターン検出技術を用いても良い。また、より検出精度を上げるため、人の顔における幾何的な拘束条件（例えば左右の対象性や器官の上下関係等）を利用するようにしても良い。
【００２７】
正規化部２０３は、特徴点検出部２０２の検出結果を用いて、所定の特徴点（例えば両目）が標準位置へ配置されるように、入力画像の変換（正規化）を行うと共に、各特徴点座標も正規化画像上の座標を指すように変換する。入力画像および特徴点座標の変換はアフィン変換に基づき行う。ここで用いるアフィン・パラメータは、例えば両目を基準として用いる場合は、変換前画像の両目を結ぶ線分と標準位置の両目を結ぶ線分の２つの線分について、その回転角度、長さの変倍率、および中点移動方向および距離に基づき定めることが可能である。入力画像の変換は、変換される正規化画像上の各点について、それぞれ元となる入力画像上の座標位置をアフィン逆変換により求める。この座標位置は通常小数点以下を含む実数値となるので、周辺画素からの距離に応じた補完を行うことによって輝度値を計算する。特徴点座標の変換は、アフィン変換そのものである。正規化部２０３は正規化した画像（正規化画像）を局所領域切り出し部２０４と属性判別部２０５に送る。
【００２８】
局所領域切り出し部２０４は、局所領域定義記憶部２０６に記憶されている複数の局所領域定義と、正規化部２０３で正規化された特徴点座標に基づき、正規化画像から複数の局所領域を設定して切り出す処理を行う。これらの局所領域は正規化画像上の固定位置としても構わないが、本実施形態では、位置に関しては複数の特徴点座標に基づいて定めている。例えば、２特徴点を結ぶ中点から口方向へ所定サイズ下げた位置を矩形の基点とする、というように計算方法を定義している。これに矩形サイズの情報を加えたものを局所領域定義と呼んでおり、本実施形態では局所領域定義記憶部２０６に記憶されている。
【００２９】
また本実施形態においては、領域の矩形サイズについては固定のサイズとしているが、これを特徴点位置に基づく可変サイズとすることももちろん可能である。この場合は、切り出し後に各領域を標準サイズに変換する変倍処理がさらに必要となる。なお、対応する変倍率を数個の離散値に限定するならば、後述する変形行列により変倍処理を実現することも可能である。また、矩形以外の形状から切り出したい場合には、矩形領域内をマスクして所望の形状の画素のみを取り出すようにすれば対応可能である。
【００３０】
尚、局所領域切り出し部２０４が切り出す元となる画像は正規化した輝度画像そのものでも良いがこれに限られるものではない。例えば、照明変動補正を掛けた画像や、増分符号あるいはLocal binary pattern（LBP）と呼ばれる符号化画像、エッジ抽出画像等にした方が、良好な識別結果を得られる場合がある。このような符号化画像、エッジ抽出画像等を用いる場合には、正規化部２０３と局所領域切り出し部２０４の間に所望の変換フィルタ処理部を加えることによって実現することが可能である。
【００３１】
属性判別部２０５は、正規化部２０３より出力される、正規化特徴点座標や正規化顔画像を用いて属性を判別する。ここで属性とは、入力画像における対象物体の、特定の状態からの変動を分類したものである。たとえば、対象物体を「顔」とした場合、顔の奥行き方向の向き（上下左右の角度）や表情（笑顔、目閉じ、無表情等）などの、顔の見た目の二次元画像形状を変化させる変動要因（正面を向いた顔からの変動）を指す。なお、本実施形態では、主に顔向き属性を例に説明するが、他の変動要因であっても全く同様に扱える。属性判別部２０５は、予め属性が機知である多数のサンプル顔画像を用いて学習しておいた、Support Vector Machine（SVM）やニューラル・ネットワーク、或いは線形判別分析（LDA）等の既存技術のクラス判別器により構成される。判別したい変動属性によって、正規化特徴点座標と正規化顔画像の両方を用いても良いし、要求される性能と速度のトレード・オフ等の諸条件に応じて、どちらか一方のみを用いるようにしてももちろん構わない。
【００３２】
特徴ベクトル計算部２０７は、局所領域切り出し部２０４により切り出された各局所領域の画像を入力とし、領域毎に各画素を所定の順序に一列に並べてベクトル化する。そして、特徴ベクトル計算部２０７は、射影行列記憶部２０８に保持されている各領域用の射影行列を用いて、入力ベクトルとの行列積により射影演算を行って、特徴ベクトルを計算する。
【００３３】
射影行列は通常、次元圧縮射影行列であって、予め主成分分析（PCA）や独立成分分析（ICA）等の手法を用いて、予め多数のサンプルから学習された、より次元数の低い部分空間へと、入力ベクトルを射影する行列である。これにより各局所特徴ベクトルは低次元ベクトルとなるため、登録データ用の記憶容量や続く類似度計算の負荷を低減できる。一般に、特徴ベクトルを次元圧縮することで、データ量や計算量が削減できるのみならず、識別率が向上することが知られている。これはノイズや撮影環境の変動等の識別に関係の無い情報を減らすことができるためと考えられる。
【００３４】
従って、各射影行列が表す部分空間は、理想的には、個人間の変動のみを残して、個人内の変動、すなわち照明変動や向き、表情等による変動は無くしてしまうような空間が望まれる。このような理想的な部分空間に近い部分空間を、主成分分析（PCA）より求めることができる可能性はあるが、この場合、抽出された各主成分（固有ベクトル）のいずれが、個人間の変動を良く表すものであるかは分からない。従って、すべての主成分抽出後に、多数の正解の分かっているサンプルデータを用いてテストを行い、良好な個人識別ができる主成分のみを選択するようにしても良い。或いは、独立成分分析（ICA）を利用すると、個人内の変動がガウス分布に従うと仮定できるならば、個人間の変動を表す部分空間を直接的に計算できる可能性もある。若しくは線形判別分析（LDA）の手法を応用し、クラス外変動（ここでは個人間）を最大化し、クラス内変動（ここでは個人内）を最小化する部分空間を探索する方法もある。
【００３５】
いずれの手法を用いるにせよ、予め多数のサンプルデータを用意し、分析や学習を行って射影行列を決定する必要がある。この分析や学習処理は、顔画像認識処理装置内で行う必要は無く、ハイスペックなコンピュータを用いて予め計算しておき、当該装置内には決定された射影行列を射影行列記憶部２０８に記憶しておくのみでよい。
【００３６】
また、本実施形態において、特徴ベクトル計算部２０７は、属性判別部２０５が判別した属性情報を用い、対応する射影行列を射影行列記憶部２０８より選択する。すなわち、各局所領域用として保持されている射影行列は一つではなく、判別する属性の種類に対応する数の射影行列が記憶される。射影行列および特徴ベクトル計算部２０７の詳細については、後述する。
【００３７】
登録特徴ベクトル記憶部２１０は、登録する顔画像毎に全局所領域の特徴ベクトルを保持している。入力する顔画像を登録したい場合、本顔画像認識処理装置は登録モードで駆動される。登録モードでは、特徴ベクトル計算部２０７で計算された各局所特徴ベクトルは、登録特徴ベクトル記憶部２１０に顔画像の個人IDと共に保持され、処理完了となる。
【００３８】
尚、個人IDは、登録モード時に不図示のユーザI/Fもしくは通信I/F部を介して、登録する顔画像と共に入力される。また同一の個人IDに対して複数の顔画像を登録する場合には、画像IDを登録順に付けて同時に記憶しておくようにすればよい。属性判別部２０５による属性情報を合わせて記憶しておくようにすることももちろん可能である。
【００３９】
類似度計算部２０９は、識別モード時において処理を行う。類似度計算部２０９は、特徴ベクトル計算部２０７より出力される各局所領域の特徴ベクトルに対し、登録特徴ベクトル記憶部２１０に保持されている全てのIDについての同領域の登録特徴ベクトルとの類似度を演算する。ここでは、各IDについて夫々、全局所領域の入力画像に対する類似度が算出されることになる。類似度としては、特徴ベクトルと登録特徴ベクトル間の距離（差分ベクトルのノルム）や、角度等を用いることが可能である。類似度の詳細については後述する。
【００４０】
結果統合部２１１は、個人識別ID毎に、全領域の類似度を統合する処理を行う。このとき最も単純には、全領域の類似度を加算或いは平均値を算出することにより、そのIDに対する類似度とすればよい。或いは類似度が低位の領域は統合に入れないように、一旦類似度の高い順にソートしてから、上から所定数のみの平均を取るようにしても良好な類似度が得られる場合がある。重要と思われる領域順に、重みをつけて加算するようにすることももちろん可能である。
【００４１】
最終判別部２１２は、得られたID毎の類似度を参照し、最も高い類似度のIDを入力画像に対する識別結果とする。或いは、やはり類似度の高い順にソートし、所定順位以内現れる頻度の最も高いIDを識別結果としても良い。また、いずれのIDに対する類似度も所定の閾値を超えない場合には、最終判別部２１２は、入力された画像は登録者でないものと判別する。
【００４２】
ある個人IDに対して、複数の登録用画像に基づく特徴ベクトルが登録されている場合には、登録されている全ての画像IDに対する統合類似度の例えば平均値や最大値を、その個人IDの統合類似度とする。登録特徴ベクトル記憶部２１０に属性情報を合わせて記憶する場合には、属性判別結果に基づき選択的に登録特徴ベクトルを用いるようにしても良い。
【００４３】
（登録処理フロー）
次に図５、図１７、図１８を用いて、本実施形態の登録モード時および識別モード時の処理の流れを説明する。登録処理は、入力された顔画像から特徴量を抽出し、同時に入力された個人識別IDと共に登録データとして記憶部に記憶する処理である。識別処理は、入力された顔画像から特徴量を抽出し、登録されている特徴量と比較することにより、どの個人の顔であるかを識別する処理である。これらの処理は、不図示のコントロール部が図２の各ブロックを逐次制御することにより実行される。
【００４４】
尚、本実施形態の顔画像認識処理装置に入力される顔画像は、所定のサイズの画像であって、顔の大きさはほぼ一定であり面内の回転はほぼ０度（正立）に近いものであることを想定している。図５の（ａ）は、入力される顔画像の一例を示す。例えば、デジタル・カメラやカメラ付き携帯端末等に本装置を適用する場合、一例としては、予めファインダー／モニタの決められた枠内に、標準的な大きさで顔が映るようにしてから撮影した画像に対して処理を行うようにするアプリケーションが考えられる。
【００４５】
或いは、スナップ写真のように画像中のどこに顔か含まれているか分からない画像に対して処理を行う必要がある場合には、前処理として顔検出処理を行うようにしてもよい。すなわち、顔検出処理により、画像中の顔の位置・大きさ・面内回転角度をある程度特定し、これらの情報に基づき一旦正規化して切り出しを行った顔画像を、本装置に入力すればよい。顔検出処理は、例えば、特許文献２や、非特許文献４に開示される技術を用いて構成された装置によって実現可能である。
【００４６】
図１７における登録処理では、まずステップＳ１９０１において、画像入力部２０１が、登録用の顔画像とその個人を識別するためのID（若しくは氏名等）を入力する。次にステップＳ１９０２において、特徴点検出部２０２は、入力された顔画像の特徴点を検出する処理を行う。ここで特徴点とは、目鼻口等の顔の器官の中点や上下左右の端点を指す。図５の（ｂ）は、特徴点が検出された顔画像を示しており、ここでは両目、口の中点と左右端点の９点が検出されている。ここで行われる処理はパターンマッチング処理で、既存のテンプレート・マッチング、或いは顔検出処理と同様の特許文献２や、非特許文献４に開示されているパターン検出技術を用いても良い。ある程度大きさと面内角度の揃った画像に対する処理であるので、画像中の探索領域は比較的狭くすることができる。しかしながら個人間や、表情・奥行き方向の向き回転による形状変化は比較的大きいので、ロバスト性の高いパターン検出処理が要求される。尚、目や口の中点は、それぞれ直接検出するのではなく、両端点の中点を計算するようにして求めても良い。
【００４７】
続くステップＳ１９０３において、正規化部２０３は、抽出された両目位置に基づく画像の正規化処理と特徴点座標の変換を行う。ここでは、検出された両目が所定位置になるようにアフィン変換を行うことを考える。検出された両目座標を結ぶ線分を線分Ａとし、所定位置の両目（通常は水平、左右対称位置）を結ぶ線分を線分Ｂとする。すると、線分Ａから線分Ｂへの成す角が回転角度、線分Ａの中点から線分Ｂの中点までを結ぶベクトルが移動方向、線分Ａの長さに対する線分Ｂの長さが拡大率となって、６つのアフィン・パラメータを決定できる。特徴点座標の変換は、このパラメータを用いたアフィン変換を行えば良い。画像の正規化処理では、変換後の各点の輝度値を決定する必要がある。従って、同パラメータの逆アフィン変換により、各変換後画素位置における変換前の対応点座標（通常実数値）を求め、その近傍画素からバイリニアまたはバイキュービック等の補完処理を行って全画素値を決定する。図５では、（ｃ）に両目位置に基づき正規化された顔画像を示し、（ｄ）に座標変換した他の特徴点を合わせて表示している。
【００４８】
ステップＳ１９０４において、属性判別部２０５は、形状や輝度分布等の変動に影響を及ぼす顔画像の属性を抽出する。ここでいう属性とは、例えば、顔の上下左右方向の向き（奥行き回転）であったり、笑顔や目閉じ等の表情である。他には光源の種類や方向推定、撮影場所（野外・屋内）、元の解像度（被写体までの距離、ボケ具合）等も考えられる。本実施形態では、特に奥行き左右方向の向き回転に注目するが、他の属性に関しても基本的な考え方は同様である。
【００４９】
属性判別部２０５におけるこれらの属性の判別は、正規化された画像と特徴点座標によって行われる。属性判別器は、通常多数の属性の明らかなサンプル画像を用いて、予め学習されている。例えば、特徴点座標や、画像の輝度勾配ヒストグラム（HistogＲＡＭ of Gradient, HOG）特徴といった特徴量を、顔向きクラス毎にラベルを付けて判別器に学習させる。判別器としては、SupportVector Machine（SVM）やニューラル・ネットワーク、或いは線形判別分析（LDA）といった手法が利用可能である。
【００５０】
ステップＳ１９０５からＳ１９０９までは、局所領域毎のループ処理である。本実施形態の顔画像認識装置は、局所領域定義記憶部２０６が局所領域の定義を数十個程度記憶している。本実施形態の局所領域定義においては、局所領域の位置は各顔の複数の特徴点に基づき計算するように定義され、サイズは所定サイズとなっている。これらの局所領域定義には、標準状態局所領域定義と、その各々に対応する特定変動局所領域定義がステップＳ１９０４で判別する変動属性の種類分存在する。なお、標準状態局所領域定義は、変動の無い標準状態の顔画像サンプル・データセットから、予め個人の識別に適した領域を学習等により選択したものである。それに対応する特定変動局所領域定義とは、後述するように、属性に応じた変形を行うと標準状態局所領域相当となる領域の外接矩形の位置計算方法とサイズを定義する。これは、標準状態局所領域に対して補正量を加えることにより定義可能である。
【００５１】
これらの局所領域定義に基づき、顔画像上の局所領域位置を決定した一例が図５の（ｅ）に示す画像である。実際には、各領域は一つずつ位置決定され切り出し以下の処理が行われる。各領域定義には連続のIndex番号が振られており、Index番号の若い領域から順に処理を実行する。
【００５２】
ステップＳ１９０６において、局所領域切り出し部２０４は、局所領域の画像の切り出し処理を行う。局所領域切り出し部２０４は、ステップＳ１９０４により判別された属性に対応する局所領域定義（無変動もあり得る）を選択し、ステップＳ１９０３で正規化された特徴点位置に基づき局所領域の起点（左上）を決定し、所定の矩形サイズの画像領域を切り出す。切り出された画像は、輝度値を順に一列に並べて、入力ベクトルとしてベクトル化される。尚、本実施形態では切り出す元の画像は輝度画像のままとしているが、これを各種特徴量に変換した画像としてもよく、その場合はステップＳ１９０５からのループに入る前に、所望の変換フィルタ処理によって画像を変換しておく。
【００５３】
次のステップＳ１９０７において、特徴ベクトル計算部２０７は、ステップＳ１９０６で切り出された入力ベクトルに射影演算を行って、特徴ベクトルを計算する。特徴ベクトルは入力ベクトルを射影行列により部分空間上へ射影したもので、１０〜２０次元程度に圧縮されたものとなる。特徴ベクトルを射影して次元圧縮することにより、個人間の差を現さない不必要な特徴情報を除去し、登録特徴ベクトルとの類似度計算負荷を低減すると共に、登録データ容量も削減できる。ここで用いる局所領域毎の射影行列は、ステップＳ１９０４により判別された属性に対応するものを選択する。特徴ベクトル計算の詳細については後述する。
【００５４】
ステップＳ１９０８において、特徴ベクトル計算部２０７は、作成した特徴ベクトルを、ステップＳ１９０１で入力された個人IDと共に登録特徴ベクトル記憶部２１０に記憶する。すでに同じ個人IDの同領域の特徴ベクトルが登録特徴ベクトル記憶部２１０に登録されている場合は、画像Indexを追加して記憶する。すなわち、本顔認識処理装置においては、ある個人について複数の顔画像を登録データとすることができる。登録画像枚数が所定数を超える場合は、例えば、すでに登録されている特徴ベクトルを２セットずつの組み合わせで比較し、最も差の少ないセットの内のどちらか一方を削除して、新たな画像を登録する、というように、適時入れ替えてゆくことも可能である。
【００５５】
ステップＳ１９０９にて、一つの局所領域に対する処理を完了し、ステップＳ１９０５に戻る。入力画像に対する全ての局所領域の特徴ベクトルの記憶が完了したら、登録処理の完了となる。
【００５６】
（識別処理フロー）
続いて、本実施形態による識別処理の流れについて、図１８を用いて説明する。ステップＳ２００１において、画像入力部２０１は、識別対象の所定サイズの顔画像を入力する。登録時の図１７のステップＳ１９０１とは異なり、この時点で個人IDは不明であり、入力されない。ステップＳ２００２の特徴点検出からステップＳ２００４の変動属性判別までの処理は、それぞれ図１７のステップＳ１９０２からステップＳ１９０４に示した登録モード時の処理と同様であるので、詳しい説明は割愛する。
【００５７】
ステップＳ２００５からステップＳ２００９までの局所領域毎のループ処理も、ステップＳ２００８を除きステップＳ１９０５からステップＳ１９０９に示した登録モード時の処理と同様である。ステップＳ２００８は、ステップＳ２００７で特徴ベクトル計算部２０７が計算した局所領域の特徴ベクトルを一時的に記憶しておく処理である。ここで記憶する特徴ベクトルは、後ほど登録特徴ベクトルとの類似度算出で使用される。
【００５８】
ステップＳ２０１０からステップＳ２０１５までは、登録されている個人ID毎のループである。個人IDについて複数の画像が登録されている場合には、登録画像番号毎のループとなる。つまりこのループ内は、各登録画像（全局所領域分の登録特徴ベクトル）に対する処理である。
【００５９】
ステップＳ２０１１からステップＳ２０１３までは、局所領域毎のループ処理である。このループ内では、ステップＳ２０１２において、類似度計算部２０９が各局所領域の登録特徴ベクトルとの類似度を計算する。このとき類似度が計算される特徴ベクトルは、ステップＳ２００８で一時記憶されたものである。
【００６０】
図１の（ｃ）は類似度の一例を説明する図である。今、登録特徴ベクトルをr、入力画像から抽出した特徴ベクトルをfとすると、類似度は、例えば、両ベクトル間の距離dに基づく値として計算することができる。距離dの値が小さくなるほど、両ベクトルは似ていると言えるので、例えば、類似度Sdとして、
【数１】
0005451302.tif 000002
を定義することができる。ここでkは所定の係数である。このように定義すると、類似度Sdは０〜１.０の範囲の値となり、１.０に近い程、類似していることを示す。距離として他の基準、例えばベクトルの要素値の差の総和（マンハッタン距離、L１ノルム）や確率分布を考慮したマハラノビス距離を用いることも可能である。
【００６１】
また、類似度をベクトルr、fの間の角度θに基づいて定義することもできる。この場合は、例えば余弦を用いて、
【数２】
0005451302.tif 000003
として類似度Sθを定義する。この類似度Sθは、-１.０〜１.０の値を取り、やはり１.０に近い程類似していることを示す。この他、ベクトルr、fのそれぞれに対し、各ベクトル要素値の平均値を要素値から引いたベクトルを生成して、その角度とすることもできる（正規化相関）。もちろんこれらの類似度を組み合わせたり、他の尺度の類似度を用いるようにしてもかまわない。
【００６２】
一つの登録ID（登録画像）に対して全ての局所領域の類似度を算出したら、次にステップＳ２０１４において、結果統合部２１１がこれらの類似度の統合処理を行う。最も基本的な類似度統合処理は、全局所領域の類似度値の平均値（または合計値）を算出することである。また、領域毎の類似度に重み付けしたり選択的に使用したりするようにすることも可能で、これを属性に応じて切り替えることもできる。ここで統合された類似度を統合類似度と呼ぶ。
【００６３】
個人IDに対し複数の画像が登録されている場合には、ここで画像毎の統合類似度をさらに統合する処理を行う。この統合処理は、例えば、複数の統合類似度の内から最大のものを選択するか、もしくは複数の統合類似度の平均値を取る処理となり、登録されている個人IDに対する統合類似度を一意に決定する。また、ここで合えて個人IDに対する統合処理を行わず、統合類似度を個人ID＋画像IDで管理して、最終判別に用いるようにすることもできる。
【００６４】
以上のステップＳ２０１５までの処理で、各登録個人IDに対する統合類似度が算出されたら、ステップＳ２０１６において最終判別部２１２は最終判別処理を行う。この最終判別処理では、統合類似度を類似度の高い順にソートし、もっとも上位の統合類似度に対応する個人IDを判別結果とする。最も上位の統合類似度が所定の閾値を超えない場合には、登録該当者無しと判別される。或いは、ステップＳ２０１４にて個人ID毎の統合類似度の統合処理を行っていない場合には、ソートした統合類似度のうち、閾値以上の範囲内での個人IDの出現頻度を加味して、最終判別結果とする個人IDを決定するようにしてもよい。判別された個人IDはステップＳ２０１７において、ユーザや外部装置等の所定の出力先に通知され、識別処理の完了となる。
【００６５】
（特徴ベクトル計算部２０７の詳細について）
図１の（ａ）は、図２で説明した特徴ベクトル計算部２０７および射影行列記憶部２０８の動作を説明する図である。また、図１の（ｂ）は、類似度計算部２０９および登録特徴ベクトル記憶部２１０の動作を説明する図である。
【００６６】
特徴ベクトル計算部２０７においては、まず、各局所領域の切り出し画像は、全画素が所定の順序で一列に並べられベクトル化される。このベクトル化は図１０に一例を示すように、左上の切り出し原点を開始画素とし、右方向に１画素ずつずらした画素値を順次並べて行き、右端に到達したら１行下げた左端画素に戻って再度同様に画素値を並べる、という手順で実行される。このようにして生成した入力画像ベクトルをvとする。なお、図１０において、Ix,yは、局所領域の左上画素を原点とした各画素座標における輝度値を表す。
【００６７】
また、射影行列記憶部２０８には、属性判別部２０５で判別可能な、顔の向きや表情等の変動属性別に射影行列が保持されている。すなわち、、射影行列記憶部２０８は、画像中の対象物体（顔）の特定の状態からの変動を複数種類の属性のいずれかに分類し、対象物体を特定の状態へ補正する空間的変換処理のための補正パラメータを変動の属性毎に保持する。ここでは、属性判別部２０５で判別可能な属性の種類を１〜３の３つとし、夫々の属性に対応する補正パラメータとしての射影行列をP1〜P3で表している。但し、P1〜P3は局所領域毎に異なったセットが存在する。夫々の属性に対応する射影行列の生成方法の詳細については後述するが、いずれの属性が選択されても、同一の局所領域であれば射影先は同一部分空間となり、ベクトル同士を比較することが可能なようにしている。
【００６８】
特徴ベクトル計算部２０７は、選択部１０１が、属性判別部２０５から入力された属性情報１０３に基づき、対応する射影行列を選択する。そして、射影演算部１０２は、選択した射影行列を用いて、入力画像ベクトルvとの行列演算により、射影ベクトルfを計算する。すなわち、f = Pn・tv （nは属性番号）である。そして、登録モード時には、f= rとして、各局所領域の登録特徴ベクトルrが登録特徴ベクトル記憶部２１０に個人IDと共に記憶される。また、識別モード時には、類似度計算部２０９の相関演算処理部１１０によって、射影ベクトルfと登録されている各個人IDの同局所領域の登録特徴ベクトルrとの類似度sが算出される。本実施形態においては、先に述べた類似度Sθ（cosθ）を採用している。すなわち図１の（ｂ）の類似度sは、
【数３】
0005451302.tif 000004
である。ここで|r|は登録処理時に予め計算しておき、rではなく、
【数４】
0005451302.tif 000005
を登録特徴ベクトルとして記憶しておくようにすると、識別処理時の計算負荷を下げることが可能となる。
【００６９】
図３に、一般的な特徴ベクトル計算部２０７の一例を示す。この例では、属性別に射影行列を切り替える構成は導入されておらず、如何なる変動属性時においても、領域毎に平均的な、単一の射影行列Pを用いて、射影ベクトルfを計算している。射影行列Pは、先に述べたように、部分空間を例えば主成分分析（PCA）等の手法を用いて事前に学習しておくことが可能である。従来例の場合は、学習用データとして予め対応したい様々な変動属性を含む顔画像を用意し、これらを一括して用いて、全て属性に共通する平均的な部分空間を計算する。このため、抽出された部分空間が個人間の特徴を良く表すものになっているとは限らず、向きや表情等の変動属性を区別し易くなってしまう場合も多く、個人識別性能を落とす大きな要因となっている。
【００７０】
これを避けるため、例えば、属性別のサンプルデータを別々に用いて、それぞれの属性毎に異なった部分空間を学習した場合、例えそれらの射影次元数を合わせたとしても、これらはあくまで異なった空間となる。従って、射影ベクトル同士は同一局所領域であっても属性が異なれば比較不能な空間へ射影されてしまうこととなる。つまり従来技術では、射影先の部分空間が同一となるような射影行列P1〜P3を生成することができなかった。
【００７１】
これに対して、本実施形態の顔認識処理装置においては、この問題に対処すべく、局所領域の形状等の空間的な変換と、個人識別のための部分空間の学習を分離する手法を提案している。主成分分析等により個人を区別する部分空間を学習する際には、変動のない標準状態のみの顔画像を学習データとして、標準状態射影ベクトルPsを学習する。そして、これとは別途、対応する変動属性毎に局所領域を標準状態の局所領域相当へと変換する属性別の空間的変換行列を、変動属性画像と標準状態画像のペア画像により学習する。そして属性別の空間的変換行列と標準状態射影ベクトルを合成することにより、変動属性に応じた射影行列を生成している。すなわち、特徴ベクトル計算部２０７では、属性判別部２０５が判別した属性に基づいて、対象物体（本例では顔）を特定の状態（標準状態）へ補正する空間的変換処理を入力画像ベクトルに施して変換画像ベクトルを生成する。そして、この変換画像ベクトルを、より次元の少ない所定の部分空間へ射影する射影演算処理を施して射影ベクトルを生成する。
【００７２】
（空間的変換行列としての変形行列）
ここで、空間的変換処理の一例として、変動属性別の局所領域の変形方法について説明する。尚、入力画像ベクトルは空間的変換処理により変換画像ベクトルへ変換されるが、本実施形態では、変換画像ベクトルは後述する標準状態ベクトルである。図４の（ａ）は、非特許文献１に示されるような局所領域単位でのアフィン変換を実施する際に、本実施形態の空間的変換行列としての変形行列を適用する例を説明する図である。
【００７３】
図４の（ａ）の左矩形内の菱形は、ある変動属性(１)により局所領域がアフィン変換される場合の切り出し元領域の一例を示している。２５×２５画素の矩形は、この菱形の外接矩形であって、本実施形態においてはこの矩形内を切り出し領域とする。切り出された矩形領域は、画素値を一列に並べてベクトル化されベクトルvとして表される。ここで、図４の（ａ）における中間の２０×２０画素の矩形は、特に変動要因がない場合の標準状態における局所領域の形状を表している。この標準状態矩形領域は、同様にベクトル化されベクトルv’として表される。
【００７４】
非特許文献１と同様、切り出し元領域である菱形を標準状態に変形することを考えると、本実施形態においては、ベクトルvをベクトルv’に変換することに相当する。本実施形態においては、このような変形を、アフィン変換により逐一対応点座標を求めてこの位置に基づく輝度値計算で行うのではなく、変形行列なるものを導入して、一度の行列演算により計算する。図４の（ａ）では変形行列はT1で表されており、vからv’への変換は、
v’ = T1・tv
なる式で計算される。この例では、ベクトルvは２５×２５＝６２５次元、ベクトルv’は２０×２０＝４００次元であるので、変形行列T1は６２５×４００次元の行列となる。尚、変形行列のような元々二次元配列として解釈されていたベクトルを、他の二次元配列として解釈可能なベクトルへと変換する行列を一般化したものを、本明細書では空間的変換行列と呼んでいる。空間的変換行列の他の例については後述する。
【００７５】
計算された標準状態相当のベクトルv’は、予め標準状態のサンプルデータのみを用いて、主成分分析等により計算された標準射影行列Psにより部分空間に射影され、射影特徴ベクトルf’が計算される。すなわち、
f’ = Ps・tv’
である。
【００７６】
ここで変形行列T1は、ベクトルv’の各要素の元となる左矩形上の対応点が分かれば計算可能である。対応点からの変形行列の作成方法については後述する。対応点一覧は、非特許文献１のように、まずアフィン・パラメータを推定し、各画素座標についてアフィン変換（逆変換）を行うことによって生成する方法を取っても良い。すなわち本実施形態の構成は、アフィン変換と同等の効率の良い局所変形を実現する手段としても用いることが可能である。
【００７７】
しかしながら、対応点一覧から変形行列が作成できるということは、アフィン変換に限定しなくとも、任意の形状の変形に対応可能ということである。この一例を図４の（ｂ）に示す。図４の（ｂ）の左矩形内に接する点線内領域は、ある変動属性(２)の場合の局所領域形状を示している。変形行列T2を導入することにより、変動属性(１)の場合と同様、
v’ = T2・tv
として、標準状態ベクトルv’への変換が可能である。変換されたベクトルv’は、変動属性(１)の場合と同様、標準射影行列Psにより部分空間に射影され、射影特徴ベクトルf’が計算される。
【００７８】
ここで変動属性(１)と変動属性(２)の画像では、元々の局所領域の形状は異なるが、それぞれに対応する変形行列T1とT2を用いて、一旦標準状態相当の形状へと変形している。その後に標準の射影行列Psを用いて射影するので、生成された２つの射影ベクトルf’は、どちらの変動属性でも同一部分空間上に存在することになる。従って、どちらか一方が登録特徴ベクトルで、どちらか一方が識別対象の特徴ベクトルであるとすれば、これら２つのベクトルは比較可能であり、類似度算出が行えることになる。
【００７９】
このように特徴ベクトルへの射影演算に先んじて、属性情報に基づいて変形行列による局所領域の変形処理が行われる。そのため、特徴ベクトル計算部２０７を図１の（ａ）に示した構成ではなく、例えば図６に示すような変形演算部６０１を導入した構成とすることができる。変形演算部６０１は、例えば大規模行列積演算回路であって、変形行列Tnと入力画像ベクトルvの積算により標準状態の形状に相当する標準状態ベクトルv’を生成する。ここで用いられる変形行列Tnは、属性判別部２０５で判別された属性情報１０３に基づき、選択部１０１により選択される。各属性に対応する変形行列は、局所領域毎の空間的変換データとして射影行列記憶部２０８に保持されている。すなわち、射影行列記憶部２０８は、補正パラメータとして、変動の属性の各々に対応した空間的変換処理のための複数の空間的変換行列を保持するとともに、対象物体が特定の状態（標準状態）である画像に対応した射影演算処理のための射影行列を保持する。変形演算部６０１は、選択された変形行列を用いて入力画像ベクトルvに空間的変換処理を施し、標準状態ベクトルv’を生成する。生成された標準状態ベクトルv’は、射影演算部１０２にて標準射影行列Psを用いて射影され、射影特徴ベクトルf’となる。
【００８０】
このような構成にすると、同一の演算装置で、空間的変換データすなわち変形行列を入れ替えるだけで、如何なる変形に対しても対応することが可能となる。さらには変形だけでなく、後述する他の空間的変換処理もパラメータを入れ替えるのみで対応できる。
【００８１】
このような形態の変形演算部６０１は、続く後処理を射影演算部１０２に限らなくとも良い。例えば、非特許文献１のように、射影を行わず各画素の差の絶対値の総和値をもって類似度を計算するような場合にも適用可能であるし、その他認識処理に限らず、画像のデフォルメ等、変形の必要な様々な処理に適用可能である。反面、空間的変換行列は入力ベクトル要素数×標準状態ベクトル要素数の巨大な行列となるため、変換する領域のサイズによっては、図１の（ａ）の構成に比べて保持しなければならないパラメータや積和演算回数がかなり多くなる。従って、パラメータは圧縮して保持するようにし、かつ専用の積和演算回路を導入して高速に並列演算するなどの方法が有効である。
【００８２】
（変形行列の生成方法）
次に、変形行列の生成方法について、図７，図８、図９、図１１、図１２、図１９を用いて説明する。先に述べたとおり、各局所領域の変動属性に応じた変形行列は、無変動状態相当の局所領域の各点に対する変動属性局所領域上の対応点の一覧より生成可能である。但し、ここで言う対応点一覧とは、特定個人の顔画像間のそれではなく、通常の人の顔の同じ変動間の対応点一覧として、一般化（平均化）したものである。この対応点一覧は、多数の人の特定変動属性の顔画像と標準状態顔画像のペアを学習用サンプルとして機械学習することにより、生成することが可能である。
【００８３】
もちろん人種や性別、顔の骨格分類等のある程度の括りで顔のタイプを分類し、タイプ別の顔画像でタイプ別の特定変動属性時対応点一覧として学習することも可能である。このタイプ別対応点一覧から生成した変形行列を、タイプ判別器と共に使用することで、より変形精度の向上が期待できる。
【００８４】
変形行列Tの生成は、登録時や識別時の動作時にオンラインで行う必要はないため、汎用ＰＣ等を用いてソフトウェアにより実行すればよい。対応する変動属性や学習データが膨大な場合には、スーパー・コンピュータやクラスタ・コンピュータを用いても良い。ある特定変動属性に対応する各局所領域の変形行列を学習して生成する処理の一例について図７のフロー図を用いて説明する。図７に示されるフローの各ステップは、汎用ＰＣ等において実行されるものである。なお、この処理の開始時点では、各局所領域に対する標準状態局所領域定義のみが存在し、特定変動属性局所領域定義は変形行列と合わせて本処理フロー内で生成する。
【００８５】
変形行列の生成に先んじて、学習しようとする特定変動の顔画像と標準状態顔画像のペアを多数の人物について用意する必要がある。図８の９００は、一例として、変動属性１として左３０度方向の顔画像と、標準状態として正面向き状態の顔画像を、同一人物に対しペアで多数用意していることを示す。尚、ここで学習する変形は顔向き要因のみで変化するものとしたいので、用意する画像は他の変動要因の含まれない撮影条件（照明、解像度）の良好なもののみに限定する方が良い。できればスタジオ等で、正確な顔向き条件と共に撮影された画像のセットが望ましい。
【００８６】
図７のステップＳ８０１からステップＳ８０９までは、図８の９００に例示したような各ペア画像の個別の処理を行うループである。まずステップＳ８０２において、２枚の画像からオプティカル・フローを計算する。オプティカル・フローとは、画像が連続的に変化している場合の各画素における速度場であって、２枚の画像の対応点を各画素位置からの相対位置に変換したものと見なせる。本実施形態においては、標準状態画像を現在画像と見なし、特定変動画像を過去画像と見なしてオプティカル・フローを計算している。
【００８７】
２枚の画像からオプティカル・フローを計算する方法には、各種の従来技術が提案されている。例えば、非特許文献２に開示される輝度勾配を利用する方法はLucas-Kanade法と呼ばれ、高速な対応点の探索方法として、ステレオ・マッチングや物体の追尾等にも広く用いられている手法である。この他、ブロック・マッチングと呼ばれる手法や、位相限定相関法と呼ばれる手法を適用して、対応点を探索することも可能である。
【００８８】
図８の９１０は、９００に示した各ペア画像から生成したオプティカル・フローのイメージである。拡大してある最上位の図が見やすいが、各黒点を現在画像（＝無変動画像）の各画素位置とし、そこから生えている「ヒゲ」のような線分の先が、対応する過去画像（＝変動属性１画像）の対応点を示している。各々の画素は過去画素から現在画素の方向に進んでいることになるので、速度場としてはこのヒゲの逆方向ベクトルが各画素にあることになる。つまりオプティカル・フローは各現在位置画素に対する二次元ベクトルの集合であって、現在位置座標からその位置のフローを引くことによって、過去画像上の対応点座標を取得できる。
【００８９】
続いて、ステップＳ８０３からステップＳ８０８までは、各局所領域単位での処理を行うループである。ステップＳ８０４では、図２の顔画像認識処理装置における識別処理や登録処理で説明したのと同様に、局所領域定義を用いて、無変動画像の特徴点に基づく局所領域の位置を計算する。ここで用いられる局所領域定義は、標準状態局所領域定義である。尚、基準とする特徴点については、図２の顔画像認識処理装置の特徴点検出部２０２と同様の処理で検出した特徴点を用いても良いし、別途手入力等して設定してある正解特徴点を用いるようにしても良い。
【００９０】
そして、ステップＳ８０５において、無変動画像上の局所領域内各点に対応する、変動属性１画像上の対応点一覧を計算する。この対応点一覧は変動属性１の画像上の絶対座標であって、当該局所領域の各点座標に対し、各画素に対応するオプティカル・フローの値を引いた座標値となる。図８の９１０の各オプティカル・フロー図内に、実線枠として示しているのが、無変動画像上の局所領域に相当し、各座標点（小さい方の点で表す）から生えている「ヒゲ」線分の伸びた先の点（大きい方の点で表す）が変動属性１の画像上の対応点に相当する。対応点に外接する矩形は破線で表している。
【００９１】
次にステップＳ８０６において、今度は変動属性画像上の局所領域位置を計算する。但しここではまだ特定変動属性局所領域定義は生成されておらず、標準状態局所領域定義を用いて、特徴点に基づき領域の起点（領域矩形の左上点）を計算する。通常、変動属性画像上の特徴点は、標準位置である両目を除いては、無変動画像上の特徴点位置とは一致しない。従って、同じ標準状態局所領域定義を用いたとしても、計算される領域矩形の起点（左上点）の座標は、変動属性画像と無変動画像では一致しない。図１９は、これを説明する図である。図１９で、矩形２２０１は、ある標準状態局所領域定義（領域Ａとする）を用いて、無変動画像上の特徴点に基づき設定した局所領域の一例である。また、矩形領域２２０２は、同じ標準状態局所領域定義を用いて、変動属性１の画像上の特徴点に基づき設定した局所領域である。この領域Ａは、両目尻および口位置に基づき決定されるように定義されており、両画像ではこれらの特徴点の座標は異なるため、矩形２２０１と２２０２の位置は一致していないことが分かる。変動属性１画像上の特徴点で計算した矩形領域２２０２の起点（左上点）は、×印２２０３で示している。これは図８の×印９２１と同意である。
【００９２】
続くステップＳ８０７においては、ステップＳ８０５で抽出した絶対座標の対応点一覧を、ステップＳ８０６で計算した変動属性画像上の局所領域の起点（すなわち×印９２１）を基準点とする相対座標へと変換する。この変換は、各絶対座標値から基準点座標を減ずることによって行われる。すなわち図８の９２０において、各ヒゲ線分の先の点（大きい方の点）として示される座標値が、×印９２１を基準とする相対座標で表されるので、負の座標値となる対応点も存在する。基準点は(x,y)=(０,０)の座標位置ということになる。ここで計算した相対座標一覧を一時保存し、各局所領域、各ペア画像に対して同様に処理を行ってループを完了する。
【００９３】
ステップＳ８１０からステップＳ８１５までは、再度、局所領域単位の処理ループである。この処理ループでは、ステップＳ８０１からＳ８０９までで生成された各ペア画像の対応点一覧を平均化し、各局所領域に対する平均的な対応点一覧を生成する。まずステップＳ８１１において、一時保存されている全ペア画像の当該局所領域の相対座標対応点一覧を参照して、各対応点座標を平均化する。すなわち標準矩形の各画素に対応する相対座標対応点を全て加算し、ペア画像の数で除算することにより、平均化された相対座標対応点一覧が生成できる。この処理では、図８の９２０の各対応点一覧を、×印９２１の起点を一致させて平均化した処理であり、図８の９３０に例示するように×印９３１を起点として負の座標を含む対応点一覧が生成されることになる。
【００９４】
ステップＳ８１２では、平均化された対応点一覧の外接矩形を計算する。この処理は、全ての平均化対応点の座標について、x方向y方向それぞれの最小値と最大値を探索する処理である。x座標の最小値xminとy座標の最小値yminにより、外接矩形の起点（左上点）が決定し、x座標の最小値xminと最大値xmaxの差分により矩形幅サイズw、y座標の最小値yminと最大値ymaxの差分により矩形高さサイズhが決定する。
【００９５】
ステップＳ８１３では、この外接矩形に基づき、標準状態局所領域定義から特定変動属性局所領域定義を生成する。ここで外接矩形とは、変動属性画像上における切り出し局所領域を表すことになる。従ってその左上位置が切り出し矩形の起点となるようにする必要がある。ステップＳ８１１で生成した原点(０,０)すなわち図８の９３０における×印９３１は、標準状態局所領域定義により変動属性画像状態に設定した局所領域の起点であるので、これが外接矩形の起点になるように補正してやることを考えれば良い。すなわち、特定変動属性局所領域定義として、標準状態局所領域定義の起点位置計算結果にxminとyminを加えたものが起点位置として計算されるように定義する。また、切り出しサイズは外接矩形サイズに一致させる。
【００９６】
次にステップＳ８１４では、ステップＳ８１１で算出した平均相対座標対応点を、外接矩形の起点を原点とする座標に変換する。これは各座標値に対しxmin,yminを減ずる処理に相当する。すなわちこの処理によって、全ての対応点座標値は、図８の９３０に示した破線の外接矩形の起点を原点とするようになるため、負の座標値は無くなる。計算した平均対応点一覧は一時保存する。
【００９７】
以上ステップＳ８１５までの処理を繰り返すことにより、特定変動属性局所領域定義および標準状態相当への変形のための対応点一覧が、全局所領域分について生成される。次にステップＳ８１６からＳ８２３までの処理ループにより、各局所領域の特定変動属性に対応する変形行列の生成処理を行う。尚、図９および図１１は、対応点一覧から変形行列生成までのイメージを示す図である。
【００９８】
図９の１０００は、図８の９３０と同様、ある変動属性に対して標準状態へと変形する対応点一覧を図形として表示している。左側の矩形内の変形した閉領域が変形前の形状における各点を含む領域であって、右側の矩形が標準形状である。変形前の切り出し領域は、閉領域に対する外接矩形であり、図９の例では２５×２５画素のサイズである。変形後の標準状態相当の矩形は同例では２０×２０画素のサイズである。標準形状内の各点x’について実数値の対応点座標xが存在する。すなわち、対応点一覧に含まれる対応点座標の数は４００点分であり、x,yの座標値はそれぞれ０.０〜２５.０の間の実数値となる。図９の１００１はこれを表形式で表したものであり、実際の対応点一覧データはこの形式でメモリ上に保持されている。
【００９９】
ステップＳ８１７では、変形行列を格納する領域を確保し初期化する。先に述べた通り、変形行列は変形前局所領域画素数×変形後局所領域画素数の巨大行列であるが、その殆どの値は０であるので、ここで予め全要素値を０クリアしておく。
【０１００】
ステップＳ８１８からＳ８２２までの処理ループでは、変形行列の各行に対する要素値の設定処理を行う。変形行列の各行は、入力する特定変動属性の局所領域矩形と同サイズの輝度値変換フィルタであると等価であると考えることができる。この輝度値変換フィルタの一例を図１１の１２０１に示す。図中で一つのフィルタは、変形後矩形の１画素に対する輝度変換を表し、ハッチングを施した位置が変形前矩形内の参照点位置に相当しており、参照割合がフィルタの係数として設定されている。他の白部の係数は全て０である。
【０１０１】
この参照割合係数は、対応点一覧に保持されている実数値座標により計算される。例えば図９の変形後座標x’=(１,０)に対する対応点座標xは(１.２,０.３)であるので、１００２に示す位置に相当する。実際に画素値が存在するのは周辺の整数値座標であるので、所定の周辺画素からの距離に応じた参照割合が計算できる。１００２の場合は４近傍画素を参照する所謂バイリニア補完を例示する。つまり、変形後座標(１,０)の輝度値I’1,0は、変形前座標(１.２,０.３)の輝度値I1.2,0.3に相当する。輝度値I1.2,0.3は周辺４画素の輝度値I1,0,I2,0, I1,1, I2,1により距離に応じた重みを乗じて加算することにより計算可能である。
I1.2,0.3 = (１-０.３)((２-１.２)I1,0+(１.２-１)I2,0) +(０.３-０)((２-１.２)I1,1 +(１.２-１)I2,1)
= ０.５６I1,0+ ０.１４I2,0 + ０.２４I1,1+ ０.０６I2,1
【０１０２】
すなわちこの例は、図１１の１２０１における２段目の輝度変換フィルタが相当し、変形前の(１,０)，(２,０)，(１,１)，(２,１)の位置に、それぞれ係数として参照割合０.５６，０.１４，０.２４，０.０６が格納される。尚、これはバイリニア補完の例であるが、バイキュービック補完する場合には近傍１６画素からの参照割合を計算すればよい。あるいは、最近傍の１画素のみを参照するようにしてももちろん良く、この場合はI1,0の参照割合のみが１.０で、他の画素の参照割合は全て０となる。
【０１０３】
本顔画像認識装置において、入力される局所領域は図１０に示したようにベクトル化して処理されるので、輝度変換フィルタも同様にベクトル化して考える。これが図１１の１２０２における輝度値変換ベクトルである。変形行列の各行は、それぞれこの輝度値変換ベクトルとなる。つまり、輝度値変換ベクトルt0,0からt19,19までを縦に並べたものが、変形行列Tの正体である。これを図１２の１２０３に示す。ステップＳ８１９からステップＳ８２１では、以上の図９および図１１で説明した処理を実行する。
【０１０４】
ステップＳ８１９では、変形行列の行に対応する変形後（＝標準状態矩形）の点の対応座標を、図９の１００２に示した対応点一覧から参照する。そして１００３を用いて説明したように、ステップＳ８２０で、所定の近傍画素からの参照割合を計算する。ステップＳ８２１では、輝度変換ベクトルである変形行列の行の参照画素に対応する位置に、ステップＳ８２０で計算した参照割合を格納する。
【０１０５】
以上を繰り返し、ステップＳ８２２までの処理で一つの局所領域に対する変形行列が完成する。そして、ステップＳ８２３までで、これを全ての全ての局所領域に対して行い、変形行列が全領域分生成される。
【０１０６】
尚、ステップＳ８０２におけるオプティカル・フローの計算では、特定変動画像と無変動画像の中間に相当する画像をさらに用いるようにすることも可能である。段階的に、特定変動画像から中間画像へのフロー、中間画像から無変動画像へのフローをそれぞれ計算し、これらを合成したフローを生成して、以後の処理に用いることにより、より正確な対応点一覧が計算できる。
【０１０７】
また、対応点一覧の生成方法は、ステップＳ８０１からステップＳ８１５までの方法には限られない。例えば非特許文献１に示されるように一旦局所領域毎のアフィン・パラメータを推定し、アフィン変換を行うことによって、対応点一覧を生成するようにしても良い。或いは、アフィン変換でなく共一次変換（台形変換）等の他の変形を適用することも可能である。このように変形の種類を限定すると、ノイズの多い画像に対する誤差を低減できる可能性がある一方で、複雑な形状変形には対応できなくなる。
【０１０８】
ここで、生成した変形行列Tを使用した変形演算のイメージを図１２に示す。変形行列Tと入力ベクトルvの積T・tvは、変形行列の各行が輝度変換ベクトルであるので、この例では、それぞれの輝度変換ベクトルtx,yと入力ベクトルvの内積値を並べた４００次元のベクトルが生成されることになる。このように生成された変換画像ベクトルを、所定の二次元形状に所定順序で配置することにより変形画像が生成されたものと解釈できる。図１２の例では、２０画素ずつ区切って矩形状に配置すると、２０×２０画素の無変動相当の矩形へ変形したのと等価な処理であることが分かる。もちろん本実施形態では、以後の処理もベクトルのまま継続しておこなうため、矩形状に配置し直す必要はないが、変形結果を画像として使用する場合には、この並べ替えの処理が必要となる。
【０１０９】
尚、図９では変動属性として顔の左右方向の向き変動に対応する例を示したが、本手法がこれに限定されないことは明らかであろう。学習データさえ集めれば、変動属性を上下方向の向き変動としてももちろん対応可能であるし、変動属性を笑顔として、標準状態である無表情への変形を学習して変形行列を生成することも勿論可能である。
【０１１０】
また、複数の変形を段階的に行うようにすることも可能である。例えば、笑顔の左向き画像の局所領域を正面向き相当に変形してから無表情相当に変形する、といったことが考えられる。さらに後述する合成行列を用いれば、複数の変形を一度の演算で行うことも可能となる。
【０１１１】
（変形行列と射影行列の一体化）
次に、変動属性別の射影行列を生成し、特徴ベクトル計算部２０７を図６の構成ではなく、図１の（ａ）の構成とすることを考える。
【０１１２】
本実施形態の顔画像認識処理装置では、図４の（ａ）、（ｂ）に示した変形行列Tnによる変形演算および標準状態射影行列Psによる射影演算は、連続して行われる。ここで上述したように、Tnは特定変動時切り出し矩形画素数×標準状態矩形画素数の行列であって、Psは標準状態矩形画素数×射影次元数の行列である。図４の（ａ）、（ｂ）の例では、T1、T2は６２５×４００次元、Psは例えば４００×２０次元である。入力ベクトルvから射影ベクトルf’までの変換を式で表すと、
f’ = Ps・tv’ = Ps・Tn・v
となる。すなわちTnとPsは、行列積演算により合成可能である。
Pn = Ps・Tn
【０１１３】
この合成射影行列Pnを変動属性nに対応する射影行列とすれば、図１の（ａ）の構成の特徴ベクトル計算部２０７を使用するようにできる。このとき図４の（ａ）,（ｂ）に示した変換は、それぞれ図４の（ｃ）,（ｄ）のようになり、それぞれ対応する合成射影行列P1、P2を用いて、一度の射影演算で図４の（ａ）、（ｂ）と全く等価な計算ができるようになる。
【０１１４】
ここで合成射影行列Pnのサイズは、図４の（ｃ）、（ｄ）の例では６２５×２０次元であり、６２５×４００次元の変形行列Tnをそのまま保持する場合に比べ、遥かに小さい容量のパラメータとなる。また、図６の変形演算部６０１が不要になることによる処理回路規模の削減効果や計算の高速化の効果は極めて高いもので、図３に示した一般的な特徴ベクトル計算部と殆ど変わらない規模での変形対応が可能となる。すなわち本実施形態に限らず、変形処理に続いて何らかの射影演算が行われる処理に本発明を適用する場合は、変形行列と射影行列は合成して保持するようにすることができる。そして必要に応じて、合成射影行列を選択するような構成とすることにより、極めて効率の良い処理装置（および方法）を実現できる。
【０１１５】
［第２実施形態］
第１実施形態では空間的変換処理として変形処理を用いたが、本発明はこれに限られるものではない。第２実施形態では、空間的変換処理として線形空間フィルタ処理を適用する例を説明する。このときの空間的変換行列はフィルタ処理行列となる。より詳細には、第２実施形態の空間的変換行列は、局所領域全面に対するフィルタ処理を一度の演算で行うことが可能な行列、すなわち、全域フィルタリング処理行列となる。
【０１１６】
図１３の（ａ）は線形空間フィルタの一種である３×３の係数を持つガウシアン・フィルタ（平滑化フィルタ）のフィルタ・カーネルを示している。各枡内の係数は、中心位置の画素に対する自身と周辺画素からの参照割合を表している（実際には１/１６の値が格納されている）。このようなフィルタ係数を作用させるべく、図１１の変形行列の場合と同様に、フィルタリング処理後の各画素毎に輝度値変換フィルタを考えると、図１４の１５０１に示すようになる。フィルタ処理においては変換前後の矩形サイズは等しいものとするので、各輝度値変換フィルタ１５０１のサイズも、変換後の矩形サイズ２０×２０画素に等しくなっている。この輝度値変換フィルタは、変換後の各画素の位置を注目点として、単純に図１４の係数を相対的に配置したものとなっている。変形の場合と同様、他の要素は全て０である。
【０１１７】
この輝度値変換フィルタを、変形の場合と同様にベクトル化すると、輝度値変換ベクトル１５０２が生成できる。これを同様に全変換後画素分の輝度値変換ベクトルを縦に並べると、全域フィルタリング処理行列（この場合は局所領域平滑化処理行列１５０３）が生成できる。
【０１１８】
図１４の例の場合、全域フィルタリング処理行列Gは４００×４００次元の正方行列となり、変形行列の場合と同様、図６の変形演算部６０１での演算に使用することが可能である。もしくは変形行列と同様、続く射影行列と合成することにより、図１の（ａ）に示す構成の特徴ベクトル計算部２０７（射影演算部１０２）で射影演算が可能となる。
【０１１９】
顔認識の処理において、図１４のような平滑化処理が必要になるのは、例えば登録画像（標準状態）に対して、高解像度の画像が識別処理対象として入力される場合が考えられる。このような場合は、入力画像の周波数成分を調べて、高周波成分が含まれる場合には高解像度画像であると属性判別するようにしても良い。
【０１２０】
また、図１３の（ｂ）に示すような、ガウシアン・フィルタ以外の線形空間フィルタを用いることも勿論可能である。１６０１の２つのフィルタは、それぞれ縦方向エッジ、横方向エッジの検出フィルタであり、１６０２はラプラシアン・フィルタであってエッジ画像への変換が行える。これらのフィルタは、特徴ベクトル抽出処理の一環として、属性に寄らず実行する場合もあるが、同様に全域フィルタリング処理行列を生成して、本発明が適用可能であるのは言うまでもない。
【０１２１】
［第３実施形態］
（輝度分布補正）
本発明を、局所領域内における輝度分布の補正処理に適用することも可能である。例えば人の顔の場合、左右いずれかの方向に光源があるときには、鼻による影ができやすくなる。従って、光源方向を変動属性として推定する場合、鼻の影になる領域の画素の輝度を持ち上げてやるような、輝度分布の補正が有効となる場合がある。
【０１２２】
図１５の１７０１は、ある変動属性の場合における局所領域の輝度補正分布テーブルであり、各位置の係数が対応する画素に乗じられる輝度変換係数を表している。つまり１７０１の右よりの領域の画素は影になり易い部分であるため、輝度値をかさ上げするために大きめの係数が設定され、左側の領域の画素は影になりにくいので小さめの係数となっている。輝度分布補正テーブル１７０１は、１２０１や１５０１の輝度値変換フィルタとは異なり、領域内の各画素は同位置の係数のみしか参照しない。すなわち１７０２に示すように、各輝度値変換ベクトルは、テーブルの１要素の係数のみを格納することになる。
【０１２３】
このように生成した輝度値変換ベクトルを、第１、第２実施形態と同様に縦にならべることによって、輝度分布補正行列Dを生成することが可能である。図１５に例示するように、輝度分布補正行列Dは、全域フィルタリング処理行列Gは同様、変換前後のサイズが等しい４００×４００次元の正方行列となる。
【０１２４】
尚、輝度分布の補正に係数の乗算のみでなくオフセットの加算が必要な場合には、本手法のみでは対応できない。このような場合は、変換前の局所領域の各画素に対し予めオフセットの加算を行う前処理が必要となるが、画素数分の加算処理であるのでそれほど処理負荷は重くない。
【０１２５】
［第４実施形態］
（合成空間的変換行列）
空間的変換行列自体を、複数の空間的変換行列を合成して生成した、合成空間的変換行列とすることも可能である。例えば、図１１の変形行列T１２０３による変形処理を行った局所領域画像に対し、図１４の平滑化処理行列G（１５０３）による平滑化フィルタリング処理を行って、さらに図１５の輝度分布補正行列D１７０３を用いた輝度分布補正を行う場合を考える。この場合、最終的に求めたい変換後のベクトルv’を、
v’ = D・G・T・tv = C・tv
として計算することになるので、予め
C = D・G・T
なる空間的変換行列Cを計算しておくことにより、他の実施形態と同様一度の行列演算での変換処理が可能となる。
【０１２６】
［その他の実施形態］
（バス接続構成）
本発明の実施形態としては、図２に示したブロック図の各処理部を、ハードウェア処理回路のみで実現することもできるが、汎用的なＣＰＵを用いたシステムとして構築することももちろん可能である。図１６は、本発明の一実施形態として、画像識別装置として機能する情報処理装置の一例を示すブロック図である。本実施形態の画像処理装置は、ＣＰＵバス１８００を介して接続された各部を、ＣＰＵ１８０１が制御することによって動作する。以下、各部について説明する。
【０１２７】
ユーザI/F部１８０２は、キーボード等の入力装置やディスプレイなどの出力装置により構成され、本画像処理装置に対する指令をユーザが与えるため、および処理結果をユーザに伝えるために用いられる。ここで与えられた指令はＣＰＵ１８０１に送られて解釈され、その後の処理にトリガとなる。ＤＭＡＣ１８０３は、ＣＰＵ１８０１が予め設定しておくことにより、各部間のデータの転送をＣＰＵ１８０１を介さずに行うことができる。ＲＯＭ１８０４は、ＣＰＵ１８０１で動作させるプログラムや、各種処理に必要となる固定的なパラメータを格納する。ＲＡＭ１８０５は、各処理を行う際のワーク領域や一時データ保持領域として用いられる。尚、各部処理にはこれとは別に不図示の内蔵ローカルＲＡＭが備えられる場合もある。大容量記憶部１８０６は、例えばハードディスクドライブ（HDD）等で構成される。
【０１２８】
画像入力部１８０７は、図２における画像入力部２０１に相当し、バス１８００に接続可能なI/Fを備えた処理部である。画像入力部１８０７が取り込んだ画像データは、バス１８００を介してＲＡＭ１８０５または大容量記憶部１８０６に、一旦格納される。尚、このときの画像データの転送はＤＭＡＣ１８０３を用いて行われる。特徴点抽出部１８０８は、図２の特徴点検出部２０２に相当する。この特徴点抽出部１８０８は、ＲＡＭ１８０５または大容量記憶部１８０６に格納された顔画像に対し、特徴点の検出処理を行う。正規化処理部１８０９は、図２の正規化部２０３と同等の処理を行う。すなわち、行われる処理内容は、第１実施形態で説明したアフィン変換を用いる顔画像の正規化処理と特徴点座標の変換処理である。射影演算部１８１０は、図２の特徴ベクトル計算部２０７と同様、局所領域の入力ベクトルを射影して次元圧縮し、特徴ベクトルを生成する。
【０１２９】
尚、局所領域の位置計算、属性判別、類似度計算、結果統合、および最終判別の処理は、ＣＰＵ１８０１によりＲＡＭ１８０５の一部を作業領域として実行される。局所領域の画素の切り出しは、局所領域の位置計算結果に基づき、ＣＰＵ１８０１がＤＭＡＣ１８０３の転送パラメータを設定し、ＲＡＭ１８０５上の処理画像の局所領域各画素を順に射影演算部へと転送させることにより実現できる。
【０１３０】
本システムで実行されるプログラムの処理の流れは、図１７および図１８に示した登録処理および識別処理と同じであるので、詳細な説明は割愛する。各部で用いられる射影行列等のパラメータも、第１〜第４実施形態と同様である。
【０１３１】
本実施形態のように汎用ＣＰＵを用いたシステムにより画像処理装置を構築すると、ハードウェア完成後に、各処理をカスタマイズすることが可能となり、より柔軟性の高いシステムを構築できる。さらに、パラメータを差し替えることによって、顔に限らない他の類似画像の識別処理、例えば自動車の車種の判別処理等を実現する画像識別装置として使用することも可能である。もちろん、ハイスペックＰＣ等の十分に処理能力のあるＣＰＵを使用できる場合には、１８０８〜１８１０に示した専用ハードウェアを割愛し、全てソフトによる処理としても、もちろんかまわない。
【０１３２】
また、以上の説明は便宜上すべて局所領域のような一部領域に対する処理として説明してきたが、入力画像全域に対しても適用可能であることは自明であろう。但し、入出力が巨大になるので、処理装置の規模や処理時間等により、処理可能なサイズは制約されることになろう。
また上述の実施形態では、主として顔画像から個人を特定する顔認証処理について説明したが、本発明の画像識別処理方法の適用はこれに限られるものではない。例えば自動車の車種や、蝶の羽の模様による種の判定等、類似したパターンを識別する多くの画像識別処理に適用可能であることは言うまでもない。
【０１３３】
また、本発明の空間的変換処理は、画像認識処理に限らず、他の様々な空間的変換処理を必要とする画像処理に適用することが勿論可能である。さらに、空間的変換処理と一体化する後処理の射影処理は、次元圧縮射影処理に限らずあらゆる目的の線形射影処理に適用可能であることは自明であろう。
【０１３４】
実施形態では、ハードウェアによる実装の概念を示すブロック図と、ＣＰＵを用いたシステムによる実装例を示したが、本発明の適用は実装方法に依存するものではなく、処理方法自体も適用範囲である。他の実装としては、例えばＤＳＰ（Digital Signal Processor）を処理の一部の計算に利用しても良いし、或いはネットワークで接続される分散的な処理システムにおいて適用することも勿論可能である。例えばクライアントから入力される画像を、サーバーで識別する、といったシステムも考えられる。
【０１３５】
以上のように、上述した各実施形態によれば、同じ計算方法及び装置を用いて、パラメータのみを差し替えることにより、様々な種類の変形に柔軟に対応可能である画像処理装置或いは画像変換処理方法を提供することが可能となる。この画像処理装置或いは画像変換処理方法は、変形だけで無く、その他の様々な線形空間フィルタ処理や輝度分布補正処理等の空間的変換処理に、或いはそれらの合成処理に対しても、パラメータを差し替えるのみで対応可能である。また、ほとんど処理負荷を増大させずに、かつパラメータの増加も最小限に抑えつつ、空間的変換処理とそれに続く次元圧縮処理のような射影処理を、同時に処理可能な画像処理装置或いは画像変換処理方法を提供することが可能となる。
【０１３６】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005451302.tif 000006
【図２】
0005451302.tif 000007
【図３】
0005451302.tif 000008
【図４】
0005451302.tif 000009
【図５】
0005451302.tif 000010
【図６】
0005451302.tif 000011
【図７】
0005451302.tif 000012
【図９】
0005451302.tif 000013
【図１０】
0005451302.tif 000014
【図１１】
0005451302.tif 000015
【図１２】
0005451302.tif 000016
【図１３】
0005451302.tif 000017
【図１６】
0005451302.tif 000018
【図１７】
0005451302.tif 000019
【図１８】
0005451302.tif 000020
【図１９】
0005451302.tif 000021
【図８】
0005451302.tif 000022
【図１４】
0005451302.tif 000023
【図１５】
0005451302.tif 000024