張 娜,周 冬,張俊為,桂江生,包曉安
(浙江理工大學信息學院,杭州 310018 )
?
基于H.264編碼幀內(nèi)預測模式的視頻監(jiān)控算法研究
張 娜,周 冬,張俊為,桂江生,包曉安
(浙江理工大學信息學院,杭州 310018 )
為了降低視頻監(jiān)控中H.264編碼幀內(nèi)預測模式計算復雜度,在分析了幀內(nèi)預測模式選擇過程的基礎(chǔ)上,提出了一種改進的提前終止選擇算法。該算法根據(jù)畫面的抖動狀況以及INTRA16×16模式下的紋理特征來獲取最佳閾值,并根據(jù)預處理閾值計算出最佳預測模式,從而降低了預測模式的計算復雜度,增強了在不同監(jiān)控場景下的適應能力。將該算法與模式選擇算法、多級模式預測方法進行實驗分析,分別在比特率、幀預測次數(shù)和計算時間上進行比較,結(jié)果表明:通過改進后的算法可以有效去除模式的預測數(shù),避免了不必要的預測計算,同時保持了H.264編碼原有的特性。
視頻監(jiān)控;視頻傳輸;H.264編碼;幀預測模型
隨著視頻技術(shù)越來越多地應用在各行各業(yè)中,視頻的編碼處理顯得尤為重要。一般的視頻監(jiān)控攝像頭所采集到的數(shù)據(jù)量比較大,當遇到網(wǎng)絡(luò)帶寬比較低的情況下,將未經(jīng)過編碼壓縮處理的數(shù)據(jù)直接在網(wǎng)絡(luò)上進行傳輸,不僅會增加帶寬的壓力,而且對攝像頭硬件也會造成影響[1]。視頻編碼是利用視頻編碼數(shù)據(jù)宏塊之間的相關(guān)性,通過建立視頻編碼模型以去除冗余數(shù)據(jù)的過程[2]。經(jīng)過編碼可大幅減少傳輸數(shù)據(jù)量。目前常用的視頻編碼技術(shù)有H.264、MPEG等[3]。其中H.264數(shù)據(jù)編碼具有高壓縮比和網(wǎng)絡(luò)傳輸性,在同等視頻質(zhì)量的情況下編碼的碼流只有其它編碼方法的一半,但也存在編碼計算復雜等弊端。
幀內(nèi)預測是H.264編碼中的主要技術(shù),其實現(xiàn)原理是利用圖像中的空間相關(guān)性,由已經(jīng)解碼的相鄰塊來預測當前塊的信息[4]。H.264編碼方法在選擇幀內(nèi)預測模式時采用全搜索技術(shù),通過計算盡量少的數(shù)據(jù)來獲取好的編碼效果,但由于H.264的幀內(nèi)預測模式數(shù)目很多,為計算出某一宏塊的幀內(nèi)預測模式,需要分析并比較592種不同組合模式下的代價函數(shù),這使得編碼復雜度非常高[5]。但對于實際視頻監(jiān)控的應用場景,監(jiān)控攝像頭位置固定不變,監(jiān)控畫面一般沒有較復雜的跳變,大多都是處于平緩狀態(tài),編碼過程中很多模式預測計算是多余的,因此選擇快速準確預測幀內(nèi)模式非常重要[6]。
目前,有關(guān)幀內(nèi)預測方法的改進研究主要有快速幀內(nèi)預測算法,如:Huang等[7]針對邊緣方向預處理提出了一種模式選擇算法;楊秀增[8]提出了利用絕對差和方向信息的多級模式預測方法。這兩種方法都是采用RDO(rate-distortionoptimization)進行模式選擇。RDO計算復雜度較高,當監(jiān)控畫面分辨率高時,這兩種算法的時間性能比較差。本文根據(jù)幀內(nèi)預測模式的選擇過程,對傳統(tǒng)預測模式與INTRA4×4模式下的預測算法進行改進,提出了一種簡單有效的預測模式選擇方法,改進后的算法能預先減少INTRA16×16模式選擇,有效降低模式選擇的計算復雜度,同時基本保持了H.264原有的性能,符合了視頻監(jiān)控的需求。
在H.264編碼結(jié)構(gòu)中,以宏塊作為基本單位進行視頻編碼。在幀內(nèi)編碼過程中,將每個宏塊劃分為一個16×16亮度像素塊和兩個8×8彩色像素塊,并分別對這3個塊進行幀內(nèi)預測。亮度塊又可分為INTRA4×4和INTRA16×16兩種模式幀內(nèi)預測類型[9]。其中INTRA4×4模式有9種幀內(nèi)預測類型,INTRA16×16模式有4種幀內(nèi)預測模式,后者如表1所示[10]。
表1 INTRA16×16的幀內(nèi)預測模式
INTRA4×4模式通過對4×4子塊進行預測分析,其預測精度較高,所以更適合用于處理畫面細節(jié)多、紋理復雜的視頻場景,如道路、車站、廣場等場景[11];INTRA16×16模式通過對16×16子塊進行預測,預測方向如圖1所示,預測精度較低,適用于畫面變換平緩的監(jiān)控場景,如固定視角的家庭、辦公監(jiān)控場景[12]。本文主要對INTRA16×16模式的選擇過程進行相應改進。
圖1 INTRA16×16的幀內(nèi)預測模式圖示
2.1 相鄰塊之間的相關(guān)性
為計算當前數(shù)據(jù)塊,除需獲取所用的預測模式外還需計算相鄰塊之間的差值。如果用一個值標記每個編碼塊的預測模式,這樣需要消耗較大的編碼比特率,將會增加碼率[13]。事實上INTRA16×16模式下相鄰塊之間的預測模式具有很強的相關(guān)性,可以據(jù)此計算最有可能的模式,減少編碼比特數(shù)。
2.2 幀內(nèi)預測模式選擇過程
計算出某個宏塊內(nèi)的幀預測模式,需要計算592種代價函數(shù),計算量非常大。He等[12]提出的計算方法,首先計算9種INTRA4×4模式代價函數(shù),得到最小代價的模式。計算模式的代價函數(shù)RDcost定義為:
RDcost=SSD(N)+Rmode×rate
(1)
其中:SSD(N)是編碼模式N的失真度[12],該值是編碼塊原始采樣值s(i,j)和預測樣點值p(i,j)之間的差值d(i,j)絕對值之和,即:
SSD(N)=∑i,j|s(i,j)-p(i,j)|
(2)
rate表示熵編碼后碼率;Rmode按式(3)計算:
Rmode=0.85×2(QP-12)/3
(3)
QP表示量化參數(shù)。然后,通過式(1)算出9種INTRA4×4塊最小的RDcost,從而得到當前宏塊INTRA4×4模式下的RDcost。再通過上述方法計算出4個16×16塊最小的RDcost,比較前兩步獲得的RDcost,計算出最小RDcost的模式來作為宏塊的幀內(nèi)預測模式。通過這種方式計算宏塊的最佳模式,復雜度相當大,而且對于相對平穩(wěn)的監(jiān)控畫面會存在大量的數(shù)據(jù)冗余。
降低幀預測復雜度一般有兩種方法:一種是通過減少代價函數(shù)RDcost的計算量;另一種是減小幀預測模式的次數(shù)。本文在分析代價函數(shù)的計算量與幀預測模式次數(shù)的基礎(chǔ)上,結(jié)合固定場所視頻監(jiān)控系統(tǒng)應用場景,減小幀預測模式的次數(shù)。成運等[9]研究發(fā)現(xiàn),通過當前編碼塊與周圍相鄰塊之間的相關(guān)特征預先排除可能性小的預測模式,可以降低幀內(nèi)預測的復雜度。本文在原有的幀預測模式的基礎(chǔ)上,提出了一種基于改進預處理閾值提前終止模式選擇算法,利用空間域的特征改變了RDO幀內(nèi)預測模式,在預測之前去除一些可能性低的預測模式,減少計算量,降低復雜度。
傳統(tǒng)幀內(nèi)預測算法[13]是計算INTRA4×4與INTRA16×16下所有模式的率失真值,然后再通過計算比較得出最小代價的模式,這種方法的計算量非常大。監(jiān)控畫面的圖像都會存在一定比例的平緩區(qū)域,在本文提出改進算法中,預先設(shè)定經(jīng)驗閾值T,T按照傳統(tǒng)幀內(nèi)預測算法從INTRA16×16模式中最佳幀內(nèi)預測模式的最小率失真值RDcost加權(quán)平均值得出。算法的具體流程如圖2所示。
圖2 改進算法流程
本方法可總結(jié)為如下4個步驟:
a)首先算出4種INTRA16×16模式的代價函數(shù),選擇最小代價的模式。代價函數(shù)計算RDcost=SSD(N)+Rmode×rate。
b)比較INTRA16×16模式下的RDcost與T之間的大小,若RDcost比T小,則終止計算,選擇最小的模式;否則轉(zhuǎn)到步驟(c)。
c)若INTRA16×16模式下的RDcost比T大,則計算INTRA4×4模式下的RDcost,比較T與INTRA4×4模式下的RDcost的大小,若比T小,則終止計算;否則轉(zhuǎn)到步驟(d)。
d)若INTRA4×4模式下的RDcost比T大,則比較INTRA16×16模式下的RDcost與INTRA4×4模式下的RDcost的大小,選擇最佳的模式計算。
結(jié)合上述步驟和圖2中的流程圖,給出本文算法的實現(xiàn)方式如下:
1.Begin:
2.form=1:4
3.countSSD16×16∥循環(huán)計算4種INTRA16×16模式的失真度
4.countR16×16
5.countRD16×16=SSD16×16+rmR16×16∥計算INTRA16×16模式下代價函數(shù)
6.if(RD16×16 7.choicebestmodel16×16 8.end 9.elseif 10.form=1:9 11.countSSD4×4//循環(huán)計算9種INTRA4×4模式的失真度 12.countR4×4 13.countRD4×4=SSD4×4+rmR4×4∥計算INTRA4×4模式下代價函數(shù) 14.if(RD4×4 15.choicebestmodel4×4 16.end 17.elsecompare(RD4×4,RD16×16)∥比較兩種模式下的代價函數(shù) 18.choicebestmodel 19.end 20.End 在本算法中通過設(shè)置閾值T來判斷出最佳模式,不但可以減少INTRA16×16模式下幀預測的計算量,在某些情況下甚至可以直接避免計算INTRA4×4模式,在一定程度上提高了預測的精準度。 (4) (5) (6) (7) 選擇其中最小值Texmin作為INTRA16×16塊的紋理復雜度的衡量標準并選擇出最佳模式: 當畫面出現(xiàn)跳變或畫面密集程度較高的情況下,T值無法預測出最佳模式時采用紋理特征的復雜度來選擇最佳模式具有很好的適應性。 為了驗證本文提出的改進預處理閾值提前終止選擇算法的有效性,將本文算法與模式選擇算法[7]、多級模式預測方法[8]進行實驗對比,編碼使用foremanQCIF序列,分別在比特率、幀預測次數(shù)和算法計算時間上進行比較,得到3種算法的對比結(jié)果如表2所示。 表2 算法測試結(jié)果 從表2可以看出,多級模式預測算法相較于模式選擇算法,具有較低的比特率和幀預測次數(shù),但需要消耗更多的時間。而本文提出的改進算法,在均占有絕對的優(yōu)勢,在比特率平均與平均幀內(nèi)預測次數(shù)都有了很大程度的減少,比特率平均減少了1.65%,INTRA16×16模式下幀預測次數(shù)減少了約55%,有效的減少了代價函數(shù)的計算。 為了更加全面地對比3種算法,從峰值信噪比上進行比較,結(jié)果如圖3所示。從圖3中可以得出使用改進后算法得到的編碼結(jié)果與模式選擇算法和多級模式預測算法方法相比,峰值信噪比平均減少了2.05dB。 圖3 三種算法峰值信噪比比較 同時將本文改進的算法應用到視頻監(jiān)控系統(tǒng)中,通過對攝像頭里產(chǎn)生的日志編碼數(shù)據(jù)來分析(如圖4),可得出在相同的幀序列中,利用本文的算法可以產(chǎn)生比較少的字節(jié)數(shù)據(jù),有效的減緩了攝像頭的監(jiān)控壓力。 圖4 本文算法與標準編碼字節(jié)比較 本文根據(jù)H.264編碼的幀內(nèi)預測過程以及編碼塊之間的相關(guān)性與幀預測模式間的特點,提出了一種改進的預處理閾值提前終止模式選擇算法。該算法通過提前設(shè)置閾值來減少不必要的計算,從而減少了預測復雜度,并基本上保持了H.264原有的性能。本文算法與標準編碼視頻監(jiān)控中產(chǎn)生的字節(jié)進行對比,發(fā)現(xiàn)本文算法更適用于視頻監(jiān)控。后續(xù)研究將根據(jù)H.264模式之間的相關(guān)性,進一步降低幀預測的代價計算,提升視頻監(jiān)控場景的圖像傳輸?shù)馁|(zhì)量。 [1] 黃凱奇,陳曉棠,康運鋒,等.智能視頻監(jiān)控技術(shù)綜述[J].計算機學報,2015,38(6):1093-1118. [2] 鐘鋒,陸以勤.基于家庭網(wǎng)關(guān)的嵌入式遠程圖像監(jiān)控系統(tǒng)[J].計算機工程與設(shè)計,2011,32(5):1626-1629. [3] CHAABOUNI A, GAUDEAU Y, LAMBERT J, et al. Subjective and objective quality assessment for H264 compressed medical video sequences[C]// International Conference on Image Processing Theory, Tools and Applications. IEEE,2014:1-5. [4] 裴世保,李厚強,俞能海.H.264/AVC幀內(nèi)預測模式選擇算法研究[J].計算機應用,2005,25(8):1808-1810. [5] SONG R, WANG Y L, HAN Y, et al. Statistically uniform intra-block refresh algorithm for very low delay video communication[J]. Frontiers of Information Technology & Electronic Engineering,2013,14(5):374-382. [6] 張小紅,張媛.H.264/AVC幀內(nèi)預測模式快速選擇算法研究[J].系統(tǒng)仿真學報,2013,25(12):3050-3056. [7] HUANG Y H, OU T S, CHEN H H. Fast decision of block size, prediction mode, and intra block for H.264 intra prediction[J]. Circuits & Systems for Video Technology IEEE Transactions on,2010,20(8):1122-1132. [8] 楊秀增.基于FPGA的圖像預測編碼壓縮算法的實現(xiàn)[J].電子技術(shù),2013,40(2):62-63. [9] 成運,戴葵,王志英,等.一種新的基于H.264/AVC的零塊判決方法[J].計算機研究與發(fā)展,2005,42(10):1758-1762. [10] LIU B, CHEN Q. Implementation and optimization of intra prediction in H264 video parallel decoder on CUDA[C]// IEEE Fifth International Conference on Advanced Computational Intelligence. IEEE,2012:215-232. [11] 張劍,譚勁.基于結(jié)構(gòu)模塊化實現(xiàn)H.264編碼軟件[J].計算機科學,2005,32(6):87-90. [12] HE Z, CHEN C, CAI J. Lowpass filtering of rate-distortion functions for quality smoothing for real-time video recording and streaming[C]∥ International Conference on Image Processing. IEEE,2004:1101-1104. [13] 王剛,毛劍飛,田青,等.基于ARM11的無線視頻監(jiān)控系統(tǒng)[J].計算機系統(tǒng)應用,2011,20(8):18-22. (責任編輯: 康 鋒) Research on Video Surveillance Algorithm Based on Intra Prediction Mode of H.264 Coding ZHANGNa,ZHOUDong,ZHANGJunwei,GUIJiangsheng,BAOXiaoan (School of Information Science and Technology, Zhejiang Sci-Tech University, Hangzhou 310018, China) In order to reduce the computational complexity of intra prediction mode of H.264 coding in video surveillance, an improved early termination selection algorithm is proposed based on the analysis of the intra prediction mode selection process. The algorithm obtains the optimal threshold value according to the jitter condition of the picture and the texture feature in the INTRA16×16 mode, and calculates the optimal prediction mode according to the preprocessing threshold value, which reduces the computational complexity of the prediction mode and enhances the adaptability under different surveillance scenes. The algorithm is compared with the mode selection algorithm and the multi-level mode prediction method in terms of bit rate, times of frame prediction and computation time. The simulation results show that the improved algorithm can effectively remove the prediction number of the pattern and avoid unnecessary prediction calculation, while maintaining the original characteristics of H.264 coding. video surveillance; video transmission; H.264 coding; frame prediction model 10.3969/j.issn.1673-3851.2017.05.020 2016-11-24 網(wǎng)絡(luò)出版日期: 2017-03-28 國家自然科學基金項目(61379036,61502430) ;浙江省自然科學基金項目(LY12F02041) ;浙江省重大科技專項重點工業(yè)項目(2014C01047) 張 娜(1977-),女,浙江杭州人,副教授,碩士,主要從事自適應軟件、軟件測試與智能信息處理方面的研究。 包曉安,E-mail:baoxiaoan@zstu.edu.cn F252 A 1673- 3851 (2017) 03- 0432- 064 實驗及結(jié)果分析
5 結(jié) 語