專利名稱:使用平滑預測基于多層的視頻編碼和解碼方法以及視頻編碼器和解碼器的制作方法
技術(shù)領域:
與本發(fā)明一致的設備和方法通常涉及視頻編碼技術(shù),更具體地說,涉及
背景技術(shù):
隨著信息和通信技術(shù)(包括互聯(lián)網(wǎng))的發(fā)展,基于圖像的通信以及基于 本文的通信和基于語音的通信正在增加?,F(xiàn)有的基于文本的通信不足以滿足 消費者的各種需求。因此,對能夠提供各種類型信息(諸如文本、圖像和音 樂)的多媒體服務的供應正在增加。由于多媒體數(shù)據(jù)量大,因此多媒體數(shù)據(jù) 需要大容量存儲介質(zhì)并且傳輸時需要寬的帶寬。因此,為了發(fā)送多媒體數(shù)據(jù) (包括文本、圖像和音頻),壓縮數(shù)據(jù)是不可缺少的。
數(shù)據(jù)壓縮的基本原理是消除數(shù)據(jù)中的冗余??赏ㄟ^消除空域冗余(諸如 在圖像中重復相同顏色或?qū)ο蟮那闆r)、時域冗余(諸如相鄰幀之間存在微小
變化或重復相同音頻聲音的情況)或心理視覺(psychovisual)冗余(考慮人 類視覺和知覺能力對高頻不敏感的事實)來壓縮數(shù)據(jù)。在普通編碼方法中, 基于運動補償使用時域濾波來消除時域冗余,并且使用空域變換來消除空域冗余。
為了在已經(jīng)去除數(shù)據(jù)的冗余之后發(fā)送多媒體數(shù)據(jù),傳輸介質(zhì)是必需的。 性能根據(jù)傳輸介質(zhì)而不同。當前使用的傳輸介質(zhì)具有各種傳輸速度,其范圍 從超高速通信網(wǎng)絡的速度(能夠以每秒幾十兆的傳輸速率來傳輸數(shù)據(jù))到移 動通信網(wǎng)絡的速度(能夠以每秒384K比特的傳輸速率來傳輸數(shù)據(jù))。在這些 環(huán)境中,需要一種可分級視頻編碼方法,該方法能夠支持具有各種速度的傳 輸介質(zhì),或者能夠以適合每種傳輸環(huán)境的傳輸速度來傳輸多^ 某體。
這種可分級視頻編碼方法是指允許視頻分辨率、幀速率、信噪比(SNR) 等通過根據(jù)周圍的環(huán)境(諸如傳輸比特率、傳輸誤差率、系統(tǒng)源等)截去已 經(jīng)壓縮的比特流的 一 部分被調(diào)整。
目前,為了實現(xiàn)基于H.264的多層類型的可分級性,聯(lián)合視頻編碼組(JVT)正在制定標準(以下被稱為"H.264可分級擴展(SE)"), JVT是運 動圖像專家組(MPEG)和國際電信聯(lián)盟(ITU)的工作組。
H.264 SE和基于多層的可分級視頻編解碼器主要支持四種預測模式,即, 幀間預測、定向幀內(nèi)預測(以下被簡稱為"幀內(nèi)預測")、殘差預測和幀內(nèi)基 本(intra-base)預測。術(shù)語"預測"指示使用基于能夠在編碼器和解碼器中 共同使用的信息而產(chǎn)生的預測數(shù)據(jù)來壓縮地表示原始數(shù)據(jù)的技術(shù)。
在四種預測模式中,幀間預測是在具有現(xiàn)有單層結(jié)構(gòu)的視頻編解碼器中 通常使用的預測^t式。如圖1所示,幀間預測是這樣一種方法在至少一幅 參考畫面中搜索與當前畫面的任意塊(當前塊)最接近的塊,從搜索中獲得 能夠最好地表示當前塊的預測塊,并且量化當前塊和預測塊之間的差異。
根據(jù)參照參考畫面的方法,幀間預測被分類為雙向預測(使用兩幅參考 畫面)、前向預測(使用先前的參考畫面)和后向預測(使用后來的參考畫面)。
同時,幀內(nèi)預測是即使在基于H.264的基于單層的視頻編解碼器中也能 夠使用的預測方法。此外,幀內(nèi)預測是使用與當前塊相鄰的像素來預測當前 塊的方法。幀內(nèi)預測與其它預測方法的不同之處在于幀內(nèi)預測僅使用關(guān)于 當前畫面的信息,而不參照相同層的其它畫面和其它層的畫面。
幀內(nèi)基本預測可用于具有與當前畫面相同的時域位置的低層畫面(以下 被稱為"基本畫面")存在于具有多層結(jié)構(gòu)的視頻編解碼器的情況。如圖2所 示,可從與當前畫面的宏塊相應的基本畫面的宏塊有效地預測當前畫面的宏 塊。也就是說,當前畫面的宏塊與基本畫面的宏塊之間的差異被量化。
如果低層的分辨率和當前層的分辨率彼此不同,則在獲得差異之前將基 本畫面的分辨率必須上采樣到當前層的分辨率。在幀間預測的效率不高的情 況下(例如,在運動非??斓膱D像中或者在出現(xiàn)場景變換的圖像中),這種幀 內(nèi)基本預測非常有效。最終,帶有殘差預測的幀間預測(以下被簡稱為"殘 差預測")是將現(xiàn)有單層中的幀間預測擴展到多層形式的預測方法。根據(jù)圖3 的殘差預測方法,當前層幀間預測處理產(chǎn)生的差異不直接被量化,當前層產(chǎn) 生的差異和低層幀間預測處理產(chǎn)生的差異再彼此相減,并且將相減得到的結(jié) 果進行量化。
考慮各種視頻序列的特性,將上述四種預測方法中最有效的預測方法用 于形成畫面的各個宏塊。例如,幀間預測和殘差預測可主要用于運動慢的視 頻序列。相反,幀內(nèi)基本預測可主要用于運動快的視頻序列。
與具有單層結(jié)構(gòu)的視頻編解碼器相比,具有多層結(jié)構(gòu)的視頻編解碼器具 有相對復雜的預測結(jié)構(gòu),并且具有多層結(jié)構(gòu)的視頻編解碼器主要采用開環(huán)結(jié) 構(gòu),從而與具有單層結(jié)構(gòu)的視頻編解碼器相比,出現(xiàn)了大量的塊效應。具體 地說,上述殘差預測使用低層畫面的殘差信號,從而在殘差信號的特性與當 前層畫面的幀間預測信號的特性大不相同的情況下,可能出現(xiàn)過多的失真。
相反,當執(zhí)行幀內(nèi)基本預測時,用于當前畫面的宏塊(即,基本畫面的 宏塊)的預測信號不是原始信號,而是量化之后被恢復的信號。因此,預測 信號是能夠在編碼器和解碼器中共同獲得的信號,從而不會出現(xiàn)編碼器-解碼 器失配。具體地說,使用用于預測信號的平滑濾波器來獲得與當前畫面的宏 塊之間的差異,從而大大減少了塊效應
發(fā)明內(nèi)容
技術(shù)問題
根據(jù)如在當前H.264 SE的工作草稿(working draft )中已經(jīng)采用低復雜 度解碼條件,限制了幀內(nèi)基本預測的使用。也就是說,H.264 SE允許在滿足 特定條件的情況下使用幀內(nèi)基本預測,從而盡管以多層形式執(zhí)行編碼,但是 也可僅以與具有單層結(jié)構(gòu)的視頻編解碼器中的解碼相似的方式執(zhí)行解碼。
根據(jù)低復雜度解碼條件,幀內(nèi)基本預測僅用于與當前層的任意宏塊相應 的低層的宏塊的類型是幀內(nèi)預測模式或幀內(nèi)基本預測模式的情況。這是為了 減小依賴運動補償處理的操作量,所述運動補償處理在解碼處理中占據(jù)的操 作量最大。相反,因為限制使用幀內(nèi)基本預測,所以出現(xiàn)了對于運動快的圖 像性能降低的問題。
因此,在根據(jù)低復雜度解碼條件或其它條件使用幀間預測或殘差預測的 情況下,能夠減少各種失真(諸如編碼器-解碼器失配和塊效應)的技術(shù)是必 要的。
技術(shù)方案
因此,本發(fā)明的一方面涉及當在基于多層的視頻編解碼器中執(zhí)行幀間預 觀'J或殘差預測時提高編碼性能。
本發(fā)明提供一種基于多層的視頻編碼方法,所述方法包括步驟(a)計 算用于與當前畫面的任意塊相應的低層畫面的塊的幀間預測塊和低層畫面的
塊之間的差異;(b)將計算的差異與用于當前畫面的塊的幀間預測塊相加; (c)使用平滑濾波器對通過相加產(chǎn)生的塊進行平滑;以及(d)對當前畫面 的塊與通過平滑產(chǎn)生的塊之間的差異進行編碼。
另外,本發(fā)明提供一種基于多層的視頻編碼方法,所述方法包括步驟 (a)產(chǎn)生用于當前畫面的任意塊的幀間預測塊;(b)使用平滑濾波器對產(chǎn)生 的幀間預測塊進行平滑;(c)計算當前畫面的塊和通過平滑產(chǎn)生的塊之間的 差異;以及(d)對所述差異進行編碼。
為了實現(xiàn)上述,本發(fā)明提供一種基于多層的視頻解碼方法,所述方法包 括步驟(a)基于當前畫面的塊的紋理數(shù)據(jù),恢復包含在輸入比特流中的當 前畫面的任意塊的殘差信號;(b)恢復包含在比特流中且與當前畫面的塊相 應的低層畫面的塊的殘差信號;(c)將在步驟(b)恢復的殘差信號與用于當 前畫面的幀間預測塊相加;(d)使用平滑濾波器對通過相加產(chǎn)生的塊進行平 滑;以及(e)將在步驟(a)恢復的殘差信號與通過平滑產(chǎn)生的塊相加。
本發(fā)明還提供一種基于多層的視頻編碼器,包括用于產(chǎn)生用于當前畫 面的任意塊的幀間預測塊的裝置;用于使用平滑濾波器對產(chǎn)生的幀間預測塊 進行平滑的裝置;用于計算當前畫面的塊和通過平滑產(chǎn)生的塊之間的差異的 裝置;以及用于對差異進行編碼的裝置。
本發(fā)明還提供一種基于多層的視頻編碼器,包括基于用于當前畫面的 任意塊的紋理數(shù)據(jù)恢復包含在輸入比特流中的當前畫面的所述塊的殘差信號 的裝置;恢復包含在比特流中且與當前畫面的塊相應的低層畫面的塊的殘差 信號的裝置;將在步驟(b)恢復的殘差信號與用于當前畫面的幀間預測塊相 加的裝置;使用平滑濾波器對通過相加產(chǎn)生的塊進行平滑的裝置;以及將在 步驟(a)恢復的殘差信號與通過平滑產(chǎn)生的塊相加的裝置。
通過下面結(jié)合附圖進行的詳細描述,本發(fā)明的上述各方面將會變得更加 清楚地理解,其中
圖1是示出相關(guān)方法的示圖2是示出相關(guān)幀內(nèi)基本預測方法的示圖3是示出相關(guān)殘差預測方法的示圖5是示出將平滑濾波器應用于具有4 x 4像素大小的子塊的縱向邊界的 示例的示圖6是示出將平滑濾波器應用于具有4 x 4像素大小的子塊的橫向邊界的 示例的示圖7是示出根據(jù)本發(fā)明的示例性實施例的視頻編碼器的結(jié)構(gòu)的框圖8是示出根據(jù)本發(fā)明的示例性實施例的視頻解碼器的結(jié)構(gòu)的框圖;以
及
圖9是示出用于實現(xiàn)圖7的視頻編碼器和圖8的視頻解碼器的系統(tǒng)的結(jié) 構(gòu)的示圖。
具體實施例方式
通過參照稍后結(jié)合附圖詳細描述的示例性實施例,本發(fā)明的各方面和實 現(xiàn)它們的方法將是清楚的。然而,本發(fā)明不限于下面公開的示例性實施例, 而是可以各種方式來實現(xiàn)。此外,提供示例性實施例以完成本發(fā)明的公開, 并且全面地將本發(fā)明的范圍告知本領域的技術(shù)人員。本發(fā)明僅由權(quán)利要求來 限定。在不同的附圖中,相同的標號始終指示相同或相似的部件。
假設當前畫面的塊是O,..,通過對當前畫面執(zhí)行幀間預測獲得的預測塊是 i5,,與當前畫面的塊相應的基本畫面的塊是<9fl ,通過對基本畫面^U亍幀間預 測獲得的預測塊是A,則通過從塊"減去預測塊A來獲得包含在塊O,中的殘 差信號&。
在這種情況下,塊化、A和^是在已經(jīng)被量化之后恢復的值,在開環(huán)方 法情況下,塊O,和S,表示原始信號,并且在閉環(huán)方法的情況下表示在已經(jīng)被 量化之后恢復的值。在這種情況下,假設當前畫面中期望被編碼的值是&, 可通過下面的等式1來表示殘差預測 <formula>formula see original document page 9</formula> ( 1 )
同時,可通過下面的等式2來表示幀內(nèi)基本預測 <formula>formula see original document page 9</formula> ( 2 )
當將等式1和等式2相互進行比較時,在第一眼它們好像沒有共同點。 然而,當分別通過下面的等式3和等式4來表示所述等式時,可以找到它們 之間的相似性。
<formula>formula see original document page 10</formula>在等式4中,符號U表示上采樣函數(shù),符號B表示去塊(deblock )函數(shù)。 由于上采樣函數(shù)用在當前層的分辨率與低層的分辨率彼此不同的情況,因此
'當將等式3和等式4進行比較時,口2是兩個等式中共有的,并且最顯著 的差別是在等式3中使用當前層的幀間預測塊尸,,而在等式4中使用低層 的幀間預測塊/V此外,在幀內(nèi)基本預測中,當使用去塊函數(shù)和上采樣函數(shù) 時,恢復的畫面的圖像被平滑,從而減少了塊效應。
在等式3中,將使用&獲得的基本畫面的殘差信號^與通過對當前畫面 執(zhí)行幀間預測獲得的塊S,相加,因此在層或塊效應之間可發(fā)生失配。如果使 用了幀內(nèi)基本預測盡管可以減輕這些問題,但是在相對于殘差預測幀內(nèi)基本 預測的效率不高的情況下,不能使用幀內(nèi)基本預測。此外,在使用低復雜度 解碼條件的情況下,即使在幀內(nèi)基本預測有效的情形下,也增加不使用幀內(nèi) 基本預測的塊,從而性能被顯著惡化。因此,必須考慮在將殘差預測應用于 這種情況的同時減少塊效應的方法。
在本發(fā)明中,另外將平滑函數(shù)F分配給等式3,因此,可補充現(xiàn)有殘差 預測。根據(jù)本發(fā)明,通過以下的等式5來表示被量化的當前塊的數(shù)據(jù)/ ,.:
<formula>formula see original document page 10</formula>
可不經(jīng)過改變將基于等式5的預測模式應用于幀間預測。也就是說,預 測模式可被看作是在幀間預測中^為0的情況,可通過下面的等式6來表示
<formula>formula see original document page 10</formula>根據(jù)上述等式5和等式6,當執(zhí)行現(xiàn)有殘差預測或幀間預測時采用平滑 濾波的方法被定義為術(shù)語"平滑預測"。參照圖4更加詳細的描述執(zhí)行平滑預 測的處理。在圖4中,將對當前畫面20的任意塊(以下稱為"當前塊")進 行編碼的處理作為示例。與當前塊20相應的基本畫面中的塊IO被稱為"基 本塊"。
首先,在步驟S1,基于運動向量,使用基本塊IO和與基本塊IO相應的 低層的相鄰參考畫面(前向參考畫面和后向參考畫面)中的塊11和塊12, 來產(chǎn)生用于基本塊10的幀間預測塊13。以下,在步驟S2計算基本塊10和
預測塊13之間的差異(與等式5中的^相應)。同時,在步驟S3,基于運動 向量,使用當前塊20和與當前塊20相應的當前層的相鄰參考畫面中的塊21 和塊22,來產(chǎn)生用于當前塊20的幀間預測塊23 (與等式5中的A相應)???在步驟S1和S2之前執(zhí)行步驟S3。通常。術(shù)語"幀間預測"是指用于從在期 望被編碼的畫面內(nèi)與任意塊相應的參考畫面中的一幅圖像(或多幅圖像)獲 得的所述塊的預測塊。通過運動向量來指示塊和圖像之間的相應關(guān)系。通常, 在單個參考畫面的情況下,幀間預測塊是指相應圖像本身,在多幅參考畫面
的情況下,幀間預測塊是指相應圖像的加權(quán)和。
其后,在步驟S4,將預測塊23與在步驟S2獲得差異相加。在步驟S5, 使用平滑濾波器對作為相加的結(jié)果產(chǎn)生的塊(與等式5中的Pp+RB相應)進 行平滑。最終,在步驟S6計算當前塊20和作為平滑的結(jié)果產(chǎn)生的塊(與等 式5中的F(PF+Re)相應)之間的差異,接著在步驟S7對差異進行量化。
圖4示出基于殘差預測的平滑預測處理。如果基于幀間預測的平滑預測 處理比這種處理簡單得多,則因為在等式5中省略了與低層上的計算相關(guān)的 A,所以可省略結(jié)合圖4描述的所有步驟Sl、 S2和S4。因此,使用平滑濾 波器對基于當前層產(chǎn)生的幀間預測塊23進行平滑,接著將當前塊20和通過 平滑產(chǎn)生的塊(與等式6中的F(P。相應)之間的差異量化。
同時,可使用實際應用于平滑預測的不同類型的平滑濾波器。首先,可 考慮基于等式4的平滑函數(shù)。以最簡單的方式,可僅以去塊函數(shù)(B)來形成 平滑函數(shù)(F),或者平滑函數(shù)(F)包括去塊函數(shù)(B)和函數(shù)(f/.D)。
在當前層的分辨率與低層的分辨率彼此不同時,可應用函數(shù)(n. 5),
即,應用去塊函數(shù)(B),接著順序應用下采樣函數(shù)(D)和上采樣函數(shù)(U)。
相反,在當前層的分辨率與低層的分辨率相同時,可僅應用去塊函數(shù)(B)。
總之,等式7如下
在當前層的分辨率與低層的分辨率彼此不同時
F = U-D5
在當前層的分辨率與低層的分辨率相同時
F = B (7)
由于F是應用于當前層的分辨率的函數(shù),因此在應用上采樣函數(shù)(U) 之前應用下采樣函數(shù)(D)。這樣,即使在幀間預測或殘差預測中,也能如在 幀內(nèi)基本預測一樣有效地消除去塊效應。
同時,由于去塊函數(shù)(D)和上采樣函數(shù)(U)中的每一個主要執(zhí)行平滑 任務,因此任務彼此覆蓋。此外,去塊函數(shù)、上采樣函數(shù)和下采樣函數(shù)在應 用時需要相當大量的操作,下采樣函數(shù)承擔非常有力的低通濾波,從而當執(zhí) 行預測時荻得的圖像的細節(jié)會被惡化。
因此,平滑函數(shù)(F)允許以線性耦合形式呈現(xiàn)邊界像素和它們的相鄰像 素,從而通過少量操作執(zhí)行應用平滑濾波器的處理。
圖5和圖6是示出平滑濾波器的應用示例,并且顯示將平滑濾波器應用 于子塊的縱向邊界和橫向邊界的示例,每個子塊具有4x4的大小。在圖5和 圖6中,能夠以邊界像素和它們的相鄰像素線性耦合的形式對邊界像素x(n-l) 和x(n)進行平滑。如果當通過x,(n-l)和x,(n)來表示對像素x(n-l)和x(n)使用 平滑濾波器時獲得的結(jié)果,則可通過下面的等式8來表示x,(n-l)和x,(n):
<formula>formula see original document page 12</formula>( 8 )
其中,可以適當?shù)剡x擇a、 / *和〃使得其和為1。例如,當在等式8 中《* = 1/4, = 1/2, 〃 = 1/4時,可相對于相鄰像素增加相應像素的權(quán)值。 在等式8中,還有一群像素可被選擇為相鄰像素。
當使用這種簡單類型的平滑濾波器(F)時,可大大減少操作量,并且可
一定程度上防止當執(zhí)行下采樣時產(chǎn)生的圖像細節(jié)惡化現(xiàn)象。
可選擇性地與四種現(xiàn)有預測方法一起使用上述平滑預測方法。選擇性地 使用平滑預測方法的原因是因為當平滑預測方法用于塊尸,和塊&的特性不 匹配的圖像時,平滑預測方法產(chǎn)生效果,而當平滑預測方法用于塊P,,和塊A 的特性匹配的圖像時,可能導致性能惡化。
因此,為每個宏塊分別提供標記,并且允許編碼器基于標記的值選擇性 地使用平滑預測方法和現(xiàn)有預測方法。解碼器讀取標記,因此可確定是否已 經(jīng)使用過平滑預測。通常,相對于所有塊,出現(xiàn)效應的塊的數(shù)量太多,從而 期望可通過消除塊效應獲得的圖像質(zhì)量改善效果優(yōu)于從由于添加了標記出現(xiàn) 的附加位獲得的圖像質(zhì)量改善效果。
圖7是示出根據(jù)本發(fā)明的實施例的視頻編碼器100的結(jié)構(gòu)的框圖。在等 式1至等式8的描述中,基于構(gòu)成畫面的塊(宏塊或子塊)進行描述。然而, 在下面的描述中,從包括塊的畫面的角度進行描述。為了表述統(tǒng)一,使用指 示畫面下標字符"F"表示塊標識符,例如,通過i^表示包括塊&的畫面。
視頻編碼器100執(zhí)行的操作處理可被分為四步。操作處理包括第一步,
計算用于與當前畫面的任意塊相應的低層畫面的塊的幀間預測塊與低層的塊
之間的差異;第二步,將計算的差異與用于當前畫面的塊的幀間預測塊相加; 第三步,使用平滑濾波器對通過相加產(chǎn)生的塊進行平滑;以及第四步,對當 前畫面的塊與通過平滑產(chǎn)生的塊之間的差異進行編碼。
首先,描述第一步,將當前畫面C輸入到運動估計單元105、緩沖器101、 減法器115和下采樣器103。
下采樣器103對當前畫面&,執(zhí)行空域和/或時域下采樣,并且產(chǎn)生低層 畫面&。
運動估計單元205參照相鄰畫面F。a,對低層畫面F。B執(zhí)行運動估計,從而 獲得運動向量MVB。上述相鄰畫面被稱為"參考畫面"。通常,塊匹配算法 廣泛用于執(zhí)行運動估計。也就是說,當在移動以像素為基礎或以子像素(2/2 像素、1/4像素等)為基礎的參考畫面的特定搜索區(qū)域內(nèi)給出的塊的同時最小 化誤差時獲得的位移被估計為運動向量??墒褂霉潭ù笮〉膲K匹配方法執(zhí)行 運動估計,并且還可使用基于分級可變大小塊匹配(HVSBM)的分級方法, 諸如H.264。
如果以開環(huán)編解碼器的形式形成視頻編碼器100,則存儲在緩沖器201 中的原始相鄰畫面/^,不經(jīng)過改變而被用作參考畫面。相反,如果以閉環(huán)編解 碼器的形式形成視頻編碼器100,則編碼之后的解碼的圖像(未顯示)被用 作參考畫面。在本發(fā)明中,基于開環(huán)編解碼器進行描述,但不限于此。
將運動估計單元205獲得的運動向量MVB提供給運動補償單元210。運 動補償單元210使用運動向量MVB來補償參考畫面i^,的運動,并且產(chǎn)生用 于當前畫面的預測畫面i^。當使用雙向參考時,可通過計算運動補償?shù)膮⒖?畫面的平均來獲得預測畫面。相反,當使用單向參考時,預測畫面可與運動 補償?shù)膮⒖籍嬅嫦嗤?。預測畫面F^包括多個幀間預測塊PB。
同時,減法器215計算低層畫面i^和預測畫面i^之間的差異,并且產(chǎn) 生殘差畫面&..。從以塊為基礎的觀點來看,這種差異計算處理可被稱為計算 包含在低層畫面《w中的塊A和包含在預測畫面Fra中的殘差塊之間的差的 處理。將預測畫面&提供給加法器135。如果層的分辨率彼此不同,則通過 上采樣器140將預測畫面i^上采樣到當前層的分辨率,并且接著將其提供給 加法器135。
以下,描述第二步。將當前畫面&,.輸入到運動估計單元105、緩沖器101
和減法器115。運動估計單元105參照相鄰畫面參考對當前畫面執(zhí)行運動估 計,從而獲得運動向量MVF。由于執(zhí)行運動估計的處理與在運動估計單元205 中進行的處理相同,因此可省略重復的描述。
將通過運動估計單元105獲得的運動向量MVF提供給運動補償單元110。 運動補償單元110使用運動向量MVF來補償參考畫面i^,.的運動,并且產(chǎn)生 用于當前畫面的子頁測畫面。
其后,加法器135將預測畫面&,.和從低層提供的殘差畫面&相加。從 以塊為基礎的觀點來看,相加處理可被稱為將包含在預測畫面C中的幀間預 測塊PF和包含在殘差畫面中的殘差塊&相加的處理。
以下,描述第三步。平滑濾波器單元130使用平滑濾波器對加法器135 的輸出&, + /^進行平滑。
可以以各種形式實現(xiàn)平滑濾波器的平滑函數(shù)。例如,如等式7所述,當 層的分辨率相同時,可不經(jīng)過改變將去塊函數(shù)用作平滑濾波器的平滑函數(shù)。
相反,當層的分辨率不同時,可將去塊函數(shù)、上采樣函數(shù)和下采樣函數(shù)的結(jié) 合用作平滑函數(shù)。
此外,如等式8所述,平滑函數(shù)可具有平滑的塊和邊界像素和它們的相 鄰像素之間線性耦合的形式。具體地,如圖5和圖6所示,相鄰像素是與邊 界像素相鄰的像素,每個邊界像素的權(quán)值可被定義為1/2,并且每個相鄰像素 的權(quán)值可被定義為1/4。
最后,描述第四步。減法器115產(chǎn)生當前畫面F。,.和通過平滑產(chǎn)生的畫面 之間的差異&,,。從以塊為基礎的觀點來看,產(chǎn)生差異的處理可被稱為對包含 在當前畫面i^.中的塊0,.和通過平滑產(chǎn)生的等式5的塊F(S,+7 ,)執(zhí)行減法的 處理。
變換單元120對deferential畫面&執(zhí)行空域變換,并且產(chǎn)生變換系數(shù) F /??沼蜃儞Q方法可采用離散余弦變換(DCT),小波變換等。在使用DCT 的情況下,變換系數(shù)可以是DCT系數(shù),在使用小波變換的情況下,變換系數(shù) 可以是小波系數(shù)。
量化單元125對變換系數(shù)進行量化。量化是指將由任意實數(shù)值表示的變 換系數(shù)轉(zhuǎn)換為離散值的處理。例如,量化單元125以這樣的方式執(zhí)行量化 以預定量化階劃分由任意實數(shù)值表示的變換系數(shù),接著將劃分的結(jié)果舍入
(roundoff)為整數(shù)值。
同時,經(jīng)由變換單元220和量化單元225將低層的殘差畫面C轉(zhuǎn)換為量
化系數(shù)FJ。
熵編碼單元150對運動估計單元105估計的運動向量MVF、運動估計單 元205估計的運動向量MVB、量化單元125提供的量化系數(shù)F,/和量化單元 225提供的量化系數(shù)/^/進行無損失地編碼,并且產(chǎn)生比特流。這種無損失編 碼和采用Huffman編碼、算術(shù)編碼、可變長度編碼和各種其它方法。
比特流還可包括指示是否已經(jīng)通過本發(fā)明提出的平滑預測對量化系數(shù) F,/進行編碼(即,是否已經(jīng)通過步驟1至4對量化系數(shù)/^/進行編碼)的 標記。
目前為止,已經(jīng)結(jié)合圖7描述了實際實現(xiàn)等式5的數(shù)學公式的處理。本 發(fā)明不限于此,在考慮等式5中的&被設置為"0"(即,單層特性)的情況 下,可基于等式6的數(shù)學公式來實現(xiàn)本發(fā)明。這是可以應用于單層的方法, 并且可按這樣的方式來實現(xiàn)該方法在圖7中省略了低層的操作過程,并且 在不通過加法器135的情況下,將從運動補償單元110輸出的預測畫面&,,直 接輸入到平滑濾波器130。因此,不提供單獨的附圖。
根據(jù)上述示例性實施例的視頻編碼方法可包括步驟對當前畫面的任意 塊產(chǎn)生幀間預測塊,使用平滑濾波器對產(chǎn)生的幀間預測塊進行平滑,計算當 前畫面的塊與通過平滑產(chǎn)生的塊之間的差異,并且對所述差異進行編碼。
圖8是示出根據(jù)本發(fā)明的示例性實施例的視頻解碼器300的結(jié)構(gòu)的框圖。
可將視頻編碼器100執(zhí)行的操作過程分為五步。操作過程包括第一步, 基于用于當前畫面的塊的紋理(texture)數(shù)據(jù),恢復包含在輸入比特流中的 當前畫面的任意塊的殘差信號;第二步,恢復包含在比特流中且與當前塊的 塊相應的低層畫面的塊的殘差信號;第三步,將在第二步恢復的殘差信號與 用于當前畫面的幀間預測塊相加;第四步,使用平滑濾波器對通過相加產(chǎn)生 的塊進行平滑;以及第五步,將在第一步恢復的殘差信號與通過平滑產(chǎn)生的 塊相加。
首先,下面描述第一步。熵解碼單元305無損失地對輸入比特流、當前 畫面的紋理數(shù)據(jù)/^/-;、低層畫面的紋理數(shù)據(jù)f;/ (具有與當前畫面相同的時域 位置的畫面)、當前畫面的運動向量MVp和低層的運動向量MVB進行解碼。 在這種情況下,可在視頻編碼器100的標記包含在比特流中的情況下執(zhí) 行下面的操作步驟,所述標記指示已經(jīng)使用本發(fā)明中提出的平滑預測執(zhí)行編碼。
將當前畫面的紋理數(shù)據(jù)^;/提供給逆量化單元310,并且將低層畫面的
紋理數(shù)據(jù)/^/提供給逆量化單元410。將當前畫面的運動向量MVf提供給逸 動補償單元350,并且將低層的運動向量MVB提供給運動補償單元450。
逆量化單元310對提供的當前畫面的紋理數(shù)據(jù)i^/進行逆量化。逆量化 處理是使用在量化處理中使用的量化表從通過量化處理產(chǎn)生的索引恢復匹配 值的處理。
逆變換單元320對逆量化結(jié)果執(zhí)行逆量化。以與編碼器的變換處理的順 序相反的順序執(zhí)行逆變換處理,特別地,可采用逆DCT、逆小波變換等。
作為逆變換的結(jié)果,恢復關(guān)于當前畫面的殘差畫面F,。殘差畫面&,包 括多個殘差信號i ,,(即,多個殘差塊)。
同時,下面描述第二步。逆量化單元410對提供的低層畫面的紋理數(shù)據(jù) i^/進行逆量化,逆變換單元420對逆量化結(jié)果執(zhí)行逆變換。作為變換結(jié)果, 恢復關(guān)于低層畫面的殘差畫面。殘差畫面Fm包括多個殘差信號& 。
將恢復的殘差畫面i^提供給加法器360。在這種情況下,當層的分辨率 彼此不同時,通過上采樣器380將殘差畫面i^上采樣到當前層的分辨率,接 著將其提供給加法器360。
其后,下面描述第三步。
運動補償單元350使用運動向量MVp對從緩沖器340提供的參考畫面 /^執(zhí)行運動補償,因此產(chǎn)生幀間預測畫面&,。參考畫面&,,是指先前恢復并 接著存儲在緩沖器340中的當前畫面的相鄰畫面。
加法器360將預測畫面&,與從低層提供的殘差畫面&相加。從以塊為 基礎的觀點來看,相加處理可被稱為將包含在預測畫面《,,.中的幀間預測塊尸,. 與包含在殘差畫面F/w中的殘差塊&相加的處理。
其后,下面描述第四步。平滑濾波器370使用平滑濾波器對加法器360 的輸出&, + ^進行平滑。
能夠以各種方式實現(xiàn)用于平滑濾波器的平滑函數(shù)。例如,如等式7所述, 當層的分辨率相同時,可以不經(jīng)過改變地將去塊函數(shù)作為用于平滑濾波器的 平滑函數(shù)。相反,當層的分辨率不同時,可將去塊函數(shù)、下采樣函數(shù)和上采
樣函數(shù)的結(jié)合用作平滑函數(shù)。
此外,如等式8所述,平滑函數(shù)可具有這樣的形式已平滑的塊的邊界 像素及其相鄰像素線性耦合。具體地,如圖5和圖6所示,相鄰像素是與邊 界像素相鄰的像素,每個邊界像素的權(quán)值可被定義為1/2,并且每個相鄰像素 的權(quán)值可被定義為1/4。
最后,下面描述第五步。加法器330將從逆變換單元320提供的殘差畫 面^.與通過平滑產(chǎn)生的畫面相加。從以塊為基礎的觀點來看,相加處理可被 稱為將通過平滑產(chǎn)生的塊(等式5中的F(i^ )與包含在殘差畫面F,中的 塊i ,..相加的處理。作為加法器330的相加結(jié)果,最終恢復當前畫面F。,.。
目前為止,在圖7和圖8的描述中,已經(jīng)描述了對由兩個層形成的視頻 幀進行編碼的示例。然而,本發(fā)明不限于此,并且可將本發(fā)明應用于對具有 三層或更多層結(jié)構(gòu)的視頻幀的編碼。
另外,在圖7和圖8的描述中,^L頻編碼器100將MVF (當前層的運動 向量)和MVB (低層的運動向量)發(fā)送到視頻解碼器300。然而,視頻編碼 器IOO可以僅發(fā)送MVB,視頻解碼器300將MVB用作當前層的運動向量。
圖9是示出用于實現(xiàn)視頻編碼器IOO或視頻解碼器300的系統(tǒng)的結(jié)構(gòu)的 示圖。所述系統(tǒng)包括TV、機頂盒、桌上計算機、膝上型計算機、掌上計算 機、個人數(shù)字助理(PDA)或視頻或圖像存儲裝置(例如,錄像機(VCR) 或數(shù)字錄像機(DVR))。此外,所述系統(tǒng)可以以包括上述裝置的結(jié)合的形式 來形成,或者以上述一個或多個裝置作為在其它裝置的一部分包含在其它裝 置中的形式來形成。所述系統(tǒng)可包括至少一個視頻源910、 一個或多個輸入/ 輸出裝置920、處理器940、存儲器950和顯示裝置930。
視頻源910可以是電視(TV)接收器或VCR或者其它視頻存儲裝置。 此外,源910可以是一個或多個使用互聯(lián)網(wǎng)、廣域網(wǎng)(WAN)、局域網(wǎng)(LAN)、 地面廣播系統(tǒng)、線纜網(wǎng)絡、衛(wèi)星通信網(wǎng)絡、無線網(wǎng)絡或電話網(wǎng)絡從服務器接 收視頻的網(wǎng)絡連接。此外,所述源可以以上述網(wǎng)絡的結(jié)合的形式來形成,或 者以上述一個或多個網(wǎng)絡作為在其它網(wǎng)絡的一部分包含在其它網(wǎng)絡中的形式 來形成。
輸入/輸出裝置920、處理器940、存儲器950通過通信介質(zhì)960來執(zhí)行 通信。通信介質(zhì)960可以是通信總線、通信網(wǎng)絡或一個或多個內(nèi)部連接電路。 可基于存儲在存儲器950中的一個或多個軟件程序,通過處理器940處理從 源910接收的輸入視頻數(shù)據(jù),并且通過處理器940處理從源910接收的輸入 視頻數(shù)據(jù)以產(chǎn)生提供給顯示裝置930的輸出視頻。
具體地,存儲在存儲器950中的軟件程序可包括可分級視頻編解碼器以 執(zhí)行根據(jù)本發(fā)明的方法。編碼器或編解碼器可被存儲在存儲器950中,或者 可從存儲介質(zhì)(諸如壓縮盤(CD)、只讀存儲器(ROM)或軟盤)中讀取, 或者經(jīng)由各種網(wǎng)絡從預定服務器下載。編碼器或編解碼器可被軟件程序或硬 件電路替代,或者可被軟件程序和硬件電路的結(jié)合替代。
產(chǎn)業(yè)上的可利用性 本發(fā)明能夠提高使用殘差預測或幀間預測的編解碼器的性能。 具體地,本發(fā)明能夠根據(jù)低復雜度解碼條件提高使用幀內(nèi)基本預測的編 解碼器的性能。
盡管已經(jīng)為了示例性的目的公開了本發(fā)明的示例性實施例,但是本領域的技 術(shù)人員將理解,在不脫離權(quán)利要求中公開的本發(fā)明的范圍和精神的情況下, 可以進行各種修改、添加和替換。
權(quán)利要求
1、一種基于多層的視頻編碼方法,包括a計算用于與當前畫面的任意塊相應的低層畫面的塊的幀間預測塊和低層畫面的塊之間的差異;b將計算的差異與用于當前畫面的塊的幀間預測塊相加;c使用平滑濾波器對通過相加產(chǎn)生的塊進行平滑;以及d對當前畫面的塊與通過平滑產(chǎn)生的塊之間的差異進行編碼。
2、 如權(quán)利要求1所述的基于多層的視頻編碼方法,其中,通過運動估計 處理和運動補償處理來產(chǎn)生用于低層畫面的塊的幀間預測塊和用于當前畫面的塊的幀間預測塊。
3、 如權(quán)利要求1所述的基于多層的視頻編碼方法,其中,在當前畫面的 分辨率與低層畫面的分辨率相同時,用于平滑濾波器的平滑函數(shù)是去塊函數(shù)。
4、 如權(quán)利要求1所述的基于多層的視頻編碼方法,其中,在當前畫面的 分辨率與低層畫面的分辨率不同時,用于平滑濾波器的平滑函數(shù)是去塊函數(shù)、下采樣函數(shù)和上采樣函數(shù)的結(jié)合。
5、 如權(quán)利要求1所述的基于多層的視頻編碼方法,其中,以平滑的塊的 邊界像素與所述邊界像素的相鄰像素線性耦合的形式來表示用于平滑濾波器的平滑函數(shù)。
6、 如權(quán)利要求5所述的基于多層的視頻編碼方法,其中,所述邊界像素 中的每一個的權(quán)值是1/2,所述相鄰像素的每一個的權(quán)值是1/4。
7、 如權(quán)利要求1所述的基于多層的視頻編碼方法,還包括產(chǎn)生包括標 記和編碼的差異的比特流,所述標記指示是否已經(jīng)通過操作a至d對所述編 碼的差異進行編碼。
8、 如權(quán)利要求1所述的基于多層的視頻編碼方法,其中,操作d包括 通過對差異執(zhí)行空域變換來產(chǎn)生變換系數(shù); 通過對變換系數(shù)進行量化來產(chǎn)生量化的系數(shù);以及 無損失地對量化的系數(shù)進行編碼。
9、 一種基于多層的視頻編碼方法,包括 a產(chǎn)生用于當前畫面的塊的幀間預測塊;b使用平滑濾波器對產(chǎn)生的幀間預測塊進行平滑; c計算當前畫面的塊和通過平滑產(chǎn)生的塊之間的差異;以及d對所述差異進行編碼。
10、 如權(quán)利要求9所述的基于多層的視頻編碼方法,其中,通過運動估 計處理和運動補償處理產(chǎn)生幀間預測塊。
11、 如權(quán)利要求9所述的基于多層的視頻編碼方法,其中,以平滑的塊 的邊界像素與所述邊界像素的相鄰像素線性耦合的形式來表示用于平滑濾波 器的平滑函數(shù)。
12、 如權(quán)利要求11所述的基于多層的視頻編碼方法,其中,所述邊界像 素中的每一個的權(quán)值是1/2,所述相鄰像素的每一個的權(quán)值是1/4。
13、 如權(quán)利要求9所述的基于多層的視頻編碼方法,還包括產(chǎn)生包括 標記和編碼的差異的比特流,所述標記指示是否已經(jīng)通過操作a至d對所述 編碼的差異進行編碼。
14、 一種基于多層的視頻解碼方法,包括a基于當前畫面的塊的紋理數(shù)據(jù),恢復包含在輸入比特流中的當前畫面 的塊的殘差信號;b恢復包含在比特流中且與當前畫面的塊相應的低層畫面的塊的殘差信c將在步驟b恢復的底層畫面的塊殘差信號與用于當前畫面的幀間預測 塊相加;d使用平滑濾波器對通過相加產(chǎn)生的塊進行平滑;以及e將在步驟a恢復的當前畫面的塊殘差信號與通過平滑產(chǎn)生的塊相加。
15、 如權(quán)利要求14所述的基于多層的視頻解碼方法,其中,在當前畫面 的分辨率與低層畫面的分辨率相同時,用于平滑濾波器的平滑函數(shù)是去塊函數(shù)。
16、 如權(quán)利要求14所述的基于多層的視頻解碼方法,其中,在當前畫面 的分辨率與低層畫面的分辨率不同時,用于平滑濾波器的平滑函數(shù)是去塊函數(shù)、下采樣函數(shù)和上采樣函數(shù)的結(jié)合。
17、 如權(quán)利要求14所述的基于多層的視頻解碼方法,其中,以平滑的塊 的邊界像素與所述邊界像素的相鄰像素線性耦合的形式來表示用于平滑濾波 器的平滑函數(shù)。
18、 如權(quán)利要求17所述的基于多層的視頻解碼方法,其中,所述邊界像 素中的每一個的權(quán)值是1/2,所述相鄰像素的每一個的權(quán)值是1/4。
19、 如權(quán)利要求14所述的基于多層的視頻解碼方法,還包括解釋標記, 所述標記指示是否已經(jīng)使用平滑預測對當前畫面的塊進行編碼,其中,根據(jù) 所述標記的值執(zhí)行操作c至e。
20、 如權(quán)利要求14所述的基于多層的視頻解碼方法,其中,操作a包括 對用于當前畫面的塊的紋理數(shù)據(jù)執(zhí)行第 一逆空域變換,并且從第 一逆空域變 換獲得逆量化結(jié)果;其中,操作(b)包括對用于低層畫面的塊的紋理數(shù)據(jù)執(zhí)行第二逆空域 變換,并且從第二逆空域變換獲得逆量化結(jié)果。
21、 一種基于多層的視頻編碼器,包括計算器,計算用于與當前畫面的塊相應的低層畫面的塊的幀間預測塊和 低層畫面的塊之間的差異;加法器,將計算的差異與用于當前畫面的塊的幀間預測塊相加;平滑器,使用平滑濾波器對由加法器產(chǎn)生的塊進行平滑;以及編碼器,對當前畫面的塊與由平滑器產(chǎn)生的塊之間的差異進行編碼。
22、 一種基于多層的視頻編碼器,包括 產(chǎn)生器,產(chǎn)生用于當前畫面的塊的幀間預測塊;平滑器,使用平滑濾波器對產(chǎn)生的幀間預測塊進行平滑;計算器,計算當前畫面的塊和通過平滑產(chǎn)生的塊之間的差異;以及編碼器,對所述差異進行編碼。
23、 一種基于多層的視頻解碼器,包括第一恢復器,基于當前畫面的塊的紋理數(shù)據(jù),恢復包含在輸入比特流中 的當前畫面的塊的殘差信號;第二恢復器,恢復包含在輸入比特流中且與當前畫面的塊相應的低層畫 面的塊的殘差信號;第 一加法器,將恢復的低層畫面的塊的殘差信號與用于當前畫面的幀間 預測塊相加;平滑器,使用平滑濾波器對第一加法器產(chǎn)生的塊進行平滑;以及第二加法器,將恢復的當前畫面的塊的殘差信號與由平滑器產(chǎn)生的塊相加。
全文摘要
提供一種用于減少在基于多層的視頻編碼中的塊效應的方法和設備。一種基于多層的視頻編碼方法包括計算用于與當前畫面的任意塊相應的低層畫面的塊的幀間預測塊和低層畫面的塊之間的差異;將計算的差異與用于當前畫面的塊的幀間預測塊相加;使用平滑濾波器對通過相加產(chǎn)生的塊進行平滑;以及對當前畫面的塊與通過平滑產(chǎn)生的塊之間的差異進行編碼。
文檔編號H04N7/32GK101194515SQ200680020338
公開日2008年6月4日 申請日期2006年6月9日 優(yōu)先權(quán)日2005年6月10日
發(fā)明者韓宇鎮(zhèn) 申請人:三星電子株式會社