上传者: 42113380
|
上传时间: 2022-03-26 10:08:59
|
文件大小: 5KB
|
文件类型: -
将可见光波长转换为(r,g,b)
日期:
2017-09-17
标签:
python,波长,RGB
作者:
罗兰·史密斯
rgb模块包含一个函数,可将以nm为单位的波长转换为(R,G,B)值的三元组,每个值在0--255范围内。
执照
gentable.py脚本是根据MIT许可获得许可的。 它的输出rgb.py是自动生成的,因此不具有版权。
笔记
该算法基于。 我第一次遇到它是原始Fortran代码的Pascal翻译。
由于该转换在相对较小的值范围内使用固定函数,因此我针对380至780 nm之间波长的每个整数值预先计算了结果,并将其记录在bytes对象中。 对于单个波长,三个字节用于红色,绿色,蓝色的顺序。 使用zlib压缩此bytes对象,然后使用base64对其进行编码。
代码生成如下。
python3 gentable.py > rgb.py
压缩将数据量减少了