определение цвета через opencv python и выполнение условия

Писал бота который должен определять координаты курсора и делать скриншот небольшой области вокруг после этого бот должен определить цвет области скрина и если цвет заскриненной области равен цвету из переменной green или black_green совершить крик при условии если цвет равен yellow или какому-то другому значению то ничего не делать

import pyautogui
import time
import cv2
import mss
import numpy as np


sct = mss.mss()



while True:

    def queryMousePosition():
        pt = pyautogui.position()
        return {"x": pt.x, "y": pt.y}

    cur = queryMousePosition()
    mon = {"top": cur['y'] - 10, "left": cur['x'] - 10, "width": 10, "height": 10}
    img = np.asarray(sct.grab(mon))

    hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

    green = np.array([94, 219, 60])
    black_green = np.array([73, 68, 8])
    yellow = np.array([0, 179, 246])

    mask0 = cv2.inRange(hsv, green, black_green)
    mask1 = cv2.inRange(hsv, yellow, yellow)
    mask = mask0 + mask1
    sm = np.sum(mask)

    if sm > 0:
        pass
    else:

        print(sm)
        pyautogui.click()

Ответы (0 шт):