專利名稱:檢測塊失真的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種從按照基于塊的編碼技術(shù)編碼然后解碼的視頻數(shù)據(jù)中檢測塊失真的方法。
它特別應(yīng)用在視頻壓縮中,其中壓縮技術(shù)是基于例如MPEG(活動圖象專家組)標(biāo)準(zhǔn)的,它的目的是為了用例如視頻數(shù)據(jù)的后處理或改進(jìn)編碼來校正所述的失真。
國際專利申請WO01/20912(內(nèi)部參考PHF99579)說明了一種在包含像素的數(shù)字圖象中檢測塊失真的方法,所述方法包括步驟-梯度濾波所述像素的亮度值,提供濾波的數(shù)據(jù),水平y(tǒng)h和垂直yv,-計算濾波數(shù)據(jù)的絕對值yah和yav,-計算絕對值的平均值 和 -檢測塊失真,這里如果 k大于或等于7,是垂直失真。
但是,這樣的方法具有以下缺點首先,不能檢測所有塊失真,第二,有時會造成錯誤檢測,而且,它僅檢測大小至少為8個像素的塊失真。
發(fā)明簡述本發(fā)明的目的是提出一種更可靠并且更精確的檢測塊失真的方法。
為此,按照本發(fā)明的視頻數(shù)據(jù)處理方法的特征在于它包括步驟-計算屬于第一塊的第一視頻數(shù)據(jù)段的第一離散變換,-計算屬于第二塊的第二視頻數(shù)據(jù)段的第二離散變換,所述第二段和第一段相鄰,-計算相應(yīng)于第一和第二段的串聯(lián)的視頻數(shù)據(jù)串聯(lián)段的離散變換,和-計算塊失真級別,能夠確定從變換的視頻數(shù)據(jù)第一和第二段預(yù)測的最大頻率,如果變換的視頻數(shù)據(jù)串聯(lián)段的實際最大頻率大于預(yù)測的最大頻率,能夠確定基本塊失真,并且能夠?qū)χ辽僖粋€塊的組計數(shù)基本塊失真的數(shù)目。
這樣的數(shù)據(jù)處理方法使得能夠在塊失真的檢測中獲得更精細(xì)的顆粒度。這是因為它可靠地使基本塊失真對應(yīng)于塊的段,其中塊包括幾個水平和垂直段。然后,如果所述塊的所有水平段都被考慮,例如對n行和m視頻數(shù)據(jù)的塊就得到0-n之間的塊失真級別,而現(xiàn)有技術(shù)說明的方法僅相應(yīng)于所述塊中塊失真的存在或不存在給出二元值。
本發(fā)明的另一個目的是一種檢測塊失真的裝置,用于例如使用硬件或軟件方式在集成電路中實現(xiàn)所述塊失真檢測的方法。
圖1給出了按照本發(fā)明的塊失真檢測方法的圖示,圖2示出了安排在分離的兩個塊邊界的每一邊的兩個相鄰段,圖3描述了一個塊的組可能的塊失真,圖4描述了四個塊的組可能的塊失真,圖5給出了按照本發(fā)明的視頻數(shù)據(jù)后處理的圖示,圖6給出了按照本發(fā)明的視頻數(shù)據(jù)編碼方法的圖示,和圖7給出了按照所述視頻數(shù)據(jù)編碼方法的預(yù)編碼參數(shù)修改的三個示例。
發(fā)明的至少一個實施例的詳述本發(fā)明涉及塊失真檢測方法。它應(yīng)用于包含按照基于塊編碼技術(shù)編碼然后解碼的視頻數(shù)據(jù)的任何視頻信號。編碼技術(shù)在我們的示例中是MPEG標(biāo)準(zhǔn),但是可以是任何其它的基于塊的編碼技術(shù),例如國際電信聯(lián)盟(ITU)的標(biāo)準(zhǔn)H.261或H.263。在剩余的說明中,視頻數(shù)據(jù)優(yōu)先地是構(gòu)成數(shù)字圖象的像素的亮度值,但是對于本領(lǐng)域的技術(shù)人員來說,顯然視頻數(shù)據(jù)例如色度值也能夠被塊失真檢測方法處理。
圖1說明了按照本發(fā)明的塊失真檢測方法。所述方法包括以下步驟。
首先包括步驟計算屬于第一塊(21)的N個視頻數(shù)據(jù)(10)的第一段u(11)的第一離散變換DCT1(1),N在MPEG數(shù)據(jù)的情況中是一般等于8的整數(shù)。這些不同的項在圖2中示出。在我們的示例中,離散變換是離散余弦變換DCT,但是對于本領(lǐng)域的技術(shù)人員來說,顯然離散變換能夠是傅立葉類型的任何變換。該離散變換的結(jié)果是變換的視頻數(shù)據(jù)的第一段U(14),從而U=DCT[u]={U(0),U(1),...,U(N-1)},即U(k)=α(k)Σn=0N-1u(n)cos(π(2n+1)k2N)]]>其中k是變換的數(shù)據(jù)項U的頻率,k∈
。
檢測方法還包括步驟計算屬于第二塊(22)的N個視頻數(shù)據(jù)的第二段(12)的第二離散變換DCT1(2),所述第二段與第一段相鄰。該離散變換的結(jié)果是變換的視頻數(shù)據(jù)的第二段V(15),從而V=DCT(v)={V(0),V(1),...,V(N-1)},即V(k)=α(k)Σn=0N-1v(n)cos(π(2n+1)k2N).]]>檢測方法還包括步驟計算相應(yīng)于第一和第二段的串聯(lián)CON(3)的2N個視頻數(shù)據(jù)串聯(lián)段(13)的離散變換DCT2(4)。該離散變換的結(jié)果是變換的視頻數(shù)據(jù)的串聯(lián)段W(16),從而W=DCT(w)={W(0),W(1),...,W(2N-1)},即W(k)=12α(k)Σn=02N-1w(n)cos(π(2n+1)k4N)]]>最后,檢測方法包括步驟(5)根據(jù)變換的視頻數(shù)據(jù)段U,V和W的內(nèi)容計算塊失真級別(17)。所述的計算步驟包括如下的第一子步驟PRED(5a),從變換的視頻數(shù)據(jù)(14,15)的第一和第二段U(14)和V(15)的最大頻率kumax和kvmax確定預(yù)測的最大頻率kwpredkwpred=2.max(kumax,kvmax)+2其中kumax=max(k∈{0,...,N-1}/U(k)>T,kvmax=max(k∈{0,...,N-1}/V(k)>T,T是嚴(yán)格大于零的門限值,并且max是從一組給定值中給出k的最大值的函數(shù)。
塊失真級別計算步驟包括第二子步驟DET(5b),如果變換的視頻數(shù)據(jù)的串聯(lián)段W(16)的實際最大頻率kwmax=max(k∈{0,...,2N-1}/W(k)>T)嚴(yán)格大于預(yù)測的最大頻率kwpred,確定基本塊失真。塊失真級別計算步驟最后包括第三子步驟COU(5c),對至少一個塊的組計數(shù)基本塊失真的數(shù)目,以便確定塊失真的級別L(17)。在特別有利的實施例中,至少一個塊的組由8×8個視頻數(shù)據(jù)的MPEG塊組成。潛在的基本塊失真按照圖3中的圖分布于MPEG塊的周圍。它可能是水平(31,32)或垂直(33,34)塊失真的情況。這樣,基本塊失真的數(shù)目和因此的塊失真級別L是在0-32之間的情況。如果塊位于圖象邊沿,例如在圖象的左上方,該方法不能檢測一定的基本塊失真、位于塊之上的水平塊失真和位于相同示例中的塊左側(cè)的垂直塊失真。這些邊沿的基本塊失真的值被設(shè)定為零。還可能使用鏡像效果,并給予所述基本塊失真值和對稱的基本塊失真相同的值。在優(yōu)選實施例中,至少一個塊的組由16×16個視頻數(shù)據(jù)的MPEG宏塊組成,即4個MPEG塊??赡艿幕緣K失真按照圖4中的圖分布于MPEG塊的周圍。它可能是水平(41-46)或垂直(401-406)塊失真的情況。這樣,基本塊失真的數(shù)目和因此的塊失真級別L在此情形中是在0-96之間,它能夠具有更精細(xì)的測量。對于全分辨率數(shù)字圖象(720像素的576行),就能夠構(gòu)成表示塊失真級別的映射圖,該圖對應(yīng)于36行乘45列的矩陣L(i,j),其系數(shù)在0-96之間。對于本領(lǐng)域技術(shù)人員來說,顯然其它的實施例可以是有利的,例如包括一方面提供水平塊失真級別并且另一方面提供垂直塊失真級別從而產(chǎn)生兩個映射圖的那些,其中一個映射圖表示水平塊失真級別,而一個映射圖表示垂直塊失真級別。還可以只考慮一定類型的塊失真(例如塊右邊的水平失真)或僅塊的一定段(例如2段中的1段),而不脫離本發(fā)明的范圍。
塊失真檢測方法能夠依靠硬件或軟件方式或兩者的合并在例如集成電路中實現(xiàn)。
對于硬件實現(xiàn),塊失真檢測裝置包括每一個執(zhí)行上述塊失真檢測方法步驟的電路,用于計算離散余弦變換DCT的電路對本領(lǐng)域技術(shù)人員是尤其公知的。所述的裝置包括-計算屬于第一塊的第一視頻數(shù)據(jù)段(11)的第一離散變換(1)的電路,-計算屬于第二塊的第二視頻數(shù)據(jù)段(12)的第二離散變換(2)的電路,所述第二段和第一段相鄰,-計算相應(yīng)于第一和第二段的串聯(lián)(3)的視頻數(shù)據(jù)串聯(lián)段(13)的離散變換(4)的電路,和-計算塊失真級別(17)的電路(5),能夠確定(5a)從第一和第二變換的視頻數(shù)據(jù)段(14,15)預(yù)測的最大頻率,如果變換的視頻數(shù)據(jù)串聯(lián)段(16)的實際最大頻率大于預(yù)測的最大頻率,能夠確定(5b)基本塊失真,并且能夠?qū)χ辽僖粋€塊的組計數(shù)(5c)基本塊失真的數(shù)目。
也能夠通過適當(dāng)編程的電路實現(xiàn)塊失真檢測方法的步驟。包含在程序存儲器中的一組指令能夠使電路執(zhí)行上述塊失真檢測方法的各個步驟。該組指令還能夠通過數(shù)據(jù)介質(zhì)例如包含該組指令的盤的讀取來裝載到程序存儲器中。讀取還能夠通過通信網(wǎng)絡(luò)例如互聯(lián)網(wǎng)來執(zhí)行。在這種情況中,服務(wù)提供者將使有關(guān)方能夠得到該組指令。
塊失真檢測方法具有許多應(yīng)用,其中能夠列舉后處理和特別是視頻數(shù)據(jù)的編碼或壓縮。
一種按照本發(fā)明的視頻數(shù)據(jù)后處理方法在圖5中說明。它包括先前說明的檢測塊失真(10)的方法,能夠從編碼然后事先解碼的視頻數(shù)據(jù)流(51)產(chǎn)生至少一個塊失真級別映射圖。它還包括濾波步驟(52),能夠根據(jù)它的塊失真級別(17)將一組濾波器(53,54,55)中的一個濾波器應(yīng)用給至少一個塊的組,并且產(chǎn)生濾波的視頻數(shù)據(jù)流。本發(fā)明還涉及用于實現(xiàn)所述后處理方法的后處理裝置。
在優(yōu)選的實施例中,其中至少一個塊的組由16×16個視頻數(shù)據(jù)的MPEG宏塊組成,即4個MPEG塊,3種濾波已經(jīng)被限定。對于塊失真級別小于第一預(yù)定門限值T1(例如是32,如果可能是96個級別),軟濾波被應(yīng)用,使用例如F11/64[1 4 54 4 1]濾波器。然后對于介于第一預(yù)定門限值T1和第二預(yù)定門限值T2(例如是64)之間的塊失真級別,更強(qiáng)的濾波被應(yīng)用,使用例如F21/32[1 4 22 4 1]濾波器。最后,對于大于第二預(yù)定門限值T2的塊失真級別,強(qiáng)濾波被應(yīng)用,使用例如F31/16[14641]濾波器。優(yōu)選地,僅沿塊邊界的視頻數(shù)據(jù)被濾波。如果在塊邊界的每側(cè)的兩個視頻數(shù)據(jù)對應(yīng)不同的濾波器,較軟的濾波被優(yōu)先選擇。當(dāng)然,另外的塊失真級別范圍的劃分以及另外的濾波器的選擇是可能的。
按照本發(fā)明的編碼視頻數(shù)據(jù)的方法還在圖6中說明。它包括預(yù)編碼相應(yīng)于圖象或幀的視頻數(shù)據(jù)(601)的步驟PASS1(61),所述步驟按照本領(lǐng)域技術(shù)人員公知的原理用恒量化步長q執(zhí)行。從預(yù)編碼步驟產(chǎn)生了中間編碼視頻數(shù)據(jù)流(602)和預(yù)編碼參數(shù)(603),例如用于預(yù)編碼圖象宏塊的比特數(shù)。這些預(yù)編碼參數(shù)然后在編碼視頻數(shù)據(jù)(601)的步驟PASS2(62)期間使用,它按照本領(lǐng)域的技術(shù)人員公知的原理提供最終的編碼視頻數(shù)據(jù)流(602)。
按照本發(fā)明,編碼的視頻數(shù)據(jù)流被解碼(63)并且上述的塊失真檢測方法(10)被應(yīng)用于這樣解碼的圖象或幀,產(chǎn)生至少一個塊失真級別映射圖(16)。然后,相應(yīng)于至少一個塊的組的一個或更多個預(yù)編碼參數(shù)按照它的塊失真級別被修改(64)。
在優(yōu)選實施例中,由預(yù)編碼步驟產(chǎn)生、等于量化步長和用于編碼的比特數(shù)乘積并且相應(yīng)于圖象中的位置宏塊(i,j)的復(fù)雜度X(i,j)被如下修改,產(chǎn)生修改的復(fù)雜度Y(i,j)Y(i,j)=C(L(i,j)).X(i,j)其中C是取決于塊失真級別L(i,j)的系數(shù)。
圖7給出了按照塊失真級別L的系數(shù)C變型的三個例子,一個線性變型(71)和兩個非線性變型(72,73),在例如分別等于1和2的兩個界限Cmin和Cmax之間。
本發(fā)明還涉及用于實現(xiàn)所述編碼方法的編碼裝置。
本文中的括號之間的參考符號不應(yīng)當(dāng)被限制性地解釋。動詞“包括“和它的變形也應(yīng)當(dāng)被寬泛地解釋,即不排除在所述動詞之后列出的以外的元件或步驟和已經(jīng)在所述動詞之后列出并且前面加上“一個”的多個元件或步驟的存在。
權(quán)利要求
1.一種從按照基于塊的編碼技術(shù)編碼然后解碼的視頻數(shù)據(jù)中檢測塊失真(10)的方法,特征在于所述方法包括步驟-計算屬于第一塊的第一視頻數(shù)據(jù)段(11)的第一離散變換(1),-計算屬于第二塊的第二視頻數(shù)據(jù)段(12)的第二離散變換(2),所述第二段和第一段相鄰,-計算相應(yīng)于第一和第二段的串聯(lián)(3)的視頻數(shù)據(jù)串聯(lián)段(13)的離散變換(4),和-計算(5)塊失真級別(17),能夠確定(5a)從變換的視頻數(shù)據(jù)的第一和第二段(14,15)預(yù)測的最大頻率,如果變換的視頻數(shù)據(jù)串聯(lián)段(16)的實際最大頻率大于預(yù)測的最大頻率,能夠確定(5b)基本塊失真,并且能夠?qū)χ辽僖粋€塊的組計數(shù)(5c)基本塊失真的數(shù)目。
2.一種視頻數(shù)據(jù)編碼方法,包括預(yù)編碼步驟(61),解碼步驟(63),和如權(quán)利要求1所述的從視頻數(shù)據(jù)預(yù)編碼然后解碼的塊失真檢測方法(10),以及按照所述組的塊失真級別(17)修改至少一個相應(yīng)于至少一個塊的組的預(yù)編碼參數(shù)的步驟。
3.一種視頻數(shù)據(jù)后處理方法,包括如權(quán)利要求1所述的塊失真檢測方法(10),以及濾波步驟(52),它能夠根據(jù)它的塊失真級別(17)將一組濾波器(53,54,55)中的一個濾波器應(yīng)用給至少一個塊的組。
4.一種從按照基于塊的編碼技術(shù)編碼然后解碼的視頻數(shù)據(jù)中檢測塊失真(10)的裝置,特征在于所述裝置包括-計算屬于第一塊的第一視頻數(shù)據(jù)段(11)的第一離散變換(1)的電路,-計算屬于第二塊的第二視頻數(shù)據(jù)段(12)的第二離散變換(2)的電路,所述第二段和第一段相鄰,-計算相應(yīng)于第一和第二段的串聯(lián)(3)的視頻數(shù)據(jù)串聯(lián)段(13)的離散變換(4)的電路,和-計算(5)塊失真級別(17)的電路,能夠確定(5a)從變換的視頻數(shù)據(jù)的第一和第二段(14,15)預(yù)測的最大頻率,如果變換的視頻數(shù)據(jù)串聯(lián)段(16)的實際最大頻率大于預(yù)測的最大頻率,能夠確定(5b)基本塊失真,并且能夠?qū)χ辽僖粋€塊的組計數(shù)(5c)基本塊失真的數(shù)目。
5.一種視頻數(shù)據(jù)編碼裝置,包括預(yù)編碼單元(61),解碼單元(63),和如權(quán)利要求4所述的從視頻數(shù)據(jù)預(yù)編碼然后解碼的塊失真檢測裝置(10),以及按照所述組的塊失真級別(17)修改至少一個相應(yīng)于至少一個塊的組的預(yù)編碼參數(shù)的裝置。
6.一種視頻數(shù)據(jù)后處理裝置,包括如權(quán)利要求4所述的塊失真檢測裝置(10),以及濾波單元(52),它能夠根據(jù)它的塊失真級別(17)將一組濾波器(53,54,55)中的一個濾波器應(yīng)用給至少一個塊的組。
7.一種特別用于編碼視頻數(shù)據(jù)的“計算機(jī)程序”產(chǎn)品,包括一組指令,當(dāng)它們被裝載到所述視頻編碼器的數(shù)據(jù)處理電路中時,使所述電路實現(xiàn)按照權(quán)利要求1的塊失真檢測方法。
全文摘要
本發(fā)明涉及一種從按照基于塊的編碼技術(shù)編碼然后解碼的視頻數(shù)據(jù)中檢測塊失真(10)的方法。所述方法包括步驟計算第一視頻數(shù)據(jù)段(11)的第一離散變換(1),計算第二視頻數(shù)據(jù)段(12)的第二離散變換(2),所述第二段和第一段相鄰,和計算相應(yīng)于第一和第二段的串聯(lián)(3)的視頻數(shù)據(jù)串聯(lián)段(13)的離散變換(4)它還包括步驟從變換的視頻數(shù)據(jù)的第一和第二段(14,15)與變換的視頻數(shù)據(jù)串聯(lián)段(16)的內(nèi)容計算(5)塊失真級別(17)。這樣就獲得了非常精確的塊失真檢測方法,能夠在視頻數(shù)據(jù)的后處理或編碼中使用。
文檔編號H04N7/26GK1418015SQ0215472
公開日2003年5月14日 申請日期2002年10月11日 優(yōu)先權(quán)日2001年10月16日
發(fā)明者V·羅爾, A·格斯諾特 申請人:皇家菲利浦電子有限公司