(57)【要約】【課題】顔の個人差の影響を受けることなく、高い精度でヒトの感情を推定する。【解決手段】演算装置、前記演算装置に接続される記憶装置、前記演算装置に接続されるインタフェースを備える計算機であって、演算装置は、ユーザの顔を含む画像データを取得し、画像データにおける前記ユーザの顔に複数の特徴点を設定し、複数の画像データを用いて、時間の経過に伴う複数の特徴点間の関係性を示す時間的関係性指標を算出して、時間的関係性指標を含む算出データを生成し、複数の算出データを用いて、時間の経過に伴う時間的関係性指標の変化量を算出し、時間的関係性指標の変化量に基づいて、ユーザの感情を推定する。【選択図】図１２
2019200656.tif 000002
【特許請求の範囲】
【請求項１】
演算装置、前記演算装置に接続される記憶装置、前記演算装置に接続されるインタフェースを備える計算機であって、
前記演算装置は、
ユーザを含む画像を取得して、前記ユーザの顔を含む表情データを生成し、
前記表情データにおける前記ユーザの顔に複数の特徴点を設定し、
前記表情データの時系列データを用いて、時間の経過に伴う前記複数の特徴点間の時間的関係性を示す時間的関係性指標を算出し、
前記時間的関係性指標の時系列データを用いて、時間の経過に伴う前記時間的関係性指標の変化量を算出し、
前記時間的関係性指標の変化量に基づいて、前記ユーザの感情を推定することを特徴とする計算機。
【請求項２】
請求項１に記載の計算機であって、
前記記憶装置は、前記ユーザの感情及び閾値から構成される推定規則を管理するための感情推定規則情報を保持し、
前記演算装置は、前記時間的関係性指標の変化量及び前記閾値の比較結果に基づいて、前記ユーザの感情を推定することを特徴とする計算機。
【請求項３】
請求項２に記載の計算機であって、
前記時間的関係性指標は、前記複数の特徴点間の相関係数であることを特徴とする計算機。
【請求項４】
請求項３に記載の計算機であって、
前記演算装置は、前記ユーザの両眼に設定された前記特徴点間の前記相関係数、前記ユーザの口に設定された前記特徴点間の前記相関係数、前記ユーザの口及び眼の各々に設定された前記特徴点間の前記相関係数の少なくともいずれかを前記時間的関係性指標として算出することを特徴とする計算機。
【請求項５】
請求項２に記載の計算機であって、
前記演算装置は、前記ユーザの感情が変化する可能性を示す発生度を算出するための感情信号を取得し、
前記感情信号を用いて前記発生度を算出し、
前記時間的関係性指標の変化量及び前記発生度に基づいて、前記ユーザの感情を推定することを特徴とする計算機。
【請求項６】
請求項５に記載の計算機であって、
前記演算装置は、
前記発生度に基づいて、前記ユーザの感情が変化するか否かを判定し、
前記判定の結果及び前記時間的関係性指標の変化量に基づいて、前記ユーザの感情を推定することを特徴とする計算機。
【請求項７】
請求項２に記載の計算機であって、
前記演算装置は、
前記ユーザの感情の推定結果に基づいて、前記ユーザの表情を評価する情報及び前記ユーザの対話を補助する情報を前記ユーザに呈示するための出力情報を生成し、
前記インタフェースを介して前記出力情報を出力することを特徴とする計算機。
【請求項８】
演算装置、前記演算装置に接続される記憶装置、前記演算装置に接続されるインタフェースを備える計算機が実行する感情推定方法であって、
前記演算装置が、ユーザを含む画像を取得して、前記ユーザの顔を含む表情データを生成する第１のステップと、
前記演算装置が、前記表情データにおける前記ユーザの顔に複数の特徴点を設定する第２のステップと、
前記演算装置が、前記表情データの時系列データを用いて、時間の経過に伴う前記複数の特徴点間の時間的関係性を示す時間的関係性指標を算出する第３のステップと、
前記演算装置が、前記時間的関係性指標の時系列データを用いて、時間の経過に伴う前記時間的関係性指標の変化量を算出する第４のステップと、
前記演算装置が、前記時間的関係性指標の変化量に基づいて、前記ユーザの感情を推定する第５のステップと、を含むことを特徴とする感情推定方法。
【請求項９】
請求項８に記載の感情推定方法であって、
前記記憶装置は、前記ユーザの感情及び閾値から構成される推定規則を管理するための感情推定規則情報を保持し、
前記第５のステップは、前記演算装置が、前記時間的関係性指標の変化量及び前記閾値の比較結果に基づいて、前記ユーザの感情を推定するステップを含むことを特徴とする感情推定方法。
【請求項１０】
請求項９に記載の感情推定方法であって、
前記時間的関係性指標は、前記複数の特徴点間の相関係数であることを特徴とする感情推定方法。
【請求項１１】
請求項１０に記載の感情推定方法であって、
前記演算装置は、前記ユーザの両眼に設定された前記特徴点間の前記相関係数、前記ユーザの口に設定された前記特徴点間の前記相関係数、前記ユーザの口及び眼の各々に設定された前記特徴点間の前記相関係数の少なくともいずれかを前記時間的関係性指標として算出することを特徴とする感情推定方法。
【請求項１２】
請求項９に記載の感情推定方法であって、
前記演算装置が、前記ユーザの感情が変化する可能性を示す発生度を算出するための感情信号を取得するステップと、
前記演算装置が、前記感情信号を用いて前記発生度を算出するステップと、を含み、
前記第５のステップは、前記演算装置が、前記時間的関係性指標の変化量及び前記発生度に基づいて、前記ユーザの感情を推定するステップを含むことを特徴とする感情推定方法。
【請求項１３】
請求項１２に記載の感情推定方法であって、
前記演算装置が、前記発生度に基づいて、前記ユーザの感情が変化するか否かを判定するステップを含み、
前記第５のステップは、前記演算装置が、前記判定の結果及び前記時間的関係性指標の変化量に基づいて、前記ユーザの感情を推定するステップを含むことを特徴とする感情推定方法。
【請求項１４】
請求項９に記載の感情推定方法であって、
前記演算装置が、前記ユーザの感情の推定結果に基づいて、前記ユーザの表情を評価する情報及び前記ユーザの対話を補助する情報を前記ユーザに呈示するための出力情報を生成するステップと、
前記演算装置が、前記インタフェースを介して前記出力情報を出力するステップと、を含むことを特徴とする感情推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
顔画像を用いてユーザの感情を推定するシステムに関する。
【背景技術】
【０００２】
表情は、基本的な非言語情報の一つであり、ヒトとヒトが対話する際に互いの感情を伝達するための情報伝達方法として広く用いられている。そのため、自分の感情を効果的に伝達するために表情をつくったり、相手の表情から感情を読み取ったりすることは、対話において重要である。
【０００３】
また近年は、ヒトと対話するロボット及びＣＧ等の対話インタフェースの分野では、ヒトの表情から感情を推定し、推定した感情に対して適切な応答を行う技術の開発が進められている。
【０００４】
ヒトの表情から感情を推定する技術としては、特許文献１に記載の技術が知られている。特許文献１には、「表情学習部１６によって、各表情カテゴリについて、無表情から当該表情カテゴリへ変化したときの参照用の時系列データに基づいて、当該表情カテゴリであるか否かを識別する早期識別器を学習する。入力部１０によって、無表情からの変化を示す時系列データを取得する。第２動的時間伸縮部２４によって、各表情カテゴリについて、取得された時系列データを、当該表情カテゴリへ変化するときの参照用の時系列データに対してデータの変化が一致するように時間方向に伸縮させた時間伸縮時系列データを各々生成する。早期認識部２６によって、各表情カテゴリについて生成された時間伸縮時系列データと、各表情カテゴリに対する早期識別器とに基づいて、人物の顔の表情カテゴリを認識する」ことが記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１３−３７０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載の技術では、参照用の時系列データに基づいて、表情変化が様々な速度で行われても、迅速かつ高い精度で表情を認識できる。
【０００７】
しかし、ヒトの顔及び顔の部位の形及び大きさ、並びに、顔の部位の配置は、ヒトごとに異なり、また、表情変化に伴う顔の部位の配置の変化も、ヒトごとに異なる。そのため、推定対象のヒト（ユーザ）の参照用の時系列データが存在しない場合、ヒトの表情を認識できない可能性がある。例えば、大人の表情変化を示す参照用の時系列データを用いて子供の表情変化を認識する場合、特許文献１に記載の技術では子供の表情を高い精度で認識できない可能性がある。したがって、特許文献１に記載の技術は、参照用の時系列データには、認識対象のユーザ自身のデータが含まれる必要がある。
【０００８】
本発明では、顔の個人差の影響を受けることなく、ヒトの表情からヒトの感情を高い精度で推定する技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、演算装置、前記演算装置に接続される記憶装置、前記演算装置に接続されるインタフェースを備える計算機であって、前記演算装置は、ユーザの顔を含む画像データを取得し、前記画像データにおける前記ユーザの顔に複数の特徴点を設定し、複数の前記画像データを用いて、時間の経過に伴う前記複数の特徴点間の関係性を示す時間的関係性指標を算出して、前記時間的関係性指標を含む算出データを生成し、前記複数の算出データを用いて、時間の経過に伴う前記時間的関係性指標の変化量を算出し、前記時間的関係性指標の変化量に基づいて、前記ユーザの感情を推定する。
【発明の効果】
【００１０】
本発明によれば、顔の個人差の影響を受けることなく、ヒトの表情からヒトの感情を高い精度で推定できる。上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１１】
【図１】実施例１のシステムの構成例を示す図である。
【図２】実施例１の計算機の詳細な構成の一例を示す図である。
【図３Ａ】実施例１の表情データ情報のデータ構造の一例を示す図である。
【図３Ｂ】実施例１の表情データ情報のデータ構造の一例を示す図である。
【図４】実施例１の表情特徴量分析情報のデータ構造の一例を示す図である。
【図５】実施例１の時間的関係性指標情報のデータ構造の一例を示す図である。
【図６】実施例１の時間的関係性指標分析情報のデータ構造の一例を示す図である。
【図７】実施例１の感情情報のデータ構造の一例を示す図である。
【図８】実施例１の感情推定規則情報のデータ構造の一例を示す図である。
【図９】実施例１の計算機が実行する感情推定処理を説明するフローチャートである。
【図１０】実施例１の基準点及び特徴点の設定例を示す図である。
【図１１】実施例１の感情推定処理の流れを説明する図である。
【図１２】実施例１の計算機が実行する出力処理を説明するフローチャートである。
【図１３】実施例２のシステムの構成例を示す図である。
【図１４】実施例２の計算機の詳細な構成の一例を示す図である。
【図１５】実施例２の感情信号情報のデータ構造の一例を示す図である。
【図１６】実施例２の発生度情報のデータ構造の一例を示す図である。
【図１７】実施例２の感情変化推定規則情報のデータ構造の一例を示す図である。
【図１８Ａ】実施例２の計算機が実行する感情推定処理を説明するフローチャートである。
【図１８Ｂ】実施例２の計算機が実行する感情推定処理を説明するフローチャートである。
【図１９】実施例３の出力装置に表示されるＧＵＩの一例を示す図である。
【図２０】実施例３の出力装置に表示されるＧＵＩの一例を示す図である。
【図２１】実施例４の出力装置に表示されるＧＵＩの一例を示す図である。
【発明を実施するための形態】
【００１２】
発明の概要について説明する。
【００１３】
計算機は、ユーザの顔を含む画像を取得し、顔画像を表情データとして生成し、表情データに表情の変化を計測するための特徴点を設定する。計算機は、一定の時間範囲に含まれる表情データの時系列データを処理することによって、特徴点間の時間変化に伴う関係性、すなわち、特徴点間の時間的関係性を表す時間的関係性指標を算出する。さらに、計算機は、時間的関係性指標の時系列データに基づいて、時間変化に伴う時間的関係性指標の変化量を算出する。計算機は、時間的関係性指標の変化量に基づいて、ユーザの感情を推定する。
【００１４】
なお、表情データは、ユーザの顔だけを含む画像データに限定されず、手及び上半身等の身体の一部が含まれる画像でもよいし、また、目及び口等の顔の一部のみが含まれる画像でもよい。
【００１５】
なお、特徴点は画像の任意の位置に設定できる。例えば、ユーザの表情に関する情報を含む位置に特徴点を設定する。
【００１６】
以下、実施例を図面を用いて説明する。各図において共通の構成については同一の参照符号が付されている。
【実施例１】
【００１７】
図１は、実施例１のシステムの構成例を示す図である。
【００１８】
システムは、計算機１００、表情信号計測装置１１０、及び出力装置１２０から構成される。また、計算機１００には、マウス、キーボード、及びタッチパネル等の入力装置１３０が接続される。
【００１９】
表情信号計測装置１１０は、ユーザから表情信号を取得する。表情信号は、ユーザから取得される信号であって、表情データを算出するために用いられる信号である。実施例１では、ユーザの顔の全体又は一部を含む画像信号が表情信号として取得される。
【００２０】
計算機１００は、表情データを用いてユーザの感情を推定するための処理を実行する。また、計算機１００は、出力装置１２０にユーザの感情の推定結果を含む情報を出力する。計算機１００は、前述の処理を実現する構成として、表情データ処理モジュール１０１及び出力モジュール１０２を有し、また、情報群１０３を保持する。
【００２１】
表情データ処理モジュール１０１は、表情信号からユーザの顔周辺の領域の画像を切り出すことによって表情データを生成し、表情データに特徴点及び基準点を設定する。なお、画像から特定の領域の画像を切り出す方法は、画像の特徴量を用いた統計解析及び機械学習を利用する方法が考えられる。
【００２２】
基準点は、実施例１において特徴点間の時間的関係性を分析するために設定される。基準点は表情データに対応する画像上のいずれかの位置に設定する。例えば、画像の左上端に基準点を設定する。また、基準点は、特徴点と一致するように設定されてもよい。
【００２３】
実施例１では、表情データ処理モジュール１０１は、眼及び口に特徴点を設定し、鼻に基準点を設定する。
【００２４】
なお、特徴点及び基準点は、専門家が設定してもよいし、公知の特徴点及び基準点の設定方法又は設定ツールを用いて設定してもよい。
【００２５】
表情データ処理モジュール１０１は、特徴点及び基準点に基づいて表情特徴量を算出する。ここで、表情特徴量は、ユーザの表情の特徴を表す指標である。一つの表情データからは、少なくとも一つの表情特徴量が算出される。表情データ処理モジュール１０１は、表情データの時系列データに基づいて、特徴点間の時間的関係性を示す時間的関係性指標を算出する。
【００２６】
表情データ処理モジュール１０１は、時間的関係性指標の時系列データに基づいて、時間的関係性指標の変化量を算出し、当該変化量に基づいてユーザの感情を推定する。表情データ処理モジュール１０１は、ユーザの感情の推定結果に基づいて感情情報２１５（図２参照）を生成する。
【００２７】
出力モジュール１０２は、感情情報２１５を呈示するための出力情報を生成し、出力情報を出力装置１２０に出力する。
【００２８】
出力装置１２０は、計算機１００が出力したデータに基づいて画面を表示する。入力装置１３０は、計算機１００に情報（外部信号）を入力するための装置である。外部信号は、例えば、計算機１００の動作を制御するための信号から、時間的関係性指標の算出及び感情情報の生成に必要な情報を含む信号を除いた信号である。
【００２９】
なお、計算機１００が有する各モジュールは、二つ以上のモジュールを一つのモジュールにまとめてもよいし、一つのモジュールを機能毎に複数のモジュールに分けてもよい。
【００３０】
図２は、実施例１の計算機１００の詳細な構成の一例を示す図である。
【００３１】
図２に示すように、計算機１００は、演算装置２０１、記憶装置２０２、入力インタフェース２０３、及び出力インタフェース２０４を有する。
【００３２】
演算装置２０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）及びＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等のハードウェアであり、記憶装置２０２に格納されるプログラムを実行する。演算装置２０１は、プログラムにしたがって動作することによって、所定のモジュールとして機能する。実施例１では、演算装置２０１は、表情データ処理モジュール１０１及び出力モジュール１０２として動作する。
【００３３】
記憶装置２０２は、メモリ等のハードウェアであり、演算装置２０１が実行するプログラム及び当該プログラムが使用する情報を格納する。また、記憶装置２０２は、プログラムが使用するワークエリアを含む。記憶装置２０２に格納されるプログラム及び情報については後述する。
【００３４】
入力インタフェース２０３は、表情信号及び外部信号等の入力を受け付けるハードウェアである。ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）規格の接続線で信号を入力する装置と接続される場合、ＵＳＢ端子が入力インタフェース２０３になり、ネットワークを介して信号を入力する装置と接続される場合、ネットワークインタフェースが入力インタフェース２０３となる。
【００３５】
出力インタフェース２０４は、出力情報等を出力するハードウェアである。情報を出力する装置がディスプレイの場合、ＶＧＡ端子又はＨＤＭＩ端子（ＨＤＭＩは登録商標）等が出力インタフェース２０４となり、情報を出力する装置がスピーカの場合、ＵＳＢ端子が出力インタフェース２０４となる。
【００３６】
ここで、記憶装置２０２に格納されるプログラム及び情報について説明する。
【００３７】
記憶装置２０２は、表情データ処理モジュール１０１及び出力モジュール１０２を実現するためのプログラムを格納する。また、記憶装置２０２は、表情データ情報２１１、表情特徴量分析情報２１２、時間的関係性指標情報２１３、時間的関係性指標分析情報２１４、感情情報２１５、及び感情推定規則情報２１６を格納する。
【００３８】
表情データ情報２１１は、表情信号及び表情データを管理するための情報である。表情データ情報２１１のデータ構造の一例は図３Ａ及び図３Ｂを用いて説明する。表情特徴量分析情報２１２は、表情特徴量の時間変化の分析結果を管理するための情報である。表情特徴量分析情報２１２のデータ構造の一例は図４を用いて説明する。時間的関係性指標情報２１３は、時間的関係性指標を管理するための情報である。時間的関係性指標情報２１３のデータ構造の一例は図５を用いて説明する。時間的関係性指標分析情報２１４は、時間的関係性指標の時間変化の分析結果を管理するための情報である。時間的関係性指標分析情報２１４のデータ構造の一例は図６を用いて説明する。感情情報２１５は、感情の推定結果を管理するための情報である。感情情報２１５のデータ構造の一例は図７を用いて説明する。感情推定規則情報２１６は、ユーザの感情を推定時に使用される規則を管理するための情報である。感情推定規則情報２１６のデータ構造の一例は図８を用いて説明する。
【００３９】
図３Ａ及び図３Ｂは、実施例１の表情データ情報２１１のデータ構造の一例を示す図である。説明のため、表情データ情報２１１を二つの図に分けて説明する。
【００４０】
表情データ情報２１１は、ＩＤ３０１、取得時刻３０２、信号種別３０３、表情信号３０４、データ種別３０５、表情データ３０６、基準点名称３０７、基準点３０８、特徴点名称３０９、特徴点３１０、及び表情特徴量３１１から構成されるエントリを格納する。一つの表情データ（表情信号）に対して一つのエントリが存在する。
【００４１】
ＩＤ３０１は、表情信号を識別するための識別情報を格納するフィールドである。ＩＤ３０１には、例えば、識別番号が格納される。
【００４２】
取得時刻３０２は、表情信号が取得された時刻を格納するフィールドである。取得時刻３０２には、表情信号計測装置１１０が表情信号を取得した時刻及び計算機１００が表情信号計測装置１１０から表情信号を取得した時刻のいずれかが格納される。なお、実施例１の時刻は、計測開始時刻からの経過時間を表すものとする。
【００４３】
信号種別３０３は、表情信号の名称等の表情信号の種別を格納するフィールドである。表情信号の種別は、表情信号計測装置１１０が取得する表情信号の種別に基づいて設定される。実施例１の表情信号計測装置１１０は画像信号を取得するため、信号種別３０３には「画像」が格納される。表情データ処理モジュール１０１は、表情信号から名称を取得してもよいし、また、前回登録されたエントリの信号種別３０３から名称を取得してもよい。
【００４４】
なお、表情信号を取得する表情信号計測装置１１０が複数存在する場合、どの表情信号計測装置１１０が取得した表情信号であるかを判別できる値を予め設定し、当該値を信号種別３０３に格納してもよい。
【００４５】
表情信号３０４は、表情信号を格納するフィールドである。表情信号３０４には、表情信号そのものが格納され、又は、ピクセルの座標及びＲＧＢ値の組がピクセルの数だけ格納される。実施例１では、ピクセルの座標及びＲＧＢ値の組が表情信号３０４に格納されるものとする。表情信号に対応する画像の大きさは、縦６４０ピクセル×横４８０ピクセルであるものとする。また、画像の左上端のピクセルの座標を（１，１）とし、画像の右下端のピクセルの座標を（６４０，４８０）とする。
【００４６】
データ種別３０５は、表情データの名称等の表情データの種別を格納するフィールドである。実施例１の表情データは顔画像であるため、データ種別３０５には「顔画像」が格納される。
【００４７】
表情データ３０６は、表情信号から生成された表情データを格納するフィールドである。表情データ３０６には、例えば、ピクセルの座標及びＲＧＢ値の組がピクセルの数だけ格納される。表情データに対応する画像の大きさは、縦２００ピクセル×横２００ピクセルであるものとする。
【００４８】
基準点名称３０７は、基準点の名称を格納するフィールドである。実施例１では、鼻尖に基準点が設定されるため、基準点名称３０７には「鼻尖」が格納される。
【００４９】
基準点３０８は、表情データに対応する画像における基準点の位置（座標）を格納するフィールドである。実施例１の基準点３０８には、鼻尖に対応するピクセルの座標が格納される。基準点は、表情データにおける顔の位置及び向きを補正するために使用される。したがって、表情の変化に伴う顔に対する位置の変化が小さい部位を基準点に選択することが望ましい。例えば、基準点は、特徴点と異なる位置に設定する。
【００５０】
なお、距離センサ及び角度センサ等を用いて、表情データにおける顔の位置及び向きを補正できる場合、一つの特徴点を基準点に設定してもよいし、また、表情データの任意の位置を基準点に設定してもよい。
【００５１】
特徴点名称３０９は、特徴点の名称を格納するフィールドである。特徴点名称３０９には、例えば、「左眼左上」等の顔の部位の名称が格納される。特徴点名称３０９に格納される番号は、特徴点の識別番号を表す。
【００５２】
特徴点３１０は、表情データに対応する画像における特徴点の位置（座標）を格納するフィールドである。特徴点は、一つの表情データに対して少なくとも二つ設定される。特徴点は、ユーザの表情変化の検知を目的として設定されるため、表情の変化に伴う顔に対する位置の変化が大きい部位を特徴点に選択することが望ましい。例えば、眉、眼、及び口等を特徴点として選択することが考えられる。
【００５３】
実施例１の計算機１００は、表情データのユーザの顔に１８点の特徴点を設定する。具体的には、左眼に４点、右目に４点、及び口に１０点の特徴点が設定される。したがって、一つのエントリの特徴点３１０には１８個の座標の組の行が含まれる。
【００５４】
表情特徴量３１１は、時間的関係性指標を算出するための表情特徴量を格納するフィールドである。ここで、実施例１の表情特徴量について説明する。実施例１では、表情データにおける基準点と特徴点との間の距離が表情特徴量として算出される。したがって、一つの特徴点に対して一つの表情特徴量が算出される。距離は、座標の差の二乗の総和の平方根として与えられる。
【００５５】
なお、前述した表情特徴量は一例であってこれに限定されない。例えば、二つの基準点を設定し、二つの基準点と特徴点とが成す角度を表情特徴量として算出してもよい。
【００５６】
なお、一つの表情データから表示特徴量を算出できる場合、ノイズの除去をするために、複数の表情データを用いて表情特徴量を算出してもよい。
【００５７】
図４は、実施例１の表情特徴量分析情報２１２のデータ構造の一例を示す図である。
【００５８】
表情特徴量分析情報２１２は、ＩＤ４０１、算出時刻４０２、特徴点名称４０３、及び第一変化量４０４から構成されるエントリを格納する。表情データの時系列データの分析結果に対して一つのエントリが存在する。
【００５９】
ＩＤ４０１は、表情特徴量分析情報２１２のエントリを識別するための識別情報を格納するフィールドである。なお、ＩＤ４０１は、ＩＤ３０１とは異なるフィールドである。
【００６０】
算出時刻４０２は、第一変化量の算出時に用いた表情データの時系列データを特定するための時刻を格納する。実施例１では、表情データの時系列データの取得時刻３０２の中で最新の時刻が算出時刻４０２に格納される。
【００６１】
特徴点名称４０３は、特徴点名称３０９と同一のフィールドである。
【００６２】
第一変化量４０４は、時間の経過に伴う表示特徴量の変化量を格納するフィールドである。例えば、一つの表情データの表情特徴量と当該表情データより時系列が一つ前の表情データの表情特徴量との差が第一変化量４０４に格納される。また、所定の時間範囲に含まれる表情データのペアの表情特徴量の差の平均値が第一変化量４０４に格納される。
【００６３】
図６は、実施例１の時間的関係性指標情報２１３のデータ構造の一例を示す図である。
【００６４】
時間的関係性指標情報２１３は、ＩＤ５０１、算出時刻５０２、時間的関係性指標ＩＤ５０３、及び時間的関係性指標５０４から構成されるエントリを格納する。第一変化量の時系列データの分析結果に対して一つのエントリが存在する。
【００６５】
ＩＤ５０１は、時間的関係性指標情報２１３のエントリを識別するための識別情報を格納するフィールドである。なお、ＩＤ５０１は、ＩＤ３０１及びＩＤ４０１とは異なるフィールドである。
【００６６】
算出時刻５０２は、時間的関係性指標の算出時に用いた第一変化量の時系列データを特定するための時刻を格納する。実施例１では、第一変化量の時系列データの算出時刻４０２の中で最新の時刻が算出時刻５０２に格納される。
【００６７】
時間的関係性指標ＩＤ５０３は、時間的関係性指標の識別情報を格納するフィールドである。時間的関係性指標ＩＤ５０３には、特徴点の識別番号の組が格納される。
【００６８】
時間的関係性指標５０４は、時間的関係性指標を格納するフィールドである。実施例１の時間的関係性指標は特徴点間の相関係数である。特徴点間の相関係数は、例えば、二つの表情データを用いて算出されるピアソンの積率相関係数である。
【００６９】
なお、時間的関係性指標を算出するためのアルゴリズムは、前述したものに限定されない。専門家が適宜アルゴリズムを設定する。
【００７０】
なお、時間的関係性指標は相関係数に限定されない。例えば、表情特徴量の変化量が閾値を超えた時刻における特徴点間の差、及び特徴点間の比等を、時間的関係性指標としてもよい。
【００７１】
図６は、実施例１の時間的関係性指標分析情報２１４のデータ構造の一例を示す図である。
【００７２】
時間的関係性指標分析情報２１４は、ＩＤ６０１、時間的関係性指標ＩＤ６０２、及び第二変化量６０３から構成されるエントリを格納する。時間的関係性指標の時系列データの分析結果に対して一つのエントリが存在する。
【００７３】
ＩＤ６０１は、時間的関係性指標分析情報２１４のエントリを識別するための識別情報を格納するフィールドである。なお、ＩＤ６０１は、ＩＤ３０１、ＩＤ４０１、及びＩＤ５０１とは異なるフィールドである。
【００７４】
時間的関係性指標ＩＤ６０２は、時間的関係性指標ＩＤ５０３と同一のフィールドである。
【００７５】
第二変化量６０３は、時間的関係性指標の時系列データから算出される、時間の経過に伴う時間的関係性指標の変化量、すなわち、特徴点間の時間的関係性の変化を示す値を格納するフィールドである。
【００７６】
時間的関係性指標の変化量は、例えば、算出時刻５０２が最新の時間的関係性指標と、算出時刻５０２が２番目に新しい時間的関係性指標との差として算出される。また、時間的関係性指標の変化量は、算出時刻５０２が最新の時間的関係性指標と、時系列データの中で最新の時刻から一定時間前の時間的関係性指標との差として算出される。
【００７７】
実施例１では、時間の経過に伴う相関係数の変化量が第二変化量６０３に格納される。相関係数の変化量は、例えば、相関係数の差（第一変化量４０４）又はフィッシャーのＺ変換を相関係数に行った後の値の差として算出できる。
【００７８】
なお、第二変化量６０３には、相関係数の変化量として、数値の代わりに、正負を示す値を時間的関係性指標ＩＤ６０２してもよい。
【００７９】
図７は、実施例１の感情情報２１５のデータ構造の一例を示す図である。
【００８０】
感情情報２１５は、ＩＤ７０１、感情７０２、感情変化フラグ７０３、及び変化度７０４から構成されるエントリを格納する。
【００８１】
ＩＤ７０１は、ＩＤ６０１と同一のフィールドである。
【００８２】
感情７０２は、表情データの分析によって推定された感情を格納するフィールドである。感情７０２には、例えば、幸福感、悲しみ、怒り、恐れ、嫌悪、及び驚きのいずれかが格納される。なお、前述した以外の感情が設定されてよい。
【００８３】
感情変化フラグ７０３は、感情変化の有無を示す情報を格納するフィールドである。今回推定された感情が前回の推定された感情と異なる場合、感情変化フラグ７０３には「あり」が格納され、今回推定された感情が前回の推定された感情と同一である場合、感情変化フラグ７０３には「なし」が格納される。
【００８４】
変化度７０４は、感情変化の程度を表す変化度を格納するフィールドである。例えば、第二変化量６０３と後述する閾値８０４との差が変化度７０４に格納される。また、複数の第二変化量６０３と閾値８０４との差の絶対値の合計を変化度７０４に格納してもよい。なお、前述した差は、最小値が０、最大値が１００となるようにスケール変換してもよい。
【００８５】
変化度は、感情が変化したと判定された時の第二変化量６０３及び閾値８０４を用いて算出してもよい。また、変化度は、一定時間範囲に含まれる時間的関係性指標の時系列データから算出された第二変化量６０３及び閾値８０４を用いて算出してもよい。
【００８６】
例えば、感情変化フラグ７０３に「あり」が格納された後に算出された第二変化量６０３及び閾値８０４の差、又は、感情変化フラグ７０３に「あり」が格納された時を始点とする時間範囲に算出された第二変化量６０３及び閾値８０４の差の絶対値の合計値を変化度として算出する。
【００８７】
図８は、実施例１の感情推定規則情報２１６のデータ構造の一例を示す図である。
【００８８】
感情推定規則情報２１６は、規則ＩＤ８０１、感情変化８０２、部位８０３、及び閾値８０４から構成されるエントリを含む。一つの推定規則に対して一つのエントリが存在する。一つの推定規則には、一つ以上の適合条件が含まれる。適合条件は、部位８０３及び閾値８０４によって指定される。実施例１では、一つの推定規則に三つの適合条件が含まれる。
【００８９】
規則ＩＤ８０１は、推定規則を識別するための識別情報を格納するフィールドである。
【００９０】
感情変化８０２は、変化前の感情及び変化後の感情の組を格納するフィールドである。
【００９１】
部位８０３は、比較する第二変化量６０３を指定するための特徴点の組の情報を格納するフィールドある。一つの推定規則に対して、複数の部位８０３を指定することができる。
【００９２】
「眼の特徴点」は、両眼に対応する特徴点間に関する第二変化量が対象となる。「口の特徴点」は、口に対応する特徴点間に関する第二変化量が対象となる。「眼と口の特徴点」は、眼及び口に対応する特徴点間の第二変化量が対象となる。
【００９３】
なお、部位８０３には、部位の名称以外に、部位の識別番号等の特徴点を特定するための値を格納してもよい。
【００９４】
閾値８０４は、部位８０３で指定された第二変化量と比較する閾値を格納するフィールドである。なお、全ての部位８０３に対して閾値を設定する必要はない。閾値が設定されていない部位８０３については、第二変化量６０３及び閾値８０４の比較は行われない。
【００９５】
図８の感情推定規則情報２１６には、無表情からの感情変化を特定するための規則が格納されているが、驚きからの感情変化を推定するための規則が設定されてもよい。
【００９６】
感情推定規則情報２１６に設定する推定規則は、専門家が設定してもよい。また、感情推定規則情報２１６に設定する推定規則は、時間的関係性指標の変化量（第二変化量６０３）及び感情変化から構成される学習データを格納するデータベースを用いたロジスティック回帰分析及びＳｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ等の機械学習に基づいて設定してもよい。この場合、学習機能を実現するモジュールを計算機１００に追加し、又は、表情データ処理モジュール１０１等に学習機能を実装する。機械学習に基づいて設定された推定規則を利用することによって、時間的関係性指標の変化量から、感情を高い精度で推定できる。
【００９７】
なお、ユーザ又はユーザの属性ごとに異なる学習データを用いた機械学習を実行することによって、ユーザ又はユーザの属性ごとの規則を設定することができる。
【００９８】
なお、学習データは、感情変化の有無及び感情の種類と、時間的関係性指標の変化量とを、ユーザへのアンケート及び専門家から取得することによって生成できる。
【００９９】
なお、学習データが十分に蓄積されていない場合、学習データの生成指示を出力するようにしてもよい。例えば、ユーザに対して記憶を想起することによって特定の感情を呼び起こすように指示し、また、聴覚刺激及び嗅覚刺激を呈示して特定の感情を誘起することによって、時間的関係性指標の変化及び感情の変化の関係性を示すデータを取得する。
【０１００】
感情推定規則情報２１６には、例えば、口の特徴点間の相関が下がり、かつ、眼及び口の特徴点間の相関の絶対値が大きくなった場合に、無表情から幸福感に変化したと判定するための推定規則を設定できる。また、両眼の特徴点間の相関が下がった場合に、無表情から悲しみに変化したと判定するための推定規則を設定できる。
【０１０１】
図９は、実施例１の計算機１００が実行する感情推定処理を説明するフローチャートである。図１０は、実施例１の基準点及び特徴点の設定例を示す図である。
【０１０２】
表情信号計測装置１１０が取得した表情信号が計算機１００に入力された場合、計算機１００の表情データ処理モジュール１０１は、以下で説明する感情推定処理を開始する。なお、表情信号計測装置１１０が複数の表情信号を取得する場合、計算機１００は、特定の表情信号が入力された後、又は、全ての表情信号が入力された後に感情推定処理を開始する。
【０１０３】
表情データ処理モジュール１０１は、入力インタフェース２０３を介して表情信号を取得する（ステップＳ１０１）。このとき、表情データ処理モジュール１０１は、表情データ情報２１１を更新する。具体的には、以下のような処理が実行される。
【０１０４】
表情データ処理モジュール１０１は、表情データ情報２１１にエントリを追加し、追加されたエントリのＩＤ３０１に識別情報を格納する。表情データ処理モジュール１０１は、追加されたエントリの取得時刻３０２に、表情信号が取得された時刻を格納する。表情データ処理モジュール１０１は、追加されたエントリの信号種別３０３に「画像」を格納し、また、表情信号３０４にピクセルの座標及びＲＧＢ値を格納する。
【０１０５】
なお、複数の計測チャネル又は複数の表情信号計測装置１１０が存在する場合、表情データ処理モジュール１０１は、複数の計測チャネル又は複数の表情信号計測装置１１０が計測した値の平均値等を表情信号として取得してもよい。
【０１０６】
次に、表情データ処理モジュール１０１は、表情信号から表情データを生成する（ステップＳ１０２）。このとき、表情データ処理モジュール１０１は、表情データ情報２１１を更新する。具体的には、以下のような処理が実行される。
【０１０７】
表情データ処理モジュール１０１は、表情データ情報２１１に追加されたエントリのデータ種別３０５に「顔画像」を格納し、また、表情データ３０６に生成された表情データを格納する。
【０１０８】
次に、表情データ処理モジュール１０１は、生成された表情データに特徴点を設定する（ステップＳ１０３）。具体的には、以下のような処理が実行される。
【０１０９】
表情データ処理モジュール１０１は、表情データに対して画像解析を実行し、基準点及び特徴点を設定する顔の部位を特定する。基準点及び特徴点を設定する顔の部位は予め設定されているものとする。表情データ処理モジュール１０１は、特定された部位に基準点及び特徴点を設定する。
【０１１０】
当該処理の結果の一例を図１０に示す。表情データ１０００に対してステップＳ１０３の処理を実行した結果、表情データ１０００には基準点１００１及び特徴点１００２が設定される。
【０１１１】
なお、表情データ処理モジュール１０１は、特徴点を設定する顔の部位を特定する前に、基準点に基づいて表情データを補正してもよい。なお、顔の部位を特定するための画像解析は公知の技術であるため詳細な説明は省略する。
【０１１２】
表情データ処理モジュール１０１は、表情データ情報２１１に追加されたエントリの特徴点名称３０９、特徴点３１０、及び表情特徴量３１１に特徴点の数だけ行を生成する。表情データ処理モジュール１０１は、追加されたエントリの基準点名称３０７に「鼻尖」を設定し、また、基準点３０８に基準点を設定するピクセルの座標を格納する。また、表情データ処理モジュール１０１は、特徴点名称３０９に各行に部位の名称を格納し、特徴点３１０の各行に特徴点を設定するピクセルの座標を格納する。以上がステップＳ１０３の処理の説明である。
【０１１３】
次に、表情データ処理モジュール１０１は、表情特徴量を算出する（ステップＳ１０４）。実施例１では、基準点及び特徴点の距離が表情特徴量として算出される。表情データ処理モジュール１０１は、表情特徴量３１１の各行に算出された表情特徴量を格納する。
【０１１４】
次に、表情データ処理モジュール１０１は、表情データの時系列データを生成できるか否かを判定する（ステップＳ１０５）。
【０１１５】
例えば、表情データ処理モジュール１０１は、所定の時間範囲に含まれる表情データを所定の数だけ取得できるか否かを判定する。また、表情データ処理モジュール１０１は、表情データ情報２１１に登録された表情データの数が閾値より大きいか否かを判定する。実施例１では、表情データ処理モジュール１０１は、時系列が連続する二つの表情データ（エントリ）が存在するか否かを判定する。
【０１１６】
表情データの時系列データを生成できないと判定された場合、表情データ処理モジュール１０１は、感情推定処理を終了する。
【０１１７】
表情データの時系列データを生成できると判定された場合、表情データ処理モジュール１０１は、表情データの時系列データを用いて表情特徴量の変化量を算出する（ステップＳ１０６）。具体的には、以下のような処理が実行される。
【０１１８】
表情データ処理モジュール１０１は、表情データ情報２１１から所定の数のエントリを取得して、当該エントリから表情データの時系列データを生成する。例えば、表情データ処理モジュール１０１は、未処理のエントリの中から、取得時刻３０２が最新のエントリを基準に所定の時間範囲に含まれるエントリ群を取得することによって、表情データの時系列データを生成する。
【０１１９】
表情データ処理モジュール１０１は、取得されたエントリ群の表情特徴量３１１に基づいて、表情特徴量の変化量を算出する。実施例１では、特徴点ごとに表情特徴量が算出されるため、表情特徴量の変化量も特徴点ごとに算出される。例えば、二つのエントリが取得された場合、表情データ処理モジュール１０１は、一つのエントリの表情特徴量３１１から他のエントリの表情特徴量３１１を減算することによって表情特徴量の変化量を算出する。
【０１２０】
表情データ処理モジュール１０１は、表情特徴量分析情報２１２にエントリを追加し、追加されたエントリのＩＤ４０１に識別情報を格納する。表情データ処理モジュール１０１は、追加されたエントリの算出時刻４０２に、表情データの時系列データの中で取得時刻３０２が最も新しい時刻を格納する。また、表情データ処理モジュール１０１は、特徴点名称３０９に基づいて、追加されたエントリの特徴点名称４０３に値を格納する。さらに表情データ処理モジュール１０１は、追加されたエントリの第一変化量４０４に、算出された表情特徴量の変化量を格納する。
【０１２１】
なお、表情データの時系列データを生成するために表情データ情報２１１からエントリを取得する場合、表情データ処理モジュール１０１は、前回処理したエントリと重複しないように所定の数のエントリを取得してもよいし、また、最新の時間を基準に所定の数のエントリを取得してもよい。以上がステップＳ１０６の処理の説明である。
【０１２２】
次に、表情データ処理モジュール１０１は、表情特徴量の変化量の時系列データを生成できるか否かを判定する（ステップＳ１０７）。ステップＳ１０７の判定方法は、ステップＳ１０５と同様の方法を用いる。
【０１２３】
表情特徴量の変化量の時系列データを生成できないと判定された場合、表情データ処理モジュール１０１は、感情推定処理を終了する。
【０１２４】
表情特徴量の変化量の時系列データを生成できると判定された場合、表情データ処理モジュール１０１は、表示特徴量の変化量の時系列データを用いて時間的関係性指標を算出する（ステップＳ１０８）。具体的には、以下のような処理が実行される。
【０１２５】
表情データ処理モジュール１０１は、表情特徴量分析情報２１２から所定の数のエントリを取得して、表情特徴量の変化量の時系列データに生成する。例えば、表情データ処理モジュール１０１は、未処理のエントリの中から、算出時刻４０２が最新のエントリを基準に所定の時間範囲に含まれるエントリ群を取得することによって、表情特徴量の変化量の時系列データを生成する。
【０１２６】
表情データ処理モジュール１０１は、取得されたエントリ群の第一変化量４０４に基づいて、時間的関係性指標を算出する。実施例１では、特徴点の組合せごとに時間的関係性指標が算出される。
【０１２７】
表情データ処理モジュール１０１は、時間的関係性指標情報２１３にエントリを追加し、追加されたエントリのＩＤ５０１に識別情報を格納する。表情データ処理モジュール１０１は、追加されたエントリの時間的関係性指標ＩＤ５０３及び時間的関係性指標５０４に、特徴点の組合せの数だけ行を生成する。
【０１２８】
表情データ処理モジュール１０１は、追加されたエントリの時間的関係性指標ＩＤ５０３に特徴点の組合せを格納し、時間的関係性指標５０４に、特徴点の組合せに対応する時間的関係性指標を格納する。
【０１２９】
なお、表情特徴量の変化量の時系列データを生成するために表情特徴量分析情報２１２からエントリを取得する場合、表情データ処理モジュール１０１は、前回処理したエントリと重複しないように所定の数のエントリを取得してもよいし、また、最新の時間を基準に所定の数のエントリを取得してもよい。以上がステップＳ１０８の処理の説明である。
【０１３０】
次に、表情データ処理モジュール１０１は、時間的関係性指標の時系列データを生成できるか否かを判定する（ステップＳ１０９）。ステップＳ１０９の判定方法は、ステップＳ１０５と同様の方法を用いる。
【０１３１】
時間的関係性指標の時系列データを生成できないと判定された場合、表情データ処理モジュール１０１は、感情推定処理を終了する。
【０１３２】
時間的関係性指標の時系列データを生成できると判定された場合、表情データ処理モジュール１０１は、時間的関係性指標の時系列データを用いて時間的関係性指標の変化量を算出する（ステップＳ１１０）。具体的には、以下のような処理が実行される。
【０１３３】
表情データ処理モジュール１０１は、時間的関係性指標情報２１３から所定の数のエントリを取得して、時間的関係性指標の時系列データを生成する。例えば、表情データ処理モジュール１０１は、未処理のエントリの中から、算出時刻５０２が最新のエントリを基準に所定の時間範囲に含まれるエントリ群を取得することによって、時間的関係性指標の時系列データを生成する。
【０１３４】
表情データ処理モジュール１０１は、取得されたエントリ群の時間的関係性指標５０４に基づいて、時間的関係性指標の変化量を算出する。
【０１３５】
表情データ処理モジュール１０１は、時間的関係性指標分析情報２１４にエントリを追加し、追加されたエントリのＩＤ６０１に識別情報を格納する。表情データ処理モジュール１０１は、時間的関係性指標ＩＤ５０３に基づいて、追加されたエントリの時間的関係性指標ＩＤ６０２に値を格納する。また、表情データ処理モジュール１０１は、追加されたエントリの第二変化量６０３に、特徴点の組合せに対応する時間的関係性指標の変化量を格納する。
【０１３６】
なお、時間的関係指標の時系列データを生成するために時間的関係性指標情報２１３からエントリを取得する場合、表情データ処理モジュール１０１は、前回処理したエントリと重複しないように所定の数のエントリを取得してもよいし、また、最新の時間を基準に所定の数のエントリを取得してもよい。以上がステップＳ１１０の処理の説明である。
【０１３７】
次に、表情データ処理モジュール１０１は、時間的関係性指標の変化量及び感情推定規則情報２１６に基づいて、ユーザの感情を推定する（ステップＳ１１１）。その後、表情データ処理モジュール１０１は感情推定処理を終了する。具体的には、以下のような処理が実行される。
【０１３８】
（処理１）表情データ処理モジュール１０１は、感情情報２１５の感情７０２を参照して、現在のユーザの感情を特定する。表情データ処理モジュール１０１は、感情推定規則情報２１６の感情変化８０２を参照し、変化前の感情が現在のユーザの感情に一致するエントリを特定する。
【０１３９】
（処理２）表情データ処理モジュール１０１は、特定されたエントリの行の中から一つのターゲット行（適合条件）を選択する。表情データ処理モジュール１０１は、時間的関係性指標分析情報２１４に新たに追加されたエントリの行の中から、時間的関係性指標ＩＤ６０２がターゲット行の部位８０３に一致する行を検索する。表情データ処理モジュール１０１は、ターゲット行の閾値８０４及び検索された行の第二変化量６０３を比較して、適合条件を満たすか否かを判定する。表情データ処理モジュール１０１は、特定されたエントリの全ての行について同様の処理を実行する。
【０１４０】
例えば、表情データ処理モジュール１０１は、第二変化量６０３が閾値８０４より大きいか否かを判定する。第二変化量６０３が閾値８０４より大きい場合、表情データ処理モジュール１０１は、適合条件を満たすと判定する。閾値８０４に絶対値記号が含まれる場合、表情データ処理モジュール１０１は、第二変化量６０３の値の絶対値が閾値８０４より大きいか否かを判定する。閾値８０４に正負の記号が格納される場合、表情データ処理モジュール１０１は、第二変化量６０３が正であるか否かを判定する。
【０１４１】
（処理３）表情データ処理モジュール１０１は、比較の結果に基づいて、変化度を算出し、また、ユーザの感情を推定する。
【０１４２】
例えば、表情データ処理モジュール１０１は、推定規則に含まれる適合条件のうち、少なくとも一つの適合条件を満たす場合、推定規則に対応する感情変化が発生したと判定する。また、推定規則に含まれる全ての適合条件を満たす場合、推定規則に対応する感情変化が発生したと判定する。
【０１４３】
なお、該当する推定規則が複数存在する場合、表情データ処理モジュール１０１は、満たされる適合条件の数が最も多い推定規則、又は閾値８０４及び第二変化量６０３の差が最も大きい推定規則を選択する。予め、適合条件に優先順位が設定されている場合、表情データ処理モジュール１０１は、優先順位の高い適合条件を満たす推定規則を選択する。
【０１４４】
（処理４）該当する規則が存在しない場合、表情データ処理モジュール１０１は、感情情報２１５にエントリを追加し、追加されたエントリのＩＤ７０１に、ステップＳ１１０において追加されたエントリのＩＤ６０１の識別情報を格納する。表情データ処理モジュール１０１は、追加されたエントリの感情７０２に前回と同一の感情を格納し、感情変化フラグ７０３に「なし」を格納する。また、表情データ処理モジュール１０１は、追加されたエントリの変化度７０４に、算出された変化度を格納する。該当する規則が存在する場合、表情データ処理モジュール１０１は、感情情報２１５にエントリを追加し、追加されたエントリのＩＤ７０１に、ステップＳ１１０において追加されたエントリのＩＤ６０１の識別情報を格納する。表情データ処理モジュール１０１は、追加されたエントリの感情７０２に推定された感情を格納し、感情変化フラグ７０３に「あり」を格納する。また、表情データ処理モジュール１０１は、追加されたエントリの変化度７０４に、算出された変化度を格納する。以上がステップＳ１１１の処理の説明である。
【０１４５】
なお、各情報には、ユーザ又はユーザの属性の識別情報を格納するフィールドを設けてもよい。この場合、表情データ処理モジュール１０１は、感情を推定するユーザ又はユーザの属性に関連する表情データ等を用いて感情推定処理を実行する。また、推定規則を設定する場合、ユーザ又はユーザの属性ごとに異なる学習データを格納するデータベースを用いた機械学習を行ってもよい。
【０１４６】
なお、感情推定規則情報２１６に、複数の時間的関係性指標を組み合わせた適合条件を含む推定規則を設定することもできる。複数の時間的関係性指標を組み合わせた適合条件の閾値８０４に絶対値記号が含まれる場合、表情データ処理モジュール１０１は、各時間的関係性指標の変化の絶対値の平均値と、閾値８０４とを比較する。
【０１４７】
なお、実施例１では、一種類の表情データから一種類の時間的関係性指標を算出しているがこれに限定されない。一種類の表情データから二種類の時間的関係性指標を算出してもよいし、二種類の表情データから一種類の時間的関係性指標を算出してもよい。なお、時間的間生成指標の算出方法は、同様の方法を用いることができる。二種類の時間的関係性指標を用いて感情を推定する場合には、各種類の時間的関係性指標の変化量の平均値と閾値８０４とを比較すればよい。
【０１４８】
なお、実施例１では、ユーザを対象として処理を実行しているがこれに限定されない。計算機１００は、ＣＧ及びロボットを対象としても同様の処理を実行できる。
【０１４９】
ここで、感情推定処理の流れを説明する。図１１は、実施例１の感情推定処理の流れを説明する図である。
【０１５０】
表情データ処理モジュール１０１は、表情データ１０００の時系列データ１１００、１１０１から表情特徴量の時系列データ１１１０、１１１１を生成する。表情データ処理モジュール１０１は、表情特徴量の時系列データ１１１０、１１１１を用いて時間的関係性指標１１２０、１１２１を算出する。時間的関係性指標１１２０、１１２１は行及び列が特徴点に対応する相関行列を表し、セルの模様は相関係数の大きさを表す。
【０１５１】
表情データ処理モジュール１０１は、時間的関係性指標１１２０、１１２１の時系列データを用いて時間的関係性指標の変化量を算出し、時間的関係性指標の変化量に基づいて感情を推定する。
【０１５２】
時系列データ１１００は、ユーザの表情が無表情から変化していない表情データ１０００を含み、時系列データ１１０１は、ユーザの表情が無表情から喜びに変化した表情データ１０００を含む。表情データ処理モジュール１０１は、時系列データ１１００から算出された時間的関係性指標１１２０及び時系列データ１１０１から算出された時間的関係性指標１１２１を用いて、時間的関係性指標の変化量を算出する。表情データ処理モジュール１０１は、当該変化量及び感情推定規則情報２１６に基づいて、感情が無表情から喜びに変化したことを推定できる。
【０１５３】
図１２は、実施例１の計算機１００が実行する出力処理を説明するフローチャートである。
【０１５４】
出力モジュール１０２は、感情情報２１５を取得し（ステップＳ２０１）、感情情報２１５を用いて出力情報を生成する（ステップＳ２０２）。
【０１５５】
出力モジュール１０２は、出力装置１２０に出力情報を出力する（ステップＳ２０３）。その後、出力モジュール１０２は出力処理を終了する。
【０１５６】
実施例１の計算機１００は、表情データに設定された特徴点間の時間的関係性の変化に基づいて、ユーザの表情変化の過程を評価する。これによって、顔の個人差の影響を受けることなく感情を推定することができる。また、実施例１の推定方法は、顔の個人差の影響が小さいため、推定対象のユーザから予めの参照用の表情データを取得する必要がない。
【実施例２】
【０１５７】
実施例２では、感情推定処理において、感情変化が発生する可能性を示す指標（発生度）を考慮する点が実施例１と異なる。以下、実施例１との差異を中心に実施例２について説明する。
【０１５８】
図１３は、実施例２のシステムの構成例を示す図である。
【０１５９】
実施例２のシステムは様々な計測装置を備える。具体的には、実施例２のシステムは、感情信号計測装置１３０１、１３０２を備える。
【０１６０】
感情信号計測装置１３０１、１３０２は、発生度を算出するために用いる感情信号を計測する。なお、感情信号及び表情信号の計測時刻は同期しているものとする。
【０１６１】
感情信号は、例えば、生体信号が考えられる。生体信号は、脳波計及び近赤外分光装置等を用いて計測される脳波信号及び脳血流信号等の脳活動を評価するための信号、並びに、心電計及び発汗計を用いて計測される心拍数及び発汗量等の自律神経活動を評価するための信号である。
【０１６２】
生体信号が感情信号である場合、感情信号計測装置１３０１は、例えば、脳波信号を計測する脳波計であり、感情信号計測装置１３０２は、例えば、心拍数を計測する心電計である。
【０１６３】
実施例２の表情データ処理モジュール１０１は、感情信号を取得し、情報群１０３に格納する。
【０１６４】
図１４は、実施例２の計算機１００の詳細な構成の一例を示す図である。
【０１６５】
実施例２の計算機１００のハードウェア構成及びモジュール構成は、実施例１の計算機１００と同一である。実施例２の情報群１０３は、新たに、感情信号情報１４０１、発生度情報１４０２、及び感情変化推定規則情報１４０３を含む。
【０１６６】
感情信号情報１４０１は、感情信号を管理するための情報である。感情信号情報１４０１のデータ構造の一例は図１５を用いて説明する。発生度情報１４０２は、発生度を管理するための情報である。発生度情報１４０２のデータ構造の一例は図１６を用いて説明する。感情変化推定規則情報１４０３は、感情変化が発生したか否かを判定するための規則を管理するための情報である。感情変化推定規則情報１４０３のデータ構造の一例は図１７を用いて説明する。
【０１６７】
図１５は、実施例２の感情信号情報１４０１のデータ構造の一例を示す図である。
【０１６８】
感情信号情報１４０１は、ＩＤ１５０１、取得時刻１５０２、信号種別１５０３、感情信号１５０４、及び感情変化指標１５０５から構成されるエントリを含む。同時刻に取得した感情信号のグループに対して一つのエントリが存在する。
【０１６９】
ＩＤ１５０１は、感情信号情報１４０１のエントリを識別するための識別情報を格納するフィールドである。
【０１７０】
取得時刻１５０２は、感情信号が取得された時刻を格納するフィールドである。取得時刻１５０２には、感情信号計測装置１３０１、１３０２が表情信号を取得した時刻及び計算機１００が感情信号計測装置１３０１、１３０２から表情信号を取得した時刻のいずれかが格納される。
【０１７１】
信号種別１５０３は、感情信号名称等の感情信号の種別を格納するフィールドである。信号種別１５０３には、例えば、感情信号計測装置１３０１、１３０２の名称等が格納される。表情データ処理モジュール１０１は、感情信号から名称を取得してもよいし、また、前回登録されたエントリの信号種別１５０３から名称を取得してもよい。
【０１７２】
感情信号１５０４は、感情信号を格納するフィールドである。
【０１７３】
感情変化指標１５０５は、ヒトの感情の変化を評価する指標である。信号種別ごとに感情変化指標の算出方法が設定される。
【０１７４】
信号種別が心電図である場合、心拍数の変化量に基づいて感情変化指標が算出される。信号種別が脳波である場合、Ｐ３００の振幅等の事象関連電位の変化量に基づいて感情変化指標が算出される。
【０１７５】
例えば、心拍数の変化が検知された場合、表情データ処理モジュール１０１は、自律神経活動の変化があったと判定し、現在の感情変化指標を更新する。
【０１７６】
（更新方法１）感情変化指標の最大値を１００、最小値を−１００とした場合、感情変化指標の更新方法としては以下のような方法が考えられる。表情データ処理モジュール１０１は、現在より時系列が一つ前に計測された心拍数を基準とし、現在の心拍数が前回の心拍数より増加している場合には現在の感情変化指標に正の値を加算し、現在の心拍数が基準の心拍数より減少している場合には現在の感情変化指標に負の値を加算する。心拍数の変化量と感情変化指標の変化量の関係は、専門家が決定してもよいし、機械学習によって決定してもよい。例えば、一分あたりの心拍数が５０以上増加した場合、現在の感情変化指標に１００を加算し、一分あたりの心拍数が５０以上減少した場合、現在の感情変化指標に−１００を加算する。
【０１７７】
（更新方法２）感情変化指標の最大値を１００、最小値を０とした場合、感情変化指標の更新方法としては以下のような方法が考えられる。表情データ処理モジュール１０１は、現在より時系列が一つ前に計測された心拍数又は無表情時の心拍数を基準とし、心拍数の変化量の絶対値に基づいて感情変化指標を算出する。
【０１７８】
図１６は、実施例２の発生度情報１４０２のデータ構造の一例を示す図である。
【０１７９】
発生度情報１４０２は、ＩＤ１６０１、算出時刻１６０２、及び発生度１６０３から構成されるエントリを格納する。発生度の算出結果に対して一つのエントリが存在する。
【０１８０】
ＩＤ１６０１は、発生度情報１４０２のエントリを識別するための識別情報を格納するフィールドである。なお、ＩＤ１６０１は、ＩＤ１５０１とは異なるフィールドである。
【０１８１】
算出時刻１６０２は、発生度が算出された時刻を格納するフィールドである。実施例１では、取得時刻１５０２が最新の感情信号に基づいて発生度が算出されるため、算出時刻１６０２には、取得時刻１５０２に格納される時刻が算出時刻１６０２に格納される。
【０１８２】
発生度１６０３は、発生度を格納するフィールドである。
【０１８３】
表情データ処理モジュール１０１は、一種類の感情変化指標に基づいて発生度を算出してもよいし、複数種類の感情変化指標に基づいて発生度を算出してもよい。複数種類の感情変化指標に基づいて発生度を算出する場合、感情変化指標及び発生度の関係性を示した情報を予め設定する。
【０１８４】
例えば、表情データ処理モジュール１０１は、一種類の感情変化指標をそのまま発生度として算出する。また、表情データ処理モジュール１０１は、複数種類の感情変化指標の平均値を発生度として算出し、又は、複数種類の感情変化指標を変数とする計算式を用いて発生度を算出する。計算式は、例えば、重み係数を含む。
【０１８５】
なお、表情データ処理モジュール１０１は、発生度の算出時に、無表情時の感情変化指標を用いて感情変化指標を規格化してもよい。例えば、表情データ処理モジュール１０１は、無表情時に算出された感情変化指標を用いて、一定の時間範囲ごとに感情変化指標の変化率を算出し、変化率の平均値を発生度として算出する。
【０１８６】
図１７は、実施例２の感情変化推定規則情報１４０３のデータ構造の一例を示す図である。
【０１８７】
感情変化推定規則情報１４０３は、閾値１７０１から構成される。閾値１７０１は、発生度と比較するための閾値を格納するフィールドである。
【０１８８】
感情変化推定規則情報１４０３に格納する閾値は、専門家が設定してもよいし、機械学習に基づいて設定してもよい。
【０１８９】
図１８Ａ及び図１８Ｂは、実施例２の計算機１００が実行する感情推定処理を説明するフローチャートである。
【０１９０】
表情データ処理モジュール１０１は、入力インタフェース２０３を介して表情信号及び感情信号を取得する（ステップＳ３０１）。このとき、表情データ処理モジュール１０１は、表情データ情報２１１及び感情信号情報１４０１を更新する。表情データ情報２１１の更新処理は実施例１と同一である。感情信号情報１４０１の更新処理は以下のような処理となる。
【０１９１】
表情データ処理モジュール１０１は、感情信号情報１４０１にエントリを追加し、追加されたエントリのＩＤ１５０１に識別番号を格納する。表情データ処理モジュール１０１は、追加されたエントリの取得時刻１５０２に、感情信号が取得された時刻を格納する。表情データ処理モジュール１０１は、追加されたエントリの信号種別１５０３、感情信号１５０４、及び感情変化指標１５０５に、感情信号の種類の数だけ行を生成する。表情データ処理モジュール１０１は、信号種別１５０３の各行に感情信号の種別を表す値を格納し、また、感情信号１５０４に各種類の感情信号を格納する。
【０１９２】
なお、複数の計測チャネル又は複数の感情信号計測装置が複数存在する場合、表情データ処理モジュール１０１は、複数の計測チャネル又は複数の感情信号計測装置が計測した値の平均値等を感情信号として取得してもよい。
【０１９３】
ステップＳ３０２からステップＳ３１０の処理は、ステップＳ１０２からステップＳ１１０の処理と同一である。
【０１９４】
表情データ処理モジュール１０１は、ステップＳ３１０の処理が実行された後、変数ｉに１を設定する（ステップＳ３１１）。ここで、変数ｉは感情信号情報１４０１の一つのエントリに含まれる行を表し、また、感情信号の種別を表す値である。
【０１９５】
次に、表情データ処理モジュール１０１は、感情信号情報１４０１に追加されたエントリを参照し、当該エントリのｉ行目に感情信号が存在するか否かを判定する（ステップＳ３１２）。
【０１９６】
追加されたエントリのｉ行目に感情信号が存在すると判定された場合、表情データ処理モジュール１０１は、当該感情信号の感情変化指標を算出する（ステップＳ３１３）。このとき、表情データ処理モジュール１０１は、追加されたエントリの感情変化指標１５０５のｉ行目に、算出された感情変化指標を格納する。
【０１９７】
次に、表情データ処理モジュール１０１は、変数ｉに１を加算し（ステップＳ３１４）、ステップＳ３１２に戻る。
【０１９８】
ステップＳ３１２において、追加されたエントリのｉ行目に感情信号が存在しないと判定された場合、表情データ処理モジュール１０１は、感情変化指標に基づいて発生度を算出する（ステップＳ３１５）。このとき、表情データ処理モジュール１０１は、発生度情報１４０２にエントリを追加し、追加されたエントリのＩＤ１６０１に識別情報を格納する。また、表情データ処理モジュール１０１は、追加されたエントリの算出時刻１６０２及び発生度１６０３に、算出時刻及び発生度を格納する。
【０１９９】
次に、表情データ処理モジュール１０１は、発生度及び感情変化推定規則情報１４０３に基づいて、感情変化の有無を推定する（ステップＳ３１６）。具体的には、以下のような処理が実行される。
【０２００】
表情データ処理モジュール１０１は、閾値１７０１及び発生度を比較する。表情データ処理モジュール１０１は、発生度が閾値１７０１より大きい場合、感情変化があると判定し、発生度が閾値１７０１以下である場合、感情変化がないと判定する。
【０２０１】
表情データ処理モジュール１０１は、感情情報２１５にエントリを追加し、追加されたエントリのＩＤ７０１に識別情報を格納する。表情データ処理モジュール１０１は、感情変化フラグ７０３に、感情変化の有無の推定結果を格納する。以上がステップＳ３１６の処理の説明である。
【０２０２】
次に、表情データ処理モジュール１０１は、時間的関係性指標の変化量及びステップＳ３１６の処理結果に基づいて、ユーザの感情を推定する（ステップＳ３１７）。その後、表情データ処理モジュール１０１は感情推定処理を終了する。具体的には、以下のような処理が実行される。
【０２０３】
表情データ処理モジュール１０１は、（処理１）から（処理４）を実行する。ただし、（処理３）では、時間的関係性指標の変化量及び感情推定規則情報２１６の比較結果だけではなく、発生度及びステップＳ３１６の処理結果の少なくともいずれかを用いてユーザの感情が推定される。
【０２０４】
例えば、感情変化フラグ７０３が「あり」、かつ、適合条件を満たす規則が存在する場合、表情データ処理モジュール１０１は、適合条件を満たす規則に基づいて感情を推定する。感情変化フラグ７０３が「あり」、かつ、適合条件を満たす規則が存在しない場合、表情データ処理モジュール１０１は、時間的関係性指標の変化量と閾値８０４との差が最も小さい規則に基づいて感情を推定する。感情変化フラグ７０３が「なし」の場合、表情データ処理モジュール１０１は、適合条件を満たす規則の有無にかかわらず、感情を「無表情」と推定する。
【０２０５】
例えば、表情データ処理モジュール１０１は、発生度を用いて時間的関係性指標の変化量を補正し、補正後の時間的関係性指標の変化量及び感情推定規則情報２１６の比較結果に基づいて感情を推定する。
【０２０６】
実施例２の（処理４）では、感情変化フラグ７０３以外のフィールドの更新方法は実施例１と同一である。以上が、ステップＳ３１７の処理の説明である。
【０２０７】
なお、表情データ処理モジュール１０１は、感情を推定するために感情信号を用いてもよい。例えば、感情推定規則情報２１６に感情変化指標の閾値を設定し、時間的関係性指標の変化量及び感情変化指標と、それぞれの閾値との比較結果に基づいて感情を推定する。以上がステップＳ３１７の処理の説明である。
【０２０８】
なお、感情信号及び表情信号は同じ信号でもよい。例えば、表情データ処理モジュール１０１は、ユーザの頭部の動き及び向き等に関連する表情特徴量を用いて感情変化指標を算出する。
【０２０９】
実施例２によれば、最適な閾値８０４が変動する場合でも、ユーザの感情信号から算出された発生度を用いることによって、ユーザの感情の推定精度を向上させることができる。
【実施例３】
【０２１０】
実施例３では、各実施例において、計算機１００が出力した出力情報によって出力装置１２０に表示されるＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）について説明する。
【０２１１】
まず、ユーザが、感情の推定結果を用いて表情トレーニングを行う場合に表示されるＧＵＩについて説明する。
【０２１２】
表情トレーニングは、コミュニケーション等において、ユーザが感情に合わせて適切な表情を伝えるためのトレーニングである。なお、表情トレーニングでは、表情の変化させるトレーニングでもよいし、表情そのもののトレーニングでもよい。
【０２１３】
表情トレーニングを実行するシステムは、表情特徴量及び時間的関係性指標の変化量を変化させるための指示を出力情報としてユーザに出力する。ユーザは、出力情報に基づいて表示されたＧＵＩを参照して、表情を変化させる。
【０２１４】
図１９は、実施例３の出力装置１２０に表示されるＧＵＩの一例を示す図である。
【０２１５】
ＧＵＩ１９００は、トレーニング名欄１９１０、種類名欄１９２０、目標欄１９３０、表情分析結果欄１９４０、及びトレーニング結果欄１９５０を含む。
【０２１６】
トレーニング名欄１９１０は、トレーニングの名称を表示する欄である。種類名欄１９２０は、トレーニングの種類の名称を表示する欄である。目標欄１９３０は、トレーニングの目標を表示する欄である。
【０２１７】
表情分析結果欄１９４０は、表情の分析結果を表示する欄である。表情分析結果欄１９４０は、ユーザ指示欄１９４１、画像欄１９４２、及び感情グラフ欄１９４３を含む。
【０２１８】
ユーザ指示欄１９４１は、トレーニングにおけるユーザへの指示を示す文字列を表示する欄である。画像欄１９４２は、ユーザへの表情の指示を示す画像を表示する欄である。感情グラフ欄１９４３は、トレーニング中のユーザの感情の推定結果の推移を示すグラフを表示する欄である。
【０２１９】
なお、ユーザ指示欄１９４１に、特徴点及び表情特徴量に関する情報を表示し、特徴点の移動を促す情報を呈示してもよい。
【０２２０】
トレーニング結果欄１９５０は、トレーニングの結果及びその他の項目を表示する欄である。トレーニング結果欄１９５０は、種類名欄１９５１、結果グラフ欄１９５２、点数欄１９５３、練習ボタン１９５４、及び設定ボタン１９５５を含む。
【０２２１】
種類名欄１９５１は、種類名欄１９２０と同一の値を表示する欄である。結果グラフ欄１９５２は、トレーニング中の表情の程度及びトレーニングの目標を示すグラフを表示する欄である。点数欄１９５３は、トレーニングの目標に到達するまでの点数を表示する欄である。練習ボタン１９５４は、ＧＵＩ１９００を表示するための操作ボタンである。設定ボタン１９５５は、後述するＧＵＩ２０００を表示するための操作ボタンである。
【０２２２】
なお、ＧＵＩ１９００には、表情データ情報２１１等の各種情報を表示する欄を設けてもよいし、また、各種情報から算出した値を表示する欄を設けてもよい。例えば、表情の程度を評価する情報として、表情データ処理モジュール１０１は、目標とする感情に推移した後に、変化度７０４の累積値をＧＵＩ１９００に表示してもよい。
【０２２３】
図２０は、実施例３の出力装置１２０に表示されるＧＵＩの一例を示す図である。
【０２２４】
ＧＵＩ２０００は、時間的関係性指標設定欄２０１０、変化量設定欄２０２０、感情推定規則設定欄２０３０、学習方法設定欄２０４０、感情変化設定欄２０５０、保存ボタン２０６０、練習ボタン２０７０、及び設定ボタン２０８０を含む。
【０２２５】
時間的関係性指標設定欄２０１０は、表情特徴量及び時間的関係性指標に関連するパラメータを設定する欄である。時間的関係性指標設定欄２０１０は、表情特徴量２０１１、時間的関係性指標名２０１２、変化量２０１３、及びデータ数２０１４を含む。
【０２２６】
表情特徴量２０１１は、表情特徴量を算出するためのパラメータを設定する欄である。時間的関係性指標名２０１２は、時間的関係性指標を算出するため値の名称を設定する欄である。変化量２０１３は、時間的関係性指標の算出時に使用するパラメータを設定する欄である。データ数２０１４は、時間的関係性指標を算出するために必要な表情データの時系列データの数を設定する欄である。
【０２２７】
変化量設定欄２０２０は、時間的関係性指標の変化量に関連するパラメータを設定する欄である。変化量設定欄２０２０は、変化量２０２１及びデータ数２０２２を含む。
【０２２８】
変化量２０２１は、時間的関係性指標の変化量の算出時に使用するパラメータを設定する欄である。データ数２０２２は、時間的関係性指標の変化量を算出するために必要な時間的関係指標の時系列データの数を設定する欄である。
【０２２９】
感情推定規則設定欄２０３０は、推定規則を設定するための欄である。感情推定規則設定欄２０３０は、ラジオボタン２０３１、感情変化２０３２、部位２０３３、及び閾値２０３４を含む。
【０２３０】
ラジオボタン２０３１は、推定規則を設定する場合に操作されるボタンである。ラジオボタン２０３１を操作することによって感情変化２０３２、部位２０３３、及び閾値２０３４への入力が可能となる。感情変化２０３２は、感情の変化を示す値を設定する欄である。部位２０３３は、基準となる特徴点（顔の部位）等を設定する欄である。閾値２０３４は、感情を推定する場合に使用する閾値を設定する欄である。
【０２３１】
学習方法設定欄２０４０は、閾値を決定するための学習方法を設定する欄である。学習方法設定欄２０４０はラジオボタン群を含む。ラジオボタン群を操作することによって学習方法を設定できる。実施例１では、学習データの有無を選択するラジオボタン、及び使用する学習データを選択するラジオボタンが含まれる。
【０２３２】
感情変化設定欄２０５０は、感情変化指標に関するパラメータ及び感情変化の有無を判定するための規則を設定するための欄である。感情変化設定欄２０５０は、ラジオボタン２０５１、信号種別２０５２、感情変化指標２０５３、及び閾値２０５４を含む。
【０２３３】
ラジオボタン２０５１は、感情変化指標を算出するためのパラメータを設定する場合に操作されるボタンである。ラジオボタン２０５１を操作することによって信号種別２０５２及び感情変化指標２０５３への入力が可能となる。信号種別２０５２は、感情変化指標の算出時に使用する感情信号の種類を設定する欄である。感情変化指標２０５３は、感情変化指標の算出時に使用するパラメータを設定する欄である。閾値２０５４は、感情変化の有無を判定する場合に使用する閾値を設定する欄である。
【０２３４】
保存ボタン２０６０は、各設定欄の入力を保存する場合に操作されるボタンである。練習ボタン２０７０及び設定ボタン２０８０は、練習ボタン１９５４及び設定ボタン１９５５と同一のボタンである。
【０２３５】
図１９及び図２０に示すようなＧＵＩを用いることによって、表情特徴量、時間的関係性指標、及び感情変化度等のユーザの感情を推定するための各種情報を容易に設定し、また、設定の追加、削除、及び変更ができる。
【０２３６】
なお、図２０に示した設定画面とは別に、表情信号、特徴点の数及び配置、並びにトレーニング時に呈示する言語情報及び非言語情報等を設定する画面を表示することもできる。
【実施例４】
【０２３７】
実施例４では、各実施例において、ユーザと対話を行う対話インタフェースを表示するＧＵＩを説明する。
【０２３８】
対話インタフェースは、コミュニケーション等において、ユーザの共感を誘起しながら対話を行うために、出力装置１２０を介して出力されるインタフェースである。対話インタフェースは、例えば、ヒト及び動物等の生物を模したキャラクタのＣＧである。
【０２３９】
計算機１００は、ユーザの感情の推定結果に基づいて、ユーザの表情変化を模倣するように対話インタフェースを制御する。これによって、ユーザの共感を誘起する対話を実現できる。
【０２４０】
例えば、計算機１００は、ユーザの顔画像に設定された特徴点及び基準点と同じ座標を用いて、ユーザの特徴点間の時間的関係性指標の変化と同一となるように対話インタフェースの特徴点を変化させる。また、計算機１００は、ユーザの顔画像に設定された特徴点及び基準点と、対話インタフェースの特徴点との間の関係を設定し、顔画像から算出された時間的関係性指標の変化量に一致するように対話インタフェースの特徴点を変化させる。
【０２４１】
より具体的には、計算機１００は、ユーザの眼及び口の特徴点の移動軌跡に基づいて対話インタフェースの眼及び口の特徴点を移動させるのではなく、ユーザの眼及び口の特徴点の移動の関係性に一致するように、対話インタフェースの眼及び口を連動させて移動させる。これによって、ユーザの表情変化を模倣することができる。
【０２４２】
なお、計算機１００は、ユーザの共感を効果的に誘起するために、音声等の言語情報、対話インタフェースの顔の向き及び傾きの変化並びに動作等の非言語情報を呈示してもよい。
【０２４３】
なお、計算機１００は、時間的関係性指標の変化量に基づいて、対話インタフェースが出力する言語情報及び非言語情報を制御してもよい。例えば、ユーザの感情が無表情から幸福感に変化したと推定された場合、計算機１００は、呈示する言語情報の音声の周波数を上げてもよいし、時間的関係性指標の変化に合わせて、対話インタフェースの手及び腕が動作するように制御してもよい。
【０２４４】
図２１は、実施例４の出力装置１２０に表示されるＧＵＩの一例を示す図である。
【０２４５】
ＧＵＩ２１００は、対話カテゴリ欄２１１０、対話キャラクタ欄２１２０、対話レベル欄２１３０、対話インタフェース欄２１４０、対話ボタン２１５０、及び設定ボタン２１６０を含む。
【０２４６】
対話カテゴリ欄２１１０は、対話カテゴリの名称を表示する欄である。対話キャラクタ欄２１２０は、対話キャラクタの種別又は名称を表示する欄である。対話レベル欄２１３０は、対話レベルを表示する欄である。
【０２４７】
対話インタフェース欄２１４０は、対話インタフェースを表示する欄である。対話インタフェース欄２１４０には、言語情報２１４１及び対話インタフェース２１４２が表示される。言語情報２１４１は、対話内容を表す情報である。
【０２４８】
対話ボタン２１５０は、ＧＵＩ２１００を表示するための操作ボタンである。設定ボタン２１６０は、図２１に示すようなＧＵＩを表示するための操作ボタンである。
【０２４９】
図２１に示すようなＧＵＩを表示することによって、ユーザの共感を誘起する対話を行う対話インタフェースを実現できる。
【０２５０】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、例えば、上記した実施例は本発明を分かりやすく説明するために構成を詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、各実施例の構成の一部について、他の構成に追加、削除、置換することが可能である。
【０２５１】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、本発明は、実施例の機能を実現するソフトウェアのプログラムコードによっても実現できる。この場合、プログラムコードを記録した記憶媒体をコンピュータに提供し、そのコンピュータが備えるプロセッサが記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等が用いられる。
【０２５２】
また、本実施例に記載の機能を実現するプログラムコードは、例えば、アセンブラ、Ｃ／Ｃ＋＋、ｐｅｒｌ、Ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ（登録商標）等の広範囲のプログラム又はスクリプト言語で実装できる。
【０２５３】
さらに、実施例の機能を実現するソフトウェアのプログラムコードを、ネットワークを介して配信することによって、それをコンピュータのハードディスクやメモリ等の記憶手段又はＣＤ−ＲＷ、ＣＤ−Ｒ等の記憶媒体に格納し、コンピュータが備えるプロセッサが当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行するようにしてもよい。
【０２５４】
上述の実施例において、制御線や情報線は、説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。全ての構成が相互に接続されていてもよい。
【符号の説明】
【０２５５】
１００  計算機
１０１  表情データ処理モジュール
１０２  出力モジュール
１１０  表情信号計測装置
１２０  出力装置
１３０  入力装置
２０１  演算装置
２０２  記憶装置
２０３  入力インタフェース
２０４  出力インタフェース
２１１  表情データ情報
２１２  表情特徴量分析情報
２１３  時間的関係性指標情報
２１４  時間的関係性指標分析情報
２１５  感情情報
２１６  感情推定規則情報
１３０１、１３０２  感情信号計測装置
１４０１  感情信号情報
１４０２  発生度情報
１４０３  感情変化推定規則情報
１９００、２０００、２１００  ＧＵＩ
【図１】
2019200656.tif 000003
【図２】
2019200656.tif 000004
【図３Ａ】
2019200656.tif 000005
【図３Ｂ】
2019200656.tif 000006
【図４】
2019200656.tif 000007
【図５】
2019200656.tif 000008
【図６】
2019200656.tif 000009
【図７】
2019200656.tif 000010
【図８】
2019200656.tif 000011
【図９】
2019200656.tif 000012
【図１０】
2019200656.tif 000013
【図１１】
2019200656.tif 000014
【図１２】
2019200656.tif 000015
【図１３】
2019200656.tif 000016
【図１４】
2019200656.tif 000017
【図１５】
2019200656.tif 000018
【図１６】
2019200656.tif 000019
【図１７】
2019200656.tif 000020
【図１８Ａ】
2019200656.tif 000021
【図１８Ｂ】
2019200656.tif 000022
【図１９】
2019200656.tif 000023
【図２０】
2019200656.tif 000024
【図２１】
2019200656.tif 000025