對視頻信號進(jìn)行解碼的方法
【專利摘要】本發(fā)明涉及一種對視頻信號進(jìn)行解碼的方法。該方法包括:從比特流得到當(dāng)前塊的剩余樣本;基于與所述當(dāng)前塊相鄰的多個(gè)相鄰樣本來獲得所述當(dāng)前塊的預(yù)測樣本;以及使用所述剩余樣本和所述預(yù)測樣本來得到所述當(dāng)前塊的重構(gòu)樣本,其中,獲得所述當(dāng)前塊的所述預(yù)測樣本包括:當(dāng)所述多個(gè)相鄰樣本包括不被用于所述當(dāng)前塊的幀內(nèi)預(yù)測的不可用樣本時(shí),用與所述不可用樣本相鄰的相鄰樣本代替所述不可用樣本。
【專利說明】對視頻信號進(jìn)行解碼的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及視頻處理技術(shù),更具體地,涉及視頻信息編碼/解碼中的幀內(nèi)預(yù)測方 法以及對視頻信號進(jìn)行解碼的方法。
【背景技術(shù)】
[0002] 近來,在各種應(yīng)用領(lǐng)域中,對高分辨率和高質(zhì)量的圖像的需求增大。隨著圖像具有 更高的分辨率和更高的質(zhì)量,圖像上的信息量也增加。因此,當(dāng)使用諸如現(xiàn)有的有線和無線 寬帶線的介質(zhì)來傳遞視頻數(shù)據(jù)并且將視頻數(shù)據(jù)存儲在傳統(tǒng)存儲介質(zhì)中時(shí),視頻數(shù)據(jù)的傳遞 和存儲成本上升。
[0003] 因此,可以利用高效視頻壓縮技術(shù)來有效地傳輸、存儲或再現(xiàn)具有優(yōu)越分辨率和 優(yōu)越質(zhì)量的圖像。
【發(fā)明內(nèi)容】
[0004] 技術(shù)問題
[0005] 本發(fā)明的一個(gè)方面是提供一種考慮到相鄰塊的參考像素的變化而對具有方向性 的紋理執(zhí)行有效幀內(nèi)預(yù)測的方法。
[0006] 本發(fā)明的另一方面是提供一種在進(jìn)行幀內(nèi)預(yù)測時(shí)考慮到與預(yù)測塊相鄰的塊的像 素值的變化而執(zhí)行平面預(yù)測的方法。
[0007] 本發(fā)明的再一方面是提供一種當(dāng)采用受約束的幀內(nèi)預(yù)測(CIP)時(shí)基于幀間預(yù)測 模式相鄰像素的位置處的幀內(nèi)模式相鄰塊來生成參考像素并且將參考像素用于幀內(nèi)預(yù)測 的方法。
[0008] 本發(fā)明的又一方面提供了一種當(dāng)基于幀間預(yù)測模式相鄰像素的位置處的幀內(nèi)模 式相鄰塊來生成參考像素時(shí)考慮到像素值的變化而生成參考像素的方法。
[0009] 本發(fā)明的又一方面提供了一種對視頻信號進(jìn)行解碼的方法。
[0010] 技術(shù)方案
[0011] 本發(fā)明的實(shí)施例提供了一種用于編碼器的幀內(nèi)預(yù)測方法。該方法包括:關(guān)于輸入 預(yù)測單元生成用于幀內(nèi)預(yù)測的參考像素,確定用于預(yù)測單元的幀內(nèi)模式,基于參考像素和 幀內(nèi)模式來生成預(yù)測塊,以及生成用于預(yù)測單元的剩余塊和預(yù)測塊,其中,基于基像素來預(yù) 測參考像素和預(yù)測塊的像素中的至少一者,并且預(yù)測出的像素的像素值是基像素的像素值 與從基像素到所生成的像素的像素值變化之和。
[0012] 設(shè)置在預(yù)測塊的左上角的相鄰塊的參考像素可以被設(shè)定為第一基像素,通過將從 第一基像素到設(shè)置在預(yù)測塊的左邊界上的相鄰塊的參考像素當(dāng)中的最下像素的像素值變 化、以及從第一基像素到設(shè)置在預(yù)測塊的上邊界上的相鄰塊的參考像素當(dāng)中的最右像素的 像素值變化施加于所述基像素而獲得的值被設(shè)定為第二基像素的像素值,第二基像素是預(yù) 測塊的右下角的對角像素,可以根據(jù)第一基像素和第二基像素來預(yù)測預(yù)測塊的對角像素的 像素值。
[0013] 這里,通過使用預(yù)測塊的上邊界和/或左邊界上的相鄰塊的像素以及對角像素進(jìn) 行內(nèi)插或外插來預(yù)測預(yù)測塊的非對角像素。
[0014] 此外,設(shè)置在預(yù)測塊的左上角的相鄰塊的參考像素被設(shè)定為基像素,并且通過將 從基像素到設(shè)置在預(yù)測塊的左邊界上的相鄰塊的參考像素當(dāng)中的與預(yù)測目標(biāo)像素設(shè)置在 同一行中的相鄰像素的像素值變化、以及從所述基像素到設(shè)置在所述預(yù)測塊的上邊界上的 相鄰塊的參考像素當(dāng)中的與預(yù)測目標(biāo)像素設(shè)置在同一列中的相鄰像素的像素值變化施加 于基像素而獲得的值可以被預(yù)測為預(yù)測目標(biāo)像素的像素值。
[0015] 另外,設(shè)置在預(yù)測塊的左邊界或上邊界上的相鄰塊的像素當(dāng)中的與預(yù)測目標(biāo)像素 設(shè)置在同一行或列中的像素可以被設(shè)定為基像素,并且通過將從基像素到預(yù)測像素的像素 值變化施加于基像素而獲得的值可以被預(yù)測為預(yù)測目標(biāo)像素的像素值。
[0016] 這里,預(yù)測目標(biāo)像素可以是預(yù)測塊的對角像素,并且可以通過使用相鄰塊的像素 以及對角像素進(jìn)行內(nèi)插來預(yù)測預(yù)測塊的非對角像素。
[0017] 幀內(nèi)預(yù)測模式可以進(jìn)一步包括:當(dāng)與預(yù)測單元相鄰的塊是幀間模式塊時(shí)生成設(shè)置 在幀間模式塊與預(yù)測單元之間的邊界上的參考像素,其中,設(shè)置在參考像素的左側(cè)或下側(cè) 的幀內(nèi)模式塊的像素當(dāng)中的設(shè)置在預(yù)測單元的邊界上的像素可以被設(shè)定為第一基像素,設(shè) 置在參考像素的右側(cè)或上側(cè)的幀內(nèi)模式塊的像素當(dāng)中的設(shè)置在預(yù)測單元的邊界上的像素 可以被設(shè)定為第二基像素,并且參考像素可以基于從第一基像素到參考像素的距離和從第 二基像素到參考像素的距離來生成。
[0018] 這里,第一基像素的像素值可以是第一基像素所屬于的幀內(nèi)模式塊的像素當(dāng)中的 設(shè)置在預(yù)測單元的邊界上的像素的平均像素值,且第二基像素的像素值可以是第二基參考 所屬于的幀內(nèi)模式塊的像素當(dāng)中的設(shè)置在預(yù)測單元的邊界上的像素的平均像素值。此外, 當(dāng)幀內(nèi)模式塊僅設(shè)置在參考像素的左側(cè)或下側(cè)時(shí),第一基像素的像素值可以是參考像素的 像素值,而當(dāng)幀內(nèi)模式塊僅設(shè)置在參考像素的右側(cè)或上側(cè)時(shí),第二基像素的像素值可以是 參考像素的像素值。
[0019] 本發(fā)明的另一實(shí)施例提供了一種用于解碼器的幀內(nèi)預(yù)測方法,該方法包括:對所 接收到的比特流進(jìn)行熵解碼,生成用于預(yù)測單元的幀內(nèi)預(yù)測的參考像素,基于用于預(yù)測單 元的預(yù)測模式、根據(jù)參考像素來生成預(yù)測塊,以及根據(jù)通過熵解碼獲得的剩余塊和預(yù)測塊 來重構(gòu)畫面,其中,基于基像素來預(yù)測參考像素和預(yù)測塊的像素中的至少一者,并且預(yù)測出 的像素的像素值是基像素的像素值與從基像素到所生成的像素的像素值變化之和。
[0020] 設(shè)置在預(yù)測塊的左上角的相鄰塊的參考像素可以被設(shè)定為第一基像素,通過將從 第一基像素到設(shè)置在預(yù)測塊的左邊界上的相鄰塊的參考像素當(dāng)中的最下像素的像素值變 化、以及從第一基像素到設(shè)置在預(yù)測塊的上邊界上的相鄰塊的參考像素當(dāng)中的最右像素的 像素值變化施加于基像素而獲得的值被設(shè)定為第二基像素的像素值,第二基像素是預(yù)測塊 的右下角的對角像素,可以根據(jù)第一基像素和第二基像素來預(yù)測預(yù)測塊的對角像素的像素 值。
[0021] 這里,可以通過使用預(yù)測塊的上邊界和/或左邊界上的相鄰塊的像素以及對角像 素進(jìn)行內(nèi)插或外插來預(yù)測預(yù)測塊的非對角像素。
[0022] 設(shè)置在預(yù)測塊的左上角的相鄰塊的參考像素被設(shè)定為基像素,并且通過將從基像 素到設(shè)置在預(yù)測塊的左邊界上的相鄰塊的參考像素當(dāng)中的與預(yù)測目標(biāo)像素設(shè)置在同一行 中的相鄰像素的像素值變化、以及從基像素到設(shè)置在預(yù)測塊的上邊界上的相鄰塊的參考像 素當(dāng)中的與預(yù)測目標(biāo)像素設(shè)置在同一列中的相鄰像素的像素值變化施加于基像素而獲得 的值可以被預(yù)測為預(yù)測目標(biāo)像素的像素值。
[0023] 此外,設(shè)置在預(yù)測塊的左邊界或上邊界上的相鄰塊的像素當(dāng)中的與預(yù)測目標(biāo)像素 設(shè)置在同一行或列中的像素可以被設(shè)定為基像素,并且通過將從基像素到預(yù)測像素的像素 值變化施加于基像素而獲得的值可以被預(yù)測為預(yù)測目標(biāo)像素的像素值。
[0024] 這里,預(yù)測目標(biāo)像素可以是預(yù)測塊的對角像素,并且可以通過使用相鄰塊的像素 以及對角像素進(jìn)行內(nèi)插來預(yù)測預(yù)測塊的非對角像素。
[0025] 幀內(nèi)預(yù)測可以進(jìn)一步包括:當(dāng)與預(yù)測單元相鄰的塊是幀間模式塊時(shí)生成設(shè)置在幀 間模式塊與預(yù)測單元之間的邊界上的參考像素,其中,設(shè)置在參考像素的左側(cè)或下側(cè)的幀 內(nèi)模式塊的像素當(dāng)中的設(shè)置在預(yù)測單元的邊界上的像素可以被設(shè)定為第一基像素,設(shè)置在 參考像素的右側(cè)或上側(cè)的幀內(nèi)模式塊的像素當(dāng)中的設(shè)置在預(yù)測單元的邊界上的像素可以 被設(shè)定為第二基像素,并且參考像素可以基于從第一基像素到參考像素的距離和從第二基 像素到參考像素的距離來生成。
[0026] 這里,第一基像素的像素值可以是第一基像素所屬于的幀內(nèi)模式塊的像素當(dāng)中的 設(shè)置在預(yù)測單元的邊界上的像素的平均像素值,且第二基像素的像素值可以是第二基參考 所屬于的幀內(nèi)模式塊的像素當(dāng)中的設(shè)置在預(yù)測單元的邊界上的像素的平均像素值。此外, 當(dāng)幀內(nèi)模式塊僅設(shè)置在參考像素的左側(cè)或下側(cè)時(shí),第一基像素的像素值可以是參考像素的 像素值,而當(dāng)幀內(nèi)模式塊僅設(shè)置在參考像素的右側(cè)或上側(cè)時(shí),第二基像素的像素值可以是 參考像素的像素值。
[0027] 解碼器可以獲取通過熵解碼、基于基像素來生成預(yù)測塊的像素的指令。另外,解碼 器可以獲取通過熵解碼、基于基像素來生成參考像素的指令。
[0028] 本發(fā)明的又一實(shí)施例提供了一種對視頻信號進(jìn)行解碼的方法。該方法包括:從比 特流得到當(dāng)前塊的剩余樣本;基于與所述當(dāng)前塊相鄰的多個(gè)相鄰樣本來獲得所述當(dāng)前塊的 預(yù)測樣本;以及使用所述剩余樣本和所述預(yù)測樣本來得到所述當(dāng)前塊的重構(gòu)樣本,其中,獲 得所述當(dāng)前塊的所述預(yù)測樣本包括:當(dāng)所述多個(gè)相鄰樣本包括不被用于所述當(dāng)前塊的幀內(nèi) 預(yù)測的不可用樣本時(shí),用與所述不可用樣本相鄰的相鄰樣本代替所述不可用樣本。
[0029] 有益效果
[0030] 如上所述,根據(jù)本發(fā)明,可以考慮到相鄰塊的參考像素的變化而有效地實(shí)現(xiàn)對具 有方向性的紋理的幀內(nèi)預(yù)測。
[0031] 此外,可以考慮到預(yù)測塊的相鄰塊的像素值的變化而執(zhí)行平面預(yù)測,從而提升預(yù) 測效率。
[0032] 另外,當(dāng)采用受約束的幀內(nèi)預(yù)測(CIP)時(shí),考慮到像素值的變化,參考像素基于幀 間模式相鄰像素的位置處的幀內(nèi)模式相鄰塊來生成并且被用于幀內(nèi)預(yù)測,從而提升預(yù)測效 率。
【專利附圖】
【附圖說明】
[0033] 圖1是示出了根據(jù)本發(fā)明的示例性實(shí)施例的視頻編碼器的配置的框圖。
[0034] 圖2是示意性地示出了根據(jù)本發(fā)明的示例性實(shí)施例的幀內(nèi)預(yù)測模塊的配置的框 圖。
[0035] 圖3是示出了根據(jù)本發(fā)明的示例性實(shí)施例的視頻解碼器的配置的框圖。
[0036] 圖4示意性地示出了平面預(yù)測方法。
[0037] 圖5示意性地示出了可替選的平面預(yù)測方法。
[0038] 圖6示意性地示出了首先預(yù)測當(dāng)前預(yù)測塊的對角像素。
[0039] 圖7示意性地示出了基于對角像素得到預(yù)測塊中的其它像素值的方法。
[0040] 圖8示意性地示出了考慮到參考像素值和相對于參考像素的變化而預(yù)測像素值 的方法。
[0041] 圖9示意性地示出了首先得到預(yù)測塊的對角像素然后得到其余像素的像素值的 方法。
[0042] 圖10示意性地示出了首先得到對角像素并且以與用于對角像素的方法相同的方 法得到不同于對角像素的其它像素。
[0043] 圖11示意性地示出了 CIP方法。
[0044] 圖12示意性地示出了可替選的CIP方法。
[0045] 圖13示意性地示出了根據(jù)本發(fā)明的系統(tǒng)考慮到像素值的變化而進(jìn)行CIP。
[0046] 圖14是示意性地示出了根據(jù)本發(fā)明的系統(tǒng)中的編碼器的工作的流程圖。
[0047] 圖15示出了幀內(nèi)預(yù)測模式的預(yù)測方向。
[0048] 圖16是示意性地示出了根據(jù)本發(fā)明的系統(tǒng)中的解碼器的工作的流程圖。
【具體實(shí)施方式】
[0049] 盡管單獨(dú)地示出了圖中所示的元件以描述視頻編碼器/解碼器的不同特征和功 能,但這樣的配置并不指示每個(gè)元件由分開的硬件組件或軟件組件構(gòu)成。即,單獨(dú)地設(shè)置這 些元件并且至少兩個(gè)元件可以結(jié)合成單個(gè)元件,或者單個(gè)元件可劃分成多個(gè)元件以執(zhí)行功 能。注意,在不背離本發(fā)明的實(shí)質(zhì)的情況下,一些元件合并成一個(gè)組合元件和/或一個(gè)元件 劃分成多個(gè)分開的元件的實(shí)施例包括在本發(fā)明的范圍中。
[0050] 下文中,將參考附圖詳細(xì)描述本發(fā)明的示例性實(shí)施例。在附圖中相同的附圖標(biāo)記 指代相同的元件,并且本文中將省略相同元件的冗余描述。
[0051] 圖1是示出了根據(jù)本發(fā)明的示例性實(shí)施例的視頻編碼器的配置的框圖。參考圖 1,視頻編碼器包括畫面分割模塊110、巾貞間預(yù)測(inter prediction)模塊120、巾貞內(nèi)預(yù)測 (intra prediction)模塊125、變換模塊130、量化模塊135、去量化模塊140、逆變換模塊 145、去塊濾波器150、存儲器160、重排列模塊165和熵編碼模塊170。
[0052] 畫面分割模塊110可以接收當(dāng)前畫面的輸入并且將該畫面劃分成至少一個(gè)編碼 單元。編碼單元是由視頻編碼器進(jìn)行的編碼的單元并且也可以被稱為CU??梢砸曰?四叉樹結(jié)構(gòu)的深度來遞歸地細(xì)分編碼單元。具有最大尺寸的編碼單元被稱為最大編碼單 元(LCU),并且具有最小尺寸的編碼單元被稱為最小編碼單元(SCU)。編碼單元可以具有 8X8,16X16,32X32或64X64的尺寸。畫面分割模塊110可以分割或劃分編碼單元以生 成預(yù)測單元和變換單元。預(yù)測單元也可以被稱為PU,并且變換單元也可以被稱為TU。
[0053] 在幀間預(yù)測模式下,幀間預(yù)測模塊120可以執(zhí)行運(yùn)動估計(jì)(ME)和運(yùn)動補(bǔ)償(MC)。 幀間預(yù)測模塊120基于與當(dāng)前畫面之前和之后的畫面中的至少一個(gè)畫面有關(guān)的信息來生 成預(yù)測塊,這可以被稱為巾貞間預(yù)測(inter-frame prediction)。
[0054] 幀間預(yù)測模塊120被提供有存儲在存儲器160中的至少一個(gè)參考塊和經(jīng)分割的預(yù) 測目標(biāo)塊。幀間預(yù)測模塊120使用預(yù)測目標(biāo)塊和參考塊來執(zhí)行運(yùn)動估計(jì)。幀間預(yù)測模塊 120生成包括運(yùn)動向量(MV)、參考塊索引和預(yù)測模式的運(yùn)動信息作為運(yùn)動估計(jì)的結(jié)果。
[0055] 此外,幀間預(yù)測模塊120使用運(yùn)動信息和參考塊執(zhí)行運(yùn)動補(bǔ)償。這里,幀間預(yù)測模 塊120根據(jù)參考塊生成并且輸出對應(yīng)于輸入塊的預(yù)測塊。
[0056] 對運(yùn)動信息進(jìn)行熵編碼以形成經(jīng)壓縮的比特流,該比特流從視頻編碼器被發(fā)送到 視頻解碼器。
[0057] 在幀內(nèi)預(yù)測模式下,幀內(nèi)預(yù)測模塊125可以基于與當(dāng)前畫面中的像素有關(guān)的信息 來生成預(yù)測塊。巾貞內(nèi)預(yù)測也被稱為內(nèi)巾貞預(yù)測(intra-frame prediction)。在巾貞內(nèi)預(yù)測模式 下,預(yù)測目標(biāo)塊和通過編碼和解碼而重構(gòu)的重構(gòu)塊被輸入到幀內(nèi)預(yù)測模塊125。這里,重構(gòu) 塊是還未經(jīng)歷去塊濾波器的畫面。重構(gòu)塊可以是先前的預(yù)測塊。
[0058] 圖2是示意性地示出了根據(jù)本發(fā)明的示例性實(shí)施例的幀內(nèi)預(yù)測模塊的配置的框 圖。參考圖2,幀內(nèi)預(yù)測模塊包括參考像素生成模塊210、幀內(nèi)預(yù)測模式確定模塊220和預(yù) 測塊生成模塊230。
[0059] 參考像素生成模塊210生成幀內(nèi)預(yù)測所需的參考像素。與預(yù)測目標(biāo)塊相鄰的左塊 的最右堅(jiān)直線中的像素以及與預(yù)測目標(biāo)塊相鄰的上塊的最下水平線中的像素被用于生成 參考像素。例如,當(dāng)預(yù)測目標(biāo)塊具有尺寸N時(shí),則左方向和上方向中的每一個(gè)上的2N個(gè)像素 被用作參考像素。參考像素可以照原樣使用或者經(jīng)由自適應(yīng)幀內(nèi)平滑(AIS)濾波來使用。 當(dāng)參考像素經(jīng)歷AIS濾波時(shí),有關(guān)AIS濾波的信息被用信號告知。
[0060] 幀內(nèi)預(yù)測模式確定模塊220接收預(yù)測目標(biāo)塊和重構(gòu)塊的輸入。幀內(nèi)預(yù)測模式確定 模塊220使用輸入畫面在多個(gè)預(yù)測模式當(dāng)中選擇使要被編碼的信息的量最小化的模式,并 且輸出關(guān)于預(yù)測模式的信息。這里,可以使用預(yù)設(shè)的代價(jià)函數(shù)(cost function)和哈達(dá)瑪 變換(Hadamard transform) 〇
[0061] 預(yù)測塊生成模塊230接收參考像素和關(guān)于預(yù)測模式的信息的輸入。預(yù)測塊生成模 塊230使用參考像素的像素值和關(guān)于預(yù)測模式的信息來空間地預(yù)測并且補(bǔ)償預(yù)測目標(biāo)塊 的像素值,從而生成預(yù)測塊。
[0062] 關(guān)于預(yù)測模式的信息被熵編碼以連同視頻數(shù)據(jù)一起形成經(jīng)壓縮的比特流,并且從 視頻編碼器被發(fā)送到視頻解碼器。視頻解碼器在生成幀內(nèi)預(yù)測塊時(shí)使用關(guān)于預(yù)測模式的信 肩、。
[0063] 再次參考圖1,差分塊通過預(yù)測目標(biāo)塊與在幀間或幀內(nèi)預(yù)測模式下生成的預(yù)測塊 之間的差來生成,并且被輸入到變換模塊130。變換模塊130按變換單元變換差分塊以生成 變換系數(shù)。
[0064] 具有變換單元的變換塊具有在最大和最小尺寸內(nèi)的四叉樹結(jié)構(gòu),并因此不限于預(yù) 定尺寸。每個(gè)變換塊具有指示當(dāng)前塊是否被分割成子塊的旗標(biāo),其中,當(dāng)旗標(biāo)為1時(shí),當(dāng)前 變換塊可以被分裂成四個(gè)子塊。離散余弦變換(DCT)可以被用于變換。
[0065] 量化模塊135可以對經(jīng)變換模塊130變換的值進(jìn)行量化。量化系數(shù)可以基于畫面 的重要性或塊來改變。經(jīng)量化的變換系數(shù)可以被提供給重排列模塊165和去量化模塊140。 [0066] 重排列模塊165可以通過掃描將變換系數(shù)的二維(2D)塊改變成變換系數(shù)的一維 (ID)向量,以便提升熵編碼中的效率。重排列模塊165可以基于隨機(jī)統(tǒng)計(jì)來改變掃描順序 以提升熵編碼效率。
[0067] 熵編碼模塊170對由重排列模塊165獲得的值進(jìn)行熵編碼,并且經(jīng)編碼的值被形 成為經(jīng)壓縮的比特流,該經(jīng)壓縮的比特流通過網(wǎng)絡(luò)抽象層(NAL)來被存儲或傳輸。
[0068] 去量化模塊140接收并且去量化經(jīng)量化模塊135量化的變換系數(shù),并且逆變換模 塊145對變換系數(shù)進(jìn)行逆變換,從而生成重構(gòu)的差分塊。重構(gòu)的差分塊與由幀間預(yù)測模塊 120或者幀內(nèi)預(yù)測模塊125生成的預(yù)測塊合并以生成重構(gòu)塊。重構(gòu)塊被提供給幀內(nèi)預(yù)測模 塊125和去塊濾波器150。
[0069] 去塊濾波器150對重構(gòu)塊進(jìn)行濾波以去除在編碼和解碼過程中發(fā)生的塊之間的 邊界上的失真,并且將經(jīng)濾波的結(jié)果提供給自適應(yīng)環(huán)路濾波器(ALF) 155。
[0070] ALF 155執(zhí)行濾波以使預(yù)測目標(biāo)塊與最終重構(gòu)塊之間的誤差最小化。AFL 155基 于從經(jīng)去塊濾波器150濾波的重構(gòu)塊與當(dāng)前預(yù)測目標(biāo)塊的比較得到的值來執(zhí)行濾波,并且 關(guān)于ALF 155的濾波器系數(shù)信息被加載到切片頭中并且從編碼器被發(fā)送到解碼器。
[0071] 存儲器160可以存儲通過ALF 155獲得的最終重構(gòu)塊,并且所存儲的(最終)重 構(gòu)塊可以被提供給幀間預(yù)測模塊120以執(zhí)行幀間預(yù)測。
[0072] 圖3是示出了根據(jù)本發(fā)明的示例性實(shí)施例的視頻解碼器的配置的框圖。參考圖3, 視頻解碼器包括熵解碼模塊310、重排列模塊315、去量化模塊320、逆變換模塊325、幀間預(yù) 測模塊330、幀內(nèi)預(yù)測模塊335、去塊濾波器340、ALF 345和存儲器350。
[0073] 熵解碼模塊310從NAL接收經(jīng)壓縮的比特流。熵解碼模塊310對所接收到的比特 流進(jìn)行熵解碼,并且如果該比特流包括預(yù)測模式和運(yùn)動向量信息則還對預(yù)測模式和運(yùn)動向 量信息進(jìn)行熵解碼。經(jīng)熵解碼的變換系數(shù)或差分信號被提供給重排列模塊315。重排列模 塊315逆掃描變換系數(shù)或差分信號以生成變換系數(shù)的2D塊。
[0074] 去量化模塊320接收并且去量化經(jīng)熵解碼并且經(jīng)重排列的變換系數(shù)。逆變換模塊 325對經(jīng)去量化的變換系數(shù)進(jìn)行逆變換以生成差分塊。
[0075] 差分塊可以與由幀間預(yù)測模塊330或幀內(nèi)預(yù)測模塊335生成的預(yù)測塊合并以生成 重構(gòu)塊。重構(gòu)塊被提供給幀內(nèi)預(yù)測模塊335和去塊濾波器340。幀間預(yù)測模塊330和幀內(nèi) 預(yù)測模塊335可以執(zhí)行與視頻編碼器的幀間預(yù)測模塊120和幀內(nèi)預(yù)測模塊125相同的操 作。
[0076] 去塊濾波器340對重構(gòu)塊進(jìn)行濾波以去除在編碼和解碼過程中發(fā)生的這些塊之 間的邊界上的失真,并且將經(jīng)濾波的結(jié)果提供給ALF 345。ALF 345執(zhí)行濾波以使預(yù)測目標(biāo) 塊與最終重構(gòu)塊之間的誤差最小化。存儲器160可以存儲通過ALF 345獲得的最終重構(gòu)塊, 并且所存儲的(最終)重構(gòu)塊可以被提供給幀間預(yù)測模塊330以執(zhí)行幀間預(yù)測。
[0077] 同時(shí),在紋理的改變不顯著的區(qū)域中,例如,天空或海洋的單調(diào)背景,使用平面幀 內(nèi)預(yù)測來進(jìn)一步提升編碼效率。
[0078] 幀內(nèi)預(yù)測被分類成有向預(yù)測、DC預(yù)測和平面預(yù)測,其中,平面預(yù)測可以是DC預(yù)測 的延伸概念。盡管平面預(yù)測可以寬泛地包括在DC預(yù)測中,但平面預(yù)測可以涵蓋DC預(yù)測不 能處理的預(yù)測方法。例如,DC預(yù)測對于均勻紋理而言是優(yōu)選的,而平面預(yù)測對于具有方向 性的像素值中的塊預(yù)測而言是有效的。
[0079] 本說明書說明了使用相鄰塊的參考像素的像素值的變化來關(guān)于具有方向性的紋 理改善平面預(yù)測效率的方法。
[0080] 圖4示意性地示出了平面預(yù)測方法。
[0081] 參考圖4(A),預(yù)測當(dāng)前塊420的右下角的像素的像素值425。當(dāng)前塊的右下角的 像素的像素值425可以被預(yù)測為DC值。
[0082] 參考圖4(B),預(yù)測位于當(dāng)前塊的右邊界上的像素的像素值和位于當(dāng)前塊的下邊界 上的像素的像素值。例如,可以通過DC值425和上塊的像素值450的線性內(nèi)插來預(yù)測位于 當(dāng)前塊的右邊界上的像素值445。此外,可以通過DC值425和左塊的像素值430的線性內(nèi) 插來預(yù)測位于當(dāng)前塊的下邊界上的像素值435。
[0083] 參考圖4(C),當(dāng)前塊中的不同于右下角的像素、右邊界上的像素和下邊界上的像 素的其余像素的像素值可以通過使用上塊和左塊的像素值以及當(dāng)前塊中的已經(jīng)預(yù)測的像 素值進(jìn)行雙線性內(nèi)插來預(yù)測。例如,當(dāng)前塊中的像素值475可以通過使用上塊的像素值 460、左塊的像素值455、位于當(dāng)前塊的右邊界上的已經(jīng)預(yù)測的像素值445以及位于當(dāng)前塊 的下邊界上的已經(jīng)預(yù)測的像素值435進(jìn)行內(nèi)插來預(yù)測。
[0084] 參考圖4(D),經(jīng)由前述過程獲得的預(yù)測樣本(被預(yù)測的樣本)可以被細(xì)化。例如, 可以使用上樣本值T 480和左樣本值L 490對當(dāng)前塊中的像素值X 485進(jìn)行細(xì)化。具體地, 根據(jù)X細(xì)化的X'可以通過X' = {(X〈〈l)+L+T+1}>>2來獲得。這里,"x〈〈y"表明X的二進(jìn) 制補(bǔ)碼整數(shù)表達(dá)式被算術(shù)左移二進(jìn)制單位y,而"x>>y"表明X的二進(jìn)制補(bǔ)碼整數(shù)表達(dá)式被 算術(shù)右移二進(jìn)制單位y。
[0085] 圖5示意性地示出了可替選的平面預(yù)測方法。
[0086] 在圖5的方法中,首先預(yù)測在當(dāng)前像素中對角地定位的像素的像素值,并且使用 預(yù)測出的像素值來預(yù)測當(dāng)前塊中的其余像素的像素值。為了便于描述,下面,構(gòu)成該塊的像 素當(dāng)中的從左上到右下對角地定位的像素被稱為對角像素。
[0087] 參考圖5(A),使用上參考塊的像素值520和左參考塊的像素值530來預(yù)測當(dāng) 前塊510的對角像素540的像素值。例如,當(dāng)前塊中的對角像素 P的像素值可以使用 上塊的像素當(dāng)中的位于當(dāng)前塊與上塊之間的邊界上的像素 AboveRef的像素值以及左 塊的像素當(dāng)中的位于當(dāng)前塊與左塊之間的邊界上的像素 LeftRef的像素值、通過P = (LeftRef+AboveRef+l)?l 來獲得。
[0088] 參考圖5(B),當(dāng)前塊510中的不同于對角像素540的其它像素的像素值可以通 過使用在圖5(A)中獲得的像素值以及邊界上的上塊和左塊的像素的像素值進(jìn)行線性內(nèi)插 來獲得。例如,Pl可以使用上塊的像素 AboveRef以及所獲得的對角像素 P1、通過Pl = (AboveRef*d2+P*dlV(dl+d2)來獲得。此外,P2可以通過P2= (LeftRef*d3+P*d4) (d3+d4) 來獲得。
[0089] 同時(shí),圖4和圖5中所示的平面預(yù)測方法對于無方向性的均勻紋理而言是有效的, 但這些方法在具有方向性的紋理(比如其中亮度基本上在一個(gè)方向例如水平方向上變化、 而在另一個(gè)方向例如堅(jiān)直方向上幾乎不改變的亮度(Iuma)像素)的情形中,可能具有降低 的預(yù)測效率。
[0090] 因此,可能需要考慮到像素值的變化的平面幀內(nèi)預(yù)測。根據(jù)本發(fā)明的平面幀內(nèi)預(yù) 測選擇或預(yù)測基像素值,并且將基像素與目標(biāo)像素之間的像素值變化施加于基像素值,從 而預(yù)測目標(biāo)像素的像素值。
[0091] 下文中,將參考附圖描述本發(fā)明的例子。
[0092] 例子 1
[0093] 圖6示意性地示出了首先預(yù)測當(dāng)前預(yù)測塊的對角像素 Pii。盡管為了便于描述,圖 6示出了 8X8預(yù)測塊,但是本發(fā)明也可以被應(yīng)用于NXN預(yù)測塊,而不限于8X8預(yù)測塊。
[0094] 在圖6中所示的例子1中,首先基于與當(dāng)前預(yù)測塊相鄰的參考塊的參考像素(在 8X8預(yù)測塊情形中,是RiO和/或R0j,0 < i、j < 8)來預(yù)測當(dāng)前預(yù)測塊的對角像素。 [0095] 亦即,在獲得對角像素 Pii之后,可以通過使用相鄰塊的參考像素值(Rij)和Pii 進(jìn)行內(nèi)插或外插來得到預(yù)測塊中的其它像素值。
[0096] 圖7示意性地示出了基于對角像素得到預(yù)測塊中的其它像素值的方法。
[0097] 在本發(fā)明中,考慮到像素值的改變而執(zhí)行平面預(yù)測。例如,如圖7(A)中所示,當(dāng)在 X方向上(向右)和在y方向上(向下)都增大參考像素值時(shí),預(yù)測塊中的像素值也更可能 在右下方向上增大。在此情形中,可以首先預(yù)測預(yù)測塊的右下角的P88的像素值,并且基于 P88的像素值來預(yù)測其它像素。
[0098] 為了預(yù)測P88的值,將當(dāng)前預(yù)測塊的左上角的參考像素 ROO的像素值定義為基像 素的像素值,從基像素到預(yù)測塊中的預(yù)測目標(biāo)像素 P88的變化可以被施加于基像素的像素 值。例如,可以通過等式1獲得目標(biāo)像素 P88的像素值。為了便于描述,將附圖和說明書中 所示的Ri j或Pi j呈示為Rij和Pij。
[0099] [等式 1]
[0100]
【權(quán)利要求】
1. 一種對視頻信號進(jìn)行解碼的方法,包括: 從比特流得到當(dāng)前塊的剩余樣本; 基于與所述當(dāng)前塊相鄰的多個(gè)相鄰樣本來獲得所述當(dāng)前塊的預(yù)測樣本;以及 使用所述剩余樣本和所述預(yù)測樣本來得到所述當(dāng)前塊的重構(gòu)樣本, 其中,獲得所述當(dāng)前塊的所述預(yù)測樣本包括:當(dāng)所述多個(gè)相鄰樣本包括不被用于所述 當(dāng)前塊的幀內(nèi)預(yù)測的不可用樣本時(shí),用與所述不可用樣本相鄰的相鄰樣本代替所述不可用 樣本。
2. 根據(jù)權(quán)利要求1所述的方法,其中,當(dāng)所述不可用樣本是所述當(dāng)前塊的左相鄰樣本 時(shí),所述不可用樣本的相鄰樣本是所述不可用樣本的下相鄰樣本;并且 其中,當(dāng)所述不可用樣本是所述當(dāng)前塊的上相鄰樣本時(shí),所述不可用樣本的相鄰樣本 是所述不可用樣本的左相鄰樣本。
3. 根據(jù)權(quán)利要求2所述的方法,其中,所述不可用樣本是在幀間預(yù)測模式下被編碼的 相鄰塊中的樣本,所述相鄰塊與所述當(dāng)前塊相鄰。
4. 根據(jù)權(quán)利要求3所述的方法,其中,所述多個(gè)相鄰樣本是否包括所述不可用樣本是 基于受約束的幀內(nèi)預(yù)測旗標(biāo)來確定的,所述受約束的幀內(nèi)預(yù)測旗標(biāo)規(guī)定了在幀間預(yù)測模式 下被編碼的所述相鄰塊中的樣本是否被用于所述當(dāng)前塊的幀內(nèi)預(yù)測。
5. 根據(jù)權(quán)利要求4所述的方法,其中,所述受約束的幀內(nèi)預(yù)測旗標(biāo)是從畫面參數(shù)集獲 得的。
6. 根據(jù)權(quán)利要求1所述的方法,其中,獲得所述當(dāng)前塊的所述預(yù)測樣本還包括:通過選 擇多個(gè)幀內(nèi)濾波器中的一個(gè)來對所述當(dāng)前塊的所述多個(gè)相鄰樣本進(jìn)行濾波, 其中,所述當(dāng)前塊的所述預(yù)測樣本是基于經(jīng)濾波的所述多個(gè)相鄰樣本來獲得的。
7. 根據(jù)權(quán)利要求6所述的方法,其中,所選擇的幀內(nèi)濾波器的濾波器系數(shù)是[1,2, 1]。
8. 根據(jù)權(quán)利要求1所述的方法,其中,當(dāng)所述當(dāng)前塊的幀內(nèi)預(yù)測模式是平面模式時(shí),所 述預(yù)測樣本是使用與所述當(dāng)前塊相鄰的所述多個(gè)相鄰樣本的線性內(nèi)插來得到的。
9. 根據(jù)權(quán)利要求8所述的方法,其中,所述多個(gè)相鄰樣本包括左相鄰樣本和上相鄰樣 本, 其中,所述左相鄰樣本與所述預(yù)測樣本位于同一y坐標(biāo)上,并且所述上相鄰樣本與所 述預(yù)測樣本位于同一X坐標(biāo)上。
【文檔編號】H04N19/593GK104378645SQ201410646265
【公開日】2015年2月25日 申請日期:2012年5月14日 優(yōu)先權(quán)日:2011年5月20日
【發(fā)明者】權(quán)載哲, 金柱英 申請人:株式會社Kt