欒 陽
[摘要]現今的電子信息技術領域正發生著一場具有深遠影響的數字化革命。不僅通信、廣播、電視、音響、錄像、攝影和儀器、儀表等都面臨著由模擬技術向數字技術的轉變,數字化信息尤其是數字視頻、音頻信號的數據量是極其龐大的,給存儲、傳輸以及有效、快速獲取信息都帶來了嚴重的障礙·如果不對其進行有效的壓縮就難以得到實際應用。因此,數據壓縮技術已成為當今數字通信、存儲及多媒體系統的一項關鍵技術a因此,將概括性地介紹數據壓縮的概念、壓縮的發展、壓縮的原理、常用的數據壓縮方法以及壓縮標準和數據壓縮的應用等幾個部分。
[關鍵詞]數據壓縮冗余數字化多媒體信息技術
中圖分類號:TP3文獻標識碼:A文章編號:t671—7597(2009)1020094--02
現今的電子信息技術領域正發生著一場具有深遠影響的數字化革命·不僅通信、廣播、電視、音響、錄像、攝影和儀器、儀表等都面臨著由模擬技術向數字技術的轉變,而且數字化視頻、音頻技術的發展也正引起計算機和網絡技術的根本性變革,并為其應用開拓了新的空間。然而,由于數字化的多媒體信息尤其是數字視、音頻信號的數據量特別龐大,如果不對其進行有效的壓縮就難以得到實際的應用。因此,數據壓縮技術已成為當今通信、廣播、存儲和多媒體娛樂領域一項共同涉及到的關鍵性技術。
一、數據壓縮技術概述
(一)壓縮技術的概念
所謂數據壓縮技術通俗地說,就是用最少的數碼來表示信號。其作用是:能較快地傳輸各種信號,如傳真、圖象等,用現有的通信干線并行開通更多的多媒體業務,如各種增值業務,壓縮數據的存儲容量。CD2ROM、VCD和DVD等,降低發信機功率,這對移動通信系統尤為重要。由此看來,通信時間、傳輸帶寬、存儲空間甚至發射能量,都可能與數據壓縮的效果直接相關。
關于數據壓縮的理論,比較系統的研究始于40年代初形成的信息論,早期信息論研究的主要內容之一就是已知消息中各符號出現的頻率,設法構造一種編碼,使消息所占的空間盡可能少。盡管當時數字計算機尚未出現,但所進行的研究與當今數字計算機所使用的壓縮技術有著密切的聯系。許多算法的出現,如Huffman編碼等至今仍有很大的應用價值。
(二)數據壓縮技術的發展
數據壓縮的研究過程一直有兩個發展方向:一個是許多數學家所致力于的建設信源和數據壓縮的數學模型。并從中找出衡量數據壓縮質量的技術指標及撮優壓縮性能指標;另一個則是眾多的工程技術人員所進行的工作,他們的研究重點為建立一個能實現數據壓縮功能的系統,以服務于工程應用,或者對這些數據壓縮系統進行分析或模擬,以確定它們的性能指標。但不論是理論研究還是工程實踐,1977年以前,數據壓縮作為信息論研究中的一項內容,主要是有關信息熵,數據壓縮比和各種編碼方法的研究,即按某種方法對源數據流進行編碼,使得經過編碼的數據流比原數據流占用較少的空間。其中基于符號頻率統計的Huffman具有良好的壓縮性能,一直占據重要的地位,不斷有基于Huffman的改進算法提出。

隨著計算機技術的飛速發展,數據壓縮作為解決海量信息存儲和傳輸的支撐技術受到人們的極大關注。研究把無失真壓縮的研究推向了一個全新的階段。目前,計算機文件常用的壓縮正具如WinZip、ARJ等都是基于這種方法的。隨著信號處理研究的不斷發展,數字圖像信號、語音信號等都被大量的引入到有關的領域中。由于圖像信息占用較多的存儲空間,而圖像通信又是目前非話業務的主流,因此數據壓縮技術在圖像通信中得到了最廣泛的應用。
在圖像編碼中,最早研究的是預測編碼。曾作為經典理論而登載于各種專著,并得到廣泛的應用。近年來,隨著神經網絡理論的興起,有入采用BP網進行非線性預測的嘗試,并取得了較好的效果。眾多研究者相繼提出了在多個分辨率下表示圖像的方案,主要的方法有:子代編碼,金字塔編碼,小波變換編碼等?;谛〔ㄗ儞Q的方法具有較高的壓縮性能,已成為JPEG2000的核心算法。
(三)數據壓縮技術的原理
關于壓縮技術的原理:首先,數據中間常存在一些多余成分即冗余度。如在一份計算機文件中,某些符號要比其它符號頻率高得多地重復出現這些冗余部分便可在數據編碼中除去或減少,冗余度壓縮是一個可逆過程,因此叫做無失真壓縮或稱保持型編碼。
其次,數據中間尤其是相鄰的數據之間常存在著相關性,如圖片中常常有色彩均勻的背影;電視信號的相鄰兩幀之間可能只有少量的變化影物是不同的;聲音信號有時具有一定的規律性和周期性等等。因此,有可能利用某些變換來盡可能地去掉這些相關性。但這種變換有時會帶來不可恢復的損失和誤差,因此叫做不可逆壓縮或稱有失真編碼、熵壓縮。
就數據壓縮技術而言,最基本的要求是要盡量降低數字化的碼率,同時仍保持一定的信號質量。不難想象,數據壓縮的方法應該是很多的,但本質上不外乎上述的完全可逆的冗余度壓縮和實際上不可逆的熵壓縮兩類。冗余度壓縮常用于磁盤文件、數據通信和氣象衛星云圖等不允許在壓縮過程中有絲毫損失的場合中。但它的壓縮比通常只有幾倍,遠遠不能滿足數字視聽應用的要求。在實際的數字視聽設備中。差不多都采用壓縮比更高、但實際有損的熵壓縮技術。只要作為最終用戶的人覺察不出或能夠容忍這些失真,就允許對數字音像信號進一步壓縮以換取更高的編碼效率。熵壓縮主要有特征抽取和量化兩種方法,指紋的模式識別是前種方法應用的典型例子,而后種方法則是一種更通用的熵壓縮技術。
二、數據壓縮的分類及其壓縮算法
(一)數據壓縮技術的分類
數據壓縮的研究已有幾十年的歷史,其間,人們提出了各種各樣的壓縮算法。在分類上,也存在幾種不同的方法,按編碼失真程度或者說按壓縮過程的可逆性將數據壓縮分為兩種類型:無失真壓縮(LosslessCompression)與有失真壓縮(Lossy Compression):有人按編碼基建模的不同將數據壓縮分成模型基編碼和波形基編碼;又有人將它分為第一代壓縮編碼和第二代壓縮編碼;還可按壓縮技術所使用的方法進行分類可分為預測編(Predictive Coding)、變換編碼(Transform Coding)和統計編碼(Statistical Coding)幾大類。
(二)無失真壓縮和有失真壓縮算法
目前,較為認可的是第一種分類方法。無失真壓縮和有失真壓縮。無失真壓縮;也可稱之為冗余度壓縮(Redundanc Compression)即無損壓縮。原始數據可由壓縮數據完全恢復出來。這種壓縮方法的基本思想是除去或盡量除去數據中重復和冗余部分,而不丟失其中的任何信息,從而確保被壓縮了的數據還原后與壓縮前完全一致。這種壓縮方法主要應用于文本、程序文件等不允許出現任何數據失真的場臺。
1、基于字典編碼技術的LZW算法
如果看文章時碰到了“NBA”的字樣,去查查《英文縮略語詞典》就知道這是“美國國家籃球協會”的縮寫,三個單詞被壓縮成了三個字母,同樣地,“縮略語詞典”這一思想可以用來設計壓縮算法。假如把出現過多次的子串叫做高頻子串,并且把出現頻高的子申編成一張表,稱為高頻字典,每個子串都有一個作為序號,那么每當碰到一個高頻子串時,就用這個序號代替它。用一個字節代替一個子串當然,在壓縮數據中得要把這個去,以供還原算法查字典用。字典可以是靜態的,把原始數據掃描一遍就能得到也可以是動態的,就是先讓字典空著,一邊掃描,一邊加進新的高頻子串,字典滿了就取消一部分“老”子串這樣壓縮率稍有下降,但能節約一次掃描的時間,從而極大地提高了處理度。這種壓縮算法最早是由Lempel和Ziv兩位專家于年提出的,當時叫做算法,后來經過貝爾實驗室的改進,特別是welch在1984年的改進之后,成為現在的lzw算法。
2、基于哈夫曼編碼原理的壓縮算法
前面的LZW算法,是試圖找出原始數據中各種形式的重復,然后以一種有效的方式重新編碼存儲。它們都是在不改變原始數據的字符編碼方式的基礎上的算法,也就是說,壓縮前后都是用8個比特來表示一個字符。“ABCAABA”這個字申有7個字節,就是56個比特,要想壓縮它,LZW不大合適,因其中既沒有單個字節的多次重復,也沒有子串的多次重復。這種思想是由Huffaman博士1952在年提出來的,我們把用這種編碼原理的壓縮算法叫做哈夫曼壓縮。
上述例子的哈夫曼壓縮過程簡述如下:
第一步,統計原始數據中各個字符的出現次數A=4,B=2,c=1。
第二步,建立哈夫曼樹,每個非葉結點的左右子樹的權都盡可能地接近結果。
第三步,編碼。從樹根開始,向左轉記為0,向右記為1,得到,A=0,B=10,c=11。這樣編碼出來的比特流能被唯一地識別出來。
第四步,把哈夫曼樹存入結果數據。
第五步,重新編碼原始數據到結果數據。因為上面的例子中只出現了個字符,字符集很小,所以能用1-2比特來編碼,達到了很高的壓縮率。哈夫曼算法的實質是針對統計結果對字符本身重新編碼,而不是對重復字符或重復子串編碼。一邊壓縮數據,一邊動態地調整哈夫曼樹,提高了速度。改進的哈夫曼算法又被稱為自適應哈夫曼(Adaptive Huffman)或動態哈夫曼算法(Dynamic Huffman),是一種常用的算法。
3、靜態圖片有損壓縮算法YVEG/M—JPEG
JPEG壓縮算法的基本原理是把圖片分為許多單元,每個單元都是一個正方形的區域,然后進行離散余弦變換(DCT—Discrete Cosine Transform),得到圖形信號。因為人眼對圖形信號的高頻端不太敏感,所以去掉圖形信號中的一些高頻分量不會造成圖片觀察質量的明顯下降。這里說的高頻分量不是指彩色光譜中的藍紫色光,而是指圖形信號中表示圖像邊緣細節的部分。為了保證壓縮質量,通常采用的壓縮比為,24:1。
JPEG算法主要針對靜態圖片,但人們利用壓縮原理,把一系列靜態圖片壓縮存放起來,然后連續地解壓重放就得到了動態圖像。這種壓縮方法被稱為M—YeEG,即“活動的靜態圖像壓縮”。它的本質仍然是JPEG?,F在,M—JPEG基本上已被MPEG淘汰。一般JPEG壓縮的實現方法以純軟件的形式為多,M-JPEG則以硬件實現形式居多。
4、動態圖像有損壓縮算法MPEG
MPEG是由“動態圖像專家小組”制定的標準算法,其設計目標是在微機上得到相當于VHS錄像質量的音頻視頻效果。該算法包含三項技術動態圖像壓縮技術,聲音壓縮技術和圖像聲音同步技術,其中動態圖像壓縮是其關鍵內容。
和電影一樣,多媒體電影也是按照“幀”為單位組織的連續圖像和聲音信號。MPEG把幀按照如下三種情況分別處理:(1)當前幀:用來作為其他幀參考用的關鍵幀,一般使用12:1的高質量壓縮,每秒鐘只有兩個當前幀。(2)預測幀:是使用當前幀的信息,根據其中實體的運動趨勢向前預測得到的幀。(3)雙向幀:為了得到滿意的圖像效果,僅有當前幀和預測幀是不夠的,還需要在它們中間插入雙向幀以使效果更加平滑。雙向幀是利用前兩者的信息,進行向前和向后兩個方向的預測得到的。通過綜合使用以上幾種預測技術,MPEG算法的整體壓縮比可以達到100:1的水平。
三、數據壓縮技術的應用
數據壓縮技術,廣泛應用于工業、農業、軍事、建筑、機械電子、影視新聞、等各個領域,成為人類生活中不可缺少的重要組成部分。
現在幾乎每一個計算機用戶都在使用數據壓縮功能。拿最簡單的講,我們使用最廣泛的文字處理軟件如Word、WPS都提供了對保存文件的壓縮功能,以使編輯生成的文件容量更小。目前最常用的圖形(如JPEG)、音頻(如MP3)、視頻(如VCD/DVD)文件都使用了壓縮技術,以使在有限的空間中存放更多的文件。不過這些壓縮操作都是由相應的程序自動完成的,用戶感覺不到。另外,我們通過軟盤交換文件、通過因特網下載文件、通過郵件傳送文件、使用備份程序等都可能要用到和接觸到數據壓縮,它已經融入到電腦的方方面面。
在我們日常生活中,也經常遇到的數據壓縮技術,比如很多衛星電視就是通過數據壓縮技術來傳輸的(先將電視信號轉化為數字編碼,再進行數據壓縮,然后通過衛星傳送到各地的有線電視臺,有線電視臺再還原為電視信號傳送到我們千家萬戶)。另外,VCD、SVCD、DVD、IP電話、長途電話、傳送股市行情數據等都要用到數據壓縮技術。
四、總結
隨著人類進入信息時代,人類將更多的依靠電腦,從Interet中獲取信息。而大部分信息卻都具有數據的海量性。在這種情況下,信息的傳輸與存儲就成為首要問題。數據壓縮就成為解決這一瓶頸問題的重要方法
采用數據壓縮技術,對數據進行壓縮,是實現實時、快速、有效地處理、傳輸和存儲數據的首要問題和根本方法,壓縮的出發點是利用各種算法將數據冗余壓縮到最小,以保證盡可能少的有用信息,并且盡可能地減少失真,提高使用效率和質量;為了使壓縮后的數據能夠互換,必須規定通用的標準格式,因此國際上相關的組織和機構,制定了相應的國際上通用的數據壓縮標準。目前,雖然數據壓縮技術已很成熟,并得到了廣泛的應用,但是人們仍在繼續研究,以追求更好的壓縮效果使其更好的為人類服務。