728x90
필요한 패키지 설치
캡처하는데 필요한 pyautogui 를 설치합니다.
pyautogui 는 키보드, 마우스 이벤트 조작등 다양한 기능을 제공합니다.
pip install pyautogui
예제
전체 코드입니다.
import os
import cv2
import numpy as np
import pyautogui
tpl = cv2.imread(os.path.join('img', 'dino.png'), cv2.IMREAD_GRAYSCALE)
th, tw = tpl.shape[:2]
cv2.namedWindow('result');
while True:
screen = pyautogui.screenshot(region=(1800, 50, 500, 500))
src = np.array(screen)
src = cv2.cvtColor(src, cv2.COLOR_RGB2GRAY)
res = cv2.matchTemplate(src, tpl, cv2.TM_CCOEFF_NORMED)
_, _, _, maxloc = cv2.minMaxLoc(res)
dst = cv2.cvtColor(src, cv2.COLOR_GRAY2BGR)
cv2.rectangle(dst, maxloc, (maxloc[0] + tw, maxloc[1] + th), (0, 255, 0), 3)
cv2.imshow('result', dst)
if cv2.waitKey(1) == 27:
break
cv2.destroyAllWindows()
지난 포스팅과 비교하면 반복해서 캡처한다는 차이밖에 없습니다.
pyautogui.screenshot() 의 결과로 나온 이미지를 변환하여 소스 이미지로 사용합니다.
region 은 캡처할 영역 x, y, w, h 입니다.
while True:
screen = pyautogui.screenshot(region=(1800, 50, 500, 500))
src = np.array(screen)
src = cv2.cvtColor(src, cv2.COLOR_RGB2GRAY)
res = cv2.matchTemplate(src, tpl, cv2.TM_CCOEFF_NORMED)
'OpenCV' 카테고리의 다른 글
파이썬 OpenCV 하르 분류기(Haar Cascade Classifier) : 얼굴 검출하기 (0) | 2020.08.06 |
---|---|
파이썬 OpenCV 템플릿 매칭 -3 : 크롬 공룡게임 간단 매크로 구현 (0) | 2020.08.06 |
파이썬 OpenCV 템플릿 매칭 -1 : 크롬 공룡게임 (0) | 2020.08.06 |
파이썬 OpenCV 도형 검출하기 (4) | 2020.08.05 |
파이썬 OpenCV 라벨링(Labeling) (0) | 2020.07.26 |