こんにちは!やべちゃんです。
今日のテーマは「アナログからデジタルへ」です!
標本化や量子化など、普段耳にしないワードが出てきて混乱する人も多いと思います。
簡単に説明するので、マスターしちゃいましょう!
そもそもアンログとデジタルの違いって?
アナログとデジタル、この2つのワードは聞いたこともあるかもしれません。
時計を例に考えていきましょう。
アナログ時計とは、ハリがついているタイプの時計です。
今回はその中でも秒針が連続的に動く(カチカチ鳴らない)ものを考えましょう。
アナログ時計で秒針は連続的に動いています。
1秒の次は2秒というわけではなく1.00000001秒も1.0000000000000001秒も表現しているわけです。
対してデジタル時計(スマホの時計のように14:05:03などと表示されるもの)は1秒ごとに表示が増えていきます。
1秒と2秒の間の時間は分かりません。
そう、アナログとは「連続した」という意味です。
普段我々が目にする「人の顔」「木」「家」「歌声」など全てアナログ情報です。
アナログ情報では、常に動いている情報をそのままの状態で扱います。
一方、デジタルとは「段階的に」という意味で、情報を切り取り、区切った状態で扱います。
アナログデータからデジタルデータへ
さて、ここからが本題です。
自然界にある情報はアナログデータです。
海の色も、鳥の声も、雪の冷たさも
しかし、コンピュータというのは所詮計算機。
0と1で表された情報しか扱うことができません。
例えば色を指定したいときには
「空みたいな鮮やかな青!」では分からず、「#85b5e1」とデジタル情報で指定する必要があります。
(色の指定方法などについては、いずれ記事にしますね)
ここで必要になってくるのが自然界のアナログデータをコンピュータでもわかるデジタルデータに変換する作業です。
ここでは「標本化」「量子化」「符号化」という3つのキーワードが出てきます。
標本化
情報は時間で刻一刻と変化しています。
0.000000000001秒後でも同じ情報であるとは限りません。
しかしコンピュータは連続値は扱えないのでしたよね。
そこで、横軸に目盛りを打っていきます。
例えば0.01秒ずつ目盛りを打つとどうでしょうか?
ある程度、波形は表現できていますね?
このように、データをある範囲で区切る(目盛りを打つ)ことを標本化といいます。
1秒間に何回区切るかを標本化周波数といい、この標本化周波数が大きいほど元の波形を忠実に再現できます。
しかし、標本化周波数が大きすぎるとデータの容量が大きくなってしまうので、適切な周波数を選択することが必要です。
量子化
さて、標本化でいつのデータをデジタルに変換するかを決めました。
次はy軸、に目盛りを打って行きましょう!
時間(横軸)と同様に、縦軸もアナログデータは連続的です。
つまり、標本化しただけだと縦軸の値が1.204945686…や54.3474345043….など少数でも表しきれない値になってしまいます。
そこで登場するのが量子化です!
例えば縦軸に0.01刻みの目盛りをつけて1.204945686…は1.20!、54.3474345043…は54.35!と表現できるようにしていきます。(四捨五入みたいなものですね)
このように、縦軸をある範囲で区切る(目盛りをつける)ことを量子化と言います。
量子化の段階値に割り振るビット数を量子化ビット数といいます。
例えば、色は赤緑青の3色がどの程度混ざっているかで表しますが、それぞれの色は0~255の256段階で表現されます。
この時、それぞれの色は256=28 で表しているので、量子化ビット数は8になります。
これも標本化周波数と同様、大きくするほど元波形に近づきますが、大きすぎるとデータ容量も大きくなってしまうので適切な値を選択することが必要です。
まとめ
今日はアナログデータをデジタルデータに変換する作業について解説しました。
標本化:一定の時間や場所で区切ること
量子化:縦軸(目的の変数)を一定間隔に区切って、四捨五入すること
標本化と量子化は似ていますが、それぞれ区切っている軸が違います。
そこがわかれば、怖いものはありません!
ではまたっ!