Обнаружение особенностей |
---|
Обнаружение краев |
Обнаружение угла |
Обнаружение пятен |
Обнаружение хребта |
преобразование Хафа |
Структурный тензор |
Аффинно-инвариантное обнаружение признаков |
Описание функции |
Масштаб пространства |
Масштабно -инвариантное преобразование признаков ( SIFT ) — это алгоритм компьютерного зрения для обнаружения, описания и сопоставления локальных особенностей на изображениях, изобретенный Дэвидом Лоу в 1999 году. [1] Приложения включают распознавание объектов , роботизированное картографирование и навигацию, сшивание изображений , 3D-моделирование , распознавание жестов , видеоотслеживание , индивидуальную идентификацию диких животных и сопоставление перемещений .
Ключевые точки SIFT объектов сначала извлекаются из набора эталонных изображений [1] и сохраняются в базе данных. Объект распознается на новом изображении путем индивидуального сравнения каждой характеристики из нового изображения с этой базой данных и поиска соответствующих признаков на основе евклидова расстояния их векторов признаков. Из полного набора совпадений определяются подмножества ключевых точек, которые совпадают по объекту и его местоположению, масштабу и ориентации на новом изображении, чтобы отфильтровать хорошие совпадения. Определение согласованных кластеров выполняется быстро с использованием эффективной реализации хэш-таблицы обобщенного преобразования Хафа . Каждый кластер из 3 или более характеристик, которые совпадают по объекту и его позе , затем подвергается дальнейшей детальной проверке модели, и впоследствии выбросы отбрасываются. Наконец, вычисляется вероятность того, что определенный набор характеристик указывает на присутствие объекта, учитывая точность соответствия и количество вероятных ложных совпадений. Соответствия объектов, которые проходят все эти тесты, могут быть идентифицированы как правильные с высокой степенью уверенности. [2]
Хотя алгоритм SIFT ранее был защищен патентом, срок его действия истек в 2020 году. [3]
This section may be too technical for most readers to understand.(October 2010) |
Для любого объекта на изображении мы можем извлечь важные точки на изображении, чтобы предоставить «описание признаков» объекта. Это описание, извлеченное из обучающего изображения, затем может быть использовано для определения местоположения объекта на новом (ранее невиданном) изображении, содержащем другие объекты. Чтобы сделать это надежно, признаки должны быть обнаружимы, даже если изображение масштабировано или если оно имеет шум и различное освещение. Такие точки обычно лежат на высококонтрастных областях изображения, таких как края объектов.
Еще одной важной характеристикой этих признаков является то, что их относительное положение в исходной сцене не должно меняться между изображениями. Например, если в качестве признаков использовались только четыре угла двери, они работали бы независимо от положения двери; но если также использовались бы точки в кадре, распознавание не сработало бы, если бы дверь была открыта или закрыта. Аналогично, признаки, расположенные в сочлененных или гибких объектах, обычно не работали бы, если бы между двумя изображениями в обрабатываемом наборе произошло какое-либо изменение их внутренней геометрии. На практике SIFT обнаруживает и использует гораздо большее количество признаков из изображений, что снижает вклад ошибок, вызванных этими локальными изменениями, в среднюю ошибку всех ошибок сопоставления признаков.
SIFT [3] может надежно идентифицировать объекты даже среди помех и при частичной окклюзии, поскольку дескриптор признаков SIFT инвариантен к равномерному масштабированию , ориентации , изменениям освещенности и частично инвариантен к аффинным искажениям . [1] В этом разделе обобщается исходный алгоритм SIFT и упоминается несколько конкурирующих методов, доступных для распознавания объектов в условиях помех и частичной окклюзии.
Дескриптор SIFT основан на измерениях изображения в терминах рецептивных полей [4] [5] [6] [7] , по которым устанавливаются инвариантные к локальному масштабу системы отсчета [8] [9] путем локального выбора масштаба . [10] [11] [9] Общее теоретическое объяснение этого дано в статье Scholarpedia о SIFT. [12]
Проблема | Техника | Преимущество |
---|---|---|
локализация ключа / масштаб / вращение | Разница гауссианов / пирамида масштабно-пространственного распределения / задание ориентации | точность, стабильность, масштаб и инвариантность вращения |
геометрическое искажение | размытие/передискретизация локальных плоскостей ориентации изображения | аффинная инвариантность |
индексация и сопоставление | ближайший сосед / Лучший поиск Bin First | Эффективность/скорость |
Идентификация кластера | Голосование по преобразованию Хафа | надежные модели поз |
Проверка модели/обнаружение выбросов | Линейный метод наименьших квадратов | лучшая устойчивость к ошибкам при меньшем количестве совпадений |
Принятие гипотезы | Байесовский анализ вероятности | надежность |
Обнаружение и описание локальных особенностей изображения может помочь в распознавании объектов. Признаки SIFT являются локальными и основаны на внешнем виде объекта в определенных точках интереса и инвариантны к масштабу изображения и повороту. Они также устойчивы к изменениям в освещении, шуму и незначительным изменениям в точке обзора. В дополнение к этим свойствам, они являются высоко отличительными, относительно легко извлекаются и позволяют правильно идентифицировать объект с низкой вероятностью несоответствия. Их относительно легко сопоставить с (большой) базой данных локальных особенностей, но, однако, высокая размерность может быть проблемой, и обычно используются вероятностные алгоритмы, такие как деревья kd с поиском best bin first . Описание объекта набором признаков SIFT также устойчиво к частичной окклюзии; всего 3 признака SIFT от объекта достаточно для вычисления его местоположения и позы. Распознавание может быть выполнено в режиме, близком к реальному времени, по крайней мере, для небольших баз данных и на современном компьютерном оборудовании. [ необходима цитата ]
Метод Лоу для генерации признаков изображения преобразует изображение в большую коллекцию векторов признаков, каждый из которых инвариантен к трансляции, масштабированию и вращению изображения, частично инвариантен к изменениям освещенности и устойчив к локальному геометрическому искажению. Эти признаки имеют схожие свойства с нейронами в первичной зрительной коре, которые кодируют основные формы, цвет и движение для обнаружения объекта в зрении приматов. [13] Ключевые местоположения определяются как максимумы и минимумы результата разности гауссовской функции, примененной в масштабном пространстве к серии сглаженных и повторно выбранных изображений. Кандидатные точки с низким контрастом и точки отклика края вдоль края отбрасываются. Доминирующие ориентации назначаются локализованным ключевым точкам. Эти шаги гарантируют, что ключевые точки более стабильны для сопоставления и распознавания. Затем получаются дескрипторы SIFT, устойчивые к локальному аффинному искажению, путем рассмотрения пикселей вокруг радиуса ключевого местоположения, размытия и повторной выборки локальных плоскостей ориентации изображения.
Индексация состоит из хранения ключей SIFT и определения соответствующих ключей из нового изображения. Лоу использовал модификацию алгоритма дерева kd , называемую методом поиска best-bin-first [14], который может идентифицировать ближайших соседей с высокой вероятностью, используя только ограниченный объем вычислений. Алгоритм BBF использует модифицированный порядок поиска для алгоритма дерева kd , так что ячейки в пространстве признаков просматриваются в порядке их ближайшего расстояния от местоположения запроса. Этот порядок поиска требует использования очереди приоритетов на основе кучи для эффективного определения порядка поиска. Мы получаем кандидата для каждой ключевой точки, идентифицируя ее ближайшего соседа в базе данных ключевых точек из обучающих изображений. Ближайшие соседи определяются как ключевые точки с минимальным евклидовым расстоянием от заданного вектора дескриптора. Лоу [2] определил, следует ли оставить или «отбросить» данного кандидата, путем проверки соотношения расстояния от этого данного кандидата и расстояния от ближайшей ключевой точки, которая не принадлежит к тому же классу объектов, что и рассматриваемый кандидат (вектор признаков кандидата/ближайший вектор признаков другого класса). Идея заключается в том, что мы можем быть уверены только в кандидатах, в которых признаки/ключевые точки из различных классов объектов не «загромождают» его (не обязательно геометрически загромождают пространство признаков, но в большей степени загромождают вдоль правой половины (>0) действительной линии). Это очевидное следствие использования евклидова расстояния в качестве меры ближайшего соседа. Пороговое значение отношения для отклонения наступает, когда оно выше 0,8. Этот метод устраняет 90% ложных совпадений, отбрасывая менее 5% правильных совпадений. Для дальнейшего повышения эффективности алгоритма best-bin-first поиск был прекращен после проверки первых 200 кандидатов ближайшего соседа. Для базы данных из 100 000 ключевых точек это обеспечивает ускорение по сравнению с точным поиском ближайшего соседа примерно на 2 порядка, но при этом приводит к потере менее 5% количества правильных совпадений.
Преобразование Хафа используется для кластеризации надежных гипотез модели для поиска ключей, которые согласуются с определенной позицией модели . Преобразование Хафа идентифицирует кластеры признаков с последовательной интерпретацией, используя каждый признак для голосования за все позы объекта, которые согласуются с признаком. Когда обнаруживается, что кластеры признаков голосуют за одну и ту же позу объекта, вероятность того, что интерпретация будет правильной, намного выше, чем для любого отдельного признака. Создается запись в хэш-таблице, предсказывающая местоположение модели, ориентацию и масштаб из гипотезы соответствия. Поиск в хэш-таблице выполняется для идентификации всех кластеров не менее чем из 3 записей в ячейке, и ячейки сортируются в порядке убывания размера.
Каждая из ключевых точек SIFT определяет 2D-расположение, масштаб и ориентацию, и каждая сопоставленная ключевая точка в базе данных имеет запись своих параметров относительно тренировочного изображения, в котором она была найдена. Преобразование подобия, подразумеваемое этими 4 параметрами, является лишь приближением к полному пространству поз с 6 степенями свободы для 3D-объекта и также не учитывает какие-либо нежесткие деформации. Поэтому Лоу [2] использовал широкие размеры бинов в 30 градусов для ориентации, коэффициент 2 для масштаба и 0,25 от максимального проецируемого размера тренировочного изображения (с использованием предсказанного масштаба) для местоположения. Образцы ключей SIFT, сгенерированные в большем масштабе, получают в два раза больший вес, чем в меньшем масштабе. Это означает, что больший масштаб фактически способен отфильтровывать наиболее вероятных соседей для проверки в меньшем масштабе. Это также улучшает производительность распознавания, придавая больший вес наименее шумному масштабу. Чтобы избежать проблемы граничных эффектов при назначении бинов, каждое сопоставление ключевой точки голосует за 2 ближайших бина в каждом измерении, что дает в общей сложности 16 записей для каждой гипотезы и еще больше расширяет диапазон поз.
Каждый идентифицированный кластер затем подвергается процедуре проверки, в которой выполняется линейное решение наименьших квадратов для параметров аффинного преобразования, связывающего модель с изображением. Аффинное преобразование точки модели [xy] T в точку изображения [uv] T можно записать следующим образом
где перенос модели равен [t x t y ] T , а аффинное вращение, масштаб и растяжение представлены параметрами m 1 , m 2 , m 3 и m 4 . Для решения задачи относительно параметров преобразования приведенное выше уравнение можно переписать, чтобы собрать неизвестные в вектор-столбец.
Это уравнение показывает одно совпадение, но можно добавить любое количество дополнительных совпадений, при этом каждое совпадение добавляет еще две строки к первой и последней матрице. Для решения необходимо не менее 3 совпадений. Мы можем записать эту линейную систему как
где A — известная матрица размером m на n (обычно с m > n ), x — неизвестный вектор параметров размером n , а b — известный вектор измерений размером m .
Следовательно, минимизирующий вектор является решением нормального уравнения
Решение системы линейных уравнений дается в терминах матрицы , называемой псевдообратной к A , по формуле
что минимизирует сумму квадратов расстояний от проекционных местоположений модели до соответствующих местоположений изображения.
Выбросы теперь можно удалить, проверив соответствие между каждой характеристикой изображения и моделью, учитывая решение параметра. Учитывая решение линейного наименьших квадратов , каждое совпадение должно согласовываться в пределах половины диапазона ошибок, который использовался для параметров в ячейках преобразования Хафа . По мере отбрасывания выбросов линейное наименьшее квадратное решение повторно решается с оставшимися точками, и процесс повторяется. Если после отбрасывания выбросов остается менее 3 точек , то совпадение отклоняется. Кроме того, используется фаза сопоставления сверху вниз для добавления любых дополнительных совпадений, которые согласуются с прогнозируемым положением модели, которые могли быть пропущены в ячейке преобразования Хафа из-за аппроксимации преобразования подобия или других ошибок.
Окончательное решение о принятии или отклонении гипотезы модели основывается на подробной вероятностной модели. [15] Этот метод сначала вычисляет ожидаемое количество ложных совпадений с позой модели, учитывая прогнозируемый размер модели, количество признаков в области и точность подгонки. Затем байесовский вероятностный анализ дает вероятность того, что объект присутствует, на основе фактического количества найденных совпадающих признаков. Модель принимается, если окончательная вероятность правильной интерпретации больше 0,98. Распознавание объектов на основе SIFT Лоу дает превосходные результаты, за исключением случаев широких изменений освещенности и нежестких преобразований.
Мы начинаем с обнаружения точек интереса, которые в фреймворке SIFT называются ключевыми точками . Изображение сворачивается с гауссовыми фильтрами в разных масштабах, а затем берется разность последовательных гауссово-размытых изображений. Затем ключевые точки берутся как максимумы/минимумы разности гауссов (DoG), которые возникают в разных масштабах. В частности, изображение DoG задается как
Следовательно, изображение DoG между масштабами и представляет собой просто разницу между размытыми по Гауссу изображениями в масштабах и . Для обнаружения экстремумов в масштабном пространстве в алгоритме SIFT изображение сначала сворачивается с размытием по Гауссу в разных масштабах. Свернутые изображения группируются по октаве (октава соответствует удвоению значения ), а значение выбирается таким образом, чтобы мы получали фиксированное количество свернутых изображений на октаву. Затем изображения Difference-of-Gaussian берутся из соседних размытых по Гауссу изображений на октаву.
После получения изображений DoG ключевые точки определяются как локальные минимумы/максимумы изображений DoG по масштабам. Это делается путем сравнения каждого пикселя изображений DoG с его восемью соседями в том же масштабе и девятью соответствующими соседними пикселями в каждом из соседних масштабов. Если значение пикселя является максимальным или минимальным среди всех сравниваемых пикселей, оно выбирается в качестве кандидата на ключевую точку.
Этот шаг обнаружения ключевых точек является вариацией одного из методов обнаружения пятен, разработанных Линдебергом путем обнаружения экстремумов масштабно-пространственного нормализованного лапласиана; [10] [11] то есть обнаружения точек, которые являются локальными экстремумами по отношению как к пространству, так и к масштабу, в дискретном случае путем сравнения с ближайшими 26 соседями в дискретизированном объеме масштабно-пространственного пространства. Оператор разности гауссианов можно рассматривать как приближение к лапласиану, с неявной нормализацией в пирамиде, также составляющей дискретное приближение масштабно-нормализованного лапласиана. [12] Другая реализация масштабно-пространственного экстремума лапласианского оператора в реальном времени была представлена Линдебергом и Бретцнером на основе гибридного пирамидального представления, [16] которое использовалось для взаимодействия человека с компьютером путем распознавания жестов в реальном времени в Бретцнере и др. (2002). [17]
Обнаружение экстремумов в масштабном пространстве выдает слишком много кандидатов на ключевые точки, некоторые из которых нестабильны. Следующий шаг алгоритма — выполнить детальную подгонку к близлежащим данным для точного местоположения, масштаба и соотношения главных кривизн . Эта информация позволяет отбрасывать точки с низким контрастом (и, следовательно, чувствительные к шуму) или плохо локализованные вдоль края.
Во-первых, для каждой ключевой точки-кандидата интерполяция близлежащих данных используется для точного определения ее положения. Первоначальный подход заключался в том, чтобы просто определить положение каждой ключевой точки в месте и масштабе ключевой точки-кандидата. [1] Новый подход вычисляет интерполированное местоположение экстремума, что существенно улучшает соответствие и устойчивость. [2] Интерполяция выполняется с использованием квадратичного разложения Тейлора функции масштабного пространства разности гауссовых функций с ключевой точкой-кандидатом в качестве начала координат. Это разложение Тейлора задается следующим образом:
где D и его производные оцениваются в ключевой точке-кандидате и является смещением от этой точки. Местоположение экстремума, , определяется путем взятия производной этой функции по и установки ее в ноль. Если смещение больше, чем в любом измерении, то это признак того, что экстремум лежит ближе к другой ключевой точке-кандидату. В этом случае ключевая точка-кандидат изменяется, и вместо этого выполняется интерполяция вокруг этой точки. В противном случае смещение добавляется к ее ключевой точке-кандидату, чтобы получить интерполированную оценку местоположения экстремума. Аналогичное субпиксельное определение местоположений экстремумов масштабного пространства выполняется в реализации в реальном времени на основе гибридных пирамид, разработанных Линдебергом и его коллегами. [16]
Чтобы отбросить ключевые точки с низким контрастом, значение разложения Тейлора второго порядка вычисляется при смещении . Если это значение меньше , то кандидатная ключевая точка отбрасывается. В противном случае она сохраняется с конечным положением в масштабном пространстве , где — исходное положение ключевой точки.
Функция DoG будет иметь сильные отклики вдоль краев, даже если потенциальная ключевая точка не устойчива к небольшим уровням шума. Поэтому, чтобы повысить стабильность, нам нужно исключить ключевые точки, которые имеют плохо определенные местоположения, но имеют высокие отклики краев.
Для плохо определенных пиков в функции DoG, главная кривизна поперек края будет намного больше, чем главная кривизна вдоль него. Нахождение этих главных кривизн равносильно решению для собственных значений матрицы Гессе второго порядка , H :
Собственные значения H пропорциональны главным кривизнам D. Оказывается, что отношение двух собственных значений, скажем, большего, и меньшего, с отношением , достаточно для целей SIFT. След H , т. е. , дает нам сумму двух собственных значений, в то время как его определитель, т. е. , дает произведение. Можно показать, что отношение равно , которое зависит только от отношения собственных значений, а не от их индивидуальных значений. 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, с использованием ряда детекторов. [19] Основные результаты суммированы ниже:
Проведенные оценки убедительно показывают, что дескрипторы на основе SIFT, основанные на регионах, являются наиболее надежными и отличительными и, следовательно, лучше всего подходят для сопоставления признаков. Однако самые последние дескрипторы признаков, такие как SURF, не были оценены в этом исследовании.
Позже было показано, что SURF имеет производительность, схожую с SIFT, и в то же время намного быстрее. [20] Другие исследования пришли к выводу, что когда скорость не имеет решающего значения, SIFT превосходит SURF. [21] [22] В частности, если не принимать во внимание эффекты дискретизации, чистый дескриптор изображения в SIFT значительно лучше, чем чистый дескриптор изображения в SURF, тогда как экстремумы масштабного пространства детерминанта гессиана, лежащего в основе чистого детектора точек интереса в SURF, представляют собой значительно лучшие экстремумы масштабного пространства лапласиана, для которого детектор точек интереса в SIFT представляет собой численное приближение. [21]
Эффективность сопоставления изображений с помощью дескрипторов SIFT может быть улучшена в смысле достижения более высоких оценок эффективности и более низких оценок точности 1 путем замены экстремумов масштабного пространства оператора разности гауссианов в исходном SIFT на экстремумы масштабного пространства определителя гессиана или, в более общем плане, путем рассмотрения более общего семейства обобщенных точек интереса масштабного пространства. [21]
Недавно была предложена небольшая вариация дескриптора, использующая нерегулярную сетку гистограммы, что значительно улучшает его производительность. [23] Вместо использования сетки 4×4 ячеек гистограммы, все ячейки простираются до центра признака. Это повышает устойчивость дескриптора к изменениям масштаба.
Было показано, что дескриптор SIFT-Rank [24] улучшает производительность стандартного дескриптора SIFT для аффинного сопоставления признаков. Дескриптор SIFT-Rank генерируется из стандартного дескриптора SIFT путем установки каждого бина гистограммы в его ранг в отсортированном массиве бинов. Евклидово расстояние между дескрипторами SIFT-Rank инвариантно к произвольным монотонным изменениям значений бинов гистограммы и связано с коэффициентом ранговой корреляции Спирмена .
Учитывая способность SIFT находить отличительные ключевые точки, которые инвариантны к местоположению, масштабу и вращению, а также устойчивы к аффинным преобразованиям (изменениям масштаба , вращению , сдвигу и положению) и изменениям освещенности, их можно использовать для распознавания объектов. Шаги приведены ниже.
Функции SIFT по сути могут быть применены к любой задаче, требующей идентификации соответствующих местоположений между изображениями. Работа была проделана в таких приложениях, как распознавание определенных категорий объектов на 2D-изображениях, 3D-реконструкция, отслеживание движения и сегментация, локализация робота, сшивание панорам изображений и эпиполярная калибровка. Некоторые из них более подробно обсуждаются ниже.
В этом приложении [26] тринокулярная стереосистема используется для определения 3D-оценок для местоположений ключевых точек. Ключевые точки используются только тогда, когда они появляются на всех 3 изображениях с постоянными различиями, что приводит к очень небольшому количеству выбросов. По мере того, как робот движется, он локализует себя, используя сопоставления признаков с существующей 3D-картой, а затем постепенно добавляет признаки на карту, обновляя их 3D-позиции с помощью фильтра Калмана . Это обеспечивает надежное и точное решение проблемы локализации робота в неизвестных средах. Современные 3D-решатели используют использование направлений ключевых точек для решения тринокулярной геометрии из трех ключевых точек [27] и абсолютной позы только из двух ключевых точек [28] , часто игнорируемого, но полезного измерения, доступного в SIFT. Эти измерения ориентации уменьшают количество требуемых соответствий, еще больше увеличивая надежность в геометрической прогрессии.
Сопоставление признаков SIFT может использоваться при сшивании изображений для полностью автоматизированной реконструкции панорамы из непанорамных изображений. Признаки SIFT, извлеченные из входных изображений, сопоставляются друг с другом для нахождения k ближайших соседей для каждого признака. Затем эти соответствия используются для нахождения m кандидатов на сопоставление изображений для каждого изображения. Затем с помощью RANSAC вычисляются гомографии между парами изображений , а для проверки используется вероятностная модель. Поскольку на входные изображения нет ограничений, применяется поиск графа для поиска связанных компонентов сопоставлений изображений таким образом, чтобы каждый связанный компонент соответствовал панораме. Наконец, для каждого связанного компонента выполняется настройка пучка для решения совместных параметров камеры, и панорама визуализируется с использованием многополосного смешивания. Благодаря подходу распознавания объектов, вдохновленному SIFT, к сшиванию панорам результирующая система нечувствительна к порядку, ориентации, масштабу и освещению изображений. Входные изображения могут содержать несколько панорам и шумовых изображений (некоторые из которых могут даже не быть частью составного изображения), а панорамные последовательности распознаются и визуализируются как выходные данные. [29]
Это приложение использует функции SIFT для распознавания 3D-объектов и 3D-моделирования в контексте дополненной реальности , в которой синтетические объекты с точной позой накладываются на реальные изображения. Сопоставление SIFT выполняется для ряда 2D-изображений сцены или объекта, снятых с разных углов. Это используется с настройкой пучка, инициализированной из существенной матрицы или трифокального тензора, для построения разреженной 3D-модели просматриваемой сцены и одновременного восстановления поз камеры и параметров калибровки . Затем положение, ориентация и размер виртуального объекта определяются относительно системы координат восстановленной модели. Для перемещения соответствия в режиме онлайн функции SIFT снова извлекаются из текущего видеокадра и сопоставляются с функциями, уже вычисленными для модели мира, в результате чего получается набор соответствий 2D-3D. Затем эти соответствия используются для вычисления текущей позы камеры для виртуальной проекции и окончательного рендеринга. Для уменьшения дрожания в виртуальной проекции используется метод регуляризации. [30] Использование направлений SIFT также использовалось для повышения надежности этого процесса. [27] [28] 3D-расширения SIFT также были оценены для истинного распознавания и поиска 3D-объектов. [31] [32]
Были изучены расширения дескриптора SIFT до 2+1-мерных пространственно-временных данных в контексте распознавания действий человека в видеопоследовательностях. [31] [33] [34] [35] Вычисление локальных позиционно-зависимых гистограмм в алгоритме 2D SIFT расширено с двух до трех измерений для описания признаков SIFT в пространственно-временной области. Для применения к распознаванию действий человека в видеопоследовательности выборка обучающих видео выполняется либо в пространственно-временных точках интереса, либо в случайно определенных местах, времени и масштабах. Затем пространственно-временные области вокруг этих точек интереса описываются с помощью дескриптора 3D SIFT. Затем эти дескрипторы кластеризуются для формирования пространственно-временной модели «мешок слов» . Затем дескрипторы 3D SIFT, извлеченные из тестовых видео, сопоставляются с этими словами для классификации действий человека.
Авторы сообщают о гораздо лучших результатах при использовании подхода с использованием 3D-дескриптора SIFT, чем при использовании других подходов, таких как простые 2D-дескрипторы SIFT и величина градиента. [36]
Метод морфометрии на основе признаков (FBM) [37] использует экстремумы в разнице гауссовского масштабного пространства для анализа и классификации 3D- изображений магнитного резонанса (МРТ) человеческого мозга. FBM моделирует изображение вероятностно как коллаж независимых признаков, обусловленных геометрией изображения и групповыми метками, например, здоровые субъекты и субъекты с болезнью Альцгеймера (БА). Сначала признаки извлекаются на отдельных изображениях из 4D-разницы гауссовского масштабного пространства, затем моделируются с точки зрения их внешнего вида, геометрии и статистики групповой совместной встречаемости по всему набору изображений. FBM был проверен при анализе БА с использованием набора из ~200 объемных МРТ человеческого мозга, автоматически идентифицируя установленные индикаторы БА в мозге и классифицируя легкую БА на новых изображениях с показателем 80%. [37]
Альтернативные методы масштабно-инвариантного распознавания объектов в условиях помех/частичной окклюзии включают следующее.
RIFT [38] — это инвариантное к вращению обобщение SIFT. Дескриптор RIFT строится с использованием круговых нормализованных участков, разделенных на концентрические кольца одинаковой ширины, и внутри каждого кольца вычисляется гистограмма ориентации градиента. Для поддержания инвариантности вращения ориентация измеряется в каждой точке относительно направления, указывающего наружу от центра.
RootSIFT [39] — это вариант SIFT, который изменяет нормализацию дескрипторов. Поскольку дескрипторы SIFT являются гистограммами (и, следовательно, распределениями вероятностей ), евклидово расстояние не является точным способом измерения их сходства. Лучшими метриками сходства оказываются те, которые адаптированы к распределениям вероятностей, например, коэффициент Бхаттачарьи (также называемый ядром Хеллингера). Для этой цели изначально -нормализованный дескриптор сначала -нормализуется, и вычисляется квадратный корень каждого элемента, а затем -ренормализация. После этих алгебраических манипуляций дескрипторы RootSIFT можно обычно сравнивать с использованием евклидова расстояния , что эквивалентно использованию ядра Хеллингера на исходных дескрипторах SIFT. Эта схема нормализации, называемая «L1-sqrt», была ранее введена для блочной нормализации признаков HOG , чей вариант дескриптора прямоугольного расположения блоков (R-HOG) концептуально похож на дескриптор SIFT.
G-RIF: [40] Обобщенный надежный инвариантный признак — это общий контекстный дескриптор, который кодирует ориентацию края, плотность края и информацию об оттенке в унифицированной форме, объединяющей перцептивную информацию с пространственным кодированием. Схема распознавания объектов использует голосование на основе соседнего контекста для оценки моделей объектов.
" SURF : [41] Ускоренные надежные признаки" - это высокопроизводительный масштабно- и вращений-инвариантный детектор/дескриптор точек интереса, который, как утверждается, приближается или даже превосходит ранее предложенные схемы в отношении повторяемости, отличительности и надежности. SURF использует интегральные изображения для сверток изображений, чтобы сократить время вычислений, опирается на сильные стороны ведущих существующих детекторов и дескрипторов (используя быструю меру на основе матрицы Гессе для детектора и дескриптор на основе распределения). Он описывает распределение вейвлет-ответов Хаара в окрестности точки интереса. Интегральные изображения используются для скорости, и только 64 измерения используются, сокращая время вычисления и сопоставления признаков. Шаг индексации основан на знаке Лапласа , что увеличивает скорость сопоставления и надежность дескриптора.
PCA-SIFT [42] и GLOH [19] являются вариантами SIFT. Дескриптор PCA-SIFT представляет собой вектор градиентов изображения в направлениях x и y, вычисляемых в пределах области поддержки. Область градиента выбирается в 39×39 позициях, поэтому вектор имеет размерность 3042. Размерность уменьшается до 36 с помощью PCA . Гистограмма местоположения-ориентации градиента ( GLOH ) является расширением дескриптора SIFT, разработанным для повышения его надежности и отличительности. Дескриптор SIFT вычисляется для логарифмически-полярной сетки местоположения с тремя ячейками в радиальном направлении (радиус установлен на 6, 11 и 15) и 8 в угловом направлении, что дает 17 ячеек местоположения. Центральная ячейка не разделена в угловых направлениях. Ориентации градиента квантуются в 16 ячейках, что дает гистограмму с 272 ячейками. Размер этого дескриптора уменьшается с помощью PCA . Ковариационная матрица для PCA оценивается на фрагментах изображений, собранных из различных изображений. Для описания используются 128 наибольших собственных векторов .
Gauss-SIFT [21] — это чистый дескриптор изображения, определяемый путем выполнения всех измерений изображения, лежащих в основе чистого дескриптора изображения в SIFT, с помощью гауссовых производных ответов, в отличие от производных приближений в пирамиде изображения, как это делается в обычном SIFT. Таким образом, эффекты дискретизации по пространству и масштабу могут быть сведены к минимуму, что позволяет использовать потенциально более точные дескрипторы изображения. В Линдеберге (2015) [21] такие чистые дескрипторы изображения Gauss-SIFT были объединены с набором обобщенных точек интереса масштабного пространства, включающих Лапласиан Гауссовой функции , определитель Гессе , четыре новых беззнаковых или знаковых меры силы признаков Гессе , а также точки интереса Харриса-Лапласа и Ши-и-Томази . В обширной экспериментальной оценке набора данных плакатов, включающего несколько представлений 12 плакатов с масштабированием преобразований до 6 раз и изменениями направления просмотра до угла наклона 45 градусов, было показано, что существенное увеличение производительности сопоставления изображений (более высокие оценки эффективности и более низкие оценки точности 1 ) может быть получено путем замены Лапласа гауссовых точек интереса на определитель гессиановых точек интереса. Поскольку разность гауссианов точек интереса представляет собой численное приближение Лапласа гауссовых точек интереса, это показывает, что существенное увеличение производительности сопоставления возможно путем замены разности гауссианов точек интереса в SIFT на определитель гессиановых точек интереса. Дополнительное увеличение производительности может быть получено путем рассмотрения беззнаковой меры силы признаков гессиана . Количественное сравнение между дескриптором Gauss-SIFT и соответствующим дескриптором Gauss-SURF также показало, что Gauss-SIFT в целом работает значительно лучше, чем Gauss-SURF для большого количества различных детекторов точек интереса масштабного пространства. Таким образом, это исследование показывает, что без учета эффектов дискретизации чистый дескриптор изображения в SIFT значительно лучше, чем чистый дескриптор изображения в SURF, тогда как базовый детектор точек интереса в SURF, который можно рассматривать как численное приближение к экстремумам масштабного пространства детерминанта гессиана, значительно лучше, чем базовый детектор точек интереса в SIFT.
Вагнер и др. разработали два алгоритма распознавания объектов, специально разработанных с учетом ограничений современных мобильных телефонов. [43] В отличие от классического подхода SIFT, Вагнер и др. используют детектор углов FAST для обнаружения признаков. Алгоритм также различает фазу офлайн-подготовки, где признаки создаются на разных уровнях масштаба, и фазу онлайн-подготовки, где признаки создаются только на текущем фиксированном уровне масштаба изображения с камеры телефона. Кроме того, признаки создаются из фиксированного размера фрагмента 15×15 пикселей и формируют дескриптор SIFT всего с 36 измерениями. Подход был дополнительно расширен за счет интеграции масштабируемого словарного дерева в конвейер распознавания. [44] Это позволяет эффективно распознавать большее количество объектов на мобильных телефонах. Подход в основном ограничен объемом доступной оперативной памяти .
KAZE и A-KAZE (признаки KAZE и ускоренные признаки Kaze) — это новый метод обнаружения и описания двумерных признаков, который работает лучше, чем SIFT и SURF. Он приобретает большую популярность благодаря своему открытому исходному коду. KAZE изначально был создан Пабло Ф. Алькантариллой, Адриеном Бартоли и Эндрю Дж. Дэвисоном. [45]
{{cite journal}}
: CS1 maint: multiple names: authors list (link){{cite journal}}
: CS1 maint: multiple names: authors list (link){{cite conference}}
: CS1 maint: multiple names: authors list (link)This section's use of external links may not follow Wikipedia's policies or guidelines. (September 2020) |
Сопутствующие исследования:
Учебники:
Реализации: