使用opencv / Numpy使用python在彩色图像中查找白色像素

时间:2014-03-14 05:44:08

标签: python opencv numpy

我有一个使用opencv加载的图像,我想找到白色的像素。

input_img = [[[255,255,255], [0,127,255]],
             [[255,255,255], [255,127,255]]]

应该返回

white = [[1, 0],
         [1, 0]]

有没有办法在没有重塑或没有昂贵的for循环的情况下做到这一点?使用像numpy.where这样的东西?

2 个答案:

答案 0 :(得分:4)

怎么样

(input_img == 255).all(axis=2)

答案 1 :(得分:3)

这应该这样做

input_img = [[[255,255,255], [0,127,255]],
         [[255,255,255], [255,127,255]]]
white = np.array(np.sum(input_img, axis=-1) == 765, dtype=np.int32)