更新时间:2024-07-02 GMT+08:00
分享

名人识别示例

本章节对名人识别AK/SK方式使用SDK进行示例说明。

  • 名人识别示例代码只需将AK/SK信息替换为实际AK/SK,代码中可以使用初始化CelebrityRecognitionReq中的url或image配置图像信息(image和url参数二选一),示例中以url为例,配置完成后运行即可。
  • endpoint是华为云各服务应用区域和各服务的终端节点,详情请查看 地区和终端节点
  1. 名人识别调用示例代码如下:
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    # coding: utf-8
    
    from huaweicloudsdkcore.auth.credentials import BasicCredentials
    from huaweicloudsdkcore.exceptions import exceptions
    from huaweicloudsdkcore.http.http_config import HttpConfig
    from huaweicloudsdkimage.v2 import ImageClient,RunCelebrityRecognitionRequest,CelebrityRecognitionReq
    from huaweicloudsdkimage.v2.region.image_region import ImageRegion
    
    if __name__ == "__main__":
        # 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全;
        # 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。
        ak = os.getenv("HUAWEICLOUD_SDK_AK")
        sk = os.getenv("HUAWEICLOUD_SDK_SK")
    
        credentials = BasicCredentials(ak, sk) 
    
        client = ImageClient.new_builder() \
            .with_credentials(credentials) \
            .with_region(ImageRegion.value_of("cn-north-1")) \   //此处替换为您开通服务的区域
            .build()
    
        try:
            request = RunCelebrityRecognitionRequest()
            request.body = CelebrityRecognitionReq(
                threshold=0,
                url="https://XXX.jpg"   //此处替换为公网可以访问的图片地址
            )
            response = client.run_celebrity_recognition(request)
    	print(response.status_code)
            print(response)
        except exceptions.ClientRequestException as e:
            print(e.status_code)
            print(e.request_id)
            print(e.error_code)
            print(e.error_msg)
    
  2. 执行示例代码文件,控制台输出名人识别结果即表示程序执行成功。相关参数说明请参考名人识别API
    1
    2
    3
    4
    200
    {'result': [{'confidence': 0.9990678852332598,
                 'face_detail': {'h': 510, 'w': 357, 'x': 260, 'y': 201},
                 'label': '迈克尔·杰克逊'}]}
    

相关文档