Выбрать наиболее сильные ограничивающие рамки из перекрывающихся кластеров
[ возвращает выбранные ограничивающие рамки с высоким показателем достоверности. Функция использует нексимальное подавление, чтобы исключить перекрывающиеся ограничивающие рамки из 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, imshow(I2);
title('Detected people and detection scores after suppression');
bbox - Ограничивающие рамкиОграничивающие прямоугольники, определенные как M-4 или нередкая числовая матрица M-5. M - количество ограничивающих прямоугольников. Каждая строка матрицы определяет ограничительную рамку как прямоугольник, выровненный по оси, или как повернутый прямоугольник. В этой таблице описывается формат каждой ограничивающей рамки.
| Ограничивающая рамка | Описание |
|---|---|
| Выровненный по оси прямоугольник |
Определяется в координатах пикселей как M-by-4 числовая матрица со строками вида [x y w h] , где :
|
| Повернутый прямоугольник |
Определяется в пространственных координатах как M-by-5 числовая матрица со строками вида [xctr yctr xlen ylen yaw ], где:
|
Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32
score - Оценка достоверностиОценка достоверности, указанная как вектор 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'.'RatioType' - Знаменатель коэффициента перекрытия ограничивающей рамки'Union' (по умолчанию) | 'Min'Тип отношения, указанный как символьный вектор 'Union' или 'Min'.
Задайте тип отношения как 'Union' чтобы вычислить отношение как площадь пересечения между bboxA и bboxB, деленное на площадь союза двух.
Задайте тип отношения как 'Min' чтобы вычислить отношение как площадь пересечения между bboxA и bboxB, деленное на минимальную площадь двух ограничивающих рамок.

Типы данных: char
'OverlapThreshold' - Порог коэффициента перекрытия0.5 (по умолчанию) | скаляр в диапазоне [0 1]Пороговое значение коэффициента перекрытия, указанное как пара, разделенная запятыми, состоящая из 'OverlapThreshold'и скаляр в диапазоне [0 1]. Если коэффициент перекрытия превышает заданный порог, функция удаляет ограничивающие рамки вокруг опорного поля. Уменьшите это значение, чтобы уменьшить количество выбранных ограничивающих прямоугольников. Однако при слишком большом уменьшении коэффициента перекрытия можно исключить поля, представляющие объекты, близкие друг к другу на изображении.
Типы данных: single | double
'NumStrongest' - Максимальное количество сильнейших коробокinf (по умолчанию) | положительный скалярМаксимальное количество наиболее сильных полей, указанное как пара, разделенная запятыми, состоящая из 'NumStrongest' и inf или положительный скаляр. Используйте этот аргумент, чтобы сократить время обработки, если вы априори знаете о максимальном количестве полей. Задайте значение inf для выбора всех самых сильных неперекрывающихся ограничивающих прямоугольников.
selectedBbox - Выбранные ограничивающие рамкиВыбранные ограничивающие рамки, возвращаемые в виде M-by-4 или матрицы M-by-5. Четырехэлементные векторы представляют выровненные по оси прямоугольники, а пятиэлементные векторы представляют повернутые прямоугольники.
selectedBbox вывод возвращает выбранные ограничивающие рамки из bbox входные данные с наивысшим показателем достоверности. Функция использует нексимальное подавление для устранения перекрывающихся ограничивающих рамок.
Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32
selectedScore - Количество выбранных ограничивающих прямоугольниковКоличество выбранных ограничивающих рамок, возвращаемых в виде вектора M-by-1. Оценка Mth в selectedScore вывод соответствует M-ой ограничительной рамке в selectedBbox выход.
Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32
index - Индекс выбранных ограничивающих прямоугольниковИндекс выбранных ограничивающих рамок, возвращаемый в виде вектора M-by-1. index вектор содержит индексы к выбранным полям в bbox вход.
Типы данных: double
Примечания и ограничения по использованию:
Создание кода поддерживается только для числовых labels.
Создание кода не поддерживается для вводов ограничительной рамки повернутого прямоугольника.
Примечания и ограничения по использованию:
Генерация кода CUDA ® поддерживается только для числовыхlabels.
Создание кода CUDA не поддерживается для входных данных ограничительной рамки повернутого прямоугольника.
Примечания и ограничения по использованию:
Массивы GPU не поддерживаются для повернутых входных данных ограничивающих прямоугольников.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.