selectStrongestBbox

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

Синтаксис

[selectedBbox,selectedScore] = selectStrongestBbox(bbox,score)
[selectedBbox,selectedScore,index] = selectStrongestBbox(bbox,score)
[___] = selectStrongestBbox(___,Name,Value)

Описание

пример

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

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

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

Примеры

свернуть все

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

peopleDetector = vision.PeopleDetector('ClassificationThreshold',...
        0,'MergeDetections',false);

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

I = imread('visionteam1.jpg'); 
[bbox,score] = step(peopleDetector,I); 
I1 = insertObjectAnnotation(I,'rectangle',bbox,...
        cellstr(num2str(score)),'Color','r');

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

[selectedBbox,selectedScore] = selectStrongestBbox(bbox,score); 
I2 = insertObjectAnnotation(I,'rectangle',selectedBbox,...
        cellstr(num2str(selectedScore)),'Color','r');

Отобразите обнаружение до и после подавления.

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

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

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

свернуть все

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

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

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

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

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

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (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

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

свернуть все

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

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

Множество выбранных ограничительных рамок, возвращенных как M-by-1 вектор. M th счет в selectedScore вывод соответствует M th ограничительная рамка в selectedBbox вывод.

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

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

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

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

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

|

Введенный в R2014b