GDI+中常见的几个问题(8.外传1)2011-04-15 博客园 Hotcan8. 颜色修正我最近一直在颜色空间中纠结,前面讲的透明不透明只是一种特殊的颜色。今天我准备要 讲的是真正的修正颜色。我们使用的数码相机有不同的型号,感光的CCD性能也是不一样的, 再加上天气或者周围光线的原因,我们排出来的照片可能会偏色。此外,为了做一些特殊处 理,可能需要将照片中某一个特殊的区域颜色进行修正。比如脸色可以变得更好一点,或者 头发更黑一点等等。这个Topic很大,我会花好几个星期来讲这些内容,因为涉及到许多图像 处理的基本知识。今天咱们不写code,只讲理论(谁让这个星期美国大选,Heroes第八集居 然没有出,我只好写外传)。外传1. RGB色彩空间在之前的分析中,相信所有的人都知道R,G,B是什么东西了。我们在描述色彩的时候,最 常用的就是用RGB色彩空间。通过描述颜色的三个不同的分量,我们可以记录某个像素的颜色 值。我们在此不涉及设备色彩空间的概念,但是有一点需要大家记住的,(0,0,0)并不代表全 黑,(255,255,255)也并不代表全白,在不同的设备上,显示出的内容是不完全一样的。这个 问题的解决需要依靠我之前讲的ICM(http://www.color.org/)。如果要加上透明,那就是四 维的空间,(A,R,G,B)。各个分量可以被量化为不同的级别,所以才造成了8位色,16位色 等等,这种量化级别可以区分各种不同的颜色,直到人眼无法察觉的程度。所以对一个初学 者来说,不透明的颜色就是个Cube,在一个三维空间中的一个点。如下图

这个图很好看吧,只是很可惜,这只是对颜色描述的一种最简单的方式,它所能描述颜色 内容是极其有限的,也不精确。要彻底理解这个问题,我要帮大家分析什么光的原理,颜色 的波长,材料的对不同波长光的吸收和反射或者漫反射。这里我就不多说了,有兴趣的同学 去找物理系光学专业的老师好好问问,人家一辈子都研究着这个问题。更有兴趣的同学可以 去问问物理系的大教授讨论一下光的波粒二象性,再研究一下人眼对光的感受,再研究不同 材料表面对光的反应,再研究……,打住了~!再研究下去您这辈子就结束了,所以只要简 单地理解颜色就是RGB就好了。IT民工能理解到这个程度已经很不错了。这里再给大家看个有趣的图,表示的是一个色彩空间叫sRGB能描述的颜色,灰色区域是人 眼可以感知的颜色,里面的那个三角就是sRGB色彩空间能描述的颜色。还有一点要注意的是 RGB色彩空间只是描述颜色的一种手段。具体还可以参考 wikipedia:http://en.wikipedia.org/wiki/RGB