public async Task <OnnxModelOutput> EvaluateAsync(OnnxModelInput input) { OnnxModelOutput output = new OnnxModelOutput(); LearningModelBindingPreview binding = new LearningModelBindingPreview(learningModel); binding.Bind("data", input.data); binding.Bind("classLabel", output.classLabel); binding.Bind("loss", output.Loss); LearningModelEvaluationResultPreview evalResult = await learningModel.EvaluateAsync(binding, string.Empty); return(output); }
public async Task <IReadOnlyList <ImageClassification> > ClassifyImage(byte[] image) { if (!IsInitialized) { await Init(); } var input = await OnnxModelInput.CreateFrom(image); var results = await onnxmodel.EvaluateAsync(input); return(results.Loss .Where(label => label.Value > 0.85) .Select(label => new ImageClassification(label.Key, label.Value)).ToList()); }