检查图像是否有 2 种颜色

时间:2021-02-02 10:53:46

标签: python opencv scikit-image

我有可能是单色图标的图像(实际上是双色的:一些彩色背景上的一些彩色图标),我需要检查它们是否真的是。

图像质量通常较低,因此像素值实际上不会分为两个不同的组,即使图像是单色的。例如,假设图像是绿色的红色。我可能希望找到唯一的像素值 (255, 0, 0) 和 (0, 255, 0)。确保任何图像只有两种颜色的通用检查类似于 np.unique,但要确保我们将每个像素向量视为一个实体。所以是这样的:

# some binary valued pixels for demonstration
arr = np.random.randint(0, 2, 60).reshape(20, 3) 
print(f"Number of unique colors: {np.unique(arr, axis=0)}")

但是对于低质量的图像,我会在 (255, 0, 0) 周围涂抹,所以我可能会看到 (254,1,4), (250, 0, 1) 等。然后我上面的方法会成功不能再工作了。我该如何解释?

0 个答案:

没有答案