白平衡算法背后的数学原理是什么



我在CIELab色彩空间中有一张图像。我需要对它进行一些处理。所以,有两个问题:

  1. 给定一组实验室值,如何获得以开尔文为单位的整体图像温度?(如在相机设置或 Lightroom 中)

  2. 如果温度值以开尔文为单位,如何调整图像白平衡以匹配该温度?(就像在Lightroom中一样)

我还想知道,如何对色调做同样的事情。

旧(和愚蠢)的方法是检查大多数发光像素的颜色(但没有高光)。这被认为是白色的。幸运的是,经常有白色物体(检查人的眼睛),所以它大部分时间都有效。

只需去除所有像素上的这种色偏,您就会获得白平衡图像。[注意:这应该在线性空间中完成]。

从白色的色度,你可以推导出开尔文:注意:大多数程序允许在两个a-b方向上使用WB(所以2D,你的"色调"额外问题),而不仅仅是一条线(温度)。

现代相机更智能:它们检查没有通道被削波,它们检查色度是否与黑体发射相距不远(因此与"温度"参数相距不远)。大多数现代相机可以区分拍摄对象(例如,与焦距(所以风景)等,以预测更好的白平衡)。

灰卡仍然是更可靠的方式:没有算法可以获得真正的白平衡。

最新更新