(58)【調査した分野】(Int.Cl.,DB名)
前記顔テクスチャ評価値算出部は、前記顔テクスチャ評価値を算出し、前記顔形状候補の各顔部品のそれぞれについて、前記顔画像と前記顔部品との一致度を表す顔部品テクスチャ評価値を算出し、
前記尤度算出部は、前記第1の尤度を算出し、前記顔形状候補の前記顔部品のそれぞれについて、前記基準となる顔形状と前記顔部品との間の第2の尤度を算出し、
前記相関評価部は、前記第1の相関評価値を算出し、前記顔形状候補の前記顔部品のそれぞれについて、前記顔部品テクスチャ評価値と前記第2の尤度との相関の強さを表す第2の相関評価値を算出し、
前記抽出部は、前記第1の相関評価値が前記第1の閾値よりも低い顔形状候補の各顔部品のうち、前記第2の相関評価値が第2の閾値より低い顔部品を前記計測対象として抽出する、
請求項1に記載の計測対象抽出装置。
前記抽出部は、前記第2の相関評価値が前記第2の閾値より低い顔部品のうち、前記顔部品の総数に対する所定の割合の数の顔部品を、前記第2の相関評価値が低い順に選択し、選択した顔部品を前記計測対象として抽出する、
請求項2に記載の計測対象抽出装置。
前記尤度算出部は、前記複数の顔形状候補のそれぞれについて、前記顔形状候補を表す複数の特徴点の三次元座標と、前記基準となる顔形状の前記複数の特徴点に対応する位置の三次元座標との間の変化量を表す前記第1の尤度を算出する、
請求項1に記載の計測対象抽出装置。
前記尤度算出部は、前記顔形状候補の各顔部品の位置と前記基準となる顔形状の位置とを比較することにより、前記顔形状候補の各顔部品の位置と、前記各顔部品を動かす表情筋の可動範囲との一致度を表す前記第1の尤度を算出する、
請求項2に記載の計測対象抽出装置。
前記再評価部は、前記抽出された顔形状候補のそれぞれについて、前記三次元形状と前記顔形状候補の三次元座標との比較結果、および、前記顔テクスチャ評価値に基づいて、前記第2の形状候補評価値を算出する、
請求項8に記載の顔形状推定装置。
前記再評価部は、前記抽出された顔形状候補および前記三次元形状に関する情報を用いて新たな顔形状候補を生成し、前記新たな顔形状候補のそれぞれに対応する、前記顔テクスチャ評価値と前記第1の尤度とに基づいて、前記新たな顔形状候補に対する前記第2の形状候補評価値を算出する、
請求項8に記載の顔形状推定装置。
前記決定部は、前記第1の形状候補評価値および前記第2の形状候補評価値を用いて算出される重みに基づいて、前記複数の顔形状候補の重み付き平均を求めることにより、前記推定形状を決定する、
請求項8に記載の顔形状推定装置。
【発明を実施するための形態】
【0016】
以下、本発明の各実施の形態について、図面を参照して詳細に説明する。
【0017】
<実施の形態1>
図1は、本実施の形態に係る計測対象抽出装置100の主要構成を示すブロック図である。
図1に示す計測対象抽出装置100は、主に、顔テクスチャ評価値算出部103と、顔表情変化尤度算出部104と、相関評価部105と、抽出部107とを有する。計測対象抽出装置100は、複数の顔形状候補のうち、三次元形状の計測対象となる候補を抽出する。
【0018】
計測対象抽出装置100において、顔テクスチャ評価値算出部103は、複数の顔形状候補のそれぞれについて、入力される顔画像と顔形状候補のテクスチャとの一致度を表す顔テクスチャ評価値を算出する。顔表情変化尤度算出部104は、複数の顔形状候補のそれぞれについて、基準となる顔形状と顔形状候補との間の第1の尤度(顔表情変化尤度)を算出する。相関評価部105は、複数の顔形状候補のそれぞれについて、顔テクスチャ評価値と第1の尤度との相関の強さを表す第1の相関評価値を算出する。抽出部107は、複数の顔形状候補のうち、第1の相関評価値が第1の閾値よりも低い顔形状候補を計測対象として抽出する。
【0019】
[計測対象抽出装置100の構成]
図2は、本実施の形態に係る計測対象抽出装置100の構成を示すブロック図である。
図2において、計測対象抽出装置100は、入力部101と、顔形状候補保持部102と、顔テクスチャ評価値算出部103と、顔表情変化尤度算出部104と、相関評価部105と、判断部106と、抽出部107とを有する。
【0020】
入力部101は、外部から入力される二次元の画像を取得し、顔テクスチャ評価値算出部103へ出力する。入力部101が取得する画像は、例えば、ハンドルの上、又は、ダッシュボードの上等、顔を撮影できる場所に設置されたカメラによって撮像された画像でもよく、予め撮影されたビデオ映像データから1フレームずつデータを切り出した画像でもよく、又は、ストレージ等に格納されている画像でもよい。また、入力部101に入力される画像は、例えば、CMOS(Complementary Metal Oxide Semiconductor)イメージセンサおよびレンズを備えたデジタルカメラによって撮影されるPPM(Portable Pix Map file format)形式の画像でもよい。
【0021】
顔形状候補保持部102は、少なくとも1つ以上の顔形状候補を保持し、顔形状候補を顔テクスチャ評価値算出部103および顔表情変化尤度算出部104へ出力する。「顔形状候補」は、顔の複数の特徴点の座標(三次元座標)と、各特徴点の輝度情報であるテクスチャ(各特徴点の画像)とからなるデータである。例えば、顔形状候補は、顔の目尻、目頭、口角、眉頭等の顔部品をそれぞれ示す特徴点の三次元座標と、特徴点周辺の輝度分布を示すテクスチャとで表現される。
【0022】
顔テクスチャ評価値算出部103は、入力部101から入力される画像(入力画像)と、顔形状候補保持部102から入力される顔形状候補とを比較して、入力画像に対する顔テクスチャ評価値を算出する。顔テクスチャ評価値算出部103は、顔形状候補のそれぞれについての顔テクスチャ評価値を相関評価部105へ出力する。
【0023】
「顔テクスチャ評価値」は、顔形状候補のテクスチャ(顔形状候補に含まれる特徴点のテクスチャ)と、入力画像との一致度(二次元での一致度)を表す値である。顔テクスチャ評価値は、特徴点のテクスチャと入力画像との一致度が高いほど、高い値となる。例えば、顔テクスチャ評価値算出部103は、或る顔形状候補に対して、当該顔形状候補の複数の特徴点における入力画像との一致度(評価値)をそれぞれ算出し、各特徴点の一致度(評価値)の総和を、当該顔形状候補の顔テクスチャ評価値としてもよい。
【0024】
具体的には、顔テクスチャ評価値算出部103は、まず、入力画像上に顔形状候補の各特徴点を投影し、各特徴点の入力画像平面上での二次元座標を算出する。次いで、顔テクスチャ評価値算出部103は、算出した二次元座標周辺の入力画像(テクスチャ)と、顔形状候補の各特徴点のテクスチャとの一致度を算出する。一致度は、例えば、SAD(Sum of Absolute Difference)または正規化相互相関によって算出される。
【0025】
顔表情変化尤度算出部104は、顔形状候補保持部102から入力される顔形状候補を用いて顔表情変化尤度を算出し、顔形状候補のそれぞれについての顔表情変化尤度を相関評価部105へ出力する。「顔表情変化尤度」は、表情変化した顔の自然さを表す値である。すなわち、「顔表情変化尤度」は、顔形状候補の表す顔の形状が顔としてどの程度自然な形状をしているかを表す値である。
【0026】
顔表情変化尤度は、基準となる顔形状と顔形状候補との間の尤度である。例えば、基準となる顔形状を無表情時の顔形状とした場合、無表情の状態からの変化量が大きいほど、顔表情変化尤度は低い値となる。例えば、顔表情変化尤度算出部104は、或る顔形状候補の特徴点の三次元座標と、無表情の顔形状(基準となる顔形状)の上記特徴点に対応する位置の三次元座標との間の変化量(つまり、距離)の総和に反比例する関数の値を、当該顔形状候補の顔表情変化尤度としてもよい。
【0027】
相関評価部105は、顔形状候補のそれぞれについて、顔テクスチャ評価値算出部103から入力される顔テクスチャ評価値と、顔表情変化尤度算出部104から入力される顔表情変化尤度との相関の強さを表す相関評価値を算出し、相関評価値を判断部106へ出力する。「相関評価値」は、例えば、顔テクスチャ評価値および顔表情変化尤度で表されるサンプル集合における、顔テクスチャ評価値と顔表情変化尤度との比例直線からの距離の逆数等で表される。この場合、顔テクスチャ評価値と顔表情変化尤度との相関が強いほど(比例直線からの距離が小さいほど)、相関評価値は大きい値をとる。
【0028】
判断部106は、相関評価部105から入力される、各顔形状候補の相関評価値が所定の閾値よりも小さいか否かを判断し、判断結果を抽出部107へ出力する。
【0029】
抽出部107は、顔形状候補保持部102が保持している顔形状候補のうち、判断部106から入力される判断結果において相関評価値が所定の閾値よりも低い顔形状候補を、三次元形状の計測対象として抽出する。すなわち、抽出部107は、顔テクスチャ評価値と顔表情変化尤度との相関が弱い顔形状候補を抽出する。これにより、顔形状候補保持部102で保持されている複数の顔形状候補のうち、抽出部107で抽出された顔形状候補のみが三次元形状の計測(三次元測距)の対象となる。
【0030】
なお、本実施の形態では、計測対象抽出装置100において、顔表情変化尤度を算出する基準として、無表情時の顔形状を用いる場合について説明している。しかし、例えば、所定の時間だけ過去に推定した顔形状が信用できる場合には、計測対象抽出装置100は、顔表情変化尤度を算出する基準として、過去に推定した顔形状を用いてもよい。例えば、
図3に示す計測対象抽出装置100において、顔形状候補保持部102aは、所定時間だけ過去に取得された顔の形状に関する情報(形状情報)を保持してもよい。形状情報は、
図2における顔形状候補と同様、顔の複数の特徴点の座標(三次元座標)と、各特徴点の輝度情報であるテクスチャ(各特徴点の画像)とからなる。また、所定の時間だけ過去に取得された顔に関する形状情報は、実際に計測された値でもよく、別のシステムで推定された値でもよく、後述する顔形状推定装置200(
図5)における推定結果でもよい。
【0031】
また、計測対象抽出装置100において、顔表情変化尤度を算出する基準として、無表情時の顔形状を用いる場合には、顔表情変化尤度を予め算出することも可能である。よって、例えば、
図4に示す計測対象抽出装置100において、顔形状候補保持部102bは、予め算出された、各顔形状候補の顔表情変化尤度を保持し、顔表情変化尤度を相関評価部105に直接出力してもよい。つまり、この場合、顔表情変化尤度算出部104が不要となる。
【0032】
[顔形状推定装置200の構成]
図5は、本実施の形態に係る顔形状推定装置200の構成を示すブロック図である。
図5において、顔形状推定装置200は、計測対象抽出装置100(
図2)と、形状候補評価部201と、三次元計測部202と、再評価部203と、決定部204とを有する。
【0033】
以下では、顔形状推定装置200が複数の顔形状候補に基づいて顔形状を推定する場合を一例として説明する。
【0034】
形状候補評価部201には、計測対象抽出装置100の顔テクスチャ評価値算出部103から顔テクスチャ評価値が入力され、計測対象抽出装置100の顔表情変化尤度算出部104から顔表情変化尤度が入力される。形状候補評価部201は、顔テクスチャ評価値および顔表情変化尤度を用いて、各顔形状候補のそれぞれについての形状候補評価値を算出し、形状候補評価値を決定部204へ出力する。「形状候補評価値」は、入力画像撮影時の顔形状と顔形状候補との一致度(評価値)を表す値であり、例えば、顔テクスチャ評価値と顔表情変化尤度との積で表される。
【0035】
三次元計測部202は、計測対象抽出装置100の抽出部107で三次元形状の計測対象(三次元測距対象)として抽出された顔形状候補が入力画像へ投影された画像位置の三次元形状を計測(測距)し、各顔形状候補の計測した三次元形状を再評価部203へ出力する。例えば、三次元計測部202は、顔形状候補を入力画像平面へ投影し、投影した画像領域に対して測距を行う。測距は、例えば、レーザーレンジセンサまたはステレオカメラ等の距離センサを利用することで実施される。
【0036】
再評価部203は、三次元計測部202から入力された三次元形状と、抽出部107から入力された顔形状候補とに基づいて、三次元形状の計測対象である顔形状候補のそれぞれについての新評価値を算出し、新評価値を決定部204へ出力する。「新評価値」は、顔形状候補と三次元形状との一致度を表す値である。新評価値は、顔形状候補と三次元形状との一致度が高いほど、高い値となる。例えば、再評価部203は、抽出部107から入力された顔形状候補の各特徴点(三次元座標)と三次元形状(三次元座標)とを比較して、当該顔形状候補の複数の特徴点における三次元形状との一致度(評価値)をそれぞれ算出し、各特徴点の一致度(評価値)の総和と、当該顔形状候補の顔テクスチャ評価値との積を、当該顔形状候補の新評価値としてもよい。すなわち、新評価値(三次元形状から求まる評価値)は、形状候補評価値(二次元画像から求まる評価値)に相当する値である。
【0037】
決定部204は、顔形状候補、形状候補評価部201から入力される形状候補評価値および再評価部203から入力される新評価値に基づいて、顔形状候補保持部102が保持する顔形状候補のうち、入力画像(顔画像)に対する推定形状とする候補を決定する。例えば、決定部204は、新評価値および形状候補評価値を含む評価値のうち、最も大きい値に対応する顔形状候補を、入力画像に対する顔の推定形状として決定する。
【0038】
なお、決定部204は、新評価値および形状候補評価値を用いて算出される重みに基づいて、複数の顔形状候補(三次元座標)の重み付き平均を求めることにより、入力画像に対する推定形状を決定してもよい。ただし、決定部204は、新評価値を算出した顔形状候補については、形状候補評価値ではなく、新評価値を重みとして用いる。また、決定部204は、新評価値または形状候補評価値を重みとして直接使用せず、各評価値を二乗した値を使用したり、新評価値または形状候補評価値を変数としたシグモイド関数のような単調増加関数を用いたりしてもよい。
【0039】
[顔形状推定装置200の動作]
以上の構成を有する顔形状推定装置200の動作について説明する。
図6は、顔形状推定装置200による顔形状の推定処理を示すフロー図である。例えば、カメラによって画像が撮像される場合、
図6に示す処理フローは、撮影作業の開始と共にスタートする。また、撮影作業は、ユーザの操作によって開始されてもよく、外部からの何らかの信号をトリガとして開始されてもよい。
【0040】
図6に示すステップ(以下、「S」で表す)101において、入力部101は、人物の顔を撮像した画像(入力画像)を取得し、入力画像を顔テクスチャ評価値算出部103へ出力する。
【0041】
S102において、顔テクスチャ評価値算出部103は、顔形状候補保持部102から入力される顔形状候補と、S101で入力部101から入力された入力画像とから、各顔形状候補の顔テクスチャ評価値を算出する。
【0042】
S103において、顔表情変化尤度算出部104は、顔形状候補保持部102から入力される顔形状候補の顔表情変化尤度を算出する。
【0043】
S104において、形状候補評価部201は、S102で算出された顔テクスチャ評価値と、S103で算出された顔表情変化尤度とから、顔形状候補の形状候補評価値を算出する。例えば、形状候補評価値は、顔テクスチャ評価値と顔表情変化尤度との積または和として算出される。
【0044】
S105において、相関評価部105は、S102で算出された顔テクスチャ評価値と、S103で算出された顔表情変化尤度との相関評価値eを算出する。例えば、相関評価値eは、以下の方法で算出される。まず、相関評価部105は、複数の顔形状候補の顔テクスチャ評価値および顔表情変化尤度をサンプル集合とし、顔テクスチャ評価値および顔表情変化尤度を変数としたときの第一主成分を算出し、第一主成分を表す直線を取得する。なお、相関評価部105は、第一主成分を表す直線の代わりに、予め取得した顔テクスチャ評価値および顔表情変化尤度の比例直線を用いてもよい。次に、相関評価部105は、第一主成分である直線と評価対象である顔形状候補(顔テクスチャ評価値および顔表情変化尤度で表されるサンプル点)との間の距離dを算出する。そして、相関評価部105は、次式(1)に従って相関評価値eを算出する。
【数1】
【0045】
このとき、入力画像の顔表情が、顔表情変化尤度を算出した際に使用した無表情状態の顔形状(または、所定の時刻だけ過去に取得した顔形状。つまり、基準となる顔形状)から大きく変化していない場合、顔テクスチャ評価値および顔表情変化尤度の関係は以下のようになる。入力画像と近似する顔形状候補では、顔テクスチャ評価値および顔表情変化尤度が共に高い値となり、入力画像と大きく異なる顔形状候補では、顔テクスチャ評価値および顔表情変化尤度が共に低い値となる(
図7参照)。したがって、顔テクスチャ評価値および顔表情変化尤度のうち、一方が高く、他方が低いという状態は生じにくいため、サンプル集合は第一主成分を表す直線の周辺に分布することになる(
図7参照)。
【0046】
一方、入力画像の顔表情が、顔表情変化尤度を算出した際に使用した無表情状態の顔形状(または、所定の時刻だけ過去に取得した顔形状。つまり、基準となる顔形状)から大きく変化している場合、入力画像と近似しない顔形状候補は、顔テクスチャ評価値が低くなるため、顔テクスチャ評価値および顔表情変化尤度が共に低い値となるが(
図7参照)、入力画像(二次元画像)上ではその違いがあまり現れない状況では、上述したような分布(
図7参照)にはならない。
【0047】
例えば、口を半開きにした顔形状、および、口を突き出した顔形状は、二次元平面に投影した顔の特徴点の位置はほぼ同じ位置となる。また、上記2種類の顔形状と、基準となる顔形状である無表情時の顔形状とは、二次元画像上では近似している。よって、入力画像(二次元画像)上では、上記2種類の顔形状を表す顔形状候補に対する顔テクスチャ評価値は双方とも高い値となる(
図8参照)。すなわち、二次元画像上では、上記2種類の顔形状候補は区別しにくいと言える。一方、口を半開きにした顔形状は無表情状態の顔形状(基準となる顔形状)と比較して表情変化が小さいため、顔表情変化尤度が高い値となるのに対し(
図8参照)、口を突き出した顔形状候補は無表情状態の顔形状と比較して表情変化が大きいため、顔表情変化尤度は低い値となる(
図8参照)。したがって、口を半開きにした顔形状候補の場合、第一主成分を表す直線の周辺に存在するため、相関評価値は高い値となるのに対し、口を突き出した顔形状候補の場合、第一主成分を表す直線から大きく離れて分布するため、相関評価値は低い値となる。
【0048】
このように、顔形状(顔の表情)によっては、二次元平面上での評価値(顔テクスチャ評価値)のみで区別できる顔形状(相関評価値が高い顔形状候補)、および、二次元平面上での評価値のみでは区別できない顔形状(相関評価値が低い顔形状候補)が存在する。そのため、二次元平面上での評価値のみでは区別できない顔形状を区別するために、顔形状推定装置200は、相関評価値が低い顔形状候補が二次元平面上に写っている領域の三次元計測を行い、実際の三次元形状を確認する。
【0049】
そこで、計測対象抽出装置100は、以下の処理(S106,S107)によって、三次元形状の計測(測距)が必要となる顔形状候補を抽出する。
【0050】
S106において、判断部106は、各顔形状候補に対して、S105で算出された相関評価値が所定の閾値よりも小さいか否かを判断する。
【0051】
S107において、抽出部107は、S106で所定の閾値よりも小さい相関評価値を持つと判断された顔形状候補を抽出する。抽出された顔形状候補は、三次元計測(三次元測距)の対象となる。
【0052】
S108において、三次元計測部202は、S107で抽出された顔形状候補(閾値よりも小さい相関評価値を持つ顔形状候補)の三次元形状を計測(測距)する。
【0053】
S109において、再評価部203は、S108で取得した三次元形状(計測結果)と、顔形状候補の各特徴点の三次元座標との比較結果、および、顔テクスチャ評価値に基づいて新評価値を算出する。例えば、再評価部203は、三次元形状(計測結果)と、顔形状候補の特徴点の三次元座標との比較の際、まず、顔形状候補の特徴点の三次元座標と、二次元平面上に投影した特徴点において計測結果から取得した三次元座標との距離を、特徴点毎に算出する。次いで、再評価部203は、各特徴点で算出した距離の総和を算出し、距離の総和を比較結果として取得する。
【0054】
また、新評価値は、上述したように、計測結果と顔形状候補との比較結果を反映し、形状候補評価値の代わりとなる値であり、比較結果の値が小さいほど高い値となる。再評価部203は、例えば、次式(2)に従って、新評価値rを算出する。
【数2】
【0055】
ただし、e
tは、顔テクスチャ評価値であり、Sは、計測結果と顔形状候補との間の距離の総和(比較結果)である。なお、式(2)は、顔表情変化尤度の値が0から1の値をとる場合の式である。
【0056】
S110において、決定部204は、S104で算出された全ての顔形状候補の形状候補評価値と、S109で算出された新評価値とに基づいて、入力画像に対する推定顔形状を決定する。決定部204は、例えば、全顔形状候補の三次元座標の中から、新評価値および形状候補評価値を含む全ての評価値のうち、最も高い値を持つ顔形状候補を推定形状として決定する。
【0057】
S111において、顔形状推定装置200は、顔形状の推定処理が終了した場合(S111:YES)、
図6に示す処理を終了させ、顔形状の推定処理が終了していない場合(S111:NO)、S101の処理に戻る。
【0058】
このように、本実施の形態では、計測対象抽出装置100は、二次元画像のみでは区別できない顔形状候補を抽出して、三次元形状の計測対象とする。具体的には、計測対象抽出装置100は、顔テクスチャ評価値と顔表情変化尤度との相関評価値が閾値より小さい顔形状候補を抽出する。例えば、計測対象抽出装置100は、顔テクスチャ評価値が高い値であるものの、顔表情変化尤度が低い値となる顔形状候補(例えば、
図8における口を突き出した顔形状候補)のみを抽出する。
【0059】
また、顔形状推定装置200において、形状候補評価部201が、複数の顔形状候補のそれぞれについて、顔テクスチャ評価値と顔表情変化尤度(第1の尤度)とに基づいて、形状候補評価値(第1の形状候補評価値)を算出し、三次元計測部202が、計測対象抽出装置100で計測対象として抽出された顔形状候補の三次元形状を計測し、再評価部203が、抽出された顔形状候補のそれぞれについて、三次元形状を用いて、新評価値(第2の形状候補評価値)を算出し、決定部204が、形状候補評価値(第1の形状候補評価値)および新評価値(第2の形状候補評価値)に基づいて、複数の顔形状候補の中から、顔画像に対する推定形状とする候補を決定する。
【0060】
これにより、顔形状推定装置200は、計測対象抽出装置100で抽出された顔形状候補についてのみ、三次元形状を計測(測距)すればよい。すなわち、計測対象抽出装置100によって、顔形状推定装置200での三次元測距の対象を限定する。こうすることで、顔形状推定装置200は、全ての顔形状候補に対して三次元形状を計測する必要が無くなり、三次元形状を計測するための計算量を低く抑えることが可能となる。
【0061】
また、計測対象抽出装置100は二次元画像のみでは区別できない顔形状候補を抽出し、顔形状推定装置200は抽出された顔形状候補について三次元形状を計測し、計測した三次元形状に基づいて形状候補評価値を再評価する。
【0062】
例えば、
図8において、三次元計測の対象となる顔形状候補である口を突き出した顔形状候補については、顔テクスチャ評価値が高く、かつ、顔表情変化尤度が低くなるので、形状候補評価部201で算出される形状候補評価値は、口半開きの顔形状候補と比較して、小さい値になる。これに対して、顔形状推定装置200が口を突き出した顔形状候補に対して三次元形状を計測した結果、三次元形状と顔形状候補との差異(式(2)に示す距離S)が小さい場合には、新評価値rは、口半開きの顔形状候補の形状候補評価値よりも高い値になる可能性がある。この場合、決定部204は、口を突き出した顔形状候補を入力画像に対する推定形状として決定する。すなわち、顔形状推定装置200は、二次元画像により算出された形状候補評価値が小さい顔形状候補であっても、三次元形状を確認した結果、入力画像との差異が小さい場合には、形状候補評価値に相当する新評価値として高い値を算出する。つまり、顔形状推定装置200は、三次元形状の計測対象である顔形状候補の評価値を、形状候補評価値から新評価値に更新していると言える。
【0063】
こうすることで、二次元画像のみでは安定して検出することが困難な立体的な表情変化が発生した顔の形状についても高精度で推定することができる。
【0064】
よって、本実施の形態によれば、二次元画像のみでは安定して検出することが困難な立体的な表情変化が発生した顔の形状を高精度かつ低計算量で推定することができる。
【0065】
<実施の形態2>
[計測対象抽出装置300の構成]
図9は、本実施の形態に係る計測対象抽出装置300の構成を示すブロック図である。なお、
図9において、実施の形態1(
図2)と同一構成である部分には同一の符号を付してその説明を省略する。
【0066】
図9において、顔テクスチャ評価値算出部301は、顔テクスチャ評価値算出部103と同様の処理(顔テクスチャ評価値の算出処理)に加え、入力部101から入力される画像(入力画像)と、顔形状候補保持部102から入力される顔形状候補の各顔部品とを比較して、顔部品毎の評価値(顔部品テクスチャ評価値)を算出する。「顔部品テクスチャ評価値」は、顔形状候補の特徴点毎、若しくは、目又は鼻等の顔部品毎に算出される値であり、それぞれの顔部品に対応する領域での入力画像と顔形状候補との一致度を表す。
【0067】
例えば、顔テクスチャ評価値算出部301は、まず、入力画像上に顔形状候補の各特徴点を投影し、各特徴点の入力画像平面上での二次元座標を算出する。次いで、顔テクスチャ評価値算出部301は、算出した二次元座標周辺の入力画像(テクスチャ)と、顔形状候補の顔部品の各特徴点のテクスチャとの一致度を算出する。一致度は、例えば、SAD(Sum of Absolute Difference)又は正規化相互相関によって算出される。
【0068】
なお、顔テクスチャ評価値算出部301は、実施の形態1のように顔全体でのテクスチャの一致度として顔テクスチャ評価値を表すのではなく、全ての顔部品の顔部品テクスチャ評価値の総和として顔テクスチャ評価値を表してもよい。
【0069】
顔表情変化尤度算出部302は、顔表情変化尤度算出部104と同様の処理(顔表情変化尤度の算出処理)に加え、顔形状候補保持部102から入力される顔形状候補の顔部品のそれぞれについて、顔部品表情変化尤度を算出する。「顔部品表情変化尤度」は、顔形状候補の各顔部品の自然さを表す値(すなわち、顔部品の形状変化がどの程度顔として自然な形状をしているかを表す値)である。
【0070】
具体的には、顔表情変化尤度算出部302は、顔形状候補の各顔部品のそれぞれについて、基準となる顔形状の顔部品と顔形状候補の顔部品との間の尤度として顔部品表情変化尤度を算出する。例えば、顔表情変化尤度算出部302は、所定の時刻だけ過去に取得した顔形状(基準となる顔形状)における各特徴点の座標と、顔形状候補の各顔部品に対応する特徴点の座標との距離に反比例する関数の値を、当該顔部品の顔部品表情変化尤度としてもよい。または、顔表情変化尤度算出部302は、予め取得した無表情時の顔形状(基準となる顔形状)での各顔部品と、顔形状候補の各顔部品に対応する特徴点の座標との距離に反比例する関数の値を、当該顔部品の顔部品表情変化尤度としてもよい。
【0071】
相関評価部303は、相関評価部105と同様の処理(相関評価値の算出処理)に加え、顔テクスチャ評価値算出部301から入力される顔部品テクスチャ評価値と、顔表情変化尤度算出部302から入力される顔部品表情変化尤度との相関の強さを表す顔部品相関評価値を算出する。このように、計測対象抽出装置300では、顔全体の相関評価値に加え、顔部分テクスチャ評価値と顔部分表情変化尤度との相関を表す顔部分相関評価値が顔部品毎に求められる。
【0072】
判断部304は、相関評価部303から入力される、各顔形状候補の相関評価値が所定の閾値よりも小さいか否かを判断する。さらに、判断部304は、相関評価値が所定の閾値よりも小さい顔形状候補について、各顔部品の顔部品相関表価値が所定の閾値よりも小さいか否かを判断する。判断部304は、判断結果を抽出部305へ出力する。
【0073】
抽出部305は、判断部304の判断結果に基づいて、顔形状候補保持部102が保持している顔形状候補において、相関評価値が閾値よりも低い顔形状候補の各顔部品のうち、顔部品相関評価値が閾値より低い顔部品のみを三次元形状の計測対象として抽出する。
【0074】
[顔形状推定装置400の構成]
図10は、本実施の形態に係る顔形状推定装置400の構成を示すブロック図である。なお、
図10において、実施の形態1(
図5)と同一構成である部分には同一の符号を付してその説明を省略する。
【0075】
図10において、三次元計測部401は、計測対象抽出装置300の抽出部305で抽出された顔形状候補の顔部品についてのみ、三次元形状を計測(測距)する。
【0076】
再評価部402は、三次元計測部401で計測された三次元形状(計測結果)を用いて、新評価値を算出する。すなわち、再評価部402は、顔部品の三次元形状と顔形状候補の顔部品との比較を行い、当該顔部品を含む顔形状候補に対する新評価値を算出する。
【0077】
[顔形状推定装置400の動作]
以上の構成を有する顔形状推定装置400の動作について説明する。
図11は、顔形状推定装置400による顔形状の推定処理を示すフロー図である。なお、
図11において、実施の形態1(
図6)と同一処理には同一符号を付してその説明を省略する。
【0078】
図11に示すS201において、顔テクスチャ評価値算出部301は、各顔形状候補の顔テクスチャ評価値、および、各顔形状候補の各顔部品に対する顔部品テクスチャ評価値を算出する。
【0079】
S202において、顔表情変化尤度算出部302は、各顔形状候補の顔表情変化尤度、および、各顔形状候補の各顔部分に対する顔部品表情変化尤度を算出する。
【0080】
S203において、形状候補評価部201は、例えば、S201で算出された顔部品テクスチャ評価値およびS202で算出された顔部品表情変化尤度を用いて、顔形状候補の形状候補評価値を算出する。例えば、形状候補評価値は、各顔部品の顔部品テクスチャ評価値と顔部品表情変化尤度との積の総和として算出される。なお、形状候補評価部201は、実施の形態1と同様、S201で算出された顔テクスチャ評価値およびS202で算出された顔表情変化尤度を用いて、顔形状候補の形状候補評価値を算出してもよい。
【0081】
S204において、相関評価部303は、S201で算出された顔テクスチャ評価値と、S202で算出された顔表情変化尤度との相関評価値eと、S201で算出された各顔部品の顔部品テクスチャ評価値と、S202で算出された顔部品表情変化尤度との顔部品相関評価値e
pを算出する。
【0082】
顔部品相関評価値e
pは、実施の形態1における相関評価値eの算出と同様にして算出される。具体的には、相関評価部303は、まず、複数の顔形状候補の各顔部品テクスチャ評価値および顔部品表情変化尤度をサンプル集合とし、顔部品テクスチャ評価値および顔部品表情変化尤度を変数としたときの第一主成分を算出し、第一主成分を表す直線を取得する。なお、相関評価部303は、第一主成分を表す直線の代わりに、予め取得した顔テクスチャ評価値および顔表情変化尤度の比例直線を用いてもよい。次に、相関評価部303は、第一主成分である直線と評価対象である顔形状候補(顔部品)との間の距離d
pを算出する。そして、相関評価部303は、次式(3)に従って、顔部品相関評価値e
pを算出する。
【数3】
【0083】
S205において、判断部304は、各顔形状候補に対してS204で算出された相関評価値が所定の閾値よりも小さいか否かを判断する。さらに、判断部304は、相関評価値が閾値よりも小さい顔形状候補の各顔部品に対して、S204で算出された顔部品相関評価値が所定の閾値よりも小さいか否かを判断する。
【0084】
S206において、抽出部305は、S205で所定の閾値よりも小さい顔部品相関評価値を持つと判断された顔部品を抽出する。すなわち、相関評価値が閾値よりも小さい顔形状候補の顔部品のうち、顔部品相関評価値が閾値よりも小さい顔部品が、三次元計測(三次元測距)の対象となる。
【0085】
なお、抽出部305は、三次元計測の対象として、例えば、相関評価値が閾値よりも小さい顔形状候補において、閾値よりも小さい顔部品相関評価値e
pを持つ顔部品の全てを選択してもよい。または、抽出部305は、相関評価値が閾値よりも小さい顔形状候補において、顔部品相関評価値e
pが閾値より低い顔部品のうち、顔部品の総数に対する所定の割合の顔部品を顔部品相関評価値e
pが低いものから順に選択し、選択された顔部品を三次元計測の対象として抽出してもよい。
【0086】
S207において、三次元計測部401は、S206で抽出された顔形状候補の顔部品(顔部品相関評価値が閾値よりも小さい顔部品)の領域に対してのみ、三次元形状を計測(測距)する。なお、顔部品に対する測距の方法は、実施の形態1と同様でもよい。
【0087】
S208において、再評価部402は、S206で取得した顔部品の三次元形状(計測結果)と、顔形状候補の各顔部品との比較を行い、比較結果に基づいて新評価値を算出する。
【0088】
再評価部402は、例えば、顔形状候補の各顔部品の特徴点の三次元座標と、二次元平面上に投影した特徴点において計測結果から取得した三次元座標との距離を、特徴点毎に算出する。次いで、再評価部402は、各特徴点で算出した距離を比較結果として取得する。この際、再評価部402は、計測結果と、特徴点の三次元座標との比較を、三次元形状の計測(測距)を行った顔部品に含まれる特徴点に対してのみ行う。
【0089】
新評価値は、実施の形態1と同様、計測結果と顔形状候補との比較結果を反映し、形状候補評価値の代わりとなる値であり、比較結果の値が小さいほど高い値となる。再評価部402は、例えば、次式(4)に従って、新評価値rを算出する。
【数4】
【0090】
ただし、r'は、三次元形状を計測していない顔部品の顔部品テクスチャ評価値と顔部品表情変化尤度との積の総和であり、e
tpは、三次元形状を計測した各顔部品の顔テクスチャ評価値であり、S
pは、三次元形状を計測した各顔部品の計測結果と顔部品の特徴点との間の距離である。なお、式(4)は、表情変化尤度の値が0から1の値をとる場合の式である。
【0091】
このようにして、本実施の形態では、計測対象抽出装置300は、顔全体での評価を行うとともに、顔部品毎にも評価を行う。これにより、実施の形態1と同様、顔形状推定装置200での三次元形状の計測対象となる顔形状候補を限定することができる。また、本実施の形態によれば、三次元形状の計測対象となる顔形状候補において、三次元計測の対象となる顔部品をさらに限定する。こうすることで、実施の形態1と比較して、計算量をさらに削減して、顔の形状を高精度で推定することができる。
【0092】
<実施の形態3>
図12は、本実施の形態に係る計測対象抽出装置500の構成を示すブロック図である。なお、
図12において、実施の形態2(
図9)と同一構成である部分には同一の符号を付してその説明を省略する。
図12に示す計測対象抽出装置500では、実施の形態2(
図9)と比較して、顔表情変化尤度算出部302の代わりに表情筋尤度算出部501を備える。
【0093】
図12において、表情筋尤度算出部501は、顔形状候補保持部102から入力される顔形状候補を用いて、顔形状候補を構成する各顔部品を動かすための筋肉である表情筋の可動範囲に基づいて、表情筋尤度を顔部品毎に算出する。「表情筋尤度」は、例えば、顔形状候補の各顔部品の位置と、各顔部品を動かす表情筋の可動範囲との一致度を表す。
【0094】
図13は、本実施の形態に係る顔形状推定装置による顔形状の推定処理を示すフロー図である。なお、本実施の形態に係る顔形状推定装置は、実施の形態2に係る顔形状推定装置400(
図10)と比較して、計測対象抽出装置300(
図9)の代わりに計測対象抽出装置500(
図12)を備える点のみが異なるので、詳細な説明を省略する。また、
図13において、実施の形態2(
図11)と同一処理には同一符号を付してその説明を省略する。
【0095】
S301において、表情筋尤度算出部501は、各顔部品を動かすための表情筋の可動範囲に基づいて、顔形状候補の顔表情変化尤度および表情筋変化尤度を算出する。
【0096】
表情筋は、顔の表情を動かすための筋肉であり、眼輪筋および大頬骨筋等の筋肉の総称である。本実施の形態では、計測対象抽出装置500は、顔形状候補の各特徴点を動かす表情筋の伸縮方向を予め取得している。表情筋尤度算出部501は、基準となる顔形状の特徴点の位置と顔形状候補の各顔部品の特徴点とを比較して、実施の形態2における顔部品表情変化尤度の代わりに、基準となる顔形状の特徴点から顔部品の位置への実際の移動方向(及び距離)と、各顔部品を動かす表情筋の可動範囲との一致度を表す値を表情筋尤度として算出する。
【0097】
具体的には、表情筋尤度算出部501は、以下の通りにして表情筋尤度を算出する。
【0098】
表情筋尤度算出部501は、表情筋の伸縮方向を取得する際、例えば、標準的な頭部形状の人において、表情筋が骨格と付着する端点を結ぶ直線を、顔形状候補の特徴点を動かす表情筋毎に算出する。そして、表情筋尤度算出部501は、算出した直線と平行な単位ベクトルを、各表情筋の伸縮方向として取得する。ただし、1つの特徴点を動かす表情筋が複数ある場合には、表情筋尤度算出部501は、その複数の表情筋の全ての伸縮方向(単位ベクトル)を、当該特徴点を動かす表情筋の伸縮方向として取得する。
【0099】
次いで、表情筋尤度算出部501は、表情筋尤度を算出する際、例えば、各特徴点において、基準となる顔形状の特徴点と顔形状候補の特徴点とを結ぶベクトルと、表情筋の伸縮方向として取得した単位ベクトルとのなす角をθとし(
図14参照)、次式(5)に示す表情筋尤度kを算出する。
【数5】
【0100】
ただし、mは基準となる顔形状の特徴点と顔形状候補の特徴点とを結ぶベクトルの絶対値である(
図14参照)。なお、基準となる顔形状は、所定の時間だけ過去の顔形状推定結果でもよく、予め取得した無表情時の顔形状でもよい。また、特徴点を動かす表情筋が複数ある場合、表情筋尤度算出部501は、全ての伸縮方向のベクトルに対して式(5)に示すkを算出し、算出したkのうち、最大値を当該特徴点の表情筋尤度としてもよい。
【0101】
式(5)より、表情筋の伸縮方向とは異なる方向に特徴点が移動するほど(θが大きくなるほど)、表情筋尤度kは小さい値をとる(θ=90°のとき、kは最小値となる)。また、式(5)より、顔形状候補の特徴点の基準に対する移動量が大きいほど(mが大きくなるほど)、表情筋尤度kは小さい値をとる。すなわち、表情筋尤度kは、顔表情変化尤度と同様、基準となる顔形状からの変化量が大きいほど、低い値となる。
【0102】
このようにして、本実施の形態では、計測対象抽出装置500は、特徴点の動く方向および範囲を、表情筋という実際に特徴点の動きを制御するもので規定し、顔形状候補の特徴点に対する表情筋との適合度を表情筋尤度として取得する。これにより、本実施の形態では、実施の形態1および2における顔表情変化尤度と同様、表情筋尤度として、顔形状が表す表情変化の顔としての自然さを正確に表せるため、顔形状の推定精度を向上させることができる。
【0103】
<実施の形態4>
図15は、本実施の形態に係る顔形状推定装置600の構成を示すブロック図である。なお、
図15において、実施の形態1(
図5)と同一構成である部分には同一の符号を付してその説明を省略する。
【0104】
図15において、再評価部601は、三次元計測部202から入力される計測結果と、入力部101から入力される画像(入力画像)とから、新たな顔形状候補を生成し、顔形状候補群に追加する。また、再評価部601は、顔形状候補群に追加される新たな顔形状候補について、形状候補評価部201で得られる値と同様の形状候補評価値を、新評価値として算出する。
【0105】
図16は、顔形状推定装置600による顔形状の推定処理を示すフロー図である。なお、
図16において、実施の形態1(
図6)と同一処理には同一符号を付してその説明を省略する。
【0106】
図16に示すS401において、再評価部601は、まず、入力画像平面に投影した顔形状候補の特徴点の奥行きをS108で取得された計測結果を用いて設定し、設定後の顔形状候補の特徴点の三次元座標を、新たな顔形状候補の特徴点の三次元座標として取得する。これにより、顔形状候補群に、新たな顔形状候補が追加される。
【0107】
次いで、再評価部601は、新たな顔形状候補の特徴点の元となった特徴点に対応するテクスチャを、当該新たな顔形状候補のテクスチャとして設定する。また、再評価部601は、新たな顔形状候補の元となった顔形状候補に対する顔テクスチャ評価値を、当該新たな顔形状候補に対する顔テクスチャ評価値に設定する。また、再評価部601は、新たな顔形状候補に対する顔表情変化尤度を、取り得る最大の値に設定する。そして、再評価部601は、設定した顔テクスチャ評価値および顔表情変化尤度を用いて、新たな顔形状候補に対する形状候補評価値(例えば、顔テクスチャ評価値と顔表情変化尤度との積または和)を算出する。なお、取り得る最大の値とは、例えば、顔表情変化尤度が-1から1の間の実数値をとる場合、最大値である1のことを意味する。
【0108】
このように、本実施の形態では、顔形状推定装置600は、三次元形状の計測結果を特徴点の座標に反映させた新たな顔形状候補を追加する。これにより、顔形状推定装置600は、三次元形状の実測値を考慮した顔形状候補を用いて顔形状の推定を行うことにより、顔形状の推定精度を向上させることができる。
【0109】
以上、本発明の各実施の形態について説明した。
【0110】
なお、上記各実施の形態に係る顔形状推定装置の各構成部の機能は、マイクロコンピュータが制御プログラムを実行して実現されてもよい。例えば、顔形状推定装置は、制御部であるCPUと、制御プログラムが記録されたROMと、プログラム実行用のRAMと、撮像装置であるカメラと、投光器と、表示・警報装置である表示部とを有し、制御部が顔形状推定装置の各構成部の動作を制御してもよい。
図5,10,15に示す各構成部は、制御部が実行する顔形状推定処理をブロックとして明示したものである。
【0111】
また、顔形状推定装置(
図5,10,15)は、パーソナルコンピュータ、OA機器、携帯電話等の情報端末、または、自動車、飛行機、船、電車等の移動手段に搭載される情報提供装置として有用である。また、顔形状推定装置(
図5,10,15)は、監視、警報装置、ロボット、または、映像音響再生装置等の用途にも応用できる。