public static IComputerVision CreateVisionClass(VisionAPIType type, AnalyzeOptions opt) { IComputerVision res = null; switch (type) { case VisionAPIType.AzureVisionAnalyze: res = new AzureVisionAnalyze(opt); break; case VisionAPIType.BaiduAnimalAnalyze: res = new BaiduVisionAnalyze(opt); break; case VisionAPIType.BaiduEasyDL: res = new BaiduEazyDL(opt); break; } return(res); }
private async void BaiduAnalyzeImage(string path) { var watch = System.Diagnostics.Stopwatch.StartNew(); BaiduVisionAnalyze ana = new BaiduVisionAnalyze(); ana.Key = "vKHUR4T6BMeO3yTVwW3nR1NN"; ana.SKey = "u8A17o87RD7Q35lU8qQKjxrDs1bguBrD"; Task <BaiduAnalyzeResult> resTask = ana.UploadAndAnalyzeImage(path); BaiduAnalyzeResult res = await resTask; //watch end watch.Stop(); var elapsedMs = watch.ElapsedMilliseconds; //write result this.richTextBox1.Text = $"is animal:{res.IsAnimal()}\n"; this.richTextBox1.Text += $"run with {imageListView1.SelectedItems[0].FileName}\n"; this.richTextBox1.Text += $"used {elapsedMs} ms\n"; this.richTextBox1.Text += VisCommonClass.JsonPrettyPrint(JsonConvert.SerializeObject(res)); MessageBox.Show($"cost {elapsedMs}ms"); }