視頻信息編碼方法和視頻信息編碼系統(tǒng)的制作方法
【專利摘要】描述了視頻信息編碼方法和視頻信息編碼系統(tǒng),其中為實(shí)現(xiàn)碼率控制,進(jìn)行多個(gè)編碼過程。多個(gè)編碼過程生成預(yù)測(cè)結(jié)構(gòu),并利用所述預(yù)測(cè)結(jié)構(gòu)更新在編碼過程之前生成的編碼統(tǒng)計(jì)信息。更新的編碼統(tǒng)計(jì)信息被用于后續(xù)的編碼操作。
【專利說明】視頻信息編碼方法和視頻信息編碼系統(tǒng)
[0001 ] 本申請(qǐng)是申請(qǐng)?zhí)枮椤?01180005397.8”、題為“視頻編碼應(yīng)用的多過程碼率控制”的中國(guó)專利申請(qǐng)的分案申請(qǐng)。
[0002]相關(guān)申請(qǐng)的交叉引用
[0003 ] 本申請(qǐng)要求2010年I月6日提交的美國(guó)專利臨時(shí)申請(qǐng)N0.61 /292,700的優(yōu)先權(quán),通過引用將其內(nèi)容整體包括于此。
技術(shù)領(lǐng)域
[0004]本公開涉及視頻編碼。更具體地說,本公開涉及視頻編碼應(yīng)用的多過程碼率控制系統(tǒng)和方法。
【背景技術(shù)】
[0005]碼率控制是實(shí)現(xiàn)現(xiàn)代視頻編碼器中的關(guān)鍵功能的要件。它確保生成的壓縮比特流(a)達(dá)到比特率目標(biāo),(b)滿足最大平均比特率約束,和(C)滿足假想?yún)⒖冀獯a器(緩沖延遲)約束及其它要求。一個(gè)可選但是非常合意的目的是優(yōu)化壓縮視頻比特流的視頻質(zhì)量。
[0006]滿足約束(a)可確保壓縮視頻比特流適合于通信管道或者存儲(chǔ)空間。例如,對(duì)視頻傳輸來說,無線網(wǎng)絡(luò)可能只允許最高達(dá)到768kbps。這與比如說藍(lán)光光盤相反,藍(lán)光光盤可允許高達(dá)40Mbps的視頻帶寬(對(duì)傳統(tǒng)的2D應(yīng)用來說)和60Mbps的帶寬(對(duì)采用基于H.264/MPEG-4AVC視頻編碼標(biāo)準(zhǔn)[參見在此整體引為參考的參考文獻(xiàn)I]及其擴(kuò)展,S卩,MPEG-4AVC的多視點(diǎn)視頻編碼(MVC)擴(kuò)展的編解碼器的3D應(yīng)用來說)。另外,對(duì)歸檔應(yīng)用或者帶寬極高的應(yīng)用(比如從硬盤驅(qū)動(dòng)器讀取)來說,可能只規(guī)定最終比特流文件的總大小。
[0007]約束(b)源于每秒只能保存和解碼一定數(shù)目的比特的重放設(shè)備的限制。在編碼處理期間,可能發(fā)生其中整個(gè)壓縮比特流達(dá)到比特率目標(biāo),但是平均比特率局部(例如,持續(xù)若干秒)超過比特率目標(biāo)的情形。由于難以編碼通常需要的更多的比特來確保一致性或者更好的視頻質(zhì)量,因而這種情況經(jīng)常發(fā)生。不過,這些比特流“尖峰”(只要它們足夠大)會(huì)對(duì)資源受限的解碼器造成問題。影響解碼器的問題包括內(nèi)部緩沖器的溢出,或者不能及時(shí)解碼比特流以便按照正確的順序和以恰當(dāng)?shù)亩〞r(shí)顯示各幀。
[0008]最后,約束(c)與約束(b)密切相關(guān),可被看作比特流必須滿足的一組更嚴(yán)格的要求。簡(jiǎn)而言之,壓縮的比特流必須被編碼成以使得如果以目標(biāo)比特率傳送,則它決不會(huì)導(dǎo)致解碼器緩沖器上溢或下溢,結(jié)果,在重放期間,解碼的視頻決不會(huì)延遲或停止。
[0009]碼率控制還被賦予在以上的比特率和緩沖約束的條件下,確??赡艿淖詈靡曨l質(zhì)量的任務(wù)。
【發(fā)明內(nèi)容】
[0010]根據(jù)本公開內(nèi)容的一個(gè)方面,提供一種用于在多個(gè)編碼過程中編碼視頻信息,以控制所述視頻信息的碼率的方法,所述方法包括:針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程:編碼效率;傳輸效率;以及所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程的可擴(kuò)展性;將所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程應(yīng)用于所述視頻信息;基于所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程來收集關(guān)于編碼的視頻信息的初始統(tǒng)計(jì)信息;針對(duì)中間編碼過程的比特使用來優(yōu)化所述中間編碼過程,所述中間編碼過程包括預(yù)測(cè)結(jié)構(gòu);將所優(yōu)化的中間編碼過程應(yīng)用于所述編碼的視頻信息;分析所應(yīng)用的優(yōu)化的中間編碼過程的比特使用以及所述預(yù)測(cè)結(jié)構(gòu)的編碼性能,所述預(yù)測(cè)結(jié)構(gòu)包括參數(shù)序列,所述參數(shù)描述了針對(duì)所述預(yù)測(cè)結(jié)構(gòu)中的每個(gè)幀的類型和編碼順序,所述類型包括下述中的至少一者:幀內(nèi)幀;單向預(yù)測(cè)幀間幀;雙向預(yù)測(cè)幀間幀;以及一次性幀;基于所分析的比特使用和所分析的編碼性能來收集關(guān)于所述編碼的視頻信息的更新統(tǒng)計(jì)信息;檢測(cè)由所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程引起的所述編碼的視頻信息中的編碼不精確性;將完全復(fù)雜性編碼過程設(shè)置成比所優(yōu)化的中間編碼過程高的計(jì)算復(fù)雜性;基于所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息,針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化所述完全復(fù)雜性編碼過程以去除所檢測(cè)的編碼不精確性:編碼效率;傳輸效率;以及所述完全復(fù)雜性編碼過程的可擴(kuò)展性;以及將所優(yōu)化的完全復(fù)雜性編碼過程應(yīng)用于所述編碼的視頻信息。
[0011]根據(jù)本公開內(nèi)容的另一個(gè)方面,提供一種視頻信息編碼系統(tǒng),包括:一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼器,所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼器被配置成通過執(zhí)行低計(jì)算復(fù)雜性編碼過程來收集關(guān)于編碼的視頻信息的初始統(tǒng)計(jì)信息;一個(gè)或多個(gè)中間編碼器,每個(gè)中間編碼器被配置成執(zhí)行對(duì)所述視頻信息的中間編碼過程;碼率控制分析模塊,所述碼率控制分析模塊被配置成:針對(duì)所述中間編碼過程的比特使用來優(yōu)化所述中間編碼過程,所述中間編碼過程包括預(yù)測(cè)結(jié)構(gòu);以及分析所應(yīng)用的優(yōu)化的中間編碼過程的比特使用和所述預(yù)測(cè)結(jié)構(gòu)的編碼性能,所述預(yù)測(cè)結(jié)構(gòu)包括參數(shù)序列,所述參數(shù)描述了針對(duì)所述預(yù)測(cè)結(jié)構(gòu)中的每個(gè)幀的類型和編碼順序,所述類型包括下述中的至少一者:幀內(nèi)幀、單向預(yù)測(cè)幀間幀、雙向預(yù)測(cè)幀間幀、以及一次性幀;基于所分析的比特使用和所分析的編碼性能來收集關(guān)于所述編碼的視頻信息的更新統(tǒng)計(jì)信息;檢測(cè)由所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程引起的所述編碼的視頻信息中的編碼不精確性;將完全復(fù)雜性編碼過程設(shè)置成比所優(yōu)化的中間編碼過程高的計(jì)算復(fù)雜性;以及基于所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息,針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化所述完全復(fù)雜性編碼過程以去除所檢測(cè)的編碼不精確性:編碼效率;傳輸效率;以及所述完全復(fù)雜性編碼過程的可擴(kuò)展性;以及進(jìn)一步編碼器,所述進(jìn)一步編碼器被配置成執(zhí)行對(duì)所述視頻信息的所述完全復(fù)雜性編碼過程。
[0012]根據(jù)本公開內(nèi)容的又一個(gè)方面,提供一種非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括存儲(chǔ)其中的下述指令集合,所述指令集合在由一個(gè)或多個(gè)計(jì)算或處理裝置執(zhí)行時(shí),使得執(zhí)行下述處理,所述處理包括以下步驟:針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程:編碼效率;傳輸效率;以及所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程的可擴(kuò)展性;將所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程應(yīng)用于所述視頻信息;基于所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程來收集關(guān)于編碼的視頻信息的初始統(tǒng)計(jì)信息;針對(duì)中間編碼過程的比特使用來優(yōu)化所述中間編碼過程,所述中間編碼過程包括預(yù)測(cè)結(jié)構(gòu);將所優(yōu)化的中間編碼過程應(yīng)用于所述編碼的視頻信息;分析所應(yīng)用的優(yōu)化的中間編碼過程的比特使用以及所述預(yù)測(cè)結(jié)構(gòu)的編碼性能,所述預(yù)測(cè)結(jié)構(gòu)包括參數(shù)序列,所述參數(shù)描述了針對(duì)所述預(yù)測(cè)結(jié)構(gòu)中的每個(gè)幀的類型和編碼順序,所述類型包括下述中的至少一者:幀內(nèi)幀;單向預(yù)測(cè)幀間幀;雙向預(yù)測(cè)幀間幀;以及一次性幀;基于所分析的比特使用和所分析的編碼性能來收集關(guān)于所述編碼的視頻信息的更新統(tǒng)計(jì)信息;檢測(cè)由所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程引起的所述編碼的視頻信息中的編碼不精確性;將完全復(fù)雜性編碼過程設(shè)置成比所優(yōu)化的中間編碼過程高的計(jì)算復(fù)雜性;基于所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息,針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化所述完全復(fù)雜性編碼過程以去除所檢測(cè)的編碼不精確性:編碼效率;傳輸效率;以及所述完全復(fù)雜性編碼過程的可擴(kuò)展性;以及將所優(yōu)化的完全復(fù)雜性編碼過程應(yīng)用于所述編碼的視頻信息。
【附圖說明】
[0013]圖1表示準(zhǔn)備和進(jìn)行按照本公開的一個(gè)或多個(gè)中間編碼過程的算法的流程圖。
[0014]圖2表示按照本公開的低復(fù)雜性多過程碼率控制方法的示意圖。
【具體實(shí)施方式】
[0015]本公開的實(shí)施例針對(duì)的是高效、低復(fù)雜性的多過程碼率控制技術(shù)和方法。
[0016]按照第一實(shí)施例,提供一種在多個(gè)編碼過程中編碼視頻信息,以控制視頻信息的碼率的方法,所述方法包括:提供視頻信息的初始統(tǒng)計(jì)信息;通過一個(gè)或多個(gè)不對(duì)稱編碼過程,對(duì)視頻信息進(jìn)行一次或多次中間編碼,以提供校正由初始統(tǒng)計(jì)信息引起的不精確性的更新統(tǒng)計(jì)信息;分析初始統(tǒng)計(jì)信息和更新統(tǒng)計(jì)信息;根據(jù)更新統(tǒng)計(jì)信息,進(jìn)一步編碼視頻信息。
[0017]按照第二實(shí)施例,提供一種視頻信息編碼系統(tǒng),包括:一個(gè)或多個(gè)第一類型編碼器;適合于以比一個(gè)或多個(gè)第一類型編碼器高的復(fù)雜性,編碼視頻信息的第二類型編碼器;和碼率控制分析模塊,所述碼率控制分析模塊從一個(gè)或多個(gè)第一類型編碼器接收關(guān)于編碼視頻信息的統(tǒng)計(jì)信息,并把更新的統(tǒng)計(jì)信息發(fā)送給第二類型編碼器。
[0018]在本申請(qǐng)的說明書、附圖和權(quán)利要求書中提供了本公開的更多實(shí)施例。
[0019]在本公開中,將可互換地引用“幀”和“圖片”。在本公開中定義的圖片可包括一幀或多幀,配對(duì)場(chǎng)(交錯(cuò)編碼),或者未配對(duì)的頂場(chǎng)或底場(chǎng)。
[0020]可在單一編碼過程中對(duì)視頻序列編碼。這里,編碼過程被定義為對(duì)輸入進(jìn)行的、產(chǎn)生壓縮輸出的一系列的一個(gè)或多個(gè)編碼步驟。在單一編碼過程中對(duì)視頻序列編碼可歸因于計(jì)算或時(shí)間約束,或者歸因于內(nèi)容的性質(zhì):內(nèi)容是流式實(shí)況播送的,從捕捉到傳送給消費(fèi)者的固定延遲只允許少許超前于未來。如果這些約束被放松,那么可能希望進(jìn)行不止一次編碼過程以壓縮視頻序列。在這種情況下,碼率控制受益于從先前的編碼過程得到的信息。
[0021]源于先前的編碼過程的信息例如可包括復(fù)雜性的度量,比如關(guān)于特定的幀類型和量化參數(shù)(QP)生成的報(bào)頭比特和紋理比特的數(shù)目,局部水平或幀水平的運(yùn)動(dòng)補(bǔ)償失真(幀間)和幀內(nèi)預(yù)測(cè)失真,或者圖像序列中的各幀的時(shí)間相關(guān)性等等,并且能夠提高比特率精度和幫助滿足比特率和緩沖約束。報(bào)頭比特包括用于編碼運(yùn)動(dòng)信息、編碼模式、塊類型、參數(shù)集,以及對(duì)解碼處理來說并非必不可少的信息,比如視頻可用性描述符的比特。紋理比特包括用于對(duì)幀間或幀內(nèi)預(yù)測(cè)殘差的變換系數(shù)編碼的比特。通常,后者的比特?cái)?shù)構(gòu)成編碼比特流的主體,尤其是對(duì)高比特率來說。
[0022]此外,從先前的編碼過程得到的信息可極大地改善壓縮視頻比特流的質(zhì)量。原因在于編碼統(tǒng)計(jì)信息對(duì)整個(gè)視頻序列的可用性。這樣的知識(shí)使得能夠有效地把比特用在它們將取得最好效果(通常用使碼率失真性能達(dá)到最大,或者另一方面通過在復(fù)雜性更高的區(qū)域中消耗更多的比特來度量)的那些視頻序列片段。通常,編碼過程越多,在給定的某個(gè)固定的比特率預(yù)算下,能夠獲得的視頻質(zhì)量更好。不過,總是存在回報(bào)遞減的點(diǎn),這些點(diǎn)處,與增加的計(jì)算開銷相比,編碼增益的回報(bào)將微不足道。從而,在多過程編碼期間,需要約束計(jì)算復(fù)雜性。
[0023]多個(gè)編碼過程改善壓縮視頻比特流的視頻質(zhì)量,有助于滿足比特率和緩沖約束(約束(a)、(b)和(C))。按照本公開的實(shí)施例,不僅在計(jì)算復(fù)雜性方面,而且在將被編碼的一組幀方面,都可提供不對(duì)稱編碼過程。此外,每個(gè)編碼過程的目的可以變化。編碼過程的目的可包括(a)建立用于低計(jì)算復(fù)雜性相比于高計(jì)算復(fù)雜性的編碼統(tǒng)計(jì)信息的關(guān)系(比如轉(zhuǎn)換率或者比率函數(shù)),(b)建立用于固定的計(jì)算復(fù)雜性的編碼參數(shù)的關(guān)系,如量化參數(shù)(QP)等,或者換句話說,對(duì)于固定復(fù)雜性來說,諸如QP之類的編碼參數(shù)如何影響質(zhì)量和比特率,(C)建立碼率失真關(guān)系,以便利用不同的預(yù)測(cè)結(jié)構(gòu)等等。
[0024]不對(duì)稱編碼過程以前已被用于約束計(jì)算復(fù)雜性。在開源X264H.264/MPEG-4AVC編碼器中[參見整體在此引為參考的參考文獻(xiàn)2],存在一種限制用于第一編碼過程或第一批編碼過程的編碼工具的數(shù)目和復(fù)雜性的“快速”模式。這樣做會(huì)加速執(zhí)行,通常以少量的編碼損失為代價(jià)。不過,取決于加速的數(shù)量級(jí),所述編碼損失可能相當(dāng)大,從而不合乎需要。
[0025]在本公開中,通過設(shè)計(jì)校正由用于加速多過程編碼處理的低復(fù)雜性編碼過程引起的估計(jì)誤差的編碼過程,減輕了這種編碼損失。特別地,這些中間編碼過程不同于最先或最終的編碼過程,采用未在編碼、傳輸效率、或者某種可縮放性或隨機(jī)存取能力方面進(jìn)行過優(yōu)化,而是在提取a)關(guān)于編碼工具對(duì)特定內(nèi)容的性能的信息,b)編碼參數(shù)與比特使用和壓縮視頻比特流的結(jié)果質(zhì)量的關(guān)系,甚至c)關(guān)于不同預(yù)測(cè)/編碼結(jié)構(gòu)的性能的信息方面進(jìn)行了優(yōu)化的編碼/預(yù)測(cè)結(jié)構(gòu)。按照本公開的中間編碼過程實(shí)質(zhì)上是一種分析工具,它們能夠幫助考慮由于利用快速第一編碼過程等引起的不精確性。
[0026]按照本公開的實(shí)施例,所述一個(gè)或多個(gè)中間編碼過程包括在第一低復(fù)雜性編碼過程和最終的完全復(fù)雜性編碼過程之間。與最終的編碼過程相比,第一編碼過程或者第一批編碼過程是在低復(fù)雜性(這通常轉(zhuǎn)換成禁止編碼工具,或者修改編碼參數(shù),以使得所述編碼工具需要較低的計(jì)算復(fù)雜性,例如減小運(yùn)動(dòng)向量搜索的范圍或精度)的情況下運(yùn)行的。
[0027]中間編碼過程允許信息的收集,以使得能夠校正或更新從低復(fù)雜性過程估計(jì)的統(tǒng)計(jì)信息的不精確性,隨后,校正/更新的統(tǒng)計(jì)信息可被傳遞給最終的編碼過程。中間過程產(chǎn)生的信息被保存,可供所有后續(xù)編碼過程(另外的中間編碼過程和最終的編碼過程)使用。這樣的信息可包括圖片或切片編碼類型(I或P或B等),每種類別(紋理、報(bào)頭、運(yùn)動(dòng)等)的比特使用,編碼模式統(tǒng)計(jì)信息(例如,多少種跳躍或幀內(nèi)編碼模式),塊類型統(tǒng)計(jì)信息,諸如方差、直方圖之類的空間統(tǒng)計(jì)信息,編碼參數(shù)(QP和使用的拉格朗日λ),編碼工具設(shè)置(指示編碼工具中的哪些被允許),運(yùn)動(dòng)向量信息,運(yùn)動(dòng)補(bǔ)償(幀間)和幀內(nèi)預(yù)測(cè)誤差,加權(quán)預(yù)測(cè)參數(shù),幀分類(例如,場(chǎng)景變化)等等。在本公開中,所有這樣的信息被統(tǒng)稱為“統(tǒng)計(jì)信息”或者“編碼統(tǒng)計(jì)信息”。
[0028]從而,在完成一個(gè)或多個(gè)中間過程之后,收集的統(tǒng)計(jì)信息被提供給碼率控制分析模塊。碼率控制分析模塊還被供給來自第一低復(fù)雜性過程或者第一批低復(fù)雜性過程的信息。來自第一批低復(fù)雜性過程和中間編碼過程的信息可包括可被后續(xù)過程用于加速計(jì)算的運(yùn)動(dòng)和幀內(nèi)預(yù)測(cè)信息,以及編碼模式信息。所述信息還可用于分析用途,因?yàn)樗軌蛱峁﹫?chǎng)景的復(fù)雜性的度量(例如,分類成高度運(yùn)動(dòng)或高度靜止等)。可被傳遞給碼率控制分析模塊的其它各種信息包括比特使用統(tǒng)計(jì)信息,諸如QP和拉格朗日參數(shù)之類的編碼參數(shù),空間和時(shí)間統(tǒng)計(jì)信息,幀內(nèi)和幀間預(yù)測(cè)誤差統(tǒng)計(jì)信息等等。
[0029]碼率控制分析模塊隨后利用該信息把從低復(fù)雜性(或者第一類型復(fù)雜性)過程獲得的編碼統(tǒng)計(jì)信息轉(zhuǎn)換成如果在完全計(jì)算復(fù)雜性(或者第二類型復(fù)雜性)的情況下,運(yùn)行第一編碼過程或者第一批編碼過程,那么理應(yīng)可以得到的統(tǒng)計(jì)信息。中間過程在編碼期間不必采用完全復(fù)雜性(或者第二類型復(fù)雜性)。相反,復(fù)雜性可以是平均起來比第二類型復(fù)雜性低的不同類型的復(fù)雜性(第三種復(fù)雜性)。
[0030]通過在中間過程中采用例如空間和/或時(shí)間子采樣,能夠獲得一種較低的復(fù)雜性。時(shí)間子采樣指的是對(duì)圖像序列中的全部幀的子集編碼。這樣的選擇可以是a)完全任意的,b)有規(guī)律的(比如說通過丟棄兩幀中的一幀),或者c)特定于內(nèi)容的,這種情況下,在圖像序列的更“有趣”或者更有代表性(活性)部分中編碼更多的幀,而在圖像序列的不太“有趣”或者不太有代表性(靜止)部分中編碼較少的幀??臻g子采樣指的是考慮幀或圖像序列的低分辨率版本。這樣做會(huì)大大加速執(zhí)行。另外選擇那些如果丟失則會(huì)導(dǎo)致碼率失真性能的最大下降的那些幀,也使得這樣的選擇是特定于內(nèi)容的。
[0031]通過禁用某些編碼工具,比如加權(quán)預(yù)測(cè)、子像素運(yùn)動(dòng)估計(jì)、解塊、和網(wǎng)格優(yōu)化量化等,也可限制中間過程的計(jì)算復(fù)雜性。
[0032]可以以均勻的間隔對(duì)編碼幀子采樣,不過也可根據(jù)某些預(yù)分析信息對(duì)編碼幀采樣。例如,如果存在場(chǎng)景頻繁變化的圖像序列區(qū)域,和靜止的圖像序列區(qū)域,即,運(yùn)動(dòng)信息指示非常低的運(yùn)動(dòng)和/或預(yù)測(cè)殘差足夠低,并且/或者諸如跳躍之類的預(yù)測(cè)模式被大量使用,則采樣因子需要被修改:在中間過程中只需要包括來自靜止區(qū)域的少許幀,而更多的幀需要被認(rèn)為來自圖像序列中更具活性的區(qū)域。
[0033]如果存在多個(gè)中間過程,那么可以為每個(gè)中間過程選擇多組不同子采樣的幀(視情況利用某些相差/相移,或者如前所述的取決于內(nèi)容的采樣安排),以便取回關(guān)于圖像序列的附加信息。在一些實(shí)施例中,可以并行運(yùn)行一些或者所有的多個(gè)中間過程。
[0034]—旦選擇了待編碼的一組幀,就產(chǎn)生對(duì)所選幀編碼的預(yù)測(cè)結(jié)構(gòu)。如本公開中所使用的,預(yù)測(cè)結(jié)構(gòu)定義將用于壓縮圖像序列的圖片編碼類型的種類和順序。例如,5幀可被編碼成I個(gè)I幀(幀內(nèi)編碼)和后面的4個(gè)P幀(單向預(yù)測(cè)幀間編碼),從而構(gòu)成IPPPP預(yù)測(cè)結(jié)構(gòu),IPPPP預(yù)測(cè)結(jié)構(gòu)是最簡(jiǎn)單的編碼結(jié)構(gòu),并且其中顯示順序與編碼順序一致。為了指示顯示順序,該結(jié)構(gòu)也可被寫成10P1P2P3P4。另一種可能的預(yù)測(cè)結(jié)構(gòu)是IbBbP(其中B指的是雙向預(yù)測(cè)幀間編碼),其中小寫字母表示可隨意處理的幀。為了舉例說明顯示順序,該編碼/預(yù)測(cè)結(jié)構(gòu)被寫為 10P4B2blb3。
[0035]在一個(gè)或多個(gè)中間過程中收集的統(tǒng)計(jì)信息應(yīng)對(duì)碼率控制分析模塊有用,以使得如果使用這樣的模塊或者把具有相同復(fù)雜性的第一批編碼過程用于最終的過程,則該模塊隨后能夠估計(jì)出應(yīng)會(huì)產(chǎn)生的統(tǒng)計(jì)信息。
[0036]這可通過揭示在給定編碼參數(shù),比如編碼類型(例如,1、P或B)和量化參數(shù)等的情況下,低復(fù)雜性或完全復(fù)雜性的編碼統(tǒng)計(jì)信息的關(guān)系來實(shí)現(xiàn)。還可以使這些轉(zhuǎn)換關(guān)系取決于預(yù)測(cè)結(jié)構(gòu):最終的編碼過程可能能夠訪問比如說由于復(fù)雜性的原因,而在第一批過程中不被允許的另外的預(yù)測(cè)結(jié)構(gòu)。
[0037]于是,中間過程的任務(wù)之一是揭示這些關(guān)系,并利用這些關(guān)系把統(tǒng)計(jì)信息轉(zhuǎn)換成在最終編碼過程中使用的復(fù)雜性類型。當(dāng)可以得到這些關(guān)系時(shí),低復(fù)雜性統(tǒng)計(jì)信息隨后可被轉(zhuǎn)換成用于完全復(fù)雜性操作的對(duì)應(yīng)內(nèi)容。統(tǒng)計(jì)信息的轉(zhuǎn)換可在后續(xù)中間過程中被進(jìn)一步修正,另外可在最終的編碼過程中被進(jìn)一步修正,在最終的編碼過程中,因果編碼統(tǒng)計(jì)信息可用于校正或更新轉(zhuǎn)換關(guān)系。對(duì)具有多個(gè)子采樣幀組的實(shí)施例來說,一個(gè)過程中的關(guān)系和統(tǒng)計(jì)信息轉(zhuǎn)換也可用于后續(xù)的中間過程,或者源于一組的關(guān)系和統(tǒng)計(jì)信息也可用于不同的、通常鄰近的組。
[0038]為此,可以采用以下高級(jí)策略。后面將說明遵循這些原理的一些具體實(shí)施例。
[0039](a)第一分析階段估計(jì)第一批編碼過程,并取回用于對(duì)序列編碼的幀的類型。如果需要,這樣的階段還可收集和使用的預(yù)測(cè)結(jié)構(gòu)相關(guān)的信息。例如,一些片段可能已用IPPPPP編碼,一些其它片段用IbBbPbBbP編碼,而再一些其它片段用IbPbPbP編碼等。大寫字母表示將用作后續(xù)編碼的各幀的運(yùn)動(dòng)補(bǔ)償基準(zhǔn)的幀。這些結(jié)構(gòu)是按照顯示順序表示的,不過,顯示順序和編碼順序不必一致。
[0040](b)第二階段創(chuàng)建預(yù)測(cè)結(jié)構(gòu)“原子”:可能的最小預(yù)測(cè)單元(多組幀)。在一個(gè)可能的實(shí)施例中,如果上述步驟(a)的3種可能結(jié)構(gòu)被用于對(duì)圖像序列編碼,那么本階段會(huì)產(chǎn)生具有以下3種預(yù)測(cè)結(jié)構(gòu)原子的列表:(i)IP,(ii)IbBbP和(iii)IbP。不過,倉(cāng)Il建的預(yù)測(cè)原子不必限制于在第一批編碼過程中使用的那些預(yù)測(cè)原子。很可能希望復(fù)用簡(jiǎn)單的編碼結(jié)構(gòu),比如IPPP進(jìn)行第一批編碼過程,隨后利用更復(fù)雜的編碼結(jié)構(gòu),比如說IbBbP進(jìn)行最終的編碼過程。在支持自適應(yīng)預(yù)測(cè)結(jié)構(gòu)生成的編碼器中,可能還想把一組可能的預(yù)測(cè)結(jié)構(gòu)之一用于最終的編碼過程。在這兩種情況任意之一下,除了在第一批編碼過程中使用的那些預(yù)測(cè)結(jié)構(gòu)之外,還考慮在最終的編碼過程中可用的所有可能的預(yù)測(cè)結(jié)構(gòu),并將其添加到中間過程的原子列表中。這樣做能夠幫助建立還跨越不同預(yù)測(cè)結(jié)構(gòu)的轉(zhuǎn)換關(guān)系。另一個(gè)可能的實(shí)施例可包括專門用來確定關(guān)系并評(píng)估多個(gè)參考幀的效率的原子。例如可以使用諸如IPPP之類的結(jié)構(gòu),并收集每個(gè)P編碼幀的每個(gè)參考幀的預(yù)測(cè)誤差統(tǒng)計(jì)信息。
[0041]用于編碼各幀的量化參數(shù)(QP)或者是預(yù)先確定的,或者是通過某種預(yù)分析機(jī)制設(shè)定的,以使得使參數(shù)估計(jì)更高效。此外,原子內(nèi)的不同幀編碼類型之間的QP的關(guān)系可按照好像最終的編碼過程被調(diào)用似地設(shè)定它們的方式來設(shè)定。
[0042]在備選實(shí)施例中,原子可被擴(kuò)展,以便收集和圖像序列統(tǒng)計(jì)信息有關(guān)的附加信息,所述附加信息不僅可用于確立低復(fù)雜性關(guān)系/完全復(fù)雜性關(guān)系,而且可用于確定諸如QP與生成的比特的數(shù)目的關(guān)系之類的關(guān)鍵信息。例如,在一個(gè)可能的實(shí)施例中,預(yù)測(cè)結(jié)構(gòu)原子被擴(kuò)展,以便通過重復(fù)具有不同QP參數(shù)的最短結(jié)構(gòu):
IbPIbP,來使QP關(guān)系的估計(jì)成為可能。新原子的后半部中的各幀被分配與所述原子的前半部中的各幀相比,偏移某個(gè)預(yù)先確定(通過預(yù)分析等)的值的QP。在一個(gè)可能的不同實(shí)施例中,預(yù)測(cè)結(jié)構(gòu)原子被擴(kuò)展,以便通過把可能的原子級(jí)聯(lián)成某種“超級(jí)”原子:“IPIbPIbBbP”(對(duì)上面的情況來說),來使預(yù)測(cè)結(jié)構(gòu)關(guān)系的估計(jì)成為可能。注意在所有上述情況下,每個(gè)原子中被編碼的各幀的顯示順序被重置,同時(shí)每個(gè)幀內(nèi)預(yù)測(cè)幀,例如對(duì)IPIP來說,幀η、η+Ν,η,η+Ν將被編碼。
[0043](c)隨后檢查圖像序列,以檢測(cè)幀內(nèi)預(yù)測(cè)幀,或者像在H.264/MEPG-4AVC的情況下,幀內(nèi)預(yù)測(cè)幀和/或即時(shí)解碼器刷新(IDR)幀。H.264中的IDR幀提供一種隨機(jī)存取手段。一旦解碼器收到IDR文件,解碼器將清空它自己的用作運(yùn)動(dòng)補(bǔ)償參考的先前解碼幀的存儲(chǔ)。從而能夠從任意IDR幀開始重放,并且避免由參考幀的不可用引起的漂移。于是,IDR幀內(nèi)預(yù)測(cè)幀確保真實(shí)的隨機(jī)存取點(diǎn)??梢钥紤]的其它幀類型包括漸變,可能還有閃爍。
[0044]已被編碼成IDR的各幀對(duì)通過當(dāng)“原子”停止時(shí)間傳播時(shí),把“原子”放置在其位置來進(jìn)行重新編碼來說十分理想,并且不依賴于在其編碼之前做出的編碼決定。當(dāng)使用時(shí)間子采樣時(shí),這會(huì)是十分重要的。從而確定所有這些位置,并集中到列表中。
[0045](d)算法的下一個(gè)階段涉及用于編碼中間過程的預(yù)測(cè)結(jié)構(gòu)的生成。已知關(guān)于在中間過程中可以使用的幀數(shù)的一些約束(比如,總幀數(shù)的10%),那么算法循環(huán)遍歷在前一階段(C)中生成的列表中找到的各個(gè)幀內(nèi)/IDR幀位置。存在三種可能性:(i)列表中的位置的數(shù)目乘以原子中的幀數(shù)超過對(duì)中間過程幀的約束。在這種情況下,所述位置被均勻子采樣,以使得所述約束被滿足。另一方面,按照符合序列統(tǒng)計(jì)信息的方式對(duì)所述位置進(jìn)行子采樣(活性區(qū)域中位置更多)Jii)列表中的位置的數(shù)目乘以原子中的幀數(shù)不超過對(duì)中間過程幀的約束。在這種情況下,通過嘗試覆蓋未被充分表現(xiàn)的序列區(qū)域,取回新的位置。這是以均勻方式或者通過使位置選擇(采樣)適應(yīng)于圖像序列統(tǒng)計(jì)信息進(jìn)行的。(iii)如果期望均勻采樣,那么不需要任何其它動(dòng)作。如果期望按照與內(nèi)容相關(guān)的方式進(jìn)行采樣,那么可以選擇在列表之外的位置,以增大更活性區(qū)域的覆蓋率。
[0046](e)執(zhí)行中間編碼過程,并為每個(gè)編碼幀收集統(tǒng)計(jì)信息。
[0047](f)與所收集的統(tǒng)計(jì)信息的第一批低復(fù)雜性編碼過程的對(duì)應(yīng)內(nèi)容相結(jié)合地對(duì)收集的統(tǒng)計(jì)信息進(jìn)行分析。除了把統(tǒng)計(jì)信息從低復(fù)雜性轉(zhuǎn)換為高復(fù)雜性(這種轉(zhuǎn)換可以以幀編碼類型,甚至是預(yù)測(cè)結(jié)構(gòu)中幀的位置為條件),如在前面可能的替選實(shí)施例中描述的那樣,這一階段還能夠得出使(紋理或報(bào)頭)比特使用與QP相關(guān)聯(lián)等的關(guān)系。
[0048](g)最后,上面得出的關(guān)系隨后被提供給最終的編碼過程,該編碼過程把來自低復(fù)雜性過程的編碼統(tǒng)計(jì)信息轉(zhuǎn)換和更新成高復(fù)雜性編碼。
[0049]圖1中表示了以上算法的流程圖。圖2中還表示了該方法的高級(jí)示圖。
[0050]如圖2中所示,可以存在任意數(shù)目的第一低復(fù)雜性編碼過程,以及任意數(shù)目的中間編碼過程??刂颇K判定額外的低復(fù)雜性編碼過程和中間過程的結(jié)構(gòu)(例如,預(yù)測(cè)結(jié)構(gòu)、QP、各種各樣的編碼參數(shù)和工具等)和數(shù)目。它還負(fù)責(zé)處理來自每個(gè)編碼過程的編碼統(tǒng)計(jì)信息,然后把它們提供給最終的高復(fù)雜性編碼過程的碼率控制組件。最后,預(yù)分析模塊是可選的,如果存在的話,那么可幫助控制模塊準(zhǔn)備低復(fù)雜性編碼過程和中間編碼過程,如前所述。注意在另一個(gè)實(shí)施例中,如果低復(fù)雜性過程是按照使得它們處理圖像序列的不同區(qū)域或重疊區(qū)域的方式設(shè)計(jì)的,那么低復(fù)雜性過程可被并行化。這也適用于中間過程,這種情況下,如果不止一個(gè)中間過程在運(yùn)行,那么在每個(gè)中間過程中,可以考慮多組不同的(可能重疊)的幀。
[0051]步驟(a)_(d)、(f)和(g)在圖2的碼率控制模塊中進(jìn)行。該模塊設(shè)立隨后在編碼器中執(zhí)行的第一低復(fù)雜性過程,分析由這樣的過程生成的統(tǒng)計(jì)信息,視情況使用預(yù)分析信息,隨后設(shè)立在分離的編碼器中執(zhí)行的中間編碼過程。在每個(gè)編碼過程之后分析統(tǒng)計(jì)信息,所述統(tǒng)計(jì)信息可被用于擴(kuò)充(任意種類的)后續(xù)過程。最后,碼率控制模塊設(shè)立最后的編碼過程,并把該結(jié)構(gòu)傳遞給編碼器模塊。
[0052]在另一個(gè)實(shí)施例中,初始編碼過程還可用不產(chǎn)生任何壓縮的比特流,而是產(chǎn)生可用于碼率控制算法的統(tǒng)計(jì)信息的某些預(yù)處理器分析過程代替。在適當(dāng)?shù)闹虚g編碼過程的幫助下,碼率控制分析模塊仍然把這些統(tǒng)計(jì)信息轉(zhuǎn)換成編碼統(tǒng)計(jì)信息。
[0053]在另一個(gè)實(shí)施例中,可以使用另外的中間編碼過程來提高在第一低復(fù)雜性編碼過程中收集的統(tǒng)計(jì)信息的質(zhì)量。在這個(gè)實(shí)施例中,第一編碼過程利用固定的QP分配,從而避免使用碼率控制來實(shí)現(xiàn)某個(gè)比特率目標(biāo)。這種策略有益于估計(jì)將被歸一化為相同的QP值進(jìn)而在圖像序列中的所有各幀之間相當(dāng)?shù)念A(yù)測(cè)誤差。這既有益于碼率控制,又有益于后續(xù)編碼過程中的比特分配。不過,如果預(yù)定的QP導(dǎo)致遠(yuǎn)離初始比特率目標(biāo)的比特率,那么這會(huì)消極地影響在第一編碼過程期間收集的統(tǒng)計(jì)信息的可靠性。這種情況下,可以進(jìn)行第二低復(fù)雜性編碼過程,所述第二低復(fù)雜性編碼過程補(bǔ)償?shù)谝坏蛷?fù)雜性編碼過程的比特率(和QP)偏差。在進(jìn)行了第一過程之后,控制模塊判定作為結(jié)果的比特率是否足夠接近初始比特率目標(biāo)。如果不是這種情況,則控制模塊利用新的預(yù)定QP值進(jìn)行另外的低復(fù)雜性編碼過程,以使得作為結(jié)果的比特經(jīng)足夠接近初始比特率目標(biāo)。在該另外的編碼過程期間收集的統(tǒng)計(jì)信息隨后可替換、更新或補(bǔ)充在先前的低復(fù)雜性編碼過程期間收集的統(tǒng)計(jì)信息。注意可用于加速編碼處理的信息,比如運(yùn)動(dòng)和編碼模式信息可以在各個(gè)編碼過程間共享。
[0054]本公開中說明的方法和系統(tǒng)可以用硬件、軟件、固件或者它們的組合來實(shí)現(xiàn)。描述成塊、模塊或組件的特征可以一起實(shí)現(xiàn)(例如,用諸如集成邏輯器件之類的邏輯器件),或者單獨(dú)實(shí)現(xiàn)(例如,分離連接的邏輯器件)。本公開的方法的軟件部分可包括計(jì)算機(jī)可讀介質(zhì),所述計(jì)算機(jī)可讀介質(zhì)包括當(dāng)被執(zhí)行時(shí),至少部分實(shí)現(xiàn)所述方法的指令。計(jì)算機(jī)可讀介質(zhì)例如可包括隨機(jī)存取存儲(chǔ)器(RAM)和/或只讀存儲(chǔ)器(ROM)。指令可以由處理器(例如,數(shù)字信號(hào)處理器(DSP),專用集成電路(ASIC)或現(xiàn)場(chǎng)可編程邏輯陣列(FPGA)執(zhí)行。
[0055]說明書中提及的所有專利和出版物表示本公開所屬領(lǐng)域的技術(shù)人員的技術(shù)水平。在本公開中引用的所有參考文獻(xiàn)在好像每個(gè)參考文獻(xiàn)已被單獨(dú)整體引為參考的相同程度上被引為參考。
[0056]應(yīng)當(dāng)理解,本公開并不局限于特定的方法或系統(tǒng),所述方法或系統(tǒng)當(dāng)然可以發(fā)生改變。另外要理解的是這里說明的術(shù)語(yǔ)只是用于描述特定的實(shí)施例,并不意圖限制本公開。本說明書和隨附權(quán)利要求中使用的單數(shù)形式包括復(fù)數(shù)對(duì)象,除非上下文明確地另作說明。術(shù)語(yǔ)“多個(gè)”包括兩個(gè)以上的所指對(duì)象,除非上下文明確地另作說明。除非另作說明,否則這里使用的所有技術(shù)和科學(xué)術(shù)語(yǔ)具有和本公開所屬領(lǐng)域的技術(shù)人員通常理解的相同含義。
[0057]說明了本公開的許多實(shí)施例。然而,顯然可以做出各種修改而不脫離本公開的精神和范圍。因而,其它實(shí)施例在以下權(quán)利要求的范圍之內(nèi)。
[0058]基于以上的說明,可知公開至少公開了以下技術(shù)方案:
[0059]1.—種在多個(gè)編碼過程中編碼視頻信息,以控制所述視頻信息的碼率的方法,所述方法包括:
[0060]提供關(guān)于所述視頻信息的初始統(tǒng)計(jì)信息;
[0061]通過一個(gè)或多個(gè)不對(duì)稱編碼過程,對(duì)所述視頻信息進(jìn)行一次或多次中間編碼,以提供校正由初始統(tǒng)計(jì)信息引起的不精確性的更新統(tǒng)計(jì)信息;
[0062]分析所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息;和
[0063]根據(jù)所述更新統(tǒng)計(jì)信息,進(jìn)一步對(duì)所述視頻信息編碼。
[0064]2.按照I所述的方法,還包括根據(jù)所述視頻信息,生成預(yù)測(cè)結(jié)構(gòu),其中所述不對(duì)稱編碼過程根據(jù)生成的所述預(yù)測(cè)結(jié)構(gòu),對(duì)所述視頻信息編碼。
[0065]3.按照I或2所述的方法,其中所述不對(duì)稱編碼過程在編碼復(fù)雜性和/或編碼幀方面不對(duì)稱。
[0066]4.按照I到3中任意一項(xiàng)所述的方法,其中通過以比中間編碼低而且比進(jìn)一步的編碼低的復(fù)雜性對(duì)所述視頻信息進(jìn)行初始編碼,來提供關(guān)于所述視頻信息的所述初始統(tǒng)計(jì)信息。
[0067]5.按照4所述的方法,其中進(jìn)行一次或多次初始編碼。
[0068]6.按照前述中任意一項(xiàng)所述的方法,其中所述中間編碼包括時(shí)間和空間子采樣。
[0069]7.按照6所述的方法,其中所述中間編碼按照均勻地間隔開的方式或者根據(jù)預(yù)分析信息,對(duì)各幀子采樣。
[0070]8.按照前述中任意一項(xiàng)所述的方法,其中通過選擇所述視頻信息的最具代表性的各幀來根據(jù)內(nèi)容進(jìn)行所述中間編碼。
[0071]9.按照1-7中任意一項(xiàng)所述的方法,其中通過選擇如果不存在則將使碼率失真性能降低最多的那些幀來根據(jù)內(nèi)容進(jìn)行所述中間編碼。
[0072]10.按照前述中任意一項(xiàng)所述的方法,其中所述中間編碼包括多個(gè)編碼過程,每個(gè)編碼過程對(duì)所述視頻信息的不同幀組編碼。
[0073]11.按照10所述的方法,其中所述視頻信息包括多個(gè)子采樣幀組,其中:
[0074]—個(gè)過程中的關(guān)系和統(tǒng)計(jì)信息轉(zhuǎn)換適合于用于后續(xù)中間過程。
[0075]12.按照10所述的方法,其中所述視頻信息包括多個(gè)子采樣幀組,其中:
[0076]源于一組的關(guān)系和統(tǒng)計(jì)信息適合于用于不同的組。
[0077]13.按照12所述的方法,其中所述不同的組是鄰近的組。
[0078]14.按照前述中任意一項(xiàng)所述的方法,其中一個(gè)過程中的關(guān)系和統(tǒng)計(jì)信息轉(zhuǎn)換適合于用于后續(xù)中間過程。
[0079]15.按照10-14中任意一項(xiàng)所述的方法,其中每個(gè)編碼過程包括:
[0080]所述視頻信息的幀子集的選擇;和[0081 ]所述視頻信息的預(yù)測(cè)結(jié)構(gòu)的選擇。
[0082]16.按照前述中任意一項(xiàng)所述的方法,還包括:
[0083]獲得與在所述中間編碼之前生成的所述預(yù)測(cè)結(jié)構(gòu)有關(guān)的信息。
[0084]17.按照前述中任意一項(xiàng)所述的方法,其中生成所述預(yù)測(cè)結(jié)構(gòu)包括:
[0085]生成預(yù)測(cè)結(jié)構(gòu)原子;和
[0086]在所述視頻信息內(nèi),確定應(yīng)插入所述預(yù)測(cè)結(jié)構(gòu)原子的位置。
[0087]18.按照17所述的方法,其中生成所述預(yù)測(cè)結(jié)構(gòu)還包括:
[0088]除了初始預(yù)測(cè)結(jié)構(gòu)原子之外,還生成從要用于所述視頻信息的進(jìn)一步編碼的預(yù)測(cè)結(jié)構(gòu)中取出的另外的預(yù)測(cè)結(jié)構(gòu)原子。
[0089]19.按照17或18所述的方法,其中所述預(yù)測(cè)結(jié)構(gòu)原子被擴(kuò)展成更大的預(yù)測(cè)結(jié)構(gòu)。
[0090]20.按照前述中任意一項(xiàng)所述的方法,還包括在進(jìn)行所述中間編碼之前:
[0091]檢查所述視頻信息,以檢測(cè)幀內(nèi)預(yù)測(cè)幀、即時(shí)解碼器刷新(IDR)幀、場(chǎng)景變化或者漸變轉(zhuǎn)換。
[0092]21.按照20所述的方法,其中檢測(cè)的幀內(nèi)預(yù)測(cè)幀,IDR幀,場(chǎng)景變化或漸變轉(zhuǎn)換的位置被用于利用所述預(yù)測(cè)結(jié)構(gòu)原子來構(gòu)建所述預(yù)測(cè)結(jié)構(gòu)。
[0093]22.按照前述中任意一項(xiàng)所述的方法,還包括:
[0094]保存所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息。
[0095]23.按照前述中任意一項(xiàng)所述的方法,其中分析所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息還包括得出復(fù)雜性或編碼參數(shù)關(guān)系。
[0096]24.一種視頻信息編碼系統(tǒng),包括:
[0097]一個(gè)或多個(gè)第一類型編碼器;
[0098]適合于以比所述一個(gè)或多個(gè)第一類型編碼器高的復(fù)雜性,編碼視頻信息的第二類型編碼器;和
[0099]碼率控制分析模塊,其從所述一個(gè)或多個(gè)第一類型編碼器接收關(guān)于經(jīng)編碼的視頻信息的統(tǒng)計(jì)信息,并把更新的統(tǒng)計(jì)信息發(fā)送給所述第二類型編碼器。
[0100]25.按照24所述的系統(tǒng),其中從所述碼率控制分析模塊接收的所述統(tǒng)計(jì)信息包括下述中的一個(gè)或多個(gè):運(yùn)動(dòng)預(yù)測(cè),幀內(nèi)預(yù)測(cè),編碼模式信息,比特使用統(tǒng)計(jì)信息,編碼參數(shù),空間統(tǒng)計(jì)信息,時(shí)間統(tǒng)計(jì)信息,幀內(nèi)預(yù)測(cè)誤差統(tǒng)計(jì)信息,幀間預(yù)測(cè)誤差統(tǒng)計(jì)信息。
[0101]參考文獻(xiàn)列表
[0102][I!Advanced video coding for generic aud1visual services(用于通用音視頻服務(wù)的先進(jìn)視頻編碼),http: //www.1tu.1nt/rec/recommendat1n.asp?type =folders&lang = e&parent = T-REC-H.264,2009年10月 0
[0103][2]L.Merritt和R.Vanam,“X264:A High-Performance H.264/AVC Encoder(X264:高性會(huì)264/AVC編碼器),,,http: //akuvian.0rg/src/x264/overview_x264_v8_5.pdfo
【主權(quán)項(xiàng)】
1.一種用于在多個(gè)編碼過程中編碼視頻信息,以控制所述視頻信息的碼率的方法,所述方法包括: 針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程:編碼效率;傳輸效率;以及所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程的可擴(kuò)展性; 將所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程應(yīng)用于所述視頻信息; 基于所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程來收集關(guān)于編碼的視頻信息的初始統(tǒng)計(jì)信息; 針對(duì)中間編碼過程的比特使用來優(yōu)化所述中間編碼過程,所述中間編碼過程包括預(yù)測(cè)結(jié)構(gòu); 將所優(yōu)化的中間編碼過程應(yīng)用于所述編碼的視頻信息; 分析所應(yīng)用的優(yōu)化的中間編碼過程的比特使用以及所述預(yù)測(cè)結(jié)構(gòu)的編碼性能,所述預(yù)測(cè)結(jié)構(gòu)包括參數(shù)序列,所述參數(shù)描述了針對(duì)所述預(yù)測(cè)結(jié)構(gòu)中的每個(gè)幀的類型和編碼順序,所述類型包括下述中的至少一者:幀內(nèi)幀;單向預(yù)測(cè)幀間幀;雙向預(yù)測(cè)幀間幀;以及一次性幀; 基于所分析的比特使用和所分析的編碼性能來收集關(guān)于所述編碼的視頻信息的更新統(tǒng)計(jì)信息; 檢測(cè)由所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程引起的所述編碼的視頻信息中的編碼不精確性; 將完全復(fù)雜性編碼過程設(shè)置成比所優(yōu)化的中間編碼過程高的計(jì)算復(fù)雜性; 基于所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息,針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化所述完全復(fù)雜性編碼過程以去除所檢測(cè)的編碼不精確性:編碼效率;傳輸效率;以及所述完全復(fù)雜性編碼過程的可擴(kuò)展性;以及 將所優(yōu)化的完全復(fù)雜性編碼過程應(yīng)用于所述編碼的視頻信息。2.根據(jù)權(quán)利要求1所述的方法,還包括基于所述視頻信息來生成所述預(yù)測(cè)結(jié)構(gòu)并且使所述預(yù)測(cè)結(jié)構(gòu)的長(zhǎng)度最小化。3.根據(jù)權(quán)利要求1所述的方法,其中,所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程在編碼復(fù)雜性和/或編碼幀方面是不對(duì)稱的。4.根據(jù)權(quán)利要求1所述的方法,其中,所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程具有比所述中間編碼過程低的計(jì)算復(fù)雜性。5.根據(jù)權(quán)利要求1所述的方法,其中,每個(gè)編碼過程包括對(duì)來自所述視頻信息的多個(gè)幀進(jìn)行編碼。6.根據(jù)權(quán)利要求1所述的方法,其中,所述中間編碼過程包括時(shí)間和空間子采樣。7.根據(jù)權(quán)利要求6所述的方法,其中,所述中間編碼過程按照均勻地間隔開的方式或基于預(yù)分析信息對(duì)幀進(jìn)行子采樣。8.根據(jù)權(quán)利要求1所述的方法,其中,通過選擇所述視頻信息中的最具代表性的幀來基于內(nèi)容進(jìn)行所述中間編碼過程。9.根據(jù)權(quán)利要求1所述的方法,其中,通過選擇如果不存在將使碼率失真性能降低最多的那些幀來基于內(nèi)容進(jìn)行所述中間編碼過程。10.根據(jù)權(quán)利要求1所述的方法,其中,所述中間編碼過程包括多個(gè)編碼過程,其中,每個(gè)編碼過程對(duì)所述視頻信息的不同幀組進(jìn)行編碼。11.根據(jù)權(quán)利要求10所述的方法,其中,所述視頻信息包括多個(gè)子采樣幀組,其中: 源于一個(gè)過程的統(tǒng)計(jì)信息適合于用于后續(xù)的中間編碼過程。12.根據(jù)權(quán)利要求10所述的方法,其中,所述視頻信息包括多個(gè)子采樣幀組,其中: 源于一個(gè)組的統(tǒng)計(jì)信息適合于用于不同的組。13.根據(jù)權(quán)利要求12所述的方法,其中,所述不同的組包括鄰近的組。14.根據(jù)權(quán)利要求10所述的方法,其中,每個(gè)編碼過程包括: 所述視頻信息的幀子集的選擇;以及 所述視頻信息的預(yù)測(cè)結(jié)構(gòu)的選擇。15.根據(jù)權(quán)利要求1所述的方法,其中,源于一個(gè)過程的統(tǒng)計(jì)信息適合于用于后續(xù)的中間編碼過程。16.根據(jù)權(quán)利要求1所述的方法,還包括,在所述中間編碼過程之前: 檢查所述視頻信息以檢測(cè)下述中的一個(gè)或多個(gè): 幀內(nèi)幀; 即時(shí)解碼器刷新IDR幀; 場(chǎng)景變化;或者 漸變轉(zhuǎn)換。17.根據(jù)權(quán)利要求1所述的方法,還包括: 保存所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息。18.根據(jù)權(quán)利要求1所述的方法,其中,應(yīng)用所優(yōu)化的完全復(fù)雜性編碼過程發(fā)生于一定的持續(xù)時(shí)間內(nèi),所述應(yīng)用所優(yōu)化的完全復(fù)雜性編碼過程包括: 在所述應(yīng)用所優(yōu)化的完全復(fù)雜性編碼過程的整個(gè)持續(xù)時(shí)間內(nèi)生成因果編碼統(tǒng)計(jì)信息;以及 基于所述因果編碼統(tǒng)計(jì)信息來應(yīng)用所優(yōu)化的完全復(fù)雜性編碼過程。19.根據(jù)權(quán)利要求1所述的方法,其中,優(yōu)化所述中間編碼過程包括使所述預(yù)測(cè)結(jié)構(gòu)最小化。20.根據(jù)權(quán)利要求2所述的方法,其中,生成所述預(yù)測(cè)結(jié)構(gòu)包括: 生成預(yù)測(cè)結(jié)構(gòu)原子; 在所述視頻信息內(nèi),確定所述預(yù)測(cè)結(jié)構(gòu)原子應(yīng)當(dāng)被插入以優(yōu)化所述預(yù)測(cè)結(jié)構(gòu)的編碼性能的位置; 優(yōu)化所述預(yù)測(cè)結(jié)構(gòu)原子的編碼性能;以及 使用不同的預(yù)測(cè)結(jié)構(gòu)原子來生成新的預(yù)測(cè)結(jié)構(gòu); 其中,每個(gè)預(yù)測(cè)結(jié)構(gòu)原子包括最小的可能預(yù)測(cè)單元。21.根據(jù)權(quán)利要求20所述的方法,其中,生成所述預(yù)測(cè)結(jié)構(gòu)還包括: 除所述初始預(yù)測(cè)結(jié)構(gòu)原子之外,還生成從所述預(yù)測(cè)結(jié)構(gòu)取出的另外的預(yù)測(cè)結(jié)構(gòu)原子以用于對(duì)所述視頻信息的進(jìn)一步的編碼過程。22.根據(jù)權(quán)利要求20所述的方法,其中,所述預(yù)測(cè)結(jié)構(gòu)原子被擴(kuò)展成更大的預(yù)測(cè)結(jié)構(gòu)。23.根據(jù)權(quán)利要求20所述的方法,其中,所檢測(cè)的幀內(nèi)幀、IDR幀、場(chǎng)景變化或漸變轉(zhuǎn)換中的一個(gè)或多個(gè)的位置被用于使用預(yù)測(cè)結(jié)構(gòu)原子來構(gòu)建預(yù)測(cè)結(jié)構(gòu)。24.一種視頻信息編碼系統(tǒng),包括: 一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼器,所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼器被配置成通過執(zhí)行低計(jì)算復(fù)雜性編碼過程來收集關(guān)于編碼的視頻信息的初始統(tǒng)計(jì)信息; 一個(gè)或多個(gè)中間編碼器,每個(gè)中間編碼器被配置成執(zhí)行對(duì)所述視頻信息的中間編碼過程; 碼率控制分析模塊,所述碼率控制分析模塊被配置成: 針對(duì)所述中間編碼過程的比特使用來優(yōu)化所述中間編碼過程,所述中間編碼過程包括預(yù)測(cè)結(jié)構(gòu);以及分析所應(yīng)用的優(yōu)化的中間編碼過程的比特使用和所述預(yù)測(cè)結(jié)構(gòu)的編碼性能,所述預(yù)測(cè)結(jié)構(gòu)包括參數(shù)序列,所述參數(shù)描述了針對(duì)所述預(yù)測(cè)結(jié)構(gòu)中的每個(gè)幀的類型和編碼順序,所述類型包括下述中的至少一者:幀內(nèi)幀、單向預(yù)測(cè)幀間幀、雙向預(yù)測(cè)幀間幀、以及一次性幀;基于所分析的比特使用和所分析的編碼性能來收集關(guān)于所述編碼的視頻信息的更新統(tǒng)計(jì)信息; 檢測(cè)由所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程引起的所述編碼的視頻信息中的編碼不精確性; 將完全復(fù)雜性編碼過程設(shè)置成比所優(yōu)化的中間編碼過程高的計(jì)算復(fù)雜性;以及基于所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息,針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化所述完全復(fù)雜性編碼過程以去除所檢測(cè)的編碼不精確性:編碼效率;傳輸效率;以及所述完全復(fù)雜性編碼過程的可擴(kuò)展性;以及 進(jìn)一步編碼器,所述進(jìn)一步編碼器被配置成執(zhí)行對(duì)所述視頻信息的所述完全復(fù)雜性編碼過程。25.根據(jù)權(quán)利要求24所述的系統(tǒng),其中,從所述碼率控制分析模塊接收的統(tǒng)計(jì)信息包括下述中的一個(gè)或多個(gè): 運(yùn)動(dòng)預(yù)測(cè); 幀內(nèi)預(yù)測(cè) 編碼模式信息; 比特使用統(tǒng)計(jì)信息; 編碼參數(shù); 空間統(tǒng)計(jì)信息; 時(shí)間統(tǒng)計(jì)信息; 幀內(nèi)預(yù)測(cè)誤差統(tǒng)計(jì)信息;或者 幀間預(yù)測(cè)誤差統(tǒng)計(jì)信息。26.根據(jù)權(quán)利要求24所述的系統(tǒng),還包括: 預(yù)分析模塊,所述預(yù)分析模塊被配置成除了由所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼器提供的初始統(tǒng)計(jì)信息之外,還提供所述視頻信息的初始統(tǒng)計(jì)信息,其中,所述碼率控制分析模塊被配置成對(duì)由所述預(yù)分析模塊提供的初始統(tǒng)計(jì)信息、由所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼器提供的初始統(tǒng)計(jì)信息、以及所述更新統(tǒng)計(jì)信息相結(jié)合地進(jìn)行分析。27.—種非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括存儲(chǔ)其中的下述指令集合,所述指令集合在由一個(gè)或多個(gè)計(jì)算或處理裝置執(zhí)行時(shí),使得執(zhí)行下述處理,所述處理包括以下步驟: 針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程:編碼效率;傳輸效率;以及所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程的可擴(kuò)展性; 將所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程應(yīng)用于所述視頻信息; 基于所述一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程來收集關(guān)于編碼的視頻信息的初始統(tǒng)計(jì)信息; 針對(duì)中間編碼過程的比特使用來優(yōu)化所述中間編碼過程,所述中間編碼過程包括預(yù)測(cè)結(jié)構(gòu); 將所優(yōu)化的中間編碼過程應(yīng)用于所述編碼的視頻信息; 分析所應(yīng)用的優(yōu)化的中間編碼過程的比特使用以及所述預(yù)測(cè)結(jié)構(gòu)的編碼性能,所述預(yù)測(cè)結(jié)構(gòu)包括參數(shù)序列,所述參數(shù)描述了針對(duì)所述預(yù)測(cè)結(jié)構(gòu)中的每個(gè)幀的類型和編碼順序,所述類型包括下述中的至少一者:幀內(nèi)幀;單向預(yù)測(cè)幀間幀;雙向預(yù)測(cè)幀間幀;以及一次性幀; 基于所分析的比特使用和所分析的編碼性能來收集關(guān)于所述編碼的視頻信息的更新統(tǒng)計(jì)信息; 檢測(cè)由所優(yōu)化的一個(gè)或多個(gè)低計(jì)算復(fù)雜性編碼過程引起的所述編碼的視頻信息中的編碼不精確性; 將完全復(fù)雜性編碼過程設(shè)置成比所優(yōu)化的中間編碼過程高的計(jì)算復(fù)雜性; 基于所述初始統(tǒng)計(jì)信息和所述更新統(tǒng)計(jì)信息,針對(duì)下述中的一個(gè)或多個(gè)來優(yōu)化所述完全復(fù)雜性編碼過程以去除所檢測(cè)的編碼不精確性:編碼效率;傳輸效率;以及所述完全復(fù)雜性編碼過程的可擴(kuò)展性;以及 將所優(yōu)化的完全復(fù)雜性編碼過程應(yīng)用于所述編碼的視頻信息。
【文檔編號(hào)】H04N19/147GK105847806SQ201610313462
【公開日】2016年8月10日
【申請(qǐng)日】2011年1月3日
【發(fā)明人】阿薩納西奧斯·萊昂塔里斯, 亞歷山德羅斯·圖拉皮斯
【申請(qǐng)人】杜比實(shí)驗(yàn)室特許公司