(57)【特許請求の範囲】
【請求項１】
検知物体の特徴点を含む部分領域における立体形状の特徴量を取得する取得部と、
前記立体形状の特徴量と、基準となる立体形状の特徴量との類似性を示す第１評価値を生成し、前記検知物体の向きを示す第１ベクトル、及び前記基準となる立体形状の特徴量を演算した基準物体の向きを示す第２ベクトルの向きが近いほど大きくなる重み値と、前記第１評価値とに基づく第２評価値を生成する評価部と、
前記第２評価値に基づいて前記検知物体が予め定めた立体形状を有するか否かを判定する判定部と、
を備える立体物検知装置。
【請求項２】
画像から物体を検知し、前記物体の特徴点を検出する検出部と、
前記特徴点を含む部分領域における立体形状の特徴量を取得する取得部と、
前記立体形状の特徴量と、基準となる立体形状の特徴量との類似性を示す第１評価値を生成し、前記検知物体の向きを示す第１ベクトル、及び前記基準となる立体形状の特徴量を演算した基準物体の向きを示す第２ベクトルの向きが近いほど大きくなる重み値と、前記第１評価値とに基づく第２評価値を生成する評価部と、
前記第２評価値に基づいて前記物体が所定の立体形状を有するか否かを判定する判定部と、
前記物体が前記所定の立体形状を有すると判定された場合に、前記物体が予め登録されている立体物であるかを認証する認証部と、
を備える立体物認証装置。
【請求項３】
前記取得部は、視差情報を用い、前記特徴点を二次元座標から三次元座標に変換し、前記部分領域に対して前記三次元座標を中心として生成した三次元曲面に基づき、曲率を計算し前記特徴量とする請求項２に記載の立体物認証装置。
【請求項４】
前記特徴量は、前記部分領域のそれぞれに対して得られた曲率であり、
前記評価部は、前記物体の各特徴点に対応する曲率と、基準となる曲率と、に基づいて、前記部分領域における立体形状の類似度を前記評価値とする請求項２に記載の立体物認証装置。
【請求項５】
前記物体の向きを推定する向き推定部を備え、
前記評価部は、前記物体の推定された向きに基づいて、前記第２評価値を生成する請求項２乃至４のいずれかに記載の立体物認証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、立体物検知装置及び立体物認証装置に関する。
【背景技術】
【０００２】
自動的に人間の顔を認識する顔検知及び顔認証装置においては、写真または湾曲させた写真などを使った他人のなりすましを防止する必要がある。そのため、写真などを二次元画像か三次元画像かを自動で判別して、三次元画像と判別されると、本物の顔であると認識する処理アルゴリズムが考えられる。
【０００３】
このような処理アルゴリズムにおいて、三次元画像か否かを顔全体で判別するようにすると、写真に凹凸をつけただけでも、本物の顔と誤認識をしてしまうおそれがあり、精度よく顔認識を行うことができない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−２３１３９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
そこで、発明が解決しようとする課題は、検知物体がなりすましか否かを簡易な処理で精度よく判定できる立体物検知装置及び立体物認証装置を提供することである。
【課題を解決するための手段】
【０００６】
一の実施形態による立体物検知装置は、取得部と、評価部と、判定部を備える。取得部は、検知物体の特徴点を含む部分領域における立体形状の特徴量を取得する。評価部は、特徴量と、基準となる特徴量との類似性を示す評価値を生成する。判定部は、評価値に基づいて検知物体が予め定めた立体形状を有するか否かを判定する。
【図面の簡単な説明】
【０００７】
【図１】図１は、本発明の一実施形態による立体物認証システム１の概略構成を示すブロック図である。
【図２】図２は、顔領域及び特徴点の検出結果を例示している図である。
【図３】図３は、立体物検知装置２００の概略を示すブロック図である。
【図４】図４は、立体物検知装置２００における処理の一例を示すフローチャートである。
【図５】図５は、形状特徴量として曲率を得る処理の一例を示すフローチャートである。
【図６】図６は、形状特徴量に関する形状情報の一例を示す図である。
【図７】図７は、立体度を算出する処理の一例を示すフローチャートである。
【図８】図８は、顔姿勢に応じて検出される特徴点を例示する図である。
【図９】図９は、顔特徴点向き記憶部２２２に記憶される特徴点の情報を例示する図である。
【発明を実施するための形態】
【０００８】
以下、本発明の実施形態を、図面を参照して説明する。
（一実施形態）
図１は本発明の一実施形態による立体物認証システム１の概略を示すブロック図である。立体物認証システムこの立体物認証システム１は、入出力装置２と、立体物認証装置３を備える。
【０００９】
入出力装置２は、カメラ１０１と、画像入力部１０２と、結果表示部１０３を備える。カメラ１０１は、検知対象の立体物（以下、検知物体という）を撮影する。ここで、検知物体は、被撮者１００の顔とする。カメラ１０１は、異なる方向から撮影して、被撮者１００の顔を含む２枚の画像を得る。なお、カメラ１０１は、２台以上設けられてもよい。これら２枚の画像上における座標の視差（ｄｉｓｐａｒｉｔｙ）に基づいて、検知物体の三次元座標情報を得る。なお、三次元座標情報を取得する具体的な手段については問わない。
【００１０】
画像入力部１０２は、カメラ１０１で撮影した画像を立体物認証装置３に入力する。結果表示部１０３は、なりすましか否かの判定結果、及び顔認証の結果の少なくともいずれかを表示する。
【００１１】
立体物認証装置３は、顔検出部１０４と、特徴点検出部１０５と、なりすまし判定部（立体物検知装置）２００と、顔情報抽出部１０６と、登録顔情報保持部１０７と、顔認証部１０８を備える。顔検出部１０４は、画像入力部１０２から入力された画像から顔の領域を検出する。顔検出部１０４で用いる顔検出処理は、公知のアルゴリズムを用いることが可能である。
【００１２】
図２は、顔領域及び特徴点の検出結果を例示している図である。図２の左図は、顔検出の一例を顔領域Ｆで示している。顔領域Ｆには、目、眉、鼻、口等の個人の特徴的な部分が含まれる。顔領域Ｆの大きさは、前髪、顔向きや照明によって変動する場合がありうる。
【００１３】
特徴点検出部１０５は、顔領域Ｆ内の特徴点を検出する。また、特徴点検出部１０５は、顔領域Ｆ内における顔の輪郭線上の特徴点を検出することもある。特徴点の検出処理は、公知のアルゴリズムを用いることが可能である。例えば、瞳と鼻孔は円に近いため、円形分離度フィルタで検出してよい。また、目頭目尻および口端は、コーナー検出アルゴリズムを用いてコーナーを検出してよい。これらの検出アルゴリズムを用いる場合、特徴点検出部１０５は、例えば、計１４点の特徴点（瞳２点、眉内端２点、目頭２点、目尻２点、鼻孔２点、鼻頂点１点、口端２点、口中点１点）を顔領域Ｆ内から検出する。
【００１４】
また、事前に学習した辞書を用いて全体の顔特徴点を正解位置にフィッティングさせるヒューリスティクス的な方法を用いもよい。この場合、特徴点検出部１０５は、例えば、前述の１４点の特徴点のほか、瞼または顔輪郭線上の特徴点も含め、計２３点の特徴点を顔領域Ｆ内から検出する。図２の右図は、特徴点（瞳２点、眉端４点、目頭２点、目尻２点、鼻孔２点、鼻梁１点、鼻頂点１点、上下唇中点２点、口端２点、輪郭５点）の位置をＸで例示する。本発明者は、特徴点を含む部分領域の立体形状の特性が人に依存せず普遍的な形状特性を有することを見出した。例えば、鼻頂点なら鼻頂点固有の形状特性を有し、目頭なら目頭固有の形状特性を有する。
【００１５】
図３は、立体物検知装置２００の概略を示すブロック図である。立体物検知装置２００は、取得部２１０と、評価部２２０と、立体判定部（判定部）２３０を備える。取得部２１０は、顔点群生成部２１１と、曲率計算部２１２を備える。取得部２１０は、検知物体表面の特徴点を含む部分領域における立体形状の特徴量を取得する。ここで、立体形状の特徴量（以後、「立体形状の特徴量」を、単に「特徴量」と呼ぶ場合がある）とは、部分領域の立体形状の形状特性を数値で表すものである。二つの特徴量が類似するほど、対応する部分領域それぞれの立体形状の形状特性は類似する。
【００１６】
取得部２１０は、検知物体表面において、特徴点を中心とする部分領域のガウス曲率及び平均曲率を特徴量として取得する。ガウス曲率及び平均曲率は、検知物体表面におけるこの部分領域内の表面の曲がり具合を数値化したものであり、２つの曲率の組合せは、前記部分領域内の表面は凹形か凸形か、どの程度の凹形か凸形か特定できるものである。
【００１７】
曲率は連続した三次元曲面に対して計算される。このため、顔点群生成部２１１は、２枚の画像における座標の視差（ｄｉｓｐａｒｉｔｙ）に基づいて、顔領域Ｆ内の特徴点を含む部分領域の三次元座標情報を得る。このように、顔点群生成部２１１は、部分領域に対応する画像ピクセルを、三次元点群（ポイントクラウド）に変換する。曲率計算部２１２は、部分領域内の三次元点群に三次元曲面をフィッテイングする。曲率計算部２１２は、この三次元曲面に基づいて特徴点に対応する曲率を計算する。
【００１８】
ここで、本実施形態では、特徴点に対応する曲率、及び特徴点の曲率とは、部分領域内の三次元曲面の曲率を意味する。また、本実施形態では、特徴点の特徴量、及び特徴点から得られた特徴量とは、部分領域内の三次元曲面に基づいて得られた特徴量を意味する。
【００１９】
評価部２２０は、特徴点形状記憶部２２１と、顔特徴点向き記憶部２２２と、立体度算出部２２３と、顔向き推定部２２４と、顔立体度算出部２２５を備える。評価部２２０は、検知物体の部分領域における特徴量と、基準となる立体物の部分領域から得られた特徴量との類似性の評価値を生成する。
【００２０】
特徴点形状記憶部２２１は、基準立体物の特徴点に関する情報を予め記憶する。特徴点形状記憶部２２１は、例えば、複数人の基準となる顔から特徴点毎に特徴量を取得し、特徴点に関する情報として予め記憶する。ここで、特徴点に関する情報とは、例えば、複数人から得られた特徴量が分布する特徴点毎の範囲である。
【００２１】
顔特徴点向き記憶部２２２は、顔の向きに対応して検出される特徴点の種類を記憶する。立体度算出部２２３は、検知物体および基準立体物の部分領域との特徴量の類似度を立体度として算出する。この立体度は、例えば、複数人から得られた特徴量が分布する範囲において、検知物体から得られた特徴量が分布する位置に基づいて算出される。本実施形態では、特徴点の立体度とは、検知物体の特徴点から得られた特徴量と、基準立体物の対応する特徴量との類似度を意味する。
【００２２】
顔向き推定部２２４は、カメラ１０１で撮影した顔の向きを推定する。顔立体度算出部２２５は、Ｎ（Ｎは１以上の整数）個の特徴点に対応する立体度を、推定された顔の向き及び顔特徴点向き記憶部２２２に記憶される情報に基づいて、重みづけした評価値を生成する。立体判定部２３０は、得られた評価値に基づいて検知物体が予め定めた立体形状（例えば、顔の立体形状）を有するか否かを判定する。
【００２３】
図４は、立体物検知装置２００における処理の一例を示すフローチャートである。この処理は、カメラ１０１で撮影した２枚の画像に対して行われる。顔点群生成部２１１は、特徴点検出部１０５で検出したＮ個の特徴点に対応するＮ個の部分領域を画像上に設定する。次に、顔点群生成部２１１は、２枚の画像の視差の情報に基づいて、Ｎ個の部分領域内の三次元座標を生成する（Ｓ４０１）。
【００２４】
次に、曲率計算部２１２は、生成された三次元座標に基づいてＮ個の部分領域それぞれに対して三次元曲面をフィツティングする。曲率計算部２１２は、Ｎ個の三次元曲面に基づいてＮ個の特徴量（ガウス曲率及び平均曲率）を計算する（Ｓ４０２）。
【００２５】
次に、立体度算出部２２３は、基準立体物から得られた、Ｎ個の特徴点それぞれに対応する特徴量の情報を特徴点形状記憶部２２１から取得する。立体度算出部２２３は、基準となるＮ個の特徴量と、対応する部分領域のＮ個の特徴量との類似度を立体度としてそれぞれ算出する。（Ｓ４０３）。ここでは、Ｎ個の特徴点の処理（曲率計算と立体度算出）は他の特徴点の処理と独立になる。このため、Ｎ個の特徴点の処理は並列に実施しても良く、シーケンシャル方式で実施してもよい。
【００２６】
次に、顔向き推定部２２４は、検知物体の顔向きを推定する（Ｓ４０４）。次に、推定した顔向きに基づきＮ個の特徴点の立体度を加算する。これにより、顔全体の立体度が評価値として生成される（Ｓ４０５）。
【００２７】
次に、立体判定部２３０は、評価値と所定のしきい値Ｔと比較する（Ｓ４０６）。評価値がＴより小さければ検知物体は予め定めた立体形状を有さないと判定される（Ｓ４０６−ＹＥＳ）。評価値がＴ以上であれば、検知物体は予め定めた立体形状を有すると判定される（Ｓ４０６−ＮＯ）。これにより、なりすましか否かが判定される。
【００２８】
このように、検知物体表面からＮ個の特徴量（ガウス曲率及び平均曲率）を計算する。次に、計算したＮ個の特徴量それぞれの立体度を得る。このＮ個の立体度を重みづけした評価値を用いて検知物体が予め定めた立体形状を有するか否かを判定する。
【００２９】
次に、顔点群生成部２１１の詳細な処理について説明する。検出された顔領域Ｆ（左上角の座標：（Ｌｘ，Ｌｙ）、右下角の座標：（Ｒｘ，Ｒｙ））内の二次元の画像ピクセル（Ｉｘ，Ｉｙ）（Ｌｘ≦Ｉｘ≦Ｒｘ、Ｌｙ≦Ｉｙ≦Ｒｙ）を三次元点群（Ｘ，Ｙ，Ｚ）へ変換する。
【００３０】
三次元座標の集合である三次元点群への変換は、式（１）を用いて実施する。
【数１】
0006507046.tif 000002
式（１）中の、Ｉｘ，Ｉｙは、二次元画像内のＸ、Ｙ座標である。ｄｉｓｐａｒｉｔｙ（Ｉｘ，Ｉｙ）はピクセル（Ｉｘ，Ｉｙ）に対応する視差（距離）である。（Ｘ，Ｙ，Ｚ）は、（Ｉｘ，Ｉｙ）に対応するワールド座標系下の三次元点の座標である。ここで、Ｗはｄｉｓｐａｒｉｔｙ（Ｉｘ，Ｉｙ）に基づいて定まる固定値である。
【００３１】
Ｑは、カメラの内部パラメータである焦点距離、画像の解像度や歪み係数（二つのカメラを利用する場合、カメラ間の回転行列及び並進ベクトルも必要）で決まる４ｘ４の透視変換行列である。カメラが選定されれば、一般のカメラキャリブレーションアルゴリズムを実施することで透視変換行列Ｑを得ることができる。顔点群生成部２１１は、検出された顔領域Ｆ内のピクセルのみ変換するので、全画像のピクセルを変換する場合と比較して演算量を抑制することが可能である。
【００３２】
次に、曲率計算部２１２における特徴量を得る処理について詳細に説明する。本実施形態では、なりすまし判定に、特徴点を少なくとも１点用いる。部分領域の立体形状に特徴がある程、なりすまし判定の精度は高くなる。さらに、特徴点を複数指定すると、さらに判定精度が高くなる。
【００３３】
曲率は、一般的に、連続のデータに対して定義される。そこで、曲率計算部２１２は、顔点群生成部２１１で生成した三次元点群に対して多項式近似を行い、三次元曲面を三次元点群にフィッテイングする。この三次元曲面を表す係数を用いて特徴点に対応する曲率を求める。
【００３４】
図５は、特徴量として曲率を得る処理の一例を示すフローチャートである。まず、画像上の二次元座標の特徴点に対応する三次元座標を三次元特徴ポイントとして生成する（Ｓ５０１）。特徴点Ａ（１≦Ａ≦Ｎ）の画像上の二次元座標（Ａｘ，Ａｙ）に基づいてワールド座標下の三次元座標（ＣＸ，  ＣＹ，  ＣＺ）を式（２）〜（４）で取得する。  式（２）〜（４）において、Ｑは式（１）の４ｘ４透視変換行列、Ｑ［  ］［  ］は透視変換行列の要素、ｄｉｓｐａｒｉｔｙ（Ａｘ，Ａｙ）は特徴点Ａの視差（距離）を示している。
【数２】
0006507046.tif 000003
【００３５】
次に、三次元点群を曲面に近似する前に、必要に応じて三次元の点群に前処理を行う（Ｓ５０２）。例えば、密な三次元点群をダウンサンプリング（ｄｏｗｎ−ｓａｍｐｌｉｎｇ）する処理、及びノイジーな三次元点群をスムージングする処理のいずれかを行う。三次元点群をダウンサンプリングすることで、三次元点群を曲面近似するためにかかる演算量を抑制することが可能である。また、ノイジーな点群をスムージングすることで、近似の精度を上げることが可能である。また、前処理を行わなくとも判定精度及び処理速度が満たされる場合には、このような前処理を行わないことも可能である。
【００３６】
次に、三次元座標の特徴点である特徴ポイントを中心とした曲面近似を行う（Ｓ５０３）。特徴点の三次元座標（ＣＸ，ＣＹ，ＣＺ）を中心として、横幅＝ｍ、縦幅＝ｎの四角形領域（部分領域）内のｐ（ｐ≦ｍ×ｎ）個の三次元ポイント（ｘｉ，ｙｉ，ｚｉ）（０≦ｉ≦ｐ）を用いて曲面を近似する。部分領域を示すｍとｎの値は、実際の特徴点を含む顔部品の大きさに応じて設定してよい。実際の顔部品の大きさと設定される部分領域の大きさとの差が、大きくなると曲率の値の精度が低下する場合がある。この場合、なりすまし判定の精度に影響する。そこで、ｍとｎを式（５）を用いて定めてもよい。
【数３】
0006507046.tif 000004
【００３７】
式（５）において、ａｖｇ＿ｄｅｐｔｈは顔領域Ｆにおけるｄｉｓｐａｒｉｔｙである。ｆｉｔ＿ｗ及びｆｉｔ＿ｈは、指定する特徴点を代表する顔部品の横及び縦のサイズ（単位：ｍｍ）である。ｂａｓｅｌｉｎｅは、２つカメラのレンズ間の距離（単位：ｍｍ）である。顔部品の大きさは、例えば人間の鼻の大きさは３６［ｍｍ］ｘ３６［ｍｍ］として、顔領域Ｆにおけるｄｉｓｐａｒｉｔｙは領域内の全ての画像ピクセルのｄｉｓｐａｒｉｔｙの平均値として良いこれにより、部分領域内の三次元ポイントの数を顔領域Ｆの撮影距離に対して自動的に変動するものである。
【００３８】
曲面の近似は、式（６）を用いて行う。
【数４】
0006507046.tif 000005
式（６）中で、係数ａは固定値であり、係数ｂ，ｃ，及びｄは、近似される曲面に対し、三次元座標で示す特徴点（ＣＸ，ＣＹ，ＣＺ）の１次微分である。また、係数ｅとｆは（ＣＸ，ＣＹ，ＣＺ）の２次微分である。上記係数を得るために、式（６）を式（７）の行列演算の形に変換する。
【数５】
0006507046.tif 000006
【００３９】
式（７）では、各三次元点群の座標（ｘｉ，ｙｉ，ｚｉ）（０≦ｉ≦ｐ）と特徴点（ＣＸ，ＣＹ，ＣＺ）が既知であるので、行列を逆変換することでベクトル（ａ，ｂ，ｃ，ｄ，ｅ，ｆ）Ｔを得ることができる。
【００４０】
次に、近似曲面に基づいて曲率を計算する（Ｓ５０４）。係数｛ａ，ｂ，ｃ，ｄ，ｅ，ｆ｝を用いて三次元の特徴点に対応するガウス曲率及び平均曲率を計算する。平均曲率は式（８）、ガウス曲率は式（９）を用いて計算される。
【数６】
0006507046.tif 000007
【００４１】
このように、曲率計算部２１２は、特徴点を含む部分領域内の三次元点群に基づいて近似した曲面を得る。この曲面の係数を用いて、特徴量としてガウス曲率及び平均曲率を得る。曲率計算部２１２は、立体感のある特徴点のみ扱うため、顔領域Ｆのすべての画像ピクセルを処理する場合と比較して演算量を抑制することが可能である。また、立体感の強い特徴点として、例えば、顔の水平方向の中心にある左右目頭、顔の垂直方向の中心にある鼻頂点、上下唇中点、及び鼻梁などを利用すればよい。この場合、高いなりすまし検知精度を得ることができる。また、顔中心部にある特徴点の曲率計算は向きに依存しない。このため、顔中心部にある特徴点を用いる場合、様々な姿勢に対応することが可能である。
【００４２】
次に、特徴点形状記憶部２２１に記憶される三次元形状の特徴量に関する情報について詳細に説明する。図６は、特徴量に関する形状情報の一例を示す図である。特徴点形状記憶部２２１は、図６に示す三次元形状の特徴量に関する形状情報を記憶する。図６では、一つの行に一つの特徴点のインデックスとその特徴量に関する情報が記載されている。特徴量に関する形状情報は、｛特徴点Ｉｎｄｅｘ、特徴点名、平均曲率の符号、平均曲率の範囲、ガウス曲率の符号、ガウス曲率の範囲｝から構成される。ここで、特徴点を含む部分領域は、凸形であるか凹形であるかが定まっている。このため、特徴量に関する形状情報に含まれる平均曲率の符号及びガウス曲率の符号は、特徴点に対応して定まっている。
【００４３】
次に、特徴量に関する形状情報に含まれる平均曲率の範囲及びガウス曲率の範囲について説明する。各特徴点の曲率の範囲は、下記の処理を実施することで取得される。まず、Ｈ（Ｈは１以上の整数）人の顔画像をカメラ１０１で撮影する。次に、Ｈ人の顔画像に対して、顔検出部１０４及び特徴点検出部１０５における処理を実施し、各画像の顔の特徴点を検出する。
【００４４】
次に、Ｈ人の各顔画像に対し、顔点群生成部２１１及び曲率計算部２１２における処理を実施し、Ｎ個の特徴点における平均曲率とガウス曲率を計算する。ここでは、各特徴点に対し、Ｈ個の平均曲率とＨ個のガウス曲率が得られる。各特徴点に対し、平均曲率及びガウス曲率の最大値と最小値をそれぞれ求める。求めたそれぞれの［最小値，最大値］を特徴点毎の平均曲率及びガウス曲率の範囲とする。なお、特徴点毎の平均曲率及びガウス曲率の符号は定まっている。このため、この符号と一致しない場合、その特徴点に関する平均曲率及びガウス曲率の情報を除く。
【００４５】
このようにして得られた特徴量に関連する形状情報を特徴点形状記憶部２２１に記憶する。特徴点形状記憶部２２１への記憶は、立体物認証システム１を利用する前に１回実施すればよい。また、なりすまし判定方法の変更に応じて、特徴点に対応する形状情報を増減してもよい。なお、Ｈが１の場合、平均曲率及びガウス曲率の範囲をＮＵＬＬに設定する。
【００４６】
次に、立体度算出部２２３の処理について詳細に説明する。図７は、立体度を算出する処理の一例を示すフローチャートである。立体度算出部２２３は、曲率計算部２１２で計算した特徴点ｊ（１≦ｊ≦Ｎ）に対応する特徴量の形状情報を入力し、特徴点ｊに対応する特徴量の形状情報を特徴点形状記憶部２２１から読み出す。立体度算出部２２３は、下記四つの条件を満たしているか判定する。
【００４７】
まず、計算した特徴点ｊの平均曲率Ｈｊの符号は読み出した平均曲率の符号と同じであるか判定する（Ｓ７０１）。次に、計算した特徴点ｊの平均曲率Ｈｊの値は読み出した平均曲率の範囲（Ｔ１ｊ，Ｔ２ｊ）内であるか判定する（Ｓ７０２）。次に、計算した特徴点ｊのガウス曲率Ｋｊの符号は読み出したガウス曲率の符号と同であるか判定する（Ｓ７０３）。次に、計算した特徴点ｊのガウス曲率Ｋｊの値は読み出したガウス曲率の範囲（Ｋ１ｊ，Ｋ２ｊ）内であるか判定する（Ｓ７０４）。
【００４８】
四つの条件のいずれかが満たされない場合、計算した特徴点ｊの特徴量と、読み出した特徴量とは類似していないと判定する。この場合、特徴量の類似性を示すＳｃｏｒｅｊとして立体度をゼロに設定する（Ｓ７０５）。
【００４９】
一方、四つの条件が全て満たされる場合、対応する部分領域の形状特性も類似する。この場合、対応する特徴量の類似性を示す立体度を計算する。三次元の顔領域Ｆにおいて、検知対象の特徴量と、基準となる特徴点ｊの特徴量の類似性を示すＳｃｏｒｅｊとして立体度を式（１０）を用いて算出する（Ｓ７０６）。このように、立体度算出部２２３は、三次元における、基準の特徴量と、検知対象の特徴量との類似度を示す立体度Ｓｃｏｒｅｊを算出する。
【数７】
0006507046.tif 000008
【００５０】
立体度Ｓｃｏｒｅｊ、は平均曲率Ｈｊが平均曲率の範囲（Ｔ１ｊ，Ｔ２ｊ）内であり、Ｔ２ｊに近づく程大きな値を示す。一方、平均曲率Ｈｊが、Ｔ１ｊに近づくに従い立体度Ｓｃｏｒｅｊの値は小さくなる。同様に、立体度Ｓｃｏｒｅｊ、はガウス曲率Ｋｊがガウス曲率の範囲（Ｋ１ｊ，Ｋ２ｊ）内であり、Ｋ２ｊに近づく程大きな値を示す。一方、ガウス曲率Ｋｊが、Ｋ１ｊに近づくに従いＳｃｏｒｅｊの値は小さくなる。
【００５１】
このように、特徴点ｊの特徴量が特徴点に応じて定まる符号を有する場合、平均曲率Ｔ２ｊ、ガウス曲率Ｋ２ｊに類似する程、立体度Ｓｃｏｒｅｊの値は１に近づく。一方、類似しないほど０に近づく。
【００５２】
また、Ｈが１の場合、［最小値，最大値］にＮＵＬＬが設定されているので、式（１０）を計算しなくてよい。この場合、特徴点ｊの特徴量が、特徴点に応じて定まる符号を有する場合にＳｃｏｒｅｊを１、有さない場合に０にする。
【００５３】
また、基準となる特徴点ｊの特徴量と、検知対象の特徴点ｊの特徴量の値が近いほど、三次元形状の特性が互いに類似する。これにより、Ｓｃｏｒｅｊが１に近いほど、検知対象の特徴点ｊに対応する部分領域は、類似する形状特性を有することを示す。このため、Ｓｃｏｒｅｊが１に近いほど、検知物体は、本物の顔である可能性が高くなる。
【００５４】
次に、顔向き推定部２２４の推定処理について説明する。顔向き推定部２２４は、徴点検出部１０５で検出される顔の特徴点の二次元座標と式（２）〜（４）による三次元座標を用いて顔の姿勢（向き）を推定する。三次元形状の顔領域Ｆ上の複数の特徴点を、二次元面に投影する。投影された特徴点の位置と、二次元面上の対応する特徴点の位置の距離の二乗和を最小にするように三次元形状の顔領域Ｆの向きを変更する。顔向き推定部２２４は、この二乗和を最小にする向きを推定結果として得る。
【００５５】
推定された姿勢は顔のオイラー角（α、β、γ）で示される。一般に、特徴点の位置を用いて推定したオイラー角の範囲は、−３０≦α≦３０、−４５≦β≦４５、−１８０≦γ≦１８０となる。αは顔の上下方向の向き、βは顔の左右方向の向き、γは顔の回転の向きを示す。
【００５６】
顔特徴点向き記憶部２２２は、このように推定したオイラー角（α、β、γ）を特徴点形状記憶部２２１に記憶される特徴点に関連付けて記憶する。記憶は立体物認証システム１を利用する前に１回実施すればよい。
【００５７】
図８は、顔姿勢に応じて検出される特徴点を例示する図である。図８では、３パターンの顔姿勢で検出される特徴点をＸまたはＯで示している。左図では、顔姿勢は斜め左であり、顔特徴点がほぼすべて検出される。真中の図では、顔姿勢は斜め右下であり、一部の顔輪郭と鼻孔検出が検出できない。右図では、顔姿勢がさらに横になっており、半分以上の特徴点が検出されない。
【００５８】
図９は、顔特徴点向き記憶部２２２に記憶される特徴点の情報を例示する図である。図９中において、撮影された画像の顔姿勢を示すオイラー角（α、β、γ）と、その画像での特徴点が示されている。図９は、−３０≦α≦３０、−４５≦β≦４５、−１８０≦γ≦１８０の範囲内において、数度の間隔で特徴点リストを示してる。特徴点リストには、検出された特徴点を１で、検査されなかった特徴点を０で示している。
【００５９】
次に、評価値について詳細に説明する。特徴点を一つしか用いない場合、顔立体度算出部２２５は、式（１０）で示す立体度を評価値として用いる。一方、複数の特徴点で得られた立体度を用いる場合、顔立体度算出部２２５は、式（１１）を用いてＮ個の特徴点に対応する立体度を重み付けする。
【数８】
0006507046.tif 000009
【００６０】
式（１１）では、ｗｅｉｇｈｔｊは特徴点ｊの重み、Ｓｃｏｒｅｊは特徴点ｊの立体度を示す。ｗｅｉｇｈｔｊは、式（１２）を用いて計算される。式（１２）中で、ｃｏｓ（Ｖ，Ｖa）は、顔向き推定部２２４にて推定された顔姿勢ベクトルＶと特徴点顔向き記憶部２２２中で対応する顔姿勢ベクトルＶa（０≦a≦ｒ）の内積であり、ベクトル間の距離を示す。aは、図９での行番号に対応し、ｒは、記載される顔姿勢の数に対応し、１以上の自然数を示す。
【数９】
0006507046.tif 000010
【００６１】
ｍａｔｃｈ（ｊ，a）は関数であり、a行における特徴点リストの第ｊ項が１の場合、ｍａｔｃｈ（ｊ，a）は１となる。一方、第ｊ項が０の場合、ｍａｔｃｈ（ｊ，a）は０となる。また、ｃｏｓ（Ｖ，Ｖa）は、ベクトルＶ、Ｖa間の内積であり距離を示す。式（１１）を用いたＳｃｏｒｅでは、顔姿勢を反映して評価値を得ることができる。このため、検知対象の顔が、多様な向きの顔姿勢であってもなりすまし判定の精度の低下を抑制できる。
【００６２】
さらに、検知対象の一部がカメラ１０１により撮影されなくても、検出された特徴点に対応する立体度を用いてなりすまし判定が可能である。顔姿勢の変動に依存しにくい顔特徴点のみ扱う場合、顔姿勢によらず、ｗｅｉｇｈｔｊを式（１３）に示す様に同じ値（例えば１）に設定してよい。これにより、顔全体の立体度を簡単に算出できる。例えば、図８中のＯで示す顔の中心部にある左右目頭２点、鼻梁１点、鼻頂点１点、下唇中点１点、計５点を使う場合に用いる。
【数１０】
0006507046.tif 000011
【００６３】
立体判定部２３０は、評価値であるＳｃｏｒｅに基づき画像中の顔はなりすましか否かを判定する。Ｓｃｏｒｅがしきい値Ｔ以上である場合、検知対象の顔は、実物であり、なりすましでないと判定する。また、ＳｃｏｒｅがＴ未満である場合、なりすましと判定する。ここで、しきい値Ｔは、評価値を求める時使用した特徴点の数に応じて変更してもよい。例えば、式（１２）の場合、ｗｅｉｇｈｔｊをＮ個加算した値を任意の一定比率で乗算する。
【００６４】
なりすましと判定された場合、結果表示部１０３になりすまし顔であることを表示する。また、入出力装置２は、なりすましである信号を入力された場合、警報を出すか、立体物認証装置３の利用者をリジェクトするなどしてよい。
【００６５】
一方、なりすましと判定されなかった場合、顔認証部１０８は、カメラ１０１で撮影された顔（認証顔）が登録顔情報保持部１０７に登録された顔（登録顔）であるか認証する。より詳細には、顔情報抽出部１０６は、顔検出部１０４で検出された顔領域Ｆから特徴量（顔情報）を抽出する。顔認証部１０８は、顔情報抽出部１０６で抽出された認証顔の顔情報が、登録顔情報保持部１０７に予め登録された登録顔の顔情報のいずれかとマッチすることを認証する。認証成功の場合、結果表示部１０３の表示デバイスに認証された顔は登録された顔であることを表示する。
【００６６】
顔情報抽出部１０６で用いる顔情報の抽出方法は、一般的なアルゴリズムを用いることが可能である。例えば、Ｇａｂｏｒウェーブレットを用いて特徴量を計算してよい。まず、画像から複数のスケールで複数の方向に顔の特徴ピクセルを中心とした領域を切り出す。次に、サブバンド分解を用いて横方向に１次元のＧａｂｏｒウェーブレット変換を行い、低周波数成分と高周波数成分に分割する。次に、縦方向の１次元のＧａｂｏｒウェーブレット変換を行う。最終的には、スケールと方向がそれぞれ異なる４分割された変換画像が得られる。
【００６７】
４分割された変換画像に基づく４つの成分のベクトルが、特徴量としての顔特徴ベクトルとなる。Ｇａｂｏｒ変換のスケール個数と方向数は、実際の顔認証の精度と処理速度に応じて決定してよい。Ｇａｂｏｒウェーブレットのほか、ＤＣＴ変換、Ｅｉｇｅｎ  Ｆａｃｅ、ＬＢＰ（Ｌｏｃａｌ  Ｂｉｎａｒｙ  Ｐａｔｔｅｒｎ）などの一般的な方法を用いて、顔情報としての特徴量を算出してもよい。
【００６８】
登録顔情報保持部１０７は、顔情報抽出部１０６を用いて利用者の登録顔画像の顔情報を抽出して登録する。また、登録顔と認証された場合（認証成功の場合）、検知対象となった認証顔の顔情報を用いて、登録顔情報保持部１０７に記憶されている顔情報の更新をしてもよい。
【００６９】
このように、検知対象の三次元の顔領域Ｆ内の部分領域の形状特性を示す特徴量と、特徴点を含む部分領域の形状特性を示す基準となる特徴量との類似性を示す評価値を得ることができる。特徴点を含む部分領域は立体形状として特徴がある。このため、類似することを示す評価値が得られた場合、検知対象の顔は、基準となる三次元の顔である可能性が高くなる。これに対して、顔全体の立体性を求める場合、部分領域に特徴点に応じた形状特性の情報を得ることができない。このため、顔全体の立体性を求める場合よりも、検知対象の立体的な部分領域を評価することでなりすまし判定の精度が上がる。
【００７０】
また、評価値に特徴点を複数用いた場合、複数の特徴点にて部分領域が類似するか否か判定できる。このため、特徴点を一つしか用いない場合よりも判定精度が上がる。また、評価値に検知対象の姿勢を反映できるので、姿勢に応じた評価値を得ることができる。これにより、回転した顔、斜め顔、及び横顔などのなりすまし判定にも対応できる。また、部分領域に対して計算をするので、顔全体に対して立体性を求める計算をする場合に比較して処理量が少なく、低消費電力を求められるシステムにも適応ができる。
【００７１】
以上説明したように、一実施形態によれば、検知物体表面の特徴点を含む部分領域における立体形状の特徴量を取得する。そして、基準立体物表面の対応する部分領域から得られた立体形状の特徴量との類似性の評価値に基づいて検知物体が予め定めた立体形状を有するか否かを判定する。基準立体物が顔である場合、検知物体が予め定めた立体形状を有するか否かを判定する。これにより、検知物体全体の立体形状の立体性を評価しなくても、部分領域内の特徴量を評価するだけで、検知物体がなりすましか否か判定できる。なお、一実施形態によれば、検知物体の例として顔を用いて説明したが、例としてのみ提示したものであり、検知物体を顔に限定することを意図したものではない。
【００７２】
このように、本実施形態によれば、形状特性を示す特徴量の取得領域を特徴点を含む部分領域に限定することで、検知物体がなりすましか否かの判定を迅速かつ高精度にできる。これにより、検知物体がなりすましか否かを精度よく判定できる立体物認証システムを提供することができる。
【００７３】
上述した実施形態で説明した立体物検知装置および立体物認証システムの少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、立体物検知装置および立体物認証システムの少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【００７４】
また、立体物検知装置および立体物認証システムの少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【００７５】
以上、一実施形態を説明したが、一実施形態は、例としてのみ提示したものであり、発明の範囲を限定することを意図したものではない。本明細書で説明した新規な装置は、その他の様々な形態で実施することができる。また、本明細書で説明した装置の形態に対し、発明の要旨を逸脱しない範囲内で、種々の省略、置換、変更を行うことができる。添付の特許請求の範囲およびこれに均等な範囲は、発明の範囲や要旨に含まれるこのような形態や変形例を含むように意図されている。
【符号の説明】
【００７６】
１  立体物認証システム、３  立体物認証装置、１０８  顔認証部、２００  なりすまし判定部（立体物検知装置）、２１０  取得部、２２０  評価部、２３０  立体判定部
【図１】
0006507046.tif 000012
【図２】
0006507046.tif 000013
【図３】
0006507046.tif 000014
【図４】
0006507046.tif 000015
【図５】
0006507046.tif 000016
【図６】
0006507046.tif 000017
【図７】
0006507046.tif 000018
【図８】
0006507046.tif 000019
【図９】
0006507046.tif 000020