public async Task <object> UploadImageToAzure(CustomVisionBatchImage customVisionBatchImage, Guid projectId)
        {
            CustomVisionTrainingClient trainingApi = AuthenticateTraining(customVisionBatchImage.Endpoint, customVisionBatchImage.TrainingKey);
            var currentProject = await trainingApi.GetProjectAsync(projectId);

            // Create the ImageUrlBatch to send to CustomVision
            List <ImageUrlCreateEntry> singleUrlEntry = new List <ImageUrlCreateEntry>();

            foreach (CustomVisionImage customVisionImage in customVisionBatchImage.BatchImage)
            {
                singleUrlEntry.Add(new ImageUrlCreateEntry(customVisionImage.ImageUri));
            }

            ImageUrlCreateBatch batchEntry = new ImageUrlCreateBatch(singleUrlEntry);
            var           isUploaded       = trainingApi.CreateImagesFromUrlsAsync(projectId, batchEntry);
            List <string> createdImageUris = new List <string>();

            foreach (ImageCreateResult image in isUploaded.Result.Images)
            {
                createdImageUris.Add(image.Image.OriginalImageUri);
            }

            var response = new
            {
                project_id          = projectId,
                project_name        = currentProject.Name,
                image_count         = isUploaded.Result.Images.Count,
                image_create_result = createdImageUris
            };

            return(response);
        }
Пример #2
0
        public async Task <object> UploadImageToAzure(CustomVisionBatchImage customVisionBatchImage, Guid id)
        {
            var response = await _customVisionService.UploadImageToAzure(customVisionBatchImage, id);

            return(response);
        }