專利名稱:對具有多個圖像的圖像序列進(jìn)行編碼的方法及設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字視頻內(nèi)容的編碼和解碼。更具體來說,本發(fā)明涉及在如MPEG-4PartlOAVC/H. 264視頻編碼標(biāo)準(zhǔn)中所使用的在圖像級上對數(shù)字視頻內(nèi)容按幀模式和
場模式的編碼和解碼。
背景 視頻壓縮在許多當(dāng)前和正在出現(xiàn)的產(chǎn)品中被使用。它是數(shù)字電視機(jī)頂盒(STB)、數(shù)
字衛(wèi)星系統(tǒng)(DSS)、高清晰度電視(HDTV)解碼器、數(shù)字多用盤(DVD)播放器、視頻會議、因特
網(wǎng)視頻和多媒體內(nèi)容、以及其它數(shù)字視頻應(yīng)用的核心。如果沒有視頻壓縮,數(shù)字視頻內(nèi)容就
可能極其龐大,使得難以、甚至不可能有效地存儲、傳送或觀看數(shù)字視頻內(nèi)容。 數(shù)字視頻內(nèi)容包含圖像流,所述圖像能被在電視接收器、計算機(jī)監(jiān)視器或能顯示
數(shù)字視頻內(nèi)容的其它某種電子裝置上顯示為一個影像。 一個在時間上在某特定圖像之前被
顯示的圖像,相對于該特定圖像來說,是在"向前的方向"上。同樣,一個在時間上在某特定
圖像之后被顯示的圖像,相對于該特定圖像來說,是在"向后的方向"上。 視頻壓縮是在一個視頻編碼過程中完成的,在該過程中每個圖像或者按幀或者按
兩個場被編碼。每個幀包含多行的空間信息。例如,一個典型的幀含有480個水平行。每
個場含有幀中行數(shù)的一半的行。例如,如果幀含有480個水平行,則每個場含有240個水平
行。在一個典型的配置中,一個場含有幀中的奇數(shù)編號的行,另一個場含有幀中的偶數(shù)編號
的行。在下文中以及在后附的權(quán)利要求書中,除非特別地另外指明,否則將把含有奇數(shù)編號
的行的場稱作"頂"(top)場。同樣,在下文中以及在后附的權(quán)利要求書中,除非特別地另外
指明,否則將把含有偶數(shù)編號的行的場稱作"底"(bottom)場。這兩個場可被交織在一起,
形成一個交織幀。 支持視頻編碼的大體思想,是從數(shù)字視頻內(nèi)容中除去"非必要的"的內(nèi)容。被減少的數(shù)據(jù)量于是要求更少的用于廣播或傳輸?shù)膸挕T趬嚎s的視頻數(shù)據(jù)被傳送后,必須對其進(jìn)行解碼,或解壓。在這個過程中,對所傳送的視頻數(shù)據(jù)進(jìn)行處理,以生成被代入該視頻數(shù)據(jù)的近似數(shù)據(jù),用于代替在編碼過程中被去除的"非必要的"數(shù)據(jù)。 視頻編碼將數(shù)字視頻內(nèi)容轉(zhuǎn)變成一種壓縮的形式,與不壓縮的數(shù)字視頻內(nèi)容相比,其能用較少空間存儲并用較少的帶寬傳送。這樣做是利用了視頻內(nèi)容的圖像中的時間上和空間上的冗余。可以將數(shù)字視頻內(nèi)容存儲在諸如硬驅(qū)、DVD的存儲介質(zhì)中,或者某個其它的非易失性存儲單元中。 有許多壓縮數(shù)字視頻內(nèi)容的視頻編碼方法。因此,開發(fā)出了視頻編碼標(biāo)準(zhǔn)來標(biāo)準(zhǔn)化各種視頻編碼方法,以便壓縮的數(shù)字視頻內(nèi)容以大多數(shù)視頻編碼器和解碼器能識別的格式被提供。例如,運動圖像專家組(MPEG)和國際電信聯(lián)盟(ITU-T)已經(jīng)開發(fā)了正在廣泛應(yīng)用的視頻編碼標(biāo)準(zhǔn)。這些標(biāo)準(zhǔn)的例子包括MPEG-1、 MPEG-2、 MPEG-4、 ITU-T H261和ITU-TH263標(biāo)準(zhǔn)。 多數(shù)現(xiàn)代視頻編碼標(biāo)準(zhǔn)一諸如由MPEG和ITU-T開發(fā)的視頻編碼標(biāo)準(zhǔn)一部分根據(jù) 的是一種具有運動補(bǔ)償(MC)算法的時間預(yù)測。具有運動補(bǔ)償?shù)臅r間預(yù)測被用來在數(shù)字視 頻廣播中去除連續(xù)的圖像之間的時間冗余。 具有運動補(bǔ)償算法的時間預(yù)測一般利用一個或兩個基準(zhǔn)圖像來編碼一個特定的 圖像?;鶞?zhǔn)圖像是一個已經(jīng)被編碼的圖像。通過把要被編碼的特定圖像與基準(zhǔn)圖像中的一 個相比較,具有運動補(bǔ)償算法的時間預(yù)測能利用在該基準(zhǔn)圖像與要被編碼的特定圖像之間 存在的時間冗余,并以高于不使用具有運動補(bǔ)償算法的時間預(yù)測編碼該圖像時的壓縮量來 編碼該圖像?;鶞?zhǔn)圖像的其中之一可以位于相對要被編碼的特定圖像來說的向后方向上。 另一個基準(zhǔn)圖像位于相對要被編碼的特定圖像來說的向前方向上。 然而,隨著對更高分辨率、更復(fù)雜圖像內(nèi)容、更快傳送速度的需求的增加,對更好 的視頻編碼方法的需要也增加。為此,目前正在開發(fā)一種新的視頻編碼標(biāo)準(zhǔn)。這個新的視 頻編碼標(biāo)準(zhǔn)叫作MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)。 該新的MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)要求許多新的視頻壓縮方法。例如,新的 MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)的特點之一時,它允許有多個基準(zhǔn)圖像,而不是僅僅兩個基 準(zhǔn)圖像。多個基準(zhǔn)圖像的使用,允許編碼器找到與要被編碼的圖像最接近地匹配的基準(zhǔn)圖 像,從而改善具有運動補(bǔ)償算法的時間預(yù)測的性能。通過在編碼過程中使用與要被編碼的 圖像最接近地匹配的基準(zhǔn)圖像,在該圖像的編碼中就有可能獲得最大的壓縮量?;鶞?zhǔn)圖像 被存儲在幀緩存器和/或場緩存器中。 如前文所述,編碼器能按一個幀或按兩個場來編碼一個圖像。如果在一個要被編 碼的圖像序列中,有些圖像被按幀編碼,有些圖像被按場編碼,則可能實現(xiàn)更大程度的壓 縮。
發(fā)明概要 在許多可能實施例的一個中,本發(fā)明提供一種數(shù)字視頻內(nèi)容的編碼、解碼和位流 生成的方法。數(shù)字視頻內(nèi)容包含一個圖像流,所述圖像分別可能是幀內(nèi)的(intra)、預(yù)測的 (predicted)、或雙預(yù)測的(bi-predicted)圖像。每個圖像包含能被進(jìn)一步劃分成更小的 塊的宏塊。該方法要求或者以幀模式或者以場模式編碼和解碼所述圖像流中的每個圖像。
附圖簡述 各附圖例示本發(fā)明的各種實施例,并且是說明書的一部分。連同以下說明各附圖, 展現(xiàn)和解釋本發(fā)明的原理。所例示的實施例都是本發(fā)明的例子,不限制本發(fā)明的范圍。
圖1表示由例如MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)之類的示例性視頻編碼標(biāo)準(zhǔn)所定 義的、能被用來實現(xiàn)本發(fā)明的一個示例性的三種類型圖像的序列。 圖2表示的是按照本發(fā)明的實施例、優(yōu)選地將每個圖像劃分成含有宏塊的片 (slices)。 圖3a表示的是按照本發(fā)明的實施例、可以將一個宏塊進(jìn)一步劃分成16X8像素的 塊尺寸。 圖3b表示的是按照本發(fā)明的實施例、可以將一個宏塊進(jìn)一步劃分成8X16像素的 塊尺寸。
圖3c表示的是按照本發(fā)明的實施例、可以將一個宏塊進(jìn)一步劃分成8X8像素的塊 尺寸。 圖3d表示的是按照本發(fā)明的實施例、可以將一個宏塊進(jìn)一步劃分成8X4像素的塊 尺寸。 圖3e表示的是按照本發(fā)明的實施例、可以將一個宏塊進(jìn)一步劃分成4X8像素的塊 尺寸。 圖3f表示的是按照本發(fā)明的實施例、可以將一個宏塊進(jìn)一步劃分成4X4像素的塊 尺寸。 圖4表示的是一個解釋本發(fā)明的實施例的使用具有運動補(bǔ)償?shù)臅r間預(yù)測的圖像 構(gòu)造例子。 圖5表示的是解釋按照本發(fā)明的實施例、在具有運動補(bǔ)償?shù)臅r間預(yù)測中使用多個 基準(zhǔn)圖像的優(yōu)點的一個示例性圖像流。 圖6表示的是按照本發(fā)明的實施例、根據(jù)幀緩存器中的每個基準(zhǔn)幀與正在以幀模
式被編碼的當(dāng)前幀的距離向幀緩存器中的每個基準(zhǔn)幀分配一個唯一的基準(zhǔn)幀號。 圖7a表示按照本發(fā)明的實施例的一個示例性基準(zhǔn)場編號配置,其中,給予場奇偶
性與當(dāng)前場的相同的基準(zhǔn)場比它們對應(yīng)的第二場更小的編號。 圖7b表示一個示例性的基準(zhǔn)場編號配置,其中,當(dāng)前場是要被按兩個場編碼的圖 像的第二場。 圖8表示在按照本發(fā)明的實施例的場緩存器中的一個替代的基準(zhǔn)場編號配置。
圖9表示一個直接模式矢量計算的方法,其中,當(dāng)前宏塊和與其共同定位的 (co-located)宏塊二者都處于幀模式。 圖10表示一個直接模式矢量計算的方法,其中,當(dāng)前宏塊和與其共同定位的宏塊 二者都處于場模式。 圖11表示另一個直接模式矢量計算的方法,其中,當(dāng)前宏塊和與其共同定位的宏 塊二者都處于場模式。 圖12表示一個直接模式矢量計算的方法,其中,當(dāng)前宏塊處于場模式,與其共同 定位的宏塊處于幀模式。 圖13表示一個直接模式矢量計算的方法,其中,當(dāng)前宏塊處于幀模式,與其共同 定位的宏塊處于場模式。 圖14表示按照本發(fā)明實施例的在時間上的向前方向上具有兩個基準(zhǔn)圖像的B圖像。 圖15表示按照本發(fā)明實施例的在時間上的向后方向上具有兩個基準(zhǔn)圖像的B圖 像。 圖16表示在時間上的向前方向上具有一個前向基準(zhǔn)圖像和在時間上的向后方向 具有一個后向基準(zhǔn)圖像的B圖像。 在各附圖中,相同的標(biāo)注號代表相似的一但未必是相同的一部件。
發(fā)明的實施例詳述 本發(fā)明提供一種在圖像級對包含一個圖像流的數(shù)字視頻內(nèi)容的自適應(yīng)幀/場 (AFF)編碼的方法。在圖像級上的AFF編碼過程中,要被編碼的圖像流中的每個圖像或者被按幀模式或者被按場模式編碼,而不管其它圖像的幀或場編碼模式。如果一個圖像是按幀 模式被編碼的,則構(gòu)成一個交織幀的兩個場被共同地編碼。相反,如果一個圖像是按場模式 被編碼的,則構(gòu)成一個交織幀的兩個場被分開編碼。編碼器確定對每個圖像來說幀模式編 碼和場模式編碼中的哪一種編碼更有益,并為該圖像選擇該種編碼模式。在幀模式與場模 式之間進(jìn)行選擇的具體方法對本發(fā)明來說并不重要,因此將不再這里詳述。
如上所述,MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)是一種編碼和壓縮數(shù)字視頻內(nèi)容的新 標(biāo)準(zhǔn)。建立MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)的文件在這里作為參考引用,包括聯(lián)合視頻組 (JVT) (Joint Video Team) 2002年8月10日發(fā)布的"Joint Final Committee Draft (JFCD) of JointVideo Specification"(ITU-T Rec. H. 264&IS0/IEC 14496-1OAVC)。該JVT由ISO 或MPEG和ITU-T的專家組成。由于MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)的公開性質(zhì),本發(fā)明說 明書將不試圖展示MPEG-4PartlOAVC/H. 264視頻編碼的所有現(xiàn)有的方面,而是依賴該標(biāo)準(zhǔn) 的所引用的說明書。 盡管這個AFF編碼方法是與MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)指南相容的,并且將要
利用后者作解釋,該方法也可以被修改得最適合于某個標(biāo)準(zhǔn)或應(yīng)用。
現(xiàn)在將利用各附圖來解釋本發(fā)明的各優(yōu)選實施例。 圖1表示由例如MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)之類的示例性視頻編碼標(biāo)準(zhǔn)所定 義的、能被用來實現(xiàn)本發(fā)明的一個示例性的三種類型圖像的序列。如前文提到的那樣,編碼 器編碼圖像,解碼器解碼圖像。編碼器或解碼器可以是處理器、專用集成電路(ASIC)、現(xiàn)場 可編程門陣列(FPGA)、編解碼器(CODEC)、數(shù)字信號處理器(DSP)、或能編碼圖像流的某種 其它電子裝置。然而,在下文中以及在后附的權(quán)利要求書中,除非特別地另外指明,否則將 用術(shù)語"編碼器"來泛指編碼包含一個圖像流的數(shù)字視頻內(nèi)容的所有電子裝置。同樣,在下 文中以及在后附的權(quán)利要求書中,除非特別地另外指明,否則將用術(shù)語"解碼器"來泛指解 碼包含一個圖像流的數(shù)字視頻內(nèi)容的所有電子裝置。 如圖1中所示,優(yōu)選地有三種類型的圖像能被用于視頻編碼方法中。定義三種類 性的圖像,以在利用具有運動補(bǔ)償?shù)臅r間預(yù)測探索最大冗余減少的同時支持對被存儲的 數(shù)字視頻內(nèi)容的隨機(jī)訪問。這三種類型的圖像是幀內(nèi)(I)圖像(100)、預(yù)測的(P)圖像 (102a, b)、雙預(yù)測的(B)圖像(101a-d)。 I圖像(100)提供一個用于隨機(jī)訪問被存儲的數(shù) 字視頻內(nèi)容的訪問點并且只能以輕微的壓縮被編碼。對幀內(nèi)圖像(100)編碼時不參考基準(zhǔn) 圖像。 編碼一個預(yù)測的圖像(102a,b)時,用一個已經(jīng)被編碼的I、P或B圖像作為基準(zhǔn)圖 像。該基準(zhǔn)圖像可以在相對于正在被編碼的P圖像的向前或向后的時間方向上。預(yù)測的圖 像(102a,b)能被編碼得比幀內(nèi)圖像(100)有更多的壓縮。 編碼 一 個雙預(yù)測的圖像(101a-d)時,使用兩個時間基準(zhǔn)圖像(temporal reference pictures):—個前向基準(zhǔn)圖像和一個后向基準(zhǔn)圖像。前向基準(zhǔn)圖像有時被稱作 過去基準(zhǔn)圖像,后向基準(zhǔn)圖像有時被稱作將來基準(zhǔn)圖像。本發(fā)明的一個實施例是,前向基準(zhǔn) 圖像和后向基準(zhǔn)圖像可以位于相對于正在被編碼的B圖像的相同的時間方向上。雙預(yù)測的 圖像(101a-d)能被編碼得在這三種圖像類型中具有最大的壓縮。 這三種圖像類型之間的基準(zhǔn)關(guān)系(103)在圖1中表示。例如,P圖像(102a)能被 用編碼的I圖像(100)作為其基準(zhǔn)圖像而編碼。如圖1中所示,B圖像(101a-b)能被用編碼的I圖像(100)和/或編碼的P圖像(102a)作為其基準(zhǔn)圖像而編碼。按照本發(fā)明的一 個實施例的原理,編碼的B圖像(lOla-d)也能被用作其它要被編碼的B圖像的基準(zhǔn)圖像。 例如,圖1顯示,B圖像(101c)有兩個其它的B圖像(101b和101d)作為其基準(zhǔn)圖像。
圖1中所示的1(100)、B(101a-d)及P(102a,b)圖像的數(shù)量和特定次序是作為一 個示例性的圖像配置而給出的,但是對于實現(xiàn)本發(fā)明來說并不是必需的。可以使用按任何 次序的任何數(shù)量的I、 B禾P P圖像,以最好地適合于特定的應(yīng)用。MPEG-4Part 10AVC/H. 264 標(biāo)準(zhǔn)并不限制兩個基準(zhǔn)圖像之間的B圖像數(shù),也不限制兩個I圖像之間的圖像數(shù)。
圖2表示優(yōu)選地將每個圖像劃分成片(202)。 一個片(202)含有一組宏塊(201)。 一個宏塊是一個矩形的像素組。如圖2中所示,一個優(yōu)選的宏塊(201)大小是16X16像素。
圖3a-f表示可以將一個宏塊進(jìn)一步劃分成大小更小的塊。例如,如圖3a-f中所 示,可以將一個宏塊進(jìn)一步劃分成如下的塊尺寸16X8像素(圖3a ;300) 、8X16像素(圖 3b ;301) 、8X8像素(圖3c ;302) 、8X4像素(圖3d ;303) 、4X8像素(圖3e ;304)、或4X4像 素(圖3f ;305)。 圖4表示的是一個解釋本發(fā)明的實施例的使用具有運動補(bǔ)償?shù)臅r間預(yù)測的圖像 構(gòu)造例子。具有運動補(bǔ)償?shù)臅r間預(yù)測假設(shè),可以將一個當(dāng)前圖像一圖像N(400)—局部地建 模為另一個圖像一圖像N-1(401)—的一個平移。圖像N-1(401)是用于對圖像N(400)的編 碼的基準(zhǔn)圖像,可位于相對于圖像N(400)的向前或向后的時間方向上。
如圖4中所示,優(yōu)選地將每個圖像劃分成含有宏塊(201a,b)的片。圖像N-1(401) 含有一個將要在圖像N(400)中被顯示的圖像(403)。如圖4中所示,圖像(403)在圖像 N(400)中將處于一個與它在圖像N-1(401)中所處的不同的時間位置(402)。圖像N(400) 的每個宏塊(201a)的圖像內(nèi)容,是根據(jù)圖像N-1(401)的每個對應(yīng)宏塊(201b)的圖像內(nèi)容 預(yù)測的,具體是通過估計圖像(403)移動到其在圖像N(400)中的新的時間位置(402)所需 的圖像N-1(401)的每個宏塊(201b)的圖像內(nèi)容的時間運動的量進(jìn)行預(yù)測。實際被編碼并 傳送的,不是原始的圖像(402),而是圖像(402)與其預(yù)測(403)之間的差(404)。
對于圖像N(400)中的每個圖像(402)來說,時間預(yù)測常??梢杂纱韴D像(403) 移動到其在圖像N(400)中的新位置(402)所需的時間運動量的運動矢量表示。被用于具 有運動補(bǔ)償?shù)臅r間預(yù)測的運動矢量(406)需要被編碼和傳送。 圖4表示圖像N(400)中的圖像(402)可由所述圖像和它的預(yù)測之間的差(404) 以及相關(guān)聯(lián)的運動矢量(406)表示??梢杂胁煌氖褂眠\動矢量進(jìn)行編碼的具體方法以最 適于某一特定應(yīng)用,所述具體方法可以由本領(lǐng)域熟練技術(shù)人員很容易地實現(xiàn)。
圖5表示的是解釋按照本發(fā)明的實施例、在具有運動補(bǔ)償?shù)臅r間預(yù)測中使用多個 基準(zhǔn)圖像的優(yōu)點的一個示例性圖像流。多個基準(zhǔn)圖像的使用,增加了圖像N(400)以可能最 大的壓縮被編碼的可能性。在這個例子中,圖像N-l (401) 、 N-2(500) 、 N-3(501)已經(jīng)被編 碼。如圖5中所示,圖像N-3(501)中的一個圖像(540)與圖像N-2(500)和N-1(401)的圖 像(503,502)分別相比,和圖像N(400)中的圖像(402)更相似。多個基準(zhǔn)圖像的使用,允 許用圖像N-3(501)而不是圖像N-1(401)作為基準(zhǔn)圖像對圖像N(400)編碼。
現(xiàn)在將更詳細(xì)地解釋對一個圖像流的圖像級的AFF編碼。 一個交織序列的幀含有 兩個場,即交替的并在時間上間隔一個場周期的上場和下場。該場周期是幀周期時間的一 半。在圖像級AFF編碼過程中,一個交織幀的兩個場能被共同地或者分開地編碼。如果被共同地編碼,采用幀模式編碼。相反地,如果這兩個場被分開地編碼,則采用場模式編碼。
另一方面,固定的幀/場編碼,只以一種模式編碼一個圖像流的所有圖像。該模式 可以是幀模式,也可以是場模式。圖像級的AFF編碼優(yōu)選地是固定的幀/場編碼,因為它允 許編碼器根據(jù)數(shù)字視頻材料的內(nèi)容來選擇要用幀模式和場模式中的哪一個模式來編碼圖 像流中的每個圖像。 幀模式編碼用已經(jīng)被編碼了的圖像作為基準(zhǔn)幀。該基準(zhǔn)幀可以是任何編碼了的I 、 P或B幀。在作為編碼器一部分的幀緩存器中存儲所述基準(zhǔn)幀。本發(fā)明的一個實施例是, 如圖6中的示例性格局所示的那樣,根據(jù)幀緩存器中的每個基準(zhǔn)幀與正在以幀模式被編碼 的當(dāng)前圖像之間的距離,向幀緩存器中的每個基準(zhǔn)幀分配一個唯一的基準(zhǔn)幀號。例如,如 圖6中所示,一個要按一個幀(600)編碼的當(dāng)前圖像有多個在幀緩存器(601)中的基準(zhǔn)幀 (0-5)。圖6也示出了與該當(dāng)前幀(600)和基準(zhǔn)幀(0-5)對應(yīng)的場(fl, f2)。用虛線標(biāo)記 的fl是第一場,用虛線標(biāo)記的f2是第二場。第一場是在一個有兩個場的圖像中被編碼的 第一個場。同樣,第二場是在一個有兩個場的圖像中被編碼的第二個場。本發(fā)明的一個實 施例是,第一場可以是頂場或者是底場。在本發(fā)明的另一個實施例中,第二場也可以是頂場 或者是底場。各幀由實線表示。如圖6中所示,基準(zhǔn)幀0是時間上最靠近當(dāng)前幀(600)的 基準(zhǔn)幀。基準(zhǔn)幀在時間上離當(dāng)前幀(600)越遠(yuǎn),其基準(zhǔn)幀號越大。 按照本發(fā)明一個實施例的原理,一個被按一個幀編碼的B圖像可有多個前向和后
向的基準(zhǔn)圖像。其中為每個所述前向和后向基準(zhǔn)圖像分配唯一的編號。 在具有運動補(bǔ)償算法的時間預(yù)測中,對被按一個幀編碼的圖像中的每一個像素進(jìn)
行子像素內(nèi)插(sub-pel interpolation)。也可以通過重復(fù)幀邊界上的像素而對按幀編碼
的基準(zhǔn)圖像施行填充。在具有運動補(bǔ)償算法的時間預(yù)測中,填充有時是適當(dāng)?shù)摹?梢詫?br>
塊應(yīng)用循環(huán)濾波(loop filtering)或去分塊(de-blocking)方案,以解決相鄰塊的邊沿處
像素值不連續(xù)的問題。 按照本發(fā)明的另一個實施例,在AFF編碼過程中可以跳過一個P圖像中的一個宏 塊。如果某宏塊被跳過,它的數(shù)據(jù)在對圖像的編碼過程中不被傳送。通過復(fù)制已經(jīng)被最近 編碼的I或P基準(zhǔn)圖像中共同定位的具有運動補(bǔ)償?shù)暮陦K來重構(gòu)P圖像中一個被跳過的宏 塊。 場模式編碼用已經(jīng)被編碼的圖像作為基準(zhǔn)場?;鶞?zhǔn)場可以是任何編碼的I、P或B 場。基準(zhǔn)場被存儲在作為編碼器一部分的場緩存器中。本發(fā)明的一個實施例是,根據(jù)場緩 存器中的每個基準(zhǔn)場與正在被作為兩個場編碼的當(dāng)前圖像的距離向場緩存器中的每個基 準(zhǔn)場分配一個唯一的基準(zhǔn)場號。圖7a和7b表示按照本發(fā)明的實施例的示例性基準(zhǔn)場編號 配置,其中,給予場奇偶性與當(dāng)前場的相同的基準(zhǔn)場比它們對應(yīng)的第二場更小的號。如果兩 個場都是頂場或者都是底場,則這兩個場具有相同的場奇偶性。在圖7a和7b的例子中,如 果要被編碼的當(dāng)前圖像的第一場是個頂場,則各基準(zhǔn)圖像的第一場也是頂場。于是第二場 則是底場。第一場也可以都是底場,而第二場可以都是頂場。 如圖7a中所示,一個要按場模式被編碼的當(dāng)前圖像有多個在場緩存器(701)中的 基準(zhǔn)場(0-10)。用虛線標(biāo)記的fl是第一場,用虛線標(biāo)記的f2是第二場。與場對應(yīng)的幀也 在圖7a中顯示,并被用實線表示。如圖7a中所示,如果要被編碼的圖像的第一個場是當(dāng)前 幀(700),則向場緩存器(701)中的第一個圖像的第一場分配編號0,同時向場緩存器(701)中的第一個圖像的第二場分配編號1?;鶞?zhǔn)場在時間上離當(dāng)前場(700)越遠(yuǎn),其基準(zhǔn)場號就 越大。場緩存器中的各圖像的第一場比它們對應(yīng)的第二場有更低的基準(zhǔn)號。
圖7b表示一個示例性的基準(zhǔn)場編號配置,其中,當(dāng)前場(702)是要被按兩個場編 碼的圖像的第二場。用虛線標(biāo)記的H是第一場,用虛線標(biāo)記的f2是第二場。當(dāng)前圖像的 第一場已經(jīng)被編碼。如圖7b中所示,因為當(dāng)前場(702)是個第二場,場緩存器(701)中的 第一個圖像的第二場被分配編號O。當(dāng)前圖像的第一已編碼的場被分配編號l?;鶞?zhǔn)場在 時間上離當(dāng)前場(702)越遠(yuǎn),其基準(zhǔn)場號就越大。場緩存器中的各圖像的第二場比它們對 應(yīng)的第一場有更低的基準(zhǔn)號。 圖8表示在按照本發(fā)明的實施例的場緩存器中的一個替代的基準(zhǔn)場編號配置。在
這個配置中,并不特殊對待場奇偶性與當(dāng)前場的相同的場。例如,如圖8中所示,當(dāng)前場
(800)是個第一場。場緩存器中的最近編碼的圖像的最近編碼的場被賦予基準(zhǔn)號O?;鶞?zhǔn)
場在時間上離當(dāng)前場(800)越遠(yuǎn),其基準(zhǔn)場號就越大,不管它們的場奇偶性如何。 按照本發(fā)明另一個實施例,如果編碼器為某個特定P圖像選擇場編碼,編碼器可
用被作為一個基準(zhǔn)場編碼的第一場來對第二場編碼。如果該圖像是個B圖像,則被編碼的
第一場可被用作用于對第二場編碼的兩個基準(zhǔn)場的其中之一。 對于自適應(yīng)雙預(yù)測(ABP)來說,可以在場模式下編碼兩個基準(zhǔn)圖像。在這種情況 下,在計算被定標(biāo)的(scaled)運動矢量時所用的時間距離是以場間隔計的。在ABP編碼過 程中,兩個基準(zhǔn)幀在相同的方向上。 在具有運動補(bǔ)償算法的時間預(yù)測中,對一個被按場模式編碼的圖像中的每一個像 素進(jìn)行子像素內(nèi)插。也可以通過重復(fù)場邊界上的像素而對按場編碼的基準(zhǔn)圖像施加填充。 在具有運動補(bǔ)償算法的時間預(yù)測中,填充有時是適當(dāng)?shù)???梢詫鰤K應(yīng)用循環(huán)濾波或去分 塊方案,以解決相鄰塊的邊沿處像素值不連續(xù)的問題。 按照本發(fā)明的另一個實施例,在AFF編碼過程中可以跳過一個P圖像中的一個宏 塊。如果某個宏塊被跳過,它的數(shù)據(jù)在對圖像的編碼過程中不被傳送。通過復(fù)制相同場奇 偶性的最近編碼的I或P基準(zhǔn)場中共同定位的具有運動補(bǔ)償?shù)暮陦K來重構(gòu)P圖像中一個被 跳過的宏塊。另一個實施例是,通過復(fù)制場奇偶性可能是不同的最近編碼的基準(zhǔn)場中共同 定位的宏塊來重構(gòu)P圖像中該被跳過的宏塊。 本發(fā)明的另一個實施例是對B圖像的直接模式編碼。在直接模式編碼過程中,一 個B圖像中的宏塊的前向和后向運動矢量是從在一個后向基準(zhǔn)圖像的對應(yīng)的、或共同定位 的宏塊中所使用的運動矢量中被導(dǎo)出的。在兩個圖像中共同定位的宏塊在這兩個圖像中都 占據(jù)相同的幾何位置。后向基準(zhǔn)圖像有時被稱作前向基準(zhǔn)圖像,盡管按照本發(fā)明一個實施 例,后向基準(zhǔn)圖像不必在時間上先于正在被編碼的當(dāng)前圖像。 直接編碼模式比其它編碼方法有利,這是因為,在幀間模式編碼中,一個宏塊可以 有多達(dá)16個運動矢量和多達(dá)4個基準(zhǔn)幀。幀間模式編碼利用具有運動補(bǔ)償?shù)臅r間預(yù)測編 碼一個宏塊。如果用幀間編碼對一個宏塊進(jìn)行編碼,MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)允許 圖3a-f的6個較小的塊尺寸(16X8像素、8X16像素、8X8像素、8X4像素、4X8像素、4X4像 素)中的每一個有其自己的運動矢量。16X16像素的塊尺寸也可以有其自己的運動矢量。 MPEG-4Part 10AVC/H. 264標(biāo)準(zhǔn)也允許16X16像素、16X8像素、8X16像素、8X8像素的塊尺寸 有其自己的基準(zhǔn)幀。因此,一個宏塊可以有多達(dá)16個運動矢量和多達(dá)4個基準(zhǔn)幀。由于有這么多潛在運動矢量,從后向基準(zhǔn)圖像的共同定位的宏塊的已經(jīng)被計算的運動矢量導(dǎo)出一個要被編碼的宏塊的運動矢量是有利的。在直接模式編碼過程中,一個要被編碼的宏塊的前向運動矢量和后向運動矢量,被當(dāng)作后向基準(zhǔn)圖像中共同定位的宏塊的前向運動矢量的已定標(biāo)的版本(scaled versions)計算。 在圖像級的AFF編碼中, 一個B圖像和它的后向基準(zhǔn)圖像各自都能按幀模式或按場模式被編碼。因此,就幀編碼模式和場編碼模式而言,對該B圖像中的一對宏塊和在后向基準(zhǔn)圖像中它的共同定位的一個宏塊來說,可能有四種不同組合。在第一種情形中,當(dāng)前宏塊和它的共同定位的宏塊二者都是幀模式。在第二種情形中,當(dāng)前宏塊和它的共同定位的宏塊二者都是場模式。在第三種情形中,當(dāng)前宏塊是場模式,它的共同定位的宏塊是幀模式。最后,在第四種情形中,當(dāng)前宏塊是幀模式,它的共同定位的宏塊是場模式。對要被編碼的宏塊的直接模式運動矢量計算的方法在這四種情形中的每一個中都不同。以下將詳細(xì)說明這4種對B圖像中的宏塊的直接模式運動矢量計算的方法。 將結(jié)合圖9說明在第一種情形中的直接模式矢量計算的方法。如圖9中所示,一個當(dāng)前B圖像(900),要用一個已經(jīng)被按幀模式編碼的后向基準(zhǔn)圖像(901)和一個前向基準(zhǔn)圖像(902)作為基準(zhǔn)圖像,按幀模式被編碼。圖9中的各幀用豎實線表示,它們對應(yīng)的場fl和f2用縱向虛線表示。按照本發(fā)明一個實施例,后向基準(zhǔn)圖像(901)可以是一個已經(jīng)被按幀模式編碼的I、P或B圖像。類似地,前向基準(zhǔn)圖像(902)也可以是一個編碼的I、P或B圖像。 如圖9中所示,當(dāng)前B圖像(900)中有一個塊(903),在后向基準(zhǔn)圖像(901)中有與其共同定位的塊(904)。塊(903)和共同定位的塊(904)有相等的像素尺度。這些尺度可以是16X16像素、16X8像素、8X16像素、8X8像素、8X4像素、4X8像素、或4X4像素。按照本發(fā)明一個實施例,編碼器為當(dāng)前B圖像(900)中的塊(903)導(dǎo)出兩個在具有運動補(bǔ)償算法的時間預(yù)測中使用的運動矢量。其中一個運動矢量MVp指向前向基準(zhǔn)圖像(902)。另一個運動矢量MVe指向后向基準(zhǔn)圖像(901)。這兩個運動矢量被按下面的公式計算
MVF = TRB MV/TRD MVB = (TRB_TRD) MV/TRD (公式1和2) 在公式1和2中,TRB是要被按幀模式編碼的當(dāng)前B圖像(900)與前向基準(zhǔn)圖像(902)之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。TR。是已經(jīng)被按幀模式編碼的前向基準(zhǔn)圖像(902)與后向基準(zhǔn)圖像(901)之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。下面將解釋計算基準(zhǔn)圖像之間的時間距離的優(yōu)選方法。MV是已經(jīng)為后向基準(zhǔn)圖像(901)中的共同定位的塊(904)計算出來的、指向前向基準(zhǔn)圖像(902)的運動矢量。 將結(jié)合圖10和11說明在第二種情形中的直接模式矢量計算的方法。如圖10和圖11中所示,一個當(dāng)前B圖像(900),要用一個已經(jīng)被按場模式編碼的后向基準(zhǔn)圖像(901)和一個前向基準(zhǔn)圖像(902)作為基準(zhǔn)圖像,按場模式被編碼。圖10和11中的各幀用豎實線表示,它們對應(yīng)的場fl和f2用縱向虛線表示。按照本發(fā)明一個實施例,后向基準(zhǔn)圖像(901)可以是一個已經(jīng)被按場模式編碼的I、 P或B圖像。類似地,前向基準(zhǔn)圖像(902)也可以是一個編碼的I 、 P或B圖像。
如圖10中所示,當(dāng)前B圖像(900)的第一場中有一個塊(905)。它的運動矢量是從后向基準(zhǔn)圖像(901)中與其共同定位的塊(906)的前向運動矢量M^導(dǎo)出的。按照圖10中所示的實施例,共同定位的塊(906)位于一個與當(dāng)前B圖像(900)中的塊(905)所在場的奇偶性相同的場中。塊(905)和共同定位的塊(906)有相等的像素尺度。這些尺度可以是16X16像素、16X8像素、8X16像素、8X8像素、8X4像素、4X8像素、或4X4像素。
按照本發(fā)明一個實施例,編碼器為當(dāng)前B圖像(900)中的塊(905)導(dǎo)出兩個在具有運動補(bǔ)償算法的時間預(yù)測中使用的運動矢量。其中一個運動矢量MV^指向所指向的前向基準(zhǔn)圖像(902)中的場。另一個運動矢量MV^指向后向基準(zhǔn)圖像(901)中共同定位的塊(906)的場。這兩個運動矢量被按下面的公式計算
MVF, i = TRB, i MV乂TRd,丄 MVB, i = (TRB, 「TRd,》 MVi/TR^ (公式3和4) 在公式3和4中,下標(biāo)i是場標(biāo)記(index)。第一場具有場標(biāo)記l,第二場具有場標(biāo)記2。因此,在圖10的示例性情形中,場標(biāo)記之所以為l,是因為第一場正在被編碼。MVi是后向基準(zhǔn)圖像(901)的場i中共同定位的宏塊的前向運動矢量。TR^是當(dāng)前B幀(900)的第i場與MVi所指向的基準(zhǔn)場之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。TR。,i是后向基準(zhǔn)圖像(901)的第i場與所指向的基準(zhǔn)場之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。 如圖10中所示,當(dāng)前B圖像(900)的第二場中有一個塊(907)。它在后向基準(zhǔn)圖像(901)的第二場中有一個共同定位的塊(908)。如果該共同定位的塊(908)的前向運動矢量指向除其自己的圖像以外的任何圖像中的一個以前編碼的場,則前向運動矢量和后向運動矢量的計算遵循公式3和4,只是場標(biāo)記等于2。 然而,如圖11中所示,按照本發(fā)明一個實施例,后向基準(zhǔn)圖像(901)的第二場中的共同定位的塊(908)的前向運動矢量也可以指向同一個后向基準(zhǔn)圖像(901)的第一場。圖ll表示共同定位的塊(908)有一個指向后向基準(zhǔn)圖像(901)的第一場的前向運動矢量MV2。在這種情況下,當(dāng)前塊(907)的兩個運動矢量按下式計算
MVF,2 = _TRB,2 MV2/TRD,2 MVB,2 = _(TRB,2+TRD,2) MV2/TRD,2 (公式5和6) 在公式5禾P 6中,TRB,2是當(dāng)前B幀(900)的第2場與MV2所指向的基準(zhǔn)場之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。TR。,2是后向基準(zhǔn)圖像(901)的第2場與MV2所指向的基準(zhǔn)場之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。如圖11中所示,在這種情況下,這兩個運動矢量都指向向后的方向。
將結(jié)合圖12說明在第三種情形中的直接模式矢量計算的方法。如圖12中所示,一個當(dāng)前B圖像(900),要用一個已經(jīng)被按幀模式編碼的后向基準(zhǔn)圖像(901)和一個前向基準(zhǔn)圖像(902)作為基準(zhǔn)圖像,按場模式被編碼。圖12中的各幀用豎實線表示,它們對應(yīng)的場fl和f2用縱向虛線表示。按照本發(fā)明一個實施例,后向基準(zhǔn)圖像(901)可以是一個已經(jīng)被按幀模式編碼的1、P或B圖像。類似地,前向基準(zhǔn)圖像(902)也可以是一個編碼的I、P或B圖像。
如圖12中所示,當(dāng)前B圖像(900)的第一場中有一個塊(905)。按照圖12中所示的實施例,共同定位的塊(904)是按幀模式編碼的。按照本發(fā)明一個實施例,編碼器為當(dāng)前B圖像(900)中的塊(905)導(dǎo)出兩個在具有運動補(bǔ)償算法的時間預(yù)測中使用的運動矢量。如圖12中所示,其中一個運動矢量MVw指向前向基準(zhǔn)圖像(902)中的具有與當(dāng)前塊(905)的場奇偶性相同的奇偶性的場。在圖12的例子中,當(dāng)前塊(905)位于當(dāng)前B圖像(900)的第一場中。另一個運動矢量MV^指向后向基準(zhǔn)圖像(901)中類似奇偶性的場。這兩個運動矢量被按下面的公式計算
MVF, i = TRB, i MV/TRD MVB, i = (TRB, 「TRD) MV/TRD (公式7和8) 在公式7和8中,MV是通過將共同定位的塊(904)的基于幀的前向運動矢量在縱向方向上除以2而得出的。這就彌補(bǔ)了事實上共同定位的塊(904)是幀模式的、而當(dāng)前塊
(905) 是場模式的這樣的差異。下標(biāo)i是場標(biāo)記。第一場具有場標(biāo)記l,第二場具有場標(biāo)記2。因此,在圖12的示例性情形中,場標(biāo)記之所以為1,是因為第一場正在被編碼。TR。是后向基準(zhǔn)圖像(901)的第i場與前向基準(zhǔn)幀(902)的第i場之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。TRB,i是當(dāng)前B圖像(900)的第i場與后向基準(zhǔn)圖像(901)中共同定位的塊(904)的基準(zhǔn)幀的第i場之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。用相同的公式計算當(dāng)前B圖像(900)中第二場中的塊(907)的運動矢量。 將結(jié)合圖13說明在第四種情形中的直接模式矢量計算的方法。如圖13中所示,一個當(dāng)前B圖像(900),要用一個已經(jīng)被按場模式編碼的后向基準(zhǔn)圖像(901)和一個前向基準(zhǔn)圖像(902)作為基準(zhǔn)圖像,按幀模式被編碼。圖13中的各幀用豎實線表示,它們對應(yīng)的場fl和f2用縱向虛線表示。按照本發(fā)明一個實施例,后向基準(zhǔn)圖像(901)可以是一個已經(jīng)被按場模式編碼的1、P或B圖像。類似地,前向基準(zhǔn)圖像(902)也可以是一個編碼的I、P或B圖像。 如圖13中所示,要被按幀編碼的當(dāng)前B圖像(900)有一個塊(903)。它的運動矢量是從它在后向基準(zhǔn)圖像(901)中共同定位的塊(906)的前向運動矢量MVJ尋出的。按照本發(fā)明一個實施例,編碼器為當(dāng)前B圖像(900)中的塊(903)導(dǎo)出兩個在具有運動補(bǔ)償算法的時間預(yù)測中使用的運動矢量。這兩個運動矢量被按下面的公式計算
MVF = TRB MV乂TRd,工MVB = (TRb-TRd,》 MV/TR^ (公式9和10) 在公式9和10中,M^是通過將后向基準(zhǔn)圖像(901)的第一場中共同定位的塊
(906) 的基于場的運動矢量在縱向方向上加倍而得出的。TRb是當(dāng)前B圉像(900)和基準(zhǔn)幀(902)之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值,所述共同定位的塊(906)的前向運動矢量指向它的一個場。在圖13中,這個運動矢量是MV^ TR吣是后向基準(zhǔn)圖像(901)的第一場與共同定位的塊(906)的前向運動矢量所指向的前向基準(zhǔn)圖像(902)中的場之間的時間距離、該時間距離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。
本發(fā)明的另一個實施例將直接模式編碼擴(kuò)展到P圖像。在圖像級的AFF編碼中,一個P圖像和它的前向基準(zhǔn)圖像可以被按幀模式或者按場模式編碼。因此,就幀編碼模式 和場編碼模式而言,對該P圖像中的一對宏塊和在前向基準(zhǔn)圖像中它的共同定位的一個宏 塊來說,可能有四種不同組合。第一種情形,當(dāng)前宏塊和它的共同定位的宏塊二者都是幀模 式。第二種情形,當(dāng)前宏塊和它的共同定位的宏塊二者都是場模式。第三種情形,當(dāng)前宏塊 是場模式,它的共同定位的宏塊是幀模式。最后,第四種情形,當(dāng)前宏塊是幀模式,它的共同 定位的宏塊是場模式。P圖像中的塊只有一個運動矢量,即前向運用矢量。對要被編碼的宏 塊的直接模式運動矢量計算的方法在這四種情形中的每一個中都不同。以下將詳細(xì)說明這 4種對P圖像中的宏塊的直接模式運動矢量計算的方法。 第一種情形,當(dāng)前P圖像和它的前向基準(zhǔn)圖像二者都以幀模式被編碼。當(dāng)前P圖
像的一個塊的前向基準(zhǔn)圖像與前向基準(zhǔn)圖像中它的共同定位的塊所使用的是同一個圖像。
當(dāng)前塊的前向運動矢量MVp與它的共同定位的塊的前向運動矢量是相同的。 第二種情形,當(dāng)前P圖像和它的前向基準(zhǔn)圖像二者都以場模式被編碼。在對當(dāng)前P
圖像的一個場中的一個塊的直接模式編碼中的運動矢量,是根據(jù)前向基準(zhǔn)圖像中具有相同
奇偶性的場中的共同定位的塊的前向運動矢量計算出來的。當(dāng)前P圖像的第i場的塊的前
向運動矢量MVu,與前向基準(zhǔn)圖像中第i場中的它的共同定位的塊的前向運動矢量是相同的。 第三種情形,當(dāng)前P圖像是場模式,后向基準(zhǔn)圖像是幀模式。由于當(dāng)前P圖像中的
其中一個場中的一個塊的共同定位的塊是按幀編碼的,通過將共同定位塊的運動矢量在縱
向方向上除以2,就得出當(dāng)前P圖像中的其中一個場中的一個塊的前向運動矢量。 第四種情形,當(dāng)前P圖像是幀模式,前向基準(zhǔn)圖像是場模式。前向基準(zhǔn)圖像的第一
場中的共同定位的塊,被用于計算按幀模式的當(dāng)前P圖像中塊的前向運動矢量。通過將前
向基準(zhǔn)圖像的第一場中的共同定位塊的基于場的運動矢量在縱向方向上加倍,就得出按幀
模式的當(dāng)前P圖像中的一個塊的前向運動矢量MVp。 本發(fā)明的另一個實施例是多幀插值的(multi-frameinterpolative)預(yù)測模式 (MFIP)。 MFIP是一種通用的幀插值預(yù)測架構(gòu)。如前文解釋過的那樣,一個按幀模式或者按 場模式編碼的B圖像有兩個按幀模式或者按場模式編碼的基準(zhǔn)圖像。這兩個基準(zhǔn)圖像可以 都是前向基準(zhǔn)圖像,如圖14中所示。圖14表示一個要被編碼的、有兩個基準(zhǔn)圖像的B圖像 (140)。其中一個基準(zhǔn)圖像是前向基準(zhǔn)圖像(141),另一個是后向基準(zhǔn)圖像(142)。如圖14 中所示,他們兩個都處于相同的時間上向前的方向上。這兩個基準(zhǔn)圖像也可以雙雙都處于 相同的時間上向后的方向上,如圖15中所示。在圖15中,B圖像(140)有兩個都在時間上 向后的方向上的一個前向基準(zhǔn)圖像(141)和一個后向基準(zhǔn)圖像(142)。圖16表示本發(fā)明的 另一個實施例。如圖16中所示,B圖像(140)具有在時間上向前的方向上的一個前向基準(zhǔn) 圖像(141)和在時間上向后的方向上的一個后向基準(zhǔn)圖像(142)。 在MFIP中, 一個預(yù)測信號是運動補(bǔ)償信號的一個線性插值。 一個B圖像的MPIF
中的預(yù)測信號(pred)可以按下式計算 pred = Wiref^ref^+d (公式11) 在公式11中,變量refi和ref2是兩個基準(zhǔn)圖像。變量巧和w2是加權(quán)因子。變量 d的缺省值被設(shè)定為0??梢悦鞔_地為每個宏塊確定線性插值系數(shù)Wl、 w2、 d。如果re^和 ref2兩個都是前向基準(zhǔn)圖像或者都是后向基準(zhǔn)圖像,則基準(zhǔn)圖像re^是就時間距離來說更
14靠近B圖像的基準(zhǔn)圖像。對于雙向的基準(zhǔn)圖像來說,re^和ref2分別是前向基準(zhǔn)圖像和后 向基準(zhǔn)圖像。 —個MFIP宏塊的兩個運動矢量被彼此相對地編碼。ref2的運動矢量MV2,是用下 面的公式,通過將一個補(bǔ)償量DMV加到re^的成比例的運動矢量MVi而生成的MF2 =;D + D緣(公式12) 在公式12中,變量DMV是增量(S)運動矢量并是一個補(bǔ)償值。變量TI^和TR2分 別是當(dāng)前圖像與最近的基準(zhǔn)圖像re^和與最遠(yuǎn)的基準(zhǔn)圖像re&之間的時間距離、該時間距 離的近似值、與該時間距離成比例的距離、或與該時間距離的該近似值成比例的近似值。
在圖像級AFF中,一個B圖像可以被按一個B幀圖像或者按兩個B場圖像編碼。按 場模式處理MFIP—其中要被編碼的當(dāng)前B圖像按場結(jié)構(gòu)一的規(guī)則,在下文給出
用公式11生成預(yù)測信號。然而,refi和re&是由基準(zhǔn)場編號ref」dx—fws和ref— idx_bwd標(biāo)記的場。場re^和ref2既可以是頂場,也可以是底場。缺省的加權(quán)因子Wl和w2 分別是(.5, .5,0)和(2,-1,0)。 用公式12生成M、。由于兩個基準(zhǔn)圖像都是場結(jié)構(gòu)的,根據(jù)基準(zhǔn)場和當(dāng)前場之間 的時間距離確定TRi和TR2。 MFIP模式中基準(zhǔn)場編號ref_idx_fwd和ref_idx_bwd的代碼編號(code number) 遵循對場圖像的已知的常規(guī)約定。 AFF編碼中的圖像之間的時間距離,可以用變量一時間基準(zhǔn)(TR)—計算,或者通 過計算圖像編號并計算它們的差而計算。本發(fā)明的一個實施例是,對于圖像級AFF,TR按每 個場遞增l,并由一個常數(shù)(例如256)限制(wraped) 。 TR是場間隔(in field interval)。 設(shè)n為幀標(biāo)記或幀號。變量n每幀遞增l。如果某個具有幀標(biāo)記n的幀是按幀模式編碼的, 則這個幀的TR是2n。如果某個具有幀標(biāo)記n的幀是按場模式編碼的,則這個幀的第一場的 TR是2n,第二場的TR是2n+l 。 前面所作的說明僅是為了解釋和描述本發(fā)明的實施例。上述說明并非是窮舉性 的,也不是要把本發(fā)明限制到所公開的任何具體形式。按照以上教導(dǎo)可以有許多修改和變 體。 選擇上述實施例加以說明是為了解釋本發(fā)明的原理和一些實際應(yīng)用。前面的說明 使所述技術(shù)領(lǐng)域的其他熟練人員能把本發(fā)明應(yīng)用于各種實施例并考慮到各種適合特定用 途的修改。本發(fā)明的范圍應(yīng)由接下來的權(quán)利要求書限定。
權(quán)利要求
一種對具有多個圖像的圖像序列進(jìn)行編碼的方法,包括以幀編碼模式編碼所述多個圖像中的至少一個圖像;以場編碼模式編碼所述多個圖像中的至少一個圖像;其中所述以幀編碼模式編碼和以場編碼模式編碼的步驟各自包括編碼或解碼,并且當(dāng)所述多個圖像中的至少一個圖像以幀編碼模式編碼時,則所述多個圖像中的至少一個圖像以場編碼模式編碼,并且當(dāng)所述多個圖像中的至少一個圖像以幀編碼模式解碼時,則所述多個圖像中的至少一個圖像以場編碼模式解碼。
2. 如權(quán)利要求l的方法,其中如果所述多個圖像的所述至少一個圖像中的圖像以幀編 碼方式編碼,則構(gòu)成該圖像的兩個場被共同編碼,并且如果所述多個圖像的所述至少一個圖像中的圖像以場編碼模式編碼,則形成所述圖像 的兩個場被分開編碼,其中所述兩場中的一個場是頂場,另一個場是底場。
3. 如權(quán)利要求2的方法,其中在該幀編碼模式中,所述圖像被編碼為幀內(nèi)(I)圖像、預(yù) 測的(P)圖像、或雙預(yù)測的(B)圖像之一 ;并且其中所述預(yù)測的(P)圖像或所述雙預(yù)測的(B)圖像使用幀內(nèi)(I)圖像、預(yù)測的(P)圖 像、和雙預(yù)測的(B)圖像中的至少之一被編碼為已經(jīng)編碼的基準(zhǔn)圖像。
4. 如權(quán)利要求3的方法,其中所述基準(zhǔn)圖像處在相對于所述預(yù)測的(P)圖像或所述雙 預(yù)測的(B)圖像的向前或向后時間方向上。
5. 如權(quán)利要求3的方法,其中所述雙預(yù)測的(B)圖像根據(jù)至少兩個時間基準(zhǔn)圖像被編 碼,其中所述至少兩個時間基準(zhǔn)圖像同時處在相對于所述雙預(yù)測的(B)圖像的相同或不同 時間方向上。
6. 如權(quán)利要求2的方法,其中在所述場編碼模式中,所述圖像的所述兩場的一個當(dāng)前 場被編碼為幀內(nèi)(I)場、預(yù)測的(P)場、或雙預(yù)測的(B)場之一 ;禾口其中所述預(yù)測的(P)場和所述雙預(yù)測的(B)場中至少之一根據(jù)幀內(nèi)(I)場、預(yù)測的(P) 場、和雙向預(yù)測的(B)場中至少之一被編碼為已經(jīng)編碼的基準(zhǔn)場。
7. 如權(quán)利要求6的方法,其中所述基準(zhǔn)場處在相對于所述預(yù)測的(P)場或所述雙預(yù)測 的(B)場的向前或向后時間方向上。
8. 如權(quán)利要求6的方法,其中所述雙預(yù)測的(B)場根據(jù)至少兩個時間基準(zhǔn)場被編碼,其 中所述至少兩個時間基準(zhǔn)場同時處在相對于所述雙預(yù)測的(B)場的相同或不同時間方向 上。
9. 如權(quán)利要求6的方法,其中如果所述多個圖像中的所述至少一個圖像的第一場被編 碼為基準(zhǔn)場,則所述多個圖像中的所述至少一個圖像的所述第一場被用作為對所述多個圖 像中的所述至少一個圖像的第二場進(jìn)行編碼的基準(zhǔn)場。
10. —種用于對具有多個圖像的圖像序列進(jìn)行編碼的設(shè)備,包括 一個編碼單元,被配置成以幀編碼模式編碼所述多個圖像中的至少一個圖像,和以場編碼模式編碼所述多個圖像中的至少一個圖像;其中所述編碼單元被配置成執(zhí)行編碼或解碼,或者執(zhí)行編碼和解碼兩者; 其中當(dāng)所述多個圖像中的至少一個圖像以幀編碼模式被編碼時,則所述多個圖像中的至少一個圖像以場編碼模式被編碼;當(dāng)所述多個圖像中的至少一個圖像以幀編碼模式被解碼時,則所述多個圖像中的至少 一個圖像以場編碼模式被解碼。
11. 如權(quán)利要求10的設(shè)備,其中如果所述多個圖像中的至少一個圖像以所述幀編碼模 式被編碼,則構(gòu)成所述圖像的兩個場被共同編碼;禾口其中如果所述多個圖像中的所述至少一個圖像以場編碼模式被編碼,則構(gòu)成所述圖像 的兩場被分開編碼,其中所述兩場之一是頂場,并且另一個是底場。
12. 如權(quán)利要求ll的設(shè)備,其中在所述幀編碼模式中,所述圖像被編碼為幀內(nèi)(I)圖 像、預(yù)測的(P)圖像、或雙預(yù)測的(B)圖像之一 ;禾口其中所述預(yù)測的(P)圖像和所述雙預(yù)測的(B)圖像中的至少一個使用幀內(nèi)(I)圖像、 預(yù)測的(P)圖像和雙預(yù)測的(B)圖像中的至少一個被編碼為已經(jīng)編碼的基準(zhǔn)圖像。
13. 如權(quán)利要求12的設(shè)備,其中所述基準(zhǔn)圖像處在相對于所述預(yù)測的(P)圖像或所述 雙預(yù)測的(B)圖像的向后或向前時間方向上。
14. 如權(quán)利要求12的設(shè)備,其中所述雙向預(yù)測的(B)圖像根據(jù)至少兩個時間基準(zhǔn)圖像 被編碼,其中所述至少兩個時間基準(zhǔn)圖像都同時處在相對于所述雙預(yù)測的(B)圖像的相同 或不同方向上。
15. 如權(quán)利要求ll的設(shè)備,其中在所述場編碼模式中,所述圖像的所述兩場中的當(dāng)前 場被編碼為幀內(nèi)(I)場、預(yù)測的(P)場、和雙預(yù)測的(B)場之一 ;禾口其中所述預(yù)測的(P)場和所述雙預(yù)測的(B)場中至少之一根據(jù)幀內(nèi)(I)場、預(yù)測的(P) 場、和雙向預(yù)測的(B)場中至少之一被編碼為已經(jīng)編碼的基準(zhǔn)場。
16. 如權(quán)利要求15的設(shè)備,其中所述基準(zhǔn)場處在相對于所述預(yù)測的(P)場或所述雙預(yù) 測的(B)場的向前或向后的時間方向上。
17. 如權(quán)利要求15的設(shè)備,其中所述雙預(yù)測的(B)場根據(jù)至少兩個時間基準(zhǔn)場而被編 碼,其中所述至少兩個時間場同時處在相對于所述雙預(yù)測的(B)場的相同或相反方向上。
18. 如權(quán)利要求15的設(shè)備,其中如果所述多個圖像中的所述至少一個圖像的第一場被 編碼為基準(zhǔn)場,則所述多個圖像中的所述至少一個圖像的所述第一場被使用作為對所述多 個圖像的所述至少一個圖像的第二場進(jìn)行編碼的基準(zhǔn)場。
全文摘要
一種編碼或解碼數(shù)字視頻內(nèi)容的方法和系統(tǒng)。數(shù)字視頻內(nèi)容包含一個圖像流,每個圖像可能是幀內(nèi)的、預(yù)測的、或雙預(yù)測的圖像。每個圖像包含能被進(jìn)一步劃分成更小的塊的宏塊。該方法要求以幀模式或場模式編碼和解碼所述圖像流中的每個圖像。
文檔編號G06T9/00GK101715138SQ20091025413
公開日2010年5月26日 申請日期2002年11月21日 優(yōu)先權(quán)日2001年11月21日
發(fā)明者A·盧斯拉, K·帕努索龐, L·王, R·甘希, Y·于 申請人:通用儀器公司