예제 #1
0
 public CustomVisionOfflinePrediction(IOptionsSnapshot <AppSettings> settings, IHostingEnvironment environment, ILogger <CustomVisionOfflinePrediction> logger)
 {
     this.settings    = settings.Value;
     this.environment = environment;
     this.logger      = logger;
     modelSettings    = Settings;
 }
예제 #2
0
        private IEnumerable <LabelConfidence> Process(byte[] image, TensorFlowNeuralNetworkSettings settings)
        {
            var(model, labels) = LoadModelAndLabels(settings.ModelFilename, settings.LabelsFilename);
            var imageTensor = ImageUtil.CreateTensorFromImage(image);

            var result = Eval(model, imageTensor, settings.InputTensorName, settings.OutputTensorName, labels).ToArray();

            IEnumerable <LabelConfidence> labelsToReturn = result
                                                           .Where(c => c.Probability >= settings.Threshold)
                                                           .OrderByDescending(c => c.Probability);

            return(labelsToReturn);
        }