做网站 带宽 多少,十大不封号直播平台,用别的公司域名做网站,wordpress 英文 中文目的 懒人精灵是一款可以模拟鼠标和键盘操作的自动化工具。它可以帮助用户自动完成一些重复的、繁琐的任务#xff0c;节省大量人工操作的时间。懒人精灵也包含图色功能#xff0c;识别屏幕上的图像#xff0c;根据图像的变化自动执行相应的操作。本篇文章主要讲解下更优秀的…目的 懒人精灵是一款可以模拟鼠标和键盘操作的自动化工具。它可以帮助用户自动完成一些重复的、繁琐的任务节省大量人工操作的时间。懒人精灵也包含图色功能识别屏幕上的图像根据图像的变化自动执行相应的操作。本篇文章主要讲解下更优秀的懒人精灵TomatoOCR纯本地离线文字识别插件如何使用和集成。 目前懒人精灵推出的普通版和高级版对应的文字识别插件也分普通版和高级版。
准备工作
1、下载懒人精灵手机助手开发工具懒人精灵官网网站中只能下载高级版的编辑器普通版的编辑器需在官方群中获取。 2、下载TomatoOCR纯本地离线文字识别插件 目前插件支持中英文、繁体字、日语、韩语识别支持小图、区域图和单行文字识别准确率高达99%支持多种返回格式json\文本\数字\自定义支持增强版二值化支持找字返回坐标并点击超高的稳定性速度快不联网、不联网、不联网
插件集成
普通版和高级版的用法大同小异下面以高级版用法为例
1、打开懒人精灵新建项目双击资源.rc文件添加文字识别插件
下载插件后先改名为TomatoOCR.apk 2、记事本打开调用说明文件并拷贝到项目的lua文件中 -- ********************************************************************************************
-- ********欢迎使用TomatoOCR文字识别插件加入群【469843332】可获取最新版本************
-- ********************************************************************************************import(java.io.File)
import(java.lang.*)
import(java.util.Arrays)
import(android.content.Context)
import(android.hardware.Sensor)
import(android.hardware.SensorEvent)
import(android.hardware.SensorEventListener)
import(android.hardware.SensorManager)
import(com.nx.assist.lua.LuaEngine)-- 推荐方式一稳定方式二懒人精灵软件不怎么稳定慎用按方式一测试完成可用方式二打包
-------------------------引入方式-------------------------
-- 方式一 根据实际情况选择适当的apk包放在手机目录中例子是放在了根目录并重命名为TomatoOCR
--local loader LuaEngine.loadApk(/storage/emulated/0/TomatoOCR.apk)
-- 方式二 PC端左侧展开项目找到资源目录双击.rc文件然后添加文件就可以了
local loader LuaEngine.loadApk(TomatoOCR.apk)
-------------------------引入方式-------------------------local OCR loader.loadClass(com.tomato.ocr.lr.OCRApi)local rec_type ch-3.0;
-- 注ch、ch-2.0、ch-3.0版可切换使用对部分场景可适当调整
-- ch普通中英文识别1.0版模型
-- ch-2.0普通中英文识别2.0版模型
-- ch-3.0普通中英文识别3.0版模型
-- cht繁体japan日语korean韩语
local ocr OCR.init(LuaEngine.getContext(), rec_type)-- license从群中获取或者网盘中获取
local license
local flag ocr.setLicense(license);-- ----------------------------注以上代码全局只需写一次-------------------------------ocr.setRecType(rec_type) -- 如果需要切换语言直接在这里设置即可
ocr.setDetBoxType(rect) -- 调整检测模型检测文本参数- 默认rect: 由于手机上截图文本均为矩形文本从该版本之后均改为rectquad可准确检测倾斜文本
ocr.setDetUnclipRatio(1.9) -- 调整检测模型检测文本参数 - 默认1.9: 值范围1.6-2.5之间
ocr.setRecScoreThreshold(0.3) -- 识别得分过滤 - 默认0.1值范围0.1-0.9之间
ocr.setReturnType(json)
-- 返回类型 - 默认json: 包含得分、坐标和文字
-- text纯文字
-- num纯数字
-- 自定义输入想要返回的文本.1234567890仅只返回这些内容-- ocr.setBinaryThresh(135) -- 二值化设定0-255非必须常规情况下不需要设置可配合群中【测试应用.apk】使用local type 3;
-- type 可传可不传
-- type0 : 只检测
-- type1 : 方向分类 识别
-- type2 : 只识别
-- type3 : 检测 识别-- 只检测文字位置type0
-- 全屏识别: type3或者不传type
-- 截取单行文字识别type1或者type2-- 注意注意注意识别不到时返回的是空字符串请加上 if result ~ then
-- 例子一
snapShot(/mnt/sdcard/test.png,0,0,300,100)
local result1 ocr.ocrFile(/mnt/sdcard/test.png, type)
printEx(result1);-- 例子二
local bitmap LuaEngine.snapShot(0,0,300,100)
local result2 ocr.ocrBitmap(bitmap, type)
printEx(result2);-- 找字返回坐标没有找到字返回“”空字符串返回的是“百度”的中心点坐标
local point ocr.findTapPoint(百度)
if point ~ thenlocal json_point jsonLib.decode(point)local center_x json_point[1] x1local center_y json_point[2] y1
end-- 释放
ocr.release()
3、其中的方法说明如下
方法名说明init初始化setRecType 设置识别语言默认ch-3.0 ch、ch-2.0、ch-3.0版可切换使用对部分场景可适当调整 ch普通中英文识别1.0版模型 ch-2.0普通中英文识别2.0版模型 ch-3.0普通中英文识别3.0版模型 cht繁体japan日语korean韩语 setDetBoxType 调整检测模型检测文本参数-默认rect: 由于手机上截图文本均为矩形文本从该版本之后均改为rectquad可准确检测倾斜文本 setDetUnclipRatio 调整检测模型检测文本参数默认1.9
值范围1.6-2.5之间如果文字的检测框太小可调整改参数一般往大调整 setRecScoreThreshold 设置识别得分过滤默认0.1
值范围0.1-0.9之间 setReturnType 设置返回类型默认json包含得分、坐标和文字
text纯文字
num纯数字
自定义输入想要返回的文本.1234567890仅只返回这些内容 setBinaryThresh 对图片进行二值化处理非必须正常情况下可以不用写 ocrFile 两个参数图片路径和类型一般类型传3: type-1 : 检测 方向分类 识别
type0 : 只检测
type1 : 方向分类 识别
type2 : 只识别单行识别
type3 : 检测 识别
只检测文字位置type0
全屏识别: type3或者不传type
截取单行文字识别type1或者type2如果识别为不到时返回的数据为“”字符串 findTapPoint 找字返回传入字的中心点坐标方便进行点击找不到字时返回[-1,-1] release释放插件只需要在停止脚本的时候调用
4、识别结果 以上就是所有的运行情况。
注意高级版需要将“脚本运行在最高权限环境中”的勾去掉 完毕 相对来说在懒人精灵进行插件开发还是比较困难的需要会原生安卓开发本地识别全屏会相对较慢区域识别还是非常快相比部署在服务器上还可以减少了很多资源占用情况更加方便便捷。