Visual C++ 2005图像编程之预备知识
2008-08-29 21:34:36 来源:WEB开发网图 1-2 图1-3
(2)、CMY(CMYK)颜色空间
CMY是用RGB的补色来表示色彩的。所谓的补色就是用白色减去RGB后得到的颜色。白色减去绿色是洋红(Magenta),减去红色是青色(Cyan),减去蓝色是黄色(Yellow)。
上面的图1-3演示了CMY是如何相减混合颜色的。
CMYK是CMY的扩展,消除了CMY表示法中存在的理论和实际的差别。因为单独使用CMY无法合成真正的黑色,所以为了避免这个问题,CMYK就直接在CMY的基础添加了黑色的表示部分。
(2)、HSV颜色空间
色彩有三个属性:色相、彩度与明度。
1) 色相(Hue)又称为色调,是指色彩的相貌,或是区别色彩的名称或色彩的种类,
而色相与色彩明暗无关。
2) 彩度(Chroma)指色彩的强弱,也称色彩的饱和度(Saturation),色彩纯与不纯的分别。
3) 明度(Value)是指色彩的明暗程度, 光度的高低, 要看其接近白色或灰色的程度而定,越接近白色明度越高,越接近灰色或黑色,其明度越低。
HSV颜色空间就是用这三个属性描述不同颜色的。当Saturation为0时,Hue不存在。图像为灰度图。明度的Value也可以用亮度表示(Brightness)。Hue为0时颜色是红色。
(4) HLS颜色空间
HLS的基本意义和HSV相同,颜色的范围值一样:Hue(0-360),L(0-1),S(0-1),V(0-1)。
只是在表示相同颜色时值不同了,Hue为0颜色是蓝色。增加L的值相当于向Hue添加白色的比例,减少就是增加黑色的比例。
在现实生活中,还有其他很多的颜色空间如YIQ、YUV、YCrCb。我们这里不全部介绍,有兴趣的朋友可参考相关的书籍。
5.2 不同颜色空间的转换
图像处理中进行图像调整时,采用不同的颜色空间能更好的帮助我们实现对不同的颜色值进行调整。比如调整色调和饱和度时就把图像重RGB转为HSV调整HS的值,然后转回到RGB系统中。具体的转换方法在后续的图像处理库中,我会提供一个完整的类。
- ››Visual Basic 2008 数学函数
- ››Visual Studio2005中Smart Device的问题
- ››Visual Studio 中根据数据库字段动态生成控件
- ››Visual Studio 11全新黑色主题
- ››Visual Studio 2011 Beta新特性(一):安装VS201...
- ››Visual Studio自定义调试窗体两个小技巧
- ››Visual Studio 2005 Team Edition for Database P...
- ››Visual C#两分钟搭建BHO IE钩子
- ››编程实例 一个简单的智能感知效果
- ››Visual C++优化对大型数据集合的并发访问
- ››图像与文字的合成
- ››VISUAL C++中的OCX控件的使用方法
更多精彩
赞助商链接