Exemple #1
0
        public async Task <ActionResult <ImageClassificationResponseDTO> > Classify(ImageClassificationRequestDTO request)
        {
            var service = new GoogleService();
            var classificationService      = new ClassificationService();
            ImageRecognitionRequestDTO dto = new ImageRecognitionRequestDTO(new Image(request.Base64));

            dto.Features.Add(new Feature("LABEL_DETECTION"));
            dto.Features.Add(new Feature("IMAGE_PROPERTIES"));
            var requestDto = new GoogleVisionRequest();

            requestDto.Requests.Add(dto);
            var visionDto = await service.GetGoogleVisionResponseAsync(requestDto);

            return(classificationService.ConvertToClassificationDto(visionDto));
        }
Exemple #2
0
        public async Task <GoogleVisionResponse> GetGoogleVisionResponseAsync(GoogleVisionRequest dto)
        {
            using (var client = new HttpClient())
            {
                const string key = "AIzaSyBf6l9N5cvfsr4NsOU-SSkXOlHiyYVs6_o";
                var          url =
                    $"https://vision.googleapis.com/v1/images:annotate?key={key}";
                var serializerSettings = new JsonSerializerSettings();
                serializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();

                var httpContent = new StringContent(JsonConvert.SerializeObject(dto, serializerSettings));

                var response = await client.PostAsync(url, httpContent);

                var jsonResponse = await response.Content.ReadAsStringAsync();

                return(JsonConvert.DeserializeObject <GoogleVisionResponse>(jsonResponse));
            }
        }