朱向軍,馮志林,王 潔,鮑衛(wèi)兵
(浙江工業(yè)大學(xué)之江學(xué)院,浙江 杭州 310024)
以塊運(yùn)動(dòng)估計(jì)和變換編碼為核心的視頻壓縮技術(shù)(如MPEG及H.26x等標(biāo)準(zhǔn))因編碼器復(fù)雜度高且抗誤碼能力差等缺陷,很難適用于移動(dòng)視頻電話、無(wú)線低功耗視頻監(jiān)控及無(wú)線視頻傳感網(wǎng)絡(luò)等新興應(yīng)用場(chǎng)合。最近提出的壓縮傳感(Compressive Sensing,CS)[1-2]理論,對(duì)稀疏信號(hào)(或可壓縮圖像)以遠(yuǎn)低于奈奎斯特頻率的速度進(jìn)行投影觀測(cè),將傳感和壓縮合并為一個(gè)環(huán)節(jié),在解碼端采用適當(dāng)?shù)南∈柚貥?gòu)算法從觀測(cè)向量中重建出原始信號(hào),顯著降低了信號(hào)采集中的采樣頻率、功耗和數(shù)據(jù)存儲(chǔ)量?;趬嚎s傳感原理,Duarte等[3]發(fā)明了單像素?cái)z像機(jī),驗(yàn)證了低像素?cái)z像機(jī)也能拍攝高質(zhì)量圖像。壓縮傳感技術(shù)在編碼端通過(guò)簡(jiǎn)單的隨機(jī)觀測(cè)來(lái)壓縮采樣信號(hào),且全局觀測(cè)對(duì)信道誤碼魯棒性強(qiáng),非常適合分布式編碼應(yīng)用[4]。
Gan等[5]提出了一種壓縮圖像傳感方法,用置亂塊哈達(dá)瑪矩陣投影觀測(cè)整幀圖像,選擇離散小波變換為稀疏變換,采用凸優(yōu)化算法重構(gòu)原圖像。結(jié)合分布式視頻編碼框架和CS理論的分布式壓縮視頻傳感方法[5-9],為解決低復(fù)雜度視頻編碼問(wèn)題提供了新的思路。將視頻序列分為關(guān)鍵幀和CS幀,對(duì)關(guān)鍵幀獨(dú)立編碼/解碼或觀測(cè)/重建;對(duì)CS幀直接投影觀測(cè)實(shí)現(xiàn)低復(fù)雜度編碼,在解碼端利用幀間相關(guān)性重建CS幀,與CS幀獨(dú)立重建相比,圖像質(zhì)量有了顯著提高。提高此類算法性能的關(guān)鍵是在解碼端充分利用幀間相關(guān)性或稀疏性,Kang等[6]將幀率提升工具生成的邊信息作為稀疏重構(gòu)的初始值,Prades-Nebot[7]和Do[8]等由重建關(guān)鍵幀的相鄰塊生成局部冗余字典以及Chen等[9]訓(xùn)練生成全局冗余字典作為塊稀疏變換基。
筆者提出了利用運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)(Motion Compensated Prediction,MCP)進(jìn)行殘差稀疏重構(gòu)的分布式壓縮視頻傳感算法(CVS_MCP),主要特點(diǎn)是:1)編碼端采用“關(guān)鍵幀-多個(gè)CS幀-關(guān)鍵幀……”的分組壓縮傳感方式,對(duì)整幀圖像投影觀測(cè);2)在解碼端,利用已重建的關(guān)鍵幀和CS幀進(jìn)行重疊塊運(yùn)動(dòng)估計(jì),獲得稠密運(yùn)動(dòng)矢量場(chǎng),生成運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)幀;3)利用原始幀的觀測(cè)向量與預(yù)測(cè)幀的觀測(cè)向量之差,對(duì)預(yù)測(cè)殘差稀疏重構(gòu)。
給定長(zhǎng)度為N的一維離散信號(hào)列向量x,可以用一個(gè)N×N的稀疏變換基Ψ表示為x=Ψα,其中,α是系數(shù)向量。如果α中只有K(K?N)個(gè)非零的系數(shù),稱x是K-稀疏的。壓縮傳感[1-2]理論表明,對(duì)未知K-稀疏信號(hào)x,利用M×N(K≤M?N)的隨機(jī)觀測(cè)矩陣Φ進(jìn)行線性投影觀測(cè),得到長(zhǎng)度為M的線性觀測(cè)向量(x的壓縮表示):y===,其中,Θ稱為傳感矩陣。當(dāng)滿足約束等距性條件且觀測(cè)數(shù)M≥c(Klg(N/K))(c是與重建精度有關(guān)的常數(shù))時(shí),運(yùn)用稀疏重構(gòu)算法按式(1)求解滿足y=Θα的最稀疏解^α,可穩(wěn)定精確的重建原始信號(hào)=,
CVS_MCP算法的結(jié)構(gòu)如圖1所示,首先將視頻序列分為由一幀關(guān)鍵幀和后續(xù)多幀CS幀構(gòu)成的若干圖像組(Group of Pictures,GOP)。在編碼端,順序獨(dú)立壓縮傳感單幀圖像,采用計(jì)算快速且通用性好的置亂塊哈達(dá)瑪矩陣[5]全局觀測(cè)整幀,得到觀測(cè)向量y,關(guān)鍵幀記為yK。在解碼端,以逆離散小波變換(IDWT)為稀疏變換基Ψ,采用SpaRSA[10]稀疏重構(gòu)算法獨(dú)立重建關(guān)鍵幀得到;對(duì)CS幀按如下步驟重建:將重建關(guān)鍵幀插值生成預(yù)測(cè)幀pI,稀疏重構(gòu)預(yù)測(cè)殘差,得到初始重建幀,然后結(jié)合重建關(guān)鍵幀,通過(guò)運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)生成CS幀的預(yù)測(cè)幀pM,再次進(jìn)行預(yù)測(cè)殘差稀疏重構(gòu)得到最終的重建圖像。
圖1 CVS_MCP算法結(jié)構(gòu)框圖
所提算法對(duì)CS幀整幀全局觀測(cè),避免了分塊壓縮傳感[7-9]方法面臨的塊效應(yīng)以及觀測(cè)數(shù)分配等問(wèn)題(例如需要解碼端反饋觀測(cè)數(shù)的分配信息[9])。也不同于Do等[8]的分塊和整幀觀測(cè)結(jié)合的方法,面臨如何分配兩類觀測(cè)數(shù)的問(wèn)題;并且 Prades-Nebot[7]和 Do[8]等算法中關(guān)鍵幀采用H.264幀內(nèi)編碼方法,復(fù)雜度較高,與單像素?cái)z像機(jī)[3]也不兼容。所提算法對(duì)關(guān)鍵幀和CS幀采用相同的編碼結(jié)構(gòu),與單像素?cái)z像機(jī)完全兼容。
算法選用性能較好且運(yùn)算快速的重疊塊運(yùn)動(dòng)補(bǔ)償方法(OBMC)[11]生成預(yù)測(cè)幀pM,但與編碼端運(yùn)動(dòng)估計(jì)不同,解碼端的運(yùn)動(dòng)估計(jì)中原始幀無(wú)法獲得,先通過(guò)插值重建關(guān)鍵幀生成預(yù)測(cè)幀pI,然后稀疏重構(gòu)預(yù)測(cè)殘差生成初始重建幀作為運(yùn)動(dòng)估計(jì)中的目標(biāo)幀,保證了目標(biāo)幀具有與重建關(guān)鍵幀近似的信噪比。解碼端不需要編碼傳輸運(yùn)動(dòng)矢量,采用更為稠密的運(yùn)動(dòng)矢量場(chǎng)可以提高運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)的準(zhǔn)確性。所以,算法采用了重疊塊運(yùn)動(dòng)估計(jì),選擇16×16塊,重疊步長(zhǎng)設(shè)定為4像素,以絕對(duì)差之和作為塊匹配準(zhǔn)則。算法支持前向運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)(Forward MCP,F(xiàn)MCP)和雙向運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)(Bidirectional MCP,BMCP)兩種方式,前者僅由前一關(guān)鍵幀運(yùn)動(dòng)補(bǔ)償預(yù)測(cè),后者還使用后一關(guān)鍵幀,預(yù)測(cè)幀為前后兩幀運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)的簡(jiǎn)單平均。與FMCP相比,BMCP殘差較小,但需先重建下一圖像組中的關(guān)鍵幀才能重建當(dāng)前CS幀,增大了解碼延時(shí)。
按Chen等[9]文章的測(cè)試條件,設(shè)定圖像組內(nèi)幀數(shù)GOP=2,在不同觀測(cè)率MR下,對(duì)典型測(cè)試序列News.qcif,F(xiàn)oreman.qcif(176×144)以及 Football.cif(352×240)(運(yùn)動(dòng)程度和復(fù)雜度依次由低到高)的前51幀的Y分量壓縮傳感。分配給CS幀較少的觀測(cè)數(shù),圖像組內(nèi)的觀測(cè)率分配為:關(guān)鍵幀 MR_K=min(0.9 ×MR ×GOP,0.6),CS幀MR_CS=(MR×GOP-MR_K)/(GOP-1)。采用前向運(yùn)動(dòng)補(bǔ)償和雙向運(yùn)動(dòng)補(bǔ)償兩種方式(CVS_FMCP和CVS_BMCP),稀疏重構(gòu)算法SpaRSA[10]的參數(shù)為默認(rèn)設(shè)置。
比較所提算法與全局冗余字典(Global-Dict)[9]、局部冗余字典(Local-Dict)[7-8]及基準(zhǔn) CS(Baseline CS)[5]等3種算法的平均重建質(zhì)量(指標(biāo)為峰值信噪比PSNR),結(jié)果見(jiàn)表1。在MR≥0.2時(shí),CVS_BMCP算法比其他3種算法的重建質(zhì)量都有不同程度的提高,對(duì)運(yùn)動(dòng)復(fù)雜度低的News序列,PSNR提高約0.9~4.1 dB,對(duì)運(yùn)動(dòng)復(fù)雜度中等或較高的序列,PSNR提高0.15~2.6 dB。但在MR=0.1時(shí),由于關(guān)鍵幀的觀測(cè)率低于0.2,關(guān)鍵幀重建質(zhì)量比較差,嚴(yán)重影響了CS幀的運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)準(zhǔn)確性,所以CVS_BMCP算法的重建質(zhì)量低于Global-Dict算法(在GOP較大時(shí)所提算法性能更好,詳見(jiàn)下一段的測(cè)試結(jié)果),但仍然比其他兩種算法的PSNR高出4 dB以上。而CVS_FMCP算法比CVS_BMCP算法的重建質(zhì)量低0.3~1.5 dB,在MR≤0.2時(shí)性能也比Global-Dict略差,但與其他兩種算法相比PSNR提高了3 dB以上。
表1 不同序列的重建質(zhì)量
在不同圖像組GOP設(shè)定下,測(cè)試CVS_BMCP算法的性能,對(duì)PETS序列(無(wú)線視頻監(jiān)控或無(wú)線視頻傳感網(wǎng)絡(luò)應(yīng)用)的測(cè)試結(jié)果如圖2所示。低觀測(cè)率下(MR≤0.25),當(dāng)GOP逐漸增大時(shí),圖像重建質(zhì)量有明顯改善,PETS序列的PSNR提高了3.5~9.0 dB,主要是因?yàn)榉峙浣o關(guān)鍵幀更高的觀測(cè)率,其重建質(zhì)量獲得了大幅提高,預(yù)測(cè)殘差也更稀疏,CS幀的重建質(zhì)量也有相應(yīng)提高。圖3給出了重建的PETS序列第9幀,與基準(zhǔn)CS算法相比,采用CVS_BMCP算法(GOP=6)重建幀的PSNR提高了11.4 dB,主觀視覺(jué)質(zhì)量也有顯著提升。值得指出,對(duì)PETS序列,在MR=0.1,GOP=6時(shí),重建幀PSNR達(dá)到了32 dB,所提算法更加適合低觀測(cè)率下的背景靜止的無(wú)線視頻監(jiān)控類應(yīng)用。
圖2 不同GOP時(shí)PETS序列的重建質(zhì)量
圖3 PETS序列第9幀重建CS幀(MR=0.15)
依據(jù)運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)殘差比原始圖像更稀疏這一特點(diǎn),提出了一種分布式視頻壓縮傳感算法。仿真測(cè)試表明,在相同觀測(cè)率下,通過(guò)將觀測(cè)數(shù)優(yōu)先分配給關(guān)鍵幀,提高了關(guān)鍵幀的重建質(zhì)量以及運(yùn)動(dòng)補(bǔ)償預(yù)測(cè)幀的準(zhǔn)確性,對(duì)預(yù)測(cè)殘差稀疏重構(gòu)則提高了CS幀重建質(zhì)量,非常適合攝像機(jī)靜止的無(wú)線低功耗視頻監(jiān)控與無(wú)線視頻傳感網(wǎng)絡(luò)類應(yīng)用。后續(xù)需深入研究的幾個(gè)問(wèn)題是:在極低觀測(cè)率下尚需進(jìn)一步提高算法性能;還需解決觀測(cè)值的量化、熵編碼以及碼率控制等問(wèn)題,以提高編碼效率;開(kāi)發(fā)更加快速實(shí)用的稀疏重構(gòu)算法。
[1]DONOHO D L.Compressed sensing[J].IEEE Trans.Information Theory,2006,52(4):1289-1306.
[2]BARANIUK R G.Compressive sensing[J].IEEE Signal Processing Magazine,2007,24(4):118-124.
[3]DUARTE M F,DAVENPORT M A,TAKHAR D,et al.Single-pixel imaging via compressive sampling[J].IEEE Signal Processing Magazine,2008,25(2):83-91.
[4]李樹(shù)濤,魏丹.壓縮傳感綜述[J].自動(dòng)化學(xué)報(bào),2009,35(11):1369-1377.
[5]GAN L,DO T T,TRAN T D.Fast compressive imaging using scrambled block hadamard ensemble[EB/OL]. [2011-10-12].http://dsp.rice.edu/sites/dsp.rice.edu/files/cs/scrambled_blk_WHT.pdf.
[6]KANG L W,LU C S.Distributed compressive video sensing[C]//Proc.of IEEE International Conference on Acoustics,Speech,and Signal Processing 2009.Taipei:IEEE Press,2009:1169-1172.
[7]PRADES-NEBOT J,MA Y,HUANG T.Distributed video coding using compressive sampling[C]//IEEE Picture Coding Symposium,2009.Chicago:IEEE Press,2009:1-4.
[8]DO T T,CHEN Y,NGUYEN D T,et al.Distributed compressed video sensing[EB/OL].[2011-10-12].http://thanglong.ece.jhu.edu/Tran/Pub/DISCOS_ICIP2009.pdf.
[9]CHEN H W,KANG L W,LU C S.Dynamic measurement rate allocation for distributed compressive video sensing[EB/OL].[2011-10-11].http://vcip2010.ustc.edu.cn/BPC/Special/Dynamic%20measurement%20rate%20allocation% 20for% 20distributed% 20compressive% 20video%20sensing.pdf.
[10]WRIGHT S J,NOWAK R D,F(xiàn)IGUEIREDO M A T.Sparse reconstruction by separable approximation[J].IEEE Trans.Signal Processing,2009,57(8):2479-2493.
[11]ORCHARD M T,SULLIVAN G J.Overlapped block motion compensation:an estimation-theoretic approach[J].IEEE Trans.Image Processing,1994,3(5):693-699.