專利名稱:一種采用幀間編碼的字符型通信報文壓縮方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種基于字符型通信報文的有效壓縮方法,根據(jù)字符型通信報文具
有一個有限字符集合的特點,引入了視頻壓縮領(lǐng)域幀間、幀內(nèi)壓縮處理的思想,并結(jié)合
Huffman編碼等相關(guān)技術(shù),取得了良好的壓縮效果。本發(fā)明適用于任何基于有限字符集合通信報文壓縮的諸如共享、存儲、傳輸?shù)葓?br>
合,尤其是對報文傳輸實時性要求比較高的情況下,經(jīng)實際驗證均可良好地滿足其應(yīng)用需求。
背景技術(shù):
術(shù)語解釋
術(shù)語描述
BCD碼亦稱二進制碼十進制數(shù)或二-十進制代碼,用4位二進制數(shù)來表示I位十
進制數(shù)中O 9這十個數(shù)碼,是-·種二進制的數(shù)字編碼形式。
通信報文通信報文指通信、交換、存儲中的數(shù)據(jù)單元,即數(shù)據(jù)塊,通信報文包含 了將要發(fā)送、存儲等的完整數(shù)據(jù)信息。
幀內(nèi)壓縮也稱為空間壓縮(SpatialCompression),其定義最初來源于圖像壓縮, 當(dāng)壓縮一幀圖像時,僅考慮本幀的數(shù)據(jù)而不考慮相鄰幀之間的冗余信 Θ
幀間壓縮通過比較時間軸上不同幀之間的數(shù)據(jù)進行壓縮,也稱為時間壓縮 (Temporal Compression),其定義最初來源于圖像壓縮。其原理是基 于視頻或動畫的連續(xù)前后兩幀之間具冇很大的相關(guān)性,或者說前后兩幀 信息變化很小的特點,也即連續(xù)的視頻其相鄰幀之間具有冗余信息,根 據(jù)這一特性,壓縮相鄰幀之間的冗余量從而提高壓.縮量,減小壓縮比。
I幀屬于幀內(nèi)壓.縮幀,又稱為內(nèi)部畫面(IntraPicture),在壓縮過程中進行
全幀壓縮編碼,并作為P幀壓縮的參考幀。
P幀屬于幀間壓縮幀,在壓縮過程中對相對于I幀的變化部分進行編碼,壓
縮比較高。
殘差所謂殘差是指觀測值與預(yù)測值(擬合值)之間的差,即是實際觀測值與
權(quán)利要求
1.一種采用幀間編碼的字符型通信報文壓縮方法,其特征在于,包括如下步驟 假設(shè)該字符型報文的字符集合為A,其字符個數(shù)為n,字符概率為Pi,則有 Bi G A步驟I,讀入一幀報文 假設(shè)所述一幀報文為Message,字符序列為B,序列元素個數(shù)為m,即b」G A,其中 步驟2,判斷是否為I幀報文 如果為初次編碼,則所述一幀報文Message必為I幀,在編碼過程中,則根據(jù)I、P幀分類方法,并結(jié)合具體應(yīng)用環(huán)境判決所述一幀報文是否屬于I幀;若是,則跳轉(zhuǎn)到步驟4,否則執(zhí)行下一步驟3 ; 步驟3,求殘差 所述一巾貞報文為P巾貞,若I、P巾貞分類方法選擇I巾貞殘差,則將P巾貞與I巾貞做差,求殘差Residual,即Residual = P-I 且求Residual的具體過程或采用局部求殘差法,即兩幀報文只有局部相關(guān),其局部報文表達相同信息,只是由于報文格式不同,分別位于一幀報文的相同或不同位置,從局部角度對兩幀報文求殘差;或采用全局求殘差法,即兩幀報文全局均相關(guān),從全局角度對兩幀報文求殘差;若I、P巾貞分類方法選擇迭代殘差,則將P巾貞與前一巾貞做差,求殘差Residual,即Residual = Pn-Mlri,其中Mlri是指Pn的前一幀報文且其同樣或采用局部求殘差法,或采用全局求殘差法; 步驟4, Huffman編碼 對I幀報文或者殘差Residual進行動態(tài)Huffman編碼,并輸出碼流; 使用動態(tài)Huffman編碼的詳細過程如下 步驟41,初始化編碼樹 動態(tài)Huffman編碼只需要對數(shù)據(jù)流進行單遍掃描,不需要預(yù)先掃描報文以獲取各符號的出現(xiàn)概率,為了對所有符號一致對待,編碼樹的初始狀態(tài)只包含一個葉節(jié)點,包含符號NYT,權(quán)重值為O ; 步驟42,讀入字符 依次讀入所需編碼報文Message’中各字符; 步驟43,判斷是否為新字符 若是第一次遇到的字符,則執(zhí)行下一步驟44,否則跳轉(zhuǎn)到步驟45 ; 步驟44,更新NYT并編碼輸出 用包含新符號和新NYT的子樹替換原NYT,并輸出有NYT引導(dǎo)的編碼; 步驟45,對符號編碼并輸出; 步驟46,更新編碼樹; 步驟47,判斷是否有下一個字符 若是則跳轉(zhuǎn)到步驟42,繼續(xù)編碼下一字符,否則執(zhí)行下一步驟48 ;步驟48,結(jié)束 結(jié)束此次編碼; 步驟5,判斷是否有下一幀報文 若是則跳轉(zhuǎn)到步驟1,否則執(zhí)行下一步驟6 ; 步驟6,結(jié)束本次編碼過程。
2.如權(quán)利要求I所述的采用幀間編碼的字符型通信報文壓縮方法,其特征在于解碼是編碼的逆過程。
3.如權(quán)利要求I所述的采用幀間編碼的字符型通信報文壓縮方法,其特征在于所述I幀為幀內(nèi)編碼幀,本發(fā)明特指進行幀內(nèi)編碼的報文;所述P幀為幀間編碼幀,指進行幀間編碼的報文。
4.如權(quán)利要求I所述的采用幀間編碼的字符型通信報文壓縮方法,其特征在于將一I中貞報文和位于下一 I巾貞報文之前的P巾貞報文的集合稱為一個報文簇。
5.如權(quán)利要求I所述的采用幀間編碼的字符型通信報文壓縮方法,其特征在于所述Residual,即殘差,具體指相鄰或相近報文之間的差值。
6.如權(quán)利要求I所述的采用幀間編碼的字符型通信報文壓縮方法,其特征在于1幀、P幀分類方法包括I幀殘差和迭代殘差,其中 1)I巾貞殘差 對于一個報文簇I1P1P2-Pn,其中P1PfPn的編碼均以I1為參照物,編碼過程中殘差是指P幀報文相對于I幀報文的變化部分,即Residual = Pi-I1,其中 I ^ i ^ n 依據(jù)這種編碼思路對報文進行I、P幀的分類,具體包括以下兩種方法,且其適合用于報文傳輸、分發(fā)、共享場合; a)固定間隔選取I幀法 采用固定間隔選取I幀,在I幀之間均采用P幀,其格式為I1P1Pf PnI2,其中n取常量,適用于報文信息量變化較為平緩的場合; b)自適應(yīng)選取I幀法 根據(jù)報文變化情況自適應(yīng)的選取I幀,在I幀之間均采用P幀,其格式為I1P1PfPnI2,當(dāng)程序執(zhí)行過程中Pn的下一幀I2與Pn之間殘差較大時,強制將Pn下一幀設(shè)定為I幀12,與方式a)相比,n為變量,適用于報文信息量變化較為頻繁或者劇烈的場合; 2)迭代殘差 對于一個報文簇I1P1Pf Pn,其中P幀的編碼均以其前一幀報文為參照物,編碼過程中殘差是指P幀報文相對于其前一條報文的變化部分,即Residual = P1-I1或 Residual = Pi-PiH,其中 2 < i < n 依據(jù)這種編碼思路對報文進行I、P幀的分類,同樣分為固定間隔選取I幀和自適應(yīng)選取I幀兩種方法,且其適合用于報文存儲場合; a)固定間隔選取I幀法 采用固定間隔選取I幀,在I幀之間均采用P幀,其格式為I1P1Pf PnI2,其中n取常量,適用于報文信息量變化較為平緩的場合;此外,若n取極限值,即只是在編碼初選取一個I幀,其余均作為P幀,且編碼時均以前一幀報文為參照物,這種方法對于報文存儲場合較為適用; b)自適應(yīng)選取I幀法 根據(jù)報文變化情況自適應(yīng)的選取I幀,在I幀之間均采用P幀,其格式為I1P1PfPnI2,當(dāng)程序執(zhí)行過程中Pn的下一幀I2與Pn之間殘差較大時,強制將Pn下一幀設(shè)定為I幀12,與方式a)相 比,n為變量,適用于報文信息量變化較為頻繁或者劇烈的場合。
全文摘要
本發(fā)明公開了一種采用幀間編碼的字符型通信報文壓縮方法,包括讀入一幀報文,判斷是否為I幀報文,若是,則直接進行Huffman編碼,若否,則求殘差并對殘差進行Huffman編碼,然后判斷是否有下一幀報文等步驟。本發(fā)明將視頻壓縮編碼中幀內(nèi)、幀間編碼的思想引入到字符型報文壓縮中,通過去相鄰或相近報文間的冗余信息大幅提高了報文的壓縮比;將動態(tài)Huffman編碼具體應(yīng)用到I幀報文和P幀殘差部分的無損壓縮上面,充分發(fā)揮了動態(tài)Huffman編碼的優(yōu)點,在顯著減少報文數(shù)據(jù)量,降低報文長度的同時,帶來延時減小、存儲容量降低、對傳輸要求較低等好處,使報文得以快速、有效、無誤地傳輸、共享和分發(fā),可大幅節(jié)約存儲、通信等資源。
文檔編號H04L1/00GK102811114SQ20121024208
公開日2012年12月5日 申請日期2012年7月12日 優(yōu)先權(quán)日2012年7月12日
發(fā)明者常傳文, 李瑋, 茅文深, 林明, 徐偉, 王遠斌, 嵇亮亮, 葉玲, 樓曉祥 申請人:中國電子科技集團公司第二十八研究所