Python调用华为API实现名人识别

Posted ZHW_AI课题组

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python调用华为API实现名人识别相关的知识,希望对你有一定的参考价值。

目录

1.作者介绍

张美灵,女,西安工程大学电子信息学院,2021级硕士研究生
研究方向:激光散斑测速
电子邮件:996400429@qq.com

孟莉苹,女,西安工程大学电子信息学院,2021级硕士研究生,张宏伟人工智能课题组
研究方向:机器视觉与人工智能
电子邮件:2425613875@qq.com

2.华为云名人识别API介绍

2.1 华为云名人识别API

接口描述:分析并识别图片中包含的政治人物、明星及网红人物,返回人物信息及人脸坐标。

2.2 使用AK,SK方式调用API步骤

3.项目实现过程

3.1开通名人识别服务

3.2获取AK,SK

3.3进入API exploer进行调试

在调试台进行调试时需要注意的是:华为云名人识别API可使用的地区,获取图片的方式,显示调试成功后即可在右上方的代码示例中选择相应的语言代码。

3.4在pycharm安装核心库和图像服务库

3.5代码实现

#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 = "TIHXDOKGYUZEFKFCLYLL"
    sk = "BPcOXADvb5woSVxrz6pP2TOkE1bl6OZGnrCNnDOc"

    credentials = BasicCredentials(ak, sk)

    client = ImageClient.new_builder() \\
        .with_credentials(credentials) \\
        .with_region(ImageRegion.value_of("cn-north-4")) \\
        .build()

    try:
        request = RunCelebrityRecognitionRequest()
        request.body = CelebrityRecognitionReq(
            threshold=0,
            url="https://s2.loli.net/2022/03/15/gjUadDr7vNouCpL.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)

3.6测试结果

4.问题与分析

1.若出现错误码400,即说明图片的url不合法,我们需要正确的图片url格式。

解决:利用第三方网站生成正确的url。

以上是关于Python调用华为API实现名人识别的主要内容,如果未能解决你的问题,请参考以下文章

Python实例之调用百度API实现车牌识别

Python之调用百度API实现手势识别

Python调用华为API实现人脸比对

Python调用华为API实现人脸比对

Python使用阿里API进行身份证识别

调用百度人脸识别API实现简单的颜值检测