目的
一键玩是免费、方便、0基础的全中文的手机开发脚本工具。本篇文章主要讲解下一键玩Android版TomatoOCR纯本地离线文字识别插件如何使用和集成。
准备工作
1、下载一键玩安卓端apk包
2、下载一键玩对应的TomatoOCR插件:下载插件
- 目前插件支持中英文、繁体字、日语、韩语识别;
- 支持小图、区域图和单行文字识别,准确率高达99%;
- 支持多种返回格式,json\文本\数字\自定义;
- 支持二值化;
- 支持找字返回坐标并点击;
- 超高的稳定性,速度快;
插件集成
1、打开一键玩,进入开发者,创建项目
2、下载插件后将名字改成TomatoOCR.apk,插件放置:
3、然后,返回一键玩,点击:编写-> 插件管理-> 插件创建,如下图:
正式开始编写识别的流程
1、点击上图的 函数-> 函数库 -> 网络账号登录,填入一键玩ID和密码"123456" -> 加入到插件
注:网络账号验证,这一步是一键玩官方要求的,必须加
2、函数-> 函数库 -> 其他函数 -> 运行java函数,输入以下内容后,再加入到插件:
一共填写三个值:apk路径,方法名、授权码和备注
~其他类函数.运行java函数("/工程文件/新建湖本0_2641756/TomatoOCR.apk","license,22fe21448bb74b5149bb87ca37b52f44|J9Y1i90sF6ISW4XGHC5C1PAU,测试")
3、函数-> 函数库-> 寻图函数-> 保存屏幕-> 按要求传入图片路径和区域坐标-> 加入到插件
如:"/工程文件/新建脚本0_2641756/123.bmp",0,0,500,500
4、添加识别配置:函数-> 函数库 -> 其他函数 -> 运行java函数,输入以下内容后,再加入到插件:
一共填写三个值:apk路径,方法名、ocr参数
默认:"ocr,ch-3.0,rect,1.9,0.3,json,0,slow,,black,,/工程文件/新建脚本0_2641756/123.bmp,3,,"
~其他类函数.运行java函数("/工程文件/新建湖本0_2641756/TomatoOCR.apk","ocr,ch-3.0,rect,1.9,0.3,json,0,slow,,black,,/工程文件/新建脚本0_2641756/123.bmp,3,,")
参数按顺序如下:
模型类型 | 默认 ch-3.0,除此之外还有 ch-2.0, ch, cht, japan, korean
检测模型检测文本类型 | 默认"rect": 由于手机上截图文本均为矩形文本,从该版本之后均改为rect,"quad":可准确检测倾斜文本
检测模型检测文本参数 | 默认1.9: 值范围1.6-2.5之间,可调整文本检测框大小
识别得分过滤 | 默认0.3,值范围0.1-0.9之间
返回类型 | 默认"json": 包含得分、坐标和文字;"text":纯文字;"num":纯数字;自定义输入想要返回的文本:".¥1234567890",仅只返回这些内容
增强型二值化 | 值范围0-255,搭配测试应用使用
运行模式 | 默认为slow;slow : 小图上速度稍慢准确率稍高; fast : 小图上速度稍快准确率稍滴;
颜色过滤 | 默认为"";颜色过滤,通过逗号相互连,第一个是颜色值,第二个是负偏色,第三个是正偏色,如:"#41917A/38/38",注意:一键玩用/号代替,号
背景色 | 默认为"black";颜色过滤后的背景色,白色white,黑色black
颜色过滤后存放的图片路径 | 默认为""
截图路径 | 第三步中保存的图片,没有就识别不到任何文字
识别类型 | 默认为3;type=0 : 只检测 type=1 : 方向分类 + 识别,截取单行文字识别; type=2 : 只识别,截取单行文字识别;type=3 : 检测 + 识别;
找字 | 返回的是找字的中心点坐标[x,y],找不到返回“”空字符串,真实值请加上截取图片的前两个值
找字 | 返回的是所有找到的字的数据
5、编写完成后,如下图:
完毕
相对来说,在一键玩进行插件开发还是比较困难的,官方提供的功能太少,原生插件集成无法采用直连的方式,但相比部署在服务器上,还是减少了很多资源占用情况,更加方便便捷。