產(chǎn)生額外合并候選者的制作方法
【專利摘要】在產(chǎn)生用于幀間預(yù)測(cè)視頻譯碼的候選者列表時(shí),視頻譯碼器可在將空間候選者和時(shí)間候選者添加到候選者列表時(shí)執(zhí)行修剪操作,而在將人工產(chǎn)生的候選者添加到候選者列表時(shí)不執(zhí)行修剪操作。人工產(chǎn)生的候選者可具有與已在候選者列表中的空間候選者或時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng)信息。
【專利說(shuō)明】產(chǎn)生額外合并候選者
[0001] 本申請(qǐng)案主張以下各者的權(quán)益:
[0002] 2011年11月7日申請(qǐng)的美國(guó)臨時(shí)申請(qǐng)案第61/556, 746號(hào);
[0003] 2011年11月21日申請(qǐng)的美國(guó)臨時(shí)申請(qǐng)案第61/562, 284號(hào);和
[0004] 2011年11月22日申請(qǐng)的美國(guó)臨時(shí)申請(qǐng)案61/562, 940,
[0005] 其中每一者的全部?jī)?nèi)容以引用的方式并入本文中。
【技術(shù)領(lǐng)域】
[0006] 本發(fā)明涉及視頻譯碼,且更特定來(lái)說(shuō)涉及視頻數(shù)據(jù)的合并模式預(yù)測(cè)。
【背景技術(shù)】
[0007] 可將數(shù)字視頻能力并入于廣泛范圍的裝置中,包括數(shù)字電視、數(shù)字直播系統(tǒng)、無(wú)線 廣播系統(tǒng)、個(gè)人數(shù)字助理(PDA)、膝上型或桌上型計(jì)算機(jī)、數(shù)碼相機(jī)、數(shù)字記錄裝置、數(shù)字媒 體播放器、視頻游戲裝置、視頻游戲機(jī)、蜂窩式或衛(wèi)星無(wú)線電電話、視頻電話會(huì)議裝置和其 類似者。數(shù)字視頻裝置實(shí)施視頻壓縮技術(shù)(例如,在由MPEG-2、MPEG-4、ITU-T H. 263、ITU-T H. 264/MPEG-4第10部分(高級(jí)視頻譯碼(AVC))定義的標(biāo)準(zhǔn)、目前在開(kāi)發(fā)中的高效視頻譯 碼(HEVC)標(biāo)準(zhǔn)和這些標(biāo)準(zhǔn)的擴(kuò)展中所描述的視頻壓縮技術(shù))以更有效率地發(fā)射、接收和存 儲(chǔ)數(shù)字視頻信息。
[0008] 視頻壓縮技術(shù)執(zhí)行空間(圖片內(nèi))預(yù)測(cè)和/或時(shí)間(圖片間)預(yù)測(cè),以減少或移 除視頻序列中固有的冗余。對(duì)于基于塊的視頻譯碼,可將視頻塊分割成視頻塊,視頻塊還可 被稱作樹(shù)塊、譯碼單元(CU)和/或譯碼節(jié)點(diǎn)。使用關(guān)于同一圖片中的相鄰塊中的參考樣本 的空間預(yù)測(cè)來(lái)編碼圖片的幀內(nèi)譯碼(I)切片中的視頻塊。圖片的幀間譯碼(P或B)切片中 的視頻塊可使用關(guān)于同一圖片中的相鄰塊中的參考樣本的空間預(yù)測(cè)或關(guān)于其它參考圖片 中的參考樣本的時(shí)間預(yù)測(cè)。圖片可被稱作幀,且參考圖片可被稱作參考幀。
【發(fā)明內(nèi)容】
[0009] 本發(fā)明描述用于在視頻編碼器處產(chǎn)生供幀間預(yù)測(cè)譯碼使用的候選者列表和用于 在視頻解碼器處產(chǎn)生相同候選者列表的技術(shù)。視頻編碼器和視頻解碼器可通過(guò)實(shí)施用于建 構(gòu)候選者列表的相同技術(shù)來(lái)產(chǎn)生相同候選者列表。舉例來(lái)說(shuō),視頻編碼器和視頻解碼器兩 者可建構(gòu)具有相同數(shù)目的候選者的列表。視頻編碼器和解碼器可首先考慮空間候選者(例 如,同一圖片中的相鄰塊),接著考慮時(shí)間候選者(例如,不同圖片中的候選者),且最后可 考慮人工產(chǎn)生的候選者,直到將所要數(shù)目的候選者添加到列表為止。根據(jù)本發(fā)明的技術(shù), 可在候選者列表建構(gòu)期間針對(duì)某些類型的候選者利用修剪操作,以便從候選者列表移除重 復(fù),而對(duì)于其它類型的候選者,可能不使用修剪以便減小譯碼器復(fù)雜性。
[0010] 在一實(shí)例中,一種對(duì)視頻數(shù)據(jù)進(jìn)行譯碼的方法包括:確定與當(dāng)前視頻幀的當(dāng)前部 分相關(guān)聯(lián)的空間候選者的集合,其中空間候選者的所述集合對(duì)應(yīng)于所述當(dāng)前視頻幀的鄰近 所述當(dāng)前部分的相鄰部分,且其中所述空間候選者中的每一者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息;確 定與所述當(dāng)前視頻幀的所述當(dāng)前部分相關(guān)聯(lián)的時(shí)間候選者,其中所述時(shí)間候選者對(duì)應(yīng)于參 考視頻幀的一部分,且其中所述時(shí)間候選者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息;基于空間候選者的所 述集合的子集和所述時(shí)間候選者產(chǎn)生候選者列表;以及,響應(yīng)于所述候選者列表包含的候 選者少于指定數(shù)目,將人工產(chǎn)生的候選者添加到所述候選者列表,其中所述人工產(chǎn)生的候 選者具有與所述子集的空間候選者的運(yùn)動(dòng)信息或所述時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng) 信息。
[0011] 在另一實(shí)例中,一種用于對(duì)視頻數(shù)據(jù)進(jìn)行譯碼的裝置包括視頻譯碼器,所述視頻 譯碼器經(jīng)配置以:確定與當(dāng)前視頻幀的當(dāng)前部分相關(guān)聯(lián)的空間候選者的集合,其中空間候 選者的所述集合對(duì)應(yīng)于所述當(dāng)前視頻幀的鄰近所述當(dāng)前部分的相鄰部分,且其中所述空間 候選者中的每一者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息;確定與所述當(dāng)前視頻幀的所述當(dāng)前部分相關(guān)聯(lián) 的時(shí)間候選者,其中所述時(shí)間候選者對(duì)應(yīng)于參考視頻幀的一部分,且其中所述時(shí)間候選者 具有相關(guān)聯(lián)的運(yùn)動(dòng)信息;基于空間候選者的所述集合的子集和所述時(shí)間候選者產(chǎn)生候選者 列表;以及,響應(yīng)于所述候選者列表包含的候選者少于指定數(shù)目,將人工產(chǎn)生的候選者添加 到所述候選者列表,其中所述人工產(chǎn)生的候選者具有與所述子集的空間候選者的運(yùn)動(dòng)信息 或所述時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng)信息。
[0012] 在另一實(shí)例中,一種用于對(duì)視頻數(shù)據(jù)進(jìn)行譯碼的裝置包括:用于確定與當(dāng)前視頻 幀的當(dāng)前部分相關(guān)聯(lián)的空間候選者的集合的裝置,其中空間候選者的所述集合對(duì)應(yīng)于所述 當(dāng)前視頻幀的鄰近所述當(dāng)前部分的相鄰部分,且其中所述空間候選者中的每一者具有相關(guān) 聯(lián)的運(yùn)動(dòng)信息;用于確定與所述當(dāng)前視頻幀的所述當(dāng)前部分相關(guān)聯(lián)的時(shí)間候選者的裝置, 其中所述時(shí)間候選者對(duì)應(yīng)于參考視頻幀的一部分,且其中所述時(shí)間候選者具有相關(guān)聯(lián)的運(yùn) 動(dòng)信息;用于基于空間候選者的所述集合的子集和所述時(shí)間候選者產(chǎn)生候選者列表的裝 置;以及,用于響應(yīng)于所述候選者列表包含的候選者少于指定數(shù)目而將人工產(chǎn)生的候選者 添加到所述候選者列表的裝置,其中所述人工產(chǎn)生的候選者具有與所述子集的空間候選者 的運(yùn)動(dòng)信息或所述時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng)信息。
[0013] 在另一實(shí)例中,一種計(jì)算機(jī)可讀存儲(chǔ)媒體存儲(chǔ)在被執(zhí)行時(shí)致使一或多個(gè)處理器執(zhí) 行以下操作的指令:確定與當(dāng)前視頻幀的當(dāng)前部分相關(guān)聯(lián)的空間候選者的集合,其中空間 候選者的所述集合對(duì)應(yīng)于所述當(dāng)前視頻幀的鄰近所述當(dāng)前部分的相鄰部分,且其中所述空 間候選者中的每一者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息;確定與所述當(dāng)前視頻幀的所述當(dāng)前部分相關(guān) 聯(lián)的時(shí)間候選者,其中所述時(shí)間候選者對(duì)應(yīng)于參考視頻幀的一部分,且其中所述時(shí)間候選 者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息;基于空間候選者的所述集合的子集和所述時(shí)間候選者產(chǎn)生候選 者列表;以及,響應(yīng)于所述候選者列表包含的候選者少于指定數(shù)目而將人工產(chǎn)生的候選者 添加到所述候選者列表,其中所述人工產(chǎn)生的候選者具有與所述子集的空間候選者的運(yùn)動(dòng) 信息或所述時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng)信息。
[0014] 一或多個(gè)實(shí)例的細(xì)節(jié)陳述于附圖和以下描述中。其它特征、目標(biāo)和優(yōu)勢(shì)將從所述 描述和所述圖式以及從權(quán)利要求書顯而易見(jiàn)。
【專利附圖】
【附圖說(shuō)明】
[0015] 圖1說(shuō)明可利用本發(fā)明的技術(shù)的實(shí)例視頻譯碼系統(tǒng)的框圖。
[0016] 圖2說(shuō)明經(jīng)配置以實(shí)施本發(fā)明的技術(shù)的實(shí)例視頻編碼器的框圖。
[0017] 圖3說(shuō)明經(jīng)配置以實(shí)施本發(fā)明的技術(shù)的實(shí)例視頻解碼器的框圖。
[0018] 圖4說(shuō)明幀間預(yù)測(cè)模塊的實(shí)例配置的框圖。
[0019] 圖5說(shuō)明實(shí)例合并操作的流程圖。
[0020] 圖6說(shuō)明實(shí)例高級(jí)運(yùn)動(dòng)向量預(yù)測(cè)(AMVP)操作的流程圖。
[0021] 圖7說(shuō)明由視頻解碼器執(zhí)行的實(shí)例運(yùn)動(dòng)補(bǔ)償操作的流程圖。
[0022] 圖8說(shuō)明譯碼單元(CU)和與⑶相關(guān)聯(lián)的實(shí)例源位置的概念圖。
[0023] 圖9說(shuō)明實(shí)例候選者列表建構(gòu)操作的流程圖。
[0024] 圖10展示將經(jīng)組合候選者添加到合并候選者列表的圖形實(shí)例。
[0025] 圖11展示將經(jīng)縮放候選者添加到合并候選者列表的圖形實(shí)例。
[0026] 圖12展示將零候選者添加到合并候選者列表的圖形實(shí)例。
[0027] 圖13A和圖13B展示產(chǎn)生mv_offset候選者的圖形實(shí)例。
[0028] 圖14說(shuō)明本發(fā)明中所描述的技術(shù)的實(shí)例的流程圖。
【具體實(shí)施方式】
[0029] 視頻編碼器可執(zhí)行幀間預(yù)測(cè)以減少圖片之間的時(shí)間冗余。如下文所描述,譯碼單 元(CU)可具有多個(gè)預(yù)測(cè)單元(PU)。換句話說(shuō),多個(gè)PU可屬于CU。當(dāng)視頻編碼器執(zhí)行幀間 預(yù)測(cè)時(shí),視頻編碼器可用信號(hào)通知用于PU的運(yùn)動(dòng)信息。TO的運(yùn)動(dòng)信息可包括(例如)參考 圖片索引、運(yùn)動(dòng)向量和預(yù)測(cè)方向指示符。運(yùn)動(dòng)向量可指示TO的視頻塊與PU的參考?jí)K之間 的位移。PU的參考?jí)K可為類似于PU的視頻塊的參考圖片的一部分。參考?jí)K可定位于由參 考圖片索引和預(yù)測(cè)方向指示符指示的參考圖片中。
[0030] 為了減少表示PU的運(yùn)動(dòng)信息所需要的位的數(shù)目,視頻編碼器可根據(jù)合并模式或 高級(jí)運(yùn)動(dòng)向量預(yù)測(cè)(AMVP)過(guò)程產(chǎn)生用于PU中的每一者的候選者列表。用于PU的候選者 列表中的每一候選者可指示運(yùn)動(dòng)信息。由候選者列表中的一些候選者指示的運(yùn)動(dòng)信息可基 于其它PU的運(yùn)動(dòng)信息。如果候選者指示指定空間候選者位置或時(shí)間候選者位置中的一者 的運(yùn)動(dòng)信息,則本發(fā)明可將所述候選者稱作"原始"候選者。舉例來(lái)說(shuō),對(duì)于合并模式,可存 在五個(gè)原始空間候選者位置和一個(gè)原始時(shí)間候選者位置。在一些實(shí)例中,視頻編碼器可通 過(guò)組合來(lái)自不同原始候選者的部分運(yùn)動(dòng)向量、修改原始候選者或僅插入零運(yùn)動(dòng)向量作為候 選者來(lái)產(chǎn)生額外候選者。這些額外候選者不被視為原始候選者且在本發(fā)明中可稱作人工產(chǎn) 生的候選者。
[0031] 本發(fā)明的技術(shù)一般涉及用于在視頻編碼器處產(chǎn)生候選者列表的技術(shù)和用于在視 頻解碼器處產(chǎn)生相同候選者列表的技術(shù)。視頻編碼器和視頻解碼器可通過(guò)實(shí)施用于建構(gòu)候 選者列表的相同技術(shù)來(lái)產(chǎn)生相同候選者列表。舉例來(lái)說(shuō),視頻編碼器和視頻解碼器兩者可 建構(gòu)具有相同數(shù)目的候選者(例如,五個(gè)候選者)的列表。視頻編碼器和解碼器可首先考 慮空間候選者(例如,同一圖片中的相鄰塊),接著考慮時(shí)間候選者(例如,不同圖片中的候 選者),且最后可考慮人工產(chǎn)生的候選者直到將所要數(shù)目的候選者添加到列表為止。根據(jù)本 發(fā)明的技術(shù),可在候選者列表建構(gòu)期間針對(duì)某些類型的候選者利用修剪操作以便從候選者 列表移除重復(fù),而對(duì)于其它類型的候選者,可能不使用修剪以便減小譯碼器復(fù)雜性。舉例來(lái) 說(shuō),對(duì)于空間候選者集合和對(duì)于時(shí)間候選者,可執(zhí)行修剪操作以從候選者的列表排除具有 重復(fù)運(yùn)動(dòng)信息的候選者。然而,當(dāng)將人工產(chǎn)生的候選者添加到候選者的列表時(shí),可在不對(duì)人 工產(chǎn)生的候選者執(zhí)行修剪操作的情況下添加人工產(chǎn)生的候選者。
[0032] 在產(chǎn)生用于CU的PU的候選者列表之后,視頻編碼器可從候選者列表選擇候選者 且在位流中輸出候選者索引。選定候選者可為具有產(chǎn)生最緊密地匹配正被譯碼的目標(biāo)PU 的預(yù)測(cè)子的運(yùn)動(dòng)向量的候選者。候選者索引可指示在候選者列表中選定候選者的位置。視 頻編碼器還可基于由PU的運(yùn)動(dòng)信息指示的參考?jí)K產(chǎn)生用于PU的預(yù)測(cè)性視頻塊。可基于由 選定候選者指示的運(yùn)動(dòng)信息確定PU的運(yùn)動(dòng)信息。舉例來(lái)說(shuō),在合并模式中,PU的運(yùn)動(dòng)信息 可與由選定候選者指示的運(yùn)動(dòng)信息相同。在AMVP模式中,PU的運(yùn)動(dòng)信息可基于PU的運(yùn)動(dòng) 向量差和由選定候選者指示的運(yùn)動(dòng)信息確定。視頻編碼器可基于CU的PU的預(yù)測(cè)性視頻塊 和用于CU的原始視頻塊產(chǎn)生用于CU的一或多個(gè)殘余視頻塊。視頻編碼器可接著編碼一或 多個(gè)殘余視頻塊且在位流中輸出一或多個(gè)殘余視頻塊。
[0033] 位流可包括識(shí)別TO的候選者列表中的選定候選者的數(shù)據(jù)。視頻解碼器可基于由 PU的候選者列表中的選定候選者指示的運(yùn)動(dòng)信息確定ro的運(yùn)動(dòng)信息。視頻解碼器可基于 PU的運(yùn)動(dòng)信息識(shí)別用于ro的一或多個(gè)參考?jí)K。在識(shí)別PU的一或多個(gè)參考?jí)K之后,視頻解 碼器可基于PU的一或多個(gè)參考?jí)K產(chǎn)生用于ro的預(yù)測(cè)性視頻塊。視頻解碼器可基于用于CU 的PU的預(yù)測(cè)性視頻塊和用于CU的一或多個(gè)殘余視頻塊來(lái)重構(gòu)用于CU的視頻塊。
[0034] 為了易于解釋,本發(fā)明可將位置或視頻塊描述為與CU或PU具有各種空間關(guān)系。此 描述可解譯為是指位置或視頻塊和與CU或PU相關(guān)聯(lián)的視頻塊具有各種空間關(guān)系。此外, 本發(fā)明可將視頻譯碼器當(dāng)前在譯碼的PU稱作當(dāng)前PU。本發(fā)明可將視頻譯碼器當(dāng)前在譯碼 的CU稱作當(dāng)前CU。本發(fā)明可將視頻譯碼器當(dāng)前在譯碼的圖片稱作當(dāng)前圖片。
【專利附圖】
【附圖說(shuō)明】 [0035] 實(shí)例。由附圖中的參考數(shù)字指示的元件對(duì)應(yīng)于由以下描述中的相似參考 數(shù)字指示的元件。在本發(fā)明中,具有以序數(shù)詞(例如,"第一"、"第二"、"第三"等等)開(kāi)始 的名稱的元件未必暗示元件具有特定次序。而是,這些序數(shù)詞僅用以指代相同或類似類型 的不同元件。
[0036] 圖1說(shuō)明可利用本發(fā)明的技術(shù)的實(shí)例視頻譯碼系統(tǒng)10的框圖。如本文中所使用 描述,術(shù)語(yǔ)"視頻譯碼器"一般指代視頻編碼器和視頻解碼器兩者。在本發(fā)明中,術(shù)語(yǔ)"視頻 譯碼"或"譯碼" 一般可指代視頻編碼和視頻解碼。
[0037] 如圖1中所展示,視頻譯碼系統(tǒng)10包括源裝置12和目的地裝置14。源裝置12產(chǎn) 生經(jīng)編碼視頻數(shù)據(jù)。因此,源裝置12可稱作視頻編碼裝置。目的地裝置14可解碼由源裝 置12產(chǎn)生的經(jīng)編碼視頻數(shù)據(jù)。因此,目的地裝置14可稱作視頻解碼裝置。源裝置12和目 的地裝置14可為視頻譯碼裝置的實(shí)例。
[0038] 源裝置12和目的地裝置14可包含廣泛范圍的裝置,包括桌上型計(jì)算機(jī)、移動(dòng)計(jì)算 裝置、筆記型(例如,膝上型)計(jì)算機(jī)、平板計(jì)算機(jī)、機(jī)頂盒、例如所謂的"智能型"手機(jī)的電 話手機(jī)、電視、相機(jī)、顯示裝置、數(shù)字媒體播放器、視頻游戲機(jī)、車用計(jì)算機(jī)或其類似者。在一 些實(shí)例中,源裝置12和目的地裝置14可經(jīng)配備以用于無(wú)線通信。
[0039] 目的地裝置14可經(jīng)由通道16從源裝置12接收經(jīng)編碼視頻數(shù)據(jù)。通道16可包含 能夠?qū)⒔?jīng)編碼視頻數(shù)據(jù)從源裝置12移動(dòng)到目的地裝置14的一類型的媒體或裝置。在一實(shí) 例中,通道16可包含使得源裝置12能夠即時(shí)地將經(jīng)編碼視頻數(shù)據(jù)直接發(fā)射到目的地裝置 14的通信媒體。在此實(shí)例中,源裝置12可根據(jù)通信標(biāo)準(zhǔn)(例如無(wú)線通信協(xié)議)調(diào)制經(jīng)編碼 視頻數(shù)據(jù),且可將經(jīng)調(diào)制視頻數(shù)據(jù)發(fā)射到目的地裝置14。通信媒體可包含無(wú)線或有線通信 媒體,例如射頻(RF)頻譜或一或多個(gè)物理傳輸線。通信媒體可形成基于包的網(wǎng)絡(luò)(例如, 局域網(wǎng)絡(luò)、廣域網(wǎng)絡(luò)或例如因特網(wǎng)的全球網(wǎng)絡(luò))的部分。通信媒體可包括路由器、交換器、 基站或促進(jìn)從源裝置12到目的地裝置14的通信的其它設(shè)備。
[0040] 在另一實(shí)例中,通道16可對(duì)應(yīng)于存儲(chǔ)由源裝置12產(chǎn)生的經(jīng)編碼視頻數(shù)據(jù)的存儲(chǔ) 媒體。在此實(shí)例中,目的地裝置14可經(jīng)由磁盤存取或卡存取來(lái)存取存儲(chǔ)媒體。存儲(chǔ)媒體可 包括多種本端存取的數(shù)據(jù)存儲(chǔ)媒體,例如藍(lán)光光碟、DVD、CD-ROM、快閃存儲(chǔ)器或用于存儲(chǔ)經(jīng) 編碼視頻數(shù)據(jù)的其它合適數(shù)字存儲(chǔ)媒體。在另一實(shí)例中,通道16可包括文件服務(wù)器或存儲(chǔ) 由源裝置12產(chǎn)生的經(jīng)編碼視頻的另一中間存儲(chǔ)裝置。在此實(shí)例中,目的地裝置14可經(jīng)由 串流或下載存取存儲(chǔ)于文件服務(wù)器或其它中間存儲(chǔ)裝置處的經(jīng)編碼視頻數(shù)據(jù)。文件服務(wù)器 可為能夠存儲(chǔ)經(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ò)附接存儲(chǔ)(NAS)裝置和本地磁盤驅(qū)動(dòng)器。目的地裝置14可經(jīng)由標(biāo)準(zhǔn)數(shù)據(jù)連接(包括因 特網(wǎng)連接)存取經(jīng)編碼視頻數(shù)據(jù)。數(shù)據(jù)連接的實(shí)例類型可包括無(wú)線通道(例如,Wi-Fi連 接)、有線連接(例如,DSL、纜線調(diào)制解調(diào)器等)或適合用于存取存儲(chǔ)于文件服務(wù)器上的經(jīng) 編碼視頻數(shù)據(jù)的無(wú)線通道與有線連接的組合。經(jīng)編碼視頻數(shù)據(jù)從文件服務(wù)器的傳輸可為串 流傳輸、下載傳輸,或兩者的組合。
[0041] 本發(fā)明的技術(shù)不限于無(wú)線應(yīng)用或設(shè)定。所述技術(shù)可應(yīng)用于視頻譯碼以支持多種多 媒體應(yīng)用中的任一者,例如空中電視廣播、有線電視傳輸、衛(wèi)星電視傳輸、(例如)經(jīng)由因特 網(wǎng)的串流視頻傳輸、數(shù)字視頻的編碼以供存儲(chǔ)于數(shù)據(jù)存儲(chǔ)媒體上、存儲(chǔ)于數(shù)據(jù)存儲(chǔ)媒體上 的數(shù)字視頻的解碼,或其它應(yīng)用。在一些實(shí)例中,視頻譯碼系統(tǒng)10可經(jīng)配置以支持單向或 雙向視頻傳輸以支持例如視頻串流、視頻播放、視頻廣播和/或視頻電話的應(yīng)用。
[0042] 在圖1的實(shí)例中,源裝置12包括視頻源18、視頻編碼器20和輸出接口 22。在一 些狀況下,輸出接口 22可包括調(diào)制器/解調(diào)器(調(diào)制解調(diào)器)和/或發(fā)射器。在源裝置12 中,視頻源18可包括例如視頻俘獲裝置的源,例如視頻攝影機(jī)、含有先前俘獲的視頻數(shù)據(jù) 的視頻存檔、從視頻內(nèi)容提供者接收視頻數(shù)據(jù)的視頻饋送接口,和/或用于產(chǎn)生視頻數(shù)據(jù) 的計(jì)算機(jī)圖形系統(tǒng),或這些源的組合。
[0043] 視頻編碼器20可編碼所俘獲、預(yù)俘獲或計(jì)算機(jī)產(chǎn)生的視頻數(shù)據(jù)。經(jīng)編碼視頻數(shù)據(jù) 可經(jīng)由源裝置12的輸出接口 22直接發(fā)射到目的地裝置14。經(jīng)編碼視頻數(shù)據(jù)還可存儲(chǔ)到存 儲(chǔ)媒體或文件服務(wù)器上以供稍后由目的地裝置14存取以用于解碼和/或播放。
[0044] 在圖1的實(shí)例中,目的地裝置14包括輸入接口 28、視頻解碼器30和顯示裝置32。 在一些狀況下,輸入接口 28可包括接收器和/或調(diào)制解調(diào)器。目的地裝置14的輸入接口 28經(jīng)由通道16接收經(jīng)編碼視頻數(shù)據(jù)。經(jīng)編碼視頻數(shù)據(jù)可包括由視頻編碼器20產(chǎn)生的表示 視頻數(shù)據(jù)的多種語(yǔ)法元素。這些語(yǔ)法元素可包括于在通信媒體上發(fā)射、存儲(chǔ)于存儲(chǔ)媒體上 或存儲(chǔ)于文件服務(wù)器上的經(jīng)編碼視頻數(shù)據(jù)內(nèi)。
[0045] 顯示裝置32可與目的地裝置14集成或在目的地裝置14外部。在一些實(shí)例中,目 的地裝置14可包括集成顯示裝置且還可經(jīng)配置以與外部顯示裝置介接。在其它實(shí)例中,目 的地裝置14可為顯示裝置。一般來(lái)說(shuō),顯示裝置32向用戶顯示經(jīng)解碼視頻數(shù)據(jù)。顯示裝 置32可包含多種顯示裝置中的任一者,例如液晶顯示器(LCD)、等離子體顯示器、有機(jī)發(fā)光 二極管(0LED)顯示器或另一類型的顯示裝置。
[0046] 視頻編碼器20和視頻解碼器30可根據(jù)視頻壓縮標(biāo)準(zhǔn)(例如,目前在開(kāi)發(fā)中的高 效視頻譯碼(HEVC)標(biāo)準(zhǔn))而操作,且可符合HEVC測(cè)試模型(HM)。即將到來(lái)的HEVC標(biāo)準(zhǔn)的 最近草案(稱作"HEVC工作草案6"或"WD6")描述于文件JCTVC-H1003,布洛斯(Bross)等 人的"High efficiency video coding(HEVC)text specification draft6"(ITU_T SG16WP3 和IS0/IEC JTC1/SC29/WG11的視頻譯碼聯(lián)合合作小組(JCT-VC)第8次會(huì)議:美國(guó)加州圣 何塞,2012年2月)中,其于2012年5月1日可從111^卩://卩116111叉.;[111:-6¥巧.;1^'/加1:/(10(3_ encLuser/documents/S+San% 20Jose/wgll/JCTVC-H1003_v22· zip 下載,其全部?jī)?nèi)容以引 用的方式并入本文中。HEVC標(biāo)準(zhǔn)的另一最近草案(稱作"HEVC工作草案7"或"WD7")描述 于文件 HCTVC-11003,布洛斯(Bross)等人的 "High Efficiency Video Coding (HEVC) Text Specification Draft7"(ITU-T SG16WP3 和 IS0/IEC JTC1/SC29/WG11 的視頻譯碼聯(lián)合合作 小組(JCT-VC)第9次會(huì)議:瑞士日內(nèi)瓦,2012年4月27日到2012年5月7日)中,其于 2012 年 6 月 5 日可從 http ://phenix. it-sudparis. eu/jct/doc_end_user/documents/9_ Geneva/wgll/JCTVC-I1003-v3. zip 下載。
[0047] 或者,視頻編碼器20和視頻解碼器30可根據(jù)例如ITU-T H. 264標(biāo)準(zhǔn)或者被稱作 MPEG-4第10部分(高級(jí)視頻譯碼(AVC))的其它專屬或工業(yè)標(biāo)準(zhǔn)或這些標(biāo)準(zhǔn)的擴(kuò)展而操 作。然而,本發(fā)明的技術(shù)不限于任何特定譯碼標(biāo)準(zhǔn)或技術(shù)。視頻壓縮標(biāo)準(zhǔn)和技術(shù)的其它實(shí) 例包括MPEG-2、ITU-T H. 263和專屬或開(kāi)發(fā)原始碼壓縮格式(例如VP8和相關(guān)格式)。
[0048] 盡管未展示于圖1的實(shí)例中,但視頻編碼器20和視頻解碼器30可各自與音頻 編碼器和解碼器集成,且可包括適當(dāng)?shù)膍ux-demux單元或其它硬件和軟件,以處置共同 數(shù)據(jù)串流或單獨(dú)數(shù)據(jù)串流中的音頻和視頻兩者的編碼。如果可適用,則在一些實(shí)例中, MUX-DEMUX單元可遵照ITU H. 223多路復(fù)用器協(xié)議,或例如用戶數(shù)據(jù)報(bào)協(xié)議(UDP)的其它協(xié) 議。
[0049] 再次,圖1僅為實(shí)例且本發(fā)明的技術(shù)可應(yīng)用于視頻譯碼設(shè)定(例如,視頻編碼或視 頻解碼),其未必包括編碼裝置與解碼裝置之間的任何數(shù)據(jù)通信。在其它實(shí)例中,數(shù)據(jù)可被 從本地存儲(chǔ)器檢索、經(jīng)由網(wǎng)絡(luò)串流傳輸或其類似者。編碼裝置可編碼數(shù)據(jù)且將所述數(shù)據(jù)存 儲(chǔ)到存儲(chǔ)器,和/或解碼裝置可從存儲(chǔ)器檢索數(shù)據(jù)且解碼所述數(shù)據(jù)。在許多實(shí)例中,編碼和 解碼由不與彼此通信而是僅將數(shù)據(jù)編碼到存儲(chǔ)器和/或從存儲(chǔ)器檢索數(shù)據(jù)且解碼所述數(shù) 據(jù)的裝置執(zhí)行。
[0050] 視頻編碼器20和視頻解碼器30各自可實(shí)施為多種合適電路中的任一者,例如 一或多個(gè)微處理器、數(shù)字信號(hào)處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場(chǎng)可編程門陣列 (FPGA)、離散邏輯、硬件或其任何組合。當(dāng)所述技術(shù)部分以軟件實(shí)施時(shí),裝置可將用于軟 件的指令存儲(chǔ)于合適的非暫時(shí)性計(jì)算機(jī)可讀存儲(chǔ)媒體中且可使用一或多個(gè)處理器來(lái)在硬 件中執(zhí)行指令以執(zhí)行本發(fā)明的技術(shù)。視頻編碼器20和視頻解碼器30中的每一者可包括 于一或多個(gè)編碼器或解碼器中,其中任一者可集成為相應(yīng)裝置中的組合編碼器/解碼器 (CODEC)的部分。
[0051] 如上文簡(jiǎn)短地提及,視頻編碼器20編碼視頻數(shù)據(jù)。視頻數(shù)據(jù)可包含一或多個(gè)圖 片。圖片中的每一者為形成視頻的部分的靜態(tài)圖像。在一些例子中,圖片可稱作視頻"幀"。 當(dāng)視頻編碼器20編碼視頻數(shù)據(jù)時(shí),視頻編碼器20可產(chǎn)生位流。位流可包括形成視頻數(shù)據(jù) 的經(jīng)譯碼表示的位序列。位流可包括經(jīng)譯碼圖片和相關(guān)聯(lián)的數(shù)據(jù)。經(jīng)譯碼圖片為圖片的經(jīng) 譯碼表示。
[0052] 為了產(chǎn)生位流,視頻編碼器20可對(duì)視頻數(shù)據(jù)中的每一圖片執(zhí)行編碼操作。當(dāng)視頻 編碼器20對(duì)圖片執(zhí)行編碼操作時(shí),視頻編碼器20可產(chǎn)生一系列經(jīng)譯碼圖片和相關(guān)聯(lián)的數(shù) 據(jù)。相關(guān)聯(lián)的數(shù)據(jù)可包括序列參數(shù)集、圖片參數(shù)集、調(diào)適參數(shù)集和其它語(yǔ)法結(jié)構(gòu)。序列參數(shù) 集(SPS)可含有可應(yīng)用于零或更多個(gè)圖片序列的參數(shù)。圖片參數(shù)集(PPS)可含有可應(yīng)用于 零或更多個(gè)圖片的參數(shù)。調(diào)適參數(shù)集(APS)可含有可應(yīng)用于零或更多個(gè)圖片的參數(shù)。APS 中的參數(shù)可為比PPS中的參數(shù)更可能改變的參數(shù)。
[0053] 為了產(chǎn)生經(jīng)譯碼圖片,視頻編碼器20可將圖片分割為視頻塊。視頻塊可為二維樣 本陣列。視頻塊中的每一者與樹(shù)塊相關(guān)聯(lián)。在一些例子中,樹(shù)塊可稱作最大譯碼單元(LCU)。 HEVC的樹(shù)塊可寬泛地類似于先前標(biāo)準(zhǔn)(例如H. 264/AVC)的宏塊。然而,樹(shù)塊不一定限于特 定大小且可包括一或多個(gè)譯碼單元(CU)。視頻編碼器20可使用四叉樹(shù)分割以將樹(shù)塊的視 頻塊分割為與CU相關(guān)聯(lián)的視頻塊,因此得名"樹(shù)塊"。
[0054] 在一些實(shí)例中,視頻編碼器20可將圖片分割為多個(gè)切片。切片中的每一者可包括 整數(shù)個(gè)⑶。在一些例子中,切片包含整數(shù)個(gè)樹(shù)塊。在其它例子中,切片的邊界可在樹(shù)塊內(nèi)。
[0055] 作為對(duì)圖片執(zhí)行編碼操作的部分,視頻編碼器20可對(duì)圖片的每一切片執(zhí)行編碼 操作。當(dāng)視頻編碼器20對(duì)切片執(zhí)行編碼操作時(shí),視頻編碼器20可產(chǎn)生與切片相關(guān)聯(lián)的經(jīng) 編碼數(shù)據(jù)。與切片相關(guān)聯(lián)的經(jīng)編碼數(shù)據(jù)可稱作"經(jīng)譯碼切片"。
[0056] 為了產(chǎn)生經(jīng)譯碼切片,視頻編碼器20可對(duì)切片中的每一樹(shù)塊執(zhí)行編碼操作。當(dāng)視 頻編碼器20對(duì)樹(shù)塊執(zhí)行編碼操作時(shí),視頻編碼器20可產(chǎn)生經(jīng)譯碼樹(shù)塊。經(jīng)譯碼樹(shù)塊可包 含表示樹(shù)塊的經(jīng)編碼版本的數(shù)據(jù)。
[0057] 當(dāng)視頻編碼器20產(chǎn)生經(jīng)譯碼切片時(shí),視頻編碼器20可根據(jù)光柵掃描次序?qū)η衅?中的樹(shù)塊執(zhí)行編碼操作(即,進(jìn)行編碼)。換句話說(shuō),視頻編碼器20可以跨越切片中的最頂 部行的樹(shù)塊從作到右進(jìn)行,接著跨越下一較低行的樹(shù)塊從左到右進(jìn)行等等的次序編碼切片 的樹(shù)塊,直到視頻編碼器20已編碼切片中的樹(shù)塊的每一者為止。
[0058] 作為根據(jù)光柵掃描次序編碼樹(shù)塊的結(jié)果,給定樹(shù)塊上方和左方的樹(shù)塊可能已編 碼,但給定樹(shù)塊的下方和右方的樹(shù)塊尚未編碼。因此,視頻編碼器20可能夠在編碼給定樹(shù) 塊時(shí)存取通過(guò)編碼給定樹(shù)塊的上方和左方的樹(shù)塊產(chǎn)生的信息。然而,視頻編碼器20可能不 能在編碼給定樹(shù)塊時(shí)存取通過(guò)編碼給定樹(shù)塊的下方和右方的樹(shù)塊產(chǎn)生的信息。
[0059] 為了產(chǎn)生經(jīng)譯碼樹(shù)塊,視頻編碼器20可遞歸地對(duì)樹(shù)塊的視頻塊執(zhí)行四叉樹(shù)分割 以將視頻塊劃分為逐漸變小的視頻塊。較小視頻塊中的每一者可與不同CU相關(guān)聯(lián)。舉例 來(lái)說(shuō),視頻編碼器20可將樹(shù)塊的視頻塊分割為四個(gè)同等大小的子塊,將子塊中的一或多者 分割為四個(gè)同等大小的子子塊等等。已分割CU可為其視頻塊經(jīng)分割為與其它CU相關(guān)聯(lián)的 視頻塊的CU。非分割CU可為其視頻塊未分割為與其它CU相關(guān)聯(lián)的視頻塊的CU。
[0060] 位流中的一或多個(gè)語(yǔ)法元素可指示視頻編碼器20可分割樹(shù)塊的視頻塊的最大次 數(shù)。⑶的視頻塊形狀可為正方形的。⑶的視頻塊的大?。?,⑶的大小)可在8X8像素 直到具有64X64像素或更大的最大值的樹(shù)塊的視頻塊大?。矗瑯?shù)塊的大?。┑姆秶鷥?nèi)。
[0061] 視頻編碼器20可根據(jù)z掃描次序?qū)?shù)塊的每一 CU執(zhí)行編碼操作(S卩,進(jìn)行編碼)。 換句話說(shuō),視頻編碼器20可以彼次序編碼左上⑶、右上⑶、左下⑶和接著右下⑶。當(dāng)視頻 編碼器20對(duì)已分割CU執(zhí)行編碼操作時(shí),視頻編碼器20可根據(jù)z掃描次序編碼與已分割CU 的視頻塊的子塊相關(guān)聯(lián)的CU。換句話說(shuō),視頻編碼器20可以所述次序編碼與左上子塊相關(guān) 聯(lián)的CU、與右上子塊相關(guān)聯(lián)的CU、與左下子塊相關(guān)聯(lián)的CU,和接著與右下子塊相關(guān)聯(lián)的CU。
[0062] 作為根據(jù)z掃描次序編碼樹(shù)塊的⑶的結(jié)果,給定⑶上方、左上方、右上方、左方和 左下方的⑶可能已編碼。給定⑶下方或右方的⑶尚未編碼。因此,視頻編碼器20可能 夠在編碼給定⑶時(shí)存取通過(guò)編碼與給定⑶相鄰的一些⑶所產(chǎn)生的信息。然而,視頻編碼 器20可能不能在編碼給定CU時(shí)存取通過(guò)編碼與給定CU相鄰的其它CU所產(chǎn)生的信息。
[0063] 當(dāng)視頻編碼器20編碼非分割⑶時(shí),視頻編碼器20可產(chǎn)生用于⑶的一或多個(gè)預(yù) 測(cè)單元(PU)。CU的PU中的每一者可與CU的視頻塊內(nèi)的不同視頻塊相關(guān)聯(lián)。視頻編碼器 20可產(chǎn)生用于CU的每一 PU的預(yù)測(cè)性視頻塊。PU的預(yù)測(cè)性視頻塊可為樣本的塊。視頻編 碼器20可使用幀內(nèi)預(yù)測(cè)或幀間預(yù)測(cè)以產(chǎn)生用于PU的預(yù)測(cè)性視頻塊。
[0064] 當(dāng)視頻編碼器20使用幀內(nèi)預(yù)測(cè)以產(chǎn)生PU的預(yù)測(cè)性視頻塊時(shí),視頻編碼器20可基 于與PU相關(guān)聯(lián)的圖片的經(jīng)解碼樣本來(lái)產(chǎn)生TO的預(yù)測(cè)性視頻塊。如果視頻編碼器20使用 幀內(nèi)預(yù)測(cè)以產(chǎn)生CU的PU的預(yù)測(cè)性視頻塊,則CU為幀內(nèi)預(yù)測(cè)的CU。當(dāng)視頻編碼器20使用 幀間預(yù)測(cè)以產(chǎn)生PU的預(yù)測(cè)性視頻塊時(shí),視頻編碼器20可基于不同于與PU相關(guān)聯(lián)的圖片的 一或多個(gè)圖片的經(jīng)解碼樣本來(lái)產(chǎn)生PU的預(yù)測(cè)性視頻塊。如果視頻編碼器20使用幀間預(yù)測(cè) 以產(chǎn)生CU的PU的預(yù)測(cè)性視頻塊,則CU為幀間預(yù)測(cè)的CU。
[0065] 此外,當(dāng)視頻編碼器20使用幀間預(yù)測(cè)以產(chǎn)生用于PU的預(yù)測(cè)性視頻塊時(shí),視頻編碼 器20可產(chǎn)生用于PU的運(yùn)動(dòng)信息。用于PU的運(yùn)動(dòng)信息可指示PU的一或多個(gè)參考?jí)K。PU的 每一參考?jí)K可為參考圖片內(nèi)的視頻塊。參考圖片可為不同于與PU相關(guān)聯(lián)的圖片的圖片。在 一些例子中,PU的參考?jí)K還可稱作PU的"參考樣本"。視頻編碼器20可基于PU的參考?jí)K 產(chǎn)生用于PU的預(yù)測(cè)性視頻塊。
[0066] 在視頻編碼器20產(chǎn)生用于⑶的一或多個(gè)PU的預(yù)測(cè)性視頻塊之后,視頻編碼器20 可基于用于CU的PU的預(yù)測(cè)性視頻塊產(chǎn)生用于CU的殘余數(shù)據(jù)。用于CU的殘余數(shù)據(jù)可指示 用于CU的PU的預(yù)測(cè)性視頻塊中的樣本與CU的原始視頻塊之間的差異。
[0067] 此外,作為對(duì)非分割CU執(zhí)行編碼操作的部分,視頻編碼器20可對(duì)CU的殘余數(shù)據(jù) 執(zhí)行遞歸四叉樹(shù)分割以將CU的殘余數(shù)據(jù)分割為與CU的變換單元(TU)相關(guān)聯(lián)的殘余數(shù)據(jù) 的一或多個(gè)塊(即,殘余視頻塊)。CU的每一 TU可與不同殘余視頻塊相關(guān)聯(lián)。
[0068] 視頻譯碼器20可將一或多個(gè)變換應(yīng)用于與TU相關(guān)聯(lián)的殘余視頻塊以產(chǎn)生與TU 相關(guān)聯(lián)的變換系數(shù)塊(即,變換系數(shù)塊)。概念上,變換系數(shù)塊可包含表示變換在頻域中的 量值的二維(2D)變換系數(shù)矩陣。
[0069] 在產(chǎn)生變換系數(shù)塊之后,視頻編碼器20可對(duì)變換系數(shù)塊執(zhí)行量化過(guò)程。量化一般 指代如下過(guò)程:量化變換系數(shù)以可能地減少用以表示變換系數(shù)的數(shù)據(jù)的量,從而提供進(jìn)一 步壓縮。量化過(guò)程可減少與變換系數(shù)中的一些或全部系數(shù)相關(guān)聯(lián)的位深度。舉例來(lái)說(shuō),可 在量化期間將η位變換系數(shù)向下舍位到m位變換系數(shù),其中η大于m。
[0070] 視頻編碼器20可使每一⑶與量化參數(shù)(QP)值相關(guān)聯(lián)。與⑶相關(guān)聯(lián)的QP值可 確定視頻編碼器20如何量化與⑶相關(guān)聯(lián)的變換系數(shù)塊。視頻編碼器20可通過(guò)調(diào)整與⑶ 相關(guān)聯(lián)的QP值來(lái)調(diào)整應(yīng)用于與CU相關(guān)聯(lián)的變換系數(shù)塊的量化程度。
[0071] 在視頻編碼器20量化變換系數(shù)塊之后,視頻編碼器20可產(chǎn)生表示經(jīng)量化變換系 數(shù)塊中的變換系數(shù)的語(yǔ)法元素集合。視頻編碼器20可將熵編碼操作(例如上下文自適應(yīng) 二進(jìn)制算術(shù)譯碼(CABAC)操作)應(yīng)用于這些語(yǔ)法元素中的一些語(yǔ)法元素。
[0072] 由視頻編碼器20產(chǎn)生的位流可包括一系列網(wǎng)絡(luò)抽象層(NAL)單元。NAL單元中的 每一者可為含有NAL單元中的數(shù)據(jù)的類型的指示和含有所述數(shù)據(jù)的字節(jié)的語(yǔ)法結(jié)構(gòu)。舉例 來(lái)說(shuō),NAL單元可含有表示序列參數(shù)集、圖片參數(shù)集、經(jīng)譯碼切片、補(bǔ)充增強(qiáng)信息(SEI)、存 取單元定界符、填充符數(shù)據(jù)或另一類型的數(shù)據(jù)的數(shù)據(jù)。NAL單元中的數(shù)據(jù)可包括各種語(yǔ)法結(jié) 構(gòu)。
[0073] 視頻解碼器30可接收由視頻編碼器20產(chǎn)生的位流。位流可包括由視頻編碼器 20編碼的視頻數(shù)據(jù)的經(jīng)譯碼表示。當(dāng)視頻解碼器30接收位流時(shí),視頻解碼器30可對(duì)位流 執(zhí)行解析操作。當(dāng)視頻解碼器30執(zhí)行解析操作時(shí),視頻解碼器30可從位流提取語(yǔ)法元素。 視頻解碼器30可基于從位流提取的語(yǔ)法元素重構(gòu)視頻數(shù)據(jù)的圖片?;谡Z(yǔ)法元素重構(gòu)視 頻數(shù)據(jù)的過(guò)程一般可與由視頻編碼器20執(zhí)行以產(chǎn)生語(yǔ)法元素的過(guò)程互逆。
[0074] 在視頻解碼器30提取與CU相關(guān)聯(lián)的語(yǔ)法元素之后,視頻解碼器30可基于語(yǔ)法元 素產(chǎn)生用于CU的PU的預(yù)測(cè)性視頻塊。另外,視頻解碼器30可反量化與CU的TU相關(guān)聯(lián)的 變換系數(shù)塊。視頻解碼器30可對(duì)變換系數(shù)塊執(zhí)行反變換以重構(gòu)與CU的TU相關(guān)聯(lián)的殘余 視頻塊。在產(chǎn)生預(yù)測(cè)性視頻塊且重構(gòu)殘余視頻塊之后,視頻解碼器30可基于預(yù)測(cè)性視頻塊 和殘余視頻塊來(lái)重構(gòu)CU的視頻塊。以此方式,視頻解碼器30可基于位流中的語(yǔ)法元素來(lái) 重構(gòu)⑶的視頻塊。
[0075] 如上文簡(jiǎn)短地描述,視頻編碼器20可使用幀間預(yù)測(cè)以產(chǎn)生用于⑶的PU的預(yù)測(cè)性 視頻塊和運(yùn)動(dòng)信息。在許多例子中,給定PU的運(yùn)動(dòng)信息可能與一或多個(gè)附近PU ( S卩,其視頻 塊在空間上或時(shí)間上在給定PU的視頻塊附近的PU)的運(yùn)動(dòng)信息相同或類似。因?yàn)楦浇黀U 經(jīng)常具有類似運(yùn)動(dòng)信息,所以視頻編碼器20可參考附近PU的運(yùn)動(dòng)信息來(lái)編碼給定PU的運(yùn) 動(dòng)信息。參考附近PU的運(yùn)動(dòng)信息來(lái)編碼給定ro的運(yùn)動(dòng)信息可減少位流中指示給定PU的 運(yùn)動(dòng)信息所需要的位的數(shù)目。
[0076] 視頻編碼器20可以各種方式參考附近PU的運(yùn)動(dòng)信息來(lái)編碼給定PU的運(yùn)動(dòng)信息。 舉例來(lái)說(shuō),視頻編碼器20可指示給定PU的運(yùn)動(dòng)信息與附近PU的運(yùn)動(dòng)信息相同。本發(fā)明可 使用片語(yǔ)"合并模式"來(lái)指代指示給定PU的運(yùn)動(dòng)信息與附近TO的運(yùn)動(dòng)信息相同或可從附 近PU的運(yùn)動(dòng)信息導(dǎo)出。在另一實(shí)例中,視頻編碼器20可計(jì)算用于給定PU的運(yùn)動(dòng)向量差 (MVD)。MVD指示給定PU的運(yùn)動(dòng)向量與附近PU的運(yùn)動(dòng)向量之間的差。在此實(shí)例中,視頻編 碼器20可將MVD而非給定PU的運(yùn)動(dòng)向量包括于給定PU的運(yùn)動(dòng)信息中。在位流中表示MVD 比表示給定PU的運(yùn)動(dòng)向量所需要的位少。本發(fā)明可使用片語(yǔ)"高級(jí)運(yùn)動(dòng)向量預(yù)測(cè)"(AMVP) 模式指代通過(guò)使用MVD和識(shí)別候選者運(yùn)動(dòng)向量的索引值來(lái)用信號(hào)通知給定PU的運(yùn)動(dòng)信息。
[0077] 為了使用合并模式或AMVP模式來(lái)用信號(hào)通知給定PU的運(yùn)動(dòng)信息,視頻編碼器20 可產(chǎn)生用于給定PU的候選者列表。候選者列表可包括一或多個(gè)候選者。用于給定PU的候 選者列表中的候選者中的每一者可指定運(yùn)動(dòng)信息。由每一候選者指示的運(yùn)動(dòng)信息可包括運(yùn) 動(dòng)向量、參考圖片索引和預(yù)測(cè)方向指示符。候選者列表中的候選者可包括"原始"候選者, 其中每一者指示不同于給定 PU的PU內(nèi)的指定候選者位置中的一者的運(yùn)動(dòng)信息。
[0078] 在產(chǎn)生用于TO的候選者列表之后,視頻編碼器20可從用于PU的候選者列表選擇 候選者中的一者。舉例來(lái)說(shuō),視頻編碼器可比較每一候選者與正被譯碼的PU且可選擇具有 所要速率-失真性能的候選者。視頻編碼器20可輸出用于PU的候選者索引。候選者索引 可識(shí)別選定候選者在候選者列表中的位置。
[0079] 此外,視頻編碼器20可基于由PU的運(yùn)動(dòng)信息指示的參考?jí)K產(chǎn)生用于PU的預(yù)測(cè)性 視頻塊??苫谟捎糜赑U的候選者列表中的選定候選者指示的運(yùn)動(dòng)信息確定TO的運(yùn)動(dòng)信 息。舉例來(lái)說(shuō),在合并模式中,PU的運(yùn)動(dòng)信息可與由選定候選者指示的運(yùn)動(dòng)信息相同。在 AMVP模式中,可基于用于PU的運(yùn)動(dòng)向量差(MVD)和由選定候選者指示的運(yùn)動(dòng)信息確定PU 的運(yùn)動(dòng)信息。視頻編碼器20可如上文所描述處理用于PU的預(yù)測(cè)性視頻塊。
[0080] 當(dāng)視頻解碼器30接收到位流時(shí),視頻解碼器30可產(chǎn)生用于⑶的PU中的每一者 的候選者列表。由視頻解碼器30針對(duì)PU產(chǎn)生的候選者列表可與由視頻編碼器20針對(duì)PU 產(chǎn)生的候選者列表相同。從位流解析得到的語(yǔ)法元素可指示在PU的候選者列表中選定候 選者的位置。在產(chǎn)生用于PU的候選者列表之后,視頻解碼器30可基于由PU的運(yùn)動(dòng)信息指 示的一或多個(gè)參考?jí)K產(chǎn)生用于PU的預(yù)測(cè)性視頻塊。視頻解碼器30可基于由用于PU的候 選者列表中的選定候選者指示的運(yùn)動(dòng)信息確定PU的運(yùn)動(dòng)信息。視頻解碼器30可基于用于 TO的預(yù)測(cè)性視頻塊和用于CU的殘余視頻塊重構(gòu)用于CU的視頻塊。
[0081] 圖2說(shuō)明經(jīng)配置以實(shí)施本發(fā)明的技術(shù)的實(shí)例視頻編碼器20的框圖。圖2是出于 解釋的目的而提供且不應(yīng)視為限制如本發(fā)明中廣泛地示范和描述的技術(shù)。出于解釋的目 的,本發(fā)明在HEVC譯碼的上下文中描述視頻編碼器20。然而,本發(fā)明的技術(shù)可應(yīng)用于其它 譯碼標(biāo)準(zhǔn)或方法。
[0082] 在圖2的實(shí)例中,視頻編碼器20包括多個(gè)功能組件。視頻編碼器20的功能組件 包括預(yù)測(cè)模塊100、殘差產(chǎn)生模塊102、變換模塊104、量化模塊106、反量化模塊108、反變 換模塊110、重構(gòu)模塊112、濾波器模塊113、經(jīng)解碼圖片緩沖器114,和熵編碼模塊116。預(yù) 測(cè)模塊100包括幀間預(yù)測(cè)模塊121、運(yùn)動(dòng)估計(jì)模塊122、運(yùn)動(dòng)補(bǔ)償模塊124和幀內(nèi)預(yù)測(cè)模塊 126。在其它實(shí)例中,視頻編碼器20可包括更多、更少或不同功能組件。此外,運(yùn)動(dòng)估計(jì)模 塊122和運(yùn)動(dòng)補(bǔ)償模塊124可高度集成,但出于解釋的目的而在圖2的實(shí)例中分開(kāi)地表示。
[0083] 視頻編碼器20可接收視頻數(shù)據(jù)。視頻編碼器20可從各種源接收視頻數(shù)據(jù)。舉例 來(lái)說(shuō),視頻編碼器20可從視頻源18(圖1)或另一源接收視頻數(shù)據(jù)。視頻數(shù)據(jù)可表示一系 列圖片。為了編碼視頻數(shù)據(jù),視頻編碼器20可對(duì)圖片中的每一者執(zhí)行編碼操作。作為對(duì)圖 片執(zhí)行編碼操作的部分,視頻編碼器20可對(duì)圖片的每一切片執(zhí)行編碼操作。作為對(duì)切片執(zhí) 行編碼操作的部分,視頻編碼器20可對(duì)切片中的樹(shù)塊執(zhí)行編碼操作。
[0084] 作為對(duì)樹(shù)塊執(zhí)行編碼操作的部分,預(yù)測(cè)模塊100可對(duì)樹(shù)塊的視頻塊執(zhí)行四叉樹(shù)分 割以將視頻塊劃分為逐漸變小的視頻塊。較小視頻塊中的每一者可與不同CU相關(guān)聯(lián)。舉 例來(lái)說(shuō),預(yù)測(cè)模塊1〇〇可將樹(shù)塊的視頻塊分割為四個(gè)同等大小的子塊,將子塊中的一或多 者分割為四個(gè)同等大小的子子塊等等。
[0085] 與⑶相關(guān)聯(lián)的視頻塊的大小可在8X8樣本直到具有64X64樣本或更大的最大 值的樹(shù)塊的大小的范圍內(nèi)。在本發(fā)明中,"NXN"與"N乘N"可互換使用以指就垂直和水平 尺寸而言的視頻塊的樣本尺寸,例如,16X 16樣本或16乘16樣本。一般來(lái)說(shuō),16X 16視頻 塊在垂直方向上具有16個(gè)樣本(y = 16)且在水平方向上具有16個(gè)樣本(X = 16)。同樣, NXN塊一般在垂直方向上具有N個(gè)樣本且在水平方向上具有N個(gè)樣本,其中N表不非負(fù)整 數(shù)值。
[0086] 此外,作為對(duì)樹(shù)塊執(zhí)行編碼操作的部分,預(yù)測(cè)模塊100可產(chǎn)生用于樹(shù)塊的階層式 四叉樹(shù)數(shù)據(jù)結(jié)構(gòu)。舉例來(lái)說(shuō),樹(shù)塊可對(duì)應(yīng)于四叉樹(shù)數(shù)據(jù)結(jié)構(gòu)的根節(jié)點(diǎn)。如果預(yù)測(cè)模塊loo 將樹(shù)塊的視頻塊分割為四個(gè)子塊,則在四叉樹(shù)數(shù)據(jù)結(jié)構(gòu)中根節(jié)點(diǎn)具有四個(gè)子節(jié)點(diǎn)。子節(jié)點(diǎn) 中的每一者對(duì)應(yīng)于與子塊中的一者相關(guān)聯(lián)的CU。如果預(yù)測(cè)模塊100將子塊中的一者分割為 四個(gè)子子塊,則對(duì)應(yīng)于與子塊相關(guān)聯(lián)的CU的節(jié)點(diǎn)可具有四個(gè)子節(jié)點(diǎn),所述子節(jié)點(diǎn)中的每一 者對(duì)應(yīng)于與子子塊中的一者相關(guān)聯(lián)的CU。
[0087] 四叉樹(shù)數(shù)據(jù)結(jié)構(gòu)的每一節(jié)點(diǎn)可含有用于對(duì)應(yīng)樹(shù)塊或CU的語(yǔ)法數(shù)據(jù)(例如,語(yǔ)法元 素)。舉例來(lái)說(shuō),四叉樹(shù)中的節(jié)點(diǎn)可包括指示對(duì)應(yīng)于節(jié)點(diǎn)的CU的視頻塊是否被分割(S卩,分 裂)為四個(gè)子塊的分裂旗標(biāo)。用于CU的語(yǔ)法元素可遞歸地定義,且可取決于CU的視頻塊 是否分裂為子塊。其視頻塊未分割的CU可對(duì)應(yīng)于四叉樹(shù)數(shù)據(jù)結(jié)構(gòu)中的葉節(jié)點(diǎn)。經(jīng)譯碼樹(shù) 塊可包括基于用于對(duì)應(yīng)樹(shù)塊的四叉樹(shù)數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)。
[0088] 視頻編碼器20可對(duì)樹(shù)塊的每一非分割CU執(zhí)行編碼操作。當(dāng)視頻編碼器20對(duì)非 分割CU執(zhí)行編碼操作時(shí),視頻編碼器20產(chǎn)生表示非分割CU的經(jīng)編碼表示的數(shù)據(jù)。
[0089] 作為對(duì)CU執(zhí)行編碼操作的部分,預(yù)測(cè)模塊100可將CU的視頻塊分割于CU的一或 多個(gè)TO當(dāng)中。視頻編碼器20和視頻解碼器30可支持各種PU大小。假定特定CU的大小 為2NX2N,視頻編碼器20和視頻解碼器30可支持2NX2N或NXN的PU大小以用于幀內(nèi) 預(yù)測(cè),和2NX2N、2NXN、NX2N、NXN或類似者的對(duì)稱PU大小以用于幀間預(yù)測(cè)。視頻編碼 器20和視頻解碼器30還可支持用于2NXnU、2NXnD、nLX2N和nRX2N的PU大小的非對(duì) 稱分割以用于幀間預(yù)測(cè)。在一些實(shí)例中,預(yù)測(cè)模塊100可執(zhí)行幾何分割以沿著邊界將CU的 視頻塊分割于CU的PU當(dāng)中,所述邊界不與CU的視頻塊的邊以直角相交。
[0090] 幀間預(yù)測(cè)模塊121可對(duì)⑶的每一 PU執(zhí)行幀間預(yù)測(cè)。幀間預(yù)測(cè)可提供時(shí)間壓縮。 為了對(duì)PU執(zhí)行幀間預(yù)測(cè),運(yùn)動(dòng)估計(jì)模塊122可產(chǎn)生用于PU的運(yùn)動(dòng)信息。運(yùn)動(dòng)補(bǔ)償模塊124 可基于不同于與CU相關(guān)聯(lián)的圖片的圖片(S卩,參考圖片)的運(yùn)動(dòng)信息和經(jīng)解碼樣本來(lái)產(chǎn)生 用于PU的預(yù)測(cè)性視頻塊。在本發(fā)明中,經(jīng)由通過(guò)運(yùn)動(dòng)補(bǔ)償模塊124產(chǎn)生的預(yù)測(cè)性視頻塊而 預(yù)測(cè)的視頻塊可稱作幀間預(yù)測(cè)的視頻塊。
[0091] 切片可為I切片、P切片或B切片。運(yùn)動(dòng)估計(jì)模塊122和運(yùn)動(dòng)補(bǔ)償模塊124可針 對(duì)CU的PU執(zhí)行不同操作,此取決于PU在I切片、P切片還是B切片中。在I切片中,所有 PU經(jīng)幀內(nèi)預(yù)測(cè)。因此,如果PU在I切片中,則運(yùn)動(dòng)估計(jì)模塊122和運(yùn)動(dòng)補(bǔ)償模塊124不對(duì) PU執(zhí)行幀間預(yù)測(cè)。
[0092] 如果TO在P切片中,則含有PU的圖片與稱作"列表0"的參考圖片的列表相關(guān)聯(lián)。 列表〇中的參考圖片的每一者含有可用于其它圖片的幀間預(yù)測(cè)的樣本。當(dāng)運(yùn)動(dòng)估計(jì)模塊 122關(guān)于P切片中的PU執(zhí)行運(yùn)動(dòng)估計(jì)操作時(shí),運(yùn)動(dòng)估計(jì)模塊122可在列表0中的參考圖片 中搜索用于TO的參考?jí)K。PU的參考?jí)K可為最緊密地對(duì)應(yīng)于PU的視頻塊中的樣本的樣本集 合(例如,樣本的塊)。運(yùn)動(dòng)估計(jì)模塊122可使用多種度量來(lái)確定參考圖片中的樣本集合對(duì) 應(yīng)于PU的視頻塊中的樣本的緊密程度。舉例來(lái)說(shuō),運(yùn)動(dòng)估計(jì)模塊122可通過(guò)絕對(duì)差的總和 (SAD)、平方差的總和(SSD)或其它差度量來(lái)確定參考圖片中的樣本集合對(duì)應(yīng)于PU的視頻 塊中的樣本的壓縮程度。
[0093] 在識(shí)別P切片中的TO的參考?jí)K之后,運(yùn)動(dòng)估計(jì)模塊122可產(chǎn)生指示列表0中的含 有參考?jí)K的參考圖片的參考索引和指不PU與參考?jí)K之間的空間位移的運(yùn)動(dòng)向量。在各種 實(shí)例中,運(yùn)動(dòng)估計(jì)模塊122可以不同的精度產(chǎn)生運(yùn)動(dòng)向量。舉例來(lái)說(shuō),運(yùn)動(dòng)估計(jì)模塊122可 以四分之一樣本精度、八分之一樣本精度或其它分?jǐn)?shù)樣本精度產(chǎn)生運(yùn)動(dòng)向量。在分?jǐn)?shù)樣本 精度的狀況下,可從參考圖片中的整數(shù)位置樣本值內(nèi)插得到參考?jí)K值。運(yùn)動(dòng)估計(jì)模塊122 可輸出參考索引和運(yùn)動(dòng)向量作為PU的運(yùn)動(dòng)信息。運(yùn)動(dòng)補(bǔ)償模塊124可基于由PU的運(yùn)動(dòng)信 息識(shí)別的參考?jí)K產(chǎn)生PU的預(yù)測(cè)性視頻塊。
[0094] 如果TO位于B切片中,則含有PU的圖片可與稱作"列表0"和"列表1"的兩個(gè)參 考圖片列表相關(guān)聯(lián)。在一些實(shí)例中,含有B切片的圖片可與為列表0和列表1的組合的列 表組合相關(guān)聯(lián)。
[0095] 此外,如果TO位于B切片中,則運(yùn)動(dòng)估計(jì)模塊122可針對(duì)PU執(zhí)行單向預(yù)測(cè)或雙向 預(yù)測(cè)。當(dāng)運(yùn)動(dòng)估計(jì)模塊122針對(duì)PU執(zhí)行單向預(yù)測(cè)時(shí),運(yùn)動(dòng)估計(jì)模塊122可在列表0或列表 1的參考圖片中搜索用于PU的參考?jí)K。運(yùn)動(dòng)估計(jì)模塊122可接著產(chǎn)生指示列表0或列表 1中的含有參考?jí)K的參考圖片的參考索引和指不PU與參考?jí)K之間的空間位移的運(yùn)動(dòng)向量。 運(yùn)動(dòng)估計(jì)模塊122可輸出參考索引、預(yù)測(cè)方向指示符和運(yùn)動(dòng)向量作為PU的運(yùn)動(dòng)信息。預(yù)測(cè) 方向指示符可指示參考索引指示列表〇或列表1中的參考圖片。運(yùn)動(dòng)補(bǔ)償模塊124可基于 由PU的運(yùn)動(dòng)信息指示的參考?jí)K產(chǎn)生PU的預(yù)測(cè)性視頻塊。
[0096] 當(dāng)運(yùn)動(dòng)估計(jì)模塊122針對(duì)PU執(zhí)行雙向預(yù)測(cè)時(shí),運(yùn)動(dòng)估計(jì)模塊122可在列表0中的 參考圖片中搜索用于PU的參考?jí)K且還可在列表1中的參考圖片中搜索用于TO的另一參考 塊。運(yùn)動(dòng)估計(jì)|旲塊122可接著廣生指不列表0和列表1中的含有參考?jí)K的參考圖片的參考 索引和指示參考?jí)K與PU之間的空間位移的運(yùn)動(dòng)向量。運(yùn)動(dòng)估計(jì)模塊122可輸出PU的參考 索引和運(yùn)動(dòng)向量作為PU的運(yùn)動(dòng)信息。運(yùn)動(dòng)補(bǔ)償模塊124可基于由PU的運(yùn)動(dòng)信息指示的參 考?jí)K產(chǎn)生PU的預(yù)測(cè)性視頻塊。
[0097] 在一些例子中,運(yùn)動(dòng)估計(jì)模塊122不向熵編碼模塊116輸出用于PU的運(yùn)動(dòng)信息的 完整集合。而是,運(yùn)動(dòng)估計(jì)模塊122可參考另一 PU的運(yùn)動(dòng)信息來(lái)用信號(hào)通知PU的運(yùn)動(dòng)信 息。舉例來(lái)說(shuō),運(yùn)動(dòng)估計(jì)模塊122可確定PU的運(yùn)動(dòng)信息充分類似于相鄰PU的運(yùn)動(dòng)信息。在 此實(shí)例中,運(yùn)動(dòng)估計(jì)模塊122可在與PU相關(guān)聯(lián)的語(yǔ)法結(jié)構(gòu)中指示一值,所述值向視頻解碼 器30指示PU具有與相鄰PU相同的運(yùn)動(dòng)信息或具有可從相鄰PU導(dǎo)出的運(yùn)動(dòng)信息。在另一 實(shí)例中,運(yùn)動(dòng)估計(jì)模塊122可在與PU相關(guān)聯(lián)的語(yǔ)法結(jié)構(gòu)中識(shí)別與相鄰PU相關(guān)聯(lián)的運(yùn)動(dòng)候 選者和運(yùn)動(dòng)向量差(MVD)。MVD指示PU的運(yùn)動(dòng)向量和與相鄰PU相關(guān)聯(lián)的所指示運(yùn)動(dòng)候選 者的運(yùn)動(dòng)向量之間的差。視頻解碼器30可使用所指示運(yùn)動(dòng)候選者的運(yùn)動(dòng)向量和MVD來(lái)確 定PU的運(yùn)動(dòng)向量。通過(guò)在用信號(hào)通知第二PU的運(yùn)動(dòng)信息時(shí)參考與第一 PU相關(guān)聯(lián)的候選 者的運(yùn)動(dòng)信息,視頻編碼器20可能夠使用比傳達(dá)運(yùn)動(dòng)向量原本所需的位少的位來(lái)用信號(hào) 通知第二TO的運(yùn)動(dòng)信息。
[0098] 如下文所描述,幀間預(yù)測(cè)模塊121可產(chǎn)生用于⑶的每一 PU的候選者列表。候選 者列表中的一或多者可包括一或多個(gè)原始候選者和從原始候選者導(dǎo)出的一或多個(gè)額外候 選者。
[0099] 作為對(duì)CU執(zhí)行編碼操作的部分,幀內(nèi)預(yù)測(cè)模塊126可對(duì)CU的PU執(zhí)行幀內(nèi)預(yù)測(cè)。 幀內(nèi)預(yù)測(cè)可提供空間壓縮。當(dāng)幀內(nèi)預(yù)測(cè)模塊126對(duì)PU執(zhí)行幀內(nèi)預(yù)測(cè)時(shí),幀內(nèi)預(yù)測(cè)模塊126 可基于同一圖片中的其它PU的經(jīng)解碼樣本來(lái)產(chǎn)生用于TO的預(yù)測(cè)數(shù)據(jù)。用于PU的預(yù)測(cè)數(shù) 據(jù)可包括預(yù)測(cè)性視頻塊和各種語(yǔ)法元素。幀內(nèi)預(yù)測(cè)模塊126可對(duì)I切片、P切片和B切片 中的TO執(zhí)行幀內(nèi)預(yù)測(cè)。
[0100] 為了對(duì)PU執(zhí)行幀內(nèi)預(yù)測(cè),幀內(nèi)預(yù)測(cè)模塊126可使用多個(gè)幀內(nèi)預(yù)測(cè)模式來(lái)產(chǎn)生用于 PU的多個(gè)預(yù)測(cè)數(shù)據(jù)集合。當(dāng)幀內(nèi)預(yù)測(cè)模塊126使用幀內(nèi)預(yù)測(cè)模式來(lái)產(chǎn)生用于PU的預(yù)測(cè)數(shù) 據(jù)集合時(shí),幀內(nèi)預(yù)測(cè)模塊126可在與幀內(nèi)預(yù)測(cè)模式相關(guān)聯(lián)的方向和/或梯度上跨越PU的視 頻塊從相鄰TO的視頻塊延伸樣本。相鄰PU可在PU的上方、右上方、左上方或左方,假定用 于PU、CU和樹(shù)塊的編碼次序?yàn)閺淖蟮接?、從上到下。幀?nèi)預(yù)測(cè)模塊126可使用各種數(shù)目個(gè) 幀內(nèi)預(yù)測(cè)模式(例如,33種方向性幀內(nèi)預(yù)測(cè)模式)。在一些實(shí)例中,幀內(nèi)預(yù)測(cè)模式的數(shù)目可 取決于TO的大小。
[0101] 預(yù)測(cè)模塊1〇〇可從由運(yùn)動(dòng)補(bǔ)償模塊124針對(duì)PU產(chǎn)生的預(yù)測(cè)數(shù)據(jù)或由幀內(nèi)預(yù)測(cè)模 塊126針對(duì)PU產(chǎn)生的預(yù)測(cè)數(shù)據(jù)當(dāng)中選擇用于PU的預(yù)測(cè)數(shù)據(jù)。在一些實(shí)例中,預(yù)測(cè)模塊100 基于預(yù)測(cè)數(shù)據(jù)集合的速率/失真度量來(lái)選擇用于PU的預(yù)測(cè)數(shù)據(jù)。
[0102] 如果預(yù)測(cè)模塊100選擇由幀內(nèi)預(yù)測(cè)模塊126產(chǎn)生的預(yù)測(cè)數(shù)據(jù),則預(yù)測(cè)模塊100可 用信號(hào)通知用以產(chǎn)生PU的預(yù)測(cè)數(shù)據(jù)的幀內(nèi)預(yù)測(cè)模式(即,選定幀內(nèi)預(yù)測(cè)模式)。預(yù)測(cè)模塊 100可以各種方式用信號(hào)通知選定幀內(nèi)預(yù)測(cè)模式。舉例來(lái)說(shuō),選定幀內(nèi)預(yù)測(cè)模式可能與相鄰 PU的幀內(nèi)預(yù)測(cè)模式相同。換句話說(shuō),相鄰TO的幀內(nèi)預(yù)測(cè)模式可為用于當(dāng)前PU的最可能模 式。因此,預(yù)測(cè)模塊100可產(chǎn)生指示選定幀內(nèi)預(yù)測(cè)模式與相鄰PU的幀內(nèi)預(yù)測(cè)模式相同的語(yǔ) 法元素。
[0103] 在預(yù)測(cè)模塊100選擇用于⑶的ro的預(yù)測(cè)數(shù)據(jù)之后,殘差產(chǎn)生模塊102可通過(guò)從 CU的視頻塊減去CU的PU的預(yù)測(cè)性視頻塊來(lái)產(chǎn)生用于CU的殘余數(shù)據(jù)。CU的殘余數(shù)據(jù)可包 括對(duì)應(yīng)于CU的視頻塊中的樣本的不同樣本分量的2D殘余視頻塊。舉例來(lái)說(shuō),殘余數(shù)據(jù)可包 括對(duì)應(yīng)于CU的PU的預(yù)測(cè)性視頻塊中的樣本的明度分量與CU的原始視頻塊中的樣本的明 度分量之間的差的殘余視頻塊。另外,CU的殘余數(shù)據(jù)可包括對(duì)應(yīng)于CU的PU的預(yù)測(cè)性視頻 塊中的樣本的色度分量與CU的原始視頻塊中的樣本的色度分量之間的差的殘余視頻塊。
[0104] 預(yù)測(cè)模塊100可執(zhí)行四叉樹(shù)分割以便將CU的殘余視頻塊分割為子塊。每一未劃 分殘余視頻塊可與CU的不同TU相關(guān)聯(lián)。與CU的TU相關(guān)聯(lián)的殘余視頻塊的大小和位置可 能基于或可能不基于與CU的PU相關(guān)聯(lián)的視頻塊的大小和位置。稱作"殘余四叉樹(shù)"(RQT) 的四叉樹(shù)結(jié)構(gòu)可包括與殘余視頻塊的每一者相關(guān)聯(lián)的節(jié)點(diǎn)。CU的TU可對(duì)應(yīng)于RQT的葉節(jié) 點(diǎn)。
[0105] 變換模塊104可通過(guò)將一或多個(gè)變換應(yīng)用于與TU相關(guān)聯(lián)的殘余視頻塊來(lái)產(chǎn)生用 于CU的每一 TU的一或多個(gè)變換系數(shù)塊。變換系數(shù)塊中的每一者可為2D變換系數(shù)矩陣。變 換模塊104可將各種變換應(yīng)用于與TU相關(guān)聯(lián)的殘余視頻塊。舉例來(lái)說(shuō),變換模塊104可將 離散余弦變換(DCT)、方向變換或概念上類似的變換應(yīng)用于與TU相關(guān)聯(lián)的殘余視頻塊。
[0106] 在變換模塊104產(chǎn)生與TU相關(guān)聯(lián)的變換系數(shù)塊之后,量化模塊106可量化變換系 數(shù)塊中的變換系數(shù)。量化模塊106可基于與CU相關(guān)聯(lián)的QP值量化與CU的TU相關(guān)聯(lián)的變 換系數(shù)塊。
[0107] 視頻編碼器20可以各種方式使QP值與CU相關(guān)聯(lián)。舉例來(lái)說(shuō),視頻編碼器20可 對(duì)與CU相關(guān)聯(lián)的樹(shù)塊執(zhí)行速率-失真分析。在速率-失真分析中,視頻編碼器20可通過(guò) 對(duì)樹(shù)塊執(zhí)行編碼操作多次而產(chǎn)生樹(shù)塊的多個(gè)經(jīng)譯碼表示。當(dāng)視頻編碼器20產(chǎn)生樹(shù)塊的不 同經(jīng)編碼表示時(shí),視頻編碼器20可使不同QP值與CU相關(guān)聯(lián)。當(dāng)給定QP值與樹(shù)塊的具有 最低速率和失真度量的經(jīng)譯碼表示中的CU相關(guān)聯(lián)時(shí),視頻編碼器20可用信號(hào)通知給定QP 值與CU相關(guān)聯(lián)。
[0108] 反量化模塊108和反變換模塊110可分別將反量化和反變換應(yīng)用于變換系數(shù)塊以 從變換系數(shù)塊重構(gòu)殘余視頻塊。重構(gòu)模塊112可將經(jīng)重構(gòu)殘余視頻塊添加到來(lái)自由預(yù)測(cè)模 塊100產(chǎn)生的一或多個(gè)預(yù)測(cè)性視頻塊的對(duì)應(yīng)樣本以產(chǎn)生與TU相關(guān)聯(lián)的經(jīng)重構(gòu)視頻塊。通 過(guò)以此方式重構(gòu)用于⑶的每一 TU的視頻塊,視頻編碼器20可重構(gòu)⑶的視頻塊。
[0109] 在重構(gòu)模塊112重構(gòu)⑶的視頻塊之后,濾波器模塊113可執(zhí)行解塊操作以減少與 CU相關(guān)聯(lián)的視頻塊中的塊假影。在執(zhí)行一或多個(gè)解塊操作之后,濾波器模塊113可將CU的 經(jīng)重構(gòu)視頻塊存儲(chǔ)于經(jīng)解碼圖片緩沖器114中。運(yùn)動(dòng)估計(jì)模塊122和運(yùn)動(dòng)補(bǔ)償模塊124可 使用含有經(jīng)重構(gòu)視頻塊的參考圖片來(lái)對(duì)后續(xù)圖片的PU執(zhí)行幀間預(yù)測(cè)。另外,幀內(nèi)預(yù)測(cè)模塊 126可使用經(jīng)解碼圖片緩沖器114中的經(jīng)重構(gòu)視頻塊來(lái)對(duì)與⑶在同一圖片中的其它PU執(zhí) 行幀內(nèi)預(yù)測(cè)。
[0110] 熵編碼模塊116可從視頻編碼器20的其它功能組件接收數(shù)據(jù)。舉例來(lái)說(shuō),熵編碼 模塊116可從量化模塊106接收變換系數(shù)塊且可從預(yù)測(cè)模塊100接收語(yǔ)法元素。當(dāng)熵編碼 模塊116接收數(shù)據(jù)時(shí),熵編碼模塊116可執(zhí)行一或多個(gè)熵編碼操作以產(chǎn)生經(jīng)熵編碼數(shù)據(jù)。舉 例來(lái)說(shuō),視頻編碼器20可對(duì)數(shù)據(jù)執(zhí)行上下文自適應(yīng)可變長(zhǎng)度譯碼(CAVLC)操作、CABAC操 作、可變-可變(V2V)長(zhǎng)度譯碼操作、基于語(yǔ)法的上下文自適應(yīng)二進(jìn)制算術(shù)譯碼(SBAC)操 作、概率區(qū)間分割熵(PIPE)譯碼操作,或另一類型的熵編碼操作。熵編碼模塊116可輸出 包括經(jīng)熵編碼數(shù)據(jù)的位流。
[0111] 作為對(duì)數(shù)據(jù)執(zhí)行熵編碼操作的部分,熵編碼模塊116可選擇上下文模型。如果熵 編碼模塊116正在執(zhí)行CABAC操作,則上下文模型可指示特定二進(jìn)位具有特定值的概率的 估計(jì)。在CABAC的上下文中,術(shù)語(yǔ)"二進(jìn)位"用以指代語(yǔ)法元素的二進(jìn)位版本的位。
[0112] 圖3說(shuō)明經(jīng)配置以實(shí)施本發(fā)明的技術(shù)的實(shí)例視頻解碼器30的框圖。圖3是出于 解釋的目的而提供且不限制本發(fā)明中寬泛地例證和描述的技術(shù)。出于解釋的目的,本發(fā)明 在HEVC譯碼的上下文中描述視頻解碼器30。然而,本發(fā)明的技術(shù)可應(yīng)用于其它譯碼標(biāo)準(zhǔn)或 方法。
[0113] 在圖3的實(shí)例中,視頻解碼器30包括多個(gè)功能組件。視頻解碼器30的功能組件 包括熵解碼模塊150、預(yù)測(cè)模塊152、反量化模塊154、反變換模塊156、重構(gòu)模塊158、濾波器 模塊159和經(jīng)解碼圖片緩沖器160。預(yù)測(cè)模塊152包括運(yùn)動(dòng)補(bǔ)償模塊162和幀內(nèi)預(yù)測(cè)模塊 164。在一些實(shí)例中,視頻解碼器30可執(zhí)行解碼回合,所述解碼回合大體上與關(guān)于圖2的視 頻編碼器20所描述的編碼回合互逆。在其它實(shí)例中,視頻解碼器30可包括更多、更少或不 同功能組件。
[0114] 視頻解碼器30可接收包含經(jīng)編碼視頻數(shù)據(jù)的位流。位流可包括多個(gè)語(yǔ)法元素。當(dāng) 視頻解碼器30接收位流時(shí),熵解碼模塊150可對(duì)位流執(zhí)行解析操作。作為對(duì)位流執(zhí)行解析 操作的結(jié)果,熵解碼模塊150可從位流提取語(yǔ)法元素。作為執(zhí)行解析操作的部分,熵解碼模 塊150可熵解碼位流中的經(jīng)熵編碼語(yǔ)法元素。預(yù)測(cè)模塊152、反量化模塊154、反變換模塊 156、重構(gòu)模塊158和濾波器模塊159可基于從位流提取的語(yǔ)法元素執(zhí)行產(chǎn)生經(jīng)解碼視頻數(shù) 據(jù)的重構(gòu)操作。
[0115] 如上文所論述,位流可包含一系列NAL單元。位流的NAL單元可包括序列參數(shù)集 NAL單元、圖片參數(shù)集NAL單元、SEI NAL單元等等。作為對(duì)位流執(zhí)行解析操作的部分,熵解 碼模塊150可執(zhí)行解析操作,解析操作提取和熵解碼來(lái)自序列參數(shù)集NAL單元的序列參數(shù) 集、來(lái)自圖片參數(shù)集NAL單元的圖片參數(shù)集、來(lái)自SEI NAL單元的SEI數(shù)據(jù)等等。
[0116] 另外,位流的NAL單元可包括經(jīng)譯碼切片NAL單元。作為對(duì)位流執(zhí)行解析操作的 部分,熵解碼模塊150可執(zhí)行解析操作,解析操作提取和熵解碼來(lái)自經(jīng)譯碼切片NAL單元的 經(jīng)譯碼切片。經(jīng)譯碼切片中的每一者可包括切片標(biāo)頭和切片數(shù)據(jù)。切片標(biāo)頭可含有關(guān)于切 片的語(yǔ)法元素。切片標(biāo)頭中的語(yǔ)法元素可包括識(shí)別與含有切片的圖片相關(guān)聯(lián)的圖片參數(shù)集 的語(yǔ)法元素。熵解碼模塊150可對(duì)經(jīng)譯碼切片標(biāo)頭中的語(yǔ)法元素執(zhí)行熵解碼操作(例如 CABAC解碼操作)以恢復(fù)切片標(biāo)頭。
[0117] 作為提取來(lái)自經(jīng)譯碼切片NAL單元的切片數(shù)據(jù)的部分,熵解碼模塊150可執(zhí)行解 析操作,解析操作提取來(lái)自切片數(shù)據(jù)中的經(jīng)譯碼CU的語(yǔ)法元素。經(jīng)提取語(yǔ)法元素可包括與 變換系數(shù)塊相關(guān)聯(lián)的語(yǔ)法元素。熵解碼模塊150可接著對(duì)語(yǔ)法元素中的一些執(zhí)行CABAC解 碼操作。
[0118] 在熵解碼模塊150對(duì)非分割CU執(zhí)行解析操作之后,視頻解碼器30可對(duì)非分割CU 執(zhí)行重構(gòu)操作。為了對(duì)非分割⑶執(zhí)行重構(gòu)操作,視頻解碼器30可對(duì)⑶的每一 TU執(zhí)行重 構(gòu)操作。通過(guò)針對(duì)⑶的每一 TU執(zhí)行重構(gòu)操作,視頻解碼器30可重構(gòu)與⑶相關(guān)聯(lián)的殘余 視頻塊。
[0119] 作為對(duì)TU執(zhí)行重構(gòu)操作的部分,反量化模塊154可反量化(S卩,解量化)與TU相 關(guān)聯(lián)的變換系數(shù)塊。反量化模塊154可以類似于針對(duì)HEVC提議或由ITU-T H. 264譯碼標(biāo)準(zhǔn) 定義的反量化過(guò)程的方式反量化變換系數(shù)塊。反量化模塊154可使用由視頻編碼器20針 對(duì)變換系數(shù)塊的CU計(jì)算的量化參數(shù)QP來(lái)確定量化程度,且同樣確定供反量化模塊154應(yīng) 用的反量化程度。
[0120] 在反量化模塊154反量化變換系數(shù)塊之后,反變換模塊156可產(chǎn)生用于與變換系 數(shù)塊相關(guān)聯(lián)的TU的殘余視頻塊。反變換模塊156可將反變換應(yīng)用于變換系數(shù)塊以便產(chǎn)生 用于TU的殘余視頻塊。舉例來(lái)說(shuō),反變換模塊156可將反DCT、反整數(shù)變換、反卡忽南-拉 維變換(KLT)、反旋轉(zhuǎn)變換、反方向變換,或另一反變換應(yīng)用于變換系數(shù)塊。
[0121] 在一些實(shí)例中,反變換模塊156可基于來(lái)自視頻編碼器20的信令確定待應(yīng)用于變 換系數(shù)塊的反變換。在這些實(shí)例中,反變換模塊156可基于在與變換系數(shù)塊相關(guān)聯(lián)的樹(shù)塊 的四叉樹(shù)的根節(jié)點(diǎn)處用信號(hào)通知變換來(lái)確定反變換。在其它實(shí)例中,反變換模塊156可從 一或多個(gè)譯碼特性(例如塊大小、譯碼模式或其類似者)推斷反變換。在一些實(shí)例中,反變 換模塊156可應(yīng)用級(jí)聯(lián)反變換。
[0122] 如果⑶的TO是使用幀間預(yù)測(cè)而編碼,則運(yùn)動(dòng)補(bǔ)償模塊162可產(chǎn)生用于PU的候選 者列表。位流可包括識(shí)別選定候選者在PU的候選者列表中的位置的數(shù)據(jù)。在產(chǎn)生用于PU 的候選者列表之后,運(yùn)動(dòng)補(bǔ)償模塊162可基于由PU的運(yùn)動(dòng)信息指示的一或多個(gè)參考?jí)K產(chǎn)生 用于PU的預(yù)測(cè)性視頻塊。PU的參考?jí)K可在與所述PU不同的時(shí)間圖片中。運(yùn)動(dòng)補(bǔ)償模塊 162可基于由PU的候選者列表中的選定候選者指示的運(yùn)動(dòng)信息確定PU的運(yùn)動(dòng)信息。
[0123] 在一些實(shí)例中,運(yùn)動(dòng)補(bǔ)償模塊162可通過(guò)基于內(nèi)插濾波器執(zhí)行內(nèi)插來(lái)改進(jìn)PU的預(yù) 測(cè)性視頻塊。待用于具有子樣本精度的運(yùn)動(dòng)補(bǔ)償?shù)膬?nèi)插濾波器的識(shí)別符可包括于語(yǔ)法元素 中。運(yùn)動(dòng)補(bǔ)償模塊162可在PU的預(yù)測(cè)性視頻塊的產(chǎn)生期間使用由視頻編碼器20使用的相 同內(nèi)插濾波器,以計(jì)算用于參考?jí)K的子整數(shù)樣本的內(nèi)插值。運(yùn)動(dòng)補(bǔ)償模塊162可根據(jù)所接 收語(yǔ)法信息來(lái)確定由視頻編碼器20使用的內(nèi)插濾波器,且使用所述內(nèi)插濾波器來(lái)產(chǎn)生經(jīng) 預(yù)測(cè)視頻塊。
[0124] 如果TO是使用幀內(nèi)預(yù)測(cè)進(jìn)行編碼,則幀內(nèi)預(yù)測(cè)模塊164可執(zhí)行幀內(nèi)預(yù)測(cè)以產(chǎn)生用 于PU的預(yù)測(cè)性視頻塊。舉例來(lái)說(shuō),幀內(nèi)預(yù)測(cè)模塊164可基于位流中的語(yǔ)法元素確定用于PU 的幀內(nèi)預(yù)測(cè)模式。位流可包括幀內(nèi)預(yù)測(cè)模塊164可用以確定PU的幀內(nèi)預(yù)測(cè)模式的語(yǔ)法元 素。
[0125] 在一些例子中,語(yǔ)法元素可指示幀內(nèi)預(yù)測(cè)模塊164將使用另一PU的幀內(nèi)預(yù)測(cè)模式 來(lái)確定當(dāng)前ro的幀內(nèi)預(yù)測(cè)模式。舉例來(lái)說(shuō),當(dāng)前PU的幀內(nèi)預(yù)測(cè)模式可能與相鄰PU的幀內(nèi) 預(yù)測(cè)模式相同。換句話說(shuō),相鄰PU的幀內(nèi)預(yù)測(cè)模式可為用于當(dāng)前ro的最可能模式。因此, 在此實(shí)例中,位流可包括指示PU的幀內(nèi)預(yù)測(cè)模式與相鄰PU的幀內(nèi)預(yù)測(cè)模式相同的小語(yǔ)法 元素。幀內(nèi)預(yù)測(cè)模塊164可接著基于空間相鄰PU的視頻塊而使用幀內(nèi)預(yù)測(cè)模式產(chǎn)生用于 PU的預(yù)測(cè)數(shù)據(jù)(例如,預(yù)測(cè)性樣本)。
[0126] 重構(gòu)模塊158可在適用時(shí)使用與⑶的TU相關(guān)聯(lián)的殘余視頻塊和⑶的PU的預(yù)測(cè) 性視頻塊(即,幀內(nèi)預(yù)測(cè)數(shù)據(jù)或幀間預(yù)測(cè)數(shù)據(jù))以重構(gòu)CU的視頻塊。因此,視頻解碼器30 可基于位流中的語(yǔ)法元素產(chǎn)生預(yù)測(cè)性視頻塊和殘余視頻塊,且可基于預(yù)測(cè)性視頻塊和殘余 視頻塊產(chǎn)生視頻塊。
[0127] 在重構(gòu)模塊158重構(gòu)⑶的視頻塊之后,濾波器模塊159可執(zhí)行一或多個(gè)濾波操作 以改進(jìn)總譯碼質(zhì)量。由濾波器模塊159執(zhí)行的濾波操作的實(shí)例可包括解塊濾波操作、樣本 自適應(yīng)偏移濾波操作和自適應(yīng)環(huán)路濾波操作中的一或多者。在濾波器模塊159執(zhí)行濾波操 作之后,視頻解碼器30可將CU的視頻塊存儲(chǔ)于經(jīng)解碼圖片緩沖器160中。經(jīng)解碼圖片緩 沖器160可提供參考圖片以用于后續(xù)運(yùn)動(dòng)補(bǔ)償、幀內(nèi)預(yù)測(cè)和呈現(xiàn)于顯示裝置(例如圖1的 顯示裝置32)上。舉例來(lái)說(shuō),視頻解碼器30可基于經(jīng)解碼圖片緩沖器160中的視頻塊對(duì)其 它CU的TO執(zhí)行幀內(nèi)預(yù)測(cè)或幀間預(yù)測(cè)操作。
[0128] 圖4說(shuō)明幀間預(yù)測(cè)模塊121的實(shí)例配置的概念圖。幀間預(yù)測(cè)模塊121可根據(jù)多個(gè) 分割模式將當(dāng)前⑶分割為PU。舉例來(lái)說(shuō),幀間預(yù)測(cè)模塊121可根據(jù)2NX2N、2NXN、NX2N 和NXN分割模式將當(dāng)前CU分割為PU。
[0129] 幀間預(yù)測(cè)模塊121可對(duì)PU中的每一者執(zhí)行整數(shù)運(yùn)動(dòng)估計(jì)(ME)且接著執(zhí)行分?jǐn)?shù) 運(yùn)動(dòng)估計(jì)(FME)。當(dāng)幀間預(yù)測(cè)模塊121對(duì)PU執(zhí)行ME時(shí),幀間預(yù)測(cè)模塊121可在一或多個(gè) 參考圖片中搜索用于PU的參考?jí)K。在找到用于TO的參考?jí)K之后,幀間預(yù)測(cè)模塊121可產(chǎn)生 以整數(shù)精度指示PU與用于TO的參考?jí)K之間的空間位移的運(yùn)動(dòng)向量。當(dāng)幀間預(yù)測(cè)模塊121 對(duì)PU執(zhí)行FME時(shí),幀間預(yù)測(cè)模塊121可改進(jìn)通過(guò)對(duì)PU執(zhí)行ME而產(chǎn)生的運(yùn)動(dòng)向量。通過(guò)對(duì) PU執(zhí)行FME而產(chǎn)生的運(yùn)動(dòng)向量可具有子整數(shù)精度(例如,1/2像素精度、1/4像素精度等)。 在產(chǎn)生用于PU的運(yùn)動(dòng)向量之后,幀間預(yù)測(cè)模塊121可使用用于PU的運(yùn)動(dòng)向量以產(chǎn)生用于 PU的預(yù)測(cè)性視頻塊。
[0130] 在幀間預(yù)測(cè)模塊121使用AMVP模式用信號(hào)通知PU的運(yùn)動(dòng)信息的一些實(shí)例中,幀 間預(yù)測(cè)模塊121可產(chǎn)生用于PU的候選者列表。候選者列表可包括一或多個(gè)原始候選者和 從原始候選者導(dǎo)出的一或多個(gè)額外候選者。在產(chǎn)生用于PU的候選者列表之后,幀間預(yù)測(cè)模 塊121可從候選者列表選擇候選者且產(chǎn)生用于PU的運(yùn)動(dòng)向量差(MVD)。用于PU的MVD可 指示由選定候選者指示的運(yùn)動(dòng)向量與使用頂E和FME針對(duì)PU產(chǎn)生的運(yùn)動(dòng)向量之間的差。在 這些實(shí)例中,幀間預(yù)測(cè)模塊121可輸出識(shí)別選定候選者在候選者列表中的位置的候選者索 弓丨。幀間預(yù)測(cè)模塊121還可輸出TO的MVD。下文詳細(xì)描述的圖6說(shuō)明實(shí)例AMVP操作。
[0131] 除了通過(guò)對(duì)TO執(zhí)行ME和FME來(lái)產(chǎn)生用于PU的運(yùn)動(dòng)信息的外,幀間預(yù)測(cè)模塊121 還可對(duì)TO中的每一者執(zhí)行合并操作。當(dāng)幀間預(yù)測(cè)模塊121對(duì)PU執(zhí)行合并操作時(shí),幀間預(yù) 測(cè)模塊121可產(chǎn)生用于TO的候選者列表。用于PU的候選者列表可包括一或多個(gè)原始候選 者和從原始候選者導(dǎo)出的一或多個(gè)額外候選者。候選者列表中的原始候選者可包括一或多 個(gè)空間候選者和時(shí)間候選者??臻g候選者可指示當(dāng)前圖片中的其它PU的運(yùn)動(dòng)信息。時(shí)間 候選者可基于不同于當(dāng)前圖片的圖片的并置的PU的運(yùn)動(dòng)信息。時(shí)間候選者還可稱作時(shí)間 運(yùn)動(dòng)向量預(yù)測(cè)子(TMVP)。
[0132] 在產(chǎn)生候選者列表之后,幀間預(yù)測(cè)模塊121可從候選者列表選擇候選者中的一 者。幀間預(yù)測(cè)模塊121可(例如)從候選者列表選擇候選者以實(shí)現(xiàn)所要經(jīng)重構(gòu)視頻質(zhì)量和 /或壓縮。幀間預(yù)測(cè)模塊121可接著基于由PU的運(yùn)動(dòng)信息指示的參考?jí)K產(chǎn)生用于PU的預(yù) 測(cè)性視頻塊。在合并模式中,PU的運(yùn)動(dòng)信息可與由選定候選者指示的運(yùn)動(dòng)信息相同。下文 描述的圖5說(shuō)明實(shí)例合并操作的流程圖。
[0133] 在基于ME和FME產(chǎn)生用于PU的預(yù)測(cè)性視頻塊之后和在基于合并操作產(chǎn)生用于 PU的預(yù)測(cè)性視頻塊之后,幀間預(yù)測(cè)模塊121可選擇通過(guò)FME操作產(chǎn)生的預(yù)測(cè)性視頻塊或通 過(guò)合并操作產(chǎn)生的預(yù)測(cè)性視頻塊。在一些實(shí)例中,幀間預(yù)測(cè)模塊121可基于通過(guò)FME操作 產(chǎn)生的預(yù)測(cè)性視頻塊和通過(guò)合并操作產(chǎn)生的預(yù)測(cè)性視頻塊的速率/失真分析來(lái)選擇用于 PU的預(yù)測(cè)性視頻塊。
[0134] 在幀間預(yù)測(cè)模塊121已選擇通過(guò)根據(jù)分割模式中的每一者分割當(dāng)前CU而產(chǎn)生的 PU的預(yù)測(cè)性視頻塊之后,幀間預(yù)測(cè)模塊121可選擇用于當(dāng)前CU的分割模式。在一些實(shí)例 中,幀間預(yù)測(cè)模塊121可基于通過(guò)根據(jù)分割模式中的每一者分割當(dāng)前CU而產(chǎn)生的PU的選 定預(yù)測(cè)性視頻塊的速率/失真分析來(lái)選擇用于當(dāng)前CU的分割模式。幀間預(yù)測(cè)模塊121可 將與屬于選定分割模式的PU相關(guān)聯(lián)的預(yù)測(cè)性視頻塊輸出到殘差產(chǎn)生模塊102。幀間預(yù)測(cè)模 塊121可將指示屬于選定分割模式的TO的運(yùn)動(dòng)信息的語(yǔ)法元素輸出到熵編碼模塊116。
[0135] 在圖4的實(shí)例中,幀間預(yù)測(cè)模塊121包括ME模塊180A到180N(統(tǒng)稱為"ME模 塊180")、FME模塊182A到182N(統(tǒng)稱為"FME模塊182")、合并模塊184A到184N(統(tǒng)稱 為"合并模塊184")、PU模式?jīng)Q策模塊186A到186N(統(tǒng)稱為"PU模式?jīng)Q策模塊186")和 CU模式?jīng)Q策模塊188。
[0136] ME模塊180、FME模塊182和合并模塊184可對(duì)當(dāng)前⑶的PU執(zhí)行ME操作、FME 操作和合并操作。圖4的實(shí)例將幀間預(yù)測(cè)模塊121說(shuō)明為包括用于CU的每一分割模式的 每一 TO的單獨(dú)IME模塊180、FME模塊182和合并模塊184。在其它實(shí)例中,幀間預(yù)測(cè)模塊 121不包括用于⑶的每一分割模式的每一 PU的單獨(dú)ME模塊180、FME模塊182和合并模 塊 184。
[0137] 如圖4的實(shí)例中所說(shuō)明,ME模塊180A、FME模塊182A和合并模塊184A可對(duì)通過(guò) 根據(jù)2NX 2N分割模式分割CU而產(chǎn)生的PU執(zhí)行ME操作、FME操作和合并操作。PU模式?jīng)Q 策模塊186A可選擇由ME模塊180A、FME模塊182A和合并模塊184A產(chǎn)生的預(yù)測(cè)性視頻塊 中的一者。
[0138] ME模塊180B、FME模塊182B和合并模塊184B可對(duì)通過(guò)根據(jù)NX 2N分割模式分 割⑶而產(chǎn)生的左PU執(zhí)行ME操作、FME操作和合并操作。PU模式?jīng)Q策模塊186B可選擇由 ME模塊180B、FME模塊182B和合并模塊184B產(chǎn)生的預(yù)測(cè)性視頻塊中的一者。
[0139] ME模塊180C、FME模塊182C和合并模塊184C可對(duì)通過(guò)根據(jù)NX 2N分割模式分 割CU而產(chǎn)生的右PU執(zhí)行ME操作、FME操作和合并操作。PU模式?jīng)Q策模塊186C可選擇由 ME模塊180C、FME模塊182C和合并模塊184C產(chǎn)生的預(yù)測(cè)性視頻塊中的一者。
[0140] ME模塊180N、FME模塊182N和合并模塊184可對(duì)通過(guò)根據(jù)NXN分割模式分割 CU而產(chǎn)生的右下PU執(zhí)行ME操作、FME操作和合并操作。PU模式?jīng)Q策模塊186N可選擇由 ME模塊180N、FME模塊182N和合并模塊184N產(chǎn)生的預(yù)測(cè)性視頻塊中的一者。
[0141] PU模式?jīng)Q策模塊186可經(jīng)配置以選擇產(chǎn)生所要經(jīng)重構(gòu)視頻質(zhì)量和/或所要壓縮比 的預(yù)測(cè)性視頻塊。PU模式?jīng)Q策模塊可(例如)基于多個(gè)可能預(yù)測(cè)性視頻塊的速率-失真 分析選擇預(yù)測(cè)性視頻塊,且選擇針對(duì)給定譯碼情形提供最佳速率-失真取舍的預(yù)測(cè)性視頻 塊。作為一實(shí)例,對(duì)于帶寬受限的應(yīng)用,PU模式?jīng)Q策模塊186可偏向選擇增加壓縮比的預(yù) 測(cè)性視頻塊,而對(duì)于其它應(yīng)用,PU模式?jīng)Q策模塊186可偏向選擇增加經(jīng)重構(gòu)視頻質(zhì)量的預(yù) 測(cè)性視頻塊。在PU模式?jīng)Q策模塊186選擇用于當(dāng)前CU的PU的預(yù)測(cè)性視頻塊之后,CU模 式?jīng)Q策模塊188選擇用于當(dāng)前CU的分割模式且輸出屬于選定分割模式的PU的預(yù)測(cè)性視頻 塊和運(yùn)動(dòng)信息。
[0142] 圖5說(shuō)明實(shí)例合并操作200的流程圖。視頻編碼器(例如視頻編碼器20)可執(zhí)行 合并操作200。在其它實(shí)例中,視頻編碼器可執(zhí)行不同于合并操作200的合并操作。舉例來(lái) 說(shuō),在其它實(shí)例中,視頻編碼器可執(zhí)行合并操作,其中視頻編碼器執(zhí)行比合并操作200多、 少的步驟或與合并操作200不同的步驟。在其它實(shí)例中,視頻編碼器可以不同次序或并行 地執(zhí)行合并操作200的步驟。編碼器還可對(duì)以跳躍模式編碼的PU執(zhí)行合并操作200。
[0143] 在視頻編碼器開(kāi)始合并操作200之后,視頻編碼器可產(chǎn)生用于當(dāng)前PU的候選者列 表(202)。視頻編碼器可以各種方式產(chǎn)生用于當(dāng)前PU的候選者列表。舉例來(lái)說(shuō),視頻編碼 器可根據(jù)下文關(guān)于圖8到圖13B描述的實(shí)例技術(shù)中的一者產(chǎn)生用于當(dāng)前PU的候選者列表。
[0144] 如上文簡(jiǎn)短地論述,用于當(dāng)前TO的候選者列表可包括時(shí)間候選者。時(shí)間候選者可 指示并置的PU的運(yùn)動(dòng)信息。并置的TO可在空間上與當(dāng)前PU并置,但在參考圖片而非當(dāng)前 圖片中。本發(fā)明可將包括并置的PU的參考圖片稱作相關(guān)參考圖片。本發(fā)明可將相關(guān)參考 圖片的參考圖片索引稱作相關(guān)參考圖片索引。如上文所描述,當(dāng)前圖片可與一或多個(gè)參考 圖片列表(例如,列表〇、列表1等)相關(guān)聯(lián)。參考圖片索引可通過(guò)指不在參考圖片列表的 一者中參考圖片的位置來(lái)指示參考圖片。在一些實(shí)例中,當(dāng)前圖片可與組合參考圖片列表 相關(guān)聯(lián)。
[0145] 在一些常規(guī)視頻編碼器中,相關(guān)參考圖片索引為涵蓋與當(dāng)前TO相關(guān)聯(lián)的參考索 引源位置的PU的參考圖片索引。在這些常規(guī)視頻編碼器中,與當(dāng)前ro相關(guān)聯(lián)的參考索引 源位置緊接于當(dāng)前PU左方或緊接于當(dāng)前ro上方。在本發(fā)明中,如果與PU相關(guān)聯(lián)的視頻塊 包括特定位置,則PU可"涵蓋"所述特定位置。在這些常規(guī)視頻編碼器中,如果參考索引源 位置不可用,則視頻編碼器可使用零的參考圖片索引。
[0146] 然而,可存在以下例子:與當(dāng)前TO相關(guān)聯(lián)的參考索引源位置在當(dāng)前CU內(nèi)。在這些 例子中,如果PU在當(dāng)前⑶上方或左方,則涵蓋與當(dāng)前PU相關(guān)聯(lián)的參考索引源位置的PU可 被視為可用。然而,視頻編碼器可需要存取當(dāng)前CU的另一 PU的運(yùn)動(dòng)信息以便確定含有并 置的PU的參考圖片。因此,這些視頻編碼器可使用屬于當(dāng)前CU的PU的運(yùn)動(dòng)信息(S卩,參 考圖片索引)以產(chǎn)生用于當(dāng)前PU的時(shí)間候選者。換句話說(shuō),這些視頻編碼器可使用屬于當(dāng) 前CU的PU的運(yùn)動(dòng)信息產(chǎn)生時(shí)間候選者。因此,視頻編碼器可能不能并行地產(chǎn)生用于當(dāng)前 PU和涵蓋與當(dāng)前PU相關(guān)聯(lián)的參考索引源位置的PU的候選者列表。
[0147] 根據(jù)本發(fā)明的技術(shù),視頻編碼器可在不參考任何其它TO的參考圖片索引的情況 下顯式地設(shè)定相關(guān)參考圖片索引。此可使得視頻編碼器能夠并行地產(chǎn)生用于當(dāng)前PU和當(dāng) 前CU的其它PU的候選者列表。因?yàn)橐曨l編碼器顯式地設(shè)定相關(guān)參考圖片索引,所以相關(guān) 參考圖片索引不基于當(dāng)前CU的任何其它PU的運(yùn)動(dòng)信息。在視頻編碼器顯式地設(shè)定相關(guān)參 考圖片索引的一些實(shí)例中,視頻編碼器可始終將相關(guān)參考圖片索引設(shè)定為固定的預(yù)定義預(yù) 設(shè)參考圖片索引(例如0)。以此方式,視頻編碼器可基于由預(yù)設(shè)參考圖片索引指示的參考 幀中的并置的PU的運(yùn)動(dòng)信息產(chǎn)生時(shí)間候選者,且可將時(shí)間候選者包括于當(dāng)前CU的候選者 列表中。
[0148] 在視頻編碼器顯式地設(shè)定相關(guān)參考圖片索引的實(shí)例中,視頻編碼器可顯式地在語(yǔ) 法結(jié)構(gòu)(例如圖片標(biāo)頭、切片標(biāo)頭、APS或另一語(yǔ)法結(jié)構(gòu))中用信號(hào)通知相關(guān)參考圖片索引。 在此實(shí)例中,視頻編碼器可用信號(hào)通知用于每一 IXU、⑶、PU、TU或其它類型的子塊的相關(guān) 參考圖片索引。舉例來(lái)說(shuō),視頻編碼器可用信號(hào)通知:用于CU的每一 PU的相關(guān)參考圖片索 引等于"1"。
[0149] 在一些實(shí)例(例如下文參看圖9A到圖9F和圖10A到圖10F描述的實(shí)例)中,相 關(guān)參考圖片索引可經(jīng)隱式地而非顯式地設(shè)定。在這些實(shí)例中,視頻編碼器可使用由涵蓋當(dāng) 前CU外部的位置的PU的參考圖片索引指示的參考圖片中的PU的運(yùn)動(dòng)信息產(chǎn)生用于當(dāng)前 CU的PU的候選者列表中的每一時(shí)間候選者,即使這些位置并不嚴(yán)格地鄰近當(dāng)前PU也如此。
[0150] 在產(chǎn)生用于當(dāng)前TO的候選者列表之后,視頻編碼器可產(chǎn)生與候選者列表中的候 選者相關(guān)聯(lián)的預(yù)測(cè)性視頻塊(204)。視頻編碼器可通過(guò)基于所指示候選者的運(yùn)動(dòng)信息確定 當(dāng)前PU的運(yùn)動(dòng)信息和接著基于由當(dāng)前PU的運(yùn)動(dòng)信息指示的一或多個(gè)參考?jí)K產(chǎn)生預(yù)測(cè)性視 頻塊來(lái)產(chǎn)生與候選者相關(guān)聯(lián)的預(yù)測(cè)性視頻塊。視頻編碼器可接著從候選者列表選擇候選者 中的一者(206)。視頻編碼器可以各種方式選擇候選者。舉例來(lái)說(shuō),視頻編碼器可基于對(duì)與 候選者相關(guān)聯(lián)的預(yù)測(cè)性視頻塊的每一者的速率/失真分析來(lái)選擇候選者中的一者。
[0151] 在選擇候選者之后,視頻編碼器可輸出候選者索引(208)。候選者索引可指示在候 選者列表中選定候選者的位置。在一些實(shí)例中,候選者索引可表示為"mergejdx"。
[0152] 圖6說(shuō)明實(shí)例AMVP操作210的流程圖。視頻編碼器(例如視頻編碼器20)可執(zhí) 行AMVP操作210。圖6僅為AMVP操作的一實(shí)例。
[0153] 在視頻編碼器開(kāi)始AMVP操作210之后,視頻編碼器可產(chǎn)生用于當(dāng)前PU的一或多 個(gè)運(yùn)動(dòng)向量(211)。視頻編碼器可執(zhí)行整數(shù)運(yùn)動(dòng)估計(jì)和分?jǐn)?shù)運(yùn)動(dòng)估計(jì)以產(chǎn)生用于當(dāng)前TO的 運(yùn)動(dòng)向量。如上文所描述,當(dāng)前圖片可與兩個(gè)參考圖片列表(列表〇和列表1)相關(guān)聯(lián)。如 果當(dāng)前PU經(jīng)單向預(yù)測(cè),則視頻編碼器可產(chǎn)生用于當(dāng)前PU的列表0運(yùn)動(dòng)向量或列表1運(yùn)動(dòng) 向量。列表0運(yùn)動(dòng)向量可指示當(dāng)前PU的視頻塊與列表0中的參考圖片中的參考?jí)K之間的 空間位移。列表1運(yùn)動(dòng)向量可指不當(dāng)如PU的視頻塊與列表1中的參考圖片中的參考?jí)K之 間的空間位移。如果當(dāng)前PU經(jīng)雙向預(yù)測(cè),則視頻編碼器可產(chǎn)生用于當(dāng)前PU的列表0運(yùn)動(dòng) 向量和列表1運(yùn)動(dòng)向量。
[0154] 在產(chǎn)生用于當(dāng)前TO的一或多個(gè)運(yùn)動(dòng)向量之后,視頻編碼器可產(chǎn)生用于當(dāng)前PU的 預(yù)測(cè)性視頻塊(212)。視頻編碼器可基于由用于當(dāng)前PU的一或多個(gè)運(yùn)動(dòng)向量指示的一或多 個(gè)參考?jí)K產(chǎn)生用于當(dāng)前PU的預(yù)測(cè)性視頻塊。
[0155] 另外,視頻編碼器可產(chǎn)生用于當(dāng)前TO的候選者列表(213)。視頻譯碼器可以各種 方式產(chǎn)生用于當(dāng)前PU的候選者列表。舉例來(lái)說(shuō),視頻編碼器可根據(jù)下文關(guān)于圖8到圖13B 描述的實(shí)例技術(shù)中的一或多者產(chǎn)生用于當(dāng)前PU的候選者列表。在一些實(shí)例中,當(dāng)視頻編碼 器在AMVP操作210中產(chǎn)生候選者列表時(shí),候選者列表可限于兩個(gè)候選者。相比而言,當(dāng)視 頻編碼器在合并操作中產(chǎn)生候選者列表時(shí),候選者列表可包括更多候選者(例如,五個(gè)候 選者)。
[0156] 在產(chǎn)生用于當(dāng)前TO的候選者列表之后,視頻編碼器可產(chǎn)生用于候選者列表中的 每一候選者的一或多個(gè)運(yùn)動(dòng)向量差(MVD) (214)。視頻編碼器可通過(guò)確定由候選者指示的運(yùn) 動(dòng)向量與當(dāng)前PU的對(duì)應(yīng)運(yùn)動(dòng)向量之間的差來(lái)產(chǎn)生用于候選者的運(yùn)動(dòng)向量差。
[0157] 如果當(dāng)前TO經(jīng)單向預(yù)測(cè),則視頻編碼器可產(chǎn)生用于每一候選者的單一 MVD。如果 當(dāng)前PU經(jīng)雙向預(yù)測(cè),則視頻編碼器可產(chǎn)生用于每一候選者的兩個(gè)MVD。第一 MVD可指示候 選者的運(yùn)動(dòng)向量與當(dāng)前PU的列表0運(yùn)動(dòng)向量之間的差。第二MVD可指示候選者的運(yùn)動(dòng)向 量與當(dāng)前PU的列表1運(yùn)動(dòng)向量之間的差。
[0158] 視頻編碼器可從候選者列表選擇候選者中的一或多者(215)。視頻編碼器可以 各種方式選擇一或多個(gè)候選者。舉例來(lái)說(shuō),視頻編碼器可選擇具有最緊密地匹配待編碼的 運(yùn)動(dòng)向量的相關(guān)聯(lián)運(yùn)動(dòng)向量的候選者,此可減少表示用于候選者的運(yùn)動(dòng)向量差所需的位數(shù) 目。
[0159] 在選擇一或多個(gè)候選者之后,視頻編碼器可輸出用于當(dāng)前TO的一或多個(gè)參考圖 片索引、一或多個(gè)候選者索引,和用于一或多個(gè)選定候選者的一或多個(gè)運(yùn)動(dòng)向量差(216)。
[0160] 在當(dāng)前圖片與兩個(gè)參考圖片列表(列表0和列表1)相關(guān)聯(lián)且當(dāng)前ro經(jīng)單向預(yù)測(cè) 的例子中,視頻編碼器可輸出用于列表〇的參考圖片索引("ref_id x_10")或用于列表1 的參考圖片索引("ref_idX_ll")。視頻編碼器還可輸出指示用于當(dāng)前PU的列表0運(yùn)動(dòng) 向量的選定候選者在候選者列表中的位置的候選者索引("mvp_10_flag")?;蛘?,視頻編 碼器可輸出指示用于當(dāng)前PU的列表1運(yùn)動(dòng)向量的選定候選者在候選者列表中的位置的候 選者索引("mvp_ll_flag")。視頻編碼器還可輸出用于當(dāng)前PU的列表0運(yùn)動(dòng)向量或列表 1運(yùn)動(dòng)向量的MVD。
[0161] 在當(dāng)前圖片與兩個(gè)參考圖片列表(列表0和列表1)相關(guān)聯(lián)且當(dāng)前TO經(jīng)雙向預(yù)測(cè) 的例子中,視頻編碼器可輸出用于列表〇的參考圖片索引("ref_id X_10")和用于列表1 的參考圖片索引("ref_idX_ll")。視頻編碼器還可輸出指示用于當(dāng)前PU的列表0運(yùn)動(dòng) 向量的選定候選者在候選者列表中的位置的候選者索引("mvp_10_flag")。另外,視頻編 碼器可輸出指示用于當(dāng)前PU的列表1運(yùn)動(dòng)向量的選定候選者在候選者列表中的位置的候 選者索引("mvp_ll_flag")。視頻編碼器還可輸出用于當(dāng)前PU的列表0運(yùn)動(dòng)向量的MVD 和用于當(dāng)前TO的列表1運(yùn)動(dòng)向量的MVD。
[0162] 圖7說(shuō)明由視頻解碼器(例如視頻解碼器30)執(zhí)行的實(shí)例運(yùn)動(dòng)補(bǔ)償操作220的流 程圖。圖7僅為一實(shí)例運(yùn)動(dòng)補(bǔ)償操作。
[0163] 當(dāng)視頻解碼器執(zhí)行運(yùn)動(dòng)補(bǔ)償操作220時(shí),視頻解碼器可接收用于當(dāng)前PU的選定候 選者的指示(222)。舉例來(lái)說(shuō),視頻解碼器可接收指示選定候選者在當(dāng)前PU的候選者列表 內(nèi)的位置的候選者索引。
[0164] 如果當(dāng)前TO的運(yùn)動(dòng)信息是使用AMVP模式進(jìn)行編碼且當(dāng)前PU經(jīng)雙向預(yù)測(cè),則視頻 解碼器可接收第一候選者索引和第二候選者索引。第一候選者索引指示用于當(dāng)前PU的列 表0運(yùn)動(dòng)向量的選定候選者在候選者列表中的位置。第二候選者索引指示用于當(dāng)前PU的 列表1運(yùn)動(dòng)向量的選定候選者在候選者列表中的位置。在一些實(shí)例中,單一語(yǔ)法兀素可用 以識(shí)別兩個(gè)候選者索引。
[0165] 另外,視頻解碼器可產(chǎn)生用于當(dāng)前TO的候選者列表(224)。視頻解碼器可以各種 方式產(chǎn)生用于當(dāng)前PU的此候選者列表。舉例來(lái)說(shuō),視頻解碼器可使用下文參看圖8到圖15 描述的技術(shù)來(lái)產(chǎn)生用于當(dāng)前PU的候選者列表。當(dāng)視頻解碼器產(chǎn)生用于候選者列表的時(shí)間 候選者時(shí),視頻解碼器可顯式地或隱式地設(shè)定識(shí)別包括并置的PU的參考圖片的參考圖片 索引,如上文關(guān)于圖5所描述。
[0166] 在產(chǎn)生用于當(dāng)前TO的候選者列表之后,視頻解碼器可基于由用于當(dāng)前PU的候選 者列表中的一或多個(gè)選定候選者指示的運(yùn)動(dòng)信息確定當(dāng)前PU的運(yùn)動(dòng)信息(225)。舉例來(lái) 說(shuō),如果當(dāng)前PU的運(yùn)動(dòng)信息是使用合并模式而編碼,則當(dāng)前TO的運(yùn)動(dòng)信息可與由選定候 選者指示的運(yùn)動(dòng)信息相同。如果當(dāng)前PU的運(yùn)動(dòng)信息是使用AMVP模式而編碼,則視頻解碼 器可使用由所述或所述選定候選者指示的一或多個(gè)運(yùn)動(dòng)向量和位流中指示的一或多個(gè)MVD 來(lái)重構(gòu)當(dāng)前PU的一或多個(gè)運(yùn)動(dòng)向量。當(dāng)前TO的參考圖片索引和預(yù)測(cè)方向指示符可與所述 一或多個(gè)選定候選者的參考圖片索引和預(yù)測(cè)方向指示符相同。在確定當(dāng)前PU的運(yùn)動(dòng)信息 之后,視頻解碼器可基于由當(dāng)前PU的運(yùn)動(dòng)信息指示的一或多個(gè)參考?jí)K產(chǎn)生用于當(dāng)前TO的 預(yù)測(cè)性視頻塊(226)。
[0167] 相對(duì)于當(dāng)前視頻塊的位置(在AMVP中,加上MVD)使用相鄰塊的運(yùn)動(dòng)信息。換句 話說(shuō),相鄰塊的MV指代相對(duì)于相鄰塊的運(yùn)動(dòng)。當(dāng)前塊的MV指代相對(duì)于當(dāng)前塊的運(yùn)動(dòng)。因 此如果當(dāng)前塊采用相鄰塊運(yùn)動(dòng)信息,則所采用MV定義相對(duì)于當(dāng)前塊(而非所采用的MV所 源于的相鄰塊)的運(yùn)動(dòng)。
[0168] 圖8說(shuō)明⑶250和與⑶250相關(guān)聯(lián)的實(shí)例候選者位置252A到252E的概念圖。本 發(fā)明可將候選者位置252A到252E統(tǒng)稱為候選者位置252。候選者位置252表示與⑶250 在同一圖片中的空間候選者。候選者位置252A定位于⑶250左方。候選者位置252B定位 于⑶250上方。候選者位置252C定位于⑶250右上方。候選者位置252D定位于⑶250左 下方。候選者位置252E定位于⑶250左上方。圖8將用以提供幀間預(yù)測(cè)模塊121和運(yùn)動(dòng) 補(bǔ)償模塊162可產(chǎn)生候選者列表的方式的實(shí)例。下文將參考幀間預(yù)測(cè)模塊121解釋實(shí)例, 但應(yīng)理解運(yùn)動(dòng)補(bǔ)償模塊162可實(shí)施相同技術(shù),且因此產(chǎn)生相同候選者列表。
[0169] 圖9說(shuō)明用于根據(jù)本發(fā)明的技術(shù)重構(gòu)候選者列表的實(shí)例方法的流程圖。將參考包 括五個(gè)候選者的列表描述圖9的技術(shù),但本文中所描述的技術(shù)還可與具有其它大小的列表 一起使用。五個(gè)候選者可各自具有合并索引(例如,〇到4)。將參考一般視頻譯碼器描述 圖9的技術(shù)。一般視頻譯碼器可(例如)為視頻編碼器(例如視頻編碼器20)或視頻解碼 器(例如視頻解碼器30)。
[0170] 為了根據(jù)圖9的實(shí)例重構(gòu)候選者列表,視頻譯碼器首先考慮四個(gè)空間候選者 (902)。四個(gè)空間候選者可(例如)包括候選者位置252A、252B、252C和252D。四個(gè)空間候 選者對(duì)應(yīng)于與當(dāng)前CU(例如,CU250)在同一圖片中的四個(gè)PU的運(yùn)動(dòng)信息。視頻譯碼器可以 特定次序考慮列表中的四個(gè)空間候選者。舉例來(lái)說(shuō),候選者位置252A可被第一個(gè)考慮。如 果候選者位置252A可用,則候選者位置252A可指派到合并索引0。如果候選者位置252A 不可用,則視頻譯碼器可不將候選者位置252A包括于候選者列表中。候選者位置可出于各 種理由而不可用。舉例來(lái)說(shuō),如果候選者位置不在當(dāng)前圖片內(nèi),則候選者位置可能不可用。 在另一實(shí)例中,如果候選者位置經(jīng)幀內(nèi)預(yù)測(cè),則候選者位置可能不可用。在另一實(shí)例中,如 果候選者位置在與當(dāng)前CU不同的切片中,則候選者位置可能不可用。
[0171] 在考慮候選者位置252A之后,視頻譯碼器可接下來(lái)考慮候選者位置252B。如果候 選者位置252B可用且不同于候選者位置252A,則視頻譯碼器可將候選者位置252B添加到 候選者列表。在此特定上下文中,術(shù)語(yǔ)"相同"和"不同"指代與候選者位置相關(guān)聯(lián)的運(yùn)動(dòng) 信息。因此,如果兩個(gè)候選者位置具有相同運(yùn)動(dòng)信息則被視為相同,且如果其具有不同運(yùn)動(dòng) 信息則被視為不同。如果候選者位置252A不可用,則視頻譯碼器可將候選者位置252B指 派到合并索引0。如果候選者位置252A可用,則視頻譯碼器可將候選者位置252指派到合 并索引1。如果候選者位置252B不可用或與候選者位置252A相同,則視頻譯碼器跳過(guò)候選 者位置252B且不將其包括于候選者列表中。
[0172] 候選者位置252C由視頻譯碼器類似地考慮以供包括于列表中。如果候選者位置 252C可用且不與候選者位置252B和252A相同,則視頻譯碼器將候選者位置252C指派到下 一可用合并索引。如果候選者位置252C不可用或并非不同于候選者位置252A和252B中 的至少一者,則視頻譯碼器不將候選者位置252C包括于候選者列表中。接下來(lái),視頻譯碼 器考慮候選者位置252D。如果候選者位置252D可用且不與候選者位置252A、252B和252C 相同,則視頻譯碼器將候選者位置252D指派到下一可用合并索引。如果候選者位置252D不 可用或并非不同于候選者位置252A、252B和252C中的至少一者,則視頻譯碼器不將候選者 位置252D包括于候選者列表中。盡管以上實(shí)例大體上描述個(gè)別地考慮候選者252A到252D 以供包括于候選者列表中,但在一些實(shí)施方案中,可首先將所有候選者252A到252D添加到 候選者列表,稍后從候選者列表移除重復(fù)。
[0173] 在視頻譯碼器考慮前四個(gè)空間候選者之后,候選者列表可包括四個(gè)空間候選者或 列表可包括少于四個(gè)空間候選者。如果列表包括四個(gè)空間候選者(904,是),則視頻譯碼器 考慮時(shí)間候選者(906)。時(shí)間候選者可對(duì)應(yīng)于不同于當(dāng)前圖片的圖片的并置的PU的運(yùn)動(dòng)信 息。如果時(shí)間候選者可用且不同于前四個(gè)空間候選者,則視頻譯碼器將時(shí)間候選者指派到 合并索引4。如果時(shí)間候選者不可用或與前四個(gè)空間候選者中的一者相同,則視頻譯碼器不 將所述時(shí)間候選者包括于候選者列表中。因此,在視頻譯碼器考慮時(shí)間候選者(906)之后, 候選者列表可包括五個(gè)候選者(框902處考慮的前四個(gè)空間候選者和框904處考慮的時(shí)間 候選者)或可包括四個(gè)候選者(框902處考慮的前四個(gè)空間候選者)。如果候選者列表包 括五個(gè)候選者(908,是),則視頻譯碼器完成建構(gòu)列表。
[0174] 如果候選者列表包括四個(gè)候選者(908,否),則視頻譯碼器可考慮第五空間候選 者(910)。第五空間候選者可(例如)對(duì)應(yīng)于候選者位置252E。如果位置252E處的候選 者可用且不同于位置252A、252B、252C和252D處的候選者,則視頻譯碼器可將第五空間候 選者添加到候選者列表,第五空間候選者經(jīng)指派到合并索引4。如果位置252E處的候選者 不可用或并非不同于候選者位置252A、252B、252C和252D處的候選者,則視頻譯碼器可不 將位置252處的候選者包括于候選者列表中。因此在考慮第五空間候選者(910)之后,列 表可包括五個(gè)候選者(框902處考慮的前四個(gè)空間候選者和框910處考慮的第五空間候選 者)或可包括四個(gè)候選者(框902處考慮的前四個(gè)空間候選者)。
[0175] 如果候選者列表包括五個(gè)候選者(912,是),則視頻譯碼器完成產(chǎn)生候選者列表。 如果候選者列表包括四個(gè)候選者(912,否),則視頻譯碼器添加人工產(chǎn)生的候選者(914)直 到列表包括五個(gè)候選者(916,是)為止。
[0176] 如果在視頻譯碼器考慮前四個(gè)空間候選者之后,列表包括少于四個(gè)空間候選者 (904,否),則視頻譯碼器可考慮第五空間候選者(918)。第五空間候選者可(例如)對(duì)應(yīng) 于候選者位置252E。如果位置252E處的候選者可用且不同于已包括于候選者列表中的候 選者,則視頻譯碼器可將第五空間候選者添加到候選者列表,第五空間候選者經(jīng)指派到下 一可用合并索引。如果位置252E處的候選者不可用或并非不同于已包括于候選者列表中 的候選者中的一者,則視頻譯碼器可不將位置252E處的候選者包括于候選者列表中。視頻 譯碼器可接著考慮時(shí)間候選者(920)。如果時(shí)間候選者可用且不同于已包括于候選者列表 中的候選者,則視頻譯碼器可將所述時(shí)間候選者添加到候選者列表,所述時(shí)間候選者經(jīng)指 派到下一可用合并索引。如果時(shí)間候選者不可用或并非不同于已包括于候選者列表中的候 選者中的一者,則視頻譯碼器可不將所述時(shí)間候選者包括于候選者列表中。
[0177] 如果在考慮第五空間候選者(框918)和時(shí)間候選者(框920)之后,候選者列表 包括五個(gè)候選者(922,是),則視頻譯碼器完成產(chǎn)生候選者列表。如果候選者列表包括少于 五個(gè)候選者(922,否),則視頻譯碼器添加人工產(chǎn)生的候選者(914)直到列表包括五個(gè)候選 者(916,是)為止。
[0178] 根據(jù)本發(fā)明的技術(shù),可在空間候選者和時(shí)間候選者之后人工產(chǎn)生額外合并候選者 以使合并候選者列表的大小固定為合并候選者的指定數(shù)目(例如上文圖9的實(shí)例中的五)。 額外合并候選者可包括(例如)經(jīng)組合雙向預(yù)測(cè)性合并候選者(候選者1)、經(jīng)縮放雙向預(yù) 測(cè)性合并候選者(候選者2),和零向量合并/AMVP候選者(候選者3)。
[0179] 圖10展示經(jīng)組合合并候選者的實(shí)例。經(jīng)組合雙向預(yù)測(cè)性合并候選者可通過(guò)組合 原始合并候選者而產(chǎn)生。具體來(lái)說(shuō),原始候選者中的兩個(gè)候選者(其具有mvLO和refldxLO 或mvLl和refldxLl)可用以產(chǎn)生雙向預(yù)測(cè)性合并候選者。圖10展示經(jīng)組合雙向預(yù)測(cè)性合 并候選者的實(shí)例。在圖10中,兩個(gè)候選者包括于原始合并候選者列表中。一候選者的預(yù)測(cè) 類型為列表〇單向預(yù)測(cè),且另一候選者的預(yù)測(cè)類型為列表1單向預(yù)測(cè)。在此實(shí)例中,mvL0_A 和refO是從列表0拾取,且mvLl_B和refO是從列表1拾取,且接著可產(chǎn)生雙向預(yù)測(cè)性合 并候選者(其具有列表〇中的mvL0_A和refO以及列表1中的mvLl_B和refO)并檢查其 是否不同于已包括于候選者列表中的候選者。如果其不同,則視頻譯碼器可將雙向預(yù)測(cè)性 合并候選者包括于候選者列表中。
[0180] 圖11展示經(jīng)縮放合并候選者的實(shí)例。經(jīng)縮放雙向預(yù)測(cè)性合并候選者可通過(guò)縮 放原始合并候選者而產(chǎn)生。具體來(lái)說(shuō),來(lái)自原始候選者的一候選者(其可具有mvLX和 refldxLX)可用以產(chǎn)生雙向預(yù)測(cè)性合并候選者。圖11展示經(jīng)縮放雙向預(yù)測(cè)性合并候選者 的實(shí)例。在圖11的實(shí)例中,兩個(gè)候選者包括于原始合并候選者列表中。一候選者的預(yù)測(cè) 類型為列表〇單向預(yù)測(cè),且另一候選者的預(yù)測(cè)類型為列表1單向預(yù)測(cè)。在此實(shí)例中,mvL0_ A和refO可從列表0拾取,且refO可復(fù)制到列表1中的參考索引refO'。接著,可通過(guò)縮 放具有refO和refO'的mvLO_A而計(jì)算mvLO' _A??s放可取決于POC距離。接著,可產(chǎn)生 雙向預(yù)測(cè)性合并候選者(其具有列表0中的mvL0_A和refO以及列表1中的mvLO' _A和 ref(V )并檢查其是否為重復(fù)的。如果其并非重復(fù)的,則可將其添加到合并候選者列表。
[0181] 圖12展示零向量合并候選者的實(shí)例。零向量合并候選者可通過(guò)組合零向量與可 經(jīng)參考的參考索引而產(chǎn)生。圖12展示零向量合并候選者的實(shí)例。如果零向量候選者并非 重復(fù)的,則可將其添加到合并候選者列表。對(duì)于每一產(chǎn)生的合并候選者,運(yùn)動(dòng)信息可與列表 中的前一候選者的運(yùn)動(dòng)信息比較。在一實(shí)例中,如果新產(chǎn)生的候選者不同于已包括于候選 者列表中的候選者,則將所產(chǎn)生的候選者添加到合并候選者列表。確定候選者是否不同于 已包括于候選者列表中的候選者的此過(guò)程有時(shí)稱作修剪。通過(guò)修剪,每一新產(chǎn)生的候選者 可與列表中的現(xiàn)有候選者比較,此可具有高計(jì)算成本。在一些例子中,修剪操作可包括比較 一或多個(gè)新候選者與已在候選者列表中的候選者和不添加為已在候選者列表中的候選者 的重復(fù)的新候選者。在其它例子中,修剪操作可包括將一或多個(gè)新候選者添加到候選者列 表且稍后從所述列表移除重復(fù)候選者。
[0182] 與先前技術(shù)相比,在一些例子中,本發(fā)明的技術(shù)提供簡(jiǎn)化和改進(jìn)。在一些實(shí)例中, 本發(fā)明的技術(shù)包括將修剪操作限于組合的雙向預(yù)測(cè)候選者,此是指僅將經(jīng)組合的雙向預(yù)測(cè) 候選者與列表中的候選者進(jìn)行比較。在此實(shí)例中,即使運(yùn)動(dòng)信息與列表中的一些相同,可能 也不比較或修剪所有其它候選者(例如經(jīng)縮放雙向預(yù)測(cè)性候選者、零候選者和mv_ 〇ffset 候選者)。本發(fā)明的技術(shù)可另外包括移除經(jīng)縮放雙向預(yù)測(cè)候選者且不考慮將其包括于候選 者列表中。
[0183] 根據(jù)本發(fā)明的進(jìn)一步技術(shù),可添加新候選者(偏移候選者)且將其與零候選者集 成以補(bǔ)償由上述簡(jiǎn)化引起的任何可能性能損失。可通過(guò)將一些偏移mv添加到現(xiàn)有合并候 選者的運(yùn)動(dòng)向量而產(chǎn)生偏移候選者??商砑拥钠苖v可包括(例如)(4,0)、(_4,0)、(0, 4)和(0, -4)。這些偏移值可添加到另一運(yùn)動(dòng)向量以產(chǎn)生偏移候選者。還可使用不同于所 展示的偏移值的偏移值。
[0184] 以下表1展示Mv_〇ffSet候選者的實(shí)例。作為表1中所展示的實(shí)例,前兩個(gè)候選 者來(lái)自空間相鄰塊和時(shí)間相鄰塊。通過(guò)使現(xiàn)有候選者偏移而產(chǎn)生最后三個(gè)候選者。
[0185] 表lMv_offset候選者實(shí)例
【權(quán)利要求】
1. 一種對(duì)視頻數(shù)據(jù)進(jìn)行譯碼的方法,所述方法包含: 確定與當(dāng)前視頻幀的當(dāng)前部分相關(guān)聯(lián)的空間候選者的集合,其中空間候選者的所述集 合對(duì)應(yīng)于所述當(dāng)前視頻幀的鄰近所述當(dāng)前部分的相鄰部分且其中所述空間候選者中的每 一者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息; 確定與所述當(dāng)前視頻幀的所述當(dāng)前部分相關(guān)聯(lián)的時(shí)間候選者,其中所述時(shí)間候選者對(duì) 應(yīng)于參考視頻幀的一部分且其中所述時(shí)間候選者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息; 基于空間候選者的所述集合的子集和所述時(shí)間候選者產(chǎn)生候選者列表;以及, 響應(yīng)于所述候選者列表包含少于指定數(shù)目的候選者,將人工產(chǎn)生的候選者添加到所述 候選者列表,其中所述人工產(chǎn)生的候選者具有與所述子集的空間候選者的運(yùn)動(dòng)信息相同或 與所述時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng)信息。
2. 根據(jù)權(quán)利要求1所述的方法,其中空間候選者的所述集合包含具有相同運(yùn)動(dòng)信息的 兩個(gè)或更多空間候選者,且其中空間候選者的所述子集僅包括所述兩個(gè)或更多空間候選者 中的一者。
3. 根據(jù)權(quán)利要求1所述的方法,其中基于空間候選者的所述集合的所述子集和所述時(shí) 間候選者產(chǎn)生所述候選者列表包含執(zhí)行修剪操作以從所述候選者列表排除具有重復(fù)運(yùn)動(dòng) 信息的候選者。
4. 根據(jù)權(quán)利要求1所述的方法,其中將所述人工產(chǎn)生的候選者添加到所述候選者列表 包含在不對(duì)所述人工產(chǎn)生的候選者執(zhí)行一或多個(gè)修剪操作的情況下添加所述人工產(chǎn)生的 候選者。
5. 根據(jù)權(quán)利要求1所述的方法,其中所述人工產(chǎn)生的候選者為非縮放雙向預(yù)測(cè)性候選 者。
6. 根據(jù)權(quán)利要求1所述的方法,其中所述人工產(chǎn)生的候選者為零候選者。
7. 根據(jù)權(quán)利要求1所述的方法,其中所述人工產(chǎn)生的候選者為運(yùn)動(dòng)向量偏移候選者。
8. 根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包含: 產(chǎn)生第二人工產(chǎn)生的候選者,其中所述人工產(chǎn)生的候選者和所述第二人工產(chǎn)生的候選 者并行地產(chǎn)生。
9. 根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包含: 使用合并模式對(duì)所述當(dāng)前視頻幀的所述當(dāng)前部分進(jìn)行譯碼,其中用于所述合并模式的 運(yùn)動(dòng)信息是基于所述候選者列表而確定。
10. 根據(jù)權(quán)利要求1所述的方法,其中所述方法由視頻編碼器執(zhí)行,其中所述方法進(jìn)一 步包含從所述候選者列表選擇候選者以及產(chǎn)生指示所述選定候選者的索引的語(yǔ)法元素。
11. 根據(jù)權(quán)利要求1所述的方法,其中所述方法由視頻解碼器執(zhí)行,且其中所述方法進(jìn) 一步包含接收識(shí)別來(lái)自所述候選者列表的候選者的語(yǔ)法元素以及使用所述所識(shí)別候選者 的運(yùn)動(dòng)信息對(duì)所述當(dāng)前視頻幀的所述當(dāng)前部分進(jìn)行解碼。
12. -種用于對(duì)視頻數(shù)據(jù)進(jìn)行譯碼的裝置,所述裝置包含: 視頻譯碼器,其經(jīng)配置以:確定與當(dāng)前視頻幀的當(dāng)前部分相關(guān)聯(lián)的空間候選者的集合, 其中空間候選者的所述集合對(duì)應(yīng)于所述當(dāng)前視頻幀的鄰近所述當(dāng)前部分的相鄰部分且其 中所述空間候選者中的每一者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息;確定與所述當(dāng)前視頻幀的所述當(dāng)前 部分相關(guān)聯(lián)的時(shí)間候選者,其中所述時(shí)間候選者對(duì)應(yīng)于參考視頻幀的一部分且其中所述時(shí) 間候選者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息;基于空間候選者的所述集合的子集和所述時(shí)間候選者產(chǎn) 生候選者列表;以及,響應(yīng)于所述候選者列表包含少于指定數(shù)目的候選者,將人工產(chǎn)生的候 選者添加到所述候選者列表,其中所述人工產(chǎn)生的候選者具有與所述子集的空間候選者的 運(yùn)動(dòng)信息相同或與所述時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng)信息。
13. 根據(jù)權(quán)利要求12所述的裝置,其中空間候選者的所述集合包含具有相同運(yùn)動(dòng)信息 的兩個(gè)或更多空間候選者,且其中空間候選者的所述子集僅包括所述兩個(gè)或更多空間候選 者中的一者。
14. 根據(jù)權(quán)利要求12所述的裝置,其中所述視頻譯碼器通過(guò)執(zhí)行修剪操作以從所述候 選者列表排除具有重復(fù)運(yùn)動(dòng)信息的候選者而基于空間候選者的所述集合的所述子集和所 述時(shí)間候選者產(chǎn)生所述候選者列表。
15. 根據(jù)權(quán)利要求12所述的裝置,其中所述視頻譯碼器通過(guò)在不對(duì)所述人工產(chǎn)生的候 選者執(zhí)行一或多個(gè)修剪操作的情況下添加所述人工產(chǎn)生的候選者來(lái)將所述人工產(chǎn)生的候 選者添加到所述候選者列表。
16. 根據(jù)權(quán)利要求12所述的裝置,其中所述人工產(chǎn)生的候選者為非縮放雙向預(yù)測(cè)性候 選者。
17. 根據(jù)權(quán)利要求12所述的裝置,其中所述人工產(chǎn)生的候選者為零候選者。
18. 根據(jù)權(quán)利要求12所述的裝置,其中所述人工產(chǎn)生的候選者為運(yùn)動(dòng)向量偏移候選 者。
19. 根據(jù)權(quán)利要求12所述的裝置,其中所述視頻譯碼器進(jìn)一步經(jīng)配置以產(chǎn)生第二人工 產(chǎn)生的候選者,其中所述人工產(chǎn)生的候選者和所述第二人工產(chǎn)生的候選者并行地產(chǎn)生。
20. 根據(jù)權(quán)利要求12所述的裝置,其中所述視頻譯碼器進(jìn)一步經(jīng)配置以使用合并模式 對(duì)所述當(dāng)前視頻幀的所述當(dāng)前部分進(jìn)行譯碼,其中用于所述合并模式的運(yùn)動(dòng)信息是基于所 述候選者列表而確定。
21. 根據(jù)權(quán)利要求12所述的裝置,其中所述視頻譯碼器為視頻編碼器且其中所述視頻 編碼器經(jīng)配置以從所述候選者列表選擇候選者以及產(chǎn)生指示所述選定候選者的索引的語(yǔ) 法元素。
22. 根據(jù)權(quán)利要求12所述的裝置,其中所述視頻譯碼器為視頻解碼器,且其中所述視 頻解碼器經(jīng)配置以接收識(shí)別來(lái)自所述候選者列表的候選者的語(yǔ)法元素以及使用所述所識(shí) 別候選者的運(yùn)動(dòng)信息對(duì)所述當(dāng)前視頻幀的所述當(dāng)前部分進(jìn)行解碼。
23. 根據(jù)權(quán)利要求12所述的裝置,其中所述裝置包含以下各者中的至少一者: 集成電路; 微處理器;以及, 無(wú)線通信裝置,其包括所述視頻譯碼器。
24. -種用于對(duì)視頻數(shù)據(jù)進(jìn)行譯碼的裝置,所述裝置包含: 用于確定與當(dāng)前視頻幀的當(dāng)前部分相關(guān)聯(lián)的空間候選者的集合的裝置,其中空間候選 者的所述集合對(duì)應(yīng)于所述當(dāng)前視頻幀的鄰近所述當(dāng)前部分的相鄰部分且其中所述空間候 選者中的每一者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息; 用于確定與所述當(dāng)前視頻幀的所述當(dāng)前部分相關(guān)聯(lián)的時(shí)間候選者的裝置,其中所述時(shí) 間候選者對(duì)應(yīng)于參考視頻幀的一部分且其中所述時(shí)間候選者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息; 用于基于空間候選者的所述集合的子集和所述時(shí)間候選者產(chǎn)生候選者列表的裝置;以 及, 用于響應(yīng)于所述候選者列表包含少于指定數(shù)目的候選者而將人工產(chǎn)生的候選者添加 到所述候選者列表的裝置,其中所述人工產(chǎn)生的候選者具有與所述子集的空間候選者的運(yùn) 動(dòng)信息相同或與所述時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng)信息。
25. 根據(jù)權(quán)利要求24所述的裝置,其中空間候選者的所述集合包含具有相同運(yùn)動(dòng)信息 的兩個(gè)或更多空間候選者,且其中空間候選者的所述子集僅包括所述兩個(gè)或更多空間候選 者中的一者。
26. 根據(jù)權(quán)利要求24所述的裝置,其中所述用于基于空間候選者的所述集合的所述子 集和所述時(shí)間候選者產(chǎn)生所述候選者列表的裝置包含用于執(zhí)行修剪操作以從所述候選者 列表排除具有重復(fù)運(yùn)動(dòng)信息的候選者的裝置。
27. 根據(jù)權(quán)利要求24所述的裝置,其中所述用于將所述人工產(chǎn)生的候選者添加到所述 候選者列表的裝置包含用于在不對(duì)所述人工產(chǎn)生的候選者執(zhí)行一或多個(gè)修剪操作的情況 下添加所述人工產(chǎn)生的候選者的裝置。
28. 根據(jù)權(quán)利要求24所述的裝置,其中所述人工產(chǎn)生的候選者為非縮放雙向預(yù)測(cè)性候 選者。
29. 根據(jù)權(quán)利要求24所述的裝置,其中所述人工產(chǎn)生的候選者為零候選者。
30. 根據(jù)權(quán)利要求24所述的裝置,其中所述人工產(chǎn)生的候選者為運(yùn)動(dòng)向量偏移候選 者。
31. 根據(jù)權(quán)利要求24所述的裝置,其進(jìn)一步包含: 用于產(chǎn)生第二人工產(chǎn)生的候選者的裝置,其中所述人工產(chǎn)生的候選者和所述第二人工 產(chǎn)生的候選者并行地產(chǎn)生。
32. 根據(jù)權(quán)利要求24所述的裝置,其進(jìn)一步包含: 用于使用合并模式對(duì)所述當(dāng)前視頻幀的所述當(dāng)前部分進(jìn)行譯碼的裝置,其中用于所述 合并模式的運(yùn)動(dòng)信息是基于所述候選者列表而確定。
33. 根據(jù)權(quán)利要求24所述的裝置,其中所述裝置包含視頻編碼器,且其中所述裝置進(jìn) 一步包含用于從所述候選者列表選擇候選者的裝置和用于產(chǎn)生指示所述選定候選者的索 引的語(yǔ)法元素的裝置。
34. 根據(jù)權(quán)利要求24所述的裝置,其中所述裝置包含視頻解碼器,且其中所述裝置進(jìn) 一步包含用于接收識(shí)別來(lái)自所述候選者列表的候選者的語(yǔ)法元素的裝置和用于使用所述 所識(shí)別候選者的運(yùn)動(dòng)信息對(duì)所述當(dāng)前視頻幀的所述當(dāng)前部分進(jìn)行解碼的裝置。
35. -種存儲(chǔ)指令的計(jì)算機(jī)可讀存儲(chǔ)媒體,所述指令在被執(zhí)行時(shí)致使一或多個(gè)處理器 執(zhí)行以下操作 : 確定與當(dāng)前視頻幀的當(dāng)前部分相關(guān)聯(lián)的空間候選者的集合,其中空間候選者的所述集 合對(duì)應(yīng)于所述當(dāng)前視頻幀的鄰近所述當(dāng)前部分的相鄰部分且其中所述空間候選者中的每 一者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息; 確定與所述當(dāng)前視頻幀的所述當(dāng)前部分相關(guān)聯(lián)的時(shí)間候選者,其中所述時(shí)間候選者對(duì) 應(yīng)于參考視頻幀的一部分且其中所述時(shí)間候選者具有相關(guān)聯(lián)的運(yùn)動(dòng)信息; 基于空間候選者的所述集合的子集和所述時(shí)間候選者產(chǎn)生候選者列表;以及, 響應(yīng)于所述候選者列表包含少于指定數(shù)目的候選者而將人工產(chǎn)生的候選者添加到所 述候選者列表,其中所述人工產(chǎn)生的候選者具有與所述子集的空間候選者的運(yùn)動(dòng)信息相同 或與所述時(shí)間候選者的運(yùn)動(dòng)信息相同的運(yùn)動(dòng)信息。
36. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其中空間候選者的所述集合包含具 有相同運(yùn)動(dòng)信息的兩個(gè)或更多空間候選者,且其中空間候選者的所述子集僅包括所述兩個(gè) 或更多空間候選者中的一者。
37. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述指令致使所述一或多個(gè)處 理器通過(guò)執(zhí)行修剪操作以從所述候選者列表排除具有重復(fù)運(yùn)動(dòng)信息的候選者來(lái)基于空間 候選者的所述集合的所述子集和所述時(shí)間候選者產(chǎn)生所述候選者列表。
38. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述指令致使所述一或多個(gè)處 理器在不對(duì)所述人工產(chǎn)生的候選者執(zhí)行一或多個(gè)修剪操作的情況下將所述人工產(chǎn)生的候 選者添加到所述候選者列表。
39. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述人工產(chǎn)生的候選者為非縮 放雙向預(yù)測(cè)性候選者。
40. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述人工產(chǎn)生的候選者為零候 選者。
41. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述人工產(chǎn)生的候選者為運(yùn)動(dòng) 向量偏移候選者。
42. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其存儲(chǔ)在被執(zhí)行時(shí)致使所述一或多 個(gè)處理器執(zhí)行以下操作的其它指令: 產(chǎn)生第二人工產(chǎn)生的候選者,其中所述人工產(chǎn)生的候選者和所述第二人工產(chǎn)生的候選 者并行地產(chǎn)生。
43. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其存儲(chǔ)在被執(zhí)行時(shí)致使所述一或多 個(gè)處理器執(zhí)行以下操作的其它指令: 使用合并模式對(duì)所述當(dāng)前視頻幀的所述當(dāng)前部分進(jìn)行譯碼,其中用于所述合并模式的 運(yùn)動(dòng)信息是基于所述候選者列表而確定。
44. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述一或多個(gè)處理器包含視頻 編碼器,其中所述計(jì)算機(jī)可讀存儲(chǔ)媒體存儲(chǔ)其它指令,所述指令在被執(zhí)行時(shí)致使所述一或 多個(gè)處理器從所述候選者列表選擇候選者以及產(chǎn)生指示所述選定候選者的索引的語(yǔ)法元 素。
45. 根據(jù)權(quán)利要求35所述的計(jì)算機(jī)可讀存儲(chǔ)媒體,其中所述一或多個(gè)處理器包含視頻 解碼器,其中所述計(jì)算機(jī)可讀存儲(chǔ)媒體存儲(chǔ)其它指令,所述指令在被執(zhí)行時(shí)致使所述一或 多個(gè)處理器接收識(shí)別來(lái)自所述候選者列表的候選者的語(yǔ)法元素以及使用所述所識(shí)別候選 者的運(yùn)動(dòng)信息對(duì)所述當(dāng)前視頻幀的所述當(dāng)前部分進(jìn)行解碼。
【文檔編號(hào)】H04N19/119GK104126302SQ201280054674
【公開(kāi)日】2014年10月29日 申請(qǐng)日期:2012年11月7日 優(yōu)先權(quán)日:2011年11月7日
【發(fā)明者】鄭云非, 翔林·王, 馬爾塔·卡切維奇 申請(qǐng)人:高通股份有限公司