Esempio n. 1
0
        public async Task <ImageAnalisys> AnalyzeImageAsync(Stream stream, VisualFeatures features = VisualFeatures.None, VisualDetails details = VisualDetails.None)
        {
            var content = new StreamContent(stream);

            content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("application/octet-stream");
            return(await AnalyzeImageAsync(content, features, details));
        }
Esempio n. 2
0
        private async Task <ImageAnalisys> AnalyzeImageAsync(HttpContent content, VisualFeatures features = VisualFeatures.None, VisualDetails details = VisualDetails.None)
        {
            var result = await _client.PostAsync($"analyze?visualFeatures={UrlEncode(features)}&details={UrlEncode(details)}", content);

            if (!result.IsSuccessStatusCode)
            {
                throw new InvalidOperationException(await result.Content.ReadAsStringAsync());
            }
            var stringResult = await result.Content.ReadAsStringAsync();

            var analisys = JsonConvert.DeserializeObject <ImageAnalisys>(stringResult);

            return(analisys);
        }
 void IUtf8JsonSerializable.Write(Utf8JsonWriter writer)
 {
     writer.WriteStartObject();
     if (DefaultLanguageCode != null)
     {
         writer.WritePropertyName("defaultLanguageCode");
         writer.WriteStringValue(DefaultLanguageCode.Value.ToString());
     }
     if (VisualFeatures != null && VisualFeatures.Any())
     {
         writer.WritePropertyName("visualFeatures");
         writer.WriteStartArray();
         foreach (var item in VisualFeatures)
         {
             writer.WriteStringValue(item.ToString());
         }
         writer.WriteEndArray();
     }
     if (Details != null && Details.Any())
     {
         writer.WritePropertyName("details");
         writer.WriteStartArray();
         foreach (var item in Details)
         {
             writer.WriteStringValue(item.ToString());
         }
         writer.WriteEndArray();
     }
     writer.WritePropertyName("@odata.type");
     writer.WriteStringValue(ODataType);
     if (Name != null)
     {
         writer.WritePropertyName("name");
         writer.WriteStringValue(Name);
     }
     if (Description != null)
     {
         writer.WritePropertyName("description");
         writer.WriteStringValue(Description);
     }
     if (Context != null)
     {
         writer.WritePropertyName("context");
         writer.WriteStringValue(Context);
     }
     if (Inputs != null && Inputs.Any())
     {
         writer.WritePropertyName("inputs");
         writer.WriteStartArray();
         foreach (var item in Inputs)
         {
             writer.WriteObjectValue(item);
         }
         writer.WriteEndArray();
     }
     if (Outputs != null && Outputs.Any())
     {
         writer.WritePropertyName("outputs");
         writer.WriteStartArray();
         foreach (var item in Outputs)
         {
             writer.WriteObjectValue(item);
         }
         writer.WriteEndArray();
     }
     writer.WriteEndObject();
 }
Esempio n. 4
0
        public async Task <ImageAnalisys> AnalyzeImageAsync(string url, VisualFeatures features = VisualFeatures.None, VisualDetails details = VisualDetails.None)
        {
            var content = new StringContent($"{{\"url\":\"{url}\"}}", Encoding.UTF8, "application/json");

            return(await AnalyzeImageAsync(content, features, details));
        }