灰度
灰度(Grayscale)是不包含色彩信息,仅用从白到黑的明度浓淡表现图像的格式。8 位灰度可表现 256 级浓淡。将彩色图像转换为灰度时,将 RGB 各通道的值加权平均为一个明度值。
二维码扫描器(解码器)在内部将相机拍摄的彩色图像转换为灰度,再进一步二值化(转换为白或黑的两值)后识别模块。因此,二维码即使用红、蓝、绿等任意颜色印刷也能读取。重要的不是颜色本身,而是转换为灰度时的明暗对比度。
理解这个原理就能知道设计二维码中应避免的颜色组合。红色和绿色在人眼看来容易区分,但转换为灰度时可能变成相近的明度,扫描器无法区分。暗色模块使用明度低的颜色(深蓝、深绿、黑),亮色模块使用明度高的颜色(白、浅黄、浅粉),确保灰度转换后的对比度比是铁则。