我的问题很短也很天真,但我在互联网上找到了非常不同的答案。标准化 RGB 图像的最有效(并且在计算机视觉社区中实际使用)的方法是什么。
这个问题来自这样一个事实:PCA 甚至对比度归一化等算法经常在其 2D 版本中描述。
因此,对于白化/全局对比度归一化或任何您喜欢预处理图像以提供给您喜欢的统计方法的方法:您是否单独考虑每个通道,或者您是否将深度 3 的东西重塑为矩形 2D 数组(深度为1)(以及如何在保留结构的同时做到这一点)做你的事情,然后将其拆分回原来的形状?
我认为每种方法都有其优点,考虑到图像作为一个整体似乎更有意义,但单独应用于每个通道更简单。
您的问题没有简单的答案。
对于大多数任务来说,在单独的 RGB 或 HSI 通道上运行就足够了。无论如何,图像处理中的大多数图像都是灰度图像,因此大多数算法都期望灰度输入。 在大多数情况下,预处理的唯一目的是将信息减少到必要的最低限度。因此,不存在具有保留结构的“恢复到原来的形状”的 RGB 输出。至少在我的世界里是这样。 如果您希望从 RGB 输入获得 RGB 输出,您可以实现一个对 RGB 值进行操作的函数。除非您可以将计算减少到灰度并且已经实现了必要的灰度函数。 如何将图像重塑为二维数组?通常图像是二维数组...
我的答案将针对ZCA美白,但我想对其他人来说也是一样的:
由于 PCA 的输入具有 (nsamplesxfeatures) 维度的 2D 矩阵形状。我想到使用 RGB 通道作为 nsamples,并将这些通道中的图像扁平化为特征。
答案似乎是使用 nsamples 作为 nsamples(如果您有多个 RGB 图像,则拥有的图像数量)并使用完全扁平化的 RGB 图像作为特征。
这个答案让我相信,如果你想标准化图像,你应该使用图像的一般平均值和一般标准差,而不是单独考虑每个通道。
如果有人不同意,他可以自由发表评论,我同意我的问题有点太宽泛了。