音響信号処理装置、音響信号処理方法、音響信号処理プログラム、及び音響信号処理プログラムを記録したコンピュータ読み取り可能な記録媒体
【課題】音源への制約を緩和しつつ、マイクロホン数以上の音源を扱うことのできる音源定位と音源分離のための音響信号処理装置、音響信号処理方法、音響信号処理プログラム、及び音響信号処理プログラムを記録した記録媒体を提供する。
【解決手段】 音響信号入力部2に入力されたマイク1a及び1bの2つの振幅データは周波数分解部3により解析され、2次元データ化部4により両者の位相差が周波数毎に求められる。周波数毎の位相差は2次元の座標値を与えられて2次元データ化される。図形検出部5は生成されたXY平面上の2次元データを解析して図形を検出する。音源情報生成部6は検出された図形の情報を処理し、音響信号の発生源たる音源の数、各音源の空間的な存在範囲、各音源が発した音の時間的な存在期間、各音源音の成分構成、各音源毎の分離音声、各音源音声の記号的内容を含む音源情報を生成する。
【解決手段】 音響信号入力部2に入力されたマイク1a及び1bの2つの振幅データは周波数分解部3により解析され、2次元データ化部4により両者の位相差が周波数毎に求められる。周波数毎の位相差は2次元の座標値を与えられて2次元データ化される。図形検出部5は生成されたXY平面上の2次元データを解析して図形を検出する。音源情報生成部6は検出された図形の情報を処理し、音響信号の発生源たる音源の数、各音源の空間的な存在範囲、各音源が発した音の時間的な存在期間、各音源音の成分構成、各音源毎の分離音声、各音源音声の記号的内容を含む音源情報を生成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は音響信号処理に関し、特に、媒質中を伝播してきた音波の発信源の数、各発信源の方向、各発信源から到来した音波の周波数成分などの推定に関する。
【背景技術】
【0002】
近年、ロボット用の聴覚研究の分野で、雑音環境下で複数の目的音源音の数とその方向を推定し(音源定位)、各音源音を分離抽出する(音源分離)方式が提案されている。
【0003】
例えば、下記非特許文献1には、背景雑音のある環境でN個の音源音をM個のマイクロホンで観測し、各マイクロホン出力を短時間フーリエ変換(FFT)処理したデータから空間相関行列を生成し、これを固有値分解して値の大きい主要な固有値を求めることで、この主要な固有値の数として音源の数Nを推定する方法が記載されている。これは、音源音のように方向性のある信号は主要な固有値にマッピングされ、方向性のない背景雑音は全ての固有値にマッピングされる性質を利用したものである。主要な固有値に対応する固有ベクトルは音源からの信号が張る信号部分空間の基底ベクトルとなり、残りの固有値に対応する固有ベクトルは背景雑音信号が張る雑音部分空間の基底ベクトルとなる。この雑音部分空間の基底ベクトルを利用してMUSIC法を適用することで、各音源の位置ベクトルを探索することができ、探索の結果得られた方向に指向性を与えられたビームフォーマで当該音源からの音声を抽出することができる。しかしながら、音源数Nがマイクロホン数Mと同数であるときは、雑音部分空間を定義できず、また、音源数NがMを越えるときは検出できない音源が存在することになる。したがって、推定可能な音源の数はマイクロホン数M以上となることはない。この方法は、音源について特に大きな制約はなく、数学的にもきれいな方法であるが、多数の音源を扱うためには、それを超える数のマイクロホンが必要になるという制限がある。
【0004】
また、下記非特許文献2には、一対のマイクロホンを用いて音源定位と音源分離を行う方法について記載されている。この方法は、人間の声のように管(調音器官)を通して発生される音声に特有の調波構造(基本周波数とその高調波とからなる周波数構造)に着目し、マイクロホンで捉えた音声信号をフーリエ変換したデータから基本周波数の異なる調波構造を検出することで、検出された調波構造の数を発話者の数とし、調波構造毎の両耳間位相差(IPD)と両耳間強度差(IID)とを用いてその方向を確信度付きで推定し、調波構造それ自体によって各音源音を推定する。この方法は、フーリエ変換データから複数の調波構造を検出することで、マイクロホン数以上の音源を処理することができる。しかしながら、音源数と方向と音源音の推定の基礎を調波構造に立脚して行うため、扱うことのできる音源は人間の声のような調波構造を持つものに限定され、さまざまな音に対応できるものではない。
【非特許文献1】浅野太、“音を分ける”、計測と制御、第43巻、第4号、pp.325−330、2004年4月号
【非特許文献2】中臺一博ほか、“視聴覚情報の階層的統合による実時間アクティブ人物追跡”、人工知能学会AIチャレンジ研究会、SIG−Challenge−0113−5、pp.35−42、June 2001
【発明の開示】
【発明が解決しようとする課題】
【0005】
以上で述べたように、(1)音源に制約を設けない場合は、音源数はマイクロホン数以上にはできない、(2)音源数をマイクロホン数以上にする場合、音源に例えば調波構造を仮定するなどの制約がある、という二律背反の問題あり、音源を制約せずにマイクロホン数以上の音源を扱うことのできる方式は確立されていない。
【0006】
本発明は上記の問題点に鑑みてなされたものであり、音源への制約をより緩和し、かつ、マイクロホン数以上の音源を扱うことのできる音源定位と音源分離のための音響信号処理装置、音響信号処理方法、音響信号処理プログラム、及び音響信号処理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一観点に係る音響信号処理装置は、空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手段と、前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手段と、前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手段と、前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差算出手段により算出された位相差値の関数を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手段と、同一音源に由来する周波数と位相差との間の比例関係を反映した図形を前記2次元データから検出する図形検出手段と、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、各音源が発した音声の時間的な存在期間、各音源が発した音声の成分構成、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかを含み、区別された音源に関する音源情報を前記図形に基づいて生成する音源情報生成手段と、前記音源情報を出力する出力手段とを具備する音響信号処理装置である。
【発明の効果】
【0008】
本発明によれば、音源への制約をより緩和し、かつ、マイクロホン数以上の音源を扱うことのできる音源定位と音源分離のための音響信号処理装置、音響信号処理方法、音響信号処理プログラム、及び音響信号処理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供できる。
【発明を実施するための最良の形態】
【0009】
以下、本発明に係る音響信号処理装置の実施形態を図面に従って説明する。
【0010】
図1は本発明の一実施形態に係る音響信号処理装置の機能ブロック図である。この音響信号処理装置は、マイク1aと、マイク1bと、音響信号入力部2と、周波数分解部3と、2次元データ化部4と、図形検出部5と、音源情報生成部6と、出力部7と、ユーザインタフェース部8とを具備する。
【0011】
[周波数成分毎の位相差に基づく音源推定の基本概念]
マイク1aとマイク1bは、空気などの媒質中に所定の距離をあけて配置された2つのマイクロホンであり、異なる2地点での媒質振動(音波)をそれぞれ電気信号(音響信号)に変換するための手段である。以後、マイク1aとマイク1bとをひとまとめに扱う場合、これをマイクロホン対と呼ぶことにする。
【0012】
音響信号入力部2は、マイク1aとマイク1bによる2つの音響信号を所定のサンプリング周期Frで定期的にA/D変換することで、マイク1aとマイク1bによる2つの音響信号のデジタル化された振幅データを時系列的に生成する手段である。
【0013】
マイクロホン間距離に比べて十分遠い場所に音源が位置していることを仮定すると、図2(a)に示すように、音源100から発してマイクロホン対に到達する音波の波面101はほぼ平面となる。マイク1aとマイク1bとを用いることにより異なる2地点でこの平面波を観測すると、マイク1aとマイク1bとを結ぶ線分102(これをベースラインと呼ぶ)に対する音源100の方向Rに応じて、マイクロホン対で変換される音響信号に所定の到達時間差ΔTが観測されるはずである。なお、音源が十分遠いとき、この到達時間差ΔTが0になるのは、音源100がベースライン102に垂直な平面上に存在するときであり、この方向をマイクロホン対の正面方向と定義する。
【0014】
参考文献1「鈴木薫ほか、“視聴覚連携によるホームロボットの「呼べば来る」機能の実現”、第4回計測自動制御学会システムインテグレーション部門講演会(SI2003)講演論文集、2F4−5、2003」には、一方の振幅データのどの部分が他方の振幅データのどの部分と類似しているかをパタン照合によって探索することで、2つの音響信号(図2(b)の103と104)の間の到達時間差ΔTを導き出す方法について記載されている。しかしながら、この方法は強い音源が1つしか存在しない場合には有効であるが、強い背景雑音や複数の音源が存在する場合、複数方向からの強い音の混在した波形上に類似部分が明瞭に現れず、パタン照合に失敗することがある。
【0015】
そこで、本発明では入力された振幅データを周波数成分毎の位相差に分解して解析する。複数の音源が存在する場合、各音源の周波数成分について、2つのデータ間でその音源方向に応じた位相差が観測される。そこで、もし音源についての強い制約を仮定することなく周波数成分毎の位相差を同方向のグループに分けることができれば、より幅広い種類の音源について、幾つの音源が存在し、その各々がどちらの方向にあり、それぞれが主に、どのように特徴的な周波数成分の音波を発しているかを把握できるはずである。この理屈自体は非常に単純明快であるが、実際のデータを分析する際には幾つかの克服すべき課題が存在している。その課題とともに、このグループ分けを行なうための機能ブロック(周波数分解部3、2次元データ化部4、図形検出部5)について引き続き説明する。
【0016】
[周波数分解部3]
さて、振幅データを周波数成分に分解する一般的な手法として高速フーリエ変換(FFT)がある。代表的なアルゴリズムとしては、Cooley−Turkey DFTアルゴリズムなどが知られている。
【0017】
周波数分解部3は、図3に示すように、音響信号入力部2による振幅データ110について、連続するN個の振幅データをフレーム(T番目のフレーム111)として抜き出して高速フーリエ変換を行うとともに、この抜き出し位置をフレームシフト量113ずつずらしながら繰り返す(T+1番目のフレーム112)。
【0018】
フレームを構成する振幅データは、図4(a)に示すように窓掛け120を施された後、高速フーリエ変換121がなされる。この結果、入力されたフレームの短時間フーリエ変換データが実部バッファR[N]と虚部バッファI[N](122)に生成される。なお、窓掛け関数(Hamming窓掛けあるいはHanning窓掛け)124の一例を図4(b)に示す。
【0019】
ここで生成される短時間フーリエ変換データは、当該フレームの振幅データをN/2個の周波数成分に分解したデータであり、k番目の周波数成分fkについてバッファ122内の実部R[k]と虚部I[k]の数値が、図4(c)に示すように複素座標系123上の点Pkを表す。このPkの原点Oからの距離の2乗が当該周波数成分のパワーPo(fk)であり、Pkの実部軸からの符号付き回転角度θ{θ:−π>θ≧π[ラジアン]}が当該周波数成分の位相Ph(fk)である。
【0020】
サンプリング周波数がFr[Hz]、フレーム長がN[サンプル]のとき、kは0から(N/2)−1までの整数値をとり、k=0が0[Hz](直流)、k=(N/2)−1がFr/2[Hz](最も高い周波数成分)を表し、その間を周波数分解能Δf=(Fr/2)÷((N/2)−1)[Hz]で等分したものが各kにおける周波数となり、fk=k・Δfで表される。
【0021】
なお、前述したように、周波数分解部3はこの処理を所定の間隔(フレームシフト量Fs)を空けて連続的に行うことで、入力振幅データの周波数毎のパワー値と位相値とからなる周波数分解データセットを時系列的に生成する。
【0022】
(2次元データ化部4と図形検出部5)
図5に示すように、2次元データ化部4は位相差算出部301と座標値決定部302とを具備する。図形検出部5は投票部303と直線検出部304とを具備する。
【0023】
[位相差算出部301]
位相差算出部301は、周波数分解部3により得られた同時期の2つの周波数分解データセットaとbとを比較して、同じ周波数成分毎に両者の位相値の差を計算して得たab間位相差データを生成する手段である。例えば図6に示すように、ある周波数成分fkの位相差ΔPh(fk)は、マイク1aにおける位相値Ph1(fk)とマイク1bにおける位相値Ph2(fk)との差を計算し、その値が{ΔPh(fk):−π<ΔPh(fk)≦π}に収まるように、2πの剰余系として算定する。
【0024】
[座標値決定部302]
座標値決定部302は、位相差算出部301により得られた位相差データを元に、各周波数成分に両者の位相値の差を計算して得た位相差データを所定の2次元のXY座標系上の点として扱うための座標値を決定する手段である。ある周波数成分fkの位相差ΔPh(fk)に対応するX座標値x(fk)とY座標値y(fk)は、図7に示す式によって決定される。X座標値は位相差ΔPh(fk)、Y座標値は周波数成分番号kである。
【0025】
[同一時間差に対する位相差の周波数比例性]
位相差算出部301によって、図6に示したように算出される周波数成分毎の位相差は、同一音源(同一方向)に由来するものどうしが同じ到達時間差を表しているはずである。FFTによって得られたある周波数の位相値及びマイクロホン間の位相差はその周波数の周期を2πとして算出された値である。ここで、同じ時間差であっても、周波数が2倍になれば位相差も2倍となるような比例関係の存在に着目する。これを図8に示す。図8(a)に示すように、同一時間Tについて、周波数fk[Hz]の波130は1/2周期、すなわちπだけの位相区間を含むが、2倍の周波数2fk[Hz]の波131は1周期、すなわち2πの位相区間を含む。これは、位相差についても同様である。すなわち、同一時間差ΔTについて、位相差は周波数に比例して大きくなる。このような位相差と周波数との間の比例関係を図8(b)に示す。同一音源から発せられてΔTを共通にする各周波数成分の位相差を図7に示した座標値計算により2次元座標系上にプロットすると、各周波数成分の位相差を表す座標点132が直線133の上に並ぶことがわかる。ΔTが大きいほど、すなわち音源までの距離がマイクロホン間で異なるほど、この直線の傾きは大きくなる。
【0026】
[位相差の循環性]
但し、マイクロホン間の位相差が図8(b)に示したように全域で周波数に比例するのは、解析対象となる最低周波数から最高周波数まで通して真の位相差が±πを逸脱しない場合に限られる。この条件はΔTが、最高周波数(サンプリング周波数の半分)Fr/2[Hz]の1/2周期分の時間、すなわち1/Fr[秒]以上とならないことである。もし、ΔTが1/Fr以上となる場合には、次に述べるように位相差が循環性を持つ値としてしか得られないことを考慮しなければならない。
【0027】
周波数成分毎の位相値は図4に示した回転角度θの値として2πの幅(本実施形態では-πからπの間の2πの幅)でしか得ることができない。これは、その周波数成分における実際の位相差がマイクロホン間で1周期以上であっても、周波数分解結果として得られる位相値からそれを知ることができないことを意味する。そのため、本実施形態では位相差を図6に示したように-πからπの間で得るようにしている。しかし、ΔTに起因する真の位相差は、ここで求められた位相差の値に2πを加えたり差し引いたり、あるいはさらに4πや6πを加えたり差し引いたりした値である可能性がある。これを模式的に示すと図9のようになる。図9において、周波数fkの位相差ΔPh(fk)が黒丸140で表すように+πであるとき、1つ高い周波数fk+1の位相差は白丸141で表すように+πを超えている。しかしながら、計算された位相差ΔPh(fk+1)は、本来の位相差から2πを差し引いた、黒丸142で表すように−πよりもやや大きい値となる。図示しないが、その3倍の周波数でも同様の値を示すことになるが、これは実際の位相差から4πを差し引いた値である。このように位相差は周波数が高くなるにつれて2πの剰余系として−πからπの間で循環する。この例ように、ΔTが大きくなると、ある周波数fk+1から上では、白丸で表した真の位相差が黒丸で示したように反対側に循環してしまう。
【0028】
[複数音源存在時の位相差]
一方、複数の音源から音波が発せられている場合、周波数と位相差のプロット図は図10に模式的に示すような様相となる。この図は2つの音源がマイクロホン対に対して異なる方向に存在している場合を示したものであり、図10(a)は2つの音源音が互いに同じ周波数成分を含んでいない場合であり、図10(b)は一部の周波数成分が双方に含まれている場合である。図10(a)では、各周波数成分の位相差はΔTを共通にする直線のいずれかに乗っており、傾きの小さい直線150では5点、傾きの大きい直線151(循環した直線152を含む)では6点が直線上に配置されている。図10(b)では、双方に含まれる2つの周波数成分153と154では波が混ざって位相差が正しく出ないため、いずれの直線にも乗らず、特に傾きの小さい直線155では3点しか直線上に乗っていない。
【0029】
音源の数と方向を推定する問題は、このようなプロット図上で、図示したような直線を発見することに帰着できる。また、音源毎の周波数成分を推定する問題は、検出された直線に近い位置に配置された周波数成分を選別することに帰着できる。本実施形態において、2次元データ化部4が出力する2次元データは、周波数分解部3による周波数分解データセットの2つを使って周波数と位相差の関数として決定される点群、もしくはそれら点群を2次元座標系上に配置(プロット)した画像とする。なお、この2次元データは時間軸を含まない2軸によって定義され、故に、2次元データの時系列としての3次元データが定義できる。図形検出部5はこの2次元データ(もしくはその時系列たる3次元データ)として与えられる点群配置から直線状の配置を図形として検出するものとする。
【0030】
[投票部303]
投票部303は、座標値決定部302によって(x,y)座標を与えられた各周波数成分に対して、後述するように直線ハフ変換を適用し、その軌跡をハフ投票空間に所定の方法で投票する手段である。ハフ変換については、参考文献2「岡崎彰夫、“はじめての画像処理”、工業調査会、2000年10月20日発行」の第100頁〜第102頁に解説されているが、ここでもう一度説明する。
【0031】
[直線ハフ変換]
図11に模式的に示すように、2次元座標上の点p(x,y)を通り得る直線は160、161、162に例示するように無数に存在するが、原点Oから各直線に下ろした垂線163のX軸からの傾きをθとし、この垂線163の長さをρとして表現すると、1つの直線についてθとρは一意に決まる。ある点(x,y)を通る直線の取り得るθとρとの組は、θρ座標系上で(x,y)の値に固有の軌跡164(ρ=xcosθ+ysinθ)を描くことが知られている。このような、(x,y)座標値から、(x,y)を通り得る直線の(θ,ρ)の軌跡への変換を直線ハフ変換という。なお、直線が左に傾いているときθは正値、垂直のときは0、右に傾いているときは負値であるとし、また、θの定義域は{θ:-π<θ≦π}を逸脱することはない。
【0032】
ハフ曲線はXY座標系上の各点について独立に求めることができるが、図12に示すように、例えば3点p1、p2、p3を共通に通る直線170は、p1、p2、p3に対応した軌跡171、172、173が交差する点174の座標(θ0,ρ0)で定められる直線として求めることができる。多くの点を通る直線であればあるほど、その直線を表すθとρの位置を多くの軌跡が通過する。このように、ハフ変換は点群から直線を検出する用途に向いている。
【0033】
[ハフ投票]
点群から直線を検出するため、ハフ投票という工学的な手法が使われる。これはθとρを座標軸とする2次元のハフ投票空間に各軌跡の通過するθとρの組を投票することで、ハフ投票空間の得票の大きい位置に多数の軌跡の通過するθとρの組、すなわち直線の存在を示唆させるようにする手法である。一般的には、まずθとρについての必要な探索範囲分の大きさを持つ2次元の配列(ハフ投票空間)を用意して0で初期化しておく。次いで、点毎の軌跡をハフ変換によって求め、この軌跡が通過する配列上の値を1だけ加算する。これをハフ投票という。全ての点についてその軌跡を投票し終えると、得票0の位置(軌跡が1つも通過しなかった)には直線が存在せず、得票1の位置(軌跡が1つだけ通過した)には1つの点を通る直線が、得票2の位置(軌跡が2つだけ通過した)には2つの点を通る直線が、得票nの位置(軌跡がn個だけ通過した)にはn個の点を通る直線がそれぞれ存在することがわかる。ハフ投票空間の分解能を無限大にできれば、上述した通り、軌跡の通過する点のみが、そこを通過する軌跡の数だけの得票を得ることになるが、実際のハフ投票空間はθとρについて適当な分解能で量子化されているため、複数の軌跡が交差する位置の周辺にも高い得票分布が生じる。そのため、ハフ投票空間の得票分布から極大値を持つ位置を探すことで、軌跡の交差する位置をより正確に求める必要がある。
【0034】
投票部303は、次の投票条件を全て満たす周波数成分についてハフ投票を行う。この条件により、所定の周波数帯で所定閾値以上のパワーを持つ周波数成分のみが投票されることになる。
【0035】
すなわち、投票条件1は、周波数が所定範囲にあるもの(低域カットと高域カット)とする。また、投票条件2は、当該周波数成分fkのパワーP(fk)が所定閾値以上のもの、とする。
【0036】
投票条件1は、一般に暗騒音が乗っている低域をカットしたり、FFTの精度の落ちる高域をカットしたりする目的で使われる。この低域カットと高域カットの範囲は運用に合わせて調整可能である。最も広く周波数帯域を使う場合、低域カットは直流成分のみ、高域カットは最大周波数のみとする設定が適している。
【0037】
暗騒音程度の非常に弱い周波数成分ではFFT結果の信頼性が高くないと考えられる。投票条件2は、このような信頼性の低い周波数成分をパワーで閾値処理することで投票に参加させないようにする目的で使われる。マイク1aにおけるパワー値Po1(fk)、マイク1bにおけるパワー値Po2(fk)とすると、このとき評価されるパワーP(fk)の決め方には次の3つが考えられる。なお、いずれの条件を使用するかは運用に合わせて設定可能である。
【0038】
(平均値):Po1(fk)とPo2(fk)の平均値とする。両方のパワーがともに適度に強いことを必要とする条件である。
【0039】
(最小値):Po1(fk)とPo2(fk)の小さい方とする。両方のパワーが最低でも閾値以上あることを必要とする条件である。
【0040】
(最大値):Po1(fk)とPo2(fk)の大きい方とする。一方が閾値未満でも他方が十分強ければ投票するという条件である。
【0041】
また、投票部303は、投票に際して次の2つの加算方式を行うことが可能である。
【0042】
すなわち、加算方式1では、軌跡の通過位置に所定の固定値(例えば1)を加算する。加算方式2では、軌跡の通過位置に当該周波数成分fkのパワーP(fk)の関数値を加算する。
【0043】
加算方式1は、ハフ変換による直線検出問題で一般的によく用いられている方式であり、通過する点の多さに比例して得票に順位がつくため、多くの周波数成分を含む直線(すなわち音源)を優先的に検出するのに適している。このとき、直線に含まれる周波数成分について調波構造(含まれる周波数が等間隔であること)の制限がないので、人間の音声に限らずより幅広い種類の音源を検出することができる。
【0044】
また、加算方式2は、通過する点が少なくても、パワーの大きい周波数成分を含んでいれば上位の極大値を得ることのできる方式であり、周波数成分が少なくてもパワーの大きい有力な成分を持つ直線(すなわち音源)を検出するのに適している。加算方式2におけるパワーP(fk)の関数値はG(P(fk))として計算される。図13は、P(fk)をPo1(fk)とPo2(fk)の平均値とした場合のG(P(fk))の計算式を示したものである。この他にも上述した投票条件2と同様、Po1(fk)とPo2(fk)の最小値や最大値としてP(fk)を計算することも可能であり、投票条件2とは別に運用に合わせて設定可能である。中間パラメータVの値はP(fk)の対数値log10(P(fk))に所定のオフセットαを足した値として計算される。そしてVが正であるときはV+1の値を、Vがゼロ以下であるときには1を、関数G(P(fk))の値とする。このように最低でも1を投票することで、パワーの大きい周波数成分を含む直線(音源)が上位に浮上するだけでなく、多数の周波数成分を含む直線(音源)も上位に浮上するという加算方式1の多数決的な性質を併せ持たせることができる。投票部303は、設定によって加算方式1と加算方式2のいずれを行うことも可能であるが、特に後者を用いることで、周波数成分の少ない音源も同時に検出することが可能になり、さらに幅広い種類の音源を検出できるようになる。
【0045】
[複数FFT結果をまとめて投票]
さらに、投票部303は、1回のFFT毎に投票を行うことも可能だが、一般的に連続するm回(m≧1)の時系列的なFFT結果についてまとめて投票を行なうこととする。長期的には音源の周波数成分は変動するものであるが、このようにすることで、周波数成分の安定している適度に短期間の複数時刻のFFT結果から得られるより多くのデータを用いて、より信頼性の高いハフ投票結果を得ることができるようになる。なお、このmは運用に合わせてパラメータとして設定可能とする。
【0046】
[直線検出部304]
直線検出部304は、投票部303によって生成されたハフ投票空間上の得票分布を解析して有力な直線を検出する手段である。但し、このとき、図9で述べた位相差の循環性など、本問題に特有の事情を考慮することで、より高精度な直線検出を実現する。
【0047】
図14に、室内雑音環境下で1人の人物がマイクロホン対の正面約20度左より発話した実際の音声を用いて処理したときの周波数成分のパワースペクトル、連続する5回分(前述のm=5)のFFT結果から得た周波数成分毎の位相差プロット図、同じ5回分のFFT結果から得たハフ投票結果(得票分布)を示す。ここまでの処理は音響信号入力部2から投票部303までの一連の機能ブロックで実行される。
【0048】
マイクロホン対で取得された振幅データは、周波数分解部3によって周波数成分毎のパワー値と位相値のデータに変換される。図14において、180と181は、横軸を時間として、周波数成分毎のパワー値の対数を輝度表示(黒いほど大きい)したものである。縦の1ラインが1回のFFT結果に対応し、これを時間経過(右向き)に沿ってグラフ化した図である。上段180がマイク1a、下段181がマイク1bからの信号を処理した結果であり、多数の周波数成分が検出されている。この周波数分解結果を受けて、位相差算出部301により周波数成分毎の位相差が求められ、座標値決定部302によりその(x,y)座標値が算出される。図14において、182はある時刻183から連続5回分のFFTによって得た位相差をプロットした図である。この図で原点から左に傾いた直線184に沿う点群分布が認められるが、その分布は直線184上にきれいに乗っているわけではなく、またこの直線184から離れた多数の点が存在している。投票部303により、このような分布を示している各点がハフ投票空間に投票されて得票分布185を形成する。なお、図の185は加算方式2を用いて生成された得票分布である。
【0049】
[ρ=0の制約]
ところで、マイク1aとマイク1bの信号が音響信号入力部2によって同相でA/D変換される場合、検出されるべき直線は必ずρ=0、すなわちXY座標系の原点を通る。したがって、音源の推定問題は、ハフ投票空間上でρ=0となるθ軸上の得票分布S(θ,0)から極大値を探索する問題に帰着する。図14で例示したデータに対してθ軸上で極大値を探索した結果を図15に示す。
【0050】
図15において、得票分布190は図13における得票分布185と同一のものである。棒グラフ192は、θ軸191上の得票分布S(θ,0)をH(θ)として抜き出したものである。この得票分布H(θ)には幾つか極大箇所(突出部)が存在している。直線検出部304は、得票分布H(θ)に対して、(1)ある位置について左右に自身と同点のものが続く限り探索したときに、最後に自身より低得票のものだけが現れた箇所を残す。この結果、得票分布H(θ)上の極大部が抽出されるが、この極大部には平坦な頂を持つものが含まれるので、そこでは極大値が連続する。そこで直線検出部304は、(2)細線化処理によって極大部の中央位置だけを極大位置193として残す。そして最後に、(3)得票が所定閾値以上となる極大位置のみを直線として検出する。このようにすることで十分な得票を得た直線のθを正確に割り出すことができる。図の例では、上記(2)において検出された極大位置194、195、196のうち、極大位置194が平坦な極大部から細線化処理によって残された中央位置(偶数連続時は右が優先)である。また、唯一196だけが閾値以上の得票を得て検出された直線となる。この極大位置196によって与えられるθとρ(=0)とにより、直線(基準直線)197は定義される。なお、細線化処理のアルゴリズムは、ハフ変換の説明で参照した参考文献2の第89頁〜第92頁に記載される「田村の方法」を1次元化して使うことが可能である。直線検出部304は、このようにして1乃至複数の極大位置(所定閾値以上の得票を得た中央位置)を検出すると、その得票の多い順に順位を付けて各極大位置のθとρの値を出力する。
【0051】
[位相差循環を考慮した直線群の定義]
ところで、図15で例示した直線197は、(θ0,0)なる極大位置196によって定義されたXY座標原点を通る直線である。しかし、実際には位相差の循環性によって、図15の直線197がΔρ199だけ平行移動してX軸上の反対側から循環してくる直線198もまた197と同じ到達時間差を示す直線である。この直線198のように直線197を延長してXの値域からはみ出した部分が反対側から循環的に現れる直線を、直線197の「循環延長線」、基準となった直線197を「基準直線」とそれぞれ呼ぶことにする。もし、基準直線197がさらに傾いておれば、循環延長線はさらに数を増すことになる。ここで係数aを0以上の整数とすると、到達時間差を同じくする直線は全て(θ0,0)で定義される基準直線197をΔρずつ平行移動させた直線群(θ0,aΔρ)となる。さらに、起点となるρについてρ=0の制約をはずしてρ=ρ0として一般化すると、直線群は(θ0,aΔρ+ρ0)として記述できることになる。このとき、Δρは直線の傾きθの関数Δρ(θ)として図16に示す式で定義される符号付きの値である。
【0052】
図16において、基準直線200は(θ,0)で定義される。このとき、基準直線200が右に傾いているので定義に従いθは負値であるが、図ではその絶対値として扱う。図16における直線201は基準直線200の循環延長線であり、点RにおいてX軸と交差している。また、基準直線200と循環延長線201の間隔は補助線202で示す通りΔρであり、補助線202は点Oにおいて基準直線200と垂直に交差し、点Uにおいて循環延長線201と垂直に交差している。このとき、基準直線が右に傾いているので定義に従いΔρも負値であるが、図ではその絶対値として扱う。図16における△OQPは辺OQの長さがπとなる直角三角形であり、これと合同な三角形が△RTSである。故に辺RTの長さもπであり、△OURの斜辺ORの長さが2πであることがわかる。このとき、Δρは辺OUの長さであるから、Δρ=2πcosθとなる。そして、θとΔρの符号を考慮すると図の計算式が導き出される。
【0053】
[位相差循環を考慮した極大位置検出]
位相差の循環性から、音源を表す直線は1つではなく基準直線と循環延長線とからなる直線群として扱われるべきであることを述べた。このことは得票分布から極大位置を検出する際にも考慮されなければならない。通常、位相差の循環が起きないか、起きても小規模で収まるマイクロホン対の正面付近のみで音源を検出する場合に限れば、ρ=0(あるいはρ=ρ0)上の得票値(すなわち基準直線の得票値)のみで極大位置を探索する上述の方法は性能的に十分であるばかりか、探索時間の短縮と精度の向上に効果がある。しかし、より広い範囲に存在する音源を検出しようとする場合には、あるθについてΔρずつ離れた数箇所の得票値を合計して極大位置を探索する必要がある。この違いを以下で説明する。
【0054】
図17に、室内雑音環境下で2人の人物がマイクロホン対の正面約20度左と約45度右から同時に発話した実際の音声を用いて処理したときの周波数成分のパワースペクトル、5回分(m=5)のFFT結果から得た周波数成分毎の位相差プロット図、同じ5回分のFFT結果から得たハフ投票結果(得票分布)を示す。
【0055】
マイクロホン対で取得された振幅データは、周波数分解部3によって周波数成分毎のパワー値と位相値のデータに変換される。図17において、210と211は、縦軸を周波数、横軸を時間として、周波数成分毎のパワー値の対数を輝度表示(黒いほど大きい)したものである。縦の1ラインが1回のFFT結果に対応し、これを時間経過(右向き)に沿ってグラフ化した図である。上段210がマイク1a、下段211がマイク1bからの信号を処理した結果であり、多数の周波数成分が検出されている。この周波数分解結果を受けて、位相差算出部301により周波数成分毎の位相差が求められ、座標値決定部302によりその(x,y)座標値が算出される。プロット図212は、ある時刻213から連続5回分のFFTによって得た位相差をプロットしものである。このプロット図212において原点から左に傾いた基準直線214に沿う点群分布と右に傾いた基準直線215に沿う点群分布が認められる。投票部303により、このような分布を示している各点がハフ投票空間に投票されて得票分布216を形成する。なお、得票分布216は、加算方式2を用いて生成されたものである。
【0056】
図18はθ軸上の得票値のみで極大位置を探索した結果を示した図である。図18における得票分布220は図17における得票分布216と同一のものである。棒グラフ222は、θ軸221上の得票分布S(θ,0)をH(θ)として抜き出して棒グラフにしたものである。この得票分布H(θ)には幾つか極大箇所(突出部)が存在しているが、総じてθの絶対値が大きくなるほど得票が少なくなることがわかる。この得票分布H(θ)からは、極大位置グラフ223に示すように4つの極大位置224、225、226、227が検出される。このうち、唯一、極大位置227だけが閾値以上の得票を得る。これにより1つの直線群(基準直線228と循環延長線229)が検出される。この直線群はマイクロホン対の正面約20度左からの音声を検出したものであるが、マイクロホン対の正面約45度右からの音声は検出できていない。原点を通る基準直線ではその角度が大きいほどXの値域を超えるまでに少ない周波数帯しか通過できないため、基準直線が通過する周波数帯の広さはθによって異なる(不公平がある)。そして、ρ=0の制約は、この不公平な条件で基準直線だけの得票を競わせることになるため、角度の大きい直線ほど得票で不利になるのである。これが約45度右からの音声を検出できなかった理由である。
【0057】
一方、図19はΔρずつ離れた数箇所の得票値を合計して極大位置を探索した結果を示した図である。図中の240は、図17における得票分布216上に、原点を通る直線をΔρずつ平行移動させたときのρの位置を破線242〜249で表示したものである。このとき、θ軸241と破線242〜245、及びθ軸241と破線246〜249はそれぞれΔρ(θ)の自然数倍で等間隔に離れている。なお、直線がXの値域を越えずにプロット図の天井まで抜けることが確実なθ=0には破線が存在しない。
【0058】
あるθ0の得票H(θ0)は、θ=θ0の位置で縦に見たときのθ軸241上の得票と破線242〜249上の得票の合計値、すなわちH(θ0)=Σ{S(θ0,aΔρ(θ0))}として計算される。この操作はθ=θ0となる基準直線とその循環延長線の得票を合計することに相当する。この得票分布H(θ)を棒グラフにしたものが図中の250である。図18の222と異なり、この分布ではθの絶対値が大きくなっても得票が少なくなっていない。これは、得票計算に循環延長線を加えたことで全てのθについて同じ周波数帯を使うことができるようになったからである。この得票分布250からは図中251に示す10個の極大位置が検出される。このうち、極大位置252と253が閾値以上の得票を得て、マイクロホン対の正面約20度左からの音声を検出した直線群(極大位置253に対応する基準直線254と循環延長線255)と、マイクロホン対の正面約45度右からの音声を検出した直線群(極大位置252に対応する基準直線256と循環延長線257と258)の2つが検出される。このようにΔρずつ離れた箇所の得票値を合計して極大位置を探索することで、角度の小さい直線から角度の大きい直線まで安定に検出できるようになる。
【0059】
[非同相の場合を考慮した極大位置検出:一般化]
さて、マイク1aとマイク1bの信号が音響信号入力部2によって同相でA/D変換されない場合、検出されるべき直線はρ=0、すなわちXY座標原点を通らない。この場合はρ=0の制約をはずして極大位置を探索する必要がある。
【0060】
ρ=0の制約をはずした基準直線を一般化して(θ0,ρ0)と記述すると、その直線群(基準直線と循環延長線)は(θ0,aΔρ(θ0)+ρ0)と記述できる。ここでΔρ(θ0)はθ0によって決まる循環延長線の平行移動量である。音源がある方向から来るときに、それに対応したθ0における直線群は最も有力なものが1つ存在するだけである。その直線群は、様々にρ0を変えたときの直線群の得票Σ{S(θ0,aΔρ(θ0)+ρ0)}が最大となるρ0の値ρ0maxを使って(θ0,aΔρ(θ0)+ρ0max)で与えられる。そこで、各θにおける得票H(θ)をそれぞれのθにおける最大得票値Σ{S(θ,aΔρ(θ)+ρ0max)}とすることで、ρ=0の制約時と同じ極大位置検出アルゴリズムを適用した直線検出を行なうことができるようになる。
【0061】
なお、このようにして検出された直線群の数が音源の数である。
【0062】
[音源情報生成部6]
図20に示すように、音源情報生成部6は、方向推定部311と、音源成分推定部312と、音源音再合成部313と、時系列追跡部314と、継続時間評価部315と、同相化部316と、適応アレイ処理部317と、音声認識部318とを具備する。
【0063】
[方向推定部311]
方向推定部311は、以上で述べた直線検出部304による直線検出結果、すなわち直線群毎のθ値を受けて、各直線群に対応した音源の存在範囲を計算する手段である。このとき、検出された直線群の数が音源の数(全候補)となる。マイクロホン対のベースラインに対して音源までの距離が十分遠い場合、音源の存在範囲はマイクロホン対のベースラインに対してある角度を持った円錐面となる。これを図21を参照して説明する。
【0064】
マイク1aとマイク1bの到達時間差ΔTは±ΔTmaxの範囲で変化し得る。図21(a)のように、正面から入射する場合、ΔTは0となり、音源の方位角φは正面を基準にした場合0°となる。また、図21(b)のように音声が右真横、すなわちマイク1b方向から入射する場合、ΔTは+ΔTmaxに等しく、音源の方位角φは正面を基準にして右回りを正として+90°となる。同様に、図21(c)のように音声が左真横、すなわちマイク1a方向から入射する場合、ΔTは−ΔTmaxに等しく、方位角φは−90°となる。このように、ΔTを音が右から入射するとき正、左から入射するとき負となるように定義する。
【0065】
以上を踏まえて図21(d)のような一般的な条件を考える。マイク1aの位置をA、マイク1bの位置をBとし、音声が線分PA方向から入射すると仮定すると、△PABは頂点Pが直角となる直角三角形となる。このとき、マイク間中心O、線分OCをマイクロホン対の正面方向として、OC方向を方位角0°とした左回りを正にとる角度を方位角φと定義する。△QOBは△PABの相似形となるので、方位角φの絶対値は∠OBQ、すなわち∠ABPに等しく、符号はΔTの符号に一致する。また、∠ABPはPAとABの比のsin−1として計算可能である。このとき、線分PAの長さをこれに相当するΔTで表すと、線分ABの長さはΔTmaxに相当する。したがって、符号も含めて、方位角はφ=sin−1(ΔT/ΔTmax)として計算することができる。そして、音源の存在範囲は点Oを頂点、ベースラインABを軸として、(90−φ)°開いた円錐面260として推定される。音源はこの円錐面260上のどこかにある。
【0066】
図22に示すように、ΔTmaxはマイク間距離L[m]を音速Vs[m/sec]で割った値である。このとき、音速Vsは気温t[℃]の関数として近似できることが知られている。今、直線検出部304によって直線270がハフの傾きθで検出されているとする。この直線270は右に傾いているのでθは負値である。y=k(周波数fk)のとき、直線270で示される位相差ΔPhはkとθの関数としてk・tan(−θ)で求めることができる。このときΔT[sec]は、位相差ΔPh(θ,k)の2πに対する割合を、周波数fkの1周期(1/fk)[sec]に乗じた時間となる。θが符号付きの量なので、ΔTも符号付きの量となる。すなわち、図21(d)で音が右から入射する(位相差ΔPhが正値となる)とき、θは負値となる。また、図21(d)で音が左から入射する(位相差ΔPhが負値となる)とき、θは正値となる。そのために、θの符号を反転させている。なお、実際の計算においては、k=1(直流成分k=0のすぐ上の周波数)で計算を行えば良い。
【0067】
[音源成分推定部312]
音源成分推定部312は、座標値決定部302により与えられた周波数成分毎の(x,y)座標値と、直線検出部304により検出された直線との距離を評価することで、直線近傍に位置する点(すなわち周波数成分)を当該直線(すなわち音源)の周波数成分として検出し、この検出結果に基づいて音源毎の周波数成分を推定するための手段である。
【0068】
[距離閾値方式による検出]
図23に複数の音源が存在するときの音源成分推定の原理を模式的に示す。図23(a)は図9に示したものと同じ周波数と位相差のプロット図であり、2つの音源がマイクロホン対に対して異なる方向に存在している場合を示している。図23(a)の280は1つの直線群をなし、図23(a)の281と282は別の直線群をなす。図23(a)の黒丸は周波数成分毎の位相差位置を表している。
【0069】
直線群280に対応する音源音を構成する周波数成分は、図23(b)に示すように、直線280から左右にそれぞれ水平距離283だけ離れた直線284と直線285に挟まれる領域286内に位置する周波数成分(図の黒丸)として検出される。ある周波数成分がある直線の成分として検出されることを、周波数成分が直線に帰属する(あるいは属する)ということにする。
【0070】
同様に、直線群(281、282)に対応する音源音を構成する周波数成分は、図23(c)に示すように、直線281と直線282から左右にそれぞれ水平距離283だけ離れた直線に挟まれる領域287と288内に位置する周波数成分(図の黒丸)として検出される。
【0071】
なお、このとき周波数成分289と原点(直流成分)の2点は、領域286と領域288の両方に含まれるので、両音源の成分として二重に検出される(多重帰属)。このように、周波数成分と直線との水平距離を閾値処理して、直線群(音源)毎に閾値内に存在する周波数成分を選択し、そのパワーと位相をそのまま当該音源音の成分とする方式を「距離閾値方式」と呼ぶことにする。
【0072】
[最近傍方式による検出]
図24は、図23において多重帰属する周波数成分289について、どちらか最も近い方の直線群にのみ属させるようにした結果を示した図である。直線280と直線282に対する周波数成分289の水平距離を比較した結果、周波数成分289は直線282に最も近いことが判明する。このとき、周波数成分289は直線282近傍の領域288に入っている。よって、周波数成分289は、図24(b)に示すように直線群(281、282)に属する成分として検出される。このように、周波数成分毎に水平距離で最も近い直線(音源)を選択し、その水平距離が所定閾値内にある場合に当該周波数成分のパワーと位相をそのまま当該音源音の成分とする方式を「最近傍方式」と呼ぶことにする。なお、直流成分(原点)は特別扱いとして両方の直線群(音源)に帰属させるものとする。
【0073】
[距離係数方式による検出]
上記2つの方式は、直線群を構成する直線に対して所定の水平距離閾値内に存在する周波数成分だけを選択し、そのパワーと位相をそのままにして直線群に対応する音源音の周波数成分としていた。一方、次に述べる「距離係数方式」は、周波数成分と直線との水平距離dの増大に応じて単調減少する非負係数αを計算し、これを当該周波数成分のパワーに乗じることで、直線から水平距離で遠い成分ほど弱いパワーで音源音に寄与するようにした方式である。
【0074】
このとき、水平距離による閾値処理を行う必要はなく、ある直線群に対する各周波数成分の水平距離(直線群の中の最も近い直線との水平距離)dを求め、その水平距離dに基づいて定められる係数αを当該周波数成分のパワーに乗じた値を、当該直線群における当該周波数成分のパワーとする。水平距離dの増大に応じて単調減少する非負係数αの計算式は任意であるが、一例として図25に示すシグモイド(S字曲線)関数α=exp(−(B・d)C)が挙げられる。このとき図に例示したように、Bを正の数値(図では1.5)、Cを1より大きい数値(図では2.0)とすると、d=0のときα=1、d→∞のときα→0となる。非負係数αの減少の度合いが急峻、すなわちBが大きいと直線群からはずれた成分が排除され易くなるので、音源方向に対する指向性が鋭くなり、逆に非負係数αの減少の度合いが緩慢、すなわちBが小さいと指向性が鈍くなる。
【0075】
[複数FFT結果の扱い]
既に述べたように、投票部303は1回のFFT毎に投票を行うことも、連続するm回(m≧1)のFFT結果をまとめて投票することも可能である。したがって、ハフ投票結果を処理する直線検出部304以降の機能ブロックは1回のハフ変換が実行される期間を単位として動作する。このとき、m≧2でハフ投票が行われるときは、複数時刻のFFT結果がそれぞれの音源音を構成する成分として分類されることになり、時刻の異なる同一周波数成分が別々の音源音に帰属させられることも起こり得る。これを扱うために、mの値に関わらず、座標値決定部302によって、各周波数成分(すなわち、図24に例示した黒丸)にはそれが取得されたフレームの開始時刻が取得時刻の情報として付与されており、どの時刻のどの周波数成分がどの音源に帰属するかを参照可能にする。すなわち、音源音がその周波数成分の時系列データとして分離抽出される。
【0076】
[パワー保存オプション]
なお、上述した各方式において、複数(N個)の直線群(音源)に属する周波数成分(最近傍方式では直流成分のみ、距離係数方式では全周波数成分が該当)では、各音源に配分される同一時刻の当該周波数成分のパワーを、その合計が配分前の当該時刻のパワー値Po(fk)に等しくなるように正規化してN分割することも可能である。このようにすることで、同一時刻の周波数成分毎に音源全体での合計パワーを入力と同じに保つことができる。これを「パワー保存オプション」と呼ぶことにする。配分の仕方には次の2つの考え方がある。
【0077】
すなわち、(1)N等分(距離閾値方式と最近傍方式に適用可能)と、(2)各直線群との距離に応じた配分(距離閾値方式と距離係数方式に適用可能)である。
【0078】
(1)はN等分することで自動的に正規化が達成される配分方法であり、距離に関係なく配分を決める距離閾値方式と最近傍方式に適用可能である。
【0079】
(2)は距離係数方式と同様にして係数を決めた後、さらにそれらの合計が1になるように正規化することでパワーの合計を保存する配分方法であり、原点以外で多重帰属の発生する距離閾値方式と距離係数方式に適用可能である。
【0080】
なお、音源成分推定部312は、設定によって距離閾値方式と最近傍方式と距離係数方式のいずれを行うことも可能である。また、距離閾値方式と最近傍方式において上述したパワー保存オプションを選択することが可能である。
【0081】
[音源音再合成部313]
音源音再合成部313は、各音源音を構成する同一取得時刻の周波数成分を逆FFT処理することによって、当該時刻を開始時刻とするフレーム区間の当該音源音(振幅データ)を再合成する。図3に図示したように、1つのフレームは次のフレームとフレームシフト量だけの時間差をおいて重複している。このように複数のフレームで重複している区間では、重複する全てのフレームの振幅データを平均して最終的な振幅データと成すことができる。このような処理によって、音源音をその振幅データとして分離抽出することが可能になる。
【0082】
[時系列追跡部314]
上述した通り、投票部303によるハフ投票毎に直線検出部304により直線群が求められる。ハフ投票は連続するm回(m≧1)のFFT結果についてまとめて行われる。この結果、直線群はmフレーム分の時間を周期(これを「図形検出周期」と呼ぶことにする)として時系列的に求められることになる。また、直線群のθは方向推定部305により計算される音源方向φと1対1に対応しているので、音源が静止していても移動していても、安定な音源に対応しているθ(あるいはφ)の時間軸上の軌跡は連続しているはずである。一方、直線検出部304により検出された直線群の中には、閾値の設定具合によって背景雑音に対応する直線群(これを「雑音直線群」と呼ぶことにする)が含まれていることがある。しかしながら、このような雑音直線群のθ(あるいはφ)の時間軸上の軌跡は連続していないか、連続していても短いことが期待できる。
【0083】
時系列追跡部314は、このように図形検出周期毎に求められるφを時間軸上で連続なグループに分けることで、φの時間軸上の軌跡を求める手段である。図26を用いてグループ分けの方法を説明する。
【0084】
(1)軌跡データバッファを用意する。軌跡データバッファは軌跡データの配列である。1つの軌跡データKdは、その開始時刻Tsと、終了時刻Teと、当該軌跡を構成する直線群データLdの配列(直線群リスト)と、ラベル番号Lnとを保持することができる。1つの直線群データLdは、当該軌跡を構成する1つの直線群のθ値とρ値(直線検出部304による)と、この直線群に対応した音源方向を表すφ値(方向推定部311による)と、この直線群に対応した周波数成分(音源成分推定部312による)と、それらが取得された時刻とからなる一群のデータである。なお、軌跡データバッファは最初空である。また、ラベル番号を発行するためのパラメータとして新規ラベル番号を用意し、初期値を0に設定する。
【0085】
(2)ある時刻Tにおいて、新しく得られたφのそれぞれ(以後φnとし、図中では黒丸303と黒丸304で示される2つが得られたものとする)について、軌跡データバッファに保持されている軌跡データKd(図中の矩形301と302)の直線群データLd(図中の矩形内に配置された黒丸)を参照し、そのφ値とφnの差(図中の305と306)が所定角度閾値Δφ内にあり、かつその取得時刻の差(図中の307と308)が所定時間閾値Δt内にあるLdを持つ軌跡データを検出する。この結果、黒丸303については軌跡データ301が検出されたが、黒丸304については最も近い軌跡データ302も上記条件を満たさなかったとする。
【0086】
(3)黒丸303のように、もし、(2)の条件を満たす軌跡データが見つかった場合は、φnはこの軌跡と同一の軌跡を成すものとして、このφnとそれに対応したθ値とρ値と周波数成分と現時刻Tとを当該軌跡Kdの新たな直線群データとして直線群リストに追加し、現時刻Tを当該軌跡の新たな終了時刻Teとする。このとき、複数の軌跡が見つかった場合には、それら全てが同一の軌跡を成すものとして、最も若いラベル番号を持つ軌跡データに統合して、残りを軌跡データバッファから削除する。統合された軌跡データの開始時刻Tsは統合前の各軌跡データの中で最も早い開始時刻であり、終了時刻Teは統合前の各軌跡データの中で最も遅い終了時刻であり、直線群リストは統合前の各軌跡データの直線群リストの和集合である。この結果、黒丸303は軌跡データ301に追加される。
【0087】
(4)黒丸304のように、もし、(2)の条件を満たす軌跡データが見つからなかった場合は、新規の軌跡の始まりとし、軌跡データバッファの空き部分に新しい軌跡データを作成し、開始時刻Tsと終了時刻Teを共に現時刻Tとし、φnとそれに対応したθ値とρ値と周波数成分と現時刻Tとを直線群リストの最初の直線群データとし、新規ラベル番号の値をこの軌跡のラベル番号Lnとして与え、新規ラベル番号を1だけ増加させる。なお、新規ラベル番号が所定の最大値に達したときは、新規ラベル番号を0に戻す。この結果、黒丸304は新たな軌跡データとして軌跡データバッファに登録される。
【0088】
(5)もし、軌跡データバッファに保持されている軌跡データで、最後に更新されてから(すなわちその終了時刻Teから)現時刻Tまでに前記所定時間Δtを経過したものがあれば、追加すべき新たなφnの見つからなかった、すなわち追跡の満了した軌跡として、この軌跡データを次段の継続時間評価部315に出力した後、当該軌跡データを軌跡データバッファから削除する。図の例では軌跡データ302がこれに該当する。
【0089】
[継続時間評価部315]
継続時間評価部315は、時系列追跡部314により出力された追跡の満了した軌跡データの開始時刻と終了時刻から当該軌跡の継続時間を計算し、この継続時間が所定閾値を越えるものを音源音に基づく軌跡データと認定し、それ以外を雑音に基づく軌跡データと認定する。音源音に基づく軌跡データを音源ストリーム情報と呼ぶことにする。音源ストリーム情報には、当該音源音の開始時刻Ts、終了時刻Te、当該音源方向を表すθとρとφの時系列的な軌跡データが含まれる。なお、図形検出部5による直線群の数が音源の数を与えるが、そこには雑音源も含まれている。継続時間評価部315による音源ストリーム情報の数は、雑音に基づくものを除いた信頼できる音源の数を与えてくれる。
【0090】
[同相化部316]
同相化部316は、時系列追跡部314による音源ストリーム情報を参照することで、当該ストリームの音源方向φの時間推移を得て、φの最大値φmaxと最小値φminから中間値φmid=(φmax+φmin)/2を計算して幅φw=φmax−φmidを求める。そして、当該音源ストリーム情報の元となった2つの周波数分解データセットaとbの時系列データを、当該ストリームの開始時刻Tsより所定時間遡った時刻から終了時刻Teより所定時間経過した時刻まで抽出して、中間値φmidで逆算される到達時間差をキャンセルするように補正することで同相化する。
【0091】
あるいは、方向推定部311による各時刻の音源方向φをφmidとして、2つの周波数分解データセットaとbの時系列データを常時同相化することもできる。音源ストリーム情報を参照するか、各時刻のφを参照するかは動作モードで決定され、この動作モードはパラメータとして設定・変更可能である。
【0092】
[適応アレイ処理部317]
適応アレイ処理部317は、抽出・同相化された2つの周波数分解データセットaとbの時系列データを、正面0°に中心指向性を向け、±φwに所定のマージンを加えた値を追従範囲とする適応アレイ処理に掛けることで、当該ストリームの音源音の周波数成分の時系列データを高精度に分離抽出する。この処理は方法こそ異なるが、周波数成分の時系列データを分離抽出する点において音源成分推定部312と同様の働きをする。それ故、音源音再合成部313は、適応アレイ処理部317による音源音の周波数成分の時系列データからも、その音源音の振幅データを再合成することができる。
【0093】
なお、適応アレイ処理としては、参考文献3「天田皇ほか“音声認識のためのマイクロホンアレー技術”,東芝レビュー2004,VOL.59,NO.9,2004」に記載のように、それ自体がビームフォーマの構成方法として知られている「Griffith−Jim型一般化サイドローブキャンセラ」を主副2つに用いるなど、設定された指向性範囲内の音声を明瞭に分離抽出する方法を適用することができる。
【0094】
通常、適応アレイ処理を用いる場合、事前に追従範囲を設定し、その方向からの音声のみを待ち受ける使い方をするため、全方位からの音声を待ち受けるためには追従範囲を異ならせた多数の適応アレイを用意する必要があった。一方、本実施形態では、実際に音源の数とその方向を求めたうえで、音源数に応じた数の適応アレイだけを稼動させることができ、その追従範囲も音源の方向に応じた所定の狭い範囲に設定することができるので、音声を効率良くかつ品質良く分離抽出できる。
【0095】
また、このとき、事前に2つの周波数分解データセットaとbの時系列データを同相化することで、適応アレイ処理における追従範囲を正面付近にのみ設定するだけで、あらゆる方向の音を処理できるようになる。
【0096】
[音声認識部318]
音声認識部318は、音源成分推定部312もしくは適応アレイ処理部317により抽出された音源音の周波数成分の時系列データを解析照合することで、当該ストリームの記号的な内容、すなわち、言語的な意味や音源の種別や話者の別を表す記号(列)を抽出する。
【0097】
なお、方向推定部311から音声認識部318までの各機能ブロックは、必要に応じて図20に図示しない結線によって情報のやりとりが可能であるものとする。
【0098】
[出力部7]
出力部7は、音源情報生成部6による音源情報として、図形検出部5による直線群の数として得られる音源の数、方向推定部311により推定される、音響信号の発生源たる各音源の空間的な存在範囲(円錐面を決定させる角度φ)、音源成分推定部312により推定される、各音源が発した音声の成分構成(周波数成分毎のパワーと位相の時系列データ)、音源音再合成部313により合成される、音源毎に分離された分離音声(振幅値の時系列データ)、時系列追跡部314と継続時間評価部315とに基づいて決定される、雑音源を除く音源の数、時系列追跡部314と継続時間評価部315とにより決定される、各音源が発した音声の時間的な存在期間、正面化部316と適応アレイ部317とにより求められる、音源毎の分離音声(振幅値の時系列データ)、音声認識部318により求められる、各音源音声の記号的内容、の少なくとも1つを含む情報を出力する手段である。
【0099】
[ユーザインタフェース部8]
ユーザインタフェース部8は、上述した音響信号処理に必要な各種設定内容の利用者への呈示、利用者からの設定入力受理、設定内容の外部記憶装置への保存と外部記憶装置からの読み出しを実行したり、図17や図19に示した(1)マイク毎の周波数成分の表示、(2)位相差(あるいは時間差)プロット図の表示(すなわち2次元データの表示)、(3)各種得票分布の表示、(4)極大位置の表示、(5)プロット図上の直線群の表示、図23や図24に示した(6)直線群に帰属する周波数成分の表示、図26に示した(7)軌跡データの表示、のように各種処理結果や中間結果を可視化して利用者に呈示したり、所望のデータを利用者に選択させてより詳細に可視化するための手段である。このようにすることで、利用者が本実施形態に係る音響信号処理装置の働きを確認したり、所望の動作を行ない得るように調整したり、以後は調整済みの状態で本装置を利用したりすることが可能になる。
【0100】
[処理の流れ図]
図27は本実施形態に係る音響信号処理装置が実行する処理の流れを示すフローチャートである。この処理は、初期設定処理ステップS1と、音響信号入力処理ステップS2と、周波数分解処理ステップS3と、2次元データ化処理ステップS4と、図形検出処理ステップS5と、音源情報生成処理ステップS6と、出力処理ステップS7と、終了判断処理ステップS8と、確認判断処理ステップS9と、情報呈示・設定受理処理ステップS10と、終了処理ステップS11とを有する。
【0101】
初期設定処理ステップS1は、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、音響信号処理に必要な各種設定内容を外部記憶装置から読み出して、装置を所定の設定状態に初期化する。
【0102】
音響信号入力処理ステップS2は、上述した音響信号入力部2における処理を実行する処理ステップであり、空間的に同一でない2つの位置で捉えられた2つの音響信号を入力する。
【0103】
周波数分解処理ステップS3は、上述した周波数分解部3における処理を実行する処理ステップであり、前記音響信号入力処理ステップS2による入力音響信号のそれぞれを周波数分解して、周波数毎の少なくとも位相値(と必要ならパワー値)を算出する。
【0104】
2次元データ化処理ステップS4は、上述した2次元データ化部4における処理を実行する処理ステップであり、前記周波数分解処理ステップS3により算出された各入力音響信号の周波数毎の位相値を比較して、両者の周波数毎の位相差値を算出し、該周波数毎の位相差値を、周波数の関数をY軸、位相差値の関数をX軸とするXY座標系上の点として、各周波数とその位相差により一意に決定される(x,y)座標値に変換する。
【0105】
図形検出処理ステップS5は、上述した図形検出部5における処理を実行する処理ステップであり、前記2次元データ化処理ステップS4による2次元データから所定の図形を検出する。
【0106】
音源情報生成処理ステップS6は、上述した音源情報生成部6における処理を実行する処理ステップであり、前記図形検出処理ステップS5により検出された図形の情報に基づいて、前記音響信号の発生源たる音源の数、各音源の空間的な存在範囲、前記各音源を発した音声の成分構成、前記音源毎の分離音声、前記各音源を発した音声の時間的な存在期間、前記各音源を発した音声の記号的内容、の少なくとも1つを含む音源情報を生成する。
【0107】
出力処理ステップS7は、上述した出力部7における処理を実行する処理ステップであり、前記音源情報生成処理ステップS6により生成された音源情報を出力する。
【0108】
終了判断処理ステップS8は、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、利用者からの終了命令の有無を検査して、終了命令が有る場合には終了処理ステップS11へ(左分岐)、無い場合には確認判断処理ステップS9へ(上分岐)と処理の流れを制御する。
【0109】
確認判断処理ステップS9は、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、利用者からの確認命令の有無を検査して、確認命令が有る場合には情報呈示・設定受理処理ステップS10へ(左分岐)、無い場合には音響信号処理ステップS2(上分岐)と処理の流れを制御する。
【0110】
情報呈示・設定受理処理ステップS10は、利用者からの確認命令を受けて実行される、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、音響信号処理に必要な各種設定内容の利用者への呈示、利用者からの設定入力受理、保存命令による設定内容の外部記憶装置への保存、読み出し命令による設定内容の外部記憶装置からの読み出しを実行したり、各種処理結果や中間結果を可視化して利用者に呈示したり、所望のデータを利用者に選択させてより詳細に可視化することで、利用者が音響信号処理の動作を確認したり、所望の動作を行ない得るように調整したり、以後調整済みの状態で処理を継続したりすることを可能にする。
【0111】
終了処理ステップS11は、利用者からの終了命令を受けて実行される、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、音響信号処理に必要な各種設定内容の外部記憶装置への保存を自動実行する。
【0112】
[変形例] ここで、上述した実施形態の変形例を説明する。
【0113】
[垂直線の検出]
2次元データ化部4は、その座標値決定部302によって、図7に示すようにX座標値を位相差ΔPh(fk)、Y座標値を周波数成分番号kとして点群を生成した。このとき、X座標値を位相差ΔPh(fk)からさらに計算される到達時間差の周波数毎の推定値ΔT(fk)=(ΔPh(fk)/2π)×(1/fk)とすることも可能である。位相差の代わりに到達時間差を使うと、同一の到達時間差を持つ、すなわち同一音源に由来する点は垂直な直線上に並ぶことになる。
【0114】
このとき、周波数が高くなるほどΔPh(fk)で表現可能な時間差ΔT(fk)は小さくなる。図28(a)に模式的に示すように、周波数fkの波290の1周期が表す時間をTとすると、2倍の周波数2fkの波291の1周期が表すことのできる時間はT/2と半分になってしまう。このとき、図28(a)のようにX軸を時間差とすると、その範囲は±Tmaxであり、これを超えて時間差が観測されることはない。ところが、Tmaxが1/2周期(すなわちπ)以下となる限界周波数292以下の低い周波数では、位相差ΔPh(fk)から到達時間差ΔT(fk)が一意に求められるが、限界周波数292を超えた高い周波数では、算出されたΔT(fk)は理論上可能なTmaxよりも小さく、図28(b)に示すように直線293と294に挟まれる範囲しか表現できない。これは上述した位相差循環の問題と同じ問題である。
【0115】
そこで、この位相差循環の問題を解決するために、限界周波数292を超える周波数域については、図29に模式的に示すように、座標値決定部302が1つのΔPh(fk)について2π、4π、6πなどを足したり引いたりした位相差に対応するΔTの位置にも冗長な点を、±Tmaxの範囲内で生成して2次元データとする。生成された点群が図中の黒丸であり、限界周波数292を超えた周波数域では1つの周波数について複数の黒丸がプロットされている。
【0116】
このようにすることで、1つの位相差値に対して1乃至複数の点として生成される2次元データから、投票部303と直線検出部304から有力な垂直線(図中の295)をハフ投票によって検出することが可能になる。このとき、垂直線はハフ投票空間上でθ=0となる直線なので、垂直線の検出問題はハフ投票後の得票分布でθ=0となるρ軸上の極大位置で所定閾値以上の得票を得るものを検出することで解くことができる。ここで検出された極大位置のρ値が垂直線とX軸の交点、すなわち到達時間差ΔTの推定値を与えてくれる。なお、投票に際しては投票部303の説明に記載した投票条件と加算方式をそのまま用いることが可能である。また、音源に対応した直線は直線群ではなく単一の垂直線である。
【0117】
この極大位置を求める問題は、上述の冗長な点群のX座標値を投票した1次元の得票分布(Y軸方向へ射影投票した周辺分布)上の極大位置で所定閾値以上の得票を得るものを検出することで解くこともできる。このように、位相差の代わりに到達時間差をX軸に用いることで、異なる方向に存在する音源を表す証拠が全て同じ傾きの(すなわち垂直な)直線に写されるので、ハフ変換によらずとも周辺分布によって簡便に検出可能になる。
【0118】
垂直線を求めることで得られる音源方向の情報はθではなくρとして得られる到達時間差ΔTである。よって、方向推定部311はθを介在させることなくΔTから直ちに音源方向φを算出可能となる。
【0119】
このように、2次元データ化部4による2次元データは1種類に限らず、図形検出部5による図形の検出法も1つとは限らない。なお、図29に例示した到達時間差を使った点群のプロット図と検出された垂直線もユーザインタフェース部8による利用者への情報呈示対象である。
【0120】
[複数系統の並列実装]
また、以上の例はマイクロホンを2つ備えた最も単純な構成で説明したものであるが、図30に示すように、マイクロホンをN(N≧3)個備え、最大M(1≦M≦NC2)個のマイクロホン対を構成することも可能である。
【0121】
図中の11〜13はN個のマイクロホンである。図中の20はN個のマイクロホンによるN個の音響信号を入力する手段であり、図中の21は入力されたN個の音響信号をそれぞれ周波数分解する手段である。図中の22はN個の音響信号のうちの2つからなるM(1≦M≦NC2)組の対の各々について2次元データを生成する手段であり、図中の23は生成されたM組の2次元データからそれぞれ所定の図形を検出する手段である。図中の24は検出されたM組の図形の情報のそれぞれから音源の情報を生成する手段であり、図中の25は生成された音源の情報を出力する手段である。図中の26は各対を構成するマイクロホンの情報を含む各種設定値の利用者への呈示、利用者からの設定入力受理、外部記憶装置への設定値の保存、外部記憶装置からの設定値の読み出し、及び各種処理結果の利用者への呈示を実行する手段である。各マイクロホン対における処理は上述した実施形態と同様であり、そのような処理が複数のマイクロホン対について並列的に実行される。
【0122】
このようにすることで、1つのマイクロホン対では方向への得て不得手があっても、複数の対でカバーすることで正しい音源情報を取りこぼす危険を軽減することが可能になる。
【0123】
[汎用コンピュータを使った実施:プログラム]
また、本発明は、図31に示すように本発明に係る音響信号処理機能を実現するためのプログラムを実行可能な汎用コンピュータとして実施することも可能である。図中の31〜33はN個のマイクロホンである。図中の40はN個のマイクロホンによるN個の音響信号を入力するA/D変換手段であり、図中の41は入力されたN個の音響信号を処理するためのプログラム命令を実行するCPUである。図中の42〜47はコンピュータを構成する標準的なデバイスであり、それぞれRAM42、ROM43、HDD44、マウス/キーボード45、ディスプレイ46、LAN47である。また、図中の50〜52は外部から記憶メディアを介してプログラムやデータをコンピュータに供給するためのドライブ類であり、それぞれCDROM50、FDD51、CF/SDカード52である。図中の48は音響信号を出力するためのD/A変換手段であり、その出力にスピーカ49が繋がっている。このコンピュータ装置は、図27に示した処理ステップを実行するための音響信号処理プログラムをHDD44に記憶し、これをRAM42に読み出してCPU41で実行することで音響信号処理装置として機能する。また、外部記憶装置としてのHDD44、操作入力を受け付けるマウス/キーボード45、情報呈示手段としてのディスプレイ46とスピーカ49を使うことで、上述したユーザインタフェース部8の機能を実現する。また、音響信号処理によって得られた音源情報をRAM42やROM43やHDD44に保存出力したり、LAN47を介して通信出力する。
【0124】
[記録媒体]
また、本発明は図32に示すようにコンピュータ読み取り可能な記録媒体として実施することも可能である。図中の61は本発明に係る音響信号処理プログラムを記録したCD−ROMやCFやSDカードやフロッピー(登録商標)ディスクなどで実現される記録媒体である。この記録媒体61をテレビやコンピュータなどの電子装置62や電子装置63やロボット64に挿入することで当該プログラムを実行可能としたり、あるいはプログラムを供給された電子装置63から通信によって別の電子装置65やロボット64に当該プログラムを供給することで、電子装置65やロボット64上で当該プログラムを実行可能とする。
【0125】
[温度センサによる音速の補正]
また、本発明は装置に外気温を測定するための温度センサを備え、該温度センサによって計測された気温データに基づいて図22における音速Vsを補正して、正確なTmaxを求めるように実施することも可能である。
【0126】
あるいは、本発明は装置に所定の間隔を空けて配置された音波の発信手段と受信手段とを備え、該発信手段を発した音波が該受信手段に到達するまでの時刻を計測手段で測ることで、直接的に音速Vsを計算・補正して、正確なTmaxを求めるように実施することも可能である。
【0127】
[φの等間隔化のためのθの不等間隔化]
また、本発明は直線群の傾きを得るためにハフ変換を実行する際にθを例えば1°刻みというように量子化を行うが、このようにθを等間隔に刻むと推定可能な音源方向φの値が不等間隔に量子化されてしまう。そこで、本発明はφを等間隔とするようにθの量子化を行うことで、音源方向の推定精度に粗密が生じにくいように実施することも可能である。
【0128】
上記非特許文献2に記載の方法は、周波数分解データから調波構造を構成する基本周波数成分とその高調波成分を検出することで、音源の数、方向、成分の推定を行っている。調波構造を仮定することから、この方法は人間の声に特化したものであるといえる。しかし、実際の環境では、ドアの開閉音など、調波構造を持たない音源も多く存在するため、この方法ではそのような音源音を扱うことができない。
【0129】
また、上記非特許文献1に記載の方法は、特定のモデルに縛られないが、2つのマイクロホンを使う限り、扱うことのできる音源は1つに限られてしまう。
【0130】
一方、本発明の実施形態によれば、ハフ変換を使って周波数成分毎の位相差を音源毎のグループに分けることで、2つのマイクロホンを使いながら2つ以上の音源を定位し、かつ分離する機能を実現することができる。このとき、調波構造のような限定的なモデルを使用しないので、より広範な性質の音源に適用することができる。
【0131】
本発明の実施形態が奏する他の作用効果を纏めると以下の通りである。
【0132】
・ハフ投票に際して周波数成分の多い音源やパワーの強い音源の検出に適した投票方法を使うことで、幅広い種類の音源を安定に検出することができる。
【0133】
・直線検出に際してρ=0の制約や位相差循環の考慮を行うことで、効率良くかつ精度良く音源を検出することができる。
【0134】
・直線検出結果を用いて、音響信号の発生源たる音源の空間的な存在範囲、音源を発した音源音の時間的な存在期間、音源音の成分構成、音源音の分離音声、音源音の記号的内容を含む有益な音源情報を求めることができる。
【0135】
・各音源音の周波数成分を推定する際に、単純に直線近傍の成分を選択したり、ある成分がどの直線に帰属するかを判定したり、各直線と成分の距離に応じた係数掛けを行うことで、簡便な方法で音源音を個々に分離することができる。
【0136】
・各音源の方向を予め知ることで、適応アレイ処理の指向性範囲を適応的に設定して、より高精度に音源音を分離することができる。
【0137】
・各音源音を高精度に分離して認識することで、音源音の記号的内容を判別することができる。
【0138】
・利用者が本装置の働きを確認したり、所望の動作を行ない得るように調整したり、以後調整済みの状態で本装置を利用したりすることが可能になる。
【0139】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0140】
【図1】本発明の一実施形態に係る音響信号処理装置の機能ブロック図
【図2】音源方向と、音響信号において観察される到達時間差とを示す図
【図3】フレームとフレームシフト量との関係を示す図
【図4】FFT処理の手順および短時間フーリエ変換データを示す図
【図5】2次元データ化部および図形検出部のそれぞれの内部構成を示す機能ブロック図
【図6】位相差算出の手順を示す図
【図7】座標値計算の手順を示す図
【図8】同一時間について周波数と位相との間の比例関係、および同一時間差について位相差と周波数との間の比例関係を示す図
【図9】位相差の循環性を説明するための図
【図10】複数の音源が存在する場合の周波数と位相差のプロット図
【図11】直線ハフ変換について説明するための図
【図12】ハフ変換により点群から直線を検出することについて説明するための図
【図13】投票される平均パワーの関数(計算式)を示す図
【図14】実際の音声から生成された周波数成分、位相差プロット図、ハフ投票結果を示す図
【図15】実際のハフ投票結果から求められた極大位置と直線を示す図
【図16】θとΔρの関係を示す図
【図17】2人の人物の同時発話時の周波数成分、位相差プロット図、ハフ投票結果を示す図
【図18】θ軸上の得票値のみで極大位置を探索した結果を示す図
【図19】Δρずつ離れた数箇所の得票値を合計して極大位置を探索した結果を示す図
【図20】音源情報生成部の内部構成を示す機能ブロック図
【図21】方向推定を説明するための図
【図22】θとΔTとの関係を示す図
【図23】複数音源存在時の音源成分推定(距離閾値方式)について説明するための図
【図24】最近傍方式について説明するための図
【図25】係数αの計算式の例とそのグラフを示す図
【図26】φの時間軸上の追跡を説明した図
【図27】音響信号処理装置が実行する処理の流れを示すフローチャート
【図28】周波数と表現可能な時間差との関係を示す図
【図29】冗長点を生成した場合における時間差のプロット図
【図30】N個のマイクロホンを具備する変形実施形態に係る音響信号処理装置の機能ブロック構成図
【図31】本発明に係る音響信号処理機能を汎用コンピュータを用いて実現する実施形態に係る機能ブロック図
【図32】本発明に係る音響信号処理機能を実現するためのプログラムを記録した記録媒体による実施形態を示した図
【符号の説明】
【0141】
1a,1b…マイク;
2…音響信号入力部;
3…周波数分解部;
4…2次元データ化部;
5…図形検出部;
6…音源情報生成部;
7…出力部;
8…ユーザインタフェース部
【技術分野】
【0001】
本発明は音響信号処理に関し、特に、媒質中を伝播してきた音波の発信源の数、各発信源の方向、各発信源から到来した音波の周波数成分などの推定に関する。
【背景技術】
【0002】
近年、ロボット用の聴覚研究の分野で、雑音環境下で複数の目的音源音の数とその方向を推定し(音源定位)、各音源音を分離抽出する(音源分離)方式が提案されている。
【0003】
例えば、下記非特許文献1には、背景雑音のある環境でN個の音源音をM個のマイクロホンで観測し、各マイクロホン出力を短時間フーリエ変換(FFT)処理したデータから空間相関行列を生成し、これを固有値分解して値の大きい主要な固有値を求めることで、この主要な固有値の数として音源の数Nを推定する方法が記載されている。これは、音源音のように方向性のある信号は主要な固有値にマッピングされ、方向性のない背景雑音は全ての固有値にマッピングされる性質を利用したものである。主要な固有値に対応する固有ベクトルは音源からの信号が張る信号部分空間の基底ベクトルとなり、残りの固有値に対応する固有ベクトルは背景雑音信号が張る雑音部分空間の基底ベクトルとなる。この雑音部分空間の基底ベクトルを利用してMUSIC法を適用することで、各音源の位置ベクトルを探索することができ、探索の結果得られた方向に指向性を与えられたビームフォーマで当該音源からの音声を抽出することができる。しかしながら、音源数Nがマイクロホン数Mと同数であるときは、雑音部分空間を定義できず、また、音源数NがMを越えるときは検出できない音源が存在することになる。したがって、推定可能な音源の数はマイクロホン数M以上となることはない。この方法は、音源について特に大きな制約はなく、数学的にもきれいな方法であるが、多数の音源を扱うためには、それを超える数のマイクロホンが必要になるという制限がある。
【0004】
また、下記非特許文献2には、一対のマイクロホンを用いて音源定位と音源分離を行う方法について記載されている。この方法は、人間の声のように管(調音器官)を通して発生される音声に特有の調波構造(基本周波数とその高調波とからなる周波数構造)に着目し、マイクロホンで捉えた音声信号をフーリエ変換したデータから基本周波数の異なる調波構造を検出することで、検出された調波構造の数を発話者の数とし、調波構造毎の両耳間位相差(IPD)と両耳間強度差(IID)とを用いてその方向を確信度付きで推定し、調波構造それ自体によって各音源音を推定する。この方法は、フーリエ変換データから複数の調波構造を検出することで、マイクロホン数以上の音源を処理することができる。しかしながら、音源数と方向と音源音の推定の基礎を調波構造に立脚して行うため、扱うことのできる音源は人間の声のような調波構造を持つものに限定され、さまざまな音に対応できるものではない。
【非特許文献1】浅野太、“音を分ける”、計測と制御、第43巻、第4号、pp.325−330、2004年4月号
【非特許文献2】中臺一博ほか、“視聴覚情報の階層的統合による実時間アクティブ人物追跡”、人工知能学会AIチャレンジ研究会、SIG−Challenge−0113−5、pp.35−42、June 2001
【発明の開示】
【発明が解決しようとする課題】
【0005】
以上で述べたように、(1)音源に制約を設けない場合は、音源数はマイクロホン数以上にはできない、(2)音源数をマイクロホン数以上にする場合、音源に例えば調波構造を仮定するなどの制約がある、という二律背反の問題あり、音源を制約せずにマイクロホン数以上の音源を扱うことのできる方式は確立されていない。
【0006】
本発明は上記の問題点に鑑みてなされたものであり、音源への制約をより緩和し、かつ、マイクロホン数以上の音源を扱うことのできる音源定位と音源分離のための音響信号処理装置、音響信号処理方法、音響信号処理プログラム、及び音響信号処理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明の一観点に係る音響信号処理装置は、空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手段と、前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手段と、前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手段と、前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差算出手段により算出された位相差値の関数を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手段と、同一音源に由来する周波数と位相差との間の比例関係を反映した図形を前記2次元データから検出する図形検出手段と、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、各音源が発した音声の時間的な存在期間、各音源が発した音声の成分構成、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかを含み、区別された音源に関する音源情報を前記図形に基づいて生成する音源情報生成手段と、前記音源情報を出力する出力手段とを具備する音響信号処理装置である。
【発明の効果】
【0008】
本発明によれば、音源への制約をより緩和し、かつ、マイクロホン数以上の音源を扱うことのできる音源定位と音源分離のための音響信号処理装置、音響信号処理方法、音響信号処理プログラム、及び音響信号処理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供できる。
【発明を実施するための最良の形態】
【0009】
以下、本発明に係る音響信号処理装置の実施形態を図面に従って説明する。
【0010】
図1は本発明の一実施形態に係る音響信号処理装置の機能ブロック図である。この音響信号処理装置は、マイク1aと、マイク1bと、音響信号入力部2と、周波数分解部3と、2次元データ化部4と、図形検出部5と、音源情報生成部6と、出力部7と、ユーザインタフェース部8とを具備する。
【0011】
[周波数成分毎の位相差に基づく音源推定の基本概念]
マイク1aとマイク1bは、空気などの媒質中に所定の距離をあけて配置された2つのマイクロホンであり、異なる2地点での媒質振動(音波)をそれぞれ電気信号(音響信号)に変換するための手段である。以後、マイク1aとマイク1bとをひとまとめに扱う場合、これをマイクロホン対と呼ぶことにする。
【0012】
音響信号入力部2は、マイク1aとマイク1bによる2つの音響信号を所定のサンプリング周期Frで定期的にA/D変換することで、マイク1aとマイク1bによる2つの音響信号のデジタル化された振幅データを時系列的に生成する手段である。
【0013】
マイクロホン間距離に比べて十分遠い場所に音源が位置していることを仮定すると、図2(a)に示すように、音源100から発してマイクロホン対に到達する音波の波面101はほぼ平面となる。マイク1aとマイク1bとを用いることにより異なる2地点でこの平面波を観測すると、マイク1aとマイク1bとを結ぶ線分102(これをベースラインと呼ぶ)に対する音源100の方向Rに応じて、マイクロホン対で変換される音響信号に所定の到達時間差ΔTが観測されるはずである。なお、音源が十分遠いとき、この到達時間差ΔTが0になるのは、音源100がベースライン102に垂直な平面上に存在するときであり、この方向をマイクロホン対の正面方向と定義する。
【0014】
参考文献1「鈴木薫ほか、“視聴覚連携によるホームロボットの「呼べば来る」機能の実現”、第4回計測自動制御学会システムインテグレーション部門講演会(SI2003)講演論文集、2F4−5、2003」には、一方の振幅データのどの部分が他方の振幅データのどの部分と類似しているかをパタン照合によって探索することで、2つの音響信号(図2(b)の103と104)の間の到達時間差ΔTを導き出す方法について記載されている。しかしながら、この方法は強い音源が1つしか存在しない場合には有効であるが、強い背景雑音や複数の音源が存在する場合、複数方向からの強い音の混在した波形上に類似部分が明瞭に現れず、パタン照合に失敗することがある。
【0015】
そこで、本発明では入力された振幅データを周波数成分毎の位相差に分解して解析する。複数の音源が存在する場合、各音源の周波数成分について、2つのデータ間でその音源方向に応じた位相差が観測される。そこで、もし音源についての強い制約を仮定することなく周波数成分毎の位相差を同方向のグループに分けることができれば、より幅広い種類の音源について、幾つの音源が存在し、その各々がどちらの方向にあり、それぞれが主に、どのように特徴的な周波数成分の音波を発しているかを把握できるはずである。この理屈自体は非常に単純明快であるが、実際のデータを分析する際には幾つかの克服すべき課題が存在している。その課題とともに、このグループ分けを行なうための機能ブロック(周波数分解部3、2次元データ化部4、図形検出部5)について引き続き説明する。
【0016】
[周波数分解部3]
さて、振幅データを周波数成分に分解する一般的な手法として高速フーリエ変換(FFT)がある。代表的なアルゴリズムとしては、Cooley−Turkey DFTアルゴリズムなどが知られている。
【0017】
周波数分解部3は、図3に示すように、音響信号入力部2による振幅データ110について、連続するN個の振幅データをフレーム(T番目のフレーム111)として抜き出して高速フーリエ変換を行うとともに、この抜き出し位置をフレームシフト量113ずつずらしながら繰り返す(T+1番目のフレーム112)。
【0018】
フレームを構成する振幅データは、図4(a)に示すように窓掛け120を施された後、高速フーリエ変換121がなされる。この結果、入力されたフレームの短時間フーリエ変換データが実部バッファR[N]と虚部バッファI[N](122)に生成される。なお、窓掛け関数(Hamming窓掛けあるいはHanning窓掛け)124の一例を図4(b)に示す。
【0019】
ここで生成される短時間フーリエ変換データは、当該フレームの振幅データをN/2個の周波数成分に分解したデータであり、k番目の周波数成分fkについてバッファ122内の実部R[k]と虚部I[k]の数値が、図4(c)に示すように複素座標系123上の点Pkを表す。このPkの原点Oからの距離の2乗が当該周波数成分のパワーPo(fk)であり、Pkの実部軸からの符号付き回転角度θ{θ:−π>θ≧π[ラジアン]}が当該周波数成分の位相Ph(fk)である。
【0020】
サンプリング周波数がFr[Hz]、フレーム長がN[サンプル]のとき、kは0から(N/2)−1までの整数値をとり、k=0が0[Hz](直流)、k=(N/2)−1がFr/2[Hz](最も高い周波数成分)を表し、その間を周波数分解能Δf=(Fr/2)÷((N/2)−1)[Hz]で等分したものが各kにおける周波数となり、fk=k・Δfで表される。
【0021】
なお、前述したように、周波数分解部3はこの処理を所定の間隔(フレームシフト量Fs)を空けて連続的に行うことで、入力振幅データの周波数毎のパワー値と位相値とからなる周波数分解データセットを時系列的に生成する。
【0022】
(2次元データ化部4と図形検出部5)
図5に示すように、2次元データ化部4は位相差算出部301と座標値決定部302とを具備する。図形検出部5は投票部303と直線検出部304とを具備する。
【0023】
[位相差算出部301]
位相差算出部301は、周波数分解部3により得られた同時期の2つの周波数分解データセットaとbとを比較して、同じ周波数成分毎に両者の位相値の差を計算して得たab間位相差データを生成する手段である。例えば図6に示すように、ある周波数成分fkの位相差ΔPh(fk)は、マイク1aにおける位相値Ph1(fk)とマイク1bにおける位相値Ph2(fk)との差を計算し、その値が{ΔPh(fk):−π<ΔPh(fk)≦π}に収まるように、2πの剰余系として算定する。
【0024】
[座標値決定部302]
座標値決定部302は、位相差算出部301により得られた位相差データを元に、各周波数成分に両者の位相値の差を計算して得た位相差データを所定の2次元のXY座標系上の点として扱うための座標値を決定する手段である。ある周波数成分fkの位相差ΔPh(fk)に対応するX座標値x(fk)とY座標値y(fk)は、図7に示す式によって決定される。X座標値は位相差ΔPh(fk)、Y座標値は周波数成分番号kである。
【0025】
[同一時間差に対する位相差の周波数比例性]
位相差算出部301によって、図6に示したように算出される周波数成分毎の位相差は、同一音源(同一方向)に由来するものどうしが同じ到達時間差を表しているはずである。FFTによって得られたある周波数の位相値及びマイクロホン間の位相差はその周波数の周期を2πとして算出された値である。ここで、同じ時間差であっても、周波数が2倍になれば位相差も2倍となるような比例関係の存在に着目する。これを図8に示す。図8(a)に示すように、同一時間Tについて、周波数fk[Hz]の波130は1/2周期、すなわちπだけの位相区間を含むが、2倍の周波数2fk[Hz]の波131は1周期、すなわち2πの位相区間を含む。これは、位相差についても同様である。すなわち、同一時間差ΔTについて、位相差は周波数に比例して大きくなる。このような位相差と周波数との間の比例関係を図8(b)に示す。同一音源から発せられてΔTを共通にする各周波数成分の位相差を図7に示した座標値計算により2次元座標系上にプロットすると、各周波数成分の位相差を表す座標点132が直線133の上に並ぶことがわかる。ΔTが大きいほど、すなわち音源までの距離がマイクロホン間で異なるほど、この直線の傾きは大きくなる。
【0026】
[位相差の循環性]
但し、マイクロホン間の位相差が図8(b)に示したように全域で周波数に比例するのは、解析対象となる最低周波数から最高周波数まで通して真の位相差が±πを逸脱しない場合に限られる。この条件はΔTが、最高周波数(サンプリング周波数の半分)Fr/2[Hz]の1/2周期分の時間、すなわち1/Fr[秒]以上とならないことである。もし、ΔTが1/Fr以上となる場合には、次に述べるように位相差が循環性を持つ値としてしか得られないことを考慮しなければならない。
【0027】
周波数成分毎の位相値は図4に示した回転角度θの値として2πの幅(本実施形態では-πからπの間の2πの幅)でしか得ることができない。これは、その周波数成分における実際の位相差がマイクロホン間で1周期以上であっても、周波数分解結果として得られる位相値からそれを知ることができないことを意味する。そのため、本実施形態では位相差を図6に示したように-πからπの間で得るようにしている。しかし、ΔTに起因する真の位相差は、ここで求められた位相差の値に2πを加えたり差し引いたり、あるいはさらに4πや6πを加えたり差し引いたりした値である可能性がある。これを模式的に示すと図9のようになる。図9において、周波数fkの位相差ΔPh(fk)が黒丸140で表すように+πであるとき、1つ高い周波数fk+1の位相差は白丸141で表すように+πを超えている。しかしながら、計算された位相差ΔPh(fk+1)は、本来の位相差から2πを差し引いた、黒丸142で表すように−πよりもやや大きい値となる。図示しないが、その3倍の周波数でも同様の値を示すことになるが、これは実際の位相差から4πを差し引いた値である。このように位相差は周波数が高くなるにつれて2πの剰余系として−πからπの間で循環する。この例ように、ΔTが大きくなると、ある周波数fk+1から上では、白丸で表した真の位相差が黒丸で示したように反対側に循環してしまう。
【0028】
[複数音源存在時の位相差]
一方、複数の音源から音波が発せられている場合、周波数と位相差のプロット図は図10に模式的に示すような様相となる。この図は2つの音源がマイクロホン対に対して異なる方向に存在している場合を示したものであり、図10(a)は2つの音源音が互いに同じ周波数成分を含んでいない場合であり、図10(b)は一部の周波数成分が双方に含まれている場合である。図10(a)では、各周波数成分の位相差はΔTを共通にする直線のいずれかに乗っており、傾きの小さい直線150では5点、傾きの大きい直線151(循環した直線152を含む)では6点が直線上に配置されている。図10(b)では、双方に含まれる2つの周波数成分153と154では波が混ざって位相差が正しく出ないため、いずれの直線にも乗らず、特に傾きの小さい直線155では3点しか直線上に乗っていない。
【0029】
音源の数と方向を推定する問題は、このようなプロット図上で、図示したような直線を発見することに帰着できる。また、音源毎の周波数成分を推定する問題は、検出された直線に近い位置に配置された周波数成分を選別することに帰着できる。本実施形態において、2次元データ化部4が出力する2次元データは、周波数分解部3による周波数分解データセットの2つを使って周波数と位相差の関数として決定される点群、もしくはそれら点群を2次元座標系上に配置(プロット)した画像とする。なお、この2次元データは時間軸を含まない2軸によって定義され、故に、2次元データの時系列としての3次元データが定義できる。図形検出部5はこの2次元データ(もしくはその時系列たる3次元データ)として与えられる点群配置から直線状の配置を図形として検出するものとする。
【0030】
[投票部303]
投票部303は、座標値決定部302によって(x,y)座標を与えられた各周波数成分に対して、後述するように直線ハフ変換を適用し、その軌跡をハフ投票空間に所定の方法で投票する手段である。ハフ変換については、参考文献2「岡崎彰夫、“はじめての画像処理”、工業調査会、2000年10月20日発行」の第100頁〜第102頁に解説されているが、ここでもう一度説明する。
【0031】
[直線ハフ変換]
図11に模式的に示すように、2次元座標上の点p(x,y)を通り得る直線は160、161、162に例示するように無数に存在するが、原点Oから各直線に下ろした垂線163のX軸からの傾きをθとし、この垂線163の長さをρとして表現すると、1つの直線についてθとρは一意に決まる。ある点(x,y)を通る直線の取り得るθとρとの組は、θρ座標系上で(x,y)の値に固有の軌跡164(ρ=xcosθ+ysinθ)を描くことが知られている。このような、(x,y)座標値から、(x,y)を通り得る直線の(θ,ρ)の軌跡への変換を直線ハフ変換という。なお、直線が左に傾いているときθは正値、垂直のときは0、右に傾いているときは負値であるとし、また、θの定義域は{θ:-π<θ≦π}を逸脱することはない。
【0032】
ハフ曲線はXY座標系上の各点について独立に求めることができるが、図12に示すように、例えば3点p1、p2、p3を共通に通る直線170は、p1、p2、p3に対応した軌跡171、172、173が交差する点174の座標(θ0,ρ0)で定められる直線として求めることができる。多くの点を通る直線であればあるほど、その直線を表すθとρの位置を多くの軌跡が通過する。このように、ハフ変換は点群から直線を検出する用途に向いている。
【0033】
[ハフ投票]
点群から直線を検出するため、ハフ投票という工学的な手法が使われる。これはθとρを座標軸とする2次元のハフ投票空間に各軌跡の通過するθとρの組を投票することで、ハフ投票空間の得票の大きい位置に多数の軌跡の通過するθとρの組、すなわち直線の存在を示唆させるようにする手法である。一般的には、まずθとρについての必要な探索範囲分の大きさを持つ2次元の配列(ハフ投票空間)を用意して0で初期化しておく。次いで、点毎の軌跡をハフ変換によって求め、この軌跡が通過する配列上の値を1だけ加算する。これをハフ投票という。全ての点についてその軌跡を投票し終えると、得票0の位置(軌跡が1つも通過しなかった)には直線が存在せず、得票1の位置(軌跡が1つだけ通過した)には1つの点を通る直線が、得票2の位置(軌跡が2つだけ通過した)には2つの点を通る直線が、得票nの位置(軌跡がn個だけ通過した)にはn個の点を通る直線がそれぞれ存在することがわかる。ハフ投票空間の分解能を無限大にできれば、上述した通り、軌跡の通過する点のみが、そこを通過する軌跡の数だけの得票を得ることになるが、実際のハフ投票空間はθとρについて適当な分解能で量子化されているため、複数の軌跡が交差する位置の周辺にも高い得票分布が生じる。そのため、ハフ投票空間の得票分布から極大値を持つ位置を探すことで、軌跡の交差する位置をより正確に求める必要がある。
【0034】
投票部303は、次の投票条件を全て満たす周波数成分についてハフ投票を行う。この条件により、所定の周波数帯で所定閾値以上のパワーを持つ周波数成分のみが投票されることになる。
【0035】
すなわち、投票条件1は、周波数が所定範囲にあるもの(低域カットと高域カット)とする。また、投票条件2は、当該周波数成分fkのパワーP(fk)が所定閾値以上のもの、とする。
【0036】
投票条件1は、一般に暗騒音が乗っている低域をカットしたり、FFTの精度の落ちる高域をカットしたりする目的で使われる。この低域カットと高域カットの範囲は運用に合わせて調整可能である。最も広く周波数帯域を使う場合、低域カットは直流成分のみ、高域カットは最大周波数のみとする設定が適している。
【0037】
暗騒音程度の非常に弱い周波数成分ではFFT結果の信頼性が高くないと考えられる。投票条件2は、このような信頼性の低い周波数成分をパワーで閾値処理することで投票に参加させないようにする目的で使われる。マイク1aにおけるパワー値Po1(fk)、マイク1bにおけるパワー値Po2(fk)とすると、このとき評価されるパワーP(fk)の決め方には次の3つが考えられる。なお、いずれの条件を使用するかは運用に合わせて設定可能である。
【0038】
(平均値):Po1(fk)とPo2(fk)の平均値とする。両方のパワーがともに適度に強いことを必要とする条件である。
【0039】
(最小値):Po1(fk)とPo2(fk)の小さい方とする。両方のパワーが最低でも閾値以上あることを必要とする条件である。
【0040】
(最大値):Po1(fk)とPo2(fk)の大きい方とする。一方が閾値未満でも他方が十分強ければ投票するという条件である。
【0041】
また、投票部303は、投票に際して次の2つの加算方式を行うことが可能である。
【0042】
すなわち、加算方式1では、軌跡の通過位置に所定の固定値(例えば1)を加算する。加算方式2では、軌跡の通過位置に当該周波数成分fkのパワーP(fk)の関数値を加算する。
【0043】
加算方式1は、ハフ変換による直線検出問題で一般的によく用いられている方式であり、通過する点の多さに比例して得票に順位がつくため、多くの周波数成分を含む直線(すなわち音源)を優先的に検出するのに適している。このとき、直線に含まれる周波数成分について調波構造(含まれる周波数が等間隔であること)の制限がないので、人間の音声に限らずより幅広い種類の音源を検出することができる。
【0044】
また、加算方式2は、通過する点が少なくても、パワーの大きい周波数成分を含んでいれば上位の極大値を得ることのできる方式であり、周波数成分が少なくてもパワーの大きい有力な成分を持つ直線(すなわち音源)を検出するのに適している。加算方式2におけるパワーP(fk)の関数値はG(P(fk))として計算される。図13は、P(fk)をPo1(fk)とPo2(fk)の平均値とした場合のG(P(fk))の計算式を示したものである。この他にも上述した投票条件2と同様、Po1(fk)とPo2(fk)の最小値や最大値としてP(fk)を計算することも可能であり、投票条件2とは別に運用に合わせて設定可能である。中間パラメータVの値はP(fk)の対数値log10(P(fk))に所定のオフセットαを足した値として計算される。そしてVが正であるときはV+1の値を、Vがゼロ以下であるときには1を、関数G(P(fk))の値とする。このように最低でも1を投票することで、パワーの大きい周波数成分を含む直線(音源)が上位に浮上するだけでなく、多数の周波数成分を含む直線(音源)も上位に浮上するという加算方式1の多数決的な性質を併せ持たせることができる。投票部303は、設定によって加算方式1と加算方式2のいずれを行うことも可能であるが、特に後者を用いることで、周波数成分の少ない音源も同時に検出することが可能になり、さらに幅広い種類の音源を検出できるようになる。
【0045】
[複数FFT結果をまとめて投票]
さらに、投票部303は、1回のFFT毎に投票を行うことも可能だが、一般的に連続するm回(m≧1)の時系列的なFFT結果についてまとめて投票を行なうこととする。長期的には音源の周波数成分は変動するものであるが、このようにすることで、周波数成分の安定している適度に短期間の複数時刻のFFT結果から得られるより多くのデータを用いて、より信頼性の高いハフ投票結果を得ることができるようになる。なお、このmは運用に合わせてパラメータとして設定可能とする。
【0046】
[直線検出部304]
直線検出部304は、投票部303によって生成されたハフ投票空間上の得票分布を解析して有力な直線を検出する手段である。但し、このとき、図9で述べた位相差の循環性など、本問題に特有の事情を考慮することで、より高精度な直線検出を実現する。
【0047】
図14に、室内雑音環境下で1人の人物がマイクロホン対の正面約20度左より発話した実際の音声を用いて処理したときの周波数成分のパワースペクトル、連続する5回分(前述のm=5)のFFT結果から得た周波数成分毎の位相差プロット図、同じ5回分のFFT結果から得たハフ投票結果(得票分布)を示す。ここまでの処理は音響信号入力部2から投票部303までの一連の機能ブロックで実行される。
【0048】
マイクロホン対で取得された振幅データは、周波数分解部3によって周波数成分毎のパワー値と位相値のデータに変換される。図14において、180と181は、横軸を時間として、周波数成分毎のパワー値の対数を輝度表示(黒いほど大きい)したものである。縦の1ラインが1回のFFT結果に対応し、これを時間経過(右向き)に沿ってグラフ化した図である。上段180がマイク1a、下段181がマイク1bからの信号を処理した結果であり、多数の周波数成分が検出されている。この周波数分解結果を受けて、位相差算出部301により周波数成分毎の位相差が求められ、座標値決定部302によりその(x,y)座標値が算出される。図14において、182はある時刻183から連続5回分のFFTによって得た位相差をプロットした図である。この図で原点から左に傾いた直線184に沿う点群分布が認められるが、その分布は直線184上にきれいに乗っているわけではなく、またこの直線184から離れた多数の点が存在している。投票部303により、このような分布を示している各点がハフ投票空間に投票されて得票分布185を形成する。なお、図の185は加算方式2を用いて生成された得票分布である。
【0049】
[ρ=0の制約]
ところで、マイク1aとマイク1bの信号が音響信号入力部2によって同相でA/D変換される場合、検出されるべき直線は必ずρ=0、すなわちXY座標系の原点を通る。したがって、音源の推定問題は、ハフ投票空間上でρ=0となるθ軸上の得票分布S(θ,0)から極大値を探索する問題に帰着する。図14で例示したデータに対してθ軸上で極大値を探索した結果を図15に示す。
【0050】
図15において、得票分布190は図13における得票分布185と同一のものである。棒グラフ192は、θ軸191上の得票分布S(θ,0)をH(θ)として抜き出したものである。この得票分布H(θ)には幾つか極大箇所(突出部)が存在している。直線検出部304は、得票分布H(θ)に対して、(1)ある位置について左右に自身と同点のものが続く限り探索したときに、最後に自身より低得票のものだけが現れた箇所を残す。この結果、得票分布H(θ)上の極大部が抽出されるが、この極大部には平坦な頂を持つものが含まれるので、そこでは極大値が連続する。そこで直線検出部304は、(2)細線化処理によって極大部の中央位置だけを極大位置193として残す。そして最後に、(3)得票が所定閾値以上となる極大位置のみを直線として検出する。このようにすることで十分な得票を得た直線のθを正確に割り出すことができる。図の例では、上記(2)において検出された極大位置194、195、196のうち、極大位置194が平坦な極大部から細線化処理によって残された中央位置(偶数連続時は右が優先)である。また、唯一196だけが閾値以上の得票を得て検出された直線となる。この極大位置196によって与えられるθとρ(=0)とにより、直線(基準直線)197は定義される。なお、細線化処理のアルゴリズムは、ハフ変換の説明で参照した参考文献2の第89頁〜第92頁に記載される「田村の方法」を1次元化して使うことが可能である。直線検出部304は、このようにして1乃至複数の極大位置(所定閾値以上の得票を得た中央位置)を検出すると、その得票の多い順に順位を付けて各極大位置のθとρの値を出力する。
【0051】
[位相差循環を考慮した直線群の定義]
ところで、図15で例示した直線197は、(θ0,0)なる極大位置196によって定義されたXY座標原点を通る直線である。しかし、実際には位相差の循環性によって、図15の直線197がΔρ199だけ平行移動してX軸上の反対側から循環してくる直線198もまた197と同じ到達時間差を示す直線である。この直線198のように直線197を延長してXの値域からはみ出した部分が反対側から循環的に現れる直線を、直線197の「循環延長線」、基準となった直線197を「基準直線」とそれぞれ呼ぶことにする。もし、基準直線197がさらに傾いておれば、循環延長線はさらに数を増すことになる。ここで係数aを0以上の整数とすると、到達時間差を同じくする直線は全て(θ0,0)で定義される基準直線197をΔρずつ平行移動させた直線群(θ0,aΔρ)となる。さらに、起点となるρについてρ=0の制約をはずしてρ=ρ0として一般化すると、直線群は(θ0,aΔρ+ρ0)として記述できることになる。このとき、Δρは直線の傾きθの関数Δρ(θ)として図16に示す式で定義される符号付きの値である。
【0052】
図16において、基準直線200は(θ,0)で定義される。このとき、基準直線200が右に傾いているので定義に従いθは負値であるが、図ではその絶対値として扱う。図16における直線201は基準直線200の循環延長線であり、点RにおいてX軸と交差している。また、基準直線200と循環延長線201の間隔は補助線202で示す通りΔρであり、補助線202は点Oにおいて基準直線200と垂直に交差し、点Uにおいて循環延長線201と垂直に交差している。このとき、基準直線が右に傾いているので定義に従いΔρも負値であるが、図ではその絶対値として扱う。図16における△OQPは辺OQの長さがπとなる直角三角形であり、これと合同な三角形が△RTSである。故に辺RTの長さもπであり、△OURの斜辺ORの長さが2πであることがわかる。このとき、Δρは辺OUの長さであるから、Δρ=2πcosθとなる。そして、θとΔρの符号を考慮すると図の計算式が導き出される。
【0053】
[位相差循環を考慮した極大位置検出]
位相差の循環性から、音源を表す直線は1つではなく基準直線と循環延長線とからなる直線群として扱われるべきであることを述べた。このことは得票分布から極大位置を検出する際にも考慮されなければならない。通常、位相差の循環が起きないか、起きても小規模で収まるマイクロホン対の正面付近のみで音源を検出する場合に限れば、ρ=0(あるいはρ=ρ0)上の得票値(すなわち基準直線の得票値)のみで極大位置を探索する上述の方法は性能的に十分であるばかりか、探索時間の短縮と精度の向上に効果がある。しかし、より広い範囲に存在する音源を検出しようとする場合には、あるθについてΔρずつ離れた数箇所の得票値を合計して極大位置を探索する必要がある。この違いを以下で説明する。
【0054】
図17に、室内雑音環境下で2人の人物がマイクロホン対の正面約20度左と約45度右から同時に発話した実際の音声を用いて処理したときの周波数成分のパワースペクトル、5回分(m=5)のFFT結果から得た周波数成分毎の位相差プロット図、同じ5回分のFFT結果から得たハフ投票結果(得票分布)を示す。
【0055】
マイクロホン対で取得された振幅データは、周波数分解部3によって周波数成分毎のパワー値と位相値のデータに変換される。図17において、210と211は、縦軸を周波数、横軸を時間として、周波数成分毎のパワー値の対数を輝度表示(黒いほど大きい)したものである。縦の1ラインが1回のFFT結果に対応し、これを時間経過(右向き)に沿ってグラフ化した図である。上段210がマイク1a、下段211がマイク1bからの信号を処理した結果であり、多数の周波数成分が検出されている。この周波数分解結果を受けて、位相差算出部301により周波数成分毎の位相差が求められ、座標値決定部302によりその(x,y)座標値が算出される。プロット図212は、ある時刻213から連続5回分のFFTによって得た位相差をプロットしものである。このプロット図212において原点から左に傾いた基準直線214に沿う点群分布と右に傾いた基準直線215に沿う点群分布が認められる。投票部303により、このような分布を示している各点がハフ投票空間に投票されて得票分布216を形成する。なお、得票分布216は、加算方式2を用いて生成されたものである。
【0056】
図18はθ軸上の得票値のみで極大位置を探索した結果を示した図である。図18における得票分布220は図17における得票分布216と同一のものである。棒グラフ222は、θ軸221上の得票分布S(θ,0)をH(θ)として抜き出して棒グラフにしたものである。この得票分布H(θ)には幾つか極大箇所(突出部)が存在しているが、総じてθの絶対値が大きくなるほど得票が少なくなることがわかる。この得票分布H(θ)からは、極大位置グラフ223に示すように4つの極大位置224、225、226、227が検出される。このうち、唯一、極大位置227だけが閾値以上の得票を得る。これにより1つの直線群(基準直線228と循環延長線229)が検出される。この直線群はマイクロホン対の正面約20度左からの音声を検出したものであるが、マイクロホン対の正面約45度右からの音声は検出できていない。原点を通る基準直線ではその角度が大きいほどXの値域を超えるまでに少ない周波数帯しか通過できないため、基準直線が通過する周波数帯の広さはθによって異なる(不公平がある)。そして、ρ=0の制約は、この不公平な条件で基準直線だけの得票を競わせることになるため、角度の大きい直線ほど得票で不利になるのである。これが約45度右からの音声を検出できなかった理由である。
【0057】
一方、図19はΔρずつ離れた数箇所の得票値を合計して極大位置を探索した結果を示した図である。図中の240は、図17における得票分布216上に、原点を通る直線をΔρずつ平行移動させたときのρの位置を破線242〜249で表示したものである。このとき、θ軸241と破線242〜245、及びθ軸241と破線246〜249はそれぞれΔρ(θ)の自然数倍で等間隔に離れている。なお、直線がXの値域を越えずにプロット図の天井まで抜けることが確実なθ=0には破線が存在しない。
【0058】
あるθ0の得票H(θ0)は、θ=θ0の位置で縦に見たときのθ軸241上の得票と破線242〜249上の得票の合計値、すなわちH(θ0)=Σ{S(θ0,aΔρ(θ0))}として計算される。この操作はθ=θ0となる基準直線とその循環延長線の得票を合計することに相当する。この得票分布H(θ)を棒グラフにしたものが図中の250である。図18の222と異なり、この分布ではθの絶対値が大きくなっても得票が少なくなっていない。これは、得票計算に循環延長線を加えたことで全てのθについて同じ周波数帯を使うことができるようになったからである。この得票分布250からは図中251に示す10個の極大位置が検出される。このうち、極大位置252と253が閾値以上の得票を得て、マイクロホン対の正面約20度左からの音声を検出した直線群(極大位置253に対応する基準直線254と循環延長線255)と、マイクロホン対の正面約45度右からの音声を検出した直線群(極大位置252に対応する基準直線256と循環延長線257と258)の2つが検出される。このようにΔρずつ離れた箇所の得票値を合計して極大位置を探索することで、角度の小さい直線から角度の大きい直線まで安定に検出できるようになる。
【0059】
[非同相の場合を考慮した極大位置検出:一般化]
さて、マイク1aとマイク1bの信号が音響信号入力部2によって同相でA/D変換されない場合、検出されるべき直線はρ=0、すなわちXY座標原点を通らない。この場合はρ=0の制約をはずして極大位置を探索する必要がある。
【0060】
ρ=0の制約をはずした基準直線を一般化して(θ0,ρ0)と記述すると、その直線群(基準直線と循環延長線)は(θ0,aΔρ(θ0)+ρ0)と記述できる。ここでΔρ(θ0)はθ0によって決まる循環延長線の平行移動量である。音源がある方向から来るときに、それに対応したθ0における直線群は最も有力なものが1つ存在するだけである。その直線群は、様々にρ0を変えたときの直線群の得票Σ{S(θ0,aΔρ(θ0)+ρ0)}が最大となるρ0の値ρ0maxを使って(θ0,aΔρ(θ0)+ρ0max)で与えられる。そこで、各θにおける得票H(θ)をそれぞれのθにおける最大得票値Σ{S(θ,aΔρ(θ)+ρ0max)}とすることで、ρ=0の制約時と同じ極大位置検出アルゴリズムを適用した直線検出を行なうことができるようになる。
【0061】
なお、このようにして検出された直線群の数が音源の数である。
【0062】
[音源情報生成部6]
図20に示すように、音源情報生成部6は、方向推定部311と、音源成分推定部312と、音源音再合成部313と、時系列追跡部314と、継続時間評価部315と、同相化部316と、適応アレイ処理部317と、音声認識部318とを具備する。
【0063】
[方向推定部311]
方向推定部311は、以上で述べた直線検出部304による直線検出結果、すなわち直線群毎のθ値を受けて、各直線群に対応した音源の存在範囲を計算する手段である。このとき、検出された直線群の数が音源の数(全候補)となる。マイクロホン対のベースラインに対して音源までの距離が十分遠い場合、音源の存在範囲はマイクロホン対のベースラインに対してある角度を持った円錐面となる。これを図21を参照して説明する。
【0064】
マイク1aとマイク1bの到達時間差ΔTは±ΔTmaxの範囲で変化し得る。図21(a)のように、正面から入射する場合、ΔTは0となり、音源の方位角φは正面を基準にした場合0°となる。また、図21(b)のように音声が右真横、すなわちマイク1b方向から入射する場合、ΔTは+ΔTmaxに等しく、音源の方位角φは正面を基準にして右回りを正として+90°となる。同様に、図21(c)のように音声が左真横、すなわちマイク1a方向から入射する場合、ΔTは−ΔTmaxに等しく、方位角φは−90°となる。このように、ΔTを音が右から入射するとき正、左から入射するとき負となるように定義する。
【0065】
以上を踏まえて図21(d)のような一般的な条件を考える。マイク1aの位置をA、マイク1bの位置をBとし、音声が線分PA方向から入射すると仮定すると、△PABは頂点Pが直角となる直角三角形となる。このとき、マイク間中心O、線分OCをマイクロホン対の正面方向として、OC方向を方位角0°とした左回りを正にとる角度を方位角φと定義する。△QOBは△PABの相似形となるので、方位角φの絶対値は∠OBQ、すなわち∠ABPに等しく、符号はΔTの符号に一致する。また、∠ABPはPAとABの比のsin−1として計算可能である。このとき、線分PAの長さをこれに相当するΔTで表すと、線分ABの長さはΔTmaxに相当する。したがって、符号も含めて、方位角はφ=sin−1(ΔT/ΔTmax)として計算することができる。そして、音源の存在範囲は点Oを頂点、ベースラインABを軸として、(90−φ)°開いた円錐面260として推定される。音源はこの円錐面260上のどこかにある。
【0066】
図22に示すように、ΔTmaxはマイク間距離L[m]を音速Vs[m/sec]で割った値である。このとき、音速Vsは気温t[℃]の関数として近似できることが知られている。今、直線検出部304によって直線270がハフの傾きθで検出されているとする。この直線270は右に傾いているのでθは負値である。y=k(周波数fk)のとき、直線270で示される位相差ΔPhはkとθの関数としてk・tan(−θ)で求めることができる。このときΔT[sec]は、位相差ΔPh(θ,k)の2πに対する割合を、周波数fkの1周期(1/fk)[sec]に乗じた時間となる。θが符号付きの量なので、ΔTも符号付きの量となる。すなわち、図21(d)で音が右から入射する(位相差ΔPhが正値となる)とき、θは負値となる。また、図21(d)で音が左から入射する(位相差ΔPhが負値となる)とき、θは正値となる。そのために、θの符号を反転させている。なお、実際の計算においては、k=1(直流成分k=0のすぐ上の周波数)で計算を行えば良い。
【0067】
[音源成分推定部312]
音源成分推定部312は、座標値決定部302により与えられた周波数成分毎の(x,y)座標値と、直線検出部304により検出された直線との距離を評価することで、直線近傍に位置する点(すなわち周波数成分)を当該直線(すなわち音源)の周波数成分として検出し、この検出結果に基づいて音源毎の周波数成分を推定するための手段である。
【0068】
[距離閾値方式による検出]
図23に複数の音源が存在するときの音源成分推定の原理を模式的に示す。図23(a)は図9に示したものと同じ周波数と位相差のプロット図であり、2つの音源がマイクロホン対に対して異なる方向に存在している場合を示している。図23(a)の280は1つの直線群をなし、図23(a)の281と282は別の直線群をなす。図23(a)の黒丸は周波数成分毎の位相差位置を表している。
【0069】
直線群280に対応する音源音を構成する周波数成分は、図23(b)に示すように、直線280から左右にそれぞれ水平距離283だけ離れた直線284と直線285に挟まれる領域286内に位置する周波数成分(図の黒丸)として検出される。ある周波数成分がある直線の成分として検出されることを、周波数成分が直線に帰属する(あるいは属する)ということにする。
【0070】
同様に、直線群(281、282)に対応する音源音を構成する周波数成分は、図23(c)に示すように、直線281と直線282から左右にそれぞれ水平距離283だけ離れた直線に挟まれる領域287と288内に位置する周波数成分(図の黒丸)として検出される。
【0071】
なお、このとき周波数成分289と原点(直流成分)の2点は、領域286と領域288の両方に含まれるので、両音源の成分として二重に検出される(多重帰属)。このように、周波数成分と直線との水平距離を閾値処理して、直線群(音源)毎に閾値内に存在する周波数成分を選択し、そのパワーと位相をそのまま当該音源音の成分とする方式を「距離閾値方式」と呼ぶことにする。
【0072】
[最近傍方式による検出]
図24は、図23において多重帰属する周波数成分289について、どちらか最も近い方の直線群にのみ属させるようにした結果を示した図である。直線280と直線282に対する周波数成分289の水平距離を比較した結果、周波数成分289は直線282に最も近いことが判明する。このとき、周波数成分289は直線282近傍の領域288に入っている。よって、周波数成分289は、図24(b)に示すように直線群(281、282)に属する成分として検出される。このように、周波数成分毎に水平距離で最も近い直線(音源)を選択し、その水平距離が所定閾値内にある場合に当該周波数成分のパワーと位相をそのまま当該音源音の成分とする方式を「最近傍方式」と呼ぶことにする。なお、直流成分(原点)は特別扱いとして両方の直線群(音源)に帰属させるものとする。
【0073】
[距離係数方式による検出]
上記2つの方式は、直線群を構成する直線に対して所定の水平距離閾値内に存在する周波数成分だけを選択し、そのパワーと位相をそのままにして直線群に対応する音源音の周波数成分としていた。一方、次に述べる「距離係数方式」は、周波数成分と直線との水平距離dの増大に応じて単調減少する非負係数αを計算し、これを当該周波数成分のパワーに乗じることで、直線から水平距離で遠い成分ほど弱いパワーで音源音に寄与するようにした方式である。
【0074】
このとき、水平距離による閾値処理を行う必要はなく、ある直線群に対する各周波数成分の水平距離(直線群の中の最も近い直線との水平距離)dを求め、その水平距離dに基づいて定められる係数αを当該周波数成分のパワーに乗じた値を、当該直線群における当該周波数成分のパワーとする。水平距離dの増大に応じて単調減少する非負係数αの計算式は任意であるが、一例として図25に示すシグモイド(S字曲線)関数α=exp(−(B・d)C)が挙げられる。このとき図に例示したように、Bを正の数値(図では1.5)、Cを1より大きい数値(図では2.0)とすると、d=0のときα=1、d→∞のときα→0となる。非負係数αの減少の度合いが急峻、すなわちBが大きいと直線群からはずれた成分が排除され易くなるので、音源方向に対する指向性が鋭くなり、逆に非負係数αの減少の度合いが緩慢、すなわちBが小さいと指向性が鈍くなる。
【0075】
[複数FFT結果の扱い]
既に述べたように、投票部303は1回のFFT毎に投票を行うことも、連続するm回(m≧1)のFFT結果をまとめて投票することも可能である。したがって、ハフ投票結果を処理する直線検出部304以降の機能ブロックは1回のハフ変換が実行される期間を単位として動作する。このとき、m≧2でハフ投票が行われるときは、複数時刻のFFT結果がそれぞれの音源音を構成する成分として分類されることになり、時刻の異なる同一周波数成分が別々の音源音に帰属させられることも起こり得る。これを扱うために、mの値に関わらず、座標値決定部302によって、各周波数成分(すなわち、図24に例示した黒丸)にはそれが取得されたフレームの開始時刻が取得時刻の情報として付与されており、どの時刻のどの周波数成分がどの音源に帰属するかを参照可能にする。すなわち、音源音がその周波数成分の時系列データとして分離抽出される。
【0076】
[パワー保存オプション]
なお、上述した各方式において、複数(N個)の直線群(音源)に属する周波数成分(最近傍方式では直流成分のみ、距離係数方式では全周波数成分が該当)では、各音源に配分される同一時刻の当該周波数成分のパワーを、その合計が配分前の当該時刻のパワー値Po(fk)に等しくなるように正規化してN分割することも可能である。このようにすることで、同一時刻の周波数成分毎に音源全体での合計パワーを入力と同じに保つことができる。これを「パワー保存オプション」と呼ぶことにする。配分の仕方には次の2つの考え方がある。
【0077】
すなわち、(1)N等分(距離閾値方式と最近傍方式に適用可能)と、(2)各直線群との距離に応じた配分(距離閾値方式と距離係数方式に適用可能)である。
【0078】
(1)はN等分することで自動的に正規化が達成される配分方法であり、距離に関係なく配分を決める距離閾値方式と最近傍方式に適用可能である。
【0079】
(2)は距離係数方式と同様にして係数を決めた後、さらにそれらの合計が1になるように正規化することでパワーの合計を保存する配分方法であり、原点以外で多重帰属の発生する距離閾値方式と距離係数方式に適用可能である。
【0080】
なお、音源成分推定部312は、設定によって距離閾値方式と最近傍方式と距離係数方式のいずれを行うことも可能である。また、距離閾値方式と最近傍方式において上述したパワー保存オプションを選択することが可能である。
【0081】
[音源音再合成部313]
音源音再合成部313は、各音源音を構成する同一取得時刻の周波数成分を逆FFT処理することによって、当該時刻を開始時刻とするフレーム区間の当該音源音(振幅データ)を再合成する。図3に図示したように、1つのフレームは次のフレームとフレームシフト量だけの時間差をおいて重複している。このように複数のフレームで重複している区間では、重複する全てのフレームの振幅データを平均して最終的な振幅データと成すことができる。このような処理によって、音源音をその振幅データとして分離抽出することが可能になる。
【0082】
[時系列追跡部314]
上述した通り、投票部303によるハフ投票毎に直線検出部304により直線群が求められる。ハフ投票は連続するm回(m≧1)のFFT結果についてまとめて行われる。この結果、直線群はmフレーム分の時間を周期(これを「図形検出周期」と呼ぶことにする)として時系列的に求められることになる。また、直線群のθは方向推定部305により計算される音源方向φと1対1に対応しているので、音源が静止していても移動していても、安定な音源に対応しているθ(あるいはφ)の時間軸上の軌跡は連続しているはずである。一方、直線検出部304により検出された直線群の中には、閾値の設定具合によって背景雑音に対応する直線群(これを「雑音直線群」と呼ぶことにする)が含まれていることがある。しかしながら、このような雑音直線群のθ(あるいはφ)の時間軸上の軌跡は連続していないか、連続していても短いことが期待できる。
【0083】
時系列追跡部314は、このように図形検出周期毎に求められるφを時間軸上で連続なグループに分けることで、φの時間軸上の軌跡を求める手段である。図26を用いてグループ分けの方法を説明する。
【0084】
(1)軌跡データバッファを用意する。軌跡データバッファは軌跡データの配列である。1つの軌跡データKdは、その開始時刻Tsと、終了時刻Teと、当該軌跡を構成する直線群データLdの配列(直線群リスト)と、ラベル番号Lnとを保持することができる。1つの直線群データLdは、当該軌跡を構成する1つの直線群のθ値とρ値(直線検出部304による)と、この直線群に対応した音源方向を表すφ値(方向推定部311による)と、この直線群に対応した周波数成分(音源成分推定部312による)と、それらが取得された時刻とからなる一群のデータである。なお、軌跡データバッファは最初空である。また、ラベル番号を発行するためのパラメータとして新規ラベル番号を用意し、初期値を0に設定する。
【0085】
(2)ある時刻Tにおいて、新しく得られたφのそれぞれ(以後φnとし、図中では黒丸303と黒丸304で示される2つが得られたものとする)について、軌跡データバッファに保持されている軌跡データKd(図中の矩形301と302)の直線群データLd(図中の矩形内に配置された黒丸)を参照し、そのφ値とφnの差(図中の305と306)が所定角度閾値Δφ内にあり、かつその取得時刻の差(図中の307と308)が所定時間閾値Δt内にあるLdを持つ軌跡データを検出する。この結果、黒丸303については軌跡データ301が検出されたが、黒丸304については最も近い軌跡データ302も上記条件を満たさなかったとする。
【0086】
(3)黒丸303のように、もし、(2)の条件を満たす軌跡データが見つかった場合は、φnはこの軌跡と同一の軌跡を成すものとして、このφnとそれに対応したθ値とρ値と周波数成分と現時刻Tとを当該軌跡Kdの新たな直線群データとして直線群リストに追加し、現時刻Tを当該軌跡の新たな終了時刻Teとする。このとき、複数の軌跡が見つかった場合には、それら全てが同一の軌跡を成すものとして、最も若いラベル番号を持つ軌跡データに統合して、残りを軌跡データバッファから削除する。統合された軌跡データの開始時刻Tsは統合前の各軌跡データの中で最も早い開始時刻であり、終了時刻Teは統合前の各軌跡データの中で最も遅い終了時刻であり、直線群リストは統合前の各軌跡データの直線群リストの和集合である。この結果、黒丸303は軌跡データ301に追加される。
【0087】
(4)黒丸304のように、もし、(2)の条件を満たす軌跡データが見つからなかった場合は、新規の軌跡の始まりとし、軌跡データバッファの空き部分に新しい軌跡データを作成し、開始時刻Tsと終了時刻Teを共に現時刻Tとし、φnとそれに対応したθ値とρ値と周波数成分と現時刻Tとを直線群リストの最初の直線群データとし、新規ラベル番号の値をこの軌跡のラベル番号Lnとして与え、新規ラベル番号を1だけ増加させる。なお、新規ラベル番号が所定の最大値に達したときは、新規ラベル番号を0に戻す。この結果、黒丸304は新たな軌跡データとして軌跡データバッファに登録される。
【0088】
(5)もし、軌跡データバッファに保持されている軌跡データで、最後に更新されてから(すなわちその終了時刻Teから)現時刻Tまでに前記所定時間Δtを経過したものがあれば、追加すべき新たなφnの見つからなかった、すなわち追跡の満了した軌跡として、この軌跡データを次段の継続時間評価部315に出力した後、当該軌跡データを軌跡データバッファから削除する。図の例では軌跡データ302がこれに該当する。
【0089】
[継続時間評価部315]
継続時間評価部315は、時系列追跡部314により出力された追跡の満了した軌跡データの開始時刻と終了時刻から当該軌跡の継続時間を計算し、この継続時間が所定閾値を越えるものを音源音に基づく軌跡データと認定し、それ以外を雑音に基づく軌跡データと認定する。音源音に基づく軌跡データを音源ストリーム情報と呼ぶことにする。音源ストリーム情報には、当該音源音の開始時刻Ts、終了時刻Te、当該音源方向を表すθとρとφの時系列的な軌跡データが含まれる。なお、図形検出部5による直線群の数が音源の数を与えるが、そこには雑音源も含まれている。継続時間評価部315による音源ストリーム情報の数は、雑音に基づくものを除いた信頼できる音源の数を与えてくれる。
【0090】
[同相化部316]
同相化部316は、時系列追跡部314による音源ストリーム情報を参照することで、当該ストリームの音源方向φの時間推移を得て、φの最大値φmaxと最小値φminから中間値φmid=(φmax+φmin)/2を計算して幅φw=φmax−φmidを求める。そして、当該音源ストリーム情報の元となった2つの周波数分解データセットaとbの時系列データを、当該ストリームの開始時刻Tsより所定時間遡った時刻から終了時刻Teより所定時間経過した時刻まで抽出して、中間値φmidで逆算される到達時間差をキャンセルするように補正することで同相化する。
【0091】
あるいは、方向推定部311による各時刻の音源方向φをφmidとして、2つの周波数分解データセットaとbの時系列データを常時同相化することもできる。音源ストリーム情報を参照するか、各時刻のφを参照するかは動作モードで決定され、この動作モードはパラメータとして設定・変更可能である。
【0092】
[適応アレイ処理部317]
適応アレイ処理部317は、抽出・同相化された2つの周波数分解データセットaとbの時系列データを、正面0°に中心指向性を向け、±φwに所定のマージンを加えた値を追従範囲とする適応アレイ処理に掛けることで、当該ストリームの音源音の周波数成分の時系列データを高精度に分離抽出する。この処理は方法こそ異なるが、周波数成分の時系列データを分離抽出する点において音源成分推定部312と同様の働きをする。それ故、音源音再合成部313は、適応アレイ処理部317による音源音の周波数成分の時系列データからも、その音源音の振幅データを再合成することができる。
【0093】
なお、適応アレイ処理としては、参考文献3「天田皇ほか“音声認識のためのマイクロホンアレー技術”,東芝レビュー2004,VOL.59,NO.9,2004」に記載のように、それ自体がビームフォーマの構成方法として知られている「Griffith−Jim型一般化サイドローブキャンセラ」を主副2つに用いるなど、設定された指向性範囲内の音声を明瞭に分離抽出する方法を適用することができる。
【0094】
通常、適応アレイ処理を用いる場合、事前に追従範囲を設定し、その方向からの音声のみを待ち受ける使い方をするため、全方位からの音声を待ち受けるためには追従範囲を異ならせた多数の適応アレイを用意する必要があった。一方、本実施形態では、実際に音源の数とその方向を求めたうえで、音源数に応じた数の適応アレイだけを稼動させることができ、その追従範囲も音源の方向に応じた所定の狭い範囲に設定することができるので、音声を効率良くかつ品質良く分離抽出できる。
【0095】
また、このとき、事前に2つの周波数分解データセットaとbの時系列データを同相化することで、適応アレイ処理における追従範囲を正面付近にのみ設定するだけで、あらゆる方向の音を処理できるようになる。
【0096】
[音声認識部318]
音声認識部318は、音源成分推定部312もしくは適応アレイ処理部317により抽出された音源音の周波数成分の時系列データを解析照合することで、当該ストリームの記号的な内容、すなわち、言語的な意味や音源の種別や話者の別を表す記号(列)を抽出する。
【0097】
なお、方向推定部311から音声認識部318までの各機能ブロックは、必要に応じて図20に図示しない結線によって情報のやりとりが可能であるものとする。
【0098】
[出力部7]
出力部7は、音源情報生成部6による音源情報として、図形検出部5による直線群の数として得られる音源の数、方向推定部311により推定される、音響信号の発生源たる各音源の空間的な存在範囲(円錐面を決定させる角度φ)、音源成分推定部312により推定される、各音源が発した音声の成分構成(周波数成分毎のパワーと位相の時系列データ)、音源音再合成部313により合成される、音源毎に分離された分離音声(振幅値の時系列データ)、時系列追跡部314と継続時間評価部315とに基づいて決定される、雑音源を除く音源の数、時系列追跡部314と継続時間評価部315とにより決定される、各音源が発した音声の時間的な存在期間、正面化部316と適応アレイ部317とにより求められる、音源毎の分離音声(振幅値の時系列データ)、音声認識部318により求められる、各音源音声の記号的内容、の少なくとも1つを含む情報を出力する手段である。
【0099】
[ユーザインタフェース部8]
ユーザインタフェース部8は、上述した音響信号処理に必要な各種設定内容の利用者への呈示、利用者からの設定入力受理、設定内容の外部記憶装置への保存と外部記憶装置からの読み出しを実行したり、図17や図19に示した(1)マイク毎の周波数成分の表示、(2)位相差(あるいは時間差)プロット図の表示(すなわち2次元データの表示)、(3)各種得票分布の表示、(4)極大位置の表示、(5)プロット図上の直線群の表示、図23や図24に示した(6)直線群に帰属する周波数成分の表示、図26に示した(7)軌跡データの表示、のように各種処理結果や中間結果を可視化して利用者に呈示したり、所望のデータを利用者に選択させてより詳細に可視化するための手段である。このようにすることで、利用者が本実施形態に係る音響信号処理装置の働きを確認したり、所望の動作を行ない得るように調整したり、以後は調整済みの状態で本装置を利用したりすることが可能になる。
【0100】
[処理の流れ図]
図27は本実施形態に係る音響信号処理装置が実行する処理の流れを示すフローチャートである。この処理は、初期設定処理ステップS1と、音響信号入力処理ステップS2と、周波数分解処理ステップS3と、2次元データ化処理ステップS4と、図形検出処理ステップS5と、音源情報生成処理ステップS6と、出力処理ステップS7と、終了判断処理ステップS8と、確認判断処理ステップS9と、情報呈示・設定受理処理ステップS10と、終了処理ステップS11とを有する。
【0101】
初期設定処理ステップS1は、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、音響信号処理に必要な各種設定内容を外部記憶装置から読み出して、装置を所定の設定状態に初期化する。
【0102】
音響信号入力処理ステップS2は、上述した音響信号入力部2における処理を実行する処理ステップであり、空間的に同一でない2つの位置で捉えられた2つの音響信号を入力する。
【0103】
周波数分解処理ステップS3は、上述した周波数分解部3における処理を実行する処理ステップであり、前記音響信号入力処理ステップS2による入力音響信号のそれぞれを周波数分解して、周波数毎の少なくとも位相値(と必要ならパワー値)を算出する。
【0104】
2次元データ化処理ステップS4は、上述した2次元データ化部4における処理を実行する処理ステップであり、前記周波数分解処理ステップS3により算出された各入力音響信号の周波数毎の位相値を比較して、両者の周波数毎の位相差値を算出し、該周波数毎の位相差値を、周波数の関数をY軸、位相差値の関数をX軸とするXY座標系上の点として、各周波数とその位相差により一意に決定される(x,y)座標値に変換する。
【0105】
図形検出処理ステップS5は、上述した図形検出部5における処理を実行する処理ステップであり、前記2次元データ化処理ステップS4による2次元データから所定の図形を検出する。
【0106】
音源情報生成処理ステップS6は、上述した音源情報生成部6における処理を実行する処理ステップであり、前記図形検出処理ステップS5により検出された図形の情報に基づいて、前記音響信号の発生源たる音源の数、各音源の空間的な存在範囲、前記各音源を発した音声の成分構成、前記音源毎の分離音声、前記各音源を発した音声の時間的な存在期間、前記各音源を発した音声の記号的内容、の少なくとも1つを含む音源情報を生成する。
【0107】
出力処理ステップS7は、上述した出力部7における処理を実行する処理ステップであり、前記音源情報生成処理ステップS6により生成された音源情報を出力する。
【0108】
終了判断処理ステップS8は、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、利用者からの終了命令の有無を検査して、終了命令が有る場合には終了処理ステップS11へ(左分岐)、無い場合には確認判断処理ステップS9へ(上分岐)と処理の流れを制御する。
【0109】
確認判断処理ステップS9は、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、利用者からの確認命令の有無を検査して、確認命令が有る場合には情報呈示・設定受理処理ステップS10へ(左分岐)、無い場合には音響信号処理ステップS2(上分岐)と処理の流れを制御する。
【0110】
情報呈示・設定受理処理ステップS10は、利用者からの確認命令を受けて実行される、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、音響信号処理に必要な各種設定内容の利用者への呈示、利用者からの設定入力受理、保存命令による設定内容の外部記憶装置への保存、読み出し命令による設定内容の外部記憶装置からの読み出しを実行したり、各種処理結果や中間結果を可視化して利用者に呈示したり、所望のデータを利用者に選択させてより詳細に可視化することで、利用者が音響信号処理の動作を確認したり、所望の動作を行ない得るように調整したり、以後調整済みの状態で処理を継続したりすることを可能にする。
【0111】
終了処理ステップS11は、利用者からの終了命令を受けて実行される、上述したユーザインタフェース部8における処理の一部を実行する処理ステップであり、音響信号処理に必要な各種設定内容の外部記憶装置への保存を自動実行する。
【0112】
[変形例] ここで、上述した実施形態の変形例を説明する。
【0113】
[垂直線の検出]
2次元データ化部4は、その座標値決定部302によって、図7に示すようにX座標値を位相差ΔPh(fk)、Y座標値を周波数成分番号kとして点群を生成した。このとき、X座標値を位相差ΔPh(fk)からさらに計算される到達時間差の周波数毎の推定値ΔT(fk)=(ΔPh(fk)/2π)×(1/fk)とすることも可能である。位相差の代わりに到達時間差を使うと、同一の到達時間差を持つ、すなわち同一音源に由来する点は垂直な直線上に並ぶことになる。
【0114】
このとき、周波数が高くなるほどΔPh(fk)で表現可能な時間差ΔT(fk)は小さくなる。図28(a)に模式的に示すように、周波数fkの波290の1周期が表す時間をTとすると、2倍の周波数2fkの波291の1周期が表すことのできる時間はT/2と半分になってしまう。このとき、図28(a)のようにX軸を時間差とすると、その範囲は±Tmaxであり、これを超えて時間差が観測されることはない。ところが、Tmaxが1/2周期(すなわちπ)以下となる限界周波数292以下の低い周波数では、位相差ΔPh(fk)から到達時間差ΔT(fk)が一意に求められるが、限界周波数292を超えた高い周波数では、算出されたΔT(fk)は理論上可能なTmaxよりも小さく、図28(b)に示すように直線293と294に挟まれる範囲しか表現できない。これは上述した位相差循環の問題と同じ問題である。
【0115】
そこで、この位相差循環の問題を解決するために、限界周波数292を超える周波数域については、図29に模式的に示すように、座標値決定部302が1つのΔPh(fk)について2π、4π、6πなどを足したり引いたりした位相差に対応するΔTの位置にも冗長な点を、±Tmaxの範囲内で生成して2次元データとする。生成された点群が図中の黒丸であり、限界周波数292を超えた周波数域では1つの周波数について複数の黒丸がプロットされている。
【0116】
このようにすることで、1つの位相差値に対して1乃至複数の点として生成される2次元データから、投票部303と直線検出部304から有力な垂直線(図中の295)をハフ投票によって検出することが可能になる。このとき、垂直線はハフ投票空間上でθ=0となる直線なので、垂直線の検出問題はハフ投票後の得票分布でθ=0となるρ軸上の極大位置で所定閾値以上の得票を得るものを検出することで解くことができる。ここで検出された極大位置のρ値が垂直線とX軸の交点、すなわち到達時間差ΔTの推定値を与えてくれる。なお、投票に際しては投票部303の説明に記載した投票条件と加算方式をそのまま用いることが可能である。また、音源に対応した直線は直線群ではなく単一の垂直線である。
【0117】
この極大位置を求める問題は、上述の冗長な点群のX座標値を投票した1次元の得票分布(Y軸方向へ射影投票した周辺分布)上の極大位置で所定閾値以上の得票を得るものを検出することで解くこともできる。このように、位相差の代わりに到達時間差をX軸に用いることで、異なる方向に存在する音源を表す証拠が全て同じ傾きの(すなわち垂直な)直線に写されるので、ハフ変換によらずとも周辺分布によって簡便に検出可能になる。
【0118】
垂直線を求めることで得られる音源方向の情報はθではなくρとして得られる到達時間差ΔTである。よって、方向推定部311はθを介在させることなくΔTから直ちに音源方向φを算出可能となる。
【0119】
このように、2次元データ化部4による2次元データは1種類に限らず、図形検出部5による図形の検出法も1つとは限らない。なお、図29に例示した到達時間差を使った点群のプロット図と検出された垂直線もユーザインタフェース部8による利用者への情報呈示対象である。
【0120】
[複数系統の並列実装]
また、以上の例はマイクロホンを2つ備えた最も単純な構成で説明したものであるが、図30に示すように、マイクロホンをN(N≧3)個備え、最大M(1≦M≦NC2)個のマイクロホン対を構成することも可能である。
【0121】
図中の11〜13はN個のマイクロホンである。図中の20はN個のマイクロホンによるN個の音響信号を入力する手段であり、図中の21は入力されたN個の音響信号をそれぞれ周波数分解する手段である。図中の22はN個の音響信号のうちの2つからなるM(1≦M≦NC2)組の対の各々について2次元データを生成する手段であり、図中の23は生成されたM組の2次元データからそれぞれ所定の図形を検出する手段である。図中の24は検出されたM組の図形の情報のそれぞれから音源の情報を生成する手段であり、図中の25は生成された音源の情報を出力する手段である。図中の26は各対を構成するマイクロホンの情報を含む各種設定値の利用者への呈示、利用者からの設定入力受理、外部記憶装置への設定値の保存、外部記憶装置からの設定値の読み出し、及び各種処理結果の利用者への呈示を実行する手段である。各マイクロホン対における処理は上述した実施形態と同様であり、そのような処理が複数のマイクロホン対について並列的に実行される。
【0122】
このようにすることで、1つのマイクロホン対では方向への得て不得手があっても、複数の対でカバーすることで正しい音源情報を取りこぼす危険を軽減することが可能になる。
【0123】
[汎用コンピュータを使った実施:プログラム]
また、本発明は、図31に示すように本発明に係る音響信号処理機能を実現するためのプログラムを実行可能な汎用コンピュータとして実施することも可能である。図中の31〜33はN個のマイクロホンである。図中の40はN個のマイクロホンによるN個の音響信号を入力するA/D変換手段であり、図中の41は入力されたN個の音響信号を処理するためのプログラム命令を実行するCPUである。図中の42〜47はコンピュータを構成する標準的なデバイスであり、それぞれRAM42、ROM43、HDD44、マウス/キーボード45、ディスプレイ46、LAN47である。また、図中の50〜52は外部から記憶メディアを介してプログラムやデータをコンピュータに供給するためのドライブ類であり、それぞれCDROM50、FDD51、CF/SDカード52である。図中の48は音響信号を出力するためのD/A変換手段であり、その出力にスピーカ49が繋がっている。このコンピュータ装置は、図27に示した処理ステップを実行するための音響信号処理プログラムをHDD44に記憶し、これをRAM42に読み出してCPU41で実行することで音響信号処理装置として機能する。また、外部記憶装置としてのHDD44、操作入力を受け付けるマウス/キーボード45、情報呈示手段としてのディスプレイ46とスピーカ49を使うことで、上述したユーザインタフェース部8の機能を実現する。また、音響信号処理によって得られた音源情報をRAM42やROM43やHDD44に保存出力したり、LAN47を介して通信出力する。
【0124】
[記録媒体]
また、本発明は図32に示すようにコンピュータ読み取り可能な記録媒体として実施することも可能である。図中の61は本発明に係る音響信号処理プログラムを記録したCD−ROMやCFやSDカードやフロッピー(登録商標)ディスクなどで実現される記録媒体である。この記録媒体61をテレビやコンピュータなどの電子装置62や電子装置63やロボット64に挿入することで当該プログラムを実行可能としたり、あるいはプログラムを供給された電子装置63から通信によって別の電子装置65やロボット64に当該プログラムを供給することで、電子装置65やロボット64上で当該プログラムを実行可能とする。
【0125】
[温度センサによる音速の補正]
また、本発明は装置に外気温を測定するための温度センサを備え、該温度センサによって計測された気温データに基づいて図22における音速Vsを補正して、正確なTmaxを求めるように実施することも可能である。
【0126】
あるいは、本発明は装置に所定の間隔を空けて配置された音波の発信手段と受信手段とを備え、該発信手段を発した音波が該受信手段に到達するまでの時刻を計測手段で測ることで、直接的に音速Vsを計算・補正して、正確なTmaxを求めるように実施することも可能である。
【0127】
[φの等間隔化のためのθの不等間隔化]
また、本発明は直線群の傾きを得るためにハフ変換を実行する際にθを例えば1°刻みというように量子化を行うが、このようにθを等間隔に刻むと推定可能な音源方向φの値が不等間隔に量子化されてしまう。そこで、本発明はφを等間隔とするようにθの量子化を行うことで、音源方向の推定精度に粗密が生じにくいように実施することも可能である。
【0128】
上記非特許文献2に記載の方法は、周波数分解データから調波構造を構成する基本周波数成分とその高調波成分を検出することで、音源の数、方向、成分の推定を行っている。調波構造を仮定することから、この方法は人間の声に特化したものであるといえる。しかし、実際の環境では、ドアの開閉音など、調波構造を持たない音源も多く存在するため、この方法ではそのような音源音を扱うことができない。
【0129】
また、上記非特許文献1に記載の方法は、特定のモデルに縛られないが、2つのマイクロホンを使う限り、扱うことのできる音源は1つに限られてしまう。
【0130】
一方、本発明の実施形態によれば、ハフ変換を使って周波数成分毎の位相差を音源毎のグループに分けることで、2つのマイクロホンを使いながら2つ以上の音源を定位し、かつ分離する機能を実現することができる。このとき、調波構造のような限定的なモデルを使用しないので、より広範な性質の音源に適用することができる。
【0131】
本発明の実施形態が奏する他の作用効果を纏めると以下の通りである。
【0132】
・ハフ投票に際して周波数成分の多い音源やパワーの強い音源の検出に適した投票方法を使うことで、幅広い種類の音源を安定に検出することができる。
【0133】
・直線検出に際してρ=0の制約や位相差循環の考慮を行うことで、効率良くかつ精度良く音源を検出することができる。
【0134】
・直線検出結果を用いて、音響信号の発生源たる音源の空間的な存在範囲、音源を発した音源音の時間的な存在期間、音源音の成分構成、音源音の分離音声、音源音の記号的内容を含む有益な音源情報を求めることができる。
【0135】
・各音源音の周波数成分を推定する際に、単純に直線近傍の成分を選択したり、ある成分がどの直線に帰属するかを判定したり、各直線と成分の距離に応じた係数掛けを行うことで、簡便な方法で音源音を個々に分離することができる。
【0136】
・各音源の方向を予め知ることで、適応アレイ処理の指向性範囲を適応的に設定して、より高精度に音源音を分離することができる。
【0137】
・各音源音を高精度に分離して認識することで、音源音の記号的内容を判別することができる。
【0138】
・利用者が本装置の働きを確認したり、所望の動作を行ない得るように調整したり、以後調整済みの状態で本装置を利用したりすることが可能になる。
【0139】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【0140】
【図1】本発明の一実施形態に係る音響信号処理装置の機能ブロック図
【図2】音源方向と、音響信号において観察される到達時間差とを示す図
【図3】フレームとフレームシフト量との関係を示す図
【図4】FFT処理の手順および短時間フーリエ変換データを示す図
【図5】2次元データ化部および図形検出部のそれぞれの内部構成を示す機能ブロック図
【図6】位相差算出の手順を示す図
【図7】座標値計算の手順を示す図
【図8】同一時間について周波数と位相との間の比例関係、および同一時間差について位相差と周波数との間の比例関係を示す図
【図9】位相差の循環性を説明するための図
【図10】複数の音源が存在する場合の周波数と位相差のプロット図
【図11】直線ハフ変換について説明するための図
【図12】ハフ変換により点群から直線を検出することについて説明するための図
【図13】投票される平均パワーの関数(計算式)を示す図
【図14】実際の音声から生成された周波数成分、位相差プロット図、ハフ投票結果を示す図
【図15】実際のハフ投票結果から求められた極大位置と直線を示す図
【図16】θとΔρの関係を示す図
【図17】2人の人物の同時発話時の周波数成分、位相差プロット図、ハフ投票結果を示す図
【図18】θ軸上の得票値のみで極大位置を探索した結果を示す図
【図19】Δρずつ離れた数箇所の得票値を合計して極大位置を探索した結果を示す図
【図20】音源情報生成部の内部構成を示す機能ブロック図
【図21】方向推定を説明するための図
【図22】θとΔTとの関係を示す図
【図23】複数音源存在時の音源成分推定(距離閾値方式)について説明するための図
【図24】最近傍方式について説明するための図
【図25】係数αの計算式の例とそのグラフを示す図
【図26】φの時間軸上の追跡を説明した図
【図27】音響信号処理装置が実行する処理の流れを示すフローチャート
【図28】周波数と表現可能な時間差との関係を示す図
【図29】冗長点を生成した場合における時間差のプロット図
【図30】N個のマイクロホンを具備する変形実施形態に係る音響信号処理装置の機能ブロック構成図
【図31】本発明に係る音響信号処理機能を汎用コンピュータを用いて実現する実施形態に係る機能ブロック図
【図32】本発明に係る音響信号処理機能を実現するためのプログラムを記録した記録媒体による実施形態を示した図
【符号の説明】
【0141】
1a,1b…マイク;
2…音響信号入力部;
3…周波数分解部;
4…2次元データ化部;
5…図形検出部;
6…音源情報生成部;
7…出力部;
8…ユーザインタフェース部
【特許請求の範囲】
【請求項1】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手段と、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手段と、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手段と、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手段と、
前記2次元データ化手段により生成された座標値を有する点を、直線ハフ変換により投票空間に投票することにより得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出手段と、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成手段と、
前記音源情報を出力する出力手段とを具備する音響信号処理装置であって、
前記音源情報生成手段は、前記図形検出手段により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手段を具備したことを特徴とする音響信号処理装置。
【請求項2】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手段と、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手段と、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手段と、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手段と、
前記2次元データ化手段により生成された座標値を有する点を、所定方向に投影した投票空間に投票することにより、射影投票された周辺分布からなる得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出手段と、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成手段と、
前記音源情報を出力する出力手段とを具備する音響信号処理装置であって、
前記音源情報生成手段は、前記図形検出手段により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手段を具備したことを特徴とする音響信号処理装置。
【請求項3】
前記図形検出手段は、前記投票空間に固定の値を投票し、前記2次元座標系において各周波数の点の多くを通る直線を検出する請求項1及び2記載の音響信号処理装置。
【請求項4】
前記周波数分解手段は、前記周波数毎の位相値のみならず周波数毎のパワー値をも計算し、前記図形検出手段は、前記パワー値に基づく数値を投票し、前記2次元座標系において各周波数のパワーの大きい点を多く通る直線を検出する請求項1及び2記載の音響信号処理装置。
【請求項5】
前記音源情報生成手段は、前記図形検出手段により検出された直線と前記第2の軸との交点に基づいて、前記音源の空間的な存在範囲を、前記音響信号を捉えた2つの地点間を結ぶ線分に対する角度として算出する方向推定手段を具備する請求項1及び2記載の音響信号処理装置。
【請求項6】
前記音源情報生成手段は、前記図形検出手段により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手段と、
推定された前記音の周波数成分から当該音源が発する音響信号データを合成する分離音声抽出手段とを具備する請求項1及び2記載の音響信号処理装置。
【請求項7】
前記音源成分推定手段は、前記座標値の前記直線に対する距離が所定閾値内である周波数を前記直線に対応する音源の発する音の周波数成分とする請求項1及び2記載の音響信号処理装置。
【請求項8】
前記音源成分推定手段は、前記座標値の前記直線に対する距離が所定閾値内である周波数を前記直線に対応する音源の発する音の周波数成分の候補とし、同一周波数成分について、最も近い方の直線に帰属させる請求項1及び2記載の音響信号処理装置。
【請求項9】
前記周波数分解手段は、前記周波数毎の位相値のみならず周波数毎のパワー値をも計算し、前記音源成分推定手段は、前記座標値の前記直線に対する距離の増加に応じて単調減少する非負係数を算出し、前記周波数のパワーに前記非負係数を乗じた値を前記直線に対応する音源の発する音の当該周波数成分のパワー値とする請求項1及び2に記載の音響信号処理装置。
【請求項10】
前記音源情報生成手段は、前記図形検出手段により検出された直線と前記第2の軸との交点に基づいて、前記音源の空間的な存在範囲を、前記音響信号を捉えた2つの地点間を結ぶ線分に対する角度として算出する方向推定手段と、
前記角度に基づいて音源方向に関する追従範囲を設定し、該追従範囲内に存在する音源からの音声のみを通過させることで当該音源が発する音の音響信号のデータを抽出する適応アレイ処理手段とを具備する請求項1及び2記載の音響信号処理装置。
【請求項11】
装置の動作に関する設定情報の確認と変更を利用者が行うためのユーザインタフェース手段を具備する請求項1記載の音響信号処理装置。
【請求項12】
装置の動作に関する設定情報の保存と読み込みを利用者が行うためのユーザインタフェース手段を具備する請求項1記載の音響信号処理装置。
【請求項13】
前記2次元データ、又は前記図形を利用者に呈示するためのユーザインタフェース手段を具備する請求項1記載の音響信号処理装置。
【請求項14】
前記音源情報を利用者に呈示するためのユーザインタフェース手段を具備する請求項1記載の音響信号処理装置。
【請求項15】
前記図形検出手段は、前記2次元データセットの時系列からなる3次元データセットから前記図形を検出する請求項1記載の音響信号処理装置。
【請求項16】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力ステップと、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解ステップと、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出ステップと、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化ステップと、
前記2次元データ化ステップにより生成された座標値を有する点を、直線ハフ変換により投票空間に投票することにより得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出ステップと、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成ステップと、
前記音源情報を出力する出力ステップとを具備する音響信号処理方法であって、
前記音源情報生成ステップは、前記図形検出ステップにより検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定ステップを具備したことを特徴とする音響信号処理方法。
【請求項17】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力ステップと、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解ステップと、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出ステップと、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化ステップと、
前記2次元データ化ステップにより生成された座標値を有する点を、所定方向に投影した投票空間に投票することにより、射影投票された周辺分布からなる得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出ステップと、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成ステップと、
前記音源情報を出力する出力ステップとを具備する音響信号処理方法であって、
前記音源情報生成ステップは、前記図形検出ステップにより検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定ステップを具備したことを特徴とする音響信号処理方法。
【請求項18】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手順と、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手順と、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手順と、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手順と、
前記2次元データ化手順により生成された座標値を有する点を、直線ハフ変換により投票空間に投票することにより得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出手順と、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成手順と、
前記音源情報を出力する出力手順とをコンピュータに実行させるための音響信号処理プログラムであって、
前記音源情報生成手順は、前記図形検出手順により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手順を具備したことを特徴とする音響信号処理プログラム。
【請求項19】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手順と、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手順と、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手順と、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手順と、
前記2次元データ化手順により生成された座標値を有する点を、所定方向に投影した投票空間に投票することにより、射影投票された周辺分布からなる得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出手順と、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成手順と、
前記音源情報を出力する出力手順とをコンピュータに実行させるための音響信号処理プログラムであって、
前記音源情報生成手順は、前記図形検出手順により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手順を具備したことを特徴とする音響信号処理プログラム。
【請求項20】
請求項18もしくは19に記載の音響信号処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項1】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手段と、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手段と、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手段と、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手段と、
前記2次元データ化手段により生成された座標値を有する点を、直線ハフ変換により投票空間に投票することにより得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出手段と、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成手段と、
前記音源情報を出力する出力手段とを具備する音響信号処理装置であって、
前記音源情報生成手段は、前記図形検出手段により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手段を具備したことを特徴とする音響信号処理装置。
【請求項2】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手段と、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手段と、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手段と、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手段と、
前記2次元データ化手段により生成された座標値を有する点を、所定方向に投影した投票空間に投票することにより、射影投票された周辺分布からなる得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出手段と、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成手段と、
前記音源情報を出力する出力手段とを具備する音響信号処理装置であって、
前記音源情報生成手段は、前記図形検出手段により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手段を具備したことを特徴とする音響信号処理装置。
【請求項3】
前記図形検出手段は、前記投票空間に固定の値を投票し、前記2次元座標系において各周波数の点の多くを通る直線を検出する請求項1及び2記載の音響信号処理装置。
【請求項4】
前記周波数分解手段は、前記周波数毎の位相値のみならず周波数毎のパワー値をも計算し、前記図形検出手段は、前記パワー値に基づく数値を投票し、前記2次元座標系において各周波数のパワーの大きい点を多く通る直線を検出する請求項1及び2記載の音響信号処理装置。
【請求項5】
前記音源情報生成手段は、前記図形検出手段により検出された直線と前記第2の軸との交点に基づいて、前記音源の空間的な存在範囲を、前記音響信号を捉えた2つの地点間を結ぶ線分に対する角度として算出する方向推定手段を具備する請求項1及び2記載の音響信号処理装置。
【請求項6】
前記音源情報生成手段は、前記図形検出手段により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手段と、
推定された前記音の周波数成分から当該音源が発する音響信号データを合成する分離音声抽出手段とを具備する請求項1及び2記載の音響信号処理装置。
【請求項7】
前記音源成分推定手段は、前記座標値の前記直線に対する距離が所定閾値内である周波数を前記直線に対応する音源の発する音の周波数成分とする請求項1及び2記載の音響信号処理装置。
【請求項8】
前記音源成分推定手段は、前記座標値の前記直線に対する距離が所定閾値内である周波数を前記直線に対応する音源の発する音の周波数成分の候補とし、同一周波数成分について、最も近い方の直線に帰属させる請求項1及び2記載の音響信号処理装置。
【請求項9】
前記周波数分解手段は、前記周波数毎の位相値のみならず周波数毎のパワー値をも計算し、前記音源成分推定手段は、前記座標値の前記直線に対する距離の増加に応じて単調減少する非負係数を算出し、前記周波数のパワーに前記非負係数を乗じた値を前記直線に対応する音源の発する音の当該周波数成分のパワー値とする請求項1及び2に記載の音響信号処理装置。
【請求項10】
前記音源情報生成手段は、前記図形検出手段により検出された直線と前記第2の軸との交点に基づいて、前記音源の空間的な存在範囲を、前記音響信号を捉えた2つの地点間を結ぶ線分に対する角度として算出する方向推定手段と、
前記角度に基づいて音源方向に関する追従範囲を設定し、該追従範囲内に存在する音源からの音声のみを通過させることで当該音源が発する音の音響信号のデータを抽出する適応アレイ処理手段とを具備する請求項1及び2記載の音響信号処理装置。
【請求項11】
装置の動作に関する設定情報の確認と変更を利用者が行うためのユーザインタフェース手段を具備する請求項1記載の音響信号処理装置。
【請求項12】
装置の動作に関する設定情報の保存と読み込みを利用者が行うためのユーザインタフェース手段を具備する請求項1記載の音響信号処理装置。
【請求項13】
前記2次元データ、又は前記図形を利用者に呈示するためのユーザインタフェース手段を具備する請求項1記載の音響信号処理装置。
【請求項14】
前記音源情報を利用者に呈示するためのユーザインタフェース手段を具備する請求項1記載の音響信号処理装置。
【請求項15】
前記図形検出手段は、前記2次元データセットの時系列からなる3次元データセットから前記図形を検出する請求項1記載の音響信号処理装置。
【請求項16】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力ステップと、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解ステップと、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出ステップと、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化ステップと、
前記2次元データ化ステップにより生成された座標値を有する点を、直線ハフ変換により投票空間に投票することにより得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出ステップと、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成ステップと、
前記音源情報を出力する出力ステップとを具備する音響信号処理方法であって、
前記音源情報生成ステップは、前記図形検出ステップにより検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定ステップを具備したことを特徴とする音響信号処理方法。
【請求項17】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力ステップと、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解ステップと、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出ステップと、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化ステップと、
前記2次元データ化ステップにより生成された座標値を有する点を、所定方向に投影した投票空間に投票することにより、射影投票された周辺分布からなる得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出ステップと、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成ステップと、
前記音源情報を出力する出力ステップとを具備する音響信号処理方法であって、
前記音源情報生成ステップは、前記図形検出ステップにより検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定ステップを具備したことを特徴とする音響信号処理方法。
【請求項18】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手順と、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手順と、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手順と、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手順と、
前記2次元データ化手順により生成された座標値を有する点を、直線ハフ変換により投票空間に投票することにより得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出手順と、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成手順と、
前記音源情報を出力する出力手順とをコンピュータに実行させるための音響信号処理プログラムであって、
前記音源情報生成手順は、前記図形検出手順により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手順を具備したことを特徴とする音響信号処理プログラム。
【請求項19】
空間的に同一でない2以上の地点で捉えられた複数の音響信号を入力する音響信号入力手順と、
前記複数の音響信号の各々を分解し、周波数毎の位相値を表す複数の周波数分解データセットを求める周波数分解手順と、
前記複数の周波数分解データセットの異なる組において、周波数毎の位相差値を算出する位相差算出手順と、
前記組のそれぞれについて、周波数の関数を第1の軸とし、前記位相差値から算出される到達時間差を第2の軸とする2次元座標系上の座標値を有する点群を表す2次元データを生成する2次元データ化手順と、
前記2次元データ化手順により生成された座標値を有する点を、所定方向に投影した投票空間に投票することにより、射影投票された周辺分布からなる得票分布を生成し、前記生成された得票分布から、得票が所定閾値以上となる極大位置を上位所定数まで検出することにより、該検出された極大位置のそれぞれに対応する直線を前記2次元データから検出する図形検出手順と、
前記直線のそれぞれを前記音響信号から抽出された音源と成し、前記音響信号の発生源に相当する音源の数、各音源の空間的な存在範囲、前記各音源の発した音声の時間的な存在期間、音源毎に分離された分離音声、各音源が発した音声の記号的内容の少なくともいずれかの情報と、各音源の発した音声の成分構成の情報とを含む、前記抽出された各音源に関する音源情報を生成する音源情報生成手順と、
前記音源情報を出力する出力手順とをコンピュータに実行させるための音響信号処理プログラムであって、
前記音源情報生成手順は、前記図形検出手順により検出された直線について、周波数毎に、前記座標値と前記直線との距離を算出し、該距離に基づいて前記直線に対応する音源が発する音の周波数成分を推定する音源成分推定手順を具備したことを特徴とする音響信号処理プログラム。
【請求項20】
請求項18もしくは19に記載の音響信号処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【公開番号】特開2006−340391(P2006−340391A)
【公開日】平成18年12月14日(2006.12.14)
【国際特許分類】
【出願番号】特願2006−209089(P2006−209089)
【出願日】平成18年7月31日(2006.7.31)
【分割の表示】特願2005−69824(P2005−69824)の分割
【原出願日】平成17年3月11日(2005.3.11)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成16年度独立行政法人新エネルギー・産業技術総合開発機構「次世代ロボット実用化プロジェクト(プロトタイプ開発支援事業)人とのインタラクションにおける高性能聴覚機能ロボットの研究開発」委託研究、産業活力再生特別措置法第30条の適用を受ける特許出願
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
【公開日】平成18年12月14日(2006.12.14)
【国際特許分類】
【出願日】平成18年7月31日(2006.7.31)
【分割の表示】特願2005−69824(P2005−69824)の分割
【原出願日】平成17年3月11日(2005.3.11)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成16年度独立行政法人新エネルギー・産業技術総合開発機構「次世代ロボット実用化プロジェクト(プロトタイプ開発支援事業)人とのインタラクションにおける高性能聴覚機能ロボットの研究開発」委託研究、産業活力再生特別措置法第30条の適用を受ける特許出願
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】
[ Back to top ]