懒人精灵安卓版纯本地离线文字识别插件

目的

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

        目前懒人精灵推出的普通版和高级版,对应的文字识别插件也分普通版和高级版。

准备工作

1、下载懒人精灵手机助手开发工具:懒人精灵官网,网站中只能下载高级版的编辑器,普通版的编辑器需在官方群中获取。

        

2、下载TomatoOCR纯本地离线文字识别插件:点击进入下载插件

  • 目前插件支持中英文、繁体字、日语、韩语识别;
  • 支持小图、区域图和单行文字识别,准确率高达99%;
  • 支持多种返回格式,json\文本\数字\自定义;
  • 支持增强版二值化;
  • 支持懒人的多线程;
  • 支持找字返回坐标并点击;
  • 超高的稳定性,速度快;
  • 不联网、不联网、不联网;

插件集成

普通版和高级版的用法大同小异,下面以高级版用法为例:

1、打开懒人精灵,新建项目,双击资源.rc文件,添加文字识别插件

下载插件后,先改名为TomatoOCR.apk

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

-- ********************************************************************************************
-- ********欢迎使用TomatoOCR文字识别插件,https://www.52tomato.com官网可获取最新版本!!!************
-- ********************************************************************************************

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": 由于手机上截图文本均为矩形文本,从该版本之后均改为rect,"quad":可准确检测倾斜文本
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 可传可不传
-- type=0 : 只检测
-- type=1 : 方向分类 + 识别
-- type=2 : 只识别
-- type=3 : 检测 + 识别

-- 只检测文字位置:type=0
-- 全屏识别: type=3或者不传type
-- 截取单行文字识别:type=1或者type=2

-- 注意:注意:注意:识别不到时,返回的是""空字符串,请加上 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 ~="" then
    local json_point = jsonLib.decode(point)
    local center_x = json_point[1] + x1
    local center_y = json_point[2] + y1
end


-- 释放
ocr.release()

3、其中的方法说明如下

方法名说明
init初始化
setLicenselicense获取
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":

由于手机上截图文本均为矩形文本,从该版本之后均改为rect,"quad":可准确检测倾斜文本

setDetUnclipRatio
调整检测模型检测文本参数,默认1.9:
值范围1.6-2.5之间,如果文字的检测框太小,可调整改参数,一般往大调整
setRecScoreThreshold
设置识别得分过滤,默认0.1:
值范围0.1-0.9之间
setReturnType
设置返回类型,默认"json",包含得分、坐标和文字;
"text":纯文字;
"num":纯数字;
自定义输入想要返回的文本:".¥1234567890",仅只返回这些内容
setBinaryThresh
对图片进行二值化处理,非必须,正常情况下可以不用写
ocrFile

两个参数,图片路径和类型,一般类型传3:

type=-1 : 检测 + 方向分类 + 识别
type=0 : 只检测
type=1 : 方向分类 + 识别
type=2 : 只识别(单行识别)
type=3 : 检测 + 识别
只检测文字位置:type=0
全屏识别: type=3或者不传type
截取单行文字识别:type=1或者type=2

如果识别为不到时,返回的数据为“”字符串

findTapPoint

找字,返回传入字的中心点坐标,方便进行点击,找不到字时,返回[-1,-1]

findTapPoints找字,找出所有符合这个字的所有区域,返回的是个json
release释放插件,只需要在停止脚本的时候调用

4、识别结果

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

注意:高级版需要将“脚本运行在最高权限环境中”的勾去掉

完毕

        相对来说,在懒人精灵进行插件开发还是比较困难的,需要会原生安卓开发,本地识别全屏会相对较慢,区域识别还是非常快,相比部署在服务器上,还可以减少了很多资源占用情况,更加方便便捷。

### 回答1: 按键精灵懒人插件是一款针对Chrome浏览器的实用插件,可以帮助用户进行自动化操作,提高生产力。 该插件功能强大,可以支持自动填写表格、自动点击、自动登录、自动抢红包、自动下单、自动刷票等多种操作,让用户摆脱重复枯燥而又耗时的操作,同时还能够提高生产效率和工作效率。 由于其功能强大,使用范围广泛,因此在很多企业和机构中也得到了广泛的应用。特别是在一些数据处理、报表填写等需要大量重复性工作的场景中,可以大大提高工作效率和准确性。 同时,在使用时,我们还需要注意它的使用场景,确保其合法合规,并严格遵守相关政策和法律法规。除此之外,还需要时刻保持谨慎和警惕,确保自己的机密信息和个人隐私不被泄露出去。 总而言之,作为一款懒人插件,按键精灵给用户带来了极大的便利和实用性,同时也需要合法合规地使用,以免造成不必要的损失和问题。 ### 回答2: 按键精灵懒人插件是一款能够自动化操作浏览器和电脑的工具。它可以在浏览器中自动完成各种重复性、繁琐的操作,如点击、输入、切换标签页等,提高了用户的生产力和工作效率。 该插件支持Chrome浏览器,并且可以安装在Windows和Mac OS平台的电脑上。 安装后,用户可以创建自己的脚本,用于执行一系列操作。脚本可以通过简单的录制和编写来创建,而不需要复杂的编程知识。 除了创建脚本外,按键精灵还支持分组管理和快捷键设置。用户可以将脚本按照类别分组,并为它们设置不同的快捷键,方便快速启动。 此外,按键精灵还提供了一些高级功能,如循环执行、延时执行和条件执行等。通过这些功能,用户可以更加灵活地控制脚本的执行结果。 值得一提的是,按键精灵还提供了一个在线脚本分享平台。用户可以在这个平台上搜索并下载其他用户共享的脚本,大大节省了脚本编写的时间。 综上所述,按键精灵懒人插件是一款功能强大的浏览器插件,它可以帮助用户将繁琐重复的操作自动化,提高工作效率。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

番茄小能手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值