多媒體數(shù)據(jù)壓縮與編碼_第1頁
多媒體數(shù)據(jù)壓縮與編碼_第2頁
多媒體數(shù)據(jù)壓縮與編碼_第3頁
多媒體數(shù)據(jù)壓縮與編碼_第4頁
多媒體數(shù)據(jù)壓縮與編碼_第5頁
已閱讀5頁,還剩149頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第10章多媒體數(shù)據(jù)壓縮與編碼

多媒體計算機(jī)要處理的信息主要有文字、聲音、圖形、圖像等。其中需要處理的圖形與圖像信息約占總信息量的85%。對多媒體信息進(jìn)行壓縮的目的是減小存儲容量和降低數(shù)據(jù)傳輸率,使得現(xiàn)有的PC機(jī)的指標(biāo)與性能達(dá)到能夠處理聲音與圖像信息的要求,這是多媒體計算機(jī)硬件支撐平臺所必須具備的功能。在這個過程中,聲音與圖像信息都需要進(jìn)行壓縮處理。但其中矛盾最突出和最困難的是圖像信息壓縮,這是因為數(shù)字化后圖像信息數(shù)據(jù)量非常大,使得存儲與處理都十分困難。數(shù)據(jù)壓縮技術(shù)的重要作用在圖像信息的壓縮方面表現(xiàn)得尤為明顯。1多媒體數(shù)據(jù)壓縮與編碼10.1數(shù)據(jù)壓縮編碼技術(shù)概述10.1.1信息的度量

討論數(shù)據(jù)壓縮,就要涉及現(xiàn)代科學(xué)領(lǐng)域的一個重要分支—信息論。信息論有關(guān)信息熵的概念對數(shù)據(jù)壓縮有著重要的指導(dǎo)意義,它一方面給出了數(shù)據(jù)壓縮的理論極限,另一方面又指明了數(shù)據(jù)壓縮的技術(shù)途徑。

信息論的創(chuàng)始人香農(nóng)(C.EShannon)在他的著名論文《通信的數(shù)學(xué)理論》中,從研究通信系統(tǒng)傳輸?shù)膶嵸|(zhì)出發(fā),對信息作了科學(xué)定義,進(jìn)行了定性和定量的描述。

香農(nóng)認(rèn)為:信息是有秩序的量度,是人們對事物了解的不確定性的消除或減少。信息是對組織程度的一種測度,信息能使物質(zhì)系統(tǒng)有序性增強(qiáng),減少破壞、混亂和噪音。2多媒體數(shù)據(jù)壓縮與編碼香農(nóng)提出:信息的傳播過程是“信源”(信息的發(fā)送者)把要提供的信息經(jīng)過“信道”傳遞給“信宿”(信息的接收者),信宿接收這些經(jīng)過“譯碼”(即解釋符號)的信息符號的過程。并由此建立了通信系統(tǒng)模型。

我們從一則消息中獲得了信息,但獲得的信息有多少呢?量度信息多少的測度就是信息量。信息的度量反映了人們對于信息的定量認(rèn)識。

根據(jù)香農(nóng)有關(guān)信息的定義,信息如何測度呢?顯然,信息量與不確定性消除程度有關(guān)。消除多少不確定性,就獲得多少信息量。用數(shù)學(xué)語言來講,不確定就是隨機(jī)性。不確定性的大小可以直觀地看成是事先猜測某隨機(jī)事件是否發(fā)生的難易程度。3多媒體數(shù)據(jù)壓縮與編碼按照香農(nóng)的定義,信息量的度量公式可描述為:它實際上就是后驗概率和先驗概率之比。在信道無干擾情況下,由信源傳來的消息告訴信宿某事件已經(jīng)發(fā)生,則某事件必然發(fā)生了。按照概率的定義,對于確定發(fā)生的必然事件,其概率為1。這時公式的后驗概率為1。(10.1)4多媒體數(shù)據(jù)壓縮與編碼假設(shè)Pi是第i個消息出現(xiàn)的先驗概率,則第i個消息的信息量為:(10.2)5多媒體數(shù)據(jù)壓縮與編碼第i個消息可能有n種狀態(tài),那么輸出這個消息的總信息量的期望值(即平均信息量)為:

借用熱力學(xué)的名詞,把H叫做熵。它代表接收一個符號所獲得的平均信息量。熵是在平均意義上表征信源總體特性的一個物理量。公式(10.3)中,對數(shù)的底數(shù)理論上可取任何數(shù)。當(dāng)?shù)讛?shù)為2時,信息的計量單位為比特(bit),即二進(jìn)制單位。

以上就是香農(nóng)關(guān)于信息的度量。通常也稱為概率信息。它是一個科學(xué)的定義,有明確的數(shù)學(xué)模型和定量計算。(10.3)6多媒體數(shù)據(jù)壓縮與編碼

香農(nóng)公式與日常用語中信息的含義一致。如,設(shè)某一事件是在預(yù)料中一定會發(fā)生的必然事件,若該事件果然發(fā)生了,收信者將不會得到任何信息。因為根據(jù)公式(10.2),Pi=1,得:

反之,若某一事件發(fā)生的概率很小,即猜測它是否發(fā)生的不確定性很大,一旦這個事件發(fā)生了,收信者會覺得很意外,感到獲得信息量很大。根據(jù)公式(10.2),因為Pi<<1(表示概率遠(yuǎn)小于1),故得:(10.4)(10.5)7多媒體數(shù)據(jù)壓縮與編碼只有當(dāng)事件發(fā)生與不發(fā)生的概率相同時,其信息量才達(dá)到最大。香農(nóng)的信息度量公式排除了對信息的主觀含意。根據(jù)上述公式,同樣一個消息對任何一個收信者來說,所得到的信息量都是一樣的。

8多媒體數(shù)據(jù)壓縮與編碼10.1.2信息的壓縮

壓縮編碼的理論基礎(chǔ)是信息論。香農(nóng)把信息定義為熵的減少。即,信息可定義為用來消除不確定性的東西。從信息論的角度來看,壓縮就是去掉信息中的冗余,即保留不確定的信息,去除確定的信息,也就是用一種更接近信息本質(zhì)的描述來代替原有冗余的描述。所以,將香農(nóng)的信息論觀點運用到圖像信息的壓縮,所要解決的問題就是如何將圖像信息壓縮到最小,但仍攜有足夠信息以保證能復(fù)制出與原圖近似的圖像。9多媒體數(shù)據(jù)壓縮與編碼圖像信息之所以能進(jìn)行壓縮是因為其本身通常存在很大冗余,以視頻連續(xù)畫面為例,每一幀畫面由若干個像素組成,因為動態(tài)圖像通常反映一個連續(xù)的過程,相鄰幀之間存在很大相關(guān)性,從一幅畫面到下一幅畫面,背景與前景可以沒有太多的變化。這些相似的信息為數(shù)據(jù)壓縮提供了基礎(chǔ)。另一原因是人的視覺和聽覺對某些信號(如顏色,聲音)不敏感,致使信息被壓縮之后還不知不覺,也不致對壓縮后的信息產(chǎn)生誤解。正因如此,可在允許保真度的條件下壓縮待存儲的圖像數(shù)據(jù),以節(jié)省存儲空間,圖像傳輸時也大大減少信道的容量,光盤技術(shù)和數(shù)據(jù)壓縮技術(shù)的發(fā)展為各種形式數(shù)據(jù)的存儲和傳輸提供了技術(shù)保證。CPU性能不斷提高也為數(shù)據(jù)壓縮提供了有利條件。10多媒體數(shù)據(jù)壓縮與編碼10.1.3有損壓縮與無損壓縮

多媒體數(shù)據(jù)壓縮分為有損壓縮和無損壓縮。

無損壓縮算法是為保留原始多媒體對象(包括圖像、語音和視頻)而設(shè)計的。無損壓縮中,數(shù)據(jù)在壓縮過程中不會改變或損失,解壓縮產(chǎn)生的數(shù)據(jù)是對原始對象的完整復(fù)制。當(dāng)圖像冗余度很少(同類像素重復(fù)性很小)時,無損壓縮技術(shù)得不到可接受的結(jié)果。有損壓縮會造成一些信息的損失,關(guān)鍵問題是看這種損失對圖像質(zhì)量帶來的影響。只要這種損失被限制在允許范圍內(nèi),有損壓縮就是可接受的。有損壓縮技術(shù)主要應(yīng)用領(lǐng)域是在影像節(jié)目、可視電話會議和多媒體網(wǎng)絡(luò)這樣的由音頻、彩色圖像和視頻組成的多媒體應(yīng)用中。

11多媒體數(shù)據(jù)壓縮與編碼10.1.4對稱壓縮和不對稱壓縮

壓縮技術(shù)的基本方式有兩種:即對稱壓縮和不對稱壓縮。在對稱壓縮中,壓縮算法和解壓縮算法是一樣的。是一種可逆操作。對稱壓縮的優(yōu)點在于雙方都以同一種速度進(jìn)行操作,例如視頻會議這種實時傳遞的系統(tǒng)便采用對稱壓縮技術(shù)。發(fā)送方將實況視頻信號用某種算法加以壓縮,然后通過通信介質(zhì)進(jìn)行傳輸。接收端收到信號后,再使用同樣的算法按逆運算解壓縮,使圖像解碼后重現(xiàn)。

不對稱壓縮,是指壓縮和解壓縮的運算速率是不相同的。例如VCD的制作與播放便是典型的不對稱壓縮。在制作VCD時,將一部電影壓縮到VCD盤片上可能需要花費十幾個小時或更多時間,而播放VCD時,為保證視頻的流暢,其解壓縮的速度卻很快。12多媒體數(shù)據(jù)壓縮與編碼10.1.5影響數(shù)據(jù)壓縮的幾個要素

一個好的壓縮方法對多媒體信息的存儲和傳輸是至關(guān)重要的,影響壓縮性能的主要指標(biāo)有:壓縮比

對壓縮前后的文件大小和數(shù)據(jù)量進(jìn)行比較,作為壓縮率的衡量指標(biāo)。人們普遍希望壓縮的倍數(shù)越高越好,壓縮的速度越快越好。但同時人們又希望確保數(shù)據(jù)壓縮的精度,即解壓縮的數(shù)據(jù)和原來的數(shù)據(jù)最好沒有差別,沒有數(shù)據(jù)損失。然而追求壓縮比率和追求精度往往是矛盾的,因此就需要在這兩者之間權(quán)衡取舍。13多媒體數(shù)據(jù)壓縮與編碼圖像質(zhì)量

圖像的清晰程度反映出圖像的質(zhì)量。有損壓縮可獲得較大壓縮比,但壓縮比過高,還原后的圖像質(zhì)量可能降低。圖像質(zhì)量的評估常采用客觀和主觀評估兩種方法。

客觀評估是通過一種具體算法來統(tǒng)計多媒體數(shù)據(jù)壓縮結(jié)果的損失。如采用純誤差測度,即原始圖像與恢復(fù)圖像之間的簡單數(shù)學(xué)統(tǒng)計。盡管這種方法將誤差量化表達(dá),但并不能反映觀察者對誤差的視覺感知。

主觀評估基于人的視覺感知,因為觀察者作為最終視覺信宿,他們能對恢復(fù)圖像的質(zhì)量作出直觀的判斷。方法之一是進(jìn)行主觀測試,讓觀察者通過觀測一系列恢復(fù)圖像,并與原圖像進(jìn)行比較,再根據(jù)損傷的可見程度進(jìn)行評級,以判斷哪種壓縮方法的失真少。14多媒體數(shù)據(jù)壓縮與編碼傳統(tǒng)的客觀評價方法由于只對恢復(fù)圖像和原始圖像的純誤差做數(shù)學(xué)統(tǒng)計,難以反映圖像的視覺差別。如果能在客觀評估中引入簡單的視覺模型,或者誤差的結(jié)構(gòu)特性,便能導(dǎo)致與主觀測試更符合的結(jié)果。主觀評估的好處就是使人一目了然,但是主觀評判的結(jié)果往往和客觀評判并不是一一對應(yīng)的,有的結(jié)果相差很大。然而這種方法容易受觀察者背景知識、觀測動機(jī)、觀測環(huán)境等等因素的限制和影響。所以,在圖像處理技術(shù)和壓縮編碼技術(shù)飛速發(fā)展的今天,能夠準(zhǔn)確地對圖像質(zhì)量進(jìn)行主觀評估的客觀評估(即數(shù)學(xué)算法)是亟待解決的難題。

15多媒體數(shù)據(jù)壓縮與編碼壓縮與解壓縮的速度

壓縮和解壓縮的速度是壓縮系統(tǒng)的兩項單獨的性能度量。在有些應(yīng)用中,壓縮和解壓縮都需要實時進(jìn)行,如電視會議的圖像傳輸。在有些應(yīng)用中,壓縮可以用非實時壓縮,而只要解壓縮是實時的,如多媒體CD-ROM的節(jié)目制作。從目前開發(fā)的壓縮技術(shù)來看,一般壓縮的計算量比解壓縮要大。

壓縮速度不僅與采用的壓縮方法有關(guān),而且與快速算法的計算量有關(guān),若在算法上有較大突破,無疑將對多媒體的開發(fā)與應(yīng)用產(chǎn)生很大影響。16多媒體數(shù)據(jù)壓縮與編碼執(zhí)行的硬件與軟件

采用什么樣的硬件與軟件去執(zhí)行壓縮/解壓縮,與采用壓縮方案和算法的復(fù)雜程度有著密切的關(guān)系。設(shè)計精巧的簡單算法可以在簡單的硬件上執(zhí)行,且執(zhí)行速度很快。而設(shè)計復(fù)雜的算法需要在功能強(qiáng)大的軟硬件支持下才能運行。但僅靠算法來提高壓縮/解壓縮的速度還是有限的。在多數(shù)情況下,不得不依靠硬件本身提供的功能去完成,例如采用專用多媒體處理芯片。因此在壓縮/解壓縮系統(tǒng)中,速度和硬件之間的選擇顯得十分重要。17多媒體數(shù)據(jù)壓縮與編碼10.1.6圖像編碼技術(shù)的發(fā)展經(jīng)典編碼技術(shù)

1948年,Oliver提出了第一個編碼理論——脈沖編碼調(diào)制PCM(PulseCodingModulation);同年,Shannon的經(jīng)典論文——“通信的數(shù)學(xué)原理”首次提出并建立了信息率失真函數(shù)概念;1959年,Shannon進(jìn)一步確立了碼率失真理論,奠定了信息編碼的理論基礎(chǔ)。編碼方法主要有預(yù)測編碼、變換編碼和統(tǒng)計編碼,也稱為三大經(jīng)典編碼方法。經(jīng)典編碼技術(shù)又稱為“第一代”編碼技術(shù)。18多媒體數(shù)據(jù)壓縮與編碼

“第一代”視頻(圖像)編碼技術(shù)是非常優(yōu)秀的紋理編碼方案,它們能夠在中等壓縮率的情況下,提供非常好的圖像質(zhì)量,但在非常低的位率情況下,無法為一般的序列提供令人滿意的質(zhì)量。20世紀(jì)80年代初,“第一代”編碼技術(shù)達(dá)到了頂峰,這類技術(shù)去除客觀和視覺冗余信息的能力已接近極限。究其原因是由于這些技術(shù)都沒有利用圖像的結(jié)構(gòu)特點,因此它們也就只能以像素或塊作為編碼對象,另外,這些技術(shù)在設(shè)計編碼器時也沒有考慮人類視覺系統(tǒng)的特性。19多媒體數(shù)據(jù)壓縮與編碼“第二代”編碼方法

“第一代”編碼技術(shù)以信息論和數(shù)字信號處理技術(shù)為理論基礎(chǔ),旨在去除圖像數(shù)據(jù)中的線性相關(guān)性。其壓縮比不高,大約在10∶1左右。為了克服“第一代”視頻(圖像)編碼技術(shù)的局限性,Kunt等人于1985年提出“第二代”視頻(圖像)編碼技術(shù)?!暗诙本幋a技術(shù)不局限于信息論的框架,而是充分利用人的視覺生理、心理和圖像信源的各種特征,實現(xiàn)從“波形”編碼到“模型”編碼的轉(zhuǎn)變,以便獲得更高壓縮比。其壓縮比在30:1至70:1之間?!暗诙本幋a方法主要有:基于分形的編碼、基于模型的編碼、基于區(qū)域分割的編碼和基于神經(jīng)網(wǎng)絡(luò)的編碼等。

20多媒體數(shù)據(jù)壓縮與編碼“第二代”編碼方法充分利用了計算機(jī)圖形學(xué)、計算機(jī)視覺、人工智能與模式識別等相關(guān)學(xué)科的研究成果,為視頻壓縮編碼開拓出了廣闊前景。但由于“第二代”編碼方法增加了分析的難度,所以大大增加了實現(xiàn)的復(fù)雜性。從當(dāng)前發(fā)展情況看,“第二代”編碼方法仍處于深入研究階段。如,分形法由于圖像分割、迭代函數(shù)系統(tǒng)代碼的獲得非常困難,因而實現(xiàn)起來時間長,算法非常復(fù)雜。模型法則僅限于人頭肩像等基本的視頻上,進(jìn)一步的發(fā)展有賴于新的數(shù)學(xué)方法和其他相關(guān)學(xué)科的發(fā)展。神經(jīng)網(wǎng)絡(luò)的工作機(jī)理至今仍不清楚,硬件研制不成功,所以在視頻編碼中的應(yīng)用研究進(jìn)展緩慢,目前多與其他方法結(jié)合使用。但由于巨大壓縮性能潛力,人們正致力于這些新方法研究之中。21多媒體數(shù)據(jù)壓縮與編碼近來,出現(xiàn)了充分利用人類視覺特性的“多分辨率編碼”方法,如子帶編碼和基于小波變換的編碼。這類方法使用不同類型的一維或二維線性數(shù)字濾波器,對視頻進(jìn)行整體分解,然后根據(jù)人類視覺特性對不同頻段的數(shù)據(jù)進(jìn)行粗細(xì)不同的量化處理,以達(dá)到更好的壓縮效果。這類方法原理上仍屬于線性處理,屬于“波形”編碼,可歸入經(jīng)典編碼方法,但它們又充分利用了人類視覺系統(tǒng)特性,因此可被看作是“第一代”編碼技術(shù)向“第二代”編碼技術(shù)的過渡。

用信息熵H來評價壓縮編碼

在壓縮編碼中,信息熵H可用于用熵衡量壓縮方法的效果,如果信號序列經(jīng)壓縮后,熵H不變,則表明信息量沒有下降,這種壓縮方法是無損的編碼方法,所以無損編碼又稱為熵(不變)編碼。22多媒體數(shù)據(jù)壓縮與編碼用熵衡量壓縮是否為最佳碼

如以N表示編碼器輸出碼字的平均碼長,則當(dāng):

N>>H(X)時,有冗余,不是最佳,有進(jìn)一步壓縮的潛力;

N<H(X)不可能;

N稍大于H(X)時是最佳碼。熵值是平均碼長N的下限。10.1.7圖像編碼技術(shù)的標(biāo)準(zhǔn)化

圖像編碼的研究內(nèi)容是圖像數(shù)據(jù)壓縮,其主要應(yīng)用領(lǐng)域是圖像信息通信和存儲。當(dāng)需要對所傳輸或存儲的圖像信息進(jìn)行高比率壓縮時,必須采取復(fù)雜的圖像編碼技術(shù)。但是,如果沒有一個共同的標(biāo)準(zhǔn),不同系統(tǒng)間不能兼容。除非每一編碼方法的各個細(xì)節(jié)完全相同,否則各系統(tǒng)間的聯(lián)結(jié)十分困難。23多媒體數(shù)據(jù)壓縮與編碼鑒于這一情況,20世紀(jì)90年代后,國際電信聯(lián)盟ITU、國際標(biāo)準(zhǔn)化組織ISO和國際電工委員會IEC在全世界范圍內(nèi)積極工作,制定了一系列靜止和活動圖像編碼的國際標(biāo)準(zhǔn),現(xiàn)已批準(zhǔn)的主要有:JPEG標(biāo)準(zhǔn)、MPEG標(biāo)準(zhǔn)、H.261標(biāo)準(zhǔn)等。這些標(biāo)準(zhǔn)和建議是在相應(yīng)領(lǐng)域工作的各國專家合作研究的成果和經(jīng)驗總結(jié)。由于這些國際標(biāo)準(zhǔn)的出現(xiàn),圖像編碼尤其是視頻圖像編碼壓縮技術(shù)得到了飛速發(fā)展。目前,按照這些標(biāo)準(zhǔn)做的硬件、軟件產(chǎn)品和專用集成電路在市場上大量涌現(xiàn),對現(xiàn)代圖像通信的迅速發(fā)展及開拓圖像編碼新應(yīng)用領(lǐng)域(如多媒體通信、數(shù)字高清晰度電視傳輸?shù)?發(fā)揮了重要作用。隨著研究不斷深入,還將有新的數(shù)據(jù)壓縮編碼標(biāo)準(zhǔn)不斷推出。24多媒體數(shù)據(jù)壓縮與編碼圖10.1是圖像壓縮編碼分類的一般方法

圖10.1圖像壓縮編碼分類的一般方法

25多媒體數(shù)據(jù)壓縮與編碼10.2預(yù)測編碼10.2.1預(yù)測編碼的基本概念

預(yù)測編碼是數(shù)據(jù)壓縮理論的一個重要分支,它是根據(jù)離散信號之間存在著一定的相關(guān)性,利用前面的一個或多個信號對下一信號進(jìn)行預(yù)測,然后對實際值和預(yù)測值的差進(jìn)行編碼。就圖像壓縮而言,預(yù)測編碼可分為幀內(nèi)預(yù)測和幀間預(yù)測兩種類型。26多媒體數(shù)據(jù)壓縮與編碼

幀內(nèi)預(yù)測編碼反映了同一幀圖像內(nèi),相鄰像素點之間的空間相關(guān)性較強(qiáng),因而任何一個像素點的亮度值,均可由它相鄰的已被編碼的像素點的編碼值來進(jìn)行預(yù)測。如果能夠準(zhǔn)確地預(yù)測作為時間函數(shù)的數(shù)據(jù)源的下一個輸出將是什么,或者數(shù)據(jù)源可以準(zhǔn)確地被一個數(shù)據(jù)模型表示,則可以準(zhǔn)確地預(yù)測數(shù)據(jù),然而,實際信號源是不可能滿足這兩個條件的,因此,只能用一個預(yù)測器,預(yù)測下一個樣值,允許它有些誤差。通常使用的誤差函數(shù)是均方誤差(mse):27多媒體數(shù)據(jù)壓縮與編碼其中:E是數(shù)學(xué)期望;

So是下一樣值的實際值;

^So是下一樣值的預(yù)測值。

若預(yù)測根據(jù)某一預(yù)測模型進(jìn)行,且模型表達(dá)足夠好,則只需存儲或傳輸某些起始像素點和模型參數(shù)就可以代表整個一幅圖像了。這時只要編碼很少的數(shù)據(jù)量,這是極端理想的情況。實際上預(yù)測不會百分之百準(zhǔn)確,此時可將預(yù)測的誤差值(實際值與預(yù)測值之差值)存儲或傳輸,一般來講,誤差值要比實際值小得多,這樣在同等條件下,就可減少數(shù)據(jù)編碼的比特數(shù),從而也減少了存儲和傳輸?shù)臄?shù)據(jù)量,實現(xiàn)了數(shù)據(jù)的壓縮。28多媒體數(shù)據(jù)壓縮與編碼幀內(nèi)預(yù)測編碼典型的壓縮方法有差分脈沖編碼調(diào)制DPCM和自適應(yīng)差分脈沖編碼調(diào)制ADPCM等,它們比較適合圖像與聲音數(shù)據(jù)的壓縮。因為這些媒體的數(shù)據(jù)均由采樣得到,相鄰采樣值之間的差值都不太大,可用較少的比特數(shù)表示差值。 預(yù)測器是DPCM的核心,預(yù)測器越好,能使差值越小,數(shù)據(jù)壓縮就越多,預(yù)測器可采用線性預(yù)測或非線性預(yù)測,通常采用線性預(yù)測作為預(yù)測器的設(shè)計。29多媒體數(shù)據(jù)壓縮與編碼

在MPEG壓縮標(biāo)準(zhǔn)中還采用了幀間預(yù)測編碼。這是由于運動圖像各幀之間有很強(qiáng)的時間相關(guān)性。例如,在電視圖像傳送中,相鄰幀的時間間隔只有1/30秒,大多數(shù)像素的亮度信號在幀間的變化是不大的,利用幀間預(yù)測編碼技術(shù)就可減少幀序列內(nèi)圖像信號的冗余度。此外,電視圖像的相鄰幀間的內(nèi)容在一般情況下(除場景切換外)實際上沒有太大變化,所以相鄰幀間有較大相關(guān)性,這種相關(guān)性稱為時域相關(guān)性。運動補(bǔ)償?shù)哪康鼐褪且獙⑦@種時域相關(guān)性盡可能地去除。30多媒體數(shù)據(jù)壓縮與編碼

10.2.2差分脈沖編碼-DPCM

差分脈沖編碼調(diào)制DPCM與PCM不同,它編碼的不是采樣樣本值,而是樣本值及其預(yù)測值的差分,即量化的是已知的樣本值與預(yù)測值之間的差值。DPCM是從過去的幾個采樣值的線性組合來預(yù)測推斷現(xiàn)在的采樣值,進(jìn)而用實際采樣值與預(yù)測采樣值之差(稱作預(yù)測誤差)及線性預(yù)測系數(shù)進(jìn)行編碼,從而達(dá)到信息壓縮的一種方法。

31多媒體數(shù)據(jù)壓縮與編碼差分脈沖編碼調(diào)制的概念如圖10.2。差分信號是離散輸入信號和預(yù)測器輸出的估算值之差。注意是對是預(yù)測值,而不是過去樣本的實際值。DPCM系統(tǒng)實際上就是對這個差值進(jìn)行量化編碼,用來補(bǔ)償過去編碼中產(chǎn)生的量化誤差。它實際上是一個負(fù)反饋系統(tǒng),采用這種結(jié)構(gòu)可以避免量化誤差的積累。32多媒體數(shù)據(jù)壓縮與編碼圖10.2DPCM工作原理方框圖33多媒體數(shù)據(jù)壓縮與編碼重構(gòu)信號是由逆量化器產(chǎn)生的量化差分信號,與對過去樣本信號的估算值求和得到。以作為預(yù)測器確定下一個信號估算值的輸入信號。由于在發(fā)送端和接收端都使用相同的逆量化器和預(yù)測器,所以收發(fā)兩端可從同一個傳送信號獲得相同的量化差分信號和重構(gòu)信號。

34多媒體數(shù)據(jù)壓縮與編碼若預(yù)測誤差不經(jīng)量化精確地傳到接收端,可無失真地復(fù)原原始PCM信號。但主觀實驗表明,對于人眼觀看的電視圖像來講,預(yù)測誤差沒必要絕對精確地傳到接收方,可以對它再經(jīng)過一次量化,適當(dāng)降低精確度,從而獲得進(jìn)一步的碼率壓縮。這樣,雖然由于量化誤差的引入造成圖像一定程度失真,但若把量化誤差限制到主觀視覺不能察覺的程度,并不影響圖像主觀質(zhì)量。所以,量化器是利用主觀視覺特點,挖掘壓縮潛力的工具。35多媒體數(shù)據(jù)壓縮與編碼10.2.3自適應(yīng)差分脈沖編碼-ADPCM

ADPCM是自適應(yīng)量化和自適應(yīng)預(yù)測方法的總稱。ADPCM是在DPCM方法上的進(jìn)一步改進(jìn),通過調(diào)整量化步長,對不同頻段所設(shè)置的量化字長不同,使數(shù)據(jù)得到進(jìn)一步的壓縮。36多媒體數(shù)據(jù)壓縮與編碼自適應(yīng)量化是使量化間隔大小的變化自動地適應(yīng)輸入信號大小變化。它根據(jù)信號分布不均勻的特點,使系統(tǒng)具有隨輸入信號變化而改變量化區(qū)間大小,以保持輸入量化器的信號基本均勻的能力。自適應(yīng)量化必須具有對輸入信號的幅值進(jìn)行估計的能力,有了估值才能確定相應(yīng)的改變量。若估值在信號的輸入端進(jìn)行,稱前饋自適應(yīng);若在量化輸出端進(jìn)行,稱反饋自適應(yīng)。

預(yù)測參數(shù)的最佳化依賴于信源的統(tǒng)計特性,而按DPCM采用固定的預(yù)測參數(shù)往往得不到好的性能。自適應(yīng)預(yù)測不是對輸入信號幅度絕對值進(jìn)行編碼,而是對樣本之間的差值進(jìn)行編碼。差值不是簡單地用樣本的絕對值之差,而是通過預(yù)測技術(shù)使求出的預(yù)測值與實際值的均方差盡可能地小(如圖10.3)。37多媒體數(shù)據(jù)壓縮與編碼

圖10.3ADPCM編碼框圖

38多媒體數(shù)據(jù)壓縮與編碼10.3變換編碼10.3.1變換編碼的基本方法

變換編碼先對信號進(jìn)行某種函數(shù)變換,從信號的一種表示空間變換到信號的另一種表示空間,然后在變換后的域上,對變換后的信號進(jìn)行編碼,其過程如圖10.4所示。圖10.4變換編碼的工作過程39多媒體數(shù)據(jù)壓縮與編碼變換編碼的基本方法是將數(shù)字圖像分成一定大小的子圖像塊,用某種正交變換對子像塊進(jìn)行變換,得到變換域中的系數(shù)矩陣,然后選用其中的主要系數(shù)進(jìn)行量化編碼,由于在變換域中信號的能量比較集中,例如圖像信號的能量主要集中在低頻部分,若只對主要的低頻分量進(jìn)行編碼并作合理的比特分配,則可大大壓縮數(shù)據(jù)量。40多媒體數(shù)據(jù)壓縮與編碼

變換編碼不是直接對原圖像信號壓縮編碼,而是首先將圖像信號進(jìn)行某種函數(shù)變換,從一種信號(空間)映射(變換)到另一個域中,產(chǎn)生一組變換系數(shù),然后對這些系數(shù)量化、編碼、傳輸。在空間上具有強(qiáng)相關(guān)性的信號、反映在頻域上,是某些特定的區(qū)域內(nèi)能量常常被集中在一起,或是變換系數(shù)矩陣的分布具有規(guī)律性。我們可利用這些規(guī)律,在不同的頻域上分配不同的量化比特數(shù),從而達(dá)到壓縮數(shù)據(jù)的目的。41多媒體數(shù)據(jù)壓縮與編碼我們知道,模擬圖像經(jīng)采樣后,成為離散化的亮度值。假如把整幅圖像一次進(jìn)行變換,則運算比較復(fù)雜,所需時間較長。通常把圖像在水平方向和垂直方向上分為若干子區(qū),以子區(qū)為單位進(jìn)行變換。每個子區(qū)通常有8×8個像素點,每個子區(qū)的全部像素值構(gòu)成一個空間域矩陣。42多媒體數(shù)據(jù)壓縮與編碼變換編碼是一種有損編碼方法,采用不同的變換方式,壓縮的數(shù)據(jù)量和壓縮速度都不一樣。典型的變換編碼有離散余弦變換、KL變換以及近來流行的小波變換等。實踐證明,無論對單色圖像、彩色圖像、靜態(tài)圖像還是運動圖像,變換編碼都是非常有效的方法,變換編碼抗干擾性較好,有比預(yù)測編碼更高的壓縮比,其缺點是易于產(chǎn)生方塊效應(yīng)。43多媒體數(shù)據(jù)壓縮與編碼

10.3.2變換編碼的數(shù)學(xué)表示

離散變換可以用矩陣表示,設(shè)信源序列是一個n行k列的矩陣X,例如,對一幅圖像進(jìn)行掃描,從上到下共n行,從左到右取k個樣值。這樣形成n個k維的采樣向量序列(x1,x2,…,xn),其中,xi=(xi1,xi2,…xik)是一個k維向量。

44多媒體數(shù)據(jù)壓縮與編碼這n個向量構(gòu)成n行k列的矩陣X,xij表示第i行第j個樣值。假設(shè)采用一維變換,設(shè)變換后輸出序列為Y,變換矩陣為A,則它們之間的關(guān)系是:

Y=AX

如果所采取的變換為正交變換,變換矩陣為正交變換矩陣,即ATA=A-1A=I,其中AT為A的轉(zhuǎn)置矩陣,T-1為T的逆矩陣,I為單位矩陣,那么:

X=ATY

在接收端用變換矩陣的轉(zhuǎn)置矩陣AT與接收序列Y相乘便可恢復(fù)源序列X。

公式的意義在于:在變換中,空間域中能量全部轉(zhuǎn)移到變換域中。在反變換中,變換域的能量又能全部轉(zhuǎn)移到空間域中。

45多媒體數(shù)據(jù)壓縮與編碼經(jīng)過變換之后,變換域中總能量不變,但能量將會重新分布。在空間域中,能量分布具有一定的隨機(jī)性。由于圖像有一定的相關(guān)性,變換域中能量在大部分情況下,集中于零空間頻率或低空間頻率對應(yīng)的變換系數(shù),從而使具有相關(guān)性圖像的相關(guān)性減少。同時由于能量集中于零空間頻率和低空間頻率所對應(yīng)的變換域矩陣元素中,我們對這些元素分配較多的比特數(shù),而對能量較少的元素分配較少的比特數(shù)或不分配比特數(shù),由于相關(guān)性的減少,變換域中分配的總比特數(shù)可以比原圖像的總比特數(shù)少,這樣就可以使圖像所需傳送的比特數(shù)減少,達(dá)到壓縮的目的。46多媒體數(shù)據(jù)壓縮與編碼10.3.3離散余弦變換

離散余弦變換DCT(DiscreteCosineTransformation)具有運算速度快、易于實現(xiàn)等優(yōu)點,它的快速算法已可由專用芯片來實現(xiàn),因而被廣泛采用。離散余弦變換方法研究較早,技術(shù)成熟,圖像壓縮實踐證明DCT是許多圖像的最佳變換,它允許將88圖像的空間表達(dá)式轉(zhuǎn)換為頻率域,只需要少量的數(shù)據(jù)點來表示圖像。另外,DCT算法的性能很好,可以進(jìn)行高效的運算,因此使它在硬件和軟件中都容易實現(xiàn)。目前國際上已經(jīng)制訂了基于離散余弦變換的靜止圖像壓縮標(biāo)準(zhǔn)JPEG和運動圖像壓縮標(biāo)準(zhǔn)MPEG。47多媒體數(shù)據(jù)壓縮與編碼DCT壓縮過程中最關(guān)鍵的步驟是一個稱為DCT的數(shù)學(xué)變換。DCT和著名的快速傅立葉變換(FFT)屬于同一類數(shù)學(xué)運算,這類變換的基本運算是將信號從一種表達(dá)形式變成另一種表達(dá)形式,并且這種變換過程是可逆的,即在兩個變換過程中除開舍入誤差和截斷誤差,本質(zhì)是無損失的。

DCT變換過程相當(dāng)復(fù)雜,對其原理的理解很大程度上取決于對數(shù)學(xué)理論知識的了解。這里我們不討論深奧的數(shù)學(xué)概念,只通過舉例說明這個問題。

源圖像在進(jìn)行DCT變換之前,首先把源圖像劃分為若干個8×8像素的子塊,然后對8×8像素塊逐一進(jìn)行DCT(如圖10.5)變換。例如,如果源圖像為640480的分辨率(即由640480像素組成),則劃分后的圖像將包含8060這樣多的子塊。48多媒體數(shù)據(jù)壓縮與編碼圖10.5JPEG將源圖像劃分為若干個子塊,每個子塊包含8×8個像素49多媒體數(shù)據(jù)壓縮與編碼現(xiàn)在我們來理解在DCT處理前后數(shù)據(jù)發(fā)生了哪些變化。圖像一般可以用灰度(或彩色)來表示,為討論問題方便,我們?nèi)D像中一個被放大了的8×8個像素的子塊作為示例,如圖10.6所示。假設(shè)每個像素的灰度值(或顏色值)用8比特來表示,那么共有256個灰度等級(或256種顏色)。這樣,我們可以定義一個8行×8列的二維數(shù)組來表示圖像子塊中各像素的灰度值和顏色值。于是可得到二維數(shù)組矩陣。

不失一般性,如果圖像是真彩色圖像,即每個像素的顏色值需用24比特表示,需要用3個8行×8列的數(shù)組來表示這個子塊。每一個數(shù)組表示其中一個8比特組合的像素值。離散余弦變換作用于每一個數(shù)組。50多媒體數(shù)據(jù)壓縮與編碼一個被放大的8×8個像素的子塊表示圖像灰度(或顏色)的矩陣

經(jīng)過離散余弦變換后的頻率系數(shù)矩陣T

圖10.6一個8×8個像素的子塊的DCT變換51多媒體數(shù)據(jù)壓縮與編碼

進(jìn)行離散余弦變換,要用到如下公式:其中,否則,52多媒體數(shù)據(jù)壓縮與編碼公式表明:DCT對一個8×8的矩陣P進(jìn)行處理,得到一個8×8的頻率系數(shù)矩陣。不解釋這個公式是怎么來的,它的物理意義是:這個變換的基本運算是將信號從一種表達(dá)形式(空間域,即圖像的像素值)變成另一種等同的表達(dá)形式(頻率域,即頻率系數(shù)),并且這種變換過程是可逆的。數(shù)組T中每個元素稱為變換系數(shù),這些系數(shù)都有明確的物理意義:如當(dāng)i=0,j=0時,P[0][0]的值稱為DC系數(shù),它與數(shù)組P的平均值有關(guān)。T矩陣的其余的值稱為AC系數(shù)。隨著i和j值的增加,相應(yīng)系數(shù)分別代表逐步增加的水平空間頻率分量和垂直空間頻率分量的大小。

53多媒體數(shù)據(jù)壓縮與編碼從矩陣中可以看出有一個傾向:隨著元素離DC系數(shù)越來越遠(yuǎn),它的值就越來越小。這意味著通過DCT來處理數(shù)據(jù),已將圖像的表示集結(jié)到輸出矩陣的左上角的系數(shù),這個系數(shù)就比其他系數(shù)攜帶了更多關(guān)于圖像的有用信息,同時DCT矩陣的右下部分系數(shù)幾乎不包含有用信息。由于計算機(jī)屏幕上的大多數(shù)圖像都由低頻信息構(gòu)成,因此這一點是很有意義的。這樣,系數(shù)越來越小,而且對描述圖像越來越不重要。所以說DCT確定了圖像的一部分信息,這些信息可被“扔掉”并且不會對圖像的質(zhì)量帶來嚴(yán)重影響。在圖像未進(jìn)行變換前要實現(xiàn)這一點是難以想象的,當(dāng)圖像在空間域描述時要找出哪些像素對圖像的全貌是重要的,而哪些是不重要的則相當(dāng)困難。

54多媒體數(shù)據(jù)壓縮與編碼

如果離散余弦變換是不可逆運算(即從DCT系數(shù)中恢復(fù)原始像素信息),那么這種變換是毫無意義的,事實上,有一個逆離散余弦變換(IDCT)公式能夠?qū)㈩l率域的數(shù)據(jù)重新轉(zhuǎn)換為像素值:55多媒體數(shù)據(jù)壓縮與編碼DCT(IDCT)算法的計算量比較大(從程序中可以看出,是一個循環(huán)的嵌套結(jié)構(gòu))。如對一幅較高精度的真彩色圖像使用JPEG壓縮時,大約要進(jìn)行上億次運算操作,這對實現(xiàn)JPEG壓縮、編碼的軟件、硬件設(shè)備產(chǎn)品提出了較高的要求。早期的JPEG壓縮多數(shù)做成專用的壓縮卡,以專用的高速CPU芯片實現(xiàn)壓縮處理,現(xiàn)在通用的計算機(jī)CPU速度不斷提高的情況下,JPEG壓縮也可以用軟件來實現(xiàn)。

56多媒體數(shù)據(jù)壓縮與編碼DCT的優(yōu)點很多,主要表現(xiàn)為:

已證明DCT是許多圖像的最佳變換;

DCT可以將N×N圖像的空間域轉(zhuǎn)換為頻率域,只需少量的數(shù)據(jù)點表示圖像;DCT產(chǎn)生的系數(shù)很容易被量化,以獲得好的塊壓縮;DCT算法的性能很好,可以進(jìn)行高效的運算,因此它在硬件和軟件中都容易實現(xiàn);

DCT算法是對稱的,逆DCT算法可用來解壓縮圖像。57多媒體數(shù)據(jù)壓縮與編碼10.3.4K-L變換

K-L變換(Karhunen-Loeve)亦稱主要成份變換,是一個離散變換。K-L變換從圖像統(tǒng)計特性出發(fā),用一組不相關(guān)的系數(shù)來表示連續(xù)信號,實現(xiàn)正交變換。K-L使矢量信號的各個分量互不相關(guān),因而在均方誤差準(zhǔn)則下,它是失真最小的一種變換,故稱作最佳變換。

如果圖像信號是一個平穩(wěn)隨機(jī)過程,K-L變換的效率最高。通過K-L變換之后,所有的系數(shù)都是不相關(guān)的,并且數(shù)值較大的方差僅存于少數(shù)系數(shù)中,這樣就有可能在允許的失真度下,把圖像數(shù)據(jù)壓縮到最小。58多媒體數(shù)據(jù)壓縮與編碼雖然K-L變換是最佳正交變換方法,但是由于它沒有通用的變換矩陣,因此對于每一個圖像數(shù)據(jù)都要計算相應(yīng)的變換矩陣,其計算量相當(dāng)大,很難滿足實時處理的要求。所以實際中較少用K-L變換對圖像數(shù)據(jù)進(jìn)行壓縮。

59多媒體數(shù)據(jù)壓縮與編碼10.3.5小波變換

今天的影像壓縮中,動態(tài)影像壓縮一般采用MPEG算法,靜止影像壓縮多采用JPEG算法。MPEG和JPEG均基于DCT。使用DCT進(jìn)行影像壓縮的缺陷在于影像的細(xì)節(jié)、精細(xì)信息損失較多,人工處理的痕跡較明顯。一種名叫小波壓縮的壓縮算法引起了人們的注意。60多媒體數(shù)據(jù)壓縮與編碼

小波分析方法最早是1910年Harr提出的小“波”規(guī)范正交基的概念。到20世紀(jì)80年代,Stromberg證明了小波函數(shù)的存在性,1984年法國地球物理學(xué)家Morlet在分析地震波的局部性質(zhì)時,發(fā)現(xiàn)傳統(tǒng)的付立葉(Fourier)變換難以達(dá)到要求,因而引入小波概念于信號分析中。1987年,Mallat將計算機(jī)視覺領(lǐng)域內(nèi)的多尺度分析的思路引入到小波分析中,小波函數(shù)的構(gòu)造以及信號按小波變換的分解與重構(gòu),其相應(yīng)的算法(稱為Mallat算法)有效地應(yīng)用于圖像分析與重構(gòu)。61多媒體數(shù)據(jù)壓縮與編碼

近年來,小波變換(WaveletTransformation)倍受科學(xué)技術(shù)界的重視,它不僅在數(shù)學(xué)上已形成一個新的分支,而且在應(yīng)用上(如信號處理、圖像壓縮、模式識別以及眾多的非線性科學(xué)領(lǐng)域)被認(rèn)為是繼離散余弦變換之后的一種最具潛力的變換編碼技術(shù)。由于小波變換具有Fourier變換所沒有的時頻特性及多分辨率分析,以及它的快速算法(Mallat算法)并不遜色于快速Fourier變換,因而小波變換一經(jīng)出現(xiàn),立即引起了人們的關(guān)注,成為當(dāng)前最為熱門的一個研究方向。

62多媒體數(shù)據(jù)壓縮與編碼

小波變換對圖像的壓縮類似于離散余弦變換,即都是對圖像進(jìn)行變換,由時域變換到頻域,然后再量化,編碼,輸出。不同之處在于小波變換是對整幅圖像進(jìn)行變換,而不是先對圖像進(jìn)行小區(qū)域分割。另外在量化技術(shù)上也是采用不同的方法。離散余弦變換是采用一種與人類視覺相匹配的矢量量化表,而小波變換則沒有這樣的量化表,它主要依據(jù)變換后各級分辨率之間的自相似的特點,采用逐級逼近技術(shù)實現(xiàn)減少數(shù)據(jù)存儲的目的。

63多媒體數(shù)據(jù)壓縮與編碼

利用小波變換技術(shù)實現(xiàn)對圖像、視頻及聲音的壓縮可以取得極好壓縮效果。小波壓縮的速度很快,而且其還原的影像質(zhì)量也更為精細(xì)(如圖10.7)。MPEG最高壓縮比率約為200∶1,對比之下,小波壓縮算法對動態(tài)影像的壓縮比率為480∶1,而對靜止影像畫面的壓縮比率也高達(dá)300∶1以上。小波壓縮算法的出現(xiàn),促進(jìn)了包括Internet上的視頻點播、更高容量和更高畫質(zhì)的CDROM影視節(jié)目的創(chuàng)作、交互式電視、圖書檢索和異地遠(yuǎn)程視訊會議的發(fā)展。64多媒體數(shù)據(jù)壓縮與編碼源圖像

小波壓縮后重構(gòu)的圖像(壓縮比:22:1)

圖10.7小波變換的壓縮效果65多媒體數(shù)據(jù)壓縮與編碼基于小波壓縮技術(shù)的良好性能,美國生產(chǎn)DSP的著名廠商AnalogDevices公司,已開始提供支持小波壓縮的編碼/解碼芯片。Intel公司更是利用小波壓縮算法重新設(shè)計了它的Indeo視頻交互系統(tǒng)。在新的Indeo視頻交互系統(tǒng)中,舍棄了原來的壓縮技術(shù),而采用了更加復(fù)雜的基于小波壓縮的算法。66多媒體數(shù)據(jù)壓縮與編碼綜上所述,由于小波變換繼承了Fourier分析的優(yōu)點,同時又克服它的許多缺點,所以它在靜態(tài)和動態(tài)圖像壓縮領(lǐng)域得到廣泛的應(yīng)用,并且已經(jīng)成為某些圖像壓縮國際標(biāo)準(zhǔn)(如MPEG-4)的重要環(huán)節(jié)。當(dāng)然,像其他變換編碼一樣,在壓縮比特別高的時候,小波變換壓縮量化后的重建圖像也會產(chǎn)生幾何畸變。

由于小波分析克服了Fourier分析的許多弱點,因此它不僅可以用于圖像壓縮,還可以用于許多其他領(lǐng)域,如信號分析、靜態(tài)圖像識別、計算機(jī)視覺、聲音壓縮與合成、視頻圖像分析、CT成像、地震勘探和分形力學(xué)等領(lǐng)域??傊?,可以說凡能用Fourier分析的地方,都可以進(jìn)行小波分析。小波分析應(yīng)用前景十分廣闊。

67多媒體數(shù)據(jù)壓縮與編碼

當(dāng)前,關(guān)于小波變換圖像壓縮算法的研究和應(yīng)用都十分活躍。國外一些公司將這種技術(shù)用于Internet環(huán)境中的圖像數(shù)據(jù)傳輸,提供商業(yè)化的服務(wù),對于緩解網(wǎng)絡(luò)帶寬不足、加快圖像信息傳播速度起到了很好的推進(jìn)作用。圖文資料數(shù)字化必然會產(chǎn)生大量的圖像數(shù)據(jù),對于高比率圖像壓縮算法的需求尤為迫切。作為一種優(yōu)秀的圖像壓縮算法,小波變換在這一領(lǐng)域具有非常好的應(yīng)用前景,也應(yīng)該能夠發(fā)揮關(guān)鍵性的作用.

68多媒體數(shù)據(jù)壓縮與編碼10.4統(tǒng)計編碼

預(yù)測編碼和變換編碼是根據(jù)去除相關(guān)性的原理達(dá)到壓縮數(shù)據(jù)的目的。數(shù)據(jù)之所以能夠壓縮,主要是由于信源發(fā)出的信息序列是有記憶的,元素之間存在相關(guān)性,去掉它們之間的相關(guān)性之后,數(shù)據(jù)才被壓縮的。那么,相互獨立的、無相關(guān)性的消息序列構(gòu)成的無記憶信源能否進(jìn)行壓縮呢?我們知道,信源的熵H(X)只有在信源符號出現(xiàn)的概率相等時,才達(dá)到它的最大值,即使信源符號之間無相關(guān)性,只要它們出現(xiàn)的概率不等,那么其熵H(x)必然小于最大值,即有冗余信息的存在。既然有冗余度存在,當(dāng)然對這樣的信源也能夠采用一定的方法進(jìn)行壓縮。69多媒體數(shù)據(jù)壓縮與編碼

統(tǒng)計編碼就是根據(jù)消息出現(xiàn)概率的分布特性而進(jìn)行的壓縮編碼,它有別于預(yù)測編碼和變換編碼。這種編碼的宗旨在于,在消息和碼字之間找到明確的一一對應(yīng)關(guān)系,以便在恢復(fù)時能夠準(zhǔn)確無誤地再現(xiàn)出來,或者至少是極相似地找到相當(dāng)?shù)膶?yīng)關(guān)系,并把這種失真或不對應(yīng)概率限制到可容忍的范圍內(nèi)。但不管什么途徑,它們總是要使平均碼長或碼率壓低到最低限度。

70多媒體數(shù)據(jù)壓縮與編碼統(tǒng)計編碼主要針對無記憶信源(是指信源在不同時刻發(fā)出的符號之間是無依賴的,彼此統(tǒng)計獨立的),根據(jù)信息碼字出現(xiàn)概率的分布特征而進(jìn)行壓縮編碼,尋找概率與碼字長度間的最優(yōu)匹配。統(tǒng)計編碼又可分為定長碼和變長碼。給單個符號或者定長符號組賦相同長度的碼字,這就是所謂的定長編碼。如果根據(jù)符號出現(xiàn)概率的不同賦予長短不一的碼字,這是變長編碼(VLC)方案。

常用的統(tǒng)計編碼有huffman編碼、算術(shù)編碼和行程編碼三種。71多媒體數(shù)據(jù)壓縮與編碼10.4.1哈夫曼(Huffman)編碼

大多數(shù)存儲數(shù)字的信息編碼系統(tǒng)都采用位數(shù)固定的定長碼,即使用相同位數(shù)對數(shù)據(jù)進(jìn)行編碼。如常用的ASCII碼,用8位二進(jìn)制數(shù)表示一個英文字符。正象一篇文章中,每個字符出現(xiàn)的頻度是不同的。有些字符出現(xiàn)的頻率高,有些字符出現(xiàn)的頻率低。同樣,在一幅圖像中,有些圖像數(shù)據(jù)出現(xiàn)的頻率高,有些圖像數(shù)據(jù)出現(xiàn)的頻率低。如果對出現(xiàn)頻率高的數(shù)據(jù)用較少的比特數(shù)來表示,出現(xiàn)頻率低的數(shù)據(jù)用較多的比特數(shù)來表示,這樣從總的效果看還是節(jié)省了存儲空間。采用這種辦法對數(shù)據(jù)進(jìn)行編碼時,代碼的位數(shù)不固定,這種碼稱為變長碼。這種編碼思想首先由香農(nóng)提出,哈夫曼對它提出了改進(jìn),用這種方法得到的編碼稱為哈夫曼碼。72多媒體數(shù)據(jù)壓縮與編碼哈夫曼壓縮算法的編碼思想如下:

⑴將信源符號按概率遞減順序排列;

⑵把兩個最小的概率加起來,作為新符號的概率;

⑶重復(fù)步驟⑴與⑵,直到概率和等于1為止;

⑷完成上述步驟后,再沿路徑返回進(jìn)行編碼。尋找從每一信源符號到概率為1處的路徑,每層有兩個分支,分別賦予0和1(對概率大的賦予編碼0,概率小的賦予編碼1,反之亦可,但同一過程中賦值的方法必須一致),從而得到每個符號的編碼。哈夫曼編碼示例如圖10.8所示73多媒體數(shù)據(jù)壓縮與編碼信源概率哈夫曼碼a10.2501a20.2011a30.18000a40.13100a50.10101a60.090010a70.050011

1

0

0

0

1

0

0

1

1

010.23

0.14

0.32

0.43

0.5711圖10.8哈夫曼編碼過程74多媒體數(shù)據(jù)壓縮與編碼對信源進(jìn)行編碼后,形成了一個哈夫曼編碼表。在信源的存儲與傳輸過程中必須首先存儲或傳輸哈夫曼編碼表。解碼時,必須參照這個表才能正確譯碼。使用哈夫曼編碼方法,要精確地統(tǒng)計出每個信源出現(xiàn)的概率,如果沒有這個精確統(tǒng)計最終的編碼文件就不會太小。所以哈夫曼方法通常要進(jìn)行兩次掃描:第一遍掃描產(chǎn)生統(tǒng)計結(jié)果,第二遍掃描完成編碼。75多媒體數(shù)據(jù)壓縮與編碼10.4.2行程編碼

現(xiàn)實中有許多這樣的圖像,在一幅圖像中具有許多顏色相同的圖塊。在這些圖塊中,許多行上都具有相同的顏色,或者在一行上有許多連續(xù)的像素都具有相同的顏色值。在這種情況下就不需要存儲每一個像素的顏色值,而僅僅存儲一個像素的顏色值,以及具有相同顏色的像素數(shù)目即可,或者存儲一個像素的顏色值,以及具有相同顏色值的行數(shù)。這種壓縮編碼稱為行程長度編碼,用RLE(RunLengthEncoding)表示,具有相同顏色并且是連續(xù)的像素數(shù)目稱為行程長度。

76多媒體數(shù)據(jù)壓縮與編碼RLE所能獲得的壓縮比有多大,主要取決于圖像本身的特點。如果圖像中具有相同顏色的圖像塊越大,圖像塊數(shù)目越少,則獲得的壓縮比就越高。反之,壓縮比就越小。譯碼時按照與編碼時采用的相同規(guī)則進(jìn)行,還原后得到的數(shù)據(jù)與壓縮前的數(shù)據(jù)完全相同,由此可見,RLE是一種無損壓縮技術(shù)。77多媒體數(shù)據(jù)壓縮與編碼RLE編碼方法特別適用于由計算機(jī)生成的圖像,對于減少圖像文件的存儲空間非常有效。許多圖形文件和視頻文件,如.BMP,.TIF等都使用了這種壓縮。然而,RLE對顏色豐富的自然圖像就顯得力不從心。因為在彩色圖像中,同一行上具有相同顏色的連續(xù)像素往往很少,而連續(xù)幾行都具有相同顏色值的情況就更少。如果仍用RLE編碼方法,不僅不能壓縮圖像,反而使原來的圖像數(shù)據(jù)變得更大。但這并不是說RLE編碼方案不能用于自然圖像的壓縮,而是不能單純使用RLE一種編碼方法,需要和其他的壓縮編碼技術(shù)聯(lián)合使用。

78多媒體數(shù)據(jù)壓縮與編碼10.4.3算術(shù)編碼

算術(shù)編碼是Rissomen提出的一種編碼方法,它把信源集合映射到[0,1]區(qū)間之間的一個小區(qū)間,用這個小區(qū)間里的一個實數(shù)表示此信源符號。在不知信源統(tǒng)計的情況下,只要能監(jiān)視一小段時間內(nèi)碼符號出現(xiàn)的頻度,不管是平穩(wěn)的還是非平穩(wěn)的信號,編成的碼率總能趨近于信源熵值。雖然比Huffman編碼復(fù)雜,但它不需要傳送像Huffman碼的碼表,具有可構(gòu)造性,即可以使用迭代方法每次處理一個數(shù)據(jù)符號且只有算術(shù)運算,同時算術(shù)編碼還有自適應(yīng)能力的優(yōu)點,所以是一種很有前途的編碼方法,在國際標(biāo)準(zhǔn)JPEG擴(kuò)展系統(tǒng)中,建議使用算術(shù)編碼。79多媒體數(shù)據(jù)壓縮與編碼

算術(shù)編碼可以是靜態(tài)的或者自適應(yīng)的。在靜態(tài)算術(shù)編碼中,信源符號的概率是固定的。在自適應(yīng)算術(shù)編碼中,信源符號的概率根據(jù)編碼時符號出現(xiàn)的頻繁程度動態(tài)地進(jìn)行修改,在編碼期間估算信源符號概率的過程叫做建模。需要開發(fā)動態(tài)算術(shù)編碼的原因是因為事先知道精確的信源概率是很難的,而且是不切實際的。當(dāng)壓縮消息時,我們不能期待一個算術(shù)編碼器獲得最大的效率,所能做的最有效的方法是在編碼過程中估算概率。因此動態(tài)建模就成為確定編碼器壓縮效率的關(guān)鍵。

80多媒體數(shù)據(jù)壓縮與編碼符號00011011概率0.10.40.20.3初始編碼間隔[0,0.1)[0.1,0.5)[0.5,0.7)[0.7,1)81多媒體數(shù)據(jù)壓縮與編碼10.4.4關(guān)于統(tǒng)計編碼模型

要壓縮一條信息,首先要分析清楚信息中每個符號出現(xiàn)的概率。不同的壓縮程序通過不同的方法確定符號的出現(xiàn)概率,對符號的概率計算得越準(zhǔn)確,也就越容易得到好的壓縮效果。在壓縮程序中,用來處理輸入信息,計算符號的概率并決定輸出哪個或哪些代碼的模塊叫做模型。82多媒體數(shù)據(jù)壓縮與編碼因為對信息中字符的出現(xiàn)概率通常難以估計以至于有各種不同的壓縮模型。當(dāng)然,我們可以預(yù)先掃描文件中的所有字符,統(tǒng)計出每個字符出現(xiàn)的概率,這種方法在壓縮術(shù)語里叫做“靜態(tài)統(tǒng)計模型”。但是,不同的文件中,字符有不同的分布概率,我們要么先花上大量的時間統(tǒng)計我們要壓縮的所有文件中的字符概率,要么為每一個單獨的文件保存一份概率表以備解壓縮時需要。問題是,不但掃描文件要消耗大量時間,保存一份概率表也使壓縮后的文件增大了不少。所以,實際應(yīng)用中,“靜態(tài)統(tǒng)計模型”應(yīng)用的很少。83多媒體數(shù)據(jù)壓縮與編碼

真正的壓縮程序中使用的大多是一種叫“自適應(yīng)模型”的模型??梢哉J(rèn)為自適應(yīng)模型是一臺具有學(xué)習(xí)功能的自動機(jī)。它在信息被輸入之前對信息內(nèi)容一無所知并假定每個字符的出現(xiàn)概率均等,隨著字符不斷被輸入和編碼,統(tǒng)計并記錄已經(jīng)出現(xiàn)過的字符的概率并將這些概率應(yīng)用于對后續(xù)字符的編碼。也就是說,自適應(yīng)模型在壓縮開始時壓縮效果并不理想,但隨著壓縮的進(jìn)行,他會越來越接近字符概率的準(zhǔn)確值,并達(dá)到理想的壓縮效果。自適應(yīng)模型還可以適應(yīng)輸入信息中字符分布的突然變化,可以適應(yīng)不同的文件中的字符分布而不需要保存概率表。84多媒體數(shù)據(jù)壓縮與編碼

Huffman編碼、算術(shù)編碼可以采用自適應(yīng)模型,根據(jù)已經(jīng)編碼的符號頻率決定下一個符號的編碼。這時,我們無需為解壓縮預(yù)先保存任何信息,整個編碼是在壓縮和解壓縮過程中動態(tài)創(chuàng)建的,而且自適應(yīng)編碼由于其符號頻率是根據(jù)信息內(nèi)容的變化動態(tài)得到的,更符合符號的局部分布規(guī)律,因此在壓縮效果上比靜態(tài)模型好許多。但是,采用自適應(yīng)模型必須考慮編碼表的動態(tài)特性,即編碼表必須可以隨時更新以適應(yīng)符號頻率的變化。

85多媒體數(shù)據(jù)壓縮與編碼10.5其他編碼10.5.1LZW編碼

1977年,兩位以色列教授發(fā)明Lempel-Zev壓縮技術(shù),介紹了查找冗余字符串和將此字符串用較短的符號標(biāo)記替代的技術(shù),并作了實驗。1985年,美國的Wekch將此技術(shù)實用化,取得了LZW專利。

哈夫曼編碼要求事先編寫出一本碼簿,但在許多情況下并不知道或無法取得被壓縮數(shù)據(jù)的統(tǒng)計特性。LZW是基于“詞典編碼”的另一種編碼方案。其基本思想是用符號代替一串字符,這一串字符可是有意義的,也可是無意義的。用8位代碼表示的圖像數(shù)據(jù)組合起來的一串字符很難說代表什么意義。因此,在詞典編碼中僅僅把字符串看成是一個號碼,而不管它代表什么意思。86多媒體數(shù)據(jù)壓縮與編碼圖像數(shù)據(jù)實際上也是由字符串組成的,在對一幅圖像數(shù)據(jù)進(jìn)行編碼之前首先設(shè)置一個編碼碼表,這個碼表可以是已知的256個字符組成的碼表,表的每一欄可看成是由單個字符組成的字符串,并且給每一欄都編一個號碼。

在編碼圖像數(shù)據(jù)過程中,每讀一個字符(即圖像數(shù)據(jù)),就與以前讀入的字符串拼接成一個新的字符串,并且查看碼表中是否已經(jīng)有相同的字符串,如果有就用這個字符串的號碼來代替這一個字符,如果沒有,則把這個新的字符串放到碼表中,并且給它編上一個新的號碼。編碼就變成一邊生成碼表一邊增添新字符串的號碼。在數(shù)據(jù)存儲或傳輸時,只存儲或傳輸號碼,而不存儲和傳輸碼表本身。在譯碼時,按照編碼時的規(guī)則一邊生成碼表一邊還原圖像數(shù)據(jù)。87多媒體數(shù)據(jù)壓縮與編碼LZW壓縮編碼也是一種無損壓縮編碼,目前已經(jīng)把這種壓縮技術(shù)成功地集成到Windows系統(tǒng)中,用于壓縮硬盤上的數(shù)據(jù)?,F(xiàn)在市場上流行的許多圖像處理軟件都采用了LZW算法,用于減少圖像所需要的存儲空間。10.5.2分形編碼

分形最早是由IBM研究中心的數(shù)學(xué)家BenoitMandelbrot于1967年在研究海岸線長度時提出來的。海岸線的長度實際上是不確定的,因為其長度取決于測量的尺度。隨著尺度的減小,量到的彎曲越多,海岸線將越長。Mandelbrot把這種圖形叫作分形(fraction),意味不規(guī)則。

88多媒體數(shù)據(jù)壓縮與編碼

分形編碼與分形幾何相關(guān)。什么是分形幾何?通俗一點說就是研究無限復(fù)雜但具有一定意義下的自相似圖形和結(jié)構(gòu)的幾何學(xué)。什么是自相似呢?例如一棵蒼天大樹與它自身上的樹枝及樹枝上的枝杈,在形狀上沒大的區(qū)別,大樹與樹枝這種關(guān)系在幾何形狀上稱之為自相似關(guān)系;我們再拿來一片樹葉,仔細(xì)觀察一下葉脈,它們也具備這種性質(zhì)。這些例子在我們的身邊到處可見。分形幾何揭示了世界的本質(zhì),分形幾何是真正描述大自然的幾何學(xué)。89多媒體數(shù)據(jù)壓縮與編碼分形幾何不同于傳統(tǒng)的歐氏幾何之處在于它更適于描繪自然界復(fù)雜的、具有無窮細(xì)節(jié)的自然景物。如絢麗多姿的云彩,層巒起伏的山脈,彎曲綿延的海岸線等。它的兩大工具即是自相似原理及分?jǐn)?shù)維。自相似可以把復(fù)雜的景物用極其簡單的規(guī)則來描述,分?jǐn)?shù)維則用來刻畫該物的復(fù)雜程度。如一條平直的直線,它的維數(shù)是1;而對于復(fù)雜的曲線,它的維數(shù)卻是介于12之間的分?jǐn)?shù)維,如果1.2維或1.3維等。90多媒體數(shù)據(jù)壓縮與編碼分形編碼正是利用了分形幾何中自相似的原理來實現(xiàn)的。首先對圖像進(jìn)行分塊,然后再去尋找各塊之間的相似性,這里相似性的描述主要是依靠仿射變換來確定的,一旦找到了每塊的仿射變換,于是就保存下這個仿射變換的系數(shù),由于每塊的數(shù)據(jù)量遠(yuǎn)大于仿射變換的系數(shù),因而圖像得以大幅度的壓縮。

10多年來,雖然分形圖像編碼和解碼不斷改進(jìn),但仍不夠成熟,壓縮比不夠高,壓縮效果還不十分理想,在當(dāng)前圖像壓縮編碼中還不能占據(jù)主導(dǎo)地位。國際標(biāo)準(zhǔn)MPEG-4中已經(jīng)把小波變換列了進(jìn)去,但分形不在其中。靜態(tài)圖像壓縮標(biāo)準(zhǔn)JPEG2000是完全使用小波的圖像編碼方法,也沒有把分形列進(jìn)去。但我們應(yīng)該看到分形圖像壓縮方法的優(yōu)勢和巨大潛力。

91多媒體數(shù)據(jù)壓縮與編碼10.5.3矢量量化編碼

矢量量化編碼利用相鄰圖像數(shù)據(jù)間的高度相關(guān)性,將輸入圖像數(shù)據(jù)序列分組,每一組m個數(shù)據(jù)構(gòu)成一個m維矢量,一起進(jìn)行編碼,即一次量化多個點。根據(jù)香農(nóng)率失真理論,對于無記憶信源,矢量量化編碼總是優(yōu)于標(biāo)量量化編碼。92多媒體數(shù)據(jù)壓縮與編碼編碼前,先通過大量樣本的訓(xùn)練或?qū)W習(xí)或自組織特征映射神經(jīng)網(wǎng)絡(luò)方法,得到一系列的標(biāo)準(zhǔn)圖像模式,每一個圖像模式就稱為碼字或碼矢,這些碼字或碼矢合在一起稱為碼書,碼書實際上就是數(shù)據(jù)庫。輸入圖像塊按照一定的方式形成一個輸入矢量。編碼時用這個輸入矢量與碼書中的所有碼字計算距離,找到距離最近的碼字,即找到最佳匹配圖像塊。輸出其索引(地址)作為編碼結(jié)果。解碼過程與之相反,根據(jù)編碼結(jié)果中的索引從碼書中找到索引對應(yīng)的碼字(該碼書必須與編碼時使用的碼書一致),構(gòu)成解碼結(jié)果。由此可知,矢量量化編碼是有損編碼。

93多媒體數(shù)據(jù)壓縮與編碼10.5.4子帶編碼

子帶編碼技術(shù)是一種高質(zhì)量、高壓縮比的圖像編碼方法。它早已在語音信號壓縮編碼中獲得廣泛應(yīng)用。其基本依據(jù)是,語音和圖像信號可以劃分為不同的頻域段,人眼對不同頻域段的敏感程度不同。例如圖像信號的主要能量集中在低頻區(qū)域,它反映圖像的平均亮度,而細(xì)節(jié)、邊緣信息則集中在高頻區(qū)域。子帶編碼的基本思想是利用一濾波器組,通過重復(fù)卷積的方法,經(jīng)取樣將輸入信號分解為高頻分量和低頻分量,然后分別對高頻和低頻分量進(jìn)行量化和編碼。解碼時,高頻分量和低頻分量經(jīng)過插值和共軛濾波器而合成原信號。進(jìn)行子帶編碼的一個關(guān)鍵問題,是如何設(shè)計共軛濾波器組,除去混疊頻譜分量。94多媒體數(shù)據(jù)壓縮與編碼10.6靜態(tài)圖像壓縮標(biāo)準(zhǔn)JPEG

JPEG(JointPhotographeraExpertsGroup)是一個通用的靜態(tài)圖像壓縮標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)制定了有損壓縮和無損壓縮的編碼方案。這個標(biāo)準(zhǔn)適用范圍很廣,既可用于灰度圖像,又可用于彩色圖像。如多媒體CD-ROM,彩色圖像傳真,圖文檔案管理等。10.6.1JPEG概述

JPEG算法是一種適用于連續(xù)色調(diào)、多級灰度、靜止圖像的數(shù)字圖像壓縮編碼方法。也是國際上彩色、灰度、靜止圖像的第一個國際標(biāo)準(zhǔn)。是一個適用范圍廣泛的通用標(biāo)準(zhǔn)。它不僅適用于靜止圖像的壓縮,電視圖像序列的幀內(nèi)圖像的壓縮編碼,也常采用JPEG壓縮方法。95多媒體數(shù)據(jù)壓縮與編碼JPEG的目的是為了給出一個適用于連續(xù)色調(diào)圖像的壓縮方法,使之滿足以下要求:達(dá)到或接近當(dāng)前壓縮比與圖形保真度的技術(shù)水平,能覆蓋一個較寬的圖形質(zhì)量等級范圍,能達(dá)到“很好”或“極好”的評估,與原始圖像相比,人的視覺難以區(qū)分。能適用于任何種類連續(xù)色調(diào)圖像,且長寬比都不受限制,同時也不受限于景物內(nèi)容、圖形復(fù)雜程度和統(tǒng)計特性。

計算的復(fù)雜性是可控制的,其軟件可在各種CPU上完成,算法也可用硬件實現(xiàn)。

96多媒體數(shù)據(jù)壓縮與編碼JPEG算法的基礎(chǔ)是離散余弦變換和哈夫曼變換,它是一種有損壓縮。試驗表明,經(jīng)壓縮25倍還原后的彩色圖像與原圖相比,對非行家來說很難加以區(qū)別。在損失某些圖像信息的情況下,JPEG可以把圖像壓縮比提的更高。例如當(dāng)把30:1的壓縮比用于一個全彩色的圖像幀時,要求的圖像存儲空間就從1000K降至33K,而數(shù)據(jù)傳輸率則降至每秒1MB,這就降到了目前大多數(shù)存儲設(shè)備可以處理的范圍內(nèi)了。

JPEG壓縮分四個步驟實現(xiàn):顏色模式轉(zhuǎn)換及采樣;DCT變換;

量化;

編碼;

97多媒體數(shù)據(jù)壓縮與編碼JPEG的編碼過程與譯碼過程如圖10.9和10.10所示圖10.9JPEG的編碼步驟圖10.10JPEG的解碼步驟98多媒體數(shù)據(jù)壓縮與編碼10.6.2顏色模式轉(zhuǎn)換及采樣

RGB色彩模型是我們最常用的表示顏色的方式。JPEG采用的是YCbCr色彩系統(tǒng)。這里Y代表亮度,Cb和Cr則代表色度、飽和度。JPEG的圖片使用YCrCb顏色模型,而不是RGB顏色模型,其中的一個主要理由是人類的眼晴對低頻的數(shù)據(jù)比對高頻的數(shù)據(jù)具有更高的敏感度,同樣,人眼對亮度的改變也比對色彩的改變要敏感得多,也就是說Y成份的數(shù)據(jù)是比較重要的。既然Cb成份和Cr成份的數(shù)據(jù)比較相對不重要,就可以只取部分?jǐn)?shù)據(jù)來處理。以增加壓縮的比例。99多媒體數(shù)據(jù)壓縮與編碼

JPEG通常有兩種采樣方式:4:1:1和4:2:2,它們所代表的意義是Y、Cb和Cr三個成份的數(shù)據(jù)取樣比例。例如在4:2:2采樣方式中,采用RGB模型,4個點需要43=12字節(jié)(想一想為什么是43),而在YcrCb模型中僅需要4+2=6字節(jié)

100多媒體數(shù)據(jù)壓縮與編碼

想要用JPEG基本壓縮法處理全彩色圖像,得先把RGB顏色模式圖像數(shù)據(jù),轉(zhuǎn)換為YCbCr顏色模式的數(shù)據(jù)。通過下列計算公式可完成數(shù)據(jù)轉(zhuǎn)換:

Y=0.2990R+0.5870G+0.1140B

Cb=-0.1687R-0.3313G+0.5000B+128

Cr=0.5000R-0.4187G-0.0813B+12810.6.3DCT變換

DCT變換(如圖10.11所示)這里進(jìn)一步討論DCT變換前后的空間域矩陣(P矩陣)和頻率域矩陣(T矩陣)中數(shù)值的物理意義及其聯(lián)系。101多媒體數(shù)據(jù)壓縮與編碼P矩陣

DCT變換T矩陣

圖10.11DCT變換是將空間矩陣P變換為頻率矩陣T102多媒體數(shù)據(jù)壓縮與編碼DCT變換時,輸入的圖像數(shù)據(jù)是單個分量的樣本數(shù)據(jù),它把整幅圖分成許多子塊,每個子塊是一個8×8樣本矩陣。當(dāng)圖像數(shù)據(jù)分成一個88矩陣后,還必須將每個數(shù)值減去128,然后一一代入DCT變換公式中,即可達(dá)到DCT變換的目的。圖像數(shù)據(jù)值必須減去128,是因為DCT轉(zhuǎn)換公式所接受的數(shù)字范圍是在-128到+127之間。在逆向離散余弦變換后,對重構(gòu)圖像中的每個樣本值數(shù)據(jù)要加上128。

編碼時將源圖像8×8樣本塊矩陣P中的無符號整數(shù)值變成有符號的整數(shù),送給DCT進(jìn)行變換,得到64個DCT系數(shù)矩陣T。矩陣T中的數(shù)值可以認(rèn)為對應(yīng)于64點輸入信號中包含的空間頻率的幅度。矩陣T中左上角的系數(shù)為DC系數(shù),其余的為AC系數(shù)。

103多媒體數(shù)據(jù)壓縮與編碼這里面有什么玄機(jī)呢?假設(shè)所有P矩陣中所有的值都是一樣的。這將對應(yīng)一幅只包含一種顏色沒有任何變化的圖像。這時候所有的AC系數(shù)對應(yīng)余弦函數(shù)的和,它們將相互消去,于是所有的AC系數(shù)都為0。如果P值中有一點小小的變化,則對應(yīng)一幅顏色均勻變化而不太精細(xì)的圖像。在這種情況下,矩陣T將包含許多值為0的AC系數(shù)。那將有很多但不是全部的AC系數(shù)為0。如果P值中有很大的變化,它表示一幅小范圍內(nèi)顏色變化劇烈的圖像,或?qū)嶋H上表示一幅有許多精密細(xì)節(jié)的圖像。這時的AC系數(shù)值為0的將很少,或者都不為零。

一般而言,如果像素值作為其位置的函數(shù)變化越快,越不均勻,則AC系數(shù)對應(yīng)越大的數(shù)值。另外,有更多的空間頻率較高的值不為零??偟膩碚f,AC系數(shù)本質(zhì)上是像素變化的一種尺度。因此,精細(xì)的圖像要比色彩變化很少的圖像難壓縮。

104多媒體數(shù)據(jù)壓縮與編碼10.6.3量化量化過程

DCT變換的作用是使空間域的能量重新分布,降低圖像的相關(guān)性。DCT變換本身并不能達(dá)到數(shù)據(jù)壓縮的作用,而要實現(xiàn)圖像壓縮,就要選擇適當(dāng)?shù)谋忍胤峙浞桨负土炕椒?。量化的作用是在保證主觀圖像質(zhì)量的前提下,丟掉那些對視覺效果影響不大的信息。量化是一種降低精度的過程,所以是有損的。105多媒體數(shù)據(jù)壓縮與編碼8×8的圖像塊經(jīng)過DCT變換后,其低頻分量都集中在左上角,高頻分量分布在右下角(DCT變換實際上是空間域的低通濾波器)。由于該低頻分量包含了圖像的主要信息(如亮度),而高頻與之相比,就不那么重要了,所以我們可以忽略高頻分量,從而達(dá)到壓縮的目的。如何將高頻分量去掉,這就要用到量化,它是產(chǎn)生信息損失的根源(如圖10.12)。這里的量化操作,就是將某一個值除以量化表中對應(yīng)的值。由于量化表左上角的值較小,右上角的值較大,這樣就起到了保持低頻分量,抑制高頻分量的目的。106多媒體數(shù)據(jù)壓縮與編碼圖10.12經(jīng)量化后,源圖像(左)與IDCT運算后得到的圖像(右)會產(chǎn)生一定的失真,失真程度視量化等級而定107多媒體數(shù)據(jù)壓縮與編碼JPEG標(biāo)準(zhǔn)中采用線性均勻量化器,量化過程為對64個DCT系數(shù)除以量化步長并取整,量化步長由量化表(量化矩陣)決定。量化的計算公式十分簡單:

量化值(i,j)=(T(i,j)/量化矩陣(i,j))由公式可見,當(dāng)量化值較大時,可保證所有較高頻率的分量實際上都將被四舍五入為0。僅在高頻系數(shù)很大時才將其編碼為非0,但這種情況很少出現(xiàn)。

在解碼過程中,逆量化公式為:

T(i,j)=量化值(i,j)量化矩陣(i,j)

不難看出,當(dāng)使用大的量化值時,在逆量化過程中所用的DCT輸出會有大的誤差,幸運的是逆量化過程中高頻分量的誤差不會對圖像的質(zhì)量有嚴(yán)重影響。有許多方案可用來選擇量化矩陣中的元素值。108多媒體數(shù)據(jù)壓縮與編碼JPEG推薦的量化表

JPEG使用的顏色是YCrCb格式。Y分量代表了亮度信息,CrCb分量代表了色差信息。相比而言,Y分量更重要些。我們可以對Y采用細(xì)量化,對YCrCb采用粗量化,可進(jìn)一步提高壓縮比。所以量化表通常有兩張,一張是針對Y的,一張是針對YCrCb的。

JPEG基本算法包括一套量化表,它是從廣泛的實驗法中得出的。表10-3和10-4分別給出了JPEG標(biāo)準(zhǔn)所推薦的亮度量化表和色度量化表。量化表中元素為1-255之間的任意整數(shù),其值規(guī)定了所對應(yīng)DCT系統(tǒng)的步長。當(dāng)頻率系數(shù)經(jīng)過量化后,將頻率系數(shù)由浮點數(shù)轉(zhuǎn)變?yōu)檎麛?shù),這才便于執(zhí)行最后的編碼。不過,經(jīng)過量化階段后,所有數(shù)據(jù)只保留整數(shù)近似值,也就再度損失了一些數(shù)據(jù)內(nèi)容。

109多媒體數(shù)據(jù)壓縮與編碼161110162440516112121419265860551413162440576956141722295187806218223756681091037724355564811041139249647887103121120101729295981121001039917182447999999991821266699999999242656999999999947669999999999999999999999999999999999999999999999999999999999999999999999999999表10-3亮度量化表

表10-4色度量化表

110多媒體數(shù)據(jù)壓縮與編碼量化表的優(yōu)化

用戶可根據(jù)人類視覺和壓縮圖像類型的特點對量化表進(jìn)行優(yōu)化,并作為編碼器的一個輸入。顯然有許多方案可用來選擇量化矩陣中元素值。一般用兩種實驗方法檢測不同量化方案,一種是測量輸入圖像和已解壓圖像間的數(shù)學(xué)誤差,第二種是用人眼去判斷解壓后效果。但后者并非總是與誤差水平內(nèi)的數(shù)學(xué)差異完全一致。在運行時選擇量化矩陣的好處是在使用DCT來壓縮圖像時控制圖像的質(zhì)量很容易。通過給較大的DCT系數(shù)選擇特別高的量化步長可獲得很好的壓縮率,但圖像質(zhì)量很差;通過慎重選擇小的量化步長,壓縮率不是很好,但圖像的質(zhì)量會很好。這樣用戶有很大的靈活性,從而可根據(jù)所想象的要求存儲能力來選擇圖像的質(zhì)量。111多媒體數(shù)據(jù)壓縮與編碼10.6.4編碼

JPEG壓縮算法的最后部分是對量化后的圖像進(jìn)行編碼。由三步組成:直流系數(shù)(DC)的編碼

因為圖像中相鄰塊之間有很強(qiáng)相關(guān)性,JPEG標(biāo)準(zhǔn)對DC系數(shù)采用DPCM編碼(差分編碼)方法,即對相鄰的8×8像素塊之間的DC系數(shù)的差值進(jìn)行編碼。經(jīng)過DCT變換后,低頻分量集中在左上角,其中T(0,0)(即第1行第1列元素)代表了DC系數(shù),即8×8子塊的平均值。由于兩個相鄰的8×8子塊的DC系數(shù)相差很小,所以對其采用差分編碼DPCM,可提高壓縮比,即對相鄰的子塊DC系數(shù)的差值進(jìn)行編碼。這個差值可用公式表示為:112多媒體數(shù)據(jù)壓縮與編碼交流系數(shù)(AC)編碼與Z形掃描

T矩陣有63個元素是交流(AC)系數(shù),可采用行程編碼進(jìn)行壓縮。需要考慮的問題是:這63個系數(shù)應(yīng)該按照怎么樣的順序排列?為了保證低頻分量先出現(xiàn),高頻分量后出現(xiàn),這63個元素采用了“之”字型(Zig-Zag)排列方法,稱之為Z形掃描。

Z型掃描算法能夠?qū)崿F(xiàn)高效壓縮的原因之一是經(jīng)過量化后,大量的DCT矩陣元素被截成0。而且零值通常是從左上角開始沿對角線方向分布的。由于這么多0值,對0的處理與對其他數(shù)的處理不大相同,采用行程編碼算法(RLE)沿Z型路徑可有效地累積圖像中0的個數(shù),所以這種編碼壓縮效率非常高。Z型掃描過程如圖10.13。

113多媒體數(shù)據(jù)壓縮與編碼圖10.13Z字型掃描過程

114多媒體數(shù)據(jù)壓縮與編碼63個AC系數(shù)行程編碼的碼字用兩個字節(jié)表示,如圖10.14所示。

圖10.14AC系數(shù)行成編碼115多媒體數(shù)據(jù)壓縮與編碼熵編碼

為了進(jìn)一步達(dá)到壓縮數(shù)據(jù)的目的,需要對DC碼和AC行程編碼的碼字再作基于統(tǒng)計特性的熵編碼(entropycoding)。JPEG建議使用兩種熵編碼方法:哈夫曼編碼和自適應(yīng)二進(jìn)制算術(shù)編碼。熵編碼

溫馨提示

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

評論

0/150

提交評論