Chapter Fifty-three

第53話


さて、今回は信号の復元について書いてみよう。

一定間隔でサンプリングしたデータから任意の時刻の信号を再現する、デジタル化された時間をアナログの時間に戻す作業、時間のDA変換と言ってみようか。

下のグラフは7Hzでサンプリングしたデータだが、サンプリングする前の信号がどんなものだったのか想像して欲しい。

7Hzのサンプリングレートということは0.117sec間隔で信号をとらえることだ。実際にサンプリングした時刻と次のサンプリングの時刻の間でどのような変化があっても記録には残らない。

たとえば、サンプルデータを滑らかにつないで下のグラフのような信号を想像することもできる。

この黒い実線はスプライン関数を使って描いた。このような方法はよく使われるが、それらしいというだけであまり根拠がない。サンプリングがエイリアスの発生しない条件で正しく行われていたとすると、もっといいやり方がある。

ナイキストの定理にしたがって時間間隔Δtでサンプリングしてn=0からN-1までのN個のデータがあるとき、得られたデータx(nΔt)から次の関係で信号x(t)を復元することがでる。

もともとナイキストの定理は無限に続く信号と無限のサンプリングを前提にしているため、今回のデータのように途切れていると両端はあやしくなることに注意が必要だ。

Δtはサンプリング周波数の逆数なので(π/Δt)はπ×サンプリング周波数で計算した。求めたい時刻tを外側のループで変更しながら内側のループで右辺の計算を行っている。

このviを使うと根拠を持って、信号を復元することができる。下の図の一番下のグラフが、復元した結果だ。

前もって断っておいたように、復元した信号は両端ではなまっているがスプラインでなぞったものとは大違いだ。

もちろん複数の周波数が合成されている信号でも同様に復元することができる。

さて、信号処理についての話題が意外に長くなってしまったが、この辺りで一区切りにしよう。

See you!


Nigel Yamaguchi

戻る