Scientific journal
Scientific Review. Technical science
ISSN 2500-0799
ПИ №ФС77-57440

COMPARATIVE ANALYSIS OF METHODS FOR DETERMINING REFERENCE POINTS IN IMAGES

Nazhimova N.A. 1 Kiselev A.A. 1
1 Nizhny Novgorod state technical University named after R.E. Alekseev
2233 KB
Feature extraction is one of the most important tasks of image processing, which includes search, description and classification of reference points (features) in an image. These points serve as a basis for further comparison of images, detection of changes and deformations on them, and are also used in metrics to determine the differences between images. This paper discusses five of the most popular and utilized methods of feature detection and description: SIFT (Scale-Invariant Feature Transform), FAST (Features from Accelerated Segment Test), BRIEF (Binary Robust Independent Elementary Features), ORB (Oriented FAST and Rotated BRIEF), and AKAZE (Accelerated KAZE). A comparative analysis of these methods based on the quality of point detection and their execution time on a set of images containing high density of small details captured at different times of the year and under different illumination conditions is carried out. The above algorithms are also compared with the self-learning SuperPoint algorithm, which uses a pair of decoder-encoder and convolutional neural networks to identify and describe features. The aim of the paper is to identify the most accurate and least computationally expensive method of feature detection.
features
SuperPoint
image processing
descriptors

Одной из наиболее часто встречающихся задач обработки изображений является задача определения опорных точек. Опорные точки – это некие точки на изображении, имеющие уникальные свойств, например точки:

1) с наибольшим градиентом в определенной области;

2) с наибольшей или наименьшей яркостью;

3) находящиеся в углах проходящих по изображению линий, и т.д.

В дальнейшем определенные точки используются в таких задачах, как навигация [1], склейка панорамных изображений [2], определение позы человека или его эмоций по лицу [3], создание дополненной реальности [4] и т.д.

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

Для однозначного определения опорных точек используются дескрипторы, которые в зависимости от метода могут являться векторами или матрицами значений, вычисляемыми для каждой опорной точки и указывающими на ее основные признаки.

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

Материал и методы исследования

Для оценки методов использовался набор из 7366 изображений, созданных из фотографий местности, отснятых со спутника.

missing image file

Рис. 1. Пример изображений

Такие изображения содержат большое количество мелких деталей и шума, что позволит проверить методы в более сложных условиях. Каждая пара изображений в наборе соответствует одному участку местности. На изображениях показан участок размером 1200×1200 метров, погрешность смещения изображений относительно друг друга составила 0,68 метра. Все изображения трехканальные, преобразованные к размеру 500×500 пикселей. Пример изображений приведен на рисунке 1. Как видно из примера, изображения были получены в разное время суток и года, отличаются также и настройки камеры при съемке, что приводит к различиям в цветовых пространствах изображений.

Для проведения тестирования использовались следующие методы определения опорных точек на изображениях:

1) SIFT (Scale Invariant Feature Transform) [5] – метод, использующий для определения опорных точек пирамиду изображений различных размеров, к которой применяется фильтр Гаусса. Опорные точки определяются как локальные максимумы на изображениях нескольких уровней увеличения при помощи разности гауссианов. В качестве определений используются гистограммы направлений градиентов, полученные в опорной точке и ее окрестностях, представленные в виде 128-мерной матрицы. Поскольку опорная точка является локальным максимумом, в окрестностях этой точки лежат участки с отличающимися градиентами, таким способом достигается инвариантность метода к повороту изображения. Использование пирамиды изображений также делает этот метод инвариантным к масштабированию;

2) FAST (Features from Accelerated Segment Test) [6] – эвристический метод, отличающийся высокой скоростью вычисления. Для определения опорной точки анализируются 4 точки, находящиеся на расстоянии в 3 пикселя от потенциальной опорной. Если как минимум 3 из них темнее или светлее опорной, проверяются все 16 точек, лежащие на таком же расстоянии от нее. Если из них 12 последовательных точек темнее или светлее, точка помечается как опорная;

3) BRIEF (Binary Robust Independent Elementary Features) [7] – быстрый метод определения дескрипторов опорных точек. Дескрипторы определяются с помощью бинарных сравнений яркостей пикселей между опорной точкой и 256 случайными точками в области 31×31 пиксель вокруг опорной. Полученные дескрипторы инвариантны к освещению и искажению перспективы, но неустойчивы к повороту;

4) AKAZE (Accelerated-KAZE) [8] – система из детектора и дескриптора, основанная, как и SIFT, на пирамиде изображений, однако масштаб увеличения пирамиды в данном случае нелинеен, что позволило увеличить скорость нахождения опорных точек. В отличие от SIFT, опорные точки определяются с помощью определителя Гессиана пикселей в окрестности потенциальной опорной точки. Дескриптор вычисляется похожим на BRIEF методом, но при этом учитываются и значения градиентов по осям, проходящим через опорную точку;

5) ORB (Oriented FAST and Rotated BRIEF) [9] – этот метод появился в результате развития и объединения методов FAST и BRIEF с целью уменьшения влияния поворота изображения на качество дескрипторов. Это было достигнуто путем вычисления поворота опорной точки и последующего поворота матрицы координат точек, использующихся при расчете BRIEF;

missing image file

Рис. 2. Схема SuperPoint

6) SuperPoint [10] – самообучающаяся нейронная сеть, принимающая на вход одноканальное изображение любого размера. Сеть с помощью последовательного применения нескольких операций свертки кодирует изображение в набор особенностей, а далее декодирует эти особенности в два набора – опорных точек изображения и их дескрипторов (вектор из 256 чисел). Схема сети приведена на рисунке 2.

Соответственно, поскольку FAST определяет только положение опорных точек, а BRIEF – только их дескрипторы, эти два метода использовались в паре между собой.

Для сопоставления полученных опорных точек и их дескрипторов для ORB и FAST+BRIEF использовалось расстояние Хэмминга, для SIFT, AKAZE и SuperPoint – метрика L1. Количество определенных опорных точек для каждого метода ограничивалось 100. Качество определения определялось по числу сопоставленных опорных точек и среднему расстоянию между их координатами на разных изображениях.

Для сравнения производительности также было замерено среднее время определения и сопоставления опорных точек между двумя изображениями.

Результаты исследования и их обсуждение

Результат тестирования представлен в таблице 1. Для всех методов, кроме SuperPoint, изображения были представлены в двух вариантах – трехканальное цветное и одноканальное в градациях серого. Жирным шрифтом выделены наилучшие результаты – наибольшее число определенных точек и наименьшее расстояние между ними. Параметры методов были подобраны для получения наилучшего результата.

Также была определена производительность методов как среднее время определения и сопоставления 100 опорных точек по всему набору данных, результат представлен в таблице 2.

Далее, на рисунках 3–7, представлены результаты сопоставления точек на паре изображений, приведенной выше. Линиями соединены точки, определенные как похожие на изображениях.

Таблица 1

Результаты тестирования

Метод

Число каналов изображения

Количество совпадающих точек

Среднее расстояние между точками

FAST+BRIEF

1

16.230

3.421

3

15.862

3.537

SIFT

1

18.561

40.133

3

18.065

34.106

AKAZE

1

19.658

35.102

3

20.184

38.862

ORB

1

28.006

24.741

3

22.186

28.340

SuperPoint

1

58.125

1.221

Таблица 2

Результаты замера производительности

Метод

Число каналов изображения

Средняя скорость выполнения, с

FAST+BRIEF

1

0.939

3

0.948

SIFT

1

0.480

3

0.483

AKAZE

1

0.129

3

0.106

ORB

1

0.026

3

0.046

SuperPoint

1

0.142

missing image file

Рис. 3. Пример сопоставления точек с SIFT

missing image file

Рис. 4. Пример сопоставления точек с ORB

missing image file

Рис. 5. Пример сопоставления точек с FAST+BRIEF

missing image file

Рис. 6. Пример сопоставления точек с AKAZE

missing image file

Рис. 7. Пример сопоставления точек с SuperPoint

Выводы

По результатам видно, что SuperPoint находит больше опорных точек, чем FAST+ BRIEF и SIFT, причем с лучшей точностью и за меньшее время, т.е. превосходит эти методы по всем параметрам. ORB же, требуя меньших вычислительных мощностей, чем SuperPoint, показывает гораздо более низкую точность, что сильно ограничивает его применимость. Быстрое и точное обнаружение и сопоставление опорных точек позволят решать огромный спектр задач, таких как склейка панорамных изображений или обнаружение объектов на изображениях в реальном времени.