public static async Task IdentifyGear(byte[] image, TraceWriter log) { using (Stream stream = new MemoryStream(image)) { var analysisResult = await _visionClient.GetTagsAsync(stream); var tags = analysisResult.Tags.ToList(); if (tags.Any(t => t.Name == "hat") || tags.Any(t => t.Name == "helmet") || tags.Any(t => t.Name == "headdress")) { log.Info("Safety Hat = CHECK"); data.hat = true; } if (tags.Any(t => t.Name == "orange") || tags.Any(t => t.Name == "yellow")) { log.Info("Safety Vest = CHECK"); data.vest = true; } if (!data.IsSafe()) { throw new NoGearException(); } } }
private async Task <AnalysisResult> UploadAndGetTagsForImage(string imageFilePath) { using (Stream imageFileStream = File.OpenRead(imageFilePath)) { AnalysisResult analysisResult = await _visionServiceClient.GetTagsAsync(imageFileStream); return(analysisResult); } }
public async Task <bool> IsGoat(string imageUri) { var analysisResult = await _visionServiceClient.GetTagsAsync(imageUri); return(analysisResult.Tags.Any(tag => tag.Name.Equals("goat", StringComparison.InvariantCultureIgnoreCase))); }