一種自適應閾值的視頻流多紋理方向錯誤隱藏方法
【專利摘要】一種自適應閾值的視頻流多紋理方向錯誤隱藏方法,其特征是基于改進的自適應閾值的Sobel邊緣檢測算法,通過檢測出錯誤宏塊的相鄰塊可能的邊緣方向,結(jié)合邊界像素差值成本函數(shù)自適應地確定錯誤宏塊中每個像素點的插值方向,然后對錯誤宏塊中的每個像素點進行方向插值來恢復錯誤宏塊,能夠更精確的提取出邊緣信息及自適應的恢復丟失宏塊,保證了恢復后視頻圖像的平滑性。本發(fā)明與H.264標準的錯誤隱藏算法相比,其視頻圖像隱藏效果在主觀視覺判斷和客觀數(shù)值計算上都有一定的提高。
【專利說明】一種自適應閾值的視頻流多紋理方向錯誤隱藏方法
【技術領域】
[0001]本發(fā)明屬于視頻圖像處理領域,涉及到一種H.264解碼視頻圖像中對錯誤信息塊的近似恢復或錯誤隱藏方法。
【背景技術】
[0002]H.264視頻壓縮編碼標準是由國際電信聯(lián)盟(ITU-T)的視頻編碼專家組(VCEG)和國際標準化組織(IS0/IEC)的運動專家組(MPEG)共同制定的新一代視頻壓縮編碼標準。
H.264帶來高壓縮比和良好網(wǎng)絡親和性的同時,由于接收端接收到的信息量變少,圖像序列間的冗余度降低,使得編碼后的碼流對錯誤更加敏感,從而使得任何一個比特的丟失或錯誤,都可能導致誤碼擴散,容易降低接收到的視頻圖像質(zhì)量。
[0003]錯誤隱藏技術即是一個圖像采樣或一塊采樣在傳輸中由于錯誤而丟失,解碼器仍能基于周圍的已經(jīng)收到的采樣點,利用空間和時間相鄰的采樣點的內(nèi)在相關性進行估計,從而實現(xiàn)錯誤隱藏,用估算數(shù)據(jù)恢復。該技術并不追求將原始數(shù)據(jù)完整還原,而是利用已經(jīng)接收到的數(shù)據(jù)來盡量增強視頻圖像質(zhì)量,因此,它無需增加額外的碼率,也不需要改變編碼器。
[0004]常見的錯誤隱藏算法分兩種:時域錯誤隱藏和空域錯誤隱藏。時域錯誤隱藏主要是利用視頻序列的相鄰幀之間的較強時間相關性,通過相鄰幀經(jīng)過運動補償后的正確圖形數(shù)據(jù)來對錯誤宏塊內(nèi)容進行恢復。這種方法只適合于運動不太復雜的視頻信號,對于場景變換的情況則往往不太適用。空域錯誤隱藏主要是使用同一幀圖像中的空間相關性對丟失的內(nèi)容進行修復,因此對于場景變換的情況可以利用幀內(nèi)信息對錯誤宏塊進行掩蓋。
[0005]現(xiàn)有技術中,使用的普`遍的是H.264雙線性內(nèi)插算法。雙線性內(nèi)插算法是H.264標準的空域錯誤隱藏算法。通過上下左右4個相鄰像素塊的邊緣像素進行線性插值來恢復錯誤數(shù)據(jù)。這種算法是根據(jù)像素距離越近,其相關性越大的原理,因此權值設定為丟失像素與相鄰像素的反向距離,圖1為雙線性內(nèi)插算法示意圖。
[0006]現(xiàn)有的Sobel邊緣檢測算法:
[0007](I)計算梯度的幅值和方向
[0008]Sobel算子是在圖像空間利用X和y兩個方向模板與圖像中的每個像素點進行鄰域卷積來完成的。對于f(i,j)為圖像中像素點灰度值(i,j為像素點的坐標),X和y方向的模板見圖2。
[0009]水平梯度6!£(1,j)為:
[0010]Gx(i,j) = f (1-1, j-l)+2f (1-1, j)+f (1-1, j+l)-f (i+1, j-l)-2f (i+1, j)-f (i+1,j+1)
[0011]垂直梯度6^丨,j)為:
[0012]Gy(i,j) = f (1-1, j+l)+2f (i, j+l)+f (i+1, j+l)-f (1-1, j-l)-2f (i, j-l)-f (i+1,j_l)
[0013]令圖像中每個像素點的梯度幅值和方向分別為G(i,j)和Θ (i, j),則:
【權利要求】
1.一種自適應閾值的視頻流多紋理方向錯誤隱藏方法,其特征是包括以下步驟: 步驟(1):判斷接收端收到的視頻圖像的宏塊是否發(fā)生錯誤,如果是,則轉(zhuǎn)到步驟(2);否則轉(zhuǎn)到步驟(6); 步驟(2):對錯誤宏塊的相鄰塊進行改進的Sobel邊緣檢測算法,依次確定各個相鄰塊的邊緣方向; 步驟(3):根據(jù)邊緣像素差值成本函數(shù)自適應確定錯誤宏塊中每個像素點的插值方向; 步驟(4):對錯誤宏塊中的每個像素點依據(jù)其插值方向計算方向插值,并恢復錯誤宏塊; 步驟(5):判斷錯誤宏塊是否全部被錯誤隱藏,如果是,則轉(zhuǎn)到步驟(6);否則轉(zhuǎn)到步驟(2); 步驟(6):輸出接收到的視頻圖像; 所述的改進的Sobel邊緣檢測算法如下: (1)計算梯度的幅值和方向 水平梯度Jx(i,j)為:
Jx(i,j) = Gx2(i, j)+Gy2(i, j) 垂直梯度Jy(i,j)為:
Jy(i,j) = 2Gx(i, j)Gy(i, j) 令圖像中每個像素點的梯度幅值和方向分別為G*(i,j)和e*(i,j),則:
2.根據(jù)權利要求1所述的自適應閾值的視頻流多紋理方向錯誤隱藏方法,其特征是所述的步驟(2)按以下步驟: (51)用改進的Sobel算法對錯誤宏塊的相鄰塊進行邊緣檢測 用改進的Sobel算法分別對Βτ、ΒΕ、ΒρΒκ中的像素點進行邊緣檢測;經(jīng)邊緣檢測后,上、下、左、右4個相鄰塊中的每個候選邊緣像素點(i,j)都有梯度幅值(T(i,j)和梯度方向9*(i,j); (52)對錯誤宏塊的相鄰塊的邊緣方向分類 將邊緣劃分為8個方向,即Θ i~Θ 8,其中:Θ i = (O °,22.5 ° ],Θ 2 =(22.5° ,45。],θ3=(45。,67.5° ], Θ 4 = (67.5° ,90° ], Θ 5 = (90° ,112.5。],θ6= (112.5°,135。],θ7=(135°,157.5。],θ8 = (157.5°,180。];梯度方向θ*(?, j)的值在哪個范圍之內(nèi),該候選邊緣像素點的方向就對應該方向; (53)確定錯誤宏塊的相鄰塊邊緣方向 錯誤宏塊的邊緣信息取決于相鄰塊的邊緣方向,確定相鄰塊邊緣方向的具體步驟如下: O:根據(jù)改進的Sobel邊緣檢測算法判定出來的候選邊緣像素點 設錯誤宏塊大小為NXN,則可通過相鄰塊中的候選邊緣像素點在其梯度方向上延伸后與錯誤宏塊邊緣的交點坐標值的取值范圍O~(N-1)來進行判斷,如果交點坐標值在O~(N-1)范圍內(nèi),則可判定為邊緣像素點; 2):根據(jù)下式計算相鄰塊中邊緣像素點在(S2)的8個邊緣方向的幅值總和:
3.根據(jù)權利要求1所述的自適應閾值的視頻流多紋理方向錯誤隱藏方法,其特征是所述的步驟(3)按以下步驟: 將步驟(2)中分別得到的錯誤宏塊上、下、左、右4個相鄰塊中的可能的邊緣方向,再根據(jù)邊界像素差值成本函數(shù)Cost (i,j),自適應地確定錯誤宏塊中每個像素點的插值方向,具體步驟如下: O:根據(jù)下式分別計算出沿著4個可能的邊緣方向的邊界像素差值:
4.根據(jù)權利要求1所述的自適應閾值的視頻流多紋理方向錯誤隱藏方法,其特征是所述的步驟(4)是: 根據(jù)步驟(3)求出的錯誤宏塊中像素點(i,j)的插值方向dir進行方向插值來恢復出錯誤宏塊中的每個像素點,設Pto(i,j)為當前待恢復像素點灰度值,方向插值如公式下式所示:
【文檔編號】H04N19/65GK103856781SQ201410100233
【公開日】2014年6月11日 申請日期:2014年3月18日 優(yōu)先權日:2014年3月18日
【發(fā)明者】張小紅, 胡婷, 鐘小勇 申請人:江西理工大學