【文献】
小高 一慶、外2名,“3次元顔画像を用いた特徴点抽出と個人認識”,画像電子学会誌,日本,画像電子学会,2001年 7月25日,Vol.30, No.4,pp.414-422
(58)【調査した分野】(Int.Cl.,DB名)
前記取得部は、視差情報を用い、前記特徴点を二次元座標から三次元座標に変換し、前記部分領域に対して前記三次元座標を中心として生成した三次元曲面に基づき、曲率を計算し前記特徴量とする請求項2に記載の立体物認証装置。
【発明を実施するための形態】
【0008】
以下、本発明の実施形態を、図面を参照して説明する。
(一実施形態)
図1は本発明の一実施形態による立体物認証システム1の概略を示すブロック図である。立体物認証システムこの立体物認証システム1は、入出力装置2と、立体物認証装置3を備える。
【0009】
入出力装置2は、カメラ101と、画像入力部102と、結果表示部103を備える。カメラ101は、検知対象の立体物(以下、検知物体という)を撮影する。ここで、検知物体は、被撮者100の顔とする。カメラ101は、異なる方向から撮影して、被撮者100の顔を含む2枚の画像を得る。なお、カメラ101は、2台以上設けられてもよい。これら2枚の画像上における座標の視差(disparity)に基づいて、検知物体の三次元座標情報を得る。なお、三次元座標情報を取得する具体的な手段については問わない。
【0010】
画像入力部102は、カメラ101で撮影した画像を立体物認証装置3に入力する。結果表示部103は、なりすましか否かの判定結果、及び顔認証の結果の少なくともいずれかを表示する。
【0011】
立体物認証装置3は、顔検出部104と、特徴点検出部105と、なりすまし判定部(立体物検知装置)200と、顔情報抽出部106と、登録顔情報保持部107と、顔認証部108を備える。顔検出部104は、画像入力部102から入力された画像から顔の領域を検出する。顔検出部104で用いる顔検出処理は、公知のアルゴリズムを用いることが可能である。
【0012】
図2は、顔領域及び特徴点の検出結果を例示している図である。
図2の左図は、顔検出の一例を顔領域Fで示している。顔領域Fには、目、眉、鼻、口等の個人の特徴的な部分が含まれる。顔領域Fの大きさは、前髪、顔向きや照明によって変動する場合がありうる。
【0013】
特徴点検出部105は、顔領域F内の特徴点を検出する。また、特徴点検出部105は、顔領域F内における顔の輪郭線上の特徴点を検出することもある。特徴点の検出処理は、公知のアルゴリズムを用いることが可能である。例えば、瞳と鼻孔は円に近いため、円形分離度フィルタで検出してよい。また、目頭目尻および口端は、コーナー検出アルゴリズムを用いてコーナーを検出してよい。これらの検出アルゴリズムを用いる場合、特徴点検出部105は、例えば、計14点の特徴点(瞳2点、眉内端2点、目頭2点、目尻2点、鼻孔2点、鼻頂点1点、口端2点、口中点1点)を顔領域F内から検出する。
【0014】
また、事前に学習した辞書を用いて全体の顔特徴点を正解位置にフィッティングさせるヒューリスティクス的な方法を用いもよい。この場合、特徴点検出部105は、例えば、前述の14点の特徴点のほか、瞼または顔輪郭線上の特徴点も含め、計23点の特徴点を顔領域F内から検出する。
図2の右図は、特徴点(瞳2点、眉端4点、目頭2点、目尻2点、鼻孔2点、鼻梁1点、鼻頂点1点、上下唇中点2点、口端2点、輪郭5点)の位置をXで例示する。本発明者は、特徴点を含む部分領域の立体形状の特性が人に依存せず普遍的な形状特性を有することを見出した。例えば、鼻頂点なら鼻頂点固有の形状特性を有し、目頭なら目頭固有の形状特性を有する。
【0015】
図3は、立体物検知装置200の概略を示すブロック図である。立体物検知装置200は、取得部210と、評価部220と、立体判定部(判定部)230を備える。取得部210は、顔点群生成部211と、曲率計算部212を備える。取得部210は、検知物体表面の特徴点を含む部分領域における立体形状の特徴量を取得する。ここで、立体形状の特徴量(以後、「立体形状の特徴量」を、単に「特徴量」と呼ぶ場合がある)とは、部分領域の立体形状の形状特性を数値で表すものである。二つの特徴量が類似するほど、対応する部分領域それぞれの立体形状の形状特性は類似する。
【0016】
取得部210は、検知物体表面において、特徴点を中心とする部分領域のガウス曲率及び平均曲率を特徴量として取得する。ガウス曲率及び平均曲率は、検知物体表面におけるこの部分領域内の表面の曲がり具合を数値化したものであり、2つの曲率の組合せは、前記部分領域内の表面は凹形か凸形か、どの程度の凹形か凸形か特定できるものである。
【0017】
曲率は連続した三次元曲面に対して計算される。このため、顔点群生成部211は、2枚の画像における座標の視差(disparity)に基づいて、顔領域F内の特徴点を含む部分領域の三次元座標情報を得る。このように、顔点群生成部211は、部分領域に対応する画像ピクセルを、三次元点群(ポイントクラウド)に変換する。曲率計算部212は、部分領域内の三次元点群に三次元曲面をフィッテイングする。曲率計算部212は、この三次元曲面に基づいて特徴点に対応する曲率を計算する。
【0018】
ここで、本実施形態では、特徴点に対応する曲率、及び特徴点の曲率とは、部分領域内の三次元曲面の曲率を意味する。また、本実施形態では、特徴点の特徴量、及び特徴点から得られた特徴量とは、部分領域内の三次元曲面に基づいて得られた特徴量を意味する。
【0019】
評価部220は、特徴点形状記憶部221と、顔特徴点向き記憶部222と、立体度算出部223と、顔向き推定部224と、顔立体度算出部225を備える。評価部220は、検知物体の部分領域における特徴量と、基準となる立体物の部分領域から得られた特徴量との類似性の評価値を生成する。
【0020】
特徴点形状記憶部221は、基準立体物の特徴点に関する情報を予め記憶する。特徴点形状記憶部221は、例えば、複数人の基準となる顔から特徴点毎に特徴量を取得し、特徴点に関する情報として予め記憶する。ここで、特徴点に関する情報とは、例えば、複数人から得られた特徴量が分布する特徴点毎の範囲である。
【0021】
顔特徴点向き記憶部222は、顔の向きに対応して検出される特徴点の種類を記憶する。立体度算出部223は、検知物体および基準立体物の部分領域との特徴量の類似度を立体度として算出する。この立体度は、例えば、複数人から得られた特徴量が分布する範囲において、検知物体から得られた特徴量が分布する位置に基づいて算出される。本実施形態では、特徴点の立体度とは、検知物体の特徴点から得られた特徴量と、基準立体物の対応する特徴量との類似度を意味する。
【0022】
顔向き推定部224は、カメラ101で撮影した顔の向きを推定する。顔立体度算出部225は、N(Nは1以上の整数)個の特徴点に対応する立体度を、推定された顔の向き及び顔特徴点向き記憶部222に記憶される情報に基づいて、重みづけした評価値を生成する。立体判定部230は、得られた評価値に基づいて検知物体が予め定めた立体形状(例えば、顔の立体形状)を有するか否かを判定する。
【0023】
図4は、立体物検知装置200における処理の一例を示すフローチャートである。この処理は、カメラ101で撮影した2枚の画像に対して行われる。顔点群生成部211は、特徴点検出部105で検出したN個の特徴点に対応するN個の部分領域を画像上に設定する。次に、顔点群生成部211は、2枚の画像の視差の情報に基づいて、N個の部分領域内の三次元座標を生成する(S401)。
【0024】
次に、曲率計算部212は、生成された三次元座標に基づいてN個の部分領域それぞれに対して三次元曲面をフィツティングする。曲率計算部212は、N個の三次元曲面に基づいてN個の特徴量(ガウス曲率及び平均曲率)を計算する(S402)。
【0025】
次に、立体度算出部223は、基準立体物から得られた、N個の特徴点それぞれに対応する特徴量の情報を特徴点形状記憶部221から取得する。立体度算出部223は、基準となるN個の特徴量と、対応する部分領域のN個の特徴量との類似度を立体度としてそれぞれ算出する。(S403)。ここでは、N個の特徴点の処理(曲率計算と立体度算出)は他の特徴点の処理と独立になる。このため、N個の特徴点の処理は並列に実施しても良く、シーケンシャル方式で実施してもよい。
【0026】
次に、顔向き推定部224は、検知物体の顔向きを推定する(S404)。次に、推定した顔向きに基づきN個の特徴点の立体度を加算する。これにより、顔全体の立体度が評価値として生成される(S405)。
【0027】
次に、立体判定部230は、評価値と所定のしきい値Tと比較する(S406)。評価値がTより小さければ検知物体は予め定めた立体形状を有さないと判定される(S406−YES)。評価値がT以上であれば、検知物体は予め定めた立体形状を有すると判定される(S406−NO)。これにより、なりすましか否かが判定される。
【0028】
このように、検知物体表面からN個の特徴量(ガウス曲率及び平均曲率)を計算する。次に、計算したN個の特徴量それぞれの立体度を得る。このN個の立体度を重みづけした評価値を用いて検知物体が予め定めた立体形状を有するか否かを判定する。
【0029】
次に、顔点群生成部211の詳細な処理について説明する。検出された顔領域F(左上角の座標:(L
x,L
y)、右下角の座標:(R
x,R
y))内の二次元の画像ピクセル(I
x,I
y)(L
x≦I
x≦R
x、L
y≦I
y≦R
y)を三次元点群(X,Y,Z)へ変換する。
【0030】
三次元座標の集合である三次元点群への変換は、式(1)を用いて実施する。
【数1】
式(1)中の、I
x,I
yは、二次元画像内のX、Y座標である。disparity(I
x,I
y)はピクセル(I
x,I
y)に対応する視差(距離)である。(X,Y,Z)は、(I
x,I
y)に対応するワールド座標系下の三次元点の座標である。ここで、Wはdisparity(I
x,I
y)に基づいて定まる固定値である。
【0031】
Qは、カメラの内部パラメータである焦点距離、画像の解像度や歪み係数(二つのカメラを利用する場合、カメラ間の回転行列及び並進ベクトルも必要)で決まる4x4の透視変換行列である。カメラが選定されれば、一般のカメラキャリブレーションアルゴリズムを実施することで透視変換行列Qを得ることができる。顔点群生成部211は、検出された顔領域F内のピクセルのみ変換するので、全画像のピクセルを変換する場合と比較して演算量を抑制することが可能である。
【0032】
次に、曲率計算部212における特徴量を得る処理について詳細に説明する。本実施形態では、なりすまし判定に、特徴点を少なくとも1点用いる。部分領域の立体形状に特徴がある程、なりすまし判定の精度は高くなる。さらに、特徴点を複数指定すると、さらに判定精度が高くなる。
【0033】
曲率は、一般的に、連続のデータに対して定義される。そこで、曲率計算部212は、顔点群生成部211で生成した三次元点群に対して多項式近似を行い、三次元曲面を三次元点群にフィッテイングする。この三次元曲面を表す係数を用いて特徴点に対応する曲率を求める。
【0034】
図5は、特徴量として曲率を得る処理の一例を示すフローチャートである。まず、画像上の二次元座標の特徴点に対応する三次元座標を三次元特徴ポイントとして生成する(S501)。特徴点A(1≦A≦N)の画像上の二次元座標(Ax,Ay)に基づいてワールド座標下の三次元座標(CX, CY, CZ)を式(2)〜(4)で取得する。 式(2)〜(4)において、Qは式(1)の4x4透視変換行列、Q[ ][ ]は透視変換行列の要素、disparity(A
x,A
y)は特徴点Aの視差(距離)を示している。
【数2】
【0035】
次に、三次元点群を曲面に近似する前に、必要に応じて三次元の点群に前処理を行う(S502)。例えば、密な三次元点群をダウンサンプリング(down−sampling)する処理、及びノイジーな三次元点群をスムージングする処理のいずれかを行う。三次元点群をダウンサンプリングすることで、三次元点群を曲面近似するためにかかる演算量を抑制することが可能である。また、ノイジーな点群をスムージングすることで、近似の精度を上げることが可能である。また、前処理を行わなくとも判定精度及び処理速度が満たされる場合には、このような前処理を行わないことも可能である。
【0036】
次に、三次元座標の特徴点である特徴ポイントを中心とした曲面近似を行う(S503)。特徴点の三次元座標(CX,CY,CZ)を中心として、横幅=m、縦幅=nの四角形領域(部分領域)内のp(p≦m×n)個の三次元ポイント(x
i,y
i,z
i)(0≦i≦p)を用いて曲面を近似する。部分領域を示すmとnの値は、実際の特徴点を含む顔部品の大きさに応じて設定してよい。実際の顔部品の大きさと設定される部分領域の大きさとの差が、大きくなると曲率の値の精度が低下する場合がある。この場合、なりすまし判定の精度に影響する。そこで、mとnを式(5)を用いて定めてもよい。
【数3】
【0037】
式(5)において、avg_depthは顔領域Fにおけるdisparityである。fit_w及びfit_hは、指定する特徴点を代表する顔部品の横及び縦のサイズ(単位:mm)である。baselineは、2つカメラのレンズ間の距離(単位:mm)である。顔部品の大きさは、例えば人間の鼻の大きさは36[mm]x36[mm]として、顔領域Fにおけるdisparityは領域内の全ての画像ピクセルのdisparityの平均値として良いこれにより、部分領域内の三次元ポイントの数を顔領域Fの撮影距離に対して自動的に変動するものである。
【0038】
曲面の近似は、式(6)を用いて行う。
【数4】
式(6)中で、係数aは固定値であり、係数b,c,及びdは、近似される曲面に対し、三次元座標で示す特徴点(CX,CY,CZ)の1次微分である。また、係数eとfは(CX,CY,CZ)の2次微分である。上記係数を得るために、式(6)を式(7)の行列演算の形に変換する。
【数5】
【0039】
式(7)では、各三次元点群の座標(x
i,y
i,z
i)(0≦i≦p)と特徴点(CX,CY,CZ)が既知であるので、行列を逆変換することでベクトル(a,b,c,d,e,f)
Tを得ることができる。
【0040】
次に、近似曲面に基づいて曲率を計算する(S504)。係数{a,b,c,d,e,f}を用いて三次元の特徴点に対応するガウス曲率及び平均曲率を計算する。平均曲率は式(8)、ガウス曲率は式(9)を用いて計算される。
【数6】
【0041】
このように、曲率計算部212は、特徴点を含む部分領域内の三次元点群に基づいて近似した曲面を得る。この曲面の係数を用いて、特徴量としてガウス曲率及び平均曲率を得る。曲率計算部212は、立体感のある特徴点のみ扱うため、顔領域Fのすべての画像ピクセルを処理する場合と比較して演算量を抑制することが可能である。また、立体感の強い特徴点として、例えば、顔の水平方向の中心にある左右目頭、顔の垂直方向の中心にある鼻頂点、上下唇中点、及び鼻梁などを利用すればよい。この場合、高いなりすまし検知精度を得ることができる。また、顔中心部にある特徴点の曲率計算は向きに依存しない。このため、顔中心部にある特徴点を用いる場合、様々な姿勢に対応することが可能である。
【0042】
次に、特徴点形状記憶部221に記憶される三次元形状の特徴量に関する情報について詳細に説明する。
図6は、特徴量に関する形状情報の一例を示す図である。特徴点形状記憶部221は、
図6に示す三次元形状の特徴量に関する形状情報を記憶する。
図6では、一つの行に一つの特徴点のインデックスとその特徴量に関する情報が記載されている。特徴量に関する形状情報は、{特徴点Index、特徴点名、平均曲率の符号、平均曲率の範囲、ガウス曲率の符号、ガウス曲率の範囲}から構成される。ここで、特徴点を含む部分領域は、凸形であるか凹形であるかが定まっている。このため、特徴量に関する形状情報に含まれる平均曲率の符号及びガウス曲率の符号は、特徴点に対応して定まっている。
【0043】
次に、特徴量に関する形状情報に含まれる平均曲率の範囲及びガウス曲率の範囲について説明する。各特徴点の曲率の範囲は、下記の処理を実施することで取得される。まず、H(Hは1以上の整数)人の顔画像をカメラ101で撮影する。次に、H人の顔画像に対して、顔検出部104及び特徴点検出部105における処理を実施し、各画像の顔の特徴点を検出する。
【0044】
次に、H人の各顔画像に対し、顔点群生成部211及び曲率計算部212における処理を実施し、N個の特徴点における平均曲率とガウス曲率を計算する。ここでは、各特徴点に対し、H個の平均曲率とH個のガウス曲率が得られる。各特徴点に対し、平均曲率及びガウス曲率の最大値と最小値をそれぞれ求める。求めたそれぞれの[最小値,最大値]を特徴点毎の平均曲率及びガウス曲率の範囲とする。なお、特徴点毎の平均曲率及びガウス曲率の符号は定まっている。このため、この符号と一致しない場合、その特徴点に関する平均曲率及びガウス曲率の情報を除く。
【0045】
このようにして得られた特徴量に関連する形状情報を特徴点形状記憶部221に記憶する。特徴点形状記憶部221への記憶は、立体物認証システム1を利用する前に1回実施すればよい。また、なりすまし判定方法の変更に応じて、特徴点に対応する形状情報を増減してもよい。なお、Hが1の場合、平均曲率及びガウス曲率の範囲をNULLに設定する。
【0046】
次に、立体度算出部223の処理について詳細に説明する。
図7は、立体度を算出する処理の一例を示すフローチャートである。立体度算出部223は、曲率計算部212で計算した特徴点j(1≦j≦N)に対応する特徴量の形状情報を入力し、特徴点jに対応する特徴量の形状情報を特徴点形状記憶部221から読み出す。立体度算出部223は、下記四つの条件を満たしているか判定する。
【0047】
まず、計算した特徴点jの平均曲率H
jの符号は読み出した平均曲率の符号と同じであるか判定する(S701)。次に、計算した特徴点jの平均曲率H
jの値は読み出した平均曲率の範囲(T1
j,T2
j)内であるか判定する(S702)。次に、計算した特徴点jのガウス曲率K
jの符号は読み出したガウス曲率の符号と同であるか判定する(S703)。次に、計算した特徴点jのガウス曲率K
jの値は読み出したガウス曲率の範囲(K1
j,K2
j)内であるか判定する(S704)。
【0048】
四つの条件のいずれかが満たされない場合、計算した特徴点jの特徴量と、読み出した特徴量とは類似していないと判定する。この場合、特徴量の類似性を示すScore
jとして立体度をゼロに設定する(S705)。
【0049】
一方、四つの条件が全て満たされる場合、対応する部分領域の形状特性も類似する。この場合、対応する特徴量の類似性を示す立体度を計算する。三次元の顔領域Fにおいて、検知対象の特徴量と、基準となる特徴点jの特徴量の類似性を示すScore
jとして立体度を式(10)を用いて算出する(S706)。このように、立体度算出部223は、三次元における、基準の特徴量と、検知対象の特徴量との類似度を示す立体度Score
jを算出する。
【数7】
【0050】
立体度Score
j、は平均曲率H
jが平均曲率の範囲(T1
j,T2
j)内であり、T2
jに近づく程大きな値を示す。一方、平均曲率H
jが、T1
jに近づくに従い立体度Score
jの値は小さくなる。同様に、立体度Score
j、はガウス曲率K
jがガウス曲率の範囲(K1
j,K2
j)内であり、K2
jに近づく程大きな値を示す。一方、ガウス曲率K
jが、K1
jに近づくに従いScore
jの値は小さくなる。
【0051】
このように、特徴点jの特徴量が特徴点に応じて定まる符号を有する場合、平均曲率T2
j、ガウス曲率K2
jに類似する程、立体度Score
jの値は1に近づく。一方、類似しないほど0に近づく。
【0052】
また、Hが1の場合、[最小値,最大値]にNULLが設定されているので、式(10)を計算しなくてよい。この場合、特徴点jの特徴量が、特徴点に応じて定まる符号を有する場合にScore
jを1、有さない場合に0にする。
【0053】
また、基準となる特徴点jの特徴量と、検知対象の特徴点jの特徴量の値が近いほど、三次元形状の特性が互いに類似する。これにより、Score
jが1に近いほど、検知対象の特徴点jに対応する部分領域は、類似する形状特性を有することを示す。このため、Score
jが1に近いほど、検知物体は、本物の顔である可能性が高くなる。
【0054】
次に、顔向き推定部224の推定処理について説明する。顔向き推定部224は、徴点検出部105で検出される顔の特徴点の二次元座標と式(2)〜(4)による三次元座標を用いて顔の姿勢(向き)を推定する。三次元形状の顔領域F上の複数の特徴点を、二次元面に投影する。投影された特徴点の位置と、二次元面上の対応する特徴点の位置の距離の二乗和を最小にするように三次元形状の顔領域Fの向きを変更する。顔向き推定部224は、この二乗和を最小にする向きを推定結果として得る。
【0055】
推定された姿勢は顔のオイラー角(α、β、γ)で示される。一般に、特徴点の位置を用いて推定したオイラー角の範囲は、−30≦α≦30、−45≦β≦45、−180≦γ≦180となる。αは顔の上下方向の向き、βは顔の左右方向の向き、γは顔の回転の向きを示す。
【0056】
顔特徴点向き記憶部222は、このように推定したオイラー角(α、β、γ)を特徴点形状記憶部221に記憶される特徴点に関連付けて記憶する。記憶は立体物認証システム1を利用する前に1回実施すればよい。
【0057】
図8は、顔姿勢に応じて検出される特徴点を例示する図である。
図8では、3パターンの顔姿勢で検出される特徴点をXまたはOで示している。左図では、顔姿勢は斜め左であり、顔特徴点がほぼすべて検出される。真中の図では、顔姿勢は斜め右下であり、一部の顔輪郭と鼻孔検出が検出できない。右図では、顔姿勢がさらに横になっており、半分以上の特徴点が検出されない。
【0058】
図9は、顔特徴点向き記憶部222に記憶される特徴点の情報を例示する図である。
図9中において、撮影された画像の顔姿勢を示すオイラー角(α、β、γ)と、その画像での特徴点が示されている。
図9は、−30≦α≦30、−45≦β≦45、−180≦γ≦180の範囲内において、数度の間隔で特徴点リストを示してる。特徴点リストには、検出された特徴点を1で、検査されなかった特徴点を0で示している。
【0059】
次に、評価値について詳細に説明する。特徴点を一つしか用いない場合、顔立体度算出部225は、式(10)で示す立体度を評価値として用いる。一方、複数の特徴点で得られた立体度を用いる場合、顔立体度算出部225は、式(11)を用いてN個の特徴点に対応する立体度を重み付けする。
【数8】
【0060】
式(11)では、weight
jは特徴点jの重み、Score
jは特徴点jの立体度を示す。weight
jは、式(12)を用いて計算される。式(12)中で、cos(V,V
a)は、顔向き推定部224にて推定された顔姿勢ベクトルVと特徴点顔向き記憶部222中で対応する顔姿勢ベクトルV
a(0≦a≦r)の内積であり、ベクトル間の距離を示す。aは、
図9での行番号に対応し、rは、記載される顔姿勢の数に対応し、1以上の自然数を示す。
【数9】
【0061】
match(j,a)は関数であり、a行における特徴点リストの第j項が1の場合、match(j,a)は1となる。一方、第j項が0の場合、match(j,a)は0となる。また、cos(V,Va)は、ベクトルV、Va間の内積であり距離を示す。式(11)を用いたScoreでは、顔姿勢を反映して評価値を得ることができる。このため、検知対象の顔が、多様な向きの顔姿勢であってもなりすまし判定の精度の低下を抑制できる。
【0062】
さらに、検知対象の一部がカメラ101により撮影されなくても、検出された特徴点に対応する立体度を用いてなりすまし判定が可能である。顔姿勢の変動に依存しにくい顔特徴点のみ扱う場合、顔姿勢によらず、weight
jを式(13)に示す様に同じ値(例えば1)に設定してよい。これにより、顔全体の立体度を簡単に算出できる。例えば、
図8中のOで示す顔の中心部にある左右目頭2点、鼻梁1点、鼻頂点1点、下唇中点1点、計5点を使う場合に用いる。
【数10】
【0063】
立体判定部230は、評価値であるScoreに基づき画像中の顔はなりすましか否かを判定する。Scoreがしきい値T以上である場合、検知対象の顔は、実物であり、なりすましでないと判定する。また、ScoreがT未満である場合、なりすましと判定する。ここで、しきい値Tは、評価値を求める時使用した特徴点の数に応じて変更してもよい。例えば、式(12)の場合、weight
jをN個加算した値を任意の一定比率で乗算する。
【0064】
なりすましと判定された場合、結果表示部103になりすまし顔であることを表示する。また、入出力装置2は、なりすましである信号を入力された場合、警報を出すか、立体物認証装置3の利用者をリジェクトするなどしてよい。
【0065】
一方、なりすましと判定されなかった場合、顔認証部108は、カメラ101で撮影された顔(認証顔)が登録顔情報保持部107に登録された顔(登録顔)であるか認証する。より詳細には、顔情報抽出部106は、顔検出部104で検出された顔領域Fから特徴量(顔情報)を抽出する。顔認証部108は、顔情報抽出部106で抽出された認証顔の顔情報が、登録顔情報保持部107に予め登録された登録顔の顔情報のいずれかとマッチすることを認証する。認証成功の場合、結果表示部103の表示デバイスに認証された顔は登録された顔であることを表示する。
【0066】
顔情報抽出部106で用いる顔情報の抽出方法は、一般的なアルゴリズムを用いることが可能である。例えば、Gaborウェーブレットを用いて特徴量を計算してよい。まず、画像から複数のスケールで複数の方向に顔の特徴ピクセルを中心とした領域を切り出す。次に、サブバンド分解を用いて横方向に1次元のGaborウェーブレット変換を行い、低周波数成分と高周波数成分に分割する。次に、縦方向の1次元のGaborウェーブレット変換を行う。最終的には、スケールと方向がそれぞれ異なる4分割された変換画像が得られる。
【0067】
4分割された変換画像に基づく4つの成分のベクトルが、特徴量としての顔特徴ベクトルとなる。Gabor変換のスケール個数と方向数は、実際の顔認証の精度と処理速度に応じて決定してよい。Gaborウェーブレットのほか、DCT変換、Eigen Face、LBP(Local Binary Pattern)などの一般的な方法を用いて、顔情報としての特徴量を算出してもよい。
【0068】
登録顔情報保持部107は、顔情報抽出部106を用いて利用者の登録顔画像の顔情報を抽出して登録する。また、登録顔と認証された場合(認証成功の場合)、検知対象となった認証顔の顔情報を用いて、登録顔情報保持部107に記憶されている顔情報の更新をしてもよい。
【0069】
このように、検知対象の三次元の顔領域F内の部分領域の形状特性を示す特徴量と、特徴点を含む部分領域の形状特性を示す基準となる特徴量との類似性を示す評価値を得ることができる。特徴点を含む部分領域は立体形状として特徴がある。このため、類似することを示す評価値が得られた場合、検知対象の顔は、基準となる三次元の顔である可能性が高くなる。これに対して、顔全体の立体性を求める場合、部分領域に特徴点に応じた形状特性の情報を得ることができない。このため、顔全体の立体性を求める場合よりも、検知対象の立体的な部分領域を評価することでなりすまし判定の精度が上がる。
【0070】
また、評価値に特徴点を複数用いた場合、複数の特徴点にて部分領域が類似するか否か判定できる。このため、特徴点を一つしか用いない場合よりも判定精度が上がる。また、評価値に検知対象の姿勢を反映できるので、姿勢に応じた評価値を得ることができる。これにより、回転した顔、斜め顔、及び横顔などのなりすまし判定にも対応できる。また、部分領域に対して計算をするので、顔全体に対して立体性を求める計算をする場合に比較して処理量が少なく、低消費電力を求められるシステムにも適応ができる。
【0071】
以上説明したように、一実施形態によれば、検知物体表面の特徴点を含む部分領域における立体形状の特徴量を取得する。そして、基準立体物表面の対応する部分領域から得られた立体形状の特徴量との類似性の評価値に基づいて検知物体が予め定めた立体形状を有するか否かを判定する。基準立体物が顔である場合、検知物体が予め定めた立体形状を有するか否かを判定する。これにより、検知物体全体の立体形状の立体性を評価しなくても、部分領域内の特徴量を評価するだけで、検知物体がなりすましか否か判定できる。なお、一実施形態によれば、検知物体の例として顔を用いて説明したが、例としてのみ提示したものであり、検知物体を顔に限定することを意図したものではない。
【0072】
このように、本実施形態によれば、形状特性を示す特徴量の取得領域を特徴点を含む部分領域に限定することで、検知物体がなりすましか否かの判定を迅速かつ高精度にできる。これにより、検知物体がなりすましか否かを精度よく判定できる立体物認証システムを提供することができる。
【0073】
上述した実施形態で説明した立体物検知装置および立体物認証システムの少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、立体物検知装置および立体物認証システムの少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD−ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【0074】
また、立体物検知装置および立体物認証システムの少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【0075】
以上、一実施形態を説明したが、一実施形態は、例としてのみ提示したものであり、発明の範囲を限定することを意図したものではない。本明細書で説明した新規な装置は、その他の様々な形態で実施することができる。また、本明細書で説明した装置の形態に対し、発明の要旨を逸脱しない範囲内で、種々の省略、置換、変更を行うことができる。添付の特許請求の範囲およびこれに均等な範囲は、発明の範囲や要旨に含まれるこのような形態や変形例を含むように意図されている。