色相改变色域映射

文档序号:1652337 发布日期:2019-12-24 浏览:38次 >En<

阅读说明:本技术 色相改变色域映射 (Hue change gamut mapping ) 是由 尤尔根·施陶德尔 艾尼塔·奥翰德 科琳·波林 于 2018-02-26 设计创作,主要内容包括:本公开原理的一个方面在于用于对来自源色域或内容色域的颜色向目标色域进行色域映射的方法和系统。将源特定颜色的源色相和内容特定颜色的源色相向对应目标特定颜色的目标色相改变。基于映射后的特定颜色,针对整个源色域或内容色域的源颜色执行向所述目标色域的色域映射。所述特定颜色选自原色、副色以及原色和副色组。(One aspect of the disclosed principles is directed to a method and system for gamut mapping colors from a source gamut or a content gamut to a target gamut. The source hue of the source specific color and the source hue of the content specific color are changed toward the target hue of the corresponding target specific color. Performing gamut mapping to the target gamut for source colors of the entire source gamut or the content gamut based on the mapped specific colors. The specific color is selected from the group consisting of a primary color, a secondary color, and a group of primary and secondary colors.)

色相改变色域映射

技术领域

本发明涉及源颜色的颜色处理。本发明还涉及用于将源颜色的色相向目标颜色的色相改变的色相改变色域映射。

背景技术

执行图像和视频处理颜色处理的一种方式被称为色域映射。

“色域”是颜色的集合。例如,色域可以是以下项的集合:真实物体在真实照明下的颜色;为了在监视器上显示或通过胶片投影而再现的图像的颜色;动画电影(例如,CGI动画)中的合成颜色;或者人或光捕获装置可见的任何其他颜色。实际上,色域可以由以下项来定义:场景照明、真实物体、图像捕获设备、图像再现设备、颜色空间、诸如NTSC、ITU-R BTrec.709(“rec.709”)、ITU-R BT rec.2020(“rec.2020”)、Adobe RGB、DCI-P3的标准、或者针对颜色再现的任何其他现有或未来的标准或对颜色多样性的任何其他限制。

“色域映射”是将源色域的颜色(“源颜色”)映射或重新分布到目标色域的颜色(“目标颜色”)的过程。源色域可以与任何色域相关联。同样,目标色域也可以与任何色域相关联。例如,源色域可以根据标准与输入图像数据相关联,并且目标色域可以与显示设备(例如,用户设备)相关联。色域映射可以包括颜色的饱和度、色相、亮度、对比度或颜色的其他方面的改变,源色域和/或目标色域的黑色、白色或其他颜色方面的改变。例如,色域映射可以包括色调映射。

色域映射在图像和视频处理(例如,视频内容制作或后期制作)领域具有重要应用。例如,色域映射是用于对视频内容进行颜色处理的重要工具(例如,可以利用色域映射来确保满足设备的显示约束)。色域映射也可以用于满足艺术要求和/或用作调色师的工具。色域映射也可以用于将原始视频转换为不同的视频类型,以供比如电影院、电视或因特网的再现或传输。色域映射还可以用在相机中。例如,在相机中,可以使用色域映射来使相机传感器捕获的场景适应给定标准,从而可以准确再现所捕获的颜色(例如,在显示设备上)。可以取决于相机传感器的滤色器来定义源相机色域。色域映射也可以用在显示设备中以准确显示图像或视频内容。可以通过显示面板的原色来定义目标显示色域。在处理期间,可以以各种像素频率重复色域映射。

色域映射的讨论包括:

·J.Morovic and M.R.Luo,“The Fundamentals of Gamut Mapping:A Survey”,Journal of Imaging Science and Technology,45/3:283-290,2001.

·Montag E.D.,Fairchild M.D,“Psychophysical Evaluation of GamutMapping Techniques Using Simple Rendered Images and Artificial GamutBoundaries”,IEEE Trans.Image Processing,6:977-989,1997.

·P.Zolliker,M.K.Simon,On the Continuity of Gamut MappingAlgorithms,Color Imaging X:Processing,Hardcopy,and Applications.Edited byEschbach,Reiner;Marcu,Gabriel G.Proceedings of the SPIE,Volume 5667,pp.220-233,2004.

因为现有的色域映射方法在色域映射之后导致颜色的一致性变差(例如,邻域在得到的目标色域中变形),所以现有的色域映射方法是有问题的。这种问题是由于现有方法中相对于源色域和目标色域的边界对颜色的饱和度和/或色相和/或亮度进行压缩或扩展造成的。实际上,这些边界具有不可微的边,从而在被用来定义色域映射方法时会导致颜色邻域变形。颜色的亮度可以由CIELAB颜色空间或Lab颜色空间(比如,1976年由CIE定义)的L坐标来规定。类似地,亮度也可以由IPT颜色空间的I坐标来规定。例如,Ebner Fritz和MarkD.Fairchild的论文“Development and testing of a color space(IPT)with improvedhue uniformity”(Color and Imaging Conference in 1998)中讨论了亮度。然而,可以在无需进行改变的情况下使用亮度、强度或照度。可以使用心理物理实验来获得颜色的色相。然而,不同的观看条件和/或不同的模型会导致不同的色相定义。颜色的色相可以由颜色空间(例如在CIELAB颜色空间中)的圆柱坐标表示的圆柱角度来规定。备选地,可以使用公式来根据颜色坐标获得色相(例如,在颜色空间中,可以由来定义色相),颜色空间中色域的边界是包括该色域的所有颜色的外皮(hull)。

现有色域映射方法中的大部分方法相对于色域的边界压缩或扩展颜色的饱和度(或色度)和/或颜色的亮度。在色域映射中,当在定义源色域的原色与定义目标色域的原色之间存在明显的不匹配(例如,未对准的色域边界)时,可能出现不均匀的饱和度修改。因此,对于类似的色相,由尖端色域映射引起的饱和度修改可以是大不相同的(例如,对于色相角度75°,饱和度可以除以1.6的因子,而对于色相角度85°,饱和度可以除以1.2的因子)。这导致颜色邻域中的映射后的颜色的一致性下降的问题。

当源色域的色域边界中的奇点(例如原色或副色)与目标色域的色域边界中的相应奇点具有不同的色相时,会出现附加问题。在这些点,色域边界突然改变表面取向,并且不可微。当源颜色具有与色域边界曲率的这种不连续性相同的色相时,在使用色度压缩或扩展的色域映射期间,颜色邻域可能劣化。如果在其他条件保持不变的情况下,如果源色域和目标色域的边界的相应奇点的色相分别接近但不相同,则对颜色邻域的负面影响可能会更强。

为了避免这些问题,Green和Luo在2000年的Color Image Science会议上发表的论文“Extending the CARISMA gamut mapping model”中讨论了完全色相旋转映射。完全色相旋转使源色域和目标色域的色相对齐,使得至少尖端线的非可微点具有相同的色相。完全色相旋转具有的附加优点是,大多数饱和的源色(原色和副色)成为最饱和的目标色(原目标色和副目标色)。这保留了艺术意图。然而,这种完全色相旋转导致色相显著移位的问题。

完全色相旋转也用在Henley等人的美国专利公开No.US2005/248784(“Henley”)。Henley公开了一种称为剪切映射的色域映射方法。剪切映射在颜色空间中(例如,CIELAB颜色空间)的恒色相叶中将源色域的尖端映射到目标色域的尖端。恒色相叶中的尖端是具有最高色度的颜色。Henley公开了一种色相旋转,其中执行所述色相旋转以保持色相饱和度的最大水平。Henley中的色相旋转是完全色相旋转,其将输入(源色域)的每个原色和副色的色相映射到目标(目标色域)的原色或副色的色相。

另一个参考文献是WO2016206981,其试图通过应用部分的色相移位来解决该问题。该方法基于源特定颜色和目标特定颜色之差,自适应地将源特定颜色的色相向相应目标特定颜色的目标色相改变。特定颜色可以包括原色和副色。由于仅在需要时才应用最大的色相移位,因此该方法具有保留部分艺术意图的能力。此外,如果在色度映射之前应用部分的色相映射,则大多数饱和的源颜色(原色和副色)比未应用色相映射时更加饱和。另一个优点包括部分保留颜色邻域,从而增加了色域映射的饱和度修改的均匀性。

然而,大多数已知的用于对源颜色进行颜色映射的方法被设计为映射主要分布源色域的源颜色。例如,CARISMA或WO2016206981的优点仅在该假设下成立。实际上,CARISMA和WO2016206981在很大程度上取决于源色域的形状。如果实际源颜色的色域的形状(称为内容色域)与源色域的形状不对应,则CARISMA或WO2016206981中提出的色域映射的优点将不成立。

如果内容的源颜色未填充整个源色域,则该内容实际上小于源色域。例如,在以ITU-R BT.2020 RGB颜色坐标编码的图像中,没有红色物体。因此,该图像的内容色域小于ITU-R BT.2020的源色域,并且不包括红色。将内容色域而不是源色域映射到目标色域中的色域映射方法被称为依赖于图像或依赖于内容的方法。相反,由于源色域通常对应于源颜色设备,因此将整个源色域映射到目标色域中的方法被称为依赖于设备的方法。Giesen等人在他们于2007年10月发表在IEEE Transactions on Image Processing,Vol.16,no.10中的题为“Image-Dependent Gamut Mapping Dependent Gamut Mapping asOptimization Problem”的文章中对一些依赖于内容的映射方法进行了研究。作者将这些方法与已知的依赖于设备的方法进行了比较。

当使用具有源色域的源颜色空间的颜色坐标表示内容时,根据定义,内容色域总是等于或小于源色域。然而,其它情况是可能的。在一般情况下,可以在具有第一源色域的第一源颜色空间内生成第一内容,并且可以在具有第二源色域的第二源颜色空间内生成第二内容。在该一般情况下,色域映射方法可以用于将来自第一色域或第二色域的颜色向目标色域映射。然而,当内容填充第二源色域时,旨在将第一源色域映射到目标色域的诸如CARISMA或WO2016206981的已知方法不能实现其优点。以相同的方式,当内容填充第一源色域时,旨在将第二源色域映射到目标色域的诸如CARISMA或WO2016206981的已知方法不能实现其优点。

在另一种一般情况下,可以在具有第二源色域的第二源颜色空间内生成内容,然后在具有第一源色域的第一源色空间内表示内容。如果第二源色域不包括在第一源色域内,则根据现有技术使用第一源颜色空间的负颜色坐标,以表示第一源色域之外的来自第二源色域的颜色。在该另一种一般情况下,上述映射方法可以用于将来自第一色域或第二色域的颜色向目标色域映射。

所有已知的色域映射算法都具有问题是,对于源色域和内容色域,或者对于第一源色域和另一个第二源色域,它们不是同时最佳的。在以下用例中,这一点变得很清楚。示例的单色域映射方法用于两种类型的图像。第一类型的图像包含分布在整个源色域内的第一类型的源颜色。第二类型的图像包含分布在内容色域中的第二类型的源颜色,内容色域不同于源色域且小于源色域。所有图像都在具有源色域的相同的源颜色空间的颜色坐标中编码。对于该用例,由于所有已知的色域映射方法都不是最佳的,因为这些方法当时未针对源色域和内容色域进行优化。

例如,WO2016206981针对源色域进行了优化,但是如果要映射第二类型的图像,则可能无法最好地保留颜色邻域。此外,大多数饱和的内容颜色(内容色域的原色和副色)未被映射到目标色域的大多数饱和的颜色(目标色域的原色和副色)或朝向它们映射。相反,大多数饱和的内容颜色被映射到其他的不太饱和的目标颜色(引起饱和度较大程度降低)的方向上。例如,由Giesen等人研究的方法针对内容色域进行了优化,但是如果要映射第一类型的图像,可能无法最好地保留色彩邻域。此外,该方法未定义内容色域之外仍在源色域内的颜色映射。

发明内容

本公开原理的一个方面避免了上述问题并提供了对上述问题的解决方案。

本原理的一个方面在于考虑到第一源色域、第二源色域(比如,内容色域)和目标色域来将源颜色的色相向目标颜色的色相改变。

本公开原理的一个方面涉及一种用于将来自第一源色域或第二源色域之一的颜色向目标色域进行色域映射的方法。所述方法包括访问至少一个第一颜色集合,所述至少一个第一颜色集合包括无彩颜色、第一源色域的特定颜色、第二源色域的对应特定颜色以及目标色域的对应特定颜色;访问至少一个第二颜色集合,所述至少一个第二颜色集合包括与目标色域的特定颜色的色相相对应的恒色相的颜色;基于来自第一颜色集合的至少一个颜色的色相与第二颜色集合的至少一个其他颜色的色相之差,对来自第一源色域或第二源色域之一的颜色之一向目标色域进行色域映射,所述其他颜色具有与来自第一集合的所述至少一个颜色相同的色度。所述特定颜色是选自原色组、副色组、以及原色和副色组的至少一个颜色。实际上,如果没有第二色域的其他特定颜色具有比第二特定颜色更接近于第一特定颜色的色相的颜色,则来自第一色域的第一特定颜色对应于来自第二色域的第二特定颜色。通常,相应的特定颜色具有相同的颜色名称,例如“红色”。

在所述方法的特定特征中,第一源色域、第二源色域和目标色域在具有亮度轴和色度平面的至少一个颜色空间中,例如选自Lab颜色空间与IPT颜色空间的组的颜色空间,以及执行所述颜色中的一个颜色的颜色映射包括基于色相差将所述颜色的色相向映射后的颜色的色相旋转。在另一个特征中,执行第一源色相或第二源色相的所述颜色中的一个颜色的色相映射还包括:确定第一颜色集合中的至少一个其他第一颜色集合中的至少一个颜色,以及针对至少一个第一颜色集合中的所述至少一个颜色对基于所述颜色的色相的色相差进行插值并针对至少一个其他第一颜色集合中的至少一个颜色对色相差进行插值。

本公开原理的一个方面涉及一种用于将源颜色从第一源色域或第二源色域中的一个源色域向目标色域色域映射的系统。所述系统包括处理器,所述处理器被配置为访问至少一个第一颜色集合,第一颜色集合包括无彩颜色、第一源色域的特定颜色、第二源色域的对应特定颜色、以及目标色域的对应特定颜色;访问至少一个第二颜色集合,第二颜色集合包括与目标色域的特定颜色的色相相对应的恒色相的颜色;所述处理器还被配置为基于来自第一颜色集合的至少一个颜色的色相与来自第二颜色集合的至少一个其他颜色的色相之差,对来自第一源色域或第二源色域之一的颜色之一向目标色域进行色域映射,所述其他颜色具有与来自第一集合的至少一个颜色相同的色度。所述特定颜色是选自原色组、副色组、以及原色和副色组的至少一个颜色。

所述系统的特定特征中,其中第一源色域、第二源色域和目标色域在具有亮度轴和色度平面的至少一个颜色空间中,例如选自Lab颜色空间与IPT颜色空间的组的颜色空间,所述处理器还被配置为通过以下操作来对所述颜色之一执行颜色映射:基于色相差,将所述颜色的色相向映射后的颜色的色相旋转。在另一个特征中,所述处理器还被配置为通过以下操作来对所述第一源色域或第二源色域的颜色之一进行色相映射:确定所述第一颜色集合中的至少一个其他第一颜色集合中的至少一个颜色,以及基于针对所述至少一个第一颜色集合中的所述至少一个颜色的色相差以及针对所述至少一个其他第一颜色集合中的所述至少一个颜色的色相差,来插值所述颜色的色相。

本公开原理的一个方面在于一种非暂时性计算机可读存储介质,包括计算机程序,所述计算机程序包括处理器可执行的指令的集合,所述指令包括:访问至少一个第一颜色集合,所述第一颜色集合包括无彩颜色、所述第一源色域的特定颜色、所述第二源色域的对应特定颜色以及所述目标色域的对应特定颜色;基于来自第一颜色集合的至少一个颜色的色相与第二颜色集合的至少一个其他颜色的色相之差,对来自第一源色域或第二源内容色域之一的颜色之一向目标色域进行色域映射,所述其他颜色具有与来自第一集合的所述至少一个颜色相同的色度。其中特定颜色是选自原色组、副色组、以及原色和副色组中的至少一个颜色。

在所述非暂时性计算机可读存储的特定特征中,确定了查找表,其中所述查找表包括输入LUT颜色到所得到的LUT颜色的映射,所得到的LUT颜色是基于以下来确定的:基于色度差,对所述第一源色域或所述第二源色域的颜色进行向所述目标色域的色域映射。。在另一个特定特征中,其中第一源色域、第二源色域和目标色域在具有亮度轴和色度平面的至少一个颜色空间中,例如选自Lab颜色空间与IPT颜色空间的组的颜色空间,以及执行所述颜色中的一个颜色的颜色映射包括基于色相差将所述颜色的色相向映射后的颜色的色相旋转。

本公开原理的一个方面适用于被配置为包括色域映射的特征的任何设备,诸如相机、显示器、传输系统(例如,在不同色域映射标准之间转换)、专业编码器、专业解码器、机顶盒、视频播放器、录像机或视频游戏机。

附图说明

通过阅读以下以非限制性示例的方式并参考附图给出的

具体实施方式

将更清楚地理解本发明,在附图中:

图1示出了RGB颜色空间中的示例性色域;

图2示出了示例性色相旋转映射;

图3a示出了饱和度增益的示例性曲线图;

图3b示出了色相旋转的示例性曲线图;

图4a示出了根据本公开原理的示例性色域映射;

图4b示出了根据本公开原理的示例性色相旋转映射的示例性部分;

图5示出了根据本公开原理的示例性方法;

图6示出了根据本公开原理的示例性系统;

图7示出了根据本公开原理的示例性设备;

图8示出了根据本公开原理的另一示例性色域映射。

具体实施方式

色域映射包括色域边界描述(GBD)。GBD定义了颜色空间中色域的边界表面或外皮。GBD通常包括明确的通用3D表示形式,比如三角形网格或体积模型。例如,色域的GBD可以基于三角形的网格,每个三角形由在该GBD的颜色空间中的三个顶点来定义。这些顶点是位于色域边界上的颜色。

颜色和GBD通常在颜色空间中表示,尽管不一定在相同的颜色空间中。颜色空间是颜色可以由颜色坐标来表示的空间。颜色空间可以与显示器的类型或与输入源(例如,相机)相对应。相同的色域可以在不同的颜色空间(RGB、Lab、IPT...)中表示。然而,在不同的颜色空间中表示的色域通常在这些不同的颜色空间中的每个颜色空间中具有不同的形状。颜色空间的一种类型是包括亮度-L-轴、色度-C-轴和色相-h-轴的三维空间。在某些颜色空间(比如,Lab或IPT)中,色相可以被定义为围绕颜色空间的圆柱表示的中心垂直轴的角度,色度(即,饱和度)可以被定义为距该轴的距离,亮度可以被定义为沿该轴的距离。

色域的尖端是颜色的集合,其中每个颜色相较于在3D颜色空间的相同恒色相叶内并在该色域内的其他颜色而言具有更大的色度(即,饱和度)。恒色相叶沿亮度(L)轴和色度(C)轴扩展。当通过基于诸如三角形的离散表面元素的GBD描述色域时,尖端包括限制色域的边界表面上的奇点(顶点)或线(边缘)。对于三色的加色显示器的色域,尖端通常包括原色红色、绿色、蓝色以及副色黄色、品红色、青色。在最小或最大程度上,原色和副色在显示器的输入的颜色通道中的至少一个颜色通道中。可以通过使用基于三角形网格的色域边界描述来对色域的尖端进行建模,其中尖端是基于一些三角形的顶点的闭合多边形。与这些顶点相对应的尖端颜色通常被定义为给定的恒色相叶中的最大色度的色域内颜色。

色域的尖端线是连接尖端颜色的线。当色域用针对色度具有量度的颜色空间(例如,根据2002年由CIE定义的CIECAM-02模型的Lab颜色空间或JCh颜色空间,或由EbnerFritz和Mark D.Fairchild在1998年的颜色与成像会议上发表的论文“Development andtesting of a color space(IPT)with improved hue uniformity”定义的IPT颜色空间)表示时,尖端颜色对应于由恒色相定义的平面内的最大色度(即,最大饱和度)的颜色。可以使用心理-物理实验从人类观察者获得颜色的色度(即,饱和度)。然而,不同的观看条件和/或不同的模型可能导致不同的色度(即,饱和度)定义。例如,在Lab颜色空间中(相应地,在IPT颜色空间中),色度(即,饱和度)被定义为a和b(相应地,P和T)的平方和的平方根。由恒色相定义的平面通常被称为“恒色相叶”。更一般地,尖端颜色通常对应于限制色域的边界表面上的奇点(“顶点”)或奇线(“边缘”)。色域的尖端线通常可以被建模为在该色域的色域边界上形成闭合多边形的线。

色域映射方法(或色域映射算法)可以将来自源色域(所述源色域具有其自己的源尖端点或源尖端线)的源颜色映射到目标色域(所述目标色域也具有其自己的目标尖端点或目的尖端线),其中源颜色以内容色域(所述内容色域具有其自己的源尖端点或源尖端线)分布。内容色域包括在源色域中。为了利用目标色域中的颜色范围,色域映射方法可以将源尖端点/线映射到目标尖端点/线中。这种色域映射算法被称为尖端色域映射算法。

图1示出了RGB颜色空间中的色域100的示例。图1的色域100可以是三色显示器或三色相机的色域。色域100对应于图1中所示的立方体(内部和表面)。

如图1所示,RGB色域100包括尖端线105。尖端线105是形成闭合多边形的虚线,对应于将原色连接到副色的线的集合。尖端线105包括将显示器的每个原色(例如,红色153、绿色158和蓝色155)与具有该原色作为分量的副色(例如,黄色152、品红色157和青色156)连接的奇线。例如,尖端线105可以按如下来连接颜色:红色153与黄色152、红色153与品红色157、绿色158与黄色152、绿色158与青色156、蓝色155与青色156、以及蓝色155与品红色157。尖端线105在图1中由虚线示出。

图2示出了IPT颜色空间的PT平面中的色相旋转色域映射的示例。图2包括源色域201的尖端、目标色域202的尖端和使用完全色相旋转的色相映射后的源色域203的尖端,其中源色域201的尖端是通过将源色域的3D尖端投影到PT平面中而生成的,目标色域202的尖端是通过将目标色域的3D尖端投影到PT平面中而生成的,并且色相映射后的源色域203的尖端是通过将色相映射后的源色域的3D尖端投影到PT平面中而生成的。P轴和T轴是IPT颜色空间的两个色轴。色相映射后的源色域203是将源色域201的原色和副色的色相与目标色域202的相应原色和副色的色相进行对准的结果,从而提供完全色相旋转。

图3a示出了在具有或不具有完全色相旋转的情况下根据使用色度压缩或扩展的色域映射而得到的饱和度修改的示例性曲线图300。如本文所使用的,饱和度的修改可以被定义为色域映射之前和之后的颜色饱和度的比率。例如,当在不进行色相旋转的情况下使用色度压缩或色度扩展时,源色域的尖端点的饱和度比率可以对应于源色域中的尖端点的饱和度与目标色域中具有相同色相的尖端点的饱和度之间的比率。

曲线图300示出了由使用色度压缩的色域映射引起的饱和度的修改。曲线图300的纵轴涉及饱和比。曲线图300的横轴涉及以度为单位测量的色相角度。曲线图300包括展示出在没有色相旋转时的饱和度比率与色相角度的关系的曲线301。曲线301涉及将源色域映射到目标色域(使用没有色相旋转的色度压缩)。曲线图300还包括展示出在有完全色相旋转时的饱和度比率与色相角度的关系的曲线302。曲线302涉及将源色域映射到目标色域(使用具有完全色相旋转的色域映射,比如Henley)。

图3b示出了在具有或不具有完全色相旋转的情况下根据色域映射得到的色相旋转的示例性曲线图310。曲线图310示出了由从源色域到目标色域的完全色相旋转映射引起的色相旋转(色相的改变)。曲线图310的纵轴涉及以度为单位的色相旋转角度。曲线图310的横轴涉及以度为单位的色相角度。曲线图310包括展示出在没有色相旋转时的色相旋转角度与色相角度的关系的曲线311。曲线图310还包括展示出在有完全色相旋转时的色相旋转角度与色相角度的关系的曲线312。如图3b中所示,当有完全色相旋转时,大多数颜色发生大量移位。从图3a和图3b中可以看出,当完全色相旋转有效地改善了饱和度比率的均匀性时,完全色相旋转也导致颜色发生移位。

本公开原理的一个方面涉及第一源色域和第二源色域的颜色的色相映射,其中第一源色域和第二源色域例如是源色域和内容色域。本公开原理的一个方面在于色相映射。本公开原理的一个方面在于将源色域和内容色域向目标色域映射,但不必须映射到目标色域中。例如,可以修改源色域或内容色域中的颜色的色相,使得到的色相映射后的源色域和得到的色相映射后的内容色域更接近目标色域。然而,在色相映射之后,色相映射后的内容色域的某些颜色可能仍然位于目标色域之外,和/或目标色域可能不会被色相映射后的内容色域完全覆盖。以相同的方式,在色相映射之后,色相映射后的源色域的某些颜色可能仍然位于目标色域之外,和/或目标色域可能不会被色相映射后的源色域完全覆盖。从而,色相映射后的颜色可能需要向目标色域进一步映射,使得所有色相映射后的颜色都位于目标色域内和/或目标色域完全被色相映射后的颜色覆盖。

图4a示出了IPT颜色空间的PT平面中的色相旋转色域映射的示例。图4a包括源色域201的尖端、目标色域202的尖端、内容色域401的尖端、以及使用完全色相旋转的色相映射后的内容色域402的尖端。色相映射后的内容色域402是将内容色域401的原色和副色(CC2)的色相与目标色域202的相应原色和副色(CT2)的色相进行对准的结果,从而提供完全色相旋转。如图4a所示,如果内容色域401小于源色域201,则对于某些色相(在CT2附近),目标色域202可以比内容色域201以及比源色域401表现出更低的色度,而对于其他色相(在CT5附近)则具有更大色度的颜色。实际上,任何色域映射都与本公开原理的色相映射兼容。

在本公开原理的一个示例中,色相映射可以排除或可以包括其他映射处理,比如尖端色域映射。在一个示例中,在色相映射之后应用具有色度压缩或色度扩展的色域映射,从而使颜色邻域劣化最小化。

本公开原理的一个方面是一种用于色域映射的方法,使得源色域向目标色域改变或修改,并同时内容色域向目标色域改变或修改。本公开原理的一个方面在于色相映射,所述色相映射基于源色域和内容色域的原色和副色的色相向目标色域的相应原色和副色的色相的映射。该映射或修改可以包括从源色域或内容色域的原色或副色向目标色域的对应原色或副色的完整色相映射(类似于已知的CARISMA算法),使得映射后的原色或副色的色相与目标色域的对应原色或副色的色相相同。该映射或修改也可以包括从源色域或内容色域的原色或副色向目标色域的对应原色或副色的自适应色相映射(类似于WO2016206981中的已知方法),使得映射后的原色或副色的色相比映射之前更接近目标色域的对应原色或副色的色相。

如本文中所使用的,目标色域的“对应”原色(CT1、CT3、CT5)或副色(CT2、CT4、CT6)对应于源色域的原色或副色(仅展示出CS2)或内容色域的原色或副色(仅展示出CC2)。例如,目标色域的“红色”颜色是与源色域的“红色”和内容色域“红色”相对应的目标颜色。这三个不同的“红色”是相应的特定颜色。备选地,目标色域的相应颜色可以指目标色域中具有与源色域和内容色域的特定颜色最接近的色相的特定颜色。

本公开原理的一个方面在于颜色空间中的色相映射,该颜色空间的特征在于颜色的色相由柱面角度来表示,颜色的亮度由颜色空间的柱面坐标表示的纵轴上的坐标来表示,以及颜色的色度由颜色到纵轴的距离来表示。亮度轴(O)对应于无彩颜色。色相映射包括围绕亮度轴旋转源色域和内容色域的尖端点。如图4a所示,可以在Lab颜色空间中的ab平面内或在IPT颜色空间中的PT空间内旋转颜色。然后,可以应用所述旋转以修改在任何其他颜色空间(例如,RGB、YUV)中表示的源颜色。

本公开原理的一个方面是以不同的方式对同一色相叶内的两种颜色进行色相映射。根据本公开原理的突出特征,同一色相叶的颜色的色相映射取决于颜色的色度。这与诸如CARISMA和WO2016206981的已知方法不同,在已知方法中,色相叶的尖端点的旋转定义了色相叶的所有颜色的旋转。在一个示例中,旋转角度随着色相而变化。图4b示出了根据本公开原理的示例性色相旋转映射的示例性部分。源色域的颜色C和C′具有相同的色相,因此是同一色相叶的一部分。根据本公开原理,分别基于第一颜色集合(403)的一个颜色与第二颜色集合(404)的一个颜色(即,分别地CS或C’S)的色相差,对颜色C和C’中的每个颜色进行色相映射。例如,可以分别针对具有与所提起及的CS或C’S的色相差相同的值的每个C和C’定义色相旋转角度。由于CS和C’S的色相差通常不相同,因此C和C’的色相旋转角度通常不同。

本公开原理的一个方面在于一种用于在颜色空间中将源色域的颜色向目标色域的颜色进行映射的方法,其中色相、饱和度和亮度中的任一个可以直接由颜色空间的坐标表示或根据颜色空间的坐标而获得。

可以基于针对至少一个第一颜色集合的颜色而确定的色相旋转角度来确定针对除了第一颜色集合的颜色以外的颜色的色相旋转。例如,可以通过对至少一个第一颜色集合中具有相同或接近色度的的颜色的色相旋转角度进行插值,来获得针对这样的其他颜色的色相旋转角度。备选地,可以通过对至少一个第一颜色集合中具有相同或接近亮度的的颜色的色相旋转角度进行插值,来获得色相旋转角度。

本公开原理的一个方面允许在考虑潜在的色相修改的同时改善由色域映射引起的饱和度增益的均匀性。本公开原理的一个方面涉及一种方法,所述方法不仅改善了分布在整个源色域中的颜色的饱和增益的均匀性,而且还改善分布在整个内容色域中的颜色的饱和增益的均匀性。本公开原理的一个方面涉及一种方法,其不仅改善了饱和度增益的均匀性,从而使颜色邻域劣化最小化,而且还使色相的平均改变最小化。本公开原理的一个方面在于颜色邻域的保留,其包括在向目标色域进行映射之后保持内容颜色的特征(例如,亮度、色度或色相)的颜色空间中的空间均匀性。在一个示例中,本公开原理的一个方面在于小于完全色相旋转角度的色相旋转角度。

在一个示例中,色相旋转的范围介于最小旋转和最大旋转之间,其中最小值为0(无旋转),并且最大值为源色域或内容色域中的特定颜色与目标色域中的对应特定颜色之间的色相角度差(源原色色相与目标原色色相的对准)。

在另一个示例中,色相旋转的范围介于最小旋转和最大旋转之间,其中最小值为源色域中的特定颜色与目标色域中的对应特定颜色之间的负色相角度差(源原色或副色CS2色相与目标原色或副色CT2的色相的对准),并且最大值为内容色域中的特定颜色与目标色域中的对应特定颜色之间的正色相角度差(内容原色或副色CC2的色相与目标原色或副色CT2的色相的对准)。

在另一个示例中,色相旋转的范围介于最小旋转和最大旋转之间,其中最小值为内容色域中的特定颜色与目标色域中的对应特定颜色之间的负色相角度差(内容原色色相与目标原色的色相的对准),并且最大值为源色域中的特定颜色与目标色域中的对应特定颜色之间的正色相角度差(源原色色相与目标原色的色相的对准)。在图4a中针对特定的目标颜色CT1示出该示例。

在一个示例中,色相旋转的范围介于最小旋转和最大旋转之间,其中最小值为源色域或内容色域中的特定颜色与目标色域中的对应特定颜色之间的负色相角度差(源原色色相或内容原色色相分别与目标原色的色相的对准,关于CT3、CT4和CT5),并且最大值为与无旋转对应的0。

所述方法可以仅应用于原色,或有利地应用于原色和副色。在最简单的实现方式中,还使用相邻原色(以及有利地,副色)的色相旋转角度的插值来旋转源色域的其他颜色,针对相同色度的颜色的旋转角度是色相的分段线性函数。在一个示例中,所述方法应用于3D尖端在色度平面(Lab空间中的ab平面、IPT空间中的PT平面)上的2D投影。然而,可以使用在3D颜色空间中测量的角度,将其不加修改地应用于3D尖端。在这种特定情况下,色相改变可能取决于第三坐标(即,亮度、强度或照度)。在一个其他的示例中,颜色(C或C′)的两个相邻的特定颜色(例如,CT1、CT2),并且基于针对两个相邻的特定颜色中的每个特定颜色的色相差来插值颜色(C或C′)的旋转色相。有利地,相同色度的颜色C的旋转角度是对两个相邻的特定颜色(CT1、CT2)中的每个特定颜色的色相差所应用的色相的线性函数。

在一个示例中,本公开原理的优点包括能够优化同时向源色域和内容色域的映射。本公开原理的优点可以包括能够保留艺术意图,这是因为大多数情况下应用适度的色相移位,而仅在需要时才应用最大色相移位。另一个优点包括保留颜色邻域,从而提高了同时针对两种类型的源颜色分布的尖端色域映射的饱和度增益的均匀性,其中第一分布使用整个源色域,第二分布仅使用内容色域。

图5示出了根据本公开原理的用于色相映射的方法500的流程图。在一个示例中,方法500在于执行源色域和内容色域向目标色域的色相旋转映射。方法500可以包括改变源色域的颜色的色相。

方法500可以包括用于接收关于源色域的信息的块501。块501可以接收源色域信息,例如,标识整个色域的信息。在另一个示例中,块501可以接收标识存储的色域信息的标识符(例如,标识预先存储的色域信息的标识符)。所接收的源色域信息可以是标识源色域的信息。源色域可以限于原色、副色的坐标、无彩点、色域边界描述、某些颜色的坐标、尖端线、尖端点等。源色域可以表示于任何定义的颜色空间(例如,RGB、XYZ、Lab和IPT)中。源色域可以从任何源接收(例如,传送输入内容的设备,诸如,相机、机顶盒、相机传感器、HDMI接收器、通信接口、移动网络(包括3G或4G网络);无线网络(包括Wi-Fi、蓝牙网络或链路);TV广播网络(例如,DVB或ATSC接收器接口);有线网络(包括web网络);有线链路或总线(包括HMDI、USB);光盘播放器(包括DVD或蓝光播放器、视频流或存储介质(例如,蓝光盘、存储器))。备选地或附加地,源色域可以符合标准(例如,rec.709、rec.2020)。

块502可以确定所接收的源色域的尖端线。块502可以针对每个色相确定每个尖端点。在一个示例中,块502可以针对每个色相确定具有最大饱和度的颜色。块502可以按色相将尖端线表示为饱和度。在另一示例中,块502可以基于尖端点的3D坐标来表示尖端线。

方法500还可以包括用于接收关于目标色域的信息的块503。块503可以接收目标色域信息,例如,标识整个色域的信息。在另一个示例中,块503可以接收标识存储的色域信息的标识符(例如,标识预先存储的色域信息的标识符)。所接收的目标色域信息可以是标识目标色域的信息。目标色域可以限于原色、副色的坐标、无彩点、色域边界描述、某些颜色的坐标、尖端线、尖端点等。目标色域可以表示于任何定义的颜色空间(例如,RGB、XYZ、Lab和IPT)中。目标色域可以发送自任何设备/系统(例如,将显示内容的设备,诸如,电视机、监视器、智能手机、平板电脑、膝上型电脑、游戏界面或任何其他类型的显示器;通信接口;目的地接口或通信链路(例如,Wi-Fi、USB)或有线链路(例如,HDMI、局域网))。备选地或附加地,目标色域可以是符合标准(例如,rec.709、rec.2020)的色域。可以经由目的地接口(例如,与显示器的接口)或通信链路(包括无线(例如,Wi-Fi、USB)或有线链路(例如,HDMI、局域网))来发送和/或接收目标色域。

在一个示例中,目标色域的颜色空间可以不同于源色域的颜色空间。在一个示例中,目标色域信息可以与源色域信息接收自不同的设备/系统。例如,源图像将被映射到目标图像中的目标颜色,其中源图像的源颜色来自于使用根据BT.2020的RGB颜色空间的系统,目标图像的目标颜色针对使用根据BT.709的RGB颜色空间的系统。

块504可以确定目标色域的尖端线。块504可以根据结合块502所描述的原理来确定尖端线。

方法500还可以包括用于接收关于内容色域的信息的块505。块505可以接收内容色域信息,例如,标识整个色域的信息。在另一个示例中,块505可以接收标识存储的色域信息的标识符(例如,标识预先存储的色域信息的标识符)。所接收的内容色域信息可以是标识内容色域的信息。内容色域可以限于原色、副色的坐标、白点、色域边界描述、某些颜色的坐标、尖端线、尖端点等。内容色域可以被表示在任何定义的颜色空间(例如,RGB、XYZ、Lab和IPT)中。内容色域可以发送自任何设备/系统(例如,将显示内容的设备,诸如,电视机、监视器、智能手机、平板电脑、膝上型电脑、游戏界面或任何其他类型的显示器;通信接口;目的地接口或通信链路(例如,Wi-Fi、USB)或有线链路(例如,HDMI、局域网))。备选地或附加地,内容色域可以是符合标准(例如,rec.709、rec.2020)的色域。可以经由目的地接口(例如,与显示器的接口)或通信链路(包括无线(例如,Wi-Fi、USB)或有线链路(例如,HDMI、局域网))来发送和/或接收内容色域。

在一个示例中,内容色域的颜色空间可以不同于源色域的颜色空间。在一个示例中,内容色域信息可以与源色域信息接收自不同的设备/系统。

块506可以确定内容色域的尖端线。块506可以根据结合块502所描述的原理来确定尖端线。

块507可以确定色相旋转角度。在一个示例中,块507可以基于原色来确定色相旋转角度。在另一个示例中,块507可以基于副色来确定色相旋转角度。在本公开原理的一个示例中,块507可以仅基于原色来确定色相旋转角度。在本公开原理的另一个示例中,块507可以仅基于副色来确定色相旋转角度。在另一个示例中,块507可以基于原色和副色二者来确定色相旋转角度。

块507可以确定针对每个源颜色的色相改变,特别是针对每个特定颜色(即,原色和/或副色)的色相改变。如本文中所使用的,“特定颜色”被定义为色域的原色、副色或原色和副色。块507可以确定源色域的特定颜色在目标色域的相应原色和/或副色的色相的方向上的色相改变。在一个示例中,块507可以通过确定由旋转角度定义的色相旋转来确定色相改变。

在一个示例中,块507可以针对任何色相(包括非特定颜色的色相)确定色相改变,即,色相旋转角度。在一个示例中,块507可以基于针对原色和/或副色获得的色相旋转角度的插值(例如,线性的、样条的(splines))来确定色相旋转角度。在一个示例中,除了特定颜色之外的颜色的旋转角度可以通过对在源色域中围绕(即,与之相邻的)所述特定颜色的色相角度的特定颜色的旋转角度的线性插值来确定。可以使用其他插值方法(例如样条插值)。在一个示例中,块507可以执行这种原理。

在另一示例中,可以使用源色域中的相邻原色(并且可选地,还有副色)的色相旋转角度的线性插值,来旋转源色域的非特定颜色(除了原色和/或副色以外的颜色)。色相旋转角度可以是色相的分段线性函数。在一个示例中,块507可以执行该示例。

在一个实例中,块507可以确定用于将输入颜色(例如,来自输入图像/视频的颜色)映射到输出颜色(例如,输出图像/视频)的查找表(“LUT”)。

块507可以根据结合下述步骤1-4所描述的原理来针对原色和/或副色确定色相旋转角度。

块508可以基于块507中的确定来应用色相旋转。在一个示例中,块508可以基于来自块507的色相旋转角度来应用色相旋转。在一个示例中,块508可以基于将来自块507的色相旋转确定应用于每个输入颜色来确定输出颜色以生成LUT。在另一个示例中,块508可以基于先前根据本公开原理确定的LUT(包括块507的色相旋转确定)应用色相旋转。一旦根据本公开原理生成LUT,可以将其存储以供未来应用,而无需执行块501-507的确定。可以根据结合块501-507和步骤1-4所描述的原理来生成LUT。

块508可以接收输入颜色信息。输入颜色信息可以是输入视频的输入像素的颜色信息。在一个示例中,块508可以确定基于旋转后的色相而确定的输出颜色。然后,块508可以提供输出颜色。

在一个示例中,块509和510可以将颜色空间转换应用于输入或输出颜色(例如,像素)。可以在与色相旋转相同的步骤或相同的过程中执行颜色转换。颜色空间转换可以将颜色的表示从第一颜色空间改变为另一个颜色空间。在一个示例中,块509和510可以是可选的。在一个示例中,块509和510可以基于LUT的颜色空间表示来应用颜色空间转换。在另一示例中,块509和510可以基于用于执行色相旋转的颜色空间来应用颜色空间转换。方法500讨论在诸如Lab或IPT的颜色空间中执行本公开原理的方面的示例。在这种颜色空间中,色相的修改对应于颜色的旋转。

可以针对其他实施方式修改方法500,诸如利用修改了色相的LUT的实施方式。例如,如果方法500被修改为利用LUT,则块508可以实现LUT。在这个示例中,可以利用或不利用块501-507来生成LUT。

图8示出了在CIELAB色彩空间的ab平面中特定亮度水平的源色域201、内容色域401和目标色域202的示例性示意图800。

在一个示例中,图5的块507可以按照以下方式确定原色和/或副色的色相旋转角度。确定针对源色域的原色或副色的色相旋转角度,使得在色相映射之后,源色域的映射后的原色或副色的色相与目标色域的对应原色或副色的色相相同(源原色或副色色相与目标原色或副色的色相的对准)。确定针对内容色域的相应原色或副色的色相旋转角度,使得在色相映射之后,内容色域的映射后的原色或副色的色相与目标色域的对应原色或副色的色相相同(内容原色或副色色相与目标原色或副色的色相的对准)。

在另一个示例中,图5的块507可以针对所选的源颜色的第一集合以下方式确定色相旋转角度。所选颜色403的集合由穿过白色(即,ab平面或亮度轴的原点)并分别穿过源色域、内容色域和目标色域(比如,CS2、CC2、CT2)的所有三个对应原色和副色的曲线来定义。这样的曲线对应于所选颜色的第一连续集合。根据一种变型,仅使用曲线的所选颜色的连续集合中的颜色的第一离散颜集合。在非限制性示例中,颜色的第一离散集合包括10个颜色样本。这种变型特别适合于降低用于实施所述方法的处理能力。在一个示例中,曲线是分段的直线。在一个其他的示例中,曲线是样条。定义了针对该所选源颜色集合的色相旋转,使得在色相旋转之后,映射后的所选源颜色集合与所选目标颜色集合404。所选目标颜色的集合404由穿过白色(即ab平面或亮度轴的原点或无彩颜色)和目标色域的对应原色或副色的曲线来定义。这样的曲线404对应于所选颜色的第二连续集合。有利地,该曲线404是与恒色相或相同色相叶相对应的直线。至于第一颜色集合、第二颜色集合可以是离散的。当在色域映射方法的另一个色度映射步骤中压缩色度时,这样的直线限制了伪像。

总共,针对所有的六个原色和副色“红色”“绿色”“蓝色”“青色”“平红色”和“黄色”,所选的源颜色的六个集合403被映射到所选的目标颜色的六个集合404。在该示例中,色相旋转角度取决于色度。所选的源颜色集合中的一个源颜色是映射到对应原色或副色的源色域原色或副色(源原色或副色色相与目标原色或副色的色相的对准)。所选的源颜色集合中的一个源颜色是映射到对应原色或副色的内容色域原色或副色(内容原色或副色色相与目标原色或副色的色相的对准)。如果源色域和内容色域的原色或副色的色相分别不同,则源色域和内容色域的原色或副色的色相旋转角度分别不同。

在本公开原理的一个示例中,所选的源颜色的集合403不穿过目标颜色。

在本公开原理的一个示例中,可以按如下确定色相旋转角度(θ)。以下示例可以通过图5的块507来实现。应用以下步骤:

1.对于源样本颜色以及对应的内容样本颜色和目标样本颜色,访问的第一颜色集合(801),所述第一颜色集合(801)包括无彩颜色、源色域的特定颜色、内容色域的对应特定颜色以及目标色域的对应特定颜色。在一个示例中,在块507中创建穿过原点和三个特定颜色的曲线(403),或者从关于色域的信息中恢复曲线(403)。该曲线的颜色被称为所选源颜色的集合或第一连续颜色集合。

2.对于源样本颜色和对应的内容样本颜色和目标样本颜色,访问第二颜色集合(404),所述第二颜色集合(404)包括与目标色域的特定颜色的色相相对应的恒色相的颜色。在一个示例中,创建穿过原点和特定目标颜色的曲线(404),或者从关于色域的信息中恢复曲线(404)。该曲线不同于步骤1的曲线(403)。该曲线的颜色被称为所选的目标颜色的集合或第二颜色集合。

3.在步骤4的预备步骤中,计算在来自第一颜色集合(403)的第一样本颜色向第二颜色集合(404)之间的色相差。色相差对应于第一颜色集合(403)的第一样本颜色的色相旋转角度,使得当来自第一颜色集合的任何样本颜色由该色相旋转角度来旋转时,第一颜色集合的映射后的样本颜色将与第二颜色集合(404)的颜色一致。可以将所选的特定颜色的这种色相差存储在LUT中,以供后续在步骤4中使用。

4.对于源色域或内容色域中的一个色域的任何给定颜色,执行向目标色域的色域映射是基于具有与给定颜色相同的色度并在步骤3中计算的样本颜色的色相差的。在一个示例中,通过对在步骤3中计算出的例如2个相邻样本颜色的色相旋转角度的插值来计算色相旋转角度(θ)。

可以例如以下方式使用定义构造三次样条曲线的关键点来构造与根据步骤1的源特定颜色CS、目标特定颜色CT和内容特定颜色CC相对应的第一连续颜色集合:

-定义颜色空间中的关键点的集合,包括:

○与源色域的特定颜色CS相对应的一个点,

○与目标色域的特定颜色CT相对应的一个点,

○与内容色域的特定颜色CC相对应的一个点,

○一个保留点,用于不修改低色度的色相,其在亮度轴上的第一锚点CA1与目标色域的特定颜色CT之间的线上,距第一锚点CA120%距离:CP=CA1+0.2(CT-CA1),其中第一锚点CA1具有与CT相同的亮度但色度坐标为零。在CIELAB空间中,如果CT=(LT,aT,bT),则第一锚点是CA1=(LT,0,0)且保留点是CP=(LT,0.2aT,0.2bT)。另一个第一锚点可以根据颜色保留的艺术意图来选择,例如亮度轴上的一半最大亮度的锚点CA1=(50,0,0)。外差点针对目标色域的20%以内的较低色度,将三次样条曲线引导到与CT相同色相的颜色。取决于低色度的色相保留的艺术意图,20%的百分比可以增加(例如25%),或者可以减少(例如15%)。

○一个外插点,其色度大于源色域、目标色域和内容色域的所有三个特定颜色。例如,如图4a中的CS5所示,如果特定颜色CS5具有比目标色域和内容域的对应特定颜色大的色度,则将外插点选择为CE=CS5+0.2(CS5-CA2),其中第二锚点CA2具有与CS5相同的亮度,但是色度坐标为0。在CIELAB空间中,如果CS5=(LS,aS,bS),则第二锚点CA2=(LS,0,0)且外插点CE=(LS,1.2aS,1.2bS)。另一个第二锚点可以根据颜色外插的艺术意图来选择,例如亮度轴上的一半最大亮度的锚点CA2=(50,0,0)。外差点针对超出最大色域的最大色度将三次样条曲线引导到与CS5相同色相的颜色。取决于较大色度的映射行为的艺术意图,0.2的因子可以增加(例如,0.3)或减少(例如,0.1)。

-关键点{CT,CS,CC,CP,CE}与对应色度值{cT,cS,cC,cP,cE}相关联,其中在CIELAB空间中cC、cP、cE同理。

-使用已知方法来计算三个三次样条曲线fL(c)、fa(c)、fb(c),例如来自Python库“scipy”的模块“interpolate”的方法“interpld”,其中

○根据关键点{CT,CS,CC,CP,CE}的亮度值{LT,LS,LC,LP,LE}和对应色度值{cT,cS,cC,cP,cE}来计算第一曲线fL(c)。根据关键点{CT,CS,CC,CP,CE}的a坐标值s{aT,aS,aC,aP,aE}和对应色度值{cT,cS,cC,cP,cE}来计算第二曲线fa(c)。

○根据关键点{CT,CS,CC,CP,CE}的b坐标值{bT,bS,bC,bP,bE}和对应色度值{cT,cS,cC,cP,cE}来计算第三曲线fb(c)。

-然后,由{(L,a,b)/L=fL(c),a=fa(c),b=fb(c),0<c<cmax}来给出颜色的第一连续集合,其中cmax是源色域、目标色域和内容色域的对应特定颜色中具有最大色度的特定颜色的色度。例如,对于特定颜色CS5的第一颜色连续集合,cmax为CS5的色度。

在上面的步骤3中,可以针对第一颜色连续集合外的N个样本颜色的集合,计算色相旋转角度,例如{(Li,ai,bi)/Li=fL(ci),ai=fa(ci),bi=fb(ci),ci=cmax i/N,0≤i<N-1}。如果CT=(LT,aT,bT)是目标色域的对应特定颜色,旋转角度是CIELAB空间的ab平面中的向量{(ai,bi)}与向量{(aT,bT)}之间的角度。得到的旋转角度{αi=angle((ai,bi),(aT,bT)/0≤i<N-1}可以来自查找表(LUT){(Li,ai,bi,αi)/0≤i<N-1},其针对颜色空间中的颜色{(Li,ai,bi)指示对应的色相旋转角度αi,要应用该色相旋转角度αi对所述颜色进行色相映射。可以I针对源色域的所有特定颜色的每一个第一颜色连续集合创建这样的LUT,并且所有的这些LUT可以合并为全局LUT,例如{(Li,ai,bi,αi)/0≤i<6N-1},假设三个原色和三个副色将会是源色域的特定颜色。

在上面的步骤4中,为了对源色域或内容色域之一的任何给定颜色进行色相映射,可以通过全局LUT{(Li,ai,bi,αi)/0≤i<6N-1}的条目的插值来计算色相旋转角度(θ)。可以使用任何已知的插值方法,例如两个最接近的LUT条目的双线性插值。

在上面的步骤4中,在色相映射之后,可以应用色度压缩或扩展,以便将映射后的颜色带入目标色域(通过压缩),或者使映射后的颜色填充整个目标色域(通过扩展)。在压缩的情况下,例如可以使用沿直线映射轨迹来映射颜色的色度映射算法,所述直线映射轨迹分别锚定到属于无彩L轴的锚点。每个色相映射后的颜色沿着映射轨迹在朝向锚点的方向上被色度映射到目标颜色。色相映射后的颜色的映射可以被描述为:将该色相映射后的颜色与锚点的距离D修改为得到的目标颜色与相同锚点的距离D’。

为了将D映射到D’,可以使用已知的三段映射函数,比如由Montag等人在他们发表在IS&T/SID Sixth Color Imaging Conference且题为“Gamut mapping:Evaluation ofchroma clipping techniques for three destination gamuts”的论文中所讨论的那样。该映射函数具有

○首段,具有斜率一,覆盖色度的40%,

○末段,其为硬限幅,

○以及中段,连接其他两个段,覆盖色度的60%。

这些示例以及结合步骤1-4所描述的原理可以由图5中所示的方法500的框507来执行。

图6示出了根据本公开原理的示例性系统600。系统600可以包括中间系统601、中间系统602和显示系统603中的一个或多个系统。可以理解,系统600可以仅包括这些系统601-603中的一个系统。备选地,系统600可以包括系统601-603中的一些或全部系统。备选地,系统600可以包括除了系统601-603以外的用于执行色域映射的附加系统或不同系统。在一个示例中,系统601-603中的每个可以是与图7的设备700类似的设备。备选地,系统601-603中的每个可以全部或部分地用图7的设备700来实现。

系统600示出了第一色域604、第二色域605和第三色域606。或者,可以包括色域604-606中的一个或多个色域,或者,可以进一步包括与本文中所提供的示例不同的色域。

可以接收或可以发信号通知色域604-606中的每个色域。附加地,如本文所使用的,词“信号”指的是指示某事物,例如,所存储的色域的信息或色域映射信息。例如,系统可以接收标识已知色域(例如,标准化色域)的信号。系统可以发信号通知与色域有关的一个或多个参数,以便使系统知道在色域映射系统侧使用哪个色域。以这种方式,可以利用参数或标识符来标识色域。通过避免任意实际参数的传输,可以实现节省。应认识到可以通过各种方式完成所述发信号通知。例如,可以使用一个或多个语法元素、标志等来发信号通知消息。

色域604-606中的每个色域可以对应于色域,诸如显示面板的色域、相机的色域、当前或未来色域标准(例如,NTSC、rec.709、rec.2020、Adobe RGB和DCI-P3)的色域。可以从任何设备/系统(例如,传送输入内容的设备,诸如相机、机顶盒、蓝光播放器、相机传感器、HDMI接收器、通信接口)接收色域604-606。备选地或附加地,色域可以符合标准(例如,rec.709、rec.2020)。色域可以是从任何介质(例如,移动网络(包括3G或4G网络);无线网络(包括Wi-Fi、蓝牙网络或链路);TV广播网络(例如,DVB或ATSC接收器接口);有线网络(包括web网络);有线链路或总线(包括HMDI、USB);光盘播放器(包括DVD或蓝光播放器、视频流或存储介质(例如,蓝光盘、存储器))接收的。

系统601-603中的每个系统可以包括色域映射块610。色域映射块610可以根据结合图5和步骤1-4描述的原理来执行色域映射。色域映射610可以在本地执行,或者可以全部或部分地远程执行(例如,在服务器上、在云中)。

在一个示例中,中间系统601可以是相机。中间系统601可以根据当前原理执行色域映射610,以将相机传感器色域映射到另一色域(例如,标准化色域或相机显示器的色域)。在一个示例中,中间系统601可以是广播编码器。中间系统601可以根据本公开原理执行色域映射610,以将原始视频内容的色域(例如,诸如rec.2020的标准色域)映射到传输通道的色域(例如,诸如rec.709的标准色域)。在一个示例中,中间系统602可以是机顶盒系统、录像机或蓝光播放器,用于在两个不同的标准(例如,NTSC、rec.709、rec.2020、AdobeRGB和DCI-P3)之间执行色域映射。如图6中所示,可以向中间系统602提供源色域、目标色域或源色域和目标色域二者。在一个示例中,可以存在多个中间系统602,其可以在色域信息的发送/接收期间执行色域映射。在一个示例中,显示系统603可以是显示器。显示系统603可以根据本公开原理执行色域映射610,以将视频内容的色域(例如,使用rec.2020)映射到实际显示面板的色域(例如,由其原色和副色所定义的)。

备选地,系统601-603中的每个系统可以应用根据结合图5和步骤1-4所描述的原理来确定的LUT。根据本公开原理,可以基于色相旋转来确定LUT。在这种特定情况下,可以利用步骤1-4来获得特定颜色(例如,原色和/或副色)的色相旋转角度。在生成LUT期间,可以将LUT的每个可能的颜色输入提供为所应用的色相旋转的输入(例如,图5的块508)。然后将所应用的色相旋转的输出存储在LUT中,与可能的颜色输入相对应。

在一个示例中,在生成LUT期间,取决于LUT输入的格式(例如,RGB或YUV、8位、12位或16位),可以可选地将每个可能的LUT输入颜色值首先转换为(例如,块509)工作颜色空间(例如,Lab或IPT)。然后,可以针对每个可能的LUT输入值确定色相旋转角度。然后,可以在将颜色可选地转换到LUT输出颜色空间(例如,Lab、IPT、RGB或YUV)(例如,块510)之前将色相旋转应用于(例如,块508)该颜色。输出颜色值可以被称为LUT结果,并且可以被存储在LUT中。LUT输入可以比实际系统输入具有更小的分辨率,并且可以在应用LUT之前对缺失的信息进行插值。因此,LUT提供输入LUT颜色到得到的经LUT处理后的颜色的映射,其中根据本公开原理来处理得到的LUT颜色,本公开原理包括结合步骤1-4和图5所描述的原理。

图7展示出设备700的示范性架构,其中设备700可以被配置为实现关于图5和步骤1-4所描述的方法。本公开原理可以本地执行或可以全部或部分远程执行(例如,在服务器上、在云中)。如上所述,设备700可以是图6的一个或多个系统601、602和603中的一部分。

在一个示例中,图7展示出可以被配置为实现根据本公开原理的颜色处理方法的装置。

设备700包括通过数据和地址总线701连接在一起的以下元件:

微处理器702(或CPU),例如,DSP(或数字信号处理器);

-ROM(或只读存储器)703;

-RAM(或随机存取存储器)704;

-I/O接口705,用于从应用接收要发送的数据;

-电池706(或其他合适的电源)。

根据一个示例,电池706在设备的外部。在所提及的每个存储器中,说明书中所使用的词语“寄存器”可以对应于小容量的区域(一些比特)或非常大的区域(例如整个程序或大量的接收或解码的数据)。ROM 703至少包括程序和参数。将根据本发明的方法的算法存储在ROM 703中。当接通时,CPU702将程序上传到RAM中并执行相应指令。

RAM 704在寄存器中包括由CPU 702执行并在设备700接通之后上传的程序、寄存器中的输入数据、寄存器中的方法的不同状态的中间数据、以及用于执行寄存器中的方法的其它变量。

可以以例如方法或过程、装置、软件程序、数据流或信号来实现本文中所描述的实施方式。即使仅在单一形式的实施方式的上下文中进行讨论(例如,仅作为方法或设备进行讨论),所讨论的特征的实施方式还可以以其他形式(例如,程序)来实现。装置可以以例如适当的硬件、软件和固件来实现。所述方法可以被实现于诸如处理器的装置中,所述处理器一般地是指处理设备,包括例如计算机、微处理器、集成电路或可编程逻辑器件。处理器还包括通信设备(例如,计算机、蜂窝电话、便携/个人数字助理(“PDA”)),以及促进终端用户之间的信息通信的其他设备。系统700可以包括存储器703和/或存储器704以及处理器702。在一个示例中,处理器702可以执行结合图5所描述的操作。在一个示例中,存储器703和/或存储器704可以存储与结合图5所描述的操作有关的数据。

可以通过使用专用硬件以及能够执行与适当的软件相关联的软件的硬件来提供附图中示出的各个元件的功能。当由处理器来提供时,这些功能可以由单个专用处理器、单个共享处理器、或多个单独的处理器来提供,所述多个单独的处理器中的一些可以是共享的。此外,显式地使用术语“处理器”或“控制器”不应当被解释为专门指代能够执行软件的硬件,而可以隐含地包括而不限于数字信号处理器(“DSP”)硬件、用于存储软件的只读存储器(“ROM”)、随机存取存储器(“RAM”)和非易失性存储设备。还可以包括常规和/或定制的其他硬件。

此外,可以将软件实现为在程序存储单元上具体实现的应用程序。应用程序可以上传至包括任何合适架构的机器并由其执行。优选地,在具有硬件(比如,一个或多个中央处理单元(“CPU”)、随机存取存储器(“RAM”)以及输入/输出(“I/O”)接口)的计算机平台上实现该机器。计算机平台还可以包括操作系统和微指令代码。本文中所描述的各种过程和功能可以是CPU可执行的微指令代码的一部分或应用程序的一部分或其任意组合。此外,可将各种其它***单元连接到计算机平台,比如附加的数据存储单元和打印单元。

尽管相对于特定实施例描述了本发明,然而应当理解本发明不限于该实施例。因此,本领域技术人员应当认识到,所要求保护的本发明包括根据这里所述的这些实施例的变型。

还应当理解,由于在附图中描绘的构成系统组件和方法中的一些优选地以软件来实现,所以系统组件或处理功能块之间的实际连接可以根据对本发明原理编程的方式而有所不同。

28页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:照相装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类