← 返回部落格

ImgZilla 實測(三):攝影師視角,壓完的 JPEG 還能不能進後期

前兩篇算的是「省了多少 GB、值多少錢」。這一篇不談帳單,只回答攝影師真正關心的一個問題:把一張 JPEG 交給 ImgZilla,它到底改了哪些東西,這些改動在 Lightroom / Photoshop / Capture One 裡會付出什麼代價。數據來自和前兩篇同一批 32188 張相機…

分享

前兩篇算的是「省了多少 GB、值多少錢」。這一篇不談帳單,只回答攝影師真正關心的一個問題:把一張 JPEG 交給 ImgZilla,它到底改了哪些東西,這些改動在 Lightroom / Photoshop / Capture One 裡會付出什麼代價。數據來自和前兩篇同一批 32188 張相機 / 手機直出 JPEG 的實測,外加對其中 200 多對檔案做的逐位元組比對。

一、先回答最尖銳的問題:位深有沒有被砍

攝影圈裡對「壓縮」最常見的警惕是:我的 12 bit、14 bit 會不會被壓成 8 bit。

這個擔心用錯了對象。先把兩件事分開:

  • 色彩位深(bit depth):每個顏色通道用多少 bit 記錄。8 bit=每通道 256 級,14 bit=16384 級。位深決定你在後期裡能往暗部、天空推多遠而不出色帶。
  • 檔案密度(每像素位元 / bpp):檔案體積 ÷ 像素數。上一篇按 bpp 分檔看過——它衡量的是「這張圖每個像素花了多少位元組存」,是壓縮的對象,和色彩位深是兩碼事。

ImgZilla 壓的是後者(密度),不動前者(位深)。而且對 JPEG 來說,位深這個問題根本不成立:

抽樣 209 對原圖 / 壓縮圖,逐個讀 JPEG 的 SOF 標記:壓縮前後的精度全部是 8 bit。

原因很簡單——基線 JPEG 按標準定義就是每通道 8 bit。相機直出的 JPEG 從來就沒有 12 bit 可言,ImgZilla 也就無從「降」。

那 12 / 14 bit 的數據在哪裡?只在 RAW 裡。 而 ImgZilla 支援的格式是 gif / png / jpg / jpeg / svg / heic / heif / webp / avif——不包含任何 RAW 格式(CR2、CR3、NEF、ARW、RAF、DNG 都不在列,拖進去會被直接忽略)。你的數位底片根本不進它的處理流程,天然安全。

這一節的結論:JPEG 沒有位深可降,8 bit 進、8 bit 出;RAW 不被觸碰。位深不是這篇文章要擔心的事——真正要看的是下面兩節。

二、那到底改了什麼:一次完整的有損重編碼

ImgZilla 處理 JPEG 的方式,不是「在原檔案上做無損優化」,而是把圖整個解碼再重新編碼一遍。完整流程:

讀入 JPEG
→ 解碼成 8 bit RGB 像素
→ 重新轉 YCbCr
→ 按固定量化表重新量化(有效品質約 quality 70)
→ 重新計算最優 Huffman 表
→ 輸出為漸進式(progressive)JPEG

這裡面「重新量化」這一步是有損的。量化表越粗,丟掉的高頻細節越多、檔案越小。用抽樣檔案的量化表強度(量化步長之和,數字越大=量化越狠)量一下:

量化表強度(中位數)
相機 / 手機直出原圖 1858
ImgZilla 壓縮後 6852

量化強度約為原來的 3.7 倍。 這是實打實的二次量化——不是「無損重排」,是重新丟了一輪高頻資訊。

有兩件事沒有變:

  • 解析度一個像素不動。 全部 32188 張圖統計 dimensions_changed 欄位,無一例外為 false。ImgZilla 不縮放、不裁剪,省下的體積全部來自重編碼。
  • 位深不變(見上一節),8 bit 進 8 bit 出。

一件事變了但不影響畫質:輸出是漸進式 JPEG(原圖基本都是基線式)。漸進式對網頁載入體驗更好,對畫質沒有任何代價,Lightroom / Photoshop / Capture One 都能正常讀——只有個別很老的軟體可能不認。

三、對後期影響最大的一項:色度抽樣被強制降到 4:2:0

這是整篇文章裡攝影師最該知道的一條。

JPEG 用「色度抽樣」來省空間——人眼對亮度敏感、對顏色解析度不敏感,所以可以讓色度資訊的解析度低於亮度:

  • 4:4:4:色度和亮度同解析度,顏色資訊最完整。
  • 4:2:2:色度水平方向減半。很多相機、以及一部分手機的直出 JPEG 用這個。
  • 4:2:0:色度水平、垂直都減半,只有亮度的 1/4 解析度。絕大多數「為體積優化過」的 JPEG 用這個。

抽樣 209 對檔案,看壓縮前後的色度抽樣:

色度抽樣 原圖 ImgZilla 壓縮後
4:4:4 1 0
4:2:2 128(61%) 0
4:2:0 80(38%) 209(100%)

壓縮後 100% 是 4:2:0。其中 61% 的圖是從 4:2:2 掉下來的——色度垂直解析度減半,且不可逆。

這會在後期裡體現在哪

色度解析度降低,肉眼直接看一張沒修的圖,多數時候確實看不出來。問題出在你動它的時候

  • 調色 / 分離色調:加大飽和度、拉 HSL、做色彩分級時,色度塊的邊界會開始顯形,尤其在膚色的明暗過渡藍天到地平線的漸變這類大面積平滑區域。
  • 按顏色做選區 / 遮罩 / 抠像:Lightroom 的顏色範圍遮罩、Photoshop 的色彩範圍、綠幕抠像——這些都吃色度邊緣的精度,4:2:0 之後邊緣會毛、會帶鋸齒。
  • 高對比邊緣的彩色描邊:紅黑文字、霓虹燈、樹枝逆光——4:2:0 會在這些地方留下彩色的「溢出」。

叠加效應

有效品質約 quality 70 + 4:2:0,本身是個「偏壓縮」的工作點。一張原本 quality 92、4:2:2 的直出圖,在後期裡能承受的推拉幅度,明顯大於同一張被壓到 quality 70、4:2:0 之後。再算上「你壓完之後又編輯、又存一次」——那是兩輪有損重編碼疊在一起。

什麼情況下這一項無所謂

如果你的原圖本來就是 4:2:0(大量中低端手機、老機型的直出,以及任何已經過網頁優化的圖),ImgZilla 的重編碼在色度上沒有額外損失——它只是把圖收斂到和原來相近的工作點。這也正是這類圖壓縮率偏低的原因(見第六節的解析度分檔:iPhone 直出只省 70.7%,而更「肥」的通用 12MP 能省 80%)。

四、元數據:EXIF / XMP / ICC 全部丟失

ImgZilla 預設去除元數據。抽樣 209 對檔案,壓縮前後對比:

元數據 原圖帶有 壓縮後保留
EXIF(拍攝參數) 204 0
XMP(評級 / 關鍵字 / 版權) 134 0
ICC(色彩描述檔案) 2 0

逐項說清楚丟的是什麼:

  • EXIF:光圈、快門、ISO、焦距、鏡頭型號、機身型號、拍攝時間、GPS 座標、版權欄位——全沒了。對做圖庫編目、按拍攝參數復盤、或需要版權資訊隨檔案走的攝影師,這是硬傷。
  • 方向標記(EXIF Orientation):這條單獨拎出來,因為它會直接影響顯示。很多相機和老手機是「拍攝時不物理旋轉像素,只寫一個方向標記」。標記被去掉後,直拍的照片在部分軟體裡會顯示成橫的——libjpeg 重編碼時不會替你把像素轉正。現代旗艦手機多數已經物理旋轉 + 標記歸位,不受影響;但用相機、或用老設備的,壓之前最好確認一下。
  • XMP:你在 Lightroom / Bridge 裡打的星級、旗標、關鍵字、標題、版權聲明——如果是寫進檔案的 XMP(不是 sidecar 或目錄資料庫),壓完就沒了。
  • ICC 色彩描述檔案:這批樣本裡幾乎沒有嵌入 ICC(多為無標記的 sRGB),所以本次實測這一項基本沒被觸發。但如果你的交付走 Display P3 或 Adobe RGB 廣色域,嵌入的 ICC 會被去掉,播放端只能按 sRGB 解釋,顏色會發悶或偏移。廣色域工作流要特別當心這條。

設定裡有「保留元數據」的選項,但如果元數據對你的流程重要,最穩妥的做法是:需要保留元數據的圖,不要用它原地壓——保留原圖。

五、這些代價,什麼時候可以接受

把上面三節合起來看,ImgZilla 對 JPEG 的處理是:8 bit 不變、解析度不變、色度降到 4:2:0、品質收到約 70、元數據清空,換來體積平均 −76.8%。

這個交換在下面這些場景是划算的:

  • 交付給客戶看片的瀏覽圖、網站作品集、社交平台投稿。 這些圖本來就會被平台再壓一道,4:2:0 + quality 70 在純觀看端幾乎無感,而體積能砍掉四分之三——上傳快、載入快、圖床和 CDN 帳單低(前兩篇算過這筆帳)。
  • 選片淘汰後要長期歸檔的 JPEG。 留作記錄、不打算再進後期的片子。
  • 微信 / 郵件發圖、給同事傳素材——傳輸時間基本按體積同比縮短。

前提是:先用內建對比視窗(⌘D)自己驗。 ImgZilla 會把壓縮前 / 壓縮後左右分屏,可以放大到實際像素逐點對照。對畫質敏感的人,別聽「看不出差別」這句話,自己拉到 100% 看你最在意的那部分——膚色、天空、髮絲邊緣。

六、什麼情況下不要用它壓

  • 還要在 Lightroom / Photoshop / Capture One 裡做大調整的 JPEG——尤其是只有 JPEG、沒有 RAW 的片子。這種圖每一分編輯寬容度都金貴,別提前用掉。留原圖,等修完匯出時再壓匯出版本。
  • 需要保留 EXIF / 版權 / GPS / 星級關鍵字的編目庫。
  • Display P3 / Adobe RGB 廣色域交付——ICC 會被去掉。
  • 你的 RAW——它不受影響(ImgZilla 根本不碰),但也別指望這個工具幫 RAW 瘦身,那不是它的活。

一句話:ImgZilla 適合壓「產出物」,不適合壓「還要再加工的中間件」。

七、數據附錄:這批 32188 張直出 JPEG

和前兩篇同一批樣本,16 個子目錄、無篩選、原地壓縮。

整體

體積 相對原始
相機 / 手機直出原圖 99.9 GB
ImgZilla 壓縮後 23.1 GB −76.8%

平均每張 2.96 MB → 0.69 MB。逐檔案壓縮比的算術平均是省 76.6%,中位省 77.3%,和按總位元組算的 76.8% 基本重合。

按解析度分檔:不同設備留的空間差很多

出圖尺寸 張數 占比 逐檔案平均省
4000×3000(通用 12MP,多為安卓 / 卡片機) 19867 61.7% 80.1%
4032×3024(iPhone 主攝 12MP 預設尺寸) 3529 11.0% 70.7%
3456×4608(16MP 竖版) 2631 8.2% 76.9%
4608×3456(15.9MP) 903 2.8% 54.8%
1600×1200 257 0.8% 51.4%

(機型是按出圖解析度推斷,非讀取 EXIF——EXIF 在壓縮資料裡已不可得。)

同一個工具、同一批沒人碰過的原圖,最能壓的一檔(80%)和最難壓的一檔(55%)差了 25 個百分點。 差別全在原圖本身:蘋果的相機 JPEG 管線量化更激進、編碼更緊,出廠就接近合理下限;大量廉價 / 老設備的直出用的是偏保守的固定量化表,肥的部分還沒被動過。越新的大底旗艦,直出越「瘦」,留給二次壓縮的空間越小——這不是壞事,是你的原圖本來就沒那麼浪費。

逐檔案分布

省下比例 張數 占比
90%–100% 866 2.7%
80%–90% 11375 35.3%
70%–80% 15244 47.4%
60%–70% 3349 10.4%
50%–60% 398 1.2%
低於 50% 956 3.0%

82.7% 的照片省下 70%–90%。 按分位數:一半以上省 77% 以上,收益最差的 10% 也省了約 68%,只有約 1%(p99)省的比例低於 40%。

幾個極端

原始 壓縮後 省下
壓縮比最高 3.55 MB(4000×3000) 100 KB 97.2%
單張省下最多 17.9 MB(4000×3000) 1.13 MB 16.8 MB
收益最差 70 KB(1242×1242) 68.8 KB 2.1%

八、數據與測試說明

  • 樣本範圍:整體壓縮率、解析度分檔、逐檔案分布這些數字,來自這一批 32188 張相機 / 手機直出 JPEG 的實測,反映的是這批樣本的結果,不等於「ImgZilla 平均能壓 76.8%」。不同相機、機型、匯出設定,結果都會不一樣。
  • 樣本選取:整批檔案未做篩選或清洗,按原有的 16 個子目錄整體壓縮。
  • 機型歸屬:解析度分檔裡的設備判斷是按出圖尺寸推斷的,不是讀 EXIF(EXIF 在壓縮後的資料裡已不可得);同一解析度也可能來自多種設備。
  • 位元組比對是抽樣:色度抽樣、位深、量化表、元數據的結論,來自對隨機抽取的 209 對原圖 / 壓縮圖逐位元組解析 JPEG 標記,是抽樣口徑,不是全量 32188 張。
  • 統計口徑:整體 76.8% 為「總節省位元組 ÷ 總原始位元組」;逐檔案壓縮比的算術平均 76.6%、中位數 77.3% 已在正文列出。體積單位按 1 GB = 10⁹ 位元組換算。
  • 壓縮參數:參數固定,介面上沒有品質 / 採樣滑桿。這是設計取捨——參數已調到視覺無損區間的平衡點。習慣自己手動調 quality / 采樣的攝影師,這一點需要留意。
  • 「視覺無損」不等於「無損」:真正的無損(像素完全不變)只有 PNG 和 SVG;JPEG 是有損重編碼,參數選在肉眼幾乎分辨不出來的區間。內建對比視窗可逐像素核對。
  • 執行環境:全程在本機完成,圖片不連網、不上傳(App Store 購買校驗除外)。

想自己驗一遍? ImgZilla 免費版每天可壓 10 張,壓縮成功才扣額度。拿幾張你最挑剔的片子——人像、藍天、逆光髮絲——壓完用對比視窗拉到 100% 自己看,再決定要不要把整個圖庫交給它。

Mac App Store: https://apps.apple.com/app/apple-store/id6749323539?pt=127227004&ct=v2&mt=8
了解更多: https://imagetool.app/ImgZilla

系統要求:macOS 12.3 或更高版本。
}

想讓圖片更小更快?

下載 ImgZilla,在本機完成壓縮,圖片不會上傳雲端。