示例#1
0
        public TensorflowModelOutput Evaluate(TensorfloModelInput input)
        {
            var outputNames = new[] { OutputName };
            var outputs     = new float[labels.Count()];

            inferenceInterface.Feed(InputName, input.Data, 1, InputSize, InputSize, 3);
            inferenceInterface.Run(outputNames);
            inferenceInterface.Fetch(OutputName, outputs);

            return(TensorflowModelOutput.CreateTensorflowModelOutput(labels, outputs));
        }
示例#2
0
        public async Task <IReadOnlyList <ImageClassification> > ClassifyImage(byte[] image)
        {
            if (!IsInitialized)
            {
                await Init();
            }

            var input   = TensorfloModelInput.CreateFrom(image);
            var results = tensorflowModel.Evaluate(input);

            return(results.Loss
                   .Select(p => new ImageClassification(p.Key, p.Value))
                   .Where(p => p.Probability > 0.85)
                   .ToList());
        }