初始化函数
提示
- 初始化的意思是只需要脚本开头执行一次,非必要不要重复执行
环境
init 初始化EC节点服务
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| 无 | 无 | 无 | 无 |
//放到脚本开头调用一次即可,EC必需使用函数
laoleng.EC.init()
| 参数名 | 类型 | 说明 |
|---|---|---|
| 无 | 无 | 无 |
日志
initLogAndConfig 初始化日志和配置
提示
- 初始化日志和h5 ui配置,自动解析ui模版的参数内容,将ui中id解析为对象
- 必须在脚本开头定义个全局变量jsonCfg来接收解析结果
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| noLog | 否 | boolean | 不需要本地日志 |
//脚本开头定义个全局变量jsonCfg来接收解析结果
let jsonCfg = {}
//放到脚本开头调用一次即可,EC找图找色必需使用函数
laoleng.EC.initLogAndConfig()
//如果不需要写入本地日志
laoleng.EC.initLogAndConfig(true)
//可以直接打印ui中定义的变量aaa
logd(jsonCfg.aaa)
| 返回值 | 类型 | 说明 |
|---|---|---|
| 无 | 无 | 无 |
deleteCrashLogs 清空ec的崩溃日志,防止过大
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| 无 | 无 | 无 | 无 |
//放脚本开头执行一次,或者当你想执行的时候
laoleng.EC.deleteCrashLogs()
| 返回值 | 类型 | 说明 |
|---|---|---|
| 无 | 无 | 无 |
图色
initImage 初始化EC图色服务
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| initOpenCV | 否 | boolean | 是否初始化opencv,默认开启 |
| timeout | 否 | int | 找图找色超时 |
//放到脚本开头调用一次即可,EC找图找色必需使用函数
laoleng.EC.initImage()
//不需要找图功能
laoleng.EC.initImage(false)
//设置找图和超时,秒
laoleng.EC.initImage(true,2)
//设置不找图和超时,秒
laoleng.EC.initImage(false,2)
| 参数名 | 类型 | 说明 |
|---|---|---|
| 无 | 无 | 无 |
checkCaptureAvailable 检查各个截图功能是否正常
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| isSave | 否 | 是否保存到本地 | 自动保存图片到sd卡下,命名规则,数字_截图命令名称.png /sdcard/1_captureScreen.png |
//测试截图是否黑屏/白屏
laoleng.EC.checkCaptureAvailable()
//测试并截图到本地,命名规则,数字_截图命令名称.png
laoleng.EC.checkCaptureAvailable(true)
| 返回值 | 类型 | 说明 |
|---|---|---|
| 无 | 无 | 无 |
OCR
initOcr 初始化ocrLite
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| numThread | 否 | number | 线程数,默认1,可以根据手机cpu核心数调整 |
| padding | 否 | number | 图片边缘拓展,小图加大此项 |
| needBinary | 否 | boolean | 是否使用二值化,默认true |
//放在脚本开头初始化一次
//常规用法,默认1个线程,padding 10px,开启二值化功能
laoleng.EC.initOcr()
//2个线程,pading 20px, 不启用二值化功能
laoleng.EC.initOcr(2, 20, false)
//不启用二值化功能
//二值化功能有时候会提升识别速度
laoleng.EC.initOcr(null, null, false)
| 返回值 | 类型 | 说明 |
|---|---|---|
| 无 | 无 | 无 |
ocrConfig.setConfig ocrLite模式切换ocr的配置
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| extra | 否 | Object | 默认{"maxSideLen": 1024} 其他参数参考http://doc.laoleng.vip/web/#/9?page_id=2409 |
| timeOut | 否 | number | 超时时间,可空,默认10*1000ms |
| mode | 否 | number | 二值化模式,默认1 |
| threshold | 否 | number | 二值化阈值 默认100 |
//用于需要修改ocr一些默认参数用
//其他参数参考http://doc.laoleng.vip/web/#/9?page_id=2409
laoleng.ocrConfig.setConfig({"maxSideLen": 1024}, 20*1000, 1, 150)
| 返回值 | 类型 | 说明 |
|---|---|---|
| 无 | 无 | 无 |
每个参数有一个短参数名和一个长参数名,用短的或长的均可
-d或--models:模型所在文件夹路径,可以相对路径也可以绝对路径
-1或--det:dbNet模型文件名(含扩展名)
-2或--cls:angleNet模型文件名(含扩展名)
-3或--rec:crnnNet模型文件名(含扩展名)
-4或--keys:keys.txt文件名(含扩展名)
-i或--image:目标图片路径,可以相对路径也可以绝对路径
-t或--numThread:线程数量
-p或--padding:图像预处理,在图片外周添加白边,用于提升识别率,文字框没有正确框住所有文字时,增加此值
-s或--maxSideLen :按图片最长边的长度,此值为0代表不缩放,例:1024,如果图片长边大于1024则把图像整体缩小到1024再进行图像分割计算,如果图片长边小于1024则不缩放,如果图片长边小于32,则缩放到32
-b或--boxScoreThresh:文字框置信度门限,文字框没有正确框住所有文字时,减小此值
-o或--boxThresh:请自行试验
-u或--unClipRatio:单个文字框大小倍率,越大时单个文字框越大此项与图片的大小相关,越大的图片此值应该越大
-a或--doAngle:启用(1)/禁用(0) 文字方向检测,只有图片倒置的情况下(旋转90~270度的图片),才需要启用文字方向检测
-A或--mostAngle:启用(1)/禁用(0) 角度投票(整张图片以最大可能文字方向来识别),当禁用文字方向检测时,此项也不起作用
-h或--help:打印命令行帮助
更详细内容参考github
https://github.com/DayBreak-u/chineseocr_lite/tree/onnx/cpp_projects/OcrLiteOnnx
initOcrMlkit 初始化Mlkit OCR
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| rotate | 否 | number | 旋转角度,默认0 |
//放在脚本开头初始化一次
//常规用法
laoleng.EC.initOcrMlkit()
//向左旋转90度
laoleng.EC.initOcrMlkit(90)
| 返回值 | 类型 | 说明 |
|---|---|---|
| 无 | 无 | 无 |
initOcrPaddleOcrOnline 初始化rPaddleOcrOnline参数
| 参数名 | 必选 | 类型 | 说明 |
|---|---|---|---|
| serverUrl | 是 | string | OCR服务器IP |
| extraParam | 否 | Object | 其他参数 |
//放脚本开头执行一次
//使用默认参数
laoleng.EC.initOcrPaddleOcrOnline("192.168.1.1")
//自定义识别参数,参考官方文档
//如果自定义,除服务器url外要写全必要参数
//extraParam默认参数{
let extraParam = {
"type": "paddleOcrOnline",
"ocrType": "ONNX_PPOCR_V3",
"padding": 50,
"maxSideLen": 0,
"boxScoreThresh": 0.5,
"boxThresh": 0.3,
"unClipRatio": 1.6,
"doAngleFlag": 0,
"mostAngleFlag": 0,
}
laoleng.EC.initOcrPaddleOcrOnline("192.168.1.1", extraParam)
参数类型解释
https://ieasyclick.com/docs/zh-cn/funcs/ocr-api#ocrinitocr-%E5%88%9D%E5%A7%8B%E5%8C%96
* - ocrType : 模型 ONNX_PPOCR_V3,ONNX_PPOCR_V4,NCNN_PPOCR_V3
* - serverUrl:paddle ocr服务器地址,可以在其他电脑部署,然后中控链接,例如 192.168.2.8,部署在电脑就改ip地址即可,端口是 9022 可以不写
* - padding 图像外接白框,用于提升识别率,文字框没有正确框住所有文字时,增加此值默认50<br/>
* - maxSideLen 按图像长边进行总体缩放,放大增加识别耗时但精度更高,缩小减小耗时但精度降低,maxSideLen为0表示不缩放<br/>
* - boxScoreThresh 文字框置信度门限,文字框没有正确框住所有文字时,减小此值 <br/>
* - boxThresh 同上,自行试验<br/>
* - unClipRatio 单个文字框大小倍率,越大时单个文字框越大<br/>
* - doAngleFlag 启用(1)/禁用(0) 文字方向检测,只有图片倒置的情况下(