JP6920144B2 - バイノーラル再生用の係数行列算出装置及びプログラム - Google Patents

バイノーラル再生用の係数行列算出装置及びプログラム Download PDF

Info

Publication number
JP6920144B2
JP6920144B2 JP2017172347A JP2017172347A JP6920144B2 JP 6920144 B2 JP6920144 B2 JP 6920144B2 JP 2017172347 A JP2017172347 A JP 2017172347A JP 2017172347 A JP2017172347 A JP 2017172347A JP 6920144 B2 JP6920144 B2 JP 6920144B2
Authority
JP
Japan
Prior art keywords
matrix
unit
coefficient
coefficient matrix
impulse response
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017172347A
Other languages
English (en)
Other versions
JP2019050445A (ja
Inventor
敦郎 伊藤
敦郎 伊藤
健太郎 松井
健太郎 松井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Japan Broadcasting Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Japan Broadcasting Corp filed Critical Japan Broadcasting Corp
Priority to JP2017172347A priority Critical patent/JP6920144B2/ja
Publication of JP2019050445A publication Critical patent/JP2019050445A/ja
Application granted granted Critical
Publication of JP6920144B2 publication Critical patent/JP6920144B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stereophonic System (AREA)

Description

本発明は、マルチチャンネル音響をバイノーラル再生するためのパラメータ(係数行列)を算出する係数行列算出装置及びプログラムに関する。
従来、5.1chサラウンド方式、8Kスーパーハイビジョンの音響方式である22.2マルチチャンネル音響(以下、「22.2ch音響」という。)等、ステレオを上回るチャンネル数で音響信号を再生するマルチチャンネル音響方式の機運が高まっている。マルチチャンネル音響方式は、音の3次元的な到来方向を聴取者へ提示するという特徴を持つ。
一方、スマートフォン、タブレット等の端末が普及しており、個人が端末を用いて好みのコンテンツをいつでもどこでも視聴するという新たな視聴スタイルが広まりつつある。この視聴スタイルの一つとして、ヘッドホンを用いた音響信号再生方式がある。
ヘッドホンを用いた音響信号再生方式の例として、音の3次元情報を提示するバイノーラル技術を用いて、22.2ch音響をヘッドホンで再現する手法が知られている(例えば特許文献1を参照)。この手法は、ある音源から人の両耳までの伝搬特性を周波数領域で表現した頭部伝達関数(head-related transfer function:HRTF)を用いるものである。また、22.2ch音響をヘッドホンで再現する処理において、音源信号に対し、HRTFを時間領域で表現した頭部インパルス応答(head-related impulse response:HRIR)を畳み込んでいる。
マルチチャンネル音響のコンテンツを再生する際に、コンテンツ制作者の意図に沿う再生を実現するためには、コンテンツ制作者が想定したチャンネル数及びチャンネル配置と同じフォーマットを有する音響システムを構成することが望ましい。
しかしながら、一般の家庭では、22.2ch音響等の多チャンネルに及ぶスピーカを設置することは困難である。この問題を解決するために、HRIRを畳み込んだ音響信号をヘッドホンで再生するバイノーラル再生方式が知られている。
図19は、バイノーラル再生を説明する図である。バイノーラル再生とは、所望の音像を再現する際に、音源90からの音源信号に対し、フィルタ91−1,91−2にてHRIRright,HRIRleftをそれぞれ畳み込み、畳み込み後の音響信号を聴取者92の耳93−1,93−2にて再現することをいう。
このようなバイノーラル再生を行うことにより、聴取者92は、マルチチャンネル音響システムよりも小規模なシステムにて、仮想音源のスピーカ94からの擬似的なサラウンド音響を享受することができる。特に、近年では、スマートフォン、タブレット等を用いてコンテンツを視聴するスタイルが広まっており、その際の音響再生にはヘッドホンが用いられることが多いため、バイノーラル再生の有用性は非常に高い。
特許第6018485号
前述の特許文献1に記載されているように、音響信号をバイノーラル再生するための処理に、有限インパルス応答フィルタ(finite impulse response filter:FIRフィルタ)が用いられることが多い。
しかしながら、例えば空間の残響情報を含むバイノーラル室内インパルス応答(binaural room impulse response:BRIR)のように、フィルタの応答長が長い(すなわちフィルタ次数が高い)場合には、FIRフィルタを用いて畳み込み演算を行うと、計算コストが高くなり、実時間での処理が難しくなる。
バイノーラル再生を行うためには、音源90からの音源信号に対し、耳93−1,93−2に対応したそれぞれのBRIRを畳み込む必要があるため、チャンネル数×2個のFIRフィルタが必要となる。
したがって、特に22.2ch音響のようにチャンネル数の多いシステムでは、フィルタ次数の高さによる計算コストへの影響が顕著になる。
FIRフィルタの代わりに、高速フーリエ変換を用いた周波数領域での乗算を行うことにより、高速化を実現することができる。しかし、この処理では、フィルタサイズ分のバッファが必要となるため、処理遅延が大きくなるという問題が生じる。
このため、より低いフィルタ次数にて、音源90から聴取者92の耳93−1,93−2までの間の音場情報が欠落しないように、高い精度で音場をモデリングし、かつ遅延の短い処理を実現することが所望されている。
そこで、本発明は前記課題を解決するためになされたものであり、その目的は、音場を状態空間モデル(State Space Model:SSM)でモデリングすることで、マルチチャンネル音響を低計算コストかつ低処理遅延にバイノーラル再生可能な係数行列を算出する係数行列算出装置及びプログラムを提供することにある。
前記目的を達成するために、請求項1の係数行列算出装置は、所定数の音源を再生するスピーカから聴取者へ音響信号が提示される音場を状態空間モデルで表した場合の、当該状態空間モデルのバイノーラル再生用の係数行列を算出する係数行列算出装置において、前記音場の特性を表すインパルス応答を入力し、当該インパルス応答を用いてブロックハンケル行列を生成するブロックハンケル行列生成部と、前記ブロックハンケル行列生成部により生成された前記ブロックハンケル行列を特異値分解し、直交行列を第1行列、特異値行列を第2行列、及び直交行列の転置行列を第3行列として生成し、前記ブロックハンケル行列を第4行列及び第5行列の積で表した場合に、所定次数の前記第1行列及び前記第2行列の積を算出することで、前記所定次数の前記第4行列を生成し、前記所定次数の前記第2行列及び前記第3行列の積を算出することで、前記所定次数の前記第5行列を生成し、前記所定次数よりも1つ高い次数の前記第1行列及び前記第2行列の積を算出することで、前記所定次数よりも1つ高い次数の前記第4行列を生成する特異値分解部と、前記特異値分解部により生成された前記所定次数の前記第4行列及び前記第5行列、並びに前記所定次数よりも1つ高い次数の前記第4行列に基づいて、前記係数行列を決定する係数行列決定部と、を備えたことを特徴とする。
また、請求項2の係数行列算出装置は、請求項1に記載の係数行列算出装置において、さらに、前記音場の特性を表すインパルス応答を入力し、当該インパルス応答を複数の帯域に分割するための所定のカットオフ周波数にて帯域通過フィルタ処理を行う帯域分割部を備え、前記ブロックハンケル行列生成部が、前記帯域分割部により帯域通過フィルタ処理が行われた前記インパルス応答を入力し、当該インパルス応答を用いて前記ブロックハンケル行列を生成する、ことを特徴とする。
また、請求項3の係数行列算出装置は、請求項2に記載の係数行列算出装置において、さらに、前記帯域分割部により帯域通過フィルタ処理が行われた前記インパルス応答に対し、サンプルの間引きを行う間引き部を備え、前記ブロックハンケル行列生成部が、前記間引き部により間引きされた前記インパルス応答を入力し、当該インパルス応答を用いて前記ブロックハンケル行列を生成する、ことを特徴とする。
また、請求項4の係数行列算出装置は、請求項3に記載の係数行列算出装置において、さらに、前記間引き部により間引きされた前記インパルス応答からそのピーク位置を求め、当該ピーク位置の時間をむだ時間として求め、前記インパルス応答から前記むだ時間を分離するむだ時間分離部を備え、前記ブロックハンケル行列生成部が、前記むだ時間分離部により前記むだ時間が分離された前記インパルス応答を入力し、当該インパルス応答を用いて前記ブロックハンケル行列を生成する、ことを特徴とする。
また、請求項5の係数行列算出装置は、請求項1に記載の係数行列算出装置において、さらに、前記音場の特性を表すインパルス応答を入力し、当該インパルス応答からそのピーク位置を求め、当該ピーク位置の時間をむだ時間として求め、前記インパルス応答から前記むだ時間を分離するむだ時間分離部を備え、前記ブロックハンケル行列生成部が、前記むだ時間分離部により前記むだ時間が分離された前記インパルス応答を入力し、当該インパルス応答を用いて前記ブロックハンケル行列を生成する、ことを特徴とする。
さらに、請求項6のプログラムは、コンピュータを、請求項1から5までのいずれか一項に記載の係数行列算出装置として機能させることを特徴とする。
以上のように、本発明によれば、音場を状態空間モデルでモデリングすることで、マルチチャンネル音響を低計算コストかつ低処理遅延にバイノーラル再生可能な係数行列を算出することができる。
m入力2出力の音響システムの例を説明する図である。 2m入力2出力の音響システムの例を説明する図である。 状態空間モデルの構成を説明するブロック図である。 むだ時間を含む音響システムを状態空間モデルで表した場合の構成を説明するブロック図である。 本発明の実施形態による係数行列算出装置のハードウェア構成を示す概略図である。 制御部(係数行列算出部)の処理例を示すフローチャートである。 制御部(係数行列算出部)の構成例を示すブロック図である。 係数行列算出部をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。 係数行列算出部を2m入力2出力の音響システムに適用した場合の例を説明するブロック図である。 信号演算部の構成を示すブロック図である。 係数行列算出部の他の例(第1構成例)を示すブロック図である。 第1構成例の係数行列算出部をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。 係数行列算出部の他の例(第2構成例)を示すブロック図である。 第2構成例の係数行列算出部をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。 係数行列算出部の他の例(第3構成例)を示すブロック図である。 第3構成例の係数行列算出部をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。 係数行列算出部の他の例(第4構成例)を示すブロック図である。 第4構成例の係数行列算出部をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。 バイノーラル再生を説明する図である。
以下、本発明を実施するための形態について図面を用いて詳細に説明する。本発明は、音源から聴取者の耳までの間の音場を状態空間モデルにて表し、音場の特性を表すインパルス応答に基づいて、状態空間モデルのパラメータである係数行列を決定することを特徴とする。具体的には、本発明は、インパルス応答からブロックハンケル行列を生成して特異値分解し、ブロックハンケル行列を2つの行列の積で表した場合の当該2つの行列を、特異値分解の結果に基づいて算出し、所定次数の2つの行列を用いて係数行列を決定する。
これにより、音場を状態空間モデルで表した場合の係数行列は、簡易な処理にて得ることができる。また、時間領域でサンプル毎の演算を行うため、周波数領域での乗算と比べて低遅延での処理を実現することができる。さらに、音場を状態空間モデルで表すことで、音場を多入力多出力の音響システムとみなし、伝達関数の極や零点を共通化してモデリングするから、音場をモデリングする際の次数を抑えることができ、計算コストを下げることができる。したがって、マルチチャンネル音響を、低計算コストかつ低処理遅延にバイノーラル再生することが可能となる。
〔音場の状態空間モデル〕
まず、音源90を再生するスピーカ94から聴取者92の耳93−1,93−2までの間の音場を状態空間モデルで表す場合について説明する。図19を参照して音源90を再生するスピーカ94の位置を入力端とし、聴取者92の耳93−1,93−2である受音点位置を出力端とし、入力端から出力端までの音の伝搬特性を音場とする。
一般に、音源90を再生するスピーカ94から聴取者92の耳93−1,93−2までの間の音場を状態空間モデルで表す手法として、部分空間法が知られている。部分空間法は、スピーカ94から再生して音場へ入力する測定信号と、聴取者92の耳93−1,93−2の位置で観測される応答信号とを用いて、状態空間モデルを直接同定する手法である。また、これらの測定信号及び応答信号から音場のインパルス応答を算出し、インパルス応答から状態空間モデルを同定する特異値分解法等も知られる。
本発明の実施形態では、特異値分解法によるモデリングを例に挙げて説明する。特異値分解法を用いるための前提条件として、HRIR、BRIR等のインパルス応答は既知であるとする。以下の説明では、BRIRを用いることとするが、HRIRの場合も同様である。
以下、音源90を再生するスピーカの数をm、受音点の数をp(受音点が聴取者92の耳93−1,93−2の場合はp=2)とし、BRIRを多入力多出力の音場の特性として、状態空間モデルをモデリングする。同じ再生系であっても、音場の入力数と出力数はモデリングの方法によって異なる。出力数については、バイノーラル再生を想定するため、p=2とする。
図1は、m入力2出力の音響システムの例を説明する図である。音源90−1〜90−mを再生するスピーカ(図示せず)の位置が音場への入力端であり、聴取者92の耳93−1,93−2である受音点位置が出力端であり、この音響システムは、m入力2出力のシステムである。
m個の入力端からp=2個の出力端までの音の伝搬特性は、フィルタ91−11,91−12〜91−m1,91−m2で畳み込みを行うBRIRにて決定される。音源90−1〜90−mを再生するスピーカのそれぞれから聴取者92の耳93−1,93−2までのBRIRは、各スピーカにつき聴取者92の耳93−1,93−2までの2種類存在するため、BRIRの総数は2mとなる。また、BRIRを畳み込んだ信号は、耳93−1,93−2に対応する信号合成部95−1,95−2にてそれぞれ合成される。例えば、22.2ch音響の音場を再現する音響システムは、24入力2出力となる。
図2は、2m入力2出力の音響システムの例を説明する図である。音源90−1〜90−mを再生する音場には、音源90−1〜90−mを再生するスピーカ(図示せず)から聴取者92の耳93−1,93−2への2つの入力端があるとし、聴取者92の耳93−1,93−2である受音点位置が出力端であり、この音響システムは、2m入力2出力のシステムである。
2m個の入力端からp=2個の出力端までの音の伝搬特性は、フィルタ91−11,91−12〜91−m1,91−m2で畳み込みを行うBRIRにて決定される。また、BRIRを畳み込んだ信号は、耳93−1,93−2に対応する信号合成部95−1,95−2にてそれぞれ合成される。例えば、22.2ch音響の音場を再現する音響システムは、48入力2出力となる。
図3は、状態空間モデルの構成を説明するブロック図である。係数行列A,B,C,Dで表した各ブロックは、入力信号と係数行列との積演算が行われる乗算器であり、z-1で表したブロックは、1サンプル分の遅延(サンプルシフト)が行われる遅延器である。
また、このブロック図には、Bで表したブロックの出力信号とAで表したブロックの出力信号との加算演算が行われる加算器が含まれる。さらに、Cで表したブロックの出力信号とDで表したブロックの出力信号との加算演算が行われる加算器が含まれる。
時刻k(k=0,1,2,・・・)について、入力信号をu(k)、出力信号をy(k)とすると、以下の状態方程式が成立する。
Figure 0006920144
ここで、A,B,C,Dは係数行列であり、A∈Rn×nはシステム行列、B∈Rn×mは入力行列、C∈R2×nは出力行列、D∈R2×mは直達行列、x(k)∈Rn×2は状態変数、nは状態空間モデルの次数、Rp×qは、p行q列の実数行列からなる集合である。
聴取者の周囲に配置されたスピーカから聴取者の両耳までの音場を考えると、音波は空間を伝搬するため、必ずむだ時間を伴って音源90−1〜90−mを再生するスピーカから受音点に到達する。したがって、係数行列D=0であるとみなすことができる。以下、係数行列D=0とする。
図4は、むだ時間を含む音響システムを状態空間モデルで表した場合の構成を説明するブロック図である。図3に示した構成と図4に示す構成とを比較すると、図4の構成には、図3に示した構成のうち、係数行列Dで表したブロックを示す乗算器、及び、係数行列Cで表したブロックの出力信号と係数行列Dで表したブロックの出力信号との加算演算が行われる加算器が存在しない。
図4に示した状態空間モデルの状態方程式は、以下の式にて表される。
Figure 0006920144
〔ハードウェア構成〕
次に、本発明の実施形態による係数行列算出装置のハードウェア構成について説明する。図5は、本発明の実施形態による係数行列算出装置のハードウェア構成を示す概略図である。この係数行列算出装置1は、音場を図4に示した状態空間モデルで表した場合に、状態空間モデルのパラメータである係数行列A,B,Cを算出する装置である。
係数行列算出装置1は、CPU11と、プログラム及びテーブル等を記憶するROM及びRAMからなる記憶部12と、アプリケーションのプログラム、テーブル及びデータ等を記憶する記憶装置(例えばハードディスク装置)13と、当該係数行列算出装置1のオペレータによるキーボード及びマウス等の操作に伴い、所定のデータを入力制御する操作/入力部14と、オペレータに対しデータ入力操作等を促すための画面情報を表示器に出力する表示出力インタフェース部15と、インターネット等のネットワークを介してプログラム及びデータの送受信を行う通信部16と、を備えて構成される。これらの構成部は、システムバス17を介して相互に接続される。
記憶装置13には、係数行列算出装置1の基本的な機能を提供するOS(オペレーティングシステム)プログラム、係数行列算出プログラム、及び、係数行列算出プログラムにて使用する各種テーブル及びデータ等が記憶されている。
係数行列算出プログラムは、音場を図4に示した状態空間モデルで表した場合に、状態空間モデルのパラメータである係数行列A,B,Cを算出するためのプログラムである。具体的には、係数行列算出プログラムは、音響信号のインパルス応答を入力し、当該インパルス応答からブロックハンケル行列を生成して特異値分解し、ブロックハンケル行列を2つの行列の積で表した場合に、特異値分解の結果に基づいて所定次数における2つの行列を算出し、2つの行列から係数行列A,B,Cを算出して出力する。
尚、係数行列算出プログラムは、当該係数行列算出装置1が処理を行うときに、CPU11により記憶装置13から記憶部12のRAMに読み出されて実行される。また、各種テーブル及びデータは、係数行列算出プログラムの実行に伴い生成され、CPU11によって記憶部12のRAMから記憶装置13へ書き込まれ、また、係数行列算出プログラムの実行に伴い、CPU11によって記憶装置13から記憶部12のRAMに読み出される。
ここで、OSプログラムは、CPU11により実行され、係数行列算出装置1の基本的な機能として、記憶部12、記憶装置13、操作/入力部14、表示出力インタフェース部15及び通信部16を管理する。そして、このOSプログラムがCPU11によって実行された状態で、前述の係数行列算出プログラムが実行される。
制御部10は、CPU11及び記憶部12により構成され、CPU11が記憶装置13に記憶された係数行列算出プログラムを記憶部12に読み出して実行することにより、係数行列算出装置1全体を統括制御する。図5は、係数行列算出プログラムが記憶装置13から記憶部12に読み出された状態を示している。このように、係数行列算出装置1は、図5に示したハードウェア構成により、制御部10が係数行列算出プログラムに従って各種処理を行う。
〔制御部10の処理の概要〕
次に、図5に示した制御部10の処理の概要について説明する。図6は、制御部10の処理例を示すフローチャートである。制御部10は、後述する係数行列算出部30に相当する。
制御部10は、係数行列A,B,Cを入力したか否かを判定する(ステップS601)。制御部10は、ステップS601において、係数行列A,B,Cを入力したと判定した場合(ステップS601:Y)、ステップS606へ移行する。例えば、ユーザが自らの計算等により係数行列A,B,Cを決定した場合、制御部10は、ユーザにより決定された係数行列A,B,Cを入力する。
一方、制御部10は、ステップS601において、係数行列A,B,Cを入力していないと判定した場合(ステップS601:N)、次数nを入力したか否かを判定する(ステップS602)。制御部10は、ステップS602において、次数nを入力したと判定した場合(ステップS602:Y)、ステップS604へ移行する。例えば、ユーザが自らの計算等により次数nを決定した場合、制御部10は、ユーザにより決定された次数nを入力する。次数nは正の整数である。
制御部10は、ステップS602において、次数nを入力していないと判定した場合(ステップS602:N)、次数nを決定し(ステップS603)、ステップS604へ移行する。次数nの決定処理の詳細については後述する。
制御部10は、ステップS602またはステップS603から移行して、音源90−1〜90−mを再生するスピーカからのBRIRを要素としたBRIR行列g(k)を入力する(ステップS604)。そして、制御部10は、BRIR行列g(k)に基づいて、係数行列A,B,Cを決定する(ステップS605)。係数行列A,B,Cの決定処理の詳細については後述する。
制御部10は、ステップS601またはステップS605から移行して、ステップS601にて入力した係数行列A,B,CまたはステップS605にて決定した係数行列A,B,Cを出力する(ステップS606)。
〔制御部10の構成〕
次に、図5に示した制御部10の構成について説明する。図7は、制御部10の構成例を示すブロック図である。この制御部10は、次数決定部20、ブロックハンケル行列生成部21、特異値分解部22、入出力行列決定部23及びシステム行列決定部24を備えている。前述のとおり、制御部10は、後述する係数行列算出部30に相当する。
制御部10は、音源90−1〜90−mを再生するスピーカからのBRIRを要素とするBRIR行列g(k)を入力する。BRIR行列g(k)は、ユーザにより測定された既知の信号であり、係数行列A,B,Cを用いて以下の式にて表される。前述のとおり、係数行列D=0である。
Figure 0006920144
例えば、図1に示したm入力p(p=2)出力の音響システムの場合、BRIR行列g(k)は、以下の式にて表される。
Figure 0006920144
jd(k)は、時刻kにおけるj番目(j=1,2,・・・,m)の音源90−jであるスピーカから聴取者92のd方向の耳(d=R)または耳(d=L)へのBRIR行列g(k)の係数(要素)である。
同様に、例えば、図2に示した2m入力p(p=2)出力の音響システムの場合、BRIR行列g(k)は、以下の式にて表される。
Figure 0006920144
次数決定部20は、ユーザにより測定された既知のBRIR行列g(k)を入力し、BRIR行列g(k)に基づいて、次数nを決定し、次数nを特異値分解部22に出力する。例えば、次数決定部20は、BRIR行列g(k)の特異値を算出し、特異値から最大特異値及び最小特異値を特定し、最大特異値及び最小特異値の比で表される条件数を算出し、条件数を次数nとして決定する。尚、次数決定部20は、算出した特異値を降順に並べ、所定の閾値を用いた閾値処理を行い、次数nを決定するようにしてもよい。
次数nはその値が大きいほど、モデリングの精度は高くなるが、計算コストが高くなってしまう。このため、次数nは、所定値よりも小さくなるように、例えば打ち切り処理を行って決定されるのが望ましい。
ブロックハンケル行列生成部21は、BRIR行列g(k)を入力し、BRIR行列g(k)を用いてブロックハンケル行列Hi,jを生成する。そして、ブロックハンケル行列生成部21は、ブロックハンケル行列Hi,jを特異値分解部22に出力する。
(i×j)ブロックのブロックハンケル行列Hi,jは、以下の式にて表される。
Figure 0006920144
i,jはブロック番号であり、Nは自然数の集合である。
特異値分解部22は、次数決定部20から次数nを入力すると共に、ブロックハンケル行列生成部21からブロックハンケル行列Hi,jを入力する。また、特異値分解部22は、場合によっては、外部から次数nを入力する。
特異値分解部22は、以下の式のように、ブロックハンケル行列Hi,jを特異値分解し、直交行列U、特異値行列Σ、及び直交行列Vの転置行列VTを求める。
Figure 0006920144
特異値分解部22は、外部から次数nを入力した場合、当該次数nを用いて、次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tをそれぞれ生成する。一方、特異値分解部22は、外部から次数nを入力しない場合、次数決定部20から入力した次数nを用いて、次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tをそれぞれ生成する。
ここで、以下の式のように、ブロックハンケル行列Hi,jを2つの行列の積ΓiΩjで表した場合を想定する。
Figure 0006920144
行列Γi、行列Ωjは以下の式にて表される。
Figure 0006920144
Figure 0006920144
これらの式から、以下の式が成り立つ。
Figure 0006920144
Figure 0006920144
一方で、ブロックハンケル行列Hi,jは、次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tを用いた場合、以下の式にて表される。
が成り立つ。
Figure 0006920144
直交行列Un∈Rni×n、特異値行列Σn∈Rn×n直交行列Vnの転置行列Vn T∈Rmi×nは、それぞれ次数nによって分割される部分行列である。
したがって、ブロックハンケル行列Hi,jは、以下のように近似できる。
Figure 0006920144
前記式(11)(12)(14)より、次数nの場合、以下の式で表される。
Figure 0006920144
Figure 0006920144
このように、ブロックハンケル行列Hi,jを2つの行列の積ΓiΩjで表した場合(前記式(8))、次数nの行列Γn,Ωnは、ブロックハンケル行列Hi,jを特異値分解して得られた次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tで表される(前記式(15)(16))。
前記式(9)を参照して、行列Γiの第1ブロック(の要素)は係数行列Cであるから、次数nの行列Γnの第1ブロックも係数行列Cである。また、前記式(10)を参照して、行列Ωjの第1ブロックは係数行列Bであるから、次数nの行列Ωnの第1ブロックも係数行列Bである。
つまり、特異値分解部22は、前記式(15)のように、次数nの直交行列Un及び特異値行列Σn 1/2の積を算出することで、ブロックハンケル行列Hi,jを2つの行列の積ΓiΩjで表した場合の次数nの行列Γnを生成する。また、特異値分解部22は、前記式(16)のように、次数nの特異値行列Σn 1/2、及び直交行列Vnの転置行列Vn Tの積を算出することで、次数nの行列Ωnを生成する。さらに、特異値分解部22は、前述と同様の処理にて、次数nよりも1つ高い次数(n+1)の行列Γn+1を生成する。
特異値分解部22は、次数nの行列Γn,Ωnを入出力行列決定部23に出力し、次数n+1の行列Γn+1をシステム行列決定部24に出力する。
入出力行列決定部23は、特異値分解部22から次数nの行列Γn,Ωnを入力し、次数nの行列Γnの第1ブロックを抽出して係数行列Cを決定し、次数nの行列Ωnの第1ブロックを抽出して係数行列Bを決定する。そして、入出力行列決定部23は、係数行列B,Cを出力する。
システム行列決定部24は、特異値分解部22から次数n+1の行列Γn+1を入力し、行列Γn+1の第1ブロックから第nブロックまでを抽出して行列Γ1:nを生成し、これを行列Γ^とする。行列Γ1:n=Γ^は、以下の式にて表される。
Figure 0006920144
システム行列決定部24は、行列Γn+1の第2ブロックから第n+1ブロックまでを抽出して行列Γ2:nを生成し、これを行列Γ~とする。行列Γ2:n=Γ~は、以下の式にて表される。
Figure 0006920144
ここで、前記式(17)の両辺において、右側から係数行列Aを乗算すると、以下の式が成り立つ。
Figure 0006920144
したがって、係数行列Aは、以下の式にて表される。
Figure 0006920144
行列Γ^+は、行列Γ^のムーアペンローズ(Moore-Penrose)型擬似逆行列である。つまり、係数行列Aは、行列Γ^のムーアペンローズ型擬似逆行列に行列Γ~を乗算することで得られる。
つまり、システム行列決定部24は、行列Γ^のムーアペンローズ型擬似逆行列Γ^+に行列Γ~を乗算し、係数行列Aを決定する。そして、システム行列決定部24は、係数行列Aを出力する。
以上のように、本発明の実施形態の係数行列算出装置1によれば、制御部10のブロックハンケル行列生成部21は、ユーザにより測定された既知のBRIR行列g(k)を用いてブロックハンケル行列Hi,jを生成する。
特異値分解部22は、ブロックハンケル行列Hi,jを特異値分解し、直交行列U、特異値行列Σ、及び直交行列Vの転置行列VTを求め、所定次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tを生成する。そして、特異値分解部22は、前記式(15)(16)のように、次数nの直交行列Un、特異値行列Σn及び直交行列Vnの転置行列Vn Tを用いて、ブロックハンケル行列Hi,jを2つの行列の積ΓiΩjで表した場合の次数nの行列Γn,Ωnを生成する。また、特異値分解部22は、同様の処理にて、次数(n+1)の行列Γn+1を生成する。
入出力行列決定部23は、次数nの行列Γn,Ωnの第1ブロックを抽出し、係数行列C及び係数行列Bを決定する。システム行列決定部24は、次数n+1の行列Γn+1の第1ブロックから第nブロックまでを抽出し、行列Γ1:n=Γ^を生成し、次数n+1の行列Γn+1の第2ブロックから第n+1ブロックまでを抽出し、行列Γ2:n=Γ~を生成する。そして、システム行列決定部24は、行列Γ^,Γ~に基づいて前記式(19)の演算を行い、係数行列Aを決定する。
このように、音場を状態空間モデルで表した場合の係数行列A,B,Cは、ブロックハンケル行列Hi,jの特異値分解の処理を基本として、次数nの直交行列Un、特異値行列Σn及び直交行列Vnの転置行列Vn Tを、ブロックハンケル行列Hi,jを2つの行列の積ΓiΩjで表した場合の次数nの行列Γn,Ωnに変換することで決定するようにした。これにより、係数行列A,B,Cは、簡易な処理にて得ることができる。
また、BRIR行列g(k)を構成する全てのBRIRを一括して用いるから、BRIR行列g(k)を構成するそれぞれのBRIRに対し、共通の係数行列A,B,Cを決定することができる。
このような係数行列A,B,Cを用いて、状態空間モデルで表した音場を再現し、時間領域でサンプル毎の演算を行うため、周波数領域での乗算と比べて低遅延での処理を実現することができる。また、伝達関数の極や零点を共通化してモデリングするから、音場をモデリングする際の次数を抑えることができる。つまり、マルチチャンネル音響を、低計算コストかつ低処理遅延にバイノーラル再生することが可能となる。
したがって、本発明の実施形態の係数行列算出装置1によれば、音場を状態空間モデルでモデリングすることで、マルチチャンネル音響を低計算コストかつ低処理遅延にバイノーラル再生可能な係数行列A,B,Cを算出することができる。
尚、係数行列算出装置1は、他の処理にて係数行列Aを決定するようにしてもよい。すなわち、システム行列決定部24は、ブロックハンケル行列生成部21からブロックハンケル行列Hi,j+1を入力すると共に、特異値分解部22から次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tを入力し、これらの行列に基づいて、係数行列Aを決定する。
具体的には、ブロックハンケル行列生成部21は、以下の式のように、(i×j)ブロックのブロックハンケル行列Hi,jに対し、列方向に1ブロックだけシフトしたブロックハンケル行列Hi,j+1を生成する。そして、ブロックハンケル行列生成部21は、ブロックハンケル行列Hi,j+1をシステム行列決定部24に出力する。
Figure 0006920144
特異値分解部22は、次数nの直交行列Un、特異値行列Σn及び直交行列Vnの転置行列Vn Tをシステム行列決定部24に出力する。
システム行列決定部24は、ブロックハンケル行列生成部21からブロックハンケル行列Hi,j+1を入力すると共に、特異値分解部22から次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tを入力する。そして、システム行列決定部24は、ブロックハンケル行列Hi,j+1直交行列Unの転置行列Un T、特異値行列Σn、及び直交行列Vnに基づいて、以下の式にて係数行列Aを決定する。
Figure 0006920144
前記式(22)は、前記式(8)(21)及び以下の式から導出される。
Figure 0006920144
〔制御部10(係数行列算出部30)の適用例〕
次に、図7に示した制御部10である係数行列算出部30の適用例について説明する。図8は、係数行列算出部30をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。信号処理装置40は、係数行列算出部30及び信号演算部42を備えている。
係数行列算出部30は、図7に示した制御部10に相当し、m入力2出力の音響システムに対応した前記式(4)のBRIR行列g(k)を入力し、当該BRIR行列g(k)に基づいて、係数行列A,B,Cを生成する。そして、係数行列算出部30は、係数行列A,B,Cを信号演算部42に出力する。
信号演算部42は、音源90−1〜90−mを再生するスピーカからm個の音源信号を入力すると共に、係数行列算出部30から係数行列A,B,Cを入力する。そして、信号演算部42は、m個の音源信号及び係数行列A,B,Cに基づいて、バイノーラル信号の演算を行い、2個の音響信号を生成し、2個の音響信号を聴取者92の耳93−1,93−2に取り付けたヘッドホン96へ出力する。
図9は、係数行列算出部30を2m入力2出力の音響システムに適用した場合の例を説明するブロック図である。信号処理装置40’は、係数行列算出部30’及び信号演算部42’を備えている。
係数行列算出部30’は、図7に示した制御部10に相当し、2m入力2出力の音響システムに対応した前記式(5)のBRIR行列g(k)を入力し、当該BRIR行列g(k)に基づいて、係数行列A,B,Cを生成する。そして、係数行列算出部30’は、係数行列A,B,Cを信号演算部42’に出力する。
信号演算部42’は、音源90−1〜90−mを再生するスピーカからm個の音源信号を入力すると共に、係数行列算出部30’から係数行列A,B,Cを入力する。そして、信号演算部42’は、m個の音源信号及び係数行列A,B,Cに基づいて、バイノーラル信号の演算を行い、2個の音響信号を生成し、2個の音響信号を聴取者92の耳93−1,93−2に取り付けたヘッドホン96へ出力する。
図10は、信号演算部42,42’の構成を示すブロック図である。この信号演算部42,42’の構成は、図4に示した音響システムの状態空間モデルの構成に対応している。信号演算部42,42’は、乗算器50,53,54、加算器51及び遅延器52を備えている。
乗算器50は、入力信号uであるm,2m個の音源信号を入力し、音源信号に係数行列Bを乗算し、乗算結果を加算器51に出力する。加算器51は、乗算器50から乗算結果を入力すると共に、乗算器53から乗算結果を入力し、両方の乗算結果を加算し、加算結果を遅延器52に出力する。
遅延器52は、加算器51から加算結果を入力し、加算結果を1サンプル分遅延させ、1サンプル遅延後の加算結果xを乗算器53,54に出力する。乗算器53は、遅延器52から加算結果xを入力し、加算結果xに係数行列Aを乗算し、乗算結果を加算器51に出力する。
乗算器54は、遅延器52から加算結果xを入力し、加算結果xに係数行列Cを乗算し、乗算結果を出力信号yである2個の音響信号として出力する。
以上のように、信号処理装置40,40’によれば、音場を状態空間モデルで表した信号演算部42,42’を用いるようにしたから、演算は時間領域で行われ、バッファを必要とせず、バイノーラル信号の演算を低遅延で行うことができる。また、音場を状態空間モデルで表すことで、音場をm,2m入力2出力の音響システムとみなすことができるから、音場をフィルタで表現した場合のフィルタ次数を抑えることができ、計算コストを下げることができる。したがって、マルチチャンネル音響を、低計算コストかつ低処理遅延にバイノーラル再生することが可能となる。
〔制御部10(係数行列算出部30)の他の構成例〕
次に、制御部10(係数行列算出部30)の他の構成例について説明する。以下に説明する第1構成例は、BRIR行列g(k)を複数の周波数帯域に分割した場合の帯域毎に、係数行列算出プログラムの処理にて係数行列A,B,Cを決定する例である。第2構成例は、BRIR行列g(k)を複数の周波数帯域に分割し、さらに、BRIR行列g(k)のサンプルの間引きを行った場合の帯域毎に、係数行列算出プログラムの処理にて係数行列A,B,Cを決定する例である。
第3構成例は、BRIR行列g(k)を複数の周波数帯域に分割して間引きし、さらに、BRIR行列g(k)のむだ時間を分離した場合の帯域毎に、係数行列算出プログラムの処理にて係数行列A,B,Cを決定する例である。第4構成例は、BRIR行列g(k)のむだ時間を分離し、係数行列算出プログラムの処理にて係数行列A,B,Cを決定する例である。
(第1構成例:帯域分割後のBRIR行列g(k)にて係数行列A,B,Cを決定)
まず、第1構成例について説明する。前述のとおり、第1構成例は、BRIR行列g(k)を複数の周波数帯域に分割した場合の帯域毎に、係数行列算出プログラムの処理にて係数行列A,B,Cを決定する例である。
図11は、係数行列算出部30の他の例(第1構成例)を示すブロック図である。この係数行列算出部30−1は、帯域分割部31及び係数行列算出部30を備えている。
帯域分割部31は、BRIR行列g(k)を入力し、BRIR行列g(k)に対し、所定のカットオフ周波数にて、BRIR行列g(k)を複数の帯域に分割するための帯域通過フィルタ処理を行う。そして、帯域分割部31は、帯域通過フィルタ処理後のBRIR行列g(k)を係数行列算出部30に出力する。
係数行列算出部30は、帯域分割部31から帯域通過フィルタ処理後のBRIR行列g(k)を入力する。そして、係数行列算出部30は、帯域通過フィルタ処理後のBRIR行列g(k)に基づいて、係数行列算出プログラムの処理にて、係数行列A,B,Cを決定して出力する。
これにより、係数行列算出部30−1にて、所定周波数の帯域についての係数行列A,B,Cが決定される。
図12は、図11に示した第1構成例の係数行列算出部30−1をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。この信号処理装置40−1は、音源信号の周波数帯域を低域、中域及び高域に3分割する例である。信号処理装置40−1は、係数行列算出部30−1a,30−1b,30−1c、帯域分割部41−1,41−2,41−3、信号演算部42−1,42−2,42−3及び信号合成部43を備えている。
帯域分割部41−1は、図11に示した帯域分割部31に対応し、音源90−1〜90−mを再生するスピーカから音源信号を入力し、音源信号に対し、予め設定された低域のカットオフ周波数にて、帯域を分割するための帯域通過フィルタの処理を行う。そして、帯域分割部41−1は、低域のカットオフ周波数による帯域通過フィルタ処理後の音響信号を信号演算部42−1に出力する。
信号演算部42−1は、図10に示したとおり、乗算器50,53,54、加算器51及び遅延器52を備え、図11に示した係数行列算出部30−1(係数行列算出部30−1a)により決定された係数行列A,B,Cを入力する。乗算器50,53,54は、図11に示した帯域分割部31のカットオフ周波数として、帯域分割部41−1と同じ低域のカットオフ周波数を用いた場合に得られた係数行列B,A,Cをそれぞれ用いて乗算処理を行う。
信号演算部42−1は、帯域分割部41−1から低域のカットオフ周波数による帯域通過フィルタ処理後の音響信号を入力し、図8に示した信号演算部42と同じ処理を行い、低域の音響信号を生成して信号合成部43に出力する。
帯域分割部41−2は、図11に示した帯域分割部31に対応し、音源90−1〜90−mを再生するスピーカからからの音源信号を入力し、音源信号に対し、予め設定された中域のカットオフ周波数にて、帯域を分割するための帯域通過フィルタの処理を行う。そして、帯域分割部41−2は、中域のカットオフ周波数による帯域通過フィルタ処理後の音響信号を信号演算部42−2に出力する。
信号演算部42−2は、図10に示したとおり、乗算器50,53,54、加算器51及び遅延器52を備え、図11に示した係数行列算出部30−1(係数行列算出部30−1b)により決定された係数行列A,B,Cを入力する。乗算器50,53,54は、図11に示した帯域分割部31のカットオフ周波数として、帯域分割部41−2と同じ中域のカットオフ周波数を用いた場合に得られた係数行列B,A,Cをそれぞれ用いて乗算処理を行う。
信号演算部42−2は、帯域分割部41−2から中域のカットオフ周波数による帯域通過フィルタ処理後の音響信号を入力し、図8に示した信号演算部42と同じ処理を行い、中域の音響信号を生成して信号合成部43に出力する。
帯域分割部41−3及び信号演算部42−3は、帯域分割部41−1,41−2及び信号演算部42−1,42−2に対応する。信号演算部42−3は、図10に示したとおり、乗算器50,53,54、加算器51及び遅延器52を備え、図11に示した係数行列算出部30−1(係数行列算出部30−1c)により決定された係数行列A,B,Cを入力する。信号演算部42−3は、高域の音響信号を生成して信号合成部43に出力する。
信号合成部43は、信号演算部42−1から低域の音響信号を、信号演算部42−2から中域の音響信号を、信号演算部42−3から高域の音響信号をそれぞれ入力する。そして、信号合成部43は、耳93−1,93−2のそれぞれに対応した低域、中域及び高域の音響信号を合成し、合成した音響信号を耳93−1,93−2に取り付けたヘッドホン96へ出力する。
以上のように、係数行列算出部30−1によれば、BRIR行列g(k)を複数の周波数帯域に分割した場合の帯域毎に、係数行列A,B,Cを決定するようにした。
これにより、前述の係数行列算出部30と同様の効果を奏する。すなわち、音場を帯域毎の状態空間モデルにてモデリングすることで、マルチチャンネル音響を低計算コストかつ低処理遅延にバイノーラル再生可能な係数行列を帯域毎に算出することができる。
一般に、音の性質として、高域の音は、低域に比べ短時間で減衰するため、残響時間が短いことが知られている。このため、高域のBRIR行列g(k)を用いる係数行列算出部30−1cは、低域及び中域のBRIR行列g(k)を用いる係数行列算出部30−1a,30−1bよりも、低い次数nにて係数行列A,B,Cを決定することができる。
(第2構成例:帯域分割及び間引き後のBRIR行列g(k)にて係数行列A,B,Cを決定)
次に、第2構成例について説明する。前述のとおり、第2構成例は、BRIR行列g(k)を複数の周波数帯域に分割し、さらに、BRIR行列g(k)のサンプルの間引きを行った場合の帯域毎に、係数行列算出プログラムの処理にて係数行列A,B,Cを決定する例である。
図13は、係数行列算出部30の他の例(第2構成例)を示すブロック図である。この係数行列算出部30−2は、帯域分割部31、間引き部32及び係数行列算出部30を備えている。
帯域分割部31は、図11に示した帯域分割部31と同じであるから、ここでは説明を省略する。
間引き部32は、帯域分割部31から帯域通過フィルタ処理後のBRIR行列g(k)を入力する。そして、間引き部32は、帯域分割部31のカットオフ周波数に応じて、帯域通過フィルタ処理後のBRIR行列g(k)に対しサンプルの間引き(ダウンサンプリング)を行う。間引き部32は、間引き後のBRIR行列g(k)を係数行列算出部30に出力する。
これにより、間引き後のBRIR行列g(k)のサンプリング周波数が低い場合、係数行列算出部30における次数nを低く抑えることができる。
係数行列算出部30は、間引き部32から間引き後のBRIR行列g(k)を入力し、図7に示した係数行列算出部30と同じ処理を行う。
これにより、係数行列算出部30−2にて、所定周波数の帯域及び間引き後のBRIR行列g(k)についての係数行列A,B,Cが決定される。
図14は、図13に示した第2構成例の係数行列算出部30−2をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。この信号処理装置40−2は、音源信号の周波数帯域を低域、中域及び高域に3分割し、低域及び中域について間引きする例である。信号処理装置40−2は、係数行列算出部30−2a,30−2b,30−2c、帯域分割部41−1,41−2,41−3、間引き部44−1,44−2、信号演算部42−1,42−2,42−3、補間部45−1,45−2、LPF(ローパスフィルタ)46−1、BPF(バンドパスフィルタ)46−2及び信号合成部43を備えている。
帯域分割部41−1,41−2,41−3は、図12に示した帯域分割部41−1,41−2,41−3と同じであるから、ここでは説明を省略する。
間引き部44−1は、図13に示した間引き部32に対応し、帯域分割部41−1から低域のカットオフ周波数による帯域通過フィルタ処理後の音響信号を入力する。そして、間引き部44−1は、帯域分割部41−1の低域のカットオフ周波数に応じて、図13に示した間引き部32と同様に、帯域通過フィルタ処理後の音響信号に対しサンプルの間引きを行う。そして、間引き部44−1は、間引き後の音響信号を信号演算部42−1に出力する。
信号演算部42−1は、図10に示したとおり、乗算器50,53,54、加算器51及び遅延器52を備え、図13に示した係数行列算出部30−2(係数行列算出部30−2a)により決定された係数行列A,B,Cを入力する。
信号演算部42−1は、間引き部44−1から低域かつ間引き後の音響信号を入力し、図8に示した信号演算部42と同じ処理を行い、低域かつ間引き後の音響信号を生成して補間部45−1に出力する。
補間部45−1は、信号演算部42−1から低域かつ間引き後の音響信号を入力し、音響信号に対し、間引き部44−1による間引きとは逆の処理である補間(アップサンプリング)を行う。そして、補間部45−1は、補間後の音響信号をLPF46−1に出力する。これにより、元のサンプリング周波数に戻すことができる。
LPF46−1は、補間部45−1から補間後の音響信号を入力し、補間後の音響信号に対し、帯域分割部41−1と同じ低域のカットオフ周波数のLPF処理を施し、LPF処理後の音響信号を信号合成部43に出力する。
これにより、補間処理により生じる折り返し歪は、帯域分割部41−1と同じカットオフ周波数を用いる帯域通過フィルタのLPF処理により削除することができる。
帯域分割部41−2、間引き部44−2、信号演算部42−2、係数行列算出部30−2b及び補間部45−2は、帯域分割部41−1、間引き部44−1、信号演算部42−1、係数行列算出部30−2a及び補間部45−1に対応し、中域の音響信号を対象として同じ処理を行う。
BPF46−2は、補間部45−2から補間後の音響信号を入力し、補間後の音響信号に対し、帯域分割部41−2と同じ中域のカットオフ周波数のBPF処理を施し、BPF処理後の音響信号を信号合成部43に出力する。
尚、間引き部44−1,44−2により異なるサンプリング周波数でサンプリングされた音響信号同士で同期及び再生が可能な場合は、補間部45−1,45−2、LPF46−1及びBPF46−2は不要である。
帯域分割部41−3、信号演算部42−3及び係数行列算出部30−2cは、図12に示した帯域分割部41−3、信号演算部42−3及び係数行列算出部30−1cと同じであるから、ここでは説明を省略する。高域の音響信号に対して間引き処理は行われず、補間及びLPF処理も行われない。これは、前述のとおり、高域については、音の残響時間が短いため、低い次数nにて係数行列A,B,Cを決定することができるからである。
信号合成部43は、LPF46−1から低域の音響信号を、BPF46−2から中域の音響信号を、信号演算部42−3から高域の音響信号をそれぞれ入力する。そして、信号合成部43は、耳93−1,93−2のそれぞれに対応した低域及び中域の音響信号に対し、間引き及び補間処理によって減少したゲインを増幅させる。信号合成部43は、耳93−1,93−2のそれぞれに対応した増幅後の低域及び中域の音響信号と、耳93−1,93−2のそれぞれに対応した高域の音響信号とを加算して合成し、合成した音響信号を耳93−1,93−2に取り付けたヘッドホン96へ出力する。
具体的には、信号合成部43は、増幅器及び加算器を備えている。増幅器は、LPF46−1から低域の音響信号を入力すると共に、BPF46−2から中域の音響信号を入力し、これらの信号のゲインを増幅させる。そして、増幅器は、増幅後の低域の音響信号及び中域の音響信号を加算器に出力する。加算器は、増幅器から増幅後の低域の音響信号及び中域の音響信号を入力すると共に、信号演算部42−3から高域の音響信号を入力する。そして、加算器は、耳93−1,93−2のそれぞれに対応した低域、中域及び高域の音響信号を加算して合成し、合成した音響信号を耳93−1,93−2に取り付けたヘッドホン96へ出力する。
ここで、間引き部44−1,44−2の間引き係数をそれぞれ1/M1,1/M2、補間部45−1,45−2の補間係数をそれぞれM1,M2とする。M1,M2は正の整数であり、異なる値であってもよいし、同じ値であってもよい。信号合成部43の増幅器は、入力した低域の音響信号をM12倍すると共に、入力した中域の音響信号をM12倍することで、ゲインを増幅させる。例えば、間引き係数を1/2、補間係数を2とすると、増幅器は、入力した音響信号を4倍する。
尚、前述の例では、信号合成部43は、低域の音響信号をM12倍し、中域の音響信号をM22倍する増幅器を備えるようにした。これに対し、増幅器は、信号合成部43に備える代わりに、図14において、帯域分割部41−1,41−2から信号合成部43までの間に備えるようにしてもよい。例えば、増幅器は、帯域分割部41−1,41−2と間引き部44−1,44−2との間に備えるようにしてもよいし、補間部45−1,45−2とLPF46−1及びBPF46−2との間に備えるようにしてもよい。
また、複数の増幅器を用意し、増幅器のそれぞれが、低域の音響信号及び中域の音響信号を増幅するようにしてもよい。例えば、2つの増幅器(第1の増幅器及び第2の増幅器)を用意した場合、第1の増幅器及び第2の増幅器のそれぞれが、低域の音響信号をM1倍に増幅し、中域の音響信号をM2倍に増幅する。第1の増幅器は、例えば帯域分割部41−1,41−2と間引き部44−1,44−2との間に備え、第2の増幅器は、例えば信号合成部43の内部(加算器の前段)に備えるようにする。この場合、低域の音響信号は、第1の増幅器により帯域分割後にM1倍され、第2の増幅器により信号合成部43において加算前にM1倍される。また、中域の音響信号は、第1の増幅器により帯域分割後にM2倍され、第2の増幅器により信号合成部43において加算前にM2倍される。
以上のように、係数行列算出部30−2によれば、BRIR行列g(k)を複数の周波数帯域に分割し間引きした場合の帯域毎に、係数行列A,B,Cを決定するようにした。
これにより、前述の係数行列算出部30と同様の効果を奏する。すなわち、間引きした信号の帯域毎の音場を状態空間モデルにてモデリングすることで、マルチチャンネル音響を低計算コストかつ低処理遅延にバイノーラル再生可能な係数行列A,B,Cを、間引きした信号の帯域毎に算出することができる。
また、低域及び中域のBRIR行列g(k)を用いる係数行列算出部30−2a,30−2bは、間引き後のBRIR行列g(k)に基づいて、係数行列A,B,Cを決定する。この場合、間引き後のBRIR行列g(k)は、短い応答長で表現することができるため、係数行列算出部30−2a,30−2bは、間引きされていないBRIR行列g(k)を用いる場合に比べ、低い次数nにて係数行列A,B,Cを決定することができる。
(第3構成例:帯域分割、間引き及びむだ時間分離後のBRIR行列g(k)にて係数行列A,B,Cを決定)
次に、第3構成例について説明する。前述のとおり、第3構成例は、BRIR行列g(k)を複数の周波数帯域に分割して間引きし、さらに、BRIR行列g(k)のむだ時間を分離した場合の帯域毎に、係数行列算出プログラムの処理にて係数行列A,B,Cを決定する例である。
図15は、係数行列算出部30の他の例(第3構成例)を示すブロック図である。この係数行列算出部30−3は、帯域分割部31、間引き部32、むだ時間分離部33及び係数行列算出部30を備えている。
帯域分割部31は、図11に示した帯域分割部31と同じであり、間引き部32は、図13に示した間引き部32と同じであるから、ここでは説明を省略する。
むだ時間分離部33は、間引き後のBRIR行列g(k)を入力し、BRIR行列g(k)のピーク位置を求め、BRIR行列g(k)の所定の開始時間からピーク位置までの時間をむだ時間として求め、BRIR行列g(k)からむだ時間を分離する。そして、むだ時間分離部33は、むだ時間を分離したBRIR行列g(k)を係数行列算出部30に出力する。
尚、むだ時間分離部33は、入力したBRIR行列g(k)が閾値以上の非0の値となる位置を求め、BRIR行列g(k)の所定の開始時間からピーク位置までの時間をむだ時間として求めるようにしてもよい。
係数行列算出部30は、むだ時間分離部33からむだ時間が分離されたBRIR行列g(k)を入力し、図7に示した係数行列算出部30と同じ処理を行う。
これにより、係数行列算出部30−3にて、所定周波数の帯域、間引き及びむだ時間分離後のBRIR行列g(k)についての係数行列A,B,Cが決定される。
図16は、図15に示した第3構成例の係数行列算出部30−3をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。この信号処理装置40−3は、音源信号の周波数帯域を低域、中域及び高域に3分割し、低域及び中域について間引きし、低域、中域及び高域について遅延時間を補償する例である。信号処理装置40−3は、係数行列算出部30−3a,30−3b,30−3c、帯域分割部41−1,41−2,41−3、間引き部44−1,44−2、遅延時間補償部47−1,47−2,47−3、信号演算部42−1,42−2,42−3、補間部45−1,45−2、LPF46−1、BPF46−2及び信号合成部43を備えている。
帯域分割部41−1,41−2,41−3は、図12に示した帯域分割部41−1,41−2,41−3と同じであり、間引き部44−1,44−2は、図14に示した間引き部44−1,44−2と同じであるから、ここでは説明を省略する。
遅延時間補償部47−1は、図15に示したむだ時間分離部33に対応し、間引き部44−1から間引き後の音響信号を入力すると共に、図15に示した係数行列算出部30−3(係数行列算出部30−3a)のむだ時間分離部33からむだ時間を入力する。そして、遅延時間補償部47−1は、間引き後の音響信号に対し、むだ時間と同じ時間を遅延時間として遅延させる。そして、遅延時間補償部47−1は、遅延時間を補償した音響信号を信号演算部42−1に出力する。
信号演算部42−1は、図10に示したとおり、乗算器50,53,54、加算器51及び遅延器52を備え、図15に示した係数行列算出部30−3(係数行列算出部30−3a)により決定された係数行列A,B,Cを入力する。
信号演算部42−1は、遅延時間補償部47−1から遅延時間が補償された音響信号を入力し、図8に示した信号演算部42と同じ処理を行い、低域、間引き及び遅延時間補償後の音響信号を生成して補間部45−1に出力する。
補間部45−1及びLPF46−1は、図14に示した補間部45−1及びLPF46−1と同じであるから、ここでは説明を省略する。
帯域分割部41−2、間引き部44−2、遅延時間補償部47−2、信号演算部42−2、係数行列算出部30−3b及び補間部45−2は、帯域分割部41−1、間引き部44−1、遅延時間補償部47−1、信号演算部42−1、係数行列算出部30−3a及び補間部45−1に対応し、中域の音響信号を対象として同じ処理を行う。BPF46−2は、図14に示したBPF46−2と同じであるから、ここでは説明を省略する。
帯域分割部41−3及び信号演算部42−3は、図12に示した帯域分割部41−3及び信号演算部42−3と同じであるから、ここでは説明を省略する。また、遅延時間補償部47−3は、遅延時間補償部47−1,47−2に対応する。
係数行列算出部30−3cは、図11に示した係数行列算出部30−1の構成に加え、帯域分割部31と係数行列算出部30との間に、図15に示したむだ時間分離部33を備えている。帯域分割部31及び係数行列算出部30は、図11に示した帯域分割部31及び係数行列算出部30と同じであり、むだ時間分離部33は、図15に示したむだ時間分離部33と同じであるから、ここでは説明を省略する。
このように、高域の音響信号に対して間引き処理は行われず、遅延時間補償処理が行われ、補間及びLPF処理は行われない。
信号合成部43は、図14に示した信号合成部43と同じであるから、ここでは説明を省略する。
以上のように、係数行列算出部30−3によれば、BRIR行列g(k)を複数の周波数帯域に分割し間引きし、さらにむだ時間を分離した場合の帯域毎に、係数行列A,B,Cを決定するようにした。
これにより、前述の係数行列算出部30と同様の効果を奏する。すなわち、間引きしむだ時間を分離した信号の帯域毎の音場を状態空間モデルにてモデリングすることで、マルチチャンネル音響を低計算コストかつ低処理遅延にバイノーラル再生可能な係数行列A,B,Cを、間引きしむだ時間を分離した信号の帯域毎に算出することができる。
一般に、BRIR行列g(k)を構成する各要素であるBRIRには、音源90−1〜90−mを再生するスピーカから耳93−1,93−2へ音波が到達するまでのむだ時間が含まれる。このむだ時間の存在により、状態空間モデルのモデリングの精度である係数行列A,B,Cの精度が低下する可能性がある。むだ時間分離部33によりBRIR行列g(k)からむだ時間が分離され、係数行列算出部30は、むだ時間を含まないBRIR行列g(k)を用いるようにしたから、精度の高い係数行列A,B,Cを算出することができる。
(第4構成例:むだ時間分離後のBRIR行列g(k)にて係数行列A,B,Cを決定)
次に、第4構成例について説明する。前述のとおり、第4構成例は、BRIR行列g(k)のむだ時間を分離し、係数行列算出プログラムの処理にて係数行列A,B,Cを決定する例である。
図17は、係数行列算出部30の他の例(第4構成例)を示すブロック図である。この係数行列算出部30−4は、むだ時間分離部33及び係数行列算出部30を備えている。
むだ時間分離部33は、図15に示したむだ時間分離部33と同じ処理を行い、むだ時間を分離したBRIR行列g(k)を係数行列算出部30に出力する。
係数行列算出部30は、むだ時間分離部33から遅延時間が分離されたBRIR行列g(k)を入力し、図7に示した係数行列算出部30と同じ処理を行う。
これにより、係数行列算出部30−4にて、むだ時間分離後のBRIR行列g(k)についての係数行列A,B,Cが決定される。
図18は、図17に示した第4構成例の係数行列算出部30−4をm入力2出力の音響システムに適用した場合の例を説明するブロック図である。この信号処理装置40−4は、音源信号の遅延時間を補償する例である。信号処理装置40−4は、係数行列算出部30−4、遅延時間補償部47及び信号演算部42を備えている。
遅延時間補償部47は、図17に示したむだ時間分離部33に対応し、音源90−1〜90−mを再生するスピーカから音源信号を入力すると共に、むだ時間分離部33からむだ時間を入力する。そして、遅延時間補償部47は、図16に示した遅延時間補償部47−1,47−2と同様に、音響信号に対し、むだ時間分離部33から入力したむだ時間と同じ時間を遅延時間として遅延させる。そして、遅延時間補償部47は、遅延時間を補償した音響信号を信号演算部42に出力する。
信号演算部42は、図10に示したとおり、乗算器50,53,54、加算器51及び遅延器52を備え、図17に示した係数行列算出部30−4により決定された係数行列A,B,Cを入力する。
信号演算部42は、遅延時間補償部47から遅延時間が補償された音響信号を入力し、図8に示した信号演算部42と同じ処理を行い、遅延時間補償後の音響信号を生成し、音響信号を耳93−1,93−2に取り付けたヘッドホン96へ出力する。
以上のように、係数行列算出部30−4によれば、BRIR行列g(k)からむだ時間を分離し、係数行列A,B,Cを決定するようにした。
これにより、前述の係数行列算出部30と同様の効果を奏する。すなわち、むだ時間を分離した音場を状態空間モデルにてモデリングすることで、マルチチャンネル音響を低計算コストかつ低処理遅延にバイノーラル再生可能な係数行列を算出することができる。
尚、図12の信号処理装置40−1、図14の信号処理装置40−2、図16の信号処理装置40−3及び図18の信号処理装置40−4は、m入力2出力の音響システムを想定して構成されている。信号処理装置40−1等は、2m入力2出力の音響システムを想定した場合も同様の処理を行う。この場合、係数行列算出部30−1〜30−4も同様である。
また、図8及び図9の信号処理装置40,40’は、係数行列算出部30,30’をそれぞれ備えている。図12の信号処理装置40−1は、係数行列算出部30−1a,30−1b,30−1cを備え、図14の信号処理装置40−2は、係数行列算出部30−2a,30−2b,30−2cを備えている。図16の信号処理装置40−3は、係数行列算出部30−3a,30−3b,30−3cを備え、図18の信号処理装置40−4は、係数行列算出部30−4を備えている。
これに対し、信号処理装置40,40’40−1等は、係数行列算出部30,30’,30−1a,30−1b,30−1c等を備えることなく、外部の係数行列算出部30,30’,30−1a,30−1b,30−1c等に相当する係数行列算出装置から係数行列A,B,Cを入力するようにしてもよい。
図8及び図9の信号処理装置40,40’、図12の信号処理装置40−1、図14の信号処理装置40−2、図16の信号処理装置40−3及び図18の信号処理装置40−4のハードウェア構成は、図5に示した係数行列算出装置1と同様に、通常のコンピュータを使用することができる。信号処理装置40,40’,40−1〜40−4は、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインタフェース等を備えたコンピュータによって構成される。信号処理装置40,40’,40−1〜40−4に備えた構成部の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。これらのプログラムは、前記記憶媒体に格納されており、CPUに読み出されて実行される。また、これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもでき、ネットワークを介して送受信することもできる。
1 係数行列算出装置
10 制御部
11 CPU
12 記憶部
13 記憶装置
14 操作/入力部
15 表示出力インタフェース部
16 通信部
17 システムバス
20 次数決定部
21 ブロックハンケル行列生成部
22 特異値分解部
23 入出力行列決定部
24 システム行列決定部
30,30’ 係数行列算出部
31,41 帯域分割部
32,44 間引き部
33 むだ時間分離部
40,40’ 信号処理装置
42,42’ 信号演算部
43,95 信号合成部
45 補間部
46−1 LPF(ローパスフィルタ)
46−2 BPF(バンドパスフィルタ)
47 遅延時間補償部
50,53,54 乗算器
51 加算器
52 遅延器
90 音源
91 フィルタ
92 聴取者
93 耳
94 スピーカ
96 ヘッドホン

Claims (6)

  1. 所定数の音源を再生するスピーカから聴取者へ音響信号が提示される音場を状態空間モデルで表した場合の、当該状態空間モデルのバイノーラル再生用の係数行列を算出する係数行列算出装置において、
    前記音場の特性を表すインパルス応答を入力し、当該インパルス応答を用いてブロックハンケル行列を生成するブロックハンケル行列生成部と、
    前記ブロックハンケル行列生成部により生成された前記ブロックハンケル行列を特異値分解し、直交行列を第1行列、特異値行列を第2行列、及び直交行列の転置行列を第3行列として生成し、前記ブロックハンケル行列を第4行列及び第5行列の積で表した場合に、所定次数の前記第1行列及び前記第2行列の積を算出することで、前記所定次数の前記第4行列を生成し、前記所定次数の前記第2行列及び前記第3行列の積を算出することで、前記所定次数の前記第5行列を生成し、前記所定次数よりも1つ高い次数の前記第1行列及び前記第2行列の積を算出することで、前記所定次数よりも1つ高い次数の前記第4行列を生成する特異値分解部と、
    前記特異値分解部により生成された前記所定次数の前記第4行列及び前記第5行列、並びに前記所定次数よりも1つ高い次数の前記第4行列に基づいて、前記係数行列を決定する係数行列決定部と、
    を備えたことを特徴とする係数行列算出装置。
  2. 請求項1に記載の係数行列算出装置において、
    さらに、前記音場の特性を表すインパルス応答を入力し、当該インパルス応答を複数の帯域に分割するための所定のカットオフ周波数にて帯域通過フィルタ処理を行う帯域分割部を備え、
    前記ブロックハンケル行列生成部は、
    前記帯域分割部により帯域通過フィルタ処理が行われた前記インパルス応答を入力し、当該インパルス応答を用いて前記ブロックハンケル行列を生成する、ことを特徴とする係数行列算出装置。
  3. 請求項2に記載の係数行列算出装置において、
    さらに、前記帯域分割部により帯域通過フィルタ処理が行われた前記インパルス応答に対し、サンプルの間引きを行う間引き部を備え、
    前記ブロックハンケル行列生成部は、
    前記間引き部により間引きされた前記インパルス応答を入力し、当該インパルス応答を用いて前記ブロックハンケル行列を生成する、ことを特徴とする係数行列算出装置。
  4. 請求項3に記載の係数行列算出装置において、
    さらに、前記間引き部により間引きされた前記インパルス応答からそのピーク位置を求め、当該ピーク位置の時間をむだ時間として求め、前記インパルス応答から前記むだ時間を分離するむだ時間分離部を備え、
    前記ブロックハンケル行列生成部は、
    前記むだ時間分離部により前記むだ時間が分離された前記インパルス応答を入力し、当該インパルス応答を用いて前記ブロックハンケル行列を生成する、ことを特徴とする係数行列算出装置。
  5. 請求項1に記載の係数行列算出装置において、
    さらに、前記音場の特性を表すインパルス応答を入力し、当該インパルス応答からそのピーク位置を求め、当該ピーク位置の時間をむだ時間として求め、前記インパルス応答から前記むだ時間を分離するむだ時間分離部を備え、
    前記ブロックハンケル行列生成部は、
    前記むだ時間分離部により前記むだ時間が分離された前記インパルス応答を入力し、当該インパルス応答を用いて前記ブロックハンケル行列を生成する、ことを特徴とする係数行列算出装置。
  6. コンピュータを、請求項1から5までのいずれか一項に記載の係数行列算出装置として機能させるプログラム。
JP2017172347A 2017-09-07 2017-09-07 バイノーラル再生用の係数行列算出装置及びプログラム Active JP6920144B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017172347A JP6920144B2 (ja) 2017-09-07 2017-09-07 バイノーラル再生用の係数行列算出装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017172347A JP6920144B2 (ja) 2017-09-07 2017-09-07 バイノーラル再生用の係数行列算出装置及びプログラム

Publications (2)

Publication Number Publication Date
JP2019050445A JP2019050445A (ja) 2019-03-28
JP6920144B2 true JP6920144B2 (ja) 2021-08-18

Family

ID=65905921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017172347A Active JP6920144B2 (ja) 2017-09-07 2017-09-07 バイノーラル再生用の係数行列算出装置及びプログラム

Country Status (1)

Country Link
JP (1) JP6920144B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7449184B2 (ja) 2020-07-13 2024-03-13 日本放送協会 音場モデリング装置及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2954660B2 (ja) * 1990-05-30 1999-09-27 株式会社東芝 モデル予測制御装置
JPH08182100A (ja) * 1994-10-28 1996-07-12 Matsushita Electric Ind Co Ltd 音像定位方法および音像定位装置
JP6018485B2 (ja) * 2012-11-15 2016-11-02 日本放送協会 頭部伝達関数選択装置、音響再生装置
WO2015058818A1 (en) * 2013-10-22 2015-04-30 Huawei Technologies Co., Ltd. Apparatus and method for compressing a set of n binaural room impulse responses
EP2879408A1 (en) * 2013-11-28 2015-06-03 Thomson Licensing Method and apparatus for higher order ambisonics encoding and decoding using singular value decomposition
US10142755B2 (en) * 2016-02-18 2018-11-27 Google Llc Signal processing methods and systems for rendering audio on virtual loudspeaker arrays

Also Published As

Publication number Publication date
JP2019050445A (ja) 2019-03-28

Similar Documents

Publication Publication Date Title
US8605909B2 (en) Method and device for efficient binaural sound spatialization in the transformed domain
JP5960851B2 (ja) 頭部伝達関数の線形混合による頭部伝達関数の生成のための方法およびシステム
JP6620235B2 (ja) サウンドステージ拡張のための機器及び方法
US7613305B2 (en) Method for treating an electric sound signal
JP7370415B2 (ja) 空間オーディオ信号のクロストーク処理のためのスペクトル欠陥補償
US20220408188A1 (en) Spectrally orthogonal audio component processing
JPH08182100A (ja) 音像定位方法および音像定位装置
JPWO2006095824A1 (ja) 音像定位装置
KR101637407B1 (ko) 부가적인 출력 채널들을 제공하기 위하여 스테레오 출력 신호를 발생시키기 위한 장치와 방법 및 컴퓨터 프로그램
JP6920144B2 (ja) バイノーラル再生用の係数行列算出装置及びプログラム
TW201909656A (zh) 用於串音及次頻帶空間處理之補償
US20230022072A1 (en) Colorless generation of elevation perceptual cues using all-pass filter networks
Cecchi et al. Crossover Networks: A Review
JP2019161358A (ja) 音響信号用の制御器設計装置及びプログラム
JP2000308199A (ja) 信号処理装置および信号処理装置の製造方法
JP2003134596A (ja) 音域拡大方法、音像定位処理方法及びそれらの装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210611

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210629

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210726

R150 Certificate of patent or registration of utility model

Ref document number: 6920144

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250