サンプリング定理(標本化定理)をたぶん理解したのでざっくりまとめてみる

シャノンのサンプリング定理(標本化定理とも呼ばれる)をたぶん理解したので、忘れないうちにアウトプットしておきます。(1次元のみ)

注)自分にとっていちばん分かりやすい言葉でざっくりまとめてますので、数学的な厳密さを求める方は読まないことをおすすめします。


グラフも載せたいんですがめっちゃ手間がかかりそうなので、ひとまずテキストのみでお送りします。

まずは用語の確認

サンプリング(標本化)とは?

サンプリング(標本化)とは、一定間隔ごとの値だけをサンプルとして保持し、他は捨てること。

例えば、
「x=f(t)を間隔Tでサンプリング」
⇔「t=…,-2T,-T,0,T,2T,…のときのxの値のみを保持し、他は捨てる」
⇔「f(nT)の値のみを保持し、他は捨てる(nは整数)」

周波数とは?

ものすごーくざっくり表現すると、上の例で言うところの「xの変化の速さ」。周波数が大きいほどx(縦軸)の値が激しく動く。

ここから本題

サンプリング定理って何のためのもの?

サンプリングするときの間隔Tをどのくらいにしておけば『良い感じ』にサンプリングできるのかを示したもの。

Tが大きければ、データ量は少なくて済むけど、その分データの質が悪い(音質や画質が悪くなるイメージ)。
Tが小さければ、データの質は良くなるけど、その分データ量が多くなってしまう。

なので、それなりにデータの質が良くなり、かつデータ量はできるだけ小さく済むような、『ちょうど良い感じ』のTを求めたい

『ちょうど良い感じ』とは?

サンプリング定理における『ちょうど良い感じ』の基準は、「サンプリング後のデータから元のx=f(t)を復元できる最大のT」。

元のx=f(t)を復元できるってことはそれなりにデータの質が良いと言える。そのなかで最大のTを求めておけば、データ量もできるだけ小さくて済む。

サンプリング後のデータから元のf(t)を復元って不可能では?

サンプリング後のデータ : 点の集まり
元のx=f(t) : 線(曲線)

なので、「サンプリング後のデータから元のf(t)を復元」とは、つまり「点の集まりから元の線(曲線)を求める」こと。点と点の間の線の引き方なんて無限にあるんだから、元の線を復元するなんて不可能に思える。

けど、『限られた条件下』では出来るらしい。『限られた条件』とは、『周波数(≒xの変化の速さ)に上限がある』というもの。(『帯域制限されている』と表現されることが多い)

つまり、周波数をωで表すとすると、|ω|<=W となるWが存在すれば、『良い感じのT』を選ぶことによって「サンプリング後のデータから元のx=f(t)を復元することが出来る」らしい。(不正確であることを承知であえてスペクトル分解には触れてません)

「フーリエ変換」やら「フーリエ逆変換」やら「畳み込み」やらを使うと証明出来る。ここでは割愛。

これがサンプリング定理だ!

サンプリング定理(標本化定理)
x=f(t)の周波数ωが最大値Wをもつとき、間隔T=1/2Wでサンプリングすれば、サンプリング後のデータから元のx=f(x)を復元できて、良い感じ!

注)見ての通り正確なサンプリング定理ではありません。わたしなりに噛み砕いたものですのでご注意ください。

感覚的にも何となく正しい感じがする

サンプリング定理から、「周波数ωの最大値が大きければ大きいほど、細かい間隔でサンプリングしないと良い感じにならない」ことが分かる。

「周波数ω」≒「xの変化の早さ」なので、
「周波数ωが大きい」≒「xが急に変化する」≒「x=f(t)のグラフの波の間隔が狭い」
ということは、
「周波数ωの最大値」≒「x=f(t)のグラフの波の間隔がいちばん狭いところの狭さ」

つまり、ざっくり言うと「グラフの波の間隔がいちばん狭いところの狭さが狭ければ狭いほど、細かい間隔でサンプリングしないと良い感じにならない」ということ。

逆に言うと、「グラフの波がゆるやかであればあるほど、広い間隔でサンプリングしても良い感じになる」。

これは感覚的にも正しい感じがする。

ちなみに、どうやって元のx=f(t)を復元するかというと…

sinc関数という関数を各サンプル点t=n/2W(nは整数)で重ね合わせる(足し合わせる)ことで復元できる。(これが出来ることを示したのがサンプリング定理である、とも言える)

式にすると以下のような感じ。

元のf(t)を求める式

元のf(t)を求める式

f(n/2W)は各サンプル点におけるxの値、つまりサンプリング後にも保持されているデータであることを踏まえると、確かにこの式は「サンプリング後のデータから元のf(t)を復元」している。

以上、ざっくりしたサンプリング定理のまとめでした!

いろいろ不正確なのはご容赦頂きたいですが、明らかに間違っている部分がありましたら、コメントやツイッターでご指摘頂けると幸いです。

参考資料

今回、サンプリング定理を理解するにあたって下記の資料にたいへんお世話になりました。こんな素晴らしい資料を無料で公開してくださっていることに心から感謝します。今後もお世話になる予定です。

やる夫で学ぶディジタル信号処理

<

「名前とメールアドレスを入力」または「ツイッター等のアカウントでログイン」することでコメントを残せます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

サイト内検索

up!