コード例 #1
0
ファイル: MachineLearning.cs プロジェクト: malirezai/slalom
        /// <summary>
        /// Returns prediction or null if an error occurs.
        /// </summary>
        public virtual string Predict(string thumbnailUrl)
        {
            Logger.Log($"Making a prediction of {CustomVisionModelName} for: " + thumbnailUrl);

            predictionApi = new CustomVisionPredictionClient()
            {
                ApiKey   = CustomVisionKey,
                Endpoint = CustomVisionEndPoint
            };

            try
            {
                PredictionModels.ImageUrl thumbnail = new PredictionModels.ImageUrl(CropThumbnailUrl + thumbnailUrl);
                var result = predictionApi.ClassifyImageUrl(ProjectId, CustomVisionModelName, thumbnail);

                //LogPredicitions(result.Predictions);

                return(GetHighestRankedPrediction(result.Predictions));
            }
            catch (PredictionModels.CustomVisionErrorException e)
            {
                Logger.Log($"Error making prediction for {thumbnailUrl}\n\t" +
                           e.Response.Content, e);
                return(null);
            }
        }
コード例 #2
0
ファイル: GetGarbage.cs プロジェクト: meghnakr/EcoHunt
        public static bool CheckGarbage(String link) //Give a link to image file
        {
            string predictionKey = EcoHunt.API_Keys.AzurePredictionKey;
            string endpoint      = EcoHunt.API_Keys.AzureEndpoint;
            string name          = EcoHunt.API_Keys.AzurepublishedName;
            string projectId     = EcoHunt.API_Keys.AzureProjectID;

            CustomVisionPredictionClient predictionAPI = new CustomVisionPredictionClient()
            {
                ApiKey   = predictionKey,
                Endpoint = endpoint
            };

            var uri      = new Uri(link);
            var imageUrl = new Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction.Models.ImageUrl(link);
            var result   = predictionAPI.ClassifyImageUrl(new Guid(projectId), name, imageUrl);
            var s        = result.Predictions;
            var x        = s[0].TagName;

            // Loop over each prediction and write out the results
            if (result.Predictions[0].TagName.Equals("Garbage"))
            {
                return(true);
            }
            return(false);
        }
コード例 #3
0
        private void predictImage()
        {
            CustomVisionPredictionClient predictionApi = AuthenticatePrediction(endpoint, predictionKey);

            Console.WriteLine("Making a prediction:");
            Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction.Models.ImageUrl url = new Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction.Models.ImageUrl(TextBox1.Text);
            System.Guid guid   = new Guid(projekctId);
            var         result = predictionApi.ClassifyImageUrl(guid, publishedModelName, url);

            foreach (var c in result.Predictions)
            {
                Label1.Text = Label1.Text + c.TagName + ": " + c.Probability + " ";
            }
        }
コード例 #4
0
        public static void PerformPrediction(CustomVisionPredictionClient client, string imageUrl,
                                             Guid projectId, string publishedName)
        {
            var url = new Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction.Models.ImageUrl(imageUrl);

            Console.WriteLine("Making a prediction:");
            var result = client.ClassifyImageUrl(projectId, publishedName, url);

            // Loop over each prediction and write out the results
            foreach (var c in result.Predictions)
            {
                Console.WriteLine($"\t{c.TagName}: {c.Probability:P1}");
            }
            Console.ReadKey();
        }
コード例 #5
0
        static void Main(string[] args)
        {
            const string PREDICTION_KEY = "PONER AQUI LA CLAVE";
            const string ENDPOINT       = "PONER AQUI LA URL DEL ENDPOINT";
            const string PROJECT_ID     = "PONER AQUI EL ID DEL PROYECTO";
            const string PUBLISHED_NAME = "PONER AQUI EL NOMBRE DE LA ITERACION";
            const string IMAGE_BASE_URL = "https://moderatorsampleimages.blob.core.windows.net/samples";

            CustomVisionPredictionClient client = new CustomVisionPredictionClient(new ApiKeyServiceClientCredentials(PREDICTION_KEY))
            {
                Endpoint = ENDPOINT
            };
            ImageUrl imagen = new ImageUrl($"{IMAGE_BASE_URL}/sample8.png");

            //Invocamos el método de la API para clasificar la imagen
            ImagePrediction resultado = client.ClassifyImageUrl(new Guid(PROJECT_ID), PUBLISHED_NAME, imagen);

            //Procesamos el resultado
            foreach (var c in resultado.Predictions)
            {
                Console.WriteLine($"\t{c.TagName}:{c.Probability}");
            }
        }
コード例 #6
0
        public IList <Result> predictingImages(String imgUrl)
        {
            IList <Result> predictionResult       = new List <Result>();
            CustomVisionPredictionClient endpoint = new CustomVisionPredictionClient()
            {
                ApiKey   = predictionKey,
                Endpoint = SouthCentralUsEndpoint
            };

            projectID = new Guid(ConfigurationManager.AppSettings["CustomVisionProjectID"]);
            Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction.Models.ImageUrl        testImage = new Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction.Models.ImageUrl(imgUrl);
            Microsoft.Azure.CognitiveServices.Vision.CustomVision.Prediction.Models.ImagePrediction result1   = endpoint.ClassifyImageUrl(projectID, "Veg Classifier", testImage);
            foreach (var output in result1.Predictions)
            {
                Result finalresult = new Result();
                finalresult.probability = output.Probability * 100;
                finalresult.tagName     = output.TagName;
                predictionResult.Add(finalresult);
            }
            return(predictionResult);
        }