本公开总体上涉及图像处理操作。更具体地,本公开的实施例涉及视频编解码器。
背景技术:
1、如本文所使用的,术语“动态范围(dr)”可以涉及人类视觉系统(hvs)感知图像中的强度范围(例如,光亮度、亮度)的能力,例如,从最暗的黑色(深色)到最亮的白色(高光)。从这个意义上说,dr与“参考场景的(scene-referred)”强度有关。dr还可以涉及显示设备充分或近似渲染特定阔度(breadth)的强度范围的能力。从这个意义上说,dr与“参考显示的(display-referred)”强度有关。除非在本文的描述中的任何一点明确指定特定的意义具有特定的意思,否则应该推断为所述术语可以在任一意义上例如可互换地使用。
2、如本文所使用的,术语“高动态范围(hdr)”涉及跨越人类视觉系统(hvs)的大约14至15个或更多数量级的dr阔度。实际上,相对于hdr,人类可以同时感知强度范围中的广泛阔度的dr可能会被稍微截短。如本文所使用的,术语“增强动态范围(edr)或视觉动态范围(vdr)”可以单独地或可互换地与这种dr相关:所述dr可在场景或图像内由包括眼运动的人类视觉系统(hvs)感知,允许场景或图像上的一些光适性变化。如本文所使用的,edr可以涉及跨越5个到6个数量级的dr。虽然相对于参考真实场景的hdr可能稍微窄一些,但edr表示宽dr阔度并且也可以被称为hdr。
3、实际上,图像包括颜色空间的一个或多个颜色分量(例如,亮度y以及色度cb和cr),其中每个颜色分量由每像素n位的精度表示(例如,n=8)。使用非线性光亮度编码(例如,伽马编码),其中n≤8的图像(例如,彩色24位jpeg图像)被视为标准动态范围的图像,而其中n>8的图像可被视为增强动态范围的图像。
4、给定显示器的参考电光传递函数(eotf)表征输入视频信号的颜色值(例如,光亮度)与由显示器产生的输出屏幕颜色值(例如,屏幕光亮度)之间的关系。例如,iturec.itu-r bt.1886,“reference electro-optical transfer function for flat paneldisplays used in hdtv studio production[hdtv工作室制作中使用的平板显示器的参考电光传递函数]”(2011年3月)限定了平板显示器的参考eotf,其内容通过引用以其全文并入本文。在给定了视频流的情况下,关于其eotf的信息可以作为(图像)元数据嵌入比特流中。本文术语“元数据”涉及作为编码比特流的一部分传输并且辅助解码器渲染经解码图像的任何辅助信息。这种元数据可以包括但不限于如本文描述的颜色空间或色域信息、参考显示器参数和辅助信号参数。
5、如本文所使用的术语“pq”是指感知光亮度幅度量化。人类视觉系统以极非线性方式响应于增加的光水平。人类观察刺激物的能力受到以下因素的影响:刺激物的光亮度、刺激物的大小、构成刺激物的空间频率以及在观看刺激物的特定时刻眼睛所适应的光亮度水平。在一些实施例中,感知量化器函数将线性输入灰度级映射到更好地匹配人类视觉系统中的对比度敏感度阈值的输出灰度级。在smpte st 2084:2014“high dynamic range eotfof mastering reference displays[母版制作参考显示器的高动态范围eotf]”(下文称为“smpte”)中描述了示例pq映射函数,其通过引用以其全文并入本文,其中,在给定固定刺激物大小的情况下,对于每个光亮度水平(例如,刺激水平等),根据最敏感的适应水平和最敏感的空间频率(根据hvs模型)来选择所述光亮度水平处的最小可见对比度步长。
6、支持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的示例。如本发明人在此所理解的,期望用于对可以用多种显示设备渲染的高质量视频内容数据进行编码的改进技术。
7、在本节中描述的方法是可以采用的方法,但不一定是先前已经设想到或采用过的方法。因此,除非另有指示,否则不应该认为本节中描述的任何方法仅凭其纳入本节就可被视为现有技术。类似地,除非另有指示,否则关于一种或多种方法所认定的问题不应该基于本节而认为在任何现有技术中被认定。
技术实现思路
1、如本文所描述的技术可以被实施为将用于表示视频数据的多个颜色空间通道中的感知敏感通道缠绕成几何形状或拓扑形状,如类圆形形状或环面形状,以便增加或增多感知敏感通道的码字的总有效数量。在一些操作场景中,感知敏感(或主导)通道的缠绕可以用张量积b样条(tpb)来建模,所述张量积b样条在表示或近似用于前向整形和后向整形的映射/函数方面提供了相对较高的灵活性。
2、示例整形操作在于2015年3月20日提交的美国临时专利申请序列号62/136,402(还公布于2018年1月18日,作为美国专利申请公开序列号2018/0020224)和于2019年5月9日提交的pct申请序列号pct/us2019/031620中进行了描述,所述申请的全部内容通过引用并入本文,就好像在本文充分阐述一样。前向和后向整形函数的构造的示例构造在g-m.su的于2020年4月21日提交的美国临时专利申请序列号63/013,063,“reshaping functionsfor hdr imaging with continuity and reversibility constraints[具有连续性和可逆性约束的hdr成像的整形函数]”以及g-m.su和h.kadu的于2020年4月22日提交的美国临时专利申请序列号63/013,807“iterative optimization of reshaping functions insingle-layer hdr image codec[单层hdr图像编解码器中整形函数的迭代优化]”以及于2021年4月21日提交的pct/us2021/028475中进行了描述,所述文献的内容通过引用整体并入本文,就好像在本文充分阐述一样。
3、在一些方法下,高动态范围(hdr)或宽色域(wcg)视频信号通常每通道使用相对较高的位数(例如每通道不少于12位等)以支持对hdr或wcg视频内容中所表示的丰富色彩和宽范围亮度级进行编码。
4、然而,许多终端用户视频设备可能配备有流行的视频压缩编解码器,所述编解码器仅能够编码/解码每通道相对低位数的视频信号,如8或10位视频信号。如本文所使用的,颜色通道的“每通道位”可以被称为颜色通道的“位深度”。
5、为了在这种有限位深度编解码器的基础设施上实现hdr视频内容的广泛或普遍分布,可以通过前向整形操作将hdr视频内容映射到这些编解码器实际支持的位深度。例如,视频编码器可以将输入16位hdr视频信号中的输入或源视频内容映射(或前向整形)为输出或经整形的8位视频信号,以便传输到接收方设备(recipient device),如8位编解码器的终端用户视频设备。经整形的8位视频信号的接收方设备可以将接收到的经整形的8位视频信号中的经后向整形的(或后向整形)视频内容进行转换,以生成或重构16位hdr视频内容供显示。由接收方设备生成的重构的16位hdr视频内容可以在显示设备上渲染以近似已经被视频编码器前向整形为8位视频信号的输入或源16位hdr视频内容。
6、在一些方法下,执行简单的位深度截断(truncation)来对输入或源16位hdr视频内容进行前向整形,在转换或前向整形为经整形的8位视频信号之后,源hdr视频内容中的细节可能会不可逆地丢失。因此,在这些方法下,从具有这种截断的经整形的8位视频信号生成的重构hdr视频内容可能倾向于显示带状或轮廓伪影。
7、在一些其他方法下,可以通过三维查找表(3d-lut)映射将较高位深度视频信号中表示的输入或源码字转换或前向整形为经整形的较低位深度视频信号中的经整形的码字。只要在整个低位深度域或颜色空间(例如,彩色显像管等)中仍有空间填充,就可以支持从高位深度域或颜色空间到低位深度域或颜色空间的任何有效颜色值。
8、通过码字交织或利用稀疏码字排列的3d-lut映射,同时在较低位深度域或颜色空间中更高效地打包或挤压码字,可能导致将高位深度域或颜色空间中的邻近颜色指派给低位深度域或颜色空间中完全不同的位置。作为结果,可能产生颜色失真和视觉伪影,特别是在如二次采样或滤波等图像处理被应用于低位深度整形域的操作场景中。这是由于图像处理带来的非局部效应,所述图像处理在低位深度整形域中创建一些新的码字值,这些码字值不与原始高位深度域或颜色空间中的邻近码字相对应。
9、形成鲜明对比的是,本文所描述的技术可以被实施为增加低位深度域(或颜色空间)中码字的可用性,同时保持较高位深度域(或颜色空间)与较低位深度域(或颜色空间)之间的邻域一致性,由此避免或减少在其他方法下会产生的经整形的视频内容中的带状伪影以及颜色失真。另外地、可选地或可替代地,可以用封闭形式的方程或解来实施映射过程,如本文所述的具有缠绕操作的前向整形和/或后向整形,由此增强重构视频中的可逆性和图像质量。
10、可以用环外训练阶段、环内预测阶段或这两个阶段的组合来实施本文所描述的一些或所有操作。在一些操作场景中,在训练阶段,可以使用训练数据用不同的操作参数来设计、得到或生成目标(整形)对象/形式。稍后在部署或预测阶段,可以从这些目标对象/形式中为输入或源较高位深度视频信号或其中的输入或源图像选择特定的目标对象/形式。特定选择的目标对象/形式可以在缠绕过程中应用以将输入或源较高位深度视频信号或者输入或源图像缠绕或整形为在整形域或颜色空间中表示的较低位深度视频信号或其中的经整形的图像。
11、在一些操作场景中,缠绕过程可以被建模为使用基于tpb的函数/映射来应用前向和后向整形函数/映射的图像处理操作。
12、可以经由迭代算法/方法/过程来获得或预先配置指定或定义缠绕过程中使用的基于tpb的函数/映射的一些或所有tpb系数的优化值以使用训练数据来最小化预测误差和/或增强预测质量。作为结果,一组前向和后向整形函数可以在训练阶段获得或存储在整形函数数据存储中,并且可以在稍后的部署或预测阶段被查找。
13、在部署或预测阶段,给定输入图像,可以执行(1)优化的预整形(pre-reshaping)操作(如对预定义或存储的整形函数应用缩放/偏移)以增强整形操作准确度,以及(2)优化的选择操作(如从整形函数数据存储中为输入图像选择特定的整形函数)以最小化预测误差。
14、在部署或预测阶段,可以在缠绕经整形的信号的整形域中对经整形的视频数据安全地执行图像处理操作。当在整形域中执行图像处理操作时,可以(例如,特别地,适当地等)处理在图像处理过程中创建的新码字。
15、本文描述的技术不限于使用avc 8位压缩对视频信号进行整形的操作场景。这些技术中的一些或全部可以用于通过将可感知的重要或主导通道/轴缠线绕到低位深度整形域或颜色空间中表示的3d空间中,来将各种不同的相对高位数(如12位、16位等)之一的高位深度视频信号压缩成较低位数(如8位、10位、12位等)的经整形的视频信号。在其他方法下,用于编码或表示经整形的信号中可感知的重要或主导通道/轴的可用码字可以增加到可用码字的2倍或4倍,并且通过自适应预缩放甚至增加更多。
16、在一些操作场景中,在本文所述的技术下生成的经整形的视频内容(其可为每通道8位、10位、12位)可以存储于基带信号容器中以供存储或在与sdi或hdmi电缆一起使用的基带信号中传输。
17、本文描述的示例实施例涉及对视频图像进行编码。输入域中的第一位深度的输入图像是从第一位深度的输入视频信号接收的。在整形域中,第一位深度高于第二位深度。对输入图像执行前向整形操作以生成整形域中第二位深度的经前向整形的图像。前向整形操作包括将输入图像中沿输入域的非缠绕轴(non-wrapped axis)的输入码字缠绕成经前向整形的图像中在整形域的缠绕轴(wrapped axis)上的经整形的码字。将包含从所述经前向整形的图像得到的图像数据的图像容器编码成所述第二位深度的输出视频信号。图像容器中的图像数据使得输出视频信号的接收方设备构造第三位深度的经后向整形的图像,用于在显示设备上渲染。第三位深度高于第二位深度。
18、本文描述的示例实施例涉及对视频图像进行解码。从视频信号中解码包含从整形域中的经前向整形的图像得到的图像数据的图像容器。源域中第一位深度的源图像已经被前向整形以生成比第一位深度低的第二位深度的经前向整形的图像。对从视频信号解码的图像数据应用后向整形操作以在目标域中生成经后向整形的图像。经后向整形的图像具有比第二位深度更高的第三位深度,后向整形操作包括将图像数据中沿整形域的缠绕轴的码字展开成经后向整形的图像中在目标域的非缠绕轴上的经后向整形的码字。在显示设备上渲染从经后向整形的图像生成的显示图像。
19、示例图像处理流水线
20、图1图示了用于执行缠绕整形操作的示例图像处理流水线。图像处理流水线中的一些或所有编码和/或解码操作可以由一个或多个具有音频和视频编解码器的计算设备来执行,如由atsc、dvb、dvd、蓝光和其他标准/规范定义的那些编解码器。图像处理流水线可以仅在解码器侧、仅在编码器侧或者编码器侧和解码器侧的组合上实施。
21、输入或源域或颜色空间中每通道的高位深度(例如,12位、16位等)的输入或源hdr图像102可以通过输入或源高位深度视频信号来接收。可以在图像处理流水线的末端生成输出或目标域或颜色空间中每通道高位深度的重构hdr图像110。重构hdr图像(110)可以但不一定仅限于具有与输入或源hdr图像(102)相同的高位深度。
22、在一些操作场景中,输入或源hdr图像(102)可以是用图像处理流水线接收和处理的连续输入或源hdr图像序列中的任何图像。一些或所有连续输入或源hdr图像可以通过(例如,无人工输入的自动、手动、有人工输入的自动等)视频编辑或变换操作、颜色分级操作等从以模拟或数字方式捕获的图像或计算机生成的图像中生成。连续输入或源hdr图像可以是与以下一项或多项相关的图像:电影发行、存档媒体节目、媒体节目库、视频录制/剪辑、媒体节目、电视节目、用户生成的视频内容等。
23、图1的输出或目标hdr图像(110)可以是从图像处理流水线生成的对应的连续输出或目标hdr图像序列中的对应的重构图像。连续输出或目标hdr图像描绘了与连续输入或源hdr图像中描绘的视觉语义内容相同的视觉语义内容。显示图像可以直接或间接(例如,通过另外的显示管理操作等)从连续输出或目标hdr图像中获得,并且在hdr显示器上渲染。示例hdr显示器可以包括但不限于与电视、移动设备、家庭影院等结合操作的图像显示器。
24、如图1所示,输入或源hdr图像(102)可以通过缠绕前向整形操作104被转换成整形域或颜色空间中每通道低位深度(例如,8位、10位、12位等)的经前向整形的edr图像106。在一些操作场景中,整形域或颜色空间中的经前向整形的edr图像(106)可以包含或封装在8位图像容器中,所述图像容器例如由多种视频编解码器支持。
25、可以特别选择或设计缠绕前向整形操作(104)来生成经前向整形的edr图像(106),使得在输出或目标域或颜色空间中的重构的或经后向整形的hdr图像(110)中引入最小或最少的失真。
26、重构的或经后向整形的hdr图像(110)可以通过在整形域或颜色空间中从每通道低位深度的解码的edr图像106’进行缠绕后向整形108来生成。可以参考输入或源hdr图像(102)来估计或测量在重构的或经后向整形的hdr图像(110)中由缠绕前向和后向整形操作(104和108)引入的失真。
27、在一些操作场景中,经解码edr图像(106’)可以与经前向整形的edr图像(106)相同,在将经前向整形的edr图像(106)编码成低位深度经整形的视频信号以及从低位深度经整形的视频信号解码经解码edr图像(106’)的过程中经受量化和/或编码误差。
28、在一些操作场景中,经前向整形的edr图像(106)通过截断场变换(truncatedfield transform)112变换成截断的整形域或新变换域(例如,以浮点精度等)中每通道低位深度的截断的经前向整形的edr图像114。对截断的整形域中的截断的经前向整形的edr图像(114)应用一个或多个图像处理操作116以生成截断的整形域中每通道低位深度的经处理的截断的经前向整形的edr图像114’。示例图像处理操作可以包括但不一定仅限于以下各项中的一项或多项:邻域信息的结合、邻域信息的线性或非线性组合、上采样、下采样、解块、低通滤波等等。经处理的截断的经前向整形的edr图像(114’)通过逆截断场变换112’逆变换成来自截断的整形域或新变换域(以浮点精度)的整形域中每通道低位深度的经处理的经前向整形的edr图像。
29、截断场变换(112)、逆截断场变换(112’)和图像处理操作(114)可以在编码器侧或解码器侧执行。作为示例而非限制,这些操作可以在编码器侧执行。
30、可以将整形域中每个通道低位深度的经处理的经前向整形的edr图像编码为低位深度的经整形的视频信号。经解码edr图像(106’)可以与整形域中每通道低位深度的经处理的经前向整形的edr图像相同,在将整形域中每通道低位深度的经处理的经前向整形的edr图像编码成低位深度经整形的视频信号以及从低位深度经整形的视频信号中解码经解码edr图像(106’)的过程中经受量化和/或编码误差。
31、为了将高位深度hdr图像(102)中的码字打包或挤压到8位图像容器中,可以用多种前向整形映射或函数以许多不同的方式执行缠绕前向整形操作(104)。
32、作为示例而非限制,缠绕前向整形操作(104)实施两阶段整形。第一阶段(其可以被称为次级整形)包括每通道预整形或缩放,这可以将有限的输入数据范围线性缩放为高位深度hdr图像(102)中的输入视频数据的每个颜色通道的完整数据范围。第二阶段(其可以被称为初级整形)包括使用基于tpb的前向整形函数进行跨颜色通道非线性前向整形。
33、同样,缠绕后向整形操作(108)包括(1)应用使用基于tpb的后向整形函数进行的跨颜色通道非线性后向整形,以及(2)应用每通道后整形或逆缩放,这可以将整个数据范围逆缩放到重构hdr图像(110)中重构视频数据的每个颜色通道的有限输入数据范围。
34、应用截断场变换(112)和逆截断场变换(112’)以确保从图像处理操作(114)和变换(112和112’)产生的经处理的经前向整形的edr图像中的码字保持在指定的码字值范围内,使得没有码字在8位缠绕整形域或颜色空间中的设计形式或形状之外。在没有这些变换(112和112’)的情况下,由图像处理操作(114)生成的码字可能变得超出范围,并且位于8位缠绕整形域或颜色空间中的设计形式或形状之外,由此最终在重构hdr图像(110)中生成可见的颜色伪影。
35、训练阶段的初级整形
36、整形操作可以以不同方式应用于各种操作场景中。在一些操作场景中,可以应用完全动态整形。在这些场景中,可以构建整形函数以在原始(例如,输入、源等)域到经整形的(例如,输出、目标等)域之间执行端到端整形。鉴于视频内容可以具有不同的特定颜色分布的事实,理论上可以针对特定视频内容选择该函数。该完全动态整形方法可能需要相对较高的计算复杂性和成本,因为用于得到整形函数的优化操作参数的端到端优化过程需要使用计算复杂且成本密集的算法来执行。另外,在该方法下可能出现数值不稳定性,从而导致在达到最优解或收敛解时缓慢或不收敛。
37、在一些操作场景中,可以应用两阶段整形以减轻与计算复杂性和成本以及数值稳定性相关的问题。该方法下的端到端整形过程包括初级整形和次级整形。
38、初级整形或第二阶段涉及相对繁重的计算,并且可以离线或作为环外操作执行或训练。次级整形或第一阶段是相对轻量级的,并且可以在线或作为环内操作执行。
39、如本文所使用的,环外操作可以是指在运行时不作为实时图像编码/解码操作的一部分执行,而是在离线训练过程中执行的操作。环内操作可以是指作为实时图像编码/解码操作或运行时在线部署过程的一部分执行的操作。
40、为了帮助在(在线)部署阶段提供最轻或最不复杂的计算,可以在初级整形或第二阶段离线执行一些或全部计算密集型任务,即获得用于整形的经训练操作系数并将经训练操作系数存储在整形系数数据存储中。
41、可以在部署阶段期间在次级整形或第一阶段中对图1的如102等接收输入图像执行较轻的细化操作。
42、在训练阶段,在处理输入图像之前,可以使用其中的训练数据或训练图像来训练初级整形函数,如基于tpb的前向和后向整形函数。在一些操作场景中,训练阶段可能被划分或分隔为两个部分:(1)参考映射创建和(2)tpb训练。
43、参考映射创建涉及两个控制变量集。两个控制变量集中的第一个涉及在缠绕整形域中支持的不同参考映射对象、形状或形式之间选择参考映射对象、形状或形式。
44、上述两个控制变量集中的第二个涉及给定参考映射对象、形状或形式的几何参数。几何参数确定给定参考映射对象、形状或形式的宽度、高度和其他属性。
45、本文所述的参考映射形状或形式是指缠绕整形域中的几何或拓扑对象、形状或形式。可以作为如本文所描述的参考映射对象、形状或形式的示例几何或拓扑对象、形状或形式包括但不一定限于以下各项中的任一项:圆环对象/形状/形式、环面对象/形状/形式、圆柱形状/形式、螺旋状对象/形状/形式、螺旋对象/形状/形式等等。
46、如图2a所图示,hdr图像中的码字(其可以是训练阶段的训练hdr图像,或者部署预测阶段的输入或源hdr图像,如图1中的102)可以在颜色立方体202中表示或分布。基于两个控制变量集的映射函数204可以用于将颜色立方体(202)中的码字映射或转换为来自经整形的对象列表206中的多个可用参考映射形状/形式的具有特定几何参数的特定参考映射形状/形式中的对应码字。可以在训练阶段创建、定义或设计经整形的对象列表(206)中的多个可用参考映射形状/形式。
47、两个控制变量集影响或至少部分地控制端到端前向和后向整形过程中的量化和去量化,并且因此影响或至少部分地控制前向和后向整形过程中的预测准确度或误差。缠绕整形域或颜色空间中支持的不同参考映射对象、形状或形式的两个控制变量集中的操作参数可以在训练阶段被训练并作为模板存储在操作参数数据集中。每个模板可以包括两个控制变量集中的操作参数的(如在训练过程中生成的)特定值的(例如,不同的等)组合。模板中特定值的组合可以在训练阶段特别选择,也可以在多个候选值组合或集合中进行选择以在训练阶段获得最佳的预测结果,并且在训练/测试数据中产生最小的误差。
48、在训练阶段,tpb训练可以用于为与两个控制变量集的不同值组合相对应的不同模板生成(例如,通用的、经训练的、基于tpb的等)整形函数。基于梯度的besa(后向误差减法信号调整)算法/方法可以作为tpb训练的一部分使用或执行以生成或获得特定的(例如,优化的、经训练的等)前向和后向整形系数,所述系数为与两个控制变量集的相应值组合相对应的每个模板定义或指定tpb整形函数。图2b图示了使用基于梯度的besa算法/方法进行tpb训练的示例,这将在后面进一步详细讨论。示例besa算法/方法可以在前面提到的美国临时专利申请序列号63/013,807中找到。
49、次级整形和初级整形
50、图2c图示了用于次级整形和初级整形的示例流程,其可以在部署或预测阶段部分或全部执行。如图所示,在部署或预测阶段接收高位深度域或颜色空间中的输入图像或源图像222(表示为“归一化高动态范围图像”)(如图1的102),用于将其缠绕整形为低位深度域或颜色空间中的经整形的对象/形状/形式或经整形的图像230(表示为“归一化的经前向整形的对象图像”)(如图1的106)。
51、在一些操作场景中,输入或源图像(222)中的输入或源码字被归一化到如[0,1]的特定码字范围内。类似地,经整形的图像(230)中的经整形的码字被归一化到如[0,1]的特定码字范围内。
52、在部署或预测阶段,输入或源hdr图像可能具有或可能不具有完全占据整个码字空间(如输入或源hdr域中的3d颜色立方体)的颜色或码字分布。可以实施或执行预整形(或次级整形)阶段以帮助充分利用码字空间中的可用容量,其中输入或源hdr图像(222)的码字可以被表示或托管。
53、如图2c所图示的,预整形(或次级整形)阶段包括框224,在所述框中,响应于确定输入图像或源图像在一个或多个通道中的每个通道中占据的有限范围而确定一个或多个最佳缩放因子/值。预整形(或次级整形)阶段进一步包括框226,在所述框中,可以分别用一个或多个最佳缩放因子/值将一个或多个有限范围中的码字从一个或多个有限范围(例如,线性地、非线性地等)预缩放或重新缩放到一个或多个通道中的一个或多个完整码字范围。
54、在框228中,可以通过至少部分地基于为输入或源hdr图像特别选择的预定义或经训练的tpb整形函数通过初级整形来对包括在框226中通过对输入或源图像(222)中的输入或源码字进行缩放而生成的经缩放码字的中间图像进行整形,从而在整形域或颜色空间中生成经整形的图像(230)。
55、在一些操作场景中,假设完全占用输入或源hdr域或颜色空间中的码字空间,则可以在训练阶段生成或获得具有两个控制变量集的特定值的对应模板的预定义或经训练的整形函数。可以对定义或指定预定义或经训练的整形函数的整形系数进行训练,以对整个码字空间中的码字执行整形或完全映射。
56、经整形的图像(230)(或由截断场变换、图像处理操作和/或逆截断场变换生成的经整形的图像(230)的处理版本)可以被编码为(经整形的)视频信号。视频信号的接收方设备可以对经整形的图像(230)或其处理后的版本进行解码并且对经整形的图像(230)或其处理后的版本执行后向整形和反向/逆向缩放,由此在高位深度输出或目标域或颜色空间中生成高位深度的重构图像。
57、图2d图示了在部署或预测阶段在给定输入或源图像(例如,图2c的222等)的情况下,用于确定最佳缩放因子或值238的示例流程。可以经由基于如均方误差(mse)等成本函数的(最佳值)搜索236生成或获得用于初级和次级整形的操作参数的特定(例如,优化的等)值。这些操作参数可以包括在tpb列表234中表示的用于初级整形的操作参数。这些操作参数可以进一步包括用于次级整形的操作参数,如缩放列表232中表示的缩放因子/值。可以经由搜索(236)生成或获得tpb列表(234)和缩放列表(232)中的操作参数的特定(例如,优化的等)值或设置(238)。
58、初级整形函数
59、初级整形中的前向和后向整形操作可以至少部分地通过数学函数和/或参数方程来执行。目标整形对象/形式/形状或与之相关的变换可以用数学方程表示。在一些情况下,硬编码的固定形式方程可能是可接受的,但在其他情况下则不然。为了帮助支持多个整形对象/形式/形状,本文描述的整形函数可以被设计为具有相对较大或最大的灵活性和自由度。
60、在一些操作场景中,定义或指定与特定目标整形对象/形式/形状相关的(多个)整形函数的参数、系数和/或其值可以被包括在视频信号中编码的编码比特流中。解码器侧的视频信号的接收方设备可以解码并使用这些参数、系数和/或值以建立或重建(多个)整形函数,如反向整形函数,而不使用硬编码的固定形式方程。
61、作为示例而非限制,本文描述的整形函数可以使用灵活的映射或函数构造来指定,如几何函数/变换、多变量多元回归(mmr)和基于张量积b样条(tpb)的变换函数/映射。基于mmr和tpb的整形函数或映射的系数或操作参数的特定(例如,优化的等)值或设置可以通过迭代算法生成或获得,稍后将进一步详细解释。
62、mmr操作的示例在美国专利号8,811,490中进行了描述,所述美国专利如本文充分阐述的那样以其全部内容通过引用并入本文。tpb操作的示例在2019年10月1日提交的发明名称为“tensor-product b-spline predictor[张量积b-样条预测器]”的美国临时申请序列号62/908,770(代理人案卷号60175-0417)中进行了描述,所述申请如本文充分阐述的那样以其全部内容通过引用并入本文。
63、几何变换(例如,用于将形状或形式(如颜色立方体)变换为参考整形形状或形式(如类圆柱形或形式、类圆环形状或形式、环面形状或形式等)之一)可以用于将输入域或颜色空间中的输入码字(如那些在颜色立方体中最佳缩放和表示的码字)变换为整形域内参考整形形状或形式中的经整形的码字。几何变换可以用如3d几何变换函数等函数表达式表示。
64、在一些操作场景中,本文所描述的几何变换可以包括可以经由跨通道(cross-channel)变换函数单个地或单独地执行的针对每个维度或通道的变换。将每通道变换表示为fx、fy和fz。几何变换中的每通道变换可以如下给出:
65、
66、
67、
68、在一些操作场景中,可以使用3×3矩阵形式来表示上述表达式(1)中的变换或变换函数。在这些操作场景中,由上述表达式(1)中的变换或变换函数表示的几何变换可以经由矩阵乘法来重写,并且将矩阵(例如,单列矩阵等)元素从输入域或颜色空间中的给定点变换或改变到输出域或颜色空间中的对应点,如下所示:
69、
70、或者如下所示使用不同的符号:
71、
72、其中,表达式(2-1)中左手侧(lhs)的1×3列可以表示输出域或颜色空间中的对应点,并且可以表示为表达式(2-2)中的表达式(2-1)中右手侧(rhs)的1×3列可以表示输入域或颜色空间中的给定点,并且可以表示为表达式(2-2)中的表达式(2-1)中右手侧(rhs)的3×3矩阵可以包括表示每通道变换的矩阵元素,并且可以表示为表达式(2-2)中的
73、矩阵的每个元素不一定局限于任何特定的函数形式。例如,这个元素可以是或可以不是多项式。在一些操作场景中,矩阵的每个元素可以以封闭形式或公式给出。
74、mmr变换(例如,用于将输入码字整形为经整形的码字)可以用表示为fmmr(.)的mmr映射或函数来表示。mmr映射或函数可以接受三个输入参数(x0,x1,x2),并且生成或输出单个值如下所示:
75、
76、mmr映射或函数可以具有预定义的格式,所述格式涉及输入变量/自变量的更高次幂以及使用一些或所有输入变量/自变量指定的预选交叉项。mmr映射或函数的非限制性示例形式可以是二阶的,如下所示:
77、fmmr(x0,x1,x2)=m0+m1x0+m2x1+m3x2+m4x0x1+m5x1x2+m6x0x2+m7x0x1x2+m8x02+m9x12+m10x22+m11x02x12+m12x12x22+m13x02x22+m14x02x12x22 (4)
78、其中,m0~m14表示要从训练数据中训练或学习的mmr系数,所述训练数据包括具有三元组(x0,x1,x2)和对应目标y的训练数据集。
79、对于在输入或源域或颜色空间中表示的三通道输入图像,可以指定或学习三个预测器以将输入或源域或颜色空间的三个通道中的码字整形为输出或目标域或颜色空间的三个目标通道中的经整形的码字。三个预测器中的每个预测器可以用于将输入或源域或颜色空间的三个通道中的码字整形为输出或目标域或颜色空间的三个通道中的对应目标通道中的经整形的码字。
80、tpb变换(例如,用于将输入码字整形为经整形的码字)可以用表示为ftpb(.)的tpb映射或函数来表示。tpb映射或函数(其表示相对先进和强大的跨通道预测函数)可以使用b样条作为基函数,并且接受三个输入参数(x0,x1,x2),并生成或输出单个值如下所示:
81、
82、tpb函数的内部结构沿着三个输入通道或维度可以由具有d0,d1和d2基函数的以下方程表示,如下所示:
83、
84、其中,t0,t1和t2表示结点指数;表示要从训练数据中生成或学习的tpb系数。
85、上述表达式(6)中的复合基函数可以作为三个通道或维度中的单独基函数的乘积给出,如下所示:
86、
87、tpb函数可以具有比mmr大得多的系数,从而提供额外的自由度和能力来对图像整形操作中的复杂映射进行建模。
88、初级整形中操作参数的优化值
89、图2b图示了用于在初级整形中生成操作参数的特定(例如,优化的等)值的示例流程。在一些操作场景中,如besa算法等迭代算法可以在tpb训练中实施,作为训练阶段的一部分以最小化由级联前向和后向整形或在初级整形中执行的预测操作产生的预测误差。级联前向和后向整形或预测操作可以应用tpb或mmr前向和后向整形函数。
90、作为示例而非限制,如图2b所图示的,在tpb训练中,给定用颜色立方体202表示的输入/原始域或颜色空间中的训练输入或源图像的输入值(x0,x1,x2),可以应用tpb前向整形函数212来获得或生成整形域或颜色空间中的经前向整形的图像(表示为“经前向整形的对象”)的对应经前向整形的值(y0,y1,y2)。另外,给定经前向整形的图像(“经前向整形的对象”)的对应经前向整形的值(y0,y1,y2),可以应用tpb后向整形函数214来获得或生成重构或输出/目标域或颜色空间中的重构或经后向整形的图像的对应重构或经后向整形的值构造或输出/目标域或颜色空间可以与输入/原始域或颜色空间相同。
91、tpb前向和后向整形函数中的操作参数的优化值可以经由优化问题的最小二乘解来获得或生成,所述优化问题最小化通过前向和后向整形操作生成的重构图像与训练输入或源图像之间的差异或预测误差。
92、在一些操作场景中,预测误差可以被计算为在一些其他操作场景中,预测误差可以被计算为其中,x表示包括来自输入/原始域或颜色空间的输入值(x0,x1,x2)的向量;表示包括输入/原始域或颜色空间中的重构值的向量;g(x)表示前向整形函数在由x表示的点处的空间梯度(例如,3×3矩阵等),这将在后面进一步详细讨论。添加空间梯度g(x)以使迭代算法比没有空间梯度时收敛得更快,因为在预测误差中添加空间梯度有助于在连续迭代中更新或加速经整形值的变化。
93、如图2b所图示的,对于每次迭代,迭代算法可以包括将框218(表示为“误差传播+梯度确定”)中计算的预测误差传播到整形域或颜色空间中的经整形值。例如,可以从经整形值中减去预测误差作为(y0-δ0,y1-δ1,y2-δ2)。然后,在训练阶段的tpb训练中,更新的经整形值(y0-δ0,y1-δ1,y2-δ2)被用作下一次迭代的输入,或者框218(“误差传播+梯度确定”)的下一次执行。
94、更特别地,在每次迭代中,更新的经整形值(y0-δ0,y1-δ1,y2-δ2)可以保持不变,并充当用于优化tpb前向整形函数(212)的操作参数的目标值。同时,输入/原始值(x0,x1,x2)可以继续充当用于优化tpb前向和后向整形函数(212和214)的总操作参数的目标值。
95、可以迭代前述操作,直到tpb前向和后向整形函数(212和214)的操作参数(或tpb系数)的优化值收敛,如直到两次连续迭代之间的总值变化度量小于最小值变化阈值。
96、在一些操作场景中,mmr整形函数可以用于如本文所描述的前向和后向整形操作。在这些操作场景中,可以生成或获得mmr前向和后向整形映射/函数的操作参数(或mmr系数)的优化值,类似于如图2b所图示的tpb前向和后向整形映射/函数的操作参数(或tpb系数)的优化值的生成或获得方式。
97、在训练阶段,与一个或多个相应的前向整形函数相对应的一个或多个参考映射可以用如由这些前向整形函数使用的控制变量集和/或tpb参数/系数和/或mmr参数/系数等操作参数的优化值来指定或定义。例如,通过如图2b所图示的迭代算法,可以生成或获得操作参数的一些或全部优化值。
98、一个或多个参考映射中的每个参考映射将分布在输入域或颜色空间(如颜色立方体)中的输入图像的码字映射到分布在经整形的对象或形式(如经圆柱整形的对象)中的码字。
99、表示为的未归一化空间梯度可以通过取参考映射(或前向整形函数)在由输入域或颜色空间的(例如,三个等)通道/维度中的输入值(x,y,z)表示的每个点处的导数来计算,如下所示:
100、
101、这些空间梯度可以在每个通道/维度中被归一化,如下所示:
102、
103、归一化空间梯度构成参考映射(或前向整形函数)的雅可比矩阵(jacobi matrix)(表示为或),如下所示:
104、
105、其中,f表示参考映射(或前向整形函数)的变换函数形式,如表达式(1)中的每通道变换映射(其中fx、fy和fz作为f的向量/矩阵分量)、表达式(3)中的mmr映射/函数或表达式(5)中的tpb映射/函数;表示相对于颜色通道x、y、z的偏倒数或差分。
106、归一化空间梯度可以使用向量和雅可比矩阵重写为函数形式,如下所示:
107、
108、在一些操作场景中,参考映(或前向整形函数)的空间梯度可以以数值计算或生成。对于整形域或颜色空间中的每个点(如从输入/原始域或颜色空间中的对应输入值所表示的对应点生成的经前向整形的值所表示的),可以识别(例如,最近的等)邻居或邻近点,并将其用于计算所述点与邻域之间的每个维度/通道中的一个或多个距离或距离向量。本文描述的距离向量可以归一化为一(1)。
109、在空间梯度不用于计算重构图像与导致使用前向和后向整形进行重构的输入图像之间的预测误差的操作场景中,前向整形和后向整形中的预测误差都可能发散或可能相对缓慢地收敛。
110、相反,在空间梯度用于计算重构图像与导致使用前向和后向整形进行重构的输入图像之间的预测误差的操作场景中,如图3a所图示的前向整形中的预测误差发散,因为预测误差相对高效地传播到经整形值。同时,如图3b所图示的,随着执行越来越多的迭代,后向整形中的预测误差收敛。
111、整形域中的目标/参考形状或形式
112、如基于mmr或tpb的前向和后向整形函数可以对(1)输入/原始高位深度域或颜色空间与(2)低位深度整形域或颜色空间之间的前向和后向映射过程进行建模。mmr或tpb整形函数可以以码字分布在整形域中的各种形状或形式与任何函数一起使用。
113、在本文所描述的技术下,前向和后向整形函数可以在如下两个输入下构造:(1)输入形状或形式,如表示输入/原始域或颜色空间的颜色立方体,以及(2)目标/参考(经整形的)形状或形式,如表示整形域的圆柱、圆环、环面、扭曲的环面等。
114、给定这两个输入,可以执行如图2b所图示的基于梯度的besa算法/方法等迭代算法/方法来获得(例如,mmr、tpb等)整形函数的操作参数(例如,mmr系数、tpb系数等)的优化值。
115、非缠绕轴可以指输入域中的输入视频中的单个通道或维度或多个通道或维度的(例如,线性等)组合,而缠绕轴可以指缠绕整形域中通过(多个)缠绕变换从非缠绕轴映射而来的轴,其具有比非缠绕轴中的可用码字更多的可用码字。在一些操作场景中,整形域的缠绕轴具有不同于非缠绕轴的几何形状;其中,缠绕轴上可用码字的总数大于非缠绕轴上可用码字的总数。在各种操作场景中,许多不同的目标/参考(经整形的)形状或形式可以用于缠绕整形。缠绕整形可以用于将输入/原始高位深度域或颜色空间中的感知上显著的通道或视觉上主导的颜色通道(例如,维度、轴、光亮度或亮度通道、颜色空间中的特定颜色通道、两个或更多个通道的线性或非线性组合等)改变为相同的视觉上主导的颜色通道,所述视觉上主导的颜色通道不一定表示为线性轴,而是用低位深度整形域中的参考形状或形式的非线性(或缠绕)轴来表示。可以在运行时静态地指定或动态地标识感知上显著的通道或视觉上主导的颜色通道。最初被表示为输入/原始域或颜色空间的具有较少码字的轴(如颜色立方体中的线性轴)的主导颜色通道被“绑扎(band)”或“缠绕”成参考形状或形式(如类圆形轴、圆环形状的最长轴、环面形状的最长轴等)的非线性或缠绕轴。
116、作为结果,与在其他方法下由线性轴表示的颜色通道相比,在参考形状或形式中表示的主导颜色通道可以在具有参考形状或形式的整形域中获得更多码字。通过将颜色立方体的表示主导颜色通道的线性轴绑扎或缠绕成参考形状或形式的非线性轴而获得的相对大量的码字(可能以减少非主导颜色轴的可用码字为代价)可以用于避免重构图像中观察者可感知的绑扎或假轮廓伪影。
117、如本文所述的整形域中的示例(例如,参考、经整形的等)形状或形式(其可以用于为输入图像中的感知上主导的通道提供具有相对大量的可用码字的非线性轴)可以包括但不一定仅限于以下各项中的任一项:完整圆环、部分圆环、完整圆柱、部分圆柱等等。
118、仅出于说明的目的,在输入/原始域和整形域中的每一个中,在输入视频信号和经整形视频信号中的每一个中编码的码字可以被归一化为如[0,1]的值范围。另外地、可选地或可替代地,图像容器可以用于存储(例如,最终的、中间的、输入的、经整形的等)图像内容,如使用非负整数类型的输入/原始域和整形域中的每一个中的码字。
119、可以使用变换函数来将输入形状或形式(如颜色立方体)中的输入码字映射为具有用于感知上主导的通道的非线性轴的参考形状或形式。虽然参考形状或形式可以在颜色立方体中被可视化,但是应当注意,经整形的码字被限制为驻留在参考形状或形式中,并且不允许位于颜色立方体的用于可视化目的的其他部分中的参考形状或形式之外。
120、仅出于说明的目的,归一化线性颜色坐标(例如,分别表示为x、z和y的r、g和b坐标等)可以用于如本文所描述的颜色立方体的坐标系中。应当注意,本文描述的一些或所有技术可以类似地应用于非线性rgb域或颜色空间以及线性或非线性非rgb域或颜色空间中的非线性rgb或非rgb坐标。
121、整形域中的圆环形状或形式
122、在一些操作场景中,可以使用变换函数来将输入颜色立方体中的一个或多个输入轴绑扎或缠绕成由可视化颜色立方体中的圆环形状表示的参考形状或形式(或整形域)。
123、例如,可以使用变换函数来将坐标为(x,y,z)的输入颜色立方体中的三个输入轴绑扎或缠绕成由坐标为的可视化颜色立方体中的完整圆环表示的参考形状或形式(或整形域),如下所示:
124、α=2πz (12-1)
125、
126、
127、
128、其中,z表示三个输入通道(x,y,z)中观看者可感知的主导通道或轴;α表示从观看者可感知的主导通道或轴转换的缠绕轴;和表示可视化空间或立方体中的三个轴,在所述可视化空间或立方体中可以可视化具有缠绕轴的缠绕形状或形式。
129、在上述表达式(12)中使用表示为w的参数来控制完整圆环的宽度。w的示例数据范围在[0,0.5]之间。如果w为0.5(对应于最宽的宽度),则完整圆环的内椭圆缩小为或变成点。另一方面,如果w为0(对应于最窄的宽度),则完整圆环缩小为或变成一维椭圆,如完整圆环的外椭圆。
130、图3c图示了在可视化颜色立方体中可视化的完整圆环的示例视图。如可以上述表达式(12)中看到的,主导通道z由如正弦或余弦函数等周期函数绑扎或缠绕。当由参数w控制的圆环的宽度非常薄并且非常接近边界时,在给定相同的8位图像容器的情况下,通过对主导通道z进行绑扎或缠绕而提供的可用码字接近整形域中的非绑扎或缠绕轴中的可用码字的4.44倍,如下所示:
131、
132、完整圆环形状可以用于完全占据由与图像容器相对应的可视化颜色立方体提供的最长方向(例如,投影为对角线方向等)上的整形域。然而,缺点是完整圆环首尾相连,并且因此没有误差容限。由于完整圆环的起点连接回完整圆环的终点,因此任何小的值变化或误差(例如由在整形域中执行的图像处理引起的)都可能显著改变重构图像中的值。输入图像中的黑色像素可能变为重构图像中的白色像素,这是由引入(例如,通过图像处理操作等)到整形域中的缠绕且连接的形状的小值变化或误差引起的。这类似于计算中的“上溢”和“下溢”问题。
133、在一些操作场景中,可以在用圆环形状表示的整形域中插入或使用间隙以帮助避免或改善这种上溢或下溢问题,并帮助容忍或更好地处理可能由接收输入图像与重构图像以逼近输入图像之间的端到端图像传递中所涉及的各种图像处理操作引入的小值变化或误差。
134、参数g可以被引入到变换函数中以控制插入到圆环形状中的间隙部分(gapportion)的间隙大小或范围。参数g可以具有值范围[0,1]中的值。如果g为1,则圆环形状缩小或变成平面。如果g为0,则圆环形状变成完整圆环。
135、表示输入颜色立方体(x,y,z)到具有间隙部分的呈圆环形状的整形域的映射的变换函数可以如下给出:
136、
137、
138、
139、
140、其中,z表示三个输入通道(x,y,z)中观看者可感知的主导通道或轴;α表示从观看者可感知的主导通道或轴转换的缠绕轴;和表示可视化空间或立方体中的三个轴,在所述可视化空间或立方体中可以可视化具有缠绕轴的缠绕形状或形式。
141、图3d图示了在可视化颜色立方体中可视化的部分圆环的示例视图。如可以上述表达式(14)中看到的,主导通道z由如正弦或余弦函数等周期函数绑扎或缠绕。另外,插入间隙以防止“上溢/下溢”。当由参数w控制的圆环的宽度非常薄并且非常接近边界时,在给定由间隙部分扣除的相同的8位图像容器的情况下,通过对主导通道z进行绑扎或缠绕而提供的可用码字接近整形域中的非绑扎或缠绕轴中的可用码字的4.44(1-g)倍,如下所示:
142、
143、对于上溢/下溢问题的另一种解决方案可以是在完整圆环中使用多个小间隙交错,而不是将单个相对较大的间隙插入到所述完整圆环中。
144、类似于具有单个间隙的圆环形状,可以引入参数w来控制具有多个间隙或间隙部分的圆环形状的宽度。w的值范围可以在[0,0.5]之间。如果w为0.5,则内椭圆将变成点。如果w为0,则圆环将变成椭圆,即所看到的圆环的外椭圆。另外,可以引入参数g来控制间隙部分的总间隙大小或范围,如放置在圆环形状的四个不同地方或位置的四个间隙部分。如果总间隙大小或范围g是0.2,则四个0.05的间隙或间隙部分被放置在圆环形状的四个不同的地方或位置。
145、表示输入颜色立方体(x,y,z)到具有圆环形状的四个间隙部分的整形域的映射的变换函数可以如下给出:
146、如果z≤0.25
147、
148、如果0.25<z≤0.5
149、
150、如果0.5<2≤0.75
151、
152、如果0.75<z≤1
153、
154、
155、
156、
157、其中,z表示三个输入通道(x,y,z)中观看者可感知的主导通道或轴;α表示从观看者可感知的主导通道或轴转换的缠绕轴;和表示可视化空间或立方体中的三个轴,在所述可视化空间或立方体中可以可视化具有缠绕轴的缠绕形状或形式。
158、图3e图示了在可视化颜色立方体中可视化的部分圆环的示例视图。如可以上述表达式(16)中看到的,主导通道z由如正弦或余弦函数等周期函数绑扎或缠绕。另外,插入四个间隙部分以防止“上溢/下溢”。当由参数w控制的圆环的宽度非常薄并且非常接近边界时,在给定由间隙部分扣除的相同的8位图像容器的情况下,通过对主导通道z进行绑扎或缠绕而提供的可用码字接近整形域中的非绑扎或缠绕轴中的可用码字的4.44(1-g)倍,如下所示:
159、
160、虽然圆环形状可能具有相对较高的理论最大可用码字,但是可能存在缺点。例如,对于越来越偏离缠绕轴的码字(例如,投影到可视化颜色立方体的对角线中),在由圆环形状表示的整形域中,量化误差可能会变得越来越大。由于总映射误差可能会变得相对较大,因此所有颜色值的平均性能可能会相对显著地受到圆环形状的影响。另外,当使用tpb或mmr整形函数来对前向和后向整形映射或操作进行建模时,圆环形状可能会遇到如数值不稳定性等数值问题。
161、整形域中的圆柱形状或形式
162、在一些操作场景中,为了帮助解决圆环形状或形式中的问题,可以使用变换函数来将输入颜色立方体中的一个或多个输入轴绑扎或缠绕成由可视化颜色立方体中的圆柱形状表示的参考形状或形式(或整形域)。
163、例如,可以使用变换函数来将坐标为(x,y,z)的输入颜色立方体中的三个输入轴绑扎或缠绕成由坐标为的可视化颜色立方体中的完整圆柱表示的参考形状或形式(或整形域),如下所示:
164、α=2πz (18-1)
165、
166、
167、
168、其中,z表示三个输入通道(x,y,z)中观看者可感知的主导通道或轴;α表示从观看者可感知的主导通道或轴转换的缠绕轴;和表示可视化空间或立方体中的三个轴,在所述可视化空间或立方体中可以可视化具有缠绕轴的缠绕形状或形式。
169、在上述表达式(18)中使用表示为w的参数来控制完整圆柱的宽度。w的示例数据范围在[0,0.5]之间。如果w为0.5(对应于最宽的宽度),则完整圆柱的内圆缩小为或变成点。另一方面,如果w为0(对应于最窄的宽度),则完整圆柱缩小为或变成一维圆,如完整圆柱的外圆。
170、图3f图示了在可视化颜色立方体中可视化的完整圆柱的示例视图。如可以上述表达式(18)中看到的,主导通道z由如正弦或余弦函数等周期函数绑扎或缠绕。当由参数w控制的圆柱的宽度非常薄并且非常接近边界时,在给定相同的8位图像容器的情况下,通过对主导通道z进行绑扎或缠绕而提供的可用码字接近整形域中的非绑扎或缠绕轴中的可用码字的π倍,如下所示:
171、
172、虽然完整圆柱形状可用于完全占据由与图像容器相对应的可视化颜色立方体提供的最长方向(例如,投影为对角线方向等)上的整形域,但是在完整圆环形状中遇到的相同问题(如上溢/下溢问题)也可能存在于完整圆柱形状中。
173、在一些操作场景中,可以在用圆柱形状表示的整形域中插入或使用间隙以帮助避免或改善这种上溢或下溢问题,并帮助容忍或更好地处理可能由接收输入图像与重构图像以逼近输入图像之间的端到端图像传递中所涉及的各种图像处理操作引入的小值变化或误差。
174、参数g可以被引入到变换函数中以控制插入到圆柱形状中的间隙部分的间隙大小或范围。参数g可以具有值范围[0,1]中的值。如果g为1,则圆柱形状缩小或变成平面。如果g为0,则圆柱形状变成完整圆柱。
175、表示输入颜色立方体(x,y,z)到具有间隙部分的呈圆柱形状的整形域的映射的变换函数可以如下给出:
176、
177、
178、
179、
180、其中,z表示三个输入通道(x,y,z)中观看者可感知的主导通道或轴;α表示从观看者可感知的主导通道或轴转换的缠绕轴;和表示可视化空间或立方体中的三个轴,在所述可视化空间或立方体中可以可视化具有缠绕轴的缠绕形状或形式。
181、图3g图示了在可视化颜色立方体中可视化的部分圆柱的示例视图。如可以上述表达式(20)中看到的,主导通道z由如正弦或余弦函数等周期函数绑扎或缠绕。另外,插入间隙以防止“上溢/下溢”。当由参数w控制的圆环的宽度非常薄并且非常接近边界时,在给定由间隙部分扣除的相同的8位图像容器的情况下,通过对主导通道z进行绑扎或缠绕而提供的可用码字接近整形域中的非绑扎或缠绕轴中的可用码字的π(1-g)倍,如下所示:
182、
183、本文讨论的不同示例形状的理论码字增加在下表1中列出(π=3.14159)。
184、表1
185、 形状 理论码字 完整圆环 4.44 有一个间隙的圆环 4.44(1-g) 有4个间隙的圆环 4.44(1-g) 完整圆柱 π 有一个间隙的圆柱 π(1-g)
186、如可以在上文看到的,完整圆环具有最好的码字增加,而具有一个间隙的圆柱具有最差的码字增加。另一方面,对于位于颜色立方体边界处或附近的码字,圆环形状遭受更多的颜色失真,因为这些码字被映射到比码字位于其他地方的椭圆更小的椭圆。相比之下,圆柱形状跨不同位置的码字提供了相对均匀的失真。另外,如所指出的,没有间隙的形状可能遭受上溢/下溢,并且因此导致颜色伪影。利用这些观察结果,在一些操作场景中,为了增加主导轴中码字的可用性,可以将具有间隙的圆环或圆柱形状用作整形域中的目标(例如,参考、经整形的等)形状或形式。特别地,在一些操作场景中,具有间隙的圆柱形状可以用于以相对均匀的失真来增加可用的码字。
187、应当注意,在各种实施例中,为了增加主导轴中码字的可用性,可以将除了圆柱或圆环形状或形式之外的其他形状或形式用作整形域中的目标(例如,参考、经整形的等)形状或形式。
188、构造内容相关的优化整形函数
189、构造整形函数的简单方法是使用静态映射,所述静态映射将表示输入/原始域的全输入3d颜色立方体映射成整形域中的预定义参考或经整形的形状或形式,而不考虑或依赖于输入/原始域中的内容相关颜色分布。这可能是执行整形的最快解决方案。
190、另一方面,如果在选择特定参考或经整形的形状或形式以及在选择与特定参考或经整形的形状或形式有关的特定操作参数时,考虑了如输入图像中的码字或颜色分布之类的实际内容信息,则可以进一步改善或减少预测误差。在该方法下生成的整形函数可以被称为动态整形函数。
191、如(1)完全动态方法/解决方案和(2)两阶段方法/解决方案等不同的方法可以被实施或应用来构造动态整形函数。
192、为了完全捕获或考虑输入视频信号的输入图像中的特定码字或颜色分布,可以在部署或预测阶段的运行时即时执行完全动态的解决方案。初级整形和次级整形两者可以组合在一起作为一个单次触发或处理单元,并用于为用于整形函数的操作参数(如缩放因子/值、mmr系数和/或tpb系数)生成特定值。虽然是内容相关的并且能够充分利用或考虑输入图像中的实际码字或颜色分布,但是完全动态解决方案可能不使用在训练阶段获得或生成的预构建整形函数,并且因此可能导致相对较高的计算成本和复杂性。
193、在完全动态解决方案中可以使用四种不同的方法/方式来在将关于码字或颜色的信息传递到整形函数优化过程之前对输入码字或颜色进行分组。
194、实施完全动态解决方案的四种方法/方式中的第一种可以被称为基于像素的方法,在所述方法中将输入图像中的所有像素或其码字(如图3h所图示的)视作tpb训练的输入(在运行时而不是在训练阶段)。由于该方法涉及在优化过程中使用所有的像素或码字,因此在用于以生成或获得操作参数的优化值(如前向和后向整形函数中的mmr或tpb系数)的优化过程中可能会产生相对大的存储空间和相对高的计算成本或复杂性。
195、实施完全动态解决方案的四种方法/方式中的第二种可以被称为网格化颜色聚类平均方法,在所述方法中输入图像中的像素或其码字首先被分割成多个(例如,均匀的、非均匀的等)非重叠分割的(例如,相对较小的等)立方体或聚类。可以计算每个立方体/聚类的平均值。如图3i所图示的,可以将立方体/聚类的单独计算的平均值视作用于生成或获得操作参数的优化值(如前向和后向整形函数中的mmr或tpb系数)的整形函数优化过程的输入。立方体/聚类可以是非空的、由数目高于最小数目阈值的多个像素值或码字占用的等等。该方法的示例性优点可以包括减少存储器使用并降低计算成本和复杂性。
196、实施完全动态解决方案的四种方法/方式中的第三种可以被称为网格化颜色聚类中心方法。如图3j所图示的,不是取每个立方体或聚类的平均值,而是可以将每个立方体或聚类的中心视作用于生成或获得操作参数的优化值(如前向和后向整形函数中的mmr或tpb系数)的整形函数优化过程的输入。如同在第二种方法的情况下,第三种方法中的立方体/聚类可以是非空的、由数目高于最小数目阈值的多个像素值或码字占用的等等。
197、实施完全动态解决方案的四种方法/方式中的第四种可以被称为网格化聚类增强中心方法。为了减轻或改善与相对较小的非空立方体或聚类总数相关的数值问题,可以选择非空聚类附近的空聚类。可以将非空聚类的中心以及非空聚类附近的空聚类(如图3k所图示的)视作用于生成或获得操作参数的优化值(如前向和后向整形函数中的mmr或tpb系数)的整形函数优化过程的输入。
198、图3l图示了表示输入/原始域或颜色空间的颜色立方体中的输入图像中的像素或其码字的示例分布。
199、图3m图示了从输入图像中的图3l的像素或码字的分布生成的示例点。在一些操作场景中,除了与非空立方体相对应的数据点之外,还可以使用网格化聚类增强中心方法为空的邻近立方体生成额外的(数据)点。从输入图像生成的这些点可以用作用于生成或获得操作参数的优化值(如输入图像的前向和后向整形函数中的mmr或tpb系数)的优化过程中的输入的一部分(例如,在tpb训练中等)。
200、图3n图示了通过缠绕整形从图3m的点变换的示例经前向变换点。在优化过程中,从通过缠绕整形从输入图像生成的点映射的这些经前向变换点可以与从输入图像生成的点一起用作输入的一部分(例如,在tpb训练中等)。
201、两阶段整形
202、为了避免在完全动态方法中可能遇到的数值稳定性问题,可以使用两阶段整形方法。如前所述,两阶段整形方法可以包括两个阶段/过程:(1)离线训练阶段/过程,以及(2)在线部署或预测阶段/过程。
203、初级整形(或第二阶段)导致相对较高的计算复杂性/成本。为了有助于在部署或预测阶段/过程中提供或引起最轻的计算,可以在训练阶段/过程中预先离线训练或生成如mmr或tpb整形系数等一些或全部操作参数的特定值,并将其作为操作参数数据集存储在部署或预测阶段/过程中相对较轻的次级整形(或第一阶段)可访问的操作参数数据存储中。次级整形(第一阶段)可以响应于在部署或预测阶段期间接收到实际输入图像而执行。
204、如前所述,在训练阶段,如基于tpb的前向和后向整形函数等初级整形函数可以分两部分进行训练:(1)参考映射创建和(2)tpb训练。
205、参考映射创建涉及两个控制变量集。第一控制变量集涉及在缠绕整形域中支持的不同参考映射形状或形式(如类圆环形状、圆柱形状等)中选择参考映射形状或形式。用于形状选择的第一控制变量集可以表示为s。
206、第二控制变量集涉及给定参考映射形状或形式的几何参数。几何参数确定给定参考映射形状或形式的宽度、高度和其他属性,如宽度w、间隙大小或范围g等。
207、这两个控制变量集影响前向和后向整形或映射操作期间的量化和/或去量化,从而影响重构输出图像的预测准确度。
208、可以在训练阶段创建、定义或设计经整形的对象列表(例如,图2a的206等)中的多个可用参考映射形状/形式。在两个控制变量集中表示的操作参数(如用于在经整形的对象列表(206)中支持的不同参考映射形状或形式的(s,w,g))可以在训练阶段中被训练并作为模板(或操作参数数据集)存储在操作参数数据存储中。
209、每个模板可以包括两个控制变量集(如(s,w,g))中的操作参数的(如在训练过程中生成的)特定值的(例如,不同的等)组合。模板中特定值的组合可以在训练阶段进行具体选择,也可以在多个候选值组合或集合中进行选择以在训练阶段实现最佳的预测结果,并且在训练/测试数据中产生最小的误差,例如使用基于梯度的besa算法/方法。
210、在部署或预测阶段,给定输入/原始图像,可以从多个模板中确定或选择特定模板以提供初级整形中操作参数的特定值。另外,在部署或预测阶段,可以在运行时确定或生成次级整形中的操作参数的特定值以最小化描绘与输入/原始图像相同的视觉语义内容的(最终)重构图像中的预测误差。
211、本文描述的次级整形可以包括对输入/原始图像中的输入码字应用以下线性缩放步骤:
212、步骤1:给定具有最小值(表示为vl)和最大值(表示为vh)的通道,在值范围[vl,vh]至[0,1]内缩放码字。
213、步骤2:给定缩放因子x,将值范围[0,1]缩放到
214、应当注意,本文描述的缩放因子x可以不同地缩放每个通道,因为每个这样的通道可以具有不同的值范围[vl,vh]。使用本文描述的(多个)缩放因子,可以缩放输入视频信号中的输入/原始图像以生成经缩放信号中的经缩放图像。然后,经缩放信号中的经缩放图像可以被馈送或提供给(例如,mmr、tpb等)初级整形。
215、测量重构图像与输入/原始图像之间的差异的预测误差可以来自如下两个抵消源。
216、首先,整形或映射操作(如用mmr或tpb算法/方法实施的操作)可能在整形域中特定参考或经整形的(前向)形状的边界处引入相对较高的重构误差。缩放因子/值越小,特定参考或经整形的(前向)形状的边界附近的边界点就越少。因此,减小缩放(因子)值可以减少这种类型的重构误差。
217、第二,当缩放因子值减小时,量化误差增加,因为来自输入/原始域的多个输入码字/值更可能被映射到整形域中的单个码字/值。因此,增加缩放因子值可以减少这种类型的误差。
218、优化的解决方案(例如,缩放因子的优化值等)可以取决于如何定义或指定用于测量预测误差的成本函数,并且取决于利用成本函数做出的假设。另外地、可选地或替代地,可以开发或使用不同的搜索算法来支持或实现不同的优化目标。
219、在一些操作场景中,可以为输入/源域或颜色空间的一个或多个通道中的每个通道定义单独的成本函数。
220、图2e图示了例如针对输入/源域或颜色空间中的主导通道的缩放因子值优化的示例流程。仅出于说明的目的,在缩放因子值优化中可以使用如缩放因子值的类凸函数等成本函数。应当注意的是,成本函数不必是纯凸函数或全局凸函数,而是可以单调增加或减少到转折点,并且随后朝着相反的趋势移动。相对快速的搜索算法可以与成本函数一起使用以搜索最佳解决方案或最佳缩放因子值。
221、该优化问题是找到优化的缩放因子值,该缩放因子值将与初级和次级整形中选择的或特定的模板一起使用以实现与输入/原始图像相比重构图像中的最小预测误差。
222、令缩放因子x的函数f(x)为成本函数,所述函数测量在缩放、前向整形、后向整形、反向/逆向缩放等的整个过程中产生的预测误差。
223、优化的缩放因子值xopt可以作为优化/最小化问题的解来生成或获得,所述优化/最小化问题最小化由成本函数f(x)测量的预测误差,如下所示:
224、
225、在一些操作场景中,黄金分割搜索算法可以应用于上述表达式(22)以确定成本或误差函数的最小值。
226、如图2e所图示的,框252包括执行初始化以定义搜索左边界x1=0和搜索右边界x4=1,并且计算或生成其对应的成本/误差值f1=f(x1)和f4=f(x4)。
227、可以选择或定义两个内点{x2}和{x3}。还计算或生成与内点{x2}和{x3}相对应的成本/误差值f2=f(x2)和f3=f(x3)。
228、可以在x1与x4之间选择或定义内点{x2}以满足以下关系:
229、
230、可以在x1与x4之间选择或定义内点{x3}以满足以下关系:
231、
232、x1与x4之间的这四个点的成本/误差值可以用于确定是否满足收敛/退出标准和/或在哪里可以找到满足收敛/退出标准的优化的缩放因子值。
233、在一些操作场景中,如果以下条件为真,则满足收敛/退出标准:
234、abs(f4-f1)<b,其中,b是正常数/阈值 (25)
235、响应于确定满足表达式(25)中的收敛/退出标准,从四个点{x1,x2,x3,x4}的成本/误差值中识别或选择最小成本/误差值。生成或获得与最小成本/误差值相对应的点作为优化解。过程流程结束或退出。
236、响应于确定不满足表达式(25)中的收敛/退出标准,在四个点{x1,x2,x3,x4}中确定其对应成本/误差值中的最小成本/误差(函数)值是属于点x1还是x2(或者是属于点x3还是x4)。
237、响应于确定其对应成本/误差值中的最小成本/误差(函数)值属于点x1或x2,过程流程进行到框254以进行下一次迭代。在下一次迭代中,三个点{x1,x2,x3}被重用;x2成为新的点x3;x3成为新的点x4。进一步地,框258包括基于以上表达式(23)生成新的点x2过程流程然后回到框252。
238、否则,响应于确定其对应成本/误差值中的最小成本/误差(函数)值属于点x3或x4,过程流程进行到框256以进行下一次迭代。在下一次迭代中,三个点{x2,x3,x4}被重用;x2成为新的点x1;x3成为新的点x2。进一步地,框260包括基于上述表达式(24)生成新的点x3。过程流程然后回到框252。
239、在一些操作场景中,可以为输入/源域或颜色空间的一个或多个通道定义跨颜色通道成本函数。
240、图2f图示了例如针对输入/源域或颜色空间中的三个颜色通道的缩放因子值优化的示例流程。成本函数(其可以是或可以不是凸函数)可以用于缩放因子值优化。
241、该优化问题是找到优化的缩放因子值,该缩放因子值将与初级和次级整形中选择的或特定的模板一起使用以实现与输入/原始图像相比重构图像中的最小预测误差。
242、令三个缩放因子x1,x2,x3的函数f(x1,x2,x3)为成本函数,所述函数测量在缩放、前向整形、后向整形、反向/逆向缩放等的整个过程中产生的预测误差。
243、优化的缩放因子值xopt可以作为优化/最小化问题的解来生成或获得,所述优化/最小化问题最小化由成本函数f(x1,x2,x3)测量的预测误差,如下所示:
244、
245、在一些操作场景中,nelder-mead算法可以应用于上述表达式(26)以确定成本或误差函数的最小值。
246、图2f的框262包括初始化分别由以下四个向量表示的缩放因子的四个初始点:和
247、框264包括根据其成本/误差(函数)值对这四个点进行分类或排序,并且按照成本/误差(函数)值的顺序将这些点重命名为{x1,x2,x3,x4},使得:
248、f(x4)≥f(x3)≥f(x2)≥f(x1) (27)
249、框266包括确定是否满足收敛/退出标准。在一些操作场景中,如果以下条件为真,则满足收敛/退出标准:
250、|f(x4)-f(x1)|<th (28)
251、其中,th表示预设或可动态配置的阈值,如100、50等。
252、响应于确定满足表达式(28)中的收敛/退出标准,从四个点{x1,x2,x3,x4}的成本/误差值中识别或选择最小成本/误差值。生成或获得与最小成本/误差值相对应的点作为优化解。过程流程结束或退出。
253、框268包括,响应于确定不满足表达式(28)中的收敛/退出标准,计算x1、x2和x3点的质心点。将该质心点表示为x0,如下所示:
254、
255、框270包括将x4的反射点计算为xr,如下所示:
256、xr=x0+(x0-x4) (30)
257、框272包括确定反射点xr是否优于(就预测误差而言)本示例中的第二差点(x3)但不是最佳点(x1),或者
258、f(x3)>f(xr)>f(x1) (31)
259、响应于确定反射点xr优于第二差点(x3),过程流程进行到框264,x4=xr。否则,过程流程进行到框274。
260、框274包括确定反射点误差值是否优于最佳点(x1),如下所示:
261、f(x1)>f(xr) (32)
262、框282包括响应于确定反射点误差值优于最佳点(x1),如下所示计算扩展点xe:
263、xe=x0+2(xr-x0) (33)
264、框284包括确定扩展点是否优于反射点,如下所示:
265、f(xr)>f(xe) (34)
266、响应于确定扩展点优于反射点,过程流程进行到框264,x4=xe。否则,响应于确定扩展点不优于反射点,过程流程进行到框264,x4=xr。
267、框276包括响应于确定反射点误差值不优于最佳点(x1),如下所示计算收缩点xc:
268、xc=x0+0.5(x4-x0) (35)
269、框278包括确定收缩点是否优于最差点,如下所示:
270、f(x4)>f(xc) (36)
271、响应于确定收缩点优于最差点,过程流程进行到框264,x4=xc。
272、框280包括响应于确定收缩点不优于最差点,通过替换除了最佳点(x1)之外的所有点来收缩(候选)点,如下所示:
273、xi=xi+0.5(xi-x1),对于i=2,3,4 (37)
274、然后,过程流程利用这些被替换的点进行到框264。
275、截断场变换
276、本文所描述的缠绕整形可以将输入图像从(例如,线性的、感知的等)高位深度域或颜色空间映射或整形到(例如,线性的、感知的等)较低位深度缠绕非线性整形域或颜色空间。然而,具有非线性的缠绕域可能使得难以或者甚至不可能执行(例如,通常使用的等)图像处理算法或者操作。为了解决这个问题,可以设计和使用截断场变换以将缠绕域转换成截断变换域,如可以执行这些图像处理算法或操作的线性域。在一些操作场景中,截断场变换允许输入域中的邻近码字值在缠绕之前保持为截断变换域中的邻近码字值。
277、对于不同的目标(例如,参考的、经整形的等)形状或形式,可以设计或使用不同的截断场变换以确保生成所选目标形状或形式之外的码字值的图像处理算法或操作可以保持在该范围内。
278、仅出于说明的目的,可以将截断场变换应用于作为用于缠绕整形的示例目标形状或形式的圆柱形状。应当注意,在各种其他实施例中,与截断场变换相关的一些或所有技术可以应用于除圆柱形状之外的其他目标形状或形式。
279、令b表示缠绕非线性整形域的位深度(例如,8位等)。令表示代表(例如,8位等)整形域中的点的坐标值。前向截断场变换(或简称为截断场变换)可以将该点(例如,以8位整数精度等)从整形域转换为作为的截断场域(truncated fielddomain)(例如,以32或64浮点或双精度等)。
280、如本文所使用的,截断场域通过截断场变换从具有缠绕轴的参考或经整形形状或形式变换,并通过逆截断场变换变换回参考或经整形形状或形式。可以如预期应用图像处理操作(如为线性或非线性域(没有缠绕轴)设计或实施的图像处理操作)以生成截断场域中的经处理的图像数据。另外地、可选地或可替换地,可以对截断场域中的经处理的图像数据执行裁剪操作以避免或防止根据图像处理操作生成的新图像数据值溢出参考或经整形的形状或通过逆截断场变换变换回的形状的边界。
281、可以首先计算公用变量,所述公用变量可以表示到圆柱形状的中心的距离,如下所示:
282、
283、根据和的具体位置或值,可以分别考虑以下八(8)种情况:
284、如果且且则
285、
286、
287、
288、如果且且则
289、
290、
291、
292、如果且且则
293、
294、
295、
296、如果且且则
297、
298、
299、
300、如果且且则
301、
302、
303、
304、如果且且则
305、
306、
307、
308、如果且且则
309、
310、
311、
312、如果且且则
313、
314、
315、
316、其中,acos()表示反余弦函数;asin()表示反正弦函数。上述表达式(38)至(46)中的截断场变换允许在缠绕成圆柱形状之前输入域中的邻近码字值保持为由截断场变换从圆柱形状转换的截断变换域中的邻近码字值。
317、在应用前向截断场变换以将缠绕整形域中的点转换为截断场域中的对应点之后,可以对截断场域中的对应点执行如滤波(例如,平均滤波等)等图像处理操作(例如,图1的116等)以生成截断场域中的经处理的点。在一些操作场景中,截断场域中的点可以由浮点或双精度的码字值来表示以避免或减少任何信息丢失。
318、在完成图像处理操作之后,可使用后向或逆截断场变换将经处理的点转换回缠绕整形域,如下所示:
319、
320、
321、
322、在一些操作场景中,图像处理操作在截断场域中生成的一些经处理的点可以与位于表示非线性缠绕域的目标形状或形式之外的点(其在用于托管非线性缠绕域或目标形状或形式的可视化颜色立方体中)相对应。可以裁剪目标形状或形式之外的这些点(在可视化颜色空间中)以确保这些点被约束或位于目标形状或形式内。
323、仅出于说明的目的,目标形状或形式与前述示例中的圆柱形状相同。给定w作为圆柱形状的圆柱宽度,并且b作为整形域的位深度,到圆柱形状的中心的距离可以如下计算:
324、
325、对于裁剪操作,可以考虑三种不同的情况,如下所示:
326、对于其中
327、
328、
329、
330、对于其中
331、
332、
333、
334、否则
335、
336、示例过程流程
337、图4a图示了根据实施例的示例过程流程。在一些实施例中,一个或多个计算设备或部件(例如,编码设备/模块、转码设备/模块、解码设备/模块、逆色调映射设备/模块、色调映射设备/模块、媒体设备/模块、反向映射生成和应用系统等)可以执行此过程流程。在框402中,图像处理系统从第一位深度的输入视频信号接收输入域中第一位深度的输入图像,所述第一位深度高于整形域中的第二位深度。
338、在框404中,图像处理系统对输入图像执行前向整形操作以生成整形域中第二位深度的经前向整形的图像,所述前向整形操作包括将输入图像中沿输入域的非缠绕轴的输入码字缠绕成经前向整形的图像中在整形域的缠绕轴上的经整形的码字。
339、在框406中,图像处理系统将包含从经前向整形的图像得到的图像数据的图像容器编码成第二位深度的输出视频信号,所述图像容器中的图像数据使得输出视频信号的接收方设备构造第三位深度的经后向整形的图像以在显示设备上渲染,第三位深度高于第二位深度。
340、在实施例中,图像处理系统进一步被配置成执行以下操作:对所述经前向整形的图像应用前向截断场变换以生成截断场域中的中间图像;对所述中间图像执行一个或多个图像处理操作以生成经处理的中间图像;对所述经处理的中间图像应用逆截断场变换以生成所述图像容器中的所述图像数据。
341、在实施例中,经处理的中间图像包括根据裁剪操作生成的一个或多个经裁剪的码字值以确保所述经处理的中间图像中的所有码字值都在表示所述整形域的目标空间形状内。
342、在实施例中,第二位深度表示以下各项之一:8位、10位、12位或低于所述第一位深度的另一个位数。
343、在实施例中,前向整形操作基于一组前向整形映射;至少部分地基于所述输入图像中的输入码字,从多组操作参数值中选择在所述一组前向整形映射中使用的一组操作参数值;所述多组操作参数值中的每组操作参数被优化以最小化多个训练图像聚类中的相应训练图像聚类的预测误差。
344、在实施例中,所述一组前向整形映射包括以下各项中的一项或多项:多变量多元回归(mmr)映射、张量积b样条(tpb)映射、前向整形查找表(flut)或其他类型的前向整形映射。
345、在实施例中,所述多组操作参数值中的每组操作参数是基于后向误差减法信号调整(besa)算法生成的。
346、在实施例中,用一个或多个缩放因子来缩放输入图像中的输入码字;使用基于以下各项中的一项或多项的搜索算法在运行时优化所述一个或多个缩放因子:黄金分割算法、nelder-mead算法或另一种搜索算法。
347、在实施例中,使用一组映射函数将表示所述输入域的输入整形映射为表示所述整形域的目标参考形状;至少部分地基于所述输入图像中输入码字的分布,从与多个不同候选整形域相对应的多个不同参考形状中选择所述目标参考形状。
348、在实施例中,多个不同参考形状包括:以下各项中的至少一项:完整几何形状、插入有单个间隙部分的完整几何形状、插入有多个间隙部分的完整几何形状、圆环形状、圆柱形状、环面(torus)形状、与立方体同形的(homomorphic to)另一种形状或与立方体不同形的(non-homomorphic to)另一种形状。
349、在实施例中,输入域表示以下各项之一:rgb颜色空间、ycbcr颜色空间、感知量化颜色空间、线性颜色空间或另一种颜色空间。
350、在实施例中,第一位深度表示以下各项之一:12位、16位或更多位或高于所述第二位深度的另一个位数。
351、图4b图示了根据实施例的示例过程流程。在一些实施例中,一个或多个计算设备或部件(例如,编码设备/模块、转码设备/模块、解码设备/模块、逆色调映射设备/模块、色调映射设备/模块、媒体设备/模块、反向映射生成和应用系统等)可以执行此过程流程。在框452中,图像处理系统从视频信号中解码包含从整形域中的经前向整形的图像得到的图像数据的图像容器,源域中第一位深度的源图像已经被前向整形以生成比所述第一位深度低的第二位深度的所述经前向整形的图像。
352、在框454中,图像处理系统对从所述视频信号解码的所述图像数据应用后向整形操作以生成目标域中的经后向整形的图像,所述经后向整形的图像具有比所述第二位深度高的第三位深度,所述后向整形操作包括将所述图像数据中沿所述整形域的缠绕轴的码字展开成所述经后向整形的图像中在所述目标域的非缠绕轴上的经后向整形的码字。
353、在框456中,图像处理系统在显示设备上渲染从所述经后向整形的图像生成的显示图像。
354、在实施例中,如显示设备、移动设备、机顶盒、多媒体设备等计算设备被配置用于执行前述方法中的任一种方法。在实施例中,一种装置包括处理器,并且被配置用于执行前述方法中的任一种方法。在实施例中,一种非暂态计算机可读存储介质存储有软件指令,所述软件指令当由一个或多个处理器执行时使得执行前述方法中的任一种方法。
355、在实施例中,一种计算设备包括一个或多个处理器以及一个或多个存储介质,所述一个或多个存储介质存储指令集,所述指令集当由所述一个或多个处理器执行时使得执行前述方法中的任一种方法。
356、注意,尽管本文讨论了单独的实施例,但是本文讨论的实施例和/或部分实施例的任何组合都可以组合以形成进一步实施例。
357、示例计算机系统实施方式
358、本发明的实施例可以利用计算机系统、以电子电路和部件来配置的系统、集成电路(ic)设备(如微控制器、现场可编程门阵列(fpga)或另一个可配置或可编程逻辑器件(pld)、离散时间或数字信号处理器(dsp)、专用ic(asic))和/或包括这种系统、设备或部件中的一个或多个的装置来实施。计算机和/或ic可以执行、控制或实施与对具有增强动态范围的图像的自适应感知量化有关的指令,如本文所描述的那些。计算机和/或ic可以计算与本文所描述的自适应感知量化过程有关的各种参数或值中的任何参数或值。图像和视频实施例可以以硬件、软件、固件及其各种组合来实施。
359、本发明的某些实施方式包括执行软件指令的计算机处理器,所述软件指令使处理器执行本公开的方法。例如,显示器、编码器、机顶盒、转码器等中的一个或多个处理器可以通过执行所述处理器可访问的程序存储器中的软件指令来实施与如上所述的对hdr图像的自适应感知量化有关的方法。还可以以程序产品的形式提供本发明的实施例。程序产品可以包括携带一组计算机可读信号的任何非暂态介质,所述一组计算机可读信号包括指令,所述指令当由数据处理器执行时,使数据处理器执行本发明的实施例的方法。根据本发明的实施例的程序产品可以采用各种形式中的任何一种。程序产品可以包括例如物理介质,如包括软盘、硬盘驱动器的磁性数据存储介质、包括cd rom、dvd的光学数据存储介质、包括rom、闪速ram的电子数据存储介质等。程序产品上的计算机可读信号可以可选地被压缩或加密。
360、在上面提到部件(例如,软件模块、处理器、组件、设备、电路等)的情况下,除非另有指明,否则对所述部件的引用(包括对“装置”的引用)都应该被解释为包括执行所描述部件的功能的任何部件为所述部件的等同物(例如,功能上等同的),包括在结构上不等同于执行在本发明的所图示示例实施例中的功能的所公开结构的部件。
361、根据一个实施例,本文描述的技术由一个或多个专用计算设备实施。专用计算设备可以是硬接线的,以用于执行这些技术,或者可以包括被持久地编程以执行这些技术的数字电子设备,如一个或多个专用集成电路(asic)或现场可编程门阵列(fpga),或者可以包括被编程为根据固件、存储器、其他存储设备或组合中的程序指令执行这些技术的一个或多个通用硬件处理器。这种专用计算设备也可以将定制的硬接线逻辑、asic或fpga与定制编程相结合来实现这些技术。专用计算设备可以是台式计算机系统、便携式计算机系统、手持式设备、联网设备、或合并硬接线和/或程序逻辑以实施技术的任何其他设备。
362、例如,图5是图示了可以在其上实施本发明的实施例的计算机系统500的框图。计算机系统500包括总线502或用于传送信息的其他通信机制、以及与总线502耦接以处理信息的硬件处理器504。硬件处理器504可以是例如通用微处理器。
363、计算机系统500还包括耦接到总线502以用于存储要由处理器504执行的信息和指令的主存储器506,比如随机存取存储器(ram)或其他动态存储设备。主存储器506还可以用于存储在执行要由处理器504执行的指令期间的临时变量或其他中间信息。在被存储于处理器504可访问的非暂态存储介质中时,这种指令使得计算机系统500变成被自定义为执行在指令中指定的操作的专用机器。
364、计算机系统500进一步包括只读存储器(rom)508或耦接到总线502以用于存储处理器504的静态信息和指令的其他静态存储设备。提供存储设备510(如磁盘或光盘),并将其耦接到总线502以用于存储信息和指令。
365、计算机系统500可以经由总线502耦接到如液晶显示器等显示器512上,以用于向计算机用户显示信息。包括字母数字键和其他键的输入设备514耦接到总线502,以用于将信息和命令选择传送到处理器504。另一种类型的用户输入设备是如鼠标、轨迹球或光标方向键等光标控件516,以用于将方向信息和命令选择传送到处理器504并且用于控制在显示器512上的光标移动。典型地,此输入设备具有在两条轴线(第一轴线(例如,x轴)和第二轴线(例如,y轴))上的两个自由度,允许设备在平面中指定位置。
366、计算机系统500可以使用自定义硬接线逻辑、一个或多个asic或fpga、固件和/或程序逻辑来实施本文描述的技术,这些自定义硬接线逻辑、一个或多个asic或fpga、固件和/或程序逻辑与计算机系统相结合使计算机系统500成为或编程为专用机器。根据一个实施例,响应于处理器504执行包含在主存储器506中的一个或多个指令的一个或多个序列,计算机系统500执行如本文所描述的技术。这种指令可以从如存储设备510等另一存储介质读取到主存储器506中。包含在主存储器506中的指令序列的执行使处理器504执行本文描述的过程步骤。在替代性实施例中,可以使用硬接线电路来代替软件指令或者与软件指令相结合。
367、如本文所使用的术语“存储介质”是指存储使机器以特定方式操作的数据和/或指令的任何非暂态介质。这种存储介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,比如存储设备510。易失性介质包括动态存储器,比如主存储器506。常见形式的存储介质包括例如软盘、软磁盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、cd-rom、任何其他光学数据存储介质、具有孔图案的任何物理介质、ram、prom和eprom、闪速eprom、nvram、任何其他存储器芯片或存储盒。
368、存储介质不同于传输介质但可以与传输介质结合使用。传输介质参与存储介质之间的信息传递。例如,传输介质包括同轴电缆、铜线和光纤,包括包含总线502的导线。传输介质还可以采用声波或光波的形式,比如在无线电波和红外数据通信期间生成的那些声波或光波。
369、各种形式的介质可以涉及将一个或多个指令的一个或多个序列载送到处理器504以供执行。例如,最初可以在远程计算机的磁盘或固态驱动器上载送指令。远程计算机可以将指令加载到其动态存储器中,并使用调制解调器通过电话线发送指令。计算机系统500本地的调制解调器可以接收电话线上的数据并使用红外发射器将数据转换成红外信号。红外检测器可以接收红外信号中载送的数据,并且适当的电路可以将数据放在总线502上。总线502将数据载送到主存储器506,处理器504从主存储器取得并执行指令。主存储器506接收的指令可以可选地在由处理器504执行之前或之后存储在存储设备510上。
370、计算机系统500还包括耦接到总线502的通信接口518。通信接口518提供耦接到网络链路520的双向数据通信,所述网络链路连接到本地网络522。例如,通信接口518可以是综合业务数字网(isdn)卡、电缆调制解调器、卫星调制解调器、或用于提供与对应类型电话线的数据通信连接的调制解调器。作为另一个示例,通信接口518可以是局域网(lan)卡,用于提供与兼容lan的数据通信连接。还可以实施无线链路。在任何这种实施方式中,通信接口518发送和接收载送表示各种类型信息的数字数据流的电信号、电磁信号或光信号。
371、网络链路520通常通过一个或多个网络向其他数据设备提供数据通信。例如,网络链路520可以提供通过本地网络522到主计算机524或到由因特网服务提供商(isp)526操作的数据设备的连接。isp 526进而通过现在通常称为“因特网”528的全球分组数据通信网络来提供数据通信服务。本地网络522和因特网528都使用载送数字数据流的电信号、电磁信号或光信号。通过各种网络的信号以及网络链路520上和通过通信接口518的信号(其将数字数据载送到计算机系统500和从计算机系统载送数字数据)是传输介质的示例形式。
372、计算机系统500可以通过(多个)网络、网络链路520和通信接口518发送消息和接收数据,包括程序代码。在因特网示例中,服务器530可以通过因特网528、isp 526、本地网络522和通信接口518传输应用程序的请求代码。
373、接收到的代码可以在被接收到时由处理器504执行和/或存储在存储设备510或其他非易失性存储装置中以供稍后执行。
374、等同物、扩展、替代方案和杂项
375、在前述说明书中,已经参考许多具体细节描述了本发明的实施例,这些细节可以根据实施方式而变化。因此,指明本发明的要求保护的实施例以及申请人认为的本发明的要求保护的实施例的唯一且排他性指示是根据本技术以具体形式发布的权利要求组,其中,这种权利要求发布包括任何后续校正。本文中针对这种权利要求中包含的术语明确阐述的任何定义应该支配如在权利要求中使用的这种术语的含义。因此,权利要求中未明确引用的限制、要素、性质、特征、优点或属性不应该以任何方式限制这种权利要求的范围。因此,应当从说明性而非限制性意义上看待本说明书和附图。
376、枚举的示例性实施例
377、本发明可以以本文描述的任何形式实施,包括但不限于以下描述了本发明实施例的一些部分的结构、特征和功能的枚举的示例实施例(eee)。
378、eee 1.一种方法,包括:
379、从第一位深度的输入视频信号接收输入域中所述第一位深度的输入图像,所述第一位深度高于整形域中的第二位深度;
380、对所述输入图像执行前向整形操作以生成所述整形域中所述第二位深度的经前向整形的图像,所述前向整形操作包括将所述输入图像中沿所述输入域的非缠绕轴的输入码字缠绕成所述经前向整形的图像中在所述整形域的缠绕轴上的经整形的码字;
381、将包含从所述经前向整形的图像得到的图像数据的图像容器编码成所述第二位深度的输出视频信号,所述图像容器中的所述图像数据使得所述输出视频信号的接收方设备构造第三位深度的经后向整形的图像以在显示设备上渲染,所述第三位深度高于所述第二位深度。
382、eee 2.如eee 1所述的方法,其中,所述整形域的所述缠绕轴具有不同于所述非缠绕轴的几何形状;其中,所述缠绕轴上可用码字的总数大于所述非缠绕轴上可用码字的总数。
383、eee 3.如eee 1或2所述的方法,进一步包括:
384、对所述经前向整形的图像应用前向截断场变换以生成截断场域中的中间图像;
385、对所述中间图像执行一个或多个图像处理操作以生成经处理的中间图像;
386、对所述经处理的中间图像应用逆截断场变换以生成所述图像容器中的所述图像数据。
387、eee 4.如eee 1至3所述的方法,所述经处理的中间图像包括根据裁剪操作生成的一个或多个经裁剪的码字值以确保所述经处理的中间图像中的所有码字值都在表示所述整形域的目标空间形状内。
388、eee 5.如eee 1至4中任一项所述的方法,其中,所述第二位深度表示以下各项之一:8位、10位、12位或低于所述第一位深度的另一个位数。
389、eee 6.如eee 1至5中任一项所述的方法,其中,所述前向整形操作基于一组前向整形映射;其中,至少部分地基于所述输入图像中的输入码字,从多组操作参数值中选择在所述一组前向整形映射中使用的一组操作参数值;其中,所述多组操作参数值中的每组操作参数被优化以最小化多个训练图像聚类中的相应训练图像聚类的预测误差。
390、eee 7.如eee 6所述的方法,其中,所述一组前向整形映射包括以下各项中的一项或多项:多变量多元回归(mmr)映射、张量积b样条(tpb)映射、前向整形查找表(flut)或其他类型的前向整形映射。
391、eee 8.如eee 6或7所述的方法,其中,所述多组操作参数值中的每组操作参数是基于后向误差减法信号调整(besa)算法生成的。
392、eee 9.如eee 8所述的方法,其中,至少部分地基于(a)输入值与重构值之间的差和(b)作为用于生成所述重构值的跨通道前向整形函数的偏倒数得到的空间梯度,来计算在所述besa算法中传播的预测误差。
393、eee 10.如eee 1至9中任一项所述的方法,其中,用一个或多个缩放因子来缩放所述输入图像中的输入码字;其中,使用基于以下各项中的一项或多项的搜索算法在运行时优化所述一个或多个缩放因子:黄金分割算法、nelder-mead算法或另一种搜索算法。
394、eee 11.如eee 1至10中任一项所述的方法,其中,使用一组映射函数将表示所述输入域的输入整形映射为表示所述整形域的目标参考形状;其中,至少部分地基于所述输入图像中输入码字的分布,从与多个不同候选整形域相对应的多个不同参考形状中选择所述目标参考形状。
395、eee 12.如eee 11所述的方法,其中,所述多个不同参考形状包括:以下各项中的至少一项:完整几何形状、插入有单个间隙部分的完整几何形状、插入有多个间隙部分的完整几何形状、圆环形状、圆柱形状、环面形状、与立方体同形的另一种形状或与立方体不同形的另一种形状。
396、eee 13.如eee 1至12中任一项所述的方法,其中,所述输入域表示以下各项之一:rgb颜色空间、ycbcr颜色空间、感知量化颜色空间、线性颜色空间或另一种颜色空间。
397、eee 14.如eee 1至13中任一项所述的方法,其中,所述第一位深度表示以下各项之一:12位、16位或更多位或高于所述第二位深度的另一个位数。
398、eee 15.如eee 1至14中任一项所述的方法,其中,所述前向整形操作表示初级整形操作;所述方法进一步包括:对所述输入图像执行次级整形操作,以将有限的输入数据范围线性缩放为每个颜色通道的完整数据范围,其中,所述次级整形操作包括以下各项中的一项或多项:每通道预整形或缩放。
399、eee 16.如eee 15所述的方法,其中,基于所述初级整形操作和所述次级整形操作中使用的操作参数生成图像元数据;其中,所述图像元数据在所述第二位深度的所述输出视频信号中被提供给所述接收方设备。
400、eee 17.如eee 1至16中任一项所述的方法,其中,在执行所述初级整形操作的第二阶段之前的第一阶段中执行所述次级整形操作。
401、eee 18.如eee 1至17中任一项所述的方法,其中,所述次级整形操作和所述初级整形操作的组合在运行时在单个组合阶段中执行。
402、eee 19.如eee 1至18中任一项所述的方法,其中,所述整形域由环面形状表示。
403、eee 20.如eee 1至19中任一项所述的方法,其中,所述整形域由圆柱形状表示。
404、eee 21.一种方法,包括:
405、从视频信号中解码包含从整形域中的经前向整形的图像得到的图像数据的图像容器,源域中第一位深度的源图像已经被前向整形以生成比所述第一位深度低的第二位深度的所述经前向整形的图像;
406、对从所述视频信号解码的所述图像数据应用后向整形操作以生成目标域中的经后向整形的图像,所述经后向整形的图像具有比所述第二位深度高的第三位深度,所述后向整形操作包括将所述图像数据中沿所述整形域的缠绕轴的码字展开成所述经后向整形的图像中在所述目标域的非缠绕轴上的经后向整形的码字;
407、在显示设备上渲染从所述经后向整形的图像生成的显示图像。
408、eee 22.一种装置,包括处理器并且被配置为执行如eee 1至21中所述的任一种方法。
409、eee 23.一种非暂态计算机可读存储介质,具有存储于其上的计算机可执行指令,以用于利用一个或多个处理器来执行根据eee 1至21中所述的方法中的任一种的方法。