DIGITAL SIGNAL PROCESSING
— WITH YARUO & YARANAIO —
やる夫で学ぶ
ディジタル信号処理
フーリエ級数からディジタルフィルタの設計まで。 数式を恐れるやる夫と、容赦なく数式を出してくるやらない夫の対話に、 スライダーで動かせる32個のインタラクティブデモを添えて、 「式が何をしているのか」を目で確かめながら進む信号処理の入門教材。
目次
この教材が何で、誰のためで、どう読めばいいか。数式とデモの使い方、そして元ネタへの敬意について。
1 フーリエ級数「複雑な波は単純な正弦波の足し算で作れる」という信号処理の根本思想を、フーリエ級数とフーリエ係数の導出から学ぶ。
2 複素指数関数型のフーリエ級数sinとcosの2本立てだったフーリエ級数を、オイラーの公式で複素指数関数1本にまとめる。負の周波数と回転ベクトルのイメージを手に入れる。
3 フーリエ変換周期を無限大に伸ばすことでフーリエ級数を周期的でない信号に拡張し、フーリエ変換を導く。矩形パルスとsinc関数、デルタ関数という最重要の変換対も手に入れる。
4 離散時間信号連続信号を一定間隔でサンプリングした離散時間信号の記法と、正規化角周波数 ω=ΩT の意味、そして「ωとω+2πの区別がつかない」という離散時間ならではの性質を学ぶ。
5 離散時間フーリエ変換離散時間信号 x[n] に対するフーリエ変換、すなわち離散時間フーリエ変換(DTFT)を導く。スペクトルが必ず 2π 周期になることと、第3章で予告した「時間が離散⇔周波数が周期的」の対応を確かめる。
6 離散フーリエ変換DTFT の連続変数 ω を離散化して、有限のデータだけで計算できる離散フーリエ変換(DFT)を導く。周波数を離散化すると時間側が周期的とみなされる双対、行列としての DFT、そして高速計算法 FFT までを一気通貫で見る。
7 フーリエ変換の性質(1): 時間シフトと変調波形を時間的にずらす操作と、波形に高周波を掛ける変調。この2つがフーリエ変換の世界では「位相を傾ける」「スペクトルを引っ越す」というきれいな形になることを見る。
8 フーリエ変換の性質(2): たたみこみと積 — 線形時不変システムの入出力信号処理の心臓部、たたみこみ。線形時不変システムの出力がなぜ入力とインパルス応答のたたみこみになるのか、そして「時間のたたみこみは周波数の掛け算」というフィルタリングの原理まで辿る。
9 フーリエ変換の性質(3): パーセバルの等式 — 正規直交展開としてのフーリエ変換「エネルギーは時間で測っても周波数で測っても同じ」というパーセバルの等式。その正体は、関数をベクトルとみなしたときの正規直交展開とピタゴラスの定理だと種明かしする。
10 サンプリング定理連続時間信号をサンプリングするとスペクトルがくし型関数のたたみこみで無限に複製される。複製が重ならない条件「fs > 2fmax」がサンプリング定理であり、ディジタル信号処理の存在そのものを支える土台であることを学ぶ。
11 スペクトル解析と窓関数「FFTでスペクトルを見る」の中身を実務の手順として分解する。アンチエイリアスフィルタの必然性、有限区間切り出しが生むスペクトル漏れ、そして窓関数の分解能とサイドローブのトレードオフを学ぶ。
12 ディジタルフィルタの基礎「いらない周波数だけ消したい」という要求から出発し、たたみこみで動くFIRフィルタと、フィードバック付き差分方程式で動くIIRフィルタという2大方式の仕組みと利害得失を学ぶ。
13 ラプラス変換微分方程式を代数方程式に変えてしまう道具、ラプラス変換を学ぶ。フーリエ変換に減衰因子を仕込んだものという正体、e^st が微分の固有関数だから効くという理屈、そして伝達関数と極・安定性まで。
14 z変換ラプラス変換の離散時間版である z変換を学ぶ。遅延が z^{-1} 倍になる性質で差分方程式が有理関数 H(z) に化け、部分分数展開でインパルス応答が読める。安定の境界は単位円として現れる。
15 ディジタルフィルタの解析伝達関数 H(z) を単位円上で評価して周波数特性を読む。極と零点の幾何学的解釈、安定性、線形位相と群遅延までを一気通貫で押さえる。
16 ディジタルフィルタの設計欲しい周波数特性からフィルタを逆算する。FIRは理想応答を窓で切り出し、IIRはアナログの名設計を双線形変換で借りてくる。