用語集

エンコードとは何ですか?

エンコード とは、JPEG ファイルがベースラインやプログレッシブなどで画像データを圧縮する際に用いた方式のことです。これは画像データそのものから読み取られます。

encoding-process

エンコード処理とは、画像を圧縮された画像データに変換する方法のことです。メタデータレポートでは、Encoding Process(エンコード処理)は、例えば Baseline DCT, Huffman coding のように、そのJPGファイルで使われた方法の名前です。

この値は2つの部分から成ります。前半は画像データの圧縮方法、後半は圧縮結果をビット列としてどのように詰め込んだかを表します。

どのファイルがそれを持っているか

Encoding Process は JPEG のフィールドで、すべての JPEG 画像がこの情報を持ちます。JPEG 規格では、この情報は圧縮された画像データの前にある短いヘッダーに保存されます。

値の由来

Encoding Process を別個のタグとして書き込むカメラやプログラムはありません。ExifTool のようなリーダーが、そのヘッダーを開始する Start of Frame マーカーから値を導き出します。JPEG 規格では、各エンコード処理ごとに異なるマーカーが定義されています。

同じヘッダーには、画像の幅と高さ、サンプルあたりのビット数、および色成分の数も保存されています。ExifTool はこのヘッダーから色差サブサンプリングも導き出します。

この値は画像データの保存方法を表しているため、通常のタグのように編集することはできません。Encoding Process が変わるのは、プログラムが別の設定で画像を保存し直したときだけです。

値の見え方

ExifTool は13種類の値のいずれかを表示します。米国議会図書館によると、一般的なのは baseline と progressive です。

  • Baseline DCT, Huffman coding
  • Extended sequential DCT, Huffman coding
  • Progressive DCT, Huffman coding
  • Lossless, Huffman coding
  • Sequential DCT, differential Huffman coding
  • Progressive DCT, differential Huffman coding
  • Lossless, Differential Huffman coding
  • Extended sequential DCT, arithmetic coding
  • Progressive DCT, arithmetic coding
  • Lossless, arithmetic coding
  • Sequential DCT, differential arithmetic coding
  • Progressive DCT, differential arithmetic coding
  • Lossless, differential arithmetic coding

値の各部分が意味すること

  • DCT は離散コサイン変換(discrete cosine transform)を意味します。DCT に基づく JPEG の処理は非可逆圧縮であり、ファイルを小さくするために一部の細部を削除します。
  • Baseline は基本的な DCT 処理です。1サンプルあたり8ビットとハフマン符号化を使用します。
  • Sequential は各色成分が1回の走査で保存されることを意味します。
  • Extended sequential は baseline と同様に動作しますが、1サンプルあたり12ビットや算術符号化も許可します。
  • Progressive は画像を複数回の走査で保存します。各走査で通常は画質が向上するため、ビューアはまず粗い画像を表示し、その後だんだん鮮明にできます。
  • Lossless は DCT を使用しません。復号された画像は元の画像と完全に同一です。
  • differential は階層モードに属します。ここでは後のフレームほど、一つ前のフレームとの差分だけを保存します。
  • Huffman coding と arithmetic coding は、データをより少ないビット数に詰め込む、2つの可逆的な方法です。

ファイルにとって重要な理由

JPEG 規格では、すべてのプログラムがすべての処理をサポートすることは求められていません。すべての DCT デコーダーは baseline をサポートする必要があるため、画像をどこでも開けるようにするには baseline ファイルが安全な選択です。

他の処理では、一部のプログラムで開けない場合があります。米国議会図書館によると、元の可逆処理はアプリケーションで広くサポートされていませんでした。ハフマン符号化を使用する可逆方式の1つは、Adobe DNG ロー形式のバージョン1.1で使用されています。

値に DCT が含まれている場合、その画像を保存した際に一部の細部が失われたことが分かります。ファイルを保存し直しても、その細部は戻りません。このフィールドは画像の保存方法だけを説明するもので、個人情報は含まれていません。

メタキー