TW201444349A - 用於視圖間或層間參考圖像之位元串流約束及運動向量限制 - Google Patents

用於視圖間或層間參考圖像之位元串流約束及運動向量限制 Download PDF

Info

Publication number
TW201444349A
TW201444349A TW103100239A TW103100239A TW201444349A TW 201444349 A TW201444349 A TW 201444349A TW 103100239 A TW103100239 A TW 103100239A TW 103100239 A TW103100239 A TW 103100239A TW 201444349 A TW201444349 A TW 201444349A
Authority
TW
Taiwan
Prior art keywords
motion vector
inter
view
video
reference image
Prior art date
Application number
TW103100239A
Other languages
English (en)
Other versions
TWI544788B (zh
Inventor
Vadim Seregin
Ying Chen
Li Zhang
Adarsh Krishnan Ramasubramonian
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW201444349A publication Critical patent/TW201444349A/zh
Application granted granted Critical
Publication of TWI544788B publication Critical patent/TWI544788B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/55Motion estimation with spatial constraints, e.g. at image or region borders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/31Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the temporal domain
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本發明描述用於運動向量限制之技術,其中一位元串流中之資訊確保自一運動向量預測子導出之一運動向量順應一運動向量限制。亦描述用於指示用於並列解碼之運動向量限制之技術。

Description

用於視圖間或層間參考圖像之位元串流約束及運動向量限制
本申請案主張以下申請案之權利:2013年1月4日申請之美國臨時申請案第61/749,213號、2013年1月21日申請之美國臨時申請案第61/754,864號、2013年1月22日申請之美國臨時申請案第61/755,274號,及2013年1月29日申請之美國臨時申請案第61/758,206號,該等申請案中之每一者的全部內容以引用之方式併入本文中。
本發明係關於視訊寫碼,且更特定言之,係關於用於寫碼視訊資料之技術。
可將數位視訊能力併入至廣泛範圍之器件中,該等器件包括數位電視、數位直播系統、無線廣播系統、個人數位助理(PDA)、膝上型電腦或桌上型電腦、數位攝影機、數位記錄器件、數位媒體播放器、視訊遊戲器件、視訊遊戲主機、蜂巢式或衛星無線電電話、視訊電話會議器件及其類似者。數位視訊器件實施視訊壓縮技術,諸如,在由MPEG-2、MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分(進階視訊寫碼(AVC))、當前在開發過程中之高效率視訊寫碼(HEVC)標準定義之標準及此等標準之擴展中所描述的視訊壓縮技術,以更有效率地傳輸、接收及儲存數位視訊資訊。
視訊壓縮技術包括空間預測及/或時間預測以減少或移除視訊序列中所固有之冗餘。對於基於區塊之視訊寫碼,可將視訊圖框或圖塊分割成區塊。可進一步分割每一區塊。使用相對於同一圖框或圖塊中之相鄰區塊中之參考樣本的空間預測編碼經框內寫碼(I)圖框或圖塊中的區塊。經框間寫碼(P或B)圖框或圖塊中的區塊可使用相對於同一圖框或圖塊中之相鄰區塊中的參考樣本之空間預測或相對於其他參考圖框中之參考樣本的時間預測。空間或時間預測產生待寫碼之區塊的預測性區塊。殘餘資料表示待寫碼之原始區塊與預測性區塊之間的像素差。
根據指向形成預測性區塊之參考樣本的區塊之運動向量及指示經寫碼區塊與預測性區塊之間的差之殘餘資料編碼經框間寫碼區塊。根據框內寫碼模式及殘餘資料來編碼經框內寫碼區塊。為了進一步壓縮,可將殘餘資料自像素域變換至變換域,從而產生接著可經量化之殘餘變換係數。可按特定次序掃描最初配置成二維陣列之經量化之變換係數以產生變換係數之一維向量以用於熵寫碼。
一般而言,本發明描述視訊寫碼技術,其確保所導出之運動向量不違反運動向量限制。舉例而言,視訊編碼器可在位元串流中傳信語法元素,該等語法元素界定視訊解碼器將導出運動向量之方式。該等技術可確保位元串流不包括將致使視訊解碼器導出違反運動向量限制之運動向量的語法元素值。
本發明亦描述用於指示解碼延遲之技術,該解碼延遲可用於並列解碼。舉例而言,該等技術可指示可由視訊解碼器普遍使用以用於並列解碼之解碼延遲。可結合確保所導出之運動向量不違反運動向量限制的技術使用用於指示解碼延遲之此等技術。然而,本發明中所描述之技術不限於此。
在一個實例中,本發明描述一種視圖間或層間視訊解碼之方法,該方法包含:接收一位元串流,該位元串流包括用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,其中該位元串流受到約束以使得該資訊確保該所導出之運動向量順應一運動向量限制,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分。該方法亦包括基於該位元串流中之該資訊導出該當前區塊的該運動向量,且基於該所導出之運動向量視圖間或層間預測解碼該當前區塊。
在一個實例中,本發明描述一種視圖間或層間視訊編碼之方法,該方法包含:判定資訊,該資訊用於自一運動向量預測子導出一當前區塊之一運動向量,該資訊確保該所導出之運動向量順應一運動向量限制,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分。該方法亦包括基於該資訊導出該當前區塊的該運動向量,基於該所導出之運動向量視圖間或層間預測編碼該當前區塊,且產生用於導出該運動向量之該所判定的資訊以用於輸出。
在一個實例中,本發明描述一種包含一視訊解碼器之器件,該視訊解碼器包含一或多個處理器且經組態以:接收一位元串流,該位元串流包括用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,其中該位元串流受到約束以使得該資訊確保該所導出之運動向量順應一運動向量限制,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分。該視訊解碼器亦經組態以基於該位元串流中之該資訊導出該當前區塊的該運動向量,且基於該 所導出之運動向量視圖間或層間預測解碼該當前區塊。
在一個實例中,本發明描述一種包含一視訊編碼器之器件,該視訊編碼器包含一或多個處理器且經組態以:判定資訊,該資訊用於自一運動向量預測子導出一當前區塊之一運動向量,該資訊確保該所導出之運動向量順應一運動向量限制,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分。該視訊編碼器亦經組態以基於該資訊導出該當前區塊的該運動向量,基於該所導出之運動向量視圖間或層間預測編碼該當前區塊,且產生用於導出該運動向量之該所判定的資訊以用於輸出。
在一個實例中,本發明描述一種電腦可讀儲存媒體,其具有儲存於其上之指令,該等指令在執行時致使用於解碼視訊資料之一器件的一或多個處理器:接收一位元串流,該位元串流包括用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,其中該位元串流受到約束以使得該資訊確保該所導出之運動向量順應一運動向量限制,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分。該等指令亦致使該一或多個處理器基於該位元串流中之該資訊導出該當前區塊的該運動向量,且基於該所導出之運動向量視圖間或層間預測解碼該當前區塊。
在一個實例中,本發明描述一種器件,該器件包含:用於接收一位元串流之構件,該位元串流包括用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,其中該位元串流受到約束以使得該資訊確保該所導出之運動向量順應一運動向量限制,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分。 該器件亦包括用於基於該位元串流中之該資訊導出該當前區塊的該運動向量之構件,及用於基於該所導出之運動向量視圖間或層間預測解碼該當前區塊之構件。
一或多個實例之細節陳述於隨附圖式及以下描述中。其他特徵、目標及優勢將自該描述及該等圖式以及自申請專利範圍而顯而易見。
10‧‧‧視訊編碼及解碼系統
12‧‧‧源器件
14‧‧‧目的地器件
16‧‧‧鏈路
18‧‧‧視訊源
20‧‧‧視訊編碼器
22‧‧‧輸出介面
28‧‧‧輸入介面
30‧‧‧視訊解碼器
32‧‧‧顯示器件
34‧‧‧儲存器件
40‧‧‧圖像
42‧‧‧圖像
44‧‧‧時間
46‧‧‧時間
48‧‧‧時間
50‧‧‧時間
52‧‧‧時間
54‧‧‧時間
56‧‧‧時間
58‧‧‧時間
350‧‧‧分割單元
410‧‧‧預測處理單元
420‧‧‧運動估計單元
440‧‧‧運動補償單元
460‧‧‧框內預測單元
500‧‧‧求和器
520‧‧‧變換處理單元
540‧‧‧量化處理單元
560‧‧‧熵編碼單元
580‧‧‧反量化處理單元
600‧‧‧反變換處理單元
620‧‧‧求和器
640‧‧‧參考圖像記憶體
800‧‧‧熵解碼單元
810‧‧‧預測處理單元
820‧‧‧運動補償單元
840‧‧‧框內預測單元
860‧‧‧反量化處理單元
880‧‧‧反變換單元
900‧‧‧求和器
920‧‧‧參考圖像記憶體
P0‧‧‧處理器
P1‧‧‧處理器
S0至S7‧‧‧視圖
T0至T8‧‧‧時間例項
圖1為說明可利用本發明中所描述之技術的實例視訊編碼及解碼系統之方塊圖。
圖2為說明實例多視圖視訊寫碼(MVC)解碼次序之圖形圖。
圖3為說明用於多視圖視訊寫碼之結構的概念圖。
圖4為說明兩個視圖之並列寫碼程序的實例之流程圖。
圖5為說明可實施本發明中所描述之技術的實例視訊編碼器之方塊圖。
圖6為說明可實施本發明中所描述之技術的實例視訊解碼器之方塊圖。
圖7為說明根據本發明中所描述之技術之視圖間或層間視訊解碼的實例操作之流程圖。
圖8為說明根據本發明中所描述之技術之視圖間或層間視訊編碼的實例操作之流程圖。
運動向量限制係指將運動向量之x分量或y分量中的至少一者限於一值範圍內。以此方式,運動向量限制會限制可用以框間預測當前區塊之參考圖像的區塊。舉例而言,若y分量被限制在某一範圍內,則參考圖像中的在y分量範圍之外的任何區塊無法被用以框間預測當前區塊。一般而言,運動向量限制可用以限制運動向量之範圍以參考 參考圖像之子部分,如更詳細所描述,該參考圖像可為視圖間或層間參考圖像。
可能存在運動向量限制可為有用的各種原因。作為一個實例,運動向量限制可減少為了框間預測當前區塊所需要存取之參考圖像的資料量,此舉增加記憶體頻寬效率。舉例而言,對於框間預測當前區塊而言,可不需要存取駐留於限制範圍之外的區塊之視訊資料。
作為另一實例,運動向量限制可允許實現並列解碼。舉例而言,在多視圖視訊寫碼或可調式視訊寫碼中,可用參考視圖或層(例如,基本視圖或層)中之圖像來框間預測(例如,視圖間預測或層間預測)相依視圖或層中之圖像。在無運動向量限制的情況下,視訊解碼器可能需要在重建構相依視圖或層圖像之前重建構整個參考視圖或層圖像。出於此原因,運動向量限制可為合乎需要的以避免需要在重建構相依視圖或層圖像之前重建構整個參考視圖或層圖像。
此外,在具有運動向量限制的情況下,視訊解碼器可能能夠與參考視圖或層圖像並列地重建構相依視圖或層圖像。舉例而言,假定運動向量限制界定:用於相依視圖或層圖像中的任何區塊之運動向量之y分量不能在參考視圖或層(例如,基本視圖或層)中大於Th,其中Th界定y分量限制。換言之,若當前區塊位於相依視圖或層圖像中的(x,y),則僅位於參考視圖或層圖像中的(x,y+Th)處或上方的區塊可被用以框間預測當前區塊。
在此實例中,在視訊解碼器重建構參考視圖或層圖像直到y+Th區塊之後,視訊解碼器可能能夠與參考視圖或層圖像並列地重建構相依視圖或層圖像。此情形之原因在於:在參考視圖或層圖像中的y+Th區塊之後的任何區塊皆無法用以框間預測相依視圖或層圖像中的具有y分量值「y」的區塊。在此意義上,運動向量限制可界定並列解碼延遲(亦即,在視訊解碼器可開始相依視圖或層圖像的重建構之 前必須重建構的參考視圖或層圖像之列數)。在一些實例中,基於用於重建構參考視圖或層圖像的濾波類型,視訊解碼器可能直到在y+Th列之後的若干列中的一些區塊經重建構之後才能夠開始相依視圖或層圖像的重建構。
然而,使用運動向量限制可能存在問題。舉例而言,在許多狀況下,視訊編碼器可能不傳信當前區塊之實際運動向量的資訊(例如,語法元素)。而是,視訊編碼器可傳信視訊解碼器可藉以導出運動向量之資訊(例如,語法元素)。作為一個實例,作為合併/跳過模式或進階運動向量預測(AMVP)模式之部分,視訊編碼器可傳信候選運動向量預測子之清單的索引,而非傳信當前區塊之運動向量的資訊。視訊解碼器可基於所接收之索引自候選運動向量預測子之清單選擇運動向量預測子,且基於運動向量預測子導出用於當前區塊之運動向量。在此等實例中之一些中,在導出運動向量的過程中,視訊解碼器有可能導出違反運動向量限制之運動向量。
舉例而言,在合併/跳過模式中,視訊解碼器採用運動向量預測子之運動向量(亦即,將當前區塊之運動向量設定為等於運動向量預測子)。可能無法保證在當前區塊之運動向量被設定等於運動向量預測子的情況下運動向量將遵守當前區塊之運動向量限制。
作為另一實例,在AMVP模式中,視訊解碼器接收選定運動向量預測子與自最佳匹配搜尋判定的運動向量之間的運動向量差(MVD)。視訊解碼器將MVD與選定運動向量預測子相加以導出用於當前區塊之運動向量。然而,在一些實例中,藉由將MVD與運動向量預測子相加所得的所導出之運動向量有可能違反運動向量限制。
當使用運動向量限制(諸如,在下文更詳細描述之時間運動向量預測子(TMVP)中)時可能存在其他此等問題。如下文更詳細所描述,當使用運動向量限制時,亦可能存在關於指示參考特定參考圖像清單 之運動向量預測子的所有MVD為零的MVD旗標之問題。
本發明中所描述之技術可確保在位元串流中的由視訊解碼器使用以導出運動向量之資訊確保所導出之運動向量不會違反運動向量限制。作為一個實例,對於合併/跳過模式,該等技術可確保位元串流不包括候選運動向量預測子的清單之針對一運動向量預測子的索引,該運動向量預測子若被採用作為當前區塊之運動向量,則將致使所導出之運動向量違反運動向量限制。作為另一實例,對於AMVP模式,該等技術可確保位元串流包括在與運動向量預測子相加時會致使所得的所導出之運動向量順應運動向量限制的MVD。
在使用運動向量限制作為並列解碼之部分的情況下亦可能存在問題或關注事項。一些技術可將並列解碼延遲設定為兩個巨集區塊列之固定值。然而,一些新近視訊寫碼標準並不依賴於巨集區塊,而是使用樹型區塊或最大寫碼單元(LCU)或寫碼樹型單元(CTU)的階層式結構。每一樹型區塊可根據四分樹而分裂成寫碼單元(CU)。舉例而言,樹型區塊(作為四分樹之根節點)可分裂成四個子節點,且每一子節點又可為父節點,且分裂成另外四個子節點。最後未分裂之子節點(作為四分樹之葉節點)包含寫碼節點(亦即,經寫碼之視訊區塊)。因此,來自使用「巨集區塊」之壓縮技術的「列」之概念可能並不十分適用於使用樹型區塊而非巨集區塊的技術。
實際上,可能不存在自巨集區塊列至利用此階層式結構之視訊寫碼標準中的區塊列的直接擴展。換言之,在使用樹型區塊階層式結構之視訊寫碼技術中可能不存在並列解碼延遲兩個巨集區塊列的直接方式。
為了克服將運動向量限制固定至數個巨集區塊列的限制,一些技術傳信諸如以LCU列為單位的運動向量限制。然而,視訊解碼器仍可需要將LCU列的單位轉換成視訊解碼器可利用以判定何時開始並列 解碼的值(例如,並列解碼延遲)。
作為一個實例,視訊解碼器可需要基於LCU大小將LCU列轉換成視訊解碼器可利用以判定何時開始並列解碼的值。然而,可不存在每一視訊解碼器可將LCU列轉換成視訊解碼器可利用於並列解碼的值之統一方式,從而導致不同視訊解碼器判定不同量的並列解碼延遲。不同視訊解碼器判定不同量的並列解碼延遲可導致解碼效率低下,及可能的解碼錯誤。
在一些實例中,本發明中所描述之技術可傳信以寫碼單元大小為單位的並列解碼延遲。以此方式,可能存在每一視訊解碼器可能能夠判定並列解碼延遲之一致方式。舉例而言,視訊解碼器可不需要所接收之並列解碼延遲資訊至可用以判定何時可開始並列解碼之值的任何進一步轉換。
圖1為說明可利用本發明中所描述之技術的實例視訊編碼及解碼系統10之方塊圖。如圖1中所示,系統10包括源器件12,源器件12產生將由目的地器件14稍後解碼的經編碼視訊資料。源器件12及目的地器件14可包含廣泛範圍之器件中之任一者,包括桌上型電腦、筆記型(亦即,膝上型)電腦、平板電腦、機上盒、諸如所謂之「智慧型」電話之電話手機、所謂之「智慧型」板、電視、攝影機、顯示器件、數位媒體播放器、視訊遊戲主機、視訊串流器件或其類似者。在一些狀況下,源器件12及目的地器件14可經配備以用於無線通信。
目的地器件14可經由鏈路16接收待解碼之經編碼視訊資料。鏈路16可包含能夠將經編碼視訊資料自源器件12移動至目的地器件14之任何類型之媒體或器件。在一實例中,鏈路16可包含通信媒體以使源器件12能夠即時將經編碼視訊資料直接傳輸至目的地器件14。經編碼視訊資料可根據通信標準(諸如,無線通信協定)加以調變且被傳輸至目的地器件14。通信媒體可包含任何無線或有線通信媒體,諸如,射 頻(RF)頻譜或一或多個實體傳輸線。通信媒體可形成基於封包之網路(諸如,區域網路、廣域網路或諸如網際網路之全球網路)的部分。通信媒體可包括路由器、交換器、基地台或可有用於促進自源器件12至目的地器件14之通信的任何其他設備。
或者,經編碼資料可自輸出介面22輸出至儲存器件34。類似地,可藉由輸入介面自儲存器件34存取經編碼資料。儲存器件34可包括多種分佈式或本端存取之資料儲存媒體中之任一者,諸如硬碟機、藍光光碟、DVD、CD-ROM、快閃記憶體、揮發性或非揮發性記憶體,或用於儲存經編碼視訊資料之任何其他合適數位儲存媒體。在另一實例中,儲存器件34可對應於檔案伺服器或可保持由源器件12產生之經編碼視訊的另一中間儲存器件。目的地器件14可經由串流或下載自儲存器件34存取所儲存視訊資料。檔案伺服器可為能夠儲存經編碼視訊資料且將彼經編碼視訊資料傳輸至目的地器件14之任何類型之伺服器。實例檔案伺服器包括網頁伺服器(例如,用於網站)、FTP伺服器、網路附接儲存(NAS)器件或本端磁碟機。目的地器件14可經由包括網際網路連接之任何標準資料連接存取經編碼視訊資料。此情形可包括適合於存取儲存於檔案伺服器上之經編碼視訊資料的無線頻道(例如,Wi-Fi連接)、有線連接(例如,DSL、纜線數據機等)或兩者之組合。經編碼視訊資料自儲存器件34之傳輸可為串流傳輸、下載傳輸或兩者之組合。
本發明之技術不必限於無線應用或設置。技術可適用於支援多種多媒體應用中之任一者的視訊寫碼,該等應用諸如空中電視廣播、有線電視傳輸、衛星電視傳輸、串流視訊傳輸(例如,經由網際網路)、編碼數位視訊以用於儲存於資料儲存媒體上、解碼儲存於資料儲存媒體上之數位視訊或其他應用。在一些實例中,系統10可經組態以支援單向或雙向視訊傳輸以支援應用,諸如視訊串流、視訊播放、 視訊廣播及/或視訊電話。
在圖1之實例中,源器件12包括視訊源18、視訊編碼器20及輸出介面22。在一些狀況下,輸出介面22可包括調變器/解調變器(數據機)及/或傳輸器。在源器件12中,視訊源18可包括諸如以下各者之源:視訊捕獲器件(例如,視訊攝影機)、含有先前捕獲之視訊的視訊存檔、用以自視訊內容提供者接收視訊之視訊饋入介面,及/或用於產生電腦圖形資料作為源視訊之電腦圖形系統,或此等源之組合。作為一實例,若視訊源18為視訊攝影機,則源器件12及目的器件14可形成所謂之攝影機電話或視訊電話。然而,本發明中所描述之技術可大體上適用於視訊寫碼,且可適用於無線及/或有線應用。
可由視訊編碼器20來編碼所捕獲、預捕獲或電腦產生之視訊。經編碼視訊資料可經由源器件12之輸出介面22直接傳輸至目的地器件14。經編碼視訊資料亦可(或替代地)儲存至儲存器件34上以供稍後由目的地器件14或其他器件存取以用於解碼及/或播放。
目的地器件14包括輸入介面28、視訊解碼器30及顯示器件32。在一些狀況下,輸入介面28可包括接收器及/或數據機。目的地器件14之輸入介面28經由鏈路16接收經編碼視訊資料。經由鏈路16傳達或在儲存器件34上所提供之經編碼視訊資料可包括由視訊編碼器20產生以供諸如視訊解碼器30之視訊解碼器使用以解碼視訊資料的多種語法元素。此等語法元素可與傳輸於通信媒體上、儲存於儲存媒體上或儲存於檔案伺服器上之經編碼視訊資料包括在一起。在本發明中,位元串流中之術語「資訊」通常用以指位元串流中之任何資訊,包括語法元素。
顯示器件32可與目的地器件14整合或在目的地器件14之外部。在一些實例中,目的地器件14可包括整合式顯示器件且亦經組態以與外部顯示器件介接。在其他實例中,目的地器件14可為顯示器件。一 般而言,顯示器件32向使用者顯示經解碼視訊資料,且可包含多種顯示器件中之任一者,諸如液晶顯示器(LCD)、電漿顯示器、有機發光二極體(OLED)顯示器或另一類型之顯示器件。
視訊編碼器20及視訊解碼器30可根據視訊壓縮標準操作,視訊壓縮標準諸如ITU-T H.264標準,或者被稱作MPEG-4第10部分(進階視訊寫碼(AVC))或此等標準的擴展。或者,視訊編碼器20及視訊解碼器30可根據諸如高效率視訊寫碼(HEVC)標準之其他專屬或工業標準操作且可符合HEVC測試模型(HM)。然而,本發明之技術不限於任何特定寫碼標準。視訊壓縮標準之其他實例包括MPEG-2及ITU-T H.263。
儘管未在圖1中展示,但在一些態樣中,視訊編碼器20及視訊解碼器30可各自與音訊編碼器及解碼器整合,且可包括適當MUX-DEMUX單元或其他硬體及軟體以處置共同資料串流或獨立資料串流中之音訊及視訊兩者的編碼。若適用,則在一些實例中,MUX-DEMUX單元可符合ITU H.223多工器協定或諸如使用者資料報協定(UDP)之其他協定。
視訊編碼器20及視訊解碼器30各自可實施為多種合適編碼器電路中之任一者,諸如,一或多個微處理器、數位信號處理器(DSP)、特殊應用積體電路(ASIC)、場可程式化閘陣列(FPGA)、離散邏輯、軟體、硬體、韌體或其任何組合。在該等技術部分地以軟體實施時,器件可將軟體之指令儲存於合適的非暫時性電腦可讀媒體中且在硬體中使用一或多個處理器執行指令以執行本發明之技術。
視訊編碼器20及視訊解碼器30中之每一者可包括於一或多個編碼器或解碼器中,其中之任一者可整合為各別器件中的組合式編碼器/解碼器(CODEC)之部分。作為一個實例,器件可包括視訊解碼器30,且器件之一個實例為積體電路(IC),且器件之另一實例為微處理 器。作為另一實例,器件可包括視訊解碼器30,且器件之一個實例為無線通信器件。視訊編碼器20可類似地形成於IC、微處理器或無線通信器件中。
存在由ITU-T視訊寫碼專家群(VCEG)及ISO/IEC運動圖像專家群(MPEG)之視訊寫碼聯合協作組(JCT-VC)開發之新的視訊寫碼標準,亦即,高效率視訊寫碼(HEVC)。HEVC標準化努力係基於視訊寫碼器件之演進模型,其被稱作HEVC測試模型(HM)。HM假設視訊寫碼器件相對於根據(例如)ITU-T H.264/AVC之現有器件的若干額外能力。舉例而言,H.264提供9個框內預測編碼模式,而HM可提供多達33個框內預測編碼模式。
在下文中被稱作HEVC WD9之HEVC的新近工作草案(WD)可自http://phenix.int-evry.fr/jct/doc_end_user/documents/11_Shanghai/wg11/JCTVC-K1003-v13.zip得到。被稱作「HEVC工作草案10」或「WD10」之HEVC標準的另一新近草案描述於文件JCTVC-L1003v34,Bross等人的「High efficiency video coding(HEVC)text specification draft 10(for FDIS & Last Call)」(ITU-T SG16 WP3及ISO/IEC JTC1/SC29/WG11之視訊寫碼聯合協作組(JCT-VC),第12次會議:Geneva,CH,2013年1月14日至23日)中,該文件可自http://phenix.int-evry.fr/jct/doc_end_user/documents/12_Geneva/wg11/JCTVC-L1003-v34.zip下載。HEVC標準之又一草案在本文中被稱作「WD10修訂版」,其描述於Bross等人的「Editors' proposed corrections to HEVC version 1」(ITU-T SG16 WP3及ISO/IEC JTC1/SC29/WG11之視訊寫碼聯合協作組(JCT-VC),第13次會議,Incheon,KR,2013年4月)中,該文件可自http://phenix.int-evry.fr/jct/doc_end_user/documents/13_Incheon/wg11/JCTVC-M0432-v3.zip得到。HEVC WD9、WD10及WD10修訂版之內容全文以引用之方式併入本文中。
一般而言,HM之工作模型描述可將視訊圖框或圖像劃分成包括明度及色度樣本兩者之樹型區塊或最大寫碼單元(LCU)的序列。樹型區塊可具有與H.264標準之巨集區塊之目的類似的目的。圖塊包括按寫碼次序之數個連續樹型區塊。可將視訊圖框或圖像分割成一或多個圖塊。每一樹型區塊可根據四分樹而分裂成寫碼單元(CU)。舉例而言,樹型區塊(作為四分樹之根節點)可分裂成四個子節點,且每一子節點又可為父節點,且分裂成另外四個子節點。作為四分樹之葉節點的最後未分裂子節點包含寫碼節點,亦即經寫碼視訊區塊。與經寫碼之位元串流相關聯之語法資料可定義樹型區塊可分裂之最大次數,且亦可定義寫碼節點之最小大小。
CU包括寫碼節點及與該寫碼節點相關聯之預測單元(PU)及變換單元(TU)。CU之大小對應於寫碼節點之大小且形狀必須為正方形。CU之大小可在自8×8個像素直至最大64×64個像素或更大之樹型區塊的大小之範圍內。每一CU可含有一或多個PU及一或多個TU。舉例而言,與CU相關聯之語法資料可描述將CU分割成一或多個PU之情形。分割模式可在CU是被跳過還是以直接模式編碼、以框內預測模式編碼或以框間預測模式編碼之間而為不同的。PU可經分割以使形狀為非正方形。舉例而言,與CU相關聯之語法資料亦可描述根據四分樹將CU分割成一或多個TU之情形。TU之形狀可為正方形或非正方形。
HEVC標準允許根據TU之變換,該變換對於不同CU可為不同的。TU通常基於針對經分割LCU定義之給定CU內的PU之大小而設定大小,但此可不總是為該狀況。TU之大小通常與PU相同或小於PU。在一些實例中,可使用被稱作「殘餘四分樹」(RQT)之四分樹結構將對應於CU之殘餘樣本再分成較小單元。RQT之葉節點可被稱作變換單元(TU)。可變換與TU相關聯之像素差值以產生變換係數,變換係數可被量化。
一般而言,PU包括與預測程序有關之資料。舉例而言,在PU經框內模式編碼(框內預測)時,PU可包括描述用於PU之框內預測模式之資料。作為另一實例,在PU經框間模式編碼(框間預測)時,PU可包括界定用於PU之運動向量之資料。舉例而言,界定PU之運動向量的資料可描述運動向量之水平分量、運動向量之垂直分量、運動向量之解析度(例如,四分之一像素精度或八分之一像素精度)、運動向量所指向之參考圖像,及/或運動向量之參考圖像清單(例如,清單0(L0)或清單1(L1))。清單0及清單1可分別被稱作RefPicList0及RefPicList1。
一般而言,TU係用於變換程序及量化程序。具有一或多個PU之給定CU亦可包括一或多個變換單元(TU)。在預測之後,視訊編碼器20可計算對應於PU之殘餘值。殘餘值包含像素差值,像素差值可使用TU變換成變換係數、經量化且掃描以產生串行化變換係數以用於熵寫碼。本發明通常使用術語「視訊區塊」來指CU之寫碼節點。在一些特定狀況下,本發明亦可使用術語「視訊區塊」來指樹型區塊,亦即LCU,或包括寫碼節點及PU以及TU之CU。
舉例而言,對於根據當前在開發過程中之高效率視訊寫碼(HEVC)標準的視訊寫碼,視訊圖框(亦被稱作圖像)可經分割成寫碼單元(CU)、預測單元(PU)及變換單元(TU)。CU通常係指充當基本單元之影像區,各種寫碼工具被應用於該基本單元以用於視訊壓縮。CU通常具有正方形幾何形狀,且可被視為類似於在其他視訊寫碼標準(諸如,ITU-T H.264)下的所謂的「巨集區塊」。
為了達成較佳寫碼效率,CU可取決於其含有之視訊資料而具有可變大小。亦即,CU可經分割或「分裂」成較小區塊或子CU,其中的每一者亦可被稱作CU。另外,未分裂成子CU之每一CU可分別出於預測及變換CU的目的而進一步分割成一或多個PU及TU。
PU可被視為類似於在其他視訊寫碼標準(諸如,H.264)下的區塊之所謂的分割區。PU係執行用於區塊之預測以產生「殘餘」係數之基礎。CU之殘餘係數表示CU之視訊資料與使用CU的一或多個PU判定之用於CU的經預測資料之間的差。具體言之,一或多個PU指定出於預測之目的如何來分割CU,及使用哪一預測模式來預測CU之每一分割區內所含有的視訊資料。
CU之一或多個TU指定CU之殘餘係數區塊的分割區,基於該等分割區將變換應用於區塊以產生CU之殘餘變換係數區塊。一或多個TU亦可與所應用之變換的類型相關聯。變換將殘餘係數自像素或空間域轉換至諸如頻域之變換域。另外,一或多個TU可指定參數,基於該等參數將量化應用於所得殘餘變換係數區塊以產生經量化之殘餘變換係數區塊。殘餘變換係數可經量化以可能地減少用以表示係數之資料量。
CU通常包括表示為Y之一個明度分量及表示為U及V之兩個色度分量。換言之,未進一步分裂成子CU之給定CU可包括Y、U及V分量,該等分量中之每一者可出於預測及變換CU的目的而進一步分割成一或多個PU及TU,如先前所描述。舉例而言,取決於視訊取樣格式,U及V分量之大小就樣本數目而言可與Y分量之大小相同或不同。因此,可針對給定CU之Y、U及V分量中的每一者執行上文參考預測、變換及量化所描述之技術。
為了編碼CU,首先基於CU之一或多個PU來導出用於CU之一或多個預測子。預測子為含有用於CU之經預測資料的參考區塊,且係基於CU之對應PU而導出,如先前所描述。舉例而言,PU指示將被判定經預測資料的CU之分割區,及用以判定經預測資料的預測模式。可經由框內(I)預測(亦即,空間預測)或框間(P或B)預測(亦即,時間預測)模式導出預測子。因此,一些CU可使用相對於相同圖框中之相鄰 參考區塊或CU的空間預測來框內寫碼(I),而其他CU可相對於其他圖框中之參考區塊或CU來框間寫碼(P或B)。
在基於CU之一或多個PU識別出一或多個預測子時,計算對應於一或多個PU之CU的原始視訊資料與一或多個預測子中所含有的用於CU之經預測資料之間的差。此差(亦被稱作預測殘餘)包含殘餘係數,且指由一或多個PU指定之CU的部分與一或多個預測子之間的像素差,如先前所描述。殘餘係數通常配置成對應於CU之一或多個PU的二維(2-D)陣列。
為了達成進一步壓縮,通常(例如)使用離散餘弦變換(DCT)、整數變換、卡忽南-拉維(K-L)變換或另一變換來變換預測殘餘。變換將空間域中的預測殘餘(亦即,殘餘係數)轉換成變換域(例如,頻域)中的殘餘變換係數,亦如先前所描述。變換係數通常亦配置成對應於CU之一或多個TU的2-D陣列。為了進一步壓縮,殘餘變換係數可經量化以可能地減少用以表示係數之資料量,亦如先前所描述。
為了達成更進一步的壓縮,熵寫碼器隨後使用上下文自適應性可變長度寫碼(CAVLC)、上下文自適應性二進位算術寫碼(CABAC)、機率區間分割熵寫碼(PIPE)或另一熵寫碼方法來編碼所得殘餘變換係數。熵寫碼可藉由相對於其他CU減少或移除CU之視訊資料中所固有的由係數表示之統計冗餘來達成此進一步壓縮。
視訊序列通常包括一系列視訊圖框或圖像。圖像群組(GOP)通常包含一系列一或多個視訊圖像。GOP可在GOP之標頭中、圖像中之一或多者的標頭中或別處包括語法資料,語法資料描述包括於GOP中之圖像的數目。圖像之每一圖塊可包括圖塊語法資料,其描述各別圖塊之編碼模式。視訊編碼器20通常對個別視訊圖塊內之視訊區塊進行操作以便編碼視訊資料。視訊區塊可對應於CU內之寫碼節點。視訊區塊可具有固定或變化之大小,且可根據所指定之寫碼標準而在大小上 不同。
作為實例,HM支援各種PU大小之預測。假定特定CU之大小為2N×2N,HM支援按2N×2N或N×N之PU大小的框內預測,及按2N×2N、2N×N、N×2N或N×N之對稱PU大小的框間預測。HM亦支援用於框間預測的按2N×nU、2N×nD、nL×2N及nR×2N之PU大小之非對稱分割。在非對稱分割中,CU之一方向未分割,而另一方向分割成25%及75%。對應於25%分割區之CU之部分由「n」後跟著「上」、「下」、「左」或「右」之指示來指示。因此,舉例而言,「2N×nU」指經水平地分割之2N×2N CU,其中2N×0.5N PU在上且2N×1.5N PU在下。
在本發明中,「N×N」與「N乘N」可互換使用以指視訊區塊之按照垂直及水平維度的像素尺寸,例如,16×16像素或16乘16像素。一般而言,16×16區塊在垂直方向中將具有16個像素(y=16)且在水平方向中將具有16個像素(x=16)。同樣地,N×N區塊通常在垂直方向上具有N個像素,且在水平方向上具有N個像素,其中N表示非負整數值。可將區塊中之像素排列成列及行。此外,區塊未必需要在水平方向中與在垂直方向中具有相同數目個像素。舉例而言,區塊可包含N×M個像素,其中M未必等於N。
在使用CU之PU的框內預測性或框間預測性寫碼之後,視訊編碼器20可計算CU之TU的殘餘資料。PU可包含空間域(亦被稱作像素域)中之像素資料,且TU可包含在將變換(例如,離散餘弦變換(DCT)、整數變換、小波變換或概念上類似之變換)應用於殘餘視訊資料之後的在變換域中之係數。殘餘資料可對應於未經編碼圖像之像素與對應於PU的預測值之間的像素差。視訊編碼器20可形成包括CU之殘餘資料的TU,且接著變換TU以產生CU之變換係數。
在進行任何變換以產生變換係數之後,視訊編碼器20可執行對 變換係數之量化。量化通常指一程序,在該程序中量化變換係數以可能地減少用以表示係數之資料量,從而提供進一步壓縮。量化程序可減少與係數中之一些或全部相關聯的位元深度。舉例而言,可在量化期間將n位元值降值捨位至m位元值,其中n大於m
在一些實例中,視訊編碼器20可利用預定義掃描次序來掃描經量化變換係數以產生可經熵編碼之串行化向量。在其他實例中,視訊編碼器20可執行自適應性掃描。在掃描經量化變換係數以形成一維向量之後,視訊編碼器20可(例如)根據上下文自適應性可變長度寫碼(CAVLC)、上下文自適應性二進位算術寫碼(CABAC)、基於語法之上下文自適應性二進位算術寫碼(SBAC)、機率區間分割熵(PIPE)寫碼或另一熵編碼方法來對一維向量進行熵編碼。視訊編碼器20亦可對與經編碼視訊資料相關聯之語法元素(例如,與經編碼視訊資料相關聯之資訊)進行熵編碼以供視訊解碼器30在解碼視訊資料時使用。
為了執行CABAC,視訊編碼器20可將上下文模型內之上下文指派給待傳輸之符號。上下文可與(例如)符號之相鄰值是否為非零有關。為了執行CAVLC,視訊編碼器20可選擇待傳輸之符號的可變長度碼。VLC中之碼字可經建構以使得相對短之碼對應於較大可能之符號,而較長碼對應於較小可能之符號。以此方式,相對於(例如)針對待傳輸之每一符號使用等長度碼字,使用VLC可達成位元節省。機率判定可基於指派給符號之上下文。
視訊編碼器20及視訊解碼器30可經組態以實施本發明中所描述之技術。視訊編碼器20及視訊解碼器30通常可被稱作視訊寫碼器。在本發明之實例中,視訊寫碼器可判定運動向量範圍及列/行延遲中之至少一者,且可基於該判定來框間預測區塊。在一些實例中,視訊寫碼器可基於一或多個約束存取不同視圖中之圖像及不同層中之圖像中的至少一者,且可基於所存取之圖像來視圖間或層間預測區塊。
舉例而言,上文所描述之技術與HEVC標準有關。本發明可能係關於高效率視訊寫碼(HEVC)標準及其擴展,如有時被稱作SHVC之可調式視訊寫碼(SVC)及有時被稱作MV-HEVC及3DV-HEVC之多視圖視訊寫碼(MVC,3DV)。然而,本發明中所描述之技術不應被視為限於任何特定標準,且僅出於說明之目的而提供對任何標準或任何擴展的描述。
視訊寫碼標準包括ITU-T H.261、ISO/IEC MPEG-1 Visual、ITU-T H.262或ISO/IEC MPEG-2 Visual、ITU-T H.263、ISO/IEC MPEG-4 Visual及ITU-T H.264(亦稱作ISO/IEC MPEG-4 AVC),包括其可調式視訊寫碼(SVC)及多視圖視訊寫碼(MVC)擴展。多視圖視訊寫碼(MVC)為H.264/AVC之擴展。MVC擴展之新近公開可得到的聯合草案描述於「Advanced video coding for generic audiovisual services」(ITU-T推薦H.264,2010年3月)中。MVC擴展之更新近的公開可得到的聯合草案描述於「Advanced video coding for generic audiovisual services」(ITU-T推薦H.264,2011年6月)中。從2012年1月起已核准MVC擴展之現行聯合草案。
在本發明中,片語「多視圖視訊寫碼」當被完整寫出時泛指存在多個視圖之視訊寫碼。縮寫字MVC可用以更具體地指H.264/AVC MVC擴展或HEVC之MVC擴展(基於HEVC之MVC或MV-HEVC)。其他多視圖視訊寫碼技術描述於HEVC之3DV擴展(基於HEVC之3DV或3DV-HEVC)中。
本發明中所描述之技術適用於多視圖視訊寫碼以及可調式視訊寫碼。舉例而言,最近完成了HEVC標準,且正在對HEVC標準的擴展以及基於HEVC之標準進行討論。對於多視圖視訊寫碼,HEVC標準之擴展包括MV-HEVC(不具有深度的多視圖)及3D-HEVC(具有深度的多視圖)。又,3DV標準係基於HEVC標準。對於可調式視訊寫碼, HEVC標準之擴展包括SHVC。本發明中所描述之技術適用於所有此等標準,且通常適用於任何用於視訊寫碼的技術(不管是基於標準還是以其他方式)。
在多視圖視訊寫碼中,存在各自包括複數個圖像之複數個不同視圖。視圖中之一者被稱作基本視圖,且其他視圖被稱作相依視圖。視訊編碼器20或視訊解碼器30可利用基本視圖中之圖像來框間預測相依視圖中的圖像,但視訊編碼器20或視訊解碼器30不可利用相依視圖中之圖像來框間預測基本視圖中的圖像。視訊編碼器20或視訊解碼器30可利用相依視圖中之圖像來框間預測另一相依視圖中的圖像。換言之,視訊編碼器20或視訊解碼器30不可用另一視圖中之圖像來框間預測基本視圖中的圖像,但可用其他視圖(亦即,基本視圖或其他相依視圖)中之圖像來框間預測相依視圖中的圖像。當用另一視圖中之圖像來框間預測圖像時,另一視圖中之圖像被稱作視圖間參考圖像。
應理解,視訊編碼器20或視訊解碼器30可用基本視圖中之另一圖像來框間預測基本視圖中的圖像,且類似地,視訊編碼器20或視訊解碼器30可用相依視圖中之另一圖像來框間預測相同相依視圖中的圖像。在此等狀況下,因為用於框間預測之圖像與經框間預測之圖像在相同的視圖中,所以用於框間預測之圖像並非視圖間參考圖像。
在可調式視訊寫碼中,存在複數個層。層中之一者被稱作基本層,且其他層被稱作增強層。類似於多視圖視訊寫碼,視訊編碼器20或視訊解碼器30可利用基本層中之圖像來框間預測增強層中的圖像,但視訊編碼器20或視訊解碼器30不可利用增強層中之圖像來框間預測基本層中的圖像。視訊編碼器20或視訊解碼器30可利用增強層中之圖像來框間預測另一增強層中的圖像,只要經框間預測之圖像處於比用於框間預測之圖像高的層即可。換言之,可調式視訊寫碼可被視為階層式寫碼方案,其中可用來自較低層之圖像框間預測來自較高層之圖 像,但來自較低層之圖像無法用來自較高層之圖像框間預測。然而,在一些狀況下,來自較低層之圖像可用來自較高層之圖像框間預測。基本層為最低層,且因此不可將較高層中的圖像用以框間預測基本層中的圖像。當用另一層中之圖像來框間預測圖像時,另一層中之圖像被稱作層間參考圖像。
類似於多視圖視訊寫碼,應理解,視訊編碼器20或視訊解碼器30可用基本層中之另一圖像來框間預測基本層中的圖像,且類似地,視訊編碼器20或視訊解碼器30可用相同增強層中之另一圖像來框間預測增強層中的圖像。在此等狀況下,因為用於框間預測之圖像與經框間預測之圖像在相同的層中,所以用於框間預測之圖像並非層間參考圖像。
圖2為說明實例多視圖視訊寫碼(MVC)解碼次序之圖形圖。圖2說明MVC位元串流結構。舉例而言,圖2中展示典型MVC解碼次序(亦即,位元串流次序)。解碼次序配置被稱作時間優先寫碼。每一存取單元經定義為含有在一輸出時間例項的所有視圖之經寫碼圖像。應理解,圖2中所說明之解碼次序可與輸出或顯示次序不相同。
在圖2中,S0至S7各自係指多視圖視訊之不同視圖。T0至T8各自表示一個輸出時間例項。存取單元可包括在一輸出時間例項的所有視圖之經寫碼圖像。舉例而言,第一存取單元包括在時間例項T0之所有視圖S0至S7(亦即,圖像0至7),第二存取單元包括在時間例項T1之所有視圖S0至S7(亦即,圖像8至15),等等。
在圖2中,視圖中之每一者包括圖像之集合。舉例而言,視圖S0包括圖像0、8、16、24、32、40、48、56及64之集合,視圖S1包括圖像1、9、17、25、33、41、49、57及65之集合,等等。在一些實例中,視圖之每一圖像包括兩個分量:一個分量被稱作紋理視圖分量,且另一個分量被稱作深度視圖分量。視圖內之紋理視圖分量及深度視 圖分量可被視為對應於彼此。舉例而言,視圖之紋理視圖分量可被視為對應於視圖之深度視圖分量,且反之亦然(亦即,深度視圖分量對應於其在集合中的紋理視圖分量,且反之亦然)。如本發明中所使用,對應的紋理視圖分量及深度視圖分量可被視為單一存取單元之相同視圖的部分。
紋理視圖分量包括經顯示之實際影像內容。舉例而言,紋理視圖分量可包括明度(Y)及色度(Cb及Cr)分量。深度視圖分量可指示其對應紋理視圖分量中之像素的相對深度。作為一個實例,深度視圖分量可類似於僅包括明度值之灰階影像。換言之,深度視圖分量可不傳遞任何影像內容,而是提供對紋理視圖分量中之像素的相對深度之度量。
舉例而言,深度視圖分量中之像素的像素值的範圍可在0至255之間(例如,8位元值)。在一些實例中,較小像素值可指示根據檢視者之觀點而言像素較近,且較大像素值可指示根據檢視者之觀點而言像素離得較遠。又,此8位元值可映射至灰階。舉例而言,較小像素值映射至亮像素,其中零值映射至純白像素,較大像素值映射至暗像素,其中值255映射至黑像素,且中間的像素值映射至不同的灰階。因此,指示像素之深度的像素值可僅需要明度分量(例如,映射至灰階之8位元值)。
出於說明之目的而提供僅使用明度值(例如,強度值)來識別深度之深度視圖分量,且其不應被視為限制性的。在一些實例中,可利用任何技術來指示紋理視圖分量中之像素的相對深度。
深度視圖分量可能並非在每一實例中皆為必要的。舉例而言,在多視圖視訊寫碼之一些實例中,不存在深度視圖分量。在此等實例中,紋理視圖分量及圖像可為同義的。
根據多視圖視訊寫碼,根據相同視圖中之紋理視圖分量或根據 一或多個不同視圖中的紋理視圖分量框間預測紋理視圖分量。紋理視圖分量可以視訊資料區塊為單位予以寫碼,該等視訊資料區塊被稱作「視訊區塊」且在H.264內容脈絡中通常被稱作「巨集區塊」。諸如HEVC標準之其他視訊寫碼標準可將視訊區塊稱作樹型區塊或寫碼單元(CU)。
儘管圖2說明時間優先寫碼之實例,但在一些實例中,有可能並列編碼或解碼圖像,如關於圖4更詳細描述。舉例而言,視圖S1之第一圖像(例如,紋理視圖分量及可能的深度視圖分量)可用視圖S0之第一圖像來框間預測。舉例而言,視圖S1之第一圖像中的區塊可使用視圖S0之第一圖像中的區塊作為預測子區塊,其中用於視圖S1之第一圖像中的區塊之運動向量參考視圖S0之第一圖像中的預測子區塊。在此意義上,出於框間預測目的,視圖S0中之第一圖像可為用於視圖S1之第一圖像的參考圖像。
在一些狀況下,為了用視圖S0之第一圖像中的區塊框間預測視圖S1之第一圖像中的區塊,視訊解碼器30可在開始重建構視圖S1之第一圖像之前(亦即,在解碼視圖S1之第一圖像之前)完全地重建構視圖S0之第一圖像(亦即,完全地解碼視圖S0之第一圖像)。在並列解碼中,視訊解碼器30可與解碼視圖S0之第一圖像並列地開始解碼視圖S1之第一圖像。
一般而言,並列解碼係基於運動向量限制之概念。運動向量限制係指對區塊之運動向量的x分量或y分量中的至少一者(及可能兩者)的限制。作為一個實例,運動向量限制可界定運動向量分量之範圍。
參考圖像中的在運動向量分量之所界定範圍之外的任何區塊無法被用以框間預測當前區塊。作為實例,運動向量限制可界定y分量臨限值(Th)。在此實例中,當前圖像中之任何區塊之運動向量的y分量不能大於Th。此情形意謂參考圖像中的相對於當前圖像中之區塊的 垂直距離大於Th的任何區塊無法被用以框間預測當前圖像中之彼區塊。
如更詳細所描述,本發明中所描述之技術可確保區塊之所導出之運動向量順應運動向量限制。舉例而言,視訊編碼器20可產生包括資訊的位元串流以用於輸出,該資訊界定視訊解碼器30藉以導出當前區塊之運動向量的方式。該等技術可約束視訊編碼器20可產生以用於在位元串流中輸出之資訊,以使得當視訊解碼器30基於位元串流中之資訊導出當前區塊之運動向量時,視訊解碼器30不會導出違反運動向量限制之運動向量。換言之,位元串流受到約束以使得資訊確保所導出之運動向量順應運動向量限制。
此外,如更詳細所描述,經產生以用於由視訊編碼器20輸出之位元串流可包括按可由視訊解碼器30利用的單位指定並列解碼延遲之資訊,以用於達成判定何時開始圖像之並列解碼而不需要進一步轉換所接收之值的目的。舉例而言,若並列解碼延遲以列為單位,則視訊解碼器30可能不能夠判定何時開始圖像之並列解碼,此係因為HEVC視訊寫碼技術之階層式結構未必對應於列。如更詳細所描述,視訊編碼器20可傳信基於寫碼單元大小(例如,LCU大小、最小寫碼單元(SCU)大小)或固定大小來指示並列解碼延遲之資訊。
圖3為說明用於多視圖視訊寫碼之結構的概念圖。圖3說明多視圖視訊寫碼結構。舉例而言,圖3中展示用於多視圖視訊寫碼之典型多視圖視訊寫碼預測(包括每一視圖內之圖像間預測及視圖間預測兩者)結構,其中預測係由箭頭指示,箭頭指向之物件將箭頭源於之物件用於預測參考。在多視圖視訊寫碼中,視圖間預測由視差運動補償支援,視差運動補償使用H.264/AVC運動補償之語法,但允許將不同視圖中之圖像用作參考圖像。
兩個視圖之寫碼亦可由多視圖視訊寫碼支援,且多視圖視訊寫 碼之優勢中的一者為視訊編碼器20可將兩個以上視圖作為3D視訊輸入,且視訊解碼器30可解碼此多視圖表示。因此,具有視訊解碼器(如視訊解碼器30)之任何呈現器可預期具有兩個以上視圖之3D視訊內容。
在多視圖視訊寫碼中,允許在相同存取單元(亦即,具有相同時間例項)中之圖像之間的視圖間預測。當寫碼在非基本視圖中之一者中的圖像時,若圖像在不同視圖中但在相同時間例項,則可將該圖像添加至參考圖像清單中。視圖間預測參考圖像可被置於參考圖像清單之任何位置中,正如任何框間預測參考圖像一樣。當將視圖間預測參考圖像用於運動補償時,對應運動向量被稱作「視差運動向量」。
在圖3中,視圖S0可被視為基本視圖,且其他視圖(S1至S7)可被視為相依視圖。舉例而言,視圖S0可為基本視圖,此係因為在視圖S0中沒有圖像係用另一視圖中的圖像來視圖間預測。然而,視圖S0中之圖像可用視圖S0中之其他圖像來框間預測。其他視圖可為相依視圖,此係因為在此等其他視圖中的至少一個圖像經視圖間預測。舉例而言,視圖S1中之第一圖像係用視圖S0中之第一圖像及視圖S2中的第一圖像來視圖間預測。應理解,相依視圖中之一些圖像可用相同視圖中之其他圖像來框間預測。
舉例而言,術語「框間預測」係指基於參考圖像中之區塊(例如,參考圖像中之預測子區塊)來預測當前圖像中的區塊之狀況。當前圖像中之區塊的運動向量參考參考圖像中之區塊。在多視圖視訊寫碼中,參考圖像可為與當前圖像在相同視圖中的圖像或在另一視圖中的圖像。若參考圖像在另一視圖中,則參考圖像及當前圖像在相同存取單元中。舉例而言,如上文所描述,存取單元包括在相同時間例項的不同視圖之圖像,且可要求另一視圖中之參考圖像與當前圖像在相同的存取單元中。
當參考圖像在不同於當前圖像的另一視圖中時,參考另一視圖中之參考圖像的運動向量被稱作視差運動向量。又,當參考圖像在不同於當前圖像之另一視圖中時,當前圖像中之區塊可被稱作經視圖間預測。換言之,在視圖間預測中,當前圖像中之區塊係用視差運動向量來視圖間預測,該視差運動向量參考在不同於包括當前圖像之視圖的視圖中之參考圖像中之區塊。
為了執行框間預測(亦即,視圖間預測或使用相同視圖中之圖像的框間預測),視訊編碼器20及視訊解碼器30可建構一或兩個參考圖像清單(被稱作RefPicList0及RefPicList1)。視訊編碼器20及視訊解碼器30可出於框間預測目的而利用參考圖像清單中所識別的圖像。在本發明中所描述之技術中,視圖間參考圖像(亦即,在不同於經編碼或解碼之當前圖像的視圖之視圖中之參考圖像)可被插入於參考圖像清單內之任何位置。在視訊編碼器20及視訊解碼器30建構參考圖像清單(亦即,建構RefPicList0及RefPicList1)之後,參考圖像清單之參考索引可識別包括於參考圖像清單中之任何參考圖像。
舉例而言,對於經雙向預測圖像(B圖像),視訊編碼器20可傳信RefPicList0之索引及RefPicList1之索引,該索引識別用以編碼經雙向預測圖像的參考圖像。視訊解碼器30可利用索引來判定解碼(例如,重建構)當前圖像所需要之參考圖像(來自RefPicList0之一個參考圖像及來自RefPicList1之一個參考圖像)。對於單向預測圖像(P圖像),視訊編碼器20可傳信RefPicList0或RefPicList1中之一者的索引或僅傳信RefPicList0的索引(在該狀況下視訊解碼器30可能不建構RefPicList1),該索引識別用以編碼經單向預測圖像的參考圖像。視訊解碼器30可利用索引來判定解碼(例如,重建構)當前圖像所需要之參考圖像。
通常,用於B圖像(經雙向預測圖像)之第一或第二參考圖像清單 的參考圖像清單建構包括兩個步驟:參考圖像清單初始化,及參考圖像清單重新排序(修改)。參考圖像清單初始化為基於POC(圖像次序計數,與圖像之顯示次序對準)值的次序將參考圖像記憶體(亦被稱作經解碼圖像緩衝器(DPB))中之參考圖像置於一清單中的顯式機制。參考圖像清單重新排序機制可將在參考圖像清單初始化期間被置於清單中的圖像之位置修改至任何新的位置,或將參考圖像記憶體中之任何參考圖像置於任何位置中,即使該圖像並不屬於經初始化清單亦然。可將在參考圖像清單重新排序(修改)之後的一些圖像置於清單中之極遠位置中。然而,若圖像之位置超過清單之作用中參考圖像的數目,則該圖像不會被視為最終參考圖像清單之輸入項。可對於每一清單在圖塊標頭中傳信作用中參考圖像之數目。
圖4為說明兩個視圖之並列寫碼程序的實例之流程圖。圖4說明補充增強資訊(SEI)之並列寫碼(例如,解碼)資訊。在H.264/AVC之MVC擴展中,存在支援並列解碼之SEI訊息。對於每一視圖分量,當解碼一個巨集區塊時,認為在當前視圖及參考視圖之間存在至少兩個巨集區塊(MB)列延遲。對於每一視圖及其參考視圖中的每一者,在SEI訊息中傳信以額外MB列為單位之額外延遲。此SEI訊息之使用的實例展示於圖4中。
圖4說明與解碼第二視圖(視圖1)之圖像42並列地解碼第一視圖(視圖0)之圖像40。在此實例中,圖像40為圖像42的參考圖像(亦即,圖像40之區塊被用以框間預測且特定地視圖間預測圖像42之區塊)。又,圖4說明由處理器P0解碼圖像40及由處理器P1解碼圖像42。對處理器P0及P1的參考係用以說明經執行以解碼圖像40及圖像42的處理演算法。處理器P0及P1可為視訊解碼器30之部分。換言之,圖4說明並列地解碼圖像40及42的視訊解碼器30之實例。
在時間44,視訊解碼器30開始解碼程序,但對於圖像42,在視 訊解碼器30開始解碼圖像42之第一列之前存在延遲。舉例而言,在圖4中,並列解碼延遲為巨集區塊之兩個列。如上文所描述,一些技術可能要求至少兩個列之解碼延遲。視訊編碼器20可在SEI訊息中將精確的解碼延遲傳信至視訊解碼器30。
在時間46,視訊解碼器30解碼圖像40之巨集區塊的第一列以重建構圖像40之巨集區塊的第一列。在時間48,視訊解碼器30將圖像40之巨集區塊的經重建構第一列儲存於視訊解碼器30之經解碼圖像緩衝器(DPB)中。在時間50,視訊解碼器30解碼第二列以重建構圖像40之巨集區塊的第二列。在時間52,視訊解碼器30將圖像40之巨集區塊的經重建構第二列儲存於視訊解碼器30之DPB中。又,在時間52,視訊解碼器30判定圖像42之並列解碼可以開始。舉例而言,第一處理演算法(處理器P0)通知第二處理演算法(處理器P1):圖像42之並列解碼可以開始(例如,藉由將控制信號「通知視圖-1」發送至處理器P1)。
在時間54,視訊解碼器30解碼圖像40之第三列以重建構圖像40之第三列,且並列(例如,同時)地解碼圖像42之第一列以重建構圖像42之第一列。在時間56,視訊解碼器30將圖像40之經重建構第三列儲存於DPB中。儘管未說明,視訊解碼器30亦可將圖像42之經重建構第一列儲存於DPB中。
又,在時間56,處理器P0通知處理器P1:圖像42之下一列的解碼可以開始。在時間58,視訊解碼器30解碼圖像40之第四列以重建構圖像40之第四列,且並列(例如,同時)地解碼圖像42之第二列以重建構圖像42之第二列。視訊解碼器30重複此等步驟以重建構圖像40及圖像42。以此方式,視訊解碼器30可實施來自不同視圖之兩個圖像的並列解碼,其中來自一視圖之一個圖像(例如,視圖0之圖像40)為來自另一視圖之另一圖像(例如,視圖1之圖像42)的參考圖像。
在一些實例中,運動向量限制促進並列解碼。在圖4中所說明之 實例中,可限制圖像42中之區塊的運動向量以使得圖像42中之區塊的運動向量之y分量不能大於一個列的距離。作為一個實例,在圖4中,視訊解碼器30開始與解碼圖像40之第三列並列地解碼圖像42之第一列(亦即,視訊解碼器30在解碼圖像42之第一列之前必須等待直至重建構了圖像40的兩個列)。在此實例中,若圖像42之第一列中的區塊之運動向量參考在圖像40之第二列之後的區塊,則可能存在解碼錯誤,此係因為視訊解碼器30可能尚未解碼圖像40之彼列。在具有運動向量限制的情況下,視訊編碼器20可不將圖像42中之y分量大於一個列的距離的區塊的運動向量值傳信至視訊解碼器30。
在圖4中所說明之實例中,運動向量限制可為對於圖像42之運動向量的y分量之一個列。以此方式,在視訊解碼器30重建構圖像40之第二列之後,視訊解碼器30可能能夠開始解碼圖像42,此係因為圖像42中之區塊將不參考參考圖像中的距該區塊的垂直距離達一個以上列的任何區塊。因此,運動向量限制可被視為指示並列解碼延遲。如下文更詳細所描述,在一些實例中,基於由視訊解碼器30執行之濾波,視訊解碼器30可需要在開始重建構當前圖像(例如,圖像42)之前重建構參考圖像(例如,圖像40)的額外列。
在圖4之上文實例中,視訊編碼器20及視訊解碼器30可根據H.264/AVC的MVC擴展而起作用。然而,當將與運動向量限制及並列解碼延遲有關之技術擴展至基於HEVC之視訊寫碼技術時,可能存在某些問題。舉例而言,當參考圖像在不同視圖中時,實施運動向量限制可能存在某些問題,且可能存在關於利用用於藉由HEVC寫碼結構指示並列解碼延遲之技術的某些問題。此外,儘管針對多視圖視訊寫碼描述上文實例,但本發明中所描述之技術亦可擴展至可調式視訊寫碼,包括HEVC之可調式擴展(例如,SHVC)。
在可調式視訊寫碼(SVC)中,可能存在多個層。在最底層級的層 可能只是充當基本層(BL),且在最頂層級之層只是作為增強層(EL)。中間的所有層可充當EL及BL兩者。舉例而言,中間的層可為在其下方的層之EL,且同時作為在其上方的層之BL。出於描述之簡單起見,本發明假定在說明當前技術的過程中存在兩個層,BL及EL。應注意,本發明中所描述之技術亦適用於具有多個層的狀況。
舉例而言,上文實例描述視圖間預測的概念,其中來自相依視圖的圖像之當前區塊係用另一視圖(例如,基本視圖)中的參考圖像來框間預測。在一些實例中,在層間預測中,來自增強層之圖像的當前區塊係用另一層(例如,基本層)中的參考圖像來框間預測。在本發明中所描述之技術中,運動向量限制及並列解碼亦可用於可調式視訊寫碼技術。舉例而言,可能存在對於參考層間圖像(例如,基本層圖像)之增強層圖像之區塊的運動向量限制。又,有可能並列解碼兩個層,其中一個層出於框間預測目的(例如,層間預測目的)而使用另一層,其方式類似於上文關於圖4所描述的方式。
如上文所描述,對於多視圖視訊寫碼,正在對於不同的基於HEVC之多視圖視訊寫碼擴展進行討論。一個實例為HEVC之3DV擴展且另一實例為HEVC之MV擴展。舉例而言,MPEG正開發基於HEVC之3DV及MV標準,其中標準化努力之部分亦包括基於HEVC的多視圖視訊編碼解碼器的標準化。在基於HEVC之3DV及MV中,啟用了基於來自不同視圖之經重建構視圖分量的視圖間預測。
基於HEVC之3DV與基於HEVC之MV之間的差異中的一者為僅高階語法(僅HLS)要求。舉例而言,在AVC中,以擴展實際上實現「僅HLS」要求的方式來進行多視圖擴展。「僅HLS」要求保證在多視圖視訊寫碼(MVC)中僅存在高階語法(HLS)改變,以使得無需重新設計AVC中的在巨集區塊層級的模組,且該等模組可被完全重新用於MVC。
將此僅HLS要求擴展至MV-HEVC,而非3DV-HEVC。舉例而言,MV-HEVC標準的一個要求可為MV-HEVC相對於HEVC標準實現僅HLS要求。3DV-HEVC標準可能不要求僅HLS改變。儘管3DV-HEVC不要求僅HLS改變,但若關於HEVC標準作出僅HLS改變,則結果仍可順應3DV-HEVC。換言之,若多迴路解碼被視為可接受的,則有可能可針對HEVC之MVC/3DV擴展且亦針對HEVC之可調式視訊寫碼(SVC)擴展(SHVC)實現「僅HLS」要求。
為了能夠進行視圖間預測,最小的改變及潛在地(儘管不一定)HLS改變係出於以下的圖像識別目的,其中參考圖像清單建構及標記需要能夠識別特定視圖中之圖像。舉例而言,對於多視圖視訊寫碼,參考圖像清單(RefPicList0及RefPicList1)中之一者或兩者可包括視圖間圖像(亦即,不與正被編碼或解碼的圖像在相同的視圖中的圖像)或層間圖像(亦即,不與正被編碼或解碼的圖像在相同的層中的圖像)。
若HLS改變不足以在H.264/MVC中實現「僅HLS」要求,則作出其他約束、假設,以使得低層級寫碼模組絕不可會遇到需要實施HEVC之低層級寫碼模組未被組態用於之功能(例如,處置零運動相關縮放)的情形。此等約束、修改及假設為:(1)在同置圖像為(僅)視圖間參考圖像的情況下停用時間直接模式,(2)將(僅)視圖間參考圖像視為不是短期的:與空間直接相關,且停用隱含加權預測。
僅HLS HEVC擴展的一個實例為MV-HEVC,且MV-HEVC之最新工作草案為G.Tech、K.Wegner、Y.Chen、M.Hannuksela的JCT3V-B1004,「MV-HEVC Draft Text 2」,其在http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/2_Shanghai/wg11/JCT3V-B1004-v1.zip處可得到,該草案的全部內容以引用之方式併入本文中。
本發明亦涉及Nakagami等人的題為「MV-HEVC:Vertical length restriction of inter-view vector for HEVC simple 3D extension」且可自http://phenix.it-sudparis.eu/jct2/doc_end_user/current_document.php?id=225得到的JCT3V-B0037,其全部內容以引用之方式併入。在JCT3V-B0037中,建議將MV-HEVC中之運動向量指向在垂直方向上限制至基本視圖參考圖框,以放寬記憶體頻寬要求且使得解碼器更具並列友好性。建議此限制由在SPS中傳信的旗標來指示。
儘管上文關於並列解碼描述運動向量限制,但運動向量限制可出於其他額外獨立的原因而為有用的。換言之,在一些實例中,即使視訊解碼器30未經組態以實施並列解碼,運動向量限制仍可為有用的或合乎需要的。
作為一個實例,運動向量限制可用於記憶體頻寬減少(例如,減少記憶體存取及/或需存取的資料量)。舉例而言,在具有運動向量限制的情況下,視訊編碼器20或視訊解碼器30為了編碼或解碼當前圖像而需要自參考圖像存取的資料量可減少。可基於針對每一經預測之像素自參考圖像存取的像素的數目來估計記憶體頻寬。舉例而言,記憶體頻寬隨著在參考圖像中存取的像素之數目的減少而降低。在許多使用狀況中,記憶體頻寬可被視為瓶頸,且在最差的狀況下記憶體頻寬減少可被視為一優勢。舉例而言,技術可相對於其他技術簡化、減少 或消除記憶體存取。
舉例而言,當參考另一視圖中的圖像之運動向量的垂直分量受到約束時,可能減少存取參考視圖圖像之像素所需要的記憶體頻寬。作為一個實例,若將垂直分量(亦即,運動向量之y分量)限制為較小值,則可能不需要出於內插目的存取在垂直方向上在區塊之外的任何像素。
舉例而言,區塊之運動向量可不參考參考圖像中的整數像素,而是改為參考次整數像素(被稱作像元(pel))。視訊編碼器20及視訊解碼器30藉由內插參考圖像中之相鄰整數像素的像素值而產生此等次整數像素或像元。舉例而言,視訊編碼器20及視訊解碼器30自DPB存取參考圖像之像素值,包括延伸至由運動向量所參考的區塊之外的像素之像素值,以用於內插次整數像素。在具有運動向量限制的情況下,視訊編碼器20及視訊解碼器30可能不需要為了內插而存取駐留於運動向量受限制於之區域之外的像素之像素值,此減少視訊編碼器20及視訊解碼器30需要自各別DPB擷取之資料量,且藉此促進記憶體頻寬減少。
然而,為了確保運動向量不違反運動向量限制,可需要考慮額外態樣。舉例而言,視訊編碼器20可不傳信區塊之運動向量的x分量及y分量(視訊解碼器30使用該等分量判定區塊之運動向量)。而是,視訊編碼器20可傳信由視訊解碼器30用以導出運動向量之資訊。
舉例而言,作為合併/跳過模式及進階運動向量預測(AMVP)模式之部分,視訊解碼器30可基於運動向量預測子導出當前區塊之運動向量。在合併/跳過模式及AMVP模式中,視訊編碼器20可不傳信當前區塊之運動向量,而是可改為傳信候選運動向量預測子之清單的索引。視訊解碼器30可自由候選運動向量預測子之清單的索引識別之運動向量預測子導出當前區塊之運動向量。
舉例而言,在合併/跳過模式及AMVP模式中,視訊編碼器20及視訊解碼器30各自建構候選運動向量預測子之清單。視訊編碼器20及視訊解碼器30可實施實質上類似技術以建構候選運動向量預測子之各別清單,以使得清單中所識別之候選運動向量預測子對於視訊編碼器20及視訊解碼器30兩者而言為相同的。
在合併/跳過模式及AMVP模式中,視訊編碼器20及視訊解碼器30基於相鄰區塊之運動資訊建構候選運動向量預測子之清單。相鄰區塊之實例包括空間相鄰區塊及時間相鄰區塊。空間相鄰區塊指與當前區塊相鄰且與當前區塊在相同的圖像中之區塊。時間相鄰區塊指與當前區塊相鄰但在另一圖像中的區塊。可為當前區塊之運動向量預測子的空間相鄰區塊之運動向量被稱作空間運動向量預測子(SMVP)。可為當前區塊之運動向量預測子的時間相鄰區塊之運動向量被稱作時間運動向量預測子(TMVP)。
對於合併/跳過模式或AMVP模式兩者,視訊編碼器20傳信候選運動向量預測子之清單的索引,視訊解碼器30接收該索引。視訊解碼器30接著自所傳信之候選運動向量預測子之清單的索引識別運動資訊(例如,參考圖像及一或多個運動向量),且基於所識別之運動資訊判定當前區塊之運動向量。
舉例而言,在合併/跳過模式中,視訊解碼器30接收候選運動向量預測子之清單的索引,且基於所傳信之索引識別儲存於候選運動向量預測子之清單中的運動資訊。視訊解碼器30自所識別之運動資訊判定參考圖像清單、參考索引及運動向量。視訊解碼器30接著採用自所識別之運動資訊判定之參考圖像清單、參考索引及運動向量作為當前區塊之運動資訊。換言之,當前區塊繼承由候選運動向量預測子之清單的索引所識別之區塊的運動資訊。以此方式,視訊解碼器30基於運動向量預測子導出當前區塊之運動向量(例如,視訊解碼器30將當前 區塊之運動向量設定為等於運動向量預測子)。
在一些實例中,在合併/跳過模式中,若由候選運動向量預測子之清單的索引識別之區塊指時間相鄰區塊,則視訊解碼器30可不採用與此運動向量候選者相關聯的運動資訊。視訊解碼器30可利用任何已知技術或待開發的任何技術來判定參考圖像清單之參考索引(例如,選擇參考圖像清單之一者或兩者的索引零)。在本發明中,可能存在對參考圖像清單之某些約束,諸如當時間相鄰區塊之運動向量被用作運動向量預測子時,預設索引(例如,索引零)被用作參考圖像清單之參考索引。
以此方式,視訊解碼器30可在合併/跳過模式中判定用於當前區塊之運動資訊。在合併模式中,視訊解碼器30亦可接收當前區塊與由所判定之運動資訊參考的區塊之間的殘餘資料,且視訊解碼器30可利用殘餘資料以判定當前區塊之像素值。在跳過模式中,視訊解碼器30可不接收當前區塊與由所判定之運動資訊參考的區塊之間的殘餘資料。在此實例中,視訊解碼器30可假定殘餘資料為零(亦即,設定當前區塊之像素值等於由所判定之運動資訊參考的區塊的像素值)。
AMVP模式可類似於合併/跳過模式;然而,除了接收候選運動向量預測子之清單的索引之外,視訊解碼器30亦可接收來自視訊編碼器20的用於參考圖像清單之參考索引值及運動向量差。運動向量差(MVD)可為由候選運動向量預測子之清單的索引所識別之區塊的運動向量與另一運動向量(例如,由視訊編碼器20基於最佳匹配搜尋找到的運動向量)之間的運動向量差。
舉例而言,視訊解碼器30可判定由候選運動向量預測子之清單的索引所識別之區塊的運動向量。視訊解碼器30可將由候選運動向量預測子之清單的索引所識別之區塊的運動向量之值與所傳信之運動向量差相加或相減以判定當前區塊的運動向量。另外,視訊解碼器30可 基於指示參考圖像清單之所傳信的資訊及彼參考圖像清單的所傳信索引判定所判定之運動向量參考的參考圖像。以此方式,視訊解碼器30可在AMVP模式中判定當前區塊之運動資訊。
如上文所描述,對於合併/跳過模式及AMVP模式,視訊編碼器20及視訊解碼器30建構候選運動向量預測子之清單。下文描述用以建構候選運動向量預測子之清單的實例方式。在一些實例中,若時間相鄰區塊之運動資訊將被包括於候選運動向量預測子之清單中,則視訊編碼器20及視訊解碼器30可基於圖像次序計數(POC)值縮放時間相鄰區塊之運動向量資訊。
下文提供關於視訊編碼器20及視訊解碼器30可藉以判定將哪些時間運動向量預測子包括於候選運動向量預測子之清單中的方式之一些描述。為了得到時間運動向量預測子(TMVP),視訊編碼器20及視訊解碼器30可首先識別同置圖像。若當前圖像為B圖塊(例如,經雙向預測之圖塊),則視訊編碼器20可在圖塊標頭中傳信collocated_from_l0_flag,以指示同置圖像來自於哪一參考圖像清單(例如,同置圖像來自RefPicList0還是RefPicList1)。視訊解碼器30可基於在圖塊標頭中傳信之collocated_from_l0_flag判定同置圖像係來自哪一參考圖像。
在識別參考圖像清單之後,視訊編碼器20可在圖塊標頭中傳信collocated_ref_idx語法元素以識別在所識別之參考圖像清單中的圖像。collocated_ref_idx語法元素為視訊編碼器20可在位元串流中傳信之資訊的一個實例。視訊解碼器30可基於collocated_ref_idx語法元素識別在所識別之參考圖像清單中的圖像,其中collocated_ref_idx語法元素為視訊解碼器30所接收之位元串流中的資訊之一個實例。
視訊編碼器20及視訊解碼器30可藉由檢查同置圖像來識別同置預測單元(PU)。同置PU可為同置區之右下PU(例如,BR區塊)抑或所 謂的「中心3」或CR區塊(亦即,同置區之中心的右下PU)。
假設明度位置(xP,yP)指定相對於當前圖像之左上明度樣本的當前明度預測區塊之左上樣本,且變數nPbW及nPbH分別指定明度預測區塊之寬度及高度,BR區塊及中心3或CR區塊可被定義如下:
- 同置區之右下PU:xPRb=xP+nPbW
yPRb=yP+nPbH
- 若(yP>>Log2CtbSizeY)等於(yPRb>>Log2CtbSizeY),且xPRb小於pic_width_in_luma_samples,則以下情況適用。
- 同置PU指定明度預測區塊涵蓋在由colPic指定的同置圖像內的由((xPRb>>4)<<4,(yPRb>>4)<<4)給定的經修改位置。
- 中心3:xPCtr=xP+(nPbW>>1)
yPCtr=yP+(nPbH>>1)
- 變數同置PU指定明度預測區塊涵蓋在colPic內的由((xPCtr>>4)<<4,(yPCtr>>4)<<4)給定的經修改位置。
在一些實例中,當視訊編碼器20及視訊解碼器30藉由以上程序識別運動向量以產生用於AMVP或合併/跳過模式的運動候選者時,視訊編碼器20及視訊解碼器30可基於時間位置(由POC值反映)縮放運動向量。在HEVC中,序列參數集(SPS)包括旗標sps_temporal_mvp_enable_flag,且當sps_temporal_mvp_enable_flag等於1時,圖塊標頭包括旗標pic_temporal_mvp_enable_flag。當對於特定圖像而言pic_temporal_mvp_enable_flag及temporal_id兩者皆等於0時,在解碼特定圖像或按解碼次序在特定圖像之後的圖像的過程中,不將來自按解碼次序在彼特定圖像之前的圖像之運動向量用作時間運動向量預測子。
當使用運動向量限制時,可能存在關於確保在合併/跳過模式抑或AMVP模式中使用運動向量預測子所導出的運動向量順應運動向量限制的某些問題。舉例而言,有可能在合併/跳過模式中,若當前區塊之運動向量被設定為等於運動向量預測子,則當前區塊之運動向量違反運動向量限制。作為另一實例,有可能在AMVP模式中,若將運動向量預測子與運動向量差相加或相減,則所得的所導出之運動向量違反運動向量限制。可能存在關於使用運動向量限制的其他問題,其在下文更詳細地予以描述。
此外,當並列解碼技術擴展至基於HEVC的多視圖視訊寫碼技術時,可能存在某些問題。舉例而言,如上文所描述,對於H.264/AVC之MVC擴展,視訊編碼器20在SEI訊息中傳信並列解碼延遲資訊,且並列解碼延遲為至少兩個列。然而,歸因於基於HEVC的技術之寫碼單元的階層式結構,不存在自巨集區塊列至MV-HEVC、3DV-HEVC或SHVC中之區塊列的直接擴展。
又,在JCT3V-B0037中所描述之技術中,視訊編碼器可傳信垂直視差運動向量範圍(亦即,用於y分量之運動向量限制)。然而,視訊解碼器可能不能直接判定按LCU列之延遲。作為一個實例,視訊解碼器可需要基於LCU大小計算LCU列延遲。換言之,LCU列之值可能並非可由視訊解碼器30用以判定何時開始並列解碼使用視圖間或層間圖像作為參考圖像的圖像的值,且為了使視訊解碼器30判定何時開始並列解碼圖像,可能需要將LCU列之值額外地轉換成基於LCU大小的值。然而,在依據LCU列傳信運動向量限制的實例中,可能不存在判定何時並列解碼圖像之統一方式。因此,不同視訊解碼器可在不同時間開始並列解碼,從而可能造成解碼錯誤。
下文描述根據本發明之技術。舉例而言,針對合併/跳過模式及AMVP模式提出了各種技術以解決上文所提及之難題及相關問題(諸 如導出違反運動向量限制之運動向量)。本發明亦描述用於增強並列解碼之技術,其解決了依賴於LCU列來判定何時開始並列解碼之上文所描述的限制。
特定言之,本發明首先描述當利用運動向量限制時與記憶體頻寬減少有關的技術。本發明接著描述與支援並列解碼有關的技術。應理解,當利用運動向量限制時在本發明中針對記憶體頻寬減少所描述之技術可獨立於在本發明中針對並列解碼所描述的技術。換言之,即使視訊解碼器30未經組態以用於並列解碼,視訊解碼器30仍可利用本發明中所描述之記憶體頻寬減少技術,且反之亦然。
如上文所描述,運動向量限制之一個潛在益處為記憶體頻寬減少。舉例而言,運動向量限制之益處可在參考圖像(亦即,區塊被用以框間預測當前圖像之區塊的圖像)為視圖間參考圖像或層間參考圖像的實例中實現;然而,本發明中所描述之技術不限於此。舉例而言,運動向量限制會限制運動向量的範圍以參考視圖間或層間參考圖像的子部分(例如,小於全部圖像的部分)。當垂直視差運動向量受到約束時,可減少存取圖像之像素所需要的記憶體頻寬。換言之,若參考另一視圖中之圖像(亦即,參考視圖間參考圖像)的運動向量的y分量範圍受到限制,則可減少需要自儲存視圖間參考圖像之DPB擷取的資料量。舉例而言,若垂直分量範圍被限制至相對較小的值,則視訊編碼器20及視訊解碼器30可能不需要出於內插目的而存取儲存於由運動向量參考的區塊之DPB輸出中之視圖間參考圖像的像素之像素值。在使用層間參考圖像而非視圖間參考圖像的情況下,相同的情形亦可成立。
出於描述之容易起見,在本發明中所描述之用於具有運動向量限制之記憶體頻寬減少的技術係關於參考圖像為視圖間或層間參考圖像的實例加以描述。此外,在一些實例中,對於基於HEVC之可調式 視訊寫碼(SHVC),參考層間參考圖像之運動向量的一或兩個分量(水平及垂直)可能總是被限制為零。在一些實例中,對於基於HEVC之多視圖視訊寫碼(MV-HEVC或3DV-HEVC),對於參考視圖間參考圖像之運動向量的運動向量限制可為可選擇的,且對於參考視圖間參考圖像之運動向量的限制範圍可為可選擇的。
如上文所描述,將運動向量限制用於視圖間或層間參考圖像的問題中之一者在於:自運動向量預測子所導出之運動向量可違反運動向量限制。根據本發明中所描述之技術,視訊編碼器20產生以用於輸出且視訊解碼器30所接收之位元串流(亦即,經由鏈路16或經由儲存器件34)可受到約束,以使得當前區塊之所導出之運動向量不會違反運動向量限制。換言之,位元串流受到約束,以使得資訊確保所導出之運動向量順應運動向量限制。
舉例而言,在本發明中所描述之技術中,位元串流將不包括將被用於由視訊解碼器30藉由層間或視圖間參考圖像進行的運動補償的會致使運動向量不滿足運動向量限制的運動向量或用以形成(亦即,導出)運動向量之其他語法。換言之,位元串流包括用於自運動向量預測子導出當前區塊之運動向量的資訊,其中運動向量參考視圖間或層間參考圖像,且其中運動向量限制會限制運動向量的範圍以參考視圖間或層間參考圖像的子部分。舉例而言,若對於由視訊解碼器30進行之運動補償,運動向量分量(亦即,水平分量或x分量及/或垂直分量或y分量)中之一者或兩者被限制為零,則位元串流不可包括會致使運動向量之水平及/或垂直分量為非零的運動向量或用於導出運動向量之語法。
在此實例中,運動向量之範圍被限制為零,意謂所導出之運動向量必須具有零值以順應運動向量限制。舉例而言,運動向量限制會限制運動向量以參考視圖間或層間參考圖像之子部分,且在此實例 中,視圖間或層間參考圖像的子部分為被稱作零運動向量之子部分。換言之,運動向量限制會限制運動向量以僅參考位於與當前區塊位於當前圖像中的位置相同的在視圖間或層間參考圖像中的位置之區塊。
視訊解碼器30可在合併/跳過模式或AMVP模式中自運動向量預測子導出運動向量。在本發明中所描述之技術中,當參考圖像為視圖間或層間參考圖像時,位元串流不可包括致使視訊解碼器30自運動向量預測子導出運動向量以至於所導出之運動向量違反合併/跳過模式或AMVP模式中的運動向量限制之資訊(例如,語法元素)。
舉例而言,在合併/跳過模式中,視訊編碼器20在經產生以用於輸出之位元串流中包括候選運動向量預測子之清單的合併索引,且視訊解碼器30自位元串流接收該索引,以識別將用於運動補償之合併候選者。藉由候選運動向量預測子之清單的索引,視訊解碼器30可判定運動資訊,包括參考圖像清單、參考圖像清單之索引及運動向量。
在合併/跳過模式中,視訊解碼器30採用選定運動向量預測子之運動資訊(亦即,設定運動向量等於運動向量預測子以導出運動向量)。在此實例中,視訊編碼器20可判定候選運動向量預測子之清單的索引是否識別視圖間或層間參考圖像之參考圖像清單的索引。若候選運動向量預測子之清單的索引識別參考視圖間或層間參考圖像之運動資訊,則視訊編碼器20可判定由候選運動向量預測子(亦即,運動向量預測子)之清單的索引所識別之運動向量違反運動向量限制抑或順應運動向量限制。若視訊編碼器20判定運動向量預測子違反運動向量限制,則視訊編碼器20可避免包括(亦即,不包括)將致使視訊解碼器30選擇將導致違反運動向量限制之所導出之運動向量的運動向量預測子的候選運動向量預測子之清單的索引。
以此方式,對於合併/跳過模式,視訊解碼器30接收且視訊編碼器20產生以用於輸出之位元串流可不包括致使視訊解碼器30導出違反 運動向量限制之當前區塊的運動向量之資訊。運動向量限制可針對運動向量參考視圖間或層間參考圖像的情況。舉例而言,由候選運動向量預測子之清單的索引所識別之運動資訊的運動向量必須滿足合併模式中之限制。作為一個實例,限制可為水平及垂直分量兩者為零,諸如在SHVC中。
換言之,視訊編碼器20可判定候選運動向量預測子之清單的索引,該索引識別用以導出運動向量之運動向量預測子,該運動向量之值順應運動向量限制。此係因為視訊解碼器30將設定運動向量等於運動向量預測子以導出運動向量。因此,要求值被運動向量採用的運動向量預測子順應運動向量限制。視訊編碼器20可產生候選運動向量預測子之清單的索引以用於輸出,且視訊解碼器30所接收之位元串流中的資訊包括候選運動向量預測子之清單的索引。
如上文所描述,AMVP可稍稍不同於合併/跳過模式。舉例而言,類似於合併/跳過模式,視訊編碼器20可傳信候選運動向量預測子之清單的索引,視訊解碼器30自該清單選擇運動向量預測子。不同於合併/跳過模式,在AMVP模式中,視訊解碼器30不採用運動向量預測子作為當前區塊之運動向量。而是,視訊編碼器20亦在位元串流中傳信運動向量差,且視訊解碼器30將運動向量預測子與運動向量差相加或相減以導出當前區塊之運動向量。又,不同於合併/跳過模式,在AMVP模式中,視訊解碼器30不採用運動向量預測子之參考圖像清單及參考圖像清單索引作為參考圖像清單及參考圖像清單索引。而是,視訊編碼器20傳信識別參考圖像清單及識別參考圖像清單之索引的資訊。視訊解碼器30自此資訊判定當前區塊之運動資訊。
在AMVP模式中,視訊編碼器20可判定視訊編碼器20將傳信的由視訊編碼器20所識別之參考圖像清單之參考圖像清單索引是否識別視圖間或層間參考圖像。若參考圖像清單索引識別視圖間或層間參考圖 像,則視訊編碼器20可傳信運動向量差,以使得當將運動向量差與運動向量預測子相加或相減時,所導出之運動向量遵守運動向量限制。
換言之,視訊編碼器20可判定識別用以導出運動向量之運動向量預測子的候選運動向量預測子之清單的索引,且可判定運動向量差,以使得當將運動向量差與運動向量預測子相加時,所得運動向量順應運動向量限制。
視訊編碼器20可產生候選運動向量預測子之清單的索引以用於輸出,且視訊解碼器30所接收之位元串流中的資訊包括候選運動向量預測子之清單的索引。視訊編碼器20亦可產生運動向量差以用於輸出,且視訊解碼器30所接收之位元串流中的資訊包括運動向量差。
視訊解碼器30可自所接收之位元串流判定識別用以導出運動向量之運動向量預測子的候選運動向量預測子之清單的索引,且可自所接收之位元串流判定運動向量差,運動向量差的值使得當將運動向量差與運動向量預測子相加時,所得運動向量順應運動向量限制。視訊解碼器30可藉由將運動向量預測子與運動向量差相加而導出運動向量。
再次,在AMVP模式中,候選運動向量預測子之清單的索引被用以選擇運動向量預測子,且亦傳信識別參考圖像清單之資訊及識別參考圖像清單的參考圖像清單索引之資訊以選擇參考圖像。在本發明中所描述之技術中,視訊編碼器20可判定選定參考圖像是否為視圖間或層間參考圖像。若選定參考圖像為視圖間或層間參考圖像,則視訊編碼器20可判定一運動向量差,該運動向量差當與經由候選運動向量預測子之清單的索引來選擇之運動向量預測子相加或相減時,致使視訊解碼器30導出順應運動向量限制之運動向量。
作為實例,假定運動向量限制要求區塊之參考層間參考圖像的運動向量為零(亦即,x分量及y分量兩者為零)。又,假定視訊編碼器 20判定候選運動向量預測子之清單的索引,且視訊解碼器30自候選運動向量預測子之清單的索引識別運動向量預測子(MVP)。在此實例中,在AMVP模式中,視訊編碼器20可傳信運動向量差(MVD),以使得當將MVD與MVP相加時,所得運動向量等於零(亦即,MVD之x分量為MVP之x分量的負數,且MVD之y分量為MVP之y分量的負數)。
以此方式,對於AMVP,視訊解碼器30接收之位元串流及視訊編碼器20產生以用於輸出之位元串流可不包括致使視訊解碼器30導出違反運動向量限制之當前區塊的運動向量之資訊。運動向量限制可用於運動向量參考視圖間或層間參考圖像的情況。舉例而言,運動向量差可補償運動向量預測子以使得所導出之運動向量順應運動向量限制。換言之,在本發明中所描述之技術中,一起不滿足運動向量限制之MVP及MVD不應存在於位元串流中,其中在位元串流中之候選運動向量預測子之清單的索引識別MVP,且其中MVD包括於位元串流中。
當在合併/跳過模式及AMVP的情況下使用運動向量限制時,可能存在需要解決之某些特殊狀況。在合併/跳過模式的情況下,可能需要關於TMVP之進一步約束,且在AMVP的情況下,可能需要關於包括於位元串流中之旗標的進一步約束。每一者被依次更詳細地描述。
如上文所描述,視訊編碼器20及視訊解碼器30基於包括空間及時間相鄰區塊之相鄰區塊的運動資訊建構候選運動向量預測子之清單。時間相鄰區塊之運動向量被稱作時間運動向量預測子(TMVP)。對於來自空間相鄰區塊之運動向量預測子(亦即,SMVP),保證SMVP所參考的參考圖像在圖像的參考圖像清單中被識別,此係因為空間相鄰區塊與當前區塊在相同的圖像中。又,若空間相鄰區塊之運動向量參考視圖間或層間參考圖像,則保證空間相鄰區塊之運動向量滿足運 動向量限制。
然而,對於時間相鄰區塊之運動向量,可能無法保證運動向量參考當前圖像之參考圖像清單中的一者中的參考圖像。此外,時間相鄰區塊之運動向量可違反運動向量限制。
在AMVP模式中,傳信參考圖像清單及參考索引,因此即使在選擇TMVP的情況下,所導出之運動向量仍將參考當前圖像之參考圖像清單中可用的圖像。又,在AMVP模式中,若TMVP違反運動向量限制,則運動向量差可補償TMVP以使得所導出之運動向量順應運動向量限制。
在合併/跳過模式中,可能不存在此控制(例如,若TMVP違反運動向量限制,則無法補償TMVP)。因此,在合併/跳過模式中,選擇TMVP(例如,時間合併候選者)可導致在運動向量範圍之外的運動向量(亦即,視差運動向量或參考另一層之運動向量違反運動向量限制),此係因為時間相鄰區塊(亦即,同置區塊)可包括指向長期參考圖像之運動向量,長期參考圖像不為視圖間或層間參考圖像。
舉例而言,在合併/跳過模式中,若選擇TMVP,則視訊編碼器20及視訊解碼器30可需要判定參考圖像清單及參考圖像清單索引。在合併/跳過模式中,視訊編碼器20及視訊解碼器30可利用預設參考圖像清單及預設索引(例如,HEVC中之索引0),而非使用TMVP之參考圖像清單及參考圖像清單索引。用於TMVP之預設索引可被稱作TMVP參考索引,此係因為預設索引不一定需要限於索引0。
確保TMVP符合運動向量限制之一個技術為使視訊編碼器20及視訊解碼器30實施運動向量截割,以使得運動向量在運動向量範圍內。然而,此TMVP截割將要求在上文所描述之僅高階語法(僅HLS)改變下不允許的在圖像之區塊層級之視訊寫碼改變。換言之,TMVP截割可對於3DV-HEVC良好地起作用,但對於MV-HEVC或SHVC不起作 用。
為了避免區塊層級改變且順應僅HLS要求,可能存在對參考圖像清單及/或哪些圖像可用於框間預測的額外約束,以使得TMVP不會導致違反運動向量限制。作為一個實例,視訊編碼器20及視訊解碼器30可不使用並非使用視圖間預測之任何視圖(亦即,任何圖像)的視圖間參考圖像的正常時間長期參考圖像。對於藉由任何層之層間參考圖像而使用層間預測之任何圖像,相同的情形可成立。作為另一實例,視訊編碼器20及視訊解碼器30在TMVP期間用作另一圖像之同置圖像(例如,時間圖像)之任何圖像在其參考圖像清單中之任一者中無法具有長期參考(時間)圖像。
作為另一實例,視訊編碼器20及視訊解碼器30可不在參考圖像清單中包括參考索引等於TMVP參考索引的視圖間或層間參考圖像(例如,來自基本視圖或基本層之參考圖像)。舉例而言,如上文所描述,用於TMVP之預設參考索引在HEVC中為零(亦即,在參考圖像清單中之第一輸入項)。在一些實例中,視訊編碼器20及視訊解碼器30可不在參考圖像清單之零參考索引處包括視圖間或層間參考圖像。
作為又一實例,視訊編碼器20及視訊解碼器30可避免在候選運動向量預測子之清單中包括TMVP。舉例而言,若運動向量限制適用且參考圖像清單之TMVP參考索引(例如,在HEVC中之零索引)識別視圖間或層間參考圖像(例如,在基本視圖中或在基本層中之圖像),則視訊編碼器20及視訊解碼器30可停用TMVP。
僅出於說明之目的而提供用於解決合併/跳過模式下之TMVP的上文技術。此等技術可與另一技術結合使用,或單獨地使用。
在AMVP模式的情況下,可能存在關於運動向量差(MVD)控制之額外約束。如上文所描述,視訊編碼器20傳信且視訊解碼器30接收在運動向量(例如,使用最佳匹配搜尋找到的運動向量)與運動向量預測 子(MVP)之間的運動向量差(MVD)。HEVC標準使用mvd_l1_zero_flag語法元素,其指示在RefPicList1中所識別之圖像的MVD未被傳信且經推斷為零。換言之,若mvd_l1_zero_flag為真(例如,數位1),則視訊解碼器30判定在參考圖像在RefPicList1中的情況下,MVD為零。在此狀況下,所導出之運動向量等於MVP,此係因為MVD經推斷為零。
然而,若啟用運動向量限制,則可能需要使用MVD補償MVP之違反運動向量限制的組件。舉例而言,若垂直MV分量將被限制,則視訊解碼器30應能夠用MVD補償MVP之可能大的垂直分量,使得在垂直方向上的最後所導出之運動向量滿足運動向量限制。因此,在一些實例中,當啟用運動向量限制且在具有運動向量限制的情況下可能不啟用mvd_l1_zero_flag時,視訊編碼器20可總是傳信MVD。
因此,在一些實例中,可能需要對mvd_l1_zero_flag之額外約束。舉例而言,對於使用視圖間預測之任何視圖分量(例如,紋理視圖分量或深度視圖分量),mvd_l1_zero旗標可受到約束而總是等於0。作為另一實例,若啟用運動向量限制,則視訊編碼器20及視訊解碼器30可推斷mvd_l1_zero_flag之值等於0,且視訊編碼器20可不傳信且視訊解碼器30可不接收位元串流中之mvd_l1_zero_flag的值。作為另一實例,mvd_l1_zero_flag仍可被傳信,但具有停用值(例如,0)。
作為另一實例,技術可相反地來應用。舉例而言,若mvd_l1_zero_flag將為真,則可不啟用運動向量限制。換言之,視訊編碼器20可在mvd_l1_zero_flag為真的情況下不傳信指示啟用運動向量限制的運動向量限制旗標,且可僅在mvd_l1_zero_flag為假的情況下傳信指示啟用運動向量限制的運動向量限制旗標。
視訊編碼器20可以如下方式實施僅在mvd_l1_zero_flag為假的情況下傳信指示啟用運動向量限制之旗標的條件。
作為另一實例,簡化技術可為當啟用運動向量限制時,沒有顯式地傳信之參考索引(在AMVP模式下)可指向視圖間或層間參考圖像。舉例而言,在AMVP模式中,視訊編碼器20可判定是否啟用運動向量限制。若啟用運動向量限制,則視訊編碼器20可判定不參考視圖間或層間參考圖像之參考圖像清單的參考索引。在此實例中,mvd_l1_zero_flag可不被約束為等於零,此係因為視訊編碼器20將不選擇視圖間或層間參考圖像。因此,所導出之運動向量將不參考視圖間或層間參考圖像,其中運動向量限制可能不適用。
緊接在前面的實例技術可被視為對參考索引之約束。在此實例中,視訊編碼器20可比較絕對值或僅正值(因為負垂直值分量可指向參考視圖之已經重建構區塊)與運動向量限制要求。僅在運動向量不滿足運動向量限制的條件的情況下,才不允許使用參考視圖間或層間參考圖像(例如,基本視圖或基本層)的參考索引。舉例而言,有可能mvd_l1_zero_flag等於1且參考索引參考視圖間或層間參考圖像之所導出運動向量滿足運動向量限制規則。若所導出之運動向量將滿足運動向量限制規則,則即使mvd_l1_zero_flag為真,視訊編碼器20仍可選擇參考視圖間或層間參考圖像之參考索引。
如上文所描述,對於多視圖視訊寫碼,運動向量限制之使用可 為可選擇的,且在位元串流中用指示啟用運動向量限制之旗標或其他語法元素來指示。對於可調式視訊寫碼,可永久地啟用運動向量限制,且在一些實例中,運動向量限制要求可為:所導出之運動向量為零向量(例如,若運動向量參考層間參考圖像,則所導出之運動向量的水平(x)分量及垂直(y)分量兩者皆等於零)。
上文所描述之實例MVD控制技術亦可與可調式視訊寫碼技術(例如,SHVC)一起使用。舉例而言,若運動向量為約束(例如,使用運動向量限制),則視訊編碼器20可設定mvd_l1_zero_flag為零以使得能夠藉由MVD補償運動向量預測子,使得所導出之運動向量滿足約束(例如,MV=MVD+MVP=0)。換言之,視訊編碼器20可避免導致所導出之運動向量違反運動向量限制的MVP及MVD的組合。
作為另一實例,視訊編碼器20可避免選擇在啟用mvd_l1_zero_flag的情況下將致使所導出之運動向量違反運動向量限制的一運動向量預測子。舉例而言,在啟用mvd_l1_zero_flag的情況下,視訊編碼器20可僅選擇可滿足約束(亦即,運動向量限制)的運動向量預測子(例如,AMVP候選者)。
舉例而言,對於層間參考圖像,一個實例可將用以形成框間預測之MV限制為零。其意謂對於AMVP模式,MV=MVP+MVD等於零。如上文所描述,視訊解碼器30基於由視訊編碼器20傳信且由視訊解碼器30接收之MVP索引(亦即,候選運動向量預測子之清單的索引)判定MVP。對於參考清單L1(亦即,RefPicList1),當參考索引指向層間參考圖像時,MV應等於零,因此在啟用mvd_l1_zero_flag的情況下,視訊編碼器20可僅選擇候選運動向量預測子之清單的索引,該索引參考具有值零之運動向量預測子(亦即,水平及垂直分量等於零)。以此方式,因為自經啟用的mvd_l1_zero_flag推斷MVD等於零,所以所導出之運動向量將等於零,此係因為MVP等於0(亦即,MV=MVP +MVD,且MVP=0及MVD=0,因此MV=0)。因此,對於層間參考圖像而言,在啟用mvd_l1_zero_flag及MV被約束為零的情況下,視訊編碼器20不應使用且傳信指向使用非零AMVP候選者(亦即,MVP不等於0)之層間參考圖像的參考索引之MVP索引(亦即,候選運動向量預測子之清單的索引)。
作為另一實例,針對使用MV約束(亦即,運動向量限制)之層亦可停用mvd_l1_zero_flag(傳信為零)。作為又一實例,視訊編碼器20可僅針對視圖間或層間(例如,基本視圖/層)傳信mvd_l1_zero_flag,且可針對具有MV約束的增強視圖/層跳過mvd_l1_zero_flag傳信,且mvd_l1_zero_flag的值經推斷為零。
作為另一實例,若參考圖像清單L1(RefPicList1)包括至少一個視圖間/層間參考圖像,則視訊編碼器20可針對具有MV約束之增強視圖/層僅傳信為零或經推斷為零之mvd_l1_zero_flag。作為又一實例,視訊編碼器20及視訊解碼器30可根據參考圖像而不同地處理mvd_l1_zero_flag。舉例而言,若參考圖像為視圖間/層間圖像,則視訊編碼器20可總是傳信MVD值,而不管mvd_l1_zero_flag。
類似特徵亦可適用於MVC擴展。又,在以上實例中,MV可被約束為其他值而非零,可針對垂直MV分量、水平MV分量或兩者進行約束。換言之,運動向量限制可要求將所導出之運動向量限制為非零值。又,限制可適用於僅y分量、僅x分量或適用於x分量及y分量兩者。此外,對一個分量之限制不一定需要等於對另一分量之限制。
一般而言,在一些實例中,視訊編碼器20可判定旗標(例如,mvd_l1_zero_flag)之值總是指示用於參考圖像清單(例如,RefPicList1)中之圖像的運動向量差不為零,且可產生旗標之值以用於輸出。根據視訊解碼器30之觀點而言,視訊解碼器30可自所接收之位元串流判定旗標值(例如,mvd_l1_zero_flag),該旗標值指示在參 考圖像清單(例如,RefPicList1)中所識別之圖像的運動向量差是否為零,且該旗標值總是指示在參考圖像清單中之圖像的運動向量差不為零。
在一些實例中,對於運動向量限制,除了如上文關於TMVP所描述之視圖間或層間參考圖像的定位之外,視圖間或層間參考圖像(例如,基本視圖或基本層參考圖像)的定位可能影響記憶體頻寬減少。舉例而言,記憶體頻寬減少的一重要狀況可為最壞情況情境。否則,若考慮某其他非最壞情況條件,則對於視訊解碼器30而言,仍可需要考慮最壞情況的實施,否則可能不會達成實際簡化或記憶體頻寬減少。為此,為了自運動向量限制(例如,用於多視圖視訊寫碼之視差運動向量範圍或用於可調式視訊寫碼之層間運動向量範圍)獲益,當運動向量限制適用時可能存在對參考圖像的某些約束。
舉例而言,假定未使用視圖間預測的視圖之每一視圖分量(亦即,紋理視圖分量或深度視圖分量)之不同時間參考圖像的最大數目為maxNumTempPics0,且假定用視圖間預測寫碼之每一視圖分量的不同時間參考圖像的最大數目為maxNumTempPics1。在一些實例中,maxNumTempPics0應小於或等於maxNumTempPics1。
因此,為了藉由限制參考視圖間或層間參考圖像(例如,基本視圖或基本層參考圖像)之運動向量的垂直分量而進行實際記憶體頻寬減少,視圖間或層間參考圖像可能必須存在於至少一個參考清單中。否則,若未將視圖間或層間參考圖像插入至參考圖像清單中且(例如)可替代地使用其他時間參考圖像,則對於參考視圖間或層間參考圖像的運動向量之運動向量限制未解決在此實例中的將使得所有時間圖像作為參考清單中之參考圖像的最壞情況。
換言之,若啟用運動向量限制,則運動向量限制之益處(諸如,記憶體頻寬減少)可僅在視圖間或層間參考圖像包括於參考圖像清單 中之一者中的情況下為可用的。否則,在參考圖像清單中之所有圖像將為時間圖像,且運動向量限制將不適用。因此,在一些實例中,若啟用運動向量限制,則視訊編碼器20及視訊解碼器30可經組態以要求在參考圖像清單中之一者中包括至少一個視圖間或層間參考圖像。
作為對參考圖像清單之一個實例約束,非基本視圖或層(例如,相依視圖或相依/增強層)的所有視圖分量具有多達兩個時間參考圖像及一個視圖間或層間參考圖像(例如,基本視圖或基本層)。作為對參考圖像清單之另一實例約束,非基本視圖或層之所有視圖分量具有多達兩個時間參考圖像,一些視圖分量經視圖間或層間預測(使用一個視圖間或層間參考圖像),且一些視圖分量未經視圖間或層間預測。
如上文所描述,對於多視圖視圖寫碼,運動向量限制之使用可為可選擇的。在一些實例中,尤其在逐LCU地配置像素記憶體時,為了促進記憶體存取,當(或僅當)視差運動向量具有零垂直分量時可能存在記憶體頻寬減少益處。為了視差運動向量範圍之傳信的簡單起見,在一些實例中,視訊編碼器20可在補充增強資訊(SEI)訊息、序列參數集、視訊參數集或視訊可用性資訊(VUI)訊息中傳信指示視差運動向量之y分量被限制為零的旗標。
以下偽碼說明用於在SEI訊息中包括指示視差運動向量之y分量被限制為零的旗標之方式。
zero_vertical_disparity_mv_flag等於1指示視差運動向量總是具有等於0之垂直分量。zero_vertical_disparity_mv_flag等於0指示視差運動向量可具有不等於0之垂直分量。
video_parameter_set_id指定含有視圖間相依關係資訊之視訊參數集。video_parameter_set_id之值應等於由含有並列解碼資訊SEI訊息之存取單元的經寫碼圖像之視圖分量所參考的video_parameter_set_id之值。
pdi_init_delay_ctb_vertical_minus3pdi_init_delay_ctb_horizontal_minus2指定任何參考視圖分量中之不應被使用如作用中視訊參數集識別符(等於當前SEI訊息中所含有的語法元素video_parameter_set_id)中所指定的視圖間預測之經寫碼視圖分量用於視圖間參考之不可用的參考區域。
變數horCtb經導出為:horCtb=pdi_init_delay_ctb_horizontal_minus2?pdi_init_delay_ctb_horizontal_minus2+2+(CtbAddrInRS%PicWidthInCtbsY):0。變數verCtb經導出為:verCtb=CtbAddrInRS/PicWidthInCtbsY+pdi_init_delay_ctb_vertical_minus3+3。
當不存在時,pdi_init_delay_ctb_vertical_minus3經推斷為-1,或等效地,verCtb經推斷為:CtbAddrInRS/PicWidthInCtbsY+2。
以此方式,位元串流約束規則可制訂為以下之限制集合。若存在對用於藉由層間/視圖間參考圖像(例如,由來自合併/跳過或AMVP模式之參考索引識別)進行的運動補償的運動向量之限制,則在使用合併/跳過模式的情況下,位元串流可(例如,應)不含有合併/跳過索引(亦即,用於合併/跳過模式之候選運動向量預測子之清單的索引),或在使用AMVP模式的情況下,位元串流可(例如,應)不含有MVP索引(亦即,用於AMVP模式之候選運動向量預測子之清單的索引)及MVD,該等合併/跳過索引或MVP索引及MVD將產生不滿足運動向量限制之運動向量。另外,位元串流可(例如,應)不含有用於mvd_l1_zero_flag之非零值(意謂停用此旗標),此係因為位元串流可能需要具有非零MVD以使得對於參考清單L1(RefPicList1),MV= MVP+MVD將滿足MV約束(亦即,運動向量限制)。
舉例而言,若對於層間/視圖間參考圖像將運動向量之一或兩個分量限制為零,則位元串流可(例如,應)不含有用於合併模式之合併索引,或用於AMVP模式之MVP索引及MVD,該合併索引或MVP索引及MVD將產生非零運動向量或運動向量分量。另外,位元串流可(例如,應)不含有用於mvd_l1_zero_flag之非零值(意謂停用此旗標),此係因為位元串流可能需要具有非零MVD以使得對於參考清單L1(RefPicList1)MV=MVP+MVD等於零。
可將上文所描述之約束中的一些或全部強加於存在於位元串流中之語法元素(例如,資訊)。舉例而言,用於位元串流之約束規則可被制訂為如下:對於每一參考圖像清單RefPicListX(其中X為0或1),合併索引(merge_idx)、MVP索引(mvp_lX_flag)、參考索引(ref_idx_lX)、MVD(MvdLX)及mvd_l1_zero_flag應提供具有滿足運動向量限制之運動向量分量(例如,兩個分量等於零(例如,對於SHVC狀況))的MV。
換言之,視訊編碼器20及視訊解碼器30可各自建構候選運動向量預測子之清單。在合併/跳過模式中,視訊編碼器20可判定候選運動向量預測子之清單的索引(該索引識別用以導出運動向量之運動向量預測子,該運動向量之值順應運動向量限制)且產生候選運動向量預測子之清單的索引以用於輸出。在合併/跳過模式中,視訊解碼器30可自所接收之位元串流判定候選運動向量預測子之清單的索引,該索引識別用以導出運動向量之運動向量預測子。在此實例中,視訊解碼器30可將運動向量設定為等於運動向量預測子,且此外,運動向量預測子順應運動向量限制。
對於AMVP模式,視訊編碼器20可判定候選運動向量預測子之清單的索引,該索引識別用以導出運動向量之運動向量預測子。視訊編 碼器20亦可判定運動向量差以使得當將運動向量差與運動向量預測子相加時,所得運動向量順應運動向量限制。視訊編碼器20亦可產生候選運動向量預測子之清單的索引及運動向量差以用於輸出。在AMVP模式中,視訊解碼器30可自所接收之位元串流判定識別用以導出運動向量之運動向量預測子的候選運動向量預測子之清單的索引,且自所接收之位元串流判定運動向量差,運動向量差的值使得將運動向量差與運動向量相加時所得運動向量順應運動向量限制。視訊解碼器30可藉由將運動向量預測子與運動向量差相加而導出運動向量。
對於實現為僅HLS解決方案(不存在在區塊層級之改變)或具有允許的區塊層級改變之HLS解決方案的HEVC SVC擴展,所有描述係有效的。基本層編碼解碼器可為HEVC、AVC、MPEG-2等等。可將限制施加於垂直運動向量(MV)分量、水平MV分量或兩者上,亦包括參考清單L0(RefPicList0)、參考清單L1(RefPicList1)或兩者。然而,對於SVC狀況,對參考層間參考圖像之MV的兩個分量為零運動向量之限制為使用狀況中之一者。
因此,在一些實例中,視訊編碼器20可經組態以判定用於自運動向量預測子導出當前區塊之運動向量的資訊,該資訊確保所導出之運動向量順應運動向量限制。在此等實例中,運動向量可參考視圖間或層間參考圖像(例如,相對於包括當前區塊之圖像的在另一視圖或層中之圖像)。又,運動向量限制與參考視圖間或層間參考圖像之運動向量相關聯。
視訊編碼器20可基於資訊導出當前區塊的運動向量,且基於該所導出之運動向量視圖間或層間預測編碼當前區塊。視訊編碼器20亦可產生用於導出運動向量之所判定的資訊以用於輸出。
在一些實例中,視訊解碼器30可經組態以接收位元串流,該位元串流包括用於自運動向量預測子導出當前區塊之運動向量的資訊。 類似於上文,運動向量參考視圖間或層間參考圖像,且運動向量限制與參考視圖間或層間參考圖像之運動向量相關聯。在本發明中所描述之技術中,位元串流中之資訊確保所導出之運動向量順應運動向量限制。
在本發明中所描述之技術中,視訊解碼器30可基於位元串流中之資訊導出當前區塊的運動向量。視訊解碼器30亦可基於所導出之運動向量視圖間或層間預測解碼當前區塊。
上文關於用於記憶體頻寬減少之運動向量限制描述實例。下文描述關於並列解碼之技術。關於用於記憶體頻寬減少之運動向量限制所描述的技術並不一定需要與並列解碼一起使用。換言之,即使視訊編碼器20及視訊解碼器30不實施並列解碼,視訊編碼器20及視訊解碼器30仍可經組態以實施運動向量限制。
如上文所描述,一些技術依賴於巨集區塊列以指示並列解碼延遲。然而,對於基於HEVC之視訊寫碼技術而言,依賴於巨集區塊列可能並非可行的。又,一些技術傳信按LCU列之並列解碼延遲,但仍需要基於LCU大小轉換此等值以使得視訊解碼器30可判定何時開始並列解碼。
舉例而言,一些技術直接地傳信運動向量限制(例如,在JCT3V-B0037中)。運動向量限制之此直接傳信意謂傳信對運動向量分量之值的限制。此等技術將極可能要求將對運動向量分量之值的限制轉換成LCU列單位,其可能會出問題,此係因為仍將需要基於LCU大小來計算LCU列延遲(作為一個實例)。
在一些實例中,根據本發明中所描述之技術,視訊編碼器20可傳信且視訊解碼器30可接收以區塊大小為單位的運動向量限制資訊。基於運動向量限制資訊,視訊解碼器30可判定何時開始並列解碼。作為一個實例,視訊編碼器20可產生以區塊大小為單位的運動向量限制 之垂直運動向量範圍以用於輸出,且視訊解碼器30可自所接收之位元串流判定以區塊大小為單位的運動向量限制之垂直運動向量範圍。區塊大小單位可包含最大寫碼單元高度及最小寫碼單元高度單位中之一者。視訊解碼器30可基於垂直運動向量範圍並列解碼視圖間或層間參考圖像及包括當前區塊之當前圖像。
舉例而言,運動向量限制可界定水平及垂直分量之值的範圍。在一個實例中,視訊編碼器20可傳信且視訊解碼器30可接收以最大寫碼單元(LCU)高度或寬度為單位的垂直運動向量範圍或水平運動向量範圍(例如,垂直或水平視差運動向量範圍或用於層間參考圖像之垂直或水平運動向量範圍)。作為另一實例,視訊編碼器20可傳信且視訊解碼器30可接收以最小寫碼單元(SCU)為單位的運動向量限制範圍。作為又一實例,視訊編碼器20可傳信且視訊解碼器30可接收以四為單位的運動向量限制範圍。
在一些實例中,若運動向量限制指示垂直運動向量範圍等於或近似為零(意謂運動向量總是具有等於或小於零(例如,小於LCU高度)之垂直分量),則直到那時視訊編碼器20才可傳信水平運動向量範圍。在一些實例中,視訊編碼器20可總是傳信水平運動向量範圍。
在一些實例中,視訊編碼器20有可能直接傳信LCU列延遲。LCU列延遲指示垂直延遲。在此等實例中,當視訊編碼器20傳信LCU列延遲時,視訊編碼器20亦可直接傳信LCU行延遲。LCU行延遲指示水平延遲。在此等實例中,視訊解碼器30可直接自位元串流接收LCU列(垂直)延遲及LCU行(水平)延遲。作為一個實例,若運動向量(例如,視差運動向量或參考層間參考圖像之運動向量)被視為典型地小的(例如,對於垂直分量而言為0,且對於水平分量而言為-2),則可使得LCU列延遲為1,且亦可使得LCU行延遲為小的(例如,1或2)。
在上文實例中,視訊編碼器20可依據列或行直接傳信並列解碼 延遲(例如,LCU列延遲及LCU行延遲)。藉由依據列或行直接傳信並列解碼延遲,可不需要將基於運動向量分量的運動限制轉換成列或行。換言之,視訊編碼器20在傳信LCU列延遲及LCU行延遲的過程中可能已經考慮到LCU大小或區塊之大小。
上文實例描述運動向量限制(例如,x分量及y分量之運動向量範圍或LCU列或行延遲)之傳信。在一些實例中,視訊編碼器20可傳信且視訊解碼器30可接收在補充增強資訊(SEI)訊息中的運動向量限制。在一些實例中,視訊編碼器20可傳信且視訊解碼器30可接收在視訊參數集中的運動向量限制。在一些實例中,視訊編碼器20可傳信且視訊解碼器30可接收在序列參數集中的運動向量限制。在一些實例中,視訊編碼器20可傳信且視訊解碼器30可接收在視訊可用性資訊(VUI)訊息中的運動向量限制。
下文描述用於傳信並列解碼資訊之實例技術。舉例而言,下文提供實例偽碼及偽碼的語義以用於實施並列解碼。可單獨地或聯合地實施此等技術。又,下文針對並列解碼資訊提供之實例不應被視為限制性的,且僅出於說明目的而提供。此外,出於描述容易起見,關於多視圖視訊寫碼描述技術,但此等技術亦可擴展至可調式視訊寫碼技術。舉例而言,在描述使用諸如「視圖間參考」之術語的情況下,該術語可用層間參考來替換。換言之,用於視圖間參考之技術亦可擴展至層間參考。
下文證明並列解碼資訊SEI訊息語法。
video_parameter_set_id指定含有視圖間或層間相依關係資訊之視訊參數集。video_parameter_set_id之值應等於由含有並列解碼資訊 SEI訊息之存取單元的經寫碼圖像之視圖分量或層分量所參考的video_parameter_set_id之值。
pdi_init_delay_ctb_vertical_minus2pdi_init_delay_ctb_horizontal_minus2指定任何參考視圖分量或層圖像中之不應被使用如作用中視訊參數集識別符(等於當前SEI訊息中所含有的語法元素video_parameter_set_id)中所指定的視圖間或層間預測之經寫碼視圖分量用於視圖間或層間參考之不可用的參考區域。
變數horCtb經導出為:horCtb=pdi_init_delay_ctb_horizontal_minus2?pdi_init_delay_ctb_horizontal_minus2+2+(CtbAddrInRS%PicWidthInCtbsY):0;變數verCtb經導出為:verCtb=CtbAddrInRS/PicWidthInCtbsY+pdi_init_delay_ctb_vertical_minus2+2;refCtb位址refCtbAddr經導出為:refCtbAddr=Min(horCtb,PicWidthInCtbsY)+verCtb*PicWidthInCtbsY。
不可用參考區域包括等於或大於refCtbAddr之所有寫碼樹型區塊位址。當解碼經寫碼的視圖分量時,來自不可用參考區域(其來自參考視圖之視圖分量)之樣本不應由視圖間或層間預測程序參考。
pdi_init_delay_ctb_vertical_minus2的值應在0至PicHeightInCtbsY-2的範圍中,包括0及PicHeightInCtbsY-2。pdi_init_delay_ctb_horizontal_minus2的值應在0至PicWidthInCtbsY-2的範圍中,包括0及PicWidthInCtbsY-2。
當pdi_init_delay_ctb_horizontal_minus2等於0時,LCU列中具有小於verCtb的垂直位址之任何LCU(寫碼樹型區塊)可用於視圖間或層間預測。垂直LCU列延遲可(例如,應)等於或大於2。水平LCU行延遲 在適用的情況下可(例如,應)等於或大於2。
在一些實例中,可需要對於每一視圖具有相同LCU(寫碼樹型區塊)大小之約束。當視圖具有不同LCU大小時,最大LCU大小可適用於上文導出。可在視訊參數集擴展中傳信此最大LCU大小。
當解碼當前LCU時,假定水平視差運動向量極小,視訊解碼器30可需要同置LCU。然而,為了使得同置LCU可用,同置LCU之下、右及右下LCU可需要至少被解區塊濾波。為了實現彼情形,可需要預測(藉由(例如)運動補償及/或框內預測)上文所提及之LCU中的下LCU及右LCU。在此狀況下,可需要至少兩個LCU列延遲及兩個LCU行延遲。換言之,為了實現迴路內濾波(諸如,樣本自適應性偏移(SAO)濾波及解區塊濾波),視訊解碼器30在開始並列解碼當前圖像之前可需要等待直到視圖間或層間參考圖像的額外列經重建構為止。
在一些實例中,視訊編碼器20可僅在pdi_init_delay_ctb_vertical_minus2等於2時傳信pdi_init_delay_ctb_horizontal_minus2。作為另一實例,視訊編碼器20可僅傳信垂直LCU列延遲,如下:
verCtb=CtbAddrInRS/PicWidthInCtbsY+pdi_init_delay_ctb_vertical_minus3+3。
不可用參考區域為矩形區域,其具有作為左上角的座標(0,(verCtb*PicWidthInCtbsY))及作為右下角的(PicWidthInSamples,PicHeightInSamples)。當解碼經寫碼的視圖分量時,來自不可用參考區域(其來自參考視圖之視圖分量)之樣本可(例如,應)不由視圖間或層間預測程序來參考。
在一些實例中,視訊編碼器20可傳信pdi_init_delay_ctb_rs_address,其按光柵掃描次序指定LCU延遲。在一些實例中,視訊編碼器20可傳信pdi_init_delay_ctb_rs_address_minusctbwidth。在此等實例中,pdi_init_delay_ctb_rs_address_minusctbwidth+PicWidthInCtbsY按光柵掃描次序指示LCU延遲。
在一些實例中,視訊編碼器20可對於每一視圖針對其所有參考視圖或層單獨地傳信pdi_init_delay_ctb_vertical_minus2及pdi_init_delay_ctb_horizontal_minus2。在一些實例中,針對使用視圖間或層間預測之每一視圖或層的每一參考視圖或層,視訊編碼器20可單獨地傳信pdi_init_delay_ctb_vertical_minus2及pdi_init_delay_ctb_horizontal_minus2。舉例而言:
在一些實例中,對於所有上文狀況,pdi_init_delay_ctb_horizontal_minus1未被傳信且經推斷等於0。在一些實例中,video_parameter_set_id可被傳信為固定長度(例如,u(4))。
當假定僅像素重建構(包括例如運動補償及框內預測)需要逐LCU地進行,而解區塊可逐區塊(亦即,8x8區塊)地進行且樣本自適應性偏移(SAO)濾波可逐線地進行時,可顯著地降低LCU延遲。舉例而言,當視訊編碼器20僅傳信垂直LCU列延遲時,最小列延遲為2。當視訊編碼器20傳信垂直LCU列延遲及水平LCU行延遲兩者時,最小列 延遲為1,且最小LCU行延遲亦為1。在後一狀況下,語法可被如下修改:
語義為類似的,但其中verCtb及horCtb之計算被稍微修改如下:變數horCtb經導出為:horCtb=pdi_init_delay_ctb_horizontal_minus1?pdi_init_delay_ctb_horizontal_minus1+1+(CtbAddrInRS%PicWidthInCtbsY):0;變數verCtb經導出為:verCtb=CtbAddrInRS/PicWidthInCtbsY+pdi_init_delay_ctb_vertical_minus1+1;下文描述並列解碼資訊SEI訊息,不同LCU大小被描述於下文中。此實例類似於用於並列解碼資訊SEI訊息之替代者中的一者,其額外地支援各種經寫碼視圖分量中之不同CTU大小。此外,儘管關於SEI訊息描述實例,但技術可擴展至VUI語法元素。
下文提供並列解碼資訊SEI訊息語法。
並列解碼資訊SEI訊息可與任何存取單元相關聯。在SEI訊息中傳信的資訊適用於自與SEI訊息相關聯的存取單元開始至獨佔式地含有相同類型之SEI訊息的按解碼次序之下一個存取單元或至經寫碼視訊序列的末尾(按解碼次序較早的一者)之所有存取單元。應理解,一些視圖分量(在並列解碼資訊SEI訊息中傳信了其並列解碼資訊)可不 存在於經寫碼視訊序列中。
video_parameter_set_id指定含有視圖間或層間相依關係資訊之視訊參數集。video_parameter_set_id之值可(例如,應)等於由含有並列解碼資訊SEI訊息之存取單元的經寫碼圖像之視圖分量所參考的video_parameter_set_id之值。
對於經寫碼視圖分量i之第j個參考視圖的視圖分量,變數refLog2CtbSizeY、refPicWidthInCtbsY[i][j]及refPicHeightInCtbsY[i][j]可分別被設定為等於Log2CtbSizeY、PicWidthInCtbsY及PicHeightInCtbsY。
pdi_init_delay_ctu_vertical_minus2[i][j]pdi_init_delay_ctu_horizontal_minus2[i][j]指定第i個經寫碼視圖分量之第j個參考視圖分量中的不可用參考區域,該不可用參考區域可(例如,應)不被使用由video_parameter_set_id識別之作用中視訊參數集中所指定的視圖間或層間預測之第i個經寫碼視圖分量用於視圖間參考。pdi_unit_delay_ctu_vertical_minus2[i][j]的範圍可(例如,應)為0至refPicHeightInCtbs-3,包括0及refPicHeightInCtbs-3。pdi_unit_delay_ctu_horizontal_minus2[i][j]的範圍可(例如,應)為0至refPicWidthInCtbs-3,包括0及refPicWidthInCtbs-3。
在一些實例中,視訊編碼器20可傳信單一語法元素pdi_init_delay_ctu_minus2[i][j],且不傳信pdi_init_delay_ctu_vertical_minus2[i][j]及pdi_init_delay_ctu_horizontal_minus2[i][j]。在此等實例中,視訊解碼器30可如下自pdi_init_delay_ctu_minus2[i][j]導出pdi_init_delay_ctu_vertical_minus2[i][j]及pdi_init_delay_ctu_horizontal_minus2[i][j]之值:pdi_init_delay_ctu_horizontal_minus2[i][j]= pdi_init_delay_ctu_minus2[i][j]% refPicWidthInCtbs,且pdi_init_delay_ctu_vertical_minus2[i][j]=pdi_init_delay_ctu_minus2[i][j]/refPicWidthInCtbs。
變數horCtb[i][j]係被如下導出:horCtb[i][j]=pdi_init_delay_ctu_horizontal_minus2[i][j]?pdi_init_delay_ctu_horizontal_minus2[i][j]+2:0。變數verCtb[i][j]係被如下導出:verCtb[i][j]=pdi_init_delay_ctu_vertical_minus2[i][j]?pdi_init_delay_ctu_vertical_minus2[i][j]+2:0。
變數ctbAddr係被如下導出:
表示refCtb[i][j]之位址的變數refCtbAddr[i][j]係被如下導出:refCtbAddr[i][j]=horCtb[i][j]+verCtb[i][j]* refPicWidthInCtbsY[i][j]+ctbAddr。
經寫碼視圖分量i之第j個參考視圖中的不可用參考區域包括具有等於或大於refCtbAddr[i][j]之位址的所有寫碼樹型單元。當解碼第i個經寫碼視圖分量時,來自不可用參考區域(其來自經寫碼視圖分量i之第j個參考視圖之視圖分量)之樣本可(例如,應)不由視圖間或層間預測程序參考。
圖5為說明可實施本發明中所描述之技術的實例視訊編碼器20之方塊圖。視訊編碼器20可執行視訊圖塊內之視訊區塊的框內寫碼及框間寫碼。框內寫碼依賴於空間預測以減少或移除給定視訊圖框或圖像內之視訊的空間冗餘。框間寫碼依賴於時間預測以減少或移除視訊序 列之鄰近圖框或圖像內之視訊的時間冗餘。框內模式(I模式)可指若干基於空間的壓縮模式中之任一者。諸如單向預測(P模式)或雙向預測(B模式)之框間模式可指若干基於時間的壓縮模式中之任一者。視訊編碼器20亦可執行視圖間預測寫碼及層間預測寫碼,其中視訊編碼器20使用其他視圖或層之區塊以用於框間預測。
在圖5之實例中,視訊編碼器20包括分割單元350、預測處理單元410、參考圖像記憶體640、求和器500、變換處理單元520、量化處理單元540及熵編碼單元560。參考圖像記憶體640為經解碼圖像緩衝器(DPB)之一實例。預測處理單元410包括運動估計單元420、運動補償單元440及框內預測單元460。針對視訊區塊重建構,視訊編碼器20亦包括反量化處理單元580、反變換處理單元600及求和器620。亦可包括解區塊濾波器(圖5中未展示)以對區塊邊界進行濾波從而自經重建構視訊移除方塊效應假影。在需要時,解區塊濾波器通常將對求和器620之輸出進行濾波。除瞭解區塊濾波器之外,亦可使用額外迴路濾波器(迴路內或迴路後)。
如圖5中所示,視訊編碼器20接收視訊資料,且分割單元350將資料分割成視訊區塊。此分割亦可包括分割成圖塊、影像塊或其他較大單元,以及(例如)根據LCU及CU之四分樹結構的視訊區塊分割。視訊編碼器20大體上說明編碼在待編碼之視訊圖塊內之視訊區塊的組件。圖塊可劃分成多個視訊區塊(且可能被劃分成被稱作影像塊之視訊區塊的集合)。預測處理單元410可基於錯誤結果(例如,寫碼速率及失真之位準)選擇用於當前視訊區塊之複數個可能寫碼模式中之一者,諸如,複數個框內寫碼模式中的一者或複數個框間寫碼模式中之一者。預測處理單元410可將所得經框內寫碼或經框間寫碼區塊提供至求和器500以產生殘餘區塊資料且提供至求和器620以重建構經編碼區塊以用作參考圖像。
預測處理單元410內之框內預測單元460可執行相對於在與待寫碼之當前區塊相同的圖框或圖塊中之一或多個相鄰區塊的對當前視訊區塊之框內預測性寫碼以提供空間壓縮。預測處理單元410內之運動估計單元420及運動補償單元440執行相對於一或多個參考圖像中之一或多個預測性區塊的對當前視訊區塊的框間預測性寫碼以提供時間壓縮。
運動估計單元420可經組態以根據視訊序列之預定型樣判定視訊圖塊之框間預測模式。運動估計單元420及運動補償單元440可高度整合,但為概念目的而分別說明。由運動估計單元420執行之運動估計為產生估計視訊區塊之運動的運動向量之程序。舉例而言,運動向量可指示當前視訊圖框或圖像內之視訊區塊之PU相對於參考圖像內之預測性區塊的移位。運動估計單元420亦可判定運動向量預測子以判定運動向量差(MVD)。
預測性區塊為經發現在像素差方面密切匹配待寫碼之視訊區塊的PU之區塊,像素差可藉由絕對差和(SAD)、平方差和(SSD)或其他差量度判定。在一些實例中,視訊編碼器20可計算儲存於參考圖像記憶體640中之參考圖像之次整數像素位置的值。舉例而言,視訊編碼器20可內插參考圖像之四分之一像素位置、八分之一像素位置或其他分數像素位置的值。因此,運動估計單元420可執行相對於全像素位置及分數像素位置之運動搜尋且輸出具有分數像素精度之運動向量。
運動估計單元420藉由比較PU之位置與參考圖像之預測性區塊的位置而計算經框間寫碼圖塊中之視訊區塊的PU之運動向量。可自第一參考圖像清單(清單0或RefPicList0)或第二參考圖像清單(清單1或RefPicList1)選擇參考圖像,該等清單中之每一者識別儲存於參考圖像記憶體640中之一或多個參考圖像。運動估計單元420將經計算運動向量發送至熵編碼單元56及運動補償單元440。運動補償單元420亦可 將經計算運動向量預測子及MVD發送至熵編碼單元560。
由運動補償單元440執行之運動補償可涉及基於由運動估計(可能執行至子像素精度之內插)判定之運動向量提取或產生預測性區塊。在接收到當前視訊區塊之PU的運動向量時,運動補償單元440可在參考圖像清單中之一者中尋找運動向量所指向之預測性區塊。視訊編碼器20藉由自正被寫碼之當前視訊區塊的像素值減去預測性區塊之像素值來形成殘餘視訊區塊,從而形成像素差值。像素差值形成區塊之殘餘資料,且可包括明度及色度差分量兩者。求和器500表示執行此減法運算之一或多個組件。運動補償單元440亦可產生與視訊區塊及視訊圖塊相關聯之語法元素(例如,資訊)以供視訊解碼器30在解碼視訊圖塊之視訊區塊時使用。
作為由運動估計單元420及運動補償單元440執行之框間預測(如上文所描述)的替代,框內預測單元460可框內預測當前區塊。詳言之,框內預測單元460可判定用以編碼當前區塊之框內預測模式。在一些實例中,框內預測單元460可(例如)在單獨編碼遍次期間使用各種框內預測模式來編碼當前區塊,且框內預測單元460可自經測試模式選擇適當框內預測模式來使用。舉例而言,框內預測單元460可使用針對各種經測試框內預測模式之位元率-失真分析來計算位元率-失真值,且在經測試模式當中選擇具有最佳位元率-失真特性的框內預測模式。位元率-失真分析通常判定經編碼區塊與經編碼以產生經編碼區塊之原始未經編碼區塊之間的失真(或誤差)之量,以及用以產生經編碼區塊之位元率(亦即,位元之數目)。框內預測單元460可根據各種經編碼區塊之失真及位元率計算比率以判定哪一框內預測模式展現出區塊之最佳位元率-失真值。
在任何狀況下,在選擇區塊之框內預測模式之後,框內預測單元460可將指示區塊之選定框內預測模式的資訊提供至熵編碼單元 560。熵編碼單元560可根據本發明之技術編碼指示選定框內預測模式的資訊。視訊編碼器20可在所傳輸位元串流中包括組態資料,該組態資料可包括複數個框內預測模式索引表及複數個經修改框內預測模式索引表(亦稱作碼字映射表)、各種區塊之編碼上下文的定義,及最有可能用於上下文中之每一者的框內預測模式、框內預測模式索引表及經修改框內預測模式索引表之指示。
在預測處理單元410經由框間預測或框內預測產生當前視訊區塊的預測性區塊之後,視訊編碼器20藉由自當前視訊區塊減去預測性區塊而形成殘餘視訊區塊。殘餘區塊中之殘餘視訊資料可包括於一或多個TU中且應用於變換處理單元520。變換處理單元520使用諸如離散餘弦變換(DCT)或概念上類似的變換之變換將殘餘視訊資料變換成殘餘變換係數。變換處理單元520可將殘餘視訊資料自像素域轉換至變換域,諸如,頻域。
變換處理單元520可將所得變換係數發送至量化處理單元540。量化處理單元540對變換係數進行量化以進一步減小位元率。量化程序可減少與係數中之一些或全部相關聯的位元深度。可藉由調整量化參數來修改量化之程度。在一些實例中,量化處理單元540可接著執行對包括經量化變換係數之矩陣的掃描。或者,熵編碼單元560可執行掃描。
在量化之後,熵編碼單元560熵編碼經量化變換係數。舉例而言,熵編碼單元560可執行上下文自適應性可變長度寫碼(CAVLC)、上下文自適應性二進位算術寫碼(CABAC)、基於語法之上下文自適應性二進位算術寫碼(SBAC)、機率區間分割熵(PIPE)寫碼或另一熵編碼方法或技術。在由熵編碼單元560進行熵編碼之後,可將經編碼位元串流傳輸至視訊解碼器30或加以封存以供稍後傳輸或由視訊解碼器30擷取。熵編碼單元560亦可對正被寫碼之當前視訊圖塊的運動向量及 其他語法元素進行熵編碼。
反量化處理單元580及反變換處理單元600分別應用反量化及反變換,以在像素域中重建構殘餘區塊以供稍後用作參考圖像之參考區塊。運動補償單元440可藉由將殘餘區塊與參考圖像清單中之一者內的參考圖像中之一者之預測性區塊相加來計算參考區塊。運動補償單元440亦可將一或多個內插濾波器應用於經重建構殘餘區塊以計算次整數像素值以供在運動估計中使用。求和器620將經重建構殘餘區塊與由運動補償單元440產生之經運動補償預測區塊相加以產生參考區塊以供儲存於參考圖像記憶體640中。參考區塊可由運動估計單元420及運動補償單元440用作參考區塊以框間預測後續視訊圖框或圖像中之區塊。
在一些實例中,預測處理單元410可經組態以實施本發明中所描述之技術。然而,本發明中所描述之技術不限於此。在一些實例中,與視訊編碼器20內之一或多個其他單元結合的預測處理單元410可經組態以實施本發明中所描述之技術。在一些實例中,處理單元(圖5中未圖示)可經組態以實施本發明中所描述之技術。換言之,視訊編碼器20可包括一或多個處理器,且可經組態以實施本發明中所描述之實例技術。
舉例而言,視訊編碼器20(例如,經由預測處理單元410)可確保在視訊解碼器30所接收之位元串流中傳信之資訊致使視訊解碼器30導出順應運動向量限制的運動向量。作為一個實例,對於合併/跳過模式,視訊編碼器20可判定資訊,諸如候選運動向量預測子之清單的索引,該索引識別用以導出運動向量之運動向量預測子,該運動向量之值順應運動向量限制。作為另一實例,對於AMVP模式,視訊編碼器20可判定候選運動向量預測子之清單的索引,該索引識別用以導出運動向量之運動向量預測子。視訊編碼器20亦可判定運動向量差,以使 得當將運動向量差與運動向量預測子相加時,所得運動向量順應運動向量限制。在用於合併/跳過模式及AMVP模式之實例中,視訊編碼器20可產生候選運動向量預測子之清單的索引以用於輸出。對於AMVP模式,視訊編碼器20亦可產生運動向量差以用於輸出。
在一些實例中,視訊編碼器20可判定旗標(例如,mvd_l1_zero_flag)的值總是指示參考圖像中之圖像的運動向量差不為零。視訊編碼器20亦可產生旗標的值以用於在位元串流中輸出。
對於並列解碼,視訊編碼器20可以區塊大小為單位輸出運動向量限制的垂直運動向量範圍。舉例而言,運動向量限制可包括垂直運動向量範圍及水平運動向量範圍中之至少一者。在此等實例中,區塊大小單位可為用於垂直向量範圍的最大寫碼單元高度及最小寫碼單元高度單位及用於水平向量範圍的最大寫碼單元寬度及最小寫碼單元寬度單位中之一者。
在一些實例中,視訊編碼器20可判定包括第一視圖間或層間參考圖像之任何視圖間參考圖像或任何層間參考圖像中之不可用參考區域,該不可用參考區域無法被當前區塊用於視圖間或層間參考。在此等實例中,視訊編碼器20可基於所判定之不可用區域導出當前區塊之運動向量,以使得運動向量不參考任何視圖間或層間參考圖像中之不可用參考區域。視訊編碼器20亦可經組態以產生指示不可用參考區域之資訊以用於輸出。作為一個實例,視訊編碼器20可產生按光柵掃描次序指示不可用參考區域的資訊以用於輸出。
圖6為說明可實施本發明中所描述之技術的實例視訊解碼器30之方塊圖。在圖6之實例中,視訊解碼器30包括熵解碼單元800、預測處理單元810、反量化處理單元860、反變換單元880、求和器900及參考圖像記憶體920。參考圖像記憶體920為經解碼圖像緩衝器(DPB)之一實例。預測處理單元810包括運動補償單元820及框內預測單元840。 在一些實例中,視訊解碼器30可執行與關於來自圖5之視訊編碼器20所描述之編碼遍次大體上互反的解碼遍次。
在一些實例中,預測處理單元810可經組態以實施本發明中所描述之技術。然而,本發明中所描述之技術不限於此。在一些實例中,與視訊解碼器30內之一或多個其他單元結合的預測處理單元810可經組態以實施本發明中所描述之技術。在一些實例中,處理單元(圖6中未圖示)可經組態以實施本發明中所描述之技術。
在解碼程序期間,視訊解碼器30自視訊編碼器20接收表示經編碼視訊圖塊之視訊區塊及相關聯的語法元素之經編碼視訊位元串流。視訊解碼器30之熵解碼單元800對位元串流進行熵解碼以產生經量化係數、運動向量及其他語法元素。熵解碼單元800將運動向量及其他語法元素轉遞至預測處理單元810。視訊解碼器30可接收在視訊圖塊層級及/或視訊區塊層級處之語法元素。
當視訊圖塊經寫碼為框內寫碼(I)圖塊時,預測處理單元810之框內預測單元840可基於所傳信之框內預測模式及來自當前圖框或圖像的先前經解碼區塊之資料而產生當前視訊圖塊之視訊區塊的預測資料。當視訊圖框經寫碼為框間寫碼(亦即,B、P或GPB)圖塊時,預測處理單元810之運動補償單元820基於自熵解碼單元800接收之運動向量及其他語法元素而產生當前視訊圖塊之視訊區塊的預測性區塊。可自參考圖像清單中之一者內的參考圖像中之一者產生預測性區塊。視訊解碼器30可基於儲存於參考圖像記憶體920中之參考圖像使用預設建構技術或任何其他技術來建構參考圖框清單,清單0及清單1。
運動補償單元820藉由剖析運動向量及其他語法元素來判定當前視訊圖塊之視訊區塊的預測資訊,且使用預測資訊來產生正被解碼之當前視訊區塊之預測性區塊。舉例而言,運動補償單元820使用所接收之語法元素中之一些來判定用以寫碼視訊圖塊的視訊區塊之預測模 式(例如,框內預測或框間預測)、框間預測圖塊類型(例如,B圖塊、P圖塊或GPB圖塊)、圖塊之參考圖像清單中之一或多者的建構資訊、圖塊之每一經框間編碼視訊區塊的運動向量、圖塊之每一經框間寫碼視訊區塊的框間預測狀態及用以解碼當前視訊圖塊中之視訊區塊的其他資訊。
運動補償單元820亦可基於內插濾波器執行內插。運動補償單元820可使用如由視訊編碼器20在視訊區塊之編碼期間所使用之內插濾波器來計算參考區塊之次整數像素的內插值。在此狀況下,運動補償單元820可根據所接收之語法元素判定由視訊編碼器20使用之內插濾波器,且使用該等內插濾波器來產生預測性區塊。
反量化處理單元860對在位元串流中所提供且由熵解碼單元800解碼之經量化變換係數進行反量化(亦即,解量化)。反量化程序可包括使用由視訊編碼器20針對視訊圖塊中之每一視訊區塊所計算的量化參數判定量化之程度,且同樣地判定應該應用之反量化之程度。反變換處理單元880將反變換(例如,反DCT、反整數變換或概念上類似之反變換程序)應用於變換係數以便在像素域中產生殘餘區塊。
在運動補償單元820基於運動向量及其他語法元素產生當前視訊區塊之預測性區塊之後,視訊解碼器30藉由將來自反變換處理單元880之殘餘區塊與由運動補償單元820產生之對應預測性區塊求和來形成經解碼視訊區塊。求和器900表示執行此求和運算之一或多個組件。在需要時,亦可應用解區塊濾波器來對經解碼區塊濾波以便移除方塊效應假影。其他迴路濾波器(在寫碼迴路中抑或在寫碼迴路之後)亦可用以使像素轉變平滑,或以其他方式改良視訊品質。給定圖框或圖像中之經解碼視訊區塊接著被儲存於參考圖像記憶體920中,參考圖像記憶體920儲存用於後續運動補償之參考圖像。參考圖像記憶體920亦儲存經解碼視訊以供稍後呈現於諸如圖4之顯示器件32之顯示器 件上。
以此方式,視訊解碼器30為經組態以實施本發明中所描述之實例技術之視訊解碼器的實例。舉例而言,視訊解碼器30可包括一或多個處理器,且可經組態以實施本發明中所描述之實例技術。
舉例而言,視訊解碼器30可自運動向量預測子導出運動向量,該運動向量被確保順應運動向量限制。舉例而言,在合併/跳過模式中,視訊解碼器30將運動向量設定為等於運動向量預測子,且因此,要求運動向量預測子順應運動向量限制。在AMVP模式中,視訊解碼器30自位元串流判定運動向量差,該運動向量差之值使得當將運動向量差與運動向量預測子相加時,所得運動向量順應運動向量限制。在此實例中,視訊解碼器30可藉由將運動向量預測子與運動向量差相加而導出運動向量。
在一些實例中,視訊解碼器30可自所接收之位元串流判定運動向量限制的具有區塊大小之垂直運動向量範圍。視訊解碼器30可基於垂直運動向量範圍並列解碼視圖間或層間參考圖像及包括當前區塊之當前圖像。
又,在一些實例中,視訊解碼器30可自所接收之位元串流判定任何視圖間參考圖像或任何層間參考圖像中之不可用參考區域,該不可用參考區域無法被當前區塊用於視圖間或層間參考。在此等實例中,視訊解碼器30可基於位元串流中之資訊導出當前區塊之運動向量,以使得運動向量不參考任何視圖間參考圖像或任何層間參考圖像中之不可用參考區域。作為一個實例,視訊解碼器30可按光柵掃描次序判定不可用參考區域。
圖7為說明根據本發明中所描述之技術之視圖間或層間視訊解碼的實例操作之流程圖。出於說明之目的,關於視訊解碼器30描述該等技術。舉例而言,視訊解碼器30可接收位元串流,該位元串流包括用 於自運動向量預測子導出當前區塊之運動向量的資訊(1000)。運動向量可參考視圖間或層間參考圖像。位元串流可受到約束以使得自位元串流接收之資訊可確保所導出之運動向量順應運動向量限制。又,運動向量限制會限制運動向量的範圍以參考視圖間或層間參考圖像之子部分。
視訊解碼器30可基於位元串流中之資訊導出當前區塊的運動向量(1002)。視訊解碼器30可基於所導出之運動向量視圖間或層間預測解碼當前區塊(1004)。
圖8為說明根據本發明中所描述之技術之視圖間或層間視訊編碼的實例操作之流程圖。出於說明之目的,關於視訊解碼器30描述該等技術。舉例而言,視訊編碼器20可判定用於自運動向量預測子導出當前區塊之運動向量的資訊,該資訊確保所導出之運動向量順應運動向量限制(1006)。類似於上文,運動向量參考視圖間或層間參考圖像,且運動向量限制會限制運動向量的範圍以參考視圖間或層間參考圖像之子部分。
視訊編碼器20可基於資訊導出當前區塊的運動向量(1008)。視訊編碼器20可基於所導出之運動向量視圖間或層間預測編碼當前區塊(1010)。視訊編碼器20可產生用於導出運動向量之所判定的資訊以用於輸出(1012)。
在一或多個實例中,所描述之功能可以硬體、軟體、韌體或其任何組合來實施。若以軟體來實施,則該等功能可作為一或多個指令或程式碼而儲存於電腦可讀媒體上或經由電腦可讀媒體來傳輸,且由基於硬體之處理單元來執行。電腦可讀媒體可包括電腦可讀儲存媒體或通信媒體,電腦可讀儲存媒體對應於諸如資料儲存媒體之有形媒體,通信媒體包括促進電腦程式(例如)根據通信協定自一處傳送至另一處的任何媒體。以此方式,電腦可讀媒體大體上可對應於(1)非暫 時性之有形電腦可讀儲存媒體或(2)諸如信號或載波之通信媒體。資料儲存媒體可為可由一或多個電腦或一或多個處理器存取以擷取用於實施本發明中所描述之技術之指令、程式碼及/或資料結構的任何可用媒體。電腦程式產品可包括電腦可讀媒體。
作為實例而非限制,此電腦可讀儲存媒體可包含RAM、ROM、EEPROM、CD-ROM或其他光碟儲存器、磁碟儲存器或其他磁性儲存器件、快閃記憶體,或可用於儲存呈指令或資料結構之形式的所要程式碼且可由電腦存取的任何其他媒體。又,任何連接被適當地稱作電腦可讀媒體。舉例而言,若使用同軸電纜、光纖纜線、雙絞線、數位用戶線(DSL),或諸如紅外線、無線電及微波之無線技術而自網站、伺服器或其他遠端源傳輸指令,則同軸電纜、光纖纜線、雙絞線、DSL,或諸如紅外線、無線電及微波之無線技術包括於媒體之定義中。然而,應理解,電腦可讀儲存媒體及資料儲存媒體不包括連接、載波、信號或其他瞬態媒體,而是針對非瞬態有形儲存媒體。如本文中所使用,磁碟及光碟包括緊密光碟(CD)、雷射光碟、光學光碟、數位影音光碟(DVD)、軟性磁碟及藍光光碟,其中磁碟通常以磁性方式再生資料,而光碟藉由雷射以光學方式再生資料。以上各物之組合亦應包括於電腦可讀媒體之範疇內。
可藉由諸如一或多個數位信號處理器(DSP)、通用微處理器、特殊應用積體電路(ASIC)、場可程式化邏輯陣列(FPGA)或其他等效積體或離散邏輯電路之一或多個處理器來執行指令。因此,如本文中所使用,術語「處理器」可指前述結構或適合於實施本文中所描述之技術的任何其他結構中之任一者。另外,在一些態樣中,可將本文所描述之功能性提供於經組態以用於編碼及解碼之專用硬體及/或軟體模組內,或併入於組合式編碼解碼器中。又,該等技術可完全實施於一或多個電路或邏輯元件中。
本發明之技術可實施於廣泛多種器件或裝置中,包括無線手機、積體電路(IC)或IC之集合(例如,晶片組)。本發明中描述各種組件、模組或單元以強調經組態以執行所揭示之技術的器件之功能態樣,但未必要求藉由不同硬體單元實現。更確切而言,如上文所描述,各種單元可組合於一編碼解碼器硬體單元中或由結合合適的軟體及/或韌體的交互操作之硬體單元之集合(包括如上文所描述之一或多個處理器)來提供。
已描述各種實例。此等及其他實例屬於以下申請專利範圍之範疇內。

Claims (39)

  1. 一種視圖間或層間視訊解碼之方法,該方法包含:接收一位元串流,該位元串流包括用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,其中該位元串流受到約束以使得該資訊確保該所導出之運動向量順應一運動向量限制,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分;基於該位元串流中之該資訊導出該當前區塊之該運動向量;及基於該所導出之運動向量視圖間或層間預測解碼該當前區塊。
  2. 如請求項1之方法,其中該資訊包括該位元串流中之語法元素。
  3. 如請求項1之方法,其進一步包含:建構候選運動向量預測子之一清單;及自該所接收之位元串流判定候選運動向量預測子之該清單的一索引,該索引識別用以導出該運動向量之該運動向量預測子,其中導出該運動向量包含將該運動向量設定為等於該運動向量預測子,且其中要求該運動向量預測子順應該運動向量限制。
  4. 如請求項1之方法,其進一步包含:建構候選運動向量預測子之一清單;自該所接收之位元串流判定候選運動向量預測子之該清單的一索引,該索引識別用以導出該運動向量之該運動向量預測 子;及自該所接收之位元串流判定一運動向量差,該運動向量差之值使得當將該運動向量差與該運動向量預測子相加時,所得運動向量順應該運動向量限制,其中導出該運動向量包含將該運動向量預測子與該運動向量差相加。
  5. 如請求項1之方法,其進一步包含:自該所接收之位元串流判定一指示在一參考圖像清單中所識別之圖像的一運動向量差是否為零之旗標值,其中該旗標值總是指示在該參考圖像清單中之該等圖像的該運動向量差不為零。
  6. 如請求項1之方法,其中當該運動向量參考該層間參考圖像時,該運動向量限制指示該所導出之運動向量應等於零。
  7. 如請求項1之方法,其進一步包含:自該所接收之位元串流判定該運動向量限制之以區塊大小為單位的一垂直運動向量範圍;及基於該垂直運動向量範圍並列解碼該視圖間或層間參考圖像及包括該當前區塊之一當前圖像。
  8. 如請求項7之方法,其中該等區塊大小單位包含一最大寫碼單元高度單位及一最小寫碼單元高度單位中之一者。
  9. 如請求項1之方法,其中該視圖間或層間參考圖像包括一第一視圖間或層間參考圖像,該方法進一步包含:自該所接收之位元串流判定包括該第一視圖間或層間參考圖像之任何視圖間參考圖像或任何層間參考圖像中之一不可用參考區域,該不可用參考區域無法被該當前區塊用於視圖間或層間參考, 其中導出該運動向量包含基於該位元串流中之該資訊導出該當前區塊的該運動向量,以使得該運動向量不參考任何視圖間參考圖像或任何層間參考圖像中的該不可用參考區域。
  10. 如請求項9之方法,其中判定該不可用參考區域包含按光柵掃描次序判定該不可用參考區域。
  11. 一種視圖間或層間視訊編碼之方法,該方法包含:判定用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,該資訊確保該所導出之運動向量順應一運動向量限制,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分;基於該資訊導出該當前區塊之該運動向量;基於該所導出之運動向量視圖間或層間預測編碼該當前區塊;及產生用於導出該運動向量之該所判定的資訊以用於輸出。
  12. 如請求項11之方法,其中該資訊包括經產生以用於輸出之語法元素。
  13. 如請求項11之方法,其進一步包含:建構候選運動向量預測子之一清單,其中判定資訊包含判定候選運動向量預測子之該清單的一索引,該索引識別用以導出該運動向量之該運動向量預測子,該運動向量之值順應該運動向量限制,且其中產生以用於輸出包含產生候選運動向量預測子之該清單的該索引以用於輸出。
  14. 如請求項11之方法,其進一步包含:建構候選運動向量預測子之一清單, 其中判定資訊包含:判定候選運動向量預測子之該清單的一索引,該索引識別用以導出該運動向量之該運動向量預測子;及判定一運動向量差以使得當將該運動向量差與該運動向量預測子相加時,該所得運動向量順應該運動向量限制,且其中產生以用於輸出包含產生候選運動向量預測子之該清單的該索引及該運動向量差以用於輸出。
  15. 如請求項11之方法,其中判定資訊包含判定一旗標之一值總是指示在一參考圖像清單中之圖像的一運動向量差不為零,且其中產生以用於輸出包含產生該旗標之該值以用於輸出。
  16. 如請求項11之方法,其中當該運動向量參考該層間參考圖像時,該運動向量限制指示該所導出之運動向量應等於零。
  17. 如請求項11之方法,其進一步包含:產生該運動向量限制之以區塊大小為單位的一垂直運動向量範圍以用於輸出。
  18. 如請求項17之方法,其中該等區塊大小單位包含一最大寫碼單元高度單位及一最小寫碼單元高度單位中之一者。
  19. 如請求項11之方法,其中該視圖間或層間參考圖像包括一第一視圖間或層間參考圖像,該方法進一步包含:判定包括該第一視圖間或層間參考圖像之任何視圖間參考圖像或任何層間參考圖像中之一不可用參考區域,該不可用參考區域無法被該當前區塊用於視圖間或層間參考,其中導出該運動向量包含基於該所判定之不可用的區域導出該當前區塊的該運動向量,以使得該運動向量不參考任何視圖間或層間參考圖像中的該不可用參考區域;及產生指示該不可用參考區域之資訊以用於輸出。
  20. 如請求項19之方法,其中產生指示該不可用參考區域之資訊以用於輸出包含產生按光柵掃描次序指示該不可用參考區域的資訊以用於輸出。
  21. 一種器件,其包含一視訊解碼器,該視訊解碼器包含一或多個處理器且經組態以:接收一位元串流,該位元串流包括用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,其中該位元串流受到約束以使得該資訊確保該所導出之運動向量順應一運動向量限制,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分;基於該位元串流中之該資訊導出該當前區塊之該運動向量;及基於該所導出之運動向量視圖間或層間預測解碼該當前區塊。
  22. 如請求項21之器件,其中該資訊包括該位元串流中之語法元素。
  23. 如請求項21之器件,其中該視訊解碼器經組態以:建構候選運動向量預測子之一清單;及自該所接收之位元串流判定候選運動向量預測子之該清單的一索引,該索引識別用以導出該運動向量之該運動向量預測子,其中為了導出該運動向量,該視訊解碼器經組態以將該運動向量設定為等於該運動向量預測子,且其中要求該運動向量預測子順應該運動向量限制。
  24. 如請求項21之器件,其中該視訊解碼器經組態以: 建構候選運動向量預測子之一清單;自該所接收之位元串流判定候選運動向量預測子之該清單的一索引,該索引識別用以導出該運動向量之該運動向量預測子;及自該所接收之位元串流判定一運動向量差,該運動向量差之值使得當將該運動向量差與該運動向量預測子相加時,所得運動向量順應該運動向量限制,其中為了導出該運動向量,該視訊解碼器經組態以將該運動向量預測子與該運動向量差相加。
  25. 如請求項21之器件,其中該視訊解碼器經組態以:自該所接收之位元串流判定指示在一參考圖像清單中所識別之圖像的一運動向量差是否為零之一旗標值,其中該旗標值總是指示在該參考圖像清單中之該等圖像的該運動向量差不為零。
  26. 如請求項21之器件,其中該視訊解碼器經組態以:自該所接收之位元串流判定該運動向量限制之以區塊大小為單位的一垂直運動向量範圍;及基於該垂直運動向量範圍並列解碼該視圖間或層間參考圖像及包括該當前區塊之一當前圖像。
  27. 如請求項21之器件,其中該視圖間或層間參考圖像包括一第一視圖間或層間參考圖像,且其中該視訊解碼器經組態以:自該所接收之位元串流判定包括該第一視圖間或層間參考圖像之任何視圖間參考圖像或任何層間參考圖像中之一不可用參考區域,該不可用參考區域無法被該當前區塊用於視圖間或層間參考,其中為了導出該運動向量,該視訊解碼器經組態以基於該位 元串流中之該資訊導出該當前區塊的該運動向量,以使得該運動向量不參考任何視圖間參考圖像或任何層間參考圖像中的該不可用參考區域。
  28. 如請求項27之器件,其中為了判定該不可用參考區域,該視訊解碼器經組態以按光柵掃描次序判定該不可用參考區域。
  29. 如請求項21之器件,其中該器件包含以下各者中之一者:一無線通信器件;一微處理器;及一積體電路。
  30. 一種器件,其包含一視訊編碼器,該視訊編碼器包含一或多個處理器且經組態以:判定用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,該資訊確保該所導出之運動向量順應一運動向量限制,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分;基於該資訊導出該當前區塊之該運動向量;基於該所導出之運動向量視圖間或層間預測編碼該當前區塊;及產生用於導出該運動向量之該所判定的資訊以用於輸出。
  31. 如請求項30之器件,其中該資訊包括經產生以用於輸出之語法元素。
  32. 如請求項30之器件,其中該視訊編碼器經組態以:建構候選運動向量預測子之一清單,其中為了判定資訊,該視訊編碼器經組態以判定候選運動向量預測子之該清單的一索引,該索引識別用以導出該運動向量 之該運動向量預測子,該運動向量之值順應該運動向量限制,且其中為了產生以用於輸出,該視訊編碼器經組態以產生候選運動向量預測子之該清單的該索引以用於輸出。
  33. 如請求項30之器件,其中該視訊編碼器經組態以:建構候選運動向量預測子之一清單,其中為了判定資訊,該視訊編碼器經組態以:判定候選運動向量預測子之該清單的一索引,該索引識別用以導出該運動向量之該運動向量預測子;及判定一運動向量差以使得當將該運動向量差與該運動向量預測子相加時,所得運動向量順應該運動向量限制,且其中為了產生以用於輸出,該視訊編碼器經組態以產生候選運動向量預測子之該清單的該索引及該運動向量差以用於輸出。
  34. 如請求項30之器件,其中為了判定資訊,該視訊編碼器經組態以判定一旗標之一值總是指示在一參考圖像清單中之圖像的一運動向量差不為零,且其中為了產生以用於輸出,該視訊編碼器經組態以產生該旗標之該值以用於輸出。
  35. 如請求項34之器件,其中該視訊編碼器經組態以:產生該運動向量限制之以區塊大小為單位的一垂直運動向量範圍以用於輸出。
  36. 如請求項30之器件,其中該視圖間或層間參考圖像包括一第一視圖間或層間參考圖像,且其中該視訊編碼器經組態以:判定包括該第一視圖間或層間參考圖像之任何視圖間參考圖像或任何層間參考圖像中之一不可用參考區域,該不可用參考區域無法被該當前區塊用於視圖間或層間參考, 其中為了導出該運動向量,該視訊編碼器經組態以基於該所判定之不可用的區域導出該當前區塊的該運動向量,以使得該運動向量不參考任何視圖間或層間參考圖像中的該不可用參考區域;及產生指示該不可用參考區域之資訊以用於輸出。
  37. 如請求項36之器件,其中為了產生指示該不可用參考區域之資訊以用於輸出,該視訊編碼器經組態以產生按光柵掃描次序指示該不可用參考區域的資訊以用於輸出。
  38. 一種電腦可讀儲存媒體,其具有儲存於其上之指令,該等指令在執行時致使用於解碼視訊資料之一器件之一或多個處理器:接收一位元串流,該位元串流包括用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,其中該位元串流受到約束以使得該資訊確保該所導出之運動向量順應一運動向量限制,且其中該運動向量限制會限制該運動向量之一範圍以參考該視圖間或層間參考圖像之一子部分;基於該位元串流中之該資訊導出該當前區塊之該運動向量;及基於該所導出之運動向量視圖間或層間預測解碼該當前區塊。
  39. 一種器件,其包含:用於接收一位元串流之構件,該位元串流包括用於自一運動向量預測子導出一當前區塊之一運動向量的資訊,其中該運動向量參考一視圖間參考圖像或一層間參考圖像,其中該位元串流受到約束以使得該資訊確保該所導出之運動向量順應一運動向量限制,且其中該運動向量限制會限制該運動向量之一範圍 以參考該視圖間或層間參考圖像之一子部分;用於基於該位元串流中之該資訊導出該當前區塊之該運動向量的構件;及用於基於該所導出之運動向量視圖間或層間預測解碼該當前區塊的構件。
TW103100239A 2013-01-04 2014-01-03 用於視圖間或層間參考圖像之位元串流約束及運動向量限制 TWI544788B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361749213P 2013-01-04 2013-01-04
US201361754864P 2013-01-21 2013-01-21
US201361755274P 2013-01-22 2013-01-22
US201361758206P 2013-01-29 2013-01-29
US14/146,149 US10021414B2 (en) 2013-01-04 2014-01-02 Bitstream constraints and motion vector restriction for inter-view or inter-layer reference pictures

Publications (2)

Publication Number Publication Date
TW201444349A true TW201444349A (zh) 2014-11-16
TWI544788B TWI544788B (zh) 2016-08-01

Family

ID=51060935

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103100239A TWI544788B (zh) 2013-01-04 2014-01-03 用於視圖間或層間參考圖像之位元串流約束及運動向量限制

Country Status (8)

Country Link
US (1) US10021414B2 (zh)
EP (1) EP2941875A1 (zh)
JP (1) JP6416115B2 (zh)
KR (1) KR102266364B1 (zh)
CN (1) CN104885458B (zh)
BR (1) BR112015016011B1 (zh)
TW (1) TWI544788B (zh)
WO (1) WO2014107565A1 (zh)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200413044A1 (en) 2018-09-12 2020-12-31 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking hmvp candidates depend on total number minus k
TWI731360B (zh) * 2018-06-29 2021-06-21 大陸商北京字節跳動網絡技術有限公司 查找表的使用條件
US11134243B2 (en) 2018-07-02 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Rules on updating luts
US11134267B2 (en) 2018-06-29 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Update of look up table: FIFO, constrained FIFO
US11140385B2 (en) 2018-06-29 2021-10-05 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in LUT
US11159817B2 (en) 2018-06-29 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Conditions for updating LUTS
US11159807B2 (en) 2018-06-29 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Number of motion candidates in a look up table to be checked according to mode
US11528500B2 (en) 2018-06-29 2022-12-13 Beijing Bytedance Network Technology Co., Ltd. Partial/full pruning when adding a HMVP candidate to merge/AMVP
US11528501B2 (en) 2018-06-29 2022-12-13 Beijing Bytedance Network Technology Co., Ltd. Interaction between LUT and AMVP
US11589071B2 (en) 2019-01-10 2023-02-21 Beijing Bytedance Network Technology Co., Ltd. Invoke of LUT updating
US11641483B2 (en) 2019-03-22 2023-05-02 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools
US11895318B2 (en) 2018-06-29 2024-02-06 Beijing Bytedance Network Technology Co., Ltd Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks
US11909951B2 (en) 2019-01-13 2024-02-20 Beijing Bytedance Network Technology Co., Ltd Interaction between lut and shared merge list
US11956464B2 (en) 2019-01-16 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Inserting order of motion candidates in LUT

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012173439A2 (ko) 2011-06-15 2012-12-20 한국전자통신연구원 스케일러블 비디오 코딩 및 디코딩 방법과 이를 이용한 장치
CN105230017B (zh) * 2013-03-21 2019-08-06 索尼公司 图像编码装置和方法以及图像解码装置和方法
KR20140121315A (ko) 2013-04-04 2014-10-15 한국전자통신연구원 참조 픽처 리스트를 이용한 다 계층 기반의 영상 부호화/복호화 방법 및 그 장치
KR20140129624A (ko) * 2013-04-30 2014-11-07 주식회사 칩스앤미디어 동영상 처리 방법 및 장치
CN105519117A (zh) * 2013-09-06 2016-04-20 三菱电机株式会社 动态图像编码装置、动态图像转码装置、动态图像编码方法、动态图像转码方法以及动态图像流传输系统
GB201405649D0 (en) * 2014-03-28 2014-05-14 Sony Corp Data encoding and decoding
WO2015169230A1 (en) * 2014-05-06 2015-11-12 Mediatek Inc. Video processing method for determining position of reference block of resized reference frame and related video processing apparatus
PT4093035T (pt) * 2014-12-03 2024-01-12 Panasonic Ip Man Co Ltd Dispositivo de geração de dados
CN107615763B (zh) * 2015-05-28 2020-09-11 寰发股份有限公司 一种管理解码图像缓存器的方法及装置
WO2017052009A1 (ko) * 2015-09-24 2017-03-30 엘지전자 주식회사 영상 코딩 시스템에서 amvr 기반한 영상 코딩 방법 및 장치
CN108737841B (zh) * 2017-04-21 2020-11-24 腾讯科技(深圳)有限公司 编码单元深度确定方法及装置
WO2018210315A1 (en) * 2017-05-18 2018-11-22 Mediatek Inc. Method and apparatus of motion vector constraint for video coding
US10841794B2 (en) * 2017-09-18 2020-11-17 Futurewei Technologies, Inc. Adaptive motion vector resolution
WO2019183906A1 (zh) * 2018-03-29 2019-10-03 华为技术有限公司 帧间预测的方法和装置
TWI700922B (zh) * 2018-04-02 2020-08-01 聯發科技股份有限公司 用於視訊編解碼系統中的子塊運動補償的視訊處理方法和裝置
CN116761000B (zh) 2018-08-29 2023-12-19 北京达佳互联信息技术有限公司 视频解码的方法、计算设备和存储介质
US10375416B1 (en) 2018-09-05 2019-08-06 Tencent America LLC Segment types in video coding
WO2020192726A1 (en) 2019-03-27 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. History-based motion vector prediction
CN117676134A (zh) 2019-04-25 2024-03-08 北京字节跳动网络技术有限公司 对运动矢量差的约束
US11109064B2 (en) * 2019-05-22 2021-08-31 Mediatek Inc. Signaling of motion vector difference derivation
CN114026861B (zh) * 2019-06-25 2023-11-17 北京字节跳动网络技术有限公司 对运动矢量差的约束
JP7465128B2 (ja) 2020-03-24 2024-04-10 シャープ株式会社 動画像符号化装置及び動画像復号装置
WO2021197447A1 (en) * 2020-04-01 2021-10-07 Beijing Bytedance Network Technology Co., Ltd. Controlling quantization parameter delta signaling
JP7425224B2 (ja) 2020-04-07 2024-01-30 北京字節跳動網絡技術有限公司 高レベル構文におけるインター予測のための信号通知
CN115668917A (zh) 2020-04-09 2023-01-31 抖音视界有限公司 视频编解码中的去块信令通知
CN115486064A (zh) 2020-04-10 2022-12-16 抖音视界有限公司 标头语法元素和自适应参数集的使用
WO2021209061A1 (en) 2020-04-17 2021-10-21 Beijing Bytedance Network Technology Co., Ltd. Presence of adaptation parameter set units
KR20230002447A (ko) 2020-04-26 2023-01-05 바이트댄스 아이엔씨 비디오 코딩 신택스 요소의 조건적 시그널링

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8275045B2 (en) 2006-07-12 2012-09-25 Qualcomm Incorporated Video compression using adaptive variable length codes
KR101101965B1 (ko) 2006-10-16 2012-01-02 노키아 코포레이션 멀티뷰 비디오 코딩에 대한 병렬 디코딩가능 슬라이스들을 이용하기 위한 시스템 및 방법
US8432975B2 (en) 2008-01-18 2013-04-30 Mediatek Inc. Apparatus and method for processing a picture frame
TWI375472B (en) 2008-02-04 2012-10-21 Ind Tech Res Inst Intra prediction method for luma block of video
CN102017627B (zh) 2008-04-25 2013-05-01 汤姆森许可贸易公司 使用基于深度信息的视差估计的多视点视频编码
WO2010126612A2 (en) 2009-05-01 2010-11-04 Thomson Licensing Reference picture lists for 3dv
US8705624B2 (en) 2009-11-24 2014-04-22 STMicroelectronics International N. V. Parallel decoding for scalable video coding
GB2488159B (en) 2011-02-18 2017-08-16 Advanced Risc Mach Ltd Parallel video decoding
JP5664762B2 (ja) * 2011-03-17 2015-02-04 富士通株式会社 動画像復号方法、動画像符号化方法、動画像復号装置及び動画像復号プログラム
CN103430549B (zh) 2011-03-18 2017-05-10 索尼公司 图像处理装置和图像处理方法
WO2012176684A1 (ja) 2011-06-22 2012-12-27 ソニー株式会社 画像処理装置および方法
CN103385004B (zh) 2011-06-30 2016-12-28 三菱电机株式会社 图像编码装置、图像解码装置、图像编码方法以及图像解码方法
CN103891290B (zh) 2011-08-19 2018-02-02 瑞典爱立信有限公司 运动矢量处理
US9288506B2 (en) 2012-01-05 2016-03-15 Qualcomm Incorporated Signaling view synthesis prediction support in 3D video coding

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11146786B2 (en) 2018-06-20 2021-10-12 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in LUT
US11159807B2 (en) 2018-06-29 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Number of motion candidates in a look up table to be checked according to mode
TWI731360B (zh) * 2018-06-29 2021-06-21 大陸商北京字節跳動網絡技術有限公司 查找表的使用條件
US11245892B2 (en) 2018-06-29 2022-02-08 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in LUT
US11973971B2 (en) 2018-06-29 2024-04-30 Beijing Bytedance Network Technology Co., Ltd Conditions for updating LUTs
US11134267B2 (en) 2018-06-29 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Update of look up table: FIFO, constrained FIFO
US11140385B2 (en) 2018-06-29 2021-10-05 Beijing Bytedance Network Technology Co., Ltd. Checking order of motion candidates in LUT
US11146785B2 (en) 2018-06-29 2021-10-12 Beijing Bytedance Network Technology Co., Ltd. Selection of coded motion information for LUT updating
US11528500B2 (en) 2018-06-29 2022-12-13 Beijing Bytedance Network Technology Co., Ltd. Partial/full pruning when adding a HMVP candidate to merge/AMVP
US11909989B2 (en) 2018-06-29 2024-02-20 Beijing Bytedance Network Technology Co., Ltd Number of motion candidates in a look up table to be checked according to mode
US11895318B2 (en) 2018-06-29 2024-02-06 Beijing Bytedance Network Technology Co., Ltd Concept of using one or multiple look up tables to store motion information of previously coded in order and use them to code following blocks
US11153557B2 (en) 2018-06-29 2021-10-19 Beijing Bytedance Network Technology Co., Ltd. Which LUT to be updated or no updating
US11877002B2 (en) 2018-06-29 2024-01-16 Beijing Bytedance Network Technology Co., Ltd Update of look up table: FIFO, constrained FIFO
US11159817B2 (en) 2018-06-29 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Conditions for updating LUTS
US11706406B2 (en) 2018-06-29 2023-07-18 Beijing Bytedance Network Technology Co., Ltd Selection of coded motion information for LUT updating
US11695921B2 (en) 2018-06-29 2023-07-04 Beijing Bytedance Network Technology Co., Ltd Selection of coded motion information for LUT updating
US11528501B2 (en) 2018-06-29 2022-12-13 Beijing Bytedance Network Technology Co., Ltd. Interaction between LUT and AMVP
US11153558B2 (en) 2018-07-02 2021-10-19 Beijing Bytedance Network Technology Co., Ltd. Update of look-up tables
US11153559B2 (en) 2018-07-02 2021-10-19 Beijing Bytedance Network Technology Co., Ltd. Usage of LUTs
US11463685B2 (en) 2018-07-02 2022-10-04 Beijing Bytedance Network Technology Co., Ltd. LUTS with intra prediction modes and intra mode prediction from non-adjacent blocks
US11134244B2 (en) 2018-07-02 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Order of rounding and pruning in LAMVR
US11134243B2 (en) 2018-07-02 2021-09-28 Beijing Bytedance Network Technology Co., Ltd. Rules on updating luts
US11997253B2 (en) 2018-09-12 2024-05-28 Beijing Bytedance Network Technology Co., Ltd Conditions for starting checking HMVP candidates depend on total number minus K
US11159787B2 (en) 2018-09-12 2021-10-26 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking HMVP candidates depend on total number minus K
US20200413044A1 (en) 2018-09-12 2020-12-31 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking hmvp candidates depend on total number minus k
US20210297659A1 (en) 2018-09-12 2021-09-23 Beijing Bytedance Network Technology Co., Ltd. Conditions for starting checking hmvp candidates depend on total number minus k
US11589071B2 (en) 2019-01-10 2023-02-21 Beijing Bytedance Network Technology Co., Ltd. Invoke of LUT updating
US11909951B2 (en) 2019-01-13 2024-02-20 Beijing Bytedance Network Technology Co., Ltd Interaction between lut and shared merge list
US11956464B2 (en) 2019-01-16 2024-04-09 Beijing Bytedance Network Technology Co., Ltd Inserting order of motion candidates in LUT
US11962799B2 (en) 2019-01-16 2024-04-16 Beijing Bytedance Network Technology Co., Ltd Motion candidates derivation
US11641483B2 (en) 2019-03-22 2023-05-02 Beijing Bytedance Network Technology Co., Ltd. Interaction between merge list construction and other tools

Also Published As

Publication number Publication date
BR112015016011A2 (pt) 2017-07-11
US20140192885A1 (en) 2014-07-10
WO2014107565A1 (en) 2014-07-10
US10021414B2 (en) 2018-07-10
EP2941875A1 (en) 2015-11-11
CN104885458A (zh) 2015-09-02
CN104885458B (zh) 2019-05-28
JP6416115B2 (ja) 2018-10-31
JP2016507969A (ja) 2016-03-10
TWI544788B (zh) 2016-08-01
BR112015016011B1 (pt) 2023-03-28
KR20150104129A (ko) 2015-09-14
KR102266364B1 (ko) 2021-06-16

Similar Documents

Publication Publication Date Title
TWI544788B (zh) 用於視圖間或層間參考圖像之位元串流約束及運動向量限制
CN111567043B (zh) 对视频数据进行译码的方法、装置和计算机可读存储介质
KR102310752B1 (ko) 슬라이스 레벨 인트라 블록 카피 및 기타 비디오 코딩 개선
US10412387B2 (en) Unified intra-block copy and inter-prediction
TWI538482B (zh) 於可擴展及多視角視訊寫碼之進階殘差預測
JP6339116B2 (ja) マルチビュー又は3次元ビデオコード化におけるビュー間残差予測
US9699450B2 (en) Inter-view predicted motion vector for 3D video
TWI539796B (zh) 視差向量推導
US20170302951A1 (en) Conformance constraint for collocated reference index in video coding
JP6337104B2 (ja) テクスチャコーディングのためのより正確な高度残差予測(arp)
TWI501611B (zh) 用於3d視訊之視圖間預測之運動向量
JP2020511859A (ja) 復号器側動きベクトル導出によって導出された動きベクトル情報を制約すること
US20150271515A1 (en) Block vector coding for intra block copy in video coding
TWI536812B (zh) 針對三維(3d)視訊之基於鄰近區塊的差異向量之約束
US9693077B2 (en) Controlling sub prediction unit (sub-PU) motion parameter inheritance (MPI) in three dimensional (3D) HEVC or other 3D coding
TW201640893A (zh) 以子預測單元為基礎之先進時間運動向量預測
KR20140140073A (ko) 고효율 비디오 코딩을 위한 하이-레벨 신택스 확장들
TW201735635A (zh) 用於螢幕內容寫碼及多層寫碼之加權預測
JP6352271B2 (ja) 高効率ビデオコーディングに基づくスケーラブルコーディングのための動きフィールドアップサンプリング
US10129550B2 (en) Inter-layer syntax prediction control
CN113170123A (zh) 照明补偿与帧间预测的相互作用
US20150016502A1 (en) Device and method for scalable coding of video information