У меня есть изображение1, которое я нахожу с помощью pyautogui, центрирую и щелкаю. Все хорошо.
Но у меня есть часть этого изображения, чтобы щелкнуть, как только я найду первое, и я не могу получить координаты для щелчка.
Я обнаружил модуль CV2, и мне удалось сопоставить шаблон с изображением, но я не смог получить координаты ШАБЛОНА, как только ПОЛУЧИЛ первое изображение.
так что в основном у меня есть изображение1, которое я нахожу, и есть часть изображения2, называемая шаблоном, которую мне нужно найти.
Мне нужно это сделать, потому что первое изображение может изменить положение на экране. Как мне получить x, y для центрирования изображения шаблона?
pyautogui.position ( x, y , 1 )
это скрипт, который работает с сопоставлением изображения с шаблоном
код
import cv2
import numpy as np
import os
import pyautogui as p
img_rgb = cv2.imread('big.png')
img_gray = cv2.cvtColor(img_rgb, cv2.COLOR_BGR2GRAY)
template = cv2.imread('portion.png',0)
w, h = template.shape[::-1]
##print (w,h)
res = cv2.matchTemplate(img_gray,template,cv2.TM_SQDIFF)
threshold = 0.8
loc = np.where( res >= threshold)
for pt in zip(*loc[::-1]):
cv2.rectangle(img_gray, pt, (pt[0] + w, pt[1] + h), (0,255,255), 2)
##cv2.imshow('Detected',template)
#( of course before this I will center the x and y with locate / center somehow )
p.moveTo (x of portion , y of portion ,1) #( of course before this I will center the x and y with locate / center somehow )