Есть ли способ получить значения с низкой степенью достоверности для объектов, найденных на изображениях, с помощью Microsoft Azure Cognitive Services ComputerVision?

#c# #azure #azure-cognitive-services

Вопрос:

Я использую Microsoft.Azure.CognitiveServices.Vision.ComputerVision API для обнаружения очков на фотографиях. Если очки обнаружены, я получаю координаты пикселей и значение уверенности, которое, как я заметил, всегда выше 0.5 . Поэтому я пытаюсь получить возвращаемое значение, даже если уверенность ниже этого (так что даже если API недостаточно уверен в том, что на картинке есть очки). Метод анализа изображения выглядит следующим образом:

 public static async Task AnalyzeImageUrl(ComputerVisionClient client, string imageUrl) {  // Creating a list that defines the features to be extracted from the image.   var features = new Listlt;VisualFeatureTypes?gt;  {  VisualFeatureTypes.Objects  };  Console.WriteLine("Analyzing objects in image...");  Console.WriteLine();  // Analyze the URL image   var results = await client.AnalyzeImageAsync(imageUrl, features);  Console.WriteLine("Objects:");  foreach (var obj in results.Objects)  {  Console.WriteLine(@$"{obj.ObjectProperty} with confidence {obj.Confidence} at   location {obj.Rectangle.X}, {obj.Rectangle.X   obj.Rectangle.W}, {obj.Rectangle.Y}, {obj.Rectangle.Y   obj.Rectangle.H}");  } }  

Комментарии:

1. Не могли бы вы, пожалуйста, поделиться образцом изображения, которое вы пытаетесь.

Ответ №1:

Если вы упоминаете API. Мне жаль, что есть некоторые ограничения. Важно отметить ограничения обнаружения объектов, чтобы вы могли избежать или смягчить последствия ложных негативов (пропущенных объектов) и ограниченной детализации.

Объекты, как правило, не обнаруживаются, если они небольшие (менее 5% изображения). Объекты, как правило, не обнаруживаются, если они расположены близко друг к другу (например, стопка пластин). Объекты не различаются по бренду или названиям продуктов (например, различные виды газированных напитков на полке магазина). Однако вы можете получить информацию о бренде из изображения, используя функцию определения бренда.

Эти низкие результаты не вернутся. Есть ли какой-либо сценарий, при котором вам нужны результаты с низким баллом? Я могу сообщить об этом группе продуктов, чтобы мы могли оптимизировать угловой случай. Спасибо.

Комментарии:

1. Спасибо за ваш ответ! Я попробовал обнаружение объектов примерно на 70 фотографиях, на которых я ношу очки разного типа, и оно обнаружило очки примерно в 85% этих изображений с максимальной достоверностью 0,798 и минимальной достоверностью 0,513. Сценарий, в котором мне нужны результаты с низким баллом, будет заключаться в том, что я увижу, есть ли на фотографиях, где не было обнаружено очков, уверенность 0 или, скажем, 0,3. В более позднем случае было бы неплохо иметь возможность выбрать, следует ли по-прежнему считать эти фотографии «обнаруженными очками».

2. Также небольшой дополнительный вопрос: я заметил, что API иногда распознает очки как «очки», а в некоторых случаях как «очки», и я, похоже, не могу найти разницу. Есть ли для этого причина? Еще раз спасибо!