2026-03-28

視覚的な品質低下なしにJPEG画像を圧縮する方法

Web用のJPEGを正しい方法で圧縮するためのガイドです。人間の目に見える品質レベルに合わせた調整、適切なリサイズ手順、progressive encodingの活用、そして再圧縮による画質劣化を防ぐための測定可能なサイズ管理を行います。

視覚的な品質低下なしにJPEG画像を圧縮する方法

Last updated: June 27, 2026

JPEGは依然として最も一般的な写真形式であり、ウェブ上のほとんどのJPEGは必要以上に大きなサイズになっています。これらを適切に圧縮することは、スライダーを数値にドラッグするだけではありません。それは、ディスプレイサイズで目に見えるものと品質を合わせること、まずリサイズし、そして一度エンコードすることにかかっています。本ガイドでは、実際の写真1枚を用いて、実用的な設定、使用ツール、および測定されたファイルサイズについて解説します。

クイックアンサー:JPEGの圧縮方法は?

表示サイズにリサイズした後、プログレッシブエンコーディングを使用し、メタデータを削除しながら品質80〜85で再エンコードします。これにより、通常の閲覧距離では目に見えない損失となる、約70〜90%サイズの写真が実現できます。最も小さなウェブ結果を得るためには、リサイズ後にWebPまたはAVIFに切り替えるのが理想ですが、JPEGのフォールバック(代替)は維持してください。

Step Why Tool
Resize to display size Biggest single byte saving Image Resizer
Re-encode JPEG at q80–85 Removes bloat, near-invisible loss Image Compressor
Progressive encoding Loads progressively, better perceived speed optimize=True, progressive=True
Strip metadata Removes EXIF/XMP bytes -strip
(Optional) WebP/AVIF Smaller still for modern browsers Image Converter

JPEGの圧縮は実際にどのように機能するのか?

JPEGは画像を8×8ピクセルのブロックに分割し、各ブロックを周波数に変換した後、**量子化(quantizes)**を行います。これは、高周波成分(細かいディテール)の係数を大きな数で割ることで、多くの値がゼロになるようにすることです。品質スライダーは、この量子化行列を調整します:品質が低いほど、割り算する数が大きく、ゼロが多くなり、ファイルサイズが小さくなり、失われるディテールが増えます。その後、これらのゼロはランレングス符号化およびHuffman符号化によって最終的なバイトに変換されます。

これがJPEGがテキストや鋭いエッジをぼかす理由です。細かいディテールは、量子化によってゼロにされる高周波係数に存在します。品質を十分に下げると、q50のパネルの上で確認できるような8×8のブロックノイズ(アーティファクト)が見えます。完全なアルゴリズムの解説については、how image compression worksを参照してください。

どの品質設定を使うべきか?

数値ではなく、目に見える品質を比較してください。JPEG q85、WebP q75、AVIF q60は、見た目上ほぼ同じです。羽根のディテールが写った写真で測定すると、JPEGサイズは最初は急激に減り、その後平坦になります:

Bar chart of measured JPEG size by quality: q95 largest, dropping through q85, q75, q65, q50 — the sweet spot is q75-85

実用的な帯域:

Quality File (relative) Visible loss Use for
90–95 Largest None Print masters, archives
80–85 ~15–25% of original None at viewing distance Web photos (default)
70–75 Smaller Minimal, in smooth areas Thumbnails
50–65 Smallest Visible blocking Avoid for anything prominent

85から開始し、バイト数を節約する必要がある場合にのみ80または75まで下げてください。70を下回ると、アーティファクトが気になります。

Method 1: ブラウザコンプレッサーを使う方法

1枚の画像の場合、Imagic AI Image Compressorを使用します:アップロードし、表示幅にリサイズし、JPEG品質を85に設定し、プログレッシブを有効にしてダウンロードします。ライブでの視覚的な制御が必要な場合は、Squooshが、スライダーを動かすにつれて出力サイズとプレビューを並べて表示してくれます。

Method 2: コマンドラインを使う方法

フォルダ全体の場合、コマンドラインエンコーダーが最も高速でスクリプト化できます。

## ImageMagick: resize, q85, progressive, strip metadata, write to out/
mkdir -p out
mogrify -path out -resize 1920x -quality 85 -strip -interlace Plane *.jpg

## jpegoptim: lossless re-optimization, or set a max quality
jpegoptim --max=85 --strip-all --all-progressive *.jpg

## mozjpeg (better compression than libjpeg at equal quality)
cjpeg -quality 85 -progressive input.ppm > output.jpg

mozjpegは、同じ視覚品質であっても標準のlibjpegよりも小さなファイルサイズを生成するため、インストールできる場合は最適な選択肢です。jpegoptimは、品質の上限まで非可逆圧縮でインプレース(その場)再圧縮できるため便利です。

Method 3: Pythonを使う方法

from PIL import Image
from pathlib import Path

def compress_jpeg(src: Path, dest: Path, quality: int = 85, max_width: int = 1920):
    with Image.open(src) as img:
        if img.mode != "RGB":
            img = img.convert("RGB")
        if img.width > max_width:
            ratio = max_width / img.width
            img = img.resize((max_width, int(img.height * ratio)), Image.LANCZOS)
        img.save(dest, "JPEG", quality=quality, optimize=True, progressive=True)

for f in Path("photos").glob("*.jpg"):
    compress_jpeg(f, Path("out") / f.name)

optimize=Trueは最適なHuffmanテーブルを構築します(ファイルサイズが小さく、エンコードが遅くなります)。progressive=TrueはプログレッシブJPEGを書き出します。

プログレッシブJPEGを使うべきか?

ファーストビューのウェブ画像にははい。プログレッシブJPEGは、トップからボトムへというワイプではなく、粗いものから細かいものへとロードされるため、閲覧者はほぼすぐにフルフレームの低ディテールバージョンを見ることができます。同じバイト数で、知覚的な速度が向上します。トレードオフはエンコードがわずかに遅くなることですが、アップロード時に一度だけエンコードするなら問題になりません。

圧縮とリサイズ—どちらがより重要か?

どちらもサイズを小さくしますが、まずリサイズしてください。圧縮はピクセルごとにディテールを捨てます。一方、リサイズは表示しないピクセルそのものを捨てる行為です。4000pxの写真をq85で圧縮しても、それはまだ4000pxのダウンロードでありながら、800pxで表示されます。最初に表示サイズにリサイズすることが、batch resize guideが示すように、どの品質調整よりも多くのバイトを節約します。

Source detail next to the q85 web-ready result: at display size the compressed version is indistinguishable

すべての画像に推奨される順序は、表示サイズへのリサイズ → q85への圧縮 → メタデータ削除 → 提供です。最も小さな結果を得るためには、WebP/AVIFもエクスポートし、JPEGをフォールバックとして<picture>経由で提供することをお勧めします。

よくある間違い

  • すでに圧縮されたJPEGの再圧縮を行うこと。 損失のあるエンコードを繰り返すたびにアーティファクトが追加され、ファイルサイズが増加する可能性さえあります。マスターファイルから作業してください。
  • サイズ目標を達成するために過剰に圧縮すること。 q70を下回ると、ブロックノイズが目立ちます。品質をさらに下げる代わりに、より小さくリサイズしてください。
  • 写真にPNGを使うこと。 PNGは非可逆(lossless)であり、写真には巨大です。写真はJPEG(またはWebP)を使い、グラフィック/テキストにPNGを使用してください。
  • 必要なEXIFを削除してしまうこと。 写真アーカイブ用には残し、公開ウェブ用のみ削除してください。
  • フォーマットの切り替えを忘れること。 WebPとAVIFは、同じ品質であってもJPEGより25〜50%小さいです。format comparisonを参照してください。

最終的なエクスポートチェックリスト

  • JPEG圧縮を行う前に、表示幅にリサイズする。
  • 元のファイルを出力フォルダの外に残しておく。
  • 大型のウェブ写真にはプログレッシブJPEGを使用する。
  • 同じJPEGを繰り返し上書き保存することを避ける。
  • 最終画像を通常のサイズと100%で比較する。

よくある質問

JPEG圧縮は品質を低下させますか?

はい — JPEGは常に損失のある(lossy)形式です。しかし、q80〜85の範囲では、通常の閲覧距離では損失は見えず、ファイルサイズは通常オリジナルより75〜90%小さくなります。

ウェブで最適なJPEG品質はどれですか?

80〜85です。この帯域が、サイズが小さく、損失が見えない範囲だからです。サムネイルには75まで下げても良いですが、目立つ部分では70を下回らないようにしてください。

すでに圧縮されたJPEGを再圧縮できますか?

技術的には可能ですが、節約は最小限であり、アーティファクトを追加するだけです。高品質なマスターファイルからのみ再圧縮を行ってください。

写真にJPEGとWebPどちらが良いですか?

同じ品質であればWebPの方が小さいため、最新のウェブページにはWebPを優先し、<picture>内でJPEGをフォールバックとして使用してください。メールや古いクライアント向けにはJPEGを残しておいてください。TinyPNG alternativesガイドでは、両方を出力するツールがリストされています。

JPEGの品質設定はどれを使うべきですか?

ウェブ配信用には品質80〜85(表示サイズでの損失は見えず、品質100のバイト数の約4分の1)を使用してください。90〜95は印刷物や詳細に検査されるクロップ専用です。75を下回ると、空のような滑らかなグラデーションでバンディングやアーティファクトが現れます。非可逆圧縮のマスターファイルから、目標品質で一度だけ圧縮してください。

生成損失(generation loss)とは何ですか?

JPEGを再保存するたびに、別のラウンドの損失のある圧縮が適用され、アーティファクトが蓄積します。画像は徐々にディテールを失い、ブロックノイズが増加します。非可逆形式(TIFF、PNG、またはRAW)で編集し、最後に一度だけJPEGとしてエクスポートすることでこれを避けてください。JPEGを繰り返し開いて編集して再保存することは絶対にしないでください。

JPEGをWebPに変換すべきですか?

ウェブ配信の場合、はい — WebPは同じ品質であっても25〜35%小さく、すべての現在のブラウザでサポートされています。JPEGは非常に古いブラウザのためのフォールバックとしてのみ残してください。WebPは<picture>要素を通じて、JPEGのフォールバックとともに提供してください。WebP converter guideを参照してください。

プログレッシブJPEGとは何ですか?

トップからボトムへという形式ではなく、ぼやけたフルイメージプレビューが最初に表示され、その後徐々にシャープになっていくタイプのJPEGです。閲覧者が画像を早く全体的に見られるため、低速な接続での知覚的なロード速度が向上します。ほとんどのエンコーダーはサイズコストなしでプログレッシブJPEGを書き出すことができますので、ファーストビューのウェブ画像には有効にしてください。

クロマサブサンプリングとは何ですか?

JPEGの手法の一つで、人間の目は色よりも明るさの変化により敏感であるため、色のディテールを輝度のディテールよりも低い解像度で保存します。これにより、目に見える損失が少ないままファイルサイズを縮小できます。ほとんどのエンコーダーは品質80以下でデフォルトでこれを適用しますが、色の忠実度が極めて重要なアートワークや単色グラフィックの場合は無効にしてください。

JPEGは透過をサポートしますか?

いいえ — JPEGにはアルファチャンネルがないため、透明な画像はJPEGエクスポート時に強制的に背景(通常は白)が適用されます。透過にはPNGまたはWebPを使用し、JPEGは写真専用に留めてください。transparent images guideを参照してください。

Moody close-up of Canon 24mm and 18-55mm lenses under vibrant lighting.

Image credits

  • JPEG品質ラダー、ビフォー/アフター、およびサイズバイクオリティチャート — Macawの羽の写真(Pexels #36720663、Kaca Skok撮影)から作者が生成し、品質レベルにわたる実際の測定されたJPEG出力を示しています。

ガイドを読みながら無料ツールをお使いください。

画像フォーマット解説:JPEG、PNG、WebP、GIF、SVG、AVIF のカバー画像

Thu Mar 19 2026 20:00:00 GMT-0400 (北美东部夏令时间)

画像フォーマット解説:JPEG、PNG、WebP、GIF、SVG、AVIF

各画像フォーマットの用途を徹底解説。JPEGとPNG、WebP、AVIF、SVG、GIFなど、どの形式を使うべきかを比較し、実際の測定ファイルサイズやウェブ画像のための実用的な決定ルールを提供します。

画像圧縮の仕組み:JPEG、PNG、WebPを徹底解説 のカバー画像

Sat Mar 21 2026 20:00:00 GMT-0400 (北美东部夏令时间)

画像圧縮の仕組み:JPEG、PNG、WebPを徹底解説

画像圧縮技術の専門的な解説を行います。クロマサブサンプリング、DCT、量子化、PNGフィルタリングといった基本的なメカニズムから掘り下げ、各フォーマットが最も適している用途や実用的な画質設定について詳しくご説明します。