画像と音声のデジタル化——条件からデータ量を計算する
画素数・色深度・標本化周波数・量子化ビット数を区別し、非圧縮データ量を求める。印刷密度と画素数、圧縮率と削減率の違いにも注意して、保存容量の見積もりを説明する。
- 画像の画素数と色深度から、条件を明示して非圧縮データ量を計算できる
- 標本化と量子化を区別し、音声の時間・チャンネル数を含めてデータ量を計算できる
- bitとbyte、MBとMiB、画素数と印刷密度を区別できる
- 可逆圧縮と非可逆圧縮の違い、および圧縮後の容量を求めるための追加条件を説明できる
📑 目次
1. まず「何を数えるか」と単位を決める
デジタル画像や音声の容量は、基本的には「値をいくつ記録するか × 1つの値を何bitで表すか」で考える。ただし、画像形式や音声形式の名前だけで容量が決まるわけではない。ここでは、まず非圧縮の画素データ・音声サンプルの本体を数え、その後に圧縮や付加情報を考える。数値例はすべて学習用に設定した架空のデータである。
| 単位 | この授業での定義 | 注意点 |
|---|---|---|
| bit | 0または1を表す情報の単位 | bと略すことがある |
| B(byte) | 1 B = 8 bit | bitからBへは8で割る |
| kB、MB | 1 kB = 1,000 B、1 MB = 1,000,000 B | 本記事では十進の接頭語を使う |
| KiB、MiB | 1 KiB = 1,024 B、1 MiB = 1,048,576 B | 二進の接頭語。MBと同じ値ではない |
| Hz、kHz | 1 Hzは毎秒1回、1 kHz = 1,000 Hz | 音声では毎秒の標本数を表す |
2. 画像:縦横の画素数と1画素当たりの情報
ラスター画像は小さな画素を格子状に並べて表す。横W画素、縦H画素なら、画素数はW × Hである。色深度d bit/画素は、1画素に割り当てるbit数を指す。このd bitを色の区別だけに使うなら、表現可能な符号の数は最大2のd乗となる。RGBの各成分を8 bitで表す場合、各成分は256段階、1画素は合計24 bit = 3 Bで、組合せは16,777,216通りになる。これは人がすべての色の違いを見分けられるという意味ではない。
横1,600画素、縦900画素、RGB各8 bitの画像を非圧縮で保存する。透明度や付加情報はなく、行末の埋め草もない。データ量をBとMBで求めよ。さらに縦横の画素数をそれぞれ2倍にすると何倍になるか。
解答・解説
画素数は1,600 × 900 = 1,440,000。1画素は24 ÷ 8 = 3 Bなので、容量は4,320,000 B = 4.32 MB。MiBでは約4.12 MiBである。縦横をそれぞれ2倍にすると画素数は4倍になり、同じ色深度なら容量は17.28 MBになる。片方だけを2倍にした場合の2倍と区別する。
3. 「解像度」は画素数と密度を区別して読む
「解像度」は画像の縦横の画素数を指す場合と、長さ当たりの画素密度を指す場合がある。ppiは1インチ当たりの画素数で、印刷時の寸法を決める手掛かりになる。dpiは本来、印刷機などの1インチ当たりのドット数であり、画素数と必ず一対一ではない。単位と対象を確かめよう。既存画像のppiの指定だけを変え、画素の追加・削除をしなければ、画素データ本体の量は変わらない。
横1,800画素の画像を300 ppi、150 ppiで印刷するとき、それぞれ横幅は何cmか。1インチ = 2.54 cmとする。画素数と色深度は変更しない。
解答・解説
300 ppiでは1,800 ÷ 300 = 6インチなので15.24 cm。150 ppiでは12インチなので30.48 cm。同じ画素をより大きな面積に配置するので横幅は2倍になるが、画素データ量は変わらない。大きく印刷するほど細部が新たに増えるわけではない。
4. 音声:時間方向の標本化と振幅方向の量子化
標本化は、連続的に変わる信号の値を一定の時間間隔で取り出すこと。標本化周波数fが48,000 Hzなら、1秒につき48,000個の標本を1チャンネルごとに取る。量子化は、その振幅を有限個の段階に対応させること。量子化ビット数qが16 bitなら符号は65,536通りである。標本化周波数は時間方向の細かさ、量子化ビット数は振幅方向の細かさに関わり、役割は異なる。
式のcはチャンネル数、tは秒単位の時間である。モノラルならc = 1、左右を別々に記録するステレオならc = 2。非圧縮の固定長PCMとして、各チャンネルの各標本をq bitで記録し、ヘッダ等を無視する場合に成立する。f × tは1チャンネルの標本数となる条件で考える。bit/sは1秒当たりのデータ量であり、音の周波数の単位Hzとは別物である。
48 kHz、16 bit、2チャンネルで30秒を非圧縮PCM録音する。付加情報は無視する。bitレートとデータ量を求めよ。
解答・解説
bitレートは48,000 × 16 × 2 = 1,536,000 bit/s。30秒分は46,080,000 bitで、8で割ると5,760,000 B = 5.76 MB。同じ条件でモノラルなら2.88 MBである。30秒を掛け忘れたり、ステレオの2を二重に掛けたりしないよう、各因子に単位と意味を添える。
5. 圧縮後は「何が既知か」を確認する
| 方法 | 復元について | 容量計算の注意 |
|---|---|---|
| 可逆圧縮 | 復号すると元のデジタルデータに完全に戻せる | 規則性により効果が異なる。必ず小さくなるとは限らない |
| 非可逆圧縮 | 情報を捨てるため元のデジタルデータに完全には戻せない | 品質設定や内容により容量が変わる |
| 再標本化・画素数削減 | 記録する値の数そのものを変更する | 圧縮形式の変更とは別の条件変更として追跡する |
圧縮前が4 MBと分かっても、形式名だけから圧縮後の容量は決められない。圧縮率という語は「圧縮後 ÷ 圧縮前」と「減った量 ÷ 圧縮前」の両方の意味で使われることがあるため、必ず定義を確認する。本記事では残存比r = 圧縮後 ÷ 圧縮前と定義し、圧縮後 = r × 圧縮前、削減率 = 1 − rとする。比較する範囲もデータ本体同士か、ファイル全体同士かをそろえる。
例題3の30秒の音声を圧縮し、音声データ本体の一定bitレートが128 kbit/sとなった。1 kbit = 1,000 bitとし、圧縮前後とも付加情報を除く。圧縮後のMB、残存比、削減率を求めよ。
解答・解説
圧縮後は128,000 × 30 ÷ 8 = 480,000 B = 0.48 MB。残存比は0.48 ÷ 5.76 = 1/12、約8.33%。削減率は11/12、約91.67%。このbitレートが圧縮済みの音声全体に対して指定されているので、量子化ビット数やチャンネル数を再び掛けない。可変bitレートでは実際の時間平均bitレートが分かれば同様に計算できるが、単なる目標値なら見積もりにとどまる。
6. 自分で条件をそろえて計算する
横800画素、縦600画素、8 bit/画素のグレースケール画像の非圧縮データ量をkBで求めよ。1 kB = 1,000 Bとする。
解答・解説
800 × 600 × 8 ÷ 8 = 480,000 B = 480 kB。1画素に1 B必要で、色深度の8はbitからBへの換算の8と相殺する。
24 kHz、16 bit、モノラルで10秒録音する。非圧縮PCMの容量をMBで求めよ。
解答・解説
24,000 × 16 × 1 × 10 ÷ 8 = 480,000 B = 0.48 MB。モノラルなのでチャンネル数は1。24 kHzは24,000標本/秒である。
データ本体が非圧縮で6 MB、圧縮後は元の25%になった。圧縮後のデータ本体と削減率を求めよ。
解答・解説
6 × 0.25 = 1.5 MB。削減率は1 − 0.25 = 0.75で75%。「25%になった」と「25%減った」は異なる。
ある画像の縦横の画素数をそれぞれ半分にし、色深度を24 bitから32 bitに変えた。付加情報のない非圧縮本体の容量は元の何倍になるか。
解答・解説
画素数が1/4倍、1画素当たりのbit数が32/24 = 4/3倍なので、全体は1/3倍。縦横の変化と色深度の変化を別々に倍率で表して掛ける。
問1. RGB各8 bit、透明度なしの画像で、1画素当たりのbit数は?
問2. 画素数と色深度を変えず、印刷用ppiの指定だけを300から150に変えた。正しい説明は?
問3. 標本化周波数だけを2倍にし、時間・量子化ビット数・チャンネル数を変えない非圧縮PCMの本体容量は?
問4. 非圧縮データの容量しか分かっていないとき、一般に正しいのは?