編碼增強層視頻數據的方法和設備的製作方法
2023-05-23 12:37:51 2
專利名稱:編碼增強層視頻數據的方法和設備的製作方法
技術領域:
本發明涉及一種用於對視頻數據進行編碼的方法。
背景技術:
H.264/AVC標準提供了極好的編碼效率,但是並沒有考慮可縮放的視頻編碼(SVC)。SVC可以提供不同的層,通常是基本層(BL)和增強層(EL)。為了給出視頻編解碼器的更多功能,運動圖像專家組(MPEG)考慮為SVC提供標準。建議了各種技術,最終聯合視頻工作組(JVT)啟動了稱為JSVC的標準,相應的參考軟體描述稱為JVSM。SVC為應用程式提供了時間、SNR和空間的可縮放性。JVSM的基本層與H.264兼容,如所規定的,H.264的大部分組件用於JSVM,從而僅有個別組件需要根據子帶結構進行調整。在所有的可縮放性中,由於很難使用兩個空間可縮放層之間的冗餘,所以空間可縮放性是最具挑戰性和感興趣的主題。
SVC為空間可縮放性提供了多種技術,如IntraBL模式、殘餘預測或BLSkip(基本層跳過)模式。可以在宏塊(MB)級上選擇這些模式。
IntraBL模式使用上採樣的重構BL畫面來預測EL中的MB,並僅對殘餘進行編碼。殘餘預測嘗試通過減去BL的上採樣MC殘餘來減小EL的運動補償(MC)殘餘的能量。
BLSkip模式利用了EL中MB的上採樣MV,並且如果MB選擇了該模式,則僅需要將殘餘寫入比特流。因此,在空間可縮放情況下,BLSkip模式利用了BL和EL的MV之間的冗餘。
在SVC的JSVM中,BLSkip模式用於幀間編碼預測(P)幀和幀間編碼雙預測(B)幀的MB。將通常為每個4×4塊存儲的BL MV通過與2相乘來進行上採樣。然後,上採樣後的MV將與更高解析度EL的8×8塊相對應。即,如果QCIF(176×144)BL幀具有(11×9)個MB,以及每個MB具有十六個4×4塊,則BL中存在11×9×16個MV(如果沒有幀內MB)。當所選MV是(h,v),以及相應的4×4塊具有起始坐標(x,y),則上採樣後的MV是(h*2,v*2),以及在高解析度幀(CIF352x288)中相應的8×8塊是(2*x,2*y)。因此,將向具有起始坐標(2x,2y)、(2x+4,2y)、(2x,2y+4)和(2x+4,2y+4)的四個4×4塊分配相同的MV(2h,2v)。
然後,在模式判決過程中,當BLSkip模式是當前的備選項時,MB(如果它具有起始坐標(2x,2y))將通過使用實際四個MV來設置MV。對於四個8×8子塊,為當前的MB設置四個MV,它們具有相應的起始坐標(2x,2y),(2x+8,2y),(2x,2y+8)和(2x+8,2y+8)。
發明內容
用於所描述的MB的MV結構模式實際上是MODE_8×8,這表示將在解析度深度8×8而非4×4中規定MV的差別。
上述結構表示可以通過使用四個MV來處理每個8×8塊的MC過程。然而,這4個MV實際上是相同的。使用這種模式,由於在解碼過程中可以按照相同的方式來預測這些MV,所以MV並不用於被編碼。所以,如果預測因子與真實的運動稍有類似,則節省了許多比特。SVC所使用的上述解決方案是簡單的,並具有低複雜度。然而,上採樣後的MV由於兩個原因而並不非常精確。一個原因在於,MV僅具有1/2的像素精度,而主要為MC所使用的MV具有1/4的像素精度;另一原因在於,對於每個8×8塊,它的四個4×4子塊使用相同的MV,這從解析度的角度來看也可能並不足夠準確。
因此,由本發明所解決的問題是提高預測MV的精度,尤其對於BLSkip模式。
本發明給出了對於空間可縮放性的更好的運動場上採樣和內插方法,從而提高了SVC幀內畫面的編碼效率。
本發明首先對由8×8MV所構造的運動場進行平滑並內插到由4×4MV所構造的更好粒度運動場,然後在預測過程期間,使用標量中值、矢量中值和平均方法來為BLSkip模式選擇更好的預測因子。結果,所公開的MV預測技術實現了改進的編碼效率,尤其對於SVC JSVM1.0中的BLSkip模式。
根據本發明,用於對更高層視頻數據進行編碼的方法包括以下步驟 對基本層的運動場進行上採樣, 內插幀內編碼宏塊的運動矢量, 將8×8塊運動場內插至4×4塊運動場,以及 在基本層跳過模式中生成用於4×4塊的運動矢量預測因子,其中,使用來自相鄰塊的運動矢量。
此外,根據本發明,用於對更高層視頻數據進行編碼的設備包括 裝置,用於對基本層的運動場進行上採樣, 裝置,用於內插幀內編碼宏塊的運動矢量, 裝置,用於將8×8塊運動場內插至4×4塊運動場,以及 裝置,用於在基本層跳過模式中生成用於4×4塊的運動矢量預測因子,其中,使用來自相鄰塊的運動矢量。
在從屬權利要求、以下描述和附圖中公開了本發明的有利實施例。
參照附圖描述了本發明的示例性實施例,其中 圖1是用於幀內MB的8×8MV內插; 圖2是用於4×4塊的MV的雙線性內插;以及 圖3是用於4×4塊的雙線性內插的相關塊。
具體實施例方式 目前,僅將根據基本層(低解析度層)的協同定位的MV上採樣的MV用作增強層(高解析度層)的預測因子,上採樣後的MV的精度很低(通常,如果在運動估計(ME)過程中使用1/4像素精度,則是1/2像素精度)。以及MV分割僅用於8×8塊。即,8×8塊中的每4個4×4塊將共享相同的MV。本發明關注於尤其對於BLSkip模式,通過首先使用運動場平滑技術,然後給出更多的MV作為當前MB的預測因子,以確定是否將要選擇BLSkip模式,從而提高MV的精度。給出BLSkip模式的更好的(多個)預測因子(它對於畫面中的MB具有高百分比),可以提高編碼效率。
為了實現更高的編碼效率,本發明通過對於選擇BLSkip模式的MB給出更好的MV預測因子,改進了BLSkip模式。為了獲得將更加接近於真實運動的精確的MV,首先利用多種方法來平滑BL的運動場,然後利用策略從運動場以及來自當前層的相鄰MV中選擇用於EL的MB的MV。
在以下的2D區域P中定義運動場MY(p)
N2,其中,D是點陣像素集,以及N是整數欄位。
由於默認的MV精度是四分之一(1/4)像素,所以每個MV mv(p)實際上是4和ME的替換的乘積。
對於來自BL的上採樣欄位,可以將它看作在由8x8點陣像素組成的區域P中所限定的函數。所以P是{(Px,Py)|Px=8x,Py=8y,對於任何o≤x<22,及0≤y<18)。這裡,x和y的上界實際上是由上採樣之後的幀的解析度的寬度和高度所確定的寬度/8和高度/8. 實際上,如果MB是幀內,則不具有MV,所以不存在對於P中相應的四個值的M/(P)的限定。所以通過內插首先給出對於P中那些值的定義,然後使用相鄰的MV。
當具有對於在P的8x8點陣定義區域中任何值的限定時,將構造另一運動場MV(P4)
N2,其中,在4x4點陣像素的區域內定義該函數。
1.在幀內區域中定義運動場 在H.264/AVC中,甚至幀間畫面(P或B)也具有幀內MB。在SVC中,保持相同的特徵。所以在第一步驟中,給出了對於與幀內MB相對應的點陣的限定。
可能的解決方案是使用雙線性內插以獲得用於幀內MB的8x8MV。第一步驟是對於來自每個方向的幀內MB中的8x8塊,發現不屬於幀內MB的最近的8×8塊。
如果16×16MB的起始坐標是(x,y),則如果附近(相鄰)的MB是幀間MB,則所謂最近的MV具有以下坐標 塊0A(x-8,y),B(x,y-8),C(x+16,y),D(x,y+16) 塊lA(x-8,y),B(x+8,y-8),C(x+16,y),D(x+8,y+16) 塊2A(x-8,y+8),B(x,y-8),C(x+16,y+8),D(x,y+16) 塊3A(x-8,y+8),B(x,y-8),C(x+16,y+8),D(x+8,y+16) 在圖1中,不同方向的四個最近的MV(mva,mvb,mvc,mvd)用於內插塊0的MV(mv0)。
實際上,在上採樣後的運動場中,由於16×16幀內MB(無論它是INTRA16×16還是INTRA4×4)將變成可分為四個16×16幀內MB的32×32塊,所以四個幀內MB將同時出現。如果附近的MB仍然是幀內編碼的,則本發明的方法繼續沿相同方向進行搜索,直至遇到幀間MB,然後使用該幀間MB。在得到四個8×8塊之後,可以執行MV內插過程。
定義了兩個塊的距離,要由Dist(PA-PB)=|xa-xb|+|ya-yb|計算獲得,其中PA和PB是8×8塊的起始坐標。
例如,用於圖1中塊0的最近8×8塊是塊A、B、C、D。以及0與A、B、C、D的距離分別是Da=8,Db=8,Dc=16,Dd=16。塊0中的內插MV由以下計算獲得 mv0=((Dc·mva+Da.mvc)/(Da+Dc)+(Dd·mvb+Db.mvd)/(Db+Dd))/2 2.對8×8運動場進行平滑並內插至4×4運動場 現在,在8×8點陣的任何像素中定義運動場。下一步驟是創建在4×4點陣中定義的運動場。一個可能的解決方案在圖2中示出。例如,用於4×4塊A(b14×4A)的權重分別是關於8×8塊0、1、2、3(b18×80...3)的9/16、3/16、3/16、1/16。
換言之,8×8塊在4×4塊上的權重或影響取決於它的2×2子塊的個數,該子塊包括在4×4塊內或直接與4×4塊相鄰。如在與圖2相對應的圖3中所示,這些是b18×8_0中的9、b18×8_1和b18×8_2的每個中的3、以及b18×8_3中的1。
對於4×4塊的每個中心點,存在8×8塊的四個最近中心點,它們包含MV(mva,mvb,mvc,mvd)。4×4塊的MV通過以下公式進行內插 其中,下標x是圖2中所示的A、B、C、D。對於公式中的每個預測因子MV,存在兩個權重。
Weightv=(xp-x0)/(x1-x0) Weighth=(yp-y0)/(y4-y0) 其他解決方案也可用於運動場的內插和平滑。
3.BLSkip模式的運動矢量預測 當在模式判決過程期間,當前模式備選項是BLSkip時,由於BL運動場實際上是基於4×4點陣的,所以將把運動補償模式設為MODE4×4。
簡單的解決方案是將上採樣運動場的4×4塊的協同定位MV用作MB的每個4×4塊的BLSkip模式。
另一解決方案是使用相鄰的MV來預測用於當前4×4塊的MV。備選項可以是四個塊的MV(左4×4塊、上4×4塊、下4×4塊和右4×4塊)或者八個塊的MV(再加上左上4×4塊、左下4×4塊、右上4×4塊和右下4×4塊)。
對於特定備選MV,可以使用多種方法來獲得預測因子對備選項進行平均、取備選項的縮放中值、或者取備選項的矢量中值。
平均意味著通過對備選項的各個水平或垂直值進行平均來生成MV的水平值和垂直值。
縮放中值也通過分別獲得水平值和垂直值的中值來生成。為了得到多個值的中值,簡單的解決方案是首先對值進行分類,然後使用中值索引獲得所分類的列表中的值。
矢量中值方法得出了與其他具有最小距離之和的MV。所以以下等式的解決方案是矢量中值MV。
為了低通畫面,或者如果參考幀遠離當前幀,則平均方法將得到更好的結果。如果兩個幀的距離相靠近,則中值或矢量中值方法將會更好。一種自適應MV預測策略是對於低通幀利用平均方法,以及對於高通幀利用中值或矢量中值方法。
原理上,用於提高SVC中BLSkip模式的性能的本發明的方法包括以下步驟 -對基本層的運動場進行上採樣; -內插幀內MB的運動矢量; -將8×8塊運動場內插至4×4塊運動場; -使用相鄰備選項,在BLSkip模式中生成4×4塊的MV預測因子。
用於提高SVC中BLSkip模式的性能的本發明的設備具有 -裝置,用於對基本層的運動場進行上採樣; -裝置,用於內插幀內MB的運動矢量; -裝置,用於將8×8塊運動場內插至4×4塊運動場; -裝置,用於使用相鄰備選項,在BLSkip模式中生成4×4塊的MV預測因子。
在本發明的一個實施例中,來自不同方向的四個最近的8×8塊的MV用於預測幀內MB中的8×8塊。
在本發明的一個實施例中,雙線性內插用於將8×8運動場內插到4×4運動場。
在一個實施例中,選擇策略(例如,平均、中值和矢量中值)用於從相鄰MV備選項中得到MV。
在一個實施例中,使用自適應MV選擇策略,它考慮了當前幀與參考幀之間的距離如果距離短,則優選中值或矢量中值,否則優選平均。
簡而言之,LSVM將上採樣後的BLMV用作用於BLSkip模式的更高解析度層的MV。然而,上採樣後的MV並不足夠好,還可以進行改進。所有上採樣後的MV實際上是一半像素精度,以及在8×8塊中的每個四個4×4塊共享相同的MV。在本發明中,提供了給出用於BLSkip模式的最佳運動矢量的方法和設備。
本發明的核心在於以下為了實現更高的編碼效率,本發明通過為選擇BLSkip模式的MB給出更好的MV預測因子來改進BLSkip模式。為了得到將更加接近於真實運動的更加準確的MV,首先利用多種方法來平滑BL的運動場,然後利用策略,根據運動場以及根據來自當前層的相鄰MV,為EL的MB選擇MV。
本發明的主要優點在於,改進了SVC的幀間編碼畫面的編碼效率,這通過更好的運動場上採樣和自適應內插方法來實現。
權利要求
1.一種編碼空間增強層視頻數據的方法,包括以下步驟
-對基本層的運動場進行上採樣,
-將上採樣後的運動場的運動矢量分配給增強層的16×16宏塊;
-根據16×16宏塊的運動矢量來生成8×8塊的運動矢量,其中,從四個最近的幀間編碼的8×8塊(blockA、...、blockD)的運動矢量中內插幀內編碼的8×8塊(block1、...、block3)的運動矢量;以及
-從8×8塊(block1、...、block3)的運動矢量中內插4×4塊的運動矢量。
2.如權利要求1所述的方法,其中,為了所述生成幀內編碼的8×8塊(塊0)的運動矢量,使用雙線性內插。
3.如權利要求2所述的方法,其中,根據mv0=((Dc·mva+Da·mvc)/(Da+Dc)+(Dd·mvb+Db·mvd)/(Db+Dd))/2,雙線性內插考慮了從當前8×8塊至四個最近幀間編碼的8×8塊(blockA、...、blockD)的距離(Da、Db、Dc、Dd)。
4.如前述權利要求之一所述的方法,其中,為了內插4×4塊(bl4×4A、...、bl4×4D)的運動矢量,僅使用當前16×16宏塊的8×8塊的運動矢量。
5.如權利要求4所述的方法,其中,所述內插4×4塊(bl4×4A、...、bl4×4D)的運動矢量包括將權重分配給當前16×16宏塊的8×8塊的運動矢量,其中,分配給8×8塊的運動矢量的權重取決於與4×4塊直接相鄰或包括在4×4塊中的2×2子塊的個數。
6.如前述權利要求之一所述的方法,還包括執行編碼模式判決的步驟,其中,對於基本層跳過模式,使用所述4×4運動矢量作為預測因子。
7.一種編碼空間增強層視頻數據的設備,包括
-裝置,用於對基本層的運動場進行上採樣;
-裝置,用於將上採樣後的運動場的運動矢量分配給增強層的16×16宏塊;
-裝置,用於根據16×16宏塊的運動矢量來生成8×8塊的運動矢量,其中,從四個最近的幀間編碼8×8塊(blockA、...、blockD)的運動矢量中內插幀內編碼8×8塊(block1、...、block3)的運動矢量;以及
-裝置,用於從8×8塊(block1、...、block3)的運動矢量中內插4×4塊的運動矢量。
8.如權利要求7所述的設備,其中,為了所述內插4×4塊(bl4×4A、...、bl4×4D)的運動矢量,僅使用當前16×16宏塊的8×8塊的運動矢量。
9.如權利要求7或8所述的設備,其中,所述內插4×4塊(bl4×4A、...、bl4×4D)的運動矢量包括將權重分配給當前16×16宏塊的8×8塊的運動矢量,其中,分配給8×8塊的運動矢量的權重取決於與4×4塊直接相鄰或包括在4×4塊中的2×2子塊的個數。
10.如權利要求7、8或9所述的設備,還包括裝置,用於執行編碼模式判決,其中,對於基本層跳過模式,使用所述4×4運動矢量作為預測因子。
全文摘要
一種用於在SVC中提高BLSkip模式性能的方法,包括以下步驟對基本層的運動場進行上採樣,內插幀內編碼MB的運動矢量,將8×8 塊運動場內插至4×4塊運動場,以及使用相鄰備選項,在BLSkip模式中生成用於4×4塊的MV預測因子。
文檔編號H04N7/24GK101147399SQ200680008133
公開日2008年3月19日 申請日期2006年3月20日 優先權日2005年4月6日
發明者穎 陳, 翟傑夫, 鵬 尹, 普爾溫·比貝哈斯·潘迪特 申請人:湯姆森許可貿易公司