更新时间:2024-03-01 GMT+08:00
分享

图像内容审核(V2)

功能介绍

分析并识别用户上传的图像内容是否有敏感内容(如涉及暴恐元素、涉黄内容等),并将识别结果返回给用户。

  1. 推荐使用图像内容审核V3版本
  2. 文本内容审核默认API调用最大并发为10,如需调整更高并发限制请联系华为专业工程师为您服务。
  3. 您可以进行审核规则配置,根据配置的审核规则,对涉暴、涉黄内容进行不同场景的检测,详情请参见配置审核规则

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v2/{project_id}/moderation/image

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID。获取方法请参见获取项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

用于获取操作API的权限。获取方法请参见获取Token接口,响应消息头中X-Subject-Token的值即为Token。

表3 请求Body参数

参数

是否必选

参数类型

描述

url

String

与image二选一。

图片的URL路径,目前支持:

  • 公网HTTP/HTTPS URL
  • 华为云OBS提供的URL,使用OBS数据需要进行授权。包括对服务授权、临时授权、匿名公开授权。详请参见配置OBS访问权限
说明:

接口响应时间依赖图片的下载时间,如果图片下载时间过长,会返回接口调用失败。请保证被检测图片所在的存储服务稳定可靠,建议您使用华为云OBS存储。

image

String

与url二选一。

图片文件Base64编码字符串。要求base64编码后大小不超过10M。

支持JPEG/PNG/BMP/WEBP/GIF格式。

moderation_rule

String

图像审核规则名称,默认使用default规则。

说明:

审核规则的创建和使用请参见配置审核规则

categories

Array of strings

检测场景。可添加的检测场景如下:

  • terrorism:暴恐元素的检测。
  • porn:涉黄内容元素的检测。
  • ad:广告图文的检测。
  • all:terrorism和porn等场景的检测,当选择all时,无法再添加其他场景,否则会报错。

可通过配置上述场景,来完对应场景元素的检测。

为空或无此参数表示terrorism检测,但不包含porn场景。

说明:

每个检测场景的检测次数会分类统计。

ad_categories

Array of strings

图文审核检测场景。当categories包含ad时,该参数生效。

当前支持的场景有系统场景和用户自定义场景:
  • 系统场景为:
    • qr_code:二维码
    • porn:涉黄
    • ad:广告
    • abuse:辱骂
    • contraband:违禁品
  • 用户自定义场景为:自定义黑名单词库。
    说明:

    自定义词库的创建和使用请参见配置自定义词库 V2

threshold

Float

结果过滤门限,只有置信度不低于此门限的结果才会呈现在detail的列表中,取值范围 0-1,当未设置此值时各个检测场景会使用各自的默认值。

  • terrorism检测场景的默认值为0。
  • ad检测场景的默认值为0。

无特殊需求直接不传此参数或像示例中一样值设为空字符串即可。

说明:
  1. 如果检测场景中的最高置信度也未达到threshold,则结果列表为空;反之threshold过小,则会使结果列表中内容过多。
  2. threshold参数不支持porn场景筛选。
  3. threshold参数不会对响应中的suggestion产生影响。

show_ocr_text

Boolean

是否返回ocr识别结果,默认值为false。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

result

ImageDetectionResultBody object

调用成功时表示调用结果。

调用失败时无此字段。

表5 ImageDetectionResultBody

参数

参数类型

描述

detail

ImageDetectionResultDetail object

针对选定的每个检测场景列出结果列表,terrorism为暴恐检测结果,porn为涉黄检测结果。如果检测场景中的最高置信度也未达到threshold则结果列表为空。

suggestion

String

审核结果是否通过。

  • block:包含敏感信息,不通过
  • pass:不包含敏感信息,通过
  • review:需要人工复检
说明:
  1. 当同时检测多个场景时,suggestion的值以最可能包含敏感信息的场景为准。即任一场景出现了block则总的suggestion为block,所有场景都pass时suggestion为pass,这两种情况之外则一定有场景需要review,此时suggestion为review。
  2. 目前本服务不会保存客户的调用结果(如block的历史信息),因为涉及到客户的数据隐私问题,建议您保留接口调用结果的日志信息。

category_suggestions

Map<String,String>

每个场景的检测结果。

  • block:包含敏感信息,不通过
  • pass:不包含敏感信息,通过
  • review:需要人工复检
说明:

目前本服务不会保存客户的调用结果。

表6 ImageDetectionResultDetail

参数

参数类型

描述

porn

Array of ImageDetectionResultSimpleDetail objects

涉黄检测结果。

terrorism

Array of ImageDetectionResultSimpleDetail objects

暴恐检测结果。

ad

Array of ImageDetectionResultAdDetail objects

广告检测结果。

表7 face_detail

参数

参数类型

描述

h

Integer

人脸区域高度。

w

Integer

人脸区域宽度。

x

Integer

人脸区域左上角到y轴距离。

y

Integer

人脸区域左上角到x轴距离。

表8 ImageDetectionResultSimpleDetail

参数

参数类型

描述

confidence

Float

置信度,取值范围 0-1。

label

String

每个检测结果的标签化说明。

terrorism:label为对应的暴恐元素信息。

  • 暴恐场景当前支持label列表如下:
    • normal:正常(表示您上传的图像不涉及暴恐场景)
    • knife:刀
    • gun:枪
    • fire:火灾
    • bloody :血腥
    • terrorist:暴恐组织及标志
    • fascist:法西斯组织及标志
    • cult:邪教组织及标志
    • special_characters :特殊文字
    • kidnap:绑架
    • corpse:尸体
    • riot:暴乱事件
    • parade :游行示威
    • sensitive_landmarks:敏感地标
    • military_weapon:军事武器
    • army:警察部队
    • crowd:人群聚集

porn:label为对应的涉黄分类(涉黄、性感等)信息。

  • 鉴黄场景当前支持label列表如下:
    • normal:正常(表示您上传的图像内容不涉黄)
    • porn:色情
    • sexy:性感

ad:label为对应的广告识别结果信息。

  • 广告场景当前支持label列表如下:
    • normal:正常(表示您上传的图像不涉及广告内容)
    • ad:广告
  • 图文审核场景当前支持label列表如下:
    • normal:正常
    • qr_code:二维码
    • porn:涉黄
    • ad:广告
    • abuse:辱骂
    • contraband:违禁品
    • 其他自定义黑名单词库名称
表9 ImageDetectionResultAdDetail

参数

参数类型

描述

confidence

Float

置信度,取值范围 0-1。

label

String

ad:label为对应的广告识别结果信息。

  • 广告场景当前支持label列表如下:
    • normal:正常(表示您上传的图像不涉及广告内容)
    • ad:广告
  • 图文审核场景当前支持label列表如下:
    • normal:正常
    • qr_code:二维码
    • porn:涉黄
    • ad:广告
    • abuse:辱骂
    • contraband:违禁品
    • 其他自定义黑名单词库名称

hit_contexts

Array of strings

图文审核场景命中的文本列表。

状态码: 400

表10 响应Body参数

参数

参数类型

描述

error_code

String

调用失败时的错误码,具体请参见错误码

调用成功时无此字段。

error_msg

String

调用失败时的错误信息。

调用成功时无此字段。

fail_category

String

当包含多个场景时,调用失败的场景。

请求示例

“endpoint”即调用API的请求地址,不同服务不同区域的endpoint不同,具体请参见终端节点

例如,服务部署在“华北-北京四”区域的“endpoint”“moderation.cn-north-4.myhuaweicloud.com”,请求URL为“https://moderation.cn-north-4.myhuaweicloud.com/v2/{project_id}/moderation/image”“project_id”为项目ID,获取方法请参见获取项目ID

  • 方式一:使用图片的BASE64编码,识别用户上传的图像内容是否有敏感内容,检测场景为涉黄,暴恐,图像审核规则为默认规则。
    POST https://{endpoint}/v2/{project_id}/moderation/image
    
    {
      "categories" : [ "porn", "terrorism" ],
      "moderation_rule" : "default",
      "url" : "",
      "image" : "/9j/4AAQSkZJRgABAgEASABIAAD/4RFZRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAA...",
      "threshold" : ""
    }
  • 方式二:使用图片的url,识别用户上传的图像内容是否有敏感内容,检测场景为涉黄,暴恐,图像审核规则为默认规则。
    POST https://{endpoint}/v2/{project_id}/moderation/image
    
    {
      "categories" : [ "porn", "terrorism" ],
      "moderation_rule" : "default",
      "url" : "https://BucketName.obs.myhuaweicloud.com/ObjectName",
      "image" : "",
      "threshold" : ""
    }

响应示例

状态码: 200

成功响应示例

{
  "result" : {
    "detail" : {
      "terrorism" : [ {
        "confidence" : 0.7315528178215026,
        "label" : "xxx"
      }, {
        "confidence" : 0.26844718217849733,
        "label" : "yyy"
      } ]
    },
    "suggestion" : "block",
    "category_suggestions" : {
      "terrorism" : "review"
    }
  }
}

状态码: 400

失败响应示例

{
  "error_code" : "AIS.0402",
  "error_msg" : "The image format is not supported."
}

状态码

状态码

描述

200

成功响应示例。

400

失败响应示例。

错误码

请参见错误码

分享:

    相关文档

    相关产品