6 彩色图像处理
6.1 彩色模型
6.1.1 RGB模型
RGB(Red,Green,Blue)
RGB的原色位于3个角上;
二次色(靑色、深红色和黄色)位于另外3个角上;
黑色位于原点上;
白色位于离原点最远的角上
图6.8显示的是24比特的RGB图像(每个通道8比特);取值为[0,0,0]~[255,255,255]
6.1.2 CMY和CMYK彩色模型
6.1.2.1. CMY(青色、深红色和黄色)
CMY与RGB的转换(假设所有的彩色值都归一化到了区间[0,1])
[ C M Y ] = [ 1 1 1 ] − [ R G B ] \left[\begin{matrix}C \\\ M \\ Y \end{matrix}\right] = \left[\begin{matrix} 1 \\ 1 \\ 1 \end{matrix}\right] - \left[\begin{matrix} R\\ G\\ B \end{matrix}\right] C MY = 111 − RGB
6.1.2.2. CMYK(青色、深红色、黄色和黑色)
在实际中,C、M和Y油墨通常不是纯色的,组合这些颜色来印刷黑色时,反而会产生模糊的棕色。因此为了产生真正的黑色,通常需要加入第4种颜色———黑色(K)
-
CMY → \rightarrow →CMYK (所有值都假设在区间[0,1])
令 K = m i n ( C , M , Y ) K=min(C,M,Y) K=min(C,M,Y)
若 K = 1 K=1 K=1,则产生无颜色贡献的纯黑色,由此得出 C = M = Y = 0 C=M=Y=0 C=M=Y=0
否则 C = ( C − K ) / ( 1 − K ) M = ( M − K ) / ( 1 − K ) Y = ( Y − K ) / ( 1 − K ) \begin{aligned}C &= (C-K)/(1-K)\\ M &= (M-K)/(1-K)\\ Y &= (Y-K)/(1-K) \end{aligned} CMY=(C−K)/(1−K)=(M−K)/(1−K)=(Y−K)/(1−K) -
CMYK → \rightarrow →CMY
C = C ( 1 − K ) + K M = M ( 1 − K ) + K Y = Y ( 1 − K ) + K \begin{aligned}C &= C(1-K)+K\\ M &= M(1-K)+K\\ Y &= Y(1-K)+K \end{aligned} CMY=C(1−K)+K=M(1−K)+K=Y(1−K)+K
6.1.3 HSI(色调、饱和度、亮度)
- 色调是描述一种纯色(纯黄色、纯橙色或纯红色)的颜色属性
- 饱和度是一种纯色被白光稀释的程度的测度
- 亮度是一个不可测量的主观描述子,体现的是发光强度(或亮度)的消色概念
- RGB对于图像彩色生成而言是理想的,但对于颜色描述而言则存在许多局限性
- HSI模型会分离彩色图像中的亮度成分与携带色彩的信息
\quad
\quad
- RGB
→
\rightarrow
→ HSI
H = { θ i f B ≤ G 360 − θ i f B > G θ = c o s − 1 { 1 2 [ ( R − G ) + ( R − B ) ] [ ( R − G ) 2 + ( R − B ) ( G − B ) ] 1 / 2 } S = 1 − 3 R + G + B [ m i n ( R , G , B ) ] I = 1 3 ( R + G + B ) \begin{aligned} H &= \begin{cases} \theta & if\space B\leq G \\ 360-\theta & if \space B>G \end{cases} \\ \theta &=cos^{-1} \left\{\frac{\frac{1}{2}[(R-G)+(R-B)]}{[(R-G)^2+(R-B)(G-B)]^{1/2}}\right\} \\ S &= 1-\frac{3}{R+G+B}[min(R,G,B)] \\ I &= \frac{1}{3}(R+G+B) \end{aligned} HθSI={θ360−θif B≤Gif B>G=cos−1{[(R−G)2+(R−B)(G−B)]1/221[(R−G)+(R−B)]}=1−R+G+B3[min(R,G,B)]=31(R+G+B)
\quad - HSI
→
\rightarrow
→ RGB
- RG扇区(
0
o
≤
H
<
12
0
o
0^o\leq H<120^o
0o≤H<120o)
B = I ( 1 − S ) R = I [ 1 + S c o s H c o s ( 6 0 o − H ) ] G = 3 I − ( R + B ) \begin{aligned} B &= I(1-S)\\ R &= I\left[1+\frac{ScosH}{cos(60^o-H)}\right] \\ G &=3I-(R+B) \end{aligned} BRG=I(1−S)=I[1+cos(60o−H)ScosH]=3I−(R+B) - GB扇区(
12
0
o
≤
H
<
24
0
o
120^o\leq H<240^o
120o≤H<240o)
H = H − 12 0 o R = I ( 1 − S ) G = I [ 1 + S c o s H c o s ( 6 0 o − H ) ] B = 3 I − ( R + G ) \begin{aligned} H &=H-120^o \\ R &= I(1-S)\\ G &= I\left[1+\frac{ScosH}{cos(60^o-H)}\right] \\ B &=3I-(R+G) \end{aligned} HRGB=H−120o=I(1−S)=I[1+cos(60o−H)ScosH]=3I−(R+G) - BR扇区(
24
0
o
≤
H
≤
36
0
o
240^o\leq H\leq360^o
240o≤H≤360o)
H = H − 24 0 o G = I ( 1 − S ) B = I [ 1 + S c o s H c o s ( 6 0 o − H ) ] R = 3 I − ( G + B ) \begin{aligned} H &=H-240^o \\ G &= I(1-S)\\ B &= I\left[1+\frac{ScosH}{cos(60^o-H)}\right] \\ R &=3I-(G+B) \end{aligned} HGBR=H−240o=I(1−S)=I[1+cos(60o−H)ScosH]=3I−(G+B)
- RG扇区(
0
o
≤
H
<
12
0
o
0^o\leq H<120^o
0o≤H<120o)
6.2 假彩色图像处理
- 伪彩色(也称为假彩色)图像处理包括根据指定的标准将颜色分配给灰度值。
- 伪彩色的主要应用是可视化和解释图像或图像序列中的灰度事件。
- 使用彩色的主要推动因素之一是人类可以分辨几千种色调和亮度,但只能分辨20多种灰度
6.2.1 灰度分层和颜色编码
改变颜色数量和灰度区间的跨度,就可快速了解灰度图像中的灰度变化特性
上图中感兴趣物体有着均匀的纹理,很难按照灰度变化来进行视觉分析
上图还说明了人眼检测不同色差的优越性
6.2.2 灰度到彩色的变换
思想:对输入像素的灰度执行三个独立的变换,然后将三个结果分别送入彩色显示器的红、绿、蓝通道。这种方法生成一幅合成图像,图像的颜色由变换函数的性质调控
右图为多光谱图像的彩色编码,不同的传感器在不同的波段产生多幅灰度级图像,使用多幅灰度级图像进行假彩色编码方法
6.3 全彩色图像处理
6.3.1 补色
彩色环两端对应的颜色是互补的
补色可以用于增强彩色图像各个暗区域中的细节
6.3.2 色调和彩色校正
只有校正了图像的色调范围,才能解决图像中颜色的不规则问题,如过饱和颜色和欠饱和颜色问题
- 色调变换
\quad
- 彩色平衡
彩色轮(环)可用于预测一个彩色分量如何影响其他彩色分量。
根据彩色轮,任何颜色比例都可通过降低图像中的相对颜色(或补色)量来增大
类似地,也可通过增大两种相邻颜色的比例来增大,或通过降低与补色相邻的两种颜色的比例来增大
如:一幅RGB图像有过量的深红色,那么可通过移去红色和蓝色来降低它,或通过增加绿色来降低它