TW201902222A - 用於視訊編解碼之運動向量限制方法和裝置 - Google Patents

用於視訊編解碼之運動向量限制方法和裝置 Download PDF

Info

Publication number
TW201902222A
TW201902222A TW107116995A TW107116995A TW201902222A TW 201902222 A TW201902222 A TW 201902222A TW 107116995 A TW107116995 A TW 107116995A TW 107116995 A TW107116995 A TW 107116995A TW 201902222 A TW201902222 A TW 201902222A
Authority
TW
Taiwan
Prior art keywords
block
sub
motion vector
video
current
Prior art date
Application number
TW107116995A
Other languages
English (en)
Other versions
TWI687096B (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 TW201902222A publication Critical patent/TW201902222A/zh
Application granted granted Critical
Publication of TWI687096B publication Critical patent/TWI687096B/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/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/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/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
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • 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/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/537Motion estimation other than block-based
    • H04N19/54Motion estimation other than block-based using feature points or meshes

Landscapes

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

Abstract

公開了用於視訊編解碼的幀間預測的方法和裝置。當子區塊運動補償編解碼工具被選擇用於當前區塊時,所述方法根據子區塊運動補償編解碼工具生成與包括或包含在當前區塊中的複數個子區塊相關聯的子區塊MV(運動向量),將子區塊MV約束到一範圍內以形成約束子區塊MV,並使用約束子區塊MV將運動補償應用於當前區塊或使用一個子區塊將運動補償應用於當前區塊,或是如果第一列表中的對應子區塊MV在所述範圍之外,則使用第二列表中在主要MV周圍的範圍內的子區塊MV對當前區塊應用運動補償。在另一種方法中,僅使用主要參考區塊內的參考子區塊的參考像素將運動補償應用於當前區塊。

Description

用於視訊編解碼之運動向量限制方法和裝置
本發明涉及利用基於子區塊的編解碼工具進行運動估計/補償的視訊編解碼(video coding)。具體而言,本發明涉及約束與基於子區塊的編解碼工具相關聯的運動向量,以減少所需的頻寬。
運動估計/補償是一種強大的編解碼工具,其已被用於各種編解碼標準,如MPEG-2、H.264以及新興的高效視訊編解碼(HEVC)標準。在編碼器側導出的運動資訊必須被傳送到解碼器側,這可能消耗相當大的頻寬。為了提高運動資訊的編解碼效率,已經開發了預測性地編解碼當前運動向量(MV)的運動向量預測(motion vector prediction,MVP)。
合併模式和 AMVP 模式
對於每個幀間PU,使用運動估計來確定一個或兩個運動向量(MV)。為了提高HEVC中的運動向量(MV)編解碼的編解碼效率,HEVC運動向量預測(MVP)預測地編碼MV。具體而言,HEVC支援用於MVP編解碼的跳過和合併模式。對於跳過和合併模式,基於空間相鄰區塊(空間候選)或時間同位區塊(時間候選)的運動資訊,來導出一組候選。當使用「跳過」或「合併」模式對PU進行編解碼時,沒有運動資訊被發訊。相反地,僅所選候選的索引被編解碼。對於跳過模式,殘差訊號(residual signal)被強制為零並且不被編解碼。換言之,沒有資訊用於發訊殘差訊號。每個合併的PU重新使用所選候選的MV、預測方向和參考圖像索引。
對於HEVC中的合併模式,從相鄰區塊A0、A1、B0和B1導出多達四個空間MV候選,並且從右下區塊TBR或中心區塊TCT導出一個時間MV候選,如第1圖所示。對於時間候選,首先使用TBR。如果TBR無法使用,則使用TCT。需注意的是,如果四個空間MV候選中的任何一個無法使用,則使用區塊B2來導出MV候選作為替換。在四個空間MV候選和一個時間MV候選的推導流程之後,應用移除冗餘(修剪)來移除任何冗餘MV候選。如果在去除冗餘(修剪)之後,可使用MV候選的數量小於5,則導出三種類型的附加候選並且將其添加到候選集(候選列表)。編碼器基於速率 - 失真最佳化(rate-distortion optimization,RDO)的決定,在跳過或合併模式的候選集內選擇一個最終候選,並將索引傳送到解碼器。
由於跳過和合併候選的推導是類似的,因此為了方便起見,下文中提到的「合併」模式可以對應至「合併」模式以及「跳過」模式。
MVP技術還應用於預測地編解碼運動向量,其被稱為進階運動向量預測(AMVP)。當PU在幀間AMVP模式中被編解碼時,運動補償預測是利用傳送的運動向量差(MVD)執行,運動向量差可以與運動向量預測子(MVP)一起用於導出運動向量(MV)。為了在幀間AMVP模式中確定MVP,AMVP架構用於在包括兩個空間MVP和一個時間MVP的AMVP候選集中選擇運動向量預測子。因此,對於AMVP編解碼的區塊,用於MVP的AMVP索引及相應的MVD需要被編碼和傳送。另外,用於指定與每個列表的參考訊框索引相關聯的雙預測和單預測(即列表0(L0)和/或列表1(L1))中的預測方向的幀間預測方向也應被編碼並傳送。
當以跳過或合併模式編解碼PU時,除了所選候選的合併索引之外,不傳送運動資訊,因為跳過和合併模式利用運動推斷方法(即MV = MVP + MVD,其中MVD為零),以從所選的合併/跳過候選者獲得運動資訊。
在AMVP中,左MVP是基於來自A0、A1的第一可用MVP來選擇,頂部MVP是B0、B1、B2的第一可用MVP,而時間MVP則是來自TBR或TCT的第一可用MVP(首先使用TBR,如果沒有TBR,則使用TCT)。如果左MVP不可用且頂部MVP並非縮放的MVP,則如果在B0、B1和B2中存在縮放的MVP,第二頂部MVP可以被導出。在HEVC中,AMVP的MVP的列表大小是2。因此,在兩個空間MVP和一個時間MVP的推導流程之後,只有前兩個MVP可以包括在MVP列表中。如果在去除冗餘之後,可用MVP的數量小於2,則將零向量候選添加到候選列表中。
傳統的 Sub-PU 時間運動向量預測( Sub-PU TMVP
為了提高編解碼效率,在合併模式中應用Sub-PU時間運動向量預測(Sub-PU TMVP,也稱為進階時間運動向量預測,ATMVP)模式。也就是說,Sub-PU TMVP是用於合併模式的合併候選。如第2圖所示,與傳統的時間候選不同,Sub-PU TMVP模式將當前PU劃分為複數個子預測單元(Sub-PU),並找到每個Sub-PU的所有對應的時間同位運動向量。大小為M × N的當前PU具有(M / P)×(N / Q)個Sub-PU,每個Sub-PU的大小為P × Q,其中M可以被P整除,而N可以被Q整除。第2圖中之範例對應至當前PU 210被劃分為16個子預測單元(Sub-PU)的情況(即M / P = 4且N / Q = 4)。Sub-PU 0(211)和Sub-PU 1(212)被標示。Sub-PU TMVP的詳細演算法描述如下。Sub-PU TMVP的詳細演算法描述如下。
在步驟1中,對於當前PU 210,針對Sub-PU TMVP模式確定表示為vec_init的「初始運動向量」。舉例而言,vec_init可以是當前PU 210的第一可用空間相鄰區塊的MV。或者,其他相鄰區塊的MV也可以用作初始運動向量。傳統上,vec_init是空間相鄰區塊中的第一可用候選。舉例而言,如果第一可用空間相鄰區塊具有L0和L1 MV,且LX是用於搜索同位資訊的第一列表,則當LX = L0時vec_init使用L0 MV,或者當LX = L1時使用L1。LX(L0或L1)的值取決於哪個列表(L0或L1)對同位資訊更好。如果L0對於同位資訊(如POC(圖像順序計數)距離比L1更近)更好,則LX等於L0,反之亦然。可以在切片級別或圖像級別執行LX分配。
接著開始「同位圖像搜索流程」。「同位圖像搜索流程」是為了尋找Sub-PU TMVP模式中的所有Sub-PU的主要同位圖像。主要同位圖像表示為main_colpic。傳統上,它首先搜索由第一可用空間相鄰區塊選擇的參考圖像。然後,在B切片中,它從L0(或L1)開始,參考索引0,然后索引1,然後索引2,來搜索的當前圖像的所有參考圖像,依此類推(遞增索引順序)。如果它完成搜索了L0(或L1),則它對另一個列表進行搜索。在P切片中,它首先搜索由第一可用空間相鄰區塊選擇的參考圖像。然後,它從參考索引0開始然後搜索索引1,然後搜索索引2,搜索列表的當前圖像的所有參考圖像,依此類推(遞增索引順序)。
在搜索期間,對於每個搜索到的圖像,執行名為「可用性檢查」的流程。「可用性檢查」流程檢查由vec_init_scaled指向的當前PU的中心位置周圍的同位Sub-PU,其中vec_init_scaled是從vec_init得到的適當MV縮放的MV。可以使用各種方式來確定「中心位置周圍」。在第一實施例中,「中心位置周圍」對應至中心像素。舉例而言,如果PU大小是M × N,則中心等於位置(M / 2,N / 2)。在第二實施例中,「中心位置周圍」對應至中心Sub-PU的中心像素。在第三實施例中,取決於當前PU形狀,「中心位置周圍」可以是第一實施例或第二實施例的混合。「中心位置周圍」的詳細實施方式不限於這三個實施例。在「可用性檢查」中,如果檢查結果是幀間模式,則可用性為真;否則(檢查結果是訊框內模式),則可用性為假。在「可用性檢查」之後,如果可用性為真,則將目前搜索到的圖像標記為主要同位圖像並且搜索流程結束。如果可用性為真,則「中心位置周圍」的MV被使用並被縮放以用於當前區塊,來導出「默認MV」。如果可用性為假,則其移至搜索下一個參考圖像。
在「同位圖像搜索流程」期間,當vec_init的參考圖像不等於原始參考圖像時,需要進行MV縮放。MV縮放流程是使用運動向量的縮放版本。分別基於當前圖像與vec_init的參考圖像和搜索的參考圖像之間的時間距離縮放MV。在MV縮放之後,縮放的MV被表示為vec_init_scaled。
在步驟2中,對於每個Sub-PU,進一步在main_colpic中找到同位位置。假設當前Sub-PU是Sub-PU i,則同位位置的計算如下所示: collocated location x = Sub-PU_i_x + vec_init_scaled_i_x(integer part) + shift_x, collocated location y = Sub-PU_i_y + vec_init_scaled_i_y(integer part) + shift_y.
在上述公式中,Sub-PU_i_x表示當前圖像內的Sub-PU i的水平左上位置(整數位置),Sub-PU_i_y表示當前圖像內的Sub-PU i的垂直左上位置(整數位置),vec_init_scaled_i_x表示vec_init_scaled_i的水平部分,它有整數部分和分數部分,我們在計算中只使用整數部分,而vec_init_scaled_i_y表示vec_init_scaled_i的垂直部分,它有整數部分和分數部分,我們在計算中只使用整數部分。shift_x表示移位值。在一個實施例中,shift_x可以是Sub-PU寬度的一半,但不限於所述實施例。shift_y表示移位值。在一個實施例中,shift_y可以是Sub-PU高度的一半,但不限於所述實施例。
最後,在步驟3中,找到每個Sub-PU的運動資訊時間預測子,其被表示為每個Sub-PU的SubPU_MI_i。SubPU_MI_i是來自同位位置x、同位位置y上的collocated_picture_i_L0和collocated_picture_i_L1的的運動資訊(MI)。這裡MI被定義為{MV_x,MV_y,參考列表,參考索引,和其他合併模式敏感資訊,如區域照明補償旗標}的集合。此外,在一個實施例中,MV_x和MV_y可以根據同位圖像、當前圖像和同位MV的參考圖像之間的時間距離關係來縮放。(不限於此實施例。)如果MI無法使用於某個Sub-PU,則中心位置周圍的Sub-PU的MI將被使用(換言之,使用默認MV)。
傳統上,候選列表中僅存在一個Sub-PU TMVP候選。
空間 - 時間運動向量預測( STMVP
在JEM-3.0(Chen等人,“聯合視訊勘探測試模型3之算法描述(Algorithm Description of Joint Exploration Test Model 3)”,ITU-T SG 16 WP 3和ISO / IEC JTC 1 / SC 29 / WG的聯合視訊勘探團隊(JVET)11,第3次會議中:日內瓦,CH,2016年5月26日至6月1日,文件:JVET-C1001),空間 - 時間運動向量預測(STMVP)也包括在合併模式編碼中。在STMVP中,透過使用時間運動向量預測子和空間相鄰運動向量,在光柵掃描順序之後遞歸地導出Sub-CU的運動向量。第3圖說明了STMVP的概念。讓我們考慮一個 8 × 8 CU 310,其包含了四個 4 × 4 Sub-CU,A、B、C和D。當前訊框中的相鄰 N × N 區塊標記為a、b、c和d。Sub-CU A的運動推導透過識別其兩個空間相鄰開始。第一個相鄰是Sub-CU A之上的 N × N 區塊(區塊c)。如果區塊c不可用或者是訊框內編碼,則檢查Sub-CU A上方的其他N × N區塊(從區塊c開始從左到右)。第二相鄰是Sub-CU A左側的區塊(區塊b)。如果區塊b不可用或者是訊框內編碼,則檢查Sub-CU A左側的其他區塊(從區塊b開始從上到下)。從每個列表的相鄰區塊獲得的運動資訊被縮放到給定列表的第一參考訊框。接下來,透過遵循與HEVC中指定的TMVP推導相同的流程,來導出子區塊A的時間運動向量預測子(TMVP)。獲取位置D處的同位區塊的運動資訊並相應地縮放。最後,在檢索和縮放運動資訊之後,對於每個參考列表,分別平均所有可使用運動向量(最多3個)。平均運動向量被指定為當前Sub-CU的運動向量。
基於型樣的 MV 推導( PMVD
在VCEG-AZ07(Chen等人,“HMKTA-1.0之進一步改善(Further improvements to HMKTA-1.0)”,ITU-T SG16 Q,2015的視訊編碼專家組(VCEG))中,揭露了基於型樣的MV推導(PMVD)方法。基於型樣的MV推導(PMVD)方法在VCEG-AZ07中也稱為訊框速率上轉換(Frame Rate Up Conversion,FRUC)。FRUC包括用於雙預測區塊的雙邊配對和用於單預測區塊的時間配對。
第4圖示出了FRUC(訊框速率上轉換)雙邊配對模式的範例,其中基於兩個參考圖像導出當前區塊410的運動資訊。透過在兩個不同的參考影像(即Ref0和Ref1)中沿著當前區塊的運動軌跡440找到兩個區塊(420和430)之間的最佳配對,來導出當前區塊的運動資訊。在連續運動軌跡的假設下,指向兩個參考區塊的與Ref0相關聯的MV0和與Ref1相關聯的MV1應當與當前影像和兩個參考圖像Ref0和Ref1之間的時間距離(即TD0和TD1)成比例(即Cur pic)。
第5圖示出了模板配對FRUC模式的範例。當前圖像(即Cur pic)中的當前區塊510的相鄰區域(520a和520b)被用作模板以與參考圖像(即第5圖中的Ref0)中的對應模板(530a和530b)配對。模板520a / 520b與模板530a / 530b之間的最佳配對將確定解碼器導出的運動向量540。雖然第5圖示出Ref0,但Ref1也可作為參考圖像使用。
根據VCEG-AZ07,當merge_flag或skip_flag為真時,FRUC_mrg_flag被發訊。如果FRUC_mrg_flag是1,則FRUC_merge_mode被發訊以指示是否選擇了雙邊配對合併模式或模板配對合併模式。如果FRUC_mrg_flag為0,則意味著使用常規合併模式並且在這種情況下合併索引被發訊。在視訊編解碼中,為了提高編解碼效率,可以使用運動向量預測(MVP)來預測區塊的運動向量,其中候選列表被生成。合併候選列表可以用於在合併模式中對區塊進行編解碼。當合併模式用於對區塊進行編解碼時,區塊的運動資訊(如運動向量)可以由合併候選列表中的候選MV之一來表示。因此,代替直接傳送區塊的運動資訊,將合併索引傳送到解碼器側。解碼器維持相同的合併列表,並使用合併索引來檢索由合併索引發訊號通知的合併候選。通常,合併候選列表由少量候選組成,且傳送合併索引比傳送運動資訊更有效。當以合併模式對區塊進行編解碼時,透過發訊號通知合併索引而不是明確傳送,來將運動資訊與相鄰區塊的運動資訊「合併」。但是,仍然傳送預測殘差。在預測殘差為零或非常小的情況下,預測殘差被「跳過」(即跳過模式),並且透過具有合併索引的跳過模式對區塊進行編解碼,以識別合併列表中的合併MV。
雖然術語FRUC指的是用於訊框速率上轉換的運動向量推導,但是基礎技術旨在用於解碼器導出一個或複數個合併MV候選而無需明確地傳送運動資訊。因此,FRUC在本揭露書中也稱為解碼器導出的運動資訊。由於模板配對方法是基於型樣(pattern-based)的MV推導技術,因此FRUC的模板配對方法在本揭露書中也稱為基於型樣的MV推導(PMVD)。
在解碼器側MV推導方法中,透過掃描所有參考圖像中的所有MV來導出稱為時間導出MVP的新時間MVP。為了導出LIST_0時間導出MVP,對於LIST_0參考圖像中的每個LIST_0 MV,縮放MV以指向當前訊框。當前訊框中由此縮放的MV指向的 4 × 4 區塊是目標當前區塊。進一步縮放MV以指向參考圖像,其中參考圖像的refIdx在LIST_0中對於目標當前區塊等於0。該進一步縮放的MV被存儲在目標當前區塊的LIST_0 MV區域中。第6A圖和第6B圖分別示出了導出LIST_0和LIST_1的時間導出MVP的範例。在第6A圖和第6B圖中,每個小方區塊對應至4 × 4區塊。時間導出MVP流程掃描所有參考圖像中的所有4 × 4區塊中的所有MV,以生成當前訊框的LIST_0和LIST_1的時間導出MVP。舉例而言,在第6A圖中,區塊610、區塊612和區塊614分別對應至當前圖像(Cur.pic)的4 × 4區塊、索引等於0的LIST_0參考圖像(即refidx = 0)和索引等於1的LIST_0參考圖像(即refidx = 1)。用於索引等於1的LIST_0參考圖像中的兩個區塊的運動向量620和630是已知的。然後,可以分別透過縮放運動向量620和630,來導出時間導出MVP 622和632。接著將縮放的MVP分配給相應的區塊。類似地,在第6B圖中,區塊640、區塊642和區塊644分別對應至當前圖像(Cur.pic)的4 × 4區塊、索引等於0的LIST_1參考圖像(即refidx = 0)和具有索引等於1的LIST_1參考圖像(即refidx = 1)。用於索引等於1的LIST_1參考圖像中的兩個區塊的運動向量650和660是已知的。然後,可以分別透過縮放運動向量650和660,來導出時間導出MVP 652和662。
對於雙邊配對合併模式和模板配對合併模式,應用兩階段配對。第一階段是PU層配對,第二階段是Sub-PU層配對。在PU層配對中,分別選擇LIST_0和LIST_1中的複數個初始MV。這些MV包括來自合併候選的MV(即如HEVC標準中指定的傳統合併候選)和來自時間導出MVP的MV。為兩個列表生成兩個不同的凝視(staring)MV集。對於一個列表中的每個MV,透過組合此MV和鏡像MV來生成MV對,其中鏡像MV透過將上述MV縮放到另一個列表而導出。對於每個MV對,透過使用MV對來補償兩個參考區塊。計算這兩個區塊的絕對差值之和(SAD)。選擇具有最小SAD的MV對作為最佳MV對。
仿射運動補償預測
在HEVC中,僅將平移運動模型應用於運動補償預測(MCP)。然而在現實世界中,有很多種運動,如放大/縮小、旋轉、透視運動和其他不規則運動。仿射模型能夠描述二維區塊旋轉以及二維變形,以將正方形(或矩形)變換為平行四邊形。這個模型可以描述如下:
在所述模型中,使用總共六個參數(即a、b、c、d、e和f)。對於感興趣區域中的每個像素A(x, y),可以使用區塊的運動向量場(motion vector field,MVF)來導出所述像素與其對應的參考像素A'(x', y')之間的運動向量。第7圖示出了根據仿射模型的運動補償的範例,其中當前區域710被映射到參考圖像中的參考區域720。仿射變換可以將任何三角形映射到任何三角形。換言之,如第7圖所示,當前區域的三個角像素(即控制點)與參考區域的三個角像素之間的對應關係可以由與三個控制點相關聯的三個運動向量(v0 、v1 和v2 )確定。可以基於三個不同位置的三個已知運動向量導出仿射模型的六個參數。可以根據以下內容確定區塊的目標位置(x, y)的運動向量:
在上面的公式中,(v0x , v0y )是左上角控制點的運動向量v0 ,(v1x , v1y )是右上角控制點的運動向量v1 ,而(v2x , v2y ) 是左下角控制點的運動向量v2
在JEM-3中,應用簡化的仿射變換運動補償預測來提高編解碼效率。如第8圖所示,區塊的仿射運動場由與兩個控制點相關聯的運動向量描述。
以下公式描述區塊的運動向量場(MVF):
在上面的公式中,(v0x , v0y )是左上角控制點的運動向量v0 ,並且(v1x , v1y )是右上角控制點的運動向量v1
為了進一步簡化運動補償預測,應用基於區塊的仿射變換預測。為了導出每個 4 × 4 子區塊的運動向量,如第8圖所示,根據上面的公式(1)計算每個子區塊的中心樣本的運動向量,並且結果捨入為1 / 16分數精度。然後,應用運動補償內插以利用導出的運動向量生成每個子區塊的預測。
在MCP之後,每個子區塊的高精度運動向量被捨入並保存為與正常運動向量相同的精度。
在ATMVP、STMVP、仿射模式預測和基於型樣的運動向量推導(PMVD)合併模式中,應用子區塊運動補償。CU / PU被分成幾個子區塊。每個區塊可以具有不同的參考圖像和不同的MV。如果每個子區塊的MV非常不同,則子區塊運動補償需要大量頻寬。
當執行運動補償時,必須檢索一個或複數個參考區塊以用於運動補償。由於在如HEVC的較新編碼標準中支援分數像素運動向量,因此也必須檢索參考區塊周圍的附加參考像素。所有區塊大小在小數像素位置處插值所需的行數或列數是相同的。因此,對於較小的區塊大小,頻寬問題更嚴重。重疊區塊運動補償(Overlapped block motion compensation, OBMC)是一種透過處理從區塊邊界擴展的附加資料,來減輕區塊邊界處的編碼偽影的技術。混合重疊區域中的運動補償像素,以降低編碼偽影的可見性。同樣地,OBMC將導致額外的頻寬需求。
當使用子區塊運動補償編解碼工具時,與子區塊相關聯的運動向量可以是不同的。由子區塊MV指向的子區塊的參考像素可以展開。這將進一步增加所需的系統頻寬。因此,期望開發減少子區塊運動補償編解碼工具所需頻寬的方法。
公開了由視訊編碼器或視訊解碼器執行的用於視訊編解碼的幀間預測的方法和裝置。當子區塊運動補償編解碼工具被選擇用於當前區塊時,所述方法根據子區塊運動補償編解碼工具生成與包括或包含在當前區塊中的複數個子區塊相關聯的子區塊MV(運動向量),將子區塊MV約束到一範圍內以形成約束子區塊MV,並使用約束子區塊MV將運動補償應用於當前區塊、或是如果第一列表中的對應子區塊MV在主要MV周圍的範圍之外,則在第二列表的範圍內的MV使用一個子區塊將運動補償應用於當前區塊。在一個實施例中,子區塊MV受主要MV周圍的範圍約束。
子區塊運動補償編解碼工具選自一組合,所述組合包括進階時間運動向量預測(ATMVP)、空間 - 時間運動向量預測(STMVP)、仿射預測、和子區塊精細PMVD(基於型樣的MV推導)模式。
對於ATMVP,主要MV可以對應至默認MV、初始MV、縮放的初始MV、當前區塊的子區塊MV之一或一個導出的MV。舉例而言,主要MV對應至一個角子區塊或一個中心子區塊的一個子區塊MV、一個使用當前區塊的中心像素或中心區塊的導出MV、或者使用一個中心位置周圍的一個子區塊導出MV。
對於STMVP,主要MV可以對應至第一導出的子區塊MV、相鄰區塊的MV、時間同位的MV或導出的MV。舉例而言,主要MV對應至一個角子區塊或一個中心子區塊的一個子區塊MV,主要MV對應至透過使用當前區塊的中心像素或中心區塊所導出的導出MV。
對於仿射預測,主要MV可以對應至控制點MV之一、當前區塊的子區塊MV之一或一導出MV。舉例而言,當前區塊的子區塊MV中的一個對應至一個角子區塊的一個MV或一個中心子區塊的一個MV、或是所述導出MV對應至使用當前區塊的一個中心像素或中心區塊的一個導出MV。
對於子區塊細化的PMVD模式,主要MV可以對應至一個當前PU(預測單元)、CU(編解碼單元)或當前區塊的一個初始MV、或者一個當前PU、CU 或當前區塊的一個細化MV。
將子區塊MV約束在主要MV周圍的範圍內,可以包括將主要MV與子區塊MV的每個子區塊MV之間的差值限制在一個或複數個閾值內。舉例而言,子區塊MV的每個子區塊MV可以被限制在從(主要MV - 運動向量閾值)到(主要MV + 運動向量閾值)的範圍內,其中運動向量閾值對應至一個閾值,且如果一個子區塊MV在所述範圍之外,子區塊MV被剪輯到所述範圍。在另一範例中,所述一個或複數個閾值中的每一個對應至預定義值、導出值或訊號值。所述一個或複數個閾值可以在編碼器側的序列參數集、圖像參數集或切片標頭中用訊號通知,或者在解碼器側從序列參數集、圖像參數集或切片標頭解析。所述一個或複數個閾值可以根據當前區塊或當前子區塊的大小、寬度或高度來確定,或者取決於主要MV、當前區塊或當前子區塊的幀間預測方向來確定。不同的子區塊可以使用不同的閾值。
當在視訊編碼器處為當前區塊選擇子區塊運動補償編解碼工具時,視訊編碼器可將子區塊MV約束在主要MV周圍的範圍內,以形成受約束子區塊MV,並在視訊比特流中發訊號通知與受約束子區塊MV有關的資訊。在另一實施例中,在視訊編碼器處,所有子區塊MV被限制在主要MV周圍的範圍內,並在視訊比特流中發訊號通知與子區塊MV有關的資訊。在視訊解碼器處,視訊解碼器可導出主要MV,然後在主要MV周圍加載所需的參考資料。
還公開了由視訊編碼器或視訊解碼器執行的用於視訊編碼的幀間預測的另一方法和裝置。當為當前區塊選擇子區塊運動補償編解碼工具時,所述方法導出主要參考區塊,根據子區塊運動補償編解碼工具生成與包括或包含在當前區塊中的複數個子區塊相關聯的子區塊MV(運動向量),並使用主要參考區塊內的參考子區塊的一個或複數個參考像素將運動補償應用於當前區塊,並排除主要參考區塊外的參考子區塊的任何參考像素,其中,參考子區塊由子區塊MV指向。在一個實施例中,主要參考區塊覆蓋由主要MV指向的參考區塊。
以下描述是實現本發明的最佳方案。本描述是為了說明本發明的一般原理,而不應被視為具有限制意義。透過參考所附申請專利範圍最佳地確定本發明的範圍。
為了減少頻寬需求,根據本發明對於子區塊運動補償工具應用MV約束,其包括ATMVP(進階時間運動向量預測)、STMVP(空間 - 時間運動向量預測)、仿射模式和子區塊細化PMVD(基於型樣的運動向量推導)模式。如果子區塊運動補償模式應用於當前區塊,則當前區塊的MV被限制在一範圍內。上述範圍可以限制在主要MV周圍的範圍內。CU / PU中的每個子區塊的MV差值受到一個或複數個閾值的限制。舉例而言,首先導出參考列表中的主要MV。當前區塊中的參考列表中的所有MV被限制在主要MV ± 一個閾值的範圍內(即從主要MV- 閾值到主要MV + 閾值)。如果子區塊MV在限制範圍之外,則子區塊MV被剪輯在限制範圍內,或是被主要MV替換。在另一範例中,如果列表中的一個MV在限制範圍之外而另一個列表的MV在限制範圍內,則僅使用另一個列表的MV。超出限制範圍的列表的MV被修改為無效。在一些實施例中, MV是在限制範圍的內部還是外部,可以根據MV指向的參考區塊或任何其他MV相關資訊來確定,這不應在本發明中受到限制。舉例而言,定義了參考區塊範圍。如果MV或任何其他MV相關資訊指向的參考區塊被參考區塊範圍覆蓋,則MV被視為在限制範圍內。
閾值可以是預定義值、導出值或訊號值。可以在序列參數集、圖像參數集或切片標頭中用訊號通知閾值。閾值可以是固定值或自適應值。舉例而言,閾值可以取決於當前區塊的大小、當前區塊或當前子區塊的寬度/高度、主要MV、當前區塊或當前子區塊的幀間預測方向、或是以上的組合。在一個範例中,對於小於64的CU區域,閾值可以是2,而對於等於或大於64的CU區域,閾值可以是16。在一個範例中,對於單預測區塊,閾值更大或不受限制,而對於雙預測區塊較小。也可以使用複數個閾值。舉例而言,一個閾值用於MV的水平分量,另一個閾值用於MV的垂直分量。MV閾值的水平分量可以取決於當前區塊的大小或當前區塊的寬度和/或高度。MV閾值的垂直分量可以取決於當前區塊的大小或當前區塊的高度和/或寬度。對於一個方向,閾值對於正方向和負方向可以是不同的。舉例而言,當前區塊的MV的水平分量被限制在(primary_MVx - th​​resholdX1, primary_MVx + thresholdX2)的範圍內。閾值X1和閾值X2可以取決於當前區塊的大小、當前區塊或主要MV的寬度和/或高度。
對於ATMVP,主要MV可以是默認MV、初始運動向量(vec_init)、縮放的初始MV(vec_init_scaled)、當前區塊中的子區塊MV之一(如角子區塊的MV或中心子區塊的MV)、或一個導出MV(如使用當前區塊的中心像素或中心區塊導出的MV,或者使用中心位置周圍的Sub-PU導出的MV)。
對於STMVP,主要MV可以是至少一個導出子區塊MV中的第一個(如第3圖中子區塊A的MV,其是根據導出順序導出的第一個)、相鄰區塊的MV、時間同位的MV或一個導出的MV。在一個範例中,導出MV可以為透過使用當前區塊的中心像素或中心區塊導出的MV。
對於仿射模式,主要MV可以是控制點MV之一、當前區塊中的子區塊MV之一(如角子區塊的MV或中心子區塊的MV)、或是一個導出的MV(如使用當前區塊的中心像素或中心區塊導出的MV)。
在另一實施例中,對於仿射模式,如果控制點的MV在限制範圍之外,則控制點的MV首先被限制在限制範圍內或由主要MV替換。在剪輯或替換之後,透過使用新控制點MV來導出每個子區塊的MV。
對於PMVD合併模式,主要MV可以為PU初始MV或CU / PU細化MV。子區塊細化MV應被限制在主要MV周圍。
在一個實施例中,對於不同的子區塊,MV閾值可以是不同的。舉例而言,子區塊1的水平MV在(primary_MVx - thresholdX1, primary_MVx + thresholdX2)的範圍內,而子區塊2的水平MV在(primary_MVx - thresholdX3, primary_MVx + thresholdX4)的範圍內。thresholdX1可以與thresholdX3不同。舉例而言,如果子區塊1的位置在子區塊2的位置的左邊,則閾值X1可以小於閾值X3。
所提出的方法可以規範地應用、或者可以應用為編碼器側約束。如果它是規範性的,則使用如上所述的規則生成所有子區塊的MV。所有MV都將在主要MV周圍的限制範圍內。對於編碼器約束,所編碼出來的比特流必須符合所有子區塊的MV應遵循上述規則此一致性的要求。子區塊的所有MV都應在主要MV周圍的限制範圍內。如果不是,則不應在編碼器側選擇所述模式或所述合併候選。
在解碼器側,當在子區塊運動補償模式中對當前區塊進行編解碼時,首先導出主要MV。解碼器可以加載主要MV周圍的參考資料。舉例而言,可以加載大小為(thresholdX1 + blockWidth + interpolationFilterTapLength-1 + thresholdX2)*(thresholdX1 + blockHeight + interpolationFilterTapLength -1 + thresholdX2)的區塊。
在另一實施例中,子區塊MV不限於在主要MV周圍。在所述實施例中,參考區塊(在本發明中稱為主要參考區塊)用於所有子區塊的運動補償。在一個實施例中,主要參考區塊覆蓋由主要MV指向的區塊。在子區塊運動補償中,如果所需參考像素在主要參考區塊內,則使用原始參考像素。如果所需參考像素不在參考區塊內,則使用偽參考像素。偽參考像素可以是參考區塊的預定義像素值或填充像素。參考區塊的大小和形狀可取決於當前CU大小和形狀。第9圖示出了一個範例。對於8 × 8 CU 910,首先導出主要MV 922。由主要MV 922指向的參考圖像930的主要參考區塊920係用於8 × 8 CU的子區塊的運動補償。如果子區塊的所有參考像素都在主要參考區塊920內(如區塊A,其所有參考像素在主要參考區塊920內),則使用參考區塊中的像素。如果子區塊的參考像素不在主要參考區塊920內(如區塊C,其參考像素不在主要參考區塊920內),則使用根據參考區塊的填充像素。如果子區塊的參考像素的一部分在主要參考區塊內而一部分不在(如區塊B,其在主要參考區塊920內具有部分參考像素並且一部分不在主要參考區塊920內),則使用主要參考區塊中的部分像素和填充像素的一部分。在另一實施例中,修改內插濾波器係數,以排除主要參考區塊外部的參考子區塊的任何參考像素。
第10圖示出了根據本發明實施例的使用受約束子區塊運動向量的視訊編解碼系統的範例性流程圖。流程圖中所示的步驟可以實現為在編碼器側的一個或複數個處理器(如一個或複數個CPU)上可執行的程式碼。流程圖中示出的步驟還可以基於如被佈置為執行流程圖中的步驟的一個或複數個電子設備或處理器的硬體來實現。根據所述方法,在步驟1010中接收與當前圖像中的當前區塊相關聯的輸入資料。在視訊編碼器側輸入資料可以對應至要編碼的像素資料、或者在視訊解碼器側輸入資料對應至包括當前區塊的壓縮資料的視訊比特流。在步驟1020中檢查子區塊運動補償編解碼工具是否被選擇用於當前區塊。如果子區塊運動補償編解碼工具被選擇用於當前區塊(即步驟1020的「是」路徑),則步驟執行1040至1060。否則(即步驟1020的「否」路徑),跳過步驟1040至1060。在步驟1040中,根據子區塊運動補償編解碼工具生成與複數個子區塊相關聯的子區塊MV(運動向量),其中當前區塊包括或含有複數個子區塊。在步驟1050中,子區塊MV被約束在一範圍內以形成受約束子區塊MV。在步驟1060中,使用受約束子區塊MV將運動補償應用於當前區塊,或者如果在第一列表相應的子區塊MV超出上述範圍,則使用第二列表中在範圍內的一個子區塊MV將運動補償應用於當前區塊。
第11圖示出了根據本發明實施例的使用受約束子區塊運動向量的視訊編解碼系統的另一範例性流程圖。根據所述方法,在步驟1110中接收與當前圖像中的當前區塊相關聯的輸入資料。在視訊編碼器側輸入資料可以對應至要編碼的像素資料,或者在視訊解碼器側輸入資料對應至包括當前區塊的壓縮資料的視訊比特流。在步驟1120中,檢查子區塊運動補償編解碼工具是否被選擇用於當前區塊。如果子區塊運動補償編解碼工具被選擇用於當前區塊(即步驟1120的「是」路徑),則步驟執行1130至1160。否則(即步驟1120的「否」路徑),跳過步驟1130至1160。在步驟1130中,導出主要參考區塊。在步驟1150中,根據子區塊運動補償編解碼工具生成與複數個子區塊相關聯的子區塊MV(運動向量),其中當前區塊包括或包含複數個子區塊。在步驟1160中,使用主要參考區塊內的參考子區塊的一個或複數個參考像素將運動補償應用於當前區塊,並且排除主要參考區塊外部的參考子區塊的任何參考像素,其中參考子區塊係由子區塊MV指出。
以上所示的流程圖旨在示出根據本發明的視訊編碼的範例。在不脫離本發明的精神的情況下,本領域技術人員可以修改每個步驟,重新安排步驟,分割步驟,或組合步驟以實施本發明。在本發明中,已經使用特定語法和語義來說明用於實現本發明的實施例的範例。本領域技術人員可以透過用等同的語法和語義替換語法和語義來實踐本發明,而不脫離本發明的精神。
第12圖示出了根據本發明實施例的受約束MV的頻寬分析的範例。在此範例中,啟用OBMC,以及當前區塊是雙預測區塊。當前區塊1210是8 × 8,其包括或包含四個4×4子區塊,用於基於子區塊的運動補償。第12圖示出了為了執行基於子區塊的運動補償而要存取的所需參考像素1220。舉例而言,同位區塊的外部的附加像素資料被指示用於左上子區塊(在第12圖中標記為UL)和右下子區塊(在第12圖中標記為LR)。在第12圖中,LF指的是用於插值濾波器的子區塊左側所需的像素數量,RF指的是用於插值濾波器的子區塊右側所需的像素數量,而OBMC指的是在一個邊界上的OBMC所需的像素數量。對於子區塊之間的內部區塊邊界,需要兩個額外的參考樣本行。對於CU之間的外部區塊邊界,需要4個像素線,用於CU右邊界和底邊界。第12圖中的問號「?」指的是尚未確定用於約束MVD的閾值。如果對於8 × 8區塊,目標頻寬被限制為26 × 26,則根據本發明的實施例,閾值將是3.5,因為已經需要19個像素(即3 + 8 + 4 + 4)且僅剩餘3.5個像素(即(26-19)/ 2)。可以類似地導出其他編解碼條件的閾值。
可以在編碼器和/或解碼器中實現任何前述提出的方法。舉例而言,任何所提出的方法可以在編碼器的子區塊劃分模組或MV推導模組,和/或解碼器的子區塊劃分模組或MV推導模組中實現。替代地,任何所提出的方法可以實現為耦合到編碼器的子區塊劃分模組或MV推導模組和/或解碼器的子區塊劃分模組或MV推導模組的電路,以便提供子區塊劃分模組或MV模組所需的資訊。
以上描述是為了使得本領域普通技術人員能夠在特定應用及其要求的背景下實踐本發明。對所描述的實施例的各種修改對於本領域技術人員來說是顯而易見的,且本文定義的一般原理可以應用於其他實施例。因此,本發明不限於所示出和描述的特定實施例,而是與符合本文所公開的原理和新穎特徵的最寬範圍相一致。在以上詳細描述中,示出了各種具體細節以便提供對本發明的透徹理解。儘管如此,本領域技術人員將理解本發明可以被實施。
如上所述的本發明的實施例可以以各種硬體、軟體代碼或兩者的組合來實現。舉例而言,本發明的實施例可以是集成到視訊壓縮晶片中的一個或複數個電路或集成到視訊壓縮軟體中的程式碼,以執行本文所述的處理。本發明的實施例還可以是在數位訊號處理器(DSP)上執行的程式碼,以執行這裡描述的處理。本發明還可以涉及由電腦處理器、數位訊號處理器、微處理器或現場可程式化邏輯閘陣列(FPGA)執行的許多功能。這些處理器可以被配置為透過執行定義本發明所體現的特定方法的機器可讀軟體代碼或韌體代碼,來執行根據本發明的特定任務。軟體代碼或韌體代碼可以用不同的程式語言和不同的格式或樣式開發。還可以針對不同的目標平台編譯軟體代碼。然而,以軟體代碼的不同代碼格式、樣式和語言以及配置代碼執行根據本發明的任務的其他方式將不脫離本發明的精神和範圍。
在不脫離本發明的精神或基本特徵的情況下,本發明可以以其他特定形式實施。所描述的範例在所有方面都應被視為僅是說明性的而非限制性的。因此,本發明的範圍由所附申請專利範圍表示,而不是前面的描述表示。在申請專利範圍等同範圍內的所有變化都包含在其範圍內。
210‧‧‧當前預測單元(PU)
211-212‧‧‧子預測單元(Sub-PU)
220‧‧‧時間同位圖像
310、910‧‧‧編解碼單元(CU)
410、510、610、640‧‧‧當前區塊
420、430、612、614、642、644、920、1210‧‧‧參考區塊
440、540‧‧‧運動軌跡
520a、520b‧‧‧相鄰區域
530a、530b‧‧‧參考圖像中之對應模板
620、630、650、660‧‧‧運動向量
622、632、652、662‧‧‧運動向量預測(MVP)
710‧‧‧當前區域
720‧‧‧參考區域
922‧‧‧主要運動向量
930‧‧‧參考圖像
1010-1060‧‧‧步驟
1110-1160‧‧‧步驟
1220‧‧‧參考像素
第1圖示出了用於根據HEVC(高效視訊編碼)導出合併候選的空間和時間相鄰區塊。 第2圖示出了範例性Sub-PU TMVP(時間運動向量預測)模式,其中當前PU被劃分為複數個Sub-PU,並且導出每個Sub-PU的所有對應的時間同位運動向量。 第3圖示出了STMVP(空間 - 時間運動向量預測)的概念。 第4圖示出了用於FRUC(訊框速率上轉換)模式的雙邊配對的範例。 第5圖示出了用於FRUC(訊框速率上轉換)模式的模板配對的範例。 第6A圖和第6B圖分別示意出了導出List_0和List_1的時間導出MVP的範例。 第7圖示出了根據仿射模型的運動補償的範例,其中當前區域310被映射到參考圖像中的參考區域320。 第8圖示出了根據仿射模型的運動補償的範例,其中區塊的仿射運動場由與兩個控制點相關聯的運動向量描述。 第9圖示出了覆蓋由主要MV指向的區塊的主要參考區塊用於所有子區塊的運動補償的範例,其中,如果所需的參考像素在主要參考區塊內,則使用原始參考像素,而如果所需的參考像素在主要參考區塊之外,則不使用原始參考像素。 第10圖示出了根據本發明實施例的使用受約束子區塊運動向量的視訊編解碼系統的範例性流程圖。 第11圖示出了根據本發明實施例的使用受約束子區塊運動向量的視訊編解碼系統的另一範例性流程圖。 第12圖示出了根據本發明實施例的受約束MV的頻寬分析的範例。

Claims (28)

  1. 一種在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,所述方法包括: 接收與一當前圖像中的一當前區塊相關聯的一輸入資料; 當一子區塊運動補償編解碼工具被選擇用於所述當前區塊時: 根據所述子區塊運動補償編解碼工具生成與複數個子區塊相關聯的複數個子區塊運動向量,其中,所述當前區塊包括所述複數個子區塊; 將所述子區塊運動向量限制在一範圍內以形成複數個受約束子區塊運動向量;以及 使用所述受約束子區塊運動向量將運動補償應用於所述當前區塊,或者如果一第一列表中的一對應子區塊運動向量在所述範圍之外,則使用在一第二列表的所述範圍內的一子區塊運動向量將運動補償應用於所述當前區塊。
  2. 如申請專利範圍第1項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,所述子區塊運動補償編解碼工具選自一群組,所述群組包括一進階時間運動向量預測、一空間 - 時間運動向量預測、一仿射預測以及一子區塊細化的基於型樣的運動向量推導模式。
  3. 如申請專利範圍第2項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,對於所述進階時間運動向量預測,所述主要運動向量對應至一默認運動向量、一初始運動向量、一縮放初始運動向量、所述當前區塊的所述子區塊運動向量中的一個、或是一導出運動向量。
  4. 如申請專利範圍第3項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,所述主要MV對應至一角子區塊或一中心子區塊的一子區塊運動向量、使用所述當前區塊的一中心像素或一中心區塊的一導出運動向量、或者使用在一中心位置周圍的一子區塊的一導出運動向量。
  5. 如申請專利範圍第2項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,對於所述空間 - 時間運動向量預測,所述主要運動向量對應至一第一導出的子區塊運動向量、複數個相鄰區塊的一運動向量、一時間同位的運動向量、或是一導出運動向量。
  6. 如申請專利範圍第5項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,所述主要運動向量對應至透過使用所述當前區塊的一中心像素或一中心區塊導出的所述導出運動向量。
  7. 如申請專利範圍第2項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,對於所述仿射預測,所述主要運動向量對應至複數個控制點運動向量的其中一個、所述當前區塊的所述子區塊運動向量的其中一個、或一個導出運動向量。
  8. 如申請專利範圍第7項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,所述當前區塊的所述子區塊運動向量中的其中一個對應至一角子區塊或一中心子區塊的一運動向量,或者所述導出運動向量對應至使用所述當前區塊的一中心像素或一中心區塊的一個導出運動向量。
  9. 如申請專利範圍第2項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,對於所述子區塊細化基於型樣的運動向量推導模式,所述主要運動向量對應至一個當前預測單元、編解碼單元或當前區塊的一個初始運動向量、或者一個當前預測單元,編解碼單元或當前區塊的一個細化運動向量。
  10. 如申請專利範圍第1項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,所述將所述子區塊運動向量約束在所述主要運動向量周圍的所述範圍內包括:限制所述主要運動向量與所述子區塊運動向量的每個子區塊運動向量之間的差值在一個或複數個閾值內。
  11. 如申請專利範圍第10項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,所述子區塊運動向量的每個子區塊運動向量被限制在從(主要運動向量-運動向量閾值)到(主要運動向量 +運動向量閾值)的所述範圍內,其中所述運動向量閾值對應至一閾值,且如果一個子區塊運動向量在所述範圍外,則將所述子區塊運動向量剪輯到所述範圍內。
  12. 如申請專利範圍第10項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中所述一個或複數個閾值中的每一個對應至一預定值、一導出值或一訊號值。
  13. 如申請專利範圍第12項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,在一編碼器側所述一個或複數個閾值被發訊於一序列參數集、一圖像參數集或一切片標頭中,或者在一解碼器側所述一個或複數個閾值自一序列參數集、一圖像參數集或一切片標頭處解析。
  14. 如申請專利範圍第10項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,所述一個或複數個閾值的確定是根據所述當前區塊或所述當前子區塊的大小、寬度或高度、所述主要運動向量、所述當前區塊或所述當前子區塊的一幀間預測方向、或以上所述的組合。
  15. 如申請專利範圍第10項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中至少兩個閾值用於兩個不同的子區塊。
  16. 如申請專利範圍第1項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中在一視訊編碼器處當所述子區塊運動補償編解碼工具被選擇用於所述當前區塊時,所述視訊編碼器將所述子區塊運動向量約束在所述範圍內以形成一約束子區塊運動向量,並於一視訊比特流中發送與所述受約束子區塊運動向量相關的訊號資訊。
  17. 如申請專利範圍第16項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,在一視訊解碼器處,所述視訊解碼器導出所述主要運動向量,然後在所述主要運動向量周圍加載一所需的參考資料。
  18. 如申請專利範圍第1項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,所述子區塊運動向量被約束在一主要運動向量周圍的一範圍內。
  19. 如申請專利範圍第1項所述之在視訊編解碼系統中使用一幀間預測模式進行一視訊編解碼的方法,其中,當在一視訊編碼器處所述子區塊運動補償編解碼工具被選擇用於所述當前區塊時,所有所述子區塊運動向量被限制在一主要運動向量周圍的一範圍內,並於一視訊比特流中發送與所述子區塊運動向量相關聯的訊號資訊。
  20. 一種在一視訊編解碼系統中使用一幀間預測模式的一視訊編解碼的裝置,所述裝置包括一個或複數個電子設備或處理器,其被配置為: 接收與一當前圖像中的一當前區塊相關聯的一輸入資料; 當一子區塊運動補償編解碼工具被選擇用於所述當前區塊時: 根據所述子區塊運動補償編解碼工具生成與複數個子區塊相關聯的複數個子區塊運動向量,其中,所述當前區塊包括所述複數個子區塊; 約束所述子區塊運動向量到一範圍內以形成複數個受約束子區塊運動向量;以及 使用所述受約束子區塊運動向量將運動補償應用於所述當前區塊,或者如果一第一列表中的一對應子區塊MV在一主要運動向量周圍的所述範圍之外,則使用一第二列表中的所述範圍內的一子區塊運動向量將運動補償應用於所述當前區塊。
  21. 一種在一視訊編解碼系統中一使用幀間預測模式進行視訊編解碼的方法,所述方法包括: 接收與一當前圖像中的一當前區塊相關聯的一輸入資料; 當一子區塊運動補償編解碼工具被選擇用於所述當前區塊時: 導出一主要參考區塊; 根據所述子區塊運動補償編解碼工具生成與複數個子區塊相關聯的複數個子區塊運動向量,其中,所述當前區塊包括所述複數個子區塊;以及 使用所述主要參考區塊內的複數個參考子區塊的一個或複數個參考像素將運動補償應用於所述當前區塊,並排除所述主要參考區塊外部的參考子區塊的任何參考像素,其中所述參考子區塊由子區塊運動向量所指向。
  22. 如申請專利範圍第21項所述之在一視訊編解碼系統中一使用幀間預測模式進行視訊編解碼的方法,其中,所述主要參考區塊覆蓋由一主要運動向量指向的一參考區塊。
  23. 如申請專利範圍第21項所述之在一視訊編解碼系統中一使用幀間預測模式進行視訊編解碼的方法,其中,所述主要參考區塊外部的參考子區塊的任何參考像素由一偽參考像素替換。
  24. 如申請專利範圍第23項所述之在一視訊編解碼系統中一使用幀間預測模式進行視訊編解碼的方法,其中,所述偽參考像素對應至所述主要參考區塊的一預定義像素值或一填充像素。
  25. 如申請專利範圍第21項所述之在一視訊編解碼系統中一使用幀間預測模式進行視訊編解碼的方法,其中,修改內插濾波器係數以排除所述主要參考區塊外部的參考子區塊的任何參考像素。
  26. 如申請專利範圍第21項所述之在一視訊編解碼系統中一使用幀間預測模式進行視訊編解碼的方法,其中,所述主要參考區塊的大小和形狀的確定是根據所述當前區塊或所述當前子區塊的大小和形狀、所述主要運動向量、所述當前區塊或所述當前子區塊的一幀間預測方向、或上述的組合。
  27. 如申請專利範圍第21項所述之在一視訊編解碼系統中一使用幀間預測模式進行視訊編解碼的方法,其中,所述子區塊運動補償編解碼工具選自一群組,所述群組包括一進階時間運動向量預測、一空間 - 時間運動向量預測、一仿射預測和子區塊細化基於型樣的運動向量推導模式。
  28. 一種在一視訊編解碼系統中使用一幀間預測模式的一視訊編解碼裝置,所述裝置包括一個或複數個電子設備或處理器,其被配置為: 接收與一當前圖像中的一當前區塊相關聯的一輸入資料; 當一子區塊運動補償編解碼工具被選擇用於所述當前區塊時: 導出一主要參考區塊; 根據所述子區塊運動補償編解碼工具生成與複數個子區塊關聯的複數個子區塊運動向量,其中,所述當前區塊包括複數個子區塊;以及 使用所述主要參考區塊內的複數個參考子區塊的一個或複數個參考像素將運動補償應用於所述當前區塊,並排除所述主要參考區塊外部的參考子區塊的任何參考像素,其中所述參考子區塊係由子區塊運動向量所指向。
TW107116995A 2017-05-18 2018-05-18 用於視訊編解碼之運動向量限制方法和裝置 TWI687096B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201762507838P 2017-05-18 2017-05-18
US62/507,838 2017-05-18
US201762519214P 2017-06-14 2017-06-14
US62/519,214 2017-06-14
WOPCT/CN2018/087351 2018-05-17
??PCT/CN2018/087351 2018-05-17
PCT/CN2018/087351 WO2018210315A1 (en) 2017-05-18 2018-05-17 Method and apparatus of motion vector constraint for video coding

Publications (2)

Publication Number Publication Date
TW201902222A true TW201902222A (zh) 2019-01-01
TWI687096B TWI687096B (zh) 2020-03-01

Family

ID=64273342

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107116995A TWI687096B (zh) 2017-05-18 2018-05-18 用於視訊編解碼之運動向量限制方法和裝置

Country Status (6)

Country Link
US (2) US11700391B2 (zh)
EP (1) EP3616406B1 (zh)
CN (1) CN110651474B (zh)
CA (1) CA3063746A1 (zh)
TW (1) TWI687096B (zh)
WO (1) WO2018210315A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113661709A (zh) * 2019-03-27 2021-11-16 北京字节跳动网络技术有限公司 仿射高级运动矢量预测中的运动信息精度对齐

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011146451A1 (en) * 2010-05-20 2011-11-24 Thomson Licensing Methods and apparatus for adaptive motion vector candidate ordering for video encoding and decoding
CN109005412B (zh) * 2017-06-06 2022-06-07 北京三星通信技术研究有限公司 运动矢量获取的方法及设备
KR20190108506A (ko) * 2018-03-14 2019-09-24 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN115550664B (zh) 2018-06-04 2023-08-22 华为技术有限公司 获取运动矢量的方法和装置
WO2020084475A1 (en) 2018-10-22 2020-04-30 Beijing Bytedance Network Technology Co., Ltd. Utilization of refined motion vector
EP3857879A4 (en) 2018-11-12 2022-03-16 Beijing Bytedance Network Technology Co., Ltd. SIMPLIFICATION OF COMBINED INTER-INTRA PREDICTION
KR20210091161A (ko) 2018-11-20 2021-07-21 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 부분적 위치에 기반한 차분 계산
BR112021010054A2 (pt) * 2018-11-26 2021-08-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. fluxo de dados, decodificador e codificador de vídeo baseado em bloco e seus respectivos métodos
CN113196772A (zh) * 2018-11-29 2021-07-30 北京字节跳动网络技术有限公司 块内拷贝模式和基于子块的运动矢量预测模式之间的交互
CN113170111B (zh) * 2018-12-08 2024-03-08 北京字节跳动网络技术有限公司 视频处理方法、装置和计算机可读存储介质
CN116647694A (zh) * 2019-01-02 2023-08-25 北京大学 候选mv列表构建方法和装置
WO2020143830A1 (en) * 2019-01-11 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Integer mv motion compensation
WO2020147747A1 (en) * 2019-01-15 2020-07-23 Beijing Bytedance Network Technology Co., Ltd. Weighted prediction in video coding
KR102635518B1 (ko) 2019-03-06 2024-02-07 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 변환된 단예측 후보의 사용
JP2020150294A (ja) * 2019-03-11 2020-09-17 ルネサスエレクトロニクス株式会社 復号方法、復号装置及び符号化方法
CN111698515B (zh) * 2019-03-14 2023-02-14 华为技术有限公司 帧间预测的方法及相关装置
US11343525B2 (en) * 2019-03-19 2022-05-24 Tencent America LLC Method and apparatus for video coding by constraining sub-block motion vectors and determining adjustment values based on constrained sub-block motion vectors
CN114930840A (zh) 2020-01-07 2022-08-19 华为技术有限公司 增强型插值滤波器的运动矢量范围的推导
US20230224472A1 (en) * 2022-01-12 2023-07-13 Tencent America LLC Motion vector restriction for out-of-frame boundary conditions

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100098169A1 (en) * 2008-10-16 2010-04-22 Texas Instruments Incorporated Method and apparatus for motion estimation using compressed reference frame
KR20120088488A (ko) 2011-01-31 2012-08-08 한국전자통신연구원 시간적 움직임 벡터 저장 방법 및 그 장치
WO2013088697A1 (ja) 2011-12-16 2013-06-20 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、動画像復号装置、および動画像符号化復号装置
US9762904B2 (en) * 2011-12-22 2017-09-12 Qualcomm Incorporated Performing motion vector prediction for video coding
US10003810B2 (en) * 2012-03-22 2018-06-19 Mediatek Inc. Method and apparatus of scalable video coding
US10021414B2 (en) 2013-01-04 2018-07-10 Qualcomm Incorporated Bitstream constraints and motion vector restriction for inter-view or inter-layer reference pictures
CN105393539B (zh) 2013-07-24 2019-03-29 高通股份有限公司 用于纹理及深度译码的子pu运动预测
EP3080992A4 (en) * 2014-05-06 2017-03-29 MediaTek Inc. Video processing method for determining position of reference block of resized reference frame and related video processing apparatus
EP3306925B1 (en) * 2015-06-05 2019-09-18 Sony Corporation Image processing device and image processing method
MX2018002477A (es) * 2015-09-02 2018-06-15 Mediatek Inc Metodo y aparato de derivacion de movimiento de lado de decodificador para codificacion de video.
US10448010B2 (en) * 2016-10-05 2019-10-15 Qualcomm Incorporated Motion vector prediction for affine motion models in video coding
US11277635B2 (en) * 2017-03-17 2022-03-15 Vid Scale, Inc. Predictive coding for 360-degree video based on geometry padding
US10382516B2 (en) * 2017-05-09 2019-08-13 Apple Inc. Detecting upscaled source video
TWI700922B (zh) * 2018-04-02 2020-08-01 聯發科技股份有限公司 用於視訊編解碼系統中的子塊運動補償的視訊處理方法和裝置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113661709A (zh) * 2019-03-27 2021-11-16 北京字节跳动网络技术有限公司 仿射高级运动矢量预测中的运动信息精度对齐

Also Published As

Publication number Publication date
EP3616406A4 (en) 2020-11-11
CA3063746A1 (en) 2018-11-22
EP3616406A1 (en) 2020-03-04
CN110651474B (zh) 2022-02-18
TWI687096B (zh) 2020-03-01
US20230300370A1 (en) 2023-09-21
EP3616406B1 (en) 2024-03-20
US11700391B2 (en) 2023-07-11
CN110651474A (zh) 2020-01-03
WO2018210315A1 (en) 2018-11-22
US20210176485A1 (en) 2021-06-10

Similar Documents

Publication Publication Date Title
TWI687096B (zh) 用於視訊編解碼之運動向量限制方法和裝置
TWI700922B (zh) 用於視訊編解碼系統中的子塊運動補償的視訊處理方法和裝置
US11146815B2 (en) Method and apparatus of adaptive bi-prediction for video coding
TWI720460B (zh) 在視訊編解碼中具有高級控制之候選重組
TWI670970B (zh) 在視訊編解碼中預測子細化的候選跳過的方法和裝置
JP5770277B2 (ja) インターモード、スキップモード及びマージモードについて動きベクトル/動きベクトルの予測子の候補を導出する方法及び装置
WO2019223746A1 (en) Method and apparatus of video coding using bi-directional cu weight
TW201944781A (zh) 視訊編解碼系統中具有重疊塊運動補償的視訊處理的方法以及裝置
TW202019172A (zh) 在視訊編解碼系統中視訊處理的方法以及裝置
TWI720753B (zh) 簡化的三角形合併模式候選列表導出的方法以及裝置
CN112514383A (zh) 用于视频编解码的利用运动向量差的合并方法和装置
KR102463478B1 (ko) 비디오 코딩 시스템을 위한 아핀 인터 예측 방법 및 장치
WO2024016844A1 (en) Method and apparatus using affine motion estimation with control-point motion vector refinement
CN118354099A (zh) 用于视频编解码系统中的子块运动补偿的视频处理方法和装置
CN118354098A (zh) 用于视频编解码系统中的子块运动补偿的视频处理方法和装置