專(zhuān)利名稱(chēng):可變比特率視頻編碼方法和相應(yīng)的視頻編碼器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及可變的比特率視頻編碼方法和相應(yīng)的允許執(zhí)行所述方法的視頻編碼器。
如由S.R.ELY所著的文獻(xiàn)《MPEG視頻編碼基礎(chǔ)指導(dǎo)緒論》的BBC研究和發(fā)展報(bào)告,編號(hào)為BBC-RD-1996/3中1至10頁(yè)所描述的,起始于1988年的MPEG標(biāo)準(zhǔn)是為了定義用于視頻和音頻信號(hào)數(shù)字壓縮標(biāo)準(zhǔn)的,第一個(gè)目標(biāo)是定義用于數(shù)字存儲(chǔ)操作諸如CD-ROM(小型磁盤(pán)只讀存貯器)的視頻規(guī)則系統(tǒng),但最終標(biāo)準(zhǔn)也適合于交互CD系統(tǒng)(CD-I),允許圖像數(shù)據(jù)以1至15兆比特范圍內(nèi)的比特率傳輸,此標(biāo)準(zhǔn)是基于通過(guò)利用瞬時(shí)冗余減少的基塊運(yùn)動(dòng)補(bǔ)償和用于空間冗余減少的離散余弦變換來(lái)實(shí)現(xiàn)的數(shù)據(jù)壓縮。
對(duì)于諸如CD-1和CD-ROM的普通CD標(biāo)準(zhǔn),傳輸比特率是固定的,且圖像僅能夠以恒定的比特率編碼。新的標(biāo)準(zhǔn)如數(shù)字通用磁盤(pán)(DVD)可供數(shù)據(jù)以可變比特率(VBR)傳輸之用;為了保持恒定的質(zhì)量,復(fù)雜的景物比包含較少信息的景物以較高的比特率編碼。
本發(fā)明的一個(gè)目的是提供一種可以獲得這樣一種編碼序列的恒定質(zhì)量的VBR視頻編碼方法,但是在所給出的總的比特預(yù)算的限制之下(如按照預(yù)置的目標(biāo)比特率)。
為此本發(fā)明涉及一種VBR視頻編碼方法,其特征在于它包括(a)一個(gè)分析步驟,用于編碼一個(gè)具有恒定量化步驟的圖象序列并且生成一個(gè)比特流,其序列的平均比特率不需要滿足所要求的特定尺寸的限制條件;(b)一個(gè)預(yù)測(cè)步驟,用于預(yù)測(cè)量化步長(zhǎng),此量化步長(zhǎng)必須按照預(yù)置的目標(biāo)比特率來(lái)編碼比特流。
(c)最后,所述分析和預(yù)測(cè)步驟的一個(gè)重復(fù),目的是為了得到所述步長(zhǎng)的更精確的估算。
(d)一個(gè)最終控制步驟,依據(jù)用于所有前幀的累積比特率和累積的預(yù)測(cè)比特率的比較,由于調(diào)整步長(zhǎng)使得與所述目標(biāo)比特率匹配。
本發(fā)明的另一個(gè)目的是提供一個(gè)用于實(shí)現(xiàn)所述編碼方法的VBR視頻編碼器。
為此,本發(fā)明涉及一種可變比特率視頻編碼器,其特征在于包括(a)一個(gè)編碼支路,包括串聯(lián)的至少一個(gè)量化電路和一個(gè)可變長(zhǎng)度電路;(b)一個(gè)預(yù)測(cè)支路,包括在所述量化裝置的輸出端串聯(lián)至少一個(gè)反向量化裝置和一個(gè)預(yù)測(cè)子系統(tǒng)并且通過(guò)減去由所述編碼支路編碼的信號(hào)來(lái)定義。
(c)所提供的一個(gè)控制電路用于執(zhí)行下述操作的實(shí)現(xiàn);--具有恒定量化步長(zhǎng)的視頻序列的編碼操作;--用于允許以特定的目標(biāo)比特率來(lái)編碼比特流的量化步長(zhǎng)的估算的預(yù)測(cè)操作;--所述操作的至少一個(gè)重復(fù);--為了將在編碼操作期間消耗的比特總數(shù)與所述比特率匹配的最終控制操作;本發(fā)明的優(yōu)點(diǎn)現(xiàn)將被展示在下面的相關(guān)描述和附圖中,其中--
圖1表示圖象組中的一些圖象,以及圖2和3說(shuō)明對(duì)于這樣的典型圖象組,圖象的顯示順序和它們的傳輸順序之差別;--圖4和5分別表示按照本發(fā)明的編碼方法以及對(duì)應(yīng)的允許實(shí)現(xiàn)所述方法的視頻編碼器的設(shè)計(jì)的主要步驟;--圖6表示用于實(shí)現(xiàn)所述編碼方法的最終控制步驟的控制環(huán)路;在描述按照本發(fā)明的編碼方法之前,MPEG-2視頻標(biāo)準(zhǔn)的一些基本原則可能被取消。由于允許適合所有應(yīng)用要求的輪廓(profiles)和層次(level)的定義,獲得了此標(biāo)準(zhǔn)的適應(yīng)性,意圖是支持更寬范圍的可能應(yīng)用,輪廓是用以支持所給出的應(yīng)用類(lèi)型所需的唯一特性的MPEG-2標(biāo)準(zhǔn)的子集,同時(shí)層定義了施加于比特流參數(shù)之上的一組限制條件。
MPEG-2壓縮的基本步驟,適合于由三個(gè)分量(Y,U,V)組成的彩色圖像,相關(guān)的幀被劃分成小的分段或宏塊,它們由亮度和色度塊組成。三個(gè)步驟是運(yùn)動(dòng)估算和校正(基于16像素×16行宏塊),離散余弦變換(基于8像素×8行塊),運(yùn)行-長(zhǎng)度編碼。
定義了三種類(lèi)型的幀或圖像。圖像內(nèi)(或I圖像)的編碼與其它圖像無(wú)關(guān),預(yù)測(cè)圖像(或P圖像)的編碼運(yùn)用了從過(guò)去的I或P圖像運(yùn)動(dòng)補(bǔ)償預(yù)測(cè),并且雙向預(yù)測(cè)(或B圖像)的編碼利用了過(guò)去的或未來(lái)的I或P圖像作為運(yùn)動(dòng)補(bǔ)償,以執(zhí)行塊匹配搜索獲得的運(yùn)動(dòng)矢量的形式給出運(yùn)動(dòng)信息(其中在編碼器中大量的試驗(yàn)性偏移被測(cè)試,并且在被編碼和預(yù)測(cè)的塊之間的最小誤差測(cè)量的基礎(chǔ)上,選擇出一個(gè)最好的)。
如圖1所示說(shuō)明,在運(yùn)動(dòng)矢量的基礎(chǔ)上,P和B圖像怎樣被定義。不同的圖像一般出現(xiàn)在稱(chēng)作一組圖像或GOP的重復(fù)序列中,且由I圖像和所有隨后的圖像組成直到下一個(gè)I圖像出現(xiàn)。一個(gè)典型的GOP按照?qǐng)D2中的顯示順序顯示(黑色箭頭對(duì)應(yīng)正向的預(yù)測(cè)且白箭頭對(duì)應(yīng)反向的預(yù)測(cè),序列及預(yù)測(cè)周期性重復(fù))并且按照?qǐng)D3中的傳輸順序(P4,P7,110,P13標(biāo)明排序的幀),所述在解碼反向預(yù)測(cè)的順序與未來(lái)圖像不同。
一個(gè)規(guī)則的GOP結(jié)構(gòu)能夠用兩個(gè)參數(shù)N和M來(lái)描述。被定義為GOP尺寸的參數(shù)N如圖2所示,所述GOP的圖像數(shù)目,如在兩個(gè)I圖像之間的圖像數(shù)目加1。參數(shù)M是P圖像的間距,或者(是同樣的情況)相鄰B圖像的數(shù)目加1。在圖1至3所說(shuō)明的實(shí)例中,M=3和N=9。顯然其它的組合是可能的圖像顯示順序 NMIPPPPPIPP61IBPBPBPBI82IBBPBBPBBPBBIBBP 12 3所選擇的N和M彼此獨(dú)立。
在關(guān)于模塊校正種類(lèi)的判定確定之后,相關(guān)宏塊的每一個(gè)像素的預(yù)測(cè)誤差通過(guò)從原始的宏塊減去估算的宏塊獲得。那么關(guān)于預(yù)測(cè)誤差的DCT的執(zhí)行,對(duì)于8×8像素的塊(從而對(duì)于每個(gè)宏塊確定6個(gè)DCT轉(zhuǎn)換4個(gè)用于亮度分量,2個(gè)用于色度分量),這樣所獲得的頻率分量被量化了。量化步長(zhǎng)決定解碼圖像的比特率和失真如果量化是不精確的,需較少的比特編碼一個(gè)圖像,但是質(zhì)量較差,同時(shí),如果量化步驟較好,需要大量的比特編碼圖像,但質(zhì)量較高。由于人類(lèi)的眼睛對(duì)較高頻率沒(méi)有較低頻率敏感,因此對(duì)于高頻分量使用粗略的量化是有益的(事實(shí)上,為了實(shí)現(xiàn)頻率獨(dú)立量化,一個(gè)加權(quán)矩陣適用于基本宏塊量化參數(shù);大量的系數(shù),特別是那些高頻,在所述加權(quán)量化后等于0)。
這樣每個(gè)塊被Z字形掃描且所獲得的列表被編碼。運(yùn)行長(zhǎng)度編碼通過(guò)確定一對(duì)(A,NZ)來(lái)進(jìn)行,其中A設(shè)定連續(xù)零的數(shù)目(0到63)且NZ設(shè)定下述非零系數(shù)的振幅。那么依據(jù)此對(duì)出現(xiàn)的頻率(一個(gè)普通的組合(A,NZ)被分配為較短的可變長(zhǎng)度編碼,而不太經(jīng)常出現(xiàn)的被分配為較長(zhǎng)的編碼)。
以上所描述的功能在由C.T.Chen等人所箸的文獻(xiàn)《用于普通視頻應(yīng)用的混合擴(kuò)展MPEG視頻編碼算法》中的信號(hào)處理圖像通信5(1993),第21-37頁(yè)中的2,4部分,其中包括普通的MPEG-2編碼器簡(jiǎn)圖,被簡(jiǎn)略地作為一個(gè)實(shí)例。現(xiàn)在所提出的VBR編碼方法的目的在于保證最終比特流的大小將非常適合象DVD這樣的具有固定容量的存貯媒體。所述方法的示意圖在圖4中給出,且允許實(shí)現(xiàn)所述方法的視頻編碼器的設(shè)計(jì)如圖5所示。
編碼方法被劃分為步驟41,42和43。第一步驟41是一個(gè)分析步驟,其中圖像序列以恒定的步驟Qc(且因此具有恒定的質(zhì)量)編碼。在此步驟的結(jié)束,一個(gè)依從標(biāo)準(zhǔn)MPEG-2的比特流已經(jīng)產(chǎn)生,但整個(gè)序列的平均比特率這樣被處理(如此序列中被編碼的比特總數(shù)與在那個(gè)序列中的圖像的總數(shù)之比),在所述步驟結(jié)束之前未知,沒(méi)有達(dá)到比特流規(guī)定大小的所要求的限制條件。
第二步驟42是預(yù)測(cè)一個(gè)步驟,準(zhǔn)備按照規(guī)定的目標(biāo)比特率預(yù)測(cè)必須用于編碼比特流的量化步長(zhǎng)Q。一旦所述預(yù)測(cè)步驟完成,則分析步驟41可以每當(dāng)需要時(shí)就被重復(fù)(圖4中的箭頭),目的是為了得到關(guān)于Q的更精確的估算(然而,一個(gè)較好的預(yù)測(cè)一般經(jīng)過(guò)較少的幾次運(yùn)行之后就可以獲得,例如兩次)。
當(dāng)在第二步驟結(jié)束時(shí),有效的量化步長(zhǎng)Q僅僅只是一個(gè)估算值時(shí),如果每個(gè)圖像用所述預(yù)測(cè)值編碼,那么全部比特預(yù)算不是正好匹配。最后的步驟是允許保證全部平均比特率的限制被嚴(yán)格監(jiān)察的最終過(guò)程43。為保證最終輸出的比特流有確實(shí)精確的所需尺寸,執(zhí)行量化步長(zhǎng)控制處理。此處理是基于依賴預(yù)測(cè)和實(shí)際比特率的比較的控制環(huán)路。在最后的步驟中每個(gè)圖像被編碼之后,控制處理將已經(jīng)消耗的比特?cái)?shù)與所允許進(jìn)行比較。如果所消耗的比特比預(yù)算所允許的要多,那么量化步長(zhǎng)增加,且下列圖像的比特率減少。如果所消耗的比特率比預(yù)算所允許的要少,那么Q減少且比特率增加,全部的目標(biāo)比特率最終被精確地匹配。
所述VBR編碼方法在圖5中的編碼器中執(zhí)行,其中每一個(gè)塊對(duì)應(yīng)的都是在控制器55的監(jiān)控下執(zhí)行的特定功能。所示編碼器包括串聯(lián)一個(gè)輸入緩沖器51,一個(gè)減法器549,一個(gè)DCT電路521,一個(gè)量化電路522,一個(gè)可變長(zhǎng)度編碼電路523,和一個(gè)輸出緩沖器524。電路521到524組成了編碼支路52的主要元件,對(duì)于預(yù)測(cè)支路53,包括一個(gè)反向量化電路531,一個(gè)反向DCT電路532和一個(gè)預(yù)測(cè)子系統(tǒng)組合。此預(yù)測(cè)子系統(tǒng)其自身包括一個(gè)加法器541,一個(gè)緩存器542,一個(gè)運(yùn)動(dòng)估計(jì)電路543(所述估計(jì)是基于在緩存器51的輸出端有效的輸入信號(hào)的一個(gè)分析),以及減法器549(接收緩存器51的輸出信號(hào)和運(yùn)動(dòng)補(bǔ)償電路544的輸出信號(hào),用于將其之差發(fā)送到編碼支路)。
所說(shuō)明的編碼器的輸出被發(fā)送到控制器55,此控制器55包括用于執(zhí)行最終步驟43的控制環(huán)路。用于VBR編碼器最終過(guò)程的所述控制環(huán)路的主要元件如圖6所示。已經(jīng)解釋過(guò),在最終編碼過(guò)程間調(diào)整量化步長(zhǎng)是必需的,目的是為了確保由操作者所給出的全部的目標(biāo)比特率精確地匹配。所述環(huán)路首先包括一個(gè)第一計(jì)算電路61,其中環(huán)路的輸出(如累積預(yù)測(cè)誤差)乘以系數(shù)KP。此系數(shù)其自身等于恒量QC1(由操作者選擇)乘以加權(quán)系數(shù)Qint/APG,其中Qint是用于GOP(N幀的)的比特總數(shù)Q和APG的綜合測(cè)定。
那么加法電路63將所述電路61的輸出Q-prop和在用于產(chǎn)生一個(gè)綜合測(cè)定Q的第二計(jì)算電路62輸出的有效信號(hào)Qint相加。轉(zhuǎn)換電路64提供用于所有前幀的累積比特率,根據(jù)關(guān)系式R=fi(Q)(在加法器63輸出的量化系數(shù)Q和R之間)被存貯在所述電路64。這樣獲得的累積比特率,在比較器65中與所述比較器的第二輸入上有效的累積預(yù)測(cè)比特率相比較且被使用,在電路66中綜合統(tǒng)一之后,因此而修改Q。
如上所述VBR編碼策略是關(guān)于前述VBR編碼器的改進(jìn),原因是它實(shí)現(xiàn)了被解碼的序列的可知質(zhì)量的更好的量化。分類(lèi)VBR編碼器調(diào)整量化參數(shù)Q,同時(shí)編碼幀,以致于預(yù)測(cè)比特率匹配于每一個(gè)圖像。因此它們?cè)试S改變幀內(nèi)量化參數(shù)Q,并且圖像的不穩(wěn)定空間特性可以實(shí)現(xiàn)了。這種質(zhì)量變化的發(fā)生不論幀的比特率預(yù)測(cè)得正確與否。對(duì)于所提出的VBR編碼器,Q在幀內(nèi)保持恒定且視頻序列中任何圖像的空間質(zhì)量不改變。如果正確地測(cè)定了幀比特率和量化步寬,在自適應(yīng)量化之前,Q和由此主觀上的失真,對(duì)于序列的所有宏塊一般保持恒定。由于量化步寬和幀比特率僅僅是估算的,所以從幀到幀發(fā)生了Q和序列質(zhì)量的改變,但是在兩個(gè)分析驗(yàn)定過(guò)后,整個(gè)幀中的Q的偏移一般低于1%。
除了達(dá)到穩(wěn)定的內(nèi)幀質(zhì)量,新的VBR策略的其它幾個(gè)重要的方面可注意到--通過(guò)增加分析過(guò)程的次數(shù)以一種迭代的方法提高量化系數(shù)的測(cè)定如果分析運(yùn)行之后,距所需目標(biāo)比特率的偏差還太高,那么可以利用先前編碼通過(guò)的結(jié)果計(jì)算有關(guān)量化系統(tǒng)的更好的估算;--作為新的VBR編碼策略預(yù)測(cè)Q,分析過(guò)程以不同于可利用的預(yù)測(cè)過(guò)程的另一幀順序執(zhí)行這是不可能利用舊的策略,且是新的編碼概念的主要優(yōu)點(diǎn);--如果在最終的過(guò)程中,Q和質(zhì)量的變化原來(lái)是這樣不能接受的高,那么最終的步驟可以作為用于Q和子序列過(guò)程的比特率的預(yù)測(cè)的一個(gè)分析過(guò)程,利用這一特點(diǎn),開(kāi)發(fā)一個(gè)執(zhí)行象所需要的那樣多的編碼過(guò)程,直到輸出比特率的特性在由操作者定義的某一限制之內(nèi)的編碼器是可能的。
--作為控制環(huán)路具有一個(gè)綜合特性,短期比特率預(yù)測(cè)誤差彼此取消;因而,系統(tǒng)的、依賴幀類(lèi)型的預(yù)測(cè)誤差不會(huì)嚴(yán)重地影響所提出的VBR編碼器的性能。
權(quán)利要求
1.一種可變比特率視頻編碼方法,其特征在于它包括(a)一個(gè)分析步驟,用于以恒定的量化步長(zhǎng)編碼圖像序列并且生成一個(gè)比特流,對(duì)于此比特流其序列的平均比特率不需滿足所要求的特定尺寸的限制。(b)一個(gè)預(yù)測(cè)步驟,用于預(yù)測(cè)量化的步長(zhǎng),此步長(zhǎng)必須用于按照預(yù)置的目標(biāo)比特率編碼比特流;(c)所述分析和預(yù)測(cè)步驟的至少一個(gè)重復(fù),目的是為了得到所述步長(zhǎng)的一個(gè)更精確的估算;(d)一個(gè)最終控制步驟,依據(jù)所有前幀的累積比特率和累積預(yù)測(cè)比特率的比較,由于調(diào)整步長(zhǎng)以致于目標(biāo)比特率被匹配。
2.一個(gè)可變比特率視頻編碼器,其特征在于它包括(a)一個(gè)編碼支路,包括串聯(lián)至少一個(gè)量化電路和一個(gè)可變長(zhǎng)度電路;(b)一個(gè)預(yù)測(cè)支路,包括在所述量化裝置的輸出端串聯(lián)的至少一個(gè)反向量化裝置和一個(gè)預(yù)測(cè)子系統(tǒng)并且通過(guò)減去由所述編碼支路編碼的信號(hào)來(lái)定義。(c)所提供的用于執(zhí)行實(shí)現(xiàn)下述操作的控制電路--具有恒定量化步長(zhǎng)的視頻序列的編碼操作;--用于允許以特定目標(biāo)比特率來(lái)編碼比特流的估算的量化步長(zhǎng)的預(yù)測(cè)操作;--所述操作的至少一個(gè)重復(fù);--最終控制操作,目的為了匹配在對(duì)所述目標(biāo)比特率的編碼操作期間所消耗的比特總數(shù)。
3.按照權(quán)利要求2的一個(gè)可變比特率視頻編碼裝置,其特征在于所述控制操作是按照所有前幀的累積比特率和累積預(yù)測(cè)比特率之間的比較結(jié)果,通過(guò)修改所述步長(zhǎng)的控制環(huán)路來(lái)執(zhí)行的。
全文摘要
按照本發(fā)明的可變比特率編碼方法包括一個(gè)包含第一分析過(guò)程和第二預(yù)測(cè)過(guò)程的反復(fù)處理。分析過(guò)程具有恒定量化步長(zhǎng)(和質(zhì)量)序列的圖像編碼以及允許將步長(zhǎng)與所要求的目標(biāo)比特率匹配的預(yù)測(cè)過(guò)程。在一些重復(fù)之后,最后的步驟允許相對(duì)于所述目標(biāo)比特率的所述步長(zhǎng)的最后調(diào)整。申請(qǐng):作為具有有限容量的存貯媒體的MPEG-2解碼器。
文檔編號(hào)H04N7/26GK1241336SQ98801443
公開(kāi)日2000年1月12日 申請(qǐng)日期1998年6月25日 優(yōu)先權(quán)日1997年7月29日
發(fā)明者E·費(fèi)特, D·凱澤 申請(qǐng)人:皇家菲利浦電子有限公司