Untitled
unknown
python
2 years ago
1.4 kB
8
Indexable
import keyboard
from ultralytics import YOLO
import numpy as np
import pyautogui
import cv2
model = YOLO(r"C:\Users\theow\Downloads\best (11).pt")
FovX = 256
FovY = 256
while True:
screenshot = pyautogui.screenshot()
screenshot = cv2.cvtColor(np.array(screenshot), cv2.COLOR_RGB2BGR)
cv2.imshow('screen', np.array(screenshot))
results = model(screenshot)
detected_objects = xyxy_boxes = []
for r in results:
xyxy_boxes.extend(r.boxes.xyxy)
print(detected_objects)
if xyxy_boxes:
if len(xyxy_boxes) > 1:
print("enemy")
enemy_head = xyxy_boxes[1]
center_x = (enemy_head[0] + enemy_head[2]) / 2
center_y = (enemy_head[1] + enemy_head[3]) / 2
print(center_x)
print(center_y)
print("moved to enemy_head: ", enemy_head)
else:
print("enemy_head")
enemy = xyxy_boxes[0]
target_height = 0.8 * (enemy[3] - enemy[1])
center_x = (enemy[0] + enemy[2]) / 2
center_y = ((enemy[1] + enemy[3]) / 2) - (target_height / 2)
print("moved to enemy: ", enemy)
pyautogui.moveTo(center_x, center_y)
print(center_x, center_y)
if keyboard.is_pressed("q"):
break
cv2.waitKey(1)
Editor is loading...
Leave a Comment