基于图像识别的ui操作--2

基本方法:
test() — 用于对结果进行调试,显示出匹配到的位置
click() — 简单的点击操作。
check_and_click() — 首先对匹配到的区域进行相关性计算。设置阈值就是在这时起效,相关性在阈值范围内时,将进行点击。

        def test(self):  #调试

        img = cv.rectangle(self.full_screen,(int(self.point_x),int(self.point_y)),
                                   (int(self.point_x)+4,int(self.point_y)+4),(0,0,255),thickness=8)
        cv.imshow('win',img)
        cv.imwrite('test.png',img)
        cv.waitKey(0)

**这个调试,结果是输出一张标有点击位置的图片(csdn上传图片失败)
实现代码:
Click_pic(‘weixin.png’,udid=‘W4ONOZNJU859MVN7’).test()

    def click(self): #不做任何判断,直接根据匹配到的图像进行点击。最简单的流程
        print('【点击坐标】', self.point_x, self.point_y)
        if self.udid == None:
            os.system('adb shell input tap %s %s' % (self.point_x, self.point_y))
        else:
            os.system('adb -s %s shell input tap %s %s'% (self.udid,self.point_x,self.point_y))

这是最简单的操作,没有任何等待和判断。
代码实现:
Click_pic(‘weixin.png’,udid=‘W4ONOZNJU859MVN7’).click()

    def check_and_click(self,click=True): #获取根据匹配小图,找到的结果位置图片,然后对比匹配小图与结果图片,比较后进行点击或返回False
        #opencv 11
        gray_match_pic = cv.cvtColor(self.match_pic,cv.COLOR_BGR2GRAY)
        hist1 = cv.calcHist([self.cut_match], [0], mask=None, histSize=[256], ranges=[0, 180])
        hist2 = cv.calcHist([gray_match_pic], [0], mask=None, histSize=[256], ranges=[0, 180])
        # hist2 = cv.calcHist([cv.imread('.\\lli.png')], [0], mask=None, histSize=[256], ranges=[0, 180])
        match_relation = cv.compareHist(hist1, hist2, cv.HISTCMP_CORREL)
        print('【相关性】',match_relation)  #0.9923635306251178
        if self.Related[0]<=match_relation<=self.Related[1]:
            result = True
        else:
            print('没有找到匹配的区域')
            return False
        if result and click:
            self.click()
            return result

这里对匹配结果进行确定,增加操作的正确性。
代码实现:
Click_pic(‘send.png’).check_and_click()

【代码将不断更新,也欢迎各位大神指点优化一下】

基于深度学习的手势识别UI界面代码可以分为两个主要部分:前端和后端。前端负责用户交互和界面展示,后端则处理手势识别的算法和模型。 以下是一个简单的基于深度学习的手势识别UI界面代码示例: 前端代码(使用Python的Tkinter库): ```python import tkinter as tk from PIL import ImageTk, Image # 创建窗口 window = tk.Tk() window.title("手势识别UI界面") # 创建画布 canvas = tk.Canvas(window, width=400, height=400) canvas.pack() # 显示手势图片 image = Image.open("gesture_image.jpg") image = image.resize((400, 400), Image.ANTIALIAS) photo = ImageTk.PhotoImage(image) canvas.create_image(0, 0, anchor=tk.NW, image=photo) # 创建按钮 button = tk.Button(window, text="识别手势") button.pack() # 运行窗口 window.mainloop() ``` 后端代码(使用Python的深度学习框架TensorFlow): ```python import tensorflow as tf # 加载训练好的模型 model = tf.keras.models.load_model("gesture_model.h5") # 进行手势识别 def recognize_gesture(image): # 对图像进行预处理 processed_image = preprocess_image(image) # 使用模型进行预测 prediction = model.predict(processed_image) # 解析预测结果 gesture = parse_prediction(prediction) return gesture # 预处理图像 def preprocess_image(image): # 进行图像预处理操作,如缩放、归一化等 return processed_image # 解析预测结果 def parse_prediction(prediction): # 解析预测结果,返回手势类别 return gesture_class # 调用手势识别函数 gesture = recognize_gesture(image) print("识别结果:", gesture) ``` 请注意,以上代码仅为示例,实际的手势识别UI界面代码可能会更加复杂,并且需要根据具体的需求进行定制。另外,手势识别的算法和模型的实现也需要根据具体情况进行选择和训练。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值