(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-04-05
(45)【発行日】2023-04-13
(54)【発明の名称】対象人物の特徴的な身振りを推定するプログラム、装置及び方法
(51)【国際特許分類】
G06T 7/00 20170101AFI20230406BHJP
G10L 15/10 20060101ALI20230406BHJP
G06T 13/40 20110101ALI20230406BHJP
【FI】
G06T7/00 P
G10L15/10 500T
G06T13/40
(21)【出願番号】P 2020040481
(22)【出願日】2020-03-10
【審査請求日】2022-01-18
(73)【特許権者】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100135068
【氏名又は名称】早原 茂樹
(72)【発明者】
【氏名】田原 俊一
【審査官】伊知地 和之
(56)【参考文献】
【文献】特表2012-533134(JP,A)
【文献】特開2001-202379(JP,A)
【文献】特開2018-169494(JP,A)
【文献】特開2020-027548(JP,A)
【文献】国際公開第2019/204651(WO,A1)
【文献】服部裕介他,コミュニケーションキャラクタの感情的振る舞い生成,情報処理学会研究報告,日本,社団法人情報処理学会,2006年05月04日,第2006巻 第39号,pp.1-8
(58)【調査した分野】(Int.Cl.,DB名)
G06T 1/00
G06T 1/00
G06T 11/60 - 13/80
G06T 3/00 - 3/60
G06T 5/00 - 5/50
G06T 7/00 - 7/90
G06T 19/00 - 19/20
G06V 10/00 - 20/90
G06V 30/418
G06V 40/16
G06V 40/20
G10L 15/00 - 17/26
CSDB(日本国特許庁)
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
対象人物の特徴的な身振りを推定するようにコンピュータを機能させるプログラムであって、
対象人物が映り込む対象部分映像と、異なる非対象人物が映り込む複数の非対象部分映像とのそれぞれについて、時系列のフレーム毎に人物の複数の骨格点を抽出し、当該骨格点の時系列の座標変位を表す時系列骨格点座標を推定する姿勢推定手段と、
対象部分映像の時系列骨格点座標と複数の非対象部分映像の時系列骨格点座標の全てとを、所定条件に基づいて複数のクラスタに分類するクラスタリング手段と、
各クラスタに含まれる対象人物の時系列骨格点座標
の個数と非対象人物の時系列骨格点座標
の個数とを比較して、対象人物に特有に出現する特徴クラスタを推定する特徴クラスタ推定手段と、
特徴クラスタに含まれる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する身振り推定手段と
してコンピュータを機能させることを特徴とするプログラム。
【請求項2】
身振り推定手段は、特徴クラスタに含まれる全ての時系列骨格点座標の中で重心に最も近い時系列骨格点座標、又は、特徴クラスタに含まれる全ての時系列骨格点座標から算出された重心となる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する
ようにコンピュータを更に機能させることを特徴とする請求項1に記載のプログラム。
【請求項3】
姿勢推定手段の前段として、対象人物が映り込む対象映像について発話音声が含まれる対象部分映像を抽出すると共に、異なる非対象人物が映り込む複数の非対象映像それぞれについて発話音声が含まれる非対象部分映像とを抽出する部分映像抽出手段と
してコンピュータを更に機能させることを特徴とする請求項1又は2に記載のプログラム。
【請求項4】
対象人物のアバターを、ディスプレイに表示するアバター表示手段と
してコンピュータを更に機能させ、
アバター表示手段は、身振り推定手段によって推定された時系列骨格点座標を、当該アバターの骨格点位置に合わせて、当該アバターを時系列に動作させて表示する
ようにコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載のプログラム。
【請求項5】
対象部分映像の発話音声と複数の非対象部分映像の発話音声とのそれぞれを、発話テキストに変換する音声テキスト変換手段と、
対象部分映像の発話テキストと複数の非対象部分映像の群の発話テキストとのそれぞれについて、発話意図フラグを付与する発話意図推定手段と
してコンピュータを更に機能させ、
クラスタリング手段は、所定条件として発話意図フラグ毎のクラスタに分類し、
特徴クラスタ推定手段は、発話意図フラグ毎に、特徴クラスタを推定し、
身振り推定手段は、発話意図フラグ毎に、対象人物の特徴的な身振りを推定する
ようにコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載のプログラム。
【請求項6】
発話意図推定手段は、発話テキストと発話意図フラグとを対応付けて予め学習し、発話テキストを入力することによって発話意図フラグを推定するものであり、
発話意図フラグは、用例に基づくフラグ、又は、感情に基づくフラグである
ようにコンピュータを機能させることを特徴とする請求項5に記載のプログラム。
【請求項7】
対象人物と対話する対話制御手段と
して更に機能させ、
対話制御手段によってアバターが発話すべき発話テキストに対応する当該発話意図フラグに応じた特徴クラスタを用いて、対象人物の特徴的な身振りを決定する
ようにコンピュータを機能させることを特徴とする請求項5又は6に記載のプログラム。
【請求項8】
特徴クラスタ推定手段は、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、各クラスタについて、対象人物の時系列骨格点座標
の個数P1に対する非対象人物の時系列骨格点座標
の個数P2の評価値V(P1,P2)を算出し、当該評価値V(P1,P2)が所定閾値以上となる、又は、当該評価値V(P1,P2)が大きいものから順に所定数となる、任意のクラスタを抽出する
p11:任意のクラスタの中で、対象人物の時系列骨格点座標
の個数
p12:任意のクラスタの中で、非対象人物の時系列骨格点座標
の個数
p21:任意のクラスタ以外のクラスタについて、対象人物の時系列骨格点座標
の個数
p22:任意のクラスタ以外のクラスタについて、非対象人物の時系列骨格点座標
の個数
p11+p12+p21+p22=対象人物及び非対象人物全ての時系列骨格点座標
の個数
MLL_IM(P1,P2)=(p11+p12) log(p11+p12)
+(p11+p21) log(p11+p21)
+(p21+p22) log(p21+p22)
+(p12+p22) log(p12+p22)-2N log N
MLL_DM(P1,P2)=p11 log p11+p12 log p12+p21 log p21+p22 log p22-N log N
但し、N=p11+p12+p21+p22
AIC_IM(P1,P2)=-2 × MLL_IM(P1,P2) + 2×2
AIC_IM(P1,P2):対象人物の時系列骨格点座標の群と、非対象人物の時系列骨格点座標の群との組の従属AIC
AIC_DM(P1,P2)=-2 × MLL_DM(P1,P2) + 2×3
AIC_DM(P1,P2):対象人物の時系列骨格点座標の群と、非対象人物の時系列骨格点座標の群との組の独立AIC
V(P1,P2)=AIC_IM(P1,P2) - AIC_DM(P1,P2)
としてコンピュータを機能させることを特徴とする請求項1から7のいずれか1項に記載のプログラム。
【請求項9】
特徴クラスタ推定手段は、
評価値が高い複数の特徴クラスタを推定し、
複数の特徴クラスタから、ランダムに、又は、先に出力された特徴クラスタと異なる特徴クラスタ、を1つ選択して出力する
ようにコンピュータを機能させることを特徴とする請求項8に記載のプログラム。
【請求項10】
対象人物の特徴的な身振りを推定する推定装置であって、
対象人物が映り込む対象部分映像と、異なる非対象人物が映り込む複数の非対象部分映像とのそれぞれについて、時系列のフレーム毎に人物の複数の骨格点を抽出し、当該骨格点の時系列の座標変位を表す時系列骨格点座標を推定する姿勢推定手段と、
対象部分映像の時系列骨格点座標と複数の非対象部分映像の時系列骨格点座標の全てとを、所定条件に基づいて複数のクラスタに分類するクラスタリング手段と、
各クラスタに含まれる対象人物の時系列骨格点座標
の個数と非対象人物の時系列骨格点座標
の個数とを比較して、対象人物に特有に出現する特徴クラスタを推定する特徴クラスタ推定手段と、
特徴クラスタに含まれる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する身振り推定手段と
を有することを特徴とする推定装置。
【請求項11】
対象人物の特徴的な身振りを推定する装置の推定方法であって、
装置は、
対象人物が映り込む対象部分映像と、異なる非対象人物が映り込む複数の非対象部分映像とのそれぞれについて、時系列のフレーム毎に人物の複数の骨格点を抽出し、当該骨格点の時系列の座標変位を表す時系列骨格点座標を推定する第1のステップと、
対象部分映像の時系列骨格点座標と複数の非対象部分映像の時系列骨格点座標の全てとを、所定条件に基づいて複数のクラスタに分類する第2のステップと、
各クラスタに含まれる対象人物の時系列骨格点座標
の個数と非対象人物の時系列骨格点座標
の個数とを比較して、対象人物に特有に出現する特徴クラスタを推定する第3のステップと、
特徴クラスタに含まれる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する第4のステップと
を実行することを特徴とする推定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザと対話するエージェントの技術に関する。
【背景技術】
【0002】
スマートフォンやタブレットのような端末を用いて、ユーザに対して自然に対話するエージェントが広く普及している。エージェントとは、コンピュータグラフィックスによって表現されたアバター(キャラクタ)と、テキストや音声によって対話する対話機能とからなる。エージェントは、ユーザにとって対話相手として存在し、その時点の状況に応じた対話内容を進行させる。
エージェントは、ユーザプロファイルと同様に、個性(年齢、性別等)を持つ。趣味趣向や感情に応じて対話するエージェントに対して、ユーザは親近感を持つことができる。
【0003】
エージェントは、実在しない仮想キャラクタを想定したものであってもよいし、実在する他人を模したものであってもよい。他人を模したエージェントの場合、そのアバターは、その他人の姿を表現した画像となっていることが好ましい。ユーザは、そのようなアバターと対話することによって、更にその性格や人物らしさを感じることができる。
例えば寂しさを感じているシニア層ユーザに対して、エージェントは、対話を通じて活力を与えるであろう、と考えられる。ユーザは、想定する人物と対話した気分になれることで寂しさが解消されるであろう、と考えられる。
【0004】
従来、エージェントの発話に応じて、アバターの視覚表現(表情や身振りなど)を自動生成する技術がある(例えば非特許文献1参照)。この技術によれば、学習段階として、人間同士の「発話文」及び「視覚表現」を収録したマルチモーダルコーパスを教師データとして、視覚表現学習エンジンを学習させる。そして、運用段階として、実際の「発話文」を視覚表現学習エンジンに入力することによって、「視覚表現」が出力される。
【先行技術文献】
【特許文献】
【0005】
【非特許文献】
【0006】
【文献】石井亮ら、「発話言語に基づく身体モーションの自動生成」、マルチメディア、分散協調とモバイルシンポジウム 2018 論文集
【文献】Higashinaka, Ryuichiro, et al. "Towards an open-domain conversational system fully based on natural language processing." Proceedings of COLING 2014, the 25th International Conference on Computational Linguistics: Technical Papers. 2014.
【文献】Meguro, Toyomi, et al. "Learning to control listening-oriented dialogue using partially observable markov decision processes." ACM Transactions on Speech and Language Processing (TSLP) 10.4 (2013): 15.
【文献】Cao, Zhe, et al. "Realtime multi-person 2d pose estimation using part affinity fields." CVPR2017(2017)、[online]、[令和2年3月2日検索]、インターネット<URL:https://arxiv.org/abs/1611.08050>
【文献】OpenPose、[online]、[令和2年3月2日検索]、インターネット<URL:https://github.com/CMU-Perceptual-Computing-Lab/openpose>
【文献】「動画や写真からボーンが検出できる OpenPoseを試してみた」、[online]、[令和2年3月2日検索]、インターネット<URL:http://hackist.jp/?p=8285>
【文献】Live2D、[online]、[令和2年3月2日検索]、インターネット<URL:https://ja.wikipedia.org/wiki/Live2D>
【文献】音声合成ソフトウェアN2、[online]、[令和2年3月2日検索]、インターネット<URL:https://www.kddi-research.jp/products/n2/spec.html>
【発明の概要】
【発明が解決しようとする課題】
【0007】
非特許文献1に記載の技術によれば、汎用的な視覚表現しか生成できないため、アバターの視覚表現の表現能力が少ない。そのために、実在の人物を模したアバターであっても、その人物特有の特徴的な身振りをアバターに表現することができず、ユーザは、大きな違和感が持ってしまっていた。
【0008】
これに対し、本願の発明者は、対象人物の特徴的な身振りを推定すること自体が困難であったのではないか、と考えた。対象人物が映り込む映像から、その特徴的な身振りを推定することができれば、その身振りをアバターに反映させることができるのではないか、と考えた。
【0009】
そこで、本発明は、対象人物の特徴的な身振りを推定するプログラム、装置及び方法を提供することを目的とする。また、推定された特徴的な身振りをアバターに反映させることによって、エージェントと対話するユーザは、そのアバターの身振りから、その対象人物の性格や人物らしさを感じることができる。
【課題を解決するための手段】
【0010】
本発明によれば、対象人物の特徴的な身振りを推定するようにコンピュータを機能させるプログラムであって、
対象人物が映り込む対象部分映像と、異なる非対象人物が映り込む複数の非対象部分映像とのそれぞれについて、時系列のフレーム毎に人物の複数の骨格点を抽出し、当該骨格点の時系列の座標変位を表す時系列骨格点座標を推定する姿勢推定手段と、
対象部分映像の時系列骨格点座標と複数の非対象部分映像の時系列骨格点座標の全てとを、所定条件に基づいて複数のクラスタに分類するクラスタリング手段と、
各クラスタに含まれる対象人物の時系列骨格点座標の個数と非対象人物の時系列骨格点座標の個数とを比較して、対象人物に特有に出現する特徴クラスタを推定する特徴クラスタ推定手段と、
特徴クラスタに含まれる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する身振り推定手段と
してコンピュータを機能させることを特徴とする。
【0011】
本発明のプログラムにおける他の実施形態によれば、
身振り推定手段は、特徴クラスタに含まれる全ての時系列骨格点座標の中で重心に最も近い時系列骨格点座標、又は、特徴クラスタに含まれる全ての時系列骨格点座標から算出された重心となる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する
ようにコンピュータを更に機能させることも好ましい。
【0012】
本発明のプログラムにおける他の実施形態によれば、
姿勢推定手段の前段として、対象人物が映り込む対象映像について発話音声が含まれる対象部分映像を抽出すると共に、異なる非対象人物が映り込む複数の非対象映像それぞれについて発話音声が含まれる非対象部分映像とを抽出する部分映像抽出手段と
してコンピュータを更に機能させることも好ましい。
【0013】
本発明のプログラムにおける他の実施形態によれば、
対象人物のアバターを、ディスプレイに表示するアバター表示手段と
してコンピュータを更に機能させ、
アバター表示手段は、身振り推定手段によって推定された時系列骨格点座標を、当該アバターの骨格点位置に合わせて、当該アバターを時系列に動作させて表示する
ようにコンピュータを機能させることも好ましい。
【0014】
本発明のプログラムにおける他の実施形態によれば、
対象部分映像の発話音声と複数の非対象部分映像の発話音声とのそれぞれを、発話テキストに変換する音声テキスト変換手段と、
対象部分映像の発話テキストと複数の非対象部分映像の群の発話テキストとのそれぞれについて、発話意図フラグを付与する発話意図推定手段と
してコンピュータを更に機能させ、
クラスタリング手段は、所定条件として発話意図フラグ毎のクラスタに分類し、
特徴クラスタ推定手段は、発話意図フラグ毎に、特徴クラスタを推定し、
身振り推定手段は、発話意図フラグ毎に、対象人物の特徴的な身振りを推定する
ようにコンピュータを機能させることも好ましい。
【0015】
本発明のプログラムにおける他の実施形態によれば、
発話意図推定手段は、発話テキストと発話意図フラグとを対応付けて予め学習し、発話テキストを入力することによって発話意図フラグを推定するものであり、
発話意図フラグは、用例に基づくフラグ、又は、感情に基づくフラグである
ようにコンピュータを機能させることも好ましい。
【0016】
本発明のプログラムにおける他の実施形態によれば、
対象人物と対話する対話制御手段と
して更に機能させ、
対話制御手段によってアバターが発話すべき発話テキストに対応する当該発話意図フラグに応じた特徴クラスタを用いて、対象人物の特徴的な身振りを決定する
ようにコンピュータを機能させることも好ましい。
【0017】
本発明のプログラムにおける他の実施形態によれば、
特徴クラスタ推定手段は、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、各クラスタについて、対象人物の時系列骨格点座標の個数P1に対する非対象人物の時系列骨格点座標の個数P2の評価値V(P1,P2)を算出し、当該評価値V(P1,P2)が所定閾値以上となる、又は、当該評価値V(P1,P2)が大きいものから順に所定数となる、任意のクラスタを抽出する
p11:任意のクラスタの中で、対象人物の時系列骨格点座標の個数
p12:任意のクラスタの中で、非対象人物の時系列骨格点座標の個数
p21:任意のクラスタ以外のクラスタについて、対象人物の時系列骨格点座標の個数
p22:任意のクラスタ以外のクラスタについて、非対象人物の時系列骨格点座標の個数
p11+p12+p21+p22=対象人物及び非対象人物全ての時系列骨格点座標の個数
MLL_IM(P1,P2)=(p11+p12) log(p11+p12)
+(p11+p21) log(p11+p21)
+(p21+p22) log(p21+p22)
+(p12+p22) log(p12+p22)-2N log N
MLL_DM(P1,P2)=p11 log p11+p12 log p12+p21 log p21+p22 log p22-N log N
但し、N=p11+p12+p21+p22
AIC_IM(P1,P2)=-2 × MLL_IM(P1,P2) + 2×2
AIC_IM(P1,P2):対象人物の時系列骨格点座標の群と、非対象人物の時系列骨格点座標の群との組の従属AIC
AIC_DM(P1,P2)=-2 × MLL_DM(P1,P2) + 2×3
AIC_DM(P1,P2):対象人物の時系列骨格点座標の群と、非対象人物の時系列骨格点座標の群との組の独立AIC
V(P1,P2)=AIC_IM(P1,P2) - AIC_DM(P1,P2)
としてコンピュータを機能させることも好ましい。
【0018】
本発明のプログラムにおける他の実施形態によれば、
特徴クラスタ推定手段は、
評価値が高い複数の特徴クラスタを推定し、
複数の特徴クラスタから、ランダムに、又は、先に出力された特徴クラスタと異なる特徴クラスタ、を1つ選択して出力する
ようにコンピュータを機能させることも好ましい。
【0019】
本発明によれば、対象人物の特徴的な身振りを推定する推定装置であって、
対象人物が映り込む対象部分映像と、異なる非対象人物が映り込む複数の非対象部分映像とのそれぞれについて、時系列のフレーム毎に人物の複数の骨格点を抽出し、当該骨格点の時系列の座標変位を表す時系列骨格点座標を推定する姿勢推定手段と、
対象部分映像の時系列骨格点座標と複数の非対象部分映像の時系列骨格点座標の全てとを、所定条件に基づいて複数のクラスタに分類するクラスタリング手段と、
各クラスタに含まれる対象人物の時系列骨格点座標の個数と非対象人物の時系列骨格点座標の個数とを比較して、対象人物に特有に出現する特徴クラスタを推定する特徴クラスタ推定手段と、
特徴クラスタに含まれる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する身振り推定手段と
を有することを特徴とする。
【0020】
本発明によれば、対象人物の特徴的な身振りを推定する装置の推定方法であって、
装置は、
対象人物が映り込む対象部分映像と、異なる非対象人物が映り込む複数の非対象部分映像とのそれぞれについて、時系列のフレーム毎に人物の複数の骨格点を抽出し、当該骨格点の時系列の座標変位を表す時系列骨格点座標を推定する第1のステップと、
対象部分映像の時系列骨格点座標と複数の非対象部分映像の時系列骨格点座標の全てとを、所定条件に基づいて複数のクラスタに分類する第2のステップと、
各クラスタに含まれる対象人物の時系列骨格点座標の個数と非対象人物の時系列骨格点座標の個数とを比較して、対象人物に特有に出現する特徴クラスタを推定する第3のステップと、
特徴クラスタに含まれる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する第4のステップと
を実行することを特徴とする。
【発明の効果】
【0021】
本発明のプログラム、装置及び方法によれば、対象人物の特徴的な身振りを推定することができる。また、推定された特徴的な身振りをアバターに反映させることによって、エージェントと対話するユーザは、そのアバターの身振りから、その対象人物の性格や人物らしさを感じることができる。
【図面の簡単な説明】
【0022】
【
図1】ユーザとアバターとの間の対話システムの構成図である。
【
図2】本発明における対話装置の機能構成図である。
【
図3】本発明における部分映像抽出部の説明図である。
【
図5】本発明におけるクラスタリング部の説明図である。
【
図6】本発明における特徴クラスタ推定部の説明図である。
【
図7】本発明におけるアバターの身振りを表す説明図である。
【発明を実施するための形態】
【0023】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
【0024】
図1は、ユーザとアバターとの間の対話システムの構成図である。
【0025】
図1によれば、対話装置(推定装置)1は、ユーザ操作に基づく端末2とネットワークを介して通信し、ユーザに対するエージェントとして機能する。
端末2は、例えばスマートフォンやタブレットであって、マイク、スピーカ及びディスプレイを搭載する。端末2には、ユーザとの対話インタフェースとなるユーザプログラムが実装されており、対話装置1から受信したエージェントの「アバター」をディスプレイに表示する。また、端末2は、マイクによって収音したユーザの発話音声を音声認識によって発話テキストへ変換し、その発話テキストを対話装置1へ送信する。更に、端末2は、対話装置1から受信したエージェントの対話テキストをスピーカから発声する。
【0026】
図2は、本発明における対話装置の機能構成図である。
【0027】
対話装置1は、一般的な機能として、端末2からユーザ発話テキストを受信し、エージェント発話テキストを端末2へ返答する。対話装置1のエージェント機能は、ユーザとの間で、できる限り自然な対話を進行させる。
特に、本発明の対話装置1は、対象人物が映り込んでいる映像から、その対象人物に特徴的な身振りを推定することができる。また、対話装置1は、エージェントのアバターに、その対象人物に特徴的な身振りを反映させて動作させることができる。
【0028】
図2によれば、対話装置1は、非対象人物映像データベース10と、部分映像抽出部11、音声テキスト変換部12と、発話意図推定部13と、姿勢推定部14と、クラスタリング部15と、特徴クラスタ推定部16と、身振り推定部17と、対話制御部18と、アバター表示部19とを有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、装置の対話方法としても理解できる。
【0029】
最初に、対象人物が映り込んだ対象映像を用意する。対象映像には、対象人物における様々な発話音声も含まれている。
【0030】
[非対象人物映像データベース10]
非対象人物映像データベース10は、対象人物以外の多様な人物が映り込んだ非対象映像を蓄積したものである。また、非対象映像には、人物における様々な発話音声も含まれている。
【0031】
「対象映像」及び「非対象映像」のいずれも、例えばスマートフォンのカメラによって人物を撮影した映像であってもよい。また、具体的には、YouTube(登録商標)やSNS(Instagram(登録商標)、Twitter(登録商標)、facebook(登録商標))のようなインターネット上にアップされた映像コンテンツであってもよい。勿論、これらに限らず、宅内やオフィスに設置されたカメラ(宅内であれば見守りサービス用、オフィスであれば社員の健康状態監視用)で撮影された映像であってもよい。
【0032】
[部分映像抽出部11]
部分映像抽出部11は、対象人物が映り込んだ「対象映像」と、非対象人物映像データベース10に蓄積された複数の「非対象映像」とを入力し、以下のように対象部分映像と非対象部分映像とを抽出する。
(a)対象人物が映り込む対象映像について、「発話音声が含まれる対象部分映像」を抽出する。
(b)異なる非対象人物が映り込む複数の非対象映像それぞれについて、「発話音声が含まれる非対象部分映像」を抽出する。
本発明によれば、抽出された部分映像のみが、姿勢推定部14へ出力される。
尚、オプション的に、抽出された部分映像は、音声テキスト変換部12へ出力されるものであってもよい。
【0033】
図3は、本発明における部分映像抽出部の説明図である。
【0034】
例えば、入力した映像(対象人物又は非対象人物が映り込んだ対象映像又は非対象映像)の中で、発話音声の部分を検出し、その発話音声を含む部分映像を抽出する。
(他者) 「おはようー!」
(対象人物/非対象人物)「おはよう~」
(他者) 「どこに行くの?」
(対象人物/非対象人物)「公園に行くよ」
この場合、以下の2箇所の部分映像が抽出される。
対象人物/非対象人物が映り込んでおり、「おはよう~」と発話した部分映像
対象人物/非対象人物が映り込んでおり、「公園に行くよ」と発話した部分映像
【0035】
[音声テキスト変換部12]
音声テキスト変換部12は、「対象部分映像の発話音声」と「複数の非対象部分映像の発話音声」とのそれぞれを、発話テキストに変換する。具体的には、Google(登録商標)が提供しているCloud Speech-to-Text(登録商標)や、Microsoft(登録商標)が提供しているSpeech to Text(登録商標)がある。
図3によれば、映像に映り込む人物が発話した「おはよう~」「公園に行くよ」が抽出されている。
変換された発話テキストは、発話意図推定部13へ出力される。
【0036】
[発話意図推定部13]
発話意図推定部13は、「対象部分映像の発話テキスト」と「複数の非対象部分映像の群の発話テキスト」とのそれぞれについて、「発話意図フラグ」を付与する。尚、発話意図フラグは、オプション的であってもよい。
推定された発話意図フラグは、姿勢推定部14へ出力される。
【0037】
発話意図推定部13は、非特許文献2に開示されたSVM(Support Vector Machine)を用いて、発話テキストと発話意図フラグとを対応付けて予め学習させたものであってもよい。推定段階では、発話テキストをSVMへ入力することによって、発話意図フラグを推定することができる。
【0038】
発話意図フラグは、「用例に基づくフラグ」又は「感情に基づくフラグ」であってもよい。
用例に基づくフラグであれば、例えば「挨拶」「意見」「質問」のようなものを想定できる。また、感情に基づくフラグであれば、例えば「喜び」「悲しみ」「怒り」のようなものであってもよいし、簡単には「Positive」「Negative」「Neutral」のようなものであってもよい。
【0039】
図3によれば、発話意図フラグは、具体的には、非特許文献3に開示された33種類の意図(挨拶、相槌、感謝、質問など)を対象とする。発話意図推定部13が機械学習エンジンである場合、発話テキスト毎に予め発話意図フラグを対応付けた教師データを用意する必要がある。
(発話テキスト) (発話意図フラグ)
「おはよう~」 挨拶
「どこに~?」 質問
「こんにちは」 挨拶
「ひどいね」 意見
「なぜ」 質問
「~に行くよ」 意見
【0040】
[姿勢推定部14]
姿勢推定部14は、対象人物が映り込む「対象部分映像」と、異なる非対象人物が映り込む「複数の非対象部分映像」とのそれぞれについて、時系列のフレーム毎に人物の複数の骨格点を抽出し、当該骨格点の時系列の座標変位を表す「時系列骨格点座標(スケルトン座標)」を推定する。
推定された時系列骨格点座標は、クラスタリング部15へ出力される。
【0041】
【0042】
映像は、時系列の複数のフレームから構成される。そして、各フレームについて、映り込む人物の骨格を捉える。
具体的には、特許文献1に開示された技術を用いて、骨格点の座標を推定することができる。この技術によれば、骨格点は、関節における2次元座標に基づくものである。例えばOpenPose(登録商標)のようなスケルトンモデルを用いて、人の関節の特徴点を抽出する(例えば非特許文献4、5及び6参照)。OpenPoseとは、画像から複数の人間の体/手/顔のキーポイントをリアルタイムに検出可能なソフトウェアであって、GitHubによって公開されている。撮影映像に映る人の身体全体であれば、例えば15点のキーポイントを検出できる。
【0043】
図4によれば、映像データに1人の人物が映り込んでいる。各関節(Nose, Neck, RShoulder, RElbow,・・・)に対して、信頼度(0~1)が算出される。スケルトン情報とは、18個の各関節の2次元座標点(x,y)とその信頼度とを、各フレームで結び付けた情報をいう。
また、
図4によれば、骨格点毎に、その座標を時系列に並べた「時系列骨格点座
標(スケルトン座標)」として表している。
【0044】
尚、
図4によれば、骨格点同士を線で結び、その距離を算出し、各骨格点座標を正規化する。正規化した後、映像における全フレームの時系列骨格点座標を取得する。ここでは、人物が小さく映り込んだものもあれば、大きく映り込んだものもあるために、正規化している。
【0045】
[クラスタリング部15]
クラスタリング部15は、「対象部分映像の時系列骨格点座標」と「複数の非対象部分映像の時系列骨格点座標の全て」とを、所定条件に基づいて複数のクラスタに分類する。時系列骨格点座標をベクトルとして、類似度に応じてクラスタに分類することができる。
所定条件としては、オプション的には、発話意図フラグ毎のクラスタに分類するものであってもよい。
【0046】
図5は、本発明におけるクラスタリング部の説明図である。
【0047】
図5(a)によれば、全ての時系列骨格点座標を、例えばk-meansを用いてクラスタに分類したものである。ここでは、人物の発話中における身振りが類似したもの同士が、同じクラスタに含まれている。この場合、例えば最も小さいクラスタに属する時系列骨格点座標に基づく身振りの集合は、極めて特徴的なものであって、他人があまりしないような挙動の集合となる。
図5(a)によれば、各クラスタの中に、対象人物の身振りとなる特徴クラスタも内在する。
【0048】
図5(b)によれば、全ての時系列骨格点座標を、発話意図フラグ毎に、クラスタに分類したものである。各発話意図フラグのクラスタ毎に、対象人物の身振りの時系列骨格点座標の群となる特徴クラスタも含まれる。例えば発話意図フラグ「挨拶」のクラスタの中に、対象人物の身振りとなる特徴クラスタも内在する。
図5(b)によれば、対象人物の3つの身振りは、発話意図フラグ毎に、不特定多数の非対象人物の身振りに応じた複数のクラスタに分散されて存在する。
【0049】
[特徴クラスタ推定部16]
特徴クラスタ推定部16は、各クラスタに含まれる「対象人物の時系列骨格点座標の数」と「非対象人物の時系列骨格点座標の数」とを比較して、対象人物に特有に出現する特徴クラスタを推定する。
ここで、特徴クラスタ推定部16は、発話意図フラグ毎に、特徴クラスタを推定するものであってもよい。即ち、対象人物に高頻度に偏って出現するクラスタを算出し、発話意図フラグ毎に算出度合いの大きいクラスタを決定する。
【0050】
図6は、本発明における特徴クラスタ推定部の説明図である。
【0051】
特徴クラスタ推定部16は、赤池情報量規準(AIC:Akaike's Information Criterion)を用いて、各クラスタについて、対象人物の時系列骨格点座標の数P1に対する非対象人物の時系列骨格点座標の数P2の評価値V(P1,P2)を算出し、当該評価値V(P1,P2)が所定閾値以上となる、又は、当該評価値V(P1,P2)が大きいものから順に所定数となる、任意のクラスタを抽出する。
p11:任意のクラスタの中で、対象人物の時系列骨格点座標の数
p12:任意のクラスタの中で、非対象人物の時系列骨格点座標の数
p21:任意のクラスタ以外のクラスタについて、対象人物の時系列骨格点座標の数
p22:任意のクラスタ以外のクラスタについて、非対象人物の時系列骨格点座標の数
p11+p12+p21+p22=対象人物及び非対象人物全ての時系列骨格点座標の数
MLL_IM(P1,P2)=(p11+p12) log(p11+p12)
+(p11+p21) log(p11+p21)
+(p21+p22) log(p21+p22)
+(p12+p22) log(p12+p22)-2N log N
MLL_DM(P1,P2)=p11 log p11+p12 log p12+p21 log p21+p22 log p22-N log N
但し、N=p11+p12+p21+p22
AIC_IM(P1,P2)=-2 × MLL_IM(P1,P2) + 2×2
AIC_IM(P1,P2):対象人物の時系列骨格点座標の群と、非対象人物の時系列骨格点座標の群との組の従属AIC
AIC_DM(P1,P2)=-2 × MLL_DM(P1,P2) + 2×3
AIC_DM(P1,P2):対象人物の時系列骨格点座標の群と、非対象人物の時系列骨格点座標の群との組の独立AIC
V(P1,P2)=AIC_IM(P1,P2) - AIC_DM(P1,P2)
【0052】
そして、評価値に基づいて抽出された対象人物の身振りにおける特徴クラスタは、身振り推定部17へ出力する。
【0053】
ここで、前述した実施形態によれば、アバターの発話行為に対して毎回同じような身振りとなる場合があり、ユーザが飽きてしまう可能性がある。
そこで、他の実施形態として、特徴クラスタ推定部16は、複数の特徴クラスタを推定した後、いずれか1つの特徴クラスタを出力するものであってもよい。例えば以下のステップを実行する。
(S1)評価値が高い複数(例えば上位3個)の特徴クラスタを推定する。
(S2)S1の複数の特徴クラスタから、ランダムに、又は、先に出力された特徴クラスタと異なる特徴クラスタ、を1つ選択して出力する。
これによって、アバターの発話行為に対して適宜異なる身振りとなり、ユーザに対して新たな個性を見せることができる。
【0054】
[身振り推定部17]
身振り推定部17は、特徴クラスタに含まれる(対象人物の)時系列骨格点座標を、対象人物の特徴的な身振りとして推定する。
【0055】
身振り推定部17は、特徴クラスタに含まれる全ての時系列骨格点座標の中で重心に最も近い時系列骨格点座標、又は、特徴クラスタに含まれる全ての時系列骨格点座標から算出された重心となる時系列骨格点座標を、対象人物の特徴的な身振りとして推定する
また、身振り推定部17は、発話意図フラグ毎に、対象人物の特徴的な身振りを推定するものであってもよい。
【0056】
また、身振り推定部17は、対話制御部18によってアバターが発話するキーワードの発話意図に対応する発話意図フラグに応じた特徴クラスタの中で、対象人物の特徴的な身振りを決定するものであってもよい。
【0057】
[対話制御部18]
対話制御部18は、例えばスマートフォンやタブレットのような端末2に予めインストールされたアプリケーションと通信する。例えば最初に、ユーザが対話を所望する「対象人物の名前」を発話した際に、対話制御部18は、アバター表示部19へ、その対象人物のアバターを表示するように指示する。
【0058】
対話制御部18は、ユーザと音声によって対話するものであり、以下のように動作する。
(S1)対話時に、端末2のマイクによって収音されたユーザの発話音声を受信する。
(S2)次に、ユーザの発話音声を、音声認識によって発話テキストに変換する。勿論、音声認識は、端末2によって実行されるものであってもよい。
(S3)次に、対話シナリオを用いて、発話テキストに応じた対話テキストを生成する。
(S4)次に、対話テキストを音声合成し、その対話音声を生成する(例えば非特許文献8参照)。勿論、音声合成は、端末2によって実行されるものであってもよい。
(S5)対話音声を、端末2へ送信する。端末2は、対話音声をスピーカによってユーザへ出力する。
尚、S1及びS2について、ユーザが入力フォームにキー入力した発話テキストを端末2から受信し、S4及びS5について、端末2のディスプレイにアバターの吹き出しとして表示する対話テキストを送信するものであってもよい。
【0059】
[アバター表示部19]
アバター表示部19は、「対象人物のアバター」(画像)を端末2へ送信し、端末2のディスプレイに表示する。
ここで、アバター表示部19は、身振り推定部17によって推定された時系列骨格点座標を、当該アバターの骨格点位置に合わせて、当該アバターを時系列に動作させて表示する(例えば非特許文献7参照)。
対話制御部18によってアバターが発話すべき発話テキストに対応する当該発話意図フラグに応じた特徴クラスタを用いて、対象人物の特徴的な身振りを決定する。これによって、端末2のスピーカからユーザへ対話テキストが発話されると共に、その端末2のディスプレイに表示されるアバターが、その対象人物の特徴的な身振りで動作するようになる。
【0060】
図7は、本発明におけるアバターの身振りを表す説明図である。
【0061】
図7によれば、ユーザaは、端末2のディスプレイに表示されたアバターと対話している。アバターは、ユーザbを模したものであるとする。
ここで、ユーザbは、[挨拶]時に、腕を組む癖があるとする。また、挨拶時に腕を組む動作は、第三者はあまりしない特徴的な身振りであるとする。
このような場合、本発明によれば、アバターが「おはよう~」と挨拶をする際に、アバターは腕を組むように動作する。このようなアバターと対話しているユーザaは、あたかもユーザbと対話しているかのような感覚を持つことができる。
【0062】
以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、対象人物の特徴的な身振りを推定することができる。また、推定された特徴的な身振りをアバターに反映させることによって、エージェントと対話するユーザは、そのアバターの身振りから、その対象人物の性格や人物らしさを感じることができる。
【0063】
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
【符号の説明】
【0064】
1 対話装置、推定装置
10 非対象人物映像データベース
11 部分映像抽出部
12 音声テキスト変換部
13 発話意図推定部
14 姿勢推定部
15 クラスタリング部
16 特徴クラスタ推定部
17 身振り推定部
18 対話制御部
19 アバター表示部
2 端末