專利名稱:具有特征標(biāo)志的編碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)據(jù)編碼方法,特別涉及到利用加入特征標(biāo)志的方法進行編碼的方法。
背景技術(shù):
隨著通信技術(shù)的高速發(fā)展,通信網(wǎng)的寬帶化和通信業(yè)務(wù)的多媒體化是未來網(wǎng)絡(luò)的發(fā)展 方向。高數(shù)據(jù)率是多媒體業(yè)務(wù)的主要特點之一,人們需要借助有高壓縮率的信源編碼方法 來降低數(shù)據(jù)率。算術(shù)碼作為一種在信源熵編碼部分常用的無損壓縮方法,被越來越多的最 新的圖像、視頻壓縮標(biāo)準(zhǔn)選為熵編碼工具圖像壓縮標(biāo)準(zhǔn)方面,二值靜止圖像壓縮標(biāo)準(zhǔn)JBIG
采用了差分脈沖編碼調(diào)制和算術(shù)碼結(jié)合的編碼方案,靜止圖像壓縮標(biāo)準(zhǔn)JPEG也采用了二進 制算術(shù)編碼作為可選擇編碼工具,最新的圖像壓縮標(biāo)準(zhǔn)JPEG2000采用了基于上下文的二進 制算術(shù)碼以對量化后的小波系數(shù)進行編碼。視頻壓縮標(biāo)準(zhǔn)方面,作為最新的視頻編碼標(biāo)準(zhǔn) 之一的H. 264/AVC,提供了基于上下文的自適應(yīng)二進制算術(shù)碼(CABAC)作為熵編碼部分的壓 縮工具。
算術(shù)碼的一些主要特點是
■ 具有很高的壓縮性能,在任意信源符號分布下都能漸進達到信源的熵率,能夠有 效地降低視頻和圖像這類多媒體業(yè)務(wù)的數(shù)據(jù)率。
■ 不需要事先構(gòu)造碼字表,可動態(tài)適應(yīng)信源統(tǒng)計特性。 但是算術(shù)碼也存在一些問題
■ 算術(shù)碼的高壓縮率導(dǎo)致了算術(shù)碼對信道的殘余誤碼更敏感,即使只是單個比特的 錯誤也會造成后續(xù)碼流解碼完全錯誤,造成數(shù)據(jù)的重建質(zhì)量嚴重下降。
■ 算術(shù)碼的構(gòu)造原理決定了信道誤碼將一直對解碼器透明,直至碼流的末尾才因其 他輔助信息而檢測出誤碼。
■ 算術(shù)碼碼流中,無線通信惡劣的信道環(huán)境中的噪聲、衰落和多用戶干擾是對算術(shù) 碼碼流的最大威脅?;谝陨峡紤],本發(fā)明針對無線傳輸環(huán)境,提出了一種新型數(shù)據(jù)編碼方法。該方法利 用加入特征標(biāo)志的方法,在編碼時加入特征標(biāo)志;該特征標(biāo)志在傳輸后的解碼側(cè),被用于 編碼塊的同步檢測和錯誤檢測,以及對檢出錯誤的糾錯處理。同已有的系統(tǒng)相比,本發(fā)明 可以有效地提高傳輸系統(tǒng)的對抗差錯能力,尤其在無線傳輸條件下,可以明顯改善傳輸圖 像、視頻以及多媒體等數(shù)據(jù)質(zhì)量,提供高質(zhì)量的多媒體服務(wù)。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種數(shù)據(jù)塊編碼方法,該方法在保持算術(shù)碼高編碼效率特性的 同時,具有潛在的檢錯和糾錯能力,進而可以實現(xiàn)很低誤編碼率的傳輸效果。
本發(fā)明的特征在于所述方法是在編碼端用一個電子集成芯片實現(xiàn)的,由信源編碼器和 信道編碼器串接而成的所述編碼端依次按以下步驟實現(xiàn)信源編碼和信道編碼的過程
步驟(1).把原始數(shù)據(jù)送入所述信源編碼器中的碼流分割電路,按設(shè)定長度的數(shù)據(jù)段 對原始數(shù)據(jù)進行分割,得到分割后的碼流;
步驟(2).把步驟(1)中得到的分割后的碼流送入特征標(biāo)志生成電路,生成特征標(biāo) 志,所述特征標(biāo)志是水印信息;
步驟(3).把步驟(2)得到的特征標(biāo)志送到所述信源編碼器中的特征標(biāo)志插入電路, 按設(shè)定的延時時間延遲后送入所述碼流分割電路,把特征標(biāo)志插入分段后的碼流的最左端, 形成具有特征標(biāo)志的分段碼流;
步驟(4).把步驟(3)得到的帶特征標(biāo)志的分段碼流送入一個算術(shù)編碼器,按以下 步驟進行算術(shù)編碼
步驟(4.1).估計輸入碼流的累計概率;
步驟(4.2).根據(jù)步驟(4.1)獲得的累計概率,把當(dāng)前編碼區(qū)間分割為兩個子區(qū)間,
并通過重歸一化后映射到標(biāo)準(zhǔn)編碼長度區(qū)間;
步驟(4.3).對步驟(4.2)得到的結(jié)果進行編碼,把經(jīng)過壓縮編碼的字節(jié)輸出;
其中,所述算術(shù)編碼器是一種采用自適應(yīng)二進制算術(shù)編碼器的MQ編碼器;
步驟(5).把步驟(4.3)得到的經(jīng)過壓縮編碼的字節(jié)送入所述信道編碼器進行信道
編碼,這里所述的信道編碼器是低密度奇偶校驗碼編碼器。
本發(fā)明所述的具有特征標(biāo)志的編碼方法具有的特征還在于,所述的特征標(biāo)志可以是時鐘同步標(biāo)志,或者是根據(jù)碼流的時域、頻域、空域以及變換域的特征而生成的特征標(biāo)志。
本發(fā)明針對無線傳輸中誤碼率高的信道特點,提出了一種高效的、基于算術(shù)碼的編碼 方法,以滿足高質(zhì)量的無線信息傳播應(yīng)用需求。所提出的具有特征標(biāo)志的編碼方法,不僅 具有算術(shù)碼編碼效率高、編碼復(fù)雜度低的優(yōu)點,同時通過引入特征標(biāo)志的方法,具備了在 解碼側(cè)檢錯和糾錯的能力,可以有效地降低傳輸中誤碼的影響,提高數(shù)據(jù)傳輸?shù)馁|(zhì)量。
圖l具有特征標(biāo)志的編碼方法流程框圖。
圖2將特征標(biāo)志插入到待編碼碼流示意圖■是插入的特征標(biāo)志。
圖3 MQ編碼器解碼算法流程圖。
圖4算術(shù)碼在解碼碼樹上的狀態(tài)轉(zhuǎn)移圖。
圖5堆棧算法的流程。
圖6 BSC信道差錯概率為10—5, JPEG2000圖像傳輸質(zhì)量曲線a.普通JPEG2000圖像 標(biāo)準(zhǔn)解碼情況;b.具有特征標(biāo)志的編碼圖像序列解碼情況。
具體實施例方式
為實現(xiàn)本發(fā)明的目的,本發(fā)明提出的具有特征標(biāo)志的編碼方法的工作包括以下幾個方
面
1)特征標(biāo)志的建立。在算術(shù)碼編碼的碼表中,包含有一類特殊的碼子,被稱為特征標(biāo) 志,該特征標(biāo)志被用于抗差錯編碼中的檢錯和糾錯處理。此處所指的特征標(biāo)志,指的是用 于標(biāo)志編碼對象的某種屬性、并可用于解碼時檢錯糾錯的信息標(biāo)志單元,其形式可以為時 鐘同步標(biāo)志、水印或者其他具有類似功能的單元。
■ 時鐘同步標(biāo)志。利用一個系統(tǒng)的全局時鐘,對輸入碼流進行時序標(biāo)記,可以用 其來處理重建信息的同步問題。
■ 水印。利用輸入碼流的某一特性(如變換域特性、壓縮域特性),提取出可以標(biāo) 該編碼對象的特征數(shù)據(jù),該數(shù)據(jù)由全部輸入碼流完整生成,并且具有唯一性,因此可以利 用其在解碼側(cè)進行檢錯和糾錯處理。
■ 其他處理對象的特征。可以是輸入碼流的時域、頻域、空域,或者變換域的相關(guān)特征。該特征應(yīng)該具有唯一性,并因此可以被用來在解碼側(cè)進行檢錯和糾錯處理。2)在編碼側(cè),主要步驟依次如下步驟(1)將碼流進行分段分割,將特征標(biāo)志插入 分段后的碼流中的固定位置,如最左側(cè);步驟(2)對輸入信源符號的累積概率進行估計; 步驟(3)根據(jù)獲得的累積概率,將當(dāng)前編碼區(qū)間分割為兩個子區(qū)間用于算術(shù)編碼;步驟(4) 將當(dāng)前編碼區(qū)間通過重歸一化映射到標(biāo)準(zhǔn)編碼長度區(qū)間;步驟(5)將獲取的壓縮編碼后的 字節(jié)輸出。本發(fā)明提出的具有特征標(biāo)志的編碼方法流程圖如附圖1所示,原始數(shù)據(jù)101經(jīng)過碼流 分割電路102被分成一系列標(biāo)準(zhǔn)長度的碼流段,特征生成電路103基于待處理碼流段生成 特征標(biāo)志,特征標(biāo)志插入電路104將生成的特征標(biāo)志插入經(jīng)過延遲電路的碼流段,將特征 標(biāo)志插入編碼數(shù)據(jù)段的示意圖如圖2所示。碼流被分割成固定長度的碼流數(shù)據(jù)段,特征標(biāo) 志被插入碼流間的固定位置。然后將插入特征標(biāo)志后生成的新的碼流送入算術(shù)碼編碼器105 進行算術(shù)編碼,緊接著信道編碼其106利用LDPC碼對碼流進行信道編碼,然后生成的編碼 后的碼流通過信道進行傳輸107。圖1中也給出了解碼端的參考流程,LDPC信道解碼器108 首先對接收到的碼流進行信道解碼,然后送入算術(shù)解碼器109進行算術(shù)解碼。解碼后的碼 流經(jīng)過碼流分割電路110分割成固定長度的碼流段。然后特征標(biāo)志提取電路111根據(jù)插入 特征標(biāo)志的位置和長度,對特征標(biāo)志進行提取,然后送入特征檢錯電路112進行檢錯,如 果發(fā)現(xiàn)碼流中存在誤碼,則序列糾錯電路113進行序列糾錯,并將最后糾錯后的重構(gòu)收據(jù) 114輸出。在解碼側(cè),特征檢錯電路112利用標(biāo)志特征的屬性來校驗編碼對象中是否存在錯誤-■ 對于時鐘同步標(biāo)志,用來校驗獲取的時鐘信息是否保持了時序上的連續(xù)性和一致 性,如果出現(xiàn)不一致,則說明碼流中錯誤存在;■ 對于水印信息,只需按照同樣的水印生成規(guī)則,利用解碼后的碼流重新生成新的 水印,然后比較新的水印和提取到的特征標(biāo)志是否一致,如果不一致,則說明碼流中存在 錯誤;■ 對于其他處理對象的特征,需要利用編碼時提取該特征標(biāo)志的同樣方法,對解碼 后的碼流提取相應(yīng)的特征,并將重建的特征標(biāo)志和提取的特征標(biāo)志進行比對,以校驗是否 存在誤碼,當(dāng)兩者不一致時,則說明碼流中有錯誤存在。在實施例1中,我們給出了一個利用水印作為特征標(biāo)志進行檢錯以及糾錯的應(yīng)用示例,在該實例中,我們利用序列解碼方法對檢測到的錯誤進行糾正。在實施例2中,我們給出 了一個利用時鐘同步標(biāo)志作為特征標(biāo)志的應(yīng)用實例,在該實施例中,我們對檢測到錯誤后 的碼流截斷拋棄,要求發(fā)送端對產(chǎn)生錯誤的碼流重新進行傳輸。 下面結(jié)合附圖,對本發(fā)明的具體實施方式
說明如下。本發(fā)明的實施例l采用水印為特征標(biāo)志,即對待處理數(shù)據(jù)進行離散余弦變換(DCT), 然后將變換域中幅值最大的系數(shù)(不包括直流分量)作為輸出特征標(biāo)志。在解碼側(cè),對解碼 后的數(shù)據(jù)同樣計算其水印信息,將計算出的水印信息同提取到的水印信息進行比對,如果 發(fā)現(xiàn)兩者不一致,即說明出現(xiàn)了解碼錯誤,需要進行糾錯處理。本實施例中采用了序列解 碼方法對誤碼進行糾正,下面將進行詳細說明。本實施例中采用了 JPEG2000所釆用的算術(shù)碼編碼器MQ編碼器,它是JPEG2000標(biāo)準(zhǔn) 所采用的一種改進的編碼器,采用了自適應(yīng)二進制算術(shù)編碼算法。在編碼側(cè),碼流被分割為長度為200字節(jié)的數(shù)據(jù)段,生成水印的長度為8個字節(jié),水 印信息被放置在碼流數(shù)據(jù)段的最左側(cè),插入特征標(biāo)志后,算術(shù)碼編碼主要分為以下4個步 驟1) 概率估計對輸入信源符號的積累概率進行自動估計;2) 區(qū)間分割根據(jù)獲得的累計概率,對當(dāng)前編碼區(qū)間進行分割,劃分為兩個子區(qū)間。3) 重歸一化將當(dāng)前編碼區(qū)間通過重歸一化映射到標(biāo)準(zhǔn)編碼長度區(qū)間。4) 壓縮字節(jié)輸出將獲取的壓縮編碼后的字節(jié)輸出。在解碼側(cè),經(jīng)過信道解碼的碼流被送入算術(shù)解碼器進行解碼。解碼過程類似于編碼過 程,MQ編碼器解碼算法流程圖如圖3所示。主要分為以下4個步驟1) 分割區(qū)間根據(jù)獲得的累計概率,對當(dāng)前編碼區(qū)間進行分割,劃分為兩個子區(qū)間。2) 根據(jù)壓縮序列選擇子區(qū)間。3) 輸出解碼信息符號根據(jù)對應(yīng)的子區(qū)間,輸入相應(yīng)的0或者1字符。4) 重歸一化將當(dāng)前編碼區(qū)間通過重歸一化映射到標(biāo)準(zhǔn)編碼長度區(qū)間。 當(dāng)所有的輸入符號都已經(jīng)解碼完畢,則解碼結(jié)束,否則,重新從步驟l開始。在該解碼過程中,圖1中l(wèi)ll特征標(biāo)志提取電路是根據(jù)插入特征標(biāo)志的位置和長度信息(此實施 例中為數(shù)據(jù)段的最左側(cè),以及8個字節(jié)),在解碼后的碼流中對原始水印信息進行提取,同 時利用解碼后的數(shù)據(jù)段,重新計算其新的水印信息。將計算得到的水印同提取的原始水印相比較,當(dāng)檢錯到有誤碼出現(xiàn)時,則需要進行進一步的糾錯處理,進入圖1中的113序列 糾錯處理。我們采用序列解碼方法對解碼結(jié)果進行糾錯。所謂序列解碼方法是利用信號檢測中的 最大后驗概率準(zhǔn)則(MAP)在碼樹中尋找一條最大度量路徑作為解碼結(jié)果,即解碼器按圖4 中的模型搜索并計算路徑度量,從而得到度量最大路徑。圖4中給出算術(shù)碼在解碼碼樹上 的狀態(tài)轉(zhuǎn)移圖。我們可以將算術(shù)碼解碼器視為一個有限狀態(tài)機(FSM),輸入驅(qū)動信號是部 分壓縮序列,狀態(tài)信息包括當(dāng)前區(qū)間情況和緩存的未解碼信息。圖4中,《表示從Z-l到r比特時刻讀入的第c/條路徑,各種解碼器因解碼機制不同,不同的解碼器對應(yīng)的路徑可能 有著不同的比特數(shù),對于MQ編碼器,每個分支對應(yīng)一個壓縮字節(jié),因此每個節(jié)點可能向下 一級節(jié)點擴展出28 =256條路徑,每一個可能的壓縮序列都能找到解碼樹中相應(yīng)的路徑。《表示第d條路徑對應(yīng)的信源符號序列,不同的路徑可能對應(yīng)不同長度的信源符號序列。《表示f比特第d個可能的解碼器狀態(tài)。0到T為解碼時間序列。由于實用的算術(shù)編碼器狀態(tài)數(shù)很多,而且每個狀態(tài)結(jié)點伸展出的分支數(shù)較多,我們選 擇堆棧算法作為搜索方法。堆棧算法的流程圖如圖5所示。堆棧算法中,501按照路徑度量 從大到小將路徑保存在堆棧中,每次502將最優(yōu)路徑進行伸展,然后503重新計算每個路 徑的度量,504再按照路徑度量從大到小保存在堆棧中,超出堆棧容量的路徑將被丟棄。505 判斷最優(yōu)路徑是否合法,如果最優(yōu)路徑伸展出的路徑都被檢出有錯,則丟棄最優(yōu)路徑而伸 展次優(yōu)路徑,重新回到501。堆桟算法在每個比特時刻需要記錄下此刻的路徑度量和對應(yīng)的 FSM狀態(tài)。在506判斷最優(yōu)路徑是否滿足解碼中止條件,如果為是,則507將保留的最優(yōu)路 徑作為糾錯后的結(jié)果輸出,否則重新回到501。這里需要指出的是,在本實例中,我們利用序列解碼方法對檢測到的錯誤進行糾正, 其中利用到堆棧算法作為搜索方法,但利用水印信息進行糾錯處理的算法并不唯一,本實 施例僅實現(xiàn)其中的一種算法,以顯示利用特征標(biāo)志進行檢錯和糾錯的可行性。為了證實本實施例中,利用水印作為特征標(biāo)志的抗差錯算術(shù)碼的性能,我們將經(jīng)過具 有特征標(biāo)志的算術(shù)碼改進的系統(tǒng)和傳統(tǒng)的JPEG 2000圖像傳輸系統(tǒng)進行比較。圖6給出了 兩者的圖像傳輸質(zhì)量曲線。其中BSC信道差錯概率為10—5 ,解碼算法中堆棧容量選擇為128。可以看出,利用本發(fā)明提出的利用特征標(biāo)志的編碼方法,可以有效地降低傳輸誤碼的影響。本發(fā)明的實施例2中,我們利用時鐘同步標(biāo)志作為特征標(biāo)志。在該實施例中,我們在 碼表中建立一個特殊的碼字,長度為16字節(jié),用來標(biāo)志時鐘同步信息。在編碼時,該碼字被放置在碼流段的最左端,碼流數(shù)據(jù)段的長度為500字節(jié);當(dāng)解碼后,在相應(yīng)碼流段的同樣位置,如果能夠檢測到該特殊碼字的存在,則說明時鐘同步性沒有被破壞,否則,說明 檢測到錯誤。我們以離當(dāng)前最近的正確解碼的時鐘同步標(biāo)志為界,之前的數(shù)據(jù)被保留,將之后的錯誤數(shù)據(jù)丟棄,并要求發(fā)送端對產(chǎn)生錯誤的碼流重新進行傳輸。仿真實驗在BSC信 道假設(shè)下進行,信道的誤碼率為10—5,結(jié)果顯示74.5%的錯誤可以被系統(tǒng)檢測到。雖然采用水印和時鐘同步標(biāo)志為特征標(biāo)志作為實例,解釋了本發(fā)明的實施例,但是本 發(fā)明并不限于該兩種形式的應(yīng)用。通過將特征標(biāo)志替換為其他處理對象在時域、頻域或空 域上的特征,并采取相應(yīng)的檢錯手段和糾錯方法,本發(fā)明可容易地在不同層次上實現(xiàn)算術(shù) 編碼。本領(lǐng)域普通技術(shù)人員可在本發(fā)明的精神及觀點內(nèi)對本發(fā)明進行多種不同的修改,但 凡依本發(fā)明權(quán)利要求書范圍所做的同等的變化及修飾,皆為本發(fā)明所保護的范圍。
權(quán)利要求
1、具有特征標(biāo)志的編碼方法,其特征在于,所述方法是在編碼端用一個電子集成芯片實現(xiàn)的在由信源編碼器和信道編碼器串接而成的所述編碼端依次按以下步驟實現(xiàn)信源編碼和信道編碼的過程步驟(1).把原始數(shù)據(jù)送入所述信源編碼器中的碼流分割電路,按設(shè)定長度的數(shù)據(jù)段對原始數(shù)據(jù)進行分割,得到分割后的碼流;步驟(2).把步驟(1)中得到的分割后的碼流送入特征標(biāo)志生成電路,生成特征標(biāo)志,所述特征標(biāo)志是水印信息;步驟(3).把步驟(2)得到的特征標(biāo)志送到所述信源編碼器中的特征標(biāo)志插入電路,按設(shè)定的延時時間延遲后送入所述碼流分割電路,把特征標(biāo)志插入分割后的碼流的最左端,形成具有特征標(biāo)志的分段碼流;步驟(4).把步驟(3)得到的帶特征標(biāo)志的分段碼流送入一個算術(shù)編碼器,按以下步驟進行算術(shù)編碼步驟(4.1).估計輸入碼流的累計概率;步驟(4.2).根據(jù)步驟(4.1)獲得的累計概率,把當(dāng)前編碼區(qū)間分割為兩個子區(qū)間,并通過重歸一化后映射到標(biāo)準(zhǔn)編碼長度區(qū)間;步驟(4.3).對步驟(4.2)得到的結(jié)果進行編碼,把經(jīng)過壓縮編碼的字節(jié)輸出;其中,所述算術(shù)編碼器是一種采用自適應(yīng)二進制算術(shù)編碼的MQ編碼器;步驟(5).把步驟(4.3)得到的經(jīng)過壓縮編碼的字節(jié)送入所述信道編碼器進行信道編碼,這里所述的信道編碼器是低密度奇偶校驗碼編碼器。
2、 根據(jù)權(quán)利要求l所述的具有特征標(biāo)志的編碼方法,其特征在于,所述的特征標(biāo)志是 時鐘同步標(biāo)志。
3、 根據(jù)權(quán)利要求1所述的具有特征標(biāo)志的編碼方法,其特征在于,所述的特征標(biāo)志是 根據(jù)碼流段的時域、頻域、空域以及變換域的特征而生成的。
全文摘要
具有特征標(biāo)志的編碼方法是一種數(shù)據(jù)塊編碼技術(shù)領(lǐng)域。其特征在于,編碼時,碼流被分割成固定長度的碼流段,特征標(biāo)志作為一類特殊的碼字,在生成后被放置在每個碼流段的固定位置,其位置和長短唯一設(shè)定。特征標(biāo)志放置的位置和長短被用來在解碼側(cè)進行特征標(biāo)志的提取。提取出的特征標(biāo)志在解碼側(cè)被用作關(guān)鍵信息以實現(xiàn)檢錯和糾錯的功能。本發(fā)明在保持算術(shù)碼高編碼效率特性的同時,具有很強的潛在檢錯和糾錯的能力,進而可以在無線傳輸條件下,實現(xiàn)很低誤編碼率的傳輸效果。
文檔編號H04N7/26GK101222637SQ20081005741
公開日2008年7月16日 申請日期2008年2月1日 優(yōu)先權(quán)日2008年2月1日
發(fā)明者裴玉奎, 謝旭東, 陸建華 申請人:清華大學(xué)