public async Task <ActionResult <Prediction> > GetClassify([FromBody] BasicRequest request) { if (string.IsNullOrWhiteSpace(request.Url)) { return(BadRequest("url cannot be null or empty")); } var classification = await _formClassifierService.Classify(HttpUtility.HtmlDecode(request.Url)); if (classification != null && classification.Predictions != null && classification.Predictions.Any()) { var first = classification.Predictions.OrderByDescending(o => o.Probability).First(); return(first); } return(null); }
public ClassifiedImage PutImage(NewImage newImage) { ClassifiedImage classifiedImage = db.FindImage(newImage); if (classifiedImage != null) { return(classifiedImage); } classifiedImage = classifier.Classify(newImage); db.PutImage(classifiedImage); return(classifiedImage); }
public async Task <string> Post() { var stream = Request.Body; var tmpFile = Path.GetTempFileName() + ".jpg"; using (var fs = new FileStream(tmpFile, FileMode.Create)) await stream.CopyToAsync(fs); var tag = _imageProcessor.Classify(tmpFile); System.IO.File.Delete(tmpFile); return(tag); }
public static double CalculateCorrectPercentage <T>(IEnumerable <ImageObservation <T> > validationSet, IImageClassifier <ImageObservation <T>, IEnumerable <T> > classifier) { if (validationSet == null) { throw new ArgumentNullException(nameof(validationSet)); } if (classifier == null) { throw new ArgumentNullException(nameof(classifier)); } return(validationSet .Select(obs => (classifier.Classify(obs.Pixels) == obs.Label) ? 1d : 0d) .Average()); }
public async Task Classify(object image) { var probs = await _frameClassifier.Classify(image); Probabilities = probs.ToList(); }