本文介绍内容审核(imageaudit)类目下的图片内容安全ScanImage的语法及示例。

功能描述

图片内容安全结合行为、内容,采用多维度、多模型、多检测手段,识别图片中的敏感信息,规避图片中存在敏感人物照片、敏感事件等内容风险。

支持检测的场景包括:图片智能鉴黄、图片敏感内容识别、图片风险人物识别、图片垃圾广告识别、图片不良场景识别、图片Logo识别。

在提交检测任务时,您需要指定scenes参数,并且支持组合使用,即可对同一张图片的多种风险进行检测。

说明
  • 在同时检测多个scene的情况下,将按照每个场景的检测图片数量×每个场景的单价进行累加计费。而在检测返回结果中,则包含了您指定的scenes对应的label。您可以根据参数的返回值判断风险的具体类型。然后对图片进行处理。
  • 您可以进入在线咨询获取在线人工帮助。
  • 阿里云视觉智能开放平台视觉AI能力API接入、接口使用或问题咨询等,请通过钉钉群(23109592)加入阿里云视觉智能开放平台咨询群联系我们。

在图片审核中,scene与label的对应关系如下:

scene

描述

label

porn

图片智能鉴黄:适用于图片涉及色情、低俗内容检测。

normal(正常图片)、sexy(性感图片)、porn(色情图片)

terrorism

图片敏感内容识别:适用于图片涉及敏感事件、暴力、武器、恐怖、血腥、爆炸等内容识别。

图片风险人物识别:适用于图片涉及敏感人物、明星的识别。

normal(正常图片)、bloody(血腥)、explosion(爆炸烟光)、outfit(特殊装束)、logo(特殊标识)、weapon(武器)、politics(敏感内容)、violence(打斗)、crowd(聚众)、parade(游行)、carcrash(车祸现场)、flag(旗帜)、location(地标)、drug(涉毒)、gamble(赌博)、others(其他)

ad

图片垃圾广告识别:适用于图片中含有广告信息的识别,特別是针对于类似牛皮癣的文字广告有较好的识别效果。

normal(正常图片)、politics(文字含敏感内容)、porn(文字含涉黄内容)、abuse(文字含辱骂内容)、terrorism(文字含涉恐内容)、contraband(文字含违禁内容)、spam(文字含其他垃圾内容)、npx(牛皮癣广告)、qrcode(包含二维码)、programCode(包含小程序码)、ad(其他广告)

live

图片不良场景识别:适用于图片中涉及毒品、赌博、画中画等内容的识别。

normal(正常图片)、meaningless(无意义图片)、PIP(画中画)、smoking(吸烟)、drivelive(车内直播)、drug(涉毒)、gamble(赌博)

logo

图片Logo识别:适用于图片中含有台标、水印、商标等内容的检测。

normal(正常图片)、TV(带有管控logo的图片)、trademark(商标)

接入指引

1. 注册阿里云账号:打开阿里云官网,在阿里云官网右上角,单击立即注册,按照操作提示完成账号注册。

2. 开通能力:请确保您已开通内容审核服务,若未开通服务请立即开通

3. 创建AccessKey:请确保您已创建AccessKey,如果您使用的是子账号AccessKey,您需要给子账号赋予AliyunVIAPIFullAccess权限,具体操作,请参见RAM授权

4. 在线调试(可选):您可以通过OpenAPI Explorer在线调试能力,查看完整的调用示例代码及SDK依赖信息,也可以下载完整的工程。

5. 开发接入步骤:

  • SDK总览中选择您要接入使用的SDK语言。
  • 在对应语言的SDK文档中找到AI类目为内容审核(imageaudit)的SDK包进行安装。
  • 参考文档中提供的示例代码进行适当修改后调用。

6. 示例代码:该能力常用语言的示例代码,请参见图片内容安全示例代码

7. 客户端直接调用:该能力常用的客户端调用方式包括以下几种。

输入限制

  • 图像格式:PNG、JPG、JPEG、BMP、GIF、WEBP。
  • 图像大小:不超过10 MB。如果您有大图需求,请通过钉钉群(23109592)联系我们。
  • 图像分辨率:建议大于256×256像素,像素过低可能会影响识别效果。超长图的分辨率长或宽不能超过30000像素。GIF图总像素(长x宽)不超过4194304像素,超过该总像素值会报InvalidFile.Download(文件无法下载)错误。
  • URL地址中不能包含中文字符。

检测说明

  • 最长检测时间是6秒,如果在该时间范围内没有完成检测,系统会返回超时错误码。
  • 图片下载时间限制为3秒,如果下载时间超过3秒,则会返回下载超时。
  • 图片检测接口响应时间依赖图片的下载时间。请确保被检测图片所在的存储服务稳定可靠,建议您使用阿里云OSS存储或者CDN缓存。

计费说明

关于图片内容安全的计费方式及报价,请参见计费介绍

说明 下方调试接口为付费接口,如需免费体验调试请前往体验中心,对应体验入口如下表所示。

能力

体验中心

图片智能鉴黄

免费调试入口

图片敏感内容识别

免费调试入口

图片Logo识别

免费调试入口

图片垃圾广告识别

免费调试入口

图片不良场景识别

免费调试入口

图片风险人物识别

免费调试入口

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String ScanImage

系统规定参数。取值:ScanImage

Task.N.ImageTimeMillisecond Long 1

图片创建或编辑时间,单位为毫秒。

Task.N.Interval Integer 1

截帧频率,GIF图或者长图检测专用。GIF图可理解为图片数组,每interval张图片抽取一张进行检测。只有该值存在时,才会对GIF进行截帧。长图同时支持长竖图和长横图。

  • 长竖图(高大于400像素,高宽比大于2.5),会按照高/宽取整来计算总图数,并进行切割。
  • 长横图(宽大于400像素,宽高比大于2.5),会按照宽/高取整来计算总图数,并进行切割。
说明 默认只会检测GIF图或长图的第一帧,interval参数用于指示后台在检测时可按照该间隔跳着检测,以节省检测成本。需要与maxFrames参数组合使用。例如,设置interval为2,maxFrames为100,检测长图或GIF图时,将每间隔1帧检测一次,最多检测100帧,计费则按照实际检测的数量计算。
Task.N.ImageURL String http://xxx.xxx.com/xxx.jpg

待检测图像的URL地址。支持HTTP和HTTPS协议。推荐使用上海地域的OSS链接,对于文件在本地或者非上海地域OSS链接的情况,请参见文件URL处理

说明 如果使用上海地域的OSS链接,系统会自动将OSS链接地址转成内网地址然后再下载文件,所以调用该接口并不会产生OSS流量计费。
Task.N.MaxFrames Integer 1

最大截帧数量,GIF图或长图检测专用,默认值为1。

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

Task.N.DataId String uuid-xxxx-xxxx-1234

数据ID。需要保证在一次请求中所有的ID不重复。

Scene.N String porn

指定图片检测的应用场景,可选值包括:

  • porn:图片智能鉴黄
  • terrorism:图片敏感内容识别、图片风险人物识别
  • ad:图片垃圾广告识别
  • live:图片不良场景识别
  • logo:图片Logo识别
说明 支持多场景(scenes)一起检测。例如scenes=[“porn”, “terrorism”],即对一张图片同时进行鉴黄和涉恐识别,此时也会按照两个场景计费。
说明 最多指定10个检测对象,即最多同时对10张图片进行检测。

返回数据

名称 类型 示例值 描述
RequestId String 69B41AE8-1234-1234-1234-12D395695D2D

请求ID。

Data Object

返回的结果数据内容。

Results Array of Result

图片检测结果。

ImageURL String http://xxx.xxx.xxx/xxx.jpg

图像URL地址。

DataId String uuid-xxxx-xxx-1234

数据ID。

SubResults Array of SubResult

单张图片的检测结果。

SfaceDataList Array of SfaceData

图片中包含暴恐敏感内容时,返回识别出来的暴恐敏感信息。

说明 仅适用于terrorism和sface场景。关于该参数在sface场景中的具体内容,请参见敏感人脸检测。
Width Float 97

人脸区域宽度。

Faces Array of Face

识别出的人脸信息。

Name String abc

相似人物的名称。

Id String AliFace_0001234

人脸ID。

Rate Float 91.54

相似概率。

Height Float 131

人脸区域高度。

Y Float 39

以图片左上角为坐标原点,人脸区域左上角到x轴距离。

X Float 49

以图片左上角为坐标原点,人脸区域左上角到y轴距离。

HintWordsInfoList Array of HintWordsInfo

图片中含有广告时,返回图片中广告文字命中的风险关键词信息。格式为数组。

说明 仅适用于ad场景。示例值:”hintWordsInfo”:[{“context”:”敏感词”}]
Context String abc

图片中文字命中的风险关键词内容。

Suggestion String block

建议您执行的操作。

  • pass:图片正常,无需进行其余操作;或者未识别出目标对象。
  • review:检测结果不确定,需要进行人工审核;或者未识别出目标对象。
  • block:图片违规,建议执行进一步操作(如直接删除或做限制处理)。
ProgramCodeDataList Array of ProgramCodeData

图片中含有小程序码时,返回小程序码的位置信息。

说明 仅适用于qrcode场景,且已通过钉钉群(23109592)联系我们开通了小程序码识别。
Width Float 402.0

小程序码区域宽度。

Height Float 413.0

小程序码区域高度。

Y Float 0.0

以图片左上角为坐标原点,小程序码区域左上角到x轴距离。

X Float 11.0

以图片左上角为坐标原点,小程序码区域左上角到y轴距离。

OCRDataList Array of String abc

识别到的图片中的完整文字信息。

Frames Array of Frame

如果待检测图片因为过长被截断,该参数返回截断后的每一帧图像的临时访问地址供您参考。

URL String http://xxx.xxx.com/xxx-0.jpg

被截断的图片的临时访问URL,地址有效期是5分钟。

Rate Float 89.85

结果为该分类的概率,取值范围为0~100。值越高,表示越有可能属于该分类。

LogoDataList Array of LogoData

图片中含有Logo时,返回识别出来的Logo信息。

说明 仅适用于Logo场景。
Type String TV

识别出的logo类型,取值为TV(台标)。

Width Float 106

Logo区域宽度。

Height Float 106

Logo区域高度。

Y Float 68

以图片左上角为坐标原点,Logo区域左上角到x轴距离。

Name String abc

识别出的Logo名称。

X Float 140

以图片左上角为坐标原点,Logo区域左上角到y轴距离。

Label String normal

检测结果的分类,与具体的scene对应。取值范围参见scene和label对应关系说明。

Scene String ad

图片检测场景,和调用请求中的场景(scenes)对应。

Rate Float 99.91

结果为该分类的概率,取值范围为0~100。值越高,表示越有可能属于该分类。

TaskId String img4wlJcb7p4wH4lAP3111111-123456

任务ID。

SDK参考

阿里云视觉AI内容审核类目下的图片内容安全能力推荐使用SDK调用,支持多种编程语言,调用时请选择AI类目为内容审核(imageaudit)的SDK包,文件参数通过SDK调用可支持本地文件及任意URL,具体可参见SDK总览

示例代码

该能力常用语言的示例代码,请参见图片内容安全示例代码

示例

请求示例

http(s)://imageaudit.cn-shanghai.aliyuncs.com/?Action=ScanImage      //更多关于访问域名(Endpoint)信息,请参见:https://help.aliyun.com/document_detail/143103.html
&Task=[{"ImageTimeMillisecond":1,"Interval":1,"ImageURL":"http://xxx.xxx.com/xxx.jpg","MaxFrames":1,"DataId":"uuid-xxxx-xxxx-1234"}]
&Scene=["porn"]
&公共请求参数

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<Data>
    <Results>
        <Code>200</Code>
        <Message>OK</Message>
        <DataId>uuid-xxxx-xxx-1234</DataId>
        <SubResults>
            <Rate>99.63</Rate>
            <Suggestion>block</Suggestion>
            <Label>sexy</Label>
            <Scene>porn</Scene>
        </SubResults>
        <SubResults>
            <Label>politics</Label>
            <Rate>91.54</Rate>
            <Scene>terrorism</Scene>
            <SfaceDataList>
                <Faces>
                    <Id>AliFace_0001234</Id>
                    <Name>命中人名</Name>
                    <Rate>91.54</Rate>
                </Faces>
                <Height>131</Height>
                <Width>97</Width>
                <X>49</X>
                <y>39</y>
            </SfaceDataList>
            <Suggestion>block</Suggestion>
        </SubResults>
        <SubResults>
            <ProgramCodeDataList>
                <Width>402</Width>
                <Height>413</Height>
                <X>11</X>
                <y>0</y>
            </ProgramCodeDataList>
            <Frames>
                <Rate>89.85</Rate>
                <URL>http://xxx.xxx.com/xxx-0.jpg</URL>
            </Frames>
            <Frames>
                <Rate>68.06</Rate>
                <URL>http://xxx.xxx.com/xxx-1.jpg</URL>
            </Frames>
            <Rate>99.91</Rate>
            <Suggestion>block</Suggestion>
            <Label>ad</Label>
            <Scene>ad</Scene>
        </SubResults>
        <SubResults>
            <Rate>99.91</Rate>
            <Suggestion>block</Suggestion>
            <Label>drug</Label>
            <Scene>live</Scene>
        </SubResults>
        <SubResults>
            <LogoDataList>
                <Name>xxx台</Name>
                <Type>TV</Type>
                <X>140</X>
                <y>68</y>
                <Width>106</Width>
                <Height>106</Height>
            </LogoDataList>
            <Rate>99.9</Rate>
            <Suggestion>block</Suggestion>
            <Label>TV</Label>
            <Scene>logo</Scene>
        </SubResults>
        <TaskId>img4wlJcb7p4wH4lAP3111111-123456</TaskId>
        <ImageURL>http://xxx.xxx.xxx/xxx.jpg</ImageURL>
    </Results>
</Data>
<RequestId>69B41AE8-1234-1234-1234-12D395695D2D</RequestId>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "Data" : {
    "Results" : [ {
      "Code" : 200,
      "Message" : "OK",
      "DataId" : "uuid-xxxx-xxx-1234",
      "SubResults" : [ {
        "Rate" : 99.63,
        "Suggestion" : "block",
        "Label" : "sexy",
        "Scene" : "porn"
      }, {
        "Label" : "politics",
        "Rate" : 91.54,
        "Scene" : "terrorism",
        "SfaceDataList" : [ {
          "Faces" : [ {
            "Id" : "AliFace_0001234",
            "Name" : "命中人名",
            "Rate" : 91.54
          } ],
          "Height" : 131,
          "Width" : 97,
          "X" : 49,
          "y" : 39
        } ],
        "Suggestion" : "block"
      }, {
        "ProgramCodeDataList" : [ {
          "Width" : 402.0,
          "Height" : 413.0,
          "X" : 11.0,
          "y" : 0.0
        } ],
        "Frames" : [ {
          "Rate" : 89.85,
          "URL" : "http://xxx.xxx.com/xxx-0.jpg"
        }, {
          "Rate" : 68.06,
          "URL" : "http://xxx.xxx.com/xxx-1.jpg"
        } ],
        "Rate" : 99.91,
        "Suggestion" : "block",
        "Label" : "ad",
        "Scene" : "ad"
      }, {
        "Rate" : 99.91,
        "Suggestion" : "block",
        "Label" : "drug",
        "Scene" : "live"
      }, {
        "LogoDataList" : [ {
          "Name" : "xxx台",
          "Type" : "TV",
          "X" : 140,
          "y" : 68,
          "Width" : 106,
          "Height" : 106
        } ],
        "Rate" : 99.9,
        "Suggestion" : "block",
        "Label" : "TV",
        "Scene" : "logo"
      } ],
      "TaskId" : "img4wlJcb7p4wH4lAP3111111-123456",
      "ImageURL" : "http://xxx.xxx.xxx/xxx.jpg"
    } ]
  },
  "RequestId" : "69B41AE8-1234-1234-1234-12D395695D2D"
}

错误码

关于图片内容安全的错误码,详情请参见常见错误码

开源模型体验

更多开源免费模型体验及下载,详见魔搭社区:内容审核模型-鉴黄

安全声明

  • 请确保上传的图片或文件来源符合相应的法律法规。
  • 通过体验调试上传的临时文件有效期为1小时,在24小时后会被系统自动清理删除。