如何选择多通道图像中每个像素处具有最大值的通道?

时间:2019-05-27 23:03:09

标签: python numpy computer-vision

我想在多通道图像中的每个像素处获取最大值的通道。我想使用numpy而不使用任何循环。是否有获取这些值的捷径?

我可以通过如下遍历每个像素值来做相同的事情:

label_list = []
for i in range(height):
    for j in range(width):
        label = np.where(img[i,j,:] == np.max(img[i,j,:]))
        if label not in label_list:
            label_list.append(label)

我图像中的每个通道对应一个对象。我想知道图像中存在哪些对象。

1 个答案:

答案 0 :(得分:0)

Argmax可以解决目的。返回沿轴的最大值的索引。

np.unique(np.argmax(img,axis = 2))

也许可以帮助其他人。