欢迎点击「算法与编程之美」↑关注我们!
本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列文章。
欢迎加入团队圈子!与作者面对面!直接点击!
问题描述
1 RGB模型
RGB模型是目前常用的一种彩色信息表达方式,它使用红、绿、蓝三原色的亮度来定量表示颜色。
根据三基色原理,用基色光单位来表示光的量,则在RGB颜色空间,任意色光F都可以用R、G、B三色不同分量的相加混合而成:
F=r[R]+g[G]+b[B]
RGB颜色空间可以用一个三维的立方体来描述:
图1. 1RGB颜色空间
一般的3D编程只需要使用RGB颜色空间就好了,但其实美术人员更多的是使用HSV(HSL),因为可以方便的调整饱和度和亮度。
有时候美术需要程序帮助调整饱和度来达到特定风格的渲染效果,这时候就需要转换颜色空间了。
而HSV模型正是由RGB模型转化而来.
2 HSV模型
HSV(Hue, Saturation, Value)是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间. HSV色系对用户来说是一种直观的颜色模型,对于颜色,人们直观的会问“什么颜色?深浅如何?明暗如何?”,而HSV色系则直观的表示了这些信息。
这个模型中颜色的参数分别是:色调(H),饱和度(S),明度(V)。
色调H
饱和度S
明度V
HSV模型可以看作是以RGB模型白色顶点(1,1,1)向黑色顶点(0,0,0)看过去形成了一个六边形,六边形边界表示H(色彩) ,水平轴表示纯度,明度沿垂直轴测量.
图2. 1HSV颜色空间
解决方案
3 二者相互转换公式
图3. 1RGB到HSV
图3. 2HSV到RGB
结语
在图像处理中,最常用的颜色空间是RGB模型,常用于颜色显示和图像处理,三维坐标的模型形式,非常容易被理解。而HSV模型,是针对用户观感的一种颜色模型,侧重于色彩表示,什么颜色、深浅如何、明暗如何。
END
实习编辑 | 王文星
责 编 | 周茂林
where2go 团队
微信号:算法与编程之美
长按识别二维码关注我们!
温馨提示:点击页面右下角“写留言”发表评论,期待您的参与!期待您的转发!