データを圧縮した結果、RGBをそれぞれ8ビットで表していた画像が、RGBをそれぞれ4ビットで表すようになった。圧縮により画像の色の表し方以外は変化していないとすると、この画像の圧縮率は何%となるか? この問題がわからないです。 解説お願いします。

補足

私の計算では 色の表し方が8ビットだから256^3通りが 4ビットになったから16^3になったから100×16^3/256^3になると思ったのですが 答えは圧縮率12.5%でした 私の計算のどこが誤りですか?

ベストアンサー

この回答はいかがでしたか? リアクションしてみよう

その他の回答(5件)

普通に考えれば8Bit×3を4Bit×3にしてるんだから、50%にしかならん。 回答が間違ってるんじゃない?

以下のように考えてみてはいかがでしょうか? 例えばデータを「R」のみの8ビットで表すとします 次元でいうと「1次元」言わば「直線」(x軸のみ)の世界です 8ビットが4ビットになるため「4/8=1/2」で圧縮率は50%です 次にデータを「R」と「G」の8ビットで表すとします 次元でいうと「2次元」言わば「平面」の(x軸とy軸がある)世界です 8×8(=64)ビットが4×4(=16)ビットとなるため その面積は「16/64=1/4」で圧縮率は25%です 最後にデータを「R」と「G」と「B」の8ビットで表すとします 次元でいうと「3次元」言わば「立方体」の(x軸とy軸とz軸がある)世界です 8×8×8(=512)ビットが4×4×4(=64)ビットとなるため その体積は「64/512=1/8」で圧縮率は12.5%です

画像そのものの大きさが変化せず1670万色が4096色で表現されるという結果になるなら画像そのものの圧縮率は12.5% でもそこまで圧縮してもデータ容量は半分くらいにしかならない。

Rが半分、Gも半分、Bも半分になったので、 0.5✕0.5✕0.5=0.125 0.125✕100で、12.5% なお、Rだけなら50%だが、RGBの掛け合わせであることに注意 また、256通りや16通りは、表現できる数値の話であって、データ領域そのものの大きさではありません。 8ビットのものが4ビットになったので、R、G、Bそれぞれ半分です。

0.5を3乗するのはどうしてでしょうか? 組み合わせとデータ量は 別ものだということはわかりましたが、 3乗すると組み合わせを表すことになりませんか? 赤緑青をそれぞれ8bitで表現するとデータ量は 1ピクセルあたり8bit×3=24bit 4bitの場合も同様に 1ピクセルあたり4bit×3=12bit となり 12bit/24bitで圧縮率50%になると思ったのですが、、、 これって、もしかして 解答間違えてないですか?