PicShift 出力サイズが増える理由
変換後にファイルサイズが増える場合、PicShift は理由を表示します。このページでは、その判断ルールと B/ピクセル の計算方法を説明します。
PicShift が「深い圧縮」を判定する方法
PicShift はデータ密度のヒューリスティックを使います。元ファイルサイズと復号後ピクセル数から B/ピクセル を算出し、しきい値と比較します。
- ピクセル総数は復号後のサイズ(width x height)から取得します。
- B/ピクセル = 元バイト数 / ピクセル総数。
- B/ピクセル がしきい値未満の場合、説明上は「すでに強く圧縮済み」と扱います。
B/ピクセル の式
B/pixel = originalFileSizeBytes / (width x height)
例: 3000 x 2000、350 KB の画像を式に代入すると、(350 x 1024) / (3000 x 2000) = 0.0597 となり、約 0.06 B/ピクセル です。
それでも出力が大きくなる主な理由
- 非可逆/高圧縮形式から、効率が低い設定へ変換するとサイズが増える場合があります。
- 元画像の B/ピクセル がすでに低いと、同等の見た目でさらに削減できる余地は小さくなります。
- 小さい画像では、コーデックやコンテナのオーバーヘッドが目立ちやすくなります。
適用範囲と限界
- これは説明用のヒューリスティックで、すべての画像サイズを厳密に予測するものではありません。
- 写真・スクリーンショット・図形など、内容タイプで結果は変わります。
- 品質設定と出力形式の組み合わせでも傾向は変わります。
よくある質問
判定のためにもう一度フル再エンコードしますか?
いいえ。説明は軽量なメタ情報と形式ルールに基づき、追加のフル再エンコードは行いません。
B/ピクセル はどう計算しますか?
元バイト数を復号後ピクセル数で割ります: originalFileSizeBytes / (width x height)。
「深い圧縮」判定は厳密な画質スコアですか?
いいえ。サイズ傾向を説明するための実用ヒューリスティックです。
関連ページ
最終更新: 2026-03-07