從預測性塊的幀內(nèi)預測的制作方法
【專利摘要】一種用于譯碼視頻數(shù)據(jù)的裝置,所述裝置包括:存儲器,其經(jīng)配置以存儲視頻數(shù)據(jù);以及視頻譯碼器,其包括一或多個處理器,所述處理器經(jīng)配置以:確定使用塊副本內(nèi)模式來譯碼的所述視頻數(shù)據(jù)的圖片的譯碼單元;為所述譯碼單元的第一色度塊確定向量;使用所述向量來定位第一色度參考塊,其中所述第一色度參考塊在所述圖片中;基于所述第一色度參考塊來預測所述第一色度塊;使用所述向量來定位第二色度參考塊,其中所述第二色度參考塊在所述圖片中;以及基于所述第二色度參考塊來預測所述譯碼單元的第二色度塊。
【專利說明】從預測性塊的幀內(nèi)預測
[0001]本申請案主張以下美國臨時申請案中的每一者的權(quán)益,其中的每一者的整個內(nèi)容以引用的方式并入本文中:
[0002]2014年I月9日申請的第61/925,647號美國臨時申請案;
[0003]2014年I月10日申請的第61/926,224號美國臨時申請案。
技術領域
[0004]本發(fā)明涉及視頻譯碼,并且更確切地說,涉及視頻塊的基于其它視頻塊的預測。
【背景技術】
[0005]數(shù)字視頻能力可并入到多種多樣的裝置中,包含數(shù)字電視、數(shù)字直播系統(tǒng)、無線廣播系統(tǒng)、個人數(shù)字助理(PDA)、膝上型或桌上型計算機、平板計算機、電子書閱讀器、數(shù)碼相機、數(shù)字記錄裝置、數(shù)字媒體播放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式或衛(wèi)星無線電電話(所謂的“智能電話”)、視頻電話會議裝置、視頻串流裝置等。數(shù)字視頻裝置實施視頻壓縮技術,例如在由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分高級視頻譯碼(AVC)定義的標準、目前正在開發(fā)的高效率視頻譯碼(HEVC)標準以及此類標準的擴展中所描述的視頻壓縮技術。視頻裝置可通過實施此類視頻壓縮技術來更有效率地發(fā)射、接收、編碼、解碼和/或存儲數(shù)字視頻信息。
[0006]視頻壓縮技術執(zhí)行空間(圖片內(nèi))預測和/或時間(圖片間)預測來減少或去除視頻序列中固有的冗余。對于基于塊的視頻譯碼來說,視頻切片(即,視頻幀或視頻幀的一部分)可分割成視頻塊,視頻塊也可稱作樹塊、譯碼單元(CU)和/或譯碼節(jié)點。使用關于同一圖片中的相鄰塊中的參考樣本的空間預測來編碼圖片的經(jīng)幀內(nèi)譯碼(I)切片中的視頻塊。圖片的經(jīng)幀間譯碼(P或B)切片中的視頻塊可使用相對于同一圖片中的相鄰塊中的參考樣本的空間預測或相對于其它參考圖片中的參考樣本的時間預測。圖片可被稱作幀,且參考圖片可被稱作參考幀。
[0007]空間或時間預測導致待譯碼塊的預測性塊。殘差數(shù)據(jù)表示待譯碼原始塊與預測性塊之間的像素差。經(jīng)幀間譯碼塊是根據(jù)指向形成預測性塊的參考樣本塊的運動向量和指示經(jīng)譯碼塊與預測性塊之間的差的殘差數(shù)據(jù)而編碼的。根據(jù)幀內(nèi)譯碼模式和殘差數(shù)據(jù)來編碼經(jīng)幀內(nèi)譯碼塊。為了進一步壓縮,可將殘差數(shù)據(jù)從像素域變換到變換域,從而產(chǎn)生殘差變換系數(shù),可接著量化所述殘差變換系數(shù)??蓲呙枰婚_始按二維陣列排列的經(jīng)量化變換系數(shù),以便產(chǎn)生變換系數(shù)的一維向量,且可應用熵譯碼以實現(xiàn)更多壓縮。
【發(fā)明內(nèi)容】
[0008]—般來說,本發(fā)明描述用于對包含用于從同一圖片內(nèi)的視頻數(shù)據(jù)的預測性塊對視頻數(shù)據(jù)塊進行幀內(nèi)預測的模式的視頻數(shù)據(jù)進行譯碼的技術,可被稱為IntraBC或IntraMC模式。
[0009]在一實例中,一種解碼視頻數(shù)據(jù)的方法包含:確定使用塊副本內(nèi)模式來譯碼視頻數(shù)據(jù)的圖片的譯碼單元;從與所述譯碼單元相關聯(lián)的多個向量確定用于所述譯碼單元的第一色度塊的向量;使用所述向量來定位第一色度參考塊,其中所述第一色度參考塊位于所述圖片中;基于所述第一色度參考塊預測所述第一色度塊;使用所述向量來定位第二色度參考塊,其中所述第二色度參考塊位于所述圖片中;以及基于所述第二色度參考塊預測所述譯碼單元的第二色度塊。
[0010]在另一實例中,一種編碼視頻數(shù)據(jù)的方法包含:從與譯碼單元相關聯(lián)的多個向量確定用于圖片的譯碼單元的第一色度塊的向量;使用所述向量定位第一色度參考塊,其中所述第一色度參考塊位于所述圖片中;基于所述第一色度參考塊預測所述第一色度塊;使用所述向量來定位第二色度參考塊,其中所述第二色度參考塊位于所述圖片中;基于所述第二色度參考塊預測所述譯碼單元的第二色度塊;以及產(chǎn)生使用塊副本內(nèi)模式來譯碼所述圖片的譯碼單元的指示以及用于所述譯碼單元的每一明度塊的向量的指示,以用于包含在所述經(jīng)編碼視頻數(shù)據(jù)中。
[0011]在另一實例中,一種用于譯碼視頻數(shù)據(jù)的設備包含:用于從與譯碼單元相關聯(lián)的多個向量確定使用塊副本內(nèi)模式來譯碼所述視頻數(shù)據(jù)的圖片的譯碼單元的裝置;用于確定用于所述譯碼單元的第一色度塊的向量的裝置;用于使用所述向量來定位第一色度參考塊的裝置,其中所述第一色度參考塊位于所述圖片中;用于基于所述第一色度參考塊預測所述第一色度塊的裝置;用于使用所述向量來定位第二色度參考塊的裝置,其中所述第二色度參考塊位于所述圖片中;以及用于基于所述第二色度參考塊預測所述譯碼單元的第二色度塊的裝置。
[0012]—種用于譯碼視頻數(shù)據(jù)的裝置,所述裝置包括:存儲器,其經(jīng)配置以存儲視頻數(shù)據(jù);以及視頻譯碼器,其包括一或多個處理器,所述處理器經(jīng)配置以:從與譯碼單元相關聯(lián)的多個向量確定使用塊副本內(nèi)模式來譯碼視頻數(shù)據(jù)的圖片的譯碼單元;確定用于譯碼單元的第一色度塊的向量;使用所述向量來定位第一色度參考塊,其中所述第一色度參考塊位于所述圖片中;基于所述第一色度參考塊預測第一色度塊;使用所述向量來定位第二色度參考塊,其中所述第二色度參考塊位于所述圖片中;以及基于所述第二色度參考塊來預測所述譯碼單元的第二色度塊。
[0013]在另一實例中,一種存儲指令的計算機可讀存儲媒體,所述指令在由一個或一個以上處理器執(zhí)行時,致使所述一或多個處理器:從與譯碼單元相關聯(lián)的多個向量確定使用塊副本內(nèi)模式來譯碼所述視頻數(shù)據(jù)的圖片的譯碼單元;確定用于所述譯碼單元的第一色度塊的向量;使用所述向量來定位第一色度參考塊,其中所述第一色度參考塊位于所述圖片中;基于所述第一色度參考塊預測所述第一色度塊;使用所述向量來定位第二色度參考塊,其中所述第二色度參考塊位于所述圖片中;以及基于所述第二色度參考塊預測所述譯碼單元的第二色度塊。
[0014]附圖及以下描述中陳述一或多個實例的細節(jié)。其它特征、目標和優(yōu)點將從所述描述和圖式以及權(quán)利要求書而顯而易見。
【附圖說明】
[0015]圖1是說明可利用本發(fā)明中描述的技術的實例視頻編碼和解碼系統(tǒng)的框圖。
[0016]圖2是說明根據(jù)本發(fā)明的技術用于預測當前圖片內(nèi)的當前視頻數(shù)據(jù)塊的當前圖片內(nèi)的實例預測性視頻數(shù)據(jù)塊的概念圖。
[0017]圖3是說明用于定義可從其選擇預測性視頻數(shù)據(jù)塊的既定區(qū)的實例技術的概念圖。
[0018]圖4是當前視頻數(shù)據(jù)塊以及可從其導出當前視頻數(shù)據(jù)塊的候選預測性向量的相鄰視頻數(shù)據(jù)塊的實例的概念圖。
[0019]圖5A展示合并模式的空間相鄰運動向量候選者的實例。
[0020]圖5B展示高級運動向量預測(AMVP)模式的空間相鄰運動向量候選者的實例。
[0021 ]圖6是說明可實施本發(fā)明中描述的技術的實例視頻編碼器的框圖。
[0022]圖7是說明可實施本發(fā)明中描述的技術的實例視頻解碼器的框圖。
[0023]圖8是說明根據(jù)本發(fā)明的技術的用于編碼視頻數(shù)據(jù)的實例方法的流程圖。
[0024]圖9是說明根據(jù)本發(fā)明的技術的用于解碼視頻數(shù)據(jù)的實例方法的流程圖。
【具體實施方式】
[0025]視頻序列一般表示為圖片序列。通常,使用基于塊的譯碼技術來譯碼個別圖片中的每一者。也就是說,將每一圖片劃分成塊,且個別地譯碼所述塊中的每一者。譯碼視頻數(shù)據(jù)塊一般涉及形成塊的預測值及譯碼殘差值,也就是說,原始塊與預測值之間的差。具體來說,原始視頻數(shù)據(jù)塊包含像素值矩陣,且預測值包含經(jīng)預測像素值矩陣。殘差值對應于原始塊的像素值與經(jīng)預測像素值之間的逐像素差。
[0026]用于視頻數(shù)據(jù)塊的預測技術一般分類為幀內(nèi)預測或幀間預測。幀內(nèi)預測或空間預測大體上涉及從作為經(jīng)先前譯碼塊的部分的相鄰像素值預測塊。幀間預測或時間預測大體上涉及從經(jīng)先前譯碼圖片(例如,幀或切片)的像素值預測塊。
[0027]許多應用(例如遠程桌面、遠程游戲、無線顯示器、車用信息娛樂、云計算等)在日常生活中正變得常規(guī)。這些應用中的視頻內(nèi)容通常是自然內(nèi)容、文本、人工圖形和其它內(nèi)容的組合。在文本和人工圖形區(qū)中,常常存在重復模式(例如字符、圖標、符號或類似物)。
[0028]從同一圖片內(nèi)的預測性視頻數(shù)據(jù)塊對視頻數(shù)據(jù)塊的幀內(nèi)預測可被稱為塊副本內(nèi)(IntraBC)或幀內(nèi)運動補償(IntraMC),是可使視頻譯碼器能夠移除此冗余且改善幀內(nèi)譯碼效率的技術。在一些視頻譯碼技術中,視頻譯碼器可使用直接在上方或下方或者直接與同一圖片中的當前視頻數(shù)據(jù)塊水平地成一條線的先前經(jīng)重構(gòu)視頻數(shù)據(jù)塊用于當前視頻塊的預測。換句話說,如果將圖片或視頻數(shù)據(jù)幀強加于2-D柵格,那么每一視頻數(shù)據(jù)塊將占據(jù)X值和y值的唯一范圍。因此,一些視頻譯碼器可基于同一圖片中共享同一組X值(即,與當前視頻塊垂直地成一條線)或同一組y值(即,與當前視頻塊水平地成一條線)的經(jīng)先前譯碼的視頻數(shù)據(jù)塊而預測當前視頻數(shù)據(jù)塊。
[0029]視頻譯碼器從同一幀(S卩,同一圖片)內(nèi)不一定直接在當前視頻數(shù)據(jù)塊上方或左邊(或直接在右邊或下方)的先前經(jīng)重構(gòu)視頻數(shù)據(jù)塊預測當前視頻塊可為有利的。通過在預測性集合中包含更多視頻塊,視頻譯碼器可實現(xiàn)當前視頻塊的較準確預測,進而增加譯碼效率。
[0030]—般來說,本發(fā)明描述用于對包含用于從同一圖片內(nèi)的預測性視頻數(shù)據(jù)塊對視頻數(shù)據(jù)塊的幀內(nèi)預測的模式的視頻數(shù)據(jù)進行譯碼技術,可被稱為IntraBC或IntraMC模式。本發(fā)明的IntraBC或IntraMC技術可包含識別當前視頻數(shù)據(jù)塊的預測性視頻數(shù)據(jù)塊。舉例來說,所述預測性視頻數(shù)據(jù)塊可對應于與所述當前視頻數(shù)據(jù)塊相同的圖片內(nèi)的經(jīng)重構(gòu)視頻數(shù)據(jù)塊。所述預測性視頻數(shù)據(jù)塊可來自圖片內(nèi)的既定區(qū)內(nèi),例如當前視頻數(shù)據(jù)塊的上方、右上方、左上方和/或左邊的區(qū)。所述預測性視頻數(shù)據(jù)塊不限于在當前視頻塊正上方或正左方,且因此用以相對于所述當前塊識別所述預測塊得向量不一定是一維向量。實際上,為了識別或確定預測性視頻數(shù)據(jù)塊,視頻譯碼器可對定義包含相對于當前視頻數(shù)據(jù)塊的水平位移分量和垂直位移分量的二維向量的一或多個語法元素進行譯碼。所述二維向量可被稱為塊向量、偏移向量或運動向量,且可例如用以相對于所述當前塊的左上方隅角識別預測性塊。
[0031]如下文將更詳細地解釋,被稱作譯碼單元的視頻數(shù)據(jù)塊可包含多個預測單元??煞謩e預測每一預測單元。因此,對于每一預測單元,可在位流中發(fā)信號通知塊向量,且視頻解碼器可使用塊向量來預測所述預測單元的明度分量和所述預測單元的兩個色度分量。取決于視頻數(shù)據(jù)的色度子取樣格式,視頻解碼器可按比例縮放塊向量,以便預測所述預測單元的兩個色度分量。不會重復用于預測色度分量的塊向量的按比例縮放多次,以輔助可讀性。應理解,當預測色度分量時,可發(fā)生用于預測色度分量的塊向量的此按比例縮放,但在預測色度分量的每個例子中,塊向量的此按比例縮放可能是不必要的。
[0032]根據(jù)現(xiàn)有技術,可使用不同塊向量來識別譯碼單元的每一預測單元的參考塊。舉例來說,譯碼單元的第一預測單元的第一塊向量可用以識別第一預測單元的明度分量的明度參考塊(即,明度樣本的預測塊),且用以識別第一預測單元的兩個色度分量的色度參考塊(即,色度樣本的兩個對應色度塊)。譯碼單元的第二預測單元的第二塊向量可用于識別第二預測單元的明度分量的明度參考塊(即,明度樣本的預測塊),且用以識別第二預測單元的兩個色度分量的色度參考塊(即色度樣本的兩個對應色度塊),等等。
[0033]然而,根據(jù)本發(fā)明的技術,可使用不同塊向量來預測譯碼單元的預測單元的明度分量,而可使用同一塊向量來預測譯碼單元的預測單元的兩個或兩個以上色度分量。舉例來說,如上,譯碼單元的第一預測單元的第一塊向量可用于識別第一預測單元的明度分量的明度參考塊(即,明度樣本的預測塊),妾用以識別第一預測單元的兩個色度分量的色度參考塊(即,色度樣本的兩個對應色度塊)。然而,對于第二預測單元的兩個色度分量,并非使用所述第二塊向量(如在以上實例中),而是使用同一第一塊向量來識別色度參考塊。所述第二塊向量可仍用以識別第二預測單元的明度分量的明度參考塊。
[0034]更具體地說,本發(fā)明描述用以用在圖片或切片內(nèi)預測的塊來支持塊的譯碼的技術。所提出的技術可例如結(jié)合新興的HEVC范圍擴展(RCEx)使用,其可支持高位深度(例如超過8位)和高色度取樣格式(例如,包含4:4:4和4:2:2)。本發(fā)明的技術還可應用于屏幕內(nèi)容譯碼。
[0035]如本文所使用,術語“視頻譯碼器”一般是指視頻編碼器和視頻解碼器兩者。在本發(fā)明中,術語“視頻譯碼”或“譯碼”可一般地指代視頻編碼或視頻解碼。因此,除非另外說明,否則應假定,參考譯碼所描述的技術可由視頻編碼器或視頻解碼器執(zhí)行。在本申請案的一些部分中,可參考視頻解碼或參考視頻解碼器來描述某些技術。然而,不應假定此類技術不適用于視頻編碼或不可由視頻編碼器執(zhí)行。舉例來說,此類技術可作為確定如何編碼視頻數(shù)據(jù)的一部分而執(zhí)行,或可作為視頻編碼器中的視頻解碼環(huán)的一部分而執(zhí)行。
[0036]如本發(fā)明中所使用,術語當前塊是指當前正譯碼的塊,與已經(jīng)譯碼或尚未譯碼的塊相反。類似地,當前譯碼單元、預測單元或變換單元是指當前正譯碼的譯碼單元、預測單元或變換單元。
[0037]圖1是說明可實施本文所描述的技術中的一或多者的實例視頻編碼和解碼系統(tǒng)的框圖。如圖1中所展示系統(tǒng)10包含源裝置12,其提供將由目的地裝置14解碼的經(jīng)編碼視頻數(shù)據(jù)。明確地說,源裝置12經(jīng)由計算機可讀媒體16將視頻數(shù)據(jù)提供到目的地裝置14。源裝置12和目的地裝置14可包括多種多樣的裝置中的任一者,包含桌上型計算機、筆記型(S卩,膝上型)計算機、平板計算機、機頂盒、電話手持機(例如所謂的“智能”電話)、所謂的“智能”平板計算機、電視機、相機、顯示裝置、數(shù)字媒體播放器、視頻游戲控制臺、視頻流式傳輸裝置等。在一些情況下,可裝備源裝置12和目的地裝置14以用于無線通信。
[0038]目的地裝置14可經(jīng)由計算機可讀媒體16接收待解碼的經(jīng)編碼視頻數(shù)據(jù)。計算機可讀媒體16可包括能夠?qū)⒔?jīng)編碼的視頻數(shù)據(jù)從源裝置12移動到目的地裝置14的任一類型的媒體或裝置。在一個實例中,計算機可讀媒體16可包括通信媒體以使源裝置12能夠?qū)崟r地將經(jīng)編碼的視頻數(shù)據(jù)直接發(fā)射到目的地裝置14。可根據(jù)通信標準(例如,無線通信協(xié)議)來調(diào)制經(jīng)編碼的視頻數(shù)據(jù),并將其發(fā)射到目的地裝置14。通信媒體可包括任何無線或有線通信媒體,例如射頻(RF)頻譜或一或多個物理傳輸線。通信媒體可形成基于分組的網(wǎng)絡(例如,局域網(wǎng)、廣域網(wǎng)或全球網(wǎng)絡,例如因特網(wǎng))的部分。通信媒體可包含路由器、交換器、基站或任何其它可用于促進從源裝置12到目的地裝置14的通信的設備。
[0039]在一些實例中,計算機可讀媒體16可包括存儲裝置,且源裝置可經(jīng)由輸出接口22將經(jīng)編碼視頻數(shù)據(jù)輸出到存儲裝置。類似地,可通過輸入接口 28從存儲裝置存取經(jīng)編碼數(shù)據(jù)。所述存儲裝置可包含多種分散式或本地存取式數(shù)據(jù)存儲媒體中的任一者,例如用于存儲經(jīng)編碼視頻數(shù)據(jù)的硬盤驅(qū)動器、藍光光盤、DVD、CD-R0M、快閃存儲器、易失性或非易失性存儲器,或任何其它合適的數(shù)字存儲媒體。舉例來說,媒體生產(chǎn)設施(例如光盤沖壓設施)的計算裝置可從源裝置12接收經(jīng)編碼視頻數(shù)據(jù),且生產(chǎn)含有所述經(jīng)編碼視頻數(shù)據(jù)的光盤。因此,在各種實例中,計算機可讀媒體16可理解為包含各種形式的一或多個計算機可讀媒體。在另一實例中,存儲裝置可對應于可存儲由源裝置12產(chǎn)生的經(jīng)編碼視頻的文件服務器或另一中間存儲裝置。目的地裝置14可經(jīng)由流式傳輸或下載從存儲裝置存取所存儲的視頻數(shù)據(jù)。文件服務器可為能夠存儲經(jīng)編碼視頻數(shù)據(jù)且將經(jīng)編碼視頻數(shù)據(jù)發(fā)射到目的地裝置14的任何類型的服務器。實例文件服務器包含網(wǎng)絡服務器(例如,用于網(wǎng)站)、FTP服務器、網(wǎng)絡附接式存儲(NAS)裝置或本地磁盤驅(qū)動器。目的地裝置14可以通過任何標準數(shù)據(jù)連接(包含因特網(wǎng)連接)來存取經(jīng)編碼視頻數(shù)據(jù)。這可包含無線信道(例如,W1-Fi連接)、有線連接(例如,DSL、電纜調(diào)制解調(diào)器等),或適合于存取存儲在文件服務器上的經(jīng)編碼視頻數(shù)據(jù)的兩者的組合。經(jīng)編碼視頻數(shù)據(jù)從存儲裝置的發(fā)射可能是流式傳輸發(fā)射、下載發(fā)射或其組合。
[0040]本發(fā)明的技術未必限于無線應用或設定。所述技術可應用于視頻譯碼以支持多種多媒體應用中的任一者,例如空中協(xié)議電視廣播、有線電視發(fā)射、衛(wèi)星電視發(fā)射、因特網(wǎng)流式視頻發(fā)射(例如,經(jīng)由HTTP的動態(tài)自適應流式傳輸(DASH))、經(jīng)編碼到數(shù)據(jù)存儲媒體上的數(shù)字視頻、存儲在數(shù)據(jù)存儲媒體上的數(shù)字視頻的解碼或其它應用。在一些實例中,系統(tǒng)10可經(jīng)配置以支持單向或雙向視頻傳輸,以支持例如視頻流式傳輸、視頻重放、視頻廣播和/或視頻電話等應用。
[0041]圖1僅為實例,且本發(fā)明的技術可適用于未必包含編碼裝置與解碼裝置之間的任何數(shù)據(jù)通信的視頻譯碼設定(例如,視頻編碼或視頻解碼)。在其它實例中,可從本地存儲器檢索數(shù)據(jù)、在網(wǎng)絡上流式傳輸數(shù)據(jù),等等。視頻編碼裝置可對數(shù)據(jù)進行編碼并且將數(shù)據(jù)存儲到存儲器,和/或視頻解碼裝置可從存儲器檢索數(shù)據(jù)并且對所述數(shù)據(jù)進行解碼。在許多實例中,由并不彼此通信而是僅將數(shù)據(jù)編碼到存儲器和/或從存儲器檢索數(shù)據(jù)且解碼所述數(shù)據(jù)的裝置執(zhí)行編碼和解碼。
[0042]在圖1的實例中,源裝置12包含視頻源18、視頻編碼器20和輸出接口 22。目的地裝置14包含輸入接口28、視頻解碼器30和顯示裝置32。在其它實例中,源裝置和目的地裝置可包含其它組件或布置。舉例來說,源裝置12可從外部視頻源18(例如外部相機)接收視頻數(shù)據(jù)。同樣,目的地裝置14可與外部顯示裝置32介接,而不是包含集成顯示裝置32。
[0043]圖1的所說明的系統(tǒng)10只是一個實例。任何數(shù)字視頻編碼和/或解碼裝置可執(zhí)行本文所描述的技術。盡管本發(fā)明的技術一般通過視頻編碼裝置來執(zhí)行,但所述技術還可通過視頻編碼器/解碼器(通常被稱作“編碼解碼器”)來執(zhí)行。此外,本發(fā)明的技術還可由視頻預處理器執(zhí)行。源裝置12和目的地裝置14僅為源裝置12產(chǎn)生經(jīng)譯碼視頻數(shù)據(jù)用于發(fā)射到目的地裝置14的此類譯碼裝置的實例。在一些實例中,裝置12、14可以實質(zhì)上對稱的方式操作,使得裝置12、14中的每一者包含視頻編碼和解碼組件。因此,系統(tǒng)10可支持視頻裝置12、14之間的單向或雙向視頻傳輸以例如用于視頻流式傳輸、視頻重放、視頻廣播或視頻電話。
[0044]源裝置12的視頻源18可包含視頻捕獲裝置,例如攝像機、含有先前所捕獲視頻的視頻存檔和/或用于從視頻內(nèi)容提供者接收視頻的視頻饋送接口。作為另一替代方案,視頻源18可產(chǎn)生基于計算機圖形的數(shù)據(jù)作為源視頻,或直播視頻、存檔視頻與計算機產(chǎn)生的視頻的組合。在一些情況下,如果視頻源18是攝像機,那么源裝置12和目的地裝置14可形成所謂的攝像機電話或視頻電話。然而,如上文所提到,本發(fā)明中所描述的技術可大體上適用于視頻譯碼,且可應用于無線和/或有線應用。在每一情況下,可由視頻編碼器20編碼所捕獲、經(jīng)預先捕獲或計算機產(chǎn)生的視頻。經(jīng)編碼視頻信息可接著通過輸出接口 22輸出到計算機可讀媒體16上。在一些實例中,輸出接口22可包含調(diào)制器/解調(diào)器(調(diào)制解調(diào)器)和/或發(fā)射器。
[0045]目的地裝置14的輸入接口28從計算機可讀媒體16接收信息。在一些實例中,輸入接口 28包含接收器和/或調(diào)制解調(diào)器。計算機可讀媒體16的信息可包含經(jīng)編碼視頻位流,其可包含經(jīng)編碼視頻數(shù)據(jù)和由視頻編碼器20界定的其它語法信息,所述語法信息由視頻解碼器30使用且描述塊和例如切片、圖片、圖片群組(GOP)或視頻數(shù)據(jù)等其它經(jīng)譯碼單元的特性和/或處理。顯示裝置32將經(jīng)解碼視頻數(shù)據(jù)顯示給用戶,且可包括多種顯示裝置中的任一者,例如陰極射線管(CRT)、液晶顯示器(IXD)、等離子顯示器、有機發(fā)光二極管(OLED)顯示器或另一類型的顯示裝置。
[0046]視頻編碼器20和視頻解碼器30各自可實施為多種合適的編碼器電路中的任一者,例如一個或一個以上微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、離散邏輯、軟件、硬件、固件或其任何組合。當部分地用軟件實施所述技術時,裝置可將用于軟件的指令存儲在合適的非暫時性計算機可讀媒體中且在硬件中使用一或多個處理器執(zhí)行所述指令以執(zhí)行本發(fā)明的技術。視頻編碼器20和視頻解碼器30中的每一者可包含在一或多個編碼器或解碼器中,所述編碼器或解碼器中的任一者可集成為相應裝置中的組合式編碼器/解碼器(CODEC)的部分。盡管圖1中未圖示,但在一些方面中,視頻編碼器20和視頻解碼器30可各自與音頻編碼器和解碼器集成,且可包含適當?shù)亩嗦窂陀闷?多路分用器單元或其它硬件和軟件,以處置共同數(shù)據(jù)流或單獨數(shù)據(jù)流中的音頻和視頻兩者的編碼。如果適用,那么多路復用器-多路分用器單元可符合ITU H.223多路復用器協(xié)議,或例如用戶數(shù)據(jù)報協(xié)議(UDP)等其它協(xié)議。
[0047]本發(fā)明通??芍敢曨l編碼器20將某些信息“發(fā)信號通知”到另一裝置,例如視頻解碼器30。術語“發(fā)信號通知”通常可指用于解碼經(jīng)壓縮視頻數(shù)據(jù)的語法元素和/或其它數(shù)據(jù)的傳送。此傳送可實時或幾乎實時發(fā)生?;蛘撸稍谝粫r間跨度內(nèi)發(fā)生此通信,例如當在編碼時,以經(jīng)編碼位流將語法元素存儲到計算機可讀存儲媒體時,可發(fā)生此通信,接著在存儲到此媒體之后可由解碼裝置在任何時間檢索所述語法元素。
[0048]出于說明的目的,在本發(fā)明中將視頻編碼器20和視頻解碼器30描述為經(jīng)配置以根據(jù)一或多個視頻譯碼標準來操作。然而,本發(fā)明的技術不一定限于任何特定譯碼標準,且可應用于多種不同譯碼標準。
[0049]視頻編碼器20和視頻解碼器30可根據(jù)例如當前在開發(fā)的高效視頻譯碼(HEVC)標準等視頻譯碼標準(包含任何擴展、修改或添加)而操作,且可符合HEVC測試模型(HM)?;蛘?,視頻編碼器20和視頻解碼器30可根據(jù)其它專屬或行業(yè)標準來操作,所述標準例如ITU-TH.264標準,替代地被稱為MPEG-4第10部分高級視頻譯碼(AVC),或這些標準的擴展。然而,本發(fā)明的技術不限于任何特定譯碼標準。視頻譯碼標準的其它實例包含MPEG-2和ITU-TH.263。
[0050]其它專有或行業(yè)標準的實例包含ITU-T H.26UIS0/IEC MPEG-1 VisuaKITU-TH.262 或 IS0/IEC MPEG-2 VisuaUITU-T H.263、IS0/IEC MPEG-4 Visual 及 ITU-T H.264(也被稱作IS0/IEC MPEG-4 AVC),所述標準包含其可縮放視頻譯碼(SVC)及多視圖視頻譯碼(MVC)擴展,或此些標準的擴展、修改或添加。此外,正在致力于產(chǎn)生H.264/AVC的三維視頻(3DV)譯碼擴展,即基于AVC的3DV。換句話說,實例視頻譯碼標準包含ITU-T H.261、ISO/IEC MPEG-1視覺、ITU-T H.262或IS0/IEC MPEG-2視覺、ITU-T H.263、IS0/IEC MPEG-4視覺和ITU-T H.264(也稱為IS0/IEC MPEG-4 AVC),包含其可縮放視頻譯碼(SVC)和多視圖視頻譯碼(MVC)擴展。ITU-T研究組在2005年3月在ITU-T推薦H.264“用于通用音視頻服務的高級視步頁譯碼(Advanced Video Coding for generic aud1visual services),,中描述了
H.264標準,其在本文中可被稱作H.264標準或H.264規(guī)范或H.264/AVC標準或規(guī)范。聯(lián)合視頻小組(JVT)繼續(xù)致力于對H.264/MPEG-4 AVC的擴展。MVC的最近聯(lián)合草案描述于“用于通用視聽服務的高級視頻譯碼(Advanced video coding for generic aud1visual86”化68)”(11'1]-1'推薦!1.264,2010年3月)中。
[0051]此外,存在一種新的視頻譯碼標準,即高效率視頻譯碼(HEVC),其由ITU-T視頻譯碼專家組(VCEG)及IS0/IEC動畫專家組(MPEG)的視頻譯碼聯(lián)合合作小組(JCT-VC)進行開發(fā)。在圖1的實例中,視頻編碼器20和視頻解碼器30可根據(jù)HEVC操作。布洛斯等人的“高效率視頻譯碼(HEVC)文本規(guī)范草案10(用于FDIS和最后呼叫)(High Efficiency Video Coding(HEVC)text specificat1n draft 10(for FDIS&Last Call) ),,( ITU-T SG 16 WP 3 和IS0/IEC JTC1/SC 29/ffG 11的視頻譯碼聯(lián)合合作小組(JCT-VC)第12次會議,瑞士日內(nèi)瓦,2013年I月14-23日,文獻JCTVC_L1003_v34)是HEVC的最近草案,其從2013年10月17日起從http://phenix.1nt-evry.fr/jet/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zip可用(下文為“JCTVC-L1003-v34”),其整個內(nèi)容以引用的方式并入本文。JCTVC-L1003-v34中定義的HEVC的版本可被稱為HEVC版本ISuHEVC vl” JcCann等人的“高效視頻譯碼(HEVC)測試模型12(HM 12)編碼器描述”,文獻JCTVC-Nl002,可從以下地址獲得:http://phenix.1nt-evry.fr/jet/doc_end_user/current_document.php?id = 8143,其整個內(nèi)容以引用的方式并入,是HEVC的最新編碼器描述。
[0052]支持3D服務的HEVC的兩個擴展已經(jīng)在由ITU-T視頻編碼專家組(VCEG)和IS0/IEC運動圖片專家組(MPEG)的3D視頻譯碼聯(lián)合合作小組(JCT-3V)開發(fā)。所述兩個擴展分別名為MV-HEVC和3D-HEVC。在圖1的實例中,視頻編碼器20和視頻解碼器30可根據(jù)MV-HEVC和/或3D-HEVC 操作。
[0053]MV-HEVC支持多個(紋理)視圖的譯碼而無需改變塊層級設計。泰克等人的“MV-HEVC草案文本5(MV-HEVC Draft Text 5)”(ITU_T SG 16 WP 3和IS0/IEC JTC1/SC 29/ffG11的3D視頻譯碼擴展開發(fā)的聯(lián)合合作小組,文獻編號JCT3V-E1004-v6)是MV-HEVC的最近草案,其從http: //phenix.it-sudparis.eu/ jct2/doc_end_user/documents/5_Vienna/wgll/JCT3V-E1004-v6.zip可用,其整個內(nèi)容以引用的方式并入本文。
[0054]3D-HEVC對多視圖視頻加深度格式進行譯碼,且包含除了 HEVC譯碼模塊外還建構(gòu)的新譯碼工具。新引入的譯碼工具適用于紋理譯碼和深度譯碼兩者。泰克等人的“3D-JEVC草案文本 1(3D-JEVC Draft Text 1),,(ITU_T SG 16 WP 3和IS0/IEC JTC1/SC 29/ffG 11 的3D視頻譯碼擴展開發(fā)的聯(lián)合合作小組,第5次會議,奧地利維也納,2013年7月27日至Ij8月2H,文獻編號 JCT3V-E1001-v3)是 3D-HEVC 的最近草案,其從 http://phenix.1t-sudparis.eu/jct2/doc_end_user/documents/5_Vienna/wgll/JCT3V-E1001-v3.zip可用,其整個內(nèi)容以引用的方式并入本文。用于3D-HEVC的最近軟件3D-HTM可從以下鏈接下載:[3D-HTM版本8.0]:https: //hevc.hh1.fraunhofer.de/svn/svn_3DVCSoftware/tags/HTM-8.0/。最近軟件描述,張等人的 “3D-HEVC測試模型5(3D-HEVC Test Model 5),,(ITU_T SG16 WP 3和IS0/IEC JTC1/SC 29/ffG 11的3D視頻譯碼擴展開發(fā)聯(lián)合合作小組第5次會議,奧地利維也納,2013年7月27日到8月2日,文獻編號JCT3V-E1005,其整個內(nèi)容以引用的方式并入本文)從http://phenix.1t-sudparis.eu/jct2/doc_end_user/current_document.php?id = 1360 可用。
[0055]HEVC標準的額外開發(fā)和擴展包含HEVC范圍擴展。HEVC范圍擴展的實例在弗林(Flynn)等人的“高效視頻譯碼(HEVC)范圍擴展文本規(guī)范:草案4(High Efficiency VideoCoding(HEVC)Range Extens1ns text specificat1n:Draft 4),,(ITU_T SG 16 WP 3和IS0/IEC JTC1/SC 29/ffG 11 的視頻譯碼聯(lián)合合作小組(JCT-VC),文獻JCTVC_N1005_v3,第13次會議,韓國仁川,2013年4月18到26日)中描述,其以全文引用的方式并入本文中且在http://phenix.1nt-evry.fr/jet/doc_end_user/current_document.php?id = 8139可用。
[0056]HEVC標準的額外開發(fā)和擴展包含屏幕內(nèi)容譯碼(SCC)擴展。
[0057]在HEVC和其它視頻譯碼規(guī)范中,視頻序列通常包含一系列圖片。圖片也可被稱作“幀”。圖片可包含三個樣本陣列,表示為SL、Scb以及Scrt3SL是明度樣本的二維陣列(即,塊)。Scb是Cb色度樣本的二維陣列。So是Cr色度樣本的二維陣列。色度(chrominance)樣本在本文中還可被稱為“色度(chroma)”樣本。在其它情況下,圖片可為單色的且可僅包含明度樣本陣列。
[0058]HEVC標準化努力是基于被稱作HEVC測試模型(HM)的視頻譯碼裝置的演進模型。HM假設視頻譯碼裝置根據(jù)(例如)ITU-T H.264/AVC相對于現(xiàn)有裝置的若干額外能力。舉例來說,盡管H.264提供了九個幀內(nèi)預測編碼模式,但HM可提供多達三十三種幀內(nèi)預測編碼模式。
[0059]—般來說,HM的工作模型描述視頻編碼器20可將視頻幀或圖片劃分為譯碼樹單元(CTU)序列,也被稱作最大譯碼單元(LCU)或樹塊。CTU中的每一者可包括明度樣本的譯碼樹塊、色度樣本的兩個對應的譯碼樹塊,以及用以對譯碼樹塊的樣本進行譯碼的語法結(jié)構(gòu)。在單色圖片或包括單獨的顏色平面的圖片中,CTU可包括單個譯碼樹塊及用于對所述譯碼樹塊的樣本進行譯碼的語法結(jié)構(gòu)。
[0060]位流內(nèi)的語法數(shù)據(jù)可定義CTU(就像素數(shù)目來說的最大譯碼單元)的大小。CTU可為樣本的NxN塊。HEVC的CTU可大體上類似于其它視頻譯碼標準(例如,H.264/AVC)的宏塊。然而,CTU未必限于特定大小,并且可包含一或多個譯碼單元(⑶)。
[0061]視頻幀或圖片可被分割成一或多個切片。切片包含呈譯碼或掃描次序的多個連續(xù)CTU。每一CTU可根據(jù)四叉樹而分裂成譯碼單元(⑶)。⑶可為樣本的NxNi夬。一般來說,四叉樹數(shù)據(jù)結(jié)構(gòu)包含每個CU—個節(jié)點,其中一個根節(jié)點對應于所述樹塊。如果一個CU分裂成四個子CU,那么對應于CU的節(jié)點包含四個葉節(jié)點,其中的每一者對應于所述子CU中的一者。CU或子CU(也可被稱作CU)可包括具有明度樣本陣列、Cb樣本陣列和Cr樣本陣列的圖片的明度樣本的譯碼塊以及色度樣本的兩個對應譯碼塊,以及用以對譯碼塊的樣本進行譯碼的語法結(jié)構(gòu)。在單色圖片或包括單獨的顏色平面的圖片中,CU可包括單個譯碼塊及用于對所述單個譯碼塊的樣本進行譯碼的語法結(jié)構(gòu)。
[0062]四分樹數(shù)據(jù)結(jié)構(gòu)的每一節(jié)點可提供用于對應CU的語法數(shù)據(jù)。舉例來說,四叉樹中的節(jié)點可包含分裂旗標,其表明對應于所述節(jié)點的所述CU是否分裂成子CU。用于CU的語法元素可以遞歸地來定義,且可取決于CU是否分裂成數(shù)個子CU。如果CU不進一步分裂,那么將其稱為葉CU O在本發(fā)明中,葉CU的四個子CU也可被稱作葉CU,即使不存在原始葉CU的明確分裂時也是如此。舉例來說,如果16 X 16大小的⑶未進一步分裂,那么這四個8X8子⑶也可被稱作葉CU,雖然16X16CU從未分裂。與經(jīng)譯碼位流相關聯(lián)的語法數(shù)據(jù)可定義樹塊可分裂的最大次數(shù),被稱作最大CU深度,且還可定義譯碼節(jié)點的最小大小。因此,位流還可定義最小譯碼單元(SCU)。
[0063]CU包含譯碼節(jié)點和與所述譯碼節(jié)點相關聯(lián)的預測單元(PU)和變換單元(TU) XU的大小對應于譯碼節(jié)點的大小并且形狀必須是正方形。CU的大小可介于8X8個像素至多達具有最大64X64個像素或更大的樹塊大小的范圍內(nèi)。一般來說,視頻編碼器20和視頻解碼器30以一種模式(例如,幀內(nèi)預測或幀間預測)對每一 CU進行譯碼。
[0064]每一⑶可含有一或多個PU和一或多個TU。舉例來說,與⑶相關聯(lián)的語法數(shù)據(jù)可描述將CU分割成一或多個PU。分割模式可在CU被跳過或經(jīng)直接模式編碼、經(jīng)幀內(nèi)預測模式編碼或經(jīng)幀間預測模式編碼之間有所不同。PU可分割為非正方形(例如,矩形)形狀。舉例來說,與CU相關聯(lián)的語法數(shù)據(jù)還可描述根據(jù)四叉樹將CU分割成一或多個TU13TU可為正方形或非正方形(例如,矩形)形狀。
[0065]CU的PU和TU可包括圖片的明度樣本的預測塊、圖片的色度樣本的兩個對應的預測塊,以及用以對預測塊樣本進行預測的語法結(jié)構(gòu)。視頻編碼器20可產(chǎn)生CU的每一 PU的預測性明度、Cb和Cr塊。在單色圖片或包括單獨的色彩平面的圖片中,PU可包括單個預測塊,以及用以對所述單個預測塊進行預測的語法結(jié)構(gòu)。
[0066]視頻編碼器20和視頻解碼器30可支持具有各種大小的HJ。假定特定⑶的大小為2Nx2N,那么視頻編碼器20和視頻解碼器30可支持2Nx2N或NxN的PU大小的幀內(nèi)預測,以及2Nx2N、2NxN、Nx2N或NxN的對稱PU大小的幀間預測。視頻編碼器20和視頻解碼器30還可支持2NxnU、2NxnD、nLx2N和nRx2N的PU大小的幀間預測的不對稱分割。在不對稱分割中,不分割CU的一個方向,但是將另一方向分割成25%和75%。⑶的對應于25%分區(qū)的部分由“η”接以“上”、“下”、“左”或“右”的指示來指示。因此,例如,“2NxnU”是指水平分割的2NX 2N CU,具有2Nx0.5N PU在頂部,且2Nxl.5N PU在底部。在HEVC中,最小PU大小為8x4和4x8。
[0067]在本發(fā)明中,“NXN”與“N乘N”可互換地使用以指就豎直和水平尺寸來說的視頻塊的像素尺寸,例如,16 X 16像素或16乘16像素。一般來說,16x16塊在垂直方向上具有16個像素(y= 16),且在水平方向上具有16個像素(X= 16)。同樣,NxN塊總體上在垂直方向上具有N個像素,并且在水平方向上具有N個像素,其中N表示非負整數(shù)值。塊中的像素可布置成行和列。此外,塊未必需要在水平方向上與在豎直方向上具有相同數(shù)目個像素。舉例來說,塊可包括NxM個像素,其中M未必等于N。
[0068]一般來說,PU表示對應于相對應的⑶的全部或一部分的空間區(qū)域,并且可包含用于檢索PU的參考樣本的數(shù)據(jù)。此外,PU包含與預測有關的數(shù)據(jù)。舉例來說,當PU經(jīng)幀內(nèi)模式編碼時,HJ的數(shù)據(jù)可描述用于對應于所述PU的預測塊的幀內(nèi)預測模式。
[0069]作為另一實例,當PU經(jīng)幀間模式編碼時,PU可包含定義PU的一或多個運動向量的數(shù)據(jù)。定義PU的運動向量的數(shù)據(jù)可描述例如運動向量的水平分量、運動向量的垂直分量、運動向量的分辨率(例如,四分之一像素精度或八分之一像素精度)C3PU還可包含識別運動向量指向的參考圖片的數(shù)據(jù),例如到包含所述參考圖片的參考圖片列表中的索引。
[0070]幀間預測可為單向的(S卩,單向預測)或雙向的(S卩,雙向預測)。為了執(zhí)行單向預測或雙向預測,視頻編碼器20和視頻解碼器可產(chǎn)生當前圖片的第一參考圖片列表(RefPicListO)和第二參考圖片列表(RefPicListl)。參考圖片列表中的每一者可包含一或多個參考圖片。在構(gòu)造參考圖片列表(即RefPicListO和RefPicListl,如果可用)之后,可使用到參考圖片列表的參考索引來識別參考圖片列表中包含的任何參考圖片。
[0071]參考圖片可為在時間上(例如顯示、次序)的先前圖片、未來圖片,或從兩個或兩個以上先前編碼圖片的預測的組合。視頻譯碼器(例如,視頻編碼器20和視頻解碼器30)使用圖片次序計數(shù)(POC)以識別圖片的時間次序。視頻譯碼器還使用圖片的POC值用于參考圖片列表構(gòu)造和運動向量按比例縮放。視頻編碼器20或視頻解碼器30可將參考圖片存儲在參考圖片存儲器中,例如參考圖片存儲器368(圖6)和參考圖片存儲器396(圖7)。
[0072]在當前視頻塊(例如PU)是根據(jù)本發(fā)明的技術使用IntraBC譯碼時,界定塊的二維向量(其可被稱為塊向量、偏移向量、運動向量或位移向量)的數(shù)據(jù)可描述例如向量的水平分量、向量的垂直分量、向量的分辨率(例如,四分之一像素精度或八分之一像素精度)。然而,根據(jù)本發(fā)明的技術使用IntraBC預測的PU的數(shù)據(jù)不需要識別運動向量指向的參考圖片,因為參考塊在與當前視頻塊相同的幀或圖片內(nèi)。
[0073]在視頻編碼器20產(chǎn)生⑶的一或多個PU的預測性明度、Cb和Cr塊之后,視頻編碼器20可產(chǎn)生CU的明度殘差塊。CU的明度殘差塊中的每一樣本指示CU的PU的預測性明度塊中的明度樣本與CU的原始明度譯碼塊中的對應樣本之間的差。另外,視頻編碼器20可產(chǎn)生CU的Cb殘差塊。CU的Cb殘差塊中的每一樣本可指示CU的PU的預測性Cb塊中的Cb樣本與CU的原始Cb譯碼塊中的對應樣本之間的差。視頻編碼器20還可產(chǎn)生⑶的Cr殘差塊。CU的Cr殘差塊中的每一樣本可指示CU的PU的預測性Cr塊中的Cr樣本與CU的原始Cr譯碼塊中的對應樣本之間的差。
[0074]具有一或多個PU的葉⑶還可包含一或多個變換單元(TU)。⑶的TU可包括明度樣本的變換塊、色度樣本的兩個對應的變換塊,以及用以對變換塊樣本進行變換的語法結(jié)構(gòu)。視頻編碼器20可變換與TU相關聯(lián)的殘差塊內(nèi)的像素差值以產(chǎn)生可經(jīng)量化的變換系數(shù)。視頻編碼器20可例如將離散余弦變換(DCT)、整數(shù)變換、小波變換或概念上相似的變換應用于殘差視頻數(shù)據(jù)。
[0075]TU可使用RQT(還被稱作TU四叉樹結(jié)構(gòu))來指定,如上文所論述。舉例來說,分裂旗標可指示葉CU是否分裂成四個變換單元。接著,每一變換單元可進一步分裂成更多個子TU。當TU未進一步分裂時,其可被稱作葉TU13TU未必限于PU的大小。因此,TU可大于或小于PU。對于幀內(nèi)譯碼,PU可與同一CU的對應葉TU并置。在一些實例中,葉TU的最大大小可對應于對應葉CU的大小。一般來說,除非另有提及,否則本發(fā)明分別使用術語CU和TU來指葉CU和葉TU。
[0076]本發(fā)明可使用術語“視頻單元”、“視頻塊”或“視頻數(shù)據(jù)塊”來指代樣本的任何一或多個塊以及用以如本文中所描述對所述樣本的一或多個塊的樣本進行譯碼的語法結(jié)構(gòu)。實例類型的視頻塊可包含HE VC的上下文中的CTU、⑶、PU或TU,或其它標準的上下文中的類似數(shù)據(jù)結(jié)構(gòu)(例如H.264/AVC中的宏塊或其宏塊分區(qū))。
[0077]在任何用于產(chǎn)生變換系數(shù)的變換之后,視頻編碼器20可執(zhí)行變換系數(shù)的量化。量化大體上指代對變換系數(shù)進行量化以可能減少用以表示所述系數(shù)的數(shù)據(jù)的量從而提供進一步壓縮的過程。量化過程可減小與系數(shù)中的一些或全部相關聯(lián)的位深度。舉例來說,η位值可在量化期間被下舍入到m位值,其中η大于m。
[0078]在量化之后,視頻編碼器可掃描變換系數(shù),從包含經(jīng)量化變換系數(shù)的二維矩陣產(chǎn)生一維向量。掃描可經(jīng)設計以將較高能量(并且因此較低頻率)的系數(shù)放置在陣列的前面,并且將較低能量(并且因此較高頻率)的系數(shù)放置在陣列的背面。在一些實例中,視頻編碼器20可利用預定義掃描次序來掃描經(jīng)量化的變換系數(shù)以產(chǎn)生可被熵編碼的串行化向量。在其它實例中,視頻編碼器20可執(zhí)行自適應掃描。在掃描經(jīng)量化變換系數(shù)以形成一維向量之后,視頻編碼器20可例如根據(jù)上下文自適應可變長度譯碼(CAVLC)、上下文自適應二進制算術譯碼(CABAC)、基于語法的上下文自適應二進制算術譯碼(SBAC)、概率區(qū)間分割熵(PIPE)譯碼或另一熵編碼方法熵編碼一維向量。視頻編碼器還20也可對與經(jīng)編碼視頻數(shù)據(jù)相關聯(lián)的語法元素進行熵編碼以供視頻解碼器30在解碼視頻數(shù)據(jù)時使用。
[0079]為了執(zhí)行CABAC,視頻編碼器20可向待發(fā)射的符號指派上下文模型內(nèi)的上下文。上下文可涉及(例如)符號的相鄰值是否為非零。為了執(zhí)行CAVLC,視頻編碼器20可選擇用于待發(fā)射的符號的可變長度碼。VLC中的碼字可經(jīng)構(gòu)造使得相對較短碼對應于更有可能符號,而較長碼對應于不太可能符號。以此方式,使用VLC可例如實現(xiàn)優(yōu)于針對待發(fā)射的每一符號使用等長度碼字的位節(jié)省。概率確定可基于指派給符號的上下文。
[0080]另外,視頻編碼器20可例如通過對殘差數(shù)據(jù)進行逆量化和逆變換來解碼經(jīng)編碼圖片,且將殘差數(shù)據(jù)與預測數(shù)據(jù)進行組合。以此方式,視頻編碼器20可模擬由視頻解碼器30執(zhí)行的解碼過程。因此,視頻編碼器20和視頻解碼器30兩者具有對大體上相同的經(jīng)解碼視頻數(shù)據(jù)(例如圖片或來自圖片的塊)的存取權(quán),以用于圖片內(nèi)、圖片間或IntraBC預測。
[0081]視頻編碼器20可輸出經(jīng)編碼視頻位流,其包含形成經(jīng)譯碼圖片與包含語法元素的相關聯(lián)數(shù)據(jù)的表示的位序列。位流可包括一連串網(wǎng)絡抽象層(NAL)單元。NAL單元中的每一者可包含NAL單元標頭,且可包封原始字節(jié)序列有效負載(RBSP) JAL單元標頭可包含指示NAL單元類型碼的語法元素。由NAL單元的NAL單元標頭指定的所述NAL單元類型代碼指示NAL單元的類型。RBSP可包括含有囊封在NAL單元內(nèi)的整數(shù)數(shù)目個字節(jié)的語法結(jié)構(gòu)。在一些情況下,RBSP包含零個位。
[0082]不同類型的NAL單元可包封不同類型的RBSP。舉例來說,第一類型的NAL單元可包封參數(shù)集的RBSP、第二類型的NAL單元可包封經(jīng)譯碼切片的RBSP、第三類型的NAL單元可包封補充增強信息(SEI)的RBSP,等等。包封視頻譯碼數(shù)據(jù)的RBSP (與參數(shù)集和SEI消息的RBSP相對)的NAL單元可被稱為視頻編碼層(VCL)NAL單元。包封經(jīng)譯碼切片的NAL單元可在本文中被稱作經(jīng)譯碼切片NAL單元。用于經(jīng)譯碼切片的RBSP可包含切片標頭和切片數(shù)據(jù)。
[0083]除經(jīng)編碼視頻數(shù)據(jù)之外,視頻編碼器20可在經(jīng)編碼視頻位流中包含告知視頻解碼器如何對特定視頻數(shù)據(jù)塊或其分組進行解碼的語法元素。視頻編碼器20可以多種語法結(jié)構(gòu)包含語法元素,例如取決于其參考的視頻結(jié)構(gòu)(例如,序列、圖片、切片、塊)的類型以及其值可改變的頻繁程度。舉例來說,視頻編碼器20可在例如視頻參數(shù)集(VPS)、序列參數(shù)集(SPS)或圖片參數(shù)集(PPS)等參數(shù)集中包含語法元素。作為其它實例,視頻編碼器20可包含SEI消息中的語法元素以及切片標頭。
[0084]—般來說,視頻解碼器30可執(zhí)行與由視頻編碼器執(zhí)行的編碼過程相反的解碼過程。舉例來說,視頻解碼器30可使用由視頻編碼器用來對經(jīng)量化視頻數(shù)據(jù)進行熵編碼的熵編碼技術的逆過程來執(zhí)行熵解碼。視頻解碼器30可進一步使用由視頻編碼器20采用的量化技術的逆過程來逆量化視頻數(shù)據(jù),且可執(zhí)行由視頻編碼器20使用的變換的逆過程來產(chǎn)生經(jīng)量化的變換系數(shù)。視頻解碼器30可接著將所得殘差塊應用于鄰近參考視頻數(shù)據(jù)(幀內(nèi)預測)、來自另一圖片的預測性塊(幀間預測)或來自同一圖片的預測性塊(IntraBC)以產(chǎn)生用于最終顯示的視頻塊。視頻解碼器30可經(jīng)配置、經(jīng)指令、經(jīng)控制或經(jīng)引導以基于由視頻編碼器20提供的語法元素與由視頻解碼器30接收的位流中的經(jīng)編碼視頻數(shù)據(jù)來執(zhí)行由視頻編碼器20執(zhí)行的各種過程的相反過程。
[0085]每一圖片可包括明度分量和一或多個色度分量。因此,本文所描述的基于塊的編碼和解碼操作可相等地適用于包含明度或色度像素值或與其相關聯(lián)的塊,例如CU、PU和TU。
[0086]IntraMC(也被稱作IntraBC)是使得能夠移除圖片內(nèi)冗余且改善幀內(nèi)譯碼效率的專用技術,如布德甲維等人的“AHG8:使用幀內(nèi)運動補償?shù)囊曨l譯碼(AHG8: Video codingusing Intra mot1n compensat1n)”(文獻:JCTVC_M0350,ITU-T SG 16 WP 3和IS0/IECJTC 1/SC 29/ffG 11的視頻譯碼聯(lián)合合作小組(JCT-VC),第13次會議,韓國仁川,2013年4月18到26日(下文為“JCT-VC M0350”))中報告。JCT-VC M0350以全文引用的方式并入本文中,且可從http: //phenix.1nt-evry.fr/jet/doc_end_user/current_document.php?id =7601下載。根據(jù)JCT-VC M0350,IntraMC包含對:(I)一維偏移或位移向量(此處也被稱為塊向量、運動向量或“MV”),其指示預測信號(例如,同一幀或圖片內(nèi)的塊)從當前視頻塊(例如,CU)移位的位置,連同(2)殘差信號一起進行譯碼。對于⑶或使用IntraMC的其它塊,從同一圖片中的已經(jīng)重構(gòu)區(qū)獲得預測信號。
[0087]圖2是說明根據(jù)本發(fā)明用于根據(jù)用于從同一圖片內(nèi)的視頻數(shù)據(jù)的預測性塊對視頻數(shù)據(jù)塊的幀內(nèi)預測的模式(例如,根據(jù)本發(fā)明的技術根據(jù)IntraBC模式)預測當前圖片103內(nèi)的當前視頻數(shù)據(jù)塊102的實例技術的概念圖。圖2說明當前圖片103內(nèi)的預測性視頻數(shù)據(jù)塊104。視頻譯碼器(例如視頻編碼器20和/或視頻解碼器30)可依據(jù)根據(jù)本發(fā)明的技術的IntraBC模式,使用預測性視頻塊104來預測當前視頻塊102。
[0088]視頻編碼器20從一組先前經(jīng)重構(gòu)的視頻數(shù)據(jù)塊選擇用于預測當前視頻塊102的預測性視頻塊104。視頻編碼器20通過逆量化和逆變換也包含在經(jīng)編碼視頻位流中的視頻數(shù)據(jù)且將所得殘差塊與用以預測經(jīng)重構(gòu)視頻數(shù)據(jù)塊的預測性塊求和來重構(gòu)視頻數(shù)據(jù)塊。在圖2的實例中,圖片103內(nèi)的既定區(qū)108也可被稱作“既定區(qū)域”或“光柵區(qū)域”,包含先前經(jīng)重構(gòu)視頻塊的集合。視頻編碼器20可以多種方式定義圖片103內(nèi)的既定區(qū)108,如下文更詳細描述。視頻編碼器20可根據(jù)基于既定區(qū)108內(nèi)的各種視頻塊預測和譯碼當前視頻塊102的相對效率和準確性的分析,從既定區(qū)108中的視頻塊當中選擇預測性視頻塊104來預測當前視頻塊 102。
[0089]視頻編碼器20確定表示預測性視頻塊104相對于當前視頻塊102的位置或位移的二維向量106。二維塊向量106包含水平位移分量112和垂直位移分量110,其分別表不預測性視頻塊104相對于當前視頻塊102的水平和垂直位移。視頻編碼器20可包含識別或限定經(jīng)編碼視頻位流中的例如定義水平位移分量112和垂直位移分量110的二維塊向量106的一或多個語法元素。視頻解碼器30可解碼所述一或多個語法元素以確定二維塊向量106,且使用所確定的向量來識別用于當前視頻塊102的預測性視頻塊104。
[0090]在一些實例中,二維塊向量106的分辨率可為整數(shù)像素,例如約束為具有整數(shù)像素分辨率。在此些實例中,水平位移分量112和垂直位移分量110的分辨率可為整數(shù)像素。在此些實例中,視頻編碼器20和視頻解碼器30不需要內(nèi)插預測性視頻塊104的像素值來確定用于當前視頻塊102的預測符。
[0091 ]在其它實例中,水平位移分量112和垂直位移分量110中的一者或兩者的分辨率可為子像素。舉例來說,分量112和114中的一者可具有整數(shù)像素分辨率,而另一者具有子像素分辨率。在一些實例中,水平位移分量112和垂直位移分量110兩者的分辨率可為子像素,但水平位移分量112和垂直位移分量110可具有不同分辨率。
[0092]在一些實例中,視頻譯碼器(例如,視頻編碼器20和/或視頻解碼器30)基于特定層級來適應水平位移分量112和垂直位移分量110的分辨率,例如塊層級、切片層級或圖片層級適應。舉例來說,視頻編碼器20可例如在切片標頭中在切片層級發(fā)信號通知指示水平位移分量112和垂直位移分量110的分辨率是整數(shù)像素分辨率還是非整數(shù)像素分辨率的旗標。如果所述旗標指示水平位移分量112和垂直位移分量110的分辨率不是整數(shù)像素分辨率,那么視頻解碼器30可推斷分辨率是子像素分辨率。在一些實例中,不一定是旗標的一或多個語法元素可針對每一切片或其它視頻數(shù)據(jù)單元發(fā)射,以指示水平位移分量112和/或垂直位移分量110的共同或個別分辨率。
[0093]在又其它實例中,代替于旗標或語法元素,視頻編碼器20可基于分辨率上下文信息而設定且視頻解碼器30可從分辨率上下文信息推斷水平位移分量112和/或垂直位移分量110的分辨率。分辨率背景信息可包含例如包含當前視頻塊102的圖片或圖片序列的色彩空間(例如YUV、RGB等)、特定色彩格式(例如4:4:4、4:2:2、4: 2:0等)、幀大小、幀速率或量化參數(shù)(QP)。在至少一些實例中,視頻譯碼器可基于與經(jīng)先前譯碼幀或圖片相關的信息確定水平位移分量112和/或垂直位移分量110的分辨率。以此方式,水平位移分量112的分辨率和垂直位移分量110的分辨率可預定義、發(fā)信號通知、可從其它輔助信息(例如,分辨率上下文信息)推斷,或可基于已經(jīng)譯碼的幀。
[0094]當前視頻塊102可為⑶,或⑶的PU。在一些實例中,視頻譯碼器(例如,視頻編碼器20和/或視頻解碼器30)可將根據(jù)IntraBC預測的⑶分裂為若干PU。在此些實例中,視頻譯碼器可確定⑶的PU中的每一者的相應(例如,不同)二維向量106。舉例來說,視頻譯碼器可將2Nx2N CU分裂為兩個2NxN PU、兩個Nx2N PU,或四個NxN PU。作為其它實例,視頻譯碼器可將2Nx2N CU分裂為((N/2)xN+(3N/2)xN)PU、((3N/2)xN+(N/2)xN)PU、(Nx(N/2)+Nx(3N/2))PU、(Nx(3N/2)+Nx(N/2))PU、四個(N/2)x2N HJ或四個2Nx(N/2)PU。在一些實例中,視頻譯碼器可使用2Nx2N PU來預測2Nx2N CU。
[0095]當前視頻塊102可為明度視頻塊,或?qū)诿鞫纫曨l塊的色度視頻塊。在一些實例中,視頻編碼器20可僅將定義明度視頻塊的二維向量106的一或多個語法元素編碼到經(jīng)編碼視頻位流中。在此些實例中,視頻解碼器30可基于針對明度塊用信號表示的二維向量導出對應于所述明度塊的一或多個色度塊中的每一者的二維向量106。
[0096]取決于顏色格式,例如顏色取樣格式或色度取樣格式,視頻譯碼器可相對于明度視頻塊下取樣對應色度視頻塊。顏色格式4:4:4不包含下取樣,意味著色度塊在水平和垂直方向中包含與明度塊相同數(shù)目的樣本。顏色格式4:2:2在水平方向上下取樣,意味著在色度塊中在水平方向上相對于明度塊存在二分之一多的樣本。顏色格式4:2:0在水平和垂直方向中下取樣,意味著在色度塊中在水平和垂直方向中相對于明度塊存在二分之一多的樣本。
[0097]在其中視頻譯碼器基于對應明度塊的向量106確定色度視頻塊的向量106的實例中,視頻譯碼器可需要修改明度向量。舉例來說,如果明度向量106具有整數(shù)分辨率,其中水平位移分量112和/或垂直位移分量110為奇數(shù)數(shù)目的像素,且顏色格式是4:2:2或4:2:0,那么經(jīng)轉(zhuǎn)換明度向量可不指向?qū)葔K中的整數(shù)像素位置。在此些實例中,視頻譯碼器可按比例縮放明度向量以用作色度向量來預測對應色度塊。在一些實例中,視頻編碼器20可定義既定區(qū)108,或按比例縮放經(jīng)轉(zhuǎn)換向量,使得用于預測色度塊的經(jīng)轉(zhuǎn)換明度向量106將不指向未經(jīng)重構(gòu)或經(jīng)環(huán)路內(nèi)濾波的預測性色度塊。在本發(fā)明中,如果未明確提到色度塊的向量的按比例縮放,那么應假定此類按比例縮放未發(fā)生。即使本發(fā)明中所描述的實例中未明確描述,色度塊的向量的按比例縮放也可能發(fā)生(但可能不是每種情況下必需的)。
[0098]圖3是說明用于定義既定區(qū)的實例技術的概念圖,視頻編碼器20可從所述既定區(qū)選擇視頻數(shù)據(jù)的預測性塊來預測當前視頻數(shù)據(jù)塊。在圖3說明的實例中,視頻編碼器20在預測且編碼當前視頻數(shù)據(jù)塊122。視頻編碼器20選擇既定區(qū)128內(nèi)的視頻數(shù)據(jù)的預測性塊124來預測當前視頻塊122。視頻編碼器20確定指示預測性視頻塊124相對于當前視頻塊122的位移的二維向量126,其包含水平位移分量132和垂直位移分量130。視頻編碼器20在經(jīng)編碼視頻位流中編碼界定二維向量126的一或多個語法元素。
[0099]在一些實例中,視頻編碼器20定義既定區(qū)128,例如定義既定區(qū)的大小(例如高度、寬度或其它尺寸),使得可降低尤其在視頻解碼器30處的實施方案和處理復雜性。在這樣做時,視頻編碼器20可限制二維向量126的大小,例如限制垂直位移分量130和/或水平位移分量132的大小。在一些實例中,視頻編碼器20可限制既定區(qū)128,以促進視頻編碼器20和視頻解碼器30對視頻數(shù)據(jù)的并行處理。在一些實例中,視頻編碼器20可限制既定區(qū)128以促進預測性視頻塊的使用而無需環(huán)路內(nèi)濾波,例如去塊和樣本自適應偏移(SAO)濾波,且不會不恰當?shù)丶又匾曨l譯碼器的存儲器要求或延遲此環(huán)路內(nèi)濾波的應用。
[0100]如圖3中所說明,當前視頻塊122在當前LCU134內(nèi)。圖3還說明當前LCU的左相鄰(左)IXU 136。圖3中說明左LCU 136,因為圖片的視頻塊通常在光柵掃描次序中從左上到右下編碼。在其中圖片的視頻塊以不同次序譯碼的實例中,以下關于左LCU 136的論述可應用于當前IXU 134的不同相鄰IXU。
[0101]在一些實例中,視頻編碼器20可限制既定區(qū)128以使得所獲取預測性視頻塊124與當前視頻塊122在同一LCU內(nèi),即當前LCU 134內(nèi)。將既定區(qū)128限制于當前LCU 134可促進視頻譯碼器對LCU的并行處理,因為視頻譯碼器的處理單元在對當前LCU的塊進行譯碼時將不需要來自另一 IXU的信息。
[0102]在其中既定區(qū)128限于當前LCU134的一些實例中,二維向量126可在當前視頻塊122是當前LCU 134的最頂部塊的情況下限于水平向量,且在當前視頻塊122是當前LCU 134的最左邊塊的情況下限于垂直向量。在此些實例中,視頻編碼器20可對界定二維向量126的水平位移分量132的一或多個語法元素進行編碼,且不需要對界定二維向量126的在當前視頻塊122是當前LCU 134的最頂部塊的情況下將為零的垂直位移分量130的一或多個語法元素進行編碼。類似地,視頻編碼器20可對界定二維向量126的垂直位移分量130的一或多個語法元素進行編碼,且不需要對界定二維向量126的在當前視頻塊122是當前LCU 134的最左邊塊的情況下將為零的水平位移分量132的一或多個語法元素進行編碼。類似地,如果既定區(qū)128限于當前LCU 134且當前視頻塊122是當前LCU 134的左上單元,那么二維向量126的水平分量130和垂直分量132必須為零。在其中遇到此情形的一些實例中,視頻編碼器20可不執(zhí)行IntraBC,且不需要用于IntraBC的單個任何語法元素,例如指示二維向量126的語法元素,或指示當前視頻塊122是否是根據(jù)IntraBC預測的任何旗標。
[0103]用以在既定區(qū)限于當前LCU且當前視頻塊在當前LCU中的某些位置內(nèi)時減少用于IntraBC的信令的這些技術也可應用于限于一維運動向量的IntraBC技術,例如JCT-VCM0350中同樣提出的那些技術。舉例來說,如果垂直運動向量受限于在當前LCU內(nèi)且當前單元是最頂部單元,那么不需要發(fā)信號通知所述運動是垂直的還是水平的。
[0104]在一些實例中,視頻編碼器20可將既定區(qū)128限制為在當前LCU 134內(nèi),且是一或多個相鄰LCU(例如,如圖3中所示的左LCU 136)中的經(jīng)重構(gòu)區(qū)域的一部分。以此方式,視頻編碼器20限制二維向量126,使得除當前LCU 134中的經(jīng)重構(gòu)塊之外,它們可僅參考一或多個相鄰IXU(例如左IXU 136)的經(jīng)重構(gòu)區(qū)域中的塊,如圖3中所說明。
[0105]在一些實例中,視頻編碼器20基于當前LCU134的大小來限制既定區(qū)128的大小。舉例來說,如圖3中所示,視頻編碼器20可基于當前LCU 134的高度(或上垂直限制)來限制既定區(qū)128的高度138,使得既定區(qū)128并不垂直延伸超過當前LCU 134和左LCU 136101(或CTB)的大小可在經(jīng)編碼視頻位流中由視頻編碼器20向視頻解碼器30發(fā)信號通知,例如經(jīng)由切片標頭、參數(shù)集或SEI消息,且因此還可向視頻解碼器30有效地發(fā)信號通知基于LCU大小的對既定區(qū)的限制。在一些實例中,視頻編碼器20基于像素的整數(shù)數(shù)目來限制大小,例如既定區(qū)128的當前視頻塊122的高度138或左側(cè)的寬度140。舉例來說,視頻編碼器20可將當前視頻塊122左側(cè)的寬度140限制為像素的整數(shù)數(shù)目,例如64,其可對應于LCU 134和136的寬度。
[0106]視頻編碼器20可限制既定區(qū)128包含經(jīng)重構(gòu)視頻塊而無環(huán)路內(nèi)濾波,例如去塊和樣本自適應偏移(SAO)濾波。以此方式,視頻編碼器20可限制用于IntraBC的二維向量,使得它們除當前LCU 134之外還可僅參考不執(zhí)行環(huán)路內(nèi)濾波的例如左LCU 136等相鄰IXU的經(jīng)重構(gòu)區(qū)域中的塊。視頻編碼器20可增加既定區(qū)128的大小,但此些增加可延遲環(huán)路內(nèi)濾波,并且進一步延遲既定區(qū)中的視頻塊的處理,或在環(huán)路內(nèi)濾波之前需要額外存儲器來存儲樣本。因此,視頻編碼器20可例如如本文中所描述限制既定區(qū)128以實現(xiàn)預測準確性與效率之間的平衡。
[0107]圖4是當前視頻數(shù)據(jù)塊260以及可從其導出當前視頻數(shù)據(jù)塊的候選預測性向量的相鄰視頻數(shù)據(jù)塊262、264、266的概念圖實例。在一些實例中,類似于用于幀間預測的合并模式或高級運動向量預測(AMVP)模式,視頻譯碼器可基于用以使用IntraBC預測相鄰視頻塊(例如,PU)的二維向量確定當前視頻塊(例如,PU)的預測性二維向量。圖4中說明的相鄰塊包含左相鄰塊262、上(頂部)相鄰塊264和左上方(左上)相鄰塊266。圖4中說明的相鄰塊是一個實例。在其它實例中,視頻譯碼器可考慮更多、更少和/或不同相鄰塊的向量,例如可根據(jù)用于幀間預測的合并和AMVP模式考慮的任何相鄰塊。
[0108]預測符可為來自相鄰塊中的選定一者的二維運動向量的水平和/或垂直位移分量。在一些實例中,預測符始終來自特定相鄰單元,例如頂部相鄰單元或左邊相鄰單元。在一些實例中,相鄰塊中的哪一者提供當前PU的預測性二維運動向量是基于PU的索引和/或PU形狀而確定。在一些實例中,預測符可為來自多個相鄰單元的二維塊向量的水平和/或垂直分量的函數(shù)(例如平均或中值)。
[0109]—般來說,如果相鄰塊無法提供預測性二維向量,那么預測性二維向量(或候選預測性二維向量)可設定成零或默認二維向量。在一些實例中,相鄰塊的向量可僅當相鄰視頻塊是根據(jù)IntraBC預測時可用作當前視頻塊的預測性向量。換句話說,不以IntraMC模式譯碼的相鄰塊可視為不可用于當前視頻塊的塊向量預測。舉例來說,當預測符始終來自左相鄰塊且左相鄰塊是以IntraMC模式預測時,將其二維向量用作預測性二維向量。當預測符始終來自左相鄰塊且左相鄰塊不是以IntraMC模式預測時,視頻譯碼器可使用零向量或默認向量作為當前視頻塊的預測性二維向量。
[0110]在一些實例中,視頻譯碼器可在相鄰視頻塊的二維向量不在與當前視頻塊(例如,CU或PU)相同的LCU或其它較大或最大譯碼單元中的情況下,將其視為不可用于當前視頻塊的二維向量的預測。在一些實例中,如果當前視頻塊(例如,HJ或CU)的當前二維向量是當前CU或LCU中的第一者,那么當前視頻塊的預測性二維向量可設定成零或默認二維向量。如果上相鄰CU和當前CU不在同一LCU中,那么有可能上相鄰CU被視為不可用。如果左相鄰CU和當前⑶不在同一IXU中,那么也可能左相鄰⑶被視為不可用。
[0111]在一些實例中,以類似于用于幀間預測的合并模式和AMVP模式的方式,視頻編碼器20和視頻解碼器30可構(gòu)造包含若干相鄰塊的塊向量的當前視頻塊的一組候選預測性向量。在此些實例中,視頻編碼器20可對發(fā)信號通知哪一候選者用以提供當前視頻塊的預測性二維向量的索引進行編碼,且視頻解碼器30可對其進行解碼。在一些實例中,視頻譯碼器可基于例如來自不同相鄰塊的不同候選者向量分別確定預測性二維向量的水平位移分量和垂直位移分量。在此些實例中,視頻譯碼器可將相應索引譯碼為候選者列表水平和垂直位移分量。
[0112]作為一個實例,對于根據(jù)IntraBC模式譯碼的當前CU,為了對其塊向量進行譯碼,視頻譯碼器檢查左相鄰和頂部相鄰⑶。如果其中任一者都不可用,例如根據(jù)IntraBC譯碼,那么視頻譯碼器可確定當前CU的預測性二維向量是零向量(對于水平分量和垂直分量兩者)。如果相鄰CU中的僅一者可用,例如以IntraBC譯碼,那么視頻譯碼器使用用于可用相鄰CU的預測的向量作為當前CU的當前二維向量的預測性二維向量。如果兩個相鄰CU都可用,例如以IntraBC譯碼,且其二維向量相同,那么將此二維向量用作預測性二維向量。如果兩個相鄰都可用,例如以IntraBC譯碼,且其塊向量不同,那么視頻譯碼器可對旗標或其它語法元素進行譯碼以指示來自頂部相鄰CU的塊向量或來自左相鄰CU的塊向量是否用作當前CU的預測性二維向量。
[0113]在另一實例中,視頻譯碼器可定義兩個或兩個以上默認塊向量,其可來自(作為非限制性實例)集合(1,0)、(-2界,0)、(-8,0)、(0,0)、(0,8)、(0,-11)、(0,-211),其中界和11是當前視頻塊(例如CU)的寬度和高度,且第一分量是水平位移,且第二分量是垂直位移。如果左相鄰CU和上部相鄰CU兩者可用,那么視頻譯碼器可使用其向量作為當前CU的第一和第二預測性二維向量。如果其中的一者不可用,那么視頻譯碼器可使用默認預測性向量替代候選預測性向量列表中的不可用預測性向量。如果其兩者都不可用,那么視頻譯碼器可使用可相同或不同的兩個默認預測性向量來代替候選預測性向量列表中的不可用預測性向量。用候選者列表中的默認向量代替不可用預測性向量的優(yōu)點是用于預測符之間的選擇的旗標也可包含在經(jīng)編碼視頻位流中,使得視頻解碼器30不需要有條件地剖析此旗標。盡管本文相對于包含從兩個相鄰塊導出的兩個預測性向量的候選者列表描述實例,但如果塊/向量可用,那么在其它實例中,視頻譯碼器可考慮更多或更少的相鄰塊,且在候選者列表中包含更多或更少的預測性二維向量。
[0114]在一些實例中,對于每一LCU中的第一視頻塊和用于IntraBC的對應二維向量,視頻譯碼器可使用與LCU內(nèi)的其它塊和相關聯(lián)向量不同的導出過程來確定其預測性二維向量。舉例來說,視頻譯碼器(例如,視頻編碼器20和/或視頻解碼器30)可確定LCU中的第一視頻塊和用于IntraBC的對應二維向量的預測性二維向量是默認二維向量。默認二維向量可為(-W,O),其中w是當前視頻塊(例如,CU)的寬度。在其它實例中,默認二維向量可為(-2w,0)、(-8,0)、(0,0)、(0,8)、(0,-11)、(0,-211),其中《和11是當前視頻塊(例如0])的寬度和高度。在其它實例中,視頻譯碼器(例如視頻編碼器20和/或視頻解碼器30)可導出第一視頻塊的預測性二維向量以及用于LCU中的IntraBC的對應二維向量。在一些實例中,視頻譯碼器可針對具有不同大小或在LCU中的不同位置處的視頻塊(例如,CU)以不同方式導出LCU中使用IntraBC譯碼的第一視頻塊的預測性二維向量,或換句話說可基于視頻塊大小或在LCU中的位置以不同方式導出LCU中使用IntraBC譯碼的第一視頻塊的預測性二維向量。
[0115]在一些實例中,視頻譯碼器可選擇用以確定當前視頻塊的二維向量的水平分量和垂直分量的方法,可基于旗標、語法元素或基于其它信息(例如特定顏色空間(例如,YUV、RGB或類似物)、特定色彩格式(例如,4: 2:0、4:4:4或類似物)、幀大小、幀速率或量化參數(shù)(QP),或基于經(jīng)先前譯碼幀)。
[0116]在一些實例中,視頻編碼器20可對旗標(例如,IntraMC_flag或IntraBC_flag)進行編碼,以向視頻解碼器30指示視頻塊(例如,CU)是否是使用用于基于同一圖片中的預測性視頻塊來預測當前視頻塊的模式編碼的,所述模式可被稱為IntraMC或IntraBC模式。所述旗標可為I位旗標,其值指示一或多個CU或其它塊或單元是否是使用例如如本文中所描述的IntraMC或IntraBC模式來編碼。視頻譯碼器可對每一視頻塊(例如,CU或PU)的旗標的值進行譯碼,或可對多個視頻塊中的每一者對旗標的值進行譯碼,例如在切片內(nèi)或在幀或圖片或圖片序列內(nèi)。視頻譯碼器可在(作為實例)切片標頭、參數(shù)集(例如,PPS)或SEI消息中對所述旗標進行譯碼。
[0117]視頻譯碼器可在旁路模式下對旗標進行譯碼,或?qū)哂猩舷挛牡钠鞓诉M行算術編碼,例如CABAC編碼。在一些實例中,視頻譯碼器可對具有不取決于相鄰視頻塊的單個固定上下文的旗標進行算術譯碼,例如CABAC編碼。在其它實例中,視頻譯碼器可對具有從相鄰視頻塊導出的上下文的旗標進行算術譯碼,例如CABAC編碼。
[0118]參看圖4,當視頻譯碼器使用CABAC上下文對用于當前視頻塊260的旗標進行譯碼時,所述上下文的值可從相鄰視頻塊導出,例如頂部(上方)相鄰視頻塊264、左上(左上方)相鄰視頻塊266或左相鄰視頻塊262。當相鄰視頻塊(例如頂部相鄰視頻塊264)與當前視頻塊在同一 LCU內(nèi)時,視頻譯碼器可將所述相鄰視頻塊視為可用于導出當前視頻塊的上下文,且當相鄰視頻塊在當前LCU之外時,將其視為不可用。
[0119]作為一實例,對于當前視頻塊,視頻譯碼器可導出上下文值=(頂部IntraMC_flag==0)?0:1 + (左IntraMC_flag= = 0)?0:1。在一些實例中,視頻譯碼器可始終從相鄰視頻塊262、264、266中的特定一者(例如,左相鄰視頻塊262)導出當前視頻塊260的上下文,且當前視頻塊的上下文值是(左IntraMC_flag ==0)70:1。在一些實例中,視頻譯碼器使用取決于視頻塊(例如,CU)的大小的上下文值對旗標進行譯碼。在一些實例中,具有不同大小的視頻塊具有不同上下文值。換句話說,每一視頻塊(例如,CU)大小可與相應的唯一上下文值相關聯(lián)。在一些實例中,具有不同預定義大小的若干視頻塊(例如,CU)共享相同上下文值,且具有其它大小的視頻塊使用一或多個不同上下文值。換句話說,視頻譯碼器可使多個上下文值中的每一者與可能的視頻塊(例如,CU)大小的相應集合或范圍相關聯(lián)。
[0120]在一些實例中,視頻譯碼器(例如,視頻編碼器20和/或視頻解碼器30)可基于一元碼對用于IntraBC的二維向量的水平位移分量和垂直位移分量(例如,圖2中的二維向量106的水平位移分量112和垂直位移分量110)進行譯碼。在其它實例中,視頻譯碼器可基于指數(shù)哥倫布或萊斯-哥倫布碼對水平位移分量和垂直位移分量進行譯碼。
[0121]在一些實例中,水平和垂直位移分量可僅指示當前視頻塊上方和左邊的區(qū),且視頻譯碼器可不需要保持或譯碼這些值的正負號位。在一些實例中,視頻譯碼器可構(gòu)造參考幀,使得當前視頻塊上方和左邊的區(qū)域可表示相對于當前視頻塊的正方向。在此些實例中,如果僅當前視頻塊上方和/或左邊的視頻塊被視為候選預測性視頻塊,那么視頻譯碼器可不需要保持或譯碼正負號位,因為可預定義水平位移分量和垂直位移分量的全部值表示正(或負)值且指示當前視頻塊上方和/或左邊的視頻塊。
[0122]在一些實例中,這些二維向量的最大大小(或例如殘差二維向量等一或多個二維向量之間的差)可較小,例如由于如上文所論述的既定區(qū)和/或管線約束的定義。在此些實例中,視頻編碼器20可以截斷值來使這些二維塊向量二進制化。在一些實例中,視頻編碼器20可在熵編碼所述二維向量時,例如在對所述二維向量的水平位移分量和垂直位移分量進行編碼時,采用截斷一元、截斷指數(shù)哥倫布或截斷哥倫布-萊斯碼。
[0123]視頻編碼器20在本文所描述的各種截斷編碼方案中的任一者中可使用的截斷值可為常數(shù),例如基于LCU大小。在一些實例中,所述截斷值可對于水平位移分量和垂直位移分量為相同的。在其它實例中,所述截斷值可對于水平位移分量和垂直位移分量為不同的。
[0124]作為一個說明性實例,如果IXU的大小是64,例如64x64,且二維向量的垂直分量限于在LCU內(nèi),例如如上文相對于圖3所描述,那么所述截斷可對于二維向量的水平分量等于63,且對于二維向量的垂直分量等于63-Min⑶Size。在一些實例中,所述截斷值可自適應地取決于當前視頻塊在LCU內(nèi)的位置。舉例來說,如果二維向量的垂直分量限于在LCU內(nèi),那么視頻編碼器可將向量二進制化截斷為當前視頻塊的頂部位置與LCU的頂部位置之間的差。
[0125]視頻編碼器20可使用旁路模式對二維向量的水平分量和垂直分量的二進制化進行熵編碼,或可例如用CABAC上下文對所述二進制化進行算術編碼。舉例來說,視頻編碼器20將針對預測性視頻塊的搜索限制于既定區(qū),例如如圖3中所說明,二維向量(MV)的分量的分布可不以零為中心。舉例來說,MV_x趨向于為負,因為當前視頻塊(例如,CU)右邊的像素(同一行中)尚未經(jīng)編碼/經(jīng)重構(gòu)。類似地,MV_y趨向于為負,因為當前視頻塊(例如,CU)下方的像素(同一列中)尚未經(jīng)編碼/經(jīng)重構(gòu)。
[0126]旁路模式可針對O和I假定相等概率。對于正負號,這意味著旁路模式假定為正或負的相等概率。因為二維向量的分量并不具有為正或負的相等概率,所以視頻編碼器20可用上下文(例如,以除0.5外的初始概率)對正負號進行算術編碼,例如CABAC編碼。
[0127]視頻編碼器20可如何對二維向量的水平分量(MV_x)進行編碼的一個實例如下。盡管相對于MV_x來描述,但所述技術也可應用于對二維向量的垂直分量(MV_y)或表示當前向量與預測性向量之間的差的殘差二維向量的水平或垂直分量(例如,mvd_x和mvd_y)進行編碼。
[0128]MV_x可由正負號值和二進制化串(對于abs (MV_x) )b0bl.??表示。第一二進位b0指示是否abs(Mv_x)>0(b0 = l)或不大于0(b0 = 0)。視頻編碼器20可使用具有上下文的CABAC對第一二進位b0進行編碼。用于Mv_x和1^_丫的130可具有單獨的上下文,或可共享同一上下文。在一些實例中,IntraBC的MV譯碼中的第i 二進位與幀間運動補償?shù)膲K向量譯碼中的第i二進位共享相同上下文。在一些實例中,IntraBC的MV譯碼和幀間運動補償?shù)膲K向量譯碼中的第i 二進位并不共享上下文。
[0129]隨后的二進位blb2…表示abs(MV_x)-l的值,且視頻編碼器20可在旁路模式中使用具有參數(shù)3的指數(shù)哥倫布碼對這些二進位進行編碼。I在一些實例中,視頻編碼器20使用其它階的指數(shù)哥倫布碼,例如1、2、4、5。在一些實例中,131表示是否&&8(1^_1) = 1(131 = 1)或不等于l(bl = 0)。在一些實例中,視頻編碼器20可以繞過模式或以CABAC上下文對bl進行編碼。
[0130]在一些實例中,b2b3...表示abs(MV_x)_2的值,且視頻編碼器20可使用具有參數(shù)3的指數(shù)哥倫布碼或在旁路模式中使用其它階的指數(shù)哥倫布碼對這些二進位進行編碼。最后二進位可指示MV_#^正負號,且視頻編碼器20可在旁路模式中對此二進位進行編碼而無需任何上下文。在其它實例中,視頻編碼器20可以一或多個上下文對使用CABAC編碼的正負號二進位進行編碼。用于正負號二進位可具有單獨的上下文,或它們有可能共享相同上下文。
[0131]在一些實例中,視頻譯碼器(例如,視頻編碼器20和/或視頻解碼器30)可將IntraBC模式的應用以及旗標、向量分量或其它語法的任何相關聯(lián)譯碼限制于某一大小(即,滿足某一大小準則)的視頻塊。所述大小準則可為最大塊大小和/或最小塊大小(例如,IntraMC_MaxSize和IntraMC_MinSize)中的一者或兩者。視頻編碼器20可例如使用旗標或其它語法元素在經(jīng)編碼視頻位流中向視頻解碼器30指示所述一或多個大小準則,或視頻譯碼器可基于例如特定色彩空間(例如,YUV、RGB等)、特定色彩格式(例如,4:2:0、4:4:4或類似物)、幀大小、幀速率、量化參數(shù)(QP)等其它信息或基于經(jīng)先前譯碼幀隱式地確定所述大小準則。舉例來說,針對小大小的IntraBC可能對系統(tǒng)的存儲器帶寬要求具有影響,且視頻譯碼器可應用最小塊大小準則來將IntraBC限制于高于大小閾值的塊。
[0132]圖5A和5B示出分成兩個PU( S卩PUO和PUl)的CU的實例。圖5A和5B示出用于HEVCAMVP和合并的空間鄰近者導出的說明圖像??臻g相鄰者可用于塊向量譯碼,例如用于為幀內(nèi)BC AMVP模式或幀內(nèi)BC合并模式確定候選者。視頻編碼器20和/或視頻解碼器30可從相鄰塊為特定HJ(PU0)導出空間MV候選者,如圖5A和5B中示出,但從所述塊產(chǎn)生所述候選者的方法可針對合并和AMVP模式而不同。在合并模式中,視頻編碼器20和/或視頻解碼器30可使用圖5A中所示的排序?qū)С鲋炼噙_四個空間MV候選者。次序如下:左(O)、上方(1)、右上方(2)、左下方(3)和左上方(4),如圖5A中示出。
[0133]在AMVP模式中,將相鄰塊劃分成兩個群組:由塊O和I組成的左側(cè)群組,以及由塊2、3和4組成的上方群組,如圖5B中示出。對于每一群組,如發(fā)信號通知的參考索引所指示的參考同一參考圖片的相鄰塊中的潛在候選者具有最高待選優(yōu)先級,以形成所述群組的最終候選者。可有可能所有相鄰塊均不含有指向相同參考圖片的塊向量。因此,如果無法找到此類候選者,那么可按比例縮放第一可用候選者以形成最終候選者,因此可補償時間距離差異。
[0134]用于幀內(nèi)BC的當前技術可具有一些潛在問題。在一個實例中,當色度取樣格式不是4:4: 4( S卩,是4: 2: O或4: 2: 2)時,色度運動補償塊大小可小至2 X 2,且因此小于如基礎HEVC規(guī)范中所支持的最小塊大小。當存取參考塊時,視頻譯碼器通常讀取預定義存儲塊單元(例如4x2、8x2)中的塊。因此,如果塊大小小于預定義存儲塊單元,那么存取不可用于補償中的額外像素,因此降低存儲器存取效率。
[0135]作為潛在問題的另一實例,僅按比例縮放色度分量的明度塊向量可導致指向當前CU或PU內(nèi)的區(qū)的塊向量。作為另一實例,幀內(nèi)BC的現(xiàn)有實施方案中并不很好地支持塊向量預測的AMVP方式。
[0136]本發(fā)明引入可改進幀內(nèi)BC預測的技術。根據(jù)本發(fā)明的一個技術,當經(jīng)譯碼視頻數(shù)據(jù)具有色度取樣格式4:2:0,視頻解碼器30可使用與用以預測對應明度分量的塊向量不同的塊向量來預測色度分量。舉例來說,用于第一明度分量和其對應的第一色度分量的塊向量可相同,但用于第二色度分量的塊向量可與用于其對應的第二明度分量的塊向量不相同。實際上,用于第二色度分量的塊向量可與用于第一明度分量的塊向量相同。
[0137]視頻解碼器30可從用于明度的塊向量導出用于色度的塊向量。舉例來說,對于分成四個NXN PU的2NX2N CU,對于當前CU中的四個PU/TU,視頻編碼器20可以譯碼次序發(fā)信號通知四個BV,即BV1、BV2、BV3和BV4。根據(jù)本發(fā)明的技術,視頻解碼器30可使用四個BV來對當前CU的明度分量進行幀內(nèi)BC預測,且導出單個塊向量來對整個CU的多個色度塊進行IntraBC預測。因此,含有四個PU/TU的⑶可針對多個PU的色度塊共享一個共用塊向量(表示為BVc) ο
[0138]視頻解碼器30可從四個明度塊向量產(chǎn)生共用色度塊向量,將明度塊向量轉(zhuǎn)化為色度塊向量,如在HEVC版本I中進行,或在針對色度分量的運動補償之前,直接使用明度塊向量作為色度塊向量。視頻解碼器30可通過以下方法之一來導出明度塊向量BVu
[0139]1.視頻解碼器30在BV1、BV2、BV3、BV4當中選擇最小塊向量BVl,并將BVl轉(zhuǎn)換為BVc,例如通過按比例縮放。出于闡釋的目的,以以下可能方式中的一者,將塊向量定義為小于其它 BVb。
[0140]a.如果水平分量(BVa[O])小于BVb的水平分量
[0141]b.如果BVa的水平分量的絕對值(表示為|x|,對于值a)小于BVb的絕對值
[0142]c.如果 |BVa[0]| + |BVa[l]小于 |BVb[0] | + |BVb[l]
[0143]d.如果BVa的垂直分量(BVa[ I])小于BVb的垂直分量
[0144]2.類似于上述最小塊向量選擇,視頻解碼器30可在四個塊向量當中選擇最大塊向量,其中一個向量的各種定義中的一者小于其它定義。如上文所定義。
[0145]3.視頻解碼器30可通過對四個明度塊向量的水平分量和垂直分量求平均以導出明度塊向量BVl來確定平均塊向量,其中添加+2/-2的舍入在求平均期間可或可不適用??砂幢壤s放BI以確定共用色度塊向量。
[0146]4.視頻解碼器30可從BV1、BV2、BV3和BV4選擇一個塊向量作為BVl。舉例來說,所選擇的塊向量可為所述四個中的固定一者,例如始終為BV1,始終為奶2等,或可在位流中明確地發(fā)信號通知。
[0147]根據(jù)本發(fā)明的另一技術,當經(jīng)譯碼視頻數(shù)據(jù)具有4:2:2的色度取樣格式時,視頻解碼器30可針對色度適用與用于明度的BV不同的BV。實際上,視頻解碼器30可從用于明度的BV導出用于色度的BV。舉例來說,IntraBC可擴展到HJ/TU,且假設HJ/TU對于2N X 2N CU為NX N,那么對于當前CU中的兩個PU/TU,存在兩個BV,即譯碼次序中的BVjPBV2。類似于上文所述的技術,對于整個CU的色度塊,可從當前PU的兩個PU/TU的兩個塊向量產(chǎn)生最小向量、最大向量或平均向量。
[0148]根據(jù)本發(fā)明的一個技術,對于用四個NXN幀內(nèi)BC PU/TU譯碼的2NX2N CU,當色度取樣格式不是4:4:4時,視頻解碼器30可用從NXN PU/TU的塊向量產(chǎn)生得單個塊向量來預測色度分量。然而,視頻解碼器30可仍使用四個單獨塊向量來預測PU的明度分量。舉例來說,對于分成四個NXN PU得2NX2N CU,視頻編碼器20可發(fā)信號通知四個單獨塊向量,CU的每一 PU—個。視頻解碼器30可解碼那四個單獨塊向量,并使用所述四個單獨塊向量來預測四個PU的明度分量。然而,對于四個HJ的色度分量,視頻解碼器30可選擇四個塊向量中的一者,并使用一個塊向量來預測CU的PU中的一個以上的色度分量。在一些情況下,視頻解碼器30可使用一個塊向量來預測CU的所有四個PU的色度分量。
[0149]在另一實例中,對于用四個NXN幀內(nèi)BC PU/TU譯碼的2NX 2N⑶,當色度取樣格式不是4:4:4時,視頻解碼器30可用從NXN PU/TU的塊向量產(chǎn)生的兩個塊向量來預測色度分量。所述兩個塊向量中的每一者可用于預測一個N/2xN塊或NXN/2塊。換句話說,所述兩個塊向量中的每一者可用于預測CU的四個PU中的兩個。視頻解碼器30可檢查CU的PU的四個塊向量中的至少一者,且取決于這些塊向量導出兩個明度塊向量。更具體地說,例如,比較所述四個塊向量,且可選擇具有比任何其它對更接近的距離的兩相鄰塊向量。
[0150]在一個實例中,計算dis(BVQ,BVi)、dis(BVo,BV2)、dis(BVi,BV3WPdis(BV2,BV3)。(I)最小的一個對應于可組合到2NxN或Nx2N塊的一對。舉例來說,如果di s (BVo,BV1)最小,那么將頂部的兩個N X N塊組合為一個2NxN±夬。其余的塊自動變?yōu)榱硪?2NxN±夬。(2)最大的一個對應于不可組合到2NxN或Nx2N塊的一對。舉例來說,如果di s (BVo,BVi)最大,那么將左側(cè)的兩個NXN塊組合為一個2NxN塊。其余的塊自動變?yōu)榱硪?NxN塊。(3)對于每一組合的2NxN塊,處理所述兩個塊向量,并導出單個明度塊向量。(4)對于兩塊向量BVjPBVb,兩個塊向量的距離可僅被定義為(BVa[0]-BVb[O])的絕對值加(BVa[I ]-BVb[ I ]的絕對值?;蛘?,還可應用返回非負值的其它距離定義。
[0151 ]根據(jù)本發(fā)明的另一技術,當根據(jù)4: 2:0或4:2: 2格式來譯碼視頻數(shù)據(jù)時,視頻解碼器30可從四個N X N PU/TU的四個塊向量導出一個運動。在一個實例中,視頻解碼器30可為右下塊(即右下PU)導出塊向量,并使用此塊向量來預測CU的四個PU。通過選擇右下PU的塊向量,可確保所述塊向量并不指向CU的另一 PU。
[0152]在其它實例中,視頻解碼器30可選擇左下塊的塊向量,選擇右上塊、左上塊為產(chǎn)生此CU的色度塊的塊向量的唯一塊。
[0153]根據(jù)本發(fā)明的另一技術,當根據(jù)4:2:2格式來譯碼視頻數(shù)據(jù)時,可從兩個塊向量導出一個塊向量。在此實施方案中,對于分成四個NXN PU得2NX2N⑶,視頻解碼器30可使用相同塊向量來預測CU的四個PU中的兩個。在一個實例中,視頻解碼器30可使用右上塊(即右上PU)的塊向量來預測右上PU和左上PU兩者。在此實例中,視頻解碼器30可使用右下塊(SP右下PU)的塊向量來預測左下HJ和右下PU。在另一實例中,視頻解碼器30可使用左上塊的塊向量來預測CU的頂部兩個色度塊,且使用左下塊的塊向量來預測底部兩個色度塊。
[0154]當根據(jù)4:2:0or 4:2: 2格式來譯碼視頻數(shù)據(jù)時,且當將2NX2N CU分成2NxN或Nx2NIntraBC PU/TU時,視頻解碼器30可用不同塊向量來預測PU/TU的色度塊。根據(jù)本發(fā)明的另一技術,視頻解碼器30可從所述兩個明度塊向量導出一個塊向量,并使用所述一個塊向量來預測整個⑶的兩者色度塊。在一實例中,視頻解碼器30可選擇右塊(當用Nx2N譯碼時)的塊向量或底部塊(當用2NxN譯碼時)的塊向量,作為CU的色度塊的塊向量。在另一實例中,視頻解碼器30可選擇左塊(當用Nx2N譯碼時)的塊向量或頂部塊(當用2NxN譯碼時)的塊向量,作為用于預測CU的色度塊的塊向量。
[0155]不管視頻解碼器30如何從明度PU(將所導出的塊向量表示為dBV)導出塊向量,以形成最終色度塊向量,視頻解碼器30可剪切所導出的明度塊向量,以產(chǎn)生法定塊向量。在一個實例中,視頻解碼器30可以色度塊向量不指向同一PU/TU內(nèi)的像素的方式來執(zhí)行所述剪切。在另一實例中,視頻解碼器30可以色度塊向量不指向同一CU內(nèi)的像素的方式來執(zhí)行所述剪切。
[0156]對于將2NX2N⑶分成四個NXN HJ的情況,視頻解碼器30可執(zhí)行水平剪切操作和垂直剪切操作。視頻解碼器30可如下應用水平剪切:
[0157]水平剪切:max(-leftW_(CUx%ctbW),dBV[0]),其中
[0158]1.1ef tW可為定值,例如64,或當前CTU的寬度,或在位流中(例如,在高級語法中,例如視頻參數(shù)集、序列參數(shù)集和圖片參數(shù)集合中)發(fā)射任何其它值。
[0159]2.⑶X是當前⑶的左上像素的水平坐標。
[0160]3.CtbW 是 CTB 的寬度
[0161]垂直剪切:max(-CUy%ctbH,dBV[l]),其中
[0162]1.CUy是當前⑶的左上像素的垂直坐標。
[0163]2.CtbH 是 CTB 的高度。
[0164]根據(jù)一些實例,視頻解碼器30可例如在2NX2N⑶分成Nx2N PU時,僅執(zhí)行水平剪切,或在2NX2N CU分成2NxN HJ時僅執(zhí)行垂直剪切。在實例中,如上文所描述,當來自兩個NXN塊的兩個塊向量將為Nx2N塊組合時,視頻解碼器30可僅應用水平剪切。在實例中,如上文所描述,當來自兩個N X N塊的兩個塊向量將為2NxN塊組合時,視頻解碼器30可僅應用垂直剪切。
[0165]在一些實施方案中,上述各種過程僅可針對某些CU大小而實施。舉例來說,視頻解碼器30可僅使用單個塊向量來預測針對CU大小的多個色度塊等于8X8或更小。本文所述的技術可例如僅針對不大于預定義大小(例如32 X 32、16 X 16或8 X 8)的⑶大小而應用。此大小可為預定義的,或者,可在sps/pps/切片層級發(fā)信號通知。
[0166]圖6是說明可實施本發(fā)明中描述的技術的實例視頻編碼器的框圖。視頻編碼器20可執(zhí)行視頻切片內(nèi)的視頻塊的幀內(nèi)和幀間譯碼。幀內(nèi)譯碼依靠空間預測來減小或去除給定視頻幀或圖片內(nèi)的視頻的空間冗余。幀間譯碼依靠時間或視圖間預測來減少或去除視頻序列的鄰近幀或圖片內(nèi)的視頻中的冗余。幀內(nèi)模式(I模式)可指若干基于空間的壓縮模式中的任一者。例如單向預測(P模式)或雙向預測(B模式)的幀間模式可包含若干基于時間的壓縮模式中的任一者。視頻編碼器20還可經(jīng)配置以利用用于從同一圖片內(nèi)的視頻數(shù)據(jù)的預測性塊對視頻數(shù)據(jù)塊的幀內(nèi)預測的模式,例如如本文中所描述的IntraBC或IntraMC模式。
[0167]在圖6的實例中,視頻編碼器20包含視頻數(shù)據(jù)存儲器334、分割單元335、預測處理單元341、既定區(qū)存儲器364、濾波器處理單元366、參考圖片存儲器368、求和器350、變換處理單元352、量化處理單元354和熵編碼單元356。預測處理單元341包含運動估計單元342、運動補償單元344、幀內(nèi)預測處理單元346和塊副本內(nèi)(IntraBC)單元348,且。為了視頻塊重構(gòu),視頻編碼器20還包含逆量化處理單元358、逆變換處理單元360和求和器362。
[0168]在各種實例中,可為視頻編碼器20的單元分派任務以執(zhí)行本發(fā)明的技術。并且,在一些實例中,本發(fā)明的技術可在視頻編碼器20的單元中的一或多者當中進行劃分。舉例來說,IntraBC單元348可單獨或與視頻編碼器的其它單元組合地執(zhí)行本發(fā)明的技術,所述其它單元例如運動估計單元342、運動補償單元344、幀內(nèi)預測處理單元346、既定區(qū)存儲器364和熵編碼單元356。
[0169]視頻數(shù)據(jù)存儲器334可存儲待由視頻編碼器20的組件編碼的視頻數(shù)據(jù)???例如)從視頻源18獲得存儲在視頻數(shù)據(jù)存儲器334中的視頻數(shù)據(jù)。既定區(qū)存儲器364可為存儲參考視頻數(shù)據(jù)以供視頻編碼器20例如在幀內(nèi)或幀間譯碼模式中編碼視頻數(shù)據(jù)的參考塊存儲器。視頻數(shù)據(jù)存儲器334和既定區(qū)存儲器364可由多種存儲器裝置中的任一者形成,例如包含同步DRAM(SDRAM)的動態(tài)隨機存取存儲器(DRAM)、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其它類型的存儲器裝置。視頻數(shù)據(jù)存儲器334和既定區(qū)存儲器364可由同一存儲器裝置或單獨的存儲器裝置提供。在各種實例中,視頻數(shù)據(jù)存儲器334可與視頻編碼器20的其它組件一起在芯片上,或相對于所述組件在芯片外。
[0170]分割單元335將來自視頻數(shù)據(jù)存儲器334的數(shù)據(jù)分割為視頻塊。此分割還可包含分割成切片、瓦片或其它較大單元,以及例如根據(jù)LCU和CU的四叉樹結(jié)構(gòu)的視頻塊分割。視頻編碼器20通常說明編碼待編碼的視頻切片內(nèi)的視頻塊的組件。所述切片可分成多個視頻塊(并且可能分成被稱作瓦片的視頻塊集合)。
[0171]預測處理單元341可根據(jù)本發(fā)明中描述的技術,基于誤差結(jié)果(例如,譯碼速率和失真水平)選擇多種可能的譯碼模式中的一者,例如多種幀內(nèi)譯碼模式中的一者、多種幀間譯碼模式中的一者或IntraBC模式用于當前視頻塊。預測處理單元341可將所得預測性塊提供到求和器250以產(chǎn)生殘差塊數(shù)據(jù),且提供到求和器262以重構(gòu)當前塊以用于預測其它視頻塊,例如作為參考圖片。
[0172]預測處理單元341內(nèi)的幀內(nèi)預測處理單元346可相對于與待譯碼當前塊在相同幀或切片中的一或多個相鄰塊執(zhí)行當前視頻塊的幀內(nèi)預測性譯碼,以提供空間壓縮。預測處理單元341內(nèi)的運動估計單元342及運動補償單元344相對于一或多個參考圖片中的一或多個預測性塊執(zhí)行當前視頻塊的幀間預測性譯碼,以例如提供時間壓縮。
[0173]運動估計單元342可經(jīng)配置以根據(jù)視頻序列的預定圖案來確定用于視頻切片的幀間預測模式。運動估計單元342與運動補償單元344可高度集成,但出于概念目的單獨地加以說明。運動估計單元342所執(zhí)行的運動估計是產(chǎn)生運動向量的過程,所述過程估計視頻塊的運動。舉例來說,運動向量可指示當前視頻幀或圖片內(nèi)的視頻塊的P U相對于參考圖片內(nèi)的預測性塊的位移。類似地,根據(jù)本發(fā)明的技術的用于IntraBC的二維向量指示當前視頻幀或圖片內(nèi)的視頻塊的HJ相對于同一幀或圖片內(nèi)的預測性塊的位移。IntraBC單元348可以類似于運動估計單元342確定運動向量以用于幀間預測的方式確定用于IntraBC譯碼的二維向量(例如,塊向量或運動向量),或可利用運動估計單元342來確定所述二維向量。
[0174]例如由運動估計單元342和/或用于幀間預測或IntraBC預測的IntraBC單元識別的預測性塊是被發(fā)現(xiàn)在像素差方面接近地匹配待譯碼視頻塊的PU的塊,其可通過絕對差總和(SAD)、平方差總和(SSD)或其它差異度量確定。在一些實例中,視頻編碼器20可計算存儲在參考圖片存儲器368中的參考圖片或存儲在既定區(qū)存儲器364中的當前圖片的既定區(qū)的子整數(shù)像素位置的值。舉例來說,視頻編碼器20可內(nèi)插四分之一像素位置、八分之一像素位置或參考圖片的其它分數(shù)像素位置的值。因此,運動估計單元342和/或IntraBC單元348可相對于全像素位置和分數(shù)像素位置執(zhí)行對預測性塊的搜索,且輸出具有分數(shù)像素精度的向量。
[0175]運動估計單元342通過將PU的位置與參考圖片的預測性塊的位置進行比較,來計算經(jīng)幀間譯碼切片中的視頻塊的PU的運動向量。參考圖片可選自第一參考圖片列表(列表O或RefPicListO)或第二參考圖片列表(列表I或RefPicListl),其中的每一者識別存儲在參考圖片存儲器368中的一或多個參考圖片。運動估計單元342將所計算的運動向量發(fā)送到熵編碼單元356和運動補償單元344。
[0176]通過運動補償單元344執(zhí)行的運動補償可涉及基于通過運動估計(可能執(zhí)行對子像素精度的內(nèi)插)確定的運動向量獲取或產(chǎn)生預測性塊。在接收到當前視頻塊的PU的運動向量后,運動補償單元344可在參考圖片列表中的一者中定位所述運動向量指向的預測性塊。
[0177]在一些實例中,IntraBC單元348可以類似于上文相對于運動估計單元342和運動補償單元344描述的方式產(chǎn)生二維向量且獲取預測性塊,但其中所述預測性塊與當前塊在同一圖片或幀中。在其它實例中,IntraBC單元348可完全或部分地使用運動估計單元342和運動補償單元344,根據(jù)本文所描述的技術執(zhí)行用于IntraBC預測的此些功能。在任一情況下,對于IntraBC,預測性塊可為被發(fā)現(xiàn)在像素差方面接近地匹配待譯碼塊的塊,其可通過絕對差總和(SAD)、平方差總和(SSD)或其它差異度量來確定,且塊的識別可包含用于子整數(shù)像素位置的值的計算。
[0178]無論預測性視頻塊是來自根據(jù)IntraBC預測的同一圖片還是根據(jù)幀間預測的不同圖片,視頻編碼器20都可通過從正譯碼的當前視頻塊的像素值減去預測性塊的像素值而形成像素差值來形成殘差視頻塊。像素差值形成所述塊的殘差數(shù)據(jù),且可包含明度和色度差分量兩者。求和器250表示執(zhí)行此減法運算的一或多個組件。IntraBC單元348和/或運動補償單元344還可產(chǎn)生與視頻塊和視頻切片相關聯(lián)的語法元素以供視頻解碼器30在解碼視頻切片的視頻塊時使用。所述語法元素可包含例如界定用以識別預測性塊的向量的語法元素、指示預測模式的任何旗標或相對于本發(fā)明的技術描述的任何其它語法。
[0? 79] 幀內(nèi)預測處理單元346可對當前塊進行幀內(nèi)預測,作為對由運動估計單元342和運動補償單元344執(zhí)行的幀間預測或由IntraBC單元348執(zhí)行的IntraBC預測的替代方案,如上文所描述。明確地說,幀內(nèi)預測處理單元346可確定用以編碼當前塊的幀內(nèi)預測模式。在一些實例中,幀內(nèi)預測處理單元346可(例如)在單獨的編碼編次期間,使用各種幀內(nèi)預測模式對當前視頻塊進行編碼,且?guī)瑑?nèi)預測處理單元346(或在一些實例中,預測處理單元341)可從被測模式中選擇適當?shù)膸瑑?nèi)預測模式來使用。舉例來說,幀內(nèi)預測處理單元346可使用速率-失真分析來計算用于各種被測幀內(nèi)預測模式的速率-失真值,且從所述被測模式當中選擇具有最佳速率-失真特性的幀內(nèi)預測模式。速率失真分析通常確定經(jīng)編碼塊與經(jīng)編碼以產(chǎn)生所述經(jīng)編碼塊的原始的未經(jīng)編碼塊之間的失真(或誤差)的量,以及用于產(chǎn)生經(jīng)編碼塊的位速率(也就是說,位數(shù)目)。幀內(nèi)預測處理單元346可根據(jù)用于各種經(jīng)編碼塊的失真和速率計算比率,以確定哪個幀內(nèi)預測模式對于所述塊展現(xiàn)最佳速率失真值。
[0180]在任何情況下,在選擇用于塊的幀內(nèi)預測模式之后,幀內(nèi)預測處理單元346可將指示塊的選定幀內(nèi)預測模式的信息提供到熵編碼單元356。熵編碼單元356可根據(jù)本發(fā)明的技術對指示選定幀內(nèi)預測模式的信息進行編碼。視頻編碼器20在所發(fā)射的位流中可包含配置數(shù)據(jù),其可包含多個幀內(nèi)預測模式索引表和多個經(jīng)修改的幀內(nèi)預測模式索引表(也稱為碼字映射表),對用于各種塊的上下文進行編碼的定義,以及對最可能幀內(nèi)預測模式、幀內(nèi)預測模式索引表和經(jīng)修改的幀內(nèi)預測模式索引表的指示以用于所述上下文中的每一者。
[0181 ] 在預測處理單元341經(jīng)由幀間預測、幀內(nèi)預測或IntraBC預測產(chǎn)生當前視頻塊的預測性塊之后,視頻編碼器20例如經(jīng)由求和器350通過從當前視頻塊減去預測性塊而形成殘差視頻塊。殘差塊中的殘差視頻數(shù)據(jù)可包含在一或多個TU中,并應用到變換處理單元352。變換處理單元352使用例如離散余弦變換(DCT)或概念上類似變換的變換將殘差視頻數(shù)據(jù)變換成殘差變換系數(shù)。變換處理單元352可將殘差視頻數(shù)據(jù)從像素域轉(zhuǎn)換到變換域,例如頻域。
[0182]變換處理單元352可將所得變換系數(shù)發(fā)送到量化處理單元354。量化處理單元354量化所述變換系數(shù)以進一步減小位速率。量化過程可減小與系數(shù)中的一些或全部相關聯(lián)的位深度??赏ㄟ^調(diào)整量化參數(shù)來修改量化程度。在一些實例中,量化處理單元354可接著執(zhí)行對包含經(jīng)量化變換系數(shù)的矩陣的掃描。或者,熵編碼單元356可執(zhí)行所述掃描。
[0183]在量化之后,熵編碼單元356對經(jīng)量化的變換系數(shù)進行熵編碼。舉例來說,熵編碼單元356可執(zhí)行上下文自適應可變長度譯碼(CAVLC)、上下文自適應二進制算術譯碼(CABAC)、基于語法的上下文自適應二進制算術譯碼(SBAC)、概率區(qū)間分割熵(PIPE)譯碼或另一熵譯碼方法或技術。熵編碼單元356可執(zhí)行本文針對二進制化和編碼語法元素(包含向量分量、旗標和其它語法元素)以用于根據(jù)IntraBC模式的預測的所描述技術中的任一者。在由熵編碼單元356進行熵編碼之后,可將經(jīng)編碼視頻位流發(fā)射到視頻解碼器30,或經(jīng)存檔以供稍后發(fā)射或供視頻解碼器30檢索。
[0184]逆量化處理單元358和逆變換處理單元360分別應用逆量化和逆變換,以在像素域中重構(gòu)殘差塊供稍后用作用于其它視頻塊的預測的參考塊。運動補償單元344和/或IntraBC單元348可通過將殘差塊加到參考圖片列表中的一者內(nèi)的參考圖片中的一者的預測性塊來計算參考塊。運動補償單元344和/或IntraBC單元348也可將一或多個內(nèi)插濾波器應用于經(jīng)重構(gòu)殘差塊,以計算用于運動估計的子整數(shù)像素值。
[0185]求和器362將經(jīng)重構(gòu)殘差塊相加到由運動補償單元344和/或IntraBC單元348產(chǎn)生的經(jīng)運動補償?shù)念A測塊以產(chǎn)生經(jīng)重構(gòu)視頻塊。既定區(qū)存儲器364根據(jù)如本文中所描述的視頻編碼器20對當前視頻塊的IntraBC(例如,IntraBC單元348)的既定區(qū)的定義來存儲經(jīng)重構(gòu)視頻塊。既定區(qū)存儲器364可存儲尚未由濾波器處理單元366環(huán)路內(nèi)濾波的經(jīng)重構(gòu)視頻塊。求和器362可與既定區(qū)存儲器364并行地將經(jīng)重構(gòu)視頻塊提供到濾波器處理單元366,或既定區(qū)存儲器364可在不再需要用于IntraBC的既定區(qū)時將經(jīng)重構(gòu)視頻塊釋放到濾波器處理單元366。在任一情況下,IntraBC單元348可搜索既定區(qū)存儲器364中的經(jīng)重構(gòu)視頻塊,以尋找與當前視頻塊在同一圖片內(nèi)的預測性視頻塊來預測當前視頻塊。
[0186]濾波器處理單元366可對經(jīng)重構(gòu)視頻塊執(zhí)行環(huán)路內(nèi)濾波。環(huán)路內(nèi)濾波可包含去塊濾波以對塊邊界進行濾波,以從經(jīng)重構(gòu)視頻去除成塊假影。環(huán)路內(nèi)濾波還可包含SAO濾波以改進經(jīng)重構(gòu)視頻。其中一些可經(jīng)環(huán)路內(nèi)濾波的經(jīng)重構(gòu)塊可存儲在參考圖片存儲器368中作為參考圖片。參考圖片可包含可由運動估計單元342和運動補償單元344用作預測性塊,以對后續(xù)視頻幀或圖片中的塊進行幀間預測。
[0187]以此方式,視頻編碼器20可經(jīng)配置以實施本發(fā)明的實例技術以用于例如根據(jù)IntraBC模式從同一圖片內(nèi)的視頻數(shù)據(jù)預測塊對視頻數(shù)據(jù)塊的幀內(nèi)預測。舉例來說,視頻編碼器20可為經(jīng)配置以執(zhí)行對視頻數(shù)據(jù)進行編碼的方法的視頻編碼器的實例,包含用于從同一圖片內(nèi)的視頻數(shù)據(jù)的預測性塊對視頻數(shù)據(jù)塊的幀內(nèi)預測的模式,所述方法包括從與當前視頻數(shù)據(jù)塊在同一圖片內(nèi)的一組經(jīng)先前編碼的視頻數(shù)據(jù)塊來選擇用于當前視頻數(shù)據(jù)塊的預測性視頻數(shù)據(jù)塊。所述方法進一步包括確定二維向量,其中所述二維向量具有水平位移分量和垂直位移分量,其中所述水平位移分量表示預測性視頻數(shù)據(jù)塊與當前視頻數(shù)據(jù)塊之間的水平位移,且所述垂直位移分量表示預測性視頻數(shù)據(jù)塊與當前視頻數(shù)據(jù)塊之間的垂直位移。所述方法進一步包括基于當前視頻數(shù)據(jù)塊和預測性視頻數(shù)據(jù)塊確定殘差塊,且在經(jīng)編碼視頻位流中編碼定義所述二維向量的水平位移分量和垂直位移分量的一或多個語法元素和所述殘差塊。
[0188]視頻編碼器20也可為包括經(jīng)配置以存儲經(jīng)編碼視頻位流的存儲器和一或多個處理器的視頻編碼器的實例。所述一或多個處理器經(jīng)配置以從與當前視頻數(shù)據(jù)塊在同一圖片內(nèi)的一組經(jīng)先前編碼的視頻數(shù)據(jù)塊選擇用于當前視頻數(shù)據(jù)塊的預測性視頻數(shù)據(jù)塊。所述一或多個處理器進一步經(jīng)配置以確定二維向量,其中所述二維向量具有水平位移分量和垂直位移分量,其中所述水平位移分量表示預測性視頻數(shù)據(jù)塊與當前視頻數(shù)據(jù)塊之間的水平位移,且所述垂直位移分量表示預測性視頻數(shù)據(jù)塊與當前視頻數(shù)據(jù)塊之間的垂直位移。所述一或多個處理器進一步經(jīng)配置以基于當前視頻數(shù)據(jù)塊和預測性視頻數(shù)據(jù)塊確定殘差塊,且在經(jīng)編碼視頻位流中對定義所述二維向量的水平和垂直位移分量的一或多個語法元素和所述殘差塊進行編碼。
[0189]圖7是說明可實施本發(fā)明中描述的技術的實例視頻解碼器的框圖。在圖7的實例中,視頻解碼器30包含視頻數(shù)據(jù)存儲器378、熵解碼單元380、預測處理單元381、逆量化處理單元386、逆變換處理單元388、求和器390、既定區(qū)存儲器392、濾波器處理單元394和參考圖片存儲器396。預測處理單元381包含運動補償單元382、幀內(nèi)預測處理單元384和塊副本內(nèi)(IntraBC)單元385。在一些實例中,視頻解碼器30可執(zhí)行一般與關于來自圖6的視頻編碼器20描述的編碼遍次互逆的解碼遍次。
[0190]在各種實例中,可給視頻解碼器30的單元分派任務以執(zhí)行本發(fā)明的技術。并且,在一些實例中,可在視頻解碼器30的單元中的一或多者當中劃分本發(fā)明的技術。舉例來說,IntraBC單元385可單獨或與視頻解碼器30的其它單元組合地執(zhí)行本發(fā)明的技術,所述其它單元例如運動補償單元382、幀內(nèi)預測處理單元384、既定區(qū)存儲器392和熵解碼單元380。[0191 ]在解碼過程期間,視頻解碼器30從視頻編碼器接收表示經(jīng)編碼視頻切片的視頻塊和相關聯(lián)語法元素的經(jīng)編碼視頻位流。視頻數(shù)據(jù)存儲器378可存儲待由視頻解碼器30的組件解碼的視頻數(shù)據(jù),例如經(jīng)編碼視頻位流。存儲在視頻數(shù)據(jù)存儲器378中的視頻數(shù)據(jù)可例如從計算機可讀媒體16獲得,例如經(jīng)由視頻數(shù)據(jù)的有線或無線網(wǎng)絡通信從本地視頻源(例如相機)或通過存取物理數(shù)據(jù)存儲媒體而獲得。視頻數(shù)據(jù)存儲器378可形成存儲來自經(jīng)編碼視頻位流的經(jīng)編碼視頻數(shù)據(jù)的經(jīng)譯碼圖片緩沖器(CPB)。既定區(qū)存儲器392可為存儲參考視頻數(shù)據(jù)以供視頻解碼器30例如在幀內(nèi)譯碼模式中編碼視頻數(shù)據(jù)的參考塊存儲器。視頻數(shù)據(jù)存儲器378和既定區(qū)存儲器392可由多種存儲器裝置中的任一者形成,例如DRAM,包含SDRAM、MRAM、RRAM或其它類型的存儲器裝置。視頻數(shù)據(jù)存儲器378和既定區(qū)存儲器392可由同一存儲器裝置或單獨的存儲器裝置提供。在各種實例中,視頻數(shù)據(jù)存儲器378可與視頻解碼器30的其它組件一起在芯片上,或相對于那些組件在芯片外。
[0192]視頻解碼器30的熵解碼單元380對位流進行熵解碼以產(chǎn)生經(jīng)量化系數(shù)、用于幀間預測的運動向量、用于IntraBC預測的二維向量以及本文所描述的其它語法元素。熵解碼單元380可執(zhí)行本文所描述的用于二進制化和編碼語法元素(包含向量分量、旗標和其它語法元素)以用于根據(jù)IntraBC模式的預測的技術中的任一者的逆過程。熵解碼單元380將向量和其它語法元素轉(zhuǎn)發(fā)到預測處理單元381。視頻解碼器30可接收序列層級、圖片層級、視頻切片層級和/或視頻塊層級的語法元素。
[0193]當視頻切片經(jīng)譯碼為經(jīng)幀內(nèi)譯碼(I)切片時,預測處理單元381的幀內(nèi)預測處理單元384可基于發(fā)信號通知的幀內(nèi)預測模式和來自當前幀或圖片的先前經(jīng)解碼塊的數(shù)據(jù)產(chǎn)生用于當前視頻切片的視頻塊的預測數(shù)據(jù)。當視頻幀經(jīng)譯碼為經(jīng)幀間譯碼(即,B或P)切片時,預測處理單元381的運動補償單元382基于從熵解碼單元280接收到的運動向量和其它語法元素產(chǎn)生用于當前視頻切片的視頻塊的預測性塊??蓮膮⒖紙D片列表中的一者內(nèi)的參考圖片中的一者產(chǎn)生預測性塊。視頻解碼器30可使用默認構(gòu)造技術或基于存儲在參考圖片存儲器396中的參考圖片的任何其它技術來構(gòu)造參考幀列表RefPicListO和RefPicListl。當視頻塊是根據(jù)本文所描述的IntraBC模式經(jīng)譯碼時,預測處理單元381的IntraBC單元385基于從熵解碼單元380接收的二維向量和其它語法元素產(chǎn)生當前視頻塊的預測性塊。所述預測性塊可在由視頻編碼器20界定的與當前視頻塊在同一圖片內(nèi)的既定區(qū)內(nèi),且從既定區(qū)存儲器392檢索。
[0194]運動補償單元382和IntraBC單元385通過剖析向量和其它語法元素確定當前視頻切片的視頻塊的預測信息,且使用所述預測信息來產(chǎn)生正被解碼的當前視頻塊的預測性塊。舉例來說,運動補償單元282使用所接收語法元素中的一些語法元素來確定用于譯碼視頻切片的視頻塊的預測模式(例如,幀內(nèi)預測或幀間預測)、幀間預測切片類型(例如,B切片或P切片)、切片的參考圖片列表中的一或多者的構(gòu)造信息、切片的每一經(jīng)幀間編碼的視頻塊的運動向量、切片的每一經(jīng)幀間譯碼的視頻塊的幀間預測狀態(tài),及用以解碼當前視頻切片中的視頻塊的其它信息。類似地,IntraBC單元385可使用所接收語法元素中的一些語法元素(例如,旗標)確定當前視頻塊是使用IntraBC模式預測、指示圖片的哪些視頻塊在既定區(qū)內(nèi)且應存儲在既定區(qū)存儲器中的用于既定區(qū)存儲器392的構(gòu)造信息、切片的每一經(jīng)IntraBC預測視頻塊的二維向量、切片的每一經(jīng)IntraBC預測視頻塊的IntraBC預測狀態(tài),以及用以解碼當前視頻切片中的視頻塊的其它信息。
[0195]運動補償單元382和IntraBC單元385還可基于內(nèi)插濾波器執(zhí)行內(nèi)插。運動補償單元382和IntraBC單元385可在視頻塊的編碼期間使用如由視頻編碼器20使用的內(nèi)插濾波器來計算用于預測性塊的子整數(shù)像素的內(nèi)插值。在此情況下,運動補償單元382和IntraBC單元385可從所接收的語法元素確定由視頻編碼器20使用的內(nèi)插濾波器,且使用所述內(nèi)插濾波器產(chǎn)生預測性塊。
[0196]逆量化處理單元386將在位流中提供且由熵解碼單元380解碼的經(jīng)量化變換系數(shù)逆量化,即去量化。逆量化過程可包含使用視頻編碼器20針對視頻切片中的每一視頻塊計算以確定應應用的量化程度和同樣逆量化程度的量化參數(shù)。逆變換處理單元388對變換系數(shù)應用逆變換,例如逆DCT、逆整數(shù)變換或概念上類似的逆變換過程,以便產(chǎn)生像素域中的殘差塊。
[0197]在運動補償單元382或IntraBC單元385基于所述向量和其它語法元素產(chǎn)生當前視頻塊的預測性塊之后,視頻解碼器30通過將來自逆變換處理單元388的殘差塊與由運動補償單元382和IntraBC單元385產(chǎn)生的對應預測性塊求和而形成經(jīng)解碼視頻塊。求和器390表示執(zhí)行此求和運算以產(chǎn)生經(jīng)重構(gòu)視頻塊的組件。
[0198]既定區(qū)存儲器392根據(jù)如本文中所描述用于視頻編碼器20對當前視頻塊的IntraBC的既定區(qū)的定義存儲經(jīng)重構(gòu)視頻塊。既定區(qū)存儲器392可存儲尚未由濾波器處理單元394環(huán)路內(nèi)濾波的經(jīng)重構(gòu)視頻塊。求和器390可與既定區(qū)存儲器392并行地將經(jīng)重構(gòu)視頻塊提供到濾波器處理單元394,或當不再需要IntraBC的既定區(qū)時,既定區(qū)存儲器392可將經(jīng)重構(gòu)視頻塊釋放到濾波器處理單元394。在任一情況下,IntraBC單元385從既定區(qū)存儲器392檢索當前視頻塊的預測性視頻塊。
[0199]濾波器處理單元394可對經(jīng)重構(gòu)視頻塊執(zhí)行環(huán)路內(nèi)濾波。環(huán)路內(nèi)濾波可包含去塊濾波以對塊邊界進行濾波,以從經(jīng)重構(gòu)視頻去除成塊假影。環(huán)路內(nèi)濾波還可包含SAO濾波以改進經(jīng)重構(gòu)視頻。其中一些可經(jīng)環(huán)路內(nèi)濾波的經(jīng)重構(gòu)塊可存儲在參考圖片存儲器368中作為參考圖片。參考圖片可包含可由運動補償單元382用作預測性塊以對后續(xù)視頻幀或圖片中的塊進行幀間預測的經(jīng)重構(gòu)塊。參考圖片存儲器396還存儲經(jīng)解碼視頻用于以后在顯示裝置(例如圖1的顯示裝置32)上呈現(xiàn)。
[0200]以此方式,視頻解碼器30可經(jīng)配置以實施用于基于同一圖片內(nèi)的預測性視頻數(shù)據(jù)塊對當前視頻數(shù)據(jù)塊進行幀內(nèi)預測的本發(fā)明的實例技術。舉例來說,視頻解碼器30可為經(jīng)配置以執(zhí)行對視頻數(shù)據(jù)進行解碼的方法的視頻解碼器的實例,包含用于從同一圖片內(nèi)的預測性視頻數(shù)據(jù)塊對視頻數(shù)據(jù)塊的幀內(nèi)預測的模式,所述方法包括在經(jīng)編碼視頻位流中接收界定二維向量的水平位移分量和垂直位移分量的一或多個語法元素和當前視頻數(shù)據(jù)塊的殘差塊,且對所述一或多個語法元素進行解碼。所述方法進一步包括基于界定所述二維向量的水平位移分量和垂直位移分量的經(jīng)解碼語法元素確定當前視頻數(shù)據(jù)塊的預測性視頻數(shù)據(jù)塊,其中所述預測性視頻數(shù)據(jù)塊是與當前視頻數(shù)據(jù)塊在同一圖片內(nèi)的經(jīng)重構(gòu)視頻數(shù)據(jù)塊,以及基于預測性視頻數(shù)據(jù)塊和殘差塊重構(gòu)當前視頻數(shù)據(jù)塊。
[0201]視頻解碼器30也可為包括經(jīng)配置以存儲對視頻數(shù)據(jù)進行編碼的經(jīng)編碼視頻位流的存儲器和一或多個處理器的視頻解碼器的實例。視頻解碼器的所述一或多個處理器可經(jīng)配置以對所述一或多個語法元素進行解碼,基于界定所述二維向量的水平位移分量和垂直位移分量的經(jīng)解碼語法元素確定當前視頻數(shù)據(jù)塊的預測性視頻數(shù)據(jù)塊,其中所述預測性視頻數(shù)據(jù)塊是與當前視頻數(shù)據(jù)塊在同一圖片內(nèi)的經(jīng)重構(gòu)視頻數(shù)據(jù)塊,以及基于預測性視頻數(shù)據(jù)塊和所述殘差塊重構(gòu)當前視頻數(shù)據(jù)塊。
[0202]圖8是說明用于根據(jù)本發(fā)明中描述的技術對視頻數(shù)據(jù)進行編碼的實例方法的流程圖。將參考視頻編碼器(例如視頻編碼器20)來描述圖8的技術。視頻編碼器20從與譯碼單元相關聯(lián)的多個向量為圖片的CU的第一色度塊確定向量(402)。視頻編碼器20使用所述向量來定位第一色度參考塊(404)。第一色度參考塊可與所述⑶在同一圖片中。視頻編碼器20基于第一色度參考塊來預測第一色度塊(406)。視頻編碼器20使用所述向量來定位第二色度參考塊(408)。第二色度參考塊可與所述⑶在同一圖片中。視頻編碼器20基于所述第二色度參考塊來預測譯碼單元的第二色度塊(410)。
[0203]視頻編碼器20產(chǎn)生使用塊副本內(nèi)模式來譯碼圖片的⑶的指示以及所述⑶的每一明度塊的向量的指示,以包含在經(jīng)編碼視頻數(shù)據(jù)中(412)。如上文所闡釋,視頻編碼器20可使用單獨塊向量來預測明度分量中的每一者,但使用從用以預測明度分量得單獨塊向量確定的共用塊向量來預測CU的色度分量。因此,視頻編碼器20可在經(jīng)編碼視頻數(shù)據(jù)中包含CU的每一明度分量的單獨塊向量的指示。
[0204]圖9是說明用于根據(jù)本發(fā)明中描述的技術對視頻數(shù)據(jù)進行解碼的實例方法的流程圖。將參考視頻解碼器(例如視頻解碼器30)來描述圖9的技術。視頻解碼器30確定使用塊副本內(nèi)模式來譯碼視頻數(shù)據(jù)的圖片的CU(420)。視頻解碼器30從與譯碼單元相關聯(lián)的多個向量為CU的第一色度塊確定向量(422)。視頻解碼器30使用所述向量來定位第一色度參考塊(424)。第一色度參考塊與所述⑶在同一圖片中。視頻解碼器30基于第一色度參考塊來預測第一色度塊(426)。視頻解碼器30使用所述向量來定位第二色度參考塊(428)。第二色度參考塊與所述⑶在同一圖片中。視頻解碼器30基于所述第二色度參考塊來預測⑶的第二色度塊(430)。
[0205]所述⑶可例如包含兩個或兩個以上PU,其中第一色度塊對應于第一 PU,且第二色度塊對應于第二 PU。視頻解碼器30可通過獲得第一 PU的向量來為第二色度塊確定向量。
[0206]在一實例中,CU可包含兩個或兩個以上PU,其中每一PU具有相關聯(lián)向量。視頻解碼器30可使用與第一預測單元相關聯(lián)的向量來定位第一明度參考塊。第一明度參考塊可對應于第一 PU。視頻解碼器30可使用與第二 PU相關聯(lián)的向量來定位第二明度參考塊。第二參考明度塊可對應于第二 PU。視頻解碼器30可使用與第一 PU相關聯(lián)的向量來定位第一色度參考塊,且使用與第一 PU相關聯(lián)的向量來定位第二色度參考塊。
[0207]在一個實例中,當⑶的色度取樣格式是4:2:0時,第一色度塊可為⑶的右下塊。第二色度塊可為⑶的右上塊,且視頻解碼器30可使用向量來定位第三參考塊。第三參考塊可在所述圖片中。視頻解碼器30可基于第一參考塊來預測第三色度塊。第三色度塊可為⑶的左上塊。視頻解碼器30可使用所述向量來定位第四參考塊,且基于第二參考塊來預測CU的第四色度塊。第四參考塊可在所述圖片中,且第四色度塊可為CU的左下塊。
[0208]在一實例中,⑶的色度取樣格式可為4:2:2ο第一色度塊可為右上塊,且第二色度塊可為⑶的左上塊。視頻解碼器30可為⑶的第三色度塊確定第二向量,且使用所述第二向量來定位第三參考塊。第三參考塊可在所述圖片中。視頻解碼器30可使用第三參考塊作為第三色度塊的預測符。視頻解碼器30可使用所述向量來定位第四參考塊。第四參考塊可在所述圖片中。視頻解碼器30可使用第四參考塊作為CU的第四色度塊的預測符。
[0209]將認識到,取決于實例,本文中所描述的技術中的任一者的某些動作或事件可以不同序列執(zhí)行、可添加、合并或全部省略(例如,實踐所述技術并不需要所有的所描述動作或事件)。此外,在某些實例中,可例如經(jīng)由多線程處理、中斷處理或多個處理器同時而非依序執(zhí)行動作或事件。
[0210]在一或多個實例中,所描述功能可在硬件、軟件、固件或其任何組合中實施。如果以軟件實施,那么所述功能可作為一或多個指令或代碼在計算機可讀媒體上存儲或傳輸,并且由基于硬件的處理單元來執(zhí)行。計算機可讀媒體可包含計算機可讀存儲媒體,所述計算機可讀存儲媒體對應于有形媒體,例如數(shù)據(jù)存儲媒體或包含(例如)根據(jù)通信協(xié)議促進計算機程序從一位置傳送至另一位置的任何媒體的通信媒體。以此方式,計算機可讀媒體大體可對應于(I)為非暫時性的有形計算機可讀存儲媒體,或(2)通信媒體,例如,信號或載波。數(shù)據(jù)存儲媒體可為可由一或多個計算機或一個或多個處理器存取以檢索用于實施本發(fā)明中描述的技術的指令、代碼和/或數(shù)據(jù)結(jié)構(gòu)的任何可用媒體。計算機程序產(chǎn)品可包含計算機可讀媒體。
[0211]借助于實例而非限制,此類計算機可讀存儲媒體可包括RAM、R0M、EEPR0M、CD_R0M或其它光盤存儲裝置、磁盤存儲裝置或其它磁性存儲裝置、快閃存儲器或可用來存儲指令或數(shù)據(jù)結(jié)構(gòu)的形式的期望程序代碼并且可由計算機存取的任何其它媒體。并且,可恰當?shù)貙⑷魏芜B接稱作計算機可讀媒體。舉例來說,如果使用同軸纜線、光纖纜線、雙絞線、數(shù)字訂戶線(DSL)或例如紅外線、無線電和微波等無線技術從網(wǎng)站、服務器或其它遠程源傳輸指令,那么同軸纜線、光纖纜線、雙絞線、DSL或例如紅外線、無線電和微波等無線技術包含在媒體的定義中。然而,應理解,所述計算機可讀存儲媒體和數(shù)據(jù)存儲媒體并不包含連接、載波、信號或其它暫時性媒體,而是實際上針對非暫時性的有形存儲媒體。如本文中所使用,磁盤和光盤包含壓縮光盤(CD)、激光光盤、光學光盤、數(shù)字多功能光盤(DVD)、軟性磁盤和藍光光盤,其中磁盤通常以磁性方式再現(xiàn)數(shù)據(jù),而光盤利用激光以光學方式再現(xiàn)數(shù)據(jù)。以上的組合也應包含在計算機可讀媒體的范圍內(nèi)。
[0212]可由例如一或多個數(shù)字信號處理器(DSP)、通用微處理器、專用集成電路(ASIC)、現(xiàn)場可編程邏輯陣列(FPGA)或其它等效集成或離散邏輯電路等一或多個處理器來執(zhí)行指令。因此,如本文中所使用的術語“處理器”可指代上述結(jié)構(gòu)或適合于實施本文中所描述的技術的任何其它結(jié)構(gòu)中的任一者。另外,在一些方面中,本文中所描述的功能性可在經(jīng)配置以用于編碼和解碼的專用硬件和/或軟件模塊內(nèi)提供,或者并入在組合式編解碼器中。并且,可將所述技術完全實施于一或多個電路或邏輯元件中。
[0213]本發(fā)明的技術可在各種各樣的裝置或設備中實施,所述裝置或設備包含無線手持機、集成電路(IC)或一組IC(例如,芯片組)。本發(fā)明中描述各種組件、模塊或單元是為了強調(diào)經(jīng)配置以執(zhí)行所揭示的技術的裝置的功能方面,但未必需要通過不同硬件單元實現(xiàn)。實際上,如上文所描述,各種單元可以結(jié)合合適的軟件和/或固件組合在編碼解碼器硬件單元中,或者通過互操作硬件單元的集合來提供,所述硬件單元包含如上文所描述的一或多個處理器。
[0214]已描述了各種實例。這些和其它實例在所附權(quán)利要求書的范圍內(nèi)。
【主權(quán)項】
1.一種解碼視頻數(shù)據(jù)的方法,所述方法包括: 確定使用塊副本內(nèi)模式來譯碼所述視頻數(shù)據(jù)的圖片的譯碼單元; 從與所述譯碼單元相關聯(lián)的多個向量確定用于所述譯碼單元的第一色度塊的向量; 使用所述向量來定位第一色度參考塊,其中所述第一色度參考塊在所述圖片中; 基于所述第一色度參考塊來預測所述第一色度塊; 使用曾用以定位所述第一色度參考塊的所述相同向量,為所述相同譯碼單元的第二色度塊定位第二色度參考塊,其中所述第二色度參考塊在所述圖片中,且不同于所述第一色度參考塊;以及 基于所述第二色度參考塊來預測所述譯碼單元的所述第二色度塊。2.根據(jù)權(quán)利要求1所述的方法,其中所述譯碼單元包括兩個或兩個以上預測單元,其中所述第一色度塊對應于所述譯碼單元的第一預測單元,且所述第二色度塊對應于所述譯碼單元的第二預測單元,且其中為所述譯碼單元的所述第一色度塊確定所述向量包括為所述第一預測單元獲得向量。3.根據(jù)權(quán)利要求1所述的方法,其中所述譯碼單元包括兩個或兩個以上預測單元,其中每一預測單元具有相關聯(lián)向量,所述方法進一步包括: 使用與所述譯碼單元的第一預測單元相關聯(lián)的所述向量來定位第一明度參考塊; 使用與所述譯碼單元的所述第二預測單元相關聯(lián)的所述向量來定位第二明度參考塊; 使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第一色度參考塊;以及; 使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第二色度參考塊。4.根據(jù)權(quán)利要求1所述的方法,其中所述譯碼單元的色度取樣格式是4:2:0,且其中從所述多個向量確定的所述向量與所述譯碼單元的右下塊相關聯(lián)。5.根據(jù)權(quán)利要求4所述的方法,其中所述第二色度塊是所述譯碼單元的右上塊,所述方法進一步包括: 使用所述向量來定位第三參考塊,其中所述第三參考塊在所述圖片中; 基于所述第一參考塊來預測第三色度塊,其中所述第三色度塊是所述譯碼單元的左上塊; 使用所述向量來定位第四參考塊,其中所述第四參考塊在所述圖片中; 基于所述第二參考塊來預測所述譯碼單元的第四色度塊,其中所述第四色度塊是所述譯碼單元的左下塊。6.根據(jù)權(quán)利要求1所述的方法,其中所述譯碼單元的色度取樣格式是4:2:2,且其中所述第一色度塊是所述譯碼單元的右上塊,且所述第二色度塊是所述譯碼單元的左上塊。7.根據(jù)權(quán)利要求6所述的方法,其進一步包含: 為所述譯碼單元的第三色度塊確定第二向量; 使用所述第二向量來定位第三參考塊,其中所述第三參考塊在所述圖片中; 使用所述第三參考塊作為所述第三色度塊的預測符; 使用所述向量來定位第四參考塊,其中所述第四參考塊在所述圖片中; 使用所述第四參考塊作為所述譯碼單元的第四色度塊的預測符。8.根據(jù)權(quán)利要求1所述的方法,其中所述譯碼單元包括殘差數(shù)據(jù)。9.一種編碼視頻數(shù)據(jù)的方法,所述方法包含: 從與譯碼單元相關聯(lián)的多個向量確定用于圖片的譯碼單元的第一色度塊的向量; 使用所述向量來定位第一色度參考塊,其中所述第一色度參考塊在所述圖片中; 基于所述第一色度參考塊來預測所述第一色度塊; 使用曾用以定位所述第一色度參考塊的所述相同向量,為所述相同譯碼單元的第二色度塊定位第二色度參考塊,其中所述第二色度參考塊在所述圖片中,且不同于所述第一色度參考塊; 基于所述第二色度參考塊來預測所述譯碼單元的所述第二色度塊;以及產(chǎn)生使用塊副本內(nèi)模式來譯碼所述圖片的所述譯碼單元的指示以及用于所述譯碼單元的每一明度塊的向量的指示,以包含在所述經(jīng)編碼視頻數(shù)據(jù)中。10.根據(jù)權(quán)利要求9所述的方法,其中所述譯碼單元包括兩個或兩個以上預測單元,且其中所述第一色度塊對應于第一預測單元,且所述第二色度塊對應于第二預測單元,且其中為所述譯碼單元的所述第二色度塊確定所述向量包括為所述第一預測單元獲得向量。11.根據(jù)權(quán)利要求9所述的方法,其中所述譯碼單元包括兩個或兩個以上預測單元,其中每一預測單元具有相關聯(lián)向量,所述方法進一步包括: 使用與所述第一預測單元相關聯(lián)的所述向量來定位第一明度參考塊; 使用與所述第二預測單元相關聯(lián)的所述向量來定位第二明度參考塊; 使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第一色度參考塊;以及 使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第二色度參考塊。12.根據(jù)權(quán)利要求9所述的方法,其中所述譯碼單元的色度取樣格式是4:2:0,且其中從所述多個向量確定的所述向量與所述譯碼單元的右下塊相關聯(lián)。13.根據(jù)權(quán)利要求12所述的方法,其中所述第二色度塊是所述譯碼單元的右上塊,所述方法進一步包括: 使用所述向量來定位第三參考塊,其中所述第三參考塊在所述圖片中; 基于所述第一參考塊來預測第三色度塊,其中所述第三色度塊是所述譯碼單元的左上塊; 使用所述向量來定位第四參考塊,其中所述第四參考塊在所述圖片中;以及基于所述第二參考塊來預測所述譯碼單元的第四色度塊,其中所述第四色度塊是所述譯碼單元的左下塊。14.根據(jù)權(quán)利要求9所述的方法,其中所述譯碼單元的色度取樣格式是4:2:2,且其中所述第一色度塊是所述譯碼單元的右上塊,且所述第二色度塊是所述譯碼單元的左上塊。15.根據(jù)權(quán)利要求14所述的方法,其進一步包括: 為所述譯碼單元的第三色度塊確定第二向量; 使用所述第二向量來定位第三參考塊,其中所述第三參考塊在所述圖片中; 使用所述第三參考塊作為所述第三色度塊的預測符; 使用所述向量來定位第四參考塊,其中所述第四參考塊在所述圖片中;以及 使用所述第四參考塊作為所述譯碼單元的第四色度塊的預測符。16.根據(jù)權(quán)利要求9所述的方法,其中所述譯碼單元包括殘差數(shù)據(jù)。17.—種用于譯碼視頻數(shù)據(jù)的裝置,所述裝置包括: 存儲器,其經(jīng)配置以存儲視頻數(shù)據(jù); 視頻譯碼器,其包括一或多個處理器,所述一或多個處理器經(jīng)配置以: 從與譯碼單元相關聯(lián)的多個向量確定使用塊副本內(nèi)模式來譯碼所述視頻數(shù)據(jù)的圖片的譯碼單元; 為所述譯碼單元的第一色度塊確定向量; 使用所述向量來定位第一色度參考塊,其中所述第一色度參考塊在所述圖片中; 基于所述第一色度參考塊來預測所述第一色度塊; 使用曾用以定位所述第一色度參考塊的所述相同向量,為所述相同譯碼單元的第二色度塊定位第二色度參考塊,其中所述第二色度參考塊在所述圖片中,且不同于所述第一色度參考塊;以及 基于所述第二色度參考塊來預測所述譯碼單元的第二色度塊。18.根據(jù)權(quán)利要求17所述的裝置,其中所述譯碼單元包括兩個或兩個以上預測單元, 且其中所述第一色度塊對應于第一預測單元,且所述第二色度塊對應于第二預測單元,且其中為所述譯碼單元的所述第二色度塊確定所述向量包括為所述第一預測單元獲得向量。19.根據(jù)權(quán)利要求17所述的裝置,其中所述譯碼單元包括兩個或兩個以上預測單元, 其中每一預測單元具有相關聯(lián)向量,且其中所述一或多個處理器進一步經(jīng)配置以: 使用與所述第一預測單元相關聯(lián)的所述向量來定位第一明度參考塊; 使用與所述第二預測單元相關聯(lián)的所述向量來定位第二明度參考塊; 使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第一色度參考塊;以及 使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第二色度參考塊。20.根據(jù)權(quán)利要求17所述的裝置,其中所述譯碼單元的色度取樣格式是4:2:0,且其中從所述多個向量確定的所述向量與所述譯碼單元的右下塊相關聯(lián)。21.根據(jù)權(quán)利要求20所述的裝置,其中所述第二色度塊是所述譯碼單元的右上塊,且其中所述一或多個處理器進一步經(jīng)配置以: 使用所述向量來定位第三參考塊,其中所述第三參考塊在所述圖片中; 基于所述第一參考塊來預測第三色度塊,其中所述第三色度塊是所述譯碼單元的左上塊; 使用所述向量來定位第四參考塊,其中所述第四參考塊在所述圖片中;以及基于所述第二參考塊來預測所述譯碼單元的第四色度塊,其中所述第四色度塊是所述譯碼單元的左下塊。22.根據(jù)權(quán)利要求17所述的裝置,其中所述譯碼單元的色度取樣格式是4:2:2,且其中所述第一色度塊是所述譯碼單元的右上塊,且所述第二色度塊是所述譯碼單元的左上塊。23.根據(jù)權(quán)利要求22所述的裝置,其中所述一個或一個以上處理器進一步經(jīng)配置以: 為所述譯碼單元的第三色度塊確定第二向量; 使用所述第二向量來定位第三參考塊,其中所述第三參考塊在所述圖片中; 使用所述第三參考塊作為所述第三色度塊的預測符; 使用所述向量來定位第四參考塊,其中所述第四參考塊在所述圖片中;以及 使用所述第四參考塊作為所述譯碼單元的第四色度塊的預測符。24.根據(jù)權(quán)利要求17所述的裝置,其中所述譯碼單元包括殘差數(shù)據(jù)。25.根據(jù)權(quán)利要求17所述的裝置,其中所述裝置包括以下各項中的一者: 微處理器; 集成電路IC;以及 無線通信裝置,其包括所述視頻編碼器。26.根據(jù)權(quán)利要求17所述的裝置,其中所述視頻譯碼器包括視頻編碼器。27.根據(jù)權(quán)利要求17所述的裝置,其中所述視頻譯碼器包括視頻解碼器。28.一種用于譯碼視頻數(shù)據(jù)的設備,所述設備包括: 用于從與譯碼單元相關聯(lián)的多個向量確定使用塊副本內(nèi)模式來譯碼所述視頻數(shù)據(jù)的圖片的譯碼單元的裝置; 用于為所述譯碼單元的第一色度塊確定向量的裝置; 用于使用曾用以定位所述第一色度參考塊的所述相同向量來為所述相同譯碼單元的第二色度塊定位第二色度參考塊的裝置,其中所述第二色度參考塊在所述圖片中,且不同于所述第一色度參考塊; 用于基于所述第一色度參考塊來預測所述第一色度塊的裝置; 用于使用所述向量來定位第二色度參考塊的裝置,其中所述第二色度參考塊在所述圖片中;以及 用于基于所述第二色度參考塊來預測所述譯碼單元的第二色度塊的裝置。29.根據(jù)權(quán)利要求28所述的設備,其中所述譯碼單元包括兩個或兩個以上預測單元, 且其中所述第一色度塊對應于第一預測單元,且所述第二色度塊對應于第二預測單元,且其中所述用于為所述譯碼單元的所述第二色度塊確定所述向量的裝置包括用于為所述第一預測單元獲得向量的裝置。30.根據(jù)權(quán)利要求28所述的設備,其中所述譯碼單元包括兩個或兩個以上預測單元, 其中每一預測單元具有相關聯(lián)向量,所述設備進一步包括: 用于使用與所述第一預測單元相關聯(lián)的所述向量來定位第一明度參考塊的裝置; 用于使用與所述第二預測單元相關聯(lián)的所述向量來定位第二明度參考塊的裝置; 用于使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第一色度參考塊的裝置;以及 用于使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第二色度參考塊的裝置。31.根據(jù)權(quán)利要求28所述的設備,其中所述譯碼單元的色度取樣格式是4:2:0,且其中從所述多個向量確定的所述向量與所述譯碼單元的右下塊相關聯(lián)。32.根據(jù)權(quán)利要求31所述的設備,其中所述第二色度塊是所述譯碼單元的右上塊,所述設備進一步包括: 用于使用所述向量來定位第三參考塊的裝置,其中所述第三參考塊在所述圖片中; 用于基于所述第一參考塊來預測第三色度塊,其中所述第三色度塊是所述譯碼單元的左上塊; 用于使用所述向量來定位第四參考塊的裝置,其中所述第四參考塊在所述圖片中;以及 用于基于所述第二參考塊來預測所述譯碼單元的第四色度塊的裝置,其中所述第四色度塊是所述譯碼單元的左下塊。33.根據(jù)權(quán)利要求28所述的設備,其中所述譯碼單元的色度取樣格式是4:2:2,且其中所述第一色度塊是所述譯碼單元的右上塊,且所述第二色度塊是所述譯碼單元的左上塊。34.根據(jù)權(quán)利要求33所述的設備,其進一步包括: 用于為所述譯碼單元的第三色度塊確定第二向量的裝置; 用于使用所述第二向量來定位第三參考塊的裝置,其中所述第三參考塊在所述圖片中; 用于使用所述第三參考塊作為所述第三色度塊的預測符的裝置; 用于使用所述向量來定位第四參考塊的裝置,其中所述第四參考塊在所述圖片中;以及 用于使用所述第四參考塊作為所述譯碼單元的第四色度塊的預測符的裝置。35.根據(jù)權(quán)利要求28所述的設備,其中所述譯碼單元包括殘差數(shù)據(jù)。36.—種存儲指令的計算機可讀存儲媒體,所述指令在由一或多個處理器執(zhí)行時致使所述一或多個處理器: 從與譯碼單元相關聯(lián)的多個向量確定使用塊副本內(nèi)模式來譯碼所述視頻數(shù)據(jù)的圖片的譯碼單元; 為所述譯碼單元的第一色度塊確定向量; 使用曾用以定位所述第一色度參考塊的所述相同向量來為所述相同譯碼單元的第二色度塊定位第二色度參考塊,其中所述第二色度參考塊在所述圖片中,且不同于所述第一色度參考塊; 基于所述第一色度參考塊來預測所述第一色度塊; 使用所述向量來定位第二色度參考塊,其中所述第二色度參考塊在所述圖片中; 以及 基于所述第二色度參考塊來預測所述譯碼單元的第二色度塊。37.根據(jù)權(quán)利要求36所述的計算機可讀存儲媒體,其中所述譯碼單元包括兩個或兩個以上預測單元,且其中所述第一色度塊對應于第一預測單元,且所述第二色度塊對應于第二預測單元,且其中為所述譯碼單元的所述第二色度塊確定所述向量包括為所述第一預測單元獲得向量。38.根據(jù)權(quán)利要求36所述的計算機可讀存儲媒體,其中所述譯碼單元包括兩個或兩個以上預測單元,其中每一預測單元具有相關聯(lián)向量,且其中所述計算機可讀存儲媒體存儲在被所述一或多個處理器執(zhí)行時致使所述一或多個處理器進行以下操作的進一步指令: 使用與所述第一預測單元相關聯(lián)的所述向量來定位第一明度參考塊; 使用與所述第二預測單元相關聯(lián)的所述向量來定位第二明度參考塊; 使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第一色度參考塊;以及 使用與所述第一預測單元相關聯(lián)的所述向量來定位所述第二色度參考塊。39.根據(jù)權(quán)利要求36所述的計算機可讀存儲媒體,其中所述譯碼單元的色度取樣格式是4:2:0,且其中從所述多個向量確定的所述向量與所述譯碼單元的右下塊相關聯(lián)。40.根據(jù)權(quán)利要求39所述的計算機可讀存儲媒體,其中所述第二色度塊是所述譯碼單元的右上塊,且其中所述計算機可讀存儲媒體存儲在被所述一或多個處理器執(zhí)行時致使所述一或多個處理器進行以下操作的進一步指令: 使用所述向量來定位第三參考塊,其中所述第三參考塊在所述圖片中;基于所述第一參考塊來預測第三色度塊,其中所述第三色度塊是所述譯碼單元的左上塊; 使用所述向量來定位第四參考塊,其中所述第四參考塊在所述圖片中;以及基于所述第二參考塊來預測所述譯碼單元的第四色度塊,其中所述第四色度塊是所述譯碼單元的左下塊。41.根據(jù)權(quán)利要求36所述的計算機可讀存儲媒體,其中所述譯碼單元的色度取樣格式是4:2:2,且其中所述第一色度塊是右上塊,且所述第二色度塊是所述譯碼單元的左上塊。42.根據(jù)權(quán)利要求41所述的計算機可讀存儲媒體,其存儲在由所述一或多個處理器執(zhí)行時致使所述一或多個處理器進行以下操作的進一步指令: 為所述譯碼單元的第三色度塊確定第二向量; 使用所述第二向量來定位第三參考塊,其中所述第三參考塊在所述圖片中; 使用所述第三參考塊作為所述第三色度塊的預測符; 使用所述向量來定位第四參考塊,其中所述第四參考塊在所述圖片中;以及 使用所述第四參考塊作為所述譯碼單元的第四色度塊的預測符。43.根據(jù)權(quán)利要求36所述的計算機可讀存儲媒體,其中所述譯碼單元包括殘差數(shù)據(jù)。
【文檔編號】H04N19/186GK105874797SQ201580003703
【公開日】2016年8月17日
【申請日】2015年1月9日
【發(fā)明人】陳穎, 龐超, 張莉, 霍埃爾·索萊·羅哈斯, 馬爾塔·卡切維奇
【申請人】高通股份有限公司