OpenCV:按图像颜色过滤

时间:2017-01-07 11:46:23

标签: python opencv filtering

如何在Python中使用OpenCV从RGB图像中仅显示单一颜色? 我们的想法是能够以与RGB光谱中某种颜色的强度相对应的灰度打印图像。

3 个答案:

答案 0 :(得分:2)

您可以使用split

blue, green, red = cv2.split(img)

或者,因为这在时间方面是一项代价高昂的操作,您只需要其中一个通道(例如,红色),您可以直接切割原始图像,如下所示:

red = img[:,:,2]

将返回一个灰度图像,其中较亮的像素是原始图像中具有较高红色值的像素。

希望这有帮助!

答案 1 :(得分:1)

removeHandler()

答案 2 :(得分:0)

img = Image.open(f"./smoke/first/mistake_cat" + ".png")
data = np.array(img)
red, green, blue, alpha = data.T  # Трансформируем матрицу и распаковываем
img_red = Image.fromarray(red)
img_green = Image.fromarray(green)
img_blue = Image.fromarray(blue)
img_alpha = Image.fromarray(alpha)