exponenta event banner

detectORBFeatures

Обнаружение ключевых точек ORB и возврат ORBPoints объект

Описание

пример

points = detectORBFeatures(I) возвращает ORBPoints объект, содержащий информацию о ключевых точках ORB. Ключевые точки ORB обнаруживаются по входному изображению с помощью метода обнаружения функции Oriented FAST и повернутого BRIEF (ORB).

пример

points = detectORBFeatures(I,Name,Value) указывает параметры, использующие один или несколько аргументов пары имя-значение.

Примеры

свернуть все

Чтение изображения в рабочую область.

I = imread('businessCard.png');

Преобразование изображения в оттенки серого.

I = im2gray(I);

Отображение изображения в градациях серого.

figure
imshow(I)

Figure contains an axes. The axes contains an object of type image.

Обнаружение и сохранение ключевых точек ORB.

points = detectORBFeatures(I);

Отображение изображения в градациях серого и печать обнаруженных ключевых точек ORB. Подавление отображения окружностей вокруг обнаруженных ключевых точек. Ключевые точки ORB обнаруживаются в областях с высокой дисперсией интенсивности.

figure
imshow(I)
hold on
plot(points,'ShowScale',false)
hold off

Figure contains an axes. The axes contains 2 objects of type image, line.

Чтение двоичного изображения в рабочую область.

I = imread('star.png');

Отображение изображения.

figure
imshow(I)

Figure contains an axes. The axes contains an object of type image.

Обнаружение и сохранение ключевых точек ORB. Укажите масштабный коэффициент для разложения изображения как 1,01, а количество уровней разложения как 3.

points = detectORBFeatures(I,'ScaleFactor',1.01,'NumLevels',3);

Отображение изображения и печать обнаруженных ключевых точек ORB. Точки перегиба в двоичном изображении формы обнаруживаются как ключевые точки ORB.

figure
imshow(I)
hold on
plot(points)
hold off

Figure contains an axes. The axes contains 3 objects of type image, line.

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

свернуть все

Входное изображение, указанное как изображение в градациях серого M-by-N. Входное изображение должно быть реальным и непроверенным.

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

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

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

Пример: detectORBFeatures(I,'NumLevels',4)

Масштабный коэффициент для разложения изображения, заданный как разделенная запятыми пара, состоящая из 'ScaleFactor' и скаляр больше 1. Масштабное значение на каждом уровне разложения: ScaleFactor(level-1), где level - любое значение в диапазоне [0, Numlevels-1]. Учитывая входное изображение размера M-by-N, размер изображения на каждом уровне разложения - MScaleFactor (level 1) -by- NScaleFactor (level 1).

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

Количество уровней разложения, указанных как разделенная запятыми пара, состоящая из 'NumLevels' и скаляр, больший или равный 1. Увеличьте это значение, чтобы извлечь ключевые точки из изображения на более высоких уровнях разложения.

Количество уровней разложения для извлечения ключевых точек ограничено размером изображения на этом уровне. Размер изображения на уровне разложения должен быть не менее 63 на 63 для обнаружения ключевых точек. Максимальный уровень разложения рассчитывается как

levelmax = floor (log (min (M, N)) − log (63) log (ScityFactor)) + 1

Если значение по умолчанию или указанное значение 'NumLevels' больше, чем levelmax, функция изменяется NumLevels levelmax и возвращает предупреждение.

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

Область, представляющая интерес для обнаружения ключевых точек, указанная как разделенная запятыми пара, состоящая из 'ROI' и вектор формата [x y width height]. Первые два элемента представляют расположение верхнего левого угла интересующей области. Последние два элемента представляют ширину и высоту интересующей области. Ширина и высота области, представляющей интерес, должна быть больше или равна 63.

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

свернуть все

Ключевые точки ORB, возвращенные как ORBPoints объект. Объект содержит информацию о ключевых точках, обнаруженных во входном изображении.

Алгоритмы

Функция обнаруживает ключевые точки из входного изображения с помощью метода обнаружения функции ORB в [1].

Ссылки

[1] Рублее, Э., В. Рабо, К. Конолиге и Г. Брадски. «ORB: эффективная альтернатива SIFT или SURF». В материалах Международной конференции по компьютерному зрению 2011 года, 2564-2571. Барселона, Испания: IEEE, 2011.

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

Создание кода C/C + +
Создайте код C и C++ с помощью MATLAB ® Coder™

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