openCV matchTemplate кажется не работает при использовании PIL ImageGrab - PullRequest
0 голосов
/ 05 августа 2020

Получение снимка экрана.

    hwnd = win32gui.FindWindow(None,found)
    win32gui.SetForegroundWindow(hwnd)
    dimensions = win32gui.GetWindowRect(hwnd)
    image = ImageGrab.grab(dimensions)

Преобразование его в массив numpy и в оттенки серого и без знака 8 бит / пиксель:

    image=image.convert('RGB')
    image = numpy.array(image)
    cv_img = image.astype(np.uint8)
    cv_gray = cv2.cvtColor(cv_img, cv2.COLOR_RGB2GRAY)

Однако я продолжаю получать эту ошибку: (-215) (depth == CV_8U || depth == CV_32F) && type == _templ.type () && _img.dims () <= 2 в функции cv :: matchTemplate - когда я передаю его функции matchTemplate: </p>

  result = cv2.matchTemplate(table_img,cv_img, cv2.TM_CCOEFF_NORMED)
...