Compression Techniques

Compression Compression Compression

簡介

隨著多媒體視頻圖像文檔映象等技術的出現,數據壓縮成了網路管理員的一個重要課題。數據壓縮基本上是擠壓數據使得它占用更少的磁碟存儲空間和更短的傳輸時間。壓縮的依據是數字數據中包含大量的重複,它將這些重複信息用占用空間較少的符號或代碼來代替。基本的壓縮技術有:
空格壓縮(Null Compression) 將一串空格用一個壓縮碼代替,壓縮碼後面的數值代表空格的個數。
游長壓縮(Run-Length Compression)它是空格壓縮技術的擴充,壓縮任何4個或更多的重複字元的串。該字元串被一個壓縮碼、一個重複字元和一個代表重複字元個數的值所取代。
關鍵字編碼(Key-word encoding)創建一張由表示普通字元集的值所組成的表。頻繁出現的單詞如for、the或字元對如sh、th,被表示為一些標記(token),用來保存或傳送這些字元。
哈夫曼統計方法(Huffman statistical method)這種壓縮技術假定數據中的字元有一個變化分布,換句話說,有些字元的出現次數比其餘的多。字元出現越頻繁,用於編碼的位數就越少。這種編碼方案保存在一張表中,在數據傳輸時,它能被傳送到接收方數據機使其知道如何解碼字元。
因為壓縮算法是基於軟體的,所以實時環境中,存在著額外開銷,會引起不少問題。而檔案備份、歸檔過程中的壓縮不會有什麼問題。使用高性能的系統有助於消除大部分的額外開銷和性能問題。另外,壓縮消除了檔案的可移植性,除非解壓縮軟體也與檔案一起傳送。
注意,有些檔案已經被壓縮,進一步的外部壓縮不會有任何好處,一些圖形檔案格式,如標籤映象檔案格式(TIFF),就已經包含了壓縮。

Storage System Compression存儲系統壓縮

在討論檔案存儲的壓縮算法之前,應該明確檔案壓縮不同於磁碟編碼。磁碟編碼通常由磁碟驅動器把更多的數字1和0寫到磁碟的物理表面上。檔案壓縮把檔案中的字元和位串擠壓到更小的尺寸。它在檔案信息傳送到硬碟驅動器的寫頭之前由軟體完成。現代的使用編碼的硬碟驅動器只是從CPU接收1和o的位流,並且把它們壓擠到比沒有使用編碼小得多的空間中。磁碟編碼簡單討論到這兒,下面將著重討論檔案壓縮。
磁碟記錄系統如硬碟驅動器通過改變磁碟表面的磁場來記錄信息。兩種可能狀態間的磁場變化稱為磁通翻轉(flux transition)。簡單地說,磁通翻轉代表數字1,磁通不翻轉代表數字0。編碼提供了一種方法使每個磁通翻轉代表更多數字信息。改進調頻制MFM(Modified frequency modulation)將一個磁通翻轉表示多個1,將磁通不翻轉表示多個o。編碼技術包括下述幾種。
游長受限碼(Run Length limited(RLU))把位組合格式表示為代碼,可以用較少的磁通翻轉來存儲。與MFM相比,存儲容量提高了5o%。
改進的游長受限碼(Advanced run length limited(ARLL) 通過把位組合格式轉換成能用四倍密度磁通翻轉來存儲的代碼,從而把MFM的記錄密度翻了一倍。
因為磁碟編碼是由硬碟驅動器在硬體級自動處理的,這裡沒有必要進一步討論。當你購買一個硬碟驅動器,它使用一種編碼方案而獲得一定的容量,但是只要驅動器的容量滿足你的要求,購買後,就不必關心它的編碼方案了。
檔案壓縮技術
檔案壓縮的實現有幾種方式,提供的各種工具使你能每次壓縮一個檔案,或壓縮一組檔案。一組檔案能壓縮成單個檔案,更易於傳送到其它用戶,解壓縮工具把檔案解開。一個流行的已分享檔案壓縮工具稱為PKZIP(威斯康辛州Glendale的PKWARE公司),用於CompuServe和其它公告牌軟體上壓縮檔案,可以從大多數公告牌服務上卸下PKZIP。
大多數作業系統,包括DOS、NetWare、Windows NT等現在都包含壓縮軟體。在NetWare 4.x中,能自動壓縮指定檔案或整卷上的或指定目錄中的所有檔案。指定檔案屬性能被設定以標記你希望系統在它們不用時自動壓縮的檔案。啟動自動壓縮系統時要小心,一些應用程式由於檔案處在壓縮狀態而不能正常工作。

檔案壓縮里兩個重要概念是無失真(lossless)和有失真(lossy):

無失真壓縮(Lossless Compression)無失真壓縮系統假定從已壓縮檔案中返回所有信息,檔案中每一位都是重要的,所以壓縮算法精確地壓縮和解壓檔案。
有失真壓縮(Lossy Compression)有失真系統假定在壓縮解壓過程中允許一定的信息損失。許多高清晰度的圖形檔案包含的信息如果在壓縮階段丟失了也不會引起變化。例如,如果你以高解析度掃描彩色圖畫,但是你的顯示器不能顯示這種清晰度,你就可以使用有失真壓縮方案,因為不會遺漏細節。聲音和圖象檔案也適於用有失真壓縮,因為信息損失引起的變化很小,解壓播放時可能覺察不出來。
雖然無失真壓縮中沒有信息損失,但壓縮比通常只有2∶1,有失真壓縮根據被壓縮信息的類型提供的壓縮比從100∶1至200∶1,聲音和圖象信息能很好地壓縮,因為它通常包含大量冗餘信息。
Grraphics Video and Voice Compression圖形、視頻和聲音壓縮
隨著多媒體和電視會議的出現,高效的壓縮系統變得重要起來,根據視頻圖象解析度,一幅典型的彩色圖形圖象需占用2MB或更多的磁碟空間,1秒鐘未壓縮的全運動視頻圖象所需磁碟空間約10MB。網路管理員關心多媒體檔案的大小是因為將它們拷貝到伺服器或其他用戶時會占用網路頻寬。
幸運的是,大多數多媒體圖象能使用前面討論過的有失真壓縮技術。在視頻圖象壓縮中,每幀必須是通過刪除冗餘信息進行精簡的象素陣列,視頻圖象壓縮通常使用特殊的積體電路來處理,而不是使用軟體,因為軟體操作太慢。標準視頻圖象一般約為30幀/秒,但有些研究發現對許多觀眾來說16幀/秒也可接受,所以幀刪除方法提供了另一種壓縮方式。

處理多媒體信息的幾個壓縮標準描述如下:

聯合圖象專家組(JPEG)壓縮(Joint Photographic Experts Group(JPEG)compression)JPEG使用普通算法壓縮靜態圖象。三維彩色和坐標圖象信息首先被轉換成更適於壓縮的格式。顏色信息也被編碼,如果系統不能使用的話,則刪掉一部分。壓縮值是用戶可選的,取決於能容忍的圖象降級的程度。一旦這些初始設定被確定,就可使用無失真或有失真壓縮技術來壓縮檔案。JPEG不是為處理視頻圖象而專門設計的,但通過壓縮幀並減小幀的尺寸與頻率,它在一定程度上做到了這一點。
片段壓縮(Fractal Compression)在Iterated Systems公司開發的片段壓縮技術中,隨著壓縮啟動程式(一種專用板)使用一種以各種方式操作片段的數學變換來尋找圖象中的匹配模式時,圖象被分成越來越小的片段。重複的模式被保存起來以重建原始圖,不匹配的數據被認為是不重要的並被刪掉。用戶可選擇處理運行的時間量,它決定了對數據的壓縮量。
音頻-視頻交替(AVI)(Audio-Video interleave(AVI))AVI由Microsoft開發,作為一種在CD-ROM盤上存儲活動視頻圖象的方法。讀取信息時使用軟體解壓。這種技術結合了無失真技術和一種快速但並非有效的特殊壓縮算法。AVI圖象減少了每秒的幀數,從而產生令人不滿意的圖象。然而,對某些套用來說,這種技術是可以接受的。
數字視頻互動(DVI)(Digital Video Interactive(DVI))DVI是由Intel開發的活動視頻圖象壓縮方案,被認為是事實上的標準。與AVI相似,它最初用於CDROM套用,並成功地把視頻圖象以這種格式帶到了台式系統。
Indeo視頻圖象(indeo video)Indeo視頻是一種數字視頻圖象記錄格式和壓縮軟體技術,它能夠將視頻圖象檔案壓縮到未壓縮前的1/5至1/1o。例如,Indeo能將一個5oMB的檔案減小到9MB。Indeo類似的產品有Microsoft Video for Windows、OS/2作業系統和Apple Quicktime for Macintosh and Windows。播放根據提供的硬體類型而最佳化,所以較快系統上的幀播放率會有所提高。視頻圖象的記錄使用Intel i750視頻圖象處理器來最佳化,因為視頻圖象在接收時就被壓縮,而不是先存儲再壓縮。它使用了多種壓縮技術,包括有失真和無失真技術。
運動圖象專家組(MPEG)(Motion Picture Experts Group(MPEG))MPEG正在開發若干視頻壓縮標準,該標準定義國際通用格式、數據速率和壓縮技術。MPEG-1規範定義了音頻和視頻以及如何以1.5Mbps至2Mbps的速率從盤上訪問全運動視頻圖象。MPEG-2致力於提供質量超過NTSC、PAI和SECAM廣播系統的全運動視頻圖象。
其它壓縮方法正處於研究階段,現有的方法也正被重新修訂,CCITT委員會正在從事可視電話和綜合業務數字網(ISDN)上的電視會議以及其它一些服務的標準的制訂。

Compression for Datoo Communication數據通信壓縮

壓縮可以提高廣域鏈路中的吞吐量。在你需要決定鏈路是使用由數據機連線的較便宜的電話線還是使用較昂貴的專用連線時,若你要選擇較便宜的方案,一個擁有數據壓縮功能的數據機會提供額外的吞吐量。
如果需要全時(full-time)連線,數據壓縮也會幫助你充分利用這些連線。然而,也會有限制,如果傳輸速率超過了64Kbps,在廣域網的連線點上就不能自動地完成數據壓縮,因為壓縮跟不上線路的速度。解決的辦法是在傳送之前使用PKZIP之類的壓縮工具把檔案手工壓縮到較小的長度,檔案壓縮後被傳送到接收方,由接收方將其解壓縮。
數據機製造商使用了許多前面提及的數據壓縮技術,但隨著CCITT V.42bis數據壓縮標準的採納和在大多數數據機中的具體實現,Lempel-Ziv技術逐漸流行起來。Motorola Codex已經實現了數據速率超過100kbps的測試,雖然目前的限度是28.8Kbps.
在Lempel-Ziv數據壓縮算法中,所有單字元串占據了整個表。當新字元串出現時,就建立一種類似於圖C-25所示的樹型結構,該圖顯示了樹的“T”分支。注意沿著樹的任何一個分支,可演繹出一個三字元的詞。樹的每個分支由一個碼字來標識,在所有的傳輸中傳送的都是碼字。如果出現新字元串,就在樹的適當分支上增加節點,並生成一個新的碼字來代表它。
還有其它壓縮方法如Microcom聯網協定(MNP)類型5和類型7系列。但是近幾年V.42標準是大多數數據機廠商使用的壓縮方法。

相關條目:

Modems數據機;Videoconferencing and Desktop Video電視會議與台式(桌面)視頻系統

相關詞條

相關搜尋

熱門詞條

聯絡我們