exponenta event banner

cornermetric

(Не рекомендуемый), Создают угловую метрическую матрицу из изображения

cornermetric не рекомендуется. Использование detectHarrisFeatures (Computer Vision Toolbox) или detectMinEigenFeatures (Computer Vision Toolbox) и cornerPoints Объект (Computer Vision Toolbox) в Computer Vision Toolbox™ вместо этого. Для получения дополнительной информации см. Вопросы совместимости.

Описание

пример

C = cornermetric(I) создает угловую метрическую матрицу путем обнаружения угловых функций во входном изображении I.

пример

C = cornermetric(I,method) создает угловую метрическую матрицу путем обнаружения угловых функций во входном изображении I. Угловой метод обнаружения задан method используется для нахождения угловых функций.

пример

C = cornermetric(___,Name,Value)задает опции с помощью одних или нескольких аргументов name-value в дополнение к входным параметрам от любого из предыдущих синтаксисов.

Примеры

свернуть все

Считайте входное изображение в рабочую область.

I = imread('circles.png');

Сгенерируйте угловую метрическую матрицу. Задайте коэффициенты фильтра. Угловой метод обнаружения берет значение по умолчанию 'Harris'.

filter = [0.25 0.5 0.25];
C = cornermetric(I,'FilterCoefficients',filter);

Используйте imregionalmax обнаружить угол показывает (пиксели) из угловой метрической матрицы.

corner_peaks = imregionalmax(C);

Установите значение обнаруженных угловых пикселей к [255 0 0].

corner_idx = find(corner_peaks == true);
[r,g,b] = deal(I);
r(corner_idx) = 255;
g(corner_idx) = 0;
b(corner_idx) = 0;
RGB = cat(3,r,g,b);

Настройте угловую метрическую матрицу для просмотра.

C_adjusted = imadjust(C);

Отобразите оригинальное изображение, настроенную угловую метрику и обнаруженные угловые функции как монтаж. Обнаруженные угловые функции отображены как красные цветные пиксели со значением RGB как [255 0 0].

montage({I,C_adjusted,RGB},'Size',[1 3])
title('Original Image     |    Adjusted Corner Metric Matrix     |     Detected Corner Features');

Figure contains an axes object. The axes object with title Original Image | Adjusted Corner Metric Matrix | Detected Corner Features contains an object of type image.

Считайте входное изображение в рабочую область.

I = imread('bag.png');

Сгенерируйте угловую метрическую матрицу. Задайте метод как 'MinimumEigenvalue'.

C = cornermetric(I,'MinimumEigenvalue');

Используйте imregionalmax обнаружить угол показывает (пиксели) из угловой метрической матрицы.

corner_peaks = imregionalmax(C);

Установите значение обнаруженных угловых пикселей к [255 0 0].

corner_idx = find(corner_peaks == true);
[r g b] = deal(I);
r(corner_idx) = 255;
g(corner_idx) = 0;
b(corner_idx) = 0;
RGB = cat(3,r,g,b);

Настройте угловую метрическую матрицу для просмотра.

C_adjusted = imadjust(C);

Отобразите оригинальное изображение, настроенную угловую метрику и обнаруженные угловые функции как монтаж. Обнаруженные угловые функции отображены как красные цветные пиксели со значением RGB как [255 255 0].

montage({I,C_adjusted,RGB},'Size',[1 3])
title('Original Image    |    Adjusted Corner Metric Matrix     |     Detected Corner Features');

Figure contains an axes object. The axes object with title Original Image | Adjusted Corner Metric Matrix | Detected Corner Features contains an object of type image.

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

свернуть все

Введите изображение в виде 2D бинарного изображения или 2D полутонового изображения размера m-by-n.

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

Угловой метод обнаружения в виде любого 'Harris' или 'MinimumEigenvalue'. Если метод:

  • 'Harris', функция создает угловую метрическую матрицу при помощи углового детектора Харриса.

  • 'MinimumEigenvalue', функция создает угловую метрическую матрицу при помощи Ши и минимального подхода собственного значения Томэзи.

Если method не задан, набор значения по умолчанию как 'Harris' и функция использует угловой детектор Харриса для обнаружения угловых функций.

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

Аргументы name-value

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

Пример: cornermetric(I,'SensitivityFactor',0.1)

Коэффициенты 1D пространственной маски фильтра в виде разделенной запятой пары, состоящей из 'FilterCoefficients' и n - вектор элемента. Значение n должно быть нечетным и больше, чем или равным 3. По умолчанию 1D пространственная маска фильтра является вектором с 5 элементами, и коэффициенты фильтра по умолчанию вычисляются с помощью fspecial('gaussian',[5 1],1.5).

Фактор чувствительности в виде разделенной запятой пары, состоящей из 'SensitivityFactor' и числовой скаляр в интервале (0, 0.25). Для меньших значений фактора чувствительности алгоритм, более вероятно, обнаружит более резкие углы.

Примечание

Пара "имя-значение" 'SensitivityFactor' допустимо только если вход method 'Harris'.

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

свернуть все

Угловая метрическая матрица, возвращенная как m-by-n матрица одного размера с входом, отображает I.

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

Советы

corner и cornermetric функции оба обнаруживают углы в изображениях. Для большинства приложений используйте оптимизированный corner функционируйте, чтобы найти углы за один шаг. Если вы хотите большее управление угловым выбором, используйте cornermetric функция, чтобы вычислить угловую метрическую матрицу. Затем напишите свой собственный алгоритм, чтобы найти пиковые значения в угловой метрической матрице.

Вопросы совместимости

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

Не рекомендуемый запуск в R2016a

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

|

Представленный в R2008b