圖片壓縮的運作原理:有損 vs 無損解析 | Bulk Image Compressor

圖片壓縮到底是什麼?

圖片壓縮就是透過移除資料來減少檔案大小。這就是整個概念。你把一個比方說 5MB 的檔案,縮小到 500KB 或更小。問題始終是:哪些資料被移除了,以及你會注意到差異嗎?

每個數位圖片都由像素組成,每個像素儲存色彩資訊。一張 4000x3000 的照片有 1200 萬個像素,如果每個像素儲存 24 位元的色彩資料,那就是大約 36MB 的原始資訊。顯然,沒有人想處理 36MB 的圖片檔案,所以我們對它們進行壓縮。

有兩種方法:有損和無損。它們的運作方式不同,產生的結果不同,並且適用於不同的用途。

有損壓縮:丟棄你不會懷念的部分

有損壓縮會永久移除一些圖片資料。一旦消失,就無法恢復。聽起來很糟,但重點是:它設計來移除你的眼睛無論如何都不太會注意到的東西。

人類視覺對亮度變化的感知能力比對色彩變化更好。我們也不擅長在繁忙、複雜的圖片區域中捕捉精細的細節。有損壓縮利用了這兩個事實。

JPEG 壓縮的運作方式

JPEG 是最常見的有損格式,它的運作方式相當巧妙。

首先,圖片被分割成小的 8x8 像素區塊。每個區塊經過所謂的離散餘弦變換(DCT)。不用擔心數學問題。DCT 所做的是將像素資料從「這裡是每個位置的顏色」轉換為「這裡是整個區塊的變化模式」。

在該變換之後,資料會被量化。這一步驟是實際丟棄資訊的環節。微妙的高頻細節(顏色和亮度的微小變化)會被四捨五入或消除。任何圖片編輯器中的品質滑桿控制的就是這個量化的激進程度。

在品質 95 時,幾乎沒有東西被移除。在品質 30 時,很多東西被移除。這兩個設定之間的檔案大小差異可能非常巨大,通常是 10 倍或更多。

最後一步是熵編碼,這只是一個無損步驟,盡可能有效地打包剩餘的資料。可以把它想像成壓縮一個檔案。

品質的取捨

每個有損壓縮都涉及檔案大小和視覺品質之間的取捨。好消息是這種取捨不是線性的。從品質 100 降到品質 80 可能會將檔案大小減少 70%,而幾乎沒有可見的差異。從 80 降到 60 節省的空間較少,但開始出現假影,也就是那些有時在重度壓縮照片中看到的塊狀、模糊的區域。

對大多數照片來說,品質 75 到 85 是最佳平衡點。你可以獲得巨大的檔案大小節省,而且圖片對大多數人來說看起來仍然很棒。如果你想了解更多關於找到正確平衡的資訊,請參閱我們的指南 如何在保持品質的同時減少圖片檔案大小

無損壓縮:保留每個像素

無損壓縮在不移除任何資料的情況下減少檔案大小。當你解壓縮檔案時,你得到的是完全相同的原始檔案,像素對像素。代價是無損檔案比有損檔案大。

那麼,如何在不遺失任何東西的情況下縮小檔案呢?透過找到更有效的方式來描述相同的資料。

PNG 壓縮的運作方式

PNG 是使用最廣泛的無損格式。它結合了濾波和 DEFLATE 壓縮(與 ZIP 檔案中使用的演算法相同)。

在壓縮之前,PNG 對每一行像素套用濾波。它不儲存原始的顏色值,而是儲存每個像素與相鄰像素之間的差異。在顏色逐漸變化的區域,這些差異是非常小的數字,通常是零。小而重複的數字比看起來隨機的原始值壓縮效果好得多。

濾波之後,資料經過 DEFLATE,它會找到重複的模式並用較短的編碼代替。如果一個像素序列出現多次,它會被儲存一次,並在其他地方引用。

結果:你得到一個更小的檔案,但仍然是原始檔案的完美複本。對於典型的截圖或圖形,PNG 壓縮可以在沒有任何品質損失的情況下將檔案大小減少 50% 到 70%。

無損的強項

無損壓縮在圖片具有大面積相同顏色、銳利邊緣和文字時效果最好。截圖、標誌、圖表、UI 元素,任何具有純色和乾淨線條的東西,這些都能用 PNG 很好地壓縮。

照片用無損方法壓縮效果不好,因為它們每個像素都有太多變化。一張用無損方式壓縮的照片,可能比同一張照片以品質 80 儲存為 JPEG 大 3 到 5 倍,而且大多數人看不出差異。

何時使用哪一種

使用有損(JPEG)的情況:

  • 你正在處理照片
  • 檔案大小比像素完美的精確度更重要
  • 圖片將在網頁上顯示
  • 你需要一次壓縮大量圖片(試試 Bulk Image Compressor 進行批次處理)

使用無損(PNG)的情況:

  • 圖片包含文字、標誌或銳利邊緣
  • 你需要透明度(PNG 支援,JPEG 不支援)
  • 你正在儲存截圖或 UI 模型
  • 你需要之後再次編輯圖片並希望保留品質

品質設定的實際含義

當你在任何圖片工具中將品質滑桿從 1 調整到 100 時,你控制的是在量化步驟中丟棄多少資料。但這些數字在不同工具之間並不是標準化的。Photoshop 的品質 80、GIMP 的品質 80 和線上壓縮器的品質 80 都可能產生不同的結果。

比數字更重要的是輸出結果。壓縮你的圖片,看看它,檢查檔案大小。如果看起來不錯且檔案夠小,就完成了。如果看起來不好,稍微提高品質再試一次。

一個實用的方法:從品質 80 開始,與原始圖片進行比較。大多數時候,你不會看到差異。如果有,試試 85 或 90。低於 70,壓縮假影在大多數照片中會變得明顯。

不一定是二選一

像 WebP 這樣的現代格式實際上在同一種格式中同時支援有損和無損壓縮。你在儲存檔案時選擇使用哪種模式。這種靈活性是 WebP 在網頁圖片中如此受歡迎的原因之一。你可以在我們的 JPEG vs PNG vs WebP 比較 中閱讀更多關於格式差異的資訊。

總結:壓縮就是關於做出明智的取捨。有損壓縮透過移除你的眼睛不會懷念的資料來運作。無損壓縮透過更有效地描述相同的資料來運作。知道使用哪一種以及何時使用,可以節省時間,並讓你的圖片在最小的檔案大小下保持最佳外觀。

Ready to compress your images?

Bulk compress JPEG, PNG, WebP, and AVIF images right in your browser. No uploads, no sign-ups.

Try Bulk Image Compressor