开发指南

图像安全审核

最近更新时间:2020-12-08 17:15:40

图像安全审核提供鉴黄、鉴政、鉴暴恐等多种类型的敏感内容审核服务,有效识别违禁图片,规避违规风险。

功能特性

审核类型 描述
涉黄识别 检测色情、性感内容,有效降低人工审核成本,适用于各类社交平台、即时通讯应用,帮助平台规避涉黄风险
涉暴恐识别 识别图片中的恐怖分子、邪教组织、枪支弹药、血腥暴力等恐怖主义内容,帮助平台规避法律风险
涉政识别 通过人脸识别、图片泛化等技术检测图片涉政内容,帮助平台及时响应法律法规要求,规避舆论风险
广告识别 通过广告引导类图片的识别,帮助平台屏蔽广告信息
注意:

您不仅在云函数中可以使用该扩展能力,也可以在客户端使用,文件读写权限策略与云存储一致,减去您额外的权限管理工作。

前置要求

已经开通 云开发

扩展配置信息

您可以通过以下配置参数:

  • 环境 ID:选择要部署的环境,在哪个环境下使用。

计费

此扩展使用云开发或其他腾讯云服务,可能会产生相关费用:

当您使用云开发扩展时,您只需要为您使用的云资源付费;云开发与云上其他资源分开计费,您可以在 费用中心 查看具体信息。

启用的 API 和创建的资源

  • Type: 数据万象。
    Description: 为开发者提供图片、视频等多种数据的智能处理服务。
  • Type: Cloud Storage。
    Description: 存储图片,并通过 CDN 提升图片加载速度。
  • Type: Cloud Function。
    Description: 检测图像处理参数并为图像处理生成签名,保证操作的合法性。

权限授予

主账号

角色名称 授权策略名 角色类型 描述
CI_QCSRole QcloudAccessForCIRole、QcloudCOSDataFullControl 服务角色 数据万象(CI)会对您腾讯云资源进行访问操作,含对对象存储(COS)数据的读取、修改、删除、列出等
TCB_QcsRole QcloudCIFullAccess 服务角色 云开发(TCB)会对您的数据万象资源进行操作,方便您在扩展能力中使用该服务

子账号

如果想让子账号也能使用该扩展,需要为子账号授予如下权限才能使用:

  • 策略: QcloudTCBFullAccess。
    描述: 云开发全读写访问权限。
  • 策略: QcloudCIFullAccess。
    描述: 数据万象全读写访问权限。

安装扩展

您可以通过 云开发控制台,来安装和管理扩展。

使用扩展

注意:

如果您在 web 网站使用该扩展,请先在 云开发控制台 将网站域名添加为当前环境的安全域名。

1. 安装扩展 SDK 到项目

npm install --save @cloudbase/extension-ci@latest

2. 调用扩展 SDK

调用参数

名称 类型 是否必须 说明
action String 操作类型,传:ImageProcess
cloudPath String 文件的绝对路径,与 tcb.uploadFile 中一致
operations Object 处理参数。

operations 节点内容

名称 类型 是否必须 说明
type String 审核类型支持:porn(涉黄识别)、terrorist(涉暴恐识别)、politics(涉政识别)、ads(广告识别),可选择多种识别类型,如 porn,ads

返回内容

参数名称 类型 描述
RecognitionResult Object 内容识别结果

RecognitionResult 节点内容:

参数名称 类型 描述
PornInfo Object 鉴黄审核信息
TerroristInfo Object 鉴暴恐审核信息
PoliticsInfo Object 鉴政审核信息
AdsInfo Object 广告审核信息

审核信息(PornInfo、TerroristInfo、PoliticsInfo、AdsInfo)中包含如下内容:

参数名称 类型 描述
Code Int 错误码,0为正确,其他数字对应相应错误。详情请参见 错误码
HitFlag Int 是否命中:
  • 0(未命中)
  • 1(命中)
  • 2(疑似)
  • Score Int 审核分值:
  • 0 - 60 分(正常)
  • 60 - 90 分(疑似敏感)
  • 90 - 100 分(确定敏感)
  • Label String 识别出的图片标签

    调用示例

    客户端使用:

    const extCi = require("@cloudbase/extension-ci");
    const tcb = require("@cloudbase/js-sdk");

    云函数中使用:

    const extCi = require("@cloudbase/extension-ci");
    const tcb = require("@cloudbase/node-sdk");

    您可以根据需要选择在【客户端】或【云函数】中使用,再按照如下代码调用:

    const app = tcb.init({
    env: "您的环境ID"
    });
    app.registerExtension(extCi);
    async function demo() {
    try {
      const opts = {
        type: "porn"
      };
      const res = await app.invokeExtension("CloudInfinite", {
        action: "ImageProcess",
        cloudPath: "ab.png", // 需要分析的图像的绝对路径,与tcb.uploadFile中一致
        operations: opts
      });
      console.log(JSON.stringify(res.data, null, 4));
    } catch (err) {
      console.log(JSON.stringify(err, null, 4));
    }
    }
    目录