專利名稱:一種采用線性規(guī)劃模型的視頻錯誤隱藏方法
技術(shù)領(lǐng)域:
本發(fā)明屬于視頻圖像處理領(lǐng)域,具體涉及一種采用線性規(guī)劃模型的視頻錯誤隱藏方法。
背景技術(shù):
視頻圖像作為一種直觀的理解事物的方式,影響著人類生活的方方面面。社會發(fā)展,尤其是互聯(lián)網(wǎng)(包括移動互聯(lián)網(wǎng))的發(fā)展,極大的拓寬了視頻圖像的應用范圍,使人們能夠在工作、娛樂等多方面享受視頻圖像帶來的體驗。本領(lǐng)域公知,互聯(lián)網(wǎng)是一個帶寬受限的網(wǎng)絡環(huán)境,視頻圖像的數(shù)據(jù)量相比來講十分巨大,因此需要對視頻圖像進行壓縮,以便在帶寬受限的環(huán)境下傳輸。在過去的十幾年里,各種先進的視頻編碼方式不斷涌現(xiàn),解決各種適用場合的視頻圖像壓縮問題。尤其是近年來,H. 264作為一種先進的視頻編碼方法,能夠在保證視頻質(zhì)量不變或稍有損失的情況下,有效地降低碼速率,節(jié)約帶寬開銷,使在互聯(lián)網(wǎng)環(huán)境下傳輸高質(zhì)量視頻變得可行。編碼算法帶來高壓縮率的同時,編碼后的碼流對傳輸噪聲極為敏感。由于編碼中采用了前幀與后續(xù)幀相關(guān)的編碼結(jié)構(gòu),當某幀由于傳輸錯誤而出現(xiàn)解碼錯誤時,不僅影響該幀的圖像質(zhì)量,而且對后續(xù)幀的解碼有著很大的影響,即所謂的“誤碼擴散”現(xiàn)象。甚至碼流中僅有一個比特位置發(fā)生錯誤,都可能導致視頻質(zhì)量的極大降低。然而,互聯(lián)網(wǎng)的另一個特點便是在傳輸中可能出現(xiàn)丟包及誤碼現(xiàn)象。為了適應這一特點,即在碼流出錯的情況下仍能得到較高質(zhì)量的視頻圖像,常在視頻解碼后采用錯誤隱藏(EC Error concealment) 技術(shù)對出錯區(qū)域進行恢復。視頻圖像中幀內(nèi)以及前幀和后續(xù)幀之間存在著大量的冗余。錯誤隱藏技術(shù)正是使用本幀或前幀的冗余信息對破損區(qū)域進行修復。然而由于當前區(qū)域已損壞,如何找到和損壞區(qū)域最接近的替代區(qū)域,成為錯誤隱藏的難點。在文獻"Aign S. and Fazel K. , Temporal and spatial error concealment technique for hierarchical MPEG_2video codec. ” 中,作者提出了一種邊界匹配算法 (BMA Boundary matching algorithm)。該算法尋找替代區(qū)域的規(guī)則是所選的替代區(qū)域的邊界與破損區(qū)域的邊界能夠較好的匹配。使用絕對誤差和(SAD Sum of absolute differences)衡量匹配程度,如此一來,使SAD最小的塊即可認定為最佳的修補區(qū)域。但是BMA方法僅使用一個運動矢量(MV Motion vector)進行修復,可能出現(xiàn)邊界錯位、物體變形等瑕疵,因此在實踐中修復效果欠佳。隨后又出現(xiàn)了大量BMA的改進方法,以修正這些問題。還有一些修復方法如基于運動矢量恢復的思想。在文獻“JH Zheng and LP Chau, A temporal error concealment algorithm for H. 264using Lagrange interpolation.,, 中,作者使用拉格朗日插值(Li Lagrange interpolation)的方法,利用損壞區(qū)域周圍的運動矢量進行拉格朗日插值,恢復出丟失區(qū)域的運動矢量,并利用恢復的運動矢量找到替代區(qū)域進行修復。這種修復方法要求被恢復的區(qū)域具有平滑的運動矢量,在實際應用中比較受限。所以該方法的恢復效果雖比BMA有所提高,但仍欠佳。
在文獻"J Wu, XG Liu and KY Yoo, A temporal error concealment method for H. 264/AVC using motion vector recovery. ”中,作者仍是提出了一種運動矢量恢復的方法。不同的是,作者對多種錯誤情況進行分析,并且提出了在各種情況下的運動矢量恢復方法。這種方法考慮了破損區(qū)域內(nèi)部可能出現(xiàn)分界的情況,不再需要平滑運動矢量假設(shè),因此該方法效果比LI方法有所提高。但這類的運動矢量恢復方法只使用損壞區(qū)域周圍的運動矢量進行修復,并沒有考慮損壞區(qū)域邊界匹配效果,因此錯誤隱藏效果仍然欠佳。在文獻"WN Lie, CH Yeh and Zff Gao, Video error concealment by using iterative dynamic-programming optimization. ”中,作者提出了一種使用動態(tài)規(guī)劃模型的錯誤隱藏方法,該方法將所有需要錯誤隱藏的區(qū)域建立為若干條從虛擬起點到虛擬終點的“路徑”,并套用動態(tài)規(guī)劃解決行程問題的方法,通過選擇一條最小花費的“路程”,最終確定用來隱藏的全部替代區(qū)域。該方法雖然能夠得到較好的恢復效果,但花費的時間較長,因此在使用中受限。綜上所述,BMA算法提出了邊界匹配準則,是大多數(shù)錯誤隱藏方法的基礎(chǔ),但實現(xiàn)的效果并不理想。LI等方法利用運動矢量的相關(guān)性首先恢復運動矢量,之后修復損壞的圖像區(qū)域,但該方法并沒有考慮丟失區(qū)域邊界的相關(guān)性,因此效果仍然欠佳。而另外一些方法,雖然效果較好,但處理速度又不令人滿意。因此迫切需要一種能夠得到較好恢復效果的,處理速度適中的錯誤隱藏方法。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)中存在的問題,本發(fā)明提供一種采用線性規(guī)劃模型的視頻錯誤隱藏方法視頻圖像錯誤隱藏方法,從而恢復錯誤傳輸?shù)囊曨l圖像,提高視頻圖像的質(zhì)量。本發(fā)明提出一種采用線性規(guī)劃模型的視頻圖像錯誤隱藏方法,包括以下幾個步驟步驟一獲得待修復宏塊的邊界像素解碼后的圖像存儲在緩沖區(qū)中,利用本幀待修復宏塊所在位置,計算待修復宏塊的邊界像素所在位置,并從緩沖區(qū)中將像素值取出,得到待修復宏塊的邊界像素;步驟二 獲得運動矢量集本幀中待修復宏塊與其上、下、左、右四個方向的正確宏塊鄰接,正確宏塊被拆分為多個正確子宏塊,而每個鄰接正確子宏塊均具有運動矢量。獲得所有鄰接子宏塊的運動矢量及其對應的參考幀,并去除其中重復的運動矢量及參考幀,構(gòu)成運動矢量集;步驟三獲得備選宏塊集和邊界集當給定一個運動矢量和參考幀時,在其參考幀中得到與運動矢量和該參考幀對應的整宏塊,整宏塊的獲取方式與解碼端利用運動矢量和參考幀得到預測宏塊的方式相同, 對于步驟二得到的運動矢量集中的每一個運動矢量和參考幀,均能得到與之對應的整宏塊,這些整宏塊構(gòu)成備選宏塊集,不同運動矢量和參考幀得到的整宏塊通常不相同。分別記錄下各個參考幀中每一個整宏塊的邊界像素,所有整宏塊的邊界像素構(gòu)成邊界集;步驟四對待修復宏塊和整宏塊進行拆分對備選宏塊集中的整宏塊進行拆分,設(shè)備選宏塊集中有N個備選整宏塊,將備選宏塊集中的每個備選整宏塊拆分為(16X16)/(mXm)個mXm備選子宏塊,各個整宏塊中處于相同位置的備選子宏塊構(gòu)成備選子宏塊集,則共有(16X16)/(mXm)個備選子宏塊集, 每個備選子宏塊集中具有N個處于相同位置的備選子宏塊,將各備選子宏塊按行進行標號,每個備選整宏塊拆分后處于相同位置的備選子宏塊的標號是一致的;備選子宏塊集的標號與該備選子宏塊集中的備選子宏塊的標號是相同的。在以子宏塊為單位修復待修復宏塊時,將待修復宏塊進行拆分,拆分方法與備選宏塊集中的整宏塊的拆分方法一致,拆分為(16X16)/(mXm)個mXm大小的待修復子宏塊;將待修復子宏塊按行進行標號,標號方法與備選子宏塊的標號方法完全相同;拆分后共存在3種待修復子宏塊,第一種待修復子宏塊與兩個正確的邊界鄰接; 第二種待修復子宏塊與一個正確的邊界鄰接,并且與另一個同類型的待修復子宏塊鄰接; 第三種待修復子宏塊不與正確的邊界鄰接,但與另外三個同類型的待修復子宏塊鄰接;步驟五利用線性規(guī)劃模型,獲得加權(quán)權(quán)值(1)第一種待修復子宏塊的修復方法無論何種宏塊拆分類型,拆分后處于四個角上的待修復子宏塊均屬于第一種待修復子宏塊,并且只有四個角上的待修復子宏塊屬于此類型;并標記左上角的待修復子宏塊為a號待修復子宏塊;PBa表示a號待修復子宏塊的邊界像素PBa,a號備選子宏塊集中子宏塊的邊界為 Pak,k= 1,2,. . .,N,將備選子宏塊集中備選子宏塊的邊界像素Pak進行加權(quán),得到合成邊界, 選擇使合成邊界與PBa之間的SAD達到最小的權(quán)值;待優(yōu)化問題的目標函數(shù)為 minimize ^
Bs
k = l其中,Ba表示邊界區(qū)域,是像素坐標的集合,區(qū)域?qū)挾葹閚,Ba中包含全部邊界像素位置;坐標(i,j)表示Ba中各個像素的坐標;PBa(i,j)為a號待修復子宏塊(i,j)位置的邊界像素值;Pak(i,j),k= 1,2, ...,N為a號備選子宏塊集中第k個子宏塊(i,j)位置的邊界像素值;有N個a號備選子宏塊,有N個備選子宏塊邊界像素Pak,需要N個權(quán)值ω ” ω2,. . .,ωΝ對這N個備選子宏塊邊界Pak進行加權(quán)其中權(quán)值 ω” ω2,..·,ωΝ 服從兩個約束=CO1, ω2,..·,為 1 ;ω” ω2,..·,
ωΝ均大于等于0:
NYjOik=I
k=\cok 彡 0,k = 1,2,· · ·,N當目標函數(shù)達到極小化時,得到一組權(quán)值為^,^,…, ;;;利用該組權(quán)值將a號備選子宏塊集中的子宏塊進行加權(quán),最終得到用于修復的a號子宏塊
N Y^ak* Pambk (ij)
k=l其中Pambk代表a號備選子宏塊集中第k個備選子宏塊;然后將目標函數(shù)線性化,將每一個絕對值替換為一個待優(yōu)化的變量,實現(xiàn)目標函數(shù)線性化
權(quán)利要求
1. 一種采用線性規(guī)劃模型的視頻圖像錯誤隱藏方法,其特征在于包括以下幾個步驟步驟一獲得待修復宏塊的邊界像素解碼后的圖像存儲在緩沖區(qū)中,利用本幀待修復宏塊所在位置,計算待修復宏塊的邊界像素所在位置,并從緩沖區(qū)中將像素值取出,得到待修復宏塊的邊界像素; 步驟二 獲得運動矢量集本幀中待修復宏塊與其上、下、左、右四個方向的正確宏塊鄰接,正確宏塊被拆分為多個正確子宏塊,而每個鄰接正確子宏塊均具有運動矢量,獲得所有鄰接子宏塊的運動矢量及其對應的參考幀,并去除其中重復的運動矢量及參考幀,構(gòu)成運動矢量集; 步驟三獲得備選宏塊集和邊界集當給定一個運動矢量和參考幀時,在其參考幀中得到與運動矢量和該參考幀對應的整宏塊,整宏塊的獲取方式與解碼端利用運動矢量和參考幀得到預測宏塊的方式相同,對于步驟二得到的運動矢量集中的每一個運動矢量和參考幀,均能得到與之對應的整宏塊,這些整宏塊構(gòu)成備選宏塊集,分別記錄下各個參考幀中每一個整宏塊的邊界像素,所有整宏塊的邊界像素構(gòu)成邊界集;步驟四對待修復宏塊和整宏塊進行拆分對備選宏塊集中的整宏塊進行拆分,設(shè)備選宏塊集中有N個備選整宏塊,將備選宏塊集中的每個備選整宏塊拆分為(16X16)/(mXm)個mXm備選子宏塊,各個整宏塊中處于相同位置的備選子宏塊構(gòu)成備選子宏塊集,則共有(16X16)/(mXm)個備選子宏塊集,每個備選子宏塊集中具有N個處于相同位置的備選子宏塊,將各備選子宏塊按行進行標號,每個備選整宏塊拆分后處于相同位置的備選子宏塊的標號是一致的;備選子宏塊集的標號與該備選子宏塊集中的備選子宏塊的標號是相同的;在以子宏塊為單位修復待修復宏塊時,將待修復宏塊進行拆分,拆分方法與備選宏塊集中的整宏塊的拆分方法一致,拆分為(16X16)/(mXm)個mXm大小的待修復子宏塊;將待修復子宏塊按行進行標號,標號方法與備選子宏塊的標號方法完全相同;拆分后共存在3種待修復子宏塊,第一種待修復子宏塊與兩個正確的邊界鄰接;第二種待修復子宏塊與一個正確的邊界鄰接,并且與另一個同類型的待修復子宏塊鄰接;第三種待修復子宏塊不與正確的邊界鄰接,但與另外三個同類型的待修復子宏塊鄰接; 步驟五利用線性規(guī)劃模型,獲得加權(quán)權(quán)值 (1)第一種待修復子宏塊的修復方法無論何種宏塊拆分類型,拆分后處于四個角上的待修復子宏塊均屬于第一種待修復子宏塊,并且只有四個角上的待修復子宏塊屬于此類型;并標記左上角的待修復子宏塊為a 號待修復子宏塊;PBa表示a號待修復子宏塊的邊界像素PBa,a號備選子宏塊集中子宏塊的邊界為Pak,k =1,2,...,N,將備選子宏塊集中備選子宏塊的邊界像素Pak進行加權(quán),得到合成邊界,選擇使合成邊界與PBa之間的SAD達到最小的權(quán)值;待優(yōu)化問題的目標函數(shù)為其中,Ba表示邊界區(qū)域,是像素坐標的集合,區(qū)域?qū)挾葹閚,Ba中包含全部邊界像素位置;坐標(i,j)表示Ba中各個像素的坐標;PBa(i,j)為a號待修復子宏塊(i,j)位置的邊界像素值;Pak(i,j),k= 1,2, ...,N為a號備選子宏塊集中第k個子宏塊(i,j)位置的邊界像素值;有N個a號備選子宏塊,有N個備選子宏塊邊界像素Pak,需要N個權(quán)值ω ” ω2,. . .,ωΝ對這N個備選子宏塊邊界Pak進行加權(quán)其中權(quán)值 ω” ω2,· . .,ωΝ 服從兩個約束ω” ω2,· . .,為 1 ; ω” ω2,· . .,ωΝ 均大于等于0
全文摘要
本發(fā)明公開了一種采用線性規(guī)劃模型的視頻錯誤隱藏方法,屬于視頻圖像處理領(lǐng)域,包括獲得待修復宏塊的邊界像素、獲得運動矢量集、獲得備選宏塊集和邊界集、獲得備選宏塊集和邊界集、利用線性規(guī)劃模型,獲得加權(quán)權(quán)值五個步驟。本發(fā)明采用線性規(guī)劃的方法得到加權(quán)權(quán)值,對備選宏塊的加權(quán)結(jié)果是最優(yōu)的,且能有效平滑錯誤區(qū)域,而不影響正確區(qū)域,并綜合考慮了待修復宏塊周圍運動矢量和周圍像素的相關(guān)性,對視頻編碼時的子宏塊劃分方式?jīng)]有要求。本發(fā)明的處理速度適中,能夠提升修復后圖像的主觀質(zhì)量和客觀質(zhì)量。
文檔編號H04N7/68GK102325258SQ20111027200
公開日2012年1月18日 申請日期2011年9月14日 優(yōu)先權(quán)日2011年9月14日
發(fā)明者關(guān)博深, 劉榮科, 時琳 申請人:北京航空航天大學