zoukankan      html  css  js  c++  java
  • [转贴]HSL与RGB关系及CMYK

    2015-05-04  17:22:20

    电视主板打开展频的原因。首先要了解EMC的原理:

    电磁兼容EMC的测试项目 EMC实验室租场测试 EMC的测试标准
    电磁兼容(EMC)是对电子产品在电磁场方面干扰大小(EMI)和抗干扰能力(EMS)的综合评定,是产品质量最重要的指标之一,电磁兼容的测量由测试场地和测试仪器组成。
    是产品对周围环境的影响测试和周围环境对产品的影响测试。。。

    把展频打开是考虑到最大影响的条件下~!

    2013-08-06   09:25:57

    http://www.doc88.com/p-686406949227.html 常用的颜色色值表

    来源:http://blog.sina.com.cn/s/blog_6c41e2f30100xusj.html

    RGB与HSV(HSB)、HSL和HSI的色彩空间互转(转)

    详细的空间模型原理介绍可以见链接http://www.mathworks.com/matlabcentral/fileexchange/28790-colorspace-transformations/content/colorspace/colorspace.htmlColorspace Transforms)

    HSV 颜色空间是根据色调(hue)、饱和度(saturation)和明度值(value)建立的颜色模型,有时用intensity, brightness, lightness 等代替value,得到HSI, HSB,HSL 等模型。

    RGB<->HSV(HSB):

    rgb2hsv,hsv2rgb

    RGB<->(HSL)
    1.RGB→HSL的算法描述

    步骤1:
    把RGB值转换成[0,1]中数值
    例:R=0.83, G=0.07, B=0.07

    步骤2: 找出R, G和B中的最大值
    本例中,maxcolor = 0.83,
    mincolor=0.07

    步骤3: L = (maxcolor + mincolor)/2
    本例中,L = (0.83+0.07)/2 =0.45

    步骤4:
    如果最大和最小的颜色值相同,即表示灰色,那么S定义为0,而H未定义并在程序中通常写成0。

    步骤5: 否则, 测试L:
    If L < 0.5,  S=(maxcolor-mincolor)/(maxcolor+mincolor)
    If L >=0.5, S=(maxcolor-mincolor)/(2.0-maxcolor-mincolor)
    本例中,L=0.45,因此,S=(0.83-0.07)/(0.83+0.07) = 0.84

    步骤6:

    If R=maxcolor, H = (G-B)/(maxcolor-mincolor)
    If G=maxcolor, H = 2.0 + (B-R)/(maxcolor-mincolor)
    If B=maxcolor, H = 4.0 + (R-G)/(maxcolor-mincolor)

    本例中,R=maxcolor,所以H = (0.07-0.07)/(0.83-0.07) = 0

    步骤7:
    从第6步的计算看,H分成0~6区域。RGB颜色空间是一个立方体,而HSL颜色空间是两个六角形锥体,其中的L是RGB立方体的主对角线。因此,RGB立方体的顶点:红、黄、绿、青、蓝和品红就成为HSL六角形的顶点,而数值0~6就告诉我们H在哪个部分。H用[0o,
    360o]中的数值表示,因此, H = H*60.0.如果H为负值,则加360o。

    (算法引自:http://blas.cis.mcmaster.ca/~monger/hsl-rgb.html)

    2. HSL→RGB的算法描述

    步骤1: If S=0, 表示灰色,定义R, G和B都为L

    步骤2: 否则, 测试L:
    If L < 0.5,  temp2= L*(1.0+S)
    If L >= 0.5,  temp2= L+S - L*S
    转换  例如,如果H=120, S=0.79,
    L=0.52, 则,temp2= (0.52+0.79) - (0.52*0.79) = 0.899

    步骤3:  temp1= 2.0*L -temp2
     在本例中, temp1= 2.0*0.52 - 0.899 = 0.141

    步骤4: 把H转换到0~1
    在本例中,H=120/360 = 0.33

    步骤5: 对于R, G, B, 计算另外的临时值 。方法如下:
    for R  = H+1.0/3.0
    for G  = H
    for B  = H-1.0/3.0
    if temp3 < 0,  temp3= temp3+ 1.0
    if  temp3> 1, temp3 = temp3 - 1.0
    在本例中,R = 0.33+0.33 = 0.66,
    G = 0.33, B= 0.33-0.33=0

    步骤6: 对于R, G, B, 做如下测试:
      If 6.0*  temp3 < 1,  color = temp1 +(  temp2-  temp1)*6.0* temp3 ;
      Else if 2.0*  temp3 < 1,  color = temp2;
      Else if 3.0*  temp3 < 2,  color =  temp1+(  temp2-  temp1)*((2.0/3.0) -  temp3)*6.0
      Else color =  temp1
    在本例中,3.0*   Rtemp3< 2,因此 R=0.141+(0.899-0.141)*((2.0/3.0-0.66)*6.0=0.141
    2.0*   Gtemp3< 1,因此 G=0.899
    6.0*   Btemp3< 1,因此 B=0.141+(0.899-0.141)*6.0*0=0.141 

    (算法引自:http://blas.cis.mcmaster.ca/~monger/hsl-rgb.html)

    转换原理:http://wenku.baidu.com/view/eeab7e44b307e87101f69689.html

    RGB<->(HSI)
    1. RGB→HSI (Gonzalez and Woods)算法描述

    RGB→HSI(Gonzalez and Woods)的算法如下:
    I = 1/3(R+G+B)
    S = 1 - (3/(R+G+B))*a //其中的a=min(R, G, B)
    H = cos^(-1)((0.5*((R-G)+(R-B))) / ((R-G)^2 + (R-B)*(G-B))^(0.5))
    If S = 0, H=0 //表示H无意义
    If (B/I) > (G/I) then
    H = 360–H//H用角度表示,并用H=H/360进行标称化处理


    2. HSI→RGB算法描述

    HSI→RGB(Gonzalez and Woods)的算法如下:

    首先用H=360*H把H换算成用角度表示。

    If  0 < H <= 120 then
    B = 1/3(1-S)
    R = 1/3(1+ ((S cos H) / (cos(60 - H))))
    G = 1 - (B+R)
    If 120 < H <= 240 then
    H = H – 120
    R = 1/3(1-S)
    G = 1/3(1+ ((S cos H) / (cos(60 -H))))
    B = 1 - (R+G)
    If 240 < H <= 360 then
    H = H – 240
    G = 1/3(1-S)
    B = 1/3(1+ ((S cos H) / (cos(60 - H))))
    R = 1 - (G+B)

    2013-04-28    16:55:39

    电视的亮度调整10阶设置如下:


    来源:HSL百科 http://wenku.baidu.com/view/5b6e0f6b25c52cc58bd6be13.html (HSL2RGB, RGB2HSL)

    来源:HSL转RGB http://wenku.baidu.com/view/5b6e0f6b25c52cc58bd6be13.html

    颜色对应的色相是:红0,黄60,绿120,青180,蓝240,紫300。HSL(hue,saturation,lightness)颜色空间

    来源:http://www.cnblogs.com/chuncn/archive/2009/03/31/1425643.html 博客

    CMYK(cyan,magenta,yellow)颜色空间应用于印刷工业,印刷业通过青(C)、品(M)、黄(Y)三原色油墨的不同 网点面积率的叠印来表现丰富多彩的颜色和阶调,这便是三原色的CMY颜色空间。青 (C)、品(M)、黄(Y)、黑(BK)四色印刷

    CMY是一种颜料混合配色体系。RGB是一种光混合配色体系

     

     

    来源:http://dbis.nankai.edu.cn/multimedia/dmtjc5.htm

    http://topic.csdn.net/u/20090116/16/ec6c20db-2273-4b01-8b58-25e78dba4654.html

    alpha通道
    Alpha通道是一个8位的灰度通道,该通道用256级灰度来记录图像中的透明度信息,定义透明、不透明和半透明区域,其中黑表

    示全透明,白表示不透明,灰表示半透明。

    彩色深度标准通常有以下几种:

    8位色,每个像素所能显示的彩色数为2的8次方,即256种颜色。

    16位增强色,16位彩色,每个像素所能显示的彩色数为2的16次方,即65536种颜色。

    24位真彩色,每个像素所能显示的彩色数为24位,即2的24次方,约1680万种颜色。

    32位真彩色,即在24位真彩色图像的基础上再增加一个表示图像透明度信息的Alpha通道。即32位:RGB 24位+8位透明度(alpha通道)  

    如果是数字信号的话,亮度可以由RGB直接算出来,即Y = 0.299R + 0.587G + 0.114B,因此在显存中不会有RGB的同时还有Y的,当然,如果是模拟信号,为了解决传输过程中的失真问题,又是另外的情况。
    alpha通道在3D中表示的是透明程度,3D在显卡中的表现,在本质上是多个2D在技术上的叠加,(具体实现当然还有许多诸如渲染、贴图、光照等细节上的技术),这个alpha就是解决这个问题的,但是,3D显卡解决这个问题后,传输到显示器上的仍然是2D信号,alpha只存在于显卡数据中。(也存在比较特别的显示器可以显示3D图像的,是通过双帧交错配合特制眼镜实现的,这是另外的话题)

    显示器用RGB,印刷界用CMYK.
    在2D年代只有24bit色,32bit是随着3D出现的,实际上就是RGR/A,A就是alpha通道。
    另外强调一点,RGB不是什么颜色!而是光!红光、绿光、蓝光。
    颜色对应的是CYMK(青黄红黑)。RGB混为白光,CYM混为黑色,一个发光,一个吸光,是相反的体系。
  • 相关阅读:
    object对象
    addEventListener 和 attachEvent
    BOM常用对象
    动态原型
    鼠标移动图片放大效果(兼容IE8、多图)
    伪元素:before和:after
    javascript/js 判断是否安装flash player插件,提示安装方法。
    Form表单值转换为[{name:'',value}]键值对
    [转][网站、云服务与虚拟机]弄清负载均衡的机制
    C# Lazy Initialization
  • 原文地址:https://www.cnblogs.com/zlh840/p/2521609.html
Copyright © 2011-2022 走看看