專利名稱:用于小波視頻編碼中的高通時間濾波幀的幀內預測的制作方法
技術領域:
本發(fā)明涉及對利用3-D(t+2D和2D+t)小波編碼的視頻序列進行編碼和解碼。更具體地,提出了一種針對在時間分解期間生成的高通幀的多個部分(多個塊)執(zhí)行幀內預測的改進方法。
背景技術:
以下論文是描述3-D子帶編碼的背景參考資料,即Jens-Rainer Ohm的“Three-Dimensional Subband Coding with Motion Compensation”,以及Choi和Woods的“Motion-Compensation 3-D Subband Coding ofVideo”。簡言之,將視頻序列中的諸如圖片組(GOP)的圖像序列經空間小波變形后,通過運動補償(MC)時域分析分解為時空子帶。在另選的方法中,可以將時間分析和空間分析步驟互換。將所得的子帶系數進一步編碼用于傳輸。
當由于對幀的特定區(qū)域/塊的移動估計完全失敗和質量不滿意而不能執(zhí)行時間濾波時,就會在運動補償小波視頻編碼中出現(xiàn)眾所周知的問題。在現(xiàn)有技術中,通過在低通幀的產生中不施加時間濾波,而對于高通幀的產生仍執(zhí)行運動補償預測來解決該問題。后者的問題是,在高通幀中所產生的塊趨向于具有相對高的能量(高值系數),這對進一步的壓縮步驟具有負面影響。在以前的專利申請(EP Appl.No.03255624.3,在此通過引用并入其內容)中,我們引入了利用幀內預測來改善高通幀的問題塊的生成的想法。在那該項發(fā)明中,不是根據與當前幀在時間上相鄰的幀、而是根據在空間上相鄰的幀來預測這些塊??梢詰貌煌念A測模式,在上述專利申請中描述了其中的幾個模式。
大多數利用幀內預測的視頻編碼系統(tǒng)(例如MPEG-4部分10/H.264)將這種預測限制為按塊的掃描順序、利用在先處理的塊來執(zhí)行這種預測(即因果的)。在小波編碼的情況下這種限制不一定是必需的。這在上述的申請中對此進行了討論,并在下面的論文中作了進一步的研究由Woods和Wu所著的“Directional Spatial I-blocks for MC-EZBC VideoCoder”(ICASSP 2004,2004年5月,先在2003年12月向MPEG提出)。該論文中的新穎的部分在于使用插值法以及預測來形成高通幀塊。圖1示出了這種插值的一個示例,其中在當前塊的左側塊和右側塊之間進行插值。
對于除了水平和垂直方向之外的預測/插值方向,情況變得更復雜,并且需要使用的塊的數量可能會非常大。在圖2中示出了這一點,而且示出了在這種情況下,由于候選塊的右側的一些塊的不可用性,使得預測該塊的一部分(淺灰色)而不是對其進行插值。
如在該論文中所討論的,在預測和插值中對非因果(non-casual)方向的使用要求認真考慮塊的可用性,以避免兩個塊彼此根據對方被預測的情況,并確保編碼和解碼之間的一致性。在考慮圖像的掃描方向(通常從左向右和從上向下)時,對因果方向的使用是指使用作為掃描結果已知的信息。在論文中所提出的解決方案是使用二次掃描(two-sweep)過程1.在第一次掃描中,僅將DEFAULT模式非因果塊(即,被認為對其進行的運動補償已經成功的塊)用作預測器。將根據幀內預測產生的MSE與運動補償的MSE進行比較,而將幀內預測導致較低MSE的塊標記為經內部預測的。
2.在第二次掃描中,將在第一步驟中未被標記為經內部預測的所有非因果塊用于預測器。這表示可以將更多的相鄰塊用于經內部預測的塊的預測/插值,這將降低高通塊的MSE。
上述描述的技術具有很多問題。其中之一是當利用經內部預測的塊來反復執(zhí)行幀內預測時的量化誤差的傳播。另一問題是由Woods和Wu所采用的二次掃描過程的次最優(yōu)性。在該算法的第一次掃描中,即使不會內部預測其中一部分時,也要阻止將所有的非DEFAULT塊用作預測器。
發(fā)明內容
在所附權利要求中描述了本發(fā)明的多個方面。
上述的第一個問題通過應用“塊限制”來解決我們不允許將經幀內預測的塊再次用于預測。在Woods和Wu中,在第一掃描中,I塊的候選對于插值/預測是不可用的,這些塊包括P-BLOCK和REVERSE塊。他們僅對非因果塊施加該限制,這在某種程度不能阻止誤差傳播。
我們還設計了依賴于“塊限制”的改進的三次通過模式選擇算法。在適當的位置利用該限制,在模式選擇的第一次通過中可以允許較多的塊,在第二次通過中僅部分地限制它們的數量。然后以與上述的第二次通過相同的方式使用第三次通過,以確保編碼器與解碼器的一致性。
將參照以下
具體實施例方式圖1表示在水平方向上的幀內插值的簡圖;圖2表示在對角線方向上的幀內插值的簡圖;圖3表示在實施例方法中的第三級的簡圖;圖4表示在對角線上的經修改的插值簡圖;圖5表示整塊預測的簡圖;圖6表示整塊插值的簡圖;圖7表示編碼系統(tǒng)的框圖。
具體實施例方式
本發(fā)明的技術基于諸如在上述現(xiàn)有文獻中所述的現(xiàn)有技術,在此通過引用將其并入。
在根據本發(fā)明第一實施例的方法中(“塊限制”),在處理當前塊的時候,僅嘗試幀內預測/插值模式,這些模式不包括將經內部預測的塊用作預測器。該限制可用于僅包括有因果方向的預測(不需多通處理),并可用于當非因果方向處在使用中的時候。
根據本發(fā)明第二實施例的方法也是使用“塊限制”的三次通過模式選擇算法。
該算法可概述為如下1.在第一模式選擇通過中,關閉“塊限制”,我們在對預測器塊本身是否經內部預測不作任何限制的情況下,識別所有可能受益于內部預測的塊。這意思是此處識別的一些塊將有可能不被正確解碼(即“兩個塊被用于相互預測”)。我們在下面將該組問題稱為“相互預測”。
2.在第二次通過中,開啟“塊限制”,對在前面的通過中所識別的候選者進行重新估計。對“塊限制”的使用確保了所得的經內部預測的塊的集合是可用的(即不會繼續(xù)存在類似在上述第1點中提到的問題)。這相似于利用粗區(qū)分的Woods和Wu中的第一次掃描在步驟1中僅對被識別為潛在的經幀內預測的塊施加所述限制,因此允許使用更多數量的塊。
3.在第三次通過中,重新計算與幀內預測的塊相對應的高通幀部分,這次使用從第二次通過中產生的最終塊模式。該通過對確保編碼器和解碼器之間的一致是必需的。
在步驟1中,例如利用諸如現(xiàn)有技術(例如上述現(xiàn)有技術)中的技術來識別用于內部預測的候選塊。然后可以利用所有相鄰的塊對這些候選塊進行內部預測/插值。然后例如利用MSE或MAD(均方誤差或絕對平均差)估計經幀內預測的塊,以確定該誤差是否小于使用運動補償的情況。如果幀內預測優(yōu)于運動補償,則然后在步驟1中將該塊識別為可能受益于幀內預測的塊。
第三次通過是優(yōu)選的,因為,盡管解碼器具有有關以下內部的全部信息,即確切地哪些塊是經過幀內預測的并由此作為預測器是不可用的,但是第二次通過編碼器有時必須將一個塊假定為不可用,即使該塊在后來是可用的。在圖3中給出了一示例。
在該示例中,中間的塊在水平方向上使用幀內插值/預測。在編碼器模式選擇的第二次通過中,在右側的塊還沒有被處理,并根據來自第一次通過的MSE比較,將該右側的塊標記為潛在經內部預測,從而不能用于當前塊的預測/插值。盡管可能最后發(fā)現(xiàn)由于在第二次通過中使用的塊限制而不是經內部預測的。因此,在解碼器中形成該塊的高通系數的過程不同于在編碼器中使用的過程,這將導致重構幀的偏差。
下面描述對上述實施例進一步的具體實現(xiàn)和變化。適當地將組合這些變化和具體實施例。
在一些情況中可能不希望使用插值。一個原因是在前討論過的附加的計算機和存儲器開銷。還有可能是特殊幀或幀組的內容可能有助于預測。為了解決該問題,我們提出基于每幀或每個序列在插值與預測模式之間進行切換。這可以通過以適當的級別(例如幀、圖片組、序列)引入信令機制來實現(xiàn),以通知解碼器哪種變化正在使用中。
還可能的情況是,對于特殊幀或者甚至塊,與預測相比插值可能不改善性能,尤其是當在許可方向上的附加限制被考慮的時候。為了解決后一問題,我們提出基于每個塊進行切換,而不使用明確的信令。在第一解決方案中,如果插值可用于整個塊,則我們僅使用插值(見圖2,是一個不可行的示例),否則我們使用針對整個塊的預測。另一解決方案是改進模式判定過程,以除典型使用的絕對平均誤差或均方誤差之外,利用對預測誤差均勻性(諸如最大絕對差分)的額外測量。因為這樣避免了在塊內引入明顯邊緣,所以尤其有助于視覺質量。
再一解決方案,其包括隱含的信令,該方案為每個方向引入三種單獨的塊模式一種用于插值,兩種用于預測?;谡`差測量的最小值,以與內部/中間模式判定相同的方式來在這三種模式中進行選擇。
對于除水平和垂直之外的方向,即使可以對塊的剩余部分進行插值,但是我們也幾乎必須要對角線應用預測。為了解決這個問題,我們建議在對角線上遺漏像素的位置處利用可用像素的組合。這在圖4中示出,其中在像素x的位置處使用了像素a和b的平均值。
可將與上述的第二次通過相似的想法應用于非插值的情況,其中該想法可以形成單通操作的基礎。在該情況中,不存在相互預測的問題,但是我們觀察到將先前已經過內部預測的塊用作進一步內部預測的基礎會導致過量的誤差傳播,從而會導致嚴重的性能下降。更準確地,可以在因果方向預測的情況中應用“塊限制”,以阻止幀內的誤差傳播。
在僅進行因果預測的情況中,如圖5所示,將整個塊的像素用作預測器,通常產生比僅利用單個線要更好的性能。
對該現(xiàn)象的一種可能的解釋是,當同一像素不用于預測多個像素時,量化誤差傳播的影響就不太顯著。也可以將整個塊預測和插值方法相組合,其中兩個相鄰的塊可以用作用于預測內部塊的候選者。圖6中示出了這種預測的一示例,其中第一半預測是根據上部塊的下半部分進行,第二半預測是根據下部塊的上半部分進行。
根據所觀察的整個塊預測的良好性能可以得出的另一結論是,將整個塊用作預測器應該傾向于將幀內預測限制到結構更加均勻的區(qū)域。因此,我們提出將“基于線”的預測/插值的模式選擇標準修改為包括測量被執(zhí)行了幀內預測的塊的周圍相關區(qū)域的平整度。這可以通過計算經預測的塊的區(qū)域中的像素值的方差來實現(xiàn),該塊將被用于整塊預測。
所述模式選擇標準可適于考慮時間分解級別,在該時間分解級別上形成所研究的高通幀。我們已經做了一些實驗,其中我們對基于時間級別的幀間誤差預測與幀內預測進行的比較中引入了偏差(bias)。所獲得的結果表明當在分解級別越細處幀內預測越有利時,在性能方面稍有改善。
探討對于時間分解級別的依從性的另一方法是通過調整塊模式判定的熵編碼。已經發(fā)現(xiàn),在較低的分解級別處內部預測模式出現(xiàn)得更加頻繁,因此,應該可能通過在設計長度可變的碼時的適當變化來提高編碼效率,即以更細的時間分解級別向內部預測模式分配更短的碼。例如,如果利用總數更大的塊模式,則該方法可能有效。
在內部預測的塊中,如果使用單個像素來預測幾個塊,則會增加量化誤差的影響。因此,對于將用作預測器的像素的選擇優(yōu)選地考慮根據單個預測器像素預測的像素的數量。
本發(fā)明可利用通過適當修改而與現(xiàn)有技術的系統(tǒng)相似的系統(tǒng)來實現(xiàn)。例如,除了修改MCTF(運動補償時間濾波)模塊用于執(zhí)行上述實施例中的處理之外,編碼系統(tǒng)的基本部件如圖7中所示。
在本說明書中,使用術語“幀”來描述圖像單元,包括濾波之后,但是該術語也用于其它相似術語,諸如圖像、場、圖片、或圖像的子單元或區(qū)域、幀等。在適當的時候,可以將術語多個像素和多個塊或多組像素互換地使用。在本說明書中,除從上下文中可明顯看出的情況之外,圖像一詞的意思是整個圖像或圖像的區(qū)域。同樣,圖像的區(qū)域也可以表示整個圖像。圖像包括幀或場,并涉及靜止圖像,或諸如電影或視頻中的系列圖像中的圖像,或在相關的圖像組中的圖像。
圖像可以是灰度級或彩色圖像,或者是另一類型的多譜線圖像(例如IR、UV或其它電磁圖像),或者是聲學圖像等。
除了根據上下文可明確的或如本領域的普通技術人員所理解的以外,幀內預測可以表示插值,反之亦然,并且預測/插值意思是預測或插值或兩者,所以本發(fā)明的實施例可以僅包括預測或僅包括插值,或包括預測和插值的組合(用于內部編碼),并且包括運動補償/幀內編碼,并且塊可以表示來自塊的一個或多個像素。
例如可以利用合適的軟件和/或硬件改進,在計算機系統(tǒng)中實現(xiàn)本發(fā)明。例如,本發(fā)明可以利用計算機或類似物來實現(xiàn),該計算機或類似物具有諸如處理器或控制裝置的控制或處理裝置;包括圖像存儲裝置的數據存儲裝置,諸如存儲器、磁存儲器、CD、DVD等;諸如顯示器或監(jiān)視器或打印機的數據輸出裝置;諸如鍵盤的數據輸入裝置;以及諸如掃描儀的圖像輸入裝置;或者這些部件和額外部件的任何組合。可以以軟件和/或硬件的形式,或在專用裝置中或例如芯片的專用模塊中提供本發(fā)明的多個方面。例如可以通過因特網從其它部件遠程提供根據本發(fā)明實施例的裝置中的系統(tǒng)部件。如圖7中所示的編碼器和對應的解碼器例如具有用于執(zhí)行反向解碼操作的對應部件。
可以使用其它類型的3-D分解和變形。例如,可以將本發(fā)明應用于其中首先執(zhí)行空間濾波然后執(zhí)行時間濾波的分解方案中。
權利要求
1.一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,該方法包括(a)第一階段的內部預測/插值,在該階段中可以使用任何相鄰的塊;(b)對每個塊估計步驟(a)的內部預測/插值,以識別用于幀內預測的塊;(c)第二階段的內部預測/插值,其不將步驟(b)中識別出的塊用于其它塊的內部預測/插值。
2.根據權利要求1所述的方法,其中在步驟(c)中,除在步驟(b)中識別出的塊之外,任何相鄰的塊都可以用于內部預測/插值。
3.根據權利要求1或權利要求2所述的方法,還包括(d)估計步驟(c)中的所述內部預測/插值,以識別用于內部預測/插值的塊;以及(e)對在步驟(d)中所識別的塊進行第三階段的內部預測/插值。
4.一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,該方法包括識別用于幀內預測/插值的塊,其中用于幀內預測/插值的塊不用于其它塊的內部預測/插值。
5.根據權利要求4所述的方法,其中僅利用掃描順序中的前面的塊來執(zhí)行內部預測/插值,并且用于根據所述在前塊的幀內預測/插值的塊不用于其它塊的內部預測/插值。
6.一種利用包括時間濾波的3-D分解并利用幀內預測和插值對幀序列進行編碼的方法,該方法包括根據預定標準在多個內部預測/插值模式之間進行切換。
7.根據權利要求6所述的方法,包括基于例如塊、幀、圖片組和序列進行切換。
8.根據權利要求7所述的方法,包括只有當將幀內插值用于整個塊時,才對該塊使用幀內插值。
9.根據權利要求6所述的方法,其中所述多個模式包括基于線的預測/插值和基于塊的預測/插值。
10.根據權利要求9所述的方法,其中基于平整度的測量來進行切換。
11.根據權利要求7所述的方法,包括基于誤差測量最小值以塊為基礎在插值與兩種對應預測之間進行切換。
12.一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,該方法包括在幀間預測/插值與幀內預測/插值之間進行切換,其中所述切換依從于時間分解級別。
13.根據權利要求11所述的方法,包括在基于時間分解級別進行預測誤差比較中使用偏差。
14.一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,所述方法包括根據用于預測/插值的塊使用兩個或更多個行。
15.根據權利要求13所述的方法,包括使用整個塊來進行預測。
16.根據權利要求14所述的方法,包括使用半塊來進行預測/插值。
17.一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,所述方法包括由基于一個或多個相鄰像素的值來替換不可用于預測/插值的像素。
18.根據權利要求16所述的方法,包括使用兩個或更多個相鄰像素的組合。
19.根據權利要求17所述的方法,包括利用與位于塊的對角線端處的像素垂直相鄰和水平相鄰并且與所述塊相鄰的像素的平均值來替換所述像素。
20.一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,所述方法包括通過使用對預測誤差的兩次或更多次測量,以確定是否利用運動補償(幀間)或幀內預測/插值,或確定是否利用幀內預測或幀內插值。
21.一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,其中所使用的熵編碼的類型依從于時間分解級別。
22.一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,其中所述對將用作預測器的像素的選擇考慮了根據預測器像素所預測的像素的數量。
23.一種對利用前述任一項權利要求的方法而編碼的幀進行解碼的方法。
24.一種對利用根據權利要求1-23中的任一項所述的方法而編碼的數據的使用,包括例如包括發(fā)送和接收。
25.一種用于執(zhí)行根據權利要求1-23中的任一項所述的方法的編碼和/或解碼裝置。
26.一種用于執(zhí)行根據權利要求1-23的任一項所述的方法的計算機程序、系統(tǒng)或計算機可讀存儲介質。
全文摘要
用于小波視頻編碼中的高通時間濾波幀的幀內預測。一種利用包括時間濾波的3-D分解并利用幀內預測/插值對幀序列進行編碼的方法,該方法包括(a)第一階段的內部預測/插值,在該階段中可以使用任何相鄰的塊;(b)針對每個塊估計步驟(a)的內部預測/插值,以識別用于幀內預測的塊;(c)第二階段的內部預測/插值,其中不將步驟(b)中識別出的塊用于其它塊的內部預測/插值。
文檔編號H04N7/26GK1717056SQ20051008187
公開日2006年1月4日 申請日期2005年7月4日 優(yōu)先權日2005年7月4日
發(fā)明者L·切普林斯基, J·卡巴爾, S·甘巴里 申請人:三菱電機株式會社