多范围HDR视频编码
文献发布时间:2023-06-19 10:32:14
技术领域
本发明涉及用于对高动态范围图像进行编码的方法和装置,并且特别涉及对视频进行编码的方法和装置,该视频是图像的时间序列,其能够根据诸如MPEG-HEVC之类的压缩技术(例如,电视广播)(特别是通过使用第二动态范围的(一幅或多幅)图像(用于与解码器通信))来进行压缩以表示第一动态范围的(一幅或多幅)(主)图像,该动态范围变化涉及通过应用要与(一幅或多幅)第二动态范围图像(通常作为元数据)共同通信的功能来改变图像像素亮度(例如,从第一归一化为1.0值到第二归一化为1.0值)。
背景技术
大约5年前,高动态范围视频编码的新颖技术被推向了世界(例如产生了特殊的HDR蓝光光盘,其需要在1000尼特的UltraHD Premium电视上进行观看)。
这种新颖的图像处理技术方法在技术上的许多方面与旧版视频编码形成了鲜明对比,以前的50年一直根据旧版视频编码(如今被称为标准动态范围(SDR)视频编码(又被称为低动态范围视频编码;LDR))对所有视频进行编码。为了表示图像,需要像素颜色的数字编码表示,并且Rec.709的SDR的亮度编码定义(又被称为光电转换函数OETF)只能对大约1000:1的亮度动态范围进行编码(具有8或10位的亮度词),这是因为其近似平方根函数形状(亮度:Y=sqrt(亮度L))。然而,这非常适合于对要在那个时代的显示器上显示的图像进行编码,那个时代的显示器的典型的(当时所有显示器的)亮度渲染能力在大约0.1尼特到100尼特之间,后者是所谓的峰值明亮度(PB),又被称为最大亮度。
看到Rec.709亮度代码定义函数无法以数学方式表示HDR场景图像亮度的巨大范围(例如,期望的图像编码峰值明亮度PB_C在0.001尼特到10000尼特之间),HDR研究人员最初通过设计新的HDR代码分配来解决这一问题,该HDR代码分配在形状上更加趋于对数,因此可以编码更多的亮度(由于视觉系统需要的准确度较低(即,与较暗区域相比,较亮区域需要较少的代码值),因此人们能够理解:例如从2^8=256中分配了50个代码(其中,^表示幂函数),针对每个十进制的亮度,已经可以编码100000:1的动态范围了)。通过使用SMPTE2084标准化的所谓感知量化器(PQ)函数,这是对HDR图像颜色进行编码的简单“自然”的方式。
可能天真地认为这就是对HDR图像进行编码和解码的全部内容,但是事情远没有那么简单,因此出现了很多其他编码方法,特别是本申请人先前开发的HDR视频编码和处理方法。
为了对HDR视频编码中涉及和需要的内容有一个适当的了解,图1总结了一些重要方面。
假设左侧具有所有可能的(PQ解码的)HDR亮度的亮度范围,最高PB_C=5000尼特。假设有那么一刻要使该图像看起来像期望状态那样完美,在计算机上创建我们将称为主HDR图像的所有目标像素(下面利用图2来说明如何从例如广播相机开始)。自然HDR编解码器(其仅提供编码高达10000尼特的亮度的技术,即,在该示例中也期望达到5000尼特)的问题是,如果客户还拥有昂贵的5000尼特的显示器峰值明亮度(PB_D)显示器(如果他在标准的观看环境条件下观看图像),他可以按照创作者(例如,电影导演)的意图完美低观看视频,但是如果他的显示器不同(例如PB_D=750尼特或PB_D=100尼特),则存在尚未解决且也不简单的问题:如何在750尼特PB_D显示器上显示5000尼特PB_C图像?似乎对此没有优雅的简单解决方案。应用准确的亮度显示将完美显示亮度高达750尼特的所有目标,但是将所有较亮的目标像素裁剪到相同的PB_D=750尼特会使很多图像目标消失在白色斑点区中,这样肯定不好看。有人可能会认为内容的线性缩放是一种解决方案(将所有HDR亮度除以5000/750,这就是所谓的“显示器上的白色上白色内容映射方法”),但是较暗目标(例如,在具有HDR亮度(0.05尼特)的示例场景图像ImSCN3中的洞穴的暗区中的人,这对于较低动态范围显示器可能已经太低了)在750尼特显示屏上却得到不可感知的深色亮度(0.05*750/5000=0.0075尼特)。
图1还教导了不同原型HDR场景的不同HDR图像关于如何将各种(潜在地沿着HDR亮度范围DR_2的“任意”亮度位置上的)HDR亮度压缩到小得多的例如LDR亮度动态范围DR_1中可能具有完全不同的要求。
例如当在illumination_contrast*object_reflection_contrast上同时观看室内目标和室外目标时,现实世界的亮度范围可以=(1:100)*(1:100),但是表示场景的图像中的亮度不需要也通常不会与原始场景的亮度完全相同,对于良好的HDR表示图像,人们可能希望像素亮度的范围可能高达至少1000尼特,并且从至少0.1尼特或更小开始(因此DR_im>=10000:1)。此外,相比于物理动态范围本身,良好的HDR图像可以与沿着亮度范围的各个目标亮度的智能分配更相关(更不用说它是引导比特量的错误理解了,对于非线性亮度代码定义而言并非如此,并且一个10位亮度图像也可能和SDR图像一样是某种HDR图像)。
图1示出了未来的HDR系统(例如连接到1000尼特PB_D显示器)可能需要能够正确处理(即,通过对图像中的所有目标/像素显示适当亮度)的许多可能的HDR场景的几个原型说明性示例。
例如,ImSCN1是来自西方电影的晴天室外图像(其大部分区非常明亮,比平均水平更明亮,平均水平是阴天图像,在理想情况下,这些区应比在100尼特显示器上渲染得更明亮,以便更多地提供晴天外观,而不是雨天外观,晴天外观的平均亮度例如为400尼特)。另一方面,ImSCN2是非常不同的图像,即,夜间图像,其中,深色区域(例如它们具有良好的可见性)占主导地位,但是使它成为HDR图像而不是简单的深色SDR图像的原因在于,在路灯下面的斑点中,可能在房屋的采光窗户中,也有明亮的像素,甚至在路灯的灯表面上也有非常明亮的像素(例如,3000尼特)。
是什么使ImSCN1图像变得晴朗而使ImSCN2变得暗淡?不一定是相对亮度,至少在SDR范例中(两幅图像的像素亮度可能都在0.1尼特到100尼特之间,但是这样的亮度的空间分布(特别是直方图)可能不同)不是这样。使HDR图像渲染与仅在几年前结束的SDR时代的情况不同的是,SDR的动态范围如此有限(大约PB=100尼特,最小暗色水平MB约为0.1到1尼特),以至于在SDR中几乎只能示出目标的固有反射率(反射率介于针对良好白色的90%到针对良好黑色的1%之间)。这对于在统一的技术控制的照明下识别目标(具有一定量的反射明亮度,当然还有其色度)非常有益,但是对照明本身在自然场景中能够产生的美丽变化却无济于事,并且对可能对观看者产生的影响也无济于事(阳光从窗户射出来,或者等离子从女巫身上散发出来)。如果显示器允许的话,那么图像编码和处理技术也应如此,那么在林间小道上,人们会真正看到阳光穿过树林,也就是说,与其说像是SDR显示器上的那种略带黄色的印象,不如说是当人从阴影走到阳光下时可以看到鲜艳多彩的阳光照射的衣服。至少在PB_D允许的范围内,火灾和爆炸也应具有最优的视觉效果。
在SDR中,可以使夜间图像比正常照亮的图像暗一些,这在亮度直方图中可以感觉到,但是不要暗太多,否则它会将图像渲染得太暗太丑(甚至可能在很大程度上看不见)(这是为什么引入该约定以使夜间图像仍相对明亮(但为蓝色)的原因)。而且,在100尼特的电视或100尼特的编码下,根本没有空间可以容纳过分明亮的目标。因此,人们必须与照明无关地示出目标,并且无法同时忠实地示出场景中可能发生的所有的有时具有很高对比度的照明。实际上,这意味着必须以与阴沉的雨天场景甚至夜间场景大致相同的显示亮度(0-100尼特)来渲染高亮度的晴天场景。
在现实生活中,人类的视觉也会适应可获得的光量,但并不是那么强大(现实生活中的大多数人的确会意识到它正在变暗,或者他们处于更黑暗或相当明亮的环境中)。并且不应忘记,示出图像的电视不是对具有适应能力的眼睛的模拟,而是对现实环境的模拟,只要它具有观看环境和其他技术限制即可。因此,人们希望显示具有所有壮观的局部和临时照明效果的图像,如果最终观看者具有可用的HDR显示器,则能够将上述效果艺术化地设计到图像中,以获得更加逼真的渲染图像。对于在黑暗房间中的光剑来说,适当的亮度到底是多少,我们将留给创建(一个或多个)主分级的颜色分级器来决定(为简单教导起见,我们在本专利中假定,各种动态范围图像(至少有两个完全不同的动态范围)是由人类分级者创建的,但是类似地,图像也能够由自动软件创建),并且本申请将专注于创建和处理这样的图像所需的技术部件,其针对的是可能具有不同需求的各种市场参与者。
在图1的左轴上是目标的亮度,就像人们希望在(例如)5000尼特PB_C主HDR分级中看到的那样,它们能够被直接显示在5000尼特PB_D(参考)显示器上(即,图像分级器作图像,假设家里的典型的高质量HDR电视将具有5000尼特PB_D,并且他实际上可能坐在这样的家庭观看房间的代表位置处并在这样的分级显示器上分级)。如果不仅要传达捕获的原始HDR场景的近似错觉,而且还要传达牛仔在明亮的阳光环境中的真实感觉,则必须指定并足够明亮(例如,平均500尼特左右)地渲染这些像素亮度。
对于夜景,人们主要希望获得较暗的亮度,但是摩托车的主要特征应易于辨认,即,不要太暗(例如,5尼特左右),并且同时可能存在亮度很高的像素,例如,路灯,例如在5000尼特显示器上为3000尼特左右,或者在其他任何HDR显示器上(例如1000尼特PB_D)的峰值明亮度附近。第三示例ImSCN3示出了现在在HDR显示器上还可能实现的功能:能够同时渲染很多(很明显比仅一盏灯更相关,即,具有很多区域内的细节,如日光照射的树木)非常明亮的像素和很多非常暗的重要像素。ImSCN3可以被看作是原型,相对难以处理HDR场景图像,它是黑暗的洞穴,上面有能够看到外面的明媚阳光的开口。对于该场景,可能想要使像树木这样的阳光照射的目标的明亮度比希望仅呈现明亮的阳光风景的印象的明亮度要小一些,例如400尼特左右,这应与洞穴内部的相当深色的特征更加协调。颜色分级器可能希望最优地协调所有目标的亮度(已经在PB_HDR=5000尼特
创建了该主HDR图像后,一个艺术性的问题(甚至在将其以公式表达以启用技术之前)就是该图像应如何重新分级为具有不同动态范围的图像,例如,至少100尼特PB_C旧版SDR图像。
当给出亮度之间的关系时,它有助于理解。因此,我们将在本专利中方便使用。实际上,从技术上讲,亮度将经由亮度代码分配函数(又被称为光电转换函数(OETF))被编码为亮度(lumas),因此也能够制定亮度之间的所有关系,例如,用于根据输入L_in来计算输出亮度L_out的函数,也可以用等效亮度之间的关系。
也许有些混乱,还能够以归一化(即,最大归一化亮度等于1.0)的方式来制定亮度,并且定义对这样的归一化亮度的所有动作。这样做的优点是(假设两种图像像素颜色都在同一组RGB原色中进行定义),归一化HDR色域与LDR色域完全重叠,因此能够示出该单个归一化色域的亮度变化。显然,应被显示在与具有PB_C=5000的HDR亮度的亮度范围中定义的HDR亮度完全相同的绝对亮度处的归一化的LDR亮度的相对位置将具有不同的相对高度(即,能够在这样的色域表示中示出在创建对应的LDR图像像素亮度时需要的特定HDR像素亮度的亮度映射,作为在该归一化色域中的高度的相对/归一化变化)。绝对亮度与相对亮度之间的关系很简单:L_norm=L_abs/PB_C,其中,PB_C是编码的任何最大亮度,例如,对于HDR编码为5000尼特,而根据标准协议,对于SDR为100尼特。
从图1中学习的最后一件很重要的事(因为所有技术都必须相应地表现)是,取决于正在处理的是何种HDR场景中的哪种类型的目标(即,其像素亮度),能够有不同的关于如何对所述(一个或多个)像素亮度进行重新分级(即,亮度变换)的方法。
例如,可以通过将所有重新分级的图像(特别是左侧的起始主HDR图像、右侧的对应的SDR图像,以及介于这两者之间的任何中等动态范围(MDR)图像)的绝对亮度(其涉及归一化亮度的对应缩放变化)进行等同处理来渲染像摩托车骑士这样的黑暗中的目标,例如所示的PB_C=PB_MDR=800尼特进行了优化(具有正确的目标亮度),以便直接显示在800尼特PB_D显示器上(例如,对于购买了这样的显示器并从例如他的有线电视提供商或者经由卫星机顶盒或者通过互联网等得到5000尼特PB_C HDR图像的客户)。这是有道理的,因为内容的创建者希望传达一种黑暗的氛围,在其中只能看到摩托车,并且仅在这样的显示器能够这样做的情况下,将其在更明亮的显示器上渲染得更明亮是不好的,因为它具有较大的亮度范围,并以较高的PB_D结尾以显示场景中的所有目标亮度。
像太阳这样的目标可能会遵循完全不同的原理,即,白色上白色映射方法,在该方法中,在任何图像表示形式(即,PB_C)中,始终将其赋予尽可能高的值。显然,其他种类的目标也能够遵循其他种类的规则,并且我们可以继续使用更长的时间(例如,牛仔将遵循经缩放的中间灰色理念),但是读者足以理解,必须拥有允许对所有像素亮度的几乎“任意”分配的技术,而不是例如像简单技术所规定的那样进行固定分配。
虽然图1简单概述了通用HDR图像创建的需求(跨越诸如电影、现实体育广播等受技术限制的不同应用),但是对于HDR技术开发人员来说,问题仍然在于如何对HDR图像进行编码,以及如何变换HDR图像,以便能够在PB_D小于编码PB_C(即,视频中可能至少出现一次的最亮像素)的任何显示器上最优地显示它们。捕获HDR场景图像,并且重要的是,艺术指导和照明HDR场景也是一项技术技能,但是本申请无需专注于这方面。
想到的最简单的事情是仅对HDR像素亮度进行编码(忽略显示自适应(DA)的复杂性,即,如何将PB_C1图像映射到显示能力较弱的显示器的图像)。问题是Rec.709OETF只能编码1000:1的亮度动态范围,即,必须发明新的HDR OETF(或者实际上是相反的EOTF)。第一个HDR编解码器投放市场,它被称为HDR10,它例如用于创建新的黑丝带HDR蓝光,并且它用作OETF,一种更具有对数形状的函数,被称为感知量化器(PQ)函数,该函数在SMPTE 2084中进行了标准化,并且允许定义亮度在1/10000尼特到10000尼特之间的亮度,足以用于实际的HDR视频制作。此外,它具有一个很好的特性,即,它产生的亮度代码与人类视觉的工作方式相吻合(大脑用于表征场景中的不同亮度的感知灰度值的种类,这是非常好的特性,它既可以用于有效重新分级某些具有灰度值的目标的好特性,又可以用于有效地表示亮度(大脑也是一样)。在计算了亮度后,一个像素只有10位平面(或者还有两个色度平面Cb和Cr的3位平面),可以经典地沿线进一步处置,“好像”它们在数学意义上是SDR图像,例如,MPEG压缩(这是重要的约束,因为它避免了重新设计和重新部署整个视频管道中的若干现有技术)。
HDR10图像的重大技术难题仍然是如何在性能较低的显示器(例如,其能力不如HDR内容所用的2000PB_C)上恰当显示它们。如果例如仅线性地进行白色上白色映射(编码的图像最大白色,也就是编码峰值明亮度PB_C到例如SDR显示峰值明亮度PB_D),则具有PB_C=1000尼特的图像中最有趣(较暗)的部分通常看起来暗淡10倍,这将意味着夜景ImSCN2变得无法观看。由于PQ OETF的对数性质,HDR10图像是可观看的(当只是渲染为亮度时,即,利用错误的EOTF进行解码),但对比度却显著下降,致使其看起来像被洗掉且明亮度不正确。
利用
申请人认识到,已经在图1中阐明了这一点,因为从主HDR开始,在各种可能的重新分级MDR图像之间存在数学上的重新分级关系,只要能够从技术上务实地捕获这些函数(实际上通过仅发送不同动态范围函数中的一个动态范围函数对不同动态范围函数的整个频谱进行编码,并且通过至少一个亮度映射函数根据实际发送的图像来创建另一幅图像)即可。在WO2011107905中首次介绍了这种可能性以及随之产生的技术编码概念。
已经发现,定义亮度映射函数F_L以将(例如,5000尼特PB_C)主HDR图像亮度变换为SDR图像亮度(即,让分级器定义最极端图像表示之间所需的重新分级行为,然后重新计算适应显示的亮度映射函数F_L_DA,以计算与任何可能的5000尼特PB_C M_HDR图像亮度相对应的MDR图像像素之间的亮度)是有意义的。
当申请人随后进行标准化时,对于实际要传输到任何接收器的图像,存在两种逻辑选择(作为针对不同动态范围(特别是PB_C端点)的可重新分级图像的整个频谱的唯一图像,因为通常可以假设较低端点MB可以近似固定,例如,0.01尼特):主HDR图像或对应的SDR图像(应当停一秒钟以了解在那种情况下实际传输的是普通SDR图像而不是HDR图像,实际上,因为L_HDR_reconstructed=F_L_inverse[L_SDR]),所以F_L函数的F_L仍然还传送了HDR图像)。
第二个编码选项首先在ETSI TS 103 433-1下进行了标准化(请注意-1;我们将其缩写为ETSI1),当技术约束是许多旧式显示器需要以不受干扰的方式得到服务时,该选项非常有用(事实上,当旧式SDR显示器仅获得SDR图像而无需知道这也编码了HDR时,它能够直接显示SDR图像并立即获得HDR场景的非常漂亮的SDR渲染,实际上是尽最大可能地使显示器能够显示这样的HDR场景)。请注意,存在一些技术约束,例如需要SDR图像颜色的可逆性,以便能够以足够的精确度在任何接收端重建原始主HDR图像,这是在定义标准(解码)编码方法时使其进行技术考虑的部分。
ETSI TS 103 433-2(ETSI2)是一种编码替代方案,其中,实际上将主HDR图像传送给接收器,并且使用其中的(一个或多个)函数F_L(实际上如下所示,虽然为了阐明起见,可以设想系统好像在传送的图像中所有像素亮度都有单一的全局F_L函数,出于技术上的原因,使用一组随后应用的映射函数)来计算图像,以在PB_D
颜色变换器302从图像源301获得作为输入的MAST_HDR图像(例如,它们由相机捕获并由图2所示的系统进行分级,然后通过某种专业视频通信系统被传送到广播侧编码器321,广播侧编码器321例如将通过空中或者经由电视电缆网络传输电视节目)。然后应用一组颜色转换函数F_ct(在该示例中,该函数例如由分级自动机软件来确定,例如申请人的自动HDR到SDR转换技术,它基于图像特征(例如,直方图等)来定义F_ct函数;能够不去阐述该应用的具体细节,因为这仅需要针对任何图像或一组时间连续的图像存在这样的优化函数),至少包括亮度映射函数F_L以获得与主HDR图像(MAST_HDR)像素的亮度对应的SDR亮度。为了便于理解,为简单起见,读者可以假设F_L是四次幂亮度映射函数(L_out_SDR=power(L_in_HDR;1/4)),它用于导出100尼特PB_C SDR输出图像Im_LDR中的像素的归一化至1.0SDR输出亮度(即,图1的右侧亮度范围)。 由于现在有“正常”的SDR图像,因此能够利用标准的视频压缩技术(例如,像HEVC或MPEG2这样的MPEG标准,或者像AV1这样的类似标准)将其压缩(由视频压缩器303来执行这种压缩)。 由于接收器必须能够根据接收到的对应压缩SDR图像Im_COD来重建主HDR图像,因此除了要传输的实际像素化图像之外,颜色映射函数F_ct也必须进入视频压缩器。不进行限制,我们可以假设函数被存储在元数据中,例如借助于SEI(补充增强信息)机制或类似技术被存储在元数据中。最终,格式化器304进行为格式化任何技术通信介质305的视频流(将其放入数据块等)所需的任何操作,例如进行格式化以存储在蓝光光盘上,或者通过卫星进行DVB通信等(相应技术领域的技术人员能够找到相关细节,并且与理解本发明构思无关)。 在视频解压缩器307在视频接收器320中对MPEG进行解压缩之后(已经通过非格式化器306之后),接收器能够通过应用标准Rec.709EOTF来解读SDR图像(以获得用于SDR显示器的图像),但是接收器还能够对接收到的Im_COD图像进行不同的解码,以获得重建的HDR图像Im_RHDR。 这由颜色变换器308来执行,颜色变换器308被布置为将作为解压缩的Im_RLDR的SDR图像变换成任何非SDR动态范围(即,PB_C高于100尼特,并且通常至少高6倍)的图像。例如,可以通过应用在编码侧使用的颜色变换F_ct的逆颜色变换IF_ct来重建5000尼特原始主图像Im_RHDR,以根据MAST_HDR来制作Im_LDR(并且在元数据中被接收并且被传递给颜色变换器308)。或者,可以包括显示自适应单元309,显示自适应单元309将SDR图像Im_RLDR变换到不同的动态范围,例如,如果显示器310是3000尼特PB显示器,则Im3000尼特会得到最优分级,或者对于对应较低的PB_D显示器,1500尼特或1000尼特PB图像会得到最优分级等。我们非限制性地假设视频解码器和颜色变换器位于单个视频接收器320中。熟练的读者能够理解,能够使用例如在机顶盒中分离的要连接到显示器的解码功能来类似地设计许多不同的技术,该显示器仅用作接收到的预优化图像的哑屏显示器,或者进行进一步的图像颜色变换等。
输入应当是PQ定义的YCbCr像素颜色(即,每个像素的亮度Y和色度Cb和Cr颜色分量)。首先,通过必须使用SMPTE 2084PQ EOTF的EOTF应用单元401将亮度线性化为正常的线性亮度L_in。然后能够利用正常(物理SI和CIE通用定义)亮度再次定义从输入HDR像素颜色获得SDR输出像素颜色的整个重新分级过程。此后,该亮度处理能够由亮度处理器401来执行,亮度处理器401实现所需的总F_L映射,但是通过明智选择的子单元(这些单元402、403等在技术上被设计为有利于各种HDR应用的需求,例如,自动分级、简化人工分级、IC设计的复杂性等)来实现的。 首先,亮度均匀化器通过应用如下定义的PB相关的曲线家族之一来应用固定的曲线变换,其形状仅取决于输入HDR图像的峰值明亮度PB_C_H(PB_C_H=例如5000尼特): Y’HP=log(1+(RHO-1)*power(L_in/PB_C_H;1/(2.4)))/log(RHO) [公式1] 其中 RHO=1+32*power(PB_C_H/10000;1/2.4) [公式2] 这会将所有亮度映射到感知均匀的灰色亮度Y’HP。如果PB_C_HDR=10000尼特,则该曲线与SMPTE 2084PQ曲线紧密对应,已知SMPTE 2084PQ曲线是感知均匀的。对于较低的PB_C_HDR输入图像,曲线可以很好地缩放(实际上,它在绝对意义上表示在10000尼特曲线上终止于例如3000尼特的子曲线),从而使得对于归一化的[0-1.0]/[0-1.0]输入/输出亮度轴表示中的最暗颜色loggamma曲线不太陡峭。也就是说,处理的其他部分已经很好地进行了预归一化。 随后,黑白水平偏移器403能够在需要时施加某种加性白色水平偏移WLO和某种黑色水平偏移BLO。 白色水平偏移的有用性能够被理解如下。假设内容创建者正在被设置为PB_C=4000尼特的系统上对他的图像进行分级(即,例如,他的参考分级监视器的PB_D为4000尼特),然而,在整个视频中,他实际上从未制作出具有比例如1500尼特更高像素最大明亮度的图像(视频最大值,与可编码的最大值PB_D不同)。然后,由于SDR亮度动态范围足够小,因此有意义的是重新缩放输入HDR,从而降低那些未使用的值1500-4000尼特(因为我们使用的是动态可调的亮度映射,其能够针对每个图像/视频时间得到即时优化)。1500/4000对应于0.375的归一化(输入)HDR亮度,因此我们能够将该值除以2.6而映射到经缩放的HDR亮度Y’HPS的最大值。 为了得到精确的结果,根据ETSI2标准来执行以下计算: Y’HPS=(Y’HP-BLO)/(1-WLO-BLO) [公式3] 其中,WLO和BLO在与接收到的视频图像相互通信或可关联的元数据中进行通信。 黑色水平偏移有助于获得与SDR对应的重新分级图像更鲜明的对比,但请注意,ESTI1接收的图像应保留与HDR图像的逆向映射,即,不会丢失太多黑色像素细节(这就是为什么还有并行增益限制器(图4中未示出)的原因)。 基本上,人们能够简单地将黑色水平偏移理解为在SDR中将某种HDR“黑色”颜色设置为0.0,或者更确切地说是经由单元403来准备进行HDR到SDR的亮度映射(即,标准化亮度仍在HDR中,意味着利用相对分布,可用于在HDR显示器上获得良好外观,而在SDR显示器上获得较差的尚未优化的外观)。 随后,粗糙动态范围变换器404应用初级亮度变换以获得SDR亮度(即,具有良好的目标亮度的第一重新分布以在SDR显示器上获得合理的外观)。为此,ETSI2使用了一条曲线,该曲线包括用于最暗的HDR归一化亮度的斜率可控线性段(该段的斜率被称为 该单元404的内容创建者提供的技术(和艺术)效用是,分级者能够很好地优化制作最暗像素所需的明亮度,这是以牺牲包含较亮像素的其他目标的目标内对比度为代价的(由于有限的SDR亮度范围),但是他能够共同调谐例如高光增益。阴影增益能够被理解为例如亮度为0.05尼特的人站在洞穴的黑暗阴影区中。如果我们利用白色上白色标准(即,归一化映射函数,该函数是身份函数,其45度斜率是归一化亮度函数标绘图的对角线)将他显示在SDR显示器上,我们会发现在HDR中他的归一化亮度为0.05/5000,由于对粗糙映射的SDR亮度进行身份映射,因此保留了相同的归一化亮度,即,在将它们设为绝对值之后,应利用(1/100000)*100将这些像素显示在SDR显示器上,即,在显示器上最小为黑色(“0”驱动信号)并且它是不可见的。因此,即使在更加对数均匀的HDR和SDR相对灰度值或亮度表示中,我们也必须大大提高这种亮度,以获得足够可见的SDR亮度并使得人目标内的目标纹理能够得到辨别(例如,被显示在SDR显示器上的人像素亮度跨越0.3-1.2尼特)。因此,取决于人落到HDR亮度范围的深度(如上文所教导的,这将取决于内容创建者如何选择诸如HDR场景构建、场景照明、相机曝光和艺术主HDR分级之类的因素的组合),编码器(例如,制作合适的F_L部分的人类分级者是将主HDR输入重新分级为最优或合适的对应SDR像素亮度的第一粗糙亮度映射选择)将选择合适的阴影增益以处理该特定图像的所述最暗像素(即,图像内容已优化)。注意,实际上,在ETSI中,阴影增益SG被定义为基于输入图像和输出图像的峰值明亮度(至少是其亮度表示)的比率的自动缩放的校正。在均衡理念下,有意义的是应当提高在与例如仅200尼特PB_C(或更确切地说,根据上面的公式1和2得出的值:Y’HP=Y’200=v(PB_C_H/200;RHO(200)),v是上面的公式1的伪对数方程)相对应的归一化亮度范围上表示的亮度,从标准化的HDR亮度:L_200=Y’200*L_HDR开始。然而,这通常会产生太明亮且对比度较低的图像,因此分级者能够使用曝光增益校正:SG=expgain*Y’200,这将是使SG返回到对角线值1.0并使某个暗度返回到SDR图像中的调光因子(他通常不会选择expgain=1/Y’200,因为这样SDR归一化的亮度将等于HDR归一化的亮度,并且又太暗了;SG将落在例如1.0到1.8之间)。 这种曲线类型实现了非线性亮度压缩“弹簧”,以用于将可能非常大的亮度动态范围内的大量HDR亮度压缩到非常小的SDR DR中。由于没有使用“永远不会太不合理地平均化”的固定曲线,而是编码器能够应用已经优化的曲线,因此产生的SDR图像对于许多HDR场景都不会有问题(并非所有HDR场景都同样复杂,例如有时在光照均匀的区旁边只有某个弱阴影区,则虽然最简单的系统会产生问题(例如被裁剪为白色),但是不太复杂的智能HDR到SDR映射(例如,单元404的三部分曲线)通常会在创建HDR主图像的合适的SDR重新分级图像(例如来自从真实事件捕获内容创建者的HDR相机的图像)方面做得很好。 然而,其他若干场景可能更复杂,并且某些内容创建者(例如,好莱坞电影导演或DOP)在微调其艺术内容时也可能具有较高水平的专业需求。 因此,下一单元(可定制曲线应用器405)允许内容创建者(同样无论是人还是具有在其算法中编码的各种规则的智能自动机)将可定制且可能任意形状的精细分级亮度映射函数F_L_CU应用于Y’CL预先分级亮度,从而产生分级的LDR亮度Y’GL(该函数的唯一要求是它不是递减的,并且通常甚至是单调递增的,并且通常至少在将1.0输入映射为1.0输出的ETSI2中作为选项)。在实践中,该函数F_L_CU的形状可以作为一组形状定义参数(例如,多项式系数)或LUT等被传送到解码器。 可能需要这样的精细分级,因为视觉系统具有确定感知的图像目标灰度值印象的复杂方法,并且/或者因为将大范围的HDR亮度压缩到受限的SDR DR中有时可能需要某种经验技巧,并且/或者因为内容创建者明确希望将某种其他艺术风格放入该定制曲线F_L_CU中(然后通常由另一颜色用户接口计算机硬件和位于编码侧的连接软件(未示出)来确定其形状)。实际上,一方面可以说所有MDR图像都应当(仅)是主HDR图像中的所有信息的某种压缩表示形式,但是另一方面(因为这样可能会产生较弱的印象图像,例如,对比度太小,就像通过雾气看到的一样)内容创建的另一重要要求可能是使所有图像达到SDR图像的外观——鉴于其更加受限的DR功能——尽可能像HDR场景那样逼真,或者至少尽可能美观。人类视觉是高度非线性的并且很智能,如果使用的函数太简单,则人类视觉可能会很快感知到。因此,内容创建者除了可以使用粗糙的亮度压缩功能F_C之外,还可以使用可定制函数F_L_CU的经验技巧来更好地完成工作,以使SDR图像看上去仍尽可能得好并优选像HDR场景一样好(例如降低像素的某个亮度子范围的明亮度,以使目标间的对比度稍高一些,例如,彩色玻璃窗相对于教堂内部的明亮度,或SDR图像中的室内-室外视觉对比度,或者通过选择F_L_CU曲线的特殊局部形状等来优化场景中的一些目标的色彩与亮度的关系)。 我们能够启发读者并利用一个简单的“阴影男”图像示例(如 图6A示出了人们能够在图像中看到的几何形状,并且图6B示出了L_HDR亮度与L_SDR亮度之间的函数关系。该图像示出了机器人602正在移动通过的暗空间站(DRKSPST)。在某个图像呈现时间,它会遇到阴影男601,阴影男601被用比色法定义为一组非常明亮的HDR像素,其中,组成阴影男的身体的各个像素之间的亮度相差很小。发生这种情况是因为他站在充满雾气的强光照环境中的窗户后面。雾气增加了源自阴影男的身体(例如,他的衣服)的亮度的分量,从而对HDR图像中的观看者给予了最终亮度,例如,L_pants=20尼特+L_mist=4500尼特=4520尼特,L_shirt=50尼特+L_mist=4800尼特=4850尼特,依此类推。针对最明亮的像素使用斜率过小的粗糙亮度映射函数的问题是阴影男可能在动态范围较小的图像(例如,SDR图像)中变得对比度不足且可见性很差。一种解决方案是定义F_L_CU函数,使得其在输入HDR亮度区域4500-5000尼特处在局部具有较大斜率,使得阴影男的SDR亮度子范围RS较大,从而即使在SDR图像中,也使阴影男及其细节(例如,他佩戴的领带)在雾气中也更加可见。能够理解,在许多情况下,具有比仅粗糙映射函数F_C略多的额外重新分级控制能够是有利的。 返回图4,在定义了适当的(均匀的视觉表示)SDR亮度之后,线性化器406将它们转换为(归一化的)SDR亮度Ls。因此,它应用了上面的公式1的逆向公式,这是因为这次要利用与PB_C_S=100尼特(其被输入到单元406中)相对应的RHO而不是在亮度处理链的开始时用于感知均匀情况的5000尼特来得到SDR亮度。 颜色当然不是一维的(除非一种颜色仅适用于消色差的灰度值图像),这会使动态范围转换和编码变得更加复杂,但是在任何情况下都需要对像素的色度Cb和Cr的并行处理轨迹以获得更合适的对应SDR色度,或者实际上如图4所示,最终获得合适的SDR RGB颜色,作为输出颜色分量Rs、Gs和Bs。 ETSI2的色度处理轨迹450执行以下操作(仅在需要的程度上再次简要说明)。类似地,通过乘法器452将输入像素色度Cb和Cr乘以值F_C[Y],从而得到输出色度Cb*、Cr*。困难在于总是要获得适当的输出色度,已知存在许多困难:可实现颜色的不规则形状的色域(请参见图5中的说明),数学的非线性以及观看者的人类视觉系统的非线性等。此外,如下面将在本申请的实施例中示出的那样,市场需求越来越多,从而引起HDR处理系统越来越复杂。 ETSI2使用饱和度处理确定器451,饱和度处理确定器451能够加载例如定义要根据输入像素碰巧具有的亮度值Y被发送到乘法器的输出值的LUT。同样,内容创建者能够自由定义/优化该亮度相关的饱和度乘法器定义函数的形状。至少这就是所需要的程度,因为正如我们将在下面看到的那样,有时需要创造性的颜色数学来定义该F_C[Y]LUT。 矩阵应用单元453简单地从Cb、Cr颜色规范转换为对应的归一化RGB表示(其数学对于本申请而言不是感兴趣内容,感兴趣的读者能够在ETSI2和ETSI1中找到它)。 能够通过将“未HDR亮度化”的归一化R/Lh等值乘以在亮度处理轨迹401中计算出的归一化Ls值来定义真实的RGB三元组。注意,所得到的RN值、GN值和BN值实际上仍然是归一化亮度,而不是绝对SDR亮度(Rs等),但是它们是“SDR校正”归一化亮度,因为它们现在考虑了SDR颜色碰巧获得的亮度(Ls)。 为了使读者尽快入门,并且为了在开始时为不是比色技术领域的技术人员提供稍有困难的概念,我们阐明了图5中的归一化(通用的,即,如上所述,SDR色域和HDR色域在被归一化时很好地重叠了,但是,当然,我们必须将HDR颜色移位为合适的SDR颜色,即使该变换并非高度智能且没有已经针对当前HDR场景图像的需求进行了优化也是如此,而只是将绝对SDR亮度等同于输入的HDR绝对亮度)的YCbCr色域中发生的情况。 纯亮度变换将在垂直方向上发生,因此通常将HDR亮度或其对应亮度Y(即,ColHDR的亮度)向上移动到新的最优位置(ColSDR),因为对于HDR到SDR的亮度映射,归一化轴线标绘图上的F_L曲线将始终落在对角线上方(即,输入的HDR归一化亮度或亮度具有某个x坐标,并且也具有作为y坐标的在x坐标位置处的对角线的高度,并且始终位于对角线上方的函数的归一化SDR输出亮度将始终产生更高的归一化输出值)。通过首先对归一化亮度进行EOTF运算,可以找到哪个实际(绝对)SDR亮度对应于该归一化亮度值Y(由单元406执行,因为通过应用公式1的对应EOTF定义了直到Y’GL的处理亮度Y’HP),并且乘法器455将那些归一化亮度简单地乘以100(例如,0.7*100=70尼特)。即,读者现在可以看到,利用该框架,能够根据输入的HDR图像颜色来定义任何需要的东西,特别是其PQ定义的亮度Y(例如被存储在HDR蓝光光盘上),一直到要显示在SDR显示器上的对应像素的绝对SDR亮度,以向HDR输入图像示出最优的对应SDR图像(以及根据接收到的HDR图像得到的对SDR图像的解码结果)。 到目前为止,读者至少已经根据申请人的ETSI标准化编码理念了解了HDR编码的基本起点。对于大多数客户而言,选择ETSI1或ETSI2(然后技术上会发生的一切)就足以满足他们的目的,即,为其市场供应了精美的HDR图像(当然,他们仍然需要制作那些精美的HDR图像,包括确定至少针对F_C函数(优选还对F_L_CU函数)的良好形状,或者至少在不根据自己的特定艺术需求来手动优化那些函数时,购买并使用申请人的自动机,该自动机为每种HDR图像类型自动生成非常漂亮的外观以及随之产生的编解码器函数形状)。例如,要进行全面改造以获得面向未来的高质量通用HDR的客户可以部署ETSI2系统,并且重视其SDR图像或SDR客户的市场参与者可以将其HDR系统部署为ETSI1系统(取决于人在HDR视频处理链中的哪个位置,这还可以涉及各种讨论(例如,内容创建者与有线电视通信系统运营商之间的关系),并且可以涉及代码转换等)。 然而,对于不希望完全按照标准部署ETSI1或ETSI2的客户,还有其他市场或市场需求。以下情况将具有良好意义:如果人选择传送HDR图像作为表示所有各种PB_D显示器所需的整个图像频谱的专有图像,则可以传送(例如5000尼特PB_C)主HDR图像本身,而不仅仅是因为这些图像不仅已经可用而且还可以提供HDR图像场景的最佳质量表示(实际上,它们是内容创建者的“黄金”,他专门创建并签名的图像,并且通常是创意视觉电影的起点,如果其余的重新分级工作由所选技术自动完成,则他还不是唯一主动创建的人)。然而,特别是在未来几年,市场形势可能会受益于另一种额外方法。遗憾的是,市场上并非所有的不是旧版哑屏SDR显示器(即,无法进行涉及HDR解码、显示自适应等的所有数学运算)的电视(或普通的视频解码或处理设备)总是会立即成为支持ETSI2(或ETSI1)的电视。市场上有许多电视将非常不同的方法(例如,根据最近的标准化混合Loggamma方法)应用于HDR编码和显示。或者,也许某种电视只能解码PQ亮度编码的HDR图像,而不能解码其他内容。也许某些电视可能只使用这种方法,因此它们能够做的最好的事情就是根本不处理传入的ETSI2HDR视频。类似地,市场上可能会有一些不遵循任何标准理念的电视,至少不涉及显示自适应,即,将例如接收到的2000尼特的图像重新分级为例如900尼特的图像以用于900尼特的PB_D显示器。这样的电视将需要解码能力来理解所接收的图像包含哪些像素颜色(特别是亮度),但是它们可以使用自己的(色调映射)启发法来制作900尼特图像。至少从希望每一个客户都能像内容创建者最初创作作品那样很好地观看内容创建者的电影的内容创建者的角度来看,它的缺点是这种变化会为任何特定品牌的电视接收任何HDR图像带来高度的不确定性。例如,对最近执行的HDR图像的简单显示重新解释是对HDR图像亮度的绝对渲染。这意味着所有高达900尼特的HDR图像亮度都将精确按照图像中编码的亮度进行显示,但是所有较高的亮度都会被剪裁到显示器的可能最白的白色(即,PB_D)。对于像图7的空间站这样的示例图像,这可能意味着地球的一些部分被剪裁掉而成为丑陋的白色片块(太阳在这里照亮了其右边的地球)。虽然从某种程度上来说,这台电视仍将是一台漂亮的HDR电视,因为它将示出从空间站的顶部观看口看到的地球的大部分地方的美丽明亮蓝色,与黑暗的内陆形成了鲜明的对比,但是该图像中的至少一个部分将看起来很难看(并且一些其他场景至少在一些电视上可能示出更严重的错误,例如将图1的洞穴外部的所有图像细节或露天市场等都剪裁掉)。执行另一简单的色调映射重新解释(例如像白色上白色策略一样对亮度进行线性压缩)能够产生若干其他问题。因此,虽然这样的系统可以工作并为最终观看者产生某种HDR图像(例如,在我们的ETSI2系统中,这样的电视只能使用401的PQ函数,但是忽略了所有其他亮度映射函数元数据和在ESTI2中执行显示自适应的功能的随之而来的顺序的亮度映射402、403等),但是结果既不是最佳的视觉质量,也不是可预测的(可能是较差的)。 除了主HDR图像(所谓的中间动态范围(IDR)图像)之外,这还引起基于第二种HDR图像的新的编码拓扑,该种新的编码拓扑在WO2016020189中首次引入。这样做的优点是,能够利用PB_C来定义这样的次级HDR图像(将被传送给接收器的IDR编码图像,而不是在经典ETSI2编解码器理念中的主HDR图像),该PB_C位于该领域中的许多电视的范围内(例如,1000尼特或750尼特;但是也可以利用相同的技术选择使用500尼特,或者甚至可能使用400尼特PB_IDR)。但是,仍然能够按照期望的艺术或实践技术限制(例如,可用的分级监视器)来制作任何PB_MHDR主HDR。这种想法是,无论任何电视使用的任何显示重新解释(包括色调映射)技术是什么,它都应当是平滑的,在这种意义上,如果PB_D接近PB_IDR(接收到的IDR图像的峰值亮度),则处理不应与接收到的图像有太大的偏差。例如,即使是一台很哑而仅能剪裁在PB_D以上的所有像素亮度的电视,也不应过分剪裁(例如,不是整个地球,也不是洞穴图像外部的晴天)。并且, 图7示出了WO 2016020189的编解码器理念如何适应信道自适应方法(信道传送的图像是IDR图像,由此人们可以说特定的通信信道被配置用于发送例如1000尼特的PB_CH图像)。再次选择该示例是为了阐明一些主要概念。人们应当了解的一件事是,虽然如果沿着该范围的所有不同的PB_C图像与内容创建者在对图像中的每幅图像单独地且不受任何技术系统限制地进行分级时想要得到的结果精确相同或至少非常接近可以是非常有用的,但不一定总是如此这种情况,特别是对于IDR图像而言。可能涉及一些放松情况(另一方面,关于何时以及为什么HDR场景类别X相对于Y的某种特定图像分级是最优的,并且对于该偏差似乎有足够的偏差也存在一些争论;例如,能够想象到,路灯的像素亮度没有人脸的亮度要求严格,特别是在应当将其视为在黑暗中半露半藏的情况下,还因为在现实生活中任何路灯都可能是稍微亮一点或稍微暗一点)。 WO 2016020189提供了一种用于将来自IDR图像的函数(不同函数)定义为某个中间点的手段,即,向上朝向要根据由接收器接收的IDR图像重建的主HDR,而向下进行针对PB_D 我们看到,关于如何变换各种可能的亮度,可能再次涉及不同的考虑因素,并且有利的是,在所选择的IDR图像的左侧与右侧可能有很大不同。因为实际上从概念上讲,我们可能在做不同的事情。在左侧,我们根据主HDR图像制作了次级(“较小”)HDR图像。因此,可能需要考虑的是,该IDR图像必须与主HDR图像“一样好”(尽管PB_IDR较低)(然后如何优雅地解决这种矛盾?)。在右侧,我们正在朝着越来越小的PB_MDR压缩(对于某种高复杂度而言能够相当可观,这意味着许多关键目标遍布整个亮度范围以及高PB_C_H图像),即,我们似乎有不同的显示自适应的图像生成的任务。因此,能够想象这会引起(相当)不同的技术处理,特别是在我们的图像+亮度映射视觉中,整形/设计的亮度映射函数具有不同的形式。 在该示例中,由于暗空间站的亮度比60尼特更暗,因此能够在每一台合理的电视上(至少在原理上)显示暗空间站的亮度。但是,首先必须将较明亮的像素柔和地压缩到IDR图像,然后在第一部分中进行的压缩越少,对SDR图像的处理就越多。对于示例性的两个明亮的目标(明亮的蓝色地球相对于明亮得多但几乎无色的太阳及其光线),可能再次存在不同的标准。正如分别针对明亮地球目标的主HDR图像亮度范围(BE)和IDR亮度范围(Be2)上的亮度子范围所指示的那样,理想地,该内容创建者可能希望无论任何图像或显示器的PB_C能力如何,地球的最大明亮度都永远不会超过例如750尼特(因为否则地球可能会开始发光太多而看上去不现实)。然而,太阳的亮度必须取决于若干因素,不仅取决于艺术上的愿望,还取决于在选定的(800尼特PB_IDR)IDR图像中编码750尼特以上的太阳目标时剩下的亮度的量(当然,在一些情况下,内容通信者可能会选择另一更高的PB_IDR值,但是我们在这里假设,无论连接到通信信道接收端的任何装置,对于任何视频内容,无论是好莱坞电影还是新闻节目,始终期望PB_IDR为800尼特)。利用两个箭头示出了针对作为子集的所有那些最明亮像素的用于根据主HDR图像亮度来创建IDR图像亮度的情况最终选择的F_H2h亮度映射函数:选择了一种解决方案来共同定义针对两个目标的总压缩作用,这也在某种程度上降低了最不明亮的地球目标的亮度。这是如下情况的示例:其中内容创建者的理想重新分级愿望并非100%完美满足(因为这可能与其他一些技术难题相对应),但IDR图像对于大多数人来说足够接近。如果IDR图像中的地球像素仅暗一点,则实际上并没有多大关系,即使对于质量较低的HDR图像,也许会有一点关系。但是重要的一点是,该IDR图像仍然可以满足原始ETSI2理念的所有要求(与该额外的编解码器步骤同时还满足了以下要求:接近800尼特PB_D显示器的哑屏在显示接收到的IDR图像之前无法使接收到的IDR图像过度劣化):接收器仍然能够通过采用右侧亮度转换函数来生成内容创建者所期望的所有MDR图像,直至SDR主图像,并且(即使具有变暗的明亮地球目标像素)仍然能够通过逆转F_H2h函数来重建主HDR 2000尼特PB_C或10000尼特PB_C图像(根据技术和/或艺术需求,该函数本身也可以针对每幅图像或编码电影特定镜头的连续图像集进行优化)。 关于它们的不相关性(因为不应混淆不同的技术方面)而不是其重要性(但由于其潜在的混淆性而值得讨论),有两篇文献值得讨论:US20160307602和EP 2689392(又被称为WO 2012127401),它们都涉及所谓的“显示优化”,而不是视频图像编码框架设计。图23阐明了对技术人员的主要区别,图23示出了视频处理的典型示例总链。在内容创建侧2301,我们假设借助于相机2302对HDR场景进行实况(或先前记录的)捕获。人类分级者(或着色器)确定例如特别是捕获的主分级(即,各种图像目标像素亮度在主HDR图像的亮度动态范围上的相对位置——以最大可表示值(例如,PB_C_H50=5000尼特)结束;并且开始于某个小的黑色值(例如,MB_C_H50=0.001尼特),对于我们目前的讨论,可以假定该值等于零:例如,对于空间站,他通过图像处理改变了原始相机捕获的图像,从而使太阳像素变为4500尼特,地球的明亮蓝色变成例如200尼特等)。其次,我们的方法中的分级器通常想要利用至少一个亮度映射函数进行指示(实际上,对于HDR视频的连续图像,这种亮度映射函数的形状可能有所不同,并且我们甚至在ETSI标准中解释了从技术上来说,即使对于单幅即时视频图像,也可以方便地定义若干功能,但是不需要进一步的复杂性来阐明当前对该领域的创新性贡献),这通常是一个函数,其用于指定5000尼特PB_C_H50归一化主HDR亮度必须被重新分级为100尼特LDR归一化亮度:FL_50t1。 然后,第三重要方面是用于(经由至少一种编码技术)编码要被传送到一个或多个接收器的主HDR图像的编码技术。在HDR视频研究的开始,以及对应地在申请人标准化的简单版本中,这将是一种相对简单的编码,例如,LDR 100尼特图像,其能够很好地向后兼容,使得它能够在没有HDR经验技巧或处理能力的旧版LDR电视上以良好的视觉外观直接显示。WO 2016020189编码方法和本教导是更高级的第二代方法的示例,该方法更复杂,但是能够适应某些特定的HDR视频通信或处理技术生态系统中的额外需求。该分级由例如在分级装置2303(其通常将包含若干工具来改变像素亮度,但是对于当前的说明能够被假定为包括提供用户接口以指定FL_50t1形状以及传送这样的函数形状(例如,包括定义该函数形状的几个参数的元数据)的元件)上工作的人类分级者2304(在例如在现实生活广播节目中通常不是自动化的情况下)来执行。 虽然视频编码器2305(在非限制性地假设其输入主HDR图像是针对所有像素的亮度集合的情况下,视频编码器2305将执行产生主HDR图像的实际编码的所有技术,即,例如通常由YCbCr像素颜色三元组组成的8位、10位或12位像素化矩阵以及描述所有进一步信息的元数据(如在给定了选择哪个编码技术的情况下的亮度映射函数))原则上可以被包括在分级装置2303中,我们已经将其典型地示为可连接的其他装置。对于读者来说,这表示了足以阐明本发明的简化方案,在此它总结了例如捕获(并且可能是分级)发生在外部广播卡车中的各种实际变体,并且编码可能发生在某个中间通信中继站中,例如在信号中插入本地商业广告等之后(在这方面还可能涉及各种图像内容的协调,但这是细节,无需详细说明)。需要理解的重要一点是,在创作侧会发生什么情况(例如,参见贡献与分配之间的差异),我们可以将其定义为在(例如借助于卫星天线2306和通信卫星2340(或任何等效的视频通信信道,例如经由互联网等))最终编码的视频信号被传送给某个客户时正式地结束)。 在接收侧,我们通常面对终端客户家中的客户装置,例如,卫星电视机顶盒或任何等效的解码和最终处理装置2352,该客户装置在输入侧被连接到本地卫星天线2351,并且在输出侧被连接到HDR显示器2353,该显示器2353可以具有各种显示能力,例如,PB_D为1000尼特或700尼特或2500尼特。虽然机顶盒可能只通过解码器2381(其执行编码器的逆运算)对需要显示的亮度值再次执行解码就足够了,但是这通常仅在有限数量的情况下有用。通常,由显示优化器2382进行显示优化过程,该显示优化过程将再次改变绝对的相应归一化的亮度分布(例如,接收到的LDR图像或解码后的HDR图像(例如,5000尼特图像)的归一化的亮度分布),因为主图像可能具有被编码为例如5000尼特PB_C_H50,即,可能包含2000尼特的亮度像素,但是特定客户的HDR显示器可能例如最多只能显示700尼特(其最白的可显示白色)。 因此,一方面,任意侧(例如,创建/编码/发送侧)的电器(及其技术设计理念等)之间的主要技术差异将仅具有视频编码器2370,以将主HDR视频(MsterHDR)编码为某种信道编码的中间动态范围图像IDR,而接收侧还可以将重建的5000尼特HDR图像(RecHDR)显示优化为最适合连接的700尼特PB_D显示器的优化的显示(例如,700尼特PB_C图像ImDA)。能够看出这两者之间的技术差异在于,可以将显示优化作为(任选的)后处理,而编码/解码只是图像重建技术,通常不需要任何关于显示优化的教导。这两侧的装置(以及操作流程等)通常也由完全不同的熟练专家来处理。内容创建装置可以由专业的视频装备生产商来设计并且由广播工程师来操作等。机顶盒和电视通常由例如来自亚洲的消费电器制造商来制造。 US 20160307602是申请人的第一项显示优化专利。综上所述,其思想是,内容创建者能够给出针对图像中可能存在的各种(至少两种)方案的指导性重新分级行为规则和算法(方案是一种概念,其既是图像中的像素集合,又是在具有各种动态范围的各种可用显示时这些像素的重新分级行为)。虽然这首先使得能够在内容创建者的愿望与最终消费站点上的实际显示内容之间建立了联系,但是实际上必须在该最终消费站点上发生受控的显示自适应行为。在理想情况下,机顶盒或电视的制造商(如果至少在该电视中发生了显示自适应的情况下)将很大程度上遵循内容创建者指定的方案作为对视频图像中的各种方案目标的良好行为(例如,某人从黑暗区域中消失了,在任何显示能力(甚至100尼特PB_D LDR显示器)上都不会变得看起来太明显或太不明显),因为这是该内容所需要的,而不是盲目地自己做。但这显然是在消费侧发生的最终行为,并且与视频通信技术提供商想要开发的(分别是任何实施者想要部署的)任何特定视频编解码器理念完全正交。对于这样的映射通常将不可逆的事实,不应混淆任何临时安排的色调映射技术,这是经由较低动态范围IDR图像进行编码的特性。 WO 2012127401还是用于指定显示优化行为的早期HDR时代技术,其能够借助于DATGRAD结构的各种实施例来完成,该DATGRAD结构指定了针对不同的亮度动态范围能力应如何对各种图像内容重新分级。该DATGRAD结构将用于生成MDR显示PB_D在主HDR可编码峰值亮度PB_C(即,本标记中的PB_C_H50)与最低需求重新分级规范的100尼特LDR PB_C之间的任何所需的中等动态范围图像(MDR)(第16页)。MDR图像的推导不仅通过使用DATGRAD数据结构中编码的图像的重新分级需求,而且还通过特定的显示侧查看方面(例如,观看环境明亮度或最终观看者偏好设置)来最优地进行(参见第5页)。 应当清楚的是,从头开始,如果没有进一步的非常具体的见解,则这种教导对编解码器重新设计没有任何帮助。 除了与在现有技术中已经发现的内容相比在生成特定函数方面的差异以外,对于创新性编解码器结构/框架本身来说更重要的是,我们还应提到第二PB_C值(除了下面实际传送的IDR图像外中的较低PB_C值以外,还有主内容中的最高PB_C值)的实际传送也不同于可以在WO 2016020189中使用的(任选)类型特征。除了这两者在字面上并不完全相同的事实以外,枚举器还可能扮演不同的角色,特别是如果与本教导相比,该枚举器着眼于该框架的细节。如果存在例如两个向上重新分级亮度映射函数,则这样的特征‘189可能会有用。然后,对于选择哪一个来获得诸如创建侧的主HDR图像的紧密重建之类的信息可能很有用。但是这样的信息既不是严格必要的,也不是必须在现有技术中应用的。可以使用来自主HDR图像的升级功能来获得4000或6000尼特的重建图像,而不是5000尼特的重建图像。中间图像有两个方面,降级功能通常是具有关键图像内容(特别是必须在所有PB_D显示器上显示得足够明亮和忠实的内容)的图像,而升级功能将以特定不同的方式指定最明亮目标(例如,汽车前灯、阳光反射等)的重新分级行为。这些是典型的HDR影响目标/效果,然而,无论如何也无法正确再现,因为各种能力的显示器在亮度范围的上部区域变化最大。因此,例如根据600尼特IDR图像制作的4000尼特的PB_C重建图像可能使一些汽车前灯与其理想的亮度值相比太暗(即使这样的值可以在4000尼特的亮度范围内表示也是如此),但是如果只是应用例如[0-1]/[0-1]轴系统上的多线性归一化重新分级函数,它仍将是一幅非常漂亮的HDR图像,其中,水平轴表示IDR图像的PB_C归一化亮度,而垂直轴对应于要选择计算的重建HDR图像PB_C,其与主HDR PB_C(可能未知,但仅假设)之间的距离并非太不合理。在我们目前的技术中,我们主动在元数据中传送PB_C_H50亮度值本身,因为它也被用于解码器的算法中。 本专利申请的发明人希望以多种方式(特别是围绕当今已经部署的ETSI2编码理念和系统(IC、电视、机顶盒))来限制通用IDR方法。 发明内容 发明人进行了许多技术上的考虑。一方面,他们希望其系统与已经部署的ETSI2解码器相兼容。因此,如果例如传送了1500尼特的IDR图像(ETSI2解码器对IDR的构造原理一无所知,因此,我认为这只是HDR场景的原始HDR主图像),则应当共同传送F_L_IDR亮度映射函数(以及根据ETSI2的所有其他颜色映射信息),这是图7的F_I2s函数,其可以进行正确的显示自适应。因此,无论是否使用了IDR额外技术,ETSI2(又被称为SLHDR2)解码器都应当能够正常创建SDR图像之前的所有MDR图像,并且(理想情况下)它们应看起来像内容创建者所期望的那样。理想地,根据本原理的任何新解码器(我们将其称为SLHDR2PLUS解码器)也应为IDR和SDR之间的所有图像确切地或至少近似地产生相同的外观(即,IDR图像和SDR图像中的至少一幅优选不会与颜色分级者或一般内容创建者希望或至少接受看到它时的MDR图像相差太大)。另一方面,一个非常重要的标准是主HDR能够几乎完美地重建(但可能会出现一些较小的舍入误差,例如,当在MPEG压缩阶段对IDR图像进行DCT传输时,这种误差会逐渐蔓延而导致在接收侧的主HDR产生非常微小的无可辩驳的重建错误)。当然,有些系统可能会对主HDR的重建质量有所放松(某些内容提供商可能至少在涉及某些时间方面的情况下,例如在广播甚至单播给有限的听众而不是例如存储在蓝光光盘上时,都认为IDR图像更为重要),但是通常,参与视频处理链的至少一个主要参与者会发现,主HDR图像的完美可重建性很重要(这与盲目创建从IDR开始看到的某种更高的动态范围尝试不同)。 最后,虽然我们看到,为了在不需要重新设计和重新部署ETSI2解码器的情况下进行服务, 在下文中能够看到,根据各种发明人的不同见解,能够以若干方式来完成任务,这取决于到底想要哪种系统,以及哪个想要的约束条件放松更多以及哪个想要的约束条件放松更少(也考虑到了这样的具体实际技术因素,例如,各种选择需要多少个周期或晶体管,这可能使一些选择比其他选择更为可取,但对于本专利申请,我们无需深入探讨那些细节)。 然而,所有方法都使用一些基本原理。图8总结了至少两种解决方案。接收器接收IDR图像(在某种情况下应可重建成Mster HDR图像,在该示例中,PB_C=4000尼特),并且它们还具有函数F_I2s。但是它们必须以某种方式找到针对每个IDR亮度的函数F_??来计算所需的对应的归一化的(因此是绝对的)主HDR亮度(它将完全按原样重建该主HDR,但从未传输过(一幅或多幅)图像)。能够构建一种新颖的SLHDR2PLUS解码器颜色变换系统,该系统能够确定所需的函数(但至少根据其处理IC或软件内核仍然如图4所示,其亮度处理轨迹及其具体情况(至少一些子单元被采用)以及色度处理轨迹),或者也能够尝试将所有的智能功能都纳入编码器中,使得能够使用标准ETSI2编码颜色变换方法(除了新颖性是它通过接收第二所需峰值亮度PB_C_H50的元数据来重建4000尼特原始HDR的新程序,它通常涉及加载适当的全部或部分亮度和色度处理LUT),该标准ETSI2编码颜色变换方法被设置为外推而不是显示适应针对比PB_IDR值更小的PB_D的图像。但是,这两种方法及其实施例都将需要一些通用的新技术部件,并且属于通用的SLHDR2PLUS新编码理念。 从图9所示的900种通用IDR编码器的SLHDR2PLUS编码器的基本结构(将在下面进行更详细的说明),可以看到与普通HDR编码(特别是ETSI2 HDR视频编码)的区别:现在,在元数据中共同编码了两个峰值明亮度,即,首先是“正常”峰值明亮度(其应被称为信道峰值明亮度PB_CH,即,接收到的IDR图像的峰值明亮度,无论对其使用何种技术,即,任何峰值明亮度水平对于内容创建者、所有者或代码变换器而言看起来都是最优的,并且无论使用什么数学技术方法来计算IDR像素亮度),都指示所传送和以后接收的视频(即,(一幅或多幅)IDR图像)的最大可编码亮度是多少[这是普通ETSI2解码器会看到的内容,而忽略了所有其他新颖的方法]。但是,其次,现在还存在(一幅或多幅)原始主HDR图像的峰值明亮度,即,内容峰值明亮度PB_C_H50(例如,5000尼特)。在一些实施例中,第二PB_C_H50可能在IDR图像创建之前的几个月(当创建主HDR图像时(例如基于相机的捕获动作,在计算机中等))就已经被指定,并且PB_CH可以在信道编码时通过许多不同的可能方式被设置为进入编码器900的外部输入(例如,有线电视运营商可能在存储器中设置了固定值,可以每年更新一次以反映其客户的HDR显示器的当前平均状态,或者还可以考虑视频的至少一幅图像或其相关联的元数据,甚至可能包括专门用于指导以后的IDR重新编码的元数据等的一些亮度或其他图像细节来计算优化的PB_CH)。共同传送的(单个)峰值明亮度对于HDR编码非常有用,至少对于ETSI2系统而言非常有用(在当时只有它们需要的东西才被看到,即,接收到的图像的“所述”峰值明亮度),但是鉴于旧版ETSI2解码器的完全透明的可用性,可以说这些解码器需要PB_CH(否则它们将无法执行其正常的显示自适应性计算)。另一方面,PB_C_H50有必要能够完全计算出图8的F_??函数,并且最终利用该函数根据接收到的IDR图像来获得所需的主HDR重建图像。 这样就可以立即示出旧版ETSI2视频编码数据流之间的差异,而旧版ETSI2解码器将不会知道该额外的元数据,而只会忽略它,因为ETSI2解码器无需确定任何PB_C高于它们在元数据中接收到的PB_C_H的图像,PB_C_H指示接收到的图像中可能最明亮的亮度(因为根据纯ETSI2理念,接收到的图像始终是质量最好的图像,实际上是内容创建者创建的质量最高的主HDR图像)。但是如图11所示,通用SLHDR2PLUS解码器不仅会接收和读取PB_C_H50值,而且还会使用它来重建REC_M_HDR图像,这几乎是对内容创建者创建的主HDR图像的完美重建(实际上,这样的解码器将使用PB_C_H50值根据接收到的(一个或多个)F_I2sCI函数来计算所需的(一个或多个)F_??函数)。该解码器还可以有利地输出较低的PB_C图像(例如,400尼特PB_C MDR_300图像),但是对于这样的低于PB_CH的较低PB_C的图像,可以选择使用标准ETSI2计算核心,也可以在新的SLHDR2PLUS计算核心的一个实施例中进行计算(但要准确地重建具有比PB_CH更高的PB的图像,肯定需要新的见解,因为利用ETSI2技术无法轻松做到这一点)。 因此,通过一种高动态范围视频编码器(900)来实现要由新技术解决的任务,所述高动态范围视频编码器被布置为经由图像输入部(920)接收具有第一最大像素亮度(PB_C_H50)的输入高动态范围图像(MsterHDR),针对所述第一最大像素亮度,所述编码器具有第一元数据输入部(922),并且所述高动态范围视频编码器被布置为经由第二元数据输入部(921)接收主亮度映射函数(FL_50t1),所述亮度映射函数定义所述输入高动态范围图像的归一化亮度与具有优选等于100尼特的LDR最大像素亮度的对应的低动态范围图像(Im_LDR)的归一化亮度之间的关系,所述编码器的特征在于,所述编码器还包括第三元数据输入部(923),以接收第二最大像素亮度(PB_CH),并且所述编码器的特征还在于,其包括: HDR函数生成单元(901),其被布置为应用标准化算法以将所述主亮度映射函数(FL_50t1)变换成经适应的亮度映射函数(F_H2hCI),所述经适应的亮度映射函数将所述输入高动态范围图像的归一化亮度与中间动态范围图像(IDR)的归一化亮度进行关联,所述中间动态范围图像的特征在于具有等于所述第二最大像素亮度(PB_CH)的最大可能亮度; IDR图像计算单元(902),其被布置为将所述经适应的亮度映射函数(F_H2hCI)应用于所述输入高动态范围图像(MsterHDR)的像素的亮度,以获得作为所述单元的输出的所述中间动态范围图像(IDR)的像素的亮度;以及 IDR映射函数生成器(903),其被布置为基于所述主亮度映射函数(FL_50t1)和所述经适应的亮度映射函数(F_H2hCI)来导出信道亮度映射函数(F_I2sCI),所述信道亮度映射函数定义:当给定所述中间动态范围图像(IDR)的相应的归一化亮度作为输入时,所述低动态范围图像(Im_LDR)的相应的归一化亮度作为输出,所述中间动态范围图像的相应的归一化亮度进而对应于所述输入高动态范围图像(MsterHDR)的相应亮度;所述编码器的特征还在于具有: 图像输出部(930),其用于输出所述中间动态范围图像(IDR); 第一元数据输出部(932),其用于输出所述第二最大像素亮度(PB_CH); 第二元数据输出部(931),其用于输出所述信道亮度映射函数(F_I2sCI);以及 第三元数据输出部(933),其用于输出所述第一最大像素亮度(PB_C_H50)。 首先请注意,虽然我们在概念上为当前编码器的每个所需数据项示出了一个单独的输入,但实际上,熟练的读者会认识到,取决于视频输入技术能够处理的内容,这些输入中的一个或多个输入(并且输出是类似情况)可以是相同的(例如,某些较早的HDMI图像输入无法处理动态变化——即,对于每个时间上连续的视频图像可能有所不同——的主亮度映射函数(FL_50t1),在这种情况下,数据可以通过例如Wi-Fi连接等以可同步的方式传送)。各种输入数据的输入方式也取决于它们被生成的位置,即,编码器连接在哪个其它系统中或者与哪个其它系统连接(这可以取决于在相机捕获事件的同时是否需要实时编码,或者某个视频通信系统(例如,线缆分配系统)的后续编码,该线缆分配系统在任何稍后的时间会从原始内容创建者那里接收所有数据,以便在该特定线缆系统的局限或愿望的情况下对其进行最优分配等)。 可能没有预期的限制,即,没有假定MsterHDR图像在不久之前已经由人类颜色分级者使用计算机上的颜色分级软件进行了分级,并且他没有已经定义了FL_50t1函数,该FL_50t1函数定义了对应的较低动态范围图像,通常为100尼特SDR图像(虽然当前经重新分级的图像频谱的最低端按标准协议是100尼特PB_C图像,因此似乎不太可能改变,该三重图像(即,LDR图像)的这样的最低图像在未来实施例中可以具有LDR最大亮度,其并非精确的100尼特,但可能是100尼特的k倍(例如,k优选高达3),即,在本系统的该实施例实现方式中的LDR最大亮度为300尼特),其对应于MsterHDR图像(在考虑到相当低的亮度动态范围的情况下,该SDR图像优选看起来与MsterHDR图像尽可能相似),这通常至少合理地传送了根据需要在视觉上最优地讲述例如电影故事所需的外观(不同的视频应用也可能具有不同的愿望,例如,不同的颜色标准,可能涉及FL_50t1函数的不同技术限制)。 PB_CH值与其他元数据有些不同,因为它实际上是针对中间动态范围编码的设置。因此,它可能来自也可能不是来自分级器。例如对于特定的视频编码系统(例如,卫星广播系统),它可以是固定值,例如可以是从被附接到编码器或者在编码器中的固定存储器中取回的。在基于互联网的传递中,该PB_CH值可能是由为其生成IDR图像的最终客户作为愿望而传送的。例如,具有质量较差的移动显示器的客户可能仅要求由互联网的另一侧的服务器(例如,视频点播公司的服务器)计算500尼特的PB_IDR图像,而其他一些客户可能需要1000尼特的PB_IDR版本,并且在这样的情况下,请求的PB_CH=PB_IDR值将被输入到编码器中。 因此,虽然在编码侧有最高质量(实际上是最高PB_C)的MsterHDR图像,但这不是接收器(互补解码器)将接收的图像,而是IDR图像(它们将需要通过计算REC_M_HDR图像来紧密重建MsterHDR图像)。最好通过将所有内容均公式化为归一化的0.0-1.0亮度来实现这些技术。实际上,当我们谈论亮度映射函数时,它实际上也等同于亮度映射函数(因为亮度与其对应亮度(例如,通常要显示的亮度)之间的关系),但是从技术上严格来讲,我们的计算优选能利用亮度映射函数来工作,并且优选利用心理视觉均匀亮度定义,这能够通过Philips v函数来计算(参见公式1和公式2)。 如上面所解释的,我们处理HDR视频的方法(具体地不仅涉及对具有不同动态范围(特别是峰值明亮度)的单幅或两幅不同重新分级的图像进行编码,而且还涉及对应的不同DR重新分级的整个频谱)是对各种可能的标准化亮度进行关联,其中,至少两幅这样的可相关图像的像素能够使例如image_1中的0.2对应于image_2中的0.4,依此类推。这就是亮度映射函数在一种情况(即,一种物类重新分级)与任何其他选定的不同情况之间定义的内容。 在使用标准化算法的情况下,我们意味着必须以某种固定的方式将可能函数的第一集合(其能够具有许多不同的形状和定义)与对应函数的第二集合进行关联。即,这仅意味着在某种通信技术(或甚至全部通信技术)中,编码器和解码器的设计者定义了一种方法,该方法唯一地指定如何将任何输入函数的形状(通常在被归一化为1.0的轴上)变换成输出函数的形状。能够有多种这样的算法,因此原则上编解码器设计者可以决定是否要向解码器等传送任何这样的算法的订单号(例如,商定的算法编号3),但通常不需要这样的复杂性,因为我们的方法只需预先约定一种固定的标准化函数变换算法(例如,支持下面的数学运算中的一种固定的标准化函数变换算法)即可完美且最简单地工作。 为了使读者快速理解,以下将是这样的算法的简单示例。假设输入函数是幂函数:power(x_in;P),则该算法可以导出对应的函数power(x_in;P-1)。通过逆转,也可以在接收到对应函数时(通过+1算法)再次重新导出原函数。 不应误解的是,标准化算法本身通常并不传送给接收器,只有结果 还应仔细注意以下事实:通常 我们在 对于这三种情况中的任一种以及所有其他百万种情况,单元901将确定输出函数。该算法的特性是,该函数的形状类似,但更接近对角线(因为如果原始函数表示例如X尼特PB_C图像与对应的(在能力允许范围内合理类似的外观)Y尼特PB_C2图像(假设是100尼特图像)之间的重新分级,然后从X尼特PB_C图像重新分级为Z尼特PB_C图像(其中,Z例如在X与Y之间的一半处)将涉及类似的重新分级,但程度较小;如果要从X到X的映射,则将具有身份变换,其对应于对角线)。 能够通过多种方式来定义这样的标准化算法,以唯一地获得与相应的输入函数相对应的输出F_H2hCI_1、F_H2hCI_2和F_H2hCI_3亮度映射函数,并且除了必须有一些如下表现的可用的标准化算法这一事实,其细节并不能真正构成本发明的基本要素。例如,通常可以定义一些度量(量化所选择的PB_C_CH IDR图像可编码的最大亮度上的PB_C_CH相关性),该度量能够用于以某种方式(例如,大致等速或非均匀等)将用于任何归一化输入亮度的输入函数的点y(x)移至对角线中。虽然也能够垂直移动,但如下所述的一种工作良好的优选实施例将这样的函数点在与对角线正交的轨迹上从[0,0]移到[1,1]。 所述高动态范围视频编码器(900)的有利实施例的特征在于,所述HDR函数生成单元(901)的所述标准化算法向所述主亮度映射函数(FL_50t1)的对角线应用压缩以获得所述经适应的亮度映射函数(F_H2hCI),所述压缩涉及利用缩放因子来缩放所述函数的所有输出亮度值,所述缩放因子取决于所述第一最大像素亮度(PB_C_H50)和所述第二最大像素亮度(PB_CH)。 可能存在各种定义的F_L50t1函数(下面的para定义是一个示例),并且可以通过标准化算法以各种方式对这些函数进行缩放,但是通常会涉及缩放,并且该缩放取决于起始PB_C_H50和目标值PB_CH=PB_IDR。这能够通过不同的度量来完成,但是申请人多年来发现,基于心理视觉均匀值和峰值明亮度的比率来定义缩放因子非常方便,其方法是通过v函数来发送缩放因子,即,基于与两个峰值明亮度(可能还有SDR图像的第三PB_C)相对应的v函数亮度输出来定义缩放因子。 所述高动态范围视频编码器(900)的有利实施例包括限制器(1804),所述限制器被布置为针对包括最明亮的归一化亮度等于1.0的归一化亮度的子范围重新确定所述信道亮度映射函数(F_I2sCI)的斜率。对于许多实施例而言,这不是必需的,但是对于处理在ETSI2中标准化的para的高光增益的编码HG_COD的特定选择来说是一种特别有用的方式,从而能用于与该特定实施例的全部内容完全兼容。 实际上,通过能够重新推导所有需要的信息(即使实际上没有传送这样的信息)来撤销所有编码处理的编码器的对应镜像技术是一种高动态范围视频解码器(1100),所述高动态范围视频解码器具有用于接收中间动态范围图像(IDR)的图像输入部(1110),所述中间动态范围图像具有第二最大像素亮度(PB_CH),所述第二最大像素亮度以优选为0.8或更小的乘法因子低于主高动态范围图像(MsterHDR)的第一最大像素亮度(PB_C_H50),所述第二最大像素亮度(PB_CH)是经由第二元数据输入部(1112)接收的,所述解码器具有用于接收亮度映射函数(F_I2sCI)的第一元数据输入部(1111),所述亮度映射函数定义所述中间动态范围图像(IDR)的所有可能的归一化亮度到LDR最大像素亮度低动态范围图像(Im_LDR)的对应归一化亮度的变换,所述解码器的特征在于,其具有用于接收所述第一最大像素亮度(PB_C_H50)的第三元数据输入部(1113),并且所述解码器包括: 亮度函数确定单元(1104),其被布置为应用标准化算法以将所述亮度映射函数(F_I2sCI)变换成解码亮度映射函数(F_ENCINV_H2I),所述解码亮度映射函数针对所述中间动态范围图像(IDR)的像素的任何可能的输入归一化亮度将所述主高动态范围图像(MsterHDR)的对应的归一化HDR亮度指定为输出,所述标准化算法使用所述第一最大像素亮度(PB_C_H50)和所述第二最大像素亮度(PB_CH)的值;以及 颜色变换器(1102),其被布置为将所述解码亮度映射函数(F_ENCINV_H2I)相继应用于所述中间动态范围图像(IDR)的输入归一化亮度,以获得重建主HDR图像(REC_M_HDR)的像素的归一化重建亮度(L_RHDR);所述解码器还具有用于输出所述重建主HDR图像(REC_M_HDR)的图像输出部(1120)。LDR最大亮度再次优选是标准化的100尼特SDR亮度,但是也可以设想部署类似工作的未来变体,其中,重新分级的图像频谱的低(即,最低)动态范围(即,最大亮度)图像及其通信是例如200尼特的图像。 因此,MsterHDR图像实际上并不是作为图像而接收的,但是它仍然是由接收到的数据唯一定义的(因此,虽然正式地,该MsterHDR图像是存在于对应匹配编码器位置处的对应主图像,而解码器仅根据接收到的IDR图像重建几乎相同的REC_M_HDR图像,即使在任何解码位置处,各种功能也确实定义了MsterHDR图像属性)。不同的客户可以选择PB_C_H50和PB_IDR的各种值。内容创建者可能会出于各种原因选择第一个,例如因为他购买了4000尼特分级显示器,或者因为他喜欢给予其主内容某种最佳质量(例如,以不低于10000尼特在PB_C处创建/定义的所有内容),或者因为至少根据创作者的观点(例如,壮观的焰火表演、灯光表演或流行音乐会可能具有比例如合理均匀照明的网球比赛或新闻阅读更高的PB_C_H50),某些类型的图像要求某种质量(即,PB_C_H50)。 可以基于不同的技术考虑来选择PB_IDR值,例如,视频通信公司的典型客户的估值,并且如上所述,通信公司可能经常与创建公司不同。 通常,使重新分级的IDR内容在PB_C中的差异小于至少20%(即,因子0.8,虽然原则上PB_C的值可以更近,例如,0.9),这没有太大意义,然而,但是,更常见的是,PB_C之间将存在一个乘法因子2或更大(例如,以低于1000尼特(例如,800、700或600尼特,通常超过500尼特)的某个PB_CH发送的2000尼特主材料)。解码站点处的PB_C_H50通常类似于其他元数据,特别是PB_CH值,因此通常将其作为与视频数据相关联的元数据来接收,例如,非限制性SEI消息或视频通信协议上的特殊分组等(根据一种逻辑数据结构还是几种结构,根据最适合每种标准化或非标准视频通信协议的内容而定,这是提出的新技术的小细节)。由于解码器使用标准化算法来最终生成IDR图像及其符合ETSI2的元数据,因此能够为解码器以及在解码器内部设计对应的标准化算法,以最终确定用于重建REC_M_HDR图像像素亮度所需的F_ENCINV_H2I亮度映射函数(然后对该图像做进一步处理,将其显示为典型应用,但例如将其存储在硬盘记录器上的是另一应用)。 所述高动态范围视频解码器(1100)的有趣实施例的特征在于,所述亮度函数确定单元(1104)的所述标准化算法计算取决于所述第一最大像素亮度(PB_C_H50)和所述第二最大像素亮度(PB_CH)的缩放因子。如前所述,可以以各种方式对应地完成该操作,但是在基于心理视觉均匀的v函数的缩放因子在实践中非常有用,其可以很好地控制HDR图像,并且既可以满足各种甚至关键的艺术需求,同时又可以控制技术复杂性。 所述高动态范围视频解码器(1100)的有用实施例具有亮度映射函数(F_I2sCI),所述亮度映射函数由亮度映射来定义,所述亮度映射包括:具有第一斜率(SG_gr)的第一线性段,所述第一线性段用于深色归一化亮度的范围;具有第二斜率(HG_gr)的第二线性段,所述第二线性段用于明亮归一化亮度的范围;以及抛物线形段,所述抛物线形段用于介于所述两个范围之间的亮度。对应的数学还涉及求解二阶方程以获得用于进行重建所需的信道自适应的高光增益。这是一种有用的一阶HDR重新分级方法,其适用于像素颜色控制需求不高的市场,例如现实生活中的电视广播(与例如有时在大片电影中涉及的详细颜色控制形成对比)。如下所述,在某些进一步划分的实施例中,这可以是完全定义F_L50t1函数的唯一部件以及所有派生函数(例如,与IDR图像一起传送的函数:F_I2S),但也可以是该重新分级函数的部分定义,例如定义总重新分级以及可定制的函数,如图4所示。 所述高动态范围视频解码器(1100)的有用实施例具有其颜色变换器(1102),所述颜色变换器被布置为计算具有最大像素亮度(PB_MDR)的中等动态范围图像(MDR_300)的像素亮度,所述最大像素亮度不等于100尼特的值、所述第一最大像素亮度(PB_C_H50)的值和所述第二最大像素亮度(PB_CH)的值,并且所述解码器具有用于输出所述中等动态范围图像(MDR_300)的图像输出部(1122)。虽然对于某些细分市场中的某些装置可能只需要对REC_M_HDR图像进行重建(可能对重建的图像应用各种其他变换),但是这在以下情况下将是有利的:我们的SLHDR2PLUS解码器的某些实施例能够除了仅重建主HDR图像外,还可以计算具有其他PB_C的对应图像,例如能直接在具有任何PB_D的某种显示器上显示的MDR图像。这也将(例如以图16阐明的方式或任何等效方式)使用本发明的数学原理。 所述高动态范围视频解码器(1100)的另一有用实施例具有用于输出亮度映射函数(F_L_subsq)的元数据输出部(1121),所述亮度映射函数针对重建主HDR图像(REC_M_HDR)或作为替代的中等动态范围图像(MDR_300)的所有归一化亮度定义具有另一最大像素亮度的图像的对应亮度,所述另一最大像素亮度优选为100尼特或者高于或低于所述重建主HDR图像(REC_M_HDR)或所述作为替代的中等动态范围图像(MDR_300)的相应最大亮度值的值。可能的是,接收到的IDR图像被重建成REC_M_HDR图像,而不是被直接显示在哑屏显示器上,而是被发送到某些进行进一步的色度计算的系统。然后,有用的是,解码器实施例还能够输出合适的亮度映射函数,即,典型地是指与正在输出的图像相关联的亮度映射函数,例如,REC_M_HDR图像(通常表示所定义的函数的输入归一化亮度是共同输出的图像的归一化亮度,并且该函数的输出是某幅参考图像(通常是SDR图像)的归一化亮度,其被标准化为PB_C=100尼特,这通常是HDR时代所希望的最低质量,但这并不排除有人可能希望将具有PB_C的本教导应用于定义共同传送的函数的输出纵坐标,例如,80或50尼特)。 为装置制定的任何内容(或装置的部分或集合)都能够被等效地制定为信号,包括图像的存储器产品(例如,蓝光光盘)、方法等,例如: 一种对接收到的具有第一最大像素亮度(PB_C_H50)的输入高动态范围图像(MsterHDR)进行高动态范围视频编码的方法,所述方法包括:接收主亮度映射函数(FL_50t1),所述主亮度映射函数定义所述输入高动态范围图像的归一化亮度与具有优选具有等于100尼特的值的LDR最大像素亮度的对应低动态范围图像(Im_LDR)的归一化亮度之间的关系,所述方法的特征在于,所述编码还包括接收第二最大像素亮度(PB_CH),并且所述编码包括: 应用标准化算法将所述主亮度映射函数(FL_50t1)变换成经适应的亮度映射函数(F_H2hCI),所述经适应的亮度映射函数将所述输入高动态范围图像的归一化亮度与中间动态范围图像(IDR)的归一化亮度进行关联,所述中间动态范围图像的特征在于,具有等于所述第二最大像素亮度(PB_CH)的最大可能亮度; 将所述经适应的亮度映射函数(F_H2hCI)应用于所述输入高动态范围图像(MsterHDR)的像素的亮度,以获得所述中间动态范围图像(IDR)的像素的亮度; 基于所述主亮度映射函数(FL_50t1)和所述经适应的亮度映射函数(F_H2hCI)来导出信道亮度映射函数(F_I2sCI),所述信道亮度映射函数定义:当给定所述中间动态范围图像(IDR)的相应的归一化亮度作为输入时,所述低动态范围图像(Im_LDR)的相应的归一化亮度作为输出,所述中间动态范围图像的相应的归一化亮度进而对应于所述输入高动态范围图像(MsterHDR)的相应亮度; 输出所述中间动态范围图像(IDR);并且 输出所述第二最大像素亮度(PB_CH)、所述信道亮度映射函数(F_I2sCI)和所述第一最大像素亮度(PB_C_H50)。 或者,一种对接收到的中间动态范围图像(IDR)进行高动态范围视频解码的方法,所述图像具有第二最大像素亮度(PB_CH),所述第二最大像素亮度以优选为0.8或更小的乘法因子低于主高动态范围图像(MsterHDR)的第一最大像素亮度(PB_C_H50),所述第二最大像素亮度(PB_CH)被接收作为所述中间动态范围图像的元数据,所述解码方法还在元数据中接收亮度映射函数(F_I2sCI),所述亮度映射函数定义所述中间动态范围图像(IDR)的所有可能的归一化亮度到LDR最大像素亮度低动态范围图像(Im_LDR)的对应归一化亮度的变换,并且所述解码方法的特征在于,所述解码方法接收所述第一最大像素亮度(PB_C_H50),并且所述解码方法的特征在于,所述解码方法包括: 应用标准化算法将所述亮度映射函数(F_I2sCI)变换成解码亮度映射函数(F_ENCINV_H2I),所述解码亮度映射函数针对所述中间动态范围图像(IDR)的像素的任何可能的输入归一化亮度指定所述主高动态范围图像(MsterHDR)的对应的归一化HDR亮度作为输出,所述标准化算法使用所述第一最大像素亮度(PB_C_H50)和所述第二最大像素亮度(PB_CH)的值; 将所述解码亮度映射函数(F_ENCINV_H2I)应用于所述中间动态范围图像(IDR)的归一化亮度,以获得重建主HDR图像(REC_M_HDR)的像素的归一化重建亮度(L_RHDR);并且 输出所述重建主HDR图像(REC_M_HDR)。 图25很好地图示了当前的SLHDR2PLUS编码的HDR图像信号(2501),即,例如像素颜色2502的4k×2k矩阵(YCbCr或能够由预处理器[未示出]通过已知比色方程计算为所需的YCbCr表示的任何颜色表示),以及必要的元数据:亮度映射函数F_I2sCI和两个PB_C值。在该HDR图像信号被传送到标准SLHDR2解码器2510并由其接收的情况下,由于F_I2sCI是正常函数,因此该解码器将期望从其接收到的图像峰值明亮度(PB_CH,在该示例中为800尼特)重新分级为任何较低的峰值明亮度,能够通过显示优化来计算Im350,从而为例如相连的350尼特介质动态范围显示进行显示优化(这并不是本应用的关键方面,这只能作为可以用于新颖的编解码器框架的初始设计标准之一,并且能够用于显示优化(例如,如在US20160307602中公开的方法或类似方法)。但是,现在还可以使任何人拥有SLHDR2PLUS解码器2520,例如由决定引入该服务的有线电视运营商新部署的SLHDR2PLUS解码器2520等,能够使PB_C的其他图像高于PB_CH值,例如,重建5000尼特示例主HDR图像(即,输出图像Im5000)或PB_C_H50与PB_CH之间,甚至可能高于PB_C_H50的任何显示自适应图像,例如,Im1250显示自适应图像等。 关于色度处理的解码器的有趣实施例特别是: 一种高动态范围视频编码器(900),其中,所述亮度函数确定单元(1104)还被布置为根据信道饱和度增强规格曲线(2804)和所述信道亮度映射函数(F_I2sCI)来确定原始的饱和度增强规格曲线(2801)。 一种高动态范围视频编码器(900),其中,所述原始的饱和度增强规格曲线(2804)还取决于饱和度位置校正函数(FSNL),所述饱和度位置校正函数对应于涉及归一化亮度的值的幂函数的方程。最佳用于此的归一化亮度是相对于(即,通过除以)主HDR图像峰值明亮度PB_C_MHDR(例如,5000尼特)所定义的亮度。 这在编码器侧特别与高动态范围视频编码器(900)相对应,其中,所述HDR函数生成单元(901)被布置为根据原始的饱和度增强规格曲线(2801)和经适应的亮度映射函数(F_H2hCI)来确定饱和度增强规格曲线。或者,与在任何技术装置(例如,客户机顶盒等中或移动电话上的解码集成电路,或外部广播卡车中的产生装置中的编码器IC,或在有线电视运营商处或在顶级内容提供商的服务器或电影院的提供商上运行的最终编码器或代码转换器等)中执行的颜色处理方法相同。 附图说明 参考下文描述的实施方式和实施例并且参考附图,根据本发明的方法和装置的这些方面和其他方面将变得显而易见并且得到阐明,所述附图仅用作非限制性的特定图示,例示了更一般的概念,并且其中的虚线用于指示部件是任选的,非虚线的部件不一定是必不可少的。虚线也能够用于指示那些被解释为必不可少但隐藏在目标内部的元件或者用于指示无形的事物,例如,选择目标/区域(以及如何在显示器上示出目标/区域)。 在附图中: 图1示意性地图示了当将高动态范围图像最优地映射到对应的最优颜色分级并具有相似外观(如在期望和可行的情况下那样,给定第一动态范围DR_1相对于第二动态范围DR_2的差异)较低动态范围图像(例如,峰值明亮度为100尼特的标准动态范围图像)时发生的多种典型颜色变换,在可逆(模式2)的情况下,该映射还将对应于由接收器(解码器)接收的SDR图像的映射,该SDR图像实际上对HDR场景进行编码; 图2示出了用于HDR图像的捕获系统的外观; 图3阐明了例如根据申请人的优选方法来传送HDR图像的可能方式,该HDR图像作为具有特定(不同)峰值明亮度并且处于与通常被定义为亮度映射函数的元数据共同传送亮度映射函数中的一些图像(例如作为旧版可用的SDR图像Im_LDR),这在较高的概念水平上开始为刚接触该技术的读者进行阐明; 图4示出了根据申请人的在ETSI2中标准化的特定方法对HDR图像进行编码的各种进一步细节,需要这些方面来理解下文所写的新颖的SLHDR2PLUS编解码方法的各种教导的各种细节; 图5阐明了在YCbCr色域中的颜色变换(特别是重新分级的亮度变换)是如何工作的; 图6通过解释有用的应用来更详细地阐明我们的可定制曲线的概念; 图7解释了原始主HDR图像的中间动态范围(IDR)编码和通信的基本视图以及不应混淆的中等动态范围图像(MDR)的概念,通常根据接收到的任何图像来计算MDR以优化MDR,从而在可用的显示峰值明亮度PB_D的任何特定显示器(例如,旨在观看接收到的HDR视频的任何终端用户购买的特定HDR电视)上显示; 图8进一步阐明了如何开始解决IDR问题,特别是如何通过解码器以特定的可自动计算方式解决IDR问题,并且特别地,在市场上至少有一些潜在接收内容的解码器是已经能够ETSI2兼容的解码器并且可能无法利用新的SLHDR2PLUS技术轻松升级(例如因为电视或机顶盒的所有者未对其进行升级)的情况下; 图9示出了本申请的新颖的SLHDR2PLUS编码器通常所需的技术零件的一般构造; 图10阐明了由编码器连续推导各种对应的亮度映射函数所涉及的一些基本技术方面,特别是以para亮度映射函数为例进行了阐明; 图11示出了新颖的SLHDR2PLUS解码器的可能的典型高级构造,其遵循以下描述的实现SLHDR2PLUS视频通信的各种可能性的实施例教导中的一些实施例教导; 图12进一步解释了当由内容创建者在其主亮度映射函数中选择的黑色偏移和白色偏移的一些方面,内容创建者的主亮度映射函数根据内容创建者的观点定义了内容创建者的视频内容的重新分级需求; 图13描述了一种优选的固定算法方法的技术原理,该固定算法用于根据对角线缩放原理来导出para的信道自适应版本; 图14阐明了所谓的abcara的para的反曲线的一些方面; 图15详述了SLHDR2PLUS解码器的一些方面; 图16阐明了一种实施显示自适应的有用方式,以计算针对与本申请的新技术SLHDR2PLUS编码原理集成在一起的任何特定PB_D显示器的MDR图像; 图17阐明了黑色偏移(BLO)和白色偏移(WLO)的信道自适应的一些其他方面,以伴随并简化以下数学公式并给出通用的物理技术基本原理; 图18示出了SLHDR2PLUS编码的另一实施例(或者实际上是利用一幅附图阐明的各种实施例组合的若干教导),这是特别有用的,因为编码图像能够由已经部署的标准ETSI2解码器直接解码; 图19阐明了如何针对各种相关的峰值明亮度图像表示(无论是作为输入图像还是作为输出图像)(例如,具有定制曲线的共同规范的IDR图像)确定原始主定制曲线的以由例如电影创作者的分级者根据需要将粗映射的IDR亮度微调为精确的最终SDR亮度的对应版本; 图20在可重新分级图像的频谱上示出了图18的方法的基本技术原理; 图21阐明了超出起始图像的最高值的亮度映射函数(例如,para)的适配的外推法(对应于标绘图中的单位变换或对角线),并且因此还推断出特定选择的para函数形状与对应的abcara之间的关系; 图22示意性地阐明了限制para的高光增益的特定实施例如何在输入归一化亮度与输出归一化亮度之间的亮度重新分级上起作用; 图23示意性地图示了整个HDR通信和处理链,以明确指出视频编码与显示优化之间的差异(前者与图像本身的清晰度有关,而后者仅与仍可自由定制的图像有关,优选考虑到各种可能的完全不同且极富挑战性的HDR场景图像的重新分级需求,在具有特定动态范围能力的任何特定显示器上显示的优化); 图24进一步阐明了标准化函数改变算法将如何工作(它将采用例如由内容创建者的分级者制作的任何输入函数形状以指定应当如何将第一峰值明亮度动态范围的归一化亮度映射到第二峰值明亮度图像表示的归一化亮度)以及针对任何给定的输入函数能够如何针对该输入函数来唯一地计算在不同的、特别是较低的第三峰值明亮度表示与第二峰值明亮度表示之间映射的函数; 图25示意性地图示了当前教导的SLHDR2PLUS视频编码机制和信号如何与旧式SLHDR2解码器很好地兼容,但是为SLHDR2PLUS部署的解码器提供了额外的可能性; 图26以框的形式示意性地总结了下面的所有解码算法,以恢复所有需要的亮度映射函数,以进行所有需要的解码亮度处理,从而从接收到的IDR图像中获得所需的图像; 图27示意性地阐明了一种很好的实用方法,它以数值方式具体获得了可定制曲线的定制版本(如果存在的话);并且 图28阐明了一种实用便利的方法来处理SLHDR2PLUS方法中的像素色度。 具体实施方式 图9总体上示出了新的SLHDR2PLUS编码器900。作为输入,它将获得主HDR图像(例如,5000尼特PB_C图像MsterHDR),而又不想失去一般性,读者能够假定它是在编码时或编码时间前后由人类颜色分级者使用颜色分级软件制作的,例如通过从RAW相机捕获的HDR图像开始(MsterHDR图像已经针对例如典型的夜晚昏暗电视观看环境(即,其平均周围环境亮度等)得到了优化;本技术也能够在其他或可变环境下工作,但是显示自适应问题,而不是创建或编码HDR图像的新方法)。分级器还创建了至少一个不错的亮度降级函数FL_50t1,以将5000尼特的主HDR图像转换为对应的漂亮的SDR图像(即,通常为100尼特的PB_C),并且他的做法是填充他已经在SDR参考监视器上检查了的403、404和405的部分重新分级方面中的部分并且根据色度处理单元451进行了一些良好的颜色调整F_C[Y](其他方法,例如现实事件广播中的其他方法,能够动态地计算出适用的函数的形状,然后可能会有一些导演粗糙地看结果,甚至不看,但是原理是存在好的函数FL_50t1,无论是仅部分单元中的一个函数,还是所有单元一起的总函数等)。 还必须输入该函数FL_50t1作为新颖的编码器900的开始信息。也将输入静态峰值明亮度(对于整个电影或广播)元数据PB_C_H50,因为它将被使用,但也由编码器作为总IDR视频编码信号而输出静态峰值明亮度(IDR+F_I2sCI+PB_CH+PB_C_H50),其中,通常根据某种合适的视频通信标准(例如,HEVC)对图像进行压缩或未压缩,并且能够根据任何可用的或可配置的元数据通信机制(从MPEG SEI消息到专用的互联网分组等)来传送其他元数据)。 HDR函数生成单元901将计算根据Mster HDR图像计算IDR图像所需的HDR到IDR亮度映射函数F_H2hCI,并且将需要选择IDR的PB_CH,我们假定它是从某种其他输入中得到的(例如,可能是由有线电视运营商选择的,并且已被输入到存储器中的某个位置,以供配置软件加载);我们将假设PB_CH等于1000尼特(仅出于阐明目的;通常,该值将比SDR PB_C高出几倍,例如高出4倍,技术方面基于选择的值在实施例细节上有所不同)。
假设分级器定义了某种函数(这里,在说明性示例中,线性-抛物线形-线性函数简称para,申请人根据ETSI标准化编解码器理念使用该函数来第一次对占主导地位的图像区域的明亮度进行非常良好的重新平衡(即,例如,以最明亮的亮度区域的共同控制压缩为代价,在SDR图像中使暗处具有足够的可见性)。 这样的函数通过线性关系将亮度的最暗子范围(L Ln_XDR=SG_gr*Ln_Mster_HDR在(Ln_Mster_HDR (其中,Ln_Mstr_HDR和Ln_XDR分别是输入的主HDR图像的亮度(即,对应像素亮度的心理视觉均匀表示),输入的主HDR图像已被分级器预先分级为最优起始图像,并且Ln_XDR是具有以下几种图像输出亮度的总结:在相同的归一化垂直轴上均示出了不同的动态范围,特别是峰值明亮度PB_C,以解释本发明及其实施例背后的概念)。特别地,当分级器开始为他已经最优分级的Mster_HDR图像重新分级对应的最优SDR图像时,XDR将是SDR种类,并且对应的亮度映射函数形状被示为F_Mt1[我们使用简写符号xty来指示函数从哪个开始的PB_Cx到哪个结束的PB_Cy映射亮度,并且x和y能够一般性地指示图像的PB_C(例如,M表示Master),或者以数值形式指示示例值,然后在其中减去两个零(例如,50表示5000尼特,并且1表示100尼特)]。 类似地,对于高于Lb的输入亮度Ln_Mster_HDR,同样存在可控制的线性关系: Ln_SDR=HG_gr*Ln_Mster_HDR+(1-HG_gr)在(Ln_Mster_HDR>Lb)的情况下 [公式5] 在Ld=mx-WP与Lb=mx+WP之间延伸的para的抛物线部分具有L_XDR=a*x^2+b*x+c的函数定义,其中,能够通过计算曲线从其端点的直线切线的相交点及其横坐标mx(在ETSI1标准中定义;mx=(1-HG)/(SG-HG))来计算系数a、b和c。 以下是本发明的一般思想(并且能够用乘法的观点来解释)。通过应用身份变换(对角线),能够将任何主HDR亮度变换为其自身。如果在重新分级的图像的频谱的末尾创建对应的SDR亮度(XDR=SDR),我们必须获得输出亮度L_SDR=F_Mt1(Ln_M),其中,Ln_M是Ln_Mstr_HDR亮度的某个特定值,则我们也能够将其视为输入亮度的乘法增强L_SDR=b_SDR(Ln_M)*Ln_M。如果现在我们能够定义某个中间函数F_Mt1_ca,则最后的处理是两个函数F_IDRt1(F_Mt1_ca(Ln_Mster_HDR))的连续应用,其中,F_IDRt1将最终亮度映射到任何像素(或目标)的SDR亮度,从已经计算出的IDR像素亮度(从主HDR亮度导出)开始。在乘法方面人们能够说L_SDR=b_IDR*b_ca*Ln_M,其中,两个增强对应于中间函数(或信道自适应函数),而其余的重新分级函数(其恰好是我们将其与IDR图像一起通信来创建符合ETSI2的HDR视频编码的函数)。注意,这些增强因子本身就是Ln_Mster_HDR的函数(或实际上任何可与之相关联的中间亮度)。 现在,如果我们不需要传送任何额外函数(例如,在元数据管理不完善等情况下可能会丢失函数),则非常方便。 因此,这在以下情况下能够是有用的:SLHDR2PLUS理念使用预先约定的固定方式将分级器的F_Mt1函数(即,他希望使用的任意函数形状的机制)变换成与PB_IDR相对应的信道自适应函数(其值通常还根据ETSI2编码方法(如PB_CH)被传送给接收器)。能够表明,然后就不需要在与IDR图像相关联的元数据中共同传送向上分级函数F_H2h,因为它是固定的,并且对于解码器来说是已知的,因此,正如我们确实将显示的(如果PB_C_H50也被传送到接收器),逆F_??可能是根据接收到的F_I2s函数计算出来的。解码器的新颖之处在于这种新的方法可以导出PB_C>PB_IDR的图像。原则上,只要是数学上可逆的,或者至少根据要求可解码的,从主F_Mt1导出F_Mt1_ca函数的任何固定方法都可以,但是希望选择一种执行从HDR到IDR重新分级的物类类别方法(即,导出F_Mt1_ca形状),使得用于导出MDR图像的进一步变形与ETSI2将产生的变形相兼容(原则上ETSI2图像仅在PB_C至100尼特之间标准化,因此可以从对于PB_IDR至100尼特之间的动态范围的所有图像的图像外观(即,所有像素亮度和颜色)的严格近似相等开始,但是也可以尝试将技术约束强加于要获得的解决方案,该技术约束为将图像从接收到的IDR升级到主HDR图像,即,具有由SLHDR2PLUS解码器计算的F_??的图像,其外观与通过要接收例如5000尼特PB_CMster_HDR图像的ETSI2的显示自适应获得的外观相同,以及总亮度重新映射函数F_Mt1。 我们首先解释能够如何设计这种优选的信道自适应(即,在图9中计算的F_Mt1_ca或F_H2hCI的计算结果;以及对应的(一幅或多幅)IDR图像),这对于SLHDR2PLUS的若干方法/实施例是有用的。 图12a示出了由分级器(或自动机)最优选择的白色水平偏移WLO_gr,并且如果可用,还示出了黑色水平偏移(BLO_gr);对应于图4中的单元403。 目前,我们能够假定这是唯一的动态范围调整,即,根据Mster_HDR起始图像获得SDR图像的亮度映射操作(这种白色上白色和黑色上黑色是相当哑的动态范围转换,其得到劣质的LDR图像,已经没有正确的平均明亮度和平均视觉对比度,更不用说根据需要获得所得到的图像的更高图像质量描述符了,但是作为根据申请人的方法进行重新分级链的第一步骤,它是一个不错的步骤,并且我们首先需要解释该步骤及其信道自适应)。这个想法是,如果在当前要映射的图像(或者如果决定对所有这些时间上连续的图像都使用相同的函数,则为相同场景的视频中的图像的快照)中实际上不存在(虽然有可能编码高达PB_HDR=5000尼特的亮度)高于MXH值的像素亮度,则有必要将最高MXH值映射到SDR中的最大亮度代码(例如,1024,对应于100尼特的亮度)。任何其他映射方法(例如,HDR-白色-SDR-白色映射)都将使所有实际呈现的亮度变得更暗,并且鉴于SDR亮度范围足够小,这并不是最优选择,但需要最优地包含大范围HDR亮度的对应仿真。 然后问题是,是否应当针对IDR图像调整该WLO值(如图12b所示,中间图像中的最明亮的亮度可能已经接近PB_IDR,仍然存在最终偏移以映射到1.0,从而用于SDR重新分级的图像;该映射也能够等效地显示在HDR5000尼特图像的归一化亮度范围上,如ON所示)。在第一种方法中,它不需要(因为在设计用于计算F_Mt1_ca函数的算法方面存在一些自由)进行缩放,但是如果对其进行了缩放,则能够使用以下方法。 需要确定用于这样的水平缩放的缩放因子,以便能够缩放亮度映射函数,在这种情况下是其参数WLO_ca,并且类似地是缩放的BLO_gr(符号BLO_ca)。如果希望该参数与PB_IDR成线性比例关系,则约束是动作完全进行,即,当PB_IDR=PB_SDR时,偏移量具有其最大范围BLO_gr。另一方面,对于HDR图像,BLO或WLO应当为零,因为无需进行任何校正,因为我们具有用于将5000尼特Mster_HDR映射到Mster_HDR的身份变换。 因此,能够制定这样一种参数定义 WLO_ca=scaleHor*WLO_gr (0<=ScaleHor<=1) BLO_ca=scaleHor*BLO_gr [公式6] 然后问题是如何定义ScaleHor。 图12b示出了沿着水平轴组织的不同动态范围(更具体为不同PB_C图像)的频谱。它们沿着每幅图像的峰值明亮度PB_C的可感知位置进行定位。因此,我们将它们放置在横坐标位置(即,v(PB_C))上,其中,v是函数公式1,具有用于参数L_in的值PB_C,并且具有公式2的值RHO,其是针对被分级的Mster_HDR图像的峰值明亮度计算得到的(例如,对于5000尼特PB_C Mster_HDR图像,RHO为25)。如果纵坐标轴也根据v函数(在垂直轴上)将其亮度L参数化,并且RHO=25,则PB_C很好地沿着一条直线,并且能够在该框架中进行定义和计算。例如,我们能够将任何中间图像的峰值明亮度PB_C的亮度投影到主(5000尼特)亮度轴上。我们使用的符号是“P_I1oI2”,表示当在图像I2的亮度范围上表示时,经由应用图像I1的峰值明亮度(它是正常亮度)的v函数所对应的亮度值。因此,例如,P_IoH是在Mster_HDR亮度范围上选择的IDR图像的峰值明亮度的亮度,并且P_SoH为100尼特的亮度(注意,这个范围上的1.0对应于Mster_HDR图像的PB_C,因此例如100尼特的那个位置(例如,0.5)将根据所选的Mster-HDR图像表示而变化,这就是为什么公式1和2是RHO参数化的曲线家族的原因)。 针对ScaleHor的合适函数将是从1-P_IoH开始的。PB_IDR减少的程度越多(即,我们选择MsterHDR图像的IDR图像表示越靠右边),该函数的确会增大。并且在P_IoH=1的情况下会产生0,这种情况在选择了5000尼特的IDR图像时会发生(纯粹是对scaleHor方程的理论解释,因为从技术上讲这没有意义)。然而,当IDR=SDR时,该方程不等于1.0,因此我们需要利用因子k对其进行缩放。 如果k=1-P_SoH(与对应于各种IDR位置的变量P_IoH值是固定值相反),则能够验证归一化是正确的,因此: ScaleHor=(1-P_IoH)/(1-P_SoH) [公式7] 确定用于信道转换的正确para(图4,单元404)更加复杂,并在图13中阐明。 在这种情况下,发明人决定在与单位对角线([0,0]-[1,1])正交的对角线方向上进行函数变换。必须在所有函数重新分级的正常Mster_HDR/XDR坐标系表示中以等效的参数化形式对其进行转换。 基本缩放在45度旋转轴系统中进行定义,该45度旋转轴系统将对角线改变为水平轴(图13a)。我们看到函数Fx,其例如是旋转的para。有意义的是,可以通过因子La/K来缩放旋转对角线(即,新的x轴(该dX对应于某个横坐标,即,原始轴系统中的L_Mster_HDR亮度))上一个点的任意值dY,其中,K是函数的完整动作(即,完整的dY值),并且标度dY_ca值在该旋转系统中为(La/K)*dY。 我们定义sc_r=La/K,其中,La=1/P_IoH并且K=1/P_SoH(请注意,能够将I1轴上的I2亮度值重新表示为I2轴上的I1亮度值,特别地,例如,1/P_IoH=P_HoI;例如,如果P_IoH=0.7,则意味着PB_Mstr_HDR将比PB_IDR高1/0.7)。 现在我们需要计算对角线sc_r的等效垂直缩放比例sc*。 这能够通过应用逆向旋转数学运算(实际上是先定义K和La为1.0来代替1.4)来实现,将图13a的表示形式放在图13b的对角线上。这是通过矩阵旋转产生的(对角线系统中的任何x_r、y_r(例如,1、dY)旋转到主表示形式): [x1,y1]=[cos(pi/4)-sin(pi/4);sin(pi/4)cos(pi/4)]*[1,P_HoI=1/La][x2,y2]=[cos(pi/4)-sin(pi/4);sin(pi/4)cos(pi/4)]*[1,P_HoS=1/K][公式8] 应当注意,由于对角线缩放,x坐标和y坐标都将发生变化,但是SG和HG以及任何其他缩放点的变化始终被定义为斜率而不是角度。 从图13b中的(0,0)到表示亮度映射函数的对角缩放点的正方形的线到从(0,0)到作为原始亮度映射函数点的圆的线的旋转(或者反之亦然)能够通过将斜率除以任何固定的横坐标值(例如,a(其中,角度变化对应于归一化缩放因子sc*的垂直变化))来找到: sc*=(y2/x2)/(y1/x1)=[(1+1/K)/(1-1/K)]/[(1+1/La)/(1-1/La)]=[(K+1)/(K-1)]/[(La+1)/(La-1)]=[(La-1)*(K+1)]/[(La+1)*(K-1)] [公式8] 随后,必须计算与完整垂直缩放比例(sc*=1)相对应的实际坐标距离n,并且这能够通过以下操作来实现:认识到由于对角缩放比例mip中涉及的45度角是中点,因此具有在它下面到对角线且在它上面到para的两条线性线段的交点(mx,my)的距离Fd。因此,n=Fd等于mx处的微分斜率SG-1的一半,即,mx*(SG-1)/2。 随后,必须计算偏移的交点(mxca,myca),如下所示: mxca=mx+d=mx+[mx*(SG-1)/2]*(1-sc*)myca=my-d=SG*mx-(mxca-mx)=-mxca+mx*(SG+1) [公式9] 利用新点的位置,最终能够计算出信道自适应的阴影增益(SG_ca,参见图10)和信道自适应的高光增益HG_ca: SG_ca=myca/mxcaHG_ca=(myca-1)/(mxca-1) [公式10] 最后,对于抛物线中间部分,有若干方法/实施例。 一种方法在实践中会产生很好的视觉效果,这种方法是WP_ca=WP_gr,其中,WP_gr是由内容创建者的分级器或自动机优化的抛物线形段的原始宽度,从而主HDR和主SDR图像与针对信道自适应的para函数的宽度WP_ca相关。另一种方法是定义WP_ca=v(abs(sc*),100)*WP_gr,其中,v函数再次由上面的公式1和2定义。 有了这项可用技术,就能够使用它来为SLHDR2PLUS定义合适的IDR定义。 返回图10,上述公式定义了针对例如选定的1000尼特PB_IDR如何能够唯一地定义函数F_Mt1_ca,从例如5000尼特主HDR图像开始。如果该函数是由HDR函数生成单元901确定的,则能够将其作为F_H2hCI而输出,并作为输入而发送给IDR图像计算单元902。该单元将将该函数应用于它所接收的作为图像输入的MsterHDR图像的所有像素亮度[L_IDR=F_H2hCI(L_MsterHDR)=F_Mt1_ca(L_MsterHDR)],以获得对应的IDR图像像素亮度,并且它将输出IDR图像。 现在的问题仍然是将哪种亮度映射函数添加到IDR图像中的元数据中,以使其看起来像是正常ETSI2图像(即,使得任何旧式ETSI2解码器都能够正常解码它,从而产生本来外观的SDR图像或任何MDR图像)。 能够如下定义该次级IDR亮度映射函数F_I2sCI(其将也是para)(并且它将由IDR映射函数生成器903来计算)。能够将IDR图像SG_IDR的阴影增益视为已经从Mster_HDR转到IDR图像后的剩余乘数(或斜率)(即,从IDR图像开始获得SDR图像的剩余相对增亮): Y_out(x_in)=SG_gr*x_in;=F_I2sCI(L_IDR=SG_ca*x_in) 还已知将最暗像素的相同para线性段映射应用于新的IDR亮度输入: Y_out=SG_IDR*L_IDR 因此: SG_gr=SG_IDR*SG_ca [公式11] (例如,令输入为x_in=L_Mster_HDR=0.2,该输入从对角线映射到L_IDR=0.3=(0.3/0.2)*x_in,最后映射到Y_out=0.4=k*0.3,其中,k=0.4/0.3;Y_out=SG_gr*0.2=(0.4)*0.2=(0.4/0.3)*(0.3/0.2)*0.2)。 因此,根据公式11,遵循计算所需的SG_IDR的方法(假设我们如上所述使用固定方法来确定SG_ca): SG_IDR=SG_gr/SG_ca [公式12] 类似地: HG_IDR=HG_gr/HG_ca [公式13] 其中,HG_gr再次是由内容创建者确定的将主SDR图像外观与主HDR图像外观(即,其亮度分布)进行关联的最优高光增益,而HG_ca是与原始高光增益HG_gr相对应的信道自适应的高光增益。 注意,能够确定与预期的简单阴影增益有关的基本阴影增益调整,该简单阴影增益来自SDR图像和IDR图像之间的峰值明亮度差异,如:ShadBst=SG_IDR/P_IoS。如上所述,P_IoS是当在SDR图像的归一化亮度轴上表示亮度时IDR图像的最大可编码亮度,即,例如,7.0。 请注意,在一些实际的实施例中,高光增益不能大于预定义的数值(以ETSI标准编码高光增益的方式),在这种情况下,需要对高光增益进行进一步的重新计算(请参见下文),但是这并非对所有实施例都是必需的。例如,这能够被实现为: 如果HG_IDR>KLIM,则HG_IDR_adj=KLIM [公式14] 其中,KLIM优选等于0.5。 实际上,假设分级器使HG_gr接近最大值0.5,并且对应的HG_ca(作为较软的映射,其HG_ca应当更接近对角线,即,大于HG_gr)为例如0.75,则发现除数为0.67,其高于最大值,能够根据标准化的纯ETSI2 HDR视频信号来传送它。解决方案是例如重新定义较小的HG_gr,使得HG_IDR不会高于标准最大值0.5。这再次需要考虑所有重新分级方面的大量计算,如下所示。另一种选择是通过将HG_IDR限制为0.5并同时传送确切的非限制HG_IDR作为额外元数据来使IDR+元数据信号一致。HG_gr通常取决于Mster_HDR图像的PB_C,并且还取决于图像中存在哪种类型的图像目标(例如,明亮的彩色目标,其重要程度不足以对其亮度进行过多压缩,这是靠近强大太阳的明亮行星的图像的一个极端示例),其等级具有很高的L_Mster_HDR亮度值和极少的暗值)。HG_ca通常将特别取决于所选择的PB_IDR与PB_Mster_HDR的接近程度。 此外,假设WP_IDR=WP_gr [公式15] 如上所述,其他实施例是可能的,但是为了以更容易的方式阐明原理,我们现在做出该假设。 利用公式6,计算了黑色水平偏移和白色水平偏移的适当的信道自适应值(如果内容创建者定义了任何这样的偏移的话)。现在保留如何(通过IDR视频编码器)计算BLO_IDR和WLO_IDR的对应值。 首先以一种编码值glim的优选方式计算: glim={log[1+(rhoSDR-1)*power((0.1/100);1/2.4)]/log(rhoSDR)}/{log[1+(rhoHDR-1)*power(1/PB_Mster_HDR;1/2.4)]/log(rhoHDR)} [公式16] 其中,rhoSDR=1+32*power(100/10000;1/2.4),并且 rhoHDR=1+32*power(PB_Mster_HDR/10000;1/2.4) 这将使得采用简单的方式来适应BLO,因为实际上在HDR编码的ETSI1和ETSI2标准方法中,它与亮度处理链并行(图4中的单元402-406和图15中的1502-1506),为了便于理解,这些附图仅阐明了申请人采用的方法的部分顺序重新分级步骤,还有线性增益限制器,将将具有角度glim的线性曲线应用于感知的Y’HP,并且将所感知的Y’HP与通过所解释的单元计算出的Y’GL值进行比较,并且取并行计算的两个值中的最大值(这对于ETSI1的可逆性特别重要,以允许重建最暗的HDR亮度)。 现在能够表明,由于该限制器的作用,能够使用以下公式轻松地对BLO值进行信道适应: BLO_IDR=BLO_gr*glim [公式17] 如上所示的glim取决于PB_Mster_HDR的特定选择,并且能够例如是0.6。 这由图17示出。图17b示出了针对图17a中所示的全范围亮度映射的最暗亮度的放大结果。各种函数再次被示出在归一化标绘图上,这些函数对应于各种输入PB_C和输出PB_C。 FL_gr是由内容创建者创建的用于将例如4000尼特的Mster_HDR映射到SDR的函数。点线曲线FL_ca是要进行例如从Mster_HDR到500尼特IDR的信道适应。虚线曲线FL_IDR是将IDR亮度映射到SDR亮度的曲线。在图17b的放大的标绘图中,我们看到FL_gr曲线在0.03左右的输入处有一个明显的扭结,这是并行增益限制器起作用的地方(即,将其线性输出y=glim*Y’HP选择为函数输出以用于较低的亮度输入,而不是如图4所示的从链中所有单元的作用中得到的Y’GL值(有关完整电路的说明,请参见图4的ETSI1标准)。 任何曲线的BLO值都是与水平轴的交点,如果没有增益限制,则会出现这种交点,即,例如,如点线所示,通过将局部斜率扩展到FL_gr曲线的0.3以上来示出BLO_gr。 对于该应用,只需知道也能够扩展FL_IDR曲线以获得BLO_IDR值即可(注意,存在一个glim_IDR值,该值将由ETSI2标准来使用,它与glim_gr不同),并且该较低的BLO_IDR值能够被找到来作为glim*BLO_gr(注意,这个glim是SLHDR2PLUS唯一需要计算的glim,在图17b中被示为glim_gr)。 随后,执行以下计算以获得WLO_IDR。 图17a还示出了三个不同的WLO,即,最初由分级者作为其主HDR到SDR映射策略而制作的WLO_gr(在图12b中也为ON);信道自适应的WLO_ca,其中,FL_ca曲线与上水平线相交,并且这是WLO_gr亮度到IDR亮度轴上的映射(能够通过如图12的表示而设想到,其中,MXH投影到MXI);以及最后还有WLO_IDR,它是剩余的WLO,其用于将IDR亮度向下亮度映射到SDR(这与缩放的WLO_ca不同,因为从针对WLO_gr和WLO_ca的相关联PB_C=5000开始,归一化的亮度横坐标轴定义会发生变化,因为用于利用这些函数重新分级的输入图像是5000尼特Mster_HDR,对于重新分级所需的IDR相关定义,到PB_C=1000尼特,因为在该符合ETSI2的视图中,接收到的从中导出其他图像的起始图像是例如1000尼特PB_CIDR图像)。 图17c放大了函数标绘图的上角([1,1]附近)。WLO_IDR值是通过FL_ca曲线发送WLO_gr值作为输入之后的结果,如从(归一化)纵坐标位置到横坐标位置的圆形投影所示。我们在图12b上看到,MXI位置的确是IDR亮度轴上的归一化位置,它已经被映射到SDR亮度1.0,因此,这正是被定义为WLO_IDR所需要的内容。 可以表面上认为,如果WLO值随后在编码侧经过的映射曲线是para(请参见图4,在单元403之后的单元404映射),则通常是将涉及的para的上线性段。 然而,由于定义para的方式,因此能够涉及到para的任何部分(甚至在某些设置中,只有para的SG的特殊值定义了理论上移动到高于1.0的很高的交点,因此,这种情况下的行为直到最明亮的亮度仅由阴影增益斜率来确定,这会得到一条线性曲线,该曲线对于将包含大部分非常明亮的亮度的HDR图像重新分级为SDR非常有用,例如在科幻电影中沙漠星球被5个太阳照亮的情况。因此,这成为一种涉及程度有点大的计算,其需要测试para的三个子部分中的哪个是适用的,优选的数学实现方式是: WLO_co=255*WLO_ca/510 BLO_co=255*BLO_ca/2040 Xh=(1-HG_ca)/(SG_ca-HG_ca)+WP_ca WW=(1-WLO_gr*255/510-BLO_co)/(1-WLO_co-BLO-co) IF WW>=Xh,THEN WLO_IDR=HG_ca*(1-WW)*510/255[上线性段]ELSE{ Xs=(1-HG_ca)/(SG_ca-HG_ca)-WP_ca IF WW>Xs {[输入,即,WLO_gr必须通过信道自适应para的抛物线子部分进行映射] A=-0.5*(SG_ca-HG_ca/(2*WP_ca)) B=(1-HG_ca)/(2*WP_ca)+(SG_ca+HG_ca)/2 C=-[(SG_ca-HG_ca)*(2*WP_ca)-2*(1-HG_ca)]^2/(8*(SG_ca-HG_ca)*2*WP_ca) WLO_IDR=(1-(A*WW*WW+B*WW+C))*510/255 } ELSE[在para的阴影增益子部分适用的特殊情况下] WLO_IDR=(1-SG_ca*WW)*510/255 } 这些参数SG_IDR、HG_IDR、WP_IDR、BLO_IDR、WLO_IDR(以及类似的定制曲线的额外参数(如果需要的话))是特征参数,并且因此被输出为函数F_I2sCI(无论是输出实际上表征了所需曲线的形状来进行显示自适应的这些参数,还是输出表征该函数的LUT,仅是一个实施例的选择;主要是将被归一化为1.0轴系统的正确亮度映射函数形状F_I2sCI与(一幅或多幅)IDR图像共同传送而作为元数据)。 现在,根据新颖的SLHDR2PLUS方法对编码器进行表征。那么问题是应当如何设计解码器。必须理解,该解码器现在将仅获得F_I2sCI函数,因此它必须以某种方式计算根据接收到的IDR图像来重建原始Mster_HDR图像所需的函数F_??。在这种SLHDR2PLUS编码方法中,这将与在编码器中用于生成IDR亮度的F_H2hCI函数的反函数相同,但这样的函数仍应可计算得到。 如图11一般性阐明的那样,SLHDR2PLUS视频解码器1100、亮度函数确定单元1104必须仅基于其接收到的信息(即,F_I2sCI,以及两个峰值明亮度PB_CH和PB_C_H50)来计算F_??函数。一旦确定了该函数,就能够通过将该函数(在颜色变换器1102中)应用于接收到的IDR亮度来重建原始的Mster_HDR亮度:L_REC_M_HDR=F_??(L_IDR),通过将公式1和2的反函数应用于这些L_REC_M_HDR亮度,能够根据该亮度来计算对应的HDR亮度。最终,重建的主HDR图像(REC_M_HDR)能够由颜色变换器1102以任何期望的格式(例如基于PQ的YCbCr颜色配方等)输出。在优选实施例中,解码器1100还可以被配置为计算任何显示自适应图像,例如在要为300尼特PB_D连接的显示器供应接收到的MDR的最佳等效物的情况下为MDR_300,并且这可以通过SLHDR2PLUS数学来完成,也可以仅通过常规的ETSI2解码来完成,因为已经可以使用适当的图像(IDR)和亮度映射函数(F_I2sCI)作为颜色变换器1102中的输入。 图14示出了para所涉及的内容,以用于根据接收到的IDR图像来重建REC_M_HDR图像(将对WLO和BLO进行类似的计算,并且在适用时对可定制的曲线形状点进行计算(请注意,如下所述,一些实施例将不在Mster_HDR和IDR之间应用可定制的曲线理念,而仅作为SDR降级技术,即,在IDR和SDR之间应用)。 现在需要计算新的主HDR重建阴影增益(SG_REC)和重建高光增益(HG_REC),并且必须计算针对抛物线形段的逆抛物线方程,以完成所需的重建para亮度映射函数形状F_L_RHDR(请注意,仅出于说明目的,在该归一化图上还以点线示出了SDR到Mster_HDR的逆亮度映射函数;应当注意,由于SDR到HDR映射的反函数特性,曲线SG_RM上的阴影增益等于1/SG_gr,依此类推)。 图15首先阐明了典型的解码器1502核心计算拓扑的一些方面。能够看出,它与编码器的结构大致相同,尽管它在相反方向上执行重新分级(根据IDR重建REC_M_HDR),这很方便,因为能够根据需要轻松地重新配置这样的计算拓扑。如果亮度映射器1501获得了(所有部分连续重新分级动作的)总LUT,则其确实将以类似于编码器的方式起作用。 当然,需要配置一些差异以使解码器进行正确的HDR重建重新分级。首先,L_in现在将是IDR归一化的亮度,并且输出亮度Lh将是被正确缩放以进行例如5000尼特PB_D显示渲染的归一化的亮度。我们还看到,产生REC_M_HDR图像像素颜色(Rs、Gs、Bs)的最后一个乘法器现在与在元数据中接收到的PB_C_H50值相乘。实际上,由感知器1502和线性化器1506执行的感知外部计算循环分别在公式1、2和这些公式的逆向公式中应用PB_CH和PB_C_H50值。还应注意,现在以其存在的某种程度逆转各种部分重新分级的顺序:首先,通过精细分级单元1503中的可逆的可定制曲线对感知的IDR亮度Y’IP进行精细分级,从而得到经重新分级的IDR亮度Y’IPG。此后,由粗糙亮度映射单元1504执行到HDR亮度轴的第一映射(即,用于对应的正确的HDR外观的对应的重新分布的亮度,实际上是5000尼特的PB_C_H50 Mster_HDR外观),粗糙亮度映射单元1504应用图14的逆para,这仍然需要正确计算,并且这会产生初始HDR亮度Y’HC。最后,逆向黑-白偏移器1505将创建正确的归一化REC_M_HDR亮度(Y’HR),以用于色度的进一步计算,从而得到针对每个像素的完整三维颜色。如所解释的,单元1504通常将获得计算出的SG_REC等(或对应于这三个值而应用的亮度映射函数的LUT版本)。注意,如果各个PW值保持相同,则WP_REC再次为WP_gr。单元1505将类似地获得黑色偏移和白色偏移,以用于Mster_HDR的重建(WLO_REC、BLO_REC)。进行色度处理的核心单元(色度处理器1550)的下部类似于图4的编码器拓扑,除了在色度处理确定单元1551中加载正确的C_LUTF_C[Y]以外(请参见在下面解释的计算)。 现在的问题是,是否能够计算以及如何能够计算在为了根据IDR重建Mster_HDR而编程的解码器中所应用的函数的参数(这种情况以前在HDR视频解码中并未发生)。 例如,我们能够看到用于阴影增益的方法。 在计算SG_REC之前,我们能够询问是否能够确定从SDR到Mster_HDR的总阴影增益SG_RM,然后能够经由进行公式12的除法来据此确定SG_REC。 因此,SG_IDR=SG_gr/SG_ca 也能够示出SG_ca=(mx/mxca)*(SG_gr+1)-1 能够看到,这是因为myca=SG_ca*mxca(通过信道自的适应para的下部线性段的定义),以及myca=my-d=mx*SG_gr+(mx-mxca)。 mxca/mx的第二种关系是通过公式9的上公式除以mx而导出的。 由于通过将第一种关系填充到第二种关系中(移除mx/mxca部分),能够用SG_gr来写出SG_ca,因此现在可以在SG_IDR与SG_gr之间形成最终关系: SG_ca=(SG_gr+1)/[(SG_gr-1)*(1-sc*)/2+1]-1 其中: SG_IDR=SG_gr/{(SG_gr+1)/[(SG_gr-1)*(1-sc*)/2+1]-1} [公式18] 给定已知的(接收到的)SG_IDR,现在能够针对未知的SG_gr求解该公式(并且sc*仅根据峰值明亮度来计算,这也是已知的,因为同时接收到PB_CH(即,PB_IDR)和PB_C_H50,并且PB_SDR通常为100尼特,否则也能够将其放入信号的元数据中)。 调用SG_IDR=y和SG_gr=x以获得简化符号,然后: y=[(x-1)*(1-sc*)*x/2+x]/[x-(x-1)*(1-sc*)/2] 因此:x^2+x*(y-1)*[(sc*+1)/(sc*-1)]-y=0 [公式19] [在用于重建Mster_HDR图像的亮度的整个方程组中,下面将使用作为y和sc*的函数的系数(在下面被称为A’、B’、C’)来求解二次方程]。 为了确定给出重建亮度映射函数的形状的所有参数,通常可以在实施例之一中完成以下公式(这重建了用于在编码器侧生成IDR图像的函数的反函数)。首先确定正确的para,然后能够根据该para计算出黑色偏移和白色偏移。 再次如上计算rhoSDR,并按以下方式计算rhoCH: rhoCH=1+32*power(PB_CH/10000;1/2.4) mu=log[1+(rhoSDR-1)*power(PB_CH/PB_SDR;1/2.4)]/log(rhoSDR) 如上计算K和La和sc*,其中,K=P_HoS并且La=P_HoI A’=1 B’=(SG_IDR-1)*(sc*+1)/(sc*-1) C’=-SG_IDR 一旦能够在解码器侧确定所有所需函数的必要参数(注意:从其他接收到的可用参数SG_IDR等),解码的其余部分便因可逆性而仅应用编码的(一条或多条)逆曲线即可,例如像图14中的para(通过计算其适当的定义参数1/SG_REC等来适当地整形)将撤消IDR编码para的动作,如图10所示,即,定义IDR到Mster_HDR亮度的重新解码等)。 由此得到 SG_gr=[-B’+SQRT(B’^2-4*A’*C’)]/2*A’ 其中,^2指示平方幂。 SG_REC=SG_gr/SG_IDR [公式20] 因此,逆向信道自适应阴影增益(1/SG_REC)是已知的。 类似地,能够计算所需的高光增益。 A”=(SG_REC*HG_IDR-SG_gr)*(SG_gr+1)/(SG_REC+1) B”=SG_gr-HG_IDR-(SG_REC*HG_IDR-1)*(SG_gr+1)/(SG_REC+1) C”=HG_IDR-1 MxRec=[-B”+SQRT(B”^2-4*A”*C”)]/2*A” IF MxRec=1,THEN HG_REC=0 ELSE=HG_REC=max[0,(MxRec*SG_gr-1)/(MxRec-1)] 由于根据其参数定义了para函数,因此一旦计算出其参数,就定义了所需的para。 为了获得BLO_REC和WLO_REC,执行以下公式: mx=(1-HG_gr)/(SG_gr-HG_gr) mxca=mx*(SG_gr-1)*(1-sc*)/2+mx myca=mx*(SG_gr+1)-mxca SG_ca=myca/mxca IF mxca=1,THEN HG_ca=0ELSE HG_ca=max[0,(myca-1)/(mxca-1)] ScaleHor=(1-1/La)/(1-1/K) RHO=1+32*power(PB_C_H50/10000;1/24) glim={log[1+(rhoSDR-1)*(0.1/100)^(1/2.4)]/log(rhoSDR)}/{log[1+(RHO-1)*(1/PB_C_H50)^(1/2.4)]/log(RHO)};[像之前一样;与编码器使用的glim相同,因为在ETSI方法中,这是Im_PB_C_1<>Im_PB_C_2机制的固定并行旁路,这两幅图像被定义为从同一PB_C_1开始重新分级,并且在该特定SLHDR2PLUS方法中分别为Mster_HDR图像和IDR图像] BLO_gr=BLO_IDR/glim[公式17的逆向公式,因此无需高阶方程就可以比较容易地确定它,随后我们仅需应用固定信道自适应的机制即可获得所需的WLO_REC,该WLO_REC等于编码所使用的WLO_ca,但现在将被逆转,加法变成减法] BLO_REC=BLO_ca=BLO_REC*ScaleHor 随后,按照编码原理,通过将其投影通过para来计算WLO_REC,以随后对其进行逆转。 IF HG_ca=0WLO_REC=0 ELSE { BLO_co=255*BLO_ca/2040 Xh=(1-HG_REC)/(SG_REC-HG_REC)+WP_REC Xh_REC=HG_REC*Xh+1-HG_REC WW_REC=1-WLO_IDR*255/510 IF WW_REC>=Xh_REC,THEN WCA=1-(1-WW_REC)/HG_REC ELSE Xs=(1-HG_REC)/(SG_REC-HG_REC)-WP_REC Xsca=SG_REC*Xs IF WW_REC>Xsca { A”’=-0.5*(SG_REC-HG_REC)/(2*WP_REC) B”’=(1-HG_REC)/(2*WP_REC)+(SG_REC+HG_REC)/2 C”’=-[(SG_REC-HG_REC)*(2*WP_REC)-2*(1-HG_REC)]^2/[8*(SG_REC-HG_REC)*(2*WP_RE)] WCA=(-B”’+SQRT(B”’^2-4*A”’*{C”’-WW_REC})/(2*A”’) WCA=min(WCA,1) } ELSE WCA=WW_REC/SG_REC WLO_REC=(1-WCA)*(1-BLO_co)/[(1-WCA*ScaleHor)*(510/255)] 应当注意,虽然BLO实际上是分段映射的纯加法贡献,但是WLO转换成最大值的乘法缩放(例如在图4中): Y’HPS=(Y’HP-BLO)/(1-BLO-WLO) [公式21] 通常能够将所有这些信息填充到例如在感知域中将Y’P与Y’HR进行相关的单个亮度处理LUT中(或者更好的是,总LUT定义针对每个L_in值的Lh)。这将重建REC_M_HDR图像。 如上所述,如果解码器能够直接输出显示自适应的图像(例如,MDR_300),则这也是有用的。 为此,能够使用以下技术,如图16所示(其中使用了两个部分LUT,实际上,仅加载一个被称为P_LUT的LUT最为有用,因为亮度计算的上轨迹位于优选的核心计算单元中,例如,通常被简单地实施为LUT的专用解码IC的每个像素颜色处理器。输入Y_IDR亮度值(例如,典型地基于PQ的YCbCr编码),并且由线性化器1601将其转换成归一化的亮度L_in。感知器1602如上面所解释的那样(公式1和2)起作用,并且将RHO值用于IDR峰值明亮度PB_IDR(例如,1000尼特)。这产生了可感知的IDR亮度Y’IP。亮度映射单元1603如上所述地重建主HDR图像,也就是说,它得到定义IDR到MsterHDR重建亮度映射函数F_L_REC的所有计算出的参数,或者通常是该函数形状的LUT。这将产生重建的Mster_HDR亮度Y’HPR。该图像形成了以较低的动态范围/峰值明亮度PB_C计算图像的良好基础。基本上,只要应用正确的函数,该操作就类似于ETSI2机制。这些函数能够根据作为元数据的共同传送的F_L_IDR来进行缩放,也可以根据重建的F_50t1函数来进行计算,该重建的F_50t1函数是内容创建者在其侧将其定义为用于根据Mster_HDR图像计算主SDR图像的最优函数的内容的重建。然后能够根据ETSI2标准中定义的原理将该F_50t1函数计算为针对例如300尼特PB_D的适当的显示自适应函数F_L_DA(有关此细节,读者可以参考该标准)。如果有的话,将该函数加载到HDR到MDR亮度映射器1604中。实际上,单个P_LUT将包含F_L_REC和随后的F_L_DA的总的动作。 最后,将获得的MDR相对亮度发送到图4的第一乘法器454,以进行相同的处理(也利用正确的伴随F_C[Y])。 最后,需要计算适当的C_LUT(在图4或图15中分别为F_C[Y]),从而为亮度重新分级的输出颜色提供其适当的色度(以尽可能接近Mster_HDR图像的外观,也就是说,输出图像像素和Mster_HDR图像的色度应在给定不同的较小动态范围的情况下尽可能大致相同)。 用于Mster_HDR重建的C_LUT如下(其他重新分级的C-LUT计算遵循类似的原理,例如考虑到ETSI2的教导)。 首先计算CP-LUT,它是上述P_LUT的逆向结果,该P_LUT应用于编码器以将Mster_HDR图像映射到IDR图像(因此在解码器中,该逆向色度校正将会用于从接收到的IDR图像色度Cb和Cr重新转换为Mster_HDR重建色度)。 然后,能够将针对Mster-HDR重建的C_LUT计算为:XH=v(PB_M_HDR;10000) XS=v(PB_SDR=100;10000) XD=v(PB_D;10000) XC=v(PB_CH;10000) 再次利用v,通过上面的公式1和2来定义函数v(x,RHO)。 CfactCH=1-(XC-XS)/(XH-XS) CfactCA=1-(XD-XS)/(XH-XS) C_LUT[Y}=[1+CfactCA*power(CP_LUT[Y];2.4)]/[Y*{1+CfactCH* power(CP_LUT[Y];2.4)}] [公式22] 能够将显示目标PB_D设置为PB_Mster_HDR以进行重建,在这种情况下,只有分隔符保留为C_LUT确定器。在实际的实施例中,幂2.4还能够被包括在LUT中作为例如CPP_LUT=power(CP_LUT[Y];2.4),在一些实施例中这可以省去一些计算。 上面说过,SLHDR2PLUS编码器的一些实际实施例(对于当前的ETSI2元数据定义符合性)针对符合的HG_IDR值重新计算HG_gr。这能够如下进行。 例如,元数据可能已经为para的HG保留了一个8位代码字,即,在这种情况下,因为IDR图像及其元数据应当是符合ETSI2的信号,所以问题是所需的HG_IDR在分配的代码中是否适配。该标准通常使用代码分配函数将物理所需的HG_IDR变换成某种HG_COD:[0,255]中的HG_COD=F_COD[HG_IDR]。例如,FCOD能够为128*(4*HG_IDR),这意味着最大值255对应于为0.5的最大HG_IDR。 我们想要确保如此生成IDR图像,使得HG_IDR恰好适配在代码范围内,即,务实的实施例可以通过稍微调整分级器的HG_gr来实现这一点(使得具有固定的信道自适应并因此基于IDR元数据确定刚好避免溢出)。 针对该(任选的)实施例的计算可以是例如: Set HG_IDR=(254*2)/(255*4); 暴露=阴影/4+0.5[其中阴影是阴影增益的ETSI2法典化结果SG_gr] SG_gr=K*暴露 A=SG_gr*(HG_IDR-1)-0.5*(SG_gr-1)*(1-sc*)*(HG_IDR+SG_gr) B=SG_gr-HG_IDR+1+0.5*(SG_gr-1)*(1-sc*)*(HG_IDR+1) C=HG_IDR-1 MxLM=[-B+sqrt(B*B-4*A*C)]/(2*A) IF MxLM=1,THEN HG_gr_LM=0 ELSE HG_gr_LM=max[0,(MxLM*SG_gr-1)/(MxLM-1)] 其中,HG_gr_LM是经调整的HG_gr值。然后,算法的其余部分将按照上文所述工作,就像分级器从一开始就选择了最优HG_gr_LM值一样。 这详细介绍了一种解决SLHDR2PLUS新编解码器设计问题的方法。取决于做出的技术选择,存在替代方式,特别是在人们发现哪个方面至关重要,而其他方面可以放松的情况。 上面的数学公式定义了一种全新的方式来实施HDR解码器,至少是利用与ETSI1方法和ETSI2方法相一致的核心计算方法:特别地,虽然将如上所述地计算不同形状的P-LUT函数和C_LUT函数(虽然图4和图15详细说明了我们的HDR编码方法如何工作以及为什么工作背后的物理技术理念,但是在实践中,等效于亮度处理轨迹401中的亮度处理的整个亮度处理[在一维颜色方面,这两者是非线性相关的,这两者是图像相关的函数变换]分别1501通过加载正确的总P_LUT亮度映射函数形状来执行,并且类似地,对于分别在单元451和1551中被称为F_C[Y]的C-LUT),计算拓扑是可重复使用的,这对客户来说是一个非常有用的属性(他们必须在例如STB中购买一次IC,并且这能够将其重新配置为各种新的编码理念,其方法是对元数据处理进行重新编程,但保留每个像素的颜色变换引擎)。 还能够设计一种IDR编码技术,其通过仅用指令指示ETSI2解码器适当地外推而不是对接收到的图像进行降级的正常任务来深入地重新使用相同的ETSI2解码数学(即,部分重新分级的链1503-1505),显示器使它适应PB_D 图18阐明了这种方法(编码器数学概念如何起作用的框图)。此外,为简单起见,我们假设(虽然不一定要根据需要将这些选择链接到该示例)选择了固定信道自适应的算法的选择自由度,以便仅进行链接Mster_HDR和IDR的para变换,并且保留任何BLO和WLO(如果已经适用于当前图像或图像快照)和可定制的曲线以进行二次变换(即,IDR到SDR重新分级)并将属于ETSI2兼容的IDR信号的元数据传送给接收器(无论是旧版ETSI2接收器还是SLHDR2PLUS解码接收器)。 我们首先需要一些介绍性定义: 如图10所示的para曲线的逆曲线(即,具有由上述公式4和5所表述的ETSI标准化形状定义且抛物线中间部分由a*x^2+b*x+c定义的para曲线)是为了简洁起见而在本文中将被称为abcara的曲线。根据ETSI1第7节(HDR信号重建),其被定义为: L_out=1/SG*L_in(如果0<=L_in<=xS) L_out=-b/2a+sqrt(b^2-4*a*(c-L_in))/2a(如果xS L_out=1/HG*(L_in-1)+1(如果xH<=L_in) [公式23] 其中,xS和xH是线性段变为抛物线形中间部分的点,这与定义para以进行编码(或任何其他用途)的方式一致。 图20示出了图18的视频编码器实施例试图实现的基本原理(在该示例中,我们选择阐明500尼特PB_C IDR的示例,不想说该方法以某种方式限于或更适合于较低的PB_IDR)。 如果我们有固定的机制(在ETSI2可兼容或ETSI2旧版解码器中)从IDR外推到比PB_IDR更高的PB_C(使用像显示器峰值明亮度那样的PB_C设置),那么我们也可以设计一个编码器来逆转该过程,即,通过以下操作来创建IDR图像:使用经适当自适应的外推亮度映射函数F_E_I2S的逆F_ENCINV_H2I(适应F_I2S函数而得到,该F_I2S函数符合由IDR信号的接收器接收到的ETSI2规范,即,IDR图像+包括F_I2S函数的元数据),并且随后添加正确的元数据(如上所述其可以为F_I2S),该元数据将是根据由内容创建者(例如,人类分级者)或任何中间实时编码过程中的自动机等创建的总亮度映射函数F_H2S(例如,F_50t1)导出的。 这种关系也能够用乘法的观点来表述: L_SDR=m_F_I2S*m_F_ENCINV_H2I*L_HDR=m_F_I2S*L_IDR L_HDR=m_F_E_I2S*L_IDR 其中,m_F_I2S或更确切地说m_F_I2S(L_HDR)是实现每个任意选定的L_HDR值的亮度重新分级所需的对应乘数,其对应于F_I2S亮度映射函数形状,并且类似地适用于其他乘数。 因此,必须解决以下问题:从HDR到IDR的para的反函数(即,从IDR到HDR的abcara)具有与将某种para外推到PB_HDR(从任何L_IDR开始)相同的效果。 为了更好地理解,我们使用图21。在从较高的输入图像PB_C(即,作用于经由比归一化的输出图像亮度的PB_D更高的PB_Ch与实际亮度相对应的任何归一化的输入亮度L_in_X)到较低的PB_D的正常内插模式中,将跟随箭头朝向对角线[0,0]-[1,1]的方向缩放原始分级者的para F_H2S(由标准ESTI2编码视频通信链在元数据中接收),从而产生F_ENCIV_H2I(其现在对应于PB_IDR/PB_HDR相对于PB_SDR/PB_HDR的视觉均匀伪对数距离比率,即,例如,v(100/5000)/v(500;5000)=0.54/0.72[其中,v(x;y)是公式1的函数,其中,横坐标为x,并且RHO经由公式2对应于y]。可以想象,通过从PB_HDR到PB_HDR的身份处理映射,从较高的PB_D情况到较低的PB_D情况继续进行重新分级行为将产生曲线急剧下降的事实,实际上,对于para物类亮度映射曲线,它们在数学上会变成abcaras。实际上,用于外推任何接收到的IDR图像(基于在元数据中接收到的起始亮度映射函数F_H2S,通过使用ETSI2第7.3章显示自适应机制)所需的函数F_E_I2S将是通过围绕F_ENCINV_H2I的对角线进行镜像处理而获得的镜像函数(反之亦然)。 因此,鉴于想要重新采用标准ETSI2计算机制来实施SLHDR2PLUS功能,剩下要做的就是定义对应的编码器,如图18所示。 例如,F_ENCINV_H2I的SG在abcara定义中为1/SG*L_in_X。 根据SG_COD(即,上述物理数学阴影增益SG的ETSI定义的编码),我们得到(SG_COD=SGC*255/2juncto ETSI1 eq.C23 exposure=SGC/4+0.5juncto C24 expgain=v(PB_HDR=5000/PB_target=500;PB_target)juncto eq.C27 SG=expgain*exposure): 1/[(SGC/4+0.5)*v(5000/500;500)]=(X/4+0.5)*v(500/5000;500)[公式24] 为了解决未知的para,阴影增益控制X(即,X是F_ENCINV_H2I的SG)。 即,解码器定义:对于任何分级器的F_H2S选择,F_E_I2S形状将是什么样的(使用ETSI27.3算法),但是我们需要将其解释为ETSI1 abcara,以便我们能够将该abcara与对应的所需逆para F_ENCINV_H2I关联起来,以最终在新的SLHDR2PLUS编码器中使用对应的para,从而计算IDR图像亮度(在通用SLHDR2PLUS方法的该特定物类方法的第一优选实施例中,即,使用第二峰值明亮度的亮度映射函数的导数计算;至少在HDR<>IDR子范围中,白色偏移和黑色偏移在该物类中将被忽略,因为它们将适用于不同PB_C图像频谱的HDR<>SDR子范围,如图7所示)。 现在,在实践中,编码器可以按其他顺序工作(但要遵循相同的关系,以保持系统符合ETSI2)。信道适配器1801(根据接收到的F50t1函数形状)计算将L_HDR亮度变换成例如500尼特PB_CL_IDR亮度所需的para(能够使用上述先前实施例的信道自适应数学,但随后忽略WLO和BLO自适应,即,para仅在两个0-1.0亮度表示之间起作用而不涉及任何偏移,仅通过仅应用para来起作用)。反相器1802使用公式24的逆向公式来计算对应的abcara(即,在给定该公式的右侧的已知SGC的情况下计算左侧的1/X)。这是将根据接收到的L_IDR亮度重建L_HDR像素亮度的映射。假设例如在编解码器定义链上保持恒定的WP,则反相器1802将因此计算abcara的阴影增益SG_abc和高光增益HG_abc。进行元数据管理的下轨迹最终将需要计算F_L_IDR(=F_I2S),因此适配器1803通过在逆向方向上应用ETSI27.3的算法来确定所需的映射函数F_I2S(特别是其SG_IDR和HG_IDR)(如果已经通过使用F_ENCINV_H2I对IDR图像亮度进行了部分亮度重新分级,则实现了总变换F_H2S的剩余变换F_I2S)。 如上所述,在一些场景中,可能发生HG_IDR值超出能够被编码为符合ETSI2的HG_COD的情况。在这样的场景中,能够做的是将HG_IDR的所述值限制为其最大值,然后遍历整个链,这具体意味着哪个不同的原始分级器的F_H2S函数将对应什么内容。然后能够从这种情况重新开始所有计算,这就是虚线所示的任选单元在一条连续的处理行中执行的操作。 图22解释了限制器1804执行的作为对亮度映射曲线的重新整形的操作。在点线中,我们示出了起始F_H2S,以及能够如何利用固定信道自适应算法从中导出F_ENCINV_H2I函数,以及可以如何导出(原始)剩余的部分重新分级函数F_I2S_or(如果当前制定的ETSI2中没有额外的要求如现在所述的更详细的特定实施例方法的特定限制,则为原始F_IDR)。鉴于该函数是关于HDR视频编码的全新方法,因此该函数的HG_IDR_or可能并不适配HG_COD定义,即,要求其值大于其8位最大值255,该值能够在符合ETSI2的HDR视频编码信号中进行传送。因此,必须将HG_IDR_or降低至最多受限的仍可编码值HG_IDR_LIM(其在ETSI2的当前实施例中为2.0,但这不是该方法的基本限制)。这会创建一个具有高光线性段的para,该高光线性段稍微更靠近上水平边界(L_out_X=1.0),这对应于稍微更明亮的IDR图像,但这不是根本问题(如我们在上面提到的那样,该系统设计各种变体有可能会在一定程度上放松)。这将意味着HDR场景图像中的最高亮度区域获得较少的对比度IDR表示(虽然原始主HDR是完全可恢复的,并且SDR外观和所有MDR重新分级也会看起来不错),但这并不是真实的问题,因为我们是从更高的PB_CHDR主版本进行分级,而这对应于例如在3000-5000尼特范围内的内容,通常是灯之类的事物,其可能会稍有恶化(因为无论如何总会需要某种恶化的映射,并且对于这样的超亮区域应当有这种期望)。然后,第二信道适配器1805将再次应用所有上述数学运算,但是现在具有受限的HG_IDR情况(因此,能够首先计算等效的F_H2S,如在这类实施例中所述的那样,能够通过将受限的F_I2S_LIM外推至PB_D=PB_Mster_HDR情况来执行,然后能够再次应用信道自适应)。 现在能够由图像像素亮度映射器1806应用所得到的F_H2I_LIM(即,将L_HDR亮度映射到L_IDR亮度),从而逐像素地确定所有IDR亮度(或者实际上,还使用ETSI2的色度处理,即,在那里定义的C_LUT对应于F_H2I_LIM亮度映射函数形状,所有IDR YCbCr颜色)。最终,IDR元数据确定器1807计算完整的元数据集合,以实现基于符合ETSI2的元数据的重新分级,从而得到低于PB_IDR的较低的PB_C图像(针对任何显示PB_D)(或者通过外推高于PB_IDR)。因此,再次根据形成如上所述的实施例的任何可能组合来确定SG_IDR、HG_IDR和WP_IDR。现在还确定了BLO_IDR和WLO_IDR(如上所述,能够将Mster_HDR亮度轴上的特定亮度映射到SDR亮度轴上的1.0,并且这能够被重新制定为经适当缩放的IDR亮度的映射,即,定义WLO_IDR,并且对于BLO_IDR是类似的情况)。 最后,可定制曲线能够通过可定制曲线优化器1808针对新的IDR元数据情况进行优化(在使用可定制曲线的情况下,由于某些细分市场编解码器技术实施例变型,例如现实生活广播可能已经被选择为从不使用可定制曲线,然后应用以前的para+偏移数学)。 图19阐明了可定制曲线的自适应工作是如何进行的。它始终包括两个概念组成部分(无论是仅直接应用在单个方向上,还是反转应用)。能够通过将注意力集中在一个目标上来理解第一个组成部分:假设在某个时刻,多线性段可定制曲线的控制点之一对应于一条裤子(因此,特定的L_in_S归一化亮度xo1I例如是所有裤子像素的平均亮度)。变换用于例如根据人类分级者(或自动机软件)将那些裤子像素变亮(特别是在控制点之一附近),以输出归一化的亮度,这对那些裤子来说是更好的亮度。我们还从图4中看到,在ETSI方法中,这是作为编码器(单元405)中的最后一个(任选的)精细分级编码步骤而发生的,并且对应地是解码器中的第一步骤。因此,实际上,这种亮度变换实际上是在SDR亮度域中定义的(在para+偏移量(如果有的话)的粗糙HDR到SDR亮度映射之后)。 因此,能够推断出任何亮度都需要变换(针对该目标!),能够将其用乘法写为L_out=m(L_in_SDR)*L_in_SDR。 所需的乘法亮度变化(百分比)在任何其他图像(例如,IDR图像)中都可能不同,但是我们能够依赖的一点是,精细分级的校正对应于需要重新分级的特定“目标”(即使除了特定的目标精细分级以外,可定制曲线还用于其另一优点,例如,改进粗糙分级亮度映射曲线的形状,从物理上讲,仍然能够被解释为这种基于目标的改进,其可以是通过定义对应于某些亮度子范围的虚拟目标集合来实现的)。因此,如果将目标跟踪到另一DR亮度范围,则归一化的横坐标值可能会发生变化,但目标的核心本质不会改变(例如,摩托车上的人在HDR中具有不同的归一化亮度,即,与SDR相比具有5/5000,即,5/100)。因此,我们必须为新的归一化亮度位置分布重新计算该函数(能够对任意量的中间部分重新分级亮度映射函数执行该操作,甚至可以上下移动各种部分轨迹,而不管想要设计HDR视频编码实施例有多复杂)。因此,图19a概括性地示出了这一点:原始SDR目标亮度(例如,可定制曲线的线性段的段端点)xo1I移至xo1N(这可以通过应用例如abcara来实现,abcara是图20的F_I2S的反函数)。其他点也是如此,例如五边形分段点(通常可以假设有足够良好的扩展分段点,例如,16个,如果分级器例如将粗糙线性定制重新分级应用于较暗亮度的相对较大的子范围,则可以由分级软件自动设置扩展分段点中的例如10个扩展分段点)。因此,使所有这些点移位,通过应用原始CC_gr偏移(即,L_out_SDR=CC_gr[L_in_S],其中,L_in_S值为原始值xo1I等),现在能够根据主内容元数据分级器的原始CC_gr曲线(F_H2S在SDR亮度范围上为CC)来定义中间曲线CC_XRM(但是现在L_out值应用于xo1N重新映射的IDR亮度位置(从而产生虚线曲线)。当然,这将不是适当的HDR到IDR(或者更确切地说是IDR到IDR)映射乘数,使得如图19b所示在步骤2中执行校正。 正如我们再次能够在图19b中看到的那样,能够将乘法精细校正解读为可缩放过程,该可缩放过程在对重新分级图像的频谱中的(与Mster_HDR相比)最不相同的PB_C图像进行无校正(Mster_HDR像素亮度已经根据定义进行了校正,因为内容创建者对该图像进行了最优分级以开始工作)和完全校正之间发生变化,在申请人的方法中,该图像通常为100尼特SDR图像(其中,针对特定像素的完全校正为例如mso1,其能够被写为绝对偏移量,也能够被写为乘法校正yio1=mso1*xso1(任何亮度映射曲线形状yio1=F_L(xso1)都能够被表述为依赖亮度的乘法值的曲线)。 由于能够将乘法校正视图表述为距yio1=xso1的对角线的偏移量,因此能够引入垂直缩放因子: ScaleVer=max[(1-La)/(1-K);0] [公式25] 其中,La和K如上面所定义的那样。 然后可以找到可定制曲线的所需适应值: yiDA=Min[(yio1-xso1)*ScaleVer+xio1;1] [公式26] 并且针对xso1的所有值进行计算。
因此,对于多线性重新分级函数形状重新确定,我们只需要找到对应的端点(xnew,ynew)。 我们能够利用(在理想情况下)要满足的另一属性,即,是利用总跨度函数FL_50t1(在这种情况下其将包括两个连续应用的函数:总para 2710和总多线性函数2711)直接对主HDR图像进行重新分级,还是分两个步骤进行重新分级,首先是从5000尼特主图像到700尼特IDR(再次使用两个函数:IDR生成para 2701和IDR生成多线性函数2702),然后再降级到100尼特LDR图像(利用信道para 2703和信道多线性函数2704),结果必须相同:同一张LDR图像,因为那是始终应为主HDR图像制作的LDR图像,即,内容创建者已经编码和传送的图像(具有降级的亮度映射函数形状)。即,选择所有可能的输入HDR归一化亮度x1_MH中的无论哪一个,最终LDR输出亮度都应相同。因此,对于碰巧(经由先前的映射)映射到信道多线性的x坐标的输入亮度x1_CH_L也是如此。由于纵坐标y相等,因此能够重新计算线段,因此只需要为另一动态范围上的对应多线性定制曲线的特定线段计算x_new即可。 因此,在编码侧,对于任何x1_MH输入,都能够通过应用经缩放的标准化算法来计算信道自适应的Y_CHA。该值Y_CHA将形成下一个块的对应输入x坐标,该x坐标进入信道PB_C确定的para,我们在上面给出了公式。yi_CH值是已知的,因为它等于从5000尼特到100尼特的总重新分级的y1_L值,与解码侧相比,它在编码侧当然是直接已知的(例如由人类分级者给出)。对多线性函数的所有点执行该操作,即可获得其所有表征参数,并将其写入视频信号(作为F_I2sCI的部分)。 在解码器侧,由于现在必须计算一些未知参数,因此能够再次使用相同的理论来得到稍微不同的算法。因此,现在必须计算与接收到的因此已知的x1_CH_L值相对应的x1_ML值,因为第一步骤是恢复(一个或多个)总的重新分级函数。函数通常具有数字精确度,例如,256个量化的x值(即,不是特定的,例如,两个或三个段间点,而是所有点,因此也包括中间的线上点),因此能够简单地以数值方式为可定制曲线的所有点构造LUT表,因为它是定制的,即,该曲线的y1_L是已知的,所以所需的x1_ML对应于x1_CH_L。 从LDR亮度映射到IDR亮度,我们得到针对任何yi_CH的x1_CH,并且该值能够通过para 2703被逆向映射。如果我们知道para 2701和多线性2702,我们也能够确定所有可能的x1_MH值中的哪个值映射到该Y_CHA值。如上所述,我们从上面知道如何根据在解码器侧接收到的函数元数据来计算para 2701。我们(尚)不知道多线性2702,但当前尚不需要。因为我们知道定制曲线2702也遵循标准化算法的垂直缩放公式。任何测试的X1_MH都可以被转换成对应的X_CHA,并且与之对应的(和所需的)Y_CHA值来自:Y_CHA=(y1_L-x1_ML)*scaleVer+X_CHA,并且能够通过应用总para 2710根据x1_MH计算x1_ML。 因此,将找到恰好一个对应的x1_MH和相应的x1_ML值,这将恢复总的多线性函数2711。因为然后再知道总的重新分级和信道部分的重新分级,所以也能够确定剩余的重新分级(即,在5000尼特主图像与700尼特IDR之间),因此所有内容都被解码(即,确定了函数),并且能够开始处理所有IDR图像像素颜色,如图26所示。 为了确保读者进行更好的理解,图26再次以概括方式在概念上进行阐述,所有熟练的读者已经可以在上面的详细说明中找到所有这些内容。上轨迹框是关于元数据的重新计算,即,各种亮度映射函数确定的各个步骤(下单元2650等是执行实际像素颜色处理的各个步骤)。现在可以很好地看到两步计算,分别对应于HDR功能单元901中的标准化算法应用,或者是现在来自SLHDR2PLUS视频解码器侧的、编码器中IDR映射函数生成器903的函数确定。如所解释的,解码器获得函数F_I2sCI,该函数F_I2sCI指定所接收的选定的具有其信道峰值明亮度PB_CH的IDR图像与100尼特分级之间的亮度重新分级行为。但是我们需要确定介于100尼特与主HDR峰值明亮度(例如,PB_C_H50=6000尼特)之间的较大的跨度函数,即,FL_50t1函数(或者更确切地说,是在编码侧使用的函数的逆向形状函数),原始函数计算器2601将执行该函数。但是我们尚未进行到该步骤,我们想要将IDR归一化亮度解码(或者更确切地说,在我们的典型解码拓扑中,在感知上均匀的归一化像素亮度)成主HDR重建亮度。因此,既不是最初接收的F_I2sCI,也不是函数FL_50t1,它确定PB_C_H50尼特主图像与100尼特之间的重新分级,而不是PB_CH尼特IDR图像和其他两幅图像中的任何一幅,因此我们需要确定函数F_IDRt50以应用于接收到IDR像素亮度,从而获得(在感知上均匀的)重建的主HDR图像像素亮度YpMstr,这是重建函数确定器2602将要做的事。我们已经将显示自适应的可能性示出为虚线显示优化函数计算单元2603,因为如上所述,虽然通常也将在我们的完整功能SLHDR2PLUS解码IC中启用它,但原则上对于SLHDR2PLUS解码是任选的。信道峰值明亮度PB_CH将用于将正常编码(例如,10位YCbCr)的IDR像素亮度转换成在感知上均匀的IDR像素亮度YpIDR,对此,我们通常会在我们的优选的SLHDR2PLUS IC中进行我们的重建亮度映射(虽然技术人员理解如何在不应用感知均匀化或另一种方法等的替代电路或软件中体现本发明的原理)。感知均匀化器2650在其中应用公式1和2,其中,PB_C_H=PB_CH。亮度上映射器2651通过简单地应用所确定的函数(即,YpMstr=F_IDRt50(YpIDR))来重建主HDR图像亮度。如果需要显示自适应以创建例如350尼特的PB_C图像,则显示优化器2652仅适用于确定的显示优化函数,从而产生显示优化的像素亮度:Yglim=F_DO(YpMstr)。能够通过线性化器2653将显示优化的像素亮度转换为实际的归一化像素亮度L,线性化器2653应用逆向公式1和2,但是现在利用例如显示优化的350尼特的PB_C_DO,而不是PB_CH。最后,通常可以任选地存在另外的亮度代码生成器2654,其应用SMPTE 2084的感知量化器EOTF以流行的HDR10格式给出输出亮度YPQ。 在图28中给出了色度处理的示例性规范(即,影响像素颜色的饱和度而不是亮度)。我们假设使用如图15所示的处理装置拓扑(例如,通常在某种消费者设备内部的集成电路),其中,色度处理(乘法器)需要获得针对每个像素的适当的乘法值,或者更确切地说为每个可能的像素颜色YCbCr。该值由色度处理确定单元1551借助于一种函数来确定,该函数使得能够针对不同的像素亮度值呈现不同的值,即,使得能够沿着色域(特别是沿着色域的高度Y)进行差分饱和度修改。 在图28中示出了这样的函数F_C(Xi)的示例,其中,Xi现在是Y的归一化表示,其标度以例如通常表示固定的10000尼特值的1.0结束。它是一条多线段曲线(仅作为非限制性示例),它对于若干可能的像素亮度定义了饱和因子(Ys=F_C(Xs),例如,0.33)。在该示例中,值1/2表示色度完全相同,即,既不增强饱和度也不稀释饱和度。在该特定示例中,低于0.5的值定义色度增强,而高于0.5的值定义饱和度的减小,因此我们看到该特定的饱和度增益规格曲线F_C(Xi),例如人工内容创建者或自动机可以根据特定HDR场景及其图像的需要自由选择任何形状(例如,夜晚的街道上有彩色TL标志,或者炽烈的爆炸需要另一种优选色度调整将第一亮度动态范围转换成不同的第二亮度动态范围的最优对应输出图像),降低针对较明亮目标的饱和度,以使其适合于例如色域尖端。 在该示例中,我们假设我们的原始主HDR图像具有4000尼特的可编码峰值明亮度或最大出现像素亮度,这对应于某种归一化的均匀PQ值PQ_4000=0.9。 由于在4000尼特以上的主HDR图像中没有任何内容,因此原则上无需指定4000尼特以上的饱和度增强值,但是可以规定它们保持恒定并等于4000尼特值Ys3。我们看到,用小s-es表示的原始的饱和度增强规格曲线由点(Xs1,Ys1)、(Xs2,Ys2)等定义,其中,X坐标是归一化的亮度(在感知上均匀的轴,在该示例中使用SMPTE 2084EOTF),而Y坐标表示该X值适用的乘法增强因子(即,例如,0.88),以类似地乘以Cb和Cr。 该起始情况和原始饱和度增益函数2801定义了从第一参考动态范围(在这种情况下为4000尼特PB_CHDR)到第二参考动态范围(在该示例中为典型100尼特PB_C_SDR图像,其像素亮度和色度为Cb、Cr)时应如何处理像素色度。 SLHDR2PLUS的任务再次是将其实际表示为与不同的信道PB_C相关的处理,例如,如果PB_CH=600尼特,则我们需要找到信道饱和度增强规格曲线2804,它对应于原始的饱和度增强规格曲线2801,因为如果要从与原始的主HDR图像相对应的信道通信IDR图像开始,则它将应用相同的色度变化。 也就是说,如果将主HDR图像的任何像素(Y_HDR、Cb_HDR、Cr_HDR)映射到任何次级动态范围颜色(例如,SDR像素(Y_SDR、Cb_SDR、Cr_SDR))或针对250尼特MDR图像的对应像素颜色,以最优地驱动250尼特PB_D显示器(Y_MDR2、Cb_MDR2、Cr_MDR2),即,这涉及指定的并且通常作为元数据共同传送的(一个或多个)亮度映射函数和原始F_C函数,则当从信道图像颜色(Y_CDR6、Cb_CDR6、Cr_CDR6)开始时,应当获得完全相同或至少很接近(一种或多种)例如(Y_MDR2、Cb_MDR2、Cr_MDR2)像素颜色,但随后应用了对应的信道饱和度增强规格曲线2804(即,该函数能够被加载在色度处理确定单元1551中,并且该装置能够开始对传入像素进行批量处理);以及正确的信道亮度映射,如上文在各种可能的实施例中详细说明的那样。 更有趣的是,提供了与这些信道PB_C相关的亮度和色度映射函数的解码器,该解码器应当能够重建原始情况(特别是根据接收到的信道饱和度增强规格曲线来确定原始的饱和度增强规格曲线),例如,恢复HDR图像等,或者甚至执行任何向上或向下映射到任何次级动态范围(MDR),但从接收到的IDR图像及其像素颜色开始(并且优选使用相同的像素处理拓扑,优选是如图15所示的像素处理拓扑)。 在编码侧,如在亮度映射部分上的上述实施例中的任一个所阐明的那样(参见例如图9的F_H2hCI),能够通过进行例如归一化亮度的4000尼特PB_C_master_HDR到600尼特PB_CH的映射来生成用于信道通信的IDR图像。这是通过原始主函数分段点2802到信道自适应分段点2803的距离PL(Xs2)的水平移动示出的(仅通过细点划曲线示出了该移位的效果,该曲线仅被示出但未在技术上使用)。由于从600尼特IDR到100尼特的映射仅实现了完整的4000至100尼特色度处理的部分,因此编码器仍然需要计算针对这些点的新输出Y值,其对应于垂直移位(例如,信道自适应色度增强值点2805,其对应于其上方的圆,即,具有相同的Xc值)。 需要以第一种方式修改饱和度增强函数,以从主图像映射到信道表示(例如,PB_C_MHDR=4000尼特到PB_CH=600尼特),并且根据该示例,这优选如下执行: 首先,根据下式来计算修改因子 MF=1-(invPQ[PB_CH]-invPQ[PB_SDR]/ (invPQ[PB_C_MHDR]-invPQ[PB_SDR) [公式27] 其中,在示例PB_SDR=100尼特中,并且invPQ是在SMPTE 2084中标准化的PQ EOTF反函数的简写。 随后,计算信道自适应函数g(Xn),该函数被定义为: g(Xn)=F_C[Xn]*MF+(1-MF)/Rs [公式28] 其中,Rs是一个常数,通常选择为2.0。 其中,Xn是像素亮度的任何可能的归一化PQ尺度亮度表示,如图28所示。 用于要被加载到色度处理确定单元1551中的处理的新LUT可以例如在优选实施例中被定义为: F_C_chadap[Xn]=Min{LC0;(1+MF*POWER[Xn;2.4])/(Xn*Max[Rs/255;Rs*g(Xn)])*S} [公式29] 其中,F_C_chadap是与原始内容创建者的主HDR内容的F_C相对应的自适应的饱和度增强函数,但对于特定的PB_CH和对应的中间动态范围图像,LC0是一个常数,例如优选等于1/8,POWER表示幂函数;Rs是另一常数,优选等于2,并且S是一个常数,其取决于亮度码的字长使用的位数,例如,S=1/(POWER[2;字长]),1/1023用于10位输入图像。 有趣的是公式29的分子中的幂函数。这是一个良好工作函数的示例,其用于校正由于PQ定义的域中的亮度和色度的法典化而引起的饱和行为(与法线平方根行为相反,在SDR/MPEG时代是YCbCr的原始定义)中的非线性问题。 第一种方式修改步骤只是要进一步计算饱和度增强规格曲线2804的起点(实际上,这确实是从4000尼特到600尼特的映射的“一半”——从原始规格的4000尼特开始到100尼特——但是我们实际上对600尼特到100尼特的饱和度增强规格曲线2804感兴趣,因此我们必须将总的动作分成两部分,并且在第一个修改步骤中已经计算出了第一部分,现在计算整体的剩余部分)。 为了获得曲线2804,SLHDR2PLUS编码器必须做两件事。 首先,他需要通过利用亮度映射跟踪这样的点来计算针对F_C_chacomm[Xc]曲线2804(或类似地具有连续F_C曲线表示)的线性段的新定义点。 也就是说,每个原始点(来自元数据供应的原始4000-100尼特F_C曲线)(例如,Xs2)需要被映射到新的归一化点Xc2等。 这是通过应用总亮度映射PL(Xs2)来完成的,如在上述任何实施例中定义的那样,即,PL曲线是图9的F_H2hCI曲线。 例如,如果仅利用Para来定义亮度映射,则将使用经适当变形的Para(根据上述公式)将4000尼特PB_C_MHDR归一化亮度位置[在图28中用下标s指示]映射到对应的600尼特PB_CH归一化亮度位置[在图28中用下标c指示]。如果亮度映射还涉及白色偏移和/或定制的曲线形状等,则所有这些都需要被类似地调整为600尼特的情况,并且必须计算对应的600尼特归一化亮度位置(Xc…),曲线2804的定义从此处开始。 但是,对于所有在那里的(重新确定的)位置Xc的色度调整,只需要做其余部分即可从600尼特(或任何IDR的PB_CH)校正到最低动态范围参考水平(通常为100尼特PB-SDR)。 根据以下公式来计算Yc值: Yc=Ys/{Rs*(Ys*MF+(1-MF)/Rs)} [公式30] 注意,Ys=F_C[Xs]。 注意,这仅说明了曲线的更重要部分,即以下情况: 为了完成Xs<=invPQ[PB_C_MHDR],对于例如与示例PB_C_MHDR=4000尼特相对应的高于例如0.9值的归一化的PQ亮度,优选使用以下公式以保持正确的缩放关系: Xc=Xs*invPQ[PB_CH]/invPQ[PB_C_MHDR] [公式31] 将类似地计算针对这些较高的Xc值中的Yc值,或者如果实际上未使用曲线的那部分,则将保持最后一个相关值恒定。 最后,通常可能会涉及到某种量化水平的舍入,例如: (Xcr,Ycr)=round[255*(Xc,Yc)]/255 [公式32] SLHDR2PLUS解码器需要根据F_C_chacomm[Xc]曲线定义(即,信道饱和度增强规格曲线2804)的已发送的和已接收的相应对(Xc,Yc)和(Xcr,Ycr)对来恢复原始对(Xs,Ys)。因此,应用了编码器的逆向的两个步骤。 首先,解码器需要将饱和度增强曲线线性段定义点从其Xc位置重新映射到Xs位置。在上文中我们已经展示了如何从与IDR图像共同传送的元数据中接收到的信道自适应的亮度映射函数开始,计算从IDR(例如,600尼特)PB_CH亮度位置到原始主HDR亮度位置的亮度映射。 我们将在PQ域中调用该操作(如图28所示,在应用SMPTE 2084的PQ域中定义了Xs值和Xc值): Xs=PQICA(Xc) [公式33] 其中,该逆向信道自适应函数的形状再次取决于使用了亮度映射函数的哪个定义,例如单独Para还是例如Para加定制曲线,并且另一方面还取决于诸如阴影增益之类的定义了适用于洞穴探索HDR场景的特定Para的特定参数值等(以上针对各种实施例对所有内容进行了完整详细的介绍)。 校正的情况同样是: If Xc>invPQ,then Xs=Xc*invPQ[PB_C_MHDR]/invPQ[PB_CH] [公式34] 根据以下公式来计算所需的Ys值: Ys=(MF-1)*Yc/(Rs*MF*Yc-1) [公式35] 最后可能再次涉及舍入,例如舍入到1/255的步长。 最后,虽然这对于仅根据接收到的IDR图像重建原始主HDR图像颜色(Y、Cb、Cr)很有用,但是在以下情况下是有利的:SLHDR2PLUS解码器能够立即转换为(即,计算相应的例如(Y_MDR2颜色、Cb_MDR2颜色、Cr_MDR2)颜色)以最优方式驱动PB_D_MDR(例如,250或400尼特显示器)所需的任何中等动态范围图像,然后当然是一次显示,即,从信道自适应的IDR颜色(Y_CDR6、Cb_CDR6、Cr_CDR6)开始;即,例如通过将适当的亮度处理函数(或LUT等)和色度乘法器确定函数F_C_MDR加载到像素颜色处理拓扑中,如图15所示。 为此,可以有利地应用公式29的特定的F_C定义公式。 分子和分母都需要调整以适应新的情况,即,从PB_CH到PB_MDR的新的色度映射,当需要为250尼特显示器提供最优显示优化图像(曾经是原始主HDR图像,并且就解码器而言,是对应的传入600尼特IDR图像,对于在250尼特显示器上的显示来说,PB_CH和PB_MDR都不是很好的)时,PB_MDR例如是250尼特显示器。 为此,首先计算两个修改因子: MF_ch=1-(invPQ[PB_CH]-invPQ[PB_SDR]/ (invPQ[PB_C_MHDR]-invPQ[PB_SDR) [公式36] MF_do=1-(invPQ[PB_MDR]-invPQ[PB_SDR]/ (invPQ[PB_C_MHDR]-invPQ[PB_SDR) [公式37] 如果CPL[Xc]是亮度映射函数,则其被定义为: 针对每个PB_CH定义的归一化输入亮度Xc: 首先应用PQE OTF,然后使用具有针对值PB_CH的RHO参数的飞利浦感知器函数(PPF)来转换到感知域,然后将亮度映射函数的函数形状从PB_CH应用回到PB_C_MHDR,如根据内容创建者的可能的实施例和函数形状中的任一项所讲授的,然后使用飞利浦感知器函数(PPF)的反函数来转换到线性域,但是现在利用针对值PB_C_MHDR的RHO参数,并且最后根据SMPTE 2084应用逆PQ EOTF,从而产生对应的CPL[Xc]值。 然后,将CLY[Xc]函数计算为: CLY[Xc]=(1+MF_do*POWER[CPL[Xc];2.4])/(1+MF_ch*POWER[CPL[Xc];2.4])[公式38] 这涉及对色度乘法器定义函数的这一部分(通常为C_LUT)的旧(不再适用)情况的校正,我们将饱和度位置校正函数(FSNL)调用到该公式用于显示优化的新情况。 然后,两个g函数的计算如下: Gch[Xn]=F_C_[CPL[Xc]]*MF_ch+(1-MF_ch)/Rs; Gdo[Xn]=F_C_[CPL[Xc]]*MF_do+(1-MF_do)/Rs [公式39] (利用F_C_[CPL[Xc]],原始内容创建者的色度乘法器会产生原始的饱和度增益函数2801,该原始的饱和度增益函数2801根据F_C_chacomm[Xc]来计算由SLHDR2PLUS解码器在元数据中接收到的色度调整曲线,即,对应于曲线2804,即,通过例如对(Xs,Ys)点的上述计算来执行)。 最后,为IDR到MDR显示优化产生适当色度乘数的C-LUT计算如下: F_C_DO[Xn]=CLY[Xc]*max{Rs/255;Rs*Gch[Xn]}/max{Rs/255;Rs*Gdo[Xn]}[公式40] 该F_C_DO[Xn]函数能够在新传入的图像的开始之前被直接加载到单元1551中,以开始运行像素颜色处理器,从而及时产生正确显示的优化的MDR图像以用于显示等(例如,存储(熟练的读者能够理解,其他实现变体是可能的,但是所有计算都需要对应地修改))。 虽然提出了一些实施例/教导来阐明能够单独地或组合地改变的一些方面,但是能够理解,能够沿着相同的基本原理来形成若干另外的变体:根据遵照ETSI2 HDR视频通信或类似要求接收的不同的中间动态范围图像元数据来重新推导亮度映射公式以重建主HDR图像,该主HDR图像在内容创建站点进行了最优分级。本文中公开的算法部件可以(全部或部分)在实践中被实现为硬件(例如,专用IC的部分)或者被实现为运行在专用数字信号处理器或通用处理器等上的软件。 根据我们的介绍,本领域技术人员应当理解,哪些部件可以是任选的改进并且能够与其他部件结合实现,以及方法的(任选)步骤如何对应于装置的相应单元,反之亦然。在本申请中,“装置”一词以其最广泛的含义使用(即,允许实现特定目标的一组单元),因此能够是例如IC(的小电路部分),也可以是专用器具(例如,具有显示器的器具),也可以是联网系统的部分等。“布置”也以其最广泛的含义使用,因此可以特别包括单个装置、装置的部分、协作装置(的部分)的集合等。 应将计算机程序产品符号理解为包含命令集合的任何物理实现方式,该命令集合使得在一系列加载步骤(其可能包括中间转换步骤,例如,翻译成中间语言,以及最终处理器语言)之后使得通用或专用处理器能够将命令输入到处理器中并运行本发明的任何特征功能。特别地,计算机程序产品可以被实现为诸如磁盘或磁带之类的载体上的数据,存储器中的数据,经由有线或无线网络连接传输的数据或纸上的程序代码。除了程序代码之外,程序所需的特征数据也可以被体现为计算机程序产品。 该方法的操作所需的某些步骤可能已经存在于处理器的功能中,而不是在计算机程序产品(例如,数据输入和输出步骤)中进行描述。 应当注意,上述实施例说明而非限制本发明。在技术人员能够容易地实现所呈现的示例到权利要求的其他区域的映射的情况下,为简洁起见,我们没有深度提及所有这些任选项。除了如权利要求中所组合的本发明的要素的组合之外,这些要素的其他组合也是可能的。要素的任何组合能够在单个专用要素中实现。 权利要求中的括号之间的任何附图标记都不旨在对权利要求进行限制。“包括”一词并不排除权利要求中未列出的要素或方面的存在。要素之前的词语“一”或“一个”并不排除多个这样的要素的存在。
PB_C:对于任何情况通常表示的图像的最大可编码亮度,C表示 PB_D:任何显示器的最大可显示亮度(又被称为峰值明亮度),例如,当前的HDR显示器通常具有1000尼特的PB_D(但当前也可以购买到600尼特或2000甚至4000尼特的值的PB_D,并且将来可能会有更高的PB_D值)。 IDR(中间动态范围):用于表示最初利用PB_C1定义的图像(即,主图像)的机制,该图像例如为10000尼特,实际上是PB_C2 MDR(中等动态范围;当然不要与IDR相混淆):具有PB_C_MDR的图像通常位于接收到的HDR图像的PB_C(PB_C_H)与PB_C_SDR=100尼特之间(通过视频字段中的约定定义),该PB_C_MDR值被设置为等于任何 Para:一种特殊的,高度实用的函数,其用于将在对应于PB_C1的第一归一化亮度范围上定义的亮度映射到由PB_C2归一化的亮度,并且该函数在上面由公式4和5以及中间的抛物线形段来定义,或者正式发布于ETSI TS103433-1V1.2.1(2017-08)[简称ETSI1]的第70页,公式C-20。 Abcara:任何para的反函数(即,具有唯一定义其形状的参数),也能够通过交换轴来直观地找到该逆向形状(但有时需要数学计算)。 WLO(白色水平偏移):第一图像(im1)的归一化亮度范围内的归一化亮度,该亮度在第二归一化亮度范围上映射为1.0,由此PB_C_im1>PB_C_im2。在本申请中,沿着编码过程定义,针对不同PB_C的各种图像有若干不同的WLO,因此为了轻松区分它们,它们给出了后缀,例如,WLO_gr。 BLO(黑色水平偏移):第一图像的归一化亮度范围内的归一化亮度,该亮度在第二归一化亮度范围上映射为0.0,由此PB_C_im1>PB_C_im2。在本申请中,沿着编码过程定义,针对不同PB_C的各种图像有若干不同的BLO,因此为了轻松区分它们,它们给出了后缀,例如,BLO_IDR。 P_LUT:将第一图像的任何可能的归一化亮度转换为第二图像的对应归一化亮度所需的总映射(由我们的编解码器方法中的部分重新分级组成,如在图4中解释的那样),其中,PB_C_im1!=PB_C_im2(通常至少有一个1.02的乘法因子是不同的)。因为P_LUT[L](通常取决于图像内容(例如通过智能图像分析自动机或人类进行优化))可以改变归一化亮度的相对分布(即,直方图),所以这是动态范围变换的关键方面,例如,IDR图像定义中涉及的一个,这是当前新颖的HDR编解码器理念的关键。 C_LUT:像素颜色的色品(也被称为色度)的像素亮度相关映射,以及完成颜色变换的P_LUT(YCbCr_out=T[Y_cbCr_in]) 飞利浦感知器函数(PPF):被布置为将在0到PB_C之间的范围上定义的亮度参数化地转换成在感知上均匀的亮度的一个函数,PB_C值是经由参数RHO对PPF函数形状的控制参数,并且因此为各种输入亮度分配在视觉上均匀的编码亮度。
- 多范围HDR视频编码
- 扩展的高动态范围HDR到HDR色调映射的方法、装置和系统