壓縮圖片的原理是什麼?為什麼會變模糊?

圖片變小靠兩件事:降低 JPEG 品質(丟掉不明顯的細節)和縮小像素尺寸。壓太多就會出現模糊、色塊;要壓到指定大小又想保留像素時,常見的順序是先降品質、不夠再縮尺寸。

文章 文件與照片壓縮 Charonyu 實用教學
PassSize 畫面

本文提到的 PassSize 目前審核中・即將上架,還不能下載。上架前可以先用文中的內建方法,上架後這裡會換成下載連結。

快速回答

圖片壓縮主要有兩個手段:降低品質(JPEG、HEIC 這類有損格式會丟掉人眼不容易察覺的細節)和縮小尺寸(減少像素數量)。壓得越兇,丟掉的細節越多,就會出現模糊、色塊、邊緣鋸齒。要壓到指定大小又想保留像素,常見的策略是先適度降低品質,真的不夠再縮小尺寸;如果網站本來就規定了像素尺寸,則先縮到規定像素再調品質。能指定目標大小的工具(例如 PassSize)就是在目標內搜尋可用的最高品質,不夠才縮尺寸。

有損壓縮和無損壓縮有什麼差別?

  • 無損壓縮:像把文字檔打包成 ZIP,解開後一個位元都不少。PNG 就是無損格式,適合截圖、圖表、文字多的圖片。無損壓縮能省多少,要看畫面:大片同色的截圖、圖示可以縮很多;細節多的照片則省得有限,存成 PNG 會非常大。
  • 有損壓縮:JPEG、HEIC 屬於這類。它會分析畫面,把人眼不敏感的部分(例如細微的色彩變化、高頻細節)簡化或丟掉,換來小很多的檔案。

一般照片用有損壓縮很划算:同一張照片,JPEG 往往只有無損格式的一小部分大小,肉眼卻看不太出差別。HEIC 是 iPhone 預設的格式,同畫質下通常比 JPEG 更小,只是不少網站不收,詳見〈HEIC 是什麼?〉。

JPEG 的「品質」到底在調什麼?

JPEG 會把畫面切成小方塊,再決定每個方塊要保留多少細節。「品質」設定就是在調這個保留程度:

  • 品質高:保留多數細節,檔案大。
  • 品質中:丟掉不明顯的細節,檔案小很多,一般照片幾乎看不出差別。
  • 品質很低:連明顯的細節也被簡化,開始看到方塊狀色塊、天空出現色階、文字邊緣有雜點。

所以壓縮變模糊,通常是品質被壓到太低,或尺寸被縮得太小。

為什麼縮小尺寸也會讓檔案變小?

檔案大小跟像素數量直接相關。4000×3000 的照片有 1200 萬個像素;縮成 2000×1500 只剩 300 萬個,是原本的四分之一,檔案通常也跟著大幅縮小。

縮尺寸的代價是放大看時細節變少。但很多上傳用途根本不需要那麼多像素,例如網站顯示大頭照可能只用到幾百像素寬。像素、尺寸和檔案大小的關係可以看〈照片尺寸 1200×1200 是什麼意思?〉。

為什麼截圖存成 PNG 特別大?

iPhone 截圖預設是 PNG,也就是無損格式。截圖的像素數跟螢幕一樣多,每個像素又完整保存,所以一張常常有幾 MB。如果截圖只是要附在報名資料裡,轉成 JPEG 通常就能小很多;但截圖裡的小字在低品質 JPEG 下容易出現雜點,品質不要壓太低。

為什麼不能無限壓縮?

每次有損壓縮都是在丟資訊,而且有下限:

  • 品質壓到最低,檔案還是有一定大小,因為每個像素區塊都得留一點資料。
  • 再壓下去只剩縮小尺寸一途,像素少到某個程度就認不出臉、看不清字。
  • 已經壓過的 JPEG 再壓一次,會在原有的失真上再加失真,畫質掉得比預期快。

所以「把 10MB 照片壓到 50KB 還要很清楚」通常做不到,合理的目標要看用途。

先降品質,再縮尺寸

要壓到指定大小(例如 2MB)又盡量清楚,比較好的順序是:

  1. 先用高品質試:如果已經小於目標,就不需要再動。
  2. 在品質範圍內找答案:用「二分搜尋」的方式,在高品質和低品質之間來回試,每次取中間值,幾次之內就能找到「剛好不超過目標」的最高品質,不用一格一格往下試。
  3. 品質降到底線還太大,才縮小尺寸:等比例縮小後再重複上面的步驟。

先降品質的原因是:適度降品質肉眼通常不容易看出來,但縮尺寸會直接減少細節。這是「想保留像素」時的策略,不是所有情況的唯一解:如果網站本來就只要 600×800,先縮到規定像素再調品質會更直接。

用 PassSize 自動壓到指定大小

PassSize 的「壓到指定大小」就是照這個邏輯運作:你選 500KB、1MB、2MB 或自訂大小,它會在不超過目標的前提下搜尋可用的最高品質,品質降到底線還太大才縮小尺寸;如果還是達不到,會提示有幾個檔案仍超過,建議縮小尺寸或調整目標。也可以同時限制長寬(例如 1200×1200),整個過程都在 iPhone 上處理。壓完仍建議放大檢查文字和臉部是否清楚。實際步驟見〈iPhone 照片怎麼壓到 2MB 以下?〉。

小提醒:不要拿「已經壓過」的檔案反覆再壓。要換目標大小時,回到原圖重新壓一次,畫質會好很多。

PassSize:文件與照片壓縮

揭露:PassSize 是本站(Charonyu)開發的 App。文中的內建方法與其他做法,都是不需要下載我們的 App 也能使用的選擇。

常見問題

有損壓縮和無損壓縮差在哪?

無損壓縮(例如 PNG)解壓後跟原圖一模一樣,對照片通常省得有限,但對截圖、圖示這類大片同色的圖可以省很多;有損壓縮(例如 JPEG、HEIC)會丟掉一些人眼不容易察覺的細節,換來小很多的檔案。

壓縮過的照片可以再變回清楚嗎?

不行。有損壓縮丟掉的資訊不會回來,放大顯示也補不回細節;再用有損格式存一次,還可能多一層失真。所以要保留原圖。

為什麼截圖存成 PNG 那麼大?

PNG 是無損格式,每個像素都完整保存;手機截圖像素多,自然很大。如果只是要上傳,轉成 JPEG 通常能小很多。

JPEG 品質設多少比較好?

沒有固定答案,跟照片內容有關。一般照片在中高品質時肉眼差異很小,降到很低才會明顯出現色塊。能指定目標大小的工具會在不超過目標的範圍內,搜尋可用的最高品質。

延伸閱讀