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

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

描述

业务接口/green/image/scan

提交图片同步检测任务,进行图片标签识别。

云盾内容安全图片检测同时提供同步和异步检测接口,且对大部分图片请求,会在1秒内返回结果,但在一些特殊场景(比如系统繁忙导致堆积严重、图片较大、OCR识别等),耗时一般会多些。

关于检测时长

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

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

请求参数

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

请求body是一个JSON对象,字段说明如下:
名称 类型 是否必需 描述
bizType 字符串 自定义业务类型,由业务方提供。
每个bizType对应不同的算法/模型,运维人员可以为某一bizType动态地增加、删除要检测的风险场景。通过配置,后端根据该字段对请求做不同处理。
说明 该字段优先级高于 scenes字段。
scenes 字符串数组 指定图片检测的应用场景,取值:tag
tasks JSON数组 指定检测对象,JSON数组中的每个元素是一个图片检测任务结构体(image表)。最多支持100个元素,即对100张图片进行检测。每个元素的具体结构描述见task
表 1. task
名称 类型 是否必需 描述
clientInfo JSON结构体 客户端信息,参考公共参数中的公共查询参数。
服务器会把全局的 clientInfo和此处独立的 clientInfo合并。
说明 独立的 clientInfo优先级更高。
dataId 字符串 数据Id。需要保证在一次请求中所有的Id不重复。
url 字符串 待检测图像的URL。
time 整型 图片创建/编辑时间,单位:ms。
extras Map 额外调用参数。

返回参数

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

返回body中的data字段是JSON数组,每一个元素包含如下字段:
名称 类型 是否必需 描述
code 整型 错误码,和HTTP的status code一致。
msg 字符串 错误描述信息。
dataId 字符串 对应请求中的dataId
taskId 字符串 该检测任务的ID。
url 字符串 对应请求中的URL。
extras Map 附加信息。该值可能会调整,建议您不要在业务上进行依赖。
results 数组 返回结果。调用成功时(code=200),返回结果中包含一个或多个元素。每个元素是个结构体,具体结构描述见result
表 2. result
名称 类型 是否必需 描述
scene 字符串 图片检测场景,取值:tag
label 字符串 检测结果的分类,取值:
  • normal:正常图片,无标签
  • tag:含标签的图片
suggestion 字符串 建议用户执行的操作,取值:
  • pass:图片不含标签,无需进行其余操作
  • review:图片含标签,建议执行后续操作
rate 浮点数 结果为该分类的概率,取值范围为[0.00-100.00]。值越高,表示越有可能属于该分类。
tagData 结构体 标签识别发现标签时(label=tag),返回的标签数据信息。具体结构描述见tagData
表 3. tagData
名称 类型 是否必需 描述
summary 数组 标签概要信息。具体结构见summary
表 4. summary
名称 类型 是否必需 描述
tgCnName 字符串 标签中文名。
tgEnName 字符串 标签英文名。
rate 浮点数 结果为标签的概率,取值范围[0,100]。取值越大,则越有可能属于标签。

示例

请求示例
{
  "scenes": ["tag"],
  "tasks": [
    {
      "dataId": "test35T5XhMsXfV4xKwUv8Ob74-1poXxF",
      "url": "http://v2img.ifensi.com/2015/0826/2015082612403321.jpg"
    }
  ]
}
返回示例
{
  "msg": "OK",
  "code": 200,
  "data": [
    {
      "msg": "OK",
      "code": 200,
      "dataId": "test35T5XhMsXfV4xKwUv8Ob74-1poXxF",
      "results": [
        {
          "tagData": {
            "summary": [
              {
                "rate": 37.72,
                "tagEnName": "Aircraft",
                "tagCnName": "飞行器"
              },
              {
                "rate": 31.93,
                "tagEnName": "Hotel",
                "tagCnName": "旅馆"
              }
            ],
          },
          "rate": 99.91,
          "suggestion": "review",
          "label": "tag",
          "scene": "tag"
        }
      ],
      "taskId": "vi636L2Z$Q43i6LRrWdITWhq-1poXxF",
      "url": "http://v2img.ifensi.com/2015/0826/2015082612403321.jpg"
    }
  ],
  "requestId": "5CAED310-CC31-4E34-9EB5-3C2E741BB870"
}