(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-08
(45)【発行日】2025-01-17
(54)【発明の名称】波動信号処理装置、波動信号処理方法、およびプログラム
(51)【国際特許分類】
H04B 17/30 20150101AFI20250109BHJP
G01R 23/16 20060101ALI20250109BHJP
【FI】
H04B17/30
G01R23/16 D
(21)【出願番号】P 2023529306
(86)(22)【出願日】2021-06-23
(86)【国際出願番号】 JP2021023746
(87)【国際公開番号】W WO2022269789
(87)【国際公開日】2022-12-29
【審査請求日】2023-12-13
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】100109313
【氏名又は名称】机 昌彦
(74)【代理人】
【識別番号】100149618
【氏名又は名称】北嶋 啓至
(72)【発明者】
【氏名】荒井 友督
【審査官】赤穂 美香
(56)【参考文献】
【文献】特開2019-193049(JP,A)
【文献】特表2018-506078(JP,A)
【文献】特開2011-80868(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04B 17/30
G01R 23/16
(57)【特許請求の範囲】
【請求項1】
少なくとも一つのセンサによって検出された波動に由来する入力信号に基づいて、高分解能の第1スペクトルと低分解能の第2スペクトルを生成するスペクトル生成手段と、
対象時間フレームにおいて、抽出条件を満たす第1ピークを前記第2スペクトルから抽出する抽出手段と、
前記第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、前記抽出条件を満たす第2ピークを前記第1スペクトルにおいて追尾する追尾手段と、
前記第1ピークを始端として複数の前記第2ピークを含む周波数の時系列データであるピーク波形を生成する波形生成手段と、を備える波動信号処理装置。
【請求項2】
前記スペクトル生成手段は、
時間領域の前記入力信号を時間フレームごとに、周波数領域の信号である周波数スペクトルに変換し、
前記周波数スペクトルを時系列に配列して、前記第1スペクトルを生成し、
前記第1スペクトルを用いて、単位時間ごとに単位周波数で前記第1スペクトルを切り取ったビンごとに周波数の振幅の代表値を計算し、算出された前記代表値に基づいて前記第2スペクトルを生成し、
前記追尾手段は、
前記対象時間フレームに後続する複数の前記時間フレームに関して、前記抽出条件を満たす前記第2ピークを前記第1スペクトルにおいて順次抽出することによって、前記第1ピークに後続する複数の前記第2ピークを追尾する請求項1に記載の波動信号処理装置。
【請求項3】
前記スペクトル生成手段は、
時間領域の前記入力信号を時間フレームごとに、周波数領域の信号である周波数スペクトルに変換し、
前記周波数スペクトルの周波数成分を間引き、
周波数成分が間引かれた前記周波数スペクトルを時系列に配列して、前記第2スペクトルを生成し、
前記第1ピークおよび前記第2ピークが抽出された周辺の分解能をあげて、前記第1スペクトルを局所的に生成し、
前記追尾手段は、
前記対象時間フレームに後続する複数の前記時間フレームに関して、局所的に生成された前記第1スペクトルにおいて前記抽出条件を満たす前記第2ピークを順次抽出することによって、前記第1ピークに後続する複数の前記第2ピークを追尾する請求項1に記載の波動信号処理装置。
【請求項4】
前記抽出手段は、
前記対象時間フレームのビンから抽出された前記第1ピークに関して、前記ビンの内部における振幅が最大となるピーク周波数と、周波数変化量を計算し、
前記追尾手段は、
前記ピーク周波数と前記周波数変化量に基づいて、前記第1ピークに後続するピークの周波数予測値を推定し、推定された前記周波数予測値に応じた追尾範囲の内部において、前記対象時間フレームに後続する前記時間フレームから前記抽出条件を満たす前記第2ピークを検出し、
前記第2ピークが検出された前記時間フレームに後続する時間フレームに関して、前記第2ピークに後続する第2ピークを順次検出することによって、前記第1ピークに後続する前記第2ピークを追尾する請求項2または3に記載の波動信号処理装置。
【請求項5】
前記追尾手段は、
前記第2ピークが最後に検出されてから所定時間が経過すると、最後に検出されていた前記第2ピークが終端の第3ピークであると判定し、
前記波形生成手段は、
前記第1ピークを始端とし、複数の前記第2ピークを経由し、前記第3ピークを終端とする前記ピーク波形を生成する請求項1乃至4のいずれか一項に記載の波動信号処理装置。
【請求項6】
前記スペクトル生成手段は、
前記対象時間フレームのビンに含まれるフレームの振幅に関する代表値および分散のうち少なくともいずれかを計算し、
前記抽出条件は、
前記代表値が第1閾値以上であるという第1抽出条件と、
前記代表値を雑音レベルで割った値が第2閾値以上であるという第2抽出条件と、
前記代表値の鋭さが第3閾値以上であるという第3抽出条件と、
前記分散が第4閾値以下であるという第4抽出条件と、
前記代表値が極大値を持つという第5抽出条件とのうち少なくともいずれかの条件を含む請求項1乃至5のいずれか一項に記載の波動信号処理装置。
【請求項7】
前記波形生成手段は、
重複する前記ピーク波形に関しては、一つの前記ピーク波形を残してその他の前記ピーク波形を削除し、
時間長が所定の長さに満たない前記ピーク波形に関しては、前記ピーク波形を削除する請求項1乃至6のいずれか一項に記載の波動信号処理装置。
【請求項8】
少なくとも一つの前記ピーク波形に基づいて、前記波動の波源を有する移動体の軌道を推定する軌道推定手段を備える請求項1乃至7のいずれか一項に記載の波動信号処理装置。
【請求項9】
コンピュータが、
少なくとも一つのセンサによって検出された波動に由来する入力信号に基づいて、高分解能の第1スペクトルと低分解能の第2スペクトルを生成し、
対象時間フレームにおいて、抽出条件を満たす第1ピークを前記第2スペクトルから抽出し、
前記第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、前記抽出条件を満たす第2ピークを前記第1スペクトルにおいて追尾し、
前記第1ピークを始端として複数の前記第2ピークを含む周波数の時系列データであるピーク波形を生成する波動信号処理方法。
【請求項10】
少なくとも一つのセンサによって検出された波動に由来する入力信号に基づいて、高分解能の第1スペクトルと低分解能の第2スペクトルを生成する処理と、
対象時間フレームにおいて、抽出条件を満たす第1ピークを前記第2スペクトルから抽出する処理と、
前記第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、前記抽出条件を満たす第2ピークを前記第1スペクトルにおいて追尾する処理と、
前記第1ピークを始端として複数の前記第2ピークを含む周波数の時系列データであるピーク波形を生成する処理とをコンピュータに実行させるプログラ
ム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、波動に由来する信号を処理する波動信号処理装置等に関する。
【背景技術】
【0002】
複数のセンサによって検出された波動を検証することによって、波源の方向を推定できる。例えば、波動に由来する信号のドップラー効果による周波数変化(ピーク波形とも呼ぶ)を用いれば、波源の方向や位置、速度(軌道とも呼ぶ)を推定できる。波源の軌道の推定における信号解析においては、分解能を高めるために多くの周波数フレームを解析する。周波数フレームが多いほど、ピーク波形を生成するための計算負荷が大きくなる。そのため、波動に由来する信号を解析するためには、計算負荷を軽減することが求められる。
【0003】
特許文献1には、無線信号をスペクトル解析するスペクトル解析装置について開示されている。特許文献1の装置は、CSS(Chirp Spread Spectrum)信号の特徴を可視化可能な分解能で無線信号を高速フーリエ変換して、スペクトルを求める。特許文献1の装置は、一定周波数領域内の有効値を採用してスペクトルの周波数分解能を粗くして、無線信号の持続時間を算出する。特許文献1の装置は、持続時間内の有効値を採用してスペクトルの時間分解能を粗くして、無線信号の帯域幅を算出する。特許文献1の装置は、算出された持続時間および帯域幅に基づき、各規格の無線信号の特徴を判別する。
【0004】
特許文献2には、電子デバイスによる発話を復元する方法が開示されている。特許文献2の方法においては、発話信号の中の雑音を抑制して、少なくとも3つのサブバンドを含む帯域幅を有する雑音抑制発話信号を作成する。特許文献2の方法においては、少なくとも3つのサブバンドの各々を繰り返し復元する。特許文献2の方法においては、発話スペクトル信号の極大値をピークとして決定し、それらのピークを追跡する。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2019-193049号公報
【文献】特表2018-506078号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
特許文献1の手法では、スペクトルの周波数分解能および時間分解能を粗くして求められた持続時間および帯域幅に基づいて、各規格の無線信号の特徴を判別する。特許文献1の手法によれば、複数の規格の無線信号が混在する環境において、CSS信号を検出できる。しかしながら、特許文献1の手法は、検出された信号の追尾には適用できなかった。
【0007】
特許文献2の手法において、少なくとも3つのサブバンドの各々は、以前に復元されたサブバンドに基づいて復元される。特許文献2の手法では、データ量の多い発話スペクトル信号から検出されるピークを追跡できるが、データ量が低減されたスペクトルに基づいてピークを追尾することはできない。そのため、特許文献2の手法では、ピークを追尾するための計算にかかる負荷を十分に削減できなかった。
【0008】
本開示の目的は、波動に由来する信号の処理にかかる負荷を軽減できる波動信号処理装置等を提供することにある。
【課題を解決するための手段】
【0009】
本開示の一態様の波動信号処理装置は、少なくとも一つのセンサによって検出された波動に由来する入力信号に基づいて、高分解能の第1スペクトルと低分解能の第2スペクトルを生成するスペクトル生成部と、対象時間フレームにおいて、抽出条件を満たす第1ピークを第2スペクトルから抽出する抽出部と、第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、抽出条件を満たす第2ピークを第1スペクトルにおいて追尾する追尾部と、第1ピークを始端として複数の第2ピークを含む周波数の時系列データであるピーク波形を生成する波形生成部と、を備える。
【0010】
本開示の一態様の波動信号処理方法においては、コンピュータが、少なくとも一つのセンサによって検出された波動に由来する入力信号に基づいて、高分解能の第1スペクトルと低分解能の第2スペクトルを生成し、対象時間フレームにおいて、抽出条件を満たす第1ピークを第2スペクトルから抽出し、第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、抽出条件を満たす第2ピークを第1スペクトルにおいて追尾し、第1ピークを始端として複数の第2ピークを含む周波数の時系列データであるピーク波形を生成する。
【0011】
本開示の一態様のプログラムは、少なくとも一つのセンサによって検出された波動に由来する入力信号に基づいて、高分解能の第1スペクトルと低分解能の第2スペクトルを生成する処理と、対象時間フレームにおいて、抽出条件を満たす第1ピークを第2スペクトルから抽出する処理と、第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、抽出条件を満たす第2ピークを第1スペクトルにおいて追尾する処理と、第1ピークを始端として複数の第2ピークを含む周波数の時系列データであるピーク波形を生成する処理とをコンピュータに実行させる。
【発明の効果】
【0012】
本開示によれば、波動に由来する信号の処理にかかる負荷を軽減できる波動信号処理装置等を提供することが可能になる。
【図面の簡単な説明】
【0013】
【
図1】第1の実施形態に係る波動信号処理装置の構成の一例を示すブロック図である。
【
図2】第1の実施形態に係る波動信号処理装置に入力される信号の元となる波動を検出する複数のセンサの配置例について説明するための概念図である。
【
図3】第1の実施形態に係る波動信号処理装置によって処理されるフレームについて説明するための概念図である。
【
図4】第1の実施形態に係る波動信号処理装置の第1生成部によって生成される第1スペクトルについて説明するための概念図である。
【
図5】第1の実施形態に係る波動信号処理装置の第2生成部によって生成される第2スペクトルについて説明するための概念図である。
【
図6】第1の実施形態に係る波動信号処理装置の追尾部によるピーク追尾の一例について説明するための概念図である。
【
図7】第1の実施形態に係る波動信号処理装置の波形生成部によって生成されるピーク波形の一例を示す概念図である。
【
図8】第1の実施形態に係る波動信号処理装置の動作の概要の一例について説明するためのフローチャートである。
【
図9】第1の実施形態に係る波動信号処理装置による波形生成処理の一例について説明するためのフローチャートである。
【
図10】第1の実施形態に係る波動信号処理装置によるピーク追尾処理の一例について説明するためのフローチャートである。
【
図11】第2の実施形態に係る波動信号処理装置の構成の一例を示すブロック図である。
【
図12】第2の実施形態に係る波動信号処理装置に入力される信号の元となる波動を検出する複数のセンサの配置例について説明するための概念図である。
【
図13】第2の実施形態に係る波動信号処理装置によって推定された軌道を表示機器の画面に表示させる一例を示す概念図である。
【
図14】第2の実施形態に係る波動信号処理装置の動作の概要の一例について説明するためのフローチャートである。
【
図15】第2の実施形態に係る波動信号処理装置による軌道推定処理の一例について説明するためのフローチャートである。
【
図16】第3の実施形態に係る波動信号処理装置の構成の一例を示すブロック図である。
【
図17】各実施形態の処理を実行するハードウェア構成の一例を示すブロック図である。
【発明を実施するための形態】
【0014】
以下に、本発明を実施するための形態について図面を用いて説明する。ただし、以下に述べる実施形態には、本発明を実施するために技術的に好ましい限定がされているが、発明の範囲を以下に限定するものではない。なお、以下の実施形態の説明に用いる全図においては、特に理由がない限り、同様箇所には同一符号を付す。また、以下の実施形態において、同様の構成・動作に関しては繰り返しの説明を省略する場合がある。
【0015】
(第1の実施形態)
まず、第1の実施形態に係る波動信号処理装置について図面を参照しながら説明する。本実施形態では、移動体が有する波源から発せられた波動を、複数のセンサによって検出する。本実施形態の波動信号処理装置は、複数のセンサによって検出された波動に基づいて、検出された波動に関するスペクトログラムを生成する。本実施形態の波動信号処理装置は、生成されたスペクトログラムに関して、移動体の移動に伴うドップラー効果を検証可能にする周波数の時系列データ(ピーク波形とも呼ぶ)を生成する。本実施形態において、センサによって検出される波動の周波数帯は、ドップラー効果を検証可能な帯域幅であるものとする。
【0016】
(構成)
図1は、本実施形態の波動信号処理装置10の構成の一例を示すブロック図である。波動信号処理装置10は、信号入力部11、第1生成部12、第2生成部13、抽出部14、追尾部15、および波形生成部16を備える。第1生成部12および第2生成部13は、スペクトル生成部120を構成する。以下においては、第1生成部12と第2生成部13を異なる構成として説明するが、第1生成部12と第2生成部13はスペクトル生成部120として統一的に構成されてもよい。
【0017】
波動信号処理装置10は、間隔を空けて配置された複数のセンサ100に接続される。センサ100は、移動体110の有する波源から発せられた波動と、その波源の周囲で発生した様々な波動とが混在した波動を検知する。センサ100は、検知した波動をデジタル信号(サンプル値系列とも呼ぶ)に変換する。例えば、波源が音源である場合、センサ100はマイクロホンによって実現できる。例えば、波源が振動源である場合、センサ100は振動センサによって実現できる。センサ100は、波動を検出できさえすれば、マイクロホンや振動センサに限定されない。波動信号処理装置10と複数のセンサ100によって構成されるシステムを、信号処理システムとも呼ぶ。
【0018】
信号入力部11は、複数のセンサ100によって検出された波動に由来する信号(入力信号とも呼ぶ)を取得する。信号入力部11は、時間領域の入力信号を取得する。例えば、信号入力部11は、入力信号に対して、フィルタリングや雑音除去などの信号処理を行う。信号入力部11は、複数のセンサ100に有線で接続されてもよいし、無線で接続されてもよい。例えば、信号入力部11は、図示しないネットワーク経由で複数のセンサ100に接続されてもよい。
【0019】
図2は、複数のセンサ100の配置例を示す概念図である。複数のセンサ100が配置された空間には、波源を有する移動体110が位置する。複数のセンサ100は、どのように配置されてもよい。例えば、複数のセンサ100は、移動体110の種別に応じた間隔を空けて配置される。例えば、複数のセンサ100は、等間隔に配置されてもよいし、任意の間隔で配置されてもよい。また、複数のセンサ100は、互いに位置関係が変化してもよい。
【0020】
第1生成部12は、入力信号から高分解能のスペクトル(第一スペクトルと呼ぶ)を算出する。第1生成部12は、一定の規則に則った単位(時間フレームとも呼ぶ)で時間領域の入力信号から、周波数領域の信号(周波数スペクトルとも呼ぶ)を生成する。例えば、時間フレームの長さは、1024サンプルや4096サンプルなど、2のn乗サンプル(nは自然数)に設定される。
【0021】
図3は、第1生成部12によって生成される時間フレームを時間軸に沿って並べた概念図である。
図3には、特定の時刻(時刻t
1、時刻t
2、時刻t
3、・・・)に対応付けられた複数のフレームを示す。
図3の例では、複数の時間フレームが、時間的に重複するように設定される。複数の時間フレームは、時間的に重複せずに、シーケンシャルに設定されてもよい。また、複数の時間フレームは、時間的に間隔を空けて設定されてもよい。時間フレームの設定方法について、特に限定を加えない。
【0022】
周波数スペクトルは、各時間フレームにおける周波数成分である。例えば、第1生成部12は、フーリエ変換によって、周波数スペクトルを生成する。例えば、第1生成部12は、CQT(Constant-Q Transform)やウェーブレット変換などによって、周波数スペクトルを生成してもよい。
【0023】
図4は、第1生成部12によって生成される第1スペクトルについて説明するための概念図である。
図4の第1スペクトルは、
図3に示した各時間フレームから算出した周波数スペクトルを時間軸(縦軸)に沿って時系列の順番に配列したものである。
図4の横軸は周波数を表し、各周波数スペクトルを構成するフレーム(
図3の時間フレームと区別するため、これを「周波数フレーム」と呼ぶ)の数が9個の例を示すが、実用的な周波数フレームの数を反映させたものではない。周波数分解能を大きくするためには、
図3の各周波数フレーム内のサンプル数を増やせばよい。
【0024】
第2生成部13は、第1生成部12によって生成された第1スペクトルの分解能を粗くし、低分解能のスペクトル(第2スペクトルとも呼ぶ)を生成する。第2生成部13は、第1スペクトルに基づいて、単位時間および単位周波数ごとに複数のフレームを統合した塊(ビンとも呼ぶ)を設定する。互いに隣接し合うビンは、境界部分のフレームを共有してもよい。言い換えると、互いに隣接し合うビンは、重なっていてもよい。第2生成部13は、ビンに含まれるフレームの振幅の強度やエネルギーの代表値を計算し、算出された代表値に基づいて第2スペクトルを生成する。例えば、第2生成部は、ビンに含まれるフレームの振幅の強度やエネルギーの最大値を代表値として算出する。例えば、第2生成部は、ビンに含まれるフレームの振幅の強度やエネルギーの中央値を代表値として算出する。例えば、第2生成部は、ビンに含まれるフレームの振幅の強度やエネルギーの相加平均値や相乗平均値、調和平均値などの平均値を代表値として算出する。また、第2生成部13は、ビンごとの振幅の強度やエネルギーの分散を計算し、算出された分散に基づいて第2スペクトルを生成してもよい。例えば、第2生成部は、ビンに含まれるフレームの振幅の強度やエネルギーの分散を算出する。
【0025】
図5は、第2生成部13によって生成される第2スペクトルについて説明するための概念図である。
図5の第2スペクトルは、
図4の第1スペクトルに基づいて生成されたものである。
図5の例では、複数の時刻(時刻t
1、時刻t
2、時刻t
3、・・・)を含む単位時間(時間窓とも呼ぶ)ごとに、単位周波数(周波数窓とも呼ぶ)で周波数スペクトルを切り取ったビンを構成する。
図5の例では、時間窓は4フレーム(4マス)ごとに設定され、周波数窓は3フレーム(3マス)ごとに設定される。以下において、時間窓mと周波数窓nで切り取られたビンは、ビンm-nと表記される(m、nは自然数)。例えば、時間窓1と周波数窓2で切り取られたビンは、ビン1-2と表記される。
【0026】
抽出部14は、振幅に関する所定の条件(抽出条件とも呼ぶ)を満たすピーク(第1ピークとも呼ぶ)を、第2スペクトルの各ビンから抽出する。抽出部14は、抽出条件を満たす複数のピークを、第2スペクトルの各ビンから抽出してもよい。抽出部14は、時間窓の時系列順で、時間窓を共通とする複数のビンからピークを抽出する。以下において、時間窓を共通とする複数のビンを時間ビンとも呼ぶ。抽出されるピークを始端とする周波数の時系列データをピーク波形と呼ぶ。抽出部14が抽出するピーク(第1ピーク)は、ピーク波形の始端(ピーク始端とも呼ぶ)である。すなわち、抽出部14は、第2スペクトルの時間ビンから、ピーク波形のピーク始端を抽出する。ピーク波形を構成するピークのうち、ピーク始端に後続するピーク(第2ピークとも呼ぶ)は、追尾部15によって追尾される。
【0027】
抽出条件は、以下の条件(第1~第5抽出条件)を含む。以下の第1~第5抽出条件においては、第2スペクトルの複数のビンの振幅の値(強度、エネルギー)について設定される。抽出条件は、第1スペクトルにおいてピーク(第2ピーク)の追尾にも用いられる。
【0028】
第1抽出条件は、第2生成部13で生成された代表値が閾値以上であるという条件である。第1抽出条件における代表値は、例えば、振幅の強度やエネルギーの平均値や中央値、最大値である。第1抽出条件における代表値には、分散は含まれない。第1抽出条件において設定される閾値を第1閾値とも呼ぶ。
【0029】
第2抽出条件は、第2生成部13で生成された代表値を雑音レベルで割った値が閾値以上であるという条件である。第2抽出条件における代表値は、例えば、振幅の強度やエネルギーの平均値や中央値、最大値である。第2抽出条件における代表値には、分散は含まれない。第2抽出条件において設定される閾値を第2閾値とも呼ぶ。例えば、雑音レベルは、波動が検出されない時刻に取得された入力信号に基づいて算出しておけばよい。
【0030】
第3抽出条件は、第2生成部13で生成された代表値の鋭さが閾値以上であるという条件である。第3抽出条件における代表値は、例えば、振幅の強度やエネルギーの平均値や中央値、最大値である。第3抽出条件における代表値には、分散は含まれない。第3抽出条件において設定される閾値を第3閾値とも呼ぶ。第3抽出条件は、対象の周波数ビンにおける代表値が、前後の周波数ビンにおける代表値に比べて十分大きいことを示す。
【0031】
第4抽出条件は、第2生成部13で生成された分散が閾値以下であるという条件である。第4抽出条件における分散は、例えば、振幅の強度やエネルギーの分散である。第4抽出条件は、代表値ではなく、分散に関する条件である。第4抽出条件において設定される閾値を第4閾値とも呼ぶ。
【0032】
第5抽出条件は、第2生成部13で生成された代表値が極大値をもつという条件である。第5抽出条件における代表値は、例えば、振幅の強度やエネルギーの平均値や中央値、最大値である。第5抽出条件における代表値には、分散は含まれない。
【0033】
抽出条件は、第1~第5抽出条件のうち少なくともいずれかが満たされればよい。例えば、抽出条件は、一つだけ満たされてもよいし、全て満たされてもよい。また、第1~第5抽出条件の閾値は、それぞれの抽出条件において検証されるパラメータについて個別に設定される。抽出条件は、第1スペクトルや第2スペクトルから、ピークの候補を検出できれば、第1~第5抽出条件に限定されない。
【0034】
追尾部15は、ピーク始端が抽出された各ビンの振幅が最大となる周波数(ピーク周波数とも呼ぶ)を計算する。追尾部15は、ピーク始端が抽出された各ビンの内部における周波数の変化量(周波数変化量とも呼ぶ)を計算する。例えば、各ビンの内部における周波数を線形回帰することで得られる直線の傾きを周波数変化量として算出する。
【0035】
追尾部15は、各ビンから抽出されたピーク始端と、各ビンに関するピーク周波数および周波数変化量に基づいて、各ビンから抽出されたピーク始端に後続するピーク(第2ピーク)を、第1スペクトルから検出する。追尾部15は、始端ピークが抽出されたビン内のフレームのうち、第1~第5の抽出条件のうちいずれかを満たす最初のフレームを検出して、それを始端フレーム(フレーム1)とする。追尾部15は、フレーム1とその次の時間フレームの中で抽出条件を満たす周波数フレーム(フレーム2)との間で周波数変化量(傾き)を求める。追尾部15は、フレーム1とフレーム2の間の周波数変化量に基づいて、第2ピークの周波数予測値を計算する。追尾部15は、算出された周波数予測値に基づいて、フレーム2とその次の時間フレームの中で抽出条件を満たす周波数フレーム(フレーム3)を特定する。追尾部15は、フレーム2とフレーム3の間の周波数変化量に基づいて、フレーム3とその次の時間フレームの中で抽出条件を満たす周波数フレーム(フレーム4)を特定する。追尾部15は、このような処理を繰り返して、ピークを追尾する。上記においては、2つのフレームから次のフレームを特定する例をあげたが、3つ以上のフレームに基づいて次のフレームを特定してもよい。例えば、5つのフレーム(フレーム1~5)に関する周波数変化量を求めて、その周波数変化量に基づいて、フレーム5に後続する周波数フレーム(フレーム6)を求めてもよい。ただし、1つのフレームのみから周波数変化量を算出することはできないので、周波数変化量を算出するためには、最低でも2つのフレームが必要である。
【0036】
図6は、追尾部15によるピークの追尾について説明するための概念図である。
図6には、第1スペクトルにおいて追尾されたピークを結ぶ曲線(ピーク波形)を示す。追尾部15は、ピーク始端が抽出された時間フレーム1に後続する時間フレーム2における、ピークの周波数の予測値(周波数予測値と呼ぶ)を算出する。例えば、追尾部15は、以下の式1-1を用いて、時間フレーム2における周波数予測値F
p(2)を計算する。下記の式1-1において、s(1)は、時間フレーム1における周波数の変化量(傾き)である。F
p(1)は、時間フレーム1におけるピーク始端の周波数である。Δt(2)は、時間フレーム1の中央の時間と時間フレーム2の中央の時間との間の時間差である。
F
p(2)=F
p(1)-s(1)×Δt(2)・・・(1-1)
【0037】
追尾部15は、周波数予測値に応じた範囲(追尾範囲とも呼ぶ)の内部で、抽出条件を満たすピークを第1スペクトルから抽出する。例えば、追尾範囲は、波源の移動に伴ってドップラーシフトが起こりうる周波数帯と、周波数予測値とに基づいて設定される。例えば、追尾部15は、以下の式1-2で示す追尾範囲の内部の周波数Fに関してピークを検出する。
Fp(2)-β<F<Fp(2)+β・・・(1-2)
【0038】
例えば、上記の式1-2において、βは、波源の移動に伴うドップラーシフトが起こりうる範囲に設定される。βは、周波数予測値Fp(2)ごとに異なる値に設定されてもよい。例えば、βは、音源の速度に応じて、ドップラーシフトの公式に基づいて決められる。βは、波源ごとに設定されてもよいし、波源によらず一定値が設定されてもよい。
図6の例において、追尾部15は、時間フレーム1に含まれる周波数フレームi+2における傾きに基づいて周波数予測値を予測する。追尾部15は、予測された周波数予測値に応じた追尾範囲の内部で、抽出条件を満たす極大値を時間フレーム2のピークとして抽出する。追尾部15は、抽出された時間フレーム2のピークと、そのピークの抽出に用いられたピーク始端とを、同一の波源に基づくピーク波形を構成する要素として追尾する。
【0039】
追尾範囲が設定されると、抽出部14は、対象の時間フレーム1に後続する時間フレーム2以降の時間フレームにおいて、追尾範囲の外部で抽出条件を満たす新たなピーク始端を、第2スペクトルから抽出する。抽出部14による新たなピーク始端の抽出は、追尾範囲が設定されていれば、任意のタイミングで開始できる。追尾部15は、時間フレーム1において抽出されたピーク始端と同様に、時間フレーム2において新たに抽出されたピーク始端についてピークの追尾を行う。
【0040】
追尾部15は、時間フレーム3以降についても、時間的に連続する時間フレームにおいてピークを追尾する。例えば、追尾部15は、以下の式1-3を用いて、時間フレーム3以降の時間フレームwにおける周波数予測値Fp(w)を計算する(wは3以上の自然数)。下記の式1-3において、s(w-1)は、時間フレームw-1における周波数変化量(傾き)である。Fp(w-1)は、時間フレームw-1におけるピーク始端の周波数である。Δt(w)は、時間フレームw-1の中央の時間と時間フレームwの中央の時間との間の時間差である。
Fp(w)=Fp(w-1)-s(w-1)×Δt(w)・・・(1-3)
【0041】
追尾部15は、時間フレーム3以降についても、追尾範囲の内部で、抽出条件を満たすピークを第1スペクトルから抽出する。例えば、追尾部15は、以下の式1-4で示す追尾範囲の内部の周波数Fに関してピークを検出する。下記の式1-4のβは、上述した式1-2のβと同じであってもよいし、異なっていてもよい。
Fp(w)-β<F<Fp(w)+β・・・(1-4)
【0042】
ピークが抽出された時間フレームに後続する時間フレームにおいてピークが抽出されなかった場合、追尾部15は、それまでに最後に抽出されたピークの追尾範囲の内部で、抽出条件を満たす追尾中の波動のピークを第1スペクトルから抽出する。例えば、所定時間が経過するまでの間にピークが抽出されなかった場合、時間の経過に応じて追尾範囲を広げてもよい。
【0043】
追尾部15は、予め設定された所定時間が経過するまで、ピークの追尾を継続する。所定時間は、波動を検出できる時間範囲に応じて設定される。例えば、所定時間は、波源の種別に応じて設定される。波源が自動車である場合、信号待ちなどの想定される停止時間を超えて波動が検出されなければ、自動車が駐車したものとみなせる。この場合、想定される停止時間を所定時間に設定すればよい。例えば、所定時間の経過以降に、追尾が終了した波動が再び抽出された場合、自動車が走行を再開したと判定できる。
【0044】
ピークが抽出されずに所定時間が経過すると、追尾部15は、それまでに最後に抽出されていたピークを終端(ピーク終端とも呼ぶ)であると判定する。
【0045】
波形生成部16は、追尾部15によって追尾されたピークに関して、ピーク始端からピーク終端に至るピークの周波数の時系列データ(ピーク波形とも呼ぶ)を生成する。
【0046】
図7は、波形生成部16によって生成されるピーク波形の一例を示すグラフである。
図7のピーク波形は、
図7の第1スペクトルにおいて追尾されたピークに基づくピーク波形を示す。ピーク波形は、波源ごとに生成される。
【0047】
波形生成部16は、生成された複数のピーク波形に関して、重複する波形を削除する。例えば、波形生成部16は、生成された複数のピーク波形に関して、部分的に重複する波形を合一化してもよい。例えば、波形生成部16は、ピーク波形の長さ(時間長)が所定の長さに満たない場合、そのピーク波形を削除してもよい。例えば、波形生成部16は、生成されたピーク波形を記憶部(図示しない)に保存する。例えば、波形生成部16は、生成されたピーク波形を外部システム(図示しない)に出力する。例えば、波形生成部16によって生成されたピーク波形は、波源の軌道推定や、音源の識別などの用途に用いられる。波源の軌道推定については、第2の実施形態において説明する。音源の識別に関しては、音源の種類を推定するために用いられる基底(周波数)の生成に、ピーク波形に関する情報を用いることができる。例えば、学習データとして移動する音源Aの発する音を収録したデータを入力し、ピーク波形を1つまたは複数生成する。ピーク波形の変曲点における周波数が音源Aの周波数に対応するため、これを音源Aの基底として学習することができる。未知の音源Xを識別する際は、音源Xの周波数スペクトル(V)と音源Aの基底(W)に基づいて、非負値行列因子分解(NMF:Non-Negative Matrix Factorization)(下記の式1-5)を用いて、重み(H)を算出することができる。
V≒WH・・・(1-5)
上記の重みHが予め設定された閾値を上回ったら、音源Xを音源Aとして識別することができる。音源Xの周波数もドップラー効果により変動している可能性が高いため、周波数の変動幅dfを計算に入れて、基底Wの代わりにW±dfとしてもよい。あるいは、より単純な識別方法として、未知の音源Xのピーク波形に基づいて推定された周波数が、学習された音源Aの周波数と同一または近い場合に、音源Aとして識別することもできる。上記では、識別する音源が1つの場合を例に挙げて説明したが、音源は複数あってもよい。
【0048】
波形生成部16によって生成されたピーク波形のうち、移動体が有する波源からの信号に基づく波形を、ここではドップラーシフトと呼ぶ。移動体が単一の波源を有し、雑音に起因するピーク波形が観測されないと仮定すると、生成される全てのピーク波形がドップラーシフトに相当する。移動体が複数の波源を有し、雑音に起因するピーク波形が観測されると仮定すると、生成される全てのピーク波形には、複数の波源に関するドップラーシフトと雑音成分が含まれる。
【0049】
上記の手法では、高分解能の第1スペクトルを生成し、第1スペクトルを用いて低分解能の第2スペクトルを生成する例について説明した。例えば、高分解能の第1スペクトルを生成せずに、低分解能の第2スペクトルを生成し、第2スペクトルから抽出されたピークの周辺の追尾範囲を部分的に高分解能にしてピークを追尾するように構成してもよい。追尾範囲を部分的に高分解能にするように構成すれば、全ての時間および周波数に関して高分解能の第1スペクトルを生成しなくてもよい。そのため、初めに第1スペクトルを生成する場合と比較して計算量を低減できる。
【0050】
(動作)
次に、本実施形態の波動信号処理装置10の動作について図面を参照しながら説明する。
図8は、波動信号処理装置10の動作の概略について説明するためのフローチャートである。
図8のフローチャートに沿った処理は、波動信号処理装置10を動作の主体として説明する。
【0051】
図8において、まず、波動信号処理装置10は、複数のセンサ100によって検出された波動に由来する信号を取得する(ステップS11)。
【0052】
次に、波動信号処理装置10は、取得された信号に関して、高分解能の第1スペクトルを生成する(ステップS12)。
【0053】
次に、波動信号処理装置10は、生成された第1スペクトルに基づいて、低分解能の第2スペクトルを生成する(ステップS13)。
【0054】
次に、波動信号処理装置10は、波形生成処理を実行する(ステップS14)。ステップS14の波形生成処理の詳細については後述する。
【0055】
ステップS14の後に処理を継続する場合(ステップS15でYes)、ステップS11に戻る。ステップS14の後に処理を継続しない場合(ステップS15でNo)、
図8のフローチャートに沿った処理は終了である。例えば、予定された回数の処理が行われたり、予定の処理時間が経過したりすると、処理が停止される。例えば、ユーザの操作に応じて、処理を停止するように構成されてもよい。
【0056】
〔波形生成処理〕
次に、波動信号処理装置10による波形生成処理(
図8のステップS14)の詳細について図面を参照しながら説明する。
図9は、波形生成処理について説明するためのフローチャートである。
図9のフローチャートに沿った処理の説明においては、波動信号処理装置10の構成要素を動作の主体として説明する。
【0057】
図9において、第2スペクトルにおいて抽出条件を満たすピークを検出すると(ステップS111でYes)、抽出部14は、最初の時間フレームについて、抽出条件を満たすピークを第2スペクトルから抽出する(ステップS112)。ステップS112で抽出されるピークは、ピーク波形のピーク始端(第1ピーク)に相当する。第2スペクトルにおいて抽出条件を満たすピークが検出されなかった場合(ステップS111でNo)、
図9のフローチャートに沿った処理は終了である(
図8のステップS15に進む)。
【0058】
ステップS112の次に、追尾部15は、ピーク追尾処理を実行する(ステップS113)。ステップS113のピーク追尾処理の詳細については後述する。
【0059】
次に、波形生成部16は、ステップS113のピーク追尾処理で追尾されたピークを用いて、ピーク波形を生成する(ステップS114)。
【0060】
次に、波形生成部16は、生成されたピーク波形を保存する(ステップS115)。波形生成部16は、生成されたピーク波形を外部に出力してもよい。
【0061】
第2スペクトルにおいて、予測値に基づく追尾範囲の外部で抽出条件を満たす新たなピークが検出されると(ステップS116でYes)、ステップS112に戻る。そして、新たに検出されたピークに関して、ピーク追尾が行われる。第2スペクトルにおいて、予測値に基づく追尾範囲の外部で抽出条件を満たす新たなピークが検出されなかった場合(ステップS116でNo)、
図9のフローチャートに沿った処理は終了である(
図8のステップS15に進む)。
【0062】
〔ピーク追尾処理〕
次に、波動信号処理装置10によるピーク追尾処理(
図9のステップS113)の詳細について図面を参照しながら説明する。
図10は、ピーク追尾処理について説明するためのフローチャートである。ピーク追尾処理は、高分解能の第1スペクトルにおいて実行される。
図10のフローチャートに沿った処理の説明においては、波動信号処理装置10の構成要素(追尾部15)を動作の主体として説明する。
【0063】
図10において、まず、追尾部15は、
図9のステップS112で抽出されたピーク(ピーク始端)に関して、対象の時間フレームについて、最大周波数と周波数変化量を計算する(ステップS121)。対象の時間フレームが最初の時間フレームである場合、追尾部15は、ピーク始端(第1ピーク)に関して、最大周波数と周波数変化量を計算する。対象の時間フレームが最初の時間フレームではない場合、追尾部15は、ピーク始端に基づいて抽出されたピーク(第2ピーク)に関して、最大周波数と周波数変化量を計算する。
【0064】
次に、追尾部15は、対象の時間フレームの最大周波数と周波数変化量に基づいて、対象の時間フレームに後続する時間フレームにおけるピークの周波数の予測値を計算する(ステップS122)。対象の時間フレームに後続する時間フレームは、対象の時間フレーム以降であれば、対象の時間フレームに時間的に連続してもよいし、対象の時間フレームに時間的に連続しなくてもよい。
【0065】
算出された予測値に基づく追尾範囲の内部で抽出条件を満たすピークが検出された場合(ステップS123でYes)、追尾部15は、検出されたピーク(第2ピーク)を抽出する(ステップS124)。ステップS124の後は、ステップS121に戻って、後続する時間フレームを対象の時間フレームとし、ピーク追尾処理を継続する。
【0066】
算出された予測値に基づく追尾範囲の内部で抽出条件を満たすピークが検出されなかった場合(ステップS123でNo)、ピークが最後に検出されてからの経過時間に応じて、異なる処理が実行される。最後にピークが検出されてから所定時間が経過していない場合(ステップS125でNo)、ステップS122に戻って、処理中である対象の時間フレームに関して、ピーク追尾処理を継続する。最後にピークが検出されてから所定時間が経過した場合(ステップS125でYes)、
図10のフローチャートに沿った処理は終了である(
図9のステップS114に進む)。
【0067】
以上のように、本実施形態に係る波動信号処理装置は、信号入力部、第1生成部、第2生成部、抽出部、追尾部、および波形生成部を備える。信号入力部は、少なくとも一つのセンサによって検出された波動に由来する信号が入力される。第1生成部は、入力信号に基づいて、高分解能の第1スペクトルを生成する。第2生成部は、低分解能の第2スペクトルを生成する。抽出部は、対象時間フレームにおいて、抽出条件を満たす第1ピークを第2スペクトルから抽出する。追尾部は、第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、抽出条件を満たす第2ピークを第1スペクトルにおいて追尾する。波形生成部は、第1ピークを始端として複数の第2ピークを含む周波数の時系列データであるピーク波形を生成する。
【0068】
本実施形態では、低分解能の第2スペクトルにおいてピーク波形の始端(第1ピーク)を抽出し、高分解能の第1スペクトルにおいて始端(第1ピーク)に後続するピーク(第2ピーク)を追尾する。そのため、本実施形態によれば、ピーク波形の始端(第1ピーク)を抽出する処理を軽減することによって、波動に由来する信号の処理にかかる負荷を軽減できる。また、本実施形態によれば、始端(第1ピーク)に後続するピーク(第2ピーク)の追尾を高分解能の第1スペクトルにおいて実行するため、周波数の推定精度を落とすことなく処理を軽減できる。
【0069】
本実施形態の一態様において、第1生成部は、時間領域の入力信号を時間フレームごとに、周波数領域の信号である周波数スペクトルに変換する。第1生成部は、周波数スペクトルを時系列に配列して、第1スペクトルを生成する。第2生成部は、第1スペクトルを用いて、単位時間ごとに単位周波数で第1スペクトルを切り取ったビンごとの周波数の振幅の代表値を計算し、算出された代表値に基づいて第2スペクトルを生成する。追尾部は、対象時間フレームに後続する複数の時間フレームに関して、抽出条件を満たす第2ピークを第1スペクトルにおいて順次抽出する。追尾部は、抽出条件を満たす第2ピークを第1スペクトルにおいて順次抽出することによって、第1ピークに後続する複数の第2ピークを追尾する。
【0070】
本態様では、時間および周波数の分解能が低い第2スペクトルから第1ピーク(始端)を抽出する。そのため、本態様によれば、第1ピーク(始端)を抽出する処理の負荷を軽減できる。
【0071】
本実施形態の一態様において、第1生成部は、時間領域の入力信号を時間フレームごとに、周波数領域の信号である周波数スペクトルに変換する。第2生成部は、周波数スペクトルの周波数成分を間引き、周波数成分が間引かれた周波数スペクトルを時系列に配列して、第2スペクトルを生成する。第1生成部は、第1ピークおよび第2ピークが抽出された周辺の分解能をあげて、第1スペクトルを局所的に生成する。追尾部は、対象時間フレームに後続する複数の時間フレームに関して、局所的に生成された第1スペクトルにおいて抽出条件を満たす第2ピークを順次抽出する。追尾部は、局所的に生成された第1スペクトルにおいて抽出条件を満たす第2ピークを順次抽出することによって、第1ピークに後続する複数の第2ピークを追尾する。
【0072】
本態様では、ピーク追尾の際に、ピークの周辺の時間および周波数の分解能を高くするため、全ての周波数領域に亘って高分解能の第1スペクトルを生成しなくてもよい。そのため、本態様によれば、スペクトルの生成における処理の負荷を軽減できる。
【0073】
本実施形態の一態様において、抽出部は、対象時間フレームのビンから抽出された第1ピークに関して、ビンの内部における振幅が最大となるピーク周波数と、周波数変化量を計算する。追尾部は、ピーク周波数と周波数変化量に基づいて、第1ピークに後続するピークの周波数予測値を推定する。追尾部は、推定された周波数予測値に応じた追尾範囲の内部において、対象時間フレームに後続する時間フレームから抽出条件を満たす第2ピークを検出する。追尾部は、第2ピークが検出された時間フレームに後続する時間フレームに関して、第2ピークに後続する第2ピークを順次検出することによって、第1ピークに後続する第2ピークを追尾する。
【0074】
本態様では、先行する時間フレームにおけるピーク周波数と周波数変化量(傾き)に基づいて、後続する時間フレームの第2ピークの位置を推定する。そのため、本態様によれば、極大値のみに基づいてピークを抽出する方法に比べて、ノイズに対する頑健性が高くなる。
【0075】
本実施形態の一態様において、追尾部は、最後に第2ピークが検出されてから所定時間が経過すると、最後に検出されていた第2ピークが終端の第3ピークであると判定する。波形生成部は、第1ピークを始端とし、複数の第2ピークを経由し、第3ピークを終端とするピーク波形を生成する。
【0076】
本態様では、第2ピークが最後に検出されてからの経過時間に応じて、ピーク波形の終端を抽出する。そのため、本態様によれば、経過時間に応じてピーク波形の追尾を終了することによって、無駄にピークを追尾し続けることがなくなるので、ピーク追尾の処理を軽減できる。また、本態様によれば、経過時間に応じてピーク波形の終端を明確に判定するので、ピーク波形の長さ(時間長)を明確に決めることができる。
【0077】
本実施形態の一態様において、スペクトル生成部は、対象時間フレームのビンに含まれる時間フレームの振幅に関する代表値および分散のうち少なくともいずれかを計算する。抽出条件は、第1抽出条件、第2抽出条件、第3抽出条件、第4抽出条件、および第5抽出条件のうち少なくともいずれかの条件を含む。第1抽出条件は、代表値が第1閾値以上であるという条件である。第2抽出条件は、代表値を雑音レベルで割った値が第2閾値以上であるという条件である。第3抽出条件は、代表値の鋭さが第3閾値以上であるという条件である。第4抽出条件は、分散が第4閾値以下であるという条件である。第5抽出条件は、代表値が極大値を持つという条件である。本態様によれば、明確な抽出条件に基づいてピークが抽出され、抽出されるピークの質が維持されるため、無駄なピークの抽出に費やされる処理の負荷を軽減できる。
【0078】
本実施形態の一態様において、波形生成部は、重複する前記ピーク波形に関しては、一つのピーク波形を残して、その他のピーク波形を削除する。波形生成部は、時間長が所定の長さに満たないピーク波形に関しては、ピーク波形を削除する。本態様によれば、不要なピーク波形を削除することによって、ピーク波形を記憶する領域を低減できる。
【0079】
(第2の実施形態)
次に、第2の実施形態に係る波動信号処理装置について図面を参照しながら説明する。本実施形態の波動信号処理装置は、複数のセンサによって検出された波動に基づいて、その波動の波源を有する移動体の位置の時間変化や速度(以下、軌道と呼ぶ)を推定する。本実施形態において、移動体は、少なくとも一つの波源を有し、各波源が単一の波動を発すると仮定する。本実施形態においては、同一の移動体に関しては、ドップラーシフト量が全ての波源に関して同一であると仮定する。本実施形態において、センサによって検出される波動の周波数帯は、ドップラー効果による変化を検出できる帯域幅であるものとする。
【0080】
(構成)
図11は、本実施形態の波動信号処理装置20の構成の一例を示すブロック図である。波動信号処理装置20は、信号入力部21、第1生成部22、第2生成部23、抽出部24、追尾部25、波形生成部26、および軌道推定部27を備える。第1生成部22および第2生成部23は、スペクトル生成部220を構成する。以下においては、第1生成部22と第2生成部23を異なる構成として説明するが、第1生成部22と第2生成部23をスペクトル生成部220として統一的に構成されてもよい。以下においては、第1の実施形態と同様の点については説明を簡略化し、第1の実施形態とは異なる点に焦点を当てて説明する。
【0081】
波動信号処理装置20は、第1の実施形態と同様に、間隔を空けて配置された複数のセンサ200に接続される。センサ200は、第1の実施形態のセンサ100と同様の構成である。波動信号処理装置20と複数のセンサ200によって構成されるシステムを、信号処理システムとも呼ぶ。
【0082】
信号入力部21は、第1の実施形態の信号入力部11と同様の構成である。信号入力部21は、複数のセンサ200によって検出された波動に由来する信号(入力信号とも呼ぶ)を取得する。また、信号入力部21は、波源からの波動を検出しうるセンサ200の位置を取得する。センサ200の位置が波動信号処理装置20の記憶部(図示しない)に予め登録されている場合、信号入力部21は、予め登録されたセンサ200の位置を取得する。信号入力部21は、複数のセンサ200に有線で接続されてもよいし、無線で接続されてもよい。例えば、信号入力部21は、図示しないネットワーク経由で複数のセンサ200に接続されてもよい。
【0083】
図12は、複数のセンサ200の配置例を示す概念図である。複数のセンサ200が配置された空間においては、波源を有する移動体210が移動する。移動体210の移動に伴う軌跡が、推定対象の軌道Rである。複数のセンサ200は、各々のセンサ200の位置が特定できれば、どのように配置されてもよい。例えば、複数のセンサ200は、等間隔に配置されてもよいし、任意の間隔で配置されてもよい。また、複数のセンサ200は、各々のセンサ200の位置を判別できれば、互いに位置関係が変化してもよい。例えば、センサ200として、GPS(Global Positioning System)などによって位置情報を特定できる携帯端末に搭載されたマイクロホンや振動センサなどを用いてもよい。以下においては、波源を有する移動体210の軌道Rの推定に用いられる単位期間において、複数のセンサ200が配置された空間を移動体210が等速直線運動するものとする。
【0084】
第1生成部22は、第1の実施形態の第1生成部12と同様の構成である。第1生成部22は、一定の規則に則った単位(時間フレームとも呼ぶ)で時間領域の入力信号をフーリエ変換し、周波数領域の時系列データ(周波数スペクトルとも呼ぶ)を生成する。第1生成部22は、生成された複数の周波数スペクトルを用いて、高分解能のスペクトル(第1スペクトルとも呼ぶ)を生成する。
【0085】
第2生成部23は、第1の実施形態の第2生成部13と同様の構成である。第2生成部23は、第1生成部22によって生成された第1スペクトルの分解能を粗くし、低分解能のスペクトル(第2スペクトルとも呼ぶ)を生成する。第2生成部23は、第1スペクトルに基づいて、単位時間および単位周波数ごとに複数のフレームを統合した塊(ビンとも呼ぶ)を設定する。第2生成部23は、ビンに含まれるフレームの振幅(強度、エネルギー)の代表値を計算し、第2スペクトルを生成する。
【0086】
抽出部24は、第1の実施形態の抽出部14と同様の構成である。抽出部24は、各ビンの振幅(強度、エネルギー)に基づいて、抽出条件を満たすピークを各ビンから抽出する。抽出部24は、時間フレームの時系列順で、時間フレームを共通とする複数のビン(時間ビン)からピークを抽出する。抽出部24は、第2スペクトルの時間ビンから、ピーク波形のピーク始端(第1ピーク)を抽出する。ピーク波形を構成するピークのうち、ピーク始端に後続するピーク(第2ピーク)は、追尾部25によって追尾される。
【0087】
追尾部25は、第1の実施形態の追尾部15と同様の構成である。追尾部25は、ピーク始端が抽出された各ビンの内部で振幅が最大となる周波数(ピーク周波数)を計算する。追尾部25は、ピーク始端が抽出された各ビンの内部における周波数の変化量(周波数変化量とも呼ぶ)を計算する。
【0088】
追尾部25は、各ビンから抽出されたピーク始端と、各ビンに関するピーク周波数および周波数変化量に基づいて、各ビンから抽出されたピーク始端に後続するピーク(第2ピーク)を、第1スペクトルから検出する。
【0089】
追尾部25は、周波数予測値に応じた範囲(追尾範囲とも呼ぶ)の内部で、抽出条件を満たすピークを第1スペクトルから抽出する。例えば、追尾範囲は、波源の移動に伴ってドップラーシフトが起こりうる周波数帯と、周波数予測値とに基づいて設定される。
【0090】
追尾範囲が設定されると、抽出部24は、対象の時間フレームに後続する時間フレームにおいて、追尾範囲の外部で抽出条件を満たす新たなピーク始端を抽出する。抽出部24による新たなピーク始端の抽出は、追尾範囲が設定されていれば、任意のタイミングで開始できる。追尾部25は、対象の時間フレームにおいて抽出されたピーク(ピーク始端)と同様に、後続する時間フレームにおいて新たに抽出されたピーク始端についてピークの追尾を行う。
【0091】
連続する時間フレームにおいてピークが抽出されなかった場合、追尾部25は、最後に抽出されたピークの追尾範囲の内部で、第1スペクトルにおいて抽出条件を満たす追尾中の波動のピークを抽出する。追尾部25は、予め設定された所定時間が経過するまで、ピークの追尾を継続する。例えば、所定時間が経過するまでの間にピークが抽出されなかった場合、時間の経過に応じて追尾範囲を広げてもよい。ピークが抽出されずに所定時間が経過すると、追尾部25は、それまでに最後に抽出されていたピークを終端(ピーク終端とも呼ぶ)であると判定する。
【0092】
波形生成部26は、第1の実施形態の波形生成部16と同様の構成である。波形生成部26は、追尾部25によって追尾された波動に関して、ピーク始端からピーク終端に至るピークの周波数の時系列データ(ピーク波形)を生成する。
【0093】
波形生成部26は、生成された複数のピーク波形に関して、重複する波形を削除する。例えば、波形生成部26は、生成された複数のピーク波形に関して、部分的に重複する波形を合一化してもよい。例えば、波形生成部26は、ピーク波形の長さ(時間長)が所定の長さに満たない場合、そのピーク波形を削除してもよい。波形生成部26は、生成されたピーク波形を軌道推定部27に出力する。波形生成部26によって生成されたピーク波形は、波源を有する移動体210の軌道Rの推定に用いられる。
【0094】
波形生成部26によって抽出されたピーク波形のうち、軌道Rの推定対象である移動体210の波源からの信号に基づく波形をドップラーシフトと呼ぶ。移動体210が単一の波源を有し、雑音に起因するピーク波形が観測されないと仮定すると、生成される全てのピーク波形がドップラーシフトに相当する。移動体が複数の波源を有し、雑音に起因するピーク波形が観測されると仮定すると、生成される全てのピーク波形には、複数の波源に関するドップラーシフトと雑音成分が含まれる。
【0095】
軌道推定部27は、取得されたピーク波形をドップラーシフトの理論式fにフィッティングさせて、選択されたセンサ200の各々について、移動体の軌道に関するパラメータ(軌道パラメータとも呼ぶ)を推定する。軌道推定部27は、波源を有する移動体210の速度v、波源が発する波動の周波数f
0、移動体210とセンサ200の最短距離a、移動体がセンサ200に最接近する時刻t
0等の軌道パラメータを推定する。移動体は、検証中の時間フレームにおいて、軌道Rに沿って、速度vで等速直線運動をするものと仮定する。軌道推定部27は、下記の式2-1のドップラーシフトの理論式fをピーク波形にフィッティングさせて、軌道パラメータを推定する。以下の式2-1において、θ(t)は、時刻tにおける、移動体とセンサ100を結ぶ直線と、波源を有する移動体の軌道Rとの成す角(波源方向とも呼ぶ)である。下記の式1において、cは、観測環境における波動の速度である。
【0096】
軌道推定部27は、推定された軌道パラメータを用いて、三つのセンサ200が測定したピーク波形の中から、全てのピーク波形のペアに関して波源方向の候補(以下、波源方向候補とも呼ぶ)を推定する。軌道推定部27は、推定された波源方向候補を用いて、移動体の軌道の候補(以下、軌道候補とも呼ぶ)を推定する。
【0097】
例えば、軌道推定部27は、ピーク波形ごとに推定された軌道パラメータを用いて、全てのピーク波形のペアに関して波源方向候補を推定する。軌道推定部27は、以下の式2-2を用いて、センサ100-mとセンサ100-nに関する波源方向候補φmnを計算する(m、nは、自然数)。
【0098】
上記の式2-2において、mはセンサ200-mの識別番号を示し、nはセンサ200-nの識別番号を示す。tmはセンサ200-mに移動体210が最接近した時刻(始端時刻とも呼ぶ)を示し、amは始端時刻tmにおけるセンサ200-mと移動体210の距離を示す。同様に、tnはセンサ200-nに移動体210が最接近した時刻(終端時刻とも呼ぶ)を示し、anは終端時刻tnにおけるセンサ200-nと移動体210の距離を示す。移動体210とセンサ200の最短距離aと、波源方向候補φmnは、二つのセンサ200を結ぶ線分に対して時計回りの向きを正とする。ただし、始端時刻tmから終端時刻tnまでの時間において、移動体210は等速直線運動すると仮定する。
【0099】
軌道推定部27は、二つのセンサ200と軌道との位置関係に応じて、ピーク波形のペアの各々に対して、波源方向候補を推定する。二つのセンサ200と軌道との位置関係には、以下の四つのケース(ケースA、ケースB、ケースC、ケースD)がある。軌道推定部27は、ケースごとに推定された四つの波源方向候補の各々について、軌道候補を推定する。以下に、二つのセンサ200(センサ200-1、センサ200-2)と軌道との位置関係に応じた波源方向候補φ12の推定に関して、四つのケースについて個別に説明する。
【0100】
ケースAは、移動体210の軌道Rに対して、二つのセンサ200がともに上側に位置するケースである。ケースAでは、センサ200-1に移動体210が最接近した時刻t1におけるセンサ200-1と移動体210の距離a1は正である。センサ200-2に移動体210が最接近した時刻t2におけるセンサ200-2と移動体の距離a2も正である。ケースAでは、波源方向候補φ12は正である。
【0101】
ケースBは、移動体210の軌道Rに対して、センサ200-1が下側に位置し、センサ200-2が上側に位置するケースである。ケースBでは、センサ200-1に移動体210が最接近した際の時刻t1におけるセンサ200-1と移動体210の距離a1は負である。センサ200-2に移動体210が最接近した時刻t2におけるセンサ200-2と移動体210の距離a2は正である。ケースBの場合、波源方向候補φ12は正である。
【0102】
ケースCは、移動体の軌道Rに対して、センサ200-1とセンサ200-2がともに下側に位置するケースCである。ケースCでは、センサ200-1に移動体210が最接近した時刻t1におけるセンサ200-1と移動体210の距離a1は負である。センサ200-2に移動体210が最接近した時刻t2におけるセンサ200-2と移動体210の距離a2は負である。ケースCの場合、波源方向候補φ12は負である。
【0103】
ケースDは、移動体の軌道Rに対して、センサ200-1が上側に位置し、センサ200-2が下側に位置するケースである。ケースDでは、センサ200-1に移動体210が最接近した時刻t1におけるセンサ200-1と移動体210の距離a1は正である。センサ200-2に移動体210が最接近した時刻t2におけるセンサ200-2と移動体210の距離a2は負である。ケースDの場合、波源方向候補φ12は負である。
【0104】
軌道推定部27は、三つのセンサ200から選択される二つのセンサ200の組み合わせの全てに関して、上述した四つのケースにおける波源方向候補を推定する。軌道推定部27は、三つのセンサ200の全ての組み合わせに関して、重なり合う三つの軌道候補を推定する。軌道推定部27は、三つのセンサ200の全ての組み合わせに関して重なり合う三つの軌道候補を、移動体210の軌道Rとして推定する。なお、重なり合う三つの軌道候補は、完全に一致するとは限らない。そのような場合、軌道推定部27は、推定された複数の軌道候補のうち、最も近い三つの軌道候補を選択して、軌道Rを推定すればよい。例えば、軌道推定部27は、選択された三つの軌道候補のうちいずれかを選択したり、選択された三つの軌道候補を平均化したりすることによって、軌道Rを推定する。推定された軌道Rにおける、センサ200-nとセンサ200-mから見た方向をφRnmとする。また、軌道推定部27は、例えば、三つのセンサ200の全ての組み合わせに関して推定された速度の平均値や中間値等を、軌道Rにおける速度として推定する。
【0105】
軌道推定部27によって推定された軌道Rは、次に検証される時間フレーム(検証フレームとも呼ぶ)における移動体210の位置を推定するために用いられる。例えば、現在の検証フレームにおける軌道Rが、次の検証フレームでも方向を変えずに延長した軌道R’を描くと仮定する。この場合、軌道R’の中の代表点の位置を、次の検証フレームにおける移動体210の位置として推定する。例えば、代表点の位置を軌道R’の中間点とする。また、現在の検証フレームにおいて推定された移動体210の速度をvR、次の検証フレームの長さ(時間長s)の半分をs/2とする。この場合、次の検証フレームにおける移動体210の位置は、現在の検証フレームの終端位置から、方向φR12にs|vR|/2の距離の位置として推定される。例えば、次の検証フレームを検証する際に、軌道推定部27は、このような手法で推定された移動体210の位置に近いセンサ200によって検出された信号を選択すればよい。
【0106】
例えば、軌道推定部27によって推定された移動体210の軌道Rは、表示装置(図示しない)の画面に表示される。例えば、軌道推定部27によって推定された移動体210の軌道Rは、推定された軌道Rに基づいて処理を行うシステム(図示しない)に出力されたり、データベース(図示しない)に蓄積されたりしてもよい。
【0107】
図13は、波動信号処理装置20によって推定された移動体210の軌道Rを表示装置250の画面に表示させる一例を示す概念図である。
図13は、複数のセンサ200が配置された地区の路上を、自動車や自転車などの移動体210が移動する例である。例えば、移動体210の軌道Rは、移動体210が移動する経路を含む地図上に表示される。例えば、移動体210の軌道Rは、自動車や船舶、潜水艦などの移動体210の種別に応じて、それらの移動体210の航路を含む地図上に表示される。例えば、移動体210は、サイレンを出しながら走行する救急車や、警笛を鳴らしながら航行する船舶、ブザーを鳴らしながら走行する自転車等である。一定の周波数の排気音を出しながら走行する自動二輪車や自動車も、移動体210の対象になりうる。
【0108】
(動作)
次に、本実施形態の波動信号処理装置20の動作について図面を参照しながら説明する。
図14は、波動信号処理装置20の動作の概略について説明するためのフローチャートである。
図14のフローチャートに沿った処理は、波動信号処理装置20を動作の主体として説明する。
【0109】
図14において、まず、波動信号処理装置20は、複数のセンサ200によって検出された波動に由来する信号を取得する(ステップS21)。
【0110】
次に、波動信号処理装置20は、取得された信号に関して、高分解能の第1スペクトルを生成する(ステップS22)。
【0111】
次に、波動信号処理装置20は、生成された第1スペクトルに基づいて、低分解能の第2スペクトルを生成する(ステップS23)。
【0112】
次に、波動信号処理装置20は、波形生成処理を実行する(ステップS24)。ステップS24の波形生成処理は、第1の実施形態の波形生成処理(
図9)と同様である。
【0113】
次に、波動信号処理装置20は、波形生成処理によって生成されたピーク波形を用いて、軌道推定処理を実行する(ステップS25)。ステップS25の軌道推定処理の詳細については後述する。
【0114】
ステップS25の後に処理を継続する場合(ステップS26でYes)、ステップS21に戻る。ステップS25の後に処理を継続しない場合(ステップS26でNo)、
図14のフローチャートに沿った処理は終了である。例えば、予定された回数の処理が行われたり、予定の処理時間が経過したりすると、処理が停止される。例えば、ユーザの操作に応じて、処理を停止するように構成されてもよい。
【0115】
〔軌道推定処理〕
次に、波動信号処理装置20による軌道推定処理(図
14のステップS25)について図面を参照しながら説明する。
図25は、軌道推定処理について説明するためのフローチャートである。図
15のフローチャートに沿った処理は、波動信号処理装置20の構成要素(軌道推定部27)を動作の主体として説明する。
【0116】
図15において、まず、軌道推定部27は、波源が同一であると想定されるピーク波形をドップラーシフトの理論式にフィッティングさせて、軌道パラメータを推定する(ステップS251)。
【0117】
次に、軌道推定部27は、推定された軌道パラメータを用いて、全てのピーク波形のペアに関する波源方向候補を推定する(ステップS252)。
【0118】
次に、軌道推定部27は、推定された波源方向候補に基づいて、全てのピーク波形のペアに関する軌道候補を推定する(ステップS253)。
【0119】
次に、軌道推定部27は、推定された軌道候補のうち、三つのセンサの組み合わせに関して、重なり合う軌道候補を移動体の軌道として推定する(ステップS254)。例えば、軌道推定部27によって推定された移動体の軌道は、表示機器(図示しない)の画面に表示される。例えば、軌道推定部27によって推定された移動体の軌道は、推定された軌道に基づいて処理を行う任意のシステム(図示しない)に出力されたり、データベース(図示しない)に蓄積されたりしてもよい。
【0120】
以上のように、本実施形態に係る波動信号処理装置は、信号入力部、第1生成部、第2生成部、抽出部、追尾部、波形生成部、および軌道推定部を備える。信号入力部は、少なくとも一つのセンサによって検出された波動に由来する信号が入力される。第1生成部は、入力信号に基づいて、高分解能の第1スペクトルを生成する。第2生成部は、低分解能の第2スペクトルを生成する。抽出部は、対象時間フレームにおいて、抽出条件を満たす第1ピークを第2スペクトルから抽出する。追尾部は、第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、抽出条件を満たす第2ピークを第1スペクトルにおいて追尾する。波形生成部は、第1ピークを始端として複数の第2ピークを含む周波数の時系列データであるピーク波形を生成する。軌道推定部は、少なくとも一つのピーク波形に基づいて、波動の波源を有する移動体の軌道を推定する。
【0121】
本実施形態では、ピーク波形の始端(第1ピーク)を抽出する処理を軽減しつつ、始端(第1ピーク)に後続するピーク(第2ピーク)を追尾する処理を高精度で行う。本実施形態では、高精度に追尾されたピーク(第2ピーク)によって構成されるピーク波形に基づいて、そのピーク波形の元となる波動の波源を有する移動体の軌道を推定する。本実施形態によれば、ピーク波形に基づいて波源を有する移動体の軌道を推定する処理を、精度を落とさずに軽減できる。
【0122】
本実施形態においては、選択された複数のセンサの各々について、ドップラーシフトの理論式fにピーク波形をフィッティングさせて、移動体の軌道に関するパラメータ(軌道パラメータとも呼ぶ)を推定する例について説明した。例えば、二つのセンサの間を通る直線と波源の軌道とのなす角の正負が既知である場合は、その二つのセンサについて、ドップラーシフトの理論式fにピーク波形をフィッティングさせれば、単一の軌道を推定できる。
【0123】
(第3の実施形態)
次に、第3の実施形態に係る波動信号処理装置について図面を参照しながら説明する。本実施形態の波動信号処理装置は、第1~第2の実施形態の波動信号処理装置を簡略化した構成である。
図16は、本実施形態の波動信号処理装置30の構成の一例を示すブロック図である。波動信号処理装置30は、スペクトル生成部32、抽出部34、追尾部35、および波形生成部36を備える。
【0124】
スペクトル生成部32は、少なくとも一つのセンサによって検出された波動に由来する入力信号に基づいて、高分解能の第1スペクトルと低分解能の第2スペクトルを生成する。抽出部34は、対象時間フレームにおいて、抽出条件を満たす第1ピークを第2スペクトルから抽出する。追尾部35は、第1ピークが抽出された対象時間フレームに後続する時間フレームに関して、抽出条件を満たす第2ピークを第1スペクトルにおいて追尾する。波形生成部36は、第1ピークを始端として複数の第2ピークを含む周波数の時系列データであるピーク波形を生成する。
【0125】
本実施形態では、低分解能の第2スペクトルにおいてピーク波形の始端を抽出し、高分解能の第1スペクトルにおいて始端に後続するピークを追尾する。そのため、本実施形態によれば、ピーク波形の始端を抽出する処理を軽減することによって、波動に由来する信号の処理にかかる負荷を軽減できる。
【0126】
(ハードウェア)
ここで、本開示の各実施形態に係る波動信号処理装置による処理を実行するハードウェア構成について、
図17の情報処理装置90を一例として挙げて説明する。なお、
図17の情報処理装置90は、各実施形態の波動信号処理装置による処理を実行するための構成例であって、本開示の範囲を限定するものではない。
【0127】
図17のように、情報処理装置90は、プロセッサ91、主記憶装置92、補助記憶装置93、入出力インターフェース95、および通信インターフェース96を備える。
図17においては、インターフェースをI/F(Interface)と略記する。プロセッサ91、主記憶装置92、補助記憶装置93、入出力インターフェース95、および通信インターフェース96は、バス98を介して、互いにデータ通信可能に接続される。また、プロセッサ91、主記憶装置92、補助記憶装置93、および入出力インターフェース95は、通信インターフェース96を介して、インターネットやイントラネットなどのネットワークに接続される。
【0128】
プロセッサ91は、補助記憶装置93等に格納されたプログラムを、主記憶装置92に展開する。プロセッサ91は、主記憶装置92に展開されたプログラムを実行する。本実施形態においては、情報処理装置90にインストールされたソフトウェアプログラムを用いる構成とすればよい。プロセッサ91は、本実施形態に係る波動信号処理装置による処理を実行する。
【0129】
主記憶装置92は、プログラムが展開される領域を有する。主記憶装置92には、プロセッサ91によって、補助記憶装置93等に格納されたプログラムが展開される。主記憶装置92は、例えばDRAM(Dynamic Random Access Memory)などの揮発性メモリによって実現される。また、主記憶装置92として、MRAM(Magnetoresistive Random Access Memory)などの不揮発性メモリが構成/追加されてもよい。
【0130】
補助記憶装置93は、プログラムなどの種々のデータを記憶する。補助記憶装置93は、ハードディスクやフラッシュメモリなどのローカルディスクによって実現される。なお、種々のデータを主記憶装置92に記憶させる構成とし、補助記憶装置93を省略することも可能である。
【0131】
入出力インターフェース95は、規格や仕様に基づいて、情報処理装置90と周辺機器とを接続するためのインターフェースである。通信インターフェース96は、規格や仕様に基づいて、インターネットやイントラネットなどのネットワークを通じて、外部のシステムや装置に接続するためのインターフェースである。入出力インターフェース95および通信インターフェース96は、外部機器と接続するインターフェースとして共通化してもよい。
【0132】
情報処理装置90には、必要に応じて、キーボードやマウス、タッチパネルなどの入力機器が接続されてもよい。それらの入力機器は、情報や設定の入力に使用される。なお、タッチパネルを入力機器として用いる場合は、表示機器の表示画面が入力機器のインターフェースを兼ねる構成としてもよい。プロセッサ91と入力機器との間のデータ通信は、入出力インターフェース95に仲介させればよい。
【0133】
また、情報処理装置90には、情報を表示するための表示機器を備え付けてもよい。表示機器を備え付ける場合、情報処理装置90には、表示機器の表示を制御するための表示制御装置(図示しない)が備えられていることが好ましい。表示機器は、入出力インターフェース95を介して情報処理装置90に接続すればよい。
【0134】
また、情報処理装置90には、ドライブ装置が備え付けられてもよい。ドライブ装置は、プロセッサ91と記録媒体(プログラム記録媒体)との間で、記録媒体からのデータやプログラムの読み込み、情報処理装置90の処理結果の記録媒体への書き込みなどを仲介する。ドライブ装置は、入出力インターフェース95を介して情報処理装置90に接続すればよい。
【0135】
以上が、本発明の各実施形態に係る波動信号処理装置を可能とするためのハードウェア構成の一例である。なお、
図17のハードウェア構成は、各実施形態に係る波動信号処理装置の演算処理を実行するためのハードウェア構成の一例であって、本発明の範囲を限定するものではない。また、各実施形態に係る波動信号処理装置に関する処理をコンピュータに実行させるプログラムも本発明の範囲に含まれる。さらに、各実施形態に係るプログラムを記録したプログラム記録媒体も本発明の範囲に含まれる。記録媒体は、例えば、CD(Compact Disc)やDVD(Digital Versatile Disc)などの光学記録媒体で実現できる。記録媒体は、USB(Universal Serial Bus)メモリやSD(Secure Digital)カードなどの半導体記録媒体によって実現されてもよい。また、記録媒体は、フレキシブルディスクなどの磁気記録媒体、その他の記録媒体によって実現されてもよい。プロセッサが実行するプログラムが記録媒体に記録されている場合、その記録媒体はプログラム記録媒体に相当する。
【0136】
各実施形態の波動信号処理装置の構成要素は、任意に組み合わせてもよい。また、各実施形態の波動信号処理装置の構成要素は、ソフトウェアによって実現されてもよいし、回路によって実現されてもよい。
【0137】
以上、実施形態を参照して本発明を説明してきたが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0138】
10、20、30 波動信号処理装置
11、21 信号入力部
12、22 第1生成部
13、23 第2生成部
14、24、34 抽出部
15、25、35 追尾部
16、26、36 波形生成部
27 軌道推定部
32 スペクトル生成部
100、200 センサ
120、220 スペクトル生成部