CN117999784A - 用于基于学习的图像/视频编解码的整形器 - Google Patents
用于基于学习的图像/视频编解码的整形器 Download PDFInfo
- Publication number
- CN117999784A CN117999784A CN202280064217.1A CN202280064217A CN117999784A CN 117999784 A CN117999784 A CN 117999784A CN 202280064217 A CN202280064217 A CN 202280064217A CN 117999784 A CN117999784 A CN 117999784A
- Authority
- CN
- China
- Prior art keywords
- shaping
- image
- shaped
- parameters
- training
- 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
- 238000007493 shaping process Methods 0.000 claims abstract description 610
- 238000012549 training Methods 0.000 claims abstract description 175
- 238000000034 method Methods 0.000 claims description 113
- 238000010801 machine learning Methods 0.000 claims description 88
- 238000013528 artificial neural network Methods 0.000 claims description 71
- 230000002441 reversible effect Effects 0.000 claims description 65
- 238000013507 mapping Methods 0.000 claims description 61
- 238000013527 convolutional neural network Methods 0.000 claims description 41
- 230000033001 locomotion Effects 0.000 claims description 41
- 238000011144 upstream manufacturing Methods 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 24
- 238000013139 quantization Methods 0.000 claims description 24
- 230000003044 adaptive effect Effects 0.000 claims description 21
- 230000003287 optical effect Effects 0.000 claims description 21
- 238000003860 storage Methods 0.000 claims description 20
- 238000005206 flow analysis Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 126
- 230000008569 process Effects 0.000 description 20
- 230000009021 linear effect Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 16
- 230000000007 visual effect Effects 0.000 description 12
- 230000004044 response Effects 0.000 description 11
- 238000012795 verification Methods 0.000 description 9
- 239000010410 layer Substances 0.000 description 8
- 238000005457 optimization Methods 0.000 description 8
- 238000013459 approach Methods 0.000 description 7
- 238000001914 filtration Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 6
- 238000012360 testing method Methods 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 230000006978 adaptation Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 5
- 241000023320 Luma <angiosperm> Species 0.000 description 4
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 238000010200 validation analysis Methods 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011478 gradient descent method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012805 post-processing Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- AZZMGZXNTDTSME-JUZDKLSSSA-M cefotaxime sodium Chemical compound [Na+].N([C@@H]1C(N2C(=C(COC(C)=O)CS[C@@H]21)C([O-])=O)=O)C(=O)\C(=N/OC)C1=CSC(N)=N1 AZZMGZXNTDTSME-JUZDKLSSSA-M 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000009022 nonlinear effect Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
从输入视频信号接收在输入域中表示的输入图像。对所述输入图像执行前向整形以生成在整形图像域中表示的经前向整形的图像。执行非整形编码操作以将经整形的图像编码成经编码的视频信号。所述非整形编码操作中的至少一个是利用ML模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练。使得经编码的视频信号的接收设备从经前向整形的图像生成重建图像。
Description
相关申请的交叉引用
本申请要求于2021年8月30日提交的欧洲专利申请第21193790.9号和于2021年8月30日提交的美国临时专利申请第63/238,529号的优先权,其中每个申请特此通过引用以其全文并入。
技术领域
本公开总体上涉及图像处理操作。更具体地,本公开的实施例涉及视频编解码器。
背景技术
如本文所使用的,术语“动态范围(DR)”可以涉及人类视觉***(HVS)感知图像中的强度范围(例如,光亮度、亮度)的能力,例如,从最暗的黑色(深色)到最亮的白色(高光)。从这个意义上说,DR与“参考场景的(scene-referred)”强度有关。DR还可以涉及显示设备充分或近似渲染特定阔度(breadth)的强度范围的能力。从这个意义上说,DR与“参考显示的(display-referred)”强度有关。除非在本文的描述中的任何一点明确指定特定的意义具有特定的意思,否则应该推断为所述术语可以在任一意义上例如可互换地使用。
如本文所使用的,术语“高动态范围(HDR)”涉及跨越人类视觉***(HVS)的大约14至15个或更多数量级的DR阔度。实际上,相对于HDR,人类可以同时感知强度范围中的广泛阔度的DR可能会被稍微截短。如本文所使用的,术语“增强动态范围(EDR)或视觉动态范围(VDR)”可以单独地或可互换地与这种DR相关:所述DR可在场景或图像内由包括眼运动的人类视觉***(HVS)感知,允许场景或图像上的一些光适应变化。如本文所使用的,EDR可以涉及跨越5个到6个数量级的DR。虽然相对于参考真实场景的HDR可能稍微窄一些,但EDR表示宽DR阔度并且也可以被称为HDR。
实际上,图像包括颜色空间的一个或多个颜色分量(例如,亮度Y以及色度Cb和Cr),其中每个颜色分量由每像素n位的精度表示(例如,n=8)。使用非线性光亮度编解码(例如,伽马编码),其中n≤8的图像(例如,彩色24位JPEG图像)被视为标准动态范围的图像,而其中n>8的图像可以被视为增强动态范围的图像。
给定显示器的参考电光传递函数(EOTF)表征输入视频信号的颜色值(例如,光亮度)与由显示器产生的输出屏幕颜色值(例如,屏幕光亮度)之间的关系。例如,ITURec.ITU-R BT.1886,“Reference electro-optical transfer function for flat paneldisplays used in HDTV studio production”(2011年3月)限定了平板显示器的参考EOTF,其内容通过引用以其全文并入本文。在给定了视频流的情况下,关于其EOTF的信息可以作为(图像)元数据嵌入比特流中。本文术语“元数据”涉及作为已编码比特流的一部分传输并且辅助解码器渲染经解码图像的任何辅助信息。这种元数据可以包括但不限于如本文描述的颜色空间或色域信息、参考显示器参数和辅助信号参数。
如本文所使用的术语“PQ”是指感知光亮度幅度量化。人类视觉***以极非线性方式响应于增加的光水平。人类观察刺激物的能力受到以下因素的影响:刺激物的光亮度、刺激物的大小、构成刺激物的空间频率以及在观看刺激物的特定时刻眼睛所适应的光亮度水平。在一些实施例中,感知量化器函数将线性输入灰度级映射到更好地匹配人类视觉***中的对比度敏感度阈值的输出灰度级。在SMPTE ST 2084:2014“High Dynamic Range EOTFof Mastering Reference Displays”(下文称为“SMPTE”)中描述了示例PQ映射函数,其通过引用以其全文并入本文,其中,在给定固定刺激物大小的情况下,对于每个光亮度水平(例如,刺激水平等),根据最敏感的适应水平和最敏感的空间频率(根据HVS模型)来选择所述光亮度水平处的最小可见对比度步长。
支持200至1,000cd/m2或尼特的光亮度的显示器代表了与EDR(或HDR)相关的较低动态范围(LDR),也被称为标准动态范围(SDR)。EDR内容可以显示在支持较高动态范围(例如,从1,000尼特到5,000尼特或更高)的EDR显示器上。这种显示器可以使用支持高光亮度能力(例如,0到10,000或更高尼特)的替代EOTF来限定。在SMPTE 2084和Rec.ITU-RBT.2100,“Image parameter values for high dynamic range television for use inproduction and international programme exchange”(06/2017)中定义了这种EOTF的示例。如本发明人在此理解的,期望可以用于高效地支持各种显示设备的显示能力的用于合成视频内容数据的改进技术。
在本节中描述的方法是可以采用的方法,但不一定是先前已经设想到或采用过的方法。因此,除非另有指示,否则不应该认为本节中描述的任何方法仅凭其纳入本节就可被视为现有技术。类似地,除非另有指示,否则关于一种或多种方法所认定的问题不应该基于本节而认为在任何现有技术中被认定。
附图说明
在附图中以举例而非限制的方式来图示本发明的实施例,并且其中相似的附图标记指代类似的要素,并且在附图中:
图1A至图1E图示了示例编解码器架构,其中,图像/视频整形器(或整形模块)在基于学习的图像/视频编解码器内或结合基于学习的图像/视频编解码器进行操作;
图2A图示了其中可以执行整形操作的示例工作流程;图2B图示了用于训练基于ML的整形和非整形模型的示例过程流程;图2C图示了示例前向整形器网络和逆向/后向整形器网络;
图3A图示了用于编码整形参数的示例过程流程;图3B图示了用于解析或解码整形参数的示例过程流程;
图4A和图4B图示了示例过程流程;以及
图5图示了示例硬件平台的简化框图,在所述硬件平台上可以实施如本文所描述的计算机或计算设备。
具体实施方式
在以下描述中,出于说明的目的,阐述了许多具体细节以便提供对本公开的透彻理解。然而,明显的是,可以在没有这些具体细节的情况下实践本公开。在其他情形中,为了避免不必要地遮蔽、模糊或混淆本公开,没有详尽地描述众所周知的结构和设备。
概述
在一些方法下,基于学习的图像/视频编解码的性能可能高度依赖于训练数据集。例如,使用SDR图像/视频的训练数据集或数据库来训练机器学习(ML)模型。来自该经训练模型的带推断的图像/视频编解码与使用HDR图像/视频的训练数据集或数据库训练的相同模型相比对于HDR图像或视频可能表现得不够出色。即使当训练图像和非训练图像都是相同或相似颜色等级(例如,SDR等)的图像/视频时,训练图像可能仍然在某些图像/视频特性(例如,视觉可感知特性、非视觉特性等)上与非训练图像不同。例如,在模型的应用或推断阶段中的非训练图像/视频可以是包括文本和图形区域的合成图像/视频(诸如屏幕内容(SCC)图像/视频),而在模型的训练阶段中的训练图像/视频可以是非SCC图像/视频。因此,来自经训练模型的带推断的图像/视频编解码对于SCC图像/视频可能表现得不够出色。
相比之下,本文所述的整形技术可以在(基于深度学习的)图像/视频编解码器中与来自经训练ML模型的带推断的图像/视频编解码技术一起实施,以改善编解码效率,并提供针对可能具有或可能不具有与训练图像/视频相同(或相似)图像/视频特性的非训练图像/视频的自适应性。
可以在视频编解码器中的各种基于标准的和/或专有的***配置中实施这些技术。如本文所述的一些或全部整形操作可以被实施为环内操作(作为图像/视频编码/解码操作的一部分)或环外操作(作为在图像/视频编码/解码操作之前的预处理或之后的后处理操作/工具的一部分)。可以在根据可适用的图像/视频编解码语法规范用语法或语法元素编码的视频信号中,将整形操作中使用的操作参数从上游编码设备用信号传输到接收设备。在美国专利10,080,026、于2019年5月9日提交的PCT申请序列号PCT/US2019/031620中描述了示例整形操作,其全部内容如本文充分阐述的那样特此通过引用并入。
示例图像/视频编解码语法规范可以包括但不一定仅限于以下各项中的任一项:杜比视觉编解码语法规范、通用视频编解码或VVC规范等。示例语法或语法元素可以包括但不一定仅限于与以下各项中的一项或多项相关的任何语法或语法元素:补充增强信息或SEI消息、编解码数据单元头字段、亮度映射色度缩放或LMCS数据字段、与环内操作有关的数据字段、与环外操作有关的数据字段等。与LMCS有关的示例图像处理操作描述于美国专利申请公开号2021/0076079中,所述美国专利申请公开通过引用整体并入本文。
在一些操作场景中,本文所述的整形操作可以是全局整形操作,所述全局整形操作将相同的整形映射应用于在视频信号中接收的一些或所有图像,以生成对应的整形图像或重建图像。指定用于单独图像/图片的单独整形映射/函数的整形操作参数不需要在经编码的视频信号中从上游设备发送到下游接收设备。上游设备可以简单地经由一个或多个相对高级别的整形参数或标志将标识符用信号传输到下游接收设备以用于下游接收设备在整形操作中使用,所述标识符标识预先配置、预先存储或固定的全局整形映射/函数,诸如多段多项式、查找表等。
在一些操作场景中,本文所述的整形操作可以是图像自适应整形操作,所述图像自适应整形操作将(例如,可能不同的等)单独整形映射/函数应用于在视频信号中接收的一些或所有图像中的每个单独的图像,以生成整形图像或重建图像。可以用于得到单独整形映射/函数的整形操作参数(例如,除了相对较高级别的整形参数或标志等)可以被编码在经编码的视频信号中,并且从上游设备用信号传输到下游接收设备。
如前所述,在不实施本文所述的整形技术的其他方法下,ML模型对于在一些特性(例如,不同的动态范围、不同的视觉可感知特性等)上与训练图像/视频不同的图像/视频在推断方面可能表现得不够出色。为了解决这个问题,在模型训练阶段,可能需要用许多不同类型的训练图像/视频来训练这些ML模型中的一些或全部。另外,在模型部署或推断阶段,ML模型中使用的许多模型参数(例如,神经网络中使用的模型参数等)可能需要被优化,并与不同的输入图像自适应地用信号传输。
相比之下,在本文所述的技术下,相对较少的整形操作参数(诸如多项式系数(例如,指定或定义分段线性或非线性整形函数/映射等)、MMR系数(例如,指定或定义基于MMR的跨通道整形函数/映射)、TPB系数(例如,指定或定义基于张量积B样条的整形函数/映射)等)可以由上游编码设备自适应地优化/调整/用信号传输/发送到接收设备,而不是训练和自适应地优化/调整/用信号传输/发送ML模型中使用的许多模型参数。在美国专利8,811,490中描述了基于多颜色通道多元回归(MMR)的操作示例,所述美国专利如本文充分阐述的那样通过引用以其整体并入本文。基于示例TPB的操作在2019年10月1日提交的名称为“TENSOR-PRODUCT B-SPLINE PREDICTOR”的美国临时申请序列号62/908,770(代理人案卷号60175-0417)中进行了描述,所述美国临时申请如本文充分阐述的那样通过引用以其整体并入本文。
即使这些输入图像在用于训练ML模型的训练图像/视频中没有相似的图像,也可以针对单独的输入图像单独定制或生成用这些整形操作参数指定的整形操作,从而为输入图像的不同特性提供更好的自适应性。
在基于学习的图像/视频编解码(例如,编码、解码、压缩、解压缩等)中,可以经由显式映射(或参数映射)或隐式映射(非参数映射)来实施或执行图像/视频整形。
对于显式映射,图像/视频整形可以使用用整形操作参数(诸如多项式、MMR或B样条函数或B样条函数的张量积等的操作参数)显示地指定或表示的整形函数/映射来将输入图像整形为整形图像。可以利用ML模型(诸如基于神经网络的模型)或其他优化方法(诸如对最小化估计/预测误差的优化问题进行求解)获得或生成整形操作参数。
对于隐式映射,图像/视频整形可以使用基于ML的整形模型(诸如具有相对较高的维度变换的神经网络)将要整形的图像整形为整形图像,而不使用用整形操作参数(诸如多项式、MMR或B样条函数或B样条函数的张量积等的操作参数)显示地指定或表示的整形函数/映射。基于ML的整形模型可以具有经训练操作参数(诸如神经网络的经训练权重/偏差),并且可以通过这些经训练操作参数或神经网络的经训练权重/偏差对要整形的图像执行隐式整形映射。
相对较高的维度变换中的操作参数或权重/偏差相对较多,并且可以经由监督学习或非监督学习来训练、优化或生成。在训练之后,可以将具有相对较高的维度变换的神经网络或其中的相对较多的经训练操作参数预先存储或固定在诸如上游图像/视频编码器和/或下游图像/视频解码器的编解码器中。
因此,当输入图像由上游图像/视频编码器编码时,用于神经网络或基于ML的整形模型的这些众多操作参数不需要被包括为输出或经编码的视频信号的一部分,所述输出或经编码的视频信号由上游图像/视频编码器用整形图像编码。当由下游接收图像/视频解码器从输出或经编码的视频信号解码整形图像时,用于神经网络或基于ML的整形模型的许多操作参数已经存储在下游接收图像/视频解码器处,以使解码器能够使用神经网络或基于ML的整形模型从整形图像生成重建图像。换句话说,使用隐式映射,如本文所述的用于隐式映射的ML整形变换或模型不需要将任何图像元数据包括在视频信号中来用信号传输变换或模型,因为变换或模型和/或其操作参数可以被预先存储,以使编解码器设备能够在实际部署或推断阶段的运行时间中利用变换或模型执行图像整形操作。
相对较高的维度变换的示例可以全部或部分地被实施为卷积神经网络或CNN、或(例如,作为一个或多个数据变换层等)与CNN一起操作的数据变换。CNN或其中的层可以利用相对较高数量的输出通道(例如,取决于CNN中用于生成输出通道的滤波器的类型、取决于应用滤波器的图像中的像素总数等)以及在CNN中使用的相对大量的操作参数(例如,权重、偏差、节点的数量、节点/层输入的数量、节点/层输出的数量、层的数量、步幅的数量、层的类型、滤波器的类型、滤波核的大小、激活函数的类型等)进行操作。
两个CNN或在其中或与其一起实施的变换可以形成整形器对,并分别用于本文所述的前向和逆向/后向整形操作。两个CNN/变换中的一个用于前向整形,而两个CNN/变换中的另一个用于后向整形。可以训练同一对中的两个CNN/变换,使得它们是可逆的。在整个本说明书中,术语“逆向整形”和“后向整形”可以互换使用。
如本文所使用的,术语“可逆的”可以意指可以通过使用显式或隐式后向整形映射对经前向整形的图像进行后向整形来生成与输入图像相同或严密近似的重建图像,经前向整形的图像是通过使用对应的显式或隐式前向整形映射对输入图像进行前向整形而生成的。
本文描述的示例实施例涉及编码图像数据。从输入视频信号接收在输入域中表示的输入图像。对所述输入图像执行前向整形以生成在整形图像域中表示的经前向整形的图像。执行非整形编码操作以将经整形的图像编码成经编码的视频信号。所述非整形编码操作中的至少一个是利用ML模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练。使得经编码的视频信号的接收设备从经前向整形的图像生成重建图像。所述重建图像用于得到要在与所述接收设备一起操作的图像显示器上渲染的显示图像。
本文描述的示例实施例涉及解码图像数据。从经编码的视频信号解码在整形图像域中表示的经前向整形的图像。经前向整形的图像是由上游设备通过对在输入图像域中表示的输入图像进行前向整形而生成的。对经前向整形的图像执行逆向整形和与经前向整形的图像相关的非整形解码操作,以生成在重建图像域中表示的重建图像。逆向整形和前向整形形成整形操作对。非整形解码操作中的至少一个是用ML模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练。使得在图像显示器上渲染从重建图像得到的显示图像。
示例基于学习的图像/视频编解码器架构
本文所述的基于ML的整形技术或非基于ML的整形技术可以被实施或并入到各种基于学习的图像/视频编解码器架构中。这些架构中的一些架构支持在显式映射操作模式中执行的整形操作,其中,整形操作将显式地指定的整形映射应用于输入图像以生成整形图像。所述架构中的一些其他架构支持整形操作,其中,整形操作隐式地——例如,通过ML模型,所述模型包括(例如,许多、非用信号传输的、预先存储的、预先部署的等)用训练图像训练的经优化操作参数——将整形映射应用于输入图像以生成整形图像。然而,在一些操作场景中,用训练图像训练的ML模型的一些或所有经优化操作参数可以在如本文所述的经编码的视频信号中用信号传输、尤其是当这些参数的总数或携带这些参数的总数据量相对较小(例如,低于特定的数据量阈值,权重/偏差信令开销相对较小等)时。
图1A图示了示例编解码器架构,其中,环外图像/视频整形器(或整形模块)结合基于学习的图像/视频编解码器进行操作。可以用硬件、软件或硬件和软件与计算机处理器、ASIC、FPGA、DSP、IC、视频编解码器芯片组等的组合来实施所述架构中的一部分或全部。
如所示出的,前向整形器被实施为与上游图像/视频编码设备中的基于学习的图像/视频编码器相关(或相对于其在环外)的预处理器,而后向整形器被实施为下游接收图像/视频编码设备中的与基于学习的图像/视频解码器相关(或相对于其在环内)的后处理器。
更具体地,上游图像/视频编码设备的前向整形器接收包括输入图像的输入(图像/视频信号),并执行环外整形以将前向整形映射应用于输入图像,以便生成整形图像和指定或定义(例如,后向等)整形映射的整形图像元数据。
基于学习的图像/视频编码器接收用作输入的整形图像,对整形图像执行基于学习的编码操作以生成经压缩的图像和非整形图像元数据,并且将经压缩的图像编码/压缩为压缩比特流。如图1A所示的基于学习的编码和解码操作可以与如图1B或图1C所示的一些或全部非整形图像/视频编码和解码操作相同或类似。分别使用前向整形元数据参数(或简单地是整形元数据或整形参数)和后向整形元数据参数(或合成元数据)的示例前向整形和后向整形在G-M.Su的于2020年4月21日提交的美国临时专利申请序列号63/013,063,“Reshaping functions for HDR imaging with continuity and reversibilityconstraints”以及G-M.Su和H.Kadu的于2020年4月22日提交的美国临时专利申请序列号63/013,807“Iterative optimization of reshaping functions in single-layer HDRimage codec”中进行了描述,所述美国临时专利申请的内容如本文充分阐述的那样通过引用整体并入本文。示例非整形图像/视频编码和解码操作在Guo Lu等人,“DVC:An End-to-End Deep Video Compression Framework”,Proceedings of the IEEE Conference onComputer Vision and Pattern Recognition(CVPR 2019)中进行了描述,所述文献通过引用整体并入本文。
由前向整形器生成的整形图像元数据和由基于学习的编码器生成的非整形图像元数据可以与经压缩的比特流一起由上游编码设备(例如,由环外前向整形器或基于学习的环内图像/视频编码器中的一个或两个等)包括在经编码的视频信号中。
图1A中的下游图像/视频解码设备的基于学习的图像/视频解码器接收经编码的视频信号,并且执行基于学习的解码操作,以将经编码的视频信号的经压缩的图像数据解码/解压缩为整形图像(在压缩和解压缩中受量化或编解码误差的影响)。如图1A所示的基于学习的解码操作可以与如图1B或图1C所示的一些或图像/视频解码操作相同或类似。
参考图1A,由前向整形器生成的整形图像元数据和由基于学习的编码器生成的非整形图像元数据可以由下游编码设备(例如,由环外后向整形器或基于学习的图像/视频解码器等)解码或通过经编码的视频信号接收。
后向整形器从基于学习的图像/视频解码器接收经(前向)整形的图像作为输入,并且执行环外整形,以将整形图像元数据中指定的(或从中得到的)后向整形映射应用于整形图像,以生成重建图像。
图1B图示了第一示例编解码器架构,其中,环内图像/视频整形器(或整形模块)结合基于学习的图像/视频编解码器进行操作。可以用硬件、软件或硬件和软件与计算机处理器、ASIC、FPGA、DSP、IC、视频编解码器芯片组等的组合来实施所述架构中的一部分或全部。
包括环内(例如,ML、非ML等)整形器或与其组合的基于学习的图像/视频编码器可以实施图1B中标识的一些或所有模块或操作。
如所示出的,环内前向整形器的第一实例104-1接收输入图像102(例如,在输入视频信号中的连续输入图像的序列中等),并且对输入图像(102)执行环内前向整形,以生成描绘与输入图像(102)相同的视觉语义内容的对应的经前向整形的图像。
残差生成操作106生成残差前向整形图像,其中,通过数学方程R(x,y)=f(I(x,y),P(x,y))计算样点位置(x,y)处的残差前向整形像素或码字值R,其中,f(…)表示残差生成函数或操作,I(x,y)表示经前向整形的图像(来自环内前向整形器的第一实例(104-1))到残差生成操作(106)或其中的样点位置(x,y)处的经前向整形的码字,P(x,y)表示经前向整形的预测图像(来自环内前向整形器的第二实例104-2)到残差生成操作(106)或其中的样点位置(x,y)处的经前向整形的预测码字。在其中用使用减法运算f(x,y)=I(x,y)-P(x,y)的数学方程定义或指定残差生成操作(106)的第一示例中,残差图像包括像素或码字值差。在其中用使用比率或除法运算f(x,y)=I(x,y)/P(x,y)(反之亦然)的数学方程定义或指定残差生成操作(106)的第二示例中,残差图像包括像素或码字值比率。在其中用使用更一般的运算f(x,y)=A*I(x,y)-B*P(x,y)+O(其中,A、B、O是可配置值)的数学方程定义或指定残差生成操作(106)的第三示例中,残差图像包括通过将更一般的运算应用于经前向整形的图像和由环内前向整形器的第二实例(104-2)输出的经前向整形的预测图像而生成的像素或码字值。
诸如残差编码器网络108的神经网络可以对残差前向整形图像应用残差编码操作,以生成经残差编码的前向整形图像。
将(例如,线性、非线性、感知、非感知等)量化器的第一实例110-1应用于经残差编码的前向整形图像,以生成经量化的经残差编码的前向整形图像数据。
诸如残差解码器网络112的神经网络可以对经量化的经残差编码的前向整形图像数据应用残差解码操作,以生成经重建的残差前向整形图像。
残差编码器网络(108)和残差解码器网络(112)形成残差编解码网络,所述残差编码网络可以以相对较小的量化误差相对高效地编码和解码残差图像数据(与非残差图像数据相比,所述残差图像数据可以包含不同的值范围或分布)。
图像生成操作114生成经重建的前向整形图像,其中,通过第二数学方程Q(x,y)=g(R(x,y),P(x,y))计算样点位置(x,y)处的经重建的前向整形像素或码字值Q,其中,g(…)表示图像生成操作,所述图像生成操作可以是残差生成函数或操作(106)的逆操作。在其中用使用加法运算g(x,y)=R(x,y)+P(x,y)的第二数学方程定义或指定图像生成操作(114)的第一示例中,重建图像包括残差和所预测的像素或码字值的像素或码字值和。在其中用使用乘法运算g(x,y)=R(x,y)*P(x,y)(反之亦然)的第二数学方程定义或指定图像生成操作(114)的第二示例中,重建图像包括残差和所预测的像素或码字值的像素或码字值积。在其中用使用第二更一般的运算(所述运算是先前提及的f(x,y)=A*I(x,y)-B*P(x,y)+O的数学逆运算)的第二数学方程定义或指定图像生成操作(114)的第三示例中,重建图像包括通过将第二更一般的运算应用于经前向整形的图像和残差前向整形图像而生成的像素或码字值。
环内后向或逆向整形器118对通过图像生成操作(114)输出的经重建的前向整形图像执行环内后向(或逆向)整形,以生成对应的重建图像,该重建图像是经逆向或后向整形的图像、描绘与输入图像(102)相同的视觉语义内容或严密近似于所述输入图像。
如图1B所示,利用由前向整形器(104)和逆向整形器(118)执行的环内前向和后向整形映射/操作以及除环内前向和后向整形映射/操作之外的非整形操作来生成重建图像。
重建图像可以(例如,在所有缓冲的参考图像内唯一地等)用不同的参考图像索引值来识别、存储在参考图像缓冲器120中,并随后用于生成输入图像(102)之后的下一个输入图像的运动信息。
通过举例而非限制的方式,诸如光流网络124的神经网络接收输入图像(102)和一个或多个参考图像,每个参考图像是从参考图像缓冲器(120)检索的重建图像。这些参考图像分别对应于零、一个或多个特定帧索引(所述特定帧索引表示由输入视频信号中的连续输入图像的序列所覆盖的回放时间的一个或多个特定时间实例等),并且已经在生成输入图像(102)的重建图像之前由先前处理的输入图像生成并存储在参考图像缓冲器(120)中。光流网络(124)(例如,特定光流CNN等)继续使用输入图像(102)和参考图像来生成在这些图像中检测到的(原始)光流信息。
诸如MV(运动矢量)编码器网络126的神经网络可以对输入图像(102)和检索到的参考图像中的检测到的光流信息应用MV编码操作,以生成经MV编码的信息。
将(例如,线性、非线性、感知、非感知等)量化器的第二实例110-2应用于经MV编码的信息,以生成经量化的经MV编码的信息。
诸如MV解码器网络130的神经网络可以对经量化的经MV编码的信息应用MV解码操作,以生成经重建的MV信息。
MV编码器网络(126)和MV解码器网络(130)形成MV信息编解码网络,所述MV信息编码网络可以以相对较小的量化误差相对高效地编码和解码MV信息(与非MV数据相比,所述MV信息可以包含不同的值范围或分布)。
诸如运动补偿网络122的神经网络可以使用经重建的MV信息来对一个或多个参考图像中的图像数据执行运动补偿操作——所述参考图像可以与用于确定MV信息的参考图像相同——以生成经运动补偿的图像,经运动补偿的图像表示输入图像(102)之后的下一个输入图像的预测图像。可以由前向整形器的第二实例(104-2)将由运动补偿网络(122)生成的经运动补偿的图像前向整形为下一个输入图像的(或下一个)经前向整形的预测图像。
在训练阶段中,包括但不限于环内前向和后向整形映射/操作或其中使用的操作参数的操作可以使用比特率估计网络116——例如,基于ML的比特率估计模型、人工神经网络或基于ANN的比特率估计模型等——进行优化,以最小化以下各项中的一项或两项:(a)重建图像与产生重建图像的对应输入图像之间的差异;和/或(b)用于传输用对应输入图像(或训练图像)的表示编码的经编码的(训练)视频信号的比特率。训练阶段中的输入图像可以是训练图像,例如,在来自训练数据集的连续训练图像的训练序列中的训练图像。在(训练)经编码的视频信号中编码的输入图像(或训练图像)的表示可以包括经量化的残差前向整形图像和从(训练)参考图像得到的运动信息,所述参考图像是从训练图像得到的并存储在参考图像缓冲器(120)中。
在一些操作场景中,比特率估计网络(116)(例如,特定比特率估计CNN等)使用从量化操作的第一实例(110-1)生成的对应的经量化的经残差编码的前向整形图像数据和从量化操作的第二实例(110-2)生成的对应的经量化的MV信息作为一些或全部输入,以估计(a)重建图像与对应的输入图像之间的差异;和/或(b)用于传输用输入图像(或训练图像)的表示编码的经编码的(训练)视频信号的比特率。
附加地、可选地或替代性地,为了优化基于学习的图像/视频编码器中的整形和非整形操作或其中使用的操作参数,除了或代替从量化操作的第一实例(110-1)生成的经量化的经残差编码的前向整形图像数据和从量化操作的第二实例(110-2)生成的经量化的MV信息,比特率估计网络(116)还可以使用其他(训练)图像数据(诸如由基于学习的图像/视频编码器生成的输入、输出和/或中间图像数据)和/或(训练)图像元数据(诸如MV信息和非MV信息)。
在一些操作场景中,在推断或实际部署阶段(在训练阶段之后)中的基于学习的图像/视频编码器(或上游编码设备)可以被实施为并入图1B的编解码器架构的一些或所有部件和数据流,其中,移除了用于训练目的的比特率估计网络(116)和相关联的数据流。
在一些操作场景中,在推断或实际部署阶段中的基于学习的图像/视频解码器(或下游接收解码设备)可以被实施为并入图1B的编解码器架构的一些或所有部件和数据流,其中,移除了用于训练目的的比特率估计网络(116)和相关联的数据流,移除了诸如(104-1)、(106)、(108)、(110-1)、(124)、(126)和(110-2)的编码特定图像处理块/实例/部件,并且编码特定数据流被移除/被适配用于解码操作。
更具体地,如图1B所示,(下游接收方)基于学习的图像/视频解码器从由(上游)基于学习的图像/视频编码器输出的经编码的视频信号接收经量化的经残差编码的前向整形图像数据102-1,而不是接收输入图像(102)作为输入。经量化的经残差编码的前向整形图像数据(102-1)是从输入图像(102)生成的并且由(上游)基于学习的图像/视频编码器或其中的量化器的第一实例(110-1)编码到经编码的视频信号中。
另外,如图1B所示,(下游接收方)基于学习的图像/视频解码器从由(上游)基于学习的图像/视频编码器输出的经编码的视频信号接收经量化的经MV编码的信息102-2,而不是使用处理块(124)、(126)和(110)生成经量化的经MV编码的信息。经量化的经MV编码的信息(102-2)是从输入图像(102)与一个或多个参考图像的组合生成的并且由(上游)基于学习的图像/视频编码器或其中的量化器的第二实例(110-2)编码到经编码的视频信号中。
图1C图示了第二示例编解码器架构,其中,环内图像/视频整形器(或整形模块)结合基于学习的图像/视频编解码器进行操作。可以用硬件、软件或硬件和软件与计算机处理器、ASIC、FPGA、DSP、IC、视频编解码器芯片组等的组合来实施所述架构中的一部分或全部。
包括环内(例如,ML、非ML等)整形器或与其组合的基于学习的图像/视频编码器可以实施图1B中标识的一些或所有模块或操作。
如所示出的,与图1B的第一示例架构相比,图1C的第二示例架构包括许多修改或差异。更具体地——代替使用来自输入视频信号的输入图像(102)和来自参考图像缓冲器(120)的参考图像来利用图1B中的光流网络(124)执行光流分析——图1C中的光流网络(124)使用由环内前向整形器的第一实例(104-1)从输入图像(102)的前向整形生成的经前向整形的图像和由环内前向整形器的第二实例(104-2)从参考图像的前向整形生成的经前向整形的参考图像来执行光流分析,以生成(原始)光流信息。
而且——代替使用从输入图像(102)的前向整形生成的经前向整形的图像和由环内前向整形器的第二实例(104-2)输出的经前向整形的预测图像作为图1B中的残差生成操作(106)的输入——图1C中的残差生成操作(106)使用由环内前向整形器的第一实例(104-1)从输入图像(102)的前向整形生成的经前向整形的图像和由运动补偿网络(122)生成的经前向整形的预测图像来执行光流分析,以生成残差前向整形图像。
此外——代替如图1B所示的那样首先使用运动补偿网络(122)通过基于经重建的MV信息对一个或多个参考图像中的图像数据执行运动补偿操作来构建经运动补偿的图像或预测图像,并且然后使用前向整形器的第二实例(104-2)来从经运动补偿的图像或预测图像生成经前向整形的预测图像——如图1C所示的第二示例编解码器架构首先使用前向整形器的第二实例(104-2)来生成一个或多个经前向整形的参考图像,并且然后使用运动补偿网络(122)通过基于经重建的MV信息对所述一个或多个经前向整形的参考图像中的图像数据执行运动补偿操作来构建经前向整形的经运动补偿的图像或经前向整形的预测图像。
类似于图1B的比特率估计网络(116),在一些操作场景中,图1C的比特率估计网络(116)(例如,特定比特率估计CNN等)使用从量化操作的第一实例(110-1)生成的对应的经量化的经残差编码的前向整形图像数据和从量化操作的第二实例(110-2)生成的对应的经量化的MV信息作为一些或全部输入,以估计(a)重建图像与对应的输入图像之间的差异;和/或(b)用于传输用输入图像(或训练图像)的表示编码的经编码的(训练)视频信号的比特率。
附加地、可选地或替代性地,为了优化基于学习的图像/视频编码器中的整形和非整形操作或其中使用的操作参数,除了或代替从量化操作的第一实例(110-1)生成的经量化的经残差编码的前向整形图像数据和从量化操作的第二实例(110-2)生成的经量化的MV信息,图1C的比特率估计网络(116)还可以使用其他(训练)图像数据(诸如由基于学习的图像/视频编码器生成的输入、输出和/或中间图像数据)和/或(训练)图像元数据(诸如MV信息和非MV信息)。
在一些操作场景中,在推断或实际部署阶段(在训练阶段之后)中的基于学习的图像/视频编码器(或上游编码设备)可以被实施为并入图1C的编解码器架构的一些或所有部件和数据流,其中,移除了用于训练目的的比特率估计网络(116)和相关联的数据流。
在一些操作场景中,在推断或实际部署阶段中的基于学习的图像/视频解码器(或下游接收解码设备)可以被实施为并入图1C的编解码器架构的一些或所有部件和数据流,其中,移除了用于训练目的的比特率估计网络(116)和相关联的数据流,移除了诸如(104-1)、(106)、(108)、(110-1)、(124)、(126)和(110-2)的编码特定图像处理块/实例/部件,并且编码特定数据流被移除/被适配用于解码操作。
更具体地,如图1C所示,(下游接收方)基于学习的图像/视频解码器从由(上游)基于学习的图像/视频编码器输出的经编码的视频信号接收经量化的经残差编码的前向整形图像数据102-1,而不是接收输入图像(102)作为输入。经量化的经残差编码的前向整形图像数据(102-1)是从输入图像(102)生成的并且由(上游)基于学习的图像/视频编码器或其中的量化器的第一实例(110-1)编码到经编码的视频信号中。
另外,如图1C所示,(下游接收方)基于学习的图像/视频解码器从由(上游)基于学习的图像/视频编码器输出的经编码的视频信号接收经量化的经MV编码的信息102-2,而不是使用处理块(124)、(126)和(110)生成经量化的经MV编码的信息。经量化的经MV编码的信息(102-2)是从经前向整形的图像——其进而是通过在编码器侧对输入图像(102)进行前向整形而生成的——与一个或多个经前向整形的参考图像的组合生成的并且由(上游)基于学习的图像/视频编码器或其中的量化器的第二实例(110-2)编码到经编码的视频信号中。
在如图1B所示的编解码器架构中,在原始(图片)域(或在其中编码或表示输入图像的码字空间)中或针对前向整形尚未应用于的输入图像和参考图像执行运动估计和运动补偿。相比之下,在如图1C所示的编解码器架构中,在经前向整形的(图片)域(或在其中编码或表示经前向整形的图像的码字空间)中执行运动估计和运动补偿。
全局整形和图像自适应整形
图2A图示了其中可以执行整形操作的两个示例工作流程(例如,过程流程、方法等)。如图2A(a)所示的第一工作流程或方法可以用于执行全局整形。如图2A(b)所示的第二工作流程或方法可以用于执行图像/图片自适应整形操作。
在图2A(a)的第一工作流程/方法中,可以首先定义实施基于(深度)学习的编解码器框架/架构(例如,在图1A或图1B等中)的神经网络中的操作参数,诸如权重和偏差。这些操作参数可以被优化、学习并用于整形操作(例如,由前向整形器和逆向整形器等执行)以及非整形操作(例如,运动估计、运动补偿、非线性编码器-解码器量化网络等)。例如,这些操作参数可以包括操作参数的子集——其可以被称为整形器或整形参数——其显式地或隐式地指定要在前向整形器和逆向整形器或整形操作中应用或使用的整形函数/映射。基于学习的编解码器框架/架构中的其余操作参数——其可以称为图像模型参数或非整形操作——可以包括但不一定仅限于非整形ML模型参数、用于指定ANN(例如,CNN等)的操作参数等。
在模型训练阶段中,可以使用训练数据集中的训练图像一起训练非整形模型参数和整形模型参数,以产生用于整形操作和非整形操作两者的整体经训练模型。
在模型推断或部署阶段(在图2A中表示为“推断”)中,可以在运行时使用包含整形操作和非整形操作两者的所有经训练操作参数的整体经训练模型来编码或解码非训练图像。在一些操作场景中,要由实施基于学习的编解码器框架/架构的编解码器(例如,编码器、解码器、代码转换器等)使用的一些或所有经训练操作参数(例如,显式地或隐式地指定(1)由整形器或整形操作应用的整形映射/函数,以及(2)非整形操作中使用的操作参数)可以在如输入图像或经前向整形的图像等非训练图像被编解码器接收以在运行时进行编码或解码之前预先存储在编解码器处。可以将具有用于整形操作和非整形操作两者的经训练操作参数的经训练模型应用于对这些非训练图像进行编码和解码。在一些操作场景中,解码器已经被预先存储有经训练操作参数。因此,在这些操作场景中,不需要在用单独图像编码的经编码的视频信号内发送识别单独图像的单独整形映射/函数的附加视频信号编解码语法参数。
在图2A(b)的第二工作流程/方法中,可以首先定义用于在基于(深度)学习的编解码器框架/架构(例如,在图1A或图1B等中)中执行非整形操作(例如,运动估计、运动补偿、非线性编码器-解码器量化网络等)的神经网络中的操作参数,诸如权重和偏差。这些操作参数——其可以被称为图像模型或非整形参数——可以包括但不一定仅限于非整形ML模型参数、用于指定ANN(例如,CNN等)的操作参数等。
在模型训练阶段中,可以使用训练数据集中的训练图像来训练图像模型参数,以产生用于非整形操作的经训练模型。
在模型推断或部署阶段中,可以在运行时使用包含非整形操作的经训练操作参数的经训练模型来编码或解码非训练图像。在一些操作场景中,要由在基于学习的编解码器框架/架构中实施非整形操作的编解码器(例如,编码器、解码器、代码转换器等)使用的一些或所有经训练操作参数可以在非训练图像被编解码器接收以在运行时进行编码或解码之前预先存储在编解码器处。可以将具有用于非整形操作的经训练操作参数的经训练模型应用于对非训练图像进行编码和解码。在这些操作场景中,在运行时不需要在用与非训练图像相对应的经压缩的图像编码的经编码的视频信号内向解码器发送用于非整形操作中的操作参数的附加视频信号编解码语法参数,因为解码器已经预先存储有经训练操作参数。
可以在包括但不一定限于第二工作流程/方法的工作流程/方法中实施或支持图像或图片自适应整形器或整形操作。例如,如图2A(b)所示,用于非整形操作的经训练模型可以不包含与整形器或整形操作相关的经训练操作或整形参数。在推断或部署阶段,在编码器侧,当接收到非训练图像并将其编码成经编码的视频信号(例如,已编码比特流等)时,可以在运行时估计或生成指定用于整形器或整形操作的图像特定整形映射/函数的操作参数(或整形参数)。这些整形参数可以被包括在经编码的视频信号中并用信号传输到下游接收解码器。解码器可以使用整形参数来得到在整形器或整形操作中使用的图像特定整形映射/函数。
通过比较,在第一工作流程/方法中,使用来自训练集的所有训练图像来训练或优化用于整形器或整形操作的操作参数(或整形器参数)的子集以及整个模型中非整形操作的操作参数。因此,如果非训练图像具有与训练图像不同的特性,则与具有与训练图像的特性相同的特性的图像相比,整形器或整形操作在实现编解码效率方面可能是次优的。
另一方面,在第二工作流程/方法中,可以基于非训练图像中的每一个的特性来自适应地(例如,动态地,基于实际码字或像素值或它们在预整形图像中的分布等)估计整形器参数。因此,即使在训练数据集中的训练图像具有与非训练图像不同的特性的情况下,也可以实施或应用整形器或整形操作来将非训练图像修改或整形为比非训练图像更适合经训练模型的整形图像。结果,与其中利用具有与非训练图像不同的特性的训练图像来预训练整个模型的第一工作流程/方法相比,可以实现更好的编解码效率或改善编码效率。
整形操作可以用于实现编解码效率,诸如最小化用于携带或编码图像的比特率,增强输入图像与整形图像之间以及整形图像与重建图像之间映射的可逆性,减少量化/编解码误差,允许其他图像处理操作进一步适配经前向整形的图像或重建图像以支持各种图像显示等。
在一些操作场景中,本文所述的整形操作可以用于执行HDR到SDR的转换,反之亦然。然而,HDR或SDR的整形图像或重建图像可以针对在不进行进一步的显示自适应的情况下观看一个或一些图像显示进行优化或可以不针对其优化。在这些操作场景中,整形操作可以被实施为结合其他图像处理操作来执行,所述其他图像处理操作包括但不限于与目标显示自适应相关的图像处理操作。例如,显示管理(DM)操作可以由如本文所述的接收设备执行,以将重建图像适配为要在图像显示器上渲染的显示图像。DM操作可以基于DM元数据,所述DM元数据作为在经编码的视频信号中携带的图像元数据的一部分而被包括。这是为了改善编解码效率。
一种折衷是在实施图像或图片自适应整形器或整形操作的第二工作流程/方法中可能会产生附加的信令开销和编码器复杂性。
在一些操作场景中,执行前向整形操作的前向整形器和执行逆向/后向整形操作的逆向/后向整形器(诸如图1A、图1B或图1C中描绘的前向整形器和逆向/后向整形器)形成整形器对。前向整形器执行前向整形操作以将码字或像素值从原始采样域映射到映射采样域,而逆向/后向整形器执行逆向/后向整形操作以将经映射的码字或经映射的像素值从映射采样域映射回原始采样域。
用于整形操作的操作参数(或整形器参数)在推断或部署阶段不同地进行使用,这取决于所实施的编解码器架构。
在如图1A所示的操作场景中,在编码器侧(例如,仅等)使用前向整形器,而在解码器侧(例如,仅等)使用逆向/后向整形器。用于前向整形操作的操作参数在编码器侧用于前向整形器以驱动或执行前向整形操作。同样地,用于逆向/后向整形操作的操作参数在解码器侧用于逆向/后向整形器以驱动或执行逆向/后向整形操作。
在如图1B或图1C所示的操作场景中,在编码器侧或解码器侧中的每一个处在推断或部署阶段中使用前向整形器和逆向/后向整形器两者。用于前向整形操作和逆向/后向整形操作两者的操作参数在编码器侧或解码器侧中的每一个处用于前向整形器和逆向/后向整形器,以驱动或执行前向整形操作和逆向/后向整形操作。
在如图2A(a)所示的操作场景中,在全局整形操作中使用的操作参数(整形参数)可以与整个模型中的非整形操作的操作参数(非整形参数)一起定义和训练。这些操作参数可以在运行时在解码器处被预先存储、预先配置或固定。
在训练阶段中,可以使用相同训练数据集中的一些或全部相同训练图像来优化或训练整形参数和非整形参数两者。整形参数可以包括在前向整形操作中使用的前向整形参数和在逆向/后向整形操作中使用的逆向/后向整形参数。
在推断或部署阶段(对于实际应用)中,整个模型可以被分割为编码器模型和解码器模型。因此,整形参数可以被分割或划分为前向整形参数和逆向/后向整形参数。由于编码器模型可以仅执行前向整形操作,因此可以在编码器模型处仅使用或存储前向整形参数。由于解码器模型可以仅执行逆向/后向整形操作,因此可以在解码器模型处仅使用或存储逆向/后向整形参数。
另外,由于包括解码器使用的整形参数(例如,逆向/后向整形参数等)的解码器模型可以在接收到用经前向整形的图像编码的经编码的视频信号之前被存储或预先存储在解码器处,以支持全局整形操作,因此可能不需要在经编码的视频信号中发送或包括附加整形参数(除了在解码器处存储或预先存储的整形参数之外)。
相比之下,对于用于执行图像/图片自适应整形操作的编解码器架构,由于整形参数是为每个单独的图像自适应地决定的,因此可能需要在经编码的视频信号中发送或包括这些整形参数。
如图1B或图1C所示,基于学习的图像/视频编码器或解码器的编解码流水线中的非整形操作可以用环路滤波器或环内滤波器来实施或执行,其中一些或全部可以是ML模型,诸如神经网络。例如,编解码流水线中的一些神经网络——诸如光流网络(124)、MV编码器网络(126)、MV解码器网络(130)、运动补偿网络(122)等——可以被训练以生成或预测经运动补偿的图像。编解码流水线中的一些神经网络——诸如残差编码器网络(108)、残差解码器网络(112)等——可以被训练以生成或预测残差图像。生成或预测经运动补偿的图像的神经网络对生成或预测残差图像的神经网络进行补充,而不是用作其逆操作或反操作。换句话说,预测的经运动补偿的图像对公共图像/图片域(例如,整形图像/图片域、非整形图像/图片域等)中的预测的残差图像进行补充,而不是用作其逆操作。
与非整形操作相比,编解码流水线中的前向整形操作通过将预整形图像从原始图像/图片域变换或整形为整形图像/图片域中的经前向整形的图像来改善编解码效率。编解码流水线中的后向整形操作对编解码效率已经通过整形操作而改善或增强的经编码的视频信号进行操作,并且通过对经前向整形的图像进行后向整形来在重建图像/图片域中生成重建图像。在一些操作场景中,重建图像/图片域与原始图像/图片域相同。因此,后向整形函数(例如,在逻辑上、在数学上等)用作前向整形操作的逆操作或反操作,并与前向整形操作形成整形对。
如所描述的,在基于学习的图像/视频编解码中,图像/视频整形可以经由显式映射(或参数映射)或隐式映射(非参数映射)来实施或执行。当生成、估计指定整形映射/函数的一些或所有操作参数和/或将所述操作参数在经编码的视频信号中从上游编码设备用信号传输到下游接收解码设备时,整形映射/函数是显式的。当指定整形映射/函数的一些或所有操作参数隐含在诸如神经网络的ML模型中并且可以将或可以不将所述操作参数在经编码的视频信号中从上游编码设备用信号传输到下游接收解码设备时,整形映射/函数是隐式的。
在其中利用神经网络实施或执行整形操作的操作场景中。与用于实施或执行非整形操作的神经网络相比,这些神经网络可以使用相对较少的总层数、相对简单的神经网络构建块、相对较少的神经网络参数(例如,模型参数、神经网络的操作参数等)。例如,在一些操作场景中,虽然用于非整形操作的神经网络可以使用诸如resBlock/resNet的神经网络构建块,但是用于整形操作的神经网络可以不使用这种相对复杂的神经网络构建块并且可以不含resBlock/resNet构建块。用于整形操作的神经网络可能不需要对具有相对较大的总层数、相对复杂的神经网络滤波器等的图像中所描绘的运动执行客观的图像分析。结果,用于整形操作的神经网络可以在结构和构建块比在编解码流水线中实施环路或环内滤波或其他非整形操作的神经网络浅且简单的情况下实现信号变换或对图像进行整形。
用神经网络执行的示例整形操作在Guan-Ming Su等人于2021年5月20日提交的美国专利申请公开号2021/0150812;Guan-Ming Su于2021年2月27日提交的PCT/US2021/018407中进行了描述,其全部内容如本文充分阐述的那样特此通过引用并入。
示例图像自适应整形方法
对于图像/图片自适应整形器或整形操作,可以根据本文所述的技术在编码器侧应用各种方法,以生成或估计指定整形操作的图像特定整形映射/函数的操作参数(或整形参数)。
在一些操作场景中,在如图2B所示的示例过程流程中,框202包括在训练或学习阶段中,加载并使用训练数据集中的训练图像,以在没有学习的整形参数的情况下将要预训练的模型(或其中的模型参数)训练或优化为用于进行编码操作的经预训练模型。在训练或学习阶段中,经预训练模型或要预训练的模型可以用于仅执行非整形操作或者替代性地执行具有初始、默认或静态整形映射的整形操作。
框204包括将经预训练模型的学习的模型参数复制到用要训练的整形参数指定的要训练的模型中。可以在进一步的训练中冻结从经预训练模型复制的学习的模型参数。
框206包括加载并使用训练数据集中的训练图像(其可以与或可以不与框202中使用的训练图像相同,或者其可以只是框208中要编码的图像),以在不进一步训练或优化从经预训练模型复制且现已冻结的学习的模型参数的情况下将仅在要训练的模型中的要训练的整形参数训练或优化为经训练模型中的经训练整形参数。
框208包括在测试、推断或部署阶段中,使用所复制的学习的经预训练模型参数以及从经训练模型中学习的整形参数两者对(例如,非训练、输入等)图像进行编码。
如图2A的过程流程所示,类似于模型微调,包括整形操作的经训练模型不必从头开始训练。相反,经训练模型可以利用经训练模型参数来进行经预训练模型中的非整形操作。
附加地、可选地或替代性地,在一些操作场景中,可以相对高效地(例如,使用相对较少的迭代或数据点等)使用梯度体面方法(诸如迭代随机梯度方法)来学习、调整、计算或收敛整形参数。例如,可以通过使用迭代随机梯度方法的反向传播来迭代地且相对频繁地更新用于整形操作的神经网络中的诸如权重/偏差的神经网络操作参数,所述迭代随机梯度方法最小化了如通过率失真误差/成本函数测量的误差或成本。
包括学习的整形参数和学习的非整形参数的经训练模型可以用于生成(例如,运行时、动态、图像自适应等)操作参数,所述操作参数(例如,显式地、全部或部分地等)根据实际码字或其在单独输入图像中的分布来指定专门针对单独输入图像优化的整形函数/映射。这些整形函数/映射可以用于执行与输入图像相关的整形操作。
附加地、可选地或替代性地,(例如,显式地等)定义整形函数/映射或等效/近似曲线或查找表的这些运行时生成的操作参数中的一些或全部可以被包括为整形元数据,作为用整形图像编码的经编码的视频信号中携带的整体图像元数据的一部分,以使接收设备能够在生成重建图像时适当地执行整形操作。
在一些操作场景中,可以实施或执行穷举搜索以从多个候选整形函数/映射中选择(例如,最佳等)用于对图像(例如,输入图像、经前向整形的图像等)进行整形的特定(例如,前向、逆向或后向等)整形函数/映射。候选整形函数/映射中的每一个可以是由亮度映射(LM)模块使用的曲线,诸如多段多项式(例如,多个分段线性或1阶线段、多个分段2阶多项式段等),所述亮度映射模块根据如通用视频编解码(VVC)规范等可适用的视频编解码规范来实施图像处理操作。用于指定或定义这些候选整形函数/映射/曲线中的一些或全部中的每一个的操作参数可以是预先构建的、预先配置的、动态确定的等。
候选整形函数/映射可以由分别表示为“ADP”和“CW”的两个参数的特定参数集、组合或对来识别、标记或以其他方式表示。ADP参数可以用于识别或表示条带类型和(例如,高等)比特率的选项/设置(自适应)。参数CW可以用于识别或表示为要覆盖的多段多项式整形函数中的所有段分配的(例如,有效的、非保留的、非剪裁的等)码字的总数。
通过举例但限制的方式,对于所有帧内(AI)编解码的图像条带,参数ADP可以被设置为0或1,其中,ADP等于零(0)指示对应的(图像自适应的)整形函数/映射/曲线被应用于所有量化参数(QP)值,并且其中,ADP等于一(1)指示整形函数/映射/曲线被应用于第一QP值范围(例如,QP>22、指定的正常QP范围等),并且静态整形函数/映射/曲线被应用于第二QP值范围(例如,指定的低QP范围、QP<=22等)。虽然静态整形函数/映射/曲线可以基于其中的图像或码字/分布来选择,但是指定静态整形函数/映射/曲线的操作参数可以是固定的、预先确定的、预先配置的或非图像自适应的。
表示要覆盖的图像自适应整形函数/映射/曲线的码字总数的参数CW可以取决于包括用于编码或表示整形图像的可用码字的码字空间的比特深度(例如,对于颜色空间的亮度通道/分量,对于颜色空间的色度通道/分量、对于RGB颜色空间中的R、G或B等)。参数CW的示例值范围可以是但不一定仅限于以下各项中的任一项:多段多项式的每段的相对值范围[8,511]、一些或所有可能的8位值、一些或所有可能的10位值(例如,896、980等)等。为了减少或限制穷举搜索中的候选整形函数/映射/曲线的总数,在一些操作场景中,参数CW的值可以从多个值(诸如{1022,980,952,924,896,868,840,812})中的一个值中选择。
因此,在AI编解码的当前示例中,总共有2个(对于ADP)*8个(对于CW)=16个候选整形函数/映射/曲线变体,它们可以分别表示为{ADPi,CWi},其中,i=0、1、…、15。
可以将率失真优化(RDO)方法应用于图像,以计算与使用这些候选整形函数/映射/曲线中的一些或全部对图像进行整形相关的误差/成本,并且通过在这16个变体/候选中的一些或全部中选择(例如,最优、最佳、具有最小误差/成本等)候选整形函数/映射/曲线来识别/确定特定的整形映射/函数/曲线。示例RDO成本函数可以在拉格朗日率失真函数中定义如下:
J=D+λR (1)
可以使用任何、一些或所有失真模型来全部或部分地估计或评估RDO误差/成本,所述失真模型包括但不限于:平方差之和(SSD)、均方误差(MSE)、峰值信噪比(PSNR)等。附加地、可选地或替代性地,可以使用任何、一些或所有基于感知的模型来全部或部分地估计或评估RDO误差/成本,所述基于感知的模型包括但不限于:结构相似度指数(SSIM)、特征相似度指数(FSIM)、视觉信息保真度(VIF)、加性失真度量(ADM)、对比敏感度函数(CSF)等。在一些操作场景中,可以使用平均或加权平均失真/误差/成本来选择亮度或色度分量/通道的特定整形映射。
基于单独输入图像选择的用于单独输入图像的特定整形函数/映射/曲线可以用于执行与输入图像相关的整形操作。
附加地、可选地或替代性地,(例如,显式地等)定义特定整形函数/映射/曲线或等效或近似查找表的操作参数可以被包括为整形元数据,作为用整形图像编码的经编码的视频信号中携带的整体图像元数据的一部分,以使接收设备能够在生成重建图像时适当地执行整形操作。
在一些操作场景中,可以实施或执行基于ML的方法,以将图像分类为多个图像类别中的特定图像类别。所述多个图像类别对应于多个前向和/或逆向、后向整形函数/映射/曲线集合。所述多个类别中的每个图像类别对应于所述多个前向和/或逆向、后向整形函数/映射/曲线集合中的相应的整形函数/映射/曲线集合。可以针对对(对应的)图像类别中的图像(例如,输入图像、经前向整形的图像等)进行整形来具体指定、具体优化或定制相应的整形函数/映射/曲线集合。
在这种基于ML的方法下,可以使用包括训练图像的训练数据集和表示每个训练图像的地面真值的标记来训练如神经网络等ML模型。训练图像的地面真值识别所述多个图像类别中的训练图像所属于的特定图像类别。因此,可以使用地面真值来识别特定的整形函数/映射/曲线集合或操作参数,所述操作参数(例如,显式地等)定义或指定特定的整形函数/映射/曲线集合。
在训练阶段中,ML模型可以用于对训练数据集中的一些或所有训练图像进行分类或预测其类别。可以将预测的类别与由训练图像的标记指示或识别的地面真值类别进行比较。类别预测中的误差可以被测量、计算(例如,作为L1或L2距离值等)和/或反向传播,以更新或优化ML模型中使用的操作参数,诸如神经网络中的权重/偏差。ML模型可以例如使用梯度下降方法或随机梯度下降方法重复地或迭代地进行优化。
附加地、可选地或替代性地,在验证或测试阶段,可以使用包括训练/验证图像的训练/验证数据集中的训练/验证图像和表示地面真值的标记来验证和/或进一步优化/微调经训练ML模型和其中使用的经训练/经优化的操作参数,所述标记识别每个训练/验证图像的对应图像类别。类别预测中的预测精度或误差可以被测量、计算(例如,作为L1或L2距离值等)和/或用于进一步优化或微调ML模型中使用的操作参数。
在推断或实际部署阶段中,经训练ML可以用于将图像分类为特定的图像类别。可以为图像选择或识别特定的前向和/或后向/逆向整形函数/映射/曲线集合。
作为示例而非限制,对于在指定的QP值范围(诸如正常QP范围)内的所有帧内(AI)编解码(其中,QP=22、27、32、37),用索引0、1、…、15标记的整形函数/映射/曲线的十六(16)个方差或集合可以分别对应于图像可以被分类到的十六(16)个类别。训练和/或验证数据集可以包括基于为这些训练/验证图像指定的标记分类到这些类别中的训练/验证图像。结果,整形参数选择/确定(或识别图像的前向和/或后向/逆向整形函数/映射/曲线的对应集合)问题可以被视为图像/视频分类问题。
如本文所述的示例训练数据集可以包括但不一定仅限于以下各项中的一项或多项:RGB训练图像数据库、SDR训练图像数据库、HRD训练图像数据库、HDR P3 PQ图像数据集、SCC图像数据库、DIV2K、Flicker2K(例如,具有2K空间分辨率的图像等)、ImageNet数据库的子集(例如,具有各种不同分辨率的图像等)、上述各项的组合等。
用作如本文针对图像整形参数预测训练/验证/测试所述的ML模型的神经网络可以包括以下各项中的一项或多项:CNN、和/或残差学习神经网络,如ResNet。对于训练/验证/测试/预测/推断,ML模型的输入可以包括通过图像变换操作(诸如调整大小、裁剪、翻转、旋转等)从原始图像中变换——获得的图像贴片。附加地、可选地或替代性地,ML模型的输入可以包括从一个或多个训练数据集中可用的图像中提取的特征(例如,直方图、二进制位方差、标准差、梯度等)。由ML模型生成的输出可以包括预测的目标图像类别(或类)标记,所述标记可以在训练和验证/测试阶段与地面真值进行比较、利用其进行测量或验证。可以针对不同的训练图像数据库或数据集来调整贴片大小(例如,对于输入图像贴片等)、批大小(例如,对于权重/偏差更新或优化的每次迭代或每个时期等)、学习率、时期的数量等。
基于单独输入图像的所分类图像类别选择的用于单独输入图像的特定整形函数/映射/曲线可以用于执行与输入图像相关的整形操作。
附加地、可选地或替代性地,(例如,显式地等)定义特定整形函数/映射/曲线或等效或近似查找表的操作参数可以被包括为整形元数据,作为用整形图像编码的经编码的视频信号中携带的整体图像元数据的一部分,以使接收设备能够在生成重建图像时适当地执行整形操作。
整形函数/映射表示和编解码语法
本文所述的整形函数/映射可以以各种形式或整形模型表示,所述形式或整形模型包括但不限于以下各项中的任一项:分段线性段、分段多项式段、使用B样条函数或其张量积作为基函数、一个或多个幂函数、一个或多个查找表(LUT)等。
在输入图像具有多于一个要整形的颜色分量/通道的操作场景中,可以在相应的整形函数中实施或不实施跨通道预测的情况下为每个颜色分量/通道单独设计、选择或生成相应的整形函数。例如,整形函数/映射可以应用于一个颜色分量/通道或多个颜色分量或通道中的(例如,分量等)码字或像素值。
整形函数/映射在其中操作的域——例如,在其中表示输入图像的原始或输入图像/图片域、或在其中表示通过对输入图像进行整形而获得的整形图像的整形图像/图片域——可以是以下各项之一:RGB域、YCbCr域、ICtCp域等。
前向整形和逆向整形函数/映射可以具有不同的表示和不同的操作参数集合。在一些操作场景中,对于如图2A(a)所描绘的全局整形,前向整形参数和逆向整形参数都包括在全局整形模型(例如,基于多项式的全局整形模型、基于LUT的全局整形模型等)中。
在一些操作场景中,对于图像/图片自适应整形(诸如用并入环内整形操作的图1B或图1C的编解码器架构来实施的),前向整形参数和逆向整形参数都被包括在经编码的视频信号或对应的已编码比特流中并在其中被发送/用信号传输。
在诸如仅用于帧内编解码图像(或图像条带)的环内和环外整形或用于帧内编解码图像和帧间编解码图像两者(或图像条带)的环外整形的一些操作场景中,仅逆向整形函数/映射或其中使用的操作参数被包括在经编码的视频信号或对应的已编码比特流中并在其中被发送/用信号传输。
在诸如根据可适用的视频编解码规范(诸如VVC规范)的亮度映射色度缩放(LMCS)操作的一些操作场景中,仅前向整形函数/映射或其中使用的操作参数被包括在经编码的视频信号或对应的已编码比特流中并在其中被发送/用信号传输。逆向/后向整形函数/映射或其中使用的操作参数可以从用信号传输的前向整形函数/映射或前向整形函数/映射的用信号传输的操作参数得到。
训练诸如NN的ML模型可以使用梯度体面方法来计算或更新ML模型参数。根据定义,梯度下降是用于搜索可微函数(诸如整形函数)的局部最小值的一阶迭代优化算法。因此,整形函数需要是(例如,一阶等)可微的,以避免搜索算法中的不连续性、奇异性或不稳定性。
这种可微性条件可以很容易地通过整形模型来满足,所述整形模型建立在作为基函数的样条函数集合、一阶或更高阶(阶>=1)的单段多项式、二阶或更高阶(阶>=2)的多段多项式上。
对于建立在整形模型(诸如LUT(具有离散化的值)或分段线性段)上的整形函数,整形函数违反一阶可微性可能会在编码器侧的基于ML的整形模型训练或整形参数估计期间引起如无法定位最小值、无法收敛、收敛缓慢、数值不稳定等问题。
在本文所述的技术下解决或避免这些问题的许多方式之一可以是使用基于ML的整形模型(诸如基于可微函数B样条函数的整形模型、单段多项式等),以首先(例如,在训练阶段等)估计或预测整形函数/映射的整形参数(例如,与对图像进行整形相关等),并且然后使用(例如,在推断或部署阶段等)其他构造——其可以支持或可以不支持一阶可微性——诸如分段线性段或LUT来近似或推断用于近似用所估计的整形参数指定或定义的整形函数/映射的构造的操作参数。
可以根据可适用的图像/视频编解码规范(诸如VVC规范)使用编解码语法和语法元素在经编码的视频信号中从诸如视频编码器的上游设备向诸如视频解码器的下游接收设备传送整形参数。在一些操作场景中,用信号传输特定的整形参数以用于图像自适应整形操作(或整形器)。在一些操作场景中,用信号传输作为相对较高级别的整形参数的一部分的整形模型标识(表示为“reshaper_model_idc”),以用于全局整形操作(或整形器),因为指定全局整形映射/函数的详细整形参数已被包括在解码器侧的经预先配置的整形模型中。
下表1说明了示例语法,所述示例语法包括用于以高级语法(HLS)对高级整形参数进行编码的语法元素,所述高级语法用于根据可适用的图像/视频编解码规范对视频信号进行编码。HLS可以是视频编解码规范中的VPS、SPS、PPS、PH、SH和SEI消息等。
表1–高级整形参数的示例语法
在表1中,等于一(1)的表示为“reshaper_enabled_flag”的语法元素指定在视频(例如,编码、解码、代码转换等)编解码器中使用整形操作(或整形器)。等于(0)的语法元素“reshaper_enabled_flag”指定在视频(例如,编码、解码、代码转换等)编解码器中不使用整形操作(或整形器)。
等于一(1)的表示为“reshaper_inloop_flag”的语法元素指定整形操作(或整形器)用作编解码环(或环内)中的编解码操作的一部分。等于零(0)的语法元素“reshaper_inloop_flag”指定整形操作(或整形器)用作编解码环(或环外)中的编解码操作的预处理或后处理操作。
在一些操作场景中,语法元素“reshaper_inloop_flag”可能只需要在应用(帧)间编解码时用信号传输或发送。在其中帧被帧内编解码的一些操作场景中,语法元素“reshaper_inloop_flag”可以用于用信号传输应用逆向/后向整形操作(或整形器)的位置。如果语法元素“reshaper_inloop_flag”等于一(1),则在环内滤波之前应用逆向整形器。另一方面,如果语法元素“reshaper_inloop_flag”等于零(0),则在环内滤波之后应用逆向整形器。
等于一(1)的表示为“reshaper_adaptive_model_flag”的语法元素指定在编解码器中使用图片/图像自适应整形。等于零(0)的语法元素“reshaper_adaptive_model_flag”指定对应的全局整形映射/函数已经存储或固定在编解码器中。
表示为“reshaper_model_idc[cmp]”的语法元素可以用于指示整形操作(或整形器)中使用的整形模型(例如,线性多项式、非线性多项式、LUT等),其中,(颜色空间的)颜色分量或通道中的码字由表示为“cmp”的值标识。在一些操作场景中,如果基于多个映射函数/映射来执行整形操作以在多个颜色分量/通道中生成整形码字,则可以使用该语法元素。基于该语法元素,下游接收设备或视频解码器可以确定将哪种整形函数/映射应用于一个或多个输入颜色分量/通道中的哪个输入或预整形码字,以在输出或整形颜色分量/通道中生成整形码字。
在全局整形中,一些或所有的整形参数(诸如在前面的语法或语法元素中携带的用于指定或定义全局整形映射/函数的整形参数)可能已经预先存储或固定在经编码的视频信号的下游接收设备处。因此,不需要在经编码的视频信号中携带、包括或用信号传输这些整形参数。
下表2说明了示例整形模型识别值(表示为“model_idc”或“reshaper_model_idc[cmp]”)。在其中执行前向整形和逆向/后向整形两者的一些操作场景中,可以使用相同的整形模型识别值来识别其中表示前向和逆向/后向整形映射/函数的相同整形模型。在其中执行前向整形和逆向/后向整形的一些操作场景中,不同的整形模型识别值可以用于识别其中分别表示前向整形映射/函数和逆向/后向整形映射/函数的不同整形模型。例如,具有多个数据字段值的语法元素“reshaper_model_idc”可以用于指示由前向和逆向/后向整形映射/函数形成的整形函数/映射对。附加地、可选地或替代性地,语法元素“reshaper_model_idc”可以由语法元素“forward_reshaper_model_idc”和“inverse_reshaper_model_idc”代替或被分割为所述语法元素,以分别用于指示前向和逆向/后向整形映射/函数。
表2–整形模型识别
model_idc | 映射函数 |
0 | 分段线性 |
1 | 分段多项式 |
2 | 分段多项式与跨通道预测,如MMR |
3 | 幂 |
4 | 查找LUT |
5 | B样条 |
6...8 | 保留 |
在一些操作场景中,不需要包括或用信号传输前向和逆向/后向整形参数两者。在示例中,在解码器侧仅执行逆向/后向整形。因此,在本示例中,可能不需要在经编码的视频信号中包括或用信号传输前向整形参数。在另一个示例中,如在VVC中,在经编码的视频信号中包括或用信号传输前向整形参数。因此,需要执行逆向/后向整形的下游接收设备可以从用信号传输的前向整形参数得到逆向整形参数。
在第一示例中,除了高级整形参数之外,还可以在视觉动态范围(VDR)编解码语法中携带或包括一些或所有剩余的整形参数,所述编码语法如下表3中表示为“reshaper_mapping_data()”的语法,其中,参数“num_y_partitions_minus1”和“num_x_partitions_minus1”中的每一个被设置为零(0),如美国专利第10,136,162号中所述,所述美国专利通过引用整体并入本文。
表3–示例VDR整形器映射数据语法
/>
/>
在第二示例中,除了高级整形参数之外,还可以在可适用的编解码语法中携带一些或所有剩余整形参数,所述编码语法如下表4中表示为“reshaper_mapping_data()”的语法,如通用视频编解码建议ITU-T H.266(2020年8月)中的亮度映射色度缩放(LMCS)语法中所述,其通过引用整体并入本文。
表4–示例VCC LMCS整形器映射数据语法
附加地、可选地或替代性地,在一些操作场景中,作为VVC编解码中LMCS语法的一部分,可以在可适用的编解码语法中携带或包括一些或所有(例如,三个等)颜色分量/通道的一些或所有通道特定性整形参数,所述编码语法如下表5中表示为“inv_reshaper_mapping_data()”的语法。
表5–示例通道特定性VCC LMCS整形器映射数据语法
在一些操作场景中,整形操作(或整形器)可以使用B样条函数来实施,如Guan-Ming Su等人于2019年10月1日提交的美国临时申请第62/908770号,“TENSOR-PRODUCT B-SPLINE PREDICTOR”中所述,所述美国临时申请的全部内容如本文充分阐述的那样特此通过引用并入。
B样条是具有满足以下约束的结点ti…tn的序列的样条(或样条函数):
∑iBi,n(x)=1,x∈[ti,tn) (2-2)
给定一系列结点值ti,…,tn,可以唯一地识别样条或B样条。
B样条函数具有某些特性,所述特性使其非常适合(例如,ML、非ML、整形等)模型训练/优化。k次B样条的导数简单地是k-1次B样条的函数。B样条能够在结点上连续到特定的阶数。例如,只要提供一个不同的结点,B样条就能够提供在用于训练/优化ML模型、神经网络等的许多反向传播技术中使用的一阶导数。
B样条仅在相对紧凑的支持上为非零(与其求和性质组合)意味着B样条的线性组合不太可能在(例如,ML、非ML、整形等)模型训练/优化中引起数值不稳定性,因为它们的最大值可以完全由生成线性组合时使用的权重值定义或控制。
B样条(函数)的表示幂相对较大。例如,n阶B样条的(例如,线性、张量积等)组合可以用于形成或提供其他函数的基函数,包括但不限于相同阶n的所有其他样条。
在第三示例中,除了高级整形参数之外,还可以在如下表6所示的用于跨通道整形操作的可适用的编解码语法中携带一些或所有剩余的整形参数,如先前提及的美国临时申请第62/908770号中所述。
表6–示例B样条跨通道整形器映射数据语法
附加地、可选地或替代性地,除了高级整形参数之外,还可以在如下表7所示的用于单通道整形操作的可适用的编解码语法中携带一些或所有剩余的整形参数。
表7–示例B样条单通道整形器映射数据语法
图3A图示了根据可适用的视频编解码规范使用编解码语法将用于整形操作(表示为“整形器”)的整形参数编码到经编码的视频信号中的示例过程流程。这些整形参数可以使经编码的视频信号的接收设备能够或使得所述接收设备在解码器侧执行与包括在经编码的视频信号中并从经编码的视频信号解码的图像相关的整形操作。
框302包括开始或初始化编码操作,所述编码操作将用于整形操作(或整形器)的操作参数编码在由经编码的视频信号所携带的一个或多个数据单元或其中的指定数据字段(例如,头数据字段、非头数据字段、图像序列级别、图像/图片级别、条带级别等)中。
框304包括确定整形操作是否被启用。
框306包括响应于确定整形操作被禁用,将用于整形操作的操作参数中的整形参数“reshaper_enabled_flag”设置为假或零(0)。过程流程进行到框326,所述框结束或终止用于整形参数的编码操作。
框308包括响应于确定整形操作被启用,将用于整形操作的操作参数中的整形参数“reshaper_enabled_flag”设置为真或一(1)。框310包括确定整形操作是否被实施或执行为环内操作。
框312包括响应于确定整形操作是环内操作,将用于整形操作的操作参数中的整形参数“reshaper_inloop_flag”设置为真或一(1)。
框314包括响应于确定整形操作不是环内操作,将用于整形操作的操作参数中的整形参数“reshaper_inloop_flag”设置为假或零(0)。
框316包括确定整形操作是否被实施或执行为图像或图片自适应操作。框318包括响应于确定整形操作是图像或图片自适应的,将用于整形操作的操作参数中的整形参数“reshaper_adaptive_model_flag”设置为真或一(1)。框320包括针对经受图像/图片自适应整形操作的每个图像/图片使用可适用的编解码语法(诸如上表3至表7中所示的语法(例如,具有图像特定值等))来对一些或所有剩余的整形参数(或整形器映射数据)进行编码。
框322包括响应于确定整形操作不是环内操作,将用于整形操作的操作参数中的整形参数“reshaper_adaptive_model_flag”设置为假或零(0)。框324包括对经受全局整形操作的一些或所有颜色分量/通道中的一些或所有图像/图片的参数“reshaper_model_idc”(诸如上表2中所示)进行编码。
然后,过程流程从框320或324进入结束或终止用于整形参数的编码操作的框326。
图3B图示了根据可适用的视频编解码规范使用编解码语法从经编码的视频信号解码或解析用于整形操作(表示为“整形器”)的整形参数的示例过程流程。这些整形参数可以由经编码的视频信号的接收设备用于在解码器侧执行与包括在经编码的视频信号中并从经编码的视频信号解码的图像相关的整形操作。
框332包括开始或初始化解析或解码操作,所述解析或解码操作从在经编码的视频信号中携带的一个或多个数据单元或其中的指定数据字段(例如,头数据字段、非头数据字段、图像序列级别、图像/图片级别、条带级别等)中解析或解码用于整形操作(或整形器)的操作参数。
框334包括解析或解码整形参数“reshaper_enabled_flag”。框336包括确定整形参数“reshaper_enabled_flag”的值是否为真或一(1)。
响应于确定整形参数“reshaper_enabled_flag”的值不为真或一(1),过程流程进入框348,所述框结束或终止用于整形参数的解析或解码操作。另一方面,响应于确定整形参数“reshaper_enabled_flag”的值为真或一(1),过程流程进行到框338。
框338包括解析或解码整形参数“reshaper_inloop_flag”。框340包括解析或解码整形参数“reshaper_adaptive_model_flag”。框342包括确定整形参数“reshaper_adaptive_model_flag”的值是否为真或一(1)。
框344包括响应于确定整形参数“reshaper_adaptive_model_flag”的值为真或一(1),针对经受图像/图片自适应整形操作的每个图像/图片使用可适用的编解码语法(诸如上表3至表7中所示的语法(例如,具有图像特定值等))来解析或解码剩余的整形参数(或整形器映射数据)。
框346包括响应于确定整形参数“reshaper_adaptive_model_flag”的值不为真或一(1),针对经受全局整形操作的一些或所有颜色分量/通道中的一些或所有图像/图片解析或解码如上表2中所示的参数“reshaper_mode_idc”。
然后,过程流程从框344或346进入结束或终止用于整形参数的解析/解码操作的框348。
用于显式或隐式映射的基于学习的整形器
可以实施或执行基于ML的整形操作(或整形器),以支持显式映射或隐式映射。
如本文所述,可以显式地生成、表示整形映射并且例如使用如上表1至表7所示的编解码语法将其从上游设备用信号传输到下游接收设备,以编码、解析或解码经编码的视频信号中的整形参数。附加地、可选地或替代性地,整形映射可以不是显式地生成的、表示的并且可以不从上游设备用信号传输到下游接收设备。相反,整形模型可以在整形操作中实施或执行隐式(整形)映射。
图1D图示了支持用于基于学习的整形操作的显式映射的示例编解码器架构。
显式映射意指整形参数在如本文所述的用于编码经编码的视频信号的编解码语法中显式地指定前向和逆向/后向整形映射中的至少一个。相比之下,隐式映射意指没有整形参数在如本文所述的用于编码经编码的视频信号的编解码语法中显式地指定前向和逆向/后向整形映射中的任一个。
在训练阶段中,可以利用训练数据集中的训练图像来训练/优化基于ML的模型——所述基于ML的模型可以用神经网络(诸如图1D所示的基于学习的整形器估计网络)来实施——以预测指定或定义在前向整形操作中使用的前向整形映射/函数的(显式)操作参数(例如,如上表1至表7等所示),并且预测指定或定义在逆向或后向整形操作中使用的逆向或后向整形映射/函数的(显式)操作参数。
在推断或实际部署阶段中,在编码器侧,如图1D所示的基于ML的模型或基于学习的整形器估计网络接收输入图像(102)作为输入并使用所述输入图像来预测(显式)操作或整形参数(例如,如上表1至表7等所示),所述操作或整形参数指定或定义在与输入图像(102)相关的前向和逆向/后向整形操作中使用的前向和逆向/后向整形映射/函数。
可以接收这些整形参数中的一些或全部并通过操作134将其用于得到前向整形映射/函数,所述前向整形映射/函数然后可以由前向整形器的第一实例(104-1)和第二实例(104-2)应用以将预整形图像前向整形为经前向整形的图像。
可以接收这些整形参数中的一些或全部并通过操作136将其用于得到逆向/后向整形映射/函数,所述逆向/后向整形映射/函数然后可以由逆向/后向整形器(118)应用以将经前向整形的图像逆向/后向整形为重建图像(例如,近似输入图像(102)等)。
可以将预测的整形参数与通过对输入图像(102)进行前向整形而生成的经前向整形的图像一起编码到经编码的视频信号中。这些预测的整形参数可以是特定于输入图像(102)的并且自适应于所述输入图像。
在推断或实际部署阶段中,在解码器侧,实施如图1D所示的解码器侧编解码器架构的下游接收设备(具有图1B的类似解码器侧处理块)接收并解码经前向整形的图像(102-1)和图像元数据(102-2)中的整形参数作为输入。
下游设备可以使用这些整形参数中的一些或全部来执行操作(134),以得到前向整形映射/函数,所述前向整形映射/函数然后可以由前向整形器的第二实例(104-2)应用以将预整形图像前向整形为经前向整形的图像。
下游设备可以使用这些整形参数中的一些或全部来执行操作(136),以得到逆向/后向整形映射/函数,所述逆向/后向整形映射/函数然后可以由逆向/后向整形器(118)应用以将经前向整形的图像(102-1)逆向/后向整形为重建图像(例如,近似输入图像(102)等)。
图1E图示了支持用于基于学习的整形操作的隐式映射的示例编解码器架构。如所描述的,隐式映射意指不在用于编码或解码经编码的信号的编解码语法中表示整形映射。当基于ML的整形器模型包含要在运行时以相对有限的比特率高效地用信号传输的过多的操作参数(例如,在诸如CNN等的神经网络中使用的数百万个参数,诸如权重/偏差)时,可以通过在视频编解码设备(例如,编码器、解码器等)处预先存储或预先配置经训练的基于ML的整形器模型来使用或实施隐式映射。然而,在一些操作场景中,基于ML的整形器模型的一些或所有经优化的操作参数(例如,ML神经网络、ML网络等中的权重/偏差)可以根据可适用的视频编解码规范的编解码语法或语法元素(除了上表1至表7中所示的那些)在本文所述的经编码的视频信号中用信号传输或传输、尤其是当这些参数的总数或携带这些参数的总数据量相对较小(例如,低于特定数据量阈值、权重/偏差参数相对较少、用于携带这些ML模型参数的比特率与比特率开销阈值相比相对较小等)时。
在训练阶段中,可以利用训练数据集中的训练图像来训练/优化基于ML的前向整形模型——所述基于ML的前向整形模型可以用神经网络(诸如图1E所示的基于学习的前向整形器网络138-1和138-2)来实施——以执行与训练图像相关的前向整形操作,以便生成对应的经前向整形的图像,而不生成指定或定义在前向整形操作中使用的前向整形映射/函数的(显式)操作参数(例如,如上表1至表7等所示)。
在训练阶段中,可以利用训练数据集中的训练图像来训练/优化基于ML的逆向/后向整形模型——所述基于ML的逆向/后向整形模型可以用神经网络(诸如图1E所示的基于学习的逆向/后向整形器网络140)来实施——以执行与训练图像相关的逆向/后向整形操作,以便生成对应的经逆向/后向整形的图像,而不生成指定或定义在逆向/后向整形操作中使用的逆向/后向整形映射/函数的(显式)操作参数(例如,如上表1至表7等所示)。
在推断或实际部署阶段中,在编码器侧,图1E中的基于ML的前向整形模型或基于学习的前向整形器网络(138-1或138-2)接收输入图像(102)作为输入并将其用于在不使用任何显式地表示的前向整形映射或函数的情况下执行前向整形操作,以将预整形图像前向整形为经前向整形的图像。
同样地,在编码器侧,图1E中的基于ML的后向整形模型或基于学习的逆向/后向整形器网络(140)接收经前向整形的图像作为输入并将其用于在不使用任何显式地表示的逆向/后向整形映射或函数的情况下执行逆向/后向整形操作,以将经前向整形的图像逆向/后向整形为重建图像。
可以省略将一些或所有整形参数(例如,除了用于指示隐式整形的一个或两个标志等之外)编码到经编码的视频信号中,经编码的视频信号是用通过对输入图像(102)进行前向整形而生成的经前向整形的图像编码的。换句话说,经编码的视频信号可以不携带定义或指定用于要由经编码的视频信号的接收设备执行的整形操作的整形映射/函数的整形参数。
在推断或实际部署阶段中,在解码器侧,实施如图1E所示的解码器侧编解码器架构的下游接收设备(具有图1B的类似解码器侧处理块)接收经前向整形的图像(102-1)和图像元数据(102-2)作为输入并将其解码,所述下游接收设备被预先配置或部署有基于ML的前向和逆向/后向整形模型,诸如具有相应的经训练神经网络操作参数的基于学习的前向整形器网络(138-1或138-2)和/或基于学习的逆向/后向整形器网络(140)。图像元数据(102-2)不包含显式地定义或指定用于要由下游设备执行的整形操作的整形映射/函数的整形参数。
下游设备可以使用经训练的或经预先配置的基于学习的前向整形器网络(138-1或138-2)将预整形图像前向整形为经前向整形的图像。同样地,下游设备可以使用经训练的或经预先配置的基于学习的逆向/后向整形器网络(140)将经前向整形的图像逆向/后向整形为经逆向/后向整形的图像。
前向整形器网络和逆向/后向整形器网络(138或140)中的一个或两个可以用神经网络来实施,所述神经网络实施机器学习以通过相对较高的维度变换将在输入域中表示的要整形的图像或信号整形为在输出域中表示的整形图像或信号。前向整形器网络和逆向/后向整形器网络(138或140)中的一个或两个可以利用监督学习(例如,使用包括地面真值或标记的训练数据集、使用模型测试/验证阶段等)、或利用非监督学习(例如,使用度量、误差、目标、成本函数、使用滤波器与图像数据卷积以确定图像数据的目标图像特征、运动、片段、光亮度、色度、结构、性质等)、或利用监督学习和非监督学习的组合来训练。
本文所述的基于学习的整形网络可以被实施为CNN。CNN可以被描述为(Cin,Cout,KxK conv)。这里,Cin表示CNN的输入图像数据在其中表示的输入颜色通道/分量的总数。Cout表示来自CNN的输出图像数据在其中表示的输出颜色通道/分量的总数。KxK conv指示对用于对CNN中的输入图像数据进行卷积的核大小为K(像素)×K(像素)的卷积滤波器的引用。
图2C图示了至少部分地实施为CNN的示例前向整形器网络和逆向/后向整形器网络(例如,图1E的138、图1E的140等)。
如所示出的,前向整形器网络使用被描述为(3,N,1x1 conv)的(前向整形)CNN,这意味着具有核大小为1(像素)×1(像素)的卷积滤波器的CNN将对在输入域中的三(3)个颜色通道/分量(例如,RGB颜色空间中的RGB通道或分量、YUV颜色空间中的YUV通道/分量等)中表示的输入图像数据进行整形,以输出在输出域中的N个通道的相对较高维度中表示的图像数据。作为比较,在非整形应用中,具有核大小不为1×1的卷积滤波器的CNN可以用于执行检测或响应输入图像的潜在空间结构或图像特征的空间滤波,并且从输入图像中提取特征。相比之下,本文中具有1×1核大小的核滤波器的(整形)CNN将对输入信号/图像或其中编码的单独的码字进行整形。指定核大小1×1以确保不对输入图像执行空间滤波。跨通道矩阵可以用于将在输入域或颜色空间的三个输入通道/分量中表示的码字转换为不同阶数的项(例如,与颜色通道相对应的一阶项和与颜色通道的乘积相对应的二阶或更高阶项等),其中,不同阶的项可以放置在包括N个通道的设计矩阵或列中。结果,输出域可能不是可直接观看的颜色空间。换句话说,来自(前向整形)CNN的新整形信号或新整形图像可能不包括颜色空间的码字,并且可能不是可直接查看的。相比之下,来自未实施本文所述技术的非CNN整形器的整形信号或整形图像可以在颜色空间中表示,并且可以是可直接查看的。
相反地,逆向/后向整形器网络使用描述为(N,3,1x1 conv)的(后向或逆向整形)CNN,这意味着具有核大小为1(像素)×1(像素)的去卷积滤波器的CNN将在输出域中的N个通道的相对较高维度中表示的所接收图像数据(逆向/后向)整形为在重建图像/图片域(其可以与或可以不与输入域相同)中的三(3)个颜色通道/分量(例如,RGB颜色空间中的RGB通道/分量、YUV颜色空间中的YUV通道/分量等)中的重建图像数据。在这些操作场景中,CNN使用1×1核来对像素或码字/信号值进行整形,而不是基于与多个空间邻域像素相对应的多个像素或码字/信号值来得到经滤波的值。如在前向整形的情况下,本文具有1×1核大小的核滤波器的(逆向整形)CNN将对其中编码的整形信号/整形图像或单独的整形码字进行逆向整形。指定核大小1×1以确保不对整形图像执行空间滤波。跨通道矩阵可以用于将在输出域的N个通道中表示的码字(不可直接查看)转换为在重建域或颜色空间的三个输入通道/分量中表示的重建码字,所述重建域或颜色空间可以与输入域或颜色空间相同。因此,重建域可以是可直接观看的颜色空间。换句话说,来自(后向或逆向整形)CNN的新重建信号或新重建图像可以包括颜色空间的码字,并且可以是可直接查看的。
在一些操作场景中,如图2C所示,基于学习的整形器可以使用由一个或多个模块(诸如conv(卷积单元)、ReLU(整流器线性单元)、leakyReLU(泄漏ReLU)、PReLU(参数ReLU)、GDN(广义***归一化)或IGDN(用于逆运算))构成的CNN网络来实施,以在将接收到的图像数据映射到、整形或转换为输出图像数据中提供或引入非线性性质。在一些操作场景中,图2C(a)的整形器可以用于实施图1E中的框138-1和/或138-2中表示的前向整形器网络,而图2C(b)的整形器可以用于实施图1E中的框140中表示的后向或逆向整形器网络。
示例过程流程
图4A图示了根据实施例的示例过程流程。在一些实施例中,一个或多个计算设备或部件(例如,编码设备/模块、转码设备/模块、解码设备/模块、逆色调映射设备/模块、色调映射设备/模块、媒体设备/模块、反向映射生成和应用***等)可以执行此过程流程。在框402中,图像处理***从输入视频信号接收在输入域中表示的输入图像。
在框404中,图像处理***对输入图像执行前向整形以生成在整形图像域中表示的经前向整形的图像。
在框406中,图像处理***执行非整形编码操作,以将经整形的图像编码为经编码的视频信号。非整形编码操作中的至少一个是用机器学习(ML)模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练。
在框408中,图像处理***使经编码的视频信号的接收设备从经前向整形的图像生成重建图像。重建图像用于得到要在与接收设备一起操作的图像显示器上渲染的显示图像。
在实施例中,非整形编码操作包括以下各项中的一项或多项:光流分析、运动矢量编码、运动矢量解码、运动矢量量化、运动补偿、残差编码、残差解码、残差量化等。
在实施例中,输入域对应于颜色空间,所述颜色空间是以下各项之一:RGB颜色空间、YUV颜色空间、IPT颜色空间、另一不同颜色空间等。
在实施例中,前向整形是作为在非整形编码操作之前执行的环外图像处理操作来执行的。
在实施例中,前向整形是作为整体环内图像处理操作的包括非整形编码操作的一部分来执行的。
在实施例中,经前向整形的图像的图像元数据部分是由经编码的视频信号携带的图像元数据的一部分;图像元数据部分包括以下各项中的一项或多项:用于前向整形的前向整形参数、或用于逆向整形的后向整形参数。
在实施例中,图像元数据部分包括显式地指定用于前向整形或逆向整形之一的整形映射的整形参数。
在实施例中,显式地指定整形映射的整形参数是通过以下各项之一生成的:基于ML的整形映射预测方法、或非基于ML的整形映射生成方法。
在实施例中,图像元数据部分包括将前向整形标识为以下各项之一的整形参数:全局映射、或图像自适应映射。
在实施例中,前向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的;不将神经网络的权重和偏差用信号传输到接收设备。
在实施例中,前向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的;将神经网络的权重和偏差中的至少一个用信号传输到接收设备。
图4B图示了根据本发明的实施例的示例过程流程。在一些实施例中,一个或多个计算设备或部件(例如,编码设备/模块、转码设备/模块、解码设备/模块、逆色调映射设备/模块、色调映射设备/模块、媒体设备/模块、预测模型和特征选择***、反向映射生成和应用***等)可以执行此过程流程。在框452中,视频解码***从经编码的视频信号解码在整形图像域中表示的经前向整形的图像。经前向整形的图像是由上游设备通过对在输入图像域中表示的输入图像进行前向整形而生成的。
在框454中,视频解码***对经前向整形的图像执行逆向整形以及与经前向整形的图像相关的非整形解码操作,以生成在重建图像域中表示的重建图像。逆向整形和前向整形形成整形操作对。非整形解码操作中的至少一个是用机器学习(ML)模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练。
在框456中,视频解码***使从重建图像得到的显示图像在图像显示器上被渲染。
在实施例中,逆向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的;不将神经网络的权重和偏差用信号传输到接收设备。
在实施例中,逆向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的;将神经网络的权重和偏差中的至少一个用信号传输到接收设备。
在实施例中,逆向整形是利用在经前向整形的图像的图像元数据部分中用信号传输的整形映射来执行的,所述图像元数据部分是作为图像元数据的一部分在经编码的视频信号中携带的。
在实施例中,如显示设备、移动设备、机顶盒、多媒体设备等计算设备被配置用于执行前述方法中的任一种方法。在实施例中,一种装置包括处理器,并且被配置用于执行前述方法中的任一种方法。在实施例中,一种非暂态计算机可读存储介质存储有软件指令,所述软件指令当由一个或多个处理器执行时使得执行前述方法中的任一种方法。
在实施例中,一种计算设备包括一个或多个处理器以及一个或多个存储介质,所述一个或多个存储介质存储指令集,所述指令集当由所述一个或多个处理器执行时使得执行前述方法中的任一种方法。
注意,尽管本文讨论了单独的实施例,但是本文讨论的实施例和/或部分实施例的任何组合都可以组合以形成进一步实施例。
示例计算机***实施方式
本发明的实施例可以利用计算机***、以电子电路和部件来配置的***、集成电路(IC)设备(诸如微控制器、现场可编程门阵列(FPGA)或另一个可配置或可编程逻辑器件(PLD)、离散时间或数字信号处理器(DSP)、专用IC(ASIC))和/或包括这种***、设备或部件中的一个或多个的装置来实施。计算机和/或IC可以执行、控制或实施与对具有增强动态范围的图像的自适应感知量化有关的指令,如本文所描述的那些。计算机和/或IC可以计算与本文所描述的自适应感知量化过程有关的各种参数或值中的任何参数或值。图像和视频实施例可以以硬件、软件、固件及其各种组合来实施。
本发明的某些实施方式包括执行软件指令的计算机处理器,所述软件指令使处理器执行本公开的方法。例如,显示器、编码器、机顶盒、转码器等中的一个或多个处理器可以通过执行所述处理器可访问的程序存储器中的软件指令来实施与如上所述的对HDR图像的自适应感知量化有关的方法。还可以以程序产品的形式提供本发明的实施例。程序产品可以包括携带一组计算机可读信号的任何非暂态介质,所述一组计算机可读信号包括指令,所述指令当由数据处理器执行时,使数据处理器执行本发明的实施例的方法。根据本发明的实施例的程序产品可以采用各种形式中的任何一种。程序产品可以包括例如物理介质,如包括软盘、硬盘驱动器的磁性数据存储介质、包括CD ROM、DVD的光学数据存储介质、包括ROM、闪速RAM的电子数据存储介质等。程序产品上的计算机可读信号可以可选地被压缩或加密。
在上面提到部件(例如,软件模块、处理器、组件、设备、电路等)的情况下,除非另有指明,否则对所述部件的引用(包括对“装置”的引用)都应该被解释为包括执行所描述部件的功能的任何部件为所述部件的等同物(例如,功能上等同的),包括在结构上不等同于执行在本发明的所图示示例实施例中的功能的所公开结构的部件。
根据一个实施例,本文描述的技术由一个或多个专用计算设备实施。专用计算设备可以是硬接线的,以用于执行这些技术,或者可以包括被持久地编程以执行这些技术的数字电子设备,如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA),或者可以包括被编程为根据固件、存储器、其他存储装置或组合中的程序指令执行这些技术的一个或多个通用硬件处理器。这种专用计算设备也可以将定制的硬接线逻辑、ASIC或FPGA与定制编程相结合来实现这些技术。专用计算设备可以是台式计算机***、便携式计算机***、手持式设备、联网设备、或合并硬接线和/或程序逻辑以实施技术的任何其他设备。
例如,图5是图示了可以在其上实施本发明的实施例的计算机***500的框图。计算机***500包括总线502或用于传送信息的其他通信机制、以及与总线502耦接以处理信息的硬件处理器504。硬件处理器504可以是例如通用微处理器。
计算机***500还包括耦接到总线502以用于存储要由处理器504执行的信息和指令的主存储器506,比如随机存取存储器(RAM)或其他动态存储设备。主存储器506还可以用于存储在执行要由处理器504执行的指令期间的临时变量或其他中间信息。在被存储于处理器504可访问的非暂态存储介质中时,这种指令使得计算机***500变成被自定义为执行在指令中指定的操作的专用机器。
计算机***500进一步包括只读存储器(ROM)508或耦接到总线502以用于存储处理器504的静态信息和指令的其他静态存储设备。提供存储设备510(诸如磁盘或光盘),并将其耦接到总线502以用于存储信息和指令。
计算机***500可以经由总线502耦接到如液晶显示器等显示器512上,以用于向计算机用户显示信息。包括字母数字键和其他键的输入设备514耦接到总线502,以用于将信息和命令选择传送到处理器504。另一种类型的用户输入设备是如鼠标、轨迹球或光标方向键等光标控制件516,以用于将方向信息和命令选择传送到处理器504并用于控制在显示器512上的光标移动。典型地,此输入设备具有在两条轴线(第一轴线(例如,x轴)和第二轴线(例如,y轴))上的两个自由度,允许设备在平面中指定位置。
计算机***500可以使用自定义硬接线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑来实施本文描述的技术,这些自定义硬接线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑与计算机***相结合使计算机***500成为或编程为专用机器。根据一个实施例,响应于处理器504执行包含在主存储器506中的一个或多个指令的一个或多个序列,计算机***500执行如本文所描述的技术。可以将这种指令从另一个存储介质(诸如存储设备510)读取到主存储器506中。包含在主存储器506中的指令序列的执行使处理器504执行本文描述的过程步骤。在替代性实施例中,可以使用硬接线电路来代替软件指令或者与软件指令相结合。
如本文所使用的术语“存储介质”是指存储使机器以特定方式操作的数据和/或指令的任何非暂态介质。这种存储介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,如存储设备510。易失性介质包括动态存储器,诸如主存储器506。常见形式的存储介质包括例如软盘、软磁盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、具有孔图案的任何物理介质、RAM、PROM和EPROM、闪速EPROM、NVRAM、任何其他存储器芯片或存储盒。
存储介质不同于传输介质但可以与传输介质结合使用。传输介质参与存储介质之间的信息传递。例如,传输介质包括同轴电缆、铜线和光纤,包括包含总线502的导线。传输介质还可以采用声波或光波的形式,如在无线电波和红外数据通信期间生成的那些声波或光波。
各种形式的介质可以涉及将一个或多个指令的一个或多个序列载送到处理器504以供执行。例如,最初可以在远程计算机的磁盘或固态驱动器上载送指令。远程计算机可以将指令加载到其动态存储器中,并使用调制解调器通过电话线发送指令。计算机***500本地的调制解调器可以接收电话线上的数据并使用红外发射器将数据转换成红外信号。红外检测器可以接收红外信号中载送的数据,并且适当的电路可以将数据放在总线502上。总线502将数据载送到主存储器506,处理器504从主存储器取得并执行指令。主存储器506接收的指令可以可选地在由处理器504执行之前或之后存储在存储设备510上。
计算机***500还包括耦接到总线502的通信接口518。通信接口518提供耦接到网络链路520的双向数据通信,所述网络链路连接到本地网络522。例如,通信接口518可以是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器、或用于向对应类型的电话线提供数据通信连接的调制解调器。作为另一个示例,通信接口518可以是局域网(LAN)卡,用于提供与兼容LAN的数据通信连接。还可以实施无线链路。在任何这种实施方式中,通信接口518发送和接收携带表示各种类型信息的数字数据流的电信号、电磁信号或光信号。
网络链路520通常通过一个或多个网络向其他数据设备提供数据通信。例如,网络链路520可以提供通过本地网络522到主计算机524或到由因特网服务提供商(ISP)526操作的数据设备的连接。ISP 526进而通过现在通常称为“因特网”528的全球分组数据通信网络来提供数据通信服务。本地网络522和因特网528都使用载送数字数据流的电信号、电磁信号或光信号。通过各种网络的信号以及网络链路520上和通过通信接口518的信号(其将数字数据载送到计算机***500和从计算机***载送数字数据)是传输介质的示例形式。
计算机***500可以通过网络、网络链路520和通信接口518发送消息和接收数据,包括程序代码。在因特网示例中,服务器530可以通过因特网528、ISP 526、本地网络522和通信接口518传输应用程序的请求代码。
所接收的代码可以在被接收到时由处理器504执行,和/或存储在存储设备510或其他非易失性存储装置中以供稍后执行。
等同物、扩展、替代方案和杂项
在前述说明书中,已经参考许多具体细节描述了本发明的实施例,这些细节可以根据实施方式而变化。因此,指明本发明的要求保护的实施例以及申请人认为的本发明的要求保护的实施例的唯一且排他性指示是根据本申请以具体形式发布的权利要求组,其中,这种权利要求发布包括任何后续校正。本文中针对这种权利要求中包含的术语明确阐述的任何定义应该支配如在权利要求中使用的这种术语的含义。因此,权利要求中未明确引用的限制、要素、性质、特征、优点或属性不应该以任何方式限制这种权利要求的范围。因此,应当从说明性而非限制性意义上看待本说明书和附图。
枚举的示例性实施例
本发明可以以本文描述的任何形式实施,包括但不限于以下描述了本发明实施例的一些部分的结构、特征和功能的枚举的示例实施例(EEE)。
EEE 1.一种方法,包括:
从输入视频信号接收在输入域中表示的输入图像;
对所述输入图像执行前向整形以生成在整形图像域中表示的经前向整形的图像;
执行非整形编码操作以将经整形的图像编码成经编码的视频信号,其中,所述非整形编码操作中的至少一个是用机器学习(ML)模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练;
使得经编码的视频信号的接收设备从经前向整形的图像生成重建图像,其中,所述重建图像用于得到要在与所述接收设备一起操作的图像显示器上渲染的显示图像。
EEE 2.根据EEE 1所述的方法,其中,经前向整形的图像是通过利用第一卷积神经网络执行的所述前向整形生成的,所述第一卷积神经网络使用空间核大小为1像素×1像素的卷积滤波器将所述输入图像中的三个颜色通道中的每个输入码字前向整形为N个通道中的相应的经前向整形的码字,其中,N表示不小于三的整数;其中,所述重建图像是通过利用第二卷积神经网络执行的后向整形生成的,所述第二卷积神经网络使用空间核大小为1像素×1像素的第二卷积滤波器将所述输入图像中的所述N个通道中的每个经前向整形的码字后向整形为所述三个颜色通道中的相应的重建码字。
EEE 3.根据EEE 2所述的方法,其中,所述第一卷积神经网络包括所述输入图像中的输入码字到所述N个通道中的经前向整形的码字的非线性映射。
EEE 4.根据EEE 1至3中任一项所述的方法,其中,所述非整形编码操作包括以下各项中的一项或多项:光流分析、运动矢量编码、运动矢量解码、运动矢量量化、运动补偿、残差编码、残差解码或残差量化。
EEE 5.根据EEE 1至4中任一项所述的方法,其中,所述输入域对应于颜色空间,所述颜色空间是以下各项之一:RGB颜色空间、YUV颜色空间、IPT颜色空间或另一不同颜色空间。
EEE 6.根据EEE 1至5中任一项所述的方法,其中,所述前向整形是作为在所述非整形编码操作之前执行的环外图像处理操作来执行的。
EEE 7.根据EEE 1至5中任一项所述的方法,其中,所述前向整形是作为整体环内图像处理操作的包括所述非整形编码操作的一部分来执行的。
EEE 8.根据EEE 1至7中任一项所述的方法,其中,经前向整形的图像的图像元数据部分是由经编码的视频信号携带的图像元数据的一部分;其中,所述图像元数据部分包括以下各项中的一项或多项:用于所述前向整形的前向整形参数、或用于逆向整形的后向整形参数。
EEE 9.根据EEE 8所述的方法,其中,所述图像元数据部分包括显式地指定用于所述前向整形或所述逆向整形之一的整形映射的整形参数。
EEE 10.根据EEE 9所述的方法,其中,显式地指定所述整形映射的整形参数是通过以下各项之一生成的:基于ML的整形映射预测方法、或非基于ML的整形映射生成方法。
EEE 11.根据EEE 1至10中任一项所述的方法,其中,所述图像元数据部分包括将所述前向整形标识为以下各项之一的整形参数:全局映射、或图像自适应映射。
EEE 12.根据EEE 1至11中任一项所述的方法,其中,所述前向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的;其中,不将所述神经网络的权重和偏差用信号传输到所述接收设备。
EEE 13.根据EEE 1至12中任一项所述的方法,其中,所述前向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的;其中,将所述神经网络的权重和偏差中的至少一个用信号传输到所述接收设备。
EEE 14.一种方法,包括:
从经编码的视频信号解码在整形图像域中表示的经前向整形的图像,其中,经前向整形的图像是由上游设备通过对在输入图像域中表示的输入图像进行前向整形而生成的;
对经前向整形的图像执行逆向整形以及与经前向整形的图像相关的非整形解码操作,以生成在重建图像域中表示的重建图像,其中,所述逆向整形和所述前向整形形成整形操作对,其中,所述非整形解码操作中的至少一个是利用机器学习(ML)模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练;
使从所述重建图像得到的显示图像在图像显示器上被渲染。
EEE 15.根据EEE 14所述的方法,其中,所述逆向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的;其中,不将所述神经网络的权重和偏差用信号传输到所述接收设备。
EEE 16.根据EEE 14或15所述的方法,其中,所述逆向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的;其中,将所述神经网络的权重和偏差中的至少一个用信号传输到所述接收设备。
EEE 17.根据EEE 14或15所述的方法,其中,所述逆向整形是利用在经前向整形的图像的图像元数据部分中用信号传输的整形映射来执行的,所述图像元数据部分是作为图像元数据的一部分在经编码的视频信号中携带的。
EEE 18.根据EEE 1至17中任一项所述的方法,其中,所述非整形编码操作中的至少一个是利用机器学习(ML)模型来实施的,所述ML模型先前已用所述整形图像域中表示的训练图像进行了训练。
EEE 19.根据EEE 7所述的方法,其中,所述环内操作是作为编码操作和/或解码操作的一部分来执行的。
EEE 20.一种装置,包括处理器并且被配置为执行如EEE 1至19中所述的方法中的任一种方法。
EEE 21.一种非暂态计算机可读存储介质,具有存储于其上的用于根据EEE 1至19中所述的方法中的任一种方法、利用一个或多个处理器来执行方法的计算机可执行指令。
Claims (16)
1.一种方法,包括:
从输入视频信号接收在输入域中表示的输入图像;
对所述输入图像执行前向整形以生成在整形图像域中表示的经前向整形的图像;
执行非整形编码操作以将经整形的图像编码成经编码的视频信号,其中,所述非整形编码操作中的至少一个是用机器学习(ML)模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练;
使得经编码的视频信号的接收设备从经前向整形的图像生成重建图像,其中,所述重建图像用于得到要在与所述接收设备一起操作的图像显示器上渲染的显示图像。
2.如权利要求1所述的方法,其中,经前向整形的图像是通过利用第一卷积神经网络执行的所述前向整形生成的,所述第一卷积神经网络使用空间核大小为1像素×1像素的卷积滤波器将所述输入图像中三个颜色通道中的每个输入码字前向整形为N个通道中的相应的经前向整形的码字,其中,N表示不小于三的整数;其中,所述重建图像是通过利用第二卷积神经网络执行的逆向整形生成的,所述第二卷积神经网络使用空间核大小为1像素×1像素的第二卷积滤波器将所述输入图像中所述N个通道中的每个经前向整形的码字逆向整形为所述三个颜色通道中的相应的重建码字;其中,所述第一卷积神经网络包括所述输入图像中的输入码字到所述N个通道中的经前向整形的码字的非线性映射。
3.如权利要求1或2所述的方法,其中,所述非整形编码操作包括以下各项中的一项或多项:光流分析、运动矢量编码、运动矢量解码、运动矢量量化、运动补偿、残差编码、残差解码或残差量化。
4.如权利要求1至3中任一项所述的方法,其中,所述前向整形是作为在所述非整形编码操作之前执行的环外图像处理操作来执行的。
5.如权利要求1至3中任一项所述的方法,其中,所述前向整形是作为整体环内图像处理操作的包括所述非整形编码操作的一部分来执行的。
6.如权利要求5所述的方法,其中,所述整体环内图像处理操作是编码操作。
7.如权利要求1至6中任一项所述的方法,其中,经前向整形的图像的图像元数据部分是由经编码的视频信号携带的图像元数据的一部分;其中,所述图像元数据部分包括以下各项中的一项或多项:用于所述前向整形的前向整形参数、或用于逆向整形的后向整形参数。
8.如权利要求7所述的方法,其中,所述图像元数据部分包括显式地指定用于所述前向整形或所述逆向整形之一的整形映射的整形参数。
9.如权利要求8所述的方法,其中,显式地指定所述整形映射的整形参数是通过以下各项之一生成的:基于ML的整形映射预测方法、或非基于ML的整形映射生成方法。
10.如权利要求1至9中任一项所述的方法,其中,所述图像元数据部分包括将所述前向整形标识为以下各项之一的整形参数:全局映射、或图像自适应映射。
11.如权利要求1至10中任一项所述的方法,其中,所述前向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的。
12.一种方法,包括:
从经编码的视频信号解码在整形图像域中表示的经前向整形的图像,其中,经前向整形的图像是由上游设备通过对在输入图像域中表示的输入图像进行前向整形而生成的;
对经前向整形的图像执行逆向整形以及与经前向整形的图像相关的非整形解码操作,以生成在重建图像域中表示的重建图像,其中,所述逆向整形和所述前向整形形成整形操作对,其中,所述非整形解码操作中的至少一个是利用机器学习(ML)模型来实施的,所述ML模型先前已在先前训练阶段中用一个或多个训练数据集中的训练图像进行了训练;
使得从所述重建图像得到的显示图像在图像显示器上被渲染。
13.如权利要求12所述的方法,其中,所述逆向整形是利用隐式整形映射来执行的,所述隐式整形映射是用先前已经用一个或多个训练数据集中的训练图像训练的神经网络的权重和偏差来体现的。
14.如权利要求12所述的方法,其中,所述逆向整形是利用在经前向整形的图像的图像元数据部分中用信号传输的整形映射来执行的,所述图像元数据部分是作为图像元数据的一部分在经编码的视频信号中携带的。
15.一种装置,包括处理器并且被配置为执行如权利要求1至14所述的方法中的任一种方法。
16.一种非暂态计算机可读存储介质,具有存储于其上的用于根据权利要求1至14所述的方法中的任一种方法、利用一个或多个处理器来执行方法的计算机可执行指令。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163238529P | 2021-08-30 | 2021-08-30 | |
EP21193790.9 | 2021-08-30 | ||
US63/238,529 | 2021-08-30 | ||
PCT/US2022/039593 WO2023033991A1 (en) | 2021-08-30 | 2022-08-05 | Reshaper for learning-based image/video coding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117999784A true CN117999784A (zh) | 2024-05-07 |
Family
ID=90892980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280064217.1A Pending CN117999784A (zh) | 2021-08-30 | 2022-08-05 | 用于基于学习的图像/视频编解码的整形器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117999784A (zh) |
-
2022
- 2022-08-05 CN CN202280064217.1A patent/CN117999784A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7189230B2 (ja) | ニューラルネットワークマッピングを用いるhdr画像表現 | |
CN109416832B (zh) | 高效的基于直方图的亮度外观匹配 | |
EP3281409B1 (en) | In-loop block-based image reshaping in high dynamic range video coding | |
CN108885783B (zh) | 编码和解码可逆制作质量单层视频信号 | |
US9872033B2 (en) | Layered decomposition of chroma components in EDR video coding | |
US20230370646A1 (en) | Adaptive local reshaping for sdr-to-hdr up-conversion | |
EP4094442A1 (en) | Learned downsampling based cnn filter for image and video coding using learned downsampling feature | |
KR20150123810A (ko) | 이미지 동적 범위 변환 오퍼레이터를 선택하는 방법 및 디바이스 | |
WO2021228512A1 (en) | Global skip connection based cnn filter for image and video coding | |
KR20240122844A (ko) | 구성성분 기반 이미지 전처리를 위한 기계 학습 기술들 | |
US20230156343A1 (en) | Blind local reshaping in hdr imaging | |
WO2022266955A1 (zh) | 图像解码及处理方法、装置及设备 | |
US8971408B2 (en) | Piecewise cross color channel predictor | |
CN107925778A (zh) | 像素预处理和编码 | |
CN117999784A (zh) | 用于基于学习的图像/视频编解码的整形器 | |
CN110999300B (zh) | 用于图像/视频处理的单通道逆映射 | |
WO2023033991A1 (en) | Reshaper for learning-based image/video coding | |
Gommelet | Methods for improving the backward compatible High Dynamic Range compression | |
WO2023177863A1 (en) | Image optimization in mobile capture and editing applications | |
CN116508324A (zh) | 用于sdr到hdr上转换的自适应局部整形 | |
WO2023177873A2 (en) | Image optimization in mobile capture and editing applications |
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 |