一、问题的提出:为什么世界看起来是稳定的?

在物理层面上,物体呈现的颜色并不是固定的。

进入人眼的光信号取决于两个因素:I(λ)=E(λ)R(λ)I(\lambda) = E(\lambda) \cdot R(\lambda)I(λ)=E(λ)⋅R(λ)

其中:

  • I(λ)I(\lambda)I(λ):进入视网膜的光谱能量
  • E(λ)E(\lambda)E(λ):光源光谱分布
  • R(λ)R(\lambda)R(λ):物体表面反射率

当光源变化(太阳光、LED灯、阴影环境)时,E(λ)E(\lambda)E(λ) 会明显改变,因此 I(λ)I(\lambda)I(λ) 也会改变。

然而,我们仍然会认为:

  • 苹果是红色
  • 叶子是绿色
  • 纸张是白色

这种能力就是 Color Constancy(颜色恒常性)


二、核心定义

Color Constancy 是指:

在光源变化条件下,人类视觉系统对物体固有颜色的稳定感知能力。

本质上,这是一个从混合信号中分离反射率的过程

但问题在于:

我们只观察到 III,却想求 RRR。

这是一个典型的:

欠定问题(ill-posed problem)

理论上没有唯一解。


三、视觉系统如何实现颜色恒常性?

1️⃣ Retinex 理论

由 Edwin Land 提出。

核心思想:

颜色不是绝对亮度决定,而是通过邻域对比决定。

视觉系统会:

  • 比较同一物体不同区域
  • 比较物体与周围背景
  • 计算整体场景的平均色调

这是一种空间对比机制


2️⃣ 光源假设机制

视觉系统隐含假设:

  • 光源通常接近“白光”
  • 场景中存在接近白色的参考物体

这与相机中的“白平衡”算法类似。


3️⃣ 记忆颜色机制(Memory Color)

我们对某些物体具有颜色先验:

  • 香蕉应为黄色
  • 天空应为蓝色
  • 人脸应为肤色

当视觉输入偏离经验过多,大脑会自动进行补偿。


四、经典视觉现象

1️⃣ Checker Shadow Illusion

由 Edward Adelson 设计。

阴影中的方块与非阴影区域的方块:

  • 实际像素值相同
  • 感知亮度不同

因为大脑自动扣除了“阴影光源”。


2️⃣ “The Dress” 现象

网络广泛传播的裙子图片:

  • 有人看到蓝黑
  • 有人看到白金

原因在于:

不同观察者对光源的假设不同。

这说明:

Color Constancy 并非固定算法,而是依赖推断机制。


五、三通道线性模型

在计算机视觉中常使用简化 RGB 模型:Ic=EcRcI_c = E_c \cdot R_cIc​=Ec​⋅Rc​

其中:

  • c{R,G,B}c \in \{R,G,B\}c∈{R,G,B}
  • IcI_cIc​:观测值
  • EcE_cEc​:光源强度
  • RcR_cRc​:反射率

若估计出光源 Ec^\hat{E_c}Ec​^​,则:Rc^=IcEc^\hat{R_c} = \frac{I_c}{\hat{E_c}}Rc​^​=Ec​^​Ic​​

问题转化为:

如何估计光源向量?


六、常见算法

1️⃣ Gray World 假设

假设:

整个场景的平均颜色应为灰色。

通过计算图像平均 RGB 来估计光源。

优点:简单
缺点:当场景颜色偏向单一色调时失效


2️⃣ White Patch 假设

假设:

场景中存在最亮白色区域。

通过最大像素值估计光源。

对噪声敏感。


3️⃣ Retinex 算法

基于对数域与多尺度空间对比。

更接近人类视觉机制。


4️⃣ 深度学习方法

现代方法:

  • CNN-based illumination estimation
  • Transformer-based color correction

通过大量数据学习光源分布。

优点:精度高
缺点:依赖数据分布


七、颜色恒常性的物理与认知本质

可以从三个层次理解:

① 物理层

光谱分解问题

② 计算层

从观测信号中估计光源

③ 认知层

构建稳定世界模型

视觉系统并不是追求物理精确,而是:

构建一个稳定、可预测的环境表征。


八、应用场景

Color Constancy 影响广泛:

  • 相机自动白平衡
  • 工业视觉检测
  • 医疗影像分析
  • 自动驾驶感知
  • 食品颜色质量检测

如果不做校正:

同一物体在不同光源下会被误判为不同类别。


九、一个更深层理解

视觉系统在解决一个根本问题:如何区分“物体属性”与“环境影响”?\text{如何区分“物体属性”与“环境影响”?}如何区分“物体属性”与“环境影响”?

这不仅是视觉问题,也是认知问题。

我们感知到的“稳定颜色”其实是:

经过推断后的结果,而非直接输入。


十、总结

Color Constancy 是:

  • 一个物理层面的分解问题
  • 一个数学层面的欠定问题
  • 一个认知层面的推断问题
  • 一个工程层面的白平衡问题

它解释了:

为什么世界在变化光源下仍然显得稳定。

Leave a Reply

Your email address will not be published. Required fields are marked *