Azure Lei Zhang的博客

weibo: LeiZhang的微博/QQ: 185165016/QQ群:319036205/邮箱:leizhang1984@outlook.com/TeL:139-161-22926

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

  《Windows Azure Platform 系列文章目录

 

  在上一节中Azure 认知服务 (2) 计算机视觉API - 分析图像,笔者介绍了如何使用API测试控制台进行调试。

  本章将介绍如何使用C#代码调用分析图像功能。

 

  我们需要准备:

  1.Azure China账户

  2.计算机视觉API的API Key

  3.分析的图片URL:https://leizhangstorage.blob.core.chinacloudapi.cn/azureblog/analyzeimagesample.jpg

  

  现在开始正文:

  1.我们可以访问:https://dev.cognitive.azure.cn/docs/services/56f91f2d778daf23d8ec6739/operations/56f91f2e778daf14a499e1fa

  可以看到最下面提供不同的开发语言Code Sample:

  

  2.我们复制出C# Code,这是一个Windows Console

  根据注释的内容,修改变量

  (1) API Key

  (2) JPG图片URL

  代码如下:

        static void Main(string[] args)
        {
            MakeRequest();
            Console.WriteLine("Hit ENTER to exit...");
            Console.ReadLine();
        }

        static async void MakeRequest()
        {
            var client = new HttpClient();
            var queryString = HttpUtility.ParseQueryString(string.Empty);

            // Request headers
            // 这里输入API Key
            client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "{API key}");

            // Request parameters
            // 这里输入visual Features
            queryString["visualFeatures"] = "Categories,Tags,Description,Faces,ImageType,Color,Adult";
            queryString["details"] = "";
            queryString["language"] = "en";
            var uri = "https://api.cognitive.azure.cn/vision/v1.0/analyze?" + queryString;

            HttpResponseMessage response;
            // 这里输入使用的jpg图片路径
            string s = @"{""url"":" + @"""https://leizhangstorage.blob.core.chinacloudapi.cn/azureblog/analyzeimagesample.jpg""}";
            // Request body
            byte[] byteData = Encoding.UTF8.GetBytes(s);

            using (var content = new ByteArrayContent(byteData))
            {
                content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                response = await client.PostAsync(uri, content);

                var contents = await response.Content.ReadAsStringAsync();      
            }

        }

 

posted on 2017-06-21 18:53  Lei Zhang的博客  阅读(880)  评论(0编辑  收藏  举报