(57)【要約】【課題】表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができるようにする。【解決手段】表情学習部１６によって、各表情カテゴリについて、無表情から当該表情カテゴリへ変化したときの参照用の時系列データに基づいて、当該表情カテゴリであるか否かを識別する早期識別器を学習する。入力部１０によって、無表情からの変化を示す時系列データを取得する。第２動的時間伸縮部２４によって、各表情カテゴリについて、取得された時系列データを、当該表情カテゴリへ変化するときの参照用の時系列データに対してデータの変化が一致するように時間方向に伸縮させた時間伸縮時系列データを各々生成する。早期認識部２６によって、各表情カテゴリについて生成された時間伸縮時系列データと、各表情カテゴリに対する早期識別器とに基づいて、人物の顔の表情カテゴリを認識する。【選択図】図４
2013003706.tif 000002
【特許請求の範囲】
【請求項１】
人物の顔を含む領域を撮像した動画像から得られる顔特徴量の時系列データに基づいて、前記人物の顔の表情カテゴリを認識する表情認識装置であって、
複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習する表情学習手段と、
前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得するデータ取得手段と、
前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成する時間伸縮手段と、
前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識する表情認識手段と、
を含む表情認識装置。
【請求項２】
前記複数の表情カテゴリの各々について予め用意した、前記所定の表情カテゴリから前記表情カテゴリへ変化したときの学習用の前記時系列データを、前記表情カテゴリへ変化したときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた学習用の時間伸縮時系列データを各々生成する学習用時間伸縮手段を更に含み、
前記表情学習手段は、複数の表情カテゴリの各々について、前記表情カテゴリに対する前記参照用の前記時系列データ及び前記学習用の時間伸縮時系列データに基づいて、前記早期識別器を学習する請求項１記載の表情認識装置。
【請求項３】
前記表情認識手段は、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記複数の表情カテゴリの各々について前記表情カテゴリである度合いを示すスコアを算出し、前記スコアに基づいて、前記人物の顔の表情カテゴリを認識する請求項１又は２記載の表情認識装置。
【請求項４】
前記顔特徴量を、前記人物の顔の注目点集合の各座標と、前記所定の表情カテゴリであるときの顔の注目点集合の各座標との差分を示すベクトルとした請求項１〜請求項３の何れか１項記載の表情認識装置。
【請求項５】
前記データ取得手段は、１つ前の時刻において前記所定の表情カテゴリである認識されたときの現時刻の顔特徴量からなる前記時系列データを取得する請求項１〜請求項４の何れか１項記載の表情認識装置。
【請求項６】
前記所定の表情カテゴリを、無表情とした請求項１〜請求項５の何れか１項記載の表情認識装置。
【請求項７】
人物の顔を含む領域を撮像した動画像から得られる顔特徴量の時系列データに基づいて、前記人物の顔の表情カテゴリを認識する表情認識方法であって、
表情学習手段によって、複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習するステップと、
データ取得手段によって、前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得するステップと、
時間伸縮手段によって、前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成するステップと、
表情認識手段によって、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識するステップと、
を含むことを特徴とする表情認識方法。
【請求項８】
コンピュータを、請求項１〜請求項６の何れか１項記載の表情認識装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表情認識装置、方法、及びプログラムに係り、特に、人物の顔の表情カテゴリを早期に認識する表情認識装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
表情は、他者と感情を伝達しあう手段として最も基本的な非言語行動であると言われている。そのため、画像に基づく表情認識に関する研究がこれまでコンピュータビジョン分野を中心として盛んに行われてきた。しかし、これまでの表情認識手法では、1枚の顔画像が与えられたときにその表情がどのカテゴリに属するのかを認識することに主眼が置かれている。表情が無表情から次第に変化していく動画像に対して、その表情カテゴリをいかに早い段階で認識するかという問題としてはこれまで取り扱われていなかった。
【０００３】
例えば、大げさな表情データを用いて学習した表情カテゴリの識別器をベースとし、微細な表情を正しく推定する試みのひとつとして、これまでに、認識対象の表情のデータの表出強度を増幅した後に識別器にかける方法が提案されている（非特許文献１）。この方法では、画像における動き情報をもとにその表情変化による顔画像の変形を線形に増幅している。
【０００４】
また、手書き文字の認識や自動車運転行動の認識など人物の行動の種類を、早期に認識するための方法が提案されている（非特許文献２）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Sungsoo Park, Daijin Kim: “Subtle facial expression recognition using motion magnification”, Pattern Recognition Letters, 30, pp. 708-716, 2009.
【非特許文献２】石黒  勝彦、 澤田  宏、 坂野  鋭: “多クラス早期認識ブースティング法とその応用” 、 第13回画像の認識・理解シンポジウム 論文集、 pp. 1452-1458、 2010.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上記の非特許文献１に記載の技術では、入力データが増幅される方向を決定する際に、そのデータがどのような表情カテゴリであるのかを考慮していない。しかし、表情による顔の時間的・空間的な変形は複雑であるため、その表情のカテゴリを考慮することなく動き情報のみから単純に表情情報を線形に増幅したのでは、結果として誤ったカテゴリの表情に類似したデータが生成される恐れがある。さらに、上記の非特許文献１の手法では、決定した増幅の方向に対して、どれだけ増幅すればよいのかについても、経験的に決定した一意の値が使用されている。このため、様々な強度で表出された表情のカテゴリを正しく認識できるとは言い難い。
【０００７】
また、上記の非特許文献２に記載の方法では、入力されるデータが、ある行動の表出開始時点から始まっており、さらに、その行動があらかじめ決められた速度で行われることを前提としているため、表情表出のように、行動の速度が表出の度に変化するような行動を正しく認識することが困難である。
【０００８】
本発明は、上記の事情を鑑みてなされたもので、表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができる表情認識装置、表情認識方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の目的を達成するために本発明に係る表情認識装置は、人物の顔を含む領域を撮像した動画像から得られる顔特徴量の時系列データに基づいて、前記人物の顔の表情カテゴリを認識する表情認識装置であって、複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習する表情学習手段と、前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得するデータ取得手段と、前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成する時間伸縮手段と、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識する表情認識手段と、を含んで構成されている。
【００１０】
本発明に係る表情認識方法は、人物の顔を含む領域を撮像した動画像から得られる顔特徴量の時系列データに基づいて、前記人物の顔の表情カテゴリを認識する表情認識方法であって、表情学習手段によって、複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習するステップと、データ取得手段によって、前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得するステップと、時間伸縮手段によって、前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成するステップと、表情認識手段によって、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識するステップと、を含むことを特徴としている。
【００１１】
本発明によれば、表情学習手段によって、複数の表情カテゴリの各々について、予め求められた所定の表情カテゴリから前記表情カテゴリへ変化したときの参照用の前記時系列データに基づいて、前記表情カテゴリであるか否かを早期に識別するための早期識別器を学習する。データ取得手段によって、前記動画像から得られる、前記所定の表情カテゴリからの変化を示す前記顔特徴量の時系列データを取得する。
【００１２】
そして、時間伸縮手段によって、前記複数の表情カテゴリの各々について、前記データ取得手段によって取得された前記時系列データを、前記表情カテゴリへ変化するときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた時間伸縮時系列データを各々生成する。
【００１３】
そして、表情認識手段によって、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記人物の顔の表情カテゴリを認識する。
【００１４】
このように、表情カテゴリ毎に早期識別器を学習するときに用いた顔特徴量の時系列データに対して、顔特徴量の変化が対応するように、所定の表情カテゴリからの変化を示す顔特徴量の時系列データを時間方向に伸縮させてから、複数の表情カテゴリの各々に対する早期識別器に基づいて、人物の顔の表情カテゴリを認識することにより、表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができる。
【００１５】
本発明に係る表情認識装置は、前記複数の表情カテゴリの各々について予め用意した、前記所定の表情カテゴリから前記表情カテゴリへ変化したときの学習用の前記時系列データを、前記表情カテゴリへ変化したときの前記参照用の前記時系列データに対して前記顔特徴量の変化が対応するように時間方向に伸縮させた学習用の時間伸縮時系列データを各々生成する学習用時間伸縮手段を更に含み、前記表情学習手段は、複数の表情カテゴリの各々について、前記表情カテゴリに対する前記参照用の前記時系列データ及び前記学習用の時間伸縮時系列データに基づいて、前記早期識別器を学習するようにすることができる。
【００１６】
本発明に係る前記表情認識手段は、前記複数の表情カテゴリの各々について生成された前記時間伸縮時系列データと、前記複数の表情カテゴリの各々に対する前記早期識別器とに基づいて、前記複数の表情カテゴリの各々について前記表情カテゴリである度合いを示すスコアを算出し、前記スコアに基づいて、前記人物の顔の表情カテゴリを認識するようにすることができる。
【００１７】
上記の顔特徴量を、前記人物の顔の注目点集合の各座標と、前記所定の表情カテゴリであるときの顔の注目点集合の各座標との差分を示すベクトルとすることができる。
【００１８】
上記のデータ取得手段は、１つ前の時刻において前記所定の表情カテゴリである認識されたときの現時刻の顔特徴量からなる前記時系列データを取得するようにすることができる。
【００１９】
上記の所定の表情カテゴリを、無表情とすることができる。
【００２０】
本発明に係るプログラムは、コンピュータを、上記の表情認識装置の各手段として機能させるためのプログラムである。
【発明の効果】
【００２１】
以上説明したように、本発明の表情認識装置、表情認識方法、及びプログラムによれば、表情カテゴリ毎に早期識別器を学習するときに用いた顔特徴量の時系列データに対して、顔特徴量の変化が対応するように、所定の表情カテゴリからの変化を示す顔特徴量の時系列データを時間方向に伸縮させてから、複数の表情カテゴリの各々に対する早期識別器に基づいて、人物の顔の表情カテゴリを認識することにより、表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができる、という効果が得られる。
【図面の簡単な説明】
【００２２】
【図１】本発明の実施の形態に係る表情認識装置の構成を示す概略図である。
【図２】人物の顔面上に配置された複数の特徴点の例を示す図である。
【図３】時系列データに対する時間伸縮の模式図である。
【図４】本発明の実施の形態に係る表情認識装置における学習処理ルーチンの内容を示すフローチャートである。
【図５】本発明の実施の形態に係る表情認識装置における表情認識処理ルーチンの内容を示すフローチャートである。
【発明を実施するための形態】
【００２３】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００２４】
＜概要＞
まず、本発明の概要について説明する。本発明では、earlyBoostと呼ばれる、一定速度で行われることを仮定した行動の種類をその発生からなるべく早くに認識する手法に、データの時間方向の伸縮を組み合わせることで、これまで正しく認識することが困難であった様々な速度で表情が表出された場合においても、その表情カテゴリを正しく認識する。
【００２５】
早期識別器の学習処理では、まず、表情カテゴリ毎に複数用意された表情のデータについて、各表情カテゴリについて１つずつ決められた参照データに対して時間方向の位置合わせを行う。これにより、表出速度の異なる各表情のデータが、その表情カテゴリの参照データと同じ表出速度のデータに変換される。続いて、その時間伸縮されたデータセットを入力として、表情の早期認識に適した早期識別器を学習する。
【００２６】
認識対象データ（テストデータ）に対する表情の認識処理では、まずは学習処理と同様に、参照データに対して時間方向の位置合わせを行う。ただし、テストデータについては正しい表情カテゴリが分かっていないため、全ての表情カテゴリのそれぞれを正解のカテゴリとみなして時間伸縮を行う。続いて、カテゴリ数だけ作成されたその時間伸縮されたデータを早期識別器に入力し、スコアが最も高くなった表情カテゴリを認識結果として出力する。
【００２７】
本実施の形態では、表情のカテゴリとして、６つの基本表情、すなわち、幸福、怒り、驚き、恐れ、嫌悪、及び、悲しみに、無表情を加えた７つの表情、すなわち、ｃ∈｛0,1,…,6｝を対象とする場合を例に説明する。ｃ＝０は無表情を表す。カテゴリ数はＮｃ＝７である。ただし、どのようなカテゴリを認識の対象としても構わない。
【００２８】
＜システム構成＞
次に、顔画像データの時系列である動画像データを入力として、表情カテゴリを認識する表情認識装置に、本発明を適用した場合を例にして、本発明の実施の形態を説明する。
【００２９】
本実施の形態に係る表情認識装置は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）と、後述する学習処理ルーチン及び表情認識処理ルーチンを実行するためのプログラムを記憶したＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）とを備えたコンピュータで構成され、機能的には次に示すように構成されている。表情認識装置は、図１に示すように、入力部１０、学習データセット記憶部１２、参照時系列データ決定部１４、表情学習部１６、時間伸縮後学習データセット記憶部１８、早期識別器記憶部２０、表情認識部２２、第２動的時間伸縮部２４、及び早期認識部２６を備えている。なお、入力部１０は、データ取得手段の一例であり、第２動的時間伸縮部２４は、時間伸縮手段の一例である。
【００３０】
入力部１０は、対象人物の顔を含む領域を撮影した動画像データから得られる、図２に示すような対象人物の顔面上に配置された複数の特徴点の３次元(Ｄ＝３)の座標値（位置情報）を高速に計測する手段に接続されており、複数の特徴点の３次元(Ｄ＝３)の座標値を、高い時間分解能で時系列に出力する。また、入力部１０は、キーボードやマウスにも接続されており、キーボードやマウスを操作することにより入力された情報を受け付ける。
【００３１】
入力部１０は、目や口といった顔部品周辺に配置されたＫ個の特徴点のＤ次元の座標値を並べたベクトル（特徴ベクトルと呼ぶ）ｘ＝［ｘ１，１，…，ｘ１，Ｄ，ｘ２，１，…，ｘ２，Ｄ，ｘＫ，１，…，ｘＫ，Ｄ］Ｔ∈ＲＤＫを高い時間分解能で時系列に出力する。ここで、ｘｋ，ｄはｋ番目の特徴点のｄ番目の次元の成分を表す。高い時間分解能であることは表出し始めの表情からその特徴を得るために重要である。図２に、Ｋ＝２６点の場合の特徴点の配置の一例を示す。
【００３２】
本実施の形態では、特徴点の３次元(Ｄ＝３)の座標値を高速に計測する手段として、例えば、１００ ｆｌａｍｅ／ｓｅｃで動作するモーションキャプチャシステムを用いる。モーションキャプチャシステムは、対象物表面に小さなマーカーを貼り付けた状態で、その人物を複数台のカメラにて撮影し、その画像中でのマーカーの位置からそれらマーカーの３次元座標を算出する。このマーカーの位置の検出方法としては、緑色の塗料を顔面上に小さく塗ったものをマーカーとして、カラー映像から検出する方法がある。あるいは、赤外光をよく反射する素材をマーカーとし、赤外光を照射しながら赤外以外の波長の光をフィルタでカットしながら撮影した画像から検出する方法もある。または、そのようなマーカーを使用せずに、顔のテクスチャ情報のみから特徴点を検出するようにしてもよい。あるいは、特徴点の位置情報として単に単眼カメラ画像中の特徴点の画像座標（Ｄ＝２）を用いても構わない。なお、各人物に対する顔面上での特徴点の数及び配置は同一であるものとする。
【００３３】
上述した特徴ベクトルｘは、入力部１０において、人物毎に無表情時を基準として正規化される、すなわち、任意の人物の無表情時の特徴ベクトルｘが等しくなるよう変換される。そのような正規化は以下に説明するように行われる。
【００３４】
まず、後述する学習データセット中からある一人の人物の無表情時の特徴ベクトルｘＢＡＳＥを選択する。その人物の任意の表情の特徴ベクトルについてはそのまま出力する。一方、他の人物については、全ての特徴ベクトルｘに対して射影ｇを施したベクトルｇ（ｘ）を出力する。この射影ｇについては、その人物の無表情時の特徴ベクトルがなるべくｘＢＡＳＥに近くなるように求められたパラメータを用いる。この射影ｇとしては、例えば、最も簡単なものの１つとして、特徴点座標空間の各座標軸に対してスケーリングを施す方法がある。Ｄ＝３であれば、パラメータは３つであり、射影ｇを施したベクトルｇ（ｘ）は、対角行列を用いて、以下の式で表わされる。
【００３５】
【数１】
2013003706.tif 000003
【００３６】
この３つのパラメータｓ１，ｓ２，ｓ３については、基準とした人物の無表情時の特徴ベクトルｘＢＡＳＥに対する、それぞれの人物の無表情時の特徴ベクトルの射影後のベクトルｇ（ｘ）の誤差の二乗の和が最小になるときの値を用いればよく、すなわち、最小二乗誤差基準に従って算出された値を用いる。なお、この他にも、AAM(Active Appearance Models)のように、個人毎の特徴ベクトルのばらつきについての基底を求め、その上位（主要な）いくつかの基底の線形和がなるべくｘＢＡＳＥに近くなるようなパラメータを算出するという方法でも構わない。
【００３７】
また、入力部１０は、現在の時刻ｔにおける特徴ベクトルｘｔが、無表情のときの特徴ベクトルｘ０からどれだけ変化したのか、すなわち、ｚｔ＝ｇ（ｘｔ）−ｇ（ｘ０）を出力する。データが入力され始めた時刻ｔ＝１における表情が無表情であればｘ０＝ｘｔであるため、ｚｔ＝０が出力される。なお、データｚｔが、顔特徴量の一例である。
【００３８】
＜学習データ＞
入力部１０は、学習データとして、対象とするそれぞれの表情カテゴリｃについて、ｚtの時系列データをＭｃ（≧１）個ずつ用意する。それぞれの時系列データでは、表情が無表情である状態から開始され、そこから対象の表情が表出され始め、その表情が最大限に表出された時点で終了するものとする。無表情のデータについては、開始から終了まで無表情であるものとする。時系列データの総数Ｍを、以下の式で表わす。
【００３９】
【数２】
2013003706.tif 000004
【００４０】
また、ｍ∈｛１，…，Ｍ｝番目の時系列データを以下の式で表わす。
【００４１】
【数３】
2013003706.tif 000005
【００４２】
ここで、Ｔｍはｍ番目の時系列データのフレーム長を表す。それぞれの表情カテゴリについてのデータは、１人あるいは複数の人物により表出された表情について得られたデータである。ｍ番目の時系列データにおいて表出されている表情のカテゴリをｃｍとする。これら学習データのセットをまとめてＤ＝｛Ｚｍ，ｃｍ｝ｍ＝１，…，Ｍと表す。学習データに付与される表情カテゴリは、ユーザの手入力により与えられる。入力部１０は、上記の学習データのセットを、学習データセット記憶部１２に格納する。
【００４３】
ここでは、無表情の状態からそれ以外の表情を表出したものを学習データとするため、早期に認識できる表情の変化も無表情からそれ以外の表情への変化となる。ただし、本発明の枠組みは、無表情以外の表情からそれ以外の表情への変化（例えば、驚きから幸福、悲しみから無表情など）についての早期認識へも適用可能である。
【００４４】
＜表情認識対象データ＞
入力部１０は、表情を認識する対象のデータ（以下、テストデータとも称する）として、１人の人物について、データが入力され始めた時刻ｔ＝１から現在の時刻ｔまでの時系列データｚ１：ｔを出力する。ここでは、無表情からそれ以外の表情を表出し、そこから、一旦無表情に戻り、また異なる表情を表出する、ということを仮定している。ただし、前述したとおり、本発明の枠組みは、任意の表情の変化の早期認識に適用可能である。
【００４５】
＜表情学習＞
表情の学習では、入力部１０から出力される各カテゴリについて１つあるいは複数の学習データのセットを受け、各表情カテゴリについて１つずつ参照用の時系列データを決め、他の時系列データがその参照用の時系列データに対して、データｚの変化がなるべく一致するよう時間伸縮を行うとともに、それらの全ての時系列データを用いて各表情カテゴリに対してその表情カテゴリをなるべく早い表出の段階で識別するための早期識別器を学習する。
【００４６】
本実施の形態では、参照時系列データ決定部１４によって、学習データとして入力された各表情カテゴリについて、後述する第１動的時間伸縮部１６０及び第２動的時間伸縮部２４で時間伸縮を行う際の参照となる時系列データ（参照時系列データと呼ぶ）を決定する。ここでは、各表情カテゴリｃについて、学習データとしてＭｃ個ある時系列データからランダムに1つを抽出したものを参照時系列データとする。なお、予め人手で参照時系列データを決定しておいても構わない。決定された各表情カテゴリｃの参照時系列データ（データ長をＴｃ）の集合Ｚcを、以下の式で表わす。
【００４７】
【数４】
2013003706.tif 000006
【００４８】
ここで、Ｒは実数全体の集合を表し、ＲＤＫ×Ｔｃは、ＤＫ×Ｔｃ次元の実数ベクトル全体の集合を表す。
【００４９】
参照時系列データ決定部１４は、参照時系列データとして決定した結果を、学習データセット記憶部１２に格納する。
【００５０】
表情学習部１６は、第１動的時間伸縮部１６０及び早期識別器学習部１６２を備えている。なお、第１動的時間伸縮部１６０は、学習用時間伸縮手段の一例である。
【００５１】
第１動的時間伸縮部１６０は、参照時系列データＺｃ、及び、以下の式で表わされる被時間伸縮時系列データの集合Ｚを入力として、被時間伸縮時系列データのｚtの変化が参照時系列データのｚtの変化になるべく一致するように、被時間伸縮時系列データに対して時間方向の伸縮を施し、その伸縮された時系列データを出力する。図３にその時間伸縮の模式図を示す。
【００５２】
【数５】
2013003706.tif 000007
【００５３】
時間伸縮は、２つの時系列データのどの時刻のデータ同士が対応しているのかを表す対応行列Ｑ∈Ｒ2×Lを求めることで行われる。この行列Ｑのi番目の行[ｑi, ｑi´]は、被時間伸縮時系列データのｑi番目の時刻のデータｚqiと参照時系列データＺcのqi´番目の時刻のデータｚqi´cとが対応していることを表している。２つの時系列データが最も類似する場合を、以下の（１）式のように定義して、最適な対応行列^Ｑを求める。
【００５４】
【数６】
2013003706.tif 000008
【００５５】
ここで、dist(z,z´)はデータzとz´の間の距離を表す。ここでは、距離尺度としてユークリッド距離を使用することとする。ただし、どのような距離尺度を用いても構わない。Ｌは１つの時系列データを合わせるために必要なステップ数を表す。上記（１）式は動的計画法を用いて解くことが可能である。上記図３に、２つの時系列データと求められるそれらの対応を模式的に示している。
【００５６】
求めた^Ｑに従って、参照時系列データのそれぞれの時刻に対応する被時間伸縮時系列データを位置合わせしたデータの集合~Ｚを以下の式で表わす。
【００５７】
【数７】
2013003706.tif 000009
【００５８】
もしも、参照時系列データの対象時刻に対して被時間伸縮時系列データの複数の時刻が対応する場合には、位置合わせ後の時系列データにおいて、それらの平均をとった値を用いればよい。一方、参照時系列データの対象時刻に対応する被時間伸縮時系列データの時刻が存在しなければ、その前後の時刻の位置合わせされた被時間伸縮時系列データを用いて内挿あるいは外挿した値を、位置合わせ後の時系列データの値とすればよい。
【００５９】
第１動的時間伸縮部１６０は、参照時系列データ以外の全ての時系列データをそれぞれ被時間伸縮時系列データとし、被時間伸縮時系列データそれぞれを、その時系列データが属するカテゴリcに対する参照時系列データＺｃを用いて、位置合わせを行う。よって、各表情カテゴリｃに対して、参照時系列データを含めてＭc個の位置合わせ後の時系列データ~Ｚmが出力される。この位置合わせ後の時系列データと表情カテゴリを組み合わせたものの集合~Ｄを、時間伸縮後学習データセットとして、以下の式で表わす。
【００６０】
【数８】
2013003706.tif 000010
【００６１】
第１動的時間伸縮部１６０は、上記の式で表わされる時間伸縮後学習データセットを、時間伸縮後学習データセット記憶部１８に格納する。
【００６２】
早期識別器学習部１６２は、表情カテゴリ毎に早期識別器を学習する。ここで、早期識別器は、決められた速度で行われることを仮定した動作のデータからその動作の種類をできるだけ早く識別することができる識別器である。表情カテゴリ毎の早期識別器を用いた表情の認識は、以下の式に従ったものであり、入力データＺに対する認識結果〜ｃｔを出力する。
【００６３】
【数９】
2013003706.tif 000011
【００６４】
早期識別器は、各カテゴリｃに対して用意される。すなわち、この早期識別器は、各時刻に対応するデータを入力としてフレーム毎にカテゴリｃに対するスコアを返すフレームベースの弱識別器hc,tの出力を重み付けした和を、最終的なそのカテゴリｃに対するスコアＨｃ（Ｚ）として出力する。スコアＨｃ（Ｚ）を最大化するカテゴリが、表情カテゴリの認識結果となる。
【００６５】
早期識別器学習部１６２では、この弱識別器とその識別重みの組み合わせ
【００６６】
【数１０】
2013003706.tif 000012
【００６７】
を時間伸縮後の学習データセット〜Ｄを用いて学習し、認識対象の時系列データＺが、対象とする表情カテゴリcであるか否かを出力するＮc個の２クラス強識別器Hcを生成する。
【００６８】
フレームベースの弱識別器ｈc,t(z):ＲＤＫ→{1,-1}は、以下の式で表わすように、識別スコアｒｃ，ｔを最大化することによって決定される。
【００６９】
【数１１】
2013003706.tif 000013
【００７０】
ここで、gc(c´)は、gc(c´):{1,…, Nc}→{1,-1}であり、カテゴリc´を入力として受け取り、ｃ＝ｃ´ならば１を、そうでなければ−１を出力する関数である。また、Ｄｔ（ｍ，ｃ）∈Ｒは、ｍ番目の時系列データのカテゴリcに対する誤差重みである。弱識別器ｈc,tとしては任意の識別器を使用することが可能である。ここでは簡単な線形識別器としてｓｉｇｎ（ｗTｚ）とする識別器を使用する。ここでｗ∈ＲDKは最適化すべきパラメータである。このパラメータｗの最適化方法としては、任意の方法を用いて構わない。例えば、パラメータ値を逐次的に更新していくシンプレックス法などを用いればよい。
【００７１】
この誤差重みは、それぞれのカテゴリｃに対して、以下の式に従い時刻ｔ＝１よりｔを１ずつ増加させながらｔ＝Ｔcまで逐次的に計算される。
【００７２】
【数１２】
2013003706.tif 000014
【００７３】
ここで、αtは弱識別器ｈc,tの出力に対する識別重みであり、以下の式で表わされる。
【００７４】
【数１３】
2013003706.tif 000015
【００７５】
＜表情認識処理＞
表情の認識処理は、入力部１０から出力される表情カテゴリが未知の時系列データｚを受け、まず、それぞれのカテゴリを仮定して、参照時系列データに対して時間伸縮を行い、続いて、カテゴリ数だけある、時間伸縮された時系列データをそれぞれのカテゴリ用の早期識別器に与えてスコアを計算し、そのスコアが最も高くなるカテゴリを、表情のカテゴリ推定値^ｃとして出力する。
【００７６】
本実施の形態では、現在の時刻ｔまでに得られた時系列データz1:tを入力として、以下に説明するように、現時刻ｔの表情の認識結果^ｃtを出力する。
【００７７】
まず、表情認識部２２は、現在の時刻をｔとして、直前の時刻ｔ−１における認識結果が無表情、すなわち、^ｃt-1＝０であれば、位置合わせを行う時系列データＺに、現在のデータ（特徴量ベクトルの差分データ）ztを追加する。こうして得られた時系列データＺを第２動的時間伸縮部２４へ入力する。
【００７８】
一方、表情認識部２２は、直前の時刻ｔ−１における認識結果が無表情以外、すなわち、^ｃt-1≠０であれば、まず位置合わせを行う時系列データＺを空にする。そして、表情認識部２２は、そのときの表情が無表情か否かを判定する。ここでは、時刻ｔにおけるデータｚtが、無表情時のときのデータに近いかどうかで判定することとする。この判定方法の１つとして、ここでは、以下の式が成立するのであれば無表情であると判定し、そうでなければ、無表情でないと判定する。
【００７９】
【数１４】
2013003706.tif 000016
【００８０】
ここで、ｘk,d及びσk,dはｋ番目の特徴点のｄ番目の次元の成分、及び、その成分の無表情時における標準偏差を表す。この標準偏差σk,dについては、学習データセット中の各時系列データにおいて、無表情であることを仮定している最初のフレームのデータを集めて、その標準偏差を計算したものとする。この方法で、無表情でないと判定されれば、現在の表情は、直前の時刻での認識結果と同じであると認識する。
【００８１】
第２動的時間伸縮部２４は、入力された時系列データＺを被時間伸縮時系列データとし、全表情カテゴリのそれぞれにおける参照時系列データＺｃに対して位置合わせを行い、各表情カテゴリｃに対する時間伸縮結果~Ｚcを得る。位置合わせの方法は、表情学習部１６の第１動的時間伸縮部１６０と同様である。ただし、この場合、出力するのは、入力された時系列データの最終の時刻（現時刻）ｔに対応する参照時系列データの時刻ｔｃまででよい。よって、結果として、Ｎc個の位置合わせ後の時系列データ（時間伸縮後のテストデータ）の集合
【００８２】
【数１５】
2013003706.tif 000017
【００８３】
が出力される。第２動的時間伸縮部２４は、そのそれぞれの~Ｚcを早期認識部２６へ入力して認識結果^ctを得る。
【００８４】
早期認識部２６は、以下に説明するように、位置合わせ後の時系列データの集合~Ｚに対して表情カテゴリを認識し、認識結果^ctを出力する。
【００８５】
まず、以下の式に従い無表情以外の認識結果の候補~ｃtを求める。
【００８６】
【数１６】
2013003706.tif 000018
【００８７】
上記の式では、各表情カテゴリｃの早期識別器に対して、当該表情カテゴリｃの参照時系列データＺｃに対して位置合わせを行って得られた時系列データ（時間伸縮後のテストデータ）~Ｚcを入力して、スコアを求め、最大スコアとなる表情カテゴリｃを、認識結果の候補~ｃtとしている。
【００８８】
上記の式に従って求められた認識結果の候補~ctに対するスコア
【００８９】
【数１７】
2013003706.tif 000019
【００９０】
が事前に決定しておく閾値α以上であれば、最終的な認識結果＾ｃｔを＾ｃｔ＝〜ｃｔとして出力し、そうでなければ、＾ｃｔを無表情として出力する（＾ｃｔ＝０）。この閾値αについては、事前に表情を無表情のまま変化させないデータを用意しておき、それを各カテゴリの早期識別器に入力したときのスコアＨｃ（Ｚ）の平均値を、閾値αとして設定すればよい。
【００９１】
最終的な認識結果＾ｃｔが、出力部（図示省略）よりユーザに出力される。
【００９２】
＜表情認識装置の作用＞
次に、本実施の形態に係る表情認識装置の作用について説明する。まず、表情認識装置は、各表情カテゴリが予め分かっている複数の時系列データが入力され、各時系列データに対して、教師信号として表情カテゴリが入力されると、図４に示す学習処理ルーチンを実行する。
【００９３】
まず、ステップ１００において、各表情カテゴリが教師信号として与えられた複数の時系列データの入力を受け付けて、学習データセットとして学習データセット記憶部１２に格納する。次のステップ１０２では、学習データセット記憶部１２に記憶された学習データセットから、各表情カテゴリについて、参照時系列データを決定して、決定した結果を、学習データセット記憶部１２に格納する。
【００９４】
そして、ステップ１０４において、教師信号として与えられた複数の表情カテゴリのうち、学習対象の表情カテゴリとして１つの表情カテゴリを設定する。ステップ１０６では、学習対象の表情カテゴリが教師信号として与えられた時系列データのうち、参照時系列データ以外の時系列データの各々を、学習対象の表情カテゴリの参照時系列データに対して位置合わせを行うように時間伸縮し、時間伸縮後の時系列データを時間伸縮後学習データセット記憶部１８に格納する。
【００９５】
そして、ステップ１０８において、上記ステップ１０６で得られ、かつ、学習対象の表情カテゴリが教師信号として与えられた、時間伸縮後の時系列データおよび参照時系列データを用いて、学習対象の表情カテゴリに対する早期識別器を学習して、学習結果を早期識別器記憶部２０に格納する。
【００９６】
そして、ステップ１１０では、全ての表情カテゴリについて、上記ステップ１０４〜１０８の処理を実行したか否かを判定し、上記ステップ１０４〜１０８の処理を実行していない表情カテゴリが存在する場合には、上記ステップ１０４へ戻り、当該表情カテゴリを、学習対象の表情カテゴリとして設定する。一方、全ての表情カテゴリについて、上記ステップ１０４〜１０８の処理を実行した場合には、学習処理ルーチンを終了する。
【００９７】
そして、モーションキャプチャシステムから、対象人物の顔面上に配置された複数の特徴点の座標値（位置情報）の時系列データが得られているときに、表情認識装置は、図５に示す表情認識処理ルーチンを実行する。
【００９８】
ステップ１２０において、^ｃ0＝０, Ｚ＝[ ]（位置合わせを行う時系列データＺは空）と初期化する。次のステップ１２２では、現時刻を示す変数ｔを１に設定し、ステップ１２４において、時刻ｔのデータｚt（特徴ベクトルｘの差分データ）を取得する。
【００９９】
そして、ステップ１２６において、一時刻前の時刻ｔ−１における表情カテゴリの認識結果が無表情であるか否か、すなわち^ｃt-1＝０であるか否かを判定する。^ｃt-1＝０である場合には、ステップ１２８において、位置合わせを行う時系列データＺに現時刻のデータｚtを追加する。この処理を、Ｚ←[Ｚ, ｚt]と表す。
【０１００】
そして、ステップ１３０において、各表情カテゴリについて、時系列データＺ（例えば、Ｚ＝｛ｚt｝）を被時間伸縮時系列データとし、当該表情カテゴリの参照時系列データＺｃに対して位置合わせを行うように時間伸縮処理を行い、各表情カテゴリｃに対する時間伸縮後の時系列データ~Ｚcを得る。
【０１０１】
次のステップ１３２において、各表情カテゴリについて、上記ステップ１３０で得られた当該表情カテゴリｃに対する時間伸縮後の時系列データ~Ｚcと、当該表情カテゴリｃに対する早期識別器とに基づいて、スコアを算出する。
【０１０２】
そして、ステップ１３４では、上記ステップ１３２で算出されたスコアに基づいて、現時刻ｔの表情カテゴリ＾ｃｔを認識して出力し、ステップ１４４へ移行する。
【０１０３】
一方、上記ステップ１２６において、一時刻前の時刻ｔ−１における表情カテゴリの認識結果が無表情でないと判定された場合には、ステップ１３６において、位置合わせを行う時期列データＺを空にする。この処理を、Ｚ←[  ]と表す。
【０１０４】
次のステップ１３８では、現時刻ｔのデータｚｔに基づいて、現時刻ｔの表情カテゴリが無表情であるか否かを判定する。現時刻ｔの表情カテゴリが無表情であると判定された場合には、ステップ１４０において、現時刻ｔの表情カテゴリ＾ｃｔが無表情である（＾ｃｔ＝０）と認識して出力し、ステップ１４４へ移行する。
【０１０５】
一方、上記ステップ１３８において、現時刻ｔの表情カテゴリが無表情でないと判定された場合には、ステップ１４２において、現時刻ｔの表情カテゴリ＾ｃｔが、一時刻前の時刻ｔ−１で認識された表情カテゴリと同じ表情カテゴリである（＾ｃｔ＝＾ｃｔ-1）と認識して出力し、ステップ１４４へ移行する。
【０１０６】
ステップ１４４では、時刻ｔを１インクリメントして、ステップ１２４へ戻る。
【０１０７】
以上のように、表情認識処理ルーチンにより、各時刻ｔの表情カテゴリの認識結果＾ｃｔが出力される。
【０１０８】
以上説明したように、本実施の形態に係る表情認識装置によれば、表情カテゴリ毎に早期識別器を学習するときに用いた参照用の時系列データに対して、データｚtの変化が対応するように、無表情の状態から変化するときの時系列データｚtを時間方向に伸縮させてから、複数の表情カテゴリの各々に対する早期識別器に基づいて、人物の顔の表情カテゴリを認識することにより、表情カテゴリの変化が様々な速度で行われても、表情カテゴリを精度良く、かつ早期に認識することができる。
【０１０９】
また、顔の表情が表出され始めた直後、すなわち、表情が無表情からまだそれほど大きく変化していない段階であっても、その表情カテゴリを正しく認識できる。例えば、ある表情が一瞬表出された後、直ちに別の表情によって隠蔽された場合であっても、隠蔽された表情を認識することが可能となる。この表情の隠蔽が生じるのは、怒りや嫌悪といった感情を起因として不随意的、瞬間的かつ微細に表出される、社会的な場面においてはあまり望ましくない否定的な表情が、直ちに笑顔など他の肯定的あるいは中立的な表情によって隠されるといった場合である。このような隠蔽された表情を認識することは、対象人物の感情を正確に推定する上で重要であると考えられる。
【０１１０】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０１１１】
例えば、上述の表情認識装置は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
【０１１２】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【０１１３】
１０   入力部
１２   学習データセット記憶部
１４   参照時系列データ決定部
１６   表情学習部
１８   時間伸縮後学習データセット記憶部
２０   早期識別器記憶部
２２   表情認識部
２４   第２動的時間伸縮部
２６   早期認識部
１６０ 第１動的時間伸縮部
１６２ 早期識別器学習部
【図１】
2013003706.tif 000020
【図３】
2013003706.tif 000021
【図４】
2013003706.tif 000022
【図５】
2013003706.tif 000023
【図２】
2013003706.tif 000024