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

  • 关于如何构造HTTP请求,请参考请求结构
  • 您也可以直接选用已构造好的HTTP请求,具体请参考SDK参考
说明 推荐您使用本文介绍的新版API,该版本经过全新设计更易使用;如果您使用旧版本SDK,您可以单击下载旧版本文档

描述

业务接口/green/image/scan

提交图片同步检测任务,检测图片违规或识别图片中的不良信息。支持检测的场景包括:图片智能鉴黄、图片暴恐涉政识别、图片广告识别、图片二维码识别、图片不良场景识别、图片logo识别。

以下场景也使用了图片同步检测接口,请参考具体的接口描述文档:

关于scene与label参数

在提交检测任务时,您需要指定scenes场景参数;而在检测返回结果中,则包含了您指定的场景对应的label结果分类参数。

在图片审核中,scene与label的对应关系如下:
场景 描述 scene label
图片智能监黄 识别图片中的色情内容。 porn
  • normal:正常图片,无色情内容
  • sexy:性感图片
  • porn:色情图片
图片暴恐涉政识别 识别图片中的暴恐涉政内容。 terrorism
  • normal:正常图片
  • bloody:血腥
  • explosion:爆炸烟光
  • outfit:特殊装束
  • logo:特殊标识
  • weapon:武器
  • politics:涉政
  • violence : 打斗
  • crowd:聚众
  • parade:游行
  • carcrash:车祸现场
  • others:其他
图片广告识别 识别图片中的广告信息。 ad
  • normal:正常图片,无广告
  • ad:含广告图片
图片二维码识别 识别图片中的二维码。 qrcode
  • normal:正常图片
  • qrcode:含二维码的图片
图片不良场景识别 识别直播或视频中出现的黑屏、黑边、昏暗画面,画中画,抽烟,打架等不良场景图片。 live
  • normal:正常图片
  • meaningless:无意义图片
  • PIP:画中画
  • smoking:吸烟
  • drivelive:车内直播
图片logo识别 识别图片中的logo信息,比如台标,商标等。 logo
  • normal:正常图片
  • TV:带有管控logo的图片
  • trademark:商标

云盾内容安全图片检测同时提供同步和异步检测接口,且对大部分图片请求,会在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 字符串数组 指定图片检测的应用场景,可选值包括:
  • porn:图片智能鉴黄
  • terrorism:图片暴恐涉政识别
  • ad:图片广告识别
  • qrcode:图片二维码识别
  • live:图片不良场景识别
  • logo:图片logo识别
  • ocr:OCR图文和卡证信息识别(具体请参考图文OCR识别
  • sface:图片敏感人脸识别(具体请参考敏感人脸检测
  • sface-1:人脸照片1:1比对(具体请参考人脸1:1比对
  • sface-n:自定义人脸检索(具体请参考自定义人脸检索
  • liveness:活体翻拍检测(具体请参考活体翻拍检测
  • tag:图片标签识别(具体请参考图片标签识别
说明 支持多场景(scenes)一起检测。例如,使用 scenes=[“porn”, “terrorism”],对一张图片同时进行鉴黄和暴恐识别。
tasks JSON数组 指定检测对象,JSON数组中的每个元素是一个图片检测任务结构体(image表)。最多支持100个元素,即对100张图片进行检测。每个元素的具体结构描述见task
表 1. task
名称 类型 是否必需 描述
clientInfo JSON结构体 客户端信息,参考公共参数中的公共查询参数。
服务器会把全局的 clientInfo和此处独立的 clientInfo合并。
说明 独立的 clientInfo优先级更高。
dataId 字符串 数据Id。需要保证在一次请求中所有的Id不重复。
url 字符串 待检测图像的URL。
time 整型 图片创建/编辑时间,单位为ms。
extras Map 额外调用参数。
interval 整型 截帧频率,GIF图/长图检测专用。GIF图可理解为图片数组,每interval张图片抽取一张进行检测。只有该值存在时,才会对GIF进行截帧。长图同时支持长竖图和长横图。
  • 对长竖图(高大于400像素,高宽比大于2.5),会按照(高:宽) 取整来计算总图数,并进行切割。
  • 对长横图(宽大于400像素,宽高比大于2.5),会按照(宽:高) 取整来计算总图数,并进行切割。
说明 interval指示后台在检测时可按照该间隔跳着检测,以节省检测成本。
maxFrames 整型 最大截帧数量,GIF图/长图检测专用,默认值为1

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

返回参数

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

返回body中的data字段是JSON数组,每一个元素包含如下字段:
名称 类型 是否必需 描述
code 整型 错误码,和HTTP的status code一致。
msg 字符串 错误描述信息。
dataId 字符串 对应请求中的dataId
taskId 字符串 该检测任务的ID。
url 字符串 对应请求中的URL。
extras Map 附加信息。该值可能会调整,建议您不要在业务上进行依赖。
results 数组 返回结果。调用成功时(code=200),返回结果中包含一个或多个元素。每个元素是个结构体,具体结构描述见result
表 2. result
名称 类型 是否必需 描述
scene 字符串 图片检测场景,和调用请求中的场景(scenes)对应。
label 字符串 检测结果的分类,与具体的scene对应。取值范围参考scene和label说明
suggestion 字符串 建议您执行的操作,取值范围:
  • pass:图片正常,无需进行其余操作;或者未识别出目标对象
  • review:检测结果不确定,需要进行人工审核;或者识别出目标对象
  • block:图片违规,建议执行进一步操作(如直接删除或做限制处理)
rate 浮点数 结果为该分类的概率,取值范围为[0.00-100.00]。值越高,表示越有可能属于该分类。
qrcodeData 字符串数组 图片中含有二维码时,返回图片中所有二维码包含的文本信息。
说明 仅适用于qrcode场景。
logoData 字符串数组 图片中含有logo时,返回识别出来的logo信息,具体结构描述见logoData
说明 仅适用于logo场景。
sfaceData 数组 图片中包含暴恐识涉政内容时,返回识别出来的暴恐涉政信息,具体结构描述见sfaceData
说明 仅适用于terrorism和sface场景。关于该参数在sface场景中的具体内容,请参考敏感人脸检测
表 3. logData
名称 类型 是否必需 描述
type 字符串 识别出的logo类型,取值为TV (台标)。
name 字符串 识别出的logo名称。
x 浮点数 以图片左上角为坐标原点,logo区域左上角到y轴距离。
y 浮点数 以图片左上角为坐标原点,logo区域左上角到x轴距离。
w 浮点数 logo区域宽度。
h 浮点数 logo区域高度。
表 4. sfaceData
名称 类型 是否必需 描述
x 浮点数 以图片左上角为坐标原点,人脸区域左上角到y轴距离。
y 浮点数 以图片左上角为坐标原点,人脸区域左上角到x轴距离。
w 浮点数 人脸区域宽度。
h 浮点数 人脸区域高度。
faces 数组 识别出的人脸信息,具体结构描述见face
表 5. face
名称 类型 是否必需 描述
name 字符串 相似人物的名称。
rate 浮点数 相似概率。
id 字符串 人脸Id。

示例

请求示例
{
  "scenes": ["porn"],
  "tasks": [
    {
      "dataId": "test2NInmO$tAON6qYUrtCRgLo-1mwxdi",
      "url": "https://img.alicdn.com/tfs/TB1urBOQFXXXXbMXFXXXXXXXXXX-1442-257.png"
    }
  ]
}
返回示例
{
  "msg": "OK", 
  "code": 200, 
  "requestId": "36D384DA-8023-4E84-BCFD-0C5581352C16",
  "data": [
    {
      "code": 200, 
      "msg": "\u8c03\u7528\u6210\u529f\u3002",
      "dataId": "test2NInmO$tAON6qYUrtCRgLo-1mwxdi", 
      "taskId": "img2MVcKPU1QGD64LoAb4cK6w-1mwxdi", 
      "url": "https://img.alicdn.com/tfs/TB1urBOQFXXXXbMXFXXXXXXXXXX-1442-257.png", 
      "results": [
        {
          "rate": 100, 
          "scene": "porn", 
          "suggestion": "block", 
          "label": "porn"
        }
      ]
    }
  ]
}