tnblog
首页
视频
资源
登录
愿你出走半生,归来仍是少年
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
欢迎加群交流技术

c#调用腾讯公实现公众人物识别

4489人阅读 2020/2/18 22:41 总访问:1636398 评论:0 收藏:0 手机
分类: 人工智能

直接贴代码:

 /// <summary>
    /// 公众人物识别
    /// </summary>
    public class DetectCelebrityTools
    {
        public static string DetectCelebrity()
        {
            // 必要步骤:
            // 实例化一个认证对象,入参需要传入腾讯云账户密钥对secretId,secretKey。
            // 这里采用的是从环境变量读取的方式,需要在环境变量中先设置这两个值。
            // 你也可以直接在代码中写死密钥对,但是小心不要将代码复制、上传或者分享给他人,
            // 以免泄露密钥对危及你的财产安全。
            Credential cred = new Credential
            {
                SecretId = UserInfo.SecretId,
                SecretKey = UserInfo.SecretKey
            };

            // 实例化一个client选项,可选的,没有特殊需求可以跳过
            ClientProfile clientProfile = new ClientProfile();
            // 指定签名算法(默认为HmacSHA256)
            clientProfile.SignMethod = ClientProfile.SIGN_SHA1;
            // 非必要步骤
            // 实例化一个客户端配置对象,可以指定超时时间等配置
            HttpProfile httpProfile = new HttpProfile();
            // SDK默认使用POST方法。
            // 如果你一定要使用GET方法,可以在这里设置。GET方法无法处理一些较大的请求。
            httpProfile.ReqMethod = "POST";
            // SDK有默认的超时时间,非必要请不要进行调整。
            // 如有需要请在代码中查阅以获取最新的默认值。
            httpProfile.Timeout = 10; // 请求连接超时时间,单位为秒(默认60秒)
                                      // SDK会自动指定域名。通常是不需要特地指定域名的,但是如果你访问的是金融区的服务,
                                      // 则必须手动指定域名,例如云服务器的上海金融区域名: cvm.ap-shanghai-fsi.tencentcloudapi.com
            httpProfile.Endpoint = ("tiia.tencentcloudapi.com");
            // 代理服务器,当你的环境下有代理服务器时设定
            httpProfile.WebProxy = Environment.GetEnvironmentVariable("HTTPS_PROXY");

            clientProfile.HttpProfile = httpProfile;

            // 实例化要请求产品(以cvm为例)的client对象
            // 第二个参数是地域信息,可以直接填写字符串ap-guangzhou,或者引用预设的常量,clientProfile是可选的
            TiiaClient client = new TiiaClient(cred, "ap-guangzhou", clientProfile);

            // 实例化一个请求对象,根据调用的接口和实际情况,可以进一步设置请求参数
            // 你可以直接查询SDK源码确定DescribeInstancesRequest有哪些属性可以设置,
            // 属性可能是基本类型,也可能引用了另一个数据结构。
            // 推荐使用IDE进行开发,可以方便的跳转查阅各个接口和数据结构的文档说明。
            DetectCelebrityRequest req = new DetectCelebrityRequest();
            req.ImageUrl = "http://b-ssl.duitang.com/uploads/item/201812/29/20181229232103_KQwZC.jpeg";

            // 通过client对象调用DescribeInstances方法发起请求。注意请求方法名与请求对象是对应的
            // 返回的resp是一个DescribeInstancesResponse类的实例,与请求对象对应
            DetectCelebrityResponse resp = client.DetectCelebrity(req).
                ConfigureAwait(false).GetAwaiter().GetResult();

            // 使用同步接口调用结果
            // DescribeInstancesResponse resp = client.DescribeInstancesSync(req);

            // 输出json格式的字符串回包
            string result = AbstractModel.ToJsonString(resp);
            return result;
        }
    }


欢迎加群讨论技术,群:677373950(满了,可以加,但通过不了),2群:656732739

评价