袁嘉晟,方志軍,葉金財
(江西財經(jīng)大學 信息管理學院,江西 南昌 330013)
為適應復雜多變的異構環(huán)境,視頻編碼引入了可分級編碼的概念,可分級視頻編碼(Scalable Video Coding,SVC)可以使視頻流較好地適應各種不同的網(wǎng)絡環(huán)境和用戶終端,并具有一定的容錯性和可分級性。在編碼后的視頻流中,紋理信息占據(jù)了大部分比特,但是在低碼率下,運動矢量占據(jù)了大部分的碼流,如在可分級視頻編碼中,運動矢量占據(jù)了基本層碼流中的絕大部分[1-2]。因此在可分級視頻編碼中,對運動矢量的可分級編碼是一個重要要求,特別是在低碼率或者小圖像中。針對這一問題,筆者提出了一種基于運動矢量的視頻可分級編碼思想。
視頻編碼是數(shù)字視頻處理的重要應用,在許多通信服務中起著至關重要的作用。視頻序列在時間維上有很強的相關性,即存在著大量冗余,利用運動估計和運動補償技術可以有效地去除視頻幀間的冗余,實現(xiàn)編碼壓縮。運動估計是視頻處理系統(tǒng)的一個重要的組成部分,已廣泛運用于視頻壓縮的標準中。在運動估計中,模擬化運動的最簡單形式是用一個常量位移表示,這個常量位移就是運動矢量(MV)。 圖 1是測試視頻序列“foreman”中第1幀到第2幀的運動矢量表示圖。
計算出的運動矢量即可用于運動估計和運動補償,圖2是原視頻序列第1幀和第2幀的直接差值效果圖,圖3是用加入運動矢量的視頻第1幀,來預測第2幀,并將預測出的第2幀與原視頻序列第2幀進行差值的效果。從圖2和圖3的比較中可以看出,若不加運動矢量,第1幀和第2幀的差值是明顯的,兩幀之間的變化部分可以清楚得看到;若加入運動矢量預測下一幀,預測效果明顯變好,預測出的幀圖像與原序列幀相差不大,其中可以根據(jù)搜索匹配塊和精度的大小調(diào)節(jié)預測精度。

圖1 第1幀到第2幀的運動矢量表示圖

圖2 原序列第1幀圖像與第2幀直接差值

圖3 加入運動矢量預測出的幀圖像和原序列第2幀圖像差值
可分級性(Scalable)是指通過僅解碼一部分壓縮的比特流物理地恢復有意義的圖像或視頻信息的能力[3]。即視頻圖像經(jīng)過一次編碼后,其壓縮視頻流的碼率可以根據(jù)網(wǎng)絡的變化而調(diào)節(jié),生成不同碼率的視頻流,因此在碼率降低后,視頻流也可以解碼后正常播放。因此可分級編碼一般通過生成不同碼率的視頻流來實現(xiàn),采取的方式有PSNR(質(zhì)量)可分級、空間可分級、時間可分級或它們的組合??煞旨壘幋a技術將視頻編碼成N層可分級的比特流,第1層為基本層,其他層為增強層,第1層提供了能夠解碼重建最基本圖像視頻的比特流,對其他層的解碼能提高重建圖像視頻的質(zhì)量,直至最佳效果。目前視頻編碼中常用的可分級技術主要有質(zhì)量可分級[4-6]、空間可分級[7]、時間可分級[8]等。
質(zhì)量可分級是利用越來越精細的量化步長產(chǎn)生的圖像信息的損失來對每幀圖像進行分層。其基本思想是通過對原始圖像和第1層重建圖像之間的量化差值進行編碼以形成增強層。
空間可分級是從改變單幀圖像分辨力的角度來對視頻進行分級,形成不同分層。其基本思想是通過解碼第1層,形成一個低分辨力的圖像版本,隨后解碼第2層,將第1層解碼的圖像內(nèi)插到第2層解碼圖像中,隨后以相同的方式解碼后面的增強層。
時間可分級是從改變視頻幀序列的幀率的角度對視頻進行分級,形成不同分層。其基本思想是先將視頻幀進行采樣分割,基本層根據(jù)本身的數(shù)據(jù)編碼以提供基本的幀率,增強層通過對基本層或增強層的預測編碼,最后產(chǎn)生原始視頻的全時間分辨力。
因為運動矢量是由兩幀幀間的運動估計來表示,所以運動矢量具有時間可分級性,但是不經(jīng)過編碼的運動矢量并不具有質(zhì)量可分級性和空間可分級性。在目前的大多數(shù)視頻壓縮編碼標準里,如H.263,MPEG-4等,運動矢量的編碼使用的是預測差分編碼,即1個宏塊的運動矢量與其空間相臨的3個宏塊的運動矢量的中值作差,然后對差值進行編碼;而在MC-EZBC[9]中,提出了一種基于上下文的自適應二進制算數(shù)編碼對運動矢量進行編碼,使其具有質(zhì)量可分級和空間可分級。
目前的這些運動矢量編碼方法本質(zhì)上是對塊匹配后計算出的運動矢量比特流進行熵編碼,并能夠對編碼后的比特流進行截取,達到相應的可分級性。然而這些運動矢量編碼方法并沒有對運動矢量本身進行分析,筆者針對這種情況,提出一種對運動矢量本身進行處理的的思路。
前面提到的運動矢量編碼方法雖然具有可分級性,但是這些編碼方法都是編碼所有的運動矢量,而當前視頻編碼標準中的運動估計中都是分塊進行匹配,因此運動矢量本身存在著大量冗余,例如:相鄰兩幀塊運動可能并不劇烈或者沒有運動,其運動矢量的幅值不大或為零。試驗發(fā)現(xiàn),在運動矢量比特流中,有一些運動矢量對其后的運動估計和運動補償預測的影響不大,但是這些運動矢量所占用的比特流還是一定的,因此可以將這些運動矢量的比特流進行截取以達到可分級的效果。
對運動矢量進行分析判斷,先設定閾值T,將運動矢量的模與閾值比較,若運動矢量的模值大于閾值,則將該運動矢量保留,反之則去除。其判斷依據(jù)為

兩幀之間的運動矢量存在一個最大值,因此T可以先取最大值,此時運動矢量比特流為0,隨后逐漸減小T,可以逐步得到部分的運動矢量比特流,直到完全獲取運動矢量比特流,最后再對截取出的運動矢量比特流進行相應的運動矢量編碼。圖4是閾值為5時測試視頻序列foreman第1幀到第2幀截取后的運動矢量表示圖。比較圖1可見,一些模值相對小的運動矢量被去除了,如背景圖案部分,而保留了模值較大即塊運動較為劇烈的運動矢量,如臉部部分。

圖4 閾值為5時,截取后第1幀到第2幀的運動矢量表示圖
為了評估文中提出的思想,使用了stefan和foreman視頻序列進行測試。其視頻序列為CIF格式,幀率30 f/s(幀/秒),分塊大小8,搜索范圍4,精度為半像素。對視頻的前2幀進行分析,將第1幀設為參考幀,第2幀設為預測幀,隨后對計算出的運動矢量由閾值進行截取,得到運動矢量的比特流,計算其模值大小;然后將截取后的運動矢量加入到參考幀中,以預測下一幀;將預測出的幀圖像與原序列第2幀作差值,算出方差和峰值信噪比。圖5為foreman視頻序列第1幀,圖6為foreman視頻序列第2幀,圖7為在設定閾值為5時,加入截取后運動矢量比特流的foreman視頻序列第1幀預測出的幀圖像,圖8為預測出的幀圖像(閾值5)與原序列第2幀圖像的差值圖像。將圖8與第2節(jié)介紹的加入全運動矢量比特流預測出的幀圖像作比較,可以看到差別不是很大;但在一些運動變化較小的區(qū)域,差值的效果變得明顯,如背景圖案部分,這是因為經(jīng)過閾值判斷后,去除了模值小的運動矢量。

圖5 foreman序列第1幀

圖6 foreman序列第2幀

圖7 閾值為5時的預測幀

圖8 預測出的第2幀(閾值5)與原序列第2幀的差值圖
針對foreman視頻序列,表1顯示的是在不同閾值下,第1幀加入運動矢量預測出的第2幀與原序列第2幀的方差(SE)和峰值信噪比(PSNR)值及待編碼的運動矢量比特數(shù)。表中閾值為0時,表示運動矢量全保留,此時SE最小,PSNR和比特數(shù)最大;其次因為相鄰兩幀之間的運動矢量模值必存在一個最大值,在閾值達到這個最大值時,運動矢量將全被去除,此時相當于第1幀不預測,而差值正是兩幀之間相減,此時SE最大,PSNR最小,比特數(shù)為0。
圖9為stefan視頻序列第1幀,圖10為stefan視頻序列第2幀,圖11為在設定閾值為5時,加入截取后運動矢量比特流的stefan視頻序列第1幀預測出的幀圖像,圖12為預測出的幀圖像(閾值5)與原序列第2幀圖像的差值圖像。
針對stefan視頻序列,表2顯示的是在不同閾值下,第1幀加入運動矢量預測出的第2幀與原序列第2幀的方差和峰值信噪比值及待編碼的運動矢量比特數(shù)。

表1 foreman視頻序列在不同閾值下的SE和PSNR和比特數(shù)

圖9 stefan序列第1幀

圖10 stefan序列第2幀

圖11 閾值為5時的預測幀

圖12 預測出的第2幀(閾值5)與原序列第2幀的差值圖

表2 stefan視頻序列在不同閾值下的SE和PSNR和比特數(shù)
從兩個實驗結果可見,隨著閾值的增大,運動矢量的比特數(shù)也隨之減少,且減少的幅度較大。這樣可以對運動矢量的比特流在任意點截取,將截取的運動矢量加入到參考幀中,以預測下一幀。這樣做可以在預測時先傳輸一部分運動矢量,其后漸進傳輸剩下的運動矢量比特流,以逐步提高預測后的視頻幀圖像質(zhì)量,達到質(zhì)量可分級的目的。
筆者提出了一種基于運動矢量可分級的視頻編碼方法,對運動矢量模進行判斷,截取其比特流,以達到質(zhì)量可分級,并通過實驗分析,說明了該方法的可行性。但該方法的進一步應用還有諸多問題需要解決,如截取運動矢量比特流的方式、與熵編碼的結合方式等,這也是下一步研究的方向。
[1]LI Weiping.Overview of fine granularity scalability in MPEG-4 video standard[J].IEEE Trans.Circuits and Systems,2001,11(3):301-317.
[2]哈力旦·A,方勇.一種改進的運動矢量編碼方法[J].西安電子科技大學學報:自然科學版,2005,32(4):639-642.
[3]WANG Y,OSTERMANN J,ZHANG YQ.視頻處理與通信[M].候正信,譯.北京:電子工業(yè)出版社,2003.
[4]朱瑩,郁梅,陳懇,等.H.264標準的新擴展——可伸縮性編碼及應用[J].電視技術,2006(4):11-13.
[5]韓濤,王群生,楊春玲.精細可伸縮性視頻編碼的研究[J].電視技術,2007,31(9):12-14.
[6]楊雪婷,林其偉.基于H.264的精細可分級編碼結構改進方案[J].電視技術,2009,33(S1)∶36-37.
[7]馮璐,鮑衛(wèi)兵,劉峰.基于H.264的空間SVC快速模式選擇算法[J].電視技術,2007,31(12):20-22.
[8]閻金,全子一,門愛東.基于H.264的時間可分級編碼結構的研究[J].電視技術,2006(1):16-18.
[9]CHEN Peisong.Fully scalable subband/wavelet coding[D].Troy,NY USA:Rensselaer Polytechnic Institute,2003.