一种基于RGB色盘取色方法和装置制造方法及图纸

技术编号:14756475 阅读:135 留言:0更新日期:2017-03-02 23:12
本发明专利技术公开了一种基于RGB色盘取色方法和装置,属于颜色处理技术领域,该方法包括:通过颜色点在色盘中的坐标计算出该颜色点的RGB值;将RGB值转化为亮度、色度、饱和度值;将亮度、色度、饱和度值发送给色彩显示设备。本发明专利技术的技术方案,根据RGB色盘中R、G、B三原色按照一定的规律分布的特性,通过RGB色盘中的坐标来获取颜色,能取到RGB色盘上面所有的颜色而没有边缘误差。

【技术实现步骤摘要】

本专利技术涉及颜色处理领域,尤其涉及一种基于RGB色盘取色方法和装置
技术介绍
对于取色,目前大多数方法是通过吸取RGB标准色盘上面的颜色来获取RGB值,进而通过RGB的值转化为亮度、色度、饱和度来控制色彩显示设备的颜色变化。然而,由于UI设计师画RGB色盘的时候,一些特定的颜色比如纯绿、纯红,纯蓝处在色盘的边缘,是无法画出来的。所以取色的时候无法取到这些特定颜色,从而存在边缘误差。因此,需要一种新的技术方案能取到RGB色盘上面所有的颜色而没有边缘误差。
技术实现思路
有鉴于此,本专利技术要解决的技术问题是提供一种基于RGB色盘取色方法和装置,以取到RGB色盘上面所有的颜色而没有边缘误差。本专利技术解决上述技术问题所采用的技术方案如下:根据本专利技术的一个方面,提供的一种基于RGB色盘取色方法包括:通过颜色点在色盘中的坐标计算出该颜色点的RGB值;将RGB值转化为亮度、色度、饱和度值;将亮度、色度、饱和度值发送给色彩显示设备。优选的,通过颜色点在色盘中的坐标计算出该颜色点的RGB值进一步包括:将色盘按R、G、B三原色等分为三个扇形区域,将三个扇形区域再分别等分为两个子区域;根据颜色点所属子区域及其坐标计算该颜色点的RGB值。优选的,根据颜色点所属子区域及其坐标计算该颜色点的RGB值进一步包括按以下公式计算:当A(x,y)在G-B子区域中时,G=255,B=255-C*(255-R),且当A(x,y)在G-R子区域中时,G=255,R=B+C*(255-B),且当A(x,y)在R-G区域时,R=255,G=B+C*(255-B),且当A(x,y)在R-B区域时,R=255,B=G+C*(255-G),且当A(x,y)在B-R子区域时,B=255,R=G+C*(255-G),且当A(x,y)在B-G子区域时,B=255,G=255-C*(255-R),且其中,圆心点的坐标为(0,0),圆半径为r,颜色点A的坐标为A(x,y),x、y为自然数值,且数值范围为(0~r),六个子区域G-B子区域,G-R子区域,R-G子区域,R-B子区域、B-R子区域、B-G子区域分别为原色子区域,C表示系数,R表示红色分量值,G表示绿色分量值,B表示蓝色分量值。优选的,将RGB值转化为亮度、色度、饱和度值进一步包括按以下公式计算:其中,r,g,b均为0到1之间的实数,分别表示一个颜色点的R、G和B值规范化到值域[0,1]之间的实数,R、G、B值的取值范围是[0,255];max表示r,g和b中的最大值,min表示r,g和b中的最小值,h表示色相角,h∈[0,360];s表示饱和度,s∈[0,1],l表示亮度,且l∈[0,1]。优选的,该方法之后还包括:色彩显示设备根据亮度、色度、饱和度值转化为相应的颜色进行显示。根据本专利技术的另一个方面,提供的一种基于RGB色盘取色装置包括:RGB值计算模块,用于通过颜色点在色盘中的坐标计算出该颜色点的RGB值;HSL值计算模块,用于将RGB值转化为亮度、色度、饱和度值;发送模块,用于将亮度、色度、饱和度值发送给色彩显示设备。优选的,RGB值计算模块进一步包括:分区单元,用于将色盘按RGB三原色等分为三个扇形区域,将三个扇形区域再分别等分为两个子区域;计算单元,用于根据颜色点所属子区域及其坐标计算该颜色点的RGB值。优选的,计算单元具体用于按以下方式计算:当A(x,y)在G-B子区域中时,G=255,B=255-C*(255-R),且当A(x,y)在G-R子区域中时,G=255,R=B+C*(255-B),且当A(x,y)在R-G区域时,R=255,G=B+C*(255-B),且当A(x,y)在R-B区域时,R=255,B=G+C*(255-G),且当A(x,y)在B-R子区域时,B=255,R=G+C*(255-G),且当A(x,y)在B-G子区域时,B=255,G=255-C*(255-R),且其中,圆心点的坐标为(0,0),圆半径为r,颜色点A的坐标为A(x,y),x、y为自然数值,数值范围(0~r);G-B子区域,G-R子区域,R-G子区域,R-B子区域、B-R子区域、B-G子区域分别表示原色子区域,C表示系数,R表示红色分量值,G表示绿色分量值,B表示蓝色分量值。优选的,HSL值计算单元具体用于按以下公式计算:其中,r,g,b均为0到1之间的实数,分别表示一个颜色点的R、G和B值规范化到值域[0,1]之间的实数,R、G、B值的取值范围是[0,255];max表示r,g和b中的最大值,min表示r,g和b中的最小值,h表示色相角,h∈[0,360];s表示饱和度,s∈[0,1],l表示亮度,且l∈[0,1]。优选的,该装置还包括色彩显示模块,用于根据亮度、色度、饱和度值转化为相应的颜色进行显示。本专利技术实施例的方法和装置,根据RGB色盘中R、G、B三原色按照一定的规律分布的特性,通过RGB色盘中的坐标来计算RGB颜色,能取到RGB色盘上面所有的颜色而没有边缘误差。附图说明图1为本专利技术实施例一提供的基于RGB色盘取色方法的流程图;图2为本专利技术实施例一提供的RGB色盘划分示意图;图3为本专利技术实施例一提供的RGB色盘中颜色点坐标示意图;图4为本专利技术实施例二提供的基于RGB色盘取色方法的流程图;图5为本专利技术实施例三提供的基于RGB色盘取色装置的模块结构图;图6为本专利技术实施例四提供的基于RGB色盘取色装置的模块结构图。具体实施方式为了使本专利技术所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。实施例一如图1所示,本专利技术提供的一种基于RGB色盘取色方法,包括以下步骤:S102、通过颜色点在色盘中的坐标计算出该颜色点的RGB值。优选的,如图2和图3所示,本步骤S102进一步包括:将色盘按RGB三原色等分为三个扇形区域,将这三个扇形区域再分别等分为两个子区域;根据颜色点所属子区域及其坐标计算该颜色点的RGB值。其中,六个子区域G-B子区域,G-R子区域,R-G子区域,R-B子区域、B-R子区域、B-G子区域分别为原色子区域。即在标准的255色盘中,可以等分为红、绿、蓝三个扇形区域,那么圆盘就可以分为三个120°的区域。在每个区域中,又要分为两个60°,所以将一个圆分为六个区域分别计算。在各个颜色区域中,当前区域的分量值必定等于255。如在红色扇形区域的R-G子区域和R-B子区域的R值为255不变,G-B子区域和G-R子区域的G值为255不变,B-R子区域和B-G子区域的G值为255不变。如图3所示,设圆心点的坐标为(0,0),圆半径为r,颜色点A的坐标为A(x,y),x、y为自然数值,且数值范围均为(0~r),C表示系数,R表示红色分量值,G表示绿色分量值,B表示蓝色分量值,则有:当A(x,y)在G-B子区域中时,G=255,B=255-C*(255-R),且当A(x,y)在G-R子区域中时,G=255,R=B+C*(255-B),且当A(x,y)在R-G区域时,R=255,G=B+C*(255-B),且当A(x,y)在R-B区域时,R=255,B=G+C*(255-G),且当A(x,本文档来自技高网...
一种基于RGB色盘取色方法和装置

【技术保护点】
一种基于RGB色盘取色方法,其特征在于,该方法包括:通过颜色点在色盘中的坐标计算出该颜色点的RGB值;将所述RGB值转化为亮度、色度、饱和度值;将所述亮度、色度、饱和度值发送给色彩显示设备。

【技术特征摘要】
1.一种基于RGB色盘取色方法,其特征在于,该方法包括:通过颜色点在色盘中的坐标计算出该颜色点的RGB值;将所述RGB值转化为亮度、色度、饱和度值;将所述亮度、色度、饱和度值发送给色彩显示设备。2.根据权利要求1所述的基于RGB色盘取色方法,其特征在于,所述通过颜色点在色盘中的坐标计算出该颜色点的RGB值进一步包括:将色盘按R、G、B三原色等分为三个扇形区域,将所述三个扇形区域再分别等分为两个子区域;根据颜色点所属子区域及其坐标计算该颜色点的RGB值。3.根据权利要求2所述的基于RGB色盘取色方法,其特征在于,所述根据颜色点所属子区域及其坐标计算该颜色点的RGB值进一步包括按以下公式计算:当A(x,y)在G-B子区域中时,G=255,B=255-C*(255-R),且C=arctanyx60π180]]>R=(r-x2+y2)*255r]]>当A(x,y)在G-R子区域中时,G=255,R=B+C*(255-B),且C=arctanyx+30π18060π180]]>B=(r-x2+y2)*255r]]>当A(x,y)在R-G区域时,R=255,G=B+C*(255-B),且C=-arctanyx60π180]]>B=(r-x2+y2)*255r]]>当A(x,y)在R-B区域时,R=255,B=G+C*(255-G),且C=arctanyx60π180]]>G=(r-x2+y2)*255r]]>当A(x,y)在B-R子区域时,B=255,R=G+C*(255-G),且C=arctanyx+30π18060π180]]>G=(r-x2+y2)*255r]]>当A(x,y)在B-G子区域时,B=255,G=255-C*(255-R),且C=-arctanyx+30π18060π180]]>R=(r-x2+y2)*255r]]>其中,圆心点的坐标为(0,0),圆半径为r,颜色点A的坐标为A(x,y),x、y为自然数值,且数值范围为(0~r),六个子区域G-B子区域,G-R子区域,R-G子区域,R-B子区域、B-R子区域、B-G子区域分别为原色子区域,C表示系数,R表示红色分量值,G表示绿色分量值,B表示蓝色分量值。4.根据权利要求1所述的基于RGB色盘取色方法,其特征在于,将所述RGB值转化为亮度、色度、饱和度值进一步包括按以下公式计算:l=12(max+min)]]>s=0ifl=0ormax=minmax-minmax+min=max-min2l,if0<l≤12max-min2-(max+min)=max-min2-2l,ifl>12]]>其中,r,g,b均为0到1之间的实数,分别表示一个颜色点的R、G和B值规范化到值域[0,1]之间的实数,R、G、B值的取值范围是[0,255];max表示r,g和b中的最大值,min表示r,g和b中的最小值,h表示色相角,h∈[0,360];s表示饱和度,s∈[0,1],l表示亮度,且l∈[0,1]。5.根据权利要求1-4任意一项权利要求所的基于RGB色盘取色方法,其特征在于,所述方法之后还包括:所述色彩显示设备根据所述亮度、色度、饱和度值转化为相应的...

【专利技术属性】
技术研发人员:赵晓伟肖凯祥何海亮王雄辉
申请(专利权)人:深圳市欧瑞博电子有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1