def find_fairy_ring(self):
run = 1
while run:
play_screen = Screenshot.shoot(6,59,510,355,'hsv')
# finding white on fairy ring inner circle
low = np.array([107,92,93])
high = np.array([113,255,129])
mask = cv2.inRange(play_screen, low, high)
kernel = np.ones((10,10), np.uint8)
dilation = cv2.dilate(mask, kernel, iterations = 1)
#closing = cv2.morphologyEx(mask, cv2.MORPH_CLOSE, kernel)
#_,contours,_ = cv2,findContours(closing.copy(), cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
_,contours,_ = cv2.findContours(dilation, cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE)
for con in contours:
print("Area: {}".format(cv2.contourArea(con)))
if cv2.contourArea(con) > 1.0:
(x, y, w, h) = cv2.boundingRect(con)
x += self.rs_x
y += self.rs_y
x1 = x
y1 = y
x2 = x + w
y2 = y + h
print("x1:{} y1:{} x2:{} y2:{}".format(x1,y1,x2,y2))
#print(cv2.contourArea(con))
#M = cv2.moments(con)
# finds centroid
#x,y = (int(M["m10"] / M["m00"]), int(M["m01"] / M["m00"]))
Mouse.randMove(x1,y1,x2,y2,3)
time.sleep(5)
if RS.findOptionClick(x1,y1,'cis'):
run = 0
time.sleep(2)
break
#cv2.imshow('img', mask)
#cv2.waitKey(000)
评论列表
文章目录