如何使用python获取某种颜色RGB的像素坐标[x,y]列表?

问题描述

我正在尝试进行室内导航,并且需要机器人可以自动导航的室内地图。 我正在考虑使用每个位置(某些部分)具有不同颜色的图像,并且我想知道获取某些颜色的坐标的方法。这样我就可以使用该坐标将位置指定到某些颜色区域。如何使用python获取具有特定颜色的图像的像素坐标列表?在这种情况下,我知道颜色的RGB代码!我目前正在使用pycharm

解决方法

假设您的图片具有形状(Y,X,3)。 Y是图像的高度,X是图像的高度。最后一个尺寸用于3个RGB颜色通道。

您可以在图像上使用此代码来获取具有特定RGB集的像素坐标列表:

def pixels(image,rgb_set):
  set = list()

  for j in range(0,image.shape[0]):
    for i in range(0,image.shape[1]):
      if image[j][i] == rgb_set:
        set.append([j,i])

  return set