exponenta event banner

видение. LocalMaximaFinder

Поиск локальных максимумов в матрицах

Описание

Поиск локальных максимумов в матрицах.

  1. Создать vision.LocalMaximaFinder и задайте его свойства.

  2. Вызовите объект с аргументами, как если бы это была функция.

Дополнительные сведения о работе системных объектов см. в разделе Что такое системные объекты?.

Создание

Описание

пример

LMaxFinder = vision.LocalMaximaFinder возвращает локальный объект maxima finder System, H, который находит локальные максимумы во входных матрицах.

LMaxFinder = vision.LocalMaximaFinder(maxnum,neighborsize) возвращает локальный объект поиска максимумов с помощью MaximumNumLocalMaxima свойство имеет значение maxnum, NeighborhoodSize свойство имеет значение neighborsizeи другие указанные свойства, для которых заданы указанные значения.

LMaxFinder = vision.LocalMaximaFinder(Name,Value) задает свойства, используя одну или несколько пар имя-значение. Заключите каждое имя свойства в кавычки. Например, LMaxFinder = vision.LocalMaximaFinder('ThresholdSource','Property')

Свойства

развернуть все

Если не указано иное, свойства не настраиваются, что означает невозможность изменения их значений после вызова объекта. Объекты блокируются при их вызове, и release функция разблокирует их.

Если свойство настраивается, его значение можно изменить в любое время.

Дополнительные сведения об изменении значений свойств см. в разделе Проектирование системы в MATLAB с использованием системных объектов.

Максимальное число максимумов для поиска, указанное как положительное скалярное целое число.

Размер окрестности для нулевых значений, заданный как двухэлементный вектор

Источник порога, указанный как 'Property' или 'Input port'.

Значение, которое должно совпадать или превышать все максимумы, указанное как скаляр встроенного числового типа данных MATLAB ®. Это свойство применяется при установке ThresholdSource свойство для 'Property'.

Настраиваемый: Да

Индикатор ввода матрицы преобразования Хафа, указанный как true или false. Блок применяет дополнительную обработку, специфичную для преобразования Хафа на правой и левой границах входной матрицы. Установить для этого свойства значение true если вход антисимметричен относительно оси ро и значение тета колеблется в диапазоне от ½ до 0,2 радиан, которые соответствуют матрице Хафа .

Тип данных значений индекса, указанный как double, single , uint8, uint16, или uint32.

Использование

Описание

пример

idx = LMaxFinder(I) возвращает координаты [x y] локальных максимумов в матрице M-by-2, idx. M представляет количество найденных локальных максимумов. Максимальное значение M не может превышать значение, установленное в MaximumNumLocalMaxima собственность.

idx = LMaxFinder(I,threshold) находит локальные максимумы во входном изображении I, используя пороговое значение threshold, при установке ThresholdSource свойство для 'Input port'.

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

развернуть все

Видеокадр, указанный как градации серого или truecolor (RGB).

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

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

развернуть все

Локальные максимумы, возвращаемые в виде M-by-2 матрицы с одноосновными координатами [x y], где M представляет число найденных локальных максимумов.

Функции объекта

Чтобы использовать функцию объекта, укажите object™ System в качестве первого входного аргумента. Например, для освобождения системных ресурсов объекта System с именем obj, используйте следующий синтаксис:

release(obj)

развернуть все

initializeИнициализация видеокадра и точек для отслеживания
stepЗапустить алгоритм объекта System
releaseДеблокирование ресурсов и разрешение изменений значений свойств объекта системы и входных признаков
resetСброс внутренних состояний объекта System

Примеры

свернуть все

Создайте пример ввода.

I = [0 0 0 0 0 0 0 0 0 0 0 0; ...
     0 0 0 1 1 2 3 2 1 1 0 0; ...
     0 0 0 1 2 3 4 3 2 1 0 0; ...
     0 0 0 1 3 5 7 5 3 1 0 0; ... 
     0 0 0 1 2 3 4 3 2 1 0 0; ...
     0 0 0 1 1 2 3 2 1 1 0 0; ...
     0 0 0 0 0 0 0 0 0 0 0 0];
 

Создайте локальный объект поиска максимумов.

 hLocalMax = vision.LocalMaximaFinder('MaximumNumLocalMaxima',1, ...
                                      'NeighborhoodSize',[3,3], ...
                                      'Threshold',1); 

Найдите локальные максимумы.

location = hLocalMax(I)                     
location = 1x2 uint32 row vector

   7   4

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

.

См. также

|

Представлен в R2012b