0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

画像圧縮における可逆圧縮と非可逆圧縮を理解しよう

Posted at

画像圧縮の基本:可逆圧縮と非可逆圧縮を理解しよう

この記事は、Geminiのサポートを受けて執筆しました。

導入:その「.jpeg」や「.png」、意識して選んでいますか?

私たちが日常的に目にする画像ファイル。その拡張子(.jpegや.png、.gifなど)は、単なる名前の違いではありません。

画像をデジタルデータとして保存する際、その裏側では「圧縮」という技術が使われています。そして、その圧縮方法は、大きく分けて「可逆圧縮」と「非可逆圧縮」の2種類に大別できます。

この違いを理解しないまま適当に選んでしまうと、「画質が思ったより悪い」「ファイルの容量が全然小さくならない」といった問題が起こるかもしれません。

そもそも、なぜ圧縮が必要?

「圧縮」と聞くと難しそうですが、目的は単純で「データ容量(ファイルサイズ)を小さくするため」です。

もし圧縮を全くしなかったら、画像ファイルの容量は膨大になります。 例えば、ごく一般的な「Full HD(1920×1080ピクセル)」の画像を考えてみましょう。

デジタル画像は「ピクセル(画素)」という点の集まりで、1ピクセルごとに「色」の情報を持っています。色は通常、「光の三原色(RGB:赤・緑・青)」の組み合わせで表現され、各色に1バイト(256段階)のデータが割り当てられます。

つまり、1ピクセルあたりの情報量は3バイト(R:1 + G:1 + B:1)です。

これをFull HD画像全体で計算すると…

1920 (幅) × 1080 (高さ) × 3 (RGB) = 6,220,800 バイト

となり、約6.2MBにもなります。 これは、たった1枚の画像です。もしWebサイトにこんな画像が10枚あったら、ページの読み込みにかなりの時間がかかってしまいます。

しかし、考えてみてください。もしその画像が「真っ白」や「真っ黒」だったら、全てのピクセルが同じ色情報を持つことになります。それを律儀に「1番目も白、2番目も白…」と207万回繰り返して記録するのは非常に無駄です。

「1番目から622万800番目まで、すべて白」と記録できれば、データ量は劇的に減らせます。

これは極端な例ですが、実際には画像の中にはパターンや色の類似性が多く含まれます。その冗長な(無駄な)部分を見つけて、より効率的な表現に置き換えるのが「圧縮」の基本です。

そして、その「無駄の省き方」のアプローチによって、2種類の圧縮方法が生まれます。

1. 可逆圧縮 (Lossless Compression)

「再構成時にデータを変えずに圧縮する方法」です。

特徴:

圧縮したデータを元の状態に完全に復元できます。

ファイルを解凍(展開)すると、圧縮前のデータと100%同一のものが得られます。

何度圧縮・解凍を繰り返しても、データは一切劣化しません。

仕組みのイメージ:

前述の「真っ白な画像」の例のように、「同じデータが続く回数」を記録する(ランレングス符号化)など、データの統計的な偏りを利用して、より短い表現に置き換えます。

代表的な形式:

PNG (Portable Network Graphics): Webで広く使われ、特にロゴ、アイコン、図表、テキストを含む画像(色の境界がはっきりしているもの)に適しています。透明度(背景を透過させる)も扱えます。

GIF (Graphics Interchange Format): アニメーションで有名ですが、色数(最大256色)に制限があるため、写真には不向きです。

BMP (Windows Bitmap): RLE(ランレングス)という可逆圧縮が使われることがありますが、無圧縮の場合も多いです。

TIFF (Tagged Image File Format): 高品質な画像(印刷用データなど)で使われる形式で、複数の圧縮方式(可逆・非可逆)を選べます。

メリット: 画質の劣化が絶対にない。

デメリット: 非可逆圧縮に比べると、圧縮率(どれだけ小さくできるか)は低くなる傾向があります。

2. 非可逆圧縮 (Lossy Compression)

「人間には知覚しにくい情報を間引いて圧縮する方法」です。

特徴:

圧縮する際に、元データの一部を意図的に破棄します。

そのため、一度圧縮すると二度と元のデータには戻せません。

可逆圧縮よりも劇的にファイルサイズを小さく(高圧縮)できます。

仕組みのイメージ:

人間の視覚は、色のわずかな変化よりも明るさ(輝度)の変化に敏感である、といった特性を利用します。

ご提示の文章にあった「高周波成分」とは、簡単に言えば「画像の中の急激な色の変化や、細かい模様・ノイズ」のことです。非可逆圧縮(特にJPEG)は、この高周波成分を「どうせ人間にはよく見えないだろう」と判断し、大胆に省略することで容量を稼ぎます。

代表的な形式:

JPEG / JPG (Joint Photographic Experts Group): まさに非可逆圧縮の代名詞。写真やグラデーションが多い画像など、色数が多く複雑な画像の保存に最適です。

メリット:

非常に高い圧縮率を実現できる。

デメリット:

圧縮率を高く設定しすぎると(=情報を捨てすぎると)、画質の劣化が目立つようになります(色がにじむ、ブロック状のノイズが出る、文字の周りがぼやけるなど)。

圧縮・保存を繰り返すたびに劣化が蓄積していきます。

まとめ:どう使い分けるか?

この2つの圧縮方法は、どちらが優れているというものではなく、明確な「用途」の違いがあります。

結論としての使い分けガイド

非可逆圧縮 (JPEG) を選ぶべき時:

写真全般(風景、人物、物など)

グラデーションが多用されている画像

とにかくファイルサイズを小さくしたいが、多少の画質劣化は許容できる場合

可逆圧縮 (PNG) を選ぶべき時:

ロゴ、アイコン、図表、イラスト

テキスト(文字)が含まれる画像(JPEGだと文字の輪郭がぼやけやすい)

背景を透明(透過)にしたい場合

画質の劣化を絶対に許容できない医療画像や設計図など

次から画像を保存するときは、その画像が「写真」なのか「ロゴや図」なのかを意識して、最適な形式を選んでみてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?