クロマサブサンプリングとは?(4:4:4 / 4:2:2 / 4:2:0 の違い)
JPEG が明るさより低い解像度で色を保存する理由、この比率の意味、そして色のディテールを安全に諦められる場面を解説します。
人の目は色よりも明るさにはるかに敏感です。JPEG はこれを利用し、明るさのチャンネルをフル解像度で、2 つの色チャンネルを低い解像度で保存します。この削減比率がクロマサブサンプリングで、3 つの数字で表されます。
表記の読み方
数字は、明るさのサンプル何個あたり色のサンプルが何個あるかを J:a:b の形で表します。
- 4:4:4 — 明るさ 4 サンプルに対し色 4 サンプル。削減なし。
- 4:2:2 — 明るさ 4、1 行あたり色 2。色の解像度が水平に半分になります。ファイルサイズは通常 15〜25% 減ります。
- 4:2:0 — 明るさ 4、色は 1 行おきに 2。色が縦横ともに半分になり、元の色データの 4 分の 1 しか残りません。4:2:2 よりさらに 10〜20% 節約できます。
4:4:4 と 4:2:0 のサイズ差は確かにありますが、多くの人が思うより小さく、通常は全体の 35% 未満です。
4:2:0 で問題ない場合
木々、空、雲、肌などの自然な写真を通常の鑑賞サイズで見るなら、4:2:0 は見分けがつきにくいものです。テレビ放送は何十年も 4:2:0 を使ってきました。
問題になる場合
- 赤とマゼンタのディテール。 色チャンネルは赤の差分を担うため、鮮やかな赤から先に滲みます。赤い花、赤い文字、警告標識。
- 細い色の線と文字。 色付きの UI スクリーンショット、グラフ、色で区切られた地図。
- 鮮明な境界を持つ平坦な色。 ロゴ、イラスト、ピクセルアート、人工的なもの全般。
- 後でもう一度編集する画像。 色の損失は蓄積します。4:2:0 を 2 回かけると 1 回より明らかに悪くなります。
元画像が人工的・生成されたもの(画像モデルの出力、スクリーンショット、ベクターの書き出し)なら、4:4:4 である可能性が高く、まさにそうした画像がサブサンプリングの影響を最も受けます。
「画質を上げれば戻る」わけではない理由
サブサンプリングは量子化の前に起きます。色チャンネルが平均化されて半分の解像度で保存された後では、どんな画質設定も捨てられたサンプルを再現できません。画質を上げると、すでに劣化したデータにより多くのビットを使うだけ。ファイルは大きくなり、ディテールは戻りません。
これが元のサンプリング方式を維持すべき理由のすべてです。数バイトのコストがかかりますが、そのバイトだけが本物の色情報を買い戻します。
自分のファイルを確認する
上のツールに JPEG をドロップしてください。ファイル名の下の行に、ヘッダーから検出したサンプリング方式と、元画像のおおよその画質、プログレッシブかどうかが表示されます。何もアップロードされないので、私的な画像も安全に確認できます。