以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
1.本開示の実施の形態
1.1.概要
1.2.構成例
1.3.動作例
2.まとめ
<1.本開示の実施の形態>
[1.1.概要]
本開示の実施の形態について詳細に説明する前に、本開示の実施の形態の概要を説明する。
上述したように、文字や音声を認識し、その文字や音声を他の言語に翻訳する技術の開発が進んでいる。そして、そのような翻訳の技術を様々な分野に適用するための技術の開発も進んでいる。例えば、上記特許文献1には、透明なディスプレイを備えるサイネージ端末に対して翻訳技術を適用して、人間同士がコミュニケーションを取りやすくするための技術の例が開示されている。
例えば、街中に置かれているサイネージ端末や、遠隔地同士を結ぶテレビ電話などを介して、人間同士が正対してコミュニケーション、特に、会話及び翻訳結果の提示を行う状況を考える。このようにサイネージ端末を介して人間同士が正対してコミュニケーションをとる場合、以下に示すような点を考慮する必要がある。
(1)発話開始時
発話者の口と、サイネージ端末に設けられるマイクとの距離が遠いと、サイネージ端末は音声認識を失敗する可能性が高くなる。また、サイネージ端末は、音声認識処理を常時起動させておくと、音声認識の対象となる区間を特定しにくくなるため、音声認識を失敗する可能性が高くなる。さらに、ディスプレイサイズが大きいサイネージ端末において、マイクの位置を全ての人に向けて最適化することは現実的では無く、誰かによっては、発話時に体の移動が大きくなる位置にマイクを配置せざるを得ない。
つまり、発話者は口をマイクに近付ける必要があるが、発話者が体をマイクに近付けたり、口をマイクに近付けたりすることで発話者の姿勢が崩れ、対話相手は違和感を覚えやすくなる。また、音声認識を起動させるためのユーザインターフェースをディスプレイに表示させる場合、発話者がユーザインターフェースを探すために視線を移動させたり、ユーザインターフェースを操作したりする必要が生じる。これにより、正対して会話をしたいのに発話者が対話者の顔とは違う方向を見ることとなり、そもそもこれらの行動は本来会話には不要な行動なので、対話として不自然な状況となる。
ディスプレイの全面がマイクになる等の技術を開発することで、発話者が発話時に不自然な場所を見ることに起因する不自然な対話を回避することは出来るかもしれない。しかし、人によって口の位置が異なるために、特定のマイクの感度だけを高めて音声認識の成功率を高めるのは難しく、またマイクが多くなればなるほど周囲の雑音などが拾われやすくなるため、かえって音声認識を失敗する可能性が高くなってしまう。ビームフォーミング技術によって特定の方向のマイク感度だけを上げることも可能ではあるが、この場合でも周囲の雑音などの影響を受けやすくなり、音声認識を失敗する可能性が高くなってしまう。
(2)発話者が発話中における発話側の考慮点
サイネージ端末を介して、人間同士が正対して、発話内容を翻訳しながらコミュニケーションする場合、発話における風習や慣習の違い、使用言語の違いなどにより、発話側の発話内容を理解できない聞き手側は、受け取った音声と、その音声の翻訳結果とが一致しているかどうかを理解することが非常に困難である。発話者が単に独り言を呟いただけかもしれないし、考え込んで間が空いた状態で変な認識や翻訳が行われただけかもしれないが、聞き手側はそのことを完全に把握することは困難である。そして、発話者の発話が止まると聞き手側が話し始める場合もありうるが、その行動が発話者の意図に沿わないことも考えられ、お互いにとって期待されたコミュニケーションとならないおそれがある。
しかし、サイネージ端末が翻訳処理中であることを発話側が聞き手側に伝え続けるのは手間が多い。また人間は不要な言葉を発話しやすいので、発話した言葉が翻訳すべきものなのかをサイネージ端末が区別するのも非常ニコン案である。そもそも、サイネージ端末が翻訳処理中であることを発話側が聞き手側に伝えられたとしても、そのこと自体はコミュニケーションには不要であり、そもそも会話としては不自然である。
発話者は、発話する内容に困りつつも、考えながら話したり、質問したい内容を思い出しながら話したりする状況も多い。従って、発話していない場合でも、聞き手側から会話を遮って欲しくないことが多い。しかし、そこまでの意図を発話者が発話等で自然に聞き手側に伝えることは難しく、特に翻訳が発生する状況であれば尚更である。その結果、発話者の発話を遮って聞き手側が話し始めてしまう可能性がある。
すなわち、サイネージ端末を介した、翻訳を要するコミュニケーションにおいて、余計な言葉を翻訳せず、必要な部分だけを翻訳し、サイネージ端末が翻訳処理中であることを聞き手側に簡単に伝えることで、会話を自然な状態に保つことが強く求められる。
(3)発話者が発話中における聞き手側の考慮点
サイネージ端末を介した、翻訳を要するコミュニケーションにおいて、サイネージ端末が次々に発話者の発話内容を翻訳し続け、翻訳結果を多量に提示すると、翻訳結果の受け手は処理ができなくなり、コミュニケーションが破綻する。
一方、発話側は自分の発話量を把握し続けることは難しく、発話に夢中になると、気が付かない内に情報量が大きく膨れあがってしまう。聞き手側に提示される情報量は翻訳されているため、その翻訳後の情報量の大小を発話側が把握することは困難であるとともに、聞き手側が発話量の多さを感じていることを把握することも困難である。聞き手側としては、発話側に適切な量で発話を止めて欲しいので、聞き手側は、言語の壁によらずにそのことを発話側に伝えることが求められる。
また、発話側の発話量や、翻訳後の情報量が大きく膨れあがった際に、聞き手側は、発話者に対して発話を止めさせる必要がある。しかし、聞き手側が情報量の多さを感じていることを発話者に通知すると、コミュニケーションが不自然となり、そもそも通知自体をためらいがちになる。さらに発話者がマイクに口を近付けていると正対している状態が崩れるため、受け手側が積極的にマイクに近づきづらい。
そこで本件開示者は、上述した点に鑑みて、サイネージ端末等を介して、人間同士が正対してコミュニケーション、特に、会話及び翻訳結果の提示を行う状況において、自然なコミュニケーションを可能にするための技術について鋭意検討を行った。その結果、本件開示者は、サイネージ端末等を介して、人間同士が正対してコミュニケーションを行う際に、発話者や対話者の状況を検出することで自然なコミュニケーションを可能にするための技術を考案するに至った。
以上、本開示の実施の形態の概要について説明した。続いて、本開示の実施の形態についてより詳細に説明する。
[1.2.構成例]
図1は、本開示の実施の形態に係る、サイネージ端末100を用いたコミュニケーションシステムについて示す説明図である。
サイネージ端末100は、街中、例えば駅、デパート、ショッピングモール、スタジアムなどの人が多く集まる場所に設置される、大型のディスプレイを備えた情報表示端末である。本実施形態に係るサイネージ端末100は、正対して人間同士のコミュニケーションを行える機能を有しており、特に、人間の発話内容を解析し、翻訳して、対話相手に伝える機能を有する。本実施形態では、2人の人間(ユーザu1、u2)が、サイネージ端末100を挟んで対話しているケースを前提として説明する。
(コミュニケーションシステム1)
図2は、本開示の実施の形態に係る、サイネージ端末100を用いたコミュニケーションシステム1の全体構成例を示す説明図である。以下、図2を用いて、本開示の実施の形態に係るコミュニケーションシステム1の全体構成例について説明する。
図2に示したように、本開示の実施の形態に係るコミュニケーションシステム1は、サイネージ端末100と、情報処理装置200と、音声情報処理装置300と、翻訳処理装置400と、を含んで構成される。
サイネージ端末100は、人間同士のコミュニケーションを手助けする機能を有する情報表示端末である。本実施形態では、サイネージ端末100は、一方の面に、カメラ101、マイク102a〜102h、ディスプレイ103を備える。カメラ101は、サイネージ端末100を利用する人間の姿を撮像する。マイク102a〜102hは、サイネージ端末100を利用する人間の発話内容を集音する。本実施形態では、マイク102a〜102dが一方の辺に設けられ、マイク102e〜102hが反対の辺に設けられているが、マイクの数及び配置は係る例に限定されるものでは無い。以下の説明では、マイク102a〜102hと単にマイク102と総称する場合がある。
なお、マイク102a〜102hは、全てが集音可能状態となっている必要は無く、ユーザu1、u2の顔の位置に応じて少なくとも一つだけが集音可能な状態となっていてもよい。集音可能な状態とするマイク102の選択方法については後に詳述する。
ディスプレイ103は、種々の情報を表示する表示デバイスであり、液晶ディスプレイ、有機ELディスプレイなどで構成される。ディスプレイ103は透明であっても良く非透明であってもよい。本実施形態では、ディスプレイ103は、ユーザu1、u2の発話内容を翻訳したものを表示したり、ユーザu1、u2の発話状況を相手に伝えるための情報を表示したりする。
図3は、サイネージ端末100を上方向から見た場合の例を示す説明図である。このように、サイネージ端末100は、一方の面に、カメラ101、マイク102a〜102h、ディスプレイ103を備え、その面の反対側の面に、カメラ101’、マイク102a’〜102h’、ディスプレイ103’を備える。
情報処理装置200は、主に、サイネージ端末100に表示させる情報の表示に関する処理を実行する装置である。情報処理装置200は、サイネージ端末100との間で何らかの通信路により接続されている。通信路は有線であっても良く、無線であっても良い。またサイネージ端末100と情報処理装置200との間の通信における通信プロトコルは問わない。
音声情報処理装置300は、主に、サイネージ端末100のマイク102a〜102hで集音された音声に対する処理を実行する装置である。音声情報処理装置300は、情報処理装置200との間で何らかの通信路により接続されている。通信路は有線であっても良く、無線であっても良い。また情報処理装置200と音声情報処理装置300との間の通信における通信プロトコルは問わない。
翻訳処理装置400は、主に、翻訳に関する処理を実行する装置であり、特に、ユーザu1、u2によって発話され、音声情報処理装置300によって認識された内容に対する翻訳処理を実行する装置である。翻訳処理装置400は、音声情報処理装置300との間で何らかの通信路により接続されている。通信路は有線であっても良く、無線であっても良い。音声情報処理装置300と翻訳処理装置400との間の通信における通信プロトコルは問わない。
なお、図2に示した例では、サイネージ端末100が情報処理装置200、音声情報処理装置300および翻訳処理装置400とネットワークで接続されている構成を示したが、本開示は係る例に限定されるものでは無い。情報処理装置200、音声情報処理装置300および翻訳処理装置400に設けられる機能の少なくとも一部がサイネージ端末100に設けられていてもよく、逆にサイネージ端末100に設けられる機能の一部が情報処理装置200、音声情報処理装置300または翻訳処理装置400に設けられても良い。また図2には、情報処理装置200、音声情報処理装置300および翻訳処理装置400の3つの装置を示したが、本開示は係る例に限定されるものでは無く、いずれかの装置に設けられる機能の少なくとも一部が別の装置に設けられても良い。
以上、図2を用いて、本開示の実施の形態に係るコミュニケーションシステム1の全体構成例について説明した。続いて、本開示の実施の形態に係るサイネージ端末100の機能構成例について説明する。
(サイネージ端末100)
図4は、本開示の実施の形態に係るサイネージ端末100の機能構成例を示す説明図である。以下、図4を用いて本開示の実施の形態に係るサイネージ端末100の機能構成例について説明する。
図4に示したように、本開示の実施の形態に係るサイネージ端末100は、カメラ101、マイク102、ディスプレイ103、通信部104、及び制御部105を含んで構成される。
カメラ101は、上述したように、サイネージ端末100を利用する人間の姿を動画像で撮像する。カメラ101が撮像する動画像は制御部105に送られたり、また通信部104を介して情報処理装置200に送られたりする。
マイク102は、上述したように、サイネージ端末100を利用する人間が発話する声を集音する。マイク102が集音した音は、制御部105に送られたり、また通信部104を介して音声情報処理装置300に送られたりする。
ディスプレイ103は、上述したように、種々の情報を表示する表示デバイスであり、液晶ディスプレイ、有機ELディスプレイなどで構成される。ディスプレイ103は透明であっても良く非透明であってもよい。本実施形態では、ディスプレイ103は、ユーザu1、u2の発話内容を翻訳したものを表示したり、ユーザu1、u2の発話状況を相手に伝えるための情報を表示したりする。ディスプレイ103への情報の表示は、例えば後述の制御部105や、情報処理装置200によって制御される。
通信部104は、他の装置との間の情報を授受するための通信インターフェースである。通信部104は、他の装置との間で有線通信を行っても良く、無線通信であっても良い。また通信部104は、他の装置との間の通信における通信プロトコルに任意のものを適用することができる。
制御部105は、例えばCPU(Central Processing Unit)等のプロセッサや、ROM、RAMなどで構成され、サイネージ端末100の各部の動作を制御する。
本実施形態では、制御部105は、表示制御部106と、集音制御部107と、検出部108と、を含んで構成される。
表示制御部106は、ディスプレイ103への情報の表示を制御する。表示制御部106によってディスプレイ103へ表示される情報の例は後に詳述する。
集音制御部107は、複数のマイク102に対して、集音機構のオン、オフを切り替える制御を行う。集音制御部107は、後述する高感度マイク位置取得フローによって高感度マイク位置として決定されたマイク102のみ、集音機構をオンさせる処理を行う。集音制御部107は、例えば、カメラ101で撮像された人間の顔の位置に基づいて、集音機構をオン、またはオフさせるマイク102を選択する。集音制御部107による、マイク102に対する集音機構のオン、オフの切り替えの具体例は後に詳述する。
検出部108は、カメラ101が撮像した画像を用いて様々な検出処理を行う。本実施形態では、検出部108が行う検出処理として、人物の検出、顔の検出、顔のパーツの検出、耳の位置の推定、動き量の検出、集音制御部107が集音機構をオンさせたマイク102への口の近接の判断、ユーザの視線検出、ユーザの相槌やうなずきの検出、ユーザの掌の検出、等がある。検出部108によって検出される情報は、後述の様々な処理、例えば、初期処理フロー、耳位置推定フロー、高感度マイク位置取得フロー、翻訳モード処理フロー、球オブジェクトアニメーション処理フロー、翻訳モード継続判断処理フロー、処理量あふれ判断処理フローなどに用いられうる。
以上、図4を用いて本開示の実施の形態に係るサイネージ端末100の機能構成例について説明した。続いて、本開示の実施の形態に係る情報処理装置200の機能構成例について説明する。
(情報処理装置200)
図5は、本開示の実施の形態に係る情報処理装置200の機能構成例を示す説明図である。以下、図5を用いて本開示の実施の形態に係る情報処理装置200の機能構成例について説明する。
図5に示したように、本開示の実施の形態に係る情報処理装置200は、通信部210と。制御部220と、を含んで構成される。
通信部210は、他の装置との間の情報を授受するための通信インターフェースである。通信部210は、他の装置との間で有線通信を行っても良く、無線通信であっても良い。また通信部210は、他の装置との間の通信における通信プロトコルに任意のものを適用することができる。
制御部220は、例えばCPU等のプロセッサや、ROM、RAMなどで構成され、情報処理装置200の各部の動作を制御する。制御部220は、後述するコミュニケーションシステム1の処理フロー、例えば、初期処理フロー、耳位置推定フロー、高感度マイク位置取得フロー、翻訳モード処理フロー、球オブジェクトアニメーション処理フロー、翻訳モード継続判断処理フロー、処理量あふれ判断処理フローなどを実行する。
本実施形態では、制御部220は、表示制御部221と、画像生成部222と、判断部223と、を含んで構成される。
表示制御部221は、サイネージ端末100のディスプレイ103への情報の表示を制御する。表示制御部221は、例えば、サイネージ端末100を使用している人物が写っている画像に対する画像処理を行う。表示制御部221によって行われうる画像処理の内容については後に詳述する。
画像生成部222は、例えば表示制御部221によって行われうる画像処理の結果に応じて、ディスプレイ103へ表示する画像を生成する。画像生成部222によって行われうる画像生成処理の内容については後に詳述する。
判断部223は、コミュニケーションシステム1において行われるコミュニケーションに関する処理、具体的には、後述するコミュニケーションシステム1の処理フローにおける様々な判断処理を実行する。判断部223によって行われうる判断処理の内容については後に詳述するが、一例を挙げれば、例えば、発話者が発話を一時的に止めた場合に、翻訳処理を継続すべきか否かの判断や、発話内容または翻訳結果を受け取っている受け手が発話量の多さを感じているか否かの判断などを行いうる。
判断部223は、例えば、発話者による発話内容が、発話内容に対する翻訳処理を継続すべきかどうかを判断するレベルとなった場合に、発話者の発話内容及び発話状況に基づいて、翻訳処理の継続判断を行う。判断部223が翻訳処理の継続判断を行った結果、翻訳処理を継続すべきであると判断した場合は、情報処理装置200は、翻訳処理装置400に翻訳処理を継続させ、翻訳処理を終了すべきであると判断した場合は、翻訳処理装置400に翻訳処理を終了させる。
以上、図5を用いて本開示の実施の形態に係る情報処理装置200の機能構成例について説明した。続いて、本開示の実施の形態に係る音声情報処理装置300の機能構成例について説明する。
(音声情報処理装置300)
図6は、本開示の実施の形態に係る音声情報処理装置300の機能構成例を示す説明図である。以下、図6を用いて本開示の実施の形態に係る音声情報処理装置300の機能構成例について説明する。
図6に示したように、本開示の実施の形態に係る音声情報処理装置300は、通信部310と。制御部320と、を含んで構成される。
通信部310は、他の装置との間の情報を授受するための通信インターフェースである。通信部310は、他の装置との間で有線通信を行っても良く、無線通信であっても良い。また通信部310は、他の装置との間の通信における通信プロトコルに任意のものを適用することができる。
制御部320は、例えばCPU等のプロセッサや、ROM、RAMなどで構成され、音声情報処理装置300の各部の動作を制御する。
本実施形態では、制御部320は、検出部321と、解析部322と、生成部323と、を含んで構成される。
検出部321は、サイネージ端末100に向かって発せられた人間の声を検出する。検出部321が検出した声は解析部322において解析が行われる。検出部321は、人間の声を検出する際に、発話の内容を検出する他、言い淀みの検出、所定の言葉(フィラーワード)の検出、発話のトーンの検出、無音区間の検出などを行いうる。
解析部322は、検出部321によって検出された人間の声に対して様々な解析処理を実行する。解析部322が実行する解析処理としては、例えば、音声情報の解析、言語の解析、発話内容に含まれる形態素や句の解析などが行われうる。
生成部323は、解析部322による解析結果に基づいて、サイネージ端末100に向かって発せられた内容をテキストにしたものを生成する。生成部323が生成したテキストは、翻訳処理装置400での翻訳処理に用いられる。
以上、図6を用いて本開示の実施の形態に係る音声情報処理装置300の機能構成例について説明した。続いて、本開示の実施の形態に係る翻訳処理装置400の機能構成例について説明する。
(翻訳処理装置400)
図7は、本開示の実施の形態に係る翻訳処理装置400の機能構成例を示す説明図である。以下、図7を用いて本開示の実施の形態に係る翻訳処理装置400の機能構成例について説明する。
図7に示したように、本開示の実施の形態に係る翻訳処理装置400は、通信部410と。制御部420と、を含んで構成される。
通信部410は、他の装置との間の情報を授受するための通信インターフェースである。通信部410は、他の装置との間で有線通信を行っても良く、無線通信であっても良い。また通信部410は、他の装置との間の通信における通信プロトコルに任意のものを適用することができる。
制御部420は、例えばCPU等のプロセッサや、ROM、RAMなどで構成され、翻訳処理装置400の各部の動作を制御する。
本実施形態では、制御部420は、翻訳処理部421と、スコア生成部422と、を含んで構成される。
翻訳処理部421は、音声情報処理装置300がサイネージ端末100に向かって発せられた人間の声から生成したテキスト、またはサイネージ端末100に向かって発せられた人間の声を直接用いた、別の言語への翻訳処理を行う。
スコア生成部422は、翻訳処理部421における翻訳処理の際のスコアを生成する。スコア生成部422によるスコアの生成処理については後に詳述する。
以上、図7を用いて本開示の実施の形態に係る翻訳処理装置400の機能構成例について説明した。続いて、本開示の実施の形態に係るコミュニケーションシステム1の動作例を説明する。
[1.3.動作例]
(ユースケース例)
本開示の実施の形態に係るコミュニケーションシステム1の動作例を説明するにあたり、以下で説明するようなユースケースを用いる。以下の説明では、ユーザu1の母国語は英語、ユーザu2の母国語は英語以外の言語、例えば日本語であるとする。
図8は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を説明する説明図である。例えば、外国から来たユーザu1が、目的地への行き方や、食べ物を買える場所などが分からずに困っている状況を考える。ユーザu1は、街中を彷徨っていると、翻訳をしながらコミュニケーションが可能である旨のメッセージが書かれたサイネージ端末100を見つけたので、誰かに教えて貰うことを期待してその前に立つ。このとき、ディスプレイ103’には、カメラ101が撮像するユーザu1の姿が映し出されている。
図9は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を説明する説明図である。困った顔をしてサイネージ端末100の前に立っているユーザu1を見つけたユーザu2は、そのユーザu1を助けたいと思っているが、英語が苦手である。しかし、ユーザu2は、翻訳をしながらコミュニケーションが可能なサイネージ端末100を介してなら何とかなるかもしれないと思い、意を決してサイネージ端末100の前に立つ。
すると、ユーザu1は、サイネージ端末100の反対側にユーザu2が現れたので、サイネージ端末100に向かって話しかける。サイネージ端末100は、ユーザu1の発話内容を取得して、バックにあるサーバでの翻訳処理の内容を、ユーザu2の側にあるディスプレイに出力する。ユーザu2は、サイネージ端末100が出力する翻訳処理の内容を確認することで、ユーザu1の発話内容を知ることが出来る。
(初期処理)
まず初期処理について説明する。コミュニケーションシステム1は、ユーザがサイネージ端末100の前に立つと、初期処理として、会話モードへの移行を行う。コミュニケーションシステム1は、例えば、カメラ101が撮像した画像から人を検出し、顔がカメラ101に正対していて顔検出が可能な状態となり、さらにその人が所定時間以上その場にとどまったことを条件に会話モードへと移行する。
コミュニケーションシステム1は、会話モードへ移行すると、サイネージ端末100に正対しているユーザの画像情報から種々の処理を初期処理として実行する。コミュニケーションシステム1は、初期処理として、例えばユーザの顔をシミュレートした画像の生成、ユーザの頭、顔、体の輪郭情報を用いたユーザインターフェースの生成、ユーザの目、口、鼻の位置の情報の取得及び口並びの鼻の位置の情報に基づく耳の位置の計算などを行う。これらの初期処理は、例えば情報処理装置200が実行しうる。
また、コミュニケーションシステム1は、初期処理として、マイク位置の情報をユーザインターフェースに反映させる処理を行う。具体的には、コミュニケーションシステム1は、サイネージ端末100に備えられるマイク102の位置の情報と、取得したユーザの口の位置の情報とから、ユーザに口を近付けて発話してもらうマイク102の位置を示すためのユーザインターフェースを生成する。
図10は、サイネージ端末100のディスプレイ103に表示されるユーザインターフェースの例を示す説明図である。図10に示したのは、ユーザu1がサイネージ端末100の前に立った場合におけるユーザインターフェースの例である。コミュニケーションシステム1は、サイネージ端末100に正対しているユーザu1の画像情報から、ユーザu1の正対身体輪郭UI111を生成し、ディスプレイ103に表示させる。また、コミュニケーションシステム1は、マイク102の位置の情報と、取得したユーザの口の位置の情報とから、ユーザに口を近付けて発話してもらうマイク102の位置(高感度マイク位置と称する)を決定し、その高感度マイク位置を示すマイクUI112を生成し、ディスプレイ103に表示させる。
コミュニケーションシステム1は、正対身体輪郭UI111における口に該当する位置から遠くなる位置にあるマイク102の位置を、ユーザに口を近付けて発話してもらう高感度マイク位置として決定しても良い。これは、発話時にはなるべく正対身体輪郭UI111から外れて発話することをユーザに促すためである。
コミュニケーションシステム1は、マイクUI112をディスプレイ103に表示させる際に、正対身体輪郭UI111における口に該当する位置から、ユーザに口を近付けて発話してもらう高感度マイク位置へ移動させるよう表示しても良い。またコミュニケーションシステム1は、マイクUI112をディスプレイ103に表示させる際に、点滅して表示させたり、上下に動くよう表示させたりしてもよい。
図11は、ユーザu1から見てサイネージ端末100の反対側にユーザu2が立った状態の例を示す説明図である。そして図12は、図10に示したユーザインターフェースがディスプレイ103に表示されている場合において、ユーザu1から見てサイネージ端末100の反対側にユーザu2が立った際の、ディスプレイ103の表示例を示す説明図である。このようにディスプレイ103には、反対側に設けられたカメラ101’が撮像した画像が表示されうる。
図13は、サイネージ端末100のディスプレイ103’に表示されるユーザインターフェースの例を示す説明図である。図13に示したのは、ユーザu2がサイネージ端末100の前に立った場合におけるユーザインターフェースの例である。コミュニケーションシステム1は、サイネージ端末100に正対しているユーザu2の画像情報から、ユーザu2の正対身体輪郭UI111’を生成し、ディスプレイ103’に表示させる。また、コミュニケーションシステム1は、マイク102’の位置の情報と、取得したユーザの口の位置の情報とから、ユーザに口を近付けて発話してもらうマイク102’の位置(高感度マイク位置)を示すマイクUI112’を生成し、ディスプレイ103’に表示させる。
このように、サイネージ端末100の前にユーザu1、u2が立つと、コミュニケーションシステム1は初期処理を実行する。初期処理が完了すると、続いてコミュニケーションシステム1は、翻訳モードへの移行、及び音声認識の起動処理を行う。
(翻訳モードへの移行、音声認識の起動)
コミュニケーションシステム1は、サイネージ端末100の前に立つユーザの口の位置と、高感度マイク位置との距離が所定の閾値以下となると、翻訳モードへ移行させる。図14は、ユーザu1が顔を高感度マイク位置に近付ける様子を示す説明図である。このようにユーザu1が顔を高感度マイク位置に近付けて、ユーザの口の位置と、高感度マイク位置との距離が所定の閾値以下となることが検出されると、コミュニケーションシステム1は、翻訳モードへ移行させる。
そして、コミュニケーションシステム1は、翻訳モードへと移行させると、音声認識を起動させる。コミュニケーションシステム1は、音声認識を起動させる際には、初期処理で生成していた、ユーザu1の顔をシミュレートした画像を、相手側のディスプレイ103’における、ユーザu1の正対身体輪郭UI111の顔の位置に表示させる処理を実行する。
図15は、コミュニケーションシステム1が音声認識を起動させた際に、ディスプレイ103’に表示されるユーザインターフェースの例を示す説明図である。ユーザu1が顔を高感度マイク位置に近付けて、体の位置が正対身体輪郭から外れると、コミュニケーションシステム1は、ユーザu1の顔の位置に、ユーザu1の顔をシミュレートした画像114を表示させる。
このように、ユーザu1の顔の位置に、ユーザu1の顔をシミュレートした画像114を表示させることで、コミュニケーションシステム1は、ユーザu1が顔を高感度マイク位置に近付けている場合であっても、ユーザu1とユーザu2とが、サイネージ端末100を挟んで向かい合って対話しているように見せることが出来る。
コミュニケーションシステム1は、ユーザu1の顔をシミュレートした画像114を表示させる際、ユーザu2の方に見えているユーザu1の姿の一部、または全部を画像114に置き換えても良い。ユーザu1の顔をシミュレートした画像114は、顔全体であってもよく、口元や目元だけなど顔の一部分であっても良い。またコミュニケーションシステム1は、ユーザu1の顔をシミュレートした画像114を表示させる際、その画像114に対して、話しているように口の部分を動かしたり、ランダムな間隔で瞬きをさせたりする画像処理を行っても良い。
なお、コミュニケーションシステム1は、ユーザu1がサイネージ端末100に正対した時点で、ユーザu2の方に見えているユーザu1の姿の一部、または全部を画像114に置き換えても良い。
またコミュニケーションシステム1は、音声認識を起動させる際には、高感度マイク位置以外の位置にあるマイク102をオフさせる。またコミュニケーションシステム1は、音声認識を起動させると、音声認識を起動させている間、ユーザu1の視線情報を取得し続ける。またコミュニケーションシステム1は、音声認識を起動させると、音声認識を起動させている間、ユーザu1の発話の周波数情報を取得し続ける。
またコミュニケーションシステム1は、音声認識を起動させる際には、音声認識を終了させるためのユーザインターフェースをディスプレイ103に表示させる。コミュニケーションシステム1は、音声認識を終了させるためのユーザインターフェースとして、例えば、正対身体輪郭UI111を点滅させたり、現在の身体輪郭の情報を身体輪郭ユーザインターフェースとして表示させたりしてもよい。
(音声入力、翻訳処理)
コミュニケーションシステム1は、ユーザu1が高感度マイク位置のマイク102に向かって発話を行うと、その発話の内容が相手のユーザu2に届いていることを示すユーザインターフェースを表示させても良い。
図16は、ユーザu1の側のディスプレイ103に表示されるユーザインターフェースの例を示す説明図である。ユーザu1が高感度マイク位置のマイク102に向かって発話を行うと、コミュニケーションシステム1は、その発話の認識結果を表示する球UI115をディスプレイ103に表示させる。この球UI115は、ユーザu1の口の高さから、ディスプレイ103に表示されているユーザu2の耳に向かって移動するように表示されるユーザインターフェースである。
このような演出を行うことで、コミュニケーションシステム1は、ユーザu1の発話の内容が相手のユーザu2に届いていることを示すことができる。
またコミュニケーションシステム1は、ユーザu1が高感度マイク位置のマイク102に向かって発話を行うと、その発話の音声認識結果をディスプレイ103に表示させてもよい。図16には、ユーザu1の発話の音声認識結果116がディスプレイ103に表示されている例が示されている。図16に示した例では、ユーザu1が英語で発話していることを音声情報処理装置300が認識し、ユーザu1の発話内容が英語としてディスプレイ103にされている。ユーザがどの言語で発話したかどうかは、音声情報処理装置300が自動的に認識しても良いし、音声情報処理装置300が発話内容を解析することによって判定してもよい。また、ユーザにサイネージ端末100を操作させて、どの言語で発話するかをサイネージ端末100に対して指定させてもよい。
コミュニケーションシステム1は、ユーザu1の発話の音声認識結果を用いて翻訳処理を実行する。コミュニケーションシステム1は、翻訳処理の実行の際には、翻訳処理のスコアを取得し続ける。スコアの取得方法は後に詳述する。またコミュニケーションシステム1は、翻訳処理の実行の際には、音声認識結果の全文を翻訳してもよく、音声認識結果を要約した上でその要約を翻訳しても良い。コミュニケーションシステム1は、音声認識結果を要約する際には、例えば、音声認識結果に対して形態素解析を行い、要点と思われる品詞を抽出してもよい。
一方、コミュニケーションシステム1は、ユーザu1が発話中であることをユーザu2に対して示すユーザインターフェースを表示させても良い。
図17は、ユーザu2の側のディスプレイ103’に表示されるユーザインターフェースの例を示す説明図である。ユーザu1が高感度マイク位置のマイク102に向かって発話を行うと、コミュニケーションシステム1は、ユーザu1の顔をシミュレートした画像114の口の位置から、発話の認識結果を表示する球UI117をディスプレイ103’に表示させる。
このような演出を行うことで、コミュニケーションシステム1は、ユーザu1が発話中であることを相手のユーザu2に示すことができる。
またコミュニケーションシステム1は、ユーザu1が高感度マイク位置のマイク102に向かって発話を行うと、その発話の音声認識結果に対する翻訳結果をディスプレイ103’に表示させてもよい。図17には、ユーザu1の発話の音声認識結果に対する翻訳結果118がディスプレイ103’に表示されている例が示されている。
なお、図17には、翻訳結果118として「私の国の電車は定刻通りに到着しない」と示されているが、上述した要約の翻訳を行うと、例えば翻訳結果118として「電車 定刻 到着しない」のように表示されうる。
コミュニケーションシステム1は、翻訳結果118をサイネージ端末100に表示する際に、聞き手の正対状態が崩れないような位置に表示させることが望ましい。図18に示した例では、翻訳結果118が、発話者の画像114の近くに表示されている。翻訳結果118が、発話者の画像114の近くに表示されていることで、聞き手であるユーザu2は、正対状態を崩さずに翻訳結果を確認することが出来る。
コミュニケーションシステム1は、音声認識結果を時間軸上に並べて表示させてもよい。図18は、ユーザu1の側のディスプレイ103に表示されるユーザインターフェースの例を示す説明図である。コミュニケーションシステム1は、ユーザu1の音声認識結果116を、図18に示すように時間軸上に並べて表示させてもよい。ユーザu1の音声認識結果を時系列で表示させることで、コミュニケーションシステム1は、発話者に対して過去の発話内容を確認させることができる。
またコミュニケーションシステム1は、ユーザu1の音声認識結果116を時間軸上に並べて表示させる際に、図18に示すように発話者の写真を併せて表示させても良い。コミュニケーションシステム1は、音声認識結果116に発話者の写真を併せて表示させることで、過去に誰がその内容を話したのかを発話者に確認させることができる。
(翻訳モードの継続判断(1))
コミュニケーションシステム1は、ユーザu1の発話が途絶えたことを検出した場合に、例えば、ユーザu1の過去の発話内容及びユーザu1の発話状況を用いて、翻訳モードを継続すべきかどうかの判断を行う。まず、翻訳モードを継続すべきかどうかの最初の判断例を示す。
コミュニケーションシステム1は、音声入力が無くなった、すなわち、ユーザu1の発話が途絶えた場合でも、ユーザu1の発話内容に対する翻訳スコアが所定値より低く、かつ、発話者であるユーザu1の視線がユーザu2の方を向いていないときは、翻訳モードを継続する。これは、伝える情報が分からなくなると、人と目を合わせない、または視線が泳ぐようになるという人間の心理に基づくものである。
図19は、コミュニケーションシステム1が翻訳モードを継続すべきかどうかの判断を行うことを説明するための説明図である。図19には、ユーザu1の側のディスプレイ103に、ユーザu2の姿が表示されている状態が例示されている。
図19には、ユーザu2の正対身体輪郭領域に、所定の閾値d_surrounding_threshを加えた領域119が示されている。この領域119は、ディスプレイ103に表示されていなくても良い。コミュニケーションシステム1は、ユーザu1の発話内容に対する翻訳スコアが所定値より低く、かつ、ユーザu1の視線が、領域119の外側に、所定の時間t_surrounding_thresh以上存在している場合は、翻訳モードを継続すると判断する。
一方、コミュニケーションシステム1は、ユーザu1の発話内容に対する翻訳スコアが所定値より低く、かつ、ユーザu1の視線が、領域119の内側に、所定の時間t_surrounding_thresh以上存在している場合は、翻訳モードを解除すると判断する。
なお、図19に示した例では、ユーザu2の正対身体輪郭領域の全体に、一律に所定の閾値d_surrounding_threshを加えた例が示されているが、この所定の閾値は、ユーザu2の体の部位に応じて変化させても良い。コミュニケーションシステム1は、例えば、首より上と首より下とで、この所定の閾値を変化させても良い。
またコミュニケーションシステム1は、ユーザu1の視線の先に応じて、翻訳モードを継続すべきかどうかの判断を変化させても良い。すなわち、コミュニケーションシステム1は、ユーザu1が、ユーザu2の顔を見ているか、体を見ているか、手を見ているか、等に応じて、翻訳モードを継続すべきかどうかの判断を変化させても良い。
またコミュニケーションシステム1は、ユーザu2の背景の動きの有無に応じて、翻訳モードを継続すべきかどうかの判断を変化させても良い。これによりコミュニケーションシステム1は、ユーザu1が話す内容が分からなくなって目が泳いでいるのか、ユーザu2の背景に目を取られたのか、に応じて、翻訳モードを継続すべきかどうかの判断を変化できる。
コミュニケーションシステム1は、コミュニケーションシステム1を利用するユーザが過去にもコミュニケーションシステム1を利用したことがあれば、そのユーザの癖を用いて翻訳モードを継続すべきかどうか判断しても良い。例えば、視線を動かしやすいユーザであれば、ユーザが対話相手から視線を逸らしても翻訳モードを継続すべきであると判断しても良い。
コミュニケーションシステム1は、ユーザ同士がコミュニケーションを行っているシチュエーションによって、翻訳モードを継続すべきかどうかの判断に用いる閾値を変化させても良い。例えば、コミュニケーションシステム1は、コミュニケーションを行っているシチュエーションが、道案内であるのか、会議であるのか、等に応じて、翻訳モードを継続すべきかどうかの判断に用いる閾値を変化させても良い。また例えば、コミュニケーションシステム1は、コミュニケーションを行っているシチュエーションとして、ユーザが急いでいる状況なのか、時間に余裕がある状況なのか、等に応じて、翻訳モードを継続すべきかどうかの判断に用いる閾値を変化させても良い。
コミュニケーションシステム1は、コミュニケーションを行っている相手との関係によって、翻訳モードを継続すべきかどうかの判断に用いる閾値を変化させても良い。例えば、コミュニケーションシステム1は、コミュニケーションを行っている相手が、初対面の人物であるのか、異性であるのか、取引先の高い役職の人であるのか、等に応じて、翻訳モードを継続すべきかどうかの判断に用いる閾値を変化させても良い。
(翻訳モードの継続判断(2))
次に、翻訳モードを継続すべきかどうかの2つ目の判断例を示す。
コミュニケーションシステム1は、音声入力が無くなった、すなわち、ユーザu1の発話が途絶えた場合でも、ユーザu1が発話した文章が完結していなければ、例えば、ユーザu1の発話内容に言い淀みが検出されれば翻訳モードを継続する。またコミュニケーションシステム1は、無音になる前に所定のフィラーワードが含まれており、そのフィラーワードが発せられてから所定の時間t_fillerwords_threshが経過するまでは、翻訳モードを継続する。
図20は、コミュニケーションシステム1が翻訳モードを継続すべきかどうかの判断を行うことを説明するための説明図である。図20には、コミュニケーションシステム1が翻訳モードを継続すべきかどうかの3つの判断例を示している。1つ目の例は、ユーザu1の発話が途絶えてから所定の時間が経過すると、コミュニケーションシステム1が翻訳モードを解除する例である。2つ目の例は、ユーザu1の発話が途絶えても、言い淀みを検出するとコミュニケーションシステム1が翻訳モードを継続する例である。3つ目の例は、ユーザu1が所定のフィラーワードを発したことを検出すると、コミュニケーションシステム1は、そのフィラーワードが発せられてから所定の時間t_fillerwords_threshが経過するまでは、翻訳モードを継続する例である。
(翻訳モードの継続判断(3))
次に、翻訳モードを継続すべきかどうかの3つ目の判断例を示す。
コミュニケーションシステム1は、音声入力が無くなった、すなわち、ユーザu1の発話が途絶えた場合でも、ユーザの声質に基づいて翻訳モードを継続するかどうか判断する。例えば、コミュニケーションシステム1は、音声入力が無くなった、すなわち、ユーザu1の発話が途絶えた場合でも、最後の発話の周波数情報が、それまで取得し続けた周波数の平均と比べてある閾値以下となっていた場合は、翻訳モードを継続する。
具体的には、コミュニケーションシステム1は、音声入力が無くなった、すなわち、ユーザu1の発話が途絶えた際に、最後の発話の周波数情報info_last_voice_freqを算出し、それまで行われた発話すべての平均の周波数情報f_all_voiceを算出する。そして、コミュニケーションシステム1は、info_last_voice_freq
< info_voice_freq_ave - f_threshを満たす場合は声のトーンが下がった、つまり、発話者が自信を無くしている状態であると判断し、翻訳モードを継続する。一方、コミュニケーションシステム1は、info_last_voice_freq >= info_voice_freq_ave - f_threshを満たす場合は、翻訳モードを解除する。
(翻訳モードの継続判断(4))
次に、翻訳モードを継続すべきかどうかの4つ目の判断例を示す。
コミュニケーションシステム1は、音声入力が無くなる前に音声認識を行った結果、所定のデータベース(ここでは「会話終了判断ワードデータベース」とする)に含まれる者と一致していれば、ユーザからの音声入力が無いまま所定の時間t_convendwords_threshが経過するまでは翻訳モードを継続し、所定の時間t_convendwords_threshが経過すると翻訳モードを終了する。
図21は、コミュニケーションシステム1が翻訳モードを継続すべきかどうかの判断を行うことを説明するための説明図である。図21には、ユーザが、発話を停止する直前に、会話終了判断ワードデータベースに登録されている”What do you think of that?”という語句を発話した場合の例が示されている。この語句の発話を検出したコミュニケーションシステム1は、ユーザからの音声入力が無いまま所定の時間t_convendwords_threshが経過するまでは翻訳モードを継続する。そしてコミュニケーションシステム1は、ユーザからの音声入力が無いまま所定の時間t_convendwords_threshが経過すると翻訳モードを終了する。
(翻訳モードの継続判断(5))
次に、翻訳モードを継続すべきかどうかの5つ目の判断例を示す。
コミュニケーションシステム1は、ユーザが意図的に翻訳モードを解除するための動作を行った場合は、翻訳モードを解除する。意図的に翻訳モードを解除するための動作には、例えばディスプレイ103に表示された終了ボタンを押す、体を正対状態に戻す、発話を終えて視線を対話相手に戻す、等があり得るが、これらの例に限定されるものでは無い。
図22は、コミュニケーションシステム1がディスプレイ103に表示させるユーザインターフェースの例を示す説明図である。図22には、ディスプレイ103に、「STOP」と表示された、翻訳モードを解除するための終了ボタン120が表示されている例が示されている。コミュニケーションシステム1は、ユーザが終了ボタン120をタッチしたこと、または終了ボタン120に指を近接させたことを検出すると、翻訳モードを解除する。なお、終了ボタン120に表示される言葉は、ユーザu1が発話している言語に応じて変化させても良い。
ユーザが終了ボタン120をタッチしたこと、または終了ボタン120に指を近接させたことを検出すると、コミュニケーションシステム1は、例えば、ユーザに対して体を正対状態に戻すよう促すメッセージを、文字でディスプレイ103に表示したり、音声で出力したりしても良い。
図23は、コミュニケーションシステム1が翻訳モードを継続すべきかどうかの判断を行うことを説明するための説明図である。図23には、ユーザが正対身体輪郭UI111に対応する位置に姿勢を戻した場合の例が示されている。コミュニケーションシステム1は、ユーザが正対身体輪郭UI111に対応する位置に姿勢を戻し、姿勢を戻してから所定時間経過したことを検出すると、翻訳モードを解除する。
コミュニケーションシステム1は、ユーザが正対身体輪郭UI111に対応する位置に完全に姿勢を戻していなくても、例えば体の5割以上が正対身体輪郭UI111に対応する範囲に含まれていれば、体が正対状態に戻ったと判断しても良い。
その他、コミュニケーションシステム1は、例えばサイネージ端末100の周囲の騒音や雑音の有無によって翻訳モードを継続の可否を判断しても良い。発話者が発話を停止した場合に、サイネージ端末100の周囲で騒音や雑音が発生していれば、発話者はもしかしてその騒音や雑音に気を取られたのかもしれない。従って、コミュニケーションシステム1は、発話者が発話を停止した場合に、サイネージ端末100の周囲で騒音や雑音が発生していれば、翻訳モードを継続すると判断しても良い。
その他、コミュニケーションシステム1は、例えば相手からの回答に対する内容に基づいて、翻訳モードを継続の可否を判断しても良い。例えば、相手からの回答が質問であれば、ユーザはその回答に対して発話しようとするので、ユーザがしばらく発話を行わなかったとしても、コミュニケーションシステム1は、翻訳モードを継続すると判断する。一方、相手からの回答が質問でなければ、ユーザがしばらく発話を行わなかったとすると、コミュニケーションシステム1は、翻訳モードを終了すると判断する。
(聞き手側の処理あふれ判断)
上述の「(3)発話者が発話中における聞き手側の考慮点」において指摘したように、サイネージ端末を介した、翻訳を要するコミュニケーションにおいて、サイネージ端末が次々に発話者の発話内容を翻訳し続け、翻訳結果を多量に提示すると、翻訳結果の受け手は処理ができなくなり、コミュニケーションが破綻する。
そこでコミュニケーションシステム1は、聞き手側の状況を検出して、聞き手側の処理あふれの有無を判断する。そして聞き手側が処理あふれを起こしていると判断した場合は、コミュニケーションシステム1は、発話者側に、発話を一時的に止めるよう通知する。
(聞き手側の処理あふれ判断(1))
まず、聞き手側の処理あふれ判断の最初の例を示す。
コミュニケーションシステム1は、発話者であるユーザu1が発話中に、聞き手側であるユーザu2の視線がユーザu1の方を向いておらず、ユーザu1の正対身体輪郭情報から所定の閾値以上の距離の外側にあり、その状態が所定時間以上継続したときは、ユーザu2が処理あふれを起こしていると判断する。
図24は、コミュニケーションシステム1が聞き手側の処理あふれの判断を行うことを説明するための説明図である。図24には、ユーザu2の側のディスプレイ103’に、ユーザu1の姿が表示されている状態が例示されている。
図24には、ユーザu1の正対身体輪郭領域に、所定の閾値d_surrounding_threshを加えた領域119’が示されている。この領域119’は、ディスプレイ103’に表示されていなくても良い。コミュニケーションシステム1は、発話者であるユーザu1が発話中に、ユーザu2の視線が、領域119’の外側に、所定の時間t_surrounding_thresh以上存在している場合は、ユーザu2が処理あふれを起こしていると判断する。一方、発話者であるユーザu1が発話中に、ユーザu2の視線が、領域119’の内側に存在していれば、また領域119’の外側に視線があっても、所定の時間t_surrounding_threshの経過前に領域119’の内側に視線が戻れば、ユーザu2が処理あふれを起こしていないと判断する。
(聞き手側の処理あふれ判断(2))
次に、聞き手側の処理あふれ判断の2つ目の例を示す。
コミュニケーションシステム1は、発話者であるユーザu1が発話中に、聞き手側であるユーザu2が相槌を打たなくなってから所定時間以上経過したときは、ユーザu2が処理あふれを起こしていると判断する。
図25は、コミュニケーションシステム1が聞き手側の処理あふれの判断を行うことを説明するための説明図である。ユーザu2がある時点で相槌を打たなくなり、その後、相槌を検出しなくなってから所定時間以上経過したときは、コミュニケーションシステム1は、ユーザu2が処理あふれを起こしていると判断する。
(聞き手側の処理あふれ判断(3))
次に、聞き手側の処理あふれ判断の3つ目の例を示す。
コミュニケーションシステム1は、発話者であるユーザu1が発話中に、聞き手側であるユーザu2が掌をユーザu1に向け、その状態が所定時間以上継続したときは、ユーザu2が処理あふれを起こしていると判断する。
図26は、コミュニケーションシステム1が聞き手側の処理あふれの判断を行うことを説明するための説明図である。ユーザu2がある時点で掌をユーザu1に向け、その後、その状態が所定時間以上継続したときは、コミュニケーションシステム1は、ユーザu2が処理あふれを起こしていると判断する。
(聞き手側の処理あふれ判断(4))
次に、聞き手側の処理あふれ判断の4つ目の例を示す。
コミュニケーションシステム1は、発話者であるユーザu1が発話中に、音声認識結果のテキスト、または音声認識結果を翻訳した際のテキストが、所定の条件を満たした場合に、ユーザu2が処理あふれを起こしていると判断する。所定の条件としては、例えば、句解析を行った結果、句の数がある閾値を超えた(分かち書き言語であれば単語の数がある閾値を超えた)、形態素(英語ならば、単語)のうち、主要品詞である名詞及び動詞の数がある閾値を超えた、文字数がある閾値を超えた、などがある。
図27は、コミュニケーションシステム1が聞き手側の処理あふれの判断を行うことを説明するための説明図である。ユーザu1が発話中に、音声認識結果のテキスト、または音声認識結果を翻訳した際のテキストが、所定の条件を満たした場合は、コミュニケーションシステム1は、ユーザu2が処理あふれを起こしていると判断する。
コミュニケーションシステム1は、発話者が発話した内容、または発話内容の翻訳結果に、専門性の高い単語が含まれているなどして、内容が難しい場合は、上記の句の数を少なくしてもよい。また、コミュニケーションシステム1は、発話者が発話した内容が難しい場合は、専門性の高い単語に重みを付けることで、聞き手側の処理あふれを起こしているかどうかの判断を行っても良い。
以上、聞き手側が処理あふれを起こしているかどうかを判断する5つの例を示した。コミュニケーションシステム1は、上述したいずれかの方法により、また上述した方法を複数組み合わせることにより、聞き手側が処理あふれを起こしているかどうかを判断する。なお上述したものは聞き手側が処理あふれを起こしているかどうかを判断するための一例に過ぎないことはいうまでも無い。
また、聞き手の属性に応じて処理あふれを起こすまでの量は異なる。大人であれば処理あふれを起こすまでの量は多いが、子供であれば処理あふれを起こすまでの量は少ない。従って、コミュニケーションシステム1は、聞き手の属性に応じて処理あふれを起こすと判断するまでの閾値を変化させても良い。
またコミュニケーションシステム1は、聞き手側の生体情報に基づいて処理あふれを起こしているかどうかを判断してもよい。例えば、心拍数が上昇した、発汗量が増えた、等の情報を、聞き手側が所持しているデバイスに備えられるセンサで取得し、そのデバイスから情報を得ることで、コミュニケーションシステム1は、聞き手側が処理あふれを起こしているかどうかを判断してもよい。
(処理あふれを起こしたと判断した場合のユーザインターフェース)
コミュニケーションシステム1は、聞き手側が処理あふれを起こしていることを発話者側に伝えるためのユーザインターフェースを発話者側のディスプレイ103に提示する。
上述した例では、コミュニケーションシステム1は、発話者が発話していると、球UI115が聞き手側の耳に入っていくユーザインターフェースを示した。このようなユーザインターフェースを表示している場合、聞き手側が処理あふれを起こしていることを判断すると、コミュニケーションシステム1は、球UI115が聞き手側の耳で跳ね返り、こぼれ落ちていくようなユーザインターフェースを表示させてもよい。
図28は、ユーザu1の側のディスプレイ103に表示されるユーザインターフェースの例を示す説明図である。コミュニケーションシステム1は、上述の判断によって聞き手側であるユーザu2が処理あふれを起こしていることを判断すると、球UI115がユーザu2の耳で跳ね返り、こぼれ落ちていくようなユーザインターフェースを表示させる。このようなユーザインターフェースを発話者側のディスプレイ103に表示させることで、コミュニケーションシステム1は、聞き手側が処理あふれを起こしていることを発話者側に伝えることが可能となる。
ユーザu1の側のディスプレイ103に表示されるユーザインターフェースとしては、この他にも、例えば発話内容の認識結果の表示を止める、球UI115自体の表示を止める、などがあり得る。また、コミュニケーションシステム1は、聞き手側が処理あふれを起こしていることを発話者側に伝えるために、発話者の発話音を打ち消すような音を出力してもよい。
図28には、聞き手側が処理あふれを起こしていることを発話者側に伝えるためのユーザインターフェースを発話者側のディスプレイ103に提示する例を示したが、コミュニケーションシステム1は、発話者の発話を遮るためのユーザインターフェースを聞き手側に表示させても良い。例えば、コミュニケーションシステム1は、発話内容の翻訳結果を、あえて聞き手の正対状態が崩れる位置、例えばマイクUIの近くに表示させてもよい。コミュニケーションシステム1は、視線を外させたり、体の向きを変えさせて聞き手の正対状態を敢えて崩させたりすることで、聞き手側が処理あふれを起こしていることを聞き手自身に伝えることが可能となる。
コミュニケーションシステム1は、処理あふれを起こした条件に応じて、ディスプレイ103に表示させるユーザインターフェースを変化させてもよい。例えば、視線が発話者側を向かなくなったことで処理あふれを起こしたと判断すれば、コミュニケーションシステム1は、聞き手側の姿の周囲に汗が飛び出ているようなCGをディスプレイ103に表示さてもよい。また例えば、頷きが無くなったことで処理あふれを起こしたと判断すれば、コミュニケーションシステム1は、聞き手側の頭の上に、聞き手側が困っているような表現を表すCGをディスプレイ103に表示さてもよい。
以上、本開示の実施の形態に係るコミュニケーションシステム1の動作例を、一つのユースケースを取り上げて説明した。続いて、本開示の実施の形態に係るコミュニケーションシステム1の動作例をより詳細に説明する。
(発話者側の全体フロー)
図29は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図29に示したのは、発話者側の全体フローを示したものである。
発話者(上述の例では、ユーザu1)がサイネージ端末100の前に立つと、コミュニケーションシステム1は初期処理を実行する(ステップS101)。この初期処理は、サイネージ端末100で取得された情報に基づいて、情報処理装置200が実行しうる。初期処理の詳細については後に詳述する。
コミュニケーションシステム1は、上記ステップS101で初期処理を実行すると、続いて、相手側(上述の例では、ユーザu2)の初期フローが終了しているかどうか判断する(ステップS102)。この判断処理は例えば情報処理装置200(例えば、判断部223)が実行しうる。
上記ステップS102の判断の結果、相手側の初期フローが終了していれば(ステップS102,Yes)、コミュニケーションシステム1は、翻訳モードの処理を実行する(ステップS103)。一方、上記ステップS102の判断の結果、相手側の初期フローが終了していなければ(ステップS102,No)、コミュニケーションシステム1は、相手側の初期フローが終了するまで待機する。なお、コミュニケーションシステム1は、相手が現れないなどの理由で、所定時間経過しても相手側の初期フローが終了していなければ、初期フローを終了させても良い。
(初期処理フロー)
続いて、図29のステップS101で示した初期処理の詳細な流れを説明する。図30A、30Bは、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図30A、30Bに示したのは、図29のステップS101で示した初期処理の詳細なフローを示したものである。なお、以下で示す初期処理は、サイネージ端末100で取得された情報に基づいて、情報処理装置200が実行するものとするが、初期処理は、コミュニケーションシステム1を構成するどの装置で行われても良い。
まずコミュニケーションシステム1は、ユーザがサイネージ端末100の前にとどまった時間カウンタt_stayをリセット(t_stay=0)し、会話モードかどうかを示すフラグf_conv_modeをリセット(f_conv_mode=false)し、マイク102の位置情報p_mic_i(i=0,…,n)を取得する(ステップS111)。
続いて、コミュニケーションシステム1は、カメラ101が撮像したカメラ画像を用いた顔検出処理によって顔が検出できたかどうか判断する(ステップS112)。
上記ステップS112の判断の結果、顔が検出できない場合は(ステップS112、No)、続いてコミュニケーションシステム1は、上記ステップS111に戻る。一方、上記ステップS112の判断の結果、顔が検出できた場合は(ステップS112、Yes)、続いてコミュニケーションシステム1は、時間カウンタt_stayをインクリメントする(ステップS113)。
上記ステップS113で時間カウンタt_stayをインクリメントすると、続いてコミュニケーションシステム1は、時間カウンタt_stayが閾値t_stay_threshより大きいかどうか判断する(ステップS114)。
上記ステップS114の判断の結果、時間カウンタt_stayが閾値t_stay_thresh未満の場合は(ステップS114、No)、コミュニケーションシステム1は上記ステップS112の処理に戻る。一方、上記ステップS114の判断の結果、時間カウンタt_stayが閾値t_stay_threshより大きい場合は(ステップS114、Yes)、コミュニケーションシステム1は、会話モードかどうかを示すフラグf_conv_modeをtrueにセットし、(ステップS115)、正体時のユーザの顔情報info_faceを取得する(ステップS116)。
フラグf_conv_modeをtrueにセットし、正体時のユーザの顔情報info_faceを取得すると、続いてコミュニケーションシステム1は、正対時の人の輪郭情報info_outline_confrontを生成して正対身体輪郭UIとして画面へ反映させる(ステップS117)。
正対時の人の輪郭情報info_outline_confrontを生成すると、続いてコミュニケーションシステム1は、正体時のユーザの顔情報info_faceや正対時の人の輪郭情報info_outline_confrontから。目情報info_eye、口情報info_mouth及び鼻情報info_noseを取得する(ステップS118)。
目情報info_eye、口情報info_mouth及び鼻情報info_noseを取得すると、続いてコミュニケーションシステム1は、info_faseから表情を様々なものに変えた顔情報info_facial_expを生成する(ステップS119)。ここでの表情としては、例えば感情を出していない状態の表情、笑っている表情、不安な表情などがありうるが、これらの表情に限定されるものではない。
上記ステップS119で顔情報info_facial_expを生成すると、続いてコミュニケーションシステム1は、耳位置推定フローを実行する(ステップS120)。耳位置推定フローの詳細は後に詳述する。
上記ステップS120で耳位置推定フローを実行すると、続いてコミュニケーションシステム1は、高感度マイク位置取得フローを実行する(ステップS121)。高感度マイク位置取得フローの詳細は後に詳述する。
上記ステップS121で高感度マイク位置取得フローを実行すると、続いてコミュニケーションシステム1は、口の位置情報p_mouthから高感度マイク位置p_h_sensitive_micに向けて、マイクUIをアニメーションで移動させる(ステップS122)。
以上、図29のステップS101で示した初期処理の詳細な流れを説明した。続いて、上記ステップS120の耳位置推定フローの詳細な流れを説明する。
(耳位置推定フロー)
図31は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図31に示したのは、図30BのステップS120の耳位置推定フローの詳細な流れである。なお、以下で示す耳位置推定フローは、サイネージ端末100で取得された情報に基づいて、情報処理装置200が実行するものとするが、耳位置推定フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
コミュニケーションシステム1は、耳位置推定フローを実行する際に、まず口情報info_mouthから口の位置情報p_mouthを取得する(ステップS131)。さらにコミュニケーションシステム1は、目情報info_eyeから、左目の位置情報p_eye_lと、右目の位置情報p_eye_rと、を取得する(ステップS132)。さらにコミュニケーションシステム1は、鼻情報info_noseから鼻の最下部位置情報p_nose_dを取得する(ステップS133)。
図32は、口の位置情報p_mouth、左目の位置情報p_eye_l、右目の位置情報p_eye_r、および鼻の最下部位置情報p_nose_dを示す説明図である。コミュニケーションシステム1は、サイネージ端末100の前に立つユーザの目情報info_eye、口情報info_mouth及び鼻情報info_noseから、図32に示したように口の位置情報p_mouth、左目の位置情報p_eye_l、右目の位置情報p_eye_r、および鼻の最下部位置情報p_nose_dを取得する。
続いてコミュニケーションシステム1は、右目の位置情報p_eye_rから左目の位置情報p_eye_lへのベクトルvec_eye_rlを2倍したものと、右目の位置情報p_eye_rから鼻の最下部位置情報p_nose_dへのベクトルvec_r_noseを0.5倍したものとの和をとって、左の耳位置p_ear_lを取得する(ステップS134)。
同様に、コミュニケーションシステム1は、左目の位置情報p_eye_lから右目の位置情報p_eye_rへのベクトルvec_eye_lrを2倍したものと、p_eye_lからp_nose_dへのベクトルvec_l_noseを0.5倍したものとの和をとって、右の耳位置p_ear_rを取得する(ステップS135)。
図33は、口の位置情報p_mouth、左目の位置情報p_eye_l、右目の位置情報p_eye_r、および鼻の最下部位置情報p_nose_dから算出される左の耳位置p_ear_l及び右の耳位置p_ear_rを示す説明図である。このように、コミュニケーションシステム1はユーザのおおよその左の耳位置p_ear_l及び右の耳位置p_ear_rを算出する。
以上、図30BのステップS120で示した耳位置推定フローの詳細な流れを説明した。続いて、図30BのステップS121の、高感度マイク位置取得フローの詳細な流れを説明する。
(高感度マイク位置取得フロー)
図34は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図34に示したのは、図30BのステップS121の、高感度マイク位置取得フローの詳細な流れである。なお、以下で示す高感度マイク位置取得フローは、サイネージ端末100で取得された情報に基づいて、情報処理装置200が実行するものとするが、高感度マイク位置取得フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
コミュニケーションシステム1は、高感度マイク位置取得フローを実行する際に、まず口の位置情報p_mouthの高さより低い位置にあるマイク102の位置p_mic_lower_i(i=0,…n)を取得する(ステップS141)。
マイク102の位置p_mic_lower_i(i=0,…n)を取得すると、続いてコミュニケーションシステム1は、ユーザの口の位置情報p_mouthと、マイク102の位置p_mic_lower_iとの距離が最も近い位置のマイク102の位置p_mic_nearestを取得する(ステップS142)。
続いてコミュニケーションシステム1は、ユーザの口の位置情報p_mouthと、マイク102の位置p_mic_lower_iとの距離が2番目に近い位置のマイク102の位置p_mic_nextを取得する(ステップS143)。
そしてコミュニケーションシステム1は、ステップS143で取得したマイク102の位置p_mic_nextを、高感度マイク位置p_h_sensitive_micに決定する(ステップS144)。
図35は、高感度マイク位置の決定方法を説明するための説明図である。図35に示したようにユーザの顔及びマイク102が配置されている場合、p_mic_lower_iは、p_mic_2、p_mic_3、p_mic_6、p_mic_7である。そして、p_mic_nearestはp_mic_2となり、p_mic_nextはp_mic_6となる。従って、図35に示したようにユーザの顔及びマイク102が配置されている場合、コミュニケーションシステム1は、p_mic_6の位置にあるマイクを高感度マイク位置p_h_sensitive_micに決定する。
コミュニケーションシステム1は、このようにユーザの顔の位置に基づいて高感度マイク位置を決定することで、マイクの位置やユーザの背の高さなどに依存せず、ユーザの音声入力を成功させることが可能となる。
以上、図30BのステップS121で示した高感度マイク位置取得フローの詳細な流れを説明した。続いて、図29のステップS103の、翻訳モード処理フローの詳細な流れを説明する。
(翻訳モード処理フロー)
図36A、36Bは、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図36A、36Bに示したのは、図29のステップS103の、翻訳モード処理フローの詳細な流れである。なお、以下で示す翻訳モード処理フローは、サイネージ端末100で取得された情報や、翻訳処理装置400で生成された情報に基づいて、情報処理装置200が実行するものとするが、翻訳モード処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
コミュニケーションシステム1は、翻訳モード処理フローを実行する際には、まず翻訳モードかどうかを示すフラグf_trans_modeをリセット(f_trans_mode=false)する(ステップS151)。
フラグf_trans_modeをリセットすると、続いてコミュニケーションシステム1は翻訳モード起動処理を実行する(ステップS152)。翻訳モード起動処理については後に詳述する。
翻訳モード起動処理を実行すると、続いてコミュニケーションシステム1は高感度マイク位置p_h_sensitive_micと口の位置情報p_mouthとの距離d_mic_mouthが、閾値d_mic_mouth_threshよりも小さいかどうかを判断する(ステップS153)。
上記ステップS153の判断の結果、高感度マイク位置p_h_sensitive_micと口の位置情報p_mouthとの距離d_mic_mouthが、閾値d_mic_mouth_thresh以上であれば(ステップS153、No)、続いてコミュニケーションシステム1は、その時点の身体輪郭情報info_outline_currentと正対時の人の輪郭情報info_outline_confrontとから、現在の身体輪郭情報が正対輪郭情報内に閾値t_stay_confront_threshよりも多くとどまったかどうかを判断する(ステップS154)。
上記ステップS154の判断の結果、現在の身体輪郭情報が正対輪郭情報内に閾値t_stay_confront_threshよりも多くとどまっていれば(ステップS154、Yes)、コミュニケーションシステム1は翻訳モード終了処理を実行する(ステップS155)。翻訳モード終了処理については後に詳述する。一方、上記ステップS154の判断の結果、現在の身体輪郭情報が正対輪郭情報内に閾値t_stay_confront_threshよりも多くとどまっていなければ(ステップS154、No)、コミュニケーションシステム1は上記ステップS153の判断処理に戻る。
一方、上記ステップS153の判断の結果、高感度マイク位置p_h_sensitive_micと口の位置情報p_mouthとの距離d_mic_mouthが、閾値d_mic_mouth_threshより小さければ(ステップS153、Yes)、続いてコミュニケーションシステム1は、正対身体輪郭UIに対し、フェードインとフェードアウトのアニメーションを繰り返す(ステップS156)。
正対身体輪郭UIに対し、フェードインとフェードアウトのアニメーションを繰り返すと、続いてコミュニケーションシステム1は、その時点の身体輪郭情報info_outline_currentを生成し、現在の身体輪郭UIとして画面へ反映させる(ステップS157)。
身体輪郭情報info_outline_currentを生成し、現在の身体輪郭UIとして画面へ反映させると、続いてコミュニケーションシステム1は、マイク102が集音した音情報info_voiceの音量が音声入力判断閾値recognition_vol_threshを超えているかどうか判断する(ステップS158)。
ステップS158の判断の結果、音情報info_voiceの音量が音声入力判断閾値recognition_vol_threshを超えていれば(ステップS158、Yes)、コミュニケーションシステム1は、音声翻訳フィードバック処理を実行する(ステップS159)。音声翻訳フィードバック処理の詳細については後に詳述する。音声翻訳フィードバック処理を実行すると、コミュニケーションシステム1は、上記ステップS153の判断処理に戻る。
一方、ステップS158の判断の結果、音情報info_voiceの音量が音声入力判断閾値recognition_vol_threshを超えていなければ(ステップS158、No)、コミュニケーションシステム1は、翻訳モードの継続判断処理を実行する(ステップS160)。翻訳モードの継続判断処理は後に詳述する。
上記ステップS160の翻訳モードの継続判断処理を実行すると、続いてコミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値がtrueかどうか判断する(ステップS161)。フラグf_trans_modeの値がtrueであれば(ステップS161、Yes)、コミュニケーションシステム1は、上記ステップS153の判断処理に戻る。一方、フラグf_trans_modeの値がtrueでない、すなわちfalseであれば(ステップS161、No)、コミュニケーションシステム1は、上記ステップS155の翻訳モード終了処理を実行する。
以上、図36A、36Bを用いて、図29のステップS103の、翻訳モード処理フローの詳細な流れを説明した。続いて、図36AのステップS152の翻訳モード起動処理フローの詳細な流れを説明する。
(翻訳モード起動処理フロー)
図37は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図37に示したのは、図36AのステップS152の翻訳モード起動処理フローの詳細な流れである。なお、以下で示す翻訳モード起動処理フローは、サイネージ端末100で取得された情報に基づいて、情報処理装置200が実行するものとするが、翻訳モード起動処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
コミュニケーションシステム1は、高感度マイク位置p_h_sensitive_micと、口の位置情報p_mouthとの距離d_mic_mouthが、閾値d_mic_mouth_threshよりも小さいかどうか判断する(ステップS171)。
ステップS171の判断の結果、高感度マイク位置p_h_sensitive_micと、口の位置情報p_mouthとの距離d_mic_mouthが、閾値d_mic_mouth_threshより小さくなければ(ステップS171、No)、コミュニケーションシステム1は、ステップS171の処理を繰り返す。一方、ステップS171の判断の結果、高感度マイク位置p_h_sensitive_micと、口の位置情報p_mouthとの距離d_mic_mouthが、閾値d_mic_mouth_threshより小さければ(ステップS171、Yes)、続いてコミュニケーションシステム1は、ユーザの顔情報info_faceの画像の、相手側の画面への反映を開始する(ステップS172)。
続いてコミュニケーションシステム1は、高感度マイク位置p_h_sensitive_micにならなかったマイクのマイク処理、すなわち集音処理を停止する(ステップS173)。
高感度マイク位置p_h_sensitive_micにならなかったマイクのマイク処理を停止すると、続いてコミュニケーションシステム1は、カメラ101で撮像された画像を用いて、ユーザの視線情報info_gazeの取得を開始する(ステップS173)。
ユーザの視線情報info_gazeの取得を開始すると、続いてコミュニケーションシステム1は、高感度マイク位置のマイク102で集音されるユーザの発話の周波数情報info_voice_freqの取得を開始する(ステップS174)。
周波数情報info_voice_freqの取得を開始すると、続いてコミュニケーションシステム1は、高感度マイク位置p_h_sensitive_micに対する音情報info_voiceでの音声認識を起動する(ステップS175)。
音声認識を起動すると、続いてコミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をtrueに設定する(ステップS176)。なお、翻訳モードかどうかを示すフラグf_trans_modeの値をtrueに設定するのはこのタイミングに限定されるものではない。また、図37に示した処理フローにおける各処理の開始や起動のタイミングは、図37に示した順序に限定されるものではない。
以上、図36AのステップS152の翻訳モード起動処理フローの詳細な流れを説明した。続いて、図36AのステップS155の翻訳モード終了フローの詳細な流れを説明する。
(翻訳モード終了フロー)
図38は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図38に示したのは、図36AのステップS155の翻訳モード終了フローの詳細な流れである。なお、以下で示す翻訳モード終了フローは、サイネージ端末100で取得された情報に基づいて、情報処理装置200が実行するものとするが、翻訳モード終了フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
コミュニケーションシステム1は、翻訳モード終了フローを実行する場合には、まず翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定する(ステップS181)。なお、翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定するのはこのタイミングに限定されるものではない。
翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定すると、続いてコミュニケーションシステム1は、ユーザの身体輪郭情報info_outline_currentの、ディスプレイ103への提示を停止する(ステップS182)。
ユーザの身体輪郭情報info_outline_currentの、ディスプレイ103への提示を停止すると、続いてコミュニケーションシステム1は、正対身体輪郭UIに対する、フェードインとフェードアウトのアニメーションの繰り返しを停止する(ステップS183)。
正対身体輪郭UIに対する、フェードインとフェードアウトのアニメーションの繰り返しを停止すると、続いてコミュニケーションシステム1は、高感度マイク位置p_h_sensitive_micに対する音情報info_voiceでの音声認識を停止する(ステップS184)。
高感度マイク位置p_h_sensitive_micに対する音情報info_voiceでの音声認識を停止すると、続いてコミュニケーションシステム1は、高感度マイク位置のマイク102で集音されるユーザの発話の周波数情報info_voice_freqの取得を停止する(ステップS185)。
ユーザの発話の周波数情報info_voice_freqの取得を停止すると、続いてコミュニケーションシステム1は、ユーザの視線情報info_gazeの取得を停止する(ステップS186)。
ユーザの視線情報info_gazeの取得を停止すると、続いてコミュニケーションシステム1は、高感度マイク位置p_h_sensitive_micにならなかったマイクのマイク処理、すなわち集音処理の停止を解除する(ステップS187)。
高感度マイク位置p_h_sensitive_micにならなかったマイクのマイク処理の停止を解除すると、続いてコミュニケーションシステム1は、ユーザの顔情報info_faceの画像の、相手側の画面への反映を停止する(ステップS188)。
なお、図38に示した処理フローにおける各処理の停止のタイミングは、図38に示した順序に限定されるものではない。
以上、図36AのステップS155の翻訳モード終了フローの詳細な流れを説明した。続いて、図36BのステップS159の音声翻訳フィードバック処理の詳細な流れを説明する。
(音声翻訳フィードバック処理フロー)
図39A、39Bは、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図39A、39Bに示したのは、図36BのステップS159の音声翻訳フィードバック処理の詳細な流れである。なお、以下で示す音声翻訳フィードバック処理フローは、サイネージ端末100で取得された情報に基づいて、情報処理装置200が実行するものとするが、音声翻訳フィードバック処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
コミュニケーションシステム1は、高感度マイク位置p_h_sensitive_micのマイク102に入力される音情報info_voiceの音量が閾値voice_vol_threshを超えたかどうか判断する(ステップS201)。
ステップS201の判断の結果、音情報info_voiceの音量が閾値voice_vol_threshを超えていれば(ステップS201、Yes)、続いてコミュニケーションシステム1は、音量の大きさに応じた半径を持つ球オブジェクトobj_ballを生成する(ステップS202)。球オブジェクトobj_ballを生成すると、続いてコミュニケーションシステム1は、球オブジェクトアニメーション処理を実行する(ステップS203)。球オブジェクトアニメーション処理の詳細については後に詳述する。
上記ステップS203の球オブジェクトアニメーション処理を実行すると、または、ステップS201の判断の結果、音情報info_voiceの音量が閾値voice_vol_threshを超えていなければ(ステップS201、No)、続いてコミュニケーションシステム1は、ユーザの過去の発話の周波数平均情報としてinfo_voice_freq_aveを計算する(ステップS204)。
周波数平均情報info_voice_freq_aveを計算すると、続いてコミュニケーションシステム1は、音声情報処理装置300で音声認識結果voice_resultを得られたかどうか判断する(ステップS205)。
上記ステップS205の判断の結果、音声情報処理装置300で音声認識結果voice_resultを得られた場合は(ステップS205、Yes)、続いてコミュニケーションシステム1は、音声認識結果表示処理を実行する(ステップS206)。音声認識結果表示処理の詳細については後に詳述する。
音声認識結果表示処理を実行すると、続いてコミュニケーションシステム1は、音声認識結果voice_resultに対する翻訳処理装置400での翻訳処理を起動する(ステップS207)。
音声認識結果voice_resultに対する翻訳処理装置400での翻訳処理を起動すると、続いてコミュニケーションシステム1は、音声認識結果voice_resultに対する翻訳処理装置400での翻訳結果trans_resultを得られたかどうか判断する(ステップS208)。
上記ステップS208での判断の結果、音声認識結果voice_resultに対する翻訳処理装置400での翻訳結果trans_resultを得られた場合は(ステップS208、Yes)、続いてコミュニケーションシステム1は、翻訳処理装置400での翻訳結果trans_resultをサイネージ端末100に表示する(ステップS209)。
翻訳処理装置400での翻訳結果trans_resultをサイネージ端末100に表示すると、続いてコミュニケーションシステム1は、翻訳結果trans_resultを得たときのスコアtrans_result_scoreを記憶する(ステップS210)。翻訳スコアは、翻訳処理装置400のスコア生成部422が、翻訳結果trans_resultの確からしさに応じて生成する。
翻訳結果trans_resultを得たときのスコアtrans_result_scoreを記憶すると、続いてコミュニケーションシステム1は、翻訳結果表示処理を実行する(ステップS211)。翻訳結果表示処理の詳細については後に詳述する。
翻訳結果表示処理を実行すると、続いてコミュニケーションシステム1は、処理量あふれ判断処理を実行する(ステップS212)。処理量あふれ判断処理の詳細については後に詳述する。
処理量あふれ判断処理を実行すると、続いてコミュニケーションシステム1は、処理量あふれ提示処理を実行する(ステップS213)。処理量あふれ提示処理の詳細については後に詳述する。処理量あふれ提示処理を実行すると、コミュニケーションシステム1は、音声翻訳フィードバック処理を終了する。
上記ステップS205の判断の結果、音声情報処理装置300で音声認識結果voice_resultを得られなかった場合(ステップS205、No)、または上記ステップS208での判断の結果、音声認識結果voice_resultに対する翻訳処理装置400での翻訳結果trans_resultを得られなかった場合は(ステップS208、No)、コミュニケーションシステム1は、音声翻訳フィードバック処理を終了する。
以上、図36BのステップS159の音声翻訳フィードバック処理の詳細な流れを説明した。続いて、図39AのステップS203の球オブジェクトアニメーション処理の詳細な流れを説明する。
(球オブジェクトアニメーション処理フロー)
図40は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図40に示したのは、図39AのステップS203の球オブジェクトアニメーション処理の詳細な流れである。なお、以下で示す球オブジェクトアニメーション処理フローは、サイネージ端末100で取得された情報に基づいて、情報処理装置200が実行するものとするが、球オブジェクトアニメーション処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
球オブジェクトアニメーション処理を実行する場合、コミュニケーションシステム1は、ユーザが発話中であるかどうかを判断する(ステップS211)。
上記ステップS211の判断の結果、ユーザが発話中である場合は(ステップS211、Yes)、続いてコミュニケーションシステム1は、球オブジェクトobj_ballを相手の左の耳位置p_ear_l及び右の耳位置p_ear_rの位置へ向かってアニメーションしながら移動させる(ステップS212)。
一方、上記ステップS211の判断の結果、ユーザが発話中でない場合は(ステップS211、No)、続いてコミュニケーションシステム1は、球オブジェクトobj_ballを相手の口の位置情報p_mouthから、左の耳位置p_ear_l及び右の耳位置p_ear_rの位置へ向かってアニメーションしながら移動させる(ステップS213)。
以上、図39AのステップS203の球オブジェクトアニメーション処理の詳細な流れを説明した。続いて、図39BのステップS212の処理量あふれ判断処理の詳細な流れを説明する。
(処理量あふれ判断処理フロー(1))
図41は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図41に示したのは、図39BのステップS212の処理量あふれ判断処理の詳細な流れである。なお、以下で示す処理量あふれ判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、処理量あふれ判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
処理量あふれ判断処理を実行する場合、まずコミュニケーションシステム1は、ユーザが発話中であるかどうかを判断する(ステップS221)。
上記ステップS221の判断の結果、ユーザが発話中であった場合は(ステップS221、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS222)。
一方、上記ステップS221の判断の結果、ユーザが発話中でなかった場合は(ステップS221、No)、続いてコミュニケーションシステム1は、相手の正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に、ユーザの視線情報info_gazeが入っているかどうか判断する(ステップS223)。
上記ステップS223の判断の結果、相手の正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に、ユーザの視線情報info_gazeが入っていなければ(ステップS223、No)、続いてコミュニケーションシステム1は、ユーザの視線情報info_gazeが、正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に入っている時間が、閾値t_surrounding_threshよりも大きいかどうか判断する(ステップS224)。
上記ステップS224の判断の結果、ユーザの視線情報info_gazeが、正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に入っている時間が、閾値t_surrounding_threshよりも大きくなければ(ステップS224、No)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS222)。
一方、上記ステップS223の判断の結果、相手の正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に、ユーザの視線情報info_gazeが入っていれば(ステップS223、Yes)、または、上記ステップS224の判断の結果、ユーザの視線情報info_gazeが、正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に入っている時間が、閾値t_surrounding_threshよりも大きければ(ステップS224、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をtrueに設定する(ステップS225)。
(処理量あふれ判断処理フロー(2))
処理量あふれ判断処理フローの2つ目の例を説明する。図42は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図42に示したのは、図39BのステップS212の処理量あふれ判断処理の詳細な流れである。なお、以下で示す処理量あふれ判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、処理量あふれ判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
処理量あふれ判断処理を実行する場合、まずコミュニケーションシステム1は、ユーザが発話中であるかどうかを判断する(ステップS231)。
上記ステップS231の判断の結果、ユーザが発話中であった場合は(ステップS231、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS232)。
一方、上記ステップS231の判断の結果、ユーザが発話中でなかった場合は(ステップS231、No)、続いてコミュニケーションシステム1は、ユーザの相槌を検出できたかどうか判断する(ステップS233)。
上記ステップS233の判断の結果、ユーザの相槌を検出できなければ(ステップS233、No)、続いてコミュニケーションシステム1は、最後に相槌を検出した時間から現時点までの時間が閾値t_nod_threshよりも大きいかどうか判断する(ステップS234)。
上記ステップS234の判断の結果、最後に相槌を検出した時間から現時点までの時間が閾値t_nod_threshよりも大きくなければ(ステップS234、No)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS232)。
また、上記ステップS233の判断の結果、ユーザの相槌を検出できれば(ステップS233、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS232)。
一方、上記ステップS234の判断の結果、最後に相槌を検出した時間から現時点までの時間が閾値t_nod_threshよりも大きければ(ステップS234、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をtrueに設定する(ステップS235)。
(処理量あふれ判断処理フロー(3))
処理量あふれ判断処理フローの3つ目の例を説明する。図43は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図43に示したのは、図39BのステップS212の処理量あふれ判断処理の詳細な流れである。なお、以下で示す処理量あふれ判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、処理量あふれ判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
処理量あふれ判断処理を実行する場合、まずコミュニケーションシステム1は、ユーザが発話中であるかどうかを判断する(ステップS241)。
上記ステップS241の判断の結果、ユーザが発話中であった場合は(ステップS241、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS242)。
一方、上記ステップS241の判断の結果、ユーザが発話中でなかった場合は(ステップS241、No)、続いてコミュニケーションシステム1は、ユーザの掌を検出できたかどうか判断する(ステップS243)。
上記ステップS243の判断の結果、ユーザの掌を検出できれば(ステップS243、Yes)、続いてコミュニケーションシステム1は、ユーザの掌を検出した時間の累積時間t_palm_accumを更新する(ステップS244)。ユーザの掌を検出した時間の累積時間t_palm_accumを更新すると、続いてコミュニケーションシステム1は、ユーザの掌を検出した時間の累積時間t_palm_accumが閾値t_palm_accum_threshよりも大きいかどうか判断する(ステップS245)。
上記ステップS245の判断の結果、ユーザの掌を検出した時間の累積時間t_palm_accumが閾値t_palm_accum_threshよりも大きくなければ(ステップS245、No)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS242)。
また、上記ステップS243の判断の結果、ユーザの掌を検出できなければ(ステップS243、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS242)。
一方、上記ステップS245の判断の結果、ユーザの掌を検出した時間の累積時間t_palm_accumが閾値t_palm_accum_threshよりも大きければ(ステップS245、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をtrueに設定する(ステップS246)。
(処理量あふれ判断処理フロー(4))
処理量あふれ判断処理フローの4つ目の例を説明する。図44は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図44に示したのは、図39BのステップS212の処理量あふれ判断処理の詳細な流れである。なお、以下で示す処理量あふれ判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、処理量あふれ判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
処理量あふれ判断処理を実行する場合、まずコミュニケーションシステム1は、ユーザが発話中であるかどうかを判断する(ステップS251)。
上記ステップS251の判断の結果、ユーザが発話中であった場合は(ステップS251、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS252)。
一方、上記ステップS251の判断の結果、ユーザが発話中でなかった場合は(ステップS251、No)、続いてコミュニケーションシステム1は、音声認識結果voice_resultを、自然言語解析処理によって句単位に分割する(ステップS253)。
音声認識結果voice_resultを、自然言語解析処理によって句単位に分割すると、続いてコミュニケーションシステム1は、その音声認識結果voice_resultの句の数num_phraseを、それまでの累積数num_accum_phraseへ加算する(ステップS254)。
音声認識結果voice_resultの句の数num_phraseを、それまでの累積数num_accum_phraseへ加算すると、続いてコミュニケーションシステム1は、加算後の累積数num_phrase_accumが、閾値num_phrase_accum_threshを超えたかどうか判断する(ステップS255)。
上記ステップS255の判断の結果、加算後の累積数num_phrase_accumが、閾値num_phrase_accum_threshを超えていなければ(ステップS255、No)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をfalseに設定する(ステップS252)。
一方、上記ステップS255の判断の結果、加算後の累積数num_phrase_accumが、閾値num_phrase_accum_threshを超えていれば(ステップS255、Yes)、続いてコミュニケーションシステム1は、処理量あふれを判断するフラグf_task_over_modeの値をtrueに設定する(ステップS256)。
以上、処理量あふれ判断処理の詳細なフローを説明した。なお、ここでは5つの処理量あふれ判断処理フローの例を示したが、コミュニケーションシステム1は、この5つのフローの中から1つを選択して処理量あふれ判断処理を実行しても良く、複数のフローを選択して処理量あふれ判断処理フローを実行しても良い。複数のフローを選択する場合は、フローの結果が異なる場合があり得る。従って、複数のフローを選択する場合、コミュニケーションシステム1は、奇数個のフローを選択して、フラグf_task_over_modeの値の設定の結果が多い方を採用してもよい。続いて、図39BのステップS213の処理量あふれ提示処理の詳細な流れを説明する。
(処理量あふれ提示処理フロー)
図45は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図45に示したのは、図39BのステップS213の処理量あふれ提示処理の詳細な流れである。なお、以下で示す処理量あふれ提示処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、処理量あふれ提示処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
処理量あふれ提示処理を実行する場合、まずコミュニケーションシステム1は、ユーザが発話中であるかどうかを判断する(ステップS261)。
上記ステップS261の判断の結果、ユーザが発話中であれば(ステップS261、Yes)、コミュニケーションシステム1は、ユーザの発話の音量の大きさに応じた半径を持つ球オブジェクトobj_ballを、相手の右の耳位置p_ear_rと左の耳位置p_ear_lの位置へ向かってアニメーションながら移動し、その後、その位置から垂直下方向へアニメーションしながら移動させるよう、サイネージ端末100に表示させる(ステップS262)。
一方、上記ステップS261の判断の結果、ユーザが発話中でなければ(ステップS261、No)、コミュニケーションシステム1は、そのまま処理量あふれ提示処理を終了する。
以上、処理量あふれ提示処理の詳細な流れを説明した。続いて、音声認識結果表示処理の詳細な流れを説明する。
(音声認識結果表示処理フロー)
図46は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図46に示したのは、図39AのステップS206の音声認識結果表示処理の詳細な流れである。なお、以下で示す音声認識結果表示処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、音声認識結果表示処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
音声認識結果表示処理を実行する場合、まずコミュニケーションシステム1は、ユーザが発話中であったかどうかを判断する(ステップS271)。
上記ステップS271の判断の結果、ユーザが発話中であった場合は(ステップS271、Yes)、コミュニケーションシステム1は、音声認識結果を、サイネージ端末100における、相手の右の耳位置p_ear_rまたは左の耳位置p_ear_lの付近に表示させる(ステップS272)。
一方、上記ステップS271の判断の結果、ユーザが発話中でなかった場合は(ステップS271、No)、コミュニケーションシステム1は、そのまま音声認識結果表示処理を終了する。
以上、音声認識結果表示処理の詳細な流れを説明した。続いて、翻訳結果表示処理の詳細な流れを説明する。
(翻訳結果表示処理フロー)
図47は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図47に示したのは、図39BのステップS211の翻訳結果表示処理の詳細な流れである。なお、以下で示す翻訳結果表示処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、翻訳結果表示処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
翻訳結果表示処理を実行する場合、まずコミュニケーションシステム1は、ユーザが発話中であるかどうかを判断する(ステップS281)。
上記ステップS281の判断の結果、ユーザが発話中でない場合は(ステップS281、No)、コミュニケーションシステム1は、翻訳結果を、サイネージ端末100における、相手の口の位置情報p_mouthの付近に表示させる(ステップS282)。
一方、上記ステップS281の判断の結果、ユーザが発話中である場合は(ステップS281、Yes)、コミュニケーションシステム1は、そのまま翻訳結果表示処理を終了する。
以上、翻訳結果表示処理の詳細な流れを説明した。続いて、図36BのステップS160の翻訳モード継続判断処理の詳細な流れを説明する。
(翻訳モード継続判断処理フロー(1))
図48は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図48に示したのは、図36BのステップS160の翻訳モード継続判断処理の詳細な流れである。なお、以下で示す翻訳モード継続判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、翻訳モード継続判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
翻訳モード継続判断処理フローを実行する場合、まずコミュニケーションシステム1は、翻訳スコアtrans_scoreが閾値trans_score_threshより低いかどうか判断する(ステップS291)。
上記ステップS291の判断の結果、翻訳スコアtrans_scoreが閾値trans_score_threshより低ければ(ステップS291、Yes)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定して、翻訳モード継続判断処理フローを終了する(ステップS292)。
一方、上記ステップS291の判断の結果、翻訳スコアtrans_scoreが閾値trans_score_threshより低くなければ(ステップS291、No)、続いてコミュニケーションシステム1は、ユーザの視線情報info_gazeが相手の正対身体輪郭情報領域内に入っているかどうか判断する(ステップS293)。
上記ステップS293の判断の結果、ユーザの視線情報info_gazeが相手の正対身体輪郭情報領域内に入っていなければ(ステップS293、No)、続いてコミュニケーションシステム1は、ユーザの視線情報info_gazeが、相手の正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に入っているかどうか判断する(ステップS294)。
上記ステップS294の判断の結果、ユーザの視線情報info_gazeが、相手の正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に入っていなければ(ステップS294、No)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定して、翻訳モード継続判断処理フローを終了する(ステップS292)。
一方、上記ステップS293の判断の結果、ユーザの視線情報info_gazeが相手の正対身体輪郭情報領域内に入っていれば(ステップS293、Yes)、または、上記ステップS294の判断の結果、ユーザの視線情報info_gazeが、相手の正対身体輪郭情報領域に閾値d_surrounding_threshの距離を加えた領域内に入っていれば(ステップS294、Yes)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をtrueに設定して、翻訳モード継続判断処理フローを終了する(ステップS295)。
(翻訳モード継続判断処理フロー(2))
翻訳モード継続判断処理フローの2つ目の例を説明する。図49は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図49に示したのは、図36BのステップS160の翻訳モード継続判断処理の詳細な流れである。なお、以下で示す翻訳モード継続判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、翻訳モード継続判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
翻訳モード継続判断処理フローを実行する場合、まずコミュニケーションシステム1は、ユーザの発話によって得られる音情報info_voiceにユーザの言いよどみが検出できるかどうか判断する(ステップS301)。
上記ステップS301の判断の結果、音情報info_voiceにユーザの言いよどみが検出できれば(ステップS301、Yes)、続いてコミュニケーションシステム1は、最後に取得できたユーザの音声認識結果voice_resultが、フィラーワードデータベース内に入っているかどうか判断する(ステップS302)。
表1は、フィラーワードデータベースの内容の例を示す表である。コミュニケーションシステム1は、ユーザの音声認識結果voice_resultが、フィラーワードデータベース内に入っているフィラーワード群と一致するかどうかだけではなく、類似音フィラーワード群と一致するかどうかを判断しても良い。
上記ステップS302の判断の結果、ユーザの音声認識結果voice_resultが、フィラーワードデータベース内に入っていれば(ステップS302、Yes)、続いてコミュニケーションシステム1は、最後に発話したフィラーワードからの時間が閾値t_fillerwords_threshを超えていないかどうか判断する(ステップS303)。
上記ステップS301の判断の結果、音情報info_voiceにユーザの言いよどみが検出できれば(ステップS301、No)、または、上記ステップS302の判断の結果、ユーザの音声認識結果voice_resultが、フィラーワードデータベース内に入っていなければ(ステップS302、No)、または、上記ステップS303の判断の結果、最後に発話したフィラーワードからの時間が閾値t_fillerwords_threshを超えていれば(ステップS303、No)、コミュニケーションシステム1は、音情報info_voiceとして無音区間と判断する条件を満たすかどうか判断する(ステップS304)。無音区間と判断する条件としては、例えば音量が極めて小さい区間が継続しているかどうか、等があり得る。
上記ステップS304の判断の結果、音情報info_voiceとして無音区間と判断する条件を満たしていれば(ステップS304、Yes)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定して、翻訳モード継続判断処理フローを終了する(ステップS305)。
一方、上記ステップS303の判断の結果、最後に発話したフィラーワードからの時間が閾値t_fillerwords_threshを超えていなければ(ステップS303、Yes)、または、上記ステップS304の判断の結果、音情報info_voiceとして無音区間と判断する条件を満たしていなければ(ステップS304、No)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をtrueに設定して、翻訳モード継続判断処理フローを終了する(ステップS306)。
(翻訳モード継続判断処理フロー(3))
翻訳モード継続判断処理フローの3つ目の例を説明する。図50は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図50に示したのは、図36BのステップS160の翻訳モード継続判断処理の詳細な流れである。なお、以下で示す翻訳モード継続判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、翻訳モード継続判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
翻訳モード継続判断処理フローを実行する場合、まずコミュニケーションシステム1は、最後に取得した発話の周波数情報info_last_voice_freqが過去の平均情報であるinfo_voice_freq_aveから閾値f_threshを引いたものよりも大きいかどうか判断する(ステップS311)。
上記ステップS311の判断の結果、最後に取得した発話の周波数情報info_last_voice_freqが過去の平均情報であるinfo_voice_freq_aveから閾値f_threshを引いたものよりも大きければ(ステップS311、Yes)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定して、翻訳モード継続判断処理フローを終了する(ステップS312)。
一方、上記ステップS311の判断の結果、最後に取得した発話の周波数情報info_last_voice_freqが過去の平均情報であるinfo_voice_freq_aveから閾値f_threshを引いたものよりも大きくなければ(ステップS311、No)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をtrueに設定して、翻訳モード継続判断処理フローを終了する(ステップS313)。
(翻訳モード継続判断処理フロー(4))
翻訳モード継続判断処理フローの4つ目の例を説明する。図51は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図51に示したのは、図36BのステップS160の翻訳モード継続判断処理の詳細な流れである。なお、以下で示す翻訳モード継続判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、翻訳モード継続判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
翻訳モード継続判断処理フローを実行する場合、まずコミュニケーションシステム1は、最後に取得できたユーザの音声認識結果voice_resultが、会話終了判断ワードデータベース内に入っているかどうか判断する(ステップS321)。
表2は、会話終了判断ワードデータベースの内容の例を示す表である。コミュニケーションシステム1は、ユーザの音声認識結果voice_resultが、会話終了判断ワードデータベース内に入っている会話終了判断ワード群と一致するかどうかだけではなく、類似音会話終了判断ワード群と一致するかどうかを判断しても良い。
上記ステップS321の判断の結果、最後に取得できたユーザの音声認識結果voice_resultが、会話終了判断ワードデータベース内に入っていれば(ステップS321、Yes)、続いてコミュニケーションシステム1は、最後に発話した会話終了判断ワードからの時間が閾値t_convendwords_threshを超えていないかどうか判断する(ステップS322)。
上記ステップS321の判断の結果、最後に取得できたユーザの音声認識結果voice_resultが、会話終了判断ワードデータベース内に入っていなければ(ステップS321、No)、または、上記ステップS322の判断の結果、最後に発話した会話終了判断ワードからの時間が閾値t_convendwords_threshを超えていれば(ステップS322、No)、コミュニケーションシステム1は、音情報info_voiceとして無音区間と判断する条件を満たすかどうか判断する(ステップS323)。無音区間と判断する条件としては、例えば音量が極めて小さい区間が継続しているかどうか、等があり得る。
上記ステップS323の判断の結果、音情報info_voiceとして無音区間と判断する条件を満たしていれば(ステップS323、Yes)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定して、翻訳モード継続判断処理フローを終了する(ステップS324)。
一方、上記ステップS322の判断の結果、最後に発話した会話終了判断ワードからの時間が閾値t_convendwords_threshを超えていなければ(ステップS322、Yes)、または、上記ステップS323の判断の結果、音情報info_voiceとして無音区間と判断する条件を満たしていなければ(ステップS323、No)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をtrueに設定して、翻訳モード継続判断処理フローを終了する(ステップS324)。
(翻訳モード継続判断処理フロー(5))
翻訳モード継続判断処理フローの5つ目の例を説明する。図52は、本開示の実施の形態に係るコミュニケーションシステム1の動作例を示す流れ図である。図52に示したのは、図36BのステップS160の翻訳モード継続判断処理の詳細な流れである。なお、以下で示す翻訳モード継続判断処理フローは、サイネージ端末100で取得された情報などに基づいて、情報処理装置200が実行するものとするが、翻訳モード継続判断処理フローは、コミュニケーションシステム1を構成するどの装置で行われても良い。
翻訳モード継続判断処理フローを実行する場合、まずコミュニケーションシステム1は、画面上に出ている翻訳モード解除ボタンが押されたかどうか判断する(ステップS331)。
上記ステップS331の判断の結果、翻訳モード解除ボタンが押されていれば(ステップS331、Yes)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をfalseに設定して、翻訳モード継続判断処理フローを終了する(ステップS332)。
一方、上記ステップS331の判断の結果、翻訳モード解除ボタンが押されていなければ(ステップS331、No)、コミュニケーションシステム1は、翻訳モードかどうかを示すフラグf_trans_modeの値をtrueに設定して、翻訳モード継続判断処理フローを終了する(ステップS333)。
以上、翻訳モード継続判断処理の詳細な流れを説明した。なお、ここでは5つの翻訳モード継続判断処理フローの例を示したが、コミュニケーションシステム1は、この5つのフローの中から1つを選択して翻訳モード継続判断処理を実行しても良く、複数のフローを選択して翻訳モード継続判断処理フローを実行しても良い。複数のフローを選択する場合は、フローの結果が異なる場合があり得る。従って、複数のフローを選択する場合、コミュニケーションシステム1は、奇数個のフローを選択して、フラグf_trans_modeの値の設定の結果が多い方を採用してもよい。
本開示の実施の形態に係るコミュニケーションシステム1は、上述した動作を実行することで、サイネージ端末等を介して、人間同士が正対してコミュニケーションを行う際に、発話者や対話者の状況に基づいて自然なコミュニケーションを行わせることが可能となる。
<2.まとめ>
以上説明したように本開示の実施の形態によれば、サイネージ端末100を介して、翻訳をしながら人間同士が会話を行えるコミュニケーションシステム1において、仮に発話が途絶えたとしても、発話が途絶えたことのみを理由として翻訳を打ち切らないようにするコミュニケーションシステム1が提供される。
本開示の実施の形態に係るコミュニケーションシステム1は、発話が途絶えたことのみを理由として翻訳を打ち切らないようにすることで、発話者側が発話内容を思い浮かべることが出来ない場合にも、翻訳したい対象だけを翻訳相手に伝えられるとともに、相手に発話を遮られないようにできる。
また本開示の実施の形態によれば、サイネージ端末100を介して、翻訳をしながら人間同士が会話を行えるコミュニケーションシステム1において、話し手側が発話している最中に、聞き手側の処理量があふれていることを、話し手側にサイネージ端末100を用いて通知するコミュニケーションシステム1が提供される。
本開示の実施の形態に係るコミュニケーションシステム1は、話し手側が発話している最中に、聞き手側の処理量があふれていることを、話し手側にサイネージ端末100を用いて通知することで、聞き手側の情報の処理量のイメージを、話し手の発話を遮ること無く、話し手側に伝えることが可能となる。
すなわち、本開示の実施の形態に係るコミュニケーションシステム1は、自分の発話を相手に遮られることを回避したり、聞き手側の処理量があふれていることを、話し手側に伝えたりすることで、話し手側及び聞き手側にとって円滑なコミュニケーションを可能にさせる。
なお上記実施形態では、サイネージ端末100を介したコミュニケーションシステム1の例を示したが、本開示は係る例に限定されるものではない。本開示は、ディスプレイ、スピーカー、マイクを介してその場に無い人間同士がコミュニケーションするシステム、例えばテレビ電話システム、テレビ会議システム、AR(拡張現実)を利用したバーチャル会話支援システムなどにも適用可能である。
テレビ会議システムは、会議の参加者が会議中にカメラでは無くマイクの方を向いてしまうと不自然な状況になりやすい。そのため、本開示を適用するテレビ会議システムは、会議の参加者がマイクの方を向いた場合には、上述したように予め作成した正対時の画像に置き換えて相手側のディスプレイに提示する。このように正対時の画像に置き換えて相手側のディスプレイに提示することで、本開示を適用するテレビ会議システムは、不自然な状況となることを回避出来る。
また、本開示をテレビ会議システムに適用する場合、例えば、発話者の発話内容をログとして記録しておき、そのログを翻訳に活用しても良い。会議では頻繁に「あれ」や「さっきの」等といった句が発話されることが多いが、本開示を適用するテレビ会議システムは、その「あれ」や「さっきの」等の句を具体的な名詞等に置き換えて翻訳し、相手側に提示しても良い。
本明細書の各装置が実行する処理における各ステップは、必ずしもシーケンス図またはフローチャートとして記載された順序に沿って時系列に処理する必要はない。例えば、各装置が実行する処理における各ステップは、フローチャートとして記載した順序と異なる順序で処理されても、並列的に処理されてもよい。
また、各装置に内蔵されるCPU、ROMおよびRAMなどのハードウェアを、上述した各装置の構成と同等の機能を発揮させるための、単体のコンピュータまたは複数のコンピュータが一連の処理を行うコンピュータシステムで実行されるプログラムも作成可能である。また、該コンピュータプログラムを記憶させた記憶媒体も提供されることが可能である。また、機能ブロック図で示したそれぞれの機能ブロックをハードウェアまたはハードウェア回路で構成することで、一連の処理をハードウェアまたはハードウェア回路で実現することもできる。
また上述の説明で用いた機能ブロック図で示したそれぞれの機能ブロックの一部又は全部は、たとえばインターネット等のネットワークを介して接続されるサーバ装置で実現されてもよい。また上述の説明で用いた機能ブロック図で示したそれぞれの機能ブロックの構成は、単独の装置で実現されてもよく、複数の装置が連携するシステムで実現されても良い。複数の装置が連携するシステムには、例えば複数のサーバ装置の組み合わせ、サーバ装置と端末装置との組み合わせ等が含まれ得る。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
発話者による発話内容が、発話内容に対する翻訳処理を継続すべきかどうかを判断するレベルとなった場合に、前記発話者の発話内容及び発話状況に基づいて、前記翻訳処理の継続判断を行う制御部を備える、制御装置。
(2)
前記制御部は、前記過去の発話内容及び前記発話状況に応じて、前記翻訳処理を終了させる、前記(1)に記載の制御装置。
(3)
前記制御部は、前記発話状況として前記発話者の視線に基づいて、前記翻訳処理を終了させる、前記(2)に記載の制御装置。
(4)
前記制御部は、前記発話状況として前記発話者の視線が該発話者の対話者に向いており、かつ前記発話内容として前記発話者の発話を所定時間検出しなくなると、前記翻訳処理を終了させる、前記(3)に記載の制御装置。
(5)
前記制御部は、前記発話内容として所定のキーワードが含まれていれば、前記翻訳処理を終了させる、前記(2)に記載の制御装置。
(6)
前記制御部は、前記発話状況として前記発話者の動作に基づいて、前記翻訳処理の継続判断を行う、前記(1)に記載の制御装置。
(7)
前記制御部は、前記発話状況として前記発話者の視線に基づいて、前記翻訳処理の継続判断を行う、前記(6)に記載の制御装置。
(8)
前記制御部は、前記発話状況として前記発話者の動作及び周囲の音に基づいて、前記翻訳処理の継続判断を行う、前記(6)に記載の制御装置。
(9)
前記制御部は、前記発話状況として前記発話者が置かれているシチュエーションに基づいて、前記翻訳処理の継続判断を行う、前記(1)に記載の制御装置。
(10)
前記制御部は、前記発話状況として前記発話者の対話相手との関係に基づいて、前記翻訳処理の継続判断を行う、前記(1)に記載の制御装置。
(11)
前記制御部は、前記発話内容として前記発話者の対話相手からの発話内容に対する回答の内容に基づいて、前記翻訳処理の継続判断を行う、前記(1)に記載の制御装置。
(12)
前記制御部は、前記発話内容として文章の成立の有無に基づいて前記翻訳処理の継続判断を行う、前記(1)に記載の制御装置。
(13)
前記制御部は、前記発話内容として前記発話者の声質に基づいての継続判断を行う、前記(1)に記載の制御装置。
(14)
前記制御部は、前記発話者の声質を周波数に基づいて判断する、前記(13)に記載の制御装置。
(15)
前記制御部は、前記レベルとして、前記発話内容及び前記発話状況に基づいて算出したスコアを用いる、前記(1)〜(14)に記載の制御装置。
(16)
前記制御部は、算出した前記スコアが所定値以下の場合に、前記発話者の視線が前記発話者の対話者に向いているときは、前記翻訳処理を継続する、前記(15)に記載の制御装置。
(17)
前記制御部は、前記スコアを、前記発話者の視線に基づいて算出する、前記(15)に記載の制御装置。
(18)
前記制御部は、前記スコアを、前記発話者が発話した内容の翻訳結果の確からしさに基づいて算出する、前記(15)に記載の制御装置。
(19)
発話者による発話内容が、発話内容に対する翻訳処理を継続すべきかどうかを判断するレベルとなった場合に、前記発話者の発話内容及び発話状況に基づいて、前記翻訳処理の継続判断を行うことを含む、制御方法。
(20)
発話者による発話内容が、発話内容に対する翻訳処理を継続すべきかどうかを判断するレベルとなった場合に、前記発話者の発話内容及び発話状況に基づいて、前記翻訳処理の継続判断をコンピュータに実行させる、コンピュータプログラム。