TWI722486B - 取決於形狀的插值順序 - Google Patents

取決於形狀的插值順序 Download PDF

Info

Publication number
TWI722486B
TWI722486B TW108124953A TW108124953A TWI722486B TW I722486 B TWI722486 B TW I722486B TW 108124953 A TW108124953 A TW 108124953A TW 108124953 A TW108124953 A TW 108124953A TW I722486 B TWI722486 B TW I722486B
Authority
TW
Taiwan
Prior art keywords
interpolation
video block
vertical
video
horizontal
Prior art date
Application number
TW108124953A
Other languages
English (en)
Other versions
TW202023276A (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 TW202023276A publication Critical patent/TW202023276A/zh
Application granted granted Critical
Publication of TWI722486B publication Critical patent/TWI722486B/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/117Filters, e.g. for pre-processing or post-processing
    • 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/186Methods 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 a colour or a chrominance component
    • 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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

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

Abstract

本發明提供了一種視頻位元流處理方法、視頻解碼裝置和視頻編碼裝置,該方法包括:確定視頻塊的形狀;基於視頻塊的形狀確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以重建視頻塊的解碼表示。

Description

取決於形狀的插值順序
本發明文件涉及視頻編碼技術、設備和系統。 [相關申請的交叉引用] 根據適用的《專利法》和/或《巴黎公約》的規定,本發明及時要求於2018年7月13日提交的國際專利申請號PCT/CN2018/095576的優先權和利益。將國際專利申請號PCT/CN2018/095576的全部公開以引用方式併入本文,作為本發明公開的一部分。
儘管視頻壓縮有所進步,數位視頻在互聯網和其它數位通信網路上使用的頻寬仍然最大。隨著能夠接收和顯示視頻的連接使用者設備數量的增加,預計數位視頻使用的頻寬需求將繼續增長。
所公開的技術可以由視頻解碼器或編碼器實施例使用,其中使用塊形插值順序技術來改進插值。
在一個示例方面,公開了一種視頻位元流處理方法。該方法包括:確定視頻塊的形狀;基於視頻塊的形狀確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以重建視頻塊的解碼表示。
在另一個示例方面,視頻位元流處理方法包括:確定與視頻塊相關的運動向量的特徵;基於運動向量的特徵確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以重建視頻塊的解碼表示。
在另一示例方面,公開了一種視頻位元流處理方法。該方法包括:確定視頻塊的形狀;基於視頻塊的形狀確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以構造視頻塊的編碼表示。
在另一示例方面,公開了一種視頻位元流處理方法。該方法包括:確定與視頻塊相關的運動向量的特徵;基於運動向量的特徵確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以構造視頻塊的編碼表示。
在一個示例方面,公開了一種視頻處理方法。該方法包括:確定應用於第一視頻塊的第一預測模式;通過對第一視頻塊應用水平插值和/或垂直插值,在第一視頻塊和第一視頻塊的編碼表示之間執行第一轉換,確定應用於第二視頻塊的第二預測模式;通過對第二視頻塊應用水平插值和/或垂直插值,在第二視頻塊和第二視頻塊的編碼表示之間執行第二轉換,其中,基於第一預測模式是多假設預測模式而第二預測模式不是多假設預測模式的確定,第一視頻塊的水平插值和垂直插值中的一個或兩個使用與用於第二視頻塊的濾波器相比的較短抽頭濾波器。
在另一示例方面,公開了一種實現本文所述的視頻處理方法的視頻解碼裝置。
在又一示例方面,公開了一種實現本文所述的視頻處理方法的視頻編碼裝置。
在又一典型的方面,本文所述的各種技術可以實施為儲存在非暫時性電腦可讀介質上的電腦程式產品。電腦程式產品包括用於執行本文所述方法的程式碼。
在又一示例方面,公開了一種視頻系統中的裝置。該裝置包括處理器和其上具有指令的非暫時性儲存器,其中由處理器執行的指令使處理器實現上述方法。
在附件、附圖和下面的描述中闡述了一個或多個實現的細節。其它特徵將從說明書和附圖以及申請專利範圍書中顯而易見。
本文件提供了可由視頻位元流的解碼器使用以改進解壓縮或解碼的數位視頻的品質的各種技術。此外,視頻編碼器還可在編碼過程期間實現這些技術,以便重建用於進一步編碼的所解碼幀。
為了便於理解,在本文件中使用章節標題,並且不將實施例和技術限制於相應的部分。這樣,來自一個章節的實施例可以與來自其他章節的實施例組合。
1. 總結
本發明涉及視頻編碼技術。具體地,涉及視頻編碼中的插值。可應用於現有的視頻編碼標準,比如HEVC,或待最終確定的標準(多功能視頻編碼)。也可能適用於未來的視頻編碼標準或視頻編碼器。
2. 背景 視頻編碼標準主要是通過開發公知的ITU-T和ISO/IEC標準而發展起來的。ITU-T開發了H.261和H.263,ISO/IEC開發了MPEG-1和MPEG-4視覺,並且兩個組織聯合開發了H.262/MPEG-2視頻、H.264/MPEG-4高級視頻編碼(AVC)和H.265/HEVC標準。自H.262以來,視頻編碼標準基於混合視頻編碼結構,其中採用了時域預測加變換編碼。為了探索HEVC之外的未來視頻編碼技術,聯合視頻探索團隊(JVET)由VCEG和MPEG於2015年聯合成立。從那時起,JVET採用了許多新方法並將其引入名為聯合探索模型(JEM)的參考軟體中。在2018年4月,VCEG(Q6 / 16)和ISO / IEC JTC1 SC29 / WG11(MPEG)之間的聯合視頻專家組(JVET)被創建用於研究VVC標準,目標是與HEVC相比降低50%的位元速率。
圖18是視頻編碼器的示例實現的方塊圖。
2.1具有較大CTU的四叉樹加二叉樹(QTBT)塊結構 在HEVC中,通過使用四叉樹結構(表示為編碼樹)將CTU劃分成CU來適應各種局部特性。在CU級別決定是使用幀間(時域)預測還是幀內(空間)預測對圖片區域進行編碼。根據PU的分割類型,每個CU可以進一步劃分成一個、兩個或四個PU。在一個PU中,應用相同的預測處理,並且相關資訊以PU為基礎傳輸到解碼器。在基於PU分割類型通過應用預測處理獲得殘差塊後,可以根據與CU的編碼樹相似的另一個四叉樹結構將CU分割成變換單元(TU)。HEVC結構的一個重要特徵是它具有多個分割概念,包括CU、PU以及TU。
QTBT結構消除了多個分割類型的概念,即QTBT結構消除了CU、PU和TU概念的分離,並支持CU分割形狀的更多靈活性。在QTBT塊結構中,CU可以是方形或矩形。如圖1所示,首先用四叉樹結構對編碼樹單元(CTU)進行分割。四叉樹葉節點進一步被二叉樹結構分割。在二叉樹劃分中有兩種分割類型:對稱的水平劃分和對稱的垂直劃分。二叉樹葉節點被稱為編碼單元(CU),該劃分用於預測和轉換處理,而無需進一步分割。這意味著在QTBT編碼塊結構中CU、PU和TU具有相同的塊尺寸。在JEM中,CU有時由不同顏色分量的編碼塊(CB)組成,例如,在4:2:0彩度格式的P條帶和B條帶中,一個CU包含一個亮度 CB和兩個彩度 CB,並且CU有時由單個分量的CB組成,例如,在I條帶的情況下,一個CU僅包含一個亮度 CB或僅包含兩個彩度 CB。
為QTBT分割方案定義了以下參數。
–CTU尺寸:四叉樹的根節點尺寸,與HEVC中的概念相同。
MiNQTSize :最小允許的四叉樹葉節點尺寸
MaxBTSize :最大允許的二叉樹根節點尺寸
MaxBTDePTh :最大允許的二叉樹深度
MiNBTSize :最小允許的二叉樹葉節點尺寸
在QTBT分割結構的一個示例中,CTU尺寸被設置為具有兩個對應的64×64彩度樣點塊的128×128 個亮度樣點,MiNQTSize 被設置為16×16,MaxBTSize 被設置為64×64,MiNBTSize (寬度和高度)被設置為4×4,MaxBTSize 被設置為4。四叉樹分割首先應用於CTU,以生成四叉樹葉節點。四叉樹葉節點的尺寸可以具有從16×16(即,MiNQTSize )到128×128(即,CTU尺寸)的尺寸。如果葉四叉樹節點是128×128,則其不會被二叉樹進一步劃分,因為其尺寸超過了MaxBTSize (例如,64×64)。否則,葉四叉樹節點可以被二叉樹進一步分割。因此,四叉樹葉節點也是二叉樹的根節點,並且其二叉樹深度為0。當二叉樹深度達到MaxBTDePTh (即,4)時,不考慮進一步劃分。當二叉樹節點的寬度等於MiNBTSize (即,4)時,不考慮進一步的水平劃分。同樣,當二叉樹節點的高度等於MiNBTSize 時,不考慮進一步的垂直劃分。通過預測和變換處理進一步處理二叉樹的葉節點,而不需要進一步的分割。在JEM中,最大CTU尺寸為256×256 個亮度樣點。
圖1(左側)圖示了通過使用QTBT進行塊分割的示例,圖1(右側)圖示了相應的樹表示。實線表示四叉樹分割,並且虛線表示二叉樹分割。在二叉樹的每個劃分(即,非葉)節點中,會對一個標誌發信號來指示使用哪種分割類型(即,水平或垂直),其中0表示水平劃分,1表示垂直劃分。對於四叉樹分割,不需要指明分割類型,因為四叉樹分割總是水平和垂直劃分一個塊,以生成尺寸相同的4個子塊。 此外,QTBT方案支援亮度和彩度具有單獨的QTBT結構的能力。目前,對於P條帶和B條帶,一個CTU中的亮度和彩度 CTB共用相同的QTBT結構。然而,對於I條帶,用QTBT結構將亮度CTB分割為CU,用另一個QTBT結構將彩度CTB分割為彩度CU。這意味著I條帶中的CU由亮度分量的編碼塊或兩個彩度分量的編碼塊組成,P條帶或B條帶中的CU由所有三種顏色分量的編碼塊組成。
在HEVC中,為了減少運動補償的儲存器訪問,限制小塊的幀間預測,使得4×8和8×4塊不支持雙向預測,並且4×4塊不支援幀間預測。在JEM的QTBT中,這些限制被移除。
2.2 HEVC/H.265中的幀間預測
每個幀間預測的PU具有一個或兩個參考圖片列表的運動參數。運動參數包括運動向量和參考圖片索引。對兩個參考圖片列表中的一個的使用也可以使用inter_pred_idc 發信號。運動向量可以相對於預測值顯式地編碼為增量。
當CU採用跳躍模式編碼時,一個PU與CU相關聯,並且沒有顯著的殘差係數、沒有編碼的運動向量增量或參考圖片索引。指定了一種Merge模式,通過該模式,可以從相鄰的PU(包括空間和時域候選)中獲取當前PU的運動參數。Merge模式可以應用於任何幀間預測的PU,而不僅僅是跳躍模式。Merge模式的另一種選擇是運動參數的顯式傳輸,其中運動向量(更準確地說,與運動向量預測值相比的運動向量差)、每個參考圖片列表對應的參考圖片索引和參考圖片列表的使用都會在每個PU中顯式地發信號。在本文件中,這種模式被稱為高級運動向量預測(AMVP)。 當信號指示要使用兩個參考圖片列表中的一個時,從一個樣點塊中生成PU。這被稱為“單向預測”。單向預測對P條帶和B條帶都可用。
當信號指示要使用兩個參考圖片列表時,從兩個樣點塊中生成PU。這被稱為“雙向預測”。雙向預測僅對B條帶可用。
下面文本提供了HEVC中規定的幀間預測模式的細節。描述將從Merge模式開始。
2.2.1 Merge模式
2.2.1.1Merge模式的候選的推導
當使用Merge模式預測PU時,從位元流分析指向Merge候選列表中條目的索引,並用於檢索運動資訊。該列表的結構在HEVC標準中有規定,並且可以按照以下步驟順序進行概括:
步驟1:初始候選推導
步驟1.1:空域候選推導
步驟1.2:空域候選的冗餘檢查
步驟1.3:時域候選推導
步驟2:附加候選插入
步驟2.1:雙向預測候選的創建
步驟2.2:零運動候選的插入
在圖2中也示意性描述了這些步驟。對於空間Merge候選推導,在位於五個不同位置的候選中最多選擇四個Merge候選。對於時域Merge候選推導,在兩個候選中最多選擇一個Merge候選。由於在解碼器處假定每個PU的候選數為常量,因此當從步驟1獲得的候選數未達到條帶標頭中發信號的最大Merge候選數(MaxNumMergeCand )時,生成附加的候選。由於候選數是恆定的,所以最佳Merge候選的索引使用截斷的一元二值化(TU)進行編碼。如果CU的大小等於8,則當前CU的所有PU都共用一個Merge候選列表,這與2N×2N預測單元的Merge候選列表相同。
下面詳細介紹與上述步驟相關的操作。
2.2.1.2空域候選推導
在空間Merge候選的推導中,在位於圖3所示位置的候選中最多選擇四個Merge候選。推導順序為A1、 B1、 B0、 A0 和 B2。只有當位置A1、 B1、 B0、 A0的任何PU不可用(例如,因為它屬於另一個條帶或片)或是內部編碼時,才考慮位置B2。在增加A1位置的候選後,對其餘候選的增加進行冗餘檢查,其確保具有相同運動資訊的候選被排除在列表之外,從而提高編碼效率。為了降低計算的複雜度,在所提到的冗餘檢查中並不考慮所有可能的候選對。相反,只有與圖4中的箭頭連結的對才會被考慮,並且只有當用於冗餘檢查的對應候選沒有相同的運動資訊時,才將候選添加到列表中。複製運動資訊的另一個來源是與2N×2N不同的分區相關的“第二PU”。例如,圖5分別描述了N×2N和2N×N情況下的第二PU。當當前的PU被劃分為N×2N時,對於列表構建不考慮A1位置的候選。在一些實施例中,添加此候選可能導致兩個具有相同運動資訊的預測單元,這對於在編碼單元中僅具有一個PU是冗餘的。同樣地,當當前PU被劃分為2N×N時,不考慮位置B1。
2.2.1.3時域候選推導
在此步驟中,只有一個候選添加到列表中。特別地,在這個時域Merge候選的推導中,基於與給定參考圖片列表中當前圖片具有最小圖片順序計數POC差異的並置PU推導了縮放運動向量。用於推導並置PU的參考圖片列表在條帶標頭中顯式地發信號。圖6中的虛線示出了時域Merge候選的縮放運動向量的獲得,其使用POC距離tb和td從並置PU的運動向量進行縮放,其中tb定義為當前圖片的參考圖片和當前圖片之間的POC差異,並且td定義為並置圖片的參考圖片與並置圖片之間的POC差異。時域Merge候選的參考圖片索引設置為零。HEVC規範中描述了縮放處理的實際實現。對於B條帶,得到兩個運動向量(一個是對於參考圖片列表0,另一個是對於參考圖片列表1)並將其組合使其成為雙向預測Merge候選。
圖6是用於時域Merge候選的運動向量縮放的說明。
在屬於參考幀的並置PU(Y)中,在候選C0 和C1 之間選擇時域候選的位置,如圖7所示。如果位置C0 處的PU不可用、內部編碼或在當前CTU行之外,則使用位置C1 。否則,位置C0 被用於時域Merge候選的推導。
2.2.1.4附加候選插入
除了空間和時域Merge候選,還有兩種附加類型的Merge候選:組合雙向預測Merge候選和零Merge候選。組合雙向預測Merge候選是利用空間和時域Merge候選生成的。組合雙向預測Merge候選僅用於B條帶。通過將初始候選的第一參考圖片列表運動參數與另一候選的第二參考圖片列表運動參數相結合,生成組合雙向預測候選。如果這兩個元組提供不同的運動假設,則它們將形成新的雙向預測候選。作為示例,圖8示出了原始列表中(在左側)的兩個候選被用於創建添加到最終列表(在右側)中的組合雙向預測Merge候選的情況,其具有MvL0和refIdxL0或MvL1和refIdxL1的兩個候選。現有技術中定義了許多關於組合的規則需要考慮以生成這些附加Merge候選。
插入零運動候選以填充Merge候選列表中的其餘條目,從而達到MaxNumMergeCand的容量。這些候選具有零空間位移和從零開始並且每次將新的零運動候選添加到列表中時都會增加的參考圖片索引。這些候選使用的參考幀的數目對於單向預測和雙向預測分別是1幀和2幀。最後,對這些候選不執行冗餘檢查。
2.2.1.5並行處理的運動估計區域
為了加快編碼處理,可以並存執行運動估計,從而同時推導給定區域內所有預測單元的運動向量。從空間鄰域推導Merge候選可能會干擾並行處理,因為一個預測單元在完成相關運動估計之前無法從相鄰的PU推導運動參數。為了緩和編碼效率和處理延遲之間的平衡,HEVC定義了運動估計區域(MER),可使用語法元素“log2_parallel_merge_level_minus2”在圖片參數集中對MER的尺寸中發信號。當定義MER時,落入同一區域的Merge候選標記為不可用,並且因此在列表構建中不考慮。
2.2.2 AMVP AMVP利用運動向量與相鄰的PU的空時相關性,其用於運動參數的顯式傳輸。對於每個參考圖片列表,首先通過檢查左上方的時域相鄰的PU位置的可用性、去掉多餘的候選位置並且加上零向量以使候選列表長度恆定來構建運動向量候選列表。然後,編碼器可以從候選列表中選擇最佳的預測值,並發送指示所選候選的對應索引。與Merge索引信號類似,最佳運動向量候選的索引使用截斷的一元進行編碼。在這種情況下要編碼的最大值是2(參照圖9)。在下面的章節中,將詳細介紹運動向量預測候選的推導過程。
2.2.2.1AMVP候選的推導
圖9概括了運動向量預測候選的推導過程。
在運動向量預測中,考慮了兩種類型的運動向量候選:空間運動向量候選和時域運動向量候選。對於空間運動向量候選的推導,基於位於圖3所示的五個不同位置的每個PU的運動向量最終推推導兩個運動向量候選。
對於時域運動向量候選的推導,從兩個候選中選擇一個運動向量候選,這兩個候選是基於兩個不同的並置位置推導的。在作出第一個空時候選列表後,移除列表中重複的運動向量候選。如果潛在候選的數量大於二,則從列表中移除相關聯的參考圖片列表中參考圖片索引大於1的運動向量候選。如果空時運動向量候選數小於二,則會在列表中添加附加的零運動向量候選。
2.2.2.2空間運動向量候選 在推導空間運動向量候選時,在五個潛在候選中最多考慮兩個候選,這五個候選來自圖3所描繪位置上的PU,這些位置與運動Merge的位置相同。當前PU左側的推導順序定義為A0 、A1 、以及縮放的 A0 、縮放的A1 。當前PU上面的推導順序定義為B0 、B1 , B2 、縮放的 B0 、縮放的 B1 、縮放的B2 。因此,每側有四種情況可以用作運動向量候選,其中兩種情況不需要使用空間縮放,並且兩種情況使用空間縮放。四種不同的情況概括如下:
--無空間縮放
(1)相同的參考圖片列表,並且相同的參考圖片索引(相同的POC)
(2)不同的參考圖片列表,但是相同的參考圖片索引(相同的POC)
--空間縮放
(3)相同的參考圖片列表,但是不同的參考圖片索引(不同的POC)
(4)不同的參考圖片列表,並且不同的參考圖片索引(不同的POC)
首先檢查無空間縮放的情況,然後檢查空間縮放。當POC在相鄰PU的參考圖片與當前PU的參考圖片之間不同時,都會考慮空間縮放,而不考慮參考圖片列表。如果左側候選的所有PU都不可用或是內部編碼,則允許對上述運動向量進行縮放,以幫助左側和上方MV候選的平行推導。否則,不允許對上述運動向量進行空間縮放。
圖10是空間運動向量候選的運動向量縮放的說明。
在空間縮放處理中,相鄰PU的運動向量以與時域縮放相似的方式縮放,如圖10所示。主要區別在於,給出了當前PU的參考圖片列表和索引作為輸入,實際縮放處理與時域縮放處理相同。
2.2.2.3時域運動向量候選
除了參考圖片索引的推導外,時域Merge候選的所有推導過程與空間運動向量候選的推導過程相同(參見圖7)。向解碼器發參考圖片索引的信號。
2.3 JEM中新的幀間Merge候選
2.3.1基於子CU的運動向量預測
在具有QTBT的JEM中,每個CU對於每個預測方向最多可以具有一組運動參數。通過將大的CU分割成子CU並推導該大CU的所有子CU的運動資訊,編碼器中考慮了兩種子CU級的運動向量預測方法。可選時域運動向量預測(ATMVP)方法允許每個CU從多個小於並置參考圖片中當前CU的塊中獲取多組運動資訊。在空時運動向量預測(STMVP)方法中,通過利用時域運動向量預測值和空間鄰接運動向量遞迴地推導子CU的運動向量。
為了為子CU運動預測的保持更精確的運動場,當前禁用參考幀的運動壓縮。
2.3.1.1可選時域運動向量預測
在可選時域運動向量預測(ATMVP)方法中,運動向量時域運動向量預測(TMVP)是通過從小於當前CU的塊中提取多組運動資訊(包括運動向量和參考索引)來修改的。如圖11所示,子CU為方形N×N塊(默認N設置為4)。
ATMVP分兩步預測CU內的子CU的運動向量。第一步是用所謂的時域向量識別參考圖片中的對應塊。參考圖片稱為運動源圖片。第二步是將當前CU劃分成子CU,並從每個子CU對應的塊中獲取運動向量以及每個子CU的參考索引,如圖11所示。
在第一步中,參考圖片和對應的塊由當前CU的空間相鄰塊的運動資訊確定。為了避免相鄰塊的重複掃描處理,使用當前CU的Merge候選列表中的第一個Merge候選。第一個可用的運動向量及其相關聯的參考索引被設置為時域向量和運動源圖片的索引。這樣,在ATMVP中,與TMVP相比,可以更準確地識別對應的塊,其中對應的塊(有時稱為並置塊)始終位於相對於當前CU的右下角或中心位置。 在第二步中,通過將時域向量添加到當前CU的座標中,通過運動源圖片中的時域向量識別子CU的對應塊。對於每個子CU,使用其對應塊的運動資訊(覆蓋中心樣點的最小運動網格)來推導子CU的運動資訊。在識別出對應N×N塊的運動資訊後,將其轉換為當前子CU的運動向量和參考索引,與HEVC的TMVP方法相同,其中應用運動縮放和其它處理。例如,解碼器檢查是否滿足低延遲條件(例如,當前圖片的所有參考圖片的POC都小於當前圖片的POC),並可能使用運動向量MVx(與參考圖片列表X對應的運動向量)來為每個子CU預測運動向量MVy(X等於0或1且Y等於1-X)。
2.3.1.2空時運動向量預測
在這種方法中,子CU的運動向量是按照光柵掃描順序遞迴推導的。圖12說明了該概念。我們來考慮一個8×8的 CU,它包含四個4×4的子CU A、B、C和D。當前幀中相鄰的4×4的塊標記為a、b、c和d。
子CU A的運動推導由識別其兩個空間鄰居開始。第一個鄰居是子CU A上方的N×N塊(塊c)。如果該塊c不可用或內部編碼,則檢查子CU A上方的其它N×N塊(從左到右,從塊c處開始)。第二個鄰居是子CU A左側的一個塊(塊b)。如果塊b不可用或是內部編碼,則檢查子CU A左側的其它塊(從上到下,從塊b處開始)。每個列表從相鄰塊獲得的運動資訊被縮放到給定列表的第一個參考幀。接下來,按照HEVC中規定的與TMVP相同的程式,推推導子塊A的時域運動向量預測(TMVP)。提取位置D處的並置塊的運動資訊並進行相應的縮放。最後,在檢索和縮放運動資訊後,對每個參考列表分別平均所有可用的運動向量(最多3個)。將平均運動向量指定為當前子CU的運動向量。
2.3.1.3 子CU運動預測模式信號
作為附加merge候選而啟用子CU模式,並且不需要附加的語法元素來發信號通知該模式。對每個CU的merge候選列表添加兩個附加的merge候選,以表示ATMVP模式和STMVP模式。如果序列參數集合指示啟用ATMVP和STMVP,則使用多達七個merge候選。額外merge候選的編碼邏輯與HM中的merge候選相同,這意味著,對於P或B條帶中的每個CU,對於兩個附加merge候選需要多兩個RD檢查。
在JEM中,CABAC對merge索引的所有二元位元進行上下文編碼。而在HEVC中,僅對第一個二元位元進行上下文編碼,而對剩餘二元位元上下文旁路編碼。
2.3.2非相鄰Merge候選
在J0021中,高通提出從如在圖13中標記為6到49的非相鄰的相鄰位置推導附加空間Merge候選。將所推導的候選添加在Merge候選列表中的TMVP候選之後。
在J0058中,騰訊提出從相對於當前塊具有偏移(-96, -96)的外部參考區域中的位置推導附加空間Merge候選。
如圖14所示,位置標記為A(i, j)、B(i, j)、C(i, j)、D(i, j)和E(i, j)。與其先前的B或C候選相比,每個候選B(i, j)或C(i, j)在垂直方向上具有16的偏移。與其先前的A或D候選相比,每個候選A(i, j)或D(i, j)在水平方向上具有16的偏移。與其先前的E候選相比,每個E(i, j)在水平方向和垂直方向上具有16的偏移。對候選從內到外進行檢查。並且候選的順序是A(i, j),B(i, j)、C(i, j)、D(i, j)和E(i, j)。進一步研究merge候選的數量是否可以進一步減少。將候選添加在merge候選列表中的TMVP候選之後。
在J0059中,根據它們在時域候選之後的數位順序,對圖15中從6到27的擴展空間位置進行檢查。為了節省MV行緩衝,所有空間候選都被限制在兩個CTU行內。
2.4 JEM中的幀內預測
2.4.1具有67個幀內預測模式的幀內模式編碼
對於亮度插值濾波,將8抽頭可分離的基於DCT的插值濾波器用於2/4精度樣本,並且將7抽頭可分離的基於DCT的插值濾波器用於1/4精度樣本,如表1所示。
1 :用於 1/4 亮度插值的 8 抽頭 DCT-IF 係數。
Figure 108124953-A0304-0001
類似地,將4抽頭可分離的基於DCT的插值濾波器用 於彩度插值濾波器,如表2所示。
2 :用於 1/8 彩度插值的 4 抽頭 DCT-IF 係數。
Figure 108124953-A0304-0002
對於4:2:2的垂直插值以及4:4:4彩度通道的水平和垂直插值,不使用表2中的奇數位置,導致1/4彩度插值。
對於雙向預測,在對兩個預測信號求平均之前,無論源位元深度如何,插值濾波器的輸出的位元深度都保持為14位元精度。實際平均過程是隱式地通過位元深度降低過程完成的:
predSamples[x, y] = predSamplesL0[x, y] + predSamplesL1[x, y] + offset)>>shift
其中shift = (15 – BitDepth)且offset = 1 >> (shift – 1)
如果運動向量的水平分量和垂直分量都指向子像素位置,則總是先執行水平插值,然後執行垂直插值。例如為了對圖16中所示的子像素j0,0進行插值,首先,根據等式2-1對b0,k(k = -3,-2,... 3)進行插值,然後根據等式2-2對j0,0進行插值。這裡,shift1 = Min(4,BitDepthY - 8),且shift2 = 6,其中BitDepthY是視頻塊的位元深度,更具體地說,是視頻塊的亮度分量的位元深度。
b0,k = ( -A-3,k + 4 * A-2,k - 11 * A – 1,k + 40 * A0,k + 40 * A1,k - 11 * A2,k + 4 * A3,k - A4,k) >> shift1      (2-1)
j0,0 = ( -b0,-3 + 4 * b0,-2 - 11 * b0,-1 + 40 * b0,0 + 40 * b0,1 - 11 * b0,2 + 4 * b0,3 - b0,4 ) >> shift2      (2-2)
可替代地,我們可以先執行垂直插值,然後執行水平插值。在這種情況下,為了對j0,0進行插值,首先,根據等式2-3對hk,0(k = -3,-2,... 3)進行插值,然後根據等式2-4對j0,0進行插值。當BitDepthY小於或等於8時,shift1為0,在第一個插值階段沒有任何損失,因此,最終插值結果不會被插值順序改變。然而,當BitDepthY大於8時,shift1大於0。在這種情況下,當應用不同的插值順序時,最終的插值結果可能不同。
hk,0 =(-Ak,-3 + 4 * Ak,-2-11 * Ak,-1 + 40 * Ak,0 + 40 * Ak,1 - 11 * Ak,2 + 4 * Ak,3 – Ak, 4)>> shift1      (2-3)
j0,0 =( - h-3,0 + 4 * h-2,0 - 11 * h-1,0 + 40 * h0,0 + 40 * h1,0 - 11 * h2,0 + 4 * h3,0 - h4,0 )>> shift2      (2-4)
3.實施例解決的問題的示例
對於亮度塊尺寸WxH,如果我們總是先執行水平插值,則所需的插值(每個像素)在表3中示出。
表3:HEVC/JEM對WxH亮度分量所需的插值
Figure 108124953-A0304-0003
另一方面,如果我們先執行垂直插值,則表4中示出了所需的插值。顯然,最佳插值順序是在表3和表4之間需要較小插值次數的插值順序。
表4:當插值順序顛倒時,WxH亮度分量所需的插值
Figure 108124953-A0304-0004
對於彩度分量,如果我們總是先執行水平插值,則所需插值為((H + 3) x W + W x H) / (W x H) = 2 + 3 / H。如果我們總是先執行垂直插值,所需插值為((W + 3) x H + W x H) / (W x H) = 2 + 3 / W.
如上所述,當輸入視頻的位元深度大於8時,不同的插值順序可導致不同的插值結果。因此,插值順序應在編碼器和解碼器中隱式地定義。
4. 實施例的示例
為了解決這些問題並提供其他益處,我們提出了形狀相關的插值順序。
以下詳細示例應被視為解釋一般概念的示例。不應以狹隘的方式解釋這些發明。此外,這些發明可以以任何方式組合。
1. 提出插值順序取決於當前編碼塊形狀(例如,編碼塊是CU)。
a. 在一個示例中,對於寬度>高度的塊(諸如在基於子塊的預測(如仿射、ATMVP或BIO)中使用的CU、PU或子塊),首先執行垂直插值,然後執行水平插值,例如,首先對像素dk,0 ,hk,0 和nk,0 進行插值,然後對e0,0 至r0,0 進行插值。等式2-3和2-4中示出了j0,0 的示例。
i. 可替代地,對於寬度> =高度的塊(諸如在基於子塊的預測(如仿射、ATMVP或BIO)中使用的CU、PU或子塊),先執行垂直插值,然後執行水平插值。
b. 在一個示例中,對於寬度>=高度的塊(諸如在基於子塊的預測(如仿射、ATMVP或BIO)中使用的CU、PU或子塊),先執行水平插值,然後執行垂直插值。
i. 可替代地,對於寬度>高度的塊(諸如在基於子塊的預測(如仿射、ATMVP或BIO)中使用的CU、PU或子塊),先執行水平插值,然後執行垂直插值。
c. 在一個示例中,亮度分量和彩度分量都遵循相同的插值順序。
d. 可替代地,當一個彩度編碼塊對應於多個亮度編碼塊時(例如,對於4:2:0的顏色格式,一個彩度4×4塊可對應於兩個8×4或4×8亮度塊),亮度和彩度可使用不同的插值順序。
e. 在一個示例中,當利用不同的插值順序時,可以相應地進一步改變多個階段中的縮放因數(即,shift1和shift2)。
2. 可替代地,另外,提出亮度分量的插值順序還可以取決於MV。
a. 在一個示例中,如果垂直MV分量指向四分之一像素位置並且水平MV分量指向半像素位置,則先執行水平插值,然後執行垂直插值。
b.在一個示例中,如果垂直MV分量指向半像素位置並且水平MV分量指向四分之一像素位置,則先執行垂直插值,然後執行水平插值。
c. 在一個示例中,所提出的方法僅應用於方形編碼塊。
3. 所提出的方法可以應用於某些模式、塊尺寸/形狀和/或某些子塊尺寸。
a. 所提出的方法可以應用於某些模式,諸如雙向預測模式。
b. 所提出的方法可以應用於某些塊尺寸。
i. 在一個示例中,它僅應用於w×h >= T1的塊,其中w和h是當前塊的寬度和高度,並且T1是第一閾值,其可以是取決於設計要求的預定義值,諸如16、32或64。
ii. 在一個示例中,它僅應用於h >= T2的塊,並且T2是第二閾值,其可以是取決於設計要求的預定義值,諸如4或8。
c. 所提出的方法可以應用於某些顏色分量(諸如僅亮度分量)。
4. 提出當對一個塊應用多假設預測時,與應用於普通預測模式的那些濾波器相比,可以應用短抽頭或不同的插值濾波器。
a. 在一個示例中,可以使用雙線性濾波器。
b. 短抽頭或第二插值濾波器可以應用於涉及多個參考塊的參考圖片列表,而對於僅具有一個參考塊的另一參考圖片,可以應用與用於普通預測模式的濾波器相同的濾波器。
c. 所提出的方法可以在某些條件下應用,諸如包含該塊的某些(一個或多個)時域層、塊/片/條帶/圖片的量化參數在範圍內(諸如大於閾值)。
圖17是視頻處理裝置1700的方塊圖。裝置1700可以用於實現本文描述的一個或多個方法。裝置1700可以嵌入在智慧型電話、平板電腦、電腦、物聯網(IoT)接收機等中。裝置1700可以包括一個或多個處理器1702、一個或多個儲存器1704和視頻處理硬體1706。(一個或多個)處理器1702可以被配置為實現本文件中描述的一個或多個方法。(一個或多個)儲存器1704可以用於儲存用於實現本文描述的方法和技術的資料和代碼。視頻處理硬體1706可用於在硬體電路中實現本文件中描述的一些技術。
圖19是視頻位元流處理的方法1900的流程圖。方法1900包括確定(1905)視頻塊的形狀,基於視頻塊確定(1910)插值順序,該插值順序指示執行水平插值和垂直插值的序列,並根據視頻塊的插值循序執行水平插值和垂直插值,以重建(1915)視頻塊的解碼表示。
圖20是視頻位元流處理的方法2000的流程圖。方法2000包括確定(2005)與視頻塊相關的運動向量的特性,基於運動向量的特性確定(2010)視頻塊的插值順序,該插值順序指示執行水平插值和垂直插值的序列,並根據視頻塊的插值循序執行水平插值和垂直插值,以重建(2015)視頻塊的解碼表示。
參考方法1900和2000,在本文件的第4章節中描述了一些執行水平插值和垂直插值的序列的示例及其使用。例如,如第4章節所述,在視頻塊的不同形狀下,可以優先首先執行水平插值或垂直插值中的一個。在一些實施例中,水平插值先於垂直插值執行,並且在一些實施例中,垂直插值先於水平插值執行。
參考方法1900和2000,可以在視頻位元流中對視頻塊進行編碼,其中可以通過使用與插值順序相關的位元流生成規則來實現位元效率,該插值順序也取決於視頻塊的形狀。
應當理解,所公開的技術可以嵌入在視頻編碼器或解碼器中,以在被壓縮的編碼單元具有與傳統方形塊或半方形矩形塊明顯不同的形狀時改進壓縮效率。例如,使用諸如4×32或32×4尺寸單元的長或高編碼單元的新編碼工具可受益於所公開的技術。
圖21是視頻處理方法2100的示例的流程圖。方法2100包括:確定(2102)應用於第一視頻塊的第一預測模式;通過對第一視頻塊應用水平插值和/或垂直插值,在第一視頻塊和第一視頻塊的編碼表示之間執行(2104)第一轉換;確定(2106)應用於第二視頻塊的第二預測模式;通過對第二視頻塊應用水平插值和/或垂直插值,在第二視頻塊和第二視頻塊的編碼表示之間執行(2108)第二轉換,其中,基於第一預測模式是多假設預測模式而第二預測模式不是多假設預測模式的確定,第一視頻塊的水平插值和垂直插值中的一個或兩個使用與用於第二視頻塊的濾波器相比的較短抽頭濾波器。
圖22是視頻位元流處理的方法2200的流程圖。方法包括:確定(2205)視頻塊的形狀;基於視頻塊的形狀確定(2210)插值順序,插值順序指示執行水平插值和垂直插值的序列,以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以構造(2215)視頻塊的編碼表示。
圖23是視頻位元流處理的方法2300的流程圖。該方法包括:確定(2305)與視頻塊相關的運動向量的特徵;基於運動向量的特徵確定(2310)插值順序,插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以構造(2315)視頻塊的編碼表示。
可以在以下實施例列表中描述本文件中公開的各種實施例和技術。
1. 一種視頻處理方法,包括:確定應用於第一視頻塊的第一預測模式;通過對第一視頻塊應用水平插值和/或垂直插值,在第一視頻塊和第一視頻塊的編碼表示之間執行第一轉換;確定應用於第二視頻塊的第二預測模式;通過對第二視頻塊應用水平插值和/或垂直插值,在第二視頻塊和第二視頻塊的編碼表示之間執行第二轉換,其中,基於第一預測模式是多假設預測模式而第二預測模式不是多假設預測模式的確定,第一視頻塊的水平插值和垂直插值中的一個或兩個使用與用於第二視頻塊的濾波器相比的較短抽頭濾波器。
2. 根據示例1的方法,其中,第一視頻塊利用多於兩個參考塊進行轉換以用於雙向預測,並至少對於一個參考圖片列表,其使用多於兩個參考塊。
3. 根據示例1的方法,其中利用多於一個參考塊對第一視頻塊進行轉換以用於單向預測。
4. 根據示例1-3中任一個的方法,其中較短抽頭濾波器是雙線性濾波器。
5. 根據示例1-3中任一個的方法,其中水平插值和垂直插值中的一個或兩個對與多個參考塊相關的參考圖片列表使用較短抽頭濾波器。
6. 根據示例1-5中任一個的方法,其中,當參考圖片列表與單個參考塊相關時,水平插值或垂直插值中的一個或兩個使用與用於普通預測模式相同的濾波器。
7. 根據示例1-6中任一個的方法,其中,基於以下中的一個或多個的確定來應用方法:時域層的使用、包含視頻塊的一個或多個塊、片、條帶或圖片的量化參數在閾值範圍內。
8. 根據示例7的方法,其中在閾值範圍內的量化參數包括大於閾值的量化參數。
9. 根據示例6的方法,其中,普通預測模式包括單向預測或雙向預測幀間預測模式,單向預測使用具有至多一個運動向量和一個參考索引的幀間預測來預測塊中的樣本的樣本值,雙向預測幀間預測模式使用具有至多兩個運動向量和參考索引的幀間預測來預測塊中樣本的樣本值。
10. 一種視頻解碼裝置,包括處理器,被配置為實現示例1至9的一個或多個的方法。
11. 一種視頻編碼裝置,包括處理器,被配置為實現示例1至9的一個或多個的方法。
12. 一種其上儲存了代碼的電腦可讀程式介質,代碼包括指令,當處理器執行指令時,使處理器實現示例1至9的一個或個中的方法。
13.一種視頻位元流處理方法,包括:確定視頻塊的形狀;基於視頻塊的形狀確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以重建視頻塊的解碼表示。
14. 根據示例13的方法,其中,視頻塊的形狀由視頻塊的寬度和高度表示,並且確定插值順序的步驟還包括: 當視頻塊的寬度大於視頻塊的高度時,確定在水平插值之前執行垂直插值作為插值順序。
15.根據示例13的方法,其中,視頻塊的形狀由寬度和高度表示,並且確定插值順序的步驟還包括: 當視頻塊的寬度大於或等於視頻塊的高度時,確定在水平插值之前執行垂直插值作為插值順序。
16.根據示例13的方法,其中,視頻塊的形狀由寬度和高度表示,並且確定插值順序的步驟還包括:
當視頻塊的高度大於或等於視頻塊的寬度時,確定在垂直插值之前執行水平插值作為插值順序。
17.根據示例1的方法,其中,視頻塊的形狀由寬度和高度表示,並且確定插值順序的步驟還包括:
當視頻塊的高度大於視頻塊的寬度時,確定在垂直插值之前執行水平插值作為插值順序。
18.根據示例1的方法,其中,基於所述插值順序或基於不同的插值順序,對視頻塊的亮度分量和彩度分量進行插值。
19.根據示例1的方法,其中,當彩度分量的每個彩度塊對應於亮度分量的多個亮度塊時,使用不同的插值順序對視頻塊的亮度分量和彩度分量進行插值。
20.根據示例13的方法,其中使用不同的插值順序對視頻塊的亮度分量和彩度分量進行插值,並且其中對於亮度分量和彩度分量,在水平插值和垂直插值中使用的縮放因數不同。
21.一種視頻位元流處理方法,包括:確定與視頻塊相關的運動向量的特徵;基於運動向量的特徵確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以重建視頻塊的解碼表示。
22.根據示例21的方法,其中,運動向量的特徵由運動向量指向的四分之一像素位置和半像素位置表示,運動向量包括垂直分量和水平分量,並且確定插值順序包括:當垂直分量指向四分之一像素位置並且水平分量指向半像素位置時,確定在垂直插值之前執行水平插值作為插值順序。
23.根據示例21的方法,其中,運動向量的特徵由運動向量指向的四分之一像素位置和半像素位置表示,運動向量包括垂直分量和水平分量,並且確定插值順序包括:當垂直分量指向半像素位置並且水平分量指向四分之一像素位置時,確定在水平插值之前執行垂直插值。
24.根據示例21-23中任一個的方法,其中視頻塊的形狀是正方形。
25.根據示例21-24中任一個的方法,其中方法應用於雙預測模式。
26.根據示例21-25中任一個的方法,其中,當視頻塊的高度乘以視頻塊的寬度小於或等於T1時,應用方法,T1是第一閾值。
27.根據示例21-25中任一個的方法,其中,當視頻塊具有小於或等於T2的高度時,應用方法,T2是第二閾值。
28.根據示例21-25中任一個的方法,其中將方法應用於視頻塊的亮度分量。
29.一種視頻位元流處理方法,包括:
確定視頻塊的形狀;
基於視頻塊的形狀確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及
按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以構造視頻塊的編碼表示。
30.一種視頻位元流處理方法,包括:
確定與視頻塊相關的運動向量的特徵;
基於運動向量的特徵確定插值順序,插值順序指示執行水平插值和垂直插值的序列;以及
按由插值順序指示的序列對視頻塊執行水平插值和垂直插值,以構造視頻塊的編碼表示。
31.一種視頻解碼裝置,包括處理器,其被配置為實現示例21至28的一個或多個的方法。
32.一種視頻編碼裝置,包括處理器,其被配置為實現示例29或30的方法。
33.一種電腦程式產品,其上儲存有電腦代碼,代碼在由處理器執行時使處理器實現示例13至30中任一個的方法。
34.一種視頻系統中的裝置,包括處理器和其上具有指令的非暫時性儲存器,其中指令在由處理器執行時使處理器實現示例13至30中任一個的方法。
從上述來看,應當理解的是,為了便於說明,本發明公開的技術的具體實施例已經在本文中進行了描述,但是可以在不偏離本發明範圍的情況下進行各種修改。因此,除了的之外,本發明公開的技術不限於申請專利範圍的限定。
本專利文件中主題名稱的實現和功能操作可以在各種系統、數位電子電路、或電腦軟體、韌體或硬體中實現,包括本說明書中所公開的結構及其結構等效體,或其中一個或多個的組合。在本說明書中描述的主題的實現可以實現為一個或多個電腦程式產品,即一個或多個編碼在暫時性和非暫時性電腦可讀介質上的電腦程式指令的模組,以供資料處理裝置執行或控制資料處理裝置的操作。電腦可讀介質可以是機器可讀存放裝置、機器可讀儲存基板、存放裝置、影響機器可讀傳播信號的物質組成或其中的一個或多個的組合。術語“資料處理單元”或“資料處理裝置”包括用於處理資料的所有裝置、設備和機器,包括例如可程式設計處理器、電腦或多處理器或電腦組。除硬體外,該裝置還可以包括為電腦程式創建執行環境的代碼,例如,構成處理器韌體的代碼、協定棧、資料庫管理系統、作業系統或其中一個或多個的組合。
電腦程式(也稱為程式、軟體、軟體應用、腳本或代碼)可以用任何形式的程式設計語言(包括編譯語言或解釋語言)編寫,並且可以以任何形式部署,包括作為獨立程式或作為模組、元件、副程式或其他適合在計算環境中使用的單元。電腦程式不一定與檔案系統中的文件對應。程式可以儲存在保存其他程式或資料的文件的部分中(例如,儲存在標記語言文件中的一個或多個腳本)、專用於該程式的單個文件中、或多個協調文件(例如,儲存一個或多個模組、副程式或部分代碼的文件)中。電腦程式可以部署在一台或多台電腦上來執行,這些電腦位於一個網站上或分佈在多個網站上,並通過通信網路互連。
本說明書中描述的處理和邏輯流可以通過一個或多個可程式設計處理器執行,該處理器執行一個或多個電腦程式,通過在輸入資料上操作並生成輸出來執行功能。處理和邏輯流也可以通過特殊用途的邏輯電路來執行,並且裝置也可以實現為特殊用途的邏輯電路,例如,FPGA(現場可程式設計閘陣列)或ASIC(專用積體電路)。
例如,適於執行電腦程式的處理器包括通用和專用微處理器,以及任何類型數位電腦的任何一個或多個。通常,處理器將從唯讀儲存器或隨機存取儲存器或兩者接收指令和資料。電腦的基本元件是執行指令的處理器和儲存指令和資料的一個或多個存放裝置。通常,電腦還將包括一個或多個用於儲存資料的大型存放區設備,例如,磁片、磁光碟或光碟,或通過操作耦合到一個或多個大型存放區設備來從其接收資料或將資料傳輸到一個或多個大型存放區設備,或兩者兼有。然而,電腦不一定具有這樣的設備。適用於儲存電腦程式指令和資料的電腦可讀介質包括所有形式的非揮發性儲存器、介質和儲存器設備,包括例如半導體儲存器設備,例如EPROM、EEPROM和快閃儲存器設備。處理器和儲存器可以由專用邏輯電路來補充,或合併到專用邏輯電路中。
說明書和附圖旨在被認為是示例性的,其中示例性意味著示例。如這裡所使用的,單數形式“一”、“一個”和“該”旨在也包括複數形式,除非上下文另有明確說明。另外,“或”的使用旨在包括“和/或”,除非上下文另有明確說明。
雖然本專利文件包含許多細節,但不應將其解釋為對任何發明或申請專利範圍的限制,而應解釋為對特定發明的特定實施例的特徵的描述。本專利文件在單獨實施例的上下文描述的一些特徵也可以在單個實施例中組合實施。相反,在單個實施例的上下文中描述的各種功能也可以在多個實施例中單獨實施,或在任何合適的子組合中實施。此外,儘管上述特徵可以描述為在一些組合中起作用,甚至最初要求是這樣,但在一些情況下,可以從組合中移除申請專利範圍組合中的一個或多個特徵,並且申請專利範圍的組合可以指向子組合或子組合的變體。
同樣,儘管圖紙中以特定順序描述了操作,但這不應理解為要獲得想要的結果必須按照所示的特定順序或循序執行此類操作,或執行所有說明的操作。此外,本專利文件所述實施例中各種系統元件的分離不應理解為在所有實施例中都需要這樣的分離。
僅描述了一些實現和示例,其他實現、增強和變體可以基於本專利文件中描述和說明的內容做出。
1700:裝置 1702:處理器 1704:儲存器 1706:視頻處理硬體 1900、2000、2100、2200、2300:方法 1905、1910、1915、2005、2010、2015、2102、2104、2106、2108、2205、2210、2215、2305、2310、2315:步驟 tb、td:距離
圖1是四叉樹二叉樹(QTBT)結構的圖示。 圖2示出了Merge候選列表構造的示例推導過程。 圖3示出了空間Merge候選的示例位置。 圖4示出了對於空間Merge候選的冗餘檢查考慮的候選對的示例。 圖5示出了Nx2N和2NxN分割的第二個預測單元(PU)的位置的示例。 圖6是時域Merge候選的運動向量縮放的圖示。 圖7示出了時域Merge候選C0和C1的示例候選位置。 圖8示出了組合的雙向預測Merge候選的示例。 圖9示出了運動向量預測候選的推導過程的示例。 圖10是空間運動向量候選的運動向量縮放的圖示。 圖11示出了編碼單元(CU)的高級時間運動向量預測(ATMVP)運動預測的示例。 圖12示出了具有四個子塊(A-D)及其相鄰塊(a-d)的一個CU的示例。 圖13示出了J0021中提出的非相鄰Merge候選。 圖14示出了J0058中提出的非相鄰Merge候選。 圖15示出了J0059中提出的非相鄰Merge候選。 圖16示出了用於四分之一樣本亮度插值的整數樣本和分數樣本位置的示例。 圖17是視頻處理裝置的示例的方塊圖。 圖18示出了視頻編碼器的示例實現的方塊圖。 圖19是視頻位元流處理方法的示例的流程圖。 圖20是視頻位元流處理方法的示例的流程圖。 圖21是視頻處理方法的示例的流程圖。 圖22是視頻位元流處理方法的示例的流程圖。 圖23是視頻位元流處理方法的示例的流程圖。
2200:方法
2205、2210、2215:步驟

Claims (23)

  1. 一種視頻位元流處理方法,包括:確定視頻塊的形狀;基於所述視頻塊的形狀確定插值順序,所述插值順序指示執行水平插值和垂直插值的序列;以及按由插值順序指示的序列對所述視頻塊執行所述水平插值和所述垂直插值,以重建所述視頻塊的解碼表示,其中,當所述垂直插值在所述水平插值之前執行時,當所述視頻塊的位元深度小於或等於8時,所述垂直插值中的縮放因數等於0,並且當所述位元深度大於8時,所述垂直插值中的所述縮放因數大於0。
  2. 如申請專利範圍第1項所述的方法,其中,所述視頻塊的所述形狀由所述視頻塊的寬度和高度表示,並且確定插值順序的步驟還包括:當所述視頻塊的所述寬度大於所述視頻塊的所述高度時,確定在所述水平插值之前執行所述垂直插值作為所述插值順序。
  3. 如申請專利範圍第1項所述的方法,其中,所述視頻塊的所述形狀由所述視頻塊的寬度和高度表示,並且確定插值順序的步驟還包括:當所述視頻塊的所述寬度大於或等於所述視頻塊的所述高度時,確定在所述水平插值之前執行所述垂直插值作為所述插值順序。
  4. 如申請專利範圍第1項所述的方法,其中,所述視頻塊的所述形狀由所述視頻塊的寬度和高度表示,並且確定插值順序的步驟還包括:當所述視頻塊的所述高度大於或等於所述視頻塊的所述寬度時,確定在所述垂直插值之前執行所述水平插值作為所述插值順序。
  5. 如申請專利範圍第1項所述的方法,其中,所述視頻塊的所述形狀由所述視頻塊的寬度和高度表示,並且確定插值順序的步驟還包括:當所述視頻塊的所述高度大於所述視頻塊的所述寬度時,確定在所述垂直插值之前執行所述水平插值作為所述插值順序。
  6. 如申請專利範圍第1項所述的方法,其中,基於所述插值順序或基於不同的插值順序,對所述視頻塊的亮度分量和彩度分量進行插值。
  7. 如申請專利範圍第1項所述的方法,其中,當所述彩度分量的每個彩度塊對應於所述亮度分量的多個亮度塊時,使用不同的插值順序對所述視頻塊的亮度分量和彩度分量進行插值。
  8. 如申請專利範圍第1項所述的方法,其中,當使用不同的插值順序時,在所述水平插值和所述垂直插值中使用的縮放因數不同。
  9. 如申請專利範圍第1項所述的方法,其中,當所述水平插值在所述垂直插值之前執行時,所述水平插值中的縮放因數等 於Min(4,BitDepthY-8)並且所述垂直插值中的縮放因數等於6,並且其中BitDepthY是所述視頻塊的位元深度。
  10. 一種視頻位元流處理方法,包括:確定與視頻塊相關的運動向量的特徵;基於所述運動向量的所述特徵確定插值順序,所述插值順序指示執行水平插值和垂直插值的序列;以及按由所述插值順序指示的序列對所述視頻塊執行所述水平插值和所述垂直插值,以重建所述視頻塊的解碼表示。
  11. 如申請專利範圍第10項所述的方法,其中,所述運動向量所述的特徵由所述運動向量指向的四分之一像素位置和半像素位置表示,所述運動向量包括垂直分量和水平分量,並且確定所述插值順序包括:當所述垂直分量指向所述四分之一像素位置並且所述水平分量指向所述半像素位置時,確定在所述垂直插值之前執行所述水平插值作為所述插值順序。
  12. 如申請專利範圍第10項所述的方法,其中,所述運動向量的所述特徵由所述運動向量指向的四分之一像素位置和半像素位置表示,所述運動向量包括垂直分量和水平分量,並且確定所述插值順序包括:當所述垂直分量指向所述半像素位置並且所述水平分量指向所述四分之一像素位置時,確定在所述水平插值之前執行所述垂直插值。
  13. 如申請專利範圍第10項所述的方法,其中所述視頻塊的形狀是正方形。
  14. 如申請專利範圍第1-13項中任一項所述的方法,其中所述方法應用於雙預測模式。
  15. 如申請專利範圍第1-13項中任一項所述的方法,其中,當所述視頻塊的高度乘以所述視頻塊的寬度小於或等於T1時,應用所述方法,T1是第一閾值。
  16. 如申請專利範圍第1-13項中任一項所述的方法,其中,當所述視頻塊具有小於或等於T2的高度時,應用所述方法,T2是第二閾值。
  17. 如申請專利範圍第1-13項中任一項所述的方法,其中將所述方法應用於所述視頻塊的亮度分量。
  18. 一種視頻位元流處理方法,包括:確定視頻塊的形狀;基於所述視頻塊的形狀確定插值順序,所述插值順序指示執行水平插值和垂直插值的序列;以及按由所述插值順序指示的序列對所述視頻塊執行所述水平插值和所述垂直插值,以構造所述視頻塊的編碼表示,其中,當所述垂直插值在所述水平插值之前執行時,當所述視頻塊的位元深度小於或等於8時,所述垂直插值中的縮放因數等於0,並且當所述位元深度大於8時,所述垂直插值中的所述縮放因數大於0。
  19. 一種視頻位元流處理方法,包括:確定與視頻塊相關的運動向量的特徵;基於所述運動向量的所述特徵確定插值順序,所述插值順序指示執行水平插值和垂直插值的序列;以及按由所述插值順序指示的序列對所述視頻塊執行所述水平插值和所述垂直插值,以構造所述視頻塊的編碼表示。
  20. 一種視頻解碼裝置,包括處理器,其被配置為實現申請專利範圍第1至17項的任一項所述的方法。
  21. 一種視頻編碼裝置,包括處理器,其被配置為實現申請專利範圍第18或19項所述的方法。
  22. 一種電腦程式產品,其上儲存有電腦代碼,所述代碼在由處理器執行時使所述處理器實現申請專利範圍第1至19項中任一項所述的方法。
  23. 一種視頻系統中的裝置,包括處理器和其上具有指令的非暫時性儲存器,其中所述指令在由所述處理器執行時使所述處理器實現申請專利範圍第1至19項中任一項所述的方法。
TW108124953A 2018-07-13 2019-07-15 取決於形狀的插值順序 TWI722486B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
WOPCT/CN2018/095576 2018-07-13
CN2018095576 2018-07-13

Publications (2)

Publication Number Publication Date
TW202023276A TW202023276A (zh) 2020-06-16
TWI722486B true TWI722486B (zh) 2021-03-21

Family

ID=67989031

Family Applications (2)

Application Number Title Priority Date Filing Date
TW108124953A TWI722486B (zh) 2018-07-13 2019-07-15 取決於形狀的插值順序
TW108124952A TWI704799B (zh) 2018-07-13 2019-07-15 取決於形狀的插值順序

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW108124952A TWI704799B (zh) 2018-07-13 2019-07-15 取決於形狀的插值順序

Country Status (3)

Country Link
CN (2) CN110719466B (zh)
TW (2) TWI722486B (zh)
WO (2) WO2020012448A2 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023198120A1 (en) * 2022-04-13 2023-10-19 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150382005A1 (en) * 2014-06-27 2015-12-31 Samsung Electronics Co., Ltd. System and method for motion compensation in video coding

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6807231B1 (en) * 1997-09-12 2004-10-19 8×8, Inc. Multi-hypothesis motion-compensated video image predictor
MXPA05000335A (es) * 2002-07-09 2005-03-31 Nokia Corp Metodo y sistema para seleccionar tipo de filtro de interpolacion en codificacion de video.
WO2008084378A2 (en) * 2007-01-09 2008-07-17 Nokia Corporation Adaptive interpolation filters for video coding
CN101527847B (zh) * 2009-01-04 2012-01-04 炬力集成电路设计有限公司 运动补偿插值装置和方法
US20120008686A1 (en) * 2010-07-06 2012-01-12 Apple Inc. Motion compensation using vector quantized interpolation filters
WO2012100085A1 (en) * 2011-01-19 2012-07-26 General Instrument Corporation High efficiency low complexity interpolation filters
US20120230393A1 (en) * 2011-03-08 2012-09-13 Sue Mon Thet Naing Methods and apparatuses for encoding and decoding video using adaptive interpolation filter length
US20120230407A1 (en) * 2011-03-11 2012-09-13 General Instrument Corporation Interpolation Filter Selection Using Prediction Index
CN102665080B (zh) * 2012-05-08 2015-05-13 开曼群岛威睿电通股份有限公司 用于移动补偿的电子装置及移动补偿方法
CN104881843A (zh) * 2015-06-10 2015-09-02 京东方科技集团股份有限公司 图像插值方法和图像插值装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150382005A1 (en) * 2014-06-27 2015-12-31 Samsung Electronics Co., Ltd. System and method for motion compensation in video coding

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
https://www.itu.int/wftp3/av-arch/jctvc-site/2011_11_G_Geneva/ *
M. Budagavi et al., "PU-size dependent motion compensation filtering order," JCTVC-G131, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 7th Meeting: Geneva, CH, 21–30 November, 2011 *
M. Budagavi et al., "PU-size dependent motion compensation filtering order," JCTVC-G131, Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 7th Meeting: Geneva, CH, 21–30 November, 2011。 https://www.itu.int/wftp3/av-arch/jctvc-site/2011_11_G_Geneva/

Also Published As

Publication number Publication date
WO2020012448A3 (en) 2020-04-16
WO2020012448A2 (en) 2020-01-16
CN110719475B (zh) 2022-12-09
CN110719475A (zh) 2020-01-21
TWI704799B (zh) 2020-09-11
WO2020012449A1 (en) 2020-01-16
CN110719466B (zh) 2022-12-23
TW202013960A (zh) 2020-04-01
TW202023276A (zh) 2020-06-16
CN110719466A (zh) 2020-01-21

Similar Documents

Publication Publication Date Title
TWI839388B (zh) 簡化的基於歷史的運動矢量預測
TWI743506B (zh) 來自多個查找表(lut)的選擇
CN110677666B (zh) Lamvr中取整和修剪的顺序
US11146810B2 (en) Decoder-side motion vector refinement
JP7507166B2 (ja) デコーダ側動きベクトル改良に対する制約
TW201743619A (zh) 在視訊寫碼中適應性迴路濾波中之多個濾波器之混淆
CN110677668B (zh) 空间运动压缩
TW202101993A (zh) 用於視訊寫碼之可切換內插濾波
TW202110188A (zh) 使用空間鄰居的重疊塊運動補償
CN112534820A (zh) 信令通知子预测单元运动矢量预测器
TWI722486B (zh) 取決於形狀的插值順序
CN117716692A (zh) 递归预测单元在视频编解码中的应用
CN113273216B (zh) Mmvd改进
CN110677650A (zh) 降低非相邻Merge设计的复杂度
CN117643056A (zh) 视频编解码中的递归预测单元