冬期講習 2026-2027、募集中。総復習は売りません。90分×完全1対1で、穴だけを塞ぎます 詳しく →
電話 0422-27-7828チャットで質問無料相談を予約

武蔵野個別指導塾の特徴

高校情報I 画像のデジタル化—画素数と階調から圧縮前のデータ量を求める|武蔵野個別指導塾

学習のイメージ写真 武蔵野個別指導塾
X LINE Facebook

縦横の画素数やRGBの色数から圧縮前の容量を計算します。手順の鍵は階調です。

よくあるのは、画像の縦と横の画素数を足し、その結果を容量として答えてしまう場面です。画像は縦横に並んだ小さな点の集まりなので、まず行ごとの点の数と行数から全体の点の数を求めます。さらに、各点の色を何ビットで表すかを掛けて初めて、色の記録に必要な量が出ます。範囲表や授業ノートで、画素と階調が試験の対象になっているかを確かめてから取り組んでください。

問題文から拾う3つの条件

定期テストでは、まず縦横の画素数と1画素あたりのビット数からデータ量を求める型が考えられます。例えば「横何画素、縦何画素、1画素何ビット」と書かれていたら、画素の総数を出してから色の情報を掛けます。横と縦の数字は同じ単位ですが、足した値は画素の総数を表しません。

次に、階調数から1画素あたりのビット数を決める型があります。2通りを1ビットで表せることを出発点に、ビットを1つ増やすごとに表せる組合せが2倍になると考えます。階調数がビット数として与えられているのか、明るさの段階の数として与えられているのかを読み分けます。

もう1つは赤・緑・青の各成分の階調から、色の組合せやデータ量を求める型です。各成分のビット数を合計すると1画素のビット数になり、それぞれの階調数を掛けると色の組合せ数になります。求めるものがビット数か色数かで、計算の意味を区別しましょう。

いずれも、圧縮の有無、画像以外の情報を含めるか、バイトへの換算条件が結果を左右します。問題にない条件を勝手に足さず、指定が不足していれば何が必要かを考えます。ここでは画像の色を記録する量を扱い、保存形式ごとの圧縮方法には踏み込みません。

点の数と色の段階を分ける

画素は、デジタル画像を構成する小さな点です。横に並ぶ画素数と縦に並ぶ画素数を掛けると、長方形に並ぶ画素の総数が求まります。例えば横に4画素ずつ、縦に3行あれば、各行の4画素を3回数えるので12画素です。画像の縦横の画素数は、画像の細かさを表す解像度として示されることがあります。

ただし解像度という語は、単位長さあたりの画素の密度を意味する場合もあります。画素の総数を計算するときは、問題が示すのが縦横の画素数なのか、長さあたりの密度なのかを確認します。密度だけでは画像の縦横の長さがなければ総画素数は決められません。

階調は、明るさなどを区別する段階です。白黒の濃淡を2ビットで表せば、00、01、10、11の4通りに符号を割り当てられます。1ビットなら2通り、3ビットなら8通りです。ビット数を1増やすと、以前の各組合せに0または1を付けられるので、組合せは2倍になります。段階が6種類なら2ビットの4通りでは足りず、3ビットの8通りなら各段階を区別できます。

カラー画像では、赤・緑・青の成分の値を組み合わせて1画素の色を表す方法があります。各成分が同じ段階数でなくても、赤の各段階に緑と青の各段階を組み合わせて数えられます。各成分を独立に固定長で記録する条件なら、1画素に必要なビット数は各成分のビット数の合計です。

図1のように、画素数の計算と1画素の情報量の計算は別々に進め、最後に掛け合わせます。ビットは情報を数える単位、バイトはまとまった単位です。換算には問題で指定された1バイトのビット数を使います。

図1 画素の総数と1画素の情報量を合わせる関係

図1では、縦横から求める点の数と、階調から求める点ごとの量を分けています。どちらか片方だけでは画像全体の記録量にはなりません。

基本例題:濃淡の画像を数える

横120画素、縦80画素の濃淡画像を考えます。1画素の明るさを16階調で表し、各画素に同じ最小のビット数を使います。圧縮せず、ヘッダなど画像の色以外の情報は含めません。1バイトを8ビットとして、画像のデータ量を整数のバイト数で求めてください。

最初に16階調を表せるビット数を決めます。1ビットは2通り、2ビットは4通り、3ビットは8通り、4ビットは16通りです。3ビットでは不足し、4ビットなら16段階を区別できるので、1画素あたり4ビットです。

次に画素の総数を求めます。横の120画素が縦に80行あるため、120 × 80 = 9600画素です。図2のように、各行にある画素数を行数だけ数えます。120と80を足した200は、画像全体の画素数ではありません。

図2 濃淡画像の画素数とデータ量を順に求める

図2の計算を1行ずつ書くと、次のようになります。

  1. 画素数: 120 × 80 = 9600画素
  2. 1画素の量: 16階調には4ビット
  3. 全体の量: 9600 × 4 = 38400ビット
  4. バイトへの換算: 38400 ÷ 8 = 4800バイト

答えは4800バイトです。4800バイトを8倍すると38400ビットに戻り、これを4ビットずつに分けると9600画素分になります。元の横120画素を80行並べた数と一致するので、単位を戻しても条件に合います。

この答えは、問題が決めた圧縮前の色の記録量です。実際に保存したファイルには形式に応じた追加情報が付くことがあり、圧縮を使えば色の記録部分の大きさも変わり得ます。4800バイトを、どのファイルでも必ず同じになる容量と考えないことが大切です。

少し難しい例題:成分ごとに階調が違う色

横50画素、縦40画素の画像を、赤は8階調、緑は16階調、青は4階調で表します。各成分を独立に、各画素で同じ最小の固定長ビット数で記録します。圧縮もヘッダなどの付加情報もなく、1バイトは8ビットです。表せる色の組合せ数と、画像のデータ量をそれぞれ整数で求めてください。バイトに直して端数が生じる場合は、画像全体のビットを続けて並べ、最後に足りない分を埋めて整数バイトにします。

赤の8階調には3ビット、緑の16階調には4ビット、青の4階調には2ビットが必要です。各画素の成分を並べて記録するので、1画素の量は3 + 4 + 2 = 9ビットです。画素数は50 × 40 = 2000画素、全体では2000 × 9 = 18000ビットです。18000 ÷ 8 = 2250なので、端数を埋める必要はなく、2250バイトです。

一方、色の組合せは8 × 16 × 4 = 512通りです。赤の1段階ごとに、緑16段階と青4段階の組合せが64通りあり、それが赤の8段階分あります。階調数を足した28は、赤・緑・青を同時に選ぶ組合せ数ではありません。

答えを元の条件に戻すと、2250バイトは18000ビットで、9ビットずつ2000画素に割り当てられます。また9ビットの組合せは512通りで、3成分の階調の積とも一致します。ここでは各階調数が2を繰り返し掛けた数なので一致しますが、使わない符号がある場合は、ビット列の総数と実際に割り当てた色数を区別します。

端数がある場合は、各画素ごとに切り上げるとは限りません。この問題の条件では画像全体を並べてから最後に埋めます。別の問題で行ごとや画素ごとに余白を入れると指定されれば、その指定に沿って数え直します。並べ方の指定がなければ、端数を含むバイト数を一意に決められない場合があります。

誤答をたどって直す

基本例題で「120 + 80 = 200画素、200 × 4 ÷ 8 = 100バイト」と答えた場合を考えます。四角い画像の横と縦を足すと、各行の画素を数え切れません。横120画素の行が80行あるという配置に戻り、120 × 80 = 9600画素と修正します。そこから1画素の4ビットを掛けて8で割れば4800バイトです。

図3のように、誤りが始まった箇所に戻ると、その後の計算をどこからやり直すかが見えます。答えの数字だけを書き換えず、「1行の点数を行数分数える」と理由も添えます。

図3 縦横を足した誤答を画素数の積に直す

図3では、足し算の200と掛け算の9600を対比しています。200に4ビットを掛ける計算は、200画素という誤った前提の上では算術として合っていても、元の画像には戻りません。

別の誤りは、16階調を16ビットとすることです。16は明るさの段階数であり、必要なビット数ではありません。2通りから倍に増やして4ビットで16通りに達することを確かめます。逆に、4ビットを4階調と読んでも段階が不足します。問題文の「階調」と「ビット」に印を付け、数字が何を数えるかを先に書きましょう。

RGBの各成分に4ビットずつ使う条件で、1画素を4ビットとするのも誤りです。1画素には3成分の値が必要なので合計12ビットです。色の組合せを問われたときには、各成分の16階調を掛けて数えると整理できます。単位が「ビット」なのか「通り」なのかを最後に確かめてください。

自分で解く4問

次の問題はすべて自作の条件です。圧縮せず、ヘッダなどの付加情報は含めず、1バイトを8ビットとします。各画素や各成分は問題に示した固定長で記録します。問題を先に解き、後の答えで途中の単位まで照合してください。

問1 横30画素、縦24画素の濃淡画像を、1画素あたり2ビットで記録します。総画素数を整数の画素数で、データ量を整数のバイト数で求めてください。

問2 横32画素、縦25画素の濃淡画像に、32階調を区別するための最小のビット数を各画素に使います。1画素のビット数と全体のデータ量をそれぞれ整数で求め、後者はバイトで答えてください。

問3 横20画素、縦12画素のカラー画像で、赤・緑・青をそれぞれ4階調、8階調、8階調とします。各成分を区別する最小のビット数で独立に記録します。色の組合せ数と全体のデータ量をそれぞれ整数で求め、後者はバイトで答えてください。

問4 横13画素、縦7画素の画像を、1画素あたり3ビットで記録します。画素のビット列を画像全体で続けて並べ、最後のバイトの不足分だけを0で埋めます。色の記録に使うビット数と、埋めた後の整数のバイト数を求めてください。

答えと確かめ方

問1 30 × 24 = 720画素です。720 × 2 = 1440ビット、1440 ÷ 8 = 180バイトです。180バイトを8倍すると1440ビットになり、2ビットずつ720画素に割り当てられます。30画素の行が24行ある配置に戻しても720画素です。

問2 32階調には5ビットが必要です。4ビットでは16通りで足りず、5ビットでは32通りを区別できます。画素数は32 × 25 = 800画素、800 × 5 = 4000ビット、4000 ÷ 8 = 500バイトです。500バイトを5ビットずつに分ければ800画素分になり、各画素で32段階を選べます。

問3 色は4 × 8 × 8 = 256通りです。各成分には順に2、3、3ビットが必要で、1画素あたり8ビットです。20 × 12 = 240画素なので、240 × 8 = 1920ビット、1920 ÷ 8 = 240バイトです。240バイトは240画素に各8ビットを配れる量です。8ビットの256通りは成分の階調の積とも合います。

問4 13 × 7 = 91画素、91 × 3 = 273ビットです。34バイトでは272ビットしか入らず、35バイトなら280ビット入ります。よって色の記録は273ビット、埋めた後は35バイトです。35バイトの280ビットから最後に埋めた7ビットを除くと273ビットで、3ビットずつ91画素に戻せます。34.125バイトという計算結果をそのまま整数の保存単位として答えないようにします。

試験前に押さえること

画素数は横の画素数と縦の画素数の積です。
階調数から、必要な1画素または各成分のビット数を決めます。
色の組合せ数は成分の階調数の積、1画素のビット数は成分ごとの合計です。
圧縮前の量を出し、付加情報と端数の扱いを条件に照らします。
答えをビットと画素に戻して、元の画像を記録できるか確かめます。

途中式からつまずきを見分ける

答えが違うときは、まずノートの各数字に「画素」「階調」「ビット」「バイト」のどれが付くかを書いてみます。縦横を足していれば配置の捉え方、階調数をそのままビット数にしていれば組合せの数え方を見直せます。正しい画素数から始まっていても、RGBの成分の数え落としやバイトへの換算でずれることがあります。

個別指導で確かめるなら、画像の1行を図にし、同じ行が何行あるかを本人の言葉で説明できるかを見ます。次に1画素の階調から必要なビット数を求めてもらい、最後に計算結果を画素数へ戻します。途中のどの段階で単位が変わったかをたどれば、次の画像でも自分で誤りを見つけられます。

読んで終わりにするか、ここから変えるか。

武蔵境駅徒歩30秒、講師1人に生徒1人の完全1対1。授業のあいだ、先生は隣を離れません。いまの詰まりを、無料相談でそのまま話してください。

まず15分だけ電話で話したい方は、無料電話相談(15分)から。塾からお電話を差し上げます。

本気になった日が、入塾の日。

お子様の教育、迷ったら「丸投げ」してください。必ず、期待以上の結果で返します。武蔵野で育む、武蔵境で学ぶ。

電話は年中無休。365日、24時間、お電話可能。

チャットで質問チャット
無料相談を予約する 電話 0422-27-7828電話 LINE チャット
で質問