(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022130763
(43)【公開日】2022-09-07
(54)【発明の名称】信号生成装置、信号生成システムおよび信号生成方法
(51)【国際特許分類】
H04B 17/391 20150101AFI20220831BHJP
G01S 5/18 20060101ALN20220831BHJP
G01S 7/526 20060101ALN20220831BHJP
【FI】
H04B17/391
G01S5/18
G01S7/526 J
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2021029331
(22)【出願日】2021-02-26
(71)【出願人】
【識別番号】000000295
【氏名又は名称】沖電気工業株式会社
(74)【代理人】
【識別番号】110001461
【氏名又は名称】弁理士法人きさ特許商標事務所
(72)【発明者】
【氏名】木原 将吾
【テーマコード(参考)】
5J083
【Fターム(参考)】
5J083AA05
5J083AC28
5J083AC29
5J083BE60
5J083DA01
(57)【要約】
【課題】ドップラー係数の変化に対して、伝搬遅延および周波数シフトを模擬した波形の連続性を担保できる信号生成装置を得る。
【解決手段】伝搬遅延および周波数シフトを模擬する信号生成装置であって、信号処理の単位である処理ブロック毎の伝搬遅延を記憶する記憶手段と、伝搬遅延に基づいて連続する処理ブロック間のドップラー係数変化度を算出する係数変化度算出手段と、ドップラー係数変化度が閾値以下であるか否かを判定する判定手段と、ドップラー係数変化度が閾値よりも大きい場合、処理ブロックを複数のサブブロックに分割する分割手段と、伝搬遅延に基づいてサブブロック毎に補間が必要なサンプル点位置を算出するサンプル位置算出手段と、サンプル点位置に基づいてサブブロック毎に補間処理を実行する補間処理手段と、伝搬遅延に基づいて補間処理後のサブブロック毎にサンプル遅延を実行する遅延処理手段とを有するものである。
【選択図】
図6
【特許請求の範囲】
【請求項1】
波形に対して伝搬遅延および周波数シフトを模擬する信号生成装置であって、
前記波形に対して、信号処理の単位である処理ブロック毎の伝搬遅延を記憶する記憶手段と、
前記伝搬遅延に基づいて、連続する前記処理ブロック間のドップラー係数変化度を算出する係数変化度算出手段と、
前記ドップラー係数変化度が予め決められた閾値以下であるか否かを判定する判定手段と、
前記ドップラー係数変化度が前記閾値よりも大きい場合、前記処理ブロックを複数のサブブロックに分割する分割手段と、
前記伝搬遅延に基づいて、前記サブブロック毎に補間が必要なサンプル点位置を算出するサンプル位置算出手段と、
前記サンプル点位置に基づいて、前記サブブロック毎に補間処理を実行する補間処理手段と、
前記伝搬遅延に基づいて、前記補間処理後の前記サブブロック毎にサンプル遅延を実行する遅延処理手段と、
を有する信号生成装置。
【請求項2】
前記係数変化度算出手段は、
連続する前記サブブロック間の伝搬遅延差を用いて前記サブブロックの伸縮率を推定する、
請求項1に記載の信号生成装置。
【請求項3】
前記分割手段は、
連続する前記サブブロック間でドップラー係数が線形に変化するように前記伝搬遅延を補間する、
請求項1または2に記載の信号生成装置。
【請求項4】
前記補間処理手段は、
前記サンプル位置算出手段によって推定された前記伸縮率にしたがって、前記サブブロックのリサンプリングを行うことで任意の周波数の波形に対して周波数シフトを模擬する、
請求項2に記載の信号生成装置。
【請求項5】
前記補間処理手段は、
前記波形の離散点系列から連続信号である補間関数を推定し、前記補間関数に前記サンプル点位置の値を入力することで離散点間の位置の値を出力する、
請求項1~4のいずれか1項に記載の信号生成装置。
【請求項6】
波形に対して伝搬遅延および周波数シフトを模擬する信号生成システムであって、
前記波形に対して、信号処理の単位である処理ブロック毎の伝搬遅延を記憶する記憶手段と、
前記伝搬遅延に基づいて、連続する前記処理ブロック間のドップラー係数変化度を算出する係数変化度算出手段と、
前記ドップラー係数変化度が予め決められた閾値以下であるか否かを判定する判定手段と、
前記ドップラー係数変化度が前記閾値よりも大きい場合、前記処理ブロックを複数のサブブロックに分割する分割手段と、
前記伝搬遅延に基づいて、前記サブブロック毎に補間が必要なサンプル点位置を算出するサンプル位置算出手段と、
前記サンプル点位置に基づいて、前記サブブロック毎に補間処理を実行する補間処理手段と、
前記伝搬遅延に基づいて、前記補間処理後の前記サブブロック毎にサンプル遅延を実行する遅延処理手段と、
を有する信号生成システム。
【請求項7】
波形に対して伝搬遅延および周波数シフトを模擬する情報処理装置による信号生成方法であって、
前記波形に対して、信号処理の単位である処理ブロック毎の伝搬遅延を記憶するステップと、
前記伝搬遅延に基づいて、連続する前記処理ブロック間のドップラー係数変化度を算出するステップと、
前記ドップラー係数変化度が予め決められた閾値以下であるか否かを判定するステップと、
前記ドップラー係数変化度が前記閾値よりも大きい場合、前記処理ブロックを複数のサブブロックに分割するステップと、
前記伝搬遅延に基づいて、前記サブブロック毎に補間が必要なサンプル点位置を算出するステップと、
前記サンプル点位置に基づいて、前記サブブロック毎に補間処理を実行するステップと、
前記伝搬遅延に基づいて、前記補間処理後の前記サブブロック毎にサンプル遅延を実行するステップと、
を有する信号生成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、伝搬遅延および周波数シフトを模擬した信号を生成する信号生成装置、信号生成システムおよび信号生成方法に関する。
【背景技術】
【0002】
従来、音源から受波点への波の伝搬を模擬するシミュレータなどにおいて、波の伝搬遅延、およびドップラー効果による周波数シフトを模擬した信号を生成する信号生成装置が知られている。また、信号生成装置ではないが、解析対象の波が電波の場合について、電波を海面に発射し、その反射波を測定して、海流の流れなどの海象情報を観測する海洋レーダ観測装置が知られている(例えば、特許文献1参照)。
【0003】
特許文献1に開示された海洋レーダ観測装置は、船舶によって発生する水位変動のノイズに対し、レンジ方向の観測範囲をブロック分割し、分割されたブロック内で流れの回帰曲線を求め、回帰曲線からのズレと標準偏差に基づき不正常な流束値を検出して補正する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に開示された海洋レーダ観測装置は、ブロック長を一定として補正処理を行っている。特許文献1に開示された技術を信号生成装置に適用し、信号処理の単位である処理ブロックの長さを一定とした場合、ドップラー係数がブロック間で大きく変化すると、処理ブロック間で連続性を担保した波形を模擬できなくなるおそれがある。例えば、音源と受波点との距離が近い場合、音源と受波点との距離が遠い場合と比べて、連続するブロック間でドップラー係数が大きく変化するからである。
【課題を解決するための手段】
【0006】
本発明に係る信号生成装置は、波形に対して伝搬遅延および周波数シフトを模擬する信号生成装置であって、波形に対して、信号処理の単位である処理ブロック毎の伝搬遅延を記憶する記憶手段と、伝搬遅延に基づいて、連続する処理ブロック間のドップラー係数変化度を算出する係数変化度算出手段と、ドップラー係数変化度が予め決められた閾値以下であるか否かを判定する判定手段と、ドップラー係数変化度が閾値よりも大きい場合、処理ブロックを複数のサブブロックに分割する分割手段と、伝搬遅延に基づいて、サブブロック毎に補間が必要なサンプル点位置を算出するサンプル位置算出手段と、サンプル点位置に基づいて、サブブロック毎に補間処理を実行する補間処理手段と、伝搬遅延に基づいて、補間処理後のサブブロック毎にサンプル遅延を実行する遅延処理手段と、を有するものである。
【0007】
本発明に係る信号生成システムは、波形に対して伝搬遅延および周波数シフトを模擬する信号生成システムであって、波形に対して、信号処理の単位である処理ブロック毎の伝搬遅延を記憶する記憶手段と、伝搬遅延に基づいて、連続する処理ブロック間のドップラー係数変化度を算出する係数変化度算出手段と、ドップラー係数変化度が予め決められた閾値以下であるか否かを判定する判定手段と、ドップラー係数変化度が閾値よりも大きい場合、処理ブロックを複数のサブブロックに分割する分割手段と、伝搬遅延に基づいて、サブブロック毎に補間が必要なサンプル点位置を算出するサンプル位置算出手段と、サンプル点位置に基づいて、サブブロック毎に補間処理を実行する補間処理手段と、伝搬遅延に基づいて、補間処理後のサブブロック毎にサンプル遅延を実行する遅延処理手段と、を有するものである。
【0008】
本発明に係る信号生成方法は、波形に対して伝搬遅延および周波数シフトを模擬する情報処理装置による信号生成方法であって、波形に対して、信号処理の単位である処理ブロック毎の伝搬遅延を記憶するステップと、伝搬遅延に基づいて、連続する処理ブロック間のドップラー係数変化度を算出するステップと、ドップラー係数変化度が予め決められた閾値以下であるか否かを判定するステップと、ドップラー係数変化度が閾値よりも大きい場合、処理ブロックを複数のサブブロックに分割するステップと、伝搬遅延に基づいて、サブブロック毎に補間が必要なサンプル点位置を算出するステップと、サンプル点位置に基づいて、サブブロック毎に補間処理を実行するステップと、伝搬遅延に基づいて、補間処理後のサブブロック毎にサンプル遅延を実行するステップと、を有するものである。
【発明の効果】
【0009】
本発明によれば、ドップラー係数変化度に対して閾値判定を行い、ドップラー係数変化度が小さい場合、処理ブロックの単位で波形を推定し、ドップラー係数変化度が大きい場合、処理ブロックをより細かいブロック長のサブブロックに自動的に分割して波形を推定する。そのため、連続する処理ブロック間でドップラー係数の変化が大きくても、連続性を担保した波形を模擬することができる。
【図面の簡単な説明】
【0010】
【
図1】音源の位置ベクトルおよび受波点の位置ベクトルの時間変化の一例を示す模式図である。
【
図2】第1の比較例を説明するための模式図である。
【
図3】第2の比較例を説明するための模式図である。
【
図4】第3の比較例を説明するための模式図である。
【
図5】実施の形態1に係る信号生成装置の一構成例を示す図である。
【
図6】
図5に示した制御部の一構成例を示す機能ブロック図である。
【
図7】
図6に示した分割手段の一構成例を示す機能ブロック図である。
【
図8】実施の形態1に係る信号生成装置の動作手順の一例を示すフローチャートである。
【
図9】
図6に示した伝搬遅延メモリおよび伝搬遅延サブメモリが記憶する情報の一例を示す図である。
【
図10】
図8に示したステップS108の処理における、分割手段の動作手順の一例を示すフローチャートである。
【
図11】実施の形態1に係る信号生成システムの一構成例を示すブロック図である。
【発明を実施するための形態】
【0011】
実施の形態1.
本実施の形態1では、信号生成装置が、波の伝搬を模擬するシミュレータにおいて、伝搬遅延、およびドップラー効果による周波数シフトを模擬した信号を生成する装置の場合で説明する。本実施の形態1の信号生成装置について説明する前に、信号生成装置が模擬する対象となる波について、音の伝搬を例として説明する。なお、文章中では、種々のパラメータを示すギリシャ文字またはローマ字についてベクトル表記(太字表記、文字の上に矢印添付など)が困難なため、以下では、文章中でのベクトル表記を省略する。
【0012】
図1は、音源の位置ベクトルおよび受波点の位置ベクトルの時間変化の一例を示す模式図である。
図1に示すように、音源および受波点の一方または両方の移動に伴って、音源の位置ベクトルpsおよび受波点の位置ベクトルprが時間変化する状況を考慮する必要がある。つまり、音源から放射された音が伝搬した受波点での受波信号を模擬する疑似信号を生成する場合、伝搬遅延、およびドップラー効果による周波数シフトした信号を模擬することが行われる。
【0013】
次に、本実施の形態1の信号生成装置による信号生成方法を理解しやすくするために、伝搬遅延、およびドップラー効果によって周波数シフトする信号を模擬する方法として、3つの比較例を説明する。
【0014】
はじめに、第1の比較例について、
図2を参照して説明する。第1の比較例は位相積分方式である。
図2は、第1の比較例を説明するための模式図である。音源信号s(n)が式(1)で表されるものとする。
【0015】
【0016】
式(1)において、fは信号周波数[Hz]であり、φ
0は初期位相[rad]、f
sはサンプリング周波数[Hz]、nは離散時刻インデックスを表す。
図2に示すように処理ブロック1における伝搬遅延時間がτ
1[s]、ドップラー係数がd
1とし、続く処理ブロック2における伝搬遅延時間がτ
2[s]、ドップラー係数がd
2であるとする。処理ブロックは、例えば、音源信号の波形の時間変化を示す音源信号時間波形に対して、信号処理の単位として、決められた時間の範囲で切り取られる信号である。ドップラー係数は、音源と受波点の相対的な速度の存在によって周波数が変化する比率であり、式(2)に示す。
【0017】
【0018】
式(2)において、f’は変化後の周波数[Hz]であり、cは音速[m/s]である。vs’はベクトルvs’の大きさであり、音源の受波点方向の速度成分[m/s]を表す。vr’はベクトルvr’の大きさであり、受波点の音源方向と逆方向の速度成分[m/s]を表す。処理ブロック1が伝搬した後の受信信号x1(t)と、処理ブロック2が伝搬した後の受信信号x2(t)とを、式(3)~(5)に表す。
【0019】
【0020】
【0021】
【0022】
ここで、処理ブロック2の初期位相φ1は、式(5)で計算される処理ブロック1の末尾の位相である。処理ブロックlまで拡張した式を、式(6)および(7)に示す。
【0023】
【0024】
【0025】
位相積分方式は、ドップラー係数が式(6)および(7)のように狭帯域信号の位相回転速度に表れ、処理ブロック末尾の位相が次処理ブロックの初期位相となるように位相を積分していく方式である。
【0026】
次に、第2の比較例について、
図3を参照して説明する。第2の比較例は、サンプル更新方式である。
図3は、第2の比較例を説明するための模式図である。
図3に示すように、サンプル更新方式では、音源波形の1サンプル毎に変化し得る伝搬遅延をそれぞれ与えられた系列からなる波形を求める。例えば、伝搬遅延を毎時刻変化する有限インパルス応答による遅延フィルタhn=[hn(0),hn(1),・・・,hn(M)]を音源信号s(n)に畳み込むことで、波形x(n)が式(8)に示すように得られる。
【0027】
【0028】
次に、第3の比較例について、
図4を参照して説明する。第3の比較例は、処理ブロック伸縮方式である。
図4は、第3の比較例を説明するための模式図である。
図4に示すように、処理ブロックlの伝搬遅延時間がτ
lであり、これに続く処理ブロックl+1の伝搬遅延時間がτ
l+1であるとき、τ
l+1-τ
l≠0であれば、波形の連続性から処理ブロックlの末尾はτ
l+1の伝搬遅延に等しいと考えられる。すなわち、処理ブロックlの時間長をN
block[サンプル]からN
block+(τ
l+1-τ
l)*f
s[サンプル]へ伸縮させることで、波形の連続性を保つことができる。また、波形の伸縮によって、式(9)で示されるドップラー係数dによる周波数シフトをしていることと等価となる。
【0029】
【0030】
処理ブロックの伸縮後の波形x(n)は、ドップラー係数dに対応して音源波形s(n)={s(0),s(1),・・・,s(Nblock-1),s(Nblock)}を式(10)に示すようにリサンプルすることで得られる。
【0031】
【0032】
なお、元の離散音源波形s(n)のサンプル点からずれたs(d),s(2d),・・・は、補間によって求められる。
【0033】
ここまで、3つの比較例について説明したが、各比較例には、次のような課題がある。第1の比較例である位相積分方式は、位相回転速度を変化させることで周波数シフトの模擬は可能である。しかし、適用できる信号が狭帯域信号に限定されてしまう。また、出力される処理ブロックの長さと入力される処理ブロックの長さとが同じで、かつ、これらの長さは一定である。そのため、処理ブロック1の信号の伝搬遅延がドップラー係数にしか現れず、受信時刻としては考慮されていないという問題がある。
【0034】
第2の比較例であるサンプル更新方式は、1サンプル毎に変化する伝搬遅延が表現された遅延フィルタを畳み込むことで、任意の信号波形に対して、正確な伝搬遅延および周波数シフトの模擬が可能である。受信時刻に伝搬遅延が反映されるが、1サンプル毎に伝搬遅延計算を行うため、計算コストが大きいという問題がある。
【0035】
第3の比較例である処理ブロック伸縮方式は、処理ブロック内の信号波形を伸縮させることでブロック単位での周波数シフトを模擬可能である。しかし、サンプル更新方式と異なり、処理ブロック内で一律のドップラー係数となるため、処理ブロック内でドップラー係数が大きく変化する場合には適していない。この場合、処理ブロック内でドップラー係数が一定とみなせるほど処理ブロック長を短く設定しておくことで対応できるが、一律で処理ブロック長を短くすることは計算コストとのトレードオフを考える必要がある。
【0036】
本実施の形態1の信号生成装置は、これらの問題を解決するものである。本実施の形態1の信号生成装置の構成を説明する。
図5は、実施の形態1に係る信号生成装置の一構成例を示す図である。
【0037】
信号生成装置1は、コンピュータ等の情報処理装置である。
図5に示すように、信号生成装置1は、入力部2と、記憶部3と、制御部4と、出力部5とを有する。記憶部3は、例えば、HDD(Hard Disk Drive)装置である。出力部5は、例えば、ディスプレイ装置である。制御部4は、プログラムを記憶するメモリ11と、プログラムにしたがって処理を実行するCPU(Central Processing Unit)12とを有する。メモリ11は、例えば、フラッシュメモリ等の不揮発性メモリである。入力部2には、模擬信号の基準となる音源信号時間波形が入力される。
【0038】
図6は、
図5に示した制御部の一構成例を示す機能ブロック図である。制御部4は、処理ブロック更新手段21と、係数変化度算出手段22と、判定手段23と、サンプル位置算出手段31と、補間処理手段32と、遅延処理手段33とを有する。また、制御部4は、分割手段41と、サブブロック更新手段43とを有する。CPU12がプログラムを実行することで、処理ブロック更新手段21、係数変化度算出手段22、判定手段23、サンプル位置算出手段31、補間処理手段32、遅延処理手段33、分割手段41およびサブブロック更新手段43が構成される。
【0039】
記憶部3は、複数にメモリ領域が分割されている。
図6に示す構成例においては、記憶部3は、データを記憶させるメモリ領域として、音源波形ブロックメモリ51と、伝搬遅延メモリ52と、サブメモリ53とを有する。音源波形ブロックメモリ51は、音源信号時間波形を処理ブロック毎に記憶する記憶手段である。伝搬遅延メモリ52は、処理ブロック毎の伝搬遅延を記憶する記憶手段である。伝搬遅延メモリ52は、ブロックインデックスに対応して、処理ブロックのブロック長と伝搬遅延とを組として記憶する。
【0040】
サブメモリ53は、音源波形サブブロックメモリ54と、伝搬遅延サブメモリ55とを有する。サブメモリ53の領域は、分割手段41によって記憶部3に作成される。音源波形サブブロックメモリ54は、分割手段41によって分割されたサブブロック毎に対応する時間範囲の音源信号時間波形を記憶する。伝搬遅延サブメモリ55は、サブブロック数のサブブロックインデックスに対応して、サブブロックのブロック長と伝搬遅延とを組として記憶する。サブブロックは、処理ブロックが複数に分割されたときの1つの時間範囲である。
【0041】
処理ブロック更新手段21は、音源信号時間波形およびブロックインデックスを入力として、伝搬遅延および周波数シフトさせる対象となる処理ブロックの範囲の音源信号時間波形を音源波形ブロックメモリ51に記憶させる。本実施の形態1では、伝搬遅延メモリ52が処理ブロック毎の伝搬遅延を記憶する場合で説明するが、処理ブロック更新手段21が、音源信号時間波形に対して、処理ブロック毎に伝搬遅延を算出する伝搬遅延算出手段として機能してもよい。
【0042】
係数変化度算出手段22は、伝搬遅延メモリ52からブロックインデックスに対応する時刻の伝搬遅延を読み出し、読み出した伝搬遅延を入力とし、ドップラー係数変化度を算出し、ドップラー係数変化度を判定手段23に出力する。判定手段23は、ドップラー係数変化度を入力とし、ドップラー係数変化度が予め決められた閾値以下か否かを判定する。判定手段23は、判定結果の情報を、係数変化度算出手段22、サンプル位置算出手段31および分割手段41に通知する。
【0043】
分割手段41は、ドップラー係数変化度が閾値より大きい場合、伝搬遅延メモリ52からブロックインデックスに対応する時刻の伝搬遅延を読み出し、読み出した伝搬遅延と、ドップラー係数変化度とを入力とし、補間した伝搬遅延およびサブブロックのブロック長を求めて伝搬遅延サブメモリ55に記憶させる。
【0044】
分割手段41の構成を、
図7を参照して説明する。
図7は、
図6に示した分割手段の一構成例を示す機能ブロック図である。分割手段41は、ブロック長算出手段141と、伝搬遅延補間処理手段142とを有する。
【0045】
ブロック長算出手段141は、伝搬遅延メモリ52を参照してブロックインデックスに対応する時刻の伝搬遅延を読み出し、読み出した伝搬遅延とドップラー係数変化度とを入力とし、処理ブロックを複数のサブブロックに分割し、サブブロック数およびサブブロックのブロック長の情報を伝搬遅延補間処理手段142に出力する。伝搬遅延補間処理手段142は、伝搬遅延メモリ52を参照してブロックインデックスに対応する時刻の伝搬遅延を読み出し、読み出した伝搬遅延とブロック長とを入力とし、伝搬遅延補間処理を行い、伝搬遅延サブメモリ55が記憶する情報を更新する。
【0046】
図6に示すサブブロック更新手段43は、伝搬遅延サブメモリ55からサブブロックインデックスに対応するサブブロックのブロック長を読み出し、音源波形ブロックメモリ51からブロックインデックスに対応する時間範囲の音源信号時間波形を読み出す。サブブロック更新手段43は、読み出したブロック長および音源信号時間波形と、サブブロックインデックスとを入力とし、サブブロックインデックスに対応する時間範囲の音源信号時間波形を音源波形サブブロックメモリ54に記憶させる。
【0047】
サンプル位置算出手段31は、ドップラー係数変化度が閾値以下である場合、伝搬遅延メモリ52からブロックインデックスに対応する時刻の伝搬遅延を読み出し、読み出した伝搬遅延を入力とし、サンプル点位置の情報を補間処理手段32に出力する。サンプル位置算出手段31は、ドップラー係数変化度が閾値より大きい場合、伝搬遅延サブメモリ55からサブブロックインデックスに対応する伝搬遅延を読み出し、読み出した伝搬遅延とブロック長とを入力とし、サンプル点位置を算出し、サンプル点位置の情報を補間処理手段32に出力する。
【0048】
補間処理手段32は、音源波形ブロックメモリ51に格納されている処理ブロックの音源信号時間波形と、サンプル点位置とを入力とし、位相遅延および周波数シフトを表現した信号を生成して遅延処理手段33に出力する。補間処理手段32は、音源波形サブブロックメモリ54からサブブロックインデックスに対応する時間範囲の音源信号時間波形を読み出し、読み出した音源信号時間波形とサンプル点位置とを入力とし、位相遅延および周波数シフトを表現した信号を生成して遅延処理手段33に出力する。
【0049】
遅延処理手段33は、伝搬遅延メモリ52からブロックインデックスに対応する時刻の伝搬遅延を読み出し、読み出した伝搬遅延と、位相遅延および周波数シフトを表現した信号とを入力とし、伝搬遅延および周波数シフトした後の波形を生成して、
図5に示した出力部5に出力する。遅延処理手段33は、伝搬遅延サブメモリ55からサブブロックインデックスに対応する伝搬遅延を読み出し、読み出した伝搬遅延と、位相遅延および周波数シフトを表現した信号とを入力とし、伝搬遅延および周波数シフトした後の波形を生成して、
図5に示した出力部5に出力する。
【0050】
なお、本実施の形態1では、
図6に示すように、音源波形ブロックメモリ51、伝搬遅延メモリ52およびサブメモリ53が記憶部3に設けられる場合で説明したが、これらのメモリが
図5に示したメモリ11に設けられてもよい。
【0051】
次に、本実施の形態1の信号生成装置1の動作を説明する。
図8は、実施の形態1に係る信号生成装置の動作手順の一例を示すフローチャートである。
図9は、
図6に示した伝搬遅延メモリおよび伝搬遅延サブメモリが記憶する情報の一例を示す図である。
【0052】
ここでは、信号生成装置1が、音の伝搬を例として、音源および受波点の位置ベクトルが時間変化する状況での受波点の受信波形を模擬する疑似信号を生成する場合を考える。
図9の上段に示すように、伝搬遅延メモリ52は、各処理ブロックに対応する時刻の伝搬遅延を記憶しているものとする。
【0053】
音源信号時間波形として、式(11)に示す音源時間信号s(n)が制御部4に入力される(ステップS101)。ステップS102において、処理ブロック更新手段21は、音源時間信号s(n)を入力とし、ブロックインデックスlに対応する時刻インデックスの集合nlの時間波形s(nl)を音源波形ブロックメモリ51に記憶させる。ステップS102において、処理ブロックがブロックインデックスlに対応して、順次、更新される。時間波形nlを式(12)に示す。ここで、ブロックインデックスlは処理ブロックのインデックスであり、Lは全処理ブロック数である。
【0054】
【0055】
【0056】
ステップS102以降の処理で必要となる伝搬遅延τl、τl+1、τl+2は、伝搬遅延メモリ52が記憶するτ={τ1,τ2,・・・,τL}からブロックインデックスlを基に参照される。ステップS103において、係数変化度算出手段22は、伝搬遅延τl、τl+1、τl+2を次の式(13)に入力し、ドップラー係数変化度Δdlを算出する。
【0057】
【0058】
ステップS104において、判定手段23は、ドップラー変化度|Δdl|と予め決められた閾値δとを比較し、ドップラー変化度|Δdl|が閾値δ以下か否かを判定する。閾値δは、計算コストを重視する場合、0.01に近い大きめの値が設定され、模擬度を重視する場合、0に近い小さめの値が設定される。ドップラー変化度|Δdl|が閾値δ以下の場合、ブロックインデックスlに対応する時間範囲ではドップラー係数は大きく変化しないと考えられる。そのため、係数変化度算出手段22は、音源および受波点の相対速度の情報を用いないで、連続する処理ブロック間の伝搬遅延差を用いて処理ブロックの伸縮率を推定する。
【0059】
ステップS105において、サンプル位置算出手段31は、推定された伸縮率で処理ブロック全体を伸縮し、対応するサンプル点を補間によって取得し、伝搬遅延および周波数シフト後のサンプル点の位置を算出する。具体的には、サンプル位置算出手段31は、次のようにして、補間処理手段32に出力する時刻インデックスの集合nl’を求める。時刻インデックスの集合nl’を、式(14)に示す。
【0060】
【0061】
式(14)において、Nblock’はサンプル数Nblockの処理ブロックlの波形伸縮後のサンプル数である。dlはブロックインデックスに対応するドップラー係数であり、式(13)の第2項に示されている。φlは式(15)に表される初期サンプルズレ位置である。
【0062】
【0063】
式(15)において、記号floor[・]は、小数点以下を切り捨てる演算を表す。%xはxで除算したときの余りを表し、{ }内が1になったとき、{1}%1=0とするための処理である。
【0064】
小数サンプル遅延である場合、整数サンプル遅延floor[τlfs]の端数τlfs-floor[τlfs]だけブロックの元始点時刻が移動する。波形としてサンプルされるのは元の時間スケールのサンプル時刻{1-(τlfs-floor[τlfs])}となるが、ドップラー効果が発生している場合には係数倍だけ開始時刻がずれる。
【0065】
ステップS106において、補間処理手段32は、次のようにして、波形補間処理を行う。補間処理手段32は、波形の離散点系列から連続信号である補間関数を推定する。具体的には、補間処理手段32は、元の波形s(n=nl)の離散信号からスプライン補間により連続関数であるスプライン関数f(n)(lNblock≦n≦(l+1)Nblock)を求める。そして、補間処理手段32は、サンプル位置算出手段31から入力された時刻インデックスの集合nl’をスプライン関数に代入し、小数サンプル遅延および周波数シフト後の波形s’(n)を得る。波形s’(n)を式(16)に示す。
【0066】
【0067】
ステップS107において、遅延処理手段33は、次の式(17)に示すように、サンプル遅延floor[τlfs]だけ波形をずらす処理を行う。
【0068】
【0069】
一方、ステップS104の判定の結果、ドップラー変化度|Δdl|が閾値δよりも大きい場合、対応する時間範囲でドップラー係数が大きく変化する。そのため、本実施の形態1の制御部4は、ステップS108の処理に進み、ドップラー係数の変化が追随できる程度の細かいサブブロックに処理ブロックを分割して、サブブロックの単位で伝搬遅延および周波数シフトを求める処理を行う。ここで、ドップラー変化度|Δdl|と閾値δとの比をa=|Δdl|/δ>1とおく。
【0070】
ステップS108において、分割手段41は、
図9に示すように、ブロックインデックスlの中で処理ブロックをfloor[a]+1個のサブブロックに分割する。これにより、サブブロックは、処理ブロックのブロック長が等分された(N
block/floor[a]+1)サンプルとなる。分割手段41は、連続するサブブロック間を補間して得られるドップラー係数から伝搬遅延を求める。分割手段41の動作については、後で詳しく説明する。
【0071】
ステップS109において、サブブロック更新手段43は、音源時間信号s(n)を入力とし、サブブロックインデックスl’に対応する時刻インデックスの集合nl,の時間波形s(nl,)を音源波形サブブロックメモリ54に記憶させる。ステップS109において、サブブロックがサブブロックインデックスl’に対応して、順次、更新される。音源時間信号s(n)を式(18)に示し、時刻インデックスの集合nl,を式(19)に示す。
【0072】
【0073】
【0074】
ステップS110において、サンプル位置算出手段31は、処理ブロックの代わりにサブブロックを処理対象として、ステップS105で説明した処理と同様に演算処理を行う。具体的には、サンプル位置算出手段31は、補間処理手段32に出力する時刻インデックスの集合nl,’を求める。時刻インデックスの集合nl,’を式(20)に示す。
【0075】
【0076】
式(20)において、Nblock’’はサンプル数(Nblock/floor[a]+1)のサブブロックl’の波形伸縮後のサンプル数である。dl,はサブブロックインデックスに対応するドップラー係数である。φl,は次の式(21)で表される初期サンプルズレ位置である。
【0077】
【0078】
ステップS111において、補間処理手段32は、次のようにして、波形補間処理を行う。補間処理手段32は、元の波形s(nl,)の離散信号からスプライン補間により連続関数であるスプライン関数f(n)(lNblock+(l’-1)(Nblock/floor[a]+1)≦n<lNblock+l’(Nblock/floor[a]+1))を求める。そして、補間処理手段32は、サンプル位置算出手段31から入力された時刻インデックスの集合nl,’をスプライン関数に代入し、小数サンプル遅延および周波数シフト後の波形s’(n)を得る。波形s’(n)を式(22)に示す。
【0079】
【0080】
ステップS112において、遅延処理手段33は、次の式(23)に示すように、サンプル遅延floor[τl,’fs]だけ波形をずらす処理を行う。
【0081】
【0082】
サブブロック更新手段43は、遅延処理手段33からサブブロックインデックスの情報を受信すると、サブブロックインデックスを更新し(ステップS113)、ステップS109に戻る。制御部4は、ステップS109~S113の処理をサブブロックインデックスl’=1,・・・,L’(ただし、L’=floor[a]+1)まで繰り返す。これにより、ステップS104において、ドップラー係数変化度が閾値δより大きいと判定される場合のブロックインデックスlについて、伝搬遅延および周波数シフトされた後の波形が、遅延処理手段33から出力される。
【0083】
処理ブロック更新手段21は、遅延処理手段33からブロックインデックスの情報を受信すると、ブロックインデックスを更新し(ステップS114)、ステップS102に戻る。制御部4がステップS102~S114までをブロックインデックスl=1,・・・,Lまで繰り返すことで、全時間の音源波形について、伝搬遅延および周波数シフトされた後の波形が遅延処理手段33から出力される。このようにして、波形の連続性を担保しながら、受波点における、伝搬遅延および周波数シフトを模擬した信号が生成される。
【0084】
次に、
図8に示したステップS108の処理における、分割手段41の動作について、
図7、
図9および
図10を参照して説明する。
図10は、
図8に示したステップS108の処理における、分割手段の動作手順の一例を示すフローチャートである。
【0085】
ドップラー係数変化度|Δdl|=aδ(a>1)であるとき、演算処理の負荷を軽減するために、ドップラー係数が線形に変化すると仮定する。ステップS201において、ブロック長算出手段141は、元の処理ブロック長をfloor[a]+1個に等分することで、サブブロック間のドップラー係数変化度を閾値δ以下にすることができる。すなわち、ブロックインデックス内のfloor[a]+1個のサブブロックのドップラー係数は、以下(式(24))に示すようになる。
【0086】
【0087】
次に、伝搬遅延補間処理手段142は、上記のように補間によって得られたドップラー係数から式(9)を変形して得られる式(25)によって、伝搬遅延を逐次的に得る(ステップS202)。
【0088】
【0089】
ここで、伝搬遅延補間処理手段142は、初期サブブロック伝搬遅延として、τ
1’=τ
1を使用する。伝搬遅延補間処理手段142は、これをl’=1,2,・・・,floor[a]について解くことで、伝搬遅延サブメモリ55に記憶させる情報を得る。
図9の下段に、伝搬遅延サブメモリ55が記憶する情報を示す。
【0090】
本実施の形態1の信号生成装置1は、波形に対して信号処理の単位である処理ブロック毎の伝搬遅延を記憶する記憶手段と、係数変化度算出手段と、判定手段と、分割手段と、サンプル位置算出手段と、補間処理手段と、遅延処理手段とを有する。記憶手段は、例えば、伝搬遅延メモリ52である。係数変化度算出手段22は、伝搬遅延に基づいて、連続する処理ブロック間のドップラー係数変化度を算出する。判定手段23は、ドップラー係数変化度が予め決められた閾値以下であるか否かを判定する。分割手段41は、ドップラー係数変化度が閾値よりも大きい場合、処理ブロックを複数のサブブロックに分割する。サンプル位置算出手段31は、伝搬遅延に基づいて、サブブロック毎に補間が必要なサンプル点位置を算出する。補間処理手段32は、サンプル点位置に基づいて、サブブロック毎に補間処理を実行する。遅延処理手段33は、伝搬遅延に基づいて、補間処理後のサブブロック毎にサンプル遅延を実行する。
【0091】
本実施の形態1によれば、ドップラー係数変化度に対して閾値判定を行い、ドップラー係数変化度が小さい場合、処理ブロックの単位で波形を推定し、ドップラー係数変化度が大きい場合、処理ブロックをよりブロック長の細かいサブブロックに自動的に分割して波形を推定する。音源が受波点よりも遠方にあり、ドップラー係数の変化が緩やかな場合、処理ブロックの単位で処理するため、必要な演算の計算コストが少なくてすむ。また、音源に対して受波点が最接近距離(CPA:Closest Point of Approach)付近のように近く、ドップラー係数が急に変化する場合、処理ブロックを複数のサブブロックに分割して処理するため、波形の位相的連続性だけでなく、ドップラー変化の連続性も模擬することができる。本実施の形態1は、ドップラー係数の変化率に対応して推定する適応的なブロック長でブロック伸縮方式を適用することで、処理ブロック間でドップラー係数が大きく変化しても、模擬する信号の波形の連続性を担保するとともに、計算コストを削減できる。
【0092】
第1の比較例は入力される処理ブロックの長さも出力される処理ブロックの長さも同じで、かつ一定であるのに対し、本実施の形態1では、ドップラー係数の変化率に対応してブロック伸縮方式を適用して模擬信号を推定することができる。
【0093】
第2の比較例は1サンプル毎に伝搬遅延を表現して遅延フィルタを畳み込んで波形を伸縮させるため、計算コストが大きくなる。これに対して、本実施の形態1は、処理ブロック毎の伝搬遅延を用いて、ドップラー係数変化度が閾値以下の場合、処理ブロック単位で演算処理を行っているため、計算コストを削減することができる。
【0094】
第3の比較例は処理ブロック内でドップラー係数が一律なので処理ブロック内でドップラー係数が大きく変化する場合に模擬信号の精度が低くなる。これに対して、本実施の形態1は、ドップラー係数の変化率に対応して適応的なブロック長でブロック伸縮方式を適用して推定するので、計算コストを抑制するとともに、模擬信号の精度を向上させることができる。
【0095】
(本実施の形態1の利用形態の説明)
上述の実施の形態1では、音の伝搬を例に説明したが、波であれば、例えば、レーダに用いられる電波にも適用できる。
【0096】
上述の実施の形態1において、伝搬遅延メモリ52が全処理ブロックの伝搬遅延時間の情報を記憶する場合で説明したが、伝搬遅延の算出には、連続する3つの処理ブロックの遅延時間があればよい。具体的には、処理ブロックlと、処理ブロックlに続く処理ブロックl+1および処理ブロックl+2とのそれぞれの遅延時間である。伝搬遅延メモリ52は、保持する処理ブロックlおよび処理ブロックl+1のそれぞれの伝搬遅延と、新たに算出された処理ブロックl+2の伝搬遅延を保持する。そして、伝搬遅延メモリ52は、
図8に示したステップS107またはS111の処理がされた後、ステップS102の処理において、処理ブロックlの伝搬遅延を消去し、処理ブロックl+1および処理ブロックl+2のそれぞれの伝搬遅延を保持する。伝搬遅延メモリ52は、記憶する伝搬遅延および消去する伝搬遅延を順次変えることで、必要なメモリ容量を削減できる。処理ブロック更新手段21が、上述のようにして、伝搬遅延メモリ52が記憶する情報の管理を行ってもよい。
【0097】
また、
図8のステップS106およびS111の波形補間処理について、サンプルデータ点を必ず通り、ブロック境界点の1次微分および2次微分が連続し、任意の位置の値を出力しやすいスプライン補間を例に説明したが、この補間方法に限らない。任意の補間位置の値を出力することができる補間処理であれば、計算量と後段の信号処理への影響を勘案して、線形補間またはラグランジュ補間等を用いてもよい。
【0098】
上述の実施の形態1では、単体の情報処理装置の場合で説明したが、複数の情報処理装置を有する信号生成システムであってもよい。
図11は、実施の形態1に係る信号生成システムの一構成例を示すブロック図である。信号生成システム10は、情報処理装置101~103を有する。情報処理装置101~103は、インターネット等のネットワーク200を介して互いに接続される。情報処理装置101は
図6に示した記憶部3を有する。情報処理装置102は
図6に示した制御部4のサンプル位置算出手段31、補間処理手段32および遅延処理手段33を有する。情報処理装置103は
図6に示した制御部4の処理ブロック更新手段21、係数変化度算出手段22、判定手段23、分割手段41およびサブブロック更新手段43を有する。
図11に示す構成例の場合、本実施の形態1の信号生成方法の実行に必要な演算処理を複数の情報処理装置101~103が分担して行うため、演算処理のスピードを速くすることができる。
【符号の説明】
【0099】
1 信号生成装置
2 入力部
3 記憶部
4 制御部
5 出力部
10 信号生成システム
11 メモリ
12 CPU
21 処理ブロック更新手段
22 係数変化度算出手段
23 判定手段
31 サンプル位置算出手段
32 補間処理手段
33 遅延処理手段
41 分割手段
43 サブブロック更新手段
51 音源波形ブロックメモリ
52 伝搬遅延メモリ
53 サブメモリ
54 音源波形サブブロックメモリ
55 伝搬遅延サブメモリ
101~103 情報処理装置
141 ブロック長算出手段
142 伝搬遅延補間処理手段
200 ネットワーク