CN116171577A - 深度预测修正 - Google Patents

深度预测修正 Download PDF

Info

Publication number
CN116171577A
CN116171577A CN202180062753.3A CN202180062753A CN116171577A CN 116171577 A CN116171577 A CN 116171577A CN 202180062753 A CN202180062753 A CN 202180062753A CN 116171577 A CN116171577 A CN 116171577A
Authority
CN
China
Prior art keywords
block
prediction
neural network
region
motion
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202180062753.3A
Other languages
English (en)
Inventor
F·加尔平
P·博尔德斯
T·杜马斯
K·纳赛尔
帕维尔·尼基丁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
InterDigital CE Patent Holdings SAS
Original Assignee
Interactive Digital Vc Holdings France Ltd
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 Interactive Digital Vc Holdings France Ltd filed Critical Interactive Digital Vc Holdings France Ltd
Publication of CN116171577A publication Critical patent/CN116171577A/zh
Pending legal-status Critical Current

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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/002Image coding using neural networks
    • 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/124Quantisation
    • 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/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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

公开了一种用于深度预测修正的方法和装置。获得图片的块的第一运动补偿区域和该块的第二区域。使用神经网络确定该块的预测,该神经网络使用该第一运动补偿区域和该第二区域。

Description

深度预测修正
技术领域
本发明实施方案整体涉及一种用于视频编码或解码中的预测修正的方法和装置。
背景技术
为了实现高压缩效率,图像和视频编码方案通常采用预测和变换来利用视频内容中的空间和时间冗余。一般来讲,帧内或帧间预测用于利用图像内或图像间相关性,然后对在原始块与预测块之间的差异(通常表示为预测误差或预测残差)进行变换、量化和熵编码。为了重构视频,通过对应于熵编码、量化、变换和预测的逆过程对压缩数据进行解码。
发明内容
根据实施方案,提供了一种用于视频编码的方法。此类方法包括:获得图片的块的第一运动补偿区域以及获得所述块的第二区域,使用神经网络确定所述块的预测,所述神经网络使用所述第一运动补偿区域和所述第二区域,以及基于所述预测对所述块进行编码。
根据另一实施方案,提供了一种用于视频编码的装置,所述装置包括一个或多个处理器,其中所述一个或多个处理器被配置为获得图片的块的第一运动补偿区域以及获得所述块的第二区域,使用神经网络确定所述块的预测,所述神经网络使用所述第一运动补偿区域和所述第二区域,以及基于所述预测对所述块进行编码。
根据另一实施方案,提供了一种用于视频编码的装置,所述装置包括:用于获得图片的块的第一运动补偿区域以及获得所述块的第二区域的装置、用于使用神经网络确定所述块的预测的装置以及用于基于所述预测对所述块进行编码的装置,所述神经网络使用所述第一运动补偿区域和所述第二区域。
根据实施方案,提供了一种用于视频解码的方法。此类方法包括:获得图片的块的第一运动补偿区域以及获得所述块的第二区域,使用神经网络确定所述块的预测,所述神经网络使用所述第一运动补偿区域和所述第二区域,以及基于所述预测对所述块进行解码。
根据另一实施方案,提供了一种用于视频解码的装置,所述装置包括一个或多个处理器,其中所述一个或多个处理器被配置为获得图片的块的第一运动补偿区域以及获得所述块的第二区域,使用神经网络确定所述块的预测,所述神经网络使用所述第一运动补偿区域和所述第二区域,以及基于所述预测对所述块进行解码。
根据另一实施方案,提供了一种用于视频解码的装置,所述装置包括:用于获得图片的块的第一运动补偿区域以及获得所述块的第二区域的装置、用于使用神经网络确定所述块的预测的装置以及用于基于所述预测对所述块进行解码的装置,所述神经网络使用所述第一运动补偿区域和所述第二区域。
根据上述任一实施方案的变型,所述预测由所述神经网络输出。根据另一变型,使用神经网络确定所述块的预测包括:使用所述神经网络获得所述块的预测修正参数图以及至少基于所述第一运动补偿区域和所述预测修正参数图来获得所述块的预测。
一个或多个实施方案还提供了一种计算机程序,该计算机程序包括指令,该指令在由一个或多个处理器执行时使该一个或多个处理器执行根据上述任一实施方案中的编码方法或解码方法。
本发明实施方案中的一个或多个实施方案还提供一种计算机可读存储介质,该计算机可读存储介质具有存储在其上的用于根据上述方法中的任一种方法对视频数据进行编码或解码的指令。
一个或多个实施方案还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有根据上述方法中的任一种方法生成的比特流。
一个或多个实施方案还提供了一种用于发射或接收根据上述方法中的任一种方法生成的比特流的方法和装置。
附图说明
图1示出了可实现本发明实施方案各方面的***的框图。
图2示出了视频编码器的实施方案的框图。
图3示出了视频解码器的实施方案的框图。
图4示出了VVC草案5中的解码端运动向量修正(DMVR)。
图5A示出了基于块的视频编码方案中的帧内预测。
图5B示出了基于块的视频编码方案中的帧间预测。
图6A、图6B和图6C示出了在联合探索模型(JEM)和VVC参考软件中,分别针对正方形编码单元、矩形编码单元和基于子块的预测,从相邻的重构样本和以运动向量平移的对应参考样本中导出局部照明补偿(LIC)参数的示例。
图7示出了在双向预测的情况下LIC参数的导出和对于每个预测L0和L1参考列表的应用的示例。
图8A示出了根据实施方案的用于确定图片的块的预测的示例性方法。
图8B示出了根据另一实施方案的用于确定图片的块的预测的示例性方法。
图9示出了根据实施方案的用于使用DNN导出加权参数的方法。
图10示出了根据实施方案的完全卷积网络的示例,
图11示出了根据另一实施方案的完全卷积网络的另一示例,
图12示出了根据实施方案的运动场扩展,
图13示出了根据实施方案的用于图9的方法的示例性输入,
图14示出了根据另一实施方案的用于图9的方法的示例性输入,
图15示出了根据实施方案的用于基于运动场修正DNN和混合预测DNN获得预测的方法。
图16示出了根据实施方案的用于导出照明补偿参数的方法。
图17示出了根据另一实施方案的用于导出照明补偿参数的方法。
图18示出了根据实施方案的用于单向预测的照明补偿估计器的示例性输入。
图19示出了根据实施方案的在单向预测的情况下跨网络的张量形状的示例性图。
图20示出了根据另一实施方案的用于照明补偿参数导出的方法。
图21示出了根据实施方案的联合解码端预测修正过程。
图22示出了根据另一实施方案的联合解码端预测修正过程。
图23示出了根据实施方案的基于DNN的运动修正和基于DNN的预测修正过程的联合训练,
图24示出了根据本原理的示例的通过通信网络进行通信的两个远程设备。
图25示出了根据本原理的示例的信号语法。
图26示出了根据实施方案的用于发射信号的示例性方法。
图27示出了在双向光流中使用的扩展CU区域的示例。
图28示出了根据实施方案的用于导出混合预测参数的方法。
图29示出了根据实施方案的用于确定混合预测块的方法。
图30示出了输入参考放大块创建的示例。
图31示出了浮点NN的输入和输出的归一化和去归一化操作的示例。
图32示出了用于确定预测校正的小卷积神经网络的示例。
图33示出了用于确定预测校正的包括具有级联的跳跃连接的卷积神经网络的另一示例。
图34示出了用于确定预测校正的包括具有相加的跳跃连接的卷积神经网络的另一示例。
图35示出了用于确定预测校正的包括具有分割和相加的跳跃连接的卷积神经网络的另一示例。
图36示出了用于确定预测校正的具有子块计算的卷积神经网络的另一示例。
图37示出了用于确定预测校正的具有多分辨率项计算的卷积神经网络的另一示例。
图38示出了用于确定预测校正的具有多大小项计算的卷积神经网络的另一示例。
图39示出了根据另一变型的用于确定预测校正的具有多大小项计算的卷积神经网络的另一示例。
图40示出了根据实施方案的用于确定混合预测块的方法。
图41示出了用于重构块的参考帧中的不对称性的示例。
图42示出了用于确定预测校正的包括具有级联的跳跃连接的卷积神经网络的另一示例。
图43示出了用于确定预测校正的包括具有级联的跳跃连接的卷积神经网络的另一示例。
具体实施方式
图1示出了可实现各种方面和实施方案的***的示例性框图。***100可体现为一种设备,该设备包括下文所述的各种部件,并且被配置为执行本申请所述各方面中的一个或多个方面。此类设备的示例包括但不限于各种电子设备,诸如个人计算机、膝上型计算机、智能电话、平板电脑、数字多媒体机顶盒、数字电视机接收器、个人视频录制***、连接的家用电器和服务器。***100的元件可单独地或组合地体现在单个集成电路、多个IC和/或分立部件中。例如,在至少一个实施方案中,***100的处理和编码器/解码器元件分布在多个IC和/或分立部件上。在各种实施方案中,***100经由例如通信总线或通过专用输入和/或输出端口通信耦合到其他***或其他电子设备。在各种实施方案中,***100被配置为实现本申请所述的一个或多个方面。
***100包括至少一个处理器110,该至少一个处理器被配置为执行加载到其中的指令,以用于实现例如本申请所述的各个方面。处理器110可包括嵌入式存储器、输入输出接口和如本领域已知的各种其他电路。***100包括至少一个存储器120(例如易失性存储器设备和/或非易失性存储器设备)。***100包括存储设备140,该存储设备可包括非易失性存储器和/或易失性存储器,包括但不限于EEPROM、ROM、PROM、RAM、DRAM、SRAM、闪存、磁盘驱动器和/或光盘驱动器。作为非限制性示例,存储设备140可包括内部存储设备、附接存储设备和/或网络可访问的存储设备。
***100包括编码器/解码器模块130,该编码器/解码器模块被配置为例如处理数据以提供编码视频或解码视频,并且编码器/解码器模块130可包括其自身的处理器和存储器。编码器/解码器模块130表示可被包括在设备中以执行编码和/或解码功能的模块。众所周知,设备可包括编码模块和解码模块中的一者或两者。另外,编码器/解码器模块130可被实现为***100的独立元件,或可被结合在处理器110内作为本领域技术人员已知的硬件和软件的组合。
要加载到处理器110或编码器/解码器130上以执行本申请中所述的各个方面的程序代码可存储在存储设备140中,并且随后加载到存储器120上以供处理器110执行。根据各种实施方案,处理器110、存储器120、存储设备140和编码器/解码器模块130中的一者或多者可在本申请中所述过程的执行期间存储各个项目中的一个或多个项目。此类存储项目可包括但不限于输入视频、解码视频或解码视频的部分、比特流、矩阵、变量以及处理等式、公式、运算和运算逻辑的中间或最终结果。
在若干实施方案中,处理器110和/或编码器/解码器模块130内部的存储器用于存储指令和提供工作存储器以用于在编码或解码期间需要的处理。然而,在其他实施方案中,在处理设备外部的存储器(例如,处理设备可以是处理器110或编码器/解码器模块130)用于这些功能中的一个或多个功能。外部存储器可以是存储器120和/或存储设备140,例如动态易失性存储器和/或非易失性闪存存储器。在若干实施方案中,外部非易失性闪存存储器用于存储电视机的操作***。在至少一个实施方案中,例如RAM的快速外部动态易失性存储器被用作用于视频编码和解码操作的工作存储器,例如用于MPEG-2、HEVC或VVC。
如块105中所指示,可通过各种输入设备提供对***100的元件的输入。此类输入设备包括但不限于:(i)接收例如由广播器通过无线电
发射的RF信号的RF部分;(ii)复合输入端子;(iii)USB输入端子和/或(iv)HDMI输入端子。
在各种实施方案中,块105的输入设备具有本领域已知的相关联的相应输入处理元件。例如,RF部分可与适于以下项的元件相关联:(i)选择期望的频率(也称为选择信号,或将信号频带限制到一个频带),(ii)下变频选择的信号,(iii)再次频带限制到更窄频带以选择(例如)在某些实施方案中可称为信道的信号频带,(iv)解调经下变频和频带限制的信号,(v)执行纠错,以及(vi)解复用以选择期望的数据包流。各种实施方案的RF部分包括用于执行这些功能的一个或多个元件,例如频率选择器、信号选择器、频带限制器、信道选择器、滤波器、下变频器、解调器、纠错器和解复用器。RF部分可包含执行这些功能中的各种功能的调谐器,这些功能包含例如下变频接收信号至更低频率(例如,中频或近基带频率)或至基带。在一个机顶盒实施方案中,RF部分及其相关联的输入处理元件接收通过有线(例如,电缆)介质发射的RF信号,并且通过滤波、下变频和再次滤波至期望的频带来执行频率选择。各种实施方案重新布置上述(和其他)元件的顺序,移除这些元件中的一些元件,和/或添加执行类似或不同功能的其他元件。添加元件可包括在现有元件之间***元件,例如,***放大器和模拟-数字转换器。在各种实施方案中,RF部分包括天线。
另外,USB和/或HDMI端子可包括用于跨USB和/或HDMI连接将***100连接到其他电子设备的相应接口处理器。应当理解,输入处理(例如,Reed-Solomon纠错)的各个方面可根据需要在例如单独的输入处理IC内或在处理器110内实现。类似地,USB或HDMI接口处理的各方面可根据需要在单独的接口IC内或在处理器110内实现。经解调、纠错和解复用的流被提供给各种处理元件,包括例如处理器110和编码器/解码器130,该编码器/解码器与存储器和存储元件结合操作以根据需要处理数据流以呈现在输出设备上。
***100的各种元件可设置在集成外壳内。在集成外壳内,各种元件可使用合适的连接布置115(例如,本领域已知的内部总线,包括I2C总线、布线和印刷电路板)进行互连并在其间发射数据。
***100包括能够经由通信信道190与其他设备通信的通信接口150。通信接口150可包括但不限于被配置为通过通信信道190发射和接收数据的收发器。通信接口150可包括但不限于调制解调器或网卡,并且通信信道190可在例如有线和/或无线介质内实施。
在各种实施方案中,使用如IEEE 802.11等Wi-Fi网络将数据流式传输到***100。这些实施方案中的Wi-Fi信号通过适用于Wi-Fi通信的通信信道190和通信接口150进行接收。这些实施方案中的通信信道190通常连接到接入点或路由器,该接入点或路由器提供对包括互联网的外部网络的访问,以允许流式应用和其他OTT通信。其他实施方案使用机顶盒向***100提供流传输数据,该机顶盒通过输入框105的HDMI连接来递送数据。其他实施方案使用输入框105的RF连接向***100提供流传输数据。
***100可向各种输出设备(包括显示器165、扬声器175和其他***设备185)提供输出信号。在实施方案的各种示例中,其他***设备185包括以下中的一者或多者:独立DVR、磁盘播放器、立体音响***、照明***和基于***100的输出提供功能的其他设备。在各种实施方案中,控制信号通过信令(如AV.Link、CEC或其他通信协议)在***100与显示器165、扬声器175或其他***设备185之间传送,该通信协议能够在有或没有用户干预的情况下实现设备到设备控制。这些输出设备可通过相应的接口160、170和180经由专用连接通信地耦接到***100。另选地,输出设备可使用通信信道190经由通信接口150连接到***100。显示器165和扬声器175可与电子设备(例如,电视机)中的***100的其他部件集成在单个单元中。在各种实施方案中,显示器接口160包括显示器驱动器,例如,定时控制器(T Con)芯片。
另选地,例如,如果输入105的RF部分是单独机顶盒的一部分,则显示器165和扬声器175可与其他部件中的一个或多个部件分开。在显示器165和扬声器175为外部部件的各种实施方案中,输出信号可经由专用输出连接(包括例如HDMI端口、USB端口或COMP输出)来提供。
图2示出了示例性视频编码器200,如高效视频编码(HEVC)编码器。图2还可以示出对HEVC标准进行改进的编码器或采用类似于HEVC的技术的编码器,如通过联合视频探索团队(JVET)开发的多功能视频编码(VVC)编码器。
在本申请中,术语“重构”和“解码”可以互换使用,术语“经编码”或“编码”可以互换使用,术语“像素”或“样本”可以互换使用,并且术语“图像”、“图片”和“帧”可以互换使用。
在进行编码之前,视频序列可经过预编码处理(201),例如,将颜色变换应用于输入的彩色图片(例如,从RGB 4:4:4转换到YCbCr 4:2:0),或执行输入图片分量的重新映射,以便获取更能弹性应对压缩的信号分布(例如,使用颜色分量中的一个颜色分量的直方图均衡化)。元数据可与预处理相关联并且附加到比特流。
如下所述,在编码器200中,图片由编码器元件进行编码。在例如CU的单元中对待编码的图片进行分区(202)和处理。例如,使用帧内模式或帧间模式对每个单元进行编码。当以帧内模式对单元进行编码时,该单元执行帧内预测(260)。在帧间模式中,执行运动估计(275)和补偿(270)。编码器决定(205)使用帧内模式或帧间模式中的哪一者对单元进行编码,以及通过例如预测模式标志来指示帧内/帧间决策。编码器还可以混合(263)帧内预测结果和帧间预测结果,或混合来自不同帧内/帧间预测方法的结果。
例如,通过从初始图像块减去(210)预测块来计算预测残差。运动修正模块(272)使用已经可用的参考图片,以便在不参考原始块的情况下修正块的运动场。区域的运动场可以被认为是具有该区域的所有像素的运动向量的集合。如果运动向量基于子块,则运动场也可以表示为区域中的所有子块运动向量的集合(子块内的所有像素具有相同的运动向量,并且子块与子块之间的运动向量可能不同)。如果单个运动向量用于该区域,则该区域的运动场也可以由单个运动向量(针对区域中的所有像素的相同运动向量)表示。
然后,对预测残差进行变换(225)和量化(230)。对经量化的变换系数以及运动向量和其他语法元素进行熵编码(245)以输出比特流。该编码器可跳过变换,并对未变换的残差信号直接应用量化。该编码器可绕过变换和量化两者,即,在不应用变换或量化过程的情况下直接对残差进行编码。
该编码器对编码块进行解码以提供进一步预测的参考。对经量化的变换系数进行解量化(240)和逆变换(250)以对预测残差进行解码。组合(255)经解码的预测残差和预测块,重构图像块。将环路滤波器(265)应用于重构图片以执行例如去块/SAO(样本自适应偏移)滤波,从而减少编码伪影。经滤波的图像存储在参考图片缓冲器(280)中。
图3示出了示例性视频解码器300的框图。在解码器300中,比特流由解码器元件进行解码,如下所述。视频解码器300一般执行与图2中所述的编码过程相反的解码过程。编码器200通常还执行视频解码作为对视频数据进行编码的一部分。
具体地,解码器的输入包括视频比特流,该视频比特流可以由视频编码器200生成。首先,对比特流进行熵解码(330)以获得变换系数、运动向量和其他编码信息。图片分区信息指示如何对图片进行分区。因此,解码器可以根据经解码的图片分区信息来分割(335)图片。对变换系数进行解量化(340)和逆变换(350)以对预测残差进行解码。组合(355)经解码的预测残差和预测块,重构图像块。
可以通过帧内预测(360)或运动补偿预测(即帧间预测)(375)来获取(370)预测块。解码器可以混合(373)帧内预测结果和帧间预测结果,或混合来自多个帧内/帧间预测方法的结果。在运动补偿之前,可通过使用已经可用的参考图片来修正(372)运动场。将环路滤波器(365)应用于重构图像。经滤波的图像存储在参考图片缓冲器(380)中。
经解码的图片还可以经过解码后处理(385),例如,逆颜色变换(例如,从YCbCr 4:2:0转换到RGB 4:4:4)或执行与在预编码处理(201)中执行的重新映射过程相逆的逆重新映射。解码后处理可使用在预编码处理中导出并且在比特流中有信号通知的元数据。
VVC中的解码端运动向量修正
图4示出了VVC草案5中使用的解码端运动向量修正(DMVR)。其包括围绕参考图片列表L0和L1中的两个初始MV(MV0,MV1)修正一对双向运动向量。通过使两个修正的参考块(410,420)之间的SAD(绝对差值和)最小化来修正运动向量。修正的运动向量MV0′和MV1′随后用于执行当前图片中的当前块的运动补偿双向预测。
在VVC中,DMVR应用于满足以下条件的CU:
·CU使用双向预测在合并模式中编码。
·相对于当前图片,一个参考图片是过去的,并且另一个参考图片是未来的。
·列表L0和列表L1中的参考图片与当前图片的时间距离相等。
·CU大小高于128个亮度样本,并且CU高度和宽度为至少8个亮度样本。
由DMVR导出的修正的MV用于对待编码的CU进行帧间预测,并且存储在时间运动缓冲器中。因此,修正的MV可用于待编码/解码的后续图片中的运动信息的时间预测。相反,原始的非DMVR修正的运动向量在用于去块滤波过程中,并用于同一图片中未来编码单元的空间运动向量预测。
如图4所示,搜索点围绕初始MV,并且MV偏移遵循MV差分对称规则。换句话说,由DMVR检查的由候选MV对(MV0′,MV1′)表示的任何点遵循以下两个等式:
MV0′=MV0+MVoffset
MV1′=MV1-MVoffset
其中MVoffset表示参考图片中的一个参考图片中初始MV与修正的MV之间的修正偏移。在VVC草案5中,修正搜索范围是来自初始MV的两个整数亮度样本。通过拟合二次曲线并计算最小值来直接从在各个整数位移位置处获得的SAD值来计算子像素运动修正。
如上所述,DMVR允许在解码端自动修正由编码器发送的双向运动场。然而,使用传统的运动估计(块匹配)使用子块修正来进行修正。此外,像素运动仍然基于限定的运动精度(通常为1/4像素运动)。
双向预测和广义的双向预测
在基于块的视频编码方案,例如HEVC中,使用两种主要编码模式。在帧内模式中,使用当前切片或图片的重构样本(例如当前块的相邻样本)来计算块预测,如图5A所示。在帧间模式中,从之前重构的一个参考图片的运动补偿(MC)块来计算块预测,如图5B所示。
双向预测
在双向预测中,使用分别来自两个列表L0和L1的两个参考图片来计算两个预测块(Pred0和Pred1)。用于计算Pred0的参考图片具有参考索引ref0,并且用于计算Pred1的参考图片具有参考索引ref1。接下来,组合预测块Pred0和Pred1以形成一个单个预测块Predbi,如(1)所示:
Predbi[x]=(Pred0[x]+Pred1[x]+1)>>1(1),其中x是预测块的像素。
广义的双向预测(GBI,在VVC草案5中称为BCW或AWP)
在广义的双向预测中,用于组合的权重(w0和w1)不一定等于1:
Predgbi=(w0.Pred0[x]+w1.Pred1[x]+off)/(w0+w1) (2),
其中off是偏移值。
在变型中,为了便于实现,(2)被简化为(3):
Predgbi=(w0.Pred0[x]+w1.Pred1[x]+1)>>1 (3)
在VVC草案5中,建议使用索引到的(“gbi_index”)预定义权重。使用固定二进制化针对w1对语法元素“gbi_index”进行编码(w0从w1推导为w0=1-w1),如表1所示,例如:
Figure BDA0004122674540000111
Figure BDA0004122674540000121
表1:GBi索引的二进制化
除了在合并模式中,语法元素“gbi_index”针对在帧间双向预测中编码的每个CU进行编码,其中“gbi_index”的值是从相邻CU的GBI权重来推断的,当前CU从该相邻CU继承其他参数。
在编码端,测试所有GBI权重,并且最终在比特流中对最小化该CU的编码成本(“RD成本”准则)的GBI权重进行编码。通常,“RD成本”度量是拉格朗日度量,其定义如下:
RDcost=distortion+lambda.cost (4)
其中“distortion”是质量的度量(例如,L1范数或L2范数),“cost”是对当前CU进行编码的比特数目(的估计),并且“lambda”是拉格朗日乘数。
在诸如VVC的最近的视频编解码器中已经引入了预测加权。此类工具是基于块的加权,即加权在块上是均匀的。该工具需要向解码器发送用于两个预测之间的加权的辅助信息。同时,由于权重的信令成本,权重属于一组有限的值(在VVC中通常为5个值)。
照明补偿(IC)
在联合探索模型(JEM)的版本和由JVET(联合视频探索团队)组开发的VVC参考软件(VVC草案5)中,已经提出在解码端确定的具有相关联参数的一些附加时间预测工具,包括局部照明补偿(LIC)。基本上,LIC的目的是补偿可在预测块与其通过运动补偿时间预测采用的参考块之间发生的照明变化。
通常通过与在帧间模式中进行编码的每个编码单元(CU)相关联的标志(LIC标志)在CU级别上发信号来通知LIC的使用。当该工具被激活并且LIC标志为真时,解码器基于通常位于待预测当前块的左侧和/或顶部上的相邻的重构图片样本和位于参考块的左侧和/或顶部上的对应参考图片样本来计算一些预测参数,如图6A-图6C所示。在所考虑的现有技术编解码器(JEM)中,用于给定块的LIC的使用取决于与该块相关联的标志,称为LIC标志。
在下文中,与当前或参考块相关联的术语“L形”代表由位于当前(或参考)块上方的行上的样本和位于当前(或参考)块左侧的列上的样本组成的一组样本,如图6A-图6C中的灰色所示。
LIC参数(a,b)是从“L形”的重构样本和参考样本导出的权重和偏移。例如,LIC参数的导出可以基于当前样本和线性修改的参考样本之间的误差最小化,其定义如下:
dist=∑r∈Vcur,s∈Vref(reccur(r)-a.recref(s)-b)2 (5)
其中,rec_cur(r)是当前图片(位于图6A-图6C的右侧)中的相邻的重构样本,rec_ref(s)是来自参考图片(位于图6A-图6C的左侧)中的通过MC构建的参考样本,对应于重构样本r,其中s=r+mv,并且rec_cur(r)和rec_ref(r)分别是重构和参考L形中的共址样本。
图6A-图6C示出了在正方形CU(图6A)、矩形CU(图6B)和基于子块的预测(图6C)的情况下,从相邻的重构样本和以运动向量MV平移的对应参考样本中导出LIC参数。在基于子块的预测的情况下,准L形用于收集重构的参考样本。
可使用最小平方最小化来获得(a,b)的值,如(6)所示,例如:
Figure BDA0004122674540000131
Figure BDA0004122674540000132
一旦编码器或解码器获得当前CU的LIC参数,则(在单向预测的情况下)当前CU的预测pred(current_block)由以下组成:
pred(current_block)=a×ref_block+b (7)
其中current_block是待预测的当前块,pred(current_block)是当前块的预测,并且ref_block是用规则的运动补偿(MC)过程构建以及用于当前块的时间预测的参考块。
在双向预测的情况下,如图7所示,对从参考图片列表0计算的预测和从参考图片列表1计算的预测应用两次LIC过程。预先重构(700)参考图片ref_0和ref_1。分别收集(710)来自运动补偿参考块的L形的参考样本。获得(720)当前块的L形的重构样本。使用例如等式(6)分别计算(730)LIC参数LIC_0和LIC_1。使用例如等式(7)使用相应的LIC_0和LIC_1参数分别计算来自每个参考图片ref_0和ref_1的预测pred_0和pred_1。
使用默认加权:Pred=(pred_0+pred_1+1)>>1)或双向预测加权平均(BPWA):Pred=(g0.pred_0+g1.pred_1+(1<<(s-1)))>>s)来将两个预测照常组合在一起(750)。此类方法称为方法-a。
在称为方法-b的变型中,在双向预测的情况下,不使用L形样本,而是直接使用运动补偿块的参考样本(或它们的子集)计算系数a和b。
照明补偿已在JEM中进行了评估,并且已证明可以通过改进最终预测带来一些收益。然而,加权是基于块的,并且IC过程可能需要参考块之外的信息来计算最终参数。
双向光流
在VVC标准中使用基于光流的修正,也称为BDOF。双向光流(BDOF)也可以称为BIO。根据实施方案,BDOF允许以4×4子块级别修正CU的双向预测信号。如果CU满足以下条件,那么可将BDOF应用于CU:
●CU的高度不是4,并且CU的大小不是4×8;
●未使用仿射模式或ATMVP合并模式对CU进行编码;
●使用“真”双向预测模式对CU进行编码,即两个参考图片中的一个参考图片在显示顺序上在当前图片之前并且另一个参考图片在显示顺序上在当前图片之后。
在变型中,BDOF仅被应用于亮度分量。
BDOF模式基于光流概念,其假设物体的运动是平滑的,并且其亮度沿着所考虑的时间间隔是恒定的。对于每个4×4子块,通过使得从L0和L1参考图片列表中的参考图片获得的L0和L1预测样本之间的差最小化来计算运动修正(vx,vy)。然后使用运动修正来调整4×4子块中的双向预测样本值。在BDOF过程中使用以下步骤。
首先,通过直接计算两个相邻样本之间的差来计算两个预测信号的水平和垂直梯度
Figure BDA0004122674540000141
和/>
Figure BDA0004122674540000142
k=0,1,即:
Figure BDA0004122674540000151
Figure BDA0004122674540000152
这里I((k))(i,j)是列表k中的预测信号在坐标(i,j)处的样本值,k=0,1。
然后,梯度的自相关和互相关S1、S2、S3、S5和S6计算如下:
S1=∑(i,j)∈Ωψx(i,j)·ψx(i,j),S3=∑(i,j)∈Ωθ(i,j)·ψx(i,j)
S1=∑(i,j)∈Ωψx(i,j)·ψx(i,j),S3=∑(i,j)∈Ωθ(i,j)·ψx(i,j)
S2=∑(i,j)∈Ωψx(i,j)·ψy(i,j)
S5=∑(i,j)∈Ωψy(i,j)·ψy(i,j) S6=∑(i,j)∈Ωθ(i,j)·ψy(i,j)
其中:
Figure BDA0004122674540000153
Figure BDA0004122674540000154
θ(i,j)=(I(1)(i,j)>>nb)-(I(0)(i,j)>>nb)
其中Ω是围绕4×4子块的6×6窗口。
然后使用以下使用互相关和自相关项对运动修正(vx,vy)进行导出:
Figure BDA0004122674540000155
Figure BDA0004122674540000156
其中,
Figure BDA0004122674540000157
th′BIO=213-BD和/>
Figure BDA0004122674540000158
是下取整函数,并且BD是视频序列中的图片的位深度。/>
基于运动修正和梯度,针对4×4子块中的每一个样本计算以下调整:
Figure BDA0004122674540000161
最后,通过对双向预测样本进行以下调整计算CU的BDOF样本:
predBDOF(x,y)=(I(0)(x,y)+I(1)(x,y)+b(x,y)+ooffset)>>shift
其中ooffset和shift是用于对待编码的图片的位深度的预测进行中心化和重新归一化的值。
作为示例,在上文中,na、nb
Figure BDA0004122674540000162
的值可以分别等于3、6和12。选择这些值使得BDOF过程中的乘数不超过15位,并且BDOF过程中的中间参数的最大位宽保持在32位以内。
为了导出梯度值,需要生成在当前CU边界外的在列表k中的一些预测样本I((k))(i,j)(k=0,1)。如图27所示,BDOF在CU边界周围使用一个扩展行/列。为了控制生成边界外预测样本的计算复杂度,使用双线性滤波器在扩展区域(白色位置)中生成预测样本,并且使用常规8抽头运动补偿内插滤波器在CU(灰色位置)内生成预测样本。这些扩展的样本值仅用于梯度计算。对于BDOF过程中的其余步骤,如果需要CU边界外的任何样本和梯度值,则从其最近的邻居填充(即重复)它们。
双向光流(BIO)是基于样本的运动修正,其是在用于双向预测的基于块的运动补偿的基础上执行的。在双向预测的情况下,BIO的目标是针对在两个参考图片之间具有线性位移的每个样本以及基于光流的厄米特(Hermite)插值来修正运动。
上述工具允许改进用于对图片的块进行编码的最终预测。然而,它们也具有一些缺点,例如:
●BDOF校正是使用校正因子部分基于子块来计算的;
●BDOF校正是使用2个基准图片的对称假设来计算的;
IC加权在块上是均匀的;
●Gbi加权要求将权重的信令应用于预测,并且加权在块上是均匀的;
●IC过程可能需要参考块和当前块(重构样本)之外的信息来计算最终参数;
●校正模型很简单(基于光流的校正,改变线性照明)并且不处理更复杂的校正。
DNN(深度神经网络)是由引入非线性的多个层构成的神经网络,该神经网络的参数已通过机器学习方法发现,通常是对大型示例数据库的训练。
本申请提供了用于基于神经网络的使用来获得块的预测的各种实施方案。
符号
-在下文中,将使用以下符号:
o X:原始数据
o
Figure BDA0004122674540000171
重构数据(完全解码过程后),通常是预测+残差
o
Figure BDA0004122674540000172
预测数据(使用已解码数据)/>
o
Figure BDA0004122674540000173
修正数据(使用已解码数据)
o Ik:时间k的图像
o mvi→j:从时间i到时间j的运动场(使用mvi→j和Ii进行运动补偿,给出预测Ij)。
图8A示出了根据实施方案的用于确定图片的块的预测的方法800A的实施方案。获得(801)该块的第一运动补偿区域和该块的第二区域。
使用神经网络确定(810)该块的预测,该神经网络至少使用该第一运动补偿区域和该第二区域。
根据实施方案,该预测由该神经网络输出。
根据实施方案,用于确定预测的方法800A在图2所述的编码器和图3所述的解码器中实现。
下文描述用于确定预测的方法800A的各种实施方案,这些实施方案可单独或组合实施。用于获得预测的方法800A能够将由双向预测或单向预测生成的预测作为输入。
图8B示出了根据另一实施方案的用于获得图片的块的预测的方法800B的实施方案。获得(801)该块的第一运动补偿区域和该块的第二区域。
使用神经网络,例如深度神经网络,获得(802)该块的预测修正参数图,其中该神经网络使用该第一运动补偿区域和该第二区域。然后至少基于该第一运动补偿区域和该预预测修正参数图来获得(803)该块的预测。
根据实施方案,用于获得预测的方法800B在图2所述的编码器和图3所述的解码器中实现。
下文描述用于获得预测的方法800B的各种实施方案,这些实施方案可单独或组合实施。用于获得预测的方法800B能够将由双向预测或单向预测生成的预测作为输入。在各种实施方案中,预测修正参数图可包括应用于双向预测或应用于由双向预测或单向预测生成的预测的一组参数。该组参数可包括偏移参数或一组权重或权重与偏移的任何组合。
根据本原理,由此获得了用于导出块的预测的预测修正参数。此类参数在块上不再均匀。根据实施方案,预测修正参数图是基于像素的。在这种情况下,神经网络的输出具有与当前块相同的大小。
根据另一实施方案,预测修正参数图是基于子块的,即其包括块的子块的预测修正参数。在这种情况下,神经网络的输出的大小相对于当前块较小。此实施方案允许具有更平滑的预测修正参数。
同样,当预测由神经网络输出时,能够基于像素或基于子块来确定预测。在后一种情况下,对由神经网络输出的预测进行上采样以具有与当前块相同的大小。
在以上公开的实施方案中,第二区域可以是块的运动补偿区域,或者第二区域可以是块的因果邻域,或者第二区域可以包括块和块的因果邻域。
然后,例如可以通过确定块和预测之间的残差,将根据上述任一实施方案确定的预测用于对块进行编码。为了对比特流进行正确地解码,解码器执行与编码器的过程相同的预测过程。因此,可以在解码器处根据从比特流和预测中解码出的残差(如果有的话)来重构块。具体地,在解码端使用相同的神经网络结构,例如,在没有信令的情况下,编码器和解码器都知道相同的结构。
深度预测混合
图9示出了根据实施方案的用于获得图片的块的预测的方法900。方法900允许基于使用DNN导出的加权或混合参数来获得图片的块的预测。
如图9所示,将运动补偿块对(
Figure BDA0004122674540000191
和/>
Figure BDA0004122674540000192
)作为对DNN(903)的输入以生成基于像素的加权图。假设待编码的当前图片是I1,并且图像I0(I1的过去)和图像I2(I1的未来)已经在解码端进行了编码和重构,它们各自的重构版本表示为/>
Figure BDA0004122674540000193
和/>
Figure BDA0004122674540000194
针对图像中每个待编码的块I1,当评估使用参考图像
Figure BDA0004122674540000195
和/>
Figure BDA0004122674540000196
的双向候选者时,使用以下过程。
在编码器处,计算I1中的当前块和过去的
Figure BDA0004122674540000197
(或未来的/>
Figure BDA0004122674540000198
)中的块之间的运动场(MF),产生运动场mv0→1(或者mv0→2)。该运动可以是均匀的(平移模型)、仿射的或基于像素的。在解码端,分别从接收的比特流解码出运动场mv0→1和mv0→2
根据变型,运动场/运动补偿帧可以是解码端运动修正/预测修正模块的输出,是常规的(例如VVC中的DMVR或BDOF)或者如EP20305565.2中所述的是基于DNN的。
获得(901,902)I1中的块的第一运动补偿预测块和第二运动补偿预测块。然后将这2个预测馈送到深度神经网络(903)(通常是完全卷积网络),以便输出加权块a。网络的最后一层是裁剪层,其裁剪给定范围(例如,[-0.25,1.25])中的值。
为了形成当前块双向预测(904),具有对应权重的
Figure BDA0004122674540000199
和/>
Figure BDA00041226745400001910
相加:
Figure BDA00041226745400001911
根据本文公开的实施方案,由于在编码器和解码器处使用了相同的混合参数导出过程,因此无需在2个预测之间发送加权参数。此外,混合参数值不再限于一组预定值。因此,提高了压缩效率。
示例性网络架构
本文所述的任一实施方案中使用的神经网络可以是,例如,如图10所示的完全卷积网络。输入是级联为一个张量的2个预测。
根据变型,可以例如使用运动填充的运动补偿来扩大预测,以考虑网络的感受野的宽度。
DNN的每一层是在末端具有诸如ReLu的激活函数的卷积层,没有激活的最后一个卷积层除外。“N conv KxK,Sj”层表示N个核为KxK并且步幅为j的卷积。最后一层是裁剪层。
根据实施方案,从DNN获得的预测修正参数图是基于像素的。根据该实施方案,DNN的输出是与输入预测的大小相同的层。
其他可能的网络结构包括但不限于基于残差网络的DNN和稠密连接网络等。
根据另一实施方案,从DNN获得的预测修正参数图是基于子块的。因此,为了对子块(而非像素)使用权重,最后的卷积层执行适当值的跨步以减小输出大小。例如,对于4x4子块的加权图,执行值为2的2个连续跨步,如图11所示。另选地,可以使用相同的步幅值在网络的末端添加池化层,例如平均池化或最大池化。
为了考虑在图9所述的方法900中执行的预测的混合的运动不连续性,根据实施方案,可将运动场输入到混合DNN(903)。根据该实施方案,通过将每个数据级联到通道输入中来将每个预测的运动场添加到预测本身。在子块运动场的情况下,运动场可以在被级联到预测之前,例如通过重复进行扩展。
根据另一变型,子块运动场可以进行交错和扩展,如图12所示,其示出了根据实施方案的运动场扩展。在图12的左侧和中间,示出了基于4x4子块的运动场:(vx,vy)表示与第一预测相关联的运动向量,(wx,wy)表示与第二预测相关联的运动向量。例如,在图12中,v1x是来自mv0→1的第一个4x4子块的运动向量的x分量,并且w1x是来自mv2→1的第一个4x4子块的运动向量的x分量……
在图12的右侧,示出了混合DNN的运动场输入。对应于块中的4x4区域的块的左上角是通过将单个分量交错成4x4子块以及在该子块中重复交错图案而形成。也可以是其他交错和重复图案。
在变型中,如图13所示,运动信息在中间层中被馈送到网络中。图13示出了可用于图9的方法的混合DNN和示例性输入:
-首先将预测输入到网络;
-在包括跨步或池化的一些层之后,张量的空间分辨率等于4x4运动场的空间分辨率,通常在步长为2的2个跨步之后;
-然后级联运动场和张量;
-网络的其余层使用标准卷积层组合。
在另一变型中,运动场输入在与张量级联之前通过至少一个卷积层,如图14所示,其示出了根据另一实施方案的可用于图9的方法的混合DNN和示例性输入。
深度预测混合训练
上述网络使用预测块(可选地,运动场和基础事实)作为待重构的当前块进行训练。数据集由从视频序列提取的大量此类块构成。
DNN网络通常是完全卷积网络或任一变体(残差网络、稠密连接网络等)。基于当前帧的块和重构块之间的均方误差(或任何其他相关度量),使用混合预测计算损失函数。还可以在训练阶段期间使用其它正则项,例如,权重的绝对范数、运动总变化等。
根据实施方案,训练过程可以与其他基于神经网络的预测增强模块共同完成。
图15示出了根据实施方案的用于基于运动场修正DNN和混合预测DNN获得预测修正参数的方法。图15示出了与如EP20305565.2中所述的基于NN的解码端运动修正模块和根据上述任一实施方案提出的基于NN的解码端预测混合模块一起进行的联合训练。
首先通过MR-NN模块使用原始块I1和参考(从之前帧重构)块
Figure BDA0004122674540000211
和/>
Figure BDA0004122674540000212
来修正双向运动场mv0→1和mv2→1
然后将运动补偿后得到的预测
Figure BDA0004122674540000213
和/>
Figure BDA0004122674540000214
馈送到预测混合估计器(BL-NN)以创建用于将2个预测混合在一起的权重图a。
然后使用损失函数
Figure BDA0004122674540000215
(通常为L1或L2范数)将所得到的预测/>
Figure BDA0004122674540000216
和原始块I1进行比较。
深度照明补偿
图16示出了根据实施方案的用于获得图片的块的预测的方法1600。方法1600允许基于使用DNN导出的照明补偿参数来获得图片的块的预测。
如图16所示,将运动补偿块对(
Figure BDA0004122674540000217
和/>
Figure BDA0004122674540000218
)作为对DNN的输入以生成基于像素的照明补偿图。假设待编码的当前图片是I1并且图像I0(I1的过去)和I2(I1的未来)已经在解码端进行了编码和重构,产生各自的重构图像/>
Figure BDA0004122674540000219
和/>
Figure BDA00041226745400002110
针对图像I1中每个待编码的块,当评估使用参考图像
Figure BDA0004122674540000221
和/>
Figure BDA0004122674540000222
时,使用照明补偿过程。
在编码端,计算(1601或1602)当前图像I1和过去的
Figure BDA0004122674540000223
(或未来的/>
Figure BDA0004122674540000224
)之间的运动场(MF)。它产生运动场mv0→1(或mv2→1)。该运动可以是均匀的(平移模型)、仿射的或基于像素的。在解码端,从接收的比特流解码出运动场mv0→1(或mv2→1)。
然后从运动场mv0→1(或mv2→1)和重构的参考图像
Figure BDA0004122674540000225
(或/>
Figure BDA0004122674540000226
)获得(1603或1604)预测块/>
Figure BDA0004122674540000227
(或/>
Figure BDA0004122674540000228
)。
运动场/运动补偿帧可以是解码端运动修正/预测修正模块的输出,是常规的(例如VVC中的DMVR或BDOF)或者如EP20305565.2中所述的是基于DNN的。
然后将这2个预测
Figure BDA0004122674540000229
和/>
Figure BDA00041226745400002210
馈送到深度神经网络(1605)(通常是完全卷积网络),以便输出偏移图a。应注意,网络的最后一层是裁剪层,其裁剪给定范围(例如,[-1.0,1.0])中的值。
然后将这2个加权预测
Figure BDA00041226745400002211
和/>
Figure BDA00041226745400002212
和偏移相加(1606),以形成最终当前块双向预测
Figure BDA00041226745400002213
图17示出了用于基于使用DNN导出的照明补偿参数来获得图片的块的预测的方法1700。
根据该实施方案,偏移和缩放因子均被应用于双向预测。这是一阶照明补偿模型。在这种情况下,网络(1701)的输出是2通道张量,其第一通道和第二通道分别表示为a和b。在a中,针对块的每个像素(或子块)定义偏移。在b中,针对块的每个像素(或子块)定义缩放因子。当前块的最终预测由
Figure BDA00041226745400002214
形成(1702)。
在上述过程中使用的DNN可以具有关于图10和图11所述的示例性网络架构中的任一网络架构。
使用卷积网络的单向预测估计
在变型中,IC参数不是从双向预测的2个参考计算的,而是从唯一预测计算的。与计算L形的参数的传统IC估计器相反,根据本原理,所使用的DNN与上述DNN相同,除以下差别之外:
-一个输入是当前编码/解码帧中的块,在顶部和左侧(即在块的因果部分中)放大。与输入相关联的二进制掩码覆盖原始块中的可用样本。这些可用样本对应于当前块的L形中的相邻样本。当前块内的样本不可用,由于它们在解码端不可用。
-另一输入是参考块,即使用参考图像和待编码/解码的当前块的运动场进行的运动补偿所生成的预测块。
图18示出了这些输入。通过用掩码卷积替换标准卷积来改变网络,其中在卷积步骤中考虑输入样本的可用性。在这种情况下,从有效值中填充无效的最终张量的样本。
图19示出了当使用掩码时跨网络的张量形状(张量的深度未示出),有效样本以灰色示出:
-(1)示出了原始张量,有效样本为灰色;
-(2)示出了在卷积网络的一些点处将跨步或池化层应用于张量之后的张量;
-(3)示出了在卷积网络的一些其他点处将第二跨步或池化层应用于张量之后的张量;
-(4)示出了在无效张量值中填充有效张量值;
-(5)示出了最终张量的左上角的提取;
-(6)示出了将张量扩展到原始块大小。类似于自动编码器原理,扩展可以通过简单重复来完成或者可以通过学习去卷积来完成。
使用非卷积网络的单向预测估计
在另一变型中,由包括完全连接的层的网络来代替卷积网络。图20示出了此类网络的示例。首先,将参考图像中的当前块和位移块周围的Xc(这里宽度为W)展平为2个向量。将向量进行级联,然后将级联的矢量输入到完全连接的层中。然后根据IC估计器中的参数数目将最后的层输出重新成形到块大小(这里大小为NxN个像素)和适当深度。
其他变型包括在展平阶段之前执行标准的卷积层以及通过跨步/池化等减小尺寸等。
联合预测修正
上述照明变化估计器可以与其他解码端预测修正一起使用。图21示出了根据实施方案的联合解码端预测修正过程2100。过程2100的输入是参考帧
Figure BDA0004122674540000231
和/>
Figure BDA0004122674540000232
以及来自待编码/解码的当前帧I1的块。
从(在编码端估计的或从解码端的比特流中解码出的)初始双向运动mv0→1和mv2→1,DNN运动修正模块(MR-NN)执行例如EP20305565.2中所述的子块/像素运动修正。由此获得(2101)经修正的运动场。经修正的运动用于通过之前重构的图像
Figure BDA0004122674540000241
和/>
Figure BDA0004122674540000242
的运动补偿来生成预测/>
Figure BDA0004122674540000243
和/>
Figure BDA0004122674540000244
这2个预测
Figure BDA0004122674540000245
和/>
Figure BDA0004122674540000246
馈送到2个网络:
o一个用于估计混合因子α以应用于每个预测(BL-NN网络)。
O一个用于估计照明校正以应用于最终预测(IC-NN网络)。这里假设简单的偏移a,但是在其他变型中,网络可以输出其他高阶模型(参见上述作为示例的线性模型)。
根据本文所述的实施方案,通过联合预测修正过程2100获得两个预测参数图(α,a)。使用α因子将2个预测
Figure BDA0004122674540000247
和/>
Figure BDA0004122674540000248
进行混合(2102),并且加上(2103)偏移以形成当前块的最终预测/>
Figure BDA0004122674540000249
在变型中,将2个网络BL-NN和IC-NN合并到单个网络中,其中在输出通道中输出所有参数。根据该变型,获得单个预测参数图,该预测参数图包括α混合参数和IC参数。然后,对于0阶模型,所估计的参数变为α和β,最终预测为以下形式:
Figure BDA00041226745400002410
这意味着输出张量的深度为2。在这种情况下,α和β参数以及最终结果被裁剪。
图22示出了根据另一实施方案的联合解码端预测修正过程2200。在该变型中,为了提高并行性,与MR-NN模块并行计算IC-NN网络。图22示出了IC-NN模块和MR-NN模块并行的示例性集成。
根据该变型,IC-NN网络使用与MR-NN模块相同的输入。然后,如在联合预测修正的前一实施方案中那样,当计算最终预测时,在末端使用IC-NN模块的输出。
在变型中,将2个网络IC-NN和MR-NN合并到单个网络中,其中在输出通道中输出所有参数(运动场和IC参数γ)。然后使用从合并的网络MR-NN和IC-NN输出的运动场来生成
Figure BDA00041226745400002411
和/>
Figure BDA00041226745400002412
它们随后被BL_NN网络使用。
然后,对于1阶模型,所估计的参数变为α、β和γ,最终预测为以下形式:
Figure BDA0004122674540000251
这意味着输出张量的深度为3,并且α和β参数由BL-NN网络输出。在这种情况下,α、β和γ参数以及最终结果被裁剪。
联合预测修正允许考虑在运动场修正和/或预测混合期间由IC模块带来的校正。因此,提高了压缩效率,因为所有网络模块的训练都考虑了可用于获得块的最终预测的所有预测修正。
感受野和模块输入大小
由于上述不同模块(MR-NN、BL-NN和IC-NN)基于卷积网络,所以在卷积阶段期间使用块外部的样本。通常使用两种典型的方法:
-假设输入块之外的一些值(通常为0或填充值)
-减小输出的大小以便仅保持有效输出样本(即仅使用输入块内的输入样本来计算的样本)。
根据实施方案,当输入来自帧(参考帧和原始帧)时,放大输入块以便考虑整个预测修正过程的感受野。这可以在上述任一实施方案中完成。
例如,假设图21中示出的完整过程和具有如图10所述的架构的各个网络,可以将输入块大小设置如下:
-假设原始输入块大小为WxH,则输出预测大小应当为WxH。
-为了使BL-NN和IC-NN仅输出有效样本,输入块大小应当为(W+N)x(H+N),其中N是网络的半感受野。假设如图10所述的网络,感受野是13个样本(6个连续的卷积3x3,没有跨步),因此N=6。
-为了使MR-NN仅输出有效样本,输入块大小应当为(W+N+M)x(H+N+M),其中M是网络的半感受野。假设与上述相同的网络,M=6,因此整个过程的输入块大小应当为(W+N+M)x(H+N+M)=(W+12)x(H+12),
-最后,只有输出的中心部分有效并得到使用。
信令
在其他实施方案中,如果满足以下条件中的一个或多个条件,则执行根据上文或下文所述的任一实施方案中的预测过程。因为编码器和解码器均可以检查是否满足条件,所以不需要信令来指示是否启用预测过程。
-块大小小于或大于给定阈值。例如,高度和宽度大于或等于16。阈值也可以是其他值。
-运动幅度小于或大于给定幅度。
-条件可以基于参考图像中的块内容,例如,块能量小于或大于给定阈值。
根据VVC标准,仅当2个参考块相对于当前帧在时间上对称,即,当前帧和L0的参考图片之间的POC(图片顺序计数)距离与L1的参考图片和当前帧之间的差相同时,BDOF预测修正过程才适用。根据本原理,可以在上文或下文所述的任一实施方案中去除该约束。
根据变型,在上文和下文所述的任一实施方案中,单个神经网络用于所有情况,即无论参考图片相对于当前帧的时间距离是多少。
根据另一变型,在上文和下文所述的任一实施方案中,根据从当前帧和L0的参考图片之间的时间差以及L1的参考图片和当前帧之间的时间差所确定的时间距离比率来学习和使用特定神经网络。
根据另一实施方案,在VVC的AMVP(高级运动向量预测)模式中使用的VVC的对称运动向量差(SMVD)模式也可以在上文和下文所述的任一实施方案中一起使用。在VVC标准中,当使用BDOF预测修正时,停用SMVD模式。SMVD模式是用于预测当前图片的块的参考图片不被发信号通知给解码器的模式。相反,来自参考图片列表L0和L1的参考图片与相对于当前图片在时间上对称的参考图片一起使用。同时,仅发信号通知一个参考图片的运动向量,而将另一个参考图片的运动向量设置为相反的运动向量。根据该变型,在上文和下文所述的任一实施方案中,能够使用该SMVD模式导出运动补偿块对(
Figure BDA0004122674540000261
和/>
Figure BDA0004122674540000262
),该运动补偿块对用于确定当前块的预测。
在另一变型中,关于运动幅度或块能量的条件仅适用于MR-NN和BL-NN网络,而IC-NN网络仅使用块大小条件。
另选地,在块级别、CTU级别或切片级别向解码器发送标志,以便指示是否激活预测修正。可以发送此类标志以启用/禁用整个预测修正网络(MR-NN、BL-NN和IC-NN),或者可以发送单独的标志以单独启用/禁用每个网络。
深度照明补偿训练
上述网络使用预测块(可选地,运动场和基础事实)作为待重构的当前块进行训练。数据集由从视频序列提取的大量此类块构成。
基于当前帧的块和重构块之间的均方误差(或任何其他相关度量),使用最终预测计算损失函数。还可以在训练阶段期间应用其它正则项(权重的绝对范数、运动总变化等)。
联合深度预测修正训练
上述BL-NN或IC-NN的训练过程可以与其他基于NN的预测增强模块共同完成。
图23示出了与如EP20305565.2中所述的基于NN的解码端运动修正模块(MR-NN)、根据上述任一实施方案的混合估计器(BL-NN)和根据上述任一实施方案的基于IC网络(IC-NN)的解码端预测一起进行的联合训练。使用损失函数
Figure BDA0004122674540000271
(通常为L1或L2范数),将所得到的预测/>
Figure BDA0004122674540000272
和原始块I1进行比较。
在上文中,由于当前视频标准通常是基于块的,因此预测过程是逐块执行的。然而,本发明实施方案可应用于具有不同于矩形或正方形形状的区域,因为DNN可针对其他形状训练和实现,或可以是完全卷积网络,因此与区域形状或大小无关。
用于混合和校正预测的其他实施方案
图28示出了根据实施方案的用于导出混合预测参数的方法。如图28所示,将运动补偿块对(
Figure BDA0004122674540000273
和/>
Figure BDA0004122674540000274
)作为对DNN的输入以生成最终预测/>
Figure BDA0004122674540000275
根据本文所述的实施方案,混合和校正参数由单个网络确定。
假设待编码的当前图片是I1并且图像I0和I2已经在解码端进行了编码和重构,产生各自的重构图像
Figure BDA0004122674540000276
和/>
Figure BDA0004122674540000277
针对图像I1中每个待编码的块,当评估使用参考图像/>
Figure BDA0004122674540000278
和/>
Figure BDA0004122674540000279
时,使用该过程。
计算当前图像I1和过去的
Figure BDA00041226745400002710
(或未来的/>
Figure BDA00041226745400002711
)之间的运动场(MF)。它产生运动场mv0→1(或mv2→1)。该运动可以是均匀的(平移模型)、仿射的或更加复杂的。有利地,运动场/运动补偿帧可以是解码端运动修正的输出,是常规的(例如DMVR)或者是基于DNN的。
根据实施方案,2个预测使用放大块以便管理NN的感受野,然后被馈送到深度神经网络(2801)(通常是完全卷积网络)。图30示出了使用过去参考帧I0和未来参考帧I2的双向预测块的示例。在2个参考帧中,提取放大块(与原始块B相比)以馈送到NN。最后一层通常是裁剪层,以确保校正参数在最终预测上保持较小的校正。
NN 2801输出预测参数c[i]图,预测参数为整数。然后,在2802处,从预测参数图和运动补偿块
Figure BDA0004122674540000281
和/>
Figure BDA0004122674540000282
确定预测/>
Figure BDA0004122674540000283
根据变型,NN针对每个像素或子块输出2个值c[0]和c[1],并且最终预测被计算如下:
Figure BDA0004122674540000284
使用(0.5+c[1])的参数化允许控制应用于混合预测的最大缩放因子。
根据另一变型,NN使用相同的中心化的归一化输入和中心化校正因子输出3项而不是2项:
Figure BDA0004122674540000285
图29示出了根据另一实施方案的用于确定混合预测块的方法。根据该实施方案,NN(2901)直接输出由运动补偿块
Figure BDA0004122674540000286
和/>
Figure BDA0004122674540000287
确定的预测块,该运动补偿块作为NN的输入提供。根据该实施方案,去除混合操作(图28中的2802),并且NN的最后一个卷积层(不是裁剪层)直接输出预测。在这种情况下,最后的裁剪层裁剪范围[0,1](或[0,2b],其中b是量化NN的情况下的位深度)中的值。
输入和输出归一化
根据实施方案,在上述方法中使用的NN使用归一化的中心化数据。NN的输入使用零个中心值。系数被表示为以零为中心。
根据实施方案,以第一位深度获得作为对网络的输入的运动补偿块,该第一位深度高于用于存储这些运动补偿块的第二位深度。在该实施方案中,运动补偿块以高于第二位深度的位深度,例如第一位深度,被提供给神经网络。
使用运动补偿参考的内部位深度,对预测图像
Figure BDA0004122674540000288
和/>
Figure BDA0004122674540000289
进行归一化和中心化。例如,在VVC中,运动补偿参考块的内部位深度对于10位内部位深度(也称为10比特主档次)是14位。这意味着用于表示待编码的图片的位深度是10位,而使用以更高位深度(在10比特主档中的14位)表示的数据来执行运动补偿。
还通过将样本减去213来对参考样本进行中心化。NN有利地使用这些中心化输入,同时输出非中心化的预测样本(如图31所示)。在上述混合阶段期间,归一化偏移值(0.5)加上每个预测,得到等式1中的最终偏移值1。
图31示出了浮点NN的输入和输出的归一化和去归一化操作的示例。在该示例中,输入数据(输入0和输入2)以第一位深度(这里为14位)表示,并且以偏移213进行中心化。输入数据通过将值除以214来进行归一化。因此,提供给网络NN的输入数据为浮点数,具有归一化值和偏移0.5。在NN直接输出预测的情况下,将预测值去归一化,以便以第二位深度(这里为10位)进行表示。通过将这些值乘以210来执行去归一化。
当使用整数网络时,归一化/去归一化操作由移位操作代替。例如,假设内部位深度20表示网络的输入张量,输入首先右移6:t(x)=I(x)<<6,其中I(x)是作为网络输入的数据,t(x)是输入张量。
假设内部位深度20表示等式1中的混合操作之后的输出张量结果,输出左移6:O(x)=t(x)>>6,其中O是网络的输出张量。
有利地,所需的偏移和缩放由NN在训练阶段进行学习。
根据实施方案,NN的最后一层是裁剪层,其中,在[-0.2,0.2]中裁剪c[0],并且在[-0.1,0.1]中裁剪c[1]/c[2]。
网络架构简化
基于深度学习的运动补偿大大改进了预测过程。然而,应当考虑这些方法的整体复杂度。根据实施方案,本文对为上述预测任务定制的小神经网络架构进行描述。
图32示出了能够在上述任一实施方案中使用的小卷积神经网络的示例。
为了保持复杂度较低,图32所示的NN例如由几个“核心”连续卷积层(在该示例中为3个)、1个具有2个卷积核的卷积层(该层返回c[0]和c[1]通道)和最后的裁剪层组成,每个“核心”卷积层具有“几个”卷积核(在该示例中为8个)。
每一层(返回c[0]和c[1]以及最终返回c[2]的卷积层除外)还执行非线性激活,通常为ReLU或LeakyReLU。
在另一变型中,去除最后的裁剪层,并且返回系数c[0]和c[1]以及最终返回c[2]的卷积层在卷积和加上偏置之后使用有界非线性激活。这限制了系数的范围。例如,有界非线性激活可以是缩放的双曲线正切函数f(x)=0.2tanh(x)。作为另一示例,有界非线性激活可以是缩放的偏移S形函数,例如,g(x)=0.4((1/(1+exp(-x)))-0.5)。这里,f(x)和g(x)属于[-0.2,0.2]。可使用任何标度来获得c[0]、c[1]或c[2]所需的范围。在另一变型中,返回c系数的卷积层中的单个有界非线性激活分别针对c[0]、c[1]和c[2]由两个或三个不同的有界非线性激活代替。
为了进一步降低NN的复杂度,可以使用若干网络架构变型。在变型中,去除混合操作(例如,图28中的步骤2802),并且NN的最后一个卷积层(不是裁剪层)直接输出预测(如图29所示)。在这种情况下,最后的裁剪层裁剪范围[0,1](或[0,2b],其中b是量化NN的情况下的位深度)中的值。
根据另一变型,为了提高收敛性,参考样本输入通过跳跃连接,并且在级联(图33)或相加(图34)之后在NN的最后一个卷积层中使用。在这两种情况下,NN的主分支根据输入计算校正(可选地,不仅考虑参考样本,还考虑如下所述的附加信息),而跳过连接仅采用参考样本通道,并且与结果级联(图33)或者进行卷积(以适应张量大小)和相加(图34)。在这种情况下,在跳跃连接中执行的卷积数目等于主分支的层的卷积数目。
在图35所示的另一变型中,主分支的输出张量首先被分成2部分:大小与输入大小相兼容的一部分和其余部分。第一部分与输入相加,然后与其余部分级联。然后将所得到的张量馈送到网络的其余层。
根据另一实施方案,层深度可以改变以允许软件友好的实现。根据该实施方案,对于在神经网络层中执行的计算的软件友好的实现,输入到该层的张量的深度应当是2的幂的倍数。因此,当网络包括一层以上时,由上一层输出的张量的深度应当为2的幂的倍数。输出张量的深度由在层中执行的卷积数目给出,根据该实施方案,每一层具有的卷积数目是2的幂的倍数。卷积数目也可以是2的幂的和。
例如,在图33中示出的实施方案的变型中,对于每一层(级联之前的层除外)使用的卷积数目是2的幂的倍数。当网络包括级联层时,级联层的输出应当是2的幂的倍数。因此,级联层之前的层应当具有N-x个卷积,其中N和x是2的幂的倍数,并且x是与级联层之前的层的输出相级联的张量的深度。
例如,在图33的实施方案的情况下,级联层将深度为2的张量(预测块
Figure BDA0004122674540000301
和/>
Figure BDA0004122674540000302
)和第三层的输出作为输入,该第三层的张量的深度为8。在图33的变型中,级联层的输出张量的深度为10。根据本文所述的实施方案,修改图33中示出的网络,使得级联层之前的层具有N-2个卷积,其中N是2的幂的倍数。
图42和图43示出了此类实施方案的示例。图42或图43示出了宽度为8或16的实现的示例,其中级联之前的层为6或14。
该变型是针对图33所示的实施方案进行描述的,但是上述变型能够针对本文所述的任一实施方案中使用的任何神经网络进行实现。
根据另一实施方案,为了限制复杂度,基于像素的校正能够由基于子块的校正来代替。图36示出了其中第一层执行跨步卷积的经修改的网络。最后,以因子2在空间方向上扩展最终张量(因为这里仅使用1个跨步)。为了进一步降低复杂度,可以使用更多跨步卷积层并且相应地适配扩展层。在该示例中,与需要1441个MAC/样本(MAC:乘法和累积运算)的图32中的NN相比,图36中的NN仅需要361个MAC/样本。
根据另一实施方案,神经网络在若干块大小级别上执行计算,如图37所示,其示出了具有多分辨率项计算的神经网络的示例。在这种情况下,网络的每个分支根据第一个层跨步以不同的“分辨率”处理输入。最后,将结果级联,并且输出最终的校正项。该变型能够应用于输出预测参数图的NN和直接输出预测块的神经网络。
根据另一实施方案,显式选择每个项c[i]的块大小计算,其中i是0、1或2,如图38所示。图38示出了在混合模型中的两个项的情况下具有多大小项计算的卷积神经网络的示例。使用2x2块大小来计算缩放项c[1],并且最后使用扩展层,使得输出张量具有与当前块相同的大小,而c[0]校正项是基于像素来计算的。该变型仅应用于输出预测参数图的NN。
在图39所示的另一变型中,首先在分支之间共享网络的一部分。例如,使用第一个卷积层,然后将其输出馈送到计算相应c[]和c[1]项的每个分支。
输入增强
根据另一实施方案,为了提高校正或预测精度,可以将附加信息馈送到NN。
根据变型,附加信息包括表示在运动补偿中使用的滤波器的信息。用于产生输入运动补偿块的一类滤波器对于NN可能是有用的。例如,在大多数编解码器中,滤波器取决于运动的分数部分。通常,对于高达1/16像素的运动补偿,可用16个滤波器。使用运动的垂直和水平分数部分。其导致针对网络的每个参考创建2个额外输入(即总共4个额外输入)。
为了(对于浮点NN)获得归一化输入,将运动的分数部分除以可能的滤波器数目(在该示例中为16)。图40示出了根据实施方案的用于确定混合预测块的方法,其中附加路径(以虚线示出)向神经网络提供滤波器信息(使用具有16个不同滤波器的示例)。该附加路径包括:
●将通过运动估计获得的或在解码端的比特流中解码出的运动向量分割为两个分量x和y;
●通过将整数(图中的上取整运算)减去浮点运动来计算分数部分。
●级联所有分数部分通道和输入以创建新的输入张量。
根据另一变型,附加信息可以与待重构的块和参考块之间的运动对称性有关。附加信息包括表示帧时间差的信息。图41示出了用于重构块(这里在时间t=2处)的参考帧(这里为帧t=1和t=4)中的不对称性的示例。在图41的示例中,图像I2中的块使用时间距离为-1的过去参考帧和时间距离为2的未来参考帧。
为了考虑该信息,使用每个参考的归一化帧时间距离,在NN中输入2个附加通道。归一化因子被选择为帧与其参考帧(不包括长期参考图片)之间的最大距离。例如,在大小为16的GOP中,归一化因子可以例如被设置为32。
根据另一变型,附加信息可以与参考帧的质量有关。可以从用于对块进行编码的QP中推导出质量。在参考块内的多个QP的情况下,使用最大、最小或中值QP。QP信息还将2个通道添加到输入(每个参考块一个通道)。
在线网络
根据实施方案,由于网络保持很小,因此可能进行神经网络的在线适配。这种适配可以每GOP或每序列或每帧进行。在该实施方案中,例如在每个GOP的开始处将NN的变化发送到解码器。NN变化可以在包括编码的图片或视频的比特流或其他流中发送。应注意,在编码端,默认网络的简单微调或部分NN再训练是有必要的。
神经网络的训练
使用预测块、附加信息(如运动补偿阶段的滤波器、时间距离和QP)和基础事实作为待重构的当前块来训练上述网络。数据集由从视频序列提取的大量此类块构成。由于块大小可能变化,所以二进制掩码也与每一个数据样本相关联,以便仅计算块本身的相关损失。
基于当前帧的块和重构块之间的均方误差(或任何其他相关度量)计算损失函数。如上所述,还可以在训练阶段期间应用其他正则项(权重的绝对范数、输出系数的绝对范数等)。
有利地,如上所述,训练过程可以与其他基于NN的预测增强模块共同完成。
使用损失函数
Figure BDA0004122674540000332
(通常为L1或L2范数)将所得到的预测/>
Figure BDA0004122674540000331
和原始块I1进行比较。
根据本原理的示例,如图24所示,在通信网络NET上两个远程设备A与B之间的传输上下文中,设备A包括与存储器RAM和ROM相关的处理器,其被配置为实现用于编码视频的方法,该方法包括获得图片的块的预测,如关于图1-图41所述,并且设备B包括与存储器RAM和ROM相关的处理器,其被配置为实现用于解码视频的方法,该方法包括获得图片的块的预测,如关于图1-图41所述。
根据示例,网络是广播网络,适于将编码视频从设备A广播/将该编码视频传输到包括设备B的解码设备。
旨在待由设备A发射的信号携带至少一个包括编码数据的比特流,该编码数据表示编码视频。图25示出了通过基于分组的传输协议发射的此类信号的语法的示例。每个已传输的分组P包括报头H和有效载荷PAYLOAD。
图26示出了根据上述任一实施方案中的用于发射信号的方法(2600)的实施方案。此类方法包括:访问包括此类信号的数据(2601)以及经由通信信道来发射所访问的数据(2602),该通信信道例如可以在有线和/或无线介质内实现。根据实施方案,该方法可以由图1所示的设备100或图24中的设备A来执行。
本文描述了各种方法,并且每种方法包括用于实现方法的一个或多个步骤或动作。除非正确操作方法需要特定顺序的步骤或动作,否则可修改或组合特定步骤和/或动作的顺序和/或用途。另外,术语例如“第一”、“第二”等可用于各种实施方案以修改元件、部件、步骤、操作等,例如“第一解码”和“第二解码”。除非特定需要,否则使用此类术语并不暗示对修改操作的排序。因此,在这个示例中,第一解码不需要在第二解码之前执行,并且可例如在第二解码之前、期间或重叠的时间段发生。
根据实施方案,参考图2和图3中描述的视频编码器和解码器的全部或部分可使用神经网络或深度神经网络(DNN)来实现。
本申请中所述的各种方法和其他方面可用于修改视频编码器200和解码器300的模块,例如运动修正和运动补偿模块(270,272,372,375)和混合预测模块(263,373),如图2和图3所示。此外,本发明方面不限于VVC或HEVC,并且可应用于例如其他标准和推荐以及任何此类标准和推荐的扩展。除非另外指明或技术上排除在外,否则本申请中所述的方面可单独或组合使用。
在本申请中使用各种数值。具体值是为了示例目的,并且所述方面不限于这些具体值。
各种具体实施参与解码。如本申请中所用,“解码”可涵盖例如对所接收的编码序列执行以便产生适于显示的最终输出的全部或部分过程。在各种实施方案中,此类过程包括通常由解码器执行的一个或多个过程,例如熵解码、逆量化、逆变换和差分解码。短语“解码过程”是具体地指代操作的子集还是广义地指代更广泛的解码过程基于具体描述的上下文将是清楚的,并且据信将被本领域的技术人员很好地理解。
各种具体实施参与编码。以与上面关于“解码”的讨论类似的方式,如在本申请中使用的“编码”可涵盖例如对输入视频序列执行以便产生编码比特流的全部或部分过程。
本文所述的具体实施和方面可在例如方法或过程、装置、软件程序、数据流或信号中实现。即使仅在单个形式的具体实施的上下文中讨论(例如,仅作为方法讨论),讨论的特征的具体实施也可以其他形式(例如,装置或程序)实现。装置可在例如适当的硬件、软件和固件中实现。方法可在例如一般是指处理设备的装置(例如,处理器)中实施,该装置包括例如计算机、微处理器、集成电路或可编程逻辑设备。处理器还包括通信设备,例如计算机、手机、便携式/个人数字助理(“PDA”)以及便于最终用户之间信息通信的其他设备。
提及“一个实施方案”或“实施方案”或“一个具体实施”或“具体实施”以及它们的其他变型,意味着结合实施方案描述的特定的特征、结构、特性等包括在至少一个实施方案中。因此,短语“在一个实施方案中”或“在实施方案中”或“在一个具体实施中”或“在具体实施中”的出现以及出现在本申请通篇的各个地方的任何其他变型不一定都是指相同的实施方案。
另外,本申请可涉及“确定”各种信息。确定信息可包括例如估计信息、计算信息、预测信息或从存储器检索信息中的一者或多者。
此外,本申请可涉及“访问”各种信息。访问信息可包括例如接收信息、(例如,从存储器)检索信息、存储信息、移动信息、复制信息、计算信息、确定信息、预测信息或估计信息中的一者或多者。
另外,本申请可涉及“接收”各种信息。与“访问”一样,接收旨在为广义的术语。接收信息可包括例如(例如,从存储器)访问信息或检索信息中的一者或多者。此外,在例如存储信息、处理信息、发射信息、移动信息、复制信息、擦除信息、计算信息、确定信息、预测信息或估计信息的操作期间,“接收”通常以一种方式或另一种方式参与。
应当理解,例如,在“A/B”、“A和/或B”以及“A和B中的至少一者”的情况下,使用以下“/”、“和/或”和“至少一种”中的任一种旨在涵盖仅选择第一列出的选项(A),或仅选择第二列出的选项(B),或选择两个选项(A和B)。作为进一步的示例,在“A、B和/或C”和“A、B和C中的至少一者”的情况下,此类短语旨在涵盖仅选择第一列出的选项(A),或仅选择第二列出的选项(B),或仅选择第三列出的选项(C),或仅选择第一列出的选项和第二列出的选项(A和B),或仅选择第一列出的选项和第三列出的选项(A和C),或仅选择第二列出的选项和第三列出的选项(B和C),或选择所有三个选项(A和B和C)。如对于本领域和相关领域的普通技术人员显而易见的是,这可扩展到所列出的尽可能多的项目。
而且,如本文所用,词语“发信号通知”是指(除了别的以外)向对应解码器指示某物。例如,在某些实施方案中,该编码器发信号通知用于去量化的量化矩阵。这样,在一个实施方案中,在编码器侧和解码器侧两者均使用相同的参数。因此,例如,编码器可将特定参数发射(显式信令)到解码器,使得解码器可使用相同的特定参数。相反,如果解码器已具有特定参数以及其他,则可在不发射(隐式信令)的情况下使用信令,以简单允许解码器知道和选择特定参数。通过避免发射任何实际功能,在各种实施方案中实现了比特节省。应当理解,信令可以各种方式实现。例如,在各种实施方案中,使用一个或多个语法元素、标志等将信息发信号通知至对应解码器。虽然前面涉及词语“signal(发信号通知)”的动词形式,但是词语“signal(信号)”在本文也可用作名词。
对于本领域的普通技术人员将显而易见的是,具体实施可产生格式化为携带例如可存储或可传输的信息的各种信号。信息可包括例如用于执行方法的指令或由所述具体实施中的一个具体实施产生的数据。例如,可格式化信号以携带该实施方案的比特流。此类信号可格式化为例如电磁波(例如,使用频谱的射频部分)或基带信号。格式化可包括例如对数据流进行编码并且使用经编码的数据流调制载体。信号携带的信息可为例如模拟或数字信息。如已知的,信号可通过多种不同的有线或无线链路传输。信号可存储在处理器可读介质上。

Claims (36)

1.一种方法,所述方法包括:
-获得图片的块的第一运动补偿区域以及获得所述块的第二区域,
-使用神经网络确定所述块的预测,所述神经网络使用所述第一运动补偿区域和所述第二区域,
-基于所述预测对所述块进行编码。
2.一种装置,所述装置包括一个或多个处理器,其中所述一个或多个处理器被配置为:
-获得图片的块的第一运动补偿区域以及获得所述块的第二区域,
-使用神经网络确定所述块的预测,所述神经网络使用所述第一运动补偿区域和所述第二区域,
-基于所述预测对所述块进行编码。
3.一种方法,所述方法包括:
-获得图片的块的第一运动补偿区域以及获得所述块的第二区域,
-使用神经网络确定所述块的预测,所述神经网络使用所述第一运动补偿区域和所述第二区域,
-基于所述预测对所述块进行解码。
4.一种装置,所述装置包括一个或多个处理器,其中所述一个或多个处理器被配置为:
-获得图片的块的第一运动补偿区域以及获得所述块的第二区域,
-使用神经网络确定所述块的预测,所述神经网络使用所述第一运动补偿区域和所述第二区域,
-基于所述预测对所述块进行解码。
5.根据权利要求1或3所述的方法或根据权利要求2或4所述的装置,其中所述预测由所述神经网络输出。
6.根据权利要求1或3所述的方法或根据权利要求2或4所述的装置,其中使用神经网络确定所述块的预测包括:
-使用所述神经网络获得所述块的预测修正参数图,其中所述神经网络使用所述第一运动补偿区域和所述第二区域,
-至少基于所述第一运动补偿区域和所述预测修正参数图来获得所述块的所述预测。
7.根据权利要求4所述的方法或根据权利要求4所述的装置,其中所述预测修正参数图包括基于像素的预测修正参数。
8.根据权利要求4所述的方法或根据权利要求4所述的装置,其中所述预测修正参数图包括所述块的子块的预测修正参数。
9.根据权利要求1、3或5-8中任一项所述的方法或根据权利要求2或4-8中任一项所述的装置,其中所述第二区域包括所述块的第二运动补偿区域。
10.根据权利要求9所述的方法或装置,其中所述预测修正参数图包括用于获得所述第一运动补偿区域和所述第二运动补偿区域的加权和的至少一个权重和用于校正所述加权和的偏移。
11.根据权利要求9所述的方法或装置,其中所述预测修正参数图至少包括第一权重和第二权重以及用于校正加权和的偏移,所述第一权重和所述第二权重用于获得分别以所述第一权重和所述第二权重加权的所述第一运动补偿区域和所述第二运动补偿区域的所述加权和。
12.根据权利要求9-11中任一项所述的方法或根据权利要求9-11中任一项所述的装置,其中:
●第一位深度用于获得所述第一运动补偿区域和所述第二区域,
●第二位深度用于存储所获得的第一运动补偿区域和第二区域,所述第一位深度高于所述第二位深度,
●所述第一运动补偿区域和所述第二区域以高于所述第二位深度的位深度被提供给所述神经网络。
13.根据权利要求12所述的方法或装置,其中所述第一运动补偿区域以所述第一位深度被提供给所述神经网络。
14.根据权利要求12或13所述的方法或装置,其中所述第一位深度是用于使用至少一个运动向量来执行第一参考图片中的参考块的运动补偿以获得所述第一运动补偿区域的位深度,所述至少一个运动向量针对所述块获得。
15.根据权利要求13或14所述的方法或装置,所述方法或所述装置还包括:在向所述神经网络提供所述第一运动补偿区域之前,根据所述第一位深度对所述第一运动补偿区域进行归一化。
16.根据权利要求15所述的方法或装置,所述方法或所述装置还包括:当由所述神经网络输出所述块的所述预测时,根据所述第二位深度对所述预测进行去归一化。
17.根据权利要求1、3或5-16中任一项所述的方法或根据权利要求2或4-16中任一项所述的装置,其中所述神经网络包括:
●至少两个分支,其中所述至少两个分支中的一个分支以第一块大小处理输入,并且所述至少两个分支中的另一个分支以第二块大小处理输入,其中所述第一块大小和所述第二块大小不同。
18.根据权利要求5-16中任一项所述的方法或装置,其中所述神经网络针对所述预测修正图中的每个预测参数包括一个分支,其中所述分支包括至少一个卷积层。
19.根据权利要求18所述的方法或装置,其中对所述神经网络的每个分支使用不同的块大小。
20.根据权利要求18或19所述的方法或装置,其中所述分支之间共享至少一层。
21.根据权利要求1、3或5-20中任一项所述的方法或根据权利要求2或4-20中任一项所述的装置,其中向所述神经网络提供附加数据,其中所述附加数据包括以下至少一项:
●表示用于运动补偿的滤波器的信息,
●表示参考图片之间的时间距离的信息,从所述参考图片中获得所述第一运动补偿区域和所述第二运动补偿区域,
●表示用于对所述块进行编码的量化参数的信息。
22.根据权利要求1、3或5-21中任一项所述的方法或根据权利要求2或4-21中任一项所述的装置,其中所述神经网络包括一组卷积层,并且其中每层的卷积数目是2的幂的倍数。
23.根据权利要求1、3或5-22中任一项所述的方法或根据权利要求2或4-22中任一项所述的装置,其中所述神经网络包括跳跃连接,根据所述跳跃连接,所述第一运动补偿区域和所述第二区域与所述神经网络的主分支的上一层的输出被提供给所述神经网络的下一层。
24.根据依赖于权利要求21的权利要求23所述的方法或装置,其中仅向所述神经网络的所述主分支提供附加数据。
25.根据权利要求23或24所述的方法或装置,其中所述神经网络的所述下一层是所述神经网络的最后一个卷积层。
26.根据权利要求23-25中任一项所述的方法或装置,其中为了被提供给所述神经网络的下一层,所述跳跃连接的输出被级联到所述神经网络的所述主分支的所述上一层的所述输出,或者所述跳跃连接的输出被卷积以及与所述神经网络的所述主分支的所述上一层的所述输出相加。
27.根据权利要求26所述的方法或装置,其中在级联层之前的所述神经网络的所述主分支的层具有N-2个卷积,其中N是2的幂的倍数。
28.根据权利要求23-25中任一项所述的方法或装置,其中所述神经网络的所述主分支的所述上一层的所述输出被分割为第一部分和第二部分,所述第一部分具有与所述跳跃连接的输入的大小相对应的大小,所述第一部分和所述跳跃连接的输入相加、与所述第二部分级联以及被提供给所述神经网络的所述下一层。
29.根据权利要求1、3或5-28中任一项所述的方法或根据权利要求2或4-28中任一项所述的装置,其中所述第一运动补偿区域和所述第二区域在被所述神经网络使用之前至少根据所述神经网络的感受野的大小分别放大。
30.一种计算机可读存储介质,所述计算机可读存储介质具有存储在其上的指令,所述指令致使一个或多个处理器执行根据权利要求1、3或5-29中任一项所述的方法。
31.一种计算机程序产品,所述计算机程序产品包括指令,当程序由一个或多个处理器执行时,致使所述一个或多个处理器执行根据权利要求1、3或5-29中任一项所述的方法。
32.一种设备,所述设备包括:
-根据权利要求2或5-29中任一项所述的装置;和
-以下各项中的至少一者:(i)天线,所述天线被配置为接收信号,所述信号包括表示至少一个图像的至少一部分的数据;(ii)频带限制器,所述频带限制器被配置为将所接收的信号限制为包括表示所述至少一个图像的至少一部分的所述数据的频带;或(iii)显示器,所述显示器被配置为显示所述至少一个图像的至少一部分。
33.根据权利要求32所述的设备,所述设备包括TV、手机、平板电脑或机顶盒。
34.一种信号,所述信号包括比特流,所述比特流包括表示根据权利要求1编码的视频的数据。
35.一种装置,所述装置包括:
-访问单元,所述访问单元被配置为访问包括根据权利要求34所述的信号的数据,
-发射器,所述发射器被配置为发射所访问的数据。
36.一种方法,所述方法包括:访问包括根据权利要求34所述的信号的数据以及发射所访问的数据。
CN202180062753.3A 2020-09-15 2021-09-14 深度预测修正 Pending CN116171577A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
EP20306029 2020-09-15
EP20306029.8 2020-09-15
EP20306603 2020-12-18
EP20306603.0 2020-12-18
EP21305320.0 2021-03-16
EP21305320 2021-03-16
PCT/EP2021/075156 WO2022058293A1 (en) 2020-09-15 2021-09-14 Deep prediction refinement

Publications (1)

Publication Number Publication Date
CN116171577A true CN116171577A (zh) 2023-05-26

Family

ID=77913118

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180062753.3A Pending CN116171577A (zh) 2020-09-15 2021-09-14 深度预测修正

Country Status (5)

Country Link
US (1) US20240031611A1 (zh)
EP (1) EP4214928A1 (zh)
KR (1) KR20230067653A (zh)
CN (1) CN116171577A (zh)
WO (1) WO2022058293A1 (zh)

Also Published As

Publication number Publication date
US20240031611A1 (en) 2024-01-25
KR20230067653A (ko) 2023-05-16
EP4214928A1 (en) 2023-07-26
WO2022058293A1 (en) 2022-03-24

Similar Documents

Publication Publication Date Title
CN111630856B (zh) 基于响应于相邻样本的线性模型进行视频编码和解码的方法和设备
CN113557730A (zh) 用于利用基于子块的局部光照补偿的视频编码和解码方法和装置
CN113170146A (zh) 用于图片编码和解码的方法和设备
CN112385211A (zh) 用于视频编码和解码的运动补偿
US11985306B2 (en) Method and apparatus for video encoding and decoding with matrix based intra-prediction
US20220385922A1 (en) Method and apparatus using homogeneous syntax with coding tools
CN115943629A (zh) 视频编码中基于神经网络的滤波器
CN115104301A (zh) 用于视频编码或解码的基于神经网络的帧内预测
CN113330747A (zh) 利用适应于加权预测的双向光流进行视频编码和解码的方法和装置
US20230254507A1 (en) Deep intra predictor generating side information
CN116458154A (zh) 利用几何分区的帧内预测
CN112806011A (zh) 改进的虚拟时间仿射候选
CN116134822A (zh) 用于更新基于深度神经网络的图像或视频解码器的方法和装置
EP3935861A1 (en) Local illumination compensation for video encoding or decoding
CN113545047A (zh) 帧内预测模式分区
CN112335240A (zh) 使用可变权重的多参考帧内预测
CN116457793A (zh) 针对多个机器任务的学习视频压缩框架
CN116171577A (zh) 深度预测修正
CN114930819A (zh) 三角形合并模式中的子块合并候选
CN114450965A (zh) 基于长范围端对端深度学习的视频压缩
CN114731396A (zh) 图像块的深度帧内预测
CN114600450A (zh) 使用位置相关帧内预测组合进行画面编码和解码的方法和设备
US20240155148A1 (en) Motion flow coding for deep learning based yuv video compression
US20240187640A1 (en) Temporal structure-based conditional convolutional neural networks for video compression
CN117616750A (zh) 基于模板的帧内模式推导

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20231107

Address after: Paris France

Applicant after: Interactive digital CE patent holding Co.

Address before: French Sesong Sevigne

Applicant before: Interactive digital VC holdings France Ltd.

TA01 Transfer of patent application right