TWI774141B - 視訊編解碼方法及裝置 - Google Patents

視訊編解碼方法及裝置 Download PDF

Info

Publication number
TWI774141B
TWI774141B TW109141751A TW109141751A TWI774141B TW I774141 B TWI774141 B TW I774141B TW 109141751 A TW109141751 A TW 109141751A TW 109141751 A TW109141751 A TW 109141751A TW I774141 B TWI774141 B TW I774141B
Authority
TW
Taiwan
Prior art keywords
prediction
current block
block
candidates
merge
Prior art date
Application number
TW109141751A
Other languages
English (en)
Other versions
TW202127890A (zh
Inventor
陳俊嘉
蕭裕霖
徐志瑋
莊子德
陳慶曄
Original Assignee
寰發股份有限公司
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 寰發股份有限公司 filed Critical 寰發股份有限公司
Publication of TW202127890A publication Critical patent/TW202127890A/zh
Application granted granted Critical
Publication of TWI774141B publication Critical patent/TWI774141B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements
    • 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/527Global motion vector estimation
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)

Abstract

一視訊解碼器決定是否藉由使用幀內塊複製模式來編解碼該當前塊。該視訊解碼器識別一個或多個預測候選的一列表用於該當前塊。當不藉由使用幀內塊複製模式來編解碼該當前塊時,位於與該當前塊相同MER中的該當前塊的一個或多個相鄰塊從該預測候選的列表被排除。當藉由使用幀內塊複製模式編解碼該當前塊以及預測候選的列表屬於多個不同候選列表的一預定子集時,所識別預測候選的至少一個是位於該MER中該當前塊的一空間相鄰塊。該視訊解碼器藉由使用從該預測候選的列表選擇的一預測候選來重構該當前塊來生成該當前塊的一預測。

Description

視訊編解碼方法及裝置
本發明通常涉及視訊編解碼。特別地,本發明涉及由合併模式在視訊編解碼期間的促進並行處理的方法。
除非在此另有指示,本節所描述的方案不是下文列出申請專利範圍的先前技術並且不因被包括於本節而被承認為先前技術。
高效視訊編解碼(HEVC)是由視訊編解碼聯合協作團隊(JCT-VC)開發的視訊編解碼標準。在HEVC中,編解碼的圖像被分割成由編碼樹單元(CTU)表示的多個非重疊正方形塊區域。編解碼的圖像可以由一些條帶(slice)表示,每一條帶包括整數數目的CTU。條帶中的單個CTU以光柵掃描次序進行處理。雙向預測(B)條帶可以由使用至多兩個運動向量以及參考索引的幀內預測或幀間預測來預測每一塊的樣本值。幀內(I)條帶僅使用幀內預測來解碼。預測(P)條帶由使用至多一個運動向量以及參考索引的幀內預測或幀間預測來預測每一塊的樣本值。
一個或多個預測單元(PU)被指定用於每一編碼單元(CU)。預測單元與相關的CU語法作為發信預測子資訊的基本單元。指定的預測進程被應用來預測PU內相關像素樣本的值。基於所選的PU類型,CU可以被拆分成一個、兩個或四個PU。HEVC定義了用於將CU拆分成多個PU的8種類型的分割。
CU可以進一步使用殘差四叉樹(RQT)結構來分割用於表示相關預測殘差訊號。RQT的葉節點對應於所生成的變換單元(TU)。變換單元由尺寸8×8、16×16或者32×32或者尺寸4×4的亮度樣本的變換塊,以及4:2:0色彩格式中圖像的色度樣本的兩個對應變換塊組成。整數變換被應用於變換塊以及量化的系數值在位元流中被編解碼。最小以及最大變換塊尺寸在序列參數集中指定。
在HEVC中,術語編碼樹塊(CTB)、編碼塊(CB)、預測塊(PB)以及變換塊(TB)被定義指分別來自相關CTU、CU、PU以及TU的一個色彩分量的2-D樣本陣列。CTU因此由未使用三個單獨色彩平面的編解碼的色彩圖像中的一個亮度CTB、兩個色度CTB以及相關語法元素組成。所發信的編碼樹分割通常別應用於亮度塊以及色度塊兩者,但是在達到某些最小尺寸約束時可以允許一些例外。
後續的概述僅是說明性的以及不旨在以任何方式進行限制。即,後續的概述被提供來介紹本文所描述的新穎以及非顯而易見技術的概念、亮點、益處以及優勢。選擇而不是所有事實方式在具體細節描述中進一步描述。因此,後續概述不旨在識別所要求保護主題的基本特徵,也不旨在決定所要求保護主題的範圍。
本發明提供了用於基於合併估計區域(MER)以及幀內塊複製(IBC)模式識別預測候選的方法。在一些實施例中,視訊解碼器從待解碼為一視訊的一當前圖像的一當前塊的位元流接收資料。視訊解碼器決定是否藉由使用幀內塊複製模式來編解碼當前塊。該視訊解碼器識別一個或多個預測候選的列表用於該當前塊。當該當前塊不藉由使用幀內塊複製模式編解碼以及預測候選 的列表屬於多個不同候選列表的預定子集或從其推導時,位於與當前塊相同MER中的該當前塊的一個或多個空間相鄰塊從預測候選的列表被排除。當該當前塊藉由使用幀內塊複製模式編解碼時,至少一個所識別的預測候選是位於MER中該當前塊的一空間相鄰塊。該視訊解碼器藉由使用從一個或多個預測候選的列表選擇的預測候選重構該當前塊來生成該當前塊的一預測。
在一些實施例中,當該當前塊不藉由使用幀內塊複製模式編解碼時,該當前塊以及該MER中的至少一個其他塊可以被並行重構。在一些實施例中,位元流中的一個或多個語法元素指示幀內塊複製模式是否用於編解碼該當前塊,以及該解碼器解析該位元流中的一個或多個語法元素以及基於所解析的語法元素決定幀內塊複製模式是否用於該當前塊。在一些實施例中,位元流中的一個或多個語法元素來用於識別或定義包括該當前塊的MER。
該當前塊的預測可以是基於所選的預測候選生成的仿射預測。該當前塊的預測可以是基於所選的預測候選生成的三角形或幾何分割模式(GPM)預測。該當前塊的預測可以是基於所選的預測候選生成的組合的幀間與幀內預測(CIIP)。該當前塊的預測可以藉由用運動向量差異資訊細化所選的預測候選來生成。多個不同候選列表的預定子集可以包括類合併預測模式的候選,如GPM、CIIP以及常規合併模式以及排除高級運動向量預測(AMVP)的候選。
1210~1240:共用邊界
1300:CTU
1310:共用邊界
1350:拆分樹
1360:子樹
1400:共用邊界
1421~1423:葉CU
1410:區域
1411~1414、1510、1515、2510、2515:CU
1610:當前CTU
1620:左邊CTU
1500、2505:MER
1520、1530、2520~2542:空間相鄰塊
2600:視訊編碼器
2605:視訊源
2608:加法器
2609:殘差訊號
2610:變換模組
2611:量化模組
2612、2912:已量化係數
2614、2911:逆量化模組
2615、2910:逆變換模組
2616、2916:變換係數
2617:重構的像素資料
2619:重構的殘差
2620:幀內圖像估計模組
2625:幀內圖像預測模組
2630:運動補償模組
2635:運動估計模組
2640:幀間預測模組
2645、2945:環路濾波器
2650:重構的圖像緩衝器
2665、2965:MV緩衝器
2675、2975:MV預測模組
2690:熵編碼器
2695、2995:位元流
2720:預測生成模組
2710:預測候選列表識別模組
2900:視訊解碼器
2917:已解碼像素資料
2919:重構的殘差訊號
2925:幀內預測模組
2930:運動補償模組
2940:幀間預測模組
2950:解碼圖像緩衝器
2955:顯示器
2990:解析器
3010:預測候選列表識別模組
3020:預測生成模組
2810~2860、3110~3160:步驟
3200:電子系統
3205:匯流排
3210:處理單元
3215:影像處理單元
3220:系統記憶體
3225:網路
3230:唯讀記憶體
3235:永久儲存裝置
3240:輸入裝置
3245:輸出裝置
附圖被包括來提供本發明的進一步理解,以及被併入並構成本發明的一部分。附圖示出了本發明的實施方式,以及與描述一起用於解釋本發明的原理。將能理解,因為一些元件可以被示出與實施實施方式中的尺寸不成比例,附圖不需要按比例繪製來清楚地說明本發明的概念。
第1圖示出了將編碼樹單元(CTU)拆分成四叉樹。
第2圖示出了拆分進程及其二叉樹的示例。
第3圖示出了四叉樹加二叉樹(QTBT)結構的示例。
第4圖示出了用於以多類型(MTT)樹結構分割CTU的各種拆分類型或模式。
第5圖示出了根據MTT塊分割的塊分割的樹類型信令的示例。
第6圖示出了用於幀間預測模式的候選集合。
第7圖示出了包括組合的雙向預測合併模式的合併候選列表。
第8圖示出了包括所選擇的合併候選的合併候選列表。
第9圖示出了0向量候選在其中被添加到合併候選列表或者高級運動向量預測(AMVP)候選列表的示例。
第10圖示出了四參數仿射運動模型。
第11圖示出了用於仿射幀間模式的運動向量預測子(MVP)推導。
第12圖示出了用於定義或識別共用的候選列表的共用邊界的各種示例。
第13圖示出了對應於可以由共用的候選列表編解碼的共用邊界中CU的拆分樹的子樹。
第14圖示出了用於識別共用候選列表的共用邊界。
第15圖概念地示出了基於合併估計區域(MER)識別的CU的空間合併候選。
第16圖示出了幀內塊複製模式(IBC)的參考區域。
第17圖示出了空間合併候選的位置。
第18圖示出了為空間合併候選的冗餘檢驗考慮的候選對(candidate pair)。
第19圖示出了用於時間合併候選的運動向量縮放。
第20圖描繪了在候選C0以及C1之間選擇的時間候選的位置。
第21圖示出了被添加到起始MV的水準分量或者垂直分量的偏移。
第22圖概念地示出了SbTVMP進程,具體來說藉由從空間鄰近塊應用運動移位以及縮放來自對應的同位子CU的運動資訊來匯出子CU運動場。
第23圖以及第24圖示出了由幾何分割創建的區塊的區域。
第25圖概念地示出了基於MER以及IBC模式從合併候選列表中包括以及排除空間鄰近塊。
第26圖示出了當編碼區塊時可以使用預測候選列表來生成預測的示例性視訊編碼器。
第27圖示出了基於MER以及IBC模式識別預測候選的視訊編碼器的部分。
第28圖概念地示出了用於使用基於MER以及IBC模式識別的預測候選來編碼視訊圖像中區塊的進程。
第29圖示出了當解碼區塊時可以使用預測候選列表來生成預測的示例性視訊解碼器。
第30圖示出了基於MER以及IBC模式識別預測候選的視訊解碼器的部分。
第31圖概念地示出了用於使用基於MER以及IBC模式識別的預測候選來解碼視訊圖像中區塊的進程。
第32圖概念地示出了可以實施本發明的一些實施例的電子系統。
在下文細節描述中,以示例的方式給出了許多具體細節來提供相關教導的透徹理解。基於本文所描述教導的任何變體、衍生與/或拓展都在本發明的保護範圍內。在一些情況下,關於本文公開的一個或多個示例性實施方式的公知方法、進程、元件與/或電路可以在沒有細節的情況下在相對高層級進行描述,以避免不必要地混淆本發明的教導。
I.分割結構
在HEVC中,圖像由多個條帶組成,以及條帶由多個CTU組成。CTU是尺寸8×8、16×16、32×32以及64×64的正方形。一個CTU被分割成多 個編碼單元(CU)。四叉樹結果用於分割CTU。CTU尺寸是M×M(M是64、32或16中的一個)。CTU可以是單個CU或者可以被拆分成尺寸M/2×M/2的四個單元,其是編碼樹節點。如果單元是葉節點,它們成為CU。否則,四叉樹可以被進一步拆分直到節點的尺寸達到SPS中指定的最小CU尺寸。第1圖示出了將CTU拆分為四叉樹。實線是CU邊界。在每一CU中存在一個或多個PU(預測單元)。
與CU相結合,PU是用於共用預測資訊的基礎塊。在每一PU內,應用相同的預測進程。根據PU分割類型,CU可以被拆分成1、2或者4個PU。PU可以僅被拆分一次。或者,可以使用二叉樹(BT)分割結構。特別地,塊可以被反覆運算地拆分成2個更小的塊。對稱水準以及垂直拆分是最有效以及簡單的拆分類型。在一些實施例中,僅使用了這兩個拆分類型。二元樹分割進程可以被反覆運算地拆分直到拆分塊的寬度或高度達到視訊位元流中的高層級語法中定義的最小塊寬度或高度。
第2圖示出了拆分進程(左)及其二元樹(右)的示例。在每一拆分中,在二元樹的非葉節點,一旗標表示是否使用水準或垂直,0指示水準拆分以及1指示垂直拆分。二元樹拆分結構可以用於將CTU拆分成多個CU,即,根節點是CTU以及葉節點是CU。以及出於簡便,如另一個實施例,沒有從CU到PU的進一步分割。這意味著CU等於PU,因此,其相當於二元樹的葉節點是預測的基本單元。
在一些實施例中,使用了QTBT結構(四叉樹加二元樹結構)。其組合四叉樹以及二元樹。在QTBT結構中,首先,塊由四叉樹拆分進程進行分割,四叉樹(QT)拆分進程可以被重複直到尺寸達到最小葉節點尺寸。其次,如果葉四叉樹塊不大於最大允許的二元樹根節點尺寸,葉四叉樹塊可以被進一步拆分成二元樹(BT)分割,二元拆分可以被重複直到拆分塊的寬度或高度達到最 小允許的寬度或高度或者二元拆分深度達到最大允許的深度。第3圖示出了QTBT結構的示例。QTBT結構可以用於將CTU分割成多個CU,即,根節點是CTU,其由QTBT結構分割成多個CU,以及多個CU進一步由預測以及變換編解碼。出於簡便,如另一個實施例,沒有從CU到PU的進一步分割。其意味著CU等於PU,以及,其相當於QTBT的葉節點是預測的基本單元。
對於I條帶,對亮度以及色度分別應用QTBT結構。對於P以及B條帶,QTBT結構被同時應用於亮度以及色度兩者(除了色度達到某些最小尺寸)。換言之,在I條帶中,QTBT結構塊分割樹在亮度CTB以及兩個色度CTB之間不同。特別地,亮度CTB具有QTBT結構塊分割,以及兩個色度編碼樹單元(CTB)具有另一個QTBT結構塊分割。
像四叉樹二元樹(QTBT)的靈活CU結構示出了相比於HEVC中四叉樹(QT)結構的好的編解碼性能。在QTBT中,如第3圖所示,CTU首先由四叉樹結構進行分割。四叉樹葉節點進一步由二元樹結構進行分割。為了反覆運算地將塊分割成兩個更小的塊,除了傳統對稱水準以及垂直拆分類型,也可以選擇非對稱水準以及垂直拆分類型。在構造二元樹結構後,二元樹葉節點被標記為CU,其在沒有任何進一步分割的情況下用於預測以及變換。
為了支持更多的分割形狀來實現更靈活的分割,三元樹(TT)分割方法旨在獲得位於塊中心的目標而四叉樹(QT)以及二元樹(BT)分割方法總是沿著塊中心進行拆分。
藉由在MTT的第二層級中允許二元樹以及的三元樹分割方法兩者,多類型樹(MTT)塊分割拓展了QTBT兩層級樹結構的概念。MTT中的兩個層級的樹分別被稱為區域樹(RT)以及預測樹(PT)。第一層級RT總是四叉樹(QT)分割,以及第二層級PT可以是二元樹(BT)分割或者三元樹(PT)分割。例如,CTU首先由RT分割,其是QT分割,以及每一RU葉節點可以進一步由PT拆分, 其可以是BT或TT分割。由PT分割的塊可以進一步用PT拆分直到達到最大PT深度,例如,塊可以首先由垂直BT分割來生成左子塊以及右子塊,以及左子塊進一步由水準TT分割來拆分而右子塊進一步由水準BT分割來拆分。PT葉節點是用於預測以及變換的基礎CU以及將不被進一步拆分。
第4圖示出了以MTT結構分割CTU的各種拆分類型或模式(a)-(e)。拆分類型(a)(b)以及(c)分別對應於四叉樹拆分、垂直二元樹拆分以及水準二元樹拆分。拆分類型(d)以及(e)稱為三元樹(或三叉樹)拆分類型,其將塊拆分成三個更小的塊。來自三元樹拆分的三個更小塊在一個空間維度具有更小的尺寸而在其他空間維度保持相同的尺寸。三元樹分割方法可以提供性能來更快的沿著塊邊界局部化小目標,藉由允許垂直或水準地的四分之一分割。
第5圖示出了根據MTT塊分割的用於塊分割的樹類型信令的示例。RT信令可以類似於QTBT塊分割的四叉樹信令。為了發信PT節點,一個額外的二進位數字(bin)被發信來指示其是二元樹分割或三元樹分割。對於由RT的塊分割,第一二進位數字(bin)被發信來指示是否有另一個RU拆分,如果塊不由RU進一步拆分(即,第一二進位數字是0),第二二進位數字被發信來指示是否有PT拆分。如果塊沒有由PT進一步拆分(即,第二二進位數字是0),那麼塊是葉節點。如果塊進一步由PT拆分(即,第二二進位數字是1),第三二進位數字被發送來指示水準或者垂直分割緊接著是用於區分二元樹(BT)或三元樹(TT)分割的第四二進位數字。
在構造MTT塊分割後,MTT葉節點是CU,其在沒有任何分割的情況下用於預測以及變換。在MTT中,樹結構被分別編解碼用於I條帶中的亮度以及色度,以及被同時應用於P以及B條帶中的亮度以及色度兩者(除了色度達到某些最小尺寸)。也就是說,在I條帶中,亮度CTB具有其QTBT結構的塊分割,以及兩個色度CTB具有另一個QTBT結構的塊分割。
II.幀間預測模式的候選
為了增加HEVC中運動向量(MV)編解碼的編解碼效率,HEVC具有跳過以及合併模式。跳過以及合併模式從空間相鄰塊(空間候選)或者時間同位塊(時間候選)獲得運動資訊。當PU是跳過或合併模式時,沒有運動資訊被編解碼,相反,僅所選候選的索引被編解碼。對跳過模式,殘差訊號被強制為0以及未被編解碼。在HEVC中,如果特定塊被編碼為跳過或合併,候選索引被發信來指示候選集中哪一候選用於合併。每一合併的PU重新使用MV、預測方向以及所選候選的參考圖像索引。對於一些實施例,術語“合併模式”用於參考跳過模式以及合併模式兩者。
第6圖示出了幀間預測模式(即,跳過、合併、AMVP等)的候選集合。圖式示出了被編碼或解碼的視訊圖像或幀的當前塊600。當前塊600(其可以是PU或CU)參考相鄰塊來推導空間以及時間MVP作為MVP列表或者AMVP模式、合併模式或跳過模式的候選列表。
對於合併模式,如第6圖所示,至多四個空間MV候選從A0、A1、B0以及B1來推導,以及一個時間MV候選從TBR或TCTR(首先使用TBR,如果TBR不可用,則使用TCTR)來推導。注意到如果四個空間MV候選的任何一個不是可用的,然後位置B2用於推導MV候選作為替代。在四個空間MV候選以及一個時間MV候選的推導進程後,移除冗餘(修剪)被應用來移除冗餘MV候選。如果在移除冗餘(修剪)後,可用MV候選的數目小於五,三種類型的額外候選被推導以及被添加到候選集合(候選列表)。編碼器基於率失真優化(RDO)決定在候選集合中選擇一個最終候選用於跳過或合併模式,以及將索引傳輸給解碼器。
a.AMVP模式
為了實現混合編解碼架構的最佳編解碼效率,HEVC採用幀內預 測與/或幀間預測模式用於每一PU。對於幀內預測模式,空間相鄰重構像素可以用於在35個方向生成方向預測。對於幀間預測模式,運動資訊用於重構時間參考幀,其用於生成運動補償預測。運動資訊可以包括運動向量、運動向量預測子、運動向量差異、用於選擇參考幀的參考索引幀等。
當PU以幀間AMVP模式編解碼時,用傳輸的運動向量差異(MVD)執行運動補償預測,MVD可以與運動向量預測子(MVP)一起用於推導運動向量(MV)。為了以幀間AMVP模式決定MVP,高級運動向量預測(AMVP)方案用於在包括兩個空間MVP以及一個時間MVP的AMVP候選集中選擇運動向量。因此,在AMVP模式中,MVP的MVP索引以及對應的MVD需要被編碼以及被傳輸。此外,在雙向預測以及單向預測中指定預測方向的幀間預測方向,其是列表0(L0)以及列表1(L1),與每一列表的參考幀索引一起被編碼以及傳輸。
當PU以跳過或者合併模式編解碼時,除了所選候選的合併索引沒有運動資訊被傳輸。這是因為跳過以及合併模式利用運動參考方法(MV=MVD+MVD,其中MVD是0)來從空間相鄰塊(空間候選)或位於並位圖像中的時間塊(時間候選)獲得運動資訊,並位圖像是列表0或者列表1中的第一參考圖像,其在條帶標頭中被發信。在跳過PU的情況下,殘差訊號也被忽略。為了決定跳過以及合併模式的合併索引,合併方案用於從包含四個空間MVP以及一個時間MVP的合併候選集中選擇運動向量預測子。
對於AMVP模式,左邊的MVP是來自A0、A1的第一可用的一個,上方的MVP是來自B0、B1、B2的第一可用的一個,以及時間MVP是來自TBR或者TCTR的第一可用的一個(首先使用TBR,如果TBR不可用,使用TCTR)。如果左邊MVP不是可用的以及上方MVP不是縮放的MVP,如果在B0、B1以及B2中有縮放的MVP,可以推導第二上方MVP。因此,在兩個空間MVP以及 一個時間MVP的推導進程後,僅首先兩個MVP可以被包括於候選列表中。如果在移除冗餘後可用MVP的數目小於2,0向量候選可以被添加到候選列表。
對於跳過模式以及合併模式,從A0、A1、B0以及B1推導至多四個空間合併索引,以及從TBR或TCTR(首先使用TBR,如果TBR不可用,使用TCTR)推導一個時間合併索引。如果四個空間合併索引的任一個不是可用的,位置B2用於推導合併索引作為替換。在推導四個空間合併索引以及一個時間合併索引後,冗餘合併索引被移除。如果非冗餘合併索引的數目小於5,可以從原始候選中推導額外的候選並且將其添加到候選列表。有三種類型的推導候選:
1. 組合的雙向預測合併候選(推導的候選類型1)
2. 縮放的雙向預測合併候選(推導的候選類型2)
3. 0運動合併/AMVP候選(推導的候選類型3)
對於推導的候選類型1,藉由組合原始合併候選創建組合的雙向預測合併候選。特別地,如果當前條帶是B條帶,藉由組合來自列表0以及列表1的候選可以生成進一步的合併候選。第7圖示出了包括組合的雙向預測合併候選的合併候選列表。如圖所示,具有mvL0(列表0中的運動向量)與refidxL0(列表0中的參考圖像索引)或者mvL1(列表1中的運動向量)與refidxL1(列表1中的參考圖像索引)的兩個原始候選被用於創建雙向合併候選。
對於所推導的候選類型2,藉由縮放原始合併候選創建縮放的合併候選。第8圖示出了包括縮放的合併候選的合併候選列表。如圖所示,原始合併候選具有mvLX(列表X中的運動向量,X可以是0或者1)以及refidxLX(列表X中的參考圖像索引,X可以是0或1)。例如,原始候選A是具有mvL0_A以及參考圖像索引ref0的列表0單向預測MV。候選A最初被複製到列表L1作為具有參考圖像索引ref0’。藉由基於ref0以及ref0’縮放mvL0_A來計算縮放MV mvL0’_A。具有列表0中mvL0_A以及ref0以及列表1中的mvL0’_A以及 ref0’的縮放的雙向合併候選被創建以及被添加到合併候選列表。同樣,具有列表0中mvL1’_A與ref’1以及列表1中mvL1_A、ref1的縮放的雙向預測合併候選被創建以及被添加到合併候選列表。
對於推導的候選類型3,藉由組合0向量以及參考索引創建0向量候選。如果所創造的0向量候選不是一個複製,其被添加到合併/AMVP候選列表。第9圖示出了0向量候選在其中被添加到合併候選列表或者AMVP候選列表的示例。
b.子PU時間運動向量預測(ATMVP)
ATMVP(高級時間運動向量預測)模式(或者也稱為子PU時間運動向量預測(SbTMVP))是用於合併候選的基於子PU的模式。ATMVP模式使用空間相鄰者來獲得初始向量,其用於獲得並位圖像上並位塊的座標。檢索並位圖像上並位塊的子CU(通常4×4或者8×8)運動資訊並將其填入當前合併候選的子CU(通常4×4或者8×8)運動緩衝器。有ATMVP的各種實施例。在ITU-T SG 16 WP3以及ISO/IEC JTC 1/SC 29/WG 11的聯合視訊勘探小組(JVET)第3次會議,瑞士日內瓦,2016年5月26日-6月1日,標題“Algorithm Description of Joint Exploration Test Model 3”中描繪了ATMVP。也在ITU-T SG 16 WP3以及ISO/IEC JTC 1/SC 29/WG 11的聯合視訊勘探小組(JVET)第11次會議,Ljubljan,SI,2018年7月10-18日,文獻:JVET-K0346-v3,標題“CE4-related:One simplified design of advanced temporal motion vector prediction(ATMVP)”中描述了ATMVP。
c.空間時間運動向量預測(STMVP)
STMVP模式是用於合併候選的基於子PU的模式。以光柵掃描次序反覆運算地生成子PU的運動向量。用於當前子PU的MV的推導在MV縮放之前識別兩個空間相鄰塊以及一個時間相鄰塊。在檢索以及縮放MV後,所有可用運動向量(至多3個)被平均以及被分配為當前子PU的運動向量。在ITU-T SG 16 WP3以及ISO/IEC JTC 1/SC 29/WG 11的聯合視訊勘探小組(JVET)第3次會議,瑞士日內瓦,2016年5月26日-6月1日,標題“Algorithm Description of Joint Exploration Test Model 3”中描述了STMVP,特別地節2.3.1.2:空間時間運動向量預測(STMVP)。
d.基於歷史的合併模式以及AMVP
實施基於歷史的合併模式的視訊編解碼器也可以在歷史陣列中存儲一些先前CU的合併候選。對於當前被編碼或解碼的CU,視訊編解碼器可以使用歷史陣列中的一個或多個候選來增強原始合併模式候選。基於歷史的方法也適用於AMVP候選列表。在ITU-T SG 16 WP3以及ISO/IEC JTC 1/SC 29/WG 11的聯合視訊勘探小組(JVET)第11次會議,Ljubljan,SI,2018年7月10-18日,文獻:JVET-K0104:“History-based Motion Vector Prediction”中描述了基於歷史的合併模式。
e.非相鄰合併模式以及AMVP
非相鄰合併候選使用遠離當前CU的一些空間候選。基於非相鄰的方法也可以被應用於AMVP候選列表。在ITU-T SG 16 WP3以及ISO/IEC JTC 1/SC 29/WG 11的聯合視訊勘探小組(JVET)第11次會議,Ljubljan,SI,2018年7月10-18日,文獻:JVET-K0228,標題“CE 4-2.1:Adding non-adjacent spatial merge candidates”中示出了非相鄰合併模式的示例。在ITU-T SG 16 WP3以及ISO/IEC JTC 1/SC 29/WG 11的聯合視訊勘探小組(JVET)第11次會議,Ljubljan,SI,2018年7月10-18日,文獻:JVET-K0286,標題“CE4:Additional merge candidates(Test 4.2.13)”中描繪了非相鄰合併候選的示例。
f.仿射合併模式
HEVC僅使用平移運動模型用於運動補償預測。在現實世界中有許多其他類型的運動,如縮小以及方法、旋轉、透視運動以及其他不規則運動。 這些其他類型的運動中的一些可以由仿射變換或者仿射運動來表示,其保護點、直線以及平面。仿射變換不需要保護線之間的角度或者點之間的距離,但是其保護直線上點之間的距離比。當仿射運動塊運動時,塊的運動向量場可以由兩個控制點運動向量或者四個參數來描述,如下:
Figure 109141751-A0305-02-0016-1
變換塊是矩形塊。這一運動塊中每一點的運動向量場可以由四參數模仿射模型的下列等式來描述:
Figure 109141751-A0305-02-0016-2
或者6參數仿射模型來描述:
Figure 109141751-A0305-02-0016-3
其中(v0x,v0y)是左上角上的控制點運動向量,以及(v1x,v1y)是該塊右上角的另一個控制點運動向量。在一些實施例中,對於幀間模式編解碼的CU,當CU尺寸等於或大於16×16時,affine_flag被發信來指示是否應用仿射幀間模式與否。如果當前CU是仿射幀間模式,使用相鄰有效重構塊來構建候選MVP對列表。第10圖示出了四參數仿射運動模型。
第11圖示出了仿射幀間模式的MVP推導。如第11圖所示,從塊A0、A1或者A2的運動向量選擇V0,以及從塊B0以及B1的運動向量選擇V1。候選MVP對的索引在位元流中被發信。兩個控制點的MV差異(MVD)在位元流中被編解碼。
在一些實施例中,如果當前PU是合併PU,相鄰五個塊(第11 圖中的C0、B0、B1、C1以及A0)被檢查其中一個是否是仿射幀間模式或者仿射合併模式。如果是,affine_flag被發信來指示當前PU是否是仿射模式。當當前PU在仿射合併模式中編解碼,由仿射模式從有效相鄰重構塊編解碼該第一塊。候選塊的選擇次序是如第11圖示出的從左、上、右上、左下到左上(C0→B0→B1→C1→A0)。第一仿射編解碼塊的仿射參數用於推導當前PU的V0以及V1
在一些實施例中,根CU(或者父CU)或者共用邊界尺寸/深度/形狀/寬度/高度用於推導候選列表。在候選列表推導中,對於任何基於位置的推導,根據當前塊/CU/PU/位置/尺寸/深度/形狀/寬度/高度推導參考塊位置的,根CU或者共用邊界位置以及形狀/尺寸/深度/寬度/高度被使用。在一些實施例中,對於仿射繼承候選推導,首先推導參考塊位置。當應用共用列表時,藉由使用根CU或者共用邊界位置以及形狀/尺寸/深度/寬度/高度來推導參考塊位置。在一個示例中,參考塊位置被存儲。當子CU在根CU或者共用邊界時,所存儲的參考塊位置用於找到參考塊用於仿射候選推導。在另一個示例中,當編解碼子CU時,根CU或者共用邊界的位置以及形狀/寬度/高度/尺寸可以被存儲或者被推導用於仿射候選參考塊推導。4參數仿射模型與/或6參數仿射模型可以用於推導仿射候選或者控制點MV。例如,在第14圖中,根CU內的CU可以參考塊A0、A1、B0、B1、B2以及同位塊TBR以及TCTR來推導仿射候選。在一些實施例中,對於仿射繼承的候選推導,使用了當前子CU位置以及形狀/尺寸/深度/寬度/高度。如果參考塊在根CU或者共用邊界內,其不用於推導仿射候選。
g.共用的候選列表
為了簡化編解碼操作複雜度,一些實施例提供使用共用候選列表的方法來編碼或解碼多個區塊。候選列表參考合併模式或者AMVP模式候選列表或者其他類型的預測候選列表(如DMVR或者雙邊細化候選列表、仿射合併模式、子塊合併模式、仿射幀間/AMVP模式、IBC合併、IBC AMVP)。共用的候 選列表是基於大於葉CU的邊界生成的候選列表(如,父CU或者QTBT或者QTBTTT樹中子樹的一個根或者QT樹的一個節點),以及所生成的候選列表可以被共用用於邊界內或者子樹內的所有葉CU。在一些實施例中,共用的合併區域(SMR)用於標記共用的候選列表的共同祖先節點區域。
在一些實施例中,共用的候選列表是由共同共用邊界內的或其所包圍的多個CU共用的候選列表,共同共用邊界也稱為共用邊界。對於一些實施例,“共用的邊界”被定義為圖像內對齊的最小塊的矩形區域(最小塊通常是4×4)。“共用邊界”內的每一CU可以使用基於“共用邊界”生成的共同共用的候選列表。特別地,共用的候選列表的候選包括基於“共用邊界”的空間相鄰位置以及時間相鄰位置,或者由共用邊界定義的區域。共用邊界可以是正方形塊或者非正方形塊。共用邊界可以是正方形塊或者非正方形塊。共用邊界的尺寸/深度/寬度/高度可以在序列層級、圖像層級或者條帶層級的位元流中被發信。
第12圖示出了用於定義或識別共用候選列表的共用邊界的各種示例。示例包括:對應於8×8CU的正方形共用邊界1210,8×8CU被QT拆分成四個4×4CU;對應於8×8CU的正方形共用邊界1220,8×8CU被BT拆分成兩個4×8CU;對應於4×16根CU的矩形共用邊界1230,4×16根CU被BT拆分成兩個4×8CU;以及對應於4x16CU的矩形共用的邊界1240,4×16CU被TT拆分成兩個4×4CU以及一個4×8CU。對應於共用邊界的CU也被稱為共用邊界的根CU。
在一些實施例中,共用的候選列表是由子樹內多個CU共用的候選列表。“子樹”可以指QTBT、QTBTTT的子樹或者另一個類型的拆分樹。第13圖示出了對應於共用邊界中的CU的拆分樹的子樹,共用邊界可以由共用的候選列表來編解碼。圖式示出了拆分結構由分層樹1350表示的CTU 1300,其是QTBT或者QTBTTT拆分樹。在CTU 1300內,共用邊界1310定義根CU, 其被拆分成各種拆分深度的各種子CU。由共用邊界1310包圍的子CU對應於拆分樹1350中的子樹1360,以及子樹1360中的葉節點對應於共用邊界1310中葉CU。換言之,共用候選列表由子樹1360的葉節點共用。
共用候選列表可以基於共用塊邊界來生成,例如,如共用邊界1310或者子樹1360的根CU邊界。共用候選列表被覆用用於子樹內的一些或者所有葉CU。共用候選列表被生成用於子樹的根,即,基於根CU或者子樹的矩形邊界(或共用邊界)定義共用候選列表的候選的空間相鄰位置以及時間相鄰位置。
共用候選列表的候選是基於由共用邊界定義的區域的空間或時間相鄰塊識別的預測候選。由共用邊界包圍的一個或多個CU然後藉由使用從共用候選列表選擇的一個或多個預測候選來編解碼。
第14圖示出了用於識別共用候選列表的共用邊界1400。共用的邊界1400定義區域1410。區域1410可以對應於CU。區域1410可以是拆分樹或者CTU(如,BT、QT、MTT等)的一部分以及可以被拆分成多個子CU,如CU 1411、1412、1413以及1414。子CU可以是不能被進一步拆分的葉CU。子CU還可以被拆分成較大拆分深度的子CU直到達到葉CU。在示例中,由共用邊界1400定義的區域1410(或者對應於區域1410的根CU)被拆分成幾個葉CU,包括葉CU 1421、1422以及1423。
葉CU 1421、1422以及1423藉由使用共用候選列表來編解碼,共用候選列表被基於共用邊界1400來識別或定義。共用候選列表可以是合併模式列表、AMVP列表、IBC合併列表、IBC AMVP列表或者另一個類型的預測候選列表。共用候選列表可以包括從區域1410的相鄰塊推導(如,繼承的)的預測候選,如來自空間相鄰塊A0、A1、B0、B1、B2的空間MVP以及來自時間相鄰者TBR、TCTR的時間MVP。通常,共用候選列表可以包括合併模式候選、 AMP模式候選、IBC合併模式候選、IBC AMVP模式候選、仿射合併模式候選、子塊合併模式候選、仿射AMVP模式候選或者其他類型的預測候選。共用候選列表也包括參考當前圖像中已重構參考樣本的一個或多個CPR或者IBC候選。
h.合併估計區域(MER)
合併估計區域(MER)是其中候選塊在從合併候選列表(被編解碼的當前塊)排除的相同MER(與當前被編解碼塊相同)的區域。當應用MER時,僅當當前CU與提供空間合併候選的相鄰CU在不同的MER時,空間合併候選可以被添加到合併候選列表中。因此,藉由檢查對應的相鄰CU是否在與當前CU相同的MER區域中,視訊編碼器可以確保當前CU的空間合併候選可以被單獨地推導(如,使用並行處理)。
第15圖概念地示出了基於合併估計區域(MER)識別的CU的空間合併候選。如圖所示,MER 1500被定義來包括CU 1510以及CU 1515。在MER 1500內的CU 1510以及1515的相鄰塊(如空間相鄰塊1520)不可用於提供編解碼CU 1510的空間合併候選。在MER 1500之外的已編解碼的相鄰塊(如,空間相鄰塊1530)可用於提供空間合併候選。
MER可以被擴展到QTBT或者QTBTTT結構。MER可以是非正方形的。根據結構分割,MER可以是不同的形狀或者尺寸。尺寸/深度/面積/寬度/高度可以是預定義的或者在序列/圖像/條帶層級中發信。對於MER的寬度/高度,寬度/高度的log2的值可以被發信。對於MER的面積/尺寸,尺寸/面積的log2的值可以被發信。當MER被定義用於一區域時,這一MER中的CU/PU不能用作合併模式候選推導的參考CU/PU。例如,這一MER中CU/PU的MV或者仿射參數不可用由相同MER中的CU/PU殘差用於合併候選或者仿射合併候選推導。這些MV與/或仿射參數被當作對相同MER中CU/PU是不可用的。當MER面積/尺寸/深度/形狀/寬度/高度被定義(如,預定義的或發信的),如果當 前CU大於或等於定義的面積/尺寸/形狀/寬度/高度以及子分割之一或者所有子分割或者部分子分割小於面積/尺寸/形狀/寬度/高度(或者如果當前CU的深度小於或等於定義的深度以及子分割之一或者所有子分割或者部分子分割的深度大於定義的深度),當前CU是一個MER。在另一個實施例中,如果當前CU小於或等於定義的面積/尺寸/形狀/寬度/高度以及父CU大於定義的面積/尺寸/形狀/寬度/高度(或者如果當前CU的深度大於或等於定義的深度以及父節點小於定義的深度),當前CU是一個MER。例如,如果定義的面積是1024以及CU尺寸是64×32(寬度是64以及高度是32),以及是用來垂直的TT拆分(64×32CU被分割成16×32子CU,32×32子CU以及16×32子CU),在一個實施例中,64×32是MER。這一64×32中的子CU使用共用列表。在另一個實施例中,64×32不是MER,但是16×32子CU,32×32子CU以及16×32子CU分別是MER。在另一個實施例中,對於定義的MER面積/尺寸/形狀/寬度/高度,當進行TT拆分時,MER面積/尺寸/形狀/寬度/高度在TT分割中可以是不同的。例如,對於第一分割以及第二分割,MER面積/尺寸/形狀/寬度/高度的閾值可以除以2(或者深度可以增加1),而對於第三分割,MER面積/尺寸/形狀/寬度/高度的閾值可以保持相同。
在一些實施例中,MER被定義用於QT分割或者QT拆分CU。如果QT CU等於或大於定義的面積/尺寸/QT深度/形狀/寬度/高度,MER被定義為葉QT CU面積/尺寸/QT深度/形狀/寬度/高度。QT葉CU內的所有子CU(由BT或TT分割)使用QT葉CU作為MER。MER包括這一葉QT CU中的所有子CU。如果QT CU(非QT葉CU)等於定義的面積/尺寸/QT深度/形狀/寬度/高度,這一QT CU被用作MER。QT CU內的所有子CU(如由QT、BT或者TT分割)被包括於這一MER。在一個實施例中,MER的面積/尺寸/QT深度/形狀/寬度/高度用於推導參考塊位置。在另一個實施例中,當前CU的面積/尺寸/QT深度/ 形狀/寬度/高度用於推導參考位置。如果參考塊位置在MER內,參考塊位置移動到MER外部。在另一個示例中,當前CU的面積/尺寸/QT深度/形狀/寬度/高度用於推導參考塊位置。如果參考塊位置在MER內部,參考塊不用於合併候選或者仿射合併候選推導。
在上述提到的深度中,深度可以等於(((A*QT-depth)>>C)+((B* MT-depth)>>D)+E)>>F+G or (((A*QT-depth)>>C)+((B* BT-depth)>>D)+E)>>F+G,其中A、B、C、D、E、F、G是整數。例如,深度可以等於2*QT深度+MT深度或者2*QT深度+BT深度或者QT深度+MT深度或者QT深度+BT深度。在一些實施例,MER區域不能跨過圖像邊界。即,所有MER區域必須都在圖像內,沒有MER區域的像素在圖像邊界之外。MER也可以被應用於除了合併或者仿射合併之外的AMVP模式。基於QTMTT的MER可以被應用於所有候選推導的工具(如AMVP、合併、仿射合併等等)。
在一些實施例中,MER以及共用列表兩者可以在QTMTT結構中啟用。在一些實施例中,對於正常合併以及ATMVP,使用了共用列表,以及對於仿射合併,使用了基於QTMTT的MER。在一些實施例中,對於一些預測模式,使用了共用列表,而對於其他合併模式或者AMVP模式,使用了MER。
I.基於歷史的合併候選推導
在空間MVP以及TVMP後,基於歷史的MVP(HMVP)合併候選被添加到合併列表。在HMVP中,先前編碼塊的運動資訊被存儲於表中並且用作當前CU的MVP。具有多個HMVP候選的表在編碼/解碼進程期間被維持。當遇到新的CTU列(row)時該表被重設(清空)。無論是否有非子塊幀間編碼的CU,相關運動資訊被添加到表的最後條目作為新的HMVP候選。
在一些實施例中,HMVP表尺寸S被設置為6,其指示至多6個基於歷史的MVP(HMVP)候選可以被添加到表。當插入新的運動候選到該表 時,利用了約束的先進先出(FIFO)規則,其中首先應用冗餘檢查來找到在表中是否由相等的HMVP。如果找到,從表中移除相等的HMVP以及後面所有的HMVP候選朝前移。HMVP候選可以用於合併候選列表重構進程。表中最新的幾個HMVP候選按次序被檢查以及在TMVP候選後被插入候選列表。冗余檢查被應用於HMVP候選到空間或者時間合併候選。
為了減少冗餘檢查操作,一些實施例使用了後續簡化:
(1)用於合併列表生成的HMVP候選的數目被設置為(N<=4)?M:(8-N),其中N指示合併列表中現有候選的數目以及M指示表中可用HMVP候選的數目。
(2)一旦可用合併候選的總數目達到最大允許的合併候選減1,結束來自HMVP的合併候選列表重構進程。
j.幀內塊複製(IBC)
幀內塊複製(IBC)也被稱為當前圖像參考(CPR)。IBC(或CPR)運動向量是參考當前圖像中已重構參考樣本的一個MV。對於一些實施例,IBC預測模式被當作除了的幀內或者幀間預測模式之外的第三預測模式用於編解碼CU。
因為IBC模式被實施為塊層級編解碼模式,在編碼器執行塊匹配(BM)來找到每一CU的最佳塊向量(或者運動向量)。此處,塊向量用於指示從當前塊到參考塊的位移,其在當前圖像中已被重構。IBC編解碼CU的亮度塊向量是整數精度。
色度塊向量也舍入到整數精度。當與AMVR組合時,IBC模式可以在1像素以及4像素運動向量精度之間切換。IBC模式也應用於寬度以及高度小於或等於64亮度樣本的CU。
在編碼器側,執行基於雜湊的運動估計用於IBC。編碼器執行 RD檢查用於寬度或高度不大於16亮度樣本的塊。對於非合併模式,首先使用基於雜湊的搜索執行塊向量搜索。如果雜湊搜索不返回有效候選,將執行基於塊匹配的局部搜索。在基於雜湊的搜索中,當前塊與參考塊之間的雜湊鍵匹配(32位元CRC)被擴展到所有允許的塊尺寸。當前圖像中每一位置的雜湊鍵計算基於4×4子塊。對於較大尺寸的當前塊,當所有4×4子塊的所有雜湊鍵與對應參考位置中的雜湊鍵匹配時,雜湊鍵被決定與參考塊匹配。如果發現多個參考塊的雜湊鍵與當前塊的雜湊鍵匹配,計算每一匹配參考的塊向量成本以及選擇最小成本的一個。
在塊匹配搜索中,搜索範圍被設置為覆蓋先前以及當前CTU。在CU層級,用旗標發信IBC模式,其可以被發信為IBC AMVP模式或者IBC跳過/合併模式如下:
- IBC跳過/合併模式:合併候選索引用於指示來自相鄰候選IBC編碼塊的列表中的哪一塊相鄰用於預測當前塊。合併列表包括空間、HMVP以及成對的候選。
- IBC AMVP模式:以與運動向量差異相同的方式編解碼塊向量差異。塊向量預測方法使用兩個候選作為預測子,一個來自左邊相鄰塊以及一個來自上方相鄰塊(如果IBC編解碼的)。當相鄰塊都不可用時,默認的塊向量將被用作預測子。旗標被發信來指示塊向量預測子索引。
在一些實施例中,為了減少記憶體消耗以及解碼器複雜度,IBC僅允許預定區域的重構部分,預定區域包括當前CTU的區域以及左側CTU的一些區域。第16圖示出了IBC模式的參考區域,其中每一塊表示64×64亮度樣本單元。圖式示出了當前CTU的處理次序以及當前CTU 1610以及左邊CTU 1620中可用的參考樣本。
根據位於當前CTU內當前編碼CU的位置,下文應用:
- 如果當前塊(或當前編碼CU)落入當前CTU的左上64×64塊,那麼除了當前CTU中已重構的樣本,其也可以使用CPR模式參考左邊CTU的右下64×64塊的參考樣本。當前塊也可以使用CPR模式參考左邊CTU的左下64×64塊的參考樣本以及左邊CTU的右上64×64塊的參考樣本。
- 如果當前塊落入當前CTU的右上64×64塊,那麼除了當前CTU中已重構的樣本,如果相對於當前CTU的亮度位置(0,64)還未被重構,當前塊也可以使用CPR模式參考左邊CTU的左下64×64塊以及右下64×64塊的參考樣本。否則,當前塊還可以參考左邊CTU的右下64×64塊的參考樣本。
- 如果當前塊落入當前CTU的左下64×64塊,那麼除了當前CTU中已重構的樣本,如果相對於當前CTU的亮度位置(64,0)還未被重構,當前塊還可以使用CPR模式參考左邊CTU的右上64×64塊以及右下64×64塊的參考樣本。否則,當前塊還可以使用CPR模式參考左邊CTU的右下64×64塊的參考樣本。
- 如果當前塊落入當前CTU的右下64×64塊,其僅可以使用CPR模式參考當前CTU中已重構的樣本。
對於一些實施例,這些約束允許使用硬體實施方式的局部片上記憶體來實施IBC模式。
IBC模式與其他幀間編碼工具之間的互動,如成對的合併候選、基於歷史的運動向量預測子(HMVP)、組合的幀內/幀間預測模式(CIIP)、具有允許向量差異的合併模式(MMVD)以及三角形分割如下:
- IBC可以與成對的合併候選以及HMVP一起使用。藉由平均兩個IBC合併候選可以生成新的成對IBC合併候選。對於HMVP,IBC運動被插入 歷史緩衝器用於未來的參考。
- IBC不可以與以下幀間工具組合使用:仿射運動、CIIP、MMVD以及三角形分割。
- 當使用DUAL_TREE分割使時,IBC不被允許用於色度編碼塊。
不像HEVC螢幕內容編解碼延伸,當前圖像不再被包括作為IBC預測的參考圖像列表0中的參考圖像。IBC模式的運動向量的推導進程排除幀間模式中的所有相鄰塊,反之亦然。應用後續IBC設計:
- IBC與常規MV合併共用相同的進程,包括成對合併候選以及基於歷史的運動預測子,但是不允許TMVP以及0向量,因為它們對IBC模式是無效的。
- 各自的HMVP緩衝器(每一者5個候選)用於傳統的MV以及IBC。
- 以位元流一致性約束的形式實施塊向量約束,編碼器需要確保在位元流中不存在無效的向量,以及如果合併候選無效(超過範圍或0),合併將不被使用。以虛擬緩衝器的方式表達了這種位元流一致性約束,如下。
- 對於去塊,IBC被處理為幀間模式。
- 如果當前塊使用IBC模式來編解碼,AMVP不使用四分之一像素,相反,AMVR被發信僅指示MV是否是整數像素或4整數像素。
- IBC合併候選的數目可以在條帶標頭中被發信,與常規、子塊以及三角形合併候選的數目分開表示。
在一些實施例中,虛擬緩衝器用於描述用於IBC預測模式以及有效塊向量的可用參考區域。CTU尺寸被標記為ctbSize。虛擬緩衝器被標記為ibcBuf。虛擬緩衝器具有寬度wlbBuf=128*128/ctbSize以及高度hlbcBuf=ctbSize。例如,對於尺寸128×128的CTU,ibcBuf的尺寸也是128×128,對於尺寸64×64的CTU,ibcBuf的尺寸是256×64,以及對於尺寸32×32的CTU, ibcBuf的尺寸是512×32。VPDU的尺寸在每一維度是min(ctbSize,64),Wv=min(ctbSize,64)。虛擬IBC緩衝器,ibcBuf被維持如下:
- 在每一CTU列(row)的開始,用無效值-1刷新整個ibcBuf。
- 在解碼相對於圖像的左上角的VPDU(xVPDU,yVPDU)的開始,設置ibcBuf[x][y]=-1,其中xVPDU%wIbcBuf,...,xVPDU% wIbcBuf+Wv-1,yVPDU%ctbSize,...,yVPDU%ctbSize+Wv-1。
- 在解碼相對於圖像的左上角的CU約束(x,y)後,設置ibcBuf[x % wIbcBuf][y % ctbSize]=recSample[x][y]。
對於覆蓋座標(x,y)的塊,如果後續對於塊向量bv=(bv[0],bv[1])為真,那麼其是有效的,否者其是無效的
另外,ibcBuf[(x+bv[0])% wIbcBuf][(y+bv[1])% ctbSize]將不等於-1。
k.擴展的合併預測
在一些實施例中,藉由包括以下五種類型的候選來構造合併候選列表:
- 來自空間相鄰CU的空間MVP
- 來自同位CU的時間MVP
- 來自FIFO表的基於歷史的MVP
- 成對平均的MVP
- 0MV
在一些實施例中,在條帶標頭中發信合併列表的尺寸。合併列表的最大允許尺寸是6。對於合併模式中編解碼的每一CU,使用截斷的一元二值化(TU)來編碼最佳合併候選的索引。用上下文編解碼合併索引的第一二進位數字以及旁路編解碼用於其他二進位數字。
第17圖示出了空間合併候選的位置。第18圖示出了為空間合併候選的冗餘檢查考慮的候選對。在一些實施例中,從位於第17圖示出的位置A0、B0、B1、A1以及B2的候選中尋找四個合併候選的最大值。僅當位置A0、B0、B1、A1的任一個CU不可用(如,因為其屬於另一個條帶或圖塊)或者是幀內編解碼的時考慮位置B2。在位置A1的候選被添加後,剩餘候選的添加經受冗餘檢查,其確保具有相同運動資訊的候選從列表中被排除以致改善編解碼效率。為了減少計算複雜度,不是所有可能的候選對在所提到冗餘檢查中被考慮。相反僅第18圖中用箭頭示出的連接的對被考慮,如果用於冗餘檢查的對應候選不具有相同的資訊,候選僅被添加到列表。
在這一步驟中,僅一個候選被添加到列表。特別地,在時間合併候選的推導中,基於屬於並位參考圖像的並位CU來推導縮放的運動向量。第19圖示出了用於時間合併候選的運動向量縮放。用於並位CU的推導的參考圖像列表在條帶標頭中被顯示發信。如第19圖中虛線示出的獲得用於時間合併候選的縮放的運動向量,其使用POC距離(tb以及td)從同位CU的運動向量來縮放,其中tb被定義為當前圖像的參考圖像與當前圖像之間的POC差異以及td被定義為並位圖像的參考圖像與並位圖像之間的POC差異。時間合併候選的參考圖像索引被設置為0。
第20圖示出了在候選C0以及C1之間選擇的時間候選的位置。如果在位置C0的CU是不可用的,是幀內編碼的或者在CTU的當前列(row)之外,使用位置C1。否則,在時間合併候選的推導中使用位置C0
在空間MVP以及TMVP後將基於歷史的MVP(HMVP)候選添加到合併列表。在這一方法中,先前編解碼塊的運動資訊被存儲於表以及用作當前CU的MVP。具有多個HMVP候選的表在編碼/解碼進程期間被保留。當遇到新的CTU列(row)時,表被重設(清空)。無論是否有非子塊幀間編碼的CU, 相關的運動資訊被添加到表的最後一個條目作為新的HMVP候選。
在一些實施例中,HMVP表尺寸S被設置為6.其指示至多6個基於歷史的MVP(HMVP)候選可以被添加到該表。當將新的運動候選插入到該表時,利用約束的先進先出(FIFO)規則,其中首先應用冗餘檢查來找到在該表中是否由相同的HMVP。如果找到,相同的HMVP從該表被移除以及HVMP候選之後的所有候選朝前移動。表中最新的幾個HMVP候選被依次檢查以及在TMVP候選後被插入候選列表。冗余檢查被應用於HMVP候選到空間或者時間合併候選。
為了減少冗餘檢查操作的數目,引入了後續簡化:
- 用於合併列表生成的HMPV候選的數目被設置為(N<=4)?M:(8-N),其中N指示合併列表中現有候選的數目以及M指示表中可用HMVP候選的數目。
- 一旦可用合併候選的總數目達到最大允許的合併候選減1,結束來自HMVP的合併候選列表構造進程。
藉由平均現有合併候選列表中候選的預定對生成平均候選,以及預定對被定義為{(0,1),(0,2),(1,2),(0,3),(1,3),(2,3)},其中數目表示合併候選列表的合併索引。為每一參考列表分別計算平均的運動向量。如果在一個列表中兩個運動向量是可用的,甚至當指向不同的參考圖像時這兩個運動向量被平均,如果僅一個運動向量是可用的,直接使用這個。如果沒有運動向量可用,保持這一列表無效。當在添加成對平均合併候選後合併列表未滿時,0MVP被插入末端直到達到最大合併候選數目
l.具有運動向量差異的合併模式(MMVD)
除了合併模式,其中顯式推導的運動資訊被直接用於當前CU的預測樣本生成,包括具有運動向量差異(MVD)的合併模式。在一些實施例中, 在發信跳過旗標以及合併旗標後發信MMVD旗標來指定MMVD模式是否用於CU。
在MMVD中,在選擇合併候選後,其進一步由所發信的MVD資訊細化。進一步的資訊包括合併候選旗標、指定運動幅度的索引以及用於指示運動方向的索引。在MMVD模式中,合併列表中首先兩個候選的一個被選擇作為MV基礎。合併候選旗標被發信來指定使用哪一個。
在一些實施例中,距離索引指定運動幅度資訊以及指示從起始點的預定偏移。如第21圖所示,偏移被添加到起始MV的水準分量或者垂直分量。在下表l-1中指定了距離索引與預定偏移的關聯。
Figure 109141751-A0305-02-0030-4
方向索引表示相對於起始點的MVD的方向。方向索引可以表示如表l-2示出的四個方向。注意到,MVD符號的意義可以根據起始MV的資訊變化。當起始MV是單一預測MV或者兩個列表都指向當前圖像的相同側的雙向預測MV時(即,兩個參考的POC都大於當前圖像的POC,或者都小於當前圖像的POC),表l-2中的符號指定了被添加到起始MV的MV偏移的符號。當起始MV是兩個MV指向當前圖像的不同側的雙向預測MV時(即,一個參考的POC大於當前圖像的POC,以及另一個參考的POC小於當前圖像的POC),表l-2的符號指出被添加到起始MV的列表0MV分量的MV偏移的符號以及列表1MV的符號具有相反值。
Figure 109141751-A0305-02-0030-5
Figure 109141751-A0305-02-0031-6
在一些實施例中,除了正常的單向預測以及雙向預測模式MVD信令,應用了用於雙向預測MVD信令的對稱的MVD模式。在對稱的MVD模式中,包括列表0以及列表1的參考圖像索引的運動資訊以及列表1的MVD不被發信但被推導。對稱的MVD模式的解碼進程如下:
在條帶層級,變數BiDirPredFlag,RefIdxSymL0 and RefIdxSymL1被推導如下:
- 如果mvd_l1_zero_flag是1,BiDirPredFlag被設置為等於0。
- 否則,如果列表0中最近的參考圖像以及列表1中最近的參考圖像形成參考圖像的前向以及後向對或者參考圖像的後向以及前向對,BiDirPredFlag被設置為1,以及列表0以及列表1兩者參考圖像都是短期參考圖像。否則,BiDirPredFlag被設置為0。
在CU層級,如果CU是雙向預測編碼的以及BiDirPredFlag等於1,指示是否使用對稱模式的對稱模式旗標被顯示發信。當對此模式旗標為真時,僅mvp_l0_flag,mvp_l1_flag以及MVD0被顯示發信。列表0以及列表1的參考索引分別被設置為等於參考圖像對。MVD1被設置為等於(-MVD0)。最終的運動向量被示出於以下等式。
Figure 109141751-A0305-02-0031-7
在編碼器,對稱MVD運動估計開始初始MV評估。一組初始MV候選包括從單一搜索獲得MV,從單向預測搜索獲得的MV以及來自AMVP列表的MV。具有最低率失真成本的一個MV被選擇為對稱的MVD運動搜索的初始MV。
m.仿射候選
仿射合併預測或者AF_MERGE模式可以被應用於寬度以及高度都大於或等於8的CU。在這一模式中,運動向量與仿射模型的控制點相關,或者基於空間相鄰CU的運動資訊生成當前CU的控制點運動向量(CPMV)。可能有至多5個CPMVP候選以及索引被發信來指示將用於當前CU的一個。後續的三種類型CPMV候選用於形成仿射合併候選列表:
- 從相鄰CU的CPMV推測的繼承的仿射合併候選。
- 使用相鄰CU的平移MV推導的構造的仿射合併候選CPMVP
- 0MV
構造的仿射候選意味著候選藉由組合每一控制點的相鄰平移運動資訊來構造。從指定的空間相鄰塊以及時間相鄰塊來推導控制點的運動資訊。
仿射AMVP預測或者仿射AMVP模式可以被應用用於寬度以及高度都大於或等於16的CU。CU層級中的仿射旗標在位元流中被發信來指示仿射AMVP模式是否被使用以及然後另一個旗標被發信來指示是否是4參數模仿射或者6參數仿射。在這一模式中,當前CU的CPMV的差異以及它們的預測子CPMVP來位元流中被發信。仿射AMVP候選列表尺寸是2以及其藉由依次使用後續四種類型的CPVM來生成:
- 從相鄰CU的CPMV推測的繼承的仿射AMVP候選。
- 使用相鄰CU的平移MV推導的構造的仿射AMVP候選。
- 來自相鄰CU的平移MV。
- 0MV。
繼承的仿射AMVP候選的檢查次序與繼承的仿射合併候選的檢查次序相同。區別僅在於,對於AVMP候選,僅考慮具有與當前塊相同參考圖像的仿射CU。當將繼承的仿射運動預測子插入候選列表時,沒有應用修剪進程。
在一些實施例中,仿射CU的CPMV被存儲於各自的緩衝器。所存儲的CPMV僅用於在仿射合併模式以及仿射AMVP模式生成繼承的CPMVP用於最近編解碼的CU。從CPMV推導的子塊MV用於運動補償,平移MV的合併/AMVP列表的MV推導以及去塊。
為了避免用於額外的CPMV的圖像線性緩衝器,來自上方CTU的CU的仿射資料繼承被當作與來自正常相鄰CU的繼承不同。如果用於仿射運動資料繼承的候選CU在上方CTU線中,使用線性緩衝器中的左下以及右下子塊MV而不是CPMV來用於仿射MVP推導。這樣,CPMV僅被存儲於局部緩衝器。如果候選CU是6參數仿射編解碼的,仿射模型退化到4參數模型。
n.基於子塊的時間運動向量預測(SbTMVP)
在一些實施例中,基於子塊的時間運動向量預測(SbTMVP)方法。類似於HEVC中時間運動向量預測(TMVP),SbTMVP使用並位圖像中的運動場來改善當前圖像中CU的運動向量預測以及合併模式。由TMVP使用的相同的並位圖像用於SbTVMP。SbTMVP不同於TMVP,在於(1)TMVP在CU層級預測運動而SbTMVP在子CU層級預測運動,以及(2)鑒於TMVP從並位圖像的並位塊(同位塊是相對於當前CU的右下或者中心塊)提取運動向量,SbTMVP在從並位圖像提取時間運動資訊之前應用運動移位元,其中運動移位從來自當前CU的空間相鄰塊之一的運動向量來獲得。
第22圖概念地示出了SbTMVP進程。藉由應用來自空間相鄰塊的運動偏移以及縮放來自對應的同位子CU的運動資訊推導子CU運動場。在兩個步驟中,SbTMVP預測當前CU內子CU的運動向量。在第一步中,檢查第22圖中的空間相鄰塊A1。如果A1具有使用並位圖像作為其參考圖像的運動向量,這一運動向量被選擇為待應用的運動偏移。如果沒有這種運動被識別,那麼運動偏移被設置為(0,0)。在第二步中,如第22圖所示,第一步驟中識別的運 動偏移被應用(如,添加到當前塊的座標)來從並位圖像獲得子CU層級運動資訊(運動向量以及參考索引)。第22圖中示例假定運動偏移被設置為塊A1的運動。那麼,對於每一子SU,並位圖像中其對應塊(覆蓋中心樣本的最小運動網格)的運動資訊用於推導子CU的運動資訊。在識別同位子CU的運動資訊後,其以與HEVC的TMVP進程類似的方式被轉換成當前子CU的運動向量以及參考索引,其中時間運動縮放被應用來對齊這些當前CU的時間運動向量的參考圖像。
在一些實施例中,包含SbTVMP候選以及仿射合併候選兩者的基於組合的子塊合併列表用於發信基於子塊的合併模式。由序列參數集合(SPS)旗標啟用/禁用SbTMVP模式,如果SbTMVP模式被啟用,SbTMVP預測子被添加作為基於子塊的合併候選列表的第一條目,緊接著是仿射合併候選。在一些實施例中,在SPS中發信基於子塊的合併列表的尺寸以及基於子塊的合併列表的最大允許尺寸是5。SbTMVP中使用的子CU尺寸被固定為8×8,以及如像仿射合併模式那樣,SbTMVP模式僅適用於寬度以及高度兩者大於或等於8的CU。額外的SbTMVP合併候選的編碼邏輯與其他合併候選相同,即,對於P或者B條帶中的每一CU,執行額外的RD檢查來決定是否使用SbTMVP候選。
o.集合分割模式(GPM)
在幾何分割下,變換塊可以獲得屬於多個(如,兩個)不同分割的像素,以及多個不同的運動向量用於多個不同分割的運動補償。因此,不同分區之間的邊界上的像素可以具有大的不連續性,其可能生成類似於塊效應的視覺偽影。這反過來降低了變換效率。
第23圖以及第24圖示出了由幾何分割創建的區塊。灰色陰影的像素屬於區域1以及白色陰影的像素屬於區域2。如果其四個相連的相鄰像素(左、上、右以及下)的任一個屬於區域2(或者區域1),區域1(或區域2)的像素被定義為邊界像素。如果像素是邊界像素,使用兩個區域的兩個運動向量的運 動預測的加權和執行運動補償。用於包含邊界像素的區域的運動向量的預測的權重是3/4以及用於使用其他區域的運動向量的預測是權重是1/4。重疊的邊界改善了重構視訊的視覺品質,也提供了BD率增益。
p.組合的幀間以及幀內預測(CIIP)
組合的幀間/幀內預測(CIIP)將幀間預測訊號與幀內預測訊號組合。CIIP模式中的幀間預測訊號Pinter使用應用於常規合併模式的相同的幀間預測進程來推導,以及幀內預測訊號Pintra在具有平面模式的常規幀內預測處理之後被推導。然後,使用加權平均組合幀內以及幀間預測訊號。使用加權平均組合幀間以及幀內預測訊號。根據上方以及左邊相鄰塊的編解碼模式計算權重中,如下:
- 如果上方相鄰塊是可用並且幀內編碼的,那麼設置isIntraTop為1,否則設置isIntraTop為0。
- 如果左邊相鄰塊是可以並且幀內編碼的,那麼設置isIntraLeft為1,否則設置isIntraLeft為0;
- 如果(isIntraLeft+isIntraLeft)等於2,那麼wt被設置為3;
- 否則,如果(isintraLeft+isIntraLeft)等於1,那麼wt被設置為2;
- 否則,設置wt為1。
形成CIIP預測如下:P CIIP=((4-wt) * P inter +wt * P intra +2)>>2
在一些實施例中,當CU以合併模式編解碼時,如果CU包含至少64個亮度樣本(即,CU寬度乘CU高度等於或大於64),以及如果CU寬度以及CU高度都小於128亮度樣本,額外的旗標被發信來指示CIIP模式是否被應用於當前CU。
III 合併估計區域(MER)以及合併模式
因為IBC模式參考當前圖像上的參考像素,因為當前CU的運動補償需要等到先前CU的重構,IBC合併列表生成的並行處理是無用的。
在一些實施例中,MER模式適用於子塊合併列表(包括仿射合併以及SbTMVP)以及非子塊非IBC合併列表(包括GPM、MMVD合併、常規合併、CIIP合併),但是不用於IBC合併(與/或IBC AMVP)。即,對於IBC合併(與/或IBC AMVP)模式,當生成合併列表時,視訊編碼器可以參考相同MER區域內的空間相鄰塊。
在一些實施例中,在子塊合併以及非子塊非IBC合併中使用MER模式(包括GPM、MMVD合併、常規合併、CIIP合併),但是對IBC合併是禁用的(與/或IBC AMVP)。特別地,當在非IBC模式下推導當前CU的合併列表的空間相鄰塊時,MER區域內的空間相鄰塊被排除(設置為不可用)或者被推開到MER區域的邊界。對於一些實施例,視訊編碼器決定是否使用空間相鄰塊作為合併候選,根據以下虛擬碼:
Figure 109141751-A0305-02-0036-8
換言之,如果IBC模式用於編解碼當前CU,當前CU的空間相 鄰塊可以被用作合併候選而不管空間相鄰塊是否在與當前CU相同的MER中。相反,如果沒有使用IBC模式,與當前CU相同MER中的空間相鄰塊從合併列表中被排除作為合併候選。
第25圖概念地示出了基於MER以及IBC模式從合併候選列表包括以及排除空間相鄰塊。如圖所示,當前圖像2500具有其定義的MER 2505。MER 2505包括幾個CU,包括2510以及CU 2515。圖式也示出了幾個空間相鄰塊,包括MER 2505內的空間相鄰塊2520-2526,MER 2505之外的空間相鄰塊2530-2536,以及空間相鄰塊2540-2542在MER 2505的CU之後被編解碼。
如果IBC模式對CU 2510是關閉的(或者未被應用),在MER 2505之外的空間相鄰塊2530-2536可以用作用於編解碼CU 2510的合併候選。空間相鄰塊2540-2542在MER 2505內以及被排除(或者不可用)用於編解碼CU2510的合併候選。另一方面,如果IBC模式被應用用於CU 2515,空間相鄰塊2530-2536以及2540-2542可以都被用作(或者可用)合併候選而不管用於編解碼CU 2515的MER 2505。
前述提到的方法可以在編碼器與/或解碼器實施。例如,所提出的方法可以在編碼器的幀間預測模組,與/或解碼器的幀間預測模組實施。在一些實施例中,編碼器可以在位元流中發信(或生成)一個或多個語法元素,以致解碼器可以從該位元流解析一個或多個語法元素。
示例性視訊編碼器
第26圖示出了當編碼區塊時可以使用預測候選列表(用於合併模式或者AMVP)來生成預測的示例性視訊編碼器。如圖所示,視訊編碼器2600從視訊源2605接收輸入視訊訊號以及將訊號編碼進位元流2695。視訊編碼器2600具有用於編碼來自視訊源2605的訊號的各種元件或模組,至少包括從變換模組2610、量化模組2611、逆量化模組2614、逆變換模組2615、幀內圖像估 計模組2620、幀內圖像預測模組2625、運動補償模組2630、運動估計模組2635、環路濾波器2645、重構的圖像緩衝器2650、MV緩衝器2665以及MV預測模組2675以及熵編碼器2690中選擇的一些元件。運動補償模組2630以及運動估計模組2635是幀間預測模組2640的一部分。
在一些實施例中,模組2610-2690是由計算裝置或電子裝置的一個或多個處理單元(如,處理器)執行的軟體指令的模組。在一些實施例中,模組2610-2690是由電子裝置的一個或多個積體電路(IC)實施的硬體電路的模組。雖然模組2610-2690被示出為分離的模組,一些模組可以被組合成單個模組。
視訊源2605提供表示未經壓縮的每一視訊幀的像素資料的原始視訊資料。加法器2608計算視訊源2605的原始視訊像素資料與來自運動補償模組2630或者幀內預測模組2625的已預測像素資料之間的差異。變換模組2610將差異(或者殘差像素資料或者殘差訊號2609)轉換成變換係數2616(如,藉由執行離散余弦變換或者DCT)。量化模組2611將變換係數量化成已量化資料(或者已量化係數)2612,其可以由熵編碼器2690編碼成位元流2695。
逆量化模組2614解量化已量化的資料(或者已量化的係數)2612來獲得變換係數,以及逆變換模組2615對變換係數執行逆變換來生成重構的殘差2619。重構的殘差與已預測的像素資料2613相加來生成重構的像素資料2617。在一些實施例中,重構的像素資料2617暫時存儲在線性緩衝器(未示出)用於幀內圖像預測以及空間MV預測。重構的像素由環路濾波器2645進行濾波以及被存儲於重構的圖像緩衝器2650中。在一些實施例中,重構的圖像緩衝器2650是視訊編碼器2600的外部記憶體。在一些實施例中,重構的圖像緩衝器2650是視訊編碼器2600的內部記憶體。
幀內圖像估計模組2620基於重構的像素資料2617執行幀內預測來生成幀內預測資料。幀內預測資料被提供到熵編碼器2690來被編碼到位元流 2695。幀內預測資料也由幀內預測模組2625使用來生成已預測像素資料2613。
除了在位元流中編碼完整實際的MV,視訊編碼器2600使用MV預測來生成已預測的MV,以及用於運動補償的MV與已預測MV之間的差異被編碼為殘差運動資料並且被存儲於位元流2695中。
MV預測模組2675基於參考MV生成已預測MV,參考MV被生成用於編碼先前的視訊幀,即運動補償MV用於執行運動補償。MV預測模組2675從來自MV緩衝器2665的先前視訊幀檢索參考MV。視訊編碼器2600在MV緩衝器2665存儲為當前視訊幀生成的MV作為用於生成已預測MV的參考MV。
MV預測模組2675使用參考MV來創建已預測MV。該已預測MV可以由空間MV預測或者時間MV預測來計算。已預測MV與當前幀的運動補償MV(MC MV)之間的差異(殘差運動資料)由熵編碼器2690編碼器位元流2695。
熵編碼器2690藉由使用熵編碼技術將各種參數以及資料編碼進位元流2695,如上下文自我調整算術編碼(CABAC)或者霍夫曼編碼。熵編碼器2690一起編碼已量化變化係數2612、各種標頭元素、旗標,以及殘差運動資料為語法元素到位元流2695。位元流2695反過來存儲於儲存裝置或通過如網路的通信媒介傳輸到解碼器。
環路濾波器2645對重構的像素資料2617執行濾波或光滑操作來減少編解碼的偽影,尤其是在區塊的邊界。在一些實施例中,所執行的濾波操作包括樣本適應性偏移(SAO)。在一些實施例中,濾波操作包括適應性環路濾波(ALF)。
第27圖示出了基於MER以及IBC模式識別預測候選的視訊編碼器的部分。特別地,圖式示出了視訊編碼器2600的幀內預測模組2640的元 件。如圖所示,預測候選列表識別模組2710決定來自MV緩衝器2665的哪一運動向量包括於當前CU的預測候選列表(用於合併模式或者用於AMVP)。視訊編碼器提供訊號用於指示IBC模式是否用於當前CU以及用於定義MER。IBC模式指示的訊號以及MER定義被提供到熵編碼器2690來被包括於位元流中作為語法元素。
預測候選列表識別模組2710使用IBC模組以及MER定義來決定是否包括或排除某些運動向量。例如,當MER被啟動以及IBC是去啟動用於當前CU時,預測候選列表識別模組2710可以從與當前CU相同的MER中的當前CU的空間相鄰塊排除運動向量,以及如果IBC模式對對當前CU是啟動的,預測候選列表識別模組2710可以包括來自與當前CU相同的MER中的當前CU的相鄰塊的運動向量,即,當前CU的空間相鄰塊可以被包括而不管MER定義。
由預測候選列表識別模組2710為當前CU識別的預測候選列表反過來被提供到預測生成模組2720,其根據可能的預測模式(CIIP、MMVD、GPM、仿射等)之一生成當前CU的預測用於運動補償模組2630。
第28圖概念地示出了用於使用基於MER以及IBC模式識別的預測候選來編碼視訊圖像中的區塊的進程2800。在一些實施例中,計算裝置的一個或多個處理單元(如,處理器)實施編碼器2600,藉由執行存儲於電腦可讀媒介中的指令來執行進程2800。在一些實施例中,實施編碼器2600的電子裝置執行進程2800。
編碼器接收(在塊2810)待編碼為視訊的當前圖像的當前塊的原始資料到位元流。編碼器決定(在塊2820)是否藉由使用預測候選來編解碼當前塊(如,合併模式候選的列表或者AMVP候選的列表)。在一些實施例中,編碼器將語法元素發信到位元流,指示是否藉由使用預測候選來編解碼當前塊。如果 藉由使用預測候選來編解碼當前塊,進程前進到2830。否則,編碼器在不使用預測候選的情況下編碼(在塊2825)當前塊。
在塊2830,編碼器識別當前塊的預測候選的列表中包括的潛在候選。編碼器決定(在塊2840)當前塊是否由幀內塊複製模式編解碼以及(在塊2842)決定預測候選的列表是否屬於不同候選列表的預定子集或者從其來推導。在一些實施例中,不同候選列表的預定子集包括合併模式以及類合併候選(如,CIIP、GPM、常規合併)以及不包括AMVP候選。如果當前塊由幀內塊複製模式編解碼或者如果預測候選的列表是用於AMVP的列表,進程前進到2850。否則(當前塊不由IBC編解碼以及預測候選的列表是合併或者類合併),進程前進到2845。
當藉由使用幀內塊複製模式來編解碼當前塊時,參考當前圖像中已編碼參考樣本的運動向量用於生成當前塊的預測。當不藉由使用幀內塊複製模式來編解碼當前塊時,當前塊以及MER中的至少一個其他塊可以被並行編碼。在一些實施例中,編碼器在位元流中發信一個或多個語法元素來指示幀內塊複製模式是否用於當前塊。
編碼器決定(在塊2845)候選是否來自位於與當前塊相同MER中的空間相鄰塊。在一些實施例中,位元流中的一個或多個語法元素可以用於識別或定義包括當前塊的MER。如果空間相鄰塊在與當前塊相同的MER中,進程前進到塊2855。否則,進程前進到2850。
在塊2850,編碼器包括預測候選列表中的候選用於當前塊。如果有額外的潛在候選包括於預測候選列表中,進程可以返回到塊2830。如果沒有其他潛在候選,進程前進到2860。
在塊2855,編碼器排除來自預測候選列表的候選用於當前塊。在一些實施例中,當不藉由使用幀內塊複製模式來編解碼當前塊時,位於MER 中的當前塊的所有空間相鄰塊被從預測候選的列表排除。如果有額外的潛在候選包括於預測候選列表,進程可以返回塊2830。如果沒有其他潛在候選,進程前進到2860。
編碼器藉由使用從預測候選列表選擇的預測候選來生成當前塊的預測,將當前塊編碼(在塊2860)進位元流。當前塊的預測可以是基於所選預測候選生成的仿射預測。當前塊的預測可以是基於所選預測候選生成的三角形或GPM預測。當前塊的預測可以是基於所選預測候選生成的組合的幀間以及幀內預測(CIIP)。藉由用運動向量差異資訊細化所選的預測候選,可以生成當前塊的預測。
示例性視訊解碼器
第29圖示出了當解碼區塊時可以使用預測候選列表(用於合併模式或AMVP)來生成預測的示例性視訊解碼器2900。如圖所示,視訊解碼器2900是接收位元流2995並將位元流的內容解碼成視訊幀的像素資料用於顯示的圖像解碼或視訊解碼電路。視訊解碼器2900具有用於解碼位元流2995的各種元件或模組。包括從逆量化模組2911、逆變換模組2910、幀內預測模組2925、運動補償模組2930、環路濾波器2945、解碼圖像緩衝器2950、MV緩衝器2965、MV預測模組2975以及解析器2990選擇的一些元件。運動補償模組2930是幀間預測模組2940的一部分。
在一些實施例中,模組2910-2990是由計算裝置的一個或多個處理單元(如,處理器)執行的軟體指令的模組。在一些實施例中,模組2910-2990是由電子裝置的一個或多個IC實施的硬體電路的模組。雖然模組2910-2990被示出為分離的模組,一些模組可以被組合成單個模組。
解析器2990(或熵解碼器)接收位元流2995以及根據由視訊編解碼或圖像編解碼標準定義的語法執行初始解析。所解析的語法元素包括各種標 頭元素、旗標以及已量化資料(或已量化係數)2912。解析器2990藉由使用如上下文二進位算術編解碼(CABAC)或霍夫曼編碼的熵編解碼技術解析出各種語法元素。
逆量化模組2911解量化已量化的資料(或已量化係數)2912來獲得變換係數,以及逆變換模組2910對變換係數2916執行逆變換來生成重構的殘差訊號2919。重構的殘差訊號2919與來自幀內預測模組2925或者運動補償模組2930的已預測像素資料相加來生成已解碼像素資料2917。已解碼像素資料由環路濾波器2945濾波並且存儲於解碼圖像緩衝器2950。在一些實施例中,解碼圖像緩衝器2950是視訊解碼器2900的外部儲存。在一些實施例中,解碼圖像緩衝器2950是視訊解碼器2900的內部儲存。
幀內預測模組2925從位元流2995接收幀內預測資料以及根據其從存儲於解碼圖像緩衝器2950的已解碼像素資料2917生成已預測像素資料2913。在一些實施例中,解碼像素資料2917也存儲於線性緩衝器(未示出)用於幀內圖像預測以及空間MV預測。
在一些實施例中,解碼圖像緩衝器2950的內容用於顯示。顯示裝置2955從解碼圖像緩衝器2950檢索內容直接用於顯示,或者檢索解碼圖像緩衝器的內容到顯示緩衝器。在一些實施例中,像素裝置通過像素介面從解碼圖像緩衝器2950接收像素值。
MV預測模組2975基於被生成用於解碼先前視訊幀的參考MV生成已預測MV,如,運動補償MV用於執行運動補償。MV預測模組2975從MV緩衝器2965檢索先前視訊幀的參考MV。視訊解碼器2900將為解碼當前視訊幀生成的運動補償MV存儲於MV緩衝器2965作為用於側已預測MV的參考MV。
環路濾波器2945對已解碼像素資料2917執行濾波或者光滑操作 來生成編解碼的偽影,尤其在區塊的邊界。在一些實施例中,所執行的濾波操作包括樣本適應性偏移(SAO)。在一些實施例中,濾波操作包括適應性環路濾波器(ALF)。
第30圖示出了基於MER以及IBC模式識別預測候選的視訊解碼器2900的部分。特別地,圖式示出了視訊解碼器2900的幀間預測模組2940的元件。預測候選列表識別模組3010決定來自MV緩衝器2965的哪一運動向量被包括於預測候選列表作為當前CU的預測候選。
如圖所示,熵解碼器2990從位元流解析發信IBC模式是否用於當前CU的語法元素以及定義MER的語法元素。預測候選列表識別模組3010使用IBC模式指示以及MER定義來決定是否包括或者排除某些運動向量。例如,當MER是啟動的以及IBC是去啟動的用於當前CU,預測候選列表識別模組3010可以排除來自與當前CU相同的MER中的當前CU的相鄰塊的運動向量,以及如果IBC模式對當前CU是去啟動的,預測候選列表識別模組3010可以包括來自與當前CU相同MER中的當前CU的相鄰塊的運動向量,即,可以包括當前CU的空間相鄰塊而不管MER定義。
由預測候選列表識別模組2710為當前CU識別的預測候選列表反過來被提供到預測生成模組3020,其根據可能的預測模式之一(CIIP/MMVD/GPM仿射等)生成當前CU的預測用於運動補償模組2930。
第31圖概念地示出了使用基於MER以及IBC模式識別的預測候選來解碼視訊圖像中區塊的進程3100。在一些實施例中,實施解碼器2900的計算裝置的一個或多個處理單元(如,處理器)藉由執行存儲於電腦可讀媒介中的指令執行進程3100。在一些實施例中,實施解碼器2900的電子裝置執行進程3100。
解碼器從待解碼為當前圖像的當前塊的位元流接收(在塊3110) 資料。解碼器決定(在塊3120)是否藉由使用預測候選(如,合併模式候選列表或者AMVP候選列表)來編解碼當前塊。在一些實施例中,解碼器從位元流中解析語法元素指示是否藉由使用預測候選來編解碼當前塊。如果藉由使用預測候選來編解碼當前塊,進程前進到2830。否則,解碼器在不使用預測候選的情況下重構(在塊3125)當前塊。
在塊3130,解碼器識別潛在候選用於包括於當前塊中的預測候選列表。解碼器決定(在塊3140)當前塊是否由幀內塊複製模式編解碼以及(在塊3142)預測候選列表是否屬於不同候選列表的預定子集或者從其來推導。在一些實施例中,不同候選列表的預定子集包括合併模式或者類合併的候選(如,CIIP、GPM、常規合併)以及排除AMVP候選。如果當前塊由幀內塊複製模式來編解碼或者如果預測候選列表是AMVP的列表,進程前進到2850。否者(當前塊不由IBC編解碼以及預測候選的列表是合併或者類合併),進程前進到3145。
當藉由使用幀內塊複製模式來編解碼當前塊時,參考當前圖像中已解碼參考樣本的運動向量用於生成當前塊的預測。當不藉由使用幀內塊複製模式來編解碼當前塊時,當前塊以及MER中的至少一個其他塊可以被並行解碼。在一些實施例中,解碼器接收位元流中的一個或多個語法元素來指示幀內塊複製模式是否用於當前塊。
解碼器決定(在塊3145)候選是否來自位於與當前塊相同MER中的相鄰塊。在一些實施例中,位元流中的一個或多個語法元素可以用於識別或定義包括當前塊的MER。如果空間相鄰塊在於當前塊相同的MER中,進程前進到塊3155。否者,進程前進到3150。
在塊3150,解碼器包括預測候選列表中的候選用於當前塊。如果有額外的潛在候選包括於預測候選列表,進程可以返回塊3130。如果沒有其他的潛在候選,進程前進到3160。
在塊3155,解碼器從預測候選列表排除候選用於當前塊。在一些實施例中,當不藉由使用幀內塊複製模式來編解碼當前塊時,位於MER中的當前塊的所有相鄰塊從預測模式候選的列表被排除。如果有額外的潛在候選包括於預測候選列表,進程可以返回塊3130。如果沒有其他潛在候選,進程前進到3160。
藉由使用從預測候選列表選擇的合併候選來生成當前塊的預測,解碼器重構(在塊3160)當前塊。當前塊的預測可以是基於所選擇的預測候選生成的仿射預測。當前塊的預測可以是基於所選擇的預測候選生成的三角形或GPM與猜測。當前塊的預測可以是基於所選擇的預測候選生成的組合的幀間以及幀內預測(CIIP)。當前塊的預測可以藉由用運動向量差異資訊細化所選預測候選來生成。
示例性電子系統
許多上述描述的特徵以及應用被實施為被指定為記錄在電腦可讀儲存媒介(也稱為電腦可讀媒介)上的指令集合的軟體進程。當這些指令由一個或多個計算或處理單元(如,一個或多個處理器、處理器核心或者其他處理單元)執行時,其使得處理單元執行指令所指示的動作。電腦可讀媒介的示例包括但不限於CD-ROM、快速驅動器、隨機存取記憶體(RAM)晶片、硬碟驅動器、可擦可程式設計唯讀記憶體(EPROM)、電可擦可程式設計唯讀記憶體(EEPROM)等。電腦可讀媒介不包括無線或者通過有線連接傳輸的載波以及電子訊號。
在本發明中,術語“軟體”意為包括駐留於唯讀記憶體中的固件或者存儲與磁儲存中的應用,其可以被讀取到記憶體由處理器處理。另外,在一些實施例中,多個軟體發明可以被實施為較大程式的子部分而保留獨特的軟體發明。在一些實施例中,多個軟體發明也可以被實施為各自的程式。最終,一起實施為本文描述的軟體發明的各自程式的任何組合在本發明的範圍內。在 一些實施例中,軟體程式,當被安裝來在一個或多個電子系統上操作時,定義運行或執行軟體程式的操作的一個或多個特定的機器實施方式。
第32圖概念地示出了可以實施本發明一些實施例的電子系統3200。電子系統3200可以是電腦(如,臺式電腦、個人電腦、平板電腦)、電話、PDA或者任何其他合適的電子裝置。這種電子系統包括各種類型的電腦可讀媒介以及用於各種其他類型的電腦可讀媒介的介面。電子系統3200包括匯流排3205、處理單元3210、影像處理單元(GPU)3215、系統記憶體3220、網路3225、唯讀記憶體3230、永久儲存裝置3235、輸入裝置3240以及輸出裝置3245。
匯流排3205共同表示連接電子系統3200的各種內部裝置的所有系統、外接以及晶片集匯流排。例如,匯流排3205將處理單元3210與GPU 3215、唯讀記憶體3230、系統記憶體3220以及永久儲存裝置3235連接到一起。
從各種記憶體單元,處理器單元3210檢索指令來執行待處理的資料以執行本發明的進程。處理單元在不同實施例中可以是單個處理器或者多核處理器。一些指令被傳輸以及由GPU 3215執行。GPU 3215可以分流各種計算或者實施由處理單元3210提供的影像處理。
唯讀記憶體(ROM)3230存儲靜態資料以及由處理單元3210以及電子系統的其他模組使用的指令。另一方面,永久儲存裝置3235是讀寫存儲裝置。裝置是即使電子系統3200關閉時存儲指令的非易失性存儲單元。本發明的一些實施例使用大儲存裝置(如磁片或光碟以及其對應的因公安驅動器)作為永久儲存裝置3235。
其他實施例使用可移除儲存裝置(如軟碟、快速存儲裝置等以及其對應的硬碟驅動器)作為永久儲存裝置。像永久儲存裝置3235,系統記憶體3220是讀寫存儲裝置。然而,不像儲存裝置3235,系統記憶體3220是易失性讀寫記憶體,如隨機存取記憶體。系統記憶體3220存儲處理器在運行時使用的 一些指令以及資料。在一些實施例中,根據本發明的進程被存儲於系統記憶體3220、永久儲存裝置3235與/或唯讀記憶體3230。例如,各種存儲單元包括根據一些實施例的用於處理多媒體剪輯的指令。從這各種存儲單元,處理單元3210檢索待執行的指令以及待處理的資料以執行一些實施例的進程。
匯流排3295也連接輸入以及輸出裝置3240以及3245。輸入裝置3240使使用者能夠通信資訊以及選擇到電子系統的命令。輸入裝置3240包括字母鍵盤以及定位裝置(也稱為“游標控制裝置”)、攝像機(如,網路攝像機)、麥克風或者類似的裝置用於接收聲音命令等。輸入裝置3245顯示由電子系統或其他輸入資料生成的顯示圖像。輸入裝置3245包括印表機以及顯示裝置,如陰極射線管(CRT)或者液晶顯示器(LCD)以及揚聲器或者類似的聲音輸出裝置。一些實施例包括同時作為輸出以及輸出裝置的觸控式螢幕。
最終,如第32圖所示,匯流排3205也通過網路介面卡(未示出)將電子系統3200耦合到網路3225。這樣,電腦可以是電腦網路的一部分,如局域網(LAN)、廣域網路(WAN)或者內聯網或者網路的網路(如互聯網)。電子系統3200的任何或者所有元件可以結合本發明使用。
一些實施例包括電子元件,如存儲機器可讀或電腦可讀媒介(或者稱為電腦可讀儲存媒體、及其可讀媒體或者機器機器可讀儲存媒體)的電腦程式指令的微處理器、儲存以及記憶體。這種電腦可讀媒體的一些示例包括RAM、ROM、唯讀光碟(CD-ROM)、可錄式光碟(CD-R)、可寫光碟(CD-RW)、唯讀數位通用光碟(如,DVD-ROM、雙層DVD-ROM)、各種可錄式/可寫DVD(如,DVD-RAM、DVD-RW、DVD+RW等)、快速記憶體(如,SD卡、miniSD卡、microSD卡等)、磁與/或固態硬碟驅動器、唯讀以及可錄式藍光光碟、超密度光碟、任何其他光或者磁媒體以及軟碟。電腦可讀媒體可以存儲由至少一個處理單元執行的電腦程式以及包括用於執行各種操作的指令的集合。電腦程式或者 電腦代碼的示例包括機器代碼(如由編譯器生成)以及包括較高層級代碼的檔,由使用注釋器的電腦、電子設備或者微處理器來執行。
雖然上述討論主要指執行軟體的微處理器或者多核處理器,許多以上描述的特徵以及應用由一個或多個積體電路執行,如專用積體電路(ASIC)或者現場可程式設計閘陣列(FPGA)。在一些實施例中,這種積體電路執行存儲於電路本身上的指令。此外,一些實施例執行存儲於可程式設計邏輯裝置(PLD)、ROM或者RAM中的軟體。
在本說明書和本申請的任何申請專利範圍中,術語“電腦”、“伺服器”、“處理器”和“記憶體”均指電子或其他技術設備。這些術語不包括人或人群。出於說明書的目的,術語“顯示器”或“顯示裝置”顯示在電子設備上。如在本說明書和本申請的任何申請專利範圍中所使用的,術語“電腦可讀介質”、“電腦可讀介質”和“機器可讀介質”完全限於以電腦可讀的形式存儲資訊的有形物理物件。這些術語排除任何無線訊號、有線下載訊號和任何其它短暫訊號。
雖然本發明已經參考許多具體細節進行了描述,但是本領域具有通常知識者將認識到,在不背離本發明的精神的情況下,本發明可以以其他具體形式來實現。此外,多個附圖(包括第28圖以及第31圖)從概念上說明過程。這些過程的具體操作可能不按所示和所述的具體順序來執行。特定操作可以不在一個連續系列的操作中執行,並且不同的特定操作可以在不同的實施例中執行。此外,該過程可以使用幾個子過程來實現,或者作為更大的宏過程的一部分來實現。因此,所屬領域的技術人員將理解,本發明不受前述說明性細節限制,而是由所附申請專利範圍界定。
附注
本文所描述的主題有時示出了包括於不同其他元件或與其連接 的不同元件。能夠理解,這種描繪的架構僅是示例,以及事實上可以實施實現相同功能的許多其他的架構。概念上來說,實現相同功能的元件的任何安排是有效“關聯的”以致實現所期望的功能。因此,本文組合來實現特定功能的任何兩個元件可以被視為彼此“關聯”以致實現所期望的功能,而不管架構或中間元件。同樣地,如此關聯的任何兩個元件也可以被視為彼此“可操作地連接”或“可操作地耦合”來實現所期望的功能,以及能夠如此關聯的任何兩個元件也可以被視為彼此“可操作地耦合”來實現所期望的功能。可操作地耦合的具體示例包括但不限於物理上可匹配與/或物理上交互的元件與/或無線地可瞭解與/或無線地交互的元件與/或邏輯地交互與/或邏輯可交互的元件。
此外,關於本文中實質上任何複數與/或單數術語的使用,本領域技術人員的這些人可以根據上下文以及應用適當地將其從複數轉換成單數與/或從單數轉換成複數。為了清楚起見,這裡可以明確闡述各種單數/複數置換。
此外,本領域技術人員表將能理解,通常,本文所使用的術語,尤其是所附權利要求中使用的術語(如所附權利要求的主體)通常意為“開放式”的術語,如,術語“包括(including)”應當被解釋為“包括但不限於”,術語“具有”應當被解釋為“至少具有”,術語“包括(includes)”應當被解釋為“包括但不限於”等。本領域這些技術人員將能進一步理解,如果特定數目的所引權利要求的表述是有意的,這種意圖將明確列舉在權利要求中,以及沒有這種表述的情況下這種意圖不存在。例如,為了幫助理解,後續所附權利要求可以包含介紹性短語“至少一個”以及“一個或多個”的使用來介紹權利要求表述。然而,這種短語的使用不應所述被解釋為暗示由不定冠詞“a”或“an”介紹的權利要求表述限制包含這種引入的權利要求表述的任何特定權利要求到僅包含一個這種表示的實施方式,即使當相同的權利要求包括介紹性短語“一個或多個”或“至少一個”以及如“a”或“an”的不定冠詞,“a”與/或“an”應當被解 釋為意味著“至少一個”或“一個或多個”,相同的情況也適用於介紹權利要求表述的定冠詞。此外,即使特定數目的所介紹權利要求表述被明確列舉,本領域技術人員將意識到,這種表述應當被解釋為意味著至少一個所列舉的數目,如沒有其他修改的“兩個表述”的純表述意味著至少兩個表述,或者兩個或多個表述。此外,在使用類似於“至少一個A、B以及C等”的慣例的情況下,通常這種構造旨在本領域技術人員將能理解所述慣例,如“系統具有至少一個A、B以及C”將包括但不限於系統單獨具有A、單獨具有B、單獨具有C、一起具有A與B、一起具有A與C、一起具有B與C,與/或一起具有A、B以及C等。在使用類似於“至少一個A、B或C”慣例的這些情況下,通常這種構造旨在本領域技術人員將能夠理解所述慣例,如“系統具有至少一個A、B或C”將包括但不限於系統單獨具有A、單獨具有B、單獨具有C、一起具有A與B、一起具有A與C、一起具有B與C,與/或一起具有A、B以及C等。本領域技術人員將能進一步理解,事實上在描述、權利要求或圖示中,表示兩個或多個可替換術語的任何分隔詞與/或短語將被理解成考慮包括術語之一、術語任一個或者術語兩者的可能性。例如,短語“A或B”將被理解成包括“A或B”或者“A與B”的可能性。
從上文可以理解,出於說明的目的,本發明的各種實施方式已經在此進行描述,以及在不背離本發明範圍以及精神的情況下,可以進行各種修正。因此,本文所描述的各種實施方式不旨在被限制,真正的範圍以及精神由後續權利要求來指示。
2810~2860:步驟

Claims (16)

  1. 一種視訊解碼方法,該方法包括:從待解碼為一視訊的一當前圖像的一當前塊的一位元流中接收資料;決定是否藉由使用幀內塊複製模式來編解碼該當前塊;識別一個或多個預測候選的一列表用於該當前塊,其中當該當前塊不藉由使用幀內塊複製模式來編解碼以及預測候選的該列表屬於多個不同候選列表的一預定子集時,位於與該當前塊相同的一合併估計區域中的該當前塊的一個或多個空間相鄰塊從預測候選的該列表被排除,其中該合併估計區域包含多個編碼塊;其中當該當前塊藉由使用幀內塊複製模式來編解碼時,至少一個所識別的合併模式候選是位於該合併估計區域中的該當前塊的一空間相鄰塊;以及藉由使用從一個或多個預測候選的該列表選擇的一合併模式候選重構該當前塊來生成該當前塊的一預測。
  2. 如請求項1所述之視訊解碼方法,其中當不藉由使用幀內塊複製模式來編解碼該當前塊時,該當前塊以及該合併估計區域中至少一個其他塊被並行重構。
  3. 如請求項1所述之視訊解碼方法,其中當藉由使用幀內塊複製模式來編解碼該當前塊時,參考該當前圖像中先前重構參考樣本的一運動向量用於生成該當前塊的一預測。
  4. 如請求項1所述之視訊解碼方法,其中該位元流中的一個或多個語法元素指示幀內塊複製模式是否用於編解碼該當前塊。
  5. 如請求項1所述之視訊解碼方法,進一步包括解析該位元流中的一個或多個語法元素以及基於所解析的語法元素決定幀內塊複製模式是否 用於該當前塊。
  6. 如請求項1所述之視訊解碼方法,其中當不藉由使用幀內塊複製模式來編解碼該當前塊時,位於該合併估計區域中的該當前塊的所有空間相鄰塊從預測候選的該列表被排除。
  7. 如請求項1所述之視訊解碼方法,其中該當前塊的該預測是基於所選的預測候選生成的一仿射預測。
  8. 如請求項1所述之視訊解碼方法,其中該當前塊的預測是基於所選的預測候選生成的一幾何分割模式預測。
  9. 如請求項1所述之視訊解碼方法,其中該當前塊的預測是基於所選的預測候選生成的一組合的幀間與幀內預測。
  10. 如請求項1所述之視訊解碼方法,其中藉由用一運動向量差異資訊細化所選的預測候選生成該當前塊的預測。
  11. 如請求項1所述之視訊解碼方法,其中藉由在一子塊層級適應一並位圖像中的運動場來改善該當前塊的預測。
  12. 如請求項1所述之視訊解碼方法,其中該多個不同候選列表的該預定子集包括類合併預測模式的候選。
  13. 如請求項1所述之視訊解碼方法,其中該多個不同候選列表的該預定子集排除高級運動向量預測的候選。
  14. 一種視訊編碼方法,該方法包括:接收待編碼為一視訊的一當前圖像的一當前塊的原始像素資料到一位元流;決定該當前塊是否藉由使用幀內塊複製模式來編解碼;識別用於該當前塊的一個或多個預測候選的一列表;其中當不藉由使用幀內塊複製模式來編解碼該當前塊以及預測候選的該列 表屬於多個不同候選列表的一預定子集時,位於與該當前塊相同的一合併估計區域區域中的該當前塊的一個或多個相鄰塊從該預測候選列表被排除,其中該合併估計區域包含多個編碼塊,其中當不藉由使用幀內塊複製模式來編解碼該當前塊時,至少一個所識別預測候選是位於該合併估計區域中該當前塊的一空間相鄰塊;以及藉由使用從一個或多個預測候選的該列表選擇的一預測候選編碼該當前塊來生成該當前塊的一預測。
  15. 如請求項14所述之視訊編碼方法,進一步包括在該位元流中發信一個或多個語法元素來指示幀內塊複製模式是否用於該當前塊。
  16. 一種電子裝置,該裝置包括:一視訊解碼器電路,被配置為執行操作,包括:從待解碼為一視訊的一當前圖像的一當前塊的一位元流中接收資料;決定是否藉由使用幀內塊複製模式來編解碼該當前塊;識別一個或多個預測候選的一列表用於該當前塊,其中當不藉由使用幀內塊複製模式來編解碼該當前塊以及預測候選的該列表屬於多個不同候選列表的一預定子集時,位於與該當前塊相同的一合併估計區域中的該當前塊的一個或多個空間相鄰塊從預測候選的該列表被排除,其中該合併估計區域包含多個編碼塊;其中當藉由使用幀內塊複製模式來編解碼該當前塊時,至少一個所識別的合併模式候選是位於該合併估計區域中的該當前塊的一空間相鄰塊;以及藉由使用從一個或多個預測候選的該列表選擇的一合併模式候選重構該當前塊來生成該當前塊的一預測。
TW109141751A 2019-11-27 2020-11-27 視訊編解碼方法及裝置 TWI774141B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201962940961P 2019-11-27 2019-11-27
US62/940,961 2019-11-27
US17/105,569 US11240524B2 (en) 2019-11-27 2020-11-26 Selective switch for parallel processing
US17/105,569 2020-11-26

Publications (2)

Publication Number Publication Date
TW202127890A TW202127890A (zh) 2021-07-16
TWI774141B true TWI774141B (zh) 2022-08-11

Family

ID=75974481

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109141751A TWI774141B (zh) 2019-11-27 2020-11-27 視訊編解碼方法及裝置

Country Status (7)

Country Link
US (1) US11240524B2 (zh)
EP (1) EP4066501A4 (zh)
KR (1) KR20220103180A (zh)
CN (1) CN115152227A (zh)
MX (1) MX2022006351A (zh)
TW (1) TWI774141B (zh)
WO (1) WO2021104474A1 (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11356657B2 (en) * 2018-01-26 2022-06-07 Hfi Innovation Inc. Method and apparatus of affine inter prediction for video coding system
EP4082202A4 (en) * 2019-12-24 2023-05-10 Beijing Dajia Internet Information Technology Co., Ltd. MOTION ESTIMATION AREA FOR MERGER CANDIDATES
US11206416B2 (en) * 2020-02-21 2021-12-21 Tencent America LLC Method and apparatus for video coding
US11477437B2 (en) * 2021-01-28 2022-10-18 Lemon Inc. Coding of motion information
US20230078392A1 (en) * 2021-09-15 2023-03-16 Tencent America LLC Geometric partition based intra prediction
US20230094825A1 (en) * 2021-09-28 2023-03-30 Qualcomm Incorporated Motion vector difference sign prediction for video coding
US20230108504A1 (en) * 2021-10-04 2023-04-06 Tencent America LLC On geometric partition mode with intra and inter prediction
WO2023134564A1 (en) * 2022-01-14 2023-07-20 Mediatek Inc. Method and apparatus deriving merge candidate from affine coded blocks for video coding
WO2023246408A1 (en) * 2022-06-23 2023-12-28 Mediatek Inc. Methods and apparatus for video coding using non-adjacent motion vector prediction
WO2024151798A1 (en) * 2023-01-12 2024-07-18 Google Llc Merge mode with motion vector difference based subblock-based temporal motion vector prediction
WO2024191196A1 (ko) * 2023-03-13 2024-09-19 현대자동차주식회사 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108141605A (zh) * 2015-10-02 2018-06-08 高通股份有限公司 帧内块复制合并模式及不可用帧内块复制参考区域的填充
CN109889850A (zh) * 2014-02-21 2019-06-14 联发科技(新加坡)私人有限公司 视频编解码方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150271515A1 (en) * 2014-01-10 2015-09-24 Qualcomm Incorporated Block vector coding for intra block copy in video coding
KR20170066457A (ko) 2014-09-26 2017-06-14 브이아이디 스케일, 인크. 시간적 블록 벡터 예측을 갖는 인트라 블록 카피 코딩
US10523948B2 (en) 2018-02-05 2019-12-31 Tencent America LLC Method and apparatus for video coding
TWI723444B (zh) * 2018-06-29 2021-04-01 大陸商北京字節跳動網絡技術有限公司 使用一個或多個查找表來按順序存儲先前編碼的運動信息並使用它們來編碼後面的塊的概念
US11284066B2 (en) * 2018-10-10 2022-03-22 Tencent America LLC Method and apparatus for intra block copy in intra-inter blending mode and triangle prediction unit mode
US11140406B2 (en) * 2019-02-20 2021-10-05 Qualcomm Incorporated Signalling for merge mode with motion vector differences in video coding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109889850A (zh) * 2014-02-21 2019-06-14 联发科技(新加坡)私人有限公司 视频编解码方法
CN108141605A (zh) * 2015-10-02 2018-06-08 高通股份有限公司 帧内块复制合并模式及不可用帧内块复制参考区域的填充

Also Published As

Publication number Publication date
US20210160528A1 (en) 2021-05-27
EP4066501A4 (en) 2024-01-03
WO2021104474A1 (en) 2021-06-03
US11240524B2 (en) 2022-02-01
KR20220103180A (ko) 2022-07-21
CN115152227A (zh) 2022-10-04
TW202127890A (zh) 2021-07-16
MX2022006351A (es) 2022-11-28
EP4066501A1 (en) 2022-10-05

Similar Documents

Publication Publication Date Title
TWI774141B (zh) 視訊編解碼方法及裝置
KR102669354B1 (ko) 모션 벡터 예측
TWI749358B (zh) 共享候選列表
CN113661710B (zh) 核心转换和次级转换间的交互作用
CN111064959B (zh) 要检查多少个hmvp候选
JP2023053028A (ja) インター予測に基づいて、ビデオ信号を処理するための方法及び装置
CN113383554A (zh) LUT和共享Merge列表之间的交互
CN113906738B (zh) 仿射模式的自适应运动矢量差分辨率
CN113273186A (zh) Lut更新的调用
CN110662063A (zh) 每条带/片/lcu行的查找表的重置
CN113507603B (zh) 图像信号编码/解码方法及其设备
TW201813403A (zh) 用於二叉樹分割塊的確定候選集的方法及裝置
JP2022509743A (ja) ビデオエンコーディング/デコーディング方法、ビデオエンコーダ、ビデオデコーダ、ビデオエンコーディング装置、ビデオデコーディング装置及びコンピュータ可読記憶媒体
CN112567750A (zh) 用于视频编解码的简化合并候选列表的方法和装置
CN112585972B (zh) 视频编解码的帧间预测方法及装置
CN113906743A (zh) 量化矩阵编码/解码方法和装置、以及存储比特流的记录介质
KR20230003061A (ko) 모션 정밀 신택스을 위한 엔트로피 코딩
RU2819080C2 (ru) Способ и устройство кодирования/декодирования сигналов изображений
RU2819393C2 (ru) Способ и устройство кодирования/декодирования сигналов изображений
RU2819286C2 (ru) Способ и устройство кодирования/декодирования сигналов изображений
TW202416713A (zh) 仿射候選細化
TW202402054A (zh) 用於候選清單的相似性閾值
CN116684578A (zh) 基于控制点运动矢量的仿射模型优化
CN116684577A (zh) 基于运动矢量差的快速仿射模式决策