计算机中的颜色——快速计算颜色的色相值
发布日期:2021-07-16 17:36:07 浏览次数:1 分类:技术文章

本文共 809 字,大约阅读时间需要 2 分钟。

在之前的文章中,给定一个颜色,它的色相值计算如下:

由公式可知,计算色相时要分为六种情况,计算略显复杂。有没有简单的计算方法呢?来看看下面这个图

上面这个图,表示纯色的色相分布,把纯色分为六个部分。仔细观察,每个部分的纯色都有统一的特点,例如,右上角的部分,R=255B=0G0变化到255。右边的部分,G=255B=0R255变化到0。每一个部分都是一个分量是255,一个分量是0,一个分量在0255之间变化。

在仔细观察以后,突然发现,任意一种纯色(RGB)和红色之间的夹角可以用下面公式表示:

Θ=|R-255|+|G-0|+|B-0|/255×60

去掉绝对值符号后,简化为

Θ=255-R+G+B/255×60

这时,Θ的取值范围为 [0180]

再次观察上面这个图,发现右边三个阴影部分的纯色都有一个共性,那就是分量G的值大于等于分量B的值,而左边三个空白部分的纯色也都有一个共性,就是分量B的值大于等于分量G的值。

故任意一个纯色的色相值可以用下面公式表示

G≥B时,H=255-R+G+B/255×60

GB时,H=360-255-R+G+B/255×60

 

通过演化推导,任意一种颜色(R’G’B’)的色相计算公式:

Max为三个分量的最大值,Min为三个分量的最小值

Max=Min,表示灰度色,此时,H=0

Max≠Min,分为两种情况:

G≥B时,H=Max-R’+G’-Min+B’-Min/Max-Min×60

GB时,H=360-Max-R’+G’-Min+B’-Min/Max-Min×60

 

注:补充两个公式,在后文中要用到的

纯色(RGB),和红色的夹角

Θ=255-R+G+B/255×60

 

和绿色的夹角

Θ=255+R-G+B/255×60

 

和蓝色的夹角

Θ=255+R+G-B/255×60

转载地址:https://blog.csdn.net/grenet/article/details/4727686 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:计算机中的颜色——从色相值到纯色的快速计算
下一篇:计算机中的颜色——纯色、色相色

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年03月24日 06时14分57秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

秦九韶算法递推公式_算法讲解之复杂度分析 2019-04-21
添加绝对路径_网站中如何添加绝对路径 2019-04-21
python房价数据分析波士顿代码数据_python数据分析-波士顿房价预测-Go语言中文社区... 2019-04-21
redis线程阻塞原因排插_Redis阻塞原因详解 2019-04-21
labview自动保存报表_基于LabVIEW的Excel报表的自动生成功能 2019-04-21
geotool 导出shp_Java 读取shape文件 2019-04-21
mysql 关联更新_MySQL UPDATE多表关联更新 2019-04-21
mysql call_mysql的call用法 call调用函数的例子 2019-04-21
python参数验证_参数验证,Python中的最佳实践 2019-04-21
python画多层网络_在pymn中修改多层网络图 2019-04-21
java net 安卓_android -------- java.net.UnknownServiceException 2019-04-21
java 密钥 aes 解密_Java中AES加密解密以及签名校验 2019-04-21
java树转化成图_Java 转换一组数据为树型数据 2019-04-21
java 底层ppt_Java 如何设置 PPT 中的形状排列方式 具体内容 2019-04-21
mysql更新第5条记录_MYSQL中添加、更新、删除数据 2019-04-21
mysql service5.7_Mysql5.7服务下载安装 2019-04-21
mysql查看线程完整执行命令_MySQL-查看运行的线程-SHOW PROCESSLIST 2019-04-21
mysql 更新数据 字符串_批量替换 MySQL 指定字段中的字符串 2019-04-21
web开发 mysql安装_mysqlinstallerwebcommunity5.7.21.0.msi安装图文教程 2019-04-21
mysql concat 整数型_MySQL 数字类型转换函数(concat/cast) 2019-04-21