CN116134822A - 用于更新基于深度神经网络的图像或视频解码器的方法和装置 - Google Patents
用于更新基于深度神经网络的图像或视频解码器的方法和装置 Download PDFInfo
- Publication number
- CN116134822A CN116134822A CN202180059741.5A CN202180059741A CN116134822A CN 116134822 A CN116134822 A CN 116134822A CN 202180059741 A CN202180059741 A CN 202180059741A CN 116134822 A CN116134822 A CN 116134822A
- Authority
- CN
- China
- Prior art keywords
- neural network
- decoder
- network based
- depth neural
- encoder
- 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
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 123
- 238000000034 method Methods 0.000 title claims abstract description 104
- 238000012549 training Methods 0.000 claims description 119
- 238000012986 modification Methods 0.000 claims description 19
- 230000004048 modification Effects 0.000 claims description 19
- 238000013442 quality metrics Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 22
- 230000015654 memory Effects 0.000 description 22
- 230000008569 process Effects 0.000 description 22
- 230000033001 locomotion Effects 0.000 description 20
- 238000004891 communication Methods 0.000 description 19
- 230000006835 compression Effects 0.000 description 17
- 238000007906 compression Methods 0.000 description 17
- 238000012545 processing Methods 0.000 description 15
- 230000006978 adaptation Effects 0.000 description 13
- 239000013598 vector Substances 0.000 description 12
- 238000013139 quantization Methods 0.000 description 7
- 230000011664 signaling Effects 0.000 description 6
- 230000009466 transformation Effects 0.000 description 5
- 239000000203 mixture Substances 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 238000005192 partition Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000008485 antagonism Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000001125 extrusion Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000010561 standard procedure Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/002—Image coding using neural networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种用于对至少一个图像的至少一部分进行解码的方法和装置。该方法包括对至少一个更新参数进行解码,以及基于该经解码的更新参数来修改基于深度神经网络的解码器。该方法还包括使用至少该经修改的解码器来对至少一个图像的至少一部分进行解码。
Description
技术领域
本实施方案整体涉及一种用于编码和解码图像和视频的方法和装置,并且更具体地,涉及一种用于基于端对端深度学习或深度神经网络高效地提供视频压缩和/或解压缩的方法或装置。
背景技术
为了实现高压缩效率,图像和视频编码方案通常采用预测和变换来利用视频内容中的空间和时间冗余。一般来讲,帧内或帧间预测用于利用图像内或图像间相关性,然后对在原始块与预测块之间的差异(通常表示为预测误差或预测残差)进行变换、量化、和熵编码。为了重构视频,通过对应于熵编码、量化、变换、和预测的逆过程对压缩数据进行解码。
发明内容
根据实施方案,提供了一种更新基于深度神经网络的解码器的方法,该方法包括对至少一个更新参数进行解码,以及基于所述经解码的更新参数来修改基于深度神经网络的解码器。
根据另一实施方案,提供了一种用于更新基于深度神经网络的解码器的装置,该装置包括一个或多个处理器,其中所述一个或多个处理器被配置为对至少一个更新参数进行解码,以及基于所述经解码的更新参数来修改基于深度神经网络的解码器。
根据另一实施方案,提供了一种用于获得更新参数的方法,该更新参数用于更新基于深度神经网络的解码器,该方法包括:获得至少一个更新参数,该至少一个更新参数用于修改从使用第一训练配置训练基于深度神经网络的自编码器中定义的基于深度神经网络的解码器,所述至少一个更新参数作为使用第二训练配置训练所述基于深度神经网络的自编码器的函数而获得,以及对所述至少一个更新参数进行编码。
根据另一实施方案,提供了一种用于获得更新参数的装置,该更新参数用于更新基于深度神经网络的解码器,该装置包括一个或多个处理器,其中所述一个或多个处理器被配置为获得至少一个更新参数,该至少一个更新参数用于修改从使用第一训练配置训练基于深度神经网络的自编码器中定义的基于深度神经网络的解码器,所述至少一个更新参数作为使用第二训练配置训练所述基于深度神经网络的自编码器的函数而获得,以及对所述至少一个更新参数进行解码。
一个或多个实施方案还提供了一种计算机程序,该计算机程序包括指令,该指令在由一个或多个处理器执行时致使一个或多个处理器执行根据下述实施方案中的任一实施方案的方法。本实施方案中的一个或多个实施方案还提供一种计算机可读存储介质,该计算机可读存储介质具有存储在其上的指令,该指令用于执行根据下述实施方案中的任一实施方案的方法。一个或多个实施方案还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有根据本文所述方法生成的比特流。一个或多个实施方案还提供了一种用于发射或接收比特流的方法和装置,所述比特流根据本文所述的方法生成。
通过将结合附图阅读的示例性实施方案的以下详细描述,一般方面的这些和其它方面、特征和优点将变得显而易见。
附图说明
图1示出了可实现本发明实施方案各方面的系统的框图。
图2示出了视频编码器的实施方案的框图。
图3示出了视频解码器的实施方案的框图。
图4A示出了自编码器的实施方案的示图。
图4B示出了基于深度神经网络的编码器的实施方案的示图。
图4C示出了基于深度神经网络的解码器的实施方案的示图。
图5A示出了根据实施方案的用于获得针对基于DNN的解码器的至少一个更新参数的方法。
图5B示出了用于获得基于DNN的解码器的更新参数的实施方案。
图5C示出了根据实施方案的用于对至少一个图像或至少一个图像的一部分进行编码的方法。
图6A示出了根据实施方案的用于更新基于DNN的解码器的方法。
图6B示出了根据实施方案的用于对至少一个图像的至少一部分进行解码的方法。
图7示出了基于DNN的编码器和基于DNN的解码器的实施方案的示例性示图。
图8A示出了用于修改自编码器的解码器部分的实施方案的示图。
图8B示出了用于修改自编码器的解码器部分的另一实施方案的示图。
图8C示出了用于修改自编码器的解码器部分的另一实施方案的示图。
图8D示出了用于修改自编码器的解码器部分的另一实施方案的示图。
图9示出了具有多个解码器输出的自编码器的实施方案的示图。
图10示出了用于层更新训练的自编码器的实施方案的示图。
图11示出了用于层更新训练的自编码器的另一实施方案的示图。
图12示出了根据本原理的示例的通过通信网络进行通信的两个远程设备。
图13示出了根据本原理的示例的信号语法。
图14示出了根据实施方案的用于发射信号的装置的实施方案的示图。
图15示出了根据实施方案的用于发射信号的示例性方法。
具体实施方式
一些图像和视频编码方案在编码解码方案的一些或所有部分中采用深度神经网络(DNN)。
使用若干类型的损失来训练DNN:“客观度量”和“主观”度量。例如,基于“客观”度量的损失通常可为均方误差(MSE)或基于结构相似性(SSIM)。虽然结果可能在感知上不如“主观度量”那么好,但是对原始信号(图像)的保真度更高。基于“主观”(或通过代理的主观)的损失可典型地在训练阶段使用生成式对抗网络(GAN)或经由代理神经网络(NN)的高级视觉度量。DNN模型的所得参数可取决于用来训练的损失而不同。
使用若干类型的训练集来训练DNN模型。首先,可以在通用训练集上训练相同的网络,从而使得性能在大范围的内容类型上令人满意。还可以使用针对特定用途的特定训练集来微调DNN模型,从而改善对域特定内容的性能。这些不同的训练将导致不同的训练模型。
因此,存在对用于压缩的深度神经网络(DNN)的需要,其适于以客观和感知/主观质量两者运行。虽然客观度量在视觉上给出了较差的结果,但是其也提供了若干优点:
-对原始信号的保真度:取决于应用,此类特性可能是至关重要的(例如,科学图像、艺术图像、视频监视等)
-视频压缩情况下的时间稳定性:使用客观度量压缩的图像通常更适于用作对视频另一帧进行编码的参考。
-在概念上,主观度量很难精确定义。例如,虽然基于语义的度量可在损失中使用,但是重构的图像随后将与原始信号非常不同。
另一方面,主观度量使得结果在感知上更令人满意,尤其是在低比特率下。
以相同的方式,虽然通用训练集确保压缩性能在宽范围的内容上一致,但是特定训练集对于特定应用可能达到更好性能。另外,可在给定速率点处训练自编码器解决方案,即,针对所发射比特流的比特率的特定范围优化模型的权重。
使用端到端压缩网络的当前方法通常针对客观度量(通常为MSE/PSNR(代表峰值信噪比))或使用感知度量(通常使用GAN或高级感知度量损失)来训练唯一的网络。在传统的编解码器中,使用量化矩阵和编码方法来使编解码器适应于更加感知定向的质量或特定内容。通常,即使降低PSNR,仔细选择的非平坦矩阵也允许提高重构帧的视觉质量。
根据实施方案,对使用客观度量和/或通用训练集的网络进行训练。网络更新用于将解码器网络转变为基于感知的解压缩器或域特定的解压缩器。更新可小而固定,使得应用可以在知道解码器架构且固定大多数层(即,权重已知)的情况下优化解码过程。在实践中,解码器的硬件版本可能与用于更新解码器的精简软件过程一起实现和使用。
根据实施方案,自编码器(AE)使用第一训练配置来训练,例如,使用客观度量诸如用于压缩的基于“信号”保真度的MSE、使用通用训练集。层被添加到解码器和/或从解码器移除,和/或适于改变解码器重构。编码器和解码器的一些层都可能更新。然后,自编码器使用另一训练配置来重新训练或微调,例如,使用主观度量或特定训练集、或针对特定比特率。
训练配置由在损失函数中使用的度量以及输入到自编码器的样本或批次的训练集来定义,使得自编码器学习其参数。其他训练配置可能在度量和/或训练集方面不同于第一训练配置,度量可能是客观或感知/主观质量度量,训练集可能是通用训练集或具有特定内容的训练集。训练配置还可能在拉格朗日参数方面不同,以用于以轻松的方式更新或细化DNN,以适应不同的比特率级别。
根据另一实施方案,提供了多个解码器输出,从而仅在循环中(即在时间预测的情况下)保持客观输出。客观输出将用于编码循环中,而主观输出可用于显示。
根据另一实施方案,将语法元素连同比特流一起或作为边信息发送到解码器,以用于更新解码器。
在下文中,描述提供了与自编码器对感知度量的适配有关的示例性实施方案。然而,本公开的范围不限于感知优化。具体地,视频还可能用于机器任务,例如在不同环境(诸如自主驾驶车辆、视频监视等)中的对象跟踪、分段等。下面描述的模型适配也可应用于这些环境中,其中感知度量可能由将解压缩视频作为输入的机器任务算法的精度度量替换。
下面描述的模型适配也适用于将编码/解码框架专用于某些特定类型的视频内容。在这种情况下,一个或多个经修改的网络层的训练和网络的微调可特别地聚焦于所考虑的特定视频内容类型。例如,视频游戏内容可为所考虑的特定内容类型。
图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包括显示器驱动器,例如,定时控制器(TCon)芯片。
另选地,例如,如果输入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)中执行的重新映射过程相逆的逆重新映射。解码后处理可使用在预编码处理中导出并且在比特流中有信号通知的元数据。
根据实施方案,参考图2和图3中描述的视频编码器和解码器的全部或部分可使用深度神经网络(DNN)来实现。
图4A示出了基于使用DNN 400的端到端压缩的自编码器的实施方案的示图。自编码器400包括编码器部分401(比特流b左侧的操作集)和解码器部分402,该编码器部分被配置用于对输入I进行编码和产生比特流b,该解码器部分被配置用于对来自比特流b的输出进行重构。
网络的编码器部分401的输入I可包括:
○视频的图像或帧;
○图像的一部分;
○表示一组图像的张量;
○表示一组图像的裁切部分的张量。
输入I可具有一个或多个分量,例如单色、RGB或YUV分量。
编码器网络401通常由具有步幅的一组卷积层组成,从而使得减小输入的空间分辨率同时增加深度,即输入的通道数目。也可使用挤压操作来替换步幅的卷积层(空间到深度经由再成形和置换)。在图4A所示的示例性实施方案中,示出了三层,但是可使用更少或更多的层。
然后,对编码器的输出(由张量构成,该张量在下文有时被称为潜(latent))进行量化和熵编码,以产生比特流b。在训练时,使用所谓的“空间瓶颈”以使得压缩原始数据,该空间瓶颈减少潜或“熵瓶颈”中值的数目以模拟熵编码模块。“b”被称为比特流,即编码语法元素集和表示量化符号的二进制的有效载荷,其被发射到解码器。
需注意,存在一些更为复杂的布局,例如向网络添加“超先验自编码器”(超先验),以便联合地学习编码器输出的潜分布特性。关于此类自编码器的更多细节可以见于D·Minnen、J·Ballé、G·Toderici的“用于学习型图像压缩的联合自回归和分层先验(JointAutoregressive and hierarchical prior for learned image compression)”,神经信息处理系统大会(NIPS)2018”。
图4B示出了基于深度神经网络的图像或视频编码器410的实施方案的示图。根据实施方案,编码器410是上文参照图2描述的基于块的编码器的一部分。根据另一实施方案,编码器410是自编码器(诸如参照图4A所描述的自编码器)的一部分。编码器410包括由具有步幅的一组卷积层组成的深度神经网络,其产生潜。然后,对潜进行量化(413)和熵编码(414),以产生比特流b。
图4C示出了基于深度神经网络的图像或视频解码器420的实施方案的示图。根据实施方案,解码器420可为基于块的解码器的一部分,诸如以上参照图3所描述的。根据另一实施方案,解码器420可对应于自编码器(诸如图4A所描述的自编码器)的解码器部分。解码器420接收经熵解码(421)和经逆量化(422)的比特流b作为输入。基于DNN的解码器423包括例如通常由(解)卷积层组成的一组层,其重构来自经解码的潜的图像或图像组
图5A示出了根据实施方案的用于获得基于DNN的解码器的至少一个更新参数的方法。该方法可在图4A或图4B描述的编码器中的任一者中实现。获得至少一个更新参数(500),该至少一个更新参数使得修改DNN解码器,该DNN解码器从使用第一训练配置训练DNN自编码器来定义。更新参数作为使用第二训练配置训练DNN自编码器的函数而获得。然后,对更新参数进行编码(501)。更新参数可在与编码图像相同的比特流中进行编码,或者在单独的比特流中进行编码。更新参数表示对DNN解码器的修改。参考图8A至图8D和图9描述了对DNN解码器的示例性修改。
根据实施方案,将比特流发射到解码器,以用于更新解码器。
图5B示出了用于获得基于DNN的解码器的更新参数的实施方案。在这个实施方案中,以如下方式获得更新参数。首先,使用第一训练配置来训练基于DNN的自编码器(510)。然后,存储基于DNN的自编码器的解码器部分的可学习参数(511)。使用第二训练配置来重新训练基于DNN的自编码器。在对基于DNN的自编码器的重新训练中,修改基于DNN的自编码器的解码器部分。更新参数表示对解码器部分的修改。参考图8A至图8D和图9描述了对解码器部分的示例性修改。
图5C示出了根据实施方案的用于对至少一个图像或图像的至少一部分进行编码的方法。该方法可在图4A或图4B描述的编码器中的任一者中实现。获得至少一个更新参数(500),该至少一个更新参数使得修改DNN解码器,该DNN解码器从使用第一训练配置训练DNN自编码器来定义。更新参数作为使用第二训练配置训练DNN自编码器的函数而获得。然后,对更新参数进行编码(501),使得该更新参数可发射到解码器以用于更新。更新参数可在与编码图像相同的比特流中进行编码,或者在单独的比特流中进行编码。更新参数表示对DNN解码器的修改。参考图8A至图8D和图9描述了对DNN解码器的示例性修改。
使用已经使用第二训练配置训练的DNN自编码器在比特流中对图像的至少一部分进行编码(502)。根据实施方案,将比特流发射到解码器。
图6A示出了根据实施方案的用于更新基于DNN的解码器的方法。该方法可在图1、图3或图4C所描述的解码器中的任一者中实现。解码器接收比特流并从比特流对至少一个更新参数进行解码(600)。然后,根据经解码的更新参数对基于DNN的解码器进行修改(601)。参考图8A至图8D和图9描述了对DNN解码器的示例性修改。
图6B示出了根据实施方案的用于对至少一个图像的至少一部分进行解码的方法。该方法可在图1、图3或图4C所描述的解码器中的任一者中实现。解码器接收比特流并从比特流对至少一个更新参数进行解码(600)。然后,根据经解码的更新参数对基于DNN的解码器进行修改(601)。参考图8A至图8D和图9描述了对DNN解码器的示例性修改。
根据实施方案,由解码器接收包括编码数据的另一比特流,编码数据表示至少一个图像的至少一部分。在一个变型中,表示至少一个图像的至少一部分的编码数据包括在与更新参数相同的比特流中。然后,经修改的基于DNN的解码器对接收到的数据进行解码(602),以重构图像的至少一部分。
图7示出了可实现图5A、图5B和图6中所述方法的基于DNN的编码器和基于DNN的解码器的实施方案的示例性示图。编码器可类似于图4A或图4B所描述的编码器。解码器可类似于图4C所描述的解码器。
使用客观度量(通常为MSE)和通用数据集来训练自编码器(编码器部分和解码器部分)(700)。损失函数还包括速率项R,该速率项取决于经编码的潜“b”的熵。λ代表拉格朗日参数,如在率失真优化中已知的。一旦以第一配置训练,则冻结网络的解码器部分,即冻结和存储解码器层的可学习权重。
对于特定用途,然后,使用用于损失函数的另一度量(通常为“感知”度量)来对编码器进行重新训练或微调(701),或者使用另一域特定训练集来进行重新训练/微调。“感知”度量由图7中的项表示。根据实施方案,特定的神经网络7010被用于利用感知度量导出损失,例如,可以使用GAN网络,或任何其他合适的神经网络。
在重新训练过程或微调期间,执行解码器适配。除了已经存在的固定层之外,在解码器网络中添加或移除一个或多个层。根据另一变型,可以适配已经存在的层。层信息(更新参数m)作为比特流的一部分或作为边信息发送到解码器。损失函数可包括附加速率项,该附加速率项用于考虑表示对解码器进行修改的更新参数的编码。该附加速率项由图7中的项α∑|w|0表示。
在解码器侧,更新参数m用于更新基于DNN的解码器(702)。另外,对网络的默认重构可以用于闭环预测编码(通常用于视频编码),并且更新重构以用于显示。对网络的默认重构可对应于经重构的输出,该经重构的输出来自利用第一训练配置的参数设定的基于DNN的解码器。
这里在更新针对第二训练配置的解码器的情况下描述整个过程。然而,本文所述的实施方案不限于一个附加的训练配置。可能针对一个或多个附加训练配置来训练DNN解码器,从而产生用于DNN解码器的一个或多个更新参数。此外,在这里描述的任何一个实施方案中,可能在第二训练配置中仅重新训练解码器部分,或者可以在第二训练配置中联合地重新训练自编码器的编码器部分和解码器部分两者。
下面,描述了用于修改自编码器的解码器部分的一些示例性实施方案。使用发送到解码器的适配参数来在解码器处执行网络的类似适配。
图8A示出了用于修改自编码器800的解码器部分的示例性实施方案的示图,该自编码器包括基于DNN的编码器801和基于DNN的解码器802。以灰色示出了自编码器的重新训练/微调部分。在解码器部分802中,将网络开始处的灰色层803添加到原始网络中,如图4A、图4B或图7中所示。该层803旨在使解码器网络802适配由编码器801发送的潜值,其可能具有不同的结构。
图8B示出了用于修改自编码器810的解码器部分的另一实施方案的示图,该自编码器包括基于DNN的编码器811和基于DNN的解码器812。以灰色示出了自编码器的重新训练/微调部分。在解码器部分中,将网络结束处的灰色层813添加到原始网络中,如图4A、图4B或图7中所示。该层813旨在适配原始解码器层的输出,以适于经修改的编码器。在一个变型中,附加层813可放置在原始网络的层之间。
图8C示出了用于修改自编码器820的解码器部分的另一实施方案的示图,该自编码器包括基于DNN的编码器821和基于DNN的解码器822。在该变型中,不是添加新层,而是由编码器发送一些层上的更新。以灰色示出了自编码器的重新训练/微调部分。
在图8C所示的示例中,最后一层823利用具有权重w的层824来更新,从而产生更新层825。可以递增地执行层更新,例如,在解码器处将一组经量化和经压缩的权重w添加到最后一层823的原始权重,以形成最后一层。根据实施方案,在编码视频比特流中发信号通知这些附加权重。在另一变型中,通过利用新层824替换原始层823来执行层更新。
根据实施方案,在编码视频比特流或边信息中发信号通知附加权重w。在变型中,可以更新其他层。
图8D示出了用于修改自编码器830的解码器部分的另一实施方案的示图,该自编码器包括基于DNN的编码器831和基于DNN的解码器832。在该变型中,自编码器还包括超先验编码器835,该超先验编码器被配置用于对由熵编码器833所使用的边信息进行学习和编码,以用于将由基于DNN的编码器831输出的潜编码到比特流b中。自编码器还包括超先验解码器836,该超先验解码器被配置用于对由熵解码器834所使用的边信息进行解码,该熵解码器对比特流b进行熵解码。关于超先验编码器和超先验解码器的更多细节可以见于D·Minnen、J·Ballé、G·Toderici的“用于学习型图像压缩的联合自回归和分层先验(JointAutoregressive and hierarchical prior for learned image compression)”,NIPS2018”。
根据图8D中所示的实施方案,对自编码器的解码器部分的修改包括对超先验解码器的更新。以灰色示出了自编码器的重新训练/微调部分。该实施方案使得更新潜分发。对超先验解码器的修改可以根据图8A、图8B或图8C所描述的变型中的任一变型来进行。
根据另一实施方案,解码器以条件层诸如条件卷积为特征。此类层具有两种输入:前一层的输出的张量元素、以及定义“条件”的另一张量。条件张量通常是利用独热方案编码的2d或3d张量。如果全局地应用条件,即条件对于所有张量元素相同,则张量形状为2d,或者如果局部地应用条件,即条件对于每个张量元素特定,则张量形状为3D。
在这种情况下,条件张量的最后量纲K的长度则取决于条件或“模式”的数量N,其中K=ceil(log2(N)),ceil是顶函数。
在该变型中,不是添加层或发送附加权重,而是在经压缩的潜旁边发信号通知整数值,以基于所期望的输出度量优化来调节解码。每个整数值基于其相应条件层的位置进行索引。
根据另一变型,将经独热编码的向量与经压缩的潜一起发送,以调节解码。条件向量基于其条件层在解码器中的位置进行压缩和索引。
对于两种变型,并非解码器中的所有层都需要是有条件的。
根据该实施方案,针对为解码设定的所有条件联合地训练自编码器。例如,根据参考图7所描述的实施方案,在第一训练配置和第二训练配置中针对自编码器执行联合训练。在联合训练中,联合地使两种损失最小化。
可以单独或组合地执行对上文关于图8A至图8D所述自编码器的解码器部分的示例性修改。
图9示出了具有多个解码器输出的自编码器900的示例性实施方案的示图。自编码器包括基于DNN的编码器901和基于DNN的解码器902。图9所示的示例示出了当在解码器结束处添加层903时对解码器的修改。然而,该实施方案也应用于上述用于修改自编码器的解码器部分的其他变型。以灰色示出了自编码器的重新训练/微调部分。
为了更新解码器,更新参数以一个或多个语法元素的形式发送到解码器。根据另一变型,更新参数还可以与包括编码数据的比特流一起发送,该编码数据表示图像或视频。在这种情况下,为了对基于“主观质量”的重构图像或视频进行解码,在解码发生之前,将附加语法元素发送到解码器。
表1中呈现了对应于所述解码器适配的语法的一些变型。更新参数可包括下面示出的语法元素中的一个或多个语法元素。
表1
相关联的语义如下:
-layer_update_count:要更新的层数,
-new_layer:如果层在网络中是新层,则为真
-layer_increment:如果层不是新层(即,这是对现有层的更新),
则layer_increment指示更新是否是超过现有默认权重的增量或者更新是否直接包括权重。
-layer_position:网络中的层位置。对于新层,位置可指层在插入之后的位置。例如,位置0将意味着第一层被更新。
-layer_type:要更新层的类型。层类型id的示例如下:
○0:2D卷积层
○1:ReLu
○2:全连接层
○3:偏置层
○等等。
-layer_tensor_dimensions[i]:与层相关联的张量的量纲。需注意,并非所有量纲都将是非零的。例如,对于ReLu层,所有量纲都为零,因为该层没有参数。
-tensor_data[i]:层参数。根据实施方案,层参数包括经压缩的张量数据。
在一个变型中,发射NN模型或模型更新的标准方法和语法诸如MPEG7 NNR(压缩神经网络表示)可以用于传送所提出的模型更新。
根据本原理的示例,如图12所示的,在通信网络NET上两个远程设备A与B之间的传输上下文中,设备A包括与存储器RAM和ROM相关的处理器,其被配置为实现用于获得更新参数的方法或用于对至少一个图像的至少一部分进行编码的方法,如关于图1至图11所描述的,并且设备B包括与存储器RAM和ROM相关的处理器,其被配置为实现用于更新基于DNN的解码器或用于对至少一个图像的至少一部分进行解码的方法,如关于图1至图11所述。
根据示例,网络是广播网络,适于将经编码的更新参数或经编码的图像从设备A广播/发射到包括设备B的解码设备。
旨在要由设备A发射的信号携带至少一个比特流,该至少一个比特流包括表示至少一个更新参数的编码数据,该至少一个更新参数用于修改基于深度神经网络的解码器,该解码器从使用第一训练配置训练基于深度神经网络的自编码器中定义。根据上述实施方案中的任一实施方案,比特流可包括用于更新参数的语法元素。
根据实施方案,该信号还可携带表示至少一个图像的至少一部分的编码数据。图13示出了此类信号在通过基于分组的传输协议发射更新参数时的语法的示例。每个已传输的分组P包括报头H和有效载荷PAYLOAD。
根据实施方案,有效载荷PAYLOAD可包括以下元素中的至少一者:
●对所述基于深度神经网络的解码器的要更新的层的数量的指示;
●至少一个更新参数包括对是否要将新层添加到所述基于深度神经网络的解码器的指示;
●至少一个更新参数包括对是否通过所述基于深度神经网络的解码器的层的至少一个权重的增量来更新所述层的指示;
●至少一个更新参数包括对是否通过向所述基于深度神经网络的解码器的层设定至少一个新权重来更新所述层的指示;
●至少一个更新参数包括对所述基于深度神经网络的解码器的要更新的层在所述基于深度神经网络的解码器的一组层中的位置的指示;
●至少一个更新参数包括对要添加的新层在所述基于深度神经网络的解码器的一组层中的位置的指示;
●至少一个更新参数包括对要更新的层或新层的层类型的指示;
●至少一个更新参数包括对要更新的层或新层的张量量纲的指示;
●至少一个更新参数包括要更新的层或新层的至少一个层参数。
根据实施方案,有效载荷包括编码数据,该编码数据表示根据上述实施方案中的任一实施方案编码的至少一个图像的至少一部分。
图14示出了用于发射此类信号的装置1400的实施方案。该装置包括访问单元1401,该访问单元被配置为访问存储在存储单元1402上的数据。数据包括根据上述实施方案中的任一实施方案的信号。装置还包括发射器1403,该发射器被配置为发射所访问的数据。根据实施方案,装置1400包括在图1中所示的设备中。
图15示出了根据上述实施方案中的任一实施方案的用于发射信号的方法的实施方案。此类方法包括访问数据(1500),该数据包括此类信号,以及发射所访问的数据(1501)。根据实施方案,该方法可以由图1或图14中的任一者所示的设备来执行。
图10和图11详细描述了可以用于训练或微调上述实施方案所描述的网络的示例性损失函数。通常,所使用的度量不再是MSE,并且可能是感知度量,或者训练集可能特定于域/应用。
图10示出了自编码器1000的示例性实施方案的示图,该自编码器包括基于DNN的编码器1001和基于DNN的解码器1002,其中最后一层1003利用具有权重w的层1004来更新,从而产生更新层1005。以灰色示出了自编码器的重新训练/微调部分。虽然图10中示出了针对层更新情况的训练适配,但是相同的原理可以应用于解码器修改的其他变型。
在训练时,损失适配如下:将正则项添加到损失,以保证所添加的权重w稀疏性。在这里,简约性使用L0范数来表示。也可以使用L1范数。参数α使得对由网络更新带来的附加速率进行归一化:例如,对于要编码的给定图像大小,归一化因子考虑对于整个图像仅发送一次网络更新这一事实。对于视频,例如每N个图像发送一次网络更新。
图11示出了自编码器1100的示例性实施方案的示图,该自编码器包括基于DNN的编码器1101和基于DNN的解码器1102,其中最后一层1103利用具有权重w的层1104来更新,从而产生更新层1105。以灰色示出了自编码器的重新训练/微调部分。虽然图11中示出了针对层更新情况的训练适配,但是相同的原理可以应用于解码器修改的其他变型。
在该变型中,代替权重稀疏性,使用熵度量代替L0范数。熵度量更确切地是如在压缩自编码器的熵瓶颈中使用的熵代理,如见于D·Minnen、J·Ballé、G·Toderici的“用于学习型图像压缩的联合自回归和分层先验(Joint Autoregressive and hierarchicalprior for learned image compression)”,NIPS 2018”。其保证权重更新具有合理的比特率开销。损失被改变为:其中H(x)是x的估计熵。
在训练期间,编码器1101和权重更新w均改变。在该变型中,权重是从最后一层的默认权重开始的增量。不过,权重也可能是一组新的权重。在损失函数中,使用针对一组样本的潜速率b和权重更新速率b'。
在给定熵编码器E和解码器E-1的情况下,权重使用固定值更新编码。这些编码器和解码器固定并且在基于DNN的解码器处已知。如在经典解码器中那样,对权重进行量化。其他给定的编码器/解码器也可以用于对更新参数进行编码,例如利用一组权重更新训练的给定自编码器,如见于D·Minnen、J·Ballé、G·Toderici的“用于学习型图像压缩的联合自回归和分层先验(Joint Autoregressive and hierarchical prior for learnedimage compression)”,NIPS 2018”。权重更新训练集例如由域适配或度量适配给出。
为了固定α系数,给出潜速率和权重更新速率之间的平衡,若干策略取决于应用是可用的:
如果仅发送1个图像,则α=1,因为权重更新将与潜一起仅使用一次。
如果要为特定应用发送许多图像,则α减小。如果已知要发送的图像数量N,则α可以固定为1/N。
本文描述了各种方法,并且每种方法包括用于实现方法的一个或多个步骤或动作。除非正确操作方法需要特定顺序的步骤或动作,否则可修改或组合特定步骤和/或动作的顺序和/或用途。另外,术语例如“第一”、“第二”等可用于各种实施方案以修改元件、部件、步骤、操作等,例如“第一解码”和“第二解码”。除非特定需要,否则使用此类术语并不暗示对修改操作的排序。因此,在这个示例中,第一解码不需要在第二解码之前执行,并且可例如在第二解码之前、期间或重叠的时间段发生。
本申请案中所描述的各种方法及其他方面可以用于修改如图2和图3中所示出的视频编码器200及解码器300或如图4A、图4B和图4C中所示出的图像或视频自编码器400、基于图像或视频DNN的编码器410或基于图像或视频DNN的解码器420的模块。此外,本发明方面不限于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 (40)
1.一种方法,所述方法包括:
-对至少一个更新参数进行解码,
-基于所述经解码的更新参数来修改基于深度神经网络的解码器。
2.一种装置,所述装置包括:
-用于对至少一个更新参数进行解码的装置,
-用于基于所述经解码的更新参数来修改基于深度神经网络的解码器的装置。
3.根据权利要求1所述的方法,还包括使用至少所述经修改的解码器来对至少一个图像的至少一部分进行解码,或者根据权利要求2所述的装置还包括用于使用至少所述经修改的解码器来对至少一个图像的至少一部分进行解码的装置。
4.一种方法,所述方法包括:
-获得至少一个更新参数,所述至少一个更新参数用于修改从使用第一训练配置训练基于深度神经网络的自编码器中定义的基于深度神经网络的解码器,所述至少一个更新参数作为使用第二训练配置训练所述基于深度神经网络的自编码器的函数而获得,
-对所述至少一个更新参数进行编码。
5.一种装置,所述装置包括:
-用于获得至少一个更新参数的装置,所述至少一个更新参数用于修改从使用第一训练配置训练基于深度神经网络的自编码器中定义的基于深度神经网络的解码器,所述至少一个更新参数作为使用第二训练配置训练所述基于深度神经网络的自编码器的函数而获得,
-用于对所述至少一个更新参数进行编码的装置。
6.根据权利要求4所述的方法,还包括使用利用所述第二训练配置训练的所述基于深度神经网络的自编码器来对至少一个图像的至少一部分进行编码,或者根据权利要求5所述的装置,还包括用于使用利用所述第二训练配置训练的所述基于深度神经网络的自编码器来对至少一个图像的至少一部分进行编码的装置。
7.一种装置,所述装置包括一个或多个处理器,其中所述一个或多个处理器被配置为:
-对至少一个更新参数进行解码,
-基于所述经解码的更新参数来修改基于深度神经网络的解码器。
8.根据权利要求7所述的装置,其中所述一个或多个处理器还被配置为使用至少所述经修改的基于深度神经网络的解码器来对至少一个图像的至少一部分进行解码。
9.一种装置,所述装置包括一个或多个处理器,其中所述一个或多个处理器被配置为:
-获得至少一个更新参数,所述至少一个更新参数用于修改从使用第一训练配置训练基于深度神经网络的自编码器中定义的基于深度神经网络的解码器,所述至少一个更新参数作为使用第二训练配置训练所述基于深度神经网络的自编码器的函数而获得,
-对所述至少一个更新参数进行编码。
10.根据权利要求9所述的装置,其中所述一个或多个处理器还被配置为使用利用所述第二训练配置训练的所述基于深度神经网络的自编码器来对至少一个图像的至少一部分进行编码。
11.根据权利要求1、3、4或6中任一项所述的方法或根据权利要求2、3或5至10中任一项所述的装置,其中修改所述基于深度神经网络的解码器包括将至少一个新层添加到所述基于深度神经网络的解码器。
12.根据权利要求11所述的方法或所述的装置,其中将所述至少一个新层添加在所述基于深度神经网络的解码器的一组层的开始处,或者在所述基于深度神经网络的解码器的一组层的结束处,或者在所述基于深度神经网络的解码器的一组层的两个层之间。
13.根据权利要求1、3、4、6或11至12中任一项所述的方法或根据权利要求2、3或5至12中任一项所述的装置,其中修改所述解码器包括对所述基于深度神经网络的解码器的一组层中的至少一层进行更新。
14.根据权利要求1、3、4、6或11至13中任一项所述的方法或根据权利要求2、3或5至13中任一项所述的装置,其中所述基于深度神经网络的解码器包括超先验解码器,所述超先验解码器被配置用于对由熵解码器所使用的边信息进行解码,所述熵解码器被配置用于对所述比特流进行熵解码,并且其中修改所述基于深度神经网络的解码器包括对所述超先验解码器进行更新。
15.根据权利要求1、3、4、6或11至14中任一项所述的方法或根据权利要求2、3或5至14中任一项所述的装置,其中所述基于深度神经网络的解码器包括至少一个条件层,并且其中所述至少一个更新参数表示用于驱动所述条件层的条件。
16.根据权利要求1、3、4、6或11至15中任一项所述的方法或根据权利要求2、3或5至15中任一项所述的装置,其中所述基于深度神经网络的解码器被配置用于输出利用所述基于深度神经网络的解码器获得的第一重构数据,所述第一重构数据用作所述基于深度神经网络的解码器的参考,并且其中所述基于深度神经网络的解码器被配置用于输出利用所述经修改的解码器获得的第二重构数据,所述第二重构数据用于显示。
17.根据权利要求4、6或11至17中任一项所述的方法或根据权利要求5、6或9至17中任一项所述的装置,其中获得所述至少一个更新参数包括:
-使用所述第一训练配置来训练所述基于深度神经网络的自编码器,
-存储所述基于深度神经网络的自编码器的解码器的可学习参数,
-使用所述第二训练配置来重新训练所述基于深度神经网络的解码器,其中所述重新训练包括修改所述基于深度神经网络的解码器,所述至少一个更新参数表示所述修改。
18.根据权利要求17所述的方法或所述的装置,其中所述重新训练包括使用所述第二训练配置来联合地重新训练所述基于深度神经网络的自编码器的编码器部分。
19.根据权利要求4、6或11至16中任一项所述的方法或根据权利要求5、6或9至16中任一项所述的装置,其中获得所述至少一个更新参数包括:
-联合训练所述基于深度神经网络的自编码器包括使用所述第一训练配置来训练所述基于深度神经网络的自编码器,以及使用所述第二训练配置来训练所述基于深度神经网络的自编码器,
-其中所述基于深度神经网络的自编码器的解码器部分包括至少一个条件层,并且其中所述至少一个更新参数表示用于驱动所述条件层的条件。
20.根据权利要求4、6或11至19中任一项所述的方法或根据权利要求5、6或9至19中任一项所述的装置,其中所述第一训练配置包括基于客观度量和/或通用数据集的损失函数。
21.根据权利要求4、6或11至20中任一项所述的方法或根据权利要求5、6或9至20中任一项所述的装置,其中所述第二训练配置包括基于主观质量度量的损失函数。
22.根据权利要求4、6或11至21中任一项所述的方法或根据权利要求5、6或9至21中任一项所述的装置,其中所述第二训练配置包括具有特定视频内容类型的数据集。
23.根据权利要求4、6或11至22中任一项所述的方法或根据权利要求5、6或9至22中任一项所述的装置,其中所述使用所述第二训练配置训练所述基于深度神经网络的自编码器基于包括正则项的损失函数,以保证所述解码器部分的所述更新层或所述添加层的参数的稀疏性。
24.根据权利要求4、6或11至23中任一项所述的方法或根据权利要求5、6或9至23中任一项所述的装置,其中所述使用所述第二训练配置训练所述基于深度神经网络的自编码器基于包括至少一个更新参数编码的比特率成本的损失函数。
25.根据权利要求23或24所述的方法或所述的装置,其中对所述正则项或所述比特率成本进行加权,以考虑针对其发送所述至少一个更新参数的图像的数量。
26.根据权利要求1、3、4、6或11至25中任一项所述的方法或根据权利要求2、3或5至25中任一项所述的装置,其中所述至少一个更新参数包括由所述基于深度神经网络的解码器接收到的至少一个语法元素。
27.一种包括比特流的信号,所述比特流包括表示至少一个更新参数的编码数据,所述至少一个更新参数用于修改基于深度神经网络的解码器,所述解码器从使用第一训练配置训练基于深度神经网络的自编码器中定义。
28.根据权利要求1、3、4、6或11至26中任一项所述的方法或根据权利要求2、3或5至26中任一项所述的装置或根据权利要求27所述的信号,其中所述至少一个更新参数包括对所述基于深度神经网络的解码器的要更新的层的数量的指示。
29.根据权利要求1、3、4、6或11至26或28中任一项所述的方法或者根据权利要求2、3或5至26或28中任一项所述的装置或者根据权利要求27或28所述的信号,其中所述至少一个更新参数包括对是否要将新层添加到所述基于深度神经网络的解码器的指示。
30.根据权利要求1、3、4、6或11至26或28至29中任一项所述的方法或者根据权利要求2、3或5至26或28至29中任一项所述的装置或者根据权利要求27至29中任一项所述的信号,其中所述至少一个更新参数包括对是否通过所述基于深度神经网络的解码器的层的至少一个权重的增量来更新所述层的指示。
31.根据权利要求1、3、4、6或11至26或28至30中任一项所述的方法或者根据权利要求2、3或5至26或28至30中任一项所述的装置或者根据权利要求27至30中任一项所述的信号,其中所述至少一个更新参数包括对是否通过向所述基于深度神经网络的解码器的层设定至少一个新权重来更新所述层的指示。
32.根据权利要求1、3、4、6或11至26或28至31中任一项所述的方法或者根据权利要求2、3或5至26或28至31中任一项所述的装置或者根据权利要求27至31中任一项所述的信号,其中所述至少一个更新参数包括对所述基于深度神经网络的解码器的要更新的层在所述基于深度神经网络的解码器的一组层中的位置的指示。
33.根据权利要求1、3、4、6或11至26或28至32中任一项所述的方法或根据权利要求2、3或5至26或28至32中任一项所述的装置或根据权利要求27至32中任一项所述的信号,其中所述至少一个更新参数包括对要添加的新层在所述基于深度神经网络的解码器的一组层中的位置的指示。
34.根据权利要求1、3、4、6或11至26或28至33中任一项所述的方法或者根据权利要求2、3或5至26或28至33中任一项所述的装置或者根据权利要求27至33中任一项所述的信号,其中所述至少一个更新参数包括对要更新的层或新层的层类型的指示。
35.根据权利要求1、3、4、6或11至26或28至34中任一项所述的方法或根据权利要求2、3或5至26或28至34中任一项所述的装置或根据权利要求27至34中任一项所述的信号,其中所述至少一个更新参数包括对要更新的层或新层的张量量纲的指示。
36.根据权利要求1、3、4、6或11至26或28至35中任一项所述的方法或者根据权利要求2、3或5至26或28至35中任一项所述的装置或者根据权利要求27至35中任一项所述的信号,其中所述至少一个更新参数包括要更新的层或新层的至少一个层参数。
37.根据权利要求27至36中任一项所述的信号,其中所述比特流还包括编码数据,所述编码数据表示使用利用第二训练配置训练的所述基于深度神经网络的自编码器编码的至少一个图像的至少一部分,所述更新参数表示所述基于深度神经网络的解码器从所述第一训练配置到所述第二训练配置的至少一个修改。
38.一种包括比特流的计算机可读介质,根据权利要求28至37中任一项所述,所述比特流包括表示至少一个更新参数的编码数据,所述至少一个更新参数用于修改基于深度神经网络的解码器,所述解码器从使用第一训练配置训练基于深度神经网络的自编码器中定义。
39.一种计算机可读存储介质,所述计算机可读存储介质具有存储在其上的指令,所述指令用于致使一个或多个处理器执行根据权利要求1、3、4、6或11至26中任一项所述的方法。
40.一种计算机程序产品,所述计算机程序产品包括指令,当所述程序由一个或多个处理器执行时,所述指令致使所述一个或多个处理器执行根据权利要求1、3、4、6或11至26中任一项所述的方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP20305838.3 | 2020-07-21 | ||
EP20305838 | 2020-07-21 | ||
PCT/EP2021/069291 WO2022017848A1 (en) | 2020-07-21 | 2021-07-12 | A method and an apparatus for updating a deep neural network-based image or video decoder |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116134822A true CN116134822A (zh) | 2023-05-16 |
Family
ID=71994454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180059741.5A Pending CN116134822A (zh) | 2020-07-21 | 2021-07-12 | 用于更新基于深度神经网络的图像或视频解码器的方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230298219A1 (zh) |
EP (1) | EP4186236A1 (zh) |
CN (1) | CN116134822A (zh) |
WO (1) | WO2022017848A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220385907A1 (en) * | 2021-05-21 | 2022-12-01 | Qualcomm Incorporated | Implicit image and video compression using machine learning systems |
WO2024020112A1 (en) * | 2022-07-19 | 2024-01-25 | Bytedance Inc. | A neural network-based adaptive image and video compression method with variable rate |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3451293A1 (en) * | 2017-08-28 | 2019-03-06 | Thomson Licensing | Method and apparatus for filtering with multi-branch deep learning |
WO2019115865A1 (en) * | 2017-12-13 | 2019-06-20 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
WO2019197712A1 (en) * | 2018-04-09 | 2019-10-17 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
-
2021
- 2021-07-12 CN CN202180059741.5A patent/CN116134822A/zh active Pending
- 2021-07-12 WO PCT/EP2021/069291 patent/WO2022017848A1/en unknown
- 2021-07-12 US US18/013,645 patent/US20230298219A1/en active Pending
- 2021-07-12 EP EP21743450.5A patent/EP4186236A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4186236A1 (en) | 2023-05-31 |
US20230298219A1 (en) | 2023-09-21 |
WO2022017848A1 (en) | 2022-01-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN117256142A (zh) | 用于使用基于人工神经网络的工具对图像和视频进行编码/解码的方法和装置 | |
CN113574887A (zh) | 基于低位移秩的深度神经网络压缩 | |
JP2023530470A (ja) | ディープニューラルネットワークを符号化/復号するためのシステム及び方法 | |
CN116134822A (zh) | 用于更新基于深度神经网络的图像或视频解码器的方法和装置 | |
JP2023530471A (ja) | ディープニューラルネットワークを符号化/復号するためのシステム及び方法 | |
EP3959879A1 (en) | Framework for coding and decoding low rank and displacement rank-based layers of deep neural networks | |
EP4222955A1 (en) | Karhunen loeve transform for video coding | |
CN114080613A (zh) | 对深度神经网络进行编码的系统和方法 | |
CN114450965A (zh) | 基于长范围端对端深度学习的视频压缩 | |
CN114127746A (zh) | 卷积神经网络的压缩 | |
US20230396801A1 (en) | Learned video compression framework for multiple machine tasks | |
US20230370622A1 (en) | Learned video compression and connectors for multiple machine tasks | |
US20240155148A1 (en) | Motion flow coding for deep learning based yuv video compression | |
JP2024510433A (ja) | ビデオ圧縮のための時間的構造ベースの条件付き畳み込みニューラルネットワーク | |
WO2024078892A1 (en) | Image and video compression using learned dictionary of implicit neural representations | |
WO2024064329A1 (en) | Reinforcement learning-based rate control for end-to-end neural network bsed video compression | |
EP3618443A1 (en) | Illumination compensation in video coding | |
US20210266582A1 (en) | Illumination compensation in video coding | |
WO2024094478A1 (en) | Entropy adaptation for deep feature compression using flexible networks | |
WO2023146634A1 (en) | Block-based compression and latent space intra prediction | |
CN114531953A (zh) | 使用多参考行帧内预测的最可能模式信令 | |
CN117981305A (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: 20231031 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 |