品質を損なわずに画像を圧縮する方法

· 9 分で読めます

大きな画像ファイルはウェブサイトを遅くし、メール受信箱を詰まらせ、ストレージを食い尽くします。圧縮はそれを高速化する最も簡単な方法の 1 つで、ソフトウェアをインストールせず、サーバーに何もアップロードせず、通常は目に見える品質低下なしで実行できます。適切な圧縮設定で、通常の表示距離では同じに見えながら、写真のサイズを 80% 削減できます。

画像圧縮の簡単な歴史

圧縮はデジタルの概念としてはウェブよりも古いものです。初期のビットマップフォーマット(1986 年の TIFF、それ以前の PCX)におけるランレングス符号化は、繰り返される色を回数と値に変換することで、スクリーンキャプチャや単純なグラフィックを劇的に縮小しました。1992 年の JPEG 標準は、人間の視覚システムが容易に知覚できない情報を破棄する離散コサイン変換(DCT)を使うことで、可逆ではない圧縮を主流にしました。この発想は 30 年後の今もほとんどの写真圧縮を支えています。

PNG は 1996 年に DEFLATE ベースの可逆圧縮として登場し、JPEG が苦手なスクリーンショットやロゴに最適でした。WebP(Google、2010 年)はより賢い非可逆モードを追加し JPEG を 25〜35% 上回り、可逆モードは PNG を 20〜30% 上回りました。AVIF(2019 年)はさらに大きく改善し、同じ品質で WebP の半分のサイズになることがよくあります。JPEG XL(2021 年)は最新の挑戦者で、可逆、非可逆、アニメーション、さらには既存の JPEG の追加損失なしの再圧縮まで、これらすべてを単一のフォーマットで置き換えることを目指しています。ブラウザの採用が制限要因で、アルゴリズム自体は JPEG をはるかに超える効率です。

画像ファイルサイズが重要な理由

ウェブページのすべての画像は、訪問者のブラウザがダウンロードしなければなりません。携帯電話カメラからの非圧縮の写真 1 枚は 5〜10 MB になります。複数の画像を掛け合わせると、ページの読み込みが高速接続では目に見えて遅く、低速接続では数分かかるようになります。画像を小さくすると以下の利点があります:

画像圧縮の仕組み

圧縮には 2 種類あり、それぞれにトレードオフがあります。

非可逆圧縮(JPEG、WebP、AVIF)は、目が気づきにくい画像データを取り除きます。中程度の品質レベル(約 60〜80%)では、結果は元のものとほぼ同じに見えますが、50〜80% 小さくなります。アルゴリズムは 3 つのステップで動作します: RGB を YCbCr に変換(明るさを色から分離)、色チャンネルをダウンサンプリング(目は明るさよりも色の細部にはるかに鈍感)、DCT を適用して高周波の詳細を破棄。各ステップは知覚品質には影響せず、膨大なデータを節約します。

可逆圧縮(PNG、音声の FLAC)は、何も取り除かずにデータを再編成して空間を節約します。画像はピクセル単位で元と同一ですが、ファイルサイズの節約は小さく、写真では通常 10〜30%、スクリーンショットやロゴでは 30〜60% です。

混合モードのフォーマット(WebP、AVIF、JPEG XL)では、ファイルごとに非可逆か可逆かを選択できます。ほとんどの現代の写真パイプラインは、配信用に非可逆、アーカイブ用に可逆マスターを保持します。

オンラインで画像を圧縮する方法

  1. 画像をアップロード: 1 つまたは複数の画像(JPEG、PNG、WebP、AVIF、HEIC、GIF、BMP、各最大 50 MB)をツールにドラッグ&ドロップするか、クリックしてファイルを選択します。すべてローカルで処理され、アップロードされません。
  2. 品質設定の調整: 品質スライダーで圧縮レベルを制御します。値が低いほど、より多くの圧縮で小さなファイルを意味します。最大幅の設定、出力フォーマットの変更、目標ファイルサイズの指定も可能です。
  3. 結果のプレビュー: ほとんどのツールは、新しいファイルサイズと共に前後のサムネイルを表示します。あなたの用途に対するトレードオフが適切になるまで品質を調整します。
  4. 結果のダウンロード: 個別の圧縮画像をダウンロードするか、「すべてダウンロード」をクリックしてバッチを ZIP でダウンロードします。

裏では、ファイルは FileReader で読み込まれ、ブラウザの画像パイプラインでデコードされ、オフスクリーンキャンバスに描画され、canvas.toBlob で目標品質に再エンコードされます。WebP、AVIF、MozJPEG エンコーダの WebAssembly バージョンが、ページを離れることなくネイティブに近い圧縮性能を提供します。

実際に機能する品質設定

普遍的な「正しい」品質はありません。以下の表は出発点です。画像が実際にどう見えるかに基づいて調整してください。

用途推奨品質フォーマット注記
ヒーロー / バナー写真80〜85JPEG / WebPエッジをくっきり保つ
ブログ記事内画像70〜80WebP / JPEGヒーローより小さくて OK
サムネイル / プレビュー60〜70WebP / JPEG小さければ品質はあまり問題ない
商品写真80〜90JPEG / WebP細部が商品を売る
UI のスクリーンショット90+ または PNGPNG / WebP 可逆JPEG はくっきりしたエッジを台無しにする
図 / チャートPNG または WebP 可逆PNG / WebP硬いエッジ、フラットな色
アーカイブ用写真可逆 WebP / FLIF可逆すべてのピクセルを保持
アバター / プロフィール写真75〜85JPEG / WebP顔が認識可能なまま
背景パターン60〜70WebP / JPEG地味なので低品質に耐える

最良の結果を得るためのヒント

どのフォーマットをいつ使うか

フォーマット最適な用途圧縮タイプブラウザサポート(2024)
JPEG写真、リアルな画像非可逆普遍的
PNGスクリーンショット、テキスト付きグラフィック、透明度可逆普遍的
WebPウェブ画像(写真とグラフィック)非可逆と可逆の両方97%+
AVIF現代のウェブ画像、WebP の半分のサイズ非可逆と可逆の両方92%+
HEICApple エコシステムの写真非可逆と可逆Safari、他では約 60%
GIFシンプルなアニメーション(WebP/MP4 を検討)可逆(色制限あり)普遍的
JPEG XL将来性、JPEG の可逆再エンコード両方限定的、増加中

2024 年の新コンテンツのベストプラクティスは、サポートされる場所には AVIF、普遍的な現代のフォールバックとして WebP、絶対の最終手段として JPEG または PNG を出荷することです。HTML の picture 要素はこれを綺麗に処理します。

よくある落とし穴

代替ツールとライブラリ

ウェブ圧縮ツールは、1 つまたは数枚の画像の最速の道です。バッチやスクリプト化されたパイプラインには、コマンドラインツールやライブラリが引き継ぎます。

ツールプラットフォーム強み注意点
ウェブ画像圧縮ツールブラウザインストール不要、アップロード不要、バッチ UI速度はデバイスに依存
MozJPEGCLI同じ品質で libjpeg-turbo より小さい JPEGJPEG のみ
GuetzliCLI圧倒的に小さい JPEGエンコードが極端に遅い
jpegoptimCLI可逆 JPEG 最適化既に最適化されたファイルでは効果が限定的
OptiPNG / oxipngCLI可逆 PNG 最適化速度はコンテンツによる
pngquantCLIアルファ付き PNG-8 量子化品質は意図的に非可逆
cwebp / dwebpCLIWebP リファレンスツールフォーマットごとのバイナリ
avifenc / avifdecCLIAVIF リファレンスツールWebP エンコーダより遅い
Squoosh CLICLI現代のコーデックをすべて 1 つのツールで新しく、オプションが少ない
sharp(Node.js)ライブラリ大規模なサーバー側で最速Node ランタイムが必要
Pillow(Python)ライブラリPython 的、簡単なスクリプト化sharp より遅い
ImageMagick / GraphicsMagickCLIリサイズ + 圧縮 + 変換を 1 つのツールで冗長な構文

商品写真パイプラインの自動化には、sharp + MozJPEG + AVIF が 2024 年で最高の速度対品質比を提供します。一回限りのアップロードには、ブラウザツールが利便性とプライバシーで勝ります。

プライバシーと圧縮ツール

画像圧縮ツールは完全にブラウザ内で動作します。選択したファイルは FileReader API で読み込まれ、ブラウザの画像パイプラインでデコードされ、オフスクリーンキャンバスに描画され、canvas.toBlob で再エンコードされます。アップロードもログ記録も共有もされません。機密素材、内部ダッシュボードのスクリーンショット、ID スキャン、画像プルーフとしての契約書ドラフトなどには、このローカルのみのフローが、見知らぬ人のサーバーを信頼するか、誰も信頼しないかの違いです。普通の写真でも、サードパーティに見せたくない EXIF メタデータ(GPS 座標、デバイスのシリアル番号、タイムスタンプ)が含まれることがよくあります。キャンバスベースのパイプラインはデフォルトでほとんどの EXIF を取り除き、アップロードがないため、データはどのみちページを離れません。写真を小さくするほど日常的な作業では、プライバシーのデフォルトは: 何もページを離れない、何も保存されない、何も共有されない、であるべきです。

よくある質問

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

約60%の品質では、ほとんどの画像が元とほぼ同じに見えますが、50〜80%軽くなります。違いは通常、非常に近くにズームしない限り、肉眼では見えません。

どの画像形式を圧縮できますか?

JPEG、PNG、WebP、GIF、BMPなどの一般的なWeb形式はすべて圧縮できます。JPEGとWebPはロッシー圧縮(調整可能な品質)を使用しますが、PNGはロスレス圧縮を使用します。

ブラウザで画像を圧縮するのは安全ですか?

はい。ブラウザ内画像圧縮ツールは、JavaScriptを使ってデバイスで完全にファイルを処理します。画像はサーバーに送信されることはなく、完全にプライベートに保たれます。

複数の画像を一度に圧縮できますか?

はい。ほとんどのブラウザ内ツールはバッチ処理を処理します, 一度に複数のファイルを選択すると、すべて同じ設定で圧縮されます。

What is the difference between compressing and resizing?

Resizing changes the pixel dimensions (a 4000px photo becomes 1200px). Compressing reduces the file size in bytes without changing the dimensions. For the smallest possible file, resize first, then compress.

Will compression strip my EXIF and GPS metadata?

Browser-based compressors built on the Canvas API typically drop all EXIF, including GPS coordinates, camera model, and timestamps. Server-side tools may preserve it. If privacy matters, prefer a Canvas-based tool and verify with a test image.