【全网唯一】按键精灵安卓版纯本地离线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语言功能太少,原生插件集成无法采用直连的方式,但相比部署在服务器上,还是减少了很多资源占用情况,更加方便便捷。

相关推荐
ASD125478acx3 小时前
多类型孢子与真菌的智能识别与分类系统YOLO模型优化方法
yolo·目标跟踪·分类
2501_9361460410 小时前
【计算机视觉系列】:基于YOLOv8-RepHGNetV2的鱿鱼目标检测模型优化与实现
yolo·目标检测·计算机视觉
羊羊小栈11 小时前
基于YOLO和多模态大语言模型的智能电梯安全监控预警系统(vue+flask+AI算法)
人工智能·yolo·语言模型·毕业设计·创业创新·大作业
adaAS141431512 小时前
【深度学习】YOLOv8-SOEP-RFPN-MFM实现太阳能电池板缺陷检测与分类_1
深度学习·yolo·分类
Coding茶水间12 小时前
基于深度学习的驾驶行为检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
深度学习·qt·yolo
njsgcs13 小时前
ppo靠近门模型 试训练 yolo评分
yolo·ppo
Dev7z1 天前
服装厂废料(边角料)YOLO格式分类检测数据集
yolo·服装厂废料·边角料
黑客思维者1 天前
机器学习071:深度学习【卷积神经网络】目标检测“三剑客”:YOLO、SSD、Faster R-CNN对比
深度学习·yolo·目标检测·机器学习·cnn·ssd·faster r-cnn
棒棒的皮皮1 天前
【深度学习】YOLO 模型部署全攻略(本地 / 嵌入式 / 移动端)
人工智能·深度学习·yolo·计算机视觉
棒棒的皮皮1 天前
【深度学习】YOLO模型速度优化全攻略(模型 / 推理 / 硬件三层维度)
人工智能·深度学习·yolo·计算机视觉