OCR文字识别
# OCR文字识别
## image.initOcr()
初始化OCR模块,百度PaddleOCR,具体请看相关文档,默认自带了Paddle的训练模型
@param map map参数表
key分别为:
- modelDir: 百度Paddle OCR训练模型目录
- labelFile: 百度Paddle OCR 文字文本路径
@return {bool} 布尔型 成功或者失败
```javascript
function main() {
let r = image.initOcr({});
logd(r)
var request = image.requestScreenCapture(10000,0);
if (!request) {
request = image.requestScreenCapture(10000,0);
}
logd("申请截图结果... "+request)
while(true){
sleep(1000)
//let b = image.readBitmap("/sdcard/test.png");
var b = image.captureScreenBitmap("jpg",0,0,0,0,100);
if (b) {
let rs = image.ocrBitmap(b,10000);
if (rs) {
logd("rs "+JSON.stringify(rs));
}
b.recycle();
}
}
}
main();
```
## image.ocrBitmap()
对Bitmap进行OCR
返回的是JSON数据,其中数据类似于与:
```javascript
[{"label":"奇趣装扮三阶盘化","confidence":0.48334712,"points":[{"x":11,"y":25},{"x":239,"y":10},{"x":241,"y":43},{"x":13,"y":59}]},{"label":"快来加入威房箱物","confidence":0.6789893,"points":[{"x":183,"y":264},{"x":429,"y":249},{"x":432,"y":298},{"x":186,"y":313}]},{"label":"养成","confidence":0.5535166,"points":[{"x":317,"y":305},{"x":463,"y":284},{"x":470,"y":333},{"x":324,"y":354}]}]
```
- label: 代表是识别的文字
- confidence:代表识别的准确度
- points: 代表坐标,有4个值,分别是:左上方,右上方,右下方,左下方
@param bitmap 图片
@param timeout 超时时间 单位毫秒
@return {JSON} JSON对象
```javascript
function main() {
let r = image.initOcr({});
logd(r)
var request = image.requestScreenCapture(10000,0);
if (!request) {
request = image.requestScreenCapture(10000,0);
}
logd("申请截图结果... "+request)
while(true){
sleep(1000)
//let b = image.readBitmap("/sdcard/test.png");
var b = image.captureScreenBitmap("jpg",0,0,0,0,100);
if (b) {
let rs = image.ocrBitmap(b,10000);
if (rs) {
logd("rs "+JSON.stringify(rs));
}
b.recycle();
}
}
}
main();
```
## image.releaseOcr()
释放OCR占用的资源
@return {bool} 成功或者失败
```javascript
function main() {
let r = image.initOcr({});
logd(r)
var request = image.requestScreenCapture(10000,0);
if (!request) {
request = image.requestScreenCapture(10000,0);
}
logd("申请截图结果... "+request)
while(true){
sleep(1000)
//let b = image.readBitmap("/sdcard/test.png");
var b = image.captureScreenBitmap("jpg",0,0,0,0,100);
if (b) {
let rs = image.ocrBitmap(b,10000);
if (rs) {
logd("rs "+JSON.stringify(rs));
}
b.recycle();
}
}
image.releaseOcr();
}
main();
```