使用numpy.where获取numpy.array中的所有(R,G,B),其中具有一定的R,G和B值
问题是我不确定我可以使用numpy.where获得我想要的东西:
我尝试了以下代码:
L = numpy.array([[1,2,3],[1,1,1],[1,1,1]])
print(numpy.where(L==(1,1,1)))
(array([0,1,1,1,2,2,2],dtype = int64),array([0,0,1,2,0,1,2],dtype = int64))
我明白它返回我每个元素的坐标== 1但我希望它返回元素L中的索引等于(1,1,1):
阵列([1,2])
您正在寻找numpy.nonzero
和np.all
(以确保每个RGB匹配):
>>> numpy.nonzero(numpy.all(L == (1, 1, 1), axis=1))[0]
array([1, 2])