【文献】
山本 一真 外1名,顔向き正規化と部分推定結果の統合による多様な顔向きに対応した性別推定,情報処理学会 研究報告 コンピュータビジョンとイメージメディア(CVIM) 2013−CVIM−187,日本,情報処理学会,2013年 5月23日,pp.1-7
【文献】
淺水 宏文 外3名,加齢の影響が大きいGabor特徴成分を用いた顔画像からの年齢層の推定,映像情報メディア学会技術報告 Vol.37 No.8 ヒューマンインフォメーション (HI2013−1〜32) メディア工学 (ME2013−29〜60) 映像表現&コンピュータグラフィックス (AT2013−1〜32),日本,映像情報メディア学会,2013年 2月11日,第37巻 第8号,pp.57-60,ISSN 1342-6893
(58)【調査した分野】(Int.Cl.,DB名)
前記人物属性推定処理部は、前記評価の結果と前記信頼度に応じた重み付けとに基づいて、前記人物属性を推定することを特徴とする請求項1に記載の人物属性推定装置。
前記人物属性推定処理部は、前記人物属性の推定結果を、当該推定結果の信頼度と併せて出力することを特徴とする請求項1〜3のいずれか一項に記載の人物属性推定装置。
前記人物属性推定処理部は、複数の顔向き正規化画像についての前記評価の結果の分散度を考慮して前記人物属性の推定結果の信頼度を求めることを特徴とする請求項4に記載の人物属性推定装置。
前記信頼度演算処理部は、前後のフレーム画像間での顔領域の動きに基づいて前記信頼度を求めることを特徴とする請求項1〜8のいずれか一項に記載の人物属性推定装置。
前記信頼度演算処理部は、前記前後のフレーム画像間での前記顔領域のオプティカルフロー強度に基づいて前記信頼度を求めることを特徴とする請求項10に記載の人物属性推定装置。
【発明を実施するための形態】
【0025】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0026】
<<第1の実施形態>>
<1.人物属性推定装置の基本構成>
まず、
図1を参照して、第1の実施形態にかかる人物属性推定装置の概略構成について説明する。
図1は、第1の実施形態にかかる人物属性推定装置100を示すブロック図である。人物属性推定装置100は、同一人物が撮影された複数枚の画像を入力画像として、画像中の人物の性別や年齢等の属性を推定する装置である。
【0027】
人物属性推定装置100は、例えば、CPU(Central Processing Unit)、RAM(Random Access Memory)等により構成される情報処理装置である。また、人物属性推定装置100は、例えばカメラ等と一体となった装置であってもよい。さらに、人物属性推定装置100は、後述する人物属性推定装置100の機能を有するプログラムであっても実現できる。
【0028】
図1に示したように、人物属性推定装置100は、例えば記憶部110と、入力部120と、顔検出処理部130と、顔特徴点抽出処理部140と、顔向き正規化処理部150と、属性評価処理部160と、信頼度演算処理部170と、人物属性推定処理部180とを備える。
【0029】
記憶部110は、例えばカメラ等により撮像された人物の顔が含まれる画像を記憶している。画像は、例えばカメラ等により撮像された人物や風景等の画像である。また、記憶部110は、後述するように、人物属性推定処理部180が各顔向き正規化画像の人物属性の評価結果と信頼度とに基づいて人物属性を推定する際に用いる、信頼度に対する重み付けの情報を記憶している。
【0030】
入力部120は、例えばカメラ等により撮像された人物の顔が含まれる画像を、人物属性推定装置100に接続された外部装置から取得する。外部装置は、例えば人物属性推定装置100に直接又はネットワークを介して接続されたカメラ、USB(Universal Sirial Bus)メモリやHDD(Hard Disc Drive)、光ディスク等の記録媒体、あるいは、当該記録媒体に記憶された情報を読み取るデバイス等である。本実施形態にかかる人物属性推定装置100では、記憶部110に記憶された画像又は入力部120が取得した画像の少なくともいずれか一方の画像から、人物の属性の推定を行う。
【0031】
顔検出処理部130は、画像中の人物の顔を含む領域(以下、「顔領域」とする。)を検出する。顔検出処理部130により処理される画像は、例えば記憶部110又は入力部120から取得される。顔検出処理部130は、画像中から顔領域を抜き出した顔画像を生成する。
【0032】
顔特徴点抽出処理部140は、例えば顔検出処理部130で生成された顔画像から、顔の特徴を表す顔特徴点を抽出する。顔特徴点としては、顔のパーツである目、鼻、口等がある。顔特徴点抽出処理部140で抽出された顔特徴点は、顔向き正規化処理部150に出力される。
【0033】
顔向き正規化処理部150は、顔特徴点及び顔画像から、顔画像の顔向きを正規化した顔向き正規化画像を生成する。顔画像の正規化とは、例えば正面を向いた顔向きを基準として、顔が正面以外を向いている顔画像を、基準となる正面を向いた顔画像になるように変換することである。顔向き正規化処理部150は、生成した顔向き正規化画像を、属性評価処理部160及び信頼度演算処理部170に出力する。
【0034】
属性評価処理部160は、顔向き正規化処理部150により生成された顔向き正規化画像を、性別や年齢等の人物属性について、あらかじめ設定された同一粒度の評価指標のいずれかに評価する。本実施形態にかかる属性評価処理部160は、生成された顔向き正規化画像の状態にかかわらず、すべての顔向き正規化画像を、同一粒度の評価指標のいずれかに評価する。属性評価処理部160は、顔向き正規化画像ごとに、人物属性の評価結果を人物属性推定処理部180に出力する。
【0035】
評価指標は、例えば人物属性が性別である場合、男性らしさ又は女性らしさを表す評価値とすることができる。また、例えば人物属性が年齢である場合、年齢をそのまま評価指標とし、又は所定の年齢帯を評価指標とすることができる。「同一粒度の評価指標のいずれかに評価する」とは、例えば、評価指標が男性らしさ又は女性らしさを表す評価値の場合には、評価値が等間隔で表されており、各顔向き正規化画像に対して、必ずいずれかの評価値を与えることを意味する。また、評価指標が年齢そのものである場合には、「同一粒度の評価指標のいずれかに評価する」とは、各顔向き正規化画像を、必ずいずれかの年齢に評価することを意味する。さらに、評価指標が年齢帯である場合には、「同一粒度の評価指標のいずれかに評価する」とは、各年齢帯が同一の幅で規定されており、各顔向き正規化画像を、必ずいずれかの年齢帯に評価することを意味する。
【0036】
信頼度演算処理部170は、顔向き正規化処理部150で生成された顔向き正規化画像ごとに、属性評価処理部160で求めた属性評価結果に対する信頼度を求める。画像から検出される顔領域の大きさや明暗差、顔の表情等の撮影状態により顔向き正規化画像の状態に差が生じ、属性評価処理部160にかかる属性評価結果の精度にばらつきが発生する。このため、属性評価結果の信頼度も顔向き正規化画像ごとにそれぞれ異なることから、信頼度演算処理部170において、各属性評価結果に対する信頼度を求める。信頼度演算処理部170は、顔向き正規化画像ごとに、属性評価結果に対する信頼度を人物属性推定処理部180に出力する。
【0037】
人物属性推定処理部180は、属性評価処理部160で求めた人物属性の評価結果と、信頼度演算処理部170で求めた信頼度とを統合して、あらかじめ設定した粒度の人物属性を推定する。人物属性の推定は、属性評価結果の信頼度が高いほど人物属性の推定結果により反映されやすくなるように評価結果を統合して、顔画像の人物の属性を推定する。
【0038】
例えば、人物属性推定処理部180は、各顔向き正規化画像に対する属性評価結果と、当該属性評価結果に対応する信頼度に応じた重み付けとに基づいて、人物属性を推定する。例えば、信頼度が低い属性評価結果ほど重み付けが小さくなり、信頼度が高い属性評価結果の重みが大きくなるように、各属性評価結果に対して設定される値である。重み付けには、記憶部110にあらかじめ記憶された、信頼度に応じた値が使用される。
【0039】
「あらかじめ設定した粒度の人物属性を推定する」とは、人物属性が性別である場合には、人物の性別を男性又は女性のいずれかに属させるようにあらかじめ設定し、そのいずれかに推定することである。また、人物属性が年齢や年齢帯である場合には、「あらかじめ設定した粒度の人物属性を推定する」とは、人物の年齢を年齢そのもの又は所定の年齢帯のいずれかに属させるようにあらかじめ設定し、そのいずれかに推定することである。
【0040】
<2.処理フロー>
次に、
図1及び
図2を参照して、第1の実施形態にかかる人物属性推定装置100による人物属性推定処理について説明する。
図2は、同実施形態にかかる人物属性推定処理を示すフローチャートである。
【0041】
まず、顔検出処理部130は、記憶部110に記憶された画像又は入力部120が取得した画像から、顔領域を抽出し、画像から顔領域を抜き出した顔画像を生成する顔検出処理を実行する(S100)。
【0042】
次いで、顔特徴点抽出処理部140は、顔検出処理部130で生成された顔画像から、例えば顔のパーツである目、鼻、口の端部や中央部等の顔特徴点を抽出する顔特徴点抽出処理を実行する(S104)。
【0043】
次いで、顔向き正規化処理部150は、顔検出処理部130で生成された顔画像及び顔特徴点抽出処理部140にて抽出された顔特徴点から、顔画像の顔向きを正規化した顔向き正規化画像を生成する顔向き正規化処理を実行する(S108)。
【0044】
次いで、属性評価処理部160は、顔向き正規化処理部150で生成された顔向き正規化画像を、性別や年齢等の人物属性について、あらかじめ設定した同一粒度の評価指標のいずれかに評価する属性評価処理を実行する(S112)。本実施形態では、生成された顔向き正規化画像の状態にかかわらず、すべての顔向き正規化画像を、同一粒度の評価指標のいずれかに評価する。
【0045】
次いで、信頼度演算処理部170は、顔向き正規化処理部150で生成された顔向き正規化画像ごとに、属性評価結果に対する信頼度を求める信頼度演算処理を実行する(S116)。
【0046】
次いで、人物属性推定処理部180は、属性評価及び信頼度の演算が終了した顔向き正規化画像のサンプル数iが、あらかじめ設定した閾値N以上となったか否かを判別する(S120)。サンプル数iが閾値Nに満たない場合(S120:No)、サンプル数iのカウンタ値をi=i+1とし(S128)、サンプル数iが閾値N以上となるまで、顔検出処理(S100)から信頼度演算処理(S116)までの各処理を繰り返す。
【0047】
サンプル数iが閾値Nに到達すると(S120:Yes)、人物属性推定処理部180は、属性評価処理部160で求めた顔向き正規化画像ごとの人物属性の評価結果と、信頼度演算処理部170で求めた顔向き正規化画像ごとの属性評価結果の信頼度とを統合して、あらかじめ設定した粒度で顔画像の人物の属性を推定する人物属性推定処理を実行する(S124)。例えば、人物属性推定処理部180は、顔向き正規化画像ごとの属性評価結果と、当該顔向き正規化画像に対応する信頼度に応じた重み付けとに基づいて、人物属性を推定する。例えば、信頼度が低い属性評価結果ほど重み付けが小さくなり、信頼度が高い属性評価結果の重みが大きくなるように、各属性評価結果に対して設定される値とすることができる。
【0048】
以上、第1の実施形態にかかる人物属性推定処理の概要について説明した。本実施形態にかかる人物属性推定処理では、画像から検出された顔画像のすべてについて顔向き正規化画像を生成し、それぞれの顔向き正規化画像に対して人物属性評価及び信頼度演算を行う。したがって、顔画像の撮影状態にかかわらず、その信頼度とともに属性評価結果が得られる。その結果、信頼度を考慮に入れつつ複数の属性評価結果を統合して、人物属性を推定することができる。
【0049】
また、第1の実施形態にかかる人物属性推定処理では、複数の顔向き正規化画像の属性評価結果及び信頼度を統合して、あらかじめ設定した粒度の人物属性を推定する。したがって、人物属性の推定結果の情報を利用するユーザが望む人物属性が得られるようになり、利用に適した人物属性の推定結果とすることができる。
【0050】
<3.処理例>
次に、
図3から
図7を参照して、第1の実施形態にかかる人物属性推定装置100により、人物属性として性別を推定する一処理例について説明する。
【0051】
[3−1.顔検出処理(ステップS100)]
まず、
図2のステップS100における顔検出処理は、画像中の人物の顔のある領域を検出し、画像中から顔領域を抜き出した顔画像を生成する処理である。顔検出処理は、既知の様々な手法を用いることができる。本処理例にかかる顔検出処理では、例えば非特許文献1に開示されているように、AdaBoostベースの識別器をカスケード状に並べて効率よく検出する方法等を用いる。
【0052】
図3は、本処理例にかかる顔検出処理の処理結果を示す説明図である。
図3に示した例では、顔検出処理によって抽出された画像10内の顔領域20を矩形で示す。顔領域20は、例えば顔特徴点である目、鼻、口が少なくとも含まれるように抽出される。また画像10からこの顔領域20を抜き出した画像が、顔画像となる。
【0053】
[3−2.顔特徴点抽出処理(ステップS104)]
図2のステップS104における顔特徴点抽出処理は、顔検出処理部130により生成された顔画像から、顔のパーツである目、鼻、口等の顔特徴点を抽出する処理である。顔特徴点抽出処理は、既知の様々な手法を用いることができる。本処理例にかかる顔特徴点抽出処理では、例えば非特許文献2に開示されているように、AAM(Active Appearance Models)を用いて抽出する方法等を用いる。
【0054】
図4は、本処理例にかかる顔特徴点抽出処理の処理結果を示す説明図である。
図4に示した例では、顔特徴点抽出処理により、顔領域20から顔特徴点P1〜P8が抽出されている。本処理例では、顔特徴点として、両目の目頭P1、両目の中心P2、両目の目尻P3、鼻P4、口の上端P5、口の下端P6、口の左端P7、口の右端P8が抽出される。
【0055】
[3−3.顔向き正規化処理(ステップS108)]
図2のステップS108における顔向き正規化処理は、例えば非特許文献3に開示されているような、射影変換に基づいた3次元正規化法を用いて顔向きの正規化を行うことができる。
【0056】
3次元正規化法は、顔画像上の複数の特徴点から、一般3次元顔形状への投影行列を求め、回転、サイズ、顔の向きによる姿勢変化を同時に正規化する方法である。3次元正規化法は、まず、平均的な3次元顔形状である一般3次元顔形状を作成し、一般3次元顔形状上の特徴点座標を予め定める。
【0057】
次に、一般3次元顔形状の特徴点座標と計測行列Wから、運動行列Mを算出する。顔特徴点抽出処理により、顔画像からN個の特徴点が得られる場合、画像上のi番目の特徴点座標を(u
i,v
i)、全特徴点の重心を(u
c,v
c)、特徴点座標から重心座標を引いた座標を(u
’i,v
’i)=(u
i−u
c,v
i−v
c)としたときに、計測行列Wは以下の(1)式により2×N行列として定義される。
【0059】
また、一般3次元顔形状の対応するi番目の特徴点座標を(x
i,y
i,z
i)、重心座標を(x
c,y
c,z
c)、特徴点座標から重心を引いた座標を(x’
i,y’
i,z’
i)とすると、形状行列Sは以下の(2)式により3×N行列として定義される。
【0061】
このとき、顔画像と一般3次元形状の間の投影関係を表す2×3行列の運動行列Mは、以下の(3)式で定義される。
【0063】
さらに、以下の(4)式により形状行列Sの疑似逆行列S
+を計算することで、運動量列Mを求める。
【0065】
次いで得られた運動行列を用いて、顔画像の3次元正規化処理を行う。得られた運動行列Mは、顔形状上の特徴点を顔画像上に投影した場合に、顔画像上の特徴点との誤差が最小となるような投影行列とみなすことができる。この、投影関係に基づいて、任意の顔形状の点(x,y,z)と対応する顔画像上の点(u,v)を以下の(5)式により求め、正規化画像に必要な全てのx,y座標について対応する顔画像上の点を求める。
【0067】
得られた点の画素値を3次元形状の画素値と置き換えることで、顔向き正規化画像が算出される。
【0068】
図5は、本処理例にかかる顔向き正規化処理の処理結果を示す説明図である。
図5を参照すると、顔向きの異なる画像から得られる顔画像と顔特徴点、顔画像に3次元正規化処理をして得られる顔向き正規化画像、顔画像をアフィン変換により正規化した位置正規化画像が示される。
【0069】
位置正規化画像は、顔特徴点抽出処理により得られる顔画像の特徴点の位置に基づいて、顔画像を2次元的な変換であるアフィン変換することで得られる。具体的には、位置正規化画像は、例えば顔画像から検出された目、鼻、口等の特徴点が、正面向きのときに表示される顔画像の位置に移動するように、線形変換と平行移動の組み合わせにより顔画像を変形させることで得られる。
【0070】
図5に示した例では、正面向き、右15°向き、右30°向き、上15°向きのそれぞれの顔向きについて、抽出された顔画像と顔特徴点、顔向き正規化画像、位置正規化画像を示している。
【0071】
顔画像は、顔検出処理部130により画像10から抽出された顔領域20であり、顔特徴点として、両目の中心P2、鼻P4、口の左端P7、口の右端P8が抽出されている。
【0072】
図5を参照して、顔画像の左側である顔の左半分の領域を比較すると、位置正規化画像は、顔の正面向き、右15°向き、右30°向き、上15°向きのそれぞれの顔向きで目や眉の形状、鼻の大きさ等の見え方が異なることが分かる。特に、「右15°向き→右30°向き」と顔向きが大きくなるに従い、見え方に大きな変化が現れる。一方、顔向き正規化画像は、顔の正面向き、右15°向き、右30°向き、上15°向きのいずれの場合においても、大きな見え方の変化がなく、顔向きの大きさによって見え方が変化しない。
【0073】
また、顔画像の右側である顔の右半分の領域を比較すると、位置正規化画像は、特徴点である両目の中心P2、鼻P4、口の左端P7、口の右端P8は、正面向きと同じ位置に移動されているが、目や眉の形状、鼻の大きさ、口の形等の見え方が正面向きと大きく異なることがわかる。一方、顔向き正規化画像は、右30°向きの下側や右端の領域において、撮影時のオクルージョンによる影響からノイズが発生する領域はあるが、ノイズが発生していない領域を比較すると、いずれの向きにおいても、見え方に大きな変化がないことがわかる。
【0074】
[3−4.属性評価処理(ステップS112)]
図2のステップS112における属性評価処理は、例えば、非特許文献4に開示されているHaar−like特徴を特徴量として利用し、非特許文献5に開示されているVector−Boostを識別器として利用することで行うことができる。Haar−like特徴は、非特許文献4に開示されているように、局所領域の明暗差をもとに抽出される特徴量である。
【0075】
属性評価処理に用いる識別器は、様々な顔画像の学習データから画像特徴量を抽出し、統計情報として解析することにより生成される。このときに用いる顔画像の学習データは、様々な属性の人物の顔を異なる角度から撮影して得られる顔画像であり、例えば、正面向き、横15°向き、下15°向き、上15°向きの顔画像群とすることができる。これらの顔画像群から、推定する人物属性に応じた画像特徴量を抽出して得られる識別器を記憶部110にあらかじめ記憶しておき、正規化処理した顔向き正規化画像の人物の属性を、識別器を用いて評価する。
【0076】
なお、使用される特徴量と識別器は、推定する人物属性の種類に合わせて変更されることが望ましい。これは、性別、年齢といった異なる属性の推定においては、適切な特徴量と識別器が異なるからである。推定する人物属性の種類に合わせて、使用する特徴量と識別器を変更することで、属性評価結果の精度を向上させることができる。
【0077】
例えば、人物属性として性別を推定する場合に、単に二値により男女を判定するのではなく、男性らしさという尺度を人物属性評価値として、−1.0〜+1.0の範囲の0.1単位の連続値として人物属性を評価することができる。この場合、人物属性評価値が+1.0のときが最も男性らしく、−1.0のときが最も女性らしいとなる。本処理例では、すべての顔向き正規化画像に対して、同一粒度の評価指標としていずれかの評価値が与えられる。本処理例で判定する人物は男性であるため、人物属性評価値が0よりも大きい値であれば正しい評価となる。
【0078】
本処理例では、推定する人物属性が性別であり、男性又は女性のどちらかしかないために、等間隔で設定された人物属性評価値という尺度を評価指標として属性評価を行っているが、例えば、推定する人物属性が年齢の場合には、年齢をそのまま評価指標としたり、同一の幅で設定された所定の年齢帯を評価指標としたりしてもよい。いずれの場合においても、本処理例では、すべての顔向き正規化画像に対していずれかの評価結果が与えられる。
【0079】
[3−5.信頼度演算処理(S116)]
図2のステップS116における信頼度演算処理について詳細に説明する。信頼度演算処理は、正規化処理により得られた顔向き正規化画像について、属性評価処理により得られた人物属性の評価結果に対する信頼度を求める。
【0080】
顔向き正規化画像に基づく人物属性の評価は、顔向き正規化画像が、属性評価処理に用いる識別器を学習するための顔画像の学習データの画像パターンに類似する場合には、精度の高い属性評価を期待することができる。一方、顔向き正規化画像が、顔画像の学習データに含まれていないような画像パターン(未知データ)の場合には、属性評価結果の精度が必ずしも高くならないことが知られている。
【0081】
例えば、顔画像が、属性評価処理に用いる識別器の学習段階で想定していた撮影環境でない場合や、想定していない装飾品を身に着けている場合に、属性評価結果の精度が低下すると考えられる。また、顔画像自体が想定していた撮影環境であっても、顔検出処理、顔特徴点抽出処理、顔向き正規化処理のエラーにより、顔向き正規化画像が学習データの画像パターンから外れる場合にも、属性評価結果の精度が低下すると考えられる。本処理例による信頼度演算処理では、各顔向き正規化画像と、属性評価処理に用いる識別器を学習するための学習データとの類似度を演算し、各顔向き正規化画像についての属性評価結果に対する信頼度を求める。
【0082】
信頼度演算処理は、例えば、非特許文献1に開示されているAdaBoostベースの識別器をカスケード状に並べたカスケード型識別器を用いて、顔向き正規化画像と、属性評価処理に用いる識別器の学習データとの類似度を演算する方法とすることができる。信頼度演算処理に用いる識別器を学習する際には、属性評価処理に用いる識別器の学習データを学習サンプルとして使用する。また、未学習サンプルとしては、属性評価処理に用いる識別器の学習データとして想定していなかった装飾品を装着した顔画像や、顔向きや表情が学習データの画像パターンとは大きく異なっている顔画像、顔以外の背景画像、等の未学習データを使用する。
【0083】
図6は、信頼度演算処理に用いる識別器を学習するための学習サンプル及び未学習サンプルの例を示している。学習サンプルは、属性評価処理の識別器の学習データとして用いた、正面向き、左15°向き、下15°向き、上15°向きの顔画像が用いられる。また、未学習サンプルのうちの未学習の顔画像のサンプルは、装飾品(マスク)を装着した顔画像、表情が大きく異なる(笑顔)顔画像、顔向きが大きく異なる顔画像(横90°向き)、想定外の撮影環境(照明の影響大)の顔画像が用いられている。さらに、顔画像を含まない未学習サンプルとして、単なる背景画像が用いられている。
【0084】
これらの学習サンプル及び未学習サンプルは本の一例にすぎず、実際には、多くの学習サンプル、未学習サンプルを用いて、信頼度演算処理に用いるカスケード型識別器を学習することができる。
【0085】
図7は、信頼度演算処理に用いるカスケード型識別器の構成例を示す説明図である。カスケード型識別器は、各段の識別器において、顔向き正規化画像の学習データらしさを識別するように構成されている。このカスケード型識別器は、後段に行くほど、すなわち、各段の識別器を通過するにしたがって、より高精度に学習データらしさを識別する機能を有している。
【0086】
かかるカスケード型識別器を用いて信頼度を求める際には、通過識別器の数をmとした場合に、単にmを信頼度としてもよいし、m
2を信頼度としてもよい。あるいは、以下の(6)式を用いて信頼度を求めるようにしてもよい。なお、
図7に示したカスケード型識別器の例では、通過識別器の数mは0から4の間の値である。
【0088】
[3−6.人物属性推定処理(ステップS124)]
図2のステップS124における人物属性推定処理について詳細に説明する。本処理例では、人物属性推定処理は、属性評価結果及び信頼度を求めた顔向き正規化画像のサンプルの数iがN個以上となったときに、人物属性の評価結果と、各属性評価結果に対する信頼度に応じて設定された重み付けとに基づいて、顔画像の人物の属性をあらかじめ設定された粒度で推定する。例えば、人物属性推定処理により、人物の性別、年齢、又は年齢帯が推定される。
【0089】
顔向き正規化画像に対する属性評価結果は、各顔向き正規化画像と、属性評価処理に用いる識別器の学習データとの類似度によって精度が異なり、学習データでは想定されていない画像パターンの顔向き正規化画像については、属性評価結果の信頼度が低くなる。このため、人物属性推定処理では、信頼度に応じて人物属性の評価結果に重み付けを行い、複数の顔向き正規化画像に対する属性評価結果を統合する。
【0090】
すなわち、信頼度が高くなるにしたがって重みを大きくすることにより、属性評価結果を統合する際に、信頼度の低い属性評価結果の影響を小さくすることができ、人物属性の推定精度を向上させることができる。
【0091】
重み付けは、例えば、
図7に示したカスケード型識別器の通過識別器数mをそのまま信頼度とした場合、識別器数m=0,1,2,3,4それぞれの場合の重みを0.1,0.3,0.5,0.7,0.9とすることができる。
【0092】
そして、M枚の入力画像があるときに、各画像から得られたM枚の顔向き正規化画像に対する属性評価結果をh
iとし、信頼度をw
iとした場合に、以下の(7)式を用いて単に属性評価結果の重み付け加算をして統合結果Hを求めてもよい。
【0094】
本処理例では、属性評価結果を統合して得られる、性別を推定するための人物属性評価値が、−1.0×M〜+1.0×Mの範囲の値として算出される。この場合、人物属性推定処理部180は、例えば人物属性評価値が0よりも大きい場合に人物は男性であると推定し、人物属性評価値が0よりも小さい場合に人物は女性であると推定する。また、人物属性推定処理は、例えば人物属性評価値が0である場合に人物の性別は不明であると推定する。
【0095】
このように、人物属性推定処理では、信頼度に応じて各顔向き正規化画像の属性評価結果に重み付けをして統合することで、信頼度が低い属性評価結果による影響を少なくすることができ、人物属性の推定精度を向上させることができる。
【0096】
このとき、複数の属性評価結果を統合する際に、信頼度に閾値を設け、閾値よりも低い信頼度の属性評価結果のサンプルをあらかじめ除いて、属性評価結果を統合してもよい。信頼度が低い属性評価結果を除くことにより、信頼度が高い属性評価結果のみを用いて人物属性が推定されるため、推定精度をより向上させることができる。
【0097】
また、人物属性推定処理による人物属性の推定結果を出力する際には、当該推定結果の信頼度も併せて出力してもよい。人物属性の推定結果の信頼度は、例えば属性評価結果の統合に用いた各属性評価結果に対する信頼度の平均値として求めることができる。また、同一人物の顔画像について求めたすべての属性評価結果の分散度を考慮に入れて、人物属性の推定結果の信頼度を求めてもよい。例えば、属性評価結果の分散度が低いほど信頼度が高くなるように値を設定して推定結果の信頼度としてもよいし、当該値を係数として、上述の信頼度の平均値に乗算して推定結果の信頼度としてもよい。
【0098】
人物属性の推定結果と併せて信頼度を出力することにより、推定結果の利用者が推定結果の信頼度を知ることができ、推定された人物属性の使用の可否や使用方法の判断の材料とすることができる。
【0099】
<4.第1の実施形態による効果>
以上、本実施形態にかかる人物属性推定装置100について説明した。本実施形態にかかる人物属性推定装置100は、同一人物の顔画像を有する画像から検出した顔画像のすべてについて顔向き正規化画像を生成し、各顔向き正規化画像に対して同一粒度での人物属性評価及び信頼度演算を行う。したがって、顔画像の撮影状態にかかわらず、その信頼度とともに属性評価結果が得られる。その結果、信頼度を考慮に入れつつ複数の属性評価結果を統合して、人物属性を推定することができる。
【0100】
また、本実施形態にかかる人物属性推定装置100は、複数の顔向き正規化画像の属性評価結果を、各顔向き正規化画像に対する信頼度に応じた重み付けで統合し、最終的な人物属性をあらかじめ設定した粒度で推定する。これにより、本実施形態にかかる人物属性推定装置100では、信頼度の低い属性評価結果の影響を小さくして人物属性の推定をすることができ、推定結果の信頼度を向上させることができる。また、本実施形態にかかる人物属性推定装置100は、あらかじめ設定した粒度の人物属性の推定結果が出力されるために、人物属性の推定結果の情報を利用するユーザが望む人物属性が得られるようになり、利用に適した人物属性の推定結果とすることができる。
【0101】
また、本実施形態にかかる人物属性推定処理では、複数の顔画像の学習データの特徴量を抽出した統計情報が記憶部110に記憶されており、顔向き正規化画像の特徴量を統計情報に照らして属性評価処理を行う。そして、属性評価結果の信頼度として、顔向き正規化画像と、複数の顔画像の学習データとの類似度が用いられる。これにより、顔向き正規化画像が、あらかじめ想定された顔画像のパターンに似ているほど人物属性の推定に対する影響が大きくなるため、人物属性の推定精度を向上させることができる。
【0102】
<<第2の実施形態>>
<1.人物属性推定装置>
まず、
図8を参照して、第2の実施形態にかかる人物属性推定装置の概略構成について説明する。
図8は、第2の実施形態にかかる人物属性推定装置200を示すブロック図である。人物属性推定装置200は、所定の単位時間ごとに撮像される複数のフレーム画像により構成される動画像を入力画像として、動画像中の人物の性別や年齢等の属性を推定する装置である。以下、第1の実施形態にかかる人物属性推定装置100と異なる点を中心に説明する。
【0103】
図2は、人物属性推定装置200は、例えば記憶部210と、入力部220と、顔検出処理部230と、顔トラッキング処理部240と、顔特徴点抽出処理部250と、顔向き正規化処理部260と、属性評価処理部270と、信頼度演算処理部280と、人物属性推定処理部290とを備える。
【0104】
記憶部210は、例えばカメラ等により撮像された単位時間ごとのフレーム画像からなる動画像を記憶している。動画像は、例えばカメラ等により撮像された人物や風景等の動画像である。また、記憶部210は、第1の実施形態にかかる記憶部110と同様に、人物属性推定処理部290が人物属性を推定する際に用いる、信頼度に対する重み付けの情報を記憶している。
【0105】
入力部220は、例えばカメラ等により撮像された人物の顔が含まれる動画像を、人物属性推定装置200に接続された外部装置から取得する。外部装置は、例えば人物属性推定装置200に直接又はネットワークを介して接続されたカメラ、USB(Universal Sirial Bus)メモリやHDD(Hard Disc Drive)、光ディスク等の記録媒体、あるいは、当該記録媒体に記憶された情報を読み取るデバイス等である。本実施形態にかかる人物属性推定装置200では、記憶部210に記憶された動画像又は入力部220が取得した動画像の少なくともいずれか一方の動画像から、人物の属性の推定を行う。
【0106】
顔検出処理部230は、動画像を構成する各フレーム画像中の人物の顔領域を検出する。顔検出処理部230により処理される画像は、例えば記憶部210又は入力部220から取得される。顔検出処理部230は、各フレーム画像中から顔領域を抜き出した顔画像を生成する。
【0107】
顔トラッキング処理部240は、あるフレーム画像に対して顔検出処理部230により生成された顔画像と、一つ前のフレーム画像中の顔画像との関連付けをする。顔トラッキング処理を行うことにより、各フレーム画像中の顔画像の大きさや位置関係から、同一人物の顔画像を認識することができる。また、顔トラッキング処理部240は、各フレーム画像中の顔画像の大小関係や、フレーム画像間での顔画像の移動量、移動速度を求めてもよい。
【0108】
顔特徴点抽出処理部250、顔向き正規化処理部260及び属性評価処理部270は、第1の実施形態にかかる顔特徴点抽出処理部140、顔向き正規化処理部150及び属性評価処理部160と同様の機能を有し、各フレーム画像中から抜き出した顔画像から、各処理を行う。
【0109】
信頼度演算処理部280は、顔向き正規化処理部260で生成された顔向き正規化画像ごとに、属性評価処理部270で求めた属性評価結果に対する信頼度を求める。本実施形態にかかる信頼度演算処理部280は、動画像を構成する各フレーム画像中の顔の映り方や動きに基づいて、各属性評価結果に対する信頼度を求める。
【0110】
人物属性推定処理部290は、第1の実施形態にかかる人物属性推定処理部180と同様の機能を有し、属性評価処理部270で求めた人物属性の評価結果と、信頼度演算処理部280で求めた信頼度とに基づいて人物属性を推定する。
【0111】
<2.処理フロー>
次に、
図8〜
図10を参照して、第2の実施形態にかかる人物属性推定装置200による人物属性推定処理について説明する。
図9は、同実施形態にかかる人物属性推定処理を示すフローチャートである。
【0112】
まず、顔検出処理部230は、記憶部210に記憶されたフレーム画像又は入力部220が取得したフレーム画像から、顔領域を抽出し、フレーム画像から顔領域を抜き出した顔画像を生成する顔検出処理を実行する(S200)。
【0113】
次いで、顔トラッキング処理部240は、フレーム画像ごとに顔検出処理により生成された顔画像に基づき、あるフレーム画像中の顔画像と一つ前のフレーム画像中の顔画像との関連付けをする(S204)。顔トラッキング処理により、各フレーム画像中の顔画像の大きさや位置関係から、同一人物の顔画像が認識される。
【0114】
顔トラッキング処理は、例えば、オプティカルフローにより、各フレーム画像中のあるポイント又は領域の変化量を追跡することで、同一人物の顔画像を認識するようにしてもよい。また、顔トラッキング処理は、各フレーム画像中の顔画像の大きさや位置関係から同一人物の顔画像を認識するようにしてもよい。顔トラッキング処理の結果、各フレーム画像中の顔画像の大小関係や、フレーム画像間での顔画像の移動量、移動速度等も求めることができる。
【0115】
図10は、顔トラッキング処理の一例を示す説明図である。動画像を構成するフレーム画像1〜3には、二人の人物の顔が映っている。各フレーム画像X(=1,2,3)に映る人物Y(=1,2)の顔画像を顔
(X,Y)とすると、顔トラッキング処理では、各フレーム画像Xの顔画像
(X,Y)と一つ前のフレーム画像X−1の顔画像
(X−1,Y)との関連付けが行われる。
【0116】
図10に示した例では、人物1の顔
(X,1)の位置は、それぞれフレーム画像1、フレーム画像2、フレーム画像3と移るにしたがって、一つ前のフレーム画像の顔画像の位置と重なり合う範囲で移動している。また、人物1の顔
(X,1)の大きさは、フレームが進むにつれて徐々に大きくなるように変化している。したがって、顔トラッキング処理部240は、顔
(1,1)、顔
(2,1)、顔
(3,1)が同一人物の顔画像であると認識する。
【0117】
また、人物2の顔
(X,2)の位置も、それぞれフレーム画像1、フレーム画像2、フレーム画像3と移るにしたがって、一つ前のフレーム画像の顔画像の位置と重なり合う範囲で移動している。また、人物2の顔
(X,2)の大きさは、すべてのフレーム画像1〜3においてほとんど変化がない。したがって、顔トラッキング処理部240は、顔
(1,2)、顔
(2,2)、顔
(3,2)が同一人物の顔画像であると認識する。
【0118】
複数のフレーム画像中の同一人物の顔画像が特定されると、次いで、顔特徴点抽出処理部250、顔向き正規化処理部260、及び属性評価処理部270は、それぞれ、第1の実施形態による顔特徴点抽出処理(S104)、顔正規化処理(S108)、及び属性評価処理(S112)と同様の手順で、顔特徴点抽出処理(S208)、顔向き正規化処理(S212)、及び属性評価処理(S216)を実行する。
【0119】
次いで、信頼度演算処理部280は、顔向き正規化処理部260で生成された同一人物の顔向き正規化画像ごとに、属性評価結果に対する信頼度を求める信頼度演算処理を実行する(S220)。本実施形態にかかる信頼度演算処理部280は、動画像を構成する各フレーム画像中の顔の映り方や動きに基づいて、各属性評価結果に対する信頼度を求める。
【0120】
例えば、カメラが設置された通路を、前方から人物が歩いてくるシーンを想定すると、人物が遠方にいる場合には、検出される顔画像の解像度は低くなり、また、遠方の人物の顔画像は焦点が合っていないことが考えられる。このような顔画像により生成される顔向き正規化画像に対する属性評価は、その精度が低くなる場合がある。したがって、信頼度演算処理部280は、例えば、顔画像の検出サイズが大きくなるほど信頼度が高くなるようにして信頼度を求めることができる。この場合の信頼度は、検出サイズの大きさをそのまま信頼度としてもよいし、検出サイズを適宜の段階に区分して信頼度を段階表示してもよい。
【0121】
また、動画像に映る人物が高速で移動する場合には、被写体がブレて撮像されることが考えられる。このような動画像から検出される顔画像では、生成される顔向き正規化画像に対する属性評価の精度が低くなる場合がある。したがって、信頼度演算処理部280は、例えば、フレーム画像中の顔画像の検出位置の、フレーム画像間での移動量の大きさが大きくなるほど信頼度が低くなるように信頼度を求めることができる。この場合の信頼度は、例えば、移動量又は移動速度が0の場合の信頼度を100とし、想定される最大の移動量又は移動速度に対応する信頼度を0として、移動量や移動速度の大きさに応じて信頼度を求めることができる。
【0122】
次いで、人物属性推定処理部290は、属性評価及び信頼度の演算が終了した同一人物の顔向き正規化画像のサンプル数iが、あらかじめ設定した閾値N以上となったか否かを判別する(S224)。サンプル数iが閾値Nに満たない場合(S224:No)、サンプル数iのカウンタ値をi=i+1とし(S232)、サンプル数iが閾値N以上となるまで、顔検出処理(S200)から信頼度演算処理(S220)までの各処理を繰り返す。
【0123】
サンプル数iが閾値Nに到達すると(S224:Yes)、人物属性推定処理部290は、第1の実施形態にかかる人物属性推定処理(S124)と同様の手順で、人物属性の属性評価結果と、各属性評価結果に対する信頼度に応じて設定された重み付けとに基づいて、顔画像の人物の属性をあらかじめ設定した粒度で推定する(S228)。
【0124】
本実施形態では、顔向き正規化画像に対する属性評価結果は、動画像中の顔の映り方や動きによって精度が異なり、顔画像の解像度が低い場合や顔の移動速度が速い場合等の顔向き正規化画像については、属性評価結果の信頼度が低くなる。このため、人物属性推定処理では、信頼度に応じて人物属性の評価結果に重み付けを行い、複数のフレーム画像から生成された顔向き正規化画像に対する属性評価結果を統合する。
【0125】
すなわち、信頼度が高くなるにしたがって重みを大きくすることにより、属性評価結果を統合する際に、信頼度の低い属性評価結果の影響を小さくすることができ、人物属性の推定精度を向上させることができる。例えば、信頼度の大きさによって、0.1〜0.9の範囲内の値の重みを設定する。その結果、信頼度が低い属性評価結果による影響を少なくすることができ、人物属性の推定精度を向上させることができる。
【0126】
このとき、第1の実施形態にかかる人物属性推定処理の場合と同様に、複数の属性評価結果を統合する際に、信頼度に閾値を設け、閾値よりも低い信頼度の属性評価結果のサンプルをあらかじめ除いて、属性評価結果を統合してもよいし、人物属性の推定結果の出力と併せて推定結果の信頼度を出力してもよい。
【0127】
<3.第2の実施形態による効果>
以上、本実施形態にかかる人物属性推定装置200について説明した。本実施形態にかかる人物属性推定装置200は、動画像を構成するフレーム画像から検出した顔画像のすべてについて顔向き正規化画像を生成し、各顔向き正規化画像に対して人物属性評価及び信頼度演算を行う。したがって、フレーム画像中の顔の撮像状態にかかわらず、その信頼度とともに属性評価結果が得られる。その結果、信頼度を考慮に入れつつ複数の属性評価結果を統合して、人物属性を推定することができる。
【0128】
また、本実施形態にかかる人物属性推定装置200は、動画像を構成するフレーム画像から検出した複数の顔向き正規化画像の属性評価結果を、各顔向き正規化画像に対する信頼度に応じた重み付けで統合し、最終的な人物属性を推定する。これにより、本実施形態にかかる人物属性推定装置200では、信頼度の低い属性評価結果の影響を小さくして人物属性の推定をすることができ、推定結果の信頼度を向上させることができる。また、本実施形態にかかる人物属性推定装置200は、あらかじめ設定した粒度の人物属性の推定結果が出力されるために、人物属性の推定結果の情報を利用するユーザが望む人物属性が得られるようになり、利用に適した人物属性の推定結果とすることができる。
【0129】
また、本実施形態にかかる人物属性推定処理では、動画像を構成する各フレーム画像中の顔の映り方や動きに基づいて、属性結果の信頼度を求める。これにより、顔画像が鮮明に映っているほど人物属性の推定に対する影響が大きくなるため、人物属性の推定精度を向上させることができる。
【0130】
<<その他の実施形態>>
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【0131】
例えば、上記の実施形態では、推定する人物属性として性別を推定したが、本発明はかかる例に限定されない。例えば、年齢や表情等を人物属性とする場合においても、本発明により人物属性を推定することができる。
【0132】
例えば、上記の第1の実施形態では、各顔向き正規化画像と、属性評価処理に用いる識別器の学習データとの類似度に応じた信頼度を求めたが、本発明はかかる例に限定されない。例えば、第2の実施形態で説明したように、画像中の顔画像の検出サイズに応じた信頼度としてもよい。
【0133】
例えば、上記の実施形態では、属性評価及び信頼度を求めた顔向き正規化画像のサンプル数iが閾値Nに到達した後に、属性評価結果と、当該属性評価結果に対する重み付けとに基づいて最終的に人物属性を推定したが、本発明はかかる例に限定されない。例えば、同一人物の顔画像である限り、サンプル数をカウントすることなく、一つの顔向き正規化画像に対する属性評価及び信頼度を求めるたびに、信頼度に応じた重み付けをしながら属性評価結果を統合して、人物属性を推定するようにしてもよい。このように属性結果と信頼度とに基づいて人物属性を推定することにより、リアルタイムで撮像された画像や動画像を利用して、人物属性を推定することが可能となる。
【0134】
例えば、上記の実施形態では、顔向き正規化処理として投影変換に基づいた3次元正規化法を例に説明したが、本発明はかかる例に限定されない。例えば、他の顔向き正規化処理法を用いて顔向き正規化処理を行ってもよい。
【0135】
例えば、上記の実施形態では、属性評価処理においてHaar−like特徴を特徴量としVector Boostを識別器として属性評価処理をしたが、本発明はかかる例に限定されない。例えば、エッジ量を特徴量としてもよい。また、例えば、SVM(Support Vector Machine)を識別器としてもよい。
【0136】
例えば、上記の第1の実施形態では、顔検出処理部130により生成される顔画像を使用して、ステップS104からステップS128の処理を行ったが、本発明はかかる例に限定されない。例えば、顔検出処理により抽出される画像の顔領域を使用して、ステップS104からステップS128の処理を行ってもよい。同様に、上記の第2の実施形態では、顔検出処理部230により生成される顔画像を使用して、ステップS204からステップS232の処理を行ったが、例えば、顔検出処理により抽出される画像の顔領域を使用して、ステップS204からステップS232の処理を行ってもよい。
【0137】
例えば、上記の実施形態では、人物属性推定装置100,200は、記憶部110.210と入力部120,220を備えるが、本発明はかかる例に限定されない。例えば、人物属性推定装置100,200は、記憶部110,210と入力部120,220のいずれか一方のみを備える構成でもよい。