1、计算公式如下:
Output_Y = (Input_Y / 255) ^ (1/2.2) * 255
2、2.2和255是怎么来的?
2.2是gama的校正值。这是早期科研人员实验得出的结果。有兴趣可以自己搜。
255是将物理亮度量化到0~255的区间,方便计算。
ex:input y为50,那么output y = (50/255) ^ (1/2.2) * 255 ≈ 121
3、做gamma校正的原因:
人眼的感知亮度与实际世界的物理亮度是存在差异的。
物理亮度我们可以量化出来,它在物理空间中是线性的;
感知亮度是人眼感觉到光的亮度。
4、那么如何转换这两种亮度?研究人员给我们提供了一组公式:
Vperceptual = (Vphysical)^ (1/gamma) (公式1)
Vperceptual 为感知亮度,Vphysical为物理亮度。
将这组公式左右同时乘以gamma,则得到:
Vphysically = (Vperceptual)^ gamma (公式2)
这个gamma就是我们上面提到的gamma校正值,一般是2.2,也有的手机是1.8。
有兴趣可以再看看这篇文章:详解 gamma 校正 - 知乎 (zhihu.com)