條件于系數(shù)數(shù)目的自適應(yīng)插值濾波器編碼的制作方法
【專利摘要】本發(fā)明公開了一種用于視頻信號預(yù)測殘差變換系數(shù)的量化參數(shù)編碼方法。在本發(fā)明中,dQP和量化矩陣的選擇信號均條件于變換量化系數(shù)的數(shù)目,并傳輸于變換量化系數(shù)的后面。編碼器和解碼器通過約定一個(gè)固定的閾值,當(dāng)若干連續(xù)的變換塊的非零量化系數(shù)數(shù)目超過這個(gè)閾值時(shí),編碼器在編碼了這些非零量化系數(shù)之后,向碼流中編碼一個(gè)dQP或量化矩陣的選擇信號,表示這幾個(gè)連續(xù)的塊所使用的QP或量化矩陣。這樣解碼器就能通過累計(jì)非零量化系數(shù)數(shù)目并準(zhǔn)確解碼dQP或量化矩陣的選擇信號。
【專利說明】條件于系數(shù)數(shù)目的自適應(yīng)插值濾波器編碼
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于數(shù)字視頻壓縮領(lǐng)域,具體涉及到視頻信號預(yù)測殘差變換系數(shù)的量化參數(shù)的編碼。
【背景技術(shù)】
[0002]數(shù)字視頻是通過對時(shí)域和空域連續(xù)的自然場景進(jìn)行時(shí)域和空域連續(xù)采樣所得。如圖1所示,數(shù)字視頻由一系列時(shí)域上的視頻幀所組成,每個(gè)視頻幀表示自然場景在某個(gè)時(shí)間的空域采樣,它由二維均勻采樣的視覺像素組成。每個(gè)像素由一系列描述像素亮度和色彩的數(shù)字組成,在視頻編碼中,最廣泛被使用的格式是YUV格式,這種格式中,每個(gè)像素由一個(gè)亮度分量Y,兩個(gè)色差分量U和V組成,一般對U和V分量水平和垂直方向各進(jìn)行一次下采樣,這樣每相鄰的4個(gè)像素共用I個(gè)U和I個(gè)V分量,這就是YUV4:2:0格式。
[0003]最廣泛被使用的視頻編碼技術(shù)是塊基混合運(yùn)動補(bǔ)償DCT變換視頻編碼技術(shù),其中最有代表性的是MPEG和VCEG正在聯(lián)合制定的國際標(biāo)準(zhǔn)HEVC。如圖2所示,HEVC編碼器首先把輸入幀被劈分成一個(gè)個(gè)NxN (其中N為2的冪次,其最小為8,最大可以到64)的塊,稱為最大編碼單元(IXU),然后從左到右,從上到下依次對IXU進(jìn)行編碼。在HEVC中,基本的預(yù)測變換編碼單位稱為編碼單元(CU),對于一個(gè)大小為2Nx2N的LCU,可以把它作為一個(gè)CU直接進(jìn)行預(yù)測變換編碼,也可以把它以四分樹的方式劈分為4個(gè)大小為NxN的單元進(jìn)行預(yù)測變換編碼,而對于每個(gè)NxN的單元,它也既可以作為一個(gè)CU進(jìn)行預(yù)測-變換-編碼,也可以繼續(xù)以四分樹的方式劈分為4個(gè)更小的單元進(jìn)行編碼。圖3所示既是一個(gè)LCU的編碼劈分圖,圖中LCU被劈分為4個(gè)等尺寸CU,而4個(gè)CU中的第一個(gè)、第三個(gè)和第四個(gè)又分別進(jìn)行了繼續(xù)的劈分。CU最小為8x8,最大可以和LCU等尺寸。對每個(gè)待編碼的CU,首先從已編碼的重構(gòu)幀中計(jì)算出一個(gè)對當(dāng)前塊的預(yù)測,并與當(dāng)前塊相減,殘差依次執(zhí)行DCT變換、量化,然后反量化、反DCT變換得到重構(gòu)宏塊,存入重構(gòu)幀序列中,用于對其后編碼的⑶產(chǎn)生預(yù)測信號。由于精確的DCT變換是浮點(diǎn)變換,所以實(shí)際中一般用DCT變換的整數(shù)近似或者KLT變換的整數(shù)近似來代替。
[0004]⑶的預(yù)測有2種,第一種是幀內(nèi)預(yù)測,即只使用當(dāng)前編碼幀的已重構(gòu)的像素對當(dāng)前CU進(jìn)行預(yù)測。當(dāng)前最流行的幀內(nèi)預(yù)測技術(shù)是幀內(nèi)方向預(yù)測技術(shù)。幀內(nèi)方向預(yù)測直接以CU為單位進(jìn)行。HEVC中所使用的角度幀內(nèi)預(yù)測如圖4所示。圖4所示白色黑框塊是當(dāng)前編碼⑶,左邊和上邊的灰色條帶是當(dāng)前⑶左上的已重構(gòu)像素,他們用來生成當(dāng)前⑶的預(yù)測信號。每一個(gè)幀內(nèi)方向預(yù)測模式說明一個(gè)當(dāng)然的預(yù)測方向,對于如圖4所示編碼CU中的某一行或某一列(用豎狀網(wǎng)格表示),根據(jù)預(yù)測方向找到左上重構(gòu)塊中的相應(yīng)的像素,如圖4中黑色像素塊所示,作為當(dāng)前行或列的預(yù)測。圖4右側(cè)所示的列預(yù)測因?yàn)樽筮吙可系闹貥?gòu)像素不存在,所以在實(shí)際的預(yù)測開始前,需要根據(jù)當(dāng)前預(yù)測方向從當(dāng)前塊上邊的重構(gòu)像素根據(jù)當(dāng)前幀內(nèi)預(yù)測方向映射過去,如圖5所示。在HEVC中共有33種不同的方向預(yù)測模式,如圖6所示。
[0005]CU的第二種預(yù)測是幀間預(yù)測,這時(shí)當(dāng)前塊的預(yù)測從時(shí)域上在當(dāng)前幀前或當(dāng)前幀后的重構(gòu)幀中的選取。在HEVC中,預(yù)測以預(yù)測單元(PU)為基本單位。一個(gè)2Nx2N大小的⑶有4種PU劃分模式,它既可以作為單一的執(zhí)行運(yùn)動補(bǔ)償,也可以分割成幾個(gè)分別執(zhí)行不同的運(yùn)動補(bǔ)償,如圖7所示。對于一個(gè)任意形狀的運(yùn)動補(bǔ)償過程如圖8、圖9、圖10和圖11所不。顯不時(shí)間為t的巾貞是當(dāng)如編碼巾貞,黑色塊是當(dāng)如編碼塊。顯不時(shí)間為t_to、t-2*t0、t+t0幀是重構(gòu)幀,其中具有點(diǎn)狀邊界的灰色塊是與當(dāng)前編碼塊同一空域位置的塊。顯示時(shí)間為t-t0、t-2*t0、t+t0幀都可以作為當(dāng)前編碼塊的預(yù)測。在圖8中,運(yùn)動向量MVO指向當(dāng)前塊的前向預(yù)測塊BLK0。在圖9中,運(yùn)動向量MVl指向當(dāng)前塊的后向預(yù)測塊BLK1。在圖10中,運(yùn)動向量MV指向當(dāng)前塊的前向預(yù)測塊BLKO,MV的反方向指向后向預(yù)測塊BLKl,BLKO和BLKl的平均作為當(dāng)前塊的預(yù)測。在圖11中,運(yùn)動向量MVO指向當(dāng)前塊的前向預(yù)測塊BLK0,運(yùn)動向量MVl指向當(dāng)前塊的后向預(yù)測塊BLK1,BLKO和BLKl的平均作為當(dāng)前塊的預(yù)測。在前向預(yù)測、后向預(yù)測和對稱預(yù)測中,只有一個(gè)運(yùn)動參數(shù)(包括運(yùn)動向量和參考圖像)需要編碼,而在雙向預(yù)測模式中,2個(gè)運(yùn)動參數(shù)需要編碼。對于每種時(shí)域補(bǔ)償模式,編碼器通過率失真優(yōu)化的運(yùn)動估計(jì)過程得到最優(yōu)的運(yùn)動參數(shù),并將其編入碼流。由于運(yùn)動向量可以指向非整數(shù)位置的像素,所以需要使用插值濾波器計(jì)算出非整數(shù)像素的像素值。
[0006]本發(fā)明描述了一種條件于非零系數(shù)數(shù)目的自適應(yīng)時(shí)域運(yùn)動補(bǔ)償插值濾波器編碼方法,它能提供更高的編碼效率。
【發(fā)明內(nèi)容】
[0007]視頻編碼器和解碼器之間約定了一組時(shí)域運(yùn)動補(bǔ)償插值濾波器。這組插值濾波器至少包含大于I個(gè)四分之一像素插值濾波器,至少包含大于I個(gè)半像素插值濾波器,也可以包含若干八分之X像素插值濾波器,其中X為奇數(shù)且范圍從I到7,也可以包含若干十六分之I像素插值濾波器,其中I為奇數(shù)且范圍從I到15。這組插值濾波器包含一個(gè)缺省的四分之一像素插值濾波器和一個(gè)缺省的半像素插值濾波器。編碼器和解碼器還共同擁有的一個(gè)值T,且T>0。T可以是缺省約定,也可以編碼于圖像或者片段層。
[0008]編碼器使用一個(gè)插值濾波器對一個(gè)產(chǎn)生一個(gè)預(yù)測,當(dāng)殘差完成變換量化后,如果非零量化系數(shù)數(shù)目總和大于等于T時(shí),編碼器在傳輸完量化DCT系數(shù)后,再傳輸一個(gè)插值濾波器的索引以表示所使用的插值濾波器。如果一個(gè)預(yù)測單元的非零量化系數(shù)數(shù)目小于T,那么這個(gè)預(yù)測單元只能使用缺省的插值濾波器而不需要在碼流中編碼任何插值濾波器。編碼器對一個(gè)PU嘗試各種濾波器產(chǎn)生預(yù)測,并通過計(jì)算率失真花費(fèi),選擇那些能滿足解碼條件的插值濾波器組合并將其編入碼流。滿足解碼條件意味著,如果PU有小于T個(gè)量化DCT系數(shù),那么所使用的插值濾波器必須是缺省插值濾波器。PU有大于等于T個(gè)量化DCT系數(shù),那么編碼器必須在傳輸完量化DCT系數(shù)后編碼所使用的插值濾波器。
[0009]解碼器執(zhí)行相反的過程。對于每一個(gè)PU,首先解碼其所有量化DCT系數(shù)。如果大于等于T,那么解碼插值濾波器索引,否則使用缺省插值濾波器。
【專利附圖】
【附圖說明】
[0010]圖1為數(shù)字視頻示例,其中指示I表示時(shí)域采樣,指示2表示空域采樣。
[0011]圖2為塊基運(yùn)動補(bǔ)償DCT變換視頻編碼器,其中指示I表示劈分為LCU,指示2表示中貞內(nèi)預(yù)測信息,指示3表示運(yùn)動參數(shù)信息,指示4表示控制信息,指示5表示量化DCT系數(shù),指示6表示編碼碼流。
[0012]圖3是IXU通過四分樹遞歸的劈分為⑶。
[0013]圖4是角度幀內(nèi)預(yù)測示意圖。
[0014]圖5是角度幀內(nèi)預(yù)測中左上不可用像素的映射計(jì)算示意圖。
[0015]圖6是角度幀內(nèi)預(yù)測所有方向模式示意圖。
[0016]圖7是⑶劈分為PU的所有方式。
[0017]圖8是時(shí)域前向預(yù)測示意圖。
[0018]圖9是時(shí)域后向預(yù)測示意圖。
[0019]圖10是時(shí)域?qū)ΨQ預(yù)測示意圖。
[0020]圖11是時(shí)域雙向預(yù)測示意圖。
[0021]圖12是HEVC中變換分割示意圖,其中的NxN塊可以繼續(xù)同樣的分割。
[0022]圖13是本發(fā)明所述視頻編碼器
[0023]圖14是本發(fā)明所述視頻解碼器
[0024]實(shí)施方式
[0025]圖13是包含本發(fā)明的一個(gè)視頻編碼器。編碼器首先把輸入視頻幀劃分為LCU,然后對LCU進(jìn)行從左到右、從上到下的順序編碼。對每個(gè)LCU,編碼器將其劈分成CU進(jìn)行編碼,然后再把CU劈分為PU進(jìn)行預(yù)測。對每個(gè)PU,編碼器選擇不同的插值濾波器對其進(jìn)行編碼,并通過率失真花費(fèi)的計(jì)算,選擇能滿足解碼條件的組合進(jìn)行編碼。
[0026]圖14所示是包含本發(fā)明的視頻解碼器,它是圖13的逆。解碼器從左到右、從上到下對每個(gè)LCU進(jìn)行解碼。然后解碼器根據(jù)讀出的信息將LCU劈分為CU,然后再讀出的信息。對每個(gè)PU,解碼器首先解碼其量化變換系數(shù),然后得到總的量化系數(shù)的數(shù)目。如果大于等于T,那么解碼器接著解碼插值濾波器索引。否則使用缺省插值濾波器,然后解碼器使用得到的插值濾波器對當(dāng)前PU產(chǎn)生預(yù)測,然后反量化反變換并和預(yù)測相加,得到重構(gòu)塊。
【權(quán)利要求】
1.視頻編碼器和解碼器之間約定一組時(shí)域運(yùn)動補(bǔ)償插值濾波器。編碼器使用一個(gè)插值濾波器對一個(gè)預(yù)測單元產(chǎn)生一個(gè)預(yù)測,當(dāng)殘差完成變換量化后,如果非零量化系數(shù)數(shù)目總和大于等于一個(gè)值T時(shí),編碼器在傳輸完量化DCT系數(shù)后,再傳輸一個(gè)插值濾波器的索引以表示所使用的插值濾波器。如果一個(gè)預(yù)測單元的非零量化系數(shù)數(shù)目小于T,那么這個(gè)預(yù)測單元只能使用缺省的插值濾波器。編碼器對一個(gè)PU嘗試各種濾波器產(chǎn)生預(yù)測,并通過計(jì)算率失真花費(fèi),選擇那些能滿足解碼條件的插值濾波器組合并將其編入碼流。
2.如權(quán)利要求1所述,這組插值濾波器至少包含大于I個(gè)四分之一像素插值濾波器,至少包含大于I個(gè)半像素插值濾波器,也可以包含若干八分之X像素插值濾波器,其中X為奇數(shù)且范圍從I到7,也可以包含若干十六分之y像素插值濾波器,其中y為奇數(shù)且范圍從I到15。這組插值濾波器包含一個(gè)缺省的四分之一像素插值濾波器和一個(gè)缺省的半像素插值濾波器。
3.如權(quán)利要求1所述,T是編碼器和解碼器共同擁有的一個(gè)值,且T>0。T可以是缺省約定,也可以編碼于圖像或者片段層。
4.如權(quán)利要求1所述,相應(yīng)的視頻解碼器解碼一個(gè)預(yù)測單元。一旦所有的非零量化系數(shù)數(shù)目大于等于T,那么解碼器即從碼流中讀取一個(gè)插值濾波器索引,否則設(shè)當(dāng)前預(yù)測單元使用缺省的插值濾波器。
5.如權(quán)利要求1所述,插值濾波器索引的編碼發(fā)生于預(yù)測單元所有量化系數(shù)之后,且它可以條件于量化系數(shù)數(shù)目編碼,也可以不條件于量化系數(shù)數(shù)目編碼。
【文檔編號】H04N19/567GK103796014SQ201210426459
【公開日】2014年5月14日 申請日期:2012年10月31日 優(yōu)先權(quán)日:2012年10月31日
【發(fā)明者】朱洪波 申請人:朱洪波