袁 濤,樊 豐
(成都電子科技大學 電子工程學院,四川 成都 611731)
隨著無線設備得到越來越廣泛使用,無線視頻通信的需求也日益強烈。然而,無線終端的多樣性對網絡傳輸的穩定性、視頻編碼速率、視頻信息質量都提出了不同的要求;無線網絡信道固有的特性,如易受干擾、帶寬多變、多徑效應等,給視頻傳輸帶來巨大挑戰,視頻無線通信需要很好的錯誤保護。很多時候,基于視頻內容重要性的不同,不等差錯保護(Unequal Error Protection,UEP)方案用來優化資源的使用,要使這種方案有效發揮作用,必須定義一個可靠的數據重要性,這種數據重要性一般是指編碼過程產生的數據優先級。
視頻編碼傳輸技術在不斷發展,這些問題將會得到解決,視頻分層編碼是一種有效的方法。H.264具有較高的編碼性能[1-2],而在此基礎上發展起來的H.264/SVC分層編碼算法已趨近完善[3]。隨著通信技術的不斷發展,特別是第三代移動通信網絡的普及,視頻分層編碼已經進入實際應用,H.264/SVC可以稱為第一種進入大規模應用的視頻分層編碼標準?,F在H.264/SVC提供時間、空間和質量可分層,這些分層機制使得時間分辨力、空間分辨力和圖像質量在不同帶寬需求和不同種類終端之間能很好地權衡。此外,這些分層機制還非常適合在UEP中應用[4],對編碼之后不同層的碼流設定不同的保護優先級,可以很容易實現UEP。
當人眼面對一幅畫面時,并不是對整幅畫面的關注度一樣,特別是在視頻序列中,其注意力會集中在一部分畫面區域,這部分區域就是視覺感興趣區域(Region of Interest,RoI)[5],把圖像序列中的 RoI提取出來,單獨編碼,減小量化參數,那么質量就有所較高,客觀上,RoI區域的PSNR會有所提高;主觀上,圖像整體視覺效果會有所改善。
筆者提出一種在無線網絡中對已編碼視頻流進行傳輸以及傳輸時的碼率控制優化算法,并通過仿真實驗進行論證。
作為H.264編碼標準的可分級擴展,H.264/SVC可提供時域可分級、空域可分級和質量可分級。時域可分級一般采用分級B幀結構編碼。編碼時,在一個圖像組(GoP)中先對關鍵幀I幀和P幀進行編碼作為基本時間層,接著其余各幀都是B幀,根據GoP的大小,分級編號進行,編碼以后的碼流中可以根據用戶要求,提取出某一幀率的碼流進行解碼??沼蚩煞旨壴诰幋a時將圖像進行下采樣,先對低分辨力的編碼作為基本層,再利用內容的相似性對增強層編碼,不同終端的顯示分辨力不同,可以相應地選擇不同的空間分層,基本層分辨力最低,加上增強層后分辨力增大。筆者所用的測試序列為foreman_cif.yuv,編碼工具為JSVM 9.18,編碼時,為了提高效率,進行了一定的優化[6],編碼后的碼流結構如表1所示,其中空間域分為2個等級,可以在CIF和QCIF兩個不同的分辨力尺寸中進行選擇。時間域有4個等級,幀率從3.75~30 Hz,傳輸優先級別分為7個等級。空間和時間分層具體情況如表1所示。

表1 空間和時間分層
表1中的優先序列號是使用JSVM編碼之后的優先級排序號,優先級隨編號增大而減小,0為最高優先級。
H.264/SVC標準中的質量增強層編碼是對序列中整幅畫面進行編碼,這樣編碼簡單,但是會帶來兩個問題:1)沒有碼率控制,編碼之后的碼率不可預知;2)當網絡可用帶寬變小時,丟掉整個質量增強層會使視頻質量降低很多。如果在增強層編碼時將其中的RoI區域提取出來進行單獨編碼,或者將編碼后的增強層的碼流分為RoI和非RoI,那么在網絡傳輸中將會有更多選擇,在帶寬不足的情況下,可以先選擇丟掉非RoI碼流,這樣視頻的視覺質量也不會降低很多?,F今RoI區域分割技術研究比較多,也比較成熟,解決了傳輸過程中丟失背景信息不能正確解碼RoI的問題[7-8],本文所用的碼流是把預編碼的碼流進行轉碼,提取出RoI區域后,非RoI的QP與原編碼時的QP0相同,而RoI的QP為QP0減去6,同時對每一層碼流重新設定優先級編號,轉碼后的碼流結構如表2所示。

表2 轉碼后的碼流結構
RTP協議是IP網絡中針對實時業務的一種傳輸協議[9],一般構架在UDP協議之上。另外,它也是一個數據封裝協議,實時業務數據封裝于RTP包的數據域中。RTP提供實時數據端到端的網絡傳輸服務,但它不為實時業務保留資源,也不保證服務質量。RTCP的主要功能是提供關于服務質量(Quality of Service,QoS)的信息反饋,網絡終端系統可根據這些反饋信息來適應不同的網絡狀況。實時傳輸協議RTP和傳輸控制協議RTCP一起為網絡提供流量控制和擁塞控制服務。
為了適應無線網絡中不同終端和多變帶寬信道,設計的算法通過兩方面的控制來優化視頻質量和充分利用帶寬。服務器端通過RTCP協議獲得終端信息和信道狀態:1)終端信息包括終端的顯示分辨力和處理能力(能處理的最大幀率);2)信道狀態主要是丟包率,通過丟包率可以估計出相應的有效帶寬。估計出最大可用帶寬之后,再提取合適的碼流進行發送。
估計有效帶寬的算法如下:
1)計算網絡丟包率 Ploss(i)

式中:Nexpect是期望的數據包的個數,由RTP中的序列號可得;Nloss是丟失包的個數;Nreceived是收到的數據包的個數。
2)估計最大可用帶寬

式中:β是權重系數,典型值為2~5。K是循環次數,Kup是步長。在試驗中,接收端檢測網絡擁塞,把丟包率通過RTCP傳送給發送端,發送端計算出可用帶寬。
為了充分利用帶寬,選擇提取合適的碼流進行發送,應該滿足

式中:Rt為t時刻的可用帶寬,Rx為提取出的碼流比特率。算法由以下偽代碼實現:

代碼中k為優先級編號。
筆者設計的是一個無線網絡環境,通信系統結構如圖1所示。每個終端直接與服務器相連,使用一個單獨的傳輸地址、一個IP和一對端口號,RTP/UDP使用x號端口,RTCP使用x+1號端口;建立鏈接之后,客戶終端通過RTCP發送請求,將終端的信息傳到服務器端,服務器端響應請求;通過RTCP獲得信息后,計算可用帶寬,式(2)中 β 值取 3,Kup值取 1,K 取 3;可用帶寬估計出之后,提取碼流并調整發送速率,再通過RTP進行發送;接收端接收到碼流后進行解碼播放。

圖1 視頻傳輸系統結構
本文通過使用兩種不同的算法在NS2[10]仿真平臺上做實驗,并對結果進行比較:一種使用表1所示的預編碼碼流和3GPP Release7 TR 26.937[11]中提出的傳輸控制調整方案,另一種使用經轉碼實現的RoI增強碼流(表2)和本文第2節中描述的傳輸控制算法??扇我馓崛∫粠瑘D像作比較,圖2為提取出的第142幀。

圖2 不同編碼及發送方式的效果比較
通過圖2中的對比可以看出,比起采用SVC碼流,采用RoI碼流采用使得圖像中人的臉部區域更清晰,主觀質量有所提高。通過比較圖3和圖4可以看出,在無線網絡這種惡劣的環境下,使用筆者設計的算法能及時調整發送速率,選取盡量多的碼流進行發送,很好地提高了QoS性能。
筆者提出的基于丟包率的碼流控制算法使得視頻流在無線網絡中傳輸時能及時調整發送速率,很好地適應了無線網絡的帶寬易變的特性。RoI碼流結構使得視頻的主觀質量得到很好的改善,但是同時編碼復雜度提高了一些,在多個RoI的情況下效果不太好,需要進一步改進。

圖3 采用SVC碼流和3GPP TS 26.937

圖4 采用RoI碼流和本文所提碼率控制算法
[1]WIEGAND T,SULLIVAN G J.Overview of the h.264/avc video coding standard[J].IEEE Trans.Circuits and Systems for Video Technology,2003,13(7):560-576.
[2]畢厚杰.新一代視頻壓縮編碼標準——H.264/AVC[M].北京:人民郵電出版社,2005.
[3]SCHWARZ H,MARPE D,WIEGAND T.Overview of the scalable video coding extension of the H.264/AVC standard[J].IEEE Trans.Circuits and Systems for Video Technology,2007,17(9):1103.
[4]SCHIERL T,HELLGE C,MIRTA S,et al.Using H.264/AVC-based scalable video coding (SVC)for real time streaming in wireless IP networks[C]//IEEE International Symposium on Circuits and Systems 2007.[S.l.]:IEEE Press,2007:3455-3458.
[5]WANG Zhou,BOVIK A C,LU Ligang.Wavelet-based foveated image quality Measurement of region of interest image coding[C]//Proc.IEEE 2001 Int.Conf.[S.l.]:IEEE Press,2001:89-92.
[6]王日霞,朱偉興,陳先勇.H.264基于宏塊自適應的快速模式選擇算法[J].電視技術,2009,33(2):14-17.
[7]LIN T,RAO K R.Region of interest based H.263 compatible codec and Its rate control for low bit rate video conferencing[C]//Proc.2005 InternationalSymposium on IntelligentSignalProcessing and Communication Systems.[S.l.]:IEEE Press,2005:249-252.
[8]周磊.視頻通信中ROI視頻壓縮算法的研究與應用[D].長沙:中南大學,2007.
[9]SCHULZRINNE H,CASNER S,FREDERICK R.RTP:a transport protocol for realtime applications[EB/OL]. (2003-05-05)[2010-04-10].http://www.ietf.org/rfc/rfc1889.txt.
[10]The network simulator-ns-2:version 2.33[EB/OL].[2010-04-10].http://www.isi.edu/nsnam/ns/.
[11]3GPP TS 26.937,Transparent end-to-end packet-switched streaming service(PSS); real-time transport protocol (RTP)usage model:Release 7[S].2007.