我正在尝试将图片发布到Microsoft Cognitive Services的计算机视觉API。它要求我将图像上传为网址。我在本地电脑上有一个像http://localhost:9000/content/8a684db8?file=IMG-20160503-WA0002.jpg这样的URI的用户上传的图像。我尝试了显而易见的但不起作用。如何将图像传递给他们的API?
他们还提到我可以将图片作为原始二进制文件发布,但我无法获得如何开始。
PS:如果您想在其他情况下测试订阅密钥,可以使用免费订阅获取订阅密钥。
答案 0 :(得分:1)
localhost是127.0.0.1,例如从PC访问时的PC。您应该在互联网上传递PC的外部IP
答案 1 :(得分:0)
我能够得到解决方案。没有发布我的回答抱歉。
Microsoft Computer Vision Documentation这显示了如何使用nuget Microsoft.ProjectOxford.Vision调用他们的API。下面的代码将本地存储的图像上传并分析到Computer Vision API服务的分析端点。 / p>
using Microsoft.ProjectOxford.Vision;
using Microsoft.ProjectOxford.Vision.Contract;
private async Task<AnalysisResult> UploadAndAnalyzeImage(string imageFilePath)
{
//
// Create Project Oxford Computer Vision API Service client
//
VisionServiceClient VisionServiceClient = new VisionServiceClient(SubscriptionKey);
Log("VisionServiceClient is created");
using (Stream imageFileStream = File.OpenRead(imageFilePath))
{
//
// Analyze the image for all visual features
//
Log("Calling VisionServiceClient.AnalyzeImageAsync()...");
VisualFeature[] visualFeatures = new VisualFeature[] { VisualFeature.Adult, VisualFeature.Categories, VisualFeature.Color, VisualFeature.Description, VisualFeature.Faces, VisualFeature.ImageType, VisualFeature.Tags };
AnalysisResult analysisResult = await VisionServiceClient.AnalyzeImageAsync(imageFileStream, visualFeatures);
return analysisResult;
}
}
On this Git Repository你可以看到一些样本。在这里你也可以了解如何处理客户端错误和异常。