当前位置: 首页 > news >正文

Ps:通过 RGB 值计算 HSB 值

在 Photoshop 中,HSB(色相、饱和度和明度)仅作为表达颜色的一种方式而存在,并不是一种颜色模式。

色相/饱和度命令就是基于色彩三要素进行调色的常用命令。

还有一个与 HSB 相关的滤镜:HSB/HSL 滤镜,用于实现 RGB、HSB 及 HSL 三种模型的相互转换。

Photoshop 的“拾色器”对话框、“颜色”面板以及“信息”面板上可以基于 HSB 设置或显示颜色值。

下图展示了色相、饱和度和明度在“拾色器”中的表示方式。

057aef134af228d02fdc8160783098f4.png

通过分析 H、S、B 三个值与 R、G、B 三个值的关系可更好地理解这两种颜色表达方式之间的关系。

  ◆  ◆

计算色相 H

通过 R、G、B 值计算色相 H 值的公式:

H = {x|0,120,240} +(median(R,G,B) - min(R,G,B))÷ (max(R,G,B) - min(R,G,B)) × 60

从以上公式可以看出,色相 H 与 R、G、B 三个值都有关系。

公式解释:

1、{x|0,120,240} 

这个集合用于确定基本色相。 

0 对应红色(R),120 对应绿色(G),240 对应蓝色(B)。

比如,RGB 值为 R = 0, G = 255, B = 128,三者中最大值为绿色(G),故此处的值为 120。

2、max(R,G,B)

取 R、G、B 三个值中的最大值。

例如,如果 R = 100, G = 150, B = 200,那么 max(R, G, B) = 200。

3、median(R,G,B)

取 R、G、B 三个值中居中的那个值。

例如,如果 R = 100, G = 150, B = 200,那么 median(R, G, B) = 150。

4、min(R,G,B)

取 R、G、B 三个值中的最小值。

例如,如果 R = 100, G = 150, B = 200,那么 min(R, G, B) = 100。

5、60

将除式的结果乘以 60,可以将结果标准化到色相值的范围内(0 到 360 度)。

示例 1:

假设 RGB 值为 R = 255, G = 0, B = 0(纯红色):

max(R,G,B) = R = 255

min(R,G,B) = G = 0

median(R,G,B) = B = 0

3b17b23089ce4827c0b58a300b9c95f9.png

套用公式:

H = 0 +(0 - 0)÷ (255 - 0) × 60 = 0

示例 2:

假设 RGB 值为 R = 5, G = 255, B = 250:

max(R,G,B) = G = 255

min(R,G,B) = R = 5

median(R,G,B) = B = 250

8056c115f7f3f98543590fc1ec1e00a9.png

套用公式:

H = 120 +(250 - 5)÷ (255 - 5) × 60 ≈ 179

示例 3:

假设 RGB 值为 R = 150, G = 50, B = 250:

max(R,G,B) = B = 250

min(R,G,B) = G = 50

median(R,G,B) = R = 150

2db181c0f5a80be2b8e34fdab55c5439.png

套用公式:

H = 240 +(150 - 50)÷ (250 - 50) × 60 = 270

  ◆  ◆

计算饱和度 S

通过 R、G、B 值计算饱和度 S 值的公式:

S = (max(R,G,B) - min(R,G,B)) ÷ max(R,G,B) × 100%

从以上公式可以看出,饱和度 S 与 R、G、B 值中的最大值和最小值有关。最大值与最小值相差越大,饱和度越高。相差越小,则饱和度越低。

示例 1:

假设 RGB 值为 R = 255, G = 0, B = 0(纯红色):

max(R,G,B) = R = 255

min(R,G,B) = G = 0

套用公式:

S = (255 - 0) ÷ 255 × 100% = 100%

示例 2:

假设 RGB 值为 R = 5, G = 255, B = 250:

max(R,G,B) = G = 255

min(R,G,B) = R = 5

套用公式:

S = (255 - 5) ÷ 255 × 100% = 98%

示例 3:

假设 RGB 值为 R = 250, G = 251, B = 220:

max(R,G,B) = G = 251

min(R,G,B) = B = 220

套用公式:

S = (251 - 220) ÷ 255 × 100% = 12%

  ◆  ◆

计算明度 B

通过 R、G、B 值计算明度 B 值的公式:

B = max(R,G,B) ÷ 255 × 100%

从以上公式可以看出,明度 B 只与 R、G、B 值中最大的值有关。最大值越大,明度越高。

示例 1:

假设 RGB 值为 R = 255, G = 0, B = 0(纯红色):

max(R,G,B) = R = 255

套用公式:

B = 255 ÷ 255 × 100% = 100%

示例 2:

假设 RGB 值为 R = 53, G = 75, B = 26:

max(R,G,B) = G = 75

套用公式:

B = 75 ÷ 255 × 100% = 29%

示例 3:

假设 RGB 值为 R = 250, G = 251, B = 220:

max(R,G,B) = G = 251

套用公式:

B = 251 ÷ 255 × 100% = 98%

6e6e4078f67f863a3bf7547ab389e66d.jpeg

“点赞有美意,赞赏是鼓励”

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Sass/Scss基础
  • Windows安装Swoft框架
  • Linux -- 进度条小程序
  • 3Done学习笔记
  • 全网最适合入门的面向对象编程教程:33 Python 的内置数据类型-对象 Object 和类型 Type 的关系
  • DSP如何进行竞价
  • vue3--实现vue2插件JSONPathPicker的路径获取功能
  • 用koa2 和 html javascript做了一个视频列表功能
  • Java设计模式(适配器模式)
  • WPF学习(7)- Control基类+ContentControl类(内容控件)+ButtonBase基类
  • docker搭建frp内网穿透
  • 微信小程序--详情实现日期选择期(年月日)
  • Go 语言中创建方法
  • 设计模式18-中介者模式
  • 速记Java八股文——Redis 篇
  • “Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!
  • 【知识碎片】第三方登录弹窗效果
  • JAVA之继承和多态
  • pdf文件如何在线转换为jpg图片
  • SpiderData 2019年2月13日 DApp数据排行榜
  • 百度地图API标注+时间轴组件
  • 给第三方使用接口的 URL 签名实现
  • 浅谈Kotlin实战篇之自定义View图片圆角简单应用(一)
  • 什么是Javascript函数节流?
  • 时间复杂度与空间复杂度分析
  • 我的业余项目总结
  • 小而合理的前端理论:rscss和rsjs
  • Android开发者必备:推荐一款助力开发的开源APP
  • gunicorn工作原理
  • ​十个常见的 Python 脚本 (详细介绍 + 代码举例)
  • #NOIP 2014#Day.2 T3 解方程
  • #QT 笔记一
  • #stm32整理(一)flash读写
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • #如何使用 Qt 5.6 在 Android 上启用 NFC
  • (03)光刻——半导体电路的绘制
  • (2024.6.23)最新版MAVEN的安装和配置教程(超详细)
  • (2024最新)CentOS 7上在线安装MySQL 5.7|喂饭级教程
  • (6)【Python/机器学习/深度学习】Machine-Learning模型与算法应用—使用Adaboost建模及工作环境下的数据分析整理
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (Ruby)Ubuntu12.04安装Rails环境
  • (编译到47%失败)to be deleted
  • (万字长文)Spring的核心知识尽揽其中
  • (五)关系数据库标准语言SQL
  • (一)Docker基本介绍
  • ***测试-HTTP方法
  • .NET Framework杂记
  • .NET 表达式计算:Expression Evaluator
  • .NET构架之我见
  • .net连接oracle数据库
  • @LoadBalanced 和 @RefreshScope 同时使用,负载均衡失效分析
  • @zabbix数据库历史与趋势数据占用优化(mysql存储查询)
  • [ C++ ] 类和对象( 下 )
  • [20150707]外部表与rowid.txt
  • [2016.7.test1] T2 偷天换日 [codevs 1163 访问艺术馆(类似)]