對(duì)像素進(jìn)行標(biāo)識(shí)的方法和裝置、對(duì)像素標(biāo)識(shí)進(jìn)行處理的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及視頻編解碼技術(shù)領(lǐng)域,特別是涉及對(duì)像素進(jìn)行標(biāo)識(shí)的方法和裝置、對(duì) 像素標(biāo)識(shí)進(jìn)行處理的方法和裝置。
【背景技術(shù)】
[0002] 國(guó)際視頻編碼標(biāo)準(zhǔn)HEVC和正在制定的國(guó)家視頻編碼標(biāo)準(zhǔn)AVS2都采用了一項(xiàng)名為 自適應(yīng)樣本偏置的技術(shù),用于減少重建像素和原始像素之間的失真。該技術(shù)對(duì)特定區(qū)域內(nèi) 的像素進(jìn)行分類,然后對(duì)屬于需要處理的類別的像素,根據(jù)其類別加上一個(gè)特定的偏置值。 編碼器需要在碼流中傳輸所采用的分類方法和各個(gè)像素類需要疊加的偏置值。解碼器獲 取當(dāng)前分類方法后,就可以采用和編碼器一樣的分類方法對(duì)當(dāng)前特定區(qū)域內(nèi)的像素進(jìn)行分 類,以得到和編碼器一樣的分類結(jié)果;然后再根據(jù)碼流中傳輸?shù)钠弥担瑢?duì)需要處理的類別 中的像素進(jìn)行偏置。像素分類的方法總共有兩種:邊緣模式法和區(qū)間模式法。
[0003]邊緣模式法就是將當(dāng)前像素與周邊像素進(jìn)行數(shù)值比較,根據(jù)比較的結(jié)果確定當(dāng)前 像素點(diǎn)的類別。在ffiVC和AVS2中,邊緣模式法將像素點(diǎn)分為五個(gè)類別,其中四個(gè)類別的像 素需要進(jìn)行偏置,碼流中需要傳輸四個(gè)偏置值。由于標(biāo)準(zhǔn)規(guī)定了哪四個(gè)類別需要進(jìn)行偏置, 因此碼流中不需要傳輸關(guān)于需要偏置的類別的信息。
[0004]而區(qū)間模式法則不同。在區(qū)間模式法中,像素點(diǎn)直接依據(jù)其像素值進(jìn)行分類。該 模式將整個(gè)像素取值區(qū)間劃分為若干個(gè)子區(qū)間,像素所在子區(qū)間的編號(hào)即為其類別號(hào)。在 HEVC和AVS2中,整個(gè)像素取值范圍被均勻地劃分為32個(gè)子區(qū)間,對(duì)于8比特視頻序列而 言,每個(gè)子區(qū)間跨度為8,如表1所示。然后根據(jù)當(dāng)前像素點(diǎn)落入的區(qū)間就可以得到其類別 號(hào)。在這種模式中,需要偏置的像素類別并不是固定的。編碼器在全部32個(gè)子區(qū)間中選擇 四個(gè)子區(qū)間,只對(duì)這四個(gè)子區(qū)間內(nèi)的像素進(jìn)行偏置,因此碼流中需要對(duì)偏置子區(qū)間進(jìn)行標(biāo) 識(shí)。
[0005]HEVC規(guī)定四個(gè)偏置子區(qū)間必須是連續(xù)的,這樣在碼流中只需要傳輸?shù)谝粋€(gè)偏置子 區(qū)間的編號(hào),即起始偏置子區(qū)間號(hào),解碼器就可以獲知四個(gè)需要偏置的子區(qū)間了。由于子區(qū) 間編號(hào)從〇到31,因此起始偏置子區(qū)間號(hào)的取值范圍為從0到28。在熵編碼時(shí),這個(gè)起始 偏置子區(qū)間號(hào)用五個(gè)二元符號(hào)構(gòu)成的二元符號(hào)串來表示。
[0006]而目前AVS2中允許四個(gè)偏置子區(qū)間部分不連續(xù)。具體地說,目前AVS2規(guī)定第一 個(gè)偏置子區(qū)間和第二個(gè)偏置子區(qū)間必須連續(xù),第三個(gè)偏置子區(qū)間和第四個(gè)偏置子區(qū)間必須 連續(xù),而第二個(gè)偏置子區(qū)間和第三個(gè)偏置子區(qū)間之間可以存在非偏置子區(qū)間。由于四個(gè)子 區(qū)間可以部分不連續(xù),目前AVS2在碼流中傳輸兩個(gè)起始偏置子區(qū)間號(hào),即第一個(gè)偏置子區(qū) 間號(hào)和第三個(gè)偏置子區(qū)間號(hào),來表示這四個(gè)偏置子區(qū)間。在這種情況下,每個(gè)起始偏置子區(qū) 間號(hào)的取值范圍為從〇到30,各需要用五個(gè)二元符號(hào)構(gòu)成的二元符號(hào)串來表示。因此,在目 前AVS2中,總共采用了十個(gè)二元符號(hào)來表示關(guān)于偏置子區(qū)間的信息。
[0007] 表1HEVC和AVS2區(qū)間模式下8比特序列的分類方法
[0008]
[0009] 盡管在HEVC干只而安傳緬一個(gè)起妬偏直于兇|日」虧,1 乂土_個(gè)二元符號(hào)就可以表達(dá) 關(guān)于偏置子區(qū)間的信息了,但是它限制了偏置子區(qū)間的分布,即四個(gè)偏置子區(qū)間必須是連 續(xù)的,這樣編碼器對(duì)于偏置子區(qū)間的選擇余地就很小了。在很多情況下,最優(yōu)的四個(gè)偏置子 區(qū)間往往不是連續(xù)的。在這種情況下,編碼器只能選擇次優(yōu)方案,從而影響了編碼性能。而 目前AVS2允許四個(gè)偏置子區(qū)間可以部分不連續(xù),這樣就能更好的適應(yīng)不同的視頻內(nèi)容。但 是在目前AVS2中,碼流中傳輸了兩個(gè)起始偏置子區(qū)間號(hào),總共需要十個(gè)二元符號(hào)來表達(dá), 因此增加了傳輸?shù)臄?shù)據(jù)量。
【發(fā)明內(nèi)容】
[0010] 本申請(qǐng)?zhí)峁┝藢?duì)像素進(jìn)行標(biāo)識(shí)的方法和裝置、以及對(duì)像素標(biāo)識(shí)進(jìn)行處理的方法和 裝置,以在保持處理子區(qū)間選擇靈活性的前提下,減少所需要傳輸?shù)年P(guān)于處理子區(qū)間的信 息,從而提高編碼壓縮的性能。
[0011] 本申請(qǐng)?zhí)峁┝艘环N對(duì)像素進(jìn)行標(biāo)識(shí)的方法,包括:
[0012] 確定處理子區(qū)間,所述處理子區(qū)間為全部或部分像素子區(qū)間;
[0013] 確定需要標(biāo)識(shí)的處理子區(qū)間,需要標(biāo)識(shí)的處理子區(qū)間為全部或部分處理子區(qū)間;
[0014] 對(duì)需要標(biāo)識(shí)的處理子區(qū)間用處理子區(qū)間標(biāo)識(shí)信息進(jìn)行標(biāo)識(shí),并在碼流中傳輸所述 處理子區(qū)間標(biāo)識(shí)信息;所述處理子區(qū)間標(biāo)識(shí)信息包括處理子區(qū)間導(dǎo)出信息,或者包括處理 子區(qū)間導(dǎo)出信息和處理子區(qū)間信息。
[0015] 較佳地,所述處理子區(qū)間的個(gè)數(shù)由編碼器指定,并在碼流中進(jìn)行傳輸。
[0016] 較佳地,所述需要標(biāo)識(shí)的處理子區(qū)間個(gè)數(shù)由編碼器指定,并在碼流中進(jìn)行傳輸。
[0017] 較佳地,所述處理子區(qū)間信息為用于直接導(dǎo)出處理子區(qū)間號(hào)的信息;
[0018] 所述處理子區(qū)間導(dǎo)出信息為用于結(jié)合處理子區(qū)間信息或其他信息導(dǎo)出處理子區(qū) 間號(hào)的信息。
[0019] 較佳地,所述處理子區(qū)間信息為處理子區(qū)間號(hào)。
[0020] 較佳地,所述處理子區(qū)間導(dǎo)出信息為當(dāng)前處理子區(qū)間號(hào)與其他處理子區(qū)間號(hào)的差 值信息。
[0021] 較佳地,所述差值信息為將處理子區(qū)間按處理子區(qū)間號(hào)順序排列后,相鄰兩者之 間的差值彳目息。
[0022] 較佳地,所述相鄰兩者包括第一個(gè)像素子區(qū)間和最后一個(gè)像素子區(qū)間,且當(dāng)按照 子區(qū)間號(hào)從小到大排列時(shí),第一個(gè)像素子區(qū)間位于最后像素一個(gè)子區(qū)間之后。
[0023] 較佳地,所述差值信息為對(duì)于小于零的差值疊加上像素子區(qū)間總個(gè)數(shù)后的值,或 為對(duì)于大于零的差值減去像素子區(qū)間總個(gè)數(shù)后的值。
[0024] 較佳地,所述處理子區(qū)間導(dǎo)出信息為所有差值信息中除一個(gè)絕對(duì)值最大的差值之 外的其他差值信息。
[0025] 較佳地,所述處理子區(qū)間信息為與所述一個(gè)絕對(duì)值最大的差值所對(duì)應(yīng)的作為被減 數(shù)的處理子區(qū)間號(hào)。
[0026] 較佳地,所述處理子區(qū)間導(dǎo)出信息為當(dāng)前處理子區(qū)間號(hào)與處理子區(qū)間預(yù)測(cè)值的差 值信息。
[0027] 較佳地,所述處理子區(qū)間預(yù)測(cè)值為包含當(dāng)前處理區(qū)域內(nèi)最多像素點(diǎn)的子區(qū)間號(hào)。
[0028] 本申請(qǐng)還提供了一種對(duì)像素進(jìn)行標(biāo)識(shí)的裝置,包括:處理子區(qū)間確定單元、標(biāo)識(shí)處 理子區(qū)間確定單元和處理子區(qū)間標(biāo)識(shí)單元,其中:
[0029] 處理子區(qū)間確定單元,用于確定處理子區(qū)間,所述處理子區(qū)間為全部或部分像素 子區(qū)間;
[0030] 標(biāo)識(shí)處理子區(qū)間確定單元,用于確定需要標(biāo)識(shí)的處理子區(qū)間,需要標(biāo)識(shí)的處理子 區(qū)間為全部或部分處理子區(qū)間;
[0031] 處理子區(qū)間標(biāo)識(shí)單元,用于對(duì)需要標(biāo)識(shí)的處理子區(qū)間用處理子區(qū)間標(biāo)識(shí)信息進(jìn)行 標(biāo)識(shí),并在碼流中傳輸所述處理子區(qū)間標(biāo)識(shí)信息;所述處理子區(qū)間標(biāo)識(shí)信息包括處理子區(qū) 間導(dǎo)出信息,或者包括處理子區(qū)間導(dǎo)出信息和處理子區(qū)間信息。
[0032] 本申請(qǐng)還提供了一種對(duì)像素標(biāo)識(shí)進(jìn)行處理的方法,包括:
[0033] 獲取處理子區(qū)間標(biāo)識(shí)信息,所述處理子區(qū)間標(biāo)識(shí)信息包括處理子區(qū)間導(dǎo)出信息, 或者包括處理子區(qū)間信息和處理子區(qū)間導(dǎo)出信息;
[0034] 根據(jù)處理子區(qū)間標(biāo)識(shí)信息確定標(biāo)識(shí)的處理子區(qū)間,所述標(biāo)識(shí)的處理子區(qū)間為全部 或部分處理子區(qū)間;
[0035] 根據(jù)標(biāo)識(shí)的處理子區(qū)間,確定全部處理子區(qū)間,所述處理子區(qū)間為全部或部分像 素子區(qū)間。
[0036] 較佳地,所述處理子區(qū)間的個(gè)數(shù)從碼流中獲取。
[0037] 較佳地,所述標(biāo)識(shí)的處理子區(qū)間的個(gè)數(shù)從碼流中獲取。
[0038] 較佳地,所述處理子區(qū)間信息為用于直接導(dǎo)出處理子區(qū)間號(hào)的信息;
[0039] 所述處理子區(qū)間導(dǎo)出信息為用于結(jié)合處理子區(qū)間信息或其他信息導(dǎo)出處理子區(qū) 間號(hào)的信息。
[0040] 較佳地,所述處理子區(qū)間信息為處理子區(qū)間號(hào)。
[0041] 較佳地,將處理子區(qū)間信息與當(dāng)前處理子區(qū)間導(dǎo)出信息相加導(dǎo)出當(dāng)前處理子區(qū)間 號(hào),或?qū)⒁汛_定的處理子區(qū)間號(hào)與當(dāng)前處理子區(qū)間導(dǎo)出信息相加導(dǎo)出當(dāng)前處理子區(qū)間號(hào)。
[0042] 較佳地,將處理子區(qū)間信息與當(dāng)前處理子區(qū)間導(dǎo)出信息之和除以子區(qū)間總個(gè)數(shù)后 取余數(shù),得到當(dāng)前處理子區(qū)間號(hào),或?qū)⒁汛_定的處理子區(qū)間號(hào)與當(dāng)前處理子區(qū)間導(dǎo)出信息 之和除以子區(qū)間總個(gè)數(shù)后取余數(shù),得到當(dāng)前處理子區(qū)間號(hào)。
[0043] 較佳地,將處理子區(qū)間預(yù)測(cè)值與當(dāng)前處理子區(qū)間導(dǎo)出信息相加,得到當(dāng)前處理子 區(qū)間號(hào)。
[0044] 較佳地,將處理子區(qū)間預(yù)測(cè)值與當(dāng)前處理子區(qū)間導(dǎo)出信息相加后除以子區(qū)間總個(gè) 數(shù)后取余數(shù),得到當(dāng)前處理子區(qū)間號(hào)。
[0045] 較佳地,所述處理子區(qū)間預(yù)測(cè)值為包含當(dāng)前處理區(qū)域內(nèi)最多像素點(diǎn)的子區(qū)間號(hào)。
[0046] 本申請(qǐng)還提供了一種對(duì)像素標(biāo)識(shí)進(jìn)行處理的裝置,包括:標(biāo)識(shí)信息獲取單元、標(biāo)識(shí) 處理子區(qū)間導(dǎo)出單元和全部處理子區(qū)間導(dǎo)出單元,其中:
[0047] 標(biāo)識(shí)信息獲取單元,用于獲取處理子區(qū)間標(biāo)識(shí)信息,所述標(biāo)識(shí)信息包括處理子區(qū) 間導(dǎo)出信息,或者包括處理子區(qū)間信息和處理子區(qū)間導(dǎo)出信息;
[0048] 標(biāo)識(shí)處理子區(qū)間導(dǎo)出單元,用于根據(jù)處理子區(qū)間標(biāo)識(shí)信息導(dǎo)出標(biāo)識(shí)的處理子區(qū) 間,所述標(biāo)識(shí)的處理子區(qū)間為全部或部分處理子區(qū)間;
[0049] 全部處理子區(qū)間導(dǎo)出單元,用于根據(jù)標(biāo)識(shí)的處理子區(qū)間導(dǎo)出全部處理子區(qū)間,所 述全部處理子區(qū)間為全部或部分像素子區(qū)間。
[0050] 由上述技術(shù)方案可見,本發(fā)明提供的視頻編解碼中像素標(biāo)識(shí)的方法和裝置,通過 在編碼端對(duì)像素進(jìn)行標(biāo)識(shí),將標(biāo)識(shí)信息在碼流中傳輸給解碼端,并在解碼端對(duì)像素標(biāo)識(shí)進(jìn) 行處理得到處理子區(qū)間,能夠在保持處理子區(qū)間選擇靈活性的前提下,減少所需要傳輸?shù)?關(guān)于處理子區(qū)間的信息,從而提高編碼壓縮的性能。
【附圖說明】
[0051] 圖1為本申請(qǐng)一較佳編碼器對(duì)像素進(jìn)行標(biāo)識(shí)的方法示意圖;
[0052] 圖2為本申請(qǐng)一較佳解碼器對(duì)像素標(biāo)識(shí)進(jìn)行處理的方法示意圖;
[0053] 圖3為本申請(qǐng)一較佳編碼器對(duì)像素進(jìn)行標(biāo)識(shí)的裝置的組成結(jié)構(gòu)示意圖;
[0054] 圖4為本申請(qǐng)一較佳解碼器對(duì)像素標(biāo)識(shí)進(jìn)行處理的裝置的組成結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0055] 為使本申請(qǐng)的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下參照附圖并舉實(shí)施例,對(duì) 本申請(qǐng)作進(jìn)一步詳細(xì)說明。
[0056] 本申請(qǐng)的發(fā)明人通過研究發(fā)現(xiàn):目前AVS2中的兩個(gè)起始子區(qū)間號(hào)并不是獨(dú)立的。 例如,當(dāng)一個(gè)偏置子區(qū)間確定為某個(gè)值后,另一個(gè)偏置子區(qū)間就不可能與其取相同或相鄰 的值。事實(shí)上,兩個(gè)起始偏置子區(qū)間號(hào)的聯(lián)合分布有是有一定規(guī)律性的。這樣,直接分別傳 輸兩個(gè)起始子區(qū)間號(hào)就存在一定冗余。因此需要對(duì)兩個(gè)起始偏置子區(qū)間號(hào)進(jìn)行處理后再傳 輸。這樣就能在保持偏置子區(qū)間選擇靈活性的前提下,減少所需要傳輸?shù)年P(guān)于偏置子區(qū)間 的信息,從而進(jìn)一步提高編碼壓縮的性能。
[0057] 從對(duì)現(xiàn)有技術(shù)問題的分析中可以發(fā)現(xiàn),當(dāng)對(duì)偏置子區(qū)間的限定減少時(shí),甚至可以 任意選取時(shí),碼流中需要傳輸大量關(guān)于偏置子區(qū)間的信息。因此,本發(fā)明提出了一種對(duì)像素 進(jìn)行標(biāo)識(shí)的方法以及對(duì)像素標(biāo)識(shí)的處理方法,通過去除若干處理子區(qū)間信息之間的冗余來 壓縮處理子區(qū)間信息,從而減少碼率提高視頻編碼的最終性能。現(xiàn)有技術(shù)所涉及的"偏置 子區(qū)間"實(shí)際上是對(duì)像素子區(qū)間的一種處理,同樣,本申請(qǐng)?zhí)峁┑囊彩菍?duì)需要進(jìn)行任何處理 的像素子區(qū)間或需要特別標(biāo)明的像素子區(qū)間進(jìn)行標(biāo)識(shí)和對(duì)該標(biāo)識(shí)進(jìn)行處理的技術(shù)方案。因 此,本申請(qǐng)中將所涉及的需要處理或標(biāo)明的像素子區(qū)間描述為"處理子區(qū)間"。
[0058] 本發(fā)明包括一種對(duì)像素進(jìn)行標(biāo)識(shí)的方法,應(yīng)用于編碼器端,如圖1所示,該方法包 括:
[0059] 步驟101:確定處理子區(qū)間。
[0060] 根據(jù)像素原始值、重建值和/或系統(tǒng)其他信息,在率失真優(yōu)化原則下或根據(jù)實(shí)際 情況在全部子區(qū)間中確定需要進(jìn)行處理的子區(qū)間。
[0061] 步驟102:確定需要標(biāo)識(shí)的處理子區(qū)間。
[0062] 根據(jù)實(shí)際情況,編碼器在全部處理子區(qū)間中確定需要進(jìn)行標(biāo)識(shí)的處理子區(qū)間。需 要進(jìn)行標(biāo)識(shí)的處理子區(qū)間可以為全部或部分處理子區(qū)間。
[0063] 步驟103:對(duì)需要標(biāo)識(shí)的處理子區(qū)間進(jìn)行標(biāo)