專利名稱:視頻信息編碼和解碼方法、運動補償視頻編碼器和相應(yīng)的解碼器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及視頻編碼。具體地說,涉及利用運動補償預(yù)測對視頻信息的壓縮。
背景技術(shù):
視頻序列包括大量的視頻幀,視頻幀又由大量的像素組成,每一個像素由一組數(shù)字位代表。因為典型的視頻序列中有大量的視頻幀,一個視頻幀中又都有大量的像素,所以表示視頻序列所需要的數(shù)據(jù)量迅速增大。例如,一個視頻幀包括一個640乘480個像素的陣列,每一個像素有RGB(紅、綠、藍)彩色表示,每個色分量8位,總共每幀有7,372,800位。視頻序列包括一系列靜止圖像,后者一般用每秒15-30幀的速率記錄/顯示。這樣,單獨地傳輸每幀中每個像素的信息,所需的數(shù)據(jù)量便非常龐大。
視頻編碼要處理減少傳輸信息量的問題,以便能以可以接受的圖像質(zhì)量呈現(xiàn)視頻序列。例如,在視頻電話中,編碼的視頻信息是利用傳統(tǒng)的電話網(wǎng)絡(luò)傳輸?shù)模渲袀鬏斘凰俾室话銥?4kilobits/s(千位/秒)的倍數(shù)。在移動視頻電話中,其中傳輸至少一部分是在無線電通信鏈路上進行的,可用的傳輸位速率可能低達20kilobits/s。
在一般的視頻序列中,依次出現(xiàn)的幀內(nèi)容的變化在很大程度上是場景運動的結(jié)果。這種運動可以是由于攝像機的運動或是由于場景中出現(xiàn)的物體的運動而造成的。因此,一般的視頻序列的特征是具有明顯的時間相關(guān)性,沿著運動軌跡該相關(guān)性最高。視頻序列的有效壓縮一般都利用視頻序列的這個特性。運動補償預(yù)測在視頻壓縮方面是一種被廣泛接受的技術(shù)。它利用這樣的一個事實,即在一般的視頻序列中,給定這兩幀之間的運動軌跡,一個特定幀片段中的圖像強度/色度值便可以利用其他某個已經(jīng)編碼和發(fā)送的幀的圖像的強度/色度值預(yù)測。有時最好發(fā)送整個幀,以防止誤差累積致使圖像質(zhì)量下降,并提供附帶的功能,例如,對視頻序列的隨機存取。
一個利用運動補償預(yù)測的示例性視頻編碼系統(tǒng)的示意圖示于附圖的圖1和2。圖1舉例說明利用運動補償?shù)木幋a器10,而圖2舉例說明相應(yīng)的解碼器20。利用運動補償?shù)木幋a器的工作原理是使預(yù)測誤差幀En(x,y)最小化,誤差幀是正在編碼的當(dāng)前幀In(x,y)和預(yù)測幀Pn(x,y)之間的差值。于是預(yù)測誤差幀為En(x,y)=In(x,y)-Pn(x,y)(1)預(yù)測幀是利用基準(zhǔn)幀Rn(x,y)的像素值和像素運動構(gòu)造的,基準(zhǔn)幀是以前編碼和傳輸?shù)囊粋€幀(例如,當(dāng)前幀的前一幀),而像素運動是當(dāng)前幀和基準(zhǔn)幀之間的像素運動。像素運動可以表達為當(dāng)前幀In(x,y)中位置(x,y)處像素的水平和垂直位移值Δx(x,y)和Δy(x,y)。這對數(shù)值[Δx(x,y),Δy(x,y)]稱為該像素的運動矢量。運動矢量一般利用某些已知的函數(shù)(稱為基本函數(shù))和系數(shù)(這在下文中將更詳細討論)表達,而近似的運動矢量場(Δx(x,y),Δy(x,y))可以利用系數(shù)和基本函數(shù)構(gòu)造。
預(yù)測幀由下式給出Pn(x,y)=Rn[x+Δx(x,y),y+Δy(x,y)] (2)式中基準(zhǔn)幀Rn(x,y)在給定瞬間在編碼器10的幀存儲器17和在解碼器20的幀存儲器24中已存在。攜帶有關(guān)運動矢量的信息的一條信息流2與有關(guān)預(yù)測誤差(1)的信息在多路復(fù)用器16中結(jié)合,并向解碼器20送去一般至少包含這兩類信息的信息流(3)。
在預(yù)測誤差編碼框14中,預(yù)測誤差幀En(x,y)一般通過將其表達為某個二維函數(shù)的有限序列(變換)而加以壓縮。例如,可以采用二維離散余弦變換(DCT)。有關(guān)每個函數(shù)的變換系數(shù)在把它們被發(fā)送到解碼器之前(圖1中的信息流1)進行量化和熵編碼。由于量化引入的誤差,這個操作一般在預(yù)測誤差幀En(x,y)中產(chǎn)生某種程度的退化。
解碼器20的幀存儲器24中存有前一次重構(gòu)的基準(zhǔn)幀Rn(x,y)。利用解碼后的運動信息(Δx(x,y),Δy(x,y))和Rn(x,y),即可在解碼器20的運動補償預(yù)測框21中重構(gòu)預(yù)測幀Pn(x,y)。所傳輸?shù)念A(yù)測誤差幀En(x,y)的變換系數(shù)在預(yù)測誤差解碼框22中構(gòu)造解碼預(yù)測誤差幀En(x,y)。通過把預(yù)測幀Pn(x,y)和解碼的預(yù)測誤差幀En(x,y)相加,即可重構(gòu)解碼的當(dāng)前幀In(x,y)中的像素。
In(x,y)=Pn(x,y)+En(x,y)=Rn[x+Δx(x,y),y+Δy(x,y)]+En(x,y) (3)這個解碼的當(dāng)前幀可以作為下一個基準(zhǔn)幀Rn+1(x,y)存儲在幀存儲器24中。
接著讓我們更詳細地討論運動補償和運動信息的傳輸。解碼器10的運動補償預(yù)測框13中預(yù)測幀Pn(x,y)的構(gòu)造需要有關(guān)當(dāng)前幀In(x,y)中運動的信息。在編碼器10的運動場估計框11中計算運動矢量[Δx(x,y),Δy(x,y)]。當(dāng)前幀中所有像素的一組運動矢量[Δx(.),Δy(.)]稱作運動矢量場。由于一幀中像素的數(shù)量非常巨大,把每一個像素單獨的運動矢量傳輸給解碼器效率不高。在大多數(shù)視頻編碼方案中代之以把當(dāng)前幀劃分成較大的圖像片段,并將有關(guān)片段的信息傳輸給解碼器。
運動矢量場在編碼器10的運動場編碼框12中編碼。運動場編碼是指利用某些預(yù)定的函數(shù)來表達幀中的運動,或者,換句話說,用模型來表達它。
一般采用的幾乎所有的運動矢量場模型都是加法運動模型。運動補償視頻編碼方案可以用以下一般的公式來定義圖像片段的運動矢量
Δx(x,y)=Σi=0N-1aifi(x,y)---(4)]]>Δy(x,y)=Σi=0M-1bigi(x,y)---(5)]]>式中系數(shù)ai和bi稱作運動系數(shù),它們被傳送到解碼器。函數(shù)fi和gi稱作運動場基本函數(shù),而它們對編碼器和解碼器來說都是已知的。
為了把運動系數(shù)發(fā)送到解碼器所需的信息量減到最小,系數(shù)可以從相鄰片段的系數(shù)預(yù)測。采用這種運動場預(yù)測時,運動場表達為預(yù)測運動場和精細化運動場的和。預(yù)測運動場采用與當(dāng)前幀的相鄰片段有關(guān)的運動矢量。預(yù)測是利用在編碼器和解碼器中都相同的一組規(guī)則和可能的某些輔助信息完成的。對精細化運動場進行編碼,并將與這個精細化運動場相關(guān)的運動系數(shù)送到解碼器。采用這種方法一般能節(jié)省傳輸位速率。圖1中的虛線說明某些運動估計和編碼方案在運動場估計框11和運動場編碼框12中可能要求的信息的某些示例。
多項式運動模型是廣泛應(yīng)用的一組模型。(例如,見H.Nguyen和E.Dubois在Proc.Picture Coding Symposium,‘90,Cambridge,Massachusetts,March,26-18,1990,pp.841-845的《(圖像編碼用的運動信息的表達》一文和Centre de Morphologie Mathematique(CMM)《(采用多判據(jù)區(qū)域合并的分段算法》Document SIM(95)19,COST 211ter ProjectMeeting,May 1995)一文。運動矢量的數(shù)值用函數(shù)描述,該函數(shù)是兩個二維多項式函數(shù)的線性方程組。平移運動模型是最簡單的模型,描述每個片段的運動矢量只需要兩個系數(shù)。運動矢量的數(shù)值由下式給出Δx(x,y)=a0Δy(x,y)=b0(6)這個模型廣泛用于不同的國際標(biāo)準(zhǔn)(ISO MPEG-1,MPEG-2,MPEG-4,ITU-T建議H.261和H.263)來描述16×16和8×8像素塊的運動。利用平移運動模型的系統(tǒng)一般以全像素分辨率或者例如,以1/2或1/3像素分辨率等全分辨率的某個整分數(shù)來完成運動估計。
兩個其他廣泛采用的模型是由以下方程式給出的仿射運動模型Δx(x,y)=a0+a1x+a2yΔy(x,y)=b0+b1x+b2y(7)和由下式給出的二次運動模型Δx(x,y)=a0+a1x+a2y+a3xy+a4x2+a4y2Δy(x,y)=b0+b1x+b2y+b3xy+b4x2+b4y2(8)仿射運動模型代表運動系數(shù)個數(shù)和預(yù)測性能之間非常方便的折衷。它只用少數(shù)系數(shù)就可以表達一般的現(xiàn)實生活的運動類型,諸如平移、旋轉(zhuǎn)、縮放和剪切。二次運動模型提供良好的預(yù)測性能,但在編碼中不如仿射模型用得普遍,因為二次模型要使用較多的系數(shù),而同時預(yù)測性能并沒有顯著改進。此外,在計算上,估計二次運動的代價比估計仿射運動的代價高。
當(dāng)運動場利用冪次較高的運動模型(諸如,例如,用方程式7和8表達的)時,運動場估計得出用實數(shù)表達的運動場。在這種情況下,運動系數(shù)須要在發(fā)送給解碼器之前量化為離散的精確度。
運動場估計框11計算給定片段Sk中像素的運動矢量[Δx(x,y),Δy(x,y)],使該片段中的預(yù)測誤差的某些量度減到最小。在最簡單的情況下,運動場估計使用當(dāng)前幀In(x,y)和基準(zhǔn)幀Rn(x,Y)作為輸入數(shù)值。一般運動場估計框向運動場編碼框12輸出運動場[Δx(x,y),Δy(x,y)]。運動場編碼框在向解碼器發(fā)送何種類型的運動矢量場和運動矢量場如何編碼上作出最后判斷。它可以改變運動模型和運動系數(shù),以便把描述令人滿意的運動矢量場所需的信息量減到最小。
發(fā)送的視頻幀的圖像質(zhì)量取決于構(gòu)造預(yù)測幀的精確度,換句話說,取決于發(fā)送的運動信息的精確度和所發(fā)送的預(yù)測誤差信息的精確度。這里精確度一詞不僅指運動場模型表達幀內(nèi)運動的能力,而且指表達運動信息和預(yù)測誤差信息用的數(shù)值精確度。以高精確度發(fā)送的運動信息可能由于預(yù)測誤差幀的低精確度而在解碼階段被抵消,反之亦然。
如上所述,當(dāng)前的視頻編碼系統(tǒng)使用各種運動估計和編碼技術(shù)。運動信息的精確度和傳輸運動信息所需的傳輸位速率一般決定于運動估計和編碼技術(shù)的選擇,而選定的技術(shù)一般都應(yīng)用到整個視頻序列。一般說來,發(fā)送的信息量隨著所發(fā)送的運動信息精確度的提高而增大。
總而言之,較高的圖像質(zhì)量要求較大的傳輸信息量。一般說來,若可用的傳輸位速率有限,則這個限制便決定了所傳輸?shù)囊曨l幀可能達到的最佳圖像質(zhì)量。也可以以某個目標(biāo)圖像質(zhì)量為目標(biāo),于是傳輸位速率便取決于目標(biāo)圖像質(zhì)量。在當(dāng)前的視頻編碼和解碼系統(tǒng)中,傳輸位速率和圖像質(zhì)量之間的折衷主要通過調(diào)整表達預(yù)測誤差幀的精確度來實現(xiàn)。這個精確度可以,例如,隨幀而變,甚至在同一個幀的不同片段之間也可以改變。
改變所發(fā)送的預(yù)測誤差幀的精確度的問題在于,例如,在順應(yīng)新的可用的傳輸位速率時,它可能引起整個視頻編碼性能不可預(yù)測的下降。換句話說,所達到的圖像質(zhì)量并不像考慮傳輸位速率預(yù)期的那么好。當(dāng)只有較低的傳輸位速率可用時,圖像質(zhì)量可能急劇下降,或者甚至采用較高的傳輸位速率,圖像質(zhì)量也可能得不到提高。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種用于對視頻信息進行編碼/解碼的靈活而通用的運動補償方法;本發(fā)明的另一個目的是提供一種對不同的傳輸位速率都能保證良好的傳輸視頻質(zhì)量的方法;再一個目的是該方法可以采用不同的運動估計和編碼技術(shù)。
這些目的和其他目的是通過選擇運動系數(shù)的量化精確度來達到的,使得所傳輸?shù)倪\動信息的精確度與預(yù)測誤差信息的精確度兼容。
本發(fā)明的方法是一種用于對視頻信息進行編碼的方法,它包括以下步驟
-估計一段基準(zhǔn)視頻信息和一段當(dāng)前的視頻信息之間的圖象單元的運動,-利用某一組基本函數(shù)和某些運動系數(shù)建立圖象單元運動模型,-定義某一組量化器,-根據(jù)某個預(yù)定的選擇判據(jù)從該組量化器中選擇一個運動系數(shù)量化器,以及-利用所選擇的運動系數(shù)量化器量化運動系數(shù)。
在按照本發(fā)明的方法中,估計某一段基準(zhǔn)視頻信息和一段當(dāng)前視頻信息之間的圖象單元運動。利用某些基本函數(shù)和運動系數(shù)表示所得的運動矢量場。這些基本函數(shù)對編碼器和解碼器都是已知的,所以所述系數(shù)的傳輸使解碼器能夠決定圖象單元運動的估計值。該系數(shù)值一般都是實數(shù),因此為了利用某個位數(shù)把這些系數(shù)表達到某個離散的精確度,就需要量化。這些系數(shù)在傳輸?shù)浇獯a器之前或者在它們構(gòu)造預(yù)測幀之前進行量化。
在按照本發(fā)明的方法中,提供一組量化器。這里,量化器一詞指的是把實數(shù)映射到某個重構(gòu)值的功能。對于每個重構(gòu)值,都有一個決定映射到/量化為所述重構(gòu)值的實數(shù)范圍的量化間隔。例如,量化間隔的大小對于每個重構(gòu)值可以都是相同的(均勻量化器),或者量化間隔的大小對于每個重構(gòu)值可以是不同的(非均勻量化器)。量化間隔決定了系數(shù)的表達精確度。該組中的量化器可以全都是類似的,使得重構(gòu)值和量化間隔的標(biāo)度利用某個參數(shù)隨量化器的變化而縮放。也可以一組量化器包括不同類型的量化器,例如,既有均勻的又有非均勻的。在詳細描述本發(fā)明時還將討論量化器。
在按照本發(fā)明的方法中,量化器的選擇判據(jù)可以是,例如,目標(biāo)圖像質(zhì)量或目標(biāo)傳輸位速率。量化器的選擇還可以受其他某些取決于目標(biāo)圖像質(zhì)量和目標(biāo)傳輸位速率的變量約束。每當(dāng)目標(biāo)傳輸位速率改變時可以選擇新的量化器。例如,可以對同一個視頻幀的不同部分使用不同的量化器。
按照本發(fā)明,當(dāng)目標(biāo)圖像質(zhì)量改變時,可以調(diào)整預(yù)測誤差信息和被編碼和傳輸?shù)倪\動信息兩者所具有的精確度。因此,對于每個圖像質(zhì)量或傳輸位速率,都可以獲得良好的整體編碼性能。例如,可以既調(diào)整預(yù)測誤差信息的精確度,又調(diào)整運動信息的精確度,以便使利用某種位速率傳輸編碼的視頻流成為可能。例如,也可以由目標(biāo)圖像質(zhì)量決定預(yù)測誤差信息的精確度,并且,在按照本發(fā)明的方法中,調(diào)整運動信息的精確度,使之與預(yù)測誤差精確度兼容量化不應(yīng)太細,因為超出了預(yù)測誤差信息所提供的精確度范圍,運動信息并不能提高圖像的質(zhì)量,但也不應(yīng)太粗,因為量化過粗的運動信息會降低預(yù)測誤差信息所提供的圖像質(zhì)量。
按照本發(fā)明的方法對獲取運動系數(shù)所用的運動場估計或運動場編碼技術(shù)不加任何限制。因此可以和任何一種這樣的技術(shù)一起應(yīng)用。例如,可以用運動模型自適應(yīng)技術(shù),通過提供對不同精確度的運動場估計和/或編碼技術(shù)的選擇來避免利用精確度過高的運動場估計和運動場編碼技術(shù)所帶來的代價。于是可以根據(jù)目標(biāo)圖像質(zhì)量或目標(biāo)位速率選擇適當(dāng)?shù)倪\動場估計和/或編碼技術(shù),而預(yù)測誤差信息精確度和運動信息精確度之間的微調(diào)可以通過選擇適當(dāng)?shù)牧炕魍瓿伞?br>
本發(fā)明可以直接用于現(xiàn)有的運動補償視頻編碼方法和系統(tǒng)。在這樣的先有技術(shù)系統(tǒng)中,運動系數(shù)的量化一般以對某個目標(biāo)圖像質(zhì)量工作得很好的某個預(yù)定的精確度完成的。當(dāng)目標(biāo)圖像質(zhì)量或可用的傳輸位速率明顯地不同于設(shè)計的圖像質(zhì)量時,視頻編碼器就會產(chǎn)生一個比原定的傳輸位速率下達到的圖像質(zhì)量更差的圖像質(zhì)量。按照本發(fā)明,這種影響可以通過選擇運動系數(shù)用的更適合的量化器消除。
本發(fā)明還涉及用于對已編碼的視頻信息進行解碼的方法,它包括以下步驟-接收描述圖象單元運動的已量化的運動系數(shù),-定義某一組反量化器,-確定量化所述運動系數(shù)用的所選的運動系數(shù)量化器,-利用與所選運動系數(shù)量化器相應(yīng)的反量化器對已量化的運動系數(shù)進行反量化,-利用已反量化的運動系數(shù)和某些基本函數(shù)確定圖象單元的運動,以及-利用一段基準(zhǔn)視頻信息和已確定的圖象單元運動確定一段預(yù)測視頻信息。
按照本發(fā)明的編碼器是一種用于進行視頻信息運動補償編碼的編碼器,它包括-用于接收一段當(dāng)前視頻信息的裝置,-用于存儲一段基準(zhǔn)視頻信息的存儲裝置,-運動場估計裝置,用以至少利用所述一段基準(zhǔn)視頻信息估計所述一段當(dāng)前視頻信息中圖象單元的運動場,-運動場編碼裝置,它包括-用于產(chǎn)生描述所估計的運動場的運動系數(shù)的裝置,-第一選擇裝置,用以從一組量化器中選擇一個量化器,所述第一選擇裝置具有用以接收表示選擇判據(jù)的信息的輸入端和用以發(fā)送表示所選量化器的信息的輸出端,-量化裝置,用以利用所選量化器量化運動系數(shù),所述量化裝置具有用以接收表示所選量化器的信息的輸入端、用以接收運動系數(shù)的第二輸入端和用以發(fā)送量化后的運動系數(shù)的輸出端,以及-運動補償預(yù)測裝置,它包括-第二選擇裝置,用以從一組反量化器中選擇一個反量化器,所述第二選擇裝置具有用以接收表示選擇判據(jù)的信息的輸入端和用以發(fā)送表示所選反量化器的信息的輸出端,-反量化裝置,用以利用所選反量化器對已量化的運動系數(shù)進行反量化,所述反量化裝置具有用以接收已量化的運動系數(shù)的輸入端、用以接收表示所選反量化器的信息的第二輸入端和用以發(fā)送已反量化的運動系數(shù)的輸出端,以及-利用至少所述一段基準(zhǔn)視頻信息和已反量化的運動系數(shù)確定一段預(yù)測視頻信息用的裝置。
本發(fā)明還涉及一種用于對已編碼的視頻信息進行解碼的解碼器,它包括-用以存儲一段基準(zhǔn)視頻信息的存儲裝置,-用以接收已量化的運動系數(shù)的輸入裝置,和
-運動補償預(yù)測裝置,它包括-選擇裝置,用以從一組反量化器中選擇一個反量化器,所述第二選擇裝置具有用以接收表示選擇判據(jù)的信息的輸入端和用以發(fā)送表示所選反量化器的信息的輸出端,-反量化裝置,用以利用所選反量化器對已量化的運動系數(shù)進行反量化,所述反量化裝置具有用以接收已量化的運動系數(shù)的輸入端、用以接收表示所選反量化器的信息的第二輸入端和用以發(fā)送已反量化的運動系數(shù)的輸出端,以及-預(yù)測裝置,用以利用至少所述一段基準(zhǔn)視頻信息和已反量化的運動系數(shù)決定一段預(yù)測視頻信息。
在本發(fā)明一個有利的實施例中,編碼器和解碼器結(jié)合成編碼解碼器的形式。編碼器和解碼器的運動補償預(yù)測部分是類似的,它們可以設(shè)置公用部分,例如,后者被安排成交替地作為編碼器的一部分和解碼器的一部分工作。
本發(fā)明還涉及計算機程序元件,用以對視頻信息進行運動補償編碼,它包括-用于接收一段當(dāng)前視頻信息的裝置,-用以存儲一段基準(zhǔn)視頻信息的存儲裝置,-運動場估計裝置,用以利用至少所述一段基準(zhǔn)視頻信息估計所述一段當(dāng)前視頻信息中圖象單元的運動場,-運動場編碼裝置,它包括一用于產(chǎn)生描述所估計的運動場的運動系數(shù)的裝置,-第一選擇裝置,用以從一組量化器中選擇一個量化器,所述第一選擇裝置具有用以接收表示選擇判據(jù)的信息的輸入端和用以發(fā)送表示所選量化器的信息的輸出端,-量化裝置,用以利用所選量化器量化運動系數(shù),所述量化裝置具有用以接收表示所選量化器的信息的輸入端、用以接收運動系數(shù)的第二輸入端和用以發(fā)送量化后的運動系數(shù)的輸出端,以及-運動補償預(yù)測裝置,它包括
-第二選擇裝置,用以從一組反量化器選擇一個反量化器,所述第二選擇裝置具有用以接收表示選擇判據(jù)的信息的輸入端和用以發(fā)送表示所選反量化器的信息的輸出端,-反量化裝置,用以利用所選反量化器對已量化的運動系數(shù)進行反量化,所述反量化裝置具有用以接收已量化的運動系數(shù)的輸入端、用以接收表示所選反量化器的信息的第二輸入端和用以發(fā)送已反量化的運動系數(shù)的輸出端,以及-用以利用至少所述一段基準(zhǔn)視頻信息和已反量化的運動系數(shù)確定一段預(yù)測視頻信息用的裝置。
按照本發(fā)明的第二計算機程序元件是一種用以對已編碼的視頻信息進行解碼的計算機程序元件,它包括-用以存儲一段基準(zhǔn)視頻信息的存儲裝置,-用以接收已量化的運動系數(shù)的輸入裝置,和-運動補償預(yù)測裝置,它包括-選擇裝置,用以從一組反量化器選擇一個反量化器,所述第二選擇裝置具有用以接收表示選擇判據(jù)的信息的輸入端和用以發(fā)送表示所選反量化器的信息的輸出端,-反量化裝置,用以利用所選反量化器對已量化的運動系數(shù)進行反量化,所示反量化裝置具有用以接收已量化的運動系數(shù)的輸入端、用以接收表示所選反量化器的信息的第二輸入端和用以發(fā)送已反量化的運動系數(shù)的輸出端,以及-預(yù)測裝置,用以利用至少所述一段基準(zhǔn)視頻信息和已反量化的運動系數(shù)確定一段預(yù)測視頻信息。
按照本發(fā)明一個有利的實施例,在計算機可讀介質(zhì)上安裝一個計算機程序元件作為上面規(guī)定的計算機程序元件。
本發(fā)明提供了一種用于對視頻信息進行運動補償編碼的編碼器,該編碼器包括-用于相對于一段基準(zhǔn)視頻信息估計一段當(dāng)前視頻信息中圖象單元的運動的裝置,
-用于利用一組基本函數(shù)和相關(guān)的運動系數(shù)表達所述圖象單元的運動的裝置,-用于從一預(yù)定運動系數(shù)量化器組中選擇一個運動系數(shù)量化器的裝置,-用于利用所選的運動系數(shù)量化器量化所述運動系數(shù)的裝置,從而以一預(yù)定準(zhǔn)確性表達運動系數(shù),-用于反量化已量化的運動系數(shù)并利用所述一組基本函數(shù)和已反量化的運動系數(shù)從該段基準(zhǔn)視頻信息形成所述圖象單元的一個預(yù)測的裝置-用于形成所述圖象單元的預(yù)測誤差信息的裝置,該預(yù)測誤差信息表達所述圖象單元的預(yù)測和所述圖象單元的視頻信息之間的差值,-用于利用預(yù)測誤差量化器量化所述預(yù)測誤差信息的裝置,從而以預(yù)定的準(zhǔn)確性表達所述預(yù)測誤差信息,所述的編碼器還包括用于根據(jù)一個預(yù)定的選擇判據(jù)來選擇所述運動系數(shù)量化器的裝置,使得所述圖象單元的運動系數(shù)所用以表達的預(yù)定準(zhǔn)確性同所述的預(yù)測誤差信息所用以表達的預(yù)定準(zhǔn)確性匹配。
本發(fā)明還提供了一種用于對已編碼的視頻信息進行解碼的解碼器,該解碼器包括-用于接收相對于一段基準(zhǔn)視頻信息的已編碼視頻信息和預(yù)測誤差信息的裝置,已編碼的視頻信息包含表達圖象單元運動的已量化的運動系數(shù),已量化的運動系數(shù)由預(yù)定的準(zhǔn)確性來表達,該預(yù)測誤差信息由預(yù)定準(zhǔn)確性來表達,已在視頻編碼器中用一運動系數(shù)量化器來量化的已量化的運動系數(shù)是根據(jù)一個預(yù)定的選擇判據(jù)來選擇的,使得所述圖象單元的運動系數(shù)所用以表達的預(yù)定準(zhǔn)確性同所述的預(yù)測誤差信息所用以表達的預(yù)定準(zhǔn)確性相匹配;-用于定義一組反運動系數(shù)量化器的裝置,-用于確定量化了所述運動系數(shù)的所選的運動系數(shù)量化器的裝置,-用于從該組反量化器中選擇一個反量化器的裝置,所選的反運動系數(shù)量化器對應(yīng)于所選的運動系數(shù)量化器,-用于利用所選的反量化器對已量化的運動系數(shù)反量化的裝置,
-用于利用已反量化的運動系數(shù)和一組基本函數(shù)表達圖象單元的運動的裝置,從而形成一個表達所述圖象單元的運動的模型,并-用于利用表達圖象單元運動的所述模型從該段基準(zhǔn)視頻信息形成所述圖象單元的預(yù)測視頻信息的裝置。
考慮作為本發(fā)明的特征的新型特征由后附權(quán)利要求書具體提出。結(jié)合附圖閱讀以下具體實施例的描述,就會明白本發(fā)明本身、它的構(gòu)造和工作方法,及其附加的目標(biāo)和優(yōu)點。
圖1舉例說明按照先有技術(shù)的運動補償視頻編碼用的編碼器;圖2舉例說明按照先有技術(shù)的運動補償視頻編碼用的解碼器;圖3舉例說明一組均勻量化器;圖4舉例說明一個修改后的均勻量化器;圖5舉例說明按照本發(fā)明的運動補償視頻編碼方法的流程圖;圖6舉例說明按照本發(fā)明的運動補償視頻解碼方法的流程圖;圖7舉例說明按照本發(fā)明第一推薦實施例的編碼器的運動場編碼和運動補償預(yù)測框;圖8舉例說明按照本發(fā)明第二推薦實施例的運動補償視頻編碼用的編碼器;圖9舉例說明按照本發(fā)明第二推薦實施例的運動補償視頻解碼圖10舉例說明按照本發(fā)明第三推薦實施例的編碼器的運動場編碼框。
具體實施例方式
圖1和2詳細討論按照先有技術(shù)的運動補償視頻編碼和解碼。
在按照本發(fā)明的編碼和解碼器中,定義了一組量化器。不同的量化器在重構(gòu)值和間隔的選擇方法上不同。運動系數(shù)的量化器ai,例如,可以利用以下方程式完成
式中q是量化參數(shù),定義重構(gòu)點之間間隔,而[X]是“floor”運算(不大于X的最大整數(shù))。在這種情況下,量化輸出ai是整數(shù)下標(biāo),后者可以熵編碼并發(fā)送給解碼器。在這個示例中,相應(yīng)的反量化器操作可以由下式定義a~i=qa~i---(10)]]>而已反量化的運動系數(shù)ai用來近似原來的系數(shù)ai。方程式9和10定義具有平均分布的重構(gòu)值和同樣大小的重構(gòu)間隔的均勻量化器。圖3舉例說明具有不同的qq1,q2和q3值的3個均勻量化器。
圖4舉例說明一個修改后的均勻量化器。在這個量化器中,參數(shù)q定義重構(gòu)點。系數(shù)ai值映射到ai=0時的量化間隔大于其他恒定大小的量化間隔。這個量化器可以,例如,利用附加的參數(shù)ε定義,這是ai=0時的量化間隔增量的一半。按照修改的均勻量化器,例如,可以由下式定義 式中,sgn(ai)給出ai的符號。相應(yīng)的反量化操作可以,例如,用方程式10定義。
采用修改過的均勻量化器時,量化的系數(shù)ai的傳輸很可能需要較少的位。這是因為相當(dāng)于數(shù)值接近0的量化間隔大于均勻量化器,一般0值量化系數(shù)可以利用比具有非0值的量化系數(shù)少的位傳輸。
作為量化器的示例,上面描述了可以用于按照本發(fā)明的方法的兩個不同的量化器。量化間隔的大小與表達量化系數(shù)ai所需的位數(shù)成反比。量化間隔還確定反量化后的系數(shù)ai對應(yīng)于原來系數(shù)ai的精確度。于是量化間隔就是量化精確度和向解碼器傳輸運動系數(shù)所需的信息量的折衷。在按照本發(fā)明的方法中,為了量化運動系數(shù)而定義了一組量化器。該組量化器可以包括例如具有各種q值的不同的均勻量化器。
圖5是按照本發(fā)明的運動補償視頻編碼方法的流程圖。在步驟501,定義一組量化運動系數(shù)用的量化器。這些量化器可以,例如,是具有不同量化間隔,亦即不同q值的均勻量化器。采用均勻量化器時,在步驟501定義允許的量化間隔就夠了。在步驟502定義選擇量化器用的適當(dāng)判據(jù)。這個判據(jù)可以,例如,是目標(biāo)圖像質(zhì)量或目標(biāo)位速率。還可以根據(jù)以前選擇的預(yù)測誤差量化器來選擇運動信息。在步驟503,接收當(dāng)前幀In(x,y)。在步驟504利用某些基本函數(shù)fi(x,y)和gi(x,y)和系數(shù)ai和bi,例如,逐個片段地估計當(dāng)前幀中的運動,并建模。于是運動矢量場表達為Δx(x,y)=Σi=0N-1aifi(x,y)]]>Δy(x,y)=Σi=0M-1bigi(x,y).]]>選擇按照本發(fā)明的量化器并不會對可以使用的運動場估計和/或編碼方法加以任何限制。運動矢量場的估計和編碼可以,例如,利用任何先有技術(shù)運動補償視頻編碼方案中的任何技術(shù)來制造。對運動場矢量進行編碼用的這些基本函數(shù)最好是正交的,因為正交函數(shù)對在解碼后的運動系數(shù)中量化引起的誤差不那么敏感。但是,任何基本函數(shù)都可以采用。另外,編碼后的運動矢量場可以,例如,是用來校正利用該幀內(nèi)鄰近片段的運動預(yù)測運動矢量場的精細化運動矢量場。
當(dāng)用平移模型表達運動矢量場時,運動矢量場的估計一般利用某個精確度進行。這個精確度是用以決定運動系數(shù)a0和b0的上限(亦即可能是最優(yōu)的精確度)。利用按照本發(fā)明的量化,可以降低運動系數(shù)向接收器傳輸?shù)木_度。
在步驟505,選擇準(zhǔn)備用于運動系數(shù)ai和bi量化的量化器,而在步驟506量化運動系數(shù),得出量化系數(shù)ai和bi。在步驟511把它們傳輸?shù)浇邮掌鳌=邮掌髯詈脜⒄?,例如,編碼預(yù)測誤差信息用的量化器(QP)或編碼的視頻流的目標(biāo)位速率來決定運動信息量化器。若運動系數(shù)量化器是參照編碼預(yù)測誤差信息用的編碼器QP選擇的,則接收器可以隱含地決定運動系數(shù)量化器。在這種情況下,例如,不必選定q值的明顯表示。但是,這是在步驟512傳輸與q相關(guān)的信息的另一個方案。它可以作為編碼視頻幀的一部分發(fā)送,它還可以間接地向接收器發(fā)信號。另外,接收器可以從,例如,傳輸量化系數(shù)用的格式?jīng)Q定所選擇的量化器。
在步驟507可以利用基準(zhǔn)幀Rn(x,y)求出預(yù)測幀Pn(x,y)。
Pn(x,y)=Rn(x+Δx(x,y),y+Δy(x,y))反量化系數(shù)ai和bi一般用來構(gòu)造Δx(x,y)=∑aifi(x,y)和Δy(x,y)=∑bigi(x,y)。然后可以決定預(yù)測誤差幀En(x,y)=In(x,y)-Pn(x,y),可以對其進行編碼(步驟509),編碼后可以利用編碼的預(yù)測誤差系數(shù)ci表達預(yù)測誤差幀。在步驟510,利用第二量化器對預(yù)測誤差系數(shù)ci進行量化。所得量化的預(yù)測誤差系數(shù)ci在步驟511發(fā)送給接收器。第二量化器的選擇已超出了本發(fā)明的范圍。一般說來,它的選擇由目標(biāo)圖像質(zhì)量決定。作為另一方案,可以按照視頻圖像標(biāo)準(zhǔn),例如,ITU-T建議H.261和H.263的要求定義。
上面是用作一段視頻信息的示例的一個幀。在按照本發(fā)明的編碼和解碼方法和設(shè)備中,除逐幀外,還可以,例如,逐塊或逐片段地傳輸和處理視頻信息。
圖6舉例說明按照本發(fā)明運動補償編碼的視頻幀解碼方法的流程圖。在步驟601,定義一組反量化器,而在步驟602接收量化系數(shù)ai和bi。在步驟603決定運動信息量化器。這可以,例如,通過從所接收的預(yù)測誤差編碼數(shù)據(jù)決定預(yù)測誤差量化器,或者按照預(yù)定的一組規(guī)則選擇運動系數(shù)用的反量化器而決定運動信息量化器。作為另一個方案,反量化器可以按照所接收的位流的明確表示選擇。然后,進行運動系數(shù)的反量化(步驟604),結(jié)果得出反量化的運動系數(shù)ai和bi。在步驟605,決定基本函數(shù)fi(x,y)和gi(x,y)。若運動估計和編碼技術(shù)只使用某些基本函數(shù),則基本函數(shù)可以用演繹方法決定。還可以這樣若運動估計和編碼技術(shù)采用運動模型自適應(yīng)技術(shù),則在這種情況下把關(guān)于所選的基本函數(shù)的信息傳輸給接收器。關(guān)于這些的信息可以是,例如,在編碼幀內(nèi)部傳輸,不然基本函數(shù)可以是對編碼方法和解碼方法都是已知的。
在步驟606,至少利用反量化運動系數(shù)和基本函數(shù)來決定圖象單元運動。然后可以在步驟607決定預(yù)測幀Pn(x,y)。在步驟608,已量化的預(yù)測誤差系數(shù)ci利用與預(yù)測誤差相關(guān)的反量化器反量化。在步驟609,利用反量化的預(yù)測誤差系數(shù)ci構(gòu)造解碼的預(yù)測誤差幀En(x,y)。在步驟610,例如,利用In(x,y)=Pn(x,y)+En(x,y)計算解碼的當(dāng)前幀。
圖7是按照本發(fā)明第一推薦實施例的運動補償視頻編碼器的運動場編碼框和運動補償預(yù)測框的示意圖。在運動場編碼框12中運動場編碼是利用運動矢量場編碼框51進行的。運動矢量場編碼框的輸出包括運動系數(shù)ai和bi。量化框30負責(zé)運動系數(shù)的量化。它利用所選出的量化器31進行量化。量化器選擇框32包括一組量化器33,并從量化器33中選出當(dāng)前使用的量化器。量化器選擇判據(jù)框34輸出選擇用的當(dāng)前判據(jù)。它可以,例如,表示當(dāng)前目標(biāo)圖像質(zhì)量和目標(biāo)位速率,而量化器選擇框32根據(jù)該判據(jù)選出適當(dāng)?shù)牧炕鳌?br>
在按照本發(fā)明的運動補償預(yù)測框13中,有一個反量化選擇框42,它包括一組反量化器43。反量化在反量化框40中利用所選出的反量化器41進行。已反量化的運動系數(shù)ai和bi一般還進一步用于運動場解碼框52,用以計算預(yù)測幀Pn(x,y)。
關(guān)于量化后的運動系數(shù)的信息從量化框30傳輸給運動補償預(yù)測框13’中的反量化框40。在圖7中,有關(guān)所選量化器的信息,從量化器選擇框32傳輸給編碼器中的運動補償預(yù)測框13’中的反量化器選擇框42。
按照本發(fā)明的解碼器包括運動補償預(yù)測框21’,后者類似于按照本發(fā)明的編碼器中的運動補償預(yù)測框13’。解碼器中的反量化選擇框42可以接收單獨的信息,根據(jù)這些信息,可以從解碼器確定正確的反量化器,或者它可以從解碼器的某些其他部分接收信息。
圖8是按照本發(fā)明第二推薦實施例的運動補償視頻編碼器的示意圖。在按照本發(fā)明的編碼器10’中,有運動場編碼框12’,后者包括量化框30和量化器選擇框32。編碼器10’的運動補償預(yù)測框13’包括反量化框40和反量化器選擇框42。量化后的系數(shù)(箭頭2)和有關(guān)預(yù)測誤差的信息(箭頭1)發(fā)送給解碼器。
在按照本發(fā)明第二推薦的實施例的編碼器中,運動系數(shù)量化器的選擇由編碼器的預(yù)測誤差編碼框14中用的量化器QP決定。預(yù)測誤差量化器QP可以,例如,根據(jù)目標(biāo)圖像質(zhì)量選擇。把量化運動系數(shù)所用的量化器選擇結(jié)合到預(yù)測誤差編碼中用的量化器中,即能可靠地獲得已編碼的視頻幀的目標(biāo)圖像質(zhì)量。預(yù)測誤差編碼框14可以向量化器選擇框32以及編碼器10’中的反量化器選擇框42表示當(dāng)前預(yù)測誤差量化器(QP)。另一方面,量化器選擇框32可以把有關(guān)預(yù)測誤差量化器通知編碼器10’中的反量化選擇框42。
量化器選擇框32和反量化器選擇框42還可以駐留在例如編碼器中的預(yù)測誤差編碼框14中。
在按照本發(fā)明第二推薦的實施例的解碼器中,該解碼器接收有關(guān)預(yù)測誤差幀編碼所用的量化器的信息,因而一般沒有必要傳輸有關(guān)運動系數(shù)的量化器的明顯信息。解碼器利用從預(yù)測誤差編碼框14(箭頭1)所發(fā)送的信息或從相應(yīng)的信號中決定運動系數(shù)量化器。信息流1和2一般多路轉(zhuǎn)換到代表已編碼的視頻幀的信息流3。這個信息量發(fā)送給按照本發(fā)明的解碼器。有關(guān)預(yù)測誤差量化器的信息也可以駐留在解碼器中,因而不必在編碼器和解碼器之間通信。
指向圖8中的運動場編碼框12’的虛線箭頭表示編碼器內(nèi)信息流某些可能的示例。解碼器的結(jié)構(gòu)細節(jié)取決于所用的特定的運動場估計和編碼技術(shù)。
圖9是按照本發(fā)明第二推薦的實施例的對運動補償已編碼的視頻幀進行解碼用的解碼器20’的示意圖。它包括運動補償預(yù)測框21’,其中有按照本發(fā)明的反量化框40和按照本發(fā)明的反量化器選擇框42。一般來說預(yù)測誤差解碼框22’通知反量化器選擇框42有關(guān)用以量化預(yù)測誤差信息的所選的量化器的信息。然后這個反量化器選擇框根據(jù)它從預(yù)測誤差解碼框接收的QP值為運動系數(shù)信息選擇適當(dāng)?shù)姆戳炕?。反量化器選擇框42也可以,例如,駐留在解碼器的預(yù)測誤差解碼框22內(nèi)。
圖10表示按照本發(fā)明第三推薦實施例的運動場編碼框12’較為詳細的示意圖。這種運動場編碼框的主要目的是把運動矢量場表達為兩個矢量場之和可以從該幀中其他片段預(yù)測的矢量場Δxprd(x,y)和Δyprd(x,y)和精細化運動矢量場Δxrefinement(x,y)和Δyrefinement(x,y)。我們指的是有關(guān)按照本發(fā)明第三推薦的實施例的運動場編碼框12*中的運動場矢量估計和編碼細節(jié),參考專利申請US 09/371641。這里我們只簡略地在一般水平上描述框12*中的運動矢量場的編碼。
在框12*中有運動分析框61和負責(zé)選擇相鄰片段并建造預(yù)測運動場用的框62。一般說來,預(yù)測某片段的運動時,至少使用一個相鄰片段的運動。然后通過,例如,計算已經(jīng)利用正交基本函數(shù)的仿射模型編碼的精細化運動矢量場進行精細化。
運動系數(shù)刪除框63基本上決定哪個運動系數(shù)可以設(shè)置為0而不會引起運動矢量場精確度下降到無法接收的水平。精細化運動系數(shù)在刪除程序之后保留下來并在本發(fā)明的量化框30中被量化。
用以量化運動系數(shù)的量化器的選擇可以由編碼器的預(yù)測誤差編碼框中用的量化器的選擇決定。預(yù)測誤差編碼可以按照ITU-T建議H.263、利用二維離散余弦變換進行,并且定義這個幀中的兩個均勻量化器QPQPp在整個幀中是恒定不變的,而QPs則在幀中每個16×16的像素片段中變化。
根據(jù)本發(fā)明的第三實施例,量化器組中包含的均勻量化器具有不同的誑話間隔。因此,所選的運動系數(shù)由它的量化間隔來說明。接著,這個量化間隔又可以由參數(shù)q來定義。這個參數(shù)q可以取決于,例如,量化參數(shù)QPP。表1中,q表示運動系數(shù)量化的量化間隔,而QPP表示預(yù)測誤差系數(shù)的量化間隔的一半。框12*中的運動系數(shù)可以按照表1量化,換句話說,通過在框30中根據(jù)QPP值選出的量化器來量化。然后,量化后的運動系數(shù)可以熵編碼,并發(fā)送到解碼器。
表1.與運動系數(shù)有關(guān)的量化間隔q和與預(yù)測誤差系數(shù)有關(guān)的量化間隔QPP之間的關(guān)系。
正如從表1可以看到的,量化運動系數(shù)用的量化間隔的大小與量化預(yù)測誤差系數(shù)用的量化間隔有關(guān)。這意味著,當(dāng)預(yù)測誤差利用較高的精確度傳輸時,運動信息自動利用較高的精確度傳輸,反之亦然。QPP值可以,例如,根據(jù)目標(biāo)圖像質(zhì)量選擇。一旦QPP值已知,就可以直接決定與所述QPP值對應(yīng)的量化器和和反量化器。
還可以具有既包括均勻量化器又包括非均勻量化器的一組量化器。在這種情況下,還可以根據(jù)QPP值選擇量化器。
按照本發(fā)明的編碼器或解碼器可以利用硬件或軟件實現(xiàn),或者利用兩者的適當(dāng)結(jié)合實現(xiàn)。用軟件實現(xiàn)的編碼器和解碼器可以是,例如,單獨的程序或可以用于各種程序的軟件構(gòu)件。量化框、量化器選擇框和量化器選擇判據(jù)框已在上文中描述過,并且在附圖中表現(xiàn)為一個單獨的單元,但是這些框的功能可以用一個軟件程序單元實現(xiàn),這個程序單元負責(zé)量化器的選擇和運動系數(shù)的量化。
還可以用同一個功能單元實現(xiàn)按照本發(fā)明的編碼器和按照本發(fā)明的解碼器。這樣的單元稱作編碼解碼器。按照本發(fā)明的編碼解碼器可以是一個計算機程序,或者計算機程序元件,或者至少一部分用硬件實現(xiàn)。
鑒于以上描述,對于一個本專業(yè)的技術(shù)人員,顯然可以在不脫離本發(fā)明的范圍的情況下作出各種各樣的改變。盡管對本發(fā)明推薦的幾個實施例作了詳細的描述,但顯然可以對其作出許多落在本發(fā)明真正精神和范圍內(nèi)的修改和變化。
權(quán)利要求
1.一種用于對視頻信息進行編碼的方法,它包括-估計圖象單元在一段當(dāng)前的視頻信息中相對于一段基準(zhǔn)視頻信息的運動,-利用一組基本函數(shù)和相關(guān)的運動系數(shù)表達所述圖象單元的運動,-從一預(yù)定運動系數(shù)量化器組中選擇一個運動系數(shù)量化器,-利用所選運動系數(shù)量化器量化運動系數(shù),從而以預(yù)定的準(zhǔn)確性表示所述運動系數(shù),-反量化已量化的運動系數(shù),而且,利用該組基本函數(shù)和經(jīng)反量化的運動系數(shù),從該段基準(zhǔn)視頻信息形成所述圖象單元的一個預(yù)測,形成所述圖象單元的預(yù)測誤差信息,該預(yù)測誤差信息表達所述圖象單元的預(yù)測和所述圖象單元的視頻信息之間的差值,利用預(yù)測誤差量化器量化所述預(yù)測誤差信息,從而以預(yù)定的準(zhǔn)確性表達所述預(yù)測誤差信息,所述的運動系數(shù)量化器是根據(jù)一個預(yù)定的選擇判據(jù)來選擇的,使得所述圖象單元的運動系數(shù)所用以表達的預(yù)定準(zhǔn)確性同所述的預(yù)測誤差信息所用以表達的預(yù)定準(zhǔn)確性匹配。
2.如權(quán)利要求1所述的方法,其特征在于,所述預(yù)定的選擇判據(jù)是用于所述編碼的一個參數(shù)值。
3.如權(quán)利要求1所述的方法,其特征在于,所選的運動系數(shù)量化器的一個量化間隔與預(yù)測誤差量化器的一個量化間隔相關(guān)。
4.如權(quán)利要求1所述的方法,其特征在于,所述預(yù)定的選擇判據(jù)是一種目標(biāo)圖像質(zhì)量。
5.如權(quán)利要求1所述的方法,其特征在于,所述預(yù)定的選擇判據(jù)是用以傳送所述的已編碼視頻信息的一個目標(biāo)位率。
6.如權(quán)利要求1所述的方法,其特征在于,所述圖象單元的運動利用一組正交基本函數(shù)表達出來。
7.如權(quán)利要求6所述的方法,其特征在于,所述圖象單元的運動利用一組仿射正交基本函數(shù)建模。
8.如權(quán)利要求6所述的方法,其特征在于,圖象單元的運動通過根據(jù)所選的相鄰圖象單元的運動來預(yù)測所述圖象單元的運動,并通過確定所述圖象單元的精細化運動來表達的。
9.如權(quán)利要求8所述的方法,其特征在于,精細化運動是利用一組仿射正交基本函數(shù)建模的。
10.如權(quán)利要求1所述的方法,其特征在于,還包括向接收器發(fā)送已量化的運動系數(shù)。
11.如權(quán)利要求10所述的方法,其特征在于,還包括向接收器發(fā)送指定所選運動系數(shù)量化器的信息。
12.如權(quán)利要求1所述的方法,其特征在于,所述運動系數(shù)量化器組包括若干均勻量化器,每個均勻量化器有不同的量化間隔。
13.如權(quán)利要求1所述的方法,其特征在于,所述運動系數(shù)量化器組包括若干個經(jīng)過修改的均勻量化器,每個均勻量化器有不同的量化間隔。
14.一種用于對已編碼的視頻信息進行解碼的方法,它包括-接收相對于一段基準(zhǔn)視頻信息的已編碼視頻信息和預(yù)測誤差信息,已編碼的視頻信息包含表達圖象單元運動的已量化的運動系數(shù),已量化的運動系數(shù)由預(yù)定的準(zhǔn)確性來表達,該預(yù)測誤差信息由預(yù)定準(zhǔn)確性來表達,已在視頻編碼器中用一運動系數(shù)量化器來量化的已量化的運動系數(shù)是根據(jù)一個預(yù)定的選擇判據(jù)來選擇的,使得所述圖象單元的運動系數(shù)所用以表達的預(yù)定準(zhǔn)確性同所述的預(yù)測誤差信息所用以表達的預(yù)定準(zhǔn)確性匹配。-定義一組反運動系數(shù)量化器,-確定量化所述運動系數(shù)用的一個所選的運動系數(shù)量化器,-從該組反運動系數(shù)量化器中選擇一個反運動系數(shù)量化器,所選的反運動系數(shù)量化器對應(yīng)于所選的運動系數(shù)量化器,-利用所選的反運動系數(shù)量化器對已量化的運動系數(shù)反量化,-利用已反量化的運動系數(shù)和一組基本函數(shù)表達圖象單元的運動,從而形成一個表達所述圖象單元的運動的模型,并-利用表達圖象單元運動的所述模型從該段基準(zhǔn)視頻信息形成所述圖象單元的預(yù)測視頻信息。
15.如權(quán)利要求14所述的方法,其特征在于還包括確定所述的用以為所述圖象單元運動建立模型的基本函數(shù)。
16.如權(quán)利要求14所述的方法,其特征在于,從所發(fā)送的、與用于編碼所述的已編碼的視頻信息中的一個參數(shù)有關(guān)的信息確定所選運動系數(shù)量化器。
17.如權(quán)利要求14所述的方法,還包括-確定預(yù)測誤差量化器,該預(yù)測誤差量化器被利用來量化了預(yù)測誤差信息,以及-確定所選的運動系數(shù)量化器,該量化器被利用根據(jù)已確定的預(yù)測誤差量化器來量化了該運動系數(shù)。
18.如權(quán)利要求14所述的方法,其特征在于,所述已編碼的視頻信息包括表示所選運動系數(shù)量化器的信息。
19.如權(quán)利要求14所述的方法,其特征在于還包括以下步驟接收表示所選運動系數(shù)量化器的信令信息。
20.一種用于對視頻信息進行運動補償編碼的編碼器,該編碼器包括-用于相對于一段基準(zhǔn)視頻信息估計一段當(dāng)前視頻信息中圖象單元的運動的裝置,-用于利用一組基本函數(shù)和相關(guān)的運動系數(shù)表達所述圖象單元的運動的裝置,-用于從一預(yù)定運動系數(shù)量化器組中選擇一個運動系數(shù)量化器的裝置,-用于利用所選的運動系數(shù)量化器量化所述運動系數(shù)的裝置,從而以一預(yù)定準(zhǔn)確性表達運動系數(shù),-用于反量化已量化的運動系數(shù)并利用所述一組基本函數(shù)和已反量化的運動系數(shù)從該段基準(zhǔn)視頻信息形成所述圖象單元的一個預(yù)測的裝置-用于形成所述圖象單元的預(yù)測誤差信息的裝置,該預(yù)測誤差信息表達所述圖象單元的預(yù)測和所述圖象單元的視頻信息之間的差值,-用于利用預(yù)測誤差量化器量化所述預(yù)測誤差信息的裝置,從而以預(yù)定的準(zhǔn)確性表達所述預(yù)測誤差信息,所述的編碼器還包括用于根據(jù)一個預(yù)定的選擇判據(jù)來選擇所述運動系數(shù)量化器的裝置,使得所述圖象單元的運動系數(shù)所用以表達的預(yù)定準(zhǔn)確性同所述的預(yù)測誤差信息所用以表達的預(yù)定準(zhǔn)確性匹配。
21.如權(quán)利要求20所述的編碼器,其特征在于,預(yù)定的選擇判據(jù)是用于所述編碼中的一個參數(shù)值。
22.如權(quán)利要求20所述的編碼器,其特征在于,所述預(yù)定的選擇判據(jù)是一目標(biāo)圖像質(zhì)量。
23.如權(quán)利要求20所述的編碼器,其特征在于,所述的預(yù)定選擇判據(jù)是用在傳送已編碼的視頻信息的一目標(biāo)位速率。
24.一種用于對已編碼的視頻信息進行解碼的解碼器,該解碼器包括-用于接收相對于一段基準(zhǔn)視頻信息的已編碼視頻信息和預(yù)測誤差信息的裝置,已編碼的視頻信息包含表達圖象單元運動的已量化的運動系數(shù),已量化的運動系數(shù)由預(yù)定的準(zhǔn)確性來表達,該預(yù)測誤差信息由預(yù)定準(zhǔn)確性來表達,已在視頻編碼器中用一運動系數(shù)量化器來量化的已量化的運動系數(shù)是根據(jù)一個預(yù)定的選擇判據(jù)來選擇的,使得所述圖象單元的運動系數(shù)所用以表達的預(yù)定準(zhǔn)確性同所述的預(yù)測誤差信息所用以表達的預(yù)定準(zhǔn)確性相匹配;-用于定義一組反運動系數(shù)量化器的裝置,-用于確定量化了所述運動系數(shù)的所選的運動系數(shù)量化器的裝置,-用于從該組反量化器中選擇一個反量化器的裝置,所選的反運動系數(shù)量化器對應(yīng)于所選的運動系數(shù)量化器,-用于利用所選的反量化器對已量化的運動系數(shù)反量化的裝置,-用于利用已反量化的運動系數(shù)和一組基本函數(shù)表達圖象單元的運動的裝置,從而形成一個表達所述圖象單元的運動的模型,并-用于利用表達圖象單元運動的所述模型從該段基準(zhǔn)視頻信息形成所述圖象單元的預(yù)測視頻信息的裝置。
25.如權(quán)利要求24所述的解碼器,其特征在于,所述已編碼的視頻信息包括表示所述選擇判據(jù)的信息。
26.如權(quán)利要求24所述的解碼器,還包括用于接收表示所述選擇判據(jù)的信令信息的裝置。
27.如權(quán)利要求24所述的解碼器,其特征在于,所述解碼器還包括-用于確定一個預(yù)測誤差量化器的裝置,該量化器被利用對所述預(yù)測誤差信息進行了量化,以及-用于確定所選的運動系數(shù)量化器的裝置,所述運動系數(shù)量化器被利用根據(jù)所確定的預(yù)測誤差量化器量化了所述的運動系數(shù)。
全文摘要
提出一種運動補償視頻編碼方法,它特別適用于利用低的傳輸位速率傳輸視頻流。在該運動補償編碼方法中,對一段基準(zhǔn)視頻信息和一段當(dāng)前視頻信息之間的像素運動進行估計,然后利用某些基本函數(shù)和系數(shù)建模。對系數(shù)進行量化,而量化器是按照某個選擇判據(jù),例如,根據(jù)目標(biāo)圖像質(zhì)量或目標(biāo)傳輸位速率選擇的。選擇判據(jù)最好是這樣的,即它自動調(diào)整像素運動的表達精確度,以便與預(yù)測誤差信息的表達精確度相聯(lián)系。還描述了解碼方法、編碼器和相應(yīng)的解碼器。
文檔編號H04N7/50GK1897710SQ20061010570
公開日2007年1月17日 申請日期2001年1月19日 優(yōu)先權(quán)日2000年1月21日
發(fā)明者J·萊尼馬, M·卡策維茨 申請人:諾基亞有限公司