西昌衛(wèi)星發(fā)射中心 敬文慧 劉雪峰 王立忠 陶俊豪 梅高杰
針對視頻因信道傳輸引起的圖像信息丟失問題,在研究傳統(tǒng)圖像修復(fù)技術(shù)的基礎(chǔ)上,提出了一種基于限定信源區(qū)域的紋理合成錯誤隱藏算法,實驗表明,與傳統(tǒng)的雙線性插值相比,該算法在不增加復(fù)雜度的同時,有效提高了修復(fù)后視頻的主客觀質(zhì)量。
早期錯誤隱藏算法主要研究如何實現(xiàn)圖像的平滑過渡,以使丟失塊與其相鄰塊的邊界能夠平滑連接,提出了雙線性差值算法[1];針對雙線性插值易丟失圖像邊緣信息,提出了采用Sobel算子進行邊緣檢測的方法[2];邊界像素邊緣差值最小算法[3]利用相鄰圖像塊的邊界像素點,使修復(fù)后的圖形避免出現(xiàn)方塊效應(yīng),保留圖像紋理細節(jié);文獻[4-7]所提算法計算復(fù)雜度較高,對較大尺度圖像的修復(fù)效果有限,且不能用于視頻序列的錯誤隱藏。基于紋理結(jié)構(gòu)的圖像修復(fù)技術(shù)可用于修復(fù)圖像中較大尺寸的缺損。代表性的有基于模板的修復(fù)算法[8]、基于碎片的圖像補全算法[9]和基于樣本的圖像修復(fù)算法[10]等,后者結(jié)合結(jié)構(gòu)傳輸和紋理合成的方法,對較大尺寸的圖像信息丟失情況有很好的修復(fù)效果,但缺點是計算復(fù)雜度較大。H.265(新一代視頻編碼標(biāo)準(zhǔn))與H.264相比,最大編碼單元由16×16變?yōu)?4×64,傳統(tǒng)雙線性插值算法等效果降低,為提高修復(fù)后的視頻主客觀質(zhì)量,本文根據(jù)圖像空域相關(guān)性原理,提出了基于限定信源區(qū)域的紋理合成錯誤隱藏算法。
根據(jù)紋理合成的思想,Criminisi等人提出了基于最佳樣本塊的圖像修復(fù)算法[10]。此算法主要借鑒了紋理生成的方法,在紋理生成過程中尋找最佳的樣本匹配區(qū)域,然后將匹配區(qū)域的圖像信息復(fù)制至待修復(fù)區(qū)域即可。
Criminisi算法的核心思想是最佳修復(fù)塊的優(yōu)先級確定問題,他根據(jù)圖像自身的信息,確定待修復(fù)區(qū)域的填充優(yōu)先級,再根據(jù)優(yōu)先級進行修復(fù)。此算法在一定程度上保持了圖像的紋理和結(jié)構(gòu)信息,對較大尺寸的圖像丟失或缺損部分具有較好的修復(fù)效果。算法標(biāo)示圖如圖1所示,其中I代表原始圖像、Ω為待修復(fù)區(qū)域、δΩ表示Ω的填充前沿;Φ表示原始圖像中最佳匹配樣本的來源區(qū)域,滿足I=Ω+Φ的關(guān)系;Φp表示中心點為p且位于填充前沿δΩ上的修復(fù)塊,它是尺寸為9×9的矩形塊[10]。

圖1 算法標(biāo)示圖[10]Fig.1 Algorithm marking diagram
在Criminisi等人的算法中,需要先指定待修復(fù)的圖像區(qū)域和匹配樣本的來源區(qū)域,在實際應(yīng)用中可通過待修復(fù)區(qū)域的像素值或亮度范圍來與原始圖像區(qū)域進行區(qū)分。其算法流程為:
步驟1 提取待修復(fù)區(qū)域Ω的初始邊界δΩ0;
步驟2 循環(huán)運行以下步驟直至待修復(fù)區(qū)域Ω被填充完畢;
步驟2.1 標(biāo)志填充前沿δΩt,如果則退出循環(huán);
步驟2.2 計算優(yōu)先級P(p),? p∈δΩt;
步驟2.3 尋找優(yōu)先級最大的點 P?的窗口模板ψp? ,即
如圖2所示,從上述步驟中可以看出,此算法涉及到兩個關(guān)鍵的問題,其一是如何確定最匹配的修復(fù)塊并對其進行填充也就是紋理生成(即搜索、匹配和合成)的過程,其二是如何確定修復(fù)塊的優(yōu)先級,也就是哪一塊首先被填充。修復(fù)塊優(yōu)先級的確定主要取決于兩個因素,一個是數(shù)據(jù)項,一個是置信度項。數(shù)據(jù)項在圖像邊緣附近處有較大的值。因此在修復(fù)時,會優(yōu)先處理這樣的結(jié)構(gòu)信息,將信息沿等照度線方向向內(nèi)傳播。置信度項則是待修復(fù)塊信息完整程度的直接反映,置信度越高,則信息損失的越少,修復(fù)時的可靠性越高,因此有較高的修復(fù)優(yōu)先級。此算法可以有效地修復(fù)圖像,但它采用全局搜索的方法來確定最佳匹配樣本塊,時效較低[10]。

圖2 紋理合成錯誤隱藏算法示意圖[10]Fig.2 Schematic diagram of texture synthesis error concealment algorithm
此算法可以有效地修復(fù)圖像,但它采用全局搜索的方法來確定最佳匹配樣本塊,算法復(fù)雜度較高,不能直接用于H.265的錯誤隱藏,可在限定信源區(qū)域的情況下,減小其復(fù)雜度。
與傳統(tǒng)視頻編碼標(biāo)準(zhǔn)相比而言,H.265的編碼單元變的更大,由H.264的16×16變?yōu)榱爽F(xiàn)在的64×64,若出現(xiàn)編碼塊丟失,丟失的編碼塊內(nèi)部的像素與相鄰塊像素之間的空域相關(guān)性將隨著其與邊界距離的增大而急劇減小,基于空域相關(guān)性的雙線性插值錯誤隱藏算法雖然在H.264中取得了較好的效果,但已經(jīng)很難適用于H.265標(biāo)準(zhǔn),為解決大尺寸丟失塊的錯誤隱藏問題,必須考慮其他的算法,對于64×64或者更大尺寸的丟失塊而言,基于紋理合成的圖像修復(fù)技術(shù)能基本滿足要求。對于較大尺寸的圖像信息丟失問題,基于紋理合成的錯誤隱藏算法有著更好的修復(fù)效果,其修復(fù)后的主、客觀質(zhì)量遠遠高于傳統(tǒng)的錯誤隱藏算法,但從紋理合成修復(fù)算法的基本原理[10]中不難發(fā)現(xiàn),算法在進行圖像修復(fù)時,需要搜索整幅圖像中除去待修復(fù)區(qū)域之外的所有圖像區(qū)域,以尋找最佳匹配區(qū)域?qū)Υ迯?fù)區(qū)域進行修復(fù),因此,算法的計算復(fù)雜度將隨著源圖像的分辨率增加而不斷變大;若圖像中存在多個丟失區(qū)域,算法將對源圖像進行反復(fù)搜索,復(fù)雜度將成倍增加。
圖像信息存在較強的空域相關(guān)性,圖像修復(fù)技術(shù)也正是利用了這一特性,但圖像的空域相關(guān)性受像素間距離的影響較大,隨著距離增加到一定程度,像素間的相關(guān)性將很小甚至沒有,基于此,本文提出了限定信源區(qū)域的紋理合成錯誤隱藏算法,將信源區(qū)域限定為圖像信息丟失塊(64×64)周圍像素寬度為16×16(實驗得出最佳)的環(huán)狀區(qū)域,以此減少不必要的搜索,大大降低算法復(fù)雜度,并與H.264中的雙線性插值法進行對比,實驗數(shù)據(jù)如表1所示。

表1 雙線性插值與紋理合成的對比實驗結(jié)果Tab.1 Comparative experimental results of bilinear interpolation and texture synthesis
如圖3(a)所示為BasketballDrill基于雙線性插值的修復(fù)效果圖,(b)為基于本文算法的修復(fù)效果圖,比較發(fā)現(xiàn),基于本文算法的修復(fù)效果更好,圖像的紋理得到了更好的修復(fù)。

圖3 Basketball Drill基于雙線性插值與紋理合成的修復(fù)效果比較圖Fig.3 Comparison of repair effect of Basketball Drill based on bilinear interpolation and texture synthesis
表1的實驗數(shù)據(jù)表明,對于64×64的丟失塊,若限定其搜索區(qū)域為16×16的環(huán)狀區(qū)域,其限定信源區(qū)域后的紋理合成錯誤隱藏算法耗時僅為1.29秒左右,與傳統(tǒng)的雙線性插值錯誤隱藏算法的1.23秒相當(dāng),但圖像修復(fù)質(zhì)量從35.20dB提高到了36.70dB,且基于紋理合成的錯誤隱藏算法有利于保存圖像的紋理和細節(jié)信息,視覺效果更佳,如圖4、圖5所示為基于本文算法的修復(fù)效果圖。

圖4 Blowing-Bubbles修復(fù)效果圖Fig.4 Repair effect of Blowing-Bubbles based on texture synthesis

圖5 FourPeople修復(fù)效果圖Fig.5 Repair effect of FourPeople based on texture synthesis
本文將基于紋理合成的圖像修復(fù)技術(shù)應(yīng)用于H.265的錯誤隱藏算法之中,對計算復(fù)雜度過高的問題,提出了基于限定信源區(qū)域的紋理合成錯誤隱藏算法,解決了因H.265編碼單元過大導(dǎo)致傳統(tǒng)的基于雙線性插值的錯誤隱藏算法修復(fù)效果不佳的問題。與傳統(tǒng)錯誤隱藏算法相比,在算法復(fù)雜度相當(dāng)?shù)那闆r下,視頻客觀修復(fù)質(zhì)量平均提升約1.5dB,且主觀質(zhì)量更佳。