以下、本発明を実施するための形態について図面を用いて詳細に説明する。本発明は、音源から聴取者の耳までの間の音場を状態空間モデルにて表し、音場の特性を表すインパルス応答に基づいて、状態空間モデルのパラメータである係数行列を決定することを特徴とする。具体的には、本発明は、インパルス応答からブロックハンケル行列を生成して特異値分解し、ブロックハンケル行列を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)とすると、以下の状態方程式が成立する。
ここで、A,B,C,Dは係数行列であり、A∈R
n×nはシステム行列、B∈R
n×mは入力行列、C∈R
2×nは出力行列、D∈R
2×mは直達行列、x(k)∈R
n×2は状態変数、nは状態空間モデルの次数、R
p×qは、p行q列の実数行列からなる集合である。
聴取者の周囲に配置されたスピーカから聴取者の両耳までの音場を考えると、音波は空間を伝搬するため、必ずむだ時間を伴って音源90−1〜90−mを再生するスピーカから受音点に到達する。したがって、係数行列D=0であるとみなすことができる。以下、係数行列D=0とする。
図4は、むだ時間を含む音響システムを状態空間モデルで表した場合の構成を説明するブロック図である。図3に示した構成と図4に示す構成とを比較すると、図4の構成には、図3に示した構成のうち、係数行列Dで表したブロックを示す乗算器、及び、係数行列Cで表したブロックの出力信号と係数行列Dで表したブロックの出力信号との加算演算が行われる加算器が存在しない。
図4に示した状態空間モデルの状態方程式は、以下の式にて表される。
〔ハードウェア構成〕
次に、本発明の実施形態による係数行列算出装置のハードウェア構成について説明する。図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である。
例えば、図1に示したm入力p(p=2)出力の音響システムの場合、BRIR行列g(k)は、以下の式にて表される。
g
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)は、以下の式にて表される。
次数決定部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)ブロックのブロックハンケル行列H
i,jは、以下の式にて表される。
i,jはブロック番号であり、Nは自然数の集合である。
特異値分解部22は、次数決定部20から次数nを入力すると共に、ブロックハンケル行列生成部21からブロックハンケル行列Hi,jを入力する。また、特異値分解部22は、場合によっては、外部から次数nを入力する。
特異値分解部22は、以下の式のように、ブロックハンケル行列H
i,jを特異値分解し、
直交行列U、特異値行列Σ、及び
直交行列Vの転置行列V
Tを求める。
特異値分解部22は、外部から次数nを入力した場合、当該次数nを用いて、次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tをそれぞれ生成する。一方、特異値分解部22は、外部から次数nを入力しない場合、次数決定部20から入力した次数nを用いて、次数nの直交行列Un、特異値行列Σn、及び直交行列Vnの転置行列Vn Tをそれぞれ生成する。
ここで、以下の式のように、ブロックハンケル行列H
i,jを2つの行列の積Γ
iΩ
jで表した場合を想定する。
一方で、ブロックハンケル行列H
i,jは、次数nの
直交行列U
n、特異値行列Σ
n、及び
直交行列V
nの転置行列V
n Tを用いた場合、以下の式にて表される。
が成り立つ。
直交行列U
n∈R
ni×n、特異値行列Σ
n∈R
n×n、
直交行列V
nの転置行列V
n T∈R
mi×nは、それぞれ次数nによって分割される部分行列である。
したがって、ブロックハンケル行列H
i,jは、以下のように近似できる。
前記式(11)(12)(14)より、次数nの場合、以下の式で表される。
このように、ブロックハンケル行列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=Γ^は、以下の式にて表される。
システム行列決定部24は、行列Γ
n+1の第2ブロックから第n+1ブロックまでを抽出して行列Γ
2:nを生成し、これを行列Γ~とする。行列Γ
2:n=Γ~は、以下の式にて表される。
ここで、前記式(17)の両辺において、右側から係数行列Aを乗算すると、以下の式が成り立つ。
したがって、係数行列Aは、以下の式にて表される。
行列Γ^
+は、行列Γ^のムーアペンローズ(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)ブロックのブロックハンケル行列H
i,jに対し、列方向に1ブロックだけシフトしたブロックハンケル行列H
i,j+1を生成する。そして、ブロックハンケル行列生成部21は、ブロックハンケル行列H
i,j+1をシステム行列決定部24に出力する。
特異値分解部22は、次数nの直交行列Un、特異値行列Σn及び直交行列Vnの転置行列Vn Tをシステム行列決定部24に出力する。
システム行列決定部24は、ブロックハンケル行列生成部21からブロックハンケル行列H
i,j+1を入力すると共に、特異値分解部22から次数nの
直交行列U
n、特異値行列Σ
n、及び
直交行列V
nの転置行列V
n Tを入力する。そして、システム行列決定部24は、ブロックハンケル行列H
i,j+1、
直交行列U
nの転置行列U
n T、特異値行列Σ
n、及び
直交行列V
nに基づいて、以下の式にて係数行列Aを決定する。
前記式(22)は、前記式(8)(21)及び以下の式から導出される。
〔制御部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等)、半導体メモリ等の記憶媒体に格納して頒布することもでき、ネットワークを介して送受信することもできる。