目前为止看到的解释Gamma来由说得最清楚的一篇文章:https://www.cambridgeincolour.com/tutorials/gamma-correction.htm
几点总结。
1,什么是Gamma?
Gamma定义为 Vout=Vin^gamma,其中Vin是输入/实际的亮度,Vout是输出亮度。
为什么会出现Gamma这个概念?主要2个原因。
(1)与机械不同,人眼对光强度的感应不是线性的。在黑暗的环境中,人眼对等量的亮度变化更加敏感。
由上图可以,当gamma值大于1时,曲线朝下凸;当gamma值小于1时,曲线朝上凸。因为亮度坐标是归一化的。
上图中人眼的gamma curve为1/2.2。
(2)照相机等电子设备存储图片时,有2中存储方案。
例如用5-bit表示颜色,用linearly encoded的方法时,在灰度之间平均分配比特数;用gamma encoded的方法时,给较小的灰度分配较多的比特。目前在电子设备中存储图像时,大都使用gamma encoded的方法。因为假如使用linearly encoded,图像洗刷出来时,为保证图像边界的平滑和连续,实际上会需要更多比特存储图像,否则会出现image posterization的现象。
刷海报时,海报墨迹未干,墨水会朝着下框汇聚成梳齿状。
据统计,如果使用linearly enocded,8-bit bpc的图像,为了防止posterization,实际上会需要11比特。
2,gamma encoded是一种图像存储方法,不是图像显示方法。
3,gamma correction, gamma encoding和camma compression其实是一回事。
4,viewing gamma/system gamma
5,CRT显示器与LCD显示器的Gamma
(1)非常巧合的是,CRT自身就有一个约2.5的gamma,几乎刚刚好与人眼的gamma成倒数关系。因此对于一个 1/2.2 gamma encoded的图像,其几乎可以直接用于CRT显示。
(2)对于LCD显示器,需要用LUT实现一个2.2的gamma。