首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算色差

计算色差
EN

Stack Overflow用户
提问于 2012-10-05 17:51:29
回答 2查看 2.7K关注 0票数 4

我有下一个问题。

我有一个基本的颜色,有几个不同的颜色。

示例:

  • 基色:#4085c5
  • 阴影:#005cb1

现在,我有一个不同的颜色(比方说#d 60620),但没有它的阴影。从颜色,我想计算阴影,有类似的差异,在第一段中提到的颜色。

首先,我尝试计算RGB元素的差并将它们应用于第二颜色,但结果与我所期望的不一样。

我尝试用将颜色转换为HSV,读取饱和值,并将差异应用于第二颜色,但结果仍然很奇怪。

公式为:(HSV(BaseColor)Shade(Shade)S)+ HSV(SecondColor)H

有人知道如何解决这个问题吗?我知道我做错了什么,但我不知道是什么。:)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-07 03:34:50

有两种方法可以使颜色变暗:

  • 从R,G,B减去等量,这就增加了饱和。显然,您只能减去等于R、G、B值中最小值的挂载。
  • 将R,G,B乘以小于1.0的值。这就或多或少地保持了饱和状态。

同样,有两种方法可以使颜色变浅:

  • 在R,G,B上加一个相等的量,这就降低了饱和。
  • 将R,G,B乘以大于1.0的值。这增加了颜色的生动性,从而增加了明显的饱和度。

你的例子似乎两者兼而有之--从每个值减去0x40,再乘以1.33。

使用你的第二种颜色,我们可以从每种颜色减去06,得到#d0000a,但这还不够黑。乘以0.735,结果是#990013。

票数 4
EN

Stack Overflow用户

发布于 2012-10-05 17:55:42

您的前两种颜色的"H“(色调)值都是209,"S”和"V“的值也不同。

这个共同的色调是什么定义的第二种颜色是一个“阴影”的第一种颜色。

要找到你的第三种颜色的其他颜色,使用RGB到HSV转换找到它的色调,根据需要修改它的S和V值,然后转换回RGB。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12751512

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档