欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

對于并行處理的幀內(nèi)塊復(fù)制預(yù)測限制的制作方法

文檔序號:12515725閱讀:226來源:國知局
對于并行處理的幀內(nèi)塊復(fù)制預(yù)測限制的制作方法與工藝

技術(shù)領(lǐng)域
本發(fā)明涉及視頻譯碼,并且更確切地說,涉及基于其它視頻塊對視頻塊的預(yù)測。
背景技術(shù)
:數(shù)字視頻能力可以并入到多種多樣的裝置中,包含數(shù)字電視、數(shù)字直播系統(tǒng)、無線廣播系統(tǒng)、個人數(shù)字助理(PDA)、膝上型或桌上型計算機、平板計算機、電子書閱讀器、數(shù)碼相機、數(shù)字記錄裝置、數(shù)字媒體播放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式或衛(wèi)星無線電電話(所謂的“智能電話”)、視頻電話會議裝置、視頻流式發(fā)射裝置及其類似者。數(shù)字視頻裝置實施視頻壓縮技術(shù),例如描述于以下各者中的那些技術(shù):由MPEG-2、MPEG-4、ITU-TH.263、ITU-TH.264/MPEG-4第10部分高級視頻譯碼(AVC)定義的標(biāo)準(zhǔn)、高效率視頻譯碼(HEVC)標(biāo)準(zhǔn)(H.265)及這些標(biāo)準(zhǔn)的擴展。視頻裝置可以通過實施此類視頻壓縮技術(shù)來更有效率地發(fā)射、接收、編碼、解碼和/或存儲數(shù)字視頻信息。視頻壓縮技術(shù)執(zhí)行空間(圖片內(nèi))預(yù)測及/或時間(圖片間)預(yù)測來減少或去除視頻序列中固有的冗余。對于基于塊的視頻譯碼,可以將視頻切片(即,視頻幀或視頻幀的一部分)分割成視頻塊,視頻塊也可被稱作樹塊、譯碼單元(CU)及/或譯碼節(jié)點。使用關(guān)于同一圖片中的相鄰塊中的參考樣本的空間預(yù)測對圖片的經(jīng)幀內(nèi)譯碼(I)切片中的視頻塊進行編碼。圖片的經(jīng)幀間編碼(P或B)切片中的視頻塊可使用相對于同一圖片中的相鄰塊中的參考樣本的空間預(yù)測或相對于其它參考圖片中的參考樣本的時間預(yù)測。圖片可被稱作幀,且參考圖片可被稱作參考幀。空間或時間預(yù)測產(chǎn)生待譯碼塊的預(yù)測性塊。殘余數(shù)據(jù)表示待譯碼原始塊與預(yù)測性塊的間的像素差。根據(jù)指向形成預(yù)測性塊的參考樣本塊的運動向量和指示經(jīng)譯碼塊與預(yù)測性塊之間的差的殘余數(shù)據(jù)來編碼經(jīng)幀間譯碼塊。根據(jù)幀內(nèi)譯碼模式和殘余數(shù)據(jù)來編碼經(jīng)幀內(nèi)譯碼塊。為了進一步壓縮,可將殘余數(shù)據(jù)從像素域變換到變換域,從而產(chǎn)生殘余變換系數(shù),可接著量化所述殘余變換系數(shù)。可掃描最初按二維陣列排列的經(jīng)量化變換系數(shù),以便產(chǎn)生變換系數(shù)的一維向量,且可應(yīng)用熵譯碼以實現(xiàn)甚至更多壓縮。技術(shù)實現(xiàn)要素:本發(fā)明提出在啟用IBC模式時潛在地增強并行處理的技術(shù)。在一個實例中,一種解碼視頻數(shù)據(jù)的方法包含:針對在啟用波前并行處理的情況下譯碼的一或多個塊,確定譯碼樹塊(CTB)延遲,其中CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲;針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用波前并行處理的情況下譯碼的當(dāng)前視頻數(shù)據(jù)塊,基于針對在啟用波前并行處理的情況下譯碼的一或多個塊所確定的CTB延遲,確定包含當(dāng)前塊的圖片內(nèi)用于當(dāng)前塊的IBC預(yù)測區(qū)域;從所確定的用于當(dāng)前塊的IBC預(yù)測區(qū)域內(nèi)識別用于當(dāng)前塊的預(yù)測性塊;及基于預(yù)測性塊對當(dāng)前塊進行IBC解碼。在另一實例中,一種編碼視頻數(shù)據(jù)的方法包含:針對在啟用波前并行處理的情況下譯碼的一或多個塊,確定譯碼樹塊(CTB)延遲,其中CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲;針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用波前并行處理的情況下譯碼的第一視頻數(shù)據(jù)塊,基于CTB延遲確定用于第一塊的IBC預(yù)測區(qū)域;從用于第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊;及產(chǎn)生指示用于定位預(yù)測性塊的塊向量的語法。在另一實例中,一種進行視頻譯碼的裝置包含存儲視頻數(shù)據(jù)的存儲器和一或多個處理器,所述一或多個處理器經(jīng)配置為:針對在啟用波前并行處理的情況下譯碼的一或多個塊,確定譯碼樹塊(CTB)延遲,其中CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲;針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用波前并行處理的情況下譯碼的當(dāng)前視頻數(shù)據(jù)塊,基于針對在啟用波前并行處理的情況下譯碼的一或多個塊所確定的CTB延遲,確定包含當(dāng)前塊的圖片內(nèi)用于當(dāng)前塊的IBC預(yù)測區(qū)域;從所確定的用于當(dāng)前塊的IBC預(yù)測區(qū)域內(nèi)識別用于當(dāng)前塊的預(yù)測性塊;及基于預(yù)測性塊對當(dāng)前塊進行IBC解碼。在另一實例中,一種用于進行視頻編碼的裝置包含存儲視頻數(shù)據(jù)的存儲器和一或多個處理器,所述一或多個處理器經(jīng)配置為:針對在啟用波前并行處理的情況下譯碼的一或多個塊,確定譯碼樹塊(CTB)延遲,其中CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲;針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用波前并行處理的情況下譯碼的第一視頻數(shù)據(jù)塊,基于CTB延遲確定用于第一塊的IBC預(yù)測區(qū)域;從用于第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊;及產(chǎn)生指示用于定位預(yù)測性塊的塊向量的語法。在另一實例中,一種用于解碼視頻數(shù)據(jù)的設(shè)備包含:用于針對在啟用波前并行處理的情況下譯碼的一或多個塊來確定譯碼樹塊(CTB)延遲的裝置,其中CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲;針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用波前并行處理的情況下譯碼的當(dāng)前視頻數(shù)據(jù)塊,用于基于針對在啟用波前并行處理的情況下譯碼的一或多個塊所確定的CTB延遲來確定包含當(dāng)前塊的圖片內(nèi)用于當(dāng)前塊的IBC預(yù)測區(qū)域的裝置;用于從所確定的用于當(dāng)前塊的IBC預(yù)測區(qū)域內(nèi)識別用于當(dāng)前塊的預(yù)測性塊的裝置;及用于基于預(yù)測性塊對當(dāng)前塊進行IBC解碼的裝置。在另一實例中,計算機可讀存儲媒體存儲指令,所述指令在由一或多個處理器執(zhí)行時使一個或多個處理器:針對在啟用波前并行處理的情況下譯碼的一或多個塊來確定譯碼樹塊(CTB)延遲,其中CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲;針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用波前并行處理的情況下譯碼的當(dāng)前視頻數(shù)據(jù)塊,基于針對在啟用波前并行處理的情況下譯碼的一或多個塊所確定的CTB延遲,確定包含當(dāng)前塊的圖片內(nèi)的用于當(dāng)前塊的IBC預(yù)測區(qū)域;從所確定的用于當(dāng)前塊的IBC預(yù)測區(qū)域內(nèi)識別用于當(dāng)前塊的預(yù)測性塊的;及基于預(yù)測性塊對當(dāng)前塊進行IBC解碼。在另一實例中,一種用于編碼視頻數(shù)據(jù)的設(shè)備包含:用于針對在啟用波前并行處理的情況下譯碼的一或多個塊來確定譯碼樹塊(CTB)延遲的裝置,其中CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲;針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用波前并行處理的情況下譯碼的第一視頻數(shù)據(jù)塊,用于基于CTB延遲確定用于第一塊的IBC預(yù)測區(qū)域的裝置;用于從用于第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊的裝置;及用于產(chǎn)生指示用于定位預(yù)測性塊的塊向量的語法的裝置。在另一實例中,計算機可讀存儲媒體存儲指令,所述指令在由一或多個處理器執(zhí)行時使一個或多個處理器:針對在啟用波前并行處理的情況下譯碼的一或多個塊,確定譯碼樹塊(CTB)延遲,其中CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲;針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用波前并行處理的情況下譯碼的第一視頻數(shù)據(jù)塊,基于CTB延遲,確定用于第一塊的IBC預(yù)測區(qū)域;從用于第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊;及產(chǎn)生指示用于定位預(yù)測性塊的塊向量的語法。在附圖和以下描述中闡述所述技術(shù)的一或多個方面的細節(jié)。所述技術(shù)的其它特征、目標(biāo)和優(yōu)點將從所述描述和附圖以及權(quán)利要求而顯而易見。附圖說明圖1是說明可利用本發(fā)明中描述的技術(shù)的實例視頻編碼和解碼系統(tǒng)的框圖。圖2A到2C是說明用于視頻數(shù)據(jù)的不同樣本格式的概念圖。圖3是說明根據(jù)4:2:0樣本格式而格式化的16×16譯碼單元的概念圖。圖4是說明根據(jù)4:2:2樣本格式而格式化的16×16譯碼單元的概念圖。圖5示出幀內(nèi)塊復(fù)制(IBC)模式的概念說明。圖6示出使用單元片時對圖片的光柵掃描的實例。圖7示出WPP并行地處理各行CTB的實例,每一行以在處理上方行的第二CTB之后可用的CABAC概率開始。圖8到12示出用于本發(fā)明中所描述的各種實例的有效預(yù)測區(qū)域。圖13示出用信號表示intra_bc_flag語法元素的實例方法。圖14示處用信號表示intra_bc_flag語法元素的另一實例方法。圖15是說明可實施本發(fā)明中所描述的技術(shù)的實例視頻編碼器的框圖。圖16是說明可實施本發(fā)明中所描述的技術(shù)的實例視頻解碼器的框圖。圖17是說明并入本發(fā)明中描述的技術(shù)的實例視頻編碼程序的框圖。圖18是說明并入本發(fā)明中描述的技術(shù)的實例視頻解碼程序的框圖。具體實施方式包含最近開發(fā)的高效視頻譯碼(HEVC)標(biāo)準(zhǔn)的各種視頻譯碼標(biāo)準(zhǔn)包含用于視頻塊的預(yù)測性譯碼模式,其中基于視頻數(shù)據(jù)的已經(jīng)譯碼塊來預(yù)測當(dāng)前正譯碼的塊。在幀內(nèi)預(yù)測模式中,基于與當(dāng)前塊在相同的圖片中的一或多個先前經(jīng)譯碼的相鄰塊來預(yù)測當(dāng)前塊,而在幀間預(yù)測模式中,基于不同圖片中的已經(jīng)譯碼塊來預(yù)測當(dāng)前塊。在幀間預(yù)測模式中,確定先前經(jīng)譯碼幀的塊用作預(yù)測塊的程序有時被稱作運動估計,其通常由視頻編碼器執(zhí)行,且識別及檢索預(yù)測性塊的程序有時被稱作運動補償,其由視頻編碼器及視頻解碼器兩者執(zhí)行。視頻編碼器通常通過使用多種譯碼情形來譯碼視頻及識別產(chǎn)生所要速率-失真折衷的譯碼情形來確定如何譯碼視頻數(shù)據(jù)序列。當(dāng)為特定視頻塊測試幀內(nèi)預(yù)測譯碼情形時,視頻編碼器通常測試相鄰像素行(即,正好在正譯碼塊上方的像素行),且測試相鄰像素列(即,正好在正譯碼塊左側(cè)的像素列)。相比之下,當(dāng)測試幀間預(yù)測情形時,視頻編碼器通常在大得多的搜索區(qū)域中識別候選預(yù)測性塊,其中所述搜索區(qū)域?qū)?yīng)于先前經(jīng)譯碼的視頻數(shù)據(jù)幀中的視頻塊。然而,已發(fā)現(xiàn),對于某些類型的視頻圖像,諸如包含文字、符號或重復(fù)圖案的視頻圖像,可通過使用幀內(nèi)塊復(fù)制(IBC)模式相對于幀內(nèi)預(yù)測及幀間預(yù)測實現(xiàn)譯碼增益,所述幀內(nèi)塊復(fù)制(IBC)模式有時也被稱作幀內(nèi)運動補償(IMC)模式。在各種譯碼標(biāo)準(zhǔn)的開發(fā)過程中,最初使用術(shù)語IMC模式,但之后被修改成IBC模式。在IBC模式中,視頻編碼器在與正經(jīng)譯碼塊相同的幀或圖片中搜索預(yù)測性塊(如同在幀內(nèi)預(yù)測模式中),但視頻編碼器搜索較寬搜索區(qū)域,而非僅僅搜索相鄰的像素列及像素行。在IBC中模式,視頻編碼器可確定偏移向量,有時也稱為運動向量或塊向量,用于識別與正預(yù)測的塊相同的幀或圖片內(nèi)的預(yù)測性塊。偏移向量包含(例如)x分量及y分量,其中x分量識別正預(yù)測視頻塊與預(yù)測性塊之間的水平位移,且其中y分量識別正預(yù)測視頻塊與預(yù)測性塊之間的垂直位移。視頻編碼器在經(jīng)編碼位流中用信號表示所確定的偏移向量,使得視頻解碼器在解碼經(jīng)編碼位流時可識別視頻編碼器所選定的預(yù)測性塊。包含HEVC的各種視頻譯碼標(biāo)準(zhǔn)還支持并行處理機制,例如,單元片和波前并行處理,以使得可同時解碼同一圖片內(nèi)的不同塊。單元片提供(利用經(jīng)譯碼樹塊(CTB)粒度)將圖片矩形分割為多個可獨立解碼的(包含剖析及重構(gòu)建)區(qū)域,以使得視頻解碼器可并行地解碼多個單元片。不同于單元片,波前并非可獨立解碼的,但視頻解碼器仍可能夠通過使各種波前解碼開始的時間交錯而并行地解碼多個波前。舉例來說,如果視頻解碼器在開始解碼第一波前下方的第二波前之前解碼第一波前的兩個塊,那么視頻解碼器可確保解碼第二波前所需的第一波前的任何信息已被解碼,并因此可用于解碼第二波前。本發(fā)明提出在啟用IBC模式時潛在地增強并行處理的技術(shù)。更具體地,本發(fā)明提出對IBC塊向量(BV)的限制,以使得解碼器可按非光柵掃描次序并行地處理多個CTU,其有時被稱作波前并行處理。本發(fā)明的技術(shù)是關(guān)于(但不限于)屏幕內(nèi)容譯碼,包含支持可能較高的位深度(超過8個位)、不同的色度采樣格式,諸如4:4:4、4:2:2、4:2:0、4:0:0等等。圖1為說明可利用本發(fā)明中所描述的技術(shù)的實例視頻編碼及解碼系統(tǒng)10的框圖,所述技術(shù)包含用于在IBC模式中對塊譯碼的技術(shù)和用于并行處理的技術(shù)。如圖1中所示,系統(tǒng)10包含源裝置12,其產(chǎn)生稍后待由目的地裝置14解碼的經(jīng)編碼視頻數(shù)據(jù)。源裝置12和目的地裝置14可包括廣泛范圍的裝置中的任一者,包含桌上型計算機、筆記型(即,膝上型)計算機、平板計算機、機頂盒、電話手持機(例如所謂的“智能”電話)、所謂的“智能”平板電腦、電視機、相機、顯示裝置、數(shù)字媒體播放器、視頻游戲控制臺、視頻流式發(fā)射裝置或類似者。在一些情況下,可裝備源器件12和目的地器件14以用于無線通信。目的地裝置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ù)通信標(biāo)準(zhǔn)(例如無線通信協(xié)議)調(diào)制經(jīng)編碼的視頻數(shù)據(jù),并將其發(fā)射到目的地裝置14。通信媒體可包括任何無線或有線通信媒體,例如射頻(RF)頻譜或一或多個物理傳輸線。通信媒體可形成分組網(wǎng)絡(luò)(例如,局域網(wǎng)、廣域網(wǎng)或全球網(wǎng)絡(luò),例如因特網(wǎng))的部分。通信媒體可包含路由器、交換器、基站或任何其它可用于促進從源裝置12到目的地裝置14的通信的設(shè)備。替代地,可將經(jīng)編碼數(shù)據(jù)從輸出接口22輸出到存儲裝置17。類似地,可以通過輸入接口從存儲裝置17存取經(jīng)編碼數(shù)據(jù)。存儲裝置17可以包含多種分布式或本地存取的數(shù)據(jù)存儲媒體中的任一者,例如硬盤驅(qū)動器、藍光光盤、DVD、CD-ROM、快閃存儲器、易失性或非易失性存儲器或用于存儲經(jīng)編碼視頻數(shù)據(jù)的任何其它合適的數(shù)字存儲媒體。在另一實例中,存儲裝置17可對應(yīng)于文件服務(wù)器或可保持由源裝置12產(chǎn)生的經(jīng)編碼視頻的另一中間存儲裝置。目的地裝置14可經(jīng)由流式發(fā)射或下載從存儲裝置17存取所存儲的視頻數(shù)據(jù)。文件服務(wù)器可為能夠存儲經(jīng)編碼視頻數(shù)據(jù)并將經(jīng)編碼視頻數(shù)據(jù)傳輸?shù)侥康牡匮b置14的任何類型服務(wù)器。實例文件服務(wù)器包含網(wǎng)絡(luò)服務(wù)器(例如,用于網(wǎng)站)、FTP服務(wù)器、網(wǎng)絡(luò)連接存儲(NAS)裝置或本地磁盤驅(qū)動器。目的地裝置14可以通過任何標(biāo)準(zhǔn)數(shù)據(jù)連接(包含因特網(wǎng)連接)來存取經(jīng)編碼視頻數(shù)據(jù)。此可包含適合于存取存儲于文件服務(wù)器上的經(jīng)編碼視頻數(shù)據(jù)的無線信道(例如,Wi-Fi連接)、有線連接(例如,DSL、電纜調(diào)制解調(diào)器等)或兩者的組合。經(jīng)編碼視頻數(shù)據(jù)從存儲裝置17的發(fā)射可為流式發(fā)射、下載發(fā)射或兩者的組合。本發(fā)明的技術(shù)未必限于無線應(yīng)用或設(shè)置。所述技術(shù)可應(yīng)用于視頻譯碼以支持多種多媒體應(yīng)用,例如空中電視廣播、有線電視發(fā)射、衛(wèi)星電視發(fā)射、流式視頻發(fā)射(例如,經(jīng)由因特網(wǎng))、編碼數(shù)字視頻以存儲于數(shù)據(jù)存儲媒體上、解碼存儲于數(shù)據(jù)存儲媒體上的數(shù)字視頻,或其它應(yīng)用。在一些實例中,系統(tǒng)10可經(jīng)配置以支持單向或雙向視頻發(fā)射,以支持例如視頻流式發(fā)射、視頻重放、視頻廣播和/或視頻電話等應(yīng)用。在圖1的實例中,源裝置12包含視頻源18、視頻編碼器20及輸出接口22。在一些情況下,輸出接口22可包含調(diào)制器/解調(diào)器(調(diào)制解調(diào)器)和/或發(fā)射器。在源裝置12中,視頻源18可包含諸如以下的源:視頻俘獲裝置(例如,攝像機)、含有先前俘獲的視頻的視頻存檔、用于從視頻內(nèi)容提供者接收視頻的視頻饋入接口和/或用于產(chǎn)生計算機圖形數(shù)據(jù)作為源視頻的計算機圖形系統(tǒng),或此類源的組合。作為一個實例,如果視頻源18為攝像機,那么源裝置12及目的地裝置14可形成所謂的相機電話或視頻電話。然而,本發(fā)明中所描述的技術(shù)一般來說可適用于視頻譯碼,且可應(yīng)用于無線和/或有線應(yīng)用。所俘獲、所預(yù)俘獲或計算機產(chǎn)生的視頻可由視頻編碼器20編碼。可經(jīng)由源裝置12的輸出接口22將經(jīng)編碼視頻數(shù)據(jù)直接發(fā)射到目的地裝置14。還可(或替代地)將經(jīng)編碼視頻數(shù)據(jù)存儲到存儲裝置17上以供稍后由目的地裝置14或其它裝置存取以用于解碼和/或重放。目的地裝置14包含輸入接口28、視頻解碼器30和顯示裝置32。在一些情況下,輸入接口28可包含接收器和/或調(diào)制解調(diào)器。目的地裝置14的輸入接口28經(jīng)由鏈路16接收經(jīng)編碼視頻數(shù)據(jù)。經(jīng)由鏈路16傳達或在存儲裝置17上提供的經(jīng)編碼視頻數(shù)據(jù)可包含由視頻編碼器20產(chǎn)生的多種語法元素,以供由例如視頻解碼器30等視頻解碼器用于解碼視頻數(shù)據(jù)。此類語法元素可與在通信媒體上發(fā)射、存儲在存儲媒體上或存儲在文件服務(wù)器上的經(jīng)編碼視頻數(shù)據(jù)包含在一起。顯示裝置32可與目的地裝置14集成或在所述目的地裝置外部。在一些實例中,目的地裝置14可包含集成式顯示裝置,且還經(jīng)配置以與外部顯示裝置接口連接。在其它實例中,目的地裝置14可為顯示裝置。一般來說,顯示裝置32將經(jīng)解碼視頻數(shù)據(jù)顯示給用戶,且可包括多種顯示裝置中的任一者,例如液晶顯示器(LCD)、等離子顯示器、有機發(fā)光二極管(OLED)顯示器或另一類型的顯示裝置。視頻編碼器20和視頻解碼器30可根據(jù)例如HEVC等視頻壓縮標(biāo)準(zhǔn)來操作,且可符合HEVC測試模型(HM)。被稱作“HEVC工作草案10”或“HEVCWD10”的HEVC標(biāo)準(zhǔn)的工作草案描述于布洛斯(Bross)等人的“編者提出的對HEVC版本1的校正(Editors'proposedcorrectionstoHEVCversion1)”中,ITU-TSG16WP3和ISO/IECJTC1/SC29/WG11的視頻譯碼聯(lián)合合作小組(JCT-VC),2013年4月,韓國仁川第13次會議。另一HEVC草案規(guī)范可得自:http://phenix.int-evry.fr/jct/doc_end_user/documents/15_Geneva/wg11/JCTVC-O1003-v2.zip。本發(fā)明中描述的技術(shù)也可根據(jù)當(dāng)前正開發(fā)的HEVC標(biāo)準(zhǔn)的擴展來操作。替代地或另外,視頻編碼器20和視頻解碼器30可根據(jù)其它專有或業(yè)界標(biāo)準(zhǔn)來操作,所述標(biāo)準(zhǔn)例如是ITU-TH.264標(biāo)準(zhǔn)(或者被稱作MPEG-4第10部分,高級視頻譯碼(AVC)),或此類標(biāo)準(zhǔn)的擴展。但是,本發(fā)明的技術(shù)不限于任何特定譯碼標(biāo)準(zhǔn)。視頻壓縮標(biāo)準(zhǔn)的其它實例包含ITU-TH.261、ISO/IECMPEG-1Visual、ITU-TH.262或ISO/IECMPEG-2Visual、ITU-TH.263、ISO/IECMPEG-4Visual和ITU-TH.264(也稱為ISO/IECMPEG-4AVC),包含其可縮放視頻譯碼(SVC)和多視圖視頻譯碼(MVC)擴展。HEVC的設(shè)計最近由ITU-T視頻譯碼專家組(VCEG)與ISO/IEC動畫專家組(MPEG)的JCT-VC定案。對HEVC的范圍擴展(被稱為HEVCRext)也正由JCT-VC開發(fā)。范圍擴展的最新工作草案(WD)(在下文中被稱作“RExtWD7”)可從http://phenix.int-evry.fr/jct/doc_end_user/documents/17_Valencia/wg11/JCTVC-Q1005-v4.zip獲得。本發(fā)明一般將最近定案的HEVC規(guī)范文本稱為HEVC版本1或基礎(chǔ)HEVC。范圍擴展規(guī)范可變成HEVC的版本2。關(guān)于許多譯碼工具(例如,運動向量預(yù)測),HEVC版本1及范圍擴展規(guī)范在技術(shù)上類似。因此,不論何時本發(fā)明描述相對于HEVC版本1的變化,相同變化還可適用于范圍擴展規(guī)范,其一般包括基礎(chǔ)HEVC規(guī)范,加上一些額外譯碼工具。此外,可一般假設(shè)HEVC版本1模塊也可并入到實施HEVC范圍擴展的解碼器中。用于屏幕內(nèi)容材料(例如,具有運動的文字及圖形)的新譯碼工具當(dāng)前正在開發(fā)中且正被預(yù)期包含于未來視頻譯碼標(biāo)準(zhǔn)中,包含HEVC的未來版本。這些新的譯碼工具潛在地改善屏幕內(nèi)容的譯碼效率。因為有證據(jù)表明,可通過使用新穎的專用譯碼工具開發(fā)屏幕內(nèi)容的特性來獲得譯碼效率的顯著改善,已以可能開發(fā)包括包含用于SCC的特定工具的HEVC標(biāo)準(zhǔn)的未來擴展為目標(biāo)發(fā)布建議書提案(CallforProposals;CfP)。邀請公司和組織來響應(yīng)于此需要而提交建議。此CfP的使用情況和要求描述于MPEG文檔N14174中。在第17次JCT-VC會議期間,建立SCC測試模型(SCM)。SCC的最近工作草案(WD)可從http://phenix.int-evry.fr/jct/doc_end_user/documents/18_Sapporo/wg11/JCTVC-R1005-v3.zip獲得。一般預(yù)期,源裝置12的視頻編碼器20可經(jīng)配置以根據(jù)這些當(dāng)前或未來標(biāo)準(zhǔn)中的任一者對視頻數(shù)據(jù)進行編碼。類似地,也一般預(yù)期,目的地裝置14的視頻解碼器30可經(jīng)配置以根據(jù)這些當(dāng)前或未來標(biāo)準(zhǔn)中的任一者對視頻數(shù)據(jù)進行解碼。盡管圖1中未示,但在一些方面中,視頻編碼器20和視頻解碼器30可各自與音頻編碼器及解碼器集成,且可包含適當(dāng)?shù)亩嗦窂?fù)用器-多路分用器(MUX-DEMUX)單元或其它硬件及軟件,以處置對共用數(shù)據(jù)流或單獨數(shù)據(jù)流中的音頻及視頻兩者的編碼。在一些實例中,如果適用,那么多路復(fù)用器-多路分用器單元可以符合ITUH.223多路復(fù)用器協(xié)議,或例如用戶數(shù)據(jù)報協(xié)議(UDP)等其它協(xié)議。視頻編碼器20和視頻解碼器30各自可實施為多種合適的編碼器電路中的任一者,例如一或多個微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、離散邏輯、軟件、硬件、固件或其任何組合。當(dāng)所述技術(shù)部分在軟件中實施時,裝置可將用于所述軟件的指令存儲在合適的非暫時性計算機可讀媒體中,并使用一或多個處理器在硬件中執(zhí)行所述指令以執(zhí)行本發(fā)明的技術(shù)。視頻編碼器20和視頻解碼器30中的每一者可包含在一或多個編碼器或解碼器中,所述編碼器或解碼器中的任一者可作為組合式編碼器/解碼器(CODEC)的部分集成在相應(yīng)裝置中。如上文所介紹,JCT-VC最近已定案HEVC標(biāo)準(zhǔn)的開發(fā)。HEVC標(biāo)準(zhǔn)化努力是基于被稱作HEVC測試模型(HM)的視頻譯碼裝置的演進模型。HM假設(shè)視頻譯碼裝置根據(jù)例如ITU-TH.264/AVC相對于現(xiàn)有裝置的若干額外容量。舉例來說,雖然H.264提供了九個幀內(nèi)預(yù)測編碼模式,但是HM可提供多達三十五個幀內(nèi)預(yù)測編碼模式。在HEVC及其它視頻譯碼規(guī)范中,視頻序列通常包含一系列圖片。圖片也可被稱作“幀”。圖片可以包含三個樣本陣列,表示為SL、SCb以及SCr。SL是明度樣本的二維陣列(即,塊)。SCb是Cb色度樣本的二維陣列。SCr是Cr色度樣本的二維陣列。色度樣本在本文中還可以被稱為“色度(chroma)”樣本。在其它情況下,圖片可為單色的且可僅包含亮度樣本陣列。為了產(chǎn)生圖片的經(jīng)編碼的表示,視頻編碼器20可以產(chǎn)生一組譯碼樹單元(CTU)。CTU中的每一者可包括亮度樣本的譯碼樹塊(CTB)、色度樣本的兩個對應(yīng)的譯碼樹塊,以及用以對譯碼樹塊的樣本進行譯碼的語法結(jié)構(gòu)。在單色圖片或具有三個單獨顏色平面的圖片中,CTU可包括單個譯碼樹塊和用以對所述譯碼樹塊的樣本進行譯碼的語法結(jié)構(gòu)。譯碼樹塊可為樣本的N×N塊。CTU也可以被稱為“樹塊”或“最大譯碼單元(LCU)”。HEVC的CTU可以廣泛地類似于例如H.264/AVC等其它標(biāo)準(zhǔn)的宏塊。然而,CTU未必限于特定大小,并且可以包含一或多個譯碼單元(CU)。切片可包含按光柵掃描次序連續(xù)排序的整數(shù)數(shù)目個CTU。為了產(chǎn)生經(jīng)譯碼的CTU,視頻編碼器20可以對CTU的譯碼樹塊(CTB)遞歸地執(zhí)行四叉樹分割,以將譯碼樹塊劃分為譯碼塊,因此命名為“譯碼樹單元”。譯碼塊可以是樣本的N×N塊。CU可包括具有亮度樣本陣列、Cb樣本陣列和Cr樣本陣列的圖片的亮度樣本的譯碼塊和色度樣本的兩個對應(yīng)譯碼塊,以及用以對譯碼塊的樣本進行譯碼的語法結(jié)構(gòu)。在單色圖片或具有三個單獨顏色平面的圖片中,CU可包括單個譯碼塊和用以對譯碼塊的樣本進行譯碼的語法結(jié)構(gòu)。視頻編碼器20可將CU的譯碼塊分割為一或多個預(yù)測塊。預(yù)測塊是應(yīng)用相同預(yù)測的樣本的矩形(即,正方形或非正方形)塊。CU的預(yù)測單元(PU)可包括明度樣本的預(yù)測塊、色度樣本的兩個對應(yīng)預(yù)測塊和用以預(yù)測預(yù)測塊的語法結(jié)構(gòu)。在單色圖片或具有三個單獨顏色平面的圖片中,PU可包括單個預(yù)測塊和用以預(yù)測預(yù)測塊的語法結(jié)構(gòu)。視頻編碼器20可以產(chǎn)生用于CU的每個PU的亮度預(yù)測塊、Cb預(yù)測塊以及Cr預(yù)測塊的預(yù)測性亮度、Cb及Cr塊。視頻編碼器20可使用幀內(nèi)預(yù)測或幀間預(yù)測來產(chǎn)生PU的預(yù)測性塊。如果視頻編碼器20使用幀內(nèi)預(yù)測產(chǎn)生PU的預(yù)測性塊,則視頻編碼器20可以基于與PU相關(guān)聯(lián)的圖片的經(jīng)解碼樣本來產(chǎn)生PU的預(yù)測性塊。如果視頻編碼器20使用幀間預(yù)測產(chǎn)生PU的預(yù)測性塊,則視頻編碼器20可基于除與PU相關(guān)的圖片以外的一或多個圖片的經(jīng)解碼樣本產(chǎn)生PU的預(yù)測性塊。在視頻編碼器20產(chǎn)生CU的一或多個PU的預(yù)測性亮度、Cb及Cr塊之后,視頻編碼器20可產(chǎn)生CU的亮度殘余塊。CU的亮度殘余塊中的每個樣本指示CU的預(yù)測性亮度塊中的一者中的亮度樣本與CU的原始亮度譯碼塊中的對應(yīng)樣本之間的差異。另外,視頻編碼器20可以產(chǎn)生CU的Cb殘余塊。CU的Cb殘余塊中的每一樣本可以指示CU的預(yù)測性Cb塊中的一者中的Cb樣本與CU的原始Cb譯碼塊中的對應(yīng)樣本之間的差異。視頻編碼器20還可產(chǎn)生CU的Cr殘余塊。CU的Cr殘余塊中的每個樣本可以指示CU的預(yù)測性Cr塊中的一者中的Cr樣本與CU的原始Cr譯碼塊中的對應(yīng)樣本之間的差異。此外,視頻編碼器20可使用四叉樹分割將CU的亮度、Cb及Cr殘余塊分解成一或多個亮度、Cb及Cr變換塊。變換塊是對其應(yīng)用相同變換的樣本的矩形(例如,正方形或非正方形)塊。CU的變換單元(TU)可包括亮度樣本的變換塊、色度樣本的兩個對應(yīng)變換塊以及用以對變換塊樣本進行變換的語法結(jié)構(gòu)。因此,CU的每個TU可以與亮度變換塊、Cb變換塊以及Cr變換塊相關(guān)聯(lián)。與TU相關(guān)聯(lián)的明度變換塊可為CU的亮度殘余塊的子塊。Cb變換塊可為CU的Cb殘余塊的子塊。Cr變換塊可以是CU的Cr殘余塊的子塊。在單色圖片或具有三個單獨顏色平面的圖片中,TU可包括單個變換塊和用以對變換塊的樣本進行變換的語法結(jié)構(gòu)。視頻編碼器20可將一或多個變換應(yīng)用到TU的亮度變換塊以產(chǎn)生TU的亮度系數(shù)塊。系數(shù)塊可為變換系數(shù)的二維陣列。變換系數(shù)可為標(biāo)量。視頻編碼器20可將一或多個變換應(yīng)用到TU的Cb變換塊以產(chǎn)生TU的Cb系數(shù)塊。視頻編碼器20可將一或多個變換應(yīng)用到TU的Cr變換塊以產(chǎn)生TU的Cr系數(shù)塊。在產(chǎn)生系數(shù)塊(例如,明度系數(shù)塊、Cb系數(shù)塊或Cr系數(shù)塊)之后,視頻編碼器20可以量化系數(shù)塊。量化一般是指對變換系數(shù)進行量化以可能減少用以表示變換系數(shù)的數(shù)據(jù)的量從而提供進一步壓縮的程序。在視頻編碼器20量化系數(shù)塊之后,視頻編碼器20可以對指示經(jīng)量化變換系數(shù)的語法元素進行熵編碼。舉例來說,視頻編碼器20可對指示經(jīng)量化變換系數(shù)的語法元素執(zhí)行上下文自適應(yīng)二進制算術(shù)譯碼(CABAC)。視頻編碼器20可輸出包含形成經(jīng)譯碼圖片及相關(guān)聯(lián)數(shù)據(jù)的表示的位序列的位流。位流可包括一連串NAL單元。NAL單元為含有NAL單元中的數(shù)據(jù)類型的指示和含有所述數(shù)據(jù)的字節(jié)的語法結(jié)構(gòu),所述字節(jié)呈RBSP形式,并且視需要與模擬防止位穿插。NAL單元中的每一者包含NAL單元標(biāo)頭且囊封RBSP。NAL單元標(biāo)頭可包含指示NAL單元類型代碼的語法元素。由NAL單元的NAL單元標(biāo)頭指定的NAL單元類型代碼指示NAL單元的類型。RBSP可為含有包封在NAL單元內(nèi)的整數(shù)數(shù)目個字節(jié)的語法結(jié)構(gòu)。在一些情況下,RBSP包含零位。不同類型的NAL單元可囊封不同類型的RBSP。舉例來說,第一類型的NAL單元可囊封PPS的RBSP,第二類型的NAL單元可囊封經(jīng)譯碼切片的RBSP,第三類型的NAL單元可囊封SEI消息的RBSP等等。囊封視頻譯碼數(shù)據(jù)的RBSP(與參數(shù)集及SEI消息的RBSP相反)的NAL單元可被稱作VCLNAL單元。視頻解碼器30可以接收由視頻編碼器20產(chǎn)生的位流。另外,視頻解碼器30可以剖析位流以獲得來自位流的語法元素。視頻解碼器30可至少部分地基于從位流獲得的語法元素重構(gòu)建視頻數(shù)據(jù)的圖片。用以重構(gòu)建視頻數(shù)據(jù)的程序一般可與由視頻編碼器20執(zhí)行的程序互逆。另外,視頻解碼器30可反量化與當(dāng)前CU的TU相關(guān)聯(lián)的系數(shù)塊。視頻解碼器30可以對系數(shù)塊執(zhí)行反變換以重構(gòu)建與當(dāng)前CU的TU相關(guān)聯(lián)的變換塊。通過將用于當(dāng)前CU的PU的預(yù)測性塊的樣本添加到當(dāng)前CU的TU的變換塊的對應(yīng)樣本上,視頻解碼器30可以重構(gòu)建當(dāng)前CU的譯碼塊。通過重構(gòu)建用于圖片的每一CU的譯碼塊,視頻解碼器30可重構(gòu)建圖片。還可被稱作色度格式的視頻取樣格式可相對于CU中所包含的明度樣本的數(shù)目定義CU中包含的色度樣本的數(shù)目。取決于色度分量的視頻取樣格式,U分量及V分量的大小(依據(jù)樣本的數(shù)目)可與Y分量的大小相同或不同。在HEVC標(biāo)準(zhǔn)中,定義被稱作chroma_format_idc的值以指示色度分量相對于明度分量的不同取樣格式。在HEVC中,在SPS中用信號表示chroma_format_idc。表1說明chroma_format_idc的值與相關(guān)聯(lián)的色度格式之間的關(guān)系。chroma_format_idc色度格式SubWidthCSubHeightC0單色--14:2:02224:2:22134:4:411表1:HEVC中定義的不同色度格式在表1中,變量SubWidthC及SubHeightC可用以指示用于明度分量的樣本的數(shù)目與用于每一色度分量的樣本的數(shù)目之間的水平及垂直取樣速率比。在表1中所描述的色度格式中,兩個色度分量具有相同的取樣速率。因此,在4:2:0取樣中,兩個色度陣列中的每一者具有明度陣列的高度的一半和寬度的一半,而在4:2:2取樣中,兩個色度陣列中的每一者具有所述明度陣列的相同高度和寬度的一半。在4:4:4取樣中,兩個色度陣列中的每一者可具有與明度陣列相同的高度和寬度,或在一些情況下,三個顏色平面可全部單獨處理為單色經(jīng)取樣圖片。在表1的實例中,對于4:2:0格式,用于亮度分量的取樣速率為用于水平及垂直方向的色度分量的取樣速率的兩倍。因此,對于根據(jù)4:2:0格式而格式化的譯碼單元,用于亮度分量的樣本陣列的寬度及高度為用于色度分量的每一樣本陣列的寬度及高度的兩倍。類似地,對于根據(jù)4:2:2格式而格式化的譯碼單元,用于明度分量的樣本陣列的寬度為用于每一色度分量的樣本陣列的寬度的兩倍,但用于明度分量的樣本陣列的高度等于用于每一色度分量的樣本陣列的高度。對于根據(jù)4:4:4格式而格式化的譯碼單元,用于明度分量的樣本陣列具有與用于每一色度分量的樣本陣列相同的寬度及高度。應(yīng)注意,除YUV顏色空間之外,還可根據(jù)RGB空間顏色定義視頻數(shù)據(jù)。以這種方式,本文中所描述的色度格式可以適用于YUV或RGB顏色空間。通常對RGB色度格式進行取樣以使得紅色樣本的數(shù)目、綠色樣本的數(shù)目及藍色樣本的數(shù)目相等。因此,如本文所使用的術(shù)語“4:4:4色度格式”可指YUV顏色空間或RGB顏色空間,其中對于所有顏色分量,樣本的數(shù)目相等。圖2A到2C是說明用于視頻數(shù)據(jù)的不同樣本格式的概念圖。圖2A是說明4:2:0樣本格式的概念圖。如圖2A中所說明,對于4:2:0樣本格式,色度分量為明度分量的大小的四分之一。因此,對于根據(jù)4:2:0樣本格式而格式化的CU,對于色度分量的每個樣本來說存在4個明度樣本。圖2B是說明4:2:2樣本格式的概念圖。如圖2B中所說明,對于4:2:2樣本格式,色度分量的大小為明度分量的大小的二分之一。因此,對于根據(jù)4:2:2樣本格式而格式化的CU,對于色度分量的每個樣本來說存在兩個亮度樣本。圖2C是說明4:4:4樣本格式的概念圖。如圖2C中所說明,對于4:4:4樣本格式,色度分量與明度分量大小相同。因此,對于根據(jù)4:4:4樣本格式而格式化的CU,對于色度分量的每個樣本存在一個明度樣本。圖3是說明根據(jù)4:2:0樣本格式而格式化的16×16譯碼單元的實例的概念圖。圖3說明色度樣本在CU內(nèi)相對于明度樣本的相對位置。如上文所描述,通常根據(jù)水平和垂直亮度樣本的數(shù)目來定義CU。因此,如圖3中所說明,根據(jù)4:2:0樣本格式而格式化的16×16CU包含明度分量的16×16樣本及每一色度分量的8×8樣本。另外,如上文所描述,CU可以分割成較小CU。舉例來說,圖3中所說明的CU可分割成4個8×8CU,其中每一8×8CU包含用于明度分量的8×8樣本及用于每一色度分量的4×4樣本。圖4是說明根據(jù)4:2:2樣本格式而格式化的16×16譯碼單元的實例的概念圖。圖4說明色度樣本在CU內(nèi)相對于明度樣本的相對位置。如上文所描述,通常根據(jù)水平和垂直亮度樣本的數(shù)目來定義CU。因此,如圖4中所說明,根據(jù)4:2:2樣本格式而格式化的16×16CU包含明度分量的16×16樣本及用于每一色度分量的8×16樣本。另外,如上文所描述,CU可以分割成較小CU。舉例來說,圖4中所說明的CU可分割成4個8×8CU,其中每一CU包含用于明度分量的8×8樣本及用于每一色度分量的4×8樣本。圖5示出IBC模式的概念性說明。視頻編碼器20和視頻解碼器30可(例如)經(jīng)配置以使用IBC模式編碼及解碼視頻數(shù)據(jù)塊。例如遠程桌上型、遠程游戲、無線顯示器、汽車信息娛樂、云計算等許多應(yīng)用程序正變成人的每日生活中的日常,且可通過使用IBC模式來改善當(dāng)譯碼此類內(nèi)容時的譯碼效率。圖1的系統(tǒng)10可表示經(jīng)配置以執(zhí)行這些應(yīng)用程序中的任一者的裝置。這些應(yīng)用程序中的視頻內(nèi)容通常是自然內(nèi)容、文本、人造圖形等的組合。在視頻幀的文本和人造圖形區(qū)中,常常存在重復(fù)圖案(例如字符、圖標(biāo)、符號等)。如上文所介紹,IBC是如JCT-VCM0350中所報告的實現(xiàn)去除這類冗余且潛在地改善幀內(nèi)譯碼效率的專用技術(shù)。如圖5中所說明,對于使用IBC的CU,從相同幀(例如,圖片)中的已經(jīng)重構(gòu)建區(qū)域獲得預(yù)測信號。最后,對指示從當(dāng)前CU移位的預(yù)測信號的位置的偏移或塊向量以及殘余信號進行編碼。舉例來說,圖5說明根據(jù)本發(fā)明的技術(shù)用于預(yù)測當(dāng)前圖片103內(nèi)的當(dāng)前視頻數(shù)據(jù)塊102的實例技術(shù)。圖5說明當(dāng)前圖片103內(nèi)的預(yù)測性視頻塊104。根據(jù)本發(fā)明的技術(shù),視頻譯碼器(例如,視頻編碼器20和/或視頻解碼器30)可根據(jù)IBC模式使用預(yù)測性視頻塊104來預(yù)測當(dāng)前視頻塊102。視頻編碼器20從先前經(jīng)重構(gòu)建的視頻數(shù)據(jù)塊的集合選擇用于預(yù)測當(dāng)前視頻塊102的預(yù)測性視頻塊104。視頻編碼器20通過對還包含在經(jīng)編碼視頻位流中的視頻數(shù)據(jù)進行反量化和反變換且將所得殘余塊與用以預(yù)測經(jīng)重構(gòu)建的視頻數(shù)據(jù)塊的預(yù)測性塊求和而重構(gòu)建視頻數(shù)據(jù)塊。在圖5的實例中,圖片103內(nèi)的既定區(qū)108也可被稱作“既定區(qū)域”或“光柵區(qū)域”,包含先前經(jīng)重構(gòu)建視頻塊的集合。視頻編碼器20可以多種方式定義圖片103內(nèi)的既定區(qū)108,如下文更詳細描述。根據(jù)基于既定區(qū)108內(nèi)的各種視頻塊而預(yù)測和譯碼當(dāng)前視頻塊102的相對效率和準(zhǔn)確性的分析,視頻編碼器20可從既定區(qū)108中的視頻塊當(dāng)中選擇預(yù)測性視頻塊104以預(yù)測當(dāng)前視頻塊102。既定區(qū)108在本發(fā)明中也可被稱為IBC預(yù)測區(qū)。本發(fā)明描述可修改將何區(qū)塊包含于既定區(qū)108中的各種技術(shù)。因此,當(dāng)實施本發(fā)明的技術(shù)時,既定區(qū)108的大小及形狀可不同于圖5的實例中所示的大小及形狀。視頻編碼器20確定表示預(yù)測性視頻塊104相對于當(dāng)前視頻塊102的位置或位移的二維向量106。為偏移向量的實例的二維向量106包含水平位移分量112和垂直位移分量110,所述水平位移分量及垂直位移分量分別表示預(yù)測性視頻塊104相對于當(dāng)前視頻塊102的水平和垂直位移。視頻編碼器20可將識別或定義二維向量106(例如,定義水平位移分量112及垂直位移分量110)的一或多個語法元素包含在經(jīng)編碼視頻位流中。視頻解碼器30可解碼所述一或多個語法元素以確定二維運動向量106,且使用所確定的向量來識別用于當(dāng)前視頻塊102的預(yù)測性視頻塊104。在一些實例中,二維運動向量106的分辨率可為整數(shù)像素,例如,約束為具有整數(shù)像素分辨率。在這些實例中,水平位移分量112和垂直位移分量110的分辨率將為整數(shù)像素。在這些實例中,視頻編碼器20和視頻解碼器30不需要內(nèi)插預(yù)測性視頻塊104的像素值以確定用于當(dāng)前視頻塊102的預(yù)測子。在其它實例中,水平位移分量112和垂直位移分量110中的一者或兩者的分辨率可為子像素。舉例來說,分量112和110中的一者可具有整數(shù)像素分辨率,而另一者具有子像素分辨率。在一些實例中,水平位移分量112和垂直位移分量110兩者的分辨率可為子像素,但水平位移分量112和垂直位移分量110可具有不同分辨率。在一些實例中,視頻譯碼器(例如,視頻編碼器20和/或視頻解碼器30)基于特定層級適配水平位移分量112和垂直位移分量110的分辨率,例如塊層級、切片層級或圖片層級適配。舉例來說,視頻編碼器20可例如在切片標(biāo)頭中在切片層級下用信號表示指示水平位移分量112和垂直位移分量110的分辨率是整數(shù)像素分辨率還是不是整數(shù)像素分辨率的旗標(biāo)。如果所述旗標(biāo)指示水平位移分量112和垂直位移分量110的分辨率不是整數(shù)像素分辨率,那么視頻解碼器30可推斷分辨率是子像素分辨率。在一些實例中,可針對視頻數(shù)據(jù)的每一切片或其它單元發(fā)射不一定是旗標(biāo)的一或多個語法元素,以指示水平位移分量112和/或垂直位移分量110的共同或個別分辨率。在又其它實例中,代替旗標(biāo)或語法元素,視頻編碼器20可基于分辨率上下文信息而設(shè)置水平位移分量112和/或垂直位移分量110的分辨率,且視頻解碼器30可從分辨率上下文信息推斷水平位移分量112和/或垂直位移分量110的分辨率。分辨率上下文信息可包含(例如)用于圖片或包含當(dāng)前視頻塊102的圖片的序列的顏色空間(例如YUV、RGB等)、特定顏色格式(例如4:4:4、4:2:2、4:2:0等)、幀大小、幀速率或量化參數(shù)(QP)。在至少一些實例中,視頻譯碼器可基于與經(jīng)先前譯碼幀或圖片相關(guān)的信息來確定水平位移分量112和/或垂直位移分量110的分辨率。以這種方式,水平位移分量112的分辨率和垂直位移分量110的分辨率可經(jīng)預(yù)定義、用信號表示、可從其它輔助信息(例如,分辨率上下文信息)推斷,或可基于已經(jīng)譯碼的幀。當(dāng)前視頻塊102可為CU,或CU的PU。在一些實例中,視頻譯碼器(例如,視頻編碼器20和/或視頻解碼器30)可將根據(jù)IBC預(yù)測的CU分裂成大量PU。在這些實例中,視頻譯碼器可確定用于CU的PU中的每一者的相應(yīng)(例如,不同)二維向量106。舉例來說,視頻譯碼器可將2N×2NCU分裂為兩個2N×NPU、兩個N×2NPU,或四個N×NPU。作為其它實例,視頻譯碼器可將2N×2NCU分裂為((N/2)×N+(3N/2)×N)PU、((3N/2)×N+(N/2)×N)PU、(N×(N/2)+N×(3N/2))PU、(N×(3N/2)+N×(N/2))PU、四個(N/2)×2NPU或四個2N×(N/2)PU。在一些實例中,視頻譯碼器可使用2N×2NPU預(yù)測2N×2NCU。當(dāng)前視頻塊102包含明度視頻塊(例如,明度分量)及對應(yīng)于所述明度視頻塊的色度視頻塊(例如,色度分量)。在一些實例中,視頻編碼器20可僅將定義明度視頻塊的二維向量106的一或多個語法元素編碼到經(jīng)編碼視頻位流中。在這些實例中,視頻解碼器30可基于針對明度塊用信號表示的二維向量導(dǎo)出對應(yīng)于所述明度塊的一或多個色度塊中的每一者的二維向量106。在本發(fā)明中描述的技術(shù)中,在為一或多個色度塊導(dǎo)出二維向量時,如果亮度塊的二維向量指向色度樣本內(nèi)的子像素位置,那么視頻解碼器30可修改所述亮度塊的二維向量。取決于顏色格式,例如,顏色取樣格式或色度取樣格式,視頻譯碼器可相對于明度視頻塊下取樣對應(yīng)色度視頻塊。顏色格式4:4:4不包含下取樣,意味著色度塊在水平和垂直方向中包含與明度塊相同數(shù)目的樣本。顏色格式4:2:2在水平方向上下取樣,意味著在色度塊中在水平方向上相對于明度塊存在二分之一多的樣本。顏色格式4:2:0在水平和垂直方向上下取樣,意味著在色度塊中在水平和垂直方向中相對于明度塊存在二分之一多的樣本。在其中視頻譯碼器基于對應(yīng)明度塊的向量106確定色度視頻塊的向量106的實例中,視頻譯碼器可需要修改明度向量。舉例來說,如果明度向量106具有整數(shù)分辨率,其中水平位移分量112和/或垂直位移分量110為奇數(shù)數(shù)目的像素,且顏色格式是4:2:2或4:2:0,那么經(jīng)轉(zhuǎn)換的明度向量可不指向?qū)?yīng)彩度塊中的整數(shù)像素位置。在這些實例中,視頻譯碼器可按比例縮放明度向量以用作色度向量以預(yù)測對應(yīng)色度塊。如所描述,圖5示出正在IBC模式中譯碼的當(dāng)前CU??蓮乃阉鲄^(qū)獲得當(dāng)前CU的預(yù)測性塊。所述搜索區(qū)包含與當(dāng)前CU來自相同幀的已經(jīng)譯碼塊。假設(shè)(例如)幀按光柵掃描次序進行譯碼(即,從左到右且從上到下),幀的已經(jīng)譯碼塊對應(yīng)于位于當(dāng)前CU左側(cè)及上方的塊,如圖5中所示。在一些實例中,搜索區(qū)可包含所述幀中的所有已經(jīng)譯碼的塊,而在其它實例中,搜索區(qū)可包含少于所有的已經(jīng)譯碼的塊。圖5中的偏移向量(有時被稱作運動向量或預(yù)測向量)識別當(dāng)前CU的左上方像素與預(yù)測性塊(圖5中的經(jīng)標(biāo)記預(yù)測信號)的左上方像素之間的差。因此,通過在經(jīng)編碼視頻位流中用信號表示偏移向量,視頻解碼器可在當(dāng)前CU在IBC模式中進行譯碼時識別當(dāng)前CU之預(yù)測性塊。IBC已包含于SCC的各種實施方案中,包含HEVC的SCC擴展。上文關(guān)于圖5描述IBC的實例,其中從當(dāng)前圖片/切片的已經(jīng)解碼塊預(yù)測當(dāng)前CU/PU。在IBC中,預(yù)測性塊(例如,圖5中的預(yù)測性視頻塊104)可以是尚未經(jīng)環(huán)路濾波(例如,尚未經(jīng)解塊濾波或SAO濾波)的經(jīng)重構(gòu)建塊。對于以IBC譯碼的亮度分量或色度分量,通過整數(shù)塊補償完成塊補償,因此不需要內(nèi)插。因此,在整數(shù)層級精確度下預(yù)測并用信號表示塊向量。在SCC的當(dāng)前實施方案中,塊向量預(yù)測子在每一CTB開始處經(jīng)設(shè)置成(-w,0),其中w對應(yīng)于CU的寬度。如果以IBC模式來譯碼,那么將此塊向量預(yù)測子更新為最新譯碼的CU/PU中的一者。如果CU/PU不是以IBC譯碼的,那么塊向量預(yù)測子保持不變。在塊向量預(yù)測之后,使用如HEVC中的MV差(MVD)譯碼方法來編碼塊向量差。IBC的當(dāng)前實施方案在CU層級及PU層級兩者下實現(xiàn)IBC譯碼。對于PU層級IBC,針對全部CU大小支持2N×N和N×2NPU分割區(qū)。另外,當(dāng)CU是最小CU時,支持N×NPU分割區(qū)。如上文所介紹,HEVC含有使編解碼器更加并行友好的數(shù)種提議,包含單元片和波前并行處理(WPP)。HEVC將單元片定義為在單元片的譯碼樹塊光柵掃描中連續(xù)排序的以一個列及一個行同時出現(xiàn)的整數(shù)數(shù)目個譯碼樹塊。將每一圖片劃分為單元片是分割。圖6示出在使用單元片時對圖片的光柵掃描。圖片中的單元片在圖片的單元片光柵掃描中連續(xù)排序,如圖6中所示??舍槍φ麄€序列定義或在圖片間改變單元片的數(shù)目及單元片的邊界的位置。類似于切片邊界的單元片邊界破壞了剖析和預(yù)測的相依性,使得可獨立地處理單元片。然而,環(huán)路內(nèi)濾波器(解塊和SAO)仍可穿過單元片邊界。HEVC還指定對切片與單元片之間的關(guān)系的一些約束。在圖6的實例中,線114A及114B表示垂直單元片邊界,且線114C及114D表示水平單元片邊界。每一單元片內(nèi)的數(shù)字表示針對單元片內(nèi)的CTB的光柵掃描次序。舉例來說,對于左上方大部分單元片,首先解碼標(biāo)記為0的塊,接著是標(biāo)記為1的塊,然后是標(biāo)記為2的塊,等等。使用單元片的潛在優(yōu)點在于,單元片并不始終需要視頻解碼器(例如,用于熵解碼的視頻解碼器30)的處理器之間的通信和運動補償重構(gòu)建。然而,如果語法元素loop_filter_across_tiles_enabled_flag設(shè)置為1,那么需要這種通信。與切片相比,單元片潛在地具有更好的譯碼效率,因為單元片允許圖片分割形狀,其含有相關(guān)性可能比切片高的樣本,并且還因為單元片潛在地減少切片標(biāo)頭附加項(overhead)。HEVC的單元片設(shè)計可提供數(shù)種益處。作為一個實例,單元片可通過視頻解碼器30實現(xiàn)并行處理。作為另一實例,與使用切片相比,單元片可通過允許CTU的改變的解碼次序來改善譯碼效率,而主要益處為第一個實例。當(dāng)在單層譯碼中使用單元片時,語法元素min_spatial_segmentation_idc可由解碼器使用以計算待由一個處理線程處理的明度樣本的最大數(shù)目,從而假設(shè)解碼器最大限度地利用并行解碼信息。在HEVC中,不同線程之間可存在相同的圖片幀間相依性,例如,歸因于熵譯碼同步或跨越單元片或切片邊界的解塊濾波。HEVC包含鼓勵編碼器將min_spatial_segmentation_idc的值設(shè)置為最高可能值的注解。如上文所介紹,HEVC也支援WPP。當(dāng)啟用WPP時,圖片的每一CTU行為分離的分割區(qū)。然而,與切片及單元相比較,在WPP的情況下,無譯碼相依性在CTU行邊界處被破壞。另外,從先前行的第二CTU傳播CABAC概率,以進一步減少譯碼損失。并且,WPP并不改變常規(guī)光柵掃描次序。因為相依性未被破壞,所以與非并行位流相比較,WPP位流的速率-失真損失可能較小。當(dāng)啟用WPP時,高達CTU行的數(shù)目的大量處理器可并行地工作以處理CTU行(或線)。然而,波前相依性并不允許所有CTU行在圖片的開始處開始解碼。因此,CTU行也無法在圖片的結(jié)束處同時完成解碼。此情形引出并行度效率低下,其在使用較多數(shù)目個處理器時變得更顯而易見。圖7示出WPP并行地處理各行CTB的實例,每一行以在處理上方行的第二CTB之后可用的CABAC概率開始??刹⑿械亟獯a行116A至116G中的每一者,但由于每一行潛在地取決于上方行的信息,所以所有行的解碼可不能夠同時開始。舉例來說,視頻解碼器30直到已經(jīng)解碼行116C的特定數(shù)目的塊才能開始解碼行116D。類似地,視頻解碼器30直到已經(jīng)解碼行116D的特定數(shù)目的塊才能開始解碼行116E。如將在下文更詳細地闡釋,視頻解碼器30在解碼行之前、在開始解碼上方行之后等待的時間量可被稱為延遲。在圖7的實例中,灰色塊表示已經(jīng)解碼塊,而白色塊表示尚未解碼的塊。正如在圖7中所見,行通常比正好在下方的行具有更多已經(jīng)解碼的塊。結(jié)合并行處理技術(shù)(例如單元片和WPP)在IBC模式中譯碼視頻數(shù)據(jù)可造成潛在的困難。IBC模式使用同一圖片內(nèi)的先前經(jīng)解碼的未經(jīng)濾波的樣本以供預(yù)測。在當(dāng)前測試模型中,對于IBC模式,搜索范圍是不受限制的且可使用當(dāng)前圖片的任何未經(jīng)濾波的經(jīng)解碼樣本(全搜索IBC)。在實時應(yīng)用中,典型的是按非光柵次序進行處理(例如,WPP),以實現(xiàn)同時處理多個CTU。HEVC定義啟用WPP或entropy_coding_sync_enabled_flag時的熵解碼次序。當(dāng)啟用非光柵掃描時,利用WPP及單元片的SCC的某些實施方案潛在地具有一些問題。作為第一實例,始終基于光柵次序依序處理來考慮預(yù)測樣本的可用性。這潛在地顯著影響系統(tǒng)的并行處理能力。作為第二實例,在近期JCT-VC會議中已經(jīng)有一些提議來將類似線中的IBC預(yù)測區(qū)限制到啟用WPP時的熵剖析。然而,這潛在地對譯碼效率有顯著影響,是因為有限的搜索范圍可用于IBC模式。為了允許如同并行處理方案的WPP并減少譯碼效率損失,本發(fā)明描述用以添加對IBC搜尋范圍和/或?qū)BC塊向量的一些彈性限制的技術(shù)。可單獨或聯(lián)合應(yīng)用以下技術(shù)中的每一者。本發(fā)明中描述的技術(shù)詳述了預(yù)測區(qū)域用于IBC預(yù)測的可用性。另外,此區(qū)域可取決于是否啟用WPP。根據(jù)第一技術(shù),可考慮重構(gòu)建樣本的固定處理次序(例如,啟用WPP時的熵剖析次序或以下處理次序中的任一者)。已經(jīng)解碼/重構(gòu)建的樣本可僅用于預(yù)測。根據(jù)第二技術(shù),可考慮重構(gòu)建樣本的固定處理次序(例如,啟用WPP時的熵剖析次序或以下處理次序中的任一者)。已經(jīng)解碼/重構(gòu)建的樣本可僅用于預(yù)測。此外,認(rèn)為在當(dāng)前CTB下方的任何區(qū)域不可用于IBC預(yù)測。根據(jù)第三技術(shù),可考慮重構(gòu)建樣本的固定處理次序(例如,啟用WPP時的熵剖析次序或以下處理次序中的任一者),且基于SPS標(biāo)頭中所指定的最大TU大小,認(rèn)為在當(dāng)前CTB下方的任何區(qū)域不可用于IBC預(yù)測,且認(rèn)為部分區(qū)域不可用于上方的當(dāng)前CTB。根據(jù)第四技術(shù),可考慮重構(gòu)建樣本的固定處理次序(例如,啟用WPP時的熵剖析次序或以下處理次序中的任一者),且基于SPS標(biāo)頭中所指定的最大TU大小,認(rèn)為部分區(qū)域不可用于上方的當(dāng)前CTB。根據(jù)第五技術(shù),重構(gòu)建樣本的彈性處理次序可被視為對于IBC預(yù)測有效,且在位流中用信號表示所述區(qū)域。根據(jù)第六技術(shù),重構(gòu)建樣本的彈性處理次序可被視為對于IBC預(yù)測有效,且在位流中用信號表示所述區(qū)域,且認(rèn)為在當(dāng)前CTB下方的任何區(qū)域不可用于IBC預(yù)測?,F(xiàn)在將更詳細地說明上文介紹的各種技術(shù)的實例。圖8到12示出經(jīng)配置以使用WPP解碼的塊的實例。圖8到12中所示的區(qū)域中的每一者對應(yīng)于CTB。在圖8到12的實例中,以X標(biāo)記的CTB表示正被解碼的當(dāng)前塊。對于IBC預(yù)測,以1標(biāo)記的塊可用于IBC,而以0標(biāo)記的塊可不用于IBC。圖8示出現(xiàn)將描述關(guān)于IBC處理次序的第一實例,所述IBC處理次序相對于上方的CTB行具有1CTB延遲。將如圖8中所示的以下限制施加到IBC塊向量上,以使得未從以0標(biāo)記的區(qū)域預(yù)測到IBC塊。在圖8中,以“1”標(biāo)記的區(qū)域是已經(jīng)重構(gòu)建的有效預(yù)測區(qū)域。這些限制將允許與當(dāng)前塊x并行地處理任何“0”標(biāo)記區(qū)域。8.4.4在幀內(nèi)塊復(fù)制預(yù)測模式中用于塊向量分量的導(dǎo)出程序-位流一致性的要求是:(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY-xCurr/CtbSizeY<=y(tǒng)Curr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY及yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0根據(jù)本發(fā)明的一個技術(shù),針對在啟用波前并行處理的情況下譯碼的一或多個塊,視頻解碼器30可確定CTB延遲,所述CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲。針對在IBC模式中譯碼并在禁用波前并行處理的情況下譯碼的當(dāng)前視頻數(shù)據(jù)塊,視頻解碼器30可基于針對在啟用WPP的情況下譯碼的一或多個塊所確定的CTB延遲來確定用于包含當(dāng)前塊的圖片內(nèi)的當(dāng)前塊的IBC預(yù)測區(qū)域。換句話說,視頻解碼器30可基于CTB延遲而不考慮entropy_coding_sync_enabled_flag的值如何(這意味著不管是啟用還是禁用WPP)來確定用于當(dāng)前塊的IBC預(yù)測區(qū)域。通過始終基于CTB延遲確定IBC預(yù)測區(qū)域,減少整體解碼復(fù)雜度,但減少的方式是仍使視頻解碼器30能夠在啟用WPP的情況下支持IBC模式。在一些替代實施方案,當(dāng)entropy_coding_sync_enabled_flag等于1時,以上限制可僅施加在IBC塊向量上,以使得從非解碼區(qū)域未預(yù)測到IBC塊。8.4.4在幀內(nèi)塊復(fù)制預(yù)測模式中用于塊向量分量的導(dǎo)出程序-位流一致性要求是,當(dāng)entropy_coding_sync_enabled_flag等于1時,yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0且當(dāng)entropy_coding_sync_enabled_flag等于1時,(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY-xCurr/CtbSizeY<=y(tǒng)Curr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY現(xiàn)將描述關(guān)于IBC處理次序的第二實例,所述IBC處理次序相對于上方的CTB行具有2CTB延遲。將如圖9中所示的以下限制施加到IBC塊向量上,以使得未從“0”區(qū)域預(yù)測到IBC塊。在圖9中,以1標(biāo)記的區(qū)域是已經(jīng)重構(gòu)建的有效預(yù)測區(qū)域。這些限制將允許與當(dāng)前塊x并行地處理任何“0”標(biāo)記區(qū)域。此處,每一區(qū)域?qū)?yīng)于CTB。8.4.4在幀內(nèi)塊復(fù)制預(yù)測模式中用于塊向量分量的導(dǎo)出程序-位流一致性的要求是:(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY-xCurr/CtbSizeY<=2*(yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY)及yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0替代地,僅在entropy_coding_sync_enabled_flag等于1時將以上限制條件施加于IBC塊向量,以使得未從非解碼區(qū)域預(yù)測到IBC塊。8.4.4在幀內(nèi)塊復(fù)制預(yù)測模式中用于塊向量分量的導(dǎo)出程序-位流一致性要求是,當(dāng)entropy_coding_sync_enabled_flag等于1時,yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0且當(dāng)entropy_coding_sync_enabled_flag等于1時,(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY-xCurr/CtbSizeY<=2*(yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY)現(xiàn)將描述關(guān)于具有單元片形狀的區(qū)域的IBC處理次序的第三實例。將如圖10中所示的以下限制施加到IBC塊向量上,以使得未從“0”區(qū)域預(yù)測到IBC塊。在圖10中,以1'標(biāo)記的區(qū)域是已經(jīng)重構(gòu)建的有效預(yù)測區(qū)域。這些限制將允許與當(dāng)前塊x并行地處理任何“0”標(biāo)記的區(qū)域。此處,每一區(qū)域?qū)?yīng)于CTB。在一個實例中,僅在如下entropy_coding_sync_enabled_flag等于1時施加以上限制。8.4.4在幀內(nèi)塊復(fù)制預(yù)測模式中用于塊向量分量的導(dǎo)出程序-----位流一致性的要求是:xCurr/CtbSizeY-(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY>=0yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0替代地,僅在entropy_coding_sync_enabled_flag等于1時將以上限制條件施加于IBC塊向量,以使得未從非解碼區(qū)域預(yù)測到IBC塊。-位流一致性要求是,當(dāng)entropy_coding_sync_enabled_flag等于1時,xCurr/CtbSizeY-(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/CtbSizeY>=0yCurr/CtbSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/CtbSizeY>=0現(xiàn)將描述關(guān)于IBC處理次序的第四實例,所述IBC處理次序關(guān)于上方的CTB行具有小于1CTB延遲。在此實例中,提出限制IBC的預(yù)測樣本,所述IBC類似于上文所論述的“關(guān)于上方的CTB行具有小于1CTB延遲的IBC處理次序”,但相反具有最大TU塊的延遲,其小于1CTB延遲。使最大TU大小maxTUSizeY導(dǎo)出為maxTUSizeY=1<<MaxTbLog2SizeY。(在SPS中用信號表示)。8.4.4在幀內(nèi)塊復(fù)制預(yù)測模式中用于塊向量分量的導(dǎo)出程序-位流一致性的要求是:(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/maxTUSizeY-xCurr/maxTUSizeY<=y(tǒng)Curr/maxTUSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/maxTUSizeY及yCurr/maxTUSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/maxTUSizeY>=0替代地,僅在entropy_coding_sync_enabled_flag等于1時將以上限制條件施加于IBC塊向量,以使得未從非解碼區(qū)域預(yù)測到IBC塊。8.4.4在幀內(nèi)塊復(fù)制預(yù)測模式中用于塊向量分量的導(dǎo)出程序-位流一致性要求是,當(dāng)entropy_coding_sync_enabled_flag等于1時,yCurr/maxTUSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/maxTUSizeY>=0且當(dāng)entropy_coding_sync_enabled_flag等于1時,(xPb+bvIntra[xPb][yPb][0]+nPbSw-1)/maxTUSizeY-xCurr/maxTUSizeY<=y(tǒng)Curr/maxTUSizeY-(yPb+bvIntra[xPb][yPb][1]+nPbSh-1)/maxTUSizeY波前并行處理使得能夠并行處理圖片中的每一CTB行。舉例來說,在1080p圖片中,如果系統(tǒng)具有17個并行處理核心,那么可并行處理多達17個CTB行。然而,在大部分多核心系統(tǒng)中,典型的是僅使用有限數(shù)目個(例如,4個)并行處理核心。在此情境下,僅并行處理4個CTB行,并在完成上方的4個CTB行中的一個之后處理第5個CTB行。在此類情景下,第5個CTB行有可能從已根據(jù)先前4個CTB行解碼的區(qū)域中進行預(yù)測。在此實例中,提出針對每一CTB行,針對有效解碼區(qū)域(CTB)的所有先前經(jīng)解碼CTB行,用信號表示所述有效解碼區(qū)域。在另一個實施例中,提出針對每一CTB行,針對有效解碼區(qū)域(CTB)的所有CTB行,用信號表示所述有效解碼區(qū)域。在SPS、VPS、PPS、切片標(biāo)頭或其相應(yīng)擴展中用信號表示此信息。替代地,可在SEI消息中用信號表示此信息。在一個實例中,基于當(dāng)entropy_coding_sync_enabled_flag等于1時條件性地用信號表示以下信息。替代地,用信號表示以下信息,與是否啟用entropy_coding_sync_enabled_flag無關(guān)。在另一個實例中,在IBC工具上條件性地用信號表示以下信息,所述IBC工具啟用可在至少一個參數(shù)集合(PPS、SPS、VPS)或其擴展中用信號表示的旗標(biāo)。在第一實例中,針對每一CTB行,用信號表示針對其所有上方的CTB行用于IBC預(yù)測的可用性區(qū)域。參見例如圖11。在當(dāng)前CTB下方的區(qū)域被視為不可用于IBC預(yù)測。以下為所提出方法在切片標(biāo)頭處的實例實施。pps_ibc_ref_avail_restriction_present_flag等于1指定,存在幀內(nèi)塊復(fù)制參考使用限制,并在切片段標(biāo)頭中針對切片的所有經(jīng)譯碼樹塊中用信號表示。pps_ibc_ref_avail_restriction_present_flag等于0指定,在切片段標(biāo)頭中不存在幀內(nèi)塊復(fù)制參考使用信息。當(dāng)不存在pps_ibc_ref_avail_restriction_present_flag時,推斷其為0。num_ctbY_in_slice_minus1加1指定切片中的CTB行的數(shù)目。max_delay_IBCPred_in_CTBs[i][j]為當(dāng)前CTB行i指定針對可用于IBC預(yù)測的每一先前CTB行j的關(guān)于CTB的最大延遲。當(dāng)不存在時,推斷其等于行中的CTB的數(shù)目。在另一實例實施方案中,針對每一CTB行,用信號表示針對所有CTB行用于IBC預(yù)測的可用性區(qū)域。參見例如圖12。以下為所提出方法在切片標(biāo)頭處的實例實施。pps_ibc_ref_avail_restriction_present_flag等于1指定,存在幀內(nèi)塊復(fù)制參考使用限制,并在切片段標(biāo)頭中針對切片的所有經(jīng)譯碼樹塊中用信號表示。pps_ibc_ref_avail_restriction_present_flag等于0指定幀內(nèi)塊復(fù)制參考使用消息不存在于切片段標(biāo)頭中。當(dāng)pps_ibc_ref_avail_restriction_present_flag不存在時,推斷其為0。num_ctbY_in_slice_minus1加1指定切片中的CTB行的數(shù)目。max_delay_IBCPred_in_CTBs[i][j]為當(dāng)前CTB行i指定針對可用于IBC預(yù)測的每一先前CTB行j的關(guān)于CTB的最大延遲。當(dāng)不存在時,推斷其等于行中的CTB的數(shù)目。替代地,其可在SPSVUI或SEI消息下用信號表示,并與JCTVC-S0145和2014年10月7日提交的美國臨時專利申請62/061,063中所提出的方面組合。本發(fā)明的另一實例技術(shù)涉及用信號表示IBC模式以供合并。本發(fā)明提出針對合并模式用信號表示IBC模式的使用的技術(shù)。所提出的方法主要與屏幕內(nèi)容譯碼有關(guān),包含支持可能較高的位深度(超過8個位)、不同的色度采樣格式,諸如4:4:4、4:2:2、4:2:0、4:0:0等等。在近期JCT-VC會議中,已提議在使用IBC模式時修改合并候選者列表。因為觀測到IBC的預(yù)測特征不同于幀間,示出提供在以不同于幀間的方式修改合并候選者列表產(chǎn)生程序時的譯碼效率。圖13示出實例信令技術(shù),其中IBC合并程序與以幀間合并程序分離的方式用信號表示。在圖13的實例中,視頻解碼器30接收用于PU的語法元素,所述語法元素指示PU的CU是否在幀間模式中譯碼(210)。如果CU的cu_skip_flag為真(212,是),那么CU在跳過模式中譯碼,且視頻解碼器30接收或推斷CU的合并索引(214),并根據(jù)與所確定的合并索引相關(guān)聯(lián)的運動信息譯碼CU。如果CU的cu_skip_flag為假(212,否),那么視頻解碼器30接收語法元素intra_bc_flag(216)及合并旗標(biāo)(218)。如果合并旗標(biāo)為真(220,是),那么視頻解碼器30接收合并索引(214),并根據(jù)與合并索引相關(guān)聯(lián)的運動信息解碼CU。如果合并旗標(biāo)為假(220,否),那么視頻解碼器30接收另一intra_bc_flag(224)。如果intra_bc_flag為真(224,是),那么視頻解碼器30接收塊向量信息(226)?;诮邮盏降牡膲K向量信息,視頻解碼器30解碼CU。如果intra_bc_flag為真(224,否),那么視頻解碼器30接收運動向量信息息(228)?;谶\動向量信息,視頻解碼器30解碼CU。圖13中所描述的信令方案具有潛在問題。作為一個實例,將每一PU的intra_bc_flag用信號表示到單獨的幀間及IBC模式對于IBC及幀間模式的統(tǒng)一來說并不高效。關(guān)于此問題的方面/解決方案涵蓋于2014年10月7日提交的美國臨時專利申請62/061,121、2015年10月6日提交的美國專利申請14/876,699及JCTVC-S0113中。已提議相對于幀間預(yù)測將BVD及BVP_idx的譯碼與MVD及MVP索引的譯碼對準(zhǔn)。根據(jù)本發(fā)明的一個技術(shù),提出在當(dāng)前PU合并時僅用信號表示intra_bc_flag(也就是說,merge_flag為1),如圖14中所示。此外,intra_bc_flag可在IBC工具上條件性地用信號表示,所述IBC工具啟用可在至少一個參數(shù)集合(PPS、SPS、VPS)或其它中用信號表示的旗標(biāo)。本發(fā)明提出基于僅針對合并PU用信號表示的intra_bc_flag而將IBC合并程序與幀間合并程序分離的技術(shù)。在此情況下,用于IBC模式和常規(guī)幀間預(yù)測的合并候選者列表可以是不同的。語法元素intra_bc_flag可未用信號表示并在以下情況中推導(dǎo)為1:(1)當(dāng)前切片為I切片;(2)當(dāng)前CU大小為8×8且其分割區(qū)大小為N×N。圖14示出實例信令技術(shù),其中與圖13的單獨信令相比,僅將IBC合并程序用信號表示一次。在圖14的實例中,視頻解碼器30接收用于PU的語法元素,所述語法元素指示PU的CU是否在幀間模式中譯碼(230)。如果CU的cu_skip_flag為真(232,是),那么CU在跳過模式中譯碼,且視頻解碼器30接收intra_bc_flag(234)和CU的合并索引(214),并根據(jù)與所確定的合并索引相關(guān)聯(lián)的運動信息譯碼CU。如果CU的cu_skip_flag為假(232,否),那么視頻解碼器30接收合并旗標(biāo)(240)。如果合并旗標(biāo)為真(240,是),那么視頻解碼器30接收intra_bc_flag(234)及合并旗標(biāo)(236),并根據(jù)與合并索引相關(guān)聯(lián)的運動信息解碼CU。如果合并旗標(biāo)為假(240,否),那么視頻解碼器30接收運動信息(242),其可能包含IBC塊向量信息,并根據(jù)運動信息解碼CU。圖15是說明可實施本發(fā)明中描述的技術(shù)的實例視頻編碼器20的框圖。視頻編碼器20可經(jīng)配置以將視頻輸出到后處理實體27。后處理實體27既定表示可處理來自視頻編碼器20的經(jīng)編碼視頻數(shù)據(jù)的視頻實體(例如MANE或拼接/編輯裝置)的實例。在一些情況下,后處理實體27可為網(wǎng)絡(luò)實體的實例。在一些視頻編碼系統(tǒng)中,后處理實體27和視頻編碼器20可為單獨裝置的各部分,而在其它情況下,關(guān)于后處理實體27所描述的功能性可由包括視頻編碼器20的相同裝置執(zhí)行。在某一實例中,后處理實體27是圖1的存儲裝置17的實例。視頻編碼器20可在視頻切片內(nèi)執(zhí)行視頻塊的幀內(nèi)譯碼、幀間譯碼及IBC譯碼。幀內(nèi)譯碼依賴于空間預(yù)測來減少或去除給定視頻幀或圖片內(nèi)的視頻中的空間冗余。幀間譯碼依靠時間預(yù)測來減少或去除視頻序列的鄰近幀或圖片內(nèi)的視頻中的時間冗余。幀內(nèi)模式(I模式)可指若干基于空間的壓縮模式中的任一者。例如單向預(yù)測(P模式)或雙向預(yù)測(B模式)的幀間模式可指代若干基于時間的壓縮模式中的任一者。如上文所描述的IBC譯碼模式可從視頻數(shù)據(jù)幀去除空間冗余,但不同于傳統(tǒng)幀內(nèi)模式,IBC譯碼模式可用于在幀內(nèi)的較大搜索區(qū)域中定位預(yù)測性塊且指代具有偏移向量的預(yù)測性塊,而不是依賴于幀內(nèi)預(yù)測譯碼模式。在圖15的實例中,視頻編碼器20包含視頻數(shù)據(jù)存儲器33、分割單元35、預(yù)測處理單元41、濾波器單元63、經(jīng)解碼圖片緩沖器64、求和器50、變換處理單元52、量化單元54及熵編碼單元56。預(yù)測處理單元41包含運動估計單元42、運動補償單元44、幀內(nèi)預(yù)測處理單元46及IBC單元48。為了視頻塊重構(gòu)建,視頻編碼器20還包含反量化單元58、反變換處理單元60及求和器62。濾波器單元63既定表示一或多個環(huán)路濾波器,例如,解塊濾波器、自適應(yīng)環(huán)路濾波器(ALF)及樣本自適應(yīng)偏移(SAO)濾波器。盡管在圖15中將濾波器單元63示為環(huán)內(nèi)濾波器,但在其它配置中,可將濾波器單元63實施為環(huán)路后濾波器。在各種實例中,可給視頻編碼器20的固定或可編程硬件單元分派任務(wù)以執(zhí)行本發(fā)明的技術(shù)。并且,在一些實例中,可在圖15中所示的視頻編碼器20的所說明的固定或可編程硬件單元當(dāng)中劃分本發(fā)明的技術(shù),但其它裝置也可執(zhí)行本發(fā)明的技術(shù)。舉例來說,與圖15的實例一致,視頻編碼器20的IBC單元48可單獨地或結(jié)合視頻編碼器20的其它單元(例如,運動估計單元42、運動補償單元44、幀內(nèi)預(yù)測處理單元46及熵編碼單元56)執(zhí)行本發(fā)明的技術(shù)。在一些實例中,視頻編碼器20可不包含IBC單元48,且IBC單元48的功能性可由預(yù)測處理單元41的其它組件(例如,運動估計單元42和/或運動補償單元44)執(zhí)行。視頻數(shù)據(jù)存儲器33可以存儲待由視頻編碼器20的組件編碼的視頻數(shù)據(jù)???例如)從視頻源18獲得存儲在視頻數(shù)據(jù)存儲器33中的視頻數(shù)據(jù)。經(jīng)解碼圖片緩沖器64可以是參考圖片存儲器,其存儲用于由視頻編碼器20(例如)以幀內(nèi)、幀間或IBC譯碼模式對視頻數(shù)據(jù)進行編碼的參考視頻數(shù)據(jù)。視頻數(shù)據(jù)存儲器33和經(jīng)解碼圖片緩沖器64可通過多種存儲器裝置中的任一者形成,例如動態(tài)隨機存取存儲器(DRAM),包含同步DRAM(SDRAM)、磁阻式RAM(MRAM)、電阻式RAM(RRAM)或其它類型的存儲器裝置。視頻數(shù)據(jù)存儲器33和經(jīng)解碼圖片緩沖器64可由相同存儲器裝置或單獨的存儲器裝置提供。在各種實例中,視頻數(shù)據(jù)存儲器33可與視頻編碼器20的其它組件一起位于芯片上,或相對于那些組件在芯片外。如圖15中所示,視頻編碼器20接收視頻數(shù)據(jù)并將視頻數(shù)據(jù)存儲于視頻數(shù)據(jù)存儲器33中。分割單元35將所述數(shù)據(jù)分割成若干視頻塊。此分割還可包含分割成切片、平鋪塊或其它較大單元,以及例如根據(jù)LCU和CU的四叉樹結(jié)構(gòu)的視頻塊分割。視頻編碼器20一般說明編碼待編碼的視頻切片內(nèi)的視頻塊的組件。所述切片可以分成多個視頻塊(并且可能分成被稱作單元片的視頻塊集合)。預(yù)測處理單元41可針對當(dāng)前視頻塊基于誤差結(jié)果(例如,譯碼速率和失真程度)選擇多個可能的譯碼模式中的一個,例如,多個幀內(nèi)譯碼模式中的一個、多個幀間譯碼模式中的一個或多個IBC譯碼模式中的一個。預(yù)測處理單元41可將所得經(jīng)幀內(nèi)、幀間或IBC譯碼的塊提供給求和器50以產(chǎn)生殘余塊數(shù)據(jù),且提供給求和器62以重構(gòu)建適用作參考圖片的經(jīng)編碼塊。預(yù)測處理單元41內(nèi)的幀內(nèi)預(yù)測處理單元46可相對于與待譯碼的當(dāng)前塊在相同幀或切片中的一或多個相鄰塊執(zhí)行當(dāng)前視頻塊的幀內(nèi)預(yù)測性譯碼,以提供空間壓縮。預(yù)測處理單元41內(nèi)的運動估計單元42及運動補償單元44相對于一或多個參考圖片中的一或多個預(yù)測性塊執(zhí)行當(dāng)前視頻塊的幀間預(yù)測性譯碼,以提供時間壓縮。預(yù)測處理單元41內(nèi)的運動估計單元42和運動補償單元44還可相對于在同一圖片中的一或多個預(yù)測性塊執(zhí)行當(dāng)前視頻塊的IBC譯碼,以提供空間壓縮。運動估計單元42可經(jīng)配置以根據(jù)視頻序列的預(yù)定模式為視頻切片確定幀間預(yù)測模式或IBC模式。預(yù)定模式可將序列中的視頻切片標(biāo)明為P切片、B切片或GPB切片。運動估計單元42和運動補償單元44可高度集成,但出于概念的目的分別加以說明。運動估計單元42所執(zhí)行的運動估計是產(chǎn)生運動向量的程序,所述程序估計視頻塊的運動。運動向量(例如)可以指示當(dāng)前視頻幀或圖片內(nèi)的視頻塊的PU相對于參考圖片內(nèi)的預(yù)測性塊的位移。在IBC譯碼的情況下,運動向量,其在IBC中可被稱為偏移向量,可指示當(dāng)前視頻幀或圖片內(nèi)的視頻塊的PU相對于當(dāng)前視頻幀內(nèi)的預(yù)測性塊的位移。IBC單元48可以類似于運動估計單元42確定運動向量來進行幀間預(yù)測的方式來確定用于IBC譯碼的向量(例如塊向量),或可利用運動估計單元42來確定所述塊向量。預(yù)測塊是被發(fā)現(xiàn)在像素差方面與待譯碼視頻塊的PU密切匹配的塊,所述像素差可通過絕對差總和(SAD)、平方差總和(SSD)或其它差異度量來確定。在一些實例中,視頻編碼器20可計算存儲在經(jīng)解碼圖片緩沖器64中的參考圖片的次整數(shù)像素位置的值。舉例來說,視頻編碼器20可以內(nèi)插參考圖片的四分之一像素位置、八分之一像素位置或其它分?jǐn)?shù)像素位置的值。因此,運動估計單元42可相對于全像素位置和分?jǐn)?shù)像素位置執(zhí)行運動搜索并且輸出具有分?jǐn)?shù)像素精確度的運動向量。運動估計單元42通過比較PU的位置與參考圖片的預(yù)測性塊的位置來計算用于經(jīng)幀間譯碼切片中的視頻塊的PU的運動向量。參考圖片可以選自第一參考圖片列表(列表0)或第二參考圖片列表(列表1),所述列表中的每一者識別存儲在經(jīng)解碼圖片緩沖器64中的一或多個參考圖片。運動估計單元42將所計算的運動向量發(fā)送到熵編碼單元56及運動補償單元44。在一些實例中,IBC單元48可以類似于上文相對于運動估計單元42和運動補償單元44所述的方式來產(chǎn)生向量并提取預(yù)測性塊,但其中所述預(yù)測性塊與當(dāng)前塊在相同的圖片或幀中,且所述向量被稱作塊向量,與運動向量形成對照。在其它實例中,IBC單元48可使用運動估計單元42及運動補償單元44以完整或部分地執(zhí)行根據(jù)本文中所描述的技術(shù)的IBC預(yù)測的這些功能。在任一情況下,對于IBC,預(yù)測性塊可為被發(fā)現(xiàn)在像素差方面緊密地匹配待譯碼塊的塊,其可由絕對差總和(SAD)、平方差總和(SSD)或其它差異度量確定,且塊的識別可包含用于次整數(shù)像素位置的值的計算。通過運動補償單元44執(zhí)行的運動補償可以涉及基于通過運動估計(可能執(zhí)行對次像素精確度的內(nèi)插)確定的運動向量提取或產(chǎn)生預(yù)測性塊。內(nèi)插濾波可從已知像素樣本產(chǎn)生額外像素樣本,從而潛在地增加可用于譯碼視頻塊的候選預(yù)測性塊的數(shù)目。在接收當(dāng)前視頻塊的PU的運動向量后,運動補償單元44可將運動向量所指向的預(yù)測性塊定位在參考圖片列表中的一者中,或在IBC譯碼的情況下定位在正被譯碼的圖片內(nèi)。視頻編碼器20通過從正被譯碼的當(dāng)前視頻塊的像素值減去預(yù)測性塊的像素值來形成殘余視頻塊,從而形成像素差值。像素差值形成用于所述塊的殘余數(shù)據(jù),且可包含明度及色度差分量兩者。求和器50表示執(zhí)行此減法運算的一或多個組件。運動補償單元44還可產(chǎn)生與視頻塊和視頻切片相關(guān)聯(lián)的語法元素以供視頻解碼器30在對視頻切片的視頻塊解碼時使用。幀內(nèi)預(yù)測處理單元46可對當(dāng)前塊進行幀內(nèi)預(yù)測,作為由運動估計單元42及運動補償單元44執(zhí)行的框間預(yù)測或由IBC單元48執(zhí)行的IBC預(yù)測的替代方案,如上文所描述。明確地說,幀內(nèi)預(yù)測處理單元46可確定用以編碼當(dāng)前塊的幀內(nèi)預(yù)測模式。在一些實例中,幀內(nèi)預(yù)測處理單元46可以例如在單獨的編碼編次期間使用各種幀內(nèi)預(yù)測模式對當(dāng)前塊進行編碼,并且?guī)瑑?nèi)預(yù)測處理單元46(或在一些實例中為模式選擇單元40)可以從經(jīng)測試模式中選擇適當(dāng)幀內(nèi)預(yù)測模式來使用。例如,幀內(nèi)預(yù)測處理單元46可使用速率-失真分析計算各種經(jīng)測試幀內(nèi)預(yù)測模式的速率-失真值,并在所述經(jīng)測試模式當(dāng)中選擇具有最佳速率-失真特性的幀內(nèi)預(yù)測模式。速率-失真分析一般確定經(jīng)編碼塊與經(jīng)編碼以產(chǎn)生所述經(jīng)編碼塊的原始的未經(jīng)編碼塊之間的失真(或誤差)的量,以及用于產(chǎn)生經(jīng)編碼塊的位速率(也就是說,位數(shù)目)。幀內(nèi)預(yù)測處理單元46可根據(jù)用于各種經(jīng)編碼塊的失真和速率來計算比率,以確定哪個幀內(nèi)預(yù)測模式對于所述塊展現(xiàn)最佳速率失真值。在任何情況下,在選擇用于塊的幀內(nèi)預(yù)測模式之后,幀內(nèi)預(yù)測處理單元46可將指示用于所述塊的選定幀內(nèi)預(yù)測模式的信息提供到熵編碼單元56。熵編碼單元56可根據(jù)本發(fā)明的技術(shù)編碼指示選定幀內(nèi)預(yù)測模式的信息。視頻編碼器20在所發(fā)射的位流中可包含配置數(shù)據(jù),其可包含多個幀內(nèi)預(yù)測模式索引表和多個經(jīng)修改的幀內(nèi)預(yù)測模式索引表(也稱為碼字映射表),對用于各種塊的上下文進行編碼的定義,以及對最可能幀內(nèi)預(yù)測模式、幀內(nèi)預(yù)測模式索引表和經(jīng)修改的幀內(nèi)預(yù)測模式索引表的指示以用于所述上下文中的每一者。在預(yù)測處理單元41經(jīng)由幀間預(yù)測、幀內(nèi)預(yù)測抑或IBC產(chǎn)生當(dāng)前視頻塊的預(yù)測性塊之后,視頻編碼器20通過從當(dāng)前視頻塊減去預(yù)測性塊而形成殘余視頻塊。殘余塊中的殘余視頻數(shù)據(jù)可包含在一或多個TU中并應(yīng)用到變換處理單元52。變換處理單元52使用例如離散余弦變換(DCT)或概念上類似的變換的變換來將殘余視頻數(shù)據(jù)變換成殘余變換系數(shù)。變換處理單元52可將殘余視頻數(shù)據(jù)從像素值域轉(zhuǎn)換到變換域,例如頻域。變換處理單元52可以將所得變換系數(shù)發(fā)送到量化單元54。量化單元54對變換系數(shù)進行量化以進一步減小位速率。量化程序可以減少與系數(shù)中的一些或全部相關(guān)聯(lián)的位深度。可通過調(diào)節(jié)量化參數(shù)來修改量化的程度。在一些實例中,量化單元54可以接著執(zhí)行對包含經(jīng)量化的變換系數(shù)的矩陣的掃描。替代地,熵編碼單元56可執(zhí)行掃描。在量化之后,熵編碼單元56對經(jīng)量化變換系數(shù)進行熵編碼。舉例來說,熵編碼單元56可執(zhí)行上下文自適應(yīng)二進制算術(shù)譯碼(CABAC)或另一熵編碼方法或技術(shù)。在由熵編碼單元56熵編碼之后,經(jīng)編碼位流可發(fā)射到視頻解碼器30,或經(jīng)存檔以供稍后發(fā)射或由視頻解碼器30檢索。熵編碼單元56還可對正譯碼的當(dāng)前視頻切片的運動向量和其它語法元素進行熵編碼。反量化單元58和反變換處理單元60分別應(yīng)用反量化和反變換以在像素域中重構(gòu)建殘余塊,例如以供稍后用作參考圖片的參考塊。運動補償單元44可通過將殘余塊添加到參考圖片列表中的一者內(nèi)的參考圖片中的一者的預(yù)測性塊中來計算參考塊。運動補償單元44還可將一或多個內(nèi)插濾波器應(yīng)用于所重構(gòu)建的殘余塊以計算次整數(shù)像素值用于運動估計。內(nèi)插濾波可從已知像素樣本產(chǎn)生額外像素樣本,從而潛在地增加可用于譯碼視頻塊的候選預(yù)測性塊的數(shù)目。求和器62將經(jīng)重構(gòu)建的殘余塊添加到由運動補償單元44產(chǎn)生的運動補償預(yù)測塊以產(chǎn)生參考塊用于存儲在經(jīng)解碼圖片緩沖器64中。參考塊可由運動估計單元42及運動補償單元44用作對后續(xù)視頻幀或圖片中的塊進行幀間預(yù)測的參考塊。視頻編碼器20表示經(jīng)配置以根據(jù)本發(fā)明的技術(shù)對視頻數(shù)據(jù)進行編碼的視頻編碼器的實例。舉例來說,視頻編碼器20可確定針對在啟用WPP的情況下譯碼的一或多個塊的CTB延遲。CTB延遲可(例如)識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲。針對在幀內(nèi)塊復(fù)制(IBC)模式中譯碼并在禁用WPP的情況下譯碼的第一視頻數(shù)據(jù)塊,視頻編碼器20可基于CTB延遲確定用于第一塊的IBC預(yù)測區(qū)域。視頻編碼器20可從第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊并產(chǎn)生指示用于定位預(yù)測性塊的塊向量的語法。圖16是說明可實施本發(fā)明中描述的技術(shù)的實例視頻解碼器30的框圖。在圖16的實例中,視頻解碼器30包含視頻數(shù)據(jù)存儲器78、熵解碼單元80、預(yù)測處理單元81、反量化單元86、反變換處理單元88、求和器90、濾波器單元91及參考圖片緩沖器(DPB)92。預(yù)測處理單元81包含運動估計單元82、幀內(nèi)預(yù)測處理單元84和IBC單元85。在一些實例中,視頻解碼器30可執(zhí)行大體上與關(guān)于來自圖15的視頻編碼器20描述的編碼遍次互逆的解碼遍次。在各種實例中,可給視頻解碼器30的單元分派任務(wù)以執(zhí)行本發(fā)明的技術(shù)。并且,在一些實例中,可在視頻解碼器30的單元中的一或多者當(dāng)中劃分本發(fā)明的技術(shù)。舉例來說,IBC單元85可單獨地或與視頻解碼器30的其它單元(例如,運動補償單元82、框內(nèi)預(yù)測處理單元84及熵解碼單元80)組合而執(zhí)行本發(fā)明的技術(shù)。在一些實例中,視頻解碼器30可不包含IBC單元85,且IBC單元85的功能性可由預(yù)測處理單元81的其它組件(例如,運動補償單元82)執(zhí)行。在解碼程序期間,視頻解碼器30從視頻編碼器20接收表示經(jīng)編碼視頻切片的視頻塊和相關(guān)聯(lián)語法元素的經(jīng)編碼視頻位流。視頻解碼器30可從網(wǎng)絡(luò)實體29接收視頻數(shù)據(jù),并將所述視頻數(shù)據(jù)存儲在視頻數(shù)據(jù)存儲器78中。視頻數(shù)據(jù)存儲器78可以存儲待由視頻解碼器30的組件解碼的視頻數(shù)據(jù),例如經(jīng)編碼視頻位流。存儲在視頻數(shù)據(jù)存儲器78中的視頻數(shù)據(jù)可(例如)從存儲裝置17、例如從例如相機等本地視頻源、經(jīng)由視頻數(shù)據(jù)的有線或無線網(wǎng)絡(luò)通信或者通過存取物理數(shù)據(jù)存儲媒體而獲得。視頻數(shù)據(jù)存儲器78可形成存儲來自經(jīng)編碼視頻位流的經(jīng)編碼視頻數(shù)據(jù)的經(jīng)譯碼圖片緩沖器。因此,盡管在圖16中分別示出,但視頻數(shù)據(jù)存儲器78和DPB92可由相同存儲器裝置或單獨存儲器裝置提供。視頻數(shù)據(jù)存儲器78和DPB92可由多種存儲器裝置中的任一者形成,例如包含同步DRAM(SDRAM)的動態(tài)隨機存取存儲器(DRAM)、磁阻式RAM(MRAM)、電阻式RAM(RRAM),或其它類型的存儲器裝置。在各種實例中,視頻數(shù)據(jù)存儲器78可與視頻解碼器30的其它組件一起在芯片上,或相對于那些組件在芯片外。網(wǎng)絡(luò)實體29可例如為服務(wù)器、MANE、視頻編輯器/剪接器,或經(jīng)配置以實施上文所描述的技術(shù)中的一或多者的其它此裝置。網(wǎng)絡(luò)實體29可包含或可不包含視頻編碼器,例如視頻編碼器20。在網(wǎng)絡(luò)實體29將經(jīng)編碼視頻位流發(fā)射到視頻解碼器30之前,可由網(wǎng)絡(luò)實體29實施本發(fā)明中描述的技術(shù)中的一些。在一些視頻解碼系統(tǒng)中,網(wǎng)絡(luò)實體29和視頻解碼器30可為單獨裝置的部分,而在其它情況下,關(guān)于網(wǎng)絡(luò)實體29描述的功能性可由包括視頻解碼器30的相同裝置執(zhí)行。在一些情況下,網(wǎng)絡(luò)實體29可為圖1的存儲裝置17的實例。視頻解碼器30的熵解碼單元80對位流進行熵解碼以產(chǎn)生經(jīng)量化的系數(shù)、運動向量及其它語法元素。熵解碼單元80將運動向量及其它語法元素轉(zhuǎn)遞到預(yù)測處理單元81。視頻解碼器30可在視頻切片層級和/或視頻塊層級處接收語法元素。當(dāng)視頻切片經(jīng)譯碼為經(jīng)幀內(nèi)譯碼(I)切片時,預(yù)測處理單元81的幀內(nèi)預(yù)測處理單元84可基于用信號表示的幀內(nèi)預(yù)測模式及來自當(dāng)前幀或圖片的先前經(jīng)解碼塊的數(shù)據(jù)產(chǎn)生用于當(dāng)前視頻切片的視頻塊的預(yù)測數(shù)據(jù)。當(dāng)將視頻幀譯碼為經(jīng)幀間譯碼(即,B或P)切片時,或當(dāng)塊經(jīng)IBC譯碼時,預(yù)測處理單元81的運動補償單元82基于從熵解碼單元80接收到的運動向量和其它語法元素產(chǎn)生當(dāng)前視頻切片的視頻塊的預(yù)測性塊。對于幀間預(yù)測,可從參考圖片列表中的一者內(nèi)的參考圖片中的一者產(chǎn)生預(yù)測性塊。視頻解碼器30可基于存儲在DPB92中的參考圖片,使用默認(rèn)構(gòu)建技術(shù)來構(gòu)建參考幀列表,列表0和列表1。對于IBC譯碼,可從與正預(yù)測的塊相同的圖片產(chǎn)生預(yù)測性塊。在其它實例中,當(dāng)視頻塊根據(jù)本文中所描述的IBC模式進行譯碼時,預(yù)測處理單元81的IBC單元85基于從熵解碼單元80接收的塊向量和其它語法元素產(chǎn)生用于當(dāng)前視頻塊的預(yù)測性塊。預(yù)測性塊可在與由視頻編碼器20定義且從DPB92檢索的當(dāng)前視頻塊相同的圖片內(nèi)的經(jīng)重構(gòu)建區(qū)域內(nèi)。運動補償單元82和/或IBC單元85可通過剖析運動向量和其它語法元素來確定當(dāng)前視頻切片的視頻塊的預(yù)測信息,且可使用所述預(yù)測信息來產(chǎn)生正被解碼的當(dāng)前視頻塊的預(yù)測性塊。舉例來說,運動補償單元82使用所接收的語法元素中的一些來確定用于譯碼視頻切片的視頻塊的預(yù)測模式(例如,幀內(nèi)或幀間預(yù)測)、幀間預(yù)測切片類型(例如,B切片或P切片)、切片的參考圖片列表中的一或多者的構(gòu)建信息、切片的每一經(jīng)幀間編碼視頻塊的運動向量、切片的每一經(jīng)幀間譯碼視頻塊的幀間預(yù)測狀態(tài)和用以解碼當(dāng)前視頻切片中的視頻塊的其它信息。類似地,IBC單元85可使用一些所接收語法元素(例如,旗標(biāo))來確定當(dāng)前視頻塊使用IBC模式進行預(yù)測,指示圖片中的哪些視頻塊位于經(jīng)重構(gòu)建區(qū)域內(nèi)且應(yīng)存儲于DPB92中的構(gòu)建信息、切片的每一經(jīng)IBC預(yù)測視頻塊的塊向量、切片的每一經(jīng)IBC預(yù)測視頻塊的IBC預(yù)測狀態(tài),及用以對當(dāng)前視頻切片中的視頻塊進行解碼的其它信息。運動補償單元82還可基于內(nèi)插濾波器執(zhí)行內(nèi)插。運動補償單元82可以使用如視頻編碼器20在視頻塊的編碼期間使用的內(nèi)插濾波器來計算參考塊的次整數(shù)像素的內(nèi)插值。在此情況下,運動補償單元82可根據(jù)接收的語法元素而確定由視頻編碼器20使用的內(nèi)插濾波器并使用所述內(nèi)插濾波器來產(chǎn)生預(yù)測性塊。逆量化單元86將在位流中提供且由熵解碼單元80解碼的經(jīng)量化變換系數(shù)反量化,即解量化。反量化程序可包含使用由視頻編碼器20針對視頻切片中的每一視頻塊計算的量化參數(shù)以確定應(yīng)應(yīng)用的量化程度及同樣確定應(yīng)應(yīng)用的反量化程度。反變換處理單元88將反變換(例如反DCT、反整數(shù)變換或概念上類似的反變換程序)應(yīng)用于變換系數(shù),以便產(chǎn)生像素域中的殘余塊。在運動補償單元82或IBC單元85基于運動向量和其它語法元素產(chǎn)生當(dāng)前視頻塊的預(yù)測性塊之后,視頻解碼器30通過將來自反變換處理單元88的殘余塊與運動補償單元82產(chǎn)生的對應(yīng)預(yù)測性塊求和來形成經(jīng)解碼視頻塊。求和器90表示可執(zhí)行此求和運算的一或多個組件。在需要時,還可使用環(huán)路濾波器(在譯碼環(huán)路中或在譯碼環(huán)路之后)來使像素轉(zhuǎn)變平滑或者以其它方式改善視頻質(zhì)量。濾波器單元91既定表示一或多個環(huán)路濾波器,例如解塊濾波器、自適應(yīng)環(huán)路濾波器(ALF)及樣本自適應(yīng)偏移(SAO)濾波器。盡管在圖16中將濾波器單元91示出為環(huán)路內(nèi)濾波器,但在其它配置中,可將濾波器單元91實施為環(huán)路后濾波器。接著將給定幀或圖片中的經(jīng)解碼視頻塊存儲于DPB92中,所述DPB存儲用于后續(xù)運動補償?shù)膮⒖紙D片。DPB92可為存儲器的一部分,所述存儲器還存儲經(jīng)解碼視頻以供稍后呈現(xiàn)于顯示裝置(例如,圖1的顯示裝置32)上,或DPB92可與此類存儲器分離。視頻解碼器30表示經(jīng)配置以根據(jù)本發(fā)明的技術(shù)對視頻數(shù)據(jù)進行解碼的視頻解碼器的實例。針對在啟用WPP的情況下譯碼的一或多個塊,視頻解碼器30確定CTB延遲,所述CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的延遲。CTB延遲可例如以CTB為單位。針對在IBC模式中譯碼并在禁用WPP的情況下譯碼的當(dāng)前視頻數(shù)據(jù)塊,視頻解碼器30基于針對在啟用WPP的情況下譯碼的一或多個塊所確定的CTB延遲,確定用于包含當(dāng)前塊的圖片內(nèi)的當(dāng)前塊的IBC預(yù)測區(qū)域。視頻解碼器30從所確定的用于當(dāng)前塊的IBC預(yù)測區(qū)域內(nèi)識別用于當(dāng)前塊的預(yù)測性塊,并基于預(yù)測性塊對當(dāng)前塊進行IBC解碼。針對在IBC模式中譯碼并在啟用WPP的情況下譯碼的第二視頻數(shù)據(jù)塊,視頻解碼器30還可基于CTB延遲確定用于第二塊的IBC預(yù)測區(qū)域,并從用于第二塊述IBC預(yù)測區(qū)域內(nèi)識別用于第二塊的預(yù)測性塊,且基于預(yù)測性塊對當(dāng)前塊進行IBC解碼。視頻解碼器30可基于語法元素(例如上述entropy_coding_sync_enabled)的值確定針對第一塊禁用WPP。語法元素可(例如)為同步程序啟用語法元素,其指示是否將調(diào)用用于上下文變量的特定同步程序。用于第一塊的IBC預(yù)測區(qū)域可包含先前經(jīng)解碼的未經(jīng)濾波的CTB。另外或替代地,IBC預(yù)測區(qū)域可包含位于第一塊右方的對角定位的CTB和在第一塊上方的至少兩個或更多行,且不包含正好在對角定位的CTB下方的CTB。針對對角定位的CTB,視頻解碼器30可解碼正好在與第一塊平行的對角定位的CTB下方的CTB。視頻解碼器30可在視頻數(shù)據(jù)的經(jīng)編碼位流中接收一或多個語法元素,其指示用于第一視頻數(shù)據(jù)塊的譯碼模式為IBC模式,并在視頻數(shù)據(jù)的經(jīng)編碼位流中接收識別用于第一視頻數(shù)據(jù)塊的塊向量的一或多個語法元素。為從用于第一塊的所述IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊,視頻解碼器30可以塊向量來定位預(yù)測性塊。圖17是說明根據(jù)本發(fā)明的技術(shù)的用于編碼視頻數(shù)據(jù)的技術(shù)的流程圖。圖17的技術(shù)將參考通用視頻編碼器來描述。通用視頻編碼器可合并視頻編碼器20的特征或可為不同配置的視頻編碼器。針對在啟用WPP的情況下譯碼的一或多個塊,視頻編碼器確定CTB延遲(300)。CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的以CTB為單位的延遲。CTB延遲可例如為一個CTB、兩個CTB或一些其它此類延遲。針對在IBC模式中譯碼并在禁用WPP的情況下譯碼的第一視頻數(shù)據(jù)塊,視頻編碼器基于CTB延遲確定用于第一塊的IBC預(yù)測區(qū)域(302)。視頻編碼器從用于第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊(304),并產(chǎn)生用以指示用于定位預(yù)測性塊的塊向量的語法(306)。針對在IBC模式中譯碼并在啟用WPP的情況下譯碼的第二視頻數(shù)據(jù)塊,視頻編碼器可基于CTB延遲確定用于第二塊的IBC預(yù)測區(qū)域,并從用于第二塊的IBC預(yù)測區(qū)域內(nèi)識別用于第二塊的預(yù)測性塊。IBC預(yù)測區(qū)域可包含在第一塊右方的CTB和在第一塊上方的至少兩個或更多行,且不包含正好在第一塊右方的CTB下方的CTB和在第一塊上方的至少兩個或更多行。圖18是說明根據(jù)本發(fā)明的技術(shù)的用于解碼視頻數(shù)據(jù)的技術(shù)的流程圖。圖18的技術(shù)將參考通用視頻解碼器來描述。通用視頻解碼器可合并視頻解碼器30的特征或可為不同配置的視頻解碼器。針對在啟用WPP的情況下譯碼的一或多個塊,視頻解碼器確定CTB延遲(310)。CTB延遲識別在開始解碼第一行CTB時與開始解碼在第一行CTB下方的第二行CTB時之間的以CTB為單位的延遲。CTB延遲可例如為一個CTB、兩個CTB或一些其它此類延遲。針對在IBC模式中譯碼并在禁用WPP的情況下譯碼的第一視頻數(shù)據(jù)塊,視頻解碼器基于CTB延遲確定用于第一塊的IBC預(yù)測區(qū)域(312)。視頻解碼器從用于第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊(314)。視頻解碼器30基于預(yù)測性塊對當(dāng)前塊進行IBC解碼(316)。針對在IBC模式中譯碼并在禁用WPP的情況下譯碼的第一視頻數(shù)據(jù)塊,視頻編碼器基于CTB延遲確定用于第一塊的IBC預(yù)測區(qū)域,并從用于第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊。視頻解碼器可另外接收語法元素并基于語法元素的值確定針對第一塊禁用WPP。語法元素可(例如)為同步程序啟用語法元素(例如上述entropy_coding_sync_enabled_flag),其指示是否將調(diào)用用于上下文變量的特定同步程序。用于第一塊的IBC預(yù)測區(qū)域可(例如)包含先前經(jīng)解碼的未經(jīng)濾波的CTB。IBC預(yù)測區(qū)域可(例如)包含在第一塊右方的CTB和在第一塊上方的至少兩個或更多行,且不包含正好在第一塊右方的CTB下方的CTB和在第一塊上方的至少兩個或更多行。視頻解碼器可解碼與第一塊平行、正好在第一塊右方的CTB下方的CTB和在第一塊上方的至少兩個或更多行。視頻解碼器可另外在視頻數(shù)據(jù)的經(jīng)編碼位流中接收一或多個語法元素,其指示用于第一視頻數(shù)據(jù)塊的譯碼模式為IBC模式,并在視頻數(shù)據(jù)的經(jīng)編碼位流中接收識別第一視頻數(shù)據(jù)塊的塊向量的一或多個語法元素。為從用于第一塊的IBC預(yù)測區(qū)域內(nèi)識別用于第一塊的預(yù)測性塊,視頻解碼器可以塊向量來定位預(yù)測性塊。在一或多個實例中,所描述的功能可在硬件、軟件、固件或其任何組合中實施。如果在軟件中實施,那么所述功能可作為一或多個指令或代碼存儲在計算機可讀媒體上或在計算機可讀媒體上予以發(fā)射,并且由基于硬件的處理單元執(zhí)行。計算機可讀媒體可包含計算機可讀存儲媒體,所述計算機可讀存儲媒體對應(yīng)于有形媒體,例如數(shù)據(jù)存儲媒體或通信媒體,包含例如根據(jù)通信協(xié)議促進計算機程序從一位置傳送到另一位置的任何媒體。以此方式,計算機可讀媒體通常可對應(yīng)于(1)有形計算機可讀存儲媒體(其是非暫時的)或(2)通信媒體,例如信號或載波。數(shù)據(jù)存儲媒體可為可由一或多個計算機或一個或多個處理器存取以檢索用于實施本發(fā)明中描述的技術(shù)的指令、代碼及/或數(shù)據(jù)結(jié)構(gòu)的任何可用媒體。計算機程序產(chǎn)品可以包含計算機可讀媒體。借助于實例而非限制,此類計算機可讀存儲媒體可包括RAM、ROM、EEPROM、CD-ROM或其它光盤存儲裝置、磁盤存儲裝置或其它磁性存儲裝置、快閃存儲器或可以用來存儲呈指令或數(shù)據(jù)結(jié)構(gòu)的形式的所要程序代碼并且可以由計算機存取的任何其它媒體。并且,任何連接被恰當(dāng)?shù)胤Q作計算機可讀媒體。舉例來說,如果使用同軸纜線、光纖纜線、雙絞線、數(shù)字訂戶線(DSL)或例如紅外線、無線電和微波等無線技術(shù)從網(wǎng)站、服務(wù)器或其它遠程源發(fā)射指令,那么同軸纜線、光纖纜線、雙絞線、DSL或例如紅外線、無線電和微波等無線技術(shù)包含在媒體的定義中。但是,應(yīng)理解,所述計算機可讀存儲媒體和數(shù)據(jù)存儲媒體并不包含連接、載波、信號或其它暫時媒體,而是實際上針對于非暫時性有形存儲媒體。如本文中所使用,磁盤和光盤包含壓縮光盤(CD)、激光光盤、光學(xué)光盤、數(shù)字多功能光盤(DVD)、軟性磁盤和藍光光盤,其中磁盤通常以磁性方式再現(xiàn)數(shù)據(jù),而光盤利用激光以光學(xué)方式再現(xiàn)數(shù)據(jù)。以上各項的組合也應(yīng)包含在計算機可讀媒體的范圍內(nèi)??捎衫缫换蚨鄠€數(shù)字信號處理器(DSP)、通用微處理器、專用集成電路(ASIC)、現(xiàn)場可編程邏輯陣列(FPGA)或其它等效集成或離散邏輯電路等一或多個處理器來執(zhí)行指令。因此,如本文中所使用的術(shù)語“處理器”可指前述結(jié)構(gòu)或適合于實施本文中所描述的技術(shù)的任一其它結(jié)構(gòu)中的任一者。另外,在一些方面中,本文中所描述的功能性可以在經(jīng)配置用于編碼和解碼的專用硬件和/或軟件模塊內(nèi)提供,或者并入在組合編解碼器中。而且,所述技術(shù)可完全實施于一或多個電路或邏輯元件中。本發(fā)明的技術(shù)可在廣泛多種裝置或設(shè)備中實施,包含無線手持機、集成電路(IC)或一組IC(例如,芯片組)。本發(fā)明中描述各種組件、模塊或單元是為了強調(diào)經(jīng)配置以執(zhí)行所公開的技術(shù)的裝置的功能方面,但未必需要由不同硬件單元實現(xiàn)。實際上,如上文所描述,各種單元可以結(jié)合合適的軟件及/或固件組合在編碼解碼器硬件單元中,或者通過互操作硬件單元的集合來提供,所述硬件單元包含如上文所描述的一或多個處理器。描述了各種實例。這些實例及其它實例屬于所附權(quán)利要求書的范圍內(nèi)。當(dāng)前第1頁1 2 3 
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
江华| 米泉市| 星座| 巴彦县| 合肥市| 沂南县| 全南县| 松原市| 新化县| 南开区| 湖南省| 长岭县| 金乡县| 连城县| 清远市| 项城市| 平舆县| 上犹县| 左云县| 墨竹工卡县| 平顺县| 襄樊市| 水城县| 台州市| 江阴市| 盐山县| 绵阳市| 滨海县| 古丈县| 江永县| 屏东县| 克东县| 温州市| 繁昌县| 张家口市| 新绛县| 新蔡县| 博罗县| 泗水县| 奉贤区| 临漳县|