李樹鋒,宿寶心,余昕
(中國傳媒大學信息與通信工程學院,北京 100024)
隨著移動網絡的密集部署和一些新興多媒體業(yè)務的大力發(fā)展,視頻和圖像已逐漸成為文化消費的主流。由于視頻數(shù)據傳輸需要占用較大的信道容量[1],傳輸過程中容易產生信號干擾。數(shù)據服務激增與頻譜資源稀缺之間的矛盾給當前的網絡資源分配帶來了巨大的挑戰(zhàn)[2]。因此,壓縮編碼在應對大量數(shù)據傳輸?shù)膯栴}中尤為重要。壓縮編碼技術在通信數(shù)據傳輸、文件數(shù)據存儲、圖像信息隱藏和提取等方面已得到了廣泛應用[3]。壓縮過程可分為有損壓縮和無損壓縮。Huffman 算法是一種經典的無損壓縮算法,被認為是接近壓縮比上限的最佳編碼方法之一。文獻[4]提出了在已知部分信源概率時,獲得哈夫曼碼可達到的最小冗余的嚴格下界的方法。文獻[5]通過哈夫曼編碼設計可變長度前綴碼,以不同的概率激活發(fā)射天線。
非正交多址技術(Non-Orthogonal Multiple Access, NOMA)是未來移動通信系統(tǒng)中的一項關鍵技術,它通過信號的疊加傳輸和頻譜復用方式為不同信道條件下的用戶提供服務,提高了系統(tǒng)的接入能力和頻譜資源利用率,有效滿足網絡中數(shù)億設備的連接需求[6]。圖 樣 分 多 址[7](Pattern Division Multiple Access,PDMA)技術是一種具有發(fā)射端和接收端聯(lián)合優(yōu)化設計的新型NOMA。在發(fā)射端,多個用戶的信號通過PDMA 圖樣映射到同一時域、頻域和空間域資源,進行多路復用傳輸。在接收端,采用SIC 檢測算法或置信傳播(Belief propagation, BP)檢測算法進行多用戶檢測[8]。目前,NOMA 和視頻傳輸?shù)慕Y合受到了廣泛關注[9-11]。因此,本文將PDMA 技術的傳輸特性與視頻傳輸相結合,可以同時為多個用戶傳輸不同的數(shù)據,從而提高傳輸效率,節(jié)省傳輸時間。
由于視頻傳輸數(shù)據量很大,不僅在PDMA系統(tǒng)的傳輸過程中占用大量內存,而且增加了符號間干擾,直接影響接收端信號的檢測復雜性和恢復精度,因此需要對傳輸數(shù)據進行壓縮和編碼。與其他無損壓縮編碼相比,Huffman 編碼更適合于概率分布不均勻的碼源。因此,本文主要研究了基于多元Huffman 編碼(multivariate Huffman, mHuffman)的PDMA 視頻傳輸,它可以降低編碼長度,同時降低傳輸效率。
本文的主要貢獻總結如下:
1)本文設計了一種基于PDMA 的視頻壓縮編碼(VCC-PDMA)傳輸系統(tǒng)模型,對視頻幀的灰度值進行壓縮和編碼,以減少傳輸?shù)臄?shù)據量,從而提高頻譜資源的利用率,節(jié)省傳輸時間,提高系統(tǒng)的整體性能。
2)本文提出了一種結合PDMA 傳輸特性的mHuffman 編碼。根據PDMA 的調制順序設置m 元Huffman 編碼,并且編碼碼字相應地擴展成多個獨立符號以對應于PDMA傳輸。
本文的其余部分組織如下。第二節(jié)介紹了VCC-PDMA 系統(tǒng)模型。第三節(jié)介紹了mHuffman 壓縮編碼算法。第四節(jié)通過仿真,詳細討論了該設計方案的性能。最后,本文在第五節(jié)中總結了全文。
PDMA 上行鏈路傳輸框架如圖1 所示。PDMA根據圖樣將傳輸?shù)臄?shù)據映射到一組資源上,以實現(xiàn)不同的傳輸分集順序。PDMA 圖樣定義了從傳輸數(shù)據到資源組的映射。資源組可以由時域、頻域、空域資源或這些資源的任意組合組成。多個用戶的數(shù)據可以通過不同的PDMA圖樣復用到同一資源組,實現(xiàn)非正交傳輸。通過分配具有不同分集順序的PDMA 圖樣,可以實現(xiàn)用戶之間不同的傳輸分集順序[12]。
圖1 PDMA上行傳輸框架
PDMA 技術的基本思想是基于發(fā)射端和接收端的聯(lián)合設計。在發(fā)射端,PDMA 編碼器根據圖樣矩陣將多用戶信號疊加映射到相應的資源塊(Resource block,RB),并生成PDMA調制向量。
對應的圖樣矩陣可以表示為:
圖2 中展示了基于PDMA 的視頻壓縮編碼系統(tǒng)模型。在多個信道下給多個用戶傳輸不同視頻信息時,先讀取視頻幀數(shù)量為L,然后將每一幀轉化成二維圖像。令skl表示第k個信道傳輸視頻的第l個幀的二維圖像信號。再對skl進行灰度處理得到灰度信息ekl,再對其進行壓縮編碼。
圖2 基于PDMA的視頻壓縮編碼系統(tǒng)模型
K個用戶復用N個RB 的PDMA 圖樣矩陣用假設PDMA 傳輸系統(tǒng)中有K 個用戶,用戶數(shù)據通過不同的特征圖樣fk映射到N 個RB 上。傳輸?shù)趌個幀時,用戶k 的PDMA 調制向量vkl為
其中,fk是維度為N× 1 的二進制向量。xkl為第k個信道傳輸視頻的第l個幀經過VCC后長度為d的傳輸信號,
HCH=[h1,h2,...,hK]為K個用戶與基站之間的瑞利信道響應矩陣。所以公式(5)可具體表示為:
Huffman編碼是一種常見的二進制無損壓縮編碼方式。Huffman的編碼過程大致可以分為兩步。首先對灰度圖像數(shù)據進行掃描,計算出不同像素出現(xiàn)的概率。其次構造Huffman 樹。根據符號出現(xiàn)的概率分配不同的碼字,出現(xiàn)概率更大的符號將獲得更短比特的碼字,以此提高數(shù)據壓縮率和傳輸效率。同時將所有碼字與像素符號一一對應組成Huffman 碼表,在接收端通過碼字與像素[13]的對應關系實現(xiàn)源圖像數(shù)據的還原。算法過程描述如下:
Algorithm1:Huffman壓縮編碼Step1:掃描原圖像,將每個像素符號作為一個節(jié)點,統(tǒng)計每種字符出現(xiàn)的概率Step2:合并兩個概率最低的節(jié)點作為一個新節(jié)點Step3:節(jié)點的左分支標記為代碼“0”,右分支標記為代碼“1”Step4:計算Step2 中合并后兩個節(jié)點的概率之和Step5:執(zhí)行Step2 ~Step4 Step6:在完成Huffman樹的構造后,讀取每個符號對應的碼字,生成Huffman 碼表,并計算平均碼長、壓縮率等所需數(shù)據
在實際的編碼過程中,由于在不同的圖像中像素符號出現(xiàn)的概率分布是不同的,并且只有當信息源各符號出現(xiàn)的概率很不平均的時候,Huffman 編碼的效果才明顯。在與PDMA結合傳輸過程中,需要將編碼序列的每個碼字按順序展開成一個單個碼元組成的長序列進行傳輸,數(shù)據量依舊很大,不僅耗費時間也不利于接收端的多用戶檢測。其次由于Huffman 是二進制編碼,需要根據PDMA調制階數(shù)對傳輸數(shù)據進行進制轉換,過程繁瑣且不易操作。
因此為了提升壓縮率,降低總碼元數(shù)量,并且簡化傳輸過程,本文設計了基于PDMA傳輸特性的多元Huffman 編碼,根據PDMA 的調制階設置多元Huffman 編碼元數(shù)m,不僅可以節(jié)省掉進制轉換的步驟還可以進一步縮短碼長,節(jié)省傳輸時間的同時也有利于接收端的多用戶檢測,利于傳輸。
在進行mHuffman編碼時,統(tǒng)計中出現(xiàn)的t個字符及其出現(xiàn)的概率分別為,其中,
將信源符號按照出現(xiàn)的概率升序排序,合并m 個概率最低的節(jié)點作為一個新節(jié)點μ1,和概率為p1。節(jié)點的分支分別標記為用“0”,“1”,...,“m-1”。用μ1和p1替代上述m個符號重新進行排序。合并w次后的信源符號的個數(shù)為
重復上述過程,直到σ=1,并獲得每個字符對應的碼字。最后,編碼序列的每個碼字按順序展開并排列成由單個符號組成的長序列以供傳輸。平均代碼長度公式如下:
其中?i是對應于Huffman 代碼表中第i個字符的編碼長度。
壓縮比由下式給出:
其中,?ori是依次轉換為單個符號的原始二進制碼字的長度,?cc是依次轉換為單個符號的mHuffman代碼的碼字長度。
mHuffman-PDMA算法過程描述如下:
Algorithm2:mHuffman壓縮編碼Step1:掃描原圖像,將每個像素符號作為一個葉子節(jié)點,統(tǒng)計每種字符出現(xiàn)的概率Step2:設置所需元數(shù)m,計算所需信源符號,在概率p后補零并排序Step3:用字符“0”,“1”,...,“m-1”分別代表概率最小的m 個信源符號,并將其合并為一個新的信源符號μ1,概率和為p1 Step4:在樹中添加一個μ1和p1的節(jié)點Step5:重復step3~4,直至所有信源符號參與Step6:完成Huffman樹的構造,讀取每個符號對應的碼字,生成Huffman 表, 并計算平均碼長、壓縮率等所需數(shù)據Step7:將編碼后的序列的每個碼字按順序展開,排列成一個單個碼元組成的長序列
例如,表1 中有6個不同的符號。根據每個符號的概率,得到了對應的Huffman編碼序列和4Huffman編碼序列,并構建Huffman樹,如圖3和圖4所示。
圖3 由表1中的數(shù)據生成的Huffman樹
圖4 由表1中的數(shù)據生成的4Huffman樹
表1 編碼序列
在mHuffman PDMA 系統(tǒng)模型中,當不同的視頻傳輸給K個用戶時,首先將多個視頻幀轉換為二維圖像,然后將每個圖像信號skl轉換為灰度值以獲得ekl,然后壓縮編碼以獲得e'kl。
為了便于與PDMA的組合傳輸,需要將壓縮碼字進一步擴展成多個單獨的符號akl序列。akl的長度是dkl。例如,在第l幀的傳輸中,由于不同數(shù)據編碼后的符號數(shù)量不一定相同,因此有必要通過零填充獲得相同長度的傳輸信號。
其中dl表示第l幀信號的長度。零填充后的傳輸信號由以下公式給出:
mHuffman PDMA 系統(tǒng)模型中傳輸?shù)牡趌個視頻幀的信號xl公式如下:
仿真中涉及的參數(shù)值如表2所示。
表2 仿真參數(shù)
圖樣矩陣調制方式調制階數(shù)迭代次數(shù)1 1 0 1 0 1 BPSK/QPSK/8PSK 2/4/8 10■■■■■■
為了驗證本文提出的mHuffman視頻壓縮算法的有效性,本文截選了分辨率不同的三段視頻進行傳輸,幀速率為30 幀/s。在3個視頻中各隨機選取一個幀,分別采用Huffman,4Huffman 與8Huffman 壓縮算法,比較了平均碼長、壓縮率和時間比,
從表3中的數(shù)據可以看出,當發(fā)射源信號相同時,mHuffman的編碼效率遠遠高于傳統(tǒng)Huffman編碼。在不同的視頻分辨率條件下,編碼效率沒有明顯變化。
表3 Huffman與多元Huffman視頻幀壓縮數(shù)據比較
在圖5 中,本文比較了行程編碼[14](Run Length Encoding, RLE)、Huffman、4Huffman 和8Huffman 編碼結合PDMA 傳輸?shù)囊曨l數(shù)據壓縮算法的性能。從圖5 的數(shù)據可以看出,當使用8Huffman 編碼時,誤碼率(Bit Error Rate,BER)更小。在發(fā)送相同的信號時,由于mHuffman壓縮后的符號數(shù)較少,碼間干擾減少,有利于接收端的多用戶檢測,因此性能更好。
圖5 不同壓縮編碼算法的BER性能
在圖6中,本文比較了Huffman、4Huffman和8Huffman壓縮算法的平均峰值信噪比(Peak Signal to Noise Ratio,PSNR)性能。可以看出,在相同的信噪比條件下,隨著m的增加,峰值信噪比增加。因此,在系統(tǒng)模型中,結合使用mHuffman編碼可以減少圖像失真,提高系統(tǒng)的傳輸質量。
圖6 不同壓縮編碼算法的PSNR性能
圖7展示了在8Huffma PDMA視頻壓縮傳輸系統(tǒng)模型中,3個用戶傳輸?shù)囊曨l幀在發(fā)射端和接收端的灰度圖像??梢钥闯?,傳輸前后圖像的灰度差異很小,能夠滿足傳輸?shù)男枰?/p>
圖7 8Huffman PDMA發(fā)射端和接收端的灰度圖像
本文將視頻傳輸與PDMA技術相結合,結合PDMA的傳輸特性,提出了一種mHuffman編碼,在提高資源利用率的同時降低了頻譜資源的消耗,提高了傳輸效率。首先,本文比較了Huffman和mHuffman對不同視頻幀編碼的數(shù)據,mHuffman的平均碼長和壓縮率明顯優(yōu)于Huffman。同時,本文計算了傳輸相同視頻數(shù)據時mHuffman-PDMA和Huffman-PDMA之間的延遲。m-Huffman編碼可以顯著縮短傳輸時間。其次,對基于PDMA的視頻壓縮編碼系統(tǒng)模型在不同壓縮編碼算法下的傳輸性能進行了仿真。仿真結果表明,mHuffman-PDMA的誤碼率最小。最后,本文比較了發(fā)送端和接收端mHuffman-PDMA傳輸?shù)囊曨l幀的灰度圖像,可以看到灰度圖像沒有明顯的差異。