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

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

描述

业务接口/green/video/syncscan

检测视频中是否包含违规内容,并同步返回检测结果。支持检测的场景包括:视频智能鉴黄、视频暴恐涉政识别、视频广告识别、视频不良场景识别、视频logo识别。以下场景也使用视频同步检测接口,推荐您直接查看对应接口描述文档:
说明 视频同步检测接口只支持通过上传图片序列的方式进行检测和计费。如果您想通过上传视频URL的方式进行检测,推荐您使用提交异步视频检测任务

关于scene与label参数

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

在视频审核中,scene与label的对应关系如下:
场景 描述 scenes label
视频智能鉴黄 识别短视频是否为色情视频。 porn
  • normal:正常视频
  • porn:色情视频
视频暴恐涉政识别 识别短视频是否为暴恐涉政视频。 terrorism
  • normal:正常视频
  • terrorism:暴恐涉政视频
视频不良场景识别 识别短视频中的不良场景。 live
  • normal:正常视频
  • live:包含不良场景的视频
视频logo识别 识别短视频中的特定logo。 logo
  • normal:正常视频
  • logo:带有logo的视频
视频广告识别 识别短视频中的广告。 ad
  • normal:正常视频
  • ad:包含广告的视频

请求参数

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

请求body是一个JSON对象,字段说明如下:

名称 类型 是否必需 描述
bizType 字符串 自定义业务类型,由业务方提供。
每个bizType对应不同的算法/模型,运维人员可以为某一bizType动态地增加、删除要检测的风险场景。通过配置,后端根据该字段对请求做不同处理。
说明 该字段优先级高于 scenes字段。
scenes 字符串数组 指定视频检测的应用场景,可选值包括:
  • porn:视频智能鉴黄
  • terrorism:视频暴恐涉政识别
  • ad:视频广告识别
  • live:视频不良场景识别
  • logo:视频logo识别
  • sface:敏感人脸检测(具体请参考视频敏感人脸识别
  • tag:视频标签识别(具体请参考视频标签识别
tasks JSON数组 JSON数组中的每个元素是一个结构体(Video表)。每个元素的具体结构描述见task
表 1. task
名称 类型 是否必需 描述
clientInfo JSON结构体 客户端信息,参考公共参数中的公共查询参数。
服务器会把全局的 clientInfo和此处独立的 clientInfo合并。
说明 独立的 clientInfo优先级更高。
dataId 字符串 数据Id。需要保证在一次请求中Id不重复。
frames JSON数组 图片序列的截帧信息。frames中的每个元素是个结构体(Frame表),每个元素的具体结构描述见frame
framePrefix 字符串 截帧地址的前缀。截帧的完整URL为:framePrefix + frame.url
time 整型 内容创建/编辑时间。
表 2. frame
名称 类型 是否必需 描述
url 字符串 完整的截帧地址,格式为:framePrefix + url
offset 整型 该截帧距离片头的时间戳,单位为秒。

返回参数

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

返回body中的Data字段是JSON数组,每一个元素包含如下字段:

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

示例

请求示例
{
  "scenes":["porn"],
  "tasks":[
    {
      "dataId":"videoId xxx",
      "time":1475556078881, // 视频创建时间,单位毫秒
      "frames":[
        {
          "offset":10,
          "url":"http://g1.ykimg.com/0B860000586C0A0300038A0460000"
        },
        {
          "offset":20,
          "url":"http://g1.ykimg.com/0B860000586C0A0300038A0460001"
        },
        {
          "offset":30,
          "url":"http://g1.ykimg.com/0B860000586C0A0300038A0460002"
        },
        {
          "offset":40,
          "url":"http://g1.ykimg.com/0B860000586C0A0300038A0460003"
        },
        {
          "offset":50,
          "url":"http://g1.ykimg.com/0B860000586C0A0300038A0460003"
        },
        {
          "offset":60,
          "url":"http://g1.ykimg.com/0B860000586C0A0300038A046000x"
        }
      ]
    }
  ]
}
返回示例
{
  "code":200,
  "msg":"OK",
  "requestId":"requestID xxx",
  "data":[
    {
      "code":200,
      "msg":"OK",
      "dataId":"videoId xxx",
      "taskId":"taskId xxx",
      "results":[
        {
          "label":"porn",
          "rate":99.2,
          "scene":"porn",
          "suggestion":"block",
          "frames":[
            {
              "offset":50,
              "url":"http://g1.ykimg.com/0B860000586C0A0300038A0460003",
              "rate":99.1
            }
          ]
        }
      ]
    }
  ]
}