本文提供了调用图片异步检测任务的具体内容,旨在帮助您编写程序构建HTTP调用请求。

  • 关于如何构造HTTP请求,请参考请求结构
  • 您也可以直接选用已构造好的HTTP请求,具体请参考SDK参考

描述

业务接口/green/image/asyncscan

提交OCR图文异步识别任务,识别图片中的文字信息。识别结果通过调用查询OCR异步识别结果进行查询。

异步OCR检测不支持识别卡证信息(如营业执照、身份证、护照、银行卡、驾驶证、行驶证、车牌、车辆VIN码),如果您想要识别卡证信息,请使用提交OCR同步识别任务

关于检测时长

同步识别支持同步返回识别结果,允许的最长检测时间是6秒;而异步识别为2分钟。如果检测在以上时间限制内没有完成,系统会强制返回超时错误码。如果您对实时性要求不高,可以选择异步识别;否则,请选择同步识别,同步调用相对简单些。

关于图片限制
  • 图片链接支持以下协议:HTTP和HTTPS。
  • 图片支持以下格式:PNG、JPG、JPEG、BMP、GIF、WEBP。
  • 同步调用时,图片大小限制为5M以内;异步调用时,图片大小限制为20M以内。
  • 图片下载时间限制为3s内,如果下载时间超过3s,返回下载超时。
  • 图片像素建议不低于256*256,像素过低可能会影响识别效果。
  • 图片检测接口响应时间依赖图片的下载时间,请保证被检测图片所在的存储服务稳定可靠,建议您使用OSS存储或者CDN缓存等。

请求参数

关于在请求中必须包含的公共请求参数,请参考公共参数

请求body是一个JSON对象,字段说明如下:
名称 类型 是否必需 描述
bizType 字符串 自定义业务类型,由业务方提供。
每个bizType对应不同的算法/模型,运维人员可以为某一bizType动态地增加、删除要检测的风险场景。通过配置,后端根据该字段对请求做不同处理。
说明 该字段优先级高于 scenes字段。
scenes 字符串数组 指定检测场景,取值为:ocr
callback 字符串 异步检测结果回调通知您的URL,支持HTTP/HTTPS。该字段为空时,您必须定时检索检测结果。
seed 字符串 随机字符串,该值用于回调通知请求中的签名。当使用callback时,该字段必须提供。
tasks JSON数组 指定检测对象,JSON数组中的每个元素是一个图片检测任务结构体(image表)。每个元素的具体结构描述见task
表 1. task
名称 类型 是否必需 描述
clientInfo JSON结构体 客户端信息,参考公共参数中的公共查询参数。
服务器会把全局的 clientInfo和此处独立的 clientInfo合并。
说明 独立的 clientInfo优先级更高。
dataId 字符串 数据Id。需要保证在一次请求中所有的Id不重复。
url 字符串 待检测图像的URL。
time 字符串 内容创建/编辑时间。
interval 整型 截帧频率,GIF图/长图检测专用。GIF图可理解为图片数组,每interval张图片抽取一张进行检测。只有该值存在时,才会对GIF进行截帧。长图同时支持长竖图和长横图。
  • 对长竖图(高大于400像素,高宽比大于2.5),会按照(高:宽) 取整来计算总图数,并进行切割。
  • 对长横图(宽大于400像素,宽高比大于2.5),会按照(宽:高) 取整来计算总图数,并进行切割。
说明 interval指示后台在检测时可按照该间隔跳着检测,以节省检测成本。
maxFrames 整型 最大截帧数量,GIF图/长图检测专用,默认值为100。

interval*maxFrames小于该图片所包含的图片数量时,截帧间隔会自动修改为该图片所包含的图片数/maxFrames,以提高整体检测效果。

返回参数

返回结果说明,参见返回结果

返回body中的data字段是JSON数组,每一个元素包含如下字段:
名称 类型 是否必需 描述
code 整型 错误码,和HTTP的status code一致。
msg 字符串 错误描述信息。
dataId 字符串 对应请求中的dataId
taskId 字符串 该检测任务的ID。
url 字符串 对应请求中的URL。

结果回调通知参数(callback、seed)

使用说明

如果您在请求参数中指定了回调通知参数callback,被回调callback值,即一个http(s)协议接口的URL,则需要支持POST方法,传输数据编码采用utf-8,并且支持两个表单参数checksumcontent。系统将按以下描述的生成规则和格式设置checksum和content的值,调用您的callback接口返回检测内容。

您服务端接收到我们推送的结果后,返回的HTTP状态码为200时,表示推送成功,其他的HTTP状态码均视为您接收失败,我们将最多重复推送16次。

回调结果参数的生成规则
名称 类型 描述
checksum String 用户uid + seed + content拼成字符串,通过SHA256算法生产。用户UID即账号ID,您可在阿里云控制台上查询。为防篡改,您可以在获取到推送结果时,按此算法生成字符串,与checksum做一次校验。
content String JSON字符串格式,请自行解析反转成JSON对象。content结果格式参见下文。
content结果格式
{
      "code": 200,
      "msg": "OK",
      "taskId": "fdd25f95-4892-4d6b-aca9-7939bc6e9baa-1486198766695",
      "url":"http://1.jpg",
      "results": [
        {
          "rate": 100,
          "scene": "ocr",
          "suggestion": "review",
          "label": "ocr"
        }
      ]
}

示例

请求示例
{
  "scenes": ["ocr"],
  "tasks": [
    {
      "dataId": "test4lNSMdggA0c56MMvfY1234-abcdpx",
      "url": "https://img.alicdn.com/tfs/TB1urBOQFXXXXbMXFXXXXXXXXXX-1442-257.png"
    }
  ]
}
返回示例
{
  "code": 200, 
  "msg": "OK", 
  "requestId": "92AD868A-F5D2-4AEA-96D4-E1273B8E074C",
  "data": [
    {
      "code": 200, 
      "msg": "OK", 
      "dataId": " test4lNSMdggA0c56MMvfY1234-abcdpx ", 
      "taskId": "aaa25f95-4892-4d6b-aca9-7939bc6e9baa-1486198766695",
      "url": "https://img.alicdn.com/tfs/TB1urBOQFXXXXbMXFXXXXXXXXXX-1442-257.png"
    }
  ]
}