IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ドルビー ラボラトリーズ ライセンシング コーポレイションの特許一覧

特表2023-551704サブ帯域ドメイン音響エコーキャンセラに基づく音響状態推定器
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2023-12-12
(54)【発明の名称】サブ帯域ドメイン音響エコーキャンセラに基づく音響状態推定器
(51)【国際特許分類】
   H04R 3/02 20060101AFI20231205BHJP
【FI】
H04R3/02
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023533221
(86)(22)【出願日】2021-12-02
(85)【翻訳文提出日】2023-05-31
(86)【国際出願番号】 US2021061661
(87)【国際公開番号】W WO2022120085
(87)【国際公開日】2022-06-09
(31)【優先権主張番号】63/120,824
(32)【優先日】2020-12-03
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】63/200,590
(32)【優先日】2021-03-16
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】21164808.4
(32)【優先日】2021-03-25
(33)【優先権主張国・地域又は機関】EP
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLUETOOTH
2.ZIGBEE
3.HDMI
(71)【出願人】
【識別番号】507236292
【氏名又は名称】ドルビー ラボラトリーズ ライセンシング コーポレイション
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】サウスウェル,ベンジャミン ジョン
(72)【発明者】
【氏名】グナワン,デイヴィッド
(72)【発明者】
【氏名】ハインズ,クリストファー グレアム
【テーマコード(参考)】
5D220
【Fターム(参考)】
5D220CC03
(57)【要約】
幾つかの実装では、オーディオ環境内の第1オーディオ装置の第1サブ帯域ドメイン音響エコーキャンセラ(AEC)から、複数の第1適応フィルタ管理モジュールの各々からの第1適応フィルタ管理データを受信するステップを含み、各第1適応フィルタ管理モジュールは第1サブ帯域ドメインAECのサブ帯域に対応し、各第1適応フィルタ管理モジュールは第1の複数の適応フィルタを制御するように構成されている。第1の複数の適応フィルタは、少なくとも第1適応フィルタタイプと第2適応フィルタタイプを含むことができる。幾つかの実装は、第1適応フィルタ管理データから、第1サブ帯域ドメインAECの複数のサブ帯域に対応する第1の複数の抽出された特徴を抽出するステップと、第1の複数の抽出された特徴に少なくとも部分的に基づいて現在のローカル音響状態を推定するステップと、を含む。
【特許請求の範囲】
【請求項1】
オーディオ処理方法であって、
オーディオ環境において、第1オーディオ装置の第1サブ帯域ドメイン音響エコーキャンセラ(AEC)から、複数の第1適応フィルタ管理モジュールの各々から第1適応フィルタ管理データを受信するステップであって、前記複数の第1適応フィルタ管理モジュールの各第1適応フィルタ管理モジュールは、前記第1サブ帯域ドメインAECのサブ帯域に対応し、各第1適応フィルタ管理モジュールが、第1の複数の適応フィルタを制御するように構成され、前記第1の複数の適応フィルタは少なくとも第1適応フィルタタイプ及び第2適応フィルタタイプを含み、前記第1の複数の適応フィルタの各適応フィルタは各々のサブ帯域に対するエコーキャンセルされた信号を生成するために使用される、ステップと、
前記第1適応フィルタ管理データから、第1の複数の抽出された特徴を抽出するステップであって、前記第1の複数の抽出された特徴は、前記第1サブ帯域ドメインAECの複数のサブ帯域に対応する、ステップと、
前記第1の複数の抽出された特徴に少なくとも部分的に基づいて、前記第1オーディオ装置の近くの現在のローカル音響状態を推定するステップと、
を含み、
前記第1の複数の抽出された特徴は、以下:
前記第1適応フィルタタイプを介して生成されたエコーキャンセルされた信号が前記複数のサブ帯域の中で最も低い電力を持つ確率、
前記第2適応フィルタタイプを介して生成されたエコーキャンセルされた信号が前記複数のサブ帯域で最も低い電力を持つ確率、
入力マイクの電力が、前記第1の複数の適応フィルタのいずれかを介して生成されたエコーキャンセルされた信号の電力よりも低い確率、
を含む特徴のリストからの1つ以上の特徴を含む、方法。
【請求項2】
少なくとも部分的に、前記現在のローカル音響状態に基づいて、1つ以上のタイプのオーディオ処理を制御するステップ、
を更に含む請求項1に記載の方法。
【請求項3】
1つ以上のタイプのオーディオ処理を制御するステップは、前記オーディオ環境で再生されるオーディオデータのオーディオ処理を制御するステップを含む、請求項2に記載の方法。
【請求項4】
1つ以上のタイプのオーディオ処理を制御するステップは、自動音声認識処理を制御するステップ、ノイズ補償処理を制御するステップ、前記第1サブ帯域ドメインAECを制御するステップ、又はそれらの組み合わせを含む、請求項2又は3に記載の方法。
【請求項5】
前記現在のローカル音響状態は、音声データと再生されるオーディオデータの両方が前記第1オーディオ装置の近くに存在するダブルトーク状態、又は前記第1オーディオ装置の近くのエコー経路変化、の少なくとも1つを含む、請求項1~4のいずれか一項に記載の方法。
【請求項6】
前記現在のローカル音響状態は、前記第1オーディオ装置の位置の変化、前記第1オーディオ装置の1つ以上の設定の変化、前記第1オーディオ装置を含むオーディオシステムの構成の変化、再生オーディオのレベル、又は背景ノイズのレベル、のうちの1つ以上を含む、請求項1~5のいずれか一項に記載の方法。
【請求項7】
前記第1の複数の抽出された特徴が、前記第1適応フィルタタイプの第1フィルタ係数が前記第2適応フィルタタイプの適応フィルタにコピーされるレート、又は前記第2適応フィルタタイプの第2フィルタ係数が前記第1適応フィルタタイプの適応フィルタにコピーされるレートのうちの1つ以上を含む、請求項1~6のいずれか一項に記載の方法。
【請求項8】
前記第1の複数の適応フィルタは、少なくとも第1から第M適応フィルタタイプを含み、Mは3以上の整数であり、前記第1の複数の抽出された特徴は、以下:
第M適応フィルタタイプを介して生成されたエコーキャンセルされた信号が最低電力を有する確率、
第2から第(M-1)適応フィルタタイプのいずれかを介して生成されたエコーキャンセルされた信号が最低電力を有する確率、
入力マイクの電力が、第1から第M適応フィルタタイプのいずれかを介して生成されたエコーキャンセルされた信号の電力よりも低い確率、及び
前記第1から第M適応フィルタタイプのいずれかのフィルタ係数が、前記第1から第M適応フィルタタイプのいずれかの他の適応フィルタにコピーされるレート、
を含む特徴のリストから1つ以上の特徴を含む、請求項1~7のいずれか一項に記載の方法。
【請求項9】
前記オーディオ環境内の第2から第Nオーディオ装置の第2から第Nサブ帯域ドメインAECから、第2から第Nの複数の適応フィルタ管理モジュールの各々からの第2から第N適応フィルタ管理データを受信するステップであって、前記第2から第Nの複数の適応フィルタ管理モジュールの各々は前記第2から第Nオーディオ装置のうちの1つに対応し、Nは2より大きい整数である、ステップと、
前記第2から第N適応フィルタ管理データから、第2から第Nの複数の抽出された特徴を抽出するステップと、
前記第1の複数の抽出された特徴と前記第2から第Nの複数の抽出された特徴に少なくとも部分的に基づいて、前記オーディオ環境における現在のグローバル音響状態を推定するステップと、
前記現在のグローバル音響状態に少なくとも部分的に基づいて、1つ以上のタイプのオーディオ処理を制御するステップと、
を更に含む請求項1~8のいずれか一項に記載の方法。
【請求項10】
前記第1適応フィルタタイプが線形適応フィルタタイプであり、前記第2適応フィルタタイプが非線形適応フィルタタイプである、請求項1~9のいずれか一項に記載の方法。
【請求項11】
前記第1適応フィルタタイプと前記第2適応フィルタタイプが異なる適応フィルタリングアルゴリズムによって更新される、請求項1~10のいずれか一項に記載の方法。
【請求項12】
前記第1適応フィルタ管理データが個々のフィルタ係数値を含まない、請求項1~11のいずれか一項に記載の方法。
【請求項13】
前記第1適応フィルタ管理データは、前記第1サブ帯域ドメインAECの出力を含まず、前記第1サブ帯域ドメインAECの出力は、前記複数の第1適応フィルタ管理モジュールによって出力されたサブ帯域ドメインのエコーキャンセルされた信号から生成された全帯域のエコーキャンセルされた信号である、請求項1~12のいずれか一項に記載の方法。
【請求項14】
請求項1~13のいずれか一項に記載の方法を実行するよう構成される機器。
【請求項15】
ソフトウェアを記憶している1つ以上の非一時的媒体であって、前記ソフトウェアは、請求項1~13のいずれか一項に記載の方法を実行するよう1つ以上の装置を制御するための命令を含む、非一時的媒体。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願]
本願は、以下の出願の優先権を主張する。2020年12月3日に出願された米国仮出願63/120,824、2021年3月16日に出願された米国仮出願63/200,590、及び2021年3月25日に出願された欧州特許出願No.21164808.4。これらの各々は参照により全体が組み込まれる。
【0002】
[技術分野]
本開示は、音響エコーキャンセラを実装するシステム及び方法に関する。
【背景技術】
【0003】
音響エコーキャンセラを備えたオーディオ装置やシステムは広く普及している。音響エコーキャンセラを実装する既存のシステム及び方法は利益をもたらすが、改良されたシステム及び方法が望ましいことがある。
【発明の概要】
【0004】
[注釈及び用語]
特許請求の範囲を含む本開示を通じて、「スピーカ」、「ラウドスピーカ」、及び「オーディオ再生トランスデューサ」は、単一のスピーカ供給により駆動される任意の放音トランスデューサ(又はトランスデューサのセット)を示すために同義的に使用される。標準的なヘッドフォンセットは、2つのスピーカを含む。スピーカは、複数のトランスデューサ(例えば、ウーファー及びツイーター)を含むよう実装され、これらは単一の共通のスピーカフィード又は複数のスピーカフィードにより駆動される。幾つかの例では、スピーカフィードは、異なるトランスデューサに結合された異なる回路ブランチで異なる処理を受ける場合がある。
【0005】
特許請求の範囲を含む本開示を通じて、信号又はデータに「対して」動作を実行する(例えば、信号又はデータをフィルタリング、スケーリング、変換、又は利得を適用する)という表現は、信号又はデータに、又は信号又はデータの処理済みのバージョンに(例えば、当該動作の実行の前に予備的なフィルタリング又は後処理の行われた信号のバージョン)、直接動作を実行することを示すために広義に使用される。
【0006】
特許請求の範囲を含む本開示を通じて、表現「システム」は、装置、システム、又はサブシステムを示すために広義に使用される。例えば、デコーダを実装するサブシステムは、デコーダシステムと呼ばれてよく、このようなサブシステムを含むシステムは(例えば、複数の複数の入力に応答してX個の出力信号を生成するシステムであり、そのうちサブシステムがM個の入力を生成し、他のX-M個の入力は外部ソースから受信される)、デコーダシステムとも呼ばれてよい。
【0007】
特許請求の範囲を含む本開示を通じて、用語「プロセッサ」は、データ(例えば、オーディオ又はビデオ又は他の画像データ)に対して動作を実行するよう(ソフトウェア又はファームウェアにより)プログラム可能な又はその他の場合構成可能なシステム又は装置を示すために広義に使用される。プロセッサの例は、フィールドプログラマブルゲートアレイ(又は他の構成可能な集積回路又はチップセット)、オーディオ又は他の音声データに対してパイプライン処理を実行するようプログラムされた及び/又はその他の場合に構成されたデジタル信号プロセッサ、プログラム可能な汎用プロセッサ若しくはコンピュータ、及びプログラム可能なマイクロプロセッサチップ又はチップセットを含む。
【0008】
特許請求の範囲を含む本開示を通じて、用語「接続する」又は「接続される」は、直接又は間接的接続を意味するために使用される。従って、第1装置が第2装置に接続する場合、該接続は、直接接続を通じて、又は他の装置及び接続を介する間接接続を通じてよい。
【0009】
ここで使用される「スマート装置」とは、一般に、Bluetooth、Zigbee、近距離無線通信、Wi-Fi、Li-Fi(light fidelity)、3G、4G、5Gなどの様々な無線プロトコルを介して1つ以上の他の装置(又はネットワーク)と通信するように構成され、ある程度対話的及び/又は自律的に動作できる電子装置である。幾つかの注目すべき種類のスマート装置は、スマートフォン、スマートカー、スマートサーモスタット、スマートドアベル、スマートロック、スマート冷蔵庫、ファブレット及びタブレット、スマートウォッチ、スマートバンド、スマートキーチェーン及びスマートオーディオ装置である。「スマート装置」という用語は、人工知能などのユビキタスコンピューティングの幾つかの特性を示す装置を指す場合もある。
【0010】
ここでは、「スマートオーディオ装置」という表現を使用して、単一目的のオーディオ装置又は多目的のオーディオ装置(例えば、仮想アシスタント機能の少なくとも幾つかの側面を実装するオーディオ装置)のいずれかであるスマート装置を示す。単一目的のオーディオ装置は、少なくとも1つのマイクを含む又はそれに結合された(及び任意で、少なくとも1つのスピーカ及び/又は少なくとも1つのカメラを含む又はそれに結合された)装置(例えば、テレビ(TV))であり、大部分又は主に単一の目的を達成するように設計されている。例えば、TVは、標準的に番組素材からオーディオを再生できるが(再生する能力があると考えられるが)、多くの例では、最新のTVは、何らかのオペレーティングシステムを実行し、該オペレーティングシステム上ではテレビを試聴するアプリケーションを含むアプリケーションがローカルに実行する。この意味で、スピーカ及びマイクロフォンを有する単一目的オーディオ装置は、ローカルアプリケーション及び/又はサービスを実行して、スピーカ及びマイクロフォンを直接使用するよう構成されることが多い。幾つかの単一目的オーディオ装置は、ゾーン又はユーザの構成した領域に渡りオーディオの再生を達成するために一緒にグループ化するよう構成されてよい。
【0011】
一般的なタイプの多目的オーディオ装置の1つは、仮想アシスタント機能の少なくとも一部の側面を実装するオーディオ装置であるが、仮想アシスタント機能の他の側面は、多目的オーディオ装置が通信用に構成されている1つ以上のサーバなど、1つ以上の他の装置によって実装される場合がある。このような多目的オーディオ装置は、本願明細書で「仮想アシスタント」と呼ばれる場合がある。仮想アシスタントは、少なくとも1つのマイクを含む又はそれに結合された(及び任意で、少なくとも1つのスピーカ及び/又は少なくとも1つのカメラを含む又はそれに結合された)装置(例えば、スマートスピーカ又は音声アシスタント統合装置)である。一部の例では、仮想アシスタントは、ある意味でクラウド対応であるか、又は仮想アシスタント自体に完全には実装されていないアプリケーションに対して、(仮想アシスタントとは異なる)複数の装置を利用する機能を提供する場合がある。つまり、仮想アシスタント機能の少なくとも幾つかの側面、例えば音声認識機能は、1つ以上のサーバ又は仮想アシスタントがインターネットなどのネットワーク経由で通信できるその他の装置によって(少なくとも部分的に)実装される場合がある。仮想アシスタントは、時に、一緒に、例えば離散的且つ条件付きで定義された方法で、動作してよい。例えば、2つ以上の仮想アシスタントは、それらのうちの1つ、例えば起動ワードを聞いたことを最も確信しているものが、起動ワードに応答するという意味で、一緒に動作してよい。接続された仮想アシスタントは、幾つかの実装では、ある種のコンステレーションを形成してよく、これは、仮想アシスタントであってよい(又は実装する)1つのメインアプリケーションにより管理されてよい。
【0012】
ここで、「起動ワード(wakeword)」は、広い意味で使用され、任意の音声(例えば、人間により発話された単語、又は何らかの他の音声)を示し、スマートオーディオ装置は、(スマートオーディオ装置に含まれる又はそれに結合される少なくとも1つのマイクロフォン、又は少なくとも1つの他のマイクロフォンを用いて)音声の検出(「聞こえること」)に応答して起動するよう構成される。この文脈では、「起動する(awake)」ことは、装置が、音声コマンドを待機している(つまり、傾聴している)状態に入ることを示す。場合によっては、ここで「起動ワード」と呼ばれるものは、フレーズなどの複数の単語を含むことがある。
【0013】
ここで、表現「起動ワード検出器」は、リアルタイム音声(例えば、会話)特徴とトレーニング済みモデルとの間の不整合を連続的に検索するよう構成された装置(又は装置を構成するための命令を含むソフトウェア)を示す。標準的に、起動イベントは、起動ワードが検出される確立が所定の閾値を超えることが起動ワード検出器により決定されるときは常にトリガされる。例えば、閾値は、誤った受容と誤った拒否との率の間の現実的な妥協を与えるよう調整される所定の閾値であってよい。起動ワードイベントに続き、装置は、コマンドを傾聴し、受信したコマンドをより大きなより計算集約的な認識器に渡す状態(これは、「起動」状態又は「注意力(attentiveness)」状態と呼ばれてよい)に入り得る。
【0014】
ここで使用される「プログラムストリーム」及び「コンテンツストリーム」という用語は、1つ以上のオーディオ信号、及び場合によってはビデオ信号の集まりを指し、少なくともその一部は一緒に聞こえることを意図している。例としては、音楽の選択、映画のサウンドトラック、映画、テレビ番組、テレビ番組のオーディオ部分、ポッドキャスト、生の音声通話、スマートアシスタントからの合成音声応答などがある。場合によっては、コンテンツストリームには、オーディオ信号の少なくとも一部の複数のバージョンが、例えば同じダイアログが複数の言語で、含まれることがある。このような場合、オーディオデータの1つのバージョン又はその一部(例えば、単一言語に対応するバージョン)のみが一度に再生されることを意図している。
【0015】
[概要]
本開示の少なくとも幾つかの態様は、1つ以上のオーディオ処理の方法を介して実装されてよい。幾つかの例では、方法は、少なくとも部分的に、制御システム及び/又は1つ以上の非一時的媒体に格納された命令(例えば、ソフトウェア)を介して実装することができる。そのような幾つかの方法は、例えば制御システムによって、オーディオ環境内の第1オーディオ装置の第1サブ帯域ドメイン音響エコーキャンセラ(acoustic echo canceller (AEC))から、複数の第1適応フィルタ管理モジュールの各々からの第1適応フィルタ管理データを受信することを含む。複数の第1適応フィルタ管理モジュールの各第1適応フィルタ管理モジュールは、第1サブ帯域ドメインAECのサブ帯域に対応してもよい。各第1適応フィルタ管理モジュールは、第1の複数の適応フィルタを制御するように構成してもよい。第1の複数の適応フィルタは、少なくとも第1適応フィルタタイプと第2適応フィルタタイプを含むことができる。
【0016】
そのような幾つかの方法は、例えば制御システムによって、第1適応フィルタ管理データから第1の複数の抽出された特徴を抽出することを含む。第1の複数の抽出された特徴は、第1サブ帯域ドメインAECの複数のサブ帯域に対応することができる。そのような幾つかの方法は、例えば制御システムによって、第1の複数の抽出された特徴に少なくとも部分的に基づいて、第1オーディオ装置の近くの現在のローカル音響状態を推定することを含む。
【0017】
幾つかの例では、方法は、現在のローカル音響状態に少なくとも部分的に基づいて、1つ以上のタイプのオーディオ処理を制御することを含むことができる。1つ以上のタイプのオーディオ処理を制御することは、例えば、オーディオ環境で再生されるオーディオデータのオーディオ処理を制御することを含むことがある。場合によっては、1つ以上のタイプのオーディオ処理を制御することは、自動音声認識処理を制御することを含むことがある。1つ以上のタイプのオーディオ処理を制御することは、例えば、ノイズ補償処理を制御することを含むことがある。例えば、1つ以上のタイプのオーディオ処理を制御することは、第1サブ帯域ドメインAECを制御することを含むことがある。
【0018】
幾つかの例によると、現在のローカル音響状態は、音声データと再生されるオーディオデータの両方が第1オーディオ装置の近くに存在するダブルトーク状態であるか、又は含むことがある。追加又は代替として、現在のローカル音響状態は、第1オーディオ装置の近くのエコー経路変化であるか、又は含むことがある。場合によっては、現在のローカル音響状態は、以下:第1オーディオ装置の位置の変化、第1オーディオ装置の1つ以上の設定の変化、第1オーディオ装置を含むオーディオシステムの構成の変化、再生オーディオのレベル、又は背景ノイズのレベル、のうちの1つ以上を含んでよい。
【0019】
場合によっては、方法は、オーディオ環境内の第2から第Nオーディオ装置の第2から第Nサブ帯域ドメインAECから、第2から第Nの複数の適応フィルタ管理モジュールの各々からの第2から第N適応フィルタ管理データを受信することを含むことがあり、Nは2より大きい整数である。このような例では、第2から第Nの複数の適応フィルタ管理モジュールの各々が、第2から第Nオーディオ装置の1つに対応することがある。このような例では、方法は、第2から第N適応フィルタ管理データから第2から第Nの複数の抽出された特徴を抽出することを含むことがある。このような例では、方法は、第1の複数の抽出された特徴と第2から第Nの複数の抽出された特徴に少なくとも部分的に基づいて、オーディオ環境における現在のグローバル音響状態を推定することを含むことがある。
【0020】
幾つかのこのような方法は、現在のグローバル音響状態に少なくとも部分的に基づいて、1つ以上のタイプのオーディオ処理を制御することを含んでよい。幾つかのそのような例によると、現在のグローバル音響状態に少なくとも部分的に基づいて、オーディオデータの1つ以上のタイプのオーディオ処理を制御することは、オーディオ環境で再生されるオーディオデータの1つ以上のタイプのオーディオ処理を制御することを含むことがある。幾つかのそのような例では、現在のグローバル音響状態は、複数の人がオーディオ環境にいるパーティ状態を含むことがある。幾つかのそのような例によると、オーディオデータのレンダリング方法を制御することは、分散レンダリングモードに従ってオーディオデータをレンダリングさせることを含む。
【0021】
幾つかの例によると、第1の複数の抽出された特徴が、第1適応フィルタタイプの第1フィルタ係数が第2適応フィルタタイプの適応フィルタにコピーされるレート、及び/又は第2適応フィルタタイプの第2フィルタ係数が第1適応フィルタタイプの適応フィルタにコピーされるレートを含んでよい。
【0022】
幾つかの例では、第1の複数の抽出された特徴は、以下:
第1適応フィルタタイプが時間間隔中に最小の残留電力を生成する確率、
第2適応フィルタタイプが時間間隔中に最小の残留電力を生成する確率、
時間間隔中に第1適応フィルタタイプを介して生成される第1残留電力又は第2適応フィルタタイプを介して生成される第2残留電力よりも入力マイク電力が低い確率、
第1適応フィルタタイプが複数のサブ帯域で最も低い残留電力を生成する確率、
第2適応フィルタタイプが複数のサブ帯域で最も低い残留電力を生成する確率、
複数のサブ帯域で、第1適応フィルタタイプを介して生成された第1残留電力又は第2適応フィルタタイプを介して生成された第2残留電力よりも入力マイク電力が低い確率、
のうちの1つ以上を含んでよい。
【0023】
幾つかの例によると、第1適応フィルタタイプは第2適応フィルタタイプよりも比較的積極的である可能性がある。幾つかの例では、第1適応フィルタタイプは線形適応フィルタタイプであってよく、第2適応フィルタタイプは非線形適応フィルタタイプであってよい。幾つかの例では、第1適応フィルタタイプはメイン適応フィルタであってよく、第2適応フィルタタイプはシャドウ適応フィルタであってよい。幾つかの例によると、第1適応フィルタと第2適応フィルタは、異なる適応フィルタリングアルゴリズムによって更新される場合がある。幾つかの例では、第1適応フィルタは、第2適応フィルタよりも多数の適応フィルタ係数値を含む場合がある。
【0024】
幾つかの実装では、第1適応フィルタ管理データは個々のフィルタ係数値を含まない。幾つかの例では、第1適応フィルタ管理データは、第1サブ帯域ドメインAECの残余出力を含まない。
【0025】
幾つかの例では、第1の複数の適応フィルタは、少なくとも第1から第M適応フィルタタイプを含み、Mは3以上の整数である。幾つかのそのような例によると、第1の複数の抽出された特徴は、次の1つ以上を含むことがある:
第M適応フィルタタイプが最低の残留電力を生成する確率、
第2から第(M-1)適応フィルタタイプのいずれかが最低の残留電力を生成する確率、
第1から第M適応フィルタタイプのいずれかを介して生成される残留電力よりも入力マイクの電力が低い確率、及び
第1から第M適応フィルタタイプのいずれかのフィルタ係数が、第1から第M適応フィルタタイプのいずれかの他の適応フィルタにコピーされるレート。
【0026】
本願明細書に記載の動作、機能、及び/又は方法のうちの一部又は全部は、1つ以上の非一時的媒体に記憶された命令(例えば、ソフトウェア)に従い1つ以上の装置により実行されてよい。このような非一時的媒体は、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、等を含むがこれらに限定されない、本願明細書に記載のようなメモリ装置を含んでよい。したがって、本開示に記載された主題の種々の新規な態様は、ソフトウェアを記憶された1つ以上の非一時的媒体を介して実装されてよい。
【0027】
本開示の少なくとも幾つかの態様は、機器を介して実装されてよい。例えば、1つ以上の装置(例えば、1つ以上の装置を含むシステム)は、本願明細書に開示した方法を少なくとも部分的に実行する能力があってよい。幾つかの実装形態では、装置は、インタフェースシステム及び制御システムを備えるオーディオ処理システムであるか又はそれを含む。制御システムは、汎用の単一又は複数チッププロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又は他のプログラマブル論理素子、個別ゲート又はトランジスタロジック、個別ハードウェアコンポーネント、又はそれらの組合せのうちの少なくとも1つを含んでよい。制御システムは本願明細書に開示される方法のうちの一部又は全部を実施するよう構成されてよい。
【0028】
本願明細書に記載の主題の1つ以上の実装の詳細は、添付の図面及び以下の説明において説明される。他の特徴、態様、及び利点は、説明、図面、及び特許請求の範囲から明らかになる。以下の図面の相対的寸法は縮尺通りに描かれないことがある。
【図面の簡単な説明】
【0029】
種々の図面内の同様の参照符号及び記号は、同様の要素を示している。
【0030】
図1A】オーディオ環境の例を示す。
【0031】
図1B】本開示の種々の態様を実装可能な機器のコンポーネントの例を示すブロック図である。
【0032】
図2】一例による、オーディオ装置のコンポーネントを表すシステムブロック図である。
【0033】
図3図2に示した1つのマルチチャネル音響エコーキャンセラ(MC-AEC)の例示的なブロック図を示す。
【0034】
図4図3に示すサブ帯域AECの1つのブロックの例を示している。
【0035】
図5】一例によるローカル状態推定器の例示的なブロックを示す。
【0036】
図6】一例によるグローバル状態推定器の例示的なブロックを示す。
【0037】
図7A】ローカル音響状態の5つの異なるタイプの間の、同じMC-AECから得られた5つの抽出された特徴ベクトルの例示的なプロットを示すグラフである。
図7B】ローカル音響状態の5つの異なるタイプの間の、同じMC-AECから得られた5つの抽出された特徴ベクトルの例示的なプロットを示すグラフである。
図7C】ローカル音響状態の5つの異なるタイプの間の、同じMC-AECから得られた5つの抽出された特徴ベクトルの例示的なプロットを示すグラフである。
図7D】ローカル音響状態の5つの異なるタイプの間の、同じMC-AECから得られた5つの抽出された特徴ベクトルの例示的なプロットを示すグラフである。
図7E】ローカル音響状態の5つの異なるタイプの間の、同じMC-AECから得られた5つの抽出された特徴ベクトルの例示的なプロットを示すグラフである。
【0038】
図8A】幾つかの例による、線形分類器の検証に関連するグラフを示す。
図8B】幾つかの例による、線形分類器の検証に関連するグラフを示す。
【0039】
図9】特徴ベクトルxの時間的情報を利用するように構成されたリカレントニューラルネットワークを含む深層ニューラルネットワークの簡単な例を示している。
【0040】
図10】開示された方法の一例を概説するフロー図である。
【0041】
図11】ゾーン分類器を実装するように構成された一実施例の要素のブロック図である。
【0042】
図12】幾つかの実装に従った注意表現機能の例を示すブロック図である。
【0043】
図13】実装による、環境(例えば家庭)で実装されるシステムのブロック図である。
【0044】
図14】この例では生活空間であるオーディオ環境のフロアプランの例を示している。
【発明を実施するための形態】
【0045】
音響エコーキャンセラ(Acoustic echo canceller (AEC))は、性能とコストの両方の理由からサブ帯域ドメインで実装されることが多い。サブ帯域ドメインAEC(ここではマルチチャネルAEC又はMC-AECとも呼ばれる)は、通常、複数のサブ帯域の各々に対するサブ帯域AECを含む。更に、実用的な理由から、各サブ帯域AECは通常、複数の適応フィルタを実行し、各々が異なる音響条件で最適になる。複数の適応フィルタは、ヒューリスティックに従って動作する適応フィルタ管理モジュールによって制御されるため、全体としてサブ帯域AECは各フィルタの最良の特性を持つことができる。
【0046】
適応フィルタ管理モジュールのアクションと隠れ状態は、個々の適応フィルタ自体の実際の出力とともに、MC-AECが動作しているオーディオ環境の音響条件に関する暗黙の情報を含む。開示されている実装の中には、以前は利用できなかった機能を提供するために、この暗黙の情報を利用するものもある。例えば、幾つかの開示されている実装では、複数のサブ帯域AECの各々から抽出された個々のメトリック、観測値、及び/又は特徴のアンサンブルが、音響状態推定器への入力として提供される場合がある。
【0047】
図1Aは、オーディオ環境の例を示す。本願明細書で提供される他の図と同様に、図1Aに示される要素の数及び種類は、単なる例である。他の実装には、より多くの、より少ない、及び/又は異なる種類と数の要素が含まれる場合がある。
【0048】
この例によると、オーディオ環境100にはオーディオ装置110A、110B、110C、及び110Dが含まれる。この例では、各オーディオ装置110A-110Dには、マイク120A、120B、120C、及び120Dの各々1つと、スピーカ121A、121B、121C、及び121Dの各々1つが含まれる。幾つかの例によると、各オーディオ装置110A-110Dは、スマートスピーカなどのスマートオーディオ装置である場合がある。
【0049】
この例によると、オーディオ環境100で複数の音響イベントが発生している。この例では、オーディオ装置110Cの近くで話している話者101によって、1つの音響イベントが発生する。要素102は、話者101の音声を表すことを意図している。
【0050】
この例では、別の音響イベントが、少なくとも部分的に、可変要素103によって引き起こされている。ここで、可変要素103は、オーディオ環境100のドアである。この例によると、ドア103が開くと、環境外からの音105がオーディオ環境100内でより明確に知覚される場合がある。更に、ドア103の角度が変化すると、オーディオ環境100内のエコー経路の一部が変化する。この例によると、要素104は、ドア103の様々な位置によって引き起こされるオーディオ環境100のインパルス応答の可変要素を表している。
【0051】
この例によると、オーディオ装置Dへ向かう歩行者106の動き107によって、別の音響イベントが発生する。この例では、要素108は、オーディオ装置Dへ向かう歩行者106の動き107によって発生するオーディオ環境100のインパルス応答の可変要素を表している。
【0052】
幾つかの開示された実装は、オーディオ装置によって実装されているMC-AECの適応フィルタ管理データから抽出された特徴に少なくとも部分的に基づいて、オーディオ装置の近くの現在のローカル音響状態(及び/又は、一部の実装では、オーディオ環境の現在のグローバル音響状態)を推定するように構成されている。幾つかの開示された実装は、オーディオ環境100内の対応する複数のオーディオ装置で実行されている複数のMC-AECの各々の適応フィルタ管理データから抽出された特徴に少なくとも部分的に基づいて、オーディオ環境100の現在のグローバル音響状態を推定するように構成されている。以下に様々な例を詳細に説明する。
【0053】
図1Bは、本開示の種々の態様を実装可能な機器のコンポーネントの例を示すブロック図である。本願明細書で提供される他の図と同様に、図1Bに示される要素の数及び種類は、単なる例である。他の実装には、より多くの、より少ない、及び/又は異なる種類と数の要素が含まれる場合がある。幾つかの例によると、機器150は、本願明細書に開示される方法のうちの少なくとも幾つかを実行するよう構成されてよい。幾つかの実装では、機器150は、オーディオシステムの1つ以上のコンポーネントであるか、又はそれを含むことができる。例えば、幾つかの実装では、機器150は、スマートオーディオ装置などのオーディオ装置であることができる。他の例では、機器150は、モバイル装置(携帯電話など)、ラップトップコンピュータ、タブレット装置、テレビ又は他の種類の装置であることができる。
【0054】
幾つかの代替の実装では、機器150は、サーバであってよく、又はそれを含んでよい。幾つかのそのような実装では、機器150は、エンコーダであってよく、又はそれを含んでよい。したがって、幾つかの例では、機器150は、家庭のオーディオ環境のようなオーディオ環境内で使用するように構成された装置であってよく、他の例では、機器150は、サーバのような「クラウド」で使用するように構成された装置であてよい。
【0055】
本例では、機器150は、インタフェースシステム155及び制御システム160を含む。インタフェースシステム155は、幾つかの実装では、オーディオ環境の1つ以上の他の装置と通信するよう構成されてよい。オーディオ環境は、幾つかの例では、ホームオーディオ環境であってよい。他の例では、オーディオ環境は、オフィス環境、自動車環境、電車環境、通り又は歩道環境、公園環境などの別の種類の環境であってよい。インタフェースシステム155は、幾つかの実装では、オーディオ環境のオーディオ装置と制御情報及び関連データを交換するように構成されてよい。制御情報及び関連データは、幾つかの例では、機器150が実行している1つ以上のソフトウェアアプリケーションに関連することがある。
【0056】
インタフェースシステム155は、幾つかの実装では、コンテンツストリームを受信又は提供するように構成されることがある。コンテンツストリームには、オーディオデータが含まれることがある。オーディオデータには、オーディオ信号が含まれることがあるが、これに限定されない。場合によっては、オーディオデータには、チャネルデータ及び/又は空間メタデータなどの空間データが含まれることがある。メタデータは、例えば、ここで「エンコーダ」と呼ばれるものによって提供されることがある。幾つかの例では、コンテンツストリームは、ビデオデータと、ビデオデータに対応するオーディオデータを含むことがある。
【0057】
インタフェースシステム155は、1つ以上のネットワークインタフェース、及び/又は1つ以上の外部装置インタフェース(例えば、1つ以上のUSB(universal serial bus)インタフェース)を含んでよい。幾つかの実装によると、インタフェースシステム155は、1つ以上の無線インタフェースを含んでよい。インタフェースシステム155は、1つ以上のマイクロフォン、1つ以上のスピーカ、ディスプレイシステム、タッチセンサシステム、及び/又はジェスチャセンサシステム、のようなユーザインタフェースを実装する1つ以上の装置を含んでよい。幾つかの例では、インタフェースシステム155は、制御システム160とメモリシステム、例えば図1Bに示される任意的メモリシステム165との間の1つ以上のインタフェースを含んでよい。しかしながら、幾つかの場合に、制御システム160は、メモリシステムを含んでよい。インタフェースシステム155は、幾つかの実装では、環境内の1つ以上のマイクロフォンから入力を受信するよう構成されてよい。
【0058】
制御システム160は、例えば、汎用の単一又は複数チッププロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、又は他のプログラマブル論理素子、個別ゲート又はトランジスタロジック、及び/又は個別ハードウェアコンポーネント、を含んでよい。
【0059】
幾つかの実装では、制御システム160の機能は1つより多くの装置に存在してよい。例えば、制御システム160の部分は、ここに示された環境のうちの1つの中にある装置に存在してよく、制御システム160の別の部分は、サーバ、モバイル装置(例えば、スマートフォン、又はタブレットコンピュータ)のような、環境の外部にある装置の中に存在してよい、等である。他の例では、制御システム160の一部がここに示されている環境の1つ内の装置に存在し、制御システム160の別の部分が環境の1つ以上の他の装置に存在することができる。例えば、制御システムの機能は、環境の複数のスマートオーディオ装置に分散されることもあれば、オーケストレーション装置(ここではスマートホームハブと呼ばれるものなど)と環境の1つ以上の他の装置によって共有されることもある。他の例では、制御システム160の一部は、サーバなどのクラウドに基づくサービスを実装している装置に存在することがあり、制御システム160の別の部分は、別のサーバやメモリ装置などのクラウドベースのサービスを実装している別の装置に存在することもあり、インタフェースシステム155も、幾つかの例では、複数の装置に存在することがある。インタフェースシステム155は、また、幾つかのそのような例では、1つより多くの装置に存在してよい。
【0060】
幾つかの実装では、制御システム160は、本願明細書に開示した方法を少なくとも部分的に実行するよう構成されてよい。幾つかの例によると、制御システム160は、オーディオ装置上で実行されているMC-AECの適応フィルタ管理データから抽出された特徴に少なくとも部分的に基づいて、オーディオ装置の近くの現在のローカル音響状態を推定するように構成することができる。幾つかの実装では、制御システム160は、オーディオ環境内の対応する複数のオーディオ装置で実行されている複数のMC-AECの各々の適応フィルタ管理データから抽出された特徴に少なくとも部分的に基づいて、オーディオ環境の現在のグローバル音響状態を推定するように構成することができる。
【0061】
本願明細書に記載の方法のうちの一部又は全部は、1つ以上の非一時的媒体に記憶された命令(例えば、ソフトウェア)に従い1つ以上の装置により実行されてよい。そのような非一時的媒体は、限定ではないが、RAM(random access memory)装置、ROM(read-only memory)装置、等を含む、本願明細書で説明されたようなメモリ装置を含んでよい。1つ以上の非一時的媒体は、例えば、図1Bに示される任意的メモリシステム165内に、及び/又は制御システム160内に、存在してよい。したがって、本開示に記載された主題の種々の新規な態様は、ソフトウェアを記憶された1つ以上の非一時的媒体に実装されてよい。ソフトウェアは、例えば、少なくとも1つの装置を制御して、本開示の方法の一部又は全部を実行するための命令を含むことができる。ソフトウェアは、例えば、図1Bの制御システム160のような制御システムの1つ以上のコンポーネントにより実行可能であってよい。
【0062】
幾つかの例では、機器150は、図1Bに示される任意的なマイクシステム170を含んでよい。任意的なマイクシステム170は、1つ以上のマイクロフォンを含んでよい。幾つかの例によると、任意的なマイクシステム170は、マイクのアレイを含むことができる。幾つかの例では、マイクのアレイは、例えば制御システム160からの指示に従って、到着方向(direction of arrival (DOA))及び/又は到着時間(time of arrival (TOA))の情報を決定するように構成される。マイクのアレイは、幾つかの例では、例えば制御システム160からの指示に従って、受信側ビームフォーミング用に構成される。幾つかの実装では、1つ以上のマイクは、スピーカシステムのスピーカ、スマートオーディオ装置などのような別の装置の一部であるか、関連している場合がある。幾つかの例では、機器150は、マイクシステム170を含まなくてよい。しかし、幾つかのそのような実装では、それにもかかわらず、機器150は、インタフェースシステム160を介してオーディオ環境内の1つ以上のマイクのマイクデータを受信するように構成される場合がある。幾つかのそのような実装では、機器150のクラウドに基づく実装は、インタフェースシステム160を介してオーディオ環境内の1つ以上のマイクからマイクデータ、又はマイクデータに対応するデータを受信するように構成される場合がある。
【0063】
幾つかの実装によると、機器150は、図1Bに示される任意的なマイクロフォンシステム175を含んでよい。任意的なスピーカシステム175は1つ以上のスピーカを含む場合があり、ここでは「スピーカ」又はより一般的に「オーディオ再生トランスデューサ」と呼ぶこともある。幾つかの例(例えば、クラウドに基づく実装)では、機器150は、スピーカシステム175を含まなくてよい。
【0064】
幾つかの例では、機器150は、図1Bに示される任意的なセンサシステム180を含んでよい。任意的なセンサシステム180は、1つ以上のタッチセンサ、ジェスチャセンサ、動き検出器などを含む場合がある。幾つかの実装によると、任意的なセンサシステム180は、1つ以上のカメラを含む場合がある。幾つかの実装では、カメラは独立したカメラである場合がある。幾つかの例では、任意的なセンサシステム180の1つ以上のカメラがスマートオーディオ装置に存在する場合があり、これは単一目的のオーディオ装置又は仮想アシスタントである場合がある。幾つかの例では、任意的なセンサシステム180の1つ以上のカメラがテレビ、携帯電話又はスマートスピーカ内に存在する場合がある。幾つかの例では、機器150は、センサシステム180を含まなくてよい。しかし、幾つかのそのような実装では、それにもかかわらず、機器150は、インタフェースシステム160を介してオーディオ環境内の1つ以上のセンサのセンサデータを受信するように構成される場合がある。
【0065】
幾つかの実装では、機器150は、図1Bに示される任意的なディスプレイシステム185を含んでよい。任意的なディスプレイシステム185は、1つ以上の発光ダイオード(LED)ディスプレイなど、1つ以上のディスプレイを含む場合がある。場合によっては、任意的なディスプレイシステム185は、1つ以上の有機発光ダイオード(OLED)ディスプレイを含む場合がある。場合によっては、任意的なディスプレイシステム185は、スマートオーディオ装置の1つ以上のディスプレイを含む場合がある。他の例では、任意的なディスプレイシステム185は、テレビディスプレイ、ラップトップディスプレイ、モバイル装置ディスプレイ、又は別のタイプのディスプレイを含む場合がある。機器150がディスプレイシステム185を含む幾つかの例では、センサシステム180は、ディスプレイシステム185の1つ以上のディスプレイに近接するタッチセンサシステム及び/又はジェスチャセンサシステムを含む場合がある。幾つかのそのような実装によれば、制御システム160は、1つ以上のグラフィカルユーザインタフェース(GUI)を提示するようにディスプレイシステム185を制御するように構成される場合がある。
【0066】
幾つかのそのような例によると、機器150は、スマートオーディオ装置であってよく、又はそれを含んでよい。幾つかのそのような実装では、機器150は、起動ワード検出器であってよく、又はそれを含んでよい。幾つかの例では、機器150は、仮想アシスタントであってよく、又はそれを含んでよい。
【0067】
図2は、一例による、オーディオ装置のコンポーネントを表すシステムブロック図である。図2では、オーディオ装置110Aを表すブロックには、スピーカ121Aとマイク120Aが含まれている。幾つかの例では、スピーカ121Aは、図1Bのスピーカシステム175のような、スピーカシステム内の複数のスピーカのうちの1つであってもよい。同様に、幾つかの実装によれば、マイク120Aは、図1Bのマイクシステム170のような、マイクシステム内の複数のマイクのうちの1つであってもよい。この例では、スマートホームハブ250と各オーディオ装置110A-110Eは、図1Bを参照して上で説明したインタフェースシステム155のインスタンスであってもよいインタフェースシステムを含む。
【0068】
この例では、オーディオ装置110Aは、レンダラ201A、MC-AEC203A、ローカル状態推定器230A及び音声プロセッサ/通信ブロック240Aを含む。この例によると、レンダラ201Aは、オーディオ装置110Aによって受信された、又はオーディオ装置110Aに格納されたオーディオデータを、スピーカ121Aで再生するようにレンダリングするように構成されている。この例では、レンダラ出力220Aは再生のためにスピーカ121Aに提供され、レンダラ出力220Aはエコーキャンセルの基準としてMC-AEC203Aにも提供される。
【0069】
この例では、MC-AEC203Aは複数のサブ帯域ごとにサブ帯域AECを含む。幾つかの詳細な例は、図3及び4を参照して以下に記載される。MC-AEC203Aは、レンダラ出力220Aを受信するだけでなく、マイク120Aからマイク信号223Aも受信する。この例では、MC-AEC203Aはマイク信号223Aを処理し、エコーキャンセルされた残差224A(ここでは「残差出力224A」とも呼ばれる)を音声プロセッサ/通信ブロック240Aに提供する。
【0070】
この例によると、MC-AEC203Aは適応フィルタ管理データ225Aをローカル状態推定器230Aに提供する。この例では、適応フィルタ管理データ225Aは残差出力224Aを含まない。この実装では、適応フィルタ管理データ225Aは、MC-AEC203Aのフィルタ係数に対応するフィルタ係数値を含まない。ただし、幾つかの代替の実装では、適応フィルタ管理データ225Aは、残差出力224A及び/又はフィルタ係数値を含む場合がある。
【0071】
幾つかの実装では、音声プロセッサ/通信ブロック240Aは、音声認識機能用に設定される場合がある。幾つかの例では、音声プロセッサ/通信ブロック240Aは、電話呼、ビデオ会議などの電気通信サービスを提供するように設定される場合がある。図2には示されていないが、音声プロセッサ/通信ブロック240Aは、例えばインタフェースシステムを介して、1つ以上のネットワーク、スピーカ121A及び/又はマイク120Aとの通信のために構成される場合がある。1つ以上のネットワークは、例えば、ローカルWi-Fiネットワーク、1つ以上のタイプの電話ネットワークなどを含むことができる。
【0072】
この実装では、ローカル状態推定器230Aは、適応フィルタ管理データ225Aに少なくとも部分的に基づいて、オーディオ装置110Aの近くの現在のローカル音響状態を推定するように構成される。幾つかの例では、ローカル状態推定器230Aは、適応フィルタ管理データ225Aから抽出された複数の特徴に少なくとも部分的に基づいて、現在のローカル音響状態を推定するように構成されることがある。
【0073】
幾つかの例では、現在のローカル音響状態は、音声データと再生されるオーディオデータの両方がオーディオ装置110Aの近くに存在するダブルトーク状態である場合がある。幾つかの例では、現在のローカル音響状態は、オーディオ装置110Aの近くのエコー経路変化であることがある。幾つかの例では、現在のローカル音響状態は、オーディオ装置110Aの位置の変化を含むことがある。幾つかの例では、現在のローカル音響状態は、オーディオドライバの設定の変化、再生レベルの変化、装置のオーディオ遅延の変化など、第1オーディオ装置の1つ以上の設定の変化を伴うことがある。幾つかの例では、現在のローカル音響状態(及び/又は現在のグローバル音響状態)は、ドアの開閉、窓のシェードの開閉、家具の移動など、オーディオ環境の構成の変化を伴うことがある。そのような変化の中には、オーディオ環境の残響「ライブネス」に対応する変化を引き起こすものがある。幾つかの例によると、現在のローカル音響状態(及び/又は現在のグローバル音響状態)は、装置のオーディオ遅延の変化、サウンドの再生に使用されるスピーカの変化(例えば、High Definition Multimedia Interface(HDMI)の出力がテレビのスピーカからHiFiのスピーカに変更された)、第1オーディオ装置及び/又はオーディオ環境の1つ以上の他のオーディオ装置の移動など、第1オーディオ装置を含むオーディオシステムの構成の変更を伴うことがある。幾つかの例では、現在のローカル音響状態は、背景ノイズのレベルの変化を伴うことがある。現在のローカル音響状態を推定する幾つかの詳細な例を以下に説明する。
【0074】
この例では、ローカル音響状態推定器230Aから推定されたローカル音響状態情報226Aが出力され、音声プロセッサ/通信ブロック240AとMC-AECブロック203Aに提供される。図2には示されていないが、幾つかの例では、推定されたローカル音響状態情報226Aは、スマートホームハブ250など、オーディオ環境100の1つ以上の他の装置に提供される場合がある。MC-AECブロック203A及び/又は音声プロセッサ/通信ブロック240Aは、推定されたローカル音響状態情報226Aに少なくとも部分的に基づいて制御される場合がある。例えば、推定されたローカル音響状態情報226Aが、現在のローカル音響状態が、音声データと再生される音声データの両方がオーディオ装置110Aの近くに存在するダブルトーク状態を含むことを示している場合、音声プロセッサ/通信ブロック240A(又は制御システム160aの別の要素)は、より満足のいく電話会議を提供するために、例えば、近くの話者の方向への受信側ビーム形成のためにマイクシステムのマイクのアレイを構成することによって、スピーカ121Aの再生音量を減らすことによって、スピーカ121A及び/又はマイク120Aを制御するように構成されることがある。幾つかの例では、音声プロセッサ/通信ブロック240Aは、推定されたローカル音響状態情報226Aに少なくとも部分的に基づいて、電話会議又はその他の電話呼中に送信される音声のゲートを制御することがある。幾つかの例によると、音声プロセッサ/通信ブロック240Aは、推定されたローカル音響状態情報226Aに少なくとも部分的に基づいて、起動ワード検出器を制御することがある。例えば、推定されたローカル音響状態情報226Aは、起動ワード検出器の性能を改善するための先験的な情報(例えば、音声フレームを音声又はエコーの漏れとしてマークする)を含むか、又はそれに少なくとも部分的に基づいてもよい。
【0075】
幾つかの例によれば、MC-AECブロック203Aによって実装された音響エコーサプレッサは、推定されたローカル音響状態情報226Aに少なくとも部分的に基づいて制御されてもよい。幾つかの例では、制御システム160a(例えば、MC-AECブロック203A)は、ノイズサプレッサを、推定されたローカル音響状態情報226Aに少なくとも部分的に基づいて実装するよう構成されてもよい。例えば、推定されたローカル音響状態情報226Aがエコー経路の変化及び/又はオーディオ環境のノイズフロアの変化を示す場合、ノイズ推定アルゴリズムは推定をより迅速に適応させることができる。
【0076】
この例によれば、各オーディオ装置110B-110Eは少なくとも制御システム、MC-AEC、マイク及びスピーカを含み、オーディオ装置110Bは少なくとも制御システム160b、MC-AEC203B、マイク120B及びスピーカ121Bを含み、オーディオ装置110Cは少なくとも制御システム160c、MC-AEC203C、マイク120C及びスピーカ121Cを含み、オーディオ装置110Dは少なくとも制御システム160d、MC-AEC203D、マイク120D及びスピーカ121Dを含み、オーディオ装置110Eは少なくとも制御システム160e、MC-AEC203E、マイク120E及びスピーカ121Eを含む。この例では、MC-AEC203B~MC-AEC203Eは各々適応フィルタ管理データ225B~225Eを出力する。一部の実装では、1つ以上のオーディオ装置110B~110Eは、レンダラ、音声プロセッサ/通信ブロック、及び/又はローカル状態推定器を含むことができる。
【0077】
幾つかの実装では、オーディオ装置110A~110Eの2つ以上の(実装によっては、すべて)が、ここでスマートホームハブと呼ばれるような別のオーケストレーション装置との通信用に設定され、それによってオーケストレーションされる場合がある。他の例では、スマートホームハブ機能は、オーディオ環境100の1つ以上のスマートオーディオ装置(オーディオ装置110A~110Eの1つ以上など)によって提供される場合もあれば、別のオーケストレーション装置とオーディオ環境100の1つ以上の他の装置によって共有される場合もある。追加又は代替として、制御システムの一部(例えば、グローバル状態推定器、音声認識及び/又は仮想アシスタント機能を提供するように構成された制御システム)が、サーバなどのクラウドに基づくサービスを実装している装置に存在し、制御システムの別の部分がオーディオ環境100の1つ以上の装置に存在する場合もある。
【0078】
この実装では、各オーディオ装置110A~110Eの各々は、グローバル状態推定器231を実装するために構成された制御システム160fを含むスマートホームハブ250に情報を提供し、そこから情報を受信する。この実装によると、グローバル状態推定器231は、オーディオ装置110Aから受信した適応フィルタ管理データ225A、オーディオ装置110Bから受信した適応フィルタ管理データ225B、オーディオ装置110Cから受信した適応フィルタ管理データ225C、オーディオ装置110Dから受信した適応フィルタ管理データ225D、及びオーディオ装置110Eから受信した適応フィルタ管理データ225Eに少なくとも部分的に基づいて、オーディオ環境100の現在のグローバル音響状態を推定するように構成される。幾つかの例では、グローバル状態推定器231は、適応フィルタ管理データ225A~225Eから抽出された複数の特徴に少なくとも部分的に基づいて、オーディオ環境100の現在のグローバル音響状態を推定するように構成される。追加又は代替として、幾つかの実装では、グローバル状態推定器231は、オーディオ装置110A~110Eの1つ以上によって提供される現在のローカル音響状態情報に少なくとも部分的に基づいて、オーディオ環境100の現在のグローバル音響状態を推定するように構成される場合がある。
【0079】
この例では、グローバル状態推定器231は、オーディオ装置110A~110Eの各々に現在のグローバル音響状態推定227を提供するように構成される。幾つかの例では、スマートホームハブ250は、現在のグローバル音響状態推定227及び/又はオーディオ装置110A~110Eの1つ以上から受信したローカル音響状態情報に対応する制御信号などの制御信号を、オーディオ装置110A~110Eの1つ以上に提供するように構成される場合がある。
【0080】
例えば、オーディオ装置110A~110Eのうちの2つ以上によって提供される適応フィルタ管理データ及び/又は現在のローカル音響状態情報が、オーディオ環境100の複数の場所にダブルトーク状態があり、音声データと再生されるオーディオデータの両方が複数のオーディオ装置の近くに存在することを示している場合、グローバル状態推定器231は、オーディオ環境100の現在のグローバル音響状態がオーディオ環境100の1つ以上の進行中の会話に対応すると推定するように構成される場合がある。そのような例の幾つかでは、グローバル状態推定器231は、オーディオ環境100での1つ以上の進行中の会話が、現在のグローバル音響状態がディナー、パーティなどの社交的な集まりに対応することを示すことを決定するように構成される場合がある。そのような例の幾つかでは、現在のグローバル音響状態推定227は、ここで「社交的な集まりモード」と呼ばれるものを示す場合がある。そのような例の幾つかでは、スマートホームハブ250は、社交的な集まりモードに対応する1つ以上のオーディオ装置110A~110Eに制御信号、例えば、1つ以上のオーディオ装置110A~110Eにより再生されるオーディオが空間的に分散した方法で再生されるよう制御する制御信号を提供するように構成される場合がある。幾つかの例は、図6を参照して以下に記載される。そのような例の幾つかによると、現在のグローバル音響状態推定227は、ここで「会話モード」と呼ばれるものを示す場合がある。そのような例の幾つかでは、スマートホームハブ250は、会話モードに対応する1つ以上のオーディオ装置110A~110Eに制御信号、例えば、1つ以上のオーディオ装置110A~110Eにより再生されるオーディオが会話音声の検出されたレベルより低くなるよう制御する制御信号を提供するように構成される場合がある。
【0081】
幾つかの実装によると、個々のオーディオ装置が現在のグローバル音響状態推定を行う場合がある。幾つかのそのような例では、個々のオーディオ装置がグローバル状態推定器231を実装し、他のローカルオーディオ装置から受信した適応フィルタ管理データに基づいて現在のグローバル音響状態推定を行うように構成される場合がある。追加又は代替として、個々のオーディオ装置は、個々のオーディオ装置の指向性マイクから取得した指向性マイクデータに基づいて現在のグローバル音響状態推定を行うように構成することもできる。例えば、指向性マイクデータは、オーディオ環境100の複数の場所にダブルトーク状態があることを示す場合がある。このような幾つかの例によると、個々のオーディオ装置は、会話モード又は社会的な集まりモードを示す現在のグローバル音響状態推定を行う場合がある。
【0082】
幾つかの実装では、1つ以上のオーディオ装置110B~110Eはローカル状態推定器を含まなくてよい。このような幾つかの例によると、グローバル状態推定器231は、各々1つ以上のオーディオ装置110B~110Eからの適応フィルタ管理データに基づいて、1つ以上のオーディオ装置110B~110Eのローカル音響状態情報を決定するように構成される場合がある。このような幾つかの例では、グローバル状態推定器231は、ローカル音響状態情報を1つ以上のオーディオ装置110B~110Eに提供するように構成される場合がある。
【0083】
図3は、図2に示した1つのマルチチャネル音響エコーキャンセラ(MC-AEC)の例示的なブロック図を示す。図3は、ここではMC-AECとも呼ばれるAECのサブ帯域ドメイン実装の例を示している。この例では、MC-AEC203Aは入力マイク信号223Aを処理し、エコーキャンセルされた残差224A(ここでは「残差出力224A」とも呼ばれる)を出力する。
【0084】
この実装では、分析フィルタブロック310は、時間ドメインの入力全帯域オーディオ信号を周波数ドメインの直交成分(サブ帯域信号)に分解するように構成されている。この例では、分析フィルタブロック310はレンダラ出力220Aとマイク信号223Aを受信し、対応するサブ帯域ドメインエコー基準303とサブ帯域ドメインマイク信号307をブロック320に出力する。その後のオーディオ処理(エコーキャンセル)は周波数領域で行われる。このような実装には、性能の向上と計算コストの削減という利点がある。
【0085】
この例によると、ブロック320にはサブ帯域AEC300のN個のインスタンス(サブ帯域ごとに1つのインスタンス)が含まれる。サブ帯域AEC300i、300ii、及び300Nの例が図3に示され、間の点線は間のサブ帯域AEC300iii~300(N-1)を表す。
【0086】
この例では、ブロック320は、エコーキャンセルされたサブ帯域ドメイン残差信号304を合成フィルタバンク311に出力するように構成されている。ここで、合成フィルタバンク311は、サブ帯域ドメイン残差信号304から、時間ドメインの全帯域信号である残差出力224Aを再構成するように構成されている。
【0087】
この例では、ブロック320は、サブ帯域AEC300i~300Nから抽出された特徴ベクトル225Aのアンサンブルを出力するように更に構成されている。特徴ベクトル225Aは、例えば、ローカル状態推定器及び/又はグローバル状態推定器、例えば、図2に示され、上記で説明されているローカル状態推定器230A及び/又はグローバル状態推定器231に提供される場合がある。特徴ベクトル225Aの例を以下に説明する。
【0088】
この例では、MC-AEC203Aは、現在のローカル音響状態推定226Aと現在のグローバル音響状態推定227も受信する。幾つかの実装では、MC-AEC203Aの動作(例えば、ブロック320の機能)は、現在のローカル音響状態推定226A及び/又は現在のグローバル音響状態推定227に少なくとも部分的に基づいて制御される場合がある。
【0089】
図4は、図3に示すサブ帯域AECの1つのブロックの例を示している。この例では、サブ帯域AEC300iは、図3に示されている分析フィルタバンク310からサブ帯域ドメインマイク信号307iを受信し、図3に示されている合成フィルタバンク311に1つ以上のサブ帯域ドメイン残差信号304iを出力するように構成されている。この例によると、サブ帯域AEC300iは、複数のサブ帯域ドメイン適応フィルタ410と適応サブ帯域ドメインフィルタ管理モジュール411を含む。ここでは、複数のサブ帯域ドメイン適応フィルタ410がサブ帯域ドメインエコー参照303iを受信していることを示す。複数のサブ帯域ドメイン適応フィルタ410はN個の適応フィルタを含み、Nは特定の実装に応じて変化する。幾つかの例ではN=2であるが、他の実装ではN≧3である。
【0090】
幾つかの例によると、複数のサブ帯域ドメイン適応フィルタ410の各適応フィルタは、異なる音響条件でより良好に実行できる。例えば、ある種類の適応フィルタは、エコー経路の変化をよりよく追跡することができ、別の種類の適応フィルタは、ダブルトークのインスタンス中の誤適応をよりよく回避することができる。複数のサブ帯域ドメイン適応フィルタ410は、幾つかの例では、適応フィルタの連続体を含むことができる。複数のサブ帯域ドメイン適応フィルタ410は、例えば、現在のオーディオ条件に応答する(例えば、現在のエラー信号に応答する)フィルタ係数を決定する高度に適応的又は積極的な適応フィルタ(「メイン」適応フィルタと呼ばれることもある)から、現在のオーディオ条件に応答するフィルタ係数にほとんど又は全く変化を与えない非常に保守的な適応フィルタ(「シャドウ」適応フィルタと呼ばれることもある)までの範囲であってよい。
【0091】
幾つかの実装では、複数のサブ帯域ドメイン適応フィルタ410は、様々な適応レート、フィルタ長及び/又は適応アルゴリズム(例えば、最小平均二乗(LMS)、正規化最小平均二乗(NLMS)、比例正規化最小平均二乗(PNLMS)及び/又は再帰最小二乗(RLS)の1つ以上を含む適応アルゴリズム)などを持つ適応フィルタを含むことができる。幾つかの実装では、複数のサブ帯域ドメイン適応フィルタ410は、線形及び/又は非線形の適応フィルタ、異なる基準及びマイク信号の時間アラインメントを持つ適応フィルタなどを含むことができる。幾つかの実装によると、複数のサブ帯域ドメイン適応フィルタ410は、出力が非常に大音量又は非常に静かな場合にのみ適応する適応フィルタを含むことができる。例えば、「パーティ」適応フィルタは、出力オーディオの大音量の部分にのみ適応する場合がある。
【0092】
この例によると、複数のサブ帯域ドメイン適応フィルタ410は、各々の適応フィルタから1つずつ、複数の予測されたサブ帯域ドメインエコー信号401を出力する。予測されたサブ帯域ドメインエコー信号401の各々は、エコー経路に対する仮説と見なすことができる。
【0093】
予測されたサブ帯域ドメインエコー信号401の各々について、例えば、各々のサブ帯域のサブ帯域ドメインマイク信号307iから各々のサブ帯域の予測されたサブ帯域ドメインエコー信号401を減算することによって、サブ帯域ドメイン残差信号402が生成される。
【0094】
この例では、サブ帯域ドメイン適応フィルタ管理モジュール411は、複数のサブ帯域ドメイン適応フィルタ410によって生成されたサブ帯域ドメイン残差信号402のセットから、1つ以上のサブ帯域ドメイン残差信号304iを出力として選択するように構成されている。この例では、サブ帯域ドメイン残差信号402のセットの各サブ帯域ドメイン残差信号は、対応する適応フィルタとマルチプレクサ420iにも提供される。
【0095】
幾つかの例によると、サブ帯域ドメイン適応フィルタ管理モジュール411は、一連のヒューリスティック規則に従って、サブ帯域ドメイン残差信号402のセットからサブ帯域ドメイン残差信号を選択するように構成される場合がある。例えば、サブ帯域ドメイン適応フィルタ管理モジュール411は、システムの状態を監視し、特定の条件が満たされた(例えば、一方が他方を凌駕している)場合に、フィルタ係数を一方の適応フィルタから他方にコピーするなどのメカニズムを通じて、複数のサブ帯域ドメイン適応フィルタ410を管理するように構成される場合がある。例えば、適応フィルタAが適応フィルタBよりも明らかに性能が優れている場合、サブ帯域ドメイン適応フィルタ管理モジュール411は、適応フィルタAのフィルタ係数を適応フィルタBにコピーするように設定することができる。場合によっては、サブ帯域ドメイン適応フィルタ管理モジュール411が発散を検出した場合、サブ帯域ドメイン適応フィルタ管理モジュール411は、複数のサブ帯域ドメイン適応フィルタ410の1つ以上の適応フィルタに対してリセットコマンドを発行することもできる。
【0096】
この例によると、サブ帯域ドメイン適応フィルタ管理モジュール411は、選択された1つ以上のサブ帯域ドメイン残差信号404とサブ帯域ドメイン適応フィルタ管理データ405をマルチプレクサ420iに提供するようにも構成される。サブ帯域ドメイン適応フィルタ管理データ405は、例えば、サブ帯域ドメイン適応フィルタ管理モジュール411が複数のサブ帯域ドメイン適応フィルタ410に送信している命令に対応することができる。ここで、マルチプレクサ420iは、サブ帯域ドメイン残差信号402、1つ以上の選択されたサブ帯域ドメイン残差信号404、及び適応フィルタ管理データ405のセットを多重化して、特徴ベクトル225Aiのサブ帯域ドメインアンサンブルを生成するように構成される。代替の実装では、特徴ベクトル225Aiのサブ帯域ドメインアンサンブルは、サブ帯域ドメイン適応フィルタ管理データ405のみに基づいてもよい。
【0097】
図5は、一例によるローカル状態推定器の例示的なブロックを示す。この例によると、ローカル状態推定器は、図2のオーディオ装置110Aのローカル状態推定器230Aのインスタンスである。この例では、ローカル状態推定器230Aは、図2又は図3のMC-AEC203Aから受信した特徴ベクトル225Aのアンサンブルに少なくとも部分的に基づいて、オーディオ装置110Aの近くの現在の音響状態の推定を生成し、推定されたローカル音響状態情報226Aを出力するように構成されている。
【0098】
この例によると、ローカル状態推定器230Aは、特徴抽出ブロック510、音響空間知識ブロック512、及び分類器511を含む。この例によると、特徴抽出ブロック510の機能は、少なくとも部分的に、音響空間知識ブロック512からの音響空間パラメータ503に基づくことができる。例えば、音響空間知識ブロック512が特定の周波数範囲の持続的なノイズ源の先験的な知識を持っている場合、音響空間パラメータ503は対応する情報を含むことができる。音響空間パラメータ503のこの部分に応答して、特徴抽出ブロック510はその周波数範囲に対応する特徴を抽出しないことがある。同様に、この例では、分類器511の機能は、少なくとも部分的に、音響空間知識ブロック512からの音響空間情報504に基づくことができる。分類器511の機能が、少なくとも部分的に、音響空間情報504に基づくことができる幾つかの例を以下に示す。
【0099】
この例では、特徴抽出ブロック510は、特徴ベクトル225Aのアンサンブルから特徴を抽出し、抽出された特徴501Aを出力するように構成されている。抽出された特徴501Aは、特定の実装に従い変化してよい。幾つかの例では、抽出された特徴501Aは、適応フィルタリセット情報、適応フィルタ係数コピーのインスタンスなどを含む場合がある。特徴ベクトル225Aが少なくとも第1適応フィルタタイプと第2適応フィルタタイプに対応する幾つかの例では、抽出された特徴501Aは、以下:
第1適応フィルタタイプが最低の残差電力を生成する確率、
第2適応フィルタタイプが最低の残差電力を生成する確率、
第1適応フィルタタイプを介して生成される第1残差電力又は第2適応フィルタタイプを介して生成される第2残差電力よりも入力マイク電力が低い確率、
第1適応フィルタタイプの第1フィルタ係数が第2適応フィルタタイプの適応フィルタにコピーされるレート、及び/又は、
第2適応フィルタタイプの第2フィルタ係数が第1適応フィルタタイプの適応フィルタにコピーされるレート、
の1つ以上を含む場合がある。特徴ベクトル225Aが少なくとも第1から第M適応フィルタタイプに対応し、Mが3以上の整数である幾つかの例では、抽出された特徴501Aは、以下:
第M適応フィルタタイプが最低の残差電力を生成する確率、
第1から第(M-1)適応フィルタタイプのいずれかが最低の残差電力を生成する確率、
第1から第M適応フィルタタイプのいずれかを介して生成される残差電力よりも入力マイクの電力が低い確率、及び/又は、
第1から第M適応フィルタタイプのいずれかのフィルタ係数が、第1から第M適応フィルタタイプのいずれかの他の適応フィルタにコピーされるレート、
のうちの1つ以上を含むことがある。
【0100】
Pi,jを適応フィルタタイプjによって生成されるサブ帯域iに対応するサブ帯域ドメイン残差信号の電力とする。一例として、適応フィルタタイプkが最低の残差電力を生成する確率は、Pi,j=kがPi,j≠kより小さいサブ帯域の数を、サブ帯域の総数の割合として求める。例えば、サブ帯域が100個の場合、フィルタタイプ1の確率が0.45であるとは、100個のサブ帯域iのうち45個について、フィルタタイプ1の残差電力Pi,1が、他のフィルタタイプの残差電力Pi,j≠1よりも低いことを意味する。この例では、分類器511は、少なくとも部分的に、特徴抽出ブロック510によって提供される抽出された特徴501Aに基づいて、ローカル音響状態を推定するように構成されている。ローカル音響状態は、場合によっては、音声データと再生される音声データの両方がオーディオ装置110Aの近くに存在するダブルトーク状態である(又は含む)場合がある。ローカル音響状態は、場合によっては、オーディオ装置110Aの近くのエコー経路変化である(又は含む)場合がある。幾つかの例では、ローカル音響状態は、オーディオ装置110Aの位置の変化、オーディオ装置110Aの1つ以上の設定の変化、オーディオ装置110Aを含むオーディオシステムの構成の変化、及び/又はオーディオ装置110Aの近くの背景ノイズのレベルである(又は含む)場合がある。抽出された特徴に基づいてローカル音響状態を推定する様々な例を以下に示す。
【0101】
幾つかの例によると、音響空間知識ブロック512は、オーディオ環境100に関する知識ベースを含む。例えば、音響空間知識ブロック512は、オーディオ環境100における推定された可聴性に関する情報、例えば、オーディオ環境100におけるオーディオ装置の1つ以上(場合によっては全て)の推定された可聴性に関する情報を格納したメモリを含むことができる。幾つかの例によれば、音響空間知識ブロック512は、オーディオ環境100における壁、家具及び/又は音の反射及び/又は吸収に影響を与える可能性のある他の物体の位置に関する情報を格納したメモリを含むことができる。幾つかの実装では、オーディオ装置110Aの制御システム160aは、再生されるオーディオ信号に「ギャップ」を挿入するように構成されることがある。ここで使用されるように、オーディオ信号(及びオーディオ信号の再生コンテンツ)の「ギャップ」は、(例えば、少なくとも1つの周波数帯の)再生コンテンツが欠落している(又は所定の値未満のレベルを持つ)位置にある(又は期間にある)信号の時間(又は時間間隔)を示す。オーディオ信号は、(各々の時間又は時間間隔で)一連の異なる周波数帯域の各帯域における周波数ドメイン再生コンテンツを含む(信号の時間又は時間間隔のシーケンスの各々で)帯域化された周波数ドメイン表現を持つことができ、(オーディオ信号の時間又は時間間隔で)少なくとも1つの周波数帯域にギャップを持つことができる。幾つかの開示された実施形態に従った再生信号への強制ギャップの導入は、再生中に導入されたギャップから生じるアーチファクトの知覚可能性を大幅に低減(又は排除)するように最適化されることがあり、できれば強制ギャップがユーザに知覚可能な影響を与えないか最小限に抑えるようにするが、再生環境におけるマイクの出力信号が強制ギャップを示すようにする(例えば、このギャップを利用して広汎なリスニング方法を実装することができる)。幾つかの開示された実施形態に従って導入された強制ギャップを使用することにより、広汎なリスニングシステムは非再生音(例えば、背景活動を示す音、及び/又は再生環境でのノイズ)を監視することができる。
【0102】
幾つかの例では、音響環境の可聴性及び/又は背景ノイズ情報に関する音響空間知識ブロック512からの音響空間情報504は、1つ以上のタイプの入力データの解釈方法に関して分類器511に通知することができる。例えば、分類器511が、歴史的に多くの背景ノイズ事象に関連付けられてきた領域で起こりうるエコー経路変化のインスタンスを評価している場合、分類器511は、音響空間知識ブロック512によって提供される歴史的背景ノイズ情報に基づいて、エコー経路変化を決定するためのより高い閾値などのバイアスを課すことができる。
【0103】
幾つかの例によれば、音響空間知識ブロック512は、オーディオ環境100に関する保存された位置情報、例えば、オーディオ環境100におけるオーディオ装置の1つ以上(場合によっては全て)の位置及び/又は向きを含むことができる。代替として又は追加で、幾つかの実装では、音響空間知識ブロック512は、オーディオ環境100の既知の使用パターンに関する情報を保存することができる。例えば、音響空間知識ブロック512は、1人以上のユーザが集まるオーディオ環境100内の場所(例えば、ユーザがテレビを見るために座るソファの位置(場合によっては向きも)、人がよく集まって話す食卓の位置など)、人がよく歩くオーディオ環境100内の領域、ドア及び/又は開閉可能な窓の領域などに関する格納された情報を含むことができる。幾つかの実装では、音響空間知識ブロック512は、オーディオ環境100内の1人以上の(場合によってはすべての)オーディオ装置の位置と方向の両方に関する格納された位置情報と、1人以上の人が集まるオーディオ環境100内の1つ以上の場所の相対位置、及び場合によってはこれらの1つ以上の場所にいるときの1人以上の人の方向に関する格納された位置情報を含むことができる。
【0104】
幾つかの例では、そのような位置、方向及び/又は使用法情報を示す音響空間情報504は、1つ以上のタイプの入力データを解釈する方法に関して分類器511に通知することができる。例えば、分類器511が、歴史的に多くのダブルトークに関連付けられてきた領域における可能性のあるダブルトークのインスタンスを評価している場合、分類器511は、音響空間知識ブロック512によって提供される歴史的な使用法情報に基づいて、ダブルトークのインスタンスを検出するためのより低い閾値などのバイアスを課すことができる。
【0105】
代替として又は追加で、幾つかの実装では、音響空間知識ブロック512は、フィルタリセット情報、フィルタ係数コピーのインスタンスなど、MC-AEC203Aから受信した特徴ベクトル225Aに関する歴史的な情報を格納している場合がある。例えば、音響空間知識ブロック512は、MC-AEC203Aの公称又は摂動されない動作点に関する情報を含む場合がある。MC-AECの摂動されない動作点の一例を図7Aに示し、以下に説明する。
【0106】
幾つかの実装では、音響空間知識ブロック512は、オーディオ装置110A自体に関する情報、例えば、スピーカの種類と能力(例えば、オーディオ装置110Aにサブウーファー及び/又は他のスピーカが含まれているか、又は限られた低音再生機能を持つ小さなスピーカのみが含まれているか)、オーディオ装置110Aのスピーカが非線形の、「バジー」装置などであるかどうか、を含むことができる。このタイプの情報は、特徴抽出ブロック510及び/又は分類器511に、物事にバイアスをかける方法について通知することができる。
【0107】
例えば、幾つかの実装では、例えば、オーディオ装置の安全な動作レベルの範囲外にあるオーディオフレームを識別するために、オーディオ装置の能力に関する音響空間知識ブロック512からの情報に基づいて、オーディオフレームにフラグを付けることができる。幾つかの例では、音響状態の推定を行うときに、そのようなオーディオフレームを破棄することができる。他の例では、このようなオーディオフレームは、音響状態を推定するときに、他のオーディオフレームよりも重み付けが低くなる場合がある。代替として又は追加で、音響空間知識ブロック512には、特定のオーディオ周波数を再生するオーディオ装置の機能に関する情報が含まれる場合がある。このような情報は、特徴抽出ブロック510が集約する周波数範囲を決定するのに役立つ。このような例では、ウーファーのないオーディオ装置が再生できない低周波数に対応する特徴ベクトル225のアンサンブルのすべての値がドロップされるか、無視される場合がある。代替として又は追加で、音響空間知識ブロック512には、音響空間で再生されているコンテンツに関する情報が含まれる場合がある。幾つかの例では、このような情報によって、異なる種類のコンテンツに対して特徴抽出を最適化することができる(例えば、ポッドキャストの再生される音声には、アクション映画の再生される音声とは異なる周波数や時間的な関心範囲が含まれている場合がある)。
【0108】
図6は、一例によるグローバル状態推定器の例示的なブロックを示す。この例によると、グローバル状態推定器は、図2のオーディオ装置110Aのグローバル状態推定器231のインスタンスである。この例では、グローバル状態推定器231は、対応するオーディオ装置110A-110Nからの特徴ベクトル225A-225Nのアンサンブルに少なくとも部分的に基づいて、オーディオ環境の現在の音響状態の推定値を生成し、推定されたグローバル音響状態情報627を出力するように構成されている。
【0109】
この例によると、グローバル状態推定器231は、特徴抽出ブロック610、音響空間知識ブロック512、及び分類器611を含む。この例によると、特徴抽出ブロック610の機能は、少なくとも部分的に、音響空間知識ブロック512からの音響空間パラメータ503に基づくことができる。同様に、この例では、分類器611の機能は、少なくとも部分的に、音響空間知識ブロック512からの音響空間情報504に基づくことができる。特徴抽出ブロック610と分類器611は、幾つかの例では、特徴抽出ブロック510及び/又は分類器511による音響空間知識ブロック512からの情報の使用に関して、前述のように音響空間情報504を使用することができる。しかし、1つの違いは、特徴抽出ブロック610と分類器611が、例えば、オーディオ環境の複数のオーディオ装置の機能に関する情報にアクセスできる場合があることである。したがって、特徴ベクトル225A~225Nのアンサンブルから抽出された特徴は、連結のように、抽出された特徴501A~501Nの単純な組み合わせである必要はない。音響空間知識ブロック512は、例えば、オーディオ環境における様々なオーディオ装置の多様な能力に関する情報を含むことができる。このような情報を使用して、特徴抽出ブロック610は、相対的により抽象的で簡潔な形式でこの情報の多くを保持する特徴ベクトル601を導き出すことができる場合がある。
【0110】
この例では、特徴抽出ブロック510は、特徴ベクトル225A~225Nのアンサンブルから特徴を抽出し、抽出された特徴601を出力するように構成されている。抽出された特徴601は、特定の実装に従い変化してよい。幾つかの例では、抽出された特徴601は、図5を参照して上で説明した抽出された特徴のタイプの1つ以上を含む場合がある。
【0111】
この例では、分類器611は、少なくとも部分的に、特徴抽出ブロック610によって提供される抽出された特徴601に基づいて、グローバル音響状態を推定するように構成されている。グローバル音響状態は、幾つかの例では、音声環境100の複数の場所に、音声データと再生された音声データの両方が複数のオーディオ装置の近くに存在するダブルトーク状態があることを示している場合があり、グローバル状態推定器231は、音声環境100の現在のグローバル音響状態が音声環境100内の1つ以上の進行中の会話に対応していることを推定するように構成されている場合がある。
【0112】
幾つかのそのような例では、グローバル状態推定器231は、オーディオ環境100内の1つ以上の進行中の会話が、現在のグローバル音響状態がパーティ、家族の集まりなどの社会的な集まりに対応していることを示すと推定することができる。そのような例の幾つかでは、現在のグローバル音響状態推定227は、ここで「社交的な集まりモード」と呼ばれるものを示す場合がある。そのような例の幾つかでは、スマートホームハブ250は、社交的な集まりモードに対応する1つ以上のオーディオ装置110A~110Nに制御信号、例えば、1つ以上のオーディオ装置110A~110Nにより再生されるオーディオが空間的に分散した方法、ここでは空間的分散レンダリングモード又は分散レンダリングモードと呼ばれることがある方法で、再生されるよう制御する制御信号を提供するように構成される場合がある。
【0113】
例によっては、空間ミックスの一部が分散レンダリングモードでより均一な分布でレンダリングされることがある。このような例では、分散レンダリングモードでより均一な分布でレンダリングされる空間ミックスの一部がフロントサウンドステージとして指定される。多くの空間ミックスのコンテキストでは、従来のミキシング手法では、映画のダイアログや音楽のリードボーカル、ドラム、ベースなど、ミックスの最も重要な部分がフロントサウンドステージに配置されるのが一般的であるため、これは理にかなっている。これは、Dolby Pro-LogicやDolby Surroundなどのアルゴリズムを使用して5.1又は7.1にアップミックスされたステレオコンテンツだけでなく、ほとんどの5.1及び7.1サラウンドサウンドミックスに当てはまり、フロントサウンドステージは左、右、及びセンタチャネルによって与えられます。これは、y<0.5の(x,y)空間位置を示す空間メタデータに従って、オーディオデータをフロントサウンドステージとして指定できるDolby Atmosなど、多くのオブジェクトに基づくオーディオミックスにも当てはまる。
【0114】
ただし、オブジェクトに基づくオーディオでは、ミキシングエンジニアは3D空間の任意の場所にオーディオを配置する自由がある。特にオブジェクトに基づく音楽では、ミキシングエンジニアは従来のミキシングの規範から離れ、リードボーカルなどのミックスの重要な部分と考えられるものを、オーバヘッドなどの従来とは異なる場所に配置し始めている。このような場合、分散レンダリングモードに対して、更に分散した空間的な方法でレンダリングするのに適したミックスのコンポーネントを決定する単純なルールを構築することは困難になる。オブジェクトに基づくオーディオには、3D空間のどこで信号をレンダリングすべきかを記述する構成オーディオ信号の各々に関連付けられたメタデータがすでに含まれている。記述された問題に対処するために、一部の実装では、コンテンツ作成者が分散レンダリングモードにおいて更に分散した空間レンダリングに適しているとして特定の信号にフラグを付けることができるように、追加のメタデータが追加される場合がある。レンダリング中に、システムはこのメタデータを使用して、より分散したレンダリングが適用されるミックスのコンポーネントを選択する場合がある。これにより、コンテンツ作成者は、特定のコンテンツに対して分散レンダリングモードがどのように聞こえるかを制御できる。
【0115】
幾つかの代替実装では、より空間的に分散された方法でレンダリングされるオーディオデータの1つ以上の要素を識別するために、コンテンツタイプ分類器を実装するための制御システムを構成することができる。幾つかの例では、コンテンツタイプ分類器は、オーディオデータをより空間的に分散された方法でレンダリングする必要があるかどうかを決定するために、コンテンツタイプメタデータ(例えば、音声データがセリフ、ボーカル、パーカッション、ベースなどであることを示すメタデータ)を参照することができる。幾つかのそのような実装によると、より空間的に分散された方法でレンダリングされるコンテンツタイプメタデータは、例えば、ディスプレイ装置に表示されるGUIを介したユーザ入力に従って、ユーザが選択できる場合がある。
【0116】
空間オーディオミックスの1つ以上の要素を、基準空間モードよりも更に空間的に分散された方法でレンダリングするために使用される方法は、異なる実施形態間で異なる場合がある。1つの例の方法は、リスニング空間全体でより均一に分散された複数の関連するレンダリング位置を持つ各要素の複数のコピーを作成することを含む。一部の実装では、分散空間モードのレンダリング場所及び/又はレンダリング場所の数をユーザが選択できる場合があり、他の実装では、分散空間モードのレンダリング場所及び/又はレンダリング場所の数が事前に設定されている場合がある。そのような実装の中には、ユーザが分散空間モードのレンダリング場所の数を選択でき、レンダリング場所が事前に設定されている、例えば、リスニング環境全体で等間隔に配置されている場合がある。次に、システムは、元の単一要素が元の意図された位置にあるのとは対照的に、これらのコピーのすべてを分散位置のセットでレンダリングする。幾つかの実装によると、すべてのコピーの結合レンダリングに関連する認識レベルが、参照レンダリングモードでの元の単一要素のレベルと同じか、又は実質的に同じ(例えば、2dB、3dB、4dB、5dB、6dBなどのデシベル数の閾値内)ように、コピーをレベルで変更することができる。
【0117】
例の幾つかによると、現在のグローバル音響状態推定227は、ここで「会話モード」と呼ばれるものを示す場合がある。幾つかの例によると、現在のグローバル音響状態推定227は、環境内の1つ以上のオーディオ装置の再生レベルによって、社交的な集まりモードと会話モードを区別する場合がある。比較的低い再生レベル(及び/又は閾値レベル未満の再生レベル)は、幾つかの例では、会話モードを示す場合がある。そのような例の幾つかでは、スマートホームハブ250は、会話モードに対応する1つ以上のオーディオ装置110A~110Nに制御信号、例えば、1つ以上のオーディオ装置110A~110Nにより再生されるオーディオが会話音声の検出されたレベルより低くなるよう制御する制御信号を提供するように構成される場合がある。
【0118】
この例によると、音響空間知識ブロック512は、オーディオ環境100に関する知識ベースを含む。幾つかの例によると、音響空間知識ブロック512は、図5を参照して上述された。例えば、音響空間知識ブロック512は、オーディオ環境100における推定された可聴性に関する情報、例えば、オーディオ環境100におけるオーディオ装置の1つ以上(場合によっては全て)の推定された可聴性に関する情報を格納したメモリを含むことができる。幾つかの例によれば、音響空間知識ブロック512は、オーディオ環境100における壁、家具及び/又は音の反射及び/又は吸収に影響を与える可能性のある他の物体の位置に関する情報を格納したメモリを含むことができる。幾つかの実装では、オーディオ装置110Aの制御システム160aは、再生されるオーディオ信号に「ギャップ」を挿入するように構成されることがある。幾つかの開示された実施形態に従って導入された強制ギャップを使用することにより、広汎なリスニングシステムは非再生音(例えば、背景活動を示す音、及び/又は再生環境でのノイズ)を監視することができる。
【0119】
幾つかの例によれば、音響空間知識ブロック512は、オーディオ環境100に関する保存された位置情報、例えば、オーディオ環境100におけるオーディオ装置の1つ以上(場合によっては全て)の位置及び/又は向きを含むことができる。代替として又は追加で、幾つかの実装では、音響空間知識ブロック512は、オーディオ環境100の既知の使用パターンに関する情報を保存することができる。幾つかの実装では、音響空間知識ブロック512は、オーディオ環境100内の1人以上の(場合によってはすべての)オーディオ装置の位置と方向の両方に関する格納された位置情報と、1人以上の人が集まるオーディオ環境100内の1つ以上の場所の相対位置、及び場合によってはこれらの1つ以上の場所にいるときの1人以上の人の方向に関する格納された位置情報を含むことができる。
【0120】
図7A、7B、7C、7D、及び7Eは、ローカル音響状態の5つの異なるタイプの間の、同じMC-AECから得られた5つの抽出された特徴の例示的なプロットを示すグラフである。これらの例では、MC-AECは2つの補完的なタイプの適応フィルタを実行している。1つは高度に適応的又は積極的な適応フィルタであり、「メイン」適応フィルタと呼ばれることがある。メイン適応フィルタは、現在のオーディオ条件に応じて(例えば、現在のエラー信号に応答して)フィルタ係数を決定する。もう1つタイプの適応フィルタは非常に保守的な適応フィルタであり、これは「シャドウ」適応フィルタと呼ばれることがある。シャドウ適応フィルタは、現在のオーディオ条件に応じてフィルタ係数をほとんど又はまったく変更しない。これらの補完的な適応フィルタの組み合わせにより、良好なキャンセル性能と堅牢性が実現されることが示されている。
【0121】
これらの例では、MC-AECは512個のサブ帯域を利用する。つまり、図3の例では、ブロック320はブロック300のN個のインスタンスを含み、N=512である。ただし、図7A~7Eのグラフに使用されている特徴(ここではAEC統計と呼ばれることもある)は、第1100個のサブ帯域からのみ抽出されている。他の実装では、すべてのサブ帯域、選択されたサブ帯域のグループ、などから特徴を抽出することができる。代替として又は追加で、他の実装では異なるタイプの特徴を抽出することもできる。
【0122】
ただし、この例では、メイン確率、シャドウ確率、マイク確率、メイン更新、シャドウ更新の5つの特徴が第1100個のサブ帯域からのみ抽出された。メイン確率(prob)(能力)は、メインフィルタが第1100個のサブ帯域にわたって最低の残差電力を生成する確率である。例えば、メイン確率が0.45の場合、第1100個のサブ帯域のうち45個でメインフィルタが最低の残差電力を生成することを意味する。シャドウ確率(prob)(能力)は、シャドウフィルタが第1100個のサブ帯域にわたって最低の残差電力を生成する確率である。マイク(rophone)確率(能力)とは、第1100個のサブ帯域にわたって、入力マイクの電力がメインフィルタ又はシャドウフィルタによって生成される残差電力を下回る確率である。マイク確率は、メインフィルタもシャドウフィルタもエコーキャンセルを正常に実行していない確率と考えることができる。
【0123】
この例によると、メイン更新は、第1100個のサブ帯域内のシャドウフィルタからメインフィルタへのすべてのフィルタ係数コピーイベントのカウントである。同様に、シャドウ更新は、第1100個のサブ帯域内のメインフィルタからシャドウフィルタへのすべてのフィルタ係数コピーイベントのカウントである。ここで、メインとシャドウ更新の値は、確率関連の特徴と同じプロットに収まるようにスケールされる。
【0124】
図7Aは、摂動のないMC-AECにおけるこれら5つの特徴の応答の例を示している。約20秒後に、AECが公称(摂動のない)動作点に落ち着いたことがわかる。これより前に、AECはまだ収束している。収束すると、メイン確率とシャドウ確率の特徴がほぼ等しくなることがわかる。図7A以降の図のメイン確率とシャドウ確率の特徴のプロットは、メイン確率とシャドウ確率の特徴の差を計算することによって、メイン確率とシャドウ確率の特徴を1つの特徴に組み合わせることができることを示している。これは、他の実装で特徴抽出ステップがどのように異なるかを示す1つの例である。
【0125】
図7Aでは、ほとんどのフィルタが正味のキャンセルを生成しているため、メインとシャドウの確率が0.95を超え、良好なAEC性能の指標となっていることがわかる。10秒未満の後、マイク確率は0.05未満になる。また、落ち着いた後は、メインとシャドウの更新値は比較的小さくなり、どちらのフィルタも一定期間、他のフィルタを大幅に上回っていないことを示している。第110秒ほどを見ると、シャドウ更新信号に大きなスパイクがあることがわかる。これは、この特定の実施例では、メインフィルタはシャドウフィルタよりも速く収束することができるので、適応フィルタ管理モジュールが、この期間中にメインフィルタがシャドウフィルタよりも大幅に優れた性能を発揮していることを検出し、したがってメインフィルタ係数をシャドウフィルタにコピーするからである。
【0126】
図7B~7Eでは、第120秒が省略されている。この省略により、AECが起動時間の後に落ち着く時間が除去されるため、グラフがビジーでないように見える。
【0127】
図7Bは、オーディオ環境でのエコー経路変化に対する同じ5つの特徴の応答の例を示している。この例では、本発明の発明者の1人がオーディオ装置の前を至近距離で歩いていた。約33秒後、発明者はオーディオ装置の前を歩き、大きなエコー経路変化イベントを引き起こした。メインフィルタはシャドウフィルタよりもはるかに速く新しいエコー経路に収束できるため、図7Bに示すようになる。
-メイン確率は増加し、シャドウ確率は減少する。これは、メインフィルタがはるかに速く再収束できるためである。
-メインフィルタとシャドウフィルタは、エコー経路が変化してから約9秒又は10秒後まで再収束しないため、マイク確率には小さなピークがある。そのため、一部のサブ帯域では、適応フィルタ管理モジュールは、マイク信号の残差電力が比較的少ないことを観察する。
-メインフィルタが一定期間シャドウフィルタを大幅に上回り、フィルタ係数コピーイベントが発生するため、シャドウ更新信号に大きなピークがある。
-メインフィルタは、より積極的であるため、このような大きな摂動の間に誤適応する可能性も高いため、メイン更新信号に小さなピークがある。
【0128】
ここで、これらの5つの特徴はサブ帯域のアンサンブル全体で決定されることに留意する。そのため、メインフィルタが一部のサブ帯域でシャドウよりも優れている一方で、他のサブ帯域ではシャドウフィルタがメインフィルタよりも優れている場合がある。重要な点の1つは、平均的に(具体的には第1100個のサブ帯域全体で得られるアンサンブル平均で)、エコー経路変化イベント中に図7Bに示すような抽出された特徴シグネチャを観察できることである。
【0129】
図7Cは、オーディオ環境でのダブルトークに対する同じ5つの特徴の応答の例を示している。この例では、約33秒に本発明の発明者の1人が「聞いてドルビー、映画を再生して」という言葉を話していた。発明者が話している間に、残差信号に発明者の声が含まれていたためにメインフィルタが誤適応した。しかし、シャドウフィルタは予測されたパワーとマイクのパワーが食い違うたびに適応を減衰させるため、ダブルトークが発生しても適応しない。
【0130】
その結果、ダブルトークの時間間隔(約33秒から35秒)の間は、メインフィルタが適応し続けたために(そしておそらく発明者の声の一部がキャンセルされた)、メイン確率が増加し、それによって残差パワーが低下した。その後、ダブルトークの時間間隔の直後に、シャドウフィルタがメインフィルタを上回る性能を示したため(メインフィルタが誤収束したため)、メイン更新回数が急増した(シャドウフィルタ係数のインスタンスがメインフィルタにコピーされている)。図7Bを参照して前述したように、大きな摂動の間に、マイク確率のスパイクが観察されることがある。
【0131】
図7Dは、オーディオ環境での異なる種類の音響イベントに対する同じ5つの特徴の応答の例を示している。この例では、約35秒で本発明の発明者の1人がオーディオ装置を取り上げ、約38秒(第2メイン更新ピークの直前)でオーディオ装置を下に戻した。装置を移動すると、オーディオ環境で別の種類のエコー経路の変化が発生する。ただし、このエコー経路の変化は、図7Bを参照して説明したエコー経路の変化とは大きく異なる。その理由の1つは、発明者が装置に触れたことで、オーディオ装置本体とそのマイクの結合によってマイクにノイズが発生したことである。また、オーディオ装置を下に戻すと、オーディオ装置本体を介してマイクに振動が発生した。このように、オーディオ装置を持ち上げ、それを下に置くと、マイクフィードにエコー以外の信号が追加されるという意味で、ダブルトークによって生成されるものに似た、抽出された特徴に変化が生じる。オーディオ装置を持ち上げ下に置く時間中にメインフィルタが誤って適応したため、メイン更新信号に2つのピークが観察されることがある。オーディオ装置を下に戻した後、エコー経路が異なり、メインフィルタはシャドウフィルタよりもはるかに速く新しい経路に収束し、40秒の直前と直後にシャドウ更新信号のピークが発生する。
【0132】
図7Eは、オーディオ環境での別の種類の音響イベントに対する同じ5つの特徴の応答の例を示している。この例では、約35秒で、本発明の発明者の1人が、ドアの反対側にノイズ源(ラジオによって再生されているオーディオ)が存在する時間に、オーディオ環境のドアを開けた。その後、ドアは開いたままである。ドアが開く前は、オーディオ環境ではラジオが聞こえていたが、ラジオが発する音はオーディオ環境では比較的低いレベルだった。約35~45秒からの時間は、前述のエコー経路変化のシグネチャを示す(シャドウ確率と比較して高いメイン確率とシャドウ更新シグネチャのピーク)。
【0133】
しかし、図7Eでは、ノイズ源がAECを乱し続け、メインフィルタとシャドウフィルタの両方の性能が図7Bを参照して前述したエコー経路変化シナリオよりも低下するために、この再収束期間が図7Bに示されているものよりも実質的に長いことがわかる(そのため、再収束が遅くなる)。また、再収束後にメイン更新とマイク確率の両方が大幅に上昇することもわかるが、どちらもマイクフィードに追加のノイズがあることを示している。追加のノイズにより、メインフィルタは繰り返し適応ミスを起こし、メイン更新(メインフィルタへのシャドウフィルタ係数のコピー)をトリガする。更に、ノイズは両方のフィルタのパフォーマンスに悪影響を与えるため、平均して両方のフィルタの性能が低下し、マイク確率の観測可能な上昇が発生する。したがって、エコー経路変化シグネチャとメイン更新のステップアップ及びマイク確率レベルの組み合わせを使用して、反対側にノイズ源があるドアの開口部を検出できる。
【0134】
図8A及び8Bは、幾つかの例による、線形分類器の検証に関連するグラフを示す。図8Aは、検証テスト中にMC-AECを取得した5つの抽出された特徴のプロットを示している。抽出された5つの特徴は、図7A~7Eを参照して前述した5つの抽出された特徴と同じである。
【0135】
図8Bは、検証テスト中の線形分類器からの3種類の出力のプロットを示している。この例によると、線形分類器からの出力の可能な3種類は、推定されたエコー経路変化( echo path change (EPC))、推定されたダブルトークインスタンス、又は無/予測音響イベント無しである。これらの例では、システムは第145秒間ほど安定している。図8Bの縦の破線は、音響イベント時間を示している。第13つの音響イベントはエコー経路変化で、次の3つの音響イベントはダブルトークイベントだった。これらの例では、システムが落ち着いた後、線形分類器は各音響イベントを正常に分類することができた。
【0136】
この線形分類器の例では、単純な線形予測器は、時点[n]の瞬間4x1特徴ベクトルxを次のようにグループ化する。
【数1】
【0137】
この例によると、この特徴ベクトルには4つの要素しか含まれない。これは、上で説明したように、メイン確率とシャドウ確率が両者の差を取ることによって結合されているためである。別のデータのセットを使用して、本発明の発明者は、(線形予測器のような「トレーニング」の1つの方法にすぎない線形判別分析によって)重みwとバイアスベクトルbのセットを決定し、次式を使用して予測を行うことができるようにした。
【数2】
【0138】
つまり、重みwとバイアスbは線形予測器のパラメータである。wとbの値は、トレーニングプロセス中に決定される。実行時に、wとbの値は、特徴ベクトルxからクラススコアy(任意にスケールされた数値)を取得するために、前述の式を使用して推論(予測)に使用される場合がある。前述の式では、yは、エコー経路変化、ダブルトークイベント、又はこの例でイベントが発生していないかのいずれかのスコアを含む3x1ベクトルを表す。したがって、yは次のように表すことができる。
【数3】
【0139】
上記の式は、bが3x1ベクトルであり、wが3x4行列であることも意味している。結果のスコアは、幾つかの例では、任意にスケールされたスコアではなく、各イベントの確率を含む別の3x1ベクトルpを生成するために、正規化される(例えば、softmax演算子に渡される)ことがある。ここで、確率ベクトルのi番目の要素は以下の通りである:
【数4】
また、J個のクラスがある(この例では3)。最も確率の高いクラスを予測されたイベントとする。1つの例では、エコー経路変化が発生したときの値[0.9、0.05、0.05]をpベクトルに含めることができる。
【0140】
この線形分類器の例では、本発明者はMC-AECの初期収束期間を無視した。wとbの最適値を決定するために使用されるデータは、この例ではエコー経路変化とダブルトークイベントのみを含んでいたため、この特定の例では、本発明者は、このような他のタイプのイベントを区別するように設定された分類器を生成しなかった。
【0141】
前述のアプローチのもう1つの制限は、本発明者が瞬間特徴ベクトルのみを使用したことである。幾つかのより有能で有用な実装では、特徴ベクトルの時間的シグネチャを考慮することができる。特徴ベクトルの時間的シグネチャを考慮する1つの方法は、現在のベクトルに加えて最後のM個のサンプルをスタックするように特徴ベクトルを変更することである。例えば以下の通りである:
【数5】
【0142】
前述の式によると、xは4×(M+1)行列を表し、wは(M+1)×3行列を表す。幾つかの時間的な履歴を追加することによって、このような分類器は、図7A~7Eのいずれかを参照することによってわかるように、より強力な識別能力を持ち、より包括的な分類器となり得る。代替として又は追加で、特徴ベクトルにより多くの特徴を追加することもできる。幾つかのそのような例では、特徴ベクトル225のアンサンブルの特徴は、サブ帯域ドメイン適応フィルタ管理モジュール411からの適応フィルタリセット回数に対応することができる。このような適応フィルタリセット回数は、サブ帯域ドメイン適応フィルタ管理モジュール411が適応フィルタの出力が発散しすぎて回復できないために適応フィルタをリセットするインスタンスに対応することができる。幾つかのそのような例では、特徴ベクトル225のアンサンブルの1つ以上の追加特徴は、サブ帯域間のアンサンブルのような、フィルタタップの電力、大きさ、エネルギ及び/又は位相の他のタイプのフィルタ係数データに対応することができる。幾つかのそのような例では、特徴ベクトル225のアンサンブルの特徴は、残差電力及び/又はエコー反射損失増強(echo return loss enhancement (ERLE))のような、残差出力224の1つ以上の特徴に対応することができる。
【0143】
上記の例を一般化するために、信号の次元に関して、4を「number_of_features」、3を「number_of_classes」に置き換えることができることに注意されたい。
【0144】
図9は、特徴ベクトルxの時間的情報を利用するように構成されたリカレントニューラルネットワークを含む深層ニューラルネットワークの簡単な例を示している。ニューラルネットワーク900は、例えば、ローカル状態推定器又はグローバル状態推定器を実装するために使用することができる。この例では、ニューラルネットワーク900は、図1Bを参照して前述した制御システム160のインスタンスである制御システム160gを介して実装される。
【0145】
この例によると、入力(特徴ベクトルx)と出力(推定された状態y)は、ローカル又はグローバル状態推定のいずれかになる場合があるため、番号が付けられていない(例えば、入力/出力は225/226又は225/227になる場合がある)。この例では、ニューラルネットワークの第1層910は、前述の完全線形推定器の例と同様の線形コンポーネントを含む完全結合層であり、その後に非線形活性化関数(例えばシグモイド)が続く。この例によると、第1層出力901の次元は特定の実装によって異なる場合があり、ニューラルネットワーク設計者が選択する場合がある。
【0146】
この例では、回帰ニューラルネットワーク(RNN)911は第1層出力901を受け取り、RNN出力902を生成し、その次元も特定の実装によって異なる場合がある。この実装によると、最終層912は線形成分を含み、softmax関数などの非線形活性化関数を持つ別の完全結合層である。この例では、最終層912は推定された状態y(n)を生成する。
【0147】
ニューラルネットワーク900は、実際の音響イベントを示す「グランドトゥルース」を使用して、図7A-8Aを参照して上記で説明したような入力データを介して、例えば、予測された音響イベントの確率と実際の「グランドトゥルース」音響イベントの確率の差に基づくコスト関数を最小化するようにニューラルネットワークをトレーニングすることによって、トレーニングすることができる。
【0148】
図10は、開示された方法の一例を概説するフロー図である。方法1000のブロックは、本願明細書に記載の他の方法度同様に、必ずしも示された順序で実行されない。更に、このような方法は、図示及び/又は記載のものより多数又は少数のブロックを含んでよい。この例では、方法1000はオーディオ処理方法である。
【0149】
方法1000は、図1Bに示され、前述の機器150のような機器又はシステムによって実行される場合がある。幾つかの例では、方法1000のブロックは、オーディオ環境内の1つ以上の装置、例えば、オーディオシステム制御部(ここではスマートホームハブと呼ばれるものなど)によって、又は、スマートスピーカ、テレビ、テレビ制御モジュール、ラップトップコンピュータ、モバイル装置(携帯電話など)などのオーディオシステムの別のコンポーネントによって実行される場合がある。実装によっては、オーディオ環境には、ホーム環境の1つ以上の部屋が含まれる場合がある。他の例では、オーディオ環境は、オフィス環境、自動車環境、電車環境、通り又は歩道環境、公園環境などの別の種類の環境であってよい。しかし、代替の実装では、方法1000の少なくとも幾つかのブロックは、サーバなどのクラウドに基づくサービスを実装する装置によって実行される場合がある。
【0150】
この実装では、ブロック1005は、制御システムによって、オーディオ環境内の第1オーディオ装置の第1サブ帯域ドメイン音響エコーキャンセラ(acoustic echo canceller (AEC))から、複数の第1適応フィルタ管理モジュールの各々からの第1適応フィルタ管理データを受信することを含む。この例では、複数の第1適応フィルタ管理モジュールの各第1適応フィルタ管理モジュールは、第1サブ帯域ドメインAECのサブ帯域に対応する。
【0151】
つまり、この実装では各第1適応フィルタ管理モジュールは、第1の複数の適応フィルタを制御するように構成してもよい。この例によると、第1の複数の適応フィルタは、少なくとも第1適応フィルタタイプと第2適応フィルタタイプを含む。幾つかの実装では、第1適応フィルタタイプは第2適応フィルタタイプよりも比較的積極的である可能性がある。幾つかの実装によると、第1適応フィルタタイプはメイン適応フィルタであってよく、第2適応フィルタはシャドウ適応フィルタであってよい。
【0152】
この例では、ブロック1010は、制御システムによって、第1適応フィルタ管理データから第1の複数の抽出された特徴を抽出することを含む。この実装によると、第1の複数の抽出された特徴は、第1サブ帯域ドメインAECの複数のサブ帯域に対応する。
【0153】
この実装では、ブロック1015は、制御システムによって、第1の複数の抽出された特徴に少なくとも部分的に基づいて、第1オーディオ装置の近くの現在のローカル音響状態を推定することを含む。幾つかの実装では、方法1000は、現在のローカル音響状態に少なくとも部分的に基づいて、1つ以上のタイプのオーディオ処理を制御することを含むことができる。幾つかのそのような例によると、1つ以上のタイプのオーディオ処理を制御するステップは、前記オーディオ環境で再生されるオーディオデータのオーディオ処理を制御するステップを含んでよい。幾つかの例では、方法1000は、オーディオ環境の1つ以上のスピーカを介して再生されるオーディオデータのレンダリングを制御することを含む場合がある。
【0154】
代替として又は追加で、1つ以上のタイプのオーディオ処理を制御することは、自動音声認識処理を制御することを含む場合があり、例えば、少なくとも一部は、オーディオ環境の1つ以上のオーディオ装置(スマートスピーカなど)によって実装される自動音声認識処理などである。幾つかのそのような例では、方法1000は、そのような自動音声認識処理を介して解釈される音声コマンドに従って、オーディオ環境の1つ以上のスピーカ、マイク、又はその他の装置を制御することを含む場合がある。
【0155】
代替として又は追加で、1つ以上のタイプのオーディオ処理を制御することは、音響エコーキャンセラ機能(例えば、第1サブ帯域ドメインAECの機能制御)の制御及び/又はオーディオ環境におけるノイズ補償処理の制御を含む場合がある。幾つかの例では、方法1000は、オーディオ環境の1つ以上のスピーカを介して再生されるオーディオデータのレベルを制御することを含む場合がある。幾つかの例では、方法1000は、オーディオ環境の1つ以上のスピーカを介して再生されるオーディオデータのレンダリングを制御することを含む場合がある。
【0156】
幾つかの例では、現在のローカル音響状態は、音声データと再生されるオーディオデータの両方が第1オーディオ装置の近くに存在するダブルトーク状態である場合がある。幾つかの例では、現在のローカル音響状態は、第1オーディオ装置の近くのエコー経路変化を含むことがある。代替として又は追加で、現在のローカル音響状態は、第1オーディオ装置の位置の変化、第1オーディオ装置の1つ以上の設定の変化、第1オーディオ装置を含むオーディオシステムの構成の変化、再生オーディオのレベル、又は背景ノイズのレベル、を含んでよい。
【0157】
幾つかの実装によると、第1の複数の抽出された特徴は、以下:
第1適応フィルタタイプが最低の残差電力を生成する確率、
第2適応フィルタタイプが最低の残差電力を生成する確率、
第1適応フィルタタイプを介して生成される第1残差電力又は第2適応フィルタタイプを介して生成される第2残差電力よりも入力マイク電力が低い確率、
第1適応フィルタタイプの第1フィルタ係数が第2適応フィルタタイプの適応フィルタにコピーされるレート、又は、
第2適応フィルタタイプの第2フィルタ係数が第1適応フィルタタイプの適応フィルタにコピーされるレート、
の1つ以上を含む場合がある。
【0158】
幾つかの実装では、第1の複数の適応フィルタは、少なくとも第1から第M適応フィルタタイプを含み、Mは3以上の整数である。幾つかのそのような実装によると、第1の複数の抽出された特徴は、次の1つ以上を含むことがある:
第M適応フィルタタイプが最低の残留電力を生成する確率、
第2から第(M-1)適応フィルタタイプのいずれかが最低の残留電力を生成する確率、
第1から第M適応フィルタタイプのいずれかを介して生成される残留電力よりも入力マイクの電力が低い確率、及び
第1から第M適応フィルタタイプのいずれかのフィルタ係数が、第1から第M適応フィルタタイプのいずれかの他の適応フィルタにコピーされるレート。
【0159】
幾つかの実装によると、方法1000は、オーディオ環境内の第2から第Nオーディオ装置の第2から第Nサブ帯域ドメインAECから、第2から第Nの複数の適応フィルタ管理モジュールの各々からの第2から第N適応フィルタ管理データを受信することを含むことがあり、Nは2より大きい整数である。このような例では、第2から第Nの複数の適応フィルタ管理モジュールの各々が、第2から第Nオーディオ装置の1つに対応することがある。
【0160】
幾つかのこのような実装では、方法1000は、第2から第N適応フィルタ管理データから第2から第Nの複数の抽出された特徴を抽出することを含むことがある。幾つかのこのような実装では、方法1000は、第1の複数の抽出された特徴と第2から第Nの複数の抽出された特徴に少なくとも部分的に基づいて、オーディオ環境における現在のグローバル音響状態を推定することを含むことがある。幾つかの代替実装では、方法1000は、オーディオ環境の単一のオーディオ装置からの入力のみに基づいて、オーディオ環境における現在のグローバル音響状態を推定することを含む場合がある。幾つかの実装では、方法1000は、オーディオ環境の2つのオーディオ装置からの入力のみに基づいて、オーディオ環境における現在のグローバル音響状態を推定することを含む場合がある。
【0161】
幾つかのそのような実装によると、方法1000は、現在のローカル音響状態に少なくとも部分的に基づいて、1つ以上のタイプのオーディオ処理を制御することを含むことができる。幾つかのそのような例では、現在のグローバル音響状態に少なくとも部分的に基づいて、オーディオデータの1つ以上のタイプのオーディオ処理を制御することは、オーディオ環境で再生されるオーディオデータの1つ以上のタイプのオーディオ処理を制御することを含むことがある。
【0162】
幾つかの例では、現在のグローバル音響状態は、音声と再生されたオーディオデータの両方がオーディオ環境の複数のオーディオ装置の近くに存在する会話モードであるか、又はそれを含む場合がある。幾つかのそのような例によると、1つ以上のタイプのオーディオ処理を制御することは、検出されたレベルの会話音声よりも低いレベルでオーディオデータを再生させることを含む場合がある。
【0163】
幾つかの実装によると、第1適応フィルタ管理データは個々のフィルタ係数値を含まない。幾つかの例では、第1適応フィルタ管理データは、第1サブ帯域ドメインAECの残余出力を含まない。
【0164】
図11は、ゾーン分類器を実装するように構成された一実施例の要素のブロック図である。この例によると、システム1100は、オーディオ環境の少なくとも一部に分散された複数のスピーカ1104を含む。この例では、システム1100は、マルチチャネルのスピーカレンダラ1101を含む。この実装によると、マルチチャネルのスピーカレンダラ1101の出力は、スピーカ駆動信号(スピーカ1104を駆動するためのスピーカフィード)とエコー参照の両方として機能する。この実装では、エコー参照は、レンダラ1102から出力されるスピーカフィード信号の少なくとも一部を含む複数のスピーカ参照チャネル1102を介してエコー管理サブシステム1103に提供される。
【0165】
この実装では、システム1100は複数のエコー管理サブシステム1103を含む。この例によると、エコー管理サブシステム1103は、1つ以上のエコー抑制プロセス及び/又は1つ以上のエコーキャンセルプロセスを実装するように構成される。この例では、各エコー管理サブシステム1103は、対応するエコー管理出力1103Aを起動ワード検出器1106の1つに提供する。エコー管理出力1103Aは、エコー管理サブシステム1103の関連する1つへの入力に対してエコーを減衰させている。この例では、各エコー管理サブシステム1103は、抽出された特徴501を、起動ワード検出器1106の1つと分類器1107にも提供する。起動ワード検出器1106と分類器1107に提供される抽出された特徴501のタイプは、特定の実装によって異なる場合がある。幾つかの実装によれば、起動ワード検出器1106と分類器1107に提供される抽出された特徴501は、例えば音響ゾーンレベルで、オーディオ環境における1人以上の人の位置、動きなどを推定するのに適した特徴を含むことができる。
【0166】
この実装によれば、システム1100は、環境の少なくとも一部(例えば、図1A又は図1Bに示されている環境)に分散されたN個のマイク1105(Nは整数)を含む。マイクは、アレイマイク及び/又はスポットマイクを含むことができる。例えば、環境内に配置された1つ以上のスマートオーディオ装置は、マイクのアレイを含むことができる。この例では、マイク1105の出力は、エコー管理サブシステム1103への入力として提供される。この実装によると、各エコー管理サブシステム1103は、個々のマイク1105又はマイク1105の個々のグループ又はサブセットの出力をキャプチャする。
【0167】
この例では、システム1100は複数の起動ワード検出器1106を含む。この例では、各起動ワード検出器1106は、エコー管理サブシステム1103の1つから出力された音声を受信し、複数の音響特徴1106Aを出力する。各エコー管理サブシステム1103から出力される音響特徴1106Aは、起動ワードの信頼度、起動ワードの継続時間、受信レベルの測定値を含むことができる(ただしこれに限定されない)。3つの音響特徴1106Aを示す3つの矢印は、各エコー管理サブシステム1103から出力されるものとして示されているが、代替実装では、より多くの又はより少ない音響特徴1106Aが出力される場合がある。更に、これらの3つの矢印は、多かれ少なかれ垂直線に沿って分類器1107に突き当たっているが、これは分類器1107が必ずしもすべての起動ワード検出器1106から同時に音響特徴1106Aを受信することを示すものではない。ここで、別のところで述べたように、幾つかの例では、音響特徴1106Aは、非同期的に決定及び/又は分類器に提供される。
【0168】
この実装によると、システム1100はゾーン分類器1107を含み、これは分類器1107とも呼ばれる。この例では、分類器は、環境内の複数の(例えば、全ての)マイク1105に対して、複数の起動ワード検出器1106から複数の特徴1106Aを受信する。この例によると、ゾーン分類器1107の出力1108は、ユーザが現在位置しているユーザゾーンの推定に対応する。幾つかのそのような例によると、出力1108は1つ以上の事後確率に対応することができる。ユーザが現在位置しているユーザゾーンの推定は、ベイズ統計による最大事後(a posteriori)確率である場合もあれば、それに対応する場合もある。
【0169】
次に、幾つかの例では図11のゾーン分類器1107に対応する場合がある分類器の実装例を説明する。xi(n)を離散時間nにおけるi番目のマイク信号i={1...N}とする(すなわち、マイク信号xi(n)はN個のマイク1105の出力である)。エコー管理サブシステム1103における信号xi(n)の処理は、各々離散時間nにおいて「クリーンな」マイク信号ei(n)、i={1...N}を生成する。図11において1103Aと呼ばれるクリーンな信号ei(n)は、この例では起動ワード検出器1106に供給される。ここで、各起動ワード検出器1106は、図11で1106Aと呼ばれる特徴wi(j)のベクトルを生成する。ここで、j={1...J}は、j番目の起動ワード発話に対応するインデックスである。この例では、分類器1107は、以下の集約特徴集合を入力として取り入れる:
【数6】
【0170】
幾つかの実装によれば、k={1...K}に対するゾーンラベルの集合Ckは、環境内の異なるユーザゾーンの数Kに対応してよい。例えば、ユーザゾーンには、ソファゾーン、キッチンゾーン、読書用椅子ゾーンなどが含まれる場合がある。幾つかの例では、キッチンや他の部屋内に複数のゾーンを定義する場合がある。例えば、キッチンエリアには、シンクゾーン、食品準備ゾーン、冷蔵庫ゾーン、ダイニングゾーンなどが含まれるかもしれない。同様に、リビングルームエリアには、ソファゾーン、テレビゾーン、読書用椅子ゾーン、1つ以上の出入り口ゾーンなどが含まれるかもしれない。これらのゾーンのゾーンラベルは、例えばトレーニング段階でユーザが選択できる。
【0171】
幾つかの実装では、分類器1107は、例えばベイズ分類器を使用することによって、以下のように事後確率を推定する:
【数7】
以下の確率:
【数8】
は、ユーザが各ゾーンCkにいる(「j」番目の発話と「k」番目のゾーンについて、各ゾーンCkについて、及び各発話についての)確率を示し、分類器1107の出力1108の例である。
【0172】
幾つかの例によると、ユーザにゾーン、例えばカウチゾーンを選択又は定義するように促すことによって、トレーニングデータが(例えば、ユーザゾーンごとに)収集される場合がある。トレーニングプロセスには、選択又は定義されたゾーンの近くで、起動ワードなどのトレーニング発話を行うようにユーザに促すことが含まれる場合がある。カウチゾーンの例では、トレーニングプロセスには、カウチの中心と端でトレーニング発話を行うようにユーザに促すことが含まれる場合がある。トレーニングプロセスには、ユーザゾーン内の各場所でトレーニング発話を数回繰り返すようにユーザに促すことが含まれる場合がある。その後、ユーザは別のユーザゾーンに移動し、指定されたすべてのユーザゾーンがカバーされるまで続行するように求められる場合がある。
【0173】
本開示の幾つかの側面は、近くの人に対応する音響状態の変化を検出し区別することを含むため、幾つかの例では、オーディオ装置は、LEDライト又は他の視覚的指示の相互照明によって、それ自体を優雅に知らせることができる。幾つかの例では、人が起動ワードでオーディオ装置をアドレス指定する前に、この種の視覚的フィードバックが利用できる場合がある。場合によっては、このようなフィードバックには、微妙な視覚的指示だけでなく、人の予想される音声をよりよく処理するために、起動ワードの発話を予測してオーディオ装置上の再生及び/又はキャプチャ処理を制御することも含まれる場合がある。
【0174】
個別の物理ゾーンにスマートオーディオ装置を構成して、(装置によって検出された起動ワードを発話した)ユーザを検出し、ゾーン内のユーザが見たり聞いたりできる視覚信号及び/又は聴覚信号を送信することによって起動ワードに応答することが知られている。幾つかの開示された実施形態は、(不確実性のある体積又は領域内で)ユーザの位置を不確実と見なすように(システムの)1つ以上のスマートオーディオ装置を構成し、不確実性の体積(又は領域)内のすべての利用可能なスマートオーディオ装置を使用して、装置の1つ以上の(例えば、すべての)状態又は動作モードを通じて、システムの「注意」の空間的に変化する表現を提供することによって、この既知のアプローチからの逸脱を実装する。幾つかの実施形態では、目標は、ユーザに最も近い単一の装置を選択してその現在の設定を上書きすることではなく、関連性メトリックに従ってすべての装置の動作を調整することであり、これは幾つかの例では、少なくとも部分的にはユーザに対する装置の推定された近接性に基づいている場合がある。これは、ユーザが近くの装置の注意を引こうとしているときに、システムが耳を傾けていることを示す遠くの装置の不快な経験を排除して、局所的な領域に注意を集中させている感覚をシステムに与える。幾つかの例によると、関連性メトリックは、少なくとも部分的に、推定されたローカル音響状態情報226A及び/又は上記の現在のグローバル音響状態推定227に基づいている場合がある。
【0175】
幾つかの実施例では、(例えば、起動ワードに応答して)各装置が注意信号を生成する能力を定義及び実装することによって、環境又は環境のゾーン内のすべてのスマートオーディオ装置の調整された利用を提供する(又は提供するように構成される)。幾つかの実装では、一部又はすべての装置が、注意信号を現在の構成に「ミックス(mix in)」するように(及び/又は、すべての装置の現在の構成によって少なくとも部分的に決定される注意信号を生成するように)構成される場合がある。幾つかの実装では、各装置は、ユーザの位置からの装置の距離など、ある場所からの距離の確率的推定値を決定するように構成される場合がある。そのような実装の中には、ユーザに知覚的に関連する方法で、システムの動作のまとまりのある、調整された表現を提供するものもある。
【0176】
少なくとも1つのスピーカを含む(又は結合されている)スマートオーディオ装置の場合、注意信号は、少なくとも1つのそのようなスピーカから放出される音である場合がある。代替として又は追加で、注意信号は他のタイプ(例えば光)である場合がある。幾つかの例では、注意信号は2つ以上のコンポーネントであるか又はそれを含む場合がある(例えば、放出された音と光)。
【0177】
幾つかの例によると、注意信号は、発話の時間の前にゾーン内の装置によって生成された少なくとも1つの以前の信号の変調を含む場合がある。例えば、照明器具又は光源システムが以前に光信号を放出していた場合、変調は色変調、色飽和変調及び/又は光強度変調である場合がある。以前の信号が音声信号であった場合、変調にはレベルや音量の変調、周波数の変調などが含まれている場合がある。幾つかの例では、変調は、ファン速度の変化、炎の大きさの変化、モータ速度の変化、及び/又は空気流量の変化であってよい。
【0178】
幾つかの実装によると、変調は「うねり」である場合がある。うねりは、あらかじめ決められた信号変調のシーケンスである場合もあれば、それを含む場合もある。場合によっては、うねりは注意信号変調の明確なエンベロープを含むことがある。うねりは、注意(又は注意)の自然なリズムを反映する注意信号変調のタイミングを提供するように設計されることがある。うねりの軌跡は、エッジポイント、例えばうねりの始まりと終わりでの急激な変化の感覚を避けるように設計されることがある。うねりのエンベロープには、例えば、第1時間間隔中にベースラインレベルから局所的最大レベルに注意信号レベルを増加させる攻撃が含まれることがある。局所的最大レベルは、注意信号の種類(例えば、光、音、その他のいずれであっても)、信号の変調方法(例えば、光の強さ、色又は彩度の変化)、及び注意信号が「検出可能」又は「命令された」状態に対応することを意図しているかどうかによって異なる場合がある。他の例では、うねりの第1時間間隔は、ベースラインレベルから局所的最小レベルへの注意信号レベルの減少に対応する場合がある。
【0179】
そのような実装の中には、システム環境(例えば、生活空間の照明、スピーカ、扇風機、暖炉など)で可変出力装置(場合によっては、連続可変出力装置となることもある)を使用するものがあり、別の目的で使用される可能性があるが、現在の動作ポイントを中心に変調することができる。幾つかの例では、可変注意指示(例えば、うねりのある注意信号を変化させる)を提供し、例えば一連の装置全体で注意の様々な表現(例えば、変動する量)を示す場合がある。幾つかの実装は、ユーザ信号の推定された強度及び/又はユーザ位置の信頼度の関数に基づいて、可変注意信号(例えば、うねり)を制御するように設定することができる。
【0180】
図12は、幾つかの実装に従った注意表現機能の例を示すブロック図である。この例では、図12は、(例えば、ユーザが発した起動ワードの)可変信号強度1205、及び可変信号のソースの場所1210の可変確率を示している。図12は、異なるスマートオーディオ装置(例えば、仮想アシスタント)の可変信号への応答も示している。装置は装置グループ1220と1225にあり、活性化可能な照明が含まれているか、関連付けられている(例えば、それとの通信用に設定されている)。図12に示すように、各装置は異なるグループに含めることができる。図12の「装置グループ」は、ラウンジ、キッチンなどの対応するゾーンに基づいている。1つのゾーンに複数のオーディオ装置及び/又は照明が含まれている場合がある。ゾーンは重複する場合があるため、オーディオ装置、照明などは複数のゾーンに存在する場合がある。したがって、照明、オーディオ装置などは、装置に関連付けられるのではなく、又は装置に関連付けられるだけでなく、ゾーンに関連付けられる場合がある。特定の照明、オーディオ装置などは、各ゾーンにより強く(又は弱く)関連付けられる可能性があり、そのため、異なるうねり率に関連付けられる場合がある。幾つかの例では、うねりの割合は関連性メトリックに対応する場合がある。幾つかの実装では、これらの関連性メトリックは手動で設定され、図12に示すようにテーブルにキャプチャされる場合がある。他の例では、関連性メトリックは、上で説明したように、距離ヒューリスティクス又は確率から自動的に決定される場合がある。
【0181】
例えば、(決定された強度を持ち、不確実性を伴って決定される起点の位置を持つ)起動ワードに応答して、装置の2つの異なる又は装置に関連付けた照明を起動して、時間変化する注意信号を生成することができる。この例では、注意信号は、各装置の位置によって変化する、装置と起動ワードの起点の位置との間の推定された距離に部分的に基づいているため、注意信号も空間的に変化する。
【0182】
図12に示されている例では、信号強度(1205)は、例えば、前述の「起動ワードの信頼度」に対応する場合がある。この例では、すべてのゾーン(キッチン、ラウンジなど)1210の位置確率は、前述のゾーン確率(例えば、[0,1]の範囲内)に対応している。図12は、各ゾーンに対応する各照明の異なる動作がある(「関連性メトリック」に対応する場合がある)例を示している。照明、オーディオ装置などが複数のゾーンに関連付けられている場合、幾つかの実装では、関連する各ゾーンの出力の最大値を決定するように制御システムを構成できる。
【0183】
図13は、実装による、環境(例えば家庭)で実装されるシステムのブロック図である。このシステムは、ユーザの位置情報を追跡するための「フォローミー(follow me)」メカニズムを実装している。図13では、ラベル付き要素は次のとおりである。
【0184】
1301:入力を受け取り、(例えば、入力1306Aで示される)(入力に応じて)決定されたアクティビティに使用する最適なマイクとスピーカについて決定を行うように構成されたサブシステム(モジュール又は「フォローミー(follow me)」モジュールと呼ばれることもある)。
【0185】
1301A:決定されたアクティビティに使用するシステムの最適なスピーカ、及び/又はユーザ(例えば、話者)が現在位置しているゾーン(例えば、ゾーンマップ1303で示されるゾーンの1つ)に関する(モジュール1301で決定された)決定を示すデータ。
【0186】
1301B:決定されたアクティビティに使用するシステムの最適なマイク、及び/又はユーザが現在位置しているゾーン(例えば、ゾーンマップ1303で示されるゾーンの1つ)に関する(モジュール1301で決定された)決定を示すデータ。
【0187】
1302:例えば環境のゾーン内のユーザ(例えば、話者)の位置を決定するように構成されているユーザ位置サブシステム(モジュール)。幾つかの実装では、サブシステム1302は、(例えば、少なくとも一部のマイク1305に由来する複数の音響特徴に従い)ユーザのゾーンを推定するように構成されている。幾つかのそのような実装では、目標はユーザの正確な幾何学的位置を推定することではなく、ユーザが位置する離散ゾーン(例えば、強いノイズや残差エコーが存在する場合)のロバストな推定値を形成することである。
【0188】
1302A:モジュール1302によって決定され、モジュール1301にアサートされる、ユーザ(話者)の現在位置を示す情報(データ)。
【0189】
1303:システムの環境のゾーンを示すゾーンマップと、ゾーン内の位置によってグループ化されたシステムのすべてのマイクとスピーカのリストを提供するゾーンマップサブシステム。一部の実装では、サブシステム1303は、ゾーンマップを示すデータを格納するメモリであるか、又はそれを含む。
【0190】
1303A:(ゾーンマップの)少なくとも1つのゾーンと、ゾーンマップの各ゾーン(例えば、ゾーンの少なくともサブセットの各々)に含まれる複数のマイクとスピーカに関する情報(データ)であって、(システムの一部の実装では)モジュール1301及び/又はモジュール1302に対してアサートされている情報(データ)。
【0191】
1304:マイク1305の出力の前処理を実行するために結合され、構成された前処理サブシステム。サブシステム1304は、1つ以上のマイク前処理サブシステム(例えば、特徴抽出サブシステム、音響状態推定サブシステム、エコー管理サブシステム、起動ワード検出器、及び/又は音声認識サブシステムなど)を実装することができる。
【0192】
1304A:サブシステム1304によって生成され、サブシステムから出力される前処理されたマイク信号。
【0193】
1315:前処理サブシステム1304によって生成され、前処理サブシステム1304から出力される、抽出された特徴及び/又は音響状態情報。出力1315は、例えば、上記の抽出された特徴501、抽出された特徴601、推定されたローカル音響状態情報226及び/又はグローバル音響状態情報627に対応することができる。
【0194】
1305:複数のマイク。
【0195】
1306:少なくとも1つの現在のオーディオアクティビティ(例えば、現在進行中の複数のオーディオアクティビティ)を実装するように結合され及び構成されたサブシステム。このような各オーディオアクティビティ(ここでは便宜上「アクティビティ」と呼ばれることもある)には、(少なくとも1つのマイクを使用した)音声の検出及び/又は(少なくとも1つのスピーカから音声を出力することによる)音声の生成が含まれる。このようなオーディオアクティビティの例には、音楽再生(例えば、サブシステム1307によるレンダリングのためにオーディオを提供するステップを含む)、ポッドキャスト(例えば、サブシステム1307によるレンダリングのためにオーディオを提供するステップを含む)、及び/又は電話呼(例えば、サブシステム1307によるレンダリングのために電話会議オーディオを提供すること、及び/又はサブシステム1304に提供される各マイク信号を処理及び/又は送信することを含む)が含まれるが、これらに限定されない。
【0196】
1306A:サブシステム1306によって生成され、サブシステム1306からモジュール1301にアサートされる、サブシステム1306によって実装される現在進行中の1つ以上のアクティビティに関する情報(データ)。
【0197】
1307:システムの少なくとも1つの現在のアクティビティの実行中に生成された、又はその他の方法で(例えば、スピーカ1308を駆動するためのスピーカフィードを生成することによって)提供されたオーディオをレンダリングするように結合及び構成されたマルチチャネルスピーカレンダラサブシステム。この例では、サブシステム1307はレンダラ出力1320をスピーカ1308と前処理サブシステム1304に提供する。例えば、サブシステム1307は、データ1301Aに従って、関連するスピーカによって発せられた音声が、ユーザの現在の場所(例えば、ゾーン)で、ユーザによって(例えば、明確に、又は最善又は望ましい方法で)認識されるように、(異なるスマートオーディオ装置に実装されているか、又は結合されている場合がある)スピーカ1308のサブセットによる再生のためにオーディオをレンダリングするために実装される場合がある。
【0198】
1308:複数のスピーカ。
【0199】
1314:システムの典型的な実装ではサブシステム1304から出力され、モジュール1301に提供される、ユーザ(例えば、話者)からの音声コマンド。
【0200】
要素1301、1302、及び1303(又は要素1302及び1303)は、まとめて図13システムのユーザ位置及びアクティビティ制御サブシステムと呼ばれることがある。
【0201】
図13システムの要素は、スマートオーディオ装置に実装又は結合されることがある。例えば、スピーカ1308の全部又は一部及び/又はマイク1305の全部又は一部は、1つ以上のスマートオーディオ装置に実装又は結合されることがあり、又はマイクとスピーカの少なくとも一部は、Bluetooth送受信機(例えば、スマートフォン)に接続されたBluetooth装置に実装されることがある。また、例えば、図13システムの1つ以上の他の要素(例えば、要素1301、1302、1303、1304、及び1306の全部又は一部)は、スマートオーディオ装置に実装されたり、スマートオーディオ装置に結合されたりすることができる。このような実装例では、「フォローミー」モジュール1301は、システムの少なくとも1つのマイクによって検出された(ユーザが発した)音声に応答してユーザの位置を追跡することによって、スマートオーディオ装置を調整(オーケストレーション)するよう動作する(及び他のシステム要素が動作する)。例えば、このような調整には、システムの要素によって発せられる音声のレンダリングの調整、及び/又はシステムのマイクの出力の処理、及び/又はシステムによって(例えば、システムの要素1306によって)実装される少なくとも1つのアクティビティが含まれる。
【0202】
通常、サブシステム1302と1303は緊密に統合されている。サブシステム1302は、マイク1305のすべて又は一部(例えば、2つ以上)の出力を受信する場合がある(これは、幾つかの例では非同期マイクとして実装される場合がある)。サブシステム1302は分類器を実装する場合があり、これは幾つかの例ではシステムのスマートオーディオ装置に実装される。他の例では、分類器はマイクとの通信のために結合され構成されたシステムの別のタイプの装置(例えば、音声を提供するように設定されていないスマート装置)によって実装される場合がある。例えば、少なくとも一部のマイク1305は、いかなるスマートオーディオ装置にも含まれないが、分類器としてサブシステム1302を実装する装置との通信のために構成された(例えば、家電製品内の)個別のマイクであってもよく、分類器は、各マイクの出力信号から得られる複数の音響特徴に従ってユーザのゾーンを推定するように構成されていてもよい。幾つかのそのような実装では、目標はユーザの正確な幾何学的位置を推定することではなく、離散ゾーン(例えば、強いノイズや残差エコーが存在する場合)のロバストな推定値を形成することである。
【0203】
ここで、(以上又は以下の説明の中で言及される)環境におけるオブジェクト、ユーザ、又は話者の「幾何学的位置」という表現は、座標系(例えば、GPS座標を基準とした座標系)に基づく位置を指し、(例えば、環境内のどこかに原点を持つデカルト座標系又は極座標系による)システム環境全体を参照するか、又は、(例えば、装置を原点とするデカルト座標系又は極座標系による)環境内の特定の装置(例えば、スマートオーディオ装置)を参照する。一部の実装では、サブシステム1302は、マイク1305の幾何学的位置を参照せずに、環境内のユーザの位置の推定を決定するように構成されている。
【0204】
「フォローミー」モジュール1301は、多数の入力(1302A、1303A、1306A、及び1314のうちの1つ以上)に応答して動作し、出力1301A及び1301Bの一方又は両方を生成するように結合及び構成されている。入力の例については、次に詳細に説明する。
【0205】
入力1303Aは、ゾーンマップの各ゾーン(音響ゾーンと呼ばれることがある)に関する情報を示すことができ、これには、限定ではなく、各ゾーン内に位置するシステムの装置(例えば、スマート装置、マイク、スピーカなど)のリスト、(例えば、幾何学的な位置の単位と同じ座標系の)各ゾーンの寸法、環境に関する及び/又は他のゾーンに関する各ゾーン(例えば、キッチン、リビング、寝室、テレビエリアなど)の幾何学的位置、(例えば、各々のゾーンに対する、及び/又は装置の他のゾーンに対する)システムの各装置の幾何学的位置、及び/又は各ゾーンの名前が含まれる。
【0206】
入力1302Aは、ユーザ(話者)が位置する音響ゾーン、そのようなゾーン内の話者の幾何学的位置、及びそのようなゾーンに話者がいた時間のすべて又は一部に関するリアルタイム情報(データ)であるか、又はそれを含む。入力1302Aは、前の文で指摘された情報のいずれかの精度又は正確性に関するユーザ位置モジュール1302による信頼度、及び/又は話者の移動履歴(例えば、過去N時間以内、パラメータNは設定可能である)も含まれている場合がある。
【0207】
入力1314は、ユーザ(話者)によって発せられた音声コマンド、又は複数の音声コマンドである場合があり、各々が前処理サブシステム1304(例えば、「フォローミー」モジュール1301の機能に関連する、あるいは関連しないコマンド)によって検出されている。
【0208】
モジュール1301の出力1301Aは、話者の現在の(例えば、最近決定された)音響ゾーンに従って処理を適応させるためのレンダリングサブシステム(レンダラ)1307への命令である。モジュール1301の出力1301Bは、話者の現在の(例えば、最近決定された)音響ゾーンに従って処理を適応させるための処理サブシステム1307への命令である。
【0209】
出力1301Aは、話者の現在の音響ゾーンに対する話者の幾何学的位置、及び話者に対する各スピーカ1308の幾何学的位置と距離を示すことができ、例えば、システムによって実装されている関連アクティビティに対して最適なレンダリングをレンダラ1307に実行させることができる。最適なレンダリングは、アクティビティとゾーンに依存する場合があり、オプションで話者の以前に決定された(例えば、記録された)設定にも依存する場合がある。例えば、アクティビティが映画で、話者がリビングルームにいる場合、出力1301Aは、映画館のような体験のために、できるだけ多くのスピーカを使用して映画のオーディオを再生するようにレンダラ1307に指示する場合がある。アクティビティが音楽又はポッドキャストで、話者がキッチン又は寝室にいる場合、出力1301Aは、より親密な体験のために、最も近いスピーカのみで音楽をレンダリングするようにレンダラ1307に指示する場合がある。
【0210】
出力1301Bは、サブシステム1304(例えば、出力を無視してはならず、代わりにサブシステム1304によって使用(例えば処理)されるべきマイク)で使用するためのマイク1305の一部又はすべてのソートされたリストと、ユーザ(話者)に対するそのような各マイクの幾何学的位置を示す場合がある。幾つかの実装では、サブシステム1304は、マイク1305の一部又はすべての出力を、以下:(出力1301Bによって示される)話者からの各マイクの距離、利用可能な場合には各マイクの起動ワードスコア(例えば、マイクがユーザが発した起動ワードを聞いた可能性)、各マイクの信号対雑音比(例えば、環境ノイズやマイクから取り込んだオーディオ再生に関して、話者が発する音声の音量など)、又は上記の2つ以上の組み合わせ、のうちの1つ以上によって決定される方法で処理する場合がある。起動ワードスコア及び信号対雑音比は、前処理サブシステム1304によって計算することができる。電話呼などの一部のアプリケーションでは、サブシステム1304は、(リストによって示されるように)最も優れたマイク1305の出力のみを使用するか、リストからの複数のマイクからの信号でビームフォーミングを実装することができる。(例えば)分散型音声認識装置や分散型起動ワード検出器などの一部のアプリケーションを実装するために、サブシステム1304は、複数のマイク1305(例えば、出力1301Bで示されるソートされたリストから決定され、ここで、ソートは、例えば、ユーザに近い順であってもよい)の出力を使用することができる。
【0211】
幾つかの例示的なアプリケーションでは、サブシステム1304(モジュール1301及び1302を有する)は、(例えば、少なくとも部分的には)出力1301Bを使用して、ユーザのゾーンからより効果的に(例えば、起動ワードに続くコマンドをよりよく認識するために)音声を拾おうとするマイク選択又は適応型ビームフォーミング方式を実装する。このようなシナリオでは、モジュール1302は、サブシステム1304の出力1304Aをユーザゾーン予測の品質に関するフィードバックとして使用して、以下のような様々な方法のいずれかでユーザゾーンの決定を改善することができる。起動ワードに続く音声コマンドを誤って認識する結果となる予測にペナルティを与える。
【0212】
例えば、(例えば、「アマンダ、止まれ」のような反対のコマンドを発することにより)コマンドに対する音声アシスタントの応答をユーザが短くする結果となるユーザゾーン予測はペナルティを受ける場合がある。
【0213】
(サブシステム1304によって実装された)音声認識器がコマンドを正常に認識したという信頼性が低い結果となる予測にペナルティを与える。
【0214】
(サブシステム1304によって実装された)第2パスの起動ワード検出器が高い信頼性で過去に照らして起動ワードを検出できない結果となる予測にペナルティを与える。及び/又は、
【0215】
強い自信を持って起動ワードを認識したり、及び/又はユーザの音声コマンドを正しく認識したりする結果となる予測を強化する。
【0216】
図14は、この例では生活空間であるオーディオ環境のフロアプランの例を示している。本願明細書で提供される他の図と同様に、図14に示される要素の数及び種類は、単なる例である。他の実装には、より多くの、より少ない、及び/又は異なる種類と数の要素が含まれる場合がある。
【0217】
この例によると、環境1400は左上にリビングルーム1410、中央下部にキッチン1415、右下部に寝室1422を含む。リビングスペース全体に配置されたボックスと円は、スピーカ1405a~1405hのセットを表しており、少なくとも一部の実装ではスマートスピーカである可能性があり、スペースに便利な場所に配置されているが、標準で規定されたレイアウトには準拠していない(任意に配置されている)。幾つかの例では、テレビ1430は、少なくとも部分的に、1つ以上の開示された実施形態を実装するように構成することができる。この例では、環境1400は、環境全体に分散されたカメラ1411a~1411eを含む。実装によっては、環境1400内の1つ以上のスマートオーディオ装置も、1つ以上のカメラを含む場合がある。1つ以上のスマートオーディオ装置は、単一目的のオーディオ装置又は仮想アシスタントである場合がある。このような例の幾つかでは、任意的なセンサシステム130の1つ以上のカメラが、テレビ1430、携帯電話、又はスピーカ1405b、1405d、1405e、又は1405hの1つ以上などのスマートスピーカ内に存在する場合がある。カメラ1411a~1411eは、本開示で提示された環境1400のすべての描写には示されていないが、それにもかかわらず、環境1400の各々は、幾つかの実装において、1つ以上のカメラを含む場合がある。
【0218】
本開示の幾つかの側面には、開示された方法の1つ以上の例を実行するように(例えば、プログラムされた)構成されたシステム又は装置、及び開示された方法の1つ以上の例又はそのステップを実装するためのコードを格納する有形のコンピュータ可読媒体(例えばディスク)が含まれる。例えば、幾つかの開示されたシステムは、ソフトウェア又はファームウェアでプログラムされ、及び/又は開示された方法の実施形態又はそのステップを含む、データに対する様々な操作のいずれかを実行するようにその他の方法で構成された、プログラム可能な汎用プロセッサ、デジタルシグナルプロセッサ、又はマイクロプロセッサであるか、又はこれらを含むことができる。このような汎用プロセッサは、それにアサートされたデータに応答して開示された方法(又はそのステップ)の1つ以上の例を実行するようにプログラムされた(及び/又はその他の方法で構成された)入力装置、メモリ、及び処理サブシステムを含むコンピュータシステムであるか、又はこれらを含むことができる。
【0219】
幾つかの実施形態は、開示された方法の1つ以上の例の実行を含む、オーディオ信号に対して必要な処理を実行するように構成された(例えば、プログラムされた及びその他の設定された)、構成可能な(例えばプログラマブル)デジタルシグナルプロセッサ(DSP)として実装されることができる。代替として、開示されたシステム(又はその要素)の実施形態は、ソフトウェア又はファームウェアでプログラムされ、かつ/又は開示された方法の1つ以上の例を含む様々な操作のいずれかを実行するようにその他の方法で構成された汎用プロセッサ(例えば、パーソナルコンピュータ(PC)、その他のコンピュータシステム又はマイクロプロセッサ(入力装置とメモリを含む場合がある))として実装されることができる。代替として、本発明のシステムの幾つかの実施形態の要素は、開示された方法の1つ以上の例を実行するように構成された(例えば、プログラムされた)汎用プロセッサ又はDSPとして実装され、システムは他の要素(例えば、1つ以上のスピーカ及び/又は1つ以上のマイク)も含む。開示された方法の1つ以上の例を実行するように構成された汎用プロセッサは、入力装置(例えば、マウス及び/又はキーボード)、メモリ、及び表示装置に結合することができる。
【0220】
本開示の別の側面は、開示された方法又はそのステップの1つ以上の例を実行(例えば、実行するコーダ実行可能ファイル)するためのコードを格納するコンピュータ可読媒体(例えば、ディスクやその他の有形の記憶媒体)である。
【0221】
本開示発明の特定の実施形態及び本開示の適用が本願明細書に記載されたが、当業者に明らかなことに、本願明細書に記載され及び請求される本開示の範囲から逸脱することなく、本願明細書に記載された実施形態及び適用に対する多くの変形が、可能である。理解されるべきことに、本開示の特定の形式が示され記載されたが、本開示は、記載され及び示された特定の実施形態又は記載された特定の方法に限定されない。
【0222】
本発明の種々の態様は、以下に列挙する例示的な実施形態(enumerated example embodiment:EEE)から明らかであり得る。
【0223】
(EEE1)
オーディオ処理方法であって、
制御システムにより、オーディオ環境内の第1オーディオ装置の第1サブ帯域ドメイン音響エコーキャンセラ(AEC)から、複数の第1適応フィルタ管理モジュールの各々からの第1適応フィルタ管理データを受信するステップであって、前記複数の第1適応フィルタ管理モジュールの各第1適応フィルタ管理モジュールは、第1サブ帯域ドメインAECのサブ帯域に対応し、各第1適応フィルタ管理モジュールは第1の複数の適応フィルタを制御するように構成され、前記第1の複数の適応フィルタは、少なくとも第1適応フィルタタイプと第2適応フィルタタイプを含む、ステップと、
前記制御システムにより、第1適応フィルタ管理データから、前記第1サブ帯域ドメインAECの複数のサブ帯域に対応する第1の複数の抽出された特徴を抽出するステップと、
前記制御システムにより、前記第1の複数の抽出された特徴に少なくとも部分的に基づいて現在のローカル音響状態を推定するステップと、
を含む方法。
【0224】
(EEE2)
少なくとも部分的に、前記現在のローカル音響状態に基づいて、1つ以上のタイプのオーディオ処理を制御するステップ、
を更に含むEEE1に記載の方法。
【0225】
(EEE3)
1つ以上のタイプのオーディオ処理を制御するステップは、前記オーディオ環境で再生されるオーディオデータのオーディオ処理を制御するステップを含む、EEE2に記載の方法。
【0226】
(EEE4)
1つ以上のタイプのオーディオ処理を制御するステップは、自動音声認識処理を制御するステップを含む、EEE2又は3に記載の方法。
【0227】
(EEE5)
1つ以上のタイプのオーディオ処理を制御するステップは、ノイズ補償処理を制御するステップを含む、EEE2~4のいずれか一項に記載の方法。
【0228】
(EEE6)
1つ以上のタイプのオーディオ処理を制御するステップは、前記第1サブ帯域ドメインAECを制御するステップを含む、EEE2~5のいずれか一項に記載の方法。
【0229】
(EEE7)
前記現在のローカル音響状態は、音声データと再生されるオーディオデータの両方が前記第1オーディオ装置の近くに存在するダブルトーク状態である、EEE1~6のいずれか一項に記載の方法。
【0230】
(EEE8)
前記現在のローカル音響状態は、前記第1オーディオ装置の近くのエコー経路変化を含む、EEE1~7のいずれか一項に記載の方法。
【0231】
(EEE9)
前記現在のローカル音響状態は、前記第1オーディオ装置の位置の変化、前記第1オーディオ装置の1つ以上の設定の変化、前記第1オーディオ装置を含むオーディオシステムの構成の変化、再生オーディオのレベル、又は背景ノイズのレベル、のうちの1つ以上を含む、EEE1~8のいずれか一項に記載の方法。
【0232】
(EEE10)前記第1の複数の抽出された特徴が、前記第1適応フィルタタイプの第1フィルタ係数が前記第2適応フィルタタイプの適応フィルタにコピーされるレート、又は前記第2適応フィルタタイプの第2フィルタ係数が前記第1適応フィルタタイプの適応フィルタにコピーされるレートのうちの1つ以上を含む、EEE1~9のいずれか一項に記載の方法。
【0233】
(EEE11)前記第1の複数の抽出された特徴は、以下:
第1適応フィルタタイプが時間間隔中に最小の残留電力を生成する確率、
第2適応フィルタタイプが時間間隔中に最小の残留電力を生成する確率、
時間間隔中に第1適応フィルタタイプを介して生成される第1残留電力又は第2適応フィルタタイプを介して生成される第2残留電力よりも入力マイク電力が低い確率、
第1適応フィルタタイプが複数のサブ帯域で最も低い残留電力を生成する確率、
第2適応フィルタタイプが複数のサブ帯域で最も低い残留電力を生成する確率、
複数のサブ帯域で、第1適応フィルタタイプを介して生成された第1残留電力又は第2適応フィルタタイプを介して生成された第2残留電力よりも入力マイク電力が低い確率、
を含む特徴リストからの1つ以上の特徴を含む、EEE1~9のいずれか一項に記載の方法。
【0234】
(EEE12)前記第1の複数の適応フィルタは、少なくとも第1から第M適応フィルタタイプを含み、Mは3以上の整数である、EEE1~11のいずれか一項に記載の方法。
【0235】
(EEE13)第1の複数の抽出された特徴は、以下:
第M適応フィルタタイプが最低の残留電力を生成する確率、
第2から第(M-1)適応フィルタタイプのいずれかが最低の残留電力を生成する確率、
第1から第M適応フィルタタイプのいずれかを介して生成される残留電力よりも入力マイクの電力が低い確率、及び
第1から第M適応フィルタタイプのいずれかのフィルタ係数が、第1から第M適応フィルタタイプのいずれかの他の適応フィルタにコピーされるレート、
を含む特徴リストからの1つ以上の特徴を含む、EEE12に記載の方法。
【0236】
(EEE14)前記オーディオ環境内の第2から第Nオーディオ装置の第2から第Nサブ帯域ドメインAECから、第2から第Nの複数の適応フィルタ管理モジュールの各々からの第2から第N適応フィルタ管理データを受信するステップであって、前記第2から第Nの複数の適応フィルタ管理モジュールの各々は前記第2から第Nオーディオ装置のうちの1つに対応し、Nは2より大きい整数である、ステップと、
前記第2から第N適応フィルタ管理データから、第2から第Nの複数の抽出された特徴を抽出するステップと、
前記第1の複数の抽出された特徴と前記第2から第Nの複数の抽出された特徴に少なくとも部分的に基づいて、前記オーディオ環境における現在のグローバル音響状態を推定するステップと、
を更に含む、EEE1~13のいずれか一項に記載の方法。
【0237】

(EEE15)少なくとも部分的に、前記現在のグローバル音響状態に基づいて、1つ以上のタイプのオーディオ処理を制御するステップ、
を更に含むEEE14に記載の方法。
【0238】
(EEE16)前記現在のグローバル音響状態に少なくとも部分的に基づいて、オーディオデータの1つ以上のタイプのオーディオ処理を制御するステップは、前記オーディオ環境で再生されるオーディオデータの1つ以上のタイプのオーディオ処理を制御するステップを含む、EEE15に記載の方法。
【0239】
(EEE17)前記方法は、
前記現在のグローバル音響状態を推定するステップであって、前記現在のグローバル音響状態は、複数の人が前記オーディオ環境にいるパーティ状態を含み、オーディオデータのレンダリング方法を制御するステップは、分散レンダリングモードに従って前記オーディオデータをレンダリングさせるステップを含む、EEE1~16のいずれか一項に記載の方法。
【0240】
(EEE18)前記第1適応フィルタタイプが、前記第2適応フィルタタイプより相対的に積極的である、EEE1~17のいずれか一項に記載の方法。
【0241】
(EEE19)前記第1適応フィルタタイプが線形適応フィルタタイプであり、前記第2適応フィルタタイプが非線形適応フィルタタイプである、EEE1~18のいずれか一項に記載の方法。
【0242】
(EEE20)前記第1適応フィルタタイプがメイン適応フィルタタイプであり、前記第2適応フィルタタイプがシャドウ適応フィルタタイプである、EEE1~19のいずれか一項に記載の方法。
【0243】
(EEE21)前記第1適応フィルタと前記第2適応フィルタが異なる適応フィルタリングアルゴリズムによって更新される、EEE1~20のいずれか一項に記載の方法。
【0244】
(EEE22)前記第1適応フィルタは、前記第2適応フィルタよりも多数の適応されたフィルタ係数値を含む、EEE1~21のいずれか一項に記載の方法。
【0245】
(EEE23)前記第1適応フィルタ管理データが個々のフィルタ係数値を含まない、EEE1~22のいずれか一項に記載の方法。
【0246】
(EEE24)前記第1適応フィルタ管理データが前記第1サブタイ域ドメインAECの残差出力を含まない、EEE1~23のいずれか一項に記載の方法。
【0247】
(EEE25)EEE1~24のいずれか一項に記載の方法を実行するよう構成される機器。
【0248】
(EEE26)EEE1~24のいずれか一項に記載の方法を実行するよう構成されるシステム。
【0249】
(EEE27)ソフトウェアを記憶している1つ以上の非一時的媒体であって、前記ソフトウェアは、EEE1~24のいずれか一項に記載の方法を実行するよう1つ以上の装置を制御するための命令を含む、非一時的媒体。
図1A
図1B
図2
図3
図4
図5
図6
図7A
図7B
図7C
図7D
図7E
図8A
図8B
図9
図10
図11
図12
図13
図14
【手続補正書】
【提出日】2023-06-08
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
オーディオ処理方法であって、
オーディオ環境において、第1オーディオ装置の第1サブ帯域ドメイン音響エコーキャンセラ(AEC)から、複数の第1適応フィルタ管理モジュールの各々から第1適応フィルタ管理データを受信するステップであって、前記複数の第1適応フィルタ管理モジュールの各第1適応フィルタ管理モジュールは、前記第1サブ帯域ドメインAECのサブ帯域に対応し、各第1適応フィルタ管理モジュールが、第1の複数の適応フィルタを制御するように構成され、前記第1の複数の適応フィルタは少なくとも第1適応フィルタタイプ及び第2適応フィルタタイプを含み、前記第1の複数の適応フィルタの各適応フィルタは各々のサブ帯域に対するエコーキャンセルされた信号を生成するために使用される、ステップと、
前記第1適応フィルタ管理データから、第1の複数の抽出された特徴を抽出するステップであって、前記第1の複数の抽出された特徴は、前記第1サブ帯域ドメインAECの複数のサブ帯域に対応する、ステップと、
前記第1の複数の抽出された特徴に少なくとも部分的に基づいて、前記第1オーディオ装置の近くの現在のローカル音響状態を推定するステップと、
を含み、
前記第1の複数の抽出された特徴は、以下:
前記第1適応フィルタタイプを介して生成されたエコーキャンセルされた信号が前記複数のサブ帯域の中で最も低い電力を持つ確率、
前記第2適応フィルタタイプを介して生成されたエコーキャンセルされた信号が前記複数のサブ帯域で最も低い電力を持つ確率、
入力マイクの電力が、前記第1の複数の適応フィルタのいずれかを介して生成されたエコーキャンセルされた信号の電力よりも低い確率、
を含む特徴のリストからの1つ以上の特徴を含む、方法。
【請求項2】
少なくとも部分的に、前記現在のローカル音響状態に基づいて、1つ以上のタイプのオーディオ処理を制御するステップ、
を更に含む請求項1に記載の方法。
【請求項3】
1つ以上のタイプのオーディオ処理を制御するステップは、前記オーディオ環境で再生されるオーディオデータのオーディオ処理を制御するステップを含む、請求項2に記載の方法。
【請求項4】
1つ以上のタイプのオーディオ処理を制御するステップは、自動音声認識処理を制御するステップ、ノイズ補償処理を制御するステップ、前記第1サブ帯域ドメインAECを制御するステップ、又はそれらの組み合わせを含む、請求項2又は3に記載の方法。
【請求項5】
前記現在のローカル音響状態は、音声データと再生されるオーディオデータの両方が前記第1オーディオ装置の近くに存在するダブルトーク状態、又は前記第1オーディオ装置の近くのエコー経路変化、の少なくとも1つを含む、請求項1~4のいずれか一項に記載の方法。
【請求項6】
前記現在のローカル音響状態は、前記第1オーディオ装置の位置の変化、前記第1オーディオ装置の1つ以上の設定の変化、前記第1オーディオ装置を含むオーディオシステムの構成の変化、再生オーディオのレベル、又は背景ノイズのレベル、のうちの1つ以上を含む、請求項1~5のいずれか一項に記載の方法。
【請求項7】
前記第1の複数の抽出された特徴が、前記第1適応フィルタタイプの第1フィルタ係数が前記第2適応フィルタタイプの適応フィルタにコピーされるレート、又は前記第2適応フィルタタイプの第2フィルタ係数が前記第1適応フィルタタイプの適応フィルタにコピーされるレートのうちの1つ以上を含む、請求項1~6のいずれか一項に記載の方法。
【請求項8】
前記第1の複数の適応フィルタは、少なくとも第1から第M適応フィルタタイプを含み、Mは3以上の整数であり、前記第1の複数の抽出された特徴は、以下:
第M適応フィルタタイプを介して生成されたエコーキャンセルされた信号が最低電力を有する確率、
第2から第(M-1)適応フィルタタイプのいずれかを介して生成されたエコーキャンセルされた信号が最低電力を有する確率、
入力マイクの電力が、第1から第M適応フィルタタイプのいずれかを介して生成されたエコーキャンセルされた信号の電力よりも低い確率、及び
前記第1から第M適応フィルタタイプのいずれかのフィルタ係数が、前記第1から第M適応フィルタタイプのいずれかの他の適応フィルタにコピーされるレート、
を含む特徴のリストから1つ以上の特徴を含む、請求項1~7のいずれか一項に記載の方法。
【請求項9】
前記オーディオ環境内の第2から第Nオーディオ装置の第2から第Nサブ帯域ドメインAECから、第2から第Nの複数の適応フィルタ管理モジュールの各々からの第2から第N適応フィルタ管理データを受信するステップであって、前記第2から第Nの複数の適応フィルタ管理モジュールの各々は前記第2から第Nオーディオ装置のうちの1つに対応し、Nは2より大きい整数である、ステップと、
前記第2から第N適応フィルタ管理データから、第2から第Nの複数の抽出された特徴を抽出するステップと、
前記第1の複数の抽出された特徴と前記第2から第Nの複数の抽出された特徴に少なくとも部分的に基づいて、前記オーディオ環境における現在のグローバル音響状態を推定するステップと、
前記現在のグローバル音響状態に少なくとも部分的に基づいて、1つ以上のタイプのオーディオ処理を制御するステップと、
を更に含む請求項1~8のいずれか一項に記載の方法。
【請求項10】
前記第1適応フィルタタイプが線形適応フィルタタイプであり、前記第2適応フィルタタイプが非線形適応フィルタタイプである、請求項1~9のいずれか一項に記載の方法。
【請求項11】
前記第1適応フィルタタイプと前記第2適応フィルタタイプが異なる適応フィルタリングアルゴリズムによって更新される、請求項1~10のいずれか一項に記載の方法。
【請求項12】
前記第1適応フィルタ管理データが個々のフィルタ係数値を含まない、請求項1~11のいずれか一項に記載の方法。
【請求項13】
前記第1適応フィルタ管理データは、前記第1サブ帯域ドメインAECの出力を含まず、前記第1サブ帯域ドメインAECの出力は、前記複数の第1適応フィルタ管理モジュールによって出力されたサブ帯域ドメインのエコーキャンセルされた信号から生成された全帯域のエコーキャンセルされた信号である、請求項1~12のいずれか一項に記載の方法。
【請求項14】
請求項1~13のいずれか一項に記載の方法を実行するよう構成される機器。
【請求項15】
ソフトウェアを記憶している1つ以上の非一時的媒体であって、前記ソフトウェアは、請求項1~13のいずれか一項に記載の方法を実行するよう1つ以上の装置を制御するための命令を含む、非一時的媒体。
【請求項16】
請求項1に記載の方法を実行するよう構成されるシステム。
【国際調査報告】