不同颜色空间的转换
颜色空间是用来准确定义和形成不同种类颜色的一种特定空间模型。常用的颜色空间模型有:RGB颜色空间、YIQ颜色空间、CMY颜色空间、HSL颜色空间、XYZ颜色空间、Lab颜色空间以及Luv颜色空间。
YIQ和CMY颜色空间经常用于显示装置的颜色存储空间,与RGB空间,常被用于电视传输、打印机以及复印输出等设备。
HSL是以人的视觉系统出发,分别应用色调、饱和度和亮度颜色的三种要素来表示色彩。机器视觉技术中的大量的灰度处理算法可以在该空间进行。
XYZ颜色空间、Lab颜色空间以及Luv颜色空间,为硬件设备常用的颜色空间,
Lab空间(球):
Lab中的数值描述正常视力的人能够看到的所有颜色,与设备无关的颜色模型。
L---亮度,值域为0至100,L=50时,相当于50%的黑;
a---洋红色至绿色的范围,值域+127至-128,+127为红色,-128为绿色;
b---黄色至蓝色的范围,值域+127至-128,
HSV空间(倒锥模型,又称HSL空间):
又称六角形锥体模型,H表示色调,S为饱和度,V为明度
H---用角度度量,取值范围为0~360度,从红色开始按逆时针计算,红色为0度,绿色为120度,蓝色为240度,黄色为60度,青色为180度,品红为300度
S---表示颜色接近光谱色的程度,取值为0至100%,值越大,颜色越饱和。
V---颜色明亮的程度,取值范围为从0到1.
一.RGB转LAB空间
RGB无法直接转换为LAB空间,需要先转化为XYZ,再转化为LAB
(1)RGB与XYZ空间的关系
因为RGB的取值范围为[0,255],因此为使XYZ与RGB在同等范围内映射,X,Y,Z的值分别除以0.950456,1.0,1.088754
(2)XYZ与Lab的关系
Xn,Yn,Zn一般默认是0.950456,1.0,1.088754
二.LAB空间转RGB空间
先将LAB转化为XYZ,再从XYZ转化为RGB
三.RGB转化为灰度图
彩色图像相当于一个三维矩阵,灰度图相当于三维矩阵映射为二维矩阵
转换公式为:Gray = R*0.299 + G*0.587 + B*0.114
四.RGB与HSV空间转化
五.HSV到RGB的转化
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?