TW202408242A - 隱式多通道解碼器端運動向量細化 - Google Patents

隱式多通道解碼器端運動向量細化 Download PDF

Info

Publication number
TW202408242A
TW202408242A TW112112899A TW112112899A TW202408242A TW 202408242 A TW202408242 A TW 202408242A TW 112112899 A TW112112899 A TW 112112899A TW 112112899 A TW112112899 A TW 112112899A TW 202408242 A TW202408242 A TW 202408242A
Authority
TW
Taiwan
Prior art keywords
refinement
motion vector
current block
refined
predictor
Prior art date
Application number
TW112112899A
Other languages
English (en)
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 TW202408242A publication Critical patent/TW202408242A/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/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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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
    • H04N19/192Methods 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 the adaptation method, adaptation tool or adaptation type being iterative or recursive

Landscapes

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

Abstract

提供了一種使用隱式信令進行多通道解碼器端運動向量細化(MP-DMVR)的視頻編解碼系統。視頻解碼器接收作為視頻的當前圖片的當前塊的要編碼或解碼的像素塊的資料。當前塊與參考第一初始預測子的第一運動向量和參考第二初始預測子的第二運動向量相關聯。視頻解碼器分別根據第一、第二和第三細化模式細化第一和第二運動向量以最小化第一、第二和第三成本。視頻編碼器基於第一、第二和第三成本的比較來選擇細化模式。視頻解碼器通過使用所選擇的細化模式來對當前塊進行編碼或解碼,以修改第一運動向量和第二運動向量以重構當前塊。

Description

隱式多通道解碼器端運動向量細化
本發明涉及視頻編解碼系統。特別地,本發明涉及解碼端運動向量細化(decoder side motion vector refinement,DMVR)。
除非本文另有說明,否則本節中描述的方法不是下面列出的請求項的現有技術,並且不因包含在本節中而被承認為現有技術。
高效視頻編碼(HEVC)是由視頻編碼聯合協作小組(JCT-VC)開發的國際視頻編碼標準。HEVC基於混合的基於塊的運動補償類DCT變換編碼架構。壓縮的基本單元,稱為編碼單元(CU),是一個2Nx2N的方形像素塊,每個CU可以遞歸地分成四個更小的CU,直到達到預定義的最小尺寸。每個CU包含一個或多個預測單元(PU)。
通用視頻編碼(VVC)是由ITU-T SG16 WP3和ISO/IEC JTC1/SC29/WG11的聯合視頻專家組(JVET)制定的最新國際視頻編碼標準。輸入視頻信號是根據重構信號預測的,重構信號是從編碼圖像區域導出的。通過塊變換來處理預測殘差信號。變換係數與位元流中的其他輔助信息一起被量化和熵編碼。重構信號是根據預測信號和對去量化變換係數進行逆變換之後的重構殘差信號生成的。通過環路濾波進一步處理重構信號以消除編碼偽影。解碼後的圖片存儲在幀緩衝器中,用於預測輸入視頻信號中的未來圖片。
在 VVC 中,編碼圖片被劃分為由關聯的編碼樹單元(CTU)表示的非重疊方形塊區域。編碼圖片可以由片(slice)的集合來表示,每個片包含整數個CTU。片中的各個CTU按光柵掃描順序進行處理。可以使用具有至多兩個運動向量和參考索引的幀內預測或幀間預測來對雙預測(B)片進行解碼,以預測每個塊的樣本值。使用幀內預測或幀間預測使用至多一個運動向量和參考索引對預測(P)切片進行解碼,以預測每個塊的樣本值。僅使用幀內預測對幀內 (I) 切片進行解碼。
對於每個幀間預測的CU,由運動向量、參考圖片索引和參考圖片列表使用索引組成的運動參數以及附加信息被用於幀間預測樣本生成。可以以顯式或隱式方式用信號發送運動參數。當使用跳過(skip)模式對CU進行編碼時,該CU與一個PU相關聯並且沒有顯著的殘餘係數、沒有編碼的運動向量增量或參考圖片索引。指定合併(merge)模式,由此從相鄰CU獲得當前CU的運動參數,包括空間和時間候選者以及VVC中引入的附加調度。合併模式可以應用於任何幀間預測的CU。合併模式的替代方案是運動參數的顯式傳輸,其中運動向量、每個參考圖片列表的相應參考圖片索引和參考圖片列表使用標記以及其他所需信息是針對每個CU顯式地用信號發送的。
以下概述僅是說明性的,並不旨在以任何方式進行限制。即,提供以下概述以介紹本文描述的新穎的和非顯而易見的技術的概念、亮點、好處和優勢。在下面的詳細描述中進一步描述了選擇的而不是所有的實施方式。因此,以下概述不旨在識別要求保護的主題的基本特徵,也不旨在用於確定要求保護的主題的範圍。
一些實施例提供了使用隱式信令進行多通道解碼器端運動向量細化(MP-DMVR)的視頻編碼系統。視頻解碼器接收作為視頻的當前圖片的當前塊要編碼或解碼的像素塊的資料。當前塊與參考第一參考圖片中的第一初始預測子的第一運動向量和參考第二參考圖片中的第二初始預測子的第二運動向量相關聯。視頻解碼器分別根據第一、第二和第三細化模式細化第一和第二運動向量以最小化第一、第二和第三成本。視頻解碼器基於第一、第二和第三最小化成本的比較來選擇細化模式。視頻解碼器通過使用所選擇的細化模式來對當前塊進行編碼或解碼,以修改用於重構當前塊的第一運動向量和第二運動向量。
在一些實施例中,基於由細化的第一運動向量參考的第一細化預測子與由第二運動向量參考的第二初始預測子之間的差來計算第一最小化成本。第二最小化成本是基於由第一運動向量參考的第一初始預測子與由細化的第二運動向量參考的第二細化預測子之間的差來計算的。第三最小化成本是基於第一細化預測子和第二細化預測子之間的差來計算的。
在一些實施例中,第一最小化成本是基於當前塊的第一混合擴展區域和相鄰區域之間的差來計算的,第一混合擴展區域是由細化的第一運動向量參考的第一細化預測子的擴展區域和由初始第二運動向量參考的第二初始預測子的擴展區域的加權和:基於第二混合擴展區域和當前塊的相鄰區域之間的差來計算第二最小化成本,第二混合擴展區域是由細化第二運動參考的第二細化預測子的擴展區域和由第一運動向量參考的第一初始預測子的擴展區域的加權和。基於第三混合擴展區域和當前塊的相鄰區域之間的差來計算第三最小化成本,第三混合擴展區域是由細化第一運動參考的第一細化預測子的擴展區域和由細化的第二運動向量參考的第二細化預測子的擴展區域的加權和。
在一些實施例中,在一個或多個細化通道中細化第一和第二運動向量,並且在一個細化通道或兩個細化通道之後計算第一、第二和第三成本。在第二次細化通道中,針對當前塊的多個子塊中的每個子塊細化第一運動向量和第二運動向量。在第三細化通道中,通過應用雙向光流(BDOF)來細化第一和第二運動向量。
在一些實施例中,成本的比較是加權比較。該選擇可以是隱式的並且編碼器不向解碼器用信號發送任何語法元素來指示該選擇。在一些實施例中,編碼器用信號發送指示是否使用第一細化模式的語法元素(例如,bm_merge_flag);如果不是,則編碼器比較最小化的第二成本和第三成本以確定是使用第二細化模式還是第三細化模式來對當前圖片進行編碼。在一些實施例中,編碼器用信號發送指示是否使用第二細化模式的語法元素;如果不是,則編碼器比較最小化的第一和第三成本以確定是使用第一細化模式還是第三細化模式來對當前圖片進行編碼。在一些實施例中,編碼器用信號發送指示是否使用第三細化模式的語法元素;如果不是,則編碼器比較最小化的第一成本和第二成本以確定是使用第一細化模式還是第二細化模式來對當前圖片進行編碼。
在下面的詳細描述中,通過示例的方式闡述了許多具體細節,以便提供對相關教導的透徹理解。基於本文描述的教導的任何變化、派生和/或擴展都在本公開的保護範圍內。在一些情況下,可以在相對較高的水平上描述與本文公開的一個或多個示例實現有關的眾所周知的方法、處理、組件和/或電路而不詳細,以避免不必要地模糊本公開的教導的方面。 I. 多通道 DMVR
在一些實施例中,如果所選擇的合併候選滿足DMVR條件,則在常規合併模式中應用多通道解碼器端運動向量細化(multi-pass decoder-side motion vector refinement,MP-DMVR)方法。在第一通道中,雙向匹配(bilateral matching,BM)被應用於編碼塊。在第二通道中,BM應用於編碼塊內的每個16x16子塊。在第三通道中,每個8x8子塊中的MV通過應用雙向光流(BDOF)進行細化。BM在運動向量差MVD0(即,MV0'-MV0)與運動向量差MVD1(即,MV1'-MV1)正好相反的符號的條件下細化一對運動向量MV0和MV1。
第1圖概念性地示出了通過雙向匹配(BM)對預測候選(例如,合併候選)的細化。MV0是初始運動向量或預測候選,MV1是MV0的鏡像。MV0參考參考圖片110中的初始參考塊120。MV1參考參考圖片111中的初始參考塊121。該圖示出了MV0和MV1被細化以形成MV0'和MV1',其分別參考更新的參考塊130和131。根據雙向匹配進行細化,使得細化的運動向量對MV0'和MV1'比初始運動向量對MV0和MV1具有更好的雙向匹配成本。MV0'-MV0(即MVD0)和MV1'-MV1(即MVD1)被限制為大小相等但方向相反。在一些實施例中,一對鏡像運動向量(例如,MV0和MV1)的雙向匹配成本是基於鏡像運動向量所引用的兩個參考塊之間的差異(例如,參考塊110和111之間的差異)來計算的。 II. 自適應 MP-DMVR
自適應解碼器端運動向量細化(自適應DMVR)方法僅在雙向預測的兩個方向(L0和L1)之一上細化MV,以獲得滿足DMVR條件的合併候選。具體地,對於第一單邊雙向DMVR模式,修改或細化L0 MV,同時固定L1 MV(因此MVD1為零);對於第二單邊雙向DMVR,L1 MV被修改或細化,而 L0 MV固定(因此MVD0為零)。
對選定的合併候選應用自適應多通道DMVR過程以細化運動向量,在MP-DMVR的第一通道中MVD0或MVD1為零(即編碼塊或PU級DMVR)。
第2A-B圖概念性地示出了自適應DMVR下的細化雙向預測MV。附圖示出了在L0和L1方向(MV0和MV1)上具有初始雙向預測MV的當前塊200。MV0參考初始參考塊220並且MV1參考初始參考塊221。在自適應DMVR下,基於最小化基於MV0和MV1所參考的參考塊之間的差異計算的成本來分別細化MV0和MV1。
第2A圖示出了第一單邊雙向DMVR模式,其中僅細化L0 MV而固定L1 MV。如圖所示,MV1保持固定以參考參考塊221,而MV0被細化/更新為MV0’以參考更新的參考塊230,其相對於固定的L1參考塊221是更好的雙向匹配。第2B圖示出了第二單邊雙向DMVR模式,其中僅細化L1 MV而固定L0 MV。如圖所示,MV0保持固定以參考參考塊220,而MV1被細化/更新為MV1’以參考更新的參考塊231,其對於固定L0參考塊220是更好的雙向匹配。
與常規合併模式DMVR類似,兩個單邊雙向DMVR模式的合併候選是從空間相鄰編碼塊、TMVP、非相鄰塊、HMVP 和成對候選導出的。不同之處在於,只有滿足 DMVR 條件的合併候選者才會添加到候選者列表中。兩種單邊雙向DMVR模式使用相同的合併候選列表,並且它們相應的合併索引按照常規合併模式進行編碼。有兩個語法元素來指示自適應MP-DMVR模式:bmMergeFlag和bmDirFlag。語法元素bmMergeFlag用於指示這種類型的預測的開關(僅在一個方向上細化MV,或自適應MP-DMVR)。當bmMergeFlag打開時,語法元素bmDirFlag用於指示細化MV方向。例如,當bmDirFlag等於0時,細化後的MV來自列表0;當bmDirFlag等於1時,細化後的MV來自列表1。如下語法表所示:
            bm_merge_flag
            if (bm_merge_flag)
            bm_dir_flag
在解碼bm_merge_flag和bm_dir_flag之後,可以確定變量bmDir。例如,如果bm_merge_flag等於1,bm_dir_flag等於0,則bmDir將被設置為1以指示自適應MP-DMVR僅細化列表0(或MV0)中的MV。再例如,如果bm_merge_flag等於1,bm_dir_flag等於1,則bmDir將被設置為2,以指示自適應MP-DMVR僅細化列表1(或MV1)中的MV。 III.   隱式 MP-DMVR A. 基於成本的隱式 MP-DMVR
隱式MP-DMVR是指由編碼器和解碼器獨立地選擇MP-DMVR的三種模式之一,而無需顯式地用信號通知一些或全部自適應MP-DMVR相關語法。MP-DMVR的三種模式對應於以下三種基於雙向匹配的MV細化的類型或模式:僅針對L0的MV細化、僅針對L1的MV細化、以及針對L0和L1兩者的MV細化。
第3A-C圖概念性地示出了基於雙向匹配的MV細化的各種類型或模式。附圖示出了用於對當前塊300進行編碼的MV細化。當前塊300具有參考初始預測子或參考塊320和321的兩個初始MV(L0的MV0和L1的MV1)。第3A圖示出了僅針對L0的MV細化(L0自適應雙向匹配,MVD1=0),其中細化的MV0=初始MV0+MV_偏移,並且細化的MV1=初始MV1。第3B圖示出了僅針對L1的MV細化(L1自適應雙向匹配,MVD0=0),其中細化的MV0=初始MV0,並且細化的MV1=初始MV1+MV_偏移。第3C圖示出了L0和L1兩者的MV細化(常規雙向匹配,MVD1=-MVD0),其中細化的MV0=初始MV0+MV_偏移,並且細化的MV1=初始MV1-MV_偏移。
在一些實施例中,對於三種模式 (僅針對L0、僅針對L1、L0+L1的MV細化)中的每一種,通過使用在(自適應)MP-DMVR期間導出的成本(cost)來應用隱式MP-DMVR。編碼器和解碼器將隱式選擇三種模式中成本最低的一種來執行DMVR。在一些實施例中,通過使用從MP-DMVR的第二通道導出的成本來應用隱式MP-DMVR。在一些實施例中,通過使用在MP-DMVR第1通道和第2通道期間導出的成本來應用隱式MP-DMVR。
第3A-C圖還示出了用於隱式DMVR的MP-DMVR第一通道的各種成本。如第3A圖(僅L0細化)所示,CostA是細化的L0預測子330(由細化的MV0’指代)和固定的L1預測子321之間的匹配成本。如第3B圖(僅L1細化)所示,CostB是細化的L1預測子331(由細化的MV1'指代)和固定的L0預測子320之間的匹配成本。如第3C圖(L0+L1細化)所示,CostC是細化的L0預測子330(由細化的MV0’引用)和細化的L1預測子331(由細化的MV1’引用)之間的雙向匹配成本。CostA(僅L0)、CostB(僅L1)和CostC(L0+L1)中具有最小成本的MV細化被用作最終MV細化。例如,如果CostA是三個成本中最小的,則最終的細化MV是通過僅細化L0 MV來導出的(L1 MV 固定)。此方法在編碼器和解碼器中執行,因此bm_merge_flag和bm_dir_flag不會在 一些實施例。 B. 具有 bm_merge_flag 信令的隱式 MP-DMVR
在一些實施例中,MP-DMVR的信令是部分隱式的,具體地,通過使用語法元素bm_merge_flag來指示是否選擇細化模式之一。如果不是,則根據成本隱式選擇剩餘的兩種細化模式之一。
例如,在一些實施例中,bm_merge_flag用於指示是否僅在L1上細化MV。如果bm_merge_flag等於1,則MV細化僅針對L1。如果bm_merge_flag等於0,則MV細化僅針對L0或針對L0和L1。通過比較CostA和CostC來做出該決定。具體來說,CostA(僅L0)和CostC(使用L0+L1的雙向匹配)之間成本較小的MV細化被用作最終的MV細化。例如,如果CostA是兩個成本(CostA、CostC)中較小的一個,那麼最終的細化MV是通過僅細化L0 MV來導出的(L1 MV 固定)。反之,如果CostC是兩個成本中較小的一個,則最終的細化MV是通過對L0和L1(雙向匹配)進行細化得出的。
在一些實施例中,bm_merge_flag用於指示是否僅在L0上細化MV。如果 bm_merge_flag等於1,則MV細化僅針對L0。如果bm_merge_flag等於0,則MV細化要么僅針對L1,要么針對L0和L1。通過比較CostB和CostC來決定是僅針對L1細化MV還是針對L0和L1兩者細化MV。具體來說,CostB(僅L1)和CostC(雙向匹配;L0+L1)之間具有較小成本的MV細化被用作最終的MV細化。例如,如果CostB是兩個成本(CostB、CostC)中較小的一個,則最終的細化MV是通過僅細化L1 MV來導出的(L0 MV固定)。反之亦然。如果CostC是兩個成本(CostB,CostC)中較小的一個,則通過細化L0和L1 MV(雙向匹配)得出最終的細化MV。
在一些實施例中,bm_merge_flag用於指示是否使用常規雙向匹配(即,在L0和L1上)來細化MV。如果bm_merge_flag等於1,則使用雙向匹配對L0和L1進行MV細化。如果bm_merge_flag等於0(自適應雙向匹配),則MV細化要么僅針對L0,要么僅針對L1。通過比較CostA和CostB來決定是僅針對L0細化MV 是僅針對L1細化MV。具體地,使用CostA(僅L0)和CostB(僅L1)之間具有較小成本的MV細化作為最終MV細化。例如,如果CostA是兩個成本(CostA,CostB)中最小的,那麼最終的細化MV是僅通過細化L0 MV(L1 MV固定)得到的。反之,如果CostB是兩個成本(CostA,CostB)中最小的,僅通過細化L1 MV(固定L0 MV)得出最終的細化MV。
在一些實施例中,在本節中描述的方法在編碼器和解碼器兩者中執行,因此不用信號通知bm_dir_flag。 C. 具有加權成本的隱式 MP-DMVR
在一些實施例中,僅在L0上細化MV的成本(CostA)、僅在L1上細化MV的成本(CostB)以及在L0和L1兩者上細化MV的成本(CostC)可以在比較之前進行不同的加權。例如,在比較時,CostC可以具有1的權重,而CostA和/或CostB可以具有1.05的權重。加權比較的結果用於確定是否僅在L0(L0自適應雙向匹配)、僅L1(L 自適應雙向匹配)或L0和L1(常規雙向匹配)上細化MV,具體取決於CostA、CostB、CostC的哪個最小。 D. 通過雙模板估計成本的隱式 MP-DMVR
在一些實施例中,擴展(extended)雙邊模板(bi-template)用於估計MP-DMVR的成本。擴展雙邊模板是根據列表0 MV0的細化(MV0’)和列表1 MV1細化(MV1’)生成的,作為兩個擴展預測塊的加權組合。估計成本(CostA’、CostB’和CostC’)可用於隱式向MP-DMVR發送信號,以代替上述成本CostA、CostB和CostC。
第4A-B圖概念性地示出了基於由列表0和列表1的細化MV引用的擴展預測塊來生成擴展雙邊模板。第4A圖示出了MP-DMVR的第一通道和/或第二通道中MV0和MV1的細化。如圖所示,當前塊400具有引用L0參考塊420的列表0初始MV(MV0)和引用L1列表參考塊421的初始MV (MV1)。在經過MP-DMVR通道1(和/或通道2)之後,當前塊400具有引用L0參考塊430的細化列表0 MV(MV0')和引用L1參考塊431的細化列表1 MV(MV1')。
第4B圖示出了用於計算MP-DMVR的隱式信令的各種估計成本的擴展區域。基於當前塊400的擴展區域、初始L0和L1參考塊420和421的擴展區域、細化/更新的L0和L1參考塊430和431的擴展區域以及雙邊模板405的擴展區域來計算估計成本。
如圖所示,初始L0參考塊420具有擴展區域A和B。當前塊400具有擴展區域C和D。初始L1參考塊421具有擴展區域E和F。細化L0參考塊430具有擴展區域A'和B'。細化的L1參考塊431具有擴展區域E'和F'。
視頻解碼器通過來自擴展L0參考塊(具有A'和B'的參考塊430)和擴展L1參考塊(具有E'和F'的參考塊431)的加權和來生成擴展雙邊模板450。 擴展雙邊模板450包括具有擴展區域G和H的雙邊模板405。擴展區域G和H可以被計算為擴展區域A'和B'以及擴展區域E'和F'的加權和。
可以進行模板匹配操作來計算生成的雙邊模板的擴展區域與當前圖片中的樣本區域(當前塊周圍)之間的成本(差異)。例如,當前塊400上方的區域(擴展區域D)和生成的雙邊模板450中的相應擴展區域(雙邊模板405上方的擴展區域H)中的N行,以及當前塊400左側的區域(擴展區域C)和生成的雙邊模板450中的對應擴展區域(雙邊模板405左側的擴展區域G)中的M列可以用來計算模板匹配成本。M和N可以是任何大於零的值。
在一些實施例中,估計成本CostA'是基於當前塊的第一混合擴展區域和相鄰區域(C+D)之間的差來計算的,第一混合擴展區域是由細化第一運動向量MV0'參考的第一細化預測子430的擴展區域(A'+B')和由初始第二運動向量(MV1)參考的第二初始預測子421的擴展區域(E+F) 的加權和。CostB'是基於第二混合擴展區域與當前塊的相鄰區域(C+D)之間的差來計算的,第二混合擴展區域是由細化第二運動向量(MV1')參考的第二細化預測子431的擴展區域(E'+F')和由第一初始運動向量(MV0)參考的第一初始預測子420的擴展區域(A+B)的加權和。第三成本(CostC')是基於第三混合擴展區域與當前塊的相鄰區域之間的差來計算的,第三混合擴展區域是由細化第一運動向量MV0'參考的第一細化預測子430的擴展區域(A'+B')和由第二個運動向量 MV1'參考的第二細化預測子431的擴展區域(E'+F')的加權和。
任何前述提出的方法可以在編碼器和/或解碼器中實現。例如,任何所提出的方法可以在編碼器和/或解碼器的DMVR模塊中實現。或者,任何所提出的方法可以被實現為耦合到編碼器和/或解碼器的DMVR模塊的電路。 IV. 視頻編碼器示例
第5圖說明可實施MP DMVR的實例視頻編碼器500。如圖所示,視頻編碼器500從視頻源505接收輸入視頻信號並將該信號編碼為位元流595。視頻編碼器500具有用於對來自視頻源505的信號進行編碼的若干組件或模塊,至少包括選自以下的一些組件:變換模塊510、量化模塊511、逆量化模塊514、逆變換模塊515、幀內估計模塊520、幀內預測模塊525、運動補償模塊530、運動估計模塊535、環路濾波器545、重構圖片緩衝器550、MV緩衝器565、MV預測模塊575和熵編碼器590。運動補償模塊530和運動估計模塊535是幀間預測模塊540的一部分。
在一些實施例中,模塊510-590是由計算設備或電子設備的一個或多個處理單元(例如,處理器)執行的軟體指令模塊。在一些實施例中,模塊510-590是由電子裝置的一個或多個集成電路(IC)實現的硬體電路模塊。儘管模塊510-590被示為單獨的模塊,但是一些模塊可以組合成單個模塊。
視頻源505提供未壓縮的原始視頻信號,其呈現每個視頻幀的像素資料。減法器508計算視頻源505的原始視頻像素資料與來自運動補償模塊530或幀內預測模塊525的預測像素資料513之間的差異。變換模塊510將差異(或殘差像素資料或殘差信號508)轉換成變換係數(例如,通過執行離散餘弦變換或DCT)。量化模塊511將變換係數量化為量化資料(或量化係數)512,其由熵編碼器590編碼為位元流595。
逆量化模塊514對量化資料(或量化係數)512進行逆量化以獲得變換係數,逆變換模塊515對變換係數進行逆變換以產生重構殘差519。重構殘差519與預測像素資料513相加以產生重構像素資料517。在一些實施例中,重構像素資料517被臨時儲存在行緩衝器(未示出)中用於幀内預測和空間MV預測。重構像素由環路濾波器545過濾並儲存在重構圖片緩衝器550中。在一些實施例中,重構圖片緩衝器550是視頻編碼器500外部的儲存器。在一些實施例中,重構圖片緩衝器550是視頻編碼器500內部的儲存器。
幀内估計模塊520基於重構像素資料517執行幀内預測以產生幀内預測資料。幀內預測資料被提供給熵編碼器590以被編碼成位元流595。幀內預測資料也被幀內預測模塊525用來產生預測像素資料513。
運動估計模塊535通過產生MV以參考儲存在重構圖片緩衝器550中的先前解碼幀的像素資料來執行幀間預測。這些MV被提供給運動補償模塊530以產生預測像素資料。
視頻編碼器500不是在位元流中編碼完整的實際MV,而是使用MV預測來生成預測MV,並且用於運動補償的MV與預測MV之間的差異被編碼為殘差運動資料並儲存在位元流595中。
MV預測模塊575基於為先前編碼視頻幀而生成的參考MV,即用於執行運動補償的運動補償MV,生成預測MV。MV預測模塊575從MV緩衝器565中恢復來自先前視頻幀的參考MV。視頻編碼器500將為當前視頻幀生成的MV儲存在MV緩衝器565中作為用於生成預測MV的參考MV。
MV預測模塊575使用參考MV來創建預測MV。預測MV可以通過空間MV預測或時間MV預測來計算。熵編碼器590將預測MV與當前幀的運動補償MV(MC MV)之間的差異(殘差運動資料)編碼到位元流595中。
熵編碼器590通過使用諸如上下文自適應二進制算術編碼(CABAC)或霍夫曼編碼的熵編碼技術將各種參數和資料編碼到位元流595中。熵編碼器590將各種報頭元素、標誌連同量化變換係數512和殘差運動資料作為語法元素編碼到位元流595中。位元流595又儲存在儲存設備中或通過網絡通信媒介,例如網絡,傳輸到解碼器。
環內濾波器545對重構的像素資料517執行濾波或平滑操作以減少編碼的偽像,特別是在像素塊的邊界處。在一些實施例中,執行的濾波操作包括樣本自適應偏移(SAO)。在一些實施例中,濾波操作包括自適應環路濾波器(ALF)。
第6圖示出了視頻編碼器500的利用隱式信令實現MP-DMVR的部分。具體地,該圖示出了視頻編碼器500的運動補償模塊530的組件。如圖所示,運動補償模塊540從運動估計模塊535接收運動補償MV(MC MV)。
MP-DMVR模塊610通過使用MC MV作為L0和/或L1方向上的初始或原始MV來執行MP-DMVR處理。MP-DMVR模塊610在一次或多次細化過程中將初始MV細化為最終細化的MV。然後,恢復控制器(retrieval controller)620使用最終細化的MV來基於重構圖片緩衝器550的內容生成預測像素資料513。
MP-DMVR模塊610恢復重構圖片緩衝器550的內容。從重構圖片緩衝器550恢復的內容包括由當前細化的MV(其可以是初始MV或任何後續MV)參考的預測子(或參考塊)。恢復到的內容還可以包括當前塊和初始預測子的擴展區域。MP-DMVR模塊610可以使用恢復到的內容來計算雙邊模板615,包括雙邊模板的擴展區域。
MP-DMVR模塊610可以使用恢復到的預測子和雙邊模板615和/或它們的擴展區域來計算用於細化運動向量的成本,如上文第IV節中所描述的。MP-DMVR模塊610可以計算各種細化模式的成本,即僅L0細化(costA或costA’)、僅L1細化(costB或costB’)、以及L0+L1雙向匹配細化(costC或costC’)。計算出的成本被提供給DMVR模式選擇模塊630。
DMVR模式選擇模塊630可以基於所提供的成本來選擇三種細化模式之一。細化模式選擇的信令可以是部分隱式的,使得熵編碼器590可以使用語法元素bm_merge_flag來指示對三種細化模式之一的選擇,如上文在第III-B節中所描述的。細化模式選擇的信令也可以完全基於成本來隱含,如上面第III-A節中所描述的。當使用成本來進行選擇時,DMVR模式選擇模塊630可以不同地權衡三種不同細化模式的成本。細化模式選擇被傳送回MP-DMVR模塊610以繼續MP-DMVR操作(例如,額外的細化通道)。
第7圖概念性地說明以隱式信令執行MP-DMVR的流程700。在一些實施例中,實現編碼器500的計算設備的一個或多個處理單元(例如,處理器)通過執行儲存在計算機可讀介質中的指令來執行處理700。在一些實施例中,實現編碼器500的電子設備執行處理700。
編碼器接收(在框710處)要被編碼為視頻的當前圖片的當前塊的像素塊的資料。當前塊與參考第一參考圖片中的第一初始預測子的第一運動向量(L0 MV)和參考第二參考圖片中的第二初始預測子的第二運動向量(L1 MV)相關聯。
編碼器分別根據第一、第二和第三細化模式細化(在框720)第一和第二運動向量以最小化第一、第二和第三成本。在一些實施例中,基於由細化的第一運動向量參考的第一細化預測子與由第二運動向量參考的第二初始預測子之間的差來計算第一最小化成本(對於L0細化的CostA)。基於由第一運動向量參考的第一初始預測子與由細化的第二運動向量參考的第二細化預測子之間的差來計算第二最小化成本(僅L1細化的CostB)。第三最小化成本(L0+L1 細化的 CostC)是基於第一細化預測子和第二細化預測子之間的差異來計算的。
在一些實施例中,基於第一混合擴展區域和當前塊的相鄰區域之間的差來計算第一最小化成本(CostA'),第一混合擴展區域是由細化第一運動向量參考的第一細化預測子的擴展區域和由初始第二運動向量參考的第二初始預測子的擴展區域的加權和。第二最小化成本(CostB')是基於第二混合擴展區域和當前塊的相鄰區域之間的差來計算的,第二混合擴展區域是由細化的第二運動向量參考的第二細化預測子的擴展區域和由第一運動向量參考的第一初始預測子的擴展區域的加權和。第三最小化成本(CostC')是基於第三混合擴展區域和當前塊的相鄰區域之間的差來計算的,第三混合擴展區域是細化的第一運動向量參考的第一細化預測子的擴展區域和細化的第二運動向量所參考的第二細化的預測子的擴展區域的加權和。
在一些實施例中,在一個或多個細化通道中細化第一和第二運動向量,並且在一個細化通道或兩個細化通道之後計算第一、第二和第三成本。在第二細化通道中,針對當前塊的多個子塊中的每個子塊細化第一運動向量和第二運動向量。在第三細化通道中,通過應用雙向光流(BDOF)來細化第一和第二運動向量。
編碼器基於第一、第二和第三最小化成本的比較來選擇(在框730)細化模式。在一些實施例中,成本的比較是加權比較。該選擇可以是隱式的並且編碼器不向解碼器用信號發送任何語法元素來指示該選擇。在一些實施例中,編碼器用信號發送指示是否使用第一細化模式的語法元素(例如,bm_merge_flag);如果不是,則編碼器比較最小化的第二成本和第三成本以確定是使用第二細化模式還是第三細化模式來對當前圖片進行編碼。在一些實施例中,編碼器用信號發送指示是否使用第二細化模式的語法元素;如果不是,則編碼器比較最小化的第一和第三成本以確定是使用第一細化模式還是第三細化模式來對當前圖片進行編碼。在一些實施例中,編碼器用信號發送指示是否使用第三細化模式的語法元素;如果不是,則編碼器比較最小化的第一成本和第二成本以確定是使用第一細化模式還是第二細化模式來對當前圖片進行編碼。
編碼器通過使用所選擇的細化模式來對當前塊進行編碼(在框740處)以重構當前塊。具體地,編碼器可以通過基於選擇的細化模式修改第一運動向量和第二運動向量來生成最終細化的運動向量,並且最終細化的運動向量用於產生預測殘差並重構當前塊。 V. 示例視頻解碼器
在一些實施例中,編碼器可以用信號通知(或生成)位元流中的一個或多個語法元素,使得解碼器可以從位元流中解析所述一個或多個語法元素。
第8圖說明可實施MP-DMVR的實例視頻解碼器800。如圖所示,視頻解碼器800是圖像解碼或視頻解碼電路,其接收位元流895並將位元流的內容解碼成視頻幀的像素資料以供顯示。視頻解碼器800具有用於解碼位元流895的若干組件或模塊,包括選自逆量化模塊811、逆變換模塊810、幀內預測模塊825、運動補償模塊830、環路濾波器845、解碼圖片緩衝器850、MV緩衝器865、MV預測模塊875和解析器890的一些組件。運動補償模塊830是幀間預測模塊840的一部分。
在一些實施例中,模塊810-890是由計算設備的一個或多個處理單元(例如處理器)執行的軟體指令模塊。在一些實施例中,模塊810-890是由電子裝置的一個或多個IC實現的硬體電路模塊。儘管模塊810-890被示為單獨的模塊,但是一些模塊可以組合成單個模塊。
解析器890(或熵解碼器)接收位元流895並根據由視頻編碼或圖像編碼標准定義的語法執行初始解析。解析的語法元素包括各種頭部元素、標誌以及量化資料(或量化係數)812。解析器890通過以下方式解析出各種語法元素使用熵編碼技術,例如上下文自適應二進制算術編碼(CABAC)或霍夫曼編碼。
逆量化模塊811對量化資料(或量化係數)812進行逆量化得到變換係數,逆變換模塊810對變換係數816進行逆變換得到重構殘差信號819。將重構殘差信號819與來自幀內預測模塊825或運動補償模塊830的預測像素資料813相加一起產生解碼像素資料817。解碼像素資料由環內濾波器845過濾並儲存在解碼圖片緩衝器850中。如圖所示,在一些實施例中,解碼圖片緩衝器850是視頻解碼器800外部的儲存。在一些實施例中,解碼圖片緩衝器850是視頻解碼器800內部的儲存。
幀內預測模塊825從位元流895接收幀內預測資料,並據此從解碼圖片緩衝器850中儲存的解碼像素資料817中生成預測像素資料813。在一些實施例中,解碼像素資料817也是儲存在行緩衝器(未示出)中用於幀内預測和空間MV預測。
在一些實施例中,解碼圖片緩衝器850的內容用於顯示。顯示設備855或者恢復解碼圖片緩衝器850的內容以直接顯示,或者恢復解碼圖片緩衝器的內容到顯示緩衝器。在一些實施例中,顯示設備通過像素傳輸從解碼圖片緩衝器850接收像素值。
運動補償模塊830根據運動補償MV(MC MV)從儲存在解碼圖片緩衝器850中的解碼像素資料817產生預測像素資料813。通過將從位元流895接收的殘差運動資料與從MV預測模塊875接收的預測MV相加來解碼這些運動補償MV。
MV預測模塊875基於為解碼先前視頻幀而生成的參考MV生成預測MV,例如,用於執行運動補償的運動補償MV。MV預測模塊875從MV緩衝器865中恢復先前視頻幀的參考MV。視頻解碼器800將為解碼當前視頻幀而生成的運動補償MV儲存在MV緩衝器865中作為用於產生預測MV的參考MV。
環內濾波器845對解碼像素資料817執行濾波或平滑操作以減少編碼偽像,特別是在像素塊的邊界處。在一些實施例中,執行的濾波操作包括樣本自適應偏移(SAO)。在一些實施例中,濾波操作包括自適應環路濾波器(ALF)。
第9圖示出了視頻解碼器800的利用隱式信令實現MP-DMVR的部分。具體地,該圖示出了視頻解碼器800的運動補償模塊830的組件。如圖所示,運動補償模塊840從熵解碼器890或MV緩衝器865接收運動補償MV(MC MV)。
MP-DMVR模塊910通過使用MC MV作為L0和/或L1方向上的初始或原始MV來執行MP-DMVR處理。MP-DMVR模塊910在一次或多次細化通道(過程)中將初始MV細化為最終細化的MV。然後,恢復控制器920使用最終細化的MV來基於解碼圖片緩衝器850的內容生成預測像素資料813。
MP-DMVR模塊910恢復解碼圖片緩衝器850的內容。從解碼圖片緩衝器850恢復的內容包括由當前細化的MV(其可以是初始MV或任何後續更新MV)參考的預測子(或參考塊)。恢復到的內容還可以包括當前塊和初始預測子的擴展區域。MP-DMVR模塊910可以使用恢復到的內容來計算雙邊模板915,包括雙邊模板的擴展區域。
MP-DMVR模塊910可以使用恢復到的預測子和雙邊模板915和/或它們的擴展區域來計算用於細化運動向量的成本,如上文第IV節中所描述的。 MP-DMVR模塊910可以計算各種細化模式的成本,即僅L0細化(costA或costA’)、僅L1細化(costB或costB’)、以及L0+L1雙向匹配細化(costC或costC’)。計算出的成本被提供給DMVR模式選擇模塊930。
DMVR模式選擇模塊930可以基於所提供的成本來選擇三種細化模式之一。細化模式選擇的信令可以是部分隱式的,使得熵解碼器890可以接收語法元素bm_merge_flag以指示對三種細化模式之一的選擇,如上文在第III-B節中所描述的。細化模式選擇的信令也可以完全基於成本來隱含,如上面第III-A節中所描述的。當使用成本來進行選擇時,DMVR模式選擇模塊930可以不同地加權三種不同細化模式的成本。細化模式選擇被傳送回MP-DMVR模塊910以繼續MP-DMVR操作(例如,額外的細化通道)。
第10圖概念性地說明用於以隱式信令執行MP-DMVR的處理1000。在一些實施例中,實現解碼器800的計算設備的一個或多個處理單元(例如,處理器)通過執行儲存在計算機可讀介質中的指令來執行處理1000。在一些實施例中,實現解碼器800的電子設備執行處理1000。
解碼器接收(在框1010)要被解碼為視頻的當前圖片的當前塊的像素塊的資料。當前塊與參考第一參考圖片中的第一初始預測子的第一運動向量(L0 MV)和參考第二參考圖片中的第二初始預測子的第二運動向量(L1 MV)相關聯。
解碼器分別根據第一、第二和第三細化模式細化(在框1020)第一和第二運動向量以最小化第一、第二和第三成本。在一些實施例中,基於由細化的第一運動向量參考的第一細化預測子與由第二運動向量參考的第二初始預測子之間的差來計算第一最小化成本(對於L0細化的CostA)。基於由第一運動向量參考的第一初始預測子與由細化的第二運動向量參考的第二細化預測子之間的差來計算第二最小化成本(僅L1細化的CostB)。第三最小化成本(L0+L1 細化的 CostC)是基於第一細化預測子和第二細化預測子之間的差異來計算的。
在一些實施例中,基於第一混合擴展區域和當前塊的相鄰區域之間的差來計算第一最小化成本(CostA'),第一混合擴展區域是由細化第一運動向量參考的第一細化預測子的擴展區域和由初始第二運動向量參考的第二初始預測子的擴展區域的加權和。第二最小化成本(CostB')是基於第二混合擴展區域和當前塊的相鄰區域之間的差來計算的,第二混合擴展區域是細化的第二運動向量參考的第二細化預測子的擴展區域和由第一運動向量參考的第一初始預測子的擴展區域的加權和。第三最小化成本(CostC')是基於第三混合擴展區域和當前塊的相鄰區域之間的差來計算的,第三混合擴展區域是細化的第一運動向量參考的第一細化預測子的擴展區域和細化的第二運動向量所參考的第二細化的預測子的擴展區域的加權和。
在一些實施例中,在一個或多個細化通道中細化第一和第二運動向量,並且在一個細化通道或兩個細化通道之後計算第一、第二和第三成本。在第二次細化通道中,針對當前塊的多個子塊中的每個子塊細化第一運動向量和第二運動向量。在第三次細化通道中,通過應用雙向光流(BDOF)來細化第一和第二運動向量。
解碼器基於第一、第二和第三最小化成本的比較來選擇(在框1030)細化模式。在一些實施例中,成本的比較是加權比較。該選擇可以是隱式的並且解碼器不接收任何語法元素來指示該選擇。在一些實施例中,解碼器接收指示是否使用第一細化模式的語法元素(例如,bm_merge_flag);如果不是,則解碼器比較最小化的第二成本和第三成本以確定是使用第二細化模式還是第三細化模式來解碼當前圖片。在一些實施例中,解碼器接收指示是否使用第二細化模式的語法元素;如果不是,則解碼器比較最小化的第一和第三成本以確定是使用第一細化模式還是第三細化模式來解碼當前圖片。在一些實施例中,解碼器接收指示是否使用第三細化模式的語法元素;如果不是,則解碼器比較最小化的第一成本和第二成本以確定是使用第一細化模式還是第二細化模式來解碼當前圖片。
解碼器通過使用所選擇的細化模式來解碼(在塊1040)當前塊以重構當前塊。具體地,解碼器可以通過基於選擇的細化模式修改第一運動向量和第二運動向量來生成最終細化的運動向量,並且最終細化的運動向量用於重構當前塊。解碼器然後可以提供重構的當前塊以作為重構的當前圖片的一部分進行顯示。 VI. 示例電子系統
許多上述特徵和應用被實現為軟體處理,這些軟體處理被指定為記錄在計算機可讀儲存介質(也稱為計算機可讀介質)上的一組指令。當這些指令由一個或多個計算或處理單元(例如,一個或多個處理器、處理器核心或其他處理單元)執行時,它們會導致處理單元執行指令中指示的動作。計算機可讀介質的示例包括但不限於CD-ROM、閃存驅動器、隨機存取儲存器(RAM)芯片、硬盤驅動器、可擦除可編程只讀儲存器(EPROM)、電可擦除可編程只讀儲存器 (EEPROM)等。計算機可讀介質不包括無線或通過有線連接傳遞的載波和電子信號。
在本說明書中,術語“軟體”意味著包括駐留在只讀儲存器中的軔體或儲存在磁儲存器中的應用程序,其可以被讀入儲存器以供處理器處理。此外,在一些實施例中,多個軟體發明可以作為較大程序的子部分來實現,同時保留不同的軟體發明。在一些實施例中,多個軟體發明也可以被實現為單獨的程序。最後,一起實現這裡描述的軟體發明的單獨程序的任何組合都在本公開的範圍內。在一些實施例中,當軟體程序被安裝以在一個或多個電子系統上運行時,定義了一個或多個執行和執行軟體程序的操作的特定機器實現。
第11圖概念性地圖示了實現本公開的一些實施例的電子系統1100。電子系統1100可以是計算機(例如台式計算機、個人計算機、平板計算機等)、電話、PDA或任何其他種類的電子設備。這樣的電子系統包括各種類型的計算機可讀介質和用於各種其他類型的計算機可讀介質的接口。電子系統1100包括總線1105、處理單元1110、圖形處理單元(GPU)1115、系統儲存器1120、網絡1125、只讀儲存器1130、永久儲存設備1135、輸入設備1140和輸出設備1145。
總線1105共同表示通信連接電子系統1100的眾多內部設備的所有系統、外圍設備和芯片組總線。例如,總線1105通信連接處理單元1110和GPU1115,只讀儲存器1130、系統儲存器1120和永久儲存設備1135。
從這些不同的儲存器單元,處理單元1110恢復要執行的指令和要處理的資料以便執行本公開的處理。在不同的實施例中,處理單元可以是單處理器或多核處理器。一些指令被傳遞到GPU1115並由其執行。GPU1115可以卸載各種計算或補充由處理單元1110提供的圖像處理。
只讀儲存器(ROM)1130儲存由處理單元1110和電子系統的其他模塊使用的靜態資料和指令。另一方面,永久儲存設備1135是讀寫儲存設備。該設備是即使在電子系統1100關閉時也儲存指令和資料的非易失性儲存單元。本公開的一些實施例使用大容量儲存設備(例如磁盤或光盤及其相應的磁盤驅動器)作為永久儲存設備1135。
其他實施例使用可移動儲存設備(例如軟盤、閃存設備等及其對應的磁盤驅動器)作為永久儲存設備。與永久儲存設備1135一樣,系統儲存器1120是讀寫儲存設備。然而,與儲存設備1135不同,系統儲存器1120是易失性讀寫儲存器,例如隨機存取儲存器。系統儲存器1120儲存處理器在運行時使用的一些指令和資料。在一些實施例中,根據本公開的處理儲存在系統儲存器1120、永久儲存設備1135和/或只讀儲存器1130中。例如,各種儲存器單元包括用於處理多媒體剪輯的指令 與一些實施例。從這些不同的儲存器單元,處理單元1110恢復要執行的指令和要處理的資料以便執行一些實施例的處理。
總線1105還連接到輸入和輸出設備1140和1145。輸入設備1140使用戶能夠向電子系統傳送信息和選擇命令。輸入設備1140包括字母數字鍵盤和d指點設備(也稱為“光標控制設備”)、相機(例如,網絡攝像頭)、麥克風或用於接收語音命令的類似設備等。輸出設備1145顯示由電子系統生成的圖像或以其他方式輸出資料。輸出設備1145包括打印機和顯示設備,例如陰極射線管(CRT)或液晶顯示器(LCD),以及揚聲器或類似的音頻輸出設備。一些實施例包括同時用作輸入和輸出設備的設備,例如觸摸屏。
最後,如第11圖所示,總線1105還通過網絡適配器(未示出)將電子系統1100耦合到網絡1125。以這種方式,計算機可以是計算機網絡的一部分,例如局域網(“LAN”)、廣域網(“WAN”)或內聯網,或網絡網絡。電子系統1100的任何或所有組件可以結合本公開使用。
一些實施例包括電子元件,例如微處理器、儲存器和儲存器,其將計算機程序指令儲存在機器可讀或計算機可讀介質(或者稱為計算機可讀儲存介質、機器可讀介質或機器可讀儲存介質)中。此類計算機可讀介質的一些示例包括RAM、ROM、只讀光盤 (CD-ROM)、可記錄光盤(CD-R)、可重寫光盤 (CD-RW)、只讀數字多功能光盤(例如DVD-ROM,雙層DVD-ROM),各種可刻錄/可重寫DVD(例如,DVD-RAM,DVD-RW,DVD+RW,等等), 閃存(例如,SD卡,mini-SD卡、微型SD 卡等)、磁性和/或固態硬盤驅動器、只讀和可刻錄Blu-Ray® 光盤、超密度光盤、任何其他光學或磁性介質以及軟盤。計算機可讀介質可以儲存可由至少一個處理單元執行並且包括用於執行各種操作的指令集的計算機程序。計算機程序或計算機代碼的示例包括機器代碼,例如由編譯器生成的機器代碼,以及包括由計算機、電子組件或使用解釋器的微處理器執行的高級代碼的文件。
雖然上述討論主要涉及執行軟體的微處理器或多核處理器,但上述許多功能和應用都是由一個或多個集成電路執行的,例如專用集成電路 (ASIC) 或現場可編程門陣列 ( FPGA)。在一些實施例中,這樣的集成電路執行儲存在電路本身上的指令。此外,一些實施例執行儲存在可編程邏輯設備(PLD)、ROM或RAM設備中的軟體。
如本說明書和本申請的任何請求項中所用,術語“計算機”、“服務器”、“處理器”和“儲存器”均指電子或其他技術設備。 這些術語不包括人或人群。出於說明書的目的,術語顯示或顯示表示在電子設備上顯示。如本說明書和本申請的任何請求項中所使用,術語“計算機可讀介質”、“計算機可讀介質”和“機器可讀介質”完全限於以可讀形式儲存信息的有形物理對象。這些術語不包括任何無線信號、有線下載信號和任何其他臨時信號。
儘管已經參考許多具體細節描述了本公開,但是本領域的普通技術人員將認識到,在不脫離本公開的精神的情況下,可以以其他具體形式來實施本公開。此外,多個附圖(包括第7圖和第10圖)概念性地說明了處理。這些處理的特定操作可能不會按照所示和描述的確切順序執行。具體操作可以不在一個連續的系列操作中執行,並且可以在不同的實施例中執行不同的具體操作。此外,該處理可以使用多個子處理或作為更大的宏處理的一部分來實現。因此,本領域的普通技術人員將理解本公開不受前述說明性細節的限制,而是由所附請求項限定。 補充筆記
此處描述的主題有時說明包含在不同的其他組件內或與不同的其他組件連接的不同組件。應當理解,這樣描繪的架構僅僅是示例,並且實際上可以實現實現相同功能的許多其他架構。從概念上講,實現相同功能的組件的任何佈置都被有效地“關聯”,從而實現了所需的功能。因此,本文中的任何兩個組件組合以實現無論架構或中間組件如何,都可以將特定功能視為彼此“關聯”,從而實現所需的功能。同樣,如此關聯的任何兩個組件也可被視為彼此“可操作地連接”或“可操作地耦合”以實現期望的功能,並且能夠如此關聯的任何兩個組件也可被視為“可操作地連接” 耦合”,彼此實現所需的功能。可操作地耦合的具體示例包括但不限於物理上可配合和/或物理上交互的組件和/或無線上可交互和/或無線上交互的組件和/或邏輯上交互和/或邏輯上可交互的組件。
此外,關於本文中基本上任何復數和/或單數術語的使用,本領域技術人員可以根據上下文和/或從復數翻譯成單數和/或從單數翻譯成複數。 應用。為了清楚起見,可以在本文中明確地闡述各種單數/複數排列。
此外,本領域技術人員將理解,一般而言,本文使用的術語,尤其是所附請求項中使用的術語,例如所附請求項的主體,通常意在作為“開放”術語,例如,術語“包含”應解釋為“包括但不限於”、“具有”應解釋為“至少有”。本領域的技術人員將進一步理解,如果意圖引入特定數量的請求項陳述,則該意圖將在請求項中明確地陳述,並且在沒有該陳述的情況下不存在該意圖。例如,為了幫助理解,以下所附請求項可能包含使用介紹性短語“至少一個”和“一個或多個”來介紹請求項的敘述。然而,使用此類短語不應被解釋為暗示通過不定冠詞“一”或“一個”引入的請求項將包含此類引入的請求項的任何特定請求項限制為僅包含一個此類陳述的實現,即使當同一請求項包括介紹性短語“一個或多個”或“至少一個”和不定冠詞如“一個”,應解釋為“至少一個”或“一個或多個”。這同樣適用於使用定冠詞來引入索賠陳述。此外,即使明確引用了引入的請求項記載的具體數目,本領域技術人員將認識到,這種記載應被解釋為至少表示引用的數目,例如,“兩次迭代”的引用,而不包含其他修飾語,表示至少兩次迭代,或者兩次或更多次迭代。此外,在那些約定使用類似於“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”的可能性。
從上文中可以理解,為了說明的目的,本文已經描述了本公開的各種實施方式,並且在不脫離本公開的範圍和精神的情況下可以進行各種修改。因此,本文公開的各種實施方式並非旨在限制,真正的範圍和精神由所附請求項指示。
110、111、210、211、310、311、410、411:參考圖片 120、121、220、221、320、321、420、421:初始參考塊 130、131、230、231、330、331、430、431:更新的參考塊 101、201、301、401:當前圖片 100、200、300、400:當前塊 500:視頻編碼器 505:視頻源 595、895:位元流 510:變換模塊 511:量化模塊 514、811:逆量化模塊 515、810:逆變換模塊 520:幀內估計模塊 525、825:幀內預測模塊 530、830:運動補償模塊 535:運動估計模塊 545、845:環路濾波器 550:重構圖片緩衝器 565、865:MV緩衝器 575:MV預測模塊 590:熵編碼器 513:預測像素資料 508:殘差信號 512、812:量化係數 519:重構殘差 513:預測像素資料 517:重構像素資料 610、910:MP-DMVR模塊 620、920:恢復控制器(retrieval controller) 630、930:DMVR模式選擇模塊 700、1000:處理 710-740、1010-1040:步驟 800:視頻解碼器 850:解碼圖片緩衝器 875:MV預測模塊 890:解析器 840:幀間預測模塊 816:變換係數 819:重構殘差信號 813:預測像素資料 817:解碼像素資料 1100:電子系統 1105:總線 1110:處理單元 1115:圖形處理單元(GPU) 1120:系統儲存器 1125:網絡 1130:只讀儲存器 1135:永久儲存設備 1140:輸入設備 1145:輸出設備
所包含的附圖是為了提供對本公開的進一步理解,並且併入並構成本公開的一部分。附圖圖示了本公開的實施方式,並且與描述一起用於解釋本公開的原理。值得注意的是,附圖不一定是按比例繪製的,因為為了清楚地說明本公開的概念,一些組件可能被示出為與實際實施中的尺寸不成比例。 第1圖概念性地示出了通過雙向匹配對預測候選進行的細化。 第2A-B圖概念性地示出了在自適應解碼器端運動向量細化(DMVR)下細化雙向預測MV。 第3A-C圖概念性地示出了基於雙向匹配的MV細化的各種類型或模式。 第4A-B圖概念性地示出了基於由列表0和列表1的細化MV引用的擴展預測塊來生成擴展雙邊模板。 第5圖示出了可以實現多通道DMVR的示例視頻編碼器。 第6圖示出了利用隱式信令實現多通道DMVR的視頻編碼器的部分。 第7圖概念性地示出了用於利用隱式信令執行多通道DMVR的過程。 第8圖示出了可以實現多通道DMVR的示例視頻解碼器。 第9圖示出了利用隱式信令實現多通道DMVR的視頻解碼器的部分。 第10圖概念性地示出了用於利用隱式信令執行多通道DMVR的過程。 第11圖概念性地示出了用於實現本公開的一些實施例的電子系統。
1010-1040:步驟

Claims (13)

  1. 一種視頻編碼方法, 包括: 接收作為視頻的當前圖片的當前塊的要編碼或解碼的像素塊的資料,該當前塊與參考第一參考圖片中的第一初始預測子的第一運動向量和參考第二參考圖片中的第二初始預測子的第二運動向量相關聯。; 分別根據第一、第二和第三細化模式細化該第一和第二運動向量以最小化第一、第二和第三成本; 基於該第一、第二和第三最小化成本的比較來選擇細化模式;以及 通過使用選擇的細化模式對該當前塊進行編碼或解碼,以修改用於重構該當前塊的第一運動向量和第二運動向量。
  2. 如請求項1所述的視頻編碼方法,其中在一個或多個細化通道中細化該第一和第二運動向量,其中在一個細化通道之後計算該第一、第二和第三成本。
  3. 如請求項1所述的視頻編碼方法,其中在一個或多個細化通道中細化所述第一和第二運動向量,其中在兩個細化通道之後計算該第一、第二和第三成本。
  4. 如請求項3所述的視頻編碼方法,其中在第二細化通道期間,針對該當前塊的多個子塊中的每個子塊細化第一運動向量和第二運動向量, 其中在第三細化通道期間,通過應用雙向光流(BDOF)來細化該第一和第二運動向量。
  5. 如請求項1所述的視頻編碼方法,其中,在比較之前對該第一最小化成本、第二最小化成本和第三最小化成本進行加權。
  6. 如請求項1所述的視頻編碼方法,其特徵在於: 該第一最小化成本是基於由細化的第一運動向量參考的第一細化預測子與第二初始預測子之間的差來計算的, 基於細化的第二運動向量參考的第二細化預測子與該第一初始預測子之間的差來計算該第二最小化成本,並且 基於該第一細化預測子和該第二細化預測子之間的差來計算該第三最小化成本。
  7. 如請求項6所述的視頻編碼方法,還包括: 發信號通知或接收指示是否使用該第一細化模式的語法元素;以及 比較該第二最小化成本和該第三最小化成本以確定是使用該第二細化模式還是該第三細化模式來對該當前圖片進行編碼或解碼。
  8. 如請求項6所述的視頻編碼方法,還包括: 發信號通知或接收指示是否使用該第二細化模式的語法元素;以及 比較該第一最小化成本和該第三最小化成本以確定是使用該第一細化模式還是該第三細化模式來對該當前圖片進行編碼或解碼。
  9. 如請求項6所述的視頻編碼方法,還包括: 發信號通知或接收指示是否使用第三細化模式的語法元素;以及 比較該第一最小化成本和該第二最小化成本以確定是使用該第一細化模式還是該第二細化模式來對該當前圖片進行編碼或解碼。
  10. 如請求項1所述的視頻編碼方法,其中: 基於第一混合擴展區域和該當前塊的相鄰區域之間的差來計算該第一最小化成本,其中該第一混合擴展區域是由細化第一運動向量參考的第一細化預測子的擴展區域和該第二初始預測子的擴展區域加權和, 基於第二混合擴展區域和該當前塊的相鄰區域之間的差來計算第二最小化成本,其中該第二混合擴展區域是由細化的第二運動向量參考的第二細化預測子的擴展區域和該第一初始預測子的擴展區域的加權和,以及 基於第三混合擴展區域與該當前塊的相鄰區域之間的差來計算該第三最小化成本,其中該第三混合擴展區域是第一細化預測子的擴展區域與第二細化預測子的擴展區域的加權和。
  11. 一種電子設備,包括: 視頻編解碼器電路,被配置為執行包括以下操作: 接收要作為視頻的當前圖片的當前塊的編碼或解碼的像素塊的資料,該當前塊與參考第一參考圖片中的第一初始預測子的第一運動向量和參考第二參考圖片中的第二初始預測子的第二運動向量相關聯; 分別根據第一、第二和第三細化模式細化第一和第二運動向量以最小化第一、第二和第三成本; 基於第一、第二和第三最小化成本的比較來選擇細化模式;以及 通過使用所選擇的細化模式來修改該當前塊的該第一運動向量和該第二運動向量來編碼或解碼該當前塊,以重構該當前塊。
  12. 一種視頻解碼方法,包括: 接收要被解碼為視頻的當前圖片的當前塊的像素塊的資料,該當前塊與參考第一參考圖片中的第一初始預測子的第一運動向量和參考第二參考圖片中的第二初始預測子的第二運動向量相關聯; 分別根據第一、第二和第三細化模式細化該第一和第二運動向量以最小化第一、第二和第三成本; 基於第一、第二和第三最小化成本的比較來選擇細化模式;以及 通過使用所選擇的細化模式對該當前塊進行解碼,以修改用於重構該當前塊的該第一運動向量和該第二運動向量。
  13. 一種視頻編碼方法,包括: 接收要被編碼為視頻的當前圖片的當前塊的像素塊的資料,該當前塊與參考第一參考圖片中的第一初始預測子的第一運動向量和參考第二參考圖片中的第二初始預測子的第二運動向量相關聯; 分別根據第一、第二和第三細化模式細化第一和第二運動向量以最小化第一、第二和第三成本; 基於第一、第二和第三最小化成本的比較來選擇細化模式;以及 通過使用選擇的細化模式對該當前塊進行編碼,以修改用於重構該當前塊的該第一運動向量和該第二運動向量。
TW112112899A 2022-04-06 2023-04-06 隱式多通道解碼器端運動向量細化 TW202408242A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US202263327913P 2022-04-06 2022-04-06
US63/327,913 2022-04-06
WOPCT/CN2023/086633 2023-04-06
PCT/CN2023/086633 WO2023193769A1 (en) 2022-04-06 2023-04-06 Implicit multi-pass decoder-side motion vector refinement

Publications (1)

Publication Number Publication Date
TW202408242A true TW202408242A (zh) 2024-02-16

Family

ID=88244080

Family Applications (1)

Application Number Title Priority Date Filing Date
TW112112899A TW202408242A (zh) 2022-04-06 2023-04-06 隱式多通道解碼器端運動向量細化

Country Status (2)

Country Link
TW (1) TW202408242A (zh)
WO (1) WO2023193769A1 (zh)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11310526B2 (en) * 2018-01-26 2022-04-19 Mediatek Inc. Hardware friendly constrained motion vector refinement
US10779002B2 (en) * 2018-04-17 2020-09-15 Qualcomm Incorporated Limitation of the MVP derivation based on decoder-side motion vector derivation
CN114845102B (zh) * 2019-02-22 2023-07-07 华为技术有限公司 光流修正的提前终止
US20200402546A1 (en) * 2019-06-24 2020-12-24 Seagate Technology Llc Reducing base deck porosity

Also Published As

Publication number Publication date
WO2023193769A1 (en) 2023-10-12

Similar Documents

Publication Publication Date Title
TWI737201B (zh) 用於發信合併工具的方法及裝置
TWI749467B (zh) 幀內塊複製合併列表簡化
TW201832556A (zh) 多重假設之合併模式
TWI830629B (zh) 轉換省略區塊之傳訊編碼技術
TWI752897B (zh) 運動向量差值導數傳訊技術
JP2008259174A (ja) コンピュータにより実施される動きベクトルのマッピング方法、動きベクトルをマッピングするトランスコーダ及び動きベクトルをマッピングするデコーダ
TW202408242A (zh) 隱式多通道解碼器端運動向量細化
TWI836792B (zh) 視訊編解碼方法及相關裝置
TWI834269B (zh) 視訊處理方法及裝置
TW202341740A (zh) 視訊編解碼方法及其電子裝置
WO2023143173A1 (en) Multi-pass decoder-side motion vector refinement
TWI832602B (zh) 轉換係數符號的熵編碼
WO2023198187A1 (en) Template-based intra mode derivation and prediction
WO2023202569A1 (en) Extended template matching for video coding
TW202349954A (zh) 自適應編解碼的圖像以及視訊資料
TW202402054A (zh) 用於候選清單的相似性閾值
TW202404354A (zh) 利用卷積模型的預測改進
TW202327361A (zh) 視訊編解碼方法及相關裝置
TW202349952A (zh) 視訊編解碼方法及其裝置
TW202412526A (zh) 視訊編解碼中的出界檢查
TW202406350A (zh) 統一的交叉分量模型推導
TW202402057A (zh) 視訊處理方法及裝置
TW202406334A (zh) 電子設備和視訊編解碼的方法
TW202335499A (zh) 多模型跨分量線性模型預測
TW202315405A (zh) 視訊編解碼方法及其裝置