梁傳君,徐 亮
(新疆工程學(xué)院 計(jì)算機(jī)工程系,烏魯木齊 830011)
利用反向投影的flash場景自適應(yīng)視頻編碼算法
梁傳君,徐 亮
(新疆工程學(xué)院 計(jì)算機(jī)工程系,烏魯木齊 830011)
針對閃光造成的光照變化會(huì)導(dǎo)致視頻幀之間巨大的強(qiáng)度差異問題,提出利用反向投影的flash場景自適應(yīng)視頻編碼算法;根據(jù)直方圖差異提取閃光和非閃光幀,相應(yīng)地為每個(gè)幀分配適當(dāng)?shù)木幋a類型,并在加權(quán)預(yù)測(WP)參數(shù)集確定中采用運(yùn)動(dòng)向量導(dǎo)數(shù),通過反向投影保證flash場景的全局一致性;實(shí)驗(yàn)結(jié)果顯示,提出的算法在Lena、Peppers、Building、Baboon、Nestling 5個(gè)視頻上的峰值信噪比(PSNR)值分別可高達(dá)32.31 dB、34.14 dB、34.76 dB、34.94 dB、35.05 dB,非常接近原始圖像的PSNR;相比其他幾種加權(quán)預(yù)測算法,提出的算法在PSNR及計(jì)算復(fù)雜度方面均獲得了更加優(yōu)越的編碼性能。
Flash場景;自適應(yīng)編碼;加權(quán)預(yù)測;峰值信噪比;反向投影;計(jì)算復(fù)雜度
在新聞發(fā)布會(huì)、體育比賽、新聞采訪等場合上閃光造成的光照變化會(huì)導(dǎo)致視頻幀之間巨大的強(qiáng)度差異[1],這在運(yùn)動(dòng)估計(jì)和視頻編碼補(bǔ)償中很容易被認(rèn)錯(cuò)[2]。
基于幀的加權(quán)預(yù)測(Weighted Prediction Based on Frame, WPBF)是一種加權(quán)預(yù)測(Weighted prediction, WP)方法[3],它僅能對具有全局亮度變化的場景進(jìn)行編碼,例如有效地淡入和淡出,但不能編碼具有flash場景局部亮度變化的場景[4]?;诤陦K(Macroblock, MB)的方法用于解決局部亮度變化問題[5],但是在執(zhí)行運(yùn)動(dòng)估計(jì)(Motion Estimation, ME)中增加了計(jì)算復(fù)雜度[6]。有文獻(xiàn)基于宏塊概念擴(kuò)展到多視點(diǎn)的視頻以解決視圖中光照和焦點(diǎn)的不匹配[7]。還有文獻(xiàn)采用二次搜索算法,第一次搜索中,使用平均刪除搜索計(jì)算窗口中的視差向量,第二次平均刪除搜索通過過濾參考量找出每個(gè)MB的最佳匹配,該算法也需要很高的計(jì)算復(fù)雜度,且僅適合多視點(diǎn)視頻編碼[8]。自適應(yīng)稀疏域選擇算法(Adaptive sparse domain selection algorithm, ASDS)通過差值和修復(fù)非閃光幀來解決flash場景編碼的問題,然而閃光幀的客觀質(zhì)量下降較嚴(yán)重[9]。
基于上述分析,為了解決閃光造成的光照變化會(huì)導(dǎo)致視頻幀之間巨大的強(qiáng)度差異問題,提出一種利用反向投影的flash場景自適應(yīng)視頻編碼算法,根據(jù)直方圖[10]差異提取閃光和非閃光幀,相應(yīng)地為每個(gè)幀分配適當(dāng)?shù)木幋a類型,并在WP參數(shù)集確定中采用運(yùn)動(dòng)向量導(dǎo)數(shù)[11]。實(shí)驗(yàn)結(jié)果表明,提出的算法在編碼flash場景中相比傳統(tǒng)算法具有更好的性能。
閃光燈的顯著特點(diǎn)是在很短的時(shí)間內(nèi)同一場景幀之間的亮度突變。采用提出的基于MB的加權(quán)預(yù)測對閃光幀進(jìn)行編碼工作,根據(jù)輸入場景中的閃光自適應(yīng)改變編碼順序,以提高編碼的效率[12]。非閃光幀ft+2可以通過其他非閃光幀ft進(jìn)行預(yù)測,因此ft+2不會(huì)產(chǎn)生大量的比特。算法流程圖如圖1所示。
圖1 提出的算法的流程圖
1.1 基于flash的自適應(yīng)編碼順序
要達(dá)到這一效果,需要進(jìn)行閃光場景檢測,因此可以改變預(yù)測結(jié)構(gòu)中的編碼順序,從而更易于得到具有閃光燈效果的視頻序列的編碼增益。閃光燈檢測方法在視頻自動(dòng)索引、瀏覽和檢索方面已被廣泛研究,研究表明[13],可通過計(jì)算平均強(qiáng)度或直方圖與相鄰圖像之間比值,以完成對一個(gè)flash幀的定位。提出的算法通過改進(jìn)文獻(xiàn)[13]提出的基于直方圖差異化(Histogram differentiation, HD)的方法,使其更加適用于視頻編碼。
對于編碼一個(gè)m幀的flash場景,兩個(gè)非閃光幀和m-2閃光幀應(yīng)該考慮在內(nèi)。令fFLS和fFLE分別代表一個(gè)flash場景的開始和結(jié)束幀,fFLS和fFLE之間的關(guān)系可以寫為:
Luma(fFLE)≈Luma(fFLS)
(1)
式中,Luma(f)表示所有像素p(x,y)的平均亮度值,幀f的大小為w和h時(shí),可以表示為:
(2)
閃光時(shí)亮度水平開始從fFLS-1到fFLS有一個(gè)較大的增加,即Luma(fFLS-1)?Luma(fFLS)。隨后是一段恒定從fFLS到fFLS+m-3的高亮度水平,并結(jié)束于亮度水平從fFLS+m-3到fFLS+m-2一個(gè)較大的下降,即fFLS+m-3?fFLS+m-2。然后根據(jù)幀之間的直方圖差異,flash場景檢測的問題可以轉(zhuǎn)換為確定fFLS-1和fFLE+1。幀fa和幀fb之間的直方圖差異可以表示為:
(3)
其中,Hist(fa)x和Hist(fb)x分別表示fa和fb的第x位的歸一化亮度,每個(gè)直方圖劃為64位用于噪聲抑制和快速計(jì)算。因此,fFLS-1的直方圖Hist(fFLS-1),fFLS的直方圖Hist(fFLS-1)從左偏移到右。fFLS+m-2的亮度水平Luma(fFLS+m-2)保持與閃光燈效果后fFLS-1的亮度水平Luma(fFLS-1)相似的水平,即Luma(fFLS+m-2)≈Luma(fFLS-1)。因此,fFLS-1和fFLS+m-2之間的直方圖差異HD(fFLS-1,fFLS+m-2)是非常小的,得到以下的關(guān)系:
HD(fFLS-1,fFLS+i-3)>k·HD(fFLS-1,fFLS+m-2),3≤i≤5
(4)
k是一個(gè)控制flash場景檢測器敏感度的整數(shù)。
為了檢測flash場景,采用一個(gè)n幀的滑動(dòng)窗口,其第一幀是被編碼的當(dāng)前幀fc。計(jì)算fc和滑動(dòng)窗口中其他幀之間的直方圖差異HD(fc,fc+j),1≤j≤n。如果存在滿足關(guān)系式(4)的fFLS+m-2(m 1.2 基于MB的運(yùn)動(dòng)向量加權(quán)預(yù)測 (5) 1.3 使用反向投影保證全局一致性 利用反向投影[15]保證全局一致性。設(shè)Xi為加權(quán)后的視頻幀,為了最小化Xi與當(dāng)前B幀之間的距離,通過梯度下降法求解以下最小化問題: (6) 式中,c>0為權(quán)衡參數(shù)。修正后的梯度下降方法為: Xi+1=Xi-v[(Xi-Xi-1)+c(Xt-B)] (7) 式中,v>0為步長參數(shù),將優(yōu)化后的X作為具有全局一致性的flash場景。 在兩個(gè)具有flash場景的720p視頻序列上進(jìn)行實(shí)驗(yàn)來評估各種加權(quán)預(yù)測算法的性能,測試序列均為25幀每秒。每個(gè)實(shí)驗(yàn)分別執(zhí)行100次,每次實(shí)驗(yàn)使用不同的觀察序列,這些序列在每個(gè)實(shí)驗(yàn)中通過特定過程生成。仿真實(shí)驗(yàn)在配置為Win7操作系統(tǒng)、intel酷睿II處理器、1.86 GHz主頻、2.95 GB RAM的PC機(jī)上進(jìn)行,使用MATLAB 7.1編程。除此之外,還在3個(gè)標(biāo)準(zhǔn)序列的每幀中間應(yīng)用了合成的閃光燈,進(jìn)行實(shí)驗(yàn)來表明運(yùn)動(dòng)活動(dòng)、flash持續(xù)時(shí)間和閃光燈強(qiáng)度在不同算法上的影響。將提出的算法與3種算法進(jìn)行比較,分別為WPBF、二次搜索算法和ASDS。 為了比較算法的性能,使用峰值信噪比(Peak Signal to Noise Ratio, PSNR)[16]指標(biāo),PSNR定義如下: (6) 式中,MSE為原視頻序列與估計(jì)視頻序列的均方誤差,且PSNR越高表明性能越佳。 在Lena、Peppers、Building、Baboon、Nestling 5個(gè)視頻上進(jìn)行編碼實(shí)驗(yàn),計(jì)算幾種算法的PSNR值,測量結(jié)果如表1所示,分辨率增強(qiáng)因子設(shè)為2,PSNR值越高表示圖像的高頻成分越多。 表1 幾種算法的PSNR值 (dB) 從表1可以看出,提出的算法在Lena、Peppers、Building、Baboon、Nestling 5個(gè)視頻上的PSNR值分別可高達(dá)32.31 dB、34.14 dB、34.76 dB、34.94 dB、35.05 dB,非常接近原始圖像的PSNR,相比其他幾種算法,提出的算法在大多數(shù)情況下均能獲得最高的PSNR值,表明該算法的編碼效果更好。 表2所示為各個(gè)算法在實(shí)驗(yàn)平臺(tái)保持一致情況下的平均運(yùn)行時(shí)間。 表2 各個(gè)算法的平均運(yùn)行時(shí)間比較 從表2可以看出,WPBF算法的運(yùn)行時(shí)間最少,因?yàn)閃PBF算法最簡單。通過對MATLAB中常見的視頻序列分別進(jìn)行上述4種算法運(yùn)算處理,提出的算法運(yùn)行時(shí)間僅略高于WPBF,而少于其他幾種比較的算法。 綜合表1和表2中的數(shù)據(jù)可知,提出的算法在保證較高的編碼效率情況下,仍能保持較低的計(jì)算復(fù)雜度,可見其優(yōu)越性。 針對閃光造成的光照變化會(huì)導(dǎo)致視頻幀之間巨大的強(qiáng)度差異問題,提出一種利用反向投影的flash場景自適應(yīng)視頻編碼算法。該算法根據(jù)直方圖差異提取閃光和非閃光幀,相應(yīng)地為每個(gè)幀分配適當(dāng)?shù)木幋a類型,并在加權(quán)預(yù)測參數(shù)集確定中采用運(yùn)動(dòng)向量導(dǎo)數(shù),通過反向投影保證了全局一致性。在兩個(gè)具有flash場景的720p視頻序列上進(jìn)行實(shí)驗(yàn)來評估幾種加權(quán)預(yù)測算法的性能,在PSNR和平均運(yùn)行時(shí)間方面對幾種算法進(jìn)行比較,驗(yàn)證了提出的算法的有效性。實(shí)驗(yàn)結(jié)果表明,與傳統(tǒng)的加權(quán)預(yù)測算法相比,提出的算法在PSNR及運(yùn)行時(shí)間方面獲得了更優(yōu)越的編碼性能。 未來會(huì)將提出的算法應(yīng)用于其他的flash場景,同時(shí)引入其他的編碼技術(shù),從而更好地改善PSNR和降低算法執(zhí)行時(shí)間。 [1] 孫中廷, 華 鋼, 徐永剛. 基于雙邊信息的分布式視頻壓縮感知模型研究[J]. 計(jì)算機(jī)測量與控制, 2015, 23(10): 3545-3548. [2] Zhang Z, Hou J, Ma Q, et al. Efficient video frame insertion and deletion detection based on inconsistency of correlations between local binary pattern coded frames [J]. Security & Communication Networks, 2015, 8(2): 311-320. [3] 李 鵬, 彭宗舉, 李持航,等. 基于紋理特性與空域相關(guān)的高效視頻編碼幀內(nèi)分級快速算法[J]. 計(jì)算機(jī)應(yīng)用, 2016, 36(4): 1085-1091. [4] Lim S W, Moon J H. Weighted Prediction considering Global Brightness Variation and Local Brightness Variation in HEVC[J]. 2015, 20(4): 489-496. [5] 王鳳隨, 王冠凌, 瞿成明,等. 基于宏塊多相關(guān)性的多視點(diǎn)視頻編碼方法[J]. 計(jì)算機(jī)工程, 2015, 41(2): 258-262. [6] Strelow D W. Motion Estimation from Image and Inertial Measurements[J]. International Journal of Robotics Research, 2015, 24(5): 463-482. [7] 王鳳隨, 沈慶宏, 都思丹. 多視點(diǎn)視頻編碼快速幀間模式選擇算法[J]. 計(jì)算機(jī)應(yīng)用, 2014, 34(1): 167-170. [8] 孫新領(lǐng), 馬紹惠, 徐平平. 基于SIR粒子濾波和局部搜索算法的運(yùn)動(dòng)目標(biāo)跟蹤方案[J]. 湘潭大學(xué)自科學(xué)報(bào), 2016, 38(2): 84-88. [9] 盧 迪, 林 雪. 一種改進(jìn)自適應(yīng)權(quán)重稀疏區(qū)域立體匹配算法[J]. 哈爾濱理工大學(xué)學(xué)報(bào), 2016, 21(1): 83-88. [10] 童學(xué)鋒, 李書萌, 沈廣策,等. 基于直方圖對無損數(shù)據(jù)隱藏的立體圖像編碼[J]. 同濟(jì)大學(xué)學(xué)報(bào)(自然科學(xué)版), 2015, 43(8): 1226-1233. [11] 張雨濃, 勞穩(wěn)超, 丁瑋翔,等. 基于ARIMA與WASDN加權(quán)組合的時(shí)間序列預(yù)測[J]. 計(jì)算機(jī)應(yīng)用研究, 2015, 32(9): 2630-2633. [12] Wang Z, Dong S, Wang R, et al. Dynamic macroblock wavefront parallelism for parallel video coding [J]. Journal of Visual Communication & Image Representation, 2015, 28(3): 36-43. [13] Wu C J, Wang Q, Li H, et al. DWI-associated entire-tumor histogram analysis for the differentiation of low-grade prostate cancer from intermediate-high-grade prostate cancer [J]. Abdominal Radiology, 2015, 40(8): 3214-3221. [14] Li S, Fu J, Liu P, et al. An Information Hiding Approach Based on Integer Transform Coefficient and Virtual Space Encoding for H.264/AVC [J]. Circuits, Systems, and Signal Processing, 2015, 34(11): 3573-3594. [15] 駱巖紅, 李公平, 文 茜,等. 基于投影缺失正弦圖的CT圖像重建研究[J]. 計(jì)算機(jī)應(yīng)用研究, 2015, 32(2): 609-612. [16] 黃 璇, 楊曉梅. 基于低秩及全變分的視頻超分辨率重建[J]. 計(jì)算機(jī)應(yīng)用研究, 2015, 32(3): 938-941. Adaptive Video Coding Algorithm for Flash Scene Using Back Projection Liang Chuanjun, Xu Liang (Department of Computer Engineering, Xinjiang Institute of Engineering, Urumqi 830011, China) Aiming at the huge intensity difference between video frames caused by the illumination change of flash, adaptive video coding algorithm based on flash scene is proposed in this paper. The flash and non flash frames are extracted according to the histogram difference, corresponding coding types are allocated for each frame correspondingly, and the motion vector derivative is used in the weighted prediction (WP) parameter set determination. And the back projection is used to keep the global consistency of flash scene. The experimental results show that the peak signal to noise ratio (PSNR) achieved by the proposed algorithm on the five videos Lena, Peppers, Building, Baboon and Nestling can arrive at 32.31 dB, 34.14 dB, 34.76 dB, 34.94 dB and 35.05 dB, respectively, which is nearly to PSNR of the primary images. And compared with the traditional weighted prediction algorithm, the proposed algorithm achieves better coding performance in terms of PSNR and computational complexity. flash scene; adaptive coding; weighted prediction; peak signal to noise ratio; back projection; computational complexity 2017-01-13; 2017-02-21。 新疆維吾爾自治區(qū)高??蒲杏?jì)劃青年教師科研啟動(dòng)基金項(xiàng)目(XJEDU2014S074);新疆工程學(xué)院科研基金項(xiàng)目(2015xgy101712)。 梁傳君(1980-),女,碩士,講師,主要從事算法設(shè)計(jì)、圖像處理等方向的研究。 1671-4598(2017)07-0243-03 10.16526/j.cnki.11-4762/tp.2017.07.060 TP391 A2 實(shí)驗(yàn)結(jié)果
3 結(jié)論