【全网唯一】按键精灵安卓版纯本地离线yolo插件

目的

按键精灵是一款可以模拟鼠标和键盘操作的自动化工具。它可以帮助用户自动完成一些重复的、繁琐的任务,节省大量人工操作的时间。但按键精灵是不包含图色功能,无法识别屏幕上的图像,根据图像的变化自动执行相应的操作。本篇文章主要讲解下按键精灵纯本地离线yolo插件如何使用和集成。

准备工作

1、下载按键精灵手机助手开发工具

2、下载TomatoYolo纯本地离线文字识别插件:下载地址

  • 目前插件支持yolov5\yolov8\yolov11,其他版本理论上也支持;
  • 支持多个模型加载;
  • 支持模型加密,保证模型安全
  • 支持设定图片输入尺寸;
  • 支持标签安全,可以以序号代替;
  • 支持懒人的多线程;
  • 超高的稳定性,速度快;
  • 不联网、不联网、不联网;

插件集成

1、插件并解压,打开按键精灵,将TomatoOCR.luae文件,导入到按键精灵助手的插件命令中(点击插件命令,右键导入TomatoOCR.luae文件)

2、将armeabi-v7a/x86目录下的TomatoOCR文件和资源文件目录下的opt结尾的4个文件,添加到按键精灵助手中附件中

注:真机一般使用armeabi-v7a,模拟器一般使用x86

3、首先将训练的好的yolo模型通过调试工具【点击下载】转换成可用的模型,然后集成如下代码,init和setLicense代码是与OCR共用的,不需要重复调用.

注意:目前测试 v5、v8和v11 能正常使用,其他版本如不能使用,请联系客服。

4、记事本打开调用说明文件,并拷贝到项目的lua文件中,

复制代码
//******************************************************************************
//******欢迎使用TomatoOCR文字识别插件,加入群【469843332】可获取最新版本!!******
//******************************************************************************

Import "TomatoOCR.luae"

dim tmp = GetTempDir()
TomatoOCR.clear(tmp) // 清楚释放的文件
TomatoOCR.PutAttachment (tmp) // 释放附件中的 opt文件和TomatoOCR
TomatoOCR.init (tmp) // 初始化

dim license = ""        // 设置license,见授权码获取
dim remark = "测试"      // 设置备注,可在控制台的列表中查看
dim flag = TomatoOCR.setLicense(license, remark)
TracePrint flag

// yolo初始化
dim key = "yolo1"    // 可以同时初始化多个,这里通过key进行区分
dim yolo_secret = ""      // yolo模型解密密钥
dim yolo_model_path = ""  // yolo模型路径,必传
dim yolo_label_path = ""  // yolo标签路径,可不传,不传返回的是分类编号
TomatoOCR.initYolo(key, yolo_secret, yolo_model_path, yolo_label_path)
// ----------------------注:以上代码全局只需写一次-------------------------------

Function yolo_start() 
    dim yolo_key = "yolo1"
    
    dim size = 640          // 图片输入大小
    dim score_thresh = 0.35 // 置信度阈值,默认0.35
    dim nms_thresh = 0.45   // 非极大值抑制阈值,默认0.45
    
    // 例子
    SnapShot tmp & "test.png", x1, y1, x2 ,y2
    // dim imageData = Image.SetRotation(tmp & "test.png", 270)  
    // Image.SavePixelData(imageData,tmp & "test.png") // 旋转图片270度,并保存到原路径中
    
    dim result = TomatoOCR.yoloFile(yolo_key, tmp & "test.png", size, score_thresh, nms_thresh)
    TracePrint(result)
    
    If result <> "" Then
        dim tmps = Encode.JsonToTable(result)
        For Each tmp In tmps
            dim label = tmp["label"]
            dim score = tmp["score"]
            dim location = tmp["location"]
            
            TracePrint label, score, location[1], location[2], location[3], location[4]
            TracePrint "中心点:", (location[1] + location[3])/2, (location[2] + location[4])/2
        Next
    End If
    
End Function

yolo_start() 

5、 其中的方法说明如下

|------------------|----------------------------------------------------------------------------------------------------------------|
| 方法名 | 说明 |
| init | 初始化 |
| setLicense | license获取 |
| initYolo | 初始化yolo模型,四个参数: 1、可以同时初始化多个,这里通过key进行区分 2、yolo模型解密密钥 3、yolo模型路径,必传 4、 yolo标签路径,可不传,不传返回的是分类编号 |
| yoloFile | 五个参数: 1、这里通过key进行区分调用对应的yolo模型 2、image,图片 3、图片输入大小,默认640 4、置信度阈值,默认0.35 5、非极大值抑制阈值,默认0.45 如果识别为不到时,返回的数据为""字符串 |
| releaseYolo | 释放yolo模型 |

6、运行

以上就是所有的运行情况。

完毕

相对来说,在按键精灵进行插件开发还是比较困难的,官方提供的lua语言功能太少,原生插件集成无法采用直连的方式,但相比部署在服务器上,还是减少了很多资源占用情况,更加方便便捷。

相关推荐
sali-tec7 小时前
C# 基于OpenCv的视觉工作流-章110-YOLO 实例分割
图像处理·人工智能·opencv·算法·yolo·计算机视觉
richard_yuu21 小时前
动态规划:强化学习的「数学基础」,从 MDP 到值迭代
深度学习·神经网络·算法·yolo·机器学习·动态规划
初学大模型1 天前
先剔后识:OpenCV三维预处理与YOLO语义检测协同的机器人视觉系统可行性分析
人工智能·opencv·yolo·计算机视觉·机器人
Python图像识别1 天前
18-【2027毕设】YOLO11烟雾检测识别系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·深度学习·yolo·毕业设计·毕设
Python图像识别1 天前
17-【2027毕设】YOLO11水稻病害检测识别系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·深度学习·yolo·毕业设计·毕设
YOLO数据集集合1 天前
睡岗检测数据集 | 睡岗检测 行为识别 岗位监督 安全管理9114期
深度学习·yolo·目标检测·数据集·安全管理·行为识别·睡岗检测
羊羊小栈8 天前
基于「YOLO目标检测 + 多模态AI分析」的水稻病害智能检测分析预警系统(LangChain框架)
人工智能·yolo·目标检测·毕业设计·创业创新·大作业
YOLO_DATA8 天前
遥感滑坡检测的数据集 2299 张 1类 yolo格式 遥感滑坡检测数据集
人工智能·深度学习·yolo·计算机视觉·无人机·yolo数据集·ai数据集
计算机编程-吉哥9 天前
YOLO26 vs YOLO11 vs YOLOv8:深度学习咖啡果实成熟度分割系统【计算机毕业设计选题推荐】
人工智能·python·深度学习·yolo·django·毕业设计
西西弗Sisyphus9 天前
YOLO26 图像分割 - 训练的数据加载:取图、在线增强与标签缓存
yolo·yolo26