Python OpenCV не соответствует шаблону с изображением (серый цвет и низкая непрозрачность) - PullRequest
0 голосов
/ 29 сентября 2019

Я пытаюсь сопоставить шаблон, используя мое видео. Я использовал видеопоток в качестве источника и использовал шаблон в качестве небольшого изображения, взятого из видео. И шаблон, и источник имеют одинаковую битовую глубину. Цвет изображения серый с низкой непрозрачностью, поэтому открытое резюме не распознает его правильно.

Для сопоставления изображений я работаю со следующим кодом:

import cv2
import numpy as np
cap = cv2.VideoCapture('dr_ad1.mp4')
template = cv2.imread('tem1.png',cv2.IMREAD_GRAYSCALE)
w,h = template.shape[::-1]
while True:
    _, frame = cap.read()
    gray_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    res = cv2.matchTemplate(gray_frame, template, cv2.TM_CCOEFF_NORMED)
    loc = np.where(res >= 0.8)
    for pt in zip(*loc[::-1]):
        cv2.rectangle(frame, pt, (pt[0] + w, pt[1] + h), (0, 255, 0), 3)
    cv2.imshow("Frame", frame)
    key = cv2.waitKey(1)
    if key == 27:
        break
cap.release()
cv2.destroyAllWindows()

Образцы изображений: https://drive.google.com/file/d/1XStMD03dM0Tu060jHYxuoPlMChexW30Z/view?usp=sharing Видео: https://drive.google.com/file/d/1XDrw4ytHdcQEpqdBJ4F0zSplidJqc7SF/view?usp=sharing

Пожалуйста, помогите мне исправить эту ошибку, спасибо!

...