http://blog.sina.com.cn/s/blog_4b0617280100tx0w.html

最近通过神经网络搜索电子渠道潜在客户,需要将搜索结构可视化,不同类型客户用不同颜色标识,因此需要随机生成的颜色,要在此颜色上显示文字,希望能通过编程的方法来判断生成的颜色是深还是浅,深就用白色显示文字,浅就用黑色,找了很久,下面的两个方案可选。

经大家讨论第一个方案,是把 RGB 的值求和,然后取一个值,当和大于等于此值就为浅色:

if ($R + $G + $B >= 450) {
    // add shadow
}

这个算法很傻很简单,但效果不理想,特别是在 B 较大的时候,估计是眼睛对 RGB 各种颜色的敏感度都不一样。后经星哥提点,我们通过把 RGB 模式转换成 YUV 模式,而 Y 是明亮度(灰阶),因此只需要获得 Y 的值而判断他是否足够亮就可以了:

$grayLevel = $R * 0.299 + $G * 0.587 + $B * 0.114;
if ($grayLevel >= 192) {
    // add shadow
}

这个效果就是类似去 Photoshop 的去色功能,黑白电视机应该也是用这种算法转换的吧~~ :)。

很简单吧?这样,我们就可以通过RGB值来判断颜色的深浅了!

在此向大家分享。

如何通过RGB值判断颜色深浅(转)相关推荐

  1. 如何通过RGB值判断颜色深浅

    随机生成的背景颜色,要在此颜色上显示文字,希望能通过编程的方法来判断生成的颜色是深还是浅,深就用白色显示文字,浅就用黑色,找了很久,下面的两个方案可选. 把 RGB 的值求和,然后取一个值,当和大于等 ...

  2. 根据RGB​值判断颜色是否深浅色(附深浅色颜色集合)

    做博客云标签时碰到了这个问题,因为自己的背景是白色的,所以标签的背景色要是深色.网上找到了按照灰度值去判断(CSDN论坛),然后又搜了一下已有的文章. g = R0.299 + G0.587 + B* ...

  3. 网上流行护眼色的RGB值和颜色代码

    网上流行护眼色的RGB值和颜色代码 绿豆沙色能有效的减轻长时间用电脑的用眼疲劳! 色调:85,饱和度:123,亮度:205: RGB颜色红:199,绿:237,蓝:204: 十六进制颜色:#C7EDC ...

  4. 使用 RGB 值设置颜色

    使用 RGB 值设置颜色 另一种可以在 CSS 中表示颜色的方法是使用 RGB 值. RGB 即红色.绿色.蓝色(英语:Red, Green, Blue). ● 红色(R)0 到 255 间的整数,代 ...

  5. (转)网上流行护眼色的RGB值和颜色代码

    网上流行护眼色的RGB值和颜色代码 绿豆沙色能有效的减轻长时间用电脑的用眼疲劳! 色调:85,饱和度:123,亮度:205: RGB颜色红:199,绿:237,蓝:204: 十六进制颜色:#C7EDC ...

  6. 使用RGB值显示颜色

    Use RGB values to Color Elements 在 CSS 中表示颜色的另一个方法是使用 rgb 值. 代表黑色的 RGB 值看起来是下面的样子: rgb(0, 0, 0) 代表白色 ...

  7. 常用的RGB值和颜色对照表

    常用颜色的值        Colour      Red      Green      Blue      值        黑色   Black    0   0    0    0       ...

  8. 根据RGB数值判断颜色

    RGB 是光照色bai.分别对应R(Red)红,duG(Green)绿,B(Blue)蓝.每种颜色数据zhi从0到255,都为0的话就是没有光,是黑dao色,数据越大光越强.都为255是白色. 三色的 ...

  9. 护眼色的RGB值 和 颜色代码

    在搜索引擎搜"护眼色",就会搜出一堆关于保护眼睛的屏幕颜色文章,说的统统是一种颜色,有点像绿豆沙的颜色.方法就是在屏幕设置里. 色调:       85; 饱和度:   123; ...

最新文章

  1. 单元格编辑后级联汇总刷新
  2. 这份“插件英雄榜Top20”才是Chrome的正确打开方式!
  3. MySQL中varchar类型在5.0.3后的变化
  4. 巧用windows快捷键
  5. 【leetcode】Combinations (middle)
  6. 视觉SLAM笔记(58) 字典
  7. html轮播图原理,30_用js实现一个轮播图效果,简单说下原理
  8. Hibernate_01
  9. 《关键对话——掌握关键对话》读书笔记(二)
  10. icafe 同步到主干
  11. 共射级放大电路—密勒电容影响下的压摆率
  12. FPGA进阶(2):基于I2C协议的EEPROM驱动控制
  13. Redis缓存接入监控、运维平台CacheCloud
  14. 网络安全评估职业技能师资培训
  15. Java的字符连接符
  16. iOS开发-调试网络限速(真机和模拟器)
  17. 面经汇总——逻辑推理题
  18. 工业自动化源代码防泄密用什么加密软件
  19. 铁皮石斛家庭里养殖方法 在家养殖石斛方法技巧
  20. rdp如何禁止映射本地磁盘_win7远程桌面连接无法显示本地磁盘的解决方法

热门文章

  1. 最新支持android的手机型号,科技知识:哪些手机可以升级安卓11 Android11支持机型大全...
  2. c++rpg黑框游戏_RPG游戏 C++源码 文字RPG游戏
  3. cx_oracle安装教程,Python 安装 cx_Oracle
  4. Charles的功能介绍与使用教程,一学就会,不信就来试试?
  5. 华为快应用_IDE:如何使用真机预览
  6. 用python实现身份证号校验系统
  7. 65 ---- 点到平面、点到直线 及异面直线间的距离
  8. redhat 7 中NFS服务器配置与管理
  9. ec2 linux 图形界面,如何在Amazon EC2 Ubuntu服务器上设置GUI
  10. EasyUI小图标设置