关于
XFX Plugin(小飞侠插件) 是一个免费的专为安卓脚本开发框架设计的功能丰富的工具类插件,提供了超过 400+ 的 API 接口,方便安卓脚本开发者使用。
支持懒人精灵、easyclick、触动精灵、aiwork、autojs及变种(autoxjs)、自动化编辑器、按键精灵、airscript、cheese等脚本框架调用。
测试环境
机型:小米8
分辨率:1080*2248
配置:8+128G
系统:Android 10
懒人精灵版本:v1.8.0
测试图

PaddleOcrOps类
小飞侠插件已内置 PP-OCR v4 / v5 / v6 三套 PP-OCR mobile NCNN 模型,默认使用v6模型。也支持加载自己训练的NCNN模型。
下面进行不同版本的模型识别测试。
通过设置PaddleOcr.init('4')初始化参数,来加载不同版本的模型。
PP-OCR v4模型
import('com.nx.assist.lua.LuaEngine')
-- 加载 XfxPlugin.lua 类
local xfxModule = require('lib/XfxPlugin')
-- 创建 XFX 对象实例
local XFX = xfxModule:new({
apkName = 'xfxPlugin-release.apk', -- 小飞侠插件 APK 文件名
context = LuaEngine.getContext(), -- 上下文对象
})
-- 获取 PaddleOcr 对象
local PaddleOcr = XFX:getOps('paddleOcrOps'); assert(PaddleOcr)
-- 初始化(使用内置默认模型)
local ok = PaddleOcr.init('4')
if not ok then
print(PaddleOcr.getLastErrorCode())
print(PaddleOcr.getLastErrorMessage())
else
-- 截图识别
local bmp = LuaEngine.snapShot(0, 0, 0, 0)
local resultJson = PaddleOcr.detect(bmp)
bmp.recycle()
print('识别结果: ' .. tostring(resultJson))
end
-- 释放资源
PaddleOcr.release()
识别结果:
{"code":0,"message":"ok","imageWidth":2248,"imageHeight":1080,"count":16,"elapsedMs":864,"data":[{"text":"·恭喜您获得9-","score":0.881446,"boxScore":0.992032,"left":913,"top":168,"right":1342,"bottom":208,"width":429,"height":40,"centerX":1127,"centerY":188},{"text":"2","score":0.0822519,"boxScore":0.832227,"left":1261,"top":183,"right":1279,"bottom":200,"width":18,"height":17,"centerX":1270,"centerY":191},{"text":"1","score":0.0295319,"boxScore":0.786458,"left":1275,"top":188,"right":1293,"bottom":195,"width":18,"height":7,"centerX":1284,"centerY":191},{"text":"外赠送奖励","score":0.998382,"boxScore":0.967987,"left":323,"top":366,"right":548,"bottom":400,"width":225,"height":34,"centerX":435,"centerY":383},{"text":"1","score":0.165807,"boxScore":0.867676,"left":485,"top":580,"right":520,"bottom":593,"width":35,"height":13,"centerX":502,"centerY":586},{"text":"18","score":0.742529,"boxScore":0.902848,"left":1088,"top":579,"right":1128,"bottom":597,"width":40,"height":18,"centerX":1108,"centerY":588},{"text":"48","score":0.998868,"boxScore":0.87253,"left":1848,"top":566,"right":1900,"bottom":600,"width":52,"height":34,"centerX":1874,"centerY":583},{"text":"酷炫机甲(5日)","score":0.974658,"boxScore":0.989917,"left":305,"top":618,"right":570,"bottom":653,"width":265,"height":35,"centerX":437,"centerY":635},{"text":"爱心气球(3日)","score":0.942024,"boxScore":0.968827,"left":655,"top":623,"right":908,"bottom":652,"width":253,"height":29,"centerX":781,"centerY":637},{"text":"钻石","score":0.998461,"boxScore":0.949692,"left":994,"top":617,"right":1085,"bottom":658,"width":91,"height":41,"centerX":1039,"centerY":637},{"text":",时尚教父体验卡","score":0.919899,"boxScore":0.963364,"left":1148,"top":623,"right":1430,"bottom":652,"width":282,"height":29,"centerX":1289,"centerY":637},{"text":"亲密玫瑰","score":0.992169,"boxScore":0.966706,"left":1473,"top":618,"right":1632,"bottom":653,"width":159,"height":35,"centerX":1552,"centerY":635},{"text":"钻石","score":0.997031,"boxScore":0.989711,"left":1767,"top":618,"right":1858,"bottom":653,"width":91,"height":35,"centerX":1812,"centerY":635},{"text":"270再买5个","score":0.997824,"boxScore":0.983619,"left":739,"top":931,"right":1144,"bottom":983,"width":405,"height":52,"centerX":941,"centerY":957},{"text":"确定","score":0.999058,"boxScore":0.980216,"left":1258,"top":931,"right":1366,"bottom":983,"width":108,"height":52,"centerX":1312,"centerY":957},{"text":",买荣耀播报(5日)送夺宝5次","score":0.922719,"boxScore":0.956839,"left":723,"top":1010,"right":1135,"bottom":1034,"width":412,"height":24,"centerX":929,"centerY":1022}]}
PP-OCR v5模型
import('com.nx.assist.lua.LuaEngine')
-- 加载 XfxPlugin.lua 类
local xfxModule = require('lib/XfxPlugin')
-- 创建 XFX 对象实例
local XFX = xfxModule:new({
apkName = 'xfxPlugin-release.apk', -- 小飞侠插件 APK 文件名
context = LuaEngine.getContext(), -- 上下文对象
})
-- 获取 PaddleOcr 对象
local PaddleOcr = XFX:getOps('paddleOcrOps'); assert(PaddleOcr)
-- 初始化(使用内置默认模型)
local ok = PaddleOcr.init('5')
if not ok then
print(PaddleOcr.getLastErrorCode())
print(PaddleOcr.getLastErrorMessage())
else
-- 截图识别
local bmp = LuaEngine.snapShot(0, 0, 0, 0)
local resultJson = PaddleOcr.detect(bmp)
bmp.recycle()
print('识别结果: ' .. tostring(resultJson))
end
-- 释放资源
PaddleOcr.release()
识别结果:
{"code":0,"message":"ok","imageWidth":2248,"imageHeight":1080,"count":20,"elapsedMs":1989,"data":[{"text":"恭喜您获得0","score":0.894531,"boxScore":0.980433,"left":823,"top":159,"right":1414,"bottom":210,"width":591,"height":51,"centerX":1118,"centerY":184},{"text":"额外赠送奖励","score":1,"boxScore":0.970327,"left":305,"top":362,"right":570,"bottom":397,"width":265,"height":35,"centerX":437,"centerY":379},{"text":"体","score":0.537598,"boxScore":0.974222,"left":691,"top":414,"right":731,"bottom":488,"width":40,"height":74,"centerX":711,"centerY":451},{"text":"❤","score":0.292969,"boxScore":0.930702,"left":767,"top":449,"right":869,"bottom":489,"width":102,"height":40,"centerX":818,"centerY":469},{"text":"12","score":0.285767,"boxScore":0.874276,"left":425,"top":466,"right":482,"bottom":489,"width":57,"height":23,"centerX":453,"centerY":477},{"text":"Go","score":0.230408,"boxScore":0.90462,"left":1486,"top":468,"right":1616,"bottom":519,"width":130,"height":51,"centerX":1551,"centerY":493},{"text":"Te","score":0.382812,"boxScore":0.898528,"left":352,"top":500,"right":403,"bottom":529,"width":51,"height":29,"centerX":377,"centerY":514},{"text":"使近","score":0.220306,"boxScore":0.861552,"left":705,"top":533,"right":841,"bottom":591,"width":136,"height":58,"centerX":773,"centerY":562},{"text":"48","score":1,"boxScore":0.944867,"left":1069,"top":560,"right":1137,"bottom":606,"width":68,"height":46,"centerX":1103,"centerY":583},{"text":"1","score":0.257812,"boxScore":0.893292,"left":1626,"top":570,"right":1644,"bottom":599,"width":18,"height":29,"centerX":1635,"centerY":584},{"text":"48","score":1,"boxScore":0.994406,"left":1841,"top":566,"right":1910,"bottom":600,"width":69,"height":34,"centerX":1875,"centerY":583},{"text":"酷炫机甲(5日)","score":0.963501,"boxScore":0.968149,"left":295,"top":615,"right":577,"bottom":650,"width":282,"height":35,"centerX":436,"centerY":632},{"text":"爱心气球(3日)","score":0.928162,"boxScore":0.978949,"left":639,"top":615,"right":921,"bottom":650,"width":282,"height":35,"centerX":780,"centerY":632},{"text":"钻石","score":1,"boxScore":0.981753,"left":994,"top":614,"right":1085,"bottom":654,"width":91,"height":40,"centerX":1039,"centerY":634},{"text":"时尚教父体验卡","score":0.99986,"boxScore":0.977062,"left":1138,"top":615,"right":1454,"bottom":650,"width":316,"height":35,"centerX":1296,"centerY":632},{"text":"亲密玫瑰","score":0.994263,"boxScore":0.98351,"left":1471,"top":614,"right":1641,"bottom":654,"width":170,"height":40,"centerX":1556,"centerY":634},{"text":"钻石","score":1,"boxScore":0.976947,"left":1768,"top":614,"right":1853,"bottom":654,"width":85,"height":40,"centerX":1810,"centerY":634},{"text":"270再买5个","score":0.990653,"boxScore":0.964279,"left":722,"top":932,"right":1161,"bottom":978,"width":439,"height":46,"centerX":941,"centerY":955},{"text":"确定","score":1,"boxScore":0.996724,"left":1253,"top":932,"right":1367,"bottom":978,"width":114,"height":46,"centerX":1310,"centerY":955},{"text":"买荣耀播报(5日)送夺宝5次","score":0.996094,"boxScore":0.953961,"left":694,"top":1001,"right":1189,"bottom":1036,"width":495,"height":35,"centerX":941,"centerY":1018}]}
PP-OCR v6模型
PP-OCRv6 是百度飞桨 PaddleOCR 团队于 2026.6.11 发布的第六代开源 OCR 模型,覆盖从浏览器端到服务器的全算力平台。相比前代,检测精度提升 4.9%,识别精度提升 5.1%。单模型支持语言从 4 种扩展至 50 种,新增电路板、数码管、CAD 图纸、喷码点阵字符等工业场景。
import('com.nx.assist.lua.LuaEngine')
-- 加载 XfxPlugin.lua 类
local xfxModule = require('lib/XfxPlugin')
-- 创建 XFX 对象实例
local XFX = xfxModule:new({
apkName = 'xfxPlugin-release.apk', -- 小飞侠插件 APK 文件名
context = LuaEngine.getContext(), -- 上下文对象
})
-- 获取 PaddleOcr 对象
local PaddleOcr = XFX:getOps('paddleOcrOps'); assert(PaddleOcr)
-- 初始化(使用内置默认模型)
local ok = PaddleOcr.init('6')
if not ok then
print(PaddleOcr.getLastErrorCode())
print(PaddleOcr.getLastErrorMessage())
else
-- 截图识别
local bmp = LuaEngine.snapShot(0, 0, 0, 0)
local resultJson = PaddleOcr.detect(bmp)
bmp.recycle()
print('识别结果: ' .. tostring(resultJson))
end
-- 释放资源
PaddleOcr.release()
识别结果:
{"code":0,"message":"ok","imageWidth":2248,"imageHeight":1080,"count":17,"elapsedMs":473,"data":[{"text":"恭喜您获得。","score":0.945187,"boxScore":0.980762,"left":915,"top":163,"right":1337,"bottom":209,"width":422,"height":46,"centerX":1126,"centerY":186},{"text":"0","score":0.896637,"boxScore":0.79027,"left":923,"top":170,"right":980,"bottom":199,"width":57,"height":29,"centerX":951,"centerY":184},{"text":"9","score":0.920829,"boxScore":0.796548,"left":1249,"top":173,"right":1329,"bottom":202,"width":80,"height":29,"centerX":1289,"centerY":187},{"text":"额外赠送奖励","score":0.997815,"boxScore":0.99395,"left":305,"top":367,"right":570,"bottom":396,"width":265,"height":29,"centerX":437,"centerY":381},{"text":"48","score":1,"boxScore":0.950532,"left":1071,"top":565,"right":1128,"bottom":605,"width":57,"height":40,"centerX":1099,"centerY":585},{"text":"0","score":0.262372,"boxScore":0.781226,"left":1541,"top":555,"right":1564,"bottom":573,"width":23,"height":18,"centerX":1552,"centerY":564},{"text":"48","score":1,"boxScore":0.93525,"left":1843,"top":565,"right":1905,"bottom":605,"width":62,"height":40,"centerX":1874,"centerY":585},{"text":"酷炫机甲(5日)","score":0.929861,"boxScore":0.9914,"left":300,"top":619,"right":571,"bottom":649,"width":271,"height":30,"centerX":435,"centerY":634},{"text":"爱心气球(3日)","score":0.916596,"boxScore":0.972939,"left":644,"top":619,"right":915,"bottom":649,"width":271,"height":30,"centerX":779,"centerY":634},{"text":"钻石","score":0.997974,"boxScore":0.928831,"left":995,"top":618,"right":1081,"bottom":653,"width":86,"height":35,"centerX":1038,"centerY":635},{"text":"时尚教父体验卡","score":0.999896,"boxScore":0.979156,"left":1139,"top":619,"right":1449,"bottom":649,"width":310,"height":30,"centerX":1294,"centerY":634},{"text":"亲密玫瑰","score":0.973552,"boxScore":0.925099,"left":1471,"top":618,"right":1641,"bottom":653,"width":170,"height":35,"centerX":1556,"centerY":635},{"text":"钻石","score":0.997558,"boxScore":0.923258,"left":1769,"top":614,"right":1849,"bottom":654,"width":80,"height":40,"centerX":1809,"centerY":634},{"text":"270","score":0.999782,"boxScore":0.947339,"left":773,"top":938,"right":959,"bottom":973,"width":186,"height":35,"centerX":866,"centerY":955},{"text":"0再买5个","score":0.993253,"boxScore":0.960278,"left":906,"top":938,"right":1110,"bottom":973,"width":204,"height":35,"centerX":1008,"centerY":955},{"text":"确定","score":0.999997,"boxScore":0.966622,"left":1259,"top":932,"right":1361,"bottom":978,"width":102,"height":46,"centerX":1310,"centerY":955},{"text":"买荣耀播报(5日)送夺宝5次","score":0.953913,"boxScore":0.973658,"left":695,"top":1001,"right":1185,"bottom":1036,"width":490,"height":35,"centerX":940,"centerY":1018}]}
返回值说明
接口返回如下格式的内容:
{
"code": 0,
"message": "ok",
"imageWidth": 2248,
"imageHeight": 1080,
"count": 17,
"elapsedMs": 473,
"data": [
{
"text": "恭喜您获得。",
"score": 0.945187,
"boxScore": 0.980762,
"left": 915,
"top": 163,
"right": 1337,
"bottom": 209,
"width": 422,
"height": 46,
"centerX": 1126,
"centerY": 186
}
]
}
其中,count表示识别到的文本框数量,elapsedMs表示识别耗时(毫秒)。
经过一轮测试可以看到,全屏识别的情况下,v4模型耗时864毫秒,v5模型耗时1989毫秒,v6模型耗时473毫秒。
其中,v4模型文件提取自懒人精灵安装包,v5模型精度最高耗时最长,v6模型速度最快精度尚可。日常用默认的v6模型就可以。
1. 官方交流QQ群,添加多个不批。建议使用安卓手机或电脑申请。
飞云脚本圈: 586333520
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » 【懒人精灵】小飞侠插件PP-OCR mobile NCNN 文字识别模型v4/v5/v6测试和对比
飞云脚本圈: 586333520

Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » 【懒人精灵】小飞侠插件PP-OCR mobile NCNN 文字识别模型v4/v5/v6测试和对比