Dip-introduction-to-jpeg-compression

提供:Dev Guides
移動先:案内検索

JPEG圧縮の概要

画像圧縮の最後のチュートリアルでは、圧縮に使用されるいくつかの手法について説明します

一部のデータは最終的に損失するため、非可逆圧縮であるJPEG圧縮について説明します。

まず、画像圧縮とは何かを説明しましょう。

画像圧縮

画像圧縮は、デジタル画像のデータ圧縮の方法です。

画像圧縮の主な目的は次のとおりです。

  • 効率的な形式でデータを保存する
  • 効率的な形式でデータを送信する

画像の圧縮は、非可逆的または可逆的です。

JPEG圧縮

JPEGはJoint PHOTO Experts Groupの略です。 これは、画像圧縮の最初の国際規格です。 今日広く使用されています。 それはロスレスでもロスレスでもあります。 ただし、ここで今日説明する手法は、非可逆圧縮手法です。

JPEG圧縮の仕組み

最初のステップは、画像を8 x 8の次元を持つブロックに分割することです。

JPEG圧縮

記録のために、この8x8画像には次の値が含まれているとしましょう。

JPEG圧縮

現在、ピクセル強度の範囲は0〜255です。 範囲を-128から127に変更します。

各ピクセル値から128を減算すると、-128〜127のピクセル値が得られます。 各ピクセル値から128を減算すると、次の結果が得られました。

JPEG圧縮

次に、この式を使用して計算します。

JPEG圧縮

この結果は、たとえばA(j、k)マトリックスに格納されます。

JPEG圧縮の計算に使用される標準マトリックスがあります。これは、輝度マトリックスと呼ばれるマトリックスによって与えられます。

このマトリックスは以下のとおりです

JPEG圧縮

次の式を適用する

JPEG圧縮

申請後にこの結果を得ました。

JPEG圧縮

ここで、ZIG-ZAG移動であるJPEG圧縮で行われる実際のトリックを実行します。 上記のマトリックスのジグザグシーケンスを以下に示します。 先にすべてのゼロが見つかるまで、ジグザグを実行する必要があります。 したがって、画像は現在圧縮されています。

JPEG圧縮

JPEG圧縮の要約

最初のステップは、画像をY’CbCrに変換し、Y ’チャンネルを選択して8 x 8ブロックに分割することです。 次に、最初のブロックから開始して、-128〜127の範囲をマッピングします。 その後、行列の離散フーリエ変換を見つける必要があります。 この結果は量子化する必要があります。 最後のステップは、ジグザグにエンコードを適用し、すべてゼロになるまでそれを行うことです。

この1次元配列を保存すれば完了です。

注意。 8 x 8のすべてのブロックに対してこの手順を繰り返す必要があります。