CN115943629A - 视频编码中基于神经网络的滤波器 - Google Patents

视频编码中基于神经网络的滤波器 Download PDF

Info

Publication number
CN115943629A
CN115943629A CN202180042531.5A CN202180042531A CN115943629A CN 115943629 A CN115943629 A CN 115943629A CN 202180042531 A CN202180042531 A CN 202180042531A CN 115943629 A CN115943629 A CN 115943629A
Authority
CN
China
Prior art keywords
region
samples
offset
neural network
sample
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
CN202180042531.5A
Other languages
English (en)
Inventor
P·博尔德斯
F·加尔平
T·杜马斯
帕维尔·尼基丁
F·阿尔班
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 CN115943629A publication Critical patent/CN115943629A/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • 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/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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
    • 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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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/048Activation functions

Landscapes

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

Abstract

在一个具体实施中,为了执行块的某种型式的重构样本的环路滤波,在比特流中仅发信号通知单个偏移参数。基于该型式的重构样本,使用神经网络来生成像素级权重掩模。因为神经网络参数在编码器和解码器处均是已知的,所以不需要在比特流中发信号通知这些参数。使用通过加权掩模缩放的单个偏移参数来调节块中的样本。因此,即使仅使用单个偏移参数,也通过像素级偏移来调节该样本。该神经网络也可以采用其他参数诸如量化参数和图片类型作为输入。此外,可存在生成不同权重掩模的多个神经网络,其中发信号通知不同偏移并且将选择神经网络中的一个或多个神经网络以用于滤波。

Description

视频编码中基于神经网络的滤波器
技术领域
本发明实施方案整体涉及一种用于视频编码或解码中的滤波的方法和装置。
背景技术
为了实现高压缩效率,图像和视频编码方案通常采用预测和变换来利用视频内容中的空间和时间冗余。一般来讲,帧内或帧间预测用于利用图像内或图像间相关性,然后对在原始块与预测块之间的差异(通常表示为预测误差或预测残差)进行变换、量化和熵编码。为了重构视频,通过对应于熵编码、量化、变换和预测的逆过程对压缩数据进行解码。
发明内容
根据一个实施方案,提供了一种视频编码或解码方法,该方法包括:访问图片的区域的某种型式的重构样本;使用神经网络,基于所述区域的所述型式的重构样本,生成针对所述区域中的多个样本中的相应样本的权重;对针对所述区域的单个偏移参数进行编码或解码;以及通过调节所述区域中的所述多个样本来对所述区域进行滤波,其中响应于针对所述区域中的样本的权重以及针对所述区域的所述偏移来调节所述样本。
根据另一个实施方案,提供了一种用于视频编码或解码的装置,该装置包括一个或多个处理器,其中所述一个或多个处理器被配置为:访问图片的区域的某种型式的重构样本;使用神经网络,基于所述区域的所述型式的重构样本,生成针对所述区域中的多个样本中的相应样本的权重;对针对所述区域的单个偏移参数进行编码或解码;以及通过调节所述区域中的所述多个样本来对所述区域进行滤波,其中响应于针对所述区域中的样本的权重以及针对所述区域的所述偏移来调节所述样本。
根据另一个实施方案,提供了一种视频编码或解码装置,该装置包括:用于访问图片的区域的某种型式的重构样本的装置;用于使用神经网络基于所述区域的所述型式的重构样本生成针对所述区域中的多个样本中的相应样本的权重的装置;用于对针对所述区域的单个偏移参数进行编码或解码的装置;以及通过调节所述区域中的所述多个样本来对所述区域进行滤波的装置,其中响应于针对所述区域中的样本的权重以及针对所述区域的所述偏移来调节所述样本。
根据另一个实施方案,提供了一种视频编码或解码装置,该装置包括:用于访问图片的区域的某种型式的重构样本的装置;用于使用多个神经网络基于所述区域的所述型式的重构样本生成针对所述区域中的多个样本中的样本的多个权重的装置;用于对针对所述区域的多个偏移参数进行编码或解码的装置;以及通过调节所述区域中的所述多个样本来对所述区域进行滤波的装置,其中响应于针对所述区域中的样本的多个权重以及针对所述区域的所述多个偏移来调节所述样本。
一个或多个实施方案还提供了一种计算机程序,该计算机程序包括指令,该指令在由一个或多个处理器执行时使该一个或多个处理器执行根据上述任一实施方案中的编码方法或解码方法。本发明实施方案中的一个或多个实施方案还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有用于根据上述方法对视频数据进行编码或解码的指令。一个或多个本发明实施方案还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有根据上述方法生成的码流。一个或多个本发明实施方案还提供了一种用于发送或接收根据上述方法生成的码流的方法和装置。
附图说明
图1示出了可实现本发明实施方案各方面的系统的框图。
图2示出了视频编码器的实施方案的框图。
图3示出了视频解码器的实施方案的框图。
图4示出了相继环路滤波的示例。
图5是示出用于EO(边缘偏移)样本分类的四个1-D定向图案的图示示例。
图6是示出正偏移用于EO分类的类别1和类别2以及负偏移用于该分类的类别3和类别4的图示示例。
图7是示出具有相关联的起始带位置和四个连续带的偏移的BO(带偏移)的图示示例。
图8示出了用于使用SAO对比特流进行解码的示例性方法。
图9示出了使用卷积神经网络(CNN)来在重构之后恢复图像的示例。
图10示出了根据一个实施方案的编码器架构。
图11示出了要滤波的图片的一部分、来自NN的权重掩模以及滤波结果。
图12示出了根据一个实施方案的在滤波器中使用的NN的示例。
图13示出了根据一个实施方案的解码器架构。
图14示出了根据一个实施方案的以预分类作为对神经网络的输入的编码器架构。
图15示出了根据一个实施方案的具有多个基于神经网络的滤波器的编码器架构。
图16示出了根据另一个实施方案的具有多个基于神经网络的滤波器的编码器架构。
图17示出了根据又一个实施方案的具有多个基于神经网络的滤波器的编码器架构。
图18示出了根据一个实施方案的在多个CNN中选择一个CNN的解码器架构。
图19示出了根据另一个实施方案的在多个CNN中选择若干CNN的解码器架构。
图20示出了根据一个实施方案的使用多个NN进行校正的编码过程。
图21示出了NN输出的线性组合的示例。
图22示出了根据一个实施方案的使用多个NN进行校正的解码过程。
图23示出了根据一个实施方案的用于选择要组合的K个NN的方法。
图24示出了K=2和K=4的空间分区的示例,其中不同的图案与不同的NN滤波器相关联。
图25示出了根据一个实施方案,实际使用的NN的数量取决于分区形状。
图26示出了仅在一个方向上应用3x4卷积层的示例。
图27示出了根据一个实施方案的基于具有不同编码模式特征的数据集来训练NN的示例。
图28示出了激活函数的两个示例:ReLU和Leaky ReLU。
具体实施方式
图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通信。其他实施方案使用通过输入块105的HDMI连接递送数据的机顶盒向系统100提供流式数据。另外的其他实施方案使用输入块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)中执行的重新映射过程相逆的逆重新映射。解码后处理可使用在预编码处理中导出并且在比特流中有信号通知的元数据。
如上所述,在最近的视频编解码器(诸如HEVC或VVC)中,将若干滤波器应用于视频图片的重构样本,目的在于减少编码伪影并减少初始图片的失真。例如,在HEVC中,将去块滤波器(DBF)和样本自适应偏移(SAO)滤波器相继地应用于重构样本。在VVC中,在过程的最后应用称为自适应环路滤波器(ALF)的另一滤波器。在VVC的开发阶段期间,考虑若干其他补充的基于块的滤波器:双边滤波器(BF)、Hadamard滤波器和扩散滤波器。
图4示出了相继环路滤波的示例。在该示例中,应用四个相继滤波器:双边滤波器(450)、DBF(460)、SAO(470)和ALF(480)。输出为重构图片样本。为了易于注释,将对编码器的输入称为S,将对环路滤波的输入称为S,并将环路滤波的输出称为
Figure BDA0003998883350000091
Figure BDA0003998883350000092
也可以称为初始重构或重构样本的初始型式。如图4所示,对环路滤波的输入是预测样本(410)和经解码/重构的预测残差(420)的总和(430),其可以被削波(440)到编码器/解码器所支持的动态范围内。对于某些块,当预测残差为零或不存在(例如,在SKIP模式中)时,对环路滤波的输入直接为预测样本。
一般来讲,这些不同的滤波器执行以下功能中的一些功能或全部功能:
1.像素分类。
2.仅编码器:确定滤波器参数(例如,DBF、SAO、ALF,除BF外)。
3.对滤波器参数(例如,DBF、SAO、ALF,除BF外)进行编码/解码。
4.类相关滤波。
SAO滤波器
在HEVC和VVC中,SAO是在CTU(编码树单元)的基础上的基于样本的滤波操作,该操作允许将偏移添加到一些类别的重构样本以减少编码伪影。CTU由每分量一个CTB构成。可以按CTB激活或去激活SAO。指定两个SAO模式:边缘偏移(EO)和带偏移(BO)。对于EO,样本分类基于要滤波的图片中的局部定向结构。对于BO,样本分类基于样本值。针对EO或BO的参数可以进行显式编码或从邻域导出。SAO可应用于亮度分量和色度分量,其中SAO模式对于Cb分量和Cr分量是相同的。针对每个颜色分量单独地配置SAO参数。
边缘偏移
EO使用如图5所示的如下四个1-D定向图案进行样本分类:水平、竖直、135°对角和45°对角,其中标签“pc”表示当前样本,并且标签“p0”和“p1”表示两个相邻样本。基于方向指定四个EO类,并且每个EO类对应于一个方向。在比特流中发信号通知所选择的EO类作为边信息。
表1
Figure BDA0003998883350000101
对于给定的EO类,基于局部梯度将CTB内的每个样本分类为五个(NC=5)类别中的一个类别。具体地,将标记为“pc”的当前样本值与其沿所选择的1-D方向的两个相邻样本值进行比较。针对样本的分类规则总结在表1中。还如图6所示,类别1和类别4分别与沿所选择的1-D图案的局部谷和局部峰相关联,类别2和类别3分别与沿所选择的1-D图案的凹角和凸角相关联。如果当前样本值不属于类别1-4(即,当前样本值与其两个相邻样本值相同,或者如果p0<pc<p1或p0>pc>p1),则该当前样本值在类别0中并且不应用SAO(即,偏移为0)。对于类别1-4,对偏移进行编码。
带偏移
对于BO,样本值的范围(例如,8比特中的0-255)被均匀地分为32个带,并且通过添加偏移off(n)(n=1...4)来修改属于(NC-1)=4个连续带的样本值,如图7所示。仅将四个连续带的偏移和起始带位置发信号通知给解码器。起始带位置指示具有经编码的偏移的第一带的位置。针对(NC-1)个带中的每个带编码一个偏移,并且剩余的带具有等于零的偏移。
在EO或BO的情况下,可以不对偏移进行编码而是从相邻的上方或左侧CTU复制偏移(合并模式)。在示例中,图8示出了用于使用SAO对比特流进行解码的方法800。在对比特流进行解码(810)之后,使用SAO对重构样本进行进一步滤波。应注意,术语“经解码”或“重构”可以意味着比特流是部分地“经解码”的,例如,在去块滤波之后但在SAO滤波之前获得的信号以及重构样本可不同于用于显示的经解码的最终输出。
如果SAO针对条带被激活,则解码器检查(820)SAO是否针对当前CTB被激活。如果SAO被激活,则解码器将CTB中的样本分类(830)成NC=5个类别。可以获得(840)针对每个类别的偏移值off(n)。在步骤850处,对于具有类别c(s)的样本s,可将该样本调节为s=s+off(c(s))。如上所论述,样本偏移可为0并且不调节对应样本。如果在SAO滤波器之后存在其他环路滤波器,则经滤波的样本经历更多滤波。经滤波的重构样本被用作解码器的最终输出。
编码器可执行与方法800类似的过程。在编码器侧,实施步骤810以获得重构样本,例如,SAO滤波过程使用来自去块滤波器的重构样本作为输入。偏移值被编码在比特流中。经滤波的重构样本可用作其他图片的参考。
在编码阶段,可以通过针对每个类的每个类别c收集初始(目标)样本值与重构样本值之间的差值diff(c)的总和来决定偏移。将N(c)表示为属于类别c的当前块的样本的数量,则可如下导出待添加到重构样本的平均偏移off(c):
off(c)=diff(c)/N(c) (公式1)
经深度学习的滤波器
图9示出了使用卷积神经网络(CNN)来在重构之后恢复图像的示例。图像S首先被重构为
Figure BDA0003998883350000121
通过添加由CNN计算(推断)的校正R,该图像被恢复为
Figure BDA0003998883350000122
在CNN的训练(CNN参数的确定)期间,基于恢复图像与初始图像之间的误差的损失函数被最小化。
在实践中,CNN通常由跟随有激活层(例如,sigmoid、ReLU或Leaky ReLU函数)的若干卷积层组成,并且损失函数还可以考虑一些正则项来稳定CNN训练。
已经开发出用于利用CNN对重构图片进行滤波的若干技术。CNN与全连接神经网络之间的主要区别在于CNN沿着其输入和其中间表示的空间维度共享权重。鉴于自然图像的局部统计值,CNN通常需要比全连接神经网络少得多的参数来实现例如等效的图像恢复表现。此外,权重共享使得CNN中的参数的数量独立于其输入大小,这意味着经训练的CNN可以恢复各种大小的图像。
在一种技术中,由亮度分量和色度分量共享3层CNN。训练CNN的参数,然后将其与每个随机访问段(RAS)的第一I图片一起编码在比特流中。训练仅使用时间级为0和1的图片。针对每个颜色分量在图片级、编码树块(CTB)级和32x32块级应用多级开/关控制。在一个变型中,对用于亮度的三个不同的2层CNN和用于色度的三个不同的2层CNN进行编码。按CTB发信号通知要用于亮度和色度中的每一者的最佳CNN的索引。将CNN压缩到每权重6比特。按图块执行开/关控制。
这些方法对比特流中的所有神经网络参数进行编码,这会产生信令开销。此外,应当按图片组(RAS)来训练神经网络,这实际上可能导致不可接受的复杂性/延迟。
在另一种技术中,为了克服上述限制,将一组较大但固定的神经网络参数训练一次,每QP训练一个。将三个输入分量(Y,U,V)串联以便由CNN一起处理。在训练期间利用对应于CNN的总填充大小的特定大小的像素来填充输入样本块。甚至可以通过重复一些层来减少参数的数量。
本申请提出了一种基于神经网络(NN)的环路滤波器,其可以代替一个或多个现有的环路滤波器或者可以被添加到现有的环路滤波器。由于所提出的滤波器如在HEVC或VVCSAO滤波器中那样利用自适应偏移来调节样本,所以将所提出的滤波器表示为基于NN的SAO(样本自适应偏移)滤波器。在一个实施方案中,基于NN的滤波器通过如在SAO滤波器中执行的偏移来调节重构样本。具体地,NN滤波器确定权重掩模。根据该掩模中的权重的值,该权重对应于重构块的样本是否被校正的决策或者该样本的校正的强度中的任一者。利用几个参数(偏移)控制NN滤波器以控制滤波器的强度。这些参数被编码在比特流中。
基于NN的环路滤波器架构
图10示出了根据一个实施方案的编码器架构(1000)。在此,W表示权重掩模。如果权重是二进制的(即,0或1),则索引i的掩模权重决定索引为i的S的样本是否被校正。如果权重是非二进制的(例如,浮点),则索引i的权重的绝对值可以被视为针对索引为i的S的样本的校正强度。术语偏移(offset)表示针对滤波器校正强度的控制参数。
当NN的第一层为卷积层时,数据集{S,S W}通常为相同大小的块(或矩阵)。然而,这些层可以被重新排列成1-D或N-D向量。可以在层输入或输出处添加适当的填充,以保证W的大小与S的大小相同。另选地,输入块S可以大于W,以考虑从第一层的减少。
对于要由视频编码器模块(1010)编码的块S,对应(局部)的重构块为S。视频编码器(1010)可对应于编码器200,除了用所提出的滤波器(1040)扩展或替换的环路滤波器(265)。NN(1020)通常由若干卷积层构成,但是也可以由例如全连接链路和/或捷径链路构成。其输入为要滤波的重构块,并且输出为权重掩模W。
从{S,S,W}将滤波器控制参数“offset”导出(1030)如下:
offset=sum(W.(S-S))/sum(W) (公式2)
其中“.”表示简单逐项乘积(T=W.S意味着ti,j=wi,jx si,j),sum(W)表示W的所有项的总和:sum(W)=∑i,jWi,j
在一个变型中,利用均方误差最小化方法从{S,S,W}将滤波器控制参数“offset”导出(1030)如下:
offset=sum(W.(S-S))/sum(W2) (公式2b)
其中sum(W2)表示W的所有平方项的总和:sum(W2)=∑i,jwi,j 2
“offset”的值被编码在针对每个块的比特流中(1050)。在一个变型中,“offset”的值在编码之前被量化。运算“X”(1060)和“+”(1070)分别对应于W的所有项与标量值“offset”的乘积以及逐项的总和。因为“offset”用于缩放权重掩模W,所以偏移也可以被认为是缩放参数。在一个变型中,W的值被削波,例如介于-1和1之间。
图11(a)、图11(b)和图11(c)分别示出了要滤波的初始重构图片的一部分、来自NN的对应权重掩模和滤波结果。在此,如图12所示,使用具有ReLU激活和一个最终削波层的六层CNN。在图11(b)中,不同的阴影对应于不同的权重值。另选地,可以使用其他激活函数,诸如图28所描绘的Leaky-ReLU,其中α参数例如等于0.1。Leaky-ReLU激活函数具有两个优点。第一,该函数促进误差反向传播算法,因此促进NN训练阶段的收敛;并且第二,其允许负权重掩模值。在一个变型中,将Leaky-ReLU用于内层,并将ReLU仅用于最后一层。
使用块作为示例,像素值为:
Figure BDA0003998883350000141
权重掩模为
Figure BDA0003998883350000142
用(公式2)针对该块计算的偏移为6。因此,
Figure BDA0003998883350000143
滤波结果为
Figure BDA0003998883350000151
如果使用(公式2b),则针对该块的偏移为8。因此,
Figure BDA0003998883350000152
滤波结果为
Figure BDA0003998883350000153
图13示出了根据一个实施方案的解码器架构(1300)。解码器的输入包括比特流,例如由编码器1000生成的比特流。视频解码器模块(1310)可对应于解码器300,除了用所提出的滤波器(1340)扩展或替换的环路滤波器(365)。NN(1320)应当与在对应编码器中使用的NN相同,以便对比特流进行正确解码。对NN(1320)的输入为要滤波的重构块,并且输出为权重掩模W。NN滤波器(1320)的输出可以为用于校正一个分量(1个信道)或多个分量(例如,亮度和色度残差样本(3个信道)或2个色度残差样本(2个信道))的缩放偏移(残差)以及可能的其他信息。
需注意,针对NN的参数在解码器处是已知的,并且不在比特流中传送。
从针对该块的比特流解码(1310)滤波器控制参数“offset”。然后将控制参数与权重掩模相乘(1360)。即,通过针对块中的每个样本的权重来缩放控制参数,以便生成针对每个样本的缩放偏移。然后将缩放偏移添加(1370)到初始重构块中的对应样本。
通过生成样本级权重掩模W,乘积W.offset对块中的每个样本提供调节偏移。需注意,在此,针对用于滤波过程的块,仅需要传送单个控制参数,因为针对NN的参数不在比特流中传输。因此,利用非常少的信令开销,所提出的滤波器就实现了滤波中的样本级调节,这可以提高压缩效率。
具有预分类的基于NN的滤波器架构
在该实施方案中,NN模块具有附加输入,诸如量化步长(QP)、图像类型(例如,类型I、P或B)、重构残差样本或来自另一分量的重构样本。在一个变型中,附加输入为分类模块(1420),其对块的样本进行分类,如图14所示。在图14中,模块(1420)以虚线示出以表示其是任选的。虽然在图14中示出了解码器,但是可以相应地修改对应编码器。该分类(1420)可以基于局部梯度或其他语义分类。例如,分类器与在现有环路滤波器诸如HEVC/VVC SAO、ALF分类器或去块滤波器分类器中使用的分类器相同。分类器可以将S的每个样本与以下项相关联:二进制标签(0:不在该类中,1:属于该类)、T个值{c1、c2…cT}中的一个整数标签或非整数值(例如,浮点cfloat)。
使用预分类器输入的一个优点在于:可以减少NN(1430)的层数,因为一般来讲,第一层的目的是执行分类。然而,使用先验显式分类器可以降低训练学习最优分类的能力。
具有多个NN的环路滤波器架构
在该实施方案中,如图15所示,使用若干NN滤波器(1530,1540)。在编码器处,应用k个滤波器(在图15中,k设定为2)以生成
Figure BDA0003998883350000161
Figure BDA0003998883350000162
对于每个块S,选择(1570)要使用的最佳滤波器作为利用S使(Si)的失真最小化的滤波器或者使率失真权衡(offseti和滤波器索引i的失真和编码成本1550、1560)最小化的滤波器。然后,经由预测(例如使用先前重构的参数)将所选择的滤波器的滤波器索引b和相关联的offsetb显式地或隐式地编码在比特流中。在一个变型中,滤波模块(1530,1540)中的每个(或一些)滤波模块之前存在分类器(1510,1520),如图15所描述,其中k=2。
在另一个实施方案中,如图16所示,使用单个分类器(1620),使得S中的每个样本被标记为Ci(i=1...k)并且可以被分别滤波为
Figure BDA0003998883350000163
S的样本(分类为Ci)被标注为(Si)。在该情况下,可在比特流中发信号通知k个偏移(offseti(i=1...k))。有利地,单个RDO模块(1630)选择最终将使用哪个CNN滤波器。在图16所描绘的示例中,RDO模块最终可选择b={}(无滤波)、b={0}(类别0被滤波,类别1未被滤波)、b={1}(类别1被滤波,类别0未被滤波)或b={0,1}(两个滤波器均被使用)。在最后一种情况下,两个偏移值{offset1,offset2}将被编码在比特流中。
在如图17所描述的k=2的变型中,针对所有NN滤波器计算单个偏移。
图18示出了根据一个实施方案的具有多个CNN的解码器架构(1800)。解码器的输入包括比特流。视频解码器模块(1810)可对应于解码器300,除了用基于NN的滤波器(1870)扩展或替换的环路滤波器(365)。
从针对该块的比特流解码(1810)滤波器控制参数“offset”和滤波器索引“b”。滤波器索引“b”控制(1840)K个CNN(1820、1830)中的哪个CNN将被用于生成权重掩模W。然后将控制参数“offset”与权重掩模相乘(1850)。然后将缩放偏移添加(1860)到初始重构块中的对应样本。
在图18中,使用不具有预分类的CNN。在其他实施方案中,可以应用例如针对图15至图16中的编码器示出的预分类模块。
在图18中,选择要用于块的CNN以及控制参数“offset”可以使滤波过程适合于当前块的局部特性。然而,可能发生的是,两个或更多个CNN都可以提供良好的校正,则选择单个CNN可能不是最佳的,因为可以优选地以某种方式累积两个或更多个CNN的益处。这也可以取决于CNN被训练的方式。
在下文中,若干方法被描述成通过组合CNN的输出而非选择最佳CNN来利用其能力。在一个示例中,假设存在若干(N)个NN,其可能已经用不同数据集单独训练,具有不同特性和/或已用不同参数(例如,不同QP值、不同图片大小或样本分辨率)进行编码。还可以使用由来自常规比特流的重构样本构成的数据集并利用经解码的SAO类型对CTU进行分类。
NN的相互组合
神经网络集成是一种联合使用多个神经网络来解决问题的学习范例。在该实施方案中,通过若干NN输出的加权线性组合将该一般原理应用于基于NN的滤波器。
图19示出了根据一个实施方案的使用多个NN进行校正的解码过程(1900)。解码器对K个滤波器索引{i0...ik-1}进行解码,从而允许在N个可用的NN中选择(1940)K个滤波器并选择K个偏移{offset0...offsetk-1}。在该示例中,K=2对应于NN(1920,1930)。对K个NN的输入是重构块S以及可能的附加信息(诸如QP、编码模式或其他分量的样本)。K个NN的输出为权重掩模{Wi}i=0...K-1。接下来,使用权重掩模和偏移的加权线性组合来使K个权重掩模和K个偏移组合(相互组合)(1950),以导出要应用(1960)于重构样本
Figure BDA0003998883350000181
的加性校正Corr(x),其中“x”表示块中位置“x”处的样本,具体如下:
Figure BDA0003998883350000182
图20示出了根据一个实施方案的使用多个NN进行校正的编码过程(2000)。编码器从N个可用的NN中选择K个NN。在该示例中,K=2。更一般地,当在滤波器中使用多于一个NN(2020,2025)时,可以应用该过程。对K个NN的输入为重构块以及可能的附加信息(诸如QP、编码模式、重构残差或其他分量的重构样本)(2015)。需注意,K的值对于基于NN的亮度或色度滤波器可以不同,例如,在亮度和色度不共享同一滤波器的情形下。
对于给定的重构块
Figure BDA0003998883350000183
(2010,例如CTU或CU),用Wk以及offsetk来分别表示利用第k个CNN获得的对应输出和相关联的缩放参数。基于初始块S(2030)和权重掩模Wk,可以导出缩放参数offset1和offset2(2040)。可在比特流中按区域或按块(CTU或CU)对缩放参数进行编码。K个CNN的相互组合允许通过NN输出的加权线性组合建立要应用于重构样本
Figure BDA0003998883350000184
的加性校正Corr(x)(2050),其中线性组合中的权重为缩放参数offsetk。在图21的示例中示出了线性组合。在数学上,线性组合可表示为:
Figure BDA0003998883350000185
将校正项添加到初始重构块,生成最终重构块(2060)。
在一个实施方案中,可以在编码器侧使用以下均方误差(MSE)的最小二乘最小化(LSM)来导出缩放值(offsetk):
Figure BDA0003998883350000186
对于使用两个CNN的特定情况,K=0或1,LSM方法允许如下导出offset0和offset1的值:
Figure BDA0003998883350000191
其中
Figure BDA0003998883350000192
Ck=∑xwk(x).wk(x),B=∑x w0(x).w1(x),并且∑x表示当前块的所有样本“x”的总和。
在下文中,使用K=2作为示例,但其可容易地扩展到K>2的值。图22示出了根据一个实施方案的使用多个NN进行校正的解码过程(2200)。类似于方法2000,使用多个NN来对初始重构样本S进行滤波。在编码器侧,方法2000在步骤2040处导出offset1和offset2。在解码器侧,方法2200对来自比特流的offset1和offset2进行解码。
图23示出了用于在给定当前重构块的情况下针对K=2选择要组合的K个NN的方法(2300)。最初,bestCost被设定为大的值。对于每个可能的对{k0;k1}(2320),如果k0=k1,则应用NN(k0)(2310)并导出一个单个offset0(2345)。如果k0≠k1,则也应用NN(k1)(2310),并导出缩放参数{offset0;offset1}(2340)。计算校正因子(2350,2355),并计算经校正的重构块Rec′
Figure BDA0003998883350000193
(2360)。接下来,利用例如拉格朗日乘子来估计编码成本(2370),考虑初始块的失真以及{k0;k1;offset0;offset1}的编码成本。如果来自当前对{k0;k1}的成本小于bestCost(2380),则将bestCost设定为当前Cost并存储{k0;k1;offset0;offset1,Rec′}(2385)。在测试所有可能的对之后,恢复与bestCost相关联的Rec′并对参数{k0;k1;offset0;offset1}进行编码(2390)。
语法示例
表2提供了与上述各种实施方案有关的语法元素的示例。具体地,表2提供了用于对NN的索引以及要用于利用NN的相互组合来校正一个重构块的缩放参数进行编码的语法示例。在该示例中,图片中的当前块位置为(rx,ry),并且对于亮度分量,K=2,对于色度分量,K=1。
表2
Figure BDA0003998883350000194
Figure BDA0003998883350000201
语法元素的语义如下:
filter_luma_flag、filter chroma flag分别指定亮度或色度样本块是否被校正(利用NN滤波器)。
idx_filter_off_val_luma[k]允许导出要用于推断待组合的K个NN输出的NN的K个索引{ki}i=0,1。例如,ki=idx_filter_off_val_luma[i]。
在一个实施方案中,在编码之前对ki的值进行排序(例如,升序),使得ki+1≥ki。使ki+1=ki可以解决以下情况:实际使用的NN滤波器的数量(cpt_scale_off)小于K个NN滤波器并且由此对少于K个缩放参数进行编码。变量cpt_scale_off对应于非零缩放参数offsetk的数量。
在示例中,标识指示多少个NN被组合。例如,在K=2的情况下,k0=k1允许管理以下情况:仅使用一个单个NN(没有相互组合)并且对仅一个缩放参数进行编码。
在一个变型中,如下导出K个索引{ki}i=0,1
ki=pred_idx_filter[i]+idx_filter_off_val_luma[i]%(K)
其中“pred_idx_filter[i]”为值ki的预测因子。例如,预测因子可以为先前索引(pred_idx_filter[i]=ki-1)或者先前解码的NN滤波器索引。
在另一个变型中,将N个可能索引排序到表中,该表在对针对每个块的NN参数(nn_filter())进行编码之前被更新。通过在列表的顶部移动最可能的索引(例如,由先前编码的左侧和顶部块使用的索引)来进行更新。这样,旧的经编码的索引缓慢到达列表的底部,而最近使用的索引位于列表的顶部。经编码的值(idx_filteroff_val_luma[i])表示不具有预测(pred_idx_filter[i]=0)的对应于该列表中的滤波器的索引(不是滤波器索引本身)。
scale_off_diff_abs[i]允许如下导出缩放参数值offseti
offseti=pred_scale_off[i]+diff[i]
其中diff[i]=scale_off_diff_sign_flag[cIdx][rx][ry][i]?1:(-1)*scale_off_diff_abs[i]。
变量“pred_scale_off[i]”为offi的预测因子。例如:
pred_scale_off[i]=(i>0)?pred_scale_off[i-1]:0
在一个变型中,“pred_scale_off[i]”等于offx的最后经解码的值。
idx_filter_off_val_chroma允许导出要用于推断待组合的K个NN输出的NN的索引kC。例如,kC=idx_filter_off_val_chroma。实际上,在表2的示例中,色度分量cIdx=1和cIdx=2的滤波器索引是相同的。
表3a示出了与没有组合NN输出的基于NN的滤波器相比,针对亮度NN滤波器使用所提出的NN的相互组合方法的结果。利用所提出的NN输出组合,与针对没有利用组合的方法的0.57%比特率降低相比,获得了约0.89%的比特率降低。表3b示出了利用所提出的NN与另一组NN的相互组合获得的结果。利用经ReLU激活函数训练的NN已经获得表3a和表3b的结果(左)。利用经Leaky ReLU激活函数训练的NN已经获得表3b的结果(右)。在该示例中,与利用ReLU激活函数的1.60%比特率降低相比,使用LeakyReLU激活函数获得约2.45%的比特率降低。
表3a
Figure BDA0003998883350000221
表3b
Figure BDA0003998883350000222
NN的空间组合
在另一个实施方案中,组合若干NN以通过将块空间分割成若干(K)个区域来校正当前重构块,其中不同NN可用于不同块分区。图24示出了K=2和K=4的此类空间分区的一些示例,其中不同的图案与不同的NN滤波器相关联。在这些示例中,针对块的每个分区/区域编码一个缩放参数(offsetk)。
在一个变型中,块中的若干分区使用同一NN但可能使用不同的缩放参数值,如图24(f)所描绘。在解码阶段,这具有推断一个单个NN但使缩放适于每个分区的优点。
表4提供了与该实施方案相关联的语法元素的示例。具体地,表4提供了用于对NN的索引、分区形状(dir_split)以及要用于利用NN的相互组合来校正一个重构块的缩放参数进行编码的语法示例。在该示例中,图片中的当前块位置为(rx;ry)并且对于色度分量,K=1。对于亮度分量,实际使用的NN的数量(cpt_scale_off)取决于分区形状,如图25所示。语法元素的语义与表2中的相同。索引或缩放参数预测因子可以为先前解码的分区的值。
4
Figure BDA0003998883350000231
Figure BDA0003998883350000241
表5示出了与没有组合NN输出的基于NN的滤波器相比,使用所提出的NN空间组合方法的结果。
表5
Figure BDA0003998883350000242
在一个实施方案中,可以在比特流(例如,条带标头或图片标头)中发信号通知可组合多少个NN(K)。此外,可以发信号通知较大一组M个NN中的一组N个NN,其中M>N。在一个变型中,可以从比特流中的其他参数(诸如量化参数(QP)、图片大小或视频的性质(例如,体育、游戏、电影))来推断N个NN。例如,如果已使用经M个不同QP值{qp0...qPM-1}编码的视频序列来训练M个NN,则解码器可从当前QP推断N个NN。例如,该子组可由已用低于当前QP值的一些(例如,2个)QP值及高于当前QP值的一些(例如,2个)QP值来训练的NN组成。
前述实施方案可以扩展到其他校正模型(Corr(x)的表达式)和用于应用校正的其他模型(Rec’(x)的表达式)。例如,校正可以基于以下模型:
正模型
-线性校正模型。参数为{offsetk,bias}
Figure BDA0003998883350000251
用于应用校正的模型:
加性校正模型:
Figure BDA0003998883350000252
-乘性校正模型:
Figure BDA0003998883350000253
-线性校正模型(偏差为一个缩放参数):
Figure BDA0003998883350000254
如前所述,缩放参数{offsetk,bias}的推导可以由编码器使用例如LSM方法来进行,这涉及通过(公式3)相对于等于零的变量{offsetk,bias}的部分推导而获得的K+1个等式的方程组。
Figure BDA0003998883350000255
基于区域的NN滤波器(例如,去块滤波器)
在NN滤波器为专用于校正已知位置的一些空间定位伪影的基于区域的滤波器(例如,去块滤波器)的情况下,校正可限于这些已知位置(例如,重构CU边缘)。在这种情况下,NN滤波器推断可为如图26中所示的在空间已知伪影位置(例如,水平或竖直CU边缘)的方向上的单向扫描卷积。
训练
NN的训练(NN参数的设置)可以利用基于监督式学习的传统方法来进行,其中NN的输出与期望的输出(初始信号)进行匹配,从而尝试使损失函数(诸如NN输出与期望的输出之间的差值)最小化。可以使用例如反向传播方法,其中计算损失函数相对于网络的权重的梯度允许迭代地调节NN的权重和偏差,诸如梯度下降或随机梯度下降。
在一个实施方案中,通过利用梯度下降算法使损失最小化来执行NN参数的训练。损失可以为失真
Figure BDA0003998883350000261
或为具有“offsetk”或“offsetk和bk”的编码成本的率失真量度。
对于训练阶段,数据集包含一组对{S,S},其可以是块补丁。可以通过从经编码的视频比特流提取重构块来创建S值。
可利用编码模式进行分类,其中从经一定范围的QP进行编码的块或从仅I图片或仅P或B图片选择的块创建数据集,如图27所示。即,可以基于具有不同编码模式特征的数据集来训练若干NN。训练也可以分至少两个步骤完成。在第一步骤中,利用从经解码的比特流B1(2710,2720)的帧内图片提取(2730)的补丁来训练(2740)一组NN(NN-1),接着利用仅对帧内图片启用的这些NN-1滤波器来编码(2750)一组视频序列以生成比特流B2。在第二步骤中,可以从经解码的比特流B2(2760)的帧间图片提取(2770)补丁,以便训练(2780)专用于对帧间图片进行滤波的另一组NN(NN-2)。
如果NN滤波器的目的是替换在比特流中使用的现有滤波器(例如,SAO、ALF等),则可以利用在比特流中存在的分类来选择S值。例如,考虑SAO,如果已经利用SAO参数EO_90来编码
Figure BDA0003998883350000263
则其将与关联于“EO_90”的NN滤波器相关联。
然而,可由可能已基于率失真和其他上下文考虑因素的编码器选择来对比特流中的分类进行偏置。例如,编码成本(速率)取决于CABAC上下文,该上下文取决于CABAC编码器的历史。对于训练,可以优选地不考虑速率成本而仅考虑失真。可以通过针对
Figure BDA0003998883350000264
仅选择在模式NEW中进行编码的CTU(丢弃合并模式和OFF模式)来克服该限制,但编码偏差仍然存在。
优选地,可以考虑不使用比特流中的SAO参数,而是重新确定给定的最佳SAO模式
Figure BDA0003998883350000262
并仅使用失真。
对于具有多个NN的方案,可以如下迭代地执行微调:
1)阶段1:将主数据集MD分离成k个数据集Db(b=1...k)。
2)单独训练k个NN滤波器。
3)阶段2:如下重新生成k个数据集Db(b=1...k):对于MD中的每个数据“I”,选择使损失最小化的NN滤波器“t”并将“i”附加到Dt。接下来利用Db(b=1...k)重新训练k个滤波器。
4)迭代进行3)。
然而,可能发生的是,一个数据集“x”中的数据数量可能变得非常小。为了避免这个问题,可以确定每个数据集中的最小数据数量N,并且如下进行:
1)阶段1:将主数据集MD分离成k个数据集Db(b=1...k)。
2)单独训练k个NN滤波器。
3)阶段2:
○对于MD中的每个数据“i”:
■将针对“i”的数据集候选列表初始化为C(i)={0...(k-1)}
■计算利用每个滤波器b获得的损失:Lb(i)。
■“i”被标记为“未放置”
○对于MD中的每个数据“i”:
○在(数据“i”被标记为未放置在一个数据集中)时
■t=argmink{Lk(i)}(k=t是利用k∈C(i)使Lk(i)最小化的滤波器)
■如果card{Dt<N},则将数据“i”附加到Dt
■否则如果Dt中的一个数据“d”的损失Lt(d)>Lt(i),则用Dt中的“i”替换“d”,并且“d”变为(被标记为)“未放置”,“i”被标记为“已放置”
■否则从列表C(i)去除“t”
4)利用Db(b=1...k)重新训练k个滤波器。
5)迭代进行3)
在上文中,由于当前视频标准通常是基于块的,因此NN滤波过程是逐块执行的。然而,本发明实施方案可应用于具有不同于矩形或正方形形状的区域,因为NN可针对其他形状训练和实现,或可以是完全卷积网络,因此与区域形状或大小无关。
传统滤波器如HEVC和VVC中的SAO或ALF使用闭环方法,其中计算“最佳”校正,但像素到滤波器的分类通常非常简单。另一方面,先前的基于CNN的方法使用复杂的分类,但使用开环校正(其中校正不一定是有益的)。根据本实施方案,提供了一种深度神经网络(NN),用于在通过视频编解码器重构之后恢复图像,以替换或补充SAO滤波器。具体地,所提出的滤波器利用CNN的能力来进行像素分类以进行校正,同时通过在编码器处计算待应用的最佳校正来保持校正“闭环”。为了概括二进制分类,CNN还可计算要在特定像素上设定的校正量。其利用了对参数进行编码以控制滤波动作同时仅需要在比特流中对少量数据进行编码的益处。
利用如图12和图13所示的所提出的滤波器,针对块仅传输单个偏移,或者如图14所示,针对块传输一个或多个偏移。即,将对非常少量的数据进行编码以发信号通知偏移。然而,因为NN可生成像素级权重掩模(掩模中的值可因像素而不同),所以待应用以调节块中的像素的实际偏移(权重*偏移)可因像素而不同,由此以较低信令成本实现比HEVC和VVC中的SAO滤波器更精细的粒度。NN还可以在子块的基础上生成权重(子块内的相同权重,但是块中的子块的权重可能彼此不同)。
此外,所提出的NN滤波器可应用于图片中的仅一些特定位置处。例如,该滤波器可以具体用于校正块伪影,其主要发生在块边界附近和/或仅发生在变换边界处或仅发生在预测单元处。
另外,该方法不限于基于NN的滤波器,而是可应用于其中将校正项添加到重构图片以改进图像质量并减少编码伪影的任何其他或传统滤波器。虽然在以上示例中描述了环路滤波,但所提出的滤波方法也可在编码环路外执行,例如作为应用于解码器外部的后处理步骤。
本文描述了各种方法,并且每种方法包括用于实现方法的一个或多个步骤或动作。除非正确操作方法需要特定顺序的步骤或动作,否则可修改或组合特定步骤和/或动作的顺序和/或用途。此外,术语例如“第一”、“第二”等可用于各种实施方案以修改元件、部件、步骤、操作等,例如“第一解码”和“第二解码”。除非特定需要,否则使用此类术语并不暗示对修改操作的排序。因此,在这个示例中,第一解码不需要在第二解码之前执行,并且可例如在第二解码之前、期间或重叠的时间段发生。
本专利申请中所述的各种方法和其他方面可用于修改视频编码器200和解码器300的模块,例如运动修正和运动补偿模块(270、272、372、375),如图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 (38)

1.一种方法,所述方法包括:
访问图片的区域的某种型式的重构样本;
使用神经网络,基于所述区域的所述型式的重构样本,生成针对所述区域中的多个样本中的相应样本的权重;
对与所述神经网络相对应的针对所述区域的单个偏移参数进行编码或解码;以及
通过调节所述区域中的所述多个样本来对所述区域进行滤波,其中响应于针对所述区域中的样本的权重以及针对所述区域的所述偏移来调节所述样本。
2.根据权利要求1所述的方法,其中针对所述区域中的每个样本生成权重。
3.根据权利要求1或2所述的方法,其中所述区域的所述型式的重构样本基于对所述区域的预测以及所述区域的预测残差。
4.根据权利要求1至3中任一项所述的方法,其中所述单个偏移在被编码之前被量化。
5.根据权利要求1至4中任一项所述的方法,所述方法还包括:
响应于要针对所述区域进行编码的样本与所述区域的所述型式的重构样本的加权平均差值来获得所述偏移。
6.根据权利要求1至5中任一项所述的方法,其中所述对所述区域进行滤波包括:
通过针对所述样本的所述权重,缩放针对所述区域的所述偏移,其中所述经缩放的偏移被添加到所述样本以调节所述样本。
7.根据权利要求1至6中任一项所述的方法,其中还响应于所述区域的量化参数、所述图片的图片类型、所述区域的分类中的至少一者来生成所述权重。
8.根据权利要求1至7中任一项所述的方法,其中使用多个神经网络。
9.根据权利要求8所述的方法,所述方法还包括:选择所述多个神经网络中的网络以用于对所述区域进行滤波。
10.根据权利要求8至9中任一项所述的方法,其中所述多个神经网络中的每个网络对应于所述区域的分类。
11.根据权利要求8至10中任一项所述的方法,其中所述多个神经网络共享一个单个偏移参数。
12.根据权利要求8至10中任一项所述的方法,其中单独的偏移参数与所述多个神经网络中的每个网络相关联。
13.根据权利要求1至12中任一项所述的方法,所述方法还包括:
使用另一神经网络,基于所述区域的所述型式的重构样本,生成针对所述区域中的所述多个样本中的所述相应样本的另一权重;以及
对与所述另一神经网络相对应的针对所述区域的另一单个偏移参数进行编码或解码,
其中还响应于针对所述区域中的所述样本的所述另一权重以及针对所述区域的所述另一偏移来调节所述样本。
14.根据权利要求13所述的方法,其中加权和被添加到所述区域中的所述样本以对所述样本进行滤波,其中通过针对所述样本的所述权重对所述偏移进行加权并通过所述另一权重对所述另一偏移进行加权,以形成所述加权和。
15.根据权利要求13或14所述的方法,其中所述神经网络和所述另一神经网络是从多个神经网络中选择的。
16.根据权利要求15所述的方法,其中在比特流中发信号通知指示所述神经网络的索引和指示所述另一神经网络的另一索引。
17.根据权利要求13至15中任一项所述的方法,其中所述偏移不同于所述另一偏移,并且其中所述神经网络与所述另一神经网络相同。
18.根据权利要求1至17中任一项所述的方法,其中所述区域为编码树块、编码块或编码块的分区。
19.一种装置,所述装置包括一个或多个处理器,其中所述一个或多个处理器被配置为:
访问图片的区域的某种型式的重构样本;
使用神经网络,基于所述区域的所述型式的重构样本,生成针对所述区域中的多个样本中的相应样本的权重;
对针对所述区域的单个偏移参数进行编码或解码;以及
通过调节所述区域中的所述多个样本来对所述区域进行滤波,其中响应于针对所述区域中的样本的权重以及针对所述区域的所述偏移来调节所述样本。
20.根据权利要求19所述的装置,其中针对所述区域中的每个样本生成权重。
21.根据权利要求19或20所述的装置,其中所述区域的所述型式的重构样本基于对所述区域的预测以及所述区域的预测残差。
22.根据权利要求19至21中任一项所述的装置,其中所述单个偏移在被编码之前被量化。
23.根据权利要求19至22中任一项所述的装置,其中所述一个或多个处理器被进一步配置为:
响应于要针对所述区域进行编码的样本与所述区域的所述型式的重构样本的加权平均差值来获得所述偏移。
24.根据权利要求19至23中任一项所述的装置,其中所述一个或多个处理器被配置为通过以下方式对所述样本进行滤波:
通过针对所述样本的所述权重,缩放针对所述区域的所述偏移,其中所述经缩放的偏移被添加到所述样本以调节所述样本。
25.根据权利要求19至24中任一项所述的装置,其中还响应于所述区域的量化参数、所述图片的图片类型、所述区域的分类中的至少一者来生成所述权重。
26.根据权利要求19至25中任一项所述的装置,其中使用多个神经网络。
27.根据权利要求26所述的装置,所述装置还包括:选择所述多个神经网络中的网络以用于对所述区域进行滤波。
28.根据权利要求26至27中任一项所述的装置,其中所述多个神经网络中的每个网络对应于所述区域的分类。
29.根据权利要求26至28中任一项所述的装置,其中所述多个神经网络共享一个单个偏移参数。
30.根据权利要求26至28中任一项所述的装置,其中单独的偏移参数与所述多个神经网络中的每个网络相关联。
31.根据权利要求19至30中任一项所述的装置,其中所述一个或多个处理器被进一步配置为:
使用另一神经网络,基于所述区域的所述型式的重构样本,生成针对所述区域中的所述多个样本中的所述相应样本的另一权重;以及
对与所述另一神经网络相对应的针对所述区域的另一单个偏移参数进行编码或解码,
其中还响应于针对所述区域中的所述样本的所述另一权重以及针对所述区域的所述另一偏移来调节所述样本。
32.根据权利要求31所述的装置,其中加权和被添加到所述区域中的所述样本以对所述样本进行滤波,其中通过针对所述样本的所述权重对所述偏移进行加权并通过所述另一权重对所述另一偏移进行加权,以形成所述加权和。
33.根据权利要求31或32所述的装置,其中所述神经网络和所述另一神经网络是从多个神经网络中选择的。
34.根据权利要求33所述的装置,其中在比特流中发信号通知指示所述神经网络的索引和指示所述另一神经网络的另一索引。
35.根据权利要求31至33中任一项所述的装置,其中所述偏移不同于所述另一偏移,并且其中所述神经网络与所述另一神经网络相同。
36.根据权利要求19至35中任一项所述的装置,其中所述区域为编码树块、编码块或编码块的分区。
37.一种包含比特流的信号,所述信号通过执行根据权利要求1至18中任一项所述的方法形成。
38.一种计算机可读存储介质,所述计算机可读存储介质具有存储于其上的指令,所述指令用于根据权利要求1至18中任一项所述的方法对视频进行编码或解码。
CN202180042531.5A 2020-06-04 2021-05-24 视频编码中基于神经网络的滤波器 Pending CN115943629A (zh)

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
EP20305591.8 2020-06-04
EP20305591 2020-06-04
EP20306417.5 2020-11-20
EP20306417 2020-11-20
EP20306628 2020-12-21
EP20306628.7 2020-12-21
EP21305444 2021-04-07
EP21305444.8 2021-04-07
PCT/EP2021/063771 WO2021244884A1 (en) 2020-06-04 2021-05-24 Neural network based filter in video coding

Publications (1)

Publication Number Publication Date
CN115943629A true CN115943629A (zh) 2023-04-07

Family

ID=76059905

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180042531.5A Pending CN115943629A (zh) 2020-06-04 2021-05-24 视频编码中基于神经网络的滤波器

Country Status (5)

Country Link
US (1) US20230188713A1 (zh)
EP (1) EP4162680A1 (zh)
JP (1) JP2023528780A (zh)
CN (1) CN115943629A (zh)
WO (1) WO2021244884A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220337824A1 (en) * 2021-04-07 2022-10-20 Beijing Dajia Internet Information Technology Co., Ltd. System and method for applying neural network based sample adaptive offset for video coding
CN116366841A (zh) * 2021-12-28 2023-06-30 维沃移动通信有限公司 环路滤波方法及终端
WO2023132765A1 (en) * 2022-01-04 2023-07-13 Telefonaktiebolaget Lm Ericsson (Publ) Filtering for image encoding and decoding
WO2023156365A1 (en) * 2022-02-15 2023-08-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Encoder, decoder and methods for coding a picture using a soft classification
WO2024019343A1 (ko) * 2022-07-20 2024-01-25 현대자동차주식회사 다양한 잡음 및 특성에 적응적인 비디오 인루프 필터
WO2024025280A1 (en) * 2022-07-27 2024-02-01 Samsung Electronics Co., Ltd. Method and system for content-based scaling for artificial intelligence based in-loop filters

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7591630B2 (en) * 2003-08-29 2009-09-22 Casepick Systems, Llc Materials-handling system using autonomous transfer and transport vehicles
KR102216947B1 (ko) * 2015-06-08 2021-02-18 브이아이디 스케일, 인크. 화면 내용 코딩을위한 인트라 블록 복사 모드
KR102124714B1 (ko) * 2015-09-03 2020-06-19 미디어텍 인크. 비디오 코딩에서의 신경망 기반 프로세싱의 방법 및 장치
KR101974261B1 (ko) * 2016-06-24 2019-04-30 한국과학기술원 Cnn 기반 인루프 필터를 포함하는 부호화 방법과 장치 및 복호화 방법과 장치
EP3451293A1 (en) * 2017-08-28 2019-03-06 Thomson Licensing Method and apparatus for filtering with multi-branch deep learning
EP3685577A4 (en) * 2017-10-12 2021-07-28 MediaTek Inc. METHOD AND DEVICE OF A NEURAL NETWORK FOR VIDEO ENCODING
CN115115720A (zh) * 2018-04-25 2022-09-27 杭州海康威视数字技术股份有限公司 一种图像解码、编码方法、装置及其设备
JP7410149B2 (ja) * 2018-08-24 2024-01-09 中興通訊股▲ふん▼有限公司 視覚メディアエンコードおよびデコードのための平面予測モード
US10311334B1 (en) * 2018-12-07 2019-06-04 Capital One Services, Llc Learning to process images depicting faces without leveraging sensitive attributes in deep learning models
EP3970374A4 (en) * 2019-06-19 2023-08-16 Beijing Dajia Internet Information Technology Co., Ltd. METHOD AND APPARATUS FOR PREDICTION REFINING WITH OPTICAL FLOW
EP4022902A4 (en) * 2019-09-25 2022-11-23 Huawei Technologies Co., Ltd. TRIANGULAR FUSION MODE HARMONIZATION WITH WEIGHTED PREDICTION
EP3863284A1 (en) * 2020-02-04 2021-08-11 Apple Inc. Multi-stage block coding

Also Published As

Publication number Publication date
EP4162680A1 (en) 2023-04-12
WO2021244884A1 (en) 2021-12-09
JP2023528780A (ja) 2023-07-06
US20230188713A1 (en) 2023-06-15

Similar Documents

Publication Publication Date Title
CN115943629A (zh) 视频编码中基于神经网络的滤波器
CN112352427B (zh) 基于图像块的非对称二元分区的视频编码和解码的方法和装置
US20220141456A1 (en) Method and device for picture encoding and decoding
US20220385922A1 (en) Method and apparatus using homogeneous syntax with coding tools
CN114208178A (zh) 用于视频编码和解码的二次变换
CN112740682A (zh) 用于依赖性标量量化的标量量化器决策方案
CN115104301A (zh) 用于视频编码或解码的基于神经网络的帧内预测
WO2020254335A1 (en) Lossless mode for versatile video coding
CN112771874A (zh) 用于画面编码和解码的方法和设备
CN113170135A (zh) 用于图片编码和解码的方法及设备
CN115918071A (zh) 使变换过程自适应于基于神经网络的帧内预测模式
US11973964B2 (en) Video compression based on long range end-to-end deep learning
CN111937383A (zh) 视频编码和解码中的色度量化参数调整
US20240031606A1 (en) Karhunen loeve transform for video coding
CN114731396A (zh) 图像块的深度帧内预测
CN113424531A (zh) 用于使用照明补偿进行图片编码和解码的方法和设备
US20240155148A1 (en) Motion flow coding for deep learning based yuv video compression
EP4214928A1 (en) Deep prediction refinement
WO2024002879A1 (en) Reconstruction by blending prediction and residual
EP3618443A1 (en) Illumination compensation in video coding
WO2024064329A1 (en) Reinforcement learning-based rate control for end-to-end neural network bsed video compression
CN112385226A (zh) 视频编码中的照度补偿
CN115336267A (zh) 用于联合色度编码块的缩放过程
CN115462080A (zh) 使用深度神经网络的运动修正
CN114026857A (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: 20231019

Address after: Paris France

Applicant after: Interactive digital CE patent holdings Ltd.

Address before: French Sesong Sevigne

Applicant before: Interactive digital VC holdings France Ltd.

TA01 Transfer of patent application right