OCR识别
提示
- OCR模块是属于对图像进行识别
- OCR模块的对象前缀是ocr,例如 ocr.initOcr()这样调用
- 目前的OCR包含了 appleVision
- 3.18.0+ 新增了ocrMut作为多实例模式的ocr前缀
- 5.12.0 新增了paddleLiteOcr
- 5.21.0 新增了paddleNcnnOcrV5
- 新增 paddleOnnxOcrV6(PP-OCRv6_small,与 paddleOnnxOcr / PP-OCRv5 并存)
- 语种:
paddleOnnxOcr(v5)与paddleOnnxOcrV6(v6 Medium/Small)均可在同一模型下识别中文简繁、英文、日文及多种拉丁语系文字,一般无需按语种换模型(v6 官方约 50 种;v5 实测亦覆盖大量拉丁文字);西里尔文等(如乌克兰语)不在覆盖范围,无法正确识别 - 速度:
paddleOnnxOcrV6默认偏精度(maxSideLen960、开启角度检测)。若更在意速度,可参考下文「偏快」参数(缩小maxSideLen、关闭doAngle、提高线程数),通常明显更快;画面倒置时再开角度检测
单实例模式
ocr.initOcr 初始化
- 初始化OCR模块
- @param map map参数表
- key分别为:
- type : OCR类型,值分别为 appleVision = ios自带的Vision模块
- 如果类型是 appleVision, 参数设置为 :
{"type":"appleVision","level":"fast","languages":"zh-Hans,en-US"}
- level: fast,代表快速的,accurate:代表精准的
- languages: 识别的语言,默认是zh-Hans,en-US中文简体和英文,
- 支持的有
["en-US", "fr-FR", "it-IT", "de-DE", "es-ES", "pt-BR", "zh-Hans", "zh-Hant"]
- @return
{bool}布尔型 成功或者失败
- appleVision OCR例子
function main() {
let appleVision = {"type": "appleVision", "level": "accurate", "languages": "zh-Hans,en-US"}
let inited = ocr.initOcr(appleVision)
logd("初始化结果 -" + inited);
if (!inited) {
loge("error : " + ocr.getErrorMsg());
return;
}
for (var ix = 0; ix < 20; ix++) {
//读取一个bitmap
let img = image.captureFullScreen();
if (img == null || img == undefined || img.uuid == null || img.uuid == undefined || img.uuid == "") {
loge("