码迷,mamicode.com
首页 > 其他好文 > 详细

色差计算度量

时间:2020-04-12 14:54:10      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:交叉点   组成   不同的   mat   mamicode   还原   匹配   十进制   技术   

色差计算度量

1.       CIE L*函数

将相对亮度(Y/Yn)映射为亮度(L∗)的CIE方程由两个独立的函数组成f()和g()

 技术图片

 

 技术图片

 

 这两个函数在?,我称之为交叉点。两个常数κ,?CIE标准规定:

 技术图片

 

 通过对两个功能的连接点进行特写,可以看到此中断。在下面的动画中,f()是用蓝色画的g()是用红色画的。当我们放大连接点时,不连续变得明显:

 技术图片

 

 可见,函数不仅是不连续的,而且是非单调的,这使得它在这个区域是不可逆的。交界处的斜坡呢?我们可以用一阶导数来比较它们。

 技术图片

 

 再次进行替换表明在连接点处坡度也不匹配:

 技术图片

 

 如果我们想找到修正常数技术图片 

,如果同时提供函数和斜率连续性,则必须在接合点匹配函数及其一阶导数:

 技术图片

 

 变换后得到

 技术图片

 

 求常数,表明它们的值可以用有理数精确表示:

 技术图片

 

 使用这些值代替已发布的CIE值可以在连接点处提供完美的函数和坡度连续性:

 技术图片

 

 CIE决定将这些常数表示为十进制值,这是一种不必要的近似,同时引入了函数和斜率不连续性。

如果你检查CIE方程在XYZ和Lab之间的转换,你会发现常数7.787。通过将上述分析扩展到这些方程中,您将发现这个常数的确切值是有理数。

通过使用上述值,将修复XYZ、Lab、LCHab、Luv和LCHuv之间已发布的CIE转换中存在的函数不连续性、非单调性、反演失败和斜率不连续性。

2. 色差计算

色差即两个颜色的差异。一般地,在特定的条件下,人眼可以比较容易的分辨两个颜色样品是否有差异。在实际应用中,尤其是工程计算中,需要将这种差异用数学公式来量化表示,即色差公式。色差的计算是颜色科学的一个重要课题,到现在已经有了80多年的发展历史。

 

要建立色差计算公式,并不是一件简单的事情,首先就需要一个模型来描述颜色,目前应用最广泛的就是CIE1931-XYZ标准色度系统。

CIE1931-XYZ(CIE: 国际照明委员会) 是1931年由CIE推荐的色度系统,大部分颜色测量、计算大都采用这一系统。但是这个系统模型采用的三刺激值或者色品坐标,都与颜色感觉没有直接的对应关系,并不均匀,大家可以对照图1看看,在CIE1931xy色品图上,绿色区域,变化较大时,人眼才能分辨出两个颜色的差异(圈儿大),但在蓝紫色区域,较小的变化,就能引起视觉差异(圈儿小)。因此,CIE1931-XYZ不能用来计算色差。因此,寻找均匀的颜色空间,进而描述色差,成为了这个领域人们的重要研究方向。

技术图片

 

  

图1 麦克亚当[1]椭圆 (图片来源:参考资料[2]

 

CIE1976LAB:自1931年起,专家们先后提出了几十种均匀的颜色空间,在1976年之前,CIE就分别推荐了CIE1960UCS和CIEWUV两种空间,但都不是很理想。直到1976年,CIE向大家推荐了CIE LAB 色空间,具有很好的视觉均匀性、可以很好的描述色差。这个模型与CIEXYZ色度系统之间的转换关系如下:

 技术图片

 

 Xn,Yn,Zn是照明体的三刺激值。在CIELAB色空间,彩度(chroma)和色调角(hueangle)的定义是这样的:

 技术图片

 

 注:这也叫CIEL*C*h*或CIELCH色空间。

由此,CIELAB色空间的色差公式的定义为:

 技术图片

 

 细心的读者有可能发现了,这个就是三维空间的欧式距离啊,没错,CIELAB色空间色差的定义就是两个颜色在CIELAB色空间的欧式距离。这个公式一直沿用至今,现在依然是图像相关的领域很多公司的首选色差公式,虽然CIE一直在“强烈推荐”CIEDE2000。

然而,CIELAB色空间并非那么完美!

在CIELAB色空间中,色差是两个颜色坐标点的欧式距离,那意味着,只要距离相同,无论在哪个颜色区域,无论颜色的变化方向如何,色差都应该一样。实际情况是CIELAB并不完全均匀,不同区域的颜色、不同的方向,变化并非一致。相同色差感觉的实际区域,不是一个球形,而是一个椭球!因此,后来色差公式的改进,大部分都是以CIELAB为基础,在这个椭球上做文章,比如CMC(l:c)。

CMC(l:c) (CMC:英国颜色测量委员)色差公式基于CIELAB,作了一些修正,具体公式如下:

技术图片

 

 式中,纺织行业将lc的取值设定为l = 2,c =1,SL,SC,SH分别是亮度、彩度、色调角的修正系数,具体取值如下:

技术图片

 

 经过修正,在CIELAB色空间一个个的圆球(二维平面就是圆形),就变成了一系列的椭球(椭圆),如图二所示。

 技术图片

 

  

图2 CMC(l:c)色差椭圆

 

CIE94色差公式和CMC类似,也是对CIELAB色差公式的修正,不同之处在于修正系数不一样,CIE94的色差公式和修正系数分别如下:

技术图片

 

 不论CMC还是CIE94,并没有提出新的色空间,只是针对CIELAB色差公式,分别给亮度、彩度、色调添加了一些修正系数,色差公式的基本结构都是类似甚至相同的。这一结构,也是很多色差公式采用的标准形式。CIE94计算较为简单,得到了一些应用场景的认可,但是这个公式的改善效果并不理想。

CIEDE2000:2001年,在经过了大量色差样本的评估、大量的视觉实验的基础上,CIE正式向大家推荐了CIE DE2000色差公式。公式和修正系数如下:

 技术图片

 

 CIEDE2000现在是CIE主要推广的色差公式,事实上,大家也应该尽可能的用这个色差公式。如果大家以前的数据库都是CIELAB的,只要保留了原始的LAB色度数据,就可以用CIE2000公式重新计算。

下图为一个常见的用于测试颜色准确性的色差图。图里的椭圆就是4倍的CIEDE2000单位椭圆,借助椭圆,大家可以估计颜色还原的偏离程度及其在视觉感知上的差异性。

 

技术图片

 

  

图3 CIEDE2000椭圆(图像用Imatest软件生成,图中参数请参考[4])

 

以上四个色差公式,是大家在一些常见的颜色、图像软件中可以看到的。但实际上,色差公式远不止这些,从CIE1931色度系统建立之后,就出现了多达几十种色差公式,下面简单罗列几个具有代表性的公式。

Adams-Nickerson公式(1942

这个公式是对CIEXYZ色空间的不均性的修正,下面公式里的VX,VY,VZ就是由CIEXYZ变换而来。

 技术图片

 

 Hunter公式(1948

这个公式的色差计算与CIE1976公式类似,但是色度值LAB计算方法与CIELAB不一样。

 技术图片

 

 公式里的XYZ与CIEXYZ的定义相同,用这个公式里的LAB也叫Hunter-LAB。

 

CIELUV公式(1976)

CIELUV是与CIELAB几乎同时期的色空间,因其u‘ v‘的计算方法的特性,使其在光源、显示等领域得到了非常广泛的应用。CIELUV色空间的计算方法及色差公式如下:

 

 

色差计算度量

标签:交叉点   组成   不同的   mat   mamicode   还原   匹配   十进制   技术   

原文地址:https://www.cnblogs.com/wujianming-110117/p/12684958.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!