更新时间:2024-04-23 GMT+08:00

图像内容审核(V3)

  1. 本章节对图像内容审核AK/SK方式使用SDK进行示例说明。

    示例代码中可以使用Url或Image配置图像信息(代表使用url或者图像的base64),示例中以url为例配置完成后运行即可。

    const core = require('@huaweicloud/huaweicloud-sdk-core');
    const moderation = require("@huaweicloud/huaweicloud-sdk-moderation");
    // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全;
    // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK、HUAWEICLOUD_SDK_PROJECT_ID。 
    const ak = process.env.HUAWEICLOUD_SDK_AK;
    const sk = process.env.HUAWEICLOUD_SDK_SK;
    const projectId = process.env.HUAWEICLOUD_SDK_PROJECT_ID;
    
    const endpoint = "https://moderation.ap-southeast-3.myhuaweicloud.com"; //把ap-southeast-3替换成服务所在的区域。
    const credentials = new core.BasicCredentials()
                         .withAk(ak)
                         .withSk(sk)
                         .withProjectId(project_id)
    const client = moderation.v3.ModerationClient.newBuilder()
                                .withCredential(credentials)
                                .withEndpoint(endpoint)
                                .build();
    const request = new moderation.v3.CheckImageModerationRequest();
    const body = new moderation.v3.ImageDetectionReq();
    const listbodyCategories = new Array();
    listbodyCategories.push("porn");
    body.withUrl("http://www.xxxx.xxxx");
    body.withCategories(listbodyCategories);
    body.withEventType("head_image");
    request.withBody(body);
    const result = client.checkImageModeration(request);
    result.then(result => {
        console.log("JSON.stringify(result)::" + JSON.stringify(result));
    }).catch(ex => {
        console.log("exception:" + JSON.stringify(ex));
    });
  2. 审核结果输出到控制台表示执行成功,图像内容审核结果输出到控制台。
    JSON.stringify(result)::{"request_id": "69b424920668cb15e6d25eef879a023b", "result": {"suggestion": "block", "category": "image_text", "details": [{"suggestion": "block", "category": "image_text", "confidence": 1.0, "qr_location": {"top_left_x": 74, "top_left_y": 66, "bottom_right_x": 151, "bottom_right_y": 142}, "qr_content": "http://xxxxxx/xxxxx", "label": "qr_code"}, {"suggestion": "block", "category": "image_text", "confidence": 0.98779297, "label": "ad"}, {"suggestion": "block", "category": "image_text", "confidence": 1.0, "label": "qr_code"}], "ocr_text": "xxxxxxxxx"}}