科目学習書●メディアテクノロジー論



変化する数量の表現
量子化・標本化・線形化


|

http://www.infonet.co.jp/apt/March/syllabus/MedTech/digitizing.html




数列


 数をいくつも並べたものを数列(series)という。情報として実際に役立つのは、単独の数よりも、数列であることの方が多い。

1 2 4 8 16 32 ...
1.02 1.14 0.02 -0.06 1.21 1.18 ...

数列

 数列を記録/通信する場合は、並んでいる数を先頭から順に符号化して、それを担体(carrier。記録/通信のために情報を収納させるもの。例:CD、電波)に書き込んでいく。担体は、かなりの個数のビット列を一列に収められる(流せる)ようになっているので、数列が書き込まれた担体から符号を順に読み出して復号していけば、もとの数列を再現することができる(▽図)。
 記録/通信されている数列を読み出す場合は、末尾を通り過ぎてしまわないようにするためのしかけが必要になる。このしかけは、途中まで記録されている数列の末尾に次の数を書き足す場合にも必要になる。


関数


 数量(正確には値とオーディオはこのような考え方に基づいて取り扱われている音の情報だ。CDBS/CSではオーディオを関数として(実際にはここで学習するように標本化+量子化したものを)記録/放送している。スチルビデオも同じように関数として表現されている。



関数

 これを標本化+量子化すると数列ができる(▽図下)。この数列のそれぞれの項は、一定の間隔であらかじめ決められているそれぞれの時刻での圧力を表している。そして、全体としてはもとの関数の性質のうちのかなりの部分を内蔵している。
 オーディオCD(正確にはCD-DA)やBS/CSの電波の中では、数列は、個々の数を表すビット列の符号を順番につないだものとして記録/通信されている。最後を明らかにしておかなければならない場合には、テキストの場合と同じように最後を表す印がついている。

2 6 8 6 ....

×××○ ×○○× ○××× ×○○× ...
(実際には隙間はない)

数列(上)とそれを表現するビット

 オーディオビデオを構成する数列はとても長く、それをそのまま記録/通信していたら、媒体が足りなくなったり、再生するのに間に合わなくなったりする。つごうのいいことに、オーディオビデオの数列にはいろんなくせがあるので、そこを省略してずっと短くしてからビット列を作るようにしている。JPEGMPEGは、こうした取扱いについての規約の一つだ。
 見たり聞いたりする側では、省略された部分を推定によって補って再生する。


標本化


 数列は、それぞれの項目を表現するビット列の列として表現することが可能だ(▽図)。
 しかし、ほとんどの関数については、これと同じ手法は使えない。その一つの理由は連続性にある。
 たとえば、音は時刻の関数としての圧力(時刻の推移につれて変化する圧力)と見なすことができる。しかし、数列の番号と違って時刻は切れ目なく連続しているから、全部の時刻に対して圧力を書き並べることはできない。
 幸いなことに、人の音を聞く能力にはもともと限界があって、あまり高い音は音として聞き取れない(資料[耳])。人が音として聞き取れる最も高い音の振動数は20kHzぐらいまでで、これより低い音なら、せいぜい40kHzの細かさで記録してあれば、省略されてしまった情報を推定して補うことによって、完全に再生できることが分かっている(=標本化定理)。つまり、聞くことだけが目的なら、圧力の変化を完全に全部の時刻に対していちいち記録しておく必要はない。
 そこで実際には、一定の間隔の時刻ごとに圧力を測って記録/通信することが行なわれている。この処理を標本化(sampling)という。
 音の場合だと、時刻-圧力の関数を数列で表現するためには、関数を左右(時刻の方向)にいくつかに切って、その切れ目に当たる時刻の圧力の情報だけを選び出す。オーディオCDの場合では、時刻の分割の細かさは44.100kHzにすることが決められている。

 標本化はもとの音に対する近似なので、標本化を経て記録/通信した情報からは、もとの情報の一部が欠けてしまっている。



標本化

 標本化はどのように行なわれるのか、なぜ避けられないのか、それなのになぜ困らないか学習しよう(資料[標本化])。

 わざと低い精度で標本化した音を聞いて、精度が品質にどう影響しているか確かめなさい。


量子化


 多くの(特に音や像に関係のある)関数は、整数ではなく実数の値をとるので、たとえ範囲が限られていても、無数の変化が考えられる。ビット列の種類は、多いとはいっても無限ではないので、長さを決めてしまったら、関数の値がたまたまどれにもあてはまらないことがきっとある。
 実は、音の場合については、圧力の値はそう正確に測れなくてもいい。せいぜい数万段階の圧力の違いが区別できるぐらいに記録されていれば、わたしたちの耳で聞き分けられる範囲では十分な品質で再生できる。
 そこで実際には、圧力をほどほどの精度に丸めた値を記録/通信することが行なわれている。この処理を量子化(quantizing)という。
 音の場合だと、時刻-圧力の関数を数列で表現するためには、関数を上下(圧力の方向)にもいくつかに切って、圧力の値をその切れ目に合わせて丸めなければならない。オーディオCDの場合では、圧力の分割の細かさは16ビット(=216段階)にすることが多い。
 量子化ももとの音に対する近似なので、量子化を経て記録/通信した情報からは、もとの情報の一部が欠けてしまっている。



量子化

 量子化はどのように行なわれるのか、なぜ避けられないのか、それなのになぜ困らないか学習しよう(資料[量子化])。

 わざと低い精度で量子化した音を聞いて、精度が品質にどう影響しているか確かめなさい。


線形化


 現在の技術で、情報の記録/通信の中心にあるのはコンピュータだが、基本的に言って、コンピュータは一度に一つのもの(たとえばビット列)しか処理できない。これをvon Neumann のボトルネックという。
 オーディオもスチルも関数だが、それぞれの変域には、時刻と平面という違いがある。時刻は直線状になっているので、標本化/量子化した結果を一列に並べて処理することが可能だが、平面は上下にも左右にも拡がっていて一列にはなっていない。そのため、スチルを記録/通信するためには、平面を近似的に直線状に変形させる必要がある。
 たとえば、これまでの写真(銀塩写真とも)では、フィルムの表面に無数に撒かれた感光性の粒の化学変化によってスチルを記録してきた。この変化はフィルムに光を当てたり薬に漬けたりすればフィルムのどこでも同時に起こる。それに対して、ビデオやコンピュータでは、von Neumann のボトルネックのため、同時に無数の記録/再生を行なうことはできない。
 この問題を解決するため、線形化という処理が行なわれる。
 スチルは、縦横に並んだの格子になっている。この格子のます目をセル(cell、▽図)といい、左右に並んだ一列のセルをまとめてラスタ(raster)という(資料[セル])。ラスタを上端から順につないでいくと長いセルの列ができる。こうすれば、スチルも音と同じように扱うことができるようになる。
 1本につなぎ合されたラスタは、ほとんどの所では(少なくとも左右については)実際と同じ並び方になっている。しかし、ラスタのつなぎ目については実際の隣り合わせとは違う並び方になっているので、そこだけは特別な取り扱いが必要になる。



スチル
セル(太線で囲まれた部分)とラスタ(細線で囲まれた部分)

 写真は(モノクロなら)平面に対応する明るさの関数と見なすことができる。先生が写真を配るので、標本化(8×8)、量子化(4ビット)、線形化してみよう。また、その結果からもとの写真が再現できるか試してみよう。



もっと深く学習するための問題

Q&A


|


Copyleft(C) 2005, by Studio-ID(ISIHARA WATARU). All rights reserved.


最新更新
05-05-12