視頻譯碼中的視差向量選擇的制作方法
【專利摘要】一種視頻譯碼器使用第一視差向量導(dǎo)出過程確定第一視差向量。另外,所述視頻譯碼器使用第二視差向量導(dǎo)出過程確定第二視差向量。所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程。所述視頻譯碼器使用所述第一視差向量來確定當(dāng)前預(yù)測單元PU的一組運(yùn)動(dòng)向量預(yù)測MVP候選者中的一MVP候選者。所述視頻譯碼器使用所述第二視差向量來確定殘余數(shù)據(jù)。
【專利說明】視頻譯碼中的視差向量選擇
[0001]本申請案主張2012年6月15日申請的第61/660,632號美國臨時(shí)專利申請案以及2012年7月2日申請的第61/667,354號美國臨時(shí)專利申請案的權(quán)益,所述兩個(gè)申請案中的每一者的全部內(nèi)容以引用的方式并入本文中。
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及視頻譯碼(即,對視頻數(shù)據(jù)的編碼和/或解碼)。
【背景技術(shù)】
[0003]數(shù)字視頻能力可并入到大范圍的裝置中,包含數(shù)字電視、數(shù)字直播系統(tǒng)、無線廣播系統(tǒng)、個(gè)人數(shù)字助理(PDA)、膝上型或桌上型計(jì)算機(jī)、平板計(jì)算機(jī)、電子書閱讀器、數(shù)碼相機(jī)、數(shù)字記錄裝置、數(shù)字媒體播放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式或衛(wèi)星無線電電話、所謂的智能電話摂、視頻會議裝置、視頻串流裝置等等。數(shù)字視頻裝置實(shí)施視頻壓縮技術(shù),例如由 MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4 第 10 部分高級視頻譯碼(AVC)、目前在開發(fā)中的高效率視頻譯碼(HEVC)標(biāo)準(zhǔn)定義的標(biāo)準(zhǔn)和所述標(biāo)準(zhǔn)的擴(kuò)展部分中所描述的那些視頻壓縮技術(shù)。視頻裝置可通過實(shí)施此些視頻壓縮技術(shù)來更高效地發(fā)射、接收、編碼、解碼和/或存儲數(shù)字視頻信息。
[0004]視頻壓縮技術(shù)執(zhí)行空間(圖片內(nèi))預(yù)測和/或時(shí)間(圖片間)預(yù)測以減少或移除視頻序列中所固有的冗余。對于基于塊的視頻譯碼,可將一視頻切片(即,視頻幀或視頻幀的一部分)分割成若干視頻塊。使用空間預(yù)測相對于同一圖片中的相鄰塊中的參考樣本來編碼圖片的經(jīng)幀內(nèi)譯碼(I)切片中的視頻塊。圖片的經(jīng)幀間譯碼(P或B)切片中的視頻塊可使用相對于同一圖片中的相鄰塊中的參考樣本的空間預(yù)測或相對于其它參考圖片中的參考樣本的時(shí)間預(yù)測。圖片可被稱作幀,且參考圖片可被稱作參考幀。
[0005]空間或時(shí)間預(yù)測產(chǎn)生對待譯碼的塊的預(yù)測性塊。殘差數(shù)據(jù)表示待譯碼的原始塊與預(yù)測性塊之間的像素差。根據(jù)指向形成預(yù)測性塊的參考樣本塊的運(yùn)動(dòng)向量以及指示經(jīng)譯碼塊與所述預(yù)測性塊之間的差的殘差數(shù)據(jù)來編碼經(jīng)幀間譯碼塊。根據(jù)幀內(nèi)譯碼模式和殘差數(shù)據(jù)來編碼經(jīng)幀內(nèi)譯碼塊。為了進(jìn)一步壓縮,可將殘差數(shù)據(jù)從像素域變換為變換域,從而產(chǎn)生殘余系數(shù),所述殘余系數(shù)隨后可被量化。起初布置在二維陣列中的經(jīng)量化系數(shù)可依序掃描以產(chǎn)生系數(shù)的一維向量,且可應(yīng)用熵譯碼以實(shí)現(xiàn)更多的壓縮。
[0006]可例如從多個(gè)觀點(diǎn)編碼視圖來產(chǎn)生多視圖譯碼位流。已經(jīng)開發(fā)或在開發(fā)中的一些三維(3D)視頻標(biāo)準(zhǔn)利用多視圖譯碼方面。舉例來說,不同視圖可傳輸左眼及右眼視圖以支持3D視頻。或者,一些3D視頻譯碼過程可應(yīng)用所謂的多視圖加深度譯碼。在多視圖加深度譯碼中,3D視頻位流可不僅含有紋理視圖分量而且含有深度視圖分量。舉例來說,每一視圖可包括一個(gè)紋理視圖分量及一個(gè)深度視圖分量。
【發(fā)明內(nèi)容】
[0007]一般來說,本發(fā)明描述用于3D視頻譯碼的視差向量導(dǎo)出。具體來說,視頻譯碼器使用不同的視差向量導(dǎo)出過程,其取決于是否將視差向量用于運(yùn)動(dòng)向量預(yù)測或殘差預(yù)測。因此,視頻譯碼器可使用第一視差向量導(dǎo)出過程確定第一視差向量且可使用第二視差向量導(dǎo)出過程確定第二視差向量。視頻譯碼器使用第一視差向量以確定當(dāng)前預(yù)測單元(PU)的一組運(yùn)動(dòng)向量預(yù)測(MVP)候選者中的一 MVP候選者。視頻譯碼器使用第二視差向量來確定殘余數(shù)據(jù)。
[0008]在一個(gè)實(shí)例中,本發(fā)明描述解碼視頻數(shù)據(jù)的方法,所述方法包括:使用第一視差向量導(dǎo)出過程確定第一視差向量使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程;使用所述第一視差向量確定當(dāng)前PU的一組MVP候選者中的一 MVP候選者;使用所述第二視差向量確定殘余數(shù)據(jù);及部分基于所述殘余數(shù)據(jù)及所述組MVP候選者中的所選擇的MVP候選者而產(chǎn)生經(jīng)重構(gòu)圖片的一或多個(gè)塊。
[0009]在另一實(shí)例中,本發(fā)明描述編碼視頻數(shù)據(jù)的方法,所述方法包括:使用第一視差向量導(dǎo)出過程確定第一視差向量;使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程;使用所述第一視差向量確定當(dāng)前PU的一組MVP候選者中的一 MVP候選者;使用所述第二視差向量確定殘余數(shù)據(jù);及產(chǎn)生包含指示用于所述當(dāng)前PU的殘余數(shù)據(jù)及所述組MVP候選者中的所選擇的MVP候選者的數(shù)據(jù)的位流。
[0010]在另一實(shí)例中,本發(fā)明描述一種視頻譯碼器,其包括一或多個(gè)處理器,所述一或多個(gè)處理器經(jīng)配置以:使用第一視差向量導(dǎo)出過程確定第一視差向量;使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程;及使用所述第一視差向量確定當(dāng)前PU的一組MVP候選者中的一 MVP候選者;使用所述第二視差向量確定殘余數(shù)據(jù)。
[0011]在另一實(shí)例中,本發(fā)明描述一種視頻譯碼器,其包括:用于使用第一視差向量導(dǎo)出過程確定第一視差向量的裝置;用于使用第二視差向量導(dǎo)出過程確定第二視差向量的裝置,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程;用于使用所述第一視差向量確定當(dāng)前PU的一組MVP候選者中的一MVP候選者的裝置;及用于使用所述第二視差向量確定殘余數(shù)據(jù)的裝置。
[0012]在另一實(shí)例中,本發(fā)明描述一種其上存儲有指令的計(jì)算機(jī)可讀存儲媒體,所述指令在被執(zhí)行時(shí)配置視頻譯碼器以:使用第一視差向量導(dǎo)出過程確定第一視差向量;使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程;使用所述第一視差向量確定當(dāng)前預(yù)測單元(PU)的一組運(yùn)動(dòng)向量預(yù)測(MVP)候選者中的一 MVP候選者;及使用所述第二視差向量確定殘余數(shù)據(jù)。
[0013]本發(fā)明的一或多個(gè)實(shí)例的細(xì)節(jié)在附圖及以下描述中陳述。從描述內(nèi)容、圖式和權(quán)利要求書中將了解其它特征、目的和優(yōu)點(diǎn)。
【專利附圖】
【附圖說明】
[0014]圖1為說明可利用本發(fā)明中所描述的技術(shù)的實(shí)例性視頻譯碼系統(tǒng)的框圖。
[0015]圖2是說明相對于當(dāng)前預(yù)測單元(PU)的實(shí)例性空間運(yùn)動(dòng)向量相鄰者的概念圖。
[0016]圖3是說明一條線的實(shí)例性2: I運(yùn)動(dòng)數(shù)據(jù)壓縮的概念圖。
[0017]圖4是說明清潔隨機(jī)存取(CRA)圖片及前導(dǎo)圖片的概念圖。
[0018]圖5是說明實(shí)例性多視圖譯碼解碼次序的概念圖。
[0019]圖6是說明用于多視圖譯碼的實(shí)例性預(yù)測結(jié)構(gòu)的概念圖。
[0020]圖7是說明實(shí)例性空間視差運(yùn)動(dòng)向量的概念圖。
[0021]圖8是說明實(shí)例性時(shí)間視差運(yùn)動(dòng)向量的概念圖。
[0022]圖9是說明實(shí)例性隱式視差向量的概念圖。
[0023]圖10是說明可實(shí)施本發(fā)明中描述的技術(shù)的實(shí)例視頻編碼器的框圖。
[0024]圖11是說明可實(shí)施本發(fā)明中描述的技術(shù)的實(shí)例視頻解碼器的框圖。
[0025]圖12是說明用于確定用于高級運(yùn)動(dòng)向量預(yù)測(AMVP)模式、合并模式中的視差向量以用于運(yùn)動(dòng)向量預(yù)測及視圖間殘差預(yù)測的實(shí)例性過程的流程圖。
[0026]圖13是說明用以基于在時(shí)間上相鄰的PU來確定當(dāng)前I3U的視差向量的實(shí)例性操作的流程圖。
[0027]圖14是說明候選圖片的實(shí)例性候選區(qū)的概念圖。
[0028]圖15是說明實(shí)例性視差向量產(chǎn)生過程的流程圖。
[0029]圖16是說明用于AMVP及視圖間殘差預(yù)測模式的實(shí)例性視差向量產(chǎn)生過程的流程圖。
[0030]圖17是說明在空間上與當(dāng)前I3U相鄰的實(shí)例性位置的概念圖。
[0031]圖18是說明圖15及16的視差向量產(chǎn)生過程的實(shí)例性接續(xù)部分的流程圖。
[0032]圖19是說明圖15、16及17的視差向量產(chǎn)生過程的實(shí)例性接續(xù)部分的流程圖。
[0033]圖20是說明根據(jù)本發(fā)明的一或多種技術(shù)的視頻編碼器的實(shí)例性操作的流程圖。
[0034]圖21是說明根據(jù)本發(fā)明的一或多種技術(shù)的視頻解碼器的實(shí)例性操作的流程圖。
【具體實(shí)施方式】
[0035]在高效率視頻譯碼(HEVC)中,視頻編碼器可使用合并模式或高級運(yùn)動(dòng)向量預(yù)測(AMVP)模式用信號發(fā)送當(dāng)前預(yù)測單元(PU)的運(yùn)動(dòng)信息。當(dāng)前PU的運(yùn)動(dòng)信息可包含一或多個(gè)運(yùn)動(dòng)向量(MV)、一或多個(gè)參考索弓丨及預(yù)測方向指示符。
[0036]在視頻編碼器使用合并模式用信號發(fā)送當(dāng)前的運(yùn)動(dòng)信息時(shí),視頻編碼器產(chǎn)生包含一組合并候選者的合并候選者列表。所述合并候選者列表可包含指定在空間上或在時(shí)間上與當(dāng)前PU相鄰的的運(yùn)動(dòng)信息的合并候選者。在空間上與當(dāng)前相鄰的PU可在與當(dāng)前I3U相同的圖片中。在時(shí)間上與當(dāng)前I3U相鄰的PU可至少部分與當(dāng)前PU位于同一地點(diǎn),但在與含有當(dāng)前PU的圖片不同的時(shí)間實(shí)例處出現(xiàn)的圖片中。視頻編碼器可從合并候選者列表選擇合并候選者中的一者且在所述合并候選者列表內(nèi)用信號發(fā)送所選擇的合并候選者的位置。視頻解碼器可重構(gòu)相同的合并候選者列表且可基于所述用信號發(fā)送的位置來確定所選擇的合并候選者。視頻解碼器可隨后確定當(dāng)前PU的運(yùn)動(dòng)信息與由所選擇的合并候選者指定的運(yùn)動(dòng)信息相同。
[0037]在視頻編碼器使用AMVP模式用信號發(fā)送當(dāng)前的運(yùn)動(dòng)信息時(shí),視頻編碼器產(chǎn)生包含一組AMVP候選者的AMVP候選者列表。所述AMVP候選者列表可包含指定在空間上或在時(shí)間上與當(dāng)前I3U相鄰的PU的運(yùn)動(dòng)信息的AMVP候選者。此外,視頻編碼器可從AMVP候選者列表選擇一 AMVP候選者。視頻編碼器可產(chǎn)生當(dāng)前的至少一個(gè)運(yùn)動(dòng)向量差(MVD)。MVD可指示當(dāng)前的運(yùn)動(dòng)向量與所選擇的AMVP候選者的運(yùn)動(dòng)向量之間的差。視頻編碼器可用信號發(fā)送MVD、參考索引及指示AMVP候選者列表內(nèi)的所選擇的AMVP候選者的位置的語法元素。視頻解碼器可重構(gòu)相同的AMVP候選者列表且可基于用信號發(fā)送的位置來確定所選擇的AMVP候選者。視頻解碼器可隨后通過將MVD添加到由所選擇的AMVP候選者指定的運(yùn)動(dòng)向量來確定當(dāng)前I3U的運(yùn)動(dòng)向量。
[0038]當(dāng)前正致力于產(chǎn)生HEVC的3維視頻譯碼(3DV)擴(kuò)展,被稱作3D-HEVC。3D-HEVC提供同一場景的來自不同視點(diǎn)的多個(gè)視圖。在3D-HEVC中,在相同時(shí)間實(shí)例處出現(xiàn)的不同視圖的圖片與相同的“存取單元”相關(guān)聯(lián)。3D-HEVC支持視圖間預(yù)測。視圖間預(yù)測類似于用于標(biāo)準(zhǔn)HEVC中的運(yùn)動(dòng)補(bǔ)償及可使用相同的語法元素。然而,在視頻譯碼器對執(zhí)行視圖間預(yù)測時(shí),視頻譯碼器可使用在與PU相同的存取單元中但在不同視圖中的圖片作為參考圖片列表中的參考圖片。相比而言,常規(guī)的運(yùn)動(dòng)補(bǔ)償僅使用不同存取單元中的圖片作為參考圖片。
[0039]如上文所提及,在當(dāng)前的運(yùn)動(dòng)信息是使用合并模式或AMVP模式用信號發(fā)送時(shí),視頻譯碼器(例如,視頻編碼器或視頻解碼器)可產(chǎn)生候選者列表(例如,合并候選者列表或AMVP候選者列表)。在3D-HEVC中,所述候選者列表可包含視圖間預(yù)測候選者。視頻編碼器可以視頻譯碼器使用候選者列表中的另一候選者相同的方式使用此視圖間預(yù)測候選者。
[0040]視圖間預(yù)測候選者指定參考的運(yùn)動(dòng)信息。所述參考可為參考圖片的PU。所述參考圖片可在與當(dāng)前I3U相同的存取單元中,但在與當(dāng)前PU不同的視圖中。為了確定參考PU,視頻譯碼器可確定當(dāng)前PU的視差向量。當(dāng)前PU的視差向量可指示當(dāng)前I3U與參考圖片內(nèi)的位置之間的水平空間移位。所述參考PU可為覆蓋由視差向量指示的位置的參考圖片的W。
[0041]此外,視頻譯碼器可使用視差向量來定位參考視圖中的殘余塊。此殘余塊可在本文中被稱為殘余參考塊。在針對塊啟用殘差預(yù)測時(shí),視頻解碼器可通過將殘余參考塊添加到當(dāng)前塊的預(yù)測性塊及當(dāng)前塊的用信號發(fā)送的殘余塊而重構(gòu)當(dāng)前塊。
[0042]在一些情況下,視頻譯碼器可基于空間視差向量(SDV)、時(shí)間視差向量(TDV)或隱式視差向量(IDV)來確定當(dāng)前I3U的視差向量。SDV是在空間上與當(dāng)前PU相鄰的視差運(yùn)動(dòng)向量。TDV是在與當(dāng)前PU相同的視圖中但在與當(dāng)前I3U不同的存取單元中的I3U的視差運(yùn)動(dòng)向量。如果使用視圖間運(yùn)動(dòng)預(yù)測來譯碼當(dāng)前PU的在空間上或在時(shí)間上相鄰的W,那么所述在空間上或在時(shí)間上相鄰的PU的視差向量是IDV。視差運(yùn)動(dòng)向量是指向視圖間參考圖片內(nèi)的位置的運(yùn)動(dòng)向量。視圖間參考圖片是在與當(dāng)前PU相同的存取單元中但在不同的視圖中的圖片。
[0043]此外,為了確定當(dāng)前的視差向量,視頻譯碼器可產(chǎn)生包含一組視差向量候選者的視差向量候選者列表。所述視差向量候選者中的每一者指定上文識別的SDV、TDV及IDV中的一者的視差向量。視頻譯碼器可隨后從所述視差向量候選者列表選擇視差向量候選者中的一者。視頻譯碼器可將所選擇的視差運(yùn)動(dòng)向量的水平分量用作當(dāng)前PU的視差向量。以此方式確定當(dāng)前PU的視差向量可為高效的,這是因?yàn)椴恍枰谖涣髦酗@式地用信號發(fā)送當(dāng)前PU的視差向量或用于當(dāng)前視圖分量的深度圖。
[0044]在其它實(shí)例中,視頻譯碼器本身不產(chǎn)生視差向量候選者列表。而是,視頻譯碼器根據(jù)特定的預(yù)定義次序來處理在空間上及在時(shí)間上相鄰的PU。在視頻譯碼器確定在空間上或在時(shí)間上相鄰的I3U具有SDV、TDV或IDV時(shí),視頻譯碼器可將所確定的視差運(yùn)動(dòng)向量(即,所確定的SDV、TDV或IDV)的水平分量用作當(dāng)前I3U的視差向量。
[0045]因?yàn)楫?dāng)前I3U的視差向量是從視差運(yùn)動(dòng)向量(即,SDV、TDV及IDV)導(dǎo)出的,所以針對當(dāng)前PU所確定的視差向量可能不如在所述視差向量是從深度圖確定時(shí)那么準(zhǔn)確。此外,視頻譯碼器通常從視差向量候選者列表選擇第一可用的視差向量。然而,來自其它相鄰PU的其它視差向量可比第一可用的視差向量更準(zhǔn)確。視差向量上的不準(zhǔn)確性可降低譯碼效率,且進(jìn)而增加所得位流的大小。
[0046]本發(fā)明的技術(shù)可解決這些問題中的一或多者。舉例來說,視頻譯碼器可使用第一視差向量導(dǎo)出過程確定第一視差向量。此外,視頻譯碼器可使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程。視頻譯碼器可使用第一視差向量以確定當(dāng)前預(yù)測單元(PU)的一組運(yùn)動(dòng)向量預(yù)測(MVP)候選者中的一 MVP候選者。另外,視頻譯碼器可使用第二視差向量來確定殘余數(shù)據(jù)。通過使用不同的視差向量來用于視圖間運(yùn)動(dòng)向量預(yù)測及視圖間殘差預(yù)測,視頻譯碼器可獲得使得視頻譯碼器能夠更準(zhǔn)確地預(yù)測運(yùn)動(dòng)向量及殘余數(shù)據(jù)的視差向量。
[0047]圖1為說明可利用本發(fā)明的技術(shù)的實(shí)例性視頻譯碼系統(tǒng)10的框圖。如本文中所使用,術(shù)語“視頻譯碼器”一般指代視頻編碼器和視頻解碼器兩者。在本發(fā)明中,術(shù)語“視頻譯碼”或“譯碼”可一般指代視頻編碼或視頻解碼。
[0048]如圖1中所示,視頻譯碼系統(tǒng)10包含源裝置12和目的地裝置14。源裝置12產(chǎn)生經(jīng)編碼視頻數(shù)據(jù)。因此,源裝置12可被稱作視頻編碼裝置或視頻編碼設(shè)備。目的地裝置14可對由源裝置12產(chǎn)生的經(jīng)編碼視頻數(shù)據(jù)進(jìn)行解碼。因此,目的地裝置14可被稱作視頻解碼裝置或視頻解碼設(shè)備。源裝置12及目的地裝置14可為視頻譯碼裝置或視頻譯碼設(shè)備的實(shí)例。
[0049]源裝置12和目的地裝置14可包括廣泛范圍的裝置,包含桌上型計(jì)算機(jī)、移動(dòng)計(jì)算裝置、筆記本(例如,膝上型)計(jì)算機(jī)、平板計(jì)算機(jī)、機(jī)頂盒、電話手持機(jī)(例如,所謂的“智能”電話)、電視、相機(jī)、顯示裝置、數(shù)字媒體播放器、視頻游戲控制臺、汽車內(nèi)計(jì)算機(jī)等。
[0050]目的地裝置14可經(jīng)由通道16從源裝置12接收經(jīng)編碼視頻數(shù)據(jù)。通道16可包括能夠?qū)⒔?jīng)編碼視頻數(shù)據(jù)從源裝置12移動(dòng)到目的地裝置14的一或多個(gè)媒體或裝置。在一個(gè)實(shí)例中,通道16可包括使得源裝置12能夠?qū)崟r(shí)地將經(jīng)編碼視頻數(shù)據(jù)直接發(fā)射到目的地裝置14的一或多個(gè)通信媒體。在此實(shí)例中,源裝置12可根據(jù)例如無線通信協(xié)議等通信標(biāo)準(zhǔn)來調(diào)制經(jīng)編碼視頻數(shù)據(jù),且可將經(jīng)調(diào)制視頻數(shù)據(jù)發(fā)射到目的地裝置14。所述一或多個(gè)通信媒體可包含無線或有線通信媒體,例如射頻(RF)頻譜或一或多條物理傳輸線。所述一或多個(gè)通信媒體可形成例如局域網(wǎng)、廣域網(wǎng)或全球網(wǎng)絡(luò)(例如因特網(wǎng))的基于包的網(wǎng)絡(luò)的部分。所述一或多個(gè)通信媒體可包含促進(jìn)從源裝置12到目的地裝置14的通信的路由器、交換器、基站或其它設(shè)備。
[0051]在另一實(shí)例中,通道16可包含存儲由源裝置12產(chǎn)生的經(jīng)編碼視頻數(shù)據(jù)的存儲媒體。在此實(shí)例中,目的地裝置14可(例如)經(jīng)由磁盤存取或卡存取而存取存儲媒體。所述存儲媒體可包含多種本地存取的數(shù)據(jù)存儲媒體,例如藍(lán)光光盤、DVD、⑶-ROM、快閃存儲器,或用于存儲經(jīng)編碼視頻數(shù)據(jù)的其它合適的數(shù)字存儲媒體。
[0052]在進(jìn)一步的實(shí)例中,通道16可包含文件服務(wù)器或存儲由源裝置12產(chǎn)生的經(jīng)編碼視頻數(shù)據(jù)的另一中間存儲裝置。在此實(shí)例中,目的地裝置14可經(jīng)由流式傳輸或下載來存取存儲于文件服務(wù)器或其它中間存儲裝置處的經(jīng)編碼視頻數(shù)據(jù)。文件服務(wù)器可為能夠存儲經(jīng)編碼視頻數(shù)據(jù)和將所述經(jīng)編碼視頻數(shù)據(jù)發(fā)射到目的地裝置14的類型的服務(wù)器。實(shí)例性文件服務(wù)器包含網(wǎng)絡(luò)服務(wù)器(例如,用于網(wǎng)站)、文件傳遞協(xié)議(FTP)服務(wù)器、網(wǎng)絡(luò)附接式存儲(NAS)裝置,或本地磁盤驅(qū)動(dòng)器。
[0053]目的地裝置14可通過標(biāo)準(zhǔn)的數(shù)據(jù)連接(例如因特網(wǎng)連接)來存取經(jīng)編碼視頻數(shù)據(jù)。數(shù)據(jù)連接的實(shí)例性類型可包含無線通道(例如,W1-Fi連接)、有線連接(例如,DSLJf線調(diào)制解調(diào)器,等等),或適合于存取存儲于文件服務(wù)器上的經(jīng)編碼視頻數(shù)據(jù)的以上兩者的組合。經(jīng)編碼視頻數(shù)據(jù)從文件服務(wù)器的傳輸可為流式傳輸、下載傳輸,或兩者的組合。
[0054]本發(fā)明的技術(shù)不限于無線應(yīng)用或環(huán)境。所述技術(shù)可應(yīng)用于支持多種多媒體應(yīng)用(例如,空中電視廣播、有線電視傳輸、衛(wèi)星電視發(fā)射、流式視頻傳輸(例如,經(jīng)由因特網(wǎng)))的視頻譯碼、供存儲于數(shù)據(jù)存儲媒體上的視頻數(shù)據(jù)的編碼、存儲于數(shù)據(jù)存儲媒體上的視頻數(shù)據(jù)的解碼,或其它應(yīng)用。在一些實(shí)例中,視頻譯碼系統(tǒng)10可經(jīng)配置以支持單向或雙向視頻傳輸以支持例如視頻流式傳輸、視頻回放、視頻廣播和/或視頻電話等應(yīng)用。
[0055]圖1僅是實(shí)例,且本發(fā)明的技術(shù)可應(yīng)用于在編碼裝置與解碼裝置之間不一定包含任何數(shù)據(jù)通信的視頻譯碼環(huán)境(例如,視頻編碼或視頻解碼)。在其它實(shí)例中,從本地存儲器檢索數(shù)據(jù),經(jīng)由網(wǎng)絡(luò)流式傳輸數(shù)據(jù)等。視頻編碼裝置可編碼數(shù)據(jù)且將數(shù)據(jù)存儲到存儲器,且/或視頻解碼裝置可從存儲器檢索并解碼數(shù)據(jù)。在許多實(shí)例中,編碼和解碼是由彼此不通信而是僅將數(shù)據(jù)編碼到存儲器和/或從存儲器檢索并解碼數(shù)據(jù)的裝置執(zhí)行。
[0056]在圖1的實(shí)例中,源裝置12包含視頻源18、視頻編碼器20和輸出接口 22。在一些實(shí)例中,輸出接口 22可包含調(diào)制器/解調(diào)器(調(diào)制解調(diào)器)和/或發(fā)射器。視頻源18可包含視頻俘獲裝置(例如,攝像機(jī)、含有先前俘獲的視頻數(shù)據(jù)的視頻存檔、用以從視頻內(nèi)容提供者接收視頻數(shù)據(jù)的視頻饋送接口),和/或用于產(chǎn)生視頻數(shù)據(jù)的計(jì)算機(jī)圖形系統(tǒng),或此類視頻數(shù)據(jù)源的組合。
[0057]視頻編碼器20可編碼來自視頻源18的視頻數(shù)據(jù)。在一些實(shí)例中,源裝置12經(jīng)由輸出接口 22將經(jīng)編碼視頻數(shù)據(jù)直接發(fā)射到目的地裝置14。在其它實(shí)例中,還可將經(jīng)編碼視頻數(shù)據(jù)存儲到存儲媒體或文件服務(wù)器上以供稍后由目的地裝置14存取以進(jìn)行解碼和/或回放。
[0058]在圖1的實(shí)例中,目的地裝置14包含輸入接口 28、視頻解碼器30和顯示裝置32。在一些實(shí)例中,輸入接口 28包含接收器和/或調(diào)制器。輸入接口 28可經(jīng)由通道16接收經(jīng)編碼視頻數(shù)據(jù)。顯示裝置32可與目的地裝置14 一起集成,或可在所述目的地裝置外部。一般來說,顯示裝置32顯示經(jīng)解碼視頻數(shù)據(jù)。顯示裝置32可包括多種顯示裝置,例如,液晶顯示器(LCD)、等離子體顯示器、有機(jī)發(fā)光二極管(OLED)顯示器或另一類型的顯示裝置。
[0059]視頻編碼器20和視頻解碼器30各自可經(jīng)實(shí)施為例如一或多個(gè)微處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、離散邏輯、硬件或其任何組合等多種合適電路中的任一者。在所述技術(shù)部分地在軟件中實(shí)施的情況下,一裝置可將用于軟件的指令存儲于合適的非暫時(shí)性計(jì)算機(jī)可讀存儲媒體中,且可在硬件中使用一或多個(gè)處理器來執(zhí)行所述指令以執(zhí)行本發(fā)明的技術(shù)??蓪⑶笆鰞?nèi)容(包含硬件、軟件、硬件與軟件的組合等)中的任一者視為一或多個(gè)處理器。視頻編碼器20和視頻解碼器30中的每一者可包含于一或多個(gè)編碼器或解碼器中,所述視頻編碼器和視頻解碼器中的任一者可在相應(yīng)裝置中被集成為組合式編碼器/解碼器(CODEC)的一部分。
[0060]本發(fā)明可一般涉及視頻編碼器20將某一信息“用信號發(fā)送”到另一裝置,例如視頻解碼器30。術(shù)語“信令”可一般指代用于對經(jīng)壓縮視頻數(shù)據(jù)進(jìn)行解碼的語法元素和/或其它數(shù)據(jù)的通信。此通信可實(shí)時(shí)地或準(zhǔn)實(shí)時(shí)地發(fā)生。替代地,此通信可在一段時(shí)間內(nèi)發(fā)生,例如可能在編碼時(shí)在經(jīng)編碼位流中將語法元素存儲到計(jì)算機(jī)可讀存儲媒體(例如,可經(jīng)由文件服務(wù)器或流式傳輸服務(wù)器存取的存儲媒體或本地可存取的存儲裝置)時(shí)發(fā)生,所述語法元素隨后可由解碼裝置在被存儲到此媒體之后的任何時(shí)間處檢索。
[0061]在一些實(shí)例中,視頻編碼器20及視頻解碼器30根據(jù)視頻壓縮標(biāo)準(zhǔn)而操作,例如IS0/IEC MPEG-4視覺及ITU-T H.264 (也稱為IS0/IEC MPEG-4 AVC),包含其可縮放視頻譯碼(SVC)擴(kuò)展、多視圖視頻譯碼(MVC)擴(kuò)展及基于MVC的3DV擴(kuò)展。在一些情況下,符合基于MVC的3DV的任何法定位流始終含有順應(yīng)MVC簡檔(例如,立體聲高簡檔)的子位流。此夕卜,正在致力于產(chǎn)生H.264/AVC的三維視頻(3DV)譯碼擴(kuò)展,即基于AVC的3DV。在其它實(shí)例中,視頻編碼器20及視頻解碼器30可根據(jù)以下各者而操作:ITU-T H.26UIS0/IEC MPEG-1視覺、ITU-T H.262 或 IS0/IEC MPEG-2 視覺、ITU-T H.263、IS0/IEC MPEG-4 視覺及 ITU-TH.264、IS0/IEC 視覺。
[0062]在圖1的實(shí)例中,視頻編碼器20和視頻解碼器30可根據(jù)目前由ITU-T視頻譯碼專家組(VCEG)以及IS0/IEC運(yùn)動(dòng)圖片專家組(MPEG)的視頻譯碼聯(lián)合合作小組(JCT-VC)開發(fā)的高效率視頻譯碼(HEVC)標(biāo)準(zhǔn)來操作。被稱作“HEVC工作草案6”的即將到來的HEVC標(biāo)準(zhǔn)的草案描述于布洛斯(Bross)等人的“高效率視頻譯碼(HEVC)文本規(guī)范草案6 (HighEfficiency Video Coding (HEVC) text specificat1n draft 6)”中,ITU-T SG16WP3 和 ISO/IEC JTC1/SC29/WG11的聯(lián)合合作視頻譯碼小組(JCT-VC)第7次會議:日內(nèi)瓦,瑞士,2011年 11 月,其至 2013 年 6 月 13 日為止可從 http://phenix.1t-sudparis.eu/jet/doc_end_user/documents/8_San % 20Jose/wgll/JCTVC-H1003-vl.zip 下載。被稱作 “HEVC 工作草案9”的即將到來的HEVC標(biāo)準(zhǔn)的另一草案描述于布洛斯(Bross)等人的“高效率視頻譯碼(HEVC)文本規(guī)范草案 9 (High Efficiency Video Coding (HEVC) text specificat1n draft6)” 中,ITU-T SG16 WP3 和 IS0/IEC JTC1/SC29/WG11 的聯(lián)合合作視頻譯碼小組(JCT-VC)第11次會議:中國上海,2012年10月,其至2013年6月13日為止可從http://phenix.1nt-evry.fr/jet/doc_end_user/documents/1l_Shanghai/wglI/JCTVC-K1003-vl3.zip 下載。
[0063]此外,正在致力于產(chǎn)生可縮放視頻譯碼、多視圖譯碼,及HEVC的3DV擴(kuò)展。HEVC的SVC擴(kuò)展可被稱為SHEVC。HEVC的3DV擴(kuò)展可被稱為基于HEVC的3DV或3D-HEVC。3D-HEVC至少部分基于以下文獻(xiàn)中提出的解決方案:施瓦茨等人的“對夫朗和斐的3D視頻譯碼技術(shù)提議的描述HHI (HEVC相容的配置A) (Descript1n of3D Video CodingTechnology Proposal by Fraunhofer HHI (HEVC compatible configurat1n A)),,,ISO/IEC JTC1/SC29/WG11,文獻(xiàn) MPEG11/M22570,瑞士日內(nèi)瓦,2011 年 11 月 /12 月,下文稱為“m22570”,及施瓦茨等人的“對夫朗和斐的3D視頻譯碼技術(shù)提議的描述HHI (HEVC相容的配置 B (Descript1n of 3D Video Coding Technology Proposal by Fraunhofer HHI(HEVCcompatible configurat1n B))),,,ISO/IEC JTC1/SC29/WG11,文獻(xiàn) MPEG11/M22571,瑞士日內(nèi)瓦,2011年11月/12月,下文稱為“m22571”對3D-HEVC的參考軟件描述可在以下文獻(xiàn)處得到:施瓦茨等人的“用于基于HEVC的3D視頻譯碼的考慮中的測試模型(Test Modelunder Considerat1n for HEVC based 3D video coding)”, ISO/IEC JTC1/SC29/WG11MPEG2011/N12559,美國圣何塞市,2012年2月。截至2013年6月13日可從https://hevc.hh1.fraunhofer.de/svn/svn_3DVCSoftware/tags/HTM-3.0/ 得到參考軟件,即 HTM 版本3.0。
[0064]在HEVC及其它視頻譯碼標(biāo)準(zhǔn)中,視頻序列通常包含一連串圖片。圖片也可被稱作“幀”。圖片可以包含三個(gè)樣本陣列,表示SSpSa以及s&。&是亮度樣本的二維陣列(即,塊)。Sa是Cb色度樣本的二維陣列。S&是Cr色度樣本的二維陣列。色度(chrominance)樣本在本文中還可以被稱為“色度(chroma)”樣本。在其它情況下,圖片可為單色的且可僅包含亮度樣本陣列。
[0065]為了產(chǎn)生圖片的經(jīng)編碼表示,視頻編碼器20可產(chǎn)生一組譯碼樹單元(CTU)。CTU中的每一者可以是亮度樣本的譯碼樹塊、色度樣本的兩個(gè)對應(yīng)的譯碼樹塊,以及用以對譯碼樹塊的樣本進(jìn)行譯碼的語法結(jié)構(gòu)。譯碼樹塊可以是樣本的NXN塊。CTU也可以被稱為“樹塊”或“最大譯碼單元”(LCU)。HEVC的CTU可廣義上類似于其它視頻譯碼標(biāo)準(zhǔn)(例如,H.264/AVC)的宏塊。然而,CTU不一定受限于特定大小,且可包含一或多個(gè)譯碼單元(⑶)。切片可包含在光柵掃描中連續(xù)排序的整數(shù)數(shù)目的CTU。
[0066]本發(fā)明可使用術(shù)語“視頻單元”或“視頻塊”來指代一或多個(gè)樣本塊及用于譯碼所述一或多個(gè)樣本塊的樣本的語法結(jié)構(gòu)。實(shí)例類型的視頻單元可包含CTU、CU、PU、變換單元(TU)、宏塊、宏塊分區(qū)等。
[0067]為了產(chǎn)生經(jīng)譯碼的CTU,視頻編碼器20可以對CTU的譯碼樹塊遞歸地執(zhí)行四叉樹分割,以將譯碼樹塊劃分為譯碼塊,因此命名為“譯碼樹單元”。譯碼塊是樣本的NXN塊。CU可以是具有亮度樣本陣列、Cb樣本陣列和Cr樣本陣列的圖片的亮度樣本的譯碼塊,以及色度樣本的兩個(gè)對應(yīng)的譯碼塊,以及用以對譯碼塊的樣本進(jìn)行譯碼的語法結(jié)構(gòu)。視頻編碼器20可以將CU的譯碼塊分割成一或多個(gè)預(yù)測塊。預(yù)測塊可以是應(yīng)用相同預(yù)測的樣本的矩形(即,正方形或非正方形)塊。CU的預(yù)測單元(PU)可為圖片的亮度樣本的預(yù)測塊、所述圖片的色度樣本的兩個(gè)對應(yīng)預(yù)測塊,及用于預(yù)測所述預(yù)測塊樣本的語法結(jié)構(gòu)。視頻編碼器20可以產(chǎn)生用于CU的每一 PU的亮度預(yù)測塊、Cb預(yù)測塊以及Cr預(yù)測塊的預(yù)測性亮度塊、Cb塊以及Cr塊。
[0068]視頻編碼器20可使用幀內(nèi)預(yù)測或幀間預(yù)測來產(chǎn)生的預(yù)測性塊。在視頻編碼器20使用幀內(nèi)預(yù)測來產(chǎn)生PU的預(yù)測性塊的情況下,視頻編碼器20可基于與所述PU相關(guān)聯(lián)的圖片的經(jīng)解碼樣本來產(chǎn)生PU的預(yù)測性塊。
[0069]在視頻編碼器20使用幀內(nèi)預(yù)測來產(chǎn)生的預(yù)測性塊的情況下,視頻編碼器20可基于不同于與所述PU相關(guān)聯(lián)的圖片的一或多個(gè)圖片的經(jīng)解碼樣本來產(chǎn)生的預(yù)測性塊。幀間預(yù)測可以是單向幀間預(yù)測(即,單向預(yù)測)或雙向幀間預(yù)測(即,雙向預(yù)測)。為了執(zhí)行單向預(yù)測或雙向預(yù)測,視頻編碼器20可以產(chǎn)生用于當(dāng)前切片的第一參考圖片列表(RefPicListO)以及第二參考圖片列表(RefPicListl)。參考圖片列表中的每一者可以包含一或多個(gè)參考圖片。當(dāng)使用單向預(yù)測時(shí),視頻編碼器20可以搜索RefPicListO以及RefPicListl中的任一者或兩者中的參考圖片,以確定參考圖片內(nèi)的參考位置。此外,當(dāng)使用單向預(yù)測時(shí),視頻編碼器20可以至少部分基于對應(yīng)于參考位置的樣本產(chǎn)生用于的預(yù)測性樣本塊。此外,在使用單向預(yù)測時(shí),視頻編碼器20可產(chǎn)生指示的預(yù)測塊與參考位置之間的空間移位的單一運(yùn)動(dòng)向量。為了指示PU的預(yù)測塊與參考位置之間的空間移位,運(yùn)動(dòng)向量可以包含指定PU的預(yù)測塊與參考位置之間的水平移位的水平分量并且可以包含指定PU的預(yù)測塊與參考位置之間的垂直移位的垂直分量。
[0070]在使用雙向預(yù)測來編碼I3U時(shí),視頻編碼器20可確定RefPicListO中的參考圖片中的第一參考位置及RefPicListl中的參考圖片中的第二參考位置。視頻編碼器20可隨后至少部分基于對應(yīng)于第一和第二參考位置的樣本而產(chǎn)生用于所述PU的預(yù)測性塊。此外,當(dāng)使用雙向預(yù)測對PU進(jìn)行編碼時(shí),視頻編碼器20可以產(chǎn)生指示PU的樣本塊與第一參考位置之間的空間移位的第一運(yùn)動(dòng)向量,以及指示PU的預(yù)測塊與第二參考位置之間的空間移位的第二運(yùn)動(dòng)向量。
[0071]在視頻編碼器20產(chǎn)生⑶的一或多個(gè)I3U的預(yù)測性亮度、Cb及Cr塊之后,視頻編碼器20可產(chǎn)生CU的亮度殘余塊。CU的亮度殘余塊中的每一樣本可指示CU的預(yù)測性亮度塊中的一者中的亮度樣本與CU的原始亮度譯碼塊中的對應(yīng)樣本之間的差異。另外,視頻編碼器20可產(chǎn)生⑶的Cb殘余塊。⑶的Cb殘余塊中的每一樣本可以指示⑶的預(yù)測性Cb塊中的一者中的Cb樣本與CU的原始Cb譯碼塊中的對應(yīng)樣本之間的差異。視頻編碼器20還可產(chǎn)生⑶的Cr殘余塊。⑶的Cr殘余塊中的每一樣本可以指示⑶的預(yù)測性Cr塊中的一者中的Cr樣本與CU的原始Cr譯碼塊中的對應(yīng)樣本之間的差異。
[0072]此外,視頻編碼器20可使用四叉樹分割將⑶的亮度、Cb及Cr殘余塊分割成一或多個(gè)亮度、Cb及Cr變換塊。變換塊可以是對其應(yīng)用相同變換的樣本的矩形塊。CU的變換單元(TU)可以是亮度樣本的變換塊、色度樣本的兩個(gè)對應(yīng)的變換塊,以及用于對變換塊樣本進(jìn)行變換的語法結(jié)構(gòu)。因此,CU的每一 TU可以與亮度變換塊、Cb變換塊以及Cr變換塊相關(guān)聯(lián)。與TU相關(guān)聯(lián)的亮度變換塊可以是CU的亮度殘余塊的子塊。Cb變換塊可以是CU的Cb殘余塊的子塊。Cr變換塊可以是CU的Cr殘余塊的子塊。
[0073]視頻編碼器20將一或多個(gè)變換應(yīng)用到TU的亮度變換塊以產(chǎn)生TU的亮度系數(shù)塊。系數(shù)塊可為變換系數(shù)的二維陣列。變換系數(shù)可以是標(biāo)量。視頻編碼器20可以將一或多個(gè)變換應(yīng)用到TU的Cb變換塊以產(chǎn)生TU的Cb系數(shù)塊。視頻編碼器20可以將一或多個(gè)變換應(yīng)用到TU的Cr變換塊以產(chǎn)生TU的Cr系數(shù)塊。
[0074]在產(chǎn)生系數(shù)塊(例如,亮度系數(shù)塊、Cb系數(shù)塊或Cr系數(shù)塊)之后,視頻編碼器20可量化系數(shù)塊。量化一般指代將變換系數(shù)量化以可能地減少用于表示變換系數(shù)的數(shù)據(jù)量從而提供進(jìn)一步壓縮的過程。此外,視頻編碼器20可將變換系數(shù)反量化且對變換系數(shù)應(yīng)用反變換以便重構(gòu)圖片的⑶的TU的變換塊。視頻編碼器20可使用⑶的TU的經(jīng)重構(gòu)變換塊以及⑶的的預(yù)測性塊以重構(gòu)⑶的譯碼塊。通過重構(gòu)圖片的每一⑶的譯碼塊,視頻編碼器20可以重構(gòu)所述圖片。視頻編碼器20可將經(jīng)重構(gòu)圖片存儲在經(jīng)解碼圖片緩沖器(DPB)中。視頻編碼器20可以使用DPB中的經(jīng)重構(gòu)圖片來用于幀間預(yù)測及幀內(nèi)預(yù)測。
[0075]在視頻編碼器20量化系數(shù)塊之后,視頻編碼器20可以對指示經(jīng)量化變換系數(shù)的語法元素進(jìn)行熵編碼。例如,視頻編碼器20可以對指示經(jīng)量化變換系數(shù)的語法元素執(zhí)行上下文自適應(yīng)二進(jìn)制算術(shù)譯碼(CABAC)。視頻編碼器20可以在位流中輸出經(jīng)熵編碼語法元素。
[0076]視頻編碼器20可輸出包含形成經(jīng)譯碼圖片及相關(guān)聯(lián)數(shù)據(jù)的表示的位序列的位流。所述位流可包括網(wǎng)絡(luò)抽象層(NAL)單元的序列。所述NAL單元中的每一者包含NAL單元標(biāo)頭且囊封原始字節(jié)序列有效負(fù)載(RBSP)。NAL單元標(biāo)頭可包含指示NAL單元類型代碼的語法元素。由NAL單元的NAL單元標(biāo)頭指定的所述NAL單元類型代碼指示NAL單元的類型。RBSP可為含有囊封在NAL單元內(nèi)的整數(shù)數(shù)目個(gè)字節(jié)的語法結(jié)構(gòu)。在一些情況下,RBSP包含零個(gè)位。
[0077]不同類型的NAL單元可囊封不同類型的RBSP。舉例來說,第一類型的NAL單元可囊封用于圖片參數(shù)集(PPS)的RBSP,第二類型的NAL單元可囊封用于經(jīng)譯碼切片的RBSP,第三類型的NAL單元可囊封用于補(bǔ)充增強(qiáng)信息(SEI)的RBSP,等等。PPS是可含有適用于零個(gè)或更多的整個(gè)經(jīng)譯碼圖片的語法元素的語法結(jié)構(gòu)。囊封用于視頻譯碼數(shù)據(jù)的RBSP(與用于參數(shù)集及SEI消息的RBSP相比)的NAL單元可被稱為視頻譯碼層(VCL)NAL單元。囊封經(jīng)譯碼切片的NAL單元可在本文中被稱為經(jīng)譯碼切片NAL單元。所述經(jīng)譯碼切片的RBSP可包含切片標(biāo)頭和切片數(shù)據(jù)。
[0078]NAL單兀的標(biāo)頭包含nuh_reserved_zero_6bits語法兀素。如果NAL單兀涉及多視圖譯碼、3DV譯碼或可縮放視頻譯碼中的基礎(chǔ)層,那么NAL單元的nuh_reserved_zero_6bits語法元素等于O??稍诓粎⒖嘉涣鞯娜魏纹渌鼘又械臄?shù)據(jù)的情況下解碼位流的基礎(chǔ)層中的數(shù)據(jù)。如果NAL單元不涉及多視圖譯碼、3DV或可縮放視頻譯碼中的基礎(chǔ)層,那么nuh_reserved_zero_6bits語法元素可具有其它非零值。具體地說,如果NAL單元不涉及多視圖譯碼、3DV或可縮放視頻譯碼中的基礎(chǔ)層,那么NAL單元的nuh_reserved_zero_6bits語法元素指定層識別符。
[0079]此外,可在不參考相同層內(nèi)的其它圖片的情況下解碼層內(nèi)的一些圖片。因此,可從位流移除囊封一層的某些圖片的數(shù)據(jù)的NAL單元而不影響所述層中的其它圖片的可解碼性。舉例來說,具有偶數(shù)圖片次序計(jì)數(shù)(POC)值的圖片可為可在不參考具有奇數(shù)POC值的圖片的情況下解碼的。POC是與經(jīng)譯碼圖片相關(guān)聯(lián)的變量,且具有隨著在輸出次序中圖片位置的增加(相對于在解碼次序中的先前即時(shí)解碼刷新(IDR)圖片)而增加的值(如果有的話)。移除囊封此些圖片的數(shù)據(jù)的NAL單元可能會降低位流的幀速率。層內(nèi)的可在不參考所述層內(nèi)的其它圖片而解碼的圖片的子集可在本文中被稱為子層。
[0080]NAL 單??砂?nuh_temporal_id_plusl 語法兀素。NAL 單兀的 nuh_temporal_id_plusl語法元素可指定NAL單元的時(shí)間識別符(即,temporal_id)。如果第一 NAL單元的時(shí)間識別符小于第二 NAL單元的時(shí)間識別符,那么可在不參考由第二 NAL單元囊封的數(shù)據(jù)的情況下解碼由第一 NAL單元囊封的數(shù)據(jù)。
[0081]位流的操作點(diǎn)各自與一組層識別符(即,一組nuh_reserved_zero_6bits值)及一時(shí)間識別符相關(guān)聯(lián)。所述組層識別符可表示為OpLayerldSet且所述時(shí)間識別符可表示為TemporallD。如果NAL單元的層識別符在操作點(diǎn)的一組層識別符中,且NAL單元的時(shí)間識別符小于或等于所述操作點(diǎn)的時(shí)間識別符,那么所述NAL單元與所述操作點(diǎn)相關(guān)聯(lián)。操作點(diǎn)表示是與一操作點(diǎn)相關(guān)聯(lián)的位流子集(即,子位流)。一操作點(diǎn)的操作點(diǎn)表示可包含與所述操作點(diǎn)相關(guān)聯(lián)的每一 NAL單元。所述操作點(diǎn)表示不包含不與所述操作點(diǎn)相關(guān)聯(lián)的VCLNAL單元。
[0082]外部源可指定用于一操作點(diǎn)的一組目標(biāo)層識別符。舉例來說,例如媒體感知網(wǎng)絡(luò)元件(MANE)或內(nèi)容傳遞網(wǎng)絡(luò)(CDN)裝置等中間網(wǎng)絡(luò)裝置可指定所述組目標(biāo)層識別符。在此實(shí)例中,所述中間網(wǎng)絡(luò)裝置可使用所述組目標(biāo)層識別符來識別操作點(diǎn)。所述中間網(wǎng)絡(luò)裝置可隨后提取用于所述操作點(diǎn)的操作點(diǎn)表示且將所述操作點(diǎn)表示而不是原始位流轉(zhuǎn)發(fā)到客戶端裝置。提取所述操作點(diǎn)表示且將所述操作點(diǎn)表示轉(zhuǎn)發(fā)到客戶端裝置可降低位流的位速率。
[0083]視頻解碼器30可接收位流。另外,視頻解碼器30可解析所述位流以解碼來自所述位流的語法元素。視頻解碼器30可至少部分基于從位流解碼的語法元素來重構(gòu)視頻數(shù)據(jù)的圖片。重構(gòu)視頻數(shù)據(jù)的過程可一般與由視頻編碼器20執(zhí)行的過程互逆。舉例來說,視頻解碼器30可使用PU的運(yùn)動(dòng)向量來確定當(dāng)前CU的PU的預(yù)測性塊視頻解碼器30可使用PU的一個(gè)或多個(gè)運(yùn)動(dòng)向量來產(chǎn)生I3U的預(yù)測性塊
[0084]另外,視頻解碼器30可對與CU的TU相關(guān)聯(lián)的系數(shù)塊進(jìn)行反量化。視頻解碼器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)所述圖片。視頻解碼器30可將經(jīng)解碼圖片存儲在經(jīng)解碼圖片緩沖器中以用于輸出且/或用于解碼其它圖片。
[0085]在視頻譯碼器(例如,視頻編碼器20或視頻解碼器30)開始譯碼圖片的當(dāng)前切片時(shí),視頻譯碼器可初始化第一參考圖片列表(即,列表O)。此外,如果所述當(dāng)前切片是B切片,那么視頻譯碼器可初始化第二參考圖片列表(即,列表I)。本發(fā)明可將列表O稱為“RefPicListO”且可將列表I稱為“RefPicListl”。在視頻譯碼器已初始化參考圖片列表(例如,列表O或列表I)之后,視頻譯碼器可修改所述參考圖片列表中的參考圖片的次序。換句話說,視頻譯碼器可執(zhí)行參考圖片列表修改(RPLM)過程。視頻譯碼器可以任何次序修改參考圖片的次序,包含其中一個(gè)特定參考圖片可出現(xiàn)在參考圖片列表中的一個(gè)以上位置中的情況。此外,在對HEVC的一些提議中,視頻譯碼器可產(chǎn)生組合參考圖片列表(B卩,列表C)。列表C還可在本文中被稱為“RefPicListC”)。視頻譯碼器可在將RPLM過程應(yīng)用于列表O及列表I之后從列表O及列表I建構(gòu)列表C。舉例來說,對于B切片,在已經(jīng)建構(gòu)最終參考圖片列表(RefPicListO及RefPicListl)之后建構(gòu)組合列表(RefPicListC)。如果列表C存在RPLM語法元素,那么視頻解碼器30可進(jìn)一步修改列表C。
[0086]在一些情況下,視頻編碼器20可使用合并模式或高級運(yùn)動(dòng)向量預(yù)測(AMVP)模式用信號發(fā)送PU的運(yùn)動(dòng)信息。換句話說,在HEVC中,存在用于預(yù)測運(yùn)動(dòng)參數(shù)的兩個(gè)模式,一個(gè)是合并模式且另一個(gè)是AMVP。PU的運(yùn)動(dòng)信息可以包含I3U的運(yùn)動(dòng)向量以及I3U的參考索弓I。在視頻編碼器20使用合并模式用信號發(fā)送當(dāng)前的運(yùn)動(dòng)信息時(shí),視頻編碼器20產(chǎn)生包合并候選者列表(即,運(yùn)動(dòng)向量預(yù)測符(MVP)候選者列表)。換句話說,視頻編碼器20可執(zhí)行運(yùn)動(dòng)向量預(yù)測符列表建構(gòu)過程。所述合并候選者列表包含一組合并候選者(即,MVP候選者)。所述合并候選者列表可包含指示在空間上或在時(shí)間上與當(dāng)前PU相鄰的PU的運(yùn)動(dòng)信息的合并候選者。也就是說,在合并模式中,建構(gòu)運(yùn)動(dòng)參數(shù)(例如,參考索引、運(yùn)動(dòng)向量等)的候選者列表,其中候選者可來自空間及時(shí)間相鄰塊。
[0087]此外,在合并模式中,視頻編碼器20可從所述合并候選者列表選擇一合并候選者且可使用由所選擇的合并候選者指示的運(yùn)動(dòng)信息作為當(dāng)前PU的運(yùn)動(dòng)信息。視頻編碼器20可用信號發(fā)送所選擇的合并候選者在合并候選者列表中的位置。舉例來說,視頻編碼器20可通過將索引發(fā)射到候選者列表中而用信號發(fā)送所選擇的運(yùn)動(dòng)向量參數(shù)。視頻解碼器30可從位流獲得進(jìn)入候選者列表的索引(即,候選者列表索引)。另外,視頻解碼器30可產(chǎn)生相同的合并候選者列表且可基于所選擇的合并候選者的位置的指示來確定所選擇的合并候選者。接著,視頻解碼器30可以使用所選候選的合并候選者的運(yùn)動(dòng)信息以產(chǎn)生當(dāng)前PU的預(yù)測性塊。也就是說,視頻解碼器30可至少部分基于所述候選者列表索引來確定候選者列表中的所選擇的候選者,其中所選擇的候選者指定當(dāng)前PU的運(yùn)動(dòng)向量。以此方式,在解碼器側(cè)處,一旦索引被解碼,對應(yīng)塊的所有運(yùn)動(dòng)參數(shù),其中索引點(diǎn)將由當(dāng)前PU繼承。
[0088]跳過模式類似于合并模式。在跳過模式中,視頻編碼器20及視頻解碼器30以視頻編碼器20及視頻解碼器30在合并模式中使用合并候選者列表相同的方式產(chǎn)生并使用合并候選者列表。然而,在視頻編碼器20使用跳過模式用信號發(fā)送當(dāng)前PU的運(yùn)動(dòng)信息時(shí),視頻編碼器20不用信號發(fā)送當(dāng)前的任何殘余數(shù)據(jù)。因此,視頻解碼器30可使用由合并候選者列表中的所選擇的候選者的運(yùn)動(dòng)信息指示的參考塊作為所述PU的預(yù)測性塊。
[0089]AMVP模式類似于合并模式,類似之處在于視頻編碼器20產(chǎn)生候選者列表并且從候選者列表選擇候選者。然而,當(dāng)視頻編碼器20使用AMVP模式用信號發(fā)送當(dāng)前的運(yùn)動(dòng)信息時(shí),除了用信號發(fā)送候選者列表中的所選擇的候選者的位置之外,視頻編碼器20還可以用信號發(fā)送當(dāng)前I3U的運(yùn)動(dòng)向量差(MVD)以及參考索引。當(dāng)前PU的MVD可指示當(dāng)前PU的運(yùn)動(dòng)向量與來自AMVP候選者列表的所選擇的候選者的運(yùn)動(dòng)向量之間的差。在單向預(yù)測中,視頻編碼器20可以用信號發(fā)送當(dāng)前PU的一個(gè)MVD以及一個(gè)參考標(biāo)引。在雙向預(yù)測中,視頻編碼器20可以用信號發(fā)送當(dāng)前PU的兩個(gè)MVD以及兩個(gè)參考索引。以此方式,視頻編碼器20可通過將索引發(fā)射到候選者列表中來用信號發(fā)送所選擇的運(yùn)動(dòng)向量且可用信號發(fā)送參考索引值及MVD。換句話說,在位流中的表示當(dāng)前PU的運(yùn)動(dòng)向量的數(shù)據(jù)可包含表示參考索引的數(shù)據(jù)、到候選者列表的索引及MVD。
[0090]此外,在使用AMVP模式用信號發(fā)送當(dāng)前的運(yùn)動(dòng)信息時(shí),視頻編碼器30可從所述位流獲得當(dāng)前PU的MVD及候選者列表索引。視頻解碼器30可產(chǎn)生相同的AMVP候選者列表且可基于AMVP候選者列表中的所選擇的合并候選者的位置的指示來確定所選擇的合并候選者。視頻解碼器30可通過將MVD添加到由所選擇的候選者指示的運(yùn)動(dòng)向量來恢復(fù)當(dāng)前PU的運(yùn)動(dòng)向量。也就是說,視頻解碼器30可至少部分基于由所選擇的候選者指示的運(yùn)動(dòng)向量及MVD來確定當(dāng)前I3U的運(yùn)動(dòng)向量。視頻解碼器30可隨后使用當(dāng)前I3U的所恢復(fù)的運(yùn)動(dòng)向量來產(chǎn)生當(dāng)前PU的預(yù)測性塊。
[0091]如上文所指示,用于合并模式或AMVP的候選者列表可包含基于在空間上與當(dāng)前PU相鄰的的候選者。本發(fā)明可將此類稱為在空間上相鄰的或空間運(yùn)動(dòng)向量相鄰者。圖2是說明相對于當(dāng)前PU 40的實(shí)例性空間運(yùn)動(dòng)向量相鄰者的概念圖。也就是說,在圖2中描繪I3U 40與PU 40的在空間上相鄰的PU之間的實(shí)例性關(guān)系。在圖2的實(shí)例中,在空間上相鄰的I3U可為覆蓋指示為AciAJc^B1及B2的位置的PU。在PU的預(yù)測塊包含一位置時(shí),PU可覆蓋所述位置。
[0092]關(guān)于圖2的實(shí)例,亮度位置(xP,yP)可相對于當(dāng)前圖片的左上方亮度樣本指定TO40的左上方亮度樣本。此外,變量nPSW及nPSH可分別表示PU 40的亮度樣本中的寬度及高度。相對于當(dāng)前圖片的左上方樣本的I3U N的左上方亮度樣本是(xN,yN),其中N表示覆蓋位置A0、A” B。、B1或B2的PU。對于位置A0, A1' B0、B1或B2的PU,可分別將(xN, yN)界定為(xP-1,yP+nPSH)、(xP-Ι, yP+nPSH-1)、(xP+nPSff, yP-Ι)、(xP+nPSff-1, yP-Ι)或(xP-1,yP-Ι)。
[0093]合并候選者列表或AMVP候選者列表中的基于在時(shí)間上與當(dāng)前相鄰的PU( SP,在與當(dāng)前I3U不同的時(shí)間實(shí)例中的I3U)的運(yùn)動(dòng)信息的候選者可被稱為時(shí)間運(yùn)動(dòng)向量預(yù)測符(TMVP)。為了確定TMVP,視頻譯碼器可首先識別包含與當(dāng)前PU位于同一地點(diǎn)的PU的參考圖片。換句話說,視頻譯碼器可識別位于同一地點(diǎn)的圖片。如果當(dāng)前圖片的當(dāng)前切片是B切片(即,允許包含經(jīng)雙向幀間預(yù)測的PU的切片),那么視頻編碼器20可在切片標(biāo)頭中用信號發(fā)送指示位于同一地點(diǎn)的圖片是否來自RefPicListO或RefPicListl的語法元素(例如,collocated_from_10_flag)。在視頻解碼器30識別包含位于同一地點(diǎn)的圖片的參考圖片列表之后,視頻解碼器30可使用可在切片標(biāo)頭中用信號發(fā)送的另一語法元素(例如,C0ll0Cated_ref_idX)來識別所識別的參考圖片列表中的圖片(即,位于同一地點(diǎn)的圖片)。
[0094]視頻譯碼器可通過檢查位于同一地點(diǎn)的圖片來識別位于同一地點(diǎn)的TO。TMVP可指示含有位于同一地點(diǎn)的PU的CU的右下方I3U的運(yùn)動(dòng)信息或含有此I3U的CU的中心PU內(nèi)的右下方PU的運(yùn)動(dòng)信息。含有位于同一地點(diǎn)的PU的CU的右下方可為覆蓋直接在所述PU的預(yù)測塊的右下方樣本的右下方的位置的W。換句話說,TMVP可指示在參考圖片中且覆蓋與當(dāng)前PU的右下方拐角位于同一地點(diǎn)的位置的PU的運(yùn)動(dòng)信息,或TMVP可指示在參考圖片中且覆蓋與當(dāng)前PU的中心位于同一地點(diǎn)的位置的的運(yùn)動(dòng)信息。
[0095]在由以上過程識別的運(yùn)動(dòng)向量用于產(chǎn)生用于合并模式或AMVP模式的運(yùn)動(dòng)候選者時(shí),可基于時(shí)間位置(由POC值反映)來縮放運(yùn)動(dòng)向量。舉例來說,在當(dāng)前圖片和參考圖片的POC值之間的差比在當(dāng)前圖片和參考圖片的POC值之間的差較小時(shí)更大時(shí),視頻譯碼器可將運(yùn)動(dòng)向量的量值增加更大的量。
[0096]在HEVC 工作草案 6 中,PPS 包含 enable_temporal_mvp_f lag 語法兀素。enable_temporal_mvp_flag語法元素指定是否可使用時(shí)間運(yùn)動(dòng)向量預(yù)測符。在具有等于O的temporal_id的特定圖片是指具有等于O的enable_temporal_mvp_f lag語法元素的PPS時(shí)(即,在與所述特定圖片相關(guān)聯(lián)的VCL NAL單元指定等于O的時(shí)間識別符且與具有等于O的enable_temporal_mvp_flag的PPS相關(guān)聯(lián)時(shí)),視頻譯碼器可將DPB中的所有參考圖片標(biāo)記為“不用于時(shí)間運(yùn)動(dòng)向量預(yù)測”且視頻譯碼器不將來自在解碼次序中在所述特定圖片之前的圖片的運(yùn)動(dòng)向量用作TMVP來解碼所述特定圖片或在解碼次序中在所述特定圖片之后的圖片。
[0097]HEVC可支持運(yùn)動(dòng)向量壓縮以用于減少存儲器帶寬。HEVC中的運(yùn)動(dòng)向量存儲壓縮方法可經(jīng)設(shè)計(jì)以減少存儲及加載合并/跳過模式及AMVP的時(shí)間運(yùn)動(dòng)向量所消耗的存儲器帶寬。在HEVC的上下文中,存儲器帶寬可指傳遞到存儲器或從存儲器傳遞的數(shù)據(jù)的量。在一些實(shí)例中,壓縮方法可為16X壓縮方法。所述16X壓縮方法可在水平及垂直方向兩者上通過因子4將運(yùn)動(dòng)向量字段下取樣,從而產(chǎn)生每一 16X16區(qū)的同一運(yùn)動(dòng)向量。換句話說,不同的16X 16區(qū)可具有不同的運(yùn)動(dòng)向量,但16X 16內(nèi)的每一 PU可具有相同的運(yùn)動(dòng)向量。
[0098]視頻譯碼器(例如,視頻編碼器20或視頻解碼器30)可使用線緩沖器來存儲與圖片中的CTU的行(即,線)相關(guān)聯(lián)的信息。在一些實(shí)例中,與CTU的行相關(guān)聯(lián)的信息可包含與所述行中的CTU相關(guān)聯(lián)的的運(yùn)動(dòng)信息。HEVC可支持運(yùn)動(dòng)數(shù)據(jù)壓縮以用于減少線緩沖器。也就是說,可壓縮運(yùn)動(dòng)數(shù)據(jù)以便減少存儲在線緩沖器中的數(shù)據(jù)的量。如上文所論述,PU的運(yùn)動(dòng)數(shù)據(jù)可包含一或多個(gè)幀間預(yù)測方向指示符、一或多個(gè)參考圖片索引及一或多個(gè)運(yùn)動(dòng)向量。如果參考在與PU相關(guān)聯(lián)的CTU上方的CTB行(S卩,IXU行)中出現(xiàn)的I3U的運(yùn)動(dòng)信息來用信號發(fā)送PU的運(yùn)動(dòng)信息,那么僅可存取線緩沖器中的經(jīng)壓縮運(yùn)動(dòng)數(shù)據(jù)。
[0099]圖3是說明一條線的實(shí)例性2: I運(yùn)動(dòng)數(shù)據(jù)壓縮的概念圖。在圖3的實(shí)例中,每一正方形對應(yīng)于4X4塊。線緩沖器不存儲對應(yīng)于加陰影正方形的4X4塊的運(yùn)動(dòng)信息。對于每一組四個(gè)4X4塊,第一個(gè)和最后一個(gè)4X4塊的運(yùn)動(dòng)數(shù)據(jù)存儲在線緩沖器中。四塊組的第二個(gè)塊的運(yùn)動(dòng)數(shù)據(jù)確定為等于四塊組的第一個(gè)塊的運(yùn)動(dòng)數(shù)據(jù)。換句話說,第一個(gè)塊的運(yùn)動(dòng)數(shù)據(jù)表示頭兩個(gè)塊的運(yùn)動(dòng)數(shù)據(jù)。四塊組的第三個(gè)塊的運(yùn)動(dòng)數(shù)據(jù)確定為等于四塊組的最后一個(gè)塊的運(yùn)動(dòng)數(shù)據(jù)。換句話說,最后一個(gè)塊的運(yùn)動(dòng)數(shù)據(jù)表示最后兩個(gè)塊的運(yùn)動(dòng)數(shù)據(jù)。以此方式,僅需要一半的存儲器。
[0100]此外,在HEVC中,可將CTU劃分成并行運(yùn)動(dòng)估計(jì)區(qū)(PMER)。僅允許屬于當(dāng)前I3U的不同MER的那些相鄰I3U包含在合并/跳過運(yùn)動(dòng)向量預(yù)測符(MVP)列表建構(gòu)過程中。因此,如果當(dāng)前PU及在空間上相鄰的在相同的PMER內(nèi),那么視頻譯碼器不在合并/跳過MVP候選者列表中包含指定在空間上相鄰的I3U的運(yùn)動(dòng)信息的MVP候選者。因此,在PMER的大小大于NXN時(shí),其中2NX2N是最小的⑶大小,PMER以一方式起作用,使得在空間上相鄰的塊在其是在與當(dāng)前PU相同的PMER內(nèi)部的情況下被視為不可用。視頻編碼器20可在PPS中用信號發(fā)送PMER的大小(例如,使用log2_parallel_merge_level_minus2語法元素)。
[0101]在HEVC中,每一 NAL單元包含指示NAL單元的NAL單元類型的語法元素(例如,nal_unit_type)。此外,在HEVC中,視頻解碼器30可基于NAL單元的NAL單元類型而將NAL單元識別為與四個(gè)圖片類型中的一者相關(guān)聯(lián)。換句話說,存在可由HEVC中的NAL單元類型識別的四個(gè)圖片類型。這四個(gè)圖片類型是IDR圖片、清潔隨機(jī)存取(CRA)圖片、時(shí)間層接入(TLA)圖片及不是IDR、CRA或TLA圖片的經(jīng)譯碼圖片。
[0102]HEVC中的IDR圖片的定義可類似于H.264/AVC中的IDR圖片的定義。類似地,HEVC中的經(jīng)譯碼圖片的定義可類似于H.264/AVC中的經(jīng)譯碼圖片的定義。舉例來說,IDR及經(jīng)譯碼圖片可為從H.264/AVC規(guī)范繼承的圖片類型。IDR圖片可致使解碼過程將所有參考圖片標(biāo)記為“不用于參考”。因?yàn)榭蓮拇鎯⒖紙D片的經(jīng)解碼圖片緩沖器(DPB)移除標(biāo)記為“不用于參考”的參考圖片,所以IDR圖片可清理DPB。在解碼次序中在IDR圖片后面的所有經(jīng)譯碼圖片可在不從在解碼次序中在IDR圖片前面的任何圖片進(jìn)行幀間預(yù)測的情況下被解碼。在解碼次序中的每一經(jīng)譯碼視頻序列的第一圖片是IDR圖片。在存取單元的經(jīng)譯碼圖片是IDR圖片時(shí),所述存取單元可被稱為IDR存取單元。經(jīng)譯碼視頻序列是存取單元序列,其由在解碼次序中的IDR存取單元及后面的包含所有后續(xù)的存取單元直到但不包含任何后續(xù)的IDR存取單元的零個(gè)或更多的非IDR存取單元組成。
[0103]CRA及TLA圖片類型在HEVC中是新的且不可用于H.264/AVC規(guī)范。CRA圖片類型有助于從視頻序列中間的任何隨機(jī)存取點(diǎn)(RAP)開始的解碼。將CRA圖片插入視頻序列中可比將IDR圖片插入到相同視頻序列中更有效。隨機(jī)存取是在除位流的開頭之外的點(diǎn)處開始對位流的解碼過程的動(dòng)作。在HEVC中,從CRA圖片開始的位流可為相符位流。也就是說,位流的開始于CRA圖片的部分可符合HEVC規(guī)范。TLA圖片可用于指示有效的時(shí)間層切換點(diǎn)。
[0104]在例如廣播及流式傳輸?shù)纫曨l應(yīng)用中,用戶可在不同頻道之間切換且跳轉(zhuǎn)到視頻的特定部分。理想的是,應(yīng)在最小量的延遲下執(zhí)行以此方式的頻道切換及跳轉(zhuǎn)??赏ㄟ^在視頻位流中以規(guī)則間隔包含隨機(jī)存取圖片來啟用頻道切換及跳轉(zhuǎn)。IDR圖片可在H.264/AVC及HEVC兩者中用作隨機(jī)存取圖片。換句話說,在H.264/AVC及HEVC兩者中指定的IDR圖片可以用于隨機(jī)存取。然而,因?yàn)镮DR圖片開始經(jīng)譯碼視頻序列且可始終清理DPB,所以在解碼次序中在IDR圖片后面的圖片無法使用在解碼次序中在IDR圖片之前解碼的圖片作為參考圖片。因此,依賴于IDR圖片以用于隨機(jī)存取的位流可具有顯著較低的譯碼效率(例如,譯碼效率低6% )。為了提高譯碼效率,HEVC中的CRA圖片可允許在解碼次序中在CRA圖片后面但在輸出次序中在CRA圖片前面的圖片使用在CRA之前解碼的圖片以供參考。
[0105]圖4是說明CRA圖片及前導(dǎo)圖片的概念圖。也就是說,在圖4的實(shí)例中展示CRA圖片周圍的典型預(yù)測結(jié)構(gòu)。在圖4的實(shí)例中,每一平行四邊形表示一圖片。每一相應(yīng)的平行四邊形內(nèi)的編號指示由相應(yīng)的平行四邊形表示的相應(yīng)圖片的實(shí)例POC值。CRA圖片(SP,在圖4的實(shí)例中具有POC值24的圖片)屬于含有在解碼次序中在CRA圖片后面但在輸出次序中在CRA圖片前面的其它圖片(即,具有POC值17到23的圖片)的圖片群組(GOP)。這些圖片(在解碼次序中在CRA圖片后面但在輸出次序中在CRA圖片前面)可被稱作CRA圖片的“前導(dǎo)圖片”。如果解碼從IDR圖片或在解碼次序中在當(dāng)前CRA圖片之前出現(xiàn)的CRA圖片開始,那么視頻解碼器30可正確地解碼當(dāng)前CRA圖片的前導(dǎo)圖片。然而,在發(fā)生從當(dāng)前CRA圖片的隨機(jī)存取時(shí),視頻解碼器30可不能夠正確地解碼當(dāng)前CRA圖片的前導(dǎo)圖片。因此,視頻解碼器30可在從當(dāng)前CRA圖片的隨機(jī)存取解碼期間丟棄當(dāng)前CRA圖片的前導(dǎo)圖片。
[0106]在視頻解碼器30在解碼當(dāng)前圖片時(shí)使用參考圖片的不正確地解碼的部分時(shí),可出現(xiàn)錯(cuò)誤傳播。為防止錯(cuò)誤從取決于解碼開始處而可能不可用的參考圖片傳播,GOP中的在CRA圖片后面的任何圖片不將在解碼次序或輸出次序中在CRA圖片前面的任何圖片(包含CRA圖片的前導(dǎo)圖片)用作參考。因此,在圖4的實(shí)例中,下一 GOP中的在解碼次序和輸出次序兩者中都在CRA圖片后面的所有圖片將不使用在解碼次序或輸出次序中在CRA圖片前面的任何圖片。
[0107]恢復(fù)點(diǎn)SEI消息可用于H.264/AVC中,從而以類似于HEVC中的CRA圖片的方式提供隨機(jī)存取。換句話說,H.264/AVC使用恢復(fù)點(diǎn)SEI消息來支持類似的隨機(jī)存取功能性。H.264/AVC解碼器實(shí)施方案可支持或可不支持恢復(fù)點(diǎn)SEI消息功能性。在HEVC中,開始于CRA圖片的位流被視為相符位流。在位流開始于CRA圖片時(shí),CRA圖片的前導(dǎo)圖片可指不可用的參考圖片,且因此無法被正確地解碼。然而,HEVC指定不輸出開始的CRA圖片的前導(dǎo)圖片,因此名稱“清潔隨機(jī)存取”。為了建立位流相符要求,HEVC可規(guī)定解碼過程產(chǎn)生不可用的參考圖片以用于解碼非輸出的前導(dǎo)圖片。然而,相符解碼器實(shí)施方案不必遵循所述解碼過程,只要解碼器實(shí)施方案與在從位流的開頭執(zhí)行所述解碼過程時(shí)相比可產(chǎn)生相同的輸出即可。在HEVC中,相符位流可能完全不包含IDR圖片,且因此,可含有經(jīng)譯碼視頻序列的子集或不完整的經(jīng)譯碼視頻序列。
[0108]在多視圖譯碼中,可存在同一場景的來自不同視點(diǎn)的多個(gè)視圖。術(shù)語“存取單元”用于指代對應(yīng)于相同時(shí)刻的一組圖片。因此,可將視頻數(shù)據(jù)概念化為隨著時(shí)間出現(xiàn)的一連串存取單元?!耙晥D分量”可為單一存取單元中的視圖的經(jīng)譯碼表示。在本發(fā)明中,“視圖”可指代與相同的視圖識別符相關(guān)聯(lián)的視圖分量的序列。
[0109]圖5是說明實(shí)例性多視圖解碼次序的概念圖。多視圖解碼次序可為位流次序。在圖5的實(shí)例中,每一正方形對應(yīng)于一視圖分量。正方形的列對應(yīng)于存取單元??蓪⒚恳淮嫒卧缍楹幸粫r(shí)刻的所有視圖的經(jīng)譯碼圖片。正方形的行對應(yīng)于視圖。在圖5的實(shí)例中,存取單元被標(biāo)記為T0...T9且視圖被標(biāo)記為S0...S7。因?yàn)榇嫒卧拿恳灰晥D分量在下一存取單元的任何視圖分量之前被解碼,所以圖5的解碼次序可被稱作時(shí)間優(yōu)先譯碼。存取單元的解碼次序可不等同于視圖的輸出或顯示次序。
[0110]多視圖譯碼支持視圖間預(yù)測。視圖間預(yù)測類似于用于H.264/AVC、HEVC中的幀間預(yù)測或其它視頻譯碼標(biāo)準(zhǔn)且可使用相同的語法元素。然而,在視頻譯碼器對當(dāng)前視頻單元(例如,宏塊)執(zhí)行視圖間預(yù)測時(shí),視頻譯碼器可使用在與當(dāng)前視頻單元相同的存取單元中但在不同視圖中的圖片作為參考圖片。相比而言,常規(guī)的幀間預(yù)測僅使用不同存取單元中的圖片作為參考圖片。
[0111]在多視圖譯碼中,如果視頻解碼器(例如,視頻解碼器30)可在不參考任何其它視圖中的圖片的情況下解碼視圖中的圖片,那么可將所述視圖稱作“基礎(chǔ)視圖”。當(dāng)對非基礎(chǔ)視圖中的一者中的圖片進(jìn)行譯碼時(shí),如果圖片處于不同視圖中但在與視頻譯碼器當(dāng)前譯碼的圖片相同的時(shí)刻(即,存取單元)內(nèi),那么視頻譯碼器(例如,視頻編碼器20或視頻解碼器30)可將所述圖片添加到參考圖片列表(例如,RefPicListO或RefPicListl)中。與其它幀間預(yù)測參考圖片一樣,視頻譯碼器可將視圖間預(yù)測參考圖片插入在參考圖片列表的任何部分處。
[0112]圖6是說明用于多視圖譯碼的實(shí)例性預(yù)測結(jié)構(gòu)的概念圖。圖6的視圖間預(yù)測結(jié)構(gòu)包含時(shí)間和視圖間預(yù)測。在圖6的實(shí)例中,每一正方形對應(yīng)于一視圖分量。標(biāo)記為“I”的正方形是經(jīng)幀內(nèi)預(yù)測的視圖分量。標(biāo)記為“P”的正方形是經(jīng)單向幀間預(yù)測的視圖分量。標(biāo)記為“B”和“b”的正方形是經(jīng)雙向幀間預(yù)測的視圖分量。標(biāo)記為“b”的正方形可使用標(biāo)記為“B”的正方形作為參考圖片。從第一正方形指向第二正方形的箭頭指示第一正方形在幀間預(yù)測中可用作第二正方形的參考圖片。如圖6中的垂直箭頭所指示,相同存取單元的不同視圖中的視圖分量可以可用作參考圖片。存取單元的一個(gè)視圖分量用作相同存取單元的另一視圖分量的參考圖片可被稱作視圖間預(yù)測。
[0113]在H.264/AVC的MVC擴(kuò)展中,視圖間預(yù)測受到視差運(yùn)動(dòng)補(bǔ)償支持,所述視差運(yùn)動(dòng)補(bǔ)償使用H.264/AVC運(yùn)動(dòng)補(bǔ)償?shù)恼Z法,但允許將不同視圖中的圖片作為參考圖片。對兩個(gè)視圖的譯碼還可受到H.264/AVC的MVC擴(kuò)展支持。H.264/AVC的MVC擴(kuò)展的優(yōu)點(diǎn)中的一者是,MVC編碼器可將兩個(gè)以上視圖視為3D視頻輸入且MVC解碼器可解碼此多視圖表示。因此,具有MVC解碼器的任何渲染器可預(yù)期具有兩個(gè)以上視圖的3D視頻內(nèi)容。
[0114]在H.264/AVC的MVC擴(kuò)展中,允許相同存取單元(B卩,具有相同時(shí)刻)中的圖片間的視圖間預(yù)測。當(dāng)對非基礎(chǔ)視圖中的一者中的圖片進(jìn)行譯碼時(shí),如果圖片處于不同視圖中但具有相同時(shí)刻,那么可將所述圖片添加到參考圖片列表中??蓪⒁晥D間預(yù)測參考圖片置于參考圖片列表的任何位置中,正如任何幀間預(yù)測參考圖片一樣。
[0115]此外,在多視圖視頻譯碼的上下文中,可存在兩種類型的運(yùn)動(dòng)向量。一種類型的運(yùn)動(dòng)向量是指向時(shí)間參考圖片的正常運(yùn)動(dòng)向量。另一類型的運(yùn)動(dòng)向量是指向不同視圖中的圖片的視差運(yùn)動(dòng)向量,且對應(yīng)的幀間預(yù)測是視差補(bǔ)償預(yù)測(DCP)。
[0116]3D-HEVC提供同一場景的來自不同視點(diǎn)的多個(gè)視圖。3D-HEVC的標(biāo)準(zhǔn)化工作的一部分包含基于HEVC的多視圖視頻編解碼器的標(biāo)準(zhǔn)化。類似地,在基于HEVC的3DV中,啟用基于來自不同視圖的經(jīng)重構(gòu)視圖分量的視圖間預(yù)測。與H.264/AVC中的MVC —樣,3D-HEVC支持視圖間運(yùn)動(dòng)預(yù)測。在3D-HEVC中,MP類似于標(biāo)準(zhǔn)HEVC中使用的運(yùn)動(dòng)補(bǔ)償且可利用相同或類似的語法元素。然而,在視頻譯碼器對PU執(zhí)行視圖間運(yùn)動(dòng)預(yù)測時(shí),視頻譯碼器可使用在與PU相同的存取單元中但在不同視圖中的圖片作為參考圖片。相比而言,常規(guī)的運(yùn)動(dòng)補(bǔ)償僅使用不同存取單元中的圖片作為參考圖片。因此,在3D-HEVC中,相依視圖中的塊的運(yùn)動(dòng)參數(shù)是基于相同存取單元的其它視圖中的已經(jīng)譯碼的運(yùn)動(dòng)參數(shù)來預(yù)測或推斷。
[0117]在當(dāng)前的運(yùn)動(dòng)信息是使用合并模式或AMVP模式用信號發(fā)送時(shí),視頻譯碼器可產(chǎn)生MVP候選者列表(例如,合并候選者列表或AMVP候選者列表)。在3D-HEVC中,候選者列表可包含可以與候選者列表中的其它候選者相同的方式使用的視圖間預(yù)測候選者。所述視圖間預(yù)測候選者指定參考圖片的PU( S卩,參考PU)的運(yùn)動(dòng)信息。所述參考圖片可在與當(dāng)前PU相同的存取單元中,但在與當(dāng)前不同的視圖中。為了確定參考W,視頻譯碼器可執(zhí)行視差向量建構(gòu)過程以確定當(dāng)前I3U的視差向量。當(dāng)前PU的視差向量可指示當(dāng)前I3U與參考紋理圖片內(nèi)的位置之間的水平空間移位。所述參考PU可為覆蓋由視差向量指示的位置的參考紋理圖片的W。
[0118]2012年3月14日申請的美國臨時(shí)專利申請案61/610,961描述了從用于視圖間運(yùn)動(dòng)預(yù)測的空間視差向量(SDV)、時(shí)間視差向量(TDV)或隱式視差向量(IDV)的視差向量建構(gòu)方法。2012年4月9日申請的美國專利申請案61/621,929描述了遵循類似概念的另一設(shè)計(jì)。視差運(yùn)動(dòng)向量是指向視圖間參考圖片內(nèi)的位置的運(yùn)動(dòng)向量。視圖間參考圖片是在與當(dāng)前PU相同的存取單元中但在不同的視圖中的紋理圖片。
[0119]SDV是在空間上與當(dāng)前PU相鄰的視差運(yùn)動(dòng)向量。換句話說,SDV是由在空間上相鄰的PU指定且指示視圖間參考圖片中的位置的運(yùn)動(dòng)向量,其中在空間上相鄰的在空間上與當(dāng)前I3U相鄰。TDV是在與當(dāng)前PU相同的視圖中但在與當(dāng)前PU不同的存取單元中的與當(dāng)前I3U位于同一地點(diǎn)的PU的視差運(yùn)動(dòng)向量。換句話說,TDV可為來自具有相同存取單元的任何參考圖片或視圖間圖片中的位于同一地點(diǎn)的PU、位于同一地點(diǎn)的LCU的視差運(yùn)動(dòng)向量。或者,如果來自用于TMVP的圖片的位于同一地點(diǎn)的I3U的運(yùn)動(dòng)向量或由TMVP產(chǎn)生的運(yùn)動(dòng)向量是視差向量,那么其也被視為TDV。如果使用視圖間運(yùn)動(dòng)預(yù)測來譯碼當(dāng)前的在空間上相鄰或在時(shí)間上相鄰的PU,那么所述在空間上相鄰或在時(shí)間上相鄰的PU的視差向量是 IDV。
[0120]此外,為了確定當(dāng)前的視差向量,視頻譯碼器可產(chǎn)生包含一組視差向量候選者的視差向量候選者列表。所述視差向量候選者中的每一者指定上文識別的SDV、TDV及IDV中的一者。換句話說,視頻譯碼器可使用來自以上三個(gè)種類的視差向量來建構(gòu)視差向量候選者列表(表示為disVecCan)。視頻譯碼器可基于某一準(zhǔn)則從disVecCan選擇視差向量中的一者。
[0121]視頻譯碼器可使用所選擇的視差向量直接用于視圖間運(yùn)動(dòng)預(yù)測。如上文所指示,在使用合并/跳過模式或AMVP模式用信號發(fā)送當(dāng)前的運(yùn)動(dòng)信息時(shí),視頻編碼器可產(chǎn)生當(dāng)前的MVP候選者列表。視頻譯碼器可使用由所選擇的視差向量候選者指定的視差向量來確定視圖間參考圖片中的參考PU。視頻譯碼器可隨后包含參考PU的運(yùn)動(dòng)信息以作為用于合并模式或AMVP模式的MV候選者列表中的視圖間預(yù)測MV候選者。以此方式,視頻譯碼器不需要基于深度圖來計(jì)算當(dāng)前PU的視差向量,而是可基于在空間上或在時(shí)間上相鄰的PU的視差向量來確定當(dāng)前I3U的視差向量。在一些情況下,以此方式確定當(dāng)前PU的視差向量可為高效的,這是因?yàn)椴恍枰谖涣髦酗@式地用信號發(fā)送當(dāng)前PU的視差向量或用于當(dāng)前視圖分量的深度圖。
[0122]圖7為說明實(shí)例性SDV的概念圖。圖7展示三個(gè)圖片:當(dāng)前圖片50、參考圖片52及對應(yīng)圖片53。當(dāng)前圖片50是當(dāng)前正被譯碼的圖片。參考圖片52表示與當(dāng)前圖片50來自相同視圖的已經(jīng)譯碼的圖片。對應(yīng)的圖片53是與當(dāng)前圖片50具有相同時(shí)刻但處于另一視圖中的圖片。當(dāng)前圖片50包含當(dāng)前視頻塊54,所述當(dāng)前視頻塊是當(dāng)前正被譯碼的視頻塊。當(dāng)前塊54具有已被譯碼的兩個(gè)空間相鄰者(視頻塊55及視頻塊56)。在圖7的實(shí)例中,當(dāng)前視頻塊54的兩個(gè)空間相鄰者(視頻塊55及視頻塊56)分別用運(yùn)動(dòng)補(bǔ)償預(yù)測(MCP)和視差補(bǔ)償預(yù)測(DCP)來譯碼。當(dāng)視頻譯碼器使用時(shí)間運(yùn)動(dòng)向量來預(yù)測視頻數(shù)據(jù)塊時(shí),對應(yīng)的幀間預(yù)測被稱作運(yùn)動(dòng)補(bǔ)償?shù)念A(yù)測(MCP)。當(dāng)視頻譯碼器使用視差運(yùn)動(dòng)向量來預(yù)測視頻數(shù)據(jù)塊時(shí),對應(yīng)的幀間預(yù)測被稱作視差補(bǔ)償?shù)念A(yù)測(DCP)。在圖7的實(shí)例中,使用MCP譯碼視頻塊55,且視頻塊57表示用于預(yù)測視頻塊55的視頻塊。線58表示用于識別塊57的時(shí)間運(yùn)動(dòng)向量。
[0123]在圖7的實(shí)例中,使用DCP而不是MCP來譯碼視頻塊56。從處于與視頻塊56不同的視圖中的視頻塊59預(yù)測視頻塊56。因此,用于定位視頻塊56的參考塊(即,視頻塊59)的運(yùn)動(dòng)向量是視差運(yùn)動(dòng)向量而不是時(shí)間運(yùn)動(dòng)向量。線60表示用于定位塊59的視差運(yùn)動(dòng)向量。在圖7的實(shí)例中,線60表示視頻塊56的SDV。在一些實(shí)施方案中,SDV可用作當(dāng)前視頻塊54的視差向量。在其它實(shí)施方案中,可將SDV添加到當(dāng)前視頻塊54的disVecCan,且可從disVecCan中的視差向量候選者選擇當(dāng)前視頻塊54的視差向量。
[0124]為了確定SDV,視頻編碼器20和視頻解碼器30可以給定次序檢查當(dāng)前視頻塊54的每一空間相鄰預(yù)測單元。當(dāng)前視頻塊54可比圖7中所示的視頻塊55及56具有更多的空間相鄰預(yù)測單元。舉例來說,圖2展示由其它空間相鄰視頻塊覆蓋的位置的實(shí)例。對于當(dāng)ill視頻塊54的在空間上相鄰的視頻塊(例如,PU)中的每一者,如向運(yùn)動(dòng)向量(對應(yīng)于RefPicListO)或后向運(yùn)動(dòng)向量(對應(yīng)于RefPicListl)(如果可用)可被檢查且在所述運(yùn)動(dòng)向量是視差運(yùn)動(dòng)向量的情況下添加到disVecCan。返回參看圖7,舉例來說,由線60表示的運(yùn)動(dòng)向量可構(gòu)成當(dāng)前視頻塊54的SDV,因?yàn)樗且暡钸\(yùn)動(dòng)向量,而由線58表示的運(yùn)動(dòng)向量不構(gòu)成SDV,因?yàn)樗菚r(shí)間運(yùn)動(dòng)向量。
[0125]圖8為說明實(shí)例性TDV的概念圖。圖8展示留個(gè)圖片。當(dāng)前圖片71是當(dāng)前正被譯碼的圖片。對應(yīng)的圖片72是與當(dāng)前圖片71具有相同時(shí)刻但處于不同視圖(例如,圖8的實(shí)例中的視圖O)中的圖片。參考圖片73及74表示在與當(dāng)前圖片71相同的視圖(即,視圖1)中的參考圖片,且參考圖片75及76表示在與對應(yīng)圖片72相同的視圖(即,視圖O)中的參考圖片。在圖8的實(shí)例中,參考圖片74和參考圖片76是相同時(shí)間實(shí)例的圖片,且參考圖片73和參考圖片75是相同時(shí)間實(shí)例的圖片。
[0126]當(dāng)前圖片71包含當(dāng)前正被譯碼的當(dāng)前視頻塊77。存在當(dāng)前視頻塊77的三個(gè)參考圖片,兩個(gè)來自相同視圖(視圖1中的參考圖片73和參考圖片74)且一個(gè)來自另一視圖(視圖O中的對應(yīng)圖片72)。可檢查三個(gè)時(shí)間相鄰塊(78、79及80)以確定它們是否使用視差運(yùn)動(dòng)向量。塊78、79及80被視為視頻塊77的時(shí)間相鄰者,因?yàn)樗鼈兣c視頻塊77位于同一地點(diǎn),意味著它們在與視頻塊77相同的大致位置中但在不同圖片中。
[0127]在圖8的實(shí)例中,時(shí)間相鄰塊80可被幀內(nèi)預(yù)測且不具有相關(guān)聯(lián)的運(yùn)動(dòng)向量。時(shí)間相鄰塊78可使用在圖8中通過線81表示的時(shí)間運(yùn)動(dòng)向量被幀間預(yù)測。時(shí)間相鄰塊79使用通過線82表示的視差運(yùn)動(dòng)向量被視圖間預(yù)測。因此,在圖8的實(shí)例中,僅使用視差運(yùn)動(dòng)向量來預(yù)測時(shí)間相鄰塊79。因此,僅時(shí)間相鄰塊79的運(yùn)動(dòng)向量用作TDV候選者。TDV候選者可用作當(dāng)前視頻塊77的視差向量或可作為候選視差向量添加到disVecCan,從所述disVecCan選擇當(dāng)前視頻塊77的視差向量。
[0128]視頻編碼器20及視頻解碼器30可識別參考圖片列表O或參考圖片列表I的第一參考圖片的位于同一地點(diǎn)的PU的視差運(yùn)動(dòng)向量以用作TDV。視頻編碼器20及視頻解碼器30還可識別來自用于TMVP的圖片或由TMVP導(dǎo)出的塊的位于同一地點(diǎn)的I3U的視差運(yùn)動(dòng)向量以用作TDV。視頻編碼器20及視頻解碼器30還可識別任一參考圖片列表的可為或可不為視圖間參考圖片的任何參考圖片的位于同一地點(diǎn)的PU的視差運(yùn)動(dòng)向量以用作TDV。在一些情況下,視頻編碼器20及視頻解碼器30還可識別未包含于參考圖片列表中的相同存取單元的視圖間圖片中的塊的視差運(yùn)動(dòng)向量以用作TDV。另外,視頻編碼器20及視頻解碼器30可含有以上提及的圖片中的任一者的位于同一地點(diǎn)的I3U的CU的任何PU的視差運(yùn)動(dòng)向量或含有以上提及的圖片中的任一者的位于同一地點(diǎn)的PU的LCU的任何I3U的視差運(yùn)動(dòng)向量以用作TDV。
[0129]隱式視差向量(IDV)是指當(dāng)前視頻塊的相鄰視頻塊的所存儲的視差向量。在譯碼當(dāng)前視頻塊之后,如果所述視差向量用于視圖間預(yù)測,即,其運(yùn)動(dòng)向量中的至少一者是從視圖間運(yùn)動(dòng)參數(shù)預(yù)測而預(yù)測,那么存儲所述視差向量以用于當(dāng)前視頻塊。當(dāng)在譯碼未來的視頻塊時(shí),使用先前存儲的視差向量來預(yù)測視差向量。在檢查所述先前的視差向量時(shí),還可僅檢查相鄰的視頻塊。這意味著空間相鄰視頻塊的視差向量(如含有SDV的視差向量)或時(shí)間相鄰視頻塊的視差向量(如含有TDV的視差向量)被視為IDV,或空間及時(shí)間相鄰視頻塊兩者的視差向量都被視為IDV。所描述的技術(shù)可在考慮IDV或不考慮IDV的情況下工作。
[0130]如果使用從視圖間運(yùn)動(dòng)參數(shù)預(yù)測預(yù)測(即,基于視差向量從其它視圖導(dǎo)出)的其運(yùn)動(dòng)向量中的至少一者而被譯碼,那么視差向量可在時(shí)間上與PU相關(guān)聯(lián)。與此相關(guān)聯(lián)的視差向量被稱作IDV。在當(dāng)前I3U的空間或時(shí)間相鄰PU含有IDV時(shí),可考慮使用IDV來導(dǎo)出當(dāng)前塊的視差向量。也就是說,空間或時(shí)間相鄰PU的IDV可被視為IDV候選者。IDV候選者可用作當(dāng)前塊的視差向量或可作為候選視差向量添加到disVecCan,從所述disVecCan選擇當(dāng)前塊的視差向量。
[0131]圖9為說明實(shí)例性IDV的概念圖。具體來說,圖9展示四個(gè)圖片。當(dāng)前圖片90是當(dāng)前正被譯碼的圖片。圖片91是在與圖片90相同的視圖(視圖1)中但在不同的時(shí)間實(shí)例中的參考圖片。對應(yīng)的圖片92是與當(dāng)前圖片90具有相同時(shí)刻但處于不同視圖(視圖O)中的圖片。圖片93是與圖片92相同的視圖(視圖O)中的參考圖片。在圖9的實(shí)例中,圖片90包含當(dāng)前PU 94。當(dāng)前I3U 94具有從相同視圖(視圖1)中的參考圖片91中的塊96預(yù)測的空間相鄰者(PU 95)。用于預(yù)測95的運(yùn)動(dòng)向量是由線97表示。在圖9的實(shí)例中,此運(yùn)動(dòng)向量(線97)是從PU 98繼承。I3U 98是由作為PU 95的空間相鄰I3U的PU 99的視差向量定位。在此情況下,PU 95是與IDV相關(guān)聯(lián)的PU,且PU 99的視差向量被視為IDV。給定目標(biāo)參考視圖,可從上文所描述的可用的SDV、TDV或IDV確定當(dāng)前I3U 94的視差向量。
[0132]視頻譯碼器可針對AMVP及合并模式兩者應(yīng)用視圖間運(yùn)動(dòng)預(yù)測。視頻譯碼器可建構(gòu)用于每一 I3U的視圖間運(yùn)動(dòng)預(yù)測(DVIVMP)的視差向量。視頻譯碼器可使用PU的DVIVMP用于PU的視圖間運(yùn)動(dòng)預(yù)測,如下文所描述。為了包含視圖間運(yùn)動(dòng)預(yù)測,AMVP模式已以一方式擴(kuò)展,使得將視圖間運(yùn)動(dòng)向量預(yù)測符添加到候選列表?;诋?dāng)前塊的中間樣本的深度估計(jì),如上文所描述確定參考視圖中的視差向量及參考塊。如果當(dāng)前塊的參考索引涉及視圖間參考圖片,那么將視圖間運(yùn)動(dòng)向量預(yù)測符設(shè)定為等于對應(yīng)的視差向量。如果當(dāng)前參考索引涉及時(shí)間參考圖片且參考塊將涉及相同存取單元的運(yùn)動(dòng)假設(shè)用作當(dāng)前參考索引,那么與此運(yùn)動(dòng)假設(shè)相關(guān)聯(lián)的運(yùn)動(dòng)向量用作視圖間運(yùn)動(dòng)向量預(yù)測符。在所有其它情況下,將視圖間運(yùn)動(dòng)向量預(yù)測符標(biāo)記為無效且不包含于運(yùn)動(dòng)向量預(yù)測符候選者列表中。
[0133]在合并模式及跳過模式中,通過使用視圖間運(yùn)動(dòng)預(yù)測而獲得的MVP候選者擴(kuò)展MVP候選者列表。對于每一潛在的運(yùn)動(dòng)假設(shè),以給定次序研究參考圖片列表的頭兩個(gè)參考索弓I。視頻譯碼器可以與針對AMVP模式相同的方式導(dǎo)出參考索引O的運(yùn)動(dòng)向量候選者。如果所導(dǎo)出的運(yùn)動(dòng)向量有效,那么視頻譯碼器可使用參考索引O及所導(dǎo)出的運(yùn)動(dòng)向量用于所考慮的假設(shè)。否則,視頻譯碼器可以相同的方式測試參考索引I。如果參考索引I也導(dǎo)致無效的運(yùn)動(dòng)向量,那么視頻譯碼器可將所述運(yùn)動(dòng)假設(shè)標(biāo)記為不可用。為了偏向時(shí)間預(yù)測,視頻譯碼器可在第一索引涉及視圖間參考圖片的情況下顛倒測試參考索引的次序。如果將所有潛在的運(yùn)動(dòng)假設(shè)標(biāo)記為不可用,那么視頻譯碼器無法選擇視圖間候選者。
[0134]可在3D-HEVC中啟用視圖間殘差預(yù)測?;趯?yīng)于當(dāng)前圖片的深度圖,視頻譯碼器可確定當(dāng)前塊的視差向量。在一些實(shí)例中,視頻譯碼器可估計(jì)所述深度圖。所述視頻譯碼器可隨后使用所述視差向量來定位參考視圖中的殘余塊。此殘余塊可在本文中被稱為殘余參考塊。在針對塊啟用殘差預(yù)測時(shí),視頻解碼器30可通過將殘余參考塊添加到當(dāng)前塊的預(yù)測性塊及當(dāng)前塊的用信號發(fā)送的殘余塊而重構(gòu)當(dāng)前塊。
[0135]3D-HEVC中的視差向量建構(gòu)過程的現(xiàn)有設(shè)計(jì)存在若干問題。舉例來說,在3D-HEVC中的視差向量建構(gòu)過程的現(xiàn)有設(shè)計(jì)中,通常從視差運(yùn)動(dòng)向量導(dǎo)出視差向量。視差運(yùn)動(dòng)向量可不與真實(shí)視差相關(guān)。因此,視差向量可為不準(zhǔn)確的。在使用所述視差向量在不同視圖中定位對應(yīng)的塊時(shí)可尤其會出現(xiàn)此問題。在另一實(shí)例中,塊偏向視圖間預(yù)測可對應(yīng)于顯著視差。塊偏向視圖間預(yù)測可比時(shí)間相關(guān)具有更多的視圖間相關(guān),且因此視頻編碼器更有可能針對塊選擇視圖間預(yù)測而不是視圖內(nèi)預(yù)測。然而,3D-HEVC中的視差向量建構(gòu)過程的當(dāng)前現(xiàn)有設(shè)計(jì)主要考慮可能是次佳的第一可用的視差向量。
[0136]本發(fā)明描述可解決3D-HEVC中的視差向量建構(gòu)過程的現(xiàn)有設(shè)計(jì)中的這些問題的技術(shù)。根據(jù)本發(fā)明的技術(shù),視頻譯碼器(例如,視頻編碼器20或視頻解碼器30)在譯碼當(dāng)前視圖時(shí)可確定視圖間預(yù)測(例如,視圖間運(yùn)動(dòng)預(yù)測及視圖間殘差預(yù)測)的視差向量,視頻譯碼器可以與視差范圍相關(guān)的某些約束適用的方式檢查視差向量。所檢查的視差向量可包含來自經(jīng)譯碼的空間及時(shí)間相鄰塊的視差運(yùn)動(dòng)向量。因此,作為始終選擇第一可用的視差運(yùn)動(dòng)向量的替代,視頻譯碼器可僅在第一可用的視差運(yùn)動(dòng)向量在特定視差范圍內(nèi)時(shí)才選擇第一可用的視差運(yùn)動(dòng)向量。否則,如果第一可用的視差運(yùn)動(dòng)向量不在特定視差范圍內(nèi),視頻譯碼器可聯(lián)合考慮多個(gè)視差運(yùn)動(dòng)向量以確定最靠近最合意的視差范圍的視差運(yùn)動(dòng)向量。
[0137]根據(jù)本發(fā)明的第一實(shí)例技術(shù),視頻譯碼器可確定一對視圖的視差范圍。舉例來說,一個(gè)所確定的范圍可包含僅大于零的值。在一些實(shí)例中,視頻譯碼器可從相機(jī)參數(shù)確定視差范圍。相機(jī)參數(shù)的實(shí)例包含固有參數(shù)及非固有參數(shù),包含相機(jī)的相對水平位置/移位。此夕卜,視頻譯碼器可根據(jù)預(yù)定義檢查次序來檢查在空間上和/或在時(shí)間上相鄰的塊。在視頻譯碼器檢查相鄰塊時(shí),視頻譯碼器可從相鄰塊的視差運(yùn)動(dòng)向量來計(jì)算視差。視頻譯碼器可隨后確定所計(jì)算的視差是否在視差范圍內(nèi)。響應(yīng)于確定所計(jì)算的視差在視差范圍內(nèi),視頻譯碼器可確定相鄰塊的視差運(yùn)動(dòng)向量是可用的。否則,響應(yīng)于確定所計(jì)算的視差不在視差范圍內(nèi),視頻譯碼器可確定相鄰塊的視差運(yùn)動(dòng)向量不可用。視頻譯碼器可響應(yīng)于確定相鄰塊的視差運(yùn)動(dòng)向量可用而停止檢查相鄰塊。舉例來說,當(dāng)且僅當(dāng)視差運(yùn)動(dòng)向量可用時(shí),導(dǎo)出過程才成功終止。
[0138]以此方式,視頻譯碼器可確定第一可用的視差向量候選者在預(yù)期范圍之外。此外,在第一可用的視差向量候選者在預(yù)期范圍之外時(shí),視頻譯碼器可確定當(dāng)前PU的視差向量等于第二可用的視差向量候選者。第一及第二可用的視差向量候選者可與在空間上或在時(shí)間上與當(dāng)前PU相鄰的相關(guān)聯(lián)。第一及第二可用的視差向量候選者中的每一者是在空間上或在時(shí)間上與當(dāng)前PU相鄰的相應(yīng)I3U的SDV、TDV或IDV。
[0139]在一些情況下,可將視差范圍限制到大于或等于O的值。換句話說,可預(yù)期視差的范圍大于或等于O。在此些情況下,視頻譯碼器可確定在視差運(yùn)動(dòng)向量的水平值(即,視差)大于或等于O的情況下視差運(yùn)動(dòng)向量是可用的。換句話說,僅當(dāng)具有大于或等于O的水平值的視差運(yùn)動(dòng)向量被視為可用的時(shí)。
[0140]在其它情況下,可將視差范圍限制到小于或等于O的值。換句話說,可預(yù)期視差的范圍是小于或等于O的所有值。在此些情況下,視頻譯碼器可確定在視差運(yùn)動(dòng)向量的水平值(即,視差)小于或等于O的情況下視差運(yùn)動(dòng)向量是可用的。換句話說,僅具有小于或等于O的水平值的視差運(yùn)動(dòng)向量被視為可用的。
[0141]根據(jù)本發(fā)明的第二實(shí)例技術(shù),視頻譯碼器可根據(jù)預(yù)定義檢查次序來檢查在空間上和/或在時(shí)間上相鄰的視頻塊(例如,在空間上和/或在時(shí)間上相鄰的PU)。在視頻譯碼器檢查相鄰的視頻塊時(shí),視頻譯碼器可確定相鄰的視頻塊的視差運(yùn)動(dòng)向量是否可用。如果相鄰的視頻塊的視差運(yùn)動(dòng)向量可用,那么視頻譯碼器可記錄視差運(yùn)動(dòng)向量。與上文所描述的第一實(shí)例技術(shù)相比,在此第二實(shí)例技術(shù)中,視頻譯碼器可根據(jù)預(yù)定義檢查次序來檢查每一相鄰的視頻塊,而不管視頻譯碼器是否確定相鄰的視頻塊具有可用的視差運(yùn)動(dòng)向量。以此方式,可記錄所有的可用的視差運(yùn)動(dòng)向量。
[0142]在本發(fā)明的第二實(shí)例技術(shù)中,視頻譯碼器可檢視所記錄的可用的視差運(yùn)動(dòng)向量,且從所記錄的可用的視差運(yùn)動(dòng)向量中確定對應(yīng)于在距離上最靠近相機(jī)/視點(diǎn)的對象的所記錄的可用的視差運(yùn)動(dòng)向量。換句話說,對應(yīng)于最靠近的對象的視差運(yùn)動(dòng)向量可作為最終視差向量而返回。在一個(gè)實(shí)例中,視頻譯碼器可確定具有較大水平分量的視差運(yùn)動(dòng)向量對應(yīng)于較近的對象。在其它實(shí)例中,視頻譯碼器可確定具有較大水平分量的視差運(yùn)動(dòng)向量對應(yīng)于較遠(yuǎn)的對象。視頻譯碼器可將所確定的視差運(yùn)動(dòng)向量的水平分量用作當(dāng)前視頻塊(例如,當(dāng)前PU)的視差向量。
[0143]在本發(fā)明的第二實(shí)例技術(shù)的另一版本中,視頻譯碼器可僅在視差運(yùn)動(dòng)向量在特定范圍內(nèi)時(shí)才記錄所述視差運(yùn)動(dòng)向量。視頻譯碼器可以關(guān)于本發(fā)明的第一實(shí)例技術(shù)所描述的方式來確定所述特定范圍。
[0144]根據(jù)本發(fā)明的第三實(shí)例技術(shù),視頻譯碼器可根據(jù)預(yù)定義檢查次序來檢查在空間上和/或在時(shí)間上相鄰的視頻塊(例如,在空間上和/或在時(shí)間上相鄰的PU)。在視頻譯碼器檢查相鄰的視頻塊時(shí),視頻譯碼器可確定相鄰的視頻塊的視差運(yùn)動(dòng)向量是否可用。如果相鄰的視頻塊的視差運(yùn)動(dòng)向量可用,那么視頻譯碼器可記錄視差運(yùn)動(dòng)向量。以此方式,可記錄所有的可用的視差運(yùn)動(dòng)向量。視頻譯碼器可隨后從所記錄的可用的視差運(yùn)動(dòng)向量中確定對應(yīng)于具有到相機(jī)/視點(diǎn)最遠(yuǎn)距離的對象的視差運(yùn)動(dòng)向量。視頻譯碼器可至少部分基于所確定的視差運(yùn)動(dòng)向量來確定當(dāng)前視頻塊(例如,當(dāng)前PU)的視差向量。換句話說,對應(yīng)于最遠(yuǎn)的對象的視差運(yùn)動(dòng)向量作為最終視差向量而返回。
[0145]在本發(fā)明的第三實(shí)例技術(shù)的另一版本中,視頻譯碼器可僅在視差運(yùn)動(dòng)向量在特定范圍內(nèi)時(shí)才記錄所述視差運(yùn)動(dòng)向量。視頻譯碼器可以關(guān)于本發(fā)明的第一實(shí)例技術(shù)所描述的方式來確定所述特定范圍。
[0146]在上文所描述的第一、第二及第三實(shí)例技術(shù)中,視頻譯碼器可至少部分基于視圖的相機(jī)參數(shù)或相機(jī)位置來確定深度范圍(即,對象與相機(jī)/視點(diǎn)之間的現(xiàn)實(shí)世界距離的范圍)。舉例來說,在上文所描述的第一、第二及第三實(shí)例技術(shù)中,視頻譯碼器可僅需要針對當(dāng)前視圖及參考視圖來確定較大或較小的視差是否為優(yōu)選的,從而暗示著在解碼過程期間,候選者中的相對較大或較小的視差向量可提供對當(dāng)前塊的視差的較佳表示及因此較高的譯碼效率。舉例來說,在相機(jī)并行且沒有傳感器移位且當(dāng)前視圖在參考視圖的右邊時(shí),視差可通常為正??傊?,傳感器轉(zhuǎn)移配置的相機(jī)設(shè)定對應(yīng)于并行相機(jī),其中內(nèi)部相機(jī)含有轉(zhuǎn)移的主軸以用于將3D場景投影到2D平面中以使得可產(chǎn)生視差。因此,在此實(shí)例中,較大的視差可為優(yōu)選的。在相機(jī)并行且沒有傳感器移位且當(dāng)前視圖在參考視圖的左邊時(shí),視差可通常為負(fù)。因此,在此實(shí)例中,較小的視差可為優(yōu)選的。
[0147]根據(jù)本發(fā)明的第四實(shí)例技術(shù),視頻譯碼器可根據(jù)預(yù)定義檢查次序來檢查在空間上和/或在時(shí)間上相鄰的視頻塊。在視頻譯碼器檢查相鄰的視頻塊時(shí),視頻譯碼器可確定相鄰的視頻塊的視差運(yùn)動(dòng)向量是否可用。如果相鄰的視頻塊的視差運(yùn)動(dòng)向量可用,那么視頻譯碼器可記錄視差運(yùn)動(dòng)向量。以此方式,可記錄所有的可用的視差運(yùn)動(dòng)向量。隨后,視頻譯碼器可確定具有屬于第一范圍內(nèi)的水平分量的所記錄的可用的視差運(yùn)動(dòng)向量的數(shù)目,且視頻譯碼器還可確定具有屬于第二范圍內(nèi)的水平分量的所記錄的可用的視差運(yùn)動(dòng)向量的數(shù)目。所述第一范圍可對應(yīng)于較近的對象,且所述第二范圍可對應(yīng)于較遠(yuǎn)的對象。換句話說,對于兩個(gè)給定視差范圍,即,較近的范圍及較遠(yuǎn)的范圍,視頻譯碼器可對落到每一范圍中的視差運(yùn)動(dòng)向量的數(shù)目進(jìn)行計(jì)數(shù)。
[0148]接下來,在本發(fā)明的第四實(shí)例技術(shù)中,視頻譯碼器可從第一范圍及第二范圍中選擇包含最多的視差運(yùn)動(dòng)向量的范圍。換句話說,選擇具有較大數(shù)目的候選者的范圍。如果所選擇的范圍的視差運(yùn)動(dòng)向量的水平分量小于未被選擇的范圍的視差運(yùn)動(dòng)向量的水平分量,那么視頻譯碼器可從所選擇的范圍中的視差運(yùn)動(dòng)向量中確定具有最小的水平分量的視差運(yùn)動(dòng)向量。否則,如果所選擇的范圍的視差運(yùn)動(dòng)向量的水平分量不小于未被選擇的范圍的視差運(yùn)動(dòng)向量的水平分量,那么視頻譯碼器可從所選擇的范圍中的視差運(yùn)動(dòng)向量中確定具有最大的水平分量的視差運(yùn)動(dòng)向量。視頻譯碼器可至少部分基于所確定的視差運(yùn)動(dòng)向量來確定當(dāng)前視頻塊(例如,當(dāng)前PU)的視差向量。換句話說,對于所選擇的范圍,如果所選擇的范圍具有比其它范圍小的視差值,那么視頻譯碼器可返回此所選擇的范圍中具有最小的視差運(yùn)動(dòng)向量(僅考慮向量的水平部分)的視差運(yùn)動(dòng)向量,否則,視頻譯碼器可返回此所選擇的范圍中具有最大的視差運(yùn)動(dòng)向量的視差運(yùn)動(dòng)向量。
[0149]在本發(fā)明的第四實(shí)例技術(shù)的另一版本中,視頻譯碼器可僅在視差運(yùn)動(dòng)向量在特定視差范圍內(nèi)時(shí)才記錄所述視差運(yùn)動(dòng)向量。視頻譯碼器可以關(guān)于本發(fā)明的第一實(shí)例技術(shù)所描述的方式來確定所述特定視差范圍。
[0150]在本發(fā)明的此第四實(shí)例技術(shù)中,可預(yù)定義視差范圍。舉例來說,在使用具有傳感器移位的并行相機(jī)設(shè)定時(shí),[-10,O]可能是較遠(yuǎn)的視差范圍且[0,20]可能是較近的視差范圍。視頻譯碼器可使用較遠(yuǎn)的視差范圍來俘獲對應(yīng)于彈出屏幕的對象的視差。視頻譯碼器可使用較近的視差范圍來俘獲對應(yīng)于屏幕內(nèi)部的對象的視差。因此,如果大部分可用的視差運(yùn)動(dòng)向量靠近觀看者,那么視頻譯碼器可返回更靠近觀看者的視差運(yùn)動(dòng)向量。如果大部分可用的視差運(yùn)動(dòng)向量距觀看者較遠(yuǎn),那么視頻譯碼器可返回距觀看者更遠(yuǎn)的視差運(yùn)動(dòng)向量。
[0151]本發(fā)明的第五實(shí)例技術(shù)類似于上文所描述的第二、第三及第四實(shí)例技術(shù)。然而,在所述第五實(shí)例技術(shù)中,視頻譯碼器僅記錄在空間上與當(dāng)前視頻塊(例如,當(dāng)前PU)相鄰的視頻塊(例如,PU)的視差運(yùn)動(dòng)向量。視頻譯碼器不記錄在時(shí)間上與當(dāng)前視頻塊相鄰的視頻塊的視差運(yùn)動(dòng)向量。視頻譯碼器可從所記錄的可用的視差運(yùn)動(dòng)向量中確定視差運(yùn)動(dòng)向量。視頻譯碼器可隨后至少部分基于所確定的視差運(yùn)動(dòng)向量來確定當(dāng)前視頻塊的視差向量。以此方式,僅來自空間相鄰塊的視差運(yùn)動(dòng)向量被記錄且用于返回所選擇的視差向量。如果視頻譯碼器不確定任何可用的視差運(yùn)動(dòng)向量,那么視頻譯碼器可檢查其它視差向量源,例如已經(jīng)導(dǎo)出且存儲在相鄰塊中的視差向量或在其它塊中的視差運(yùn)動(dòng)向量。在視頻譯碼器檢查另一視差運(yùn)動(dòng)向量時(shí),視頻譯碼器可至少部分基于其它視差運(yùn)動(dòng)向量中的第一可用的一者來確定當(dāng)前視頻塊的視差向量。換句話說,如果第五實(shí)例技術(shù)的過程不返回可用的視差向量,那么檢查其它視差運(yùn)動(dòng)向量且將第一可用的一者作為視差向量而返回。
[0152]本發(fā)明的第六實(shí)例技術(shù)類似于上文所描述的第二、第三及第四實(shí)例技術(shù)。然而,在本發(fā)明的第六實(shí)例技術(shù)中,視頻譯碼器僅記錄來自在空間上與當(dāng)前視頻塊(例如,當(dāng)前PU)相鄰的視頻塊(例如,PU)的視差運(yùn)動(dòng)向量及來自在時(shí)間上與當(dāng)前視頻塊相鄰的視頻塊的子集的視差運(yùn)動(dòng)向量。可例如以類似于用于HEVC中的AMVP及合并模式的塊的方式來選擇相鄰視頻塊的子集。也就是說,僅來自在空間上相鄰的塊及在時(shí)間上相鄰的塊的子集的視差運(yùn)動(dòng)向量被記錄且用于返回所選擇的視差向量。如果視頻譯碼器不確定任何可用的視差運(yùn)動(dòng)向量,那么視頻譯碼器可檢查其它視差向量源,例如已經(jīng)導(dǎo)出且存儲在相鄰塊中的視差向量或在其它塊中的視差運(yùn)動(dòng)向量。在視頻譯碼器檢查另一視差運(yùn)動(dòng)向量時(shí),視頻譯碼器可至少部分基于其它視差運(yùn)動(dòng)向量中的第一可用的一者來確定當(dāng)前視頻塊的視差向量。換句話說,如果第六實(shí)例技術(shù)的過程不返回可用的視差向量,那么檢查其它視差運(yùn)動(dòng)向量且將第一可用的一者作為視差向量而返回。
[0153]本發(fā)明的第七實(shí)例技術(shù)類似于上文所描述的第二、第三及第四實(shí)例技術(shù)。然而,在本發(fā)明的第七實(shí)例技術(shù)中,可存在將被記錄的預(yù)定義數(shù)目的視差運(yùn)動(dòng)向量。將被記錄的視差運(yùn)動(dòng)向量的預(yù)定義數(shù)目可表示為“N”。在本發(fā)明的第七實(shí)例技術(shù)中,視頻譯碼器可記錄第一N個(gè)可用的視差運(yùn)動(dòng)向量且視頻譯碼器可從所記錄的視差運(yùn)動(dòng)向量中選擇視差向量。如果可用的視差運(yùn)動(dòng)向量的數(shù)目小于N,那么將其全部進(jìn)行記錄且視頻編碼器可從所記錄的視差運(yùn)動(dòng)向量中選擇視差向量。
[0154]本發(fā)明的第八實(shí)例技術(shù)類似于上文所描述的第二、第三及第四實(shí)例技術(shù)。然而,在本發(fā)明的第八實(shí)例技術(shù)中,可存在將被檢查的預(yù)定義數(shù)目的視差運(yùn)動(dòng)向量。將被檢查的視差運(yùn)動(dòng)向量的預(yù)定義數(shù)目可表示為“N”。如果視頻譯碼器已檢查所有可能的視差運(yùn)動(dòng)向量或所檢查的視差運(yùn)動(dòng)向量的數(shù)目等于N且大于0,那么視頻譯碼器可應(yīng)用根據(jù)上文所描述的第一、第二或第三實(shí)例技術(shù)中的一者而描述的方法以確定當(dāng)前塊的視差向量。否則,如果視頻譯碼器已檢查所有可能的視差運(yùn)動(dòng)向量且所檢查的視差運(yùn)動(dòng)向量的數(shù)目不等于N或不大于0,那么視頻譯碼器可檢查其它視差向量源,例如已經(jīng)導(dǎo)出且存儲在相鄰塊中的視差向量或在其它塊中的視差運(yùn)動(dòng)向量。在視頻譯碼器檢查另一視差運(yùn)動(dòng)向量時(shí),視頻譯碼器可選擇其它視差運(yùn)動(dòng)向量中的第一可用的一者且可至少部分基于所選擇的視差運(yùn)動(dòng)向量來確定當(dāng)前視頻塊的視差向量。
[0155]在本發(fā)明的第九實(shí)例技術(shù)中,視頻譯碼器可使用不同的視差向量產(chǎn)生方法來用于不同的視圖間預(yù)測。視差向量產(chǎn)生方法(即視差向量導(dǎo)出過程)是用于確定視差向量的方法或過程。舉例來說,視頻譯碼器可使用第一視差向量產(chǎn)生方法來用于視圖間殘差預(yù)測且可使用第二視差向量產(chǎn)生方法來用于視圖間運(yùn)動(dòng)預(yù)測。此外,視頻譯碼器可使用不同的視差向量產(chǎn)生方法來用于不同的非基礎(chǔ)視圖。舉例來說,視頻譯碼器可針對第一視圖使用第一視差向量產(chǎn)生方法且針對第二視圖使用第二視差向量產(chǎn)生方法。
[0156]因此,在第九實(shí)例技術(shù)中,視頻編碼器20可使用第一視差向量導(dǎo)出過程確定第一視差向量。另外,視頻編碼器20可使用第二視差向量導(dǎo)出過程確定第二視差向量。第一視差向量導(dǎo)出過程可不同于第二視差向量導(dǎo)出過程。視頻編碼器20可使用第一視差向量以確定用于當(dāng)前PU的一組MVP候選者中的一 MVP候選者。視頻編碼器20使用第二視差向量來確定殘余數(shù)據(jù)。此外,視頻編碼器20可產(chǎn)生包含指示當(dāng)前的殘余數(shù)據(jù)及所述組MVP候選者中的所選擇的MVP候選者的數(shù)據(jù)的位流。
[0157]類似地,在第九實(shí)例技術(shù)中,視頻解碼器30可使用第一視差向量導(dǎo)出過程確定第一視差向量。另外,視頻解碼器30可使用第二視差向量導(dǎo)出過程確定第二視差向量。第一視差向量導(dǎo)出過程可不同于第二視差向量導(dǎo)出過程。此外,視頻解碼器30可使用第一視差向量以確定用于當(dāng)前PU的一組MVP候選者中的一 MVP候選者。視頻解碼器30使用第二視差向量來確定殘余數(shù)據(jù)。另外,視頻解碼器30可部分基于所述殘余數(shù)據(jù)及所述組MVP候選者中的所選擇的MVP候選者而產(chǎn)生經(jīng)重構(gòu)圖片的一或多個(gè)塊。
[0158]此外,在一些實(shí)例中,視頻譯碼器可使用不同的視差向量產(chǎn)生方法來用于不同的視圖間運(yùn)動(dòng)預(yù)測模式。舉例來說,視頻譯碼器可使用第一視差向量產(chǎn)生方法來用于AMVP模式且視頻譯碼器可使用第二視差向量產(chǎn)生方法來用于合并模式。因此,視頻譯碼器(例如,視頻編碼器20或視頻解碼器30)可使用不同的視差向量導(dǎo)出過程來確定視差向量,其取決于當(dāng)前PU的運(yùn)動(dòng)信息是使用第一模式(例如,合并模式)還是第二模式(例如,AMVP模式)進(jìn)行編碼。視頻譯碼器可使用此視差向量來確定MVP。
[0159]舉例來說,視頻編碼器20可產(chǎn)生一組MVP候選者,且產(chǎn)生包含指示所述組MVP候選者中的所選擇的MVP候選者的候選者索引。在當(dāng)前的運(yùn)動(dòng)信息是使用第一模式(即,合并模式)編碼時(shí),所選擇的MVP候選者指定所述當(dāng)前PU的運(yùn)動(dòng)向量。在此實(shí)例中,在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用第二模式(即,AMVP模式)編碼時(shí),視頻編碼器20可在所述位流中包含指示當(dāng)前PU的MVD的數(shù)據(jù)。當(dāng)前I3U的MVD指示由所選擇的MVP候選者指示的運(yùn)動(dòng)向量與當(dāng)前PU的運(yùn)動(dòng)向量之間的差。
[0160]在另一實(shí)例中,視頻解碼器30可從位流獲得候選者索引且產(chǎn)生一組MVP候選者。視頻解碼器30可至少部分基于所述候選者索引來確定所述組MVP候選者中的所選擇的MVP候選者。在當(dāng)前PU的運(yùn)動(dòng)信息是使用第一模式(即,合并模式)編碼時(shí),所選擇的MVP候選者可指定所述當(dāng)前PU的運(yùn)動(dòng)向量。在當(dāng)前PU的運(yùn)動(dòng)信息是使用第二模式(即,AMVP模式)編碼時(shí),視頻譯碼器30可從位流獲得當(dāng)前的MVD,且至少部分基于由所選擇的MVP候選者指示的運(yùn)動(dòng)向量及所述MVD來確定當(dāng)前PU的運(yùn)動(dòng)向量。在一些實(shí)例中,視頻譯碼器30可至少部分基于所選擇的MVP候選者來確定所述當(dāng)前的預(yù)測性塊。視頻譯碼器30可至少部分基于當(dāng)前PU的預(yù)測性塊及殘余數(shù)據(jù)來產(chǎn)生經(jīng)重構(gòu)塊。
[0161]本發(fā)明的第十實(shí)例技術(shù)類似于上文所描述的第一、第二和第三實(shí)例技術(shù)。然而,在本發(fā)明的第十實(shí)例技術(shù)中,視頻編碼器20可用信號發(fā)送特定視圖的語法元素(例如,旗標(biāo))及所述特定視圖的參考視圖。所述語法元素可指示較大的視差是否為優(yōu)選的(即,在多個(gè)視差向量可用于選擇時(shí)進(jìn)行選擇)。在不同的實(shí)例中,視頻編碼器20可在切片標(biāo)頭、PPS、序列參數(shù)集(SPS)或視頻參數(shù)集(VPS)中用信號發(fā)送所述旗標(biāo)。VPS是含有適用于零個(gè)或更多的整個(gè)經(jīng)譯碼視頻序列的語法元素的語法結(jié)構(gòu)。SPS是含有適用于零個(gè)或更多的整個(gè)經(jīng)譯碼視頻序列的語法元素的語法結(jié)構(gòu)。單一 VPS可適用于多個(gè)SPS。在一些實(shí)例中,如果語法元素具有等于I的值且視頻譯碼器使用如上文所描述的第一實(shí)例技術(shù),那么視頻譯碼器可僅將正的視差運(yùn)動(dòng)向量視為可用的。在其它實(shí)例中,如果語法元素具有等于I的值且視頻譯碼器使用如上文所描述的第二實(shí)例技術(shù),那么視頻譯碼器可選擇具有最大水平值的視差運(yùn)動(dòng)向量。
[0162]或者,在第十實(shí)例技術(shù)中,視頻編碼器20可用信號發(fā)送第一指示及第二指示。所述第一指示可指示相機(jī)是否從左到右以視圖識別符的遞增或遞減的次序布置。所述第二指示可指示視圖識別符是遞增還是遞減。在一些實(shí)例中,所述第二指示是所述第一指示的一部分。因此,對于一對特定視圖,視頻解碼器30可基于所述第一和第二指示來確定是較大的視差還是較小的視差是優(yōu)選的(即,在多個(gè)視差向量可用于選擇時(shí)進(jìn)行選擇)。
[0163]圖10是說明可實(shí)施本發(fā)明的技術(shù)的實(shí)例視頻編碼器20的框圖。圖10是為了闡釋的目的而提供,且不應(yīng)被視為對本發(fā)明中廣義上示范和描述的技術(shù)的限制。為了闡釋的目的,本發(fā)明在HEVC譯碼的上下文中描述視頻編碼器20。然而,本發(fā)明的技術(shù)可適用于其它譯碼標(biāo)準(zhǔn)或方法。
[0164]在圖10的實(shí)例中,視頻編碼器20包含預(yù)測處理單元100、殘差產(chǎn)生單元102、變換處理單元104、量化單元106、反量化單元108、反變換處理單元110、重構(gòu)單元112、濾波器單元114、經(jīng)解碼圖片緩沖器116以及熵編碼單元118。預(yù)測處理單元100包含幀間預(yù)測處理單元120和幀內(nèi)預(yù)測處理單元126。幀間預(yù)測處理單元120包含運(yùn)動(dòng)估計(jì)單元122和運(yùn)動(dòng)補(bǔ)償單元124。在其它實(shí)例中,視頻編碼器20可包含更多、更少或不同的功能組件。
[0165]視頻編碼器20可接收視頻數(shù)據(jù)。視頻編碼器20可對視頻數(shù)據(jù)的圖片的切片中的每一 CTU進(jìn)行編碼。CTU中的每一者可與圖片的相等大小的亮度譯碼樹塊(CTB)及對應(yīng)的CTB相關(guān)聯(lián)。作為對CTU進(jìn)行編碼的部分,預(yù)測處理單元100可執(zhí)行四叉樹分割以將CTU的CTB劃分為漸進(jìn)更小的塊。較小的塊可為CU的譯碼塊。舉例來說,預(yù)測處理單元100可將與CTU相關(guān)聯(lián)的CTB分割為四個(gè)相等大小的子塊,將子塊中的一或多者分割為四個(gè)相等大小的子子塊,以此類推。
[0166]視頻編碼器20可對CTU的⑶進(jìn)行編碼以產(chǎn)生⑶的經(jīng)編碼表示(即,經(jīng)譯碼⑶)。作為對CU進(jìn)行編碼的部分,預(yù)測處理單元100可在CU的一或多個(gè)I3U之間分割與CU相關(guān)聯(lián)的譯碼塊。因此,每一 PU可與一亮度預(yù)測塊及對應(yīng)的色度預(yù)測塊相關(guān)聯(lián)。視頻編碼器20和視頻解碼器30可支持具有各種大小的PU。CU的大小可指CU的亮度譯碼塊的大小,且PU的大小可指I3U的亮度預(yù)測塊的大小。假定特定CU的大小為2NX 2N,視頻編碼器20和視頻解碼器30可支持2NX2N或NXN的PU大小以用于幀間預(yù)測,以及2NX2N、2NXN、NX 2N、NXN或類似者的對稱PU大小以用于幀間預(yù)測。視頻編碼器20和視頻解碼器30還可支持用于2NXnU、2NXnD、nLX2N和nRX2N的I3U大小的不對稱分割以用于幀間預(yù)測。
[0167]幀間預(yù)測處理單元120可通過對⑶的每一 I3U執(zhí)行幀間預(yù)測而產(chǎn)生I3U的預(yù)測性數(shù)據(jù)。PU的預(yù)測性數(shù)據(jù)可包含的預(yù)測性塊以及PU的運(yùn)動(dòng)信息。幀間預(yù)測處理單元120可依據(jù)PU在I切片、P切片還是B切片中而對⑶的I3U執(zhí)行不同的操作。在I切片中,所有PU都被幀內(nèi)預(yù)測。因此,如果在I切片中,那么幀間預(yù)測處理單元120不對PU執(zhí)行幀間預(yù)測。因此,對于以I模式編碼的視頻塊,使用空間預(yù)測從相同的幀內(nèi)的先前經(jīng)編碼的相鄰塊來形成預(yù)測性塊。
[0168]P切片中的I3U可被幀內(nèi)預(yù)測或單向幀間預(yù)測。舉例來說,如果I3U在P切片中,那么運(yùn)動(dòng)估計(jì)單元122可搜索參考圖片列表(例如,“RefPicListO”)的參考圖片以尋找I3U的參考區(qū)。PU的參考區(qū)可為參考圖片內(nèi)的含有最緊密地對應(yīng)于的預(yù)測塊的樣本塊的區(qū)。運(yùn)動(dòng)估計(jì)單元122可產(chǎn)生指示參考圖片的RefPicListO中的含有I3U的參考區(qū)的位置的參考索引。另外,運(yùn)動(dòng)估計(jì)單元122可產(chǎn)生指示PU的預(yù)測塊與和參考區(qū)相關(guān)聯(lián)的參考位置之間的空間移位的運(yùn)動(dòng)向量。舉例來說,所述運(yùn)動(dòng)向量可為提供從當(dāng)前經(jīng)解碼圖片中的坐標(biāo)到參考圖片中的坐標(biāo)的偏移的二維向量。運(yùn)動(dòng)估計(jì)單元122可將參考索引及運(yùn)動(dòng)向量輸出為PU的運(yùn)動(dòng)信息。運(yùn)動(dòng)補(bǔ)償單元124可至少部分基于由的運(yùn)動(dòng)向量指示的參考位置處的實(shí)際或經(jīng)內(nèi)插樣本而產(chǎn)生PU的預(yù)測性塊。
[0169]B切片中的I3U可被幀內(nèi)預(yù)測、單向幀間預(yù)測或雙向幀間預(yù)測。因此,如果I3U在B切片中,那么運(yùn)動(dòng)估計(jì)單元122可對PU執(zhí)行單向預(yù)測或雙向預(yù)測。為了對執(zhí)行單向預(yù)測,運(yùn)動(dòng)估計(jì)單元122可搜索RefPicListO或第二參考圖片列表(“RefPicListl”)的參考圖片以尋找PU的參考區(qū)。運(yùn)動(dòng)估計(jì)單元122可輸出以下各者作為PU的運(yùn)動(dòng)信息:指示含有參考區(qū)的參考圖片的RefPicListO或RefPicListl中的位置的參考索引、指示I3U的預(yù)測塊以及與參考區(qū)相關(guān)聯(lián)的參考位置之間的空間移位的運(yùn)動(dòng)向量,及指示參考圖片是在RefPicListO還是RefPicListl中的一或多個(gè)預(yù)測方向指示符。運(yùn)動(dòng)補(bǔ)償單元124可以至少部分基于由PU的運(yùn)動(dòng)向量指示的參考區(qū)處的實(shí)際樣本或經(jīng)內(nèi)插樣本來產(chǎn)生PU的預(yù)測性塊。
[0170]為了對I3U執(zhí)行雙向幀間預(yù)測,運(yùn)動(dòng)估計(jì)單元122可以搜索RefPicListO中的參考圖片以尋找PU的參考區(qū),并且還可搜索RefPicListl中的參考圖片以尋找I3U的另一參考區(qū)。運(yùn)動(dòng)估計(jì)單元122可產(chǎn)生指示含有參考區(qū)的參考圖片的RefPicListO及RefPicListl中的位置的參考索引。另外,運(yùn)動(dòng)估計(jì)單元122可產(chǎn)生指示與參考區(qū)相關(guān)聯(lián)的參考位置與PU的預(yù)測塊之間的空間移位的運(yùn)動(dòng)向量。I3U的運(yùn)動(dòng)信息可包含I3U的參考索引和MV。運(yùn)動(dòng)補(bǔ)償單元124可至少部分基于由PU的運(yùn)動(dòng)向量指示的參考區(qū)處的實(shí)際或經(jīng)內(nèi)插樣本而產(chǎn)生PU的預(yù)測性塊。
[0171]幀內(nèi)預(yù)測處理單元126可通過對PU執(zhí)行幀內(nèi)預(yù)測而產(chǎn)生PU的預(yù)測性數(shù)據(jù)。I3U的預(yù)測性數(shù)據(jù)可包含PU的預(yù)測性塊和各種語法元素。幀內(nèi)預(yù)測處理單元126可對I切片、P切片和B切片中的I3U執(zhí)行幀內(nèi)預(yù)測。
[0172]為了對執(zhí)行幀內(nèi)預(yù)測,幀內(nèi)預(yù)測處理單元126可使用多個(gè)幀內(nèi)預(yù)測模式來產(chǎn)生PU的多組預(yù)測性數(shù)據(jù)。幀內(nèi)預(yù)測處理單元126可基于相鄰I3U的樣本而產(chǎn)生I3U的預(yù)測性塊。假設(shè)用于PU、⑶和CTU的從左到右、從上到下編碼次序,所述相鄰PU可在PU的上方、右上方、左上方,或左邊。幀內(nèi)預(yù)測處理單元126可使用各種數(shù)目的幀內(nèi)預(yù)測模式。在一些實(shí)例中,幀內(nèi)預(yù)測模式的數(shù)目可取決于PU的預(yù)測塊的大小。
[0173]預(yù)測處理單元100可從由幀間預(yù)測處理單元120針對⑶的PU產(chǎn)生的預(yù)測性數(shù)據(jù)或者由幀內(nèi)預(yù)測處理單元126針對所述產(chǎn)生的預(yù)測性數(shù)據(jù)中選擇所述的預(yù)測性數(shù)據(jù)。在一些實(shí)例中,預(yù)測處理單元100基于多組預(yù)測性數(shù)據(jù)的速率/失真度量來選擇CU的PU的預(yù)測性數(shù)據(jù)。選定的預(yù)測性數(shù)據(jù)的預(yù)測性塊可在本文中被稱作選定的預(yù)測性塊。
[0174]殘差產(chǎn)生單元102可基于⑶的亮度、Cb及Cr譯碼塊以及⑶的I3U的所選擇的預(yù)測性亮度塊、Cb塊及Cr塊而產(chǎn)生⑶的亮度、Cb及Cr殘余塊。舉例來說,殘差產(chǎn)生單元102可產(chǎn)生CU的殘余塊以使得殘余塊中的每一樣本具有等于CU的譯碼塊中的樣本與CU的PU的對應(yīng)的所選擇的預(yù)測性塊中的對應(yīng)樣本之間的差的值。
[0175]變換處理單元104可執(zhí)行四叉樹分割以將與CU相關(guān)聯(lián)的殘余塊分割為與CU的TU相關(guān)聯(lián)的變換塊。因此,TU可與一亮度變換塊及兩個(gè)色度變換塊相關(guān)聯(lián)。CU的TU的亮度和色度變換塊的大小和位置可基于或可不基于CU的PU的視頻塊的大小和位置。被稱為“殘余四叉樹”(RQT)的四叉樹結(jié)構(gòu)可包含與所述區(qū)中的每一者相關(guān)聯(lián)的節(jié)點(diǎn)。CU的TU可對應(yīng)于RQT的葉節(jié)點(diǎn)。
[0176]變換處理單元104可通過將一或多個(gè)變換應(yīng)用于TU的變換塊而產(chǎn)生⑶的每一 TU的系數(shù)塊。變換處理單元104可將各種變換應(yīng)用于與TU相關(guān)聯(lián)的變換塊。舉例來說,變換處理單元104可對變換塊應(yīng)用離散余弦變換(DCT)、方向性變換或概念上類似的變換。在一些實(shí)例中,變換處理單元104不對變換塊應(yīng)用變換。在此些實(shí)例中,可將變換塊視為系數(shù)塊。
[0177]量化單元106可量化系數(shù)塊中的變換系數(shù)。量化過程可減少與變換系數(shù)中的一些或全部相關(guān)聯(lián)的位深度。舉例來說,η位變換系數(shù)可在量化期間下舍入到m位變換系數(shù),其中η大于m。量化單元106可基于與CU相關(guān)聯(lián)的量化參數(shù)(QP)值來量化與CU的TU相關(guān)聯(lián)的系數(shù)塊。視頻編碼器20可通過調(diào)整與CU相關(guān)聯(lián)的QP值來調(diào)整向與CU相關(guān)聯(lián)的系數(shù)塊應(yīng)用的量化的程度。量化可能引入信息的損失,因此經(jīng)量化變換系數(shù)可能具有比原始變換系數(shù)低的精確度。
[0178]反量化單元108及反變換處理單元110可分別向系數(shù)塊應(yīng)用反量化及反變換,以從系數(shù)塊重構(gòu)殘余塊。重構(gòu)單元112可將經(jīng)重構(gòu)的殘余塊添加到來自由預(yù)測處理單元100產(chǎn)生的一或多個(gè)預(yù)測性塊的對應(yīng)樣本,從而產(chǎn)生與TU相關(guān)聯(lián)的經(jīng)重構(gòu)變換塊。通過以此方式重構(gòu)⑶的每一 TU的變換塊,視頻編碼器20可重構(gòu)⑶的譯碼塊。
[0179]濾波器單元114可執(zhí)行一或多個(gè)解塊操作以減少與CU相關(guān)聯(lián)的譯碼塊中的塊性假影。經(jīng)解碼圖片緩沖器116可在濾波器單元114對經(jīng)重構(gòu)的譯碼塊執(zhí)行一或多個(gè)解塊操作之后存儲經(jīng)重構(gòu)的譯碼塊。幀間預(yù)測處理單元120可使用含有經(jīng)重構(gòu)譯碼塊的參考圖片來對其它圖片的PU執(zhí)行幀間預(yù)測。另外,幀內(nèi)預(yù)測處理單元126可使用經(jīng)解碼圖片緩沖器116中的經(jīng)重構(gòu)譯碼塊來對與CU相同的圖片中的其它PU執(zhí)行幀內(nèi)預(yù)測。
[0180]熵編碼單元118可從視頻編碼器20的其它功能組件接收數(shù)據(jù)。舉例來說,熵編碼單元118可從量化單元106接收系數(shù)塊,且可從預(yù)測處理單元100接收語法元素。熵編碼單元118可對數(shù)據(jù)執(zhí)行一或多個(gè)熵編碼操作以產(chǎn)生經(jīng)熵編碼數(shù)據(jù)。舉例來說,視頻編碼單元118可對數(shù)據(jù)執(zhí)行上下文自適應(yīng)可變長度譯碼(CAVLC)操作、CABAC操作、可變-可變(V2V)長度譯碼操作、基于語法的上下文自適應(yīng)二進(jìn)制算術(shù)譯碼(SBAC)操作、概率區(qū)間分割熵(PIPE)譯碼操作,指數(shù)哥倫布編碼操作或另一類型的熵編碼操作。視頻編碼器20可輸出包含由熵編碼單元118產(chǎn)生的經(jīng)熵編碼數(shù)據(jù)的位流。舉例來說,所述位流可包含表示CU的RQT的數(shù)據(jù)。所述位流還可包含未被熵編碼的語法元素。
[0181]圖11是說明可實(shí)施本發(fā)明中所描述的技術(shù)的實(shí)例視頻解碼器30的框圖。圖11是為了闡釋的目的而提供,且不對本發(fā)明中廣義上示范和描述的技術(shù)進(jìn)行限制。為了闡釋的目的,本發(fā)明在HEVC譯碼的上下文中描述視頻解碼器30。然而,本發(fā)明的技術(shù)可適用于其它譯碼標(biāo)準(zhǔn)或方法。
[0182]在圖11的實(shí)例中,視頻解碼器30包含熵解碼單元150、預(yù)測處理單元152、反量化單元154、反變換處理單元156、重構(gòu)單元158、濾波器單元160以及經(jīng)解碼圖片緩沖器162。預(yù)測處理單元152包含運(yùn)動(dòng)補(bǔ)償單元164和幀內(nèi)預(yù)測處理單元166。在其它實(shí)例中,視頻解碼器30可包含更多、更少或不同的功能組件。
[0183]熵解碼單元150可接收NAL單元且解析所述NAL單元以解碼語法元素。熵解碼單元150可解碼NAL單元中的經(jīng)熵編碼語法元素。預(yù)測處理單元152、反量化單元154、反變換處理單元156、重構(gòu)單元158以及濾波器單元160可基于從位流提取的語法元素而產(chǎn)生經(jīng)解碼視頻數(shù)據(jù)。
[0184]位流的NAL單元可包含經(jīng)譯碼切片NAL單元。作為解碼位流的一部分,熵解碼單元150可從經(jīng)譯碼切片NAL單元提取語法元素且對所述語法元素進(jìn)行熵解碼。所述經(jīng)譯碼切片中的每一者可包含切片標(biāo)頭和切片數(shù)據(jù)。所述切片標(biāo)頭可含有與切片相關(guān)的語法元素。切片標(biāo)頭中的語法元素可包含識別與含有所述切片的圖片相關(guān)聯(lián)的PPS。
[0185]除了解碼來自位流的語法元素之外,視頻解碼器30可對⑶執(zhí)行重構(gòu)操作。為對⑶執(zhí)行重構(gòu)操作,視頻解碼器30可對⑶的每一 TU執(zhí)行重構(gòu)操作。通過對⑶的每一 TU執(zhí)行重構(gòu)操作,視頻解碼器30可重構(gòu)⑶的殘余塊。
[0186]作為對CU的TU執(zhí)行重構(gòu)操作的部分,反量化單元154可將與TU相關(guān)聯(lián)的系數(shù)塊反量化,即,解量化。反量化單元154可使用與TU的CU相關(guān)聯(lián)的QP值以確定量化程度,以及同樣反量化單元154要應(yīng)用的反量化的程度。
[0187]在反量化單元154將系數(shù)塊反量化之后,反變換處理單元156可依序?qū)ο禂?shù)塊應(yīng)用一或多個(gè)反變換以產(chǎn)生與TU相關(guān)聯(lián)的殘余塊。舉例來說,反變換處理單元156可向系數(shù)塊應(yīng)用反DCT、反整數(shù)變換、反卡胡嫩-羅孚(Karhunen-Loeve)變換(KLT)、反旋轉(zhuǎn)變換、反方向性變換,或另一反變換。
[0188]如果使用幀內(nèi)預(yù)測對進(jìn)行編碼,那么幀內(nèi)預(yù)測處理單元166可執(zhí)行幀內(nèi)預(yù)測來產(chǎn)生PU的預(yù)測性塊。幀內(nèi)預(yù)測處理單元166可使用幀內(nèi)預(yù)測模式以基于在空間上相鄰的PU的預(yù)測塊而產(chǎn)生I3U的預(yù)測性亮度塊、Cb塊以及Cr塊。幀內(nèi)預(yù)測處理單元166可基于從位流解碼的一或多個(gè)語法元素來確定用于PU的幀內(nèi)預(yù)測模式。
[0189]預(yù)測處理單元152可基于從位流提取的語法元素來建構(gòu)第一參考圖片列表(RefPicListO)及第二參考圖片列表(RefPicListl)。此外,如果使用幀間預(yù)測對I3U進(jìn)行編碼,那么熵解碼單元150可提取PU的運(yùn)動(dòng)信息。運(yùn)動(dòng)補(bǔ)償單元164可基于PU的運(yùn)動(dòng)信息確定I3U的一或多個(gè)參考區(qū)。運(yùn)動(dòng)補(bǔ)償單元164可基于在PU的一或多個(gè)參考塊處的樣本塊而產(chǎn)生PU的預(yù)測性亮度塊、Cb塊及Cr塊。
[0190]重構(gòu)單元158可在適用時(shí)使用與⑶的TU相關(guān)聯(lián)的亮度變換塊、Cb變換塊及Cr變換塊及CU的PU的預(yù)測性亮度塊、Cb塊及Cr塊(即,幀內(nèi)預(yù)測數(shù)據(jù)或幀間預(yù)測數(shù)據(jù))來重構(gòu)CU的亮度譯碼塊、Cb譯碼塊及Cr譯碼塊。例如,重構(gòu)單元158可將亮度變換塊、Cb變換塊以及Cr變換塊的樣本添加到預(yù)測性亮度塊、Cb塊及Cr塊的對應(yīng)樣本以重構(gòu)CU的亮度譯碼塊、Cb譯碼塊及Cr譯碼塊。
[0191]濾波器單元160可執(zhí)行解塊操作以減少與CU的亮度譯碼塊、Cb譯碼塊及Cr譯碼塊相關(guān)聯(lián)的塊性假影。視頻解碼器30可在經(jīng)解碼圖片緩沖器162中存儲CU的亮度譯碼塊、Cb譯碼塊及Cr譯碼塊。經(jīng)解碼圖片緩沖器162可提供參考圖片以用于后續(xù)的運(yùn)動(dòng)補(bǔ)償、幀內(nèi)預(yù)測以及在顯示裝置(例如,圖1的顯示裝置32)上的呈現(xiàn)。舉例來說,視頻解碼器30可基于經(jīng)解碼圖片緩沖器162中的亮度、Cb及Cr對其它CU的PU執(zhí)行幀內(nèi)預(yù)測或幀間預(yù)測操作。以此方式,視頻解碼器30可從位流解析亮度系數(shù)塊的變換系數(shù)層級、反量化變換系數(shù)層級、對變換系數(shù)層級應(yīng)用變換以產(chǎn)生變換塊、至少部分基于變換塊而產(chǎn)生譯碼塊,且輸出譯碼塊以用于顯示。
[0192]圖12是說明用以確定用于AMVP、合并模式運(yùn)動(dòng)向量預(yù)測及視圖間殘差預(yù)測中的當(dāng)前PU的視差向量的視頻譯碼器的實(shí)例性操作200的流程圖。操作200可由視頻編碼器(例如,視頻編碼器20)、視頻解碼器(例如,視頻解碼器30)或另一裝置執(zhí)行。視頻譯碼器可針對視圖Vl執(zhí)行操作200且還可針對視圖V2執(zhí)行操作200?;A(chǔ)視圖可被表示為視圖VO0視圖Vl可在視圖VO的左邊且視圖V2可在視圖VO的右邊。此外,關(guān)于操作200,可將視差向量候選列表表不為disVecCan。在一些實(shí)例中,視差向量可直接用于視圖間運(yùn)動(dòng)預(yù)測和視圖間殘差預(yù)測。另外,視差向量的垂直部分在用于AMVP模式時(shí)可被設(shè)定為0,且被視為視圖間參考圖片的預(yù)測符。
[0193]在圖12的實(shí)例中,視頻譯碼器可初始化在空間上相鄰的指示符以使得在空間上相鄰的PU指示符指示根據(jù)檢查次序的第一相關(guān)的在空間上相鄰的ro(202)。在一些實(shí)例中,所述相關(guān)的在空間上相鄰的I3U可為覆蓋位置Ap BpB1及B2的PU,如圖2的實(shí)例中所示。在一些實(shí)例中,視頻譯碼器可根據(jù)以下位置次序來檢查所述相關(guān)的在空間上相鄰的PU =A1, B1, B0, A0及B2。因此,視頻譯碼器可檢查空間相鄰的預(yù)測單元N(其中N依序被仏、
B。、Atl 及 B2 取代)。
[0194]此外,視頻譯碼器可確定是否所有相關(guān)的在空間上相鄰的已被檢查(204)。響應(yīng)于視頻譯碼器尚未檢查所有相關(guān)的在空間上相鄰的PU(204的“否”),視頻譯碼器可確定當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量是否可用且是否為視差運(yùn)動(dòng)向量
(206)。當(dāng)前在空間上相鄰的可為由在空間上相鄰的PU指示符指示的PU。一般來說,PU的RefPicListO運(yùn)動(dòng)向量是指示在I3U的RefPicListO參考索引中指示的參考圖片中的位置的PU的運(yùn)動(dòng)向量。I3U的RefPicListO參考索引是指示RefPicListO中的參考圖片的參考索引。如果針對PU指定運(yùn)動(dòng)向量,那么視頻譯碼器可確定的運(yùn)動(dòng)向量是可用的。響應(yīng)于確定當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量是可用的且是視差運(yùn)動(dòng)向量(206的“是”),視頻譯碼器可將當(dāng)前在空間上相鄰的的RefPicListO運(yùn)動(dòng)向量添加到disVecCan (208)。
[0195]不管當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量是否可用且是否為視差運(yùn)動(dòng)向量,視頻譯碼器可確定當(dāng)前在空間上相鄰的PU的RefPicListl運(yùn)動(dòng)向量是否可用且是否為視差運(yùn)動(dòng)向量(210)。一般來說,I3U的RefPicListl運(yùn)動(dòng)向量是指示在PU的RefPicListl參考索引中指示的參考圖片中的位置的I3U的運(yùn)動(dòng)向量。I3U的RefPicListl參考索引是指不RefPicListl中的參考圖片的參考索引。響應(yīng)于確定當(dāng)如在空間上相鄰的PU的RefPicListl運(yùn)動(dòng)向量是可用的且是視差運(yùn)動(dòng)向量(210的“是”),視頻譯碼器可將當(dāng)前在空間上相鄰的PU的RefPicListl運(yùn)動(dòng)向量添加到disVecCan(212)。
[0196]在將RefPicListl運(yùn)動(dòng)向量添加到disVecCan或響應(yīng)于確定RefPicListl運(yùn)動(dòng)向量不可用或不是視差運(yùn)動(dòng)向量(210的“否”),視頻譯碼器可設(shè)定在空間上相鄰的指示符以指示根據(jù)檢查次序的下一相關(guān)的在空間上相鄰的PU(214)。視頻譯碼器可隨后再次確定是否所有相關(guān)的在空間上相鄰的I3U已被檢查(204)。
[0197]響應(yīng)于確定所有相關(guān)的在空間上相鄰的已被檢查(204的“是”),視頻譯碼器可確定disVecCan包含至少一個(gè)視差運(yùn)動(dòng)向量(216)。響應(yīng)于確定disVecCan不包含任何視差運(yùn)動(dòng)向量(216的“否”),視頻譯碼器可執(zhí)行從在時(shí)間上相鄰的導(dǎo)出當(dāng)前的視差向量的過程(在圖12中表示為“A”)。在本發(fā)明中其它地方描述的圖13是說明用以從在時(shí)間上相鄰的PU導(dǎo)出當(dāng)前的視差向量的實(shí)例性操作的流程圖。
[0198]否則,響應(yīng)于確定disVecCan包含至少一個(gè)視差運(yùn)動(dòng)向量(216的“是”),視頻譯碼器可確定當(dāng)前視圖是否在基礎(chǔ)視圖的左邊(218)。換句話說,視頻譯碼器可確定當(dāng)前視圖是視圖VI。響應(yīng)于確定當(dāng)前視圖在基礎(chǔ)視圖的左邊(218的“是”),視頻譯碼器可基于disVecCan中具有最小水平值的視差運(yùn)動(dòng)向量來確定當(dāng)前PU的視差向量(220)。舉例來說,視頻譯碼器可確定當(dāng)前PU的視差向量等于當(dāng)前在空間上相鄰的的RefPicListO運(yùn)動(dòng)向量的水平分量。否則,響應(yīng)于確定當(dāng)前視圖不在基礎(chǔ)視圖的左邊(218的“否”),視頻譯碼器可基于disVecCan中具有最大水平值的視差運(yùn)動(dòng)向量來確定當(dāng)前I3U的視差向量(222)。
[0199]以此方式,對于每一相鄰F1U N,前向及后向運(yùn)動(dòng)向量(即,分別對應(yīng)于RefPicListO及RefPicListl的運(yùn)動(dòng)向量)(如果可用)兩者都被檢查且在所述運(yùn)動(dòng)向量是視差運(yùn)動(dòng)向量的情況下添加到disVecCan。本發(fā)明可將指示RefPicListO中的參考圖片的運(yùn)動(dòng)向量稱作前向運(yùn)動(dòng)向量,且可將指示RefPicListI中的參考圖片的運(yùn)動(dòng)向量稱作后向運(yùn)動(dòng)向量。響應(yīng)于確定在空間上相鄰的PU具有視差運(yùn)動(dòng)向量,視頻譯碼器將所述視差向量包含在視差向量候選者列表(disVecCan)中。
[0200]在檢查在空間上相鄰的I3U之后,視頻譯碼器可確定disVecCan是否包含任何視差運(yùn)動(dòng)向量。響應(yīng)于確定disVecCan不包含任何視差運(yùn)動(dòng)向量,視頻譯碼器可執(zhí)行對時(shí)間視差向量的導(dǎo)出過程。否則,響應(yīng)于確定disVecCan包含至少一個(gè)視差運(yùn)動(dòng)向量,視頻譯碼器可從disVecCan中的視差運(yùn)動(dòng)向量中選擇一視差向量。如果當(dāng)前視圖是視圖VI,那么視頻譯碼器可返回在disVecCan中具有所有條目的最小水平值的視差向量。否則(當(dāng)前視圖是視圖V2),視頻譯碼器可返回在disVecCan中具有所有條目的最大水平值的視差向量。
[0201]圖13是說明用以基于在時(shí)間上相鄰的PU來確定當(dāng)前I3U的視差向量的實(shí)例性操作250的流程圖。操作250可由視頻編碼器(例如,視頻編碼器20)、視頻解碼器(例如,視頻解碼器30)或另一裝置執(zhí)行。操作250可為在圖12中表示為“A”的操作200的部分。如上文關(guān)于圖12所指示,在disVecCan不包含任何視差運(yùn)動(dòng)向量時(shí),視頻譯碼器可執(zhí)行對時(shí)間視差向量的導(dǎo)出過程,例如操作250。
[0202]如圖13的實(shí)例中所說明,視頻譯碼器可初始化當(dāng)前候選圖片指示符,以使得當(dāng)前候選圖片指示符指示來自當(dāng)前視圖的位于同一地點(diǎn)的參考圖片(252)。如果當(dāng)前切片(即,含有當(dāng)前I3U的切片)在B切片中且當(dāng)前切片的切片標(biāo)頭中的COllOCated_frOm_10_flag語法元素指示位于同一地點(diǎn)的參考圖片在RefPicListl中,那么位于同一地點(diǎn)的參考圖片可為RefPicListl中的由切片標(biāo)頭的collocated_ref_idx語法元素指示的位置處的參考圖片。否則,如果當(dāng)前切片是P切片或當(dāng)前圖片是B切片且當(dāng)前切片的切片標(biāo)頭中的collocated_from_10_flag語法元素指示位于同一地點(diǎn)的參考圖片在RefPicListO中,那么位于同一地點(diǎn)的參考圖片可為RefPicListO中的由切片標(biāo)頭的collocated_ref_idx語法元素指示的位置處的參考圖片。由當(dāng)前候選圖片指示符指示的候選圖片可在本文中被稱作當(dāng)前候選圖片。
[0203]此外,在圖13的實(shí)例中,視頻譯碼器可確定是否所有候選圖片已被檢查(254)。在視頻譯碼器尚未檢查所有候選圖片時(shí),視頻譯碼器可檢查當(dāng)前候選圖片。在視頻譯碼器檢查當(dāng)前候選圖片時(shí),視頻譯碼器可檢查當(dāng)前候選圖片內(nèi)的三個(gè)候選區(qū)。第一候選區(qū)是位于同一地點(diǎn)的PU(CPU)區(qū)。第二候選區(qū)是位于同一地點(diǎn)的IXU區(qū)。第三候選區(qū)是右下方(BR)區(qū)。CPU區(qū)是當(dāng)前候選圖片內(nèi)的與當(dāng)前PU(或當(dāng)前CU)位于同一地點(diǎn)的區(qū)。CLCU區(qū)是當(dāng)前候選圖片內(nèi)的與覆蓋當(dāng)前候選圖片內(nèi)的與當(dāng)前PU位于同一地點(diǎn)的區(qū)的LCU( S卩,CTU)相關(guān)聯(lián)的區(qū)。BR區(qū)是當(dāng)前候選圖片內(nèi)的緊接在CPU區(qū)的右下方的4X4區(qū)。因此,可如下定義三個(gè)候選區(qū):
[0204].CPU:當(dāng)前PU或當(dāng)前⑶的位于同一地點(diǎn)的區(qū)。
[0205].CIXU:覆蓋當(dāng)前I3U的位于同一地點(diǎn)的區(qū)的IXU。
[0206].BR:CPU 的右下方 4X4 塊。
[0207]圖14是說明候選圖片300的實(shí)例性候選區(qū)的概念圖。在圖14的實(shí)例中,當(dāng)前圖片302包含與當(dāng)前PU相關(guān)聯(lián)的區(qū)304。區(qū)304在與當(dāng)前LCU相關(guān)聯(lián)的區(qū)306內(nèi)。區(qū)304的左上方樣本相對于當(dāng)前圖片302的左上方樣本位于(xO,y0)處。換句話說,當(dāng)前圖片302中的當(dāng)前I3U中的左上方樣本的位置是由(x0,y0)表示。候選圖片300中的CPU區(qū)310具有與區(qū)304相同的大小。CPU區(qū)310的左上方樣本相對于候選圖片300的左上方樣本位于(x0, y0)處。換句話說,在候選圖片300中,由CPU表示具有相同大小的PU且其左上方樣本位于(x0,y0)處的位于同一地點(diǎn)的區(qū)。候選圖片的區(qū)312與區(qū)306具有相同大小且與區(qū)306位于同一地點(diǎn)。候選圖片300的區(qū)314緊接在CPU區(qū)310的右下方而定位。以此方式,由CIXU表示覆蓋CPU的IXU,且由BR表示CPU的右下方塊。
[0208]現(xiàn)在繼續(xù)參考圖13的實(shí)例。為了檢查當(dāng)前候選圖片的候選區(qū),響應(yīng)于確定視頻譯碼器尚未檢查所有候選圖片(254的“否”),視頻譯碼器可初始化當(dāng)前候選區(qū)指示符以使得當(dāng)前候選區(qū)指示符指示根據(jù)候選區(qū)檢查次序的第一候選區(qū)(256)。由候選區(qū)指示符指示的候選區(qū)可在本文中被稱作當(dāng)前候選區(qū)。如果當(dāng)前視圖是視圖Vl (即,基礎(chǔ)視圖的左邊的視圖),那么候選區(qū)檢查次序可為如下:CPU區(qū)、CIXU區(qū)及BR區(qū)。如果當(dāng)前視圖是視圖V2 ( SP,基礎(chǔ)視圖的右邊的視圖),那么候選區(qū)檢查次序可為如下:BR區(qū)、CPU區(qū)、CIXU區(qū)。換句話說,在每一候選圖片內(nèi),此圖片中的對應(yīng)三個(gè)候選區(qū)將針對Vl以(CPU、CLCU及BR)的次序且針對V2以(BR、CPU、CIXU)的次序進(jìn)行檢查。
[0209]在初始化當(dāng)前候選區(qū)指示符之后,視頻譯碼器可確定視頻譯碼器是否已檢查當(dāng)前候選圖片的所有候選區(qū)(258)。響應(yīng)于確定視頻譯碼器尚未檢查當(dāng)前候選圖片的所有候選區(qū)(258的“否”),視頻譯碼器可確定當(dāng)前候選區(qū)是否與視差運(yùn)動(dòng)向量相關(guān)聯(lián)(260)。在當(dāng)前候選區(qū)覆蓋一個(gè)以上16X 16分區(qū)時(shí),以光柵掃描次序掃描當(dāng)前候選區(qū)中的每一 16X 16分區(qū)的左上方4X4塊。在覆蓋當(dāng)前候選區(qū)的16X 16分區(qū)的左上方4X4塊的PU具有可用的視差運(yùn)動(dòng)向量時(shí),視頻譯碼器可確定PU的視差運(yùn)動(dòng)向量是與當(dāng)前候選區(qū)相關(guān)聯(lián)的視差運(yùn)動(dòng)向量。否則,在當(dāng)前候選區(qū)不覆蓋一個(gè)以上16X16分區(qū)時(shí),視頻譯碼器可選擇當(dāng)前候選區(qū)的左上方4X4塊以用于視差向量導(dǎo)出。也就是說,在覆蓋當(dāng)前候選區(qū)的左上方4X4塊的PU具有視差運(yùn)動(dòng)向量的情況下,視頻譯碼器可確定此視差運(yùn)動(dòng)向量是與當(dāng)前候選區(qū)相關(guān)聯(lián)的視差運(yùn)動(dòng)向量。
[0210]響應(yīng)于確定當(dāng)前候選區(qū)與視差運(yùn)動(dòng)向量相關(guān)聯(lián)(260的“是”),視頻譯碼器可基于與當(dāng)前候選區(qū)相關(guān)聯(lián)的視差運(yùn)動(dòng)向量來確定當(dāng)前PU的視差向量(262)。舉例來說,視頻譯碼器可確定當(dāng)前I3U的視差向量等于當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量的水平分量。否則,響應(yīng)于確定當(dāng)前候選區(qū)不與視差運(yùn)動(dòng)向量相關(guān)聯(lián)(260的“否”),視頻譯碼器可將當(dāng)前候選區(qū)指示符設(shè)定為根據(jù)候選區(qū)檢查次序的下一候選區(qū)(264)。視頻譯碼器可隨后再次確定是否已檢查當(dāng)前候選圖片的所有候選區(qū)(258)。
[0211]響應(yīng)于確定當(dāng)前候選圖片的所有候選區(qū)已被檢查(258的“是”),視頻譯碼器可將當(dāng)前候選圖片指示符設(shè)定為根據(jù)候選圖片檢查次序的下一候選圖片(266)。視頻譯碼器可根據(jù)剩余候選圖片的參考索引以遞升次序檢查剩余的候選圖片(即,除了位于同一地點(diǎn)的候選圖片之外的候選圖片)。在一個(gè)參考索引對應(yīng)于RefPicListO中的圖片且還對應(yīng)于RefPicListl中的圖片時(shí),視頻譯碼器可檢查RefPicListX中的參考圖片,之后檢查RefPicListY中的參考圖片,其中X等于collocated_from_10_flag且Y等于1-X。在設(shè)定當(dāng)前候選圖片指示符之后,視頻譯碼器可再次確定視頻譯碼器是否已檢查所有候選圖片(254)。
[0212]響應(yīng)于確定視頻譯碼器已檢查所有候選圖片(254的“是”),視頻譯碼器可將零視差向量用作當(dāng)前PU的視差向量(268)。零視差向量可為水平和垂直部分兩者都被設(shè)定為O的視差向量。
[0213]以此方式,首先檢查來自當(dāng)前視圖的位于同一地點(diǎn)的參考圖片。隨后,以參考索引的遞升次序檢查剩余候選圖片中的每一者。在每一候選圖片內(nèi),此圖片中的對應(yīng)三個(gè)候選區(qū)可針對Vl以(CPU、CIXU及BR)的次序且針對V2以(BR、CPU、CIXU)的次序進(jìn)行檢查。一旦識別視差運(yùn)動(dòng)向量,便可終止檢查過程且第一可用的視差運(yùn)動(dòng)向量可作為視差向量返回。如果此過程未返回可用的視差向量,那么可返回零視差向量(水平和垂直部分兩者都被設(shè)定為O)作為用于視圖間運(yùn)動(dòng)預(yù)測的視差向量。
[0214]圖15是說明實(shí)例性視差向量產(chǎn)生過程350的流程圖。視差向量產(chǎn)生過程350可由視頻編碼器(例如,視頻編碼器20)、視頻解碼器(例如,視頻解碼器30)或另一裝置執(zhí)行??蓤?zhí)行視差向量產(chǎn)生過程350以確定當(dāng)前的視差向量以用于合并模式、AMVP模式或視圖間殘差預(yù)測。視頻譯碼器可針對視圖Vl及視圖V2中的每一者執(zhí)行視差向量產(chǎn)生過程350,其中Vl在基礎(chǔ)視圖的左邊且V2在基礎(chǔ)視圖的右邊。
[0215]在圖15的實(shí)例中,視頻譯碼器可確定視差向量產(chǎn)生過程350經(jīng)執(zhí)行以使用合并模式I3U確定當(dāng)前I3U的運(yùn)動(dòng)信息(352)。響應(yīng)于確定視差向量產(chǎn)生過程350未經(jīng)執(zhí)行以使用合并模式確定當(dāng)前PU的運(yùn)動(dòng)信息(352的“否”),視頻譯碼器可執(zhí)行圖16的實(shí)例中展示的視差向量產(chǎn)生過程350的一部分(在圖15中表示為“B”)。舉例來說,在視差向量產(chǎn)生過程350經(jīng)執(zhí)行以使用AMVP模式確定當(dāng)前I3U的運(yùn)動(dòng)信息時(shí),或在視差向量產(chǎn)生過程350經(jīng)執(zhí)行以作為視圖間殘差預(yù)測過程的一部分時(shí),視頻譯碼器可執(zhí)行圖16中展示的視差向量產(chǎn)生過程350的所述部分。
[0216]響應(yīng)于確定視差向量產(chǎn)生過程350經(jīng)執(zhí)行以使用合并模式確定當(dāng)前的運(yùn)動(dòng)信息(352的“是”),視頻譯碼器可初始化在空間上相鄰的指示符以使得在空間上相鄰的PU指示符指示根據(jù)檢查次序的第一相關(guān)的在空間上相鄰的PU (354)。在一些實(shí)例中,所述相關(guān)的在空間上相鄰的PU可為覆蓋位置ApApBc^B1及82的PU,如圖2的實(shí)例中所示。在一些實(shí)例中,視頻譯碼器可根據(jù)以下位置次序來檢查所述相關(guān)的在空間上相鄰的PU =A1, B1, B0,Atl及B2。因此,視頻譯碼器可檢查空間相鄰的預(yù)測單元N(其中N依序被Ap B1, B0, A0及B2取代)。
[0217]接下來,視頻譯碼器可確定是否所有相關(guān)的在空間上相鄰的已被檢查(356)。響應(yīng)于視頻譯碼器尚未檢查所有相關(guān)的在空間上相鄰的PU(356的“否”),視頻譯碼器可確定當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量是否可用且是否為視差運(yùn)動(dòng)向量(358)。當(dāng)前在空間上相鄰的PU可為由在空間上相鄰的PU指示符指示的PU。響應(yīng)于確定當(dāng)前在空間上相鄰的PU的RefPicListO運(yùn)動(dòng)向量是可用的且是視差運(yùn)動(dòng)向量(358的“是”),視頻譯碼器可基于當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量來確定當(dāng)前I3U的視差向量(360)。舉例來說,視頻譯碼器可確定當(dāng)前的視差向量等于當(dāng)前在空間上相鄰的PU的RefPicListO運(yùn)動(dòng)向量的水平分量。
[0218]另一方面,響應(yīng)于確定當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量不可用或不是視差運(yùn)動(dòng)向量(358的“否”),視頻譯碼器可確定當(dāng)前在空間上相鄰的的RefPicListl運(yùn)動(dòng)向量是否可用且是否為視差運(yùn)動(dòng)向量(362)。響應(yīng)于確定當(dāng)前在空間上相鄰的PU的RefPicListl運(yùn)動(dòng)向量是可用的且是視差運(yùn)動(dòng)向量(362的“是”),視頻譯碼器可基于當(dāng)前在空間上相鄰的I3U的RefPicListl運(yùn)動(dòng)向量來確定當(dāng)前I3U的視差向量(364)。舉例來說,視頻譯碼器可確定當(dāng)前的視差向量等于當(dāng)前在空間上相鄰的PU的RefPicListO運(yùn)動(dòng)向量的水平分量。
[0219]然而,響應(yīng)于確定當(dāng)前在空間上相鄰的I3U的RefPicListl運(yùn)動(dòng)向量不可用或不是視差運(yùn)動(dòng)向量(362的“否”),視頻譯碼器可將在空間上相鄰的指示符設(shè)定為下一相關(guān)的在空間上相鄰的PU(366)。視頻譯碼器可隨后再次確定視頻譯碼器是否已檢查所有相關(guān)的在空間上相鄰的PU(356)。以此方式,對于相鄰的I3U N中的每一者,如果來自RefPicListO的運(yùn)動(dòng)向量是可用的且其為視差運(yùn)動(dòng)向量,那么其作為最終視差向量而返回。否則,檢查來自RefPicListl的運(yùn)動(dòng)向量(如果可用)。如果來自RefPicListl的運(yùn)動(dòng)向量是視差運(yùn)動(dòng)向量,那么來自RefPicListl的運(yùn)動(dòng)向量用作用于應(yīng)用于合并模式的視圖間運(yùn)動(dòng)預(yù)測的視差向量。
[0220]響應(yīng)于確定視頻譯碼器已檢查所有相關(guān)的在空間上相鄰的TO(356的“是”),視頻譯碼器可執(zhí)行對圖15的實(shí)例中指示為“A”的時(shí)間視差向量的導(dǎo)出過程。在一些實(shí)例中,在視頻譯碼器已檢查所有相關(guān)的在空間上相鄰的PU時(shí),視頻譯碼器可執(zhí)行圖13中所示的實(shí)例過程。
[0221]以此方式,在不存在對空間視差向量的以上導(dǎo)出過程中識別的視差運(yùn)動(dòng)向量時(shí),調(diào)用對時(shí)間視差向量的導(dǎo)出過程。時(shí)間相鄰塊的定義以及時(shí)間相鄰塊的檢查次序與關(guān)于圖13的實(shí)例所描述相同。如果此過程未返回可用的視差向量,那么可返回零視差向量(水平和垂直部分兩者都被設(shè)定為O)作為視差向量。
[0222]圖16是說明用于AMVP及視圖間殘差預(yù)測模式的實(shí)例性視差向量產(chǎn)生過程的流程圖。換句話說,對于針對應(yīng)用于AMVP模式及視圖間殘差預(yù)測的視圖間運(yùn)動(dòng)預(yù)測而產(chǎn)生的視差向量,可利用圖16的方法。以此方式,可針對合并模式執(zhí)行第一視差運(yùn)動(dòng)向量導(dǎo)出過程,且可針對AMVP模式及視圖間殘差預(yù)測執(zhí)行第二視差運(yùn)動(dòng)向量導(dǎo)出過程。視差向量產(chǎn)生過程可為圖15的視差向量產(chǎn)生過程350的部分。如下文所描述,在圖16的實(shí)例中,首先檢查空間相鄰塊,隨后檢查時(shí)間相鄰塊。
[0223]在圖16的實(shí)例中,視頻譯碼器可初始化在空間上相鄰的指示符以使得在空間上相鄰的PU指不符指不根據(jù)檢查次序的第一相關(guān)的在空間上相鄰的PU(402)。圖17是說明在空間上與當(dāng)前PU相鄰的實(shí)例性位置的概念圖。在圖16的實(shí)例中,所述相關(guān)的在空間上相鄰的PU可為覆蓋位置A0到Ak、BO到BL、C及D的PU,如圖17的實(shí)例中所示。
[0224]在初始化在空間上相鄰的指示符之后,視頻譯碼器可隨后確定是否所有相關(guān)的在空間上相鄰的PU已被檢查(404)。響應(yīng)于視頻譯碼器尚未檢查所有相關(guān)的在空間上相鄰的PU(404的“否”),視頻譯碼器可確定當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量是否可用且是否為視差運(yùn)動(dòng)向量(406)。響應(yīng)于確定當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量是可用的且是視差運(yùn)動(dòng)向量(406的“是”),視頻譯碼器可確定當(dāng)前視圖是否為視圖Vl (即,基礎(chǔ)視圖左邊的視圖)且視差運(yùn)動(dòng)向量是否具有小于或等于O的水平值(408)。響應(yīng)于確定當(dāng)前視圖不是視圖Vl或視差運(yùn)動(dòng)向量具有不小于或等于O的水平值(408的“否”),視頻譯碼器可確定當(dāng)前視圖是否為視圖V2(即,基礎(chǔ)視圖右邊的視圖)且視差運(yùn)動(dòng)向量是否具有大于或等于O的水平值(410)。
[0225]響應(yīng)于確定當(dāng)前視圖是視圖Vl且視差運(yùn)動(dòng)向量具有小于或等于O的水平值(408的“是”),或響應(yīng)于確定當(dāng)前視圖是視圖V2且視差運(yùn)動(dòng)向量具有大于或等于O的水平值(408的“是”),視頻譯碼器可將當(dāng)前在空間上相鄰的的RefPicListO運(yùn)動(dòng)向量添加到disVecCan (412)??蓪isVecCan初始化為空列表。
[0226]在將當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量添加到disVecCan之后,響應(yīng)于確定當(dāng)前視圖不是視圖V2或視差運(yùn)動(dòng)向量不具有大于或等于O的水平值(410的“否”),或響應(yīng)于確定當(dāng)前在空間上相鄰的I3U的RefPicListO運(yùn)動(dòng)向量不可用或不是視差運(yùn)動(dòng)向量(406的“否”),視頻譯碼器可確定當(dāng)前在空間上相鄰的的RefPicListl運(yùn)動(dòng)向量是否可用且是否為視差運(yùn)動(dòng)向量(414)。響應(yīng)于確定當(dāng)前在空間上相鄰的的RefPicListl運(yùn)動(dòng)向量是可用的且是視差運(yùn)動(dòng)向量(414的“是”),視頻譯碼器可確定當(dāng)前視圖是否為視圖Vl (即,基礎(chǔ)視圖左邊的視圖)且視差運(yùn)動(dòng)向量是否具有小于或等于O的水平值(416)。響應(yīng)于確定當(dāng)前視圖不是視圖Vl或視差運(yùn)動(dòng)向量具有不小于或等于O的水平值(416的“否”),視頻譯碼器可確定當(dāng)前視圖是否為視圖V2(即,基礎(chǔ)視圖右邊的視圖)且視差運(yùn)動(dòng)向量是否具有大于或等于O的水平值(418)。
[0227]響應(yīng)于確定當(dāng)前視圖是視圖Vl且視差運(yùn)動(dòng)向量具有小于或等于O的水平值(416的“是”),或響應(yīng)于確定當(dāng)前視圖是視圖V2且視差運(yùn)動(dòng)向量具有大于或等于O的水平值(418的“是”),視頻譯碼器可將當(dāng)前在空間上相鄰的的RefPicListl運(yùn)動(dòng)向量添加到disVecCan (420)。在將當(dāng)前在空間上相鄰的I3U的RefPicListl運(yùn)動(dòng)向量添加到disVecCan之后,視頻譯碼器可設(shè)定在空間上相鄰的PU指示符以指示根據(jù)用于相關(guān)的在空間上相鄰的PU的檢查次序的下一相關(guān)的在空間上相鄰的TO(420)。在設(shè)定在空間上相鄰的指示符之后,或響應(yīng)于確定當(dāng)前在空間上相鄰的PU的RefPicListl運(yùn)動(dòng)向量不可用或不是視差運(yùn)動(dòng)向量(414的“否”),或響應(yīng)于確定當(dāng)前視圖不是視圖V2或視差運(yùn)動(dòng)向量不具有大于或等于O的水平值(418的“否”),視頻譯碼器可將在空間上相鄰的指示符設(shè)定為根據(jù)檢查次序的下一相關(guān)的在空間上相鄰的PU(422)。視頻譯碼器可隨后再次確定視頻譯碼器是否已檢查所有相關(guān)的在空間上相鄰的PU(404)。
[0228]以此方式,對于相鄰塊中的每一者,前向及后向運(yùn)動(dòng)向量(分別對應(yīng)于RefPicListO及RefPicListl)(如果可用)兩者都被檢查且在所述運(yùn)動(dòng)向量是視差運(yùn)動(dòng)向量且以下條件中的一者為真的情況下添加到disVecCan:
[0229]?如果當(dāng)前視圖是Vl且視差運(yùn)動(dòng)向量具有小于或等于O的水平值。
[0230]?如果當(dāng)前視圖是V2且視差運(yùn)動(dòng)向量具有大于或等于O的水平值。
[0231]響應(yīng)于確定視頻譯碼器已檢查所有相關(guān)的在空間上相鄰的TO(404的“是”),視頻譯碼器可執(zhí)行圖18中展示的視差向量產(chǎn)生過程350的所述部分(在圖16中標(biāo)記為“D”)。
[0232]圖18是說明圖15及16的視差向量產(chǎn)生過程350的實(shí)例性接續(xù)部分的流程圖。在圖18的實(shí)例中,視頻譯碼器可確定disVecCan是否包含至少一個(gè)視差運(yùn)動(dòng)向量(450)。如果disVecCan不含有至少一個(gè)視差運(yùn)動(dòng)向量,那么視頻譯碼器可調(diào)用對時(shí)間視差向量的導(dǎo)出過程。具體來說,在圖18的實(shí)例中,響應(yīng)于確定disVecCan不包含任何視差運(yùn)動(dòng)向量(450的“否”),視頻譯碼器可確定當(dāng)前視圖是否在基礎(chǔ)視圖的左邊(452)。換句話說,視頻譯碼器可確定當(dāng)前視圖是否為視圖VI。響應(yīng)于確定當(dāng)前視圖在基礎(chǔ)視圖的左邊(452的“是”),視頻譯碼器執(zhí)行圖19中展示的視差向量產(chǎn)生過程350的所述部分(在圖18中標(biāo)記為 “E”)。
[0233]響應(yīng)于確定當(dāng)前視圖不在基礎(chǔ)視圖的左邊(S卩,當(dāng)前視圖是視圖V2) (452的“否”),視頻譯碼器可執(zhí)行對時(shí)間視差向量的不同導(dǎo)出過程(在圖18的實(shí)例中標(biāo)記為“A”)。在一些實(shí)例中,在當(dāng)前視圖是視圖V2時(shí),視頻譯碼器可執(zhí)行圖13中所示的對時(shí)間視差向量的導(dǎo)出過程。也就是說,如果當(dāng)前視圖是V2,那么調(diào)用以下過程:遵循時(shí)間相鄰塊的相同定義及如圖13中所描述的檢查次序,返回第一可用的視差運(yùn)動(dòng)向量作為最終視差向量。如果未找到此視差運(yùn)動(dòng)向量,那么可返回零視差向量(水平和垂直部分兩者都被設(shè)定為O)作為視差向量。
[0234]否則,如果disVecCan含有至少一個(gè)視差向量,那么視頻譯碼器可調(diào)用用以選擇最優(yōu)選的空間視差運(yùn)動(dòng)向量的過程且返回。也就是說,響應(yīng)于確定disVecCan包含至少一個(gè)視差運(yùn)動(dòng)向量(450的“是”),視頻譯碼器可確定當(dāng)前視圖是否在基礎(chǔ)視圖的左邊(454)。換句話說,視頻譯碼器可確定當(dāng)前視圖是否為視圖VI。響應(yīng)于確定當(dāng)前視圖在基礎(chǔ)視圖的左邊(454的“是”),為了 AMVP模式及視圖間殘差預(yù)測,視頻譯碼器可基于disVecCan中具有最小水平值的視差運(yùn)動(dòng)向量來確定當(dāng)前PU的視差向量(456)。換句話說,如果當(dāng)前視圖是VI,那么返回在disVecCan中的所有條目中具有最小視差值的視差向量。
[0235]否則,響應(yīng)于確定當(dāng)前視圖不在基礎(chǔ)視圖的左邊(454的“否”),為了 AMVP模式及視圖間殘差預(yù)測,視頻譯碼器可基于disVecCan中具有最大水平值的視差運(yùn)動(dòng)向量來確定當(dāng)前I3U的視差向量(458)。換句話說,如果當(dāng)前視圖是視圖V2,那么返回在disVecCan中的所有條目中具有最大視差值的視差向量。
[0236]圖19是說明圖15、16及17的視差向量產(chǎn)生過程350的實(shí)例性接續(xù)部分的流程圖。如圖19的實(shí)例中所說明,視頻譯碼器可初始化當(dāng)前候選圖片指示符,以使得當(dāng)前候選圖片指示符指示來自當(dāng)前視圖的位于同一地點(diǎn)的參考圖片(500)。如果當(dāng)前切片(S卩,含有當(dāng)前PU的切片)在B切片中且當(dāng)前切片的切片標(biāo)頭中的collocated_from_10_flag語法元素指示位于同一地點(diǎn)的參考圖片在RefPicListl中,那么位于同一地點(diǎn)的參考圖片可為RefPicListl中的由切片標(biāo)頭的collocated_ref_idx語法元素指示的位置處的參考圖片。否則,如果當(dāng)前切片是P切片或當(dāng)前圖片是B切片且當(dāng)前切片的切片標(biāo)頭中的collocated_from_10_flag語法元素指示位于同一地點(diǎn)的參考圖片在RefPicListO中,那么位于同一地點(diǎn)的參考圖片可為RefPicListO中的由切片標(biāo)頭的collocated_ref_idx語法元素指示的位置處的參考圖片。由當(dāng)前候選圖片指示符指示的候選圖片可在本文中被稱作當(dāng)前候選圖片。
[0237]此外,視頻譯碼器可確定是否所有候選圖片已被檢查(502)。在視頻譯碼器尚未檢查所有候選圖片時(shí),視頻譯碼器可檢查當(dāng)前候選圖片。在視頻譯碼器檢查當(dāng)前候選圖片時(shí),視頻譯碼器可檢查當(dāng)前候選圖片的CPU區(qū)、CLCU區(qū)及BR區(qū)。為了檢查當(dāng)前候選圖片的候選區(qū),響應(yīng)于確定視頻譯碼器尚未檢查所有候選圖片(502的“否”),視頻譯碼器可初始化當(dāng)前候選區(qū)指示符以使得當(dāng)前候選區(qū)指示符指示根據(jù)候選區(qū)檢查次序的第一候選區(qū)(504)。由候選區(qū)指示符指示的候選區(qū)可在本文中被稱作當(dāng)前候選區(qū)。候選區(qū)檢查次序可為如下:CPU區(qū)、CLCU區(qū)及BR區(qū)。
[0238]在初始化當(dāng)前候選區(qū)指示符之后,視頻譯碼器可確定視頻譯碼器是否已檢查當(dāng)前候選圖片的所有候選區(qū)(506)。響應(yīng)于確定視頻譯碼器尚未檢查當(dāng)前候選圖片的所有候選區(qū)(506的“否”),視頻譯碼器可確定當(dāng)前候選區(qū)是否與視差運(yùn)動(dòng)向量相關(guān)聯(lián)(508)。在當(dāng)前候選區(qū)覆蓋一個(gè)以上16X 16分區(qū)時(shí),以光柵掃描次序掃描當(dāng)前候選區(qū)中的每一 16X 16分區(qū)的左上方4X4塊。在覆蓋當(dāng)前候選區(qū)的16X 16分區(qū)的左上方4X4塊的PU具有可用的視差運(yùn)動(dòng)向量時(shí),視頻譯碼器可確定PU的視差運(yùn)動(dòng)向量是與當(dāng)前候選區(qū)相關(guān)聯(lián)的視差運(yùn)動(dòng)向量。否則,在當(dāng)前候選區(qū)不覆蓋一個(gè)以上16X16分區(qū)時(shí),視頻譯碼器可選擇當(dāng)前候選區(qū)的左上方4X4塊以用于視差向量導(dǎo)出。也就是說,在覆蓋當(dāng)前候選區(qū)的左上方4X4塊的PU具有視差運(yùn)動(dòng)向量的情況下,視頻譯碼器可確定此視差運(yùn)動(dòng)向量是與當(dāng)前候選區(qū)相關(guān)聯(lián)的視差運(yùn)動(dòng)向量。
[0239]響應(yīng)于確定當(dāng)前候選區(qū)與視差運(yùn)動(dòng)向量相關(guān)聯(lián)(508的“是”),視頻譯碼器可確定視差運(yùn)動(dòng)向量的水平值是否小于或等于O (510)。響應(yīng)于確定視差運(yùn)動(dòng)向量的水平值小于或等于0(510的“是”),為了 AMVP模式及視圖間殘差預(yù)測,視頻譯碼器可基于與當(dāng)前候選區(qū)相關(guān)聯(lián)的視差運(yùn)動(dòng)向量來確定當(dāng)前PU的視差向量(512)。
[0240]否則,響應(yīng)于確定視差運(yùn)動(dòng)向量的水平值不小于或等于0(510的“否”)或響應(yīng)于確定當(dāng)前候選區(qū)不與視差運(yùn)動(dòng)向量相關(guān)聯(lián)(508的“否”),視頻譯碼器可將當(dāng)前候選區(qū)指示符設(shè)定為根據(jù)候選區(qū)檢查次序的下一候選區(qū)(514)。視頻譯碼器可隨后再次確定是否已檢查當(dāng)前候選圖片的所有候選區(qū)(506)。
[0241]響應(yīng)于確定當(dāng)前候選圖片的所有候選區(qū)已被檢查(506的“是”),視頻譯碼器可將當(dāng)前候選圖片指示符設(shè)定為根據(jù)候選圖片檢查次序的下一候選圖片(516)。視頻譯碼器可根據(jù)剩余候選圖片的參考索引以遞升次序檢查剩余的候選圖片。在一個(gè)參考索引對應(yīng)于Ref Pi cLi StO中的圖片且還對應(yīng)于Ref Pi cLi st I中的圖片時(shí),視頻譯碼器可檢查RefPicListX中的參考圖片,之后檢查RefPicListY中的參考圖片,其中X等于collocated_from_10_flag且Y等于1_X。在設(shè)定當(dāng)前候選圖片指示符之后,視頻譯碼器可再次確定視頻譯碼器是否已檢查所有候選圖片(502)。
[0242]響應(yīng)于確定視頻譯碼器已檢查所有候選圖片(502的“是”),為了 AMVP模式及視圖間殘差預(yù)測,視頻譯碼器可將零視差向量用作當(dāng)前PU的視差向量(518)。零視差向量可為水平和垂直部分兩者都被設(shè)定為O的視差向量。
[0243]以此方式,如果當(dāng)前視圖是VI,那么調(diào)用以下過程。遵循時(shí)間相鄰塊的相同定義及如圖13中所描述的相同檢查次序,返回具有小于或等于O的水平值的第一可用的視差運(yùn)動(dòng)向量作為最終視差向量。如果未找到此視差運(yùn)動(dòng)向量,那么可返回零視差向量(水平和垂直部分兩者都被設(shè)定為O)作為視差向量。
[0244]圖20是說明根據(jù)本發(fā)明的一或多種技術(shù)的視頻編碼器20的實(shí)例性操作550的流程圖。在圖20的實(shí)例中,視頻編碼器20可使用第一視差向量導(dǎo)出過程確定第一視差向量(552)。視頻譯碼器20可使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程(554)。另外,視頻編碼器20可使用第一視差向量以確定用于當(dāng)前I3U的一組MVP候選者中的一 MVP候選者(556)。另外,視頻編碼器20可使用第二視差向量來確定殘余數(shù)據(jù)(558)。此外,視頻編碼器20可產(chǎn)生包含指示當(dāng)前PU的殘余數(shù)據(jù)及所述組MVP候選者中的所選擇的MVP候選者的數(shù)據(jù)的位流(560)。
[0245]圖21是說明根據(jù)本發(fā)明的一或多種技術(shù)的視頻解碼器30的實(shí)例性操作600的流程圖。在圖21的實(shí)例中,視頻解碼器30可使用第一視差向量導(dǎo)出過程確定第一視差向量(602)。另外,視頻解碼器30可使用第二視差向量導(dǎo)出過程確定第二視差向量。第一視差向量導(dǎo)出過程可不同于第二視差向量導(dǎo)出過程¢04)。此外,視頻解碼器30可使用第一視差向量以確定用于當(dāng)前預(yù)測單元(PU)的一組MVP候選者中的一 MVP候選者¢06)。視頻解碼器30使用第二視差向量來確定殘余數(shù)據(jù)¢08)。另外,視頻解碼器30可部分基于所述殘余數(shù)據(jù)及所述組MVP候選者中的所選擇的MVP候選者而產(chǎn)生經(jīng)重構(gòu)圖片的一或多個(gè)塊(610)。
[0246]在一或多個(gè)實(shí)例中,所描述的功能可以硬件、軟件、固件或其任何組合來實(shí)施。如果以軟件實(shí)施,那么所述功能可作為一或多個(gè)指令或代碼存儲在計(jì)算機(jī)可讀媒體上或經(jīng)由計(jì)算機(jī)可讀媒體進(jìn)行傳輸且由基于硬件的處理單元執(zhí)行。計(jì)算機(jī)可讀媒體可包含計(jì)算機(jī)可讀存儲媒體(其對應(yīng)于例如數(shù)據(jù)存儲媒體等有形媒體)或通信媒體,通信媒體包含促進(jìn)(例如)根據(jù)通信協(xié)議將計(jì)算機(jī)程序從一處傳遞到另一處的任何媒體。以此方式,計(jì)算機(jī)可讀媒體一般可對應(yīng)于(I)非暫時(shí)性的有形計(jì)算機(jī)可讀存儲媒體或(2)例如信號或載波等通信媒體。數(shù)據(jù)存儲媒體可為可由一或多個(gè)計(jì)算機(jī)或一或多個(gè)處理器存取以檢索指令、代碼和/或數(shù)據(jù)結(jié)構(gòu)來用于實(shí)施本發(fā)明中所描述的技術(shù)的任何可用媒體。計(jì)算機(jī)程序產(chǎn)品可包含計(jì)算機(jī)可讀媒體。
[0247]舉例來說且并非限制,所述計(jì)算機(jī)可讀媒體可包括RAM、ROM、EEPROM、CD-ROM或其它光盤存儲裝置、磁盤存儲裝置或其它磁性存儲裝置,快閃存儲器,或可用于存儲呈指令或數(shù)據(jù)結(jié)構(gòu)的形式的所要程序代碼且可由計(jì)算機(jī)存取的任何其它媒體。舉例來說,如果使用同軸電纜、光纖電纜、雙絞線、數(shù)字訂戶線(DSL)或例如紅外線、無線電及微波的無線技術(shù)從網(wǎng)站、服務(wù)器或其它遠(yuǎn)程源傳輸軟件,則同軸電纜、光纖電纜、雙絞線、DSL或例如紅外線、無線電及微波的無線技術(shù)包含于媒體的定義中。然而,應(yīng)理解,計(jì)算機(jī)可讀存儲媒體和數(shù)據(jù)存儲媒體不包含連接、載波、信號或其它瞬時(shí)媒體,而是針對于非瞬時(shí)的、有形存儲媒體。如本文中所使用,磁盤及光盤包括壓縮光盤(CD)、激光光盤、光學(xué)光盤、數(shù)字多功能光盤(DVD)、軟磁盤及藍(lán)光光盤,其中磁盤通常磁性地復(fù)制數(shù)據(jù),而光盤使用激光光學(xué)地復(fù)制數(shù)據(jù)。以上各者的組合也應(yīng)包含在計(jì)算機(jī)可讀媒體的范圍內(nèi)。
[0248]可由例如一或多個(gè)數(shù)字信號處理器(DSP)、通用微處理器、專用集成電路(ASIC)、現(xiàn)場可編程邏輯陣列(FPGA)或其它等效集成或離散邏輯電路等一或多個(gè)處理器來執(zhí)行所述指令。因此,如本文中所使用的術(shù)語“處理器”可指上述結(jié)構(gòu)或適合于實(shí)施本文中所描述的技術(shù)的任一其它結(jié)構(gòu)中的任一者。另外,在一些方面中,本文中所描述的功能性可提供于經(jīng)配置以用于編碼及解碼的專用硬件單元和/或軟件單元內(nèi),或并入組合式編解碼器中。并且,可將所述技術(shù)完全實(shí)施于一或多個(gè)電路或邏輯元件中。
[0249]本發(fā)明的技術(shù)可實(shí)施于廣泛多種裝置或設(shè)備中,包含無線手持機(jī)、集成電路(IC)或IC組(例如,芯片組)。本發(fā)明中描述各種組件、模塊或單元來強(qiáng)調(diào)經(jīng)配置以執(zhí)行所揭示的技術(shù)的裝置的若干功能性方面,但不一定需要通過不同的硬件單元來實(shí)現(xiàn)。而是,如上文所描述,各種單元可聯(lián)合合適的軟件和/或固件而組合于編解碼器硬件單元中或通過互操作的硬件單元的集合(包含如上文所描述的一或多個(gè)處理器)來提供。
[0250]已描述了各種實(shí)例。這些及其它實(shí)例屬于所附權(quán)利要求書的范圍內(nèi)。
【權(quán)利要求】
1.一種對視頻數(shù)據(jù)進(jìn)行解碼的方法,所述方法包括: 使用第一視差向量導(dǎo)出過程確定第一視差向量; 使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程; 使用所述第一視差向量來確定當(dāng)前預(yù)測單元PU的一組運(yùn)動(dòng)向量預(yù)測MVP候選者中的一 MVP候選者; 使用所述第二視差向量來確定殘余數(shù)據(jù);及 部分基于所述殘余數(shù)據(jù)及所述組MVP候選者中的所選擇的MVP候選者而產(chǎn)生經(jīng)重構(gòu)圖片的一或多個(gè)塊。
2.根據(jù)權(quán)利要求1所述的方法,其中確定所述第一視差向量包括依據(jù)是使用第一模式還是第二模式對所述當(dāng)前PU的運(yùn)動(dòng)信息進(jìn)行編碼,而使用不同的視差向量導(dǎo)出過程來確定所述第一視差向量。
3.根據(jù)權(quán)利要求2所述的方法,其進(jìn)一步包括: 從位流獲得候選者索引; 產(chǎn)生所述組MVP候選者; 至少部分基于所述候選者索引來確定所述組MVP候選者中的所述所選擇的MVP候選者,其中在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第一模式編碼時(shí),所述所選擇的MVP候選者指定所述當(dāng)前PU的運(yùn)動(dòng)向量 '及 在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí): 從所述位流獲得所述當(dāng)前PU的運(yùn)動(dòng)向量差MVD ;及 至少部分基于由所述所選擇的MVP候選者指示的運(yùn)動(dòng)向量及所述MVD來確定所述當(dāng)前PU的所述運(yùn)動(dòng)向量。
4.根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包括: 至少部分基于所述所選擇的MVP候選者來確定所述當(dāng)前的預(yù)測性塊;及 至少部分基于所述當(dāng)前PU的所述預(yù)測性塊及所述殘余數(shù)據(jù)來產(chǎn)生經(jīng)重構(gòu)塊。
5.一種對視頻數(shù)據(jù)進(jìn)行編碼的方法,所述方法包括: 使用第一視差向量導(dǎo)出過程確定第一視差向量; 使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程; 使用所述第一視差向量來確定當(dāng)前預(yù)測單元PU的一組運(yùn)動(dòng)向量預(yù)測MVP候選者中的一 MVP候選者; 使用所述第二視差向量來確定殘余數(shù)據(jù);及 產(chǎn)生包含指示所述當(dāng)前PU的所述殘余數(shù)據(jù)及所述組MVP候選者中的所選擇的MVP候選者的數(shù)據(jù)的位流。
6.根據(jù)權(quán)利要求5所述的方法,其中確定所述第一視差向量包括依據(jù)是使用第一模式還是第二模式對所述當(dāng)前PU的運(yùn)動(dòng)信息進(jìn)行編碼,而使用不同的視差向量導(dǎo)出過程來確定所述第一視差向量。
7.根據(jù)權(quán)利要求6所述的方法,其進(jìn)一步包括: 產(chǎn)生所述組MVP候選者; 產(chǎn)生包含指示所述組MVP候選者中的所述所選擇的MVP候選者的候選者索引的位流,其中在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第一模式編碼時(shí),所述所選擇的MVP候選者指定所述當(dāng)前PU的運(yùn)動(dòng)向量 '及 在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí),在所述位流中包含指示所述當(dāng)前PU的運(yùn)動(dòng)向量差MVD的數(shù)據(jù),所述當(dāng)前的所述MVD指示由所述所選擇的MVP候選者指示的運(yùn)動(dòng)向量與所述當(dāng)前PU的運(yùn)動(dòng)向量之間的差。
8.一種視頻譯碼器,其包括一或多個(gè)處理器,所述一或多個(gè)處理器經(jīng)配置以: 使用第一視差向量導(dǎo)出過程確定第一視差向量; 使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程; 使用所述第一視差向量來確定當(dāng)前預(yù)測單元PU的一組運(yùn)動(dòng)向量預(yù)測MVP候選者中的一 MVP候選者;及 使用所述第二視差向量來確定殘余數(shù)據(jù)。
9.根據(jù)權(quán)利要求8所述的視頻譯碼器,其中所述一或多個(gè)處理器經(jīng)配置以依據(jù)是使用第一模式還是第二模式對所述當(dāng)前PU的運(yùn)動(dòng)信息進(jìn)行編碼,而使用不同的視差向量導(dǎo)出過程來確定所述第一視差向量。
10.根據(jù)權(quán)利要求9所述的視頻譯碼器,其中所述一或多個(gè)處理器經(jīng)配置以: 從位流獲得候選者索引; 產(chǎn)生所述組MVP候選者; 至少部分基于所述候選者索引來確定所述組MVP候選者中的所選擇的MVP候選者,其中在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第一模式編碼時(shí),所述所選擇的MVP候選者指定所述當(dāng)前PU的運(yùn)動(dòng)向量 '及 在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí): 從所述位流獲得所述當(dāng)前PU的運(yùn)動(dòng)向量差MVD ;及 至少部分基于由所述所選擇的MVP候選者指示的運(yùn)動(dòng)向量及所述MVD來確定所述當(dāng)前PU的所述運(yùn)動(dòng)向量。
11.根據(jù)權(quán)利要求9所述的視頻譯碼器,其中所述一或多個(gè)處理器經(jīng)配置以: 產(chǎn)生所述組MVP候選者; 產(chǎn)生包含指示所述組MVP候選者中的所述所選擇的MVP候選者的候選者索引的位流,其中在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第一模式編碼時(shí),所述所選擇的MVP候選者指定所述當(dāng)前PU的運(yùn)動(dòng)向量;及 在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí),在所述位流中包含指示所述當(dāng)前PU的MVD的數(shù)據(jù),所述當(dāng)前的所述MVD指示由所述所選擇的MVP候選者指示的運(yùn)動(dòng)向量與所述當(dāng)前PU的運(yùn)動(dòng)向量之間的差。
12.根據(jù)權(quán)利要求8所述的視頻譯碼器,其中所述一或多個(gè)處理器經(jīng)配置以: 至少部分基于所述所選擇的MVP候選者來確定所述當(dāng)前的預(yù)測性塊;及 至少部分基于所述當(dāng)前PU的所述預(yù)測性塊及所述殘余數(shù)據(jù)來產(chǎn)生經(jīng)重構(gòu)塊。
13.根據(jù)權(quán)利要求8所述的視頻譯碼器,其中所述一或多個(gè)處理器對視頻數(shù)據(jù)進(jìn)行編碼。
14.根據(jù)權(quán)利要求8所述的視頻譯碼器,其中所述一或多個(gè)處理器對視頻數(shù)據(jù)進(jìn)行解碼。
15.一種視頻譯碼器,其包括: 用于使用第一視差向量導(dǎo)出過程確定第一視差向量的裝置; 用于使用第二視差向量導(dǎo)出過程確定第二視差向量的裝置,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程; 用于使用所述第一視差向量來確定當(dāng)前預(yù)測單元PU的一組運(yùn)動(dòng)向量預(yù)測MVP候選者中的一 MVP候選者的裝置;及 用于使用所述第二視差向量來確定殘余數(shù)據(jù)的裝置。
16.根據(jù)權(quán)利要求15所述的視頻譯碼器,其進(jìn)一步包括用于依據(jù)是使用第一模式還是第二模式對所述當(dāng)前PU的運(yùn)動(dòng)信息進(jìn)行編碼而使用不同的視差向量導(dǎo)出過程來確定所述第一視差向量的裝置。
17.根據(jù)權(quán)利要求16所述的視頻譯碼器,其進(jìn)一步包括: 用于從位流獲得候選者索引的裝置; 用于產(chǎn)生所述組MVP候選者的裝置; 用于至少部分基于所述候選者索引來確定所述組MVP候選者中的所選擇的MVP候選者的裝置,其中在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第一模式編碼時(shí),所述所選擇的MVP候選者指定所述當(dāng)前I3U的運(yùn)動(dòng)向量; 用于在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí)從所述位流獲得所述當(dāng)前PU的運(yùn)動(dòng)向量差MVD的裝置;及 用于在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí)至少部分基于由所述所選擇的MVP候選者指示的運(yùn)動(dòng)向量及所述MVD來確定所述當(dāng)前PU的所述運(yùn)動(dòng)向量的裝置。
18.根據(jù)權(quán)利要求16所述的視頻譯碼器,其進(jìn)一步包括: 用于產(chǎn)生所述組MVP候選者的裝置; 用于產(chǎn)生包含指示所述組MVP候選者中的所述所選擇的MVP候選者的候選者索引的位流的裝置,其中在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第一模式編碼時(shí),所述所選擇的MVP候選者指定所述當(dāng)前I3U的運(yùn)動(dòng)向量;及 用于在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí)在所述位流中包含指示所述當(dāng)前PU的MVD的數(shù)據(jù)的裝置,所述當(dāng)前PU的所述MVD指示由所述所選擇的MVP候選者指示的運(yùn)動(dòng)向量與所述當(dāng)前PU的運(yùn)動(dòng)向量之間的差。
19.一種其上存儲有指令的計(jì)算機(jī)可讀存儲媒體,所述指令在被執(zhí)行時(shí)致使視頻譯碼器: 使用第一視差向量導(dǎo)出過程確定第一視差向量; 使用第二視差向量導(dǎo)出過程確定第二視差向量,其中所述第一視差向量導(dǎo)出過程不同于所述第二視差向量導(dǎo)出過程; 使用所述第一視差向量來確定當(dāng)前預(yù)測單元PU的一組運(yùn)動(dòng)向量預(yù)測MVP候選者中的一 MVP候選者;及 使用所述第二視差向量來確定殘余數(shù)據(jù)。
20.根據(jù)權(quán)利要求19所述的計(jì)算機(jī)可讀存儲媒體,其中所述指令進(jìn)一步配置視頻譯碼器以依據(jù)是使用第一模式還是第二模式對所述當(dāng)前PU的運(yùn)動(dòng)信息進(jìn)行編碼,而使用不同的視差向量導(dǎo)出過程來確定所述第一視差向量。
21.根據(jù)權(quán)利要求20所述的計(jì)算機(jī)可讀存儲媒體,其中所述指令進(jìn)一步配置所述視頻譯碼器以: 從位流獲得候選者索引; 產(chǎn)生所述組MVP候選者; 至少部分基于所述候選者索引來確定所述組MVP候選者中的所選擇的MVP候選者,其中在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第一模式編碼時(shí),所述所選擇的MVP候選者指定所述當(dāng)前I3U的運(yùn)動(dòng)向量; 在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí),從所述位流獲得所述當(dāng)前PU的運(yùn)動(dòng)向量差MVD ;及 在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí),至少部分基于由所述所選擇的MVP候選者指示的運(yùn)動(dòng)向量及所述MVD來確定所述當(dāng)前PU的所述運(yùn)動(dòng)向量。
22.根據(jù)權(quán)利要求20所述的計(jì)算機(jī)可讀存儲媒體,其中所述指令進(jìn)一步配置視頻譯碼器以: 產(chǎn)生所述組MVP候選者; 產(chǎn)生包含指示所述組MVP候選者中的所選擇的MVP候選者的候選者索引的位流,其中在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第一模式編碼時(shí),所述所選擇的MVP候選者指定所述當(dāng)前PU的運(yùn)動(dòng)向量 '及 在所述當(dāng)前PU的所述運(yùn)動(dòng)信息是使用所述第二模式編碼時(shí),在所述位流中包含指示所述當(dāng)前PU的MVD的數(shù)據(jù),所述當(dāng)前的所述MVD指示由所述所選擇的MVP候選者指示的運(yùn)動(dòng)向量與所述當(dāng)前PU的運(yùn)動(dòng)向量之間的差。
【文檔編號】H04N19/176GK104365103SQ201380031453
【公開日】2015年2月18日 申請日期:2013年6月14日 優(yōu)先權(quán)日:2012年6月15日
【發(fā)明者】陳穎, 張莉 申請人:高通股份有限公司