(57)【特許請求の範囲】
【請求項１】
かぎられた空間内に音声認識機能を有する複数の機器が存在し、複数の前記機器に対し音声コマンドを与えることで、前記音声コマンドの与えられた機器が前記音声コマンドを認識し、前記音声コマンドの認識結果に応じて所定の動作制御をなす音声認識を用いた機器制御方法であって、複数の前記機器をネットワークに接続し、複数の前記機器が個々に有する情報を前記ネットワークを介して相互に交換し合い、前記音声コマンドに対し、自己機器の有する情報に加えて前記ネットワークを介して送られてくる他の機器の情報を参照して前記音声認識を行って、前記音声認識の結果に応じた機器の動作制御を行い、複数の前記機器が行う音声コマンドに対する音声認識は、複数の前記機器同士が相互に情報交換し合うことによって、前記自己機器における認識可能単語を前記他の機器も認識可能とし、前記相互に交換し合う情報は、少なくとも、複数の前記機器同士を識別するための機器識別情報、複数の前記機器が収集した雑音情報を含み、前記音声認識は、音声認識を行う際、前記雑音情報を相互に交換し合い、前記雑音情報を用いて、前記音声コマンドに重畳する雑音の除去を行って音声認識を行うものであり、前記音声認識の結果に応じた機器の動作制御を行うまでの処理手順は、前記機器識別情報を前記ネットワークを介して取得して、前記ネットワーク上に存在する情報交換すべき機器を認知するとともに、複数の前記機器の位置関係の測定を行い、その後、前記音声コマンドが入力されると、前記位置関係に基づき、前記音声コマンドが前記自己機器に対して発せられたか否かを判定し、前記音声コマンドが前記自己機器に対して発せられたものであると判定された場合には、前記音声コマンドに対する認識処理を行って、前記音声コマンドに対する認識結果に基づく機器の動作制御を行い、かつ前記音声認識は前記機器の各々において並列に行なわれることを特徴とする音声認識を用いた機器制御方法。
【請求項２】
前記重畳する雑音は、機器の定常的な運転音や環境上に定常的に存在する定常音と、ネットワークに接続されている機器が動作することによって発する音声や音楽などの音であり、前記定常音については、複数の前記機器が定常的雑音情報として取得するとともに、取得した定常的雑音情報をネットワークを通じて他の機器との間で相互に交換しあって複数の前記機器で保存し、前記音声認識を行う際は、前記定常的雑音情報を前記音声コマンドから除去して音声認識を行い、前記音声や音楽などの音については、前記音楽などの音を発する機器がリアルタイムで前記音楽などの音を雑音情報として取得するとともに、前記ネットワークに接続されている他の機器も前記雑音情報をネットワークを通じてリアルタイムで取得し、前記音声認識を行う際は、前記雑音情報を音声コマンドから除去して音声認識を行う、ことを特徴とする請求項１記載の音声認識を用いた機器制御方法。
【請求項３】
限られた空間内に音声認識機能を有する複数の機器が存在し、これらの機器のいずれかに対し音声コマンドを与えることで、その音声コマンドの与えられた機器がその音声コマンドを認識してその認識結果に応じて所定の動作制御をなす音声認識を用いた機器制御システムであって、複数の前記機器は、複数の前記機器が相互に情報交換可能となるようにネットワークに接続され、前記ネットワークに接続された複数の前記機器それぞれが、その機器がもともと有する機器動作部と前記機器動作部の動作状態の設定を行うユーザ操作部を有するとともに、少なくとも、前記音声コマンドを受け付けて前記音声コマンドを認識し、前記音声コマンドの認識結果に基づいて前記機器動作部を制御する音声認識を用いた機器動作制御部と、前記ネットワークに自己の機器を接続するためのネットワーク接続部とを有してなり、複数の前記機器それぞれが個々に有する情報を当該ネットワークを介して相互に交換し合い、前記音声コマンドに対し、自己機器の有する情報に加えて前記ネットワークを介して送られてくる他の機器の情報を参照して前記音声認識を行って、前記音声認識の結果に応じた機器の動作制御を行ない、複数の前記機器が行う音声コマンドに対する音声認識は、複数の前記機器同士が相互に情報交換し合うことによって、ある機器における認識可能単語を他の機器も認識可能とし、前記相互に交換し合う情報は、少なくとも、複数の前記機器同士を識別するための機器識別情報、複数の前記機器が収集した雑音情報を含み、前記音声認識は、音声認識を行う際、前記雑音情報を相互に交換し合い、前記雑音情報を用いて、前記音声コマンドに重畳する雑音の除去を行って音声認識を行うものであり、前記音声認識の結果に応じた機器の動作制御を行うまでの処理手順は、前記機器識別情報を前記ネットワークを介して取得して、前記ネットワーク上に存在する情報交換すべき機器を認知するとともに、複数の前記機器の位置関係の測定を行い、その後、前記音声コマンドが入力されると、前記位置関係に基づき、前記音声コマンドが前記自己機器に対して発せられたか否かを判定し、前記音声コマンドが前記自己機器に対して発せられたものであると判定された場合には、前記音声コマンドに対する認識処理を行って、前記音声コマンドに対する認識結果に基づく機器の動作制御を行い、かつ前記音声認識は前記機器の各々において並列に行なわれることを特徴とする音声認識を用いた機器制御システム。
【請求項４】
前記重畳する雑音は、機器の定常的な運転音や環境上に定常的に存在する定常音と、ネットワークに接続されている機器が動作することによって発する音声や音楽などの音であり、前記定常音については、複数の前記機器が定常的雑音情報として取得するとともに、取得した定常的雑音情報をネットワークを通じて他の機器との間で相互に交換しあって複数の前記機器で保存し、前記音声認識を行う際は、前記定常的雑音情報を前記音声コマンドから除去して音声認識を行い、前記音声や音楽などの音については、前記音楽などの音を発する機器がリアルタイムで前記音楽などの音を雑音情報として取得するとともに、前記ネットワークに接続されている他の機器も前記雑音情報をネットワークを通じてリアルタイムで取得し、前記音声認識を行う際は、前記雑音情報を音声コマンドから除去して音声認識を行う、ことを特徴とする請求項３記載の音声認識を用いた機器制御システム。
【請求項５】
限られた空間内に存在する音声認識機能を有した複数の機器をネットワークに接続し、複数の前記機器が個々に有する情報として、少なくとも、複数の前記機器を識別するための機器識別情報、複数の前記機器が収集した雑音情報を当該ネットワークを介して相互に交換することを可能とし、ユーザの発話する音声コマンドに対し、自己機器の有する情報に加えて前記ネットワークを介して送られてくる他の機器の情報を参照して音声認識を行って、前記音声認識の結果に応じた機器の動作制御を行う音声認識を用いた機器制御プログラムを記録した記録媒体であって、前記機器制御プログラムはコンピュータに、複数の前記機器を識別するための機器識別情報を前記ネットワークを介して取得して、前記ネットワーク上に存在する情報交換すべき機器を認知するとともに、複数の前記機器の位置関係の測定を行う手順と、前記位置関係の測定後、前記音声コマンドを待つ状態とし、前記音声コマンドが入力されると、前記位置関係に基づき、前記音声コマンドが自己機器に対して発せられたか否かを判定する手順と、当該音声コマンドが自己機器に対して発せられたものであると判定された場合には、前記音声コマンドに対する認識処理を行って、前記音声コマンドに対する認識結果に応じた機器の動作制御を行う手順と、を実行させることを含み、複数の前記機器が行う音声コマンドに対する音声認識は、前記音声認識を行う際、複数の前記機器が収集した雑音情報を相互に交換し合い、前記雑音情報を用いて、前記音声コマンドに重畳する雑音の除去を行って音声認識を行うものであり、また、複数の前記機器同士が相互に情報交換し合うことによって、ある機器における認識可能単語を他の機器も認識可能とし、かつ前記音声認識は前記機器の各々において並列に行なわれることを特徴とする音声認識を用いた機器制御プログラムを記録した記録媒体。
【請求項６】
前記重畳する雑音は、機器の定常的な運転音や環境上に定常的に存在する定常音と、ネットワークに接続されている機器が動作することによって発する音声や音楽などの音であり、前記定常音については、複数の前記機器が定常的雑音情報として取得するとともに、取得した定常的雑音情報をネットワークを通じて他の機器との間で相互に交換しあって複数の前記機器で保存し、前記音声認識を行う際は、前記定常的雑音情報を前記音声コマンドから除去して音声認識を行い、前記音声や音楽などの音については、前記音楽などの音を発する機器がリアルタイムで前記音楽などの音を雑音情報として取得するとともに、前記ネットワークに接続されている他の機器も前記雑音情報をネットワークを通じてリアルタイムで取得し、前記音声認識を行う際は、前記雑音情報を音声コマンドから除去して音声認識を行う、ことを特徴とする請求項５記載の音声認識を用いた機器制御プログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、音声認識機能を持つ家庭電化製品などの機器が限られた空間内に複数存在し、それらの機器が音声コマンドを認識して動作制御を行う音声認識を用いた機器制御方法および音声認識を用いた機器制御システムならびに音声認識を用いた機器制御プログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
近年、半導体製品の高性能化や低価格化により、広い分野にマイクロコンピュータ（マイコンという）が使用されている。特に、家庭電化製品（家電製品という）には多くの製品にマイコンが使用され、ますます多機能・高性能化が進んでいる。
【０００３】
このように家電製品などにもマイコンが気軽に搭載できることから、この種の機器にも、従来ではあまり考えられなかった多様な機能を持たせることが容易になってきている。たとえば、音声認識機能や音声合成機能などがその一例であって、これら音声認識機能や音声合成機能を持たせることで、音声対話型のユーザインタフェース機能を持った機器が種々考えられてきている。これは、家電製品以外においても同様のことが言える。
【０００４】
【発明が解決しようとする課題】
このような音声対話型のユーザインタフェース機能を持った機器が、ある限られた空間内に複数存在している状況を考える。図５は１つの限られた空間としてのある１つの部屋１内に、音声対話型のユーザインタフェース機能を持った機器として、エアコンディショナ（エアコンという）２とテレビジョン（ＴＶという）３とステレオなどの音響機器４が存在している様子を示すものである。
【０００５】
このように、１つの部屋１に、複数の音声対話型のユーザインタフェース機能を持った機器が存在する場合、ユーザがたとえばエアコン２に対して何らかの動作を行わせるための音声コマンドを与えると、エアコン２がその音声コマンドを認識し、その認識結果に応じた動作をなすが、このとき、他の機器もその音声コマンドに対して音声認識動作を行い、誤動作を行うことがある。
【０００６】
仮りに、ユーザの発した音声コマンドが、エアコンだけが認識可能な内容であって、ＴＶ３や音響機器４にとっては認識可能な内容ではなくても、ＴＶ３や音響機器４もその音声コマンドを認識しようとして音声認識動作を開始する場合があり、これによって、誤った認識を行って誤動作を行うことがある。特に、ユーザの与えた音声コマンドに対して、機器側から音声によって何らかの応答を行う音声対話機能を有する機器は、ユーザの与えた音声コマンドに対して全く関係のない応答がなされるなど色々な不具合が生じがちである。
【０００７】
そこで本発明は、音声認識機能を持つ家電製品などの機器が限られた空間内に複数存在する場合、それぞれの機器がその機器としての独立した動作を行いながらも、ユーザからの音声コマンドに対しては相互に情報交換を行いながら音声認識が行えるようにすることで、誤認識やそれによる誤動作を回避でき、さらに、雑音除去などを機能的に行えるようにして適切な機器制御を可能とすることを目的としている。
【０００８】
【課題を解決するための手段】
上述の目的を達成するために、本発明の音声認識を用いた機器制御方法は、  限られた空間内に音声認識機能を有する複数の機器が存在し、これらの機器のいずれかに対し音声コマンドを与えることで、その音声コマンドの与えられた機器がその音声コマンドを認識してその認識結果に応じて所定の動作制御をなす音声認識を用いた機器制御方法において、前記複数の機器をネットワークに接続し、それぞれの機器が個々に有する情報を当該ネットワークを介して相互に交換し合い、前記ユーザの発話する音声コマンドに対し、自己機器の有する情報に加えて前記ネットワークを介して送られてくる他の機器の情報を参照して音声認識を行って、その認識結果に応じた機器の動作制御を行うようにしている。
【０００９】
また、本発明の音声認識を用いた機器制御システムは、限られた空間内に音声認識機能を有する複数の機器が存在し、これらの機器のいずれかに対し音声コマンドを与えることで、その音声コマンドの与えられた機器がその音声コマンドを認識してその認識結果に応じて所定の動作制御をなす音声認識を用いた機器制御システムにおいて、前記複数の機器は、それぞれの機器が相互に情報交換可能となるようにネットワークに接続され、そのネットワークに接続された前記複数の機器それぞれが、その機器がもともと有する機器動作部とこの機器動作部の動作状態の設定を行うユーザ操作部を有するとともに、少なくとも、音声コマンドを受け付けてその音声コマンドを認識し、その認識結果に基づいて前記機器動作部を制御する音声認識を用いた機器動作制御部と、ネットワークに自己の機器を接続するためのネットワーク接続部とを有してなり、前記複数の機器それぞれが個々に有する情報を当該ネットワークを介して相互に交換し合い、前記ユーザの発話する音声コマンドに対し、自己の有する情報に加えて前記ネットワークを介して送られてくる他の機器の情報を参照して音声認識を行って、その認識結果に応じた機器の動作制御を行うようにしている。
【００１０】
これら各発明において、前記相互に交換し合う情報は、少なくとも、それぞれの機器を識別するための機器識別情報、それぞれの機器が収集した雑音情報を含むものである。
【００１１】
そして、前記認識結果に応じた機器の動作制御を行うまでの処理手順は、前記それぞれの機器を識別するための機器識別情報を前記ネットワークを介して取得して、当該ネットワーク上に存在する情報交換すべき機器を認知するとともに、それぞれ機器の位置関係の測定を行い、その後、音声コマンドが入力されると、上記それぞれの機器の位置関係に基づき、ユーザの発話する音声コマンドが自己機器に対して発せられたか否かを判定し、当該音声コマンドが自己機器に対して発せられたものであると判定された場合には、その音声コマンドに対する認識処理を行ってその認識結果に基づく機器の動作制御を行う。
【００１２】
そして、前記音声認識を行う際、前記それぞれの機器が収集した雑音情報を相互に交換し合い、その雑音情報を用いて、音声コマンドに重畳する雑音の除去を行って音声認識を行うようにしている。
【００１３】
このとき、前記音声コマンドに重畳する雑音は、機器の定常的な運転音や環境上に定常的に存在する定常音と、ネットワークに接続されている機器が動作することによって発する音声や音楽などの音であり、前記定常音については、それぞれの機器が定常的雑音情報として取得するとともに、取得した定常的雑音情報をネットワークを通じて他の機器との間で相互に交換しあってそれぞれの機器で保存し、音声認識を行う際は、その定常的雑音情報を音声コマンドから除去して音声認識を行う。
【００１４】
また、前記音声や音楽などの音については、それを発する機器がリアルタイムでその音を雑音情報として取得するとともに、ネットワークに接続されている他の機器もその雑音情報をネットワークを通じてリアルタイムで取得し、音声認識を行う際は、その雑音情報を音声コマンドから除去して音声認識を行うようにする。
【００１５】
また、前記それぞれの機器が行う音声コマンドに対する音声認識は、それぞれの機器同志が相互に情報交換し合うことによって、ある機器における認識可能単語を他の機器も認識可能としている。
【００１６】
また、本発明の音声認識を用いた機器制御プログラムを記録した記録媒体は、限られた空間内に存在する音声認識機能を有した複数の機器をネットワークに接続し、それぞれの機器が個々に有する情報として、少なくとも、それぞれの機器を識別するための機器識別情報、それぞれの機器が収集した雑音情報を当該ネットワークを介して相互に交換することを可能とし、ユーザの発話する音声コマンドに対し、自己機器の有する情報に加えて前記ネットワークを介して送られてくる他の機器の情報を参照して音声認識を行って、その認識結果に応じた機器の動作制御を行う音声認識を用いた機器制御プログラムを記録した記録媒体であって、その機器制御プログラムは、それぞれの機器を識別するための機器識別情報を前記ネットワークを介して取得して、当該ネットワーク上に存在する情報交換すべき機器を認知するとともに、それぞれ機器の位置関係の測定を行う手順と、この位置関係の測定後、ユーザからの音声コマンドを待つ状態とし、音声コマンドが入力されると、上記それぞれの機器の位置関係に基づき、ユーザの発話する音声コマンドが自己機器に対して発せられたか否かを判定する手順と、当該音声コマンドが自己機器に対して発せられたものであると判定された場合には、その音声コマンドに対する認識処理を行って、その認識結果に応じた機器の動作制御を行う手順とを含むものである。
【００１７】
この音声認識を用いた機器制御プログラムを記録した記録媒体の発明において、前記音声認識を行う際、前記それぞれの機器が収集した雑音情報を相互に交換し合い、その雑音情報を用いて、音声コマンドに重畳する雑音の除去を行って音声認識を行うようにしている。
【００１８】
このとき、前記音声コマンドに重畳する雑音は、機器の定常的な運転音や環境上に定常的に存在する定常音と、ネットワークに接続されている機器が動作することによって発する音声や音楽などの音であり、前記定常音については、それぞれの機器が定常的雑音情報として取得するとともに、取得した定常的雑音情報をネットワークを通じて他の機器との間で相互に交換しあってそれぞれの機器で保存し、音声認識を行う際は、その定常的雑音情報を音声コマンドから除去して音声認識を行う。
【００１９】
また、前記音声や音楽などの音については、それを発する機器がリアルタイムでその音を雑音情報として取得するとともに、ネットワークに接続されている他の機器もその雑音情報をネットワークを通じてリアルタイムで取得し、音声認識を行う際は、その雑音情報を音声コマンドから除去して音声認識を行うようにする。
【００２０】
また、前記それぞれの機器が行う音声コマンドに対する音声認識は、それぞれの機器同志が相互に情報交換し合うことによって、ある機器における認識可能単語を他の機器も認識可能としている。
【００２１】
このように本発明は、音声認識機能を有する複数の機器をネットワークに接続し、それぞれの機器が個々に有する情報を当該ネットワークを介して相互に情報交換し合いながら、音声認識を行って、その認識結果に応じた機器の動作制御を行うようにしているので、従来のように、ユーザがある機器に対して発話した音声コマンドに対し、他の機器もその音声コマンドを認識する動作を行って、誤動作するといった不具合を未然に防止することができ、ユーザの意図した機器の動作制御を的確に行うことができる。
【００２２】
なお、上述したそれぞれの機器が個々に有する情報というのは、少なくとも、それぞれの機器を識別するための機器識別情報、それぞれの機器が収集した雑音情報であり、この機器識別情報によって、ネットワーク上にどのような機器が存在するかを知ることができ、ネットワーク上に存在する情報交換すべき機器の存在を知った上で、機器間で音の送受信を行うなどして音の到達時間などから、それぞれの機器間の距離を求め、それに基づいて、それぞれの機器の位置関係を推定することもできる。
【００２３】
また、ある機器が収集した雑音情報を他の機器も共有することによって、音声コマンドを認識する際、音声コマンドに重畳した雑音情報を除去した上で音声認識処理することができるので、高い認識率を得ることができる。
【００２４】
また、本発明の処理手順は、それぞれの機器を識別するための機器識別情報を前記ネットワークを介して取得することによって、ネットワーク上にどのような機器が存在するかを認知するとともに、それぞれの機器の位置関係の測定を行うことによって機器の配置を推定し、その後、入力された音声コマンドに対し、機器相互間で情報交換を行いながら音声認識処理を行うようにしている。これによって、ユーザの音声コマンドがどの機器に対して発せられたかを的確に判定することができ、当該音声コマンドが自己の機器に対するものであると判定された場合は、その音声コマンドに対する認識処理を行ってその認識結果に基づく機器の動作制御を行うようにしているので、ユーザの意図しない機器が誤動作するのを防止できる。
【００２５】
また、ある機器が収集した雑音情報を相互に交換し合い、その雑音情報を用いて、音声コマンドに重畳する雑音の除去を行って音声認識を行うようにしている。
【００２６】
このように、ネットワークに接続されたすべての機器が雑音情報を共有できるので、どの機器に音声コマンドが与えられても、その音声コマンドに重畳された雑音を適切に除去した上で音声認識することができ、高い認識率を得ることができる。
【００２７】
なお、前記音声コマンドに重畳する雑音が環境上に定常的に存在する定常音（エアコンの運転音など）である場合には、予めその定常音を定常的雑音情報としてそれぞれの機器で保存しておくことができる。
【００２８】
したがって、音声コマンドを認識する際、音声コマンドにその定常的雑音情報が重畳されていても、保存されている定常的雑音情報を読み出すことによって、音声コマンドからその定常的雑音情報を除去して音声認識を行うことができる。このように、定常的雑音情報が重畳された音声コマンドに対し、適切な雑音除去が行えるので、高い認識率を得ることができる。
【００２９】
また、前記音声コマンドに重畳する雑音がＴＶや音響機器の発する音声や音楽などである場合には、それを発する機器がリアルタイムでその音情報を雑音情報として取得するとともに、ネットワークに接続されている他の機器もその雑音情報をネットワークを通じてリアルタイムで取得できるようにしている。
【００３０】
これによって、音声コマンドを認識する際は、その雑音情報を音声コマンドから除去して音声認識を行うようにする。このように、 ＴＶや音響機器などの音が雑音として重畳された音声コマンドに対し、適切な雑音除去が行えるので、高い認識率を得ることができる。
【００３１】
さらに、情報を共有することによって、ある機器における認識可能単語を他の機器も認識可能とすることもでき、これによって、誤認識による誤動作を防止できる効果がある。すなわち、個々の機器が独自に認識する従来のシステムでは、それぞれの機器は、自分の認識可能な単語のみしか認識できないことはいうまでもない。これに対して、本発明のように、それぞれの機器がネットワークにつながれてそれぞれの情報を共有できるようにすれば、それぞれの機器が認識可能な単語をすべての機器が認識可能単語とすることができる。これによって、きめ細かい高精度な認識処理がなされるので、紛らわしい単語などを的確に認識処理することができるので、誤認識による誤動作を防止できるようになる。
【００３２】
【発明の実施の形態】
以下、本発明の実施の形態について説明する。なお、この実施の形態で説明する内容は、本発明の音声認識を用いた機器制御方法および音声認識を用いた機器制御システムについての説明であるとともに、本発明の音声認識を用いた機器制御プログラムを記録した記録媒体における機器制御プログラムの具体的な処理内容をも含むものである。
【００３３】
この実施の形態では、図５で説明したように、１つの居住空間１内に、音声対話型のユーザインタフェース機能を持った機器として、エアコン２とＴＶ３とステレオなどの音響機器４が存在している状況を考えるが、本発明では、図１に示すように、これら各機器がネットワーク１０に接続されていて、それぞれの機器は独立した動作が可能でありながら、それぞれの機器同志が相互に情報交換を行いながら音声認識を行うことができるようになっている。
【００３４】
なお、このネットワーク１０は、この図１では便宜上、有線通信路によるネットワークとしているが、近距離無線（Blue Toothなど）などによる無線通信によるネットワークでもよい。また、有線通信路によるネットワークは建物内の電気配線を用いるなどの方法もあり、ネットワークを構築する手段は本発明では限定されるものではない。また、この実施の形態では、音声対話型のインターフェース機能を有した機器を考えているが、本発明は、音声コマンドを認識してその認識結果に応じた動作をなす機器であればよく、ユーザに対して音声による応答を行う機能は必ずしも必要ではない。
【００３５】
図２および図３は図１で示した音声対話型のユーザインタフェース機能を持った機器の構成をそれぞれ示すブロック図であるが、ここでは、エアコン２（図２参照）とＴＶ３（図３参照）について説明する。なお、これらの機器は、音声対話型のユーザインタフェース機能を持った機器であるので、音声認識機能や音声合成機能を有し、また、それらの機能に伴って、音声入力部や音声出力部を有する。以下、詳細に説明する。
【００３６】
図２はエアコン２の構成を示すもので、従来から普通に用いられている通常のエアコンとしての動作をなす機器動作部２１やエアコンの運転の開始／停止やタイマ設定など通常のエアコンでなされる様々な設定がユーザによって可能なユーザ操作部２２の他に、音声対話型のユーザインタフェース機能を実現する音声認識を用いた機器制御部２３、エアコン２をネットワーク１０に接続するためのネットワーク接続部２４が設けられる。
【００３７】
また、図３はＴＶ３の構成を示すもので、図２に示したエアコン２と基本的には殆ど同じ構成であり、従来から普通に用いられている通常のＴＶとしての動作をなす機器動作部３１やＴＶの動作の開始／停止やチャンネル設定など通常のＴＶでなされる様々な設定がユーザによって可能なユーザ操作部３２の他に、図２のエアコン２と同様に、音声対話型のユーザインタフェース機能を実現する音声認識を用いた機器制御部３３、ＴＶ３をネットワーク１０に接続するためのネットワーク接続部３４が設けられる。
【００３８】
これらエアコン２あるいはＴＶ３における音声認識を用いた機器制御部２３，３３は、それぞれ同じ構成となっているので、ここでは、同一部分には同一符号を付して説明する。この実施の形態では、音声対話型のユーザインタフェース機能を有しているので、音声コマンド入力用のマイクロホン４１、このマイクロホン４１に入力された音声の増幅などを行う増幅器４２、音声をディジタル変換するＡ／Ｄ変換部４３、ユーザに対する応答用の音声データをアナログ変換するＤ／Ａ変換部４４、それを増幅する増幅器４５、それを出力するスピーカ４６が設けられるとともに、入力された音声コマンドを認識してそれに対する応答用の音声データを生成したり、認識結果に対応した機器制御信号を生成したり、さらには、自己機器が有する自己機器情報（たとえば、自己機器に割り当てられた機器識別情報や自己機器が収集した雑音情報など）をネットワーク接続部２４（ＴＶ３の場合はネットワーク接続部３４）を介してネットワーク１０上に送出したり、ネットワーク１０上に存在する他の機器からの情報（たとえば、それぞれの機器に割り当てられた機器識別情報やそれぞれの機器が収集した雑音情報など）をネットワーク接続部２４（ＴＶ３の場合はネットワーク接続部３４）を介して受け取ってそれを処理する情報処理部４７と、この情報処理部４７が実行する動作処理プログラムなどが保存されたＲＯＭや上述の自己機器情報や他の機器からの情報など、情報処理部４７が行う処理に必要な様々な情報を保存するＲＡＭからなる情報記録部４８とを有している。
【００３９】
なお、情報処理部４７は、ユーザ操作部２２（ＴＶ３の場合はユーザ操作部３２）にも接続されていて、このユーザ操作部２２（ＴＶ３の場合はユーザ操作部３２）によって、出力音声の音量などの制御や機器動作部２１（ＴＶ３の場合は機器動作部３１）に対する制御内容など様々な項目をユーザが設定できるようになっている。
【００４０】
また、ＴＶ３の場合は、もともと、音声を発する機能を有しているので、ＴＶとしての音声出力用の増幅器やスピーカと、ユーザ応答用の増幅器やスピーカなどは共用することができる。したがって、図３では、ＴＶ３としての機器動作部３１からの音声出力とユーザに対する応答出力は、ともに増幅器４５で増幅されたのちに、スピーカ４６から出力されるようになっている。
【００４１】
また、エアコン２はその運転中に運転音が定常的な雑音として常に発生するのが普通であるが、その運転音が音声コマンドに重畳されて、認識性能に悪影響を与えることがある。
【００４２】
これに対処するために、その運転音をそれぞれの機器が自己のマイクロホン４１で収集して、情報処理部４７で解析を行って雑音情報として出力し、その雑音情報を情報記憶部４８に保存するとともに、ネットワーク１０にも送出してそれぞれの機器がその雑音情報を共有し合うことができるようにしている。そして、音声コマンドを認識する際、その雑音情報を用いて音声コマンドに重畳された運転音を雑音として除去した上で音声認識する。
【００４３】
なお、このような定常的な雑音は、ネットワーク１０に接続されている機器が発する雑音だけではなく、ネットワーク１０に接続されていない機器が発する場合もあり、また、環境上に定常的に存在する雑音の場合もある。これらの定常的な雑音も、ネットワーク１０に接続されているそれぞれの機器が、自己のマイクロホン４１で収集して、情報処理部４７で解析を行って雑音情報として出力し、その雑音情報を情報記憶部４８に保存するとともに、ネットワーク１０にも送出してそれぞれの機器がその雑音情報を共有し合うようにする。
【００４４】
一方、ＴＶ３の場合は、そのＴＶ３の音声（増幅器４５の出力側音声）をＡ／Ｄ変換器４３を介して情報処理部４７にリアルタイムで入力させ、情報処理部４７で解析して雑音情報として出力し、、その雑音情報を用いて、音声コマンドを音声認識する際、音声コマンドに重畳されたＴＶの音声を雑音として除去しながら音声認識する。さらに、情報処理部４７で解析されて得られた雑音情報は、ネットワーク１０を介して他の機器にもリアルタイムで与えることができ、それによって、他の機器においても、ユーザからのコマンドに対し音声認識を行う際、音声コマンドに重畳されたＴＶの音声を雑音として除去しながら音声認識する。
【００４５】
また、図１においては、これらエアコン２やＴＶ３の他に音響機器４が存在するが、この音響機器４もこの図２や図３と同様に考えることができ。なお、音響機器４はＴＶ３と同様に、もともと、音を出力する機能を有しているので、図３で示したＴＶ３と同様に、 音響機器４としての音声出力用の増幅器やスピーカと、ユーザ応答用の増幅器やスピーカなどは共用することができる。
【００４６】
さらに、ＴＶ３と同様、その音響機器４から発せられる音を増幅器４５の出力側から取り出して情報処理部４７にリアルタイムで入力させ、情報処理部４７で解析して雑音情報を得て、その雑音情報を用いて、音声コマンドを音声認識する際、音声コマンドに重畳されたＴＶの音声を雑音として除去するようにしている。そして、この雑音情報はネットワーク１０を介して他の機器にもリアルタイムで与えることができる。
【００４７】
このように本発明では、ある限られた空間として１つの部屋１内に、音声対話型のユーザインタフェース機能を持った機器が複数存在している状況を考えている。そして、それぞれの機器（ここではエアコン２、ＴＶ３、音響機器４）は、それぞれの機器としての動作は独立して並列に行いながら、自己の情報処理部４７から自己機器情報をネットワーク１０に送出するとともに、ネットワーク１０上に存在する他の機器からの情報（他機器情報）を受け取って、それぞれが相互に情報を交換しながら音声認識を用いた機器制御を行うようにしている。以下、その動作について図４のフローチャートを参照しながら説明する。
【００４８】
この図４のフローチャートは、個々の機器における情報処理部４７が行う処理を示すものであり、個々の機器の動作が開始された状態（たとえば、電源スイッチなどがオンして、その機器の動作が開始した状態）で、この図４に示す処理がそれぞれの機器において並列的になされる。
【００４９】
その処理手順としては、個々の機器がネットワーク１０に接続されると（ステップｓ１）、それによって、それぞれの機器が相互に自己機器情報の交換を行う（ステップｓ２）。これによって、自己機器からみてどの機器がネットワーク１０に接続されているかを知ることができる。これは、機器がネットワーク１０に接続されると、個々の機器の機器識別情報（機器ＩＤという）がネットワーク１０上に送出され、その機器ＩＤを他の機器が取得することによって、現在、どの機器がネットワーク１０に接続されているかを知ることができる。
【００５０】
そして、個々の機器ごとに個々の機器の位置関係の測定を行うか否かを判断する（ステップｓ３）。これは、自己機器からみて、現在、ネットワーク１０に接続されている複数の機器がどのような位置関係にあるか否かを調べるもので、その位置関係の測定は、ある機器が出す音を他の機器のマイクロホンが取得（たとえば、ＴＶ３のスピーカ４６から出される音をエアコン２のマイクロホン４１が取得）し、その音の到達時間の遅れなどによって２つの機器間の距離を測定し、その距離によって位置関係を調べる。たとえば、この実施の形態のように、３つの機器（エアコン２、ＴＶ３、音響機器４）について考えている場合には、３つの機器の間の距離がわかればそれによって、図１に示す部屋１内における３つの機器の位置関係を推定することができる。
【００５１】
なお、この位置関係の測定は、位置関係測定モードとなっている場合にのみ行われる。その位置関係測定モードとなる条件としては、たとえば、自己機器が新たにネットワーク１０に加わった場合、他の機器が新たにネットワーク１０に加わった場合、前回の位置関係測定から所定の時間が経過している場合などである。
【００５２】
上述の位置関係測定モードとなる条件として、自己機器が新たにネットワーク１０に加わった場合、あるいは、他の機器が新たにネットワーク１０に加わった場合の例としては、たとえば、エアコン２とＴＶ３がすでに動作中で、これら２つの機器がすでにネットワーク１０に接続されている状態にあって、そこに新たに、音響機器４の電源スイッチがオンとなってネットワーク１０に接続された場合などがある。
【００５３】
この場合、音響機器４から見れば、自己機器が新たにネットワーク１０に加わったので、音響機器４においては、位置関係測定モードとなる。一方、すでにネットワーク１０に接続状態となっているエアコン２やＴＶ３にとっては、音響機器４が新たにネットワーク１０に接続されたので、それを検知すると、その時点で位置測定モードとなる。
【００５４】
このように、位置測定モードとなった場合には、前述したような手法によって位置測定を行い（ステップｓ４）、それぞれの機器の位置関係を取得し、自己の機器から見て他の機器がどのような位置関係となっているかを推定する。
【００５５】
そして次に、雑音解析を行うか否かを調べ（ステップｓ５）、雑音解析を行う必要がある場合には、雑音解析を行う（ステップｓ６）。ここでの雑音というのは、前述したように、エアコン２の運転音やその他の機器の運転音など、さらには、環境下に存在する定常的な雑音である。これらの定常的な雑音は、ネットワーク１０に接続されているそれぞれの機器がそれぞれ自分のマイクロホンで入力し、それぞれの機器において雑音解析する。そして、その解析結果を、定常的な雑音情報として自己の情報記憶部４８に保存しておくとともに、ネットワーク１０を介して他の機器にも送り、それぞれの機器がその定常的な雑音情報を共有する。
【００５６】
なお、定常的な雑音が存在しない場合には、ステップｓ６の処理は不要であり、また、定常的な雑音があっても、一度、その定常的な雑音情報が得られれば、それ以降は特には雑音解析処理は行う必要はないが、その定常的な雑音に大きな変化があったときには、再度、雑音解析処理を行ったほうが望ましい。この定常的な雑音に大きな変化があったときの例として、たとえば、定常的な雑音の発生源がエアコンであった場合、ユーザによって運転内容の設定変更がなされた場合など（たとえば、送風を「弱」から「強」に変更した場合など）がある。
【００５７】
このようにして、位置関係の測定が終了し、さらに、定常的な雑音などに対する雑音解析がなされたあと、それぞれの機器は、ユーザからの音声コマンドの入力待ち状態となる（ステップｓ７）。ここで、音声コマンドが発せられ、それがそれぞれの機器のマイクロホンに入力されると、それぞれの機器は、音声認識処理モードに入る（ステップｓ８）。この音声認識処理モードは、それぞれの機器がネットワーク１０を介して相互に情報交換を行い、ユーザがどの機器に対して音声コマンドを与えたかを判定して、その音声コマンドの与えられた機器が音声コマンドに対する音声認識を行う。
【００５８】
その処理としては、それぞれの機器の位置関係に基づき、ユーザがどの機器に対して音声コマンドを発話したのかを特定する。たとえば、ユーザの音声コマンドがエアコン２に対してなされたものであることがわかったとすれば、エアコン２がユーザの音声コマンドの認識結果に対する動作を行う。そして、この音声コマンドに対する認識処理を行う際、音声コマンドに重畳されている雑音を除去した上で音声認識処理を行う。
【００５９】
ここでの雑音情報とは、上述したエアコン２などが発する定常的な運転音を解析して得られた雑音情報や、ＴＶ３や音響機器４などが発する音声あるいは音楽などの音を解析して得られた雑音情報である。そして、これら音源既知の雑音情報は、その雑音の発生源となる機器が収集し、それを解析して雑音情報としてネットワーク１０にも送出する。それによって、ネットワーク１０に接続されている他の機器もそれらの雑音情報を取得することができ、ネットワーク１０に接続されたすべての機器がその雑音情報を共有する。
【００６０】
これによって、音声コマンドを認識する際、音声コマンドに重畳されたそれらの雑音を除去した上で、音声コマンドを認識することができる。
【００６１】
なお、エアコン２などが発する定常的な運転音は、前述したように、収集した雑音を予め解析して、それをそれぞれの機器の情報記憶部４８などに保存しておくことができる。したがって、音声認識する際、情報記憶部４８からその雑音情報を読み出して、音声コマンドに重畳されているエアコン２の運転音を除去して音声認識するということができる。
【００６２】
一方、 音声コマンドに重畳されたＴＶ３や音響機器４が発する音は、リアルタイムで雑音情報を解析しながら雑音を除去して音声認識する必要がある。したがって、これらＴＶ３や音響機器４からの音情報は、それをアルタイムで取得して、取得した音を他の機器にもリアルタイムで送る必要がある。なお、この場合、実際の音声認識処理は、ユーザからの音声コマンドやＴＶ３や音響機器４からの音情報をバッファリングして両者の同期をとりながら多少の時間遅れを持った状態で行うことができる。
【００６３】
以上のように、ユーザによって音声コマンドが与えられると、機器の位置関係に基づき、ユーザがどの機器に対して音声コマンドを発話したのかを特定する。たとえば、ユーザの発話した音声を各機器が入力したときの時刻のタイミングや入力音声のパワーなどを用いて、さらに、各機器の位置関係から、ユーザがどの機器に向かって発話したかを解析することが可能となる。
【００６４】
そして、ユーザからの音声コマンドが与えられた機器（ここでは、エアコン２としている）が、ユーザの音声コマンドを雑音除去しながら音声認識処理して、その認識結果に対する動作を行う。なお、この音声認識処理を行っているときにも常に他の機器との間で情報交換が行われている。
【００６５】
上述の音声認識結果に対する動作手順は、まず、音声による応答を行うか否かの判定を行（ステップｓ９）。つまり、そのエアコン２が音声対話型であって音声による応答を行う必要のある場合には、ユーザの音声コマンドに対し音声による応答を行い（ステップｓ１０）、次に、その認識結果に応じた機器の制御を行うか否かを判定し（ステップｓ１１）、機器の制御を行うのであれば、その認識結果に応じた機器の制御を行う（ステップｓ１２）。
【００６６】
たとえば、ユーザの音声コマンドが「スイッチオフ」であったとすれば、それを音声認識し、その認識結果に基づいて、たとえば、機器側からユーザに対して「スイッチオフですね」といった応答を行ったのちに、スイッチをオフすることによって機器（この場合、エアコン２）の運転を停止するといった制御がなされる。
【００６７】
一方、ステップｓ９における判定が、音声による応答は行わないとの判定であれば、直接、その認識結果に基づいた機器の制御を行うか否かを判定し（ステップｓ１１）、機器の制御を行うのであれば、そのまま、認識結果に基づいた機器の制御を行う（ステップｓ１２）。たとえば、ユーザの音声コマンドが「スイッチオフ」であったとすれば、それを音声認識し、その認識結果に基づいて、スイッチをオフして機器（この場合、エアコン２）の運転を停止するといった制御がなされる。
【００６８】
また、ステップｓ９における判定が、音声による応答は行わないとの判定であり、かつ、ステップｓ１１の判定が、機器の制御を行うのではない場合には、再び、ステップｓ２に処理が戻り、ステップｓ２〜ｓ６を経て、ステップｓ７における次の音声コマンド入力を待つ処理に入る。なお、このとき、位置関係の測定や定常雑音の計測などを行う必要がなければ、ステップｓ２〜ｓ６を省略して、直接、ステップｓ７に処理が飛んでもよい。
【００６９】
以上説明したように、この実施の形態では、ある限られた空間としての１つの部屋１内に、音声対話型のユーザインタフェースを持った機器として、エアコン２とＴＶ３と音響機器４が存在し、それらがネットワーク１０に接続され、それぞれの機器は機器としての動作を独立して並列に行いながらも、相互に情報交換を行うことができるようにしている。
【００７０】
これによって、それぞれの機器は、現在、ネットワーク１０上にどのような機器が存在するかを認知することができるとともに、それぞれの機器がどのような位置関係にあるかを推定することができ、それに基づいて、ユーザがどの機器に対して音声コマンドを発しているかを判定することができる。さらに、他の機器から出されている雑音情報をそれぞれの機器が共有することもできる。
【００７１】
このように、それぞれの機器がネットワーク１０に接続され、相互に情報交換することによって、ユーザがどの機器に対して音声コマンドを発しているかを個々の機器において判定することができることから、ユーザの意図しない機器が誤動作するのを未然に防止することができる。
【００７２】
また、ある機器から発せられる音声や音楽、あるいは、前述した定常的な雑音情報を機器が収集すると、その収集した雑音は、ネットワーク１０を通じて他の機器にも与えることができるので、音声認識する際、それらの雑音が音声コマンドに重畳されていても、その雑音を除去した上で音声認識処理することが可能となり、機器が動作している環境下での音声認識率を向上させることができる。
【００７３】
また、情報を共有できるということは、それぞれの機器が独自に認識可能な単語を他の機器も認識できるようにすることも可能であり、誤認識による誤動作を防止できる効果もある。すなわち、個々の機器が独自に認識する従来のシステムでは、たとえば、エアコン２の認識可能な単語が２０単語、ＴＶ３が認識可能な単語が３０単語、音響機器４の認識可能な単語が１０単語であるとすれば、それぞれの機器は、自分の認識可能な単語のみしか認識できないことはいうまでもない。
【００７４】
したがって、これらの機器が１つの限られた空間内に存在し、ユーザの発話する音声コマンドによって動作制御を行う場合、ユーザがたとえばエアコン２に対して、そのエアコン２のみが認識可能な音声コマンドを発話したとすると、その音声コマンドはエアコン２以外の機器にも入力され、エアコン２以外の機器も無理に認識を行おうとする。そして、エアコン２以外の機器は、その音声コマンドに比較的近いコマンドとして認識を行って、その認識結果に応じた動作制御を行ってしまうという不具合が生じる可能性がある。
【００７５】
これに対して、本発明のように、それぞれの機器がネットワークにつながれてそれぞれの情報を共有できるようにすれば、エアコン２の認識可能な２０単語、ＴＶ３が認識可能な３０単語、音響機器４の認識可能な１０単語をすべて認識可能単語とすることができる。
【００７６】
たとえば、ユーザがエアコン２に対して「スイッチオフ」という音声コマンドを発生した場合を考える。この「スイッチオフ」という音声コマンドは、どの機器にも共通のコマンドであり、どの機器においても認識可能であるとする。そこで、ある１つの機器がユーザに対し「どの機器ですか」といった応答を行い、それに対して、ユーザが「エアコン」と発話したとすると、ユーザの発話した「エアコン」が、すべての機器で相互に情報交換しながら音声認識され、その結果、エアコン２だけがユーザの「スイッチオフ」の音声コマンドに対する動作を行うというようなことが可能となる。
【００７７】
これは、それぞれの機器がネットワーク１０に接続され、認識可能単語をも共有できることによって可能となるものである。つまり、エアコン２は「エアコン」という単語を認識可能単語として持っていても、ＴＶ３、音響機器４はそれぞれ単独では、「エアコン」は認識可能単語として持っていないのが普通であるが、上述したように、認識可能単語を共有することによって、本来、認識できない単語をも認識することができるようになる。
【００７８】
これによって、きめ細かい高精度な認識処理がなされるので、紛らわしい単語などを的確に認識処理することができるので、誤認識による誤動作を防止できるようになる。
【００７９】
なお、本発明は以上説明した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲で種々変形実施可能となるものである。たとえば、前述の実施の形態では、音声対話型のインターフェース機能を有した機器、つまり、ユーザの音声コマンドを認識して、その応答を音声により行うとともに、その認識結果に応じた機器制御を行う機能を有した機器について説明したが、本発明は、ユーザに対して音声による応答を行う機能は必ずしも必要ではない。
【００８０】
また、ネットワーク１０つながる機器は全てが音声認識を行ってその認識結果に応じた機器の動作制御をなす機能を有するものでなくてもよい。たとえば、ＴＶ３や音響機器４など、音声や音楽などの音を発する機器は、たとえ、音声認識機能を持たず、音声コマンドによる制御対象の機器でないとしても、それらの機器をネットワーク１０に接続しておき、それらの機器が発する音声や音楽などの音を雑音情報として、ネットワーク１０に接続された音声認識機能を有する他の機器に提供できるようにすることも可能である。
【００８１】
これによって、それらＴＶ３や音響機器４などが動作しているときに、ユーザからの音声コマンドが、音声認識機能を有する機器に対して与えられた場合、その音声コマンドに重畳されるＴＶ３や音響機器４などの音を除去した上で音声認識することができる。
【００８２】
また、前述の実施の形態では、制御対象の機器としては主に家庭電化製品を想定したが、本発明は家電製品に限られるものではなく、音声コマンドを認識してその認識結果に応じた動作をなす音声認識機能を有する機器が、限られた空間内に複数存在するような場合には広く適用することができるものである。
【００８３】
また、本発明は、以上説明した本発明を実現するための処理手順が記述された処理プログラムを作成し、その処理プログラムをフロッピィディスク、光ディスク、ハードディスクなどの記録媒体に記録させておくことができ、本発明はその処理プログラムが記録された記録媒体をも含むものである。また、ネットワークから当該処理プログラムを得るようにしてもよい。
【００８４】
【発明の効果】
以上説明したように本発明によれば、音声認識機能を有した複数の機器をネットワークに接続し、それぞれの機器が個々に有する情報を当該ネットワークを介して相互に情報交換し合いながら、音声認識を行って、その認識結果に応じた機器の動作制御を行うようにしているので、ユーザの音声コマンドがどの機器に対して発せられたかを的確に判定することができ、ユーザの意図しない機器が誤動作するのを防止できる。
【００８５】
また、それぞれの機器同志で情報交換が可能となることによって、ある機器が収集した雑音情報を、ネットワークに接続されたすべての機器が共有できるので、どの機器に音声コマンドが与えられても、その音声コマンドに重畳された雑音を適切に除去した上で音声認識することができ、高い認識率を得ることができる。
【００８６】
さらに、情報を共有することによって、ある機器における認識可能単語を他の機器も認識可能とすることもでき、これによって、誤認識による誤動作を防止できる効果がある。すなわち、個々の機器が独自に認識する従来のシステムでは、それぞれの機器は、自分の認識可能な単語のみしか認識できないことはいうまでもない。これに対して、本発明のように、それぞれの機器がネットワークにつながれてそれぞれの情報を共有できるようにすれば、それぞれの機器が認識可能な単語をすべての機器が認識可能単語とすることができる。
【００８７】
これによって、きめ細かい高精度な認識処理がなされるので、紛らわしい単語などを的確に認識処理することができるので、誤認識による誤動作を防止できるようになる。
【図面の簡単な説明】
【図１】本発明の実施の形態を説明する機器配置例を示す図であり、限られた空間内に複数の音声認識機能を有した機器がネットワークに接続された様子を概略的に示す図である。
【図２】図１で示された機器としてエアコンの構成図を示すブロック図である。
【図３】図１で示された機器としてＴＶの構成図を示すブロック図である。
【図４】本発明の実施の形態の処理手順を説明するフローチャートである。
【図５】限られた空間内に複数の音声認識機能を有した機器が存在する場合の従来技術を説明する図である。
【符号の説明】
１  限られた空間としての部屋
２  エアコン
３  ＴＶ
４  音響機器
１０  ネットワーク
２１  エアコンにおける機器動作部
２２  エアコンにおけるユーザ制御部
２３  エアコンにおける音声認識を用いた機器制御部
２４  エアコンにおけるネットワーク接続部
３１  ＴＶにおける機器動作部
３２  ＴＶにおけるユーザ制御部
３３  ＴＶにおける音声認識を用いた機器制御部
３４  ＴＶにおけるネットワーク接続部
４１  マイクロホン
４２  増幅器
４３  Ａ／Ｄ変換器
４４  Ｄ／Ａ変換器
４５  増幅器
４６  スピーカ
４７  情報処理部
４８  情報記憶部
【図１】
0004109414.tif 000002
【図２】
0004109414.tif 000003
【図３】
0004109414.tif 000004
【図４】
0004109414.tif 000005
【図５】
0004109414.tif 000006