CN109345457B - 一种用于分区最大化色域边界描述器的空区插值方法 - Google Patents
一种用于分区最大化色域边界描述器的空区插值方法 Download PDFInfo
- Publication number
- CN109345457B CN109345457B CN201811240471.4A CN201811240471A CN109345457B CN 109345457 B CN109345457 B CN 109345457B CN 201811240471 A CN201811240471 A CN 201811240471A CN 109345457 B CN109345457 B CN 109345457B
- Authority
- CN
- China
- Prior art keywords
- point
- color
- line
- color gamut
- gamut
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000005192 partition Methods 0.000 title claims abstract description 118
- 238000000034 method Methods 0.000 title claims abstract description 91
- 238000013507 mapping Methods 0.000 claims abstract description 166
- 238000005070 sampling Methods 0.000 claims abstract description 45
- 238000004364 calculation method Methods 0.000 claims abstract description 44
- 230000006835 compression Effects 0.000 claims abstract description 33
- 238000007906 compression Methods 0.000 claims abstract description 33
- 238000000638 solvent extraction Methods 0.000 claims abstract description 12
- 239000003086 colorant Substances 0.000 claims description 31
- 239000011159 matrix material Substances 0.000 claims description 23
- 230000003416 augmentation Effects 0.000 claims description 7
- 238000012512 characterization method Methods 0.000 claims description 7
- 239000013598 vector Substances 0.000 claims description 6
- 238000012935 Averaging Methods 0.000 claims description 2
- 239000011800 void material Substances 0.000 claims description 2
- 238000013461 design Methods 0.000 abstract description 8
- 238000004422 calculation algorithm Methods 0.000 description 54
- 238000012360 testing method Methods 0.000 description 31
- 238000010586 diagram Methods 0.000 description 21
- 238000002474 experimental method Methods 0.000 description 16
- 230000006872 improvement Effects 0.000 description 13
- 238000011156 evaluation Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 2
- 210000003746 feather Anatomy 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 241000287531 Psittacidae Species 0.000 description 1
- 241000251737 Raja Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000010921 in-depth analysis Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012067 mathematical method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003908 quality control method Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4007—Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/90—Dynamic range modification of images or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/90—Determination of colour characteristics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Facsimile Image Signal Circuits (AREA)
- Image Processing (AREA)
Abstract
本发明提出了一种用于分区最大化色域边界描述器的空区插值方法,其步骤为:球坐标系中的色域分区;设计色域边界采样点;利用基于相邻分区加权平均的空缺分区插值方法对空缺分区进行插值计算球坐标半径,计算所有分区的色域边界描述点;计算线色域边界:计算等色相角平面与水平方向上左右相邻的GBD点连线的交点得到线色域边界节点,将该等色相角平面内的所有线色域边界节点连接起来形成线色域边界。本发明解决了相邻分区颜色点连线与等色相面的重合而导致的色域边界描述问题,同时设计了相应的色域裁剪算子和色域压缩算子;空区插值后的分区最大化色域边界描述器具有较高的色域映射偏好性和准确性,且具有较高的计算效率。
Description
技术领域
本发明涉及设备和图像色域边界描述的技术领域,尤其涉及一种用于分区最大化色域边界描述器的空区插值方法。
背景技术
色域是指颜色的表现范围。色域通常用标准色度系统颜色空间中的一个三维有界体积来描述。色域可分为设备色域和图像色域。设备色域是指设备在某一介质上所能表现的最大颜色范围。例如,打印机色域是指打印机在特定的纸张上所能打印出的颜色范围;需要注意的是,不同类型设备的色域再现能力是不同的,即使是同种类型设备,由于工作状态(参数设置)不同、所用介质不同等,其色域再现能力也是不同的。
掌握设备的色域大小有重要实际意义,因为设备无法记录或再现设备色域以外的颜色。色域边界描述的方法是指:使用某种特殊的数学方法将设备颜色采样点或图像像素点的色度值在标准色度系统颜色空间中拟合成三维空间曲面,形成最终的色域边界描述。与设备色域不同,图像色域是指一幅具体的彩色图像所包含的颜色范围。如果设备色域边界的采样点数量足够多,且分布足够均匀,那么经计算得出的设备色域边界将会比较规则。由于图像色域边界是直接由图像中所有像素的颜色值计算得出,而图像的颜色分布往往集中在特定区域,其分布特征具有特定性,因此与设备色域相比,图像色域边界往往不是很规则。
在颜色空间转换的过程中,精确地描述图像色域边界和设备色域边界是保证色域映射准确性的前提条件。因此,在颜色复制过程中对色域边界的分析和计算是一个很重要的问题,许多科研人员一直致力于此问题的研究。归纳起来,色域边界描述方法共经历了以下几个发展阶段:
最初的色域模型是最简单的点集模型,即设备的色域直接通过颜色空间的离散样本点来提取。这种方法通过离散点集表现色域,是对色域范围的一种抽样表示。但在许多实际应用中,需要的是色域边界或色域体的描述,如色彩匹配处理的是色域体到色域体的映射,所以简单地用点集来描述色域不能满足应用需要。之后,又出现了隐含在颜色特征化模型(例如库伦蒙克公式或纽介堡模型)中的色域边界描述方法,这类方法的典型代表是MarcMahy于1996年提出的利用Neugebauer方程求解彩色打印机色域的方法,该方法通过打印机Neugebauer呈色模型的形式化求逆而产生一组在色彩空间内的明度等高线,然后通过对等高线的拼接获得打印机色域的特定表面。这种使用颜色特征化模型模拟打印机色域的方法与设备呈色原理有关,受设备类型和介质特性等因素限制,精度不高,且仅适用于特定呈色设备,缺少对图像色域计算的支持。
与上述的模型分析法相比,随后出现的基于样本测量值的经验模型法无疑更为准确。目前共两种最具代表性的经验模型法。1997年,Raja Balasubramanian和Edul Dalai首先提出了一种基于凸壳“充放气”的色域边界描述算法。该方法首先对颜色样本数据进行非线性变换,使得变换后的数据更接近于凸集,然后进行凸壳计算,获得色域边界,最后对色域边界执行非线性反变换,得到最终的色域边界描述。Cholewo等人利用ɑ-shapes来确定色域边界,该方法实际上是凸壳算法的一种泛化,其参数ɑ的确定需要借助经验或多次试验获得。凸壳算法需要将颜色数据点进行包扎,算法较为复杂,计算量较大,而且在描述色域边界前需要对色域形状预先作出假设。对于设备色域计算来说,作出此假设可能非常有用,但对于图像色域来说,由于凸壳性通常并非图像色域的一般属性,因此凸壳算法不能很好地描述非凸色域边界,可能会对部分图像的色域边界描述精度产生较大影响。
针对凸壳算法存在的问题,Jan Morovic和M.Ronnier Luo又提出了基于分区最大值的色域边界描述方法(SGBD:Segment Maxima gamut boundary descriptor)。这种方法也需要收集色域边界附近的颜色样本,依据样本的测量值进行色域边界计算。SGBD方法首先将CIELAB颜色空间在球坐标系中进行区域均匀等分,并将各分区内具有最大球坐标半径的颜色样本点作为该分区的色域边界点;然后,在每个待映射颜色的等色相角平面内,将水平方向上各相邻分区的色域边界点依次连接,并将所有连线与等色相角平面的交点连接起来,就可以获得该等色相角平面内的线色域边界,供色域映射使用。SMGBD方法可以通过增加分区数量来提高色域描述精度,与颜色特征化模型并无根本联系,也无需对色域形状预先作出假设,因此该方法对于设备和图像色域均有较好的描述效果。更重要的是,SMGBD方法还给出了线色域边界(Line Gamut Boundary,LGB)的计算方法,能够轻松计算色域边界与颜色映射线的交点,因此可以方便地应用于图像色域映射。
凭借上述优点,SMGBD方法是目前应用最广泛的色域边界描述方法,但该方法在提出时仍存在一些问题:①由于不同图像的颜色分布特征不同,因此在计算图像色域边界时,可能会出现许多分区缺失边界点的情况。这就需要对缺失边界点的分区进行插值,否则会严重影响图像色域边界的描述精度;②在空区插值后,针对相邻分区边界点连线与等色相面的重合所导致的线色域边界计算和色域映射问题,也需要设计出合理的解决方案。
发明内容
针对现有色域边界描述方法对缺失边界点的分区插值影响图像色域边界描述的精度,计算量大的技术问题,本发明提出一种用于分区最大化色域边界描述器的空区插值方法,提高了色域边界描述的准确性。另外,在此色域边界描述器的基础上,设计了HpMinDE色域裁剪算子和CUSP色域压缩算子,并通过色域映射实验,验证了空区插值方法的准确性。
为了达到上述目的,本发明的技术方案是这样实现的:一种用于分区最大化色域边界描述器的空区插值方法,其步骤如下:
步骤一:球坐标系中的色域分区:通过CIELAB颜色空间的直角坐标系求出颜色点的极坐标,根据颜色点的色相角和颜色点在恒定色相角平面内与亮度轴之间的夹角将颜色空间分为若干个分区;
步骤二:选取色域边界采样点:建立设备颜色空间的设备坐标系,将设备坐标系中的一个颜色通道值设置为0或100%,同时对其他两个颜色通道进行均匀采样;
步骤三:构建色域边界描述点矩阵:利用测色仪器对设备采样值进行测量,设备颜色特征化模型将彩色图像的像素值转换为CIELAB色度值,通过颜色点极坐标与CIELAB球体颜色空间直角坐标系的关系计算出球坐标半径;对于没有任何采样点的空缺分区,利用基于相邻分区加权平均的空缺分区插值方法进行插值计算球坐标半径;找出每个分区内具有最大球坐标半径的采样点,将采样点的色度值和球坐标值存储作为该分区的色域边界描述点,所有分区的色域边界描述点组成一个GBD矩阵;
步骤四:线色域边界的计算:由映射颜色的色相角得映射颜色所在的等色相角平面;判断等色相角平面在水平方向上每一行的左右相邻的GBD点,并在每一行上依次连接左右相邻两个GBD点,求取连线与等色相角平面的交点得到线色域边界节点,将线色域边界节点连接起来形成了线色域边界;
步骤五:根据计算得到的线色域边界,设计色域裁剪算子和色域压缩算子进行色域映射
所述步骤一和步骤三中颜色点的极坐标与CIELAB球体颜色空间的直角坐标系的关系为:
r=[(L*-LE*)2+(a*-aE*)2+(b*-bE*)2]1/2 (1)
α=tan-1((b*-bE*)/(a*-aE*)) (2)
θ=tan-1[(L*-LE*)/((b*-bE*)2+(a*-aE*)2)1/2] (3)
其中,L*、LE*、a*、aE*、b*、bE*分别表示颜色点和色域中心点E的CIELAB坐标值,r是颜色点距离色域中心点E的距离,α为颜色点的色相角,其取值范围是[0,360],θ为颜色点在恒定色相角α平面内与亮度轴之间的夹角,其取值范围为[0,180]。
需要描述的色域范围的色域中心点E的具体位置的确定方法为:①通过对所有色域边界采样点的亮度轴坐标值取平均值来获取色域中心点E的亮度轴坐标;②使用CIELAB坐标值为[50,0,0]的亮度轴中心点作为整个色域的中心点;所述颜色空间分为n×n个分区,分区数量n的值为8、12或16。
根据权利要求1所述的用于分区最大化色域边界描述器的空区插值方法,其特征在于,所述基于相邻分区加权平均的空缺分区插值方法为:空缺分区边界点的位置选择其中心点位置,从中心点位置分别向上、向下、向顺时针和向逆时针方向的搜索路径查找相邻分区的边界点,对各方向的邻域由近及远逐一搜索,若当前分区为空,则按箭头所指路径搜索下一分区,得到的插值临域为该方向距离中心分区最近的非空分区,相邻分区边界点对该分区边界点进行邻域加权平均法的插值计算;搜索完成后,将各邻域分区对应的球坐标半径值进行加权平均,各相邻分区所对应的权重值与该分区与中心空区的距离成反比;由插值点的球坐标半径值计算出插值点的亮度值,并判断该亮度值是否超出亮度轴的范围[0,100],若超出范围,则将其亮度值简单地剪切到[0,100]的范围内。
所述步骤四中待映射颜色的线色域边界的计算方法为:由映射颜色的色相角得映射颜色所在的等色相角平面;然后判断等色相角平面在水平方向上每一行的左右相邻的GBD点,并在每一行上依次连接左右相邻两个GBD点,这些连线与等色相角平面Φ的交点就是线色域边界节点,将这些线色域边界节点连接起来形成该等色相角平面内的线色域边界。
求解线色域边界节点就是求解左右两相邻GBD点的连线方程与等色相角平面方程所构成的线性方程组:
假定等色相角平面在某行左右两个相邻分区的边界点为J(j1,j2,j3)和K(k1,k2,k3),那么连接两点直线的方程可表示为:
p1=j1+t*u1;
p2=j2+t*u2;
p3=j3+t*u3;
其中,点P(p1,p2,p3)为直线上任意一点,矢量u(u1=k1-j1,u2=k2-j2,u3=k3-j3)固定不变,t为可变参数;
由于色相角已知,假设该等色相角平面过亮度轴上已知两点M(m1,m2,m3)、N(n1,n2,n3)和ab平面内已知一点L(l1,l2,l3),那么该等色相角平面方程表示为:
q1=l1+g*v1+s*w1;
q2=l2+g*v2+s*w2;
q3=l3+g*v3+s*w3;
其中,点Q(q1,q2,q3)为等色相角平面上任意一点,矢量v(m1-l1,m2-l2,m3-l3)和w(n1-l1,n2-l2,n3-l3)固定不变,g和s为可变参数;
将直线的方程和等色相角平面方程构成线性非齐次方程组为:
g*v1+s*w1-t*u1=j1-l1;
g*v2+s*w2-t*u2=j2-l2;
g*v3+s*w3-t*u3=j3-l3;
当该线性非齐次方程组的系数矩阵与增广矩阵的秩相等,且都为3时,该方程组有唯一解;当系数矩阵与增广矩阵的秩相等,但小于3时,该方程组有无穷解,此时说明该直线可能位于等色相面内,令可变参数t=0,则p1=j1,p2=j2,p3=j3,将交点设定为其中一个分区的色域边界点。
某颜色点与映射中心的连接线得到的映射线与线色域边界的每条边界线都相交,但只有边界线段的内部交点对映射计算有意义;判定映射线与线色域边界交点位置的方法为通过判断映射线与线色域边界节点的角度关系来确定交点位置:映射中心点与线色域边界节点的连线有la条虚线,虚线与亮度轴的夹角分别为0°、θ1、…、θi、…、θla、180°,而映射线与亮度轴的夹角θ满足0<θ<θ1,判定映射线与线色域边界的交点位于线色域边界gl1内部;当夹角θ满足θi<θ<θi+1,i=1,…,la,映射线与线色域边界的交点位于线色域边界gli内部;当夹角θ满足θla<θ<180°,映射线与线色域边界的交点位于线色域边界gla内部;当遇到映射线与线色域边界有多个内部交点时,色域边界最外侧具有最大彩度值的交点距离输入颜色距离最近,该点将取为映射结果点。
在分区最大化色域边界描述器的基础上,设计HpMinDE色域裁剪算子将色域外颜色在该色相角平面内以最近距离映射到目标色域边界;HpMinDE色域裁剪算子的映射原理是:由于计算所得的线色域边界是一组直线段,从这组直线段中寻找出距离待映射颜色最近的一条直线段,并计算其交点;具体步骤为:a)首先将输入颜色点A与亮度轴中心点O相连,与连线OA相交的色域边界线记为GBDLine1;b)由颜色点A向色域边界线GBDLine1作垂线;如果垂线的交点A'位于色域边界线GBDLine1线段内部,那么交点A'即为距离颜色点A最近的色域边界点,此时将交点A'作为映射点;如果交点A'位于色域边界线GBDLine1线段外部的延长线上,那么连接OA'确定与连线相交的色域边界线记为GBDLine2;c)过颜色点A向色域边界线GBDLine2作垂线,如果垂线交点A”位于色域边界线GBDLine2线段的内部,那么交点A”即为最终映射点;否则将交点A'假定为输入颜色点A,返回步骤a),直到找到最终的映射点A”为止。
在分区最大化色域边界描述器的基础上,根据源色域和目标色域的关系,设计CUSP色域压缩算子将色域外颜色朝映射中心的方向等比例映射到目标色域内;映射中心点的选择方式有两种:1)选择目标色域边界在亮度轴两端点的均值点;2)选择亮度值等于CUSP点亮度的CUSP亮度轴点为映射中心;选择CUSP亮度轴点作为映射中心必须满足三个条件:一,与映射中心点等亮度值的目标色域边界点应具有最大彩度值;二,该映射中心点必须包含在目标色域范围内;三,该映射中心点必须包含在图像色域范围内;因此新设计的CUSP色域压缩算子的映射步骤为:对于目标色域外的颜色P来说,①寻找亮度轴上对应最大彩度色域边界点的点O1,如果点O1不在目标色域范围内,沿目标色域边界依次寻找,直到找到满足在目标色域范围内的亮度轴点O2;②如果亮度轴点O2位于图像色域边界I内部但位于图像色域边界II外部,亮度轴点O2不包含在图像色域范围内;③选择目标色域边界在亮度轴两端点的均值点O3作为映射中心;④计算待映射颜色P和映射中心O3的连线与源色域和目标色域边界的交点P1和P2;如果映射线与源色域边界的交点不存在,则将待映射颜色点作为映射线与源色域的交点;⑤对于色域外颜色P来说,根据源色域和目标色域的关系,将其朝映射中心的方向等比例映射到目标色域内。
本发明的有益效果:在深入分析SMGBD方法的基础上,研究分区最大化色域边界描述器的空区插值和线色域边界的计算方法,提出了一种基于相邻分区加权平均的空缺分区插值方法,并在此基础上提出了线色域边界的计算及异常问题的处理方案,解决了相邻分区边界点连线与等色相面的重合而导致的色域边界描述以及快速判断映射线所在分区的问题;本发明又在SMGBD方法的基础上设计了HpMinDE色域裁剪算子和CUSP色域压缩算子。色域边界描述的最终目的是用于色域映射,因此在方法的性能评价方面,色域映射评价实验的结果表明:空区插值后的分区最大化色域边界描述器具有较高的色域映射偏好性和准确性,且具有较高的计算效率;本发明提出的色域裁剪算子具有较高的准确性,色域压缩算子的性能较空区插值改进前有较大地提高,并且强于“ICC 3D”软件的性能,这也验证了色域空区插值方法的有效性。在线色域边界的计算过程中,针对相邻分区颜色点连线与等色相面的重合而导致的色域边界描述问题,本发明提出了相应的解决方案;基于空区插值的色域边界描述器,本发明设计了相应的色域裁剪算子和色域压缩算子。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明CIELAB颜色空间中的分区原理图,其中,(a)为极坐标表示,(b)为基于极坐标(r,α,θ)的球坐标的6×6分区。
图2为RGB颜色空间色立体图。
图3为本发明的GBD点选择及空缺分区,其中,(a)为GBD点的选择示意图,(b)为空缺分区的示意图。
图4为本发明插值算法的搜索路径(从空缺分区向四个方向的相邻分区)示意图图。
图5为本发明线色域边界的计算原理示意图。
图6为本发明的映射线与线色域边界的交点计算方法示意图。
图7为具体实例中色域外颜色点Color1的映射线与线色域边界的交点示意图。
图8为本发明设计的HpMinDE色域裁剪算子对像素点A的映射原理的两种示意图,其中,(a)为映射原理的第一种情况,(b)为映射原理的第二种情况。
图9为本发明设计的HpMinDE算子的算法流程图。
图10为本发明设计的色域压缩算子的映射原理示意图,其中,(a)为不同映射中心对映射结果的影响,(b)为色域压缩算子的映射原理。
图11为本发明所使用的测试图像,其中,(a)为测试色标图像,(b)为12个测试图像的缩略图。
图12为ColorEdge CG241W显示器色域和Epson P408打印机色域范围的比较图,其中,(a)为黄色显示器色域,(b)为白色印刷目标色域,(c)为亮度为20的平面色域比较图,(d)为亮度为40的平面色域比较图,(e)为亮度为60的平面色域比较图,(f)为亮度为80的平面色域比较图。
图13为Samsung C27F591FD显示器色域和HP z3200打印机色域范围的比较图,其中,(a)为白色显示器色域,(b)为黄色印刷目标色域,(c)为亮度为20的平面色域比较图,(d)为亮度为40的平面色域比较图,(e)为亮度为60的平面色域比较图,(f)为亮度为80的平面色域比较图。
图14为本发明6种测试算法的偏好性Z分数和准确性Z分数的线条比较图,其中,(a)为偏好性Z分数,(b)为准确性Z分数。
图15为色域映射测试算法C1对测试图像I19的映射效果图,其中,(a)为方框标注图像,(b)为方框区域放大图像,(c)为像素点Color1的映射原理图,(d)为像素点Color2的映射原理图。
图16为色域映射测试算法C2对测试图像I19的映射效果图,其中,(a)为方框标注图像,(b)为方框区域放大图像,(c)为像素点Color1的映射原理图,(d)为像素点Color2的映射原理图。
图17为色域映射测试算法C2对测试图像I23的映射效果图,其中,(a)为方框标注图像,(b)为方框区域放大图像,(c)为颜色点Color1的映射原理图,(d)为颜色点Color2的映射原理图。
图18为ICC 3D软件中的“SGCK”算法对测试图像产生的映射失真图,其中,(a)为测试图像“I23”的映射失真图,(b)为测试图像“sunsetcolor”的映射失真图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一种用于分区最大化色域边界描述器的空区插值方法,包括以下五个主要步骤:球坐标系中的色域分区、色域边界采样点的设计、构建GBD色域边界描述点矩阵,线色域边界的计算和相应的色域映射方法。
步骤一:球坐标系中的色域分区:通过CIELAB颜色空间的直角坐标系求出颜色点的极坐标,根据颜色点的色相角和夹角(颜色点在恒定色相角平面内与亮度轴之间的夹角),或色域亮度和色相角将颜色空间分为若干个分区。
在SMGBD算法中,一台彩色设备或一幅彩色图像的色域边界可以使用一个矩阵来描述,该矩阵包括了颜色空间中每个分区内具有最大球坐标半径r的颜色坐标值。在CIELAB颜色空间中,色域分区既可以基于亮度L*、彩度C*和色相角α来实现,也可以使用球坐标(极坐标)实现。如图3(a)所示,颜色点的极坐标可以由CIELAB球体颜色空间的直角坐标系推导计算得出:
r=[(L*-LE*)2+(a*-aE*)2+(b*-bE*)2]1/2 (1)
α=tan-1((b*-bE*)/(a*-aE*)) (2)
θ=tan-1[(L*-LE*)/((b*-bE*)2+(a*-aE*)2)1/2] (3)
其中,L*、LE*、a*、aE*、b*、bE*分别表示颜色点和色域中心点E的CIELAB坐标值,r是颜色点距离色域中心点E的距离,α为颜色点的色相角,其取值范围是[0,360],θ为颜色点在恒定色相角α平面内与亮度轴之间的夹角,其取值范围为[0,180]。
假定需要描述的色域范围的色域中心点为E,色域中心点E位于亮度轴L*上,其具体位置的确定有两种方法:①通过对所有色域边界采样点的亮度轴坐标值取平均值来获取;②在大多数情况下,也经常使用CIELAB坐标值为[50,0,0]的亮度轴中心点来作为整个色域的中心点,事实证明这种方法的效果也不错。本发明色域计算是在CIELAB球体颜色空间中进行的,但SMGBD方法是颜色空间无关的,它广泛地适用于其它任何均匀色度颜色空间。
如图3(b)所示,根据颜色点的色相角α和夹角θ将颜色空间分为n×n个分区,分区数量n依据实际所需的色域边界描述精度确定,较大的n值虽然会增加边界计算的精度,但也会带来较大的计算量。在实际应用中,需要在这两者之间进行取舍。一般情况下,经常取n值为8、12或16。设置较大的n值的前提是可以获得足够数量且分布更为均匀和密集的色域边界采样点,如果采样点的数量过少或者分布不均匀,那么即使增大n值也不会提升准确度,反而会造成一些分区内部缺失边界点,即出现空缺分区,从而严重影响色域描述和色域映射的精度。
步骤二:选取色域边界采样点:建立设备颜色空间的设备坐标系,将设备坐标系中的一个颜色通道值设置为0或100%,同时对其他两个颜色通道进行均匀采样。
在计算设备色域边界时,SMGBD方法需要收集设备色域边界附近的颜色样本,并根据样本的测量值来计算并确定各分区的色域边界描述点,也可称为GBD(Gamut BoundaryDescription)点。图像色域描述无需边界采样,可直接根据图像中所有像素的颜色值计算色域边界。
对于彩色复制媒体来说,应该在设备坐标系的色域表面均匀采样,这样才有可能在每个分区内都获得GBD点。将设备坐标系中的一个颜色通道值设置为0或100%,同时对其他两个颜色通道进行均匀采样。例如,对于RGB颜色模式的设备来说,它的设备颜色空间是如图2所示的六面体,如果要计算该设备的色域边界,那么就需要在这个六面体的每个表面进行采样,采样规则如下:对于KGYR面来说,取B通道值为0,G和R通道分别以一定的采样间隔采样;而对于WCBM面来说,取B通道值为100%(即为255),G和R通道分别以一定的采样间隔采样。采样步长既可以等间隔也可在某些范围不等间隔,当采样间隔设置较小时(步长为2%或4%),所得采样点数量较多,色域边界计算精度也会相应提高,但会增加计算量。采样间隔的大小与分区数量要相适应,如果分区数量较少,那么即使采样间隔再小,采样点数量再多,对于进一步提高色域边界描述精度也无济于事。
步骤三:构建色域边界描述点矩阵:利用测色仪器对设备采样值进行测量,设备颜色特征化模型将彩色图像的像素值转换为CIELAB色度值,通过颜色点极坐标与CIELAB球体颜色空间直角坐标系的关系计算出球坐标半径;对于空缺分区,利用基于相邻分区加权平均的空缺分区插值方法进行插值计算球坐标半径;找出每个分区内具有最大球坐标半径的采样点,将采样点的色度值和球坐标值存储作为该分区的色域边界描述点,所有分区的色域边界描述点组成一个GBD矩阵。
采样点设计完成之后,使用测色仪器对设备采样值进行测量,得到CIELAB色度值。对于彩色图像来说,则需要借助设备颜色特征化模型(设备ICC特性文件)将图像像素值转换为CIELAB色度值。然后利用公式(1)-(3)颜色点的极坐标方程计算出球坐标值,并根据分区情况找出每个分区内具有最大球坐标半径r的采样点或像素点,将该点的色度值和球坐标值存储作为该分区的色域边界描述点(GBD点)。
如图3(a)所示,经过计算和判断后,如果在某分区内找到3个采样点,分别是点A、点B和点C,相互比较后如果点A的距离r值最大,那么点A将作为这个分区的GBD点。在这n×n个分区中,针对每个分区都需要存储一个带有最大r值的GBD点。不仅要存储GBD点的r值,其它球坐标值也要存储,最终所有分区的GBD点构成一个n×n元素的GBD矩阵。
如果发现某些分区内没有任何采样点,那么该分区将成为一个空缺分区,如图3(b)所示。空缺分区的出现会严重影响色域边界描述和色域映射效果,需要基于邻近分区的GBD点对其进行插值来计算该空缺分区的GBD点。对于彩色成像设备来说,等间隔地均匀采样使得空缺分区的出现概率情况十分少见,但在计算图像色域时这种情况会经常出现。
图3(b)显示了色域边界描述器对CIELAB球体颜色空间的6×6区域分割情况,图中标识的分区即为一个边界点空缺分区,需要借助上、下、顺时针和逆时针方向的相邻分区边界点对该分区边界点进行邻域加权平均法的插值计算,如图3(b)中箭头所示。其中,空缺分区边界点的位置可选择该分区的中心点位置,其色相角α和夹角θ可以很容易求出。而空区边界点的球坐标半径r则需要利用邻域加权平均法进行插值计算:即以空缺分区为中心,分别沿图4所示向上、下、顺时针和逆时针方向的搜索路径查找相邻分区的边界点。从图4可以明显看出:该插值搜索算法的基本原理是对各方向的邻域由近及远逐一搜索,若当前分区为空,则按箭头所指路径搜索下一分区,这样才能确保最终得到的插值领域为该方向距离中心分区最近的非空分区。搜索完成后,将各领域分区对应的球坐标半径r值进行加权平均,各相邻分区所对应的权重值与该分区与中心空区的距离成反比。插值计算完成后,需要由插值点的球坐标半径值r计算出插值点的亮度值,并判断该亮度值是否超出L亮度轴的范围[0,100],若超出范围,则将其亮度值简单地剪切到[0,100]的范围内。
步骤四:线色域边界的计算:由映射颜色的色相角得映射颜色所在的等色相角平面;判断等色相角平面在水平方向上每一行的左右相邻的GBD点,并在每一行上依次连接左右相邻两个GBD点,求取连线与等色相角平面的交点得到线色域边界节点,将线色域边界节点连接起来形成了线色域边界。
空缺分区插值完成后,还需要计算每个待映射颜色所在等色相面内的线色域边界。SMGBD提供了线色域边界的计算方法,这对色域映射非常有用。图5表示了某个待映射颜色的线色域边界计算原理:由映射颜色的色相角可得映射颜色所在的等色相角平面“Φ”;然后判断等色相角平面“Φ”在水平方向上每一行的左右相邻的GBD点,并在每一行上依次连接左右相邻两个GBD点,这些连线与等色相角平面“Φ”的交点就是线色域边界的节点,可称之为LGB点,将这些LGB点连接起来就形成了线色域边界。求解LGB点的实质就是求解左右两相邻GBD点的连线方程与等色相角平面方程所构成的线性方程组。
假定等色相角平面在某行左右两个相邻分区的边界点为J(j1,j2,j3)和K(k1,k2,k3),那么连接两点的直线方程可表示为式(4),其中,点P(p1,p2,p3)为直线上任意一点,矢量u(u1=k1-j1,u2=k2-j2,u3=k3-j3)固定不变,t为可变参数。由于色相角已知,假定该等色相角平面过亮度轴上已知两点M(m1,m2,m3),N(n1,n2,n3)和ab平面内已知一点L(l1,l2,l3),那么该等色相角平面方程可表示为式(5),其中,点Q(q1,q2,q3)为等色相角平面上任意一点,矢量v(m1-l1,m2-l2,m3-l3)和w(n1-l1,n2-l2,n3-l3)固定不变,g和s为可变参数。
p1=j1+t*u1;
p2=j2+t*u2; (4)
p3=j3+t*u3;
q1=l1+g*v1+s*w1;
q2=l2+g*v2+s*w2; (5)
q3=l3+g*v3+s*w3;
为了求相邻两分区边界点连线与等色相面的交点,可将式(4)和式(5)构成线性非齐次方程组,如式(6)所示,其中,g、s、t为待求解变量。当方程组(6)的系数矩阵与增广矩阵的秩相等,且都为3时,该方程组有唯一解,即为直线与等色相角平面的交点,此为大多数情况;但还需要注意另外两种特殊情况:①当系数矩阵与增广矩阵的秩相等,但小于3时,该方程组有无穷解,此时说明该直线可能位于等色相面内;②当系数矩阵与增广矩阵的秩不相等,该方程组无解,此时说明该直线可能与等色相面平行,因此无交点。注意:在实际应用中,第二种情况是不会发生的。当第一种情况发生时,本发明采用了一种简单而又合理的处理方式:可令变量t=0,由式(4)可知,p1=j1,p2=j2,p3=j3,这意味着将交点设定为其中一个分区的色域边界点,避免了线色域边界计算中的异常问题。
r*v1+s*w1-t*u1=j1-l1;
r*v2+s*w2-t*u2=j2-l2; (6)
r*v3+s*w3-t*u3=j3-l3;
步骤五:根据计算得到的线色域边界,设计色域裁剪算子和色域压缩算子进行色域映射。
(1)映射线与色域边界线的交点计算:本发明的色域空区插值和线色域边界计算的最终目的都是能够准确地实现色域映射。对于某个特定的色域外颜色来说,无论使用何种色域映射算法,都需要计算映射线(颜色点与映射中心的连接线)与线色域边界的交点。映射线与线色域边界的每条边界线都相交,但只有边界线段的内部交点对映射计算有意义。例如,图6所示的线色域边界外有一颜色“Color1”,其映射线“ml1”与色域边界线“gl1”的交点位于色域边界线“gl1”线段的内部,而色域边界线“gl1”与“gl2”的交点则位于其延长线上,因此只有内部交点对于色域映射计算才具有真正意义。在判断映射线与色域边界线的交点位置时,如果依次求解映射线与每条边界线的交点,并判断其所在位置,这个计算量很大,且随着分区数量的增加,所需计算量将会更加显著地增大。本发明设计了一个快速判定映射线交点位置的方法,即通过判断映射线与线色域边界节点的角度关系来确定交点位置。例如,在图6中,虚线为映射中心点与线色域边界节点的连线,这些连线与亮度轴的夹角分别为0°、θ1、θ2、θ3、180°,而映射线“ml1”与亮度轴的夹角“θ”满足0<θ<θ1,因此可快速判定映射线“ml1”与线色域边界的交点位于“gl1”内部,通过类似方法,也可以判定颜色“Color2”的映射线“ml2”与线色域边界的交点位于“gl3”内部。
使用快速判定映射线交点位置方法虽然可以快速确定映射线与线色域边界的交点,但也容易出现问题。在图7所示的线色域边界中,对于色域外颜色“Color1”来说,如果使用“CUSP”色域映射算法对其进行映射,那么映射中心将取为与节点“gp5”(线色域边界上最大彩度点)相同彩度的亮度轴点。此时,映射线与线色域边界会产生三个内部交点“A”、“B”和“C”,彩度值最大的“C”点距离原始颜色点最近。当目标色域的形状不太规则时,这种情况是经常出现的。因此当遇到映射线与线色域边界多个交点的情况时,色域边界最外侧具有最大彩度值的交点往往距离原始颜色距离最近,所以取其作为映射结果点。
(2)HpMinDE色域裁剪算子的设计:在SMGBD色域边界描述的基础上,本发明设计了HpMinDE色域裁剪算子。HpMinDE算子的原理是将色域外颜色在该色相角平面内以最近距离(即最小色差)映射到目标色域边界,因此又称为等色相角最小色差法(Hue PreservedMinimum DeltaE,HpMinDE)。由于计算所得的线色域边界并非曲线而是一组直线段,如图8所示。因此,设计HpMinDE色域裁剪算子需要从这组直线段中寻找出距离待映射颜色最近的一条直线段,并计算其与映射线的交点作为映射结果。
其原理和步骤分别如图8和图9所示,图8显示了该算子对像素点A的映射过程:a)首先将输入颜色点A与亮度轴中心点O相连,与连线OA相交的色域边界线记为GBDLine1;b)由颜色点A向色域边界线GBDLine1作垂线;如果垂线的交点A'位于色域边界线GBDLine1线段内部,那么交点A'即为距离颜色点A最近的色域边界点,此时将交点A'作为映射点。如果交点A'位于色域边界线GBDLine1线段外部的延长线上,那么连接OA',确定与连线相交的色域边界线记为GBDLine2;c)过颜色点A向色域边界线GBDLine2作垂线,如果垂线交点A”位于色域边界线GBDLine2线段的内部,那么交点A”即为最终映射点;否则将交点A'假定为输入颜色点A,返回步骤a),直到找到最终的映射点A”为止。
(3)CUSP色域压缩算子的设计:与色域裁剪算法不同,色域压缩算法的原理是根据源色域和目标色域的关系,将色域外颜色朝映射中心的方向等比例映射到目标色域内。为了更好得保持映射图像的局部颜色关系,色域压缩不仅要映射色域外颜色,部分色域内颜色也需要作相应的映射。色域压缩的关键是选择映射中心点,映射中心的选择直接影响着映射结果。目前,有两种较常用的映射中心选择方式:常规做法是选择目标色域边界在亮度轴两端点的均值点,如图10(a)中的点O2;第二种是选择亮度值等于CUSP点(给定等色相角平面内的最大彩度点)的亮度轴点为映射中心,如图10(a)中的点O1。
选择CUSP亮度轴点作为映射中心必须满足三个条件:一,与映射中心点等亮度值的目标色域边界点应具有最大彩度值;二,该映射中心点必须包含在目标色域范围内;三,该映射中心点也必须包含在图像色域范围内。但在实际应用中,由于源色域和目标色域边界的不规则性,尤其是图像色域边界的不规则性可能更加严重,这些都可能导致映射中心点不在源色域或目标色域范围内。另外,也有可能出现待映射颜色和映射中心点的连线与源色域边界的交点不存在,或待映射颜色不在源色域范围内,这些问题都可能导致色域映射无法进行。针对这些问题,本发明在SMGBD色域边界描述的基础上,设计了一种CUSP色域压缩算子,其原理如图10(b)所示,对于目标色域外的颜色“P”来说,①寻找亮度轴上对应最大彩度色域边界点的点O1,发现该点不在目标色域范围内,因此不能作为映射中心。然后沿目标色域边界依次寻找,直到找到满足条件二的亮度轴点O2;②此时,对于图像色域边界1来说,点O2位于边界内部,可以作为映射中心;但对于图像色域边界2来说,点O2位于边界外部,不满足条件三,仍不能作为映射中心;③这时只能选择目标色域边界在亮度轴两端点的均值点O3作为映射中心;④计算待映射颜色P和映射中心O3的连线(映射线)与源色域和目标色域边界的交点P1和P2;如果映射线与源色域边界的交点不存在,则将待映射颜色点作为映射线与源色域的交点;⑤对于色域外颜色P来说,根据源色域和目标色域的关系,将其朝映射中心的方向等比例映射到目标色域内。例如,在图10(b)图中,映射线上的源色域边界点P1被映射到目标色域边界点P2,待映射颜色P将依照此关系等比例映射为点P3。而对于色域内颜色p'来说,由于其映射线上的线段P1O3长度大于P2O3,因此该点仍然需要映射。同理,在另一条映射线段上,由于Q1O3长度小于Q2O3,因此色域内颜色Q则无需映射。方法性能评价:
准确地描述色域边界,其目的是为了在不同媒体之间准确地进行色域映射。因此,需要借助色域映射实验来评价本发明的色域空区插值和色域边界描述方法的性能。
HpMinDE色域裁剪算子在保证等色相最小色差的前提下,将色域外颜色裁剪到目标色域边界,因此它主要用于实现色彩信息的精确复制,而不关心彩色图像映射后的细节损失问题。鉴于这种特性,利用基于测试色标的色差计算法来评价HpMinDE色域裁剪算子的映射准确度。实验所用的测试色标为RGB颜色模式的TC2.83RGB PM 5.0.5标准色标,该色标共包含294个测试色块,如图11(a)所示。为了更加有效地验证映射算法的性能,实验中使用的源色域和目标色域应该具有一定的差异性。在本发明中,源色域和目标色域分别从ColorEdge CG241W(艺卓)显示器和EPSON P408喷墨打印机的颜色特征文件(ICC Profile)中提取,使用Gretag Macbeth的Profile Editor软件显示的源色域和目标色域如图12所示,可以看出:无论从3维立体还是2维平面角度看,源色域范围都完全包含了目标色域。实验中所有映射算法都采用SMGBD描述色域边界,分区数量分别设置为10。
在色域空区插值改进前和改进后,使用HpMinDE算子对色标图像进行映射,将这两组映射结果与ICC 3D软件的HpMinDE算法进行比较。表1显示了不同算法对色标图像映射前后的色差数据(基于CIE1976LAB色差公式)。从表1中可以看出:①对于本发明设计的HpMinDE算子来说,改进前后的色差值几乎没有变化。这是因为HpMinDE色域裁剪与图像色域描述并无关系,而只与目标设备色域有关系,而设备色域边界较图像色域来说更加规则,且易于计算,因此从色差数据上没有体现出色域空区插值的改进效果;②当SMGBD色域分区数量都设置为10时,本发明HpMinDE算子产生的映射均值色差比ICC 3D软件算法略低0.5个NBS色差单位,在人眼不可察觉的范围内,这说明两者具有相当的映射精度。
表1.几种HpMinDE算子对色标图像映射后的CIELAB色差数据
由于色域压缩算法能够更好地保留颜色之间相对关系,非常适合用于图像映射,因此可以借助基于图像成对比较的心理物理学实验来评价色域压缩算法的性能,实验在观察条件和实验方法等方面遵循了CIE TC 8-03色域映射算法评价指导标准。评价实验包括准确性测试和偏好性测试,前者将每种测试算法得到的图像分别与原始图像两两显示在显示屏上,观察者经过评判从中选出一幅最接近原始图像的图像;而后者分别将每种算法得到的图像两两显示在显示屏上,观察者经过评判从每对图像中选出一幅图像质量(包括颜色保真度、清晰度、彩度、局部细节等)最佳的图像。
评价所用测试图像从标准图像数据库TID2008(TAMPERE Image Database 2008),CSIQ(Categorical Subjective Image Quality Database)和GATF印刷图像质量控制标准中选取,所有12幅测试图像涉及不同的颜色和阶调特征,如图11(b)所示。不同于简单的色域裁剪,色域压缩既要考虑目标色域范围又要考虑源色域,因此为增强评价说服力,实验采用的源色域和目标色域不是完全的包含和被包含关系,而是在不同的区域范围有各自独立的部分,如图13所示。源色域和目标色域分别从Samsung C27F591FD显示器和HP z3200喷墨打印机的ICC特性文件中提取。
本发明选择6种色域映射测试方法进行比较,包括色域空区插值改进前的两种色域压缩方法,第一种以目标色域边界在亮度轴两端点的均值点为映射中心(用“A1”表示),第二种以CUSP亮度轴点为映射中心(用“C1”表示);利用本发明色域描述改进后的这两种算法(分别用“A2”和“C2”表示),利用本发明色域描述改进后的SGCK色域压缩方法(压缩区域比例设置为90%,用“S1”表示);以及“ICC 3D”软件中的“SGCK”算法(压缩区域比例为90%,用“S2”表示)。如图14所示显示的是根据准确性和偏好性评价实验结果计算的偏好Z分数和准确性Z分数,以及使用瑟斯顿配对定律制作的95%置信区间的等距量表。实验观察者由10名图像处理相关专业人员和10名非专业人员组成。从图14中可以看出:偏好性Z分数与准确性Z分数的分布非常相似。其中,利用本发明色域描述改进后的算法“S1”和“A2”在所有测试算法中表现较好,而改进前的算法“A1,C1”和改进后的算法“C2”表现较差。
色域描述改进前的映射算法“C1”对测试图像“I19”的映射效果,如图15所示,可以观察到图像中方框内的区域(“云彩”)映射后出现明显的失真,如图15(a)和15(b)所示。通过分析可以发现:对于方框区域内颜色值非常接近的两点Color1和Color2,其等色相面内的目标色域边界外形相似,且比较规则;但图像色域边界相差很大,且很不规则。根据CUSP色域压缩规则,在图15(c)中,映射线OD方向上线段OD大于OR,因此点Color1不需要映射。而在图15(d)中,线段OD小于OR,虽然点Color2仍在目标色域内,但会按照压缩比例映射到P点,这就造成图像色域内两个颜色接近的点因为色域边界描述误差在映射后变成两个色差较大的像素点,从而造成了图像失真。通过实验发现:本发明改进后的图像色域边界描述更加精确,形状更加规则,类似问题可以得到明显改善。
另外,色域描述改进后的算法“A2”明显强于算法“C2”,这是由于算法“C2”选择目标色域的CUSP亮度轴点为映射中心,这会导致一些问题。仍以测试图像“I19”为例,如图16(a)和16(b)所示,图像中方框内的区域(“房屋外墙”)映射后出现了明显失真。根据图16(c)和16(d)可以分析:利用本发明进行色域描述改进后,两个颜色值接近的像素Color1和Color2在其等色相面内具有非常相似的目标色域边界,但其图像色域边界仍略有差别,这使得像素Color1的映射中心为目标色域边界在亮度轴两端的均值点O1(因为其CUSP亮度轴点位于图像色域外部),而像素Color2的映射中心为其CUSP亮度轴点O2(因为其CUSP亮度轴点位于图像色域内部)。因此,这两个相似的颜色由于其映射方向不同导致映射后出现一定的误差(像素Color1的映射结果为P1,像素Color2的映射结果为P2),从而造成了图像失真。而算法“A2”的映射中心始终选择目标色域边界在亮度轴两端的均值点,因此可以较好地避免这个问题。
通过对图17案例分析也可以发现映射算法“C2”的另一个问题,“鹦鹉黄色羽毛”部位发生了明显的映射失真,如图17(a)和17(b)所示。在图17(c)和17(d)中,颜色点Color1位于目标色域边界外,需要朝着映射中心O1点映射到目标色域内的点P,导致映射后的彩度大幅度降低;颜色点Color2位于目标色域内而不发生映射,彩度保持不变。这就造成了“黄色羽毛”部位映射后出现了两种颜色分界的失真。由于“SGCK”色域映射算法需要先将亮度范围进行非线性压缩,这可以避免上述分析的“CUSP”压缩算法的第一个问题;另外,“SGCK”算法并不对所有色域内颜色进行映射,而是只针对目标色域的固定比例范围(默认比例范围是90%)进行压缩,这不仅可以避免“CUSP”算法的第二个问题,还能有效保持部分图像细节。从图14还可以看出:算法“S1”的性能明显好于算法“S2”(“ICC 3D”软件中的“SGCK”),因为实验中发现“ICC 3D”软件中的算法“SGCK”对某些测试图像会产生一些失真,如图18(a)和18(b)所示,图中的矩形区域即为映射后出现的失真区域。这也在某种程度上验证了本发明空区插值改进的SMGBD色域描述方法的有效性。
本发明空区插值改进前后的SMGBD算法对部分测试图像的色域分区计算时间如表2前两行,可以看出:该方法的计算效率较高(都在1s以内),且改进前后的计算时间基本不变,这说明本发明改进的色域空区插值方法并不影响色域边界的计算效率。为提了高色域映射的计算效率,本发明将具有相同色相角的颜色分别收集在一起进行映射,避免了同色相颜色的线色域边界的重复计算,能够大幅提升计算效率。表2的后三行列出了三种色域映射方法对部分测试图像的映射时间。图像的数据量大小与映射速度直接相关。此外,针对每幅测试图像来说,HPMinDE色域裁剪算法用时最少,算法“CUSP”和算法“SGCK”较为复杂,用时较长。本发明算法效率的测试环境为MATLAB平台(DELL OptiPlex,Inter(R)Core(TM)i7-4770M CPU@3.40GHZ),源色域和目标色域的选择与色域压缩算子相同。
表2不同测试算法对9幅测试图像的映射时间(秒)
本发明提出了一种用于分区最大化色域边界描述器的空区插值方法,以及相应的色域映射算法。其步骤为:球坐标系中的色域分区;设计色域边界采样点;利用基于相邻分区加权平均的空缺分区插值方法对空缺分区进行插值计算球坐标半径,计算所有分区的色域边界描述点;计算线色域边界:计算等色相角平面与水平方向上左右相邻的GBD点连线的交点得到线色域边界节点,将该等色相角平面内的所有线色域边界节点连接起来可以形成线色域边界。在线色域边界的计算过程中,针对相邻分区颜色点连线与等色相面的重合而导致的色域边界描述问题,本发明提出了相应的解决方案;基于空区插值的色域边界描述器,本发明设计了相应的色域裁剪算子和色域压缩算子。色域边界描述的最终目的是用于色域映射,因此在方法的性能评价方面,借助色域映射评价实验验证:空区插值后的分区最大化色域边界描述器具有较高的色域映射偏好性和准确性。本发明还验证了色域描述和色域映射算法的计算效率,结果表明:本文提出的色域插值改进算法并不影响色域边界的计算效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种用于分区最大化色域边界描述器的空区插值方法,其特征在于,其步骤如下:
步骤一:球坐标系中的色域分区:通过CIELAB颜色空间的直角坐标系求出颜色点的极坐标,根据颜色点的色相角和颜色点在恒定色相角平面内与亮度轴之间的夹角将颜色空间分为若干个分区;
步骤二:选取色域边界采样点:建立设备颜色空间的设备坐标系,将设备坐标系中的一个颜色通道值设置为0或100%,同时对其他两个颜色通道进行均匀采样;
步骤三:构建色域边界描述点矩阵:利用测色仪器对设备采样值进行测量,设备颜色特征化模型将彩色图像的像素值转换为CIELAB色度值,通过颜色点极坐标与CIELAB球体颜色空间直角坐标系的关系计算出球坐标半径;对于没有任何采样点的空缺分区,利用基于相邻分区加权平均的空缺分区插值方法进行插值计算球坐标半径;找出每个分区内具有最大球坐标半径的采样点,将采样点的色度值和球坐标值存储作为该分区的色域边界描述点,所有分区的色域边界描述点组成一个GBD矩阵;
步骤四:线色域边界的计算:由映射颜色的色相角得映射颜色所在的等色相角平面;判断等色相角平面在水平方向上每一行的左右相邻的GBD点,并在每一行上依次连接左右相邻两个GBD点,求取连线与等色相角平面的交点得到线色域边界节点,将线色域边界节点连接起来形成了线色域边界;
所述步骤四中待映射颜色的线色域边界的计算方法为:由映射颜色的色相角得映射颜色所在的等色相角平面;然后判断等色相角平面在水平方向上每一行的左右相邻的GBD点,并在每一行上依次连接左右相邻两个GBD点,这些连线与等色相角平面Φ的交点就是线色域边界节点,将这些线色域边界节点连接起来形成该等色相角平面内的线色域边界;
求解线色域边界节点就是求解左右两相邻GBD点的连线方程与等色相角平面方程所构成的线性方程组:
假定等色相角平面在某行左右两个相邻分区的边界点为J(j1,j2,j3)和K(k1,k2,k3),那么连接两点直线的方程可表示为:
p1=j1+t*u1;
p2=j2+t*u2;
p3=j3+t*u3;
其中,点P(p1,p2,p3)为直线上任意一点,矢量u(u1=k1-j1,u2=k2-j2,u3=k3-j3)固定不变,t为可变参数;
由于色相角已知,假设该等色相角平面过亮度轴上已知两点M(m1,m2,m3)、N(n1,n2,n3)和ab平面内已知一点L(l1,l2,l3),那么该等色相角平面方程表示为:
q1=l1+g*v1+s*w1;
q2=l2+g*v2+s*w2;
q3=l3+g*v3+s*w3;
其中,点Q(q1,q2,q3)为等色相角平面上任意一点,矢量v(m1-l1,m2-l2,m3-l3)和w(n1-l1,n2-l2,n3-l3)固定不变,g和s为可变参数;
将直线的方程和等色相角平面方程构成线性非齐次方程组为:
g*v1+s*w1-t*u1=j1-l1;
g*v2+s*w2-t*u2=j2-l2;
g*v3+s*w3-t*u3=j3-l3;
当该线性非齐次方程组的系数矩阵与增广矩阵的秩相等,且都为3时,该方程组有唯一解;当系数矩阵与增广矩阵的秩相等,但小于3时,该方程组有无穷解,此时说明该直线可能位于等色相面内,令可变参数t=0,则p1=j1,p2=j2,p3=j3,将交点设定为其中一个分区的色域边界点;
步骤五:根据计算得到的线色域边界,设计色域裁剪算子或色域压缩算子进行色域映射。
2.根据权利要求1所述的用于分区最大化色域边界描述器的空区插值方法,其特征在于,所述步骤一和步骤三中颜色点的极坐标与CIELAB球体颜色空间的直角坐标系的关系为:
r=[(L*-LE*)2+(a*-aE*)2+(b*-bE*)2]1/2 (1)
α=tan-1((b*-bE*)/(a*-aE*)) (2)
θ=tan-1[(L*-LE*)/((b*-bE*)2+(a*-aE*)2)1/2] (3)
其中,L*、LE*、a*、aE*、b*、bE*分别表示颜色点和色域中心点E的CIELAB坐标值,r是颜色点距离色域中心点E的距离,α为颜色点的色相角,其取值范围是[0,360],θ为颜色点在恒定色相角α平面内与亮度轴之间的夹角,其取值范围为[0,180]。
3.根据权利要求1或2所述的用于分区最大化色域边界描述器的空区插值方法,其特征在于,需要描述的色域范围的色域中心点E的具体位置的确定方法为:①通过对所有色域边界采样点的亮度轴坐标值取平均值来获取色域中心点E的亮度轴坐标;②使用CIELAB坐标值为[50,0,0]的亮度轴中心点作为整个色域的中心点;所述颜色空间分为n×n个分区,分区数量n的值为8、12或16。
4.根据权利要求3所述的用于分区最大化色域边界描述器的空区插值方法,其特征在于,所述基于相邻分区加权平均的空缺分区插值方法为:空缺分区边界点的位置选择其中心点位置,从中心点位置分别向上、向下、向顺时针和向逆时针方向的搜索路径查找相邻分区的边界点,对各方向的邻域由近及远逐一搜索,若当前分区为空,则按箭头所指路径搜索下一分区,得到的插值临域为该方向距离中心分区最近的非空分区,相邻分区边界点对该分区边界点进行邻域加权平均法的插值计算;搜索完成后,将各邻域分区对应的球坐标半径值进行加权平均,各相邻分区所对应的权重值与该分区与中心空区的距离成反比;由插值点的球坐标半径值计算出插值点的亮度值,并判断该亮度值是否超出亮度轴的范围[0,100],若超出范围,则将其亮度值简单地剪切到[0,100]的范围内。
5.根据权利要求1或4所述的用于分区最大化色域边界描述器的空区插值方法,其特征在于,某颜色点与映射中心的连接线得到的映射线与线色域边界的每条边界线都相交,但只有边界线段的内部交点对映射计算有意义;判定映射线与线色域边界交点位置的方法为通过判断映射线与线色域边界节点的角度关系来确定交点位置:映射中心点与线色域边界节点的连线有la条虚线,虚线与亮度轴的夹角分别为0°、θ1、…、θi、…、θla、180°,而映射线与亮度轴的夹角θ满足0<θ<θ1,判定映射线与线色域边界的交点位于线色域边界gl1内部;当夹角θ满足θi<θ<θi+1,i=1,…,la,映射线与线色域边界的交点位于线色域边界gli内部;当夹角θ满足θla<θ<180°,映射线与线色域边界的交点位于线色域边界gla内部;当遇到映射线与线色域边界有多个内部交点时,色域边界最外侧具有最大彩度值的交点距离输入颜色距离最近,该点将取为映射结果点。
6.根据权利要求1所述的用于分区最大化色域边界描述器的空区插值方法,其特征在于,在分区最大化色域边界描述器的基础上,设计HpMinDE色域裁剪算子将色域外颜色在该色相角平面内以最近距离映射到目标色域边界;HpMinDE色域裁剪算子的映射原理是:由于计算所得的线色域边界是一组直线段,从这组直线段中寻找出距离待映射颜色最近的一条直线段,并计算其交点;具体步骤为:a)首先将输入颜色点A与亮度轴中心点O相连,与连线OA相交的色域边界线记为GBDLine1;b)由颜色点A向色域边界线GBDLine1作垂线;如果垂线的交点A'位于色域边界线GBDLine1线段内部,那么交点A'即为距离颜色点A最近的色域边界点,此时将交点A'作为映射点;如果交点A'位于色域边界线GBDLine1线段外部的延长线上,那么连接OA'确定与连线相交的色域边界线记为GBDLine2;c)过颜色点A向色域边界线GBDLine2作垂线,如果垂线交点A”位于色域边界线GBDLine2线段的内部,那么交点A”即为最终映射点;否则将交点A'假定为输入颜色点A,返回步骤a),直到找到最终的映射点A”为止。
7.根据权利要求1所述的用于分区最大化色域边界描述器的空区插值方法,其特征在于,在分区最大化色域边界描述器的基础上,根据源色域和目标色域的关系,设计CUSP色域压缩算子将色域外颜色朝映射中心的方向等比例映射到目标色域内;映射中心点的选择方式有两种:1)选择目标色域边界在亮度轴两端点的均值点;2)选择亮度值等于CUSP点亮度的CUSP亮度轴点为映射中心;选择CUSP亮度轴点作为映射中心必须满足三个条件:一,与映射中心点等亮度值的目标色域边界点应具有最大彩度值;二,该映射中心点必须包含在目标色域范围内;三,该映射中心点必须包含在图像色域范围内;因此新设计的CUSP色域压缩算子的映射步骤为:对于目标色域外的颜色P来说,①寻找亮度轴上对应最大彩度色域边界点的点O1,如果点O1不在目标色域范围内,沿目标色域边界依次寻找,直到找到满足在目标色域范围内的亮度轴点O2;②如果亮度轴点O2位于图像色域边界I内部但位于图像色域边界II外部,亮度轴点O2不包含在图像色域范围内;③选择目标色域边界在亮度轴两端点的均值点O3作为映射中心;④计算待映射颜色P和映射中心O3的连线与源色域和目标色域边界的交点P1和P2;如果映射线与源色域边界的交点不存在,则将待映射颜色点作为映射线与源色域的交点;⑤对于色域外颜色P来说,根据源色域和目标色域的关系,将其朝映射中心的方向等比例映射到目标色域内。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811240471.4A CN109345457B (zh) | 2018-10-24 | 2018-10-24 | 一种用于分区最大化色域边界描述器的空区插值方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811240471.4A CN109345457B (zh) | 2018-10-24 | 2018-10-24 | 一种用于分区最大化色域边界描述器的空区插值方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109345457A CN109345457A (zh) | 2019-02-15 |
CN109345457B true CN109345457B (zh) | 2022-09-27 |
Family
ID=65311680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811240471.4A Active CN109345457B (zh) | 2018-10-24 | 2018-10-24 | 一种用于分区最大化色域边界描述器的空区插值方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109345457B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113096196B (zh) * | 2021-03-18 | 2022-08-30 | 武汉纺织大学 | 一种色织织物色彩体系构建方法 |
CN113256498B (zh) * | 2021-06-24 | 2021-11-02 | 杭州未名信科科技有限公司 | 基于三维色彩空间的插值方法、装置、设备及存储介质 |
CN113558551A (zh) * | 2021-09-26 | 2021-10-29 | 深圳市资福医疗技术有限公司 | 一种图像获取方法及应用其的胶囊内窥镜 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1753452A (zh) * | 2004-09-21 | 2006-03-29 | 三星电子株式会社 | 检测色域边界及使用其来映射色域的设备和方法 |
CN104112081A (zh) * | 2014-07-31 | 2014-10-22 | 上海理工大学 | 色域边界描述方法 |
-
2018
- 2018-10-24 CN CN201811240471.4A patent/CN109345457B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1753452A (zh) * | 2004-09-21 | 2006-03-29 | 三星电子株式会社 | 检测色域边界及使用其来映射色域的设备和方法 |
CN104112081A (zh) * | 2014-07-31 | 2014-10-22 | 上海理工大学 | 色域边界描述方法 |
Non-Patent Citations (2)
Title |
---|
一种Lab空间的色域边界描述算法;汪祖辉等;《包装学报》;20160415(第02期);全文 * |
区域最大分割算法在色域边界描述中的应用;冉紫媛等;《北京印刷学院学报》;20150426(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109345457A (zh) | 2019-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109345457B (zh) | 一种用于分区最大化色域边界描述器的空区插值方法 | |
JPH08237495A (ja) | 選択されたカラーを正確に描写するためのカラープリンタ校正方法 | |
EP3624433A1 (en) | Color gamut mapping based on the mapping of cusp colors defined in a linear device-based color space | |
CN105070270A (zh) | Rgbw面板子像素的补偿方法及装置 | |
KR100629516B1 (ko) | 색역 경계 검출장치 및 이를 이용하는 매핑 장치 그리고그 방법 | |
JP2003008912A (ja) | 色域算出装置および色域算出方法、記憶媒体 | |
CN107371005A (zh) | 关于色域映射的可扩展存储损失优化系统和方法 | |
JP5068281B2 (ja) | 色変換テーブル調整装置及び色変換テーブル調整プログラム | |
CN108876870B (zh) | 一种考虑纹理复杂性的域映射GANs图像着色方法 | |
US10242461B1 (en) | Method to improve overlay mapping of out-of-gamut | |
JP4618683B2 (ja) | 画像処理装置、ガマット補正方法、画像処理方法、プログラム及び記録媒体 | |
KR100280819B1 (ko) | 칼라 디바이스 색 재현 영역 계측기 및 색 재현 한계영역 추출방법 | |
KR20050117862A (ko) | 칼라 디바이스의 색역검출 장치와 방법 및 이를 이용한색공간역변환함수를 구하는 방법 | |
US20210250468A1 (en) | Interpolation and smoothening of the gamut boundary | |
KR101893793B1 (ko) | 컴퓨터 그래픽 영상의 실감도 증강을 위한 장치 및 방법 | |
JP6354706B2 (ja) | 格子点群生成方法、格子点群生成プログラムおよび格子点群生成装置 | |
JP3676664B2 (ja) | 均等色空間構成方法および当該構成のための装置および当該方法を記録した記録媒体 | |
JP2003078773A (ja) | 色調整方法、色調整方法の実行のためのプログラム及びプログラムを格納した媒体 | |
JP6420919B2 (ja) | 色処理装置およびその方法 | |
US20240282007A1 (en) | Method of generating color correction model, method of correcting color, apparatus for generating color correction model, apparatus for correcting color, computer readable medium, and display device | |
JP4492313B2 (ja) | カラー画像処理装置、カラー画像処理方法、プログラム、およびカラー画像評価装置 | |
JP4049763B2 (ja) | 色変換テーブル、色変換装置、色信号生成装置、色変換テーブルの作成方法、色変換方法、及び色域判定方法 | |
Feng et al. | Graph-based color gamut mapping using neighbor metric | |
US9025869B2 (en) | Color translation method and color translation apparatus | |
Zhu et al. | Segment‐interpolation and gamut mapping application of segment maxima gamut boundary descriptors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |