通過參考圖像集的子集進行的視頻譯碼的制作方法
【專利摘要】本發(fā)明描述涉及導出參考圖像集的技術。參考圖像集可識別可潛在地用以對當前圖像及在解碼次序上在所述當前圖像之后的圖像進行幀間預測的參考圖像。在一些實例中,導出所述參考圖像集可包含構造一起形成所述參考圖像集的多個參考圖像子集。
【專利說明】通過參考圖像集的子集進行的視頻譯碼
[0001]本申請案主張以下各申請案的權利:
[0002]2011年9月23日申請的第61 / 538,787號美國臨時申請案;
[0003]2011年9月26日申請的第61 / 539,433號美國臨時專利申請案;以及
[0004]2011年9月30日申請的第61 / 542,034號美國臨時專利申請案,所述申請案中的每一者的全部內容以其全文引用的方式并入本文中。
【技術領域】
[0005]本發(fā)明涉及視頻譯碼且,更明確地說,涉及用于譯碼視頻數(shù)據(jù)的技術。
【背景技術】
[0006]數(shù)字視頻能力可并入到廣泛范圍的裝置中,所述裝置包含數(shù)字電視、數(shù)字直播系統(tǒng)、無線廣播系統(tǒng)、個人數(shù)字助理(PDA)、膝上型或桌上型計算機、平板型計算機、電子書閱讀器、數(shù)字攝像機、數(shù)字記錄裝置、數(shù)字媒體播放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式或衛(wèi)星無線電電話、所謂的“智能型電話”、視頻電信會議裝置、視頻流裝置,及其類似者。數(shù)字視頻裝置實施視頻壓縮技術,例如以下各者中所描述的那些技術:由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264 / MPEG-4第10部分(高級視頻譯碼(AVC))定義的標準、目前在開發(fā)中的高效率視頻譯碼(HEVC)標準,以及這些標準的擴展。視頻裝置可通過實施這些視頻壓縮技術而更有效率地傳輸、接收、編碼、解碼及/或存儲數(shù)字視頻信息。
[0007]視頻壓縮技術執(zhí)行空間(圖像內)預測和/或時間(圖像間)預測,以減少或去除視頻序列中所固有的冗余。對于基于塊的視頻譯碼,可將視頻切片(即,視頻圖像或視頻圖像的一部分)分割成視頻塊,視頻塊還可被稱作樹塊、譯碼樹塊(CTB)、譯碼樹單元(CTU)、譯碼單元(CU)和/或譯碼節(jié)點。使用相對于相同圖像中的相鄰塊中的參考樣本的空間預測來編碼圖像的經幀內譯碼(I)切片中的視頻塊。圖像的經幀間譯碼(P或B)切片中的視頻塊可使用相對于相同圖像中的相鄰塊中的參考樣本的空間預測或相對于其它參考圖像中的參考樣本的時間預測。圖像可被稱作幀,且參考圖像可被稱作參考幀。
[0008]空間預測或時間預測導致譯碼用于塊的預測性塊。殘余數(shù)據(jù)表示待譯碼的原始塊與預測性塊之間的像素差。根據(jù)指向形成預測性塊的參考樣本的塊的運動向量和指示經譯碼塊與預測性塊之間的差異的殘余數(shù)據(jù)來編碼經幀間譯碼塊。根據(jù)幀內譯碼模式和殘余數(shù)據(jù)來編碼經幀內譯碼塊。為了進行進一步壓縮,可將殘余數(shù)據(jù)從像素域變換到變換域,從而產生殘余變換系數(shù),可然后量化殘余變換系數(shù)??蓲呙枳畛醪贾贸啥S陣列的經量化的變換系數(shù),以便產生變換系數(shù)的一維向量,且可應用熵譯碼以實現(xiàn)甚至更多壓縮。
【發(fā)明內容】
[0009]一股來說,本發(fā)明描述與導出用于視頻譯碼中的參考圖像集有關的技術。舉例來說,所述參考圖像集可構成多個參考圖像子集的組合。所述參考圖像子集中的每一者可識別多個潛在參考圖像,但少于全部的潛在參考圖像。在本發(fā)明中所描述的實例技術中,一種視頻譯碼器(編碼器或解碼器)可構造多個列表,每一列表包含所述潛在參考圖像的一子集的識別符。從這些多個列表,所述視頻譯碼器可構造所述多個參考圖像子集,此情形導致所述視頻譯碼器導出所述參考圖像集。
[0010]除與導出所述參考圖像集有關的技術之外,本發(fā)明還描述簡化的參考圖像列表初始化技術。此參考圖像列表初始化可去除對將所述參考圖像重新排序的需要。舉例來說,如果不需要參考圖像列表修改,那么所述初始參考圖像列表可形成所述最終參考圖像列表,且可能不需要任何進一步重新排序。所述技術還可關于以如下方式構造所述參考圖像列表:其中所述視頻譯碼器重復地將參考圖像添加到所述參考圖像列表,直到所述參考圖像列表的條目數(shù)等于條目的最大可允許數(shù)目為止。
[0011]在一些實例中,所述技術是關于參考圖像列表修改。舉例來說,所述視頻譯碼器可通過以下操作來修改所述初始參考圖像列表:參考所述參考圖像子集中的一者或一者以上,且在所述構造所述初始參考圖像列表之后將所述參考圖像子集中的一個或一個以上圖像包含在所述參考圖像列表中。
[0012]在一些實例中,所述視頻譯碼器可執(zhí)行已解碼圖像緩沖器(DPB)管理。在這些實例中,如果已解碼圖像并不屬于所述參考圖像集,那么所述視頻譯碼器可將所述已解碼圖像從所述DPB中去除。在一些實例中,所述視頻譯碼器可在譯碼當前圖像之前去除所述已解碼圖像。
[0013]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的方法,所述方法包含譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述方法還包含:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及基于所述多個參考圖像子集而譯碼所述當前圖像。
[0014]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含視頻譯碼器,所述視頻譯碼器經配置以譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述視頻譯碼器還經配置以:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及基于所述多個參考圖像子集而譯碼所述當前圖像。
[0015]在一個實例中,本發(fā)明描述一種具有存儲在其上的指令的計算機可讀存儲媒體,所述指令在經執(zhí)行時致使用于譯碼視頻數(shù)據(jù)的裝置的處理器譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述指令還致使所述處理器:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及基于所述多個參考圖像子集而譯碼所述當前圖像。
[0016]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含用于譯碼指示屬于參考圖像集的參考圖像的信息的裝置。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述裝置還包含:用于構造多個參考圖像子集的裝置,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及用于基于所述多個參考圖像子集而譯碼所述當前圖像的裝置。
[0017]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的方法,所述方法包含譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述方法還包含:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;只要參考圖像列表條目的數(shù)目不大于可允許參考列表條目的最大數(shù)目,便將以下各參考圖像添加到參考圖像列表中:來自所述多個參考圖像子集中的第一子集的參考圖像、后接續(xù)有來自所述多個參考圖像子集中的第二子集的參考圖像,及后接續(xù)有來自所述多個參考圖像子集中的第三子集的參考圖像;以及基于所述參考圖像列表而譯碼所述當前圖像。
[0018]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含視頻譯碼器,所述視頻譯碼器經配置以譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述視頻譯碼器還經配置以:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;只要參考圖像列表條目的數(shù)目不大于可允許參考列表條目的最大數(shù)目,便將以下各參考圖像添加到參考圖像列表中:來自所述多個參考圖像子集中的第一子集的參考圖像、后接續(xù)有來自所述多個參考圖像子集中的第二子集的參考圖像,及后接續(xù)有來自所述多個參考圖像子集中的第三子集的參考圖像;以及基于所述參考圖像列表而譯碼所述當前圖像。
[0019]在一個實例中,本發(fā)明描述一種具有存儲在其上的指令的計算機可讀存儲媒體,所述指令在經執(zhí)行時致使用于譯碼視頻數(shù)據(jù)的裝置的處理器譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述指令還致使所述處理器:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;只要參考圖像列表條目的數(shù)目不大于可允許參考列表條目的最大數(shù)目,便將以下各參考圖像添加到參考圖像列表中:來自所述多個參考圖像子集中的第一子集的參考圖像、后接續(xù)有來自所述多個參考圖像子集中的第二子集的參考圖像,及后接續(xù)有來自所述多個參考圖像子集中的第三子集的參考圖像;以及基于所述參考圖像列表而譯碼所述當前圖像。
[0020]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含用于譯碼指示屬于參考圖像集的參考圖像的信息的裝置。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述裝置還包含:用于構造多個參考圖像子集的裝置,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;用于只要參考圖像列表條目的數(shù)目不大于可允許參考列表條目的最大數(shù)目,便將以下各參考圖像添加到參考圖像列表中的裝置:來自所述多個參考圖像子集中的第一子集的參考圖像、后接續(xù)有來自所述多個參考圖像子集中的第二子集的參考圖像,及后接續(xù)有來自所述多個參考圖像子集中的第三子集的參考圖像;以及用于基于所述參考圖像列表而譯碼所述當前圖像的裝置。
[0021]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的方法,所述方法包含譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述方法還包含:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;將來自所述多個參考圖像子集的參考圖像添加到參考圖像列表中的第一條目集合中;確定所述參考圖像列表中的條目的數(shù)目是否等于所述參考圖像列表中的可允許條目的最大數(shù)目;當所述參考圖像列表中的條目的所述數(shù)目不等于所述參考圖像列表中的可允許條目的所述最大數(shù)目時,重復地將來自所述參考圖像子集中的至少一者的一個或一個以上參考圖像重新添加到所述參考圖像列表中在所述第一條目集合之后的條目中,直到所述參考圖像列表中的條目的所述數(shù)目等于所述參考圖像列表中的可允許條目的所述最大數(shù)目為止;以及基于所述參考圖像列表而譯碼所述當前圖像。
[0022]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含視頻譯碼器,所述視頻譯碼器經配置以譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述視頻譯碼器還經配置以:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;將來自所述多個參考圖像子集的參考圖像添加到參考圖像列表中的第一條目集合中;確定所述參考圖像列表中的條目的數(shù)目是否等于所述參考圖像列表中的可允許條目的最大數(shù)目;當所述參考圖像列表中的條目的所述數(shù)目不等于所述參考圖像列表中的可允許條目的所述最大數(shù)目時,重復地將來自所述參考圖像子集中的至少一者的一個或一個以上參考圖像重新添加到所述參考圖像列表中在所述第一條目集合之后的條目中,直到所述參考圖像列表中的條目的所述數(shù)目等于所述參考圖像列表中的可允許條目的所述最大數(shù)目為止;以及基于所述參考圖像列表而譯碼所述當前圖像。
[0023]在一個實例中,本發(fā)明描述一種具有存儲在其上的指令的計算機可讀存儲媒體,所述指令在經執(zhí)行時致使用于譯碼視頻數(shù)據(jù)的裝置的處理器譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述指令還致使所述處理器:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;將來自所述多個參考圖像子集的參考圖像添加到參考圖像列表中的第一條目集合中;確定所述參考圖像列表中的條目的數(shù)目是否等于所述參考圖像列表中的可允許條目的最大數(shù)目;當所述參考圖像列表中的條目的所述數(shù)目不等于所述參考圖像列表中的可允許條目的所述最大數(shù)目時,重復地將來自所述參考圖像子集中的至少一者的一個或一個以上參考圖像重新添加到所述參考圖像列表中在所述第一條目集合之后的條目中,直到所述參考圖像列表中的條目的所述數(shù)目等于所述參考圖像列表中的可允許條目的所述最大數(shù)目為止;以及基于所述參考圖像列表而譯碼所述當前圖像。
[0024]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含用于譯碼指示屬于參考圖像集的參考圖像的信息的裝置。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述裝置還包含:用于構造多個參考圖像子集的裝置,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;用于將來自所述多個參考圖像子集的參考圖像添加到參考圖像列表中的第一條目集合中的裝置;用于確定所述參考圖像列表中的條目的數(shù)目是否等于所述參考圖像列表中的可允許條目的最大數(shù)目的裝置;當所述參考圖像列表中的條目的所述數(shù)目不等于所述參考圖像列表中的可允許條目的所述最大數(shù)目時,用于重復地將來自所述參考圖像子集中的至少一者的一個或一個以上參考圖像重新添加到所述參考圖像列表中在所述第一條目集合之后的條目中,直到所述參考圖像列表中的條目的所述數(shù)目等于所述參考圖像列表中的可允許條目的所述最大數(shù)目為止的裝置;以及用于基于所述參考圖像列表而譯碼所述當前圖像的裝置。
[0025]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的方法,所述方法包含譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述方法還包含:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;基于所述所構造的參考圖像子集而構造初始參考圖像列表;及在需要參考圖像修改時,識別所述所構造的參考圖像子集中的至少一者中的參考圖像;以及在所述初始參考圖像的當前條目中添加所述所識別的參考圖像以構造修改的參考圖像列表。所述方法進一步包含基于所述修改的參考圖像列表而譯碼所述當前圖像。
[0026]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含視頻譯碼器,所述視頻譯碼器經配置以譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述視頻譯碼器還經配置以:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;基于所述所構造的參考圖像子集而構造初始參考圖像列表;及在需要參考圖像修改時,識別所述所構造的參考圖像子集中的至少一者中的參考圖像;以及在所述初始參考圖像的當前條目中添加所述所識別的參考圖像以構造修改的參考圖像列表。所述視頻譯碼器還經配置以基于所述修改的參考圖像列表而譯碼所述當前圖像。
[0027]在一個實例中,本發(fā)明描述一種具有存儲在其上的指令的計算機可讀存儲媒體,所述指令在經執(zhí)行時致使用于譯碼視頻數(shù)據(jù)的裝置的處理器譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述指令還致使所述處理器:構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;基于所述所構造的參考圖像子集而構造初始參考圖像列表;及在需要參考圖像修改時,識別所述所構造的參考圖像子集中的至少一者中的參考圖像;以及在所述初始參考圖像的當前條目中添加所述所識別的參考圖像以構造修改的參考圖像列表。所述指令還致使所述處理器基于所述修改的參考圖像列表而譯碼所述當前圖像。
[0028]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含用于譯碼指示屬于參考圖像集的參考圖像的信息的裝置。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述裝置還包含:用于構造多個參考圖像子集的裝置,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;用于基于所述所構造的參考圖像子集而構造初始參考圖像列表的裝置;及在需要參考圖像修改時,用于識別所述所構造的參考圖像子集中的至少一者中的參考圖像的裝置;以及用于在所述初始參考圖像的當前條目中添加所述所識別的參考圖像以構造修改的參考圖像列表的裝置。所述裝置還包含用于基于所述修改的參考圖像列表而譯碼所述當前圖像的裝置。
[0029]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的方法,所述方法包含譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述方法包含:基于所述經譯碼信息而導出所述參考圖像集;確定存儲在已解碼圖像緩沖器(DPB)中的已解碼圖像是否不需要輸出及是否在所述參考圖像集中未加以識別;當所述已解碼圖像不需要輸出且在所述參考圖像集中未加以識別時,將所述已解碼圖像從所述DPB中去除;以及在所述去除所述已解碼圖像之后,譯碼所述當前圖像。
[0030]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含視頻譯碼器,所述視頻譯碼器經配置以譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述視頻譯碼器還經配置以:基于所述經譯碼信息而導出所述參考圖像集;確定存儲在已解碼圖像緩沖器(DPB)中的已解碼圖像是否不需要輸出及是否在所述參考圖像集中未加以識別;當所述已解碼圖像不需要輸出且在所述參考圖像集中未加以識別時,將所述已解碼圖像從所述DPB中去除;以及在所述去除所述已解碼圖像之后,譯碼所述當前圖像。
[0031]在一個實例中,本發(fā)明描述一種具有存儲在其上的指令的計算機可讀存儲媒體,所述指令在經執(zhí)行時致使用于譯碼視頻數(shù)據(jù)的裝置的處理器譯碼指示屬于參考圖像集的參考圖像的信息。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述指令還致使所述處理器:基于所述經譯碼信息而導出所述參考圖像集;確定存儲在已解碼圖像緩沖器(DPB)中的已解碼圖像是否不需要輸出及是否在所述參考圖像集中未加以識別;當所述已解碼圖像不需要輸出且在所述參考圖像集中未加以識別時,將所述已解碼圖像從所述DPB中去除;以及在所述去除所述已解碼圖像之后,譯碼所述當前圖像。
[0032]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含用于譯碼指示屬于參考圖像集的參考圖像的信息的裝置。在此實例中,所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像。所述裝置還包含:用于基于所述經譯碼信息而導出所述參考圖像集的裝置;用于確定存儲在已解碼圖像緩沖器(DPB)中的已解碼圖像是否不需要輸出及是否在所述參考圖像集中未加以識別的裝置;當所述已解碼圖像不需要輸出且在所述參考圖像集中未加以識別時,用于將所述已解碼圖像從所述DPB中去除的裝置;以及在所述去除所述已解碼圖像之后,用于譯碼所述當前圖像的裝置。
[0033]在一個實例中,本發(fā)明描述一種譯碼視頻數(shù)據(jù)的方法,所述方法包含譯碼指示在參數(shù)集中識別的候選長期參考圖像的語法元素。在此實例中,所述候選長期參考圖像中的一者或一者以上屬于當前圖像的參考圖像集。而且,在此實例中,所述參考圖像集識別可潛在地用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的參考圖像。所述方法還包含:譯碼指示在所述參數(shù)集中識別的哪些候選長期參考圖像屬于所述當前圖像的所述參考圖像集的語法元素;以及基于哪些候選長期參考圖像屬于所述當前圖像的所述參考圖像集的所述指示而構造多個參考圖像子集中的至少一者。在此實例中,所述多個參考圖像子集形成所述參考圖像集。
[0034]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含視頻譯碼器,所述視頻譯碼器經配置以譯碼指示在參數(shù)集中識別的候選長期參考圖像的語法元素。在此實例中,所述候選長期參考圖像中的一者或一者以上屬于當前圖像的參考圖像集。而且,在此實例中,所述參考圖像集識別可潛在地用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的參考圖像。所述視頻譯碼器還經配置以:譯碼指示在所述參數(shù)集中識別的哪些候選長期參考圖像屬于所述當前圖像的所述參考圖像集的語法元素;以及基于哪些候選長期參考圖像屬于所述當前圖像的所述參考圖像集的所述指示而構造多個參考圖像子集中的至少一者。在此實例中,所述多個參考圖像子集形成所述參考圖像集。
[0035]在一個實例中,本發(fā)明描述一種具有存儲在其上的指令的計算機可讀存儲媒體,所述指令在經執(zhí)行時致使用于譯碼視頻數(shù)據(jù)的裝置的處理器譯碼指示在參數(shù)集中識別的候選長期參考圖像的語法元素。在此實例中,所述候選長期參考圖像中的一者或一者以上屬于當前圖像的參考圖像集。而且,在此實例中,所述參考圖像集識別可潛在地用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的參考圖像。所述指令還致使所述處理器:譯碼指示在所述參數(shù)集中識別的哪些候選長期參考圖像屬于所述當前圖像的所述參考圖像集的語法元素;以及基于哪些候選長期參考圖像屬于所述當前圖像的所述參考圖像集的所述指示而構造多個參考圖像子集中的至少一者。在此實例中,所述多個參考圖像子集形成所述參考圖像集。
[0036]在一個實例中,本發(fā)明描述一種用于譯碼視頻數(shù)據(jù)的裝置。所述裝置包含用于譯碼指示在參數(shù)集中識別的候選長期參考圖像的語法元素的裝置。在此實例中,所述候選長期參考圖像中的一者或一者以上屬于當前圖像的參考圖像集。而且,在此實例中,所述參考圖像集識別可潛在地用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的參考圖像。所述裝置還包含:用于譯碼指示在所述參數(shù)集中識別的哪些候選長期參考圖像屬于所述當前圖像的所述參考圖像集的語法元素的裝置;以及用于基于哪些候選長期參考圖像屬于所述當前圖像的所述參考圖像集的所述指示而構造多個參考圖像子集中的至少一者的裝置。在此實例中,所述多個參考圖像子集形成所述參考圖像集。
[0037]一個或一個以上實例的細節(jié)闡述于隨附圖式及下文的描述中。其它特征、目標及優(yōu)點將從所述描述和所述圖式以及從權利要求書而顯而易見。
【專利附圖】
【附圖說明】
[0038]圖1為說明可利用本發(fā)明中所描述的技術的實例視頻編碼及解碼系統(tǒng)的框圖。
[0039]圖2為說明包含經編碼及傳輸?shù)亩鄠€圖像的實例視頻序列的概念圖。
[0040]圖3為說明可實施本發(fā)明中所描述的技術的實例視頻編碼器的框圖。
[0041]圖4為說明可實施本發(fā)明中所描述的技術的實例視頻解碼器的框圖。
[0042]圖5為說明導出參考圖像集的實例操作的流程圖。
[0043]圖6為說明構造參考圖像列表的實例操作的流程圖。
[0044]圖7為說明構造參考圖像列表的另一實例操作的流程圖。
[0045]圖8為說明修改初始參考圖像列表的實例操作的流程圖。
[0046]圖9為說明已解碼圖像去除的實例操作的流程圖。
[0047]圖10為說明確定哪些長期參考圖像屬于當前圖像的參考圖像集的實例操作的流程圖。
【具體實施方式】
[0048]本發(fā)明的技術一股來說涉及用于進行幀間預測的參考圖像的管理。舉例來說,視頻譯碼器(例如,視頻編碼器或視頻解碼器)包含已解碼圖像緩沖器(DPB)。所述DPB存儲已解碼圖像,包含參考圖像。參考圖像為可潛在地用于對圖像進行幀間預測的圖像。換句話說,視頻譯碼器可在譯碼(編碼或解碼)圖像期間,基于存儲在DPB中的一個或一個以上參考圖像而預測所述圖像。
[0049]為了有效率地利用DPB,可指定DPB管理過程,例如DPB中的已解碼圖像的存儲過程、參考圖像的標記過程、來自DPB的已解碼圖像的輸出以及去除過程,等等。一股來說,在一些當前及開發(fā)中的視頻譯碼標準中,DPB管理可包含以下方面中的一者或一者以上:圖像識別及參考圖像識別、參考圖像列表構造、參考圖像標記、來自DPB的圖像輸出、到DPB中的圖像插入,以及來自DPB的圖像去除。
[0050]為了輔助理解,下文提供關于如何可根據(jù)一些視頻譯碼標準發(fā)生參考圖像標記及參考圖像列表構造的簡要描述。本發(fā)明中所描述的技術中的一些技術可解決可能存在于參考圖像標記、參考圖像列表構造及DPB圖像去除及輸出中的問題,以便改善對DPB的利用效率。
[0051]對于參考圖像標記,在有效序列參數(shù)集中指示用于進行幀間預測的參考圖像的最大數(shù)目(被稱作M(nUm_ref_frames))。當參考圖像經解碼時,將所述參考圖像標記為“用于參考”。如果參考圖像的解碼造成將M個以上圖像標記為“用于參考”,那么必須將至少一個圖像標記為“不用于參考”。如果標記為“不用于參考”的圖像還不需要輸出,那么DPB去除過程將標記為“不用于參考”的圖像從DPB中去除。
[0052]當圖像經解碼時,所述圖像可能為非參考圖像或參考圖像。參考圖像可能為長期參考圖像或短期參考圖像,且當參考圖像經標記為“不用于參考”時,所述參考圖像可能變得不再需要供參考。在一些視頻譯碼標準中,可能存在改變參考圖像的狀態(tài)的參考圖像標記操作。
[0053]可能存在用于參考圖像標記的兩種類型的操作:滑動窗和自適應存儲器控制。用于參考圖像標記的操作模式可基于圖像而選擇;而,滑動窗操作可通過固定數(shù)目個短期參考圖像以先進先出隊列的形式運作。換句話說,可以隱含式方式首先去除具有最早解碼時間的短期參考圖像(標記為不用于參考的圖像)。
[0054]然而,自適應存儲器控制顯式地去除短期或長期圖像。自適應存儲器控制還使得能夠切換短期和長期圖像的狀態(tài)等。舉例來說,在自適應存儲器控制中,視頻編碼器可用信號發(fā)出指定應將哪些圖像標記為用于參考的語法元素。視頻解碼器可接收語法元素且如所指定標記圖像。在滑動窗中,視頻編碼器可能不需要用信號發(fā)出應將哪些圖像標記為用于參考。而是,視頻解碼器可基于哪些圖像在滑動窗內而隱含式地(即,不接收語法元素)確定應將哪些圖像標記為用于參考。
[0055]視頻譯碼器還可將構造指示哪些參考圖像可用于幀間預測目的的參考圖像列表作為任務。這些參考圖像列表中的兩者分別被稱作列表O和列表I。視頻譯碼器首先使用默認構造技術來構造列表O和列表I (例如,用于構造列表O和列表I的預先配置的構造方案)。視情況,在構造初始列表O和列表I之后,視頻解碼器可解碼語法元素,當存在語法元素時,語法元素可指導視頻解碼器修改初始列表O和列表I。
[0056]視頻編碼器可用信號發(fā)出指示DPB中的參考圖像的識別符的語法元素,且視頻編碼器還可在列表O、列表I或列表O與列表I兩者內用信號發(fā)出包含索引的語法元素,所述索引指示哪一參考圖像或哪些參考圖像將用以解碼當前圖像的經譯碼塊。反過來,視頻解碼器使用所接收識別符識別列表O、列表I或列表O與列表I兩者中所列出的一個或一個以上參考圖像的一個或一個以上索引值。根據(jù)所述一個或一個以上參考圖像的(多個)索引值以及(多個)識別符,視頻解碼器從DPB中檢索所述一個或一個以上參考圖像或所述一個或一個以上參考圖像的部分,且基于所述一個或一個以上所檢索的參考圖像和一個或一個以上運動向量而解碼當前圖像的經譯碼塊,所述一個或一個以上運動向量識別所述一個或一個以上參考圖像內用于解碼經譯碼塊的塊。
[0057]舉例來說,用于經雙向預測圖像的第一參考圖像列表或第二參考圖像列表的參考圖像列表構造包含兩個步驟:參考圖像列表初始化及參考圖像列表修改(還被稱作參考圖像列表重新排序)。參考圖像列表初始化可為隱含式機制,其基于圖像序列號次序(PictureOrder Count,P0C,與圖像的顯示次序對準)值將參考圖像存儲器(還被稱為已解碼圖像緩沖器)中的參考圖像置于列表中。參考圖像列表重新排序機制可將在參考圖像列表初始化期間置于列表中的圖像的位置修改成任何新位置,或甚至在圖像并不屬于初始化的列表的情況下,將參考圖像存儲器中的任何參考圖像置于任何位置中。在參考圖像列表重新排序(修改)之后,一些圖像可能置于列表中非常遠的位置中。然而,如果圖像的位置超過列表的有效參考圖像的數(shù)目,那么所述圖像將不被視為最終參考圖像列表的條目??稍诿恳涣斜淼那衅瑯祟^中用信號發(fā)出列表的有效參考圖像的數(shù)目。[0058]本發(fā)明中所描述的技術可適用于各種視頻譯碼標準。視頻譯碼標準的實例包含ITU-T H.26UIS0 / IEC MPEG-1視頻、ITU-T H.262或ISO / IEC MPEG-2視頻、ITU-TH.263、ISO / IEC MPEG-4視頻以及ITU-T H.264(還被稱為ISO / IEC MPEG-4AVC),包含其可調式視頻譯碼(SVC)和多視角視頻譯碼(MVC)擴展。另外,存在新的視頻譯碼標準,即,高效率視頻譯碼(HEVC),其是由ITU-T視頻譯碼專家組(VCEG)和ISO / IEC動畫專家組(MPEG)的視頻譯碼聯(lián)合協(xié)作小組(JCT-VC)開發(fā)。
[0059]僅為了說明的目的,在HEVC標準的上下文中描述技術。從2012年7月20日時起,可從 http: / / phenix.1nt_evry.fr/jct / doc_end_user / documents / 10_Stockholm / wgll / JCTVC-J1003-v8.zip得到HEVC的最新工作草案(WD)(且在下文中被稱作 HEVC WD8)。
[0060]如上文所描述,本發(fā)明中所描述的技術可解決可能存在于用于已解碼圖像緩沖器(DPB)管理的現(xiàn)有解決方案中的問題。作為一個實例,在本發(fā)明中所描述的一些實例技術中,可能不需要作為“不用于參考”的參考圖像的標記。舉例來說,本發(fā)明中所描述的技術可解決以下各問題:與無法良好地適合時間可調性的DPB管理技術有關的問題、與長期參考圖像的發(fā)信號耗用有關的問題、與參考圖像列表初始化及修改的效率和復雜性有關的問題。本發(fā)明中所描述的技術還可解決以下各問題:與參考圖像列表初始化期間的參考圖像列表中的非完成條目的“無參考圖像”的標記有關的問題;與已解碼圖像輸出、到DPB中的插入及來自DPB的去除有關的問題;以及與圖像序列號(POC)值的可能值有關的問題。
[0061]根據(jù)本發(fā)明中所描述的技術,從參考圖像集構造參考圖像列表。參考圖像集經定義為與圖像相關聯(lián)的參考圖像集合,其由在解碼次序上在相關聯(lián)的圖像之前的所有參考圖像組成,其可用于對相關聯(lián)的圖像中的塊或對在解碼次序上在相關聯(lián)的圖像之后的任何圖像進行巾貞間預測,例如,直到下一瞬時解碼刷新(instantaneous decoding refresh, I DR)圖像或斷鏈接入(broken link access,BLA)圖像為止。換句話說,參考圖像集中的參考圖像可能需要以下特性:(I)其在解碼次序上全部在當前圖像之前,以及(2)其可用于對當前圖像進行幀間預測及/或對在解碼次序上在當前圖像之后的任何圖像進行幀間預測,且在一些實例中,直到下一 IDR圖像或BLA圖像為止??赡艽嬖陉P于參考圖像集的其它替代定義,下文提供所述其它替代定義。
[0062]在本發(fā)明中所描述的實例技術中,視頻譯碼器可導出參考圖像集,且在此導出之后,視頻譯碼器可構造參考圖像列表。舉例來說,僅參考圖像集中的參考圖像可為用以構造參考圖像列表的候選參考圖像。
[0063]為了構造參考圖像集,視頻譯碼器可構造多個參考圖像子集。參考圖像子集的組合可一起形成參考圖像集。舉例來說,視頻編碼器可在經譯碼位流中顯式地用信號發(fā)出允許視頻解碼器確定用于包含在參考圖像集中的參考圖像的識別符的值。舉例來說,參考圖像的識別符可為圖像序列號。每一圖像與一個圖像序列號(被稱作PicOrderCnt)相關聯(lián)。PicOrderCnt指示相對于解碼次序上的先前IDR圖像的對應圖像的輸出次序或顯示次序,且,在一些其它替代例中,指示相對于相同經譯碼視頻序列中的其它圖像的輸出次序位置的相關聯(lián)的圖像的輸出次序位置。
[0064]PicOrderCnt可被稱作圖像序列號(POC)值。POC值可指示圖像的輸出或顯示次序,且可用以識別圖像。舉例來說,在經譯碼視頻序列內,具有較小POC值的圖像比具有較大POC值的圖像早輸出或顯示。
[0065]視頻解碼器可確定用于參考圖像的識別符,且從這些識別符構造所述多個參考圖像子集。根據(jù)這些參考圖像子集,視頻解碼器可導出參考圖像集,如下文更詳細描述。在一些實例中,參考圖像子集中的每一者包含不同參考圖像,這是因為所述參考圖像子集中的參考圖像不存在重疊。以此方式,參考圖像中的每一者可能僅在參考圖像子集中的一者中,且不在任何其它參考圖像子集中。然而,本發(fā)明的方面不應被視為受此限制。
[0066]在確定參考圖像集或參考圖像集的子集中的參考圖像的識別符(例如,POC值)之后,視頻解碼器可構造參考圖像子集。如下文更詳細描述,視頻解碼器可構造六個參考圖像子集,但視頻解碼器可能有可能構造更多或更少個參考圖像子集。
[0067]這些六個參考圖像子集命名為:RefPicSetStCurrO、RefPicSetStCurrKRefPicSetStFollO、RefPicSetStFol11、RefPicSetLtCurr,和 RefPicSetLtFolI。RefPicSetStCurrO參考圖像子集可被稱作RefPicSetStCurrBefore參考圖像子集,且RefPicSetStCurrI參考圖像子集可被稱作RefPicSetStCurrAfter參考圖像子集。
[0068]RefPicSetStCurrO、RefPicSetStCurr1、RefPicSetStFollO 和 RefPicSetStFolll參考圖像子集可識別短期參考圖像。在一些實例中,這些參考圖像子集可基于以下各者而識別短期參考圖像:短期參考圖像是在顯示次序上比正被譯碼的當前圖像早還是在顯示次序上比正被譯碼的當前圖像遲,以及短期參考圖像是否可潛在地用于對當前圖像及在解碼次序上在當前圖像之后的圖像進行幀間預測,或是否可潛在地用于僅對在解碼次序上在當前圖像之后的圖像進行幀間預測。
[0069]舉例來說,RefPicSetStCurrO參考圖像子集可包含(且可僅包含)滿足以下情形的所有短期參考圖像的識別信息(例如,POC值):具有比當前圖像的輸出或顯示次序早的輸出或顯示次序,且可潛在地用于在當前圖像的幀間預測中供參考,且可潛在地用于在解碼次序上在當前圖像之后的一個或一個以上圖像的幀間預測中供參考。RefPicSetStCurrl參考圖像子集可包含(且可僅包含)滿足以下情形的所有短期參考圖像的識別信息:具有比當前圖像的輸出或顯示次序遲的輸出或顯示次序,且可潛在地用于在當前圖像的幀間預測中供參考,且可潛在地用于在解碼次序上在當前圖像之后的一個或一個以上圖像的幀間預測中供參考。
[0070]RefPicSetStFollO參考圖像子集可包含(且可僅包含)滿足以下情形的所有短期參考圖像的識別信息:具有比當前圖像的輸出或顯示次序早的輸出或顯示次序,可潛在地用于在解碼次序上在當前圖像之后的一個或一個以上圖像的幀間預測中供參考,且無法用于在當前圖像的幀間預測中供參考。RefPicSetStFolll參考圖像子集可包含(且可僅包含)滿足以下情形的所有短期參考圖像的識別信息:具有比當前圖像的輸出或顯示次序遲的輸出或顯示次序,可潛在地用于在解碼次序上在當前圖像之后的一個或一個以上圖像的幀間預測中供參考,且無法用于在當前圖像的幀間預測中供參考。
[0071]RefPicSetLtCurr和RefPicSetLtFoll參考圖像子集可識別長期參考圖像。在一些實例中,這些參考圖像子集可基于長期參考圖像是在顯示次序上比正被譯碼的當前圖像早還是在顯示次序上比正被譯碼的當前圖像遲,識別長期參考圖像。
[0072]舉例來說,RefPicSetLtCurr參考圖像子集可包含(且可僅包含)滿足以下情形的所有長期參考圖像的識別信息:可潛在地用于在當前圖像的幀間預測中供參考,且可潛在地用于在解碼次序上在當前圖像之后的一個或一個以上圖像的幀間預測中供參考。RefPicSetLtF0Il參考圖像子集可包含(且可僅包含)滿足以下情形的所有長期參考圖像的識別信息:可潛在地用于在解碼次序上在當前圖像之后的一個或一個以上圖像的幀間預測中供參考,且無法用于在當前圖像的幀間預測中供參考。
[0073]在構造參考圖像子集之后,視頻解碼器可將所述參考圖像子集以不同次序排序以導出參考圖像集。作為一個實例,參考圖像集的次序可為RefPicSetStCurrO、RefPicSetSetCurrI > RefPicSetFollO、RefPicSetFol11、RefPicSetLtCurr,及RefPicSetLtFoll0然而,所述子集的其它排序可能有可能導出參考圖像集。舉例來說,作為另一實例,參考圖像集的次序可為Ref Pi CSetStCurrO參考圖像子集、后接續(xù)有RefPicSetStCurrl參考圖像集、后接續(xù)有RefPicSetLtCurr參考圖像子集、后接續(xù)有RefPicSetStFollO參考圖像子集、后接續(xù)有RefPicSetFolll參考圖像子集,且后接續(xù)有RefPicSetLtFoll參考圖像子集。
[0074]根據(jù)本發(fā)明中所描述的技術,RefPicSetStCurrO、RefPicSetStCurrl和RefPicSetLtCurr子集包含可用于當前圖像中的塊的巾貞間預測中且可用于在解碼次序上在當前圖像之后的圖像中的一者或一者以上的幀間預測中的所有參考圖像。RefPicSetStFollO,RefPicSetStFolll 和 RefPicSetLtFoll 子集包含不用于當前圖像中的塊的幀間預測中而可用于在解碼次序上在當前圖像之后的圖像中的一者或一者以上的幀間預測中的所有參考圖像。
[0075]應理解,僅用于說明目的而描述六個參考圖像子集,且所述情形不應被視為限制性的。在替代實例中,可能存在更多或更少個參考圖像子集。下文更詳細描述在這些替代實例中的這些參考圖像子集。
[0076]在這些揭示內容中所描述的一些技術中,視頻解碼器可能不需要將已解碼圖像標記為“用于參考”、“不用于參考”、“用于短期參考”或“用于長期參考”。而是,存儲在DPB中的已解碼圖像是否需要進行幀間預測是通過其是否包含在當前圖像的參考圖像集中來指示。在替代實例中,視頻解碼器可能有可能將已解碼圖像標記為“用于參考”、“不用于參考”、“用于短期參考”或“用于長期參考”。在這些實例中,在視頻解碼器解碼圖像之后,所述已解碼圖像為參考圖像且經標記為“用于參考”。然后,在調用用于參考圖像集導出的過程之后,在來自DPB的已解碼圖像的可能的去除之前,將存儲在DPB中但不包含在當前圖像的參考圖像集中的所有參考圖像標記為“不用于參考”。因此,存儲在DPB中的已解碼圖像是否需要進行幀間預測可通過其是否經標記為“用于參考”來指示。
[0077]一旦視頻解碼器從所述多個參考圖像子集導出參考圖像集,視頻解碼器便可從參考圖像集構造參考圖像列表(例如,列表O和列表I)。舉例來說,參考圖像列表的構造可包含初始化步驟及可能的修改步驟。通過以上文所描述的方式導出參考圖像集,視頻解碼器可能能夠改善參考圖像列表初始化及參考圖像列表修改的效率且降低參考圖像列表初始化及參考圖像列表修改的復雜性。
[0078]可能存在視頻解碼器可借以構造參考圖像列表的各種方式。本發(fā)明中所描述的技術提供一種機制,視頻解碼器可通過所述機制構造參考圖像列表,而不需要將待包含在(初始)參考圖像列表中的參考圖像重新排序。舉例來說,視頻解碼器可經配置以實施默認參考列表構造技術,其中視頻解碼器利用參考圖像子集構造初始參考圖像列表。然后,如果不需要參考圖像列表修改,那么最終參考圖像列表可與初始參考圖像列表相同,而不需要參考圖像列表的任何額外重新排序。
[0079]在一些實例中,本發(fā)明中所描述的技術可關于以不存在非完成條目的方式構造參考圖像列表。舉例來說,所述技術可重復地將來自參考圖像子集中的一者或一者以上的參考圖像添加到參考圖像列表。舉例來說,在視頻解碼器添加來自用于構造初始參考圖像列表的參考圖像子集中的一者或一者以上的參考圖像之后,視頻解碼器可確定參考圖像列表中的條目的數(shù)目是否小于條目的最大可允許數(shù)目。如果參考圖像列表中的條目的數(shù)目小于條目的可允許數(shù)目的最大數(shù)目,那么視頻解碼器可在參考圖像列表中重新添加來自用以構造參考圖像列表的參考圖像子集中的一者的參考圖像中的至少一者。參考圖像的此重新添加(還被稱作重新列出)可發(fā)生于參考圖像列表內不同于由視頻解碼器首先添加參考圖像的位置的位置處。
[0080]如本發(fā)明中所使用,重新列出或重新添加指在初始參考圖像列表中再次添加(例如,再次識別)先前已添加(例如,已識別)的參考圖像。然而,當重新添加參考圖像時,參考圖像可位于初始參考圖像列表中的兩個不同條目處。換句話說,當重新添加參考圖像時,可能存在識別相同參考圖像的到初始參考圖像列表中的兩個索引值。
[0081]在一些實例中,本發(fā)明中所描述的技術可關于修改初始參考圖像列表。舉例來說,視頻解碼器可構造初始參考圖像列表。視頻解碼器可基于由視頻編碼器在經譯碼位流中用信號發(fā)出的語法元素而確定需要參考圖像列表修改。當需要參考圖像列表修改時,視頻解碼器可識別所構造的參考圖像子集中的至少一者中的參考圖像。視頻解碼器可在初始參考圖像列表的當前條目中列出(例如,添加)所識別的參考圖像以構造修改的參考圖像列表。視頻解碼器可然后基于修改的參考圖像列表而解碼當前圖像。
[0082]在一些實例中,本發(fā)明中所描述的技術可關于從已解碼圖像緩沖器(DPB)輸出及去除已解碼圖像。所述實例技術可在譯碼當前圖像之前將已解碼圖像從DPB中去除。舉例來說,如果所述已解碼圖像在當前圖像的參考圖像集中未加以識別且如果所述已解碼圖像不需要輸出(即,已解碼圖像不希望輸出或已解碼圖像希望輸出但已經輸出),那么實例技術可去除所述已解碼圖像。
[0083]圖1為說明可利用本發(fā)明中所描述的技術的實例視頻編碼及解碼系統(tǒng)10的框圖。一股來說,參考圖像集經定義為與圖像相關聯(lián)的參考圖像集合,其由在解碼次序上在相關聯(lián)的圖像之前的所有參考圖像組成,其可用于對相關聯(lián)的圖像或對在解碼次序上在相關聯(lián)的圖像之后的任何圖像進行幀間預測。在一些實例中,在相關聯(lián)的圖像之前的參考圖像可為直到下一瞬時解碼刷新(IDR)圖像或斷鏈接入(BLA)圖像為止的參考圖像。換句話說,參考圖像集中的參考圖像可能在解碼次序上全部在當前圖像之前。而且,參考圖像集中的參考圖像可用于對當前圖像進行幀間預測及/或對在解碼次序上在當前圖像之后的任何圖像進行幀間預測,直到下一 IDR圖像或BLA圖像為止。
[0084]可能存在參考圖像集的其它替代定義。舉例來說,參考圖像集可為與圖像相關聯(lián)的參考圖像集合,其由滿足以下情形的所有參考圖像(排除相關聯(lián)的圖像自身)組成:可用于對相關聯(lián)的圖像或對在解碼次序上在相關聯(lián)的圖像之后的任何圖像進行幀間預測,且具有小于或等于相關聯(lián)的圖像的temporal_id的temporal_id。temporal_id可為時間識別值。時間識別值可為指示哪些圖像可用于譯碼當前圖像的階層值。一股來說,具有特定temporal_id值的圖像可能有可能為用于具有相等或較大temporal_id值的圖像的參考圖像,但反過來不成立。舉例來說,具有temporal_id值I的圖像可能有可能為用于具有
temporal」d值1、2、3,......的圖像的參考圖像,但不可能為用于具有temporal_id值O的
圖像的參考圖像。
[0085]最低temporal_id值還可指示最低顯示率。舉例來說,如果視頻解碼器僅解碼具有temporal_id值O的圖像,那么顯示率可為7.5個圖像/秒。如果視頻解碼器僅解碼具有temporal_id值O和I的圖像,那么顯示率可為15個圖像/秒,等等。
[0086]作為另一實例,參考圖像集可為與圖像相關聯(lián)的參考圖像集合,其由滿足以下情形的所有參考圖像(排除相關聯(lián)的圖像自身)組成:可用于對相關聯(lián)的圖像或對在解碼次序上在相關聯(lián)的圖像之后的任何圖像進行幀間預測。作為又一實例,參考圖像集可經定義為與圖像相關聯(lián)的參考圖像集合,其由滿足以下情形的所有參考圖像(有可能包含相關聯(lián)的圖像自身)組成:可用于對相關聯(lián)的圖像或對在解碼次序上在相關聯(lián)的圖像之后的任何圖像進行幀間預測。作為另一實例,參考圖像集可經定義為與圖像相關聯(lián)的參考圖像集合,其由滿足以下情形的所有參考圖像(有可能包含相關聯(lián)的圖像自身)組成:可用于對相關聯(lián)的圖像或對在解碼次序上在相關聯(lián)的圖像之后的任何圖像進行幀間預測,且具有小于或等于相關聯(lián)的圖像的temporal_id的temporal_id。
[0087]作為又一實例,在參考圖像集的上述定義中,用“用于進行幀間預測”替換短語“可用于進行幀間預測”。盡管可能存在參考圖像集的替代定義,但在本發(fā)明中,描述具有參考圖像集的以下定義的實例:參考圖像集為與圖像相關聯(lián)的參考圖像集合,其由在解碼次序上在相關聯(lián)的圖像之前的所有參考圖像組成,其可用于對相關聯(lián)的圖像或對在解碼次序上在相關聯(lián)的圖像之后的任何圖像進行幀間預測。
[0088]舉例來說,參考圖像集中的參考圖像中的一些參考圖像為可潛在地用以對當前圖像的塊進行幀間預測且無法對在解碼次序上在當前圖像之后的圖像進行幀間預測的參考圖像。參考圖像集中的參考圖像中的一些參考圖像為可潛在地用以對當前圖像的塊及對在解碼次序上在當前圖像之后的一個或一個以上圖像中的塊進行幀間預測的參考圖像。參考圖像集中的參考圖像中的一些參考圖像為可潛在地用以對在解碼次序上在當前圖像之后的一個或一個以上圖像中的塊進行幀間預測且無法用以對當前圖像中的塊進行幀間預測的參考圖像。
[0089]如本發(fā)明中所使用,可潛在地用于進行幀間預測的參考圖像是指可用于進行幀間預測的參考圖像,但未必必須用于進行幀間預測。舉例來說,參考圖像集可識別可潛在地用于進行幀間預測的參考圖像。然而,此情形并不意味著所有所識別的參考圖像必須用于進行幀間預測。而是,這些所識別的參考圖像中的一者或一者以上可用于進行幀間預測,但全部未必必須用于進行幀間預測。
[0090]如圖1中所展示,系統(tǒng)10包含源裝置12,其產生經編碼視頻以用于由目的地裝置14解碼。源裝置12和目的地裝置14可各自為視頻譯碼裝置的實例。源裝置12可經由通信信道16將經編碼視頻傳輸?shù)侥康牡匮b置14或可將經編碼視頻存儲在存儲媒體17或文件服務器19上,以使得經編碼視頻可由目的地裝置14視需要存取。
[0091]源裝置12和目的地裝置14可包括廣泛范圍的裝置中的任一者,包含例如所謂的“智能型”手機、所謂的“智能型”墊等無線手機,或經裝備以用于無線通信的其它此類無線裝置。源裝置12和目的地裝置14的額外實例包含(但不限于)數(shù)字電視、數(shù)字直播系統(tǒng)中的裝置、無線廣播系統(tǒng)中的裝置、個人數(shù)字助理(PDA)、膝上型計算機、桌上型計算機、平板計算機、電子書閱讀器、數(shù)字攝像機、數(shù)字記錄裝置、數(shù)字媒體播放器、視頻游戲裝置、視頻游戲控制臺、蜂窩式無線電電話、衛(wèi)星無線電電話、視頻電信會議裝置,及視頻流裝置、無線通信裝置,或其類似者。
[0092]如上文所指示,在許多情況下,源裝置12和/或目的地裝置14可經裝備以用于無線通信。因此,通信信道16可包括無線信道、有線信道或適合于傳輸經編碼視頻數(shù)據(jù)的無線和有線信道的組合。類似地,文件服務器19可由目的地裝置14通過任何標準數(shù)據(jù)連接(包含互聯(lián)網連接)存取。此數(shù)據(jù)連接可包含適合于存取存儲在文件服務器上的經編碼視頻數(shù)據(jù)的無線信道(例如,W1-Fi連接)、有線連接(例如,DSL、電纜調制解調器,等等),或無線信道與有線連接兩者的組合。
[0093]然而,本發(fā)明的技術可適用于支持多種多媒體應用中的任一者的視頻譯碼,多種多媒體應用例如空中電視廣播、有線電視傳輸、衛(wèi)星電視傳輸、流式視頻傳輸(例如,經由互聯(lián)網)、編碼數(shù)字視頻以用于存儲在數(shù)據(jù)存儲媒體上、解碼存儲在數(shù)據(jù)存儲媒體上的數(shù)字視頻,或其它應用。在一些實例中,系統(tǒng)10可經配置以支持單向或雙向視頻傳輸以支持例如視頻流傳輸、視頻播放、視頻廣播和/或視頻電話等應用。
[0094]在圖1的實例中,源裝置12包含視頻源18、視頻編碼器20、調制器/解調器(調制解調器)22和輸出接口 24。在源裝置12中,視頻源18可包含例如以下各者等源:視頻俘獲裝置(例如,視頻攝像機)、含有先前所俘獲的視頻的視頻存檔、接收來自視頻內容提供者的視頻的視頻饋入接口,和/或用于產生計算機圖形數(shù)據(jù)作為源視頻的計算機圖形系統(tǒng),或此類源的組合。作為一個實例,如果視頻源18為視頻攝像機,那么源裝置12與目的地裝置14可形成所謂的攝像機電話或視頻電話。然而,一股來說,本發(fā)明中所描述的技術可適用于視頻譯碼,且可應用于無線和/或有線應用。
[0095]可由視頻編碼器20來編碼所俘獲的、預先俘獲的或計算機產生的視頻??捎烧{制解調器22根據(jù)通信標準(例如,無線通信協(xié)議)來調制經編碼視頻信息,且經由輸出接口24將經編碼視頻信息傳輸?shù)侥康牡匮b置14。調制解調器22可包含各種混頻器、濾波器、放大器或經設計以用于信號調制的其它組件。輸出接口 24可包含經設計以用于傳輸數(shù)據(jù)的電路,包含放大器、濾波器,和一個或一個以上天線。
[0096]由視頻編碼器20編碼的所俘獲的、預先俘獲的或計算機產生的視頻還可存儲到存儲媒體17或文件服務器19上以供稍后消耗。存儲媒體17可包含藍光(Blu-ray)光盤、DVD、CD-ROM、快閃存儲器或用于存儲經編碼視頻的任何其它合適的數(shù)字存儲媒體。存儲在存儲媒體17上的經編碼視頻可然后由目的地裝置14存取以用于解碼及播放。
[0097]文件服務器19可為能夠存儲經編碼視頻且將所述經編碼視頻傳輸?shù)侥康牡匮b置14的任何類型的服務器。實例文件服務器包含網絡服務器(例如,用于網站)、FTP服務器、網絡附接存儲器(NAS)裝置、本地磁盤驅動器,或能夠存儲經編碼視頻數(shù)據(jù)且將經編碼視頻數(shù)據(jù)傳輸?shù)侥康牡匮b置的任何其它類型的裝置。來自文件服務器19的經編碼視頻數(shù)據(jù)的傳輸可為流式傳輸、下載傳輸或流式傳輸與下載傳輸兩者的組合。文件服務器19可由目的地裝置14通過任何標準數(shù)據(jù)連接(包含互聯(lián)網連接)存取。此標準數(shù)據(jù)連接可包含適合于存取存儲在文件服務器上的經編碼視頻數(shù)據(jù)的無線信道(例如,W1-Fi連接)、有線連接(例如,DSL、電纜調制解調器、以太網、USB等),或無線信道與有線連接的組合。
[0098]在圖1的實例中,目的地裝置14包含輸入接口 26、調制解調器28、視頻解碼器30,和顯示裝置32。目的地裝置14的輸入接口 26經由信道16接收信息(作為一個實例),或從存儲媒體17或文件服務器17接收信息(作為替代實例),且調制解調器28解調所述信息以產生用于視頻解碼器30的經解調的位流。經解調的位流可包含由視頻編碼器20產生以供視頻解碼器30在解碼視頻數(shù)據(jù)中使用的多種語法信息。此語法還可包含在存儲在存儲媒體17或文件服務器19上的經編碼視頻數(shù)據(jù)內。作為一個實例,語法可嵌入于經編碼視頻數(shù)據(jù)內,但本發(fā)明的方面不應被視為限于此要求。由視頻編碼器20定義且還供視頻解碼器30使用的語法信息可包含描述視頻塊的特性和/或處理的語法元素,視頻塊例如譯碼樹單元(CTU)、譯碼樹塊(CTB)、預測單元(W)、譯碼單元(CU),或經譯碼視頻的其它單元,例如,視頻切片、視頻圖像和視頻序列或圖像組(GOP)。視頻編碼器20和視頻解碼器30中的每一者可形成能夠編碼或解碼視頻數(shù)據(jù)的相應編碼器-解碼器(CODEC)的部分。
[0099]顯示裝置32可與目的地裝置14集成或在目的地裝置14外部。在一些實例中,目的地裝置14可包含集成顯示裝置,且還經配置以與外部顯示裝置介接。在其它實例中,目的地裝置14可為顯示裝置。一股來說,顯示裝置32向用戶顯示已解碼視頻數(shù)據(jù),且可包括多種顯示裝置中的任一者,例如,液晶顯示器(LCD)、等離子顯示器、有機發(fā)光二極管(OLED)顯示器或另一類型的顯示裝置。
[0100]在圖1的實例中,通信信道16可包括任何無線或有線通信媒體,例如,射頻(RF)頻譜或一個或一個以上物理傳輸線,或無線和有線媒體的任何組合。通信信道16可形成基于包的網絡(例如,局域網、廣域網,或例如互聯(lián)網等全球網絡)的部分。通信信道16—股表示用于將視頻數(shù)據(jù)從源裝置12傳輸?shù)侥康牡匮b置14的任何合適的通信媒體或不同通信媒體的集合,包含有線或無線媒體的任何合適組合。通信信道16可包含路由器、交換器、基站,或可用于促進從源裝置12到目的地裝置14的通信的任何其它裝備。
[0101]視頻編碼器20和視頻解碼器30可根據(jù)視頻壓縮標準操作,視頻壓縮標準例如包含 ITU-T H.261、ISO / IEC MPEG-1 視頻、ITU-T H.262 或 ISO / IEC MPEG-2 視頻、ITU-TH.263.1S0 / IEC MPEG-4 視頻和 ITU-T H.264 (還被稱為 ISO / IEC MPEG-4AVC),包含其可調式視頻譯碼(SVC)和多視角視頻譯碼(MVC)擴展。另外,存在新的視頻譯碼標準,SP,高效率視頻譯碼(HEVC)標準,其目前正由ITU-T視頻譯碼專家組(VCEG)和ISO / IEC動畫專家組(MPEG)的視頻譯碼聯(lián)合協(xié)作小組(JCT-VC)開發(fā)。從2012年7月20日時起,可從http: / / phenix.1nt_evry.fr/jct / doc_end_user / documents / 10_Stockholm /wgll / JCTVC-J1003-v8.zip得到HEVC的最新工作草案(WD)(且在下文中被稱作HEVCWD8)。
[0102]然而,本發(fā)明的技術不限于任何特定譯碼標準。僅為了說明的目的,根據(jù)HEVC標準描述技術。
[0103]雖然圖1中未展示,但在一些方面中,視頻編碼器20和視頻解碼器30可各自與一音頻編碼器和解碼器集成,且可包含適當MUX-DEMUX單元或其它硬件和軟件,以處置共同數(shù)據(jù)流或單獨數(shù)據(jù)流中的音頻與視頻兩者的編碼。如果可適用,那么MUX-DEMUX單元可遵守ITU H.223多路復用器協(xié)議,或例如用戶數(shù)據(jù)報協(xié)議(UDP)等其它協(xié)議。
[0104]視頻編碼器20和視頻解碼器30各自可實施為多種合適編碼器電路中的任一者,合適編碼器電路例如一個或一個以上處理器(包含微處理器)、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)、離散邏輯、軟件、硬件、固件或其任何組合。當所述技術部分地在軟件中實施時,裝置可將用于軟件的指令存儲在合適的非暫時性計算機可讀媒體中,且在硬件中使用一個或一個以上處理器來執(zhí)行所述指令以執(zhí)行本發(fā)明的技術。
[0105]視頻編碼器20和視頻解碼器30中的每一者可包含在一個或一個以上編碼器或解碼器中,視頻編碼器20和視頻解碼器30中的任一者可集成為相應裝置中的組合式編碼器/解碼器(CODEC)的部分。在一些實例中,視頻編碼器20和視頻解碼器30可共同地被稱作譯碼信息(例如,圖像和語法元素)的視頻譯碼器。當視頻譯碼器對應于視頻編碼器20時,信息的譯碼可指編碼。當視頻譯碼器對應于視頻解碼器30時,信息的譯碼可指解碼。
[0106]此外,本發(fā)明中所描述的技術可指視頻編碼器20用信號發(fā)出信息。當視頻編碼器20用信號發(fā)出信息時,本發(fā)明的技術一股指視頻編碼器20借以提供信息的任何方式。舉例來說,當視頻編碼器20將語法元素用信號發(fā)出到視頻解碼器30時,可能意味著:視頻編碼器20經由輸出接口 24和通信信道16將語法元素傳輸?shù)揭曨l解碼器30,或視頻編碼器20經由輸出接口 24將語法元素存儲在存儲媒體17和/或文件服務器19上以供視頻解碼器30最終接收。以此方式,從視頻編碼器20到視頻解碼器30的發(fā)信號不應被解釋為需要來自視頻編碼器20的立即由視頻解碼器30接收的傳輸,但此情形可能為有可能的。而是,從視頻編碼器20到視頻解碼器30的發(fā)信號應被解釋為視頻編碼器20借以提供用于供視頻解碼器30直接地或經由中間存儲器(例如,在存儲媒體17和/或文件服務器19中)最終接收的信息的任何技術。
[0107]視頻編碼器20和視頻解碼器30可經配置以實施本發(fā)明中所描述的用于導出參考圖像集的實例技術。舉例來說,視頻解碼器30可每一圖像調用一次用以導出參考圖像集的過程。視頻解碼器30可在解碼切片標頭之后但在解碼任何譯碼單元之前且在用于切片的參考圖像列表構造的解碼過程之前,調用用以導出參考圖像集的過程。
[0108]如上文所描述,參考圖像集為關于參考圖像的絕對描述,所述參考圖像用于當前圖像及解碼次序上的未來經譯碼圖像的解碼過程中,直到下一瞬時解碼刷新(IDR)圖像或斷鏈接入(BLA)圖像為止。在本發(fā)明中所描述的實例中,視頻編碼器20可顯式地用信號發(fā)出值,視頻解碼器30可從所述值確定用于屬于參考圖像集的參考圖像的識別符。在包含在參考圖像集中的所有參考圖像是顯式地列出(除了特定圖像,例如,IDR圖像)的意義上,參考圖像集發(fā)信號為顯式的,無參考圖像集語法元素包含在切片標頭中且參考圖像集經導出為空。
[0109]可能存在視頻編碼器20可借以在經譯碼位流中用信號發(fā)出語法元素的各種方式,視頻解碼器30可利用所述語法元素導出參考圖像集。舉例來說,視頻編碼器20可在圖像參數(shù)集(PPS)、序列參數(shù)集(SPS)、圖像標頭(如果存在的話)、切片標頭或其任何組合中用信號發(fā)出語法元素。僅為了說明的目的,視頻編碼器20可使用SPS、PPS和切片標頭用信號發(fā)出語法元素,如更詳細描述。
[0110]為了導出參考圖像集,視頻解碼器30可實施解碼過程以確定用于屬于參考圖像集的圖像的識別符。視頻解碼器30可然后構造多個參考圖像子集,其中所述子集中的每一者識別屬于參考圖像集的參考圖像中的零者或多者。視頻解碼器30可從所構造的參考圖像子集導出參考圖像集。舉例來說,視頻解碼器30可以特定次序列出所述多個參考圖像子集以導出參考圖像集。
[0111]可能存在視頻解碼器30可借以確定用于屬于參考圖像集的圖像的識別符的各種方式。一股來說,視頻編碼器20可用信號發(fā)出值,視頻解碼器30可從所述值確定用于圖像(包含屬于參考圖像集的圖像)的識別符。圖像的識別符可為PicOrderCnt (即,圖像序列號(POC)值)。如上文所描述,POC值可指示圖像的顯示或輸出次序,其中具有較小POC值的圖像比具有較大POC值的圖像早顯示。給定圖像的POC值可相對于先前瞬時解碼刷新(IDR)圖像來說。舉例來說,IDR圖像的PicOrderCnt (即,POC值)可為0,在顯示或輸出次序上在IDR圖像之后的圖像的POC值可為I,在顯示或輸出次序上在具有POC值I的圖像之后的POC值可為2,等等。
[0112]根據(jù)本發(fā)明中所描述的技術,在當前圖像并不是IDR圖像時,下文可適用于導出當前圖像的POC值。下文希望輔助理解,且不應被視為限制性的。
[0113]舉例來說,考慮列表變量listD,列表變量IistD包含與包含所有以下各者的圖像列表相關聯(lián)的PicOrderCnt值(P0C值)作為元素:(I)列表中的第一圖像為解碼次序上的先前IDR圖像,以及(2)所有其它圖像在解碼次序上在列表中的第一圖像之后且在解碼次序上先于當前圖像或者為當前圖像。在此實例中,在調用用于參考圖像集的導出過程之前,當前圖像包含在IistD中。而且,考慮列表變量listO,列表變量IistO包含以POC值的遞升次序排序的IistD的元素。在此實例中,IistO可能不含有具有等于另一圖像的POC值的值的POC值。
[0114]在一些實例中,POC值可限于-215°-1"1到(包含-2Ρ°^η_ι和的范圍。在此實例中,poc Len 可等于 long_term_ref_pic_id_len_delta+long_term_ref_pic_id_delta_len_minus4+4。 long_term_ref_pic_id_len_delta 和 long_term_ref_pic_id_delta_len_minus4可為視頻解碼器30在經譯碼位流中接收的作為圖像參數(shù)集語法的部分的語法元素,如下文更詳細描述。作為另一實例,POC值可限于-231到231-1 (包含-231和231-1)的范圍。
[0115]作為一個實例,視頻解碼器30可在經譯碼位流(即,由視頻編碼器20用信號發(fā)出的位流)中接收pic_order_cnt_lsb語法元素。pic_order_cnt_lsb語法元素可指定經譯碼圖像的圖像序列號模數(shù)MaxPicOrderCntLsb。pic_order_cnt_lsb語法元素的長度可為 log2_max_pic_order_cnt_lsb_minus4+4 位。pic_order_cnt_lsb 的值可在 O 至IjMaxPicOrderCntLsb-1 (包含O和MaxPicOrderCntLsb-Ι)的范圍內。視頻解碼器30可在待解碼的當前圖像的切片標頭語法中接收pic_order_cnt_lsb語法元素。
[0116]視頻解碼器30還可在由視頻編碼器20用信號發(fā)出的經譯碼位流中接收log2_max_pic_order_cnt_lsb_minus4語法元素。視頻解碼器30可在序列參數(shù)集中接收log2_max_pic_order_cnt_lsb_minus4 語法兀素。log2_max_pic_order_cnt_lsb_minu4 的值可在O到12 (包含O和12)的范圍內。log2_max_pic_order_cnt_lsb_minus4語法兀素可指定變量MaxPicOrderCntLsb的值,視頻解碼器30在用于確定POC值的解碼過程中使用變量MaxPicOrderCntLsb 的值。舉例來說:
[0117]MaxPic0rderCntLsb=2(log2-max-pic-order-cnt-lsb-minus4+4)。
[0118]根據(jù)這些所接收語法元素,視頻解碼器30可確定當前圖像的POC值如下。舉例來說,視頻解碼器30可確定用于當前圖像的PicOrderCntMsb。用于當前圖像的POC值可為用于當前圖像的所確定的PicOrderCntMsb加上用于當前圖像的所接收的pic_order_cnt_Isb0
[0119]在下文中,函數(shù)PicOrderCnt (picX)等于用于圖像X的POC值。函數(shù)DiffPicOrderCnt (picA, picB)等于 PicOrderCnt (picA)減去 PicOrderCnt (picB)。在一些實例中,經譯碼位流可能不包含產生用于解碼過程中的DiffPicOrderCnt (picA,picB)的超過-215到215-1(包含-215和215-1)的范圍的值的數(shù)據(jù)。此外,假設:X為當前圖像且Y和Z為相同序列中的兩個其它圖像,其中當DiffPicOrderCnt (X,Y)與DiffPicOrderCnt (X,Z)兩者為正或DiffPicOrderCnt (X,Y)與DiffPicOrderCnt (X,Z)兩者為負時,Y和Z被視為從X起的相同輸出次序方向。而且,在一些實例中,視頻編碼器20可指配與相對于先前IDR圖像的取樣時間的對應圖像的取樣時間成比例的PicOrderCnt。
[0120]作為確定用于當前圖像的POC值的過程的部分,視頻解碼器30可確定變量PrevPicOrderCntMsb和prevPicOrderCntLsb。舉例來說,如果當前圖像為IDR圖像,那么視頻解碼器30可將prevPicOrderCntMsb設置為等于0,且將prevPicOrderCntLsb設置為等于O。否則(即,在當前圖像并不是IDR圖像的情況下),視頻解碼器30可將prevPicOrderCntMsb設置為等于具有小于或等于當前圖像的temporal—id的temporal—id的解碼次序上的先前參考圖像的PicOrderCntMsb,且將prevPicOrderCntLsb設置為等于具有小于或等于當前圖像的temporal—id的temporal—id的解碼次序上的先前參考圖像的pic—order—cnt—Isb 的值。
[0121]通過這些變量值和語法元素的值(例如,prevPicOrderCntMsb、prevPicOrderCntLsb λ pic—order—cnt—Isb 和 MaxPicOrderCntLsb 的值),視頻解碼器 30 可基于以下偽碼中所闡述的步驟確定PicOrderCntMsb的值。應理解,視頻解碼器30可實施以下偽碼中所闡述的步驟,以確定用以導出當前圖像的POC值的用于每一當前圖像的PicOrderCntMsb。
[0122]if((pic_order_cnt_lsb<prevPicOrderCntLsb) & & ((prevPicOrderCntLsb-pic_order—cnt—Isb)>=(MaxPicOrderCntLsb / 2)))
[0123]Pic0rderCntMsb=prevPic0rderCntMsb+MaxPic0rderCntLsb
[0124]else if ((pic—order—cnt—lsb>prevPicOrderCntLsb) & & ((pic—order—cnt—Isb-prevPicOrderCntLsb)>(MaxPicOrderCntLsb / 2)))
[0125]PicOrderCntMsb=prevPicOrderCntMsb-MaxPicOrderCntLsbelse
[0126]Pic0rderCntMsb=prevPic0rderCntMsb
[0127]在確定用于當前圖像的PicOrderCntMsb之后,視頻解碼器30可基于用于當前圖像的PicOrderCntMsb和用于當前圖像的pic—order—cnt—Isb而確定用于當前圖像的POC值。視頻解碼器30可確定用于當前圖像的POC值如下:
[0128]Pic0rderCnt=PicOrderCntMsb+pic_order_cnt_l sb ο
[0129]在解碼圖像之后,視頻解碼器30可將用于所述圖像(包含屬于參考圖像集的參考圖像中的每一者)的PicOrderCntMsb值、pic—order—cnt—Isb值和POC值存儲在視頻解碼器30的已解碼圖像緩沖器(DPB)中。以此方式,DPB中的每一圖像與一 POC值、一PicOrderCntMsb 值和一 pic—order—cnt—Isb 值相關聯(lián)。[0130]下文更詳細描述用于確定包含在當前圖像的參考圖像集中的參考圖像的POC值的方法。根據(jù)所確定的POC值,視頻解碼器30可實施用于參考圖像集的導出過程。然而,在描述視頻解碼器30借以實施用于參考圖像集的導出過程的方式之前,下文提供視頻解碼器30可在由視頻編碼器20用信號發(fā)出的經譯碼位流中接收的語法元素的表格。舉例來說,視頻編碼器20可在視頻解碼器30接收的經譯碼位流中用信號發(fā)出以下表格中的語法元素。上文已描述了這些語法元素中的一些語法元素。根據(jù)所述語法元素,視頻解碼器30可確定包含在參考圖像集中的參考圖像的POC值且進一步導出參考圖像集。
[0131]舉例來說,在本發(fā)明中所描述的技術中,相對于先前視頻譯碼標準修改以下語法結構:序列參數(shù)集(SPS)原始字節(jié)序列有效載荷(RBSP)語法seq_paramater_set_rbsq()、圖像參數(shù)集(PPS)RBSP 語法 pic_parameter_set_rbsp O、切片標頭語法 slice_header O ,和參考圖像列表修改語法ref_pic_list_modification()。在導出參考圖像集及初始化一個或一個以上參考圖像列表的描述之后,更詳細地描述參考圖像列表修改。
[0132]而且,根據(jù)本發(fā)明中所描述的技術,將以下語法結構添加到經譯碼位流:短期參考圖像集語法short_term_ref_pic_set O ,和長期參考圖像集語法long_term_ref_pic_set O。視頻解碼器30可利用短期參考圖像集語法和長期參考圖像集語法,以用于構造參考圖像子集的目的,視頻解碼器30從所述參考圖像子集導出參考圖像集。
[0133]舉例來說,為了供視頻解碼器30確定用于屬于參考圖像集的參考圖像的POC值,視頻編碼器20可在圖像參數(shù)集中用信號發(fā)出視頻解碼器30用以確定POC值的參考圖像識別信息,且可在切片標頭中參考到列表的索引。然而,此方式為視頻編碼器20可借以用信號發(fā)出此參考圖像識別信息的一種實例方式。
[0134]在一個替代實例中,視頻編碼器20可在序列參數(shù)集中用信號發(fā)出參考圖像信息且可在切片標頭中參考到列表的索引,此情形可減少發(fā)信號耗用。在另一替代實例中,視頻譯碼器可在新類型的參數(shù)集(例如,參考圖像集參數(shù)集(RPSPS))中用信號發(fā)出參考圖像信息,且可在切片標頭中參考RPSPS id以及到參考圖像識別信息列表的索引兩者。此情形可減少發(fā)信號耗用以及不增加對圖像參數(shù)集或序列參數(shù)集的數(shù)目的需要。在其它實例中,視頻編碼器20可利用這些實例技術的任何組合來用信號發(fā)出參考圖像識別信息。
[0135]表1.序列參數(shù)集RBSP語法
[0136]
【權利要求】
1.一種用于譯碼視頻數(shù)據(jù)的方法,其包括: 譯碼指示屬于參考圖像集的參考圖像的信息,其中所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像; 構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及 基于所述多個參考圖像子集而譯碼所述當前圖像。
2.根據(jù)權利要求1所述的方法,其進一步包括: 從所述多個參考圖像子集導出所述參考圖像集, 其中譯碼所述當前圖像包括基于所述導出的參考圖像集而譯碼所述當前圖像。
3.根據(jù)權利要求1所述的方法,其中構造所述多個參考圖像子集包括構造至少五個參考圖像子集。
4.根據(jù)權利要求1所述的方法,其中構造所述多個參考圖像子集包括構造以下各者中的至少兩者: 第一參考圖像子集,其識別在解碼次序上在所述當前圖像之前及在輸出次序上在所述當前圖像之前且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的短期參考圖像; 第二參考圖像子集,其識別在解碼次序上在所述當前圖像之前及在輸出次序上在所述當前圖像之后且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的短期參考圖像; 第三參考圖像子集,其識別在解碼次序上在所述當前圖像之前且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的長期參考圖像;以及 第四參考圖像子集,其識別在解碼次序上在所述當前圖像之前且無法用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的長期參考圖像。
5.根據(jù)權利要求4所述的方法,其中構造所述多個參考圖像子集包括:至少構造所述第一參考圖像子集、所述第二參考圖像子集、所述第三參考圖像子集和所述第四參考圖像子集。
6.根據(jù)權利要求1所述的方法,其進一步包括: 譯碼指示所述多個參考圖像子集中的一者或一者以上中的參考圖像的數(shù)目的語法元素, 其中構造所述多個參考圖像子集包括基于指示所述多個參考圖像子集中的每一者中的參考圖像的所述數(shù)目的所述經譯碼語法元素,構造所述多個參考圖像子集中的所述一者或一者以上。
7.根據(jù)權利要求1所述的方法,其`中構造所述多個參考圖像子集包括構造所述多個參考圖像子集,以使得在所述參考圖像子集中的一者中識別的參考圖像在任何其他參考圖像子集中未加以識別。
8.根據(jù)權利要求1所述的方法,其進一步包括:基于所述多個參考圖像子集而構造第一參考圖像列表和第二參考圖像列表中的至少一者, 其中基于所述多個參考圖像子集而譯碼所述當前圖像包括基于所述第一參考圖像列表和所述第二參考圖像列表中的至少一者而譯碼所述當前圖像。
9.根據(jù)權利要求1所述的方法, 其中譯碼信息包括通過視頻解碼器解碼指示屬于所述參考圖像集的所述參考圖像的所述信息,其中所述參考圖像集識別可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像進行幀間預測的所述參考圖像, 其中構造包括通過所述視頻解碼器構造所述多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者,且 其中譯碼所述當前圖像包括通過所述視頻解碼器基于多個參考圖像子集而解碼所述當前圖像。
10.根據(jù)權利要求1所述的方法, 其中譯碼信息包括通過視頻編碼器編碼指示屬于所述參考圖像集的所述參考圖像的所述信息,其中所述參考圖像集識別可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像進行幀間預測的所述參考圖像, 其中構造包括通過所述視頻編碼器構造所述多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者,且 其中譯碼所述當前圖像包括通過所述視頻編碼器基于所述多個參考圖像子集而編碼所述當前圖像。
11.一種用于譯碼視頻數(shù)據(jù)的裝置,所述裝置包括視頻譯碼器,所述視頻譯碼器經配置以: 譯碼指示屬于參考圖像集的參考圖像的信息,其中所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像; 構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及 基于所述多個參考圖像子集而譯碼所述當前圖像。
12.根據(jù)權利要求11所述的裝置,其中所述視頻譯碼器經配置以: 從所述多個參考圖像子集導出所述參考圖像集, 其中為了譯碼所述當前圖像,所述視頻譯碼器經配置以基于所述導出的參考圖像集而譯碼所述當前圖像。
13.根據(jù)權利要求11所述的裝置,其中所述視頻譯碼器經配置以構造至少五個參考圖像子集。
14.根據(jù)權利要求11所述的裝置,其中所述視頻譯碼器經配置以構造以下各者中的至少兩者: 第一參考圖像子集,其識別在解碼次序上在所述當前圖像之前及在輸出次序上在所述當前圖像之前且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的短期參考圖像;第二參考圖像子集,其識別在解碼次序上在所述當前圖像之前及在輸出次序上在所述當前圖像之后且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的短期參考圖像; 第三參考圖像子集,其識別在解碼次序上在所述當前圖像之前且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的長期參考圖像;以及 第四參考圖像子集,其識別在解碼次序上在所述當前圖像之前且無法用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的長期參考圖像。
15.根據(jù)權利要求14所述的裝置,其中所述視頻譯碼器經配置以至少構造所述第一參考圖像子集、所述第二參考圖像子集、所述第三參考圖像子集和所述第四參考圖像子集。
16.根據(jù)權利要求11所述的裝置,其中所述視頻譯碼器經配置以: 譯碼指示所述多個參考圖像子集中的一者或一者以上中的參考圖像的數(shù)目的語法元素, 其中為了構造所述多個參考圖像子集中的所述一者或一者以上,所述視頻譯碼器經配置以基于指示所述多個參考圖像子集中的每一者中的參考圖像的所述數(shù)目的所述經譯碼語法元素,構造所述多個參考圖像子集中的所述一者或一者以上。
17.根據(jù)權利要求11所述的裝置,其中所述視頻譯碼器經配置以構造所述多個參考圖像子集,以使得在所述參考圖像子集中的一者中識別的參考圖像在任何其他參考圖像子集中未加以識別。
18.根據(jù)權利要求11所述·的裝置,其中所述視頻譯碼器經配置以: 基于所述多個參考圖像子集而構造第一參考圖像列表和第二參考圖像列表中的至少一者, 其中為了譯碼所述當前圖像,所述視頻譯碼器經配置以基于所述第一參考圖像列表和所述第二參考圖像列表中的至少一者而譯碼所述當前圖像。
19.根據(jù)權利要求11所述的裝置,其中所述視頻譯碼器包括視頻解碼器,且其中所述視頻解碼器經配置以: 解碼指示屬于所述參考圖像集的參考圖像的信息,其中所述參考圖像集識別可潛在地用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像; 構造所述多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及 基于所述多個參考圖像子集而解碼所述當前圖像。
20.根據(jù)權利要求11所述的裝置,其中所述視頻譯碼器包括視頻編碼器,且其中所述視頻編碼器經配置以: 編碼指示屬于所述參考圖像集的參考圖像的信息,其中所述參考圖像集識別可潛在地用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像; 構造所述多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及 基于所述多個參考圖像子集而編碼所述當前圖像。
21.根據(jù)權利要求11所述的裝置,其中所述裝置包括以下各者中的一者: 無線通信裝置; 微處理器;以及 集成電路。
22.—種其上存儲有指令的計算機可讀存儲媒體,所述指令在經執(zhí)行時致使用于譯碼視頻數(shù)據(jù)的裝置的處理器: 譯碼指示屬于參考圖像集的參考圖像的信息,其中所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像; 構造多個參考圖像子集,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及 基于所述多個參考圖像子集而譯碼所述當前圖像。
23.根據(jù)權利要 求22所述的計算機可讀存儲媒體,其進一步包括致使所述處理器進行以下操作的指令: 從所述多個參考圖像子集導出所述參考圖像集, 其中致使所述處理器譯碼所述當前圖像的所述指令包括致使所述處理器基于所述導出的參考圖像集而譯碼所述當前圖像的指令。
24.根據(jù)權利要求22所述的計算機可讀存儲媒體,其中致使所述處理器構造所述多個參考圖像子集的所述指令包括致使所述處理器構造以下各者中的至少兩者的指令: 第一參考圖像子集,其識別在解碼次序上在所述當前圖像之前及在輸出次序上在所述當前圖像之前且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的短期參考圖像; 第二參考圖像子集,其識別在解碼次序上在所述當前圖像之前及在輸出次序上在所述當前圖像之后且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的短期參考圖像; 第三參考圖像子集,其識別在解碼次序上在所述當前圖像之前且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的長期參考圖像;以及 第四參考圖像子集,其識別在解碼次序上在所述當前圖像之前且無法用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的長期參考圖像。
25.根據(jù)權利要求22所述的計算機可讀存儲媒體,其進一步包括致使所述處理器進行以下操作的指令: 基于所述多個參考圖像子集而構造第一參考圖像列表和第二參考圖像列表中的至少一者, 其中致使所述處理器基于所述多個參考圖像子集而譯碼所述當前圖像的所述指令包括致使所述處理器基于所述第一參考圖像列表和所述第二參考圖像列表中的至少一者而譯碼所述當前圖像的指令。
26.一種用于譯碼視頻數(shù)據(jù)的裝置,所述裝置包括: 用于譯碼指示屬于參考圖像集的參考圖像的信息的裝置,其中所述參考圖像集識別可潛在地用于對當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的一個或一個以上圖像進行幀間預測的所述參考圖像; 用于構造多個參考圖像子集的裝置,每一參考圖像子集識別所述參考圖像集的所述參考圖像中的零者或多者;以及 用于基于所述多個參考圖像子集而譯碼所述當前圖像的裝置。
27.根據(jù)權利要求26所述的裝置,其進一步包括: 用于從所述多個參考圖像子集導出所述參考圖像集的裝置, 其中用于譯碼所述當前圖像的所述裝置包括用于基于所述導出的參考圖像集而譯碼所述當前圖像的裝置。
28.根據(jù)權利要求26所述的裝置,其中用于構造所述多個參考圖像子集的所述裝置包括用于構造至少五個參考圖像子集的裝置。
29.根據(jù)權利要求26所述的裝置,其中用于構造所述多個參考圖像子集的所述裝置包括用于構造以下各者中的至少兩者的裝置: 第一參考圖像子集,其識別在解碼次序上在所述當前圖像之前及在輸出次序上在所述當前圖像之前且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的短期參考圖像; 第二參考圖像子集,其識別在解碼次序上在所述當前圖像之前及在輸出次序上在所述當前圖像之后且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的短期參考圖像; 第三參考圖像子集,其識別在解碼次序上在所述當前圖像之前且可潛在地用于對所述當前圖像及在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的長期參考圖像;以及 第四參考圖像子集,其識別在解碼次序上在所述當前圖像之前且無法用于對所述當前圖像進行幀間預測且可潛在地用于對在解碼次序上在所述當前圖像之后的所述一個或一個以上圖像中的一者或一者以上進行幀間預測的長期參考圖像。
30.根據(jù)權利要求26所述的裝置,其進一步包括: 用于譯碼指示所述多個參考圖像子集中的一者或一者以上中的參考圖像的數(shù)目的語法元素的裝置, 其中用于構造所述多個參考圖像子集的所述裝置包括用于基于指示所述多個參考圖像子集中的每一者中的參考圖像的所述數(shù)目的所述經譯碼語法元素而構造所述多個參考圖像子集中的所述一者或一者以上的裝置。
31.根據(jù)權利要求26所述的裝置,其中用于構造所述多個參考圖像子集的所述裝置包括用于構造所述多個參考圖像子集以使得在所述參考圖像子集中的一者中識別的參考圖像在任何其他參考圖像子集中未加以識別的裝置。
32.根據(jù)權利要求26所述的裝置,其進一步包括: 用于基于所述多個參考圖像子集而構造第一參考圖像列表和第二參考圖像列表中的至少一者的裝置,其中用于基于所述多個參考圖像子集而譯碼所述當前圖像的所述裝置包括用于基于所述第一參考 圖像列表和所述第二參考圖像列表中的至少一者而譯碼所述當前圖像的裝置。
【文檔編號】H04N19/176GK103828375SQ201280046106
【公開日】2014年5月28日 申請日期:2012年9月20日 優(yōu)先權日:2011年9月23日
【發(fā)明者】王益魁, 陳盈 申請人:高通股份有限公司