摘 要:為了有效提取H.223協議標志符,在深入分析H.223多路復用協議的基礎上,詳細剖析了影響標志符提取的主要因素,提出了一種基于BP神經網絡的標志符提取算法,該算法可根據當前通信環境實時調整判決門限。仿真結果表明,相對于靜態門限的提取算法,該算法可有效提高標志符提取的正確率,從而改善了在高誤碼率條件下的視頻播放質量。
關鍵詞:視頻通話; BP神經網絡; H.223; 標志符
中圖分類號:TN929.5; TP301.6文獻標志碼:A
文章編號:1001-3695(2010)06-2112-04
doi:10.3969/j.issn.1001-3695.2010.06.0034
Dynamic identify algorithm for H.223 protocol identifier based on neural network
KONG Fanzeng, JI Zhongmei, WANG Jianhui, SONG Wenzheng
(College of Information Engineering, PLA Information Engineering University, Zhengzhou 450002, China)
Abstract:For the validity of the H.223 protocol identifiers, the paper deeply analysed the H.223 multiplexing protocol and the main influence factors of extraction, and proposed an extraction algorithm based on BP neural network, which could adjust the judge threshold based on the current communication circumstance in real time. Simulations show that the proposed algorithm can effectively enhance the accuracy rate compared to the ones based on the static threshold extraction, so that improves the video quality of 3G mobile equipment under the circumstances with high bit error rate.
Key words:video call; BP neural network; H.223; identifier
隨著3G牌照在中國的發放,3G時代已大步向我們走來,而作為3G主要業務的視頻通話業務也越來越受到人們的關注[1,2]。3G視頻通話業務的數據傳輸協議采用的是3GPP制定的更適用于低比特率移動網環境的3G-324M協議組,該協議組是由ITUT的H.324M標準派生而來[3~5]。
H.223[6]是多路復用數據打包以及解包協議(multiplexing/demultiplexing),適用于低比特率的多媒體通信。它可以在發送端將多種比特流(如數據流、控制信息、視頻流、音頻流)以某種復用格式混合成單一的比特流進行傳輸,即完成數據的復用(multiplexing)過程;同時在接收端將含有多種信息的單一比特流分解成若干種獨立的比特流,即完成數據的解復用(demultiplexing)過程[7]。由于無線信道的誤碼率很高,可能造成復用幀標志符發生誤碼,使接收端錯誤提取標志符,從而影響數據復用幀的提取,最終影響解復用過程及整個解碼過程。本文根據H.223多路復用協議,主要研究在高誤碼率環境下接收端解復用過程中高效的標志位提取算法。
1 H.223多路復用協議
1.1 協議框架
在H.223協議中定義了多路復用數據幀用于將高層的數據、控制、音/視頻邏輯信道上的比特流混合成單一比特流,在一個傳輸信道上進行傳輸,每個比特流與一個單向邏輯信道相對應,該邏輯信道的標號(LCN)在[0,65535]的范圍內惟一定義。其中,LCN=0的邏輯信道是H.245[8]。控制信道、其他信道的打開或關閉須通過H.245進行控制。H.223協議棧結構如圖1所示。
如圖1所示,H.223主要包括兩層:
a)適配層(adaptation layer,AL)。其主要功能是根據應用層的數據類型進行錯誤保護和編序列號等操作,將上層應用層傳給適配層的ALSDU打包轉換成MUXSDU傳輸給復用層,同時將復用層傳給適配層的MUXPDU轉換成ALSDU。可見對于接收端,在復用層解出的MUXPDU是適配層工作的基礎。
b)復用層(multiplexing layer, ML)。其主要功能是對比特流的復用與解復用。在發送端將從AL層接收到的MUXSDU分在一個或多個變長的MUXPDU中傳輸給物理層,在接收端將從物理層接收到的MUXPDU解復用成不同類型的比特流。為了加強H.223在高誤碼率環境下的容錯能力,3GPP使用了四種復用層數據報模式(mobile level),即mobile level 0、mobile level 1、mobile level 2和mobile level 3。
1.2 接收端MUXPDU標志符的提取
根據對H.223復用協議的分析可以發現,在接收端從物理層傳給MUX層的比特流中準確提取MUXPDU是整個解復用的基礎。MUXPDU之間是以特定的標志符進行分隔的,因此對標志符的準確提取直接影響到MUXPDU的提取。
H.223復用協議的MUX層存在四種模式,而且每種模式中的MUXPDU的標志符又不相同,所以必須針對不同的標志符采取相應的方法以保證其準確地提取。
在第一種模式(mobile level 0)中,MUXPDU的標志符為0x7E。文獻[9,10]中對這種模式下的標志符透明碼的快速算法以及相關協議的軟件實現進行了討論。這種模式只適合傳輸定長數據幀的網絡,而在傳輸變長數據幀時,誤碼會使其變得很脆弱。因為在這種模式下數據流是一個位流,標志符0x7E可以出現在任何位置,在高誤碼率的移動網絡中標志符發生誤碼的概率很高,會使整個數據流失去同步,所以3G視頻通話業務不使用這種模式,本文就不再討論了。第四種模式(mobile level 3)在3G視頻通話業務中是一個可選項,而且使用得很少,本文也不作討論。
在第二種(mobile level 1)和第三種模式(mobile level 2)中,其數據幀的分隔技術基本上是一致的,都是以偽隨機序列PN=0xE14D為MUXPDU幀標志符,只是第三種模式中還利用這個偽隨機序列的補碼作為一種標志符來傳遞特殊信息。在第二、三種模式下數據流的基本操作單位是字節,所以這兩種標志符在數據流中出現的位置是以字節對齊,便于軟件實現。在H.223復用協議中規定在第二、三種模式下利用相關器來提取數據流中的標志符,提取方法如圖2所示。
圖2中相關器輸出的相關系數為輸入數據與標志符相同位的個數。當輸入數據與標志符的相關系數大于或等于某一門限值的時候,判決器認為接收端檢測到一個標志符。盡管在高誤碼率的移動網中,第二、三種模式的標志符會因為誤碼而發生改變,但由于使用了這種具有一定彈性的標志符判決方法,只要出錯的比特位不多,就可以準確地提取標志位。同樣這種判決方法也存在缺點,即由于誤碼而產生標志符的漏報或虛警。H.223復用協議中并沒有對該門限值給出一個合適的建議值。在一定的誤碼率下,這個門限值過高虛警概率就會升高,而門限值過低漏報的概率也會升高。標志符的虛警和漏報都會影響到MUXPDU幀的提取。另外,由于信道是時變的,如果判決門限值不能根據當時的信道狀況進行實時的調整,同樣會影響判決結果。目前3G視頻通話業務在進行數據傳輸時主要是使用第三種模式傳輸數據。因此根據3G視頻通話業務當時所處的環境,針對第三種模式實時地給出一個可靠的判決門限值,對在接收端準確提取MUXPDU幀標志符、進行可靠的解復用和提高通話質量具有十分重要的意義。神經網絡作為一種新的方法體系,具有分布并行處理、非線性映射、自適應學習和魯棒容錯等特性,這使得它在模式識別、信號處理、優化組合、智能控制等方面都有廣泛的應用。由此本文提出了一種在第三種模式下基于BP網絡的H.223標志符提取算法。
2 基于BP網絡的H.223標志符提取算法
2.1 影響MUXPDU幀標志符判決門限值L的主要因素
3G視頻通話時信道的誤碼率及MUXPDU幀標志符在接收端已收到的數據中所占比例是影響確定MUXPDU幀標志符判決門限值L的兩個主要因素。
1)誤碼率Pe(t) 在無線移動網中進行視頻通話,數據的傳輸必然受到噪聲的干擾,使傳輸的數據發生變化,從而產生誤碼。無線移動網絡的信道本身就是一個高誤碼率的信道,最高可達10-3,且它的變化過程是一個慢變化的過程。誤碼率通常要遠低于10-3無線通信才能正常進行。誤碼率達到10-3,對無線視頻通話來說是相當惡劣的信道環境。在信道其他參數一定的情況下,信道的誤碼率越高,在該信道中傳輸的數據發生誤碼的概率就越高,數據發生變化的比特位也就越多;同理,信道的誤碼率越低,在該信道中傳輸的數據發生誤碼的概率就越低,數據發生變化的比特位也就越少。這里所說的信道中傳輸的數據當然也包括MUXPDU幀標志符。所以MUXPDU幀標志符判決門限值L也應該隨Pe(t)升高而減小,隨Pe(t)降低而增大。可見,信道的誤碼率會對MUXPDU幀標志符判決門限值L產生很大影響。
2)標志符占位比Pc(t) 在接收端所有已提取出的MUXPDU幀標志符在已收到的所有數據中所占比例稱為標志符占位比,用Pc(t)表示。設n(t)為t時刻在接收端已提取出的MUXPDU幀標志符的總數,以字節為單位;m(t)為t時刻接收端已接收的數據總數,以字節為單位。Pc(t)表示為Pc(t)=n(t)/m(t)。
從以下兩種極限情況分析Pc(t)對MUXPDU幀標志符判決門限的影響:a)假設在信道參數一定的情況下,在相當長的時間內MUXPDU幀標志符只出現一次,為準確提取出MUXPDU幀標志符,其判決門限肯定會相對較高;b)假設在信道參數一定的情況下,在相當長的時間內信道中傳輸的數據全是MUXPDU幀標志符,那么用于判斷MUXPDU幀標志符門限值肯定相對較低。可見,Pc(t)也會對MUXPDU幀標志符判決門限值L產生很大影響。
根據視頻通話的協議,可以將整個業務過程大致分為初始化階段、H.245信令交互階段、業務數據傳輸階段。因為視頻通話業務大多是在第三種模式下進行的,在這里主要分析在第三種模式下視頻通話業務各個階段MUXPDU幀標志符占位比。圖3、4為3G視頻通話在第三種模式下主叫過程和被叫過程中MUXPDU幀標志符的及其補碼的占位比Pc(t)隨時間變化的統計圖。從圖3中可發現標志符的占位比在通信的各個階段都有一定的規律,如表1所示。
表1 標志符占位比變化情況
階段標志符占位比(Pc)變化情況
初始化階段這個階段很短,傳輸模式傳輸數據序列,Pc=0.4
H.245信令交互階段這個階段主要傳輸H.245信令,Pc有所下降,Pc穩定在0.34~0.36
業務數據傳輸階段這個階段主要傳輸業務數據,Pc繼續下降,最終穩定在0.04~0.07
通過以上的分析,可以認為在一段時間內,MUXPDU幀標志符與其補碼的占位比以及無線信道誤碼率為一個定值,從而減小算法復雜度便于實現。因為MUXPDU幀標志符與其補碼都可以用本文中算法進行提取,所以下面主要針對MUXPDU幀標志符進行研究。
2.2 算法設計
通過以上分析,根據當前條件,即信道誤碼率Pe(t)、標志符占位比Pc(t),確定當前的最佳MUXPDU幀標志符判決門限值L*,使輸入數據與標準標志符進行相關運算得到相關系數,再利用L*判斷輸入數據是否為標志符。同時根據2.1節中的結論,在本算法中可以設在一小段時間內Pe(t)、Pc(t)均為一個定值,從而減小計算量便于算法實現。圖5為算法流程圖。這種標志符提取算法可以根據當前條件動態地調整判決門限值,從而可以更準確地提取出標志符,避免因為固定門限值產生過多的標志符漏報和虛警。
信道誤碼率Pe(t)、標志符占位比Pc(t)與最佳MUXPDU標志符判決門限值L*之間不是簡單的線性關系,用傳統的方法很難準確確定其之間的關系。而神經網絡是通過對一些簡單的線性或非線性的傳遞函數的復合來完成映射,只要經過少數幾次復合就可以得到極其復雜的函數,其在預測、自動控制[11]、模式識別[12,13]、圖像處理等領域得到廣泛的應用。這就為確定Pe(t)、Pc(t)與L*之間的關系、找出當前信道條件下的最佳門限提供了一個解決問題的方向。其中,BP神經網絡是典型的基于誤差反向傳播算法(BP算法)的多層前向神經網絡。BP網絡神經元的傳遞函數通常是非線性的Sigmoid型可微函數,利用樣本的輸入矢量和對應的目標矢量來訓練網絡,實現兩者之間任意非線性的映射,使得在給定新的輸入矢量時可以給出合理的結果。由此可見,BP網絡十分適合于確定Pe(t)、Pc(t)與L*之間的關系。
2.2.1 基于梯度下降的標準BP算法
基于BP網絡的優良特性,提出基于BP神經網絡的MUXPDU幀標志符提取算法。首先要完成對BP網絡的構建。
a)網絡層數。理論上三層前饋的網絡就可以逼近任意函數,因此選擇只含有一個隱含層的BP網絡。
b)隱層神經元個數[14]。本文根據n1=n+m+a確定最佳的隱單元個數。其中,n是訓練樣本的個數,m是輸入神經元的個數,a是0~10的常數。
c)輸入層神經元個數。基于BP神經網絡的MUXPDU幀標志符提取算法,輸入層神經元個數為2,分別輸入Pe(t)和Pc(t)。
d)輸出層神經元個數。輸出層神經元只有一個,即當前最佳MUXPDU標志符判決門限值L*。
e)傳遞函數的選擇。隱含層和輸出層都選擇連續可微的雙曲正切函數作為傳遞函數,表達式為f(x)=tanh(x)=1-exp(-x)1+exp(-x)=21+exp(-x)-1。
基于以上的設計,構建的BP網絡如圖6所示。
2.2.2 BP網絡訓練樣本的獲取
基于上述分析,本文采取以下步驟來獲取BP網絡的訓練樣本:
a)生成數據源,使其MUXPDU幀標志符占位比為Pc。仿真實際通信中發送端發送的數據。
b)對a)生成的數據源,以誤碼率Pe進行加擾生成新的數據。仿真實際通信中數據通過無線信道傳輸后接收端接收到的有誤碼的數據。
c)將b)中生成的數據,利用相關器以判決門限L進行判決,提取MUXPDU幀標志符,統計當前門限L下的虛警和漏報次數。L的取值范圍為9~16。之所以L在此范圍內,就是為了防止當MUXPDU幀標志符與其補碼同時存在時,由于L而導致無法準確區分上述兩者的情況出現。根據L的取值范圍重復步驟c)八次。
d)根據c)中不同門限L下的虛警和漏報次數,確定數據源在一定的Pc和Pe下最佳的判決門限L*。
e)改變Pe若干次,重復步驟b)~d)。
f)改變Pc若干次,重復步驟a)~e)。
根據以上步驟可以得到若干個在不同Pc(t)和Pe(t)下最佳的判決門限值L*,以這些數據作為樣本來對BP網絡進行訓練。
3 仿真結果及分析
首先根據上文中對Pe(t)和Pc(t)的分析,為其選擇若干個值。為了充分檢驗該算法的魯棒性,可以將Pe的取值范圍定為(0.0001,0.05)。Pe達到0.001時,無線信道已經相當惡劣了,這里將Pe的最大值定為0.05是為了檢驗該算法的可靠性。根據上文對3G視頻通話過程中不同階段Pc的分析,其取值范圍定為(0.04,0.4)。本文中仿真所用Pc和Pe的取值如表2所示,并按照上文中的方法獲取的BP網絡訓練樣本如圖7所示。從圖7中可以看出,在Pc和Pe選定的范圍內,其最佳判決門限L*在12~16,且隨Pe的增大而減小,也隨Pc的增大而減小。用這些樣本去訓練BP網絡,從而確定Pc、Pe與L*之間的關系。經過50次訓練之后,根據輸入矢量該BP網絡的輸出如圖8所示,其與目標矢量的誤差如圖9所示。
表2 Pc/Pe取值表
變量取值
Pc0.04,0.045,0.05,0.055,0.06,0.065,0.07,0.08,0.09,0.1,0.2,0.32,0.34,0.36,0.4
Pe0.0001,0.0002,0.0003,0.0004,0.0005,0.0006,0.0007,0.0008,0.0009,0.001,0.002,0.003,0.004,0.005,0.006,0.007,0.008,0.009,0.01,0.02,0.03,0.04,0.05
下面用3G視頻通話過程中一方發送的數據作為數據源,以誤碼率Pe進行加擾(在通信過程中Pe是慢變化的),用本文提出的在第三種模式下基于BP網絡的H.223標志符提取算法與判決門限固定的H.223標志符提取算法分別對加擾后的數據源進行標志符提取,并比較其判決正確率。圖10是在平均誤碼率為0.001時比較算法性能,可以看出,采用本文的算法和判決門限L固定為15、16時,標志符判決正確率均在99.3%以上且相差不大。但前者在整個通信過程中判決正確率均高于后者。之所以會出現這種情況,是因為在平均誤碼率為0.001時根據當前的BP網絡最佳判決門限L*只能選擇15或16。圖11是在平均誤碼率為0.02時比較算法性能,可以看出,采用本文中的算法和判決門限L固定為15時,標志符判決正確率基本都在98.5%以上,且隨著時間的推移相差越來越小,但前者始終高于后者。出現這種情況主要是因為在平均誤碼率為0.02時根據當前BP網絡給出的最佳判決門限值L*主要是14、15這兩個值。而隨著時間的推移,標志符占位比逐漸變小并趨于穩定,所以此時的最佳判決門限L*應趨于15。因此本文中提出的算法和判決門限L固定為15的算法的性能隨時間的推移趨于一致。
通過仿真可以發現,本文提出的基于BP網絡的H.223標志符提取算法整體性能上優于判決門限值固定的H.223標志符提取算法,尤其是在誤碼率大于0.001的無線信道下。在H.223協議中并沒有給出一個借鑒的判決門限的經驗值。該算法可根據3G視頻通話過程中的實際情況實時調整最佳判決門限值,判決正確率較高,同時在客觀條件改變(如Pc、Pe發生變化)的情況下能較好地抑制標志符錯誤提取概率的升高。
4 結束語
為提高3G視頻通話業務在惡劣信道環境下的接收質量,本文利用神經網絡能逼近任意非線性映射的能力,提出一種基于BP網絡的H.223標志符動態提取算法。該算法可以很好地根據客觀條件的改變實時地調整最佳判決門限,有效抑制客觀條件的改變對標志符提取的影響。仿真結果表明,該算法能根據客觀條件給出準確的最佳判決門限值,標志符提取準確率較高,為接收端對業務數據進行后續處理提供了有效的保障,算法性能優于判決門限值固定的H.223標志符提取算法。
參考文獻:
[1]黃健,劉明富.第三代移動通信系統(3G)的發展特點及其關鍵技術[J].科技資訊,2009(16):14.
[2]曹劍州.3G技術及其在通信中的應用[J].中國高新技術企業,2009(16):117-118.
[3]ITUT recommendation H.324, terminal for low bitrate multimedia communication[S]. 2005.
[4]FARBERN, GIROD B, VILLASENOR J. Extensions of ITUT recommendation H.324 for errorresilient video transmission[J]. IEEE Communications Magazine,1998,36(6):120-128.
[5]吳海英.淺談H.324M/3G-324M多媒體視頻協議的互操作性[J].通信世界,2004(36):23-24.
[6]ITUT recommendation H.223, multiplexing protocol for low bitrate multimedia communication[S]. 2001.
[7]SAMARAKOON M I, HONARY B, BRUNT S M. Data multiplexing strategies for mobile applications[C]//Proc of the 1st International Conference on 3G Mobile Communtication Technologies. 2000:421-425.
[8]ITUT recommendation H.245, control protocol for multimedia communication[S]. 2006.
[9]魯宏偉,周敬利,余勝生. H.223協議實時處理中透明碼生成的快速算法及其實現[J].小型微型計算機系統, 1998,19(10):32-36.
[10]邱林海,余勝生,周敬利.可視電話復用協議H.223軟件設計及其實現[J].計算機工程, 1999,25(4):23-24.
[11]段向軍.基于神經網絡的預測控制方法研究[D].大慶:大慶石油學院,2005.
[12]湯茂斌,謝渝平,李就好.基于神經網絡算法的字符識別方法研究[J].微電子學與計算機,2009,26(8):91-93.
[13]孫亞.基于粒子群BP神經網絡人臉識別算法[J].計算機仿真,2008,25(8):201-204.
[14]嚴鴻,管燕萍.BP神經網絡隱含層單元數的確定方法及實例[J].控制工程, 2009(S2):100-102.
[15]高成偉.移動多媒體技術——標準、理論與實踐[M].北京:清華大學出版社,2006:227-258.