更新:
我已将图像分割成不同的区域。对于每个区域,我需要知道它在颜色方面是否更均匀。
这样做的可能策略是什么?
上一个: 我想检查图像的颜色方差(最好是色调方差)以找出由均匀颜色组成的图像(即只有一种或两种颜色的图像)。
我知道一种策略可能是为此创建一个色相直方图,然后我可以找到每种颜色的数量,但我总共有几张图像,我无法为每张图像创建 180 个 bin 的色相直方图,因为那时整个代码的计算成本很高。
是否有任何内置的 openCV 方法或其他更简单的方法来确定图像是仅由均匀颜色组成还是由多种颜色组成?
可以计算色相图像方差的东西也可以。我找不到像 variance(image);
PS:我正在用 C++ 编写代码。
最佳答案
可以在没有直方图的情况下计算方差,因为平均平方值减去平均值的平方。它使用两个累加器对图像进行单次传递。选择不会溢出的数据类型。
关于c++ - 如何找到该图像或多或少是均匀的 w.r.t 颜色(色调)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29768595/