(本開示に至る技術的な課題などの経緯)
音響クロストーク抑圧装置が利用される場面として、例えば、二人の人物が会話する状況が想定される。音響クロストーク抑圧装置は、例えば、特許第6635394号などに開示されるように、一方の人物が発話した音声に他方の人物が発話した音声がクロストーク成分として含まれる場合に、クロストーク成分を抑圧(言い換えると、減算)するための抑圧信号を生成し、その一方の人物の発話による音声信号から抑圧信号を抑圧することで、クロストーク成分が抑圧された音声信号を出力できる。二人の人物が会話する状況として、例えば、刑務所などで刑務官と犯罪者などの入所者とが向かい合って会話する状況、店舗などで店員と顧客とがテーブルを挟んで対話する状況、オフィスなどで社員と上司とが会議で話し合う状況などが挙げられるが、上述した状況に限定されなくてよい。発話の内容は、ログとして記録され、テキストに変換されて保存されてもよいし、発話の音声信号が音声認識の処理として入力されてもよい。
以下、店舗内で店員と顧客とが対話する状況を一例として示す。音響クロストーク抑圧装置は、例えば店舗内に設置されている円卓のテーブルに配置された複数のマイクのそれぞれに接続され、店員および顧客の一方がメイン話者として発話する音声を目的音とし、このメイン話者の音声に妨害音として混ざる他の話者が発話する音声を抑圧する。
図8は、店員hm1と顧客hm2の真ん中にマイクアレイmAが置かれた状況の一例を示す図である。マイクアレイmAは、複数個の無指向性マイクを収容した筐体を有し、それぞれの無指向性マイクで周囲の音声を収音する。マイクアレイmAにより収音された音声は、公知の方法(例えば、マイクアレイmA、あるいはマイクアレイmAに接続されたPC(図示略)で行われるビームフォーミング処理)により、店員hm1および顧客hm2のそれぞれの方向に指向性が形成されて音声出力が可能となる。なお、マイクとしては、マイクアレイmAに限らず、1個もしくは複数個の無指向性マイクであってもよい。
図8では、マイクアレイmAから店員hm1までの距離とマイクアレイmAから顧客hm2までの距離とがほぼ等しく、マイクアレイmAから店員hm1へ向かう方向d1とマイクアレイmAから顧客hm2に向かう方向d2とが、マイクアレイmAが置かれたテーブルの面からほぼ同じ角度である場合、マイクアレイmAは、店員hm1の声と顧客hm2の声とを高い割合で分離して収音できる。
図9は、図8の状況において、店員hm1および顧客hm2それぞれの方向に指向性が形成されて収音された音声に対する音響クロストーク抑圧処理例を説明する図である。マイクアレイmAは、一例として4個の無指向性のマイク素子m1~m4を有する。図示は省略するが、マイクアレイmA、あるいはマイクアレイmAに接続されたPCは、マイクアレイmAにより収音された音声信号を入力し、店員hm1および顧客hm2それぞれの方向に指向性を形成して(つまり、ビームフォーミングの処理を行って)音声を出力する。4個のマイク素子m1~m4でそれぞれ収音される、店員hm1の声V1と顧客hm2の声V2は、音圧比で5:5となる。
ビームフォーミングの処理によって店員hm1の方向d1に指向性が形成された場合、店員hm1の声V1と顧客hm2の声V2は、例えば音圧比で7:3となったとする。同様に、ビームフォーミングの処理によって顧客hm2の方向d2に指向性が形成された場合、店員hm1の声V1と顧客hm2の声V2は、例えば音圧比で3:7となったとする。
ビームフォーミング後の店員hm1の声V1の音声信号を主信号とし、ビームフォーミングの処理後の顧客hm2の声V2の音声信号を参照信号として、音響クロストーク抑圧処理が行われると、クロストーク抑圧後の店員hm1の声V1と顧客hm2の声V2は、例えば音圧比で9:1となる。したがって、店員hm1の声V1が顧客hm2の声V2に比べて相対的に強調される。同様に、ビームフォーミングの処理後の店員hm1の声V1の音声信号を参照信号とし、ビームフォーミングの処理後の顧客hm2の声V2の音声信号を主信号として、音響クロストーク抑圧処理が行われると、クロストーク抑圧後の店員hm1の声V1と顧客hm2の声V2は、例えば音圧比で1:9となる。したがって、顧客hm2の声V2が店員hm1の声V1に比べて相対的に強調される。音声認識エンジンegは、音響クロストーク抑圧後の店員hm1の声V1および顧客hm2の声V2のいずれも精度良く認識可能である。
図10は、店員hm1に近く顧客hm2から離れた位置にマイクアレイmAが置かれた状況の一例を示す図である。通常、マイクアレイmAは、店員hm1と顧客hm2の真ん中に置かれることよりも、むしろどちらかの方に片寄って置かれることが多い、または、物理的に店員hm1と顧客hm2との間に置かれていたとしても空間特性の影響によって、指向性特性にばらつきが生じる場合がある。前者を例に考えると、マイクアレイmAから店員hm1までの距離とマイクアレイmAから顧客hm2までの距離が大きく異なる。したがって、マイクアレイmAにおいて受音(収音)される店員hm1の音声信号の音圧と顧客hm2の音声信号の音圧とに差が生じる(図10参照)。例えば、図10に示すように、マイクアレイmAを構成するそれぞれのマイクごとに、店員hm1,顧客hm2の音声信号の音圧の比率が7:3となるように差が生じている。このため、マイクアレイmAは、図8の状況とは異なり、店員hm1の声および顧客hm2の声を高い割合で分離して収音できない。なお、マイクアレイmAは、人体あるいは衣服に装着されてもよく、この場合、マイクアレイmAが装着された方の人物の声が支配的に収音され、より一層分離して収音できない。
図11は、図10の状況において、店員hm1および顧客hm2それぞれの方向に指向性が形成されて収音された音声に対する音響クロストーク抑圧処理例を説明する図である。4個のマイク素子m1~m4でそれぞれ収音される、店員hm1の声V1と顧客hm2の声V2は、音圧比で7:3となる。
ビームフォーミングの処理によって店員hm1の方向d1に指向性が形成された場合、マイクアレイmAは、店員hm1の近くに配置されるので、店員hm1の声V1を支配的に収音可能である。店員hm1の声V1と顧客hm2の声V2は、例えば音圧比で9:1となる。一方、ビームフォーミングによって顧客hm2の方向d2に指向性が形成された場合、マイクアレイmAは、顧客hm2から遠くに配置されるので、顧客hm2の声V2を十分に収音できない。店員hm1の声V1と顧客hm2の声V2は、例えば音圧比で4:6となる。
このような場合、ビームフォーミング後の店員hm1の声V1の音声信号を参照信号とし、ビームフォーミング後の顧客hm2の声V2の音声信号を主信号として、音響クロストーク抑圧処理が行われると、参照信号の店員hm1の声がクリアであるので、クロストーク抑圧の性能が高い。したがって、顧客hm2の声V2が店員hm1の声V1に対して相対的に十分に強調される。音声認識エンジンegは、顧客hm2の声V2を精度良く認識可能である。
一方、ビームフォーミング後の店員hm1の声V1の音声信号を主信号とし、ビームフォーミング後の顧客hm2の声V2の音声信号を参照信号として、音響クロストーク抑圧処理が行われると、店員hm1の声V1と顧客hm2の声V2の音圧比が4:6とほぼ同等であるので、音響クロストーク抑圧処理の性能が低い。この結果、クロストーク成分となる顧客hm2の声V2を抑圧するどころか、却って、顧客hm2の声V2が加算されてしまい、主信号である店員hm1の声V1が益々クリアでなくなってしまう可能性があった。
しかしながら、ビームフォーミング後の顧客hm2の声V2の音声信号を主信号として、音響クロストーク抑圧処理が行われた後の顧客hm2の声V2は高音圧となるので、この高音圧の顧客hm2の声V2を参照信号としての適性は高いと考えられる。言い換えると、クロストーク成分の抑圧の順序を考慮することで、どの人物の声の音声信号が主信号となる場合でもクロストーク成分が抑圧された主信号の音声出力が可能となることが期待される。
そこで、以下の実施の形態では、音声処理装置の一例としての音響クロストーク抑圧装置は、閉空間に存在する複数の話者のうちいずれの話者が発話した場合でも、その話者の発話音声に含まれ得る他の話者の発話音声による音響的なクロストーク成分を適応的に抑圧し、発話音声の音質を改善する例を説明する。実施の形態1では無指向性マイクを用いる場合を示し、実施の形態2では指向性を形成可能なマイクアレイを用いる場合を示す。
以下、適宜図面を参照しながら、本開示に係る音声処理装置および音声処理方法を具体的に開示した実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明および実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。なお、添付図面および以下の説明は、当業者が本開示を十分に理解するために提供されるのであって、これらにより特許請求の範囲に記載の主題を限定することは意図されていない。
(実施の形態1)
図1は、実施の形態1に係る音響クロストーク抑圧装置5の機能的構成例を示すブロック図である。音声処理装置の一例としての音響クロストーク抑圧装置5は、目的音(言い換えると、主信号)に混ざる妨害音(言い換えると、クロストーク成分)を抑圧するものであり、DSP(Digital Signal Processor)10などのプロセッサにより構成される。プロセッサは、DSP以外に、CPU(Central Porocessing Unit)、あるいはFPGA(Field Programmable Gate Array)により構成されてもよい。音響クロストーク抑圧装置5には、2個のマイクmc1,mc2が入力機器として接続され、音声認識エンジン(図示略、図9あるいは図11参照)が出力機器として接続される。
収音装置の一例としてのマイクmc1は、1個の無指向性マイクであり、例えば第1の話者(後述参照)が発話する音声を主に収音可能に配置され、第1の話者が発話する音声が収音された音声信号を取得する。同様に、収音装置の一例としてのマイクmc2は、1個の無指向性マイクであり、例えば第1の話者でない他の話者である第2の話者が発話する音声を主に収音可能に配置され、第2の話者が発話する音声が収音された音声信号を取得する。なお、マイクmc1は第2の話者が発話する音声を収音して参照信号を取得し、マイクmc2は第1の話者が発話する音声を収音して主信号を取得してもよい。マイクmc1,mc2は、例えば、高音質小型エレクトレットコンデンサーマイクロホン(ECM:Electret Condenser Microphone)で構成される。
ここでいう第1の話者とは、マイクmc1,mc2が配置された閉空間などに存在する複数人のうち任意の話者であり、本開示に係る実施の形態において優先的にクロストーク成分が抑圧される音声信号の話者である。第2の話者とは、前述した複数人のうち第1の話者とは異なる話者であり、本開示に係る実施の形態において第1の話者の音声に含まれるクロストーク成分が抑圧された後にクロストーク成分が抑圧される音声信号の話者である。
音声認識エンジンは、音響クロストーク抑圧装置5から出力されるクロストーク抑圧後の音声信号を基にして音声認識の処理を行い、その処理結果として音声信号の内容を示すテキストデータを生成する。なお、出力機器として、音声認識エンジンの代わりに、ネットワーク(図示略)を介して音声認識などの処理を行うクラウドサーバ、あるいは音声を出力可能なスピーカが接続されてもよい。また、マイクmc1,mc2および音声認識エンジンは、音響クロストーク抑圧装置5に内蔵されてもよい。
音響クロストーク抑圧装置5は、例えば2人の話者(第1の話者および第2の話者を含む複数人)が会話している場合、同時に発話した2人の声の一方を目的音、他方を妨害音として、妨害音によるクロストーク成分を抑圧して目的音を明瞭(クリア)な音声に変換する。具体的に、音響クロストーク抑圧装置5は、妨害音を含む音声信号を参照信号として後述する所定の信号処理を施すことによって、音響的なクロストーク成分を再現した疑似クロストーク信号(抑圧信号の一例)を生成する。音響クロストーク抑圧装置5は、マイクmc1またはマイクmc2で収音された目的音の音声信号からその疑似クロストーク信号を除去(具体的には減算)することによってクロストーク成分の抑圧後のクリアな(つまり音質が改善された)音声信号を生成する。
図1,図5では、メモリMM1,MM2,MM3,MM4はいずれもDSP10,10Aに含まれるように図示されているが、DSP10,10Aに内蔵されてもよいし、DSP10,10Aとは異なる構成として設けられてもよい。メモリMM1~MM4は、例えばRAM(Random Access Memory)を用いて構成される。
メモリMM1は、例えば、マイクmc1が店員hm1の発話による音声(つまり目的音)を収音する際、過去に顧客hm2が発話した音声(つまり妨害音)のクリアな音声信号を記憶する。メモリMM1に記憶された音声信号は、参照信号として音響的なクロストーク成分の再現(つまり、上述した疑似クロストーク信号の生成)に用いられる。
メモリMM2は、例えば、後述する参照信号更新部20により更新された参照信号A2(例えば、加算器19によりクロストーク成分が抑圧された主信号A1)を記憶する。つまり、詳細は後述するが、加算器19によりクロストーク成分が抑圧された主信号A1は、参照信号A2としてメモリMM2に保存される。
メモリMM3は、例えば、マイクmc2が顧客hm2の発話による音声(つまり目的音)を収音する際、過去に店員hm1が発話した音声(つまり妨害音)のクリアな音声信号を記憶する。メモリMM3に記憶された音声信号は、参照信号として音響的なクロストーク成分の再現(つまり、上述した疑似クロストーク信号の生成)に用いられる。
メモリMM4は、例えば、後述する参照信号更新部30により更新された参照信号B4(例えば、加算器29によりクロストーク成分が抑圧された主信号B3)を記憶する。つまり、詳細は後述するが、加算器29によりクロストーク成分が抑圧された主信号B3は、参照信号B4としてメモリMM4に保存される。
DSP10は、マイクmc1あるいはマイクmc2で収音された音声の音声信号に対して音響的なクロストーク成分の抑圧処理を行う。DSP10は、シングルトーク検出部11、音圧比較部12、妨害音混合率推定部13、信号処理選択部14、切替部15、および抑圧ユニットW1,W2,W3,W4を有する。
シングルトーク検出部11は、マイクmc1およびマイクmc2のそれぞれにより収音された音声信号に基づいて、店員hm1および顧客hm2のうちいずれか一方が発話しているシングルトーク状態を検出する。例えば、シングルトーク検出部11は、発話があった時に、マイクmc1またはマイクmc2で収音される音声のうち、一方の音声の音圧だけが他方の音声の音圧に比べて所定割合(例えば80%以上)以上に大きかった場合、シングルトーク状態を検出したと判断する。また、シングルトーク検出部45は、マイクmc1またはマイクmc2で収音される音声の音色が同じである場合、シングルトーク状態を検出したと判断してもよい。また、マイクmc1が店員hm1の近くに配置され、マイクmc2が顧客hm2の近くに配置された場合、店員hm1が発話するシングルトーク時、マイクmc1で収音される音声の音圧が高く、マイクmc2で収音される音声の音圧が低くなると判断される。これに対し、店員hm1および顧客hm2の双方が発話するダブルトーク時、マイクmc1およびマイクmc2で収音される音声の音圧は、いずれも高くなると判断される。したがって、シングルトーク検出部45は、マイクmc1で収音される音声とマイクmc2で収音される音声の音圧差を基に、シングルトーク状態を検出する。
音圧比較部12は、シングルトーク検出部11で検出された、第1の話者(あるいは第2の話者)である店員hm1が発話するシングルトーク状態で、マイクmc1で収音される音声の音圧とマイクmc2で収音される音声の音圧とを比較する。音圧比較部12は、比較により、音圧比率(つまり、マイクmc2で収音される音声の音圧に対するマイクmc1で収音される音声の音圧の割合を示す値)を得る。同様に、音圧比較部12は、シングルトーク検出部11で検出された、第2の話者(あるいは第1の話者)である顧客hm2が発話するシングルトーク状態で、マイクmc1で収音される音声の音圧とマイクmc2で収音される音声の音圧とを比較する。音圧比較部12は、比較により、音圧比率(つまり、マイクmc1で収音される音声の音圧に対するマイクmc2で収音される音声の音圧の割合を示す値)を得る。
混合率推定部の一例としての妨害音混合率推定部13は、音圧比較部12で得られたシングルトーク時の音圧比率を基に、マイクmc1またはマイクmc2で収音される第2の話者の音声の音声信号(言い換えると、参照信号)に含まれる妨害音の混合率を推定する。ここでいう混合率は、2つ存在し、参照信号に含まれる妨害音(言い換えると、第1の話者の音声信号である主信号)の参照信号に対する割合である。具体的に、第1の混合率(以下、「妨害音混合率A」と称する)は、第1の話者が店員hm1である場合に、第2の話者である顧客hm2が発話する音声の音声信号(参照信号)に含まれる店員hm1が発話する音声(妨害音)の、顧客hm2が発話する音声の音声信号(参照信号)に対する割合である。さらに、第2の混合率(以下、「妨害音混合率B」と称する)は、第2の話者が顧客hm2である場合、第1の話者である店員hm1が発話する音声の音声信号(参照信号)に含まれる顧客hm2が発話する音声(妨害音)の、店員hm1が発話する音声の音声信号(参照信号)に対する割合である。
一例として、音圧比較部12は、第1の話者である店員hm1のみが発話している時にマイクmc1とマイクmc2の音圧比率を比較する。このときマイクmc1:マイクmc2=2:1であったとする。続いて、音圧比較部12は、メイン話者である顧客hm2のみが発話している時にマイクmc1とマイクmc2の音圧比率を比較する。このとき、マイクmc1:マイクmc2=1:10であったとする。これらの音圧比率を分析すると、次のことが分かる。
具体的には、店員hm1が発話した時、マイクmc2で収音される店員hm1の音声の音圧は、1/3と比較的大きい。したがって、マイクmc2が収音する音声を参照信号として使用できるか否かについて、マイクmc2が収音する音声に第1の話者(妨害音)である店員hm1の発話した目的音(主信号)が含まれる割合が高いために店員hm1の音声の混合率が大きくなる。したがって、マイクmc2が収音する音声は参照信号としては不適切である。
一方、顧客hm2が発話した時、マイクmc1で収音される顧客hm2の音声の音圧は、1/11と小さい。したがって、マイクmc1が収音する音声を参照信号として使用できるか否かについて、マイクmc1が収音する音声に第1の話者(妨害音)である顧客hm2の発話した目的音(主信号)が含まれる割合が低いために顧客hm2の音声の混合率が小さくなる。したがって、マイクmc1が収音する音声は参照信号として適切である。
決定部の一例としての信号処理選択部14は、妨害音混合率推定部13によって推定された妨害音混合率A,Bを基に、切替部15に切り替えを指示する。具体的に、信号処理選択部14は、妨害音混合率推定部13により推定された妨害音混合率A,Bの大小の比較に基づいて、マイクmc1あるいはマイクmc2により収音された音声信号のいずれかを主信号(つまり、第1の話者の音声信号)として切替部15に指示する。例えば、妨害音混合率A<妨害音混合率Bの時、マイクmc1により収音された音声信号が主信号となる。一方、妨害音混合率A>妨害音混合率Bの時、マイクmc2により収音された音声信号が主信号となる。
切替部15は、妨害音混合率A<妨害音混合率Bとなる時に入力された主信号となる音声信号を抑圧ユニットW1の主信号取得部16に入力しかつ主信号ではない音声信号を抑圧ユニットW2の主信号取得部21に入力する第1端子15aを有する。切替部15は、妨害音混合率A>妨害音混合率Bとなる時に入力された主信号となる音声信号を抑圧ユニットW3の主信号取得部26に入力しかつ主信号ではない音声信号を抑圧ユニットW4の主信号取得部31に入力する第2端子15bとを有する。切替部15は、信号処理選択部14からの指示にしたがい、入力された主信号の音声信号を第1端子15aに切り替え、この場合には主信号でない音声信号をメモリMM1に保存したり主信号取得部21に出力したりする。同様に、切替部15は、信号処理選択部14からの指示にしたがい、入力された主信号の音声信号を第2端子15bに切り替え、この場合には主信号でない音声信号をメモリMM3に保存したり主信号取得部31に出力したりする。なお、切替部15は、例えば機械的、電気的あるいは磁気的な切替スイッチである。
抑圧ユニットW1は、主信号取得部16、メモリMM1、ディレイ17、フィルタ更新部18、加算器19および参照信号更新部20を有する。抑圧ユニットW1は、マイクmc1で収音された主信号である音声信号M1から、フィルタ更新部18により生成された擬似クロストーク信号を減算することで、クロストーク成分を抑圧できる。抑圧ユニットW1は、クロストーク成分M2cが抑圧された後の音声信号(M1-M2c)を出力するとともに、この音声信号(M1-M2c)を後段の抑圧ユニットW2で使用される参照信号として更新して出力する。なお、クロストーク成分の抑圧は厳密には減算であるが、例えば反転した疑似クロストーク信号を加算する処理であっても良く、減算としても加算としても実現でき、以下同様である。
以後、実施の形態1の説明を分かり易くするために、マイクmc1は店員hm1が発話する音声を収音し、マイクmc2は顧客hm2が発話する音声を収音する場合を例示する。なお、マイクmc1は顧客hm2が発話する音声を収音し、マイクmc2は店員hm1が発話する音声を収音する場合も同様である。
抑圧ユニットW1が抑圧すべきクロストーク成分は、マイクmc1が収音する店員hm1の発話による音声に対し、過去に顧客hm2が発話した声がマイクmc1に到達した音声である。つまり、マイクmc1が収音するクロストーク成分M2cは、顧客hm2が発話した声が、店員hm1に届くまでに要した時間分ずれて混合された音声である。そこで、抑圧ユニットW1は、過去に顧客hm2が発話した声の音声を保持しておき、これに信号処理を施すことによって、この混合された音声を再現した疑似クロストーク信号を生成する。
主信号取得部16は、第1端子15aを介して入力された主信号となる音声信号(具体的には、マイクmc1により収音された音声信号M1)を取得して加算器19に出力する。
参照信号更新部20は、加算器19からの音声信号(つまり、クロストーク成分M2cが抑圧された後の音声信号(M1-M2c)参照)を、後段の抑圧ユニットW2で使用される参照信号として、メモリMM2に保存されている参照信号を更新してメモリMM2に保存する。
図2は、フィルタ更新部18,23,28,33の詳細な構成例を示すブロック図である。フィルタ更新部18,23,28,33はいずれも同一の構成を有するが、図2を参照してフィルタ更新部18,23のペアのそれぞれの構成を例示して説明する。但し、他のフィルタ更新部28,33のペアについても、フィルタ更新部18,23のペアのそれぞれの構成の説明と同様な説明が対応して適用可能である。図2に示すように、フィルタ更新部18は、畳み込み信号生成部F1、更新量計算部F2、ノルム算出部F3、および非線形変換部F4を有する。
フィルタの一例としての畳み込み信号生成部F1は、参照信号から疑似クロストーク信号を生成する処理を行う適応フィルタであり、具体的には、特開2007-19595号公報などに記載されているFIR(Finite Impulse Response)フィルタを用いる。畳み込み信号生成部F1は、マイク(例えばマイクmc1)に対する店員hm1と顧客hm2との間の伝達特性を再現し、参照信号を処理することにより、疑似クロストーク信号を生成する。ただし、店員hm1と顧客hm2とが対面している場所の伝達特性は定常的なものではないため、畳み込み信号生成部F1の特性も随時変化させる必要がある。そこで、フィルタ更新部18によって、FIRフィルタの係数またはタップ数を制御することによって、畳み込み信号生成部F1の特性が、マイクmc1に対する店員hm1と顧客hm2との間の最新の伝達特性に近づくよう変化させる。以下、適応フィルタの更新を、学習と表現することもある。
ここで、前述したように、マイクmc1が収音する店員hm1の音声は、顧客hm2の声がマイクmc1に届く時間分遅延する。マイクmc1が店員hm1の声を収音する場合、顧客hm2の声は、店員hm1が発話する直前にメモリ(例えばメモリMM1)に保持されるため、参照信号には、顧客hm2の声がマイクmc1に届くまでの間の遅延が反映されていない。そのため、ディレイ17によりこの時間差を吸収し、フィルタ更新部18は、マイクmc1で収音されたタイミングに合致する参照信号を得る。すなわち、マイクmc1および顧客hm2間の距離を音速で除算した時間分、参照信号をディレイ17によって遅延させることで、マイクmc1にて実際に収音されたタイミングの再生音を再現する。ディレイ17の値は、マイクmc1と顧客hm2の間の距離を実測し、それを音速で除算することによって得ることができる。
非線形変換部F4は、音響的なクロストーク成分の抑圧後の信号を加算器(例えば加算器19)から入力してその信号に対して非線形変換を行う。この非線形変換は、音響的なクロストーク成分の抑圧後の信号をフィルタの更新すべき方向(正か負)を指し示す情報へと変換する処理である。非線形変換部F4は、非線形変換した後の信号を更新量計算部F2に出力する。
ノルム算出部F3は、過去に顧客hm2が発話した声の音声信号のノルムを算出する。顧客hm2が発話した声の音声信号のノルムとは、過去の所定時間内に顧客hm2が発話した声の音声信号の大きさの総和であり、この時間内の信号の大きさの度合いを示す値である。ノルムは、更新量計算部F2にて、顧客hm2が発話した声の音声の音量の影響を正規化するために用いられる。一般に、音量が大きいほどフィルタの更新量も大きく算出されてしまうため、正規化を行わなくては、畳み込み信号生成部F1の特性が大きな音声の特性に過剰に影響されてしまう。そこで、ディレイ17から出力された音声信号を、ノルム算出部F3が算出したノルムを用いて正規化することで畳み込み信号生成部F1の更新量を安定させている。
更新量計算部F2は、非線形変換部F4とノルム算出部F3とディレイ17とから受け取る信号から、畳み込み信号生成部F1のフィルタ特性の更新量(具体的には、FIRフィルタの係数またはタップ数の更新量)を計算する。具体的には、ディレイ17から受け取る、過去に顧客hm2が発話した声の音声をノルム算出部F3で算出したノルムに基づき正規化する。そして、この過去に顧客hm2が発話した声の音声を正規化した結果に、非線形変換部F4から得られた情報に基づき正または負の情報を付加することで更新量を決定する。更新量計算部F2は、ICA(独立成分解析)アルゴリズムまたはNLMS(Normalized Least Mean Square)アルゴリズムによりフィルタ特性の更新量を計算する。
更新量計算部F2、非線形変換部F4およびノルム算出部F3の処理を随時実行していくことで、フィルタ更新部18は、畳み込み信号生成部F1の特性を、店員hm1の声を収音するマイクmc1と顧客hm2との間の伝達特性に近づけることができる。なお、顧客hm2が発話する音声を目的音とし、店員hm1が発話する音声を妨害音とする場合には、フィルタ更新部18は、畳み込み信号生成部F1の特性を、顧客hm2の声を収音するマイクmc1と店員hm1との間の伝達特性に近づける。
抑圧ユニットW2は、主信号取得部21、メモリMM2、ディレイ22、フィルタ更新部23、加算器24および参照信号更新部25を有する。抑圧ユニットW2は、マイクmc2で収音された主信号である音声信号から、参照信号更新部20がメモリMM2に保存した更新済みの参照信号を用いてフィルタ更新部23により生成された擬似クロストーク信号を減算することで、クロストーク成分を抑圧できる。抑圧ユニットW2は、クロストーク成分が抑圧された後の音声信号を出力するとともに、この音声信号を前段の抑圧ユニットW1で使用される参照信号として更新して出力する。
抑圧ユニットW2が抑圧すべきクロストーク成分は、マイクmc2が収音する顧客hm2の発話による音声に対し、過去に店員hm1が発話した声がマイクmc2に到達した音声である。つまり、マイクmc2が収音するクロストーク成分は、店員hm1が発話した声が、顧客hm2に届くまでに要した時間分ずれて混合された音声である。そこで、抑圧ユニットW2は、過去に店員hm1が発話した声の音声を保持しておき、これに信号処理を施すことによって、この混合された音声を再現した疑似クロストーク信号を生成する。
主信号取得部21は、第1端子15aを介して入力された主信号となる音声信号(具体的には、マイクmc2により収音された音声信号M2)を取得して加算器24に出力する。
参照信号更新部25は、加算器24からの音声信号(つまり、クロストーク成分が抑圧された後の音声信号参照)を、前段の抑圧ユニットW1で使用される参照信号として、メモリMM1に保存されている参照信号を更新してメモリMM1に保存する。なお、図1の複雑化を避けるために、参照信号更新部25とメモリMM1との間の矢印の図示は省略している。
ここで、図2を同様に参照して、抑圧ユニットW1とペアを構成する抑圧ユニットW2のフィルタ更新部23の構成について説明する。図2に示すように、フィルタ更新部23は、畳み込み信号生成部F1、更新量計算部F2、ノルム算出部F3、および非線形変換部F4を有する。
フィルタの一例としての畳み込み信号生成部F1は、参照信号から疑似クロストーク信号を生成する処理を行う適応フィルタであり、具体的には、特開2007-19595号公報などに記載されているFIR(Finite Impulse Response)フィルタを用いる。畳み込み信号生成部F1は、マイク(例えばマイクmc2)に対する店員hm1と顧客hm2との間の伝達特性を再現し、参照信号を処理することにより、疑似クロストーク信号を生成する。ただし、店員hm1と顧客hm2とが対面している場所の伝達特性は定常的なものではないため、畳み込み信号生成部F1の特性も随時変化させる必要がある。そこで、フィルタ更新部23によって、FIRフィルタの係数またはタップ数を制御することによって、畳み込み信号生成部F1の特性が、マイクmc2に対する店員hm1と顧客hm2との間の最新の伝達特性に近づくよう変化させる。
ここで、前述したように、マイクmc2が収音する顧客hm2の音声は、店員hm1の声がマイクmc2に届く時間分遅延する。マイクmc2が顧客hm2の声を収音する場合、店員hm1の声は、顧客hm2が発話する直前にメモリ(例えばメモリMM2)に保持されるため、参照信号には、店員hm1の声がマイクmc2に届くまでの間の遅延が反映されていない。そのため、ディレイ22によりこの時間差を吸収し、フィルタ更新部23は、マイクmc2で収音されたタイミングに合致する参照信号を得る。すなわち、マイクmc2および店員hm1間の距離を音速で除算した時間分、参照信号をディレイ22によって遅延させることで、マイクmc2にて実際に収音されたタイミングの再生音を再現する。ディレイ22の値は、マイクmc2と店員hm1の間の距離を実測し、それを音速で除算することによって得ることができる。
非線形変換部F4は、音響的なクロストーク成分の抑圧後の信号を加算器(例えば加算器24)から入力してその信号に対して非線形変換を行う。この非線形変換は、音響的なクロストーク成分の抑圧後の信号をフィルタの更新すべき方向(正か負)を指し示す情報へと変換する処理である。非線形変換部F4は、非線形変換した後の信号を更新量計算部F2に出力する。
ノルム算出部F3は、過去に店員hm1が発話した声の音声信号のノルムを算出する。店員hm1が発話した声の音声信号のノルムとは、過去の所定時間内に店員hm1が発話した声の音声信号の大きさの総和であり、この時間内の信号の大きさの度合いを示す値である。ノルムは、更新量計算部F2にて、店員hm1が発話した声の音声の音量の影響を正規化するために用いられる。一般に、音量が大きいほどフィルタの更新量も大きく算出されてしまうため、正規化を行わなくては、畳み込み信号生成部F1の特性が大きな音声の特性に過剰に影響されてしまう。そこで、ディレイ22から出力された音声信号を、ノルム算出部F3が算出したノルムを用いて正規化することで畳み込み信号生成部F1の更新量を安定させている。
更新量計算部F2は、非線形変換部F4とノルム算出部F3とディレイ22とから受け取る信号から、畳み込み信号生成部F1のフィルタ特性の更新量(具体的には、FIRフィルタの係数またはタップ数の更新量)を計算する。具体的には、ディレイ22から受け取る、過去に店員hm1が発話した声の音声をノルム算出部F3で算出したノルムに基づき正規化する。そして、この過去に店員hm1が発話した声の音声を正規化した結果に、非線形変換部F4から得られた情報に基づき正または負の情報を付加することで更新量を決定する。更新量計算部F2は、ICA(独立成分解析)アルゴリズムまたはNLMSアルゴリズムによりフィルタ特性の更新量を計算する。
更新量計算部F2、非線形変換部F4およびノルム算出部F3の処理を随時実行していくことで、フィルタ更新部23は、畳み込み信号生成部F1の特性を、顧客hm2の声を収音するマイクmc2と店員hm1との間の伝達特性に近づけることができる。なお、店員hm1が発話する音声を目的音とし、顧客hm2が発話する音声を妨害音とする場合には、フィルタ更新部23は、畳み込み信号生成部F1の特性を、店員hm1の声を収音するマイクmc2と顧客hm2との間の伝達特性に近づける。
抑圧ユニットW3は、主信号取得部26、メモリMM3、ディレイ27、フィルタ更新部28、加算器29および参照信号更新部30を有する。抑圧ユニットW3は、マイクmc2で収音された主信号である音声信号M2から、フィルタ更新部28により生成された擬似クロストーク信号を減算することで、クロストーク成分を抑圧できる。抑圧ユニットW3は、クロストーク成分M1cが抑圧された後の音声信号(M2-M1c)を出力するとともに、この音声信号(M2-M1c)を後段の抑圧ユニットW4で使用される参照信号として更新して出力する。
抑圧ユニットW3が抑圧すべきクロストーク成分は、マイクmc2が収音する顧客hm2の発話による音声に対し、過去に店員hm1が発話した声がマイクmc2に到達した音声である。つまり、マイクmc2が収音するクロストーク成分M1cは、店員hm1が発話した声が、顧客hm2に届くまでに要した時間分ずれて混合された音声である。そこで、抑圧ユニットW3は、過去に店員hm1が発話した声の音声を保持しておき、これに信号処理を施すことによって、この混合された音声を再現した疑似クロストーク信号を生成する。
主信号取得部26は、第2端子15bを介して入力された主信号となる音声信号(具体的には、マイクmc2により収音された音声信号M2)を取得して加算器24に出力する。
参照信号更新部30は、加算器24からの音声信号(つまり、クロストーク成分M1cが抑圧された後の音声信号(M2-M1c)参照)を、後段の抑圧ユニットW4で使用される参照信号として、メモリMM4に保存されている参照信号を更新してメモリMM4に保存する。
抑圧ユニットW4は、主信号取得部31、メモリMM4、ディレイ32、フィルタ更新部33、加算器34および参照信号更新部35を有する。抑圧ユニットW4は、マイクmc1で収音された主信号である音声信号M1から、フィルタ更新部33により生成された擬似クロストーク信号を減算することで、クロストーク成分を抑圧できる。抑圧ユニットW4は、クロストーク成分M2cが抑圧された後の音声信号(M1-M2c)を出力するとともに、この音声信号(M1-M2c)を前段の抑圧ユニットW3で使用される参照信号として更新して出力する。
抑圧ユニットW4が抑圧すべきクロストーク成分は、マイクmc1が収音する店員hm1の発話による音声に対し、過去に顧客hm2が発話した声がマイクmc1に到達した音声である。つまり、マイクmc1が収音するクロストーク成分M2cは、顧客hm2が発話した声が、店員hm1に届くまでに要した時間分ずれて混合された音声である。そこで、抑圧ユニットW4は、過去に顧客hm2が発話した声の音声を保持しておき、これに信号処理を施すことによって、この混合された音声を再現した疑似クロストーク信号を生成する。
主信号取得部31は、第2端子15bを介して入力された主信号となる音声信号(具体的には、マイクmc1により収音された音声信号M1)を取得して加算器34に出力する。
参照信号更新部35は、加算器34からの音声信号(つまり、クロストーク成分M2cが抑圧された後の音声信号(M1-M2c)参照)を、前段の抑圧ユニットW3で使用される参照信号として、メモリMM3に保存されている参照信号を更新してメモリMM3に保存する。
次に、実施の形態1に係る音響クロストーク抑圧装置5の動作を示す。
図3は、実施の形態1に係る音響クロストーク抑圧動作手順例を示すフローチャートである。図4は、クロストーク成分の抑圧動作手順例を示すフローチャートである。図3および図4に示す処理は、主に音響クロストーク抑圧装置5のDSP10により、マイクmc1,mc2で収音される音声の音声信号に対し、1サンプル毎に実行される。
図3において、DSP10は、マイクmc1により収音された第1の話者である店員hm1が発話した音声の音声信号を取得する(St1)。同様に、DSP10は、マイクmc2により収音された第2の話者である顧客hm2が発話した音声の音声信号を取得する(St2)。
シングルトーク検出部11は、ステップSt1,St2のそれぞれで取得された音声信号を基に、店員hm1および顧客hm2のうちいずれか一方が発話しているシングルトーク状態を検出する(St3)。シングルトーク状態が検出された場合、音圧比較部12は、第1の話者(例えば店員hm1)が発話しているシングルトーク状態で、マイクmc1で収音された音声の音圧とマイクmc2で収音された音声の音圧とを比較して音圧比率(上述参照)を得る(St4)。同様に、音圧比較部12は、第2の話者(例えば顧客hm2)が発話しているシングルトーク状態で、マイクmc1で収音された音声の音圧とマイクmc2で収音された音声の音圧とを比較して音圧比率(上述参照)を得る(St4)。
妨害音混合率推定部13は、音圧比較部12によって得られたシングルトーク時のそれぞれの音圧比率を基に、妨害音混合率A,B(上述参照)をそれぞれ推定する(St5)。妨害音混合率Aは、第2の話者(顧客hm2)が発話する音声の音声信号(参照信号)に含まれる第1の話者(店員hm1)が発話する音声(妨害音)の、第2の話者(顧客hm2)が発話する音声の音声信号(参照信号)に対する割合である。妨害音混合率Bは、第1の話者(店員hm1)が発話する音声の音声信号(参照信号)に含まれる第2の話者(顧客hm2)が発話する音声(妨害音)の、第1の話者(店員hm1)が発話する音声の音声信号(参照信号)に対する割合である。
妨害音混合率推定部13は、ステップSt5で得られた妨害音混合率A,Bの大小の比較により、妨害音混合率A,Bのいずれが大きいかを判別する(St6)。
妨害音混合率Aが妨害音混合率Bより小さい場合(St6、YES)、信号処理選択部14は、マイクmc1により収音された音声信号を、切替部15を介して主信号取得部16に送り、マイクmc2により収音された音声信号を、切替部15を介して主信号取得部21に送る。
抑圧ユニットW1は、マイクmc1で収音された主信号である音声信号M1から、フィルタ更新部18により生成された擬似クロストーク信号(クロストーク成分M2c)を減算することで、クロストーク成分を抑圧する(St7)。ステップSt7の詳細を、図4を参照して詳述する。
図4において、抑圧ユニットW1では、フィルタ更新部18は、メモリMM1に記憶されているフィルタ係数を読み込み(St21)、畳み込み信号生成部F1に設定する。畳み込み信号生成部F1は、マイクmc2で収音されディレイ17で遅延された参照信号を用いて、疑似クロストーク信号に相当するクロストーク抑圧信号(抑圧信号の一例)を生成する。すなわち、畳み込み信号生成部F1は、更新量計算部F2で更新される最新のフィルタ係数を用いて、遅延時間分ずれた参照信号に対し畳み込み処理を行い、遅延時間分ずれた参照信号からクロストーク抑圧信号を生成する。また、加算器19は、マイクmc1で収音された音声の音声信号M1から、畳み込み信号生成部F1により生成されたクロストーク抑圧信号を減算し、マイクmc1で収音された音声に含まれる妨害音混合率Aに対応するクロストーク成分M2cを抑圧する(St22)。
DSP10は、フィルタ学習期間であるか否かを判別する(St23)。フィルタ学習期間は、第1の話者である店員hm1に対し、第2の話者である顧客hm2が発話している期間である。また、フィルタ学習期間でない期間は、第2の話者である顧客hm2が発話していない期間である。フィルタ学習期間である場合(St23、YES)、フィルタ更新部18は、それぞれ更新量計算部F2で計算されるフィルタ係数で畳み込み信号生成部F1のフィルタ係数を更新し、メモリMM1に記憶する(St24)。一方、フィルタ学習期間でない場合(St23、NO)、DSP10は、図4に示す本処理を終了する。
ステップSt7の後、DSP10は、抑圧ユニットW1の加算器19からの音声信号(つまり、クロストーク成分M2cが抑圧された後の音声信号(M1-M2c)参照)を、後段の抑圧ユニットW2で使用される参照信号として、メモリMM2に保存されている参照信号を更新してメモリMM2に保存する(St8)。
抑圧ユニットW2は、マイクmc2で収音された主信号である音声信号M2から、参照信号更新部20がメモリMM2に保存した更新済みの参照信号を用いてフィルタ更新部23により生成された擬似クロストーク信号を減算することで、クロストーク成分を抑圧する(St9)。ステップSt9の詳細を、図4を参照して詳述する。
図4において、抑圧ユニットW2では、フィルタ更新部23は、メモリMM2に記憶されているフィルタ係数を読み込み(St21)、畳み込み信号生成部F1に設定する。畳み込み信号生成部F1は、メモリMM2に保存されてディレイ22で遅延された更新済みの参照信号を用いて、疑似クロストーク信号に相当するクロストーク抑圧信号(抑圧信号の一例)を生成する。すなわち、畳み込み信号生成部F1は、更新量計算部F2で更新される最新のフィルタ係数を用いて、遅延時間分ずれた参照信号に対し畳み込み処理を行い、遅延時間分ずれた参照信号からクロストーク抑圧信号を生成する。また、加算器24は、マイクmc2で収音された音声の音声信号M2から、畳み込み信号生成部F1により生成されたクロストーク抑圧信号を減算し、マイクmc2で収音された音声に含まれる妨害音混合率Bに対応するクロストーク成分を抑圧する(St22)。
DSP10は、フィルタ学習期間であるか否かを判別する(St23)。フィルタ学習期間は、第2の話者である顧客hm2に対し、第1の話者である店員hm1が発話している期間である。また、フィルタ学習期間でない期間は、第1の話者である店員hm1が発話していない期間である。フィルタ学習期間である場合(St23、YES)、フィルタ更新部23は、それぞれ更新量計算部F2で計算されるフィルタ係数で畳み込み信号生成部F1のフィルタ係数を更新し、メモリMM2に記憶する(St24)。一方、フィルタ学習期間でない場合(St23、NO)、DSP10は、図4に示す本処理を終了する。
ステップSt9の後、DSP10は、抑圧ユニットW2の加算器24からの音声信号(つまり、クロストーク成分が抑圧された後の音声信号参照)を、前段の抑圧ユニットW1で使用される参照信号として、メモリMM1に保存されている参照信号を更新してメモリMM1に保存する。
一方、妨害音混合率Aが妨害音混合率Bより大きい場合(St6、NO)、信号処理選択部14は、マイクmc2により収音された音声信号を、切替部15を介して主信号取得部26に送り、マイクmc1により収音された音声信号を、切替部15を介して主信号取得部31に送る。
抑圧ユニットW3は、マイクmc2で収音された主信号である音声信号M2から、フィルタ更新部28により生成された擬似クロストーク信号(クロストーク成分M1c)を減算することで、クロストーク成分を抑圧する(St10)。ステップSt10の詳細を、図4を参照して詳述する。
図4において、抑圧ユニットW3では、フィルタ更新部28は、メモリMM3に記憶されているフィルタ係数を読み込み(St21)、畳み込み信号生成部F1に設定する。畳み込み信号生成部F1は、マイクmc1で収音されディレイ27で遅延された参照信号を用いて、疑似クロストーク信号に相当するクロストーク抑圧信号(抑圧信号の一例)を生成する。すなわち、畳み込み信号生成部F1は、更新量計算部F2で更新される最新のフィルタ係数を用いて、遅延時間分ずれた参照信号に対し畳み込み処理を行い、遅延時間分ずれた参照信号からクロストーク抑圧信号を生成する。また、加算器29は、マイクmc2で収音された音声の音声信号M2から、畳み込み信号生成部F1により生成されたクロストーク抑圧信号を減算し、マイクmc2で収音された音声に含まれる妨害音混合率Bに対応するクロストーク成分M1cを抑圧する(St22)。
DSP10は、フィルタ学習期間であるか否かを判別する(St23)。フィルタ学習期間は、第2の話者である顧客hm2に対し、第1の話者である店員hm1が発話している期間である。また、フィルタ学習期間でない期間は、第1の話者である店員hm1が発話していない期間である。フィルタ学習期間である場合(St23、YES)、フィルタ更新部28は、それぞれ更新量計算部F2で計算されるフィルタ係数で畳み込み信号生成部F1のフィルタ係数を更新し、メモリMM3に記憶する(St24)。一方、フィルタ学習期間でない場合(St23、NO)、DSP10は、図4に示す本処理を終了する。
ステップSt10の後、DSP10は、抑圧ユニットW3の加算器29からの音声信号(つまり、クロストーク成分M1cが抑圧された後の音声信号(M2-M1c)参照)を、後段の抑圧ユニットW4で使用される参照信号として、メモリMM4に保存されている参照信号を更新してメモリMM4に保存する(St11)。
抑圧ユニットW4は、マイクmc1で収音された主信号である音声信号M1から、参照信号更新部30がメモリMM4に保存した更新済みの参照信号を用いてフィルタ更新部33により生成された擬似クロストーク信号を減算することで、クロストーク成分を抑圧する(St12)。ステップSt12の詳細を、図4を参照して詳述する。
図4において、抑圧ユニットW4では、フィルタ更新部33は、メモリMM4に記憶されているフィルタ係数を読み込み(St21)、畳み込み信号生成部F1に設定する。畳み込み信号生成部F1は、メモリMM4に保存されてディレイ32で遅延された更新済みの参照信号を用いて、疑似クロストーク信号に相当するクロストーク抑圧信号(抑圧信号の一例)を生成する。すなわち、畳み込み信号生成部F1は、更新量計算部F2で更新される最新のフィルタ係数を用いて、遅延時間分ずれた参照信号に対し畳み込み処理を行い、遅延時間分ずれた参照信号からクロストーク抑圧信号を生成する。また、加算器34は、マイクmc1で収音された音声の音声信号M1から、畳み込み信号生成部F1により生成されたクロストーク抑圧信号を減算し、マイクmc1で収音された音声に含まれる妨害音混合率Bに対応するクロストーク成分を抑圧する(St22)。
DSP10は、フィルタ学習期間であるか否かを判別する(St23)。フィルタ学習期間は、第1の話者である店員hm1に対し、第2の話者である顧客hm2が発話している期間である。また、フィルタ学習期間でない期間は、第2の話者である顧客hm2が発話していない期間である。フィルタ学習期間である場合(St23、YES)、フィルタ更新部33は、それぞれ更新量計算部F2で計算されるフィルタ係数で畳み込み信号生成部F1のフィルタ係数を更新し、メモリMM4に記憶する(St24)。一方、フィルタ学習期間でない場合(St23、NO)、DSP10は、図4に示す本処理を終了する。
ステップSt12の後、DSP10は、抑圧ユニットW4の加算器34からの音声信号(つまり、クロストーク成分が抑圧された後の音声信号参照)を、前段の抑圧ユニットW3で使用される参照信号として、メモリMM3に保存されている参照信号を更新してメモリMM3に保存する。
以上により、実施の形態1に係る音響クロストーク抑圧装置5は、例えば、店員hm1と顧客hm2とが対話する店舗などの閉空間内に配置された2個のマイクmc1,mc2と接続される。音響クロストーク抑圧装置5は、2個のマイクmc1,mc2のそれぞれにより収音された音声信号に基づいて、店舗内に存在する店員hm1または顧客hm2(複数人のうちいずれか一人の一例)が発話しているシングルトーク状態をシングルトーク検出部11で検出する。音響クロストーク抑圧装置5は、第1の話者である店員hm1のシングルトーク状態で2個のマイクmc1,mc2のそれぞれにより収音された音声信号の音圧比率と、第2の話者である顧客hm2のシングルトーク状態で2個のマイクmc1,mc2のそれぞれにより収音された音声信号の音圧比率とに基づいて、第2の話者の音声信号に対して第1の話者の音声信号が含まれる割合を示す妨害音混合率A、第1の話者の音声信号に対して第2の話者の音声信号が含まれる割合を示す妨害音混合率Bをそれぞれ妨害音混合率推定部13で推定する。音響クロストーク抑圧装置5は、妨害音混合率A,Bのそれぞれの推定結果に基づいて、第1の話者の音声信号に含まれる第2の話者の発話による第1のクロストーク成分、および、第2の話者の音声信号に含まれる第1の話者の発話による第2のクロストーク成分のうちいずれの抑圧を行うかを信号処理選択部14で判別する。
これにより、音響クロストーク抑圧装置5は、店舗などの閉空間に存在する複数の話者(例えば店員hm1および顧客hm2)の状況に応じて、いずれの話者が発話した場合でも、その話者(例えば店員hm1)の発話音声に含まれ得る他の話者(例えば顧客hm2)の発話音声による音響的なクロストーク成分を適応的に抑圧できる。したがって、音響クロストーク抑圧装置5は、いずれの話者が主体的に発話した場合でも、その話者(例えば店員hm1)の発話音声の音質を改善できる。
また、信号処理選択部14は、妨害音混合率Aの推定結果が妨害音混合率Bの推定結果より小さいと判定した場合に、第1の話者(例えば店員hm1)の音声信号に含まれる第2の話者(例えば顧客hm2)の発話によるクロストーク成分の抑圧を優先的に行うと決定する。これにより、音響クロストーク抑圧装置5は、参照信号としての適性が高い第2の話者の音声信号を優先的に用いて第1の話者(例えば店員hm1)の音声信号の音質を改善でき、また続けて第2の話者(例えば顧客hm2)の音声信号に含まれる第1の話者(例えば店員hm1)の参照信号を効果的に抑圧できる。
また、信号処理選択部14は、妨害音混合率Aの推定結果が妨害音混合率Bの推定結果より大きいと判定した場合に、第2の話者(例えば顧客hm2)の音声信号に含まれる第1の話者(例えば店員hm1)の発話によるクロストーク成分の抑圧を優先的に行うと決定する。これにより、音響クロストーク抑圧装置5は、参照信号としての適性が高い第1の話者の音声信号を優先的に用いて第2の話者(例えば顧客hm2)の音声信号の音質を改善でき、また続けて第1の話者(例えば店員hm1)の音声信号に含まれる第2の話者(例えば顧客hm2)の参照信号を効果的に抑圧できる。
また、音響クロストーク抑圧装置5は、第2の話者(例えば顧客hm2)の音声信号を参照信号として用いて第1のクロストーク成分を抑圧する第1の抑圧信号を生成する第1のフィルタ(例えばフィルタ更新部18の畳み込み信号生成部F1)を有し、第1のクロストーク成分を抑圧するための第1のフィルタのパラメータを更新し、その更新結果を保持する第1のフィルタ更新部(例えばフィルタ更新部18)と、第1のフィルタにより生成された第1の抑圧信号を用いて、第1の話者の音声信号に含まれる第1のクロストーク成分を抑圧する第1のクロストーク抑圧部(例えば加算器19)と、をさらに備える。これにより、音響クロストーク抑圧装置5は、第1の話者(例えば店員hm1)の発話音声に含まれ得る、顧客hm2による音響的なクロストーク成分を適応的に抑圧でき、店員hm1の発話音声の音質を改善できる。したがって、店舗内の音場が変わっても、例えば店員hm1あるいは顧客hm2が席を外して立ち上がっても、音場の変化に合わせてクロストーク成分の抑圧性能を徐々に高めることができる。
また、音響クロストーク抑圧装置5は、第1のクロストーク成分が抑圧された第1の話者の音声信号を保存する第1のメモリ(例えばメモリMM2)と、第1のメモリに保存された音声信号を参照信号として用いて第2のクロストーク成分を抑圧する第2の抑圧信号を生成する第2のフィルタ(例えばフィルタ更新部23の畳み込み信号生成部F1)を有し、第2のクロストーク成分を抑圧するための第2のフィルタのパラメータを更新し、その更新結果を保持する第2のフィルタ更新部(例えばフィルタ更新部23)と、第2のフィルタにより生成された第2の抑圧信号を用いて、第2の話者の音声信号に含まれる第2のクロストーク成分を抑圧する第2のクロストーク抑圧部(例えば加算器24)と、をさらに備える。これにより、音響クロストーク抑圧装置5は、第1の話者に続けて主に発話する第2の話者(例えば顧客hm2)の発話音声に含まれ得る、店員hm1による音響的なクロストーク成分を適応的に抑圧でき、顧客hm2の発話音声の音質を改善できる。したがって、店舗内の音場が変わっても、例えば店員hm1あるいは顧客hm2が席を外して立ち上がっても、音場の変化に合わせてクロストーク成分の抑圧性能を徐々に高めることができる。
また、音響クロストーク抑圧装置5は、第1の話者(例えば店員hm1)の音声信号を参照信号として用いて第2のクロストーク成分を抑圧する第3の抑圧信号を生成する第3のフィルタ(例えばフィルタ更新部28の畳み込み信号生成部F1)を有し、第2のクロストーク成分を抑圧するための第3のフィルタのパラメータを更新し、その更新結果を保持する第3のフィルタ更新部(例えばフィルタ更新部28)と、第3のフィルタにより生成された第3の抑圧信号を用いて、第2の話者の音声信号に含まれる第2のクロストーク成分を抑圧する第3のクロストーク抑圧部(例えば加算器29)と、をさらに備える。これにより、音響クロストーク抑圧装置5は、第2の話者(例えば顧客hm2)の発話音声に含まれ得る、店員hm1による音響的なクロストーク成分を適応的に抑圧でき、顧客hm2の発話音声の音質を改善できる。したがって、店舗内の音場が変わっても、例えば店員hm1あるいは顧客hm2が席を外して立ち上がっても、音場の変化に合わせてクロストーク成分の抑圧性能を徐々に高めることができる。
また、音響クロストーク抑圧装置5は、第2のクロストーク成分が抑圧された第2の話者の音声信号を保存する第2のメモリ(例えばメモリMM4)と、第2のメモリに保存された音声信号を参照信号として用いて第1のクロストーク成分を抑圧する第4の抑圧信号を生成する第4のフィルタ(例えばフィルタ更新部33の畳み込み信号生成部F1)を有し、第1のクロストーク成分を抑圧するための第4のフィルタのパラメータを更新し、その更新結果を保持する第4のフィルタ更新部(例えばフィルタ更新部33)と、第4のフィルタにより生成された第4の抑圧信号を用いて、第1の話者の音声信号に含まれる第1のクロストーク成分を抑圧する第4のクロストーク抑圧部(例えば加算器34)と、をさらに備える。これにより、音響クロストーク抑圧装置5は、第2の話者に続けて主に発話する第1の話者(例えば店員hm1)の発話音声に含まれ得る、顧客hm2による音響的なクロストーク成分を適応的に抑圧でき、店員hm1の発話音声の音質を改善できる。したがって、店舗内の音場が変わっても、例えば店員hm1あるいは顧客hm2が席を外して立ち上がっても、音場の変化に合わせてクロストーク成分の抑圧性能を徐々に高めることができる。
(実施の形態2)
実施の形態2に係る音響クロストーク抑圧装置5Aでは、任意の方向に指向性を形成可能なマイクアレイを用いる場合を示す。図5は、実施の形態2に係る音響クロストーク抑圧装置5Aの機能的構成例を示すブロック図である。実施の形態2に係る音響クロストーク抑圧装置5Aにおいて、実施の形態1と同一の構成要素については同一の符号を用いることで、その説明を省略し、ここでは相違する部分だけを説明する。音響クロストーク抑圧装置5Aは、実施の形態1と比べ、マイクmc1,mc2の代わりに、マイクアレイmAを含む構成である。
収音装置の一例としてのマイクアレイmAは、複数個(例えば16個)の無指向性のマイクmc1,mc2,…mcN(N:2以上の整数)を有する。DSP10Aに含まれるマイクアレイ処理部41は、実施の形態1で説明した2人の話者(例えば店員hm1および顧客hm2)の方向にそれぞれ指向性を形成(ビームフォーミングの処理)が可能である。なお、マイクアレイ処理部41は、マイクアレイmAに含まれるように設けられてもよい。指向性処理部の一例としてのマイクアレイ処理部41は、マイクアレイmAを構成する複数個のマイクmc1~mcNにより収音された音声信号を用いて所定の方向に指向性を形成できる。なお、この指向性の形成に関する技術は、例えば特開2015-29241号公報に示されるように、公知の技術である。
実施の形態2に係る音響クロストーク抑圧装置5AのDSP10Aは、実施の形態1に係る音響クロストーク抑圧装置5のDSP10と比べ、マイクアレイ処理部41、指向性音声取得部42,43をさらに含む構成である。なお、シングルトーク検出部11Aは、実施の形態1に係るシングルトーク検出部11と作用が異なる。
指向性音声取得部42は、マイクアレイ処理部41によりマイクアレイmAから第1の話者(例えば店員hm1)の方向に指向性が形成された指向性音声信号M1aを取得してシングルトーク検出部11Aに送る。
指向性音声取得部43は、マイクアレイ処理部41によりマイクアレイmAから第2の話者(例えば顧客hm2)の方向に指向性が形成された指向性音声信号M2aを取得してシングルトーク検出部11Aに送る。
シングルトーク検出部11Aは、指向性音声信号M1a,M2aに基づいて、実施の形態1に係るシングルトーク検出部11と同様、店員hm1および顧客hm2のいずれか一方が発話しているシングルトーク状態を検出する。
また、シングルトーク検出部11Aは、メモリ44に記憶された音源方向情報を入力し、シングルトーク状態を検出してもよい。ここでいう音源方向情報とは、例えば全方位カメラ(図示略)により撮影された360度の方位を有する魚眼画像を構成する各画素の位置に、その位置に対応するように算出された音圧値が画素と対応付けて割り当てられて作成された音圧ヒートマップである(図6参照)。この音圧ヒートマップは、音響クロストーク抑圧装置5Aとは異なる外部装置(図示略)によって作成されてメモリ44に予め記憶されている。外部装置は、例えば音圧ヒートマップを生成するため、全方位カメラ付きマイクアレイ(例えばマイクアレイmA)を有する。全方位カメラ付きマイクアレイは、リング状に配置された複数個(例えば16個)のマイク素子を有し、複数個のマイク素子を含むマイクアレイが全方位カメラを囲むように全方位カメラと同軸に設けられた構成である。音源方向の分析は、例えば特開2020-12704号公報に開示されるように、公知の技術である。全方位カメラ付きマイクアレイは、例えば室内の天井あるいは天井近くの壁面に設置された場合、全方位カメラで撮像された画像に対し、各方向に指向性を形成して音声を収音し、各方向の音圧を音圧ヒートマップとして取得する。なお、シングルトーク状態の検出が音源方向情報を用いて行われる場合、音源方向情報として、カメラ映像が用いられてもよい。また、カメラ映像を用いる場合、例えば全方位カメラで撮像された映像の中に口を動かしている人物が1人だけであると、シングルトーク状態が検出されたと判断される。
図6は、音圧ヒートマップが重畳された全方位カメラによる撮像画像GZ1を示す図である。全方位カメラで撮像される画像中の人物が特定されると、マイクアレイは、その方向に指向性を形成し、その人物が発話する声を収音可能である。図6では、全方位カメラ付きマイクアレイは、撮像画像中、店員hm1,顧客hm2を含む範囲でビームフォーミングを行い、音圧ヒートマップを生成する。
シングルトーク検出部11Aは、音圧ヒートマップ上で話者が発話する音声の音圧が所定値以上である箇所が1箇所である場合、シングルトーク状態を検出する。つまり、音圧ヒートマップ上で所定値以上の音圧が現れる箇所(図6では濃いドット表示)が1箇所であると、シングルトーク状態が検出されたと判断される。
次に、実施の形態2に係る音響クロストーク抑圧装置5Aの動作を示す。
図7は、実施の形態2に係る音響クロストーク抑圧動作手順例を示すフローチャートである。図7の説明において、実施の形態1と同一のステップ処理については同一の付すことで、その説明を簡略化あるいは省略し、異なる内容について説明する。図7に示す処理は、主に音響クロストーク抑圧装置5AのDSP10Aにより、マイクmc1,mc2で収音される音声の音声信号に対し、1サンプル毎に実行される。
図7において、DSP10Aは、マイクアレイmAにより収音された音声信号を入力して取得する(St31)。DSP10Aは、ステップSt31で取得された音声信号を用いて、マイクアレイmAから第1の話者(例えば店員hm1)の方向に指向性を形成した指向性音声信号M1aを取得する(St32)。DSP10Aは、ステップSt31で取得された音声信号を用いて、マイクアレイmAから第2の話者(例えば顧客hm2)の方向に指向性を形成した指向性音声信号M2aを取得する(St33)。DSP10Aは、ステップSt32,St33で取得された指向性音声信号M1a,M2aあるいは音源方向情報に基づいて、店員hm1および顧客hm2のうちいずれか一方が発話しているシングルトーク状態を検出する(St3A)。
シングルトーク状態が検出された場合、音圧比較部12は、第1の話者(例えば店員hm1)が発話しているシングルトーク状態で、マイクmc1で収音された音声に基づく指向性音声信号M1aの音圧とマイクmc2で収音された音声に基づく指向性音声信号M2aの音圧とを比較して音圧比率(上述参照)を得る(St4A)。同様に、音圧比較部12は、第2の話者(例えば顧客hm2)が発話しているシングルトーク状態で、マイクmc1で収音された音声に基づく指向性音声信号M1aの音圧とマイクmc2で収音された音声に基づく指向性音声信号M2aの音圧とを比較して音圧比率(上述参照)を得る(St4A)。
妨害音混合率推定部13は、音圧比較部12によって得られたシングルトーク時のそれぞれの音圧比率を基に、妨害音混合率A,Bをそれぞれ推定する(St5A)。妨害音混合率Aは、第2の話者(顧客hm2)が発話する音声に基づく指向性音声信号M2a(参照信号)に含まれる第1の話者(店員hm1)が発話する音声に基づく指向性音声信号M1a(妨害音)の、第2の話者(顧客hm2)が発話する音声に基づく指向性音声信号M2a(参照信号)に対する割合である。妨害音混合率Bは、第1の話者(店員hm1)が発話する音声に基づく指向性音声信号M1a(参照信号)に含まれる第2の話者(顧客hm2)が発話する音声に基づく指向性音声信号M2a(妨害音)の、第1の話者(店員hm1)が発話する音声に基づく指向性音声信号M1a(参照信号)に対する割合である。
妨害音混合率推定部13は、ステップSt5Aで得られた妨害音混合率A,Bの大小の比較により、妨害音混合率A,Bのいずれが大きいかを判別する(St6A)。
妨害音混合率Aが妨害音混合率Bより小さい場合(St6A、YES)、信号処理選択部14は、指向性音声信号M1aを、切替部15を介して主信号取得部16に送り、指向性音声信号M2aを、切替部15を介して主信号取得部21に送る。
抑圧ユニットW1は、指向性音声信号M1aから、フィルタ更新部18により生成された擬似クロストーク信号(クロストーク成分M2ac)を減算することで、クロストーク成分を抑圧する(St7A)。ステップSt7Aの詳細は実施の形態1と同様であるため、説明を省略する。
ステップSt7Aの後、DSP10Aは、抑圧ユニットW1の加算器19からの音声信号(つまり、クロストーク成分M2acが抑圧された後の音声信号(M1a-M2ac)参照)を、後段の抑圧ユニットW2で使用される参照信号として、メモリMM2に保存されている参照信号を更新してメモリMM2に保存する(St8A)。
抑圧ユニットW2は、指向性音声信号M2aから、参照信号更新部20がメモリMM2に保存した更新済みの参照信号を用いてフィルタ更新部23により生成された擬似クロストーク信号を減算することで、クロストーク成分を抑圧する(St9A)。ステップSt9Aの詳細は実施の形態1と同様であるため、説明を省略する。
ステップSt9Aの後、DSP10Aは、抑圧ユニットW2の加算器24からの音声信号(つまり、クロストーク成分が抑圧された後の音声信号参照)を、前段の抑圧ユニットW1で使用される参照信号として、メモリMM1に保存されている参照信号を更新してメモリMM1に保存する。
一方、妨害音混合率Aが妨害音混合率Bより大きい場合(St6A、NO)、信号処理選択部14は、指向性音声信号M2aを、切替部15を介して主信号取得部26に送り、指向性音声信号M1aを、切替部15を介して主信号取得部31に送る。
抑圧ユニットW3は、指向性音声信号M2aから、フィルタ更新部28により生成された擬似クロストーク信号(クロストーク成分M1ac)を減算することで、クロストーク成分を抑圧する(St10A)。ステップSt10Aの詳細は実施の形態1と同様であるため、説明を省略する。
ステップSt10Aの後、DSP10Aは、抑圧ユニットW3の加算器29からの音声信号(つまり、クロストーク成分M1acが抑圧された後の音声信号(M2a-M1ac)参照)を、後段の抑圧ユニットW4で使用される参照信号として、メモリMM4に保存されている参照信号を更新してメモリMM4に保存する(St11A)。
抑圧ユニットW4は、指向性音声信号M1aから、参照信号更新部30がメモリMM4に保存した更新済みの参照信号を用いてフィルタ更新部33により生成された擬似クロストーク信号を減算することで、クロストーク成分を抑圧する(St12A)。ステップSt12Aの詳細は実施の形態1と同様であるため、説明を省略する。
ステップSt12Aの後、DSP10Aは、抑圧ユニットW4の加算器34からの音声信号(つまり、クロストーク成分が抑圧された後の音声信号参照)を、前段の抑圧ユニットW3で使用される参照信号として、メモリMM3に保存されている参照信号を更新してメモリMM3に保存する。
以上により、音響クロストーク抑圧装置5Aは、複数のマイクmc1~mcNのそれぞれを収容する収音装置(例えばマイクアレイmA)により収音された音声信号に基づいて、マイクアレイmAから第1の話者、第2の話者のそれぞれへの方向に異なる指向性を形成する。音響クロストーク抑圧装置5Aは、第1の話者のシングルトーク状態でマイクアレイmAから第1の話者の方向に第1指向性を形成した後の指向性音声信号の音圧と、第2の話者のシングルトーク状態でマイクアレイmAから第2の話者の方向に第2指向性を形成した後の指向性音声信号の音圧とに基づいて、妨害音混合率A,Bを推定する。
これにより、音響クロストーク抑圧装置5Aは、マイクアレイmAの指向性性能を加味して、どちらの指向性音声信号を参照信号として優先的に音響クロストーク抑圧処理を行うかを効率的に決定できる。また、マイクアレイmAから店員hm1,顧客hm2のそれぞれの方向に指向性が形成された音声を用いることで、参照信号として用いられる店員hm1あるいは顧客hm2の音声に混ざる顧客hm2あるいは店員hm1の音声(妨害音)の割合(混合率)を下げることができる。したがって、クロストーク成分の抑圧の性能を実施の形態1に比べて向上できる。
また、音響クロストーク抑圧装置5Aは、閉空間内の第1の話者および第2の話者のそれぞれへの方向を示す音源方向情報(図6参照)を取得し、音源方向情報に基づいてシングルトーク状態を検出する。音響クロストーク抑圧装置5Aは、第1の話者のシングルトーク状態時に第1の話者の指向性が形成された指向性音声信号M1aと第2の話者のシングルトーク状態時に第2の話者の指向性が形成された指向性音声信号M2aとに基づいて、妨害音混合率A,Bを推定する。
これにより、音響クロストーク抑圧装置5Aは、音源方向情報を利用してシングルトーク状態の有無を速やかに検出して妨害音混合率A,Bを迅速に取得できる。また、音響クロストーク抑圧装置5Aは、実施の形態1に比べて、シングルトーク状態の検出処理を軽減することができる。
以上、図面を参照しながら各種の実施の形態について説明したが、本開示はかかる例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例、修正例、置換例、付加例、削除例、均等例に想到し得ることは明らかであり、それらについても当然に本開示の技術的範囲に属するものと了解される。また、発明の趣旨を逸脱しない範囲において、上述した各種の実施の形態における各構成要素を任意に組み合わせてもよい。
例えば、上述した実施の形態1では、妨害音混合率推定部13は、音響クロストーク抑圧装置5が備えるメモリ(図示略)に記憶された位置情報(例えば、第1の話者の位置、第2の話者の位置、マイクmc1,mc2のそれぞれの位置を示す情報)を用いて、妨害音混合率A,Bをそれぞれ推定してもよい。例えば、妨害音混合率推定部13は、第1の位置からマイクmc1の位置までの第1距離と、第2の話者の位置からマイクmc1の位置までの第2距離との比率、および、第1の位置からマイクmc2の位置までの第3距離と、第2の話者の位置からマイクmc2の位置までの第4距離との比率に基づいて、妨害音混合率A,Bをそれぞれ推定する。
例えば、上述した実施の形態1では、2個のマイク、店員hm1向けのマイクmc1と顧客hm向けのマイクmc2が設けられたが、これらのマイクの少なくとも一方は、ヘッドセットに内蔵されてもよい。これにより、参照信号に用いられる音声信号に含まれる妨害音の音圧が下がり、音響クロストークの抑圧が実行され易くなる。
また、音響クロストーク抑圧装置は、ハウリングキャンセラに用いられてもよい。ハウリングキャンセラは、例えばカラオケボックスなどにおいて、自身が発する声がスピーカで再生されてマイクで収音される音を妨害音として抑圧する。また、音響クロストーク抑圧装置は、例えばテレビ会議システムで使用されるエコーキャンセラに用いられてもよい。エコーキャンセラは、例えばテレビ会議システムにおいて、相手の話者が発話する声がスピーカから出力された場合に、上述した相手の会議相手であるユーザの発話する声を収音するマイクにエコーとして入力される相手の音を妨害音として抑圧する。