(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-02
(45)【発行日】2024-04-10
(54)【発明の名称】音声処理システム、音声処理方法、及び音声処理プログラム
(51)【国際特許分類】
G10L 15/10 20060101AFI20240403BHJP
G10L 15/22 20060101ALI20240403BHJP
【FI】
G10L15/10 500Z
G10L15/22 300Z
(21)【出願番号】P 2020043712
(22)【出願日】2020-03-13
【審査請求日】2022-09-21
【前置審査】
(73)【特許権者】
【識別番号】000005049
【氏名又は名称】シャープ株式会社
(74)【代理人】
【識別番号】100167302
【氏名又は名称】種村 一幸
(72)【発明者】
【氏名】蛭川 慶子
(72)【発明者】
【氏名】岩本 祐機
(72)【発明者】
【氏名】寺田 智
【審査官】堀 洋介
(56)【参考文献】
【文献】特開2008-003474(JP,A)
【文献】特開2015-206909(JP,A)
【文献】特開2003-084794(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/00-15/34
G06F 3/16
(57)【特許請求の範囲】
【請求項1】
ユーザが発する音声を受信する音声受信部と、
コマンドの種別を表すカテゴリーと、コマンドの名称と、コマンドの制御内容と、コマンドが繰り返し実行可能なコマンドであるか否かを示す識別情報と、前記コマンドの制御内容とは逆の制御内容である逆コマンドの名称と、を互いに関連付けて記憶するコマンドリスト情報を参照して、前記音声受信部より受信されるコマンド音声に
一致するコマンドを特定するコマンド特定部と、
前記コマンド特定部により特定される前記コマンドを制御対象に対して実行させるコマンド処理部と、
前記コマンドリスト情報を参照して、前記コマンド特定部により特定される前記コマンドが前記制御対象に対して繰り返し実行可能な繰り返しコマンドであるか否かを判定するコマンド判定部と、
前記コマンド特定部により特定された前記コマンドが前記繰り返しコマンドである場合に、前記コマンド処理部により前記コマンド音声に対応する前記繰り返しコマンドが実行された後に、前記音声受信部により前記繰り返しコマンドを繰り返し実行する指示を表す実行指示ワードに対応する実行指示音声が受信されたか否かを判定する指示判定部と、
を備え、
前記コマンド処理部は、前記繰り返しコマンドが実行された後に、前記音声受信部により前記実行指示音声が受信された場合に、前記制御対象に対して前記繰り返しコマンドを繰り返し実行させ、
前記指示判定部は、さらに、前記コマンド処理部により前記繰り返しコマンドが実行された場合に、前記音声受信部により、前記コマンド音声が受信された後に、前記制御対象を前記繰り返しコマンドの実行前の状態に戻すことを指示する復帰指示ワードに対応する復帰指示音声が受信されたか否かを判定し、
前記音声受信部により前記復帰指示音声が受信された場合に、
前記コマンド特定部は、前記コマンドリスト情報を参照して、前記制御対象に対して前記繰り返しコマンドとは逆の制御内容
であって前記繰り返しコマンドと同一カテゴリーである
前記逆コマンドを
特定し、
前記コマンド処理部は、前記コマンド特定部により特定された前記逆コマンドを実行させ
、
前記逆コマンドが実行された後に前記音声受信部により前記実行指示音声が受信された場合に、
前記コマンド処理部は、前記制御対象に対して前記逆コマンドを繰り返し実行させる、音声処理システム。
【請求項2】
前記コマンド処理部は、コマンドの実行履歴を記憶する第2記憶部を参照して、前記制御対象に対して前記繰り返しコマン
ドを実行させる、
請求項
1に記載の音声処理システム。
【請求項3】
前記コマンド処理部は、前回の前記繰り返しコマンドが実行されてから所定時間が経過する前に前記実行指示音声を受信した場合に、前記制御対象に対して前記繰り返しコマンドを繰り返し実行させる、
請求項1
又は請求項2に記載の音声処理システム。
【請求項4】
前記コマンド処理部は、前回の前記繰り返しコマンドが実行されてから所定時間が経過した後に前記実行指示音声を受信した場合に、コマンドの実行履歴を記憶する第2記憶部に記憶された複数の実行履歴を前記ユーザに提示し、前記複数の実行履歴のうち前記ユーザにより選択される実行履歴に対応するコマンドを前記制御対象に対して実行させる、
請求項1から請求項
3のいずれか1項に記載の音声処理システム。
【請求項5】
前記指示判定部は、さらに、前記コマンド処理部により前記繰り返しコマンドが実行された場合に、前記音声受信部により、前記実行指示音声が受信された後に前記繰り返しコマンドの実行を停止する停止指示ワードに対応する停止指示音声が受信されたか否かを判定し、
前記コマンド処理部は、前記音声受信部が前記実行指示音声を受信してから前記停止指示音声を受信するまで、前記制御対象に対して前記繰り返しコマンドを繰り返し実行させる、
請求項1から請求項
4のいずれか1項に記載の音声処理システム。
【請求項6】
前記指示判定部は、さらに、前記コマンド処理部により前記逆コマンドが実行された場合に、前記音声受信部により、前記実行指示音声が受信された後に前記逆コマンドの実行を停止する停止指示ワードに対応する停止指示音声が受信されたか否かを判定し、
前記コマンド処理部は、前記音声受信部が前記実行指示音声を受信してから前記停止指示音声を受信するまで、前記制御対象に対して前記逆コマンドを繰り返し実行させる、
請求項1から請求項
5のいずれか1項に記載の音声処理システム。
【請求項7】
ユーザが発する音声を受信する音声受信ステップと、
コマンドの種別を表すカテゴリーと、コマンドの名称と、コマンドの制御内容と、コマンドが繰り返し実行可能なコマンドであるか否かを示す識別情報と、前記コマンドの制御内容とは逆の制御内容である逆コマンドの名称と、を互いに関連付けて記憶するコマンドリスト情報を参照して、前記音声受信ステップにおいて受信されるコマンド音声に
一致するコマンドを特定するコマンド特定ステップと、
前記コマンド特定ステップにおいて特定される前記コマンドを制御対象に対して実行させるコマンド処理ステップと、
前記コマンドリスト情報を参照して、前記コマンド特定ステップにおいて特定される前記コマンドが前記制御対象に対して繰り返し実行可能な繰り返しコマンドであるか否かを判定するコマンド判定ステップと、
前記コマンド特定ステップにおいて特定された前記コマンドが前記繰り返しコマンドである場合に、前記コマンド処理ステップにおいて前記コマンド音声に対応する前記繰り返しコマンドが実行された後に、前記音声受信ステップにおいて前記繰り返しコマンドを繰り返し実行する指示を表す実行指示ワードに対応する実行指示音声が受信されたか否かを判定する指示判定ステップと、
を一又は複数のプロセッサが実行する音声処理方法であって、
前記コマンド処理ステップでは、前記繰り返しコマンドが実行された後に、前記音声受信ステップにおいて前記実行指示音声が受信された場合に、前記制御対象に対して前記繰り返しコマンドを繰り返し実行させ、
前記指示判定ステップでは、さらに、前記コマンド処理ステップにおいて前記繰り返しコマンドが実行された場合に、前記音声受信ステップにおいて、前記コマンド音声が受信された後に、前記制御対象を前記繰り返しコマンドの実行前の状態に戻すことを指示する復帰指示ワードに対応する復帰指示音声が受信されたか否かを判定し、
前記音声受信ステップにおいて前記復帰指示音声が受信された場合に、
前記コマンド特定ステップにおいて、前記コマンドリスト情報を参照して、前記制御対象に対して前記繰り返しコマンドとは逆の制御内容
であって前記繰り返しコマンドと同一カテゴリーである
前記逆コマンドを
特定し、
前記コマンド処理ステップにおいて、前記コマンド特定ステップにおいて特定された前記逆コマンドを実行させ
、
前記逆コマンドが実行された後に前記音声受信ステップにおいて前記実行指示音声が受信された場合に、
前記コマンド処理ステップにおいて、前記制御対象に対して前記逆コマンドを繰り返し実行させる、音声処理方法。
【請求項8】
ユーザが発する音声を受信する音声受信ステップと、
コマンドの種別を表すカテゴリーと、コマンドの名称と、コマンドの制御内容と、コマンドが繰り返し実行可能なコマンドであるか否かを示す識別情報と、前記コマンドの制御内容とは逆の制御内容である逆コマンドの名称と、を互いに関連付けて記憶するコマンドリスト情報を参照して、前記音声受信ステップにおいて受信されるコマンド音声に
一致するコマンドを特定するコマンド特定ステップと、
前記コマンド特定ステップにおいて特定される前記コマンドを制御対象に対して実行させるコマンド処理ステップと、
前記コマンドリスト情報を参照して、前記コマンド特定ステップにおいて特定される前記コマンドが前記制御対象に対して繰り返し実行可能な繰り返しコマンドであるか否かを判定するコマンド判定ステップと、
前記コマンド特定ステップにおいて特定された前記コマンドが前記繰り返しコマンドである場合に、前記コマンド処理ステップにおいて前記コマンド音声に対応する前記繰り返しコマンドが実行された後に、前記音声受信ステップにおいて前記繰り返しコマンドを繰り返し実行する指示を表す実行指示ワードに対応する実行指示音声が受信されたか否かを判定する指示判定ステップと、
を一又は複数のプロセッサに実行させるための音声処理プログラムであって、
前記コマンド処理ステップでは、前記繰り返しコマンドが実行された後に、前記音声受信ステップにおいて前記実行指示音声が受信された場合に、前記制御対象に対して前記繰り返しコマンドを繰り返し実行させ、
前記指示判定ステップでは、さらに、前記コマンド処理ステップにおいて前記繰り返しコマンドが実行された場合に、前記音声受信ステップにおいて、前記コマンド音声が受信された後に、前記制御対象を前記繰り返しコマンドの実行前の状態に戻すことを指示する復帰指示ワードに対応する復帰指示音声が受信されたか否かを判定し、
前記音声受信ステップにおいて前記復帰指示音声が受信された場合に、
前記コマンド特定ステップにおいて、前記コマンドリスト情報を参照して、前記制御対象に対して前記繰り返しコマンドとは逆の制御内容
であって前記繰り返しコマンドと同一カテゴリーである
前記逆コマンドを
特定し、
前記コマンド処理ステップにおいて、前記コマンド特定ステップにおいて特定された前記逆コマンドを実行させ
、
前記逆コマンドが実行された後に前記音声受信ステップにおいて前記実行指示音声が受信された場合に、
前記コマンド処理ステップにおいて、前記制御対象に対して前記逆コマンドを繰り返し実行させる、音声処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、音声処理システム、音声処理方法、及び音声処理プログラムに関する。
【背景技術】
【0002】
ユーザの音声を認識して、当該音声に応じた情報処理を実行する音声処理装置が提案されている。例えば、ユーザは、機器の音量を上げたい場合に、音声処理装置に向かって予め設定された特定ワードを発話する。音声処理装置は、前記特定ワードを受信すると、情報処理に応じたコマンドの受け付けを開始する。その後、ユーザが「音量を上げて」などの指示(コマンド音声)を発話すると、音声処理装置は前記コマンド音声を受信して、音量を上げるコマンドを実行する。
【0003】
このような音声処理装置において、例えば、認識した音声のコマンドが、繰り返し実行される制御に対応する所定の繰り返しコマンドである場合に、ユーザがその都度コマンド音声を発話することなく、当該コマンドを繰り返し実行する技術が提案されている(例えば特許文献1参照)。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、従来の技術では、ユーザの音声が前記繰り返しコマンドである場合に、当該コマンドがユーザの指示を受けることなく繰り返されるため、ユーザの意図が適切に反映されない場合がある。例えば、前記繰り返しコマンドが対象機器の音量を上げる制御に対応するコマンドである場合に、当該コマンドが繰り返し実行されて音量の上昇が繰り返される。このため、例えばユーザが前記コマンドを1回だけ実行させる意図でコマンド音声を発したにもかかわらず、当該コマンドが前記繰り返しコマンドである場合には、ユーザの意図に反して音量が上昇し続けてしまう事態が生じる。このように、従来の技術では、ユーザの意図を適切に反映しつつ、所定のコマンドを繰り返し実行することが困難である。
【0006】
本発明の目的は、ユーザの意図を適切に反映しつつ、所定のコマンドを繰り返し実行することが可能な音声処理システム、音声処理方法、及び音声処理プログラムを提供することにある。
【課題を解決するための手段】
【0007】
本発明の一の態様に係る音声処理システムは、ユーザが発する音声を受信する音声受信部と、前記音声受信部より受信される第1音声に基づいて、コマンドを特定するコマンド特定部と、前記コマンド特定部により特定される前記コマンドを制御対象に対して実行させるコマンド処理部と、前記コマンド特定部により特定される前記コマンドが制御対象に対して繰り返し実行可能な繰り返しコマンドであるか否かを判定するコマンド判定部と、前記コマンド特定部により特定された前記コマンドが前記繰り返しコマンドである場合に、前記コマンド処理部により前記第1音声に対応する前記繰り返しコマンドが実行された後に、前記音声受信部により前記繰り返しコマンドを繰り返し実行する指示を表す実行指示ワードに対応する第2音声が受信されたか否かを判定する指示判定部と、を備え、前記コマンド処理部は、前記繰り返しコマンドが実行された後に、前記音声受信部により前記第2音声が受信された場合に、前記制御対象に対して前記繰り返しコマンドを繰り返し実行させる。
【0008】
本発明の他の態様に係る音声処理方法は、ユーザが発する音声を受信する音声受信ステップと、前記音声受信ステップにおいて受信される第1音声に基づいて、コマンドを特定するコマンド特定ステップと、前記コマンド特定ステップにおいて特定される前記コマンドを制御対象に対して実行させるコマンド処理ステップと、前記コマンド特定ステップにおいて特定される前記コマンドが制御対象に対して繰り返し実行可能な繰り返しコマンドであるか否かを判定するコマンド判定ステップと、前記コマンド特定ステップにおいて特定された前記コマンドが前記繰り返しコマンドである場合に、前記コマンド処理ステップにおいて前記第1音声に対応する前記繰り返しコマンドが実行された後に、前記音声受信ステップにおいて前記繰り返しコマンドを繰り返し実行する指示を表す実行指示ワードに対応する第2音声が受信されたか否かを判定する指示判定ステップと、を一又は複数のプロセッサにより実行する音声処理方法であって、前記コマンド処理ステップでは、前記繰り返しコマンドが実行された後に、前記音声受信ステップにおいて前記第2音声が受信された場合に、前記制御対象に対して前記繰り返しコマンドを繰り返し実行させる。
【0009】
本発明の他の態様に係る音声処理プログラムは、ユーザが発する音声を受信する音声受信ステップと、前記音声受信ステップにおいて受信される第1音声に基づいて、コマンドを特定するコマンド特定ステップと、前記コマンド特定ステップにおいて特定される前記コマンドを制御対象に対して実行させるコマンド処理ステップと、前記コマンド特定ステップにおいて特定される前記コマンドが制御対象に対して繰り返し実行可能な繰り返しコマンドであるか否かを判定するコマンド判定ステップと、前記コマンド特定ステップにおいて特定された前記コマンドが前記繰り返しコマンドである場合に、前記コマンド処理ステップにおいて前記第1音声に対応する前記繰り返しコマンドが実行された後に、前記音声受信ステップにおいて前記繰り返しコマンドを繰り返し実行する指示を表す実行指示ワードに対応する第2音声が受信されたか否かを判定する指示判定ステップと、を一又は複数のプロセッサにより実行させるための音声処理プログラムであって、前記コマンド処理ステップでは、前記繰り返しコマンドが実行された後に、前記音声受信ステップにおいて前記第2音声が受信された場合に、前記制御対象に対して前記繰り返しコマンドを繰り返し実行させる。
【発明の効果】
【0010】
本発明によれば、ユーザの意図を適切に反映しつつ、所定のコマンドを繰り返し実行することが可能な音声処理システム、音声処理方法、及び音声処理プログラムを提供される。
【図面の簡単な説明】
【0011】
【
図1】
図1は、本発明の実施形態に係る音声処理システムの概略構成を示す図である。
【
図2】
図2は、本発明の実施形態に係る音声処理システムの構成を示す機能ブロック図である。
【
図3】
図3は、本発明の実施形態に係る音声処理システムにおいて使用されるコマンドリスト情報の一例を示す図である。
【
図4】
図4は、本発明の実施形態に係る音声処理システムにおいて使用されるコマンド履歴情報の一例を示す図である。
【
図5】
図5は、本発明の実施形態に係る音声処理システムにおいて使用される指示ワードリスト情報の一例を示す図である。
【
図6】
図6は、本発明の実施形態に係る音声処理システムにおいて実行される音声受信処理の手順の一例を説明するためのフローチャートである。
【
図7】
図7は、本発明の実施形態に係る音声処理システムにおいて実行されるコマンド制御処理の手順の一例を説明するためのフローチャートである。
【
図8】
図8は、本発明の実施形態に係る音声処理システムにおいて実行されるコマンド実行処理の手順の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【0012】
以下、添付図面を参照しながら、本発明の実施形態について説明する。なお、以下の実施形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格を有さない。
【0013】
本発明に係る音声処理システムは、一人のユーザが音声処理装置とユーザ端末とを使用するケース、一つの拠点(領域)において複数のユーザが音声処理装置と各ユーザ端末とを使用して会議を行うケース、複数の拠点(領域)をネットワーク接続して複数のユーザが各拠点の音声処理装置と各ユーザ端末とを使用してリモート会議を行うケースなどに適用することができる。本発明に係る音声処理システムは、ユーザが発した音声コマンドを実行する機能を備える。また、前記音声処理システムは、ネットワークを介してユーザ間で通話可能な通話機能(電話機能、テレビ電話機能など)を備えたものであってもよい。
【0014】
以下の実施形態では、一人のユーザが音声処理装置とユーザ端末とを使用するケースを例に挙げて説明する。例えば本実施形態に係る音声処理システムでは、一つの拠点(会議室)に音声処理装置とユーザ端末とが配置される。また、前記音声処理システムでは、ユーザが発した音声を音声処理装置が受信し、音声処理装置が当該音声をクラウドサーバに送信し、クラウドサーバが当該音声を解析(音声認識)してコマンドを特定する。そして、前記音声処理システムは、音声処理装置からコマンド応答を出力させたり、ユーザ端末においてコマンドを実行させたりする。
【0015】
[音声処理システム100]
図1は、本発明の実施形態に係る音声処理システムの概略構成を示す図である。音声処理システム100は、音声処理装置1と、クラウドサーバ2と、ユーザ端末3と、データベースDBとを含んでいる。音声処理装置1は、マイク及びスピーカを備えたマイクスピーカ装置であり、例えばAIスピーカ、スマートスピーカなどである。音声処理装置1、クラウドサーバ2、ユーザ端末3、及びデータベースDBは、ネットワークN1を介して互いに接続されている。ネットワークN1は、インターネット、LAN、WAN、又は公衆電話回線などの通信網である。クラウドサーバ2は、例えば1台又は複数台のデータサーバ(仮想サーバ)で構築される。データベースDBは、各種データを記憶する。データベースDBは、音声処理装置1、クラウドサーバ2、及びユーザ端末3のいずれかに含まれてもよいし、これら複数の機器に分散して設けられてもよい。
【0016】
[音声処理装置1]
図2に示すように、音声処理装置1は、制御部11、記憶部12、スピーカ13、マイク14、及び通信インターフェース15などを備える。音声処理装置1は、例えばAIスピーカ、スマートスピーカなどの機器であってもよい。音声処理装置1は、例えば机上に配置され、ユーザの音声をマイク14を介して取得したり、当該ユーザに対してスピーカ13から音声(コマンド応答など)を出力(報知)したりする。
【0017】
通信インターフェース15は、音声処理装置1を有線又は無線でネットワークN1に接続し、ネットワークN1を介して他の機器(例えば、クラウドサーバ2、ユーザ端末3、データベースDBなど)との間で所定の通信プロトコルに従ったデータ通信を実行するための通信インターフェースである。
【0018】
記憶部12は、各種の情報を記憶するフラッシュメモリーなどの不揮発性の記憶部である。記憶部12には、制御部11に後述の音声受信処理(
図6参照)を実行させるための音声受信プログラムなどの制御プログラムが記憶されている。例えば、前記音声受信プログラムは、クラウドサーバ2から配信されて記憶される。また前記音声受信プログラムは、CD又はDVDなどのコンピュータ読取可能な記録媒体に非一時的に記録され、音声処理装置1が備えるCDドライブ又はDVDドライブなどの読取装置(不図示)で読み取られて記憶部12に記憶されてもよい。
【0019】
制御部11は、CPU、ROM、及びRAMなどの制御機器を有する。前記CPUは、各種の演算処理を実行するプロセッサである。前記ROMは、前記CPUに各種の処理を実行させるためのBIOS及びOSなどの制御プログラムを予め記憶する。前記RAMは、各種の情報を記憶し、前記CPUが実行する各種の処理の一時記憶メモリー(作業領域)として使用される。そして、制御部11は、前記ROM又は記憶部12に予め記憶された各種の制御プログラムを前記CPUで実行することにより音声処理装置1を制御する。
【0020】
具体的に、制御部11は、音声受信部111、音声判定部112、音声送信部113、応答処理部114などの各種の処理部を含む。なお、制御部11は、前記CPUで前記制御プログラムに従った各種の処理を実行することによって前記各種の処理部として機能する。また、制御部11に含まれる一部又は全部の処理部が電子回路で構成されていてもよい。なお、前記音声受信プログラムは、複数のプロセッサを前記各種の処理部として機能させるためのプログラムであってもよい。
【0021】
音声受信部111は、音声処理装置1を利用するユーザが発した音声を受信する。ユーザは、例えば、音声処理装置1がコマンドの受け付けを開始するための特定ワード(起動ワード、ウェイクアップワードともいう。)の音声、音声処理装置1に指示する各種コマンドの音声(コマンド音声)などを発話する。なお、前記特定ワードには、音声処理システム100が提供可能は機能を表す所謂スキルが含まれてもよい。
【0022】
音声判定部112は、音声受信部111より受信された前記音声に基づいて、当該音声に前記特定ワードが含まれるか否かを判定する。例えば、音声判定部112は、音声受信部111より受信された前記音声を音声認識してテキストデータに変換する。そして、音声判定部112は、テキストデータの冒頭に前記特定ワードが含まれるか否かを判定する。
【0023】
音声送信部113は、音声判定部112による判定結果に基づいて、音声受信部111より受信される前記音声をクラウドサーバ2に送信する。具体的には、音声判定部112により、音声受信部111により受信された前記音声に前記特定ワードが含まれると判定された場合に、音声送信部113は、前記音声に含まれ、前記特定ワードに続くキーワード(コマンド用キーワード)の音声データ(コマンド音声)、又は、当該キーワードに対応するテキストデータを、クラウドサーバ2に送信する。また音声判定部112により、音声受信部111により受信された前記音声に前記特定ワードが含まれないと判定された場合には、音声送信部113は、当該音声をクラウドサーバ2に送信しない。これにより、前記特定ワードを含まない音声(例えば会話音声)がクラウドサーバ2に不要に送信されることを回避することができる。
【0024】
また、音声送信部113は、予め設定された音声(指示音声)が音声受信部111により受信された場合に、当該指示音声をクラウドサーバ2に送信する。前記指示音声は、後述する実行指示音声、停止指示音声、復帰指示音声などである。これらの音声情報は、記憶部12に予め登録されてもよい。また、前記指示音声は、前記コマンド音声に含まれてもよい。すなわち、ユーザが前記特定ワードの音声に続けて前記指示音声を発した場合には、音声送信部113は、前記指示音声を前記コマンド音声としてクラウドサーバ2に送信する。
【0025】
なお、音声送信部113は、音声受信部111により受信された全ての前記音声をクラウドサーバ2に送信してもよい。
【0026】
応答処理部114は、クラウドサーバ2において特定された前記コマンドに対応する応答(コマンド応答)をクラウドサーバ2から取得し、当該コマンド応答をスピーカ13から出力させる。例えば、前記コマンドが情報検索に関する内容である場合、応答処理部114は、クラウドサーバ2から検索結果を取得して、スピーカ13から出力させる。
【0027】
[クラウドサーバ2]
図2に示すように、クラウドサーバ2は、制御部21、記憶部22、通信インターフェース23などを備える。
【0028】
通信インターフェース23は、クラウドサーバ2を有線又は無線でネットワークN1に接続し、ネットワークN1を介して他の機器(例えば音声処理装置1、ユーザ端末3、データベースDBなど)との間で所定の通信プロトコルに従ったデータ通信を実行するための通信インターフェースである。
【0029】
記憶部22は、各種の情報を記憶するフラッシュメモリーなどの不揮発性の記憶部である。記憶部22には、制御部21に後述のコマンド制御処理(
図7参照)を実行させるためのコマンド制御プログラムなどの制御プログラムが記憶されている。例えば、前記コマンド制御プログラムは、CD又はDVDなどのコンピュータ読取可能な記録媒体に非一時的に記録され、クラウドサーバ2が備えるCDドライブ又はDVDドライブなどの読取装置(不図示)で読み取られて記憶部22に記憶されてもよい。また記憶部22には、音声処理装置1から受信する前記コマンド音声、前記指示音声などが記憶される。
【0030】
制御部21は、CPU、ROM、及びRAMなどの制御機器を有する。前記CPUは、各種の演算処理を実行するプロセッサである。前記ROMは、前記CPUに各種の処理を実行させるためのBIOS及びOSなどの制御プログラムを予め記憶する。前記RAMは、各種の情報を記憶し、前記CPUが実行する各種の処理の一時記憶メモリー(作業領域)として使用される。そして、制御部21は、前記ROM又は記憶部22に予め記憶された各種の制御プログラムを前記CPUで実行することによりクラウドサーバ2を制御する。
【0031】
また制御部21は、データベースDBを参照して各種処理を実行する。
図2に示すようにデータベースDBには、コマンドリスト情報D1、コマンド履歴情報D2、指示ワードリスト情報D3などのデータが記憶される。
【0032】
図3にはコマンドリスト情報D1の一例を示している。コマンドリスト情報D1には、コマンドごとに、対応する「カテゴリー」、「コマンド名」、「制御内容」、「繰り返し可否」、「逆コマンド名」などの情報が互いに関連付けられて登録される。「カテゴリー」はコマンドの種別を表す情報である。「コマンド名」はコマンドの名称である。「制御内容」は、コマンドの制御内容を表す。
【0033】
例えば、「Undo」のコマンドは、所定の処理を実行した場合に元の状態に戻す制御を表す。「Redo」のコマンドは、所定の処理を実行した場合に同一の処理をやり直す制御を表す。「Zoom in」のコマンドは、ユーザ端末3の表示部34に表示される表示内容を拡大する制御を表す。「Zoom out」のコマンドは、ユーザ端末3の表示部34に表示される表示内容を縮小する制御を表す。「ページめくり」のコマンドは、ユーザ端末3の表示部34に表示される資料のページを次ページにめくる(進める)制御を表す。「ページ戻し」のコマンドは、ユーザ端末3の表示部34に表示される資料のページを前ページにめくる(戻す)制御を表す。「Start presentation」のコマンドは、ユーザ端末3においてスライドショーを開始させる制御を表す。
【0034】
「繰り返し可否」は、前記コマンドが繰り返し実行可能なコマンドであるか否かを示す識別情報である。「Undo」、「Redo」、「Zoom in」、「Zoom out」、「ページめくり」、「ページ戻し」は、繰り返し実行することが可能なコマンドであるため、「OK」が登録される。一方、「Start presentation」は、繰り返し実行することが不可能なコマンドであるため、「NO」が登録される。ここで、繰り返し実行可能な他のコマンドとして、文字のフォント(大きさ、色、線種など)の変更、文字検索、入力切替などのコマンドが挙げられる。
【0035】
「逆コマンド名」は、対応するコマンドの制御内容の逆の制御内容を表すコマンドである。例えば、「Undo」のコマンドの逆コマンドには「Redo」が登録される。「Zoom in」のコマンドの逆コマンドには「Zoom out」が登録される。「ページめくり」のコマンドの逆コマンドには「ページ戻し」が登録される。コマンドリスト情報D1には、音声処理システム100が提供可能な機能に対応する種々のコマンドが登録される。また、コマンドリスト情報D1の各情報は、予め設定され、適宜更新される。コマンドリスト情報D1は、本発明の第1記憶部の一例である。
【0036】
図4には、コマンド履歴情報D2の一例を示している。コマンド履歴情報D2には、過去に実行されたコマンドの実行履歴の情報(履歴情報)が実行順に登録される。例えば、コマンド履歴情報D2には、コマンドごとに、対応する「カテゴリー」、「コマンド名」、「制御内容」などの情報が互いに関連付けられて登録される。また、コマンド履歴情報D2に登録されるコマンドの情報は、コマンドリスト情報D1に登録されるコマンドの情報と関連付けられて登録される。
図4に示す例では、直前に実行されたコマンドが、「Zoom in」であることを示している。コマンド履歴情報D2の各情報は、コマンドが実行されるごとに登録される。コマンド履歴情報D2は、本発明の第2記憶部の一例である。
【0037】
図5には、指示ワードリスト情報D3の一例を示している。指示ワードリスト情報D3には、制御対象に対する繰り返しコマンドの実行を指示するワード(実行指示ワード)、制御対象を繰り返しコマンドの実行前の状態に戻すことを指示するワード(復帰指示ワード)、制御対象に対する繰り返しコマンドの実行を停止するワード(実行停止ワード)など、前記指示音声に対応するワードが登録される。「ワード種別」は、実行指示、復帰指示、停止指示のいずれかの情報である。「指示ワード」には、各ワード種別に対応する具体的なワード(テキスト情報)が登録される。前記各指示ワードには、音声に対応するテキストと完全に一致するワード、当該テキストの同義語又は類義語のワードなどが含まれる。指示ワードリスト情報D3の各情報は、予め設定され、適宜更新される。
【0038】
なお、他の実施形態として、コマンドリスト情報D1、コマンド履歴情報D2、指示ワードリスト情報D3などの情報の一部又は全部が、音声処理装置1、クラウドサーバ2、及びユーザ端末3のいずれかに記憶されてもよいし、これら複数の装置に分散して記憶されてもよい。また、他の実施形態として、前記各情報が音声処理システム100からアクセス可能なサーバに記憶されてもよい。この場合、音声処理システム100は、前記サーバから前記各情報を取得して、後述のコマンド制御処理(
図7参照)などの各処理を実行してもよい。
【0039】
図2に示すように、制御部21は、音声受信部211、コマンド特定部212、コマンド判定部213、コマンド処理部214、指示判定部215、コマンド応答作成部216などの各種の処理部を含む。なお、制御部21は、前記CPUで前記制御プログラムに従った各種の処理を実行することによって前記各種の処理部として機能する。また、制御部21に含まれる一部又は全部の処理部が電子回路で構成されていてもよい。なお、前記制御プログラムは、複数のプロセッサを前記各種の処理部として機能させるためのプログラムであってもよい。
【0040】
音声受信部211は、音声処理装置1から送信される音声データ(コマンド音声)を受信する。前記コマンド音声(本発明の第1音声の一例)は、音声処理装置1が受信する音声の冒頭に含まれる特定ワードに続くキーワードの音声である。具体的には、音声処理装置1が、前記特定ワードを検出して前記コマンド音声をクラウドサーバ2に送信すると、クラウドサーバ2が当該コマンド音声を受信する。なお、音声受信部211は、ユーザが発する全ての音声を、音声処理装置1を介して受信してもよい。音声受信部211は、本発明の音声受信部の一例である。
【0041】
コマンド特定部212は、音声受信部211により受信された前記コマンド音声を音声認識して、所定のコマンドを特定する。コマンド特定部212は、本発明のコマンド特定部の一例である。例えば、コマンド特定部212は、データベースDBに記憶されたコマンドリスト情報D1(
図3参照)を参照して、前記コマンド音声に対応するコマンドを特定する。本実施形態では、コマンドリスト情報D1に、予め複数の前記コマンド名が登録され、コマンドリスト情報D1の中から前記コマンド音声に一致する前記コマンドを特定する構成としているが、コマンドの特定方法はこれに限定されない。例えば、コマンド特定部212は、前記コマンド音声を音声認識した前記コマンド用キーワードに含まれる所定の用語、前記コマンド用キーワード全体の文節、構文などに基づいて、ユーザの指示内容の意味を解釈して前記コマンドを特定してもよい。例えば、コマンド特定部212は、形態素解析、構文解析、意味解析、機械学習などの公知の手法を用いて前記コマンド用キーワードから前記コマンドを特定してもよい。
【0042】
コマンド判定部213は、コマンド特定部212により特定される前記コマンドが制御対象に対して繰り返し実行可能な繰り返しコマンドであるか否かを判定する。ここで、前記制御対象は、前記コマンドが実行される対象となる機器、ファイル、データ、設定情報などをいう。例えば、「ページめくり」のコマンドの場合、前記制御対象はユーザ端末3の表示部34に表示される資料であり、「Zoom in」のコマンドの場合、前記制御対象はユーザ端末3の表示部34の表示内容である。
【0043】
具体的には、コマンド判定部213は、コマンドリスト情報D1を参照して、コマンド特定部212により特定される前記コマンドが前記繰り返しコマンドであるか否かを判定する。コマンド判定部213は、本発明のコマンド判定部の一例である。
【0044】
コマンド処理部214は、コマンド特定部212により特定される前記コマンドを制御対象に対して実行させる。具体的には、コマンド処理部214は、コマンド特定部212により特定される前記コマンドの情報を、記憶部22における、ユーザ端末3に対応するコマンド記憶領域(キュー)に記憶する。前記キューに記憶されたデータ(コマンド)は、当該キューに対応するユーザ端末3により取り出され、ユーザ端末3が前記コマンドを実行する。例えば、コマンド特定部212により特定されたコマンドが繰り返しコマンドである「Zoom in」である場合に、コマンド処理部214は、「Zoom in」のコマンド情報を、ユーザ端末3に対応する前記キューに記憶する。ユーザ端末3は、ポーリング処理によって前記キューから前記コマンドを取得すると、当該コマンドを実行する。例えば、ユーザ端末3が前記コマンドを実行すると、表示部34の表示内容が所定の大きさ(表示倍率)に拡大される。コマンド処理部214は、本発明のコマンド処理部の一例である。
【0045】
指示判定部215は、コマンド特定部212により特定された前記コマンドが前記繰り返しコマンドである場合に、音声受信部211により、前記コマンド音声が受信された後に前記繰り返しコマンドの実行を指示する実行指示ワードに対応する実行指示音声(本発明の第2音声の一例)が受信されたか否かを判定する。指示判定部215は、本発明の指示判定部の一例である。
【0046】
例えば、コマンド特定部212が繰り返しコマンドである「Zoom in」を特定すると、コマンド処理部214により当該コマンドが実行される。その後、指示判定部215は、音声受信部211により、前記実行指示ワード(
図5参照)に対応する実行指示音声が受信されたか否かを判定する。例えば、音声受信部211が「Zoom in」のコマンド音声を受信した後に「繰り返し」の音声(実行指示音声)を受信した場合、指示判定部215は、音声受信部211により前記実行指示ワードに対応する前記実行指示音声が受信されたと判定する。
【0047】
指示判定部215により、音声受信部211が前記実行指示ワードに対応する前記実行指示音声を受信したと判定された場合、すなわち音声受信部211により前記コマンド音声が受信された後に前記実行指示音声が受信された場合に、コマンド処理部214は、制御対象に対して前記コマンド音声に対応する前記繰り返しコマンドを繰り返し実行させる。具体的には、コマンド処理部214は、コマンド履歴情報D2を参照して、制御対象に対して前記繰り返しコマンドに対応するコマンドを実行させる。例えば、ユーザが「Zoom in」の音声(コマンド音声)を発して、当該コマンドが実行された後に、「繰り返し」の音声(実行指示音声)を発した場合に、コマンド処理部214は、コマンド履歴情報D2に登録された直前のコマンド(「Zoom in」)を取得して、取得したコマンドを制御対象に対して繰り返し実行させる。
【0048】
すなわち、コマンド処理部214は、制御対象に対して、前記コマンド音声に基づいて前記繰り返しコマンドを実行させた後に、前記実行指示音声に基づいて前記繰り返しコマンドを繰り返し実行させる。これにより、ユーザ端末3の表示部34の表示内容が徐々に拡大される。例えば、コマンド処理部214は、所定の時間間隔で、前記繰り返しコマンドを繰り返し実行させる。前記時間間隔は、等間隔でもよいし、時間の経過に伴って長くなってもよい。
【0049】
ここで、コマンド処理部214は、前回の前記繰り返しコマンドが実行されてから所定時間経過する前に音声受信部211により前記実行指示音声が受信された場合に、制御対象に対して前記繰り返しコマンドを繰り返し実行させてもよい。例えば、ユーザが発した「Zoom in」のコマンドが実行されてから所定時間(例えば5秒)以内に、ユーザが「繰り返し」の音声(実行指示音声)を発した場合に、コマンド処理部214は、「Zoom in」のコマンドを繰り返し実行させる。一方、ユーザが発した「Zoom in」のコマンドが実行されてから所定時間(例えば5秒)経過した後に、ユーザが「繰り返し」の音声を発した場合には、コマンド処理部214は、「Zoom in」のコマンドを実行させない。
【0050】
また、指示判定部215は、さらに、コマンド処理部214により前記繰り返しコマンドが実行された場合に、音声受信部211により、前記実行指示音声が受信された後に前記繰り返しコマンドの実行を停止する停止指示ワードに対応する停止指示音声(本発明の第3音声の一例)が受信されたか否かを判定する。
【0051】
例えば、コマンド処理部214により「Zoom in」の繰り返しコマンドが実行された場合に、指示判定部215は、音声受信部211により、前記停止指示ワード(
図5参照)に対応する停止指示音声が受信されたか否かを判定する。例えば、コマンド処理部214により「Zoom in」が実行された後に、音声受信部211が「停止」の音声(停止指示音声)を受信した場合、指示判定部215は、音声受信部211により前記停止指示ワードに対応する前記停止指示音声が受信されたと判定する。
【0052】
指示判定部215により、音声受信部211が前記停止指示ワードに対応する前記停止指示音声を受信したと判定された場合、すなわち繰り返しコマンドが実行された後に前記停止指示音声が受信された場合に、コマンド処理部214は、制御対象に対する前記繰り返しコマンドの実行を停止させる。
【0053】
このように、コマンド処理部214は、音声受信部211が前記実行指示音声を受信してから前記停止指示音声を受信するまで、制御対象に対して前記繰り返しコマンドを繰り返し実行させ、音声受信部211が前記停止指示音声を受信した場合に制御対象に対する前記繰り返しコマンドの実行を停止させる。なお、コマンド処理部214は、前記繰り返しコマンドを実行中に、所定のタイミングでユーザに、前記繰り返しコマンドの実行を引き続き行うか否かの問い合わせ行ってもよい。前記所定のタイミングは、時間間隔で規定されてもよいし、コマンドの実行回数で規定されてもよい。前記問い合わせに対してユーザが実行指示音声を発した場合には、コマンド処理部214は、引き続き前記繰り返しコマンドを実行させ、前記問い合わせに対してユーザが停止指示音声を発した場合には、コマンド処理部214は、前記繰り返しコマンドを停止させる。
【0054】
また、指示判定部215は、さらに、コマンド処理部214により前記繰り返しコマンドが実行された場合に、音声受信部211により、前記コマンド音声が受信された後に、制御対象を前記繰り返しコマンドの実行前の状態に戻すことを指示する復帰指示ワードに対応する復帰指示音声(本発明の第4音声の一例)が受信されたか否かを判定する。
【0055】
例えば、コマンド処理部214により「Zoom in」の繰り返しコマンドが実行された場合に、指示判定部215は、音声受信部211により、前記復帰指示ワード(
図5参照)に対応する復帰指示音声が受信されたか否かを判定する。例えば、コマンド処理部214により「Zoom in」が実行された後に、音声受信部211が「戻して」の音声を受信した場合、指示判定部215は、音声受信部211により前記復帰指示ワードに対応する前記復帰指示音声が受信されたと判定する。
【0056】
指示判定部215により、音声受信部211が前記復帰指示ワードに対応する前記復帰指示音声を受信したと判定された場合、すなわち繰り返しコマンドが実行された後に前記復帰指示音声が受信された場合に、コマンド処理部214は、制御対象に対する前記繰り返しコマンドの逆コマンド(本発明の復帰コマンドの一例)を実行させる。例えば「Zoom in」の繰り返しコマンドが3回繰り返し実行されて表示倍率が標準倍率から3段階上がった後に前記復帰指示音声が受信された場合に、コマンド処理部214は、表示倍率を1段階下げる逆コマンド(「Zoom out」)を実行させる。
【0057】
また、コマンド処理部214が前記逆コマンドを実行させた後に、音声受信部211により前記実行指示ワード(
図5参照)に対応する実行指示音声が受信された場合には、コマンド処理部214は、前記逆コマンドを繰り返し実行させてもよい。この場合、ユーザが停止指示音声を発するまで、前記表示倍率が下がり続ける。このように、コマンド処理部214は、前記復帰指示音声に基づいて、制御対象を直前の状態に戻すコマンドを実行させてもよいし、制御対象に対して逆コマンドを繰り返し実行させてもよい。
【0058】
コマンド応答作成部216は、コマンド判定部213もしくは指示判定部215の判定結果と、コマンド処理部214で実行するコマンド内容とに基づいて、ユーザに応答する応答文を作成する。例えば、コマンド判定部213で判定されたコマンドが「ページめくり」のコマンドである場合は、コマンド応答作成部216は、「“ページめくり”を実行します」といった、コマンド名に「を実行します」の文を結合した応答文を作成する。また、指示判定部215により実行指示音声が受信されたと判定され、コマンド処理部214により「Zoom in」のコマンドが繰り返し実行される場合には、コマンド応答作成部216は、「再度“Zoom in”を実行します」といった、コマンド名に繰り返し実行を示す単語「再度」と「を実行します」の文を結合した応答文を作成する。また、指示判定部215により停止指示音声が受信されたと判定された場合には、コマンド応答作成部216は、「を停止します」の応答文を作成する。また、指示判定部215により復帰指示音声が受信されたと判定され、コマンド処理部214により逆コマンドの「Zoom out」が実行される場合には、コマンド応答作成部216は、「“Zoom out”を実行します」といった、逆コマンド名に「を実行します」の文を結合した応答文を作成する。作成した応答文は、音声処理装置1の応答処理部114によりスピーカ13から音声で出力される。
【0059】
[ユーザ端末3]
図2に示すように、ユーザ端末3は、制御部31、記憶部32、操作部33、表示部34、通信インターフェース35などを備える。
【0060】
操作部33は、ユーザ端末3のユーザの操作を受け付けるマウス、キーボード、又はタッチパネルなどである。表示部34は、各種の情報を表示する液晶ディスプレイ又は有機ELディスプレイなどの表示パネルである。操作部33及び表示部34は、一体に形成されたユーザインターフェースであってもよい。
【0061】
通信インターフェース35は、ユーザ端末3を有線又は無線でネットワークN1に接続し、ネットワークN1を介して他の機器(例えば音声処理装置1、クラウドサーバ2、データベースDBなど)との間で所定の通信プロトコルに従ったデータ通信を実行するための通信インターフェースである。
【0062】
記憶部32は、各種の情報を記憶するフラッシュメモリーなどの不揮発性の記憶部である。記憶部32には、制御部31に後述のコマンド実行処理(
図8参照)を実行させるためのコマンド実行プログラムなどの制御プログラムが記憶されている。例えば、前記コマンド実行プログラムは、CD又はDVDなどのコンピュータ読取可能な記録媒体に非一時的に記録され、ユーザ端末3が備えるCDドライブ又はDVDドライブなどの読取装置(不図示)で読み取られて記憶部32に記憶されてもよい。
【0063】
制御部31は、CPU、ROM、及びRAMなどの制御機器を有する。前記CPUは、各種の演算処理を実行するプロセッサである。前記ROMは、前記CPUに各種の処理を実行させるためのBIOS及びOSなどの制御プログラムを予め記憶する。前記RAMは、各種の情報を記憶し、前記CPUが実行する各種の処理の一時記憶メモリー(作業領域)として使用される。そして、制御部31は、前記ROM又は記憶部32に予め記憶された各種の制御プログラムを前記CPUで実行することによりユーザ端末3を制御する。
【0064】
具体的には、制御部31は、コマンド取得部311、コマンド実行部312などの各種の処理部を含む。なお、制御部31は、前記CPUで前記制御プログラムに従った各種の処理を実行することによって前記各種の処理部として機能する。また、制御部31に含まれる一部又は全部の処理部が電子回路で構成されていてもよい。なお、前記制御プログラムは、複数のプロセッサを前記各種の処理部として機能させるためのプログラムであってもよい。
【0065】
コマンド取得部311は、クラウドサーバ2のコマンド記憶領域(キュー)(記憶部22)に記憶されたコマンドを取得する。具体的には、例えばコマンド取得部311は、ユーザ端末3に対応するキューを監視(ポーリング)し、当該キューにコマンドが記憶されると当該コマンドを取得する。なお、クラウドサーバ2のコマンド処理部214が、前記コマンドに関するデータを、対応するユーザ端末3に送信し、コマンド取得部311が当該コマンドを取得してもよい。
【0066】
コマンド実行部312は、クラウドサーバ2のコマンド特定部212により特定される前記コマンドを実行する。具体的には、コマンド実行部312は、コマンド取得部311により取得される前記コマンドを実行する。例えば、コマンド実行部312は、コマンド取得部311により取得される前記キューに記憶されたコマンドを実行する。
【0067】
例えば、前記キューに「Zoom in」の繰り返しコマンドが記憶された場合に、コマンド取得部311が前記キューから当該繰り返しコマンドを取得し、コマンド実行部312が当該繰り返しコマンドを実行する。
【0068】
ここで、クラウドサーバ2が前記繰り返しコマンドに対応する実行指示音声を音声処理装置1から受信した場合、コマンド処理部214は、前記繰り返しコマンドを前記キューに繰り返し記憶させる。すなわち、コマンド処理部214は、コマンド取得部311により前記キューから前記繰り返しコマンドが取り出される度に、前記繰り返しコマンドを前記キューに記憶する。これにより、ユーザ端末3において、前記繰り返しコマンドが繰り返し実行される。
【0069】
以下、
図6~
図8を参照しつつ、音声処理装置1の制御部11、クラウドサーバ2の制御部21、及びユーザ端末3の制御部31によって実行される音声処理の手順の一例について説明する。前記音声処理には、音声処理装置1の制御部11によって実行される音声受信処理(
図6参照)と、クラウドサーバ2の制御部21によって実行されるコマンド制御処理(
図7参照)と、ユーザ端末3の制御部31によって実行されるコマンド実行処理(
図8参照)とが含まれる。
【0070】
なお、本発明は、前記音声処理に含まれる一又は複数のステップを実行する音声処理方法の発明として捉えることができる。また、ここで説明する前記音声処理に含まれる一又は複数のステップが適宜省略されてもよい。また、前記音声処理における各ステップは、同様の作用効果を生じる範囲で実行順序が異なってもよい。さらに、ここでは制御部11,21,31によって前記音声処理における各ステップが実行される場合を例に挙げて説明するが、他の実施形態では、1又は複数のプロセッサによって前記音声処理における各ステップが分散して実行されてもよい。
【0071】
[音声受信処理]
図6を参照しつつ、音声処理装置1の制御部11によって実行される音声受信処理について説明する。
【0072】
ステップS101において、制御部11は、ユーザから音声を受信したか否かを判定する。制御部11がユーザから前記音声を受信した場合(S101:YES)、処理はステップS102に移行する。制御部11はユーザから前記音声を受信するまで待機する(S101:NO)。
【0073】
ステップS102において、制御部11は、前記音声を認識する。具体的には、制御部11は、前記音声を認識して音声データをテキストデータに変換する。
【0074】
次にステップS103において、制御部11は、前記テキストデータに前記特定ワードが含まれるか否かを判定する。制御部11により前記テキストデータに前記特定ワードが含まれると判定された場合(S103:YES)、処理はステップS104に移行する。一方、制御部11により前記テキストデータに前記特定ワードが含まれないと判定された場合(S103:NO)、処理はS101に戻る。
【0075】
ステップS104において、制御部11は、前記特定ワードに続くキーワード(コマンド用キーワード)のコマンド音声又はテキストデータを、クラウドサーバ2に送信する。
【0076】
クラウドサーバ2の制御部21が音声処理装置1からコマンド音声を受信して、コマンド応答を音声処理装置1に出力した場合には、制御部11は、前記コマンド応答を取得し(S105:YES)、前記コマンド応答を出力する(S106)。例えば、前記コマンド音声が検索コマンドである場合、制御部11は、前記コマンド応答に対応する検索結果を取得してスピーカ13から出力させる。また例えば、前記コマンド音声が前記繰り返しコマンド(例えば「Zoom in」)である場合、制御部11は、前記コマンド応答を取得せず(S105:NO)、処理はステップS101に戻る。
【0077】
[コマンド制御処理]
図7を参照しつつ、クラウドサーバ2の制御部21によって実行されるコマンド制御処理について説明する。
【0078】
ステップS201において、制御部21は、音声処理装置1からコマンド音声又は前記指示音声(実行指示音声、停止指示音声、復帰指示音声)を受信したか否かを判定する。制御部21が音声処理装置1から前記コマンド音声又は前記指示音声を受信した場合(S201:YES)、処理はステップS202に移行する。制御部21は音声処理装置1から前記コマンド音声又は前記指示音声を受信するまで待機する(S201:NO)。ステップS201は、本発明の音声受信ステップの一例である。
【0079】
ステップS202において、制御部21は、前記コマンド音声又は前記指示音声を認識する。また、制御部21は、具体的には、制御部21は、前記コマンド音声を音声認識し、コマンドリスト情報D1(
図3参照)を参照して、前記コマンド音声に対応するコマンドを特定する。また、制御部21は、前記指示音声を音声認識し、指示ワードリスト情報D3(
図5参照)を参照して、前記指示音声に対応する指示ワードを特定する。ステップS201は、本発明のコマンド特定ステップの一例である。
【0080】
次にステップS203において、制御部21は、認識した音声が実行指示ワードであるか否かを判定する。認識した音声が前記実行指示ワードである場合(S203:YES)、処理はステップS204に移行する。一方、認識した音声が前記実行指示ワードでない場合(S203:NO)、すなわち認識した音声が前記コマンドである場合、処理はステップS209に移行する。ステップS203は、本発明の指示判定ステップの一例である。
【0081】
ステップS209では、制御部21は、特定したコマンドを発行する。例えば、制御部21は、「Zoom in」のコマンドを特定した場合に、当該コマンドの情報を記憶部22(キュー)に記憶する。その後、ステップS208において、制御部21は、発行したコマンドの情報をコマンド履歴情報D2(
図4参照)に登録する。
【0082】
ステップS204では、制御部21は、コマンド履歴情報D2(
図4参照)を参照して、前回(直前)に発行したコマンドを抽出する。例えば、コマンド履歴情報D2に前回のコマンドとして「Zoom in」が登録されている場合、制御部21は、コマンド履歴情報D2から「Zoom in」のコマンドを抽出する。
【0083】
次にステップS205において、制御部21は、抽出したコマンドが前記繰り返しコマンドであるか否かを判定する。抽出したコマンドが前記繰り返しコマンドである場合(S205:YES)、処理はステップS206に移行する。一方、抽出したコマンドが前記繰り返しコマンドでない場合(S205:NO)、処理はステップS210に移行する。ステップS210では、制御部21は、該当するコマンド(繰り返しコマンド)が存在しないと判断して処理はステップS201に戻る。ステップS205は、本発明のコマンド判定ステップの一例である。
【0084】
ステップS206では、制御部21は、前回の前記繰り返しコマンドが実行されてから現在までの時間が所定時間(例えば5秒)以内であるか否かを判定する。前回の前記繰り返しコマンドが実行されてから現在までの時間が所定時間以内である場合(S206:YES)、処理はステップS207に移行する。一方、前回の前記繰り返しコマンドが実行されてから現在までの時間が所定時間以内でない場合(S206:NO)、処理はステップS210に移行する。
【0085】
ステップS207において、制御部21は、前回の前記繰り返しコマンドと同じコマンドを発行する。例えば、制御部21は、「Zoom in」のコマンドの情報を記憶部22(キュー)に記憶する。その後、ステップS208において、制御部21は、発行したコマンドの情報をコマンド履歴情報D2(
図4参照)に登録する。ステップS207は、本発明のコマンド処理ステップの一例である。
【0086】
ステップS211において、制御部21は、発行したコマンドについて、ユーザに応答する応答文を作成する。例えば、制御部21は、発行したコマンドの内容(コマンド名又は逆コマンド名)と「を実行します」とを結合した応答文を作成する。また、制御部21は、繰り返し実行するコマンドの場合、前記コマンド名と「再度」と「を実行します」とを結合した応答文を作成する。また、制御部21は、コマンドを停止する場合、前記コマンド名と「を停止します」とを結合した応答文を作成する。制御部21は、作成した応答文を音声処理装置1に送信して、音声処理装置1のスピーカ13から音声出力させる。
【0087】
なお、制御部21は、ステップS202において認識した音声が前記停止指示音声である場合は、前記キューに記憶されたコマンドを削除する。
【0088】
また、制御部21は、ステップS202において認識した音声が前記復帰指示音声である場合は、制御対象に対する前記繰り返しコマンドの逆コマンドの情報を前記キューに記憶する。そして、制御部21は、ステップS208において、発行した逆コマンドの情報をコマンド履歴情報D2に登録する。
【0089】
[コマンド実行処理]
図8を参照しつつ、ユーザ端末3の制御部31によって実行されるコマンド実行処理について説明する。
【0090】
ステップS301において、制御部31は、コマンドの発行確認を行う。具体的には、制御部31は、ポーリング処理により、クラウドサーバ2の記憶部22(キュー)に登録される前記コマンドを確認する。
【0091】
ステップS302において、制御部31は、コマンドが発行されているか否かを判定する。前記キューに前記コマンドが記憶されている場合(S302:YES)、処理はステップS303に移行する。制御部31は、前記キューから前記コマンドを取得して(S303)、当該コマンドを実行する(S304)。
【0092】
例えば、制御部31が繰り返しコマンドの「Zoom in」を実行した後、ユーザが「繰り返し」の実行指示音声を発した場合、制御部31は、前記キューに繰り返し記憶される「Zoom in」のコマンドを取得して、「Zoom in」のコマンドを繰り返し実行する。
【0093】
以上のようにして、音声処理システム100は、前記音声処理を実行する。上述のように、本実施形態に係る音声処理システム100は、特定したコマンドが繰り返しコマンドである場合であって、当該繰り返しコマンドを実行した後に受信したユーザの音声が前記繰り返しコマンドを繰り返し実行する指示を表す実行指示ワードに対応する音声である場合に、前記繰り返しコマンドを繰り返し実行する。このように、前記繰り返しコマンドである場合には、ユーザの実行指示ワードを受信したことを条件として、前記繰り返しコマンドが実行される。このため、ユーザの意図に反して前記繰り返しコマンドが繰り返し実行されてしまう事態を防ぐことができる。よって、音声処理システム100によれば、ユーザの意図を適切に反映しつつ、所定のコマンドを繰り返し実行することが可能となる。
【0094】
本発明は上述の実施形態に限定されない。他の実施形態として、例えば、コマンド処理部214は、前回の前記繰り返しコマンドが実行されてから所定時間が経過した後に実行指示音声を受信した場合に、コマンド履歴情報D2に記憶された複数の実行履歴をユーザに提示し、複数の実行履歴のうちユーザにより選択される実行履歴に対応するコマンドを制御対象に対して実行させてもよい。例えば、ユーザが発した「Zoom in」のコマンドが実行されてから所定時間(例えば5秒)以内に、ユーザが、「繰り返し」の音声(実行指示音声)を発した場合に、コマンド処理部214は、「Zoom in」のコマンドを繰り返し実行させる。一方、ユーザが発した「Zoom in」のコマンドが実行されてから所定時間(例えば5秒)経過した後に、ユーザが、「繰り返し」の音声を発した場合には、コマンド処理部214は、コマンド履歴情報D2に記憶された複数の実行履歴をユーザに提示する。そして、コマンド処理部214は、複数の実行履歴のうちユーザにより選択された実行履歴に対応するコマンドを制御対象に対して実行させる。これにより、ユーザは、直前に実行されたコマンドだけでなく、当該コマンドよりも前に実行されたコマンドについても、再度実行させることが可能となる。
【0095】
本発明の音声処理システムは、クラウドサーバ2単体で構成されてもよいし、音声処理装置1及びクラウドサーバ2により構成されてもよいし、音声処理装置1、クラウドサーバ2、及びユーザ端末3により構成されてもよい。また音声処理システムは、一又は複数の物理サーバで構成されてもよいし、仮想サーバ(クラウドサーバ)で構成されてもよい。
【0096】
尚、本発明の音声処理システムは、各請求項に記載された発明の範囲において、以上に示された各実施形態を自由に組み合わせること、或いは各実施形態を適宜、変形又は一部を省略することによって構成されることも可能である。
【符号の説明】
【0097】
1 :音声処理装置
2 :クラウドサーバ
3 :ユーザ端末
100 :音声処理システム
111 :音声受信部
112 :音声判定部
113 :音声送信部
114 :応答処理部
211 :音声受信部
212 :コマンド特定部
213 :コマンド判定部
214 :コマンド処理部
215 :指示判定部
216 :コマンド応答作成部
311 :コマンド取得部
312 :コマンド実行部