亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用于視頻編碼標(biāo)準(zhǔn)的改進的視頻速率控制的制作方法

文檔序號:7892642閱讀:124來源:國知局
專利名稱:用于視頻編碼標(biāo)準(zhǔn)的改進的視頻速率控制的制作方法
技術(shù)領(lǐng)域
本發(fā)明總地涉及視頻編碼。更具體地,本發(fā)明涉及視頻編碼中的視頻速率控制,例如用于但不是專門用于諸如H. 263和MPEG-4 (運動畫面專家組_4)標(biāo)準(zhǔn)之類的視頻編碼標(biāo)準(zhǔn)。
背景技術(shù)
在過去幾年人們見證了數(shù)字和在線視頻及其應(yīng)用的很大程度的普及。利用快速通信技術(shù)和多媒體應(yīng)用的出現(xiàn),在許多領(lǐng)域和系統(tǒng)中使用了數(shù)字視頻編解碼器,諸如在采用MPEG-2(運動畫面專家組-2)格式的DVD (數(shù)字視頻盤)中、在采用MPEG-I (運動畫面專家組-I)格式的VCD 2(視頻壓縮盤)中、在新興的衛(wèi)星和地面廣播系統(tǒng)中、以及在因特網(wǎng)上。更具體地,視頻應(yīng)用的普及允許在壓縮和解壓縮視頻數(shù)據(jù)的視頻編解碼器中的令人感興趣的開發(fā)。在視頻數(shù)據(jù)壓縮中,在視頻質(zhì)量與壓縮率(即必需的數(shù)據(jù)傳輸量,換言之,表現(xiàn)視頻所需的比特率)之間保持平衡。另外,還考慮編碼和解碼算法的復(fù)雜度、對于數(shù)據(jù)丟失和差錯的魯棒性、壓縮算法設(shè)計的目前的技術(shù)水平、例如視頻會議應(yīng)用中的端到端延遲,等等。存在多個視頻編碼標(biāo)準(zhǔn),針對特定類型的應(yīng)用而對它們中的每一個進行具體的設(shè)計。例如,由ITU(國際電信聯(lián)盟)公布的H. 263標(biāo)準(zhǔn)是用于諸如40-128kbps(千比特/秒)的范圍內(nèi)的低比特率的視頻編碼和壓縮標(biāo)準(zhǔn)。更具體地,此標(biāo)準(zhǔn)支持視頻會議和視頻電話應(yīng)用中的視頻編碼。H. 263標(biāo)準(zhǔn)指定編碼的數(shù)據(jù)流的格式和內(nèi)容,因此H. 263設(shè)置編碼器和解碼器要滿足的要求,而不是具體提供編碼器和解碼器自身的設(shè)計或者結(jié)構(gòu)。類似的原理應(yīng)用于諸如MPEG-4之類的其它視頻標(biāo)準(zhǔn)。在視頻壓縮中,每個畫面典型地由一般被稱為幀的兩種畫面、即幀內(nèi)幀(intraframe)以及巾貞間巾貞(inter frame)表示。此外,將巾貞間巾貞分為兩個類別,即P巾貞(預(yù)測巾貞)和B幀(雙向預(yù)測或者雙向幀)。幀內(nèi)幀表示整個畫面,由于必須編碼整個畫面的內(nèi)容,因此幀內(nèi)幀耗費帶寬。為了壓縮并且由此節(jié)省帶寬,僅僅對整個畫面(或者幀內(nèi)幀)之間的差異進行編碼并且然后將其發(fā)送。那些差異由P幀和B幀表示。例如,兩個連續(xù)畫面之間的背景通常不改變,因此不需要再次編碼背景。B幀是雙向的并且由此執(zhí)行雙向預(yù)測、即利用前面的畫面和后面的畫面進行預(yù)測。此外,在壓縮視頻時,為了處理的目的,將畫面分為宏塊。實際上,逐個宏塊地應(yīng)用處理。每個宏塊通常表不16X 16像素的塊。視頻編碼器通常包括運動估計模塊、運動補償模塊、DCT (離散余弦變換)模塊、以及量化模塊。
運動估計模塊允許預(yù)測前面的幀中的哪些區(qū)域已經(jīng)被移動到當(dāng)前幀中,使得不需要重新編碼那些區(qū)域。運動補償模塊允許對于區(qū)域從前面的幀到當(dāng)前幀的移動進行補償。DCT通常用于將像素塊轉(zhuǎn)換為“空間頻率系數(shù)”。DCT通常對于諸如宏塊之類的二維像素塊進行操作。由于DCT在壓縮畫面的能量(或信息)方面是有效的,因此通常幾個DCT系數(shù)足以重新創(chuàng)建原始畫面。而且,提供量化模塊,用于量化DCT系數(shù)。例如,量化模塊將接近于零的DCT系數(shù)設(shè)置為零,并且量化剩余的非零DCT系數(shù)。視頻編碼中的限制之一來自于信道的容量。實際上,通信信道由他們每秒能夠傳輸?shù)谋忍氐臄?shù)目而限制。在許多信道中,諸如在ISDN(集成服務(wù)數(shù)字網(wǎng)絡(luò))、P0TS(普通傳統(tǒng)電話業(yè)務(wù))、無線信道等中比特率是恒定的。 然而,取決于用于壓縮視頻的算法的效率以及那些視頻的運動復(fù)雜度,編碼和傳輸所編碼的視頻所需的比特預(yù)算以及比特率可能變化或者增加。因此,使用速率控制以將編碼各種復(fù)雜度的視頻所需的比特率調(diào)整為用于傳輸那些所編碼的視頻的信道的比特率。在H. 263標(biāo)準(zhǔn)中使用的當(dāng)前速率控制算法被稱為TMN8 (測試模型近期版本8)??偟貋碚f,此速率控制算法確保僅僅滿足平均比特率。以下被稱為參考文獻I的Jordi Ribas-Corbera 1999年的標(biāo)題為“RateControlin DCT Video Coding for Low-Delay Communications”的論文公開了速率控制TMN8所使用的、以確保每一幀都滿足與目標(biāo)幀尺寸有關(guān)的目標(biāo)比特率的算法。更具體地,TMN8速率控制算法計算一些圖像統(tǒng)計值,以為每個宏塊確定一些合適的QP (量化參數(shù))值,并且在每個幀間幀內(nèi)更新QP值,以便滿足目標(biāo)幀尺寸。不幸的是,此控制是非常近似化的,并且作為結(jié)果的幀尺寸經(jīng)??赡苓h(yuǎn)高于或者遠(yuǎn)低于目標(biāo)幀尺寸。對于幀內(nèi)幀,將固定的QP用于整個視頻序列,無論視頻序列的特性如何。對于幀內(nèi)幀的尺寸不具有控制通常是導(dǎo)致超出期望的比特率的因素。此外,速率控制TMN8不能控制平均目標(biāo)比特率和最大比特率這兩者。實際上,在H. 263視頻編碼標(biāo)準(zhǔn)中使用的TMN8速率控制算法僅僅使用平均比特率參數(shù)。然而,在許多視頻應(yīng)用中,除了平均比特率之外,還應(yīng)當(dāng)考慮最大比特率。TMN8不能保證不超出給定的目標(biāo)比特率,這是因為編碼器對于幀內(nèi)幀尺寸沒有控制,并且對于幀間幀尺寸也沒有足夠的控制。在超出給定的目標(biāo)比特率時,編碼器將跳過特定數(shù)目的幀,以便補償溢出(overflow)。然而,通過這樣做,改變了通信和視頻的質(zhì)量。因此,存在對于克服與諸如H. 263標(biāo)準(zhǔn)之類的、視頻編碼標(biāo)準(zhǔn)中當(dāng)前速率控制的限制有關(guān)的上述問題的需要。因此,尋求一種用于改進視頻編碼標(biāo)準(zhǔn)中的速率控制的方法和系統(tǒng)。

發(fā)明內(nèi)容
因此,本發(fā)明的一個目的是提供例如諸如H. 263和MPEG-4標(biāo)準(zhǔn)之類的視頻編碼標(biāo)準(zhǔn)中的、視頻編碼中的速率控制,以便通過確保遵守平均比特率和最大比特率這兩者來增強視頻的質(zhì)量。更具體地,根據(jù)本發(fā)明,提供了一種用于視頻流的視頻編碼中的速率控制的方法,其包括指定該視頻流的最 大比特率和平均比特率;基于幀間幀相對于幀內(nèi)幀的位置來計算幀間幀尺寸,以確保不超過所指定的最大比特率;并且調(diào)整所計算的幀間幀尺寸,以確保不超過所指定的平均比特率并且不超過所指定的最大比特率。本發(fā)明還涉及一種用于視頻流的視頻編碼中的速率控制的設(shè)備,該設(shè)備包括用于指定視頻流的最大比特率和平均比特率的部件;用于根據(jù)幀間幀相對于幀內(nèi)幀的位置計算幀間幀尺寸以確保不超過所指定的最大比特率的部件;以及用于調(diào)整所計算的幀間幀尺寸以確保不超過所指定的平均比特率同時不超過所指定的最大比特率的部件。本發(fā)明還涉及一種用于在考慮解碼延遲時改進包括由幀內(nèi)幀分開的一系列幀間幀的序列的視頻編碼中的速率控制的方法,該方法包括對于該系列的每個幀間幀,計算目標(biāo)幀尺寸;對于該系列的每個幀間幀,計算與所述每個幀間幀相對于前面的幀內(nèi)幀和即將到來的幀內(nèi)幀的位置相關(guān)的最大緩沖器等級;以及響應(yīng)于所計算的目標(biāo)幀尺寸和所計算的最大緩沖器等級而優(yōu)化傳輸緩沖器等級。本發(fā)明還涉及一種用于在允許解碼延遲時改進包括由幀內(nèi)幀分開的一系列幀間幀的序列的視頻編碼中的速率控制的設(shè)備,該設(shè)備包括用于對于每個幀間幀計算目標(biāo)幀尺寸的部件;用于對于每個幀間幀計算與所述每個幀間幀相對于前面的幀內(nèi)幀和即將到來的幀內(nèi)幀的位置相關(guān)的最大緩沖器等級的部件;以及用于響應(yīng)于所計算的目標(biāo)幀尺寸和所計算的最大緩沖器等級而優(yōu)化傳輸緩沖器等級的部件。本發(fā)明還涉及一種用于在允許解碼延遲時改進包括由幀內(nèi)幀分開的一系列幀間幀的序列的視頻編碼中的速率控制的設(shè)備,該設(shè)備包括對于每個幀間幀計算目標(biāo)幀尺寸的計算器;最大緩沖器等級的計算器,對于每個幀間幀計算與每個幀間幀相對于前面的幀內(nèi)幀和即將到來的幀內(nèi)幀的位置相關(guān)的最大緩沖器等級;以及優(yōu)化器,響應(yīng)于所計算的目標(biāo)幀尺寸和所計算的最大緩沖器等級而優(yōu)化傳輸緩沖器等級。在參照附圖閱讀通過僅僅借助示例給出的本發(fā)明的說明性實施例的以下的非限制性描述時,本發(fā)明的前面的和其它的目的、優(yōu)點以及特性將變得更加明顯。


在附圖中圖I是視頻通信系統(tǒng)的示意圖;圖2是用于圖I的通信系統(tǒng)中的視頻編碼的編碼器的示意框圖;圖3是根據(jù)本發(fā)明的非限制性說明性實施例的用于視頻編碼中的速率控制的設(shè)備的示意框圖;圖4是圖示用于H. 263視頻編碼標(biāo)準(zhǔn)中的速率控制的、根據(jù)本發(fā)明的非限制性說明性實施例的方法的流程圖;圖5是圖示用于計算幀間幀目標(biāo)尺寸的方法的示例的流程圖;圖6是圖示用于計算幀間幀目標(biāo)尺寸的方法的另一示例的流程圖;圖7是圖示用于更新所計算的幀間幀目標(biāo)尺寸的方法的示例的流程圖;圖8是圖示用于更新所計算的幀間幀目標(biāo)尺寸的方法的另一示例的流程圖;以及圖9是圖示用于H. 263視頻編碼標(biāo)準(zhǔn)中的速率控制的、根據(jù)本發(fā)明的另一非限制性說明性實施例的方法的流程圖。
具體實施例方式總的來說,根據(jù)本發(fā)明的非限制性說明性實施例的、用于改進速率控制的設(shè)備允許致力于TMN8速率控制未滿足的以下要求I.能夠指定并且滿足幀內(nèi)幀的目標(biāo)幀尺寸-通過這樣做,可以控制幀內(nèi)幀的質(zhì)量以及由幀內(nèi)幀的出現(xiàn)導(dǎo)致的比特率中的波動;并且-QP(量化參數(shù))不是固定的,而是基于幀內(nèi)幀特性而被計算,并且可以對于幀內(nèi)幀中的每個像素塊而改變,以便滿足所指定的幀內(nèi)幀目標(biāo)尺寸。2.除了平均比特率之外,還能夠指定并且滿足最大比特率
-此外,在已經(jīng)對幀進行了編碼之后,執(zhí)行對于所編碼的幀的尺寸的驗證;如果所編碼的幀的尺寸與最大比特率相比太大而不可接受,則需要利用較小的目標(biāo)尺寸重新編碼幀或者將其丟棄;-相反,TMN8速率控制通過例如丟棄幀來試圖僅僅滿足平均比特率;其不能滿足最大比特率。3.具有用于管理最大比特率的循環(huán)緩沖器以及用于平均比特率的另一緩沖器;-相反,TMN8僅僅使用一個傳輸緩沖器。4.估計和計算取決于幀內(nèi)幀的定時和編碼的幀間幀目標(biāo)尺寸如果最近已經(jīng)編碼了幀內(nèi)幀或者如果馬上就將編碼幀內(nèi)幀;-而且,幀間幀目標(biāo)尺寸的估計考慮各種參數(shù),諸如幀內(nèi)幀的尺寸、兩個幀內(nèi)幀之間的時間段、低于或者高于平均比特率的比特的數(shù)目,等等。-反之,TMN8使用僅僅基于傳輸緩沖器占用和比率的目標(biāo)尺寸;其從不預(yù)測即將到來的幀內(nèi)幀并且在幀內(nèi)幀的編碼之后典型地跳過許多幀,因此導(dǎo)致視頻質(zhì)量的降級。5.以主動(proactive)和預(yù)防的方式丟棄巾貞-根據(jù)本發(fā)明的一個非限制性說明性實施例的設(shè)備確保從不超出最大比特率,并且在傳輸幀之前在需要時丟棄幀;丟棄幀的決定基于所估計的與所達到的、即所實際編碼的之間的差異;-反之,TMN8在已經(jīng)創(chuàng)建了并且傳輸了太大并且導(dǎo)致超出目標(biāo)尺寸的幀之后跳過幀;通過這樣做,已經(jīng)對視頻的質(zhì)量造成了損害;此外,丟棄幀的決定基于傳輸緩沖器裝滿的程度。I 系統(tǒng)首先,將描述視頻通信系統(tǒng),以便定義其中發(fā)生視頻編碼的通信系統(tǒng)。然而,該通信系統(tǒng)不是本發(fā)明的一部分。轉(zhuǎn)向圖I,將描述通信系統(tǒng)10。通信系統(tǒng)10包括用于捕捉視頻的、諸如攝像機或者網(wǎng)絡(luò)攝像頭之類的視頻源12。然后,將那些視頻提供給視頻編碼器14。將視頻編碼器14連接到網(wǎng)絡(luò)16。網(wǎng)絡(luò)16還可以包括用于將所編碼的視頻傳輸?shù)浇獯a器18的通信鏈路。最后,將解碼器連接到視頻播放器20。視頻播放器20可以是計算機、電視機、或者能夠顯示視頻的任何設(shè)備。在例如在第一方與第二方之間的通信對話期間,通過編碼器14接收由第一方的視頻源12捕捉的視頻,然后,編碼器14執(zhí)行視頻壓縮和編碼。一旦編碼器14完成了對視頻數(shù)據(jù)的編碼,就將所編碼的視頻通過網(wǎng)絡(luò)16或者簡單地通過通信鏈路傳輸?shù)降诙健T诘诙揭欢?,解碼器18接收所編碼的視頻并且開始對其進行解碼。一旦解碼了所編碼的視頻,解碼器18就將經(jīng)過解碼的視頻數(shù)據(jù)發(fā)送到視頻播放器20,然后,視頻播放器20開始播放從第一方接收到的視頻。在圖2中詳細(xì)描述編碼器14。編碼器14包括一個或多個進程SO1到30N,其允許執(zhí)行如將在下文中描述的視頻編碼中的不同操作。編碼器14還包括運動估計模塊32、運動補償模塊34、DCT模塊36、量化模塊38、以及緩沖器40。應(yīng)注意可以在諸如例如來自Vantri x公司的spot xde 之類的不同的平臺中實施此編碼器14。視頻源可以是視頻文件或者攝像機。如上文所述,運動估計模塊32允許預(yù)測可能已經(jīng)被移動到當(dāng)前幀中的前面的幀的區(qū)域。然后,運動補償模塊34針對對于由運動估計模塊32檢測到的運動的補償。DCT模塊36對于像素塊執(zhí)行到空間頻率系數(shù)的DCT變換。然后,將那些空間頻率系數(shù)供應(yīng)給量化模塊,以便對所述空間頻率系數(shù)進行量化??梢詫⑺幋a的幀存儲在編碼器14的緩沖器40中。因此,緩沖器40允許接收所編碼的幀,然后,通過通信鏈路(網(wǎng)絡(luò)16)傳輸所述所編碼的幀。最后,編碼器14還包括根據(jù)本申請的、用于控制視頻編碼中的比特率的速率控制設(shè)備42。此速率控制設(shè)備確保不超出通信鏈路的最大容量,并且提供增強的視覺質(zhì)量,特別是對于遠(yuǎn)程監(jiān)視(tele-surveillance)應(yīng)用以及其它呈現(xiàn)連續(xù)視頻序列的應(yīng)用。II.設(shè)備速率控制設(shè)備42實施編碼器14中的改進的速率控制。更具體地,設(shè)備42實施用于控制H. 263以及MPEG 4視頻編碼標(biāo)準(zhǔn)中的比特率的方法100,以便滿足平均和最大比特率限制。在下文中將描述方法100。如圖3所圖示的設(shè)備42包括預(yù)測器50,用于指定幀內(nèi)幀的目標(biāo)尺寸并且預(yù)測在量化模塊38中使用的所需要的QP,以滿足所指定的幀內(nèi)幀目標(biāo)尺寸。由于在控制比特率時幀內(nèi)幀的尺寸可以影響比特率中的質(zhì)量和突發(fā)(burst)這兩者,因此確定目標(biāo)尺寸以適當(dāng)?shù)卦O(shè)置用于編碼幀內(nèi)幀的比特預(yù)算(budget)。設(shè)備42還包括幀間幀尺寸的第一計算器52。第一計算器52允許計算不同情況下的幀間幀的目標(biāo)尺寸,以便滿足最大比特率限制,如在下文中將要描述的。此外,設(shè)備42包括用于重新計算由第一計算器52提供的幀間幀目標(biāo)尺寸的第二計算器54,以便滿足最大比特率以及平均比特率限制這兩者。而且,設(shè)備42包括用于確保所編碼的幀的尺寸不超出所計算的幀間幀目標(biāo)尺寸以及最大比特率所允許的最大尺寸的驗證器(validator) 56。最后,為了滿足最大和平均比特率的限制,圖2中的進程302具有循環(huán)緩沖器(未不出),用于包含在上一(I)秒內(nèi)傳輸?shù)慕碡懙某叽?。例如,?0巾貞/秒時,這樣的緩沖器將保持上10個所編碼的幀的尺寸??偟膩碚f,用于滿足最大和平均比特率限制的、根據(jù)本發(fā)明的非限制性說明性實施例的方法100使用兩個控制進程,諸如302和303。例如,可以連同第一和第二計算器52和54—起使用進程302,用于計算所需的目標(biāo)幀尺寸以避免超出最大比特率。連同驗證器56 一起使用進程303,以在對幀進行編碼之后,檢查是否可以傳輸所編碼的幀、即未達到最大比特率。在已經(jīng)超出了最大比特率的情況下,丟棄所編碼的幀,或者編碼器14試圖利用不同的編碼參數(shù)再次編碼相同的幀。III.方法下面,將結(jié)合圖4描述用于控制諸如H. 263標(biāo)準(zhǔn)之類的視頻編碼標(biāo)準(zhǔn)中的比特率的、根據(jù)本發(fā)明的非限制性說明性實施例的方法100。然而,應(yīng)注意還可以在諸如H. 261、MPEG_4、H. 264等之類的其它視頻編碼標(biāo)準(zhǔn)中使用此速率控制。 如上文所述,由于幀內(nèi)幀的尺寸可以影響比特率中的質(zhì)量和突發(fā)這兩者,因此在控制比特率時設(shè)置用于編碼幀內(nèi)幀的第一比特預(yù)算是重要的。在操作101中,指定最大比特率Rmax和平均比特率Ravg。然后,在操作102中,指定幀內(nèi)幀的目標(biāo)尺寸以比特為單位)。在方法100的操作103中,執(zhí)行QP的預(yù)測,其允許在編碼幀內(nèi)幀時更好地滿足在操作102中指定的幀內(nèi)幀目標(biāo)尺寸。可以例如在圖3的預(yù)測器50中執(zhí)行操作102和103。然后,在操作104中,基于在操作102中指定的幀內(nèi)幀的目標(biāo)尺寸來計算幀間幀的目標(biāo)尺寸,以便滿足所指定的最大比特率Rmx??梢杂衫鐖D3中的第一計算器52執(zhí)行此操作104。在操作106中,重新計算所計算的幀間幀目標(biāo)尺寸,以便滿足所指定的最大比特率和平均比特率這兩者。可以由例如圖3中的第二計算器54執(zhí)行此操作。最后,在操作108中,針對由最大和平均比特率允許的所計算的幀尺寸,驗證所編碼的幀的尺寸?,F(xiàn)在,更具體地,將更詳細(xì)地描述圖4的方法100的每個操作。操作101 :最大比特率和平均比特率的指定為了獲得視頻編碼中的改進的視頻質(zhì)量,設(shè)置被表示為Rmax的最大比特率,不應(yīng)當(dāng)超出該最大比特率的值。將最大比特率定義為可以在任何一(I)秒的時間段內(nèi)通過信道傳輸?shù)淖畲髷?shù)目的比特。利用此定義,最大尺寸等效于最大比特率。應(yīng)注意可以可應(yīng)用最大速率的其它定義。根據(jù)每個應(yīng)用指定和定義最大比特率在本領(lǐng)域普通技術(shù)人員的能力和知識內(nèi)。如何在幀的時間段上指定平均比特率也是本領(lǐng)域中已知的。操作102 :幀內(nèi)幀目標(biāo)尺寸的指定知曉如何基于視頻編碼的特定應(yīng)用以及基于所指定的最大和平均比特率來指定幀內(nèi)幀目標(biāo)尺寸是在本領(lǐng)域普通技術(shù)人員的知識和所及的范圍內(nèi)的。例如,可以將幀內(nèi)幀目標(biāo)尺寸設(shè)置為最大比特率Rmax或平均比特率Ravg的百分?jǐn)?shù)。操作103 :預(yù)測QP以便滿足所指定的幀內(nèi)幀目標(biāo)尺寸為了這樣做,基于在下文中被稱為參考文獻2的、Pan等人2004年的“Adaptiveintra-frame quantization for very low bit rate video coding,,中公開的估計算法,已經(jīng)開發(fā)了在量化模塊38中使用的用于預(yù)測QP(量化參數(shù))的估計算法。由圖3中的預(yù)測器50使用此算法,用于估計在量化模塊中所需的QP,以便滿足基于幀內(nèi)幀的統(tǒng)計值的給定的幀內(nèi)幀目標(biāo)尺寸。然而,與其中對于幀內(nèi)幀的整個持續(xù)時間考慮恒定的QP的參考文獻2的教導(dǎo)不同,在已經(jīng)開發(fā)的估計算法中,可以對于幀內(nèi)幀的每個GOB(塊組)更新QP值,以便更精確地滿足所指定的目標(biāo)幀尺寸。而且,參考文獻2考慮灰度級圖像,而所開發(fā)的估計算法支持彩色圖像。根據(jù)參考文獻2,可以由下式來描述QP和其它幀統(tǒng)計值之間的關(guān)系
0P = I^mC2柳(I)
BI
IN.醫(yī)\ M職\
F(u,V)包含尺寸NXM的畫面的所有像素
MiV I^o v-o,
塊的8X8DCT系數(shù),B1是所指定的幀內(nèi)幀目標(biāo)尺寸(以比特為單位)。項MAVdct表示DCT系數(shù)的平均絕對值,并且指示畫面復(fù)雜度量度(measure)。項ABSO是絕對值函數(shù)。應(yīng)注意等式(I)僅僅考慮畫面的亮度的統(tǒng)計值,并且忽略畫面的色度。因此,需要新的等式以便也考慮色度,與亮度相比,色度通常通過因數(shù)(factor)四(4)而二次采樣(subsample),并且通過下式給出
0 Q M-IMAVdci = ytttE Z abs(Fl ( vW +
施、u=0
A I/2-!\^ I Z(ABS(Fcl(u,v)) + ABS(Fa ,m
4M¥ Ik “ v.oJ( 2 )其中^ (U,v)包含用于亮度的塊的8X8DCT系數(shù),F(xiàn)ci (u, v)和Fc2 (U,v)包含用于色度的塊的8X8DCT系數(shù)。如上文所述,為了更精確地滿足所指定的幀內(nèi)幀目標(biāo)尺寸B1,對于幀內(nèi)幀的每個GOB調(diào)整QP。此外,修改等式(2),以便考慮編碼幀內(nèi)幀的剩余的塊所需要的比特。則修改后的用于預(yù)測QP的等式如下SC,⑴其中&其中BMain是從用于編碼幀的所指定的幀內(nèi)幀目標(biāo)尺寸中
J
剩余的比特的數(shù)目,Ntotal是幀中的宏塊的總數(shù)目,Nranain是幀中要編碼的剩余的宏塊的數(shù)目,Nbias是在接近要編碼的幀的結(jié)尾時用于使得QP估計更保守(conservative)的偏移;典
型地,Nbias = 4。在已經(jīng)計算了 QP以便滿足所指定的幀內(nèi)幀目標(biāo)尺寸B1之后,方法100繼續(xù)前進到操作104。操作104 :計算幀間幀尺寸以便滿足最大比特率限制作為非限制性的示例,在操作101中指定的幀內(nèi)幀目標(biāo)尺寸被認(rèn)為為恒定的;然而,幀間幀目標(biāo)尺寸取決于情形。需要考慮兩種情況i)情況I :當(dāng)在上一秒內(nèi)已經(jīng)編碼了幀內(nèi)幀或者將在即將到來的一秒中編碼幀內(nèi)幀時;以及ii)情況2 :在不受來自幀內(nèi)幀的任何影響的情況下,在上一秒內(nèi)僅僅已經(jīng)編碼了幀間幀或者將在即將到來的一秒中僅僅編碼幀間幀。
因此,操作104需要考慮上述兩⑵種情況,即情況I和情況2,以計算幀間幀目標(biāo)尺寸。通過操作104,在情況I下使用方法200,在情況2下使用方法250。用于其中在上一秒內(nèi)編碼幀內(nèi)幀或者將在即將到來的一秒中編碼幀內(nèi)幀的情況(情況I)下、計算幀間幀目標(biāo)尺寸的方法200參照圖5,將描述用于在情況I下計算幀間幀目標(biāo)尺寸的方法200。首先,在操作202中,基于Rmax計算理想的幀間幀目標(biāo)尺寸B2。為了這樣做,作為非限制性的示例,假設(shè)所有的幀間幀具有相同的尺寸,則最大比特率由下式給出Rmax = B1+(F-I)B2 (4)其中B1是幀內(nèi)幀目標(biāo)尺寸,B2是在情況I下的理想的幀間幀目標(biāo)尺寸,情況I即為其中在上一秒內(nèi)編碼幀內(nèi)幀或者要在即將到來的一秒中編碼幀內(nèi)幀,F(xiàn)是每秒要編碼的 幀的數(shù)目、即幀速率。然后,由等式(4),理想的幀間幀目標(biāo)尺寸B2由下式給出
R H
L0116」'〒廠卜(5)通過定義,如等式(5)中所示,F(xiàn)大于I幀/秒。首先,通過在操作202中計算的理想的幀間幀目標(biāo)尺寸B2給出被表示為Bpi的對于情況I的幀間幀目標(biāo)尺寸Bpi = B2然而,調(diào)整上面的幀間幀目標(biāo)尺寸Bpi以考慮過去所編碼的幀、特別是幀內(nèi)幀的影響。實際上,通常所編碼的幀不具有完全等于目標(biāo)尺寸的尺寸。因此,調(diào)整以后的幀間幀尺寸,使得處理(account for)所編碼的幀的實際尺寸與目標(biāo)尺寸之間的差異,以便確保在以后的幀內(nèi)幀的編碼中分配足夠的比特,而不超出最大比特率Rmx。因此,在操作204中,例如通過圖3的第一計算器52,基于過去所編碼的幀來計算經(jīng)過調(diào)整的幀間幀目標(biāo)尺寸。為了這樣做,考慮兩(2)種情況i)如果已經(jīng)在上一秒內(nèi)對幀內(nèi)幀進行了編碼,則將通過使用下面的等式來調(diào)整和限制接下來的幀間幀Bpi的尺寸Bpi = max (0, min (BPI, tmp (t))) (6)
「 ,Rmax - ^SizeHistor^kl其中=——--------
F-(T- N)( 7 )其中SizeHistoy[k]是所編碼的幀k的尺寸,t是要編碼的當(dāng)前幀的索引,T是兩個幀內(nèi)幀之間的時間段(以幀數(shù)為單位),N是在接下來的幀內(nèi)幀之前剩余的幀數(shù)。tmp(t)表示幀t時的比特預(yù)算的緩沖。而且,在等式(6)中,最大值函數(shù)內(nèi)的零(0)允許避免緩沖器的下溢(underflow)。應(yīng)注意等式(6)和(7)允許在要在幀內(nèi)幀后面的一秒內(nèi)編碼的剩余的幀間幀之間、從用于編碼幀的比特預(yù)算中基本上均等地劃分任何額外的比特。而且,應(yīng)注意時刻t-(T-N)的幀是被幀內(nèi)編碼的幀。ii)如果要在即將到來的一秒內(nèi)編碼幀內(nèi)幀,則將如下限制接下來的幀間幀的目標(biāo)尺寸Bpi = max (0, min (BPI, tmp (t))) (8)
其中
權(quán)利要求
1.一種用于在考慮解碼延遲時改進包括由幀內(nèi)幀分開的一系列幀間幀的序列的視頻編碼中的速率控制的方法,該方法包括 對于該系列的每個幀間幀,計算目標(biāo)幀尺寸; 對于該系列的每個幀間幀,計算與所述每個幀間幀相對于前面的幀內(nèi)幀和即將到來的幀內(nèi)幀的位置相關(guān)的最大緩沖器等級;以及 響應(yīng)于所計算的目標(biāo)幀尺寸和所計算的最大緩沖器等級而優(yōu)化傳輸緩沖器等級。
2.如權(quán)利要求I所述的方法,還包括在所編碼的幀超出最大緩沖等級時,丟棄幀。
3.如權(quán)利要求I所述的方法,還包括在編碼幀之前存儲編碼器狀態(tài)變量。
4.如權(quán)利要求3所述的方法,還包括在編碼接下來的幀之前,在已經(jīng)丟棄了所編碼的幀之后恢復(fù)所述編碼器狀態(tài)變量。
5.如權(quán)利要求I所述的方法,還包括確保所傳輸?shù)膸叽缧∮谒o定的最大限制。
6.如權(quán)利要求5所述的方法,其中通過最大比特率來確定所述最大限制。
7.如權(quán)利要求I所述的方法,其中所述計算目標(biāo)幀尺寸是如下執(zhí)行的 如果 t = 1,2,3,…,L
8.如權(quán)利要求7所述的方法,其中所述計算目標(biāo)幀尺寸還包括 確定在編碼幀內(nèi)幀中未使用的多個比特;以及 在幀內(nèi)幀之后的N個幀間幀的目標(biāo)幀尺寸上分布所述未使用的多個比特。
9.如權(quán)利要求8所述的方法,其中確定在編碼幀內(nèi)幀中未使用的多個比特包括計算所編碼的幀內(nèi)幀的尺寸與對應(yīng)的幀內(nèi)幀目標(biāo)尺寸之間的差異。
10.如權(quán)利要求9所述的方法,其中所述分布所述未使用的多個比特包括在L個幀間幀上優(yōu)化傳輸緩沖器等級,其中O < N < L。
11.如權(quán)利要求8所述的方法,其中所述分布所述未使用的多個比特包括基本上均等地分布所述多個未使用的比特。
12.如權(quán)利要求I所述的方法,其中所述計算目標(biāo)幀尺寸還包括如果在幀內(nèi)幀之后的N個幀間幀的目標(biāo)幀尺寸上多個未使用的比特被基本上均等地分布,則使用下面的等式 如果ο < t≤N
13.如權(quán)利要求I所述的方法,其中執(zhí)行所述計算最大緩沖器等級以便確保傳輸緩沖器能夠容納即將到來的幀內(nèi)幀。
14.如權(quán)利要求13所述的方法,其中所述計算最大緩沖器等級包括在要編碼的幀間幀在前面的幀內(nèi)幀附近時計算接近最大緩沖器尺寸的最大緩沖器等級,并且在該幀間幀在即將到來的幀內(nèi)幀附近時計算接近零的最大緩沖器等級。
15.如權(quán)利要求I所述的方法,其中計算最大緩沖器等級BufferLevelMX(t)包括使用下面的等式
16.如權(quán)利要求I所述的方法,其中所述優(yōu)化傳輸緩沖器等級包括計算所計算的目標(biāo)幀尺寸與所計算的最大緩沖器等級之間的差異。
17.如權(quán)利要求16所述的方法,其中計算所計算的目標(biāo)幀尺寸與所計算的最大緩沖器等級之間的差異包括計算用于編碼幀的容限。
18.如權(quán)利要求17所述的方法,其中所述計算容限是如下執(zhí)行的Δ (t) = BufferLeveImax (t) -BufferLevel (t) 其中Δ (t)是所述容限,BufferLevel mx(t)是所計算的時刻t時的最大緩沖器等級,BufferLevel (t)是時刻t時的傳輸緩沖器等級。
19.如權(quán)利要求18所述的方法,還包括更新每個幀間幀的目標(biāo)尺寸。
20.如權(quán)利要求19所述的方法,其中所述更新還包括計算在編碼前面的幀中未使用的比特的數(shù)目。
21.如權(quán)利要求20所述的方法,其中所述計算未使用的比特的數(shù)目如下執(zhí)行 E (t) = BufferLeve Imax (t) -BufferLevelactual (t) - Δ (t) 其中,BufTerLeveIaetual (t)是在實際編碼幀之后的傳輸緩沖器等級。
22.一種用于在允許解碼延遲時改進包括由幀內(nèi)幀分開的一系列幀間幀的序列的視頻編碼中的速率控制的設(shè)備,該設(shè)備包括 用于對于每個幀間幀計算目標(biāo)幀尺寸的部件; 用于對于每個幀間幀計算與所述每個幀間幀相對于前面的幀內(nèi)幀和即將到來的幀內(nèi)幀的位置相關(guān)的最大緩沖器等級的部件;以及 用于響應(yīng)于所計算的目標(biāo)幀尺寸和所計算的最大緩沖器等級而優(yōu)化傳輸緩沖器等級的部件。
23.一種用于在允許解碼延遲時改進包括由幀內(nèi)幀分開的一系列幀間幀的序列的視頻編碼中的速率控制的設(shè)備,該設(shè)備包括 對于每個幀間幀計算目標(biāo)幀尺寸的計算器; 最大緩沖器等級的計算器,對于每個幀間幀計算與每個幀間幀相對于前面的幀內(nèi)幀和即將到來的幀內(nèi)幀的位置相關(guān)的最大緩沖器等級;以及 優(yōu)化器,響應(yīng)于所計算的目標(biāo)幀尺寸和所計算的最大緩沖器等級而優(yōu)化傳輸緩沖器等級。
24.如權(quán)利要求23所述的設(shè)備,還包括編碼器,其具有狀態(tài)變量,該狀態(tài)變量在將幀編碼之前被存儲,并且在丟棄了所編碼的幀之后被恢復(fù)。
全文摘要
一種方法和設(shè)備,其用于在考慮解碼延遲時、改進包括由幀內(nèi)幀分開的一系列幀間幀的序列的視頻編碼中的速率控制。該方法包括對于該系列的每個幀間幀,計算目標(biāo)幀尺寸;對于該系列的每個幀間幀,計算與所述每個幀間幀相對于前面的幀內(nèi)幀和即將到來的幀內(nèi)幀的位置相關(guān)的最大緩沖器等級;以及響應(yīng)于所計算的目標(biāo)幀尺寸和所計算的最大緩沖器等級而優(yōu)化傳輸緩沖器等級。
文檔編號H04N7/50GK102638687SQ20121008832
公開日2012年8月15日 申請日期2007年12月11日 優(yōu)先權(quán)日2006年12月12日
發(fā)明者斯蒂芬妮.庫洛姆比 申請人:梵提克斯公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1