Как убрать цвет с изображения - PullRequest
1 голос
/ 22 сентября 2019

У меня есть изображение с зеленым фоном

Например, это enter image description here

Моя цель - показать все, что не зеленое

Есть код для выделения зеленого цвета

 import cv2
import numpy as np

low_green = np.array([25, 52, 72])
high_green = np.array([102, 255, 255])

while True:
    img = cv2.imread('someimage.jpg')
    img = cv2.resize(img, (900, 650), interpolation=cv2.INTER_CUBIC)

    # convert BGR to HSV
    imgHSV = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
    # create the Mask
    mask = cv2.inRange(imgHSV, low_green, high_green)

    cv2.imshow("mask", mask)
    cv2.imshow("cam", img)
    cv2.waitKey(10)

И маскирующее изображение enter image description here

Как мне показать все, что является черным на изображении маски?Спасибо за помощь.

Ответы [ 2 ]

2 голосов
/ 22 сентября 2019

у вас есть зеленая маска, где белый - это зеленый, а черный - нет ...

Итак, вы берете обратную маску (черный становится белым, а белый черный) и применяете такую ​​маску.на вашем изображении.

Если вам нужен конкретный код, мне нужно провести небольшое исследование.

1 голос
/ 22 сентября 2019
import cv2
import numpy as np

low_green = np.array([25, 52, 72])
high_green = np.array([102, 255, 255])

while True:
    img = cv2.imread('someimage.JPG')
    img = cv2.resize(img, (900, 650), interpolation=cv2.INTER_CUBIC)

    # convert BGR to HSV
    imgHSV = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
    # create the Mask
    mask = cv2.inRange(imgHSV, low_green, high_green)
    # inverse mask
    mask = 255-mask
    res = cv2.bitwise_and(img, img, mask=mask)

    cv2.imshow("mask", mask)
    cv2.imshow("cam", img)
    cv2.imshow('res', res)
    cv2.waitKey(10)
1001 * код там `, если вам нужно 1003 * и результат enter image description here
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...