説明

表情認識装置、方法、及びプログラム

【課題】表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができるようにする。
【解決手段】表情学習部16によって、各表情カテゴリについて、無表情から当該表情カテゴリへ変化したときの参照用の時系列データに基づいて、当該表情カテゴリであるか否かを識別する早期識別器を学習する。入力部10によって、無表情からの変化を示す時系列データを取得する。第2動的時間伸縮部24によって、各表情カテゴリについて、取得された時系列データを、当該表情カテゴリへ変化するときの参照用の時系列データに対してデータの変化が一致するように時間方向に伸縮させた時間伸縮時系列データを各々生成する。早期認識部26によって、各表情カテゴリについて生成された時間伸縮時系列データと、各表情カテゴリに対する早期識別器とに基づいて、人物の顔の表情カテゴリを認識する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表情認識装置、方法、及びプログラムに係り、特に、人物の顔の表情カテゴリを早期に認識する表情認識装置、方法、及びプログラムに関する。
【背景技術】
【0002】
表情は、他者と感情を伝達しあう手段として最も基本的な非言語行動であると言われている。そのため、画像に基づく表情認識に関する研究がこれまでコンピュータビジョン分野を中心として盛んに行われてきた。しかし、これまでの表情認識手法では、1枚の顔画像が与えられたときにその表情がどのカテゴリに属するのかを認識することに主眼が置かれている。表情が無表情から次第に変化していく動画像に対して、その表情カテゴリをいかに早い段階で認識するかという問題としてはこれまで取り扱われていなかった。
【0003】
例えば、大げさな表情データを用いて学習した表情カテゴリの識別器をベースとし、微細な表情を正しく推定する試みのひとつとして、これまでに、認識対象の表情のデータの表出強度を増幅した後に識別器にかける方法が提案されている(非特許文献1)。この方法では、画像における動き情報をもとにその表情変化による顔画像の変形を線形に増幅している。
【0004】
また、手書き文字の認識や自動車運転行動の認識など人物の行動の種類を、早期に認識するための方法が提案されている(非特許文献2)。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】Sungsoo Park, Daijin Kim: “Subtle facial expression recognition using motion magnification”, Pattern Recognition Letters, 30, pp. 708-716, 2009.
【非特許文献2】石黒 勝彦、 澤田 宏、 坂野 鋭: “多クラス早期認識ブースティング法とその応用” 、 第13回画像の認識・理解シンポジウム 論文集、 pp. 1452-1458、 2010.
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記の非特許文献1に記載の技術では、入力データが増幅される方向を決定する際に、そのデータがどのような表情カテゴリであるのかを考慮していない。しかし、表情による顔の時間的・空間的な変形は複雑であるため、その表情のカテゴリを考慮することなく動き情報のみから単純に表情情報を線形に増幅したのでは、結果として誤ったカテゴリの表情に類似したデータが生成される恐れがある。さらに、上記の非特許文献1の手法では、決定した増幅の方向に対して、どれだけ増幅すればよいのかについても、経験的に決定した一意の値が使用されている。このため、様々な強度で表出された表情のカテゴリを正しく認識できるとは言い難い。
【0007】
また、上記の非特許文献2に記載の方法では、入力されるデータが、ある行動の表出開始時点から始まっており、さらに、その行動があらかじめ決められた速度で行われることを前提としているため、表情表出のように、行動の速度が表出の度に変化するような行動を正しく認識することが困難である。
【0008】
本発明は、上記の事情を鑑みてなされたもので、表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができる表情認識装置、表情認識方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
上記の目的を達成するために本発明に係る表情認識装置は、人物の顔を含む領域を撮像した動画像から得られる顔特徴量の時系列データに基づいて、前記人物の顔の表情カテゴリを認識する表情認識装置であって、複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習する表情学習手段と、前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得するデータ取得手段と、前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成する時間伸縮手段と、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識する表情認識手段と、を含んで構成されている。
【0010】
本発明に係る表情認識方法は、人物の顔を含む領域を撮像した動画像から得られる顔特徴量の時系列データに基づいて、前記人物の顔の表情カテゴリを認識する表情認識方法であって、表情学習手段によって、複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習するステップと、データ取得手段によって、前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得するステップと、時間伸縮手段によって、前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成するステップと、表情認識手段によって、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識するステップと、を含むことを特徴としている。
【0011】
本発明によれば、表情学習手段によって、複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習する。データ取得手段によって、前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得する。
【0012】
そして、時間伸縮手段によって、前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成する。
【0013】
そして、表情認識手段によって、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識する。
【0014】
このように、表情カテゴリ毎に早期識別器を学習するときに用いた顔特徴量の時系列データに対して、顔特徴量の変化が対応するように、所定の表情カテゴリからの変化を示す顔特徴量の時系列データを時間方向に伸縮させてから、複数の表情カテゴリの各々に対する早期識別器に基づいて、人物の顔の表情カテゴリを認識することにより、表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができる。
【0015】
本発明に係る表情認識装置は、前記複数の表情カテゴリの各々について予め用意した、前記所定の表情カテゴリから前記表情カテゴリへ変化したときの学習用の前記時系列データを、前記表情カテゴリへ変化したときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた学習用の時間伸縮時系列データを各々生成する学習用時間伸縮手段を更に含み、前記表情学習手段は、複数の表情カテゴリの各々について、前記表情カテゴリに対する前記参照用の前記時系列データ及び前記学習用の時間伸縮時系列データに基づいて、前記早期識別器を学習するようにすることができる。
【0016】
本発明に係る前記表情認識手段は、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記複数の表情カテゴリの各々について前記表情カテゴリである度合いを示すスコアを算出し、前記スコアに基づいて、前記人物の顔の表情カテゴリを認識するようにすることができる。
【0017】
上記の顔特徴量を、前記人物の顔の注目点集合の各座標と、前記所定の表情カテゴリであるときの顔の注目点集合の各座標との差分を示すベクトルとすることができる。
【0018】
上記のデータ取得手段は、1つ前の時刻において前記所定の表情カテゴリである認識されたときの現時刻の顔特徴量からなる前記時系列データを取得するようにすることができる。
【0019】
上記の所定の表情カテゴリを、無表情とすることができる。
【0020】
本発明に係るプログラムは、コンピュータを、上記の表情認識装置の各手段として機能させるためのプログラムである。
【発明の効果】
【0021】
以上説明したように、本発明の表情認識装置、表情認識方法、及びプログラムによれば、表情カテゴリ毎に早期識別器を学習するときに用いた顔特徴量の時系列データに対して、顔特徴量の変化が対応するように、所定の表情カテゴリからの変化を示す顔特徴量の時系列データを時間方向に伸縮させてから、複数の表情カテゴリの各々に対する早期識別器に基づいて、人物の顔の表情カテゴリを認識することにより、表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができる、という効果が得られる。
【図面の簡単な説明】
【0022】
【図1】本発明の実施の形態に係る表情認識装置の構成を示す概略図である。
【図2】人物の顔面上に配置された複数の特徴点の例を示す図である。
【図3】時系列データに対する時間伸縮の模式図である。
【図4】本発明の実施の形態に係る表情認識装置における学習処理ルーチンの内容を示すフローチャートである。
【図5】本発明の実施の形態に係る表情認識装置における表情認識処理ルーチンの内容を示すフローチャートである。
【発明を実施するための形態】
【0023】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【0024】
<概要>
まず、本発明の概要について説明する。本発明では、earlyBoostと呼ばれる、一定速度で行われることを仮定した行動の種類をその発生からなるべく早くに認識する手法に、データの時間方向の伸縮を組み合わせることで、これまで正しく認識することが困難であった様々な速度で表情が表出された場合においても、その表情カテゴリを正しく認識する。
【0025】
早期識別器の学習処理では、まず、表情カテゴリ毎に複数用意された表情のデータについて、各表情カテゴリについて1つずつ決められた参照データに対して時間方向の位置合わせを行う。これにより、表出速度の異なる各表情のデータが、その表情カテゴリの参照データと同じ表出速度のデータに変換される。続いて、その時間伸縮されたデータセットを入力として、表情の早期認識に適した早期識別器を学習する。
【0026】
認識対象データ(テストデータ)に対する表情の認識処理では、まずは学習処理と同様に、参照データに対して時間方向の位置合わせを行う。ただし、テストデータについては正しい表情カテゴリが分かっていないため、全ての表情カテゴリのそれぞれを正解のカテゴリとみなして時間伸縮を行う。続いて、カテゴリ数だけ作成されたその時間伸縮されたデータを早期識別器に入力し、スコアが最も高くなった表情カテゴリを認識結果として出力する。
【0027】
本実施の形態では、表情のカテゴリとして、6つの基本表情、すなわち、幸福、怒り、驚き、恐れ、嫌悪、及び、悲しみに、無表情を加えた7つの表情、すなわち、c∈{0,1,…,6}を対象とする場合を例に説明する。c=0は無表情を表す。カテゴリ数はN=7である。ただし、どのようなカテゴリを認識の対象としても構わない。
【0028】
<システム構成>
次に、顔画像データの時系列である動画像データを入力として、表情カテゴリを認識する表情認識装置に、本発明を適用した場合を例にして、本発明の実施の形態を説明する。
【0029】
本実施の形態に係る表情認識装置は、CPU(Central Processing Unit)と、RAM(Random Access Memory)と、後述する学習処理ルーチン及び表情認識処理ルーチンを実行するためのプログラムを記憶したROM(Read Only Memory)とを備えたコンピュータで構成され、機能的には次に示すように構成されている。表情認識装置は、図1に示すように、入力部10、学習データセット記憶部12、参照時系列データ決定部14、表情学習部16、時間伸縮後学習データセット記憶部18、早期識別器記憶部20、表情認識部22、第2動的時間伸縮部24、及び早期認識部26を備えている。なお、入力部10は、データ取得手段の一例であり、第2動的時間伸縮部24は、時間伸縮手段の一例である。
【0030】
入力部10は、対象人物の顔を含む領域を撮影した動画像データから得られる、図2に示すような対象人物の顔面上に配置された複数の特徴点の3次元(D=3)の座標値(位置情報)を高速に計測する手段に接続されており、複数の特徴点の3次元(D=3)の座標値を、高い時間分解能で時系列に出力する。また、入力部10は、キーボードやマウスにも接続されており、キーボードやマウスを操作することにより入力された情報を受け付ける。
【0031】
入力部10は、目や口といった顔部品周辺に配置されたK個の特徴点のD次元の座標値を並べたベクトル(特徴ベクトルと呼ぶ)x=[x1,1,…,x1,D,x2,1,…,x2,D,xK,1,…,xK,D∈RDKを高い時間分解能で時系列に出力する。ここで、xk,dはk番目の特徴点のd番目の次元の成分を表す。高い時間分解能であることは表出し始めの表情からその特徴を得るために重要である。図2に、K=26点の場合の特徴点の配置の一例を示す。
【0032】
本実施の形態では、特徴点の3次元(D=3)の座標値を高速に計測する手段として、例えば、100 flame/secで動作するモーションキャプチャシステムを用いる。モーションキャプチャシステムは、対象物表面に小さなマーカーを貼り付けた状態で、その人物を複数台のカメラにて撮影し、その画像中でのマーカーの位置からそれらマーカーの3次元座標を算出する。このマーカーの位置の検出方法としては、緑色の塗料を顔面上に小さく塗ったものをマーカーとして、カラー映像から検出する方法がある。あるいは、赤外光をよく反射する素材をマーカーとし、赤外光を照射しながら赤外以外の波長の光をフィルタでカットしながら撮影した画像から検出する方法もある。または、そのようなマーカーを使用せずに、顔のテクスチャ情報のみから特徴点を検出するようにしてもよい。あるいは、特徴点の位置情報として単に単眼カメラ画像中の特徴点の画像座標(D=2)を用いても構わない。なお、各人物に対する顔面上での特徴点の数及び配置は同一であるものとする。
【0033】
上述した特徴ベクトルxは、入力部10において、人物毎に無表情時を基準として正規化される、すなわち、任意の人物の無表情時の特徴ベクトルxが等しくなるよう変換される。そのような正規化は以下に説明するように行われる。
【0034】
まず、後述する学習データセット中からある一人の人物の無表情時の特徴ベクトルxBASEを選択する。その人物の任意の表情の特徴ベクトルについてはそのまま出力する。一方、他の人物については、全ての特徴ベクトルxに対して射影gを施したベクトルg(x)を出力する。この射影gについては、その人物の無表情時の特徴ベクトルがなるべくxBASEに近くなるように求められたパラメータを用いる。この射影gとしては、例えば、最も簡単なものの1つとして、特徴点座標空間の各座標軸に対してスケーリングを施す方法がある。D=3であれば、パラメータは3つであり、射影gを施したベクトルg(x)は、対角行列を用いて、以下の式で表わされる。
【0035】
【数1】

【0036】
この3つのパラメータs,s,sについては、基準とした人物の無表情時の特徴ベクトルxBASEに対する、それぞれの人物の無表情時の特徴ベクトルの射影後のベクトルg(x)の誤差の二乗の和が最小になるときの値を用いればよく、すなわち、最小二乗誤差基準に従って算出された値を用いる。なお、この他にも、AAM(Active Appearance Models)のように、個人毎の特徴ベクトルのばらつきについての基底を求め、その上位(主要な)いくつかの基底の線形和がなるべくxBASEに近くなるようなパラメータを算出するという方法でも構わない。
【0037】
また、入力部10は、現在の時刻tにおける特徴ベクトルxが、無表情のときの特徴ベクトルxからどれだけ変化したのか、すなわち、z=g(x)−g(x)を出力する。データが入力され始めた時刻t=1における表情が無表情であればx=xであるため、z=0が出力される。なお、データzが、顔特徴量の一例である。
【0038】
<学習データ>
入力部10は、学習データとして、対象とするそれぞれの表情カテゴリcについて、ztの時系列データをM(≧1)個ずつ用意する。それぞれの時系列データでは、表情が無表情である状態から開始され、そこから対象の表情が表出され始め、その表情が最大限に表出された時点で終了するものとする。無表情のデータについては、開始から終了まで無表情であるものとする。時系列データの総数Mを、以下の式で表わす。
【0039】
【数2】

【0040】
また、m∈{1,…,M}番目の時系列データを以下の式で表わす。
【0041】
【数3】

【0042】
ここで、Tはm番目の時系列データのフレーム長を表す。それぞれの表情カテゴリについてのデータは、1人あるいは複数の人物により表出された表情について得られたデータである。m番目の時系列データにおいて表出されている表情のカテゴリをcとする。これら学習データのセットをまとめてD={Z,cm=1,…,Mと表す。学習データに付与される表情カテゴリは、ユーザの手入力により与えられる。入力部10は、上記の学習データのセットを、学習データセット記憶部12に格納する。
【0043】
ここでは、無表情の状態からそれ以外の表情を表出したものを学習データとするため、早期に認識できる表情の変化も無表情からそれ以外の表情への変化となる。ただし、本発明の枠組みは、無表情以外の表情からそれ以外の表情への変化(例えば、驚きから幸福、悲しみから無表情など)についての早期認識へも適用可能である。
【0044】
<表情認識対象データ>
入力部10は、表情を認識する対象のデータ(以下、テストデータとも称する)として、1人の人物について、データが入力され始めた時刻t=1から現在の時刻tまでの時系列データz1:tを出力する。ここでは、無表情からそれ以外の表情を表出し、そこから、一旦無表情に戻り、また異なる表情を表出する、ということを仮定している。ただし、前述したとおり、本発明の枠組みは、任意の表情の変化の早期認識に適用可能である。
【0045】
<表情学習>
表情の学習では、入力部10から出力される各カテゴリについて1つあるいは複数の学習データのセットを受け、各表情カテゴリについて1つずつ参照用の時系列データを決め、他の時系列データがその参照用の時系列データに対して、データzの変化がなるべく一致するよう時間伸縮を行うとともに、それらの全ての時系列データを用いて各表情カテゴリに対してその表情カテゴリをなるべく早い表出の段階で識別するための早期識別器を学習する。
【0046】
本実施の形態では、参照時系列データ決定部14によって、学習データとして入力された各表情カテゴリについて、後述する第1動的時間伸縮部160及び第2動的時間伸縮部24で時間伸縮を行う際の参照となる時系列データ(参照時系列データと呼ぶ)を決定する。ここでは、各表情カテゴリcについて、学習データとしてM個ある時系列データからランダムに1つを抽出したものを参照時系列データとする。なお、予め人手で参照時系列データを決定しておいても構わない。決定された各表情カテゴリcの参照時系列データ(データ長をT)の集合Zcを、以下の式で表わす。
【0047】
【数4】

【0048】
ここで、Rは実数全体の集合を表し、RDK×Tcは、DK×T次元の実数ベクトル全体の集合を表す。
【0049】
参照時系列データ決定部14は、参照時系列データとして決定した結果を、学習データセット記憶部12に格納する。
【0050】
表情学習部16は、第1動的時間伸縮部160及び早期識別器学習部162を備えている。なお、第1動的時間伸縮部160は、学習用時間伸縮手段の一例である。
【0051】
第1動的時間伸縮部160は、参照時系列データZ、及び、以下の式で表わされる被時間伸縮時系列データの集合Zを入力として、被時間伸縮時系列データのztの変化が参照時系列データのztの変化になるべく一致するように、被時間伸縮時系列データに対して時間方向の伸縮を施し、その伸縮された時系列データを出力する。図3にその時間伸縮の模式図を示す。
【0052】
【数5】

【0053】
時間伸縮は、2つの時系列データのどの時刻のデータ同士が対応しているのかを表す対応行列Q∈R2×Lを求めることで行われる。この行列Qのi番目の行[qi, qi´]は、被時間伸縮時系列データのqi番目の時刻のデータzqiと参照時系列データZcのqi´番目の時刻のデータzqi´cとが対応していることを表している。2つの時系列データが最も類似する場合を、以下の(1)式のように定義して、最適な対応行列^Qを求める。
【0054】
【数6】

【0055】
ここで、dist(z,z´)はデータzとz´の間の距離を表す。ここでは、距離尺度としてユークリッド距離を使用することとする。ただし、どのような距離尺度を用いても構わない。Lは1つの時系列データを合わせるために必要なステップ数を表す。上記(1)式は動的計画法を用いて解くことが可能である。上記図3に、2つの時系列データと求められるそれらの対応を模式的に示している。
【0056】
求めた^Qに従って、参照時系列データのそれぞれの時刻に対応する被時間伸縮時系列データを位置合わせしたデータの集合~Zを以下の式で表わす。
【0057】
【数7】

【0058】
もしも、参照時系列データの対象時刻に対して被時間伸縮時系列データの複数の時刻が対応する場合には、位置合わせ後の時系列データにおいて、それらの平均をとった値を用いればよい。一方、参照時系列データの対象時刻に対応する被時間伸縮時系列データの時刻が存在しなければ、その前後の時刻の位置合わせされた被時間伸縮時系列データを用いて内挿あるいは外挿した値を、位置合わせ後の時系列データの値とすればよい。
【0059】
第1動的時間伸縮部160は、参照時系列データ以外の全ての時系列データをそれぞれ被時間伸縮時系列データとし、被時間伸縮時系列データそれぞれを、その時系列データが属するカテゴリcに対する参照時系列データZを用いて、位置合わせを行う。よって、各表情カテゴリcに対して、参照時系列データを含めてMc個の位置合わせ後の時系列データ~mが出力される。この位置合わせ後の時系列データと表情カテゴリを組み合わせたものの集合~Dを、時間伸縮後学習データセットとして、以下の式で表わす。
【0060】
【数8】

【0061】
第1動的時間伸縮部160は、上記の式で表わされる時間伸縮後学習データセットを、時間伸縮後学習データセット記憶部18に格納する。
【0062】
早期識別器学習部162は、表情カテゴリ毎に早期識別器を学習する。ここで、早期識別器は、決められた速度で行われることを仮定した動作のデータからその動作の種類をできるだけ早く識別することができる識別器である。表情カテゴリ毎の早期識別器を用いた表情の認識は、以下の式に従ったものであり、入力データZに対する認識結果を出力する。
【0063】
【数9】

【0064】
早期識別器は、各カテゴリcに対して用意される。すなわち、この早期識別器は、各時刻に対応するデータを入力としてフレーム毎にカテゴリcに対するスコアを返すフレームベースの弱識別器hc,tの出力を重み付けした和を、最終的なそのカテゴリcに対するスコアH(Z)として出力する。スコアH(Z)を最大化するカテゴリが、表情カテゴリの認識結果となる。
【0065】
早期識別器学習部162では、この弱識別器とその識別重みの組み合わせ
【0066】
【数10】

【0067】
を時間伸縮後の学習データセットDを用いて学習し、認識対象の時系列データZが、対象とする表情カテゴリcであるか否かを出力するNc個の2クラス強識別器Hcを生成する。
【0068】
フレームベースの弱識別器hc,t(z):RDK→{1,-1}は、以下の式で表わすように、識別スコアrc,tを最大化することによって決定される。
【0069】
【数11】

【0070】
ここで、gc(c´)は、gc(c´):{1,…, Nc}→{1,-1}であり、カテゴリc´を入力として受け取り、c=c´ならば1を、そうでなければ−1を出力する関数である。また、D(m,c)∈Rは、m番目の時系列データのカテゴリcに対する誤差重みである。弱識別器hc,tとしては任意の識別器を使用することが可能である。ここでは簡単な線形識別器としてsign(wTz)とする識別器を使用する。ここでw∈RDKは最適化すべきパラメータである。このパラメータwの最適化方法としては、任意の方法を用いて構わない。例えば、パラメータ値を逐次的に更新していくシンプレックス法などを用いればよい。
【0071】
この誤差重みは、それぞれのカテゴリcに対して、以下の式に従い時刻t=1よりtを1ずつ増加させながらt=Tcまで逐次的に計算される。
【0072】
【数12】

【0073】
ここで、αtは弱識別器hc,tの出力に対する識別重みであり、以下の式で表わされる。
【0074】
【数13】

【0075】
<表情認識処理>
表情の認識処理は、入力部10から出力される表情カテゴリが未知の時系列データzを受け、まず、それぞれのカテゴリを仮定して、参照時系列データに対して時間伸縮を行い、続いて、カテゴリ数だけある、時間伸縮された時系列データをそれぞれのカテゴリ用の早期識別器に与えてスコアを計算し、そのスコアが最も高くなるカテゴリを、表情のカテゴリ推定値^cとして出力する。
【0076】
本実施の形態では、現在の時刻tまでに得られた時系列データz1:tを入力として、以下に説明するように、現時刻tの表情の認識結果^ctを出力する。
【0077】
まず、表情認識部22は、現在の時刻をtとして、直前の時刻t−1における認識結果が無表情、すなわち、^ct-1=0であれば、位置合わせを行う時系列データZに、現在のデータ(特徴量ベクトルの差分データ)ztを追加する。こうして得られた時系列データZを第2動的時間伸縮部24へ入力する。
【0078】
一方、表情認識部22は、直前の時刻t−1における認識結果が無表情以外、すなわち、^ct-1≠0であれば、まず位置合わせを行う時系列データZを空にする。そして、表情認識部22は、そのときの表情が無表情か否かを判定する。ここでは、時刻tにおけるデータztが、無表情時のときのデータに近いかどうかで判定することとする。この判定方法の1つとして、ここでは、以下の式が成立するのであれば無表情であると判定し、そうでなければ、無表情でないと判定する。
【0079】
【数14】

【0080】
ここで、xk,d及びσk,dはk番目の特徴点のd番目の次元の成分、及び、その成分の無表情時における標準偏差を表す。この標準偏差σk,dについては、学習データセット中の各時系列データにおいて、無表情であることを仮定している最初のフレームのデータを集めて、その標準偏差を計算したものとする。この方法で、無表情でないと判定されれば、現在の表情は、直前の時刻での認識結果と同じであると認識する。
【0081】
第2動的時間伸縮部24は、入力された時系列データZを被時間伸縮時系列データとし、全表情カテゴリのそれぞれにおける参照時系列データZに対して位置合わせを行い、各表情カテゴリcに対する時間伸縮結果~cを得る。位置合わせの方法は、表情学習部16の第1動的時間伸縮部160と同様である。ただし、この場合、出力するのは、入力された時系列データの最終の時刻(現時刻)tに対応する参照時系列データの時刻tまででよい。よって、結果として、Nc個の位置合わせ後の時系列データ(時間伸縮後のテストデータ)の集合
【0082】
【数15】

【0083】
が出力される。第2動的時間伸縮部24は、そのそれぞれの~cを早期認識部26へ入力して認識結果^ctを得る。
【0084】
早期認識部26は、以下に説明するように、位置合わせ後の時系列データの集合~Zに対して表情カテゴリを認識し、認識結果^ctを出力する。
【0085】
まず、以下の式に従い無表情以外の認識結果の候補~ctを求める。
【0086】
【数16】

【0087】
上記の式では、各表情カテゴリcの早期識別器に対して、当該表情カテゴリcの参照時系列データZに対して位置合わせを行って得られた時系列データ(時間伸縮後のテストデータ)~Zcを入力して、スコアを求め、最大スコアとなる表情カテゴリcを、認識結果の候補~ctとしている。
【0088】
上記の式に従って求められた認識結果の候補~ctに対するスコア
【0089】
【数17】

【0090】
が事前に決定しておく閾値α以上であれば、最終的な認識結果^cを^cとして出力し、そうでなければ、^cを無表情として出力する(^c=0)。この閾値αについては、事前に表情を無表情のまま変化させないデータを用意しておき、それを各カテゴリの早期識別器に入力したときのスコアH(Z)の平均値を、閾値αとして設定すればよい。
【0091】
最終的な認識結果^cが、出力部(図示省略)よりユーザに出力される。
【0092】
<表情認識装置の作用>
次に、本実施の形態に係る表情認識装置の作用について説明する。まず、表情認識装置は、各表情カテゴリが予め分かっている複数の時系列データが入力され、各時系列データに対して、教師信号として表情カテゴリが入力されると、図4に示す学習処理ルーチンを実行する。
【0093】
まず、ステップ100において、各表情カテゴリが教師信号として与えられた複数の時系列データの入力を受け付けて、学習データセットとして学習データセット記憶部12に格納する。次のステップ102では、学習データセット記憶部12に記憶された学習データセットから、各表情カテゴリについて、参照時系列データを決定して、決定した結果を、学習データセット記憶部12に格納する。
【0094】
そして、ステップ104において、教師信号として与えられた複数の表情カテゴリのうち、学習対象の表情カテゴリとして1つの表情カテゴリを設定する。ステップ106では、学習対象の表情カテゴリが教師信号として与えられた時系列データのうち、参照時系列データ以外の時系列データの各々を、学習対象の表情カテゴリの参照時系列データに対して位置合わせを行うように時間伸縮し、時間伸縮後の時系列データを時間伸縮後学習データセット記憶部18に格納する。
【0095】
そして、ステップ108において、上記ステップ106で得られ、かつ、学習対象の表情カテゴリが教師信号として与えられた、時間伸縮後の時系列データおよび参照時系列データを用いて、学習対象の表情カテゴリに対する早期識別器を学習して、学習結果を早期識別器記憶部20に格納する。
【0096】
そして、ステップ110では、全ての表情カテゴリについて、上記ステップ104〜108の処理を実行したか否かを判定し、上記ステップ104〜108の処理を実行していない表情カテゴリが存在する場合には、上記ステップ104へ戻り、当該表情カテゴリを、学習対象の表情カテゴリとして設定する。一方、全ての表情カテゴリについて、上記ステップ104〜108の処理を実行した場合には、学習処理ルーチンを終了する。
【0097】
そして、モーションキャプチャシステムから、対象人物の顔面上に配置された複数の特徴点の座標値(位置情報)の時系列データが得られているときに、表情認識装置は、図5に示す表情認識処理ルーチンを実行する。
【0098】
ステップ120において、^c0=0, Z=[ ](位置合わせを行う時系列データZは空)と初期化する。次のステップ122では、現時刻を示す変数tを1に設定し、ステップ124において、時刻tのデータzt(特徴ベクトルxの差分データ)を取得する。
【0099】
そして、ステップ126において、一時刻前の時刻t−1における表情カテゴリの認識結果が無表情であるか否か、すなわち^ct-1=0であるか否かを判定する。^ct-1=0である場合には、ステップ128において、位置合わせを行う時系列データZに現時刻のデータztを追加する。この処理を、Z←[Z, zt]と表す。
【0100】
そして、ステップ130において、各表情カテゴリについて、時系列データZ(例えば、Z={zt})を被時間伸縮時系列データとし、当該表情カテゴリの参照時系列データZcに対して位置合わせを行うように時間伸縮処理を行い、各表情カテゴリcに対する時間伸縮後の時系列データ~Zcを得る。
【0101】
次のステップ132において、各表情カテゴリについて、上記ステップ130で得られた当該表情カテゴリcに対する時間伸縮後の時系列データ~cと、当該表情カテゴリcに対する早期識別器とに基づいて、スコアを算出する。
【0102】
そして、ステップ134では、上記ステップ132で算出されたスコアに基づいて、現時刻tの表情カテゴリ^cを認識して出力し、ステップ144へ移行する。
【0103】
一方、上記ステップ126において、一時刻前の時刻t−1における表情カテゴリの認識結果が無表情でないと判定された場合には、ステップ136において、位置合わせを行う時期列データZを空にする。この処理を、Z←[ ]と表す。
【0104】
次のステップ138では、現時刻tのデータzに基づいて、現時刻tの表情カテゴリが無表情であるか否かを判定する。現時刻tの表情カテゴリが無表情であると判定された場合には、ステップ140において、現時刻tの表情カテゴリ^cが無表情である(^c=0)と認識して出力し、ステップ144へ移行する。
【0105】
一方、上記ステップ138において、現時刻tの表情カテゴリが無表情でないと判定された場合には、ステップ142において、現時刻tの表情カテゴリ^cが、一時刻前の時刻t−1で認識された表情カテゴリと同じ表情カテゴリである(^c=^ct-1)と認識して出力し、ステップ144へ移行する。
【0106】
ステップ144では、時刻tを1インクリメントして、ステップ124へ戻る。
【0107】
以上のように、表情認識処理ルーチンにより、各時刻tの表情カテゴリの認識結果^cが出力される。
【0108】
以上説明したように、本実施の形態に係る表情認識装置によれば、表情カテゴリ毎に早期識別器を学習するときに用いた参照用の時系列データに対して、データztの変化が対応するように、無表情の状態から変化するときの時系列データztを時間方向に伸縮させてから、複数の表情カテゴリの各々に対する早期識別器に基づいて、人物の顔の表情カテゴリを認識することにより、表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができる。
【0109】
また、顔の表情が表出され始めた直後、すなわち、表情が無表情からまだそれほど大きく変化していない段階であっても、その表情カテゴリを正しく認識できる。例えば、ある表情が一瞬表出された後、直ちに別の表情によって隠蔽された場合であっても、隠蔽された表情を認識することが可能となる。この表情の隠蔽が生じるのは、怒りや嫌悪といった感情を起因として不随意的、瞬間的かつ微細に表出される、社会的な場面においてはあまり望ましくない否定的な表情が、直ちに笑顔など他の肯定的あるいは中立的な表情によって隠されるといった場合である。このような隠蔽された表情を認識することは、対象人物の感情を正確に推定する上で重要であると考えられる。
【0110】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【0111】
例えば、上述の表情認識装置は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
【0112】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【0113】
10 入力部
12 学習データセット記憶部
14 参照時系列データ決定部
16 表情学習部
18 時間伸縮後学習データセット記憶部
20 早期識別器記憶部
22 表情認識部
24 第2動的時間伸縮部
26 早期認識部
160 第1動的時間伸縮部
162 早期識別器学習部

【特許請求の範囲】
【請求項1】
人物の顔を含む領域を撮像した動画像から得られる顔特徴量の時系列データに基づいて、前記人物の顔の表情カテゴリを認識する表情認識装置であって、
複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習する表情学習手段と、
前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得するデータ取得手段と、
前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成する時間伸縮手段と、
前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識する表情認識手段と、
を含む表情認識装置。
【請求項2】
前記複数の表情カテゴリの各々について予め用意した、前記所定の表情カテゴリから前記表情カテゴリへ変化したときの学習用の前記時系列データを、前記表情カテゴリへ変化したときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた学習用の時間伸縮時系列データを各々生成する学習用時間伸縮手段を更に含み、
前記表情学習手段は、複数の表情カテゴリの各々について、前記表情カテゴリに対する前記参照用の前記時系列データ及び前記学習用の時間伸縮時系列データに基づいて、前記早期識別器を学習する請求項1記載の表情認識装置。
【請求項3】
前記表情認識手段は、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記複数の表情カテゴリの各々について前記表情カテゴリである度合いを示すスコアを算出し、前記スコアに基づいて、前記人物の顔の表情カテゴリを認識する請求項1又は2記載の表情認識装置。
【請求項4】
前記顔特徴量を、前記人物の顔の注目点集合の各座標と、前記所定の表情カテゴリであるときの顔の注目点集合の各座標との差分を示すベクトルとした請求項1〜請求項3の何れか1項記載の表情認識装置。
【請求項5】
前記データ取得手段は、1つ前の時刻において前記所定の表情カテゴリである認識されたときの現時刻の顔特徴量からなる前記時系列データを取得する請求項1〜請求項4の何れか1項記載の表情認識装置。
【請求項6】
前記所定の表情カテゴリを、無表情とした請求項1〜請求項5の何れか1項記載の表情認識装置。
【請求項7】
人物の顔を含む領域を撮像した動画像から得られる顔特徴量の時系列データに基づいて、前記人物の顔の表情カテゴリを認識する表情認識方法であって、
表情学習手段によって、複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習するステップと、
データ取得手段によって、前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得するステップと、
時間伸縮手段によって、前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成するステップと、
表情認識手段によって、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識するステップと、
を含むことを特徴とする表情認識方法。
【請求項8】
コンピュータを、請求項1〜請求項6の何れか1項記載の表情認識装置の各手段として機能させるためのプログラム。

【図1】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図2】
image rotate


【公開番号】特開2013−3706(P2013−3706A)
【公開日】平成25年1月7日(2013.1.7)
【国際特許分類】
【出願番号】特願2011−132120(P2011−132120)
【出願日】平成23年6月14日(2011.6.14)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【出願人】(504137912)国立大学法人 東京大学 (1,942)
【Fターム(参考)】