Я понимаю, что это узкоспециализированный вопрос.. но здесь идет. Я использую реализацию SIFT для поиска совпадений на двух изображениях. С текущей реализацией, которая у меня есть, когда я сопоставляю изображение с версией 90 или 180 градусов, я получаю совпадения, которые примерно равны половине пикселей, но варьируется в пределах диапазона. Так, например, если совпадение найдено в координате пикселя (x, y) в im1, то соответствующее совпадение в его 90-градусном повернутом изображении im2 равно (x, y + 0,5). Если я использую изображение с 180 градусами, смещение появляется как в координатах x, так и в координатах x, и только в x, если я использую вращение на 270 градусов (-90).
1) Прежде всего, я предполагаю, что SIFT должен дать мне такое же совпадающее местоположение во вращающемся изображении. Неявное предположение состоит в том, что вращение не меняет значения пикселей изображения, которые я подтвердил, это правда. (Я использую IRFAN View для вращения и сохранения в формате .pgm, а значения пикселей остаются неизменными).
2) У меня есть другие реализации, которые не дают этого смещения.
3) Я предполагаю, что это смещение связано с программированием и, возможно, связано с преобразованием координат координаты точки масштабирования в координаты ключевой точки изображения.
Я надеюсь, что кто-то столкнется с этой проблемой или может указать мне на ссылку о том, как преобразовать из пространства масштаба в пространство изображения.