(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-25
(45)【発行日】2023-11-02
(54)【発明の名称】ソース分離
(51)【国際特許分類】
G10L 21/0272 20130101AFI20231026BHJP
G10L 21/0308 20130101ALI20231026BHJP
【FI】
G10L21/0272 100A
G10L21/0308 A
(21)【出願番号】P 2022520412
(86)(22)【出願日】2020-10-02
(86)【国際出願番号】 EP2020077716
(87)【国際公開番号】W WO2021064204
(87)【国際公開日】2021-04-08
【審査請求日】2022-05-31
(32)【優先日】2019-10-04
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500341779
【氏名又は名称】フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン
(73)【特許権者】
【識別番号】509347479
【氏名又は名称】テヒニッシェ ウニフェルジテート イルメナウ
(74)【代理人】
【識別番号】100134119
【氏名又は名称】奥町 哲行
(72)【発明者】
【氏名】シュラー・ゲラルト
【審査官】菊地 陽一
(56)【参考文献】
【文献】特表2009-540378(JP,A)
【文献】特開2017-032905(JP,A)
【文献】Ali Khanagha et. al.,Selective tap training of FIR filters for Blind Source Separation of convolutive speech mixtures,2009 IEEE Symposium on Industrial Electronics & Applications,2009年10月04日,pages 248-252
(58)【調査した分野】(Int.Cl.,DB名)
G10L 21/0272
G10L 21/0308
(57)【特許請求の範囲】
【請求項1】
複数の入力信号(502、M
0、M
1)に基づいて、異なる音源(source
0、source
1)に関連付けられた複数の出力信号(504、S’
0、S’
1)を取得するための装置(500)であって、前記音源(source
0、source
1)からの信号(S
0、S
1)が結合され(501)、
前記装置は、第1の入力信号(502、M
0)またはその処理されたバージョンを第2の入力信号(M
1)の遅延およびスケーリングされたバージョン(503
1)と組み合わせて(510)、第1の出力信号(504、S’
0)を取得するように構成され、
前記装置は、第2の入力信号(502、M
1)、またはその処理されたバージョンを前記第1の入力信号(M
0)の遅延およびスケーリングされたバージョン(503
0)と組み合わせて(510)、第2の出力信号(504、S’
1)を取得するように構成され、
前記装置は、ランダム方向最適化(560)を使用して、
前記第1の入力信号(502、M
0)の前記遅延されスケーリングされたバージョン(503
0)を取得するために使用される第1のスケーリング値(564、a
0)と、
前記第1の入力信号(502、M
0)の前記遅延されスケーリングされたバージョン(503
0)を取得するために使用される第1の遅延値(564、d
0)と、
前記第2の入力信号(502、M
1)の前記遅延されスケーリングされたバージョン(503
1)を取得するために使用される第2のスケーリング値(564、a
1)と、
前記第2の入力信号の前記遅延およびスケーリングされたバージョン(503
1)を取得するために使用される第2の遅延値(564、d
1)と、
を決定するように構成され、
前記ランダム方向最適化(560)は、候補パラメータが候補のベクトル(564、a
0、a
1、d
0、d
1)を形成するようなものであり、前記候補のベクトルは、
要素ごとに、前記候補のベクトルに一様分布乱数のベクトルを加算するか、または乗算することにより、前記候補のベクトルを摂動させることによって、前記候補のベクトルをランダムな方向に修正することによって反復的に洗練され、
前記ランダム方向最適化(560)は、前記第1の出力信号と前記第2の出力信号との間の類似性または非類似性を示すメトリック(D
KL、D、532)が測定され、前記第1の出力信号および前記第2の出力信号(S’
0、S’
1)が、最も低い類似性または最も高い非類似性を示すメトリックに関連付けられた前記候補パラメータに関連付けられた測定値であるように選択されるようなものであり、
前記メトリック(532)は、カルバックライブラー発散として処理される、
装置(500)。
【請求項2】
前記第1の入力信号(502、M
0)と結合されるべき前記第2の入力信号(502、M
1)の前記遅延されスケーリングされたバージョン(503
1)は、前記第2の入力信号(502、M
1)に部分遅延を適用することによって得られる、請求項1に記載の装置。
【請求項3】
前記第2の入力信号(502、M
1)と結合されるべき前記第1の入力信号(502、M
0)の前記遅延されスケーリングされたバージョン(503
0)は、前記第1の入力信号(502、M
0)に部分遅延を適用することによって得られる、請求項1または2に記載の装置。
【請求項4】
正規化された大きさの値の第1のセットのそれぞれの要素(P
0)と、
正規化された大きさの値の第1のセット(522)のそれぞれの要素(P
0)および
正規化された大きさの値の第2のセット(522)のそれぞれの要素(P
1)
に基づいて形成された商(702’)の対数(706’)と、
の間の複数の積(712’、710’)を合計する(714、716)ように構成されており、
その結果、前記第1の正規化された大きさの値のセット(P
0)によって記述される信号部分(s’
0)と前記第2の正規化された大きさの値のセット(P
1)によって記述される信号部分(s’
1)との間の類似性または非類似性を記述する値(D
KL、D、532)を取得する(530)、請求項1から3のいずれか一項に記載の装置。
【請求項5】
前記第1および第2の入力信号(M
0、M
1)の少なくとも一方について、前記それぞれの要素(P
0)は、前記候補パラメータから得られる前記候補第1または第2の出力信号(S’
0、S’
1)に基づく、請求項4に記載の装置。
【請求項6】
前記第1および第2の入力信号(M
0、M
1)のうちの少なくとも1つについて、前記それぞれの要素(P
0)は、
候補の第1または第2の出力信号(S’
0、S’
1)に関連付けられた値、および
前記第1の出力信号または前記第2の出力信号の前記以前に取得された値に関連付けられたノルム、との分数として得られる、
請求項5に記載の装置。
【請求項7】
前記第1および第2の入力信号(M
0、M
1)のうちの少なくとも一方について、前記それぞれの要素は、
によって取得される、請求項5に記載の装置。
【請求項8】
前記第1のスケーリング値および前記第2のスケーリング値ならびに前記第1の遅延値および前記第2の遅延値は、目的関数を最小化することによって取得される、請求項1から7のいずれか一項に記載の装置。
【請求項9】
前記第1の入力信号(502、M
0)、またはその処理されたバージョンを、
時間領域および/または
z変換もしくは周波数領域において、前記第2の入力信号(502、M
1)の前記遅延されスケーリングされたバージョン(503
1)と結合するようにさらに構成され、
前記第2の入力信号(502、M
1)、またはその処理されたバージョンを、前記時間領域および/または前記z変換もしくは周波数領域において前記第1の入力信号(502、M
0)の前記遅延およびスケーリングされたバージョン(503
0)と組み合わせるようにさらに構成されている、
請求項1から8のいずれか一項に記載の装置。
【請求項10】
前記
ランダム方向最適化は、
z変換領域で実行される、
請求項1から9のいずれか一項に記載の装置。
【請求項11】
前記
ランダム方向最適化は、
時間領域で実行される、
請求項1から9のいずれか一項に記載の装置。
【請求項12】
前記
ランダム方向最適化は、
周波数領域で実行される、
請求項1から9のいずれか一項に記載の装置。
【請求項13】
前記第2の入力信号(502、M
1)に適用される前記遅延または部分遅延(d
0)は、
前記第1のマイクロフォン(mic
0)によって受信された前記第1の音源(source
0)からの前記信号、および
前記第2のマイクロフォン(mic
1)によって受信された前記第1の音源(source
0)からの前記信号、
の間の関係、および/または差もしくは到着を示す、
請求項1から12のいずれか一項に記載の装置。
【請求項14】
前記第1の入力信号(502、M
0)に適用される前記遅延または部分遅延(d
1)は、
前記第2のマイクロフォン(mic
1)によって受信された前記第2の音源(source
1)からの前記信号、および
前記第1のマイクロフォン(mic
0)によって受信される前記第2の音源(source
1)からの前記信号、
の間の関係、および/または差もしくは到着を示す、
請求項1から13のいずれか一項に記載の装置。
【請求項15】
前記メトリックは、
の形態で取得され、
式中、P(n)は前記第1の入力信号に関連付けられた要素であり、Q(n)は前記第2の入力信号に関連付けられた要素である、
請求項1から14のいずれか一項に記載の装置。
【請求項16】
前記メトリックは、
の形態で取得され、
式中、P
1(n)は、前記第1の入力信号に関連付けられた要素であり、P
2(n)は、前記第2の入力信号に関連付けられた要素である、
請求項1から15のいずれか一項に記載の装置。
【請求項17】
前記取得された第1および第2の出力信号(S’
0、S’
1)に関連する情報を周波数領域に変換するようにさらに構成される、請求項1から16のいずれか一項に記載の装置。
【請求項18】
前記取得された第1および第2の出力信号(S’
0、S’
1)に関連する情報を符号化するようにさらに構成される、請求項1から17のいずれか一項に記載の装置。
【請求項19】
前記取得された第1および第2の出力信号(S’
0、S’
1)に関連する情報を格納するようにさらに構成された、請求項1から18のいずれか一項に記載の装置。
【請求項20】
前記取得された第1および第2の出力信号(S’
0、S’
1)に関連する情報を送信するようにさらに構成される、請求項1から19のいずれか一項に記載の装置。
【請求項21】
前記第1の入力信号(502、M
0)を取得するための第1のマイクロフォン(mic
0)、および前記第2の入力信号(502、M
1)を取得するための第2のマイクロフォン(mic
1)のうちの少なくとも1つと、を含む、請求項1から20のいずれか一項に記載の装置。
【請求項22】
前記取得された第1および第2の出力信号(S’
0、S’
1)に関連する情報を送信するための機器と、請求項1から21のいずれか一項に記載の装置とを含む、テレビ会議のための装置。
【請求項23】
請求項1から22のいずれか一項に記載の装置を含むバイノーラルシステム。
【請求項24】
複数の入力信号(502、M
0、M
1)に基づいて、異なる音源(source
0、source
1)に関連付けられた複数の出力信号(504、S’
0、S’
1)を取得するための方法であって、前記音源(source
0、source
1)からの信号が結合され、
前記方法は、
第1の出力信号(504、S’
0)を得るために、第1の入力信号(502、M
0)またはその処理されたバージョンを第2の入力信号(502、M
1)の遅延されスケーリングされたバージョン(503
1)と結合するステップと、
第2の入力信号(502、M
1)またはその処理されたバージョンを、前記第1の入力信号(502、M
0)の遅延されスケーリングされたバージョン(503
0)と結合して、第2の出力信号(504、S’
1)を取得するステップと、
ランダム方向最適化(560)を使用して、
前記第1の入力信号(502、M
0)の前記遅延されスケーリングされたバージョン(503
0)を取得するために使用される第1のスケーリング値(564、a
0)と、
前記第1の入力信号(502、M
0)の前記遅延されスケーリングされたバージョン(503
0)を取得するために使用される第1の遅延値(564、d
0)と、
前記第2の入力信号(502、M
1)の前記遅延されスケーリングされたバージョン(503
1)を取得するために使用される第2のスケーリング値(564、a
1)と、
前記第2の入力信号の前記遅延およびスケーリングされたバージョン(503
1)を取得するために使用される第2の遅延値(564、d
1)と、
のうちの少なくとも1つを決定するステップと、を含み、
前記ランダム方向最適化(560)は、候補パラメータが候補のベクトル(564、a
0、a
1、d
0、d
1)を形成するようなものであり、前記候補のベクトルは、
要素ごとに、前記候補のベクトルに一様分布乱数のベクトルを加算するか、または乗算することにより、前記候補のベクトルを摂動させることによって、前記候補のベクトルをランダムな方向に修正することによって反復的に洗練され、
前記ランダム方向最適化(560)は、前記第1の出力信号と前記第2の出力信号との間の類似性または非類似性を示すメトリック(D
KL、D、532)が測定され、前記第1の出力信号および前記第2の出力信号(S’
0、S’
1)が、最も低い類似性または最も高い非類似性を示すメトリックに関連付けられた前記候補パラメータに関連付けられた測定値であるように選択されるようなものであり、
前記メトリック(532)は、カルバックライブラー発散として処理される、
方法。
【請求項25】
請求項1から20のいずれか一項に記載の装置を使用するように構成された、請求項24に記載の方法。
【請求項26】
前記部分遅延(d
1)は、前記第2のソース(source
1)から
第1のマイクロフォン(mic
0)に到達する前記信号(M
0)の前記遅延と、前記第2のソース(source
1)から
第2のマイクロフォン(mic
1)に到達する前記信号(M
1)の前記遅延(H
1、1)との間の関係および/または差を示す、請求項24に記載の方法。
【請求項27】
プロセッサによって実行されると、前記プロセッサに請求項24から26のいずれか一項に記載の方法を実行させる命令を格納する非一時的記憶ユニット。
【発明の詳細な説明】
【技術分野】
【0001】
本実施例は、異なるソース(例えば、オーディオソース)に関連する複数の出力信号を取得するための方法および装置に関する。本実施例はまた、信号分離のための方法および装置に関する。本実施例は、テレビ会議のための方法および装置にも言及する。分離のための技術(例えば、音源分離)も開示される。高速時間領域ステレオ音源分離(例えば、部分遅延フィルタを使用する)のための技法も論じる。
【背景技術】
【0002】
図1は、50aで示されるマイクロフォンの設定を示す。マイクロフォン50aは、ここでは互いに5cm(50mm)の距離で示されている第1のマイクロフォンmic
0および第2のマイクロフォンmic
1を含むことができる。他の距離も可能である。2つの異なるソース(source
0およびsource
1)がここに示されている。角度β
0およびβ
1によって識別されるように、それらは異なる位置に(ここでは互いに対して異なる向きにも)配置される。
【0003】
source0およびsource1から複数の入力信号M0およびM1(マルチチャネルまたはステレオとしてまとめて示されるマイクロフォンからの入力信号502)が得られる。source0はS0としてインデックス付けされたオーディオ音を生成するが、source1はS1としてインデックス付けされたオーディオ音を生成する。
【0004】
マイクロフォン信号M0、M1は、例えば入力信号と考えてもよい。ステレオ信号502の代わりに、3つ以上のチャネルを有するマルチチャネルを考えることができる。
【0005】
いくつかの例(例えば、M0およびM1以外の他の追加の入力チャネル)では、2つのチャネルのみが主に説明されているが、入力信号は3つ以上であってもよい。それにもかかわらず、本例は、任意のマルチチャネル入力信号に対して有効である。例では、信号M0およびM1は、例えば格納されたオーディオファイルから取得され得るので、マイクロフォンによって直接取得される必要もない。
【0006】
図2aおよび
図4は、音源source
0およびsource
1とマイクロフォンmic
0およびmic
1との間の相互作用を示す。例えば、source
0は、主にマイクロフォンmic
0に到達し、かつマイクロフォンmic
1にも到達するオーディオ音S
0を生成する。生成された音源S
1が主にマイクロフォンmic
1に到達し、マイクロフォンmic
0にも到達するsource
1についても同様である。音S
0がマイクロフォンmic
0に到達するのに必要な時間は、マイクロフォンmic
1に到達するのに必要な時間よりも短いことが、
図2aおよび
図4から分かる。同様に、音S
1は、mic
0に到達するのに要する時間よりも、mic
1に到達するのに要する時間が短い。マイクロフォンmic
1に到達するときの信号S
0の強度は、一般に、mic
0に到達するときに対して減衰され、逆もまた同様である。
【0007】
したがって、マルチチャネル入力信号502において、チャネル信号M0、M1は、source0、source1からの信号S0、S1が互いに組み合わせられたものとなる。したがって、分離技術が追求される。
【発明の概要】
【0008】
以下、角括弧および丸括弧内のテキストは非限定的な例を示す。
一態様によれば、複数の入力信号[例えば、マイクロフォン信号]に基づいて異なる音源[source0、source1]に関連する複数の出力信号[S’0、S’1]を取得するための装置[例えば、マルチチャネルまたはステレオオーディオソース分離装置]であって、音源[source0、source1]からの信号が結合され、
装置は、第1の入力信号[M0]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第2の入力信号[例えば、M1]の遅延およびスケーリングされたバージョン[a1・z-d1・M1][例えば、第1の入力信号から第2の入力信号の遅延されスケーリングされたバージョンを減算することによって、例えば、S’0=M0(z)-a1・z-d1・M1(z)]と組み合わせて、第1の出力信号[S’0]を取得するように構成され、
装置は、第2の入力信号[M1]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第1の入力信号[M0][例えば、第2の入力信号から第1の入力信号の遅延されスケーリングされたバージョンを減算することによって、例えば、S’1=M1(z)-a0・z-d0・M0(z)]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]と組み合わせて、第2の出力信号[S’1]を取得するように構成され、
装置は、ランダム方向最適化[例えば、他の請求項で定義されている動作のうちの1つを実行することによって、例えば、および/または、例えば式(6)および/または(8)のものであり得る目的関数を最小化する遅延値および減衰値を見つけることによって]を使用して、
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]を取得するために使用される第1のスケーリング値[a0]、
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]を取得するために使用される第1の遅延値[d0]、
第2の入力信号[M1]の遅延されスケーリングされたバージョン[a1・z-d1・M1]を取得するために使用される第2のスケーリング値[a1]と、
第2の入力信号[a1・z-d1・M1]の遅延されスケーリングされたバージョンを取得するために使用される第2の遅延値[d1]と、を決定するように構成される、装置を提供する。
【0009】
第2の入力信号[M1]の遅延およびスケーリングされたバージョン[a1・z-d1・M1]は、第1の入力信号[M0]と組み合わせることができ、第2の入力信号[M1]に部分遅延を適用することによって得られる。
【0010】
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]は、第2の入力信号[M1]と組み合わせることができ、第1の入力信号[M0]に部分遅延を適用することによって得られる。
【0011】
装置は、
正規化された大きさの値の第1のセット[例えば、式(7)のように]のそれぞれの要素[Pi(n)、ここで、iは0または1である]と、
正規化された大きさの値の第1のセットのそれぞれの要素[P(n)またはP1(n)]および正規化された大きさの値の第2のセットのそれぞれの要素[Q(n)またはQ1(n)]に基づいて形成された商の対数と、
の間の複数の積[例えば、式(6)または(8)のように]を合計することができ、
その結果、第1の正規化された大きさの値のセット[P0(n)、n=1~...の場合]によって記述される信号部分[s0’(n)]と第2の正規化された大きさの値のセット[P1(n)、n=1~...の場合]によって記述される信号部分[s1’(n)]との間の類似性[または非類似性]を記述する値[式(6)または式(8)中のDKL(P||Q)またはD(P0、P1)]を取得する。
【0012】
ランダム方向最適化は、候補パラメータが候補のベクトル[例えば、4つのエントリを有し、例えば、a0、a1、d0、d1に対応する]を形成するようなものであってもよく、ベクトルは、ランダム方向にベクトルを修正することによって反復的に洗練される[例えば、異なる反復において、請求項507ffも参照されたい]。
【0013】
ランダム方向最適化は、候補パラメータが候補のベクトル[例えば、4つのエントリを有し、例えば、a0、a1、d0、d1に対応する]を形成するようなものであってもよく、ベクトルは、ランダム方向にベクトルを修正することによって反復的に洗練される[例えば、異なる反復では、以下も参照されたい]。
【0014】
ランダム方向最適化は、第1および第2の出力信号間の類似性(または非類似性)を示すメトリックおよび/または値が測定され、第1および第2の出力測定値が、値に関連する候補パラメータに関連する測定値、または最も低い類似性(または最も高い非類似性)を示すメトリックであるように選択されるようなものであってもよい。
【0015】
第1のスケーリング値および第2のスケーリング値ならびに第1の遅延値および第2の遅延値の少なくとも一方は、出力信号の相互情報または関連する尺度を最小化することによって得ることができる。
【0016】
一態様によれば、複数の入力信号[例えば、マイクロフォン信号][M0、M1]に基づいて、異なる音源[source1、source2]に関連する複数の出力信号[S’0、S’1]を取得するための装置が提供され、音源[source1、source2]からの信号は結合され、
装置が、第1の入力信号[M0]またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第2の入力信号[M1]の遅延およびスケーリングされたバージョン[a1・z-d1・M1]と組み合わせて第1の出力信号[S’0]を得るように構成され、装置が、部分遅延[d1]を第2の入力信号[M1]に適用するように構成され[部分遅延(d1)は、第2のソース(source1)から第1のマイクロフォン(mic0)に到達する信号(H1、0・S1)の遅延(例えば、H1、0で表される遅延)と、第2のソース(source1)から第2のマイクロフォン(mic1)に到達する信号(H1、1・S1)の遅延(例えば、H1、1で表される遅延)との間の関係および/または差を示すことができる][例では、部分遅延d1は、分数H1、0(z)/H1、1(z)の結果のz項の指数を近似するものとして理解することができる]、
装置は、第2の入力信号[M1]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]と組み合わせて第2の出力信号[S’1]を取得するように構成され、装置は、第1の入力信号[M0]に部分遅延[d0]を適用するように構成され[部分遅延(d0)は、第1の音源(source0)から第1のマイクロフォン(mic0)に到達する信号(H0、0・S0)の遅延(例えば、H0、0で表される遅延)と、第1の音源(source0)から第2のマイクロフォン(mic1)に到達する信号(H0、1・S0)の遅延(例えば、H0、1で表される遅延)との間の関係および/または差を示すことができる][例では、部分遅延d0は、分数H0、1(z)/H0、0(z)の結果のz項の指数を近似するものとして理解することができる]、
装置は、最適化を使用して、
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]を取得するために使用される第1のスケーリング値[a0]、
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]を取得するために使用される第1の部分遅延値[d0]、
第2の入力信号[M1]の遅延されスケーリングされたバージョン[a1・z-d1・M1]を取得するために使用される第2のスケーリング値[a1]と、
第2の入力信号[M1]の遅延およびスケーリングされたバージョン[a1・z-d1・M1]を取得するために使用される第2の部分遅延値[d1]と、を決定するように構成される。
【0017】
最適化はランダム方向最適化であってもよい。
装置は、
正規化された大きさの値の第1のセット[例えば、式(7)のように]のそれぞれの要素[Pi(n)、ここで、iは0または1である]と、
正規化された大きさの値の第1のセットのそれぞれの要素[P(n)またはP1(n)]および正規化された大きさの値の第2のセットのそれぞれの要素[Q(n)またはQ1(n)]に基づいて形成された商の対数と、
の間の複数の積[例えば、式(6)または(8)のように]を合計することができ、
その結果、第1の正規化された大きさの値のセット[P0(n)、n=1~...の場合]によって記述される信号部分[s0’(n)]と第2の正規化された大きさの値のセット[P1(n)、n=1~...の場合]によって記述される信号部分[s1’(n)]との間の類似性[または非類似性]を記述する値[式(6)または式(8)中のDKL(P||Q)またはD(P0、P1)]を取得する。
【0018】
一態様によれば、複数の入力信号[例えば、マイクロフォン信号][M0、M1]に基づいて、異なる音源[source0、source1]に関連する複数の出力信号[S’0、S’1]を取得するための装置[例えば、マルチチャネルまたはステレオオーディオソース分離装置]が提供され、音源からの信号が結合され[例えば、第1の入力信号から第2の入力信号の遅延およびスケーリングされたバージョンを減算することによって、および/または第2の入力信号から第1の入力信号の遅延およびスケーリングされたバージョンを減算することによって]、
装置は、第1の入力信号[M0]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第2の入力信号[M1][例えば、第1の入力信号から第2の入力信号の遅延されスケーリングされたバージョンを減算することによって]の遅延およびスケーリングされたバージョン[a1・z-d1・M1]と組み合わせて、第1の出力信号[S’0]を取得するように構成され、
装置は、第2の入力信号[M1]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第1の入力信号[M0][例えば、第2の入力信号から第1の入力信号の遅延されスケーリングされたバージョンを減算することによって]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]と組み合わせて、第2の出力信号[S’1]を取得するように構成され、
装置は、
正規化された大きさの値の第1のセット[例えば、式(7)のように]のそれぞれの要素[Pi(n)、ここで、iは0または1である]と、
正規化された大きさの値の第1のセットのそれぞれの要素[P(n)またはP1(n)]および正規化された大きさの値の第2のセットのそれぞれの要素[Q(n)またはQ1(n)]基づいて形成される商の対数と、
の間の複数の積[例えば、式(6)または(8)のように]を合計するように構成され、
その結果、第1の正規化された大きさの値のセット[P0(n)、n=1~...の場合]によって記述される信号部分[s0’(n)]と第2の正規化された大きさの値のセット[P1(n)、n=1~...の場合]によって記述される信号部分[s1’(n)]との間の類似性[または非類似性]を記述する値[式(6)または式(8)中のDKL(P||Q)またはD(P0、P1)]を取得する。
【0019】
本装置は、
第1の入力信号[M0]の遅延されスケーリングされたバージョンを取得するために使用される第1のスケーリング値[a1]と、
第1の入力信号の遅延およびスケーリングされたバージョンを取得するために使用される第1の遅延値[d0]と、
第2の入力信号の遅延されスケーリングされたバージョンを取得するために使用される第2のスケーリング値[a1]と、
最適化[例えば、「修正されたKLD計算」に基づいて、]を使用して、第2の入力信号の遅延およびスケーリングされたバージョンを取得するために使用される第2の遅延値[d1]と、を決定し得る。
【0020】
第1の遅延値[d0]は、部分遅延であってもよい。第2の遅延値[d1]は、部分遅延である。
最適化はランダム方向最適化であってもよい。
【0021】
装置は、時間領域におけるプロセスの少なくともいくつかを実行することができる。装置は、z変換または周波数領域における処理のうちの少なくともいくつかを実行し得る。
【0022】
本装置は、
時間領域および/またはz変換もしくは周波数領域において、第1の入力信号[M0]またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第2の入力信号[M1]の遅延およびスケーリングされたバージョン[a1・z-d1・M1]と結合し、
第2の入力信号[M1]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、時間領域および/またはz変換もしくは周波数領域において第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]と結合するように、構成され得る。
【0023】
最適化は、時間領域および/またはz変換もしくは周波数領域で実行することができる。
第2の入力信号[M1]に印加される部分遅延(d0)は、
第1のマイクロフォン[mic0]によって受信された第1のソース[source0]からの信号[S0・H0、0(z)]、および
第2のマイクロフォン[mic1]によって受信された第1のソース[source0]からの信号[S0・H0、1(z)]の間の関係、および/または差もしくは到着を示し得る。
【0024】
第1の入力信号[M0]に適用される部分遅延(d1)は、
第2のマイクロフォン[mic1]によって受信された第2のソース[source1]からの信号[S1・H1、1(z)]、および
第1のマイクロフォン[mic0]によって受信された第2のソース[source1]からの信号[S1・H1、0(z)]の間の関係、および/または差もしくは到着を示し得る。
【0025】
装置は、最適化[例えば、異なる候補パラメータ[a0、a1、d0、d1]が反復的に選択されて処理されるような最適化]を実行することができ、候補パラメータの各々についてメトリック[例えば、式(6)または(8)のように][例えば、「修正されたKLD計算」に基づいて][例えば、目的関数]が測定され、メトリックは類似度メトリック(または非類似度メトリック)であり、最も低い類似度(または最大の非類似度)を示すメトリックに関連付けられた候補パラメータ[a0、a1、d0、d1]を使用して取得された第1の入力信号[M0]および第2の入力信号[M0]を選択する。[類似性は、第1の入力信号と第2の入力信号との間の統計的依存性(またはそれに関連する値、例えば式(7)の値)として推測することができ、および/または非類似性は、第1の入力信号と第2の入力信号との間の統計的独立性(または、式(7)の値などの、それらに関連付けられた値)として推測することができる]
【0026】
反復ごとに、候補パラメータは、第2の入力信号[M1]に適用される候補遅延(d0)[例えば、候補部分遅延]を含むことができ、候補遅延(d0)は、以下の間の候補関係および/または候補差もしくは到着に関連付けることができる:
第1のマイクロフォン[mic0]によって受信された第1のソース[source0]からの信号[S0・H0、0(z)]、および
第2のマイクロフォン[mic1]によって受信された第1のソース[source0]からの信号[S0・H0、1(z)]。
【0027】
反復ごとに、候補パラメータは、第1の入力信号[M0]に適用される候補遅延(d1)[例えば、候補部分遅延]を含み、候補遅延(d1)は、以下の間の候補関係および/または候補差もしくは到着に関連付けることができる:
第2のマイクロフォン[mic1]によって受信された第2のソース[source1]からの信号[S1・H1、1(z)]、および
第1のマイクロフォン[mic0]によって受信された第2のソース[source1]からの信号[S1・H1、0(z)]。
【0028】
反復ごとに、候補パラメータは、第2の入力信号[M1]に適用される候補相対減衰値[a0]を含むことができ、候補相対減衰値[a0]は、以下の間の候補関係および/または候補差を示す:
第1のマイクロフォン[mic0]によって第1のソース[source0]から受信された信号[S0・H0、0(z)]の振幅、および
第1の音源[source0]から第2のマイクロフォン[mic1]によって受信された信号[S0・H0、1(z)]の振幅。
【0029】
反復ごとに、候補パラメータは、第1の入力信号[M0]に適用される候補相対減衰値[a1]を含むことができ、候補相対減衰値[a1]は、以下の間の候補関係および/または候補差を示す:
第2のマイクロフォン[mic1]によって第2のソース[source1]から受信された信号[S1・H1、1(z)]の振幅、および
第2の音源[source1]から第1のマイクロフォン[mic0]によって受信された信号[S1・H1、0(z)]の振幅。
【0030】
装置は、先行する反復の少なくとも1つの候補パラメータから後続の反復の少なくとも1つの候補パラメータまでの少なくとも1つのステップをランダムに選択することによって、異なる反復の少なくとも1つの候補パラメータを変更することができる[例えば、ランダム方向最適化]。
【0031】
装置は、少なくとも1つのステップ[例えば、アルゴリズム1の線10におけるcoeffvariation]をランダムに選択することができる[例えば、ランダム方向最適化]。
少なくとも1つのステップは、予め選択された重み[例えば、アルゴリズム1のライン5におけるcoeffweight]によって重み付けされてもよい。
少なくとも1つのステップは、予め選択された重み[例えば、アルゴリズム1のライン5におけるcoeffweight]によって制限される。
【0032】
装置は、候補パラメータ[a0、a1、d0、d1]が候補のベクトルを形成するようになっていてもよく、反復ごとに、候補のベクトルは、候補のベクトルの要素によって要素ごとに乗算される(または加算される)一様分布乱数[例えば、それぞれ-0.5から+0.5の間]のベクトルを適用することによって摂動される[例えば、ランダムに]。[勾配処理を回避することができる][例えば、ランダム方向最適化]。
反復ごとに、候補のベクトルは、ステップ[例えば、それぞれ-0.5から+0.5の間である]に対して修正される(例えば、摂動される)。
【0033】
装置は、反復の数値が所定の最大数に制限されるようになっていてもよく、所定の最大数は10から30の間である(例えば、20、サブセクション2.3のように、最後の3行)。
メトリックは、カルバックライブラー発散として処理され得る。
メトリックは、以下に基づいてもよい:
【0034】
第1の信号および第2の信号[M0、M1]の各々に対して、正規化された大きさの値の第1のセット[例えば、式(7)のように]のそれぞれの要素[Pi(n)、ここで、iは0または1である]。[錯覚は、時間領域サンプルの正規化された大きさの値を確率分布として考慮し、その後、メトリックを測定すること(例えば、カルバックライブラー発散として、例えば、式(6)または(8))であってもよい]
【0035】
第1および第2の入力信号[M0、M1]の少なくとも一方について、それぞれの要素[Pi(n)]は、候補パラメータ[例えば、式(7)のように]から得られる候補の第1または第2の出力信号[S’0、S’1]に基づくことができる。
【0036】
第1および第2の入力信号[M0、M1]の少なくとも一方について、それぞれの要素[Pi(n)]は、候補パラメータ[例えば、式(7)のように]から得られる候補の第1または第2の出力信号[S’0、S’1]に基づくことができる。
【0037】
第1および第2の入力信号[M0、M1]の少なくとも一方について、それぞれの要素[Pi(n)]は、
候補の第1または第2の出力信号[S’0(n)、S’1(n)][例えば、絶対値で]に関連付けられた値[例えば、絶対値]、および
第1または第2の出力信号[S’0(...n-1)、S’1(...n-1)]の以前に取得された値に関連付けられたノルム[例えば、1-ノルム]の間の分数として取得され得る。
【0038】
第1および第2の入力信号[M
0、M
1]の少なくとも一方について、それぞれの要素[P
i(n)]は、
によって取得され得る。
(ここで、「s’
i(n)」および「s’
i」は、z変換されないため、大文字なしで記述される)。
【0039】
メトリックは、
正規化された大きさの値の第1のセットのそれぞれの要素[P(n)またはP1(n)]、および
正規化された大きさの値の第2のセットのそれぞれの要素[Q(n)またはQ1(n)]に基づいて形成される商の対数を含むことができ、
その結果、
第1の正規化された大きさの値のセット[P0(n)、n=1~...の場合]によって記述される信号部分[s0’(n)]と第2の正規化された大きさの値のセット[P1(n)、n=1~...の場合]によって記述される信号部分[s1’(n)]との間の類似性[または非類似性]を記述する値[式(6)または式(8)中のDKL(P||Q)またはD(P0、P1)]を取得する。
【0040】
メトリックは、以下の形式で取得することができ、
P(n)は、第1の入力信号に関連付けられた要素であり[例えば、正規化された大きさの値の第1のセットのP
1(n)または要素]、Q(n)は、第2の入力信号に関連付けられた要素である[例えば、正規化された大きさの値の第2のセットのP
2(n)または要素]。
【0041】
【0042】
P1(n)は、第1の入力信号に関連付けられた要素であり[例えば、正規化された大きさの値の第1のセットのP1(n)または要素]、P2(n)は、第2の入力信号に関連付けられた要素である[例えば、正規化された大きさの値の第2のセットの要素]。
【0043】
装置は、スライディングウィンドウを使用して最適化を実行することができる[例えば、最適化は、最後の0.1s...1.0sのTDサンプルを考慮に入れることができる]。
装置は、取得された第1および第2の出力信号(S’0、S’1)に関連する情報を周波数領域に変換することができる。
【0044】
装置は、取得された第1および第2の出力信号に関連する情報を符号化することができる(S’0、S’1)。
装置は、取得された第1および第2の出力信号(S’0、S’1)に関連する情報を格納することができる。
装置は、取得された第1および第2の出力信号(S’0、S’1)に関連する情報を送信することができる。
【0045】
前述の請求項のいずれか一項に記載の装置は、第1の入力信号[M0]を取得するための第1のマイクロフォン(mic0)、および第2の入力信号[M1]を取得するための第2のマイクロフォン(mic1)のうちの少なくとも1つを含むことができる[例えば、一定の距離で]。
【0046】
上記のような装置と、取得された第1および第2の出力信号(S’0、S’1)に関連する情報を送信するための機器とを含む、テレビ会議のための装置を提供することができる。
上記のような装置を含むバイノーラルシステムが開示される。
【0047】
物理信号に関連する物理パラメータを反復的に最適化するためのオプティマイザが開示され、オプティマイザは、各反復において、現在の候補ベクトルが現在の最良の候補ベクトルよりも良好に機能するかどうかを評価するための現在の候補ベクトルをランダムに生成するように構成され、
オプティマイザは、現在の候補ベクトルに関連して、物理信号間の類似度または非類似度に関連する目的関数を評価するように構成され、
オプティマイザは、現在の候補ベクトルが目的関数を現在の最良の候補ベクトルに対して減少させる場合に、現在の候補ベクトルを新しい現在の最良の候補ベクトルとしてレンダリングするように構成される。
【0048】
物理信号は、異なるマイクロフォンによって取得されたオーディオ信号を含むことができる。
パラメータは、特定のマイクロフォンで取得されたオーディオ信号の遅延および/またはスケーリング係数を含むことができる。
【0049】
目的関数は、カルバックライブラー発散である。カルバックライブラー発散は、正規化された大きさの値の第1および第2のセットに適用されてもよい。
【0050】
目的関数は、
正規化された大きさの値の第1のセット[例えば、式(7)のように]のそれぞれの要素[Pi(n)、ここで、iは0または1である]と、
正規化された大きさの値の第1のセットのそれぞれの要素[P(n)またはP1(n)]および正規化された大きさの値の第2のセットのそれぞれの要素[Q(n)またはQ1(n)]に基づいて形成される商の対数と、
の間の複数の積[例えば、式(6)または(8)のように]を合計することによって得ることができ、
その結果、第1の正規化された大きさの値のセット[P0(n)、n=1~...の場合]によって記述される信号部分[s0’(n)]と第2の正規化された大きさの値のセット[P1(n)、n=1~...の場合]によって記述される信号部分[s1’(n)]との間の類似性[または非類似性]を記述する値[式(6)または式(8)中のDKL(P||Q)またはD(P0、P1)]を取得する。
【0051】
目的関数は、以下のように取得することができ、
または
P
1(n)またはP(n)は、第1の入力信号に関連付けられた要素であり[例えば、正規化された大きさの値の第1のセットのP
1(n)または要素]、P
2(n)またはQ(n)は、第2の入力信号に関連付けられた要素である。
【0052】
一例によれば、複数の入力信号[例えば、マイクロフォン信号][M0、M1]に基づいて異なる音源[source0、source1]に関連する複数の出力信号[S’0、S’1]を取得するための方法が提供され、音源[source0、source1]からの信号は結合され、
方法は、
第1の出力信号[S’0]を得るために、第1の入力信号[M0]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第2の入力信号[M1][例えば、第1の入力信号から第2の入力信号の遅延されスケーリングされたバージョンを減算することによって、例えば、S’0=M0(z)-a1・z-d1・M1(z)]の遅延およびスケーリングされたバージョン[a1・z-d1・M1]と結合するステップと、
第2の出力信号[S’1]を得るために、第2の入力信号[M1]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第1の入力信号[M0][例えば、第2の入力信号から第1の入力信号の遅延されスケーリングされたバージョンを減算することによって、例えば、S’1=M1(z)-a0・z-d0・M0(z)]の遅延およびスケーリングされたバージョン[a0・z-d0・M0]と結合するステップと、
ランダム方向最適化[例えば、他の請求項で定義されている動作のうちの1つを実行することによって、例えば、および/または、例えば式(6)および/または(8)のものであり得る目的関数を最小化する遅延値および減衰値を見つけることによって]を使用して、
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0*z-d0*M0]を取得するために使用される第1のスケーリング値[a0]、
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0*z-d0*M0]を取得するために使用される第1の遅延値[d0]、
第2の入力信号[M1]の遅延およびスケーリングされたバージョン[a1*z-d1*M1]を取得するために使用される第2のスケーリング値[a1]、および
第2の入力信号[a1*z-d1*M1]の遅延およびスケーリングされたバージョンを取得するために使用される第2の遅延値[d1]を決定するステップと、を含む。
【0053】
一例によれば、複数の入力信号[例えば、マイクロフォン信号][M0、M1]に基づいて異なる音源[source1、source2]に関連する複数の出力信号[S’0、S’1]を取得するための方法が提供され、音源[source1、source2]からの信号は結合され、
方法は、
第1の出力信号[S’0]を得るために、第1の入力信号[M0]、またはその処理された[例えば、遅延および/またはスケーリングされる]バージョンを、第2の入力信号[M1]の遅延およびスケーリングされたバージョン[a1*z-d1*M1]と結合するステップであって、方法は、部分遅延[d1]を第2の入力信号[M1]に適用するように構成される、ステップ[部分遅延(d1)は、第2のソース(source1)から第1のマイクロフォン(mic0)に到達する信号(H1、0*S1)の遅延(例えば、H1、0で表される遅延)と、第2のソース(source1)から第2のマイクロフォン(mic1)に到達する信号(H1、1*S1)の遅延(例えば、H1、1で表される遅延)との間の関係および/または差を示すことができる][例では、部分遅延d1は、分数H1、0(z)/H1、1(z)の結果のz項の指数を近似するものとして理解することができる]、
【0054】
第2の入力信号[M1]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0*z-d0*M0]と結合して、第2の出力信号[S’1]を取得するステップであって、方法は、部分遅延[d0]を第1の入力信号[M0]に適用するように構成される、ステップ[部分遅延(d0)は、第1の音源(source0)から第1のマイクロフォン(mic0)に到達する信号(H0、0*S0)の遅延(例えば、H0、0で表される遅延)と、第1の音源(source0)から第2のマイクロフォン(mic1)に到達する信号(H0、1*S0)の遅延(例えば、H0、1で表される遅延)との間の関係および/または差を示すことができる][例では、部分遅延d0は、分数H0、1(z)/H0、0(z)の結果のz項の指数を近似するものとして理解することができる]、
【0055】
最適化を使用して、
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0*z-d0*M0]を取得するために使用される第1のスケーリング値[a0]、
第1の入力信号[M0]の遅延およびスケーリングされたバージョン[a0*z-d0*M0]を取得するために使用される第1の部分遅延値[d0]、
第2の入力信号[M1]の遅延およびスケーリングされたバージョン[a1*z-d1*M1]を取得するために使用される第2のスケーリング値[a1]、および
第2の入力信号[M1]の遅延およびスケーリングされたバージョン[a1*z-d1*M1]を取得するために使用される第2の部分遅延値[d1]を決定するステップ、を含む。
【0056】
一例によれば、方法が提供され、方法は、複数の入力信号[例えば、マイクロフォン信号][M0、M1]に基づいて異なる音源[source0、source1]に関連付けられた複数の出力信号[S’0、S’1]を取得するためのものであり、ここでは音源からの信号が結合され[例えば、第1の入力信号から第2の入力信号の遅延およびスケーリングされたバージョンを減算することによって、および/または第2の入力信号から第1の入力信号の遅延およびスケーリングされたバージョンを減算することによって]、方法は、
第1の出力信号[S’0]を得るために、第1の入力信号[M0]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第2の入力信号[M1][例えば、第1の入力信号から第2の入力信号の遅延されスケーリングされたバージョンを減算することによって、]の遅延およびスケーリングされたバージョン[a1*z-d1*M1]と結合するためのものであり、
第2の入力信号[M1]、またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第1の入力信号[M0][例えば、第2の入力信号から第1の入力信号の遅延されスケーリングされたバージョンを減算することによって]の遅延およびスケーリングされたバージョン[a0*z-d0*M0]と組み合わせて、第2の出力信号[S’1]を取得するためのものであり、
正規化された大きさの値の第1のセット[例えば、式(7)のように]のそれぞれの要素[Pi(n)、ここで、iは0または1である]と、
正規化された大きさの値の第1のセットのそれぞれの要素[P(n)またはP1(n)]および正規化された大きさの値の第2のセットのそれぞれの要素[Q(n)またはQ1(n)]に基づいて形成される商の対数と、
の間の複数の積[例えば、式(6)または(8)のように]を合計するためのものであり、
その結果、第1の正規化された大きさの値のセット[P0(n)、n=1~...の場合]によって記述される信号部分[s0’(n)]と第2の正規化された大きさの値のセット[P1(n)、n=1~...の場合]によって記述される信号部分[s1’(n)]との間の類似性[または非類似性]を記述する値[式(6)または式(8)中のDKL(P||Q)またはD(P0、P1)]を取得する。
【0057】
一例によれば、上記または下記のような機器を使用するように構成された、前述の方法請求項のいずれか一項に記載の方法が提供される。
プロセッサによって実行されると、プロセッサに、前述の方法請求項のいずれか一項に記載の方法を実行させる命令を格納する非一時的記憶ユニット。
【図面の簡単な説明】
【0058】
【
図1】本発明を理解するのに有用なマイクロフォンおよび音源のレイアウトを示す図である。
【
図2b】痙攣混合および混合プロセスの信号ブロック図を示す図である。
【
図3】模擬データに適用したBSSアルゴリズムの性能評価を示す図である。
【
図4】本発明を理解するのに有用なマイクロフォンおよび音源のレイアウトを示す図である。
【
図6a】本発明を用いて得られる結果を示す図である。
【
図6b】本発明を用いて得られる結果を示す図である。
【
図6c】本発明を用いて得られる結果を示す図である。
【発明を実施するための形態】
【0059】
上述および後述するような技術を適用することによって、信号は、互いに分離された複数の信号
および
に到達するように処理され得ることが理解されている。したがって、出力信号
は、音S
0から影響を受けない(または無視できるほどもしくは無視できるほど影響を受けない)が、出力信号
は、マイクロフォンmic
0への音S
1の影響による影響を受けない(または無視できるほどもしくは無視できるほど影響を受けない)という結果になる。
【0060】
一例が
図2bによって提供され、マイクロフォンM
0およびM
1から集合的に得られた生成音S
0およびS
1と信号502との間の物理的関係のモデルを示す。結果は、ここではz変換で表される(場合によっては簡潔にするために示されていない)。ブロック501から分かるように、音響信号S
0は、音響信号S
1に加算される伝達関数H
0、0(z)を受ける(伝達関数H
1、0(z)によって修正される)。したがって、信号M
0(z)はマイクロフォンmic
0で得られ、望ましくないことに、音響信号S
1(z)を考慮に入れる。同様に、マイクロフォンmic
1で得られる信号M
1(z)は、音響信号S
1(z)に関連する成分(伝達関数H
1、1(z)によって得られる)と、音響信号S
0(z)に起因する第2の不要成分(伝達関数H
0、1(z)を受けた後で)との両方を含む。この現象をクロストークと呼ぶ。
【0061】
クロストークを補償するために、ブロック510に示された解決策が利用され得る。ここで、マルチチャネル出力信号504は、
・入力信号M
0、および減算成分503
1(信号M
1の遅延および/またはスケーリングされたバージョンであり、信号M
1を伝達関数
にかけることによって取得され得る)の少なくとも2つの成分を含む、第1の出力信号
(マイクロフォンmic
0で収集されるがクロストークから研磨された音S
0を表す)と、
・入力信号M
1、および減算成分503
0(マイクロフォンmic
0で得られた第1の入力信号M
0の遅延および/またはスケーリングされたバージョンであり、信号M
0を伝達関数にかけることによって得られ得る)
を含む、出力信号
(マイクロフォンmic
1で集音されたがクロストークから研磨された音S
1を表す)と、を含む。
【0062】
数学的説明は以下に提供されるが、ブロック510における減算成分5031および5030は、ブロック501において生じる望ましくない成分を補償することが理解され得る。したがって、ブロック510が、複数(502)の入力信号[例えば、マイクロフォン信号](M0、M1)に基づいて、異なる音源(source0、source1)に関連する複数(504)の出力信号(S’0、S’1)を取得することを可能にし、音源(source0、source1)からの信号(S0、S1)が(望ましくなく)結合される(501)ことは明らかである。ブロック510は、第1の入力信号(M0)またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、第2の入力信号(M1)[例えば、第1の入力信号から第2の入力信号の遅延されスケーリングされたバージョンを減算することによって、例えば、S’0(z)=M0(z)-a1・z-d1・M1(z)]の遅延およびスケーリングされたバージョン(5031)[a1・z-d1・M1]と組み合わせて(510)、第1の出力信号(S’0)を取得するように構成することができ、ブロックが、第2の入力信号(M1)またはその処理[例えば、遅延および/またはスケーリングされる]バージョンを、前記第1の入力信号[M0][例えば、第2の入力信号から第1の入力信号の遅延されスケーリングされたバージョンを減算することによって、例えば、S’1(z)=M1(z)-a0・z-d0・M0(z)]の遅延およびスケーリングされたバージョン(5030)[a0・z-d0・M0]と組み合わせて(510)、第2の出力信号[S’1]を取得するように構成される。
z変換はこの場合に特に有用であるが、他の種類の変換を利用することも、時間領域で直接動作することも可能である。
【0063】
基本的に、一対のスケーリング値a0およびa1は、入力信号のスケーリングされたバージョンを取得するために減算成分5031および5030の振幅を修正することが理解され得、遅延d0およびd1は部分遅延として理解され得る。例では、部分遅延d0は、分数H0、1(z)/H0、0(z)]の結果のz項の指数を近似するものとして理解することができる。部分遅延d1は、第2のソース(source1)から第1のマイクロフォン(mic0)に到達する信号(H1、0・S1)の遅延(例えば、H1、0で表される遅延)と、第2のソース(source1)から第2のマイクロフォン(mic1)に到達する信号(H1、1・S1)の遅延(例えば、H1、1で表される遅延)との間の関係および/または差を示すことができる。例では、部分遅延d1は、分数H1、0(z)/H1、1(z)]の結果のz項の指数を近似するものとして理解することができる。部分遅延d0は、第1のソース(source0)から第1のマイクロフォン(mic0)に到達する信号(H0、0・S0)の遅延(例えば、H0、0で表される遅延)と、第1のソース(source0)][例では、部分遅延d0は、分数H0、1(z)/H0、0(z)の結果のz項の指数を近似するものとして理解することができる]から第2のマイクロフォン(mic1)に到達する信号(H0、1・S0)の遅延(例えば、H0、1で表される遅延)との間の関係および/または差を示すことができる。
【0064】
後に説明するように、特に、(参照符号564でまとめて示される)最も好ましい値、
・例えば、第1の入力信号[502、M0]の遅延されスケーリングされたバージョン5030[a0・z-d0・M0]を取得するために使用される第1のスケーリング値[a0]、
・例えば、第1の入力信号[502、M0]の遅延されスケーリングされたバージョン5030[a0・z-d0・M0]を取得するために使用される第1の部分遅延値[d0]、
・例えば、第2の入力信号[502、M1]の遅延されスケーリングされたバージョン5031[a1・z-d1・M1]を取得するために使用される第2のスケーリング値[a1]と、
・例えば、第2の入力信号[502、M1]の遅延されスケーリングされたバージョン5031[a1・z-d1・M1]を取得するために使用される第2の部分遅延値[d1]と、を見出すことが可能である。
【0065】
最も好ましいスケーリング値a
0およびa
1ならびに遅延値d
0およびd
1を得るための技術が、ここで、特に
図5を参照して論じられる。
図5から分かるように、ステレオまたはマルチチャネルの信号502(入力信号M
0(z)およびM
1(z)を含む)が得られる。図から分かるように、この方法は、採用されるべきスケーリング値および遅延値の最良値を得るために複数の反復に沿ってサイクルすることが可能であるという意味で、反復的であってもよい。
【0066】
図5は、信号
および
によって形成され、例えば複数の反復後に最適化される出力504を示す。
図5は混合ブロック510を示し、これは
図2bのブロック510であってもよい。
【0067】
したがって、マルチチャネル信号510(そのチャネル成分、すなわち複数の入力信号
および
を含む)は、反復に沿ってますます最適化されるスケーリング値a
0およびa
1ならびに遅延値d
0およびd
1を利用することによって得られる。
【0068】
ブロック520において、信号
および
に対して正規化が実行される。正規化の例は、以下の商として表される式(7)によって提供される。
【0069】
ここでは、
は、入力信号M
0に対する正規化値P
0(n)と、入力信号M
1に対する正規化値P
1(n)とがあることを示している。インデックスnは、時間領域入力信号の時間インデックスである。ここで、
は信号M
i(i=0、1として、)の時間領域サンプルインデックス(z変換ではない)である。
は、
の大きさ(例えば、絶対値)が得られ、したがって正であるか、または悪い場合には0であることを示す。これは、式(7)の分子が正であること、またはさらに悪いことに0であることを意味する。
は、式(7)の分母がベクトル
の1-ノルムによって形成されることを示す。1-ノルム
は、大きさ
の合計を示し、
は、信号サンプル、例えば現在のインデックス(例えば、信号サンプルは、過去のインデックスから現在のインデックスまでの所定のウィンドウ内で取得されてもよい)までである。したがって、
(式(7)の分母)は正(場合によっては0)である。また、常に
であり、0≦P
i(n)≦1(i=0、1)であることを意味する。さらに、以下も検証される。
【0070】
したがって、式(7)を採用することによって、P
0(n)およびP
1(n)が以下を検証するので、P
0(n)およびP
1(n)を確率として人為的に考えることができることに留意されたい。
1.
2.
ここで、
(さらなる考察を以下に提供する)である。「∞」は数学的形式に使用されるが、考慮される信号にわたって近似することができる。
式(7)を介して得られたものだけでなく、他の種類の正規化が提供されてもよいことに留意されたい。
【0071】
図5は、正規化値522によって入力され、第1および第2の入力値M
0およびM
1の間の情報を与える類似度値(または類似度値)532を出力するブロック530を示す。ブロック530は、入力信号M
0およびM
1が互いにどの程度類似している(または類似していない)かを示すメトリックを測定するブロックとして理解することができる。
【0072】
第1の入力値と第2の入力値との間の類似性または非類似性を示すために選択されるメトリックは、いわゆるカルバックライブラー発散(KLD)であってもよいことが理解されている。これは、式(6)または(8)を使用して得ることができる。
(8)
【0073】
ここで、カルバックライブラー発散(KLD)をどのようにして得るかについての議論を提供する。
図7は、
図5のブロック520の下流のブロック530の例を示す。したがって、ブロック520は、例えば上述の式(7)を使用して、
および
(522)を提供する(他の技術が使用されてもよい)。ブロック530(カルバックライブラープロセッサまたはKLプロセッサとして理解されてもよい)は、メトリック532を取得するように適合されてもよく、これは、この場合、式(8)で計算されるカルバックライブラー発散である。
【0074】
図7を参照すると、第1の分岐700aにおいて、ブロック702で
と
との商702’が計算される。ブロック706において、商702’の対数が計算され、したがって、値706’を得る。次に、対数値706’は、スケーリングブロック710で正規化された値
をスケーリングするために使用されてもよく、したがって、積710’を得る。第2の分岐700bにおいて、商704’がブロック704において計算される。商704’の対数708’は、ブロック704において計算される。次に、対数値708’は、スケーリングブロック712で正規化された値をスケーリングするために使用され、したがって、積712’を得る。
【0075】
加算器ブロック714において、値710’および712’(それぞれ分岐700aおよび700bで得られる)が互いに組み合わされる。ブロック716において、組み合わされた値714’は、互いに、サンプル領域インデックスに沿って合計される。加算値716’は、ブロック718(例えば、-1でスケーリングされる)において反転されて反転値718’を得ることができる。値716’は類似値として理解することができるが、反転値718’は非類似値として理解することができることに留意されたい。値716’または値718’のいずれかは、上述したように(類似度を示す値716’、非類似度を示す値718’)メトリック532としてオプティマイザ560に提供されてもよい。
【0076】
したがって、オプティマイザブロック530は、したがって、式(8)、すなわち、
に到達することを可能にすることができる。式(6)、例えば、
に到達するために、
図7からブロック704、708、712および714を排除し、
を
と、
をQと置換することが単に可能であり得る。
【0077】
カルバックライブラー発散は、確率に関する測定値を与えるために自然に考えられたものであり、原則として、入力信号M
0およびM
1の物理的有意性とは無関係である。それにもかかわらず、本発明者らは、信号
および
を正規化し、
および
などの正規化された値を取得することによって、カルバックライブラー発散が、入力信号M
0とM
1との間の類似性/非類似性を測定するための有効なメトリックを提供することを理解している。したがって、時間領域サンプルの正規化された大きさの値を確率分布と見なすことができ、その後、メトリック(例えば、カルバックライブラー発散として、例えば、式(6)または(8))を測定することができる。
【0078】
ここで再び
図5を参照する。反復ごとに、メトリック532は、スケーリング値a
0およびa
1ならびに遅延値d
0およびd
1の有効性の良好な推定値を提供する。反復に沿って、スケーリング値a
0およびa
1ならびに遅延値d
0およびd
1の異なる候補値が、最も低い類似度または最も高い非類似度を提示するそれらの候補の中から選択される。
【0079】
ブロック560(オプティマイザ)は、メトリック532によって入力され、遅延値d
0、d
1およびスケーリング値a
0、a
1の候補564(ベクトル)を出力する。オプティマイザ560は、候補a
0、a
1、d
0、d
1の異なるグループに対して取得された異なるメトリックを測定し、それらを変更し、最も低い類似度(または最も高い非類似度)532に関連付けられた候補のグループを選択することができる。したがって、出力504(出力信号
)は最良の近似を提供する。候補値564は、ベクトルにグループ化されてもよく、これは、例えばランダムな技法(
図5は、ランダム入力542をオプティマイザ560に提供するランダム発生器540を示す)によってその後修正することができる。オプティマイザ560は、候補値564(a
0、a
1、d
0、d
1)がスケーリング(例えば、ランダムに)される重みを利用することができる。初期係数重み562は、例えばデフォルトで提供されてもよい。オプティマイザ560の処理の一例が提供され、以下で広く説明される(「アルゴリズム1」)。アルゴリズムのラインと
図5の要素との間の可能な対応関係も
図5に示されている。
【0080】
理解され得るように、オプティマイザ564は、値a0、a1、d0、d1のベクトル564を出力し、これらは続いて、新しい値512、新しい正規化された値522、および新しいメトリック532を取得するために混合ブロック510で再使用される。特定の反復回数(例えば予め定義することができる)の後、最大反復回数は、例えば、10から20の間で選択された回数であってもよい。基本的に、オプティマイザ560は、例えば、ブロック530でおよび/または式(6)および(8)を使用して取得されたメトリック532であり得る目的関数を最小化する遅延および反復値を見つけるものとして理解され得る。
【0081】
したがって、オプティマイザ560は、候補パラメータが候補のベクトル[例えば、564、a0、a1、d0、d1に対応する4つのエントリを有する]を形成するように、ランダム方向最適化技術に基づくことができ、候補のベクトルは、候補のベクトルをランダム方向に修正することによって反復的に洗練されることが理解されている。
【0082】
基本的に、候補のベクトル(a0、a1、d0、d1の後続の値を示す)は、ランダムな方向の候補ベクトルを修正することによって反復的に洗練され得る。例えば、ランダム入力542に続いて、ランダムに変化する異なる重みを使用して異なる候補値を修正することができる。ランダム方向は、例えば、所定の規則なしで、いくつかの候補値が増加している間、他の候補値が減少していること、またはその逆を意味し得る。また、最大閾値が事前定義されていても、重みの増分はランダムであってもよい。
【0083】
オプティマイザ460は、候補パラメータ[a0、a1、d0、d1]が候補のベクトルを形成するようにすることができ、反復ごとに、候補のベクトルの要素に要素ごとに乗算される[例えば、それぞれ-0.5から+0.5の間]一様分布乱数のベクトルを適用することによって、候補のベクトルが摂動される[例えば、ランダムに]。したがって、例えばランダム方向最適化を使用することによって、勾配処理を回避することが可能である。したがって、係数のベクトルをランダムに摂動させることによって、a0、a1、d0、d1の好ましい値、および合成音S0およびS1が適切に補償された出力信号504に段階的に到達することが可能である。アルゴリズムについては、以下で詳細に説明する。
【0084】
本例では、常に、2つの入力チャネル(例えば、M0、M1)によって形成されるマルチチャネル入力信号502が参照される。とにかく、上記の同じ例は、3つ以上のチャネルにも適用される。
例では、対数は任意の底であってもよい。上述のベースは10であると推測することができる。
【0085】
技術の詳細な説明
1つの目標は、利用可能なステレオウェブカメラのように、ステレオマイクロフォンからあまり遠くない、小さなオフィス環境において、2つのスピーカ、またはスピーカおよび楽器またはノイズ源を分離するためのテレビ会議のためのシステムである。スピーカまたは音源は、ステレオマイクロフォンの対向する(左右の)側にあると仮定される。リアルタイムのテレビ会議で有用であるために、できるだけ低い遅延でオンラインで動作することが望まれる。比較のために、この論文では、オフライン実装に焦点を当てている。提案された手法は、マイクロフォン信号間の減衰係数および部分遅延を使用してクロストークを最小化し、部分遅延および和ビームフォーマの原理を使用して、時間領域で機能する。他の手法と比較して、これは、最適化すべき変数の数がより少ないという利点を有し、周波数領域におけるICAのような手法の順列問題を有していない。分離を最適化するために、本発明者らは、得られた分離されたシグナル間の負のカルバックライブラー導出目的関数を最小化する。最適化のために、非常に高速で堅牢な勾配を必要とせずに、「ランダムな方向」の新規なアルゴリズムを使用する。本発明者らは、ルームインパルス応答シミュレータを使用して、および現実の記録を用いて、TIMITデータセットから得られた音声信号から生成された畳み込み混合に対する本発明者らの手法を評価する。結果は、提案されたシナリオについて、本発明者らの手法がその分離性能に関して競争力があり、従来技術の手法よりも計算複雑度およびシステム遅延が低いことを示している。
【0086】
インデックス用語-ブラインド音源分離、時間領域、バイノーラル室内インパルス応答、最適化
1.導入、以前の手法
本発明者らのシステムは、2つのマイクロフォンを有し、2つの音源を分離したい用途向けである。これは、例えば、オフィスにステレオウェブカメラがあり、その周りに2人のスピーカがある、または計算の複雑さが低いことが重要である補聴器のためのテレビ会議シナリオであり得る。
【0087】
以前のアプローチ:以前の初期のアプローチは、独立成分分析(ICA)である。それは、混合物中で遅延なしに信号の混合を解くことができる。非ガウス性を最大化するか、またはカルバックライブラー発散[1、2]を最大化することによって、非混合行列の係数を見つける。しかし、オーディオ信号およびステレオマイクロフォンペアの場合、ミックスにおいて、伝播遅延、一般的にはルームインパルス応答[3]との畳み込みが常に存在する。これに対処するための手法は、信号[4]、例えばAuxIVA[5]およびILRMA[6、7]に短時間フーリエ変換(STFT)を適用することが多い。これにより、信号遅延がSTFTサブバンド内の複素数値係数に変換され、得られたサブバンド(例えば、[8])に(複素数値)ICAを適用することができる。
【0088】
問題:ここで発生する問題は、サブバンドにおける順列であり、分離されたソースは、異なるサブバンドにおいて異なる順序で現れる可能性がある。異なるサブバンド内の異なるソースの利得は異なり、修正されたスペクトル形状、スペクトル平坦化をもたらす可能性がある。また、STFTを適用することから生じる信号遅延もある。ブロックサイズ[9、10]に対応するシステム遅延を必要とするブロックへの信号の組み立てが必要である。
【0089】
TRINICON[11]のような時間領域アプローチ、または短いブロックおよびより多くのマイクロフォン[12、13]を有するSTFTを使用するアプローチは、STFTの大きなブロック遅延を有さないという利点を有するが、通常、より高い計算複雑度を有し、これにより、小型デバイスで使用することが困難になる。
図1も参照されたい。
図1は、シミュレーションにおけるスピーカおよびマイクロフォンの設定を示している。
2.提案されたアプローチ
【0090】
周波数領域手法に関連する処理遅延を回避するために、時間領域手法を使用する。FIRフィルタを使用する代わりに、本発明者らは、減衰係数、部分遅延および和の原理または適応ビームフォーマ[16、17、18]を有する部分遅延オールパスフィルタ[14、15]として実装されるIIRフィルタを使用する。これは、そのような各フィルタが2つの係数、部分遅延および減衰のみを有するという利点を有する。2チャネルステレオの場合、これは合計でわずか4つの係数をもたらし、最適化がより容易になる。簡単にするために、残響除去も行わず、クロストーク最小化に注目する。実際には、2つのマイクロフォン間の相対伝達関数を減衰および純粋な部分遅延によってモデル化する。次に、「差分進化」法と同様に、「ランダム方向」の新規最適化を適用する。
【0091】
2つのマイクロフォン(
および
)で作られた2つの音源(
および
)からの混合録音を想定する。しかしながら、3つ以上の音源についても同じ結果が有効である。音源は、
図1に示すように固定された位置にあると仮定することができる。非因果的インパルス応答のモデル化の必要性を回避するために、音源はマイクロフォン対の異なる半平面(左右)になければならない。
【0092】
一般的に使用されるSTFTの代わりに、関連する遅延を伴う信号のブロックへの分解を必要としないため、数学的導出にz変換を使用することができる。これにより、アルゴリズム遅延のない時間領域実装に適している。サンプルインデックス
を用いた時間領域信号
の(片側)z変換は、
のように定義されることに留意されたい。z変換ドメイン信号を示すために大文字を使用する。
【0093】
瞬間の2つの時間領域音響信号(サンプルインデックス)
として
および
を定義し、それらのz変換を
および
として定義する。2つのマイクロフォン信号(まとめて502で示す)は、
および
であり、それらのz変換は、
および
である(
図2)。
iのソースからjのマイクロフォンへのルームインパルス応答(RIR)は
であり、それらのz変換は
である。したがって、本発明者らの畳み込み混合システムは、z領域において、以下のように記述することができる。
(1)
【0094】
単純化された行列乗算では、式(1)を次のように書き換えることができる。
(2)
【0095】
理想的な音源分離のためには、混合行列
を反転する必要がある。したがって、音源は次のように計算できる。
(3)
【0096】
逆行列の
および対角要素は、混合解除に寄与しない線形フィルタであるため、分離のためにそれらを無視し、それらを式(3)の左側に持ってくることができる。
この結果、
【0097】
(4)
であり、
および
は、相対ルーム伝達関数である。
【0098】
次に、
サンプルによる部分遅延および減衰係数
によってこれらの相対ルーム伝達関数を近似する。
(5)
ここで、
である。
【0099】
この近似は、残響またはエコーが強すぎない場合に特にうまく機能する。
サンプルによる部分遅延については、次のセクション(2.1)の部分遅延フィルタを使用する。簡単にするために、行列式および行列の対角線
から得られる線形フィルタを左側に保持し、これは残響除去がないことを意味することに留意されたい。
【0100】
ここでは、
図1を参照して例が提供されている。ステレオマイクロフォンペアの周りの対向する両側に対称的に、反射のない自由音場の2つの音源を想定する。source
0から近用マイクロフォンまでの(サンプル単位の)距離は、
=50サンプル、遠用マイクロフォンまで
=55サンプルとする。音の振幅は、ある定数
の関数
に従って減衰するものとする。次いで、z領域内のルーム伝達関数は、
および
であり、一方の相対的なルーム伝達関数は
であり、他方の相対的なルーム伝達関数について同じである。この単純なケースでは、相対的なルーム伝達関数は実際に
であり、正確には減衰および遅延であることが分かる。畳み込み混合およびデミックス処理の信号フローチャートを
図2bに示す。(
図2b:畳み込み混合および逆混合プロセスの信号ブロック図である)。
【0101】
2.1.部分遅延オールパスフィルタ
式(5)の遅延
を実現するための部分遅延オールパスフィルタは、ただ1つの係数からIIRフィルタを生成し、良好なクロストークキャンセルに必要な正確な部分遅延(正確な遅延は整数値ではない)の実装を可能にするので、本発明者らの方式において重要な役割を果たす。IIR特性はまた、効率的な実施を可能にする。[14、15]は、最大平坦群遅延を有するIIRフィルタに基づいて、部分遅延オールパスフィルタを設計するための実際的な方法を記載している[19]。以下の式を使用して、部分遅延
のための部分遅延オールパスフィルタの係数を取得する。zドメインでのその伝達関数は
のようになる。[14]
ここで、
は次のように定義される順序
である。
フィルタ
は、
について以下のように生成される。
【0102】
2.2.目的関数
目的関数として、カルバックライブラー 発散(KLD)
(6)
から導出された関数
を使用する。
【0103】
ここで、
および
は、本発明者らの(混合されていない)マイクロフォンチャネルの確率分布であり、離散分布上で
が実行される。
【0104】
計算をより高速にするために、ヒストグラムの計算を回避する。ヒストグラムの代わりに、時間領域信号自体の正規化された大きさを使用し、
(7)
ここで、
は時間領域サンプルインデックスである。
は、確率の特性と同様の特性を有する、すなわち、
1.
.
2.
.
式中、i=0、1であることに留意されたい。カルバックライブラー発散を直接使用する代わりに、和
を使用することによって目的関数を対称(距離)関数に変える。これにより、2つのチャネル間の分離がより安定されるからである。最大化の代わりに最小化を適用するために、その負の値をとる。したがって、本発明者らの結果として得られる目的関数
は、
(8)
である。
【0105】
2.3.最適化
BSSのための広範な最適化方法は勾配降下法である。これは、最適値への「最も急な」方法を見つけるという利点を有するが、勾配の計算を必要とし、目的関数の極小に容易に陥るか、または「狭い谷」によって減速される。したがって、係数の最適化のために、「差分進化」[20、21、22]と同様に、「ランダム方向」の新規な最適化を使用する。更新のための係数ベクトルの差の代わりに、重みベクトルを使用して、係数の予想される分散分布をモデル化する。これは、非常に単純であるが非常に高速な最適化アルゴリズムをもたらし、これはまた、リアルタイム通信アプリケーションにとって重要なリアルタイム処理に容易に適用することができる。アルゴリズムは、固定された開始点[1.0、1.0、1.0、1.0]から始まり、我々は、これがロバストな収束挙動をもたらすことを見出した。次に、重みベクトルと要素ごとに乗算された、-0.5から+0.5(ランダム方向)の間の一様分布乱数のベクトルで現在点を摂動させる(アルゴリズム1の線10)。この摂動された点がより低い目的関数値を有する場合、それを次の現在点として選択し、以下同様である。最適化アルゴリズムの擬似コードは、アルゴリズム1に見ることができる。ここで、minabskl_i(アルゴリズム1でnegabskl_iとして示されている)は、係数ベクトルcoeffsおよびアレイX内のマイクロフォン信号からKLDを計算する目的関数である。
【0106】
本発明者らは、本発明者らのテストファイルに対して(ファイル全体の毎回)20回の反復(したがって、20回の目的関数評価のみ)で既に十分であることを見出し、これを非常に高速なアルゴリズムにする。
【0107】
最適化は、ブロック560において実行されてもよく、または例えば実行されてもよい(上記参照)。
【0108】
アルゴリズム1を以下に示す。
アルゴリズム1 最適化アルゴリズム
1: 手順 分離係数を最適化
2: 初期化
3: X ←畳み込み混合
4: init_coeffs=[1.0、1.0、1.0、1.0] ←
分離係数の初期推定
5: coeffweights ←ランダム検索の重み
6: coeff=init_coeffs ←分離係数
7: negabskl_0(coeffs,X) ←KLDの演算
8: 最適化ルーチン
9: ループ:
10: coeffvariation=(random(4)*coeffweights) ←
分離係数のランダム変数
11: negabskl_1(coeffs+coeffvariation,X)
←
新たなKLDの演算
12: if negabskl_1<negabskl_0 then
13: negabskl_0=negabskl_1
14: coeffs=coeffs+coeffvariation ←
分離係数を更新
【0109】
3.実験結果
このセクションでは、本発明者らは、シミュレーションされたルームインパルス応答およびTIMITデータセット[23]からの異なる音声信号を使用することによって、AIRES(time domAIn fRactional dElay Separation)と呼ばれる提案された時間領域分離方法を評価する。さらに、本発明者らは、現実の部屋環境で現実の記録を行った。本発明者らの提案する手法の性能を評価するために、最先端のBSSアルゴリズム、すなわち時間領域TRINICON[11]、周波数領域AuxIVA[5]およびILRMA[6、7]との比較を行った。TRINICON BSSの実装は、その著者から受領されている。AuxIVAおよびILRMA BSSの実装は、それぞれ[24]および[25]から取得された。実験は、CPUコアi 7第8世代および16GbのRAMを有するラップトップ上でMATLAB R 2017aを使用して行われた。
【0110】
3.1.合成RIRによる分離性能
画像モデル技術[26、27]に基づくルームインパルス応答シミュレータを使用して、ルームインパルス応答を生成した。シミュレーション設定のために、部屋のサイズが
であるように選択されている。マイクロフォンは、[3.475、2.0、1.5]mおよび[3.525、2.0、1.5]mで部屋の中央に配置され、サンプリング周波数は16kHzであった。全TIMITデータセットから10対の音声信号をランダムに選択し、模擬RIRと畳み込んだ。各信号対について、マイクロフォンに対する音源のランダムな角度位置について、4つの異なる距離および3つの残響時間(RT
60)について、シミュレーションを16回繰り返した。すべてのシミュレーションで使用された共通のパラメータを表1に示し、設定の視覚化を
図1に示す。分離性能の評価は、元の音源が利用可能であるため、信号対歪み比(SDR)測定値[28]および計算時間を計算することによって客観的に行われた。結果を
図3に示す。
【0111】
得られた結果は、0.2秒未満の残響時間に対する本発明者らの手法の良好な性能を示す。RT60=0.05sでは、すべての距離にわたる平均SDR測定値は15.64dBであり、RT60=0.1sでは10.24dBである。残響時間RT60=0.2sについて、本発明者らの提案するBSSアルゴリズムは、TRINICON後にILRMAと2位を共有する。すべてのシミュレーションにわたる(本発明者らのコンピュータ上の)平均計算時間を表2に示す。図から分かるように、AIRESは、計算時間に関してすべての最先端のアルゴリズムよりも優れている。
【0112】
結果を聞くことにより、本発明者らは、約8dBのSDRが良好な発話了解度をもたらし、本発明者らの手法は実際に、不自然なサウンディングアーチファクトを特徴としないことを見出した。
【0113】
【0114】
図3の特徴付け(シミュレートされたデータに適用されたBSSアルゴリズムの性能評価を示す):
(a)RT
60=0.05s
(b)RT
60=0.1s
(c)RT
60=0.2s
【0115】
【0116】
3.2.現実の実験
最後に、提案された音源分離方法を評価するために、現実の実験を行った。実際の記録は、3つの異なる部屋タイプでキャプチャされている。すなわち、小さなアパートの部屋(3m×3m)、オフィスの部屋(7m×5m)、大きな会議室(15m×4m)である。各部屋のタイプについて、2つのスピーカの10個のステレオ混合が記録されている。「グランドトゥルース」信号がないため、分離性能を評価するために、分離されたチャネル間の相互情報測度[29]が計算されている。結果を表3に示す。混合マイクロフォンチャネルの平均相互情報は1.37であり、分離された信号間の相互情報が低いほど良好な分離であることに留意されたい。
【0117】
【0118】
比較表3から、実際に記録された畳み込み混合物の分離の性能傾向は、シミュレートされたデータの場合と同じままであったことが分かる。したがって、AIRESはその単純さにもかかわらず、従来技術のブラインドソース分離アルゴリズムと競合する可能性があると結論付けることができる。
【0119】
4.結論
この論文では、2つのオーディオチャネル間のクロストークを最小限に抑えるために、IIR部分遅延フィルタの推定に基づく高速時間領域ブラインド音源分離技術を提示した。部分遅延および減衰係数の推定は、ステレオ畳み込み混合からのソース信号の迅速かつ効果的な分離をもたらすことを示した。このために、負のカルバックライブラー発散から導出された目的関数を導入した。最小化を堅牢かつ高速にするために、本発明者らは、「差分進化」の最適化に類似する新規な「ランダム方向」最適化方法を提示した。提案されたBSS技術を評価するために、一連の実験を行った。本発明者らは、本発明者らのシステムを、シミュレートされたデータおよび実際の部屋の記録に関する他の最先端の方法と評価および比較した。結果は、本発明者らのシステムが、その単純さにもかかわらず、その分離性能において競争力があるが、はるかに低い計算複雑度を有し、システム遅延がないことを示している。これはまた、リアルタイム最小遅延アプリケーションおよび移動する音源(移動するスピーカなど)に対するオンライン適応を可能にする。これらの特性により、AIRESは、補聴器または小型テレビ会議装置などの小型デバイス上のリアルタイムアプリケーションによく適している。AIRESBSSのテストプログラムは、当方のGitHub[30]で入手可能である。
【0120】
さらなる態様(上記および/または下記の例も参照)
例えば、マルチチャネルまたはステレオオーディオソース分離方法およびその更新方法に関して、さらなる態様がここで説明される。それは(相互情報のような)目的関数を最小化し、例えば、他のチャネルから信号を取得することによってクロストーク低減を使用し、それに減衰係数および(可能な分数)遅延を適用し、それを現在のチャネルから減算する。これは、例えば、遅延および減衰係数を更新するために「ランダムな方向」の方法を使用する。
【0121】
以下の態様も参照されたい。
1:分離のための係数がランダム更新ベクトルを追加することによって反復的に更新され、この更新が改善された分離をもたらす場合、次の反復のためにこの更新を維持する、マルチチャネルまたはステレオソース分離方法;そうでなければ廃棄する。
2:各係数のランダム更新に適した固定分散を有する態様1に記載の方法。
3:更新がライブオーディオストリーム上で行われ、更新が過去のオーディオサンプルに基づく、態様1または2に記載の方法。
4:更新の分散が経時的にゆっくりと減少する、態様1、2または3に記載の方法。
【0122】
他の態様は、
1)多次元入力ベクトルxを用いて目的関数を最小化するパラメータのオンライン最適化の方法であって、まず所与の近傍空間からテストベクトルを決定し、次いで探索ベクトルを用いて以前の最良ベクトルを更新し、目的関数のそのような取得された値が新しい最良値になる場合、この更新されたベクトルは新しい最良値になり、そうでなければ破棄される、方法。
【0123】
2)N個のチャネルのオーディオストリーム内のN個のソースを分離するタスクに適用され、係数ベクトルは、不要なソースをキャンセルするために必要な遅延および減衰値からなる、態様1に記載の方法。
3)1つまたは複数のサイトで2人以上の話者がいるテレビ会議のタスクに適用される、態様2に記載の方法。
4)オーディオソースをオーディオエンコーダで符号化する前にオーディオソースを分離するタスクに適用される、態様2に記載の方法。
5)音楽または雑音源から音声源を分離するタスクに適用される、態様2に記載の方法。
【0124】
さらなる態様
さらなる態様がここで論じられる。
導入ステレオ分離
目標は、複数のマイクロフォンで音源を分離することである(ここでは2)。異なるマイクロフォンは、異なる振幅および遅延で音を拾う。以下の考察では、Pythonにおけるプログラミング例を考慮する。これは、理解を容易にするため、アルゴリズムが機能するかどうかおよびどのように機能するかを試験するため、および結果の再現性のため、アルゴリズムを試験可能にし、他の研究者にとって有用にするためである。
【0125】
その他の態様
以下、他の態様について説明する。それらは必ずしも互いに境界付けられているわけではなく、新しい実施形態を作成するために組み合わせることができる。各箇条書きは、他のものから独立していてもよく、単独で、または他の特徴(例えば、他の箇条書き)、または上記もしくは下記で論じられる他の特徴と組み合わせて、上記および/または下記の例の少なくともいくつか、および/または特許請求の範囲に開示される特徴のいくつかを補完またはさらに指定してもよい。
【0126】
空間知覚
耳は、音の特殊な方向を推定するために主に2つの効果を使用する。
両耳間レベル差(ILD)
両耳間時間差(ITD)
スタジオ録音からの音楽は、主に「パンニング」と呼ばれるレベル差(時間差なし)のみを使用する。
例えばステレオウェブカメラからのステレオマイクロフォンからの信号は、主に時間差を示し、あまりレベル差を示さない。
ステレオマイクロフォンを用いたステレオ録音
時間差を有するステレオマイクロフォンを用いた設定。
観測:有限の音速および減衰からの音遅延の影響は、遅延を伴う混合行列によって記述することができる。
図2a:ステレオ遠隔会議設定を参照されたい。マイクロフォン間の信号遅延を観察する。
【0127】
ステレオ分離、ILD
-時間差がない場合(パンニングのみ)の方が簡単である
-通常、独立成分分析を使用する
-それは、統計的に独立した信号を生成する「非混合」行列を計算する。
-2つの信号XおよびYのジョイントエントロピーがH(X、Y)であることを想起されたい
-条件付きエントロピーはH(X|Y)である
-統計的に独立とは、H(X|Y)=H(X)、H(X、Y)=H(X)+H(Y)も意味する
-相互情報:I(X、Y)=H(X、Y)-H(X|Y)-H(Y|X)≧0、
独立のために、それは0になる
-一般に、最適化はこの相互情報を最小化する。
ITD事前手法
-時間差があるITDの場合は、解決がより困難である
-「最小分散原理」は、マイクロフォンアレイからのノイズを抑制しようとする
-マイクロフォンチャネルの相関行列を推定し、原理成分分析(PCA)またはカルハウネン-レーベ変換(KLT)を適用する。
-これにより、得られたチャネルが脱相関する。
-最も低い固有値を有するチャネルはノイズであると仮定され、0に設定される
【0128】
ITD前手法例
-我々のステレオの場合、2つのチャネルしか得られず、より大きな固有値およびより小さな固有値で信号を計算および再生する:python KLT_separation.py
観測:より大きな固有値を有するチャネルは、より低い周波数、他の(より弱い)より高い周波数を有するようであり、これらはしばしば単なるノイズである。
ITD、新たなアプローチ
理想:非混合行列は、混合行列を反転させるために、非混合のための信号遅延を必要とする
重要な単純化:2つの音源のそれぞれについて、マイクロフォン間の単一の信号遅延経路のみを仮定する。
実際には、部屋の反射から複数の遅延があるが、通常は直接経路よりもはるかに弱い。
【0129】
立体分離、ITD、新しいアプローチ
減衰aを有する混合行列、およびdの遅延、サンプルを仮定する。z変換領域では、dサンプルによる遅延はz
-dの係数で表される(遅延は小数サンプルであり得ることを観察されたい)。
したがって、非混合行列はその逆である。
【0130】
実際に性能を犠牲にすることなく行列の前に行列式を用いて画分を落とすことによって、混合解除行列を単純化できることが分かる。
【0131】
係数計算
係数a、およびdは、最適化によって得られる必要がある。係数を見つけるために、結果として生じる信号の相互情報の最小化を再び使用することができる。相互情報のためには、結合エントロピーが必要である。Pythonでは、numpy.histogram2dを使用して2次元確率密度関数からそれを計算することができ、これをhist2d、xedges、yedges=np.histogram2d(x[:、0]、x[:、1]、bins=100)と呼ぶ。
【0132】
目的関数の最適化
我々の目的関数は、いくつかの最小値を有し得ることに留意されたい!これは、その開始点が大域的最小値に十分に近くない場合、凸最適化を使用できないことを意味する。
したがって、非凸最適化を使用する必要があり、Pythonは非常に強力な非凸最適化方法を有する。
【0133】
scipy.optimize.differential_evolution。発明者らは、coeffs_minimized=opt.differential_evolution(mutualinfocoeffs、bounds、args=(X、)、tol=1e-4、disp=True)と呼ぶ。
【0134】
代替目的関数
しかし、これは計算が複雑である。したがって、同じ最小値を有する別の目的関数を探す。カルバックライブラーおよびItakura-Saito発散を考慮する
2つの確率分布PおよびQのカルバックライブラー発散は、以下のように定義される。
【0135】
iは、(離散的な)分布上を走る。ヒストグラムの計算を回避するために、本発明者らは、単に時間領域サンプルの正規化された大きさを確率分布として錯覚として扱う。これらは非類似性尺度であるため、最大化する必要があり、したがって負の値を最小化する必要がある。
カルバックライブラー Python関数
Pythonでは、この目的関数は、
def minabsklcoeffs(coeffs、X):
#チャネルの正規化された大きさを計算し、次いで、
#the Kullback-Leibler divergence
X_prime=unmixing(coeffs、X)
X_abs=np.abs(X_prime)
#sum()=1に正規化して、それを確率のように見せる。
X_abs[:、0]=X_abs[:、0]/np.sum(X_abs[:、0]
X_abs[:、1]=X_abs[:、1]/np.sum(X_abs[:、1])
#print(“Kullback-Leibler Divergence calculation”)
abskl=np.sum(X_abs[:、0]* np.log((X_abs[:、0]+1e-6)/(X_abs[:、1]+1e-6))
→)
戻り-abskl
(ここで、minabsklcoeffsは、アルゴリズム1のminabsk_iに対応する)
目的機能の比較
遅延係数のうちの1つを除く係数を固定して、プロット内の目的関数を比較する。
【0136】
図6aは、例示的な信号および例示的な係数の目的関数を示す。関数が実際に同じ最小値を有することに留意されたい!「abskl」は、信号の絶対値におけるカルバックライブラーであり、最も滑らかである。
【0137】
最適化例
相互情報を用いた最適化:python
ICAmutualinfo_puredelay.py
(これには約121より遅い反復が必要である)
-カルバックライブラーを使用した最適化:python ICAabskl_puredelay.py
(これには約39より速い反復が必要である)
得られた信号を聞くと、以前はそうではなかった明瞭さのために十分に分離されていることが確認される。
【0138】
さらなる高速化最適化
最適化をさらにスピードアップするために、凸最適化を可能にする必要がある。そのためには、(最良の場合には)1つの最小値のみを有する目的関数を有する必要がある。より小さい極小値の多くは、信号の高周波成分が急速に変化することに起因する。アプローチ:本発明者らは、本発明者らの信号の低域通過およびダウンサンプリングバージョンに基づいて目的関数を計算する(これはまた、目的関数の計算をさらに高速化する)。ローパスは、極小値を除去するのに十分に狭いが、依然として十分に正確な係数を得るのに十分に広い必要がある。
【0139】
さらなる高速化最適化、低域通過
ダウンサンプリング係数8、したがって全帯域の1/8のローパスを選択する。全帯域の約1/8(ナイキスト周波数の1/8)の帯域幅を有する以下のローパスフィルタを使用する。
図6b:使用されたローパスフィルタ、振幅周波数応答。x軸は正規化周波数であり、2πはサンプリング周波数である。
【0140】
低域通過からの目的関数
ここでも、目的関数をプロットして比較することができる。
図6c:ローパスフィルタリングされた例示的な信号および例示的な係数の目的関数を示す図である。ここで、関数は実際には主に1つの最小値を有することに留意されたい!
「abskl」は、やはり最も滑らかである(小さな極小値はない)。
さらなる高速化の最適化、実施例
ここで、凸最適化、例えば共役勾配の方法を試すことができる。
-Python ICAabskl_puredelay_lowpass.py
-観測:最適化がほぼ瞬時に成功した!
-結果として生じる分離は、以前と同じ品質を有する。
【0141】
その他の説明
上記では、異なる本発明の実施例および態様が記載されている。また、さらなる例は、添付の特許請求の範囲によって定義される(例は特許請求の範囲にもある)。特許請求の範囲によって定義される任意の例は、前のページで説明した詳細(特徴および機能)のいずれかによって補足することができることに留意されたい。また、上述した例は、個別に使用することができ、別の章の特徴のいずれか、または特許請求の範囲に含まれる任意の特徴によって補足することもできる。
【0142】
丸括弧および角括弧内のテキストは任意選択であり、さらなる実施形態(さらに特許請求の範囲によって定義されるもの)を定義する。また、本明細書に記載の個々の態様は、個別にまたは組み合わせて使用することができることに留意されたい。したがって、詳細は、前記態様の別の1つに詳細を追加することなく、前記個々の態様の各々に追加することができる。
本開示は、移動通信デバイスおよび移動通信システムの受信機の特徴を明示的または暗黙的に記述することにも留意されたい。
【0143】
特定の実装要件に応じて、例はハードウェアで実装されてもよい。実施態様は、それぞれの方法が実行されるようにプログラマブルコンピュータシステムと協働する(または協働することができる)、電子的に読み取り可能な制御信号が記憶されたデジタル記憶媒体、例えばフロッピーディスク、デジタル多用途ディスク(DVD)、ブルーレイディスク、コンパクトディスク(CD)、読み出し専用メモリ(ROM)、プログラマブル読み出し専用メモリ(PROM)、消去可能およびプログラマブル読み出し専用メモリ(EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(EEPROM)またはフラッシュメモリを使用して実行されてもよい。したがって、デジタル記憶媒体はコンピュータ可読であってもよい。
【0144】
一般に、例は、プログラム命令を有するコンピュータプログラム製品として実装されてもよく、プログラム命令は、コンピュータプログラム製品がコンピュータ上で実行されるときに方法のうちの1つを実行するように動作する。プログラム命令は、例えば、機械可読媒体に記憶されてもよい。
【0145】
他の例は、機械可読キャリアに格納された、本明細書に記載の方法の1つを実行するためのコンピュータプログラムを含む。言い換えれば、したがって、方法の一例は、コンピュータプログラムがコンピュータ上で実行されるときに、本明細書に記載の方法のうちの1つを実行するためのプログラム命令を有するコンピュータプログラムである。
【0146】
したがって、方法のさらなる例は、本明細書に記載の方法の1つを実行するためのコンピュータプログラムを記録して含むデータキャリア媒体(またはデジタル記憶媒体、またはコンピュータ可読媒体)である。データキャリア媒体、デジタル記憶媒体、または記録媒体は、無形で一時的な信号ではなく、有形および/または非一時的である。
さらなる例は、処理ユニット、例えばコンピュータ、または本明細書に記載の方法のうちの1つを実行するプログラマブル論理デバイスを含む。
さらなる例は、本明細書に記載の方法のうちの1つを実行するためのコンピュータプログラムをインストールしたコンピュータを含む。
【0147】
さらなる例は、本明細書に記載された方法のうちの1つを実行するためのコンピュータプログラムを受信機へ転送する(例えば、電子的または光学的に)装置またはシステムを備える。受信機は、例えば、コンピュータ、モバイルデバイス、メモリデバイスなどであってもよい。装置またはシステムは、例えば、コンピュータプログラムを受信機に転送するためのファイルサーバを備えることができる。
【0148】
いくつかの例では、プログラマブル・ロジック・デバイス(例えば、フィールド・プログラマブル・ゲート・アレイ)を使用して、本明細書に記載の方法の機能の一部またはすべてを実行することができる。いくつかの例では、フィールド・プログラマブル・ゲート・アレイは、本明細書に記載の方法のうちの1つを実行するためにマイクロプロセッサと協働することができる。一般に、方法は、任意の適切なハードウェア装置によって実行されてもよい。
【0149】
上述の例は、上述の原理の例示である。本明細書に記載の構成および詳細の修正および変形は明らかであることが理解される。したがって、本明細書の実施例の説明および説明として提示される特定の詳細によってではなく、添付の特許請求の範囲によって限定されることが意図される。
【0150】
参考文献
[1] A.Hyvarinen,J.Karhunen,and E.Oja,“Independent component analysis.” John Wiley&Sons,2001.
【0151】
[2] G.Evangelista,S.Marchand,M.D.Plumbley,and E.Vincent,“Sound source separation,” in DAFX:Digital Audio Effects,second edition ed.John Wiley and Sons,2011.
【0152】
[3] J.Tariqullah,W.Wang,and D.Wang,“A multistage approach to blind separation of convolutive speech mixtures,” in Speech Communication,2011,vol.53,pp.524-539.
【0153】
[4] J.Benesty,J.Chen,and E.A.Habets,“Speech enhancement in the STFT domain,” in Springer,2012.
【0154】
[5] J.Jansky,Z.Koldovsky,and N.Ono,“A computationally cheaper method for blind speech separation based on auxiva and incomplete demixing transform,” in IEEE International Workshop on Acoustic Signal Enhancement(IWAENC),Xi’an,China,2016.
【0155】
[6] D.Kitamura,N.Ono,H.Sawada,H.Kameoka,and H.Saruwatari,“Determined blind source separation unifying independent vector analysis and nonnegative matrix factorization,” in IEEE/ACM Trans.ASLP,vol.24,no.9,2016,pp.1626-1641.
【0156】
[7] “Determined blind source separation with independent low-rank matrix analysis,” in Springer,2018,p.31.
【0157】
[8] H.-C.Wu and J.C.Principe,“Simultaneous diagonalization in the frequency domain(sdif)for source separation,” in Proc.ICA,1999,pp.245-250.
【0158】
[9] H.Sawada,N.Ono,H.Kameoka,and D.Kitamura,“Blind audio source separation on tensor representation,” in ICASSP,Apr.2018.
【0159】
[10] J.Harris,S.M.Naqvi,J.A.Chambers,and C.Jutten,“Realtime independent vector analysis with student’s t source prior for convolutive speech mixtures,” in IEEE International Conference on Acoustics,Speech,and Signal Processing,ICASSP,Apr.2015.
【0160】
[11] H.Buchner,R.Aichner,andW.Kellermann,“Trinicon:A versatile framework for multichannel blind signal processing,” in IEEE International Conference on Acoustics,Speech,and Signal Processing,Montreal,Que.,Canada,2004.
【0161】
[12] J.Chua,G.Wang,andW.B.Kleijn,“Convolutive blind source separation with low latency,” in Acoustic Signal Enhancement(IWAENC),IEEE International Workshop,2016,pp.1-5.
【0162】
[13] W.Kleijn and K.Chua,“Non-iterative impulse response shortening method for system latency reduction,” in Acoustics,Speech and Signal Processing(ICASSP),2017,pp.581-585.
【0163】
[14] I.Senesnick,“Low-pass filters realizable as all-pass sums:design via a new flat delay filter,” in IEEE Transactions on Circuits and Systems II:Analog and Digital Signal Processing,vol.46,1999.
【0164】
[15] T.I.Laakso,V.Valimaki,M.Karjalainen,and U.K.Laine,“Splitting the unit delay,” in IEEE Signal Processing Magazine,Jan.1996.
【0165】
[16] M.Brandstein and D.Ward,“Microphone arrays,signal processing techniques and applications,” in Springer,2001.
【0166】
[17] “Beamforming,” http://www.labbookpages.co.uk/audio/ beamforming/delaySum.html,accessed:2019-04-21.
【0167】
[18] Benesty,Sondhi,and Huang,“Handbook of speech processing,” in Springer,2008.
【0168】
[19] J.P.Thiran,“Recursive digital filters with maximally flat group delay,” in IEEE Trans.on Circuit Theory,vol.18,no.6,Nov.1971,pp.659-664.
【0169】
[20] S.Das and P.N.Suganthan,“Differential evolution:A survey of the state-of-the-art,” in IEEE Trans.on Evolutionary Computation,Feb.2011,vol.15,no.1,pp.4-31.
【0170】
[21] R.Storn and K.Price,“Differential evolution-a simple and efficient heuristic for global optimization over continuous spaces,” in Journal of Global Optimization.11(4),1997,pp.341-359.
【0171】
[22] “Differential evolution,” http://www1.icsi.berkeley.edu/~storn/code.html,accessed:2019-04-21.
【0172】
[23] J.Garofolo et al.,“Timit acoustic-phonetic continuous speech corpus,” 1993.
[24] “Microphone array speech processing,” https://github.com/
ZitengWang/MASP,accessed:2019-07-29.
[25] “Ilrma,” https://github.com/d-kitamura/ILRMA,accessed:2019-07-29.
【0173】
[26] R.B.Stephens and A.E.Bate,Acoustics and Vibrational Physics,London,U.K.,1966.
【0174】
[27] J.B.Allen and D.A.Berkley,Image method for efficiently simulating small room acoustics.J.Acoust.Soc.Amer.,1979,vol.65.
【0175】
[28] C.Fevotte,R.Gribonval,and E.Vincent,“Bss eval toolbox user guide,” in Tech.Rep.1706,IRISA Technical Report 1706,Rennes,France,2005.
【0176】
[29] E.G.Learned-Miller,Entropy and Mutual Information.Department of Computer Science University of Massachusetts,Amherst Amherst,MA 01003,2013.
【0177】
[30] “Comparison of blind source separation techniques,” https://github.com/TUIlmenauAMS/
Comparison-of-Blind-Source-Separation-techniques,accessed:2019-07-29.