C# Microsoft ProjectOxford Vision API客户端异常错误
我正在研究MS的新API,在遵循教程的过程中出现了错误。 这是我的全部代码。我试图用这个来获得图像的颜色。 我得到的返回是“Error return CV”,因此我没有得到null imageStream 也没有结果。 提前谢谢你C# Microsoft ProjectOxford Vision API客户端异常错误,c#,microsoft-cognitive,vision,C#,Microsoft Cognitive,Vision,我正在研究MS的新API,在遵循教程的过程中出现了错误。 这是我的全部代码。我试图用这个来获得图像的颜色。 我得到的返回是“Error return CV”,因此我没有得到null imageStream 也没有结果。 提前谢谢你 namespace UWPApp1 { public sealed partial class MainPage : Page { IRandomAccessStream imageStream; const string APIKEY_
namespace UWPApp1
{
public sealed partial class MainPage : Page
{
IRandomAccessStream imageStream;
const string APIKEY_CV = [MyComputerVisionKeyComesHere];
VisionServiceClient VisionClient = new VisionServiceClient(APIKEY_CV);
AnalysisResult analysisResult;
public MainPage()
{
this.InitializeComponent();
}
private async void button_Click(object sender, RoutedEventArgs e)
{
try
{
FileSavePicker fileSavePicker = new FileSavePicker();
fileSavePicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
fileSavePicker.FileTypeChoices.Add("JPEG files", new List<string>() { ".jpg" });
fileSavePicker.SuggestedFileName = "image";
var outputFile = await fileSavePicker.PickSaveFileAsync();
if (outputFile == null)
{
// The user cancelled the picking operation
return;
}
imageStream = await outputFile.OpenAsync(FileAccessMode.Read);
BitmapImage imageTest = new BitmapImage();
imageTest.SetSource(imageStream);
image.Source = imageTest;
}
catch {
textBox.Text = "Error taking photo";
}
}
private async void button1_Click(object sender, RoutedEventArgs e)
{
try
{
VisualFeature[] feature = new VisualFeature[] { VisualFeature.Tags, VisualFeature.Description, VisualFeature.Color };
analysisResult = await VisionClient.AnalyzeImageAsync(imageStream.AsStream(), feature);
if (analysisResult != null)
{
var color = analysisResult.Color;
textBox.Text = "The Accent Color is" + color.AccentColor;
}
else {
textBox.Text = "analysisResult is null";
}
}
catch {
textBox.Text = "Error Return CV";
}
}
}
namespace-UWPApp1
{
公共密封部分类主页面:第页
{
irandomaccesstream-imageStream;
常量字符串APIKEY_CV=[MyComputerViisionKeyComesher];
VisionServiceClient VisionClient=新的VisionServiceClient(APIKEY\u CV);
分析结果分析结果;
公共主页()
{
this.InitializeComponent();
}
专用异步无效按钮\u单击(对象发送方,路由目标)
{
尝试
{
FileSavePicker FileSavePicker=新FileSavePicker();
fileSavePicker.SuggestedStartLocation=PickerLocationId.PicturesLibrary;
fileSavePicker.FileTypeChoices.Add(“JPEG文件”,新列表(){.jpg});
fileSavePicker.SuggestedFileName=“image”;
var outputFile=await fileSavePicker.PickSaveFileAsync();
if(outputFile==null)
{
//用户取消了拣货操作
返回;
}
imageStream=await outputFile.OpenAsync(FileAccessMode.Read);
BitmapImage imageTest=新的BitmapImage();
imageTest.SetSource(imageStream);
image.Source=图像测试;
}
抓住{
textBox.Text=“拍摄照片时出错”;
}
}
专用异步无效按钮1\u单击(对象发送方,路由目标)
{
尝试
{
VisualFeature[]功能=新的VisualFeature[]{VisualFeature.Tags,VisualFeature.Description,VisualFeature.Color};
analysisResult=等待VisionClient.AnalyzeImageAsync(imageStream.AsStream(),功能);
if(analysisResult!=null)
{
var color=分析结果。颜色;
textBox.Text=“强调颜色为”+Color.AccentColor;
}
否则{
textBox.Text=“分析结果为空”;
}
}
抓住{
Text.Text=“错误返回CV”;
}
}
}
我用同样的方法解决了这个问题。
我在代码中添加了imageStream.Seek(0)