zm.OcrBaiDu 百度云通用文字识别

文章目录
  1. 1. 功能
  2. 2. 语法
  3. 3. 参数
  4. 4. 返回值
  5. 5. 示例
  6. 6. 备注

功能

无需制作字库, 使用百度云实现在线云识别文字, 支持范围识别、本地图片或URL链接图片识别, 请先调用 zm.OcrBaiDuInit 设置百度云文字识别 设置后才使用本命令

语法

结果 = zm.OcrBaiDu([x1, y1, x2, y2][, 图片路径][, 返回json])

参数

参数 数据类型 解释
x1 数值型 可选, 识别范围的左上角x坐标, 与图片路径参数二选一
y1 数值型 可选, 识别范围的左上角y坐标, 与图片路径参数二选一
x2 数值型 可选, 识别范围的右下角x坐标, 与图片路径参数二选一
y2 数值型 可选, 识别范围的右下角y坐标, 与图片路径参数二选一
图片路径 字符串 可选, 要识别内容的图片本地路径或者URL图片链接, 暂不支持https链接, 与范围参数二选一
返回json _表_ 可选, 数组变量, 一般不建议填写, 以表的形式返回原生结果, 详见百度云文字识别API文档的返回说明部分

返回值

字符串, 返回识别结果, 多个字符串以\n分割, 失败返回nil

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Import "zm.luae" //导入插件,只需执行一次
zm.Init //初始化插件,只需执行一次

Dim ret, t()

//例子1: 设置默认通用文字识别
If Not zm.OcrBaiDuInit("请修改成你的API Key", "请修改成你的Secret Key") Then
TracePrint "初始化设置百度云识别失败"
EndScript
End If
//全屏识别文字
ret = zm.OcrBaiDu(0, 0, 0, 0)
TracePrint "识别结果:", ret

//例子2: 设置通用文字识别(高精度版)
zm.OcrBaiDuInit "请修改成你的API Key", "请修改成你的Secret Key", "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic"
//本地图片识别文字
ret = zm.OcrBaiDu("/sdcard/紫猫.png")
TracePrint "识别结果:", ret

//例子3: 设置网络图片文字识别, 并开启检测图像朝向功能
Dim args = {"apikey":"请修改成你的API Key", "seckey":"请修改成你的Secret Key", "posturl":"https://aip.baidubce.com/rest/2.0/ocr/v1/webimage", "detect_direction":"true"}
zm.OcrBaiDuInit args
//URL图片链接识别文字并返回原生json
ret = zm.OcrBaiDu("http://bbs.anjian.com/templates/default/Images/logo1.png", t)
TracePrint "识别结果:", ret, "原生json:", zm.VarInfo(t)

备注

  • 本命令调用百度云的通用文字识别功能, 此命令的任何充值消费行为均与紫猫编程学院无关
  • 请自己注册帐号, 试用后再决定是否充值使用
  • 后台创建步骤:
    • 前往百度云AI官网注册并登录
    • 打开文字识别控制台
    • 点击创建应用, 并输入应用名称与应用描述
    • 查看刚刚创建的应用, 就可以查到API Key和Secret Key
  • 本命令通过修改 zm.OcrBaiDuInit 设置百度云文字识别 的参数posturl, 实现支持通用文字识别(包括含位置信息版, 含生僻字版, 高精度版, 高精度含位置版, 网络图片文字识别)
  • V1.1747: 加入命令
  • V3.1849: 支持超级缩放