基于JPEG 靜態(tài)圖像壓縮算法的研究(數(shù)字圖像)_第1頁(yè)
基于JPEG 靜態(tài)圖像壓縮算法的研究(數(shù)字圖像)_第2頁(yè)
基于JPEG 靜態(tài)圖像壓縮算法的研究(數(shù)字圖像)_第3頁(yè)
基于JPEG 靜態(tài)圖像壓縮算法的研究(數(shù)字圖像)_第4頁(yè)
基于JPEG 靜態(tài)圖像壓縮算法的研究(數(shù)字圖像)_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、基于JPEG 靜態(tài)圖像壓縮算法的研究- 1 -摘要:本文主要論述了基本JPEG 標(biāo)準(zhǔn)的編碼方法。其中包括采樣、離散余弦變換、量化 和熵編碼等幾個(gè)主要步驟,最后,用Visual C+編程實(shí)現(xiàn)把一幅BMP 格式的圖像轉(zhuǎn)換為JPEG 格式圖像,進(jìn)一步顯示JPEG 標(biāo)準(zhǔn)在圖像壓縮中的優(yōu)越性。關(guān)鍵詞:JPEG 標(biāo)準(zhǔn);采樣;離散余弦變換;量化;熵編碼1引言隨著多媒體技術(shù)的快速發(fā)展,靜態(tài)圖像的應(yīng)用越來(lái)越廣泛,但存在一個(gè)主要問(wèn)題就是數(shù) 據(jù)量過(guò)于龐大。例如,一張A4(210mm×297mm 幅面的照片,若用中等分辨率(300dpi的掃 描儀按真彩色掃描,其數(shù)據(jù)量共有(300×210/25.4

2、)×(300×297/25.4個(gè)像素,每個(gè)像素占3 個(gè)字節(jié),其數(shù)據(jù)量為26M 字節(jié)。這樣大容量的圖像信息會(huì)給存儲(chǔ)器的存儲(chǔ)容量、通信干線 信道的帶寬以及計(jì)算機(jī)的處理速度增加了極大的壓力。因此,圖像必須進(jìn)行壓縮。2圖像編碼壓縮算法JPEG 1是“聯(lián)合圖像專家小組”(Joint Photographic Experts Group)的簡(jiǎn)稱,是由ISO 和CCITT 于1986 年底聯(lián)合制定的連續(xù)色調(diào)的靜止圖像壓縮標(biāo)準(zhǔn)。它是一個(gè)適用范圍廣泛的通 用標(biāo)準(zhǔn),不僅適用于靜止圖像的壓縮,也適用于電視圖像序列的幀內(nèi)圖像的壓縮。1992 年 正式成為國(guó)際標(biāo)準(zhǔn)(ISO10918)。JPEG 算法

3、流程如圖1 所示。 JPEG 壓縮算法基本過(guò)程可分為如下幾個(gè)步驟實(shí)現(xiàn)。 顏色模式轉(zhuǎn)化及取樣。 離散余弦變換(DCT )。 量化(quantization )。 Z 字形編碼(zigzag scan。 使用差分脈沖編碼調(diào)制(DPCM對(duì)直流系數(shù)(DC進(jìn)行編碼。 使用行程長(zhǎng)度編碼(RLE對(duì)交流系數(shù)(AC進(jìn)行編碼。 熵編碼(entropy coding。2.1 顏色模式轉(zhuǎn)化及取樣2.1.1 顏色模式轉(zhuǎn)化RGB 色彩系統(tǒng)是我們最常用的表示顏色的方式,JPEG 采用的是YC b Cr 色彩系統(tǒng),想要 用JPEG 基本壓縮法處理全彩色圖像,得先把RGB 顏色模式圖像數(shù)據(jù)轉(zhuǎn)化為YC b Cr 顏色模 式數(shù)據(jù)。

4、其中Y 代表明視度,C b 和Cr 則代表色度和飽和度。其轉(zhuǎn)化公式如下: 因?yàn)?JPEG 里的數(shù)據(jù)都是無(wú)符號(hào)8 比特?cái)?shù)據(jù),因此C 值在這里都加上了128。2.1.2 取樣因?yàn)槿搜蹖?duì)圖片上亮度Y 的變化遠(yuǎn)比色彩C 的變化敏感,所以采用部分取樣可達(dá)到圖 像壓縮但幾乎不影響圖像質(zhì)量。目前在市面上支持JPEG 的應(yīng)用軟件,通常提供兩種部分取樣的方法:YUV411 和 YUV422(YCb Cr 是從YUV 衍生來(lái)的 ,它們代表的意義是Y ,C b ,Cr 3 個(gè)數(shù)據(jù)取樣比例。 比如:YUV411 取樣,原來(lái)用RGB 模型,4 個(gè)點(diǎn)需要4×3=12 字節(jié),而現(xiàn)在僅需要4+2=6 字節(jié),具有50

5、%的壓縮比例。2.2 離散余弦變換(DCT )離散余弦變換(discrete cosine transform)簡(jiǎn)稱DCT ,是指將一組光強(qiáng)數(shù)據(jù)轉(zhuǎn)化為頻率 數(shù)據(jù),以便得知強(qiáng)度變換的情形。2.2.1 對(duì)YC b Cr 各分量分成8×8 的圖像塊對(duì) Y ,C b ,Cr 分別做DCT 變換,把整個(gè)分量圖像分成8×8 的圖像塊,如果原始圖片的 長(zhǎng)寬不是8 的倍數(shù),都需要先補(bǔ)成8 的倍數(shù)。2.2.2 DCT 變換DCT 變換使用下式計(jì)算: 其中:u , v 代表DCT 變換后矩陣內(nèi)某個(gè)數(shù)值的坐標(biāo)位置F (u , v 代表矩陣內(nèi)的(u , v 位置上DCT 變換后的頻率系數(shù)i , j

6、 代表圖像數(shù)據(jù)內(nèi)某個(gè)數(shù)值的坐標(biāo)位置f (i , j 代表圖像數(shù)據(jù)內(nèi)的(i , j 位置上的像素值u = 0且v = 0時(shí),C (u C (v = 1 ;u > 或v > 時(shí),C u C v =1/2經(jīng)過(guò)DCT 變換后的矩陣數(shù)據(jù)自然數(shù)為頻率系數(shù),這些系數(shù)以F (0,0的值最大,稱為 DC ,其余的63 個(gè)頻率系數(shù)則多半是一些接近于0 的正負(fù)浮點(diǎn)數(shù),一概稱之為AC 。2.3 量化(quantization )量化的作用是在保持一定圖像質(zhì)量的前提下,丟棄圖像中對(duì)視覺(jué)效果影響不大的信息, 就是減少非“0”系數(shù)的幅度以及增加“0”值系數(shù)的數(shù)目。量化是圖像下降的最主要原因3。 JPEG 標(biāo)準(zhǔn)中

7、采用線性均勻量化器,對(duì)64 個(gè)DCT 系數(shù)除以量化步長(zhǎng)并四舍五入取整, 量化步長(zhǎng)由量化表決定。JPEG 標(biāo)準(zhǔn)中使用了兩種量化表:亮度量化表和色度量化表。2.4 Z 字形編碼(zigzag scan量化后的AC 系數(shù)通常會(huì)有許多零值,以Z 字形路徑編排,增加了連續(xù)“0”系數(shù)的個(gè)數(shù),這為下一步編碼提供了很大方便,節(jié)省了碼率。如圖2 所示。經(jīng)過(guò)Z 字形編排后,就把一個(gè)8×8 的矩陣變成一個(gè)1×64 的矢量,頻率較低的系數(shù)放在矢量的頂部。2.5 使用差分脈沖編碼調(diào)制(DPCM對(duì)直流系數(shù)(DC進(jìn)行編碼在同一個(gè)圖像分量中取得每一個(gè)DC 值與前一個(gè)DC 值的差值來(lái)編碼。如圖3 所示。 原

8、因是由于在連續(xù)色調(diào)的圖像中,其差值多半比原值小,對(duì)差值進(jìn)行編碼所需的位數(shù), 會(huì)比對(duì)原值進(jìn)行編碼所需的位數(shù)少許多。2.6 使用行程長(zhǎng)度編碼(RLE對(duì)交流系數(shù)(AC進(jìn)行編碼量化 AC 系數(shù)的特點(diǎn)是1×64 矢量中包含有許多“0”系數(shù),并且許多“0”是連續(xù)的,因此 使用非常簡(jiǎn)單和直觀的游程長(zhǎng)度編碼(RLE )對(duì)它們進(jìn)行編碼。JPEG 使用一個(gè)字節(jié)的高4 位來(lái)表示連續(xù)“0”的個(gè)數(shù),而使用它的低4 位來(lái)表示編碼下一 個(gè)非“0”系數(shù)所需要的位數(shù),跟在它后面的是量化AC 系數(shù)的數(shù)值。如下圖4 所示 格式為(符號(hào)1(符號(hào)2符號(hào)1 表示了兩條信息,稱為“行程”和“長(zhǎng)度”?!靶谐獭笔窃赯 字形矩陣中位于

9、非零AC 系數(shù)前的連續(xù)零值A(chǔ)C 系數(shù)的個(gè)數(shù),“長(zhǎng)度”是對(duì)AC 系數(shù)的幅度進(jìn)行編碼所用的位數(shù)。 符號(hào)2 表示了AC 系數(shù)幅度值。2.7 熵編碼(entropy codingJPEG 標(biāo)準(zhǔn)具體規(guī)定了Huffman 編碼4和算術(shù)編碼兩種熵編碼方式。JPEG 基本順序編碼 解碼器具體規(guī)定用Huffman 編碼,但JPEG 并沒(méi)有限制對(duì)任何JPEG 算法用Huffman 編碼方 式或算術(shù)編碼方式。熵編碼可以分成兩步進(jìn)行,首先把DC 碼和行程碼轉(zhuǎn)換成中間序列(2.5 和2.6 已做),然后給這些符號(hào)賦以變長(zhǎng)碼字。霍夫曼編碼器可以使用很簡(jiǎn)單的查表方法進(jìn)行編碼。編碼時(shí),每個(gè)矩陣數(shù)據(jù)的DC 值與 63 個(gè)AC

10、值,將分別使用不同的Huffman 編碼表,而亮度與色度也需要不同的Huffman 編 碼表,所以一共需要4 個(gè)編碼表,才能順利地完成JPEG 編碼工作。實(shí)現(xiàn)上述幾個(gè)步驟,即完成一幅圖像的JPEG 壓縮。3Visual C+下BMP 轉(zhuǎn)換為JPEG 算法實(shí)現(xiàn)用 Visual C+編寫了一個(gè)把BMP 5圖像轉(zhuǎn)換為JPEG 圖像的程序,該程序名稱為RWJpegExp, 步驟為:打開(kāi)程序,加載一幅BMP 圖片,利用“文件”/“另存為”菜單,可以將此 BMP 文件存儲(chǔ)為JPEG 文件,并能通過(guò)對(duì)話框控制JPEG 文件的壓縮圖像質(zhì)量和色彩。3.1 程序?qū)崿F(xiàn)的主要代碼CRWJpegExpDoc OnOpe

11、nDocument(LPCTSTR lpszPathName/顯示要打開(kāi)的文件; CRWJpegExpDoc OnSaveDocument(LPCTSTR lpszPathName/保存變換后的圖像; CFormatJpeg JpegDlg/創(chuàng)建Dialog 對(duì)話框;CJpeg jpeg/創(chuàng)建CJpeg 類,實(shí)現(xiàn)JPEG 文件轉(zhuǎn)換;Jpeg.Save(lpszPathName.m_pDib,JpegDlg.m_bColor,JpegDlg.m_nQuality/將文件存儲(chǔ)為 JPEG 格式。3.2 程序結(jié)果及分析RWJpegExp 程序?qū)崿F(xiàn)對(duì)JPEG 文件壓縮編碼的過(guò)程如圖5 所示 圖5 對(duì)J

12、PEG 文件壓縮編碼的過(guò)程圖本文通過(guò)實(shí)驗(yàn),如果選擇75%的圖像質(zhì)量,可得到20:1 的壓縮率;選擇55%的圖像質(zhì)量,可得到30:1 的壓縮率;選擇35%的圖像質(zhì)量,可得到40:1 的壓縮率,只要壓縮率不大 于40 倍,圖像壓縮后的效果質(zhì)量用肉眼無(wú)法區(qū)別??梢?jiàn)JPEG 標(biāo)準(zhǔn)的優(yōu)越性(限于篇幅, 這里就不給出壓縮后的效果圖)。從以上測(cè)試結(jié)果看,設(shè)計(jì)實(shí)現(xiàn)的JPEG 壓縮算法較好地實(shí)現(xiàn)了對(duì)于24 位bmp 圖像的壓 縮,壓縮比較高,且壓縮圖像與原始圖像相比差異幾乎無(wú)法察覺(jué)。4結(jié)束語(yǔ)本文系統(tǒng)的對(duì)JPEG 編碼的基本原理進(jìn)行了闡述,并給出了BMP 格式圖像與JPEG 格式圖像之間轉(zhuǎn)換的軟件實(shí)現(xiàn),使讀者對(duì)JPEG 的壓縮效果有了一個(gè)更直觀的了解。雖然圖像 壓縮了很多,但圖像視覺(jué)效果沒(méi)有什么差異。JPEG 標(biāo)準(zhǔn)的優(yōu)點(diǎn)是在自然景觀與再現(xiàn)圖片方 面表現(xiàn)很出色,且其圖像文件比較小,目前WEB 上80%的圖像都是JPEG 格式。缺點(diǎn)是只 能處理靜態(tài)圖像,不能處理活動(dòng)景物。 隨著技術(shù)的進(jìn)步,JPEG 標(biāo)準(zhǔn)將會(huì)得到更進(jìn)一步的發(fā)展和應(yīng)用。參考文獻(xiàn)1 張益貞,劉滔. Visual C+實(shí)現(xiàn)MPEG/JPEG 編

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論