Масштабно-инвариантное преобразование признаков - Scale-invariant feature transform

В масштабно-инвариантное преобразование признаков (ПРОСЕЯТЬ) это обнаружение функции алгоритм в компьютерное зрение для обнаружения и описания локальных особенностей на изображениях. Это было опубликовано Дэвид Лоу в 1999 году.[1]Приложения включают распознавание объекта, роботизированное картографирование и навигация, сшивание изображений, 3D моделирование, распознавание жеста, видео слежение, индивидуальная идентификация дикой природы и движение матча.

Ключевые точки SIFT объектов сначала извлекаются из набора эталонных изображений.[1] и хранится в базе данных. Объект распознается в новом изображении путем индивидуального сравнения каждой функции из нового изображения с этой базой данных и поиска подходящих подходящих функций на основе Евклидово расстояние их векторов признаков. Из полного набора совпадений определяются подмножества ключевых точек, которые соответствуют объекту, его местоположению, масштабу и ориентации на новом изображении, чтобы отфильтровать хорошие совпадения. Определение согласованных кластеров выполняется быстро с помощью эффективного хеш-таблица реализация обобщенного Преобразование Хафа. Каждый кластер из 3 или более функций, которые соответствуют объекту и его позе, затем подвергается дальнейшей детальной проверке модели, и впоследствии выбросы отбрасываются. Наконец, вычисляется вероятность того, что конкретный набор признаков указывает на присутствие объекта, с учетом точности соответствия и количества вероятных ложных совпадений. Совпадения объектов, прошедших все эти тесты, можно с высокой степенью уверенности определить как правильные.[2]

Обзор

Для любого объекта на изображении можно выделить интересные точки на объекте, чтобы обеспечить «описание характеристик» объекта. Это описание, извлеченное из тренировочного изображения, затем можно использовать для идентификации объекта при попытке найти объект на тестовом изображении, содержащем множество других объектов. Для надежного распознавания важно, чтобы особенности, извлеченные из тренировочного образа, можно было обнаружить даже при изменении масштаба изображения, шума и освещения. Такие точки обычно расположены на высококонтрастных участках изображения, например на краях объектов.

Другой важной характеристикой этих функций является то, что относительные положения между ними в исходной сцене не должны меняться от одного изображения к другому. Например, если бы в качестве элементов использовались только четыре угла двери, они работали бы независимо от положения двери; но если бы точки в кадре также использовались, распознавание не удалось бы, если дверь открыта или закрыта. Точно так же элементы, расположенные в шарнирных или гибких объектах, обычно не будут работать, если какое-либо изменение их внутренней геометрии произойдет между двумя изображениями в обрабатываемом наборе. Однако на практике SIFT обнаруживает и использует гораздо большее количество признаков из изображений, что снижает вклад ошибок, вызванных этими локальными вариациями, в среднюю ошибку всех ошибок сопоставления признаков.

ПРОСЕЯТЬ[3] может надежно идентифицировать объекты даже среди беспорядка и при частичной окклюзии, потому что дескриптор функции SIFT инвариантен к равномерное масштабирование, ориентация, освещение меняется и частично инвариантно аффинное искажение.[1] В этом разделе резюмируется исходный алгоритм SIFT и упоминается несколько конкурирующих методов, доступных для распознавания объектов в условиях беспорядка и частичной окклюзии.

Дескриптор SIFT основан на измерениях изображения с точки зрения рецептивные поля[4][5][6][7] в течение которого инвариантные системы отсчета в локальном масштабе[8][9] установлены выбор местного масштаба.[10][11][9] Общее теоретическое объяснение этого дается в статье Scholarpedia о SIFT.[12]

ПроблемаТехникаПреимущество
локализация / масштаб / вращение клавишРазница гауссианов / масштабная пирамида / задание ориентацииточность, стабильность, масштабная и вращательная инвариантность
геометрическое искажениеразмытие / передискретизация локальных плоскостей ориентации изображенияаффинная инвариантность
индексация и сопоставлениеближайший сосед / поиск в первую корзинуЭффективность / скорость
Идентификация кластераГолосование за преобразование Хафанадежные модели позы
Проверка модели / обнаружение выбросовЛинейный метод наименьших квадратовлучшая устойчивость к ошибкам с меньшим количеством совпадений
Принятие гипотезыБайесовский вероятностный анализнадежность

Основные этапы

Обнаружение масштабно-инвариантных функций

Метод Лоу для генерации признаков изображения преобразует изображение в большую коллекцию векторов признаков, каждый из которых инвариантен к перемещению, масштабированию и повороту изображения, частично инвариантен к изменениям освещения и устойчив к локальным геометрическим искажениям. Эти особенности имеют схожие свойства с нейронами в первичной зрительная кора которые кодируют основные формы, цвет и движение для обнаружения объектов в зрении приматов.[13] Ключевые местоположения определяются как максимумы и минимумы результата разница гауссиан функция применяется в масштабное пространство к серии сглаженных изображений с повторной дискретизацией. Точки-кандидаты с низким контрастом и точки отклика края по краю отбрасываются. Доминирующие ориентации назначаются локализованным ключевым точкам. Эти шаги гарантируют, что ключевые точки более стабильны для сопоставления и распознавания. Дескрипторы SIFT, устойчивые к локальному аффинному искажению, затем получаются путем рассмотрения пикселей вокруг радиуса ключевого местоположения, размытия и повторной выборки локальных плоскостей ориентации изображения.

Сопоставление функций и индексация

Индексирование состоит из хранения ключей SIFT и определения совпадающих ключей из нового изображения. Lowe использовал модификацию k-d дерево алгоритм называется лучший мусорный бак поиск метод[14] который может идентифицировать ближайшие соседи с высокой вероятностью с использованием лишь ограниченного объема вычислений. Алгоритм BBF использует измененный порядок поиска для k-d дерево алгоритм, так что ячейки в пространстве функций ищутся в порядке их ближайшего расстояния от местоположения запроса. Этот порядок поиска требует использования куча -основан приоритетная очередь для оперативного определения порядка поиска. Наилучшее совпадение кандидата для каждой ключевой точки находится путем идентификации ближайшего соседа в базе данных ключевых точек из обучающих изображений. Ближайшие соседи определяются как ключевые точки с минимальным Евклидово расстояние из заданного вектора дескриптора. Вероятность того, что совпадение правильное, можно определить, взяв отношение расстояния от ближайшего соседа к расстоянию до второго ближайшего.

Лоу[2] отклонил все совпадения, в которых отношение расстояний больше 0,8, что исключает 90% ложных совпадений при отклонении менее 5% правильных совпадений. Для дальнейшего повышения эффективности алгоритма поиска наилучшего бункера был отключен после проверки первых 200 кандидатов ближайшего соседа. Для базы данных из 100 000 ключевых точек это обеспечивает ускорение точного поиска ближайшего соседа примерно на 2 порядка, но приводит к потере менее 5% числа правильных совпадений.

Идентификация кластера голосованием с преобразованием Хафа

Преобразование Хафа используется для кластеризации гипотез надежных моделей для поиска ключей, которые согласуются с конкретной моделью поза. Преобразование Хафа идентифицирует кластеры функций с последовательной интерпретацией, используя каждую функцию для голосования за все позы объекта, которые согласуются с этой функцией. Когда обнаруживается, что кластеры функций голосуют за одну и ту же позу объекта, вероятность того, что интерпретация будет правильной, намного выше, чем для любой отдельной функции. Запись в хеш-таблица создается с прогнозированием местоположения, ориентации и масштаба модели на основе гипотезы соответствия. В хеш-таблица выполняется поиск, чтобы идентифицировать все кластеры, по крайней мере, из 3 записей в ячейке, и ячейки сортируются в порядке убывания размера.

Каждая из ключевых точек SIFT определяет 2D-местоположение, масштаб и ориентацию, и каждая сопоставленная ключевая точка в базе данных имеет запись своих параметров относительно обучающего образа, в котором она была найдена. Преобразование подобия, подразумеваемое этими 4 параметрами, является только приближением к полному пространству поз с 6 степенями свободы для трехмерного объекта, а также не учитывает никакие нежесткие деформации. Поэтому Лоу[2] использовали широкую ячейку размером 30 градусов для ориентации, коэффициент 2 для масштаба и 0,25 максимального размера проецируемого тренировочного изображения (с использованием прогнозируемого масштаба) для местоположения. Ключевые образцы SIFT, созданные в большем масштабе, получают удвоенный вес по сравнению с образцами меньшего масштаба. Это означает, что в действительности больший масштаб может фильтровать наиболее вероятных соседей для проверки в меньшем масштабе. Это также улучшает качество распознавания, придавая больший вес наименее шумной шкале. Чтобы избежать проблемы граничных эффектов при назначении интервалов, каждое совпадение ключевых точек голосует за 2 ближайших интервала в каждом измерении, что дает в общей сложности 16 записей для каждой гипотезы и дальнейшее расширение диапазона поз.

Проверка модели методом наименьших квадратов

Затем каждый идентифицированный кластер подвергается процедуре проверки, в которой линейный метод наименьших квадратов решение выполняется для параметров аффинное преобразование соотнесение модели с изображением. Аффинное преобразование модельной точки [x y]Т в точку изображения [u v]Т можно записать как показано ниже

где перевод модели [tx ty]Т а аффинное вращение, масштаб и растяжение представлены параметрами m1, m2, m3 и m4. Чтобы найти параметры преобразования, приведенное выше уравнение можно переписать, чтобы собрать неизвестные в вектор-столбец.

Это уравнение показывает одно совпадение, но может быть добавлено любое количество дальнейших совпадений, при этом каждое совпадение вносит еще две строки в первую и последнюю матрицу. Чтобы найти решение, необходимо как минимум 3 совпадения. Мы можем записать эту линейную систему как

куда А это известный м-к-п матрица (обычно с м > п), Икс неизвестно п-размерный параметр вектор, и б это известный м-мерный вектор измерения.

Следовательно, минимизирующий вектор это решение нормальное уравнение

Решение системы линейных уравнений дается в терминах матрицы , называется псевдообратный из А, к

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

Обнаружение выбросов

Выбросы теперь можно удалить, проверив соответствие между каждой функцией изображения и моделью с учетом параметра решения. Учитывая линейный метод наименьших квадратов решение, каждое совпадение требуется для согласования в пределах половины диапазона ошибок, который использовался для параметров в Преобразование Хафа мусорные ведра. Поскольку выбросы отбрасываются, линейное решение методом наименьших квадратов повторно решается с оставшимися точками, и процесс повторяется. Если после сброса осталось менее 3 очков выбросы, то совпадение отклоняется. Кроме того, фаза согласования сверху вниз используется для добавления любых дополнительных совпадений, которые согласуются с прогнозируемым положением модели, которые могли быть пропущены из Преобразование Хафа bin из-за приближения преобразования подобия или других ошибок.

Окончательное решение принять или отклонить гипотезу модели основывается на подробной вероятностной модели.[15] Этот метод сначала вычисляет ожидаемое количество ложных совпадений с позой модели, учитывая прогнозируемый размер модели, количество функций в регионе и точность подбора. А Байесовская вероятность Затем анализ дает вероятность того, что объект присутствует, на основе фактического числа найденных совпадающих признаков. Модель считается принятой, если окончательная вероятность правильной интерпретации больше 0,98. Распознавание объектов на основе алгоритма Lowe SIFT дает отличные результаты, за исключением больших вариаций освещения и нежестких преобразований.

Функции

Обнаружение и описание локальных особенностей изображения может помочь в распознавании объектов. Функции SIFT являются локальными и основаны на внешнем виде объекта в определенных точках интереса и не зависят от масштаба и поворота изображения. Они также устойчивы к изменениям освещения, шуму и незначительным изменениям точки обзора. В дополнение к этим свойствам, они очень различимы, относительно легко извлекаются и позволяют правильно идентифицировать объект с низкой вероятностью несоответствия. Их относительно легко сопоставить с (большой) базой данных локальных объектов, но, тем не менее, высокая размерность может быть проблемой, и, как правило, вероятностные алгоритмы, такие как k-d деревья с лучший бункер в первую очередь поиск используются. Описание объекта с помощью набора функций SIFT также устойчиво к частичному перекрытию; всего 3 функции SIFT от объекта достаточно, чтобы вычислить его местоположение и позу. Распознавание может выполняться в режиме, близком к реальному времени, по крайней мере, для небольших баз данных и на современном компьютерном оборудовании.[нужна цитата ]

Алгоритм

Обнаружение экстремумов в масштабном пространстве

Мы начинаем с обнаружения интересных мест, которые называются ключевые точки в рамках SIFT. Изображение свернутый с фильтрами Гаусса в разных масштабах, а затем снимается разница последовательных размытых по Гауссу изображений. Ключевые точки затем принимаются как максимумы / минимумы Разница гауссианов (DoG), которые встречаются в разных масштабах. В частности, образ DoG дан кем-то

,
куда это свертка исходного изображения с Размытие по Гауссу в масштабе , т.е.

Следовательно, изображение DoG между шкалами и это просто разница размытых по Гауссу изображений в масштабах и . За масштабное пространство Обнаружение экстремумов в алгоритме SIFT, изображение сначала свертывается с размытием по Гауссу в разных масштабах. Свернутые изображения сгруппированы по октаве (октава соответствует удвоению значения ), а значение выбирается так, чтобы мы получали фиксированное количество свернутых изображений на октаву. Затем изображения разности Гаусса берутся из соседних изображений с размытием по Гауссу на октаву.

После получения изображений DoG ключевые точки идентифицируются как локальные минимумы / максимумы изображений DoG по масштабам. Это делается путем сравнения каждого пикселя в изображениях DoG с его восемью соседями в том же масштабе и девятью соответствующими соседними пикселями в каждом из соседних масштабов. Если значение пикселя является максимальным или минимальным среди всех сравниваемых пикселей, оно выбирается в качестве ключевой точки-кандидата.

Этот шаг обнаружения ключевой точки является разновидностью одного из обнаружение капли методы, разработанные Линдебергом путем обнаружения экстремумов масштабного нормированного лапласиана в пространстве;[10][11] то есть обнаружение точек, которые являются локальными экстремумами как по пространству, так и по масштабу, в дискретном случае путем сравнения с ближайшими 26 соседями в дискретизированном объеме пространства масштаба. Различие операторов Гауссиана можно рассматривать как приближение к лапласиану с неявной нормировкой в пирамида также составляющие дискретную аппроксимацию нормированного на масштаб лапласиана.[12] Еще одна реализация в реальном времени экстремумов масштабного пространства оператора Лапласа была представлена ​​Линдебергом и Бретцнером на основе представления гибридной пирамиды,[16] который использовался для взаимодействия человека с компьютером путем распознавания жестов в реальном времени в Bretzner et al. (2002).[17]

Локализация ключевых точек

После обнаружения экстремумов масштабного пространства (их расположение показано на самом верхнем изображении) алгоритм SIFT отбрасывает малоконтрастные ключевые точки (оставшиеся точки показаны на среднем изображении), а затем отфильтровывает те, которые расположены по краям. Результирующий набор ключевых точек показан на последнем изображении.

Обнаружение экстремумов в масштабном пространстве создает слишком много кандидатов в ключевые точки, некоторые из которых нестабильны. Следующим шагом в алгоритме является выполнение детального подбора ближайших данных для точного определения местоположения, масштаба и соотношения основные кривизны. Эта информация позволяет отбрасывать точки с низким контрастом (и, следовательно, чувствительные к шуму) или плохо локализованные по краю.

Интерполяция ближайших данных для точного определения местоположения

Во-первых, для каждой ключевой точки-кандидата используется интерполяция ближайших данных для точного определения ее положения. Первоначальный подход заключался в том, чтобы просто найти каждую ключевую точку в месте и масштабе ключевой точки-кандидата.[1] Новый подход вычисляет интерполированное положение экстремума, что существенно улучшает согласование и стабильность.[2] Интерполяция выполняется с использованием квадратичного Расширение Тейлора функции масштабного пространства разности Гаусса, с ключевой точкой-кандидатом в качестве источника. Это разложение Тейлора определяется следующим образом:

где D и его производные оцениваются в ключевой точке кандидата и это смещение от этой точки. Расположение экстремума, , определяется взятием производной от этой функции по и установив его на ноль. Если смещение больше чем в любом измерении, то это признак того, что экстремум находится ближе к другой ключевой точке кандидата. В этом случае кандидатная ключевая точка изменяется, и вместо нее выполняется интерполяция. В противном случае смещение добавляется к его ключевой точке-кандидату, чтобы получить интерполированную оценку местоположения экстремума. Подобное субпиксельное определение местоположений экстремумов в масштабном пространстве выполняется в реализации в реальном времени на основе гибридных пирамид, разработанных Линдебергом и его сотрудниками.[16]

Отказ от слабоконтрастных ключевых точек

Чтобы отбросить ключевые точки с низким контрастом, значение разложения Тейлора второго порядка вычисляется по смещению . Если это значение меньше, чем , кандидат ключевой точки отбрасывается. В противном случае он сохраняется с окончательным расположением масштабного пространства , куда - исходное местоположение ключевой точки.

Устранение крайних откликов

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

Для плохо определенных пиков в функции DoG главная кривизна поперек края будет намного больше, чем основная кривизна вдоль него. Нахождение этих главных искривлений сводится к решению для собственные значения второго порядка Матрица Гессе, ЧАС:

Собственные значения ЧАС пропорциональны главным кривизнам D. Оказывается, отношение двух собственных значений, скажем, больше, и меньший, с соотношением , достаточно для целей SIFT. След ЧАС, т.е. , дает нам сумму двух собственных значений, а его определитель, т.е. , дает продукт. Соотношение можно показать равным , который зависит только от соотношения собственных значений, а не от их индивидуальных значений. R минимально, когда собственные значения равны друг другу. Следовательно, чем выше абсолютная разница между двумя собственными значениями, что эквивалентно большей абсолютной разнице между двумя главными кривизнами D, тем выше значение R. Отсюда следует, что для некоторого порогового отношения собственных значений , если R для ключевой точки кандидата больше, чем , эта ключевая точка плохо локализована и поэтому отвергается. Новый подход использует .[2]

Этот этап обработки для подавления откликов на краях представляет собой перенос соответствующего подхода в операторе Харриса для обнаружение угла. Разница в том, что мера пороговой обработки вычисляется из матрицы Гессе, а не из матрица второго момента.

Назначение ориентации

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

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

Вычисления величины и направления градиента выполняются для каждого пикселя в соседней области вокруг ключевой точки в изображении L с размытием по Гауссу. Формируется гистограмма ориентации с 36 ячейками, каждая ячейка покрывает 10 градусов. Каждая выборка в соседнем окне, добавляемая в ячейку гистограммы, взвешивается по величине градиента и с помощью взвешенного по Гауссу кругового окна с что в 1,5 раза больше масштаба ключевой точки. Пики на этой гистограмме соответствуют доминирующим ориентациям. После заполнения гистограммы ключевой точке назначаются ориентации, соответствующие наивысшему пику и локальным пикам, которые находятся в пределах 80% от самых высоких пиков. В случае назначения нескольких ориентаций создается дополнительная характерная точка, имеющая то же расположение и масштаб, что и исходная характерная точка для каждой дополнительной ориентации.

Дескриптор ключевой точки

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

Сначала создается набор гистограмм ориентации в окрестностях 4 × 4 пикселя с 8 ячейками в каждой. Эти гистограммы вычисляются на основе значений величины и ориентации выборок в области 16 × 16 вокруг ключевой точки, так что каждая гистограмма содержит выборки из подобласти 4 × 4 исходного региона соседства. Величины и ориентации градиента изображения выбираются вокруг местоположения ключевой точки с использованием масштаба ключевой точки для выбора уровня размытия по Гауссу для изображения. Для достижения неизменности ориентации координаты дескриптора и ориентации градиента поворачиваются относительно ориентации ключевой точки. Величины дополнительно взвешиваются функцией Гаусса с равняется половине ширины окна дескриптора. Затем дескриптор становится вектором всех значений этих гистограмм. Так как имеется 4 × 4 = 16 гистограмм с 8 ячейками каждая, вектор имеет 128 элементов. Затем этот вектор нормализуется до единичной длины, чтобы повысить инвариантность к аффинным изменениям освещения. Чтобы уменьшить влияние нелинейного освещения, применяется порог 0,2, и вектор снова нормализуется. Процесс определения порога, также называемый фиксацией, может улучшить результаты согласования, даже когда нелинейные эффекты освещения отсутствуют. [18] Порог 0,2 был выбран эмпирически, и, заменив фиксированный порог пороговым значением, рассчитываемым систематически, результаты сопоставления можно улучшить.[18]

Хотя размерность дескриптора, то есть 128, кажется высокой, дескрипторы с меньшей размерностью, чем это, не работают так же хорошо в диапазоне задач сопоставления.[2] а вычислительные затраты остаются низкими из-за приближенного метода BBF (см. ниже), используемого для поиска ближайшего соседа. Более длинные дескрипторы продолжают работать лучше, но не намного, и существует дополнительная опасность повышенной чувствительности к искажениям и окклюзии. Также показано, что точность согласования характеристик превышает 50% для изменения точки обзора до 50 градусов. Следовательно, дескрипторы SIFT инвариантны к незначительным аффинным изменениям. Чтобы проверить различимость дескрипторов SIFT, также измеряется точность сопоставления по разному количеству ключевых точек в тестовой базе данных, и показано, что точность сопоставления снижается лишь очень незначительно для очень больших размеров базы данных, что указывает на то, что функции SIFT очень различимы.

Сравнение функций SIFT с другими локальными функциями

Было проведено обширное исследование оценки производительности различных локальных дескрипторов, включая SIFT, с использованием ряда детекторов.[19] Ниже приведены основные результаты:

  • SIFT и SIFT-подобные GLOH функции демонстрируют наивысшую точность согласования (скорость отзыва) для аффинного преобразования 50 градусов. После этого предела преобразования результаты становятся ненадежными.
  • Отличительность дескрипторов измеряется суммированием собственных значений дескрипторов, полученных Анализ основных компонентов дескрипторов, нормализованных по их дисперсии. Это соответствует величине отклонения, зафиксированной разными дескрипторами, следовательно, их различимости. PCA-SIFT (анализ основных компонентов, применяемый к дескрипторам SIFT), функции GLOH и SIFT дают самые высокие значения.
  • Дескрипторы на основе SIFT превосходят другие современные локальные дескрипторы как на текстурированных, так и на структурированных сценах, при этом разница в производительности больше на текстурированной сцене.
  • Для изменений масштаба в диапазоне 2–2,5 и поворота изображения в диапазоне от 30 до 45 градусов дескрипторы на основе SIFT и SIFT снова превосходят другие современные локальные дескрипторы с текстурированным и структурированным содержимым сцены.
  • Введение размытия влияет на все локальные дескрипторы, особенно те, которые основаны на краях, например контекст формы, потому что края исчезают в случае сильного размытия. Но GLOH, PCA-SIFT и SIFT по-прежнему работали лучше, чем другие. Это также верно для оценки в случае изменения освещения.

Проведенные оценки убедительно свидетельствуют о том, что дескрипторы на основе SIFT, основанные на регионах, являются наиболее надежными и различимыми и поэтому лучше всего подходят для сопоставления признаков. Однако самые последние дескрипторы функций, такие как СЕРФ не оценивались в этом исследовании.

Позже было показано, что SURF имеет аналогичную производительность с SIFT, но в то же время намного быстрее.[20] Другие исследования показывают, что, когда скорость не критична, SIFT превосходит SURF.[21][22] В частности, без учета эффектов дискретизации дескриптор чистого изображения в SIFT значительно лучше, чем дескриптор чистого изображения в SURF, тогда как экстремумы в масштабном пространстве детерминанта гессиана, лежащего в основе детектора чистой точки интереса в SURF, представляют значительно лучшие точки интереса по сравнению с масштабные экстремумы лапласиана, к которым детектор точки интереса в SIFT составляет численное приближение.[21]

Производительность сопоставления изображений с помощью дескрипторов SIFT может быть улучшена в смысле достижения более высоких показателей эффективности и более низких оценок точности 1 путем замены экстремумов в пространстве шкалы оператора разности гауссианов в исходном SIFT на экстремумы пространства масштабов оператора определитель гессиана, или, в более общем смысле, рассмотрение более общего семейства обобщенных точек интереса в масштабном пространстве.[21]

Недавно была предложена небольшая вариация дескриптора с использованием нерегулярной сетки гистограммы, которая значительно улучшает его производительность.[23] Вместо использования сетки ячеек гистограммы 4 × 4 все ячейки простираются до центра объекта. Это повышает устойчивость дескриптора к изменениям масштаба.

SIFT-рейтинг[24] Было показано, что дескриптор улучшает производительность стандартного дескриптора SIFT для сопоставления аффинных признаков. Дескриптор SIFT-Rank генерируется из стандартного дескриптора SIFT путем установки каждого бина гистограммы на его ранг в отсортированном массиве ячеек. Евклидово расстояние между дескрипторами SIFT-Rank инвариантно к произвольным монотонным изменениям значений бина гистограммы и связано с Коэффициент ранговой корреляции Спирмена.

Приложения

Распознавание объектов с использованием функций SIFT

Учитывая способность SIFT находить отличительные ключевые точки, инвариантные к местоположению, масштабу и повороту и устойчивые к аффинные преобразования (изменения в шкала, вращение, срезать, и положение) и изменения освещенности, их можно использовать для распознавания объектов. Шаги приведены ниже.

  • Сначала из входного изображения получают признаки SIFT с использованием описанного выше алгоритма.
  • Эти функции сопоставлены с базой данных функций SIFT, полученной из обучающих изображений. Это сопоставление характеристик выполняется с помощью подхода ближайшего соседа на основе евклидова расстояния. Чтобы повысить надежность, совпадения отклоняются для тех ключевых точек, для которых отношение расстояния до ближайшего соседа к расстоянию до второго ближайшего соседа больше 0,8. Это устраняет многие ложные совпадения, возникающие из-за помех на фоне. Наконец, чтобы избежать дорогостоящего поиска, необходимого для нахождения ближайшего соседа, основанного на евклидовом расстоянии, используется приближенный алгоритм, называемый алгоритмом поиска наилучшего бункера.[14] Это быстрый метод возврата ближайшего соседа с высокой вероятностью, который может дать ускорение в 1000 раз при нахождении ближайшего соседа (представляющего интерес) в 95% случаев.
  • Хотя описанный выше тест отношения расстояний отбрасывает многие ложные совпадения, возникающие из-за фонового шума, у нас все еще есть совпадения, принадлежащие разным объектам. Поэтому, чтобы повысить надежность идентификации объекта, мы хотим кластеризовать те функции, которые принадлежат одному и тому же объекту, и отклонять совпадения, которые не учитываются в процессе кластеризации. Это делается с помощью Преобразование Хафа. Это позволит идентифицировать кластеры функций, которые голосуют за одну и ту же позу объекта. Когда обнаруживается, что кластеры функций голосуют за одну и ту же позу объекта, вероятность того, что интерпретация будет правильной, намного выше, чем для любой отдельной функции. Каждая ключевая точка голосует за набор поз объекта, которые соответствуют расположению, масштабу и ориентации ключевой точки. Бункеры которые набирают не менее 3 голосов, идентифицируются как соответствие объекта / позы кандидата.
  • Для каждого кластера-кандидата получается решение методом наименьших квадратов для наилучших оцененных параметров аффинной проекции, связывающих обучающее изображение с входным изображением. Если проекция ключевой точки через эти параметры находится в пределах половины диапазона ошибок, который использовался для параметров в ячейках преобразования Хафа, совпадение ключевой точки сохраняется. Если после отбрасывания выбросов для ячейки остается менее 3 точек, то соответствие объекта отклоняется. Аппроксимация методом наименьших квадратов повторяется до тех пор, пока больше не будет отбраковки. This works better for planar surface recognition than 3D object recognition since the affine model is no longer accurate for 3D objects.
  • In this journal,[25] authors proposed a new approach to use SIFT descriptors for multiple object detection purposes. The proposed multiple object detection approach is tested on aerial and satellite images.

SIFT features can essentially be applied to any task that requires identification of matching locations between images. Work has been done on applications such as recognition of particular object categories in 2D images, 3D reconstruction,motion tracking and segmentation, robot localization, image panorama stitching and epipolar calibration. Some of these are discussed in more detail below.

Robot localization and mapping

In this application,[26] a trinocular stereo system is used to determine 3D estimates for keypoint locations. Keypoints are used only when they appear in all 3 images with consistent disparities, resulting in very few outliers. As the robot moves, it localizes itself using feature matches to the existing 3D map, and then incrementally adds features to the map while updating their 3D positions using a Kalman filter. This provides a robust and accurate solution to the problem of robot localization in unknown environments. Recent 3D solvers leverage the use of keypoint directions to solve trinocular geometry from three keypoints[27] and absolute pose from only two keypoints[28], an often disregarded but useful measurement available in SIFT. These orientation measurements reduce the number of required correspondences, further increasing robustness exponentially.

Панорамное сшивание

SIFT feature matching can be used in сшивание изображений for fully automated панорама reconstruction from non-panoramic images. The SIFT features extracted from the input images are matched against each other to find k nearest-neighbors for each feature. These correspondences are then used to find м candidate matching images for each image. Homographies between pairs of images are then computed using RANSAC and a probabilistic model is used for verification. Because there is no restriction on the input images, graph search is applied to find connected components of image matches such that each connected component will correspond to a panorama. Finally for each connected component регулировка связки is performed to solve for joint camera parameters, and the panorama is rendered using multi-band blending. Because of the SIFT-inspired object recognition approach to panorama stitching, the resulting system is insensitive to the ordering, orientation, scale and illumination of the images. The input images can contain multiple panoramas and noise images (some of which may not even be part of the composite image), and panoramic sequences are recognized and rendered as output.[29]

3D scene modeling, recognition and tracking

This application uses SIFT features for 3D object recognition и 3D моделирование in context of дополненная реальность, in which synthetic objects with accurate pose are superimposed on real images. SIFT matching is done for a number of 2D images of a scene or object taken from different angles. This is used with регулировка связки initialized from an основная матрица или же trifocal tensor to build a sparse 3D model of the viewed scene and to simultaneously recover camera poses and calibration parameters. Then the position, orientation and size of the virtual object are defined relative to the coordinate frame of the recovered model. For online движение матча, SIFT features again are extracted from the current video frame and matched to the features already computed for the world mode, resulting in a set of 2D-to-3D correspondences. These correspondences are then used to compute the current camera pose for the virtual projection and final rendering. A regularization technique is used to reduce the jitter in the virtual projection.[30] The use of SIFT directions have also been used to increase robustness of this process.[27][28] 3D extensions of SIFT have also been evaluated for истинное 3D object recognition and retrieval.[31][32]

3D SIFT-like descriptors for human action recognition

Extensions of the SIFT descriptor to 2+1-dimensional spatio-temporal data in context of human action recognition in video sequences have been studied.[31][33][34][35] The computation of local position-dependent histograms in the 2D SIFT algorithm are extended from two to three dimensions to describe SIFT features in a spatio-temporal domain. For application to human action recognition in a video sequence, sampling of the training videos is carried out either at spatio-temporal interest points or at randomly determined locations, times and scales. The spatio-temporal regions around these interest points are then described using the 3D SIFT descriptor. These descriptors are then clustered to form a spatio-temporal Bag of words model. 3D SIFT descriptors extracted from the test videos are then matched against these слова for human action classification.

The authors report much better results with their 3D SIFT descriptor approach than with other approaches like simple 2D SIFT descriptors and Gradient Magnitude.[36]

Analyzing the Human Brain in 3D Magnetic Resonance Images

The Feature-based Morphometry (FBM) technique[37] uses extrema in a difference of Gaussian scale-space to analyze and classify 3D magnetic resonance images (MRIs) of the human brain. FBM models the image probabilistically as a collage of independent features, conditional on image geometry and group labels, e.g. healthy subjects and subjects with Alzheimer's disease (AD). Features are first extracted in individual images from a 4D difference of Gaussian scale-space, then modeled in terms of their appearance, geometry and group co-occurrence statistics across a set of images. FBM was validated in the analysis of AD using a set of ~200 volumetric MRIs of the human brain, automatically identifying established indicators of AD in the brain and classifying mild AD in new images with a rate of 80%.[37]

Competing methods

Competing methods for scale invariant object recognition under clutter / partial occlusion include the following.

RIFT[38] is a rotation-invariant generalization of SIFT. The RIFT descriptor is constructed using circular normalized patches divided into concentric rings of equal width and within each ring a gradient orientation histogram is computed. To maintain rotation invariance, the orientation is measured at each point relative to the direction pointing outward from the center.

G-RIF:[39] Generalized Robust Invariant Feature is a general context descriptor which encodes edge orientation, edge density and hue information in a unified form combining perceptual information with spatial encoding. The object recognition scheme uses neighboring context based voting to estimate object models.

"СЕРФ:[40] Speeded Up Robust Features" is a high-performance scale- and rotation-invariant interest point detector / descriptor claimed to approximate or even outperform previously proposed schemes with respect to repeatability, distinctiveness, and robustness. SURF relies on integral images for image convolutions to reduce computation time, builds on the strengths of the leading existing detectors and descriptors (using a fast Матрица Гессе -based measure for the detector and a distribution-based descriptor). It describes a distribution of Вейвлет Хаара responses within the interest point neighborhood. Integral images are used for speed and only 64 dimensions are used reducing the time for feature computation and matching. The indexing step is based on the sign of the Лапласиан, which increases the matching speed and the robustness of the descriptor.

PCA-SIFT[41] и GLOH[19] are variants of SIFT. PCA-SIFT descriptor is a vector of image gradients in x and y direction computed within the support region. The gradient region is sampled at 39×39 locations, therefore the vector is of dimension 3042. The dimension is reduced to 36 with PCA. Gradient location-orientation histogram (GLOH ) is an extension of the SIFT descriptor designed to increase its robustness and distinctiveness. The SIFT descriptor is computed for a log-polar location grid with three bins in radial direction (the radius set to 6, 11, and 15) and 8 in angular direction, which results in 17 location bins. The central bin is not divided in angular directions. The gradient orientations are quantized in 16 bins resulting in 272-bin histogram. The size of this descriptor is reduced with PCA. В ковариационная матрица за PCA is estimated on image patches collected from various images. The 128 largest собственные векторы are used for description.

Gauss-SIFT[21] is a pure image descriptor defined by performing all image measurements underlying the pure image descriptor in SIFT by Gaussian derivative responses as opposed to derivative approximations in an image pyramid as done in regular SIFT. In this way, discretization effects over space and scale can be reduced to a minimum allowing for potentially more accurate image descriptors. In Lindeberg (2015)[21] such pure Gauss-SIFT image descriptors were combined with a set of generalized scale-space interest points comprising the Laplacian of the Gaussian, the determinant of the Hessian, four new unsigned or signed Hessian feature strength measures as well as Harris-Laplace and Shi-and-Tomasi interests points. In an extensive experimental evaluation on a poster dataset comprising multiple views of 12 posters over scaling transformations up to a factor of 6 and viewing direction variations up to a slant angle of 45 degrees, it was shown that substantial increase in performance of image matching (higher efficiency scores and lower 1-precision scores) could be obtained by replacing Laplacian of Gaussian interest points by determinant of the Hessian interest points. Since difference-of-Gaussians interest points constitute a numerical approximation of Laplacian of the Gaussian interest points, this shows that a substantial increase in matching performance is possible by replacing the difference-of-Gaussians interest points in SIFT by determinant of the Hessian interest points. Additional increase in performance can furthermore be obtained by considering the unsigned Hessian feature strength measure . A quantitative comparison between the Gauss-SIFT descriptor and a corresponding Gauss-SURF descriptor did also show that Gauss-SIFT does generally perform significantly better than Gauss-SURF for a large number of different scale-space interest point detectors. This study therefore shows that discregarding discretization effects the pure image descriptor in SIFT is significantly better than the pure image descriptor in SURF, whereas the underlying interest point detector in SURF, which can be seen as numerical approximation to scale-space extrema of the determinant of the Hessian, is significantly better than the underlying interest point detector in SIFT.

Вагнер и др. developed two object recognition algorithms especially designed with the limitations of current mobile phones in mind.[42] In contrast to the classic SIFT approach, Wagner et al. use the FAST corner detector for feature detection. The algorithm also distinguishes between the off-line preparation phase where features are created at different scale levels and the on-line phase where features are only created at the current fixed scale level of the phone's camera image. In addition, features are created from a fixed patch size of 15×15 pixels and form a SIFT descriptor with only 36 dimensions. The approach has been further extended by integrating a Scalable Vocabulary Tree in the recognition pipeline.[43] This allows the efficient recognition of a larger number of objects on mobile phones. The approach is mainly restricted by the amount of available баран.

KAZE and A-KAZE (KAZE Features and Accelerated-Kaze Features) is a new 2D feature detection and description method that perform better compared to SIFT and SURF. It gains a lot of popularity due to its open source code. KAZE was originally made by Pablo F. Alcantarilla, Adrien Bartoli and Andrew J. Davison.[44]

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

Рекомендации

  1. ^ а б c d Lowe, David G. (1999). "Object recognition from local scale-invariant features" (PDF). Proceedings of the International Conference on Computer Vision. 2. pp. 1150–1157. Дои:10.1109/ICCV.1999.790410.
  2. ^ а б c d е ж Lowe, David G. (2004). "Distinctive Image Features from Scale-Invariant Keypoints". Международный журнал компьютерного зрения. 60 (2): 91–110. CiteSeerX  10.1.1.73.2924. Дои:10.1023/B:VISI.0000029664.99615.94. S2CID  221242327.
  3. ^ U.S. Patent 6,711,293 , "Method and apparatus for identifying scale invariant features in an image and use of same for locating an object in an image", David Lowe's patent for the SIFT algorithm, March 23, 2004
  4. ^ Koenderink, Jan and van Doorn, Ans: "Representation of local geometry in the visual system ", Biological Cybernetics, vol 3, pp 383-396, 1987
  5. ^ Koenderink, Jan and van Doorn, Ans: "Generic neighbourhood operators", IEEE Transactions on Pattern Analysis and Machine Intelligence, vol 14, pp 597-605, 1992
  6. ^ Lindeberg, T. A computational theory of visual receptive fields, Biological Cybernetics, 107(6):589-635, 2013
  7. ^ Lindeberg, T. Generalized axiomatic scale-space theory, Advances in Imaging and Electron Physics, Elsevier, volume 178, pages 1-96, 2013.
  8. ^ Lindeberg, T. Invariance of visual operations at the level of receptive fields, PLoS ONE 8(7):e66990, 2013
  9. ^ а б T. Lindeberg (2014) "Scale selection", Computer Vision: A Reference Guide, (K. Ikeuchi, Editor), Springer, pages 701-713.
  10. ^ а б Lindeberg, T., Scale-Space Theory in Computer Vision, Kluwer Academic Publishers, 1994,ISBN  0-7923-9418-6
  11. ^ а б Lindeberg, Tony (1998). "Feature detection with automatic scale selection". Международный журнал компьютерного зрения. 30 (2): 79–116. Дои:10.1023/A:1008045108935. S2CID  723210.
  12. ^ а б Lindeberg, Tony (2012). "Scale invariant feature transform". Scholarpedia. 7 (5): 10491. Дои:10.4249/scholarpedia.10491.
  13. ^ Serre, T., Kouh, M., Cadieu, C., Knoblich, U., Kreiman, G., Poggio, T., “A Theory of Object Recognition: Computations and Circuits in the Feedforward Path of the Ventral Stream in Primate Visual Cortex ”, Computer Science and Artificial Intelligence Laboratory Technical Report, December 19, 2005 MIT-CSAIL-TR-2005-082.
  14. ^ а б Beis, J.; Lowe, David G. (1997). "Shape indexing using approximate nearest-neighbour search in high-dimensional spaces" (PDF). Conference on Computer Vision and Pattern Recognition, Puerto Rico: sn. pp. 1000–1006. Дои:10.1109/CVPR.1997.609451.
  15. ^ Lowe, D.G., Local feature view clustering for 3D object recognition. IEEE Conference on Computer Vision and Pattern Recognition,Kauai, Hawaii, 2001, pp. 682-688.
  16. ^ а б Lindeberg, Tony & Bretzner, Lars (2003). Real-time scale selection in hybrid multi-scale representations. Proc. Scale-Space'03, Springer Lecture Notes in Computer Science. 2695. С. 148–163. Дои:10.1007/3-540-44935-3_11. ISBN  978-3-540-40368-5.
  17. ^ Lars Bretzner, Ivan Laptev, Tony Lindeberg "Hand gesture recognition using multi-scale colour features, hierarchical models and particle filtering", Proceedings of the Fifth IEEE International Conference on Automatic Face and Gesture Recognition, Washington, DC, USA, 21–21 May 2002, pages 423-428. ISBN  0-7695-1602-5, Дои:10.1109/AFGR.2002.1004190
  18. ^ а б Kirchner, Matthew R. "Automatic thresholding of SIFT descriptors." В Image Processing (ICIP), 2016 IEEE International Conference on, pp. 291-295. IEEE, 2016.
  19. ^ а б Mikolajczyk, K.; Schmid, C. (2005). "A performance evaluation of local descriptors" (PDF). IEEE Transactions по анализу шаблонов и машинному анализу. 27 (10): 1615–1630. CiteSeerX  10.1.1.230.255. Дои:10.1109/TPAMI.2005.188. PMID  16237996.
  20. ^ TU-chemnitz.de
  21. ^ а б c d е T. Lindeberg ``Image matching using generalized scale-space interest points", Journal of Mathematical Imaging and Vision, volume 52, number 1, pages 3-36, 2015.
  22. ^ Edouard Oyallon, Julien Rabin, "An Analysis and Implementation of the SURF Method, and its Comparison to SIFT ", Image Processing On Line
  23. ^ Cui, Y.; Hasler, N.; Thormaehlen, T.; Seidel, H.-P. (Июль 2009 г.). "Scale Invariant Feature Transform with Irregular Orientation Histogram Binning" (PDF). Proceedings of the International Conference on Image Analysis and Recognition (ICIAR 2009). Halifax, Canada: Springer.
  24. ^ Matthew Toews; William M. Wells III (2009). "SIFT-Rank: Ordinal Descriptors for Invariant Feature Correspondence" (PDF). IEEE International Conference on Computer Vision and Pattern Recognition. pp. 172–177. Дои:10.1109/CVPR.2009.5206849.
  25. ^ Beril Sirmacek & Cem Unsalan (2009). "Urban Area and Building Detection Using SIFT Keypoints and Graph Theory". IEEE Transactions по наукам о Земле и дистанционному зондированию. 47 (4): 1156–1167. Дои:10.1109/TGRS.2008.2008440. S2CID  6629776.
  26. ^ Se, S.; Lowe, David G.; Little, J. (2001). "Vision-based mobile robot localization and mapping using scale-invariant features". Proceedings of the IEEE International Conference on Robotics and Automation (ICRA). 2. п. 2051. Дои:10.1109/ROBOT.2001.932909.
  27. ^ а б Fabbri, Ricardo; Duff, Timothy; Fan, Hongyi; Regan, Margaret; de Pinho, David; Tsigaridas, Elias; Wampler, Charles; Hauenstein, Jonathan; Kimia, Benjamin; Leykin, Anton; Pajdla, Tomas (23 Mar 2019). "Trifocal Relative Pose from Lines at Points and its Efficient Solution". arXiv:1903.09755 [cs.CV ].
  28. ^ а б Fabbri, Ricardo; Giblin, Peter; Kimia, Benjamin (2012). "Camera Pose Estimation Using First-Order Curve Differential Geometry" (PDF). Lecture Notes in Computer Science (ECCV 2012). Конспект лекций по информатике. 7575: 231–244. Дои:10.1007/978-3-642-33765-9_17. ISBN  978-3-642-33764-2.
  29. ^ Brown, M.; Lowe, David G. (2003). "Recognising Panoramas" (PDF). Proceedings of the ninth IEEE International Conference on Computer Vision. 2. pp. 1218–1225. Дои:10.1109/ICCV.2003.1238630.
  30. ^ Iryna Gordon and David G. Lowe, "What and where: 3D object recognition with accurate pose," in Toward Category-Level Object Recognition, (Springer-Verlag, 2006), pp. 67-82
  31. ^ а б Flitton, G.; Breckon, T. (2010). "Object Recognition using 3D SIFT in Complex CT Volumes" (PDF). Proceedings of the British Machine Vision Conference. pp. 11.1–12. Дои:10.5244/C.24.11.
  32. ^ Flitton, G.T., Breckon, T.P., Megherbi, N. (2013). "A Comparison of 3D Interest Point Descriptors with Application to Airport Baggage Object Detection in Complex CT Imagery". Распознавание образов. 46 (9): 2420–2436. Дои:10.1016/j.patcog.2013.02.008. HDL:1826/15213.CS1 maint: несколько имен: список авторов (связь)
  33. ^ Laptev, Ivan & Lindeberg, Tony (2004). "Local descriptors for spatio-temporal recognition" (PDF). ECCV'04 Workshop on Spatial Coherence for Visual Motion Analysis, Springer Lecture Notes in Computer Science, Volume 3667. С. 91–103. Дои:10.1007/11676959_8.
  34. ^ Ivan Laptev, Barbara Caputo, Christian Schuldt and Tony Lindeberg (2007). "Local velocity-adapted motion events for spatio-temporal recognition". Компьютерное зрение и понимание изображений. 108 (3): 207–229. CiteSeerX  10.1.1.168.5780. Дои:10.1016/j.cviu.2006.11.023.CS1 maint: несколько имен: список авторов (связь)
  35. ^ Scovanner, Paul; Ali, S; Shah, M (2007). "A 3-dimensional sift descriptor and its application to action recognition". Proceedings of the 15th International Conference on Multimedia. С. 357–360. Дои:10.1145/1291233.1291311.
  36. ^ Niebles, J. C. Wang, H. and Li, Fei-Fei (2006). "Unsupervised Learning of Human Action Categories Using Spatial-Temporal Words". Proceedings of the British Machine Vision Conference (BMVC). Эдинбург. Получено 2008-08-20.CS1 maint: несколько имен: список авторов (связь)
  37. ^ а б Matthew Toews; William M. Wells III; D. Louis Collins; Tal Arbel (2010). "Feature-based Morphometry: Discovering Group-related Anatomical Patterns" (PDF). NeuroImage. 49 (3): 2318–2327. Дои:10.1016/j.neuroimage.2009.10.032. ЧВК  4321966. PMID  19853047.
  38. ^ Lazebnik, S., Schmid, C., and Ponce, J., "Semi-Local Affine Parts for Object Recognition ", Proceedings of the British Machine Vision Conference, 2004.
  39. ^ Sungho Kim, Kuk-Jin Yoon, In So Kweon, "Object Recognition Using a Generalized Robust Invariant Feature and Gestalt’s Law of Proximity and Similarity", Conference on Computer Vision and Pattern Recognition Workshop (CVPRW'06), 2006
  40. ^ Bay, H., Tuytelaars, T., Van Gool, L., "SURF: Speeded Up Robust Features ", Proceedings of the ninth European Conference on Computer Vision, May 2006.
  41. ^ Ke, Y., and Sukthankar, R., "PCA-SIFT: A More Distinctive Representation for Local Image Descriptors ", Computer Vision and Pattern Recognition, 2004.
  42. ^ D. Wagner, G. Reitmayr, A. Mulloni, T. Drummond, and D. Schmalstieg, "Pose tracking from natural features on mobile phones В архиве 2009-06-12 на Wayback Machine " Proceedings of the International Symposium on Mixed and Augmented Reality, 2008.
  43. ^ N. Henze, T. Schinke, and S. Boll, "What is That? Object Recognition from Natural Features on a Mobile Phone " Proceedings of the Workshop on Mobile Interaction with the Real World, 2009.
  44. ^ "KAZE Features".

внешняя ссылка

Related studies
Учебники
Реализации