Advertisement
Guest User

Untitled

a guest
Mar 21st, 2019
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.49 KB | None | 0 0
  1. def ingamesearch(screenshot, image, percision, rbgvalue, offsetx, offsety, label, labeloffsetx, labeloffsety, highlightx, highlighty, plusorminus, enemy, enemyColor, enemyLabel):
  2. resultset = []
  3. img_rgb = np.array(screenshot)
  4. img_gray = cv2.cvtColor(img_rgb, cv2.COLOR_BGR2GRAY)
  5. template = cv2.imread(image, 0)
  6. w, h = template.shape[::-1]
  7. res = cv2.matchTemplate(img_gray, template, cv2.TM_CCOEFF_NORMED)
  8. loc = np.where(res >= percision)
  9. count = 1
  10.  
  11. for pt in zip(*loc[::-1]):
  12. #cv2.rectangle(img_rgb, pt, (pt[0] + offsetx, pt[1] + offsety), (252, 255, 17), 1)
  13. color = screenshot.getpixel((int(pt[0]+5), int(pt[1]+3)))
  14. #print (color)
  15. #print(label)
  16. if (enemy == 0):
  17. if ((rbgvalue[0]-plusorminus) >= color[0] or color[0] <= (rbgvalue[0]+plusorminus) ):
  18. if ((rbgvalue[1]-plusorminus) >= color[1] or color[1] <= (rbgvalue[1]+plusorminus) ):
  19. if ((rbgvalue[2]-plusorminus)>= color[2] or color[2] <= (rbgvalue[2]+plusorminus) ):
  20. #cv2.rectangle(img_rgb, pt, (pt[0] + w + highlightx, pt[1] + h + highlighty), (0, 0, 255), 2)
  21. #cv2.putText(img_rgb, label, (pt[0] + labeloffsetx, pt[1] + labeloffsety), cv2.FONT_HERSHEY_PLAIN , .5, (0, 0, 255), lineType=cv2.LINE_AA)
  22. resultset.insert(count, (pt, label))
  23. count = count + 1
  24. else:
  25. return "None 3"
  26. else:
  27. return "None 2"
  28. else:
  29. return "None 1"
  30. #cv2.imwrite('result.png', img_rgb)
  31.  
  32. elif (enemy == 1):
  33. if ((rbgvalue[0]-plusorminus) >= color[0] or color[0] <= (rbgvalue[0]+plusorminus) ):
  34. if ((rbgvalue[1]-plusorminus) >= color[1] or color[1] <= (rbgvalue[1]+plusorminus) ):
  35. if ((rbgvalue[2]-plusorminus)>= color[2] or color[2] <= (rbgvalue[2]+plusorminus) ):
  36. #cv2.rectangle(img_rgb, pt, (pt[0] + w + highlightx, pt[1] + h + highlighty), (0, 0, 255), 2)
  37. #cv2.putText(img_rgb, label, (pt[0] + labeloffsetx, pt[1] + labeloffsety), cv2.FONT_HERSHEY_PLAIN , .5, (0, 0, 255), lineType=cv2.LINE_AA)
  38. resultset.insert(count, (pt, label))
  39. count = count + 1
  40. else:
  41. return "None 4"
  42. else:
  43. return "None 5"
  44. elif ((enemyColor[0]-plusorminus) >= color[0] or color[0] <= (enemyColor[0]+plusorminus)):
  45. if ((enemyColor[1]-plusorminus) >= color[1] or color[1] <= (enemyColor[1]+plusorminus)):
  46. if ((enemyColor[2]-plusorminus) >= color[2] or color[2] <= (enemyColor[2]+plusorminus)):
  47. #cv2.rectangle(img_rgb, pt, (pt[0] + w + highlightx, pt[1] + h + highlighty), (0, 0, 255), 2)
  48. #cv2.putText(img_rgb, enemyLabel, (pt[0] + labeloffsetx, pt[1] + labeloffsety), cv2.FONT_HERSHEY_PLAIN , .5, (0, 0, 255), lineType=cv2.LINE_AA)
  49. resultset.insert(count, (pt, enemyLabel))
  50. count = count + 1
  51. else:
  52. pass
  53. elif (enemy == 2):
  54. #print (count, pt, label)
  55. resultset.insert(count, (pt, label))
  56. count = count + 1
  57.  
  58. #cv2.imwrite('result.png', img_rgb)
  59. return resultset
  60.  
  61. def r(num, rand):
  62. return num + rand*random.random()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement