画像フォーマット

JPEGフォーマット完全ガイド

世界で最も広く使われている画像フォーマット、JPEG。1992年の誕生から圧縮原理、最適な品質設定まで、JPEGに関するすべてを解説します。

概要

JPEG(Joint Photographic Experts Group)は、写真や自然画像の圧縮に最適化された非可逆(lossy)圧縮フォーマットです。1992年にISO/IEC 10918-1として標準化されて以来、ウェブ・モバイル・印刷などほぼすべてのデジタル画像分野で使用されています。

ファイル拡張子は.jpgまたは.jpegを使用し、MIMEタイプはimage/jpegです。24ビットトゥルーカラー(約1,677万色)をサポートしており、写真の豊かな色彩を表現できます。

歴史

JPEGは1986年にISOとITU-T(旧CCITT)が共同で組織したJoint Photographic Experts Group委員会で開発が始まりました。主なマイルストーンは以下の通りです。

  • 1992年 — ISO/IEC 10918-1として初の標準を発表。DCTベースの非可逆圧縮方式を確定。
  • 1994年 — JFIF(JPEG File Interchange Format)バージョン1.02を発表。ファイル交換標準。
  • 1997年 — Exif(Exchangeable Image File Format)導入。デジタルカメラのメタデータ標準。
  • 2000年 — JPEG 2000(ISO 15444-1)発表。ウェーブレットベースだが互換性の問題で普及が限定的。
  • 2017年 — 依然としてウェブ画像の約73%を占め、主流フォーマットとしての地位を維持。

圧縮原理

JPEG圧縮は人間の視覚が明るさの変化には敏感だが、色の変化には相対的に鈍感であるという特性を利用しています。大きく4段階に分けることができます。

1. 色空間変換(RGB → YCbCr)

元のRGB画像をYCbCr色空間に変換します。Y(輝度)、Cb(青色色差)、Cr(赤色色差)に分離した後、色差チャンネル(Cb、Cr)をサブサンプリング(通常4:2:0)してデータを削減します。

4:2:0サブサンプリングとは、色差情報を水平・垂直ともに半分に減らすことです。人間の目は色よりも明るさにはるかに敏感であるため、この処理による視覚的品質の低下はほとんど感じられません。

2. DCT(離散コサイン変換)

画像を8x8ピクセルブロックに分割し、各ブロックに2次元DCT(Discrete Cosine Transform)を適用します。この処理は空間領域(spatial domain)のピクセル値を周波数領域(frequency domain)の係数に変換します。

  • DC係数(左上):ブロックの平均輝度を表します。
  • AC係数(その他):ブロック内の詳細パターン(高周波成分)を表します。

自然画像ではほとんどのエネルギーが低周波(DCおよび低周波AC)に集中するため、高周波係数を除去しても視覚的影響は少なくなります。

3. 量子化(Quantization)

DCT係数を量子化テーブルの値で割った後、四捨五入します。この段階で実際に情報が破棄され、JPEGが非可逆圧縮である核心的な理由となっています。

品質設定が高いほど量子化テーブルの除数が小さくなり破棄が少なくなり、低いほど積極的に除去してファイルサイズが小さくなります。

量子化は不可逆的です。一度破棄された情報は復元できないため、JPEGを繰り返し編集・保存すると世代ごとに品質が劣化します(世代損失、generation loss)。

4. エントロピーコーディング

量子化された係数をハフマンコーディング(Huffman coding)または算術コーディングで圧縮します。この段階は無損失であり、データの統計的冗長性を除去して最終ファイルサイズを削減します。

  • ジグザグスキャン:8x8ブロックの係数を低周波→高周波の順序で読み取り、連続したゼロが並ぶようにします。
  • RLE(ランレングスエンコーディング):連続したゼロを効率的に符号化します。
  • ハフマンコーディング:出現頻度の高い値に短いコードを割り当てます。

プログレッシブ vs ベースライン

JPEGには2種類のエンコーディング方式があります。

区分 ベースライン(Baseline) プログレッシブ(Progressive)
読み込み方式 上から下へ1行ずつ 画像全体が徐々に鮮明になる
ファイルサイズ やや大きい 通常2-10%小さい
メモリ使用量 少ない(1行ずつ処理) 多い(画像全体のバッファが必要)
体感速度 低速回線で不完全表示 素早く全体の輪郭を確認可能
推奨用途 組込み、リソース制限環境 ウェブページ、大容量写真

ウェブ用画像であればプログレッシブJPEGを推奨します。ファイルサイズがわずかに小さくなるだけでなく、ユーザーが画像全体を素早く認識できるため、体感ローディング速度が向上します。

品質設定

JPEGエンコーダの品質パラメータ(Quality、1-100)は量子化テーブルの積極性を調整します。重要なのは、この数値が絶対的な品質指標ではないということです。

  • 100:最小量子化。ファイルサイズが非常に大きく、オリジナルとほぼ区別不可。一般的には不要。
  • 85-92最適範囲。ファイルサイズと品質のバランスが最も良い。ウェブ・印刷の両方に適合。
  • 70-84:肉眼でわずかな劣化が見える場合あり。ファイルサイズ削減が重要な場合。
  • 50以下:明らかなアーティファクト発生(ブロッキング、リンギング)。サムネイルやプレビュー用。

実用的なアドバイス:ほとんどの場合、品質85-90で十分です。92以上に上げてもファイルサイズだけが急増し、視覚的な差はほぼありません。

メリット・デメリット

メリット

  • 汎用性:すべてのブラウザ、OS、画像ビューア、編集ソフトウェアでサポート。
  • 高い圧縮率:写真の場合、オリジナル比10-20倍の圧縮が可能。
  • 調整可能:品質とサイズのトレードオフを細かく調整。
  • Exifメタデータ:カメラ情報、GPS、撮影設定など豊富なメタデータをサポート。

デメリット

  • 透明度非対応:アルファチャンネルなし。透明背景が必要ならPNGやWebPを使用。
  • 世代損失:再エンコードするたびに品質が劣化。
  • テキスト・線に弱い:鋭いエッジでブロッキングアーティファクトが発生。
  • アニメーション非対応:静止画像のみ。
  • 色深度制限:チャンネルあたり8ビット(24ビットトゥルーカラー)のみサポート。HDR不可。

活用事例

  • デジタル写真:カメラ・スマートフォンの標準撮影フォーマット。
  • ウェブ画像:バナー、商品写真、ブログ画像など。
  • ソーシャルメディア:Instagram、Facebookなど大半のプラットフォームがJPEGを基本フォーマットとして使用。
  • 印刷:適切な品質(95+)と解像度(300 DPI)であれば印刷にも十分。
  • E-ink壁紙:グレースケール変換後にJPEGで保存すればE-inkデバイスとの互換性を最大化。

フォーマット比較

特性 JPEG WebP AVIF
圧縮方式 DCT(非可逆) VP8/可逆(非可逆+可逆) AV1(非可逆+可逆)
透明度 非対応 対応 対応
アニメーション 非対応 対応 対応
ファイルサイズ(同等品質) 基準 25-34%小さい 最大50%小さい
ブラウザサポート 100% 97%+ 92%+
編集ソフトウェア すべてのソフトウェア ほぼ対応 限定的
エンコード速度 高速 普通 低速

CropCropでの活用ヒント

  • エクスポートフォーマット:CropCropで画像を編集後、エクスポート設定でJPEGを選択してください。写真であれば最適な選択です。
  • 品質スライダー:デフォルト値90を推奨します。E-ink壁紙のようなグレースケールであれば85でも十分です。
  • E-ink最適化:グレースケールフィルターを適用後にJPEGでエクスポートすると、ファイルサイズがさらに小さくなります。E-inkデバイスでJPEGは最も互換性の高いフォーマットです。
  • 透明背景が必要な場合:JPEG代わりにWebPやPNGを選択してください。

CropCropはクライアント側で画像を処理するため、元の画像がサーバーに送信されることはありません。プライバシーが気になる写真も安心して編集できます。