(58)【調査した分野】(Int.Cl.,DB名)
前記リモコン装置の外観を示す画像を表示装置に表示し、前記リモコン装置のうちの前記第1操作指示内容に関する操作が可能な動作部を強調表示することで前記推奨入力機器を提示する、
請求項8に記載の機器制御方法。
【発明を実施するための形態】
【0008】
(本開示の技術の基礎となった知見)
音声入力を用いて操作対象機器へ操作コマンドを送信することは、操作対象機器に対して直接的に指示を行えるため、リモートコントローラ(以下、リモコンと表記)のような入力機器を操作して操作対象機器に指示を行う場合と比較して操作が簡略化される場合がある。例えば、リモコンを用いて、メニュー画面を開いてから所望の操作に対応する項目を選択する場合や、検索用の語句を入力する場合は、音声入力を用いた方が簡単に所望の操作が可能である。
【0009】
リモコンによるコマンド入力と、音声によるコマンド入力との双方が可能なコマンド受付装置がある(例えば、特許文献1)。
【0010】
特許文献1は、音声認識機能を備えた制御装置と、使用者が各種の指令やデータなどを外部操作によって入力するためのスイッチ装置と、画像を表示するための表示装置と、音声を入力するためのマイクロフォンを開示する。この制御装置は、スイッチ装置またはマイクロフォンから、使用者による各種の指令やデータなどを受信し、受信した指令やデータに基づいて処理を実行し、処理結果を表示装置へと出力する。このとき、スイッチ装置によるコマンド入力が、マイクロフォンを介した音声によるコマンド入力によっても可能である場合、音声によるコマンド入力が可能である旨をユーザへ通知する。
【0011】
しかし、特許文献1の上記技術は、音声入力が可能なコマンドをスイッチ装置によって入力するたびに、音声によるコマンド入力が可能である旨をユーザへ通知する。そのため、例えば、ユーザがリモコンを用いた方が使い易いと考えている操作を行った場合であっても、その操作が音声によるコマンド入力が可能であるときには、その旨が通知され、煩わしく感じるという課題があった。すなわち、上記技術では、音声によるコマンド入力に適した操作と、リモコンによるコマンド入力に適した操作とを区別してユーザへ通知することが出来なかった。
【0012】
上述したように、音声入力を用いて操作対象機器へ操作コマンドを送信することは、操作対象機器に対して直接的に指示を行えるため、リモコンのような入力機器の操作によって操作対象機器に指示を行う場合と比較して操作が簡略化される場合がある。一方で、例えば、電源のオン/オフ、テレビのチャネル変更、テレビの音量調整など、リモコンのボタンが一対一で操作に対応している場合は、ボタンの配置さえ覚えてしまえば、音声入力を行うよりも簡単に所望の操作が可能な場合がある。そのため、音声によるコマンド入力とリモコンによるコマンド入力とを適宜使い分けることで、操作対象機器に対してより簡単に所望の操作を行うことができる。
【0013】
そこで、音声機器操作システムの機能向上のため、以下の改善策を検討した。
【0014】
本発明のある実施形態に係る機器制御方法は、複数の入力機器を用いて動作を制御可能な操作対象機器の動作を制御する機器制御方法であって、前記操作対象機器に対する第1操作指示内容を示す第1操作指示情報を受信し、受信した前記第1操作指示情報が示す前記第1操作指示内容を認識し、前記複数の入力機器のうちの前記第1操作指示内容に関する操作をユーザから受け付けた第1入力機器を認識し、前記第1操作指示内容、前記第1入力機器、および前記第1操作指示情報よりも前に受信した第2操作指示情報が示す第2操作指示内容に関する履歴情報に基づいて、前記第1入力機器とは異なる推奨入力機器を前記ユーザへ提示する。ユーザが第1入力機器に適さない操作を行った場合に、第1入力機器とは異なる推奨入力機器をユーザへ提示することにより、操作対象機器に対してより簡単に所望の操作が可能である旨をユーザへ通知できる。また、ユーザは、提示された推奨入力機器を用いることにより、より簡単に所望の操作が可能となる。
【0015】
ある実施形態において、例えば、前記第1操作指示内容の種別を認識し、前記履歴情報は、前記第2操作指示内容の種別を示す情報を含み、前記第1操作指示内容の種別と前記第2操作指示内容の種別とが同じであると判断される場合、前記第1入力機器とは異なる推奨入力機器を前記ユーザへ提示してもよい。これにより、ユーザが同じ操作を複数回行った場合に、その操作に適した推奨入力機器をユーザへ提示することができる。
【0016】
ある実施形態において、例えば、前記履歴情報は、一つ以上の操作指示情報のそれぞれが入力された時刻を示す時刻情報を含み、前記第2操作指示情報は、前記一つ以上の操作指示情報のうちの、前記第1操作指示情報が入力された時刻である第1時刻と、前記第1時刻から所定時間前である第2時刻との間の時刻において入力された操作指示情報であってもよい。これにより、所定の時間内にユーザが同じ操作を複数回行った場合に、その操作に適した推奨入力機器をユーザへ提示することができる。
【0017】
ある実施形態において、例えば、前記履歴情報は、一つ以上の操作指示情報のそれぞれが入力された時刻を示す時刻情報を含み、前記第2操作指示情報は、前記第1操作指示情報の直前に入力された操作指示情報であってもよい。これにより、ユーザが連続して同じ操作を行った場合に、その操作に適した推奨入力機器をユーザへ提示することができる。
【0018】
ある実施形態において、例えば、操作指示内容の種別毎に推奨される入力機器を示す推奨入力機器情報および前記第1操作指示内容の種別に基づいて、前記ユーザへ提示する推奨入力機器を決定してもよい。これにより、ユーザの操作に適した推奨入力機器をユーザへ提示することができる。
【0019】
ある実施形態において、例えば、前記操作対象機器は、前記複数の入力機器のそれぞれに対するユーザの操作に応じた操作指示情報が受信可能であってもよい。これにより、複数の入力機器を用いて操作対象機器の動作を制御することができる。
【0020】
ある実施形態において、例えば、前記推奨入力機器として、前記操作対象機器に対応し、前記操作対象機器の動作を制御可能なリモコン装置を前記ユーザに提示してもよい。これにより、ユーザは、操作に適した推奨入力機器がリモコン装置であることを認識することができる。
【0021】
ある実施形態において、例えば、前記推奨入力機器は前記リモコン装置であることを音声出力により前記ユーザへ提示してもよい。これにより、ユーザは、操作に適した推奨入力機器がリモコン装置であることを音声により認識することができる。
【0022】
ある実施形態において、例えば、前記リモコン装置の外観を示す画像を表示装置に表示し、前記リモコン装置のうちの前記第1操作指示内容に関する操作が可能な動作部を強調表示することで前記推奨入力機器を提示してもよい。これにより、ユーザは、推奨入力機器であるリモコン装置のどの部分を操作すればよいかを認識することができる。
【0023】
ある実施形態において、例えば、前記履歴情報は、一つ以上の操作指示情報のそれぞれが入力された時刻を表す時刻情報を含み、前記第1操作指示内容の種別を判断し、前記履歴情報に基づいて、所定期間内の前記第1操作指示内容と同じ種別の操作指示情報の入力頻度を算出し、前記算出した入力頻度に基づいて、前記推奨入力機器を前記ユーザへ提示してもよい。これにより、所定期間内にユーザが同じ操作を複数回行った場合に、その操作に適した推奨入力機器をユーザへ提示することができる。
【0024】
ある実施形態において、例えば、算出した前記入力頻度が所定値以上である場合に、前記推奨入力機器をユーザへ提示してもよい。これにより、所定期間内にユーザが同じ操作を所定の回数以上行った場合に、その操作に適した推奨入力機器をユーザへ提示することができる。
【0025】
ある実施形態において、例えば、前記第1操作指示内容の種別を認識し、前記履歴情報は、前記第2操作指示内容の種別を示す種別情報と、前記第2操作指示情報に基づいて変化した前記操作対象機器の動作内容を示す動作情報をさらに含み、前記第1操作指示内容と同じ種別に関する前記操作対象機器の動作内容を示す情報を前記動作情報が含んでいないと判断された場合、前記第1入力機器とは異なる推奨入力機器をユーザへ提示してもよい。第1操作指示内容の種別に対応する動作内容の履歴情報がない場合は、第1入力機器とは異なる推奨入力機器をユーザへ提示することで、第1入力機器で煩雑な操作が発生することを避けることができる。
【0026】
本発明のある実施形態に係る電気機器は、複数の入力機器を用いて動作を制御可能な電気機器であって、前記電気機器は、前記電気機器に対する第1操作指示内容を示す第1操作指示情報を入力する入力部と、前記第1操作指示情報が示す第1操作指示内容と、前記複数の入力機器のうちの前記第1操作指示内容に関する操作をユーザから受け付けた第1入力機器とを認識する認識部と、前記第1操作指示内容、前記第1入力機器、および前記第1操作指示情報よりも前に入力された第2操作指示情報が示す第2操作指示内容に関する履歴情報に基づいて、前記第1入力機器とは異なる推奨入力機器を前記ユーザへ提示する提示部とを備える。ユーザが第1入力機器に適さない操作を行った場合に、第1入力機器とは異なる推奨入力機器をユーザへ提示することにより、操作対象機器に対してより簡単に所望の操作が可能である旨をユーザへ通知できる。また、ユーザは、提示された推奨入力機器を用いることにより、より簡単に所望の操作が可能となる。
【0027】
本発明のある実施形態に係るコンピュータプログラムは、複数の入力機器を用いて動作を制御可能な電気機器を制御するためのコンピュータプログラムであって、前記電気機器のコンピュータに、前記電気機器に対する第1操作指示内容を示す第1操作指示情報を入力させ、前記第1操作指示情報が示す第1操作指示内容と、前記複数の入力機器のうちの前記第1操作指示内容に関する操作をユーザから受け付けた第1入力機器とを認識させ、前記第1操作指示内容、前記第1入力機器、および前記第1操作指示情報よりも前に入力された第2操作指示情報が示す第2操作指示内容に関する履歴情報に基づいて、前記第1入力機器とは異なる推奨入力機器を前記ユーザへ提示させる。ユーザが第1入力機器に適さない操作を行った場合に、第1入力機器とは異なる推奨入力機器をユーザへ提示することにより、操作対象機器に対してより簡単に所望の操作が可能である旨をユーザへ通知できる。また、ユーザは、提示された推奨入力機器を用いることにより、より簡単に所望の操作が可能となる。
【0028】
本発明のある実施形態に係る機器制御方法は、音声入力機器を含む複数の入力機器を用いて動作を制御可能な操作対象機器の動作を制御する機器制御方法であって、前記音声入力機器の周囲の環境音と、前記操作対象機器に対する操作指示内容を示す音声指示とを含む音声情報を取得し、前記音声情報に含まれる雑音レベルを算出し、前記音声情報に含まれる前記音声指示が示す前記操作指示内容を認識し、前記操作指示内容の種別を認識し、前記雑音レベルおよび前記種別に基づいて、前記音声入力機器とは異なる推奨入力機器をユーザへ提示する。雑音レベルに応じて音声入力機器とは異なる推奨入力機器をユーザに提示することにより、ユーザが意図した操作とは異なる操作が行われることを避けることができる。
【0029】
ある実施形態において、例えば、前記雑音レベル、前記種別、および操作指示内容の種別毎に推奨される入力機器を示す推奨入力機器情報に基づいて、前記ユーザへ提示する推奨入力機器を決定してもよい。これにより、雑音が発生している環境に適した推奨入力機器をユーザに提示することができる。
【0030】
ある実施形態において、例えば、前記雑音レベルが所定値よりも高い場合、前記推奨入力機器を前記ユーザへ提示してもよい。雑音レベルが所定値よりも高い場合に推奨入力機器をユーザに提示することにより、ユーザが意図した操作とは異なる操作が行われることを避けることができる。
【0031】
本発明のある実施形態に係る機器制御方法は、音声入力機器を含む複数の入力機器を用いて動作を制御可能な操作対象機器の動作を制御する機器制御方法であって、前記操作対象機器に対する操作指示内容を含む音声情報を取得し、前記音声情報に含まれる前記操作指示内容を認識し、前記操作指示内容の種別を認識し、認識した前記操作指示内容の尤度を算出し、前記尤度および前記種別に基づいて、前記音声入力機器とは異なる推奨入力機器をユーザへ提示する。尤度に応じて音声入力機器とは異なる推奨入力機器をユーザに提示することにより、ユーザが意図した操作とは異なる操作が行われることを避けることができる。
【0032】
ある実施形態において、例えば、前記尤度、前記種別、および操作指示内容の種別毎に推奨される入力機器を示す推奨入力機器情報に基づいて、前記ユーザへ提示する推奨入力機器を決定してもよい。これにより、音声入力では尤度が小さくなる条件下に適した推奨入力機器をユーザに提示することができる。
【0033】
ある実施形態において、例えば、前記尤度が所定値よりも小さい場合、前記推奨入力機器を前記ユーザへ提示してもよい。尤度が所定値よりも小さい場合に推奨入力機器をユーザに提示することにより、ユーザが意図した操作とは異なる操作が行われることを避けることができる。
【0034】
以下、実施形態について、図面を参照しながら説明する。
【0035】
以下で説明する実施形態は、いずれも一具体例を示すものである。以下の実施形態で示される数値、形状、構成要素、ステップ、ステップの順序などは一例であり、本開示の技術を限定するものではない。また、以下の実施形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また全ての実施形態において、各々の内容を組み合わせることも出来る。
【0036】
(提供するサービスの全体像)
まず、本実施形態における情報管理システムが提供するサービスの全体像について説明する。
【0037】
図25(A)は、本実施形態における情報管理システムが提供するサービスの全体像を示す図である。情報管理システムは、グループ600、データセンタ運営会社610およびサービスプロバイダ620を備える。
【0038】
グループ600は、例えば企業、団体又は家庭等であり、その規模を問わない。グループ600は、第1の機器および第2の機器を含む複数の機器601およびホームゲートウェイ602を備える。複数の機器601は、インターネットと接続可能な機器(例えば、スマートフォン、パーソナルコンピュータ(PC)又はテレビ等)、およびそれ自身ではインターネットと接続不可能な機器(例えば、照明、洗濯機又は冷蔵庫等)を含む。複数の機器601は、それ自身ではインターネットと接続不可能であっても、ホームゲートウェイ602を介してインターネットと接続可能となる機器を含んでもよい。また、ユーザ6は、グループ600内の複数の機器601を使用する。
【0039】
データセンタ運営会社610は、クラウドサーバ611を備える。クラウドサーバ611は、インターネットを介して様々な機器と連携する仮想化サーバである。クラウドサーバ611は、主に通常のデータベース管理ツール等で扱うことが困難な巨大なデータ(ビッグデータ)等を管理する。データセンタ運営会社610は、データの管理、クラウドサーバ611の管理、およびそれらを行うデータセンタの運営等を行っている。データセンタ運営会社610が行っている役務の詳細については後述する。
【0040】
ここで、データセンタ運営会社610は、データの管理又はクラウドサーバ611の管理のみを行っている会社に限らない。例えば、
図25(B)に示すように、複数の機器601のうちの一つの機器を開発又は製造している機器メーカが、データの管理又はクラウドサーバ611の管理等を行っている場合は、機器メーカがデータセンタ運営会社610に該当する。また、データセンタ運営会社610は一つの会社に限らない。例えば、
図25(C)に示すように、機器メーカおよび管理会社が共同又は分担してデータの管理又はクラウドサーバ611の管理を行っている場合は、両者又はいずれか一方がデータセンタ運営会社610に該当する。
【0041】
サービスプロバイダ620は、サーバ621を備える。ここで言うサーバ621とは、その規模は問わず、例えば、個人用PC内のメモリ等も含む。また、サービスプロバイダ620がサーバ621を備えていない場合もある。
【0042】
なお、上記の情報管理システムにおいて、ホームゲートウェイ602は必須ではない。例えば、クラウドサーバ611が全てのデータ管理を行っている場合等は、ホームゲートウェイ602は不要となる。また、家庭内の全ての機器がインターネットに接続されている場合のように、それ自身ではインターネットと接続不可能な機器は存在しない場合もある。
【0043】
次に、上記の情報管理システムにおける情報の流れを説明する。
【0044】
まず、グループ600の第1の機器又は第2の機器は、各ログ情報をデータセンタ運営会社610のクラウドサーバ611にそれぞれ送信する。クラウドサーバ611は、第1の機器又は第2の機器のログ情報を集積する(
図25(A)の矢印631)。ここで、ログ情報とは、複数の機器601の例えば運転状況又は動作日時等を示す情報である。例えば、ログ情報は、テレビの視聴履歴、レコーダーの録画予約情報、洗濯機の運転日時、洗濯物の量、冷蔵庫の開閉日時、又は冷蔵庫の開閉回数などを含むが、これらの情報に限らず、種々の機器から取得が可能な種々の情報を含んでもよい。なお、ログ情報は、インターネットを介して複数の機器601自体から直接クラウドサーバ611に提供されてもよい。また、ログ情報は、複数の機器601から一旦ホームゲートウェイ602に集積され、ホームゲートウェイ602からクラウドサーバ611に提供されてもよい。
【0045】
次に、データセンタ運営会社610のクラウドサーバ611は、集積したログ情報を一定の単位でサービスプロバイダ620に提供する。ここで、一定の単位とは、データセンタ運営会社610が集積した情報を整理してサービスプロバイダ620に提供することの出来る単位でもよいし、サービスプロバイダ620が要求する単位でもよい。また、一定の単位で提供するとしているが、一定の単位でなくてもよく、状況に応じて提供する情報量が変化してもよい。ログ情報は、必要に応じてサービスプロバイダ620が保有するサーバ621に保存される(
図25(A)の矢印632)。
【0046】
そして、サービスプロバイダ620は、ログ情報をユーザに提供するサービスに適合する情報に整理し、ユーザに提供する。情報が提供されるユーザは、複数の機器601を使用するユーザ6でもよいし、外部のユーザ7でもよい。ユーザ6,7への情報提供方法としては、例えば、サービスプロバイダ620から直接ユーザ6,7へ情報が提供されてもよい(
図25(A)の矢印633,634)。また、ユーザ6への情報提供方法としては、例えば、データセンタ運営会社610のクラウドサーバ611を再度経由して、ユーザ6に情報が提供されてもよい(
図25(A)の矢印635,636)。また、データセンタ運営会社610のクラウドサーバ611は、ログ情報をユーザに提供するサービスに適合する情報に整理し、サービスプロバイダ620に提供してもよい。
【0047】
なお、ユーザ6は、ユーザ7と異なっていても同一であってもよい。
【0048】
図1は、実施形態における音声操作システムの全体像を示す図である。
【0049】
図1に示すように、本実施形態の音声操作システムは、音声入力装置1、サーバ2、操作対象機器3、入力機器4、ネットワーク5を備えている。音声入力装置1は、ユーザの発話による音声入力を取得し、取得した音声入力をサーバ2へ送信する。サーバ2は、音声入力装置1、操作対象機器3、入力機器4の各々とデータの送受信を行う。操作対象機器3は、サーバ2から受信した機器操作コマンドが示す動作を実行し、音声入力以外に機器操作に適した推奨入力機器があるか否かの判定を行う。入力機器4は、ユーザからの入力情報の受付と、入力機器の位置情報を送信する。ネットワーク5は、音声入力装置1、サーバ2、操作対象機器3、入力機器4を、例えば、有線LAN、無線LAN、Bluetooth(登録商標)などの通信方法で接続している。
【0050】
操作対象機器3は、音声入力装置1を含む複数の入力機器を用いて動作を制御可能な電気機器であり、例えばテレビ、レコーダー、エアコン、照明機器、オーディオ機器、電話機、ドアホン等である。
【0051】
なお、本実施形態において、音声入力装置1もしくはサーバ2のどちらかを操作対象機器3に組み込んでもよいし、あるいは、音声入力装置1とサーバ2の両方を操作対象機器3に組み込んでいてもよい。
【0052】
図2は、本実施形態に係る音声入力装置1の具体的な構成要素の例を示すブロック図である。
図2に示されるように音声入力装置1は、音声取得部101、音声検出部102、音声区間切り出し部103、特徴量算出部104、通信部105を含む。音声取得部101は音声の検出動作をする。音声検出部102は、音声を検出したか否かを判定する。取得した音声信号には雑音などが含まれているため、音声区間切り出し部103は、ユーザが入力した音声が存在する区間を検出し、検出した音声区間を切り出す。特徴量算出部104は、切り出された音声区間に基づいて音声特徴量を算出する。通信部105は、特徴量算出部104によって算出された音声特徴量を、サーバ2へ送信する。
【0053】
音声入力装置1は、例えば、操作対象機器3に内蔵もしくは接続されているマイク、操作対象機器3などに付属されたリモコンに内蔵されているマイク、携帯通信端末に内蔵もしくは接続されているマイク、家の中に設置されている収音マイクなどである。
【0054】
音声入力装置1の構成要素の少なくとも一部は、マイクロコンピュータとメモリとによって実現され得る。例えば、音声検出部102、音声区間切り出し部103、特徴量算出部104は、マイクロコンピュータとメモリとによって実現され得る。この場合、音声入力装置1は、マイクロコンピュータとメモリとを備え、マイクロコンピュータはメモリから読み出したコンピュータプログラムに基づいて動作し、上記の各処理を実行する。
【0055】
図3は、本実施形態によるサーバ2の具体的な構成要素の例を示すブロック図である。
図3に示されるようにサーバ2は、通信部201、音声認識部202、音声認識辞書格納部203、機器操作判定部204、機器操作判定テーブル205を含む。通信部201は、音声入力装置1の通信部105から送信された音声特徴量を受信するとともに、操作対象機器3へ操作コマンドおよび入力機器IDを送信する。音声認識部202は、音声認識辞書格納部203の情報をもとに、受信した音声特徴量を文字列・単語列に変換する。音声認識辞書格納部203には、例えば、
図8のように操作対象機器3に入力される可能性がある発話文が格納されている。例えば、「電源ON」、「音量大きく」などの機器操作の発話文や、「おはよう」、「天気教えて」などの雑談の発話文が格納されている。
図8に示すテーブルの詳細は後述する。
【0056】
機器操作判定部204は、機器操作判定テーブル205をもとに音声認識結果から操作コマンドを判定する。機器操作判定テーブル205には、
図9(A)、
図9(B)のように操作コマンドと入力機器IDが記載されている。例えば、テレビの電源操作の操作コマンドはC001、テレビの音量調節の操作コマンドはC002、音声入力装置を用いた音声入力はI001、リモコンを用いたボタン操作はI002といった情報が記載されている。
図9(A)、
図9(B)に示すテーブルの詳細は後述する。
【0057】
サーバ2の構成要素の少なくとも一部は、マイクロコンピュータとメモリとによって実現され得る。例えば、音声認識部202、音声認識辞書格納部203、機器操作判定部204、機器操作判定テーブル205は、マイクロコンピュータとメモリとによって実現され得る。この場合、サーバ2は、マイクロコンピュータとメモリとを備え、マイクロコンピュータはメモリから読み出したコンピュータプログラムに基づいて動作し、上記の各処理を実行する。
【0058】
図4は、本実施形態による操作対象機器3の具体的な構成要素の例を示すブロック図である。
図4に示されるように操作対象機器3は、通信部301、機器制御部302、連続操作判定部303、操作コマンド格納テーブル304、推奨入力機器判定部305、推奨入力機器判定テーブル306、推奨入力機器位置判定部307、操作方法表示部308を含む。
【0059】
通信部301は、サーバ2から送信された操作コマンドおよび入力機器IDを受信する。機器制御部302は、受信した操作コマンドおよび入力機器IDに基づいて、操作対象機器3に対する操作コマンド内容と、その操作コマンド内容に関する操作をユーザから受け付けた入力機器とを認識する。機器制御部302は、受信した操作コマンドに応じて操作対象機器3の動作を制御する。連続操作判定部303は、操作コマンド格納テーブル304を用いて連続した入力操作が行われたか否かの判定を行う。操作コマンド格納テーブル304は、
図11Aのようにユーザが入力した操作コマンドを格納する。ユーザが入力した操作コマンドの履歴を操作コマンド格納テーブル304に格納することで、ユーザが連続した操作入力を行ったか判定する。
図11Aに示す履歴情報の詳細は後述する。
【0060】
推奨入力機器判定部305は、推奨入力機器判定テーブル306をもとに推奨入力機器の判定を行う。推奨入力機器判定テーブル306には、
図13(A)、
図13(B)のように操作コマンド毎に推奨される入力機器が記載されている。例えば、操作コマンドC001に対しては、音声入力を用いる音声入力装置を示す推奨入力機器ID“UI001”が記載されている。
図13(A)、
図13(B)に示すテーブルの詳細は後述する。
【0061】
推奨入力機器位置判定部307は、位置情報取得部401の情報をもとに推奨入力機器の位置を判定し、ユーザに推奨入力機器の位置の提示を行うか判定を行う。操作方法表示部308は、推奨入力機器判定部305と推奨入力機器位置判定部307の判定結果をもとに、推奨入力機器と推奨入力機器の位置をユーザに提示する。
【0062】
操作対象機器3の構成要素の少なくとも一部は、マイクロコンピュータとメモリとによって実現され得る。例えば、機器制御部302、連続操作判定部303、操作コマンド格納テーブル304、推奨入力機器判定部305、推奨入力機器判定テーブル306、推奨入力機器位置判定部307は、マイクロコンピュータとメモリとによって実現され得る。この場合、操作対象機器3は、マイクロコンピュータとメモリとを備え、マイクロコンピュータはメモリから読み出したコンピュータプログラムに基づいて動作し、上記の各処理を実行する。
【0063】
図5は、本実施形態による入力機器4の具体的な構成要素の例を示すブロック図である。
図5に示されるように入力機器4は、位置情報取得部401、入力部402、通信部403を含む。位置情報取得部401は、入力機器4がユーザに対してどこにあるのかの位置を取得する。入力部402は、ユーザがボタン入力やスマートフォン画面でタッチ入力を行った際の入力情報を取得する。通信部403は、位置情報取得部401と入力部402の情報をサーバ2、もしくは操作対象機器3に送信する。なお、入力機器4としては、ボタン入力、タッチパネルを用いた入力、ジェスチャー入力などを受け付ける入力機器が考えられるが、操作対象機器3へ動作指示を送信するものであれば、音声入力以外のどのような入力方法を用いてもよい。
【0064】
入力機器4の構成要素の少なくとも一部は、マイクロコンピュータとメモリとによって実現され得る。例えば、位置情報取得部401、入力部402は、マイクロコンピュータとメモリとによって実現され得る。この場合、入力機器4は、マイクロコンピュータとメモリとを備え、マイクロコンピュータはメモリから読み出したコンピュータプログラムに基づいて動作し、上記の各処理を実行する。
【0065】
図6は、本実施形態に係る音声操作システムのシーケンスを示す図である。
【0066】
まず、ステップS001において、音声入力装置1で算出された音声特徴量を、音声入力装置1からサーバ2に送信する。ステップS002において、音声認識辞書格納部203の音声認識辞書の情報をもとに、入力された音声特徴量を文字列・単語列に変換する音声認識処理を行う。ステップS003において、ユーザの意図する操作対象機器種別および機器操作内容を判定し、対応する操作コマンドおよび入力機器IDを操作対象機器3に送信する。ステップS003の処理の詳細は後述する。
【0067】
ステップS004において、ステップS003で送信された操作コマンドが実際に操作可能か判定する。例えば、テレビの電源がOFFになっている状態で音量調整が操作コマンドとして送られた場合、機器操作をすることは不可能である。
【0068】
ステップS005において、ステップS004で実行された機器操作が、一回前の機器操作と同じ機器操作であるか判定を行う。ステップS005の処理の詳細は後述する。ステップS005で連続した操作が行われていると判定された場合、ステップS006の処理を実行する。
【0069】
ステップS006において、ユーザが入力した操作コマンドに対し、音声入力よりも推奨される入力機器4が他にあるか判定を行う。ステップS006の処理の詳細は後述する。音声入力よりも推奨される入力機器4があった場合、ステップS007の処理を実行する。
【0070】
ステップS007において、ステップS006で推奨された入力機器4の位置の判定を行う。判定方法としては、例えば、入力機器4内に圧力センサがあり圧力の有無によりユーザが所持しているかを判定してもよい。また例えば、入力機器4そのものにGPS、RFID、赤外線IDのような位置センサを搭載することで位置の判定を行ってもよい。無線LANやBluetoothなどの通信電波の送受情報を利用した位置の判定を行っても良い。操作対象機器3に入力機器4と同等の位置取得部が搭載されていた場合は、入力機器4と操作対象機器3との相対位置を判定してもよい。また、操作対象機器3にカメラが搭載されていた場合は、カメラ情報を利用してユーザの位置を推定し、入力機器4とユーザと操作対象機器3の相対位置を判定してもよい。
【0071】
なお、ユーザ、入力機器4、操作対象機器3の相対位置は、使用される機器や操作コマンドによって適切なものを選択してもよい。ステップS008において、ステップS007で取得された推奨入力機器位置情報に応じて、操作コマンドに最適な推奨入力機器の提示をユーザに行う。ステップS008の処理の詳細は後述する。
【0072】
図7は、本実施形態に係る機器操作判定処理の手順を示すフローチャートである。機器操作判定処理では、音声認識結果に基づいて、ユーザの発話による入力音声に操作対象機器3への操作指示が含まれているか否かを判定する。
【0073】
ステップS301において、サーバ2の音声認識結果である文字列・単語列を受信する。ステップS302において、音声認識結果に機器操作を意図する内容を含むか否かを判定する。判定方法としては、音声認識結果に「テレビ」、「エアコン」などの家電の名称や、「電源」、「音を大きく」などの機器の操作を意図する単語が含まれるか否かで判定する。音声認識結果に機器操作を意図する内容が含まれていた場合はステップS303に進み、機器操作を意図していない場合はステップS305の処理に進む。
【0074】
ステップS303において、
図8の機器操作判定テーブルをもとに、音声認識結果に応じた操作コマンドを呼び出す。ステップS304において、ステップS303で呼び出された操作コマンドと、
図9(B)の入力機器IDテーブルをもとに、音声入力装置を示す入力機器IDを操作対象機器3に送信する。
【0075】
ステップS305においては、音声認識結果に応じて操作対象機器の操作以外の機能を呼び出して実行する。例えば、ユーザの発話によって「天気教えて」という音声が入力された場合、音声操作システムは、機器操作機能ではなくQ&A機能を呼び出し、ユーザの「天気教えて」という発話に対して、例えば、「どの地域の天気を知りたいですか?」、「本日の天気は晴れです」などと応答する。
【0076】
図8は、本実施形態に係る音声認識結果から機器の操作コマンドを判定するための機器操作判定テーブルを示す図である。機器操作判定テーブルは、音声認識結果に基づいて操作コマンドの判定に用いられる。
【0077】
機器操作判定テーブルには、認識された音声認識結果と、その音声認識結果に対応した操作コマンドが記録されている。機器操作判定テーブルには、表の横方向(行方向)に音声認識結果と、音声認識結果に対応した操作コマンドが記録されている。なお、機器操作判定テーブルは操作対象機器3ごとに作成してもよい。これら操作コマンドは、ユーザが入力した操作指示内容の種別を表している。
【0078】
たとえば音声入力機器1に「電源をつけて」という音声が入力された場合は、
図8の機器操作判定テーブルから操作コマンド「C001」が呼び出される。このとき、1つの操作コマンドに対して複数の音声認識結果が対応付けられていてもよい。これは、ユーザが音声入力によって機器の電源を入れる指示を行う際に、例えば、「電源ON」と発話する場合もあれば、「電源を点けて」と発話する場合もあり、同じ操作を意図していても発話表現が異なることが想定されるからである。
【0079】
図9(A)は、操作コマンドテーブルを示す図であり、
図9(B)は、入力機器IDテーブルを示す図である。
【0080】
図9(A)に示す操作コマンドテーブルには横方向(行方向)に操作コマンドと、そのコマンドに対応した操作対象機器種別と機器操作が記録されている。
図9(B)に示す入力機器IDテーブルには横方向(行方向)に入力機器IDと、そのコマンドに対応した入力機器と入力手段が記録されている。
【0081】
たとえば音声入力機器1に「電源をつけて」という音声が入力された場合は、操作コマンドC001が呼び出されるとともに、入力機器IDとしてI001が呼び出される。なお、操作コマンドとしては「音量+1」「音量−1」のように細かな調整を含んでいるとしてもよい。
【0082】
図10は、本実施形態に係る連続操作判定処理の手順を示すフローチャートである。連続操作判定処理では、ユーザが連続して同じ操作コマンドを実行しているか否かを判定する。
【0083】
ステップS501において、連続操作判定部303は、ステップS304で送信された操作コマンドを、
図11Aに示す操作コマンド格納テーブルの操作回数N002に格納する。ステップS502において、操作コマンド格納テーブルの操作回数N001に操作コマンドが格納されているか否かを判定する。操作回数N001に操作コマンドが格納されていた場合はステップS503の処理に進み、操作回数N001に何も操作コマンドが格納されていなかった場合はステップS506の処理に進む。
【0084】
ステップS503において、操作回数N001と操作回数N002に格納されている操作コマンドが一致した場合はステップS504の処理に進む。操作回数N001と操作回数N002に格納されている操作コマンドが不一致だった場合はステップS506の処理に進む。
【0085】
ステップS504において、連続した操作であることが確定したため、操作回数N001と操作回数N002に格納されている操作コマンドの情報を破棄し、ステップS505の処理に進む。ステップS505において、推奨入力機器提示判定処理の実行を行い、連続操作判定処理を終了させる。
【0086】
ステップS506の処理が実行されるときは、ステップS502とステップS503で連続した操作ではないことが判定された場合となる。そのため、操作回数N002の操作コマンドを操作回数N001に格納する。
【0087】
連続操作判定処理を行うことで、操作コマンド毎に設定された推奨入力機器以外の入力機器を用いてユーザが連続した操作を行った場合にのみ、ユーザに対して推奨入力機器が提示される。これによって、例えば、テレビ視聴中のユーザが「音量を1段階上げて」と、音声入力機器以外の入力機器が推奨入力機器として設定されている操作を1度だけ音声入力機器を用いて実行した場合に、例えば、「音量調整にはリモコンの使用がおすすめですよ」などのメッセージが画面上に表示されてユーザのテレビ視聴を妨げることがない。そのため、推奨入力機器以外の入力機器を用いた操作を行う度にメッセージが表示されることがないので、ユーザの煩わしさが低減される。また、推奨入力機器を提示することにより、ユーザは操作コマンド毎の入力機器の使い分けを学習することができる。
【0088】
例えば、ユーザが一回目に「電源ON」と入力した場合は、ステップS501で操作回数N002に操作コマンドC001が格納される。次に、ステップS502で操作回数N001には操作コマンドが格納されていないと判定される。そのため、ステップS506に進み、操作回数N002に格納されていた操作コマンドC001を操作回数N001に格納する。
【0089】
続けて、ユーザが「音量大きく」と入力した場合、ステップS501で操作回数N002に操作コマンドC002が格納される。次に、ステップS502では、操作回数N001にC001が格納されているためステップS503の処理に進む。ステップS503では操作回数N001にC001、操作回数N002にC002が格納されているため、操作回数N001と操作回数N002は不一致となる。したがって、ステップS506に進み、操作回数N002に格納されているC002を操作回数N001に格納する。
【0090】
続けて、ユーザが「音量大きくして」と連続して入力した場合は、ステップS503までは二回目の音声入力時と同じ動作を行う。ステップS503では、操作回数N001にC002、操作回数N002にC002が格納されているため、操作回数N001と操作回数N002が一致しステップS504の処理に進む。ステップS504で操作回数N001と操作回数N002の両方に格納されているC002を破棄する。ステップS505の処理に進むことで、推奨入力機器提示判定処理を実行し、連続操作判定処理を終了させる。
【0091】
図11Aは、本実施形態に係る操作コマンド格納テーブルの一例を示す図である。操作コマンド格納テーブルには、現在の操作コマンドよりも前に受信した操作コマンドを示す履歴情報が記録されており、操作コマンドからユーザが入力した操作指示内容の種別を認識することができる。操作コマンド格納テーブルは、連続操作判定処理に用いられる。
【0092】
図11Aに示す操作コマンド格納テーブルには、横方向(行方向)に操作回数と操作コマンドが記録されている。ステップS503において、格納されている操作回数N001と操作回数N002の操作コマンドが一致していた場合は、操作回数N001と操作回数N002に格納している操作コマンドを破棄する。ステップS503において、格納されている操作回数N001と操作回数N002が不一致だった場合は、操作回数N002に格納されている操作コマンドを操作回数N001に格納する。
【0093】
なお、操作コマンド格納テーブルは、操作コマンドそれぞれが入力された時刻を示す時刻情報を含んでいてもよい。
図11Bは、そのような時刻情報を含む操作コマンド格納テーブルを示す図である。このように、操作コマンド格納テーブルが時刻情報を含む場合、比較する操作コマンドは、最新の操作コマンドと、その最新の操作コマンドが入力された時刻から所定時間前までにおいて入力された操作コマンドとであってもよい。また、比較する操作コマンドは、最新の操作コマンドと、その最新の操作コマンドの直前に入力された操作コマンドであってもよい。
図11A、
図11Bでは、格納しておく操作回数が2回の例を示していたが、格納しておく操作回数は3回以上であってもよい。
【0094】
図12は、本実施形態に係る推奨入力機器提示判定処理の手順を示すフローチャートである。ユーザが音声入力装置を用いて音声による機器操作を行った場合、当該機器操作を行うにあたって、音声入力装置以外の入力機器が推奨入力機器として設定されているか否かを判断する。
【0095】
ステップS601において、ステップS304で送信された入力機器IDを受信する。ステップS602において、ユーザが音声入力で機器操作を行ったか判定するため、入力機器IDが音声入力を示すI001と一致するか否かを判定する。入力機器IDがI001と一致した場合はステップS603の処理に進み、入力機器IDがI001と一致しなかった場合は処理を終了する。ステップS603では、
図13(A)に示す推奨入力機器判定テーブル、
図13(B)に示す推奨入力機器IDの情報を参照し、ユーザが行った機器操作の操作コマンドに対する推奨入力機器IDが音声入力装置を示すか、またはそれ以外の入力機器を示すかを判定する。
【0096】
推奨入力機器IDが音声入力装置を示すUI001と一致した場合は、ユーザが行った機器操作に対して音声入力装置を用いた音声による入力が適切であり、ユーザに他の入力機器を推薦する必要がないと判断できる。他の入力機器の推薦が必要ないと判断された後は、推奨入力機器位置判定処理を実行せず、推奨入力機器提示判定処理を終了する。
【0097】
一方で、推奨入力機器IDが音声入力装置を示すUI001と不一致であった場合は、ステップS604の処理に進む。ステップS604において、ユーザが行った機器操作には音声入力装置以外に推奨される入力機器があると判定されたため、推奨入力機器位置判定処理を実行する。
【0098】
例えば、ユーザが音声で「音量を大きく」という操作コマンドC002を2回連続で入力した場合、ステップS304では音声入力であることを示す入力機器IDI001を受信する。ステップS602では、受信した入力機器IDがI001と一致するためステップS603の処理に進む。ステップS603では、
図13(A)に示す推奨入力機器判定テーブルをもとに、C002が音声よりもリモコンやタッチパネルでの操作の方が推奨されているため、ステップS604の処理に進み推奨入力機器位置判定処理を実行する。
【0099】
例えば、音声入力装置、リモコン、スマートフォンなどの複数の入力機器でのテレビの機器操作を行う場合、番組検索時のキーワード入力は音声で入力した方が簡易であるが、ユーザの求める音量の調整には、リモコンのようにフィードバックの早い機器で操作した方が簡易である。しかしながら、複数の入力機器の使い分けができないユーザは、音声で音量の調整を行おうとすることで、何度も「音量を上げて」「音量を下げて」と入力することとなり、音声入力に対して煩わしさを感じる。そこで、推奨入力機器提示判定処理を行うことで、音声入力装置以外の入力機器が推奨入力機器として設定されていた場合、ユーザに推奨入力機器の提示を行う。推奨入力機器の提示を行うことで、ユーザは入力した操作コマンドが音声入力に適しているか否かを知ることができる。そのため、音声入力に適した操作コマンドと、それ以外の入力機器の使い分けをユーザが学習することができ、ユーザは推奨される複数の入力機器の使い分け、複数入力機器に対する煩わしさを低減することが可能となる。
【0100】
図13(A)は、推奨入力機器判定テーブルの一例を示す図であり、
図13(B)は、推奨入力機器IDテーブルの一例を示す図である。
【0101】
推奨入力機器判定テーブルには横方向(行方向)に操作コマンドと、そのコマンドに対応した推奨入力機器IDが記録されている。推奨入力機器IDテーブルには横方向(行方向)に推奨入力機器IDと、そのコマンドに対応した入力機器と入力手段が記録されている。
【0102】
図14は、本実施形態に係る推奨入力機器提示処理の手順を示すフローチャートである。ユーザが音声入力装置を用いて音声による機器操作を行った場合、推奨入力機器および推奨入力機器の位置情報を用いて、ユーザの近くにある推奨入力機器をユーザに提示する。
【0103】
ステップS801において、ステップS006とステップS007から送信される推奨入力機器IDと推奨入力機器位置情報を受信する。推奨入力機器IDと推奨入力機器位置情報を受信できなかった場合は受信できるまでステップS801を繰り返す。ステップS802において、ステップS801で受信した推奨入力機器IDが1つだった場合は、ステップS804の処理に進む。一方、ステップS801で受信した推奨入力機器IDが複数あった場合は、ステップS803の処理に進んだのち、ステップS804の処理に進む。ステップS803において、複数の推奨入力機器IDのうち、よりユーザに近い推奨入力機器を判定し、ユーザに提示する推奨入力機器を決定する。なお、ステップS802、ステップS803の処理を実行せずに複数の推奨入力機器をすべてユーザに提示してもよい。
【0104】
ステップS804では、音声入力以外の推奨される入力機器について、例えば、
図16または
図17に示す方法を用いてユーザに提示する。
図16および
図17の詳細は後述する。
【0105】
ステップS805では、
図15(A)に示すテーブルに記載されているユーザと推奨入力機器の位置に応じた推奨入力機器の位置の提示の有無、提示方法の情報をもとに、ユーザへの推奨入力機器の位置情報の提示方法の判定を行う。ユーザとの距離が最も近い場合は、ユーザが手に推奨入力機器を所持している、もしくはユーザの手の届く範囲に推奨入力機器があると考えられるので、推奨入力機器の位置情報の提示を行わない。一方で、ユーザとの距離が離れている場合は、ステップS806の処理に進み、
図15(A)のユーザと推奨入力機器の距離に応じた提示方法IDと、
図15(B)の提示方法IDに対応した提示機器、提示手段をもとにして、
図18(A)、(B)、(C)のようにユーザに推奨入力機器の位置情報を提示する。なお、提示機器や提示手段はリモコン、テレビ、音声、画面表示に限定されることなく種々の形態をとり得る。
【0106】
例えば、ユーザの入力した操作コマンドに対して、リモコンとスマートフォンでの操作が推奨された場合は、ステップS801でそれぞれの推奨入力機器IDと機器位置情報を受信する。ステップS802では推奨入力機器IDがリモコンとスマートフォンの2種類あるため、ステップS803の処理に進む。リモコンとユーザとの距離が50cm、スマートフォンとユーザとの距離が80cmの場合、ステップS803ではリモコンの方がスマートフォンよりもユーザに近いと判定される。ステップS804では、ステップS803の判定を元に、ユーザに「リモコン操作のほうがおすすめですよ」などの、推奨入力機器についての情報提示を行う。ステップS805では、ユーザとリモコンの距離が50cm離れているためステップS806に進み、リモコンからの音でユーザに対して推奨入力機器の位置情報の提示を行う。
【0107】
ユーザに対して推奨入力機器の提示を行う際に、ユーザの位置から遠く離れた推奨入力機器を提示した場合、ユーザに推奨入力機器を探すまたは取得するために移動するという手間が生じ、ユーザは推奨入力機器を使用することを煩雑に感じる。そこで、推奨入力機器提示処理において、例えば、推奨入力機器が複数設定されている場合、ユーザおよび複数の推奨入力機器の位置情報に基づいて、複数の推奨入力機器の中でユーザの位置から最も近い推奨入力機器をユーザへ提示する。これによって、ユーザは複数の推奨入力機器がどれも自分の位置から離れた場所にあったとしても、推奨入力機器の場所を知ることができる。ユーザは複数の推奨入力機器の中から自分に最も近い位置にある推奨入力機器が提示されることになり、ユーザが提示された推奨入力機器を使用する場合に、自分の位置から遠く離れた推奨入力機器を探すまたは取得するために移動するといった手間を省くことができる。また、推奨入力機器をユーザへ提示することによって、ユーザに対して音声入力装置とリモコン等の複数の入力機器の使い分けを促進させることが可能となる。
【0108】
図15(A)は、提示方法判定テーブルの一例を示す図であり、
図15(B)は、提示方法IDテーブルの一例を示す図である。
【0109】
提示方法判定テーブルには横方向(行方向)にユーザと推奨入力機器の距離D、推奨入力機器の位置情報の提示を行うか否かの情報、位置情報を提示する場合の提示方法IDが記録されている。なお、
図15(A)では0.3mと1.0mで位置情報の提示の有無と提示方法を変更しているが、この距離に限定されるわけではない。また、
図15(A)ではユーザと推奨入力機器の距離を3段階に分けて位置情報の提示の有無と提示方法を変更しているが、ユーザと推奨入力機器の距離を2段階に分けて位置情報の提示の有無を判定してもよいし、4段階以上に細かく分けて位置情報の提示の有無と提示方法の変更を行っても良い。提示方法判定テーブルには横方向(行方向)に提示方法ID、提示機器、提示手段が記録されている。記録されている情報としては、例えば、
図16(A)、
図16(B)、
図17(A)、
図17(B)、
図18(A)、
図18(B)、
図18(C)に示した方法などが記録されている。
【0110】
図16(A)、
図16(B)はそれぞれ、本実施形態に係る音声操作システムにおいて、ユーザに推奨入力機器を提示するUIの一例を示す図である。音声入力よりも機器操作の入力に適した推奨入力機器があった場合、ユーザに推奨入力機器を提示するUIの一例を示している。この例では、操作対象機器3であるテレビの音量の変更について、音声入力で連続操作しているユーザに対して、リモコンでの操作を推薦する場合を示している。
図16(A)に示すように、テレビ上で「リモコン操作がおすすめです」という表示画面を表示するとしてもよい。また、
図16(B)に示すように、例えば、テレビまたはリモコンに内蔵のスピーカから「リモコン操作がおすすめです」との音声を発するとしてもよい。また、「リモコン操作がおすすめです」といった具体的な内容を示すのではなく、他に推奨入力機器があることを新着情報としてユーザに提示し、ユーザが必要とした場合にのみ詳細情報を提示してもよい。
【0111】
図17(A)、
図17(B)はそれぞれ、本実施形態に係る音声操作システムにおいて、ユーザに推奨入力機器の操作方法を具体的に提示する方法の一例を示す図である。音声入力よりも機器操作の入力に適した推奨入力機器があった場合に、ユーザに推奨入力機器の操作方法を具体的に提示する方法の一例を示している。例えば、テレビの音量変更機能を音声入力で連続操作しているユーザに対して、リモコンを用いたボタン操作を推薦する。
図17(A)に示すようにリモコンの音量調整ボタンを光らせるとしてもよい。また、
図17(B)に示すように、テレビ画面上にリモコン画像を表示させて、表示したリモコン画像中の音量調整ボタンに対応する部分を強調表示してもよい。これによって、ユーザは、音声入力を用いて操作していた機能を、リモコンを用いて操作する場合にどのボタンを押せば音声入力を用いた操作と同様に操作可能であるかを把握できる。
【0112】
図18(A)、
図18(B)、
図18(C)はそれぞれ、本実施形態に係る音声操作システムにおいて、ユーザに推奨入力機器の位置を提示する方法の一例を示す図である。音声入力よりも機器操作の入力に適した推奨入力機器があった場合に、ユーザに推奨入力機器の位置を提示する方法の一例を示している。例えば、
図18(A)のようにリモコンそのものが光ることでリモコンの位置を強調させてもよい。また、
図18(B)のようにリモコンから音を出すことでユーザに位置を知らせるとしてもよい。
図18(C)のようにテレビ上に部屋の見取り図を提示することでリモコンの位置を提示してもよい。なお、リモコンの正確な位置を提示するわけではなく、リモコンを置いている可能性が高い範囲の提示、テレビやユーザに対してリモコンのある方向の提示などの提示方法を用いてもよい。
【0113】
以上の処理を具体的な例を用いて説明していく。例えば、ユーザがテレビに対して「音量を上げて」と発話を行った場合を考える。ユーザが発話した音声信号に対し、特徴量抽出処理S001を実行する。抽出した音声特徴量をもとに、音声認識処理S002で音声認識辞書格納部203の情報から受信した音声特徴量を文字列・単語列に変換する。変換した文字列・単語列をもとに、機器操作判定処理S003を実行することで、ユーザの発話は「音量調整」の操作を意図していると判定される。判定結果に基づき、機器操作処理S004を実行することで、テレビの音量を大きくする。その後、連続操作判定処理S005を実行する。音量調整の操作コマンドが連続して操作されたか否か判定した結果、1回目の音量調整の操作コマンドであると判定され、操作コマンド格納テーブル304に操作コマンドを格納し処理を終了する。
【0114】
次に、例えば、1回の音量調整では不十分だと感じたユーザは、テレビに対して再度「音量を上げて」と発話を行う。連続操作判定処理S005までは1回目の発話と同様の処理を実行する。操作コマンド格納テーブル304の操作回数N001に音量調整の操作コマンドが格納されているため、ユーザは2回連続で音量調整の操作コマンドを入力したと判定される。ユーザが連続して同じ操作コマンドを入力したと判定されたため、推奨入力機器提示判定処理S006を実行し、音量調整を行う際に推奨される入力機器が音声入力装置以外にあるか否かの判定を行う。音量調整の操作コマンドに対しては音声入力よりもリモコンかスマートフォンでの操作が適していると判定されるため、推奨入力機器位置判定処理S007を実行する。推奨入力機器位置判定処理S007を実行した結果、例えば、ユーザとリモコンの距離が25cm、ユーザとスマートフォンの距離が50cm離れていると算出され、ユーザに提示すべき推奨入力機器はリモコンであると判定される。判定結果をもとに推奨入力機器提示処理S008を実行した結果、テレビからユーザに対して「リモコン操作がおすすめです」と音声で提示が行われ、推奨入力機器の提示を終了する。
【0115】
このような推奨入力機器の提示を通して、音量調整のように何度も「音量を上げて」「音量を下げて」と音声入力装置で入力が必要となる煩雑な操作に対して、リモコンのようにフィードバックの早い別の入力機器をユーザに提示することが可能となる。その結果、ユーザは音量調整を行う際はリモコンやスマートフォンが推奨されていると学習し、最終的にユーザ自身で操作毎に推奨される入力機器を選択することが可能となる。
【0116】
上記の例では、ユーザが音声により同じ操作コマンドを連続して入力した場合に、推奨入力機器提示判定処理を行った。次に、同じ操作コマンドが入力される頻度に応じて、推奨入力機器提示判定処理を行う処理を説明する。
【0117】
図19は、入力頻度判定処理の手順を示すフローチャートである。この例では、所定期間内に現在の操作コマンドと同じ種別の操作コマンドが入力された頻度を算出し、算出した入力頻度が所定値以上である場合に、推奨入力機器をユーザへ提示する。
【0118】
ステップS901において、ステップS304で送信された操作コマンドを、
図11Bに示すような時刻情報を含む操作コマンド格納テーブル(履歴情報)に格納する。
【0119】
ステップS902において、連続操作判定部303は、所定期間内に現在の操作コマンドと同じ種別の操作コマンドが入力された回数(入力頻度)を算出する。所定期間は任意であり、操作対象機器の種類に応じて、例えば、10秒、1分、30分、1時間または1日等に設定する。
図11Bの例では、1分の間に同じ種別の操作コマンドが2回入力されている。
【0120】
ステップS903において、連続操作判定部303は、入力頻度が所定値以上であるか判定する。所定値は任意の値であり、例えば入力回数2回を所定値とする。入力頻度が所定値以上である場合は、ステップS904において推奨入力機器提示判定処理を実行し、判定結果に応じて推奨入力機器をユーザへ提示する。例えば、音声入力装置以外の入力機器であるリモコンやスマートフォンを、推奨入力機器としてユーザへ提示する。入力頻度が所定値以上でない場合は、推奨入力機器提示判定処理を実行せずに処理を終了する。
【0121】
音声入力によるテレビの音量調整が短期間の間に複数回行われていた場合、推奨入力機器の提示を通して、音声入力による煩雑な操作に対して、リモコンのようにフィードバックの早い別の入力機器をユーザに提示することが可能となる。その結果、ユーザは音量調整を行う際はリモコンやスマートフォンが推奨されていると学習し、最終的にユーザ自身で操作毎に推奨される入力機器を選択することが可能となる。
【0122】
次に、操作コマンドに応じて変化した操作対象機器の動作内容を学習し、その学習した内容に応じて操作対象機器を制御する処理を説明する。
【0123】
図20は、学習処理の手順を示すフローチャートである。この例では、操作コマンドに応じて変化した操作対象機器の動作内容を履歴情報として管理する。
【0124】
ステップS1001において、操作対象機器3の通信部301は操作コマンドを入力し、ステップS1002において、機器制御部302は、操作対象機器3の動作を制御する。例えば、テレビの音量が15のときに、ユーザから「音量を10上げて」という音声入力があったとき、機器制御部302はテレビの音量を10上げて、音量を25に設定する。そして、ステップS1003において、テレビの音量が15のときに音量を25に変更したという動作内容を履歴情報として記録する。動作内容は、履歴情報である操作コマンド格納テーブル304に記録してもよいし、操作コマンド格納テーブル304とは別に設けた履歴情報に記録してもよい。また、例えば、ユーザから「音量を25にして」という音声入力があったとき、機器制御部302はテレビの音量を25に設定する。そして、テレビの音量を25に変更したという動作内容を履歴情報として記録する。このように動作内容を蓄積することで、「音量を上げるときは、音量25に変更することが多い」という学習結果が得られる。そのような学習結果に応じて機器を制御することで、ユーザの好みに応じた機器の設定を行うことができる。また、音量の変化量のような具体的な数値の情報を履歴情報が含むことで、精度よくユーザの好みに応じた機器の設定を行うことができる。
【0125】
図21は、操作コマンドに対応した動作内容を判定する処理の手順を示すフローチャートである。
【0126】
ステップS1101において、通信部301は操作コマンドを入力する。ステップS1102において、機器制御部302は、音声入力に基づく操作コマンドに応じた機器操作が可能か判定する。例えば、「音量を10上げて」という音声入力があったときは、音量を上げる量が明確であるため機器操作が可能であり、ステップS1105において、テレビの音量を10上げる処理を行う。
【0127】
一方、「音量を上げて」という音声入力があったときは、音量を上げる量が不明であるため機器操作はできないと判断して、ステップS1103の処理に進む。
【0128】
ステップS1103において、「音量を上げて」というコマンドに対応した動作内容の履歴情報が蓄積されているか判定する。例えば、対応する動作内容が複数個蓄積されているか判定する。動作内容が蓄積されている場合、ステップS1105において、その動作内容に応じた機器操作を行う。例えば、音量を25に変更するという動作内容が蓄積されている場合、テレビの音量を25に設定する。
【0129】
一方、対応する動作内容の履歴情報が蓄積されていないと判定した場合、ステップS1104において推奨入力機器提示判定処理を実行し、判定結果に応じて推奨入力機器をユーザへ提示する。この場合は、ユーザは音声入力による音量調整を複数回行う可能性があるため、推奨入力機器の提示をすることで、音声入力による煩雑な操作を避けることができる。推奨入力機器としては、例えば、音声入力装置以外の入力機器であるリモコンやスマートフォンを提示する。
【0130】
図22は、操作コマンドに対応した動作内容を判定する処理の別の例を示すフローチャートである。
【0131】
ステップS1201において、通信部301は操作コマンドを入力する。ステップS1202において、機器制御部302は、音声入力に基づく操作コマンドが数値情報を含むか判定する。数値情報は、操作対象機器の動作を変化させる量を示す具体的な数値を示している。例えば、「音量を10上げて」という音声入力があったときは、音量を上げる量は10であるという数値があるため、ステップS1205において、テレビの音量を10上げる処理を行う。
【0132】
一方、「音量を上げて」という音声入力のように操作コマンドが数値情報を含まないときは、ステップS1203の処理に進む。ステップS1203において、条件に合う数値の履歴情報が蓄積されているか判定する。例えば、現在のテレビの音量は15であるという条件であって、テレビの音量が15のときは音量を10上げて25に変更する履歴情報が蓄積されている場合は、ステップS1205において、テレビの音量を10上げて25に設定する処理を行う。
【0133】
一方、条件に合う履歴情報が蓄積されていないと判定した場合、ステップS1204において推奨入力機器提示判定処理を実行し、判定結果に応じて推奨入力機器をユーザへ提示する。この場合は、ユーザは音声入力による音量調整を複数回行う可能性があるため、推奨入力機器の提示をすることで、音声入力による煩雑な操作を避けることができる。推奨入力機器としては、例えば、音声入力装置以外の入力機器であるリモコンやスマートフォンを提示する。
【0134】
次に、音声認識の尤度に応じて、推奨入力機器提示判定処理を行う処理を説明する。
図23は、音声認識尤度判定処理の手順を示すフローチャートである。この例では、音声情報から操作指示内容を認識し、認識した操作指示内容の尤度を算出する。そして、尤度が所定値よりも低い場合、操作コマンドに応じた推奨入力機器をユーザへ提示する。
【0135】
ステップS1301において、音声認識部202は、受信した音声特徴量を文字列・単語列に変換する。ステップS1302において、機器操作判定部204は、音声認識結果に基づいて操作コマンドを認識する。なお、音声認識部202および機器操作判定部204の機能が操作対象機器3に搭載されている場合は、これらの処理は操作対象機器3が行う。
【0136】
ステップS1303において、機器制御部302は、音声認識の尤度を算出する。尤度の算出方法としては、例えば、認識した音声内容と基準となる言語モデルとの距離を算出して尤度を求めることができる。この場合は、算出した距離が短いほど尤度は高くなる。
【0137】
次に、ステップS1304において、算出した尤度は所定値よりも低いか判定する。所定値は任意の値である。尤度が所定値以上の場合、ステップS1306において、認識した操作コマンドに応じた機器の制御を行う。
【0138】
一方、尤度が所定値よりも低い場合、ステップS1305において推奨入力機器提示判定処理を実行し、判定結果に応じて推奨入力機器をユーザへ提示する。推奨入力機器としては、例えば、音声入力装置以外の入力機器であるリモコンやスマートフォンを提示する。尤度が低い場合に音声入力に応じた機器の制御を行うと、ユーザが意図した操作とは異なる操作が行われる可能性が高くなる。推奨入力機器の提示をすることで、ユーザが意図した操作とは異なる操作が行われることを避けることができる。
【0139】
次に、取得した音声の雑音レベルに応じて、推奨入力機器提示判定処理を行う処理を説明する。
図24は、雑音レベル判定処理の手順を示すフローチャートである。この例では、音声情報の雑音レベルを算出し、雑音レベルが所定値以上の場合、操作コマンドに応じた推奨入力機器をユーザへ提示する。
【0140】
ステップS1401において、音声認識部202は、音声特徴量を含む音声情報を取得する。この音声情報には、音声入力機器の周囲の環境音と、操作対象機器に対する操作指示内容とが含まれている。ステップS1402において、音声認識部202は、音声情報の雑音レベルを算出する。雑音レベルの算出方法としては、例えば、雑音と音声との音圧を比較してS/Nを求めることで雑音レベルを算出することができる。この場合は、S/Nが小さいほど、雑音レベルは大きくなる。
【0141】
次に、ステップS1403において、算出した雑音レベルは所定値以上か判定する。所定値は任意の値である。雑音レベルが所定値未満の場合、ステップS1405において、音声情報から認識した操作コマンドに応じた機器の制御を行う。
【0142】
一方、雑音レベルが所定値以上の場合、ステップS1404において推奨入力機器提示判定処理を実行し、判定結果に応じて推奨入力機器をユーザへ提示する。推奨入力機器としては、例えば、音声入力装置以外の入力機器であるリモコンやスマートフォンを提示する。雑音レベルが高い場合に音声入力に応じた機器の制御を行うと、ユーザが意図した操作とは異なる操作が行われる可能性が高くなる。推奨入力機器の提示をすることで、ユーザが意図した操作とは異なる操作が行われることを避けることができる。
【0143】
なお、雑音レベルおよび尤度の両方に応じて、推奨入力機器提示判定処理を行ってもよい。
【0144】
なお、上記実施形態の説明で示した各処理は、ハードウエアによって実現されてもよいしソフトウェアによって実現されてもよいし、それらの組み合わせによって実現されてもよい。そのような動作を実行させるコンピュータプログラムは、例えばメモリに記憶され、マイクロコンピュータによって動作が実行される。また、そのようなコンピュータプログラムは、それが記録された記録媒体(半導体メモリ、光ディスク等)から各機器へインストールしてもよいし、インターネット等の電気通信回線を介してダウンロードしてもよい。また、無線通信を介してそのようなコンピュータプログラムを各機器へインストールしてもよい。
【0145】
なお、上記態様において説明された技術は、例えば、以下のクラウドサービスの類型において実現されうる。しかし、上記態様において説明された技術が実現されるクラウドサービスの類型はこれらに限られるものでない。
【0146】
(サービスの類型1:自社データセンタ型クラウドサービス)
図26は、サービスの類型1(自社データセンタ型クラウドサービス)における情報管理システムが提供するサービスの全体像を示す図である。本類型では、サービスプロバイダ620がグループ600から情報を取得し、ユーザに対してサービスを提供する。本類型では、サービスプロバイダ620が、データセンタ運営会社の機能を有している。すなわち、サービスプロバイダ620が、ビッグデータを管理するクラウドサーバ611を保有している。したがって、データセンタ運営会社は存在しない。
【0147】
本類型では、サービスプロバイダ620は、データセンタ(クラウドサーバ)703を運営および管理している。また、サービスプロバイダ620は、オペレーティングシステム(OS)702およびアプリケーション701を管理する。サービスプロバイダ620は、サービスプロバイダ620が管理するOS702およびアプリケーション701を用いてサービスを提供する(矢印704)。
【0148】
(サービスの類型2:IaaS利用型クラウドサービス)
図27は、サービスの類型2(IaaS利用型クラウドサービス)における情報管理システムが提供するサービスの全体像を示す図である。ここで、IaaSとは、インフラストラクチャー・アズ・ア・サービスの略であり、コンピュータシステムを構築および稼動させるための基盤そのものを、インターネット経由のサービスとして提供するクラウドサービス提供モデルである。
【0149】
本類型では、データセンタ運営会社610が、データセンタ(クラウドサーバ)703を運営および管理している。また、サービスプロバイダ620は、OS702およびアプリケーション701を管理する。サービスプロバイダ620は、サービスプロバイダ620が管理するOS702およびアプリケーション701を用いてサービスを提供する(矢印704)。
【0150】
(サービスの類型3:PaaS利用型クラウドサービス)
図28は、サービスの類型3(PaaS利用型クラウドサービス)における情報管理システムが提供するサービスの全体像を示す図である。ここで、PaaSとは、プラットフォーム・アズ・ア・サービスの略であり、ソフトウェアを構築および稼動させるための土台となるプラットフォームを、インターネット経由のサービスとして提供するクラウドサービス提供モデルである。
【0151】
本類型では、データセンタ運営会社610は、OS702を管理し、データセンタ(クラウドサーバ)703を運営および管理している。また、サービスプロバイダ620は、アプリケーション701を管理する。サービスプロバイダ620は、データセンタ運営会社610が管理するOS702およびサービスプロバイダ620が管理するアプリケーション701を用いてサービスを提供する(矢印704)。
【0152】
(サービスの類型4:SaaS利用型クラウドサービス)
図29は、サービスの類型4(SaaS利用型クラウドサービス)における情報管理システムが提供するサービスの全体像を示す図である。ここで、SaaSとは、ソフトウェア・アズ・ア・サービスの略である。SaaS利用型クラウドサービスは、例えば、データセンタ(クラウドサーバ)を保有しているプラットフォーム提供者が提供するアプリケーションを、データセンタ(クラウドサーバ)を保有していない会社又は個人などの利用者がインターネットなどのネットワーク経由で使用できる機能を有するクラウドサービス提供モデルである。
【0153】
本類型では、データセンタ運営会社610は、アプリケーション701を管理し、OS702を管理し、データセンタ(クラウドサーバ)703を運営および管理している。また、サービスプロバイダ620は、データセンタ運営会社610が管理するOS702およびアプリケーション701を用いてサービスを提供する(矢印704)。
【0154】
以上、いずれのクラウドサービスの類型においても、サービスプロバイダ620がサービスを提供する。また、例えば、サービスプロバイダ又はデータセンタ運営会社は、OS、アプリケーション又はビッグデータのデータベース等を自ら開発してもよいし、また、第三者に外注させてもよい。