張偉,王宇,陳新怡,王延文,景慶陽,雷為民
(東北大學(xué)計算機科學(xué)與工程學(xué)院,遼寧 沈陽 110169)
隨著監(jiān)控設(shè)備開始向超高清時代邁進(jìn)及監(jiān)控設(shè)備部署數(shù)量的不斷增加,監(jiān)控視頻數(shù)據(jù)量的增長速度已遠(yuǎn)大于視頻編碼效率的提升速度。海量視頻數(shù)據(jù)給視頻存儲和傳輸環(huán)節(jié)帶來了極大挑戰(zhàn),進(jìn)一步提高監(jiān)控視頻壓縮率成為一個亟待解決的問題。
目前,視頻監(jiān)控業(yè)務(wù)一般采用 H.264/AVC(advanced video coding)[1]、H.265/HEVC(high efficiency video coding)[2]等傳統(tǒng)編碼標(biāo)準(zhǔn)進(jìn)行編碼壓縮。然而,這些通用視頻編碼標(biāo)準(zhǔn)并沒有針對監(jiān)控業(yè)務(wù)本身的特性提出有效的解決方案,忽略了監(jiān)控視頻中存在的一種特殊冗余信息,即背景冗余。背景冗余是指由于監(jiān)控視頻一般在固定位置拍攝,視頻中的背景信息呈現(xiàn)短時間內(nèi)固定不變、長時間內(nèi)緩慢變化或規(guī)律性變化的特性。由此可見,傳統(tǒng)編碼標(biāo)準(zhǔn)的編碼效率在監(jiān)控視頻業(yè)務(wù)方面尚有較大提升空間。
針對如何去除監(jiān)控視頻中存在的背景冗余問題,基于背景的監(jiān)控視頻編碼方法[3-4]成為近年的研究熱點。該類方法通過對背景圖像進(jìn)行建模,并將背景圖像設(shè)為長期參考幀來提升編碼效率,借助視頻編碼標(biāo)準(zhǔn)中幀間預(yù)測過程的參考幀技術(shù),易部署于各類視頻編碼器,具有廣闊的應(yīng)用前景。雖然此類方法已取得一定研究成果,但仍存在諸多問題。
1) 編碼效率的提升依賴于背景參考幀的生成質(zhì)量,而傳統(tǒng)背景建模技術(shù)生成的背景參考幀質(zhì)量較差,普遍存在前景拖影、前景誤判為背景等問題。
2) 傳統(tǒng)背景建模技術(shù)生成的背景參考幀一般需要高質(zhì)量編碼,并一次性傳輸至解碼端完成參考幀列表同步,易發(fā)生碼率突增從而引起網(wǎng)絡(luò)擁塞、時延卡頓等問題,影響用戶體驗質(zhì)量。
3) 現(xiàn)有基于背景的監(jiān)控視頻編碼方法一般以幀為單位更新背景參考幀。出于對背景更新頻率與其碼率消耗間的權(quán)衡,當(dāng)部分背景區(qū)域發(fā)生變化時并不會及時更新,使這部分變化的背景區(qū)域得不到及時參考利用。
4) 在視頻會議場景中,由于人物遮擋等原因無法獲得部分區(qū)域的真實背景,傳統(tǒng)背景建模方法生成的背景參考幀中包含大量無效的參考區(qū)域,對此類背景幀編碼傳輸存在碼流浪費問題。
針對上述問題,本文提出一種以圖像塊為基本單元的漸進(jìn)式背景參考幀生成方法,借鑒像素碼本模型思想,構(gòu)建以圖像塊為處理單元的碼本模型。在視頻編碼過程中,利用基于感知哈希的碼元匹配過程,將視頻序列中處于同一位置的圖像塊進(jìn)行聚類;分析并利用背景圖像區(qū)域特性,準(zhǔn)確判定碼本中的背景碼元。利用碼本模型從不同視頻幀中檢測出干凈背景圖像塊,并漸進(jìn)式生成完整高質(zhì)量的背景參考幀。背景參考幀的生成、更新及傳輸機制均以圖像塊為單位,過程跨越幾十至上百幀,可以有效平滑碼流,并避免背景參考幀更新不及時和碼流浪費問題。本文主要貢獻(xiàn)包括以下3 個方面。
1) 提出一種漸進(jìn)式背景參考幀生成方法,利用視頻序列中的圖像塊建立并更新圖像塊碼本模型,從中檢測出干凈背景圖像塊,通過提取不同幀中檢測到的背景圖像塊漸進(jìn)式生成完整的背景參考幀。
2) 提出融入漸進(jìn)式生成背景參考幀機制的視頻編碼框架,以H.265/HEVC 編碼為例,在此框架下設(shè)計了背景參考幀的生成、更新和傳輸過程。
3) 將所提方法在PKU-SVD-A 數(shù)據(jù)集以及H.265/HEVC 標(biāo)準(zhǔn)測試序列上進(jìn)行驗證,實驗結(jié)果表明,所提方法比標(biāo)準(zhǔn)HM16.20 在PKU-SVD-A 數(shù)據(jù)集上實現(xiàn)了17.89%的編碼效率增益,有效提升了背景參考幀質(zhì)量,且復(fù)雜度滿足視頻實時性需求,適用于背景穩(wěn)定的監(jiān)控類和會議視頻業(yè)務(wù)。
1) 基于背景的監(jiān)控視頻編碼方法
此類方法的編碼效率依賴于背景參考幀的生成質(zhì)量,因此如何選取或生成背景參考幀是這類方法的主要研究內(nèi)容。文獻(xiàn)[5]最早使用長期參考幀(LTR,long-term reference frame)機制來提升監(jiān)控視頻、會議視頻的編碼性能。文獻(xiàn)[6]將關(guān)鍵幀直接用作長期背景參考幀。文獻(xiàn)[7]選取Skip 編碼模式數(shù)量最多的編碼幀作為背景參考幀。這些研究均從已解碼幀中選取背景參考幀,由于視頻幀中通常含有前景信息,導(dǎo)致解碼后選定的背景參考幀的編碼質(zhì)量不高。
在如何生成背景參考幀方面,文獻(xiàn)[8]使用解碼后的重建幀訓(xùn)練生成背景參考幀,雖然不需要編碼傳輸背景參考幀,但是由于重建幀存在失真,導(dǎo)致生成背景參考幀的失真更嚴(yán)重。更多研究使用原始圖像訓(xùn)練生成背景參考幀[9-11],這類方法一般使用混合高斯背景建模技術(shù)等傳統(tǒng)背景建模方法生成背景參考幀,但仍普遍存在前景拖影、前景誤判為背景等現(xiàn)象,而且一次性傳輸至解碼端易發(fā)生碼率突增問題。為了解決碼率突增問題,文獻(xiàn)[12]提出了基于雙背景參考幀的編碼方案,對原始圖像和重建圖像分別訓(xùn)練生成2 個背景幀,編碼傳輸2 個背景幀之間的殘差幀完成編解碼器同步,但是背景幀更新仍以幀為單位,小部分背景區(qū)域發(fā)生變化時不會得到及時更新和參考利用。
有些學(xué)者通過建立背景字典庫的方式消除背景冗余。對于衛(wèi)星視頻編碼,文獻(xiàn)[13]以谷歌地球中存儲的圖像作為背景字典庫,根據(jù)衛(wèi)星所處地理位置坐標(biāo)在背景字典庫中搜索背景參考幀。對于交通監(jiān)控視頻編碼,文獻(xiàn)[14]提前建立車輛庫模型用于后續(xù)的預(yù)測編碼;文獻(xiàn)[15]通過視頻采集過往車輛和背景信息建立車輛庫和背景庫,編碼時在所建庫中檢索車輛和背景作為參考進(jìn)行預(yù)測編碼。
2) 基于感興趣區(qū)的監(jiān)控視頻編碼方法
基于背景的監(jiān)控視頻壓縮方法側(cè)重于提高監(jiān)控視頻的壓縮率,而基于感興趣區(qū)(ROI,region of interest)的編碼方法則是基于人眼視覺特性,更側(cè)重于在有限的碼率下合理分配碼率實現(xiàn)提高主觀感受質(zhì)量的目的[16]。其中,準(zhǔn)確提取感興趣區(qū)是該類方法的研究重點。感興趣區(qū)可以通過手動設(shè)置、眼球跟蹤設(shè)備記錄或者內(nèi)容識別算法預(yù)測得出[17-18]。基于深度學(xué)習(xí)的ROI 識別是當(dāng)前較有效的手段。感興趣區(qū)包括中心區(qū)域ROI、人臉ROI、字幕ROI 等。鑒于監(jiān)控視頻中能夠引起人們視覺注意的是人、車輛等特定對象的變化,大部分研究將運動目標(biāo)作為監(jiān)控視頻的感興趣區(qū)。文獻(xiàn)[19]提出一種運動目標(biāo)檢測方法,根據(jù)運動信息將對象與背景分離,不需要訓(xùn)練序列即可同時完成對象檢測和背景估計,但是當(dāng)前景在視頻序列中有短暫停留時,該方法會將靜止的前景過擬合為背景區(qū)域,從而出現(xiàn)漏檢現(xiàn)象。
我國自主制定的安防監(jiān)控音視頻編碼標(biāo)準(zhǔn)(AVS-S,audio video coding standard for surveillance)提供了基于靈活條帶和條帶集的ROI 編碼方法[20],鑒于許多監(jiān)控應(yīng)用的監(jiān)控區(qū)域是固定的,壓縮標(biāo)準(zhǔn)提供了可以預(yù)先設(shè)定ROI 的交互接口。其他視頻編碼標(biāo)準(zhǔn)沒有針對ROI 特定設(shè)計,將視頻畫面中每個像素看成同等重要,研究表明ROI 編碼對H.265/HEVC 等標(biāo)準(zhǔn)同樣可提升編碼性能[21-23]。
3) 基于語義的會議視頻編碼方法
此類方法認(rèn)為傳統(tǒng)手工設(shè)計的混合編碼框架下的視頻壓縮性能已經(jīng)趨于極限,設(shè)想突破傳統(tǒng)方法中以視頻低層特征(如顏色、運動、紋理)表示視頻的局限性,對視頻中的高級語義信息進(jìn)行特征提取,在解碼端利用這些高級語義特征重建視頻,例如,提取面部關(guān)鍵點[24-25]對人臉及表情變化進(jìn)行建模,提取骨骼關(guān)鍵點[26]對人體運動信息進(jìn)行表征,解碼端通過生成式對抗網(wǎng)絡(luò)利用解碼后的關(guān)鍵點信息重建面部或者人體姿態(tài)。在視頻會議場景中,多項研究提取人物邊緣信息[27-28],在解碼端利用pix2pix[29]等重建網(wǎng)絡(luò)還原人物信息。上述研究在簡單場景中可獲得一定的壓縮增益,但是對非人臉及復(fù)雜的前景對象無法獲得理想的效果。
基于背景的監(jiān)控視頻編碼研究中,很多方法利用傳統(tǒng)背景建模技術(shù)生成背景圖像。
1) 混合高斯背景建模算法
單高斯背景建模算法[30]受光線等各種干擾因素影響導(dǎo)致穩(wěn)健性較差,在此基礎(chǔ)上誕生了混合高斯背景建模算法[31-33]。混合高斯背景建模算法中,每個像素點的分布是多個高斯分布模型的疊加狀態(tài),如閃爍的屏幕、搖擺的樹葉等,在長期觀測下像素點會在多個像素值附近聚集,為每個像素點聚集處設(shè)置一個高斯分布表示。該算法仍然存在很多問題,例如,停止運動或者移動緩慢的前景在長期觀測下也會聚集大量像素點,產(chǎn)生一個以該前景像素點為中心的高斯分布模型,導(dǎo)致前景被誤判為背景,生成的背景圖像也會出現(xiàn)前景拖影等現(xiàn)象,如圖1 方框所示。另外,在背景建模過程中使用多個高斯分布模型,涉及大量浮點運算,導(dǎo)致時間復(fù)雜度較高。
圖1 混合高斯背景建模算法生成的背景圖像
2) 中值濾波法
基本的中值濾波法使用當(dāng)前幀的前N幀圖像的中值作為背景幀[34],改進(jìn)方法使用前N幀圖像、下采樣圖像和之前計算出的中值加權(quán)得出背景幀[35],增加背景模型的穩(wěn)定性。此方法的缺點是需要較大緩存空間,在實際應(yīng)用中尤其是在微型設(shè)備上難以實現(xiàn)。AVS-S 將訓(xùn)練視頻幀劃分成若干個數(shù)據(jù)段,使用分段加權(quán)滑動平均值法生成背景參考幀。這種方法雖然時間復(fù)雜度較低,但是生成的背景圖像仍然存在受前景污染嚴(yán)重的問題。
干凈的背景參考幀是保證監(jiān)控視頻能夠獲得理想壓縮性能的關(guān)鍵因素。已有的基于背景的監(jiān)控視頻編碼方法以圖像幀為單位編碼、傳輸和更新背景參考幀,與此不同,本文提出以圖像塊為單位,從多個視頻幀中檢測出背景圖像塊漸進(jìn)式地合成背景參考幀,具體過程如下。在視頻編碼過程中,構(gòu)建圖像塊碼本模型,利用基于感知哈希的碼元匹配過程,將視頻序列中處于同一位置的圖像塊進(jìn)行聚類;利用背景圖像區(qū)域特性,準(zhǔn)確判定碼本中的背景碼元。利用碼本模型,檢測視頻幀中與背景碼元相匹配的干凈背景圖像塊,并對首次出現(xiàn)的背景圖像塊進(jìn)行標(biāo)記和高質(zhì)量編碼,解碼后提取出帶標(biāo)記背景圖像塊,替換背景參考幀中的對應(yīng)區(qū)域。這種方式以圖像塊為單位漸進(jìn)式生成高質(zhì)量背景參考幀,并且在編碼過程中有效避免了一次性傳輸背景幀導(dǎo)致的碼率突增問題。
本節(jié)介紹融入漸進(jìn)式生成背景參考幀機制的視頻編碼整體框架。以H.265/HEVC 編碼為例,融入漸進(jìn)式生成背景幀的視頻編碼框架如圖2 所示,本文以圖像塊為單元的背景參考幀生成方式與以圖像塊為編碼單元的標(biāo)準(zhǔn)視頻編碼框架易于結(jié)合,涉及生成背景參考幀部分的編碼流程如下。
圖2 融入漸進(jìn)式生成背景幀的視頻編碼框架
步驟1背景參考幀初始化。將H.265/HEVC編碼器編碼的第一個I 幀初始化為背景參考幀,并將其插入?yún)⒖紟斜碜鳛殚L期背景參考幀。
步驟2背景圖像塊檢測與標(biāo)記。將待編碼圖像幀分割成互不重疊的圖像塊,分割方式與編碼器劃分編碼樹單元(CTU,coding tree unit)方式一致;以圖像塊為處理單元,利用碼元匹配過程更新圖像塊碼本模型;若待編碼圖像塊與碼本中的背景碼元相匹配,則為背景圖像塊,為避免對背景參考幀的同一區(qū)域重復(fù)編碼和更新,僅標(biāo)記首次匹配的背景圖像塊。
步驟3視頻幀編碼。對帶標(biāo)記背景圖像塊進(jìn)行高質(zhì)量編碼,對其他圖像塊則以默認(rèn)參數(shù)編碼。高質(zhì)量編碼可通過減小量化參數(shù)來實現(xiàn),本文第4 節(jié)實驗部分帶標(biāo)記背景圖像塊的量化參數(shù)相對于默認(rèn)量化參數(shù)降低10。
步驟4漸進(jìn)式生成背景參考幀。編解碼器重建編碼幀并存入解碼圖像緩沖區(qū)后,提取帶標(biāo)記背景圖像塊,用其替換長期背景參考幀中的對應(yīng)區(qū)域,為后續(xù)編碼幀提供更高質(zhì)量的參考幀。
從視頻幀中檢測到干凈、真實的背景圖像塊是本文漸進(jìn)式生成背景參考幀方法的核心目標(biāo)。借鑒像素碼本模型[36-37]的聚類思想,本文提出圖像塊碼本模型用于檢測視頻幀中的背景圖像塊。像素碼本模型是一種以像素為處理單位的前景背景分割算法,一個碼本包含若干碼元,用于描述一個連續(xù)采樣的像素。在訓(xùn)練階段,根據(jù)像素值大小放入不同碼元,利用背景像素通常比前景像素出現(xiàn)更頻繁的特性,提取能夠代表背景像素值范圍的碼元即背景碼元;在檢測階段,將與背景碼元像素值范圍相匹配的像素檢測為背景像素。與像素碼本模型不同,本文方法不再以像素而是以圖像塊為基本單位進(jìn)行統(tǒng)計建模。
圖像塊碼本模型利用碼本描述連續(xù)采樣的圖像塊,為視頻幀的每個圖像塊位置維護(hù)一個碼本,碼本中包含若干碼元,碼元為候選背景圖像塊的集合,通過圖像塊間的相似度匹配將序列中處于同一位置的圖像塊進(jìn)行有效區(qū)分并放入不同碼元,使其中某個碼元所包含的圖像塊均為真實、干凈的背景圖像塊,稱為背景碼元。碼本分析過程定期從碼本中檢測并更新背景碼元。碼本成員信息和碼元成員信息如表1 和表2 所示。
表1 碼本成員信息
表2 碼元成員信息
圖像塊碼本模型工作過程如下。
步驟1碼本初始化。為視頻幀的每個圖像塊位置維護(hù)一個碼本,在視頻編碼開始時,所有碼本初始化為空。
步驟2圖像塊的運動度量。評估待編碼圖像塊的運動情況,若運動度量值小于設(shè)定閾值,則判斷其為潛在背景塊。
步驟3碼元匹配。將潛在背景塊與其所處位置對應(yīng)碼本進(jìn)行碼元匹配,若匹配成功,則將該潛在背景塊放入匹配碼元并更新碼元參數(shù);若匹配失敗或碼本為空,則新建一個碼元并將該潛在背景塊放入新建碼元。
步驟4碼本分析。在視頻編碼過程中,對每個碼本周期性地執(zhí)行該過程,更新碼本的背景碼元,并清理沒有潛力的碼元,精簡碼本模型規(guī)模。
在視頻編碼過程中,利用視頻序列中的待編碼圖像塊通過步驟2 至步驟4 持續(xù)更新圖像塊碼本模型。在步驟3,若與潛在背景塊匹配成功的是背景碼元,則該潛在背景塊被判定為背景圖像塊。為了防止背景參考幀的重復(fù)編碼和更新,編碼器僅對首次匹配的背景圖像塊進(jìn)行一次高質(zhì)量編碼。
運動特性是區(qū)分圖像前景和背景的重要手段。固定位置拍攝的監(jiān)控視頻中,背景區(qū)域較穩(wěn)定,而運動目標(biāo)所在區(qū)域在相鄰幀中像素值存在明顯差異。為了提高背景圖像塊檢測精度,本文利用運動特征對圖像塊進(jìn)行預(yù)處理,粗略篩選出潛在背景塊,由于此階段對精度要求不高,選用復(fù)雜度較低的幀間差分法來評估圖像塊的運動情況。圖像塊的運動度量如圖3 所示。
圖3 圖像塊的運動度量
對相鄰幀中同一位置圖像塊做差分運算得到差分圖像塊,將中的像素均值作為圖像塊的運動度量值,利用與設(shè)定閾值的大小關(guān)系將圖像塊劃分為前景圖像塊與潛在背景塊。
視頻幀的運動度量效果示意如圖4 所示,圖4(c)中白色區(qū)域為潛在背景塊,黑色塊為前景塊。
圖4 視頻幀的運動度量效果示意
由于攝像頭的抖動及噪聲干擾,導(dǎo)致畫面的像素值變化整體偏高,區(qū)分噪聲和真實運動較困難,不宜將運動閾值設(shè)置過低。另一方面,緩慢運動或突然停止運動的前景均呈現(xiàn)較低的運動度量值。為此,僅將圖像塊的運動度量作為預(yù)處理,后續(xù)的碼元匹配與碼本分析過程精確檢測背景圖像塊。
碼元匹配過程將視頻序列中連續(xù)采樣的圖像塊分配到相應(yīng)碼本的不同碼元,由于噪聲干擾和攝像頭抖動等諸多因素,不能簡單地根據(jù)圖像塊間差值的大小來實現(xiàn)碼元匹配。為了提高穩(wěn)健性,本文提出基于感知哈希的碼元匹配算法。與傳統(tǒng)加密哈希不同,相似輸入的感知哈希值也是相似的。利用感知哈希值的可比較性,將圖像塊感知哈希值之間的漢明距離作為圖像塊間的相似度度量,并據(jù)此將同一位置的圖像塊分配至相應(yīng)碼本的不同碼元。圖像塊X的感知哈希值計算如下
其中,GRAY 表示對圖像塊進(jìn)行灰度化處理;SCALE 表示對圖像塊進(jìn)行縮放處理;DCT8×8表示計算圖像塊的DCT 系數(shù)矩陣,并選取系數(shù)矩陣左上角的8 × 8矩陣,保留DCT 系數(shù)矩陣的低頻信息;AVG 表示計算矩陣元素的平均值;BIN 表示按照閾值完成系數(shù)矩陣的二值化;VEC 表示將二值化的矩陣按照固定順序拉伸為向量形式的哈希值。
起始階段所有碼本初始化為空。設(shè)待處理的潛在背景塊為第t幀第i個圖像塊,圖像幀第i個圖像塊位置對應(yīng)碼本CBi。碼元匹配過程簡單描述如下。計算感知哈希值H()與碼本CBi中各碼元cej(1 ≤j≤L)感知哈希值H(cej.mat)之間的漢明距離,選取具有最小漢明距離的碼元cek,若最小漢明距離大于閾值D則表明匹配失敗,需要新建一個碼元并將放入新建碼元;否則表明匹配成功,將放入該碼元cek,更新碼元cek的成員信息,其中,中心圖像塊mat 更新為
碼本分析過程周期性地檢測或更新碼本中的背景碼元,并精簡碼本模型規(guī)模。工作原理是依據(jù)本文分析觀察到的背景圖像塊的3 個特征。
特征1背景圖像塊出現(xiàn)頻率f高。圖像區(qū)域劃分示意如圖5 所示,按照前景出現(xiàn)頻率可將圖像幀劃分為2 類區(qū)域,I 類區(qū)域中前景出現(xiàn)頻率低,多為干凈背景,而II 類區(qū)域中前景出現(xiàn)頻率較高。為此,I 類區(qū)域內(nèi)的碼本中,背景碼元與其他碼元相比包含更多的圖像塊,且圖像塊出現(xiàn)頻率f較高。圖像序列I 類區(qū)域中的背景碼元如圖6 所示,視頻序列中的右上角圖像塊始終為背景圖像塊,該位置碼本中背景碼元的圖像塊出現(xiàn)頻率f將近似于視頻幀數(shù)。由此I 類區(qū)域內(nèi)的碼本可以利用圖像塊出現(xiàn)頻率f區(qū)分出背景碼元。
圖5 圖像區(qū)域劃分示意
圖6 圖像序列I 類區(qū)域中的背景碼元
特征2背景圖像塊間隔式出現(xiàn)。圖像序列II類區(qū)域中的背景碼元如圖7 所示。II 類區(qū)域中前景出現(xiàn)頻繁,背景碼元和其他碼元的圖像塊出現(xiàn)頻率無顯著差異。有些場景中,背景圖像塊呈現(xiàn)出間隔式出現(xiàn)的規(guī)律,如圖7 所示的走廊區(qū)域的背景圖像塊。本文將這種規(guī)律量化為碼元中時間相鄰圖像塊之間的間隔幀數(shù)累加值λ,II 類區(qū)域內(nèi)的碼本可借助λ區(qū)分出背景碼元。
圖7 圖像序列II 類區(qū)域中的背景碼元
特征3背景圖像塊的紋理復(fù)雜度較低。在一些復(fù)雜場景,如十字路口等紅燈的汽車、突然停下的行人等,根據(jù)上述2 種特性區(qū)分背景碼元將發(fā)生誤判。觀察可知,背景圖像與前景圖像相比內(nèi)部一般是平坦的。本文使用灰度共生矩陣方法[38]統(tǒng)計圖像的紋理特征信息,選用灰度共生矩陣的熵值(ENT,entropy)和逆差矩(IDM,inverse different moment)特征表示圖像塊的紋理復(fù)雜度。其中,ENT 表示圖像塊內(nèi)容的隨機性,反映了圖像塊的信息量和復(fù)雜度,ENT 越大表明圖像紋理越復(fù)雜;IDM 反映圖像塊分布平滑度的度量,IDM 越大表明圖像越均勻。
其中,p(i,j)表示特定位置關(guān)系下的像素對的頻率,i和j為2 個像素點的灰度量化值。
利用第4 節(jié)使用的監(jiān)控視頻公開數(shù)據(jù)集驗證特征3,圖像塊的紋理復(fù)雜度比較如圖8 所示,受前景污染的圖像塊的ENT 均大于干凈的背景塊,IDM 均小于干凈的背景塊。本文通過圖像塊的ENT 和IDM 區(qū)分干凈背景塊與受前景污染的圖像塊,降低前景誤判為背景的概率,并在誤判發(fā)生后及時更正背景幀中的錯誤背景塊。
圖8 圖像塊的紋理復(fù)雜度比較
根據(jù)上述特性,利用碼本中各碼元包含的圖像塊數(shù)量、相鄰圖像塊之間的間隔幀數(shù)累加值以及圖像塊紋理復(fù)雜度等指標(biāo)區(qū)分出背景碼元。具體為根據(jù)特征1 和特征2,選取碼本中包含圖像塊數(shù)量最多且其值大于閾值Thf的碼元,以及選取碼本中相鄰圖像塊之間間隔幀數(shù)累加值最大且其值大于閾值Thx的碼元,將其判定為潛在背景碼元;若碼本尚無背景碼元,且只有一個潛在背景碼元,將潛在背景碼元直接判定為背景碼元,否則根據(jù)特征3,將圖像塊紋理復(fù)雜度最低的潛在背景碼元判定為背景碼元;若碼本已有背景碼元,則從潛在背景碼元和原有背景碼元中選取紋理復(fù)雜度最低的圖像塊,將其設(shè)定為新的背景碼元。
考慮到模型的空間和時間復(fù)雜度,在碼本分析的最后一步精簡碼本模型的規(guī)模,只保留f和λ值較大的碼元。本文第4 節(jié)實驗對于已有背景碼元的碼本,只保留背景碼元以及f和λ值最大的前2 個碼元;對于尚無背景碼元的碼本,保留碼本中f和λ值最大的前5 個碼元。
為了驗證算法有效性,對背景參考幀的生成質(zhì)量以及將其分別應(yīng)用于監(jiān)控視頻和會議視頻2 種場景中的編碼性能進(jìn)行分析。
選取北京大學(xué)監(jiān)控視頻公開數(shù)據(jù)集PKU-SVD-A[39]中的若干序列作為測試數(shù)據(jù),與基于像素碼本模型的背景建模方法(CB)[36],以及最常用的2 種經(jīng)典背景建模方法——高斯混合模型(GMM,Gaussian mixture model)和分段加權(quán)滑動平均值(SWRA,subsection weighted moving average)法進(jìn)行對比。3 個測試序列如圖9 所示,場景分別為道路十字路口、教室門口和校園。
圖9 測試序列示意
圖10~圖12 為3 個測試序列應(yīng)用不同方法在第100 幀、200 幀、300 幀時生成的背景參考幀。由于本文方法漸進(jìn)式生成背景參考幀,在測試過程中仍未生成背景的區(qū)域以黑色圖像塊表示。最右列為生成背景參考幀的部分區(qū)域的細(xì)節(jié)展示。
圖10 Crossroad 序列的背景參考幀
從圖10~圖12 中方框圈出的區(qū)域①可看出,GMM、SWRA 和CB 生成的背景參考幀含有大量人物拖影,即存在前景拖影現(xiàn)象。從區(qū)域②可看出,這3 種方法同時還存在前景誤判為背景的現(xiàn)象,圖10中等待紅燈的出租車以及圖11 中停留交談的2 個行人均被誤判為背景。這些誤判導(dǎo)致生成的背景參考幀的真實性下降,嚴(yán)重影響其作為背景參考幀帶來的編碼性能增益。根本原因在于GMM、SWRA 和CB 均屬于以像素為處理單位的建模方法。
圖11 Classover 序列的背景參考幀
圖12 Campus 序列的背景參考幀
從代表仍未生成背景的黑色圖像塊可以看出,相對I 類區(qū)域,本文方法對II 類區(qū)域(即有前景干擾區(qū)域)較晚提取出背景圖像塊,但在第300 幀之前漸進(jìn)式提取出所有真實背景圖像塊,生成了完整的、干凈真實的背景參考幀。本文方法不存在前景拖影和前景誤判為背景的問題,原因在于本文方法不是逐像素按照某種規(guī)則生成背景幀,而是從多個視頻幀中以圖像塊為單位提取出背景塊。
選擇型號為AMD Ryzen 5 3500U 的CPU 平臺對不同方法的時間復(fù)雜度進(jìn)行比較,結(jié)果如表3 所示。從表3 可以看出,本文方法平均時間復(fù)雜度最低,運行包含500 幀圖像的測試序列平均僅需16.061 s,即每秒平均處理31.13 幀,滿足視頻編碼的實時性處理需求。
表3 不同方法時間復(fù)雜度對比
會議視頻序列的生成背景參考幀如圖13 所示。在會議視頻中,由于人物遮擋導(dǎo)致真實的背景區(qū)域始終無法獲得,GMM、SWRA 和CB 生成的背景參考幀會包含大量無效區(qū)域。本文方法以圖像塊為單元漸進(jìn)式合成及更新背景參考幀,可有效避免編碼和傳輸無效的背景區(qū)域。從圖13 可以看出,本文方法生成的背景參考幀不包括被人物遮擋的區(qū)域。
圖13 會議視頻序列的生成背景參考幀
為驗證在監(jiān)控視頻中的編碼性能,將算法集成到H.265/HEVC 的標(biāo)準(zhǔn)測試軟件HM16.20,并選用滿足實時性要求的低時延配置,以22、27、32 和37 這4 個量化參數(shù)(QP)對測試視頻進(jìn)行編碼,以廣泛使用的BD-rate 作為性能評價指標(biāo),與標(biāo)準(zhǔn)HM16.20 進(jìn)行對比分析。
測試視頻全部選自PKU-SVD-A 數(shù)據(jù)集,同時該測試視頻也是AVS 監(jiān)控檔次的測試序列,包括序列Crossroad、Classover、Campus、Bank、Overbridge、Office 等,均為固定機位拍攝,涵蓋校園、馬路、辦公室等多種生活常見場景,監(jiān)控視頻測試序列如圖14 所示。視頻序列幀率為30 fame/s,幀數(shù)為1 500 幀,采樣格式為4:2:0。為便于算法實現(xiàn),將視頻長寬裁剪成64 的倍數(shù),即分辨率由720×576 裁剪成704×576。
圖14 監(jiān)控視頻測試序列
監(jiān)控視頻測試序列上的BD-rate 增益如表4 所示,表4 中數(shù)據(jù)為負(fù)表示增益。在評價編碼性能時一般以亮度分量Y的增益為主,其他分量的增益作為參考。在分量Y上,所有測試序列均獲得正向增益,平均編碼增益為17.89%,即相同視頻編碼質(zhì)量下,比HM16.20平均節(jié)省17.89%的碼流,最大增益為Overbridge 序列的29.54%,最小增益為8.37%,來自前景占比較大及運動較為頻繁的Crossroad 序列。在分量U、V增益和YUV 整體增益上,也取得了良好效果,分別為76.43%、76.22%和26.68%的平均增益。在時間復(fù)雜度方面,以編碼所需時間為衡量標(biāo)準(zhǔn),對比標(biāo)準(zhǔn)HM16.20,背景幀生成部分所占時間平均僅增加了0.98%,可滿足編碼的實時性要求。
表4 監(jiān)控視頻測試序列上的BD-rate 增益
2 種方法在不同序列前150 幀的視頻幀比特消耗如圖15 所示。第一幀作為初始背景參考幀需要高質(zhì)量編碼,幀比特消耗為一般I 幀的數(shù)倍、P 幀的幾十倍。為清楚地展示2 種方法在后續(xù)幀比特消耗上的差異,圖15 中未給出第一幀圖像的大比特消耗。本文方法以圖像塊為單位漸進(jìn)式生成背景參考幀,并對檢測出來的新背景圖像塊進(jìn)行高質(zhì)量編碼,本節(jié)實驗采用相對于默認(rèn)量化參數(shù)減10 的量化參數(shù)來實現(xiàn),雖然很多幀的比特消耗略高于HM16.20 標(biāo)準(zhǔn)軟件,但整體碼率相近,不存在傳統(tǒng)背景建模方法所導(dǎo)致的碼率突增問題。
圖15 監(jiān)控視頻幀的比特消耗
監(jiān)控視頻測試序列的率失真曲線如圖16 所示,即碼率隨分量Y峰值信噪比(PSNR,peak signal to noise ratio)的變化。從圖16 可以看出,本文方法帶來的編碼增益更多集中在低碼率階段,例如,Overbridge 序列碼率為 130 kbit/s 時,比標(biāo)準(zhǔn)HM16.20 的PSNR 值高約3.5 dB。隨著碼率升高,幀間參考的時域依賴性降低,背景參考幀的參考價值逐漸下降,導(dǎo)致2 種方法的編碼性能差距逐漸縮小甚至持平。
圖16 監(jiān)控視頻測試序列的率失真曲線
會議視頻與監(jiān)控視頻類似,一般均為攝像機在固定位置拍攝,具有穩(wěn)定背景,不同在于前景一般占比較大且多為人像。為驗證在會議視頻中的編碼性能,編碼參數(shù)設(shè)置與監(jiān)控視頻相同,采用相同的低時延配置和QP,評價基準(zhǔn)仍然是標(biāo)準(zhǔn)HM16.20。會議類測試視頻選自H.265/HEVC標(biāo)準(zhǔn)測試序列,包括Deadline和Students 這2 個通用影像傳輸格式(CIF)序列,以及Johnny 和Vidyo3 這2 個高清晰度(HD)序列,如圖17 所示,視頻測試序列相關(guān)信息如表5 所示。
圖17 會議視頻測試序列
表5 會議視頻測試序列的相關(guān)信息
會議視頻測試序列上的BD-rate 增益如表6 所示。在分量Y上,所有測試序列均獲得正向增益,平均編碼增益為17.59%,驗證本文方法對會議視頻同樣有效。具體來看,最大增益為CIF 序列Students的29.29%,最小增益為HD 序列Johnny 僅獲得8.57%,該序列背景過于簡單,即使在沒有背景參考幀參與的情況下該區(qū)域的編碼失真也較小,所以融入高質(zhì)量背景參考幀后編碼性能提升并不顯著,而其他序列的背景區(qū)域均相對更復(fù)雜,編碼性能提升較顯著。在分量U和V上,分別取得42.15% 和43.48%的更大增益效果,YUV 的整體增益為19.92%,因此在多個測量分量上均達(dá)到穩(wěn)定有效的編碼增益。在時間復(fù)雜度方面,相比標(biāo)準(zhǔn)HM16.20,背景幀生成部分所占時間平均僅增加了1%,可滿足編碼的實時性要求。
表6 會議視頻測試序列上的BD-rate 增益
會議視頻幀的比特消耗如圖18 所示。2 種方法整體編碼情況相似,不存在大的碼率突變點,雖然在Deadline 序列中的第50 幀到60 幀之間本文方法較HM16.20 標(biāo)準(zhǔn)略有增高,但增幅不大,進(jìn)一步驗證本文方法可有效避免傳統(tǒng)方法導(dǎo)致的碼率突增問題。
圖18 會議視頻幀的比特消耗
會議視頻測試序列的率失真曲線如圖19 所示。大部分測試序列在整個碼率階段均明顯高于標(biāo)準(zhǔn)HM16.20,其中,2 個CIF 序列的性能增益在整個碼率階段表現(xiàn)更加均勻,而2 個HD 序列則與監(jiān)控視頻的率失真曲線類似,編碼增益隨著碼率的降低而增大,說明在低帶寬環(huán)境下,編碼性能的提升將能帶來更顯著的用戶體驗質(zhì)量提升。
圖19 會議視頻測試序列的率失真曲線
針對傳統(tǒng)方法生成的背景參考幀質(zhì)量差以及傳輸過程中碼率突增等問題,本文提出一種漸進(jìn)式背景參考幀生成方法,建立以圖像塊為基本單元的碼本模型,利用幀間差分法評估圖像塊的運動情況;利用感知哈希對同一位置圖像塊進(jìn)行聚類分析;利用碼元中圖像塊數(shù)量、相鄰圖像塊之間的間隔幀數(shù)累加值以及圖像塊紋理復(fù)雜度等指標(biāo)檢測背景碼元。在編碼過程中利用碼本模型從不同幀中檢測出干凈、真實背景塊來生成及更新高質(zhì)量背景參考幀。結(jié)果實驗表明,本文方法可以生成高質(zhì)量背景參考幀,時間復(fù)雜度可以滿足實時視頻需求,可用于背景較穩(wěn)定的監(jiān)控類和會話類視頻應(yīng)用。