【文献】
足立 修一,次世代プラント操業に期待される制御技術,計測と制御,日本,社団法人計測自動制御学会,2008年11月10日,第47巻, 第11号,第915-920頁
(58)【調査した分野】(Int.Cl.,DB名)
スピーカに印加された入力信号と前記スピーカから発せられた音声をマイクロフォンで測定して得られた出力信号とを入出力データとして用いて、漸近推定法により頭部伝達関数をモデリングする頭部伝達関数のモデリング装置であって、
前記入出力データを用いて、予め定められた高次のモデル次数を有した頭部伝達関数及び雑音モデルについての高次モデルを予測誤差法により推定する高次モデル推定手段と、
推定された高次モデルと、周波数領域における評価関数である対数尤度関数とを用いて最尤推定値を導出することで前記高次モデルを低次元化する低次元化手段とを備え、
前記低次元化手段は、
前記高次モデルの周波数伝達関数を求める周波数伝達関数算出手段と、
前記対数尤度関数を最小化することで前記高次のモデル次数よりも低い次数の低次モデルの推定値を求める低次モデル推定手段と、
前記低次の次数を更新して前記対数尤度関数を最小化させることを繰り返すことでそれぞれ推定された各頭部伝達関数の低次モデルと、高次参照モデルと、の間の音像定位知覚に係る特徴量の誤差をそれぞれ求め、前記特徴量の誤差が予め定められた許容条件を満たし且つ最低次数となるときの低次モデルを探索する低次モデル探索手段と、
を備えることを特徴とする頭部伝達関数のモデリング装置。
前記音像定位知覚に係る特徴量は、前記頭部伝達関数の周波数特性上のピーク及びノッチであるスペクトラルキューの位置であることを特徴とする請求項1に記載の頭部伝達関数のモデリング装置。
スピーカに印加された入力信号と前記スピーカから発せられた音声をマイクロフォンで測定して得られた出力信号とを入出力データとして用いて、漸近推定法により頭部伝達関数をモデリングする頭部伝達関数のモデリング方法であって、
前記入出力データを用いて、予め定められた高次のモデル次数を有した頭部伝達関数及び雑音モデルについての高次モデルを予測誤差法により推定する高次モデル推定ステップと、
推定された高次モデルと、周波数領域における評価関数である対数尤度関数とを用いて最尤推定値を導出することで前記高次モデルを低次元化する低次元化ステップと、を有し、
前記低次元化ステップは、
前記高次モデルの周波数伝達関数を求める周波数伝達関数算出ステップと、
前記対数尤度関数を最小化することで前記高次のモデル次数よりも低い次数の低次モデルの推定値を求める低次モデル推定ステップと、
前記低次の次数を更新して前記対数尤度関数を最小化させることを繰り返すことでそれぞれ推定された各頭部伝達関数の低次モデルと、高次参照モデルと、の間の音像定位知覚に係る特徴量の誤差をそれぞれ求め、前記特徴量の誤差が予め定められた許容条件を満たし且つ最低次数となるときの低次モデルを探索する低次モデル探索ステップと、
を有することを特徴とする頭部伝達関数のモデリング方法。
【背景技術】
【0002】
頭部伝達関数(HRTF:Head-Related Transfer Function)とは、音響伝達関数であって、具体的には、模擬として頭がない状態での頭部中心に相当する位置から、頭外音源位置を経て、両耳鼓膜位置もしくは外耳道入口までの音響伝達関数のことである。
頭部伝達関数のモデリングとは、頭部伝達関数を有理多項式又はその比として表すことである。頭部伝達関数およびそのモデルは、音響信号の音像を空間内に擬似的に配置させるような音像定位技術など応用は多岐に渡る。
【0003】
一般に、システムの伝達関数G(q)は、システムのインパルス応答g(k)のz変換で定義され、次の式(1)のように表わすことができる。ここで、qはシフトオペレータである。
【0004】
【数1】
【0005】
式(1)は無限インパルス応答(IIR:Infinite impulse response)モデルを表している。それに対し、一般的に、頭部伝達関数は、そのインパルス応答が十分に収束するような次数Mで打ち切ることで、有理多項式を用いて次の式(2)のように、有限インパルス応答(FIR:finite impulse response)モデルとしてモデリングされる。
【0006】
【数2】
【0007】
頭部伝達関数のインパルス応答は、スピーカから入力信号を印加し、例えばダミーヘッドの両耳に内蔵したマイクロフォンにより収音を行なうことで測定される。例えば、サンプリング周波数48kHzで測定された場合、十分な収束が得られる長さは、およそ512サンプルである。そのため、測定信号は、このサンプル数と同じか又はやや長い矩形窓により切り出され、頭部伝達関数は512次や1048次等の高次有限インパルス応答モデルとなる。
【0008】
頭部伝達関数には、例えば両耳間時間差やレベル差、周波数特性上のスペクトラルキューなど、音像定位知覚に係る多くの特徴量が含まれる。十分に高次の有限インパルス応答モデルによる頭部伝達関数のモデリングにおいて、これらの特徴量が十分に保存されていることは、音像定位実験により確認されている。頭部伝達関数の同定において、スペクトラルキューなどは、音像定位知覚の手がかりとなる。
【0009】
従来、頭部伝達関数のモデリング法が知られている(例えば、非特許文献1,2、特許文献1,2参照)。
非特許文献1には、頭部伝達関数のモデリング法として、極零(pole/zero)モデルにより有理多項式の比で頭部伝達関数をモデリングする方法が開示されている。非特許文献1には、極零モデルが次の式(3)で定義されることが記載されている。
【0010】
【数3】
【0011】
式(3)において、Cは定数、p
kは極、z
kは零点であり、このうち極は共振に対応し、零点は時間遅れや反共振に対応する。
【0012】
前記した式(2)で表される有限インパルス応答モデルでは零点のみを用いてインパルス応答を表現している。これに対して、例えば式(3)に示す極零モデルのように零点だけではなく極を用いてモデリングすることで、より少ないパラメータ数で頭部伝達関数を表現することができる。非特許文献1に記載の技術では、極零モデルのパラメータを導出する際に、一次モデルとして有限インパルス応答モデルを求め、それぞれのインパルス応答の誤差、すなわち出力誤差の二乗和を最小化することで、パラメータを導出する。
【0013】
非特許文献2に記載された技術では、さらに、共振を方位によらないものとして、モデルの極を各方位の頭部伝達関数間で共通化した、共通極零(CAPZ:Common-acoustical-pole and zero)モデルによるモデリングを行っている。非特許文献2には、音源受音点位置の位置ベクトルをr
jとしたとき、共通極零モデルは次の式(4)で定義されることが記載されている。
【0014】
【数4】
【0015】
式(4)において、極p
kが方向に依存せず、零点z
kのみが方向に応じて変化するため、このモデルでは、音源や受音点の変化に応じて変えるパラメータの個数を削減することができる。非特許文献2に記載の技術では、共通極零モデルを導出する際に、複数方向の頭部伝達関数の有限インパルス応答モデルを一次モデルとして求め、その近似として共通極零モデルを導出する。非特許文献2には、このとき、評価関数は、各方位の有限インパルス応答モデルと共通極零モデルの間のインパルス応答の誤差、すなわち出力誤差ε(r
j,k)を用いて次の式(5)のように表わされることが記載されている。
【0016】
【数5】
【0017】
式(5)において、Rは方向数、Mは有限インパルス応答モデルの次数である。この式(5)におけるJを最小化することにより、共通極零モデルのパラメータは導出される。
【0018】
また、特許文献1に記載された技術は、複数の頭部伝達関数の有限インパルス応答モデルから主成分分析を用いて抽出した基本ベクトルを、バランスモデル近似技術により極零モデルとして模擬する方法に関するものである。この基本ベクトルは、一つの非方向平均基本ベクトルと複数の方向性基本ベクトルから構成される。ここで、非方向平均基本ベクトルとは、モデリングされた全方向の頭部伝達関数の特徴のうち、音源の方向とは無関係に決定される特徴を代表する基本ベクトルを意味する。一方で、方向性基本ベクトルは、音源の方向により決定される特徴を代表とする基本ベクトルである。特許文献1に記載された技術は、主成分分析とバランスモデル近似技術を用いることで、極零モデルとして少ないパラメータで頭部伝達関数を模擬することを可能としている。
【0019】
また、特許文献2には、頭部伝達関数を表わすパラメータを生成する方法として、頭部インパルス応答信号を周波数領域においてサブバンドに分割し、各サブバンドのパラメータを求める方法が開示されている。この方法では、高速フーリエ変換ビンのグループ化により、周波数領域において少なくとも2つのサブバンドに分割され、サブバンドの信号レベルの二乗平均平方根に基づいて、パラメータが決定される。特許文献2に記載された技術は、サブバンドに分割することにより、頭部伝達関数を用いた演算処理量の低減を可能としている。
【発明を実施するための形態】
【0030】
以下、図面を参照して本発明の頭部伝達関数のモデリング装置を実施するための形態(以下「実施形態」という)について詳細に説明する。
【0031】
図1に示す頭部伝達関数のモデリング装置1は、スピーカに印加された入力信号とスピーカから発せられた音声をマイクロフォンで測定して得られた出力信号とを入出力データとして用いて、漸近推定法により頭部伝達関数をモデリングするものである。
【0032】
<入出力データ>
図1に示す入出力データを事前に測定する際には、
図2に例示するように音響無響室において、所定方向に設置した例えば1台のスピーカSPに対して入力信号u(k)を印加する。ここで、kは、音声の連続時間信号のサンプリングを行うときの時間間隔(サンプリング周期)に対応付けられたサンプルを識別する変数である。kは離散値であり、その個数がデータ数である。そして、スピーカSPから発せられた音声を、ダミーヘッドDの耳に当たる位置に設置したマイクロフォンで測定する。このときに測定された信号を出力信号y(k)とする。
【0033】
図2では、スピーカSPをダミーヘッドDにとっての正面から右90°方向(つまり左270°方向)に設置してダミーヘッドDの右耳に向けているが、これは一例である。ダミーヘッドDを水平面内でスピーカSPに対して所定角度だけ相対的に回転させることで、様々な方向から左耳及び右耳に設置したマイクロフォンで音声を測定することができる。なお、スピーカSPとダミーヘッドDとの相対的な距離や高さも可変である。
【0034】
入力信号u(k)としては、擬似白色信号であるM系列信号を用いることができる。
一例として、
図3(a)にシフトレジスタ長が15(サンプル数=2
15−1)のM系列信号の波形を示す。なお、
図3(a)には、M系列信号の途中の一部分(100サンプル分)の波形を示した。また、
図3(b)には、ダミーヘッドDの正面から左30°方向に設置したスピーカSPに、そのM系列を印加したときに測定された出力信号y(k)の一部波形を示す。ただし、
図3(a)及び
図3(b)に示す波形はサンプリング周波数を48kHzとした場合に得られたものである。
【0035】
<漸近推定法>
漸近推定法(asymptotic method)は、例えばプラント制御のためのモデリング法として公知の手法である。漸近推定法では、まず、システム同定実験によって得られた入出力データに対して雑音モデルを考慮した高次(例えばn次とする)モデルのパラメータを推定し、その後に、漸近理論に基づき周波数特性を考慮して低次元化を行なう。
【0036】
[頭部伝達関数のモデリング装置の構成]
頭部伝達関数のモデリング装置1(以下、単にモデリング装置1という)は、一般的なコンピュータと同様に、例えば、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、入出力インタフェース等を備えている。ここでは、モデリング装置1は、
図1に示すように、高次モデル推定手段10と、高次数設定手段11と、低次元化手段20と、を備えている。
【0037】
高次モデル推定手段10は、入出力データを用いて、予め定められた高次(n次)のモデル次数を有した頭部伝達関数及び雑音モデルについての高次モデルを予測誤差法により推定するものである。
【0038】
ここで、雑音モデルをもつモデルとしては、
図4(b)に示すARX(AutoRegressive eXogenous)モデル等の公知のモデルを用いることができる。ARXモデルでは雑音モデル(図中の1/A(q))を考慮しており、本実施形態では、マイクロフォンで測定された出力信号に雑音の影響が含まれていることとして扱う。
【0039】
なお、従来の一般的な頭部伝達関数のモデリングは、
図4(a)に示すFIRモデルを用いており、音像定位にはFIRフィルタが実装されてきた。FIRモデルでは雑音モデル(1/A(q))を考慮しておらず、同期加算等の前処理を行うことで、雑音の影響が含まれていないものとした信号を扱っている。
【0040】
モデリング装置1は、後の処理で低次元化を行なうことを前提にして、高次モデル推定手段10によって、高次モデルのパラメータを推定する。ここで、高次モデルのパラメータを推定するのは、一般的に、モデルが高次であるほど精度が良くなるためである。なお、雑音モデルを考慮しない従来技術では、頭部伝達関数を例えば512次や1048次等の高次有限インパルス応答モデルとしていた。本実施形態では、高次の次数としては、経験的に三桁の数値を想定している。
【0041】
また、本実施形態において前提とする予測誤差法とは、予測値に基づく予測誤差から構成される評価規範を最小化する推定値を計算する、パラメータ推定法の総称である。この予測誤差法としてはシステム同定に用いられる一般的な手法を用いることができる。予測誤差の大きさの測度として2次関数を用いると、予測誤差法は最小二乗法となる。
ここでは、高次モデル推定手段10は、高次ARXモデルを用いてシステム同定理論に基づき最小二乗法でパラメータを推定することとする。
【0042】
高次モデル推定手段10は、予め測定された入出力データ{u(k),y(k);k=1,2,…,N}によって、次の式(6)で定義されるARXモデルのパラメータを推定する。ここで、u(k)は入力信号、y(k)は出力信号、Nはデータ数である。
【0044】
ただし、式(6)においてA
h(q)、B
h(q)は、システムを構成する要素(以下、単にモデルと呼ぶ)であり、パラメータ{a
i},{b
i}(i=1〜n)を用いて、それぞれ以下の式(7)、式(8)で表される。
【0047】
また、前記した式(6)において、外乱w(k)としては、平均値が0で分散がσ
2wである正規性白色雑音を仮定している。
式(8)において、Lはむだ時間(dead time)を表す。
上記各式において、上添え字hはhighの省略形であって、モデルA
h(q)、B
h(q)の次数nが十分に高いこと、すなわち高次モデルであることを意味しており、hは変数ではない。
【0048】
本実施形態では、高次数設定手段11が、モデリング装置1の外部から入力されるモデル次数を高次モデル推定手段10に設定することとした。このモデル次数(高次の次数n)をモデリング装置1の内部に記憶させておき、高次モデル推定手段10が処理の際に読み出す。ここでは、高次の次数nは例えば100であるものとする。なお、高次の次数nは、処理の際にその都度、モデリング装置1の外部から入力するようにしてもよい。
【0049】
高次モデル推定手段10は、ARXモデルのパラメータとして、前記式(7)に示すパラメータ{a
i}(i=1〜100)と、前記式(8)に示すパラメータ{b
i}(i=1〜100)とを最小二乗法により推定する。
【0050】
高次モデル推定手段10によって前記式(7)から推定された多項式をA^
h(q)と表記し、前記式(8)から推定された多項式をB^
h(q)と表記する。なお、本明細書において、ある文字の右に配置された記号「^」は、その直前の文字の上に配置されたハット記号を意味することとする。このハット記号は推定値であることを表すものである。
【0051】
このように表記する場合、制御対象とする伝達関数G(q)についての高次モデルは、G^
h(q)と表記され、次の式(9a)で表される。また、雑音モデルH(q)についての高次雑音モデルは、H^
h(q)と表記され、次の式(9b)で表される。
【0053】
なお、FIRモデルの場合、正規性白色雑音もしくは平均0の雑音を仮定しているので、式(9a)に対応した関係式がG(q)=B(q)のように記述され、式(9b)に対応した関係式がH(q)=1のように記述される。比較的高次となるFIRモデルは、後記するように、低次ARXモデルのリファレンス(以下、高次参照モデルという)として用いることにする。
【0054】
低次元化手段20は、高次モデル推定手段10で推定された高次モデル{G^
h(q),H^
h(q)}と、周波数領域における評価関数である対数尤度関数とを用いて最尤推定値を導出することで高次モデルを低次元化するものである。
この低次元化手段20は、
図1に示すように、周波数伝達関数算出手段21と、低次モデル推定手段22と、低次モデル探索手段23と、を備えている。
【0055】
周波数伝達関数算出手段21は、高次モデル推定手段10で推定された既知の高次モデル{G^
h(q),H^
h(q)}についての周波数伝達関数G^
h(e
jω),H^
h(e
jω)をそれぞれ求めるものである。この周波数伝達関数算出手段21は、例えば、高次モデルの伝達関数G^
h(q)から、その周波数応答である高次の周波数伝達関数G^
h(e
jω)を算出する。
【0056】
低次モデル推定手段22は、周波数領域における評価関数である対数尤度関数を最小化することで、高次モデル推定手段10で推定された高次モデルのモデル次数(高次の次数)よりも低い次数の低次モデルの推定値を求めるものである。
【0057】
ここでは、高次モデル推定手段10に設定されたモデル次数をn(=100)としている。また、推定しようとする未知の低次モデルのモデル次数をm(0<m<n)とおく。また、このm次の低次モデルのことを、{G^
l(q),H^
l(q)}と表記する。ここで、上添え字lはlowの省略形であって、G^
l(q),H^
l(q)の次数mがnよりも低いこと、すなわち低次モデルであることを意味しており、lは変数ではない。
なお、G^
l(q)は、制御対象とする伝達関数G(q)についての低次モデルの推定値であり、H^
l(q)は、雑音モデルH(q)についての低次雑音モデルの推定値である。
【0058】
この場合、さらに、推定しようとする未知の低次モデルの伝達関数G^
l(q)についての周波数伝達関数をG^
l(e
jω)とおき、同様に、推定しようとする未知の低次雑音モデルH^
l(q)についての周波数伝達関数をH^
l(e
jω)とおく。
【0059】
前記した対数尤度関数は、次の式(10)のVで表される。なお、漸近理論では、高次モデル(G^
h(e
jω))は周波数領域において近似的に正規分布に従うので低次モデル(G^
l(e
jω))は漸近的に最尤推定値になる。
【0061】
式(10)において、Φ
u(ω)は、入力信号u(k)のパワースペクトル密度関数である。また、Φ
v(ω)は、雑音v(k)のパワースペクトル密度関数である。この雑音v(k)は次の式(11)で表わされる。
【0063】
なお、ここで、雑音v(k)は、外乱w(k)として仮定した正規性白色雑音が、雑音成形フィルタ(高次モデル推定手段10で推定された既知の高次雑音モデルH^
h(q))を通過した後の雑音のことである。
【0064】
低次モデル推定手段22は、推定しようとする未知の低次モデルのモデル次数m(0<m<n)が低次モデル探索手段23によって所定値に設定されたときに、前記式(10)のVを最小化させる演算処理を行い、モデル次数mが当該設定値のときに、式(10)のVを最小化する低次モデルの推定値G^
l(q)を得る。この低次モデルの推定値G^
l(q)はモデリング装置1の出力候補である。なお、対数尤度関数Vの最小化には、非線形最適化問題を解く必要がある。その求解法は限定しないが、一例について後で説明を行う。
【0065】
<低次モデル探索手段23>
低次モデル探索手段23は、推定しようとする未知の低次モデルのモデル次数mを更新して対数尤度関数Vを最小化させることを繰り返すことでそれぞれ推定された各頭部伝達関数の低次モデルG^
l(q)と、高次参照モデルと、の間の音像定位知覚に係る特徴量の誤差をそれぞれ求め、この特徴量の誤差が予め定められた許容条件を満たし且つ最低次数となるときの低次モデルを探索するものである。ここで探索された最低次数の低次モデルG^
l(q)がモデリング装置1の出力である。
【0066】
本実施形態では、高次参照モデルの一例として、音響分野で一般的に用いられているFIRモデルを用いた。高次参照モデルとしたFIRモデルの次数は、十分な収束を考慮して512次とした。
【0067】
以下では、音像定位知覚に係る特徴量としては、一例として、頭部伝達関数の周波数特性上のピーク及びノッチであるスペクトラルキューの位置であることとする。それは、音像を空間内に模擬的に配置させる音像定位技術などにおいては、スペクトラルキューの正確なモデリングが重要とされているからである。
【0068】
本実施形態では、高次ARXモデルを低次元化して低次ARXモデルを推定する際に、スペクトラルキューを保存するように構成した。ここで、スペクトラルキューの保存とは、推定しようとする低次ARXモデルのスペクトラルキューが、高次参照モデル(例えば高次のFIRモデル)のスペクトラルキューを所望の正確さで再現できるように予め定められた許容条件を満たすことをいう。再現性の精度は、音像定位などに応用するときに期待する演算量の所望の低減効果に応じて適宜設定される。両者のスペクトラルキューの中心周波数のずれを所望の許容できる範囲に抑えることにより、頭部伝達関数として推定された低次モデルが所望の確度を有しつつ、その低次モデルを音像定位技術などの制御対象として用いたときの演算量を低減することができる。
【0069】
本実施形態では、低次モデル探索手段23が、低次モデル推定手段22でそれぞれ推定された各頭部伝達関数の低次モデルG^
l(q)と高次参照モデルとの間のスペクトル歪(SD:spectral distortion)をそれぞれ求め、スペクトル歪が予め定められた第1閾値以下、且つスペクトラルキューの位置についての高次参照モデルとの間の誤差が予め定められた第2閾値以下の条件を満たし且つ最低次数となるときの低次モデルを探索することとした。ここで、スペクトル歪SDとは、2つの伝達関数の一致度を判定するために、その振幅特性の差をすべての周波数成分で評価した物理指標のことである。このように構成することで、演算量を低減し且つ、推定しようとする低次モデルの精度を保証することができる。
【0070】
そこで、本実施形態では、低次モデル探索手段23が、
図1に示すように、スペクトラル歪算出手段24と、スペクトラル歪判定手段25と、音響特徴量算出手段26と、音響特徴量判定手段27と、を備えることとした。
【0071】
スペクトラル歪算出手段24は、2つの頭部伝達関数H
X,H
Yが与えられたときに、そのスペクトル歪SDを次の式(12)によって算出するものである。
【0073】
式(12)において、Nは頭部伝達関数におけるデータ数を表わす。また、頭部伝達関数H
Xは例えば推定された頭部伝達関数の低次モデルG^
l(q)の周波数伝達関数を表わし、頭部伝達関数H
Yは例えば高次参照モデルの周波数伝達関数を表わす。
【0074】
スペクトラル歪判定手段25は、スペクトラル歪算出手段24によって算出されたスペクトル歪SDが第1閾値以下であるか否かを判定するものである。ここで、第1閾値は特に限定されるものではない。ただし、スペクトル歪SDは、およそ3dBを下回っていれば、2つの頭部伝達関数がよく一致しているとみなすことができるとされている。そこで、本実施形態では、典型的な一例として第1閾値を3dBとした。これにより、スペクトル歪SDが3dBより大きい場合、そのときに設定されているモデル次数mにおいて推定された低次モデルG^
l(q)は、NGであってモデリング装置1の最終出力とはならない。よって、前記式(10)や前記式(12)の演算において、mとして取り得るすべての値を選択する前に、モデル次数mの更新につれてスペクトル歪SDが3dBよりも大きくなった時点で演算を終了させることができる。
【0075】
音響特徴量算出手段26は、推定しようとする低次モデルG^
l(q)についての周波数伝達関数G^
l(e
jω)におけるスペクトラルキューの中心周波数と、高次参照モデルについての周波数伝達関数におけるスペクトラルキューの中心周波数との差分を音響特徴量の誤差として算出するものである。
【0076】
音響特徴量判定手段27は、音響特徴量算出手段26によって算出された音響特徴量の誤差(スペクトラルキューの中心周波数のずれ)が第2閾値以下であるか否かを判定するものである。ここで、第2閾値は特に限定されるものではない。ただし、本実施形態では、典型的な一例として第2閾値を離散周波数ビン1サンプルとした。つまり、スペクトラルキューの中心周波数において1サンプルの誤差範囲を許容した。具体的には、例えばサンプリング周波数を48kHz、スペクトルをデータ数N(512)の離散フーリエ変換により求めた場合、1サンプルの区間は93.75Hzとすることができる。これにより、スペクトラルキューの中心周波数のずれが1サンプルより大きい場合、そのときに設定されているモデル次数mにおいて推定された低次モデルG^
l(q)は、NGであってモデリング装置1の最終出力とはならない。よって、スペクトラルキューの中心周波数のずれを算出する処理において、mとして取り得るすべての値を選択する前に、モデル次数mの更新につれてスペクトラルキューの中心周波数のずれが1サンプルよりも大きくなった時点で演算を終了させることができる。
【0077】
図1の低次モデル探索手段23は、前記したように、推定しようとする未知の低次モデルのモデル次数mを更新して前記した式(10)の対数尤度関数Vを最小化させることを繰り返しつつ、スペクトル歪SDとスペクトラルキューの中心周波数のずれについての閾値判定を行う。この際に、モデル次数mの更新の仕方は特に限定されるものではない。
【0078】
例えば、スペクトル歪SDの閾値判定と、スペクトラルキューの中心周波数のずれについての閾値判定との一方についてモデル次数mを更新しながら処理を行った後に、他方についてモデル次数mを更新しながらの閾値判定処理を行ってもよい。または、モデル次数mをある値に設定したときに、両方の閾値判定処理を行ってから、モデル次数mを更新するようにしてもよい。
【0079】
また、次数mを単調に減少させたり、単調に増加させたり、増減させたりしてもよい。
また、次数mを1ずつシフトしてもよいし、2以上の所定値ずつシフトしてもよい。必ずしも毎回同じシフト数にする必要もなく、例えば10ずつシフトした後で、その間を1ずつシフトしてもよい。
また、前記したようにモデリング装置1の最終出力とはならないことが明らかならば、モデル次数mの更新の際に、値を取り得る全てのm(0<m<n)を必ずしも選択しなくてもよい。
【0080】
本実施形態では、一例として、低次モデル探索手段23が、低次のモデル次数mを高次のモデル次数nの側から降順に更新してスペクトル歪SDが第1閾値より大きくなった場合(これを以下、反復停止条件という)、対数尤度関数Vの最小化処理を停止し、スペクトル歪SDが第1閾値(3dB)以下であったときの次数を起点として低次のモデル次数mを昇順に更新してスペクトラルキューの位置についての高次参照モデルとの間の誤差が第2閾値以下になったときの次数を最低次数として決定することとした。このようにすることで、モデル次数mの最低次数を効率よく求めることが可能である。
【0081】
(式(10)の対数尤度関数Vの最小化の求解法)
ここで説明する求解法には、下記のA−1,A−2,A−3の3つの手続きがある。
【0082】
A−1.入力のフィルタリング
高次モデル推定手段10で推定された既知の高次雑音モデルH^
h(q)を用いて、次の式(13)のように入力信号u(k)をフィルタリングする。この高次雑音モデルH^
h(q)のフィルタを通過した信号u
f(k)は、頭部伝達関数の高次モデルG^
h(q)の入力信号として用いられる。
【0084】
A−2.出力の計算
前記手続きA−1で得られた式(13)に示すフィルタ通過信号u
f(k)を、頭部伝達関数の高次モデルG^
h(q)への新たな入力信号として、高次モデルG^
h(q)の出力信号y^
f(k)を次の式(14)により計算する。
【0086】
A−3.低次モデルのパラメータ推定
手続きA−1,A−2によって、頭部伝達関数の高次モデルG^
h(q)の新しい入出力信号{u
f(k),y^
f(k);k=1,2,…,N}が得られたならば、この新しい入出力信号を用いて、高次モデルG^
h(q)を低次元化した低次モデルのパラメータを出力誤差法により推定する。このとき、出力誤差法の損失関数V
OEは、次の式(15)で表される。
【0088】
ここで、式(15)におけるG^
l(q)が、求めるべき頭部伝達関数の低次モデルであり、次の式(16)で表わされる。また、低次雑音モデルH^
l(q)は次の式(17)で表される。
【0090】
ただし、式(16)において、A
l(q),B
l(q)は式(18),式(19)でそれぞれ表され、式(17)において、C
l(q),D
l(q)は式(20),式(21)でそれぞれ表される。
【0092】
[音像定位制御の流れ]
ここでは、頭部伝達関数およびそのモデルの応用の一例として、音響信号の音像を空間内に擬似的に配置させるような音像定位技術を挙げて説明する。具体的には、モデリング装置1による頭部伝達関数のモデリング方法を含む音像定位制御の全体の流れについて
図5を参照(適宜
図1〜
図3参照)して説明する。
まず、モデリング装置1の処理をする前に、システム同定を行うために必要な入出力データを測定する(ステップS100)。測定方法は、
図2を参照して説明した方法を用いることができる。入出力データの具体例は
図3(a)及び
図3(b)に示されている。
【0093】
続いて、モデリング装置1の処理として、入出力データを用いて、漸近推定法により頭部伝達関数をモデリングする(ステップS200)。
漸近推定法による処理(ステップS200)を概説すると、まず、高次ARXモデルのパラメータを推定する処理を行い(ステップS210:高次モデル推定ステップ)、その後に、漸近理論に基づきARXモデルの低次元化処理を行う(ステップS220:低次元化ステップ)。
【0094】
より詳細には、ステップS210では、モデリング装置1において、高次モデル推定手段10が、入出力データを用いて、予め定められた高次(n次)のモデル次数を有した頭部伝達関数及び雑音モデルについての高次モデル(G^
h(q),H^
h(q))のパラメータ{a
i},{b
i}を予測誤差法により推定する。
また、ステップS220では、モデリング装置1において、低次元化手段20が、推定された高次モデル(G^
h(q),H^
h(q))と、前記式(10)に示す対数尤度関数Vとを用いて最尤推定値を導出することで高次モデルを低次元化する。そして、モデリング装置1は頭部伝達関数の低次モデルを出力する。なお、ARXモデルの低次元化処理の詳細な流れについては後記する。
【0095】
続いて、音像定位の制御対象に対して、モデリング装置1によって推定された頭部伝達関数の低次ARXモデルを適用する(ステップS300)。この低次ARXモデルは、従来よりもパラメータ数の少ないモデルとして求められているので、頭部伝達関数として推定された低次モデルを音像定位技術などの制御対象として用いたときの演算量を従来よりも低減することができる。
【0096】
[ARXモデルの低次元化処理の詳細な流れ]
次に、モデリング装置1の低次元化手段20によるARXモデルの低次元化処理の詳細な流れについて
図6を参照(適宜
図1〜
図3及び
図5参照)して説明する。
ARXモデルの低次元化処理(ステップS220)では、まず、モデリング装置1の周波数伝達関数算出手段21が、
図5のステップS210で得られた高次(n次)モデル{G^
h(q),H^
h(q)}の周波数伝達関数G^
h(e
jω),H^
h(e
jω)を求める(ステップS221)。
【0097】
そして、低次モデル探索手段23が、モデル次数m(0<m<n)を設定する(ステップS222)。ここでは、一例としてn=100としているので、m=99を設定することとする。そして、低次モデル推定手段22は、例えばn=100、m=99の場合において、前記した式(10)に示す対数尤度関数Vを最小化し、例えばm=99の設定値の場合の低次モデルを推定する(ステップS223)。これにより、低次モデル探索手段23が、例えばm=99の設定値の場合の低次モデルの推定値G^
l(q)を得る。
【0098】
そして、低次モデル探索手段23は、モデル次数mの更新についての反復停止条件が成立したか否かを判定する(ステップS224)。具体的には、スペクトラル歪算出手段24が、99次のモデル(H
X)と100次のモデル(H
Y)のスペクトル歪SDを前記式(12)によって算出し、スペクトラル歪判定手段25が3dB(第1閾値)より大きいと判定した場合、反復停止条件が成立する。
【0099】
一方、反復停止条件が成立していない場合(ステップS224:No)、低次のモデル次数mを更新し(ステップS225)、ステップS223に戻る。具体的には、低次モデル探索手段23が、モデル次数mの値を1だけ減算してm=98を設定した場合、低次モデル推定手段22は、例えばn=100、m=98の場合において、前記した式(10)に示す対数尤度関数Vを最小化し、例えばm=98の設定値の場合の低次モデルを推定する(ステップS222)。このステップS224でNoの場合の処理は以下同様に減算を行う。
【0100】
ステップS225によって、モデル次数mの値をより低くしてモデルを低次元化し続けると、やがて、低次モデル探索手段23は、反復停止条件が成立したと判定する(ステップS224:Yes)。具体的には、スペクトラル歪判定手段25が3dB(第1閾値)より大きいと判定する。
【0101】
ステップS224でYesの場合、低次モデル探索手段23は、ステップS226において、その時点のモデル次数mの設定値に「1」を加算する。この加算で得られたモデル次数mの値は、低次ARXモデルにおいてスペクトラル歪SDが第1閾値(3dB)以下であったときの最低次数である。また、このとき、低次モデル探索手段23は、音像定位知覚に係る特徴量についての参照(高次参照モデル)との誤差が予め定められた許容条件を満たす最低次数から、低次モデルの次数mを決定する(ステップS226)。
具体的には、音響特徴量算出手段26が、その時点で設定されているモデル次数mの低次モデルG^
l(q)についての周波数伝達関数G^
l(e
jω)におけるスペクトラルキューの中心周波数と、高次参照モデル(512次FIRモデル)についての周波数伝達関数におけるスペクトラルキューの中心周波数との差分を音響特徴量の誤差として算出する。そして、音響特徴量判定手段27は、スペクトラルキューの中心周波数のずれが1サンプル(第2閾値)以下であるか否かを判定する。
【0102】
スペクトラルキューの中心周波数のずれが1サンプル(第2閾値)より大きい場合、その時点のモデル次数mの設定値が低過ぎるので、低次モデル探索手段23は、その時点のモデル次数mの設定値に「1」を加算する。なお、この加算で得られたモデル次数mの値の場合、スペクトラル歪SDは当然ながら第1閾値(3dB)以下である。
【0103】
そして、同様にして、音響特徴量算出手段26が、スペクトラルキューの中心周波数のずれを算出し、音響特徴量判定手段27は、スペクトラルキューの中心周波数のずれが1サンプル(第2閾値)以下であるか否かを判定する。スペクトラルキューのずれが大きい場合の処理は以下同様にモデル次数mの値の加算を行う。やがて、音響特徴量判定手段27は、ずれが1サンプル以下になったと判定する。この時点のモデル次数mの設定値が、低次モデル探索手段23で本来探索していた最低次数である。そして、モデリング装置1は、その最低次数のモデル次数を有した頭部伝達関数の低次元ARXモデルを出力する。
【0104】
[ARXモデルの低次元化処理の具体例]
本発明の効果を確かめるために、ダミーヘッドDの頭部中心の位置より1.3m離れた位置で、ダミーヘッドDの正面から左30°方向に設置した1つのスピーカSPから測定信号を印加する実験を行った。そして、ダミーヘッドDの左耳に内蔵されたマイクロフォンにより収音を行なって
図3(b)に例示した出力信号を得た。このときの入出力データを用いて本実施形態に係るモデリング方法で頭部伝達関数をモデリングした。また、高次参照モデルとして512次FIRモデルを求めた。
【0105】
図6のステップS223〜S225を繰り返しつつモデル次数mの設定値を単調減少させながら、n=100の高次モデルとの間で各次数におけるスペクトラル歪SDを求めた。このときのモデル次数mに対するSDの変化のグラフを
図7に示す。モデル次数mの設定値を17次まで下げたときにSDが3dBよりも大きくなった。つまり、SDが3dB以下となる次数は18次以上であった。なお、モデル次数mの更新にあわせて前記式(10)に示す対数尤度関数Vを最小化する処理を83回行った。
【0106】
続いて、スペクトラルキューの中心周波数を、高次参照モデル(512次FIRモデル)との間で1サンプルの範囲内で捉えることのできるモデルを求めた。高次参照モデル(512次FIRモデル)の周波数特性を
図10に示す。
【0107】
図6のステップS226に対応させて、既に得られている18次以上のモデルを探索対象としてスペクトラルキューの中心周波数のずれを求めた。18次、19次、20次の場合、スペクトラルキューのずれが許容範囲を超えていたが、21次の場合、スペクトラルキューのずれを1サンプルの範囲内で捉えることができた。つまり、モデル次数mの更新に係るスペクトラルキューのずれを求める処理は4回だけ行った。
【0108】
上記実験から得られた21次のARXモデルの周波数特性を
図8(b)に破線で示す。また、
図8(a)には、
図8(b)に示した21次のARXモデルの周波数特性(破線)と、
図10に示した高次参照モデル(512次FIRモデル)の周波数特性(実線)とを重ねて表示した。低周波側においてひずみが顕著となるが、これは、モデルの違いと、ゲインの小さい帯域では相対的にSDが大きくなることが原因として考えられる。
【0109】
図8(a)に示すように、21次のARXモデルでは、スペクトラルキューが保存されていることが分かる。加えて、従来用いられてきたFIRモデルが512次であることを考慮する高次参照モデルに比べてパラメータ数を大幅に減少させることができることを確かめた。
【0110】
なお、上記実験について、1方向の測定例を挙げたが、実際には、収音し終えたらダミーヘッドを5°時計周りに回転させ、同様にして収音する、という手順を繰り返すことにより、水平面5°間隔72方向の頭部伝達関数を測定した。そして、水平面72方向から左耳までの頭部伝達関数をモデリングしたとき、各方位において妥当だと考えられる次数の平均次数を求めると20次となった。
【0111】
[頭部伝達関数の低次モデルを適用する音像定位制御の具体例]
ここでは、本実施形態で推定された頭部伝達関数の低次モデルを適用する音像定位制御の具体例について説明する。
頭部伝達関数を利用したシステムとして、トランスオーラルシステムと呼ばれる、三次元音響を実現するためのシステムが知られている。
図9に、制御点(以下、その識別子をi、ただしi=1,…,mとする)及び2次音源(以下、その識別子をj、ただしj=1,…,nとする)を有するトランスオーラル再生システムのブロック図を示す。なお、mはnと等しくてもよい。
【0112】
ここで、制御点は、例えば、
図9に示す聴取者(リスナー)90の右耳位置Rや左耳位置Lである。一例として、識別子iによって、例えばリスナー90の右耳位置、左耳位置の順に制御点を識別するものとした。シンプルな例では1人のリスナー90を想定してm=2とすればよいが一般化して説明する。
【0113】
2次音源は、
図9に示すスピーカである。ここでは、一例として、リスナー90の右耳位置L側から順にスピーカSP
jを識別子jによって識別するものとした。音源SSはスピーカSP
j(j=1,…,n)に信号を出力するものである。なお、音源SSの個数は特に限定されない。スピーカSPは、例えばラウドスピーカである。
【0114】
図中、システムの要素G
ij(q)は、シフトオペレータqを用いた制御対象の頭部伝達関数を表し、j番目のスピーカ(2次音源)からi番目の制御点(耳位置)への音響伝達関数を表す。なお、モデリング装置1で推定する1つの低次元ARXモデルが1つのG
ij(q)に相当する。また、要素X
i(q)は、各制御点での所望伝達関数を表す。
【0115】
また、要素H
ji(q)は、クロストーク・キャンセレーションのための制御器として働く。一般に、スピーカを用いてバイノーラル信号を提示する場合、スピーカから同側耳までの信号の伝搬に加え、対側耳への漏洩(クロストーク)も発生する。従って、このクロストークを抑圧し、所望信号のみをそれぞれの耳に伝送する補償処理が必要となってくる。この処理のことをクロストーク・キャンセレーションという。
なお、前記した要素X
i(q)は、制御器H
ji(q)によってクロストークを抑圧後に、i番目の各制御点においてリスナー90の右耳又は左耳にだけ聴かせたい音声信号の伝達関数を表す。
【0116】
従って、システムの入出力信号は、次の式(22)〜式(26)のような関係で表される。
【0118】
ここで、システムの入力信号をスカラーのu(k)として、システムの出力信号y(k)を式(23)に示すように、制御点数に対応してm個の要素を有した一次元行列(列ベクトル)で表すこととしている。なお、y(k)の列ベクトルは、式(23)において行ベクトルの転置Tにより表されている。また、k=1,2,…,Nとすると共に、Nはデータ数であるものとする。
式(24)は、制御点数に対応してm個の要素(X
i(q))を有した列ベクトルで表される。なお、この列ベクトルは行ベクトルの転置Tにより表されている。
式(25)は、制御点数と2次音源数とに対応してm×n個の要素(G
ij(q))を有したベクトル(行列)で表される。
式(26)は、2次音源数と制御点数とに対応してn×m個の要素(H
ji(q))を有したベクトル(行列)で表される。
【0119】
このシステムにおける式(22)の左辺に示す所望出力信号は、クロストーク・キャンセレーション後、入力信号u(k)に対して前記式(24)に示す所望伝達関数が作用された信号となるため、次の式(27)のように記述される。
【0121】
このようにシフトオペレータqを用いると、時間領域での畳み込み演算が行列積の形で記述可能となる。そのため、前記式(26)で定義されたシステムの制御器を求めるには、式(27)と前記式(22)とから代数学的な逆行列演算を行えばよい。その結果、次の式(28)で記述されるようなシステムの制御器を設計することができる。
【0123】
ただし、式(28)に示す制御器では不安定となる。これを解決するため、この不安定な制御器を一旦設計した後、その制御器を構成する各伝達関数から不安定極を持つ伝達関数を括り出すことが考えられる。そして、これを遅れ逆システムとして近似することにより、安定な制御器を実現することが可能である。本実施形態では、頭部伝達関数のモデリングは、
図4(b)に示すARXモデルを用いており、音像定位にはIIRフィルタが実装されることになる。
【0124】
以上説明したように、本実施形態に係る頭部伝達関数のモデリング装置によれば、音像定位知覚にかかる特徴量であるスペクトラルキューを保存しつつ、頭部伝達関数を少ないパラメータ数でモデリングすることが可能となる。また、頭部伝達関数の測定における雑音を考慮しているため、より精緻なモデルとなることが期待される。さらに、パラメータ数が少ないため、頭部伝達関数を用いた音像定位方式などにおける演算量を低減することが可能となる。
【0125】
以上、実施形態に基づいて本発明を説明したが、本発明はこれに限定されるものではない。例えば、低次モデル探索手段23が低次モデルを探索する際の指標に用いる音像定位知覚に係る特徴量としてスペクトラルキューを例示したが、頭部伝達関数に含まれる他の特徴量、例えば両耳間時間差やレベル差を用いてもよい。
【0126】
また、頭部伝達関数のモデリング装置1は、電子回路が各種電子部品や半導体デバイス等によってハードウェア的に構築された回路であってもよいし、当該装置1の各構成の処理を汎用的または特殊なコンピュータ言語によって記述した頭部伝達関数のモデリングプログラムとこれを処理するCPUの協働によって実現するものであってもよい。
【0127】
また、高次参照モデルの一例として512次のFIRモデルを挙げて具体的に説明したが、高次参照モデルは、これに限らず、FIR以外の例えばARXモデルであっても、 雑音モデルを考慮した高次モデルであっても構わない。
また、頭部伝達関数およびそのモデルの応用の一例として、音像定位技術を挙げて具体的に説明したが、本発明は、音像定位に限らず、例えば、ラウドネスメーターなど頭部伝達関数を利用した技術全般に適用することができる。