Xamarin计算机视觉

时间:2019-08-30 13:06:40

标签: c# xamarin

我正在尝试使用Azure计算机视觉API创建Xamarin应用程序,每当我单击图片并在图像视图中设置然后描述图像功能不起作用并且我没有得到输出标题时,我都会获得API密钥和终结点URL,我的代码如下:

 private async void Button_Clicked(object sender, EventArgs e)
 {         
    await CrossMedia.Current.Initialize();

    try
    {
        if(!CrossMedia.Current.IsTakePhotoSupported&&!CrossMedia.Current.IsPickPhotoSupported)
        {
            await DisplayAlert("INFO", "CAMERA NOT AVAILABEL", "OK");
        }
        else
        {
             var file = await CrossMedia.Current.TakePhotoAsync(new Plugin.Media.Abstractions.StoreCameraMediaOptions
             {
                 Directory="Images",
                 Name="test.jpg"
             });

             if (file==null)
             {       
                 await DisplayAlert("ERROR", "FILE NOT FOUND", "OK");
                 return;
             }

             img.Source = ImageSource.FromStream(() =>
             {
                 var stream = file.GetStream();
                 return stream;
             });

             var visionapi = new ComputerVisionClient(new ApiKeyServiceClientCredentials(""));
             visionapi.Endpoint = "";

             var desc = await  visionapi.DescribeImageInStreamAsync(file.GetStream());

             foreach (var tag in desc.Captions)
             {
                 cap.Text = cap.Text + "\n" + tag;
             }
         }
    }
    catch(Exception )
    {
        await DisplayAlert("", "ERROR", "OK");
    }
}

DescribeImageInStreamAsync函数无法正常工作,几分钟后它进入catch块,并显示以下错误:

  

Microsoft.Azure.CognitiveServices.Vision.ComputerVisionErrororException:操作返回了无效的状态码“未找到”   例外

0 个答案:

没有答案