OpenCV/C++ - обнаружение ключевых точек SIFT и соответствующие дескрипторы
У меня есть изображение. Я использовал детектор краев Canny, а затем на него наложил Sift.
Вот результат:
Я не понимаю результат. Почему у меня есть некоторые интересные моменты на некоторых черных областях, и не так много, где я ожидаю больше? Кроме того, к чему относится размер круга?
Я посмотрел в Интернете, но это не совсем ясно, и я не нахожу никакой информации об этом.
Кто-нибудь может объяснить?
1 ответ
SIFT расшифровывается как "масштабно-инвариантное преобразование объектов". Он обнаруживает ключевые точки в нескольких масштабах. Круги на вашем изображении, вероятно, относятся к шкале, в которой была обнаружена ключевая точка.
Позиции ключевых точек в черных областях не кажутся мне совершенно невероятными: если вы предполагаете, что область, на которую они смотрят, примерно в 2 или 3 раза больше размера круга, то ключевые точки в черной зоне имеют гораздо больший смысл: например, обнаруживает не только черную зону, но и такую зону; который является отличительным:
важное замечание ключевой момент не означает, что только этот точный пункт отличается от остальных; это означает, что эта точка вместе с ее окружением является особенной. В случае SIFT это означает, что SIFT сможет обнаружить ту же точку (или зону, если вы захотите), даже если вы масштабируете изображение. Возвращаемое местоположение ключевой точки является "центром" этой зоны, если хотите.