或稱，是一種針對相片影像而廣泛使用的失真壓縮標準方法，由聯合影像專家小組開發。此團隊創立於 1986 年，1992 年發布了的標準而在 1994 年獲得了的認定。與視訊音訊壓縮標準的 MPEG很容易混淆，但兩者是不同的組織及標準。 本身只有描述如何將一個影像轉換為位元組的資料串流，但並沒有說明這些位元組如何在任何特定的儲存媒體上受封存起來。的壓縮方式通常是有失真壓縮，即在壓縮過程中影像的品質會遭受到可見的破壞，有一種以為基礎的標準 Lossless JPEG 是採用無失真的壓縮方式，但並沒有受到廣泛的支援。 一個由等公司所建立的額外標準，稱為（，檔案交換格式，聯合影像專家小組檔案交換格式）詳細說明如何從一個串流，產出一個適合於電腦儲存和傳輸（像是在網際網路上）的檔案。在普遍的用法，當有人稱呼一個 檔案，一般而言他是意指一個檔案，或有時候是一個檔案。然而，也有其他以為基礎的檔案格式，像是 JNG。 使用格式壓縮的圖片檔案一般也稱為，最普遍使用的副檔名格式為，其他常用的副檔名還包括、、以及。格式的資料也能受嵌進其他型別的檔案格式中，像是 TIFF 型別的檔案格式。 是全球資訊網上最普遍的用來儲存和傳輸照片的格式。它並不適合於線條繪圖和其他文字或圖示的圖形，因為它的壓縮方法用在這些型別的圖形上，得到的結果並不好（PNG 和 GIF 通常是用來儲存這類的圖形；每個畫素只有 8 位元，並不很適合於儲存彩色照片，可以無失真地儲存照片，但是檔案太大的缺點讓它不太適合在網路上傳輸）。 對於的 MIME 媒體型別是（定義於）。 JPEG 編 解碼器示例 編碼 JPEG 標準中許多選項很少使用，大多數影像軟體在建立 JPEG 檔案時使用更簡單的 JFIF 格式。當應用到一個擁有每個畫素 24 位元（24 bits per pixel，紅、藍、綠各有八位元）的輸入時，這邊只有針對更多普遍編碼方法之一的簡潔描述。這個特定的選擇是一種失真資料壓縮方法。 色彩空間轉換 首先，影像由 RGB（紅綠藍）轉換為一種稱為 YUV 的不同色彩空間。這與模擬 PAL 制式彩色電視傳輸所使用的色彩空間相似，但是更類似於 MAC 電視傳輸系統運作的方式。但不是模擬 NTSC，模擬 NTSC 使用的是 YIQ 色彩空間。 Y 成份表示一個畫素的亮度 U 和 V 成份一起表示色調與飽和度。 YUV 分量可以由 PAL 制系統中歸一化（經過伽馬校正）的 RGB 經過下面的計算得到： Y0299R0587G0114B U0147R0289G0436B V0615R0515G0100B 這種編碼系統非常有用，因為人眼對亮度差異的敏感度高於色彩變化。在此前提下可以設計更加高效壓縮影像的編碼器（encoder）。 縮減取樣（Downsampling） 經過 RGB 到 YUV 顏色空間的轉換後，開始進行縮減取樣來減少 U 和 V 的成份（稱為 縮減取樣 或 色度抽樣（chroma subsampling）。在 JPEG 上這種縮減取樣的比例可以是 444（無縮減取樣），422（在水平方向 2 的倍數中取一個），以及最普遍的 420（在水平和垂直方向 2 的倍數中取一個）。對於壓縮過程的剩餘部份，Y、U、和 V 都是以非常類似的方式來個別地處理。 離散餘弦變換（Discrete cosine transform） 下一步，將影像中的每個成份（Y U V）生成三個區域，每一個區域再劃分成如瓷磚般排列的一個個的 88 子區域，每一子區域使用二維的離散餘弦變換（DCT）轉換到頻率空間。 如果有一個如這樣的 88 的 8 位元（0255）子區域： begin bmatrix 52 55 61 66 70 61 64 73 63 59 55 90 109 85 69 72 62 59 68 113 144 104 66 73 63 58 71 122 154 106 70 69 67 61 68 104 126 88 68 70 79 65 60 70 77 68 58 75 85 71 64 59 55 61 65 83 87 79 69 68 65 76 78 94 end bmatrix 接著推移 128，使其範圍變為 128127，得到結果為 begin bmatrix 76 73 67 62 58 67 64 55 65 69 73 38 19 43 59 56 66 69 60 15 16 24 62 55 65 70 57 6 26 22 58 59 61 67 60 24 2 40 60 58 49 63 68 58 51 60 70 53 43 57 64 69 73 67 63 45 41 49 59 60 63 52 50 34 end bmatrix 且接著使用離散餘弦變換，和捨位取最接近的整數，得到結果為 begin bmatrix 415 30 61 27 56 20 2 0 4 22 61 10 13 7 9 5 47 7 77 25 29 10 5 6 49 12 34 15 10 6 2 2 12 7 13 4 2 2 3 3 8 3 2 6 2 1 4 2 1 0 0 2 1 3 4 1 0 0 1 4 1 0 1 2 end bmatrix 左上角之相當大的數值稱為 DC 係數（直流係數）；其他 63 個值稱為 AC 係數（交流係數）。下面將對所有 88 表格中的 DC 係數使用差分編碼，對 AC 係數使用行程編碼。 量化（Quantization） 人類眼睛在一個相對大範圍區域，辨別亮度上細微差異是相當的好，但是在一個高頻率亮度變動之確切強度的分辨上，卻不是如此地好。這個事實讓我們能在高頻率成份上極佳地降低資訊的數量。簡單地把頻率領域上每個成份，除以一個對於該成份的常數就可完成，且接著捨位取最接近的整數。這是整個過程中的主要失真運算。以這個結果而言，經常會把很多更高頻率的成份捨位成為接近 0，且剩下很多會變成小的正或負數。 一個普遍的量化矩陣是： begin bmatrix 16 11 10 16 24 40 51 61 12 12 14 19 26 58 60 55 14 13 16 24 40 57 69 56 14 17 22 29 51 87 80 62 18 22 37 56 68 109 103 77 24 35 55 64 81 104 113 92 49 64 78 87 103 121 120 101 72 92 95 98 112 100 103 99 end bmatrix 使用這個量化矩陣與前面所得到的 DCT 係數矩陣逐項相除，得到結果為： begin bmatrix 26 3 6 2 2 1 0 0 0 2 4 1 1 0 0 0 3 1 5 1 1 0 0 0 3 1 2 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 end bmatrix 舉個例子，使用415（DC 係數）且捨位得到最接近的整數 mathrm round left frac 41516 right mathrm round left 259375 right 26 熵編碼技術（entropy coding） 熵編碼是無失真資料壓縮的一個特別形式。它牽涉到將影像成份以 Z 字型（zigzag）排列，把相似頻率群組在一起（矩陣中往左上方向是越低頻率之係數，往右下較方向是較高頻率之係數），插入長度編碼的零，且接著對剩下的使用霍夫曼編碼。 JPEG 標準也允許（但是並不要求）在數學上優於霍夫曼編碼的算術編碼之使用。然而，這個特色幾乎很少獲使用，因為它被專利所涵蓋，且它相較於霍夫曼編碼在編碼和解碼上會更慢。使用算術編碼一般會讓檔案更小約 5。 對於前者量化的係數所作的 Z 字型序列會是： 26 3 0 3 2 6 2 4 1 3 1 1 5 1 2 1 1 1 2 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 當剩下的所有係數都是零，對於過早結束的序列，JPEG 有一個特別的霍夫曼編碼用詞。使用這個特殊的編碼用詞，EOB，該序列變為 26 3 0 3 2 6 2 4 1 3 1 1 5 1 2 1 1 1 2 0 0 0 0 0 1 1 EOB 壓縮比率與不自然痕跡（artifact） 按：artifact 在這個領域又解釋為贗像、非自然訊號、人為現象。 在量化階段時，依照除數的不同，會使結果的壓縮比率可能有很多變化。101 通常可得到無法使用肉眼分辨與原圖差異的影像。1001 壓縮通常是可行的，但與原圖相較，會看出明顯的不自然痕跡。壓縮的適當等級是依據要壓縮那一種影像而定。 使用全球資訊網的人，可能熟悉這種出現在 JPEG 數位影像，已知壓縮人為現象的不規則現象。這是由於 JPEG 演演算法的量化步驟所造成的結果。這種現象在臉部照片中的眼睛四周特別明顯。他們可以藉由選擇壓縮的較低水平（使用較低的壓縮率）來減少這種現象；他們可能藉由使用無失真檔案格式來儲存一個影像來消除這種現象，然而針對照片影像，這樣通常會使檔案大小增加。 解碼 解碼來顯示影像，包含反向作以上所有的過程 取 DCT 係數矩陣（在把 DC 係數差異加回去之後） begin bmatrix 26 3 6 2 2 1 0 0 0 2 4 1 1 0 0 0 3 1 5 1 1 0 0 0 3 1 2 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 end bmatrix 且以前面的量化矩陣乘以它，得到 begin bmatrix 416 33 60 32 48 40 0 0 0 24 56 19 26 0 0 0 42 13 80 24 40 0 0 0 42 17 44 29 0 0 0 0 18 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 end bmatrix 左上角的部份與原本 DCT 係數矩陣非常接近地相似。使用反向 DCT 得到一個有數值的影像（仍然受移位 128） left begin arrayrrrrrrrr 66 63 71 68 56 65 68 46 71 73 72 46 20 41 66 57 70 78 68 17 20 14 61 63 63 73 62 8 27 14 60 58 58 65 61 27 6 40 68 50 57 57 64 58 48 66 72 47 53 46 61 74 65 63 62 45 47 34 53 74 60 47 47 41 end array right 且對每一個專案加上 128 left begin arrayrrrrrrrr 62 65 57 60 72 63 60 82 57 55 56 82 108 87 62 71 58 50 60 111 148 114 67 65 65 55 66 120 155 114 68 70 70 63 67 101 122 88 60 78 71 71 64 70 80 62 56 81 75 82 67 54 63 65 66 83 81 94 75 54 68 81 81 87 end array right 這是解壓縮的子影像，且可以用來與原本子影像相比（也可以看右方的影像），藉由取兩者之間的差異（原本 解壓縮）得到誤差值。 left begin arrayrrrrrrrr 10 10 4 6 2 2 4 9 6 4 1 8 1 2 7 1 4 9 8 2 4 10 1 8 2 3 5 2 1 8 2 1 3 2 1 3 4 0 8 8 8 6 4 0 3 6 2 6 10 11 3 5 8 4 1 0 6 15 6 14 3 5 3 7 end array right 每個畫素大約是 5 的平均絕對誤差，也就是說，frac 164 sum_x18 sum_y18 e xy 48750。誤差在左下角顯而易見，左下方的畫素變得比它鄰近右方的畫素還更暗。 用法 JPEG 在色調及顏色平滑變化的相片或是寫實繪畫（painting）上可以達到它最佳的效果。在這種情況下，它通常比完全無失真方法作得更好，仍然可以產生非常好看的影像（事實上它會比其他一般的方法像是 GIF 產生更高品質的影像，因為 GIF 對於線條繪畫（drawing）和圖示的圖形是無失真，但針對全綵影像則需要極困難的量化）。 照片 JPEG 壓縮的不自然現象可以很好地調和到細微非均勻材質的相片中，因此允許得到更高的壓縮率。 附註：以上的影像並不是 IEEECCIREBU 測試影像，且壓縮編碼器的設定並沒有指明或是可以得到。 中等品質的相片只有六分之一的儲存空間，但是幾乎沒有明顯的細節損失或是看得到的人為效果。然而，一旦超過一個某整的壓縮限度，壓縮的影像逐漸地顯現出可以看得到的瑕疵。參考比率失真理論（rate distortion theory）的文章有針對這種限度效果的數學上之解釋。 醫學影像：少見的 JPEG 12 位元支援模式 有很多醫學的影像系統可以建立和處理 12 位元 JPEG 影像。12 位元 JPEG 格式已經是 JPEG 規格的一部份，但是非常少商業軟體程式（或網頁瀏覽器）支援這種不常使用的 JPEG 格式。 其他失真壓縮的編碼格式 更新的失真方法，尤其是小波壓縮（wavelet compression），在這些情況下甚至能作得更好。然而，JPEG 是一種建立得相當好的標準，擁有很多可使用的軟體，包含自由軟體，因此到 2005 年它持續獲大量使用。很多小波演演算法受到專利保護，要在很多軟體專案中自由地使用他們是困難或是不可能的。 JPEG 委員會現在也已經建立其自有的小波基礎標準－JPEG 2000，希望最終能取代原來的 JPEG 標準。 潛在的專利爭議 在 2002 年 Forgent Networks 主張他擁有且將會履行在 JPEG 技術上的專利權，起因於一個在 1986 年已經歸檔的專利。這個公告已經引起一陣大騷動，令人想起 Unisys 試圖主張對於 GIF 影像壓縮標準的權利。 JPEG 委員會審慎調查這個在 2002 年所主張的專利，且發現他們因為前案而無效作廢。其他的也已推斷 Forgent 並無擁有涵蓋 JPEG 的專利。儘管如此，在 2002 年和 2004 年之間，Forgent 藉由把他們的專利授權給某些 30 家公司，而獲得大約 9 千萬美元。在 2004 年 4 月，Forgent 控告 31 家其他公司來強求更多的授權支付。同年的七月，21 家較大的電腦公司組成的協會提出反控告，包含使該專利無效的目標。然而，到 2005 年 7 月的時候，這場官司仍然持續中。 JPEG 委員會在他的明確目標中有一項，是他們的標準在不支付授權金之下是可以受實作的，且他們已從超過 20 個大型組織中，得到適當的授權權利給他們即將到來的 JPEG 2000 標準。 專利案結束 經過數年的糾纏，於 2006 年 11 月，JPEG 專利持有者 Forgent Networks 終於與 30 家 PC 廠商結束了侵權官司，代價是 PC 廠商向 Forgent 賠款 800 萬美元，而不是 Forgent 期望的 1 億美元。 在與 PC 廠商大打官司之前，Forgent 已經與 60 多家公司和解，獲得的專利費用總額高達 11 億美元。包括雅虎在內的 45 家 PC 廠商拒絕就 4698672 號專利問題和解，而是選擇了對簿公堂，不過其中 15 家在此之前已經與 Forgent 和解。 雖然還是賠了款，但 PC 廠商們並沒有輸掉官司；雖然沒能得到自己想要的大筆美金，Forgent 也沒有徹底失敗。在非盈利性組織美國公共專利基金會（PPF）的協助下，他們設法獲得了美國專利和商標局（USPTO）的認可，對 Forgent 專利的有效性在 2 月和 6 月兩次重新進行了鑑定，最終法庭限制了 Forgent 專利的應用範圍。而從另一方面看，Forgent 的專利也得到了一定的維護，這要比被徹底推翻好得多，Forgent 也表示對結果感到很滿意。 Forgent CEO Richard Snyder 稱：在 672 專利的有效期內，我們已經獲得了 11 億多美元。很快，Forgent 還會再次有所行動。我們的精力現在已經轉移到 746 專利上，並等待 2007 年 5 月的陪審團裁決，同時我們還會繼續促進（分公司）NetSimplicity 的軟體業務。 無損耗旋轉（lossless JPEG rotation） 雖然任何對 JPEG 影像的處理都有可能導致因為解壓後再壓縮而引起的損耗，然而，對於簡單的旋轉動作，數學上是可以有辦法使影像得以旋轉而無損影像本身的資料。也就是說，有一種方法可以在無需把影像解壓後才可以旋轉。這是因為 JPEG 的檔案格式本身是以一個個模組為單位來壓縮，所以，只需要把模組重排，再對每個模組旋轉，就可以達至無損耗的旋轉。 使用者在操作上加以 注 意。例如：在 Adobe Photoshop 裡，使用者若要作無損耗旋轉前，必須在載入影像之後立刻用 Save As 功能儲存一個備份。然後當影像旋轉過後，由於 Photoshop 已掌握了影像的基本資料，所以在儲存時得以使用原來的設定。若沒有作事先儲存，Photoshop 就會把旋轉後的影像重新計算各項引數，並重新對影像進行壓縮處理。這樣就會造成資料的損耗。 壓縮標準 JPEG 是由國際標準組織（ISO）和國際電話電報諮詢委員會（CCITT）為靜態影像所建立的第一個國際數字影像壓縮標準，也是至今一直在使用的、應用最廣的影像壓縮標準。JPEG 由於可以提供有失真壓縮，因此壓縮比可以達到其他傳統壓縮演算法無法比擬的程度。 JPEG 的壓縮模式有以下幾種： 順序式編碼（Sequential Encoding） 一次將影像由左到右、由上到下順序處理。 遞增式編碼（Progressive Encoding） 當影像傳輸的時間較長時，可將影像分數次處理，以從模糊到清晰的方式來傳送影像（效果類似 GIF 在網路上的傳輸）。 無失真編碼（Lossless Encoding） 階梯式編碼（Hierarchical Encoding） 影像以數種解析度來壓縮，其目的是為了讓具有高解析度的影像也可以在較低解析度的裝置上顯示。 在 Independent JPEG Group 所提供的原始碼上，有 jpegtran 程式，就提供了最佳化 Huffman，轉成漸進式，鏡射，旋轉這些無損耗轉換。 參看：無損耗 JPEG 旋轉程式列表 （英語） 參見 數位相機 數位相框 影像壓縮 JPEGLS 非失真壓縮標準 JPEG 2000 JPEG XR Motion JPEG 影像編輯程式 獨立 JPEG 小組（Independent JPEG Group）的 Libjpeg 參考來源 外部連結 Official JPEG 官方網站 JPEG 常見問題與回答（FAQ） Wotsitorg 在 JPEG 格式的進入點 ITU T81 JPEG 壓縮 （PDF） JFIF 檔案格式 （PDF） JPEG 靜態影像壓縮標準，Gregory K Wallace 簡編 JPEG 壓縮（Gernot Hoffmann） JPEG 資源的開放列表 Jpeg Decoder Open Source Code Copyright C 19951997 Thomas G Lane Category 有失真壓縮演算法 Category 圖形檔案格式 CategoryITUT 建議書 Category 影像壓縮