画像を圧縮

目標容量を設定し、実際の結果を確認。

ここでの画像圧縮は、決まった画質を1つ当てはめるのではなく、実際に何通りかエンコードしてみて、元に近く見えるものの中で最も小さいファイルを残す処理です。最小・バランス(初期値)・高画質から選ぶと、NerulioがブラウザでPNG・JPG・WebPの候補を作り、それぞれを展開し直してSSIMで採点し、その段階の類似度の基準を超える最も小さい候補を返します。最大幅を指定しなければ解像度はそのままで、元より良い候補がなければ元のファイルをそのまま返します。容量の上限が決まっているなら、詳細設定の目標サイズか100KBなどの容量別ページを使います。

画像をここにドロップ複数のファイルをまとめて処理できます
アップロードなし · この端末で処理

候補、類似度の基準、生き残った最小のファイル

各段階には開始画質と基準値があります。最小は0.60 / 0.93、バランスは0.80 / 0.965、高画質は0.92 / 0.985です。自動形式はブラウザがエンコードできるすべての形式(ChromiumではPNG・JPG・WebP)を試しますが、透明なピクセルが1つでもあればJPGを外し、透過が知らないうちに消えないようにしています。

候補はすべて展開し直して元画像と比べます。長辺が最大512pxのコピーで明るさの8 × 8 SSIMを黒背景と白背景の上でそれぞれ計算し、悪いほうの点数を使うので、透明部分の下に隠れた色が点数をごまかせません。基準を超える非可逆候補のうち最小のものが選ばれ、手を加えていない元ファイルとPNGの再エンコードも一緒に競います。どうしても基準に届かない粒子の粗い写真は、最高点から0.01以内の候補のうち最小のものになります。

結果が入れたファイルより大きくなることはありません。すべての候補のほうが大きければ元のファイルを返し、「すでに十分小さいため元のままです」と表示します。

SSIMの基準
選んだ段階で候補が超えるべき最低の類似度(0.93、0.965、0.985)。
候補
実際に1回エンコードした結果(形式 + 画質)。展開し直して採点します。
自動形式
このブラウザがエンコードできるすべての形式。透過のある画像ではJPGを使いません。

1枚の写真の2つの版に3段階を適用(実測)

圧縮タスクと同じ設定のNerulioの圧縮、Chromium 153、2026-09-28。PNGはリポジトリのNASAのテスト写真、JPGは同じ写真をPillowの画質75で保存したものです。

astronaut.png   512 x 512   791,555 バイト
  最小       WebP q0.60    22,048 バイト   SSIM 0.9626   (基準 0.93)
  バランス   WebP q0.80    32,200 バイト   SSIM 0.9749   (基準 0.965)
  高画質     WebP q0.92    59,824 バイト   SSIM 0.9883   (基準 0.985)

astronaut-q75.jpg   512 x 512   40,240 バイト
  バランス   WebP q0.80    31,538 バイト   SSIM 0.9834
  高画質     元のまま(基準を超えたJPG q0.92は51,005 バイト)

高画質では0.985を超えた候補がどれも元のファイルより大きかったため、JPGがそのまま返りました。すでに圧縮済みの写真ではこれが想定どおりの結果です。

設定ごとの動作

設定エンコーダーの動作選ばれる結果
最小JPG・WebPの画質0.60SSIM ≥ 0.93の最小の候補
バランス(初期値)画質0.80SSIM ≥ 0.965の最小の候補
高画質画質0.92SSIM ≥ 0.985の最小の候補
目標サイズを指定(詳細)収まるまで画質を下げて探索目標以下でSSIMが最も高い候補
最大幅を指定(詳細)先にサイズ変更(Pica、mks2013)新しい幅で上と同じ

結果の確認

  • 各ファイルの下の行を読みます。例:「773 KB → 31 KB · 解像度 512×512 を維持」。容量は1,024バイト単位のKBです。
  • 結果を100%で開き、劣化が先に出る顔・文字・なめらかなグラデーションを確認します。
  • 拡張子(-min.webp、-min.jpg、-min.png)が提出先の受け付ける形式か確認します。

トラブルシューティング

症状考えられる原因確認方法対処
結果がWebPなのにサイトはJPGしか受け付けない自動は基準を超える最小の候補を残し、WebPになることが多いファイル名が -min.webp で終わる詳細 → 保存形式 → JPG
「すでに十分小さいため元のままです」基準を超える候補の中に元より小さいものがなかったファイルの作られ方と段階を見比べる最小を選ぶか、目標サイズを指定します
粗い写真が最小でも大きい基準に届かず、最高点に近い候補が使われたすべての候補のSSIMが基準を下回る目標サイズか最大幅を指定します
大きなスクリーンショットの小さな文字がぼやけた最大512pxのコピーで採点するため、細かな劣化を見逃すことがある文字を100%で拡大スクリーンショットは高画質かPNG出力にします
透過PNGがJPGにならない透明なピクセルがあると自動からJPGを外す—JPGを明示的に選びます。透明部分はJPGの背景色になります

ほかの方法

方法こんなときに向いています
容量別ページ(20KB〜1MB)フォームやサイトがファイルサイズの上限を決めている場合。
先にサイズ変更表示される大きさよりピクセルがずっと多い場合。ピクセルを減らすほうがどんな画質設定より効きます。
形式の変換自動の選択なしに、特定の形式と画質が必要な場合。

この方法の限界

  • 点数は長辺最大512pxのコピーで計算するため、大きな画像の細かな部分は点数を下げずに劣化することがあります。
  • エンコーダーはブラウザのものなので、別のブラウザでは容量が変わることがあります。EXIFは書き込まず、アニメーションファイルは拒否します。

バージョンと出典

すべての容量と点数は、2026-09-28にPlaywright Chromium 153で src/task/compress.js が渡す設定(段階ごとの画質と基準、original = 入れたファイル)のまま src/compression.js を呼び出し、tests/fixtures/astronaut.png、それをPillow 12.3の画質75で保存したJPG、tests/fixtures/texture/bricks_Color.png で計測しました。

参照した公式ドキュメント

使用例

元の図形サンプル · 96 × 64
元の図形サンプル · 96 × 64
処理後のサンプル · 96 × 64
処理後のサンプル · 96 × 64

このツールで作成した例です。ZIPツールはプレビューを表示します。すべてのファイルはダウンロードしたZIPで確認してください。

画像を圧縮

目標容量を設定し、実際の結果を確認。

使い方

  1. 元ファイルを開く
  2. 処理方式と設定を選ぶ
  3. 実行して結果を確認し保存

対応形式

PNG / JPG / WebP / AVIF / HEIC → PNG / JPG / WebP — 読み込み・書き出しはブラウザの対応状況によります。 アニメーション入力は非対応です。静止フレームを選択してください。

このツールでできること

Autoが実際のコーデック出力の標本品質を比較し目標容量を探索します。透過を考慮し、任意でサイズを縮小。

処理方式と検証状況

advanced · browser codecs / proxy SSIM candidate search. 品質検証中です。Pro・Flagship水準はまだ実証されていません。

書き出す前に

端末のメモリ・保存容量・コーデック対応によります。テスト例はすべてのファイルの動作保証ではありません。

よくある質問

対応サイズは何で決まりますか?

端末のメモリ・保存容量・コーデック対応によります。テスト例はすべてのファイルの動作保証ではありません。

ファイルはアップロードされますか?

このツールで開いたファイルはアップロードせず端末で処理します。コミュニティの投稿に明示的に添付する画像は別途アップロードされます。一部のエンジンやモデルは外部から取得するため、IPアドレスなどの接続情報は配信元に伝わります。

作業は自動保存されますか?

いいえ。画像と編集状態はこのタブに保持され、メディア出力は端末の一時保存を利用する場合があります。言語を変えても作業は残りますが、再読み込み、タブを閉じる操作、別のページへの移動で失われることがあります。