伽马调光 LUT
// Range = 0-4095, Steps = 32, Gamma = 2.2
const uint16_t GAMMA_LUT[32] = {
0, 2, 10, 24, 45, 74, 110, 155, 208, 270, 340, 419, 508, 605, 712, 829, 956, 1092, 1238, 1395, 1561, 1738, 1926, 2124, 2332, 2551, 2781, 3022, 3273, 3536, 3810, 4095
};
什么是 LED Gamma 校正?
视觉感知均衡
PWM 线性亮度分布
LED Gamma(伽马)校正是 LED 调光中常用的亮度补偿方案,通过平衡人眼对数感知与 PWM 占空比的非线性关系,使 PWM 输出匹配人眼对亮度的感知规律,有效改善低亮度跳阶问题,让 LED 亮度过渡更自然平滑。
查表法与公式法
- 查表法:直接输出目标亮度比例的预设值,受预生成分级数量限制——分级越少,精度越低。
- 公式法:通过 Gamma 校正公式实时计算(PWM 校正值 = PWM 最大值 × 目标亮度比例^ Gamma 值),支持动态调整 Gamma 值,在硬件资源充足时,灵活性与精度更具优势。
Gamma 值设定:
- 默认推荐:2.2-2.4,适配多数通用 LED 照明场景,如室内、商业照明;
- 氛围照明:2.4-2.6,实现更小的亮度步进,降低爬升速度,让光线从暗到亮的过渡更柔和;
- 户外功能性照明: 1.8–2.2,避免低亮档灯光被环境光冲隐,提升低亮档可用性,确保在一定环境光下仍具可识别照明效果;
- Gamma 讲究调试而非计算,结合硬件条件和实际视觉感知调整,才是正确的做法。
LUT 值重复:
- 定时渐变调光:
相邻值相同是正常现象,肉眼不可见,无需处理。 - 定档位调光:
提升 PWM 分辨率或减少调光级数,确保每档亮度差异可见。