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)); }
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(); }
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)); }