(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-15
(45)【発行日】2024-10-23
(54)【発明の名称】感情判定装置および感情判定方法
(51)【国際特許分類】
G06T 7/20 20170101AFI20241016BHJP
A61B 5/16 20060101ALI20241016BHJP
G06T 7/00 20170101ALI20241016BHJP
G06V 10/80 20220101ALI20241016BHJP
G06V 40/16 20220101ALI20241016BHJP
【FI】
G06T7/20 300B
A61B5/16 120
G06T7/00 130
G06V10/80
G06V40/16 B
(21)【出願番号】P 2020108400
(22)【出願日】2020-06-24
【審査請求日】2023-02-13
(73)【特許権者】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】110002860
【氏名又は名称】弁理士法人秀和特許事務所
(72)【発明者】
【氏名】辻 郁奈
(72)【発明者】
【氏名】太田 昂志
(72)【発明者】
【氏名】浦部 和哉
(72)【発明者】
【氏名】澤田 龍樹
【審査官】岡本 俊威
(56)【参考文献】
【文献】特開2012-059107(JP,A)
【文献】特開2009-087074(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 7/00 - 7/90
A61B 5/16
G06V 10/80
G06V 40/16
(57)【特許請求の範囲】
【請求項1】
ユーザの顔画像から検出された当該ユーザの表情の変化に基づいて、当該ユーザの感情を推定する第1の推定手段と、
前記ユーザから非接触で検出された当該ユーザの温度の変化に基づいて、当該ユーザの感情を推定する第2の推定手段と、
前記第1の推定手段による推定結果と、前記第2の推定手段による推定結果とに基づいて、前記ユーザの感情を判定する判定手段と
を有
し、
前記第1の推定手段と前記第2の推定手段のそれぞれは、第1の周期で前記ユーザの感情を推定し、
前記判定手段は、前記第1の推定手段による推定結果と、前記第2の推定手段による推定結果とを、前記第1の周期よりも長い第2の周期で更新して使用する
ことを特徴とする感情判定装置。
【請求項2】
前記第1の推定手段と前記第2の推定手段のそれぞれは、複数の感情のそれぞれについて、その感情を前記ユーザが抱いていることの確からしさであるスコアを算出し、
前記判定手段は、前記第1の推定手段により算出された各感情のスコアと、前記第2の推定手段により算出された各感情のスコアとに基づいて、前記ユーザの感情を判定する
ことを特徴とする請求項1に記載の感情判定装置。
【請求項3】
前記判定手段は、
前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致する場合に、当該感情を前記ユーザの感情として判定し、
前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、前記第1の推定手段により算出された各感情のスコアと、前記第2の推定手段により算出された各感情のスコアとに基づいて、前記ユーザの感情を判定する
ことを特徴とする請求項2に記載の感情判定装置。
【請求項4】
前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第
2の推定手段により最大のスコアが算出された感情とが一致しない場合に、それらの感情のうち、算出されたスコアが高い方の感情を、前記ユーザの感情として判定する
ことを特徴とする請求項3に記載の感情判定装置。
【請求項5】
前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、それらの感情のうち、前記第1の推定手段により算出されたスコアと、前記第2の推定手段により算出されたスコアとを足し合わせた値が大きい方の感情を、前記ユーザの感情として判定することを特徴とする請求項3に記載の感情判定装置。
【請求項6】
前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、それらの感情のうち、前回からのスコアの変化量が大きい方の感情を、前記ユーザの感情として判定する
ことを特徴とする請求項3に記載の感情判定装置。
【請求項7】
前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、それらの感情のうち、前記複数の感情の間でのスコアの分散値が大きい方の感情を、前記ユーザの感情として判定する
ことを特徴とする請求項3に記載の感情判定装置。
【請求項8】
ユーザの顔画像から検出された当該ユーザの表情の変化に基づいて、当該ユーザの感情を推定する第1の推定手段と、
前記ユーザから非接触で検出された当該ユーザの温度の変化に基づいて、当該ユーザの感情を推定する第2の推定手段と、
前記第1の推定手段による推定結果と、前記第2の推定手段による推定結果とに基づいて、前記ユーザの感情を判定する判定手段と、
推定された感情を前記ユーザが抱いていることの確からしさであるスコアの所定時間前までの期間での分散値が所定の閾値よりも小さいタイミングを検出し、前記分散値が前記所定の閾値よりも小さい第1のタイミングから遡って、前記分散値が前記所定の閾値よりも小さい第2のタイミングの直後のタイミングまでの推定結果を、前記第1のタイミングの推定結果に置き換えるように、前記第1の推定手段による推定結果と、前記第2の推定手段による推定結果とを変更する変更手段
と
を有し、
前記判定手段は、前記変更手段による変更後の推定結果に基づいて、前記ユーザの感情を判定する
ことを特徴とす
る感情判定装置。
【請求項9】
ユーザの顔画像から検出された当該ユーザの表情の変化に基づいて、当該ユーザの感情を推定する第1の推定ステップと、
前記ユーザから非接触で検出された当該ユーザの温度の変化に基づいて、当該ユーザの感情を推定する第2の推定ステップと、
前記第1の推定ステップにおける推定結果と、前記第2の推定ステップにおける推定結果とに基づいて、前記ユーザの感情を判定する判定ステップと
を有
し、
前記第1の推定ステップと前記第2の推定ステップのそれぞれでは、第1の周期で前記ユーザの感情を推定し、
前記判定ステップでは、前記第1の推定ステップによる推定結果と、前記第2の推定ステップによる推定結果とを、前記第1の周期よりも長い第2の周期で更新して使用する
ことを特徴とする感情判定方法。
【請求項10】
請求項
9に記載の感情判定方法の各ステップをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザの平常、怒り、悲しみ、喜びといった感情を判定する技術に関する。
【背景技術】
【0002】
好適な制御などのために、ユーザが抱く感情を判定する技術が提案されている。感情を正しく判定できれば、例えば、ユーザに対して好適なコミュニケーションをとるように、コミュニケーションロボットの動作(発言など)を制御することができる。
【0003】
感情を判定する従来技術は、例えば、特許文献1~3に開示されている。特許文献1~3には、ウェアラブル機器で測定された脳波や心拍などの様々な生体情報に基づいて感情を判定する技術が開示されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2014-178970号公報
【文献】特開2017-144222号公報
【文献】特開2012-059107号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1~3に開示された従来技術では、ユーザがウェアラブル機器を装着しなくてはならず、ユーザビリティが悪い。また、多数の生体情報を用いるため、感情判定の処理負荷が大きく、感情判定に時間を要する。
【0006】
本発明は上記実情に鑑みなされたものであって、ユーザビリティの高いシンプルな構成で、高精度に感情を判定できる技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために本発明は、以下の構成を採用する。
【0008】
本発明の第一側面は、ユーザの顔画像から検出された当該ユーザの表情の変化に基づいて、当該ユーザの感情を推定する第1の推定手段と、前記ユーザから非接触で検出された当該ユーザの温度の変化に基づいて、当該ユーザの感情を推定する第2の推定手段と、前記第1の推定手段による推定結果と、前記第2の推定手段による推定結果とに基づいて、前記ユーザの感情を判定する判定手段とを有することを特徴とする感情判定装置を提供する。ここで、顔画像は、画像センサ(カメラ)が顔を撮像して得た画像や、画像センサが撮像して得た画像のうちの、顔が検出された部分などである。温度は、サーマルセンサなどにより非接触で検出される。
【0009】
上述した構成によれば、多数の生体情報を用いずに、顔画像を用いた感情推定の結果と、温度を用いた感情推定の結果とに基づくというシンプルな構成で、高精度に感情を判定できる。さらに、顔画像も温度(検出値)も非接触で得られるため、ユーザがウェアラブル機器を装着するといった手間が生じず、高いユーザビリティを実現できる。なお、表情の変化量や、感情と表情との対応関係などには個人差があるため、顔画像のみで高精度に感情を判定するのは難しく、環境(季節や場所(屋内/屋外))や服装に依ってユーザの温度は大きく異なるため、温度のみで高精度に感情を判定するのも難しい。上述した構成によれば、顔画像を用いた感情判定(感情推定)の結果と、温度を用いた感情判定の結果と
を組み合わせることで、一方の感情判定よりも高精度に感情を推定できる。
【0010】
前記第1の推定手段と前記第2の推定手段のそれぞれは、複数の感情のそれぞれについて、その感情を前記ユーザが抱いていることの確からしさであるスコアを算出し、前記判定手段は、前記第1の推定手段により算出された各感情のスコアと、前記第2の推定手段により算出された各感情のスコアとに基づいて、前記ユーザの感情を判定するとしてもよい。ここで、顔画像を用いた感情推定と温度を用いた感情推定とで、スコアは同じ基準で正規化されており、スコアの範囲は共通する。例えば、顔画像を用いた感情推定と温度を用いた感情推定とで、スコアの最大値は100などの所定値で共通する。複数の感情は、平常、怒り、悲しみ、喜びなどである。
【0011】
例えば、前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致する場合に、当該感情を前記ユーザの感情として判定し、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、前記第1の推定手段により算出された各感情のスコアと、前記第2の推定手段により算出された各感情のスコアとに基づいて、前記ユーザの感情を判定するとしてもよい。
【0012】
具体的には、前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、それらの感情のうち、算出されたスコアが高い方の感情を、前記ユーザの感情として判定するとしてもよい。こうすることで、より信頼度の高い感情を判定結果として得ることができる。
【0013】
前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、それらの感情のうち、前記第1の推定手段により算出されたスコアと、前記第2の推定手段により算出されたスコアとを足し合わせた値が大きい方の感情を、前記ユーザの感情として判定するとしてもよい。こうすることでも、より信頼度の高い感情を判定結果として得ることができる。
【0014】
前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、それらの感情のうち、前回からのスコアの変化量が大きい方の感情を、前記ユーザの感情として判定するとしてもよい。こうすることで、より早く感情の変化を捉えることができる。
【0015】
前記判定手段は、前記第1の推定手段により最大のスコアが算出された感情と、前記第2の推定手段により最大のスコアが算出された感情とが一致しない場合に、それらの感情のうち、前記複数の感情の間でのスコアの分散値が大きい方の感情を、前記ユーザの感情として判定するとしてもよい。こうすることでも、より信頼度の高い感情を判定結果として得ることができる。ここで、分散値は、スコアの際立ちの度合いとも言える。
【0016】
推定された感情を前記ユーザが抱いていることの確からしさであるスコアの所定時間前までの期間での分散値が所定の閾値よりも小さいタイミングを検出し、前記分散値が前記所定の閾値よりも小さい第1のタイミングから遡って、前記分散値が前記所定の閾値よりも小さい第2のタイミングの直後のタイミングまでの推定結果を、前記第1のタイミングの推定結果に置き換えるように、前記第1の推定手段による推定結果と、前記第2の推定手段による推定結果とを変更する変更手段をさらに有し、前記判定手段は、前記変更手段による変更後の推定結果に基づいて、前記ユーザの感情を判定するとしてもよい。こうすることで、感情の移り変わりを平滑化して捉えることができ、感情の移り変わりの傾向を
高精度に捉えることができる。その結果、感情の移り変わりを予測した制御などを、好適に行えるようになる。例えば、ユーザの感情が怒りから悲しみに変化する傾向にある場合に、怒りの感情を抱いているユーザに対して悲しみに変化することを想定したコミュニケーションをとるように、コミュニケーションロボットの動作(発言など)を制御することができる。
【0017】
前記第1の推定手段と前記第2の推定手段のそれぞれは、第1の周期で前記ユーザの感情を推定し、前記判定手段は、前記第1の推定手段による推定結果と、前記第2の推定手段による推定結果とを、前記第1の周期よりも長い第2の周期で更新して使用するとしてもよい。こうすることで、感情判定の処理負荷を低減できる。
【0018】
本発明の第二側面は、ユーザの顔画像から検出された当該ユーザの表情の変化に基づいて、当該ユーザの感情を推定する第1の推定ステップと、前記ユーザから非接触で検出された当該ユーザの温度の変化に基づいて、当該ユーザの感情を推定する第2の推定ステップと、前記第1の推定ステップにおける推定結果と、前記第2の推定ステップにおける推定結果とに基づいて、前記ユーザの感情を判定する判定ステップとを有することを特徴とする感情判定方法を提供する。
【0019】
なお、本発明は、上記構成ないし機能の少なくとも一部を有する感情判定システムとして捉えることができる。また、本発明は、上記処理の少なくとも一部を含む、感情判定方法又は感情判定システムの制御方法や、これらの方法をコンピュータに実行させるためのプログラム、又は、そのようなプログラムを非一時的に記録したコンピュータ読取可能な記録媒体として捉えることもできる。上記構成及び処理の各々は技術的な矛盾が生じない限り互いに組み合わせて本発明を構成することができる。
【発明の効果】
【0020】
本発明によれば、ユーザビリティの高いシンプルな構成で、高精度に感情を判定できる。
【図面の簡単な説明】
【0021】
【
図1】
図1は、本発明が適用された感情判定装置の構成例を示すブロック図である。
【
図2】
図2(A)は、第1の実施形態に係るコミュニケーションシステム(感情判定システム)の大まかな構成例を示す模式図であり、
図2(B)は、第1の実施形態に係るPC(感情判定装置)の構成例を示すブロック図である。
【
図3】
図3は、第1の実施形態に係る処理フロー例を示すフローチャートである。
【
図4】
図4(A)~4(C)は、第1の実施形態に係る動作例を示す図である。
【
図5】
図5は、第2の実施形態に係る処理フロー例を示すフローチャートである。
【
図6】
図6(A)~6(C)は、第2の実施形態に係る動作例を示す図である。
【
図7】
図7は、第3の実施形態に係る処理フロー例を示すフローチャートである。
【
図8】
図8(A)~8(C)は、第3の実施形態に係る動作例を示す図である。
【
図9】
図9は、第4の実施形態に係る処理フロー例を示すフローチャートである。
【
図10】
図10(A)~10(C)は、第4の実施形態に係る動作例を示す図である。
【
図11】
図11は、第5の実施形態に係るPC(感情判定装置)の構成例を示すブロック図である。
【
図12】
図12(A)~12(C)は、第5の実施形態に係る動作例を示す図である。
【
図13】
図13(A),13(B)は、第6の実施形態に係る動作例を示す図である。
【発明を実施するための形態】
【0022】
<適用例>
本発明の適用例について説明する。ユーザの平常、怒り、悲しみ、喜びといった感情を判定する従来技術では、ユーザがウェアラブル機器を装着しなくてはならず、ユーザビリティが悪い。また、多数の生体情報を用いるため、感情判定の処理負荷が大きく、感情判定に時間を要する。
【0023】
図1は、本発明が適用された感情判定装置100の構成例を示すブロック図である。感情判定装置100は、第1感情推定部101、第2感情推定部102、及び、感情判定部103を有する。第1感情推定部101は、ユーザの顔画像から検出された当該ユーザの表情の変化に基づいて、当該ユーザの感情を推定する。第2感情推定部102は、ユーザから非接触で検出された当該ユーザの温度の変化に基づいて、当該ユーザの感情を推定する。感情判定部103は、第1感情推定部101による推定結果と、第2感情推定部102による推定結果とに基づいて、ユーザの感情を判定する。第1感情推定部101は本発明の第1の推定手段の一例であり、第2感情推定部102は本発明の第2の推定手段の一例であり、感情判定部103は本発明の判定手段の一例である。ここで、顔画像は、画像センサ(カメラ)が顔を撮像して得た画像や、画像センサが撮像して得た画像のうちの、顔が検出された部分などである。温度は、サーマルセンサなどにより非接触で検出される。
【0024】
感情判定装置100の上記構成によれば、多数の生体情報を用いずに、顔画像を用いた感情推定の結果と、温度を用いた感情推定の結果とに基づくというシンプルな構成で、高精度に感情を判定できる。感情を正しく判定できれば、例えば、ユーザに対して好適なコミュニケーションをとるように、コミュニケーションロボットの動作(発言など)を制御することができる。さらに、顔画像も温度(検出値)も非接触で得られるため、ユーザがウェアラブル機器を装着するといった手間が生じず、高いユーザビリティを実現できる。なお、表情の変化量や、感情と表情との対応関係などには個人差があるため、顔画像のみで高精度に感情を判定するのは難しく、環境(季節や場所(屋内/屋外))や服装に依ってユーザの温度は大きく異なるため、温度のみで高精度に感情を判定するのも難しい。上記構成によれば、顔画像を用いた感情判定(感情推定)の結果と、温度を用いた感情判定の結果とを組み合わせることで、一方の感情判定よりも高精度に感情を推定できる。
【0025】
<第1の実施形態>
本発明の第1の実施形態について説明する。
【0026】
(構成)
図2(A)は、第1の実施形態に係るコミュニケーションシステム(感情判定システム)の大まかな構成例を示す模式図である。第1の実施形態に係るコミュニケーションシステムは、カメラ10、温度測定装置20、PC200(パーソナルコンピュータ;感情判定装置)、及び、コミュニケーションロボット30を有する。カメラ10とPC200は有線または無線で互いに接続されている。同様に、温度測定装置20とPC200は有線または無線で互いに接続されており、PC200とコミュニケーションロボット30は有線または無線で互いに接続されている。
【0027】
カメラ10は、カメラ10に設けられた画像センサを用いて撮像を行い、撮像によって得られた画像をPC200へ出力する。第1の実施形態では、カメラ10は、ユーザの顔を撮像して得た顔画像をPC200へ出力するとする。温度測定装置20は、温度測定装置20に設けられたサーマルセンサを用いて温度を測定し、測定結果(温度情報)をPC200へ出力する。第1の実施形態では、温度測定装置20は、ユーザの温度(顔の温度
など)を検出し、検出した温度を示す温度情報(温度の検出値)をPC200へ出力するとする。PC200は、ユーザの顔画像と当該ユーザの温度とに基づいて当該ユーザの感情を判定し、感情の判定結果をコミュニケーションロボット30へ出力する。コミュニケーションロボット30は、ユーザの感情の判定結果に基づいて、当該ユーザとのコミュニケーションをとる。
【0028】
なお、カメラ10は顔よりも広い範囲を撮像してもよい。その場合は、例えば、カメラ10またはPC200で、カメラ10により撮像された画像から顔画像を得る処理(撮像された画像から顔を検出する処理)が行われればよい。また、温度測定装置20は、ユーザ(顔)よりも広い範囲の温度分布を検出してもよい。その場合は、例えば、温度測定装置20またはPC200で、検出された温度分布からユーザの温度を得る処理が行われればよい。また、ユーザの感情の判定結果の用途は特に限定されず、コミュニケーションロボット30の制御でなくてもよい。
【0029】
また、第1の実施形態では、カメラ10、温度測定装置20、PC200、及び、コミュニケーションロボット30が別個の装置であるとするが、そうでなくてもよい。例えば、カメラ10、温度測定装置20、PC200、及び、コミュニケーションロボット30の少なくとも2つ以上が1つの装置に含まれていていてもよい。具体的には、カメラ10、温度測定装置20、及び、PC200が、コミュニケーションロボット30に内蔵されていてもよい。また、PC200の設置場所は特に限定されない。例えば、PC200はカメラ10、温度測定装置20、及び、コミュニケーションロボット30と同じ部屋に設置されていてもよいし、そうでなくてもよい。PC200はクラウド上のコンピュータであってもよいし、そうでなくてもよい。
【0030】
図2(B)は、PC200の構成例を示すブロック図である。PC200は、画像取得部210、温度取得部220、制御部230、記憶部240、及び、出力部250を有する。
【0031】
画像取得部210は、顔画像をカメラ10から取得し、制御部230(第1感情推定部231)へ出力する。第1の実施形態では、カメラ10は動画を撮像するとし、画像取得部210は、動画の1フレームをカメラ10から取得して制御部230へ出力する処理を、順次行うとする。画像取得部210による顔画像取得の周期は特に限定されないが、第1の実施形態では、画像取得部210は、カメラ10による撮像に同期して顔画像(動画の1フレーム)を取得するとする。つまり、画像取得部210は、顔画像をカメラ10から取得して制御部230へ出力する処理を、カメラ10による撮像のフレームレート(例えば30fps)で行うとする。なお、カメラ10は静止画の撮像を順次行ってもよく、その場合に、画像取得部210は、静止画をカメラ10から取得して制御部230へ出力する処理を、順次行う。
【0032】
温度取得部220は、ユーザの温度情報を温度測定装置20から取得し、制御部230(第2感情推定部232)へ出力する。温度測定装置20による温度測定の周期や、温度取得部220による温度情報取得の周期などは特に限定されない。第1の実施形態では、温度測定装置20は、カメラ10による撮像に同期して温度を測定するとし、温度取得部220は、カメラ10による撮像(画像取得部210による顔画像の取得)に同期して温度情報を取得するとする。つまり、温度取得部220は、温度情報を温度測定装置20から取得して制御部230へ出力する処理を、カメラ10による撮像のフレームレートで行うとする。
【0033】
制御部230は、CPU(Central Processing Unit)やRAM(Random Access Memory)、ROM(Read Only Me
mory)などを含み、各構成要素の制御や、各種情報処理などを行う。詳細は後述するが、第1の実施形態では、制御部230は、画像取得部210により取得された顔画像と、温度取得部220により取得された温度情報とに基づいて、ユーザの感情を判定し、感情の判定結果を出力部250へ出力する。
【0034】
記憶部240は、制御部230で実行されるプログラムや、制御部230で使用される各種データなどを記憶する。例えば、記憶部240は、ハードディスクドライブ、ソリッドステートドライブ、等の補助記憶装置である。
【0035】
出力部250は、制御部230により出力された判定結果(感情の判定結果)を、コミュニケーションロボット30へ出力する。
【0036】
記憶部240について、より詳細に説明する。記憶部240は、第1感情推定辞書241と第2感情推定辞書242を有する。第1感情推定辞書241は、表情変化と感情の対応関係が予め登録されている辞書である。第2感情推定辞書242は、温度変化と感情の対応関係が予め登録されている辞書である。
【0037】
制御部230について、より詳細に説明する。制御部230は、第1感情推定部231、第2感情推定部232、及び、感情判定部233を有する。
【0038】
第1感情推定部231は、画像取得部210により出力された顔画像からユーザの表情を検出する処理(表情検出)を順次行う。第1感情推定部231は、第1感情推定辞書241を参照して、検出した表情の変化から、ユーザの感情を推定する。そして、第1感情推定部231は、感情の推定結果を感情判定部233へ出力する。第1感情推定部231は本発明の第1の推定手段の一例である。
【0039】
なお、第1感情推定部231による表情検出や感情推定(いずれも顔画像に基づく処理)にはどのようなアルゴリズムを用いてもよい。例えば、既存の表情検出によりユーザの表情を検出してもよく、具体的にはHoGやHaar-likeなどの画像特徴とブースティングを組み合わせた検出器(識別器)を用いて表情を検出してもよい。既存の機械学習により生成された学習済みモデルを用いて表情を検出してもよく、具体的にはディープラーニング(例えば、R-CNN、Fast R-CNN、YOLO、SSDなど)により生成された学習済みモデルを用いて表情を検出してもよい。同様に、既存の感情推定によりユーザの感情を推定してもよいし、既存の機械学習により生成された学習済みモデルを用いてユーザの感情を推定してもよい。具体的にはディープラーニング(例えば、R-CNN、Fast R-CNN、YOLO、SSDなど)により生成された学習済みモデルを用いてユーザの感情を推定してもよい。
【0040】
第2感情推定部232は、温度取得部220により出力された温度情報を順次取得し、第2感情推定辞書242を参照して、取得した温度情報の変化(ユーザの温度の変化)から、ユーザの感情を推定する。そして、第2感情推定部232は、感情の推定結果を感情判定部233へ出力する。第2感情推定部232は本発明の第2の推定手段の一例である。
【0041】
なお、第2感情推定部232による感情推定(温度に基づく感情推定)にはどのようなアルゴリズムを用いてもよい。例えば、既存の感情推定によりユーザの感情を推定してもよいし、既存の機械学習により生成された学習済みモデルを用いてユーザの感情を推定してもよい。具体的にはディープラーニング(例えば、R-CNN、Fast R-CNN、YOLO、SSDなど)により生成された学習済みモデルを用いてユーザの感情を推定してもよい。
【0042】
感情判定部233は、第1感情推定部231による推定結果と、第2感情推定部232による推定結果とに基づいて、ユーザの感情を判定し、感情の判定結果を出力部250へ出力する。感情判定部233は本発明の判定手段の一例である。
【0043】
第1の実施形態では、第1感情推定部231と第2感情推定部232のそれぞれは、複数の感情のそれぞれについて、その感情をユーザが抱いていることの確からしさであるスコアを算出するとし、各感情のスコアを推定結果として出力するとする。そして、感情判定部233は、第1感情推定部231により算出された各感情のスコアと、第2感情推定部232により算出された各感情のスコアとに基づいて、ユーザの感情を判定するとする。
【0044】
ここで、顔画像を用いた感情推定(第1感情推定部231による感情推定)と温度を用いた感情推定(第2感情推定部232による感情推定)とで、スコアは同じ基準で正規化されており、スコアの範囲は共通する。例えば、顔画像を用いた感情推定と温度を用いた感情推定とで、スコアの最大値は100などの所定値で共通する。第1の実施形態では、顔画像を用いた感情推定と温度を用いた感情推定とのそれぞれで、複数の感情にそれぞれ対応する複数のスコアの合計が100となるように、各感情のスコアが算出されるとする。複数の感情の数や種類は特に限定されないが、第1の実施形態では平常、怒り、悲しみ、喜びの4つの感情を用いるとする。
【0045】
第1感情推定部231により最大のスコアが算出された感情と、第2感情推定部232により最大のスコアが算出された感情とが一致する場合には、当該感情をユーザが抱いている可能性が極めて高いと考えられる。従って、このような場合には、感情判定部233は、第1感情推定部231と第2感情推定部232で最大のスコアが算出された感情を、ユーザの感情として判定する。
【0046】
第1感情推定部231により最大のスコアが算出された感情と、第2感情推定部232により最大のスコアが算出された感情とが一致しないこともある。このような場合には、感情判定部233は、第1感情推定部231により算出された各感情のスコアと、第2感情推定部232により算出された各感情のスコアとに基づいて、ユーザの感情を判定する。具体的には、感情判定部233は、第1感情推定部231により最大のスコアが算出された感情と、第2感情推定部232により最大のスコアが算出された感情とのうち、算出されたスコアが高い方の感情を、ユーザの感情として判定する。スコアが高いほど信頼度(対応する感情をユーザが抱いていることの確からしさ)が高いと考えられるため、こうすることで、より信頼度の高い感情を判定結果として得ることができる。
【0047】
(動作)
図3は、第1の実施形態に係る処理フロー例を示すフローチャートである。PC200は、
図3の処理フローを繰り返し実行する。
図3の処理フローの繰り返し周期は特に限定されないが、カメラ10による撮像のフレームレート(例えば30fps)で
図3の処理フローが繰り返されるとする。
【0048】
まず、画像取得部210は、ユーザの顔画像をカメラ10から取得する(ステップS301)。そして、第1感情推定部231は、ステップS301で取得された顔画像からユーザの表情を検出し、検出した表情の変化(過去から現在までの表情変化)に基づいて、平常、怒り、悲しみ、及び、喜びのそれぞれのスコアを算出する(ステップS302)。
【0049】
次に、温度取得部220は、ユーザの温度情報(ユーザの温度)を温度測定装置20から取得する(ステップS303)。そして、第2感情推定部232が、ユーザの温度の変
化(過去から現在までの温度変化)に基づいて、平常、怒り、悲しみ、及び、喜びのそれぞれのスコアを算出する(ステップS304)。
【0050】
次に、感情判定部233は、第1感情推定部231により最大のスコアが算出された感情E1と、第2感情推定部232により最大のスコアが算出された感情E2とが一致するか否かを判定する(ステップS305)。感情E1は、ステップS302で表情変化に基づき算出された4つのスコア(平常、怒り、悲しみ、及び、喜びにそれぞれ対応する)のうち、最大のスコアが算出された感情である。感情E2は、ステップS304で温度変化に基づき算出された4つのスコア(平常、怒り、悲しみ、及び、喜びにそれぞれ対応する)のうち、最大のスコアが算出された感情である。感情E1と感情E2が一致する場合(ステップS305:YES)にはステップS306へ処理が進められ、感情E1と感情E2が一致しない場合(ステップS305:NO)にはステップS307へ処理が進められる。
【0051】
ステップS306では、感情判定部233は、感情E1=E2を、ユーザの感情Eresult(最終的な判定結果)として決定する。そして、PC200は、
図3の処理フローを終了する。
【0052】
ステップS307では、感情判定部233は、感情E1のスコア(表情変化に基づくスコア)と、感情E2のスコア(温度変化に基づくスコア)とが一致するか否かを判定する。感情E1のスコアと感情E2のスコアとが一致しない場合(ステップS307:NO)には、ステップS308へ処理が進められる。感情E1のスコアと感情E2のスコアとが一致する場合(ステップS307:YES)には、PC200は、
図3の処理フローを終了する。このとき、ユーザの感情Eresultとして、前回と同じ感情が採用される。
【0053】
ステップS308では、感情判定部233は、感情E1のスコアが感情E2のスコアよりも高いか否かを判定する。感情E1のスコアが感情E2のスコアよりも高い場合(ステップS308:YES)にはステップS309へ処理が進められ、感情E1のスコアが感情E2のスコアよりも低い場合(ステップS308:NO)にはステップS310へ処理が進められる。
【0054】
ステップS309では、感情判定部233は、感情E1(表情変化に基づいて推定された感情)を、ユーザの感情Eresultとして決定する。そして、PC200は、
図3の処理フローを終了する。
【0055】
ステップS310では、感情判定部233は、感情E2(温度変化に基づいて推定された感情)を、ユーザの感情Eresultとして決定する。そして、PC200は、
図3の処理フローを終了する。
【0056】
(動作の具体例)
図4(A)~4(C)は、第1の実施形態に係る動作例を示す。
図4(A)は、第1感情推定部231により算出された各感情のスコア(表情変化に基づくスコア)の時間変化の一例を示す。
図4(A)では、感情E1(表情変化に基づいて推定された感情)が太枠で示されている。
図4(B)は、第2感情推定部232により算出された各感情のスコア(温度変化に基づくスコア)の時間変化の一例を示す。
図4(B)では、感情E2(温度変化に基づいて推定された感情)が太枠で示されている。
図4(C)は、感情判定部233により判定された感情(感情Eresult)の時間変化の一例を示す。
【0057】
図4(A)~4(C)の例では、フレーム0~フレーム2の期間において、感情E1も感情E2も平常であるため、感情Eresultとしても平常が決定される。フレーム3
では、感情E1は怒りであり、感情E2は平常であり、感情E1と感情E2は異なる。ここで、感情E1(怒り)のスコアは55であり、感情E2(平常)のスコアは52である。感情E1(怒り)のスコア(55)が感情E2(平常)のスコア(52)よりも高いため、感情Eresultとして怒りが決定される。他のフレームでも同様に、感情E1のスコアと感情E2のスコアとの一致/不一致や大小関係などに基づいて、感情Eresultが決定される。
【0058】
(まとめ)
以上述べたように、第1の実施形態によれば、多数の生体情報を用いずに、顔画像を用いた感情推定の結果と、温度を用いた感情推定の結果とに基づくというシンプルな構成で、高精度に感情を判定できる。さらに、顔画像も温度(検出値)も非接触で得られるため、ユーザがウェアラブル機器を装着するといった手間が生じず、高いユーザビリティを実現できる。また、顔画像に基づいて推定された感情と、温度に基づいて推定された感情とのうち、算出されたスコアが高い方の感情を、ユーザの感情として判定することで、より信頼度の高い感情を判定結果として得ることができる。
【0059】
<第2の実施形態>
本発明の第2の実施形態について説明する。
【0060】
(構成)
第2の実施形態に係るコミュニケーションシステムの構成や、第2の実施形態に係るPC200の構成などは、第1の実施形態とほぼ同じである。第2の実施形態では、第1感情推定部231により最大のスコアが算出された感情と、第2感情推定部232により最大のスコアが算出された感情とが一致しない場合における感情判定部233の処理が、第1の実施形態と異なる。第2の実施形態では、このような場合において、感情判定部233は、それらの感情のうち、第1感情推定部231により算出されたスコアと、第2感情推定部232により算出されたスコアとを足し合わせた値が大きい方の感情を、ユーザの感情として判定する。こうすることでも、より信頼度の高い感情を判定結果として得ることができる。
【0061】
(動作)
図5は、第2の実施形態に係る処理フロー例を示すフローチャートである。PC200は、
図5の処理フローを繰り返し実行する。
図5の処理フローの繰り返し周期は特に限定されないが、カメラ10による撮像のフレームレート(例えば30fps)で
図5の処理フローが繰り返されるとする。
【0062】
ステップS501~S507の処理は、第1の実施形態のステップS301~S307の処理と同じである。感情E1のスコア(表情変化に基づくスコア)と、感情E2のスコア(温度変化に基づくスコア)とが一致しない場合(ステップS507:NO)には、ステップS508へ処理が進められる。
【0063】
ステップS508では、感情判定部233は、感情E1に対応する合計スコアS1を算出する。合計スコアS1は、感情E1のスコア(第1感情推定部231により算出されたスコア;表情変化に基づくスコア)と、感情E1と同じ感情について第2感情推定部232により算出されたスコア(温度変化に基づくスコア)との足し合わせにより、算出される。
【0064】
ステップS509では、感情判定部233は、感情E2に対応する合計スコアS2を算出する。合計スコアS2は、感情E2のスコア(第2感情推定部232により算出されたスコア;温度変化に基づくスコア)と、感情E2と同じ感情について第1感情推定部23
1により算出されたスコア(表情変化に基づくスコア)との足し合わせにより、算出される。
【0065】
ステップS510では、感情判定部233は、ステップS508で算出された合計スコアS1と、ステップS509で算出された合計スコアS2とが一致するか否かを判定する。合計スコアS1と合計スコアS2が一致しない場合(ステップS510:NO)には、ステップS511へ処理が進められる。合計スコアS1と合計スコアS2が一致する場合(ステップS510:YES)には、PC200は、
図5の処理フローを終了する。このとき、ユーザの感情Eresultとして、前回と同じ感情が採用される。
【0066】
ステップS511では、感情判定部233は、ステップS508で算出された合計スコアS1がステップS509で算出された合計スコアS2よりも高いか否かを判定する。合計スコアS1が合計スコアS2よりも高い場合(ステップS511:YES)にはステップS512へ処理が進められ、合計スコアS1が合計スコアS2よりも低い場合(ステップS511:NO)にはステップS513へ処理が進められる。
【0067】
ステップS512では、感情判定部233は、合計スコアS1に対応する感情E1を、ユーザの感情Eresultとして決定する。そして、PC200は、
図5の処理フローを終了する。
【0068】
ステップS513では、感情判定部233は、合計スコアS2に対応する感情E2を、ユーザの感情Eresultとして決定する。そして、PC200は、
図5の処理フローを終了する。
【0069】
(動作の具体例)
図6(A)~6(C)は、第2の実施形態に係る動作例を示す。
図6(A)は、第1感情推定部231により算出された各感情のスコア(表情変化に基づくスコア)の時間変化の一例を示す。
図6(A)では、感情E1(表情変化に基づいて推定された感情)が太枠で示されている。
図6(B)は、第2感情推定部232により算出された各感情のスコア(温度変化に基づくスコア)の時間変化の一例を示す。
図6(B)では、感情E2(温度変化に基づいて推定された感情)が太枠で示されている。
図6(C)は、感情判定部233により判定された感情(感情Eresult)の時間変化の一例を示す。
【0070】
図6(A)~6(C)の例では、フレーム0~フレーム2の期間において、感情E1も感情E2も平常であるため、感情Eresultとしても平常が決定される。フレーム3では、感情E1は怒りであり、感情E2は平常であり、感情E1と感情E2は異なる。ここで、感情E1(怒り)について、第1感情推定部231が算出したスコア(55)と、第2感情推定部232が算出したスコア(20)との合計(合計スコアS1)は、75である。感情E2(平常)について、第1感情推定部231が算出したスコア(22)と、第2感情推定部232が算出したスコア(72)との合計(合計スコアS2)は、74である。感情E1(怒り)に対応する合計スコアS1(75)が、感情E2(平常)に対応する合計スコアS2(74)よりも高いため、感情Eresultとして怒りが決定される。他のフレームでも同様に、感情E1のスコアと感情E2のスコアとの一致/不一致や、合計スコアS1と合計スコアS2の大小関係などに基づいて、感情Eresultが決定される。
【0071】
(まとめ)
以上述べたように、第2の実施形態でも、第1の実施形態と同様に、ユーザビリティの高いシンプルな構成で、高精度に感情を判定できるという効果を得ることができる。また、顔画像に基づいて推定された感情と、温度に基づいて推定された感情とのうち、顔画像
に基づくスコアと温度に基づくスコアとの合計が高い方の感情を、ユーザの感情として判定することで、より信頼度の高い感情を判定結果として得ることができる。
【0072】
<第3の実施形態>
本発明の第3の実施形態について説明する。
【0073】
(構成)
第3の実施形態に係るコミュニケーションシステムの構成や、第3の実施形態に係るPC200の構成などは、第1の実施形態とほぼ同じである。第3の実施形態では、第1感情推定部231により最大のスコアが算出された感情と、第2感情推定部232により最大のスコアが算出された感情とが一致しない場合における感情判定部233の処理が、第1の実施形態と異なる。第3の実施形態では、このような場合において、感情判定部233は、それらの感情のうち、前回からのスコアの変化量が大きい方の感情を、ユーザの感情として判定する。こうすることで、より早く感情の変化を捉えることができる。
【0074】
(動作)
図7は、第3の実施形態に係る処理フロー例を示すフローチャートである。PC200は、
図7の処理フローを繰り返し実行する。
図7の処理フローの繰り返し周期は特に限定されないが、カメラ10による撮像のフレームレート(例えば30fps)で
図7の処理フローが繰り返されるとする。
【0075】
ステップS701~S707の処理は、第1の実施形態のステップS301~S307の処理と同じである。感情E1のスコア(表情変化に基づくスコア)と、感情E2のスコア(温度変化に基づくスコア)とが一致しない場合(ステップS707:NO)には、ステップS708へ処理が進められる。
【0076】
ステップS708では、感情判定部233は、感情E1の前回のスコア(表情変化に基づくスコア)から感情E1の今回のスコア(表情変化に基づくスコア)までの変化量D1を算出する。変化量D1は、感情E1の今回のスコアから感情E1の前回のスコアを減算して得られる差分値である。
【0077】
ステップS709では、感情判定部233は、感情E2の前回のスコア(温度変化に基づくスコア)から感情E2の今回のスコア(温度変化に基づくスコア)までの変化量D2を算出する。変化量D2は、感情E2の今回のスコアから感情E2の前回のスコアを減算して得られる差分値である。
【0078】
ステップS710では、感情判定部233は、ステップS708で算出された変化量D1と、ステップS709で算出された変化量D2とが一致するか否かを判定する。変化量D1と変化量D2が一致しない場合(ステップS710:NO)には、ステップS711へ処理が進められる。変化量D1と変化量D2が一致する場合(ステップS710:YES)には、PC200は、
図7の処理フローを終了する。このとき、ユーザの感情Eresultとして、前回と同じ感情が採用される。
【0079】
ステップS711では、感情判定部233は、ステップS708で算出された変化量D1がステップS709で算出された変化量D2よりも大きいか否かを判定する。変化量D1が変化量D2よりも大きい場合(ステップS711:YES)にはステップS712へ処理が進められ、変化量D1が変化量D2よりも小さい場合(ステップS711:NO)にはステップS713へ処理が進められる。
【0080】
ステップS712では、感情判定部233は、変化量D1に対応する感情E1を、ユー
ザの感情Eresultとして決定する。そして、PC200は、
図7の処理フローを終了する。
【0081】
ステップS713では、感情判定部233は、変化量D2に対応する感情E2を、ユーザの感情Eresultとして決定する。そして、PC200は、
図7の処理フローを終了する。
【0082】
(動作の具体例)
図8(A)~8(C)は、第3の実施形態に係る動作例を示す。
図8(A)は、第1感情推定部231により算出された各感情のスコア(表情変化に基づくスコア)の時間変化の一例を示す。
図8(A)では、感情E1(表情変化に基づいて推定された感情)が太枠で示されている。
図8(B)は、第2感情推定部232により算出された各感情のスコア(温度変化に基づくスコア)の時間変化の一例を示す。
図8(B)では、感情E2(温度変化に基づいて推定された感情)が太枠で示されている。
図8(C)は、感情判定部233により判定された感情(感情Eresult)の時間変化の一例を示す。
【0083】
図8(A)~8(C)の例では、フレーム0~フレーム2の期間において、感情E1も感情E2も平常であるため、感情Eresultとしても平常が決定される。フレーム3では、感情E1は怒りであり、感情E2は平常であり、感情E1と感情E2は異なる。ここで、感情E1(怒り)について、第1感情推定部231が前回算出したスコア(23;フレーム2のスコア)から、第1感情推定部231が今回算出したスコア(55;フレーム3のスコア)までの変化量D1は、32(=55-23)である。感情E2(平常)について、第2感情推定部232が前回算出したスコア(52;フレーム2のスコア)から、第2感情推定部232が今回算出したスコア(50;フレーム3のスコア)までの変化量D2は、-2(=50-52)である。感情E1(怒り)に対応する変化量D1(32)が、感情E2(平常)に対応する変化量D2(-2)よりも大きいため、感情Eresultとして怒りが決定される。他のフレームでも同様に、感情E1のスコアと感情E2のスコアとの一致/不一致や、変化量D1と変化量D2の大小関係などに基づいて、感情Eresultが決定される。
【0084】
(まとめ)
以上述べたように、第3の実施形態でも、第1の実施形態と同様に、ユーザビリティの高いシンプルな構成で、高精度に感情を判定できるという効果を得ることができる。また、顔画像に基づいて推定された感情と、温度に基づいて推定された感情とのうち、前回からのスコアの変化量が大きい方の感情を、ユーザの感情として判定することで、より早く感情の変化を捉えることができる。
【0085】
<第4の実施形態>
本発明の第4の実施形態について説明する。
【0086】
(構成)
第4の実施形態に係るコミュニケーションシステムの構成や、第4の実施形態に係るPC200の構成などは、第1の実施形態とほぼ同じである。第4の実施形態では、第1感情推定部231により最大のスコアが算出された感情と、第2感情推定部232により最大のスコアが算出された感情とが一致しない場合における感情判定部233の処理が、第1の実施形態と異なる。第4の実施形態では、このような場合において、感情判定部233は、それらの感情のうち、複数の感情の間でのスコアの分散値が大きい方の感情を、ユーザの感情として判定する。ここで、分散値は、スコアの際立ちの度合いとも言える。複数の感情の間でのスコアの分散値が大きいほど、つまり最大のスコアが際立っているほど、信頼度(対応する感情をユーザが抱いていることの確からしさ)が高いと考えられるた
め、こうすることで、より信頼度の高い感情を判定結果として得ることができる。n個のスコアXi(iは1以上n以下の整数)の分散値Vは、例えば、以下の式1で算出できる。式1において、Xaveは、n個のスコアXiの平均値である。
【数1】
【0087】
(動作)
図9は、第4の実施形態に係る処理フロー例を示すフローチャートである。PC200は、
図9の処理フローを繰り返し実行する。
図9の処理フローの繰り返し周期は特に限定されないが、カメラ10による撮像のフレームレート(例えば30fps)で
図9の処理フローが繰り返されるとする。
【0088】
ステップS901~S907の処理は、第1の実施形態のステップS301~S307の処理と同じである。感情E1のスコア(表情変化に基づくスコア)と、感情E2のスコア(温度変化に基づくスコア)とが一致しない場合(ステップS907:NO)には、ステップS908へ処理が進められる。
【0089】
ステップS908では、感情判定部233は、感情E1に対応する分散値V1として、第1感情推定部231が複数の感情(平常、怒り、悲しみ、及び、喜び)に対してそれぞれ算出した複数のスコア(表情変化に基づく複数のスコア)の分散値を算出する。
【0090】
ステップS909では、感情判定部233は、感情E2に対応する分散値V2として、第2感情推定部232が複数の感情(平常、怒り、悲しみ、及び、喜び)に対してそれぞれ算出した複数のスコア(温度変化に基づく複数のスコア)の分散値を算出する。
【0091】
ステップS910では、感情判定部233は、ステップS908で算出された分散値V1と、ステップS909で算出された分散値V2とが一致するか否かを判定する。分散値V1と分散値V2が一致しない場合(ステップS910:NO)には、ステップS911へ処理が進められる。分散値V1と分散値V2が一致する場合(ステップS910:YES)には、PC200は、
図9の処理フローを終了する。このとき、ユーザの感情Eresultとして、前回と同じ感情が採用される。
【0092】
ステップS911では、感情判定部233は、ステップS908で算出された分散値V1がステップS909で算出された分散値V2よりも大きいか否かを判定する。分散値V1が分散値V2よりも大きい場合(ステップS911:YES)にはステップS912へ処理が進められ、分散値V1が分散値V2よりも小さい場合(ステップS911:NO)にはステップS913へ処理が進められる。
【0093】
ステップS912では、感情判定部233は、分散値V1に対応する感情E1を、ユーザの感情Eresultとして決定する。そして、PC200は、
図9の処理フローを終了する。
【0094】
ステップS913では、感情判定部233は、分散値V2に対応する感情E2を、ユーザの感情Eresultとして決定する。そして、PC200は、
図9の処理フローを終了する。
【0095】
(動作の具体例)
図10(A)~10(C)は、第4の実施形態に係る動作例を示す。
図10(A)は、第1感情推定部231により算出された各感情のスコア(表情変化に基づくスコア)の時間変化の一例を示す。
図10(A)では、感情E1(表情変化に基づいて推定された感情)が太枠で示されている。
図10(B)は、第2感情推定部232により算出された各感情のスコア(温度変化に基づくスコア)の時間変化の一例を示す。
図10(B)では、感情E2(温度変化に基づいて推定された感情)が太枠で示されている。
図10(C)は、感情判定部233により判定された感情(感情Eresult)の時間変化の一例を示す。
【0096】
図10(A)~10(C)の例では、フレーム0~フレーム2の期間において、感情E1も感情E2も平常であるため、感情Eresultとしても平常が決定される。フレーム3では、感情E1は怒りであり、感情E2は平常であり、感情E1と感情E2は異なる。ここで、感情E1(怒り)について、第1感情推定部231が算出した4つのスコア(22,55,12,11)から算出される分散値V1は、319である。感情E2(平常)について、第2感情推定部232が算出した4つのスコア(52,20,8,20)から算出される分散値V2は、267である。感情E1(怒り)に対応する分散値V1(319)が、感情E2(平常)に対応する分散値V2(267)よりも大きいため、感情Eresultとして怒りが決定される。他のフレームでも同様に、感情E1のスコアと感情E2のスコアとの一致/不一致や、分散値V1と分散値V2の大小関係などに基づいて、感情Eresultが決定される。
【0097】
(まとめ)
以上述べたように、第4の実施形態でも、第1の実施形態と同様に、ユーザビリティの高いシンプルな構成で、高精度に感情を判定できるという効果を得ることができる。また、顔画像に基づいて推定された感情と、温度に基づいて推定された感情とのうち、複数の感情の間でのスコアの分散値が大きい方の感情を、ユーザの感情として判定することで、より信頼度の高い感情を判定結果として得ることができる。
【0098】
<第5の実施形態>
本発明の第5の実施形態について説明する。
【0099】
(構成)
第5の実施形態に係るコミュニケーションシステムの構成は、第1の実施形態とほぼ同じである。
図11は、第5の実施形態に係るPC200の構成例を示すブロック図である。第5の実施形態に係るPC200も、第1の実施形態と同様に、画像取得部210、温度取得部220、制御部230、記憶部240、及び、出力部250を有する。但し、第5の実施形態に係る制御部230は、推定結果変更部234をさらに有する。第5の実施形態において、後述する処理以外の処理については、第1の実施形態と同様である。
【0100】
第5の実施形態では、第1感情推定部231と第2感情推定部232のそれぞれは、ユーザの感情の推定結果を、記憶部240に格納(記録;蓄積)する。
【0101】
推定結果変更部234は、記憶部240に格納された、第1感情推定部231による推定結果と、第2感情推定部232による推定結果とを変更する。わかりやすさの観点から、
図11では、記憶部240に対する推定結果の書き込み/読み出しの矢印の代わりに、第1感情推定部231と第2感情推定部232から推定結果変更部234に向かう矢印が示されている。具体的には、推定結果変更部234は、所定時間前までの期間でのスコア(推定された感情のスコア)の分散値が所定の閾値よりも小さいタイミングを検出する。このようなタイミングは、ユーザの感情の推定結果が安定したタイミングとみなすことができる。そして、推定結果変更部234は、分散値が所定の閾値よりも小さい第1のタイ
ミングから遡って、分散値が所定の閾値よりも小さい第2のタイミングの直後のタイミングまでの推定結果を、第1のタイミングの推定結果に置き換える。推定結果変更部234は、このようなタイミングの検出と推定結果の置き換えとが行われるように、第1感情推定部231による推定結果と、第2感情推定部232による推定結果とを変更する。推定結果変更部234は本発明の変更手段の一例である。
【0102】
感情判定部233は、推定結果変更部234による変更後の推定結果に基づいて、ユーザの感情を判定する。例えば、ユーザの感情は、第1~第4の実施形態のいずれかの方法で判定される。
【0103】
こうすることで、感情の移り変わりを平滑化して捉えることができ、感情の移り変わりの傾向を高精度に捉えることができる。その結果、感情の移り変わりを予測した制御などを、好適に行えるようになる。例えば、ユーザの感情が怒りから悲しみに変化する傾向にある場合に、怒りの感情を抱いているユーザに対して悲しみに変化することを想定したコミュニケーションをとるように、コミュニケーションロボット30の動作(発言など)を制御することができる。
【0104】
(動作の具体例)
図12(A)~12(C)は、第5の実施形態に係る動作例を示す。以下では、第1感情推定部231の推定結果を変更する例について説明する。第2感情推定部232の推定結果も以下の方法と同様の方法で変更される。
【0105】
図12(A)は、推定結果変更部234による変更前のスコアの時間変化の一例を示し、第1感情推定部231により算出された各感情のスコア(表情変化に基づくスコア)の時間変化の一例を示す。
図12(A)では、感情E1(表情変化に基づいて推定された感情)が太枠で示されている。
【0106】
まず、推定結果変更部234は、
図12(A)の時間変化に基づいて、推定結果変更部234により推定された感情E1の、所定時間前までの期間での分散値を算出する。所定時間は特に限定されないが、ここでは3フレーム分の時間であるとする。例えば、フレーム2では、感情E1(スコアが最大の感情)は平常であるため、推定結果変更部234は、フレーム2の平常のスコア(56)、フレーム1の平常のスコア(50)、及び、フレーム0の平常のスコア(60)から分散値(16.9)を算出する。フレーム3では、感情E1(スコアが最大の感情)は怒りであるため、推定結果変更部234は、フレーム3の怒りのスコア(55)、フレーム2の怒りのスコア(23)、及び、フレーム1の怒りのスコア(20)から分散値(251)を算出する。推定結果変更部234は、他のフレームについても、同様の方法で分散値を算出する。
図12(B)は、算出された分散値の時間変化の一例を示す。
【0107】
次に、推定結果変更部234は、分散値が所定の閾値よりも小さいタイミング(フレーム)を検出する。所定の閾値は特に限定されないが、ここでは50であるとする。
図12(B)では、所定の閾値(50)よりも小さい分散値が太枠で示されている。具体的には、フレーム2,7,13,14が検出されている。
【0108】
最後に、推定結果変更部234は、分散値が所定の閾値(50)よりも小さい第1のタイミングから遡って、分散値が所定の閾値(50)よりも小さい第2のタイミングの直後のタイミングまでの推定結果を、第1のタイミングの推定結果に置き換える。上述したように、
図12(B)では、分散値が所定の閾値(50)よりも小さいタイミングとして、フレーム2,7,13,14が検出されている。このため、推定結果変更部234は、フレーム0~2のスコアがフレーム2のスコアとなり、フレーム3~7のスコアがフレーム
7のスコアとなり、フレーム8~13のスコアがフレーム13のスコアとなるように、スコアの置き換えを行う。
図12(C)は、推定結果変更部234による変更後のスコアの時間変化の一例を示す。
【0109】
なお、
図12(C)には、感情E1(ユーザが抱いていると推定された感情)のスコアのみが示されているが、感情E1以外のスコアについても上記置き換えが行われてよい。さらに、感情E1が同じ複数のフレームが連続する場合には、当該複数のフレームの間でスコアを統一するように、スコアの置き換えが行われてもよい。例えば、
図12(A)~12(C)の場合は、フレーム13の感情E1もフレーム14の感情E1も悲しみである。このため、推定結果変更部234は、フレーム8~14のスコアがフレーム13またはフレーム14のスコアとなるように、スコアの置き換えを行ってもよい。
【0110】
(まとめ)
以上述べたように、第5の実施形態でも、第1の実施形態と同様に、ユーザビリティの高いシンプルな構成で、高精度に感情を判定できるという効果を得ることができる。また、感情の移り変わりが平滑化して捉えられるように感情推定の結果を変更することで、感情の移り変わりの傾向を高精度に捉えることができる。
【0111】
<第6の実施形態>
本発明の第6の実施形態について説明する。
【0112】
(構成)
第6の実施形態に係るコミュニケーションシステムの構成や、第6の実施形態に係るPC200の構成などは、第1の実施形態とほぼ同じである。第6の実施形態では、第1感情推定部231と第2感情推定部232のそれぞれは、第1の周期でユーザの感情を推定する。感情判定部233は、第1感情推定部231による推定結果と、第2感情推定部232による推定結果とを、第1の周期よりも長い第2の周期で更新して使用する。例えば、第2の周期は、第1の周期の3倍の周期である。カメラ10による撮像のフレームレートが30fpsであり、第1の周期が当該フレームレートに対応するとすると、第2の周期は、その1/3のフレームレート(10fps)に対応する。これら以外の構成(処理)は、第1~第4の実施形態のいずれかと同様である。
【0113】
こうすることで、第1感情推定部231とよる推定結果と第2感情推定部232による推定結果の更新といった、感情判定部233の処理の頻度を減らすことができるため、感情判定の処理負荷を低減できる。なお、感情判定部233は、感情判定や、その結果の出力などを、第1の周期で行ってもよいし、第2の周期で行ってもよい。それらも第2の周期で行えば、感情判定部233の処理負荷をより低減できる。
【0114】
(動作の具体例)
図13(A),13(B)は、第6の実施形態に係る動作例を示す。以下では、感情判定部233が第1感情推定部231の推定結果を更新する例について説明する。感情判定部233が第2感情推定部232の推定結果も以下の方法と同様の方法で更新する。
【0115】
図13(A)は、第1感情推定部231により算出された各感情のスコア(表情変化に基づくスコア)の時間変化の一例を示す。
図13(A)では、感情E1(表情変化に基づいて推定された感情)が太枠で示されている。
【0116】
図13(B)は、感情判定部233で使用される各感情のスコア(表情変化に基づくスコア)の時間変化の一例を示す。
図13(B)でも、感情E1(表情変化に基づいて推定された感情)が太枠で示されている。
【0117】
図13(A)に示すように、第1感情推定部231は、1フレームごとに、スコアを算出・更新する。一方で、
図13(B)に示すように、感情判定部233は、3フレームごとに、スコアを更新する。具体的には、感情判定部233は、フレーム0のスコアを、フレーム1,2のスコアとしても使用する。このため、感情判定部233は、フレーム1,2に関する処理を、フレーム1,2よりも前のタイミングで行うことができる。つまり、感情の判定結果をより早く得ることができる。フレーム3でスコアが更新され、フレーム3のスコアが、フレーム4,5のスコアとしても使用される。その後も、同様にスコアの更新が行われる。
【0118】
(まとめ)
以上述べたように、第6の実施形態でも、第1の実施形態と同様に、ユーザビリティの高いシンプルな構成で、高精度に感情を判定できるという効果を得ることができる。また、感情判定に使用する感情推定結果の更新頻度を減らすことで、感情判定の処理負荷を低減したり、感情判定の処理速度を高めたり(感情判定結果を得るまでの時間を短縮したり)できる。
【0119】
<その他>
上記実施形態は、本発明の構成例を例示的に説明するものに過ぎない。本発明は上記の具体的な形態には限定されることはなく、その技術的思想の範囲内で種々の変形が可能である。第1~第6の実施形態に係る処理を適宜組み合わせることも可能である。
【0120】
<付記1>
ユーザの顔画像から検出された当該ユーザの表情の変化に基づいて、当該ユーザの感情を推定する第1の推定手段(101,231)と、
前記ユーザから非接触で検出された当該ユーザの温度の変化に基づいて、当該ユーザの感情を推定する第2の推定手段(102,232)と、
前記第1の推定手段による推定結果と、前記第2の推定手段による推定結果とに基づいて、前記ユーザの感情を判定する判定手段(103,233)と
を有することを特徴とする感情判定装置(100,200)。
【0121】
<付記2>
ユーザの顔画像から検出された当該ユーザの表情の変化に基づいて、当該ユーザの感情を推定する第1の推定ステップ(S302,S502,S702,S902)と、
前記ユーザから非接触で検出された当該ユーザの温度の変化に基づいて、当該ユーザの感情を推定する第2の推定ステップ(S304,S504,S704,S904)と、
前記第1の推定ステップにおける推定結果と、前記第2の推定ステップにおける推定結果とに基づいて、前記ユーザの感情を判定する判定ステップ(S305~S310,S505~S513,S705~S713,S905~S913)と
を有することを特徴とする感情判定方法。
【符号の説明】
【0122】
100:感情判定装置
101:第1感情推定部 102:第2感情推定部 103:感情判定部
10:カメラ 20:温度測定装置 30:コミュニケーションロボット
200:PC(感情判定装置)
210:画像取得部 220:温度取得部 230:制御部
240:記憶部 250:出力部
231:第1感情推定部 232:第2感情推定部
233:感情判定部 234:推定結果変更部
241:第1感情推定辞書 242:第2感情推定辞書