evaluateDetectionAOS

Оцените метрику подобия средней ориентации для обнаружения объектов

Описание

пример

metrics = evaluateDetectionAOS(detectionResults,groundTruthData) вычисляет среднюю метрику подобия ориентации (AOS). Метрика может использоваться, чтобы измерить результаты обнаружения detectionResults против достоверных данных groundTruthData. AOS является метрикой для измерения эффективности детектора при детектировании повернутых прямоугольников.

metrics = evaluateDetectionAOS(detectionResults,groundTruthData,threshold) дополнительно задает порог перекрытия для назначения обнаружения основной истины ограничивающему прямоугольнику.

Примеры

свернуть все

Задайте ограничительные рамки основной истины для класса транспортного средства. Каждая строка определяет повернутый ограничивающий прямоугольник формы [xcenter, ycenter, width, height, рыскание].

gtbbox = [
    2 2 10 20 45
    80 80 30 40 15
    ];

gtlabel = "vehicle";

Составьте таблицу для хранения достоверных данных.

groundTruthData = table({gtbbox},'VariableNames',gtlabel)
groundTruthData=table
      vehicle   
    ____________

    {2x5 double}

Задайте результаты обнаружения для повернутых ограничивающих рамок, счетов и меток.

bbox = [
    4 4 10 20 20
    50 50 30 10 30
    90 90 40 50 10 ];

scores = [0.9 0.7 0.8]';

labels = [
    "vehicle"
    "vehicle"
    "vehicle"
    ];
labels = categorical(labels,"vehicle");

Создайте таблицу для хранения результатов обнаружения.

detectionResults = table({bbox},{scores},{labels},'VariableNames',{'Boxes','Scores','Labels'})
detectionResults=1×3 table
       Boxes           Scores            Labels      
    ____________    ____________    _________________

    {3x5 double}    {3x1 double}    {3x1 categorical}

Оцените результаты обнаружения по основной истине путем вычисления метрики AOS.

metrics = evaluateDetectionAOS(detectionResults,groundTruthData)
metrics=1×5 table
                AOS        AP       OrientationSimilarity     Precision         Recall   
               ______    _______    _____________________    ____________    ____________

    vehicle    0.5199    0.54545        {4x1 double}         {4x1 double}    {4x1 double}

Входные параметры

свернуть все

Результаты обнаружения, заданные как трехколоночная таблица. Столбцы содержат ограничительные рамки, счета и метки. Ограничивающие прямоугольники могут быть выровнены по оси или повернутыми прямоугольниками.

Ограничительный прямоугольникФорматОписание
Выровненный по оси прямоугольник[x мин, y мин, width, height]Этот тип ограничивающего прямоугольника определяется в пиксельных координатах как матрица M-на-4, представляющая M ограничивающих прямоугольника
Повернутый прямоугольник[x центр, центр y, width, height, yaw]Этот тип ограничивающего прямоугольника определяется в пространственных координатах как матрица M-на-5, представляющая M ограничивающих прямоугольника. Координаты центра и x y представляют центр ограничивающего прямоугольника. Элементы width и height представляют длину куба вдоль осей x и y, соответственно. Этот yaw представляет угол поворота в степенях. Величина поворота вокруг центра ограничивающего прямоугольника измеряется в направлении по часовой стрелке.
   

Маркированные основные истины изображения, заданные как datastore или таблица.

  • Если вы используете datastore, ваши данные должны быть настроены так, чтобы вызывать datastore с read и readall функции возвращают массив ячеек или таблицу с двумя или тремя столбцами. Если выход содержит два столбца, первый столбец должен содержать ограничительные рамки, а второй столбец должен содержать метки {boxes, labels}. Если выход содержит три столбца, второй столбец должен содержать ограничительные рамки, а третий столбец должен содержать метки. В этом случае первый столбец может содержать данные любого типа. Например, первый столбец может содержать изображения или данные облака точек.

    databoxeslabels
    Первый столбец может содержать данные, такие как данные облака точек или изображения.Второй столбец должен быть массивом ячеек, который содержит M на 5 матриц ограничивающих рамок формы [x center, y center, width, height, yaw]. Векторы представляют расположение и размер ограничивающих рамок для объектов на каждом изображении.Третий столбец должен быть массивом ячеек, который содержит M категориальных векторов -by-1, содержащих имена классов объектов. Все категориальные данные, возвращенные datastore, должны содержать одни и те же категории.

    Для получения дополнительной информации смотрите Datastores for Глубокое Обучение (Deep Learning Toolbox).

  • Если вы используете таблицу, таблица должна иметь два или более столбцов.

    databoxes...
    Первый столбец может содержать данные, такие как данные облака точек или изображения.Каждый из остальных столбцов должен быть вектором камеры, который содержит M на 5 матриц, представляющих повернутые прямоугольники. Каждый вращаемый прямоугольник должен иметь форму [x центр, y центр, width, height, yaw]. Векторы представляют расположение и размер ограничивающих рамок для объектов на каждом изображении. 

Порог перекрытия, заданный как неотрицательный скаляр. Коэффициент перекрытия определяется как пересечение над объединением.

Выходные аргументы

свернуть все

Метрики AOS, возвращенные как пятиколоночная таблица. Каждая строка в таблице содержит метрики оценки для класса, который определяется в достоверных данных, содержащихся в groundTruthData вход. Чтобы получить имена классов объектов:

metrics.Properties.RowNames
Эта таблица описывает пять столбцов в metrics таблица.

СтолбецОписание
AOSСреднее значение подобия ориентации
APСредняя точность по всем результатам обнаружения, возвращенная как числовой скаляр. Точность - это отношение истинных положительных образцов ко всем положительным образцам объектов в детекторе, основанное на основной истине.
OrientationSimilarity

Значения подобия ориентации для каждого обнаружения, возвращенные как M -элементный числовой столбец. M больше, чем количество обнаружений, назначенных классу. Первое значение OrientationSimilarity является 1.

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

Precision

Значения точности от каждого обнаружения, возвращенные как M-элементный числовой вектор-столбец. M больше, чем количество обнаружений, назначенных классу. Например, если результаты вашего обнаружения содержат 4 обнаружения с меткой класса 'car', то Precision содержит 5 элементов. Первое значение Precision является 1.

Точность - это отношение истинных положительных образцов ко всем положительным образцам объектов в детекторе, основанное на основной истине.

Recall

Вызовите значения из каждого обнаружения, возвращенные как M-элементный числовой вектор-столбец. M больше, чем количество обнаружений, назначенных классу. Например, если результаты вашего обнаружения содержат 4 обнаружения с меткой класса 'car', то Recall содержит 5 элементов. Первое значение Recall является 0.

Отзыв - это отношение истинных положительных образцов к сумме истинных положительных и ложных отрицательных результатов в детекторе, основанное на основной истине.

Ссылки

[1] Гейгер, А., П. Ленц., и Р. Уртасун. "Готовы ли мы к автономному управлению автомобилем? Набор тестов зрения KITTI ". Конференция IEEE по компьютерному Visin и распознаванию шаблона. IEEE, 2012.

Введенный в R2020a