具体实施方式
在下文中参照示出本公开的实施例的附图更全面地描述本公开。然而,本公开可以以很多替代的方式来实施,而不应当被解释为局限于在本文中所阐述的实施例。相应地,虽然本公开允许各种修改和替代的形式,但是在附图中作为示例示出本公开的特定的实施例,并且在本文中将详细地描述这些特定的实施例。然而,应当理解的是,没有意图将本公开限制于所公开的具体形式,而是相反地,本公开将覆盖落入由权利要求所限定的本公开的精神和范围内的所有修改、等效方案和替代方案。
在本文中所使用的术语仅用于描述具体的实施例的目的,而非意图限制本公开。如在本文中所使用的那样,单数形式的“一”、“一个”和“该”指在也包括复数形式,除非上下文以其他形式明确地指出。还应当理解的是,术语“包括”、“包括有”、“包含”和/或“包含有”在本说明书中使用时指定所述特征、整数、步骤、操作、元件和/或分量的存在,但是不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、分量和/或它们的分组。而且,当元件被称为“响应于”或“连接到”另外的元件时,其可以直接响应于或连接到其他元件,或者可以存在中介元件。相反,当元件被称为“直接响应于”或“直接连接到”其他元件时,不存在中介元件。如在本文中所使用的那样,术语“和/或”包括相关联的所列项目中的一个或多个的任意或全部的组合,并且可以被简写为“/”。
应当理解到,虽然术语“第一”、“第二”等可能在本文中用于描述各种元件,但是这些元件不应当被这些术语所限制。这些术语仅用于将一个元件与另外的元件区别开。例如,第一元件可以被称为第二元件,并且类似地,第二元件可以被称为第一元件,而不脱离本公开的教导。
虽然一些图在通信路径上包括箭头以示出通信的主要方向,但是应当理解到,通信可以在与所示箭头相反的方向上进行。
一些实施例参照框图和操作流程图来描述,其中,每个框表示电路元件、模块、或者包含用于实现所指定的逻辑功能的一个或多个可执行指令的代码的部分。还应当注意,在其他实施方式中,在框中所标记的功能可能以不同于所标记的次序进行。例如,相继示出的两个框实际上可以基本上并行地执行,或者各个框有时可以以相反的次序执行,取决于所涉及的功能。
在本文中所提及的“一个实施例”或“实施例”意味着结合该实施例所描述的具体的特征、结构或特性可以被包括在本公开的至少一个实施方式中。在说明书的各处出现的表述“在一个实施例中”或“根据实施例”未必全部指相同的实施例,单独的实施例或替代的实施例也未必与其他实施例是相互排斥的。
权利要求中出现的标号仅用于例示,而不对权利要求的范围具有限制作用。
虽然没有显式地描述,但是所呈现的实施例和变型可以以任何组合或子组合的形式使用。
彩色图片被视为具有三个色彩分量,以此形式来表示彩色图片的像素值。本公开虽然通过具体的示例来解释,但是不限于任何色彩空间(在其中表示三个分量),而是扩展到诸如RGB、CIELUV、XYZ、CIELab等任何色彩空间。
在实施例中,因子(即,实数值)取决于调制值Ba。调制(或背光)值通常与HDR图片相关联,并且代表HDR图片的光亮度。这里,通过类比由彩色面板(例如LCD面板)和背面照明装置(例如LED阵列)制成的电视机,而使用术语(调制)背光。背面装置(通常生成白光)用于照明彩色面板以对TV提供更多的光亮度。因此,TV的亮度是背面照明器的亮度和彩色面板的亮度的乘积。该背面照明器往往被称为“调制”或“背光”,并且其强度在某种程度上代表总体场景的光亮度。
图2示意性地示出对彩色图片I进行编码的方法的第一示例的步骤的图。
在步骤11中,模块C从待编码的彩色图片I获得亮度分量L和两个色度分量C1和C2。例如,分量(L,C1,C2)可以属于在对彩色图片I应用OETF之后所获得的YUV色彩空间,并且色彩分量Ec可以属于线性RGB色彩空间或XYZ色彩空间。
在步骤12中,模块GM将亮度L和色度C1、C2分量映射到最终的亮度分量L”和两个最终的色度分量C”1、C”2,使得从该最终的亮度(L”)和色度(C”1,C”2)分量所获得的色彩的全域G2映射到待编码的彩色图片I的色彩的全域G1上。
图3例示这样的全域映射。从分量L和两个色度分量C1和C2所获得的色彩的全域(R,G,B,W)被表示在虚线中,而待编码的图片I的色彩的全域(R’,G’,B’,W’)表示在实线中。
将全域(R,G,B,W)映射到全域(R’,G’,B’,W’)意味着将主色R、G、B分别映射到主色R’、G’、B’并且将白色点W映射到白色点W’。映射的目的是将(L,C1,C2)变换为(L”,C”1,C”2),使得从L”、C”1、C”2分量所获得的感知色彩比(L,C1,C2)更好地匹配彩色图片I的色彩。
在步骤13中,编码器ENC对最终的亮度L”分量和两个最终的色度分量C”1、C”2进行编码。
根据实施例,经编码的分量L”和色度分量C”1、C”2被存储在本地或远程存储器中和/或添加到比特流F中。
根据在图4中所例示的步骤12的实施例,两个最终的色度分量C”1、C”2通过按照因子β-1(Ba,L(i))对两个色度分量C1、C2中的每个进行缩放来获得(步骤121),因子β-1(Ba,L(i))取决于从亮度分量L所获得的调制值Ba以及亮度分量L的每个像素i的值,并且模块LCC(步骤122)通过将亮度分量L和两个最终的色度分量C”1、C”2线性地组合到一起来获得最终的亮度分量L”:
其中,m和n是通过校正最高的亮度峰值来避免色彩饱和的系数(实数值)。
根据实施例,系数m和n存储在本地或远程存储器中和/或添加到比特流BF,如图4所示。
根据(等式A的)模块LCC的变型,最终的亮度分量L”的值总是低于亮度分量L的值:
L″=L-max(0,mC′1+nC′2)
这确保最终的亮度分量L”的值不会超出亮度分量L的值,从而确保不出现色彩饱和。
根据在图5中所例示的步骤11的实施例,在步骤110中,模块IC通过将三个分量Ec线性地组合到一起来获得表示彩色图片I的亮度的分量Y:
其中,A1是定义从(E1,E2,E3)色彩空间到色彩空间(Y,C1,C2)的色彩空间变换的3x3矩阵的第一行。
在步骤130中,模块FM通过对分量Y应用非线性函数f来获得亮度分量:
L=f(Ba,Y) (1)
其中,Ba是由模块BaM从分量Y所获得的调制值(步骤120)。
对分量Y应用非线性函数f减小其动态范围。换句话说,亮度分量L的动态性相比于分量Y的动态性是减小的。
基本地,减小分量Y的动态范围,从而通过使用10个比特来表示分量L的亮度值。
根据实施例,在应用非线性函数f之前,用调制值Ba除分量Y:
L=f(Y/Ba) (2)
根据实施例,非线性函数f是伽马函数:
其中,Y1根据等式(1)或(2)的实施例等于Y或Y/Ba,B是常数值,γ是参数(严格低于1的实数值)。
根据实施例,非线性函数f是S-Log函数:
L=a.ln(Y1+b)+c
其中,a、b和c是所确定的SLog曲线的参数(实数值)使得f(0)和f(1)是不变的,并且SLog曲线的导数在通过低于1的伽马曲线延长时在1处是连续的。这样,a、b和c是参数γ的函数。
在表格1中示出典型的值。
表格1
在有利的实施例中,就HDR压缩性能以及所获得的SDR明亮度的良好的可视性而言,接近于1/2.5的γ的值是高效的。这样,3个参数可以有利地取下面的值:a=0.44955114,b=0.12123691,c=0.94855684。
根据实施例,非线性函数f根据分量Y的像素值是伽马校正或SLog校正。
对分量Y应用伽马校正将上拉暗区域,但是不会降低足够的高光以避免亮像素的燃烧。
然后,根据实施例,模块FM根据分量Y的像素值应用伽马校正或SLog校正。信息数据Inf可以指示应用伽马校正还是Slog校正。
例如,当分量Y的像素值低于阈值(等于1)时,则应用伽马校正,否则应用SLog校正。
根据步骤120的实施例,调制值Ba是分量Y的像素值的平均值、中间值、最小值或最大值。这些操作可以在线性HDR亮度域Ylin中或者在例如ln(Y)或Yγ(γ<1)这样的非线性域中进行。
根据实施例,当该方法用于对属于图片序列的若干彩色图片进行编码时,针对每个彩色图片即图片组(GOP)或者针对诸如但不限于在HEVC中所定义的条带或转换单元这样的彩色图片的一部分,确定调制值Ba。
根据实施例,值Ba和/或非线性函数f的参数(诸如a、b、c或γ)和/或信息数据Inf存储在本地或远程存储器中和/或添加到比特流BF中,如在图2和图5中所示。
在步骤140中,模块CC从彩色图片I获得至少一个色彩分量EC(c=1,2,3)。色彩分量Ec可以直接从本地或远程存储器获得或者通过对彩色图片I应用色彩变换获得。
在步骤150中,通过按照因子r(L)对每个色彩分量Ec进行缩放来获得中间色彩分量E’c(c=1、2或3),因子r(L)取决于亮度分量L:
其中,r(L(i))是由模块RM所确定(步骤160)的因子(实数值),其取决于分量L的像素i的值,E′c(i)是中间色彩分量E’c的像素i的值,而Ec(i)是色彩分量Ec的像素i的值。
按照因子进行缩放意味着乘以所述因子或者除以所述因子的倒数。
按照取决于亮度分量L的因子r(L)对每个色彩分量Ec进行缩放保留了彩色图片I的色彩的色调。
根据步骤160的实施例,因子r(L)是亮度分量L对分量Y的比率:
其中,Y(i)是分量Y的像素i的值。实际上,分量Y的像素的值Y(i)无歧义地取决于亮度分量L的像素的值L(i),使得该比率可以写为仅是L(i)的函数。
该实施例是有利的,因为按照还取决于分量Y的因子r(L)对每个色彩分量Ec进行缩放保留了彩色图片I的色彩的色调,并且从而提高经解码的彩色图片的可视质量。
更准确地说,在色度学和色彩理论中,彩度、色度和饱和度指的是特定色彩的感知强度。彩度是色彩和灰度之间的差异的程度。色度是相对于在相似的观看条件下呈现白色的另一个色彩的光亮度的彩度。饱和度是相对于其自身的光亮度的色彩的彩度。
高度丰富多彩的刺激是生动且强烈的,而不太丰富多彩的刺激看上去更柔和,更接于灰色。在根本没有彩度的情况下,色彩是“中性的”灰色(在其任何色彩中均没有彩度的图片被称为灰阶)。任何色彩可以根据其彩度(或色度或饱和度)、光度(或光亮度)和色调来描述。
色彩的色调和饱和度的定义取决于被用于表示该色彩的色彩空间。
例如,当使用CIELUV色彩空间时,饱和度suv被定义为色度相对于亮度L*的比率。
然后,色调通过下式给出:
根据另外的示例,当使用CIELAB色彩空间时,饱和度被定义为色度相对于亮度的比率:
然后,色调通过下式给出:
这些等式是饱和度和色调的符合对饱和度的人类感知的合理的预测器,并且表明在CIELAB(或CIELUV)色彩空间中调整光亮度同时保持角度a*/b*(或u*/v*)固定不影响色调,并且从而不影响相同色彩的感知。在步骤150,按照相同的因子对色彩分量进行缩放保留该角度,从而保留色调。
现在考虑在CIELUV色彩空间中表示彩色图片I,并且考虑图片I2,图片I2是通过将CIELUV色彩空间的亮度分量L和两个色度分量U(=C1)和V(=C2)组合在一起而形成的,亮度分量L的动态范围相比于彩色图片I的亮度的动态范围是减小的(步骤130)。图片I2的色彩从而被人类不同地感知,因为色彩的饱和度和色度改变了。方法(步骤150)确定图片I2的色度分量C1和C2,使得图片I2的色彩的色调最佳地匹配彩色图片I的色彩的色调。
根据步骤160的实施例,因子r(L)由下式给出:
该最后的实施例是有利的,因为其针对非常暗的像素防止该因子变为零,即,允许比率是可逆的,而不管像素值如何。
在步骤170中,从至少一个中间色彩分量E’c获得两个色度分量C1、C2。
图6示意性地示出根据本公开的实施例的从至少一个比特流解码彩色图片的方法的步骤的图。
在步骤21中,解码器DEC从本地或远程存储器或者通过至少部分地对比特流F进行解码,来获得亮度分量L”和两个色度分量C”1和C”2。
在步骤22中,模块IGM通过对从所述亮度L”和色度C”1、C”2分量所获得的色彩应用逆映射,从所述亮度L”和色度C”1、C”2分量获得最终的亮度分量L和两个最终的色度分量C1、C2。
在步骤23中,模块INVC从所述最终的亮度L分量和所述两个最终的色度C1、C2分量获得待解码的彩色图片的至少一个色彩分量Ec。经解码的图片通过将所述至少一个色彩分量Ec组合在一起来获得。
根据在图7中所例示的步骤22的实施例,模块ILCC通过将亮度分量L”和两个色度分量C”1、C”2线性组合在一起来获得(步骤222)最终的亮度分量L,并且通过按照取决于调制值Ba和最终亮度分量L的每个像素i的值两者的因子β(Ba,L(i))对两个色度分量C”1、C”2中的每个进行缩放(步骤221)来获得两个最终的色度分量C1、C2,并且:
其中,m和n是系数(实数值)。系数m和n可以是通过矩阵ΦBa(L)的因数分解所获得的那些系数,即,m和n是在Φ0中所获得的那些系数。因此,它们取决于彩色图片I的全域(例如,BT.709或BT.2020全域)。m和n的典型的值是区间[0.1,0.5]中的m≈n。
等式(J)被视为应用于从亮度L”和色度C”1、C”2分量所获得的色彩的逆映射。等式(J)直接从被视为色彩映射的等式(A)获得。
根据模块ILCC的变型,最终的亮度分量的值总是高于亮度分量L”的值:
L=L"+max(0,mC′1+nC′2)
该实施例是有利的,因为其确保最终的亮度分量L不超过通常被解码器用于定义亮度峰值的潜在剪裁值。当解码器需要亮度峰值时以及当最终的亮度分量由等式(J)给出时,最终的亮度分量L被剪裁,这引入一些伪像。
根据实施例,调制值Ba和/或系数m和n从诸如查找表这样的远程或本地存储器获得,或者从如图7中所例示的比特流BF获得。
根据实施例,针对特定的调制值Ba和最终的亮度分量L的特定值L(i),从查找表(LUT)获得因子β-1(Ba,L(i))。从而,针对多个亮度峰值(诸如例如1000尼特、1500尼特和4000尼特),针对每个特定的调制值Ba,在LUT中存储特定的因子β-1(Ba,L(i))。
根据变型,通过在对其存储LUT的多亮度峰值之间内插亮度峰值,针对最终的亮度分量L的像素的值,获得特定调制值Ba的因子β-1(Ba,L(i))。
根据在图8中所例示的步骤23的实施例,在步骤220中,模块IFM通过对最终的亮度分量L应用非线性函数f-1获得第一分量,使得第一分量Y的动态性相比于最终的亮度分量L的动态性是增加的:
Y=f-1(Ba,L) (A3)
该非线性函数f-1是非线性函数f(步骤130)的逆。
这样,函数f-1的实施例根据函数f的实施例来定义。
根据实施例,非线性函数f-1的参数(诸如a、b、c或γ)和/或信息数据Inf从本地或远程存储器(例如查看表)获得和/或从在图8中所例示的比特流BF获得。
根据实施例,亮度分量L在应用了非线性函数f-1之后乘以调制值Ba:
Y=Ba*f-1(L) (A4)
根据实施例,非线性函数f-1是伽马函数的逆。
然后,分量Y由下式给出:
其中,Y1根据等式(A3)或(A4)的实施例等于Y或Y/Ba,B是常数值,γ是参数(严格低于1的实数值)。
根据实施例,非线性函数f-1是S-Log函数的逆。然后,分量Y1由下式给出:
根据实施例,非线性函数f根据分量Y的像素值是伽马校正的逆或SLog校正的逆。这由信息数据Inf指示。
在步骤230中,模块ILC根据第一分量Y、两个最终的色度分量C1和C2,并且根据取决于最终的亮度分量L的因子r(L),获得至少一个色彩分量Ec。然后,通过将所述至少一个色彩分量Ec组合在一起获得经解码的彩色图片。
现在参照图9和图10,例示通用编码方案(编码器和解码器)的第二示例,其主要取决于亮度和色度的、用于从HDR映射到SDR的双变量函数β”(Ba,L)、β’(Ba,L)和g(Ba,L)以及两个常量参数a和b的集合,使得相比于原始的HDR图像/视频,在SDR图像/视频中保留色彩以及纹理。虽然g(Ba,L)优选为变量L的Slog函数,但是应当优化三元组(a,b,β”)以产生最佳的可能的SDR/HDR色彩匹配(色调和感知饱和度),其取决于峰值亮度、输入/输出全域以及背光值Ba。
编码涉及函数β”(Ba,L),而解码涉及函数β’(Ba,L)。
参照图9,示意性地示出例示对彩色图片进行编码的方法的示例900的步骤的图。编码器侧处理步骤概述如下。在第一步骤910中,执行亮度动态性减小以取得L作为输入高动态范围亮度Y=YHDR的动态性减小版本,在所示示例中,从输入RGBHDR图像获得。在所示示例中,执行HDR亮度YHDR动态性的减小,以取得明亮度L=LSDR,例如以10个比特,其中,L=LSDR=g(YHDR),g是被用于对动态性进行压缩的非线性函数。在所示的实施例中,函数g还可能取决于背光值Ba,在所示示例中,从分析输入亮度得出。
在第二步骤920中,进行两个动态性减小的色度分量的构造,在所示的示例中的U’V’。这完成LSDR,从而获得具有三个分量的SDR图片或视频,在所示示例中的LSDR UV,其中,R#B#G#被确定为RGBHDR的平方根,并且是按照公共乘法因子β”的R#B#G#的归一化。这里,β”(LSDR)是至少取决于LSDR的给定函数。在所示示例中,两个色度分量U’和V’被确定为 其中,矩阵为2x3矩阵。
在第三步骤930中,进行通过全域映射的色彩分量的校正,这里,从LU’V’到L’U”V”。在所示示例中,执行从具有不正确的色调和饱和度的SDR空间LUVSDR到经校正的空间L’U’V’SDR的全域映射,从而更好的保留HDR色彩。在所示示例中,[L’;U”;V”]=Mat3x3(L)[L;U’;V’]。
参照图10,示意性地示出例示对彩色图片进行解码的对应方法的示例1000的步骤的图。解码器侧处理步骤概述如下。
在第一步骤1030(其可以被视为在图9中所示出的对应的第三步骤930的逆)中,进行通过全域去映射的从L’U”V”回到LU’V’的色彩分量的校正。在所示示例中,确定[L;U'’;V’]=Mat3x3[L’;U”;V”]。
在第二步骤1010(其可以被视为在图9中所示出的对应第一步骤910的逆)中,进行亮度动态下扩大,以取回Y,即,对于所示示例,YHDR=f-1(LSDR)。
在第三步骤1020(其可以被视为在图9中所示出的对应的第二步骤920的逆)中,从YU’V’恢复RGBHDR。这包括按照公共乘法因子β’的到UrVr的U’V’的重归一化以及按照的值S的确定。在所示示例中,R#、G#和B#被确定为[R#;G#;B#]=Mat3x3[S;Ur;Vr],并且RGBHDR作为R#G#B#的平方而获得。
通过构造,为了取得作为编码器的精确的逆的解码器,必须取得β’=1/β”。因此,对于给定的对(a,b),β”的确定足以定义编码器和解码器两者。
要解决的问题是找到β”,使得SDR L’U”V”色彩至多对应于输入HDR色彩(色调和感知饱和度)并且处理是可解码的,即,按照β”进行缩放尽可能最佳地避免U”V”中的剪裁。
参照图11,示意性地示出根据本公开的实施例的用于匹配不同动态范围的彩色图片之间的色彩的方法。该方法包括:获得输入彩色图片的输入色域1101;获得输出彩色图片的输出色域1102;以及修改1103输出色域以匹配输入色域,其中,修改包括计算输入色域与输出色域之间的减小的(例如,最小化的)感知色彩误差距离。
作为示例,将参照在图12中所示出的实施例来解释最小化,其中,输出彩色图片是主要对应于参照图9所描述的编码的编码器的输入处的HDR输入彩色图片的SDR版本。因此,省略对应的编码步骤1210、1220、1230的详细描述,并且描述关注于优化问题。
执行β”的优化,使得就所感知的色彩失真或误差而言,输入HDR全域1201与输出的相关联的SDR全域1202之间的距离最小化。为此,必须精确地定义全域、编解码器的全域的图像以及两个全域之间的距离的概念。
为了解决最小化问题,固定以下参数:背光Ba,矩阵[L’;U”;V”]=Mat3x3(L)[L;U’;V’],即,两个参数(a,b),以及亮度级别Y0。
然后,得出优化的β”值,即β”(Ba,L0,a,b)值,该值使以亮度Y0的输入HDR全域与以明亮度L0=f(Y0)的输出SDR全域之间的距离最小化。
输入HDR全域由2D全域三角形(例如,BT709或BT2020三角形)中的(x,y)点和亮度Y0给出。在变型中,可以使用另外的空间来描述全域,例如,Lab空间的子空间ab等。对于所呈现的示例,根据转变公式得出绝对线性XYZHDR坐标1203:
X=Y0x/y,Y=Y0和Z=Y0(1-x-y)/y。
在XYZ色彩空间中所描述的输入色域分别使用(例如,取决于输入彩色图片)根据ITU Rec.709或ITU Rec.2020的用于将全域从XYZ表示变换成RGB表示的3x3变换矩阵,被变换成其在RGB色彩空间中的表示。然后,通过使用BT709或BT2020 3x3矩阵E 404的从XYZ到RGB的变换,取得被用作LUV编码器1210、1220、1230的输入的线性RGBHDR分量,如图12中所示:
在输出侧,编码器1210、1220、1230(这里,参照图9所解释的LUV编解码器)提供对应于在SDR显示器上所显示的标准YUV图像的L’U’V’1205。这通过应用由ITU-R所定义的标准BT709/2020RGB->YUV矩阵的逆矩阵A-1改变回到伽马化的R’G’B’SDR空间1206;然后,通过应用1207伽马化到线性的BT709/2020EOTF改变回到线性RGBSDR空间。全域中的坐标通过使用在输入侧所使用的矩阵E的逆1208而应用到XYZSDR空间的变换来确定,并且最终按照x=X/(X+Y+Z)和y=Y/(X+Y+Z)找到1209(x,y)SDR。
这样,所示出的LUV通用编解码器定义映射
对于固定的a、b,全域上的输入和输出对(x,y)之间的距离的最小化确定了取决于(Ba,Y0)或等效地取决于(Ba,L0)的β″的值,如下:
其中,dxy是全域上所定义的色度距离。
下面,示出积分域和距离dxy的构造。全域通过三个主色的(x,y)坐标来定义。例如,BT709全域的三角形是具有三个如下顶点的三角形:
xR=0.64、yR=0.33,xG=0.30、yG=0.60以及xB=0.15、yB=0.06。
全域G内部的彩色点被定义为主色的正加权组合,即,三个主色的凸包:
全域的网孔化通过域[0,1]2中的参数(λ,μ)的网孔化来进行,网孔当且仅当v=1-λ-μ为正时有效。对这两个参数的均质网孔化得到如图13所示的全域离散化。
全域闭包通过丢弃xy网孔来确定,对于所述xy网孔,由Y0给出,其线性RGB表示的分量超出峰值亮度P。针对Y0的各个值,在图14中示出剩余的全域。仅白色点601保持在峰值Y0=P附近。
然而,在xy空间中的该均质网孔化不影响人类对色彩的敏感度。理想地,将期望在敏感的区域中的更多的网孔以及在色彩差异不太被感知到的地方的更少的网孔。理论上,应当将均质网孔化从欧几里得感知色彩空间映射到xy空间上。这通过使用Lab色彩空间并且在xy空间中对每个网孔用权重替换经映射的非均质为网孔化来实现。
考虑将全域点(x,y)映射到Lab空间点(L,a,b)的函数在所示的示例中,假设亮度Y0是单位值。
在X=x/y、Y=Y0=1和Z=(1-x-y)/y的情况下,对应的Lab空间点通过L=116f(Y/Yf)、a=500(f(X/Yf)-f(Y/Yf))和b=200(f(Y/Yf)-f(Z/Yf))来确定,其中,Yf是环境亮度参考,并且f是下面的非线性变换
可以看到,Y和L是固定的,明亮度分量L不起作用,而ω实际上将2D xy量映射到2Dab量。量的改变通过由下式所定义的ω的雅可比矩阵Jac(ω)的行列式的绝对值J(x,y):=|Jac(ω)|来提供:
由xy网孔所占据的量与均质ab色彩空间中的J(x,y)成比例。因此,在点(x,y)的色彩编码的误差乘以Lab空间中的J(x,y)。这是经加权的距离在空间xy上被如下定义以测量色彩差异的原因:
dxy:=J(x,y)dab
其中,dab是均质色彩空间ab上的距离。
在图15中例示每个网孔的权重,其中,每个点的半径与J(x,y)成比例。这强调了如下公知事实:人类对于红色(对应于所示的全域三角形的最右边区域)中的误差比其他色彩中的误差更敏感。
实际上,所示的权重已经通过使用比上述内容更精巧的Lab(参见Lab 1994和Lab2000公式,其具有处理针对高饱和度的更低的敏感度以及针对灰色的更多的敏感度而额外项)获得。全域上的积分应当被理解为在所有网孔上的总和。这引起精确优化问题:
其中,假设网孔在xy中是大小均匀的。现在关注于针对dab的公式。
一方面,在Lab空间中,在明度L与非归一化的饱和度(或者所谓的色度)之间存在相关性(应当注意到,根据L定义L’的参数a和b不同于用于Lab空间的a、b),而另一方面,与色彩的感知饱和度Sab之间存在关联性。在某种程度,接受感知饱和度Sab或多或少地满足色度与明亮度之间的下面的比率。
Sab=Cab/Y1/3
现在构造距离dab,使得在HDR与SDR之间保留感知饱和度。定义Lab映射
通过公式
X=Y0x/y、Y=Y0和Z=Y0(1-x-y)/y
a=500(f(X/Yf)-f(Y/Yf))和b=200(f(Y/Yf)-f(Z/Yf))
保留色调意味着保持a对b的比率,而还保留色度Cab意味着保持a和b。替代地,保留色调和感知饱和度Sab通过保持以下两个比率来实现:a/Y1/3和b/Y1/3。
这是考虑下面的函数代表感知饱和度的原因,即,对(a/Y0 1/3,b/Y0 1/3),
使得在构造β″以便保留感知饱和度时,变换应当在下是不变的。可以简化公式以去掉参数Y0。
Ξ(x,y)=(500(f(x/y)-1),200(1-f((1-x-y)/y)))
对于所描述的示例,可以使用范数|| ||2,因为Lab空间是均质欧几里得感知空间。中的指数L0被理解为使用SDR亮度作为环境亮度参考,即,YSDR=OETFBT -1(L0)。
从下面的最小化问题获得保留饱和度的最优的β″。
β″opt,sat(Ba,L0)
通过以适当的间隔的系统搜索找到最优的β″opt,sat。对于在图8中所示的示例,该搜索容易得出结果,对于示例参数Ba=3.9、P=4000、Y0=500、a=0.4799和b=0.4658,成本函数cost(β″)的曲线图证明这一点。
最后,在编解码器中所使用的值β″=β″codec根据β″opt,sat调整至乘法常数(接近于单位值),以获得LDR与HDR之间的感知饱和度的精细调整:β″codec∝β″opt,sat。
参照图17,可以从上述的饱和度优化找到β″codec的形状。图17示出Ba的各个值的整个范围的L=[0,1024[的β″codec(Ba,L)对L的曲线图。显然,β″codec(Ba,*)的LUT(查找表)可以容易地根据Ba的其他值的硬编码的LUT进行内插。
在图9至图13中,步骤可以被视为模块或功能单元,其可以与可区分的物理单元相关联,也可以不与可区分的物理单元相关联。例如,这些模块或它们中的一些可以集合在唯一的组件或电路中,或者用于软件的功能。相反,一些模块可以潜在地由分开的物理实体构成。与本公开兼容的装置使用纯粹的硬件来实现,例如,使用诸如ASIC或FPGA或VLSI(分别为专用集成电路、现场可编程门阵列、超大规模集成电路)这样的专用硬件来实现,或者由嵌入在设备中的若干集成电子组件或者由硬件和软件组件的混合来实现。
图18表示可以被配置为实现参照图1至图4所描述的方法的设备的示例性架构1000。
设备1800包括通过数据和地址总线1801链接在一起的下列元件:
-微处理器1802(或CPU),其例如是DSP(或数字信号处理器);
-ROM(或只读存储器)1803;
-RAM(或随机存取存储器)1804;
-用于从应用传送和/或接收数据的I/O接口1805;以及
-电池1806。
根据变型,电池1806在设备外部。图18中的这些元件中的每个是本领域的技术人员公知的,并且将不作进一步的公开。在所提及的存储器中的每个中,在说明书中所使用的措词“寄存器”可以对应于小容量(一些比特)的区域或者非常大的区域(例如整个程序或大量的所接收或解码的数据)。ROM1803至少包括程序和参数。根据本公开的方法的算法存储在ROM 1803中。在开启时,CPU 1802将程序上载到RAM中,并且执行对应的指令。
RAM 1804包括寄存器中的在设备1800的开启之后上载并由CPU 1802执行的程序、寄存器中的输出数据、寄存器中的方法的不同状态下的中间数据、以及寄存器中的用于执行方法的其他变量。
在本文中所描述的实现方式可以实现为例如方法或处理、装置、软件程序、数据流或信号。尽管仅在单一形式的实现方式的背景下进行了论述(例如,仅作为方法或设备进行了论述),但是所论述的特征的实现方式也可以实现为其他形式(例如,程序)。装置可以实现为例如适当的硬件、软件和固件。方法可以实现在例如装置中,装置是诸如例如处理器,其通常指处理设备,例如包括计算机、微处理器、集成电路或者可编程逻辑器件。处理器还包括通信设备,诸如例如计算机、手机、便携/个人数字助理(PDA)以及便于在终端用户之间进行信息通信的其他设备。
根据特定的实施例,彩色图片从源获得。例如,源属于包括下列的集合:
-本地存储器(1803或1804),例如视频存储器或RAM(或随机存取存储器)、闪速存储器、ROM(或只读存储器)、硬盘;
-存储接口,例如与海量储存器、RAM、闪速存储器、ROM、光盘或磁载体的接口;
-通信接口(1805),例如有线接口(例如,总线接口、广域网接口、局域网接口)或无线接口(诸如IEEE 802.11接口或接口);以及
-图片拍摄电路,例如,诸如例如CCD(电耦器件)或CMOS(或互补金属氧化物半导体)这样的传感器。
根据不同的实施例,图片被发送给目的地。具体地,目的地属于包括下列的集合:
-本地存储器(1803或1804),例如视频存储器或RAM(或随机存取存储器)、闪速存储器、ROM(或只读存储器)、硬盘;
-存储接口,例如与海量储存器、RAM、闪速存储器、ROM、光盘或磁载体的接口;
-通信接口(1805),例如有线接口(例如,总线接口、广域网接口、局域网接口)或无线接口(诸如IEEE 802.11接口或接口);以及
-显示器。
根据不同的实施例,从源获得比特流BF和/或F。示例性地,从例如视频存储器(1804)、RAM(1804)、ROM(1803)、闪速存储器(1803)或硬盘(1803)这样的本地存储器读取比特流。在变型中,比特流从例如与海量储存器、RAM、闪速存储器、ROM、光盘或磁载体接口这样的存储接口接收和/或从例如到点对点链路、总线、点到多点链路或广播网络的接口这样的通信接口(1805)接收。
根据不同的实施例,被配置为实现参照图9至图13所描述的方法的设备1800属于包括下列的集合:
-移动设备;
-通信设备;
-游戏设备;
-机顶盒;
-电视机;
-平板(或平板计算机);
-膝上型计算机;
-显示器;以及
-解码芯片。
在本文中所描述的各种处理和特征的实现方式可以以各种不同的装备或应用来实施。这样的装备的示例包括编码器、解码器、处理来自解码器的输出的后处理器、向编码器提供输入的预处理器、视频编码器、视频解码器、视频编解码器、网络服务器、机顶盒、膝上型计算机、手机、PDA以及用于处理图片或视频的任何其他设备或者其他通信设备。应当清楚的是,该装备可以是移动的,甚至可以安装在移动交通工具中。
另外,所述方法通过由处理器执行的指令来实现,并且这样的指令(和/或由实现方式所产生的数据值)可以存储在计算机可读存储介质上。计算机可读存储介质可以采用计算机可读程序产品的形式,其实施在一个或多个计算机可读介质中,并且在其上体现有可被计算机执行的计算机可读程序代码。在本文中所使用的计算机可读存储介质被视为非临时性存储介质,其给出在其中存储信息的固有能力以及从中提供信息检索的固有能力。计算机可读存储介质可以是例如但不限于电子、磁性、光学、电磁、红外或半导体系统、装置或器件,或者前述的任何适当的组合。应当意识到,如本领域的技术人员容易意识到的那样,下面虽然提供可以应用本原理的计算机可读存储介质的更具体的示例,但是其仅是示例性而非囊括性的列表:便携式计算机盘;硬盘;只读存储器(ROM);可擦除可编程只读存储器(EPROM或闪速存储器);便携式压缩盘只读存储器(CD-ROM);光学存储设备;磁性存储设备;或者前述的任何适当的组合。
指令可以形成有形地体现在处理器可读介质上的应用程序。
指令可以在例如硬件、固件、软件或组合中。指令可以存在于例如操作系统、单独的应用或两者的组合中。因此,处理器可以被表征为例如被配置为执行处理的设备以及包括具有用于执行处理的指令的处理器可读介质的设备(诸如存储设备)两者。另外,在指令的基础上或者代替指令,处理器可读介质可以存储由实现方式所产生的数据值。
对于本领域技术人员将显而易见的是,实现方式可以产生被格式化以携带可以例如被存储或发送的信息的各种信号。信息可以包括例如用于执行方法的指令或所描述的实现方式之一所产生的数据。例如,信号可以被格式化,以携带用于写入或读取所描述的实施例的语法的规则作为数据,或者携带所描述的实施例所写入的实际语法值作为数据。这样的信号例如可以被格式化为电磁波(例如使用频谱的射频部分)或者基带信号。格式化可以包括例如对数据流进行编码以及调制具有经编码的数据流的载波。信号携带的信息例如可以是模拟或数字信息。如已知的那样,可以通过各种不同的有线或无线链路发送信号。信号可以存储在处理器可读介质上。
已经描述了多个实现方式。然而,应当理解,可以进行各种修改。例如,可以组合、补充、修改或移除不同实现方式的要素,以产生其他实现方式。此外,本领域技术人员将理解的是,其他结构和处理可以代替所公开的那些结构和处理,所得到的实现方式将以与所公开的实现方式以至少基本相同的方式,执行与所公开的实现方式至少基本相同的功能,以实现与所公开的实现方式至少基本相同的效果。相应地,由本申请想到了这些以及其他实现方式。