更新时间:2023-11-21 gmt 08:00

主体识别示例-凯发k8国际娱乐官网入口

本章节对主体识别ak/sk方式使用sdk进行示例说明。

  • 主体识别示例代码只需将ak/sk信息替换为实际ak/sk,代码中可以使用imagemainobjectdetectionreq中的withurl或withimage方法配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。
  • endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 。
  1. 主体识别调用示例代码如下:
    package com.huaweicloud.sdk.test;
     
    import com.huaweicloud.sdk.core.auth.icredential;
    import com.huaweicloud.sdk.core.auth.basiccredentials;
    import com.huaweicloud.sdk.core.exception.connectionexception;
    import com.huaweicloud.sdk.core.exception.requesttimeoutexception;
    import com.huaweicloud.sdk.core.exception.serviceresponseexception;
    import com.huaweicloud.sdk.image.v2.region.imageregion;
    import com.huaweicloud.sdk.image.v2.*;
    import com.huaweicloud.sdk.image.v2.model.*;
     
    public class runimagemainobjectdetectionsolution {
     
        public static void main(string[] args) {
           // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全
           // 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量huaweicloud_sdk_ak和huaweicloud_sdk_sk
            string ak = system.getenv("huaweicloud_sdk_ak");
            string sk = system.getenv("huaweicloud_sdk_sk");
     
            icredential auth = new basiccredentials()
                    .withak(ak)
                    .withsk(sk);
     
            imageclient client = imageclient.newbuilder()
                    .withcredential(auth)
                    .withregion(imageregion.valueof("cn-north-4"))  //此处替换为您开通服务的区域
                    .build();
            runimagemainobjectdetectionrequest request = new runimagemainobjectdetectionrequest();
            imagemainobjectdetectionreq body = new imagemainobjectdetectionreq();
            body.withthreshold(30f);
            body.with;    //替换为公网可以访问的图片地址
            request.withbody(body);
            try {
                runimagemainobjectdetectionresponse response = client.runimagemainobjectdetection(request);
                system.out.println(response.tostring());
            } catch (connectionexception e) {
                e.printstacktrace();
            } catch (requesttimeoutexception e) {
                e.printstacktrace();
            } catch (serviceresponseexception e) {
                e.printstacktrace();
                system.out.println(e.gethttpstatuscode());
                system.out.println(e.geterrorcode());
                system.out.println(e.geterrormsg());
            }
        }
    }
  2. 执行示例代码文件,控制台输出主体识别结果即表示程序执行成功。相关参数说明请参考主体识别api
    runimagemainobjectdetectionresponse {
        result: [class imagemainobjectdetectioninstance {
            label: bounding_box
            location: {height=327.77, top_left_x=3.7, top_left_y=1.72, width=463.03}
            confidence: 95.73
        }, class imagemainobjectdetectioninstance {
            label: main_object_box
            location: {height=328.35, top_left_x=3.22, top_left_y=1.5, width=456.63}
            confidence: 88.35
        }]
    }
分享:
网站地图