"音信号の音源方向を示す方向点を所定時間単位で分割したブロック毎に検出する方向推定部と、前記方向点を複数ブロック間で接続して音が発生している区間の検出を行う方向トラッキング部を有し、前記方向推定部は、音源方向に対する感度の低い空間フィルタである死角フィルタと、音源方向に対する感度の高い空間フィルタである指向性フィルタを生成する空間フィルタ生成部と、前記死角フィルタに対応する方向とゲインとの対応関係データである死角パターンを生成する死角パターン生成部と、前記指向性フィルタに対応する方向とゲインとの対応関係データである指向性パターンを生成する指向性パターン生成部と、前記死角パターンの極小部と、前記指向性パターンの極大部の組み合わせを有する方向を、音源方向を示す方向点として検出する方向点検出部を有する音信号処理装置。前記空間フィルタ生成部は、音信号から生成される時間周波数領域の観測信号から前記ブロック毎に計算される共分散行列に対する固有値分解処理により固有値と固有ベクトルを算出し、算出した最大の固有値に対応する固有ベクトルを用いて前記指向性フィルタを生成する請求項1に記載の音信号処理装置。前記空間フィルタ生成部は、音信号から生成される時間周波数領域の観測信号から前記ブロック毎に計算される共分散行列に対する固有値分解処理により固有値と固有ベクトルを算出し、算出した固有ベクトルに対して固有値を重みとした重みつき総和または重み付き平均により前記指向性フィルタを生成する請求項1に記載の音信号処理装置。前記空間フィルタ生成部は、音信号から生成される時間周波数領域の観測信号から前記ブロック毎に計算される共分散行列に対する固有値分解処理により固有値と固有ベクトルを算出し、固有ベクトルからなる行列Vωと、固有値からなる対角行列Dωを用いた演算処理らにより、変形済行列Vωを算出し、算出した変形済行列Vωの各行のいずれかを用いて死角フィルタを生成する請求項1に記載の音信号処理装置。前記方向点検出部は、新たな方向点検出処理対象とするブロックの近傍ブロック群における死角パターンの最小値に基づいて計算した動的閾値を適用して、死角パターンにおける極小部を方向点とするか否かの選択を実行する請求項1に記載の音信号処理装置。前記方向点検出部は、死角パターンの極小部の値が対応する指向性パターンの極大部の値よりも小さいという条件を満たす方向点を強い方向点とし、前記条件を満たさない方向点を弱い方向点として区別し、作成中の区間の内側にある弱い方向点は音源方向を示す方向点として選択し、作成中の区間の外側にある弱い方向点は音源方向を示す方向点として選択しない処理を行う請求項1に記載の音信号処理装置。前記方向点検出部は、死角パターンの極小部の値が対応する指向性パターンの極大部の値よりも小さいという条件を満たす方向点を強い方向点とし、前記条件を満たさない方向点を弱い方向点として区別し、作成中の区間の延長と確定処理においては、強い方向点と弱い方向点の双方を、音源方向を示す方向点として選択し、新規の区間の作成開始時には、強い方向点のみを音源方向を示す方向点として選択する処理を行う請求項1に記載の音信号処理装置。音信号処理装置において実行する音信号処理方法であり、方向推定部が、音信号の音源方向を示す方向点を所定時間単位で分割したブロック毎に検出する方向推定ステップと、方向トラッキング部が、前記方向点を複数ブロック間で接続して区間の検出を行う方向トラッキングステップを実行し、前記方向推定ステップは、音源方向に対する感度の低い空間フィルタである死角フィルタと、音源方向に対する感度の高い空間フィルタである指向性フィルタを生成する空間フィルタ生成ステップと、前記死角フィルタに対応する方向とゲインとの対応関係データである死角パターンを生成する死角パターン生成部ステップ、前記指向性フィルタに対応する方向とゲインとの対応関係データである指向性パターンを生成する指向性パターン生成ステップと、前記死角パターンの極小部と、前記指向性パターンの極大部の組み合わせを有する方向を、音源方向を示す方向点として検出する方向点検出ステップを実行する音信号処理方法。音信号処理装置において音信号処理を実行させるプログラムであり、方向推定部に、音信号の音源方向を示す方向点を所定時間単位で分割したブロック毎に検出させる方向推定ステップと、方向トラッキング部に、前記方向点を複数ブロック間で接続して区間の検出を行わせる方向トラッキングステップを実行させ、前記方向推定ステップにおいては、音源方向に対する感度の低い空間フィルタである死角フィルタと、音源方向に対する感度の高い空間フィルタである指向性フィルタを生成する空間フィルタ生成ステップと、前記死角フィルタに対応する方向とゲインとの対応関係データである死角パターンを生成する死角パターン生成部ステップ、前記指向性フィルタに対応する方向とゲインとの対応関係データである指向性パターンを生成する指向性パターン生成ステップと、前記死角パターンの極小部と、前記指向性パターンの極大部の組み合わせを有する方向を、音源方向を示す方向点として検出する方向点検出ステップを実行させるプログラム。本件は、このような状況に鑑みてなされたものであり、音源方向推定を適用した音声区間検出を行なう構成において、検出失敗非検出や区間分断や誤検出を抑制して高精度な音声区間検出を実現する音信号処理装置、および音信号処理方法、並びにプログラムを提供することを目的とする。本発明の第1の側面は、所定時間単位で分割したブロック毎に、音信号の音源方向を示す方向点を検出する方向推定部と、前記方向点を複数ブロック間で接続して区間の検出を行う方向トラッキング部を有し、前記方向推定部は、音源方向に対する感度ゲインの低い空間フィルタである死角フィルタと、音源方向に対する感度ゲインの高い空間フィルタである指向性フィルタを生成する空間フィルタ生成部と、前記死角フィルタに対応する方向とゲインとの対応関係データである死角パターンを生成する死角パターン生成部と、前記指向性フィルタに対応する方向とゲインとの対応関係データである指向性パターンを生成する指向性パターン生成部と、前記死角パターンの極小部と、前記指向性パターンの極大部の組み合わせを有する方向を、音源方向を示す方向点として検出する方向点検出部を有する音信号処理装置にある。さらに、本発明の音信号処理装置の一実施態様において、前記空間フィルタ生成部は、音信号から生成される時間周波数領域の観測信号から前記ブロック毎に計算される共分散行列に対する固有値分解処理により固有値と固有ベクトルを算出し、算出した最大の固有値に対応する固有ベクトルを用いて前記指向性フィルタを生成する。さらに、本発明の音信号処理装置の一実施態様において、前記空間フィルタ生成部は、音信号から生成される時間周波数領域の観測信号から前記ブロック毎に計算される共分散行列に対する固有値分解処理により固有値と固有ベクトルを算出し、算出した固有ベクトルに対して固有値を重みとした重みつき総和または重み付き平均により前記指向性フィルタを生成する。さらに、本発明の音信号処理装置の一実施態様において、前記空間フィルタ生成部は、音信号から生成される時間周波数領域の観測信号から前記ブロック毎に計算される共分散行列に対する固有値分解処理により固有値と固有ベクトルを算出し、固有ベクトルからなる行列Vωと、固有値からなる対角行列Dωを用いた演算処理らにより、変形済行列Vωを算出し、算出した変形済行列Vωの各行のいずれかを用いて死角フィルタを生成する。さらに、本発明の音信号処理装置の一実施態様において、前記方向点検出部は、新たな方向点検出処理対象とするブロックの近傍ブロック群における死角パターンの最小値に基づいて計算した動的閾値を適用して、死角パターンにおける極小部を方向点とするか否かの選択を実行する。さらに、本発明の音信号処理装置の一実施態様において、前記方向点検出部は、死角パターンの極小部の値が対応する指向性パターンの極大部の値よりも小さいという条件を満たす方向点を強い方向点とし、前記条件を満たさない方向点を弱い方向点として区別し、作成中の区間の内側にある弱い方向点は音源方向を示す方向点として選択し、作成中の区間の外側にある弱い方向点は音源方向を示す方向点として選択しない処理を行う。さらに、本発明の音信号処理装置の一実施態様において、前記方向点検出部は、死角パターンの極小部の値が対応する指向性パターンの極大部の値よりも小さいという条件を満たす方向点を強い方向点とし、前記条件を満たさない方向点を弱い方向点として区別し、作成中の区間の延長と確定処理においては、強い方向点と弱い方向点の双方を、音源方向を示す方向点として選択し、新規の区間の作成開始時には、強い方向点のみを音源方向を示す方向点として選択する処理を行う。さらに、本発明の第2の側面は、音信号処理装置において実行する音信号処理方法であり、方向推定部が、音信号の音源方向を示す方向点を所定時間単位で分割したブロック毎に検出する方向推定ステップと、方向トラッキング部が、前記方向点を複数ブロック間で接続して区間の検出を行う方向トラッキングステップを実行し、前記方向推定ステップは、音源方向に対する感度の低い空間フィルタである死角フィルタと、音源方向に対する感度の高い空間フィルタである指向性フィルタを生成する空間フィルタ生成ステップと、前記死角フィルタに対応する方向とゲインとの対応関係データである死角パターンを生成する死角パターン生成部ステップ、前記指向性フィルタに対応する方向とゲインとの対応関係データである指向性パターンを生成する指向性パターン生成ステップと、前記死角パターンの極小部と、前記指向性パターンの極大部の組み合わせを有する方向を、音源方向を示す方向点として検出する方向点検出ステップを実行する音信号処理方法にある。さらに、本発明の第3の側面は、音信号処理装置において音信号処理を実行させるプログラムであり、方向推定部に、音信号の音源方向を示す方向点を所定時間単位で分割したブロック毎に検出させる方向推定ステップと、方向トラッキング部に、前記方向点を複数ブロック間で接続して区間の検出を行わせる方向トラッキングステップを実行させ、前記方向推定ステップにおいては、音源方向に対する感度の低い空間フィルタである死角フィルタと、音源方向に対する感度の高い空間フィルタである指向性フィルタを生成する空間フィルタ生成ステップと、前記死角フィルタに対応する方向とゲインとの対応関係データである死角パターンを生成する死角パターン生成部ステップ、前記指向性フィルタに対応する方向とゲインとの対応関係データである指向性パターンを生成する指向性パターン生成ステップと、前記死角パターンの極小部と、前記指向性パターンの極大部の組み合わせを有する方向を、音源方向を示す方向点として検出する方向点検出ステップを実行させるプログラムにある。なお、本発明のプログラムは、例えば、様々なプログラムコードを実行可能な画像処理装置やコンピュータシステムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータシステム上でプログラムに応じた処理が実現される。本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。本発明の一実施例の構成によれば、音信号からの発話区間の検出処理を高精度に実行する装置、方法が実現される。具体的には、音信号の音源方向を示す方向点を所定時間単位で分割したブロック毎に検出する方向推定部と、方向点を複数ブロック間で接続して区間の検出を行う方向トラッキング部を有する。方向推定部は、音源方向に対する感度の低い空間フィルタである死角フィルタに対応する方向とゲインとの対応関係データである死角パターンと、音源方向に対する感度の高い空間フィルタに対応する方向とゲインとの対応関係データである指向性パターンを生成し、死角パターンの極小部と指向性パターンの極大部の組み合わせを有する方向を、音源方向を示す方向点として検出する。この処理により、より精度の高い音声区間検出が実現される。以下、図面を参照しながら音信号処理装置、および音信号処理方法、並びにプログラムの詳細について説明する。説明は以下の項目に従って行う。1.本開示における音信号処理の概要について2.本開示における音信号処理の詳細について2-1.死角パターンと指向性パターンとの併用構成2-2.区間の状態に応じた方向点検出条件の変更構成2-3.新規の死角フィルタと指向性フィルタ3.音信号処理装置の構成と処理について4.音信号処理装置の実行する処理シーケンスについて5.その他の実施例変形例について6.効果のまとめなお、明細書中において、A_bは、Aに下付きの添え字bが設定された表記、A^bは、Aに上付きの添え字bが設定された表記、これらを意味する。[1.本開示における音信号処理の概要について]以下において説明する音信号処理は、音源方向推定に基づく音声区間検出を行うものであり、検出失敗非検出や区間分断や誤検出を抑制した高精度な音声区間検出を実現するものである。先に説明した従来技術では、音源方向を求める際に死角パターンのみを用いているために、検出失敗、例えば実際の発話の非検出や一つの音声区間を複数に分断して検出してしまうといった失敗や、誤検出を発生させている。以下、説明する構成では、死角パターンのみならず他の情報を併用した処理により音声区間の検出失敗非検出や区間分断や誤検出を回避する。また、トラッキングで得た区間情報を方向点の検出に反映させることで、区間検出の精度を向上させる。以下に説明する音信号処理は、以下のような特徴特徴1~3を持つ。特徴1.死角パターンと指向性パターンとの併用音源方向に死角を向けた空間フィルタの他に音源方向に指向性を向けた空間フィルタも生成し、それぞれについて方向とゲインとについてのパターンを求める。それぞれ、を死角パターンと指向性パターンと呼ぶ。方向点の検出は、両方のパターンを用いて行なう。特徴2.区間の状態に応じた方向点検出条件の変更区間開始の判定と区間終了の判定とで、方向点の検出についての条件を変える。なお、以降では、音源方向に指向性を向けた空間フィルタを指向性フィルタと呼ぶ。また、指向性フィルタによって得られた方向とゲインとについてのパターンを指向性パターンと呼ぶ。すなわち、以下に説明する構成では、音源方向に対する指向性が低い死角フィルタと、死角フィルタによって得られた方向とゲインとについてのパターンである死角パターンだけでなく、これらと逆の特性を持つ指向性フィルタと指向性パターンも用いるのが特徴の一つである。さらに、死角フィルタと指向性フィルタの生成についても、以下の工夫を行なう。特徴3.新規の死角フィルタと指向性フィルタ死角フィルタと指向性フィルタとについて、観測信号の共分散行列から計算された固有ベクトルを直接用いる代わりに、後述のように加工したベクトルを用いる。[2.本開示における音信号処理の詳細について]以下、本開示における音信号処理の詳細について、上記の各特徴順に、順次説明する。2-1.死角パターンと指向性パターンとの併用構成まず、死角パターンと指向性パターンとの併用構成について説明する。図5は、あるブロックにおいて、死角パターンと指向性パターンとを重ねてプロットしたものである。それぞれのパターンの作成方法については後述する。なお、ブロックとは、先に図1を参照して説明したブロメック11と同様のブロックである。ブロックの長さは、通常の発話の長さと比べて十分短い値とする。例えば1/10秒や1/8秒に設定する。図5には、あるブロックにおける以下の2つのパターンを示している。a音源方向に対する感度の高い空間フィルタである指向性フィルタによって得られた方向とゲインとについてのパターンである指向性パターン101、b音源方向に対する感度の低い空間フィルタ、すなわち音源方向に死角を設定した空間フィルタである死角フィルタによって得られた方向とゲインとについてのパターンである死角パターン51、これら2つのパターンの方向横軸とゲイン縦軸との関係をプロットしている。縦軸は対数としている。死角パターン51は、先に図3を参照して説明した死角パターン31と同一の死角パターンであり、音源方向に対する感度の低い特性を持つ。図5に示す極小部52~57は、図3に示す極小部32~37にそれぞれ対応する。これら極小部52~57の設定された方向を音源方向であるとの推定が可能となる。一方、指向性パターン101は同じブロックにおける指向性パターンである。指向性パターン101は、ブロック内の音源の方向に指向性ゲインの極大部LocalMaximumを持つ。ただし、音源方向に対応しない極大部も存在する。図に示す指向性パターン101は、極大部102~105の4つの極大部を有している。これら極大部102~105の設定された方向が音源方向であると推定することが可能となる。死角パターン51側が極小部となり、かつ指向性パターン101側が極大部となる方向を見つけ出すことで、音源方向を精度よく検出できる。例えば図5に示す例では、死角パターン51には極小部52~57の6個の極小部が存在しているが、これらの極小部52~57と同じ方向θ付近に指向性パターン101の極大が明らかに存在しているのは、極小部52と、極小部53の2つである。すなわち、図5から理解されるように、死角パターン51の極小部52とほぼ同じ方向方向:θ=p,111に、指向性パターン101の極大部103が存在する。また、死角パターン51の極小部53とほぼ同じ方向方向:θ=q,112に、指向性パターン101の極大部104が存在する。なお、死角パターン51の極小部55についてもほぼ同じ方向方向:θ=r,113に、指向性パターン101の極大部105が存在するが、この方向については、真の音源方向でないと判定することが可能である。この方向棄却処理については、後段の[3.区間の状態に応じた方向点検出条件の変更]の項目において説明する。真の音源に対応する方向点をできる限り正確に抽出するため、以下の条件条件1~5を用いた判定処理を実行する。すなわち、音信号処理装置は、各方向について、以下に示す条件1~条件5を全て満たす方向であるか否かを判定し、条件1~条件5を全て満たす方向である場合に、初めて方向点、すなわち音源の方向を示す方向点とみなす処理を実行する。条件1死角パターンにおいて極小部に対応した方向である。条件2極小部の値の小さい順の1位~n-1位の範囲に含まれる。マイク数=n条件3極小部の値の大きさは、予め規定した閾値より小さい。条件4極小部に対応した方向の付近に、指向性パターンの極大部が存在する。条件5直近のブロック群における死角パターンの最小値から動的に計算した閾値に基づく判定条件を満たす。動的閾値に従った判定条件以下、上記の各条件1~5について説明する。条件1死角パターンにおいて極小部に対応した方向である。従来法と同様に本発明でも、死角パターンの極小部を最初に見つける。条件2極小値の小さい順の1位~n-1位の範囲に含まれる。マイク数=nさらに、上記条件1に従って検出した死角パターンにおける極小部について、極小値の小さい順に1位~n-1位を残す。例えば、図5に示す死角パターン51は、n=4、すなわち、4個のマイクロホンで収録された信号から生成しているため、極小部の値ゲイン値の小さい順に1位~3位の極小部を残す。この極小部選択処理の結果、選択される極小部は、極小部52,53,55の3個の極小部となる。条件1を式で表わすと、以下に示す式[1.1]となる。ただし、上記式[1.1]において、P_Nθ_iは現在着目しているブロックにおける死角パターンである。死角パターンの角度方向は離散的例えば-180°から180°まで5°間隔でよく、それらの値をθ_1,θ_2,,θ_i,とする。角度θ_iにおいてP_Nθ_iが極小値であることは、両隣の角度であるθ_{i-1}およびθ_{i1}と比較して式[1.1]が成立しているかで判定できる。なお、角度の間隔刻み幅が小さい場合は、式[1.1]の代わりに式[1.2]を用いて隣の隣も考慮した方が、細かな凹凸を死角と誤検出する可能性が少なくなる。条件3極小値の大きさは、予め規定した閾値より小さい。条件1,2に基づいて残った死角パターンの極小部に対して、予め規定した閾値による選別を行なう。具体的には、予め規定した固定閾値:T_{static}を適用して、上記の式[1.3]に従って判別を行なう。閾値による選別という手段自体は従来法と同一だが、本発明では閾値の目的と設定方法が従来法と異なる。従来法における閾値は、音源が存在するブロックにおいて方向点を絞り込むために用いられていた。そのため、閾値の設定がシビアであった。それに対して本発明では、静かな環境明確な音源が存在しない環境において方向点が誤検出されるのを防ぐために用いられる。すなわち、静かな環境では、死角パターンにも指向性パターンにも明確な極値極小または極大が1つも存在しないため、それぞれの細かな凹凸から方向点が誤検出されてしまう可能性があるが、閾値によってその誤検出を防ぐ。この閾値は、静かな環境において方向点が検出されない程度の値を1回だけ設定すれば良いため、従来法にける閾値と比べ、設定は容易である。閾値の例を図5の閾値120として示す。条件4極小部に対応した方向の付近に、指向性パターンの極大部が存在する。次に、条件4について説明する。条件1~3による選別によって残った極小部に対して、それぞれの付近に指向性パターン側の極大が存在しているかどうかを調べる。極大の位置と極小の位置とは必ずしも一致せず、少しずれることもあるため、この判定はマージンつきで行なう。具体的には、極小部の位置をθ_i、マージンをβとし、以下の式を満たすθ_{i}について、上記の式[1.4]を満たすものが存在するかどうかで判定する。θ-β≦θ_{i}≦θβただし、P_Dθ_iは、同じブロックの指向性パターンを表わす。なお、式[1.1]の場合と同様に、式[1.4]の代わりに式[1.5]を用いても良い。図5の例では、死角パターン51における極小部52,53,55に対応した方向、すなわち、方向:θ=p,111,方向:θ=q,112,方向:θ=r,113それぞれについて指向性パターン101を見ると、いずれも極大部が存在している。すなわち、死角パターン51における極小部52に対する指向性パターン101の極大部103、死角パターン51における極小部53に対する指向性パターン101の極大部104、死角パターン51における極小部55に対する指向性パターン101の極大部105、これらの対応関係である。これらの対応関係を持つ死角パターン51における極小部52,53,55を真の音源方向の候補として残す。条件5直近のブロック群における死角パターンの最小値から動的に計算した閾値に基づく判定条件を満たす。動的閾値に従った判定条件さらに方向点を絞り込むため、条件5も用いる。これは、例えば騒がしい環境において方向点が誤検出されるのを防ぐための条件である。方向推定に基づく音声区間検出という方法は、騒がしい環境背後に多数の音源が存在している環境でも、マイクロホンの近くの音源に対してはある程度は動作する。ただし、条件1~4だけでは背後の音源も方向点として検出されてしまうため、それを防ぐために閾値を動的に変化させる。その仕組みを、図6を用いて説明する。図6は、先に図1を参照して説明した図1cに対応する図であり、横軸が時間、縦軸が方向を示す。予め規定した時間間隔に区切られたブロック単位で、音の検出方向を方向点としてプロットしている。図6では途中のブロックまで方向点が求まった状態を表わしている。すなわち、ブロックB2,152までは解析方向点の検出が完了し、その隣接ブロックであるブロックB,151のブロックを現在解析中であるとする。ここで、直近のブロック群154の情報を用いて閾値を計算する。具体的には、b番目のブロックの死角パターンをP_N^[b]θ、現在解析中のブロックB3,151の番号をB、直近のブロック群154のブロック数をB0とし、式[1.6]~式[1.7]で閾値を計算する。式[1.6]は、bをB-B0=ブロックB1からB-1=ブロックB2まで変化させながら角度θを任意の範囲例えば-πからπまでで変化させたときの最小値を表わす。こうして求まった値をP_{min}とし、これに一定の係数αを乗じた値を動的閾値:T_{dynamic}とする式[1.7]。αは0.1や0.2といった、0と1との間の値を用いる。そして、式[1.8]によって判別を行なう。死角パターンは、最大値が0となるように調整してある後述ため、最小値は必ず負の値である。最小値に対して係数αを乗じることは、閾値を最大値と最小値との間に設定することを意味する。この動的閾値:T_{dynamic}を用いることで、騒がしい環境では閾値が、先に説明した条件3で用いた固定閾値:T_{static}よりも小さな値に設定されるため、死角パターンにおいて浅い凹みが方向点として誤検出されるのを防ぐ。ただし静かな環境では、動的閾値:T_{dynamic}を用いることで閾値が条件3で用いた固定閾値:T_{static}よりもかえって大きな値に設定されてしまい、誤検出が増える副作用もあるため、引き続き条件3式[1.3]も用いる。こうすることで、T_{dynamic}とT_{static}とのうちで小さい方が真の閾値として機能するため、騒がしい環境でも静かな環境でも誤検出が防げる。このように、方向点検出処理に際しては、新たな方向点検出処理対象とするブロックの近傍ブロック群における死角パターンの最小値に基づいて計算した動的閾値を適用して、死角パターンにおける極小部を方向点とするか否かの選択を実行する。ここで、死角パターンと指向性パターンそれぞれの生成方法について述べる。死角パターンの生成方法は従来のMUSIC法とほぼ同様であり、観測信号の共分散行列に対応した固有ベクトルのうち、最小の固有値に対応したものの指向特性を調べることで行なう。一方、指向性パターンの生成方法は、固有ベクトルのうち、最大の固有値に対応したものの指向特性を調べることで行なう。その過程について、以下に示す式[2.1]~[2.8]を参照しながら説明する。n本のマイクロホン中のk番目のマイクロホンで観測された信号に短時間フーリエ変換ShortTimeFourierTransform:STFTを適用した結果をXkω,tとし、X1ω,t~Xnω,tからなるベクトルをXω,tとおく式[2.1]。ただし、ωは周波数ビンの番号ω=1,2,...,M、tはフレームの番号である。次に、周波数ビンωごとに、複数のフレームからXω,tの共分散行列Rωを計算する式[2.2]。ただし、式[2.2]において、<>_{t-L<τ≦t}は、t-L<τ≦tを満たすフレームの間でカッコ内の式の平均をとることを表わす。tはブロックの末端のフレーム番号例えば図6のブロックB151の末端156のフレーム番号、Lはブロックの長さフレーム数、t-L1はブロックの始端のフレーム番号例えば図6のブロックB151の始端155のフレーム番号を表わす。上記式[2.2]に従って算出される共分散行列を、Rωとする。次に、共分散行列Rωに対して固有値分解Eigenvaluedecompositionを適用する式[2.3]。式[2.3]において、Dωは固有値からなる対角行列であり式[2.5]、Vωは固有ベクトルV_1ω~V_nωからなる行列である。また、上付きのHはエルミート転置要素を共役複素数に変換してから転置を表わす。共分散行列RωはRω^H=Rωを満たすため、固有値d_1ω~d_nωは全て実数であり、これらは大きい順に並んでいるものとする式[2.6]。固有ベクトルV_1ω~V_nωの大きさは1であり、またお互いに直交しているとする。すなわち、式[2.7]および式[2.8]を満たす。共分散行列の計算に用いたブロック内で鳴っている音源の数をNとすると、固有値および固有ベクトルは、前半のd_1ω~d_NωおよびV_1ω~V_Nωと、後半のd_{N1}ω~d_nωおよびV_{N1}ω~V_nωとに二分され、両者で性質が大きく異なる。前半の固有値d_1ω~d_Nωは、後半のd_{N1}ω~d_nωと比べて大きな値を持つ以降、大きな固有値。また、大きな固有値に対応した固有ベクトルV_1ω~V_Nωは、空間フィルタとして解釈すると、ブロック内の音源に指向性を向けた指向特性を形成している詳細は後述する。一方、後半の固有値d_{N1}ω~d_nωは、0に近い値を持つ以降、小さな固有値。小さな固有値に対応した固有ベクトルV_{N1}ω~V_nωは、同じく空間フィルタとして解釈すると、ブロック内の全ての音源に死角を向けた指向特性を形成している。実際、図2の環境で収録された音から共分散行列および固有ベクトルを計算し、それぞれの固有ベクトルについて後述の方法で指向特性を求めると、図7のプロットが得られる。図7において、指向特性パターン201~204はぞれぞれ、固有ベクトルV_1ω~V_4ωに対応した指向特性パターンである。この環境での音源数は2個なので、固有ベクトルは、V_1ω,V_2ωの組と、V_3ω,V_4ωの組に二分される。後者固有ベクトルV_3ω,V_4ωの組に対応した指向特性パターン203,204を見ると、極小部211~214がこれらの方向に存在していることから、二つの音源方向:θ=A,221と、θ=B,222に死角を向けていることが分かる。一方、前者固有ベクトルV_1ω,V_2ωの組に対応した指向特性パターン201,202のうち、少なくとも固有ベクトルV_1ωに対応した指向特性パターン201については、極大値215,216に基づいて二つの音源方向:θ=A,221と、θ=B,222に指向性を向けていることが分かる。そこで本発明では、死角フィルタ音源方向に死角を向けた空間フィルタとして、最小の固有値に対応した固有ベクトルV_nωを用いこれは従来法と同じ、一方で、指向性フィルタ音源方向に指向性を向けた空間フィルタとして、最大の固有値に対応した固有ベクトルV_1ωを用いる。次に、各空間フィルタの指向特性を調べる方法について述べる。指向特性を求めるためには、様々な方向から到来する信号を仮想的に生成する必要があるが、重要なのはマイクロホン間での位相差であり、それをステアリングベクトルSteeringVectorと呼ぶ。ステアリングベクトルの生成方法を、図8および以下に示す式[3.1]~[3.9]を参照して説明する。図8には、音信号処理装置に対する音信号入力部としてのマイクロホンk,253と、マイクロホンi,254を示している。また、方向を測るための基準点252を示している。基準点262はマイクロホンの近くの任意の地点でよく、例えばマイクロホン間の重心と一致させた基準点の設定や、あるいはマイクロホンのどれかと一致させた基準点の設定とするなど、様々な設定としてよい。基準点252の位置ベクトルすなわち座標をmとする。音の到来方向を表わすために、基準点m,252を始点とする長さ1のベクトルを設定し、このベクトルをqθとする。図に示す方向ベクトルqθ251である。音源位置がマイクロホンとほぼ同じ高さであるなら、方向ベクトルqθ251はX-Y平面上垂直方向をZ軸とするのベクトルとして考えればよく、方向ベクトルqθの成分は、上記の式[3.1]で表わせる。ただし方向θは、X軸となす角である図8座標およびベクトル設定参考図参照。図8において、方向ベクトルqθ251の方向から到来する音は、先にマイクロホンk,253に到着し、次に基準点m,252、それからマイクロホンi,254に到着する。基準点m,252に対するマイクロホンk,253の位相差S_kω,θは、上記の式[3.2]で表わせる。ただしこの式において、jは、虚数単位、Mは、周波数ビン数、Fは、サンプリング周波数、Cは、音速、m_kは、マイクロホンkの位置ベクトル、を表わし、上付きのTは通常の転置を表わす。すなわち、平面波を仮定すると、マイクロホンk,253は基準点m,252よりも図8に示す距離255の分だけ音源に近く、逆にマイクロホンi,254は図8に示す距離256の分だけ遠い。これらの距離差は、ベクトルの内積を用いてqθ^Tm_k-m、および、qθ^Tm_i-mと表わせる。距離差を位相差に変換すると、上記の式[3.2]で示す基準点m,252に対するマイクロホンk,253の位相差:S_kω,θの算出式が得られる。各マイクロホンの位相差からなるベクトルSω,θは、上記の式[3.3]で表わされ、これをステアリングベクトルと呼ぶ。周波数ビンωにおいて音源方向に死角を向けた空間フィルタをW_NωとするW_Nωは行ベクトルと、角度θから到来する音に対するゲインは、|W_NωSω,θ|である。角度θを一周分例えば-πからπまで所定の刻み幅で変化させれば、指向特性到来方向とゲインとの関係が分かる。本発明では、死角パターン生成用の空間フィルタである死角フィルタW_Nωとして、最小の固有値に対応した固有ベクトルV_nωのエルミート転置を用い式[3.4]、そこからゲインの対数P_Nω,θを計算する式[3.5]。さらに、全周波数ビンで総和することで死角パターンP_Nθを生成している式[3.6]。同様に、指向性パターン生成用の空間フィルタ、すなわち指向性フィルタW_Dωとして、最大の固有値に対応した固有ベクトルV_1ωのエルミート転置を用い式[3.7]、そこからゲインの対数P_Dω,θを計算する式[3.8]。さらに、全周波数ビンで総和することで指向性パターンP_Dθを生成している式[3.9]。なお、死角フィルタW_Nωの添え字Nは、Nullbeam死角、指向性フィルタW_Dωの添え字Dは、Directivity指向性に由来するものである。また、死角パターンP_Nθを示す式[3.6]、および、指向性パターンP_Dθを示す式[3.9]において、それぞれmax_θP_Nω,θおよびmax_θP_Dω,θを減算している理由は、各周波数ビンでの指向特性の最大値を0に合わせるためである。これを行なうことで、死角パターンと指向性パターンとの間で大小比較が可能になる。2-2.区間の状態に応じた方向点検出条件の変更について次に、区間の状態に応じた方向点検出条件の変更について説明する。音声区間検出においては、誤検出発話していないのに検出されるは少ない方が望ましい。一方で、1つの発話が複数の区間に分断されるのは望ましくない。しかし、方向点の検出条件が固定されている場合、この2つはトレードオフになり得てしまう。そこでトレードオフを解消するため、本発明ではトラッキングの状態発話区間内か否かに応じて、方向点の検出条件を変更する。具体的には、前述の条件1~5に加えて以下の条件6も設定し、区間の始端の検出においては、以下の条件6も考慮に入れる一方、区間の途中や終端の検出においては条件6を考慮しないようにする。条件6死角パターンの極小部の値の方が、対応する指向性パターンの極大部の値よりも小さい。以下では、条件1~6をすべて満たす方向点を強い方向点、条件1~5を満たすが条件6を満たさない方向点を弱い方向点と呼ぶ。単に方向点とした場合は両方を含む。例えば図5において、方向:θ=p,111と、方向:θ=q,112の各方向では、上記の条件6を満たしており、強い方向点である。しかし、方向:θ=r,113の方向では、上記の条件6を満たしておらず、弱い方向点となる。以下では、条件6を用いる理由について説明する。強い方向点は本当の音源方向に対応している可能性が高い。それに対し、弱い方向点については以下のような様々な可能性があり得る。1死角パターンの極小と指向性パターンの極大とがたまたま一致した。音源ではない2音声発話の開始直後や終了直後に対応したブロック。音源である3発話途中の短い無音区間。4他の音源との兼ね合いによって死角が相対的に浅くなった。音源である5冷却ファンの音のような、小さいながらも定常的に鳴り続けている音。音源であるが、検出して欲しくない。6小さな音が一瞬だけ鳴った。音源であるが、検出して欲しくない。上記2,3,6から弱い方向点が発生する原因は同一であり、1つのブロックにおいて音源の鳴っている区間がブロック長よりも短いと弱い方向点が発生しやすいからである。弱い方向点を方向点として採用すべきか否かは、上記1~6のそれぞれで異なる。1や6では棄却した方が良いが、3や4で棄却すると、従来技術の問題点で述べたような区間の分断が発生しやすくなるというトレードオフがある。そこで本構成では、区間の内外で弱い方向点の扱いを変える。この処理について図9を参照して説明する。図9は、例えば先に説明した図1dと同様の図であり、各ブロックで検出された方向点と、方向点を接続して得られる区間を示している。ブロックの区切りは省略してある。図9において、円は方向点を表わし、塗りつぶされた円で示す方向点275などは強い方向点を、斜線の円で示す方向点271~274は弱い方向点を表わす。区間276は、方向点を接続して得られた区間である。方向点271のような単独で現れる弱い方向点は、上記の1か6である可能性が高く、方向点273のような、強い方向点が連続する途中で現れる弱い方向点は、上記の3か4である可能性が高い。そこで弱い方向点は、区間の内側にあれば採用し、外側にあれば棄却する。図9では、弱い方向点273,274は方向点として採用し、弱い方向点271,272は棄却する。このような弱い方向点に対する選択処理を実行することで、強い方向点が連続する途中で現れる弱い方向点273による分断を防ぐ一方で、強い方向点から離間した位置の弱い方向点271を方向点とみなしてしまう誤検出も防ぐ。なお、この条件6を適用した方法では、発話開始直後の弱い方向点272も棄却してしまう。この棄却処理によって、発話区間の始端の検出が遅れるという副作用が発生するが、この副作用に対しては発話開始時刻にマージンを持たせることで容易に回避可能である。すなわち、発話は始端が検出されたブロックよりも少し前から始まっていたと見なす処理を適用すればよい。2-3.新規の死角フィルタと指向性フィルタについて次に、新規の死角フィルタと指向性フィルタの詳細について説明する。先に説明した2-1.死角パターンと指向性パターンとの併用構成の項目では、死角フィルタと指向性フィルタとして、それぞれ以下の設定のフィルタを用いていた。死角フィルタW_Nωとして、最小の固有値に対応した固有ベクトルV_nωのエルミート転置式[3.4]。指向性フィルタW_Dωとして、最大の固有値に対応した固有ベクトルV_1ωのエルミート転置式[3.7]。このように、V_nωとV_1ωを使用していたが、本来は、使用可能な固有ベクトルは、それぞれn-N本とN本であるnはマイク数、Nはブロック内の音源数。もし、複数の固有ベクトルが使用できれば、それぞれの指向特性のプロットにおいて、極大や極小が一層明確に現れたり細かな凹凸が消えたりして、方向点検出の精度向上が期待できる。しかし、指向特性パターンの生成前から音源数Nを正確に推定するのは、それ自体が大きな課題である。そこで本発明では、音源数の推定なしで複数の固有ベクトルを空間フィルタに反映させるため、以下のような工夫を行なう。指向性フィルタW_Dωとして、式[3.7]の代わりに、以下に示す式[4.1]を用いる。上記[4.1]に示す式は、各固有ベクトルのエルミート転置V_kω^Hに対して、固有値d_kωを重みとして乗算して加算した重みつき和であり、大きな固有値に対応した固有ベクトルほど、指向性フィルタW_Dωに強く反映される。大きな固有値に対応した固有ベクトルは音源方向に指向性を向けているため、W_Dωも音源方向に指向性を向けた空間フィルタとなる。指向性フィルタの生成に際しては、このように、音信号から生成される時間周波数領域の観測信号からブロック毎に計算される共分散行列に対する固有値分解処理により固有値と固有ベクトルを算出し、算出した固有ベクトルに対して固有値を重みとした重みつき総和または重み付き平均により指向性フィルタを生成することができる。一方、死角フィルタW_Nωのためには、式[4.2]によって、先に、式[2.4]で説明した固有ベクトルV_1ω~V_nωからなる行列Vωと、式[2.5]で説明した固有値からなる対角行列Dωを用いて、変換済行列Vωを計算する。このVωの各行のうちのどれかを、死角フィルタW_Nωとして用いる。なお、式[4.2]は、先に式[2.2]を参照して説明した共分散行列Rωの-1/2乗を求める式と等しいが、Vωの各行を空間フィルタとして見なすと、ブロック内の全ての音源に死角を向けたものになっている。[3.音信号処理装置の構成と処理について]次に、音信号処理装置の構成と処理について説明する。音信号処理装置の構成と処理について、図10~図14を参照して説明する。図10は、音信号処理装置の全体構成を示す図であり、図11~図14は各モジュールの詳細を示す図である。3-1.音信号処理装置の全体構成と処理についてまず、図10を参照して音信号処理装置の全体構成と処理について説明する。音信号はマイクロホンアレイ301で収音され、得られた多チャンネルの音データはAD変換部302においてデジタル信号へ変換される。このデータを時間領域の観測信号と呼ぶ。次に、STFT部303において短時間フーリエ変換short-timeFouriertransform:STFTが適用され、観測信号は時間周波数領域の信号へ変換される。時間周波数領域の観測信号は、観測信号バッファ304と方向推定部305とに送られる。なお、短時間フーリエ変換short-timeFouriertransform:STFTの具体的処理例については、後段において、図16を参照して説明する。観測信号バッファ304は、所定の時間フレーム数の観測信号を蓄積する。ここで蓄積された信号は、検出された発話区間の開始時刻終了時刻と合わせて一発話分の音声データを得るために使用したり、さらに区間の方向も用い、所定の方向から到来した音声を抽出した結果を得るために使用したりする。方向推定部305は、観測信号を所定の長さのブロックに分割すると共に、各ブロックにおいて音源方向に対応した点を検出する。すなわち、先に図1を参照して説明した図1b,cのデータを生成するモジュールである。詳細は後述する。方向トラッキング部306は、連続する複数のブロック間においてほぼ同一の方向を持つ方向点が現れているときに、それらを連結し、発話区間として検出する。すなわち、先に説明した図1におけるdのデータを生成するモジュールである。詳細は後述する。方向トラッキングの出力は発話区間、すなわち、発話開始時刻終了時刻および発話方向音源方向である。言い換えると、複数の区間に重複がある場合、その区間では複数の音が混ざっている。そこで、混ざっていないクリーンな音源が必要な場合例えば音声認識の前段として本発明を用いる場合などは、音源抽出部307を備えるようにする。音源抽出部307は、発話区間に対応した観測信号や音源方向などを用いて、所定の音声などを抽出する。このモジュールには、ビームフォーミング等の既存の技術が使用可能である。発話区間に対応した音データは、必要に応じて後段の処理実行部308に送られる。例えば、音声認識機などである。なお、音声認識機には音声区間検出機能を持つものもあるが、その機能は省略可能である。また、音声認識機は音声特徴量を抽出するためにSTFTを備えることが多いが、本発明と組み合わせる場合は、音声認識側のSTFTは省略可能である。なお、図10に示す各モジュールは制御部309によって制御される。3-2.音信号処理装置の方向推定部の構成と処理について次に、図10に示すモジュール中の方向推定部305の詳細について、図11を参照して説明する。方向推定部305は、STFT部304から送られてきた時間周波数領域の観測信号321を入力して、方向点情報327を生成して出力する処理を実行する。方向推定部305は、まず、図11に示す共分散行列計算部331において、STFT部304から入力する複数フレーム分の観測信号から共分散行列322を計算する。例えば先に説明した式[2.3]に示す共分散行列Rωである。空間フィルタ生成部332は、この共分散行列322を入力して、共分散行列322から2種類の空間フィルタを生成する。1つは死角フィルタ323であり、もう1つは指向性フィルタ324である。例えば先に説明した式[3.4]に示す死角フィルタW_Nω、式[3.7]に示す指向性フィルタW_Dωである。なお、このフィルタ生成に際しては、先に項目2-3.新規の死角フィルタと指向性フィルタについてにおいて説明した式[4,1]、式[4.2]を用いたフィルタ生成を行ってもよい。ステアリングベクトルを格納した記憶部333は、様々な方向から到来する信号の位相差を、先に説明した式[3.3]などによって予め計算し、その結果を格納した記憶部である。式[3.3]において角度θは、一周分例えば図8において-π~πを所定の刻み幅例えば5°で変化させる。なお、マイクロホンの配置が直線状である場合は、指向特性の対称性を考慮して、θは半周分だけ変化させればよい。例えば図2のようなマイクロホン配置の場合、空間フィルタの指向特性は、マイク配列に平行な縦軸23に対して対称となる。そのため、角度θは、-π/2軸23の反対方向からπ/2軸23の方向まで所定の刻み幅で変化させればよい。次に、死角パターン生成部334において、死角フィルタ323にステアリングベクトルを作用させ、死角パターン325を生成する。同様に、指向性パターン生成部335において、指向性フィルタ324にステアリングベクトルを作用させ、指向性パターン326を生成する。死角パターンは、例えば先に説明した式[3.6]に示す死角パターンP_Nθであり、指向性パターンは、先に説明した式[3.9]に示す指向性パターンP_Dθである。最後に方向点検出部336において、死角パターン325と指向性パターン326との両方を用いて音源方向に対応した点を検出する。その結果は方向点情報327として出力される。なお、n個のマイクロホンからは最大でn-1個の死角が形成できるため、1つのブロックから得られる方向点の個数は、最大でn-1個である。なお、方向推定部305の出力する方向点情報327は、図10に示す方向トラッキング部306に提供される。方向推定部305の出力する方向点情報327には、音源と推定される方向を示す方向情報のみならず、各方向点が強い方向点か弱い方向点かを区別するために適用する情報が含まれる。具体的には、方向点か否かの判別で使用した値の一部データを含む情報である。方向推定部305の出力する方向点情報327の具体例について、図12を参照して説明する。図12には、1つの方向点情報327の構成データの一例を表わしている。方向点情報327には、図12に示すように、a方向点の方向θ341、b死角フィルタ側の極小部の値342、c指向性フィルタ側の極大部の値343、これらのデータが含まれる。上記のb,cのデータは、先に説明した方向点の判定条件としての条件6、すなわち、条件6死角パターンの極小値の方が、対応する指向性パターンの極大値よりも小さい。この条件6の判定を行なうためのデータとして利用される。3-3.音信号処理装置の方向トラッキング部の構成と処理について次に、図10に示す音信号処理装置の方向トラッキング部306の構成と処理について図13を参照して説明する。方向トラッキング部306は、図11、図12を参照して説明した方向推定部305が出力した方向点情報327を入力して、区間情報である確定した区間情報361を生成して出力する。なお、図13に示す方向点情報327は、方向推定部305が出力した1つのブロック図1、図6を参照して説明したブロックに含まれる方向点情報であり、図12を参照して説明した情報が含まれる。この方向点情報327は、方向トラッキング部306の制御部351に入力される。制御部351は、方向トラッキング部を制御するモジュールである。制御部351は、区間の新規作成や、終端等が確定していない作成中の区間の延長や、区間の確定などを行なう。生成中の区間は、作成中区間バッファ352に格納される。作成中区間バッファ352に格納されている区間のうち、終端が確定したものが存在したら、それを作成中区間バッファ352から取り出し、確定した区間情報361、すなわち区間情報として出力する。なお、方向トラッキング部306の生成する作成中の区間および確定した区間情報には、区間を定義する各種のパラメータ情報が含まれる。方向トラッキング部306の生成する区間情報の構成データの一例について、図14を参照して説明する。図14は、1つの区間に対応する区間情報の構成データの例を示している。区間情報は、確定した区間の区間情報、または作成中の区間に対応する区間情報作成中区間バッファ352に格納されるである。区間ID371は、それぞれの各区間に固有につけられた識別子番号である。開始ブロック番号372は、区間の開始位置に対応するブロック図1、図6を参照して説明したブロックの番号である。なお、ブロック番号の代わりに、STFTのフレームの番号や、本当の時刻を保持しても良い。終了ブロック番号373は、区間の終了に対応したブロックの番号である。これも開始ブロック番号と同様、フレーム番号や時刻でも良い。なお、生成途中の区間については、終端が確定していないため、ここには未定義を表わす値を格納しておく。方向374は、区間に対応する音源方向である。生成途中の区間については、その時点で計算される方向を格納する。断絶ブロック数375は、方向374で定義される音源方向の近くに方向点が存在しないブロックが何回連続しているかを表わす値である。この値は、区間の生成途中において使用される。トラッキングにおいては、方向点が途切れても、その途切れの長さが所定の値より短かければ、区間を分断せずに1つの区間として切り出した方が良い。それを実現するために、途切れの長さを記憶しておくのである。また、途切れの長さが所定の値を越えた時点で、その区間は確定する。有効ブロック数376は、区間の中で方向点が存在しているブロック以降有効ブロックの個数を保持する。例えば、図9に示す区間276の区間においては、有効ブロック数は10である方向点281~方向点274まで10個の方向点が検出されたブロックが存在する。この値を保持する目的は区間の誤検出の抑止にある。区間のブロック数開始ブロック番号372と終了ブロック番号373とから計算可能と有効ブロック数とから有効ブロックの割合を計算し、その値が小さい場合すなわち、有効ブロックが疎らである場合は、誤検出された方向点を繋いだ偽の区間である可能性が高いため、そのような区間は棄却する。[4.音信号処理装置の実行する処理シーケンスについて]次に、図15以下に示すフローチャートを参照して音信号処理装置の実行する処理シーケンスについて説明する。図15は、音信号処理装置において実行する全体の処理について説明するフローチャートである。図15に示すフローチャートの各ステップについて説明する。まず、ステップS101において、初期設定として、フレームSTFTによって生成されるの番号を示す変数tを0、ブロック図1、図6等を参照して説明したブロックの番号を示す変数Bを0とする変数の初期値設定処理を実行する。ブロックの長さは、通常の発話の長さと比べて十分短い値とする。例えば1/10秒や1/8秒に設定する。これらの設定は、例えば図10に示す装置構成の制御部309において行われる。次に、ステップS102において例えば図10に示すマイクロホンアレイ301から入力する音信号に対して、AD変換およびSTFT処理を実行する。これは、図10に示すAD変換部302、およびSTFT部303において実行される。AD変換部302は、マイクロホンに入力されたアナログの音信号をデジタル信号へ変換する。さらにSTFT部303は、短時間フーリエ変換STFTによって時間周波数領域の信号スペクトルへ変換する。なお、音信号の入力は、図10に示すようなマイクロホンからの他、必要に応じてファイルやネットワークなどから行なってもよい。STFT部303の実行する短時間フーリエ変換STFT処理の詳細については、後述する。本実施例の例えば図10に示すような設定では、入力チャンネルが複数マイクロホンの個数分あるため、AD変換やSTFTもチャンネル数だけ行なう。以降では、チャンネルk、周波数ビンωフレームt、における観測信号を、Xkω,tと表わすこれは先に説明した式[2.1]などに対応する。また、STFTのポイント数をl小文字のエルとすると、1チャンネルあたりの周波数ビンの個数Mは、M=l/21上記式によって計算できる。ステップS103は、蓄積ステップである。STFTによって時間周波数領域に変換された観測信号を、所定の時間分例えば10秒だけ蓄積する処理である。言い換えると、その時間に対応したフレーム数をTとすると、連続するTフレーム分の観測信号を、図10に示す観測信号バッファ304に蓄積する。バッファ内部ではフレーム番号Fとフレームデータスペクトルとの対応付けがなされており、後で所定のフレーム番号のデータを取り出すことが可能である。次に、ステップS104において、フレーム番号tの更新処理として、tを1する更新処理を実行する。ステップS105の処理は、ステップS106以下の処理をLフレームに1回の頻度で実行するための条件分岐である。すなわち、フレーム番号tを頻度Lで割り、その余りが0のときのみ、ステップS106に進み、それ以外の場合は、ステップS102以下の処理を繰り返す。ステップS102~S104の処理をLフレーム分実行するとステップS106に進む。ステップS106は、観測信号の共分散行列から方向点を求める処理である。この処理は、図10に示す方向推定部305の実行する処理である。すなわち、図11を参照して説明したように、STFT部の生成する時間周波数領域の観測信号に基づいて図12に示すデータからなる方向点情報を生成する処理として実行される。詳細は後述する。ステップS107は、ステップS106の方向推定処理において求まった方向点から発話区間を求めるための処理である。この処理は、図10に示す方向トラッキング部306の実行する処理である。すなわち、図13を参照して説明したように、方向推定部の生成する方向点情報に基づいて図14に示すデータからなる音声区間情報を生成する処理として実行される。詳細は後述する。次に、ステップS108においてブロック番号Bを更新する。すなわち、ブロック番号Bを1する更新処理を実行する。最後に、ステップS109において、処理を継続するか否かの分岐を行ない、継続の場合はステップS102に戻る。継続しない場合は処理を終了する。次に、ステップS102において、図10に示すSTFT部303の実行する短時間フーリエ変換STFT処理の詳細について、図16を参照して説明する。図16に示すa観測信号の波形x_kは、例えば、図10に示す装置中に音声入力部として構成されるn本のマイクからなるマイクロホンアレイ301中のk番目のマイクによって観測される観測信号の波形x_kである。この観測信号から、一定長を切り出した切り出しデータであるフレーム401~403にハニング窓やハミング窓等の窓関数を作用させる。なお切り出し単位をフレームと呼ぶ。1フレーム分のデータに短時間フーリエ変換をかけることにより、周波数領域のデータであるスペクトルXktを得るtはフレーム番号。切り出すフレームの間には、図に示すフレーム401~403のように重複があってもよく、そうすることで連続するフレームのスペクトルXkt-1~Xkt1を滑らかに変化させることができる。また、スペクトルをフレーム番号に従って並べたものをスペクトログラムと呼ぶ。図16bに示すデータがスペクトログラムの例である。スペクトルXktは要素数Mのベクトルであり、ω番目の要素をXkω,tとして示される。次に、ステップS106において、図10に示す方向推定部305の実行する方向推定処理の詳細シーケンスについて図17に示すフローチャートを参照して説明する。この処理は、先に図11を参照して説明した処理であり、STFT部の生成する時間周波数領域の観測信号に基づいて図12に示すデータからなる方向点情報を生成する処理として実行される。図17に示すフローチャートの各ステップの処理について、図11の構成図と対比しながら説明する。ステップS201において、観測信号の共分散行列を求める。この処理は、図11における共分散行列計算部331の実行する処理である。STFT部の生成する時間周波数領域の観測信号に基づいて観測信号の共分散行列を求める。共分散行列の計算には、先に説明した式[2.2]を用いる。なお、式[2.2]のLはブロックの長さフレーム数であるが、この値は、共分散行列の計算頻度L図15のフローにおけるステップS105のLと異なる値を用いても良い。例えば、L=8,L=16とすると、共分散行列は8フレームに1回の頻度で計算されるが、共分散行列自体は16フレーム分の観測信号から計算される。次に、ステップS202において、共分散行列から死角フィルタと指向性フィルタとをそれぞれ生成する。この処理は、図11に示す空間フィルタ生成部332の実行する処理であり、共分散行列を入力して、共分散行列から2種類の空間フィルタを生成する。1つは死角フィルタであり、もう1つは指向性フィルタである。例えば先に説明した式[3.4]に示す死角フィルタW_Nω、式[3.7]に示す指向性フィルタW_Dωを生成する。なお、このフィルタ生成に際しては、先に項目2-3.新規の死角フィルタと指向性フィルタについてにおいて説明した式[4,1]、式[4.2]を用いたフィルタ生成を行ってもよい。さらに、ステップS203において、死角フィルタと指向性フィルタに基づいて、それぞれから死角パターンと指向性パターンとを生成する。図11に示す死角パターン生成部334において、死角フィルタにステアリングベクトルを作用させ、死角パターンを生成する。同様に、指向性パターン生成部335において、指向性フィルタにステアリングベクトルを作用させ、指向性パターンを生成する。これらの死角パターンと指向性パターンの具体的な生成手法は、先に、2-1.死角パターンと指向性パターンとの併用構成、および2-3.新規の死角フィルタと指向性フィルタにおいて詳細に説明した通りである。例えば、死角パターンは、例えば先に説明した式[3.6]に示す死角パターンP_Nθであり、指向性パターンは、先に説明した式[3.9]に示す指向性パターンP_Dθである。最後に、ステップS204において、死角パターンと指向性パターンとの両方を用いて、方向点の検出を行なう。この具体的方法については、先に、2-2.区間の状態に応じた方向点検出条件の変更構成において詳細に説明した通りである。なお、ここでいう方向点は、強い方向点と弱い方向点との両方である。すなわち、先の説明項目2-2.区間の状態に応じた方向点検出条件の変更構成で説明した条件1~条件6のうち、少なくとも条件1~条件5を満たしている点である。次に、図15に示す全体処理フローにおけるステップS107の方向トラッキング処理の詳細シーケンスについて、図18に示すフローチャートを参照して説明する。このステップS107の方向トラッキング処理は、図10に示す方向トラッキング部306において実行する処理であり、先に、図13、図14を参照して説明したように、図11、図12を参照して説明した方向推定部305が出力した方向点情報を入力して、音声区間情報である確定した区間情報361を生成して出力する処理である。図18に示すフローチャートに示すように、この方向トラッキング処理は、ステップS301の区間の延長確定処理と、ステップS302の新規区間作成処理、これらの2つの処理から構成される。本発明の特徴の1つは、区間の始点と途中とで方向点の検出に関する条件を変えることにある。具体的には、ステップS301では、強い方向点と弱い方向点との両方を用いて区間の延長確定処理を実行する。一方、ステップS302では、強い方向点のみを用いて新規区間作成処理を実行する。ステップS301の区間の延長確定処理は、図13に示す作成中区間バッファ352に格納されている作成中区間に対する処理であり、先に、図17のフローにおいて説明したステップS204において新たに検出された方向点を用いて作成中区間の延長や確定を行なう。さらに、確定した区間は後段の処理音源抽出などに送信される。詳細は後述する。なお、作成中区間とは、ステップS302の新規区間作成処理において生成されてから区間が確定するまでの状態にある区間のことである。ステップS302の新規区間作成処理は、現在解析中のブロックを始点とする区間を見つけ出すための処理である。この詳細は後述する。次に、図18に示すフローのステップS301の区間の延長確定処理の詳細シーケンスについて、図19に示すフローチャートを用いて説明する。ステップS301の区間の延長確定処理は、図13に示す作成中区間バッファ352に格納されている作成中区間データに対する処理である。そのため、図19に示すフローにおいて、ステップS401~S408において作成中区間についてのループを回し、作成中区間の各々に対してステップS402~S407の処理を行なう。ステップS402において、作成中区間の付近に方向点が存在しているかを調べる。ここでの方向点は、強い方向点と弱い方向点との両方を含む。具体的には、方向トラッキング部306が生成し、作成中区間バッファ352に格納した作成中区間情報中の方向図14に示す区間情報361内の方向374と、新たに方向トラッキング部306が方向推定部305から入力した方向点情報中の方向図12の方向点情報327中の方向341とを比較し、両者の差が所定の規定閾値の範囲例えば±10°以内に収まっていれば、区間の付近に方向点が存在していると判定する。規定範囲内に方向点が存在している場合は、ステップS402の判定はYesとなり、ステップS403に進む。ステップS403~S404の処理は、区間の延長に関する処理である。具体的には、区間情報の更新処理を行う。ステップS403において、区間情報中の有効ブロック数の更新を行う。すなわち、図14に示す区間情報361中の有効ブロック数376を1すると共に、断絶ブロック数375に0を代入する。次にステップS404において、区間の始端から現在化解析中のブロックまでの方向の平均を計算する。具体的には、更新前の方向、すなわち、図14に示す区間情報361中の方向374に保存されている値としての方向データAを更新する。方向データをA、有効ブロック数ステップS403において1した更新後の値をB、新たに方向トラッキング部306が方向推定部305から入力した方向点情報中の方向図12の方向点情報327中の方向341をC、として、以下の式で、方向Aを更新する。A←{B-1AC}/B上記式は、生成中の区間情報に設定済みの方向データAに、新たに入力した方向Cを加えて、ブロック数Bで除算して方向の平均を算出する式に相当する。一方、ステップS402において付近に方向点が存在しないと判定した場合は、ステップS402の判定はNoとなり、ステップS405に進む。この場合、それまで生成中の区間情報において連続していた方向点が断絶したことを表わしており、一定時間以上断絶したら、区間の終端と判別する。この処理のため、ステップS405では、図14に示す区間情報361に含まれる断絶ブロック数375を1する更新処理を実行する。さらに、ステップS406において、更新した断絶ブロック数375が予め規定した所定値例えば3ブロック以上かどうかを判定する。ステップS406において、更新した断絶ブロック数375が所定値以上の場合は、ステップS406の判定がYesとなり、ステップS407に進む。ステップS407では、区間の終端が確定したと見なし、区間の出力棄却処理を行う。ここの詳細は後述する。一方、ステップS406において、更新した断絶ブロック数375が所定値以上でないと判定した場合はステップS406の判定はNoとなり、ステップS407の処理をスキップしてステップS408に進む。ステップS401~S408を全ての作成中区間に対して行なったら、ループを抜け、ステップS409の多重採用のチェックに進む。ステップS409では、1つの方向点が2つ以上の作成中区間に採用されている多重採用かどうかを調べ、もし複数の区間に採用されている場合は、その中で最も長い区間のみを残し、それ以外を削除する。すなわち、図13に示す作成中区間バッファ352の格納データから削除する処理を行う。多重採用のチェックを行なう理由について、図20を用いて説明する。図20aは、図1dと同様の図であり、各ブロックにおいて検出された複数の方向点501~503と方向点に基づいて設定される作成中の音声区間504,505を示している。なお、図1c、図6に示すブロック区切りは省略している。図20aにおいて、方向点501と方向点502とは方向が予め規定した閾値距離としての所定の値よりも離れており、同じ音源からの区間の構成要素として直接接続はしないものとする。一方、方向点501と方向点503の間、および方向点502と方向点503との間は、それぞれ、閾値距離である所定の値よりも近く、接続し得るものとする。すなわち、方向点503は、方向点501を含む作成中の区間504からも、方向点502を含む作成中の区間505からも、付近の方向点として採用される。このように、新たに観測される1つの方向点が異なる複数の音声区間の方向点として設定可能となる場合がある。この現象を方向点の多重採用と呼ぶ。多重採用が発生したときに、それぞれの作成中区間を残しておくと、以降のトラッキングでは、図20bに示すように、同一の方向点506よりも右側の方向点が両方の区間に接続されていく。その結果、1回の発話に対して複数の区間、すなわち、図20bに示す区間507,508が設定されてしまうことになる。これを区間の多重検出と呼ぶ。このように、1回の発話に対して複数の区間が設定されてしまうことは検出誤りである可能性が高い。したがって、このような、区間の多重検出を防ぐ対策が必要となる。この多重検出を防止するため、方向点の多重採用が発生した時点で、その方向点を含む区間の内で最も長いもの最長区間のみを残し、それよりも短い区間非最長区間を削除する処理を行う。例えば、図20aに示す方向点503は、音声区間504と音声区間505の2つの区間によって採用される多重採用型の方向点である。このような、多重採用型の方向点503が発生したことを検出した場合、この時点で、その多重採用型の方向点503を採用対象とした複数の音声区間の長さを比較する。図20aに示す設定では、音声区間504が音声区間505より長い音声区間となっている。この場合は短い方の音声区間505を削除する。その結果、その後の方向点の検出時に、図20bに示すような音声区間508は設定されず、音声区間507のみが設定されることになる。あるいは、非最長区間を単に削除する代わりに、非最長区間に含まれている方向点を最長区間に加えたマージした上で、最長区間に含まれる全ての方向点を用いて区間の新たな方向を計算し直すようにしてもよい。例えば図20aにおいては、音声区間505に含まれる方向点502を音声区間504に加えた上で、音声区間504の方向を3つの方向点501,502,503の平均として計算する。多重採用の方向点が存在した場合に非最長区間を単に削除すると、残った最長区間においてはブロック数に対する方向点の割合が小さくなり、S407において区間が棄却されてしまう可能性があるが、方向点をマージすることで、非最長区間の削除に由来する余計な棄却を防止することができる。次に、図18に示すフローのステップS301の区間の延長確定処理の詳細シーケンスである図19に示す処理フローにおけるステップS407の区間の出力棄却処理の詳細について、図21に示すフローチャートを参照して説明する。ステップS407の区間の出力棄却処理における出力とは、確定した区間を後段の処理例えば音源抽出処理の実行部などに送る出力処理ことであり、棄却とは、区間が予め規定した所定の条件を満たさなかったと判断して削除する処理である。図21のフローにおける各ステップの処理について説明する。ステップS501において、終了ブロック番号を計算し、計算した終了ブロック番号の値を、図4を参照して説明した区間情報、すなわち図13に示す作成中区間バッファ352に格納されている作成中区間に対応する区間情報中の出漁ブロック番号373として記録する。現在解析中のブロックの番号をB、図19のフローのステップS406における断絶ブロック数の判定閾値としての所定値をB_{discontinue}、とすると、終了ブロック番号は以下の式で計算される。終了ブロック番号=B-B_{discontinue}ステップS502~S504は、区間が満たすべき諸条件についての判定である。全ての条件を満たした場合のみ、ステップS505に進み、有効な区間であると判定し、後段の処理部、例えば音源抽出処理の実行部などに出力する処理を行う。ステップS502~S504のいずれかの条件を満たさないと判定した場合は、有効な区間ではないと判定して、ステップS506において棄却する処理を行う、すなわち、これまで、図13に示す作成中区間バッファ352に記録されていた作成中区間の区間情報を削除する処理を行う。以下、ステップS502~S504において実行する判定処理について説明する。なお、ステップS502~S504の各条件の判定順は、入れ替わってもよい。ステップS502は、生成中の区間の区間情報として保持している方向図14に示す区間情報361中の方向374が、予め規定した所定範囲にあるかどうかを判定する処理である。例えば、目的の音源発話者が0°付近のみに位置していると分かっている場合、区間の方向が-10°~10°の範囲を外れていたらその区間を棄却するようにする。一方、目的の音源があらゆる方向に位置し得るような用途では、この判定は行なわない。すなわち、ステップS502の判定処理はスキップする。ステップS503は、区間の長さについての判定である。所定の値よりも短い区間例えば0.1秒よりも短いを棄却することで、区間の誤検出を抑圧することができる。また、所定の値より長い区間例えば10秒よりも長いを棄却することで、冷却用ファンの音といった、小さくて鳴りっぱなしの音源が検出されるのを防ぐ。すなわち、予め規定した範囲にある場合のみ、その区間を有効と判定する。なお、この判定条件に適用する範囲は、音声の取得環境に応じて設定することが望ましい。ステップS504は、区間の中で有効ブロック方向点を持つブロックの割合についての判定である。区間の開始ブロック番号図14に示す区間情報中の開始ブロック番号372をB_{begin}、終了ブロック数図14に示す区間情報中の終了ブロック数375をB_{end}、有効ブロック数図14に示す区間情報中の有効ブロック数376をB_{valid}とすると、有効ブロックの割合は以下の式で計算される。有効ブロックの割合=B_{valid}/B_{end}-B_{begin}1この値が。予め規定した所定値例えば0.5以上かどうかを判定する。有効ブロックの割合が低い場合、その区間は、誤検出された方向点を飛び飛びに接続して生成されたものである可能性が高い。そのような区間を棄却することで、区間の誤検出が抑制される。これらステップS502~S504の判定を全て満たした場合は、ステップS505の出力に進む。このステップS505の出力処理では、作成中の区間に関する区間情報が、図13に示す作成中区間バッファ352から取り除かれると共に、後段処理部に提供する処理が行われる。一方、ステップS502~S504の判定を1つでも満たさない場合は、ステップS506の棄却に進む。このステップS506の棄却処理では、区間が作成中区間バッファ352から取り除かれる、出力は行なわれない。すなわち削除処理のみが実行される。次に、図15に示す全体処理フローのステップS107の方向トラッキング処理の詳細シーケンスである図18に示すフローに示すステップS302の新規区間作成ステップの詳細シーケンスについて、図22に示すフローチャートを参照して説明する。図22に示すフローチャート中、ステップS601~S605は各方向点の各々に対して実行される方向点についてのループである。本発明では、方向点のうち強い方向点のみを区間始端の対象とするため、ステップS602で、処理対象とする方向点が強い方向点がどうかチェックし、弱い方向点である場合は、ステップS603~S604をスキップする。強い方向点に対しては、まず、ステップS603において、処理対象の方向点の付近に作成中区間が存在するかどうかを調べる。この判定は、先に、図19を参しようして説明したステップS402の処理と同様の処理である。付近に作成中区間が存在しない場合、その方向点は区間の始点であると判定して、ステップS604の区間作成に進む。付近に作成中区間が存在する場合は、ステップSZ604の処理をスキップする。なお、最初のブロックの解析中においては作成中区間が存在しないため、最初のブロックの強い方向点は必ず区間の始点となる。ステップS604では、先に図14を参照して説明した区間情報を生成し、各スロット区間ID371~有効ブロック数376に所定の値を代入する。以下では、各スロットに代入する値について説明する。区間ID371には、区間が生成されるたびに1させた値を代入する。すなわち、最初に生成された区間には1を代入し、その後の区間に対しては2,3,という値を代入していく。開始ブロック番号372には、現在解析中のブロックの番号を代入する。終了ブロック番号373に対しては、この時点では終端が検出されていないため、未定義を表わす値を代入しておく。方向374には、処理対象とする方向点が保持している方向点情報の方向図12に示す方向341を代入する。断絶ブロック数375には0を代入する。有効ブロック数376には1を代入する。ブロック内の全ての方向点に対して、ステップS602~S604の処理を実行したら、新規区間作成の処理は終了である。[5.その他の実施例変形例について]上記の実施例では、基本的な1つの構成例について説明した。以下、上述した基本的な実施例に対する変形例について説明する。変形例1強い方向点と弱い方向点とを区別するための方向点判定条件として、上述の実施例では条件6を用いていた。すなわち、死角パターン側の極小値<指向性パターン側の極大値を満足する場合に強い方向点、満足しない場合に弱い方向点と判定する処理を実行していた。強い方向点と弱い方向点とを区別するための条件として、別の条件を用いてもよい。例えば、先に説明した音源方向を示す方向点とみなすための条件5、すなわち、条件5直近のブロック群における死角パターンの最小値から動的に計算した閾値に基づく判定条件を満たす。動的閾値に従った判定条件上記条件において、動的閾値を求める際に、先に説明した式[1.7]に示すパラメータ:αを2通り用意し、それぞれα_{large},α_{small}とする。ただし、0<α_{small}<α_{large}<1である。上記の2つのパラメータ:αを用いることで、先に説明した式[1.7]に従って、動的閾値T_dynamicは2種類計算される。これらを、それぞれ、T_{tight},T_{loose}とする。これらを、以下の式[5.1]、[5.2]として示す。このような2つの動的閾値を適用して、先に説明した条件5を、式[5.3]および式[5.4]の2通りの条件を設定する。P_{min}は負の値であるため、式[5.3]の方が厳しい条件である。そこで、条件1~4および式[5.3]を満たす方向点を強い方向点、条件1~4および式[5.4]を満たす方向点を弱い方向点とする。このような強い方向点と弱い方向点との判定条件を適用してもよい。変形例2次に、変形例2として、先に背景技術の欄で紹介した従来技術としての単一のマイクロホンを用いる方式すなわち、音声らしさに基づく方式の音声区間検出を、上述した本発明の音声区間検出処理と組み合わせた構成について説明する。この組み合わせにより、発話区間を一層正確に検出することが可能となる。この構成例について図23を参照して説明する。図23に示す音信号処理装置は、第1音声区間検出部音源方向推定に基づく音声区間検出部601は、の実施例で説明した方式を用いた音声区間検出を実行するモジュールである。ただし、第1音声区間検出部601は、後段の音源抽出部602において、さらに詳細な区間検出を行なうため、検出された区間の前後にマージンをつけた区間情報を出力する。すなわち第1音声区間検出部601を単独で用いる場合よりも長めの区間を出力する。音源抽出部602は、第1音声区間検出部音源方向推定に基づく音声区間検出部601から入力する音声区間情報に基づいて、さらに詳細な区間検出を行なモジュールである。例えばビームフォーマーなどの既存の技術を用いて、区間と方向とから対応する方向からの音源を抽出する。第2音声区間検出部音声らしさに基づく音声区間検出部603は、音源抽出部602からの出力に対して、音声らしさに基づく詳細な区間検出を行なう。両方式の音声区間検出を組み合わせる利点は、以下の通りである。1.区間の始端終端の高精度化2.音声以外の音源が棄却できる音源方向推定に基づく方式は、音声らしさに基づく方式と比べると、音声同士の被りには強いという利点がある一方で、始端終端の時間粒度が共分散行列の更新頻度に依存するという課題がある。そこで、音源方向推定に基づく方式で得られた区間と方向とを用いて音源抽出を行なうことで音声同士の被りを解消し、その結果に対して音声らしさに基づく音声区間検出を適用することで、音声同士の被りにも強く、時間粒度も細かい音声区間検出が実現できる。変形例3指向性パターンの生成においては、式[3.8]の代わりに以下に示す式[6.1]を用いることも可能である。この式は遅延和アレイDelayedsumに基づいている。以下では、この式について説明する。遅延和アレイとは、各マイクロホンの観測信号に所定の遅延を与えてから和をとる処理のことである。時間周波数領域においてはステアリングベクトルSω,θを用いて式[6.2]で計算できる。この式を用いると、方向θから到来する音に対してはマイクロホン間で位相が揃うため、それらを足し合わせた結果であるYω,t,θは、方向θからの音が強調されたものとなっている。ブロック内でのYω,t,θの分散絶対値の2乗の平均は式[6.3]によって計算でき、式[2.2]によって式[6.4]のように変形される。式[6.1]は式[6.4]の対数であり、1/2を乗じる理由は式[6.3]の左辺についている2乗を打ち消して死角パターンと比較可能にするためである。式[6.2]のYω,t,θは、観測信号に含まれる音源の方向の1つとθの値とが一致した場合に大きな絶対値を持つ。そのため、そこから計算された式[6.1]は指向性パターンと同じ特性を持つ。[6.効果のまとめ]上述したように、本開示の音信号処理装置では、音源方向推定に基づく音声区間検出において以下の工夫を行なっている。1.死角パターンの他に指向性パターンも用いて方向点を検出する。2.方向点のトラッキングにおいて、発話区間の始端の検出と区間の延長とで方向点の検出のための条件を変える。例えばこれらの処理に基づいて音声区間検出の精度が向上する。以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LANLocalAreaNetwork、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。"