OcrEx文字识别(增强版)
返回指定区域内所有识别到的文本,无需自制字库,识别范围越小,效率越高,结果越准确
注意:安卓版按键APP需在设置页下载安装【ocrEx组件库】,如主程序(不含插件、命令库)使用到该函数,则在打包小精灵时会自动添加组件,无需自行下载,但包体会有所变大
如需在插件、命令库中使用,可在主程序中加入以下代码实现小精灵添加组件:
sub 占位()
ocrEx(0,0,0,0)
end sub支持版本:手机助手v4.0.0、iOS新版v2.0.0、安卓版v3.8.0及以上版本
支持系统:iOS13、安卓5及以上版本系统
result = OcrEx (leftX,topY,rightX,bottomY[,mode,language,options])
| 参数名 | 参数类型 | 是否必选 | 参数说明 |
|---|---|---|---|
| leftX | int | 是 | 识别区域的左上角x坐标 |
| topY | int | 是 | 识别区域的左上角y坐标 |
| rightX | int | 是 | 识别区域的右下角x坐标 |
| bottomY | int | 是 | 识别区域的右下角y坐标 |
| mode | int | 否 | 识别模式,0:精准模式,1:快速模式,默认:0 |
| language | string | 否 | 识别语种,支持多语种,分隔符”,“,默认:”0” “0”:中文+英文 “1”:中文 “2”:英文 |
| options | table | 否 | 扩展参数集合,用于额外配置和未来扩展 |
options包含的字段
| 字段名 | 字段类型 | 字段说明 |
|---|---|---|
| modelType | string | 模型类型,默认:default default:默认模型 paddleV5:飞桨v5,iOS13系统默认模型不支持中文,需使用该模型,由于精度提高所耗性能也会提高,建议x或以上机型使用该模型 该参数支持版本:iOS新版v2.7.0或以上版本引擎 |
| 返回名 | 返回类型 | 返回说明 |
|---|---|---|
| result | table | 返回含有数组的键值表的响应结果信息,如存在n个结果,则table长度为n |
result 包含的字段
| 字段名 | 字段类型 | 字段说明 |
|---|---|---|
| text | string | 识别到的文本内容 |
| x | int | 识别到文本区域的左上角x坐标 |
| y | int | 识别到文本区域的左上角y坐标 |
| h | int | 识别到文本区域的高度 |
| w | int | 识别到文本区域的宽度 |
| score | float | 识别到文本区域的可信度 |
//例1:在全屏范围内识别文本、精准模式、中文+英文
Dim ret,ranTime
Do
ranTime = TickCount()
ret = OcrEx (0,0,0,0)
TracePrint TickCount()-ranTime
If Len(ret) = 1 and ret[1] = "" Then
TracePrint "没有识别到文本"
Else
For i = 1 to len(ret)
TracePrint "识别到目标:" & ret[i]["text"] &_
",左上角x坐标:" & ret[i]["x"] &_
",左上角y坐标:" & ret[i]["y"] &_
",区域宽:" & ret[i]["w"] &_
",区域高:" & ret[i]["h"] &_
",可信度:" & ret[i]["score"]
Next
End If
Delay 1000
Loop
//例2:使用飞浆v5模型,暂只支持iOS新版v2.7.0或以上版本引擎
Dim ret,ranTime
Do
ranTime = TickCount()
ret = OcrEx (0,0,0,0,0,"0",{"modelType":"paddleV5"})
TracePrint TickCount()-ranTime
If Len(ret) = 1 and ret[1] = "" Then
TracePrint "没有识别到文本"
Else
For i = 1 to len(ret)
TracePrint "识别到目标:" & ret[i]["text"] &_
",左上角x坐标:" & ret[i]["x"] &_
",左上角y坐标:" & ret[i]["y"] &_
",区域宽:" & ret[i]["w"] &_
",区域高:" & ret[i]["h"] &_
",可信度:" & ret[i]["score"]
Next
End If
Delay 1000
Loop