專利名稱:視頻編碼方法以及對應的可傳輸視頻信號的制作方法
技術領域:
本發(fā)明總體上涉及視頻壓縮領域,更具體講,涉及MPEG系列(MPEG-1、MPEG-2、MPEG-4)和ITU-H.26X系列(H.261、H.263和擴展、H.26L)的視頻編碼標準。更具體地,本發(fā)明涉及一種視頻編碼方法,該方法應用于與連續(xù)場景對應的視頻幀序列,并且為了對所述場景的所有視頻對象進行編碼,生成由代表所有連續(xù)的編碼視頻對象平面(VOP)的視頻數據構成的編碼比特流,其中,每個數據項通過一種比特流語法描述,允許識別和解碼所述比特流的內容的全部段,所述視頻數據根據包括至少一個信道的獨立信道描述,且所述序列的時間分辨率通過分別定義以下內容的語法要素具體描述每秒均勻間隔的次間隔,稱為“ticks”,的第一數量;在顯示順序中的連續(xù)VOP之間的第二數量的“ticks”;表示所有VOP是否用固定的VOP瞬時速率編碼的標志,當所述第二數量固定時從所述第二數量導出該VOP速率或者當所述第二數量是變量時從每個VOP頭中提供的時間戳導出該VOP速率。
本發(fā)明還涉及由通過實施所述編碼方法生成的編碼比特流組成的可傳輸視頻信號,并且涉及用于對所述信號進行解碼的解碼方法和解碼設備。
背景技術:
在第一視頻編碼標準中(直到MPEG-2和H.263),將圖像假設為矩形,并且按照三個獨立信道對其進行描述一個亮度信道和兩個色度信道。在MPEG-4的情況下,引入了附加信道如α信道(在MPEG-4術語中也稱為“任意形狀信道”)、視差信道或者深度信道。按照順序電平描述了這些信道的空間和時間分辨率(在MPEG-4術語中稱為視頻對象層或VOL)。
對于幀速率,只給出所有信道的一個描述,如下所述。序列的時間分辨率用下面的語法要素描述“vop_time_increment_resolution”(按照16位編碼)
“fixed_vop_rate”(按照1位編碼),以及“fixed_vop_time_increment”(按照1到16位編碼),例如,如MPEG-4文獻w3056,“Information Technology-Codingof audio-visual objects-Part 2Visual”,ISO/IEC/JTCl/SC29/WG11,Maui,USA,December 1999中第36和112頁所定義的。下面以更詳細的方式描述這些要素。
語法要素“vop_time_increment_resolution”是一個16位無符號整數,表示在一個模時間中(模時間代表一秒鐘的固定間隔),稱為ticks的均勻分隔的次間隔的數量。
語法要素“fixed_vop_time_increment”代表顯示順序的,兩個連續(xù)的VOP之間的ticks的數量。“vop_time_increment_resolution”給出的ticks的長度可以在
的范圍內取值。按照表示上述范圍所需要的無符號整數的最小數計算表示所述值的數。如果“fixed_vop_rate”為“1”,則僅在比特流中發(fā)現該要素“fixed_vop_time_increment”,并且其值必須與由顯示順序的任意兩個連續(xù)VOP的顯示時間之間的距離給出的常數一致。在該情況下,按照比率“vop_time_increment_resolution”/“fixed_vop_time_increment”給出固定VOP速率,禁止零值。
語法要素“fixed_vop_rate”是一個一位的標志,該標志表示用固定的VOP瞬時速率對所有VOP(按照MPEG-4術語的畫面)編碼。當且僅當視頻對象層中顯示順序的任意兩個連續(xù)VOP的顯示時間之間的所有距離都是常數時,其值才為“1”。在該情況下,VOP速率可以從“fixed_vop_time_increment”語法要素中導出。如果該標志的值為“0”,則顯示順序中的任意兩個連續(xù)VOP之間的顯示時間可以是變量此時可以用在VOP頭中提供的時間戳表示它。
在任意情況下(固定VOP速率或不是),每個編碼VOP的顯示時間都是從由VOP頭中按照1到16位編碼的語法要素“vop_time_increment”從所述比特流中恢復的(見引用的MPEG-4文獻的40和120頁)。其可以取
范圍的值。按照表示上述范圍所需要的無符號整數的最小數計算表示所述值的數。通過由“vop_time_increment_resolution”除該值,恢復以秒為單位的本地時基。
根據前面所述可見,很不幸,所有信道必須共用相同的描述。例如,不可能描述按照30Hz亮度、15Hz色度和10Hz形狀的幀速率編碼的視頻序列。
發(fā)明內容
因此,本發(fā)明的一個目的是提出一種圖像編碼方法,以允許利用具有不同幀速率的信道描述一個視頻序列。
為此,本發(fā)明涉及如在本說明的前言部分定義的方法,其特征還在于所述語法還包括在要被發(fā)送和/或存儲的比特流中的用于描述每個所描述的信道的最大幀速率的特定標志。
本發(fā)明的另一個目的是提出一種可傳輸視頻信號,該信號由通過實施視頻編碼方法生成的編碼比特流組成,該視頻編碼方法應用于與連續(xù)場景對應的視頻幀序列,并且為了對所述場景的所有視頻對象進行編碼,生成由代表所有連續(xù)的編碼視頻對象平面(VOP)的視頻數據構成的編碼比特流,且其中,用一種比特流語法來描述每個數據項,以允許任何解碼器識別和解碼所述比特流的內容的所有段,該視頻數據根據至少包括一個信道的獨立信道描述,且所述序列的時間分辨率用分別定義以下內容的語法要素具體描述每秒鐘均勻間隔的,稱為“ticks”的次間隔的第一數量;在顯示順序中的連續(xù)VOP之間的ticks的第二數量;表示是否用固定的VOP瞬時速率對所有VOP進行編碼的標志,當所述VOP速率固定時從所述第二數量得到,或者當所述VOP是變量時從每個VOP頭中提供的時間標記得到;在要被發(fā)送和/或存儲的編碼比特流中,所述可傳輸視頻信號包括用于描述每個所描述的信道的最大幀速率的特定標志。
本發(fā)明還涉及為了接收和解碼可傳輸視頻信號而提供的視頻解碼方法,該信號由通過實施視頻編碼方法生成的編碼比特流組成,該視頻編碼方法應用于與連續(xù)場景對應的視頻幀序列,并且為了對所述場景的所有視頻對象進行編碼,生成由代表所有連續(xù)的編碼視頻對象平面(VOP)的視頻數據構成的編碼比特流,其中,用一種比特流語法來描述每個數據項,該比特流語法允許任何解碼器對所述比特流的內容的所有段進行識別和解碼,所述視頻數據根據至少包括一個信道的獨立信道描述,且所述序列的時間分辨率通過分別定義下列內容的語法要素具體描述每秒鐘均勻間隔的,稱為“ticks”的次間隔的第一數量;在顯示順序中的連續(xù)VOP之間的ticks的第二數量;表示是否用固定的VOP瞬時速率對所有VOP進行編碼的標志,當所述VOP速率固定時從所述第二數量得到,或者當所述VOP是變量時從每個VOP頭中提供的時間標記得到;在要被發(fā)送和/或存儲的編碼比特流中,所述可傳輸視頻信號包括用于描述每個所描述的信道的最大幀速率的特定標志。
本發(fā)明還涉及對應的解碼設備。
以下將參照附圖,以更詳細的方式描述本發(fā)明,其中圖1示出了具有運動補償的幀間預報的MPEG編碼器的例子。
具體實施例方式
在以下描述中,假設由序列級(或VOL)的幾個語法要素描述信道的出現,例如,這些要素為Video_object_layer_lum 1位Video_object_layer_chrom1位(對于黑白為0)Video_object_layer_shape1位(對于矩形為0)Video_object_layer_additional_channels 1位Number_of_additional_channels 4位這些語法要素含義如下如果“Video_object_layer_lum”為1,則表示比特流包含亮度信道的語法要素;如果“Video_object_layer_chrom”為1,則比特流包含色度信道的語法要素,否則假設序列為黑白;如果“Video_object_layer_shape”為1,則比特流包含要描述畫面的非矩形形狀的語法要素,否則假設畫面的形狀為矩形;如果“Video_object_layer_additional_channels_enable”為1,則比特流包含描述附加信道的語法要素(在這種情況下,變量“Number_additional_channels”保持附加信道的編號)。
那么,在高描述級(相當于VOL MPEG-4級),所提出的解決方法基于表格1的標志的引入,用于參照全球時基,描述各個信道的最大幀速率表格1
利用下面的偽C代碼可以從比特流中讀出這些語法要素,該偽C代碼說明信道出現與語法要素的有效性之間的關系。函數read_bits(n)從比特流返回下一個未讀的“n”位,語法要素的缺省值為0<pre listing-type="program-listing"> Vol_time_increment_resolution=read_bits(16); If(Video_object_layer_lum) { Vol_time_increment_resolution_lum_ratio=read_bits(4); If(Video_object_layer_chrom) Vol_time_increment_resolution_chrom_ratio=read_bits(3); } If(Video_object_layer_additional_channels) {<dp n="d5"/> For i=0;i<number_of_additional_channels;i++) Vol_time_increment_resolution_channels_ratio[i]=readbits(4) } Vol_time_increment_resolution_lum= Vol_time_increment_resolution/(Vol_time_increment_resolution_chrorn_ratio+1); Vol_time_increment_resolution_chrom= Vol_time_increment_resolution/(Vol_time_increment_resolution_chrom_ratio+1); Vol_time_increment_resolution_channels[i]= Vol_time_increment_resolution/(Vol_time_increment_resolution_channels_ratio[i]+1)</pre>可以給出一個實現的例子。具有30Hz的二進制形狀的,以15Hz亮度和10Hz色度的幀速率編碼的CIF 4∶2∶2型的序列可以用以下參數描述信道出現描述Video_object_layer_lum1Video_object_layer_chrom 1Video_object_layer_additional_channels1Number_of_additional_channels 1Video_object_layer_shape 1每信道的格式說明Vol_time_increment_resolution 十進制30Vol_time_increment_resolution_lum_ratio 0001Vol_time_increment_resolution_chrom_ratio0010Vol_time_increment_resolution_chape_ratio0000可以將上述的視頻編碼方法在編碼設備中實施,例如,圖1中示出的編碼設備表示一個具有運動補償的幀間預報的MPEG編碼器的例子,所述編碼器包括編碼和預報級。編碼級本身包括串聯的模式確定電路11(用于確定MPEG中定義的編碼模式I、P或B的選擇)、DCT電路12、量化電路13、變量長度編碼電路14和與用于按照緩沖器的內容適配量化的速率控制電路16關聯的緩沖器15。預報級包括串聯的運動估算電路21,隨后是運動補償電路22的,以及串聯的逆量化電路23、逆DCT電路24和加法器25。減法器26允許向編碼級(11到16)發(fā)送編碼設備的輸入信號IS與在預報級的輸出(即,在運動補償電路22的輸出)可用的預報信號之間的差異。這個差異,或者殘留,是編碼比特流,并且緩沖器15的輸出信號CB是編碼比特流,按照本發(fā)明,這個編碼比特流將包括在高描述級表示編碼比特流中描述的每個信道是否出現編碼殘留信號的語法要素。
編碼設備的另一個例子可以基于MPEG-4標準的規(guī)格。在MPEG-4視頻幀中,將可以由一個或幾個視頻對象(以及它們可能的增強層)組成的每個場景構成為這些對象的組合,稱為視頻對象(VO),并且使用獨立的基本比特流對其進行編碼。因此,首先利用分割電路將輸入的視頻信息分解為VO,并且將這些VO發(fā)送到包括形狀編碼、運動編碼和紋理編碼的基本編碼結構??紤]到這些編碼步驟,將每個VO分為宏塊,宏塊存在于,例如,用于4:2:0格式的四個亮度塊和兩個色度塊中,并且對宏塊逐一進行編碼。按照本發(fā)明,包括由所述編碼步驟產生的編碼信號的多路復用比特流將包括用于在要被發(fā)送和/或存儲的編碼比特流中描述每個所描述的信道的最大幀速率的特定標志。
相反,按照對應的解碼方法,在接收包括所述標志并且執(zhí)行所述解碼方法的視頻解碼器中利用適當的裝置讀取這些被發(fā)送到解碼側的特定標志。能夠對編碼比特流的內容的所有段進行識別和解碼的解碼器讀取所述附加的語法要素,并且知道每個所描述信道的最大幀速率。作為編碼設備,這樣的解碼器可以是任何MPEG型的,并且其基本部件是,例如,串聯連接的接收編碼比特流的輸入緩沖器、VLC解碼器、逆量化電路和逆DCT電路。在編碼和解碼設備中,都可以提供用于對編碼和解碼的操作步驟進行管理的控制器。
為了闡述和說明的目的,以上給出了對本發(fā)明的優(yōu)選實施例的描述。上述說明不是為了窮舉,或將本發(fā)明限制于所披露的精確形式,顯然,根據上述思路,對于本領域技術人員來說是明顯的修改和變化是可能的,并且要包括在本發(fā)明的范圍中。
例如,可以這樣理解,即,這里所描述的編碼和解碼設備可以在硬件、軟件或者硬件和軟件的組合中實施,但不排除單項硬件或軟件能夠執(zhí)行幾個功能或者硬件和軟件項的組合或者二者都執(zhí)行一個功能的情況下??梢岳萌魏晤愋偷挠嬎銠C系統(tǒng)或者其他合適的裝置實施所描述的方法和設備。典型的硬件和軟件組合可以是具有計算機程序的一般用途的計算機系統(tǒng),當調入并且執(zhí)行該計算機程序時,該計算機程序控制該計算機系統(tǒng),使它執(zhí)行這里所描述的方法?;蛘?,可以利用包含用于執(zhí)行本發(fā)明的一個或多個功能任務的專門硬件的專用計算機。
也可以將本發(fā)明嵌入計算機程序產品中,該計算機程序產品包括當被調入計算機系統(tǒng)時,能夠實施這里所描述的方法和功能的所有性能,并且能夠執(zhí)行這些方法和功能。在本文中的計算機程序、軟件程序、程序、程序產品或者軟件指的是一套以任何語言、代碼或者符號對意圖使系統(tǒng)具有信息處理能力的指令的任何表達,以便直接或在下列任一步驟或兩個步驟之后執(zhí)行特定功能(a)轉換為另一種語言、代碼或符號;和/或(b)以不同的材料形式再現。
權利要求
1.一種視頻編碼方法,應用于與連續(xù)場景對應的視頻幀序列,并且為了對所述場景的所有視頻對象編碼,生成由代表所有連續(xù)的編碼視頻對象平面(VOP)的視頻數據構成的編碼比特流,其中,每個數據項通過一種比特流語法描述,允許識別和解碼所述比特流的內容的全部段,所述視頻數據根據包括至少一個信道的獨立信道描述,且所述序列的時間分辨率通過分別定義以下內容的語法要素具體描述每秒均勻間隔的次間隔,稱為“ticks”的第一數量;在顯示順序中的連續(xù)VOP之間的ticks的第二數量;表示是否用固定的VOP瞬時速率對所有VOP進行編碼的標志,當所述VOP速率固定時從所述第二數量得到,或者當所述VOP是變量時從每個VOP頭中提供的時間標記得到;所述語法還包括用于在要被發(fā)送和/或存儲的編碼比特流中描述每個所描述的信道的最大幀速率的特定標志。
2.如權利要求1所述的視頻編碼方法,其中,參照全球時間參考基準描述所述每個信道的最大幀速率。
3.一種可傳輸視頻信號,由通過實現一種視頻編碼方法生成的編碼比特流組成,該視頻編碼方法應用于與連續(xù)場景對應的視頻幀序列,并且為了對所述場景的所有視頻對象進行編碼,生成由代表所有連續(xù)的編碼視頻對象平面(VOP)的視頻數據構成的編碼比特流,其中,用一種比特流語法來描述每個數據項,以允許任何解碼器識別和解碼所述比特流的內容的所有段,該視頻數據根據至少包括一個信道的獨立信道描述,且所述序列的時間分辨率用分別定義以下內容的語法要素具體描述每秒鐘均勻間隔的,稱為“ticks”的次間隔的第一數量;在顯示順序中的連續(xù)VOP之間的ticks的第二數量;表示是否用固定的VOP瞬時速率對所有VOP進行編碼的標志,當所述VOP速率固定時從所述第二數量得到,或者當所述VOP是變量時從每個VOP頭中提供的時間標記得到;在要被發(fā)送和/或存儲的編碼比特流中,所述可傳輸視頻信號包括用于描述每個所描述的信道的最大幀速率的特定標志。
4.一種視頻解碼方法,用于接收和解碼由通過實現一種視頻編碼方法生成的編碼比特流組成的可傳輸視頻信號,該視頻編碼方法應用于與連續(xù)場景對應的視頻幀序列,并且為了對所述場景的所有視頻對象進行編碼,生成由代表所有連續(xù)的編碼視頻對象平面(VOP)的視頻數據構成的編碼比特流,其中,用一種比特流語法來描述每個數據項,該比特流語法允許任何解碼器對所述比特流的內容的所有段進行識別和解碼,所述視頻數據根據至少包括一個信道的獨立信道描述,且所述序列的時間分辨率通過分別定義下列內容的語法要素具體描述每秒鐘均勻間隔的,稱為“ticks”的次間隔的第一數量;在顯示順序中的連續(xù)VOP之間的ticks的第二數量;表示是否用固定的VOP瞬時速率對所有VOP進行編碼的標志,當所述VOP速率固定時從所述第二數量得到,或者當所述VOP是變量時從每個VOP頭中提供的時間標記得到;在要被發(fā)送和/或存儲的編碼比特流中,所述可傳輸視頻信號包括用于描述每個所描述的信道的最大幀速率的特定標志。
5.一種視頻解碼設備,用于解碼由通過實現一種視頻編碼方法生成的編碼比特流組成的可傳輸視頻信號,該視頻編碼方法應用于與連續(xù)場景對應的視頻幀序列,并且為了對所述場景的所有視頻對象進行編碼,生成由代表所有連續(xù)的編碼視頻對象平面(VOP)的視頻數據構成的編碼比特流,其中,用一種比特流語法來描述每個數據項,該比特流語法允許任何解碼器對所述比特流的內容的所有段進行識別和解碼,所述視頻數據根據至少包括一個信道的獨立信道描述,且所述序列的時間分辨率通過分別定義下列內容的語法要素具體描述每秒鐘均勻間隔的,稱為“ticks”的次間隔的第一數量;在顯示順序中的連續(xù)VOP之間的ticks的第二數量;表示是否用固定的VOP瞬時速率對所有VOP進行編碼的標志,當所述VOP速率固定時從所述第二數量得到,或者當所述VOP是變量時從每個VOP頭中提供的時間標記得到;在要被發(fā)送和/或存儲的編碼比特流中,所述可傳輸視頻信號包括用于描述每個所描述的信道的最大幀速率的特定標志。
全文摘要
本發(fā)明涉及一種視頻編碼方法,該方法應用于視頻幀序列并且生成由視頻數據構成的編碼比特流,視頻數據表示所有視頻對象平面并且根據獨立的信道對視頻數據進行描述。在所述視頻數據中,用比特流語法描述每個數據項,允許任何解碼器對所述比特流的內容的所有段進行解碼。用某些特定的語法要素描述序列的瞬時分辨率。按照本發(fā)明,發(fā)現了例如在MPEG系列的視頻壓縮標準中的應用,語法還包括在編碼比特流中的用于描述每個所描述的信道的最大幀速率的特定標志。
文檔編號G06T9/00GK1572116SQ02820376
公開日2005年1月26日 申請日期2002年10月2日 優(yōu)先權日2001年10月16日
發(fā)明者C·杜福爾, G·馬奎安特, S·E·瓦倫特 申請人:皇家飛利浦電子股份有限公司