exponenta event banner

selectStrongestBbox

Выбрать наиболее сильные ограничивающие рамки из перекрывающихся кластеров

Описание

пример

[selectedBbox,selectedScore] = selectStrongestBbox(bbox,score) возвращает выбранные ограничивающие рамки с высоким показателем достоверности. Функция использует нексимальное подавление, чтобы исключить перекрывающиеся ограничивающие рамки из bbox вход.

[selectedBbox,selectedScore,index] = selectStrongestBbox(bbox,score) дополнительно возвращает index вектор, связанный с selectedBbox. Этот вектор содержит индексы выбранных полей в bbox вход.

[___] = selectStrongestBbox(___,Name,Value) использует дополнительные параметры, указанные одним или несколькими Name,Value аргументы пары.

Примеры

свернуть все

Загрузите предварительно обученный датчик характеристик канала (ACF).

peopleDetector = peopleDetectorACF();

Обнаружение людей в изображении. Отключите немаксимальное подавление по умолчанию, используемое детектором.

I = imread('visionteam1.jpg'); 
[bbox,score] = detect(peopleDetector,I,'SelectStrongest',false); 

Запустить немаксимальное подавление с пользовательским порогом.

I = imread('visionteam1.jpg'); 
[selectedBbox,selectedScore] = selectStrongestBbox(bbox,score,'OverlapThreshold',0.3);

Просмотрите результаты.

I1 = insertObjectAnnotation(I,'rectangle',bbox,score,'Color','r');
I2 = insertObjectAnnotation(I,'rectangle',selectedBbox,selectedScore,'Color','r');

figure, imshow(I1);
title('Detected people and detection scores before suppression'); 

Figure contains an axes. The axes with title Detected people and detection scores before suppression contains an object of type image.

figure, imshow(I2);
title('Detected people and detection scores after suppression');

Figure contains an axes. The axes with title Detected people and detection scores after suppression contains an object of type image.

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

свернуть все

Ограничивающие прямоугольники, определенные как M-4 или нередкая числовая матрица M-5. M - количество ограничивающих прямоугольников. Каждая строка матрицы определяет ограничительную рамку как прямоугольник, выровненный по оси, или как повернутый прямоугольник. В этой таблице описывается формат каждой ограничивающей рамки.

Ограничивающая рамкаОписание
Выровненный по оси прямоугольник

Определяется в координатах пикселей как M-by-4 числовая матрица со строками вида [x y w h] , где :

  • M - количество выровненных по оси прямоугольников.

  • x и y укажите левый верхний угол прямоугольника.

  • w задает ширину прямоугольника, которая является его длиной вдоль оси X.

  • h определяет высоту прямоугольника, которая является его длиной вдоль оси Y.

Повернутый прямоугольник

Определяется в пространственных координатах как M-by-5 числовая матрица со строками вида [xctr yctr xlen ylen yaw ], где:

  • M - число повернутых прямоугольников.

  • xctr и yctr указывают центр прямоугольника.

  • xlen задает ширину прямоугольника, которая является его длиной вдоль оси X перед поворотом.

  • ylen задает высоту прямоугольника, которая является его длиной вдоль оси Y перед поворотом.

  • угол поворота в градусах. Вращение по часовой стрелке - положительное вокруг центра ограничивающей рамки.

Square rectangle rotated by -30 degrees.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Оценка достоверности, указанная как вектор M-by-1. M-й балл соответствует M-й ограничивающей рамке в bbox вход. selectStrongestBbox функция использует нексимальное подавление, чтобы исключить перекрывающиеся ограничивающие рамки и связать оценку достоверности с рамками. Более высокий балл представляет более высокую уверенность в сохранении ограничивающей рамки. score входные данные должны быть действительными, конечными и непарабельными.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'RatioType','Union' устанавливает 'RatioType' свойство для 'Union'.

Тип отношения, указанный как символьный вектор 'Union' или 'Min'.

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

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

Типы данных: char

Пороговое значение коэффициента перекрытия, указанное как пара, разделенная запятыми, состоящая из 'OverlapThreshold'и скаляр в диапазоне [0 1]. Если коэффициент перекрытия превышает заданный порог, функция удаляет ограничивающие рамки вокруг опорного поля. Уменьшите это значение, чтобы уменьшить количество выбранных ограничивающих прямоугольников. Однако при слишком большом уменьшении коэффициента перекрытия можно исключить поля, представляющие объекты, близкие друг к другу на изображении.

Типы данных: single | double

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

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

свернуть все

Выбранные ограничивающие рамки, возвращаемые в виде M-by-4 или матрицы M-by-5. Четырехэлементные векторы представляют выровненные по оси прямоугольники, а пятиэлементные векторы представляют повернутые прямоугольники.

selectedBbox вывод возвращает выбранные ограничивающие рамки из bbox входные данные с наивысшим показателем достоверности. Функция использует нексимальное подавление для устранения перекрывающихся ограничивающих рамок.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Количество выбранных ограничивающих рамок, возвращаемых в виде вектора M-by-1. Оценка Mth в selectedScore вывод соответствует M-ой ограничительной рамке в selectedBbox выход.

Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32

Индекс выбранных ограничивающих рамок, возвращаемый в виде вектора M-by-1. index вектор содержит индексы к выбранным полям в bbox вход.

Типы данных: double

Расширенные возможности

..
Представлен в R2014b