• ベストアンサー

標本化定理をわかりやすく教えて!

”あるアナログ的な信号をデジタルデータにサンプリングする場合、原信号に含まれる周波数成分をすべて正確にサンプリングするためには、原周波数の2倍以上のサンプリング周波数が必要となる。これを標本化定理という。” と言うことですが、サンプリングした時点で途中の情報を捨てているのに何故完全に復元できるのか、納得できません。 出来れば絵付きでわかりやすく説明してください!お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kimball
  • ベストアンサー率100% (1/1)
回答No.6

sin,cos もちゃんと習ったし、フーリエ展開ってのもわかった(つもり :-)、 だけど、周波数て結局何なんだ?、標本化定理の式は何を意味して いるんだろう? というのが貴方の質問かと思います。 (小生も、理系の大学を出たものの、下記本に出会うまでは  ちいとも理解していないことに気がついたのです。) 講談社 ブルーバックス ディジタル・オーディオの謎を解く  天外伺朗 著 ISBN4-06 13268005 C0255 P600E を読めば、目から鱗がとれること、請け合いです!! 残念ながら、今現在はAmazon.co.jpでもその他大手のWeb本屋でも 手に入らない可能性が大です。 ちなみに、著者名:天外伺朗(てんげ・しろう) はAIBOでおなじみのソニーの 土井さん(らしい)です。 本当に理解している人だから、こういう 素晴らしい説明が書けるものだと感心せずにはいられません。 貴方がもし、教師でしたらどんなことをしても手にいれるべき本だと おもいます。(この本では、ほかにCDに欠かせないクロスインタリーブ 符号の原理もあっとおどろくほど明快に記述されています。) --------------- 以下、小生なりに上記バイブルの内容をまとめてみたものを投稿して おきます。( 周波数、標本化の説明のところだけ) (具体的説明の為、音の周波数とします。また、図がずれますので  固定フォントにしてみてください) さて、電波にせよ音にせよ、自然界にある波動は時間の周期関数です。 ですからその意味での周波数が定義できます。しかしこの時の周期をもって 描かれる曲線(F(t))は、いわゆるsin/con curveではない、複雑な任意の 形状をした曲線です。 そこで、人間はそういう形は複雑でも周期をもって いる曲線をなんとかもっと分析しやすくする方法はないものかと考えた のです。 で、フーリエさんという人が熱の伝導を研究しているときに 熱の分布の周期関数ってのはsin/conの基本周期とその倍数周期の足し合わせ になることを証明しちゃったわけです。 つまり、周期関数ってのは (実は周期関数でなくても任意の関数でいいのですが)sin/conの足し合わせ で表せるということです。 これは、3次元空間の座標にたとえると、ある 任意の座標を決めるにはx,y,zという直交する座標軸を決めて、その各座標値 で示せるというのと同じです。 ちょっと違うのは周期関数の場合は座標軸に あたるのが、sin/cos関数という関数ということです。しかも無限にある。 さて、ここで周波数のもうひとつの意味がおわかりになると思います。 そう、いわゆる周波数スペクトル(分析)の周波数というのは、こうした sin/cos 関数の基本周期・倍周期を指しているのです。基本周期は分析対象 となる元の周期関数の周期をとります。 そしてこれで、”帯域制限”の意味もおわかりになると思います。 上記で、”無限”にあるsin/cos関数といいましたが、音の場合で いうと20KHz(sin/cos の倍周波数)で止めても、もとの周期関数 (音)の形にはちいとも影響がないと仮定するというか、してしまう わけです。 そうそう、あと、sin/cosと2種類の関数の足し合わせですが、実は これはsinかcosかどっちかの関数1種類にしてしまいます。  sin(a+b) = cos(a)sin(b)-sin(a)cos(b)  とかの公式で  a*cos(x) + b*sin(x) = c*sin(x+d) c= sqr(a*2+b*2), d=tan(b/a) てな具合に変形できます。  FFT(高速フーリエ変換装置)なる機械で表示される周波数スペクトル の棒の長さは、実はこの”c”なる定数なのです。 つまり、任意の音をFFTにかけて、その周波数スペクトルをみると 下図のように表示されるのです。  うーん、ここで、元の音のなめらかな曲線図を書けないのがつらいですが、 どうか想像してください。 そのなめらかな周期曲線が周波数(もう、 間違わないでください、ここでいう周波数とはsin/cosという直交関数の きれいなcurveの周波数のことです)の含み具合が表示されるということです。   逆に言うと、下図のとおりの割合でsin/cos curveを足し合わせれば 元のなめらかな音の周期関数が再生できるということです。 | | * | * | * * | ** * | ****** | ******* | ******** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 20Khz ふー、やっとここで標本化定理です。 まず、驚くべき事実をいっちゃいます。標本化では、周波数(sin/cosの ほうでっせ)情報を失うようにおもわれますが、実際は逆なのです。 情報はうしなわれるどころか、おまけがついてきます。 ここでは、20KHzまでのsin/cosを残したいので、44KHzで標本を 取った場合(想像してください。元の音のなめからな曲線を44K個 の箇所でとったパルス上の棒グラフとすることです。) すると、その44K個のパルス上の棒グラフを周波数スペクトル分析 (FFT)にかけるとどうなるでしょうか? そう、下記になるのです!!  | | *...............* * | *...............* * | * *...............* ** * * | ** *...............* **** * | ******...........************ | *******.........************** | ********.......**************** ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 20Khz      44Khz               (44Khzのところを中心に               もとの周波数スペクトルの反転パターンを                     背中合わせにしたパターンが現れます) 標本化を44Khzと、20Khzの2倍よりはちょっと多めにしたのは 上記図で、もとのなめらかな周期関数を再生するのに十分な 周波数のかたまりと、標本化でできる余分な周波数のかたまりの 間に隙間ができるようにするためです。 そう、これがエイリアシング (Aliasing: Alias->"別名"というのが元の意味。)を防ぐということです。 もし、30Khzとかの20Khzの2倍以下の標本化をしてしまうと 下記図のようにAliasingが発生するわけです。こうなると 次にのべる再生方法では、もとの周期関数の再生は不可となることが わかるでしょう。 | | *........* * | *........* * | * *......* ** * * | ** *......* **** * | ******..************ | ********************* | ********************* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 20Khz  30Khz    44Khz  うーん、最後の説明の再生方法なんですが、これも想像してもらうしか ないです。 なんせ連続曲線図が書けないもので。 もう、おわかりでしょう、先にも書きましたが、もとのなめらかな 周期関数曲線を得るには、標本化で得られた20Khz以下のパターンだけを 取り出せばいいわけです。 そう、20Khzまでは100%素通りさせ、20Khz 以降の周波数はカットしてしまうフィルターを通せば良いのです。 (そんな理想的なフィルターは工学的にはできないそうですが) んで、なんで2倍なのか、3、4倍でもいいじゃないかという質問の 答えは、 2倍で十分な情報がとれるのに、そんな無駄な! ということ です。 高周波装置ってつくるのが難しいらしいですからね。 おわり。 (一気に書いて、見直しはしておりません。あしからず。       是非、バイブルをお読みくださいませ)

kenichi
質問者

お礼

非常にわかりやすい回答、ありがとうございました。 実はまだ学生で、通信工学で習ったのですが、講師が悪いのか私の頭が悪いのか(^^;)なかなか理解できなかったんですが、これまでの回答と今の説明でよくわかりました(つもりです)。 図書館でそのブルーバックスを探してみます。なければクロネコブックサービスか何かで探してみたいと思います。

その他の回答 (7)

  • nuubou
  • ベストアンサー率18% (28/153)
回答No.8

*****       *       *       ********************** f *****        *        *         ********************* f なんか0と1を入れたところで表示がおかしくなってしまいましたので もう一度送ります

  • nuubou
  • ベストアンサー率18% (28/153)
回答No.7

ジャスト2倍にすると理想lpfに近いものを使わないといけないので 信号を誤差なく復元することができないのです しかし2倍を大きく越えれば越えるほど 越えた分だけ緩やかなlpfで信号を復元できるのです 1******       *       * 0     *********************** f が 1******        *        * 0       ********************* f でいいのですから楽でしょう 1から0に急に落ちるフィルタが理想lpfです 1から0にどれだけ緩やかにできるかはどれだけ2倍を大きく越えたかにかかってきます  

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.5

sinc関数でもとの波形がどのように再現されるかの解説が十分書けなかったので、追加しようと思ったら、TCMさんがカキコしてくださいました。

  • TCM
  • ベストアンサー率44% (81/181)
回答No.4

 ARCさんとstomachmanさんの素晴らしい解説があるので不要でしょうが、私からも蛇足説明をひとつ。また原理的な話なので、ここでは量子化誤差については無視します。  確かにサンプリングするとサンプリング点以外の情報は捨ててしまいます。そのサンプリング点を通る曲線はどのようにでも描くことができそうで、ほんとに原信号を完全に復元ができるのか心配になりますよね。でも、ひとつ忘れていることがあります。それは原信号が帯域制限を受けているということです。もし、サンプリング点を勝手気ままに結ぶとすると、周波数成分が帯域制限内に収まらないことになるのです。ですから例の標本化定理の式  g(t)=Σ[g(n/2W)sin{2πW(t-n/2W)}/2πW(t-n/2W)] によって、サンプリング点以外のところもがちがちに決まってしまうという寸法です。感覚的な説明で失礼いたしました~。

kenichi
質問者

お礼

回答ありがとうございました!(^^) こういう感覚的な説明だと理論は難しくてもなんとか突破口がつかめますよね。ありがとうございました。

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.3

>ところで、何故2倍なのでしょう?3倍でも良さそうなのに。。。 あくまで、「2倍以上」であればよいので、3倍でも4倍でもかまわないのです。2倍が最低ラインっていうだけで。 実際、サンプリング周波数をより細かくすればするほど、元の波形に近いデータが得られるようになりますしね。

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.2

確かに、小難しく説明した本が多くて、困りますね。ここではデジタル化に伴う値の量子化の効果は別問題として無視することにします。 説明の順番が逆になりますが、まず、ナイキスト周波数について。 ●サンプリング周波数が、信号に含まれる最高周波数の2倍未満であると、エリアシング(Aliasing)が発生します。 まず実際にグラフを描いてやってみてください。 例えばサンプリング周波数が1である場合、 cos(0.125x2πt)という波形(周波数0.125)と、cos(0.875x2πt)という波形(周波数0.875)とが区別出来ません。或いは、cos(0 x 2πt)という波形(周波数0)と、cos(1x2πt)という波形(周波数1)とが区別出来ません。サンプリング周波数が1である場合、信号に0.5以上の周波数(xとする)の成分が含まれていると、あたかも0.5-xの周波数成分であるかのように見えてしまいます。これがエリアシングです。  つまり、エリアシングが起こると、元の周波数が幾らであったか分からなくなり、再現不能になります。サンプリング周波数の半分(ナイキスト周波数)以下の周波数成分しか含まない信号でないと、再現できる可能性はありません。 ●ナイキスト周波数以下の周波数成分しか含まない信号なら再生できること。 きちんと理解するにはフーリエ変換を一応知っていることが前提になります。 「周波数ωでサンプリングする」とは、数学的には元の関数f(t)にサンプリング関数s(t)をかけ算することです。s(t)は周期1/ωでスパイク(δ関数)が並んでいるものです。 s(x) = δ(x) + δ(x-1/ω) + δ(x+1/ω) + δ(x-2/ω) + δ(x+2/ω) + .....  |  |  |  |  |  |  |  |  |  |  |  |  |  | -+--+--+--+--+--+--+-> t サンプリングされたデータ{f(t) s(t)}をフーリエ変換して周波数空間に写したものは F(x) * S(x) です。ここにF(x)はf(t)のフーリエ変換:つまり元の信号のスペクトル、S(x)はs(x)のフーリエ変換、* は畳み込み積分(convolution)です。S(x)は周期ωでスパイク(δ関数)が並んでいるものです。このため、F(x) * S(x)は次のように表すことができます。 F(x) * S(x) = F(x) +( F(x-ω) + F(x+ω) + F(x-2ω) + F(x+2ω) + ...... ) (なぜならδ(x-c)*F(x) = F(x-c)) ここで「エリアシングが生じた」ということは、「|x|<ω/2の範囲において()内の部分が0でない」ということと同等です。一度混ざり合ってしまうと、分離は不可能になります。 またF(x) * S(x)は、xに関して、周期ωの周期関数になっています。 F(x)          ・            ・ ・・          ・    ・  ---+------+------+------+-> x    -ω     0      ω      2ω S(x) = δ(x) + δ(x-ω) + δ(x+ω) + δ(x-2ω) + δ(x+2ω) + .....    |      |      |      |    |      |      |      | ---+------+------+------+-> x    -ω     0      ω      2ω F(x) * S(x) (エリアシングがない場合)   ・      ・      ・      ・      ・ ・・   ・ ・・   ・ ・・   ・ ・・   ・    ・ ・    ・ ・    ・ ・    ・  ---+------+------+------+-> x    -ω     0      ω      2ω もしエリアシングがなければ、元の波形のフーリエ変換F(x)を再現することができます。それには B(x) = |x|<ω/2 なら1, さもなくば0 B(x)        +-----+        |     | ---+------+------+------+-> x    -ω     0      ω      2ω というフィルターを使います。このフィルターを掛けると (周波数空間では単にかけ算をすればよい) B(x) (F(x) * S(x)) = F(x) (B(x) * S(x)) = F(x) * δ(x) = F(x) となるからです。これはF(x) * S(x)の波形のうちの一つの周期だけを切り出すという操作です。 もしエリアシングが生じると(すなわちF(x)がx>|ω/2|においても0でないなら、図からわかるように)F(x) * S(x)は波形が裾野のところで重なり合ってしまうので、B(x)を使って切り出しても元のF(x)には戻りません。 サンプリングしたデータ (f(x) s(x))にB(x)の逆フーリエ変換であるフィルターb(t)を掛けても同じ事です。信号空間ではフィルターを掛けるには畳み込み積分を行いますから、 b(t) * (f(x) s(x)) = f(x) ということになる。ここで、b(t)とは sinc関数(「シンク」と読みます) b(t) = sin(πωt)/(πωt) です。b(0)=1、b(t) = -b(t)であることに注意して、グラフを描いてみてください。

kenichi
質問者

お礼

丁寧な回答ありがとうございました。

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.1

まず、「正確にサンプリング」は「完全にサンプリング」とは異なるのです。 デジタル化する以上、元の波形からの劣化は避けられません。 「正確にサンプリング」とは、元のデータが上り坂の時には、サンプリング後のデータも上り坂、同様に下り坂の時は下り坂、が保証される最低ラインだと思ってください。 以下、等幅フォントでお読みください。 ↑信号の強さ 4 3   /\      /\ 2  /  \    /  \ ←元の波形 1 /    \  /    \ 0/      \/      \ 0 1 2 3 4 5 6 7 8 9 10111213141516→(時間) 上図が周波数nの波形の4単位分だとします 同じ周波数でサンプリングした場合、波を検出する起点によって A:(0,0)(4,4)(8,0)(12,4)(16,0) …時間0を起点に検出を始めた場合 あるいは、 B:(2,2)(6,2)(10,2)(14,2)(18,2) …時間2を起点に検出を始めた場合 という値(時間,強さ)が得られます。 A:の場合は、まあ正確にサンプリングできたと言えますが、B:のようになってしまった場合、この信号は、起伏のない、平坦な波形であると解釈されます。 B:の場合のようなサンプリングミスを防ぐための最低ラインが、元の並みの周波数の2倍、というわけです。 A:同じ周波数でサンプリングした場合(起点0) 4 3   /\      /\ 2  /  \    /  \ 1 /    \  /    \ 0/      \/      \ 0 1 2 3 4 5 6 7 8 9 10111213141516→(時間) B:同じ周波数でサンプリングした場合(起点2) 4 3 2  ___________________________ 1  | 0  | 0 1 2 3 4 5 6 7 8 9 101112131415→(時間) 「倍の周波数」の場合は、メンドクサイのでパス(笑)。 御自分で手動サンプリングしてみてください。

参考URL:
どうだっ 絵付きだっ(笑)
kenichi
質問者

お礼

絵付きでどうもありがとうございました(^^) ところで、何故2倍なのでしょう?3倍でも良さそうなのに。。。そこの所も教えてもらえると嬉しいです。

関連するQ&A

  • 標本化定理(サンプリング定理、ナイキストノ定理)について

    標本化定理(サンプリング定理、ナイキストノ定理)について教えてください。 ”あるアナログ的な信号をデジタルデータにサンプリングする場合、原信号の各周波数成分をすべて正確にサンプリングするためには、原周波数の2倍以上のサンプリング周波数が必要となる。これを標本化定理という。”というのが基本的な説明だと思います。 この中で『2倍以上の』という表現がありますが、この点が疑問になっています。 例えば、20kHzのSin波を40kHzでサンプリングしたとして、サンプリングする点が丁度サイン波の振幅0の点だった場合、元のSin波の周波数は分かりますが、振幅は一意に決められないと思います。原信号を振幅も含めて復元するには、『2倍より大きい』周波数でサンプリングする必要があると考えるべきでしょうか?『2倍以上』という表現は厳密には正しくないと考えて良いのでしょうか? また、そもそもサンプリング定理は振幅情報を再現しないということであれば、疑問は解消されるのですが、その点はどうなんでしょうか?? どなたかご教授の程お願いいたします。

  • サンプリング定理とは何なんでしょうか……(汗)

     学校の課題でわからない所があるので教えていただきたいです……。  まず、サンプリング定理(標本化定理)って何なんでしょう?  それと――  それに関しての問題なんですが、『オーディオ信号の周波数帯域幅が20KHzである時、このアナログ信号をデジタル信号に変換するにはいくらのサンプリング周期でサンプリングすればよいか、サンプリング間隔(T)を求めよ』  という問題です。わかるかた教えていただきたいです。

  • 計測工学のジャンルに関する質問なのですが・・・

    周期Tのデルタ関数列でサンプリングを行う場合、以下の定理が成り立つ。信号f(t)が(1)より(2)い角周波数成分を含んでいない時、(3)秒ごとの標本値から元の連続信号が完全に復元できる。 人間は20[kHz]以下の音のみを聞き取ることができる。よって、音声や音楽をデジタル信号に変換する際、元のアナログ信号に含まれる人間にとって意味のある情報が失われないようにするためには、(4)[kHz]以下の周波数成分のみを通過させる(5)フィルタを通した後、(6)[kHz]以上のサンプリング周波数でサンプリングしなければならない。 問. (1)、(2)、(3)、(4)、(5)、(6)、に適した語句を答えなさい。 調べたところ、(1)π/T(2)高い(3)Tとなったのですがどうでしょうか? しかし、調べても(4)、(5)、(6)については全然わかりません。 標本化定理なるものは習ったのですが何をすればいいのかわからなくて困っています。 どうか解説をお願いします。

  • 標本化定理について

    標本化定理によると、信号の最高周波数をfmaxとするとき、標本化周波数fsはどのような条件を満たすことが必要か?数式で示しなさい。って問題が大学の試験ででたのですが、まったくわかりませんでした。 標本化定理がどのようなものかって程度しかネットワークの講義の中でも説明がなく、本屋に行って参考書とか見てみたのですが、ネットワーク関係の本では、標本化定理がどのようなものか簡単な説明しかされていませんでした。 この問題がわかります方いましたら、アドバイス下さい。 よろしくお願いいたします。

  • 情報処理の勉強しております。標本化定理で分からないところがあるので、質

    情報処理の勉強しております。標本化定理で分からないところがあるので、質問させて頂きます。 標本化定理すると、基本その周波数を最低2倍するとの事ですが、以下の二つの問題では =================================================================== 帯域が4Khzの音声信号を8ビットでディジタル符号化して伝送する場合、 標本化定理に従うと最低限必要とされる伝送速度は何kビット/秒か。 ア 8 イ 16 ウ 32 エ 64  答(エ) =================================================================== アナログ音響を4kHzでサンプリング(標本化)し、1標本を8ビットでディジタル化する場合、1秒間に 生成されるディジタルデータは何kビットか? ア 8 イ 16 ウ 32 エ 64  答(ウ) =================================================================== となります。1番目の問題はエになるのはわかりますが、2番目の問題は何故ウになるのでしょうか? 1標本を8ビットと書かれているので、2倍ではなく、単純に8ビット分掛ければいいのでしょうか? 可能でしたら、詳しくお願いします。 受ける資格は応用情報処理です。

  • 標本化定理について

    標本化定理によると、信号の最高周波数をfmaxとするとき、標本化周波数fsはどのような条件を満たすことが必要か?数式で示しなさい。って問題が大学の試験ででたのですが、まったくわかりませんでした。 標本化定理がどのようなものかって程度しかネットワークの講義の中でも説明がなく、本屋に行って参考書とか見てみたのですが、ネットワーク関係の本では、標本化定理がどのようなものか簡単な説明しかされていませんでした。 この問題がわかります方いましたら、ぜひアドバイス下さい。 よろしくお願いいたします。

  • ナイキスト周波数(間隔) 標本化定理

    複数の本やサイトを用いてナイキスト周波数や標本化定理,サンプリング周波数について,学んでいるものです. しかし混乱しました. ナイキスト間隔とは,元の信号を再現出来る最高の間隔でこれ以上の間隔でサンプリング(標本化)すると折り返し歪が生じるというような間隔,逆に言うと,これより小さなサンプリング間隔でサンプリングすれば良いと本に書いてありました. また,ナイキスト間隔の逆数はナイキスト周波数であり, サンプリング間隔の逆数はサンプリング周波数であるので, サンプリング周波数はナイキスト周波数より大きければ良い,と書いてあるのですが,ここが分けわかりません. Example 周期T=2の波をサンプリング間隔Ts=0.5でサンプリングした場合 周期の周波数はf=0.5Hz,サンプリング周波数はfs=2Hz この時, ナイキスト周波数はfn=1Hz,ナイキスト間隔は Tn=1なのでしょうか? だとすると,ナイキスト周波数以上でサンプリングすればいいという記述はどういった意味なのでしょうか?  サンプリング定理によると,(ローパスフィルタなどを用いずに)折り返し歪を防ぐには, 常にナイキスト周波数の2倍以上の周波数が求められるのだから, サンプリング周波数はナイキスト周波数の2倍以上なら良いと書くべきではないでしょうか? しかし自分でも感じるのですが,この結論もまた謎です^^;

  • 標本化定理と周波数関係

    標本化定理と周波数(f=1/(S*(ts+ta))から何Hz以下の信号ならば元の入力信号に復元可能かおしえてください。  S サンプリング数 ts サンプル&ホールド整定時間 ta A/D変換時間

  • 低周波で標本化する際、必要な処理とは?

    信号を標本化する際の周波数選びでは、サンプリング定理を基準にすると思います。 ここでもし、低周波で標本化をしたい場合には、どのような処理をしていればいいのか? 素朴な疑問なのですが、教えて頂けないでしょうか。宜しくお願い致します。

  • 標本化定理について

    |ω|=ωs/2 の成分を持つ信号では標本化定理が成立しない(標本点列に対応する信号が複数存在している)というのはどういうことなのですか?お願いします。あと、わかりやすいサイトなどあれば紹介してください