xamarin - 在 XamarinForms 中使用 VisionServiceClient 的各种错误
问题描述
我正在尝试创建一个简单的 Xamarin 表单应用程序,该应用程序允许用户浏览或拍照,并让 Azure 认知服务使用自定义视觉模型标记照片。
我无法让客户端成功验证或根据 VisionServiceClient 生成的异常中的错误消息找到资源。我错过了什么吗?VisionServiceClient 的参数使用的正确值是什么?
所有键都已从下图中删除,它们已被填充。
VS2017 中抛出的异常:
System.Private.CoreLib.dll 中的“Microsoft.ProjectOxford.Vision.ClientException”
调用 VisionServiceClient:
private const string endpoint = @"https://eastus2.api.cognitive.microsoft.com/vision/prediction/v1.0";
private const string key = "";
VisionServiceClient visionClient = new VisionServiceClient(key, endpoint);
VisualFeature[] features = { VisualFeature.Tags, VisualFeature.Categories, VisualFeature.Description };
try
{
AnalysisResult temp = await visionClient.AnalyzeImageAsync(imageStream,
features.ToList(), null);
return temp;
}
catch(Exception ex)
{
return null;
}
VS异常错误:
Azure 认知服务门户:
自定义视觉门户:
解决方案
看起来您混淆了计算机视觉和自定义视觉 API。您正在尝试使用后者的 API 密钥为前者使用客户端 SDK。
对于 .NET 语言,您需要Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction NuGet 包。
您的代码最终将如下所示:
ICustomVisionPredictionClient client = new CustomVisionPredictionClient()
{
ApiKey = PredictionKey,
Endpoint = "https://southcentralus.api.cognitive.microsoft.com"
};
ImagePrediction prediction = await client.PredictImageAsync(ProjectId, stream, IterationId);
推荐阅读
- python - 如何在python中将XML文件转换为PDF
- scala - scala spark job在失败时给出了奇怪的异常
- android - Android中RecyclerView的Textview AutoSizing
- tableau-api - Tableau 动态地图标签
- c++ - 如何正确设置高电压触发抓取?
- javascript - 使用 AJAX 调用通过 PHP 显示 base64 图像数据
- html - 如何在 snipcart 的付款部分添加文本?
- javascript - Lodash 的 .map 不保证迭代顺序?
- html - 面临html中文本对齐的困难
- python - 如何为熊猫数据框绘制箱线图,日期为日/周/月?