圖像壓縮介紹
概念
圖像壓縮是圖像編碼的一種典型用途。數(shù)據(jù)壓縮的對象是數(shù)據(jù),大的數(shù)據(jù)量并不代表含有大的信息量。圖像壓縮就是除去圖像中多余的數(shù)據(jù)而對信息沒有本質(zhì)的影響。
目的
圖像編碼壓縮的主要目的是用盡可能少的bits去表示一副圖像,于此同時(shí),圖像的質(zhì)量和信息得以保留。減少數(shù)據(jù)量的基本原理是除去其中多余的數(shù)據(jù)。
-
冗余(redundancy) :
- 空間冗余(Spatial redundancy):圖像中相鄰像素間的相關(guān)性引起的。
- 時(shí)間冗余(Time redundancy):圖像序列中不同幀之間存在相關(guān)性引起的。
- 頻譜冗余(Spectrum redundancy):不同彩色平面或頻譜帶的相關(guān)性引起的。
圖像壓縮步驟
圖像壓縮基本按照以下流程進(jìn)行:
輸入圖像/視頻 -> 變換 -> 量化 -> 符號編碼 -> 存儲/傳輸 -> 符號解碼 -> 反變換 -> 圖像/視頻
圖像壓縮流程圖
量化(Quantization)
- 概念:量化是壓縮的主要圖像,主要也是它引入誤差的。JPEG通過各種除法來進(jìn)行量化,不過對于不同重要程度的信息,它所除的數(shù)的大小會有所不同。
- 模擬與數(shù)字:
數(shù)字圖像出來的圖像空間上和數(shù)值上都是離散的
模擬圖像出來的圖像空間上和數(shù)值上都是連續(xù)的 - 目的:
提取有用的信息,忽略細(xì)節(jié),排除無關(guān)信息。
分類
- 按照壓縮方法是否丟失信息
- 無損壓縮:解壓以后的數(shù)據(jù)和原始數(shù)據(jù)完全一致。解壓后得到的數(shù)據(jù)是原數(shù)據(jù)的復(fù)制,是一種可逆壓縮。
- 有損壓縮:解壓以后的數(shù)據(jù)和原始數(shù)據(jù)不完全一致,是不可逆壓縮方式。
- 按照壓縮方法的原理分類
- 預(yù)測編碼
基本思想是利用已被編碼的點(diǎn)的數(shù)據(jù)值,預(yù)測鄰近的一個(gè)像素點(diǎn)的數(shù)據(jù)值 - 變換編碼
基本思想是將圖像的光強(qiáng)矩陣變換到系數(shù)空間上,然后對系數(shù)進(jìn)行編碼壓縮 - 統(tǒng)計(jì)編碼
根據(jù)信息出現(xiàn)概率的分布特性而進(jìn)行的壓縮編碼。
應(yīng)用
- 減少信道傳輸時(shí)所需的帶寬:TV,HDTV,UHDTV,手機(jī)
- 減少存儲時(shí)所需的存儲空間:大的影響,圖形數(shù)據(jù)庫,醫(yī)療圖像
方法
無損壓縮
- 消除編碼冗余: 哈夫曼編碼和算術(shù)編碼。
- 消除像素間冗余:LZW編碼,位平面編碼,行程編碼和無損預(yù)測編碼。
有損壓縮
- 變換編碼:K.L變換,Haar變換,Walsh.Hadamard變換,離散余弦變換,離散傅里葉變換 和 小波變換。
- 有損預(yù)測編碼。
壓縮標(biāo)準(zhǔn)
- JPEG靜態(tài)圖像壓縮標(biāo)準(zhǔn)是廣泛使用的照片存儲格式
- JPEG 2000新一代靜態(tài) 圖像壓縮標(biāo)準(zhǔn),是基于小波變換的圖像壓縮標(biāo)準(zhǔn),可以獲得比JPEG更大的壓縮比。
常見壓縮編碼
變換(Transform)編碼
- 概念:對原圖像進(jìn)行變換,使之更容易被壓縮。(比如Fourier transform)。
- 目的:
降低空間和時(shí)間冗余。 - 常用的變換編碼:KLT,DCT,DFT,Wavelet Transform
通常使用DCT,不使用KLT的原因:
1.Signal independeng
2.Easily find fast algorithm
預(yù)測(Prediction)編碼
- 概念:通過消除緊鄰像素在空間上時(shí)間上的冗余來表現(xiàn)。
- 分類:Inter frame, Intra frame
符號編碼(Symbol Coding)
- 目的:生成定長編碼或變成編碼。最小化編碼冗余。
JPEG使用常見的哈夫曼(Huffman)編碼。 - 哈夫曼編碼(Huffman Coding):
是一種編碼方式,哈夫曼編碼是可變字長編碼(VLC)的一種。信源符號出現(xiàn)頻率越高,使用的碼字就越少。是一種一致性編碼法(又稱“熵編碼法”),用于數(shù)據(jù)的無損耗壓縮。 - 熵(entropy):反映了圖像中平均信息量的多少