變換系數(shù)塊的編碼、解碼裝置及方法
【專利說明】
[0001] 本申請(qǐng)是申請(qǐng)日為2011年4月11日、申請(qǐng)?zhí)枮?011800291923、發(fā)明名稱為"顯 著性圖和變換系數(shù)塊的編碼"的專利申請(qǐng)的分案申請(qǐng),其全部內(nèi)容結(jié)合于此作為參考。
技術(shù)領(lǐng)域
[0002] 本申請(qǐng)是針對(duì)指示在變換系數(shù)塊內(nèi)的顯著變換系數(shù)位置的顯著性圖的編碼以及 這種變換系數(shù)塊的編碼。例如,此編碼可,例如,被用于例如圖像和視頻編碼中。
【背景技術(shù)】
[0003] 在傳統(tǒng)視頻編碼中,視頻序列的圖像通常被分解成為塊。塊或塊的色彩分量通過 移動(dòng)補(bǔ)償預(yù)測(cè)或圖像內(nèi)部預(yù)測(cè)預(yù)測(cè)。塊可具有不同的尺寸并且可以是正方形或矩形。塊或 塊的色彩分量的所有取樣使用同一組預(yù)測(cè)參數(shù)被預(yù)測(cè),例如,參考索引(識(shí)別已被編碼的 圖像組中的參考圖像)、移動(dòng)參數(shù)(指明供用于參考圖像以及當(dāng)前圖像之間塊的移動(dòng)的測(cè) 量)、用于指明插值過濾、圖像內(nèi)部預(yù)測(cè)模型等等的參數(shù)。移動(dòng)參數(shù)可通過水平和垂直分量 的位移向量或通過例如,由6個(gè)分量組成的仿射移動(dòng)參數(shù)的較高階移動(dòng)參數(shù)被表示。也可 能一組以上的預(yù)測(cè)參數(shù)(例如,參考索引以及移動(dòng)參數(shù))與單獨(dú)的塊相關(guān)聯(lián)。該情況下,對(duì) 于每組預(yù)測(cè)參數(shù),產(chǎn)生用于塊或塊的色彩分量的單一中間預(yù)測(cè)信號(hào),并且最后的預(yù)測(cè)信號(hào) 利用這些中間預(yù)測(cè)信號(hào)的加權(quán)和建立。加權(quán)參數(shù)以及可能有一固定偏移量(其被加至該加 權(quán)和),可以對(duì)于圖像、或參考圖像、或一組參考圖像為固定的,或它們可被包含在對(duì)應(yīng)的塊 的預(yù)測(cè)參組中。同樣地,靜止影像也經(jīng)常被分解成為塊,并且塊利用圖像內(nèi)部預(yù)測(cè)方法(其 可以是空間圖像內(nèi)部預(yù)測(cè)方法或預(yù)測(cè)塊的DC分量的簡易圖像內(nèi)部預(yù)測(cè)方法)被預(yù)測(cè)。在 角落的情況中,該預(yù)測(cè)信號(hào)也可以是零。
[0004] 在原始?jí)K或原始?jí)K的色彩分量與對(duì)應(yīng)的預(yù)測(cè)信號(hào)之間的差,也被稱為殘差信號(hào), 其通常被變換和量化。一個(gè)二維變換被應(yīng)用于殘差信號(hào)并且所產(chǎn)生的變換系數(shù)被量化。對(duì) 于該變換編碼,對(duì)于一組特定預(yù)測(cè)參數(shù)被使用于其中的塊或塊的色彩分量,可在應(yīng)用變換 之前進(jìn)一步被分割。變換塊可以是等于或小于被用于預(yù)測(cè)的塊。也有可能變換塊包含多于 一個(gè)被用于預(yù)測(cè)的塊。在靜止影像或視頻序列的圖像中不同變換塊可具有不同的尺寸,并 且變換塊可被表示為正方形或矩形塊。
[0005] 產(chǎn)生的量化變換系數(shù),同時(shí)也被稱為變換系數(shù)水平,接著使用熵編碼技術(shù)被傳送。 因此,變換系數(shù)水平的塊通常使用掃描而被映射至變換系數(shù)值的向量(即,有序組)上,其 中不同的掃描可被用于不同的塊。通常,使用曲折掃描。對(duì)于僅含有交錯(cuò)幀的像場(chǎng)取樣的 塊(這些塊可以是在編碼像場(chǎng)中的塊或編碼幀中的像場(chǎng)塊),其通常也使用特別地設(shè)計(jì)用 于像場(chǎng)塊的不同掃描。通常被使用編碼所產(chǎn)生的變換系數(shù)有序序列的熵編碼算法是游程水 平編碼。通常,大量的變換系數(shù)水平是零,并且等于零的一組連續(xù)的變換系數(shù)水平可通過編 碼等于零(游程)的連續(xù)變換系數(shù)水平的數(shù)目而有效地被表示。對(duì)于剩余(非零)的變換 系數(shù),對(duì)實(shí)際的水平編碼。有各種不同的游程水平碼。在非零系數(shù)之前的游程以及該非零 變換系數(shù)的水平可使用單一符號(hào)或代碼字一起被編碼。通常,包含在最后非零值變換系數(shù) 之后被傳送之塊末端之特殊符號(hào)?;蚩赡芟染幋a非零值變換系數(shù)水平數(shù)目,并且根據(jù)這數(shù) 目,水平以及游程被編碼。
[0006] -稍不同的方法被使用于H. 264中之高效率的CABAC熵編碼中。在此,變換系數(shù)水 平之編碼被分為三個(gè)步驟。于第一步驟中,供用于各變換塊之一個(gè)二進(jìn)制語法元素c 〇ded_ block_f lag (編碼_塊_旗標(biāo))被發(fā)送,其以信號(hào)告知變換塊是否包含顯著變換系數(shù)水平 (亦即,為非零值之變換系數(shù))。如果這語法元素指示,顯著變換系數(shù)水平呈現(xiàn),則一個(gè)二 進(jìn)制評(píng)估顯著性圖被編碼,其指明哪個(gè)變換系數(shù)水平具有非零數(shù)值。并且接著,以一逆向 掃描次序,非零值變換系數(shù)水平之?dāng)?shù)值被編碼。顯著性圖如下所述地被編碼。對(duì)于掃描次 序中之各系數(shù),一個(gè)二進(jìn)制語法元素significant_coeff_flag (顯著_系數(shù)_旗標(biāo))被編 碼,其指明對(duì)應(yīng)的變換系數(shù)水平是否等于零值。如果significant_coeff_flag二進(jìn)制值是 等于一,亦即,如果一非零值變換系數(shù)水平存在于這掃描位置,則進(jìn)一步之二進(jìn)制語法元素 last_significant_coeff_flag (最后_顯著_系數(shù)_旗標(biāo))被編碼。這二進(jìn)制值指示目 前顯著變換系數(shù)水平是否為塊內(nèi)部之最后顯著變換系數(shù)水平或在掃描次序中是否緊隨著 進(jìn)一步之顯著變換系數(shù)水平。如果last_significant_coeff_flag指示無進(jìn)一步的顯著變 換系數(shù)緊隨著,則無進(jìn)一步語法元素被編碼用于指明塊之顯著性圖。于接著之步驟中,顯著 變換系數(shù)水平之?dāng)?shù)值被編碼,其在塊內(nèi)部之位置已利用顯著性圖被決定。顯著變換系數(shù)水 平之?dāng)?shù)值藉由使用下面的三個(gè)語法元素以反向掃描次序被編碼。二進(jìn)制語法元素coeff_ abs_greater_one (系數(shù)_絕對(duì)值_較大于_ 一)指示,顯著變換系數(shù)水平絕對(duì)值是否較大 于一。如果二進(jìn)制語法元素coefT_abs_greater_one指示絕對(duì)值是較大于一,則進(jìn)一步的 語法元素coeff_abs_level_minus_one (系數(shù)_絕對(duì)值_水平_減_ 一)被傳送,其指明變 換系數(shù)水平減一之絕對(duì)值。最后,二進(jìn)制語法元素c〇efT_sign_flag (系數(shù)_符號(hào)_旗標(biāo)), 其指明變換系數(shù)數(shù)值之符號(hào),對(duì)于各顯著變換系數(shù)水平被編碼。此外應(yīng)注意到,有關(guān)于顯著 性圖之語法元素以掃描次序被編碼,而有關(guān)于變換系數(shù)水平之實(shí)際數(shù)值的語法元素以反向 掃描次序被編碼而允許更合適的上下文模型之使用。
[0007] 于H. 264中之CABAC熵編碼中,所有用于變換系數(shù)水平之語法元素使用一個(gè)二進(jìn) 制概率模型被編碼。非二進(jìn)制語法元素coefT_abs_level_minus_one首先被二進(jìn)制化,亦 艮P,其被映射至一序列的二進(jìn)制決定(二進(jìn)制值)上,并且這些二進(jìn)制值被順序地編碼。 二進(jìn)制語法元素 significant_coefT_flag、last_significant_coefT_flag、coeff_abs_ greater_one、以及coeff_sign_flag直接地被編碼。各被編碼的二進(jìn)制值(包含二進(jìn)制語 法元素)被關(guān)聯(lián)于一上下文。一上下文表示對(duì)于一類編碼二進(jìn)制值之概率模型。有關(guān)對(duì)于 二個(gè)可能的二進(jìn)制數(shù)值之一者的概率之量測(cè)根據(jù)先前地藉由對(duì)應(yīng)的上下文被編碼之二進(jìn) 制數(shù)值對(duì)于各上下文被估計(jì)。對(duì)于有關(guān)變換編碼之?dāng)?shù)個(gè)二進(jìn)制值,被使用于編碼之上下文 根據(jù)已被發(fā)送之語法元素或根據(jù)一塊內(nèi)部之位置被選擇。
[0008] 顯著性圖指示有關(guān)對(duì)于掃描位置之顯著性(變換系數(shù)水平不是零值)的信息。 于H. 264之CABAC熵編碼中,對(duì)于一個(gè)4x4之塊尺寸,一分別的上下文被使用于各掃描位 置以供編碼二進(jìn)制語法元素 significant_coefT_flag 以及 last_significant_coeff_ flag,其中不同的上下文被使用于一掃描位置之significant_coeff_flag以及l(fā)ast_ significant_coeff_flag。對(duì)于8x8塊,相同之上下文模型被使用于四個(gè)連續(xù)的掃描位 置,導(dǎo)致對(duì)于significant_coeff_flag之16個(gè)上下文模型以及對(duì)于last_significant_ coeff_flag 之另外的 16 個(gè)上下文模型。用于 significant_coeff_flag 及 last_ significant_coeff_flag之這上下文模型方法,對(duì)于大的塊尺寸具有一些缺點(diǎn)。另一方 面,如果各掃描位置被關(guān)聯(lián)于一分別的上下文模型,當(dāng)較大于8x8之塊被編碼時(shí),則上下文 模型數(shù)目顯著地增加。此一增大的上下文模型數(shù)目導(dǎo)致慢的概率估計(jì)調(diào)適并且通常有不精 確的概率估計(jì),其兩方面在編碼效率上皆具有負(fù)面影響。另一方面,由于非零值變換系數(shù)通 常被集中在一變換塊之特定區(qū)域中(該等區(qū)域是取決于殘差信號(hào)對(duì)應(yīng)的塊內(nèi)部之主要結(jié) 構(gòu)),對(duì)于一些連續(xù)掃描位置之上下文模型的指定(如H. 264中對(duì)于8x8塊的指定),對(duì)于 較大的塊尺寸,同時(shí)也不是最理想的。
[0009] 在編碼顯著性圖之后,塊以逆向掃描次序被處理。如果一掃描位置是顯著的,亦 艮P,系數(shù)是不同于零值,貝二進(jìn)制語法元素coeff_abs_greater_one被發(fā)送。起初,對(duì)于 coeff_abs_greater_one語法元素,對(duì)應(yīng)的上下文模型組集之第二上下文模型被挑選。如果 在塊內(nèi)部之任何coeff_abs_greater_one語法元素被編碼的數(shù)值是等于一(亦即,絕對(duì)系 數(shù)是較大于2),則上下文模型切換回至該組集之第一上下文模型并且使用這上下文模型高 至塊末端。否則(在塊內(nèi)部之coeff_abs_greater_one的所有被編碼數(shù)值是零值并且對(duì)應(yīng) 的絕對(duì)系數(shù)水平是等于一),上下文模型根據(jù)在所考慮塊之反向掃描次序先前被編碼/被 解碼之等于零值之coefT_abs_greater_one語法元素?cái)?shù)目被選擇。對(duì)于語法元素coefT_ abs_g reater_〇ne之上下文模型挑選可藉由下列的方程式被概述,其中目前之上下文模型 索引C t+1根據(jù)先前的上下文模型索引Ct以及先前被編碼的語法元素coeff_abs_greater_ one之?dāng)?shù)值(在方程式中利用bin t被表示)被挑選。對(duì)于在一塊內(nèi)部之第一語法元素 coeff_abs_greater_one,上下文模型索引被設(shè)定等于C t= 1。
[0010]
[0011] 用于編碼絕對(duì)變換系數(shù)水平之第二語法元素,當(dāng)對(duì)于相同掃描位置之C〇eff_abs_ greater_one語法元素是等于一時(shí),則僅coeff_abs_level_minus_one被編碼。非二進(jìn)制 語法元素coeff_abs_level_minus_one被二進(jìn)制化成為一序列的二進(jìn)制值并且供用于這 二進(jìn)制化之第一二進(jìn)制值;一上下文模型索引如后所述地被挑選。二進(jìn)制化之其余二進(jìn)制 值利用固定的上下文被編碼。供用于二進(jìn)制化之第一二進(jìn)制值的上下文如之后所述地被挑 選。對(duì)于第一 coeff_abs_level_minus_one i吾法元素,供用于 coeff_abs_level_minus_one 語法元素之第一二進(jìn)制值的上下文模型組集之第一上下文模型被挑選,對(duì)應(yīng)的上下文模型 索引被設(shè)定為C t= 0。對(duì)于coeff_abs_level_minus_one語法元素的各進(jìn)一步的第一二進(jìn) 制值,上下文模型切換至該組集中的下一個(gè)上下文模型,其中組集中之上下文模型數(shù)目被 限定為5。上下文模型挑選可利用下面的公式被表示,其中目前之上下文模型索引C t+1根 據(jù)先前的上下文模型索引Ct被挑選。如在上面所提到的,對(duì)于在一塊內(nèi)部之第一語法元素 coeff_abs_level_minus_one可利用上下文模型索引被設(shè)定為C t= 0。應(yīng)注意,不同的上 下文模型組集被使用于語法元素coeff_abs_greater_one以及coeff_abs_level_minus_ one。
[0012] Ct+1(Ct) = min(Ct+l,4)
[0013] 對(duì)于大塊,這方法具有一些缺點(diǎn)。對(duì)于co