心情不是很美丽,写个博客整理下思路。(这是一篇满含错误思想的文章)
这几天探索加成,于是激发了对探索的欲望。因为怪的位置是不固定的,所以位置不是固定的,这里运用了opencv的matchTemplate()函数
通过对挑战标志进行匹配
这里对图像进行了一些出不的操作
import cv2
import os
import numpy as np
def dingwei(tz):
img = cv2.imread(tz,0)
template = cv2.imread('aa.png',0)
res = cv2.matchTemplate(img,template,cv2.TM_CCOEFF_NORMED)
threshold = 0.99 #匹配度
gps = []
loc = np.where(res >= threshold) # 匹配程度大于%80的坐标y,x
for pt in zip(*loc[::-1]): # *号表示可选参数
gps.append(pt)
return gps
def screenshot():
os.system('adb shell screencap -p /sdcard/tz.png')
os.system('adb pull /sdcard/tz.png .')
return "tz.png"
获取图片可以通过screenshot()获取 得到list,例[(768, 359), (1125, 364), (1126, 364), (1321, 370), (195, 387)]。这里对应的xy坐标。而后利用for从list取出元组切片得x,y
def mission():
tz = screenshot()
res = dingwei(tz)
for x in range(len(res)):
re = res[x]
jump(re[0],re[1])
time.sleep(7) #这里可以通过图片匹配识别当前页面,然后进行下一步
写到这里发现的了很大的漏洞,打完怪在回到界面其他的怪的位置显然已经移过了,所以我之前为了什么去匹配所有的点!!!这里的匹配度就很有问题,一个点有的时候并不是匹配一次。由于最开始的错误思想导致了一系列不严谨的错误问题。一失足成千古恨。
生活中也是,有许多后悔的事情,为何大一开始放弃了努力,大学并不应该是由你玩四年(University)的地方。人不能活在懊恼中,生活还在继续。从现在开始,从新来过。仰望星空,脚踏实地。
去吃个鸡,faignting!!!!