圖像壓縮編碼方法有很多種,而且很多方法還在不斷的發展和完善中。從不同的角度出發有不同的分類方法。
圖像編碼、壓縮可以根據解壓重建后的圖像和原始圖像之間是否具有誤差,而分為無失真編碼和限失真編碼兩大類。前者用于要求重建后圖像嚴格地和原始圖像保持相同的場合,例如復制、保存十分珍貴的歷史、文物圖像等;后者則適用于大多數工程應用的情況。
圖像編碼也可以根據實施編碼所在的數據域劃分為空間域編碼和變換域編碼兩大類。但是,近年來,隨著科學技術突飛猛進的發展,許多新理論、新方法的不斷涌現,特別是受通信、多媒體技術及其應用,信息高速公路建設需求的刺激,一大批新的圖像壓縮編碼方法,其中有些是基于一些新的理論和變換,有些是兩種或兩種以上的方法的組合,有的既在空間域也要在變換域進行處理,所以在此統稱為其他方法。圖1給出了主要的圖像壓縮方法。
圖1:圖像壓縮編碼方法分類
有失真編碼方法的還原圖像較之原始圖像存在一定的誤差,但視覺效果一般是可以接受的。根據有失真編碼的原理進行分類,可以有預測編碼、變換編碼、量化編碼、信息熵編碼、分頻帶編碼、結構編碼及基于知識的編碼等。
1)預測編碼是一種針對統計冗余進行壓縮的方法。對于統計冗余來說,它反映圖像內相鄰兩像素之間的相關性比較強,因而一個像素可以由與它相鄰的并且已被編碼的像素來進行預測估計,當然,預測是根據某一模型進行的。從理論上講,只要模型選取得足夠好,則只需存儲或傳輸起始像素與模型參數就可以代替一幅圖像。但是,在實際應用中,預測不會總是正確的與精確的,此時的做法是再將預測誤差存儲或傳輸。預測編碼方法基本上是針對輸入的數據是一個平穩過程(或稱信號是穩定信號)而設計的。當輸入的數據不是平穩過程時,可采用自適應預測編碼。
2)變換編碼也是一種針對統計冗余進行壓縮的方法。所謂變換編碼是將圖像時域(空間)信號變換到系數空間(頻域)上進行處理的方法。因為由時域映射到頻域總是通過某種變換進行的,所以稱為變換編碼方法。在空間上具有強相關的信號,反映在頻域上是在某些特定的區域中能量集中在一起,或者是系數矩陣的分布具有某種規律,這就可以利用這些規律分配頻域上的量化比特數,從而達到壓縮的目的。常用的變換有:KL變換;DCT,DST變換;DFT變換;Haar變換;Walsh-Hadamard變換;以及用途廣泛的小波變換等。
變換編碼有兩個最明顯的特點,一是可以得到高的壓縮比,二是比預測等其它方法的計算復雜性高。在變換后,由于在頻域上信息是按照頻譜的能量與頻率分布排列的,只要對頻域平面量化器進行合理的(非均勻)比特分配,高能量區給高的比特數,低能量區給以低的比特數,就可以得到高的壓縮能力。
3)量化與向量量化編碼的本質也是對統計冗余進行壓縮,不過從表現形式上看,好像是無關的。
4)信息熵編碼是根據信息熵原理,讓出現概率大的用短的碼字表達,反之用長的碼字表達,最常見的如Huffman編碼、游程編碼以及算術編碼等。
5)分頻帶編碼是將圖像數據變換到頻域后,按頻率分頻帶,然后用不同的量化器進行量化,從而達到最優的組合?;蛘呤欠植綕u進編碼,開始對某一頻帶的信號進行解碼,然后逐漸擴展到所有頻帶。隨著解碼數據的增加,解碼圖像也逐漸清晰起來。此方法對于遠地圖像模糊查詢與檢索的應用比較有效。
6)結構編碼也稱為第二代編碼。編碼時首先將圖像中的邊界、輪廓、紋理等結構特征求出來,然后保存這些參數信息。解碼時,根據結構和參數信息進行合成,從而恢復出原圖像。
7)基于知識的編碼是對于人臉等可用規則描述的圖像,利用人們對人臉等的知識形成一個規則庫,據此將人臉的變化等用一些參數進行描述,從而用參數與模型就可以實現人臉的圖像編碼與解碼。
就壓縮的方法而言,現在還有分形圖像壓縮與神經網絡圖像壓縮的研究。目前,分形壓縮的理論是根據所謂“拼貼定理”,但在保持圖像質量條件下,壓縮比不高或編碼時間過長。神經網絡圖像壓縮也有類似情況。