我想拍一张照片。
图片中的颜色与我眼睛中看到的颜色不同。
所以为了解决这个问题,我决定放一张红纸(RGB:[255 0 0]
),然后拍一张包括这张纸的照片。
如果我看到纸张的RGB发生了变化(例如[243 15 7]
),我将通过以下方式更改图片中的所有 RGB:
-
R(红色),它将按值
12
相加。 -
G(绿色),它将减去值
15
。 -
B(蓝色),它将减去值
7
。
这样,我的纸张将被更改为正确的RGB [255 0 0]
然后我可以确定其余所有图片的RGB都已更改为其原始颜色。
你怎么看这种方式?
您尝试执行的操作称为颜色管理/颜色校正。
我有几点意见:
- 首先,必须确保显示器已校准。如果没有校准,进行目视检查是没有意义的。如果您有标准的消费类显示器,则可能根本无法对其进行校准。
- 为什么假设论文的RGB是[255,0,0]?它可以稍微绿一点,也可以更蓝一点。您应该使用已知的目标,例如Macbeth ColorChecker
- 如果光量发生变化,您正在使用的偏移变换将不起作用。相反,它应该是乘法才能与照明强度不变。查看颜色校正的标准方法,颜色校正矩阵。
- 您将需要多种已知颜色。三是校准矩阵的绝对最小值。
您可以尝试使用白纸而不是红色。通过这样做,您将获得有关三种颜色的信息,而不仅仅是红色。在理想情况下,白皮书的RGB值将相等,例如,您得到(197,197,197)。但是,如果它们不相等,例如(190、204、203),您可以通过乘以某个数字来更改每个像素的它们:
mean = (190 + 204 + 203) / 3
red_new = red * mean / 190
green_new = green * mean / 204
blue_new = blue * mean / 203
我读到了一个关于颜色校正的迭代过程,也许可以应用于您的情况:
海伦在 7 个简单步骤中使用 Photoshop 进行校正布拉德利
不过,请确认它按预期工作
祝你好运