在可调RGB LED灯设计中,我们会遇到部分标准色域颜色无法显示的问题。如下图,标准色域sRGB为黑色三角形,红色三角形为我们实际灯珠参数,在图片可以看到右上方、左下方有一部分颜色超过了我们灯实际能调的颜色,这样会导致颜色校准出错,出现负值。
接下来就是两直线方程求解,但结果往往是无穷小数,要知道什么时候需要进位,什么时候舍弃。比如在右上方,算出的数如果是(0.512367,0.423785),我们取四位小数,要保证在红色三角形内,就应该采取舍弃末尾策略,处理后的数据为(0.5123,0.4237)。如在左下方,算出的结果为(0.152342,0.067543),x要采取进位,y要采取舍位,最后处理的数据为(0.1524,0.0675)。
经过测试,发现这个方法非常可靠,颜色显示准确。
我整理了个表格,输入超色域坐标,会计算出对应的映射点,里面提供了两套算法,一套是垂直算法,一套是白点连线交点算法。推荐用白点连线算法。
欢迎大家讨论。
1